From 42625ecda28458e7446a83130135fdd061f21832 Mon Sep 17 00:00:00 2001 From: Joe Conway Date: Sun, 29 Jun 2025 23:00:00 -0400 Subject: [PATCH 001/457] Adapt REL_18_STABLE to its new status as a stable branch Per the checklist in RELEASE_CHANGES for the creation of a new stable branch, this commit does the following things: - Arm gen_node_support.pl's nodetag ABI stability, based on the contents of nodetags.h. - Update URLs of top-level README and Makefile to point to the new stable version. --- Makefile | 2 +- README.md | 4 ++-- src/backend/nodes/gen_node_support.pl | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 8a2ec9396b6b4..b363b2f24766b 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,7 @@ all: all check install installdirs installcheck installcheck-parallel uninstall clean distclean maintainer-clean dist distcheck world check-world install-world installcheck-world: @if [ ! -f GNUmakefile ] ; then \ echo "You need to run the 'configure' program first. Please see"; \ - echo "" ; \ + echo "" ; \ false ; \ fi @IFS=':' ; \ diff --git a/README.md b/README.md index f6104c038b3d5..7352a90a72373 100644 --- a/README.md +++ b/README.md @@ -12,9 +12,9 @@ and functions. This distribution also contains C language bindings. Copyright and license information can be found in the file COPYRIGHT. General documentation about this version of PostgreSQL can be found at -. In particular, information +. In particular, information about building PostgreSQL from the source code can be found at -. +. The latest version of this software, and related software, may be obtained at . For more information diff --git a/src/backend/nodes/gen_node_support.pl b/src/backend/nodes/gen_node_support.pl index 9ecddb1423143..214d2c70d60db 100644 --- a/src/backend/nodes/gen_node_support.pl +++ b/src/backend/nodes/gen_node_support.pl @@ -107,8 +107,8 @@ sub elem # In HEAD, these variables should be left undef, since we don't promise # ABI stability during development. -my $last_nodetag = undef; -my $last_nodetag_no = undef; +my $last_nodetag = 'WindowObjectData'; +my $last_nodetag_no = 479; # output file names my @output_files; From b2a57747ba047844c0e7bf0acb7c75f84fc34989 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Mon, 30 Jun 2025 10:12:31 +0200 Subject: [PATCH 002/457] doc: Fix typo in pg_sync_replication_slots documentation Commit 1546e17f9d0 accidentally misspelled additionally as additionaly. Backpatch to v17 to match where the original commit was backpatched. Author: Daniel Gustafsson Backpatch-through: 17 --- doc/src/sgml/func.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 224d4fe5a9f95..298791858be30 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -29981,7 +29981,7 @@ postgres=# SELECT '0/0'::pg_lsn + pd.segment_number * ps.setting::int + :offset logical decoding and must be dropped after promotion. See for details. Note that this function is primarily intended for testing and - debugging purposes and should be used with caution. Additionaly, + debugging purposes and should be used with caution. Additionally, this function cannot be executed if sync_replication_slots is enabled and the slotsync From 95163cbe111cd75121482281492f8db5df78d31f Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Mon, 30 Jun 2025 10:20:14 -0400 Subject: [PATCH 003/457] aio: Fix reference to outdated name Reported-by: Antonin Houska Author: Antonin Houska Discussion: https://postgr.es/m/5250.1751266701@localhost Backpatch-through: 18, where da7226993fd4 introduced this --- src/include/storage/aio_types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/storage/aio_types.h b/src/include/storage/aio_types.h index 181833660778e..afee85c787b44 100644 --- a/src/include/storage/aio_types.h +++ b/src/include/storage/aio_types.h @@ -107,7 +107,7 @@ typedef struct PgAioResult /* of type PgAioResultStatus, see above */ uint32 status:PGAIO_RESULT_STATUS_BITS; - /* meaning defined by callback->error */ + /* meaning defined by callback->report */ uint32 error_data:PGAIO_RESULT_ERROR_BITS; int32 result; From eb37fe716a477ee10434c320d7e7c23b79337922 Mon Sep 17 00:00:00 2001 From: Amit Langote Date: Tue, 1 Jul 2025 13:13:40 +0900 Subject: [PATCH 004/457] Fix typos in comments Commit 19d8e2308bc added enum values with the prefix TU_, but a few comments still referred to TUUI_, which was used in development versions of the patches committed as 19d8e2308bc. Author: Yugo Nagata Discussion: https://postgr.es/m/20250701110216.8ac8a9e4c6f607f1d954f44a@sraoss.co.jp Backpatch-through: 16 --- src/backend/executor/execIndexing.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/executor/execIndexing.c b/src/backend/executor/execIndexing.c index bdf862b24062e..ca33a854278ed 100644 --- a/src/backend/executor/execIndexing.c +++ b/src/backend/executor/execIndexing.c @@ -279,7 +279,7 @@ ExecCloseIndices(ResultRelInfo *resultRelInfo) * executor is performing an UPDATE that could not use an * optimization like heapam's HOT (in more general terms a * call to table_tuple_update() took place and set - * 'update_indexes' to TUUI_All). Receiving this hint makes + * 'update_indexes' to TU_All). Receiving this hint makes * us consider if we should pass down the 'indexUnchanged' * hint in turn. That's something that we figure out for * each index_insert() call iff 'update' is true. @@ -290,7 +290,7 @@ ExecCloseIndices(ResultRelInfo *resultRelInfo) * HOT has been applied and any updated columns are indexed * only by summarizing indexes (or in more general terms a * call to table_tuple_update() took place and set - * 'update_indexes' to TUUI_Summarizing). We can (and must) + * 'update_indexes' to TU_Summarizing). We can (and must) * therefore only update the indexes that have * 'amsummarizing' = true. * From 45879f48f140538f95794c1537390a058c5ebe47 Mon Sep 17 00:00:00 2001 From: Tomas Vondra Date: Tue, 1 Jul 2025 12:02:31 +0200 Subject: [PATCH 005/457] Limit the size of numa_move_pages requests There's a kernel bug in do_pages_stat(), affecting systems combining 64-bit kernel and 32-bit user space. The function splits the request into chunks of 16 pointers, but forgets the pointers are 32-bit when advancing to the next chunk. Some of the pointers get skipped, and memory after the array is interpreted as pointers. The result is that the produced status of memory pages is mostly bogus. Systems combining 64-bit and 32-bit environments like this might seem rare, but that's not the case - all 32-bit Debian packages are built in a 32-bit chroot on a system with a 64-bit kernel. This is a long-standing kernel bug (since 2010), affecting pretty much all kernels, so it'll take time until all systems get a fixed kernel. Luckily, we can work around the issue by chunking the requests the same way do_pages_stat() does, at least on affected systems. We don't know what kernel a 32-bit build will run on, so all 32-bit builds use chunks of 16 elements (the largest chunk before hitting the issue). 64-bit builds are not affected by this issue, and so could work without the chunking. But chunking has other advantages, so we apply chunking even for 64-bit builds, with chunks of 1024 elements. Reported-by: Christoph Berg Author: Christoph Berg Author: Bertrand Drouvot Discussion: https://postgr.es/m/aEtDozLmtZddARdB@msg.df7cb.de Context: https://marc.info/?l=linux-mm&m=175077821909222&w=2 Backpatch-through: 18 --- src/port/pg_numa.c | 50 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/src/port/pg_numa.c b/src/port/pg_numa.c index 4b487a2a4e814..d5935207d0a13 100644 --- a/src/port/pg_numa.c +++ b/src/port/pg_numa.c @@ -29,6 +29,19 @@ #include #include +/* + * numa_move_pages() chunk size, has to be <= 16 to work around a kernel bug + * in do_pages_stat() (chunked by DO_PAGES_STAT_CHUNK_NR). By using the same + * chunk size, we make it work even on unfixed kernels. + * + * 64-bit system are not affected by the bug, and so use much larger chunks. + */ +#if SIZEOF_SIZE_T == 4 +#define NUMA_QUERY_CHUNK_SIZE 16 +#else +#define NUMA_QUERY_CHUNK_SIZE 1024 +#endif + /* libnuma requires initialization as per numa(3) on Linux */ int pg_numa_init(void) @@ -42,11 +55,46 @@ pg_numa_init(void) * We use move_pages(2) syscall here - instead of get_mempolicy(2) - as the * first one allows us to batch and query about many memory pages in one single * giant system call that is way faster. + * + * We call numa_move_pages() for smaller chunks of the whole array. The first + * reason is to work around a kernel bug, but also to allow interrupting the + * query between the calls (for many pointers processing the whole array can + * take a lot of time). */ int pg_numa_query_pages(int pid, unsigned long count, void **pages, int *status) { - return numa_move_pages(pid, count, pages, NULL, status, 0); + unsigned long next = 0; + int ret = 0; + + /* + * Chunk pointers passed to numa_move_pages to NUMA_QUERY_CHUNK_SIZE + * items, to work around a kernel bug in do_pages_stat(). + */ + while (next < count) + { + unsigned long count_chunk = Min(count - next, + NUMA_QUERY_CHUNK_SIZE); + + /* + * Bail out if any of the chunks errors out (ret<0). We ignore + * (ret>0) which is used to return number of nonmigrated pages, + * but we're not migrating any pages here. + */ + ret = numa_move_pages(pid, count_chunk, &pages[next], NULL, &status[next], 0); + if (ret < 0) + { + /* plain error, return as is */ + return ret; + } + + next += count_chunk; + } + + /* should have consumed the input array exactly */ + Assert(next == count); + + return 0; } int From 14e52227e57885d1a983d9f2515b569d3180c93d Mon Sep 17 00:00:00 2001 From: Tomas Vondra Date: Tue, 1 Jul 2025 12:32:23 +0200 Subject: [PATCH 006/457] Silence valgrind about pg_numa_touch_mem_if_required When querying NUMA status of pages in shared memory, we need to touch the memory first to get valid results. This may trigger valgrind reports, because some of the memory (e.g. unpinned buffers) may be marked as noaccess. Solved by adding a valgrind suppresion. An alternative would be to adjust the access/noaccess status before touching the memory, but that seems far too invasive. It would require all those places to have detailed knowledge of what the shared memory stores. The pg_numa_touch_mem_if_required() macro is replaced with a function. Macros are invisible to suppressions, so it'd have to suppress reports for the caller - e.g. pg_get_shmem_allocations_numa(). So we'd suppress reports for the whole function, and that seems to heavy-handed. It might easily hide other valid issues. Reviewed-by: Christoph Berg Reviewed-by: Bertrand Drouvot Discussion: https://postgr.es/m/aEtDozLmtZddARdB@msg.df7cb.de Backpatch-through: 18 --- contrib/pg_buffercache/pg_buffercache_pages.c | 3 +-- src/backend/storage/ipc/shmem.c | 4 +--- src/include/port/pg_numa.h | 10 +++++++--- src/tools/valgrind.supp | 14 ++++++++++++++ 4 files changed, 23 insertions(+), 8 deletions(-) diff --git a/contrib/pg_buffercache/pg_buffercache_pages.c b/contrib/pg_buffercache/pg_buffercache_pages.c index 4b007f6e1b06a..ae0291e6e96df 100644 --- a/contrib/pg_buffercache/pg_buffercache_pages.c +++ b/contrib/pg_buffercache/pg_buffercache_pages.c @@ -320,7 +320,6 @@ pg_buffercache_numa_pages(PG_FUNCTION_ARGS) uint64 os_page_count; int pages_per_buffer; int max_entries; - volatile uint64 touch pg_attribute_unused(); char *startptr, *endptr; @@ -375,7 +374,7 @@ pg_buffercache_numa_pages(PG_FUNCTION_ARGS) /* Only need to touch memory once per backend process lifetime */ if (firstNumaTouch) - pg_numa_touch_mem_if_required(touch, ptr); + pg_numa_touch_mem_if_required(ptr); } Assert(idx == os_page_count); diff --git a/src/backend/storage/ipc/shmem.c b/src/backend/storage/ipc/shmem.c index c9ae3b45b76b1..ca3656fc76f43 100644 --- a/src/backend/storage/ipc/shmem.c +++ b/src/backend/storage/ipc/shmem.c @@ -679,12 +679,10 @@ pg_get_shmem_allocations_numa(PG_FUNCTION_ARGS) */ for (i = 0; i < shm_ent_page_count; i++) { - volatile uint64 touch pg_attribute_unused(); - page_ptrs[i] = startptr + (i * os_page_size); if (firstNumaTouch) - pg_numa_touch_mem_if_required(touch, page_ptrs[i]); + pg_numa_touch_mem_if_required(page_ptrs[i]); CHECK_FOR_INTERRUPTS(); } diff --git a/src/include/port/pg_numa.h b/src/include/port/pg_numa.h index 40f1d324dcfe2..6c8b7103cc344 100644 --- a/src/include/port/pg_numa.h +++ b/src/include/port/pg_numa.h @@ -24,12 +24,16 @@ extern PGDLLIMPORT int pg_numa_get_max_node(void); * This is required on Linux, before pg_numa_query_pages() as we * need to page-fault before move_pages(2) syscall returns valid results. */ -#define pg_numa_touch_mem_if_required(ro_volatile_var, ptr) \ - ro_volatile_var = *(volatile uint64 *) ptr +static inline void +pg_numa_touch_mem_if_required(void *ptr) +{ + volatile uint64 touch pg_attribute_unused(); + touch = *(volatile uint64 *) ptr; +} #else -#define pg_numa_touch_mem_if_required(ro_volatile_var, ptr) \ +#define pg_numa_touch_mem_if_required(ptr) \ do {} while(0) #endif diff --git a/src/tools/valgrind.supp b/src/tools/valgrind.supp index 7ea464c809417..2ad5b81526d3f 100644 --- a/src/tools/valgrind.supp +++ b/src/tools/valgrind.supp @@ -180,3 +180,17 @@ Memcheck:Cond fun:PyObject_Realloc } + +# NUMA introspection requires touching memory first, and some of it may +# be marked as noacess (e.g. unpinned buffers). So just ignore that. +{ + pg_numa_touch_mem_if_required + Memcheck:Addr4 + fun:pg_numa_touch_mem_if_required +} + +{ + pg_numa_touch_mem_if_required + Memcheck:Addr8 + fun:pg_numa_touch_mem_if_required +} From 54ac4944c36f8f6cfc4deaa3f828118b564e1d3d Mon Sep 17 00:00:00 2001 From: Tomas Vondra Date: Tue, 1 Jul 2025 12:58:35 +0200 Subject: [PATCH 007/457] Add CHECK_FOR_INTERRUPTS into pg_numa_query_pages Querying the NUMA status can be quite time consuming, especially with large shared buffers. 8cc139bec34a called numa_move_pages() once, for all buffers, and we had to wait for the syscall to complete. But with the chunking, introduced by 7fe2f67c7c to work around a kernel bug, we can do CHECK_FOR_INTERRUPTS() after each chunk, allowing users to abort the execution. Reviewed-by: Christoph Berg Reviewed-by: Bertrand Drouvot Discussion: https://postgr.es/m/aEtDozLmtZddARdB@msg.df7cb.de Backpatch-through: 18 --- src/port/pg_numa.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/port/pg_numa.c b/src/port/pg_numa.c index d5935207d0a13..c65f22020ea51 100644 --- a/src/port/pg_numa.c +++ b/src/port/pg_numa.c @@ -16,6 +16,7 @@ #include "c.h" #include +#include "miscadmin.h" #include "port/pg_numa.h" /* @@ -76,6 +77,8 @@ pg_numa_query_pages(int pid, unsigned long count, void **pages, int *status) unsigned long count_chunk = Min(count - next, NUMA_QUERY_CHUNK_SIZE); + CHECK_FOR_INTERRUPTS(); + /* * Bail out if any of the chunks errors out (ret<0). We ignore * (ret>0) which is used to return number of nonmigrated pages, From 07448b3969d55a2081cdafafc23f68df3392f220 Mon Sep 17 00:00:00 2001 From: Tomas Vondra Date: Tue, 1 Jul 2025 15:20:26 +0200 Subject: [PATCH 008/457] Fix indentation in pg_numa code Broken by commits 7fe2f67c7c9f, 81f287dc923f and bf1119d74a79. Backpatch to 18, same as the offending commits. Backpatch-through: 18 --- src/include/port/pg_numa.h | 1 + src/port/pg_numa.c | 10 +++++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/include/port/pg_numa.h b/src/include/port/pg_numa.h index 6c8b7103cc344..9d1ea6d0db89a 100644 --- a/src/include/port/pg_numa.h +++ b/src/include/port/pg_numa.h @@ -28,6 +28,7 @@ static inline void pg_numa_touch_mem_if_required(void *ptr) { volatile uint64 touch pg_attribute_unused(); + touch = *(volatile uint64 *) ptr; } diff --git a/src/port/pg_numa.c b/src/port/pg_numa.c index c65f22020ea51..3368a43a33826 100644 --- a/src/port/pg_numa.c +++ b/src/port/pg_numa.c @@ -65,8 +65,8 @@ pg_numa_init(void) int pg_numa_query_pages(int pid, unsigned long count, void **pages, int *status) { - unsigned long next = 0; - int ret = 0; + unsigned long next = 0; + int ret = 0; /* * Chunk pointers passed to numa_move_pages to NUMA_QUERY_CHUNK_SIZE @@ -80,9 +80,9 @@ pg_numa_query_pages(int pid, unsigned long count, void **pages, int *status) CHECK_FOR_INTERRUPTS(); /* - * Bail out if any of the chunks errors out (ret<0). We ignore - * (ret>0) which is used to return number of nonmigrated pages, - * but we're not migrating any pages here. + * Bail out if any of the chunks errors out (ret<0). We ignore (ret>0) + * which is used to return number of nonmigrated pages, but we're not + * migrating any pages here. */ ret = numa_move_pages(pid, count_chunk, &pages[next], NULL, &status[next], 0); if (ret < 0) From 45c5276628d129d6adec68b25b61daadf8476783 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 1 Jul 2025 12:08:20 -0400 Subject: [PATCH 009/457] Make safeguard against incorrect flags for fsync more portable. The existing code assumed that O_RDONLY is defined as 0, but this is not required by POSIX and is not true on GNU Hurd. We can avoid the assumption by relying on O_ACCMODE to mask the fcntl() result. (Hopefully, all supported platforms define that.) Author: Michael Banck Co-authored-by: Samuel Thibault Reviewed-by: Tom Lane Discussion: https://postgr.es/m/6862e8d1.050a0220.194b8d.76fa@mx.google.com Discussion: https://postgr.es/m/68480868.5d0a0220.1e214d.68a6@mx.google.com Backpatch-through: 13 --- src/backend/storage/file/fd.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/src/backend/storage/file/fd.c b/src/backend/storage/file/fd.c index 0e8299dd55646..a4ec7959f31cf 100644 --- a/src/backend/storage/file/fd.c +++ b/src/backend/storage/file/fd.c @@ -400,25 +400,22 @@ pg_fsync(int fd) * portable, even if it runs ok on the current system. * * We assert here that a descriptor for a file was opened with write - * permissions (either O_RDWR or O_WRONLY) and for a directory without - * write permissions (O_RDONLY). + * permissions (i.e., not O_RDONLY) and for a directory without write + * permissions (O_RDONLY). Notice that the assertion check is made even + * if fsync() is disabled. * - * Ignore any fstat errors and let the follow-up fsync() do its work. - * Doing this sanity check here counts for the case where fsync() is - * disabled. + * If fstat() fails, ignore it and let the follow-up fsync() complain. */ if (fstat(fd, &st) == 0) { int desc_flags = fcntl(fd, F_GETFL); - /* - * O_RDONLY is historically 0, so just make sure that for directories - * no write flags are used. - */ + desc_flags &= O_ACCMODE; + if (S_ISDIR(st.st_mode)) - Assert((desc_flags & (O_RDWR | O_WRONLY)) == 0); + Assert(desc_flags == O_RDONLY); else - Assert((desc_flags & (O_RDWR | O_WRONLY)) != 0); + Assert(desc_flags != O_RDONLY); } errno = 0; #endif From 581305a4659dd9006db58a551829b685db3950ec Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 1 Jul 2025 12:40:35 -0400 Subject: [PATCH 010/457] Make sure IOV_MAX is defined. We stopped defining IOV_MAX on non-Windows systems in 75357ab94, on the assumption that every non-Windows system defines it in as required by X/Open. GNU Hurd, however, doesn't follow that standard either. Put back the old logic to assume 16 if it's not defined. Author: Michael Banck Co-authored-by: Christoph Berg Reviewed-by: Tom Lane Discussion: https://postgr.es/m/6862e8d1.050a0220.194b8d.76fa@mx.google.com Discussion: https://postgr.es/m/6846e0c3.df0a0220.39ef9b.c60e@mx.google.com Backpatch-through: 16 --- src/include/port/pg_iovec.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/include/port/pg_iovec.h b/src/include/port/pg_iovec.h index df40c7208be48..90be3af449d6f 100644 --- a/src/include/port/pg_iovec.h +++ b/src/include/port/pg_iovec.h @@ -21,9 +21,6 @@ #else -/* POSIX requires at least 16 as a maximum iovcnt. */ -#define IOV_MAX 16 - /* Define our own POSIX-compatible iovec struct. */ struct iovec { @@ -33,6 +30,15 @@ struct iovec #endif +/* + * If didn't define IOV_MAX, define our own. X/Open requires at + * least 16. (GNU Hurd apparently feel that they're not bound by X/Open, + * because they don't define this symbol at all.) + */ +#ifndef IOV_MAX +#define IOV_MAX 16 +#endif + /* * Define a reasonable maximum that is safe to use on the stack in arrays of * struct iovec and other small types. The operating system could limit us to From b71351e1f2cb2687535cdc59370d6b908a842e18 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 1 Jul 2025 20:12:36 +0200 Subject: [PATCH 011/457] Fix outdated comment for IndexInfo Commit 78416235713 removed the ii_OpclassOptions field, but the comment was not updated. Author: Japin Li Reviewed-by: Richard Guo Discussion: https://www.postgresql.org/message-id/flat/ME0P300MB04453E6C7EA635F0ECF41BFCB6832%40ME0P300MB0445.AUSP300.PROD.OUTLOOK.COM --- src/include/nodes/execnodes.h | 1 - 1 file changed, 1 deletion(-) diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h index 2492282213ff3..fdf79aa18a237 100644 --- a/src/include/nodes/execnodes.h +++ b/src/include/nodes/execnodes.h @@ -173,7 +173,6 @@ typedef struct ExprState * UniqueProcs * UniqueStrats * Unique is it a unique index? - * OpclassOptions opclass-specific options, or NULL if none * ReadyForInserts is it valid for inserts? * CheckedUnchanged IndexUnchanged status determined yet? * IndexUnchanged aminsert hint, cached for retail inserts From 399997d8ccace888b84887ed1a0242a6e745d1a9 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 1 Jul 2025 20:37:24 +0200 Subject: [PATCH 012/457] Update comment for IndexInfo.ii_WithoutOverlaps Commit fc0438b4e80 added the ii_WithoutOverlaps field, but the comment was not updated. Author: Japin Li Reviewed-by: Richard Guo Discussion: https://www.postgresql.org/message-id/flat/ME0P300MB04453E6C7EA635F0ECF41BFCB6832%40ME0P300MB0445.AUSP300.PROD.OUTLOOK.COM --- src/include/nodes/execnodes.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h index fdf79aa18a237..09ea5998aadfe 100644 --- a/src/include/nodes/execnodes.h +++ b/src/include/nodes/execnodes.h @@ -178,6 +178,7 @@ typedef struct ExprState * IndexUnchanged aminsert hint, cached for retail inserts * Concurrent are we doing a concurrent index build? * BrokenHotChain did we detect any broken HOT chains? + * WithoutOverlaps is it a WITHOUT OVERLAPS index? * Summarizing is it a summarizing index? * ParallelWorkers # of workers requested (excludes leader) * Am Oid of index AM From c8b9f75111aa8dbc3dd6dea672d72d62fd4bf5cf Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Tue, 1 Jul 2025 13:54:38 -0500 Subject: [PATCH 013/457] Document pg_get_multixact_members(). MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Oversight in commit 0ac5ad5134. Author: Sami Imseih Co-authored-by: Álvaro Herrera Reviewed-by: Ashutosh Bapat Discussion: https://postgr.es/m/20150619215231.GT133018%40postgresql.org Discussion: https://postgr.es/m/CAA5RZ0sjQDDwJfMRb%3DZ13nDLuRpF13ME2L_BdGxi0op8RKjmDg%40mail.gmail.com Backpatch-through: 13 --- doc/src/sgml/func.sgml | 28 +++++++++++++++++++++++++++- doc/src/sgml/maintenance.sgml | 5 ++++- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 298791858be30..c017e2acfd5be 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -27687,6 +27687,31 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres} details. + + + + + pg_get_multixact_members + + pg_get_multixact_members ( multixid xid ) + setof record + ( xid xid, + mode text ) + + + Returns the transaction ID and lock mode for each member of the + specified multixact ID. The lock modes forupd, + fornokeyupd, sh, and + keysh correspond to the row-level locks + FOR UPDATE, FOR NO KEY UPDATE, + FOR SHARE, and FOR KEY SHARE, + respectively, as described in . Two + additional modes are specific to multixacts: + nokeyupd, used by updates that do not modify key + columns, and upd, used by updates or deletes that + modify key columns. + + @@ -27695,7 +27720,8 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres} The internal transaction ID type xid is 32 bits wide and wraps around every 4 billion transactions. However, the functions shown in , except - age and mxid_age, use a + age, mxid_age, and + pg_get_multixact_members, use a 64-bit type xid8 that does not wrap around during the life of an installation and can be converted to xid by casting if required; see for details. diff --git a/doc/src/sgml/maintenance.sgml b/doc/src/sgml/maintenance.sgml index 600e4b3f2f3b8..e7a9f58c01582 100644 --- a/doc/src/sgml/maintenance.sgml +++ b/doc/src/sgml/maintenance.sgml @@ -779,7 +779,10 @@ HINT: Execute a database-wide VACUUM in that database. careful aging management, storage cleanup, and wraparound handling. There is a separate storage area which holds the list of members in each multixact, which also uses a 32-bit counter and which must also - be managed. + be managed. The system function + pg_get_multixact_members() described in + can be used to examine the + transaction IDs associated with a multixact ID. From 3386b2fe7af98159b0c7bc3f0f03fcb524d98cd6 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Tue, 1 Jul 2025 14:35:59 -0500 Subject: [PATCH 014/457] Add commit 07448b3969 to .git-blame-ignore-revs. --- .git-blame-ignore-revs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 8048afd1a80fa..cf30711d616be 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -14,6 +14,9 @@ # # $ git log --pretty=format:"%H # %cd%n# %s" $PGINDENTGITHASH -1 --date=iso +07448b3969d55a2081cdafafc23f68df3392f220 # 2025-07-01 15:24:19 +0200 +# Fix indentation in pg_numa code + b27644bade0348d0dafd3036c47880a349fe9332 # 2025-06-15 13:04:24 -0400 # Sync typedefs.list with the buildfarm. From b897a58556d8c29366ae980d65bf5e90daf7098e Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 1 Jul 2025 22:15:26 +0200 Subject: [PATCH 015/457] Update comment for IndexInfo.ii_NullsNotDistinct Commit 7a7b3e11e61 added the ii_NullsNotDistinct field, but the comment was not updated. Author: Japin Li Reviewed-by: Richard Guo Discussion: https://www.postgresql.org/message-id/flat/ME0P300MB04453E6C7EA635F0ECF41BFCB6832%40ME0P300MB0445.AUSP300.PROD.OUTLOOK.COM --- src/include/nodes/execnodes.h | 1 + 1 file changed, 1 insertion(+) diff --git a/src/include/nodes/execnodes.h b/src/include/nodes/execnodes.h index 09ea5998aadfe..f1520d1f31a6c 100644 --- a/src/include/nodes/execnodes.h +++ b/src/include/nodes/execnodes.h @@ -173,6 +173,7 @@ typedef struct ExprState * UniqueProcs * UniqueStrats * Unique is it a unique index? + * NullsNotDistinct is NULLS NOT DISTINCT? * ReadyForInserts is it valid for inserts? * CheckedUnchanged IndexUnchanged status determined yet? * IndexUnchanged aminsert hint, cached for retail inserts From d09d1379346eac4b3aa45ee92a5a96bd315bfa4b Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 2 Jul 2025 13:48:41 +0900 Subject: [PATCH 016/457] Fix bug in archive streamer with LZ4 decompression When decompressing some input data, the calculation for the initial starting point and the initial size were incorrect, potentially leading to failures when decompressing contents with LZ4. These initialization points are fixed in this commit, bringing the logic closer to what exists for gzip and zstd. The contents of the compressed data is clear (for example backups taken with LZ4 can still be decompressed with a "lz4" command), only the decompression part reading the input data was impacted by this issue. This code path impacts pg_basebackup and pg_verifybackup, which can use the LZ4 decompression routines with an archive streamer, or any tools that try to use the archive streamers in src/fe_utils/. The issue is easier to reproduce with files that have a low-compression rate, like ones filled with random data, for a size of at least 512kB, but this could happen with anything as long as it is stored in a data folder. Some tests are added based on this idea, with a file filled with random bytes grabbed from the backend, written at the root of the data folder. This is proving good enough to reproduce the original problem. Author: Mikhail Gribkov Discussion: https://postgr.es/m/CAMEv5_uQS1Hg6KCaEP2JkrTBbZ-nXQhxomWrhYQvbdzR-zy-wA@mail.gmail.com Backpatch-through: 15 --- src/bin/pg_verifybackup/t/008_untar.pl | 22 +++++++++++++++++++ src/bin/pg_verifybackup/t/010_client_untar.pl | 22 +++++++++++++++++++ src/fe_utils/astreamer_lz4.c | 4 ++-- 3 files changed, 46 insertions(+), 2 deletions(-) diff --git a/src/bin/pg_verifybackup/t/008_untar.pl b/src/bin/pg_verifybackup/t/008_untar.pl index deed3ec247d2d..bc3d6b352ad50 100644 --- a/src/bin/pg_verifybackup/t/008_untar.pl +++ b/src/bin/pg_verifybackup/t/008_untar.pl @@ -16,6 +16,22 @@ $primary->init(allows_streaming => 1); $primary->start; +# Create file with some random data and an arbitrary size, useful to check +# the solidity of the compression and decompression logic. The size of the +# file is chosen to be around 640kB. This has proven to be large enough to +# detect some issues related to LZ4, and low enough to not impact the runtime +# of the test significantly. +my $junk_data = $primary->safe_psql( + 'postgres', qq( + SELECT string_agg(encode(sha256(i::bytea), 'hex'), '') + FROM generate_series(1, 10240) s(i);)); +my $data_dir = $primary->data_dir; +my $junk_file = "$data_dir/junk"; +open my $jf, '>', $junk_file + or die "Could not create junk file: $!"; +print $jf $junk_data; +close $jf; + # Create a tablespace directory. my $source_ts_path = PostgreSQL::Test::Utils::tempdir_short(); @@ -52,6 +68,12 @@ 'backup_archive' => [ 'base.tar.lz4', "$tsoid.tar.lz4" ], 'enabled' => check_pg_config("#define USE_LZ4 1") }, + { + 'compression_method' => 'lz4', + 'backup_flags' => [ '--compress', 'server-lz4:5' ], + 'backup_archive' => [ 'base.tar.lz4', "$tsoid.tar.lz4" ], + 'enabled' => check_pg_config("#define USE_LZ4 1") + }, { 'compression_method' => 'zstd', 'backup_flags' => [ '--compress', 'server-zstd' ], diff --git a/src/bin/pg_verifybackup/t/010_client_untar.pl b/src/bin/pg_verifybackup/t/010_client_untar.pl index d8d2b06c7ee86..b62faeb5acfab 100644 --- a/src/bin/pg_verifybackup/t/010_client_untar.pl +++ b/src/bin/pg_verifybackup/t/010_client_untar.pl @@ -15,6 +15,22 @@ $primary->init(allows_streaming => 1); $primary->start; +# Create file with some random data and an arbitrary size, useful to check +# the solidity of the compression and decompression logic. The size of the +# file is chosen to be around 640kB. This has proven to be large enough to +# detect some issues related to LZ4, and low enough to not impact the runtime +# of the test significantly. +my $junk_data = $primary->safe_psql( + 'postgres', qq( + SELECT string_agg(encode(sha256(i::bytea), 'hex'), '') + FROM generate_series(1, 10240) s(i);)); +my $data_dir = $primary->data_dir; +my $junk_file = "$data_dir/junk"; +open my $jf, '>', $junk_file + or die "Could not create junk file: $!"; +print $jf $junk_data; +close $jf; + my $backup_path = $primary->backup_dir . '/client-backup'; my $extract_path = $primary->backup_dir . '/extracted-backup'; @@ -37,6 +53,12 @@ 'backup_archive' => 'base.tar.lz4', 'enabled' => check_pg_config("#define USE_LZ4 1") }, + { + 'compression_method' => 'lz4', + 'backup_flags' => [ '--compress', 'client-lz4:1' ], + 'backup_archive' => 'base.tar.lz4', + 'enabled' => check_pg_config("#define USE_LZ4 1") + }, { 'compression_method' => 'zstd', 'backup_flags' => [ '--compress', 'client-zstd:5' ], diff --git a/src/fe_utils/astreamer_lz4.c b/src/fe_utils/astreamer_lz4.c index 781aaf99f38fe..5f581d1de3769 100644 --- a/src/fe_utils/astreamer_lz4.c +++ b/src/fe_utils/astreamer_lz4.c @@ -322,9 +322,9 @@ astreamer_lz4_decompressor_content(astreamer *streamer, mystreamer = (astreamer_lz4_frame *) streamer; next_in = (uint8 *) data; - next_out = (uint8 *) mystreamer->base.bbs_buffer.data; + next_out = (uint8 *) mystreamer->base.bbs_buffer.data + mystreamer->bytes_written; avail_in = len; - avail_out = mystreamer->base.bbs_buffer.maxlen; + avail_out = mystreamer->base.bbs_buffer.maxlen - mystreamer->bytes_written; while (avail_in > 0) { From 3e73d8735371fc20a13fb4b68fc643909749dde0 Mon Sep 17 00:00:00 2001 From: John Naylor Date: Wed, 2 Jul 2025 11:51:10 +0700 Subject: [PATCH 017/457] Remove implicit cast from 'void *' Commit e2809e3a101 added code to a header which assigns a pointer to void to a pointer to unsigned char. This causes build errors for extensions written in C++. Fix by adding an explicit cast. Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CANWCAZaCq9AHBuhs%3DMx7Gg_0Af9oRU7iAqr0itJCtfmsWwVmnQ%40mail.gmail.com Backpatch-through: 18 --- src/include/port/pg_crc32c.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/port/pg_crc32c.h b/src/include/port/pg_crc32c.h index 82313bb7fcfee..ae008118ea818 100644 --- a/src/include/port/pg_crc32c.h +++ b/src/include/port/pg_crc32c.h @@ -72,7 +72,7 @@ pg_comp_crc32c_dispatch(pg_crc32c crc, const void *data, size_t len) { if (__builtin_constant_p(len) && len < 32) { - const unsigned char *p = data; + const unsigned char *p = (const unsigned char *) data; /* * For small constant inputs, inline the computation to avoid a From 7c6ededac82baa0c334c11a36addd48522ec433d Mon Sep 17 00:00:00 2001 From: Masahiko Sawada Date: Tue, 1 Jul 2025 23:25:17 -0700 Subject: [PATCH 018/457] Fix missing FSM vacuum opportunities on tables without indexes. Commit c120550edb86 optimized the vacuuming of relations without indexes (a.k.a. one-pass strategy) by directly marking dead item IDs as LP_UNUSED. However, the periodic FSM vacuum was still checking if dead item IDs had been marked as LP_DEAD when attempting to vacuum the FSM every VACUUM_FSM_EVERY_PAGES blocks. This condition was never met due to the optimization, resulting in missed FSM vacuum opportunities. This commit modifies the periodic FSM vacuum condition to use the number of tuples deleted during HOT pruning. This count includes items marked as either LP_UNUSED or LP_REDIRECT, both of which are expected to result in new free space to report. Back-patch to v17 where the vacuum optimization for tables with no indexes was introduced. Reviewed-by: Melanie Plageman Discussion: https://postgr.es/m/CAD21AoBL8m6B9GSzQfYxVaEgvD7-Kr3AJaS-hJPHC+avm-29zw@mail.gmail.com Backpatch-through: 17 --- src/backend/access/heap/vacuumlazy.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/backend/access/heap/vacuumlazy.c b/src/backend/access/heap/vacuumlazy.c index 4111a8996b5a1..0fef8e49e2b64 100644 --- a/src/backend/access/heap/vacuumlazy.c +++ b/src/backend/access/heap/vacuumlazy.c @@ -431,7 +431,7 @@ static void find_next_unskippable_block(LVRelState *vacrel, bool *skipsallvis); static bool lazy_scan_new_or_empty(LVRelState *vacrel, Buffer buf, BlockNumber blkno, Page page, bool sharelock, Buffer vmbuffer); -static void lazy_scan_prune(LVRelState *vacrel, Buffer buf, +static int lazy_scan_prune(LVRelState *vacrel, Buffer buf, BlockNumber blkno, Page page, Buffer vmbuffer, bool all_visible_according_to_vm, bool *has_lpdead_items, bool *vm_page_frozen); @@ -1245,6 +1245,7 @@ lazy_scan_heap(LVRelState *vacrel) Buffer buf; Page page; uint8 blk_info = 0; + int ndeleted = 0; bool has_lpdead_items; void *per_buffer_data = NULL; bool vm_page_frozen = false; @@ -1387,10 +1388,10 @@ lazy_scan_heap(LVRelState *vacrel) * line pointers previously marked LP_DEAD. */ if (got_cleanup_lock) - lazy_scan_prune(vacrel, buf, blkno, page, - vmbuffer, - blk_info & VAC_BLK_ALL_VISIBLE_ACCORDING_TO_VM, - &has_lpdead_items, &vm_page_frozen); + ndeleted = lazy_scan_prune(vacrel, buf, blkno, page, + vmbuffer, + blk_info & VAC_BLK_ALL_VISIBLE_ACCORDING_TO_VM, + &has_lpdead_items, &vm_page_frozen); /* * Count an eagerly scanned page as a failure or a success. @@ -1481,7 +1482,7 @@ lazy_scan_heap(LVRelState *vacrel) * table has indexes. There will only be newly-freed space if we * held the cleanup lock and lazy_scan_prune() was called. */ - if (got_cleanup_lock && vacrel->nindexes == 0 && has_lpdead_items && + if (got_cleanup_lock && vacrel->nindexes == 0 && ndeleted > 0 && blkno - next_fsm_block_to_vacuum >= VACUUM_FSM_EVERY_PAGES) { FreeSpaceMapVacuumRange(vacrel->rel, next_fsm_block_to_vacuum, @@ -1936,8 +1937,10 @@ cmpOffsetNumbers(const void *a, const void *b) * *vm_page_frozen is set to true if the page is newly set all-frozen in the * VM. The caller currently only uses this for determining whether an eagerly * scanned page was successfully set all-frozen. + * + * Returns the number of tuples deleted from the page during HOT pruning. */ -static void +static int lazy_scan_prune(LVRelState *vacrel, Buffer buf, BlockNumber blkno, @@ -2208,6 +2211,8 @@ lazy_scan_prune(LVRelState *vacrel, *vm_page_frozen = true; } } + + return presult.ndeleted; } /* From 87f0d3cd8db54f616d3e65f6cb6fb54428b852df Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Wed, 2 Jul 2025 11:42:36 +0200 Subject: [PATCH 019/457] doc: pg_buffercache documentation wordsmithing A words seemed to have gone missing in the leading paragraphs. Author: Bertrand Drouvot Co-authored-by: Daniel Gustafsson Discussion: https://postgr.es/m/aGTQYZz9L0bjlzVL@ip-10-97-1-34.eu-west-3.compute.internal Backpatch-through: 18 --- doc/src/sgml/pgbuffercache.sgml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/src/sgml/pgbuffercache.sgml b/doc/src/sgml/pgbuffercache.sgml index 537d601494242..546ace8369e28 100644 --- a/doc/src/sgml/pgbuffercache.sgml +++ b/doc/src/sgml/pgbuffercache.sgml @@ -37,12 +37,12 @@ This module provides the pg_buffercache_pages() - function (wrapped in the pg_buffercache view), + function (wrapped in the pg_buffercache view), the pg_buffercache_numa_pages() function (wrapped in the pg_buffercache_numa view), the pg_buffercache_summary() function, the pg_buffercache_usage_counts() function, the - pg_buffercache_evict(), the + pg_buffercache_evict() function, the pg_buffercache_evict_relation() function and the pg_buffercache_evict_all() function. @@ -55,7 +55,7 @@ - The pg_buffercache_numa_pages() provides + The pg_buffercache_numa_pages() function provides NUMA node mappings for shared buffer entries. This information is not part of pg_buffercache_pages() itself, as it is much slower to retrieve. From 7c365eb504297408673938087a15cac22a8c7d01 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Wed, 2 Jul 2025 09:40:48 -0400 Subject: [PATCH 020/457] Make handling of redundant nbtree keys more robust. nbtree preprocessing's handling of redundant (and contradictory) keys created problems for scans with = arrays. It was just about possible for a scan with an = array key and one or more redundant keys (keys that preprocessing could not eliminate due an incomplete opfamily and a cross-type key) to get stuck. Testing has shown that infinite cycling where the scan never manages to make forward progress was possible. This could happen when the scan's arrays were reset in _bt_readpage's forcenonrequired=true path (added by bugfix commit 5f4d98d4) when the arrays weren't at least advanced up to the same point that they were in at the start of the _bt_readpage call. Earlier redundant keys prevented the finaltup call to _bt_advance_array_keys from reaching lower-order keys that needed to be used to sufficiently advance the scan's arrays. To fix, make preprocessing leave the scan's keys in a state that is as close as possible to how it'll usually leave them (in the common case where there's no redundant keys that preprocessing failed to eliminate). Now nbtree preprocessing _reliably_ leaves behind at most one required >/>= key per index column, and at most one required keyData[] array as needed. That way they'll always be evaluated after the scan's required keys, and so cannot prevent code in places like _bt_advance_array_keys and _bt_first from reaching a required key. Also teach _bt_first to decide which initial positioning keys to use based on the same requiredness markings that have long been used by _bt_checkkeys/_bt_advance_array_keys. This is a necessary condition for reliably avoiding infinite cycling. _bt_advance_array_keys expects to be able to reason about what'll happen in the next _bt_first call should it start another primitive index scan, by evaluating inequality keys that were marked required in the opposite-to-scan scan direction only. Now everybody (_bt_first, _bt_checkkeys, and _bt_advance_array_keys) will always agree on which exact key will be used on each index column to start and/or end the scan (except when row compare keys are involved, which have similar problems not addressed by this commit). An upcoming commit will finish off the work started by this commit by harmonizing how _bt_first, _bt_checkkeys, and _bt_advance_array_keys apply row compare keys to start and end scans. This fixes what was arguably an oversight in either commit 5f4d98d4 or commit 8a510275. Author: Peter Geoghegan Reviewed-By: Heikki Linnakangas Discussion: https://postgr.es/m/CAH2-Wz=ds4M+3NXMgwxYxqU8MULaLf696_v5g=9WNmWL2=Uo2A@mail.gmail.com Backpatch-through: 18 --- src/backend/access/nbtree/nbtpreprocesskeys.c | 384 +++++++++++++++--- src/backend/access/nbtree/nbtsearch.c | 204 +++++----- src/backend/access/nbtree/nbtutils.c | 136 +------ 3 files changed, 455 insertions(+), 269 deletions(-) diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index a136e4bbfdfb5..36813a96fff57 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -16,6 +16,7 @@ #include "postgres.h" #include "access/nbtree.h" +#include "common/int.h" #include "lib/qunique.h" #include "utils/array.h" #include "utils/lsyscache.h" @@ -56,6 +57,8 @@ static void _bt_skiparray_strat_decrement(IndexScanDesc scan, ScanKey arraysk, BTArrayKeyInfo *array); static void _bt_skiparray_strat_increment(IndexScanDesc scan, ScanKey arraysk, BTArrayKeyInfo *array); +static void _bt_unmark_keys(IndexScanDesc scan, int *keyDataMap); +static int _bt_reorder_array_cmp(const void *a, const void *b); static ScanKey _bt_preprocess_array_keys(IndexScanDesc scan, int *new_numberOfKeys); static void _bt_preprocess_array_keys_final(IndexScanDesc scan, int *keyDataMap); static int _bt_num_array_keys(IndexScanDesc scan, Oid *skip_eq_ops_out, @@ -96,7 +99,7 @@ static int _bt_compare_array_elements(const void *a, const void *b, void *arg); * incomplete sets of cross-type operators, we may fail to detect redundant * or contradictory keys, but we can survive that.) * - * The output keys must be sorted by index attribute. Presently we expect + * Required output keys are sorted by index attribute. Presently we expect * (but verify) that the input keys are already so sorted --- this is done * by match_clauses_to_index() in indxpath.c. Some reordering of the keys * within each attribute may be done as a byproduct of the processing here. @@ -127,29 +130,36 @@ static int _bt_compare_array_elements(const void *a, const void *b, void *arg); * This has the potential to be much more efficient than a full index scan * (though it behaves like a full scan when there's many distinct "x" values). * - * If possible, redundant keys are eliminated: we keep only the tightest + * Typically, redundant keys are eliminated: we keep only the tightest * >/>= bound and the tightest />= or both - * 4::int AND x > 10::bigint", and we are unable to determine - * which key is more restrictive for lack of a suitable cross-type operator. - * _bt_first will arbitrarily pick one of the keys to do the initial - * positioning with. If it picks x > 4, then the x > 10 condition will fail - * until we reach index entries > 10; but we can't stop the scan just because - * x > 10 is failing. On the other hand, if we are scanning backwards, then - * failure of either key is indeed enough to stop the scan. (In general, when - * inequality keys are present, the initial-positioning code only promises to - * position before the first possible match, not exactly at the first match, - * for a forward scan; or after the last match for a backward scan.) + * we cannot eliminate either key. + * + * When all redundant keys could not be eliminated, we'll output a key array + * that can more or less be treated as if it had no redundant keys. Suppose + * we have "x > 4::int AND x > 10::bigint AND x < 70", and we are unable to + * determine which > key is more restrictive for lack of a suitable cross-type + * operator. We'll arbitrarily pick one of the > keys; the other > key won't + * be marked required. Obviously, the scan will be less efficient if we + * choose x > 4 over x > 10 -- but it can still largely proceed as if there + * was only a single > condition. "x > 10" will be placed at the end of the + * so->keyData[] output array. It'll always be evaluated last, after the keys + * that could be marked required in the usual way (after "x > 4 AND x < 70"). + * This can sometimes result in so->keyData[] keys that aren't even in index + * attribute order (if the qual involves multiple attributes). The scan's + * required keys will still be in attribute order, though, so it can't matter. + * + * This scheme ensures that _bt_first always uses the same set of keys at the + * start of a forwards scan as those _bt_checkkeys uses to determine when to + * end a similar backwards scan (and vice-versa). _bt_advance_array_keys + * depends on this: it expects to be able to reliably predict what the next + * _bt_first call will do by testing whether _bt_checkkeys' routines report + * that the final tuple on the page is past the end of matches for the scan's + * keys with the scan direction flipped. If it is (if continuescan=false), + * then it follows that calling _bt_first will, at a minimum, relocate the + * scan to the very next leaf page (in the current scan direction). * * As a byproduct of this work, we can detect contradictory quals such * as "x = 1 AND x > 2". If we see that, we return so->qual_ok = false, @@ -188,7 +198,8 @@ _bt_preprocess_keys(IndexScanDesc scan) int numberOfEqualCols; ScanKey inkeys; BTScanKeyPreproc xform[BTMaxStrategyNumber]; - bool test_result; + bool test_result, + redundant_key_kept = false; AttrNumber attno; ScanKey arrayKeyData; int *keyDataMap = NULL; @@ -388,7 +399,8 @@ _bt_preprocess_keys(IndexScanDesc scan) xform[j].inkey = NULL; xform[j].inkeyi = -1; } - /* else, cannot determine redundancy, keep both keys */ + else + redundant_key_kept = true; } /* track number of attrs for which we have "=" keys */ numberOfEqualCols++; @@ -409,6 +421,8 @@ _bt_preprocess_keys(IndexScanDesc scan) else xform[BTLessStrategyNumber - 1].inkey = NULL; } + else + redundant_key_kept = true; } /* try to keep only one of >, >= */ @@ -426,6 +440,8 @@ _bt_preprocess_keys(IndexScanDesc scan) else xform[BTGreaterStrategyNumber - 1].inkey = NULL; } + else + redundant_key_kept = true; } /* @@ -466,25 +482,6 @@ _bt_preprocess_keys(IndexScanDesc scan) /* check strategy this key's operator corresponds to */ j = inkey->sk_strategy - 1; - /* if row comparison, push it directly to the output array */ - if (inkey->sk_flags & SK_ROW_HEADER) - { - ScanKey outkey = &so->keyData[new_numberOfKeys++]; - - memcpy(outkey, inkey, sizeof(ScanKeyData)); - if (arrayKeyData) - keyDataMap[new_numberOfKeys - 1] = i; - if (numberOfEqualCols == attno - 1) - _bt_mark_scankey_required(outkey); - - /* - * We don't support RowCompare using equality; such a qual would - * mess up the numberOfEqualCols tracking. - */ - Assert(j != (BTEqualStrategyNumber - 1)); - continue; - } - if (inkey->sk_strategy == BTEqualStrategyNumber && (inkey->sk_flags & SK_SEARCHARRAY)) { @@ -593,9 +590,8 @@ _bt_preprocess_keys(IndexScanDesc scan) * the new scan key. * * Note: We do things this way around so that our arrays are - * always in the same order as their corresponding scan keys, - * even with incomplete opfamilies. _bt_advance_array_keys - * depends on this. + * always in the same order as their corresponding scan keys. + * _bt_preprocess_array_keys_final expects this. */ ScanKey outkey = &so->keyData[new_numberOfKeys++]; @@ -607,6 +603,7 @@ _bt_preprocess_keys(IndexScanDesc scan) xform[j].inkey = inkey; xform[j].inkeyi = i; xform[j].arrayidx = arrayidx; + redundant_key_kept = true; } } } @@ -622,6 +619,15 @@ _bt_preprocess_keys(IndexScanDesc scan) if (arrayKeyData) _bt_preprocess_array_keys_final(scan, keyDataMap); + /* + * If there are remaining redundant inequality keys, we must make sure + * that each index attribute has no more than one required >/>= key, and + * no more than one required qual_ok) + _bt_unmark_keys(scan, keyDataMap); + /* Could pfree arrayKeyData/keyDataMap now, but not worth the cycles */ } @@ -847,8 +853,7 @@ _bt_compare_scankey_args(IndexScanDesc scan, ScanKey op, cmp_op; StrategyNumber strat; - Assert(!((leftarg->sk_flags | rightarg->sk_flags) & - (SK_ROW_HEADER | SK_ROW_MEMBER))); + Assert(!((leftarg->sk_flags | rightarg->sk_flags) & SK_ROW_MEMBER)); /* * First, deal with cases where one or both args are NULL. This should @@ -924,6 +929,16 @@ _bt_compare_scankey_args(IndexScanDesc scan, ScanKey op, return true; } + /* + * We don't yet know how to determine redundancy when it involves a row + * compare key (barring simple cases involving IS NULL/IS NOT NULL) + */ + if ((leftarg->sk_flags | rightarg->sk_flags) & SK_ROW_HEADER) + { + Assert(!((leftarg->sk_flags | rightarg->sk_flags) & SK_BT_SKIP)); + return false; + } + /* * If either leftarg or rightarg are equality-type array scankeys, we need * specialized handling (since by now we know that IS NULL wasn't used) @@ -1467,6 +1482,283 @@ _bt_skiparray_strat_increment(IndexScanDesc scan, ScanKey arraysk, } } +/* + * _bt_unmark_keys() -- make superfluous required keys nonrequired after all + * + * When _bt_preprocess_keys fails to eliminate one or more redundant keys, it + * calls here to make sure that no index attribute has more than one > or >= + * key marked required, and no more than one required < or <= key. Attributes + * with = keys will always get one = key as their required key. All other + * keys that were initially marked required get "unmarked" here. That way, + * _bt_first and _bt_checkkeys will reliably agree on which keys to use to + * start and/or to end the scan. + * + * We also relocate keys that become/started out nonrequired to the end of + * so->keyData[]. That way, _bt_first and _bt_checkkeys cannot fail to reach + * a required key due to some earlier nonrequired key getting in the way. + * + * Only call here when _bt_compare_scankey_args returned false at least once + * (otherwise, calling here will just waste cycles). + */ +static void +_bt_unmark_keys(IndexScanDesc scan, int *keyDataMap) +{ + BTScanOpaque so = (BTScanOpaque) scan->opaque; + AttrNumber attno; + bool *unmarkikey; + int nunmark, + nunmarked, + nkept, + firsti; + ScanKey keepKeys, + unmarkKeys; + FmgrInfo *keepOrderProcs = NULL, + *unmarkOrderProcs = NULL; + bool haveReqEquals, + haveReqForward, + haveReqBackward; + + /* + * Do an initial pass over so->keyData[] that determines which keys to + * keep as required. We expect so->keyData[] to still be in attribute + * order when we're called (though we don't expect any particular order + * among each attribute's keys). + * + * When both equality and inequality keys remain on a single attribute, we + * *must* make sure that exactly one of the equalities remains required. + * Any requiredness markings that we might leave on later keys/attributes + * are predicated on there being required = keys on all prior columns. + */ + unmarkikey = palloc0(so->numberOfKeys * sizeof(bool)); + nunmark = 0; + + /* Set things up for first key's attribute */ + attno = so->keyData[0].sk_attno; + firsti = 0; + haveReqEquals = false; + haveReqForward = false; + haveReqBackward = false; + for (int i = 0; i < so->numberOfKeys; i++) + { + ScanKey origkey = &so->keyData[i]; + + if (origkey->sk_attno != attno) + { + /* Reset for next attribute */ + attno = origkey->sk_attno; + firsti = i; + + haveReqEquals = false; + haveReqForward = false; + haveReqBackward = false; + } + + /* Equalities get priority over inequalities */ + if (haveReqEquals) + { + /* + * We already found the first "=" key for this attribute. We've + * already decided that all its other keys will be unmarked. + */ + Assert(!(origkey->sk_flags & SK_SEARCHNULL)); + unmarkikey[i] = true; + nunmark++; + continue; + } + else if ((origkey->sk_flags & SK_BT_REQFWD) && + (origkey->sk_flags & SK_BT_REQBKWD)) + { + /* + * Found the first "=" key for attno. All other attno keys will + * be unmarked. + */ + Assert(origkey->sk_strategy == BTEqualStrategyNumber); + + haveReqEquals = true; + for (int j = firsti; j < i; j++) + { + /* Unmark any prior inequality keys on attno after all */ + if (!unmarkikey[j]) + { + unmarkikey[j] = true; + nunmark++; + } + } + continue; + } + + /* Deal with inequalities next */ + if ((origkey->sk_flags & SK_BT_REQFWD) && !haveReqForward) + { + haveReqForward = true; + continue; + } + else if ((origkey->sk_flags & SK_BT_REQBKWD) && !haveReqBackward) + { + haveReqBackward = true; + continue; + } + + /* + * We have either a redundant inequality key that will be unmarked, or + * we have a key that wasn't marked required in the first place + */ + unmarkikey[i] = true; + nunmark++; + } + + /* Should only be called when _bt_compare_scankey_args reported failure */ + Assert(nunmark > 0); + + /* + * Next, allocate temp arrays: one for required keys that'll remain + * required, the other for all remaining keys + */ + unmarkKeys = palloc(nunmark * sizeof(ScanKeyData)); + keepKeys = palloc((so->numberOfKeys - nunmark) * sizeof(ScanKeyData)); + nunmarked = 0; + nkept = 0; + if (so->numArrayKeys) + { + unmarkOrderProcs = palloc(nunmark * sizeof(FmgrInfo)); + keepOrderProcs = palloc((so->numberOfKeys - nunmark) * sizeof(FmgrInfo)); + } + + /* + * Next, copy the contents of so->keyData[] into the appropriate temp + * array. + * + * Scans with = array keys need us to maintain invariants around the order + * of so->orderProcs[] and so->arrayKeys[] relative to so->keyData[]. See + * _bt_preprocess_array_keys_final for a full explanation. + */ + for (int i = 0; i < so->numberOfKeys; i++) + { + ScanKey origkey = &so->keyData[i]; + ScanKey unmark; + + if (!unmarkikey[i]) + { + /* + * Key gets to keep its original requiredness markings. + * + * Key will stay in its original position, unless we're going to + * unmark an earlier key (in which case this key gets moved back). + */ + memcpy(keepKeys + nkept, origkey, sizeof(ScanKeyData)); + + if (so->numArrayKeys) + { + keyDataMap[i] = nkept; + memcpy(keepOrderProcs + nkept, &so->orderProcs[i], + sizeof(FmgrInfo)); + } + + nkept++; + continue; + } + + /* + * Key will be unmarked as needed, and moved to the end of the array, + * next to other keys that will become (or always were) nonrequired + */ + unmark = unmarkKeys + nunmarked; + memcpy(unmark, origkey, sizeof(ScanKeyData)); + + if (so->numArrayKeys) + { + keyDataMap[i] = (so->numberOfKeys - nunmark) + nunmarked; + memcpy(&unmarkOrderProcs[nunmarked], &so->orderProcs[i], + sizeof(FmgrInfo)); + } + + /* + * Preprocessing only generates skip arrays when it knows that they'll + * be the only required = key on the attr. We'll never unmark them. + */ + Assert(!(unmark->sk_flags & SK_BT_SKIP)); + + /* + * Also shouldn't have to unmark an IS NULL or an IS NOT NULL key. + * They aren't cross-type, so an incomplete opfamily can't matter. + */ + Assert(!(unmark->sk_flags & SK_ISNULL) || + !(unmark->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD))); + + /* Clear requiredness flags on redundant key (and on any subkeys) */ + unmark->sk_flags &= ~(SK_BT_REQFWD | SK_BT_REQBKWD); + if (unmark->sk_flags & SK_ROW_HEADER) + { + ScanKey subkey = (ScanKey) DatumGetPointer(unmark->sk_argument); + + Assert(subkey->sk_strategy == unmark->sk_strategy); + for (;;) + { + Assert(subkey->sk_flags & SK_ROW_MEMBER); + subkey->sk_flags &= ~(SK_BT_REQFWD | SK_BT_REQBKWD); + if (subkey->sk_flags & SK_ROW_END) + break; + subkey++; + } + } + + nunmarked++; + } + + /* Copy both temp arrays back into so->keyData[] to reorder */ + Assert(nkept == so->numberOfKeys - nunmark); + Assert(nunmarked == nunmark); + memcpy(so->keyData, keepKeys, sizeof(ScanKeyData) * nkept); + memcpy(so->keyData + nkept, unmarkKeys, sizeof(ScanKeyData) * nunmarked); + + /* Done with temp arrays */ + pfree(unmarkikey); + pfree(keepKeys); + pfree(unmarkKeys); + + /* + * Now copy so->orderProcs[] temp entries needed by scans with = array + * keys back (just like with the so->keyData[] temp arrays) + */ + if (so->numArrayKeys) + { + memcpy(so->orderProcs, keepOrderProcs, sizeof(FmgrInfo) * nkept); + memcpy(so->orderProcs + nkept, unmarkOrderProcs, + sizeof(FmgrInfo) * nunmarked); + + /* Also fix-up array->scan_key references */ + for (int arridx = 0; arridx < so->numArrayKeys; arridx++) + { + BTArrayKeyInfo *array = &so->arrayKeys[arridx]; + + array->scan_key = keyDataMap[array->scan_key]; + } + + /* + * Sort so->arrayKeys[] based on its new BTArrayKeyInfo.scan_key + * offsets, so that its order matches so->keyData[] order as expected + */ + qsort(so->arrayKeys, so->numArrayKeys, sizeof(BTArrayKeyInfo), + _bt_reorder_array_cmp); + + /* Done with temp arrays */ + pfree(unmarkOrderProcs); + pfree(keepOrderProcs); + } +} + +/* + * qsort comparator for reordering so->arrayKeys[] BTArrayKeyInfo entries + */ +static int +_bt_reorder_array_cmp(const void *a, const void *b) +{ + BTArrayKeyInfo *arraya = (BTArrayKeyInfo *) a; + BTArrayKeyInfo *arrayb = (BTArrayKeyInfo *) b; + + return pg_cmp_s32(arraya->scan_key, arrayb->scan_key); +} + /* * _bt_preprocess_array_keys() -- Preprocess SK_SEARCHARRAY scan keys * diff --git a/src/backend/access/nbtree/nbtsearch.c b/src/backend/access/nbtree/nbtsearch.c index 36544ecfd5878..9846ef6db53ae 100644 --- a/src/backend/access/nbtree/nbtsearch.c +++ b/src/backend/access/nbtree/nbtsearch.c @@ -960,46 +960,51 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) /*---------- * Examine the scan keys to discover where we need to start the scan. + * The selected scan keys (at most one per index column) are remembered by + * storing their addresses into the local startKeys[] array. The final + * startKeys[] entry's strategy is set in strat_total. (Actually, there + * are a couple of cases where we force a less/more restrictive strategy.) * - * We want to identify the keys that can be used as starting boundaries; - * these are =, >, or >= keys for a forward scan or =, <, <= keys for - * a backwards scan. We can use keys for multiple attributes so long as - * the prior attributes had only =, >= (resp. =, <=) keys. Once we accept - * a > or < boundary or find an attribute with no boundary (which can be - * thought of as the same as "> -infinity"), we can't use keys for any - * attributes to its right, because it would break our simplistic notion - * of what initial positioning strategy to use. + * We must use the key that was marked required (in the direction opposite + * our own scan's) during preprocessing. Each index attribute can only + * have one such required key. In general, the keys that we use to find + * an initial position when scanning forwards are the same keys that end + * the scan on the leaf level when scanning backwards (and vice-versa). * * When the scan keys include cross-type operators, _bt_preprocess_keys - * may not be able to eliminate redundant keys; in such cases we will - * arbitrarily pick a usable one for each attribute. This is correct - * but possibly not optimal behavior. (For example, with keys like - * "x >= 4 AND x >= 5" we would elect to scan starting at x=4 when - * x=5 would be more efficient.) Since the situation only arises given - * a poorly-worded query plus an incomplete opfamily, live with it. + * may not be able to eliminate redundant keys; in such cases it will + * arbitrarily pick a usable key for each attribute (and scan direction), + * ensuring that there is no more than one key required in each direction. + * We stop considering further keys once we reach the first nonrequired + * key (which must come after all required keys), so this can't affect us. + * + * The required keys that we use as starting boundaries have to be =, >, + * or >= keys for a forward scan or =, <, <= keys for a backwards scan. + * We can use keys for multiple attributes so long as the prior attributes + * had only =, >= (resp. =, <=) keys. These rules are very similar to the + * rules that preprocessing used to determine which keys to mark required. + * We cannot always use every required key as a positioning key, though. + * Skip arrays necessitate independently applying our own rules here. + * Skip arrays are always generally considered = array keys, but we'll + * nevertheless treat them as inequalities at certain points of the scan. + * When that happens, it _might_ have implications for the number of + * required keys that we can safely use for initial positioning purposes. * - * When both equality and inequality keys appear for a single attribute - * (again, only possible when cross-type operators appear), we *must* - * select one of the equality keys for the starting point, because - * _bt_checkkeys() will stop the scan as soon as an equality qual fails. - * For example, if we have keys like "x >= 4 AND x = 10" and we elect to - * start at x=4, we will fail and stop before reaching x=10. If multiple - * equality quals survive preprocessing, however, it doesn't matter which - * one we use --- by definition, they are either redundant or - * contradictory. + * For example, a forward scan with a skip array on its leading attribute + * (with no low_compare/high_compare) will have at least two required scan + * keys, but we won't use any of them as boundary keys during the scan's + * initial call here. Our positioning key during the first call here can + * be thought of as representing "> -infinity". Similarly, if such a skip + * array's low_compare is "a > 'foo'", then we position using "a > 'foo'" + * during the scan's initial call here; a lower-order key such as "b = 42" + * can't be used until the "a" array advances beyond MINVAL/low_compare. * - * In practice we rarely see any "attribute boundary key gaps" here. - * Preprocessing can usually backfill skip array keys for any attributes - * that were omitted from the original scan->keyData[] input keys. All - * array keys are always considered = keys, but we'll sometimes need to - * treat the current key value as if we were using an inequality strategy. - * This happens with range skip arrays, which store inequality keys in the - * array's low_compare/high_compare fields (used to find the first/last - * set of matches, when = key will lack a usable sk_argument value). - * These are always preferred over any redundant "standard" inequality - * keys on the same column (per the usual rule about preferring = keys). - * Note also that any column with an = skip array key can never have an - * additional, contradictory = key. + * On the other hand, if such a skip array's low_compare was "a >= 'foo'", + * then we _can_ use "a >= 'foo' AND b = 42" during the initial call here. + * A subsequent call here might have us use "a = 'fop' AND b = 42". Note + * that we treat = and >= as equivalent when scanning forwards (just as we + * treat = and <= as equivalent when scanning backwards). We effectively + * do the same thing (though with a distinct "a" element/value) each time. * * All keys (with the exception of SK_SEARCHNULL keys and SK_BT_SKIP * array keys whose array is "null_elem=true") imply a NOT NULL qualifier. @@ -1014,18 +1019,17 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) * first (leftmost) columns. We'll add on lower-order columns of the row * comparison below, if possible. * - * The selected scan keys (at most one per index column) are remembered by - * storing their addresses into the local startKeys[] array. - * - * _bt_checkkeys/_bt_advance_array_keys decide whether and when to start - * the next primitive index scan (for scans with array keys) based in part - * on an understanding of how it'll enable us to reposition the scan. - * They're directly aware of how we'll sometimes cons up an explicit - * SK_SEARCHNOTNULL key. They'll even end primitive scans by applying a - * symmetric "deduce NOT NULL" rule of their own. This allows top-level - * scans to skip large groups of NULLs through repeated deductions about - * key strictness (for a required inequality key) and whether NULLs in the - * key's index column are stored last or first (relative to non-NULLs). + * _bt_advance_array_keys needs to know exactly how we'll reposition the + * scan (should it opt to schedule another primitive index scan). It is + * critical that primscans only be scheduled when they'll definitely make + * some useful progress. _bt_advance_array_keys does this by calling + * _bt_checkkeys routines that report whether a tuple is past the end of + * matches for the scan's keys (given the scan's current array elements). + * If the page's final tuple is "after the end of matches" for a scan that + * uses the *opposite* scan direction, then it must follow that it's also + * "before the start of matches" for the actual current scan direction. + * It is therefore essential that all of our initial positioning rules are + * symmetric with _bt_checkkeys's corresponding continuescan=false rule. * If you update anything here, _bt_checkkeys/_bt_advance_array_keys might * need to be kept in sync. *---------- @@ -1034,18 +1038,17 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) if (so->numberOfKeys > 0) { AttrNumber curattr; - ScanKey chosen; + ScanKey bkey; ScanKey impliesNN; ScanKey cur; /* - * chosen is the so-far-chosen key for the current attribute, if any. - * We don't cast the decision in stone until we reach keys for the - * next attribute. + * bkey will be set to the key that preprocessing left behind as the + * boundary key for this attribute, in this scan direction (if any) */ cur = so->keyData; curattr = 1; - chosen = NULL; + bkey = NULL; /* Also remember any scankey that implies a NOT NULL constraint */ impliesNN = NULL; @@ -1058,23 +1061,29 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) { if (i >= so->numberOfKeys || cur->sk_attno != curattr) { + /* Done looking for the curattr boundary key */ + Assert(bkey == NULL || + (bkey->sk_attno == curattr && + (bkey->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD)))); + Assert(impliesNN == NULL || + (impliesNN->sk_attno == curattr && + (impliesNN->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD)))); + /* - * Done looking at keys for curattr. - * * If this is a scan key for a skip array whose current * element is MINVAL, choose low_compare (when scanning * backwards it'll be MAXVAL, and we'll choose high_compare). * - * Note: if the array's low_compare key makes 'chosen' NULL, + * Note: if the array's low_compare key makes 'bkey' NULL, * then we behave as if the array's first element is -inf, * except when !array->null_elem implies a usable NOT NULL * constraint. */ - if (chosen != NULL && - (chosen->sk_flags & (SK_BT_MINVAL | SK_BT_MAXVAL))) + if (bkey != NULL && + (bkey->sk_flags & (SK_BT_MINVAL | SK_BT_MAXVAL))) { - int ikey = chosen - so->keyData; - ScanKey skipequalitykey = chosen; + int ikey = bkey - so->keyData; + ScanKey skipequalitykey = bkey; BTArrayKeyInfo *array = NULL; for (int arridx = 0; arridx < so->numArrayKeys; arridx++) @@ -1087,35 +1096,35 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) if (ScanDirectionIsForward(dir)) { Assert(!(skipequalitykey->sk_flags & SK_BT_MAXVAL)); - chosen = array->low_compare; + bkey = array->low_compare; } else { Assert(!(skipequalitykey->sk_flags & SK_BT_MINVAL)); - chosen = array->high_compare; + bkey = array->high_compare; } - Assert(chosen == NULL || - chosen->sk_attno == skipequalitykey->sk_attno); + Assert(bkey == NULL || + bkey->sk_attno == skipequalitykey->sk_attno); if (!array->null_elem) impliesNN = skipequalitykey; else - Assert(chosen == NULL && impliesNN == NULL); + Assert(bkey == NULL && impliesNN == NULL); } /* * If we didn't find a usable boundary key, see if we can * deduce a NOT NULL key */ - if (chosen == NULL && impliesNN != NULL && + if (bkey == NULL && impliesNN != NULL && ((impliesNN->sk_flags & SK_BT_NULLS_FIRST) ? ScanDirectionIsForward(dir) : ScanDirectionIsBackward(dir))) { /* Yes, so build the key in notnullkeys[keysz] */ - chosen = ¬nullkeys[keysz]; - ScanKeyEntryInitialize(chosen, + bkey = ¬nullkeys[keysz]; + ScanKeyEntryInitialize(bkey, (SK_SEARCHNOTNULL | SK_ISNULL | (impliesNN->sk_flags & (SK_BT_DESC | SK_BT_NULLS_FIRST))), @@ -1130,12 +1139,12 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) } /* - * If we still didn't find a usable boundary key, quit; else - * save the boundary key pointer in startKeys. + * If preprocessing didn't leave a usable boundary key, quit; + * else save the boundary key pointer in startKeys[] */ - if (chosen == NULL) + if (bkey == NULL) break; - startKeys[keysz++] = chosen; + startKeys[keysz++] = bkey; /* * We can only consider adding more boundary keys when the one @@ -1143,7 +1152,7 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) * (during backwards scans we can only do so when the key that * we just added to startKeys[] uses the = or <= strategy) */ - strat_total = chosen->sk_strategy; + strat_total = bkey->sk_strategy; if (strat_total == BTGreaterStrategyNumber || strat_total == BTLessStrategyNumber) break; @@ -1154,19 +1163,19 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) * make strat_total > or < (and stop adding boundary keys). * This can only happen with opclasses that lack skip support. */ - if (chosen->sk_flags & (SK_BT_NEXT | SK_BT_PRIOR)) + if (bkey->sk_flags & (SK_BT_NEXT | SK_BT_PRIOR)) { - Assert(chosen->sk_flags & SK_BT_SKIP); + Assert(bkey->sk_flags & SK_BT_SKIP); Assert(strat_total == BTEqualStrategyNumber); if (ScanDirectionIsForward(dir)) { - Assert(!(chosen->sk_flags & SK_BT_PRIOR)); + Assert(!(bkey->sk_flags & SK_BT_PRIOR)); strat_total = BTGreaterStrategyNumber; } else { - Assert(!(chosen->sk_flags & SK_BT_NEXT)); + Assert(!(bkey->sk_flags & SK_BT_NEXT)); strat_total = BTLessStrategyNumber; } @@ -1180,24 +1189,30 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) /* * Done if that was the last scan key output by preprocessing. - * Also done if there is a gap index attribute that lacks a - * usable key (only possible when preprocessing was unable to - * generate a skip array key to "fill in the gap"). + * Also done if we've now examined all keys marked required. */ if (i >= so->numberOfKeys || - cur->sk_attno != curattr + 1) + !(cur->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD))) break; /* * Reset for next attr. */ + Assert(cur->sk_attno == curattr + 1); curattr = cur->sk_attno; - chosen = NULL; + bkey = NULL; impliesNN = NULL; } /* - * Can we use this key as a starting boundary for this attr? + * If we've located the starting boundary key for curattr, we have + * no interest in curattr's other required key + */ + if (bkey != NULL) + continue; + + /* + * Is this key the starting boundary key for curattr? * * If not, does it imply a NOT NULL constraint? (Because * SK_SEARCHNULL keys are always assigned BTEqualStrategyNumber, @@ -1207,27 +1222,20 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) { case BTLessStrategyNumber: case BTLessEqualStrategyNumber: - if (chosen == NULL) - { - if (ScanDirectionIsBackward(dir)) - chosen = cur; - else - impliesNN = cur; - } + if (ScanDirectionIsBackward(dir)) + bkey = cur; + else if (impliesNN == NULL) + impliesNN = cur; break; case BTEqualStrategyNumber: - /* override any non-equality choice */ - chosen = cur; + bkey = cur; break; case BTGreaterEqualStrategyNumber: case BTGreaterStrategyNumber: - if (chosen == NULL) - { - if (ScanDirectionIsForward(dir)) - chosen = cur; - else - impliesNN = cur; - } + if (ScanDirectionIsForward(dir)) + bkey = cur; + else if (impliesNN == NULL) + impliesNN = cur; break; } } diff --git a/src/backend/access/nbtree/nbtutils.c b/src/backend/access/nbtree/nbtutils.c index c71d1b6f2e1e0..eb6dbfda33c6e 100644 --- a/src/backend/access/nbtree/nbtutils.c +++ b/src/backend/access/nbtree/nbtutils.c @@ -44,7 +44,6 @@ static bool _bt_array_decrement(Relation rel, ScanKey skey, BTArrayKeyInfo *arra static bool _bt_array_increment(Relation rel, ScanKey skey, BTArrayKeyInfo *array); static bool _bt_advance_array_keys_increment(IndexScanDesc scan, ScanDirection dir, bool *skip_array_set); -static void _bt_rewind_nonrequired_arrays(IndexScanDesc scan, ScanDirection dir); static bool _bt_tuple_before_array_skeys(IndexScanDesc scan, ScanDirection dir, IndexTuple tuple, TupleDesc tupdesc, int tupnatts, bool readpagetup, int sktrig, bool *scanBehind); @@ -52,7 +51,6 @@ static bool _bt_advance_array_keys(IndexScanDesc scan, BTReadPageState *pstate, IndexTuple tuple, int tupnatts, TupleDesc tupdesc, int sktrig, bool sktrig_required); #ifdef USE_ASSERT_CHECKING -static bool _bt_verify_arrays_bt_first(IndexScanDesc scan, ScanDirection dir); static bool _bt_verify_keys_with_arraykeys(IndexScanDesc scan); #endif static bool _bt_oppodir_checkkeys(IndexScanDesc scan, ScanDirection dir, @@ -1034,73 +1032,6 @@ _bt_advance_array_keys_increment(IndexScanDesc scan, ScanDirection dir, return false; } -/* - * _bt_rewind_nonrequired_arrays() -- Rewind SAOP arrays not marked required - * - * Called when _bt_advance_array_keys decides to start a new primitive index - * scan on the basis of the current scan position being before the position - * that _bt_first is capable of repositioning the scan to by applying an - * inequality operator required in the opposite-to-scan direction only. - * - * Although equality strategy scan keys (for both arrays and non-arrays alike) - * are either marked required in both directions or in neither direction, - * there is a sense in which non-required arrays behave like required arrays. - * With a qual such as "WHERE a IN (100, 200) AND b >= 3 AND c IN (5, 6, 7)", - * the scan key on "c" is non-required, but nevertheless enables positioning - * the scan at the first tuple >= "(100, 3, 5)" on the leaf level during the - * first descent of the tree by _bt_first. Later on, there could also be a - * second descent, that places the scan right before tuples >= "(200, 3, 5)". - * _bt_first must never be allowed to build an insertion scan key whose "c" - * entry is set to a value other than 5, the "c" array's first element/value. - * (Actually, it's the first in the current scan direction. This example uses - * a forward scan.) - * - * Calling here resets the array scan key elements for the scan's non-required - * arrays. This is strictly necessary for correctness in a subset of cases - * involving "required in opposite direction"-triggered primitive index scans. - * Not all callers are at risk of _bt_first using a non-required array like - * this, but advancement always resets the arrays when another primitive scan - * is scheduled, just to keep things simple. Array advancement even makes - * sure to reset non-required arrays during scans that have no inequalities. - * (Advancement still won't call here when there are no inequalities, though - * that's just because it's all handled indirectly instead.) - * - * Note: _bt_verify_arrays_bt_first is called by an assertion to enforce that - * everybody got this right. - * - * Note: In practice almost all SAOP arrays are marked required during - * preprocessing (if necessary by generating skip arrays). It is hardly ever - * truly necessary to call here, but consistently doing so is simpler. - */ -static void -_bt_rewind_nonrequired_arrays(IndexScanDesc scan, ScanDirection dir) -{ - Relation rel = scan->indexRelation; - BTScanOpaque so = (BTScanOpaque) scan->opaque; - int arrayidx = 0; - - for (int ikey = 0; ikey < so->numberOfKeys; ikey++) - { - ScanKey cur = so->keyData + ikey; - BTArrayKeyInfo *array = NULL; - - if (!(cur->sk_flags & SK_SEARCHARRAY) || - cur->sk_strategy != BTEqualStrategyNumber) - continue; - - array = &so->arrayKeys[arrayidx++]; - Assert(array->scan_key == ikey); - - if ((cur->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD))) - continue; - - Assert(array->num_elems != -1); /* No non-required skip arrays */ - - _bt_array_set_low_or_high(rel, cur, array, - ScanDirectionIsForward(dir)); - } -} - /* * _bt_tuple_before_array_skeys() -- too early to advance required arrays? * @@ -1380,8 +1311,6 @@ _bt_start_prim_scan(IndexScanDesc scan, ScanDirection dir) */ if (so->needPrimScan) { - Assert(_bt_verify_arrays_bt_first(scan, dir)); - /* * Flag was set -- must call _bt_first again, which will reset the * scan's needPrimScan flag @@ -2007,14 +1936,7 @@ _bt_advance_array_keys(IndexScanDesc scan, BTReadPageState *pstate, */ else if (has_required_opposite_direction_only && pstate->finaltup && unlikely(!_bt_oppodir_checkkeys(scan, dir, pstate->finaltup))) - { - /* - * Make sure that any SAOP arrays that were not marked required by - * preprocessing are reset to their first element for this direction - */ - _bt_rewind_nonrequired_arrays(scan, dir); goto new_prim_scan; - } continue_scan: @@ -2045,8 +1967,6 @@ _bt_advance_array_keys(IndexScanDesc scan, BTReadPageState *pstate, */ so->oppositeDirCheck = has_required_opposite_direction_only; - _bt_rewind_nonrequired_arrays(scan, dir); - /* * skip by setting "look ahead" mechanism's offnum for forwards scans * (backwards scans check scanBehind flag directly instead) @@ -2142,48 +2062,6 @@ _bt_advance_array_keys(IndexScanDesc scan, BTReadPageState *pstate, } #ifdef USE_ASSERT_CHECKING -/* - * Verify that the scan's qual state matches what we expect at the point that - * _bt_start_prim_scan is about to start a just-scheduled new primitive scan. - * - * We enforce a rule against non-required array scan keys: they must start out - * with whatever element is the first for the scan's current scan direction. - * See _bt_rewind_nonrequired_arrays comments for an explanation. - */ -static bool -_bt_verify_arrays_bt_first(IndexScanDesc scan, ScanDirection dir) -{ - BTScanOpaque so = (BTScanOpaque) scan->opaque; - int arrayidx = 0; - - for (int ikey = 0; ikey < so->numberOfKeys; ikey++) - { - ScanKey cur = so->keyData + ikey; - BTArrayKeyInfo *array = NULL; - int first_elem_dir; - - if (!(cur->sk_flags & SK_SEARCHARRAY) || - cur->sk_strategy != BTEqualStrategyNumber) - continue; - - array = &so->arrayKeys[arrayidx++]; - - if (((cur->sk_flags & SK_BT_REQFWD) && ScanDirectionIsForward(dir)) || - ((cur->sk_flags & SK_BT_REQBKWD) && ScanDirectionIsBackward(dir))) - continue; - - if (ScanDirectionIsForward(dir)) - first_elem_dir = 0; - else - first_elem_dir = array->num_elems - 1; - - if (array->cur_elem != first_elem_dir) - return false; - } - - return _bt_verify_keys_with_arraykeys(scan); -} - /* * Verify that the scan's "so->keyData[]" scan keys are in agreement with * its array key state @@ -2194,6 +2072,7 @@ _bt_verify_keys_with_arraykeys(IndexScanDesc scan) BTScanOpaque so = (BTScanOpaque) scan->opaque; int last_sk_attno = InvalidAttrNumber, arrayidx = 0; + bool nonrequiredseen = false; if (!so->qual_ok) return false; @@ -2217,8 +2096,16 @@ _bt_verify_keys_with_arraykeys(IndexScanDesc scan) if (array->num_elems != -1 && cur->sk_argument != array->elem_values[array->cur_elem]) return false; - if (last_sk_attno > cur->sk_attno) - return false; + if (cur->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD)) + { + if (last_sk_attno > cur->sk_attno) + return false; + if (nonrequiredseen) + return false; + } + else + nonrequiredseen = true; + last_sk_attno = cur->sk_attno; } @@ -2551,7 +2438,6 @@ _bt_set_startikey(IndexScanDesc scan, BTReadPageState *pstate) if (!(key->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD))) { /* Scan key isn't marked required (corner case) */ - Assert(!(key->sk_flags & SK_ROW_HEADER)); break; /* unsafe */ } if (key->sk_flags & SK_ROW_HEADER) From 4cb889d21f3d40844dd04fa0fc65e485c789e74e Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Wed, 2 Jul 2025 09:48:14 -0400 Subject: [PATCH 021/457] Make row compares robust during nbtree array scans. Recent nbtree bugfix commit 5f4d98d4 added a special case to the code that sets up a page-level prefix of keys that are definitely satisfied by every tuple on the page: whenever _bt_set_startikey reached a row compare key, we'd refuse to apply the pstate.forcenonrequired behavior in scans where that usually happens (scans with a higher-order array key). That hack made the scan avoid essentially the same infinite cycling behavior that also affected nbtree scans with redundant keys (keys that preprocessing could not eliminate) prior to commit f09816a0. There are now serious doubts about this row compare workaround. Testing has shown that a scan with a row compare key and an array key could still read the same leaf page twice (without the scan's direction changing), which isn't supposed to be possible following the SAOP enhancements added by Postgres 17 commit 5bf748b8. Also, we still allowed a required row compare key to be used with forcenonrequired mode when its header key happened to be beyond the pstate.ikey set by _bt_set_startikey, which was complicated and brittle. The underlying problem was that row compares had inconsistent rules around how scans start (which keys can be used for initial positioning purposes) and how scans end (which keys can set continuescan=false). Quals with redundant keys that could not be eliminated by preprocessing also had that same quality to them prior to today's bugfix f09816a0. It now seems prudent to bring row compare keys in line with the new charter for required keys, by making the start and end rules symmetric. This commit fixes two points of disagreement between _bt_first and _bt_check_rowcompare. Firstly, _bt_check_rowcompare was capable of ending the scan at the point where it needed to compare an ISNULL-marked row compare member that came immediately after a required row compare member. _bt_first now has symmetric handling for NULL row compares. Secondly, _bt_first had its own ideas about which keys were safe to use for initial positioning purposes. It could use fewer or more keys than _bt_check_rowcompare. _bt_first now uses the same requiredness markings as _bt_check_rowcompare for this. Now that _bt_first and _bt_check_rowcompare agree on how to start and end scans, we can get rid of the forcenonrequired special case, without any risk of infinite cycling. This approach also makes row compare keys behave more like regular scalar keys, particularly within _bt_first. Fixing these inconsistencies necessitates dealing with a related issue with the way that row compares were marked required by preprocessing: we didn't mark any lower-order row members required following 2016 bugfix commit a298a1e0. That approach was over broad. The bug in question was actually an oversight in how _bt_check_rowcompare dealt with tuple NULL values that failed to satisfy a scan key marked required in the opposite scan direction (it was a bug in 2011 commits 6980f817 and 882368e8, not a bug in 2006 commit 3a0a16cb). Go back to marking row compare members as required using the original 2006 rules, and fix the 2016 bug in a more principled way: by limiting use of the "set continuescan=false with a key required in the opposite scan direction upon encountering a NULL tuple value" optimization to the first/most significant row member key. While it isn't safe to use an implied IS NOT NULL qualifier to end the scan when it comes from a required lower-order row compare member key, it _is_ generally safe for such a required member key to end the scan -- provided the key is marked required in the _current_ scan direction. This fixes what was arguably an oversight in either commit 5f4d98d4 or commit 8a510275. It is a direct follow-up to today's commit f09816a0. Author: Peter Geoghegan Reviewed-By: Heikki Linnakangas Discussion: https://postgr.es/m/CAH2-Wz=pcijHL_mA0_TJ5LiTB28QpQ0cGtT-ccFV=KzuunNDDQ@mail.gmail.com Backpatch-through: 18 --- src/backend/access/nbtree/nbtpreprocesskeys.c | 19 +- src/backend/access/nbtree/nbtsearch.c | 245 ++++++++++-------- src/backend/access/nbtree/nbtutils.c | 157 ++++++----- src/test/regress/expected/btree_index.out | 101 ++++++-- src/test/regress/sql/btree_index.sql | 65 ++++- 5 files changed, 385 insertions(+), 202 deletions(-) diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index 36813a96fff57..8eb4bb8410ea2 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -792,12 +792,25 @@ _bt_mark_scankey_required(ScanKey skey) if (skey->sk_flags & SK_ROW_HEADER) { ScanKey subkey = (ScanKey) DatumGetPointer(skey->sk_argument); + AttrNumber attno = skey->sk_attno; /* First subkey should be same column/operator as the header */ - Assert(subkey->sk_flags & SK_ROW_MEMBER); - Assert(subkey->sk_attno == skey->sk_attno); + Assert(subkey->sk_attno == attno); Assert(subkey->sk_strategy == skey->sk_strategy); - subkey->sk_flags |= addflags; + + for (;;) + { + Assert(subkey->sk_flags & SK_ROW_MEMBER); + if (subkey->sk_attno != attno) + break; /* non-adjacent key, so not required */ + if (subkey->sk_strategy != skey->sk_strategy) + break; /* wrong direction, so not required */ + subkey->sk_flags |= addflags; + if (subkey->sk_flags & SK_ROW_END) + break; + subkey++; + attno++; + } } } diff --git a/src/backend/access/nbtree/nbtsearch.c b/src/backend/access/nbtree/nbtsearch.c index 9846ef6db53ae..4af1ff1e9e5e3 100644 --- a/src/backend/access/nbtree/nbtsearch.c +++ b/src/backend/access/nbtree/nbtsearch.c @@ -1016,8 +1016,8 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) * traversing a lot of null entries at the start of the scan. * * In this loop, row-comparison keys are treated the same as keys on their - * first (leftmost) columns. We'll add on lower-order columns of the row - * comparison below, if possible. + * first (leftmost) columns. We'll add all lower-order columns of the row + * comparison that were marked required during preprocessing below. * * _bt_advance_array_keys needs to know exactly how we'll reposition the * scan (should it opt to schedule another primitive index scan). It is @@ -1261,16 +1261,18 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) Assert(keysz <= INDEX_MAX_KEYS); for (int i = 0; i < keysz; i++) { - ScanKey cur = startKeys[i]; + ScanKey bkey = startKeys[i]; - Assert(cur->sk_attno == i + 1); + Assert(bkey->sk_attno == i + 1); - if (cur->sk_flags & SK_ROW_HEADER) + if (bkey->sk_flags & SK_ROW_HEADER) { /* * Row comparison header: look to the first row member instead */ - ScanKey subkey = (ScanKey) DatumGetPointer(cur->sk_argument); + ScanKey subkey = (ScanKey) DatumGetPointer(bkey->sk_argument); + bool loosen_strat = false, + tighten_strat = false; /* * Cannot be a NULL in the first row member: _bt_preprocess_keys @@ -1278,9 +1280,18 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) * ever getting this far */ Assert(subkey->sk_flags & SK_ROW_MEMBER); - Assert(subkey->sk_attno == cur->sk_attno); + Assert(subkey->sk_attno == bkey->sk_attno); Assert(!(subkey->sk_flags & SK_ISNULL)); + /* + * This is either a > or >= key (during backwards scans it is + * either < or <=) that was marked required during preprocessing. + * Later so->keyData[] keys can't have been marked required, so + * our row compare header key must be the final startKeys[] entry. + */ + Assert(subkey->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD)); + Assert(i == keysz - 1); + /* * The member scankeys are already in insertion format (ie, they * have sk_func = 3-way-comparison function) @@ -1288,112 +1299,141 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) memcpy(inskey.scankeys + i, subkey, sizeof(ScanKeyData)); /* - * If the row comparison is the last positioning key we accepted, - * try to add additional keys from the lower-order row members. - * (If we accepted independent conditions on additional index - * columns, we use those instead --- doesn't seem worth trying to - * determine which is more restrictive.) Note that this is OK - * even if the row comparison is of ">" or "<" type, because the - * condition applied to all but the last row member is effectively - * ">=" or "<=", and so the extra keys don't break the positioning - * scheme. But, by the same token, if we aren't able to use all - * the row members, then the part of the row comparison that we - * did use has to be treated as just a ">=" or "<=" condition, and - * so we'd better adjust strat_total accordingly. + * Now look to later row compare members. + * + * If there's an "index attribute gap" between two row compare + * members, the second member won't have been marked required, and + * so can't be used as a starting boundary key here. The part of + * the row comparison that we do still use has to be treated as a + * ">=" or "<=" condition. For example, a qual "(a, c) > (1, 42)" + * with an omitted intervening index attribute "b" will use an + * insertion scan key "a >= 1". Even the first "a = 1" tuple on + * the leaf level might satisfy the row compare qual. + * + * We're able to use a _more_ restrictive strategy when we reach a + * NULL row compare member, since they're always unsatisfiable. + * For example, a qual "(a, b, c) >= (1, NULL, 77)" will use an + * insertion scan key "a > 1". All tuples where "a = 1" cannot + * possibly satisfy the row compare qual, so this is safe. */ - if (i == keysz - 1) + Assert(!(subkey->sk_flags & SK_ROW_END)); + for (;;) { - bool used_all_subkeys = false; + subkey++; + Assert(subkey->sk_flags & SK_ROW_MEMBER); - Assert(!(subkey->sk_flags & SK_ROW_END)); - for (;;) + if (subkey->sk_flags & SK_ISNULL) { - subkey++; - Assert(subkey->sk_flags & SK_ROW_MEMBER); - if (subkey->sk_attno != keysz + 1) - break; /* out-of-sequence, can't use it */ - if (subkey->sk_strategy != cur->sk_strategy) - break; /* wrong direction, can't use it */ - if (subkey->sk_flags & SK_ISNULL) - break; /* can't use null keys */ - Assert(keysz < INDEX_MAX_KEYS); - memcpy(inskey.scankeys + keysz, subkey, - sizeof(ScanKeyData)); - keysz++; - if (subkey->sk_flags & SK_ROW_END) - { - used_all_subkeys = true; - break; - } + /* + * NULL member key, can only use earlier keys. + * + * We deliberately avoid checking if this key is marked + * required. All earlier keys are required, and this key + * is unsatisfiable either way, so we can't miss anything. + */ + tighten_strat = true; + break; } - if (!used_all_subkeys) + + if (!(subkey->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD))) { - switch (strat_total) - { - case BTLessStrategyNumber: - strat_total = BTLessEqualStrategyNumber; - break; - case BTGreaterStrategyNumber: - strat_total = BTGreaterEqualStrategyNumber; - break; - } + /* nonrequired member key, can only use earlier keys */ + loosen_strat = true; + break; } - break; /* done with outer loop */ + + Assert(subkey->sk_attno == keysz + 1); + Assert(subkey->sk_strategy == bkey->sk_strategy); + Assert(keysz < INDEX_MAX_KEYS); + + memcpy(inskey.scankeys + keysz, subkey, + sizeof(ScanKeyData)); + keysz++; + if (subkey->sk_flags & SK_ROW_END) + break; } - } - else - { - /* - * Ordinary comparison key. Transform the search-style scan key - * to an insertion scan key by replacing the sk_func with the - * appropriate btree comparison function. - * - * If scankey operator is not a cross-type comparison, we can use - * the cached comparison function; otherwise gotta look it up in - * the catalogs. (That can't lead to infinite recursion, since no - * indexscan initiated by syscache lookup will use cross-data-type - * operators.) - * - * We support the convention that sk_subtype == InvalidOid means - * the opclass input type; this is a hack to simplify life for - * ScanKeyInit(). - */ - if (cur->sk_subtype == rel->rd_opcintype[i] || - cur->sk_subtype == InvalidOid) + Assert(!(loosen_strat && tighten_strat)); + if (loosen_strat) { - FmgrInfo *procinfo; - - procinfo = index_getprocinfo(rel, cur->sk_attno, BTORDER_PROC); - ScanKeyEntryInitializeWithInfo(inskey.scankeys + i, - cur->sk_flags, - cur->sk_attno, - InvalidStrategy, - cur->sk_subtype, - cur->sk_collation, - procinfo, - cur->sk_argument); + /* Use less restrictive strategy (and fewer member keys) */ + switch (strat_total) + { + case BTLessStrategyNumber: + strat_total = BTLessEqualStrategyNumber; + break; + case BTGreaterStrategyNumber: + strat_total = BTGreaterEqualStrategyNumber; + break; + } } - else + if (tighten_strat) { - RegProcedure cmp_proc; - - cmp_proc = get_opfamily_proc(rel->rd_opfamily[i], - rel->rd_opcintype[i], - cur->sk_subtype, - BTORDER_PROC); - if (!RegProcedureIsValid(cmp_proc)) - elog(ERROR, "missing support function %d(%u,%u) for attribute %d of index \"%s\"", - BTORDER_PROC, rel->rd_opcintype[i], cur->sk_subtype, - cur->sk_attno, RelationGetRelationName(rel)); - ScanKeyEntryInitialize(inskey.scankeys + i, - cur->sk_flags, - cur->sk_attno, - InvalidStrategy, - cur->sk_subtype, - cur->sk_collation, - cmp_proc, - cur->sk_argument); + /* Use more restrictive strategy (and fewer member keys) */ + switch (strat_total) + { + case BTLessEqualStrategyNumber: + strat_total = BTLessStrategyNumber; + break; + case BTGreaterEqualStrategyNumber: + strat_total = BTGreaterStrategyNumber; + break; + } } + + /* done adding to inskey (row comparison keys always come last) */ + break; + } + + /* + * Ordinary comparison key/search-style key. + * + * Transform the search-style scan key to an insertion scan key by + * replacing the sk_func with the appropriate btree 3-way-comparison + * function. + * + * If scankey operator is not a cross-type comparison, we can use the + * cached comparison function; otherwise gotta look it up in the + * catalogs. (That can't lead to infinite recursion, since no + * indexscan initiated by syscache lookup will use cross-data-type + * operators.) + * + * We support the convention that sk_subtype == InvalidOid means the + * opclass input type; this hack simplifies life for ScanKeyInit(). + */ + if (bkey->sk_subtype == rel->rd_opcintype[i] || + bkey->sk_subtype == InvalidOid) + { + FmgrInfo *procinfo; + + procinfo = index_getprocinfo(rel, bkey->sk_attno, BTORDER_PROC); + ScanKeyEntryInitializeWithInfo(inskey.scankeys + i, + bkey->sk_flags, + bkey->sk_attno, + InvalidStrategy, + bkey->sk_subtype, + bkey->sk_collation, + procinfo, + bkey->sk_argument); + } + else + { + RegProcedure cmp_proc; + + cmp_proc = get_opfamily_proc(rel->rd_opfamily[i], + rel->rd_opcintype[i], + bkey->sk_subtype, BTORDER_PROC); + if (!RegProcedureIsValid(cmp_proc)) + elog(ERROR, "missing support function %d(%u,%u) for attribute %d of index \"%s\"", + BTORDER_PROC, rel->rd_opcintype[i], bkey->sk_subtype, + bkey->sk_attno, RelationGetRelationName(rel)); + ScanKeyEntryInitialize(inskey.scankeys + i, + bkey->sk_flags, + bkey->sk_attno, + InvalidStrategy, + bkey->sk_subtype, + bkey->sk_collation, + cmp_proc, + bkey->sk_argument); } } @@ -1482,6 +1522,8 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) if (!BufferIsValid(so->currPos.buf)) { + Assert(!so->needPrimScan); + /* * We only get here if the index is completely empty. Lock relation * because nothing finer to lock exists. Without a buffer lock, it's @@ -1500,7 +1542,6 @@ _bt_first(IndexScanDesc scan, ScanDirection dir) if (!BufferIsValid(so->currPos.buf)) { - Assert(!so->needPrimScan); _bt_parallel_done(scan); return false; } diff --git a/src/backend/access/nbtree/nbtutils.c b/src/backend/access/nbtree/nbtutils.c index eb6dbfda33c6e..9aed207995f52 100644 --- a/src/backend/access/nbtree/nbtutils.c +++ b/src/backend/access/nbtree/nbtutils.c @@ -2442,32 +2442,8 @@ _bt_set_startikey(IndexScanDesc scan, BTReadPageState *pstate) } if (key->sk_flags & SK_ROW_HEADER) { - /* - * RowCompare inequality. - * - * Only the first subkey from a RowCompare can ever be marked - * required (that happens when the row header is marked required). - * There is no simple, general way for us to transitively deduce - * whether or not every tuple on the page satisfies a RowCompare - * key based only on firsttup and lasttup -- so we just give up. - */ - if (!start_past_saop_eq && !so->skipScan) - break; /* unsafe to go further */ - - /* - * We have to be even more careful with RowCompares that come - * after an array: we assume it's unsafe to even bypass the array. - * Calling _bt_start_array_keys to recover the scan's arrays - * following use of forcenonrequired mode isn't compatible with - * _bt_check_rowcompare's continuescan=false behavior with NULL - * row compare members. _bt_advance_array_keys must not make a - * decision on the basis of a key not being satisfied in the - * opposite-to-scan direction until the scan reaches a leaf page - * where the same key begins to be satisfied in scan direction. - * The _bt_first !used_all_subkeys behavior makes this limitation - * hard to work around some other way. - */ - return; /* completely unsafe to set pstate.startikey */ + /* RowCompare inequalities currently aren't supported */ + break; /* "unsafe" */ } if (key->sk_strategy != BTEqualStrategyNumber) { @@ -2964,6 +2940,31 @@ _bt_check_rowcompare(ScanKey skey, IndexTuple tuple, int tupnatts, Assert(subkey->sk_flags & SK_ROW_MEMBER); + /* When a NULL row member is compared, the row never matches */ + if (subkey->sk_flags & SK_ISNULL) + { + /* + * Unlike the simple-scankey case, this isn't a disallowed case + * (except when it's the first row element that has the NULL arg). + * But it can never match. If all the earlier row comparison + * columns are required for the scan direction, we can stop the + * scan, because there can't be another tuple that will succeed. + */ + Assert(subkey != (ScanKey) DatumGetPointer(skey->sk_argument)); + subkey--; + if (forcenonrequired) + { + /* treating scan's keys as non-required */ + } + else if ((subkey->sk_flags & SK_BT_REQFWD) && + ScanDirectionIsForward(dir)) + *continuescan = false; + else if ((subkey->sk_flags & SK_BT_REQBKWD) && + ScanDirectionIsBackward(dir)) + *continuescan = false; + return false; + } + if (subkey->sk_attno > tupnatts) { /* @@ -2973,11 +2974,7 @@ _bt_check_rowcompare(ScanKey skey, IndexTuple tuple, int tupnatts, * attribute passes the qual. */ Assert(BTreeTupleIsPivot(tuple)); - cmpresult = 0; - if (subkey->sk_flags & SK_ROW_END) - break; - subkey++; - continue; + return true; } datum = index_getattr(tuple, @@ -2987,6 +2984,8 @@ _bt_check_rowcompare(ScanKey skey, IndexTuple tuple, int tupnatts, if (isNull) { + int reqflags; + if (forcenonrequired) { /* treating scan's keys as non-required */ @@ -2997,15 +2996,35 @@ _bt_check_rowcompare(ScanKey skey, IndexTuple tuple, int tupnatts, * Since NULLs are sorted before non-NULLs, we know we have * reached the lower limit of the range of values for this * index attr. On a backward scan, we can stop if this qual - * is one of the "must match" subset. We can stop regardless - * of whether the qual is > or <, so long as it's required, - * because it's not possible for any future tuples to pass. On - * a forward scan, however, we must keep going, because we may - * have initially positioned to the start of the index. - * (_bt_advance_array_keys also relies on this behavior during - * forward scans.) + * is one of the "must match" subset. However, on a forwards + * scan, we must keep going, because we may have initially + * positioned to the start of the index. + * + * All required NULLS FIRST > row members can use NULL tuple + * values to end backwards scans, just like with other values. + * A qual "WHERE (a, b, c) > (9, 42, 'foo')" can terminate a + * backwards scan upon reaching the index's rightmost "a = 9" + * tuple whose "b" column contains a NULL (if not sooner). + * Since "b" is NULLS FIRST, we can treat its NULLs as "<" 42. + */ + reqflags = SK_BT_REQBKWD; + + /* + * When a most significant required NULLS FIRST < row compare + * member sees NULL tuple values during a backwards scan, it + * signals the end of matches for the whole row compare/scan. + * A qual "WHERE (a, b, c) < (9, 42, 'foo')" will terminate a + * backwards scan upon reaching the rightmost tuple whose "a" + * column has a NULL. The "a" NULL value is "<" 9, and yet + * our < row compare will still end the scan. (This isn't + * safe with later/lower-order row members. Notice that it + * can only happen with an "a" NULL some time after the scan + * completely stops needing to use its "b" and "c" members.) */ - if ((subkey->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD)) && + if (subkey == (ScanKey) DatumGetPointer(skey->sk_argument)) + reqflags |= SK_BT_REQFWD; /* safe, first row member */ + + if ((subkey->sk_flags & reqflags) && ScanDirectionIsBackward(dir)) *continuescan = false; } @@ -3015,15 +3034,35 @@ _bt_check_rowcompare(ScanKey skey, IndexTuple tuple, int tupnatts, * Since NULLs are sorted after non-NULLs, we know we have * reached the upper limit of the range of values for this * index attr. On a forward scan, we can stop if this qual is - * one of the "must match" subset. We can stop regardless of - * whether the qual is > or <, so long as it's required, - * because it's not possible for any future tuples to pass. On - * a backward scan, however, we must keep going, because we - * may have initially positioned to the end of the index. - * (_bt_advance_array_keys also relies on this behavior during - * backward scans.) + * one of the "must match" subset. However, on a backward + * scan, we must keep going, because we may have initially + * positioned to the end of the index. + * + * All required NULLS LAST < row members can use NULL tuple + * values to end forwards scans, just like with other values. + * A qual "WHERE (a, b, c) < (9, 42, 'foo')" can terminate a + * forwards scan upon reaching the index's leftmost "a = 9" + * tuple whose "b" column contains a NULL (if not sooner). + * Since "b" is NULLS LAST, we can treat its NULLs as ">" 42. + */ + reqflags = SK_BT_REQFWD; + + /* + * When a most significant required NULLS LAST > row compare + * member sees NULL tuple values during a forwards scan, it + * signals the end of matches for the whole row compare/scan. + * A qual "WHERE (a, b, c) > (9, 42, 'foo')" will terminate a + * forwards scan upon reaching the leftmost tuple whose "a" + * column has a NULL. The "a" NULL value is ">" 9, and yet + * our > row compare will end the scan. (This isn't safe with + * later/lower-order row members. Notice that it can only + * happen with an "a" NULL some time after the scan completely + * stops needing to use its "b" and "c" members.) */ - if ((subkey->sk_flags & (SK_BT_REQFWD | SK_BT_REQBKWD)) && + if (subkey == (ScanKey) DatumGetPointer(skey->sk_argument)) + reqflags |= SK_BT_REQBKWD; /* safe, first row member */ + + if ((subkey->sk_flags & reqflags) && ScanDirectionIsForward(dir)) *continuescan = false; } @@ -3034,30 +3073,6 @@ _bt_check_rowcompare(ScanKey skey, IndexTuple tuple, int tupnatts, return false; } - if (subkey->sk_flags & SK_ISNULL) - { - /* - * Unlike the simple-scankey case, this isn't a disallowed case - * (except when it's the first row element that has the NULL arg). - * But it can never match. If all the earlier row comparison - * columns are required for the scan direction, we can stop the - * scan, because there can't be another tuple that will succeed. - */ - Assert(subkey != (ScanKey) DatumGetPointer(skey->sk_argument)); - subkey--; - if (forcenonrequired) - { - /* treating scan's keys as non-required */ - } - else if ((subkey->sk_flags & SK_BT_REQFWD) && - ScanDirectionIsForward(dir)) - *continuescan = false; - else if ((subkey->sk_flags & SK_BT_REQBKWD) && - ScanDirectionIsBackward(dir)) - *continuescan = false; - return false; - } - /* Perform the test --- three-way comparison not bool operator */ cmpresult = DatumGetInt32(FunctionCall2Coll(&subkey->sk_func, subkey->sk_collation, diff --git a/src/test/regress/expected/btree_index.out b/src/test/regress/expected/btree_index.out index bfb1a286ea4ad..21dc9b5783a7c 100644 --- a/src/test/regress/expected/btree_index.out +++ b/src/test/regress/expected/btree_index.out @@ -195,54 +195,123 @@ ORDER BY proname DESC, proargtypes DESC, pronamespace DESC LIMIT 1; (1 row) -- --- Add coverage for RowCompare quals whose rhs row has a NULL that ends scan +-- Forwards scan RowCompare qual whose row arg has a NULL that affects our +-- initial positioning strategy -- explain (costs off) SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) < ('abs', NULL) + WHERE (proname, proargtypes) >= ('abs', NULL) AND proname <= 'abs' ORDER BY proname, proargtypes, pronamespace; - QUERY PLAN -------------------------------------------------------------------------------------------------------------- + QUERY PLAN +--------------------------------------------------------------------------------------------------------------- Index Only Scan using pg_proc_proname_args_nsp_index on pg_proc - Index Cond: ((ROW(proname, proargtypes) < ROW('abs'::name, NULL::oidvector)) AND (proname = 'abs'::name)) + Index Cond: ((ROW(proname, proargtypes) >= ROW('abs'::name, NULL::oidvector)) AND (proname <= 'abs'::name)) (2 rows) SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) < ('abs', NULL) + WHERE (proname, proargtypes) >= ('abs', NULL) AND proname <= 'abs' ORDER BY proname, proargtypes, pronamespace; proname | proargtypes | pronamespace ---------+-------------+-------------- (0 rows) -- --- Add coverage for backwards scan RowCompare quals whose rhs row has a NULL --- that ends scan +-- Forwards scan RowCompare quals whose row arg has a NULL that ends scan -- explain (costs off) SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) > ('abs', NULL) + WHERE proname >= 'abs' AND (proname, proargtypes) < ('abs', NULL) +ORDER BY proname, proargtypes, pronamespace; + QUERY PLAN +-------------------------------------------------------------------------------------------------------------- + Index Only Scan using pg_proc_proname_args_nsp_index on pg_proc + Index Cond: ((proname >= 'abs'::name) AND (ROW(proname, proargtypes) < ROW('abs'::name, NULL::oidvector))) +(2 rows) + +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname >= 'abs' AND (proname, proargtypes) < ('abs', NULL) +ORDER BY proname, proargtypes, pronamespace; + proname | proargtypes | pronamespace +---------+-------------+-------------- +(0 rows) + +-- +-- Backwards scan RowCompare qual whose row arg has a NULL that affects our +-- initial positioning strategy +-- +explain (costs off) +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname >= 'abs' AND (proname, proargtypes) <= ('abs', NULL) +ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; + QUERY PLAN +--------------------------------------------------------------------------------------------------------------- + Index Only Scan Backward using pg_proc_proname_args_nsp_index on pg_proc + Index Cond: ((proname >= 'abs'::name) AND (ROW(proname, proargtypes) <= ROW('abs'::name, NULL::oidvector))) +(2 rows) + +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname >= 'abs' AND (proname, proargtypes) <= ('abs', NULL) +ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; + proname | proargtypes | pronamespace +---------+-------------+-------------- +(0 rows) + +-- +-- Backwards scan RowCompare qual whose row arg has a NULL that ends scan +-- +explain (costs off) +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE (proname, proargtypes) > ('abs', NULL) AND proname <= 'abs' ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; - QUERY PLAN -------------------------------------------------------------------------------------------------------------- + QUERY PLAN +-------------------------------------------------------------------------------------------------------------- Index Only Scan Backward using pg_proc_proname_args_nsp_index on pg_proc - Index Cond: ((ROW(proname, proargtypes) > ROW('abs'::name, NULL::oidvector)) AND (proname = 'abs'::name)) + Index Cond: ((ROW(proname, proargtypes) > ROW('abs'::name, NULL::oidvector)) AND (proname <= 'abs'::name)) (2 rows) SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) > ('abs', NULL) + WHERE (proname, proargtypes) > ('abs', NULL) AND proname <= 'abs' ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; proname | proargtypes | pronamespace ---------+-------------+-------------- (0 rows) +-- Makes B-Tree preprocessing deal with unmarking redundant keys that were +-- initially marked required (test case relies on current row compare +-- preprocessing limitations) +explain (costs off) +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname = 'zzzzzz' AND (proname, proargtypes) > ('abs', NULL) + AND pronamespace IN (1, 2, 3) AND proargtypes IN ('26 23', '5077') +ORDER BY proname, proargtypes, pronamespace; + QUERY PLAN +-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- + Index Only Scan using pg_proc_proname_args_nsp_index on pg_proc + Index Cond: ((ROW(proname, proargtypes) > ROW('abs'::name, NULL::oidvector)) AND (proname = 'zzzzzz'::name) AND (proargtypes = ANY ('{"26 23",5077}'::oidvector[])) AND (pronamespace = ANY ('{1,2,3}'::oid[]))) +(2 rows) + +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname = 'zzzzzz' AND (proname, proargtypes) > ('abs', NULL) + AND pronamespace IN (1, 2, 3) AND proargtypes IN ('26 23', '5077') +ORDER BY proname, proargtypes, pronamespace; + proname | proargtypes | pronamespace +---------+-------------+-------------- +(0 rows) + -- --- Add coverage for recheck of > key following array advancement on previous --- (left sibling) page that used a high key whose attribute value corresponding --- to the > key was -inf (due to being truncated when the high key was created). +-- Performs a recheck of > key following array advancement on previous (left +-- sibling) page that used a high key whose attribute value corresponding to +-- the > key was -inf (due to being truncated when the high key was created). -- -- XXX This relies on the assumption that tenk1_thous_tenthous has a truncated -- high key "(183, -inf)" on the first page that we'll scan. The test will only diff --git a/src/test/regress/sql/btree_index.sql b/src/test/regress/sql/btree_index.sql index 68c61dbc7d19c..6aaaa386abcec 100644 --- a/src/test/regress/sql/btree_index.sql +++ b/src/test/regress/sql/btree_index.sql @@ -143,38 +143,83 @@ SELECT proname, proargtypes, pronamespace ORDER BY proname DESC, proargtypes DESC, pronamespace DESC LIMIT 1; -- --- Add coverage for RowCompare quals whose rhs row has a NULL that ends scan +-- Forwards scan RowCompare qual whose row arg has a NULL that affects our +-- initial positioning strategy -- explain (costs off) SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) < ('abs', NULL) + WHERE (proname, proargtypes) >= ('abs', NULL) AND proname <= 'abs' ORDER BY proname, proargtypes, pronamespace; SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) < ('abs', NULL) + WHERE (proname, proargtypes) >= ('abs', NULL) AND proname <= 'abs' ORDER BY proname, proargtypes, pronamespace; -- --- Add coverage for backwards scan RowCompare quals whose rhs row has a NULL --- that ends scan +-- Forwards scan RowCompare quals whose row arg has a NULL that ends scan -- explain (costs off) SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) > ('abs', NULL) + WHERE proname >= 'abs' AND (proname, proargtypes) < ('abs', NULL) +ORDER BY proname, proargtypes, pronamespace; + +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname >= 'abs' AND (proname, proargtypes) < ('abs', NULL) +ORDER BY proname, proargtypes, pronamespace; + +-- +-- Backwards scan RowCompare qual whose row arg has a NULL that affects our +-- initial positioning strategy +-- +explain (costs off) +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname >= 'abs' AND (proname, proargtypes) <= ('abs', NULL) ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; SELECT proname, proargtypes, pronamespace FROM pg_proc - WHERE proname = 'abs' AND (proname, proargtypes) > ('abs', NULL) + WHERE proname >= 'abs' AND (proname, proargtypes) <= ('abs', NULL) ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; -- --- Add coverage for recheck of > key following array advancement on previous --- (left sibling) page that used a high key whose attribute value corresponding --- to the > key was -inf (due to being truncated when the high key was created). +-- Backwards scan RowCompare qual whose row arg has a NULL that ends scan +-- +explain (costs off) +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE (proname, proargtypes) > ('abs', NULL) AND proname <= 'abs' +ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; + +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE (proname, proargtypes) > ('abs', NULL) AND proname <= 'abs' +ORDER BY proname DESC, proargtypes DESC, pronamespace DESC; + +-- Makes B-Tree preprocessing deal with unmarking redundant keys that were +-- initially marked required (test case relies on current row compare +-- preprocessing limitations) +explain (costs off) +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname = 'zzzzzz' AND (proname, proargtypes) > ('abs', NULL) + AND pronamespace IN (1, 2, 3) AND proargtypes IN ('26 23', '5077') +ORDER BY proname, proargtypes, pronamespace; + +SELECT proname, proargtypes, pronamespace + FROM pg_proc + WHERE proname = 'zzzzzz' AND (proname, proargtypes) > ('abs', NULL) + AND pronamespace IN (1, 2, 3) AND proargtypes IN ('26 23', '5077') +ORDER BY proname, proargtypes, pronamespace; + +-- +-- Performs a recheck of > key following array advancement on previous (left +-- sibling) page that used a high key whose attribute value corresponding to +-- the > key was -inf (due to being truncated when the high key was created). -- -- XXX This relies on the assumption that tenk1_thous_tenthous has a truncated -- high key "(183, -inf)" on the first page that we'll scan. The test will only From e16c9cd331314fcf3f7a8d9e3e20aaee448162e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Wed, 2 Jul 2025 17:02:27 +0200 Subject: [PATCH 022/457] Fix error message for ALTER CONSTRAINT ... NOT VALID MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Trying to alter a constraint so that it becomes NOT VALID results in an error that assumes the constraint is a foreign key. This is potentially wrong, so give a more generic error message. While at it, give CREATE CONSTRAINT TRIGGER a better error message as well. Co-authored-by: jian he Co-authored-by: Fujii Masao Co-authored-by: Álvaro Herrera Co-authored-by: Amul Sul Discussion: https://postgr.es/m/CACJufxHSp2puxP=q8ZtUGL1F+heapnzqFBZy5ZNGUjUgwjBqTQ@mail.gmail.com --- src/backend/parser/gram.y | 6 ++++++ src/test/regress/expected/constraints.out | 5 +++++ src/test/regress/expected/foreign_key.out | 2 +- src/test/regress/sql/constraints.sql | 3 +++ 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 50f53159d5819..03c80eaaf22a7 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -2668,6 +2668,12 @@ alter_table_cmd: c->alterDeferrability = true; if ($4 & CAS_NO_INHERIT) c->alterInheritability = true; + /* handle unsupported case with specific error message */ + if ($4 & CAS_NOT_VALID) + ereport(ERROR, + errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("constraints cannot be altered to be NOT VALID"), + parser_errposition(@4)); processCASbits($4, @4, "FOREIGN KEY", &c->deferrable, &c->initdeferred, diff --git a/src/test/regress/expected/constraints.out b/src/test/regress/expected/constraints.out index b5592617d9755..ccea883cffd65 100644 --- a/src/test/regress/expected/constraints.out +++ b/src/test/regress/expected/constraints.out @@ -748,6 +748,11 @@ ALTER TABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key ENFORCED; ERROR: cannot alter enforceability of constraint "unique_tbl_i_key" of relation "unique_tbl" ALTER TABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key NOT ENFORCED; ERROR: cannot alter enforceability of constraint "unique_tbl_i_key" of relation "unique_tbl" +-- can't make an existing constraint NOT VALID +ALTER TABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key NOT VALID; +ERROR: constraints cannot be altered to be NOT VALID +LINE 1: ...ABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key NOT VALID; + ^ DROP TABLE unique_tbl; -- -- EXCLUDE constraints diff --git a/src/test/regress/expected/foreign_key.out b/src/test/regress/expected/foreign_key.out index 6a8f395934520..f9bd252444f53 100644 --- a/src/test/regress/expected/foreign_key.out +++ b/src/test/regress/expected/foreign_key.out @@ -1359,7 +1359,7 @@ LINE 1: ...e ALTER CONSTRAINT fktable_fk_fkey NOT DEFERRABLE INITIALLY ... ALTER TABLE fktable ALTER CONSTRAINT fktable_fk_fkey NO INHERIT; ERROR: constraint "fktable_fk_fkey" of relation "fktable" is not a not-null constraint ALTER TABLE fktable ALTER CONSTRAINT fktable_fk_fkey NOT VALID; -ERROR: FOREIGN KEY constraints cannot be marked NOT VALID +ERROR: constraints cannot be altered to be NOT VALID LINE 1: ...ER TABLE fktable ALTER CONSTRAINT fktable_fk_fkey NOT VALID; ^ ALTER TABLE fktable ALTER CONSTRAINT fktable_fk_fkey ENFORCED NOT ENFORCED; diff --git a/src/test/regress/sql/constraints.sql b/src/test/regress/sql/constraints.sql index 12668f0e0ce0f..7487723ab8437 100644 --- a/src/test/regress/sql/constraints.sql +++ b/src/test/regress/sql/constraints.sql @@ -537,6 +537,9 @@ CREATE TABLE UNIQUE_NOTEN_TBL(i int UNIQUE NOT ENFORCED); ALTER TABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key ENFORCED; ALTER TABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key NOT ENFORCED; +-- can't make an existing constraint NOT VALID +ALTER TABLE unique_tbl ALTER CONSTRAINT unique_tbl_i_key NOT VALID; + DROP TABLE unique_tbl; -- From 4938737d5452fc4975f985a0a6faf43a360ef021 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Wed, 2 Jul 2025 12:36:34 -0400 Subject: [PATCH 023/457] Update obsolete row compare preprocessing comments. Restore nbtree preprocessing comments describing how we mark nbtree row compare members required to how they were prior to 2016 bugfix commit a298a1e0. Oversight in commit bd3f59fd, which made nbtree preprocessing revert to the original 2006 rules, but neglected to revert these comments. Backpatch-through: 18 --- src/backend/access/nbtree/nbtpreprocesskeys.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index 8eb4bb8410ea2..21c519cd108ed 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -752,9 +752,12 @@ _bt_fix_scankey_strategy(ScanKey skey, int16 *indoption) * * Depending on the operator type, the key may be required for both scan * directions or just one. Also, if the key is a row comparison header, - * we have to mark its first subsidiary ScanKey as required. (Subsequent - * subsidiary ScanKeys are normally for lower-order columns, and thus - * cannot be required, since they're after the first non-equality scankey.) + * we have to mark the appropriate subsidiary ScanKeys as required. In such + * cases, the first subsidiary key is required, but subsequent ones are + * required only as long as they correspond to successive index columns and + * match the leading column as to sort direction. Otherwise the row + * comparison ordering is different from the index ordering and so we can't + * stop the scan on the basis of those lower-order columns. * * Note: when we set required-key flag bits in a subsidiary scankey, we are * scribbling on a data structure belonging to the index AM's caller, not on From 5d0800000ed5e4fb5ed010bb4b93f966e08b9fb3 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 2 Jul 2025 15:47:59 -0400 Subject: [PATCH 024/457] Correctly copy the target host identification in PQcancelCreate. PQcancelCreate failed to copy struct pg_conn_host's "type" field, instead leaving it zero (a/k/a CHT_HOST_NAME). This seemingly has no great ill effects if it should have been CHT_UNIX_SOCKET instead, but if it should have been CHT_HOST_ADDRESS then a null-pointer dereference will occur when the cancelConn is used. Bug: #18974 Reported-by: Maxim Boguk Author: Sergei Kornilov Reviewed-by: Tom Lane Discussion: https://postgr.es/m/18974-575f02b2168b36b3@postgresql.org Backpatch-through: 17 --- src/interfaces/libpq/fe-cancel.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/interfaces/libpq/fe-cancel.c b/src/interfaces/libpq/fe-cancel.c index cd3102346bfa7..65517c5703bca 100644 --- a/src/interfaces/libpq/fe-cancel.c +++ b/src/interfaces/libpq/fe-cancel.c @@ -137,6 +137,7 @@ PQcancelCreate(PGconn *conn) goto oom_error; originalHost = conn->connhost[conn->whichhost]; + cancelConn->connhost[0].type = originalHost.type; if (originalHost.host) { cancelConn->connhost[0].host = strdup(originalHost.host); From f0151e2a4ef13949b4402b9d7ee0f45209cc0126 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Thu, 3 Jul 2025 16:03:19 +0900 Subject: [PATCH 025/457] doc: Remove incorrect note about wal_status in pg_replication_slots. The documentation previously stated that the wal_status column is NULL if restart_lsn is NULL in the pg_replication_slots view. This is incorrect, and wal_status can be "lost" even when restart_lsn is NULL. This commit removes the incorrect description. Back-patched to all supported versions. Author: Fujii Masao Reviewed-by: Nisha Moond Discussion: https://postgr.es/m/c9d23cdc-b5dd-455a-8ee9-f1f24d701d89@oss.nttdata.com Backpatch-through: 13 --- doc/src/sgml/system-views.sgml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/doc/src/sgml/system-views.sgml b/doc/src/sgml/system-views.sgml index 986ae1f543dbd..82825db03bb2f 100644 --- a/doc/src/sgml/system-views.sgml +++ b/doc/src/sgml/system-views.sgml @@ -2832,8 +2832,7 @@ SELECT * FROM pg_locks pl LEFT JOIN pg_prepared_xacts ppx The last two states are seen only when is - non-negative. If restart_lsn is NULL, this - field is null. + non-negative. From 8af310b331940ff5efd19402a3f8ee5521eb821a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Thu, 3 Jul 2025 11:46:12 +0200 Subject: [PATCH 026/457] Prevent creation of duplicate not-null constraints for domains MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This was previously harmless, but now that we create pg_constraint rows for those, duplicates are not welcome anymore. Backpatch to 18. Co-authored-by: jian he Co-authored-by: Álvaro Herrera Discussion: https://postgr.es/m/CACJufxFSC0mcQ82bSk58sO-WJY4P-o4N6RD2M0D=DD_u_6EzdQ@mail.gmail.com --- src/backend/commands/typecmds.c | 14 +++++++++++--- src/test/regress/expected/domain.out | 5 +++++ src/test/regress/sql/domain.sql | 3 +++ 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/backend/commands/typecmds.c b/src/backend/commands/typecmds.c index 45ae7472ab5ad..26d985193aea4 100644 --- a/src/backend/commands/typecmds.c +++ b/src/backend/commands/typecmds.c @@ -939,11 +939,19 @@ DefineDomain(ParseState *pstate, CreateDomainStmt *stmt) break; case CONSTR_NOTNULL: - if (nullDefined && !typNotNull) + if (nullDefined) + { + if (!typNotNull) + ereport(ERROR, + errcode(ERRCODE_SYNTAX_ERROR), + errmsg("conflicting NULL/NOT NULL constraints"), + parser_errposition(pstate, constr->location)); + ereport(ERROR, - errcode(ERRCODE_SYNTAX_ERROR), - errmsg("conflicting NULL/NOT NULL constraints"), + errcode(ERRCODE_INVALID_OBJECT_DEFINITION), + errmsg("redundant NOT NULL constraint definition"), parser_errposition(pstate, constr->location)); + } if (constr->is_no_inherit) ereport(ERROR, errcode(ERRCODE_INVALID_OBJECT_DEFINITION), diff --git a/src/test/regress/expected/domain.out b/src/test/regress/expected/domain.out index ba6f05eeb7df6..b5ea707df3103 100644 --- a/src/test/regress/expected/domain.out +++ b/src/test/regress/expected/domain.out @@ -1019,6 +1019,11 @@ insert into domain_test values (1, 2); -- should fail alter table domain_test add column c str_domain; ERROR: domain str_domain does not allow null values +-- disallow duplicated not-null constraints +create domain int_domain1 as int constraint nn1 not null constraint nn2 not null; +ERROR: redundant NOT NULL constraint definition +LINE 1: ...domain int_domain1 as int constraint nn1 not null constraint... + ^ create domain str_domain2 as text check (value <> 'foo') default 'foo'; -- should fail alter table domain_test add column d str_domain2; diff --git a/src/test/regress/sql/domain.sql b/src/test/regress/sql/domain.sql index b752a63ab5f69..b8f5a6397121a 100644 --- a/src/test/regress/sql/domain.sql +++ b/src/test/regress/sql/domain.sql @@ -602,6 +602,9 @@ insert into domain_test values (1, 2); -- should fail alter table domain_test add column c str_domain; +-- disallow duplicated not-null constraints +create domain int_domain1 as int constraint nn1 not null constraint nn2 not null; + create domain str_domain2 as text check (value <> 'foo') default 'foo'; -- should fail From 0cd7fcaa857400fff28e31f0538d7824814c6863 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Thu, 3 Jul 2025 23:07:23 +0900 Subject: [PATCH 027/457] doc: Update outdated descriptions of wal_status in pg_replication_slots. The documentation for pg_replication_slots previously mentioned only max_slot_wal_keep_size as a condition under which the wal_status column could show unreserved or lost. However, since commit be87200, replication slots can also be invalidated due to horizon or wal_level, and since commit ac0e33136ab, idle_replication_slot_timeout can also trigger this state. This commit updates the description of the wal_status column to reflect that max_slot_wal_keep_size is not the only cause of the lost state. Back-patched to v16, where the additional invalidation cases were introduced. Author: Fujii Masao Reviewed-by: Hayato Kuroda Reviewed-by: Nisha Moond Discussion: https://postgr.es/m/78b34e84-2195-4f28-a151-5d204a382fdd@oss.nttdata.com Backpatch-through: 16 --- doc/src/sgml/system-views.sgml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/doc/src/sgml/system-views.sgml b/doc/src/sgml/system-views.sgml index 82825db03bb2f..e1ac544ee4079 100644 --- a/doc/src/sgml/system-views.sgml +++ b/doc/src/sgml/system-views.sgml @@ -2819,20 +2819,18 @@ SELECT * FROM pg_locks pl LEFT JOIN pg_prepared_xacts ppx unreserved means that the slot no longer retains the required WAL files and some of them are to be removed at - the next checkpoint. This state can return + the next checkpoint. This typically occurs when + is set to + a non-negative value. This state can return to reserved or extended. - lost means that some required WAL files have - been removed and this slot is no longer usable. + lost means that this slot is no longer usable. - The last two states are seen only when - is - non-negative. From 3d7a96871c71dc0e6d2614eb4a68179bc7e383db Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 3 Jul 2025 13:46:07 -0400 Subject: [PATCH 028/457] Obtain required table lock during cross-table updates, redux. Commits 8319e5cb5 et al missed the fact that ATPostAlterTypeCleanup contains three calls to ATPostAlterTypeParse, and the other two also need protection against passing a relid that we don't yet have lock on. Add similar logic to those code paths, and add some test cases demonstrating the need for it. In v18 and master, the test cases demonstrate that there's a behavioral discrepancy between stored generated columns and virtual generated columns: we disallow changing the expression of a stored column if it's used in any composite-type columns, but not that of a virtual column. Since the expression isn't actually relevant to either sort of composite-type usage, this prohibition seems unnecessary; but changing it is a matter for separate discussion. For now we are just documenting the existing behavior. Reported-by: jian he Author: jian he Reviewed-by: Tom Lane Discussion: CACJufxGKJtGNRRSXfwMW9SqVOPEMdP17BJ7DsBf=tNsv9pWU9g@mail.gmail.com Backpatch-through: 13 --- src/backend/commands/tablecmds.c | 22 +++++++++++++++++++ src/test/regress/expected/alter_table.out | 8 +++++++ .../regress/expected/generated_stored.out | 12 ++++++++++ .../regress/expected/generated_virtual.out | 9 ++++++++ src/test/regress/sql/alter_table.sql | 8 +++++++ src/test/regress/sql/generated_stored.sql | 13 +++++++++++ src/test/regress/sql/generated_virtual.sql | 13 +++++++++++ 7 files changed, 85 insertions(+) diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index b8837f26cb4fd..011bb4acddb64 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -15488,6 +15488,14 @@ ATPostAlterTypeCleanup(List **wqueue, AlteredTableInfo *tab, LOCKMODE lockmode) Oid relid; relid = IndexGetRelation(oldId, false); + + /* + * As above, make sure we have lock on the index's table if it's not + * the same table. + */ + if (relid != tab->relid) + LockRelationOid(relid, AccessExclusiveLock); + ATPostAlterTypeParse(oldId, relid, InvalidOid, (char *) lfirst(def_item), wqueue, lockmode, tab->rewrite); @@ -15504,6 +15512,20 @@ ATPostAlterTypeCleanup(List **wqueue, AlteredTableInfo *tab, LOCKMODE lockmode) Oid relid; relid = StatisticsGetRelation(oldId, false); + + /* + * As above, make sure we have lock on the statistics object's table + * if it's not the same table. However, we take + * ShareUpdateExclusiveLock here, aligning with the lock level used in + * CreateStatistics and RemoveStatisticsById. + * + * CAUTION: this should be done after all cases that grab + * AccessExclusiveLock, else we risk causing deadlock due to needing + * to promote our table lock. + */ + if (relid != tab->relid) + LockRelationOid(relid, ShareUpdateExclusiveLock); + ATPostAlterTypeParse(oldId, relid, InvalidOid, (char *) lfirst(def_item), wqueue, lockmode, tab->rewrite); diff --git a/src/test/regress/expected/alter_table.out b/src/test/regress/expected/alter_table.out index 750efc042d8ee..08984dd98f168 100644 --- a/src/test/regress/expected/alter_table.out +++ b/src/test/regress/expected/alter_table.out @@ -4750,6 +4750,14 @@ create table attbl(a int); create table atref(b attbl check ((b).a is not null)); alter table attbl alter column a type numeric; -- someday this should work ERROR: cannot alter table "attbl" because column "atref.b" uses its row type +alter table atref drop constraint atref_b_check; +create statistics atref_stat on ((b).a is not null) from atref; +alter table attbl alter column a type numeric; -- someday this should work +ERROR: cannot alter table "attbl" because column "atref.b" uses its row type +drop statistics atref_stat; +create index atref_idx on atref (((b).a)); +alter table attbl alter column a type numeric; -- someday this should work +ERROR: cannot alter table "attbl" because column "atref.b" uses its row type drop table attbl, atref; /* End test case for bug #18970 */ -- Test that ALTER TABLE rewrite preserves a clustered index diff --git a/src/test/regress/expected/generated_stored.out b/src/test/regress/expected/generated_stored.out index 16de30ab1910b..adac2cedfb2a3 100644 --- a/src/test/regress/expected/generated_stored.out +++ b/src/test/regress/expected/generated_stored.out @@ -1313,6 +1313,18 @@ CREATE TABLE gtest31_1 (a int, b text GENERATED ALWAYS AS ('hello') STORED, c te CREATE TABLE gtest31_2 (x int, y gtest31_1); ALTER TABLE gtest31_1 ALTER COLUMN b TYPE varchar; -- fails ERROR: cannot alter table "gtest31_1" because column "gtest31_2.y" uses its row type +-- bug #18970: these cases are unsupported, but make sure they fail cleanly +ALTER TABLE gtest31_2 ADD CONSTRAINT cc CHECK ((y).b IS NOT NULL); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello1'); +ERROR: cannot alter table "gtest31_1" because column "gtest31_2.y" uses its row type +ALTER TABLE gtest31_2 DROP CONSTRAINT cc; +CREATE STATISTICS gtest31_2_stat ON ((y).b is not null) FROM gtest31_2; +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello2'); +ERROR: cannot alter table "gtest31_1" because column "gtest31_2.y" uses its row type +DROP STATISTICS gtest31_2_stat; +CREATE INDEX gtest31_2_y_idx ON gtest31_2(((y).b)); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello3'); +ERROR: cannot alter table "gtest31_1" because column "gtest31_2.y" uses its row type DROP TABLE gtest31_1, gtest31_2; -- Check it for a partitioned table, too CREATE TABLE gtest31_1 (a int, b text GENERATED ALWAYS AS ('hello') STORED, c text) PARTITION BY LIST (a); diff --git a/src/test/regress/expected/generated_virtual.out b/src/test/regress/expected/generated_virtual.out index df704b5166fa3..3b40e15a95ad0 100644 --- a/src/test/regress/expected/generated_virtual.out +++ b/src/test/regress/expected/generated_virtual.out @@ -1283,6 +1283,15 @@ CREATE TABLE gtest31_1 (a int, b text GENERATED ALWAYS AS ('hello') VIRTUAL, c t CREATE TABLE gtest31_2 (x int, y gtest31_1); ALTER TABLE gtest31_1 ALTER COLUMN b TYPE varchar; -- fails ERROR: cannot alter table "gtest31_1" because column "gtest31_2.y" uses its row type +-- bug #18970 +ALTER TABLE gtest31_2 ADD CONSTRAINT cc CHECK ((y).b IS NOT NULL); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello1'); +ALTER TABLE gtest31_2 DROP CONSTRAINT cc; +CREATE STATISTICS gtest31_2_stat ON ((y).b is not null) FROM gtest31_2; +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello2'); +DROP STATISTICS gtest31_2_stat; +CREATE INDEX gtest31_2_y_idx ON gtest31_2(((y).b)); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello3'); DROP TABLE gtest31_1, gtest31_2; -- Check it for a partitioned table, too CREATE TABLE gtest31_1 (a int, b text GENERATED ALWAYS AS ('hello') VIRTUAL, c text) PARTITION BY LIST (a); diff --git a/src/test/regress/sql/alter_table.sql b/src/test/regress/sql/alter_table.sql index 41cff198e183c..fc6e36d0e7882 100644 --- a/src/test/regress/sql/alter_table.sql +++ b/src/test/regress/sql/alter_table.sql @@ -3074,6 +3074,14 @@ drop table attbl, atref; create table attbl(a int); create table atref(b attbl check ((b).a is not null)); alter table attbl alter column a type numeric; -- someday this should work +alter table atref drop constraint atref_b_check; + +create statistics atref_stat on ((b).a is not null) from atref; +alter table attbl alter column a type numeric; -- someday this should work +drop statistics atref_stat; + +create index atref_idx on atref (((b).a)); +alter table attbl alter column a type numeric; -- someday this should work drop table attbl, atref; /* End test case for bug #18970 */ diff --git a/src/test/regress/sql/generated_stored.sql b/src/test/regress/sql/generated_stored.sql index 4ec155f2da989..f56fde8d4e5d0 100644 --- a/src/test/regress/sql/generated_stored.sql +++ b/src/test/regress/sql/generated_stored.sql @@ -595,6 +595,19 @@ ALTER TABLE gtest30_1 ALTER COLUMN b DROP EXPRESSION; -- error CREATE TABLE gtest31_1 (a int, b text GENERATED ALWAYS AS ('hello') STORED, c text); CREATE TABLE gtest31_2 (x int, y gtest31_1); ALTER TABLE gtest31_1 ALTER COLUMN b TYPE varchar; -- fails + +-- bug #18970: these cases are unsupported, but make sure they fail cleanly +ALTER TABLE gtest31_2 ADD CONSTRAINT cc CHECK ((y).b IS NOT NULL); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello1'); +ALTER TABLE gtest31_2 DROP CONSTRAINT cc; + +CREATE STATISTICS gtest31_2_stat ON ((y).b is not null) FROM gtest31_2; +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello2'); +DROP STATISTICS gtest31_2_stat; + +CREATE INDEX gtest31_2_y_idx ON gtest31_2(((y).b)); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello3'); + DROP TABLE gtest31_1, gtest31_2; -- Check it for a partitioned table, too diff --git a/src/test/regress/sql/generated_virtual.sql b/src/test/regress/sql/generated_virtual.sql index 6fa986515b9e3..e2b31853e0132 100644 --- a/src/test/regress/sql/generated_virtual.sql +++ b/src/test/regress/sql/generated_virtual.sql @@ -646,6 +646,19 @@ ALTER TABLE gtest30_1 ALTER COLUMN b DROP EXPRESSION; -- error CREATE TABLE gtest31_1 (a int, b text GENERATED ALWAYS AS ('hello') VIRTUAL, c text); CREATE TABLE gtest31_2 (x int, y gtest31_1); ALTER TABLE gtest31_1 ALTER COLUMN b TYPE varchar; -- fails + +-- bug #18970 +ALTER TABLE gtest31_2 ADD CONSTRAINT cc CHECK ((y).b IS NOT NULL); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello1'); +ALTER TABLE gtest31_2 DROP CONSTRAINT cc; + +CREATE STATISTICS gtest31_2_stat ON ((y).b is not null) FROM gtest31_2; +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello2'); +DROP STATISTICS gtest31_2_stat; + +CREATE INDEX gtest31_2_y_idx ON gtest31_2(((y).b)); +ALTER TABLE gtest31_1 ALTER COLUMN b SET EXPRESSION AS ('hello3'); + DROP TABLE gtest31_1, gtest31_2; -- Check it for a partitioned table, too From 29a4b63c6bc83a7c21e3ccd0f484eee9a91be7d8 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 4 Jul 2025 15:10:17 +0900 Subject: [PATCH 029/457] Disable commit timestamps during bootstrap Attempting to use commit timestamps during bootstrapping leads to an assertion failure, that can be reached for example with an initdb -c that enables track_commit_timestamp. It makes little sense to register a commit timestamp for a BootstrapTransactionId, so let's disable the activation of the module in this case. This problem has been independently reported once by each author of this commit. Each author has proposed basically the same patch, relying on IsBootstrapProcessingMode() to skip the use of commit_ts during bootstrap. The test addition is a suggestion by me, and is applied down to v16. Author: Hayato Kuroda Author: Andy Fan Reviewed-by: Bertrand Drouvot Reviewed-by: Fujii Masao Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/OSCPR01MB14966FF9E4C4145F37B937E52F5102@OSCPR01MB14966.jpnprd01.prod.outlook.com Discussion: https://postgr.es/m/87plejmnpy.fsf@163.com Backpatch-through: 13 --- src/backend/access/transam/commit_ts.c | 7 +++++++ src/test/modules/commit_ts/t/001_base.pl | 3 +-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/backend/access/transam/commit_ts.c b/src/backend/access/transam/commit_ts.c index 113fae1437ad8..225ff7ca9f2d3 100644 --- a/src/backend/access/transam/commit_ts.c +++ b/src/backend/access/transam/commit_ts.c @@ -707,6 +707,13 @@ ActivateCommitTs(void) TransactionId xid; int64 pageno; + /* + * During bootstrap, we should not register commit timestamps so skip the + * activation in this case. + */ + if (IsBootstrapProcessingMode()) + return; + /* If we've done this already, there's nothing to do */ LWLockAcquire(CommitTsLock, LW_EXCLUSIVE); if (commitTsShared->commitTsActive) diff --git a/src/test/modules/commit_ts/t/001_base.pl b/src/test/modules/commit_ts/t/001_base.pl index 1953b18f6b3c3..50e79ce640937 100644 --- a/src/test/modules/commit_ts/t/001_base.pl +++ b/src/test/modules/commit_ts/t/001_base.pl @@ -11,8 +11,7 @@ use PostgreSQL::Test::Cluster; my $node = PostgreSQL::Test::Cluster->new('foxtrot'); -$node->init; -$node->append_conf('postgresql.conf', 'track_commit_timestamp = on'); +$node->init(extra => [ '-c', "track_commit_timestamp=on" ]); $node->start; # Create a table, compare "now()" to the commit TS of its xmin From 07da2985d6bf685c4417b3738babbcac109a4a44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Fri, 4 Jul 2025 18:05:43 +0200 Subject: [PATCH 030/457] pg_upgrade: check for inconsistencies in not-null constraints w/inheritance With tables defined like this, CREATE TABLE ip (id int PRIMARY KEY); CREATE TABLE ic (id int) INHERITS (ip); ALTER TABLE ic ALTER id DROP NOT NULL; pg_upgrade fails during the schema restore phase due to this error: ERROR: column "id" in child table must be marked NOT NULL This can only be fixed by marking the child column as NOT NULL before the upgrade, which could take an arbitrary amount of time (because ic's data must be scanned). Have pg_upgrade's check mode warn if that condition is found, so that users know what to adjust before running the upgrade for real. Author: Ali Akbar Reviewed-by: Justin Pryzby Backpatch-through: 13 Discussion: https://postgr.es/m/CACQjQLoMsE+1pyLe98pi0KvPG2jQQ94LWJ+PTiLgVRK4B=i_jg@mail.gmail.com --- src/bin/pg_upgrade/check.c | 96 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 96 insertions(+) diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c index 81865cd3e4859..ba4b9ff3b148c 100644 --- a/src/bin/pg_upgrade/check.c +++ b/src/bin/pg_upgrade/check.c @@ -23,6 +23,7 @@ static void check_for_isn_and_int8_passing_mismatch(ClusterInfo *cluster); static void check_for_user_defined_postfix_ops(ClusterInfo *cluster); static void check_for_incompatible_polymorphics(ClusterInfo *cluster); static void check_for_tables_with_oids(ClusterInfo *cluster); +static void check_for_not_null_inheritance(ClusterInfo *cluster); static void check_for_pg_role_prefix(ClusterInfo *cluster); static void check_for_new_tablespace_dir(void); static void check_for_user_defined_encoding_conversions(ClusterInfo *cluster); @@ -671,6 +672,14 @@ check_and_dump_old_cluster(void) if (GET_MAJOR_VERSION(old_cluster.major_version) <= 1100) check_for_tables_with_oids(&old_cluster); + /* + * Pre-PG 18 allowed child tables to omit not-null constraints that their + * parents columns have, but schema restore fails for them. Verify there + * are none, iff applicable. + */ + if (GET_MAJOR_VERSION(old_cluster.major_version) <= 1800) + check_for_not_null_inheritance(&old_cluster); + /* * Pre-PG 10 allowed tables with 'unknown' type columns and non WAL logged * hash indexes @@ -1623,6 +1632,93 @@ check_for_tables_with_oids(ClusterInfo *cluster) check_ok(); } +/* + * Callback function for processing results of query for + * check_for_not_null_inheritance. + */ +static void +process_inconsistent_notnull(DbInfo *dbinfo, PGresult *res, void *arg) +{ + UpgradeTaskReport *report = (UpgradeTaskReport *) arg; + int ntups = PQntuples(res); + int i_nspname = PQfnumber(res, "nspname"); + int i_relname = PQfnumber(res, "relname"); + int i_attname = PQfnumber(res, "attname"); + + AssertVariableIsOfType(&process_inconsistent_notnull, + UpgradeTaskProcessCB); + + if (ntups == 0) + return; + + if (report->file == NULL && + (report->file = fopen_priv(report->path, "w")) == NULL) + pg_fatal("could not open file \"%s\": %m", report->path); + + fprintf(report->file, "In database: %s\n", dbinfo->db_name); + + for (int rowno = 0; rowno < ntups; rowno++) + { + fprintf(report->file, " %s.%s.%s\n", + PQgetvalue(res, rowno, i_nspname), + PQgetvalue(res, rowno, i_relname), + PQgetvalue(res, rowno, i_attname)); + } +} + +/* + * check_for_not_null_inheritance() + * + * An attempt to create child tables lacking not-null constraints that are + * present in their parents errors out. This can no longer occur since 18, + * but previously there were various ways for that to happen. Check that + * the cluster to be upgraded doesn't have any of those problems. + */ +static void +check_for_not_null_inheritance(ClusterInfo *cluster) +{ + UpgradeTaskReport report; + UpgradeTask *task; + const char *query; + + prep_status("Checking for not-null constraint inconsistencies"); + + report.file = NULL; + snprintf(report.path, sizeof(report.path), "%s/%s", + log_opts.basedir, + "not_null_inconsistent_columns.txt"); + + query = "SELECT cc.relnamespace::pg_catalog.regnamespace AS nspname, " + " cc.relname, ac.attname " + "FROM pg_catalog.pg_inherits i, pg_catalog.pg_attribute ac, " + " pg_catalog.pg_attribute ap, pg_catalog.pg_class cc " + "WHERE cc.oid = ac.attrelid AND i.inhrelid = ac.attrelid " + " AND i.inhparent = ap.attrelid AND ac.attname = ap.attname " + " AND ap.attnum > 0 and ap.attnotnull AND NOT ac.attnotnull"; + + task = upgrade_task_create(); + upgrade_task_add_step(task, query, + process_inconsistent_notnull, + true, &report); + upgrade_task_run(task, cluster); + upgrade_task_free(task); + + if (report.file) + { + fclose(report.file); + pg_log(PG_REPORT, "fatal"); + pg_fatal("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", report.path); + } + else + check_ok(); +} + /* * check_for_pg_role_prefix() From 5aba3e637d3d874f7bf00318c828249a964c4c3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Fri, 4 Jul 2025 18:31:24 +0200 Subject: [PATCH 031/457] pg_upgrade: Add missing newline in error message Minor oversight in 347758b12063 --- src/bin/pg_upgrade/check.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c index ba4b9ff3b148c..5eac4073fc3ff 100644 --- a/src/bin/pg_upgrade/check.c +++ b/src/bin/pg_upgrade/check.c @@ -420,7 +420,7 @@ process_data_type_check(DbInfo *dbinfo, PGresult *res, void *arg) if (!state->result) { pg_log(PG_REPORT, "failed check: %s", _(state->check->status)); - appendPQExpBuffer(*state->report, "\n%s\n%s %s\n", + appendPQExpBuffer(*state->report, "\n%s\n%s\n %s\n", _(state->check->report_text), _("A list of the problem columns is in the file:"), output_path); From 1e007722fa86ff397b0f3d165c89237ab3b05967 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Fri, 4 Jul 2025 21:30:05 +0200 Subject: [PATCH 032/457] Fix new pg_upgrade query not to rely on regnamespace That was invented in 9.5, and pg_upgrade claims to support back to 9.0. But we don't need that with a simple query change, tested by Tom Lane. Discussion: https://postgr.es/m/202507041645.afjl5rssvrgu@alvherre.pgsql --- src/bin/pg_upgrade/check.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/bin/pg_upgrade/check.c b/src/bin/pg_upgrade/check.c index 5eac4073fc3ff..bb6d588a2ec6d 100644 --- a/src/bin/pg_upgrade/check.c +++ b/src/bin/pg_upgrade/check.c @@ -1688,12 +1688,13 @@ check_for_not_null_inheritance(ClusterInfo *cluster) log_opts.basedir, "not_null_inconsistent_columns.txt"); - query = "SELECT cc.relnamespace::pg_catalog.regnamespace AS nspname, " - " cc.relname, ac.attname " + query = "SELECT nspname, cc.relname, ac.attname " "FROM pg_catalog.pg_inherits i, pg_catalog.pg_attribute ac, " - " pg_catalog.pg_attribute ap, pg_catalog.pg_class cc " + " pg_catalog.pg_attribute ap, pg_catalog.pg_class cc, " + " pg_catalog.pg_namespace nc " "WHERE cc.oid = ac.attrelid AND i.inhrelid = ac.attrelid " " AND i.inhparent = ap.attrelid AND ac.attname = ap.attname " + " AND cc.relnamespace = nc.oid " " AND ap.attnum > 0 and ap.attnotnull AND NOT ac.attnotnull"; task = upgrade_task_create(); From 8d1071e7da30dc46502c24a18cf61c285f6d6c1b Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 7 Jul 2025 08:54:30 +0900 Subject: [PATCH 033/457] Fix incompatibility with libxml2 >= 2.14 libxml2 has deprecated the members of xmlBuffer, and it is recommended to access them with dedicated routines. We have only one case in the tree where this shows an impact: xml2/xpath.c where "content" was getting directly accessed. The rest of the code looked fine, checking the PostgreSQL code with libxml2 close to the top of its "2.14" branch. xmlBufferContent() exists since year 2000 based on a check of the upstream libxml2 tree, so let's switch to it. Like 400928b83bd2, backpatch all the way down as this can have an impact on all the branches already released once newer versions of libxml2 get more popular. Reported-by: Walid Ibrahim Reviewed-by: Tom Lane Discussion: https://postgr.es/m/aGdSdcR4QTjEHX6s@paquier.xyz Backpatch-through: 13 --- contrib/xml2/xpath.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/xml2/xpath.c b/contrib/xml2/xpath.c index 23d3f332dbaa7..2820874cb5e97 100644 --- a/contrib/xml2/xpath.c +++ b/contrib/xml2/xpath.c @@ -176,7 +176,7 @@ pgxmlNodeSetToText(xmlNodeSetPtr nodeset, xmlBufferWriteCHAR(buf, toptagname); xmlBufferWriteChar(buf, ">"); } - result = xmlStrdup(buf->content); + result = xmlStrdup(xmlBufferContent(buf)); xmlBufferFree(buf); return result; } From 440c5ee202000a30c4e7b27cd952edb2ab16cea8 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 7 Jul 2025 14:33:20 -0400 Subject: [PATCH 034/457] Restore the ability to run pl/pgsql expression queries in parallel. pl/pgsql's notion of an "expression" is very broad, encompassing any SQL SELECT query that returns a single column and no more than one row. So there are cases, for example evaluation of an aggregate function, where the query involves significant work and it'd be useful to run it with parallel workers. This used to be possible, but commits 3eea7a0c9 et al unintentionally disabled it. The simplest fix is to make exec_eval_expr() pass maxtuples = 0 rather than 2 to exec_run_select(). This avoids the new rule that we will never use parallelism when a nonzero "count" limit is passed to ExecutorRun(). (Note that the pre-3eea7a0c9 behavior was indeed unsafe, so reverting that rule is not in the cards.) The reason for passing 2 before was that exec_eval_expr() will throw an error if it gets more than one returned row, so we figured that as soon as we have two rows we know that will happen and we might as well stop running the query. That choice was cost-free when it was made; but disabling parallelism is far from cost-free, so now passing 2 amounts to optimizing a failure case at the expense of useful cases. An expression query that can return more than one row is certainly broken. People might now need to wait a bit longer to discover such breakage; but hopefully few will use enormously expensive cases as their first test of new pl/pgsql logic. Author: Dipesh Dhameliya Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CABgZEgdfbnq9t6xXJnmXbChNTcWFjeM_6nuig41tm327gYi2ig@mail.gmail.com Backpatch-through: 13 --- src/pl/plpgsql/src/pl_exec.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/pl/plpgsql/src/pl_exec.c b/src/pl/plpgsql/src/pl_exec.c index bb99781c56e39..b9acc790dc664 100644 --- a/src/pl/plpgsql/src/pl_exec.c +++ b/src/pl/plpgsql/src/pl_exec.c @@ -5703,7 +5703,7 @@ exec_eval_expr(PLpgSQL_execstate *estate, /* * Else do it the hard way via exec_run_select */ - rc = exec_run_select(estate, expr, 2, NULL); + rc = exec_run_select(estate, expr, 0, NULL); if (rc != SPI_OK_SELECT) ereport(ERROR, (errcode(ERRCODE_WRONG_OBJECT_TYPE), @@ -5757,6 +5757,10 @@ exec_eval_expr(PLpgSQL_execstate *estate, /* ---------- * exec_run_select Execute a select query + * + * Note: passing maxtuples different from 0 ("return all tuples") is + * deprecated because it will prevent parallel execution of the query. + * However, we retain the parameter in case we need it someday. * ---------- */ static int From 3a797c24914af421cf9d4d09bc90024884841dfa Mon Sep 17 00:00:00 2001 From: Jacob Champion Date: Mon, 7 Jul 2025 11:58:04 -0700 Subject: [PATCH 035/457] oauth: Fix kqueue detection on OpenBSD In b0635bfda, I added an early header check to the Meson OAuth support, which was intended to duplicate the later checks for HAVE_SYS_[EVENT|EPOLL]_H. However, I implemented the new test via check_header() -- which tries to compile -- rather than has_header(), which just looks for the file's existence. The distinction matters on OpenBSD, where can't be compiled without including prerequisite headers, so -Dlibcurl=enabled failed on that platform. Switch to has_header() to fix this. Note that reviewers expressed concern about the difference between our Autoconf feature tests (which compile headers) and our Meson feature tests (which do not). I'm not opposed to aligning the two, but I want to avoid making bigger changes as part of this fix. Reviewed-by: Peter Eisentraut Reviewed-by: Tom Lane Discussion: https://postgr.es/m/flat/CAOYmi+kdR218ke2zu74oTJvzYJcqV1MN5=mGAPqZQuc79HMSVA@mail.gmail.com Backpatch-through: 18 --- meson.build | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/meson.build b/meson.build index 6ffe7b4727556..692b8b8de0be9 100644 --- a/meson.build +++ b/meson.build @@ -943,10 +943,10 @@ if not libcurlopt.disabled() # libcurl and one of either epoll or kqueue. oauth_flow_supported = ( libcurl.found() - and (cc.check_header('sys/event.h', required: false, - args: test_c_args, include_directories: postgres_inc) - or cc.check_header('sys/epoll.h', required: false, - args: test_c_args, include_directories: postgres_inc)) + and (cc.has_header('sys/event.h', + args: test_c_args, include_directories: postgres_inc) + or cc.has_header('sys/epoll.h', + args: test_c_args, include_directories: postgres_inc)) ) if oauth_flow_supported From 9a5334c0b4e9d7269ee9b5e9d08925c8a1e1e01e Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Mon, 7 Jul 2025 21:03:16 -0400 Subject: [PATCH 036/457] aio: Combine io_uring memory mappings, if supported By default io_uring creates a shared memory mapping for each io_uring instance, leading to a large number of memory mappings. Unfortunately a large number of memory mappings slows things down, backend exit is particularly affected. To address that, newer kernels (6.5) support using user-provided memory for the memory. By putting the relevant memory into shared memory we don't need any additional mappings. On a system with a new enough kernel and liburing, there is no discernible overhead when doing a pgbench -S -C anymore. Reported-by: MARK CALLAGHAN Reviewed-by: "Burd, Greg" Reviewed-by: Jim Nasby Discussion: https://postgr.es/m/CAFbpF8OA44_UG+RYJcWH9WjF7E3GA6gka3gvH6nsrSnEe9H0NA@mail.gmail.com Backpatch-through: 18 --- configure | 17 ++ configure.ac | 7 + meson.build | 6 + src/backend/storage/aio/method_io_uring.c | 210 +++++++++++++++++++++- src/include/pg_config.h.in | 3 + src/tools/pgindent/typedefs.list | 1 + 6 files changed, 238 insertions(+), 6 deletions(-) diff --git a/configure b/configure index 3d3d3db97a456..96bba2f3f06b7 100755 --- a/configure +++ b/configure @@ -13309,6 +13309,23 @@ fi fi +if test "$with_liburing" = yes; then + _LIBS="$LIBS" + LIBS="$LIBURING_LIBS $LIBS" + for ac_func in io_uring_queue_init_mem +do : + ac_fn_c_check_func "$LINENO" "io_uring_queue_init_mem" "ac_cv_func_io_uring_queue_init_mem" +if test "x$ac_cv_func_io_uring_queue_init_mem" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_IO_URING_QUEUE_INIT_MEM 1 +_ACEOF + +fi +done + + LIBS="$_LIBS" +fi + if test "$with_lz4" = yes ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LZ4_compress_default in -llz4" >&5 $as_echo_n "checking for LZ4_compress_default in -llz4... " >&6; } diff --git a/configure.ac b/configure.ac index 4b8335dc6138e..14f485a453f41 100644 --- a/configure.ac +++ b/configure.ac @@ -1420,6 +1420,13 @@ if test "$with_libxslt" = yes ; then AC_CHECK_LIB(xslt, xsltCleanupGlobals, [], [AC_MSG_ERROR([library 'xslt' is required for XSLT support])]) fi +if test "$with_liburing" = yes; then + _LIBS="$LIBS" + LIBS="$LIBURING_LIBS $LIBS" + AC_CHECK_FUNCS([io_uring_queue_init_mem]) + LIBS="$_LIBS" +fi + if test "$with_lz4" = yes ; then AC_CHECK_LIB(lz4, LZ4_compress_default, [], [AC_MSG_ERROR([library 'lz4' is required for LZ4 support])]) fi diff --git a/meson.build b/meson.build index 692b8b8de0be9..38a9b9bfaca36 100644 --- a/meson.build +++ b/meson.build @@ -990,6 +990,12 @@ liburingopt = get_option('liburing') liburing = dependency('liburing', required: liburingopt) if liburing.found() cdata.set('USE_LIBURING', 1) + + if cc.has_function('io_uring_queue_init_mem', + dependencies: liburing, args: test_c_args) + cdata.set('HAVE_LIBURING_QUEUE_INIT_MEM', 1) + endif + endif diff --git a/src/backend/storage/aio/method_io_uring.c b/src/backend/storage/aio/method_io_uring.c index b78048328e113..0a8c054162f06 100644 --- a/src/backend/storage/aio/method_io_uring.c +++ b/src/backend/storage/aio/method_io_uring.c @@ -29,6 +29,9 @@ #ifdef IOMETHOD_IO_URING_ENABLED +#include +#include + #include #include "miscadmin.h" @@ -94,12 +97,32 @@ PgAioUringContext struct io_uring io_uring_ring; } PgAioUringContext; +/* + * Information about the capabilities that io_uring has. + * + * Depending on liburing and kernel version different features are + * supported. At least for the kernel a kernel version check does not suffice + * as various vendors do backport features to older kernels :(. + */ +typedef struct PgAioUringCaps +{ + bool checked; + /* -1 if io_uring_queue_init_mem() is unsupported */ + int mem_init_size; +} PgAioUringCaps; + + /* PgAioUringContexts for all backends */ static PgAioUringContext *pgaio_uring_contexts; /* the current backend's context */ static PgAioUringContext *pgaio_my_uring_context; +static PgAioUringCaps pgaio_uring_caps = +{ + .checked = false, + .mem_init_size = -1, +}; static uint32 pgaio_uring_procs(void) @@ -111,16 +134,145 @@ pgaio_uring_procs(void) return MaxBackends + NUM_AUXILIARY_PROCS - MAX_IO_WORKERS; } -static Size +/* + * Initializes pgaio_uring_caps, unless that's already done. + */ +static void +pgaio_uring_check_capabilities(void) +{ + if (pgaio_uring_caps.checked) + return; + + /* + * By default io_uring creates a shared memory mapping for each io_uring + * instance, leading to a large number of memory mappings. Unfortunately a + * large number of memory mappings slows things down, backend exit is + * particularly affected. To address that, newer kernels (6.5) support + * using user-provided memory for the memory, by putting the relevant + * memory into shared memory we don't need any additional mappings. + * + * To know whether this is supported, we unfortunately need to probe the + * kernel by trying to create a ring with userspace-provided memory. This + * 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) + { + struct io_uring test_ring; + size_t ring_size; + void *ring_ptr; + struct io_uring_params p = {0}; + int ret; + + /* + * Liburing does not yet provide an API to query how much memory a + * ring will need. So we over-estimate it here. As the memory is freed + * just below that's small temporary waste of memory. + * + * 1MB is more than enough for rings within io_max_concurrency's + * range. + */ + ring_size = 1024 * 1024; + + /* + * Hard to believe a system exists where 1MB would not be a multiple + * of the page size. But it's cheap to ensure... + */ + ring_size -= ring_size % sysconf(_SC_PAGESIZE); + + ring_ptr = mmap(NULL, ring_size, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_ANONYMOUS, -1, 0); + if (ring_ptr == MAP_FAILED) + elog(ERROR, + "mmap(%zu) to determine io_uring_queue_init_mem() support failed: %m", + ring_size); + + ret = io_uring_queue_init_mem(io_max_concurrency, &test_ring, &p, ring_ptr, ring_size); + if (ret > 0) + { + pgaio_uring_caps.mem_init_size = ret; + + elog(DEBUG1, + "can use combined memory mapping for io_uring, each ring needs %d bytes", + ret); + + /* clean up the created ring, it was just for a test */ + io_uring_queue_exit(&test_ring); + } + else + { + /* + * There are different reasons for ring creation to fail, but it's + * ok to treat that just as io_uring_queue_init_mem() not being + * supported. We'll report a more detailed error in + * pgaio_uring_shmem_init(). + */ + errno = -ret; + elog(DEBUG1, + "cannot use combined memory mapping for io_uring, ring creation failed: %m"); + + } + + if (munmap(ring_ptr, ring_size) != 0) + elog(ERROR, "munmap() failed: %m"); + } +#else + { + elog(DEBUG1, + "can't use combined memory mapping for io_uring, kernel or liburing too old"); + } +#endif + + pgaio_uring_caps.checked = true; +} + +/* + * Memory for all PgAioUringContext instances + */ +static size_t pgaio_uring_context_shmem_size(void) { return mul_size(pgaio_uring_procs(), sizeof(PgAioUringContext)); } +/* + * Memory for the combined memory used by io_uring instances. Returns 0 if + * that is not supported by kernel/liburing. + */ +static size_t +pgaio_uring_ring_shmem_size(void) +{ + size_t sz = 0; + + if (pgaio_uring_caps.mem_init_size > 0) + { + /* + * Memory for rings needs to be allocated to the page boundary, + * reserve space. Luckily it does not need to be aligned to hugepage + * boundaries, even if huge pages are used. + */ + sz = add_size(sz, sysconf(_SC_PAGESIZE)); + sz = add_size(sz, mul_size(pgaio_uring_procs(), + pgaio_uring_caps.mem_init_size)); + } + + return sz; +} + static size_t pgaio_uring_shmem_size(void) { - return pgaio_uring_context_shmem_size(); + size_t sz; + + /* + * Kernel and liburing support for various features influences how much + * shmem we need, perform the necessary checks. + */ + pgaio_uring_check_capabilities(); + + sz = pgaio_uring_context_shmem_size(); + sz = add_size(sz, pgaio_uring_ring_shmem_size()); + + return sz; } static void @@ -128,13 +280,38 @@ pgaio_uring_shmem_init(bool first_time) { int TotalProcs = pgaio_uring_procs(); bool found; + char *shmem; + size_t ring_mem_remain = 0; + char *ring_mem_next = 0; - pgaio_uring_contexts = (PgAioUringContext *) - ShmemInitStruct("AioUring", pgaio_uring_shmem_size(), &found); - + /* + * We allocate memory for all PgAioUringContext instances and, if + * supported, the memory required for each of the io_uring instances, in + * one ShmemInitStruct(). + */ + shmem = ShmemInitStruct("AioUringContext", pgaio_uring_shmem_size(), &found); if (found) return; + pgaio_uring_contexts = (PgAioUringContext *) shmem; + shmem += pgaio_uring_context_shmem_size(); + + /* if supported, handle memory alignment / sizing for io_uring memory */ + if (pgaio_uring_caps.mem_init_size > 0) + { + ring_mem_remain = pgaio_uring_ring_shmem_size(); + ring_mem_next = (char *) shmem; + + /* align to page boundary, see also pgaio_uring_ring_shmem_size() */ + ring_mem_next = (char *) TYPEALIGN(sysconf(_SC_PAGESIZE), ring_mem_next); + + /* account for alignment */ + ring_mem_remain -= ring_mem_next - shmem; + shmem += ring_mem_next - shmem; + + shmem += ring_mem_remain; + } + for (int contextno = 0; contextno < TotalProcs; contextno++) { PgAioUringContext *context = &pgaio_uring_contexts[contextno]; @@ -158,7 +335,28 @@ pgaio_uring_shmem_init(bool first_time) * be worth using that - also need to evaluate if that causes * noticeable additional contention? */ - ret = io_uring_queue_init(io_max_concurrency, &context->io_uring_ring, 0); + + /* + * If supported (c.f. pgaio_uring_check_capabilities()), create ring + * 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 (pgaio_uring_caps.mem_init_size > 0) + { + struct io_uring_params p = {0}; + + ret = io_uring_queue_init_mem(io_max_concurrency, &context->io_uring_ring, &p, ring_mem_next, ring_mem_remain); + + ring_mem_remain -= ret; + ring_mem_next += ret; + } + else +#endif + { + ret = io_uring_queue_init(io_max_concurrency, &context->io_uring_ring, 0); + } + if (ret < 0) { char *hint = NULL; diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 726a7c1be1f4d..c4dc5d72bdb78 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -229,6 +229,9 @@ /* Define to 1 if you have the global variable 'int timezone'. */ #undef HAVE_INT_TIMEZONE +/* Define to 1 if you have the `io_uring_queue_init_mem' function. */ +#undef HAVE_IO_URING_QUEUE_INIT_MEM + /* Define to 1 if __builtin_constant_p(x) implies "i"(x) acceptance. */ #undef HAVE_I_CONSTRAINT__BUILTIN_CONSTANT_P diff --git a/src/tools/pgindent/typedefs.list b/src/tools/pgindent/typedefs.list index 32d6e718adca0..474bb639289dc 100644 --- a/src/tools/pgindent/typedefs.list +++ b/src/tools/pgindent/typedefs.list @@ -2176,6 +2176,7 @@ PgAioReturn PgAioTargetData PgAioTargetID PgAioTargetInfo +PgAioUringCaps PgAioUringContext PgAioWaitRef PgArchData From 330db576f8c37479d472c3e9b0eb6d47ba1d97f4 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 8 Jul 2025 13:48:52 +0900 Subject: [PATCH 037/457] pg_walsummary: Improve stability of test checking statistics Per buildfarm member culicidae, the query checking for stats reported by the WAL summarizer related to WAL reads is proving to be unstable. Instead of a one-time query, this commit replaces the logic with a polling query checking for the WAL read stats, making the test more reliable on machines that could be slow with the stats reports. This test has been introduced in f4694e0f35b2, so backpatch down to v18. Reported-by: Alexander Lakhin Reviewed-by: Alexander Lakhin Discussion: https://postgr.es/m/f35ba3db-fca7-4693-bc35-6db64488e4b1@gmail.com Backpatch-through: 18 --- src/bin/pg_walsummary/t/002_blocks.pl | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/bin/pg_walsummary/t/002_blocks.pl b/src/bin/pg_walsummary/t/002_blocks.pl index 270332780a453..0f98c7df82e6c 100644 --- a/src/bin/pg_walsummary/t/002_blocks.pl +++ b/src/bin/pg_walsummary/t/002_blocks.pl @@ -47,11 +47,12 @@ ok($result, "WAL summarization caught up after insert"); # The WAL summarizer should have generated some IO statistics. -my $stats_reads = $node1->safe_psql( +$node1->poll_query_until( 'postgres', - qq{SELECT sum(reads) > 0 FROM pg_stat_io - WHERE backend_type = 'walsummarizer' AND object = 'wal'}); -is($stats_reads, 't', "WAL summarizer generates statistics for WAL reads"); + q{SELECT sum(reads) > 0 FROM pg_stat_io + WHERE backend_type = 'walsummarizer' AND object = 'wal'}) + or die + "Timed out while waiting for WAL summarizer to generate statistics for WAL reads"; # Find the highest LSN that is summarized on disk. my $summarized_lsn = $node1->safe_psql('postgres', < Date: Tue, 8 Jul 2025 12:50:19 -0400 Subject: [PATCH 038/457] Fix low-probability memory leak in XMLSERIALIZE(... INDENT). xmltotext_with_options() did not consider the possibility that pg_xml_init() could fail --- most likely due to OOM. If that happened, the already-parsed xmlDoc structure would be leaked. Oversight in commit 483bdb2af. Bug: #18981 Author: Dmitry Kovalenko Reviewed-by: Tom Lane Discussion: https://postgr.es/m/18981-9bc3c80f107ae925@postgresql.org Backpatch-through: 16 --- src/backend/utils/adt/xml.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index a4150bff2eaea..056d811594909 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -663,7 +663,7 @@ xmltotext_with_options(xmltype *data, XmlOptionType xmloption_arg, bool indent) volatile xmlBufferPtr buf = NULL; volatile xmlSaveCtxtPtr ctxt = NULL; ErrorSaveContext escontext = {T_ErrorSaveContext}; - PgXmlErrorContext *xmlerrcxt; + PgXmlErrorContext *volatile xmlerrcxt = NULL; #endif if (xmloption_arg != XMLOPTION_DOCUMENT && !indent) @@ -704,13 +704,18 @@ xmltotext_with_options(xmltype *data, XmlOptionType xmloption_arg, bool indent) return (text *) data; } - /* Otherwise, we gotta spin up some error handling. */ - xmlerrcxt = pg_xml_init(PG_XML_STRICTNESS_ALL); - + /* + * Otherwise, we gotta spin up some error handling. Unlike most other + * routines in this module, we already have a libxml "doc" structure to + * free, so we need to call pg_xml_init() inside the PG_TRY and be + * prepared for it to fail (typically due to palloc OOM). + */ PG_TRY(); { size_t decl_len = 0; + xmlerrcxt = pg_xml_init(PG_XML_STRICTNESS_ALL); + /* The serialized data will go into this buffer. */ buf = xmlBufferCreate(); @@ -838,10 +843,10 @@ xmltotext_with_options(xmltype *data, XmlOptionType xmloption_arg, bool indent) xmlSaveClose(ctxt); if (buf) xmlBufferFree(buf); - if (doc) - xmlFreeDoc(doc); + xmlFreeDoc(doc); - pg_xml_done(xmlerrcxt, true); + if (xmlerrcxt) + pg_xml_done(xmlerrcxt, true); PG_RE_THROW(); } From fc3edb52fbb9b773442ce0a89116f893aaa766af Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 9 Jul 2025 12:46:18 +0900 Subject: [PATCH 039/457] libpq: Remove PQservice() This routine has been introduced as a shortcut to be able to retrieve a service name from an active connection, for psql. Per discussion, and as it is only used by psql, let's remove it to not clutter the libpq API more than necessary. The logic in psql is replaced by lookups of PQconninfoOption for the active connection, instead, updated each time the variables are synced by psql, the prompt shortcut relying on the variable synced. Reported-by: Noah Misch Discussion: https://postgr.es/m/20250706161319.c1.nmisch@google.com Backpatch-through: 18 --- doc/src/sgml/libpq.sgml | 20 ------------------ src/bin/psql/command.c | 7 ++++++- src/bin/psql/common.c | 35 +++++++++++++++++++++++++++++++ src/bin/psql/common.h | 1 + src/bin/psql/prompt.c | 8 +++++-- src/interfaces/libpq/exports.txt | 11 +++++----- src/interfaces/libpq/fe-connect.c | 8 ------- src/interfaces/libpq/libpq-fe.h | 1 - 8 files changed, 53 insertions(+), 38 deletions(-) diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml index 298c4b38ef90a..b2c2cf9eac831 100644 --- a/doc/src/sgml/libpq.sgml +++ b/doc/src/sgml/libpq.sgml @@ -2740,26 +2740,6 @@ char *PQport(const PGconn *conn); - - PQservicePQservice - - - - Returns the service of the active connection. - - -char *PQservice(const PGconn *conn); - - - - - returns NULL if the - conn argument is NULL. - Otherwise, if there was no service provided, it returns an empty string. - - - - PQttyPQtty diff --git a/src/bin/psql/command.c b/src/bin/psql/command.c index 9fcd2db832656..0a55901b14e1e 100644 --- a/src/bin/psql/command.c +++ b/src/bin/psql/command.c @@ -4480,6 +4480,7 @@ SyncVariables(void) { char vbuf[32]; const char *server_version; + char *service_name; /* get stuff from connection */ pset.encoding = PQclientEncoding(pset.db); @@ -4489,12 +4490,16 @@ SyncVariables(void) setFmtEncoding(pset.encoding); SetVariable(pset.vars, "DBNAME", PQdb(pset.db)); - SetVariable(pset.vars, "SERVICE", PQservice(pset.db)); SetVariable(pset.vars, "USER", PQuser(pset.db)); SetVariable(pset.vars, "HOST", PQhost(pset.db)); SetVariable(pset.vars, "PORT", PQport(pset.db)); SetVariable(pset.vars, "ENCODING", pg_encoding_to_char(pset.encoding)); + service_name = get_conninfo_value("service"); + SetVariable(pset.vars, "SERVICE", service_name); + if (service_name) + pg_free(service_name); + /* this bit should match connection_warnings(): */ /* Try to get full text form of version, might include "devel" etc */ server_version = PQparameterStatus(pset.db, "server_version"); diff --git a/src/bin/psql/common.c b/src/bin/psql/common.c index d2c0a49c46c04..cd329ade12b5d 100644 --- a/src/bin/psql/common.c +++ b/src/bin/psql/common.c @@ -2531,6 +2531,41 @@ session_username(void) return PQuser(pset.db); } +/* + * Return the value of option for keyword in the current connection. + * + * The caller is responsible for freeing the result value allocated. + */ +char * +get_conninfo_value(const char *keyword) +{ + PQconninfoOption *opts; + PQconninfoOption *serviceopt = NULL; + char *res = NULL; + + if (pset.db == NULL) + return NULL; + + opts = PQconninfo(pset.db); + if (opts == NULL) + return NULL; + + for (PQconninfoOption *opt = opts; opt->keyword != NULL; ++opt) + { + if (strcmp(opt->keyword, keyword) == 0) + { + serviceopt = opt; + break; + } + } + + /* Take a copy of the value, as it is freed by PQconninfoFree(). */ + if (serviceopt && serviceopt->val != NULL) + res = pg_strdup(serviceopt->val); + PQconninfoFree(opts); + + return res; +} /* expand_tilde * diff --git a/src/bin/psql/common.h b/src/bin/psql/common.h index 7f1a23de1e82d..64762ab981755 100644 --- a/src/bin/psql/common.h +++ b/src/bin/psql/common.h @@ -39,6 +39,7 @@ extern bool SendQuery(const char *query); extern bool is_superuser(void); extern bool standard_strings(void); extern const char *session_username(void); +extern char *get_conninfo_value(const char *keyword); extern void expand_tilde(char **filename); extern void clean_extended_state(void); diff --git a/src/bin/psql/prompt.c b/src/bin/psql/prompt.c index 3aa7d2d06c80e..b08d7328fbfe7 100644 --- a/src/bin/psql/prompt.c +++ b/src/bin/psql/prompt.c @@ -169,8 +169,12 @@ get_prompt(promptStatus_t status, ConditionalStack cstack) break; /* service name */ case 's': - if (pset.db && PQservice(pset.db)) - strlcpy(buf, PQservice(pset.db), sizeof(buf)); + { + const char *service_name = GetVariable(pset.vars, "SERVICE"); + + if (service_name) + strlcpy(buf, service_name, sizeof(buf)); + } break; /* backend pid */ case 'p': diff --git a/src/interfaces/libpq/exports.txt b/src/interfaces/libpq/exports.txt index 0625cf39e9af3..dbbae642d769a 100644 --- a/src/interfaces/libpq/exports.txt +++ b/src/interfaces/libpq/exports.txt @@ -205,9 +205,8 @@ PQcancelFinish 202 PQsocketPoll 203 PQsetChunkedRowsMode 204 PQgetCurrentTimeUSec 205 -PQservice 206 -PQsetAuthDataHook 207 -PQgetAuthDataHook 208 -PQdefaultAuthDataHook 209 -PQfullProtocolVersion 210 -appendPQExpBufferVA 211 +PQsetAuthDataHook 206 +PQgetAuthDataHook 207 +PQdefaultAuthDataHook 208 +PQfullProtocolVersion 209 +appendPQExpBufferVA 210 diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index 51a9c41658455..09eb79812ac6d 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -7461,14 +7461,6 @@ PQdb(const PGconn *conn) return conn->dbName; } -char * -PQservice(const PGconn *conn) -{ - if (!conn) - return NULL; - return conn->pgservice; -} - char * PQuser(const PGconn *conn) { diff --git a/src/interfaces/libpq/libpq-fe.h b/src/interfaces/libpq/libpq-fe.h index 7d3a9df6fd559..af8004f952a56 100644 --- a/src/interfaces/libpq/libpq-fe.h +++ b/src/interfaces/libpq/libpq-fe.h @@ -400,7 +400,6 @@ extern int PQrequestCancel(PGconn *conn); /* Accessor functions for PGconn objects */ extern char *PQdb(const PGconn *conn); -extern char *PQservice(const PGconn *conn); extern char *PQuser(const PGconn *conn); extern char *PQpass(const PGconn *conn); extern char *PQhost(const PGconn *conn); From 601a3133ae72ab24b27c96aa8053e227daa8fa08 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 9 Jul 2025 13:23:13 +0900 Subject: [PATCH 040/457] doc PG 18 relnotes: Remove item about PQservice() This libpq API has been removed in fc3edb52fbb9, commit that has forgotten one reference in the release notes. This applies only to v18. --- doc/src/sgml/release-18.sgml | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 66a6817a2be0f..b4bd3559a3946 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -2626,20 +2626,6 @@ Author: Heikki Linnakangas - - - - - Add libpq function PQservice() - to return the connection service name (Michael Banck) - § - - - Errors detected at semantic analysis or later, such as a misspelled table or column name, do not have this effect. + + + Lastly, note that all the statements within the Query message will + observe the same value of statement_timestamp(), + since that timestamp is updated only upon receipt of the Query + message. This will result in them all observing the same + value of transaction_timestamp() as well, + except in cases where the query string ends a previously-started + transaction and begins a new one. + From 0b6dfce0ce4dec2ddbf63e8d02f932b237a9f8c3 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 15 Jul 2025 18:11:18 -0400 Subject: [PATCH 060/457] Silence uninitialized-value warnings in compareJsonbContainers(). Because not every path through JsonbIteratorNext() sets val->type, some compilers complain that compareJsonbContainers() is comparing possibly-uninitialized values. The paths that don't set it return WJB_DONE, WJB_END_ARRAY, or WJB_END_OBJECT, so it's clear by manual inspection that the "(ra == rb)" code path is safe, and indeed we aren't seeing warnings about that. But the (ra != rb) case is much less obviously safe. In Assert-enabled builds it seems that the asserts rejecting WJB_END_ARRAY and WJB_END_OBJECT persuade gcc 15.x not to warn, which makes little sense because it's impossible to believe that the compiler can prove of its own accord that ra/rb aren't WJB_DONE here. (In fact they never will be, so the code isn't wrong, but why is there no warning?) Without Asserts, the appearance of warnings is quite unsurprising. We discussed fixing this by converting those two Asserts into pg_assume, but that seems not very satisfactory when it's so unclear why the compiler is or isn't warning: the warning could easily reappear with some other compiler version. Let's fix it in a less magical, more future-proof way by changing JsonbIteratorNext() so that it always does set val->type. The cost of that should be pretty negligible, and it makes the function's API spec less squishy. Reported-by: Erik Rijkers Author: Tom Lane Reviewed-by: Andres Freund Discussion: https://postgr.es/m/988bf1bc-3f1f-99f3-bf98-222f1cd9dc5e@xs4all.nl Discussion: https://postgr.es/m/0c623e8a204187b87b4736792398eaf1@postgrespro.ru Backpatch-through: 13 --- src/backend/utils/adt/jsonb_util.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/src/backend/utils/adt/jsonb_util.c b/src/backend/utils/adt/jsonb_util.c index c8b6c15e05975..136952861e14f 100644 --- a/src/backend/utils/adt/jsonb_util.c +++ b/src/backend/utils/adt/jsonb_util.c @@ -277,9 +277,6 @@ compareJsonbContainers(JsonbContainer *a, JsonbContainer *b) else { /* - * It's safe to assume that the types differed, and that the va - * and vb values passed were set. - * * If the two values were of the same container type, then there'd * have been a chance to observe the variation in the number of * elements/pairs (when processing WJB_BEGIN_OBJECT, say). They're @@ -852,15 +849,20 @@ JsonbIteratorInit(JsonbContainer *container) * It is our job to expand the jbvBinary representation without bothering them * with it. However, clients should not take it upon themselves to touch array * or Object element/pair buffers, since their element/pair pointers are - * garbage. Also, *val will not be set when returning WJB_END_ARRAY or - * WJB_END_OBJECT, on the assumption that it's only useful to access values - * when recursing in. + * garbage. + * + * *val is not meaningful when the result is WJB_DONE, WJB_END_ARRAY or + * WJB_END_OBJECT. However, we set val->type = jbvNull in those cases, + * so that callers may assume that val->type is always well-defined. */ JsonbIteratorToken JsonbIteratorNext(JsonbIterator **it, JsonbValue *val, bool skipNested) { if (*it == NULL) + { + val->type = jbvNull; return WJB_DONE; + } /* * When stepping into a nested container, we jump back here to start @@ -898,6 +900,7 @@ JsonbIteratorNext(JsonbIterator **it, JsonbValue *val, bool skipNested) * nesting). */ *it = freeAndGetParent(*it); + val->type = jbvNull; return WJB_END_ARRAY; } @@ -951,6 +954,7 @@ JsonbIteratorNext(JsonbIterator **it, JsonbValue *val, bool skipNested) * of nesting). */ *it = freeAndGetParent(*it); + val->type = jbvNull; return WJB_END_OBJECT; } else @@ -995,8 +999,10 @@ JsonbIteratorNext(JsonbIterator **it, JsonbValue *val, bool skipNested) return WJB_VALUE; } - elog(ERROR, "invalid iterator state"); - return -1; + elog(ERROR, "invalid jsonb iterator state"); + /* satisfy compilers that don't know that elog(ERROR) doesn't return */ + val->type = jbvNull; + return WJB_DONE; } /* From f8ce5dea433c073369e8c4c4b8375ffd3a761509 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 15 Jul 2025 18:53:00 -0400 Subject: [PATCH 061/457] Doc: clarify description of regexp fields in pg_ident.conf. The grammar was a little shaky and confusing here, so word-smith it a bit. Also, adjust the comments in pg_ident.conf.sample to use the same terminology as the SGML docs, in particular "DATABASE-USERNAME" not "PG-USERNAME". Back-patch appropriate subsets. I did not risk changing pg_ident.conf.sample in released branches, but it still seems OK to change it in v18. Reported-by: Alexey Shishkin Author: Tom Lane Reviewed-by: David G. Johnston Discussion: https://postgr.es/m/175206279327.3157504.12519088928605422253@wrigleys.postgresql.org Backpatch-through: 13 --- doc/src/sgml/client-auth.sgml | 16 ++++++++-------- src/backend/libpq/pg_ident.conf.sample | 26 +++++++++++++------------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/doc/src/sgml/client-auth.sgml b/doc/src/sgml/client-auth.sgml index 832b616a7bbff..51b95ed04f399 100644 --- a/doc/src/sgml/client-auth.sgml +++ b/doc/src/sgml/client-auth.sgml @@ -1003,8 +1003,9 @@ local db1,db2,@demodbs all md5 the remainder of the field is treated as a regular expression. (See for details of PostgreSQL's regular expression syntax.) The regular - expression can include a single capture, or parenthesized subexpression, - which can then be referenced in the database-username + expression can include a single capture, or parenthesized subexpression. + The portion of the system user name that matched the capture can then + be referenced in the database-username field as \1 (backslash-one). This allows the mapping of multiple user names in a single line, which is particularly useful for simple syntax substitutions. For example, these entries @@ -1022,12 +1023,11 @@ mymap /^(.*)@otherdomain\.com$ guest If the database-username field starts with a slash (/), the remainder of the field is treated - as a regular expression (see - for details of PostgreSQL's regular - expression syntax). It is not possible to use \1 - to use a capture from regular expression on - system-username for a regular expression - on database-username. + as a regular expression. + When the database-username field is a regular + expression, it is not possible to use \1 within it to + refer to a capture from the system-username + field. diff --git a/src/backend/libpq/pg_ident.conf.sample b/src/backend/libpq/pg_ident.conf.sample index f5225f26cdf2c..8ee6c0ba31576 100644 --- a/src/backend/libpq/pg_ident.conf.sample +++ b/src/backend/libpq/pg_ident.conf.sample @@ -13,25 +13,25 @@ # user names to their corresponding PostgreSQL user names. Records # are of the form: # -# MAPNAME SYSTEM-USERNAME PG-USERNAME +# MAPNAME SYSTEM-USERNAME DATABASE-USERNAME # # (The uppercase quantities must be replaced by actual values.) # # MAPNAME is the (otherwise freely chosen) map name that was used in # pg_hba.conf. SYSTEM-USERNAME is the detected user name of the -# client. PG-USERNAME is the requested PostgreSQL user name. The -# existence of a record specifies that SYSTEM-USERNAME may connect as -# PG-USERNAME. +# client. DATABASE-USERNAME is the requested PostgreSQL user name. +# The existence of a record specifies that SYSTEM-USERNAME may connect +# as DATABASE-USERNAME. # -# If SYSTEM-USERNAME starts with a slash (/), it will be treated as a -# regular expression. Optionally this can contain a capture (a -# parenthesized subexpression). The substring matching the capture -# will be substituted for \1 (backslash-one) if present in -# PG-USERNAME. +# If SYSTEM-USERNAME starts with a slash (/), the rest of it will be +# treated as a regular expression. Optionally this can contain a capture +# (a parenthesized subexpression). The substring matching the capture +# will be substituted for \1 (backslash-one) if that appears in +# DATABASE-USERNAME. # -# PG-USERNAME can be "all", a user name, a group name prefixed with "+", or -# a regular expression (if it starts with a slash (/)). If it is a regular -# expression, the substring matching with \1 has no effect. +# DATABASE-USERNAME can be "all", a user name, a group name prefixed with "+", +# or a regular expression (if it starts with a slash (/)). If it is a regular +# expression, no substitution for \1 will occur. # # Multiple maps may be specified in this file and used by pg_hba.conf. # @@ -69,4 +69,4 @@ # Put your actual configuration here # ---------------------------------- -# MAPNAME SYSTEM-USERNAME PG-USERNAME +# MAPNAME SYSTEM-USERNAME DATABASE-USERNAME From da9a888da22c66764a2f97099c8f6c9462dbcbb7 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Wed, 16 Jul 2025 08:03:36 +0900 Subject: [PATCH 062/457] doc: Clarify that total_vacuum_time excludes VACUUM FULL. The last_vacuum and vacuum_count fields in pg_stat_all_tables already state that they do not include VACUUM FULL. However, total_vacuum_time, which also excludes VACUUM FULL, did not mention this. This could mislead users into thinking VACUUM FULL time is included. To address this, this commit updates the documentation for pg_stat_all_tables to explicitly state that total_vacuum_time does not count VACUUM FULL. Back-patched to v18, where total_vacuum_time was introduced. Additionally, this commit clarifies that n_ins_since_vacuum also excludes VACUUM FULL. Although n_ins_since_vacuum was added in v13, we are not back-patching this change to stable branches, as it is a documentation improvement, not a bug fix. Author: Fujii Masao Reviewed-by: Robert Treat Reviewed-by: David G. Johnston Reviewed-by: Laurenz Albe Discussion: https://postgr.es/m/2ac375d1-591b-4f1b-a2af-f24335567866@oss.nttdata.com Backpatch-through: 18 --- doc/src/sgml/monitoring.sgml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index 4265a22d4de35..823afe1b30b22 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -3980,6 +3980,7 @@ description | Waiting for a newly initialized WAL file to reach durable storage Estimated number of rows inserted since this table was last vacuumed + (not counting VACUUM FULL) @@ -4066,7 +4067,8 @@ description | Waiting for a newly initialized WAL file to reach durable storage total_vacuum_time double precision - Total time this table has been manually vacuumed, in milliseconds. + Total time this table has been manually vacuumed, in milliseconds + (not counting VACUUM FULL). (This includes the time spent sleeping due to cost-based delays.) From ac7c04483106d018f0ec69bfc06c8cc2ca749f36 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Wed, 16 Jul 2025 08:32:52 +0900 Subject: [PATCH 063/457] doc: Fix confusing description of streaming option in START_REPLICATION. Previously, the documentation described the streaming option as a boolean, which is outdated since it's no longer a boolean as of protocol version 4. This could confuse users. This commit updates the description to remove the "boolean" reference and clearly list the valid values for the streaming option. Back-patch to v16, where the streaming option changed to a non-boolean. Author: Euler Taveira Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/8d21fb98-5c25-4dee-8387-e5a62b01ea7d@app.fastmail.com Backpatch-through: 16 --- doc/src/sgml/protocol.sgml | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index 8f31a9f80115a..6ca16523da1b5 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -3514,11 +3514,13 @@ psql "dbname=postgres replication=database" -c "IDENTIFY_SYSTEM;" - Boolean option to enable streaming of in-progress transactions. - It accepts an additional value "parallel" to enable sending extra - information with some messages to be used for parallelisation. - Minimum protocol version 2 is required to turn it on. Minimum protocol - version 4 is required for the "parallel" option. + Option to enable streaming of in-progress transactions. Valid values are + off (the default), on and + parallel. The setting parallel + enables sending extra information with some messages to be used for + parallelization. Minimum protocol version 2 is required to turn it + on. Minimum protocol version 4 is required for the + parallel value. From 40c66f8585bcb13e60b8c2323f1f96b34285bafb Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Wed, 16 Jul 2025 11:50:34 -0500 Subject: [PATCH 064/457] psql: Fix note on project naming in output of \copyright. This adjusts the wording to match the changes in commits 5987553fde, a233a603ba, and pgweb commit 2d764dbc08. Reviewed-by: Tom Lane Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/aHVo791guQR6uqwT%40nathan Backpatch-through: 13 --- src/bin/psql/help.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/psql/help.c b/src/bin/psql/help.c index a2e009ab9bea7..8c62729a0d124 100644 --- a/src/bin/psql/help.c +++ b/src/bin/psql/help.c @@ -748,7 +748,7 @@ void print_copyright(void) { puts("PostgreSQL Database Management System\n" - "(formerly known as Postgres, then as Postgres95)\n\n" + "(also known as Postgres, formerly known as Postgres95)\n\n" "Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group\n\n" "Portions Copyright (c) 1994, The Regents of the University of California\n\n" "Permission to use, copy, modify, and distribute this software and its\n" From 973caf7291c119ac1679734ae23721bbbb7df0da Mon Sep 17 00:00:00 2001 From: Jeff Davis Date: Wed, 16 Jul 2025 09:57:07 -0700 Subject: [PATCH 065/457] pg_dumpall: Skip global objects with --statistics-only or --no-schema. Previously, pg_dumpall would still dump global objects such as roles and tablespaces even when --statistics-only or --no-schema was specified. Since these global objects are treated as schema-level data, they should be skipped in these cases. This commit fixes the issue by ensuring that global objects are not dumped when either --statistics-only or --no-schema is used. Author: Fujii Masao Reviewed-by: Corey Huinker Discussion: https://postgr.es/m/08129593-6f3c-4fb9-94b7-5aa2eefb99b0@oss.nttdata.com Backpatch-through: 18 --- src/bin/pg_dump/pg_dumpall.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/pg_dump/pg_dumpall.c b/src/bin/pg_dump/pg_dumpall.c index 3cbcad65c5fb5..100317b1aa949 100644 --- a/src/bin/pg_dump/pg_dumpall.c +++ b/src/bin/pg_dump/pg_dumpall.c @@ -632,7 +632,7 @@ main(int argc, char *argv[]) fprintf(OPF, "SET escape_string_warning = off;\n"); fprintf(OPF, "\n"); - if (!data_only) + if (!data_only && !statistics_only && !no_schema) { /* * If asked to --clean, do that first. We can avoid detailed From dca0e9693b71a3edd8c7956005af143bb5c59f1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Wed, 16 Jul 2025 19:22:53 +0200 Subject: [PATCH 066/457] Fix dumping of comments on invalid constraints on domains We skip dumping constraints together with domains if they are invalid ('separate') so that they appear after data -- but their comments were dumped together with the domain definition, which in effect leads to the comment being dumped when the constraint does not yet exist. Delay them in the same way. Oversight in 7eca575d1c28; backpatch all the way back. Author: jian he Discussion: https://postgr.es/m/CACJufxF_C2pe6J_+nPr6C5jf5rQnbYP8XOKr4HM8yHZtp2aQqQ@mail.gmail.com --- src/bin/pg_dump/pg_dump.c | 23 ++++++++++++++++++++++- src/test/regress/expected/constraints.out | 4 ++++ src/test/regress/sql/constraints.sql | 6 ++++++ 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 1937997ea674d..c6226175528bb 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -12583,8 +12583,13 @@ dumpDomain(Archive *fout, const TypeInfo *tyinfo) for (i = 0; i < tyinfo->nDomChecks; i++) { ConstraintInfo *domcheck = &(tyinfo->domChecks[i]); - PQExpBuffer conprefix = createPQExpBuffer(); + PQExpBuffer conprefix; + /* but only if the constraint itself was dumped here */ + if (domcheck->separate) + continue; + + conprefix = createPQExpBuffer(); appendPQExpBuffer(conprefix, "CONSTRAINT %s ON DOMAIN", fmtId(domcheck->dobj.name)); @@ -18488,6 +18493,22 @@ dumpConstraint(Archive *fout, const ConstraintInfo *coninfo) .section = SECTION_POST_DATA, .createStmt = q->data, .dropStmt = delq->data)); + + if (coninfo->dobj.dump & DUMP_COMPONENT_COMMENT) + { + PQExpBuffer conprefix = createPQExpBuffer(); + char *qtypname = pg_strdup(fmtId(tyinfo->dobj.name)); + + appendPQExpBuffer(conprefix, "CONSTRAINT %s ON DOMAIN", + fmtId(coninfo->dobj.name)); + + dumpComment(fout, conprefix->data, qtypname, + tyinfo->dobj.namespace->dobj.name, + tyinfo->rolname, + coninfo->dobj.catId, 0, tyinfo->dobj.dumpId); + destroyPQExpBuffer(conprefix); + free(qtypname); + } } } else diff --git a/src/test/regress/expected/constraints.out b/src/test/regress/expected/constraints.out index ccea883cffd65..3590d3274f05a 100644 --- a/src/test/regress/expected/constraints.out +++ b/src/test/regress/expected/constraints.out @@ -1701,3 +1701,7 @@ DROP TABLE constraint_comments_tbl; DROP DOMAIN constraint_comments_dom; DROP ROLE regress_constraint_comments; DROP ROLE regress_constraint_comments_noaccess; +-- Leave some constraints for the pg_upgrade test to pick up +CREATE DOMAIN constraint_comments_dom AS int; +ALTER DOMAIN constraint_comments_dom ADD CONSTRAINT inv_ck CHECK (value > 0) NOT VALID; +COMMENT ON CONSTRAINT inv_ck ON DOMAIN constraint_comments_dom IS 'comment on invalid constraint'; diff --git a/src/test/regress/sql/constraints.sql b/src/test/regress/sql/constraints.sql index 7487723ab8437..1f6dc8fd69f6d 100644 --- a/src/test/regress/sql/constraints.sql +++ b/src/test/regress/sql/constraints.sql @@ -1043,3 +1043,9 @@ DROP DOMAIN constraint_comments_dom; DROP ROLE regress_constraint_comments; DROP ROLE regress_constraint_comments_noaccess; + +-- Leave some constraints for the pg_upgrade test to pick up +CREATE DOMAIN constraint_comments_dom AS int; + +ALTER DOMAIN constraint_comments_dom ADD CONSTRAINT inv_ck CHECK (value > 0) NOT VALID; +COMMENT ON CONSTRAINT inv_ck ON DOMAIN constraint_comments_dom IS 'comment on invalid constraint'; From 409c63f9f634c1d9aa5a4afb17f54056b3de7c88 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Thu, 17 Jul 2025 00:21:18 +0200 Subject: [PATCH 067/457] doc: Add example file for COPY The paragraph for introducing INSERT and COPY discussed how a file could be used for bulk loading with COPY, without actually showing what the file would look like. This adds a programlisting for the file contents. Backpatch to all supported branches since this example has lacked the file contents since PostgreSQL 7.2. Author: Daniel Gustafsson Reviewed-by: Fujii Masao Reviewed-by: Tom Lane Discussion: https://postgr.es/m/158017814191.19852.15019251381150731439@wrigleys.postgresql.org Backpatch-through: 13 --- doc/src/sgml/query.sgml | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/query.sgml b/doc/src/sgml/query.sgml index 727a0cb185fb2..b190f28d41ea6 100644 --- a/doc/src/sgml/query.sgml +++ b/doc/src/sgml/query.sgml @@ -264,8 +264,18 @@ COPY weather FROM '/home/user/weather.txt'; where the file name for the source file must be available on the machine running the backend process, not the client, since the backend process - reads the file directly. You can read more about the - COPY command in . + reads the file directly. The data inserted above into the weather table + could also be inserted from a file containing (values are separated by a + tab character): + + +San Francisco 46 50 0.25 1994-11-27 +San Francisco 43 57 0.0 1994-11-29 +Hayward 37 54 \N 1994-11-29 + + + You can read more about the COPY command in + . From 4fcbe06aa8f825c118e7076ebde1ccf57c022570 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 17 Jul 2025 09:32:49 +0900 Subject: [PATCH 068/457] Fix inconsistent LWLock tranche names for MultiXact* MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The terms used in wait_event_names.txt and lwlock.c were inconsistent for MultiXactOffsetSLRU and MultiXactMemberSLRU, which could cause joins between pg_wait_events and pg_stat_activity to fail. lwlock.c is adjusted in this commit to what the historical name of the event has always been, and what is documented. Oversight in 53c2a97a9266. 08b9b9e043bb has fixed a similar inconsistency some time ago. Author: Bertrand Drouvot Reviewed-by: Álvaro Herrera Discussion: https://postgr.es/m/aHdxN0D0hKXzHFQG@ip-10-97-1-34.eu-west-3.compute.internal Backpatch-through: 17 --- src/backend/storage/lmgr/lwlock.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/storage/lmgr/lwlock.c b/src/backend/storage/lmgr/lwlock.c index 46f44bc45113f..2d43bf2cc1323 100644 --- a/src/backend/storage/lmgr/lwlock.c +++ b/src/backend/storage/lmgr/lwlock.c @@ -170,8 +170,8 @@ static const char *const BuiltinTrancheNames[] = { [LWTRANCHE_DSM_REGISTRY_DSA] = "DSMRegistryDSA", [LWTRANCHE_DSM_REGISTRY_HASH] = "DSMRegistryHash", [LWTRANCHE_COMMITTS_SLRU] = "CommitTsSLRU", - [LWTRANCHE_MULTIXACTOFFSET_SLRU] = "MultixactOffsetSLRU", - [LWTRANCHE_MULTIXACTMEMBER_SLRU] = "MultixactMemberSLRU", + [LWTRANCHE_MULTIXACTOFFSET_SLRU] = "MultiXactOffsetSLRU", + [LWTRANCHE_MULTIXACTMEMBER_SLRU] = "MultiXactMemberSLRU", [LWTRANCHE_NOTIFY_SLRU] = "NotifySLRU", [LWTRANCHE_SERIAL_SLRU] = "SerialSLRU", [LWTRANCHE_SUBTRANS_SLRU] = "SubtransSLRU", From 02d21cfd4b889fc476014e872c39632b019a038e Mon Sep 17 00:00:00 2001 From: Amit Langote Date: Thu, 17 Jul 2025 14:29:53 +0900 Subject: [PATCH 069/457] Remove duplicate line In 231b7d670b21, while copy-pasting some code into ExecEvalJsonCoercionFinish(), I (amitlan) accidentally introduced a duplicate line. Remove it. Reported-by: Jian He Discussion: https://postgr.es/m/CACJufxHcf=BpmRAJcjgfjOUfV76MwKnyz1x3ErXsWL26EAFmng@mail.gmail.com --- src/backend/executor/execExprInterp.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/backend/executor/execExprInterp.c b/src/backend/executor/execExprInterp.c index 8a72b5e70a4ec..1a37737d4a235 100644 --- a/src/backend/executor/execExprInterp.c +++ b/src/backend/executor/execExprInterp.c @@ -5228,7 +5228,6 @@ ExecEvalJsonCoercionFinish(ExprState *state, ExprEvalStep *op) * JsonBehavior expression. */ jsestate->escontext.error_occurred = false; - jsestate->escontext.error_occurred = false; jsestate->escontext.details_wanted = true; } } From c4b5cd095675d9a7df121429f8bcb7ddb5d6d996 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Thu, 17 Jul 2025 10:25:59 -0500 Subject: [PATCH 070/457] doc: Add note about how to use pg_overexplain. This commit adds a note to the pg_overexplain page that describes how to use it (LOAD, session_preload_libraries, or shared_preload_libraries). The new text is mostly lifted from the auto_explain page. We should probably consider centralizing this information in the future. While at it, add a missing "module" to the opening sentence. Reviewed-by: "David G. Johnston" Reviewed-by: Robert Treat Reviewed-by: Dean Rasheed Discussion: https://postgr.es/m/aHVWKM8l8kLlZzgv%40nathan Backpatch-through: 18 --- doc/src/sgml/pgoverexplain.sgml | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/doc/src/sgml/pgoverexplain.sgml b/doc/src/sgml/pgoverexplain.sgml index 21930fbd3bd76..377ddc8139ecf 100644 --- a/doc/src/sgml/pgoverexplain.sgml +++ b/doc/src/sgml/pgoverexplain.sgml @@ -8,7 +8,7 @@ - The pg_overexplain extends EXPLAIN + The pg_overexplain module extends EXPLAIN with new options that provide additional output. It is mostly intended to assist with debugging of and development of the planner, rather than for general use. Since this module displays internal details of planner data @@ -17,6 +17,21 @@ often as) those data structures change. + + To use it, simply load it into the server. You can load it into an + individual session: + + +LOAD 'pg_overexplain'; + + + You can also preload it into some or all sessions by including + pg_overexplain in + or + in + postgresql.conf. + + EXPLAIN (DEBUG) From e0d3f3cfb6f23b46bab89b8d9e8d82cbed951f80 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Thu, 17 Jul 2025 17:40:22 +0200 Subject: [PATCH 071/457] Remove assertion from PortalRunMulti MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We have an assertion to ensure that a command tag has been assigned by the time we're done executing, but if we happen to execute a command with no queries, the assertion would fail. Per discussion, rather than contort things to get a tag assigned, just remove the assertion. Oversight in 2f9661311b83. That commit also retained a comment that explained logic that had been adjacent to it but diffused into various places, leaving none apt to keep part of the comment. Remove that part, and rewrite what remains for extra clarity. Bug: #18984 Backpatch-through: 13 Reported-by: Aleksander Alekseev Reviewed-by: Tom Lane Reviewed-by: Michaël Paquier Discussion: https://postgr.es/m/18984-0f4778a6599ac3ae@postgresql.org --- src/backend/tcop/pquery.c | 25 ++++++++----------------- 1 file changed, 8 insertions(+), 17 deletions(-) diff --git a/src/backend/tcop/pquery.c b/src/backend/tcop/pquery.c index d1593f38b35fd..08791b8f75ec2 100644 --- a/src/backend/tcop/pquery.c +++ b/src/backend/tcop/pquery.c @@ -1350,24 +1350,15 @@ PortalRunMulti(Portal portal, PopActiveSnapshot(); /* - * If a query completion data was supplied, use it. Otherwise use the - * portal's query completion data. - * - * Exception: Clients expect INSERT/UPDATE/DELETE tags to have counts, so - * fake them with zeros. This can happen with DO INSTEAD rules if there - * is no replacement query of the same type as the original. We print "0 - * 0" here because technically there is no query of the matching tag type, - * and printing a non-zero count for a different query type seems wrong, - * e.g. an INSERT that does an UPDATE instead should not print "0 1" if - * one row was updated. See QueryRewrite(), step 3, for details. + * If a command tag was requested and we did not fill in a run-time- + * determined tag above, copy the parse-time tag from the Portal. (There + * might not be any tag there either, in edge cases such as empty prepared + * statements. That's OK.) */ - if (qc && qc->commandTag == CMDTAG_UNKNOWN) - { - if (portal->qc.commandTag != CMDTAG_UNKNOWN) - CopyQueryCompletion(qc, &portal->qc); - /* If the caller supplied a qc, we should have set it by now. */ - Assert(qc->commandTag != CMDTAG_UNKNOWN); - } + if (qc && + qc->commandTag == CMDTAG_UNKNOWN && + portal->qc.commandTag != CMDTAG_UNKNOWN) + CopyQueryCompletion(qc, &portal->qc); } /* From bfa9b25c94fe65411e29c2798b6d3da5fa6e9158 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 17 Jul 2025 12:46:38 -0400 Subject: [PATCH 072/457] Fix PQport to never return NULL unless the connection is NULL. This is the documented behavior, and it worked that way before v10. However, addition of the connhost[] array created cases where conn->connhost[conn->whichhost].port is NULL. The rest of libpq is careful to substitute DEF_PGPORT[_STR] for a null or empty port string, but we failed to do so here, leading to possibly returning NULL. As of v18 that causes psql's \conninfo command to segfault. Older psql versions avoid that, but it's pretty likely that other clients have trouble with this, so we'd better back-patch the fix. In stable branches, just revert to our historical behavior of returning an empty string when there was no user-given port specification. However, it seems substantially more useful and indeed more correct to hand back DEF_PGPORT_STR in such cases, so let's make v18 and master do that. Author: Daniele Varrazzo Reviewed-by: Laurenz Albe Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CA+mi_8YTS8WPZPO0PAb2aaGLwHuQ0DEQRF0ZMnvWss4y9FwDYQ@mail.gmail.com Backpatch-through: 13 --- src/interfaces/libpq/fe-connect.c | 6 ++++-- src/interfaces/libpq/libpq-int.h | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index 09eb79812ac6d..d9e3da0495851 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -7528,10 +7528,12 @@ PQport(const PGconn *conn) if (!conn) return NULL; - if (conn->connhost != NULL) + if (conn->connhost != NULL && + conn->connhost[conn->whichhost].port != NULL && + conn->connhost[conn->whichhost].port[0] != '\0') return conn->connhost[conn->whichhost].port; - return ""; + return DEF_PGPORT_STR; } /* diff --git a/src/interfaces/libpq/libpq-int.h b/src/interfaces/libpq/libpq-int.h index a6cfd7f5c9d83..f975f03ca1e06 100644 --- a/src/interfaces/libpq/libpq-int.h +++ b/src/interfaces/libpq/libpq-int.h @@ -357,7 +357,8 @@ typedef struct pg_conn_host pg_conn_host_type type; /* type of host address */ char *host; /* host name or socket path */ char *hostaddr; /* host numeric IP address */ - char *port; /* port number (always provided) */ + char *port; /* port number (if NULL or empty, use + * DEF_PGPORT[_STR]) */ char *password; /* password for this host, read from the * password file; NULL if not sought or not * found in password file. */ From 27c7c11366f72b1933e298481954a24c742036de Mon Sep 17 00:00:00 2001 From: Dean Rasheed Date: Fri, 18 Jul 2025 09:59:40 +0100 Subject: [PATCH 073/457] Fix concurrent update trigger issues with MERGE in a CTE. If a MERGE inside a CTE attempts an UPDATE or DELETE on a table with BEFORE ROW triggers, and a concurrent UPDATE or DELETE happens, the merge code would fail (crashing in the case of an UPDATE action, and potentially executing the wrong action for a DELETE action). This is the same issue that 9321c79c86 attempted to fix, except now for a MERGE inside a CTE. As noted in 9321c79c86, what needs to happen is for the trigger code to exit early, returning the TM_Result and TM_FailureData information to the merge code, if a concurrent modification is detected, rather than attempting to do an EPQ recheck. The merge code will then do its own rechecking, and rescan the action list, potentially executing a different action in light of the concurrent update. In particular, the trigger code must never call ExecGetUpdateNewTuple() for MERGE, since that is bound to fail because MERGE has its own per-action projection information. Commit 9321c79c86 did this using estate->es_plannedstmt->commandType in the trigger code to detect that a MERGE was being executed, which is fine for a plain MERGE command, but does not work for a MERGE inside a CTE. Fix by passing that information to the trigger code as an additional parameter passed to ExecBRUpdateTriggers() and ExecBRDeleteTriggers(). Back-patch as far as v17 only, since MERGE cannot appear inside a CTE prior to that. Additionally, take care to preserve the trigger ABI in v17 (though not in v18, which is still in beta). Bug: #18986 Reported-by: Yaroslav Syrytsia Author: Dean Rasheed Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/18986-e7a8aac3d339fa47@postgresql.org Backpatch-through: 17 --- src/backend/commands/trigger.c | 74 ++++++++++++------- src/backend/executor/execReplication.c | 4 +- src/backend/executor/nodeModifyTable.c | 6 +- src/include/commands/trigger.h | 6 +- .../expected/merge-match-recheck.out | 27 ++++--- .../isolation/specs/merge-match-recheck.spec | 22 +++--- 6 files changed, 89 insertions(+), 50 deletions(-) diff --git a/src/backend/commands/trigger.c b/src/backend/commands/trigger.c index 67f8e70f9c166..7dc121f73f17e 100644 --- a/src/backend/commands/trigger.c +++ b/src/backend/commands/trigger.c @@ -80,6 +80,7 @@ static bool GetTupleForTrigger(EState *estate, ItemPointer tid, LockTupleMode lockmode, TupleTableSlot *oldslot, + bool do_epq_recheck, TupleTableSlot **epqslot, TM_Result *tmresultp, TM_FailureData *tmfdp); @@ -2693,7 +2694,8 @@ ExecBRDeleteTriggers(EState *estate, EPQState *epqstate, HeapTuple fdw_trigtuple, TupleTableSlot **epqslot, TM_Result *tmresult, - TM_FailureData *tmfd) + TM_FailureData *tmfd, + bool is_merge_delete) { TupleTableSlot *slot = ExecGetTriggerOldSlot(estate, relinfo); TriggerDesc *trigdesc = relinfo->ri_TrigDesc; @@ -2708,9 +2710,17 @@ ExecBRDeleteTriggers(EState *estate, EPQState *epqstate, { TupleTableSlot *epqslot_candidate = NULL; + /* + * Get a copy of the on-disk tuple we are planning to delete. In + * general, if the tuple has been concurrently updated, we should + * recheck it using EPQ. However, if this is a MERGE DELETE action, + * we skip this EPQ recheck and leave it to the caller (it must do + * additional rechecking, and might end up executing a different + * action entirely). + */ if (!GetTupleForTrigger(estate, epqstate, relinfo, tupleid, - LockTupleExclusive, slot, &epqslot_candidate, - tmresult, tmfd)) + LockTupleExclusive, slot, !is_merge_delete, + &epqslot_candidate, tmresult, tmfd)) return false; /* @@ -2800,6 +2810,7 @@ ExecARDeleteTriggers(EState *estate, tupleid, LockTupleExclusive, slot, + false, NULL, NULL, NULL); @@ -2944,7 +2955,8 @@ ExecBRUpdateTriggers(EState *estate, EPQState *epqstate, HeapTuple fdw_trigtuple, TupleTableSlot *newslot, TM_Result *tmresult, - TM_FailureData *tmfd) + TM_FailureData *tmfd, + bool is_merge_update) { TriggerDesc *trigdesc = relinfo->ri_TrigDesc; TupleTableSlot *oldslot = ExecGetTriggerOldSlot(estate, relinfo); @@ -2965,10 +2977,17 @@ ExecBRUpdateTriggers(EState *estate, EPQState *epqstate, { TupleTableSlot *epqslot_candidate = NULL; - /* get a copy of the on-disk tuple we are planning to update */ + /* + * Get a copy of the on-disk tuple we are planning to update. In + * general, if the tuple has been concurrently updated, we should + * recheck it using EPQ. However, if this is a MERGE UPDATE action, + * we skip this EPQ recheck and leave it to the caller (it must do + * additional rechecking, and might end up executing a different + * action entirely). + */ if (!GetTupleForTrigger(estate, epqstate, relinfo, tupleid, - lockmode, oldslot, &epqslot_candidate, - tmresult, tmfd)) + lockmode, oldslot, !is_merge_update, + &epqslot_candidate, tmresult, tmfd)) return false; /* cancel the update action */ /* @@ -3142,6 +3161,7 @@ ExecARUpdateTriggers(EState *estate, ResultRelInfo *relinfo, tupleid, LockTupleExclusive, oldslot, + false, NULL, NULL, NULL); @@ -3298,6 +3318,7 @@ GetTupleForTrigger(EState *estate, ItemPointer tid, LockTupleMode lockmode, TupleTableSlot *oldslot, + bool do_epq_recheck, TupleTableSlot **epqslot, TM_Result *tmresultp, TM_FailureData *tmfdp) @@ -3357,29 +3378,30 @@ GetTupleForTrigger(EState *estate, if (tmfd.traversed) { /* - * Recheck the tuple using EPQ. For MERGE, we leave this - * to the caller (it must do additional rechecking, and - * might end up executing a different action entirely). + * Recheck the tuple using EPQ, if requested. Otherwise, + * just return that it was concurrently updated. */ - if (estate->es_plannedstmt->commandType == CMD_MERGE) + if (do_epq_recheck) { - if (tmresultp) - *tmresultp = TM_Updated; - return false; + *epqslot = EvalPlanQual(epqstate, + relation, + relinfo->ri_RangeTableIndex, + oldslot); + + /* + * If PlanQual failed for updated tuple - we must not + * process this tuple! + */ + if (TupIsNull(*epqslot)) + { + *epqslot = NULL; + return false; + } } - - *epqslot = EvalPlanQual(epqstate, - relation, - relinfo->ri_RangeTableIndex, - oldslot); - - /* - * If PlanQual failed for updated tuple - we must not - * process this tuple! - */ - if (TupIsNull(*epqslot)) + else { - *epqslot = NULL; + if (tmresultp) + *tmresultp = TM_Updated; return false; } } diff --git a/src/backend/executor/execReplication.c b/src/backend/executor/execReplication.c index 53ddd25c42db9..f262e7a66f771 100644 --- a/src/backend/executor/execReplication.c +++ b/src/backend/executor/execReplication.c @@ -670,7 +670,7 @@ ExecSimpleRelationUpdate(ResultRelInfo *resultRelInfo, resultRelInfo->ri_TrigDesc->trig_update_before_row) { if (!ExecBRUpdateTriggers(estate, epqstate, resultRelInfo, - tid, NULL, slot, NULL, NULL)) + tid, NULL, slot, NULL, NULL, false)) skip_tuple = true; /* "do nothing" */ } @@ -746,7 +746,7 @@ ExecSimpleRelationDelete(ResultRelInfo *resultRelInfo, resultRelInfo->ri_TrigDesc->trig_delete_before_row) { skip_tuple = !ExecBRDeleteTriggers(estate, epqstate, resultRelInfo, - tid, NULL, NULL, NULL, NULL); + tid, NULL, NULL, NULL, NULL, false); } if (!skip_tuple) diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index 54da8e7995bd3..7c6c2c1f6e42a 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -1474,7 +1474,8 @@ ExecDeletePrologue(ModifyTableContext *context, ResultRelInfo *resultRelInfo, return ExecBRDeleteTriggers(context->estate, context->epqstate, resultRelInfo, tupleid, oldtuple, - epqreturnslot, result, &context->tmfd); + epqreturnslot, result, &context->tmfd, + context->mtstate->operation == CMD_MERGE); } return true; @@ -2117,7 +2118,8 @@ ExecUpdatePrologue(ModifyTableContext *context, ResultRelInfo *resultRelInfo, return ExecBRUpdateTriggers(context->estate, context->epqstate, resultRelInfo, tupleid, oldtuple, slot, - result, &context->tmfd); + result, &context->tmfd, + context->mtstate->operation == CMD_MERGE); } return true; diff --git a/src/include/commands/trigger.h b/src/include/commands/trigger.h index 2ed2c4bb3784b..cfd7daa20edac 100644 --- a/src/include/commands/trigger.h +++ b/src/include/commands/trigger.h @@ -213,7 +213,8 @@ extern bool ExecBRDeleteTriggers(EState *estate, HeapTuple fdw_trigtuple, TupleTableSlot **epqslot, TM_Result *tmresult, - TM_FailureData *tmfd); + TM_FailureData *tmfd, + bool is_merge_delete); extern void ExecARDeleteTriggers(EState *estate, ResultRelInfo *relinfo, ItemPointer tupleid, @@ -235,7 +236,8 @@ extern bool ExecBRUpdateTriggers(EState *estate, HeapTuple fdw_trigtuple, TupleTableSlot *newslot, TM_Result *tmresult, - TM_FailureData *tmfd); + TM_FailureData *tmfd, + bool is_merge_update); extern void ExecARUpdateTriggers(EState *estate, ResultRelInfo *relinfo, ResultRelInfo *src_partinfo, diff --git a/src/test/isolation/expected/merge-match-recheck.out b/src/test/isolation/expected/merge-match-recheck.out index 9a44a5959270b..90300f1db5ab3 100644 --- a/src/test/isolation/expected/merge-match-recheck.out +++ b/src/test/isolation/expected/merge-match-recheck.out @@ -241,19 +241,28 @@ starting permutation: update_bal1_tg merge_bal_tg c2 select1_tg c1 s2: NOTICE: Update: (1,160,s1,setup) -> (1,50,s1,"setup updated by update_bal1_tg") step update_bal1_tg: UPDATE target_tg t SET balance = 50, val = t.val || ' updated by update_bal1_tg' WHERE t.key = 1; step merge_bal_tg: - MERGE INTO target_tg t - USING (SELECT 1 as key) s - ON s.key = t.key - WHEN MATCHED AND balance < 100 THEN - UPDATE SET balance = balance * 2, val = t.val || ' when1' - WHEN MATCHED AND balance < 200 THEN - UPDATE SET balance = balance * 4, val = t.val || ' when2' - WHEN MATCHED AND balance < 300 THEN - UPDATE SET balance = balance * 8, val = t.val || ' when3'; + WITH t AS ( + MERGE INTO target_tg t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3' + RETURNING t.* + ) + SELECT * FROM t; step c2: COMMIT; s1: NOTICE: Update: (1,50,s1,"setup updated by update_bal1_tg") -> (1,100,s1,"setup updated by update_bal1_tg when1") step merge_bal_tg: <... completed> +key|balance|status|val +---+-------+------+------------------------------------- + 1| 100|s1 |setup updated by update_bal1_tg when1 +(1 row) + step select1_tg: SELECT * FROM target_tg; key|balance|status|val ---+-------+------+------------------------------------- diff --git a/src/test/isolation/specs/merge-match-recheck.spec b/src/test/isolation/specs/merge-match-recheck.spec index 26266b8c2978e..15226e40c9efc 100644 --- a/src/test/isolation/specs/merge-match-recheck.spec +++ b/src/test/isolation/specs/merge-match-recheck.spec @@ -99,15 +99,19 @@ step "merge_bal_pa" } step "merge_bal_tg" { - MERGE INTO target_tg t - USING (SELECT 1 as key) s - ON s.key = t.key - WHEN MATCHED AND balance < 100 THEN - UPDATE SET balance = balance * 2, val = t.val || ' when1' - WHEN MATCHED AND balance < 200 THEN - UPDATE SET balance = balance * 4, val = t.val || ' when2' - WHEN MATCHED AND balance < 300 THEN - UPDATE SET balance = balance * 8, val = t.val || ' when3'; + WITH t AS ( + MERGE INTO target_tg t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3' + RETURNING t.* + ) + SELECT * FROM t; } step "merge_delete" From 5449d5b7ae9c2355ce200253874b966e90392d81 Mon Sep 17 00:00:00 2001 From: Alexander Korotkov Date: Sat, 19 Jul 2025 13:44:01 +0300 Subject: [PATCH 074/457] Fix infinite wait when reading a partially written WAL record If a crash occurs while writing a WAL record that spans multiple pages, the recovery process marks the page with the XLP_FIRST_IS_OVERWRITE_CONTRECORD flag. However, logical decoding currently attempts to read the full WAL record based on its expected size before checking this flag, which can lead to an infinite wait if the remaining data is never written (e.g., no activity after crash). This patch updates the logic first to read the page header and check for the XLP_FIRST_IS_OVERWRITE_CONTRECORD flag before attempting to reconstruct the full WAL record. If the flag is set, decoding correctly identifies the record as incomplete and avoids waiting for WAL data that will never arrive. Discussion: https://postgr.es/m/CAAKRu_ZCOzQpEumLFgG_%2Biw3FTa%2BhJ4SRpxzaQBYxxM_ZAzWcA%40mail.gmail.com Discussion: https://postgr.es/m/CALDaNm34m36PDHzsU_GdcNXU0gLTfFY5rzh9GSQv%3Dw6B%2BQVNRQ%40mail.gmail.com Author: Vignesh C Reviewed-by: Hayato Kuroda Reviewed-by: Dilip Kumar Reviewed-by: Michael Paquier Reviewed-by: Alexander Korotkov Backpatch-through: 13 --- src/backend/access/transam/xlogreader.c | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/backend/access/transam/xlogreader.c b/src/backend/access/transam/xlogreader.c index 2790ade1f91e8..5c26d33a60380 100644 --- a/src/backend/access/transam/xlogreader.c +++ b/src/backend/access/transam/xlogreader.c @@ -723,11 +723,12 @@ XLogDecodeNextRecord(XLogReaderState *state, bool nonblocking) /* Calculate pointer to beginning of next page */ targetPagePtr += XLOG_BLCKSZ; - /* Wait for the next page to become available */ - readOff = ReadPageInternal(state, targetPagePtr, - Min(total_len - gotlen + SizeOfXLogShortPHD, - XLOG_BLCKSZ)); - + /* + * Read the page header before processing the record data, so we + * can handle the case where the previous record ended as being a + * partial one. + */ + readOff = ReadPageInternal(state, targetPagePtr, SizeOfXLogShortPHD); if (readOff == XLREAD_WOULDBLOCK) return XLREAD_WOULDBLOCK; else if (readOff < 0) @@ -776,6 +777,15 @@ XLogDecodeNextRecord(XLogReaderState *state, bool nonblocking) goto err; } + /* Wait for the next page to become available */ + readOff = ReadPageInternal(state, targetPagePtr, + Min(total_len - gotlen + SizeOfXLogShortPHD, + XLOG_BLCKSZ)); + if (readOff == XLREAD_WOULDBLOCK) + return XLREAD_WOULDBLOCK; + else if (readOff < 0) + goto err; + /* Append the continuation from this page to the buffer */ pageHeaderSize = XLogPageHeaderSize(pageHeader); From c71c702f067b9191332c07acadd2297a42915e5f Mon Sep 17 00:00:00 2001 From: Alexander Korotkov Date: Sat, 19 Jul 2025 13:51:07 +0300 Subject: [PATCH 075/457] Improve the stability of the recovery test 047_checkpoint_physical_slot Currently, the comments in 047_checkpoint_physical_slot. It shows an incomplete intention to wait for checkpoint completion before performing an immediate database stop. However, an immediate node stop can occur both before and after checkpoint completion. Both cases should work correctly. But we would like the test to be more stable and deterministic. This is why this commit makes this test explicitly wait for the checkpoint completion log message. Discussion: https://postgr.es/m/CAPpHfdurV-j_e0pb%3DUFENAy3tyzxfF%2ByHveNDNQk2gM82WBU5A%40mail.gmail.com Discussion: https://postgr.es/m/aHXLep3OaX_vRTNQ%40paquier.xyz Author: Alexander Korotkov Reviewed-by: Michael Paquier Backpatch-through: 17 --- src/test/recovery/t/047_checkpoint_physical_slot.pl | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/test/recovery/t/047_checkpoint_physical_slot.pl b/src/test/recovery/t/047_checkpoint_physical_slot.pl index a1332b5d44cbe..9e98383e30ea9 100644 --- a/src/test/recovery/t/047_checkpoint_physical_slot.pl +++ b/src/test/recovery/t/047_checkpoint_physical_slot.pl @@ -94,9 +94,11 @@ q{select pg_replication_slot_advance('slot_physical', pg_current_wal_lsn())} ); -# Continue the checkpoint. +# Continue the checkpoint and wait for its completion. +my $log_offset = -s $node->logfile; $node->safe_psql('postgres', q{select injection_points_wakeup('checkpoint-before-old-wal-removal')}); +$node->wait_for_log(qr/checkpoint complete/, $log_offset); my $restart_lsn_old = $node->safe_psql('postgres', q{select restart_lsn from pg_replication_slots where slot_name = 'slot_physical'} @@ -104,8 +106,7 @@ chomp($restart_lsn_old); note("restart lsn before stop: $restart_lsn_old"); -# Abruptly stop the server (1 second should be enough for the checkpoint -# to finish; it would be better). +# Abruptly stop the server. $node->stop('immediate'); $node->start; From 226c5674540f8bc5144e9ba9a83f12977ba4203c Mon Sep 17 00:00:00 2001 From: Alexander Korotkov Date: Sat, 19 Jul 2025 13:59:17 +0300 Subject: [PATCH 076/457] Reintroduce test 046_checkpoint_logical_slot This commit is only for HEAD and v18, where the test has been removed. It also incorporates improvements below to stability and coverage of the original test, which were already backpatched to v17. - Add one pg_logical_emit_message() call to force the creation of a record that spawns across two pages. - Make the logic wait for the checkpoint completion. Author: Alexander Korotkov Co-authored-by: Hayato Kuroda Reviewed-by: Michael Paquier Backpatch-through: 18 --- src/test/recovery/meson.build | 1 + .../recovery/t/046_checkpoint_logical_slot.pl | 142 ++++++++++++++++++ 2 files changed, 143 insertions(+) create mode 100644 src/test/recovery/t/046_checkpoint_logical_slot.pl diff --git a/src/test/recovery/meson.build b/src/test/recovery/meson.build index 6e78ff1a030b3..52993c32dbba4 100644 --- a/src/test/recovery/meson.build +++ b/src/test/recovery/meson.build @@ -54,6 +54,7 @@ tests += { 't/043_no_contrecord_switch.pl', 't/044_invalidate_inactive_slots.pl', 't/045_archive_restartpoint.pl', + 't/046_checkpoint_logical_slot.pl', 't/047_checkpoint_physical_slot.pl', 't/048_vacuum_horizon_floor.pl' ], diff --git a/src/test/recovery/t/046_checkpoint_logical_slot.pl b/src/test/recovery/t/046_checkpoint_logical_slot.pl new file mode 100644 index 0000000000000..4fd709e3a0312 --- /dev/null +++ b/src/test/recovery/t/046_checkpoint_logical_slot.pl @@ -0,0 +1,142 @@ +# Copyright (c) 2025, PostgreSQL Global Development Group +# +# This test verifies the case when the logical slot is advanced during +# checkpoint. The test checks that the logical slot's restart_lsn still refers +# to an existed WAL segment after immediate restart. +# +use strict; +use warnings FATAL => 'all'; + +use PostgreSQL::Test::Cluster; +use PostgreSQL::Test::Utils; + +use Test::More; + +if ($ENV{enable_injection_points} ne 'yes') +{ + plan skip_all => 'Injection points not supported by this build'; +} + +my ($node, $result); + +$node = PostgreSQL::Test::Cluster->new('mike'); +$node->init; +$node->append_conf('postgresql.conf', "wal_level = 'logical'"); +$node->start; + +# Check if the extension injection_points is available, as it may be +# possible that this script is run with installcheck, where the module +# would not be installed by default. +if (!$node->check_extension('injection_points')) +{ + plan skip_all => 'Extension injection_points not installed'; +} + +$node->safe_psql('postgres', q(CREATE EXTENSION injection_points)); + +# Create the two slots we'll need. +$node->safe_psql('postgres', + q{select pg_create_logical_replication_slot('slot_logical', 'test_decoding')} +); +$node->safe_psql('postgres', + q{select pg_create_physical_replication_slot('slot_physical', true)}); + +# Advance both slots to the current position just to have everything "valid". +$node->safe_psql('postgres', + q{select count(*) from pg_logical_slot_get_changes('slot_logical', null, null)} +); +$node->safe_psql('postgres', + q{select pg_replication_slot_advance('slot_physical', pg_current_wal_lsn())} +); + +# Run checkpoint to flush current state to disk and set a baseline. +$node->safe_psql('postgres', q{checkpoint}); + +# Generate some transactions to get RUNNING_XACTS. +my $xacts = $node->background_psql('postgres'); +$xacts->query_until( + qr/run_xacts/, + q(\echo run_xacts +SELECT 1 \watch 0.1 +\q +)); + +$node->advance_wal(20); + +# Run another checkpoint to set a new restore LSN. +$node->safe_psql('postgres', q{checkpoint}); + +$node->advance_wal(20); + +# Run another checkpoint, this time in the background, and make it wait +# on the injection point) so that the checkpoint stops right before +# removing old WAL segments. +note('starting checkpoint'); + +my $checkpoint = $node->background_psql('postgres'); +$checkpoint->query_safe( + q(select injection_points_attach('checkpoint-before-old-wal-removal','wait')) +); +$checkpoint->query_until( + qr/starting_checkpoint/, + q(\echo starting_checkpoint +checkpoint; +\q +)); + +# Wait until the checkpoint stops right before removing WAL segments. +note('waiting for injection_point'); +$node->wait_for_event('checkpointer', 'checkpoint-before-old-wal-removal'); +note('injection_point is reached'); + +# Try to advance the logical slot, but make it stop when it moves to the next +# WAL segment (this has to happen in the background, too). +my $logical = $node->background_psql('postgres'); +$logical->query_safe( + q{select injection_points_attach('logical-replication-slot-advance-segment','wait');} +); +$logical->query_until( + qr/get_changes/, + q( +\echo get_changes +select count(*) from pg_logical_slot_get_changes('slot_logical', null, null) \watch 1 +\q +)); + +# Wait until the slot's restart_lsn points to the next WAL segment. +note('waiting for injection_point'); +$node->wait_for_event('client backend', + 'logical-replication-slot-advance-segment'); +note('injection_point is reached'); + +# OK, we're in the right situation: time to advance the physical slot, which +# recalculates the required LSN, and then unblock the checkpoint, which +# removes the WAL still needed by the logical slot. +$node->safe_psql('postgres', + q{select pg_replication_slot_advance('slot_physical', pg_current_wal_lsn())} +); + +# Generate a long WAL record, spawning at least two pages for the follow-up +# post-recovery check. +$node->safe_psql('postgres', + q{select pg_logical_emit_message(false, '', repeat('123456789', 1000))}); + +# Continue the checkpoint and wait for its completion. +my $log_offset = -s $node->logfile; +$node->safe_psql('postgres', + q{select injection_points_wakeup('checkpoint-before-old-wal-removal')}); +$node->wait_for_log(qr/checkpoint complete/, $log_offset); + +# Abruptly stop the server. +$node->stop('immediate'); + +$node->start; + +eval { + $node->safe_psql('postgres', + q{select count(*) from pg_logical_slot_get_changes('slot_logical', null, null);} + ); +}; +is($@, '', "Logical slot still valid"); + +done_testing(); From 6cf5b10ce96c0aa24ce2129fcc7b53fc836608e5 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Sun, 20 Jul 2025 11:58:31 +0900 Subject: [PATCH 077/457] doc: Document reopen of output file via SIGHUP in pg_recvlogical. When pg_recvlogical receives a SIGHUP signal, it closes the current output file and reopens a new one. This is useful since it allows us to rotate the output file by renaming the current file and sending a SIGHUP. This behavior was previously undocumented. This commit adds the missing documentation. Back-patch to all supported versions. Author: Fujii Masao Reviewed-by: Shinya Kato Discussion: https://postgr.es/m/0977fc4f-1523-4ecd-8a0e-391af4976367@oss.nttdata.com Backpatch-through: 13 --- doc/src/sgml/ref/pg_recvlogical.sgml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/doc/src/sgml/ref/pg_recvlogical.sgml b/doc/src/sgml/ref/pg_recvlogical.sgml index f68182266a9fa..263ebdeeab4a8 100644 --- a/doc/src/sgml/ref/pg_recvlogical.sgml +++ b/doc/src/sgml/ref/pg_recvlogical.sgml @@ -53,6 +53,16 @@ PostgreSQL documentation (ControlC) or SIGTERM signal. + + + When pg_recvlogical receives + a SIGHUP signal, it closes the current output file + and opens a new one using the filename specified by + the option. This allows us to rotate + the output file by first renaming the current file and then sending + a SIGHUP signal to + pg_recvlogical. + From f9545e95c5e7ead0c19676ef8c966eb21f573954 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Mon, 21 Jul 2025 11:34:10 +0200 Subject: [PATCH 078/457] pg_dump: include comments on not-null constraints on domains, too MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit e5da0fe3c22b introduced catalog entries for not-null constraints on domains; but because commit b0e96f311985 (the original work for catalogued not-null constraints on tables) forgot to teach pg_dump to process the comments for them, this one also forgot. Add that now. We also need to teach repairDependencyLoop() about the new type of constraints being possible for domains. Backpatch-through: 17 Co-authored-by: jian he Co-authored-by: Álvaro Herrera Reported-by: jian he Discussion: https://postgr.es/m/CACJufxF-0bqVR=j4jonS6N2Ka6hHUpFyu3_3TWKNhOW_4yFSSg@mail.gmail.com --- src/bin/pg_dump/pg_dump.c | 160 +++++++++++++++++++++++-------- src/bin/pg_dump/pg_dump.h | 4 +- src/bin/pg_dump/pg_dump_sort.c | 15 +-- src/bin/pg_dump/t/002_pg_dump.pl | 30 +++++- 4 files changed, 160 insertions(+), 49 deletions(-) diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index c6226175528bb..d9864294fe2b8 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -47,6 +47,7 @@ #include "catalog/pg_authid_d.h" #include "catalog/pg_cast_d.h" #include "catalog/pg_class_d.h" +#include "catalog/pg_constraint_d.h" #include "catalog/pg_default_acl_d.h" #include "catalog/pg_largeobject_d.h" #include "catalog/pg_proc_d.h" @@ -6122,6 +6123,7 @@ getTypes(Archive *fout) */ tyinfo[i].nDomChecks = 0; tyinfo[i].domChecks = NULL; + tyinfo[i].notnull = NULL; if ((tyinfo[i].dobj.dump & DUMP_COMPONENT_DEFINITION) && tyinfo[i].typtype == TYPTYPE_DOMAIN) getDomainConstraints(fout, &(tyinfo[i])); @@ -8247,27 +8249,33 @@ addConstrChildIdxDeps(DumpableObject *dobj, const IndxInfo *refidx) static void getDomainConstraints(Archive *fout, TypeInfo *tyinfo) { - int i; ConstraintInfo *constrinfo; PQExpBuffer query = createPQExpBuffer(); PGresult *res; int i_tableoid, i_oid, i_conname, - i_consrc; + i_consrc, + i_convalidated, + i_contype; int ntups; if (!fout->is_prepared[PREPQUERY_GETDOMAINCONSTRAINTS]) { - /* Set up query for constraint-specific details */ - appendPQExpBufferStr(query, - "PREPARE getDomainConstraints(pg_catalog.oid) AS\n" - "SELECT tableoid, oid, conname, " - "pg_catalog.pg_get_constraintdef(oid) AS consrc, " - "convalidated " - "FROM pg_catalog.pg_constraint " - "WHERE contypid = $1 AND contype = 'c' " - "ORDER BY conname"); + /* + * Set up query for constraint-specific details. For servers 17 and + * up, domains have constraints of type 'n' as well as 'c', otherwise + * just the latter. + */ + appendPQExpBuffer(query, + "PREPARE getDomainConstraints(pg_catalog.oid) AS\n" + "SELECT tableoid, oid, conname, " + "pg_catalog.pg_get_constraintdef(oid) AS consrc, " + "convalidated, contype " + "FROM pg_catalog.pg_constraint " + "WHERE contypid = $1 AND contype IN (%s) " + "ORDER BY conname", + fout->remoteVersion < 170000 ? "'c'" : "'c', 'n'"); ExecuteSqlStatement(fout, query->data); @@ -8286,33 +8294,50 @@ getDomainConstraints(Archive *fout, TypeInfo *tyinfo) i_oid = PQfnumber(res, "oid"); i_conname = PQfnumber(res, "conname"); i_consrc = PQfnumber(res, "consrc"); + i_convalidated = PQfnumber(res, "convalidated"); + i_contype = PQfnumber(res, "contype"); constrinfo = (ConstraintInfo *) pg_malloc(ntups * sizeof(ConstraintInfo)); - - tyinfo->nDomChecks = ntups; tyinfo->domChecks = constrinfo; - for (i = 0; i < ntups; i++) + /* 'i' tracks result rows; 'j' counts CHECK constraints */ + for (int i = 0, j = 0; i < ntups; i++) { - bool validated = PQgetvalue(res, i, 4)[0] == 't'; - - constrinfo[i].dobj.objType = DO_CONSTRAINT; - constrinfo[i].dobj.catId.tableoid = atooid(PQgetvalue(res, i, i_tableoid)); - constrinfo[i].dobj.catId.oid = atooid(PQgetvalue(res, i, i_oid)); - AssignDumpId(&constrinfo[i].dobj); - constrinfo[i].dobj.name = pg_strdup(PQgetvalue(res, i, i_conname)); - constrinfo[i].dobj.namespace = tyinfo->dobj.namespace; - constrinfo[i].contable = NULL; - constrinfo[i].condomain = tyinfo; - constrinfo[i].contype = 'c'; - constrinfo[i].condef = pg_strdup(PQgetvalue(res, i, i_consrc)); - constrinfo[i].confrelid = InvalidOid; - constrinfo[i].conindex = 0; - constrinfo[i].condeferrable = false; - constrinfo[i].condeferred = false; - constrinfo[i].conislocal = true; - - constrinfo[i].separate = !validated; + bool validated = PQgetvalue(res, i, i_convalidated)[0] == 't'; + char contype = (PQgetvalue(res, i, i_contype))[0]; + ConstraintInfo *constraint; + + if (contype == CONSTRAINT_CHECK) + { + constraint = &constrinfo[j++]; + tyinfo->nDomChecks++; + } + else + { + Assert(contype == CONSTRAINT_NOTNULL); + Assert(tyinfo->notnull == NULL); + /* use last item in array for the not-null constraint */ + tyinfo->notnull = &(constrinfo[ntups - 1]); + constraint = tyinfo->notnull; + } + + constraint->dobj.objType = DO_CONSTRAINT; + constraint->dobj.catId.tableoid = atooid(PQgetvalue(res, i, i_tableoid)); + constraint->dobj.catId.oid = atooid(PQgetvalue(res, i, i_oid)); + AssignDumpId(&(constraint->dobj)); + constraint->dobj.name = pg_strdup(PQgetvalue(res, i, i_conname)); + constraint->dobj.namespace = tyinfo->dobj.namespace; + constraint->contable = NULL; + constraint->condomain = tyinfo; + constraint->contype = contype; + constraint->condef = pg_strdup(PQgetvalue(res, i, i_consrc)); + constraint->confrelid = InvalidOid; + constraint->conindex = 0; + constraint->condeferrable = false; + constraint->condeferred = false; + constraint->conislocal = true; + + constraint->separate = !validated; /* * Make the domain depend on the constraint, ensuring it won't be @@ -8321,8 +8346,7 @@ getDomainConstraints(Archive *fout, TypeInfo *tyinfo) * anyway, so this doesn't matter. */ if (validated) - addObjectDependency(&tyinfo->dobj, - constrinfo[i].dobj.dumpId); + addObjectDependency(&tyinfo->dobj, constraint->dobj.dumpId); } PQclear(res); @@ -12517,8 +12541,36 @@ dumpDomain(Archive *fout, const TypeInfo *tyinfo) appendPQExpBuffer(q, " COLLATE %s", fmtQualifiedDumpable(coll)); } + /* + * Print a not-null constraint if there's one. In servers older than 17 + * these don't have names, so just print it unadorned; in newer ones they + * do, but most of the time it's going to be the standard generated one, + * so omit the name in that case also. + */ if (typnotnull[0] == 't') - appendPQExpBufferStr(q, " NOT NULL"); + { + if (fout->remoteVersion < 170000 || tyinfo->notnull == NULL) + appendPQExpBufferStr(q, " NOT NULL"); + else + { + ConstraintInfo *notnull = tyinfo->notnull; + + if (!notnull->separate) + { + char *default_name; + + /* XXX should match ChooseConstraintName better */ + default_name = psprintf("%s_not_null", tyinfo->dobj.name); + + if (strcmp(default_name, notnull->dobj.name) == 0) + appendPQExpBufferStr(q, " NOT NULL"); + else + appendPQExpBuffer(q, " CONSTRAINT %s %s", + fmtId(notnull->dobj.name), notnull->condef); + free(default_name); + } + } + } if (typdefault != NULL) { @@ -12538,7 +12590,7 @@ dumpDomain(Archive *fout, const TypeInfo *tyinfo) { ConstraintInfo *domcheck = &(tyinfo->domChecks[i]); - if (!domcheck->separate) + if (!domcheck->separate && domcheck->contype == 'c') appendPQExpBuffer(q, "\n\tCONSTRAINT %s %s", fmtId(domcheck->dobj.name), domcheck->condef); } @@ -12602,6 +12654,25 @@ dumpDomain(Archive *fout, const TypeInfo *tyinfo) destroyPQExpBuffer(conprefix); } + /* + * And a comment on the not-null constraint, if there's one -- but only if + * the constraint itself was dumped here + */ + if (tyinfo->notnull != NULL && !tyinfo->notnull->separate) + { + PQExpBuffer conprefix = createPQExpBuffer(); + + appendPQExpBuffer(conprefix, "CONSTRAINT %s ON DOMAIN", + fmtId(tyinfo->notnull->dobj.name)); + + if (tyinfo->notnull->dobj.dump & DUMP_COMPONENT_COMMENT) + dumpComment(fout, conprefix->data, qtypname, + tyinfo->dobj.namespace->dobj.name, + tyinfo->rolname, + tyinfo->notnull->dobj.catId, 0, tyinfo->dobj.dumpId); + destroyPQExpBuffer(conprefix); + } + destroyPQExpBuffer(q); destroyPQExpBuffer(delq); destroyPQExpBuffer(query); @@ -18463,14 +18534,23 @@ dumpConstraint(Archive *fout, const ConstraintInfo *coninfo) .dropStmt = delq->data)); } } - else if (coninfo->contype == 'c' && tbinfo == NULL) + else if (tbinfo == NULL) { - /* CHECK constraint on a domain */ + /* CHECK, NOT NULL constraint on a domain */ TypeInfo *tyinfo = coninfo->condomain; + Assert(coninfo->contype == 'c' || coninfo->contype == 'n'); + /* Ignore if not to be dumped separately */ if (coninfo->separate) { + const char *keyword; + + if (coninfo->contype == 'c') + keyword = "CHECK CONSTRAINT"; + else + keyword = "CONSTRAINT"; + appendPQExpBuffer(q, "ALTER DOMAIN %s\n", fmtQualifiedDumpable(tyinfo)); appendPQExpBuffer(q, " ADD CONSTRAINT %s %s;\n", @@ -18489,7 +18569,7 @@ dumpConstraint(Archive *fout, const ConstraintInfo *coninfo) ARCHIVE_OPTS(.tag = tag, .namespace = tyinfo->dobj.namespace->dobj.name, .owner = tyinfo->rolname, - .description = "CHECK CONSTRAINT", + .description = keyword, .section = SECTION_POST_DATA, .createStmt = q->data, .dropStmt = delq->data)); diff --git a/src/bin/pg_dump/pg_dump.h b/src/bin/pg_dump/pg_dump.h index 39eef1d6617f4..2370c98d192a6 100644 --- a/src/bin/pg_dump/pg_dump.h +++ b/src/bin/pg_dump/pg_dump.h @@ -222,7 +222,9 @@ typedef struct _typeInfo bool isDefined; /* true if typisdefined */ /* If needed, we'll create a "shell type" entry for it; link that here: */ struct _shellTypeInfo *shellType; /* shell-type entry, or NULL */ - /* If it's a domain, we store links to its constraints here: */ + /* If it's a domain, its not-null constraint is here: */ + struct _constraintInfo *notnull; + /* If it's a domain, we store links to its CHECK constraints here: */ int nDomChecks; struct _constraintInfo *domChecks; } TypeInfo; diff --git a/src/bin/pg_dump/pg_dump_sort.c b/src/bin/pg_dump/pg_dump_sort.c index 538e7dcb49357..f99a0797ea7fb 100644 --- a/src/bin/pg_dump/pg_dump_sort.c +++ b/src/bin/pg_dump/pg_dump_sort.c @@ -907,7 +907,7 @@ repairTableAttrDefMultiLoop(DumpableObject *tableobj, } /* - * CHECK constraints on domains work just like those on tables ... + * CHECK, NOT NULL constraints on domains work just like those on tables ... */ static void repairDomainConstraintLoop(DumpableObject *domainobj, @@ -1173,11 +1173,12 @@ repairDependencyLoop(DumpableObject **loop, } } - /* Domain and CHECK constraint */ + /* Domain and CHECK or NOT NULL constraint */ if (nLoop == 2 && loop[0]->objType == DO_TYPE && loop[1]->objType == DO_CONSTRAINT && - ((ConstraintInfo *) loop[1])->contype == 'c' && + (((ConstraintInfo *) loop[1])->contype == 'c' || + ((ConstraintInfo *) loop[1])->contype == 'n') && ((ConstraintInfo *) loop[1])->condomain == (TypeInfo *) loop[0]) { repairDomainConstraintLoop(loop[0], loop[1]); @@ -1186,14 +1187,15 @@ repairDependencyLoop(DumpableObject **loop, if (nLoop == 2 && loop[1]->objType == DO_TYPE && loop[0]->objType == DO_CONSTRAINT && - ((ConstraintInfo *) loop[0])->contype == 'c' && + (((ConstraintInfo *) loop[0])->contype == 'c' || + ((ConstraintInfo *) loop[0])->contype == 'n') && ((ConstraintInfo *) loop[0])->condomain == (TypeInfo *) loop[1]) { repairDomainConstraintLoop(loop[1], loop[0]); return; } - /* Indirect loop involving domain and CHECK constraint */ + /* Indirect loop involving domain and CHECK or NOT NULL constraint */ if (nLoop > 2) { for (i = 0; i < nLoop; i++) @@ -1203,7 +1205,8 @@ repairDependencyLoop(DumpableObject **loop, for (j = 0; j < nLoop; j++) { if (loop[j]->objType == DO_CONSTRAINT && - ((ConstraintInfo *) loop[j])->contype == 'c' && + (((ConstraintInfo *) loop[j])->contype == 'c' || + ((ConstraintInfo *) loop[j])->contype == 'n') && ((ConstraintInfo *) loop[j])->condomain == (TypeInfo *) loop[i]) { repairDomainConstraintMultiLoop(loop[i], loop[j]); diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl index 2485d8f360e5a..771cdcecb6042 100644 --- a/src/bin/pg_dump/t/002_pg_dump.pl +++ b/src/bin/pg_dump/t/002_pg_dump.pl @@ -2377,17 +2377,19 @@ create_sql => 'CREATE DOMAIN dump_test.us_postal_code AS TEXT COLLATE "C" DEFAULT \'10014\' + CONSTRAINT nn NOT NULL CHECK(VALUE ~ \'^\d{5}$\' OR VALUE ~ \'^\d{5}-\d{4}$\'); + COMMENT ON CONSTRAINT nn + ON DOMAIN dump_test.us_postal_code IS \'not null\'; COMMENT ON CONSTRAINT us_postal_code_check ON DOMAIN dump_test.us_postal_code IS \'check it\';', regexp => qr/^ - \QCREATE DOMAIN dump_test.us_postal_code AS text COLLATE pg_catalog."C" DEFAULT '10014'::text\E\n\s+ + \QCREATE DOMAIN dump_test.us_postal_code AS text COLLATE pg_catalog."C" CONSTRAINT nn NOT NULL DEFAULT '10014'::text\E\n\s+ \QCONSTRAINT us_postal_code_check CHECK \E \Q(((VALUE ~ '^\d{5}\E \$\Q'::text) OR (VALUE ~ '^\d{5}-\d{4}\E\$ \Q'::text)));\E(.|\n)* - \QCOMMENT ON CONSTRAINT us_postal_code_check ON DOMAIN dump_test.us_postal_code IS 'check it';\E /xm, like => { %full_runs, %dump_test_schema_runs, section_pre_data => 1, }, @@ -2397,6 +2399,30 @@ }, }, + 'COMMENT ON CONSTRAINT ON DOMAIN (1)' => { + regexp => qr/^ + \QCOMMENT ON CONSTRAINT nn ON DOMAIN dump_test.us_postal_code IS 'not null';\E + /xm, + like => + { %full_runs, %dump_test_schema_runs, section_pre_data => 1, }, + unlike => { + exclude_dump_test_schema => 1, + only_dump_measurement => 1, + }, + }, + + 'COMMENT ON CONSTRAINT ON DOMAIN (2)' => { + regexp => qr/^ + \QCOMMENT ON CONSTRAINT us_postal_code_check ON DOMAIN dump_test.us_postal_code IS 'check it';\E + /xm, + like => + { %full_runs, %dump_test_schema_runs, section_pre_data => 1, }, + unlike => { + exclude_dump_test_schema => 1, + only_dump_measurement => 1, + }, + }, + 'CREATE FUNCTION dump_test.pltestlang_call_handler' => { create_order => 17, create_sql => 'CREATE FUNCTION dump_test.pltestlang_call_handler() From 0ded7615d8cafbb1a5ae3d0ba0a931eb146e63a5 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 22 Jul 2025 14:00:04 +0900 Subject: [PATCH 079/457] ecpg: Fix NULL pointer dereference during connection lookup ECPGconnect() caches established connections to the server, supporting the case of a NULL connection name when a database name is not specified by its caller. A follow-up call to ECPGget_PGconn() to get an established connection from the cached set with a non-NULL name could cause a NULL pointer dereference if a NULL connection was listed in the cache and checked for a match. At least two connections are necessary to reproduce the issue: one with a NULL name and one with a non-NULL name. Author: Aleksander Alekseev Discussion: https://postgr.es/m/CAJ7c6TNvFTPUTZQuNAoqgzaSGz-iM4XR61D7vEj5PsQXwg2RyA@mail.gmail.com Backpatch-through: 13 --- src/interfaces/ecpg/ecpglib/connect.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/interfaces/ecpg/ecpglib/connect.c b/src/interfaces/ecpg/ecpglib/connect.c index 2bbb70333dcb4..713cbbf6360be 100644 --- a/src/interfaces/ecpg/ecpglib/connect.c +++ b/src/interfaces/ecpg/ecpglib/connect.c @@ -58,7 +58,12 @@ ecpg_get_connection_nr(const char *connection_name) for (con = all_connections; con != NULL; con = con->next) { - if (strcmp(connection_name, con->name) == 0) + /* + * Check for the case of a NULL connection name, stored as such in + * the connection information by ECPGconnect() when the database + * name is not specified by its caller. + */ + if (con->name != NULL && strcmp(connection_name, con->name) == 0) break; } ret = con; From 282b10cb055e79d49c73f4652e841432321afcd9 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 22 Jul 2025 14:34:19 +0900 Subject: [PATCH 080/457] doc: Inform about aminsertcleanup optional NULLness This index AM callback has been introduced in c1ec02be1d79 and it is optional, currently only being used by BRIN. Optional callbacks are documented with NULL as possible value in amapi.h and indexam.sgml, but this callback has missed this part of the description. Reported-by: Peter Smith Reviewed-by: Japin Li Discussion: https://postgr.es/m/CAHut+PvgYcPmPDi1YdHMJY5upnyGRpc0N8pk1xNB11xDSBwNog@mail.gmail.com Backpatch-through: 17 --- doc/src/sgml/indexam.sgml | 2 +- src/include/access/amapi.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/indexam.sgml b/doc/src/sgml/indexam.sgml index 1aa4741a8eaee..63d7e376f195e 100644 --- a/doc/src/sgml/indexam.sgml +++ b/doc/src/sgml/indexam.sgml @@ -147,7 +147,7 @@ typedef struct IndexAmRoutine ambuild_function ambuild; ambuildempty_function ambuildempty; aminsert_function aminsert; - aminsertcleanup_function aminsertcleanup; + aminsertcleanup_function aminsertcleanup; /* can be NULL */ ambulkdelete_function ambulkdelete; amvacuumcleanup_function amvacuumcleanup; amcanreturn_function amcanreturn; /* can be NULL */ diff --git a/src/include/access/amapi.h b/src/include/access/amapi.h index 52916bab7a31f..70949de56ac70 100644 --- a/src/include/access/amapi.h +++ b/src/include/access/amapi.h @@ -293,7 +293,7 @@ typedef struct IndexAmRoutine ambuild_function ambuild; ambuildempty_function ambuildempty; aminsert_function aminsert; - aminsertcleanup_function aminsertcleanup; + aminsertcleanup_function aminsertcleanup; /* can be NULL */ ambulkdelete_function ambulkdelete; amvacuumcleanup_function amvacuumcleanup; amcanreturn_function amcanreturn; /* can be NULL */ From 0e8c6565513d2c8e473de29b317474b277311fc0 Mon Sep 17 00:00:00 2001 From: Amit Kapila Date: Tue, 22 Jul 2025 05:56:22 +0000 Subject: [PATCH 081/457] Doc: Fix logical replication examples. The definition of \dRp+ was modified in commit 7054186c4e. This patch updates the column list and row filter examples to align with the revised definition. Author: Shlok Kyal Reviewed by: Peter Smith Backpatch-through: 18, where it was introduced Discussion: https://postgr.es/m/CANhcyEUvqkSO6b9zi_fs_BBPEge5acj4mf8QKmq2TX-7axa7EQ@mail.gmail.com --- doc/src/sgml/logical-replication.sgml | 42 +++++++++++++-------------- 1 file changed, 21 insertions(+), 21 deletions(-) diff --git a/doc/src/sgml/logical-replication.sgml b/doc/src/sgml/logical-replication.sgml index a2e49ef7eab54..c08435c764f4b 100644 --- a/doc/src/sgml/logical-replication.sgml +++ b/doc/src/sgml/logical-replication.sgml @@ -1048,28 +1048,28 @@ HINT: To initiate replication, you must manually create the replication slot, e defined) for each publication. 5) AND (c = 'NSW'::text)) + "public.t1" WHERE ((a > 5) AND (c = 'NSW'::text)) - Publication p2 - Owner | All tables | Inserts | Updates | Deletes | Truncates | Via root -----------+------------+---------+---------+---------+-----------+---------- - postgres | f | t | t | t | t | f + Publication p2 + Owner | All tables | Inserts | Updates | Deletes | Truncates | Generated columns | Via root +----------+------------+---------+---------+---------+-----------+-------------------+---------- + postgres | f | t | t | t | t | none | f Tables: - "public.t1" - "public.t2" WHERE (e = 99) + "public.t1" + "public.t2" WHERE (e = 99) - Publication p3 - Owner | All tables | Inserts | Updates | Deletes | Truncates | Via root -----------+------------+---------+---------+---------+-----------+---------- - postgres | f | t | t | t | t | f + Publication p3 + Owner | All tables | Inserts | Updates | Deletes | Truncates | Generated columns | Via root +----------+------------+---------+---------+---------+-----------+-------------------+---------- + postgres | f | t | t | t | t | none | f Tables: - "public.t2" WHERE (d = 10) - "public.t3" WHERE (g = 10) + "public.t2" WHERE (d = 10) + "public.t3" WHERE (g = 10) ]]> @@ -1491,10 +1491,10 @@ Publications: for each publication. /* pub # */ \dRp+ - Publication p1 - Owner | All tables | Inserts | Updates | Deletes | Truncates | Via root -----------+------------+---------+---------+---------+-----------+---------- - postgres | f | t | t | t | t | f + Publication p1 + Owner | All tables | Inserts | Updates | Deletes | Truncates | Generated columns | Via root +----------+------------+---------+---------+---------+-----------+-------------------+---------- + postgres | f | t | t | t | t | none | f Tables: "public.t1" (id, a, b, d) From 7b98c5536818287998ca868dc96a8dc20ea78f0b Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Tue, 22 Jul 2025 08:30:52 -0400 Subject: [PATCH 082/457] aio: Fix assertion, clarify README The assertion wouldn't have triggered for a long while yet, but this won't accidentally fail to detect the issue if/when it occurs. Author: Matthias van de Meent Discussion: https://postgr.es/m/CAEze2Wj-43JV4YufW23gm=Uwr7Lkj+p0yKctKHxNm1rwFC+_DQ@mail.gmail.com Backpatch-through: 18 --- src/backend/storage/aio/README.md | 5 +++-- src/include/storage/aio.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/backend/storage/aio/README.md b/src/backend/storage/aio/README.md index f10b5c7e31ec7..72ae3b3737d51 100644 --- a/src/backend/storage/aio/README.md +++ b/src/backend/storage/aio/README.md @@ -94,7 +94,7 @@ pgaio_io_register_callbacks(ioh, PGAIO_HCB_SHARED_BUFFER_READV, 0); * * In this example we're reading only a single buffer, hence the 1. */ -pgaio_io_set_handle_data_32(ioh, (uint32 *) buffer, 1); +pgaio_io_set_handle_data_32(ioh, (uint32 *) &buffer, 1); /* * Pass the AIO handle to lower-level function. When operating on the level of @@ -119,8 +119,9 @@ pgaio_io_set_handle_data_32(ioh, (uint32 *) buffer, 1); * e.g. due to reaching a limit on the number of unsubmitted IOs, and even * complete before smgrstartreadv() returns. */ +void *page = BufferGetBlock(buffer); smgrstartreadv(ioh, operation->smgr, forknum, blkno, - BufferGetBlock(buffer), 1); + &page, 1); /* * To benefit from AIO, it is beneficial to perform other work, including diff --git a/src/include/storage/aio.h b/src/include/storage/aio.h index e7a0a234b6cf2..2933eea064910 100644 --- a/src/include/storage/aio.h +++ b/src/include/storage/aio.h @@ -201,7 +201,7 @@ typedef enum PgAioHandleCallbackID } PgAioHandleCallbackID; #define PGAIO_HCB_MAX PGAIO_HCB_LOCAL_BUFFER_READV -StaticAssertDecl(PGAIO_HCB_MAX <= (1 << PGAIO_RESULT_ID_BITS), +StaticAssertDecl(PGAIO_HCB_MAX < (1 << PGAIO_RESULT_ID_BITS), "PGAIO_HCB_MAX is too big for PGAIO_RESULT_ID_BITS"); From 3d039b53a1339791f89b68580ba462f2bb4dfa52 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 23 Jul 2025 15:44:29 -0400 Subject: [PATCH 083/457] Fix build breakage on Solaris-alikes with late-model GCC. Solaris has never bothered to add "const" to the second argument of PAM conversation procs, as all other Unixen did decades ago. This resulted in an "incompatible pointer" compiler warning when building --with-pam, but had no more serious effect than that, so we never did anything about it. However, as of GCC 14 the case is an error not warning by default. To complicate matters, recent OpenIndiana (and maybe illumos in general?) *does* supply the "const" by default, so we can't just assume that platforms using our solaris template need help. What we can do, short of building a configure-time probe, is to make solaris.h #define _PAM_LEGACY_NONCONST, which causes OpenIndiana's pam_appl.h to revert to the traditional definition, and hopefully will have no effect anywhere else. Then we can use that same symbol to control whether we include "const" in the declaration of pam_passwd_conv_proc(). Bug: #18995 Reported-by: Andrew Watkins Author: Tom Lane Discussion: https://postgr.es/m/18995-82058da9ab4337a7@postgresql.org Backpatch-through: 13 --- src/backend/libpq/auth.c | 12 ++++++++++-- src/include/port/solaris.h | 9 +++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/src/backend/libpq/auth.c b/src/backend/libpq/auth.c index 9f4d05ffbd453..4da46666439db 100644 --- a/src/backend/libpq/auth.c +++ b/src/backend/libpq/auth.c @@ -94,8 +94,16 @@ static int auth_peer(hbaPort *port); #define PGSQL_PAM_SERVICE "postgresql" /* Service name passed to PAM */ +/* Work around original Solaris' lack of "const" in the conv_proc signature */ +#ifdef _PAM_LEGACY_NONCONST +#define PG_PAM_CONST +#else +#define PG_PAM_CONST const +#endif + static int CheckPAMAuth(Port *port, const char *user, const char *password); -static int pam_passwd_conv_proc(int num_msg, const struct pam_message **msg, +static int pam_passwd_conv_proc(int num_msg, + PG_PAM_CONST struct pam_message **msg, struct pam_response **resp, void *appdata_ptr); static struct pam_conv pam_passw_conv = { @@ -1917,7 +1925,7 @@ auth_peer(hbaPort *port) */ static int -pam_passwd_conv_proc(int num_msg, const struct pam_message **msg, +pam_passwd_conv_proc(int num_msg, PG_PAM_CONST struct pam_message **msg, struct pam_response **resp, void *appdata_ptr) { const char *passwd; diff --git a/src/include/port/solaris.h b/src/include/port/solaris.h index e63a3bd824d6d..8ff40007c7f6a 100644 --- a/src/include/port/solaris.h +++ b/src/include/port/solaris.h @@ -24,3 +24,12 @@ #if defined(__i386__) #include #endif + +/* + * On original Solaris, PAM conversation procs lack a "const" in their + * declaration; but recent OpenIndiana versions put it there by default. + * The least messy way to deal with this is to define _PAM_LEGACY_NONCONST, + * which causes OpenIndiana to declare pam_conv per the Solaris tradition, + * and also use that symbol to control omitting the "const" in our own code. + */ +#define _PAM_LEGACY_NONCONST 1 From a8acfb133cf91e53d28ec7025188bfffd747a11a Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Thu, 24 Jul 2025 11:43:20 +0900 Subject: [PATCH 084/457] doc: Add missing index entries and fix title formatting in pg_buffercache docs. This commit adds missing index entries for the functions pg_buffercache_numa() and pg_buffercache_usage_counts() in the pg_buffercache documentation. It also makes the function titles consistent by adding parentheses after function names where they were previously missing. Author: Fujii Masao Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/7d19af4b-7da3-4862-9f52-ff958960bd8d@oss.nttdata.com Backpatch-through: 18 --- doc/src/sgml/pgbuffercache.sgml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/pgbuffercache.sgml b/doc/src/sgml/pgbuffercache.sgml index 546ace8369e28..eeb85a0e04908 100644 --- a/doc/src/sgml/pgbuffercache.sgml +++ b/doc/src/sgml/pgbuffercache.sgml @@ -19,10 +19,18 @@ pg_buffercache_pages + + pg_buffercache_numa + + pg_buffercache_summary + + pg_buffercache_usage_counts + + pg_buffercache_evict @@ -489,7 +497,7 @@ - The <structname>pg_buffercache_evict_relation</structname> Function + The <structname>pg_buffercache_evict_relation()</structname> Function The pg_buffercache_evict_relation() function is very similar to the pg_buffercache_evict() function. The @@ -507,7 +515,7 @@ - The <structname>pg_buffercache_evict_all</structname> Function + The <structname>pg_buffercache_evict_all()</structname> Function The pg_buffercache_evict_all() function is very similar to the pg_buffercache_evict() function. The From 33f74b806ce3facfc0deb1412ed85d19a44c0553 Mon Sep 17 00:00:00 2001 From: Amit Kapila Date: Thu, 24 Jul 2025 08:50:40 +0000 Subject: [PATCH 085/457] Fix duplicate transaction replay during pg_createsubscriber. Previously, the tool could replay the same transaction twice, once during recovery, then again during replication after the subscriber was set up. This occurred because the same recovery_target_lsn was used both to finalize recovery and to start replication. If recovery_target_inclusive = true, the transaction at that LSN would be applied during recovery and then sent again by the publisher leading to duplication. To prevent this, we now set recovery_target_inclusive = false. This ensures the transaction at recovery_target_lsn is not reapplied during recovery, avoiding duplication when replication begins. Bug #18897 Reported-by: Zane Duffield Author: Shlok Kyal Reviewed-by: vignesh C Reviewed-by: Amit Kapila Backpatch-through: 17, where it was introduced Discussion: https://postgr.es/m/18897-d3db67535860dddb@postgresql.org --- src/bin/pg_basebackup/pg_createsubscriber.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/bin/pg_basebackup/pg_createsubscriber.c b/src/bin/pg_basebackup/pg_createsubscriber.c index 11f71c0380181..1d0fe44b6d33a 100644 --- a/src/bin/pg_basebackup/pg_createsubscriber.c +++ b/src/bin/pg_basebackup/pg_createsubscriber.c @@ -1250,8 +1250,17 @@ setup_recovery(const struct LogicalRepInfo *dbinfo, const char *datadir, const c appendPQExpBufferStr(recoveryconfcontents, "recovery_target = ''\n"); appendPQExpBufferStr(recoveryconfcontents, "recovery_target_timeline = 'latest'\n"); + + /* + * Set recovery_target_inclusive = false to avoid reapplying the + * transaction committed at 'lsn' after subscription is enabled. This is + * because the provided 'lsn' is also used as the replication start point + * for the subscription. So, the server can send the transaction committed + * at that 'lsn' after replication is started which can lead to applying + * the same transaction twice if we keep recovery_target_inclusive = true. + */ appendPQExpBufferStr(recoveryconfcontents, - "recovery_target_inclusive = true\n"); + "recovery_target_inclusive = false\n"); appendPQExpBufferStr(recoveryconfcontents, "recovery_target_action = promote\n"); appendPQExpBufferStr(recoveryconfcontents, "recovery_target_name = ''\n"); From 2973b1cd3a8005a35a9303c37602468aeb01dfeb Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 25 Jul 2025 11:17:51 +0900 Subject: [PATCH 086/457] Lower bounds related to pgstats kinds This commit changes stats kinds to have the following bounds, making their handling in core cheaper by default: - PGSTAT_KIND_CUSTOM_MIN 128 -> 24 - PGSTAT_KIND_MAX 256 -> 32 The original numbers were rather high, and showed an impact on performance in pgstat_report_stat() for the case of simple queries with its early-exit path if there are no pending statistics to flush. This logic will be improved more in a follow-up commit to bring the performance of pgstat_report_stat() on par with v17 and older versions. Lowering the bounds is a change worth doing on its own, independently of the other improvement. These new numbers should be enough to leave some room for the following years for built-in and custom stats kinds, with stable ID numbers. At least that should be enough to start with this facility for extension developers. It can be always increased in the tree depending on the requirements wanted. Per discussion with Andres Freund and Bertrand Drouvot. Discussion: https://postgr.es/m/eb224uegsga2hgq7dfq3ps5cduhpqej7ir2hjxzzozjthrekx5@dysei6buqthe Backpatch-through: 18 --- src/include/utils/pgstat_kind.h | 6 +++--- src/test/modules/injection_points/injection_stats.c | 2 +- src/test/modules/injection_points/injection_stats_fixed.c | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/include/utils/pgstat_kind.h b/src/include/utils/pgstat_kind.h index f44169fd5a3c7..eb5f0b3ae6db7 100644 --- a/src/include/utils/pgstat_kind.h +++ b/src/include/utils/pgstat_kind.h @@ -18,7 +18,7 @@ /* Range of IDs allowed, for built-in and custom kinds */ #define PGSTAT_KIND_MIN 1 /* Minimum ID allowed */ -#define PGSTAT_KIND_MAX 256 /* Maximum ID allowed */ +#define PGSTAT_KIND_MAX 32 /* Maximum ID allowed */ /* use 0 for INVALID, to catch zero-initialized data */ #define PGSTAT_KIND_INVALID 0 @@ -46,7 +46,7 @@ /* Custom stats kinds */ /* Range of IDs allowed for custom stats kinds */ -#define PGSTAT_KIND_CUSTOM_MIN 128 +#define PGSTAT_KIND_CUSTOM_MIN 24 #define PGSTAT_KIND_CUSTOM_MAX PGSTAT_KIND_MAX #define PGSTAT_KIND_CUSTOM_SIZE (PGSTAT_KIND_CUSTOM_MAX - PGSTAT_KIND_CUSTOM_MIN + 1) @@ -55,7 +55,7 @@ * development and have not reserved their own unique kind ID yet. See: * https://wiki.postgresql.org/wiki/CustomCumulativeStats */ -#define PGSTAT_KIND_EXPERIMENTAL 128 +#define PGSTAT_KIND_EXPERIMENTAL 24 static inline bool pgstat_is_kind_builtin(PgStat_Kind kind) diff --git a/src/test/modules/injection_points/injection_stats.c b/src/test/modules/injection_points/injection_stats.c index 14903c629e0d1..e3947b23ba573 100644 --- a/src/test/modules/injection_points/injection_stats.c +++ b/src/test/modules/injection_points/injection_stats.c @@ -59,7 +59,7 @@ static const PgStat_KindInfo injection_stats = { /* * Kind ID reserved for statistics of injection points. */ -#define PGSTAT_KIND_INJECTION 129 +#define PGSTAT_KIND_INJECTION 25 /* Track if stats are loaded */ static bool inj_stats_loaded = false; diff --git a/src/test/modules/injection_points/injection_stats_fixed.c b/src/test/modules/injection_points/injection_stats_fixed.c index 3d0c01bdd05ab..bc54c79d190b9 100644 --- a/src/test/modules/injection_points/injection_stats_fixed.c +++ b/src/test/modules/injection_points/injection_stats_fixed.c @@ -64,7 +64,7 @@ static const PgStat_KindInfo injection_stats_fixed = { /* * Kind ID reserved for statistics of injection points. */ -#define PGSTAT_KIND_INJECTION_FIXED 130 +#define PGSTAT_KIND_INJECTION_FIXED 26 /* Track if fixed-numbered stats are loaded */ static bool inj_fixed_loaded = false; From f7dfccf9605dab54956321e236de3415a2ba2fa3 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 25 Jul 2025 16:17:31 +0900 Subject: [PATCH 087/457] Fix assertion failure with latch wait in single-user mode MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LatchWaitSetPostmasterDeathPos, the latch event position for the postmaster death event, is initialized under IsUnderPostmaster. WaitLatch() considered it as a valid wait target in single-user mode (!IsUnderPostmaster), which was incorrect. One code path found to fail with an assertion failure is a database drop in single-user mode while waiting in WaitForProcSignalBarrier() after the drop. Oversight in commit 84e5b2f07a5e. Author: Patrick Stählin Co-authored-by: Ronan Dunklau Discussion: https://postgr.es/m/18996-3a2744c8140488de@postgresql.org Backpatch-through: 18 --- src/backend/storage/ipc/latch.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/backend/storage/ipc/latch.c b/src/backend/storage/ipc/latch.c index c6aefd2f688dd..beadeb5e46afa 100644 --- a/src/backend/storage/ipc/latch.c +++ b/src/backend/storage/ipc/latch.c @@ -187,9 +187,11 @@ WaitLatch(Latch *latch, int wakeEvents, long timeout, if (!(wakeEvents & WL_LATCH_SET)) latch = NULL; ModifyWaitEvent(LatchWaitSet, LatchWaitSetLatchPos, WL_LATCH_SET, latch); - ModifyWaitEvent(LatchWaitSet, LatchWaitSetPostmasterDeathPos, - (wakeEvents & (WL_EXIT_ON_PM_DEATH | WL_POSTMASTER_DEATH)), - NULL); + + if (IsUnderPostmaster) + ModifyWaitEvent(LatchWaitSet, LatchWaitSetPostmasterDeathPos, + (wakeEvents & (WL_EXIT_ON_PM_DEATH | WL_POSTMASTER_DEATH)), + NULL); if (WaitEventSetWait(LatchWaitSet, (wakeEvents & WL_TIMEOUT) ? timeout : -1, From 75f633f54aaae4d20ea0ade9a953afa73e3a66e8 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Fri, 25 Jul 2025 18:38:36 +0900 Subject: [PATCH 088/457] Fix background worker not restarting after crash-and-restart cycle. Previously, if a background worker crashed (e.g., due to a SIGKILL) and the server restarted due to restart_after_crash being enabled, the worker was not restarted as expected. Background workers without the never-restart flag should automatically restart in this case. This issue was introduced in commit 28a520c0b77, which failed to reset the rw_pid field in the RegisteredBgWorker struct for the crashed worker. This commit fixes the problem by resetting rw_pid for all eligible background workers during the crash-and-restart cycle. Back-patched to v18, where the bug was introduced. Bug fix patches were proposed by Andrey Rudometov and ChangAo Chen, but this commit uses a different approach. Reported-by: Andrey Rudometov Reported-by: ChangAo Chen Author: Andrey Rudometov Author: ChangAo Chen Co-authored-by: Fujii Masao Reviewed-by: ChangAo Chen Reviewed-by: Shveta Malik Discussion: https://postgr.es/m/CAF6JsWiO=i24qYitWe6ns1sXqcL86rYxdyU+pNYk-WueKPSySg@mail.gmail.com Discussion: https://postgr.es/m/tencent_E00A056B3953EE6440F0F40F80EC30427D09@qq.com Backpatch-through: 18 --- src/backend/postmaster/bgworker.c | 1 + src/backend/postmaster/postmaster.c | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/src/backend/postmaster/bgworker.c b/src/backend/postmaster/bgworker.c index 116ddf7b835f1..1ad65c237c34e 100644 --- a/src/backend/postmaster/bgworker.c +++ b/src/backend/postmaster/bgworker.c @@ -613,6 +613,7 @@ ResetBackgroundWorkerCrashTimes(void) * resetting. */ rw->rw_crashed_at = 0; + rw->rw_pid = 0; /* * If there was anyone waiting for it, they're history. diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c index cca9b946e5384..e01d9f0cfe81e 100644 --- a/src/backend/postmaster/postmaster.c +++ b/src/backend/postmaster/postmaster.c @@ -2630,6 +2630,13 @@ CleanupBackend(PMChild *bp, } bp = NULL; + /* + * In a crash case, exit immediately without resetting background worker + * state. However, if restart_after_crash is enabled, the background + * worker state (e.g., rw_pid) still needs be reset so the worker can + * restart after crash recovery. This reset is handled in + * ResetBackgroundWorkerCrashTimes(), not here. + */ if (crashed) { HandleChildCrash(bp_pid, exitstatus, procname); From bae50782170c9de8aa13700423923a5bb9d6b9e9 Mon Sep 17 00:00:00 2001 From: Alexander Korotkov Date: Sun, 27 Jul 2025 15:10:01 +0300 Subject: [PATCH 089/457] Limit checkpointer requests queue size If the number of sync requests is big enough, the palloc() call in AbsorbSyncRequests() will attempt to allocate more than 1 GB of memory, resulting in failure. This can lead to an infinite loop in the checkpointer process, as it repeatedly fails to absorb the pending requests. This commit limits the checkpointer requests queue size to 10M items. In addition to preventing the palloc() failure, this change helps to avoid long queue processing time. Also, this commit is for backpathing only. The master branch receives a more invasive yet comprehensive fix for this problem. Discussion: https://postgr.es/m/db4534f83a22a29ab5ee2566ad86ca92%40postgrespro.ru Backpatch-through: 13 --- src/backend/postmaster/checkpointer.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/backend/postmaster/checkpointer.c b/src/backend/postmaster/checkpointer.c index fda91ffd1ce2d..903d83e7dea0f 100644 --- a/src/backend/postmaster/checkpointer.c +++ b/src/backend/postmaster/checkpointer.c @@ -135,6 +135,9 @@ static CheckpointerShmemStruct *CheckpointerShmem; /* interval for calling AbsorbSyncRequests in CheckpointWriteDelay */ #define WRITES_PER_ABSORB 1000 +/* Max number of requests the checkpointer request queue can hold */ +#define MAX_CHECKPOINT_REQUESTS 10000000 + /* * GUC parameters */ @@ -970,7 +973,7 @@ CheckpointerShmemInit(void) */ MemSet(CheckpointerShmem, 0, size); SpinLockInit(&CheckpointerShmem->ckpt_lck); - CheckpointerShmem->max_requests = NBuffers; + CheckpointerShmem->max_requests = Min(NBuffers, MAX_CHECKPOINT_REQUESTS); ConditionVariableInit(&CheckpointerShmem->start_cv); ConditionVariableInit(&CheckpointerShmem->done_cv); } From 13eb6bb76d5de1d5c3ae3a80684e6a0da5314817 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 28 Jul 2025 08:15:16 +0900 Subject: [PATCH 090/457] Fix performance regression with flush of pending fixed-numbered stats The callback added in fc415edf8ca8 used to check if there is any pending data to flush for fixed-numbered statistics, done by looping across all the builtin and custom stats kinds with a call to have_fixed_pending_cb, is proving to able to show in workloads that do not report any stats (read-only, no function calls, no WAL, no IO, etc). The code used in v17 was cheaper than that what HEAD has introduced, relying on three boolean checks for WAL, SLRU and IO stats. This commit switches the code to use a more efficient approach than fc415edf8ca8, with a single boolean flag that can be switched to "true" by any fixed-numbered stats kinds to force pgstat_report_stat() to go through one round of reports. The flag is reset by pgstat_report_stat() once a full round of reports is done. The flag being false means that fixed-numbered stats kinds saw no activity, and that there is no pending data to flush. ac000fca743e took one step in improving the performance by reducing the number of stats kinds that the backend can hold. This commit takes a more drastic step by bringing back the code efficiency to what it was before v18 with a cheap check at the beginning of pgstat_report_stat() for its fast-exit path. The callback have_static_pending_cb is removed as an effect of all that. Reported-by: Andres Freund Reviewed-by: Bertrand Drouvot Discussion: https://postgr.es/m/eb224uegsga2hgq7dfq3ps5cduhpqej7ir2hjxzzozjthrekx5@dysei6buqthe Backpatch-through: 18 --- src/backend/access/transam/xlog.c | 10 ++++ src/backend/utils/activity/pgstat.c | 52 ++++++++------------- src/backend/utils/activity/pgstat_backend.c | 14 +----- src/backend/utils/activity/pgstat_io.c | 10 +--- src/backend/utils/activity/pgstat_slru.c | 10 +--- src/backend/utils/activity/pgstat_wal.c | 20 ++++---- src/include/utils/pgstat_internal.h | 34 ++++++++------ 7 files changed, 62 insertions(+), 88 deletions(-) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index c6c380df95684..184de54f3a189 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -96,6 +96,7 @@ #include "utils/guc_hooks.h" #include "utils/guc_tables.h" #include "utils/injection_point.h" +#include "utils/pgstat_internal.h" #include "utils/ps_status.h" #include "utils/relmapper.h" #include "utils/snapmgr.h" @@ -1092,6 +1093,9 @@ XLogInsertRecord(XLogRecData *rdata, pgWalUsage.wal_bytes += rechdr->xl_tot_len; pgWalUsage.wal_records++; pgWalUsage.wal_fpi += num_fpi; + + /* Required for the flush of pending stats WAL data */ + pgstat_report_fixed = true; } return EndPos; @@ -2109,6 +2113,12 @@ AdvanceXLInsertBuffer(XLogRecPtr upto, TimeLineID tli, bool opportunistic) LWLockRelease(WALWriteLock); pgWalUsage.wal_buffers_full++; TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY_DONE(); + + /* + * Required for the flush of pending stats WAL data, per + * update of pgWalUsage. + */ + pgstat_report_fixed = true; } } } diff --git a/src/backend/utils/activity/pgstat.c b/src/backend/utils/activity/pgstat.c index 8b57845e8709f..6bc91ce0dadda 100644 --- a/src/backend/utils/activity/pgstat.c +++ b/src/backend/utils/activity/pgstat.c @@ -212,6 +212,11 @@ int pgstat_fetch_consistency = PGSTAT_FETCH_CONSISTENCY_CACHE; PgStat_LocalState pgStatLocal; +/* + * Track pending reports for fixed-numbered stats, used by + * pgstat_report_stat(). + */ +bool pgstat_report_fixed = false; /* ---------- * Local data @@ -370,7 +375,6 @@ static const PgStat_KindInfo pgstat_kind_builtin_infos[PGSTAT_KIND_BUILTIN_SIZE] .shared_data_off = offsetof(PgStatShared_Backend, stats), .shared_data_len = sizeof(((PgStatShared_Backend *) 0)->stats), - .have_static_pending_cb = pgstat_backend_have_pending_cb, .flush_static_cb = pgstat_backend_flush_cb, .reset_timestamp_cb = pgstat_backend_reset_timestamp_cb, }, @@ -437,7 +441,6 @@ static const PgStat_KindInfo pgstat_kind_builtin_infos[PGSTAT_KIND_BUILTIN_SIZE] .shared_data_len = sizeof(((PgStatShared_IO *) 0)->stats), .flush_static_cb = pgstat_io_flush_cb, - .have_static_pending_cb = pgstat_io_have_pending_cb, .init_shmem_cb = pgstat_io_init_shmem_cb, .reset_all_cb = pgstat_io_reset_all_cb, .snapshot_cb = pgstat_io_snapshot_cb, @@ -455,7 +458,6 @@ static const PgStat_KindInfo pgstat_kind_builtin_infos[PGSTAT_KIND_BUILTIN_SIZE] .shared_data_len = sizeof(((PgStatShared_SLRU *) 0)->stats), .flush_static_cb = pgstat_slru_flush_cb, - .have_static_pending_cb = pgstat_slru_have_pending_cb, .init_shmem_cb = pgstat_slru_init_shmem_cb, .reset_all_cb = pgstat_slru_reset_all_cb, .snapshot_cb = pgstat_slru_snapshot_cb, @@ -474,7 +476,6 @@ static const PgStat_KindInfo pgstat_kind_builtin_infos[PGSTAT_KIND_BUILTIN_SIZE] .init_backend_cb = pgstat_wal_init_backend_cb, .flush_static_cb = pgstat_wal_flush_cb, - .have_static_pending_cb = pgstat_wal_have_pending_cb, .init_shmem_cb = pgstat_wal_init_shmem_cb, .reset_all_cb = pgstat_wal_reset_all_cb, .snapshot_cb = pgstat_wal_snapshot_cb, @@ -708,29 +709,10 @@ pgstat_report_stat(bool force) } /* Don't expend a clock check if nothing to do */ - if (dlist_is_empty(&pgStatPending)) + if (dlist_is_empty(&pgStatPending) && + !pgstat_report_fixed) { - bool do_flush = false; - - /* Check for pending stats */ - for (PgStat_Kind kind = PGSTAT_KIND_MIN; kind <= PGSTAT_KIND_MAX; kind++) - { - const PgStat_KindInfo *kind_info = pgstat_get_kind_info(kind); - - if (!kind_info) - continue; - if (!kind_info->have_static_pending_cb) - continue; - - if (kind_info->have_static_pending_cb()) - { - do_flush = true; - break; - } - } - - if (!do_flush) - return 0; + return 0; } /* @@ -784,16 +766,19 @@ pgstat_report_stat(bool force) partial_flush |= pgstat_flush_pending_entries(nowait); /* flush of other stats kinds */ - for (PgStat_Kind kind = PGSTAT_KIND_MIN; kind <= PGSTAT_KIND_MAX; kind++) + if (pgstat_report_fixed) { - const PgStat_KindInfo *kind_info = pgstat_get_kind_info(kind); + for (PgStat_Kind kind = PGSTAT_KIND_MIN; kind <= PGSTAT_KIND_MAX; kind++) + { + const PgStat_KindInfo *kind_info = pgstat_get_kind_info(kind); - if (!kind_info) - continue; - if (!kind_info->flush_static_cb) - continue; + if (!kind_info) + continue; + if (!kind_info->flush_static_cb) + continue; - partial_flush |= kind_info->flush_static_cb(nowait); + partial_flush |= kind_info->flush_static_cb(nowait); + } } last_flush = now; @@ -815,6 +800,7 @@ pgstat_report_stat(bool force) } pending_since = 0; + pgstat_report_fixed = false; return 0; } diff --git a/src/backend/utils/activity/pgstat_backend.c b/src/backend/utils/activity/pgstat_backend.c index 51256277e8d37..8714a85e2d936 100644 --- a/src/backend/utils/activity/pgstat_backend.c +++ b/src/backend/utils/activity/pgstat_backend.c @@ -66,6 +66,7 @@ pgstat_count_backend_io_op_time(IOObject io_object, IOContext io_context, io_time); backend_has_iostats = true; + pgstat_report_fixed = true; } void @@ -81,6 +82,7 @@ pgstat_count_backend_io_op(IOObject io_object, IOContext io_context, PendingBackendStats.pending_io.bytes[io_object][io_context][io_op] += bytes; backend_has_iostats = true; + pgstat_report_fixed = true; } /* @@ -301,18 +303,6 @@ pgstat_flush_backend(bool nowait, bits32 flags) return false; } -/* - * Check if there are any backend stats waiting for flush. - */ -bool -pgstat_backend_have_pending_cb(void) -{ - if (!pgstat_tracks_backend_bktype(MyBackendType)) - return false; - - return (backend_has_iostats || pgstat_backend_wal_have_pending()); -} - /* * Callback to flush out locally pending backend statistics. * diff --git a/src/backend/utils/activity/pgstat_io.c b/src/backend/utils/activity/pgstat_io.c index d8d26379a571e..13ae57ed6498d 100644 --- a/src/backend/utils/activity/pgstat_io.c +++ b/src/backend/utils/activity/pgstat_io.c @@ -80,6 +80,7 @@ pgstat_count_io_op(IOObject io_object, IOContext io_context, IOOp io_op, pgstat_count_backend_io_op(io_object, io_context, io_op, cnt, bytes); have_iostats = true; + pgstat_report_fixed = true; } /* @@ -167,15 +168,6 @@ pgstat_fetch_stat_io(void) return &pgStatLocal.snapshot.io; } -/* - * Check if there any IO stats waiting for flush. - */ -bool -pgstat_io_have_pending_cb(void) -{ - return have_iostats; -} - /* * Simpler wrapper of pgstat_io_flush_cb() */ diff --git a/src/backend/utils/activity/pgstat_slru.c b/src/backend/utils/activity/pgstat_slru.c index b9e940dde45b6..7bd8744accb0e 100644 --- a/src/backend/utils/activity/pgstat_slru.c +++ b/src/backend/utils/activity/pgstat_slru.c @@ -143,15 +143,6 @@ pgstat_get_slru_index(const char *name) return (SLRU_NUM_ELEMENTS - 1); } -/* - * Check if there are any SLRU stats entries waiting for flush. - */ -bool -pgstat_slru_have_pending_cb(void) -{ - return have_slrustats; -} - /* * Flush out locally pending SLRU stats entries * @@ -247,6 +238,7 @@ get_slru_entry(int slru_idx) Assert((slru_idx >= 0) && (slru_idx < SLRU_NUM_ELEMENTS)); have_slrustats = true; + pgstat_report_fixed = true; return &pending_SLRUStats[slru_idx]; } diff --git a/src/backend/utils/activity/pgstat_wal.c b/src/backend/utils/activity/pgstat_wal.c index 16a1ecb4d90d2..0d04480d2f6d0 100644 --- a/src/backend/utils/activity/pgstat_wal.c +++ b/src/backend/utils/activity/pgstat_wal.c @@ -71,6 +71,15 @@ pgstat_fetch_stat_wal(void) return &pgStatLocal.snapshot.wal; } +/* + * To determine whether WAL usage happened. + */ +static inline bool +pgstat_wal_have_pending(void) +{ + return pgWalUsage.wal_records != prevWalUsage.wal_records; +} + /* * Calculate how much WAL usage counters have increased by subtracting the * previous counters from the current ones. @@ -92,7 +101,7 @@ pgstat_wal_flush_cb(bool nowait) * This function can be called even if nothing at all has happened. Avoid * taking lock for nothing in that case. */ - if (!pgstat_wal_have_pending_cb()) + if (!pgstat_wal_have_pending()) return false; /* @@ -136,15 +145,6 @@ pgstat_wal_init_backend_cb(void) prevWalUsage = pgWalUsage; } -/* - * To determine whether WAL usage happened. - */ -bool -pgstat_wal_have_pending_cb(void) -{ - return pgWalUsage.wal_records != prevWalUsage.wal_records; -} - void pgstat_wal_init_shmem_cb(void *stats) { diff --git a/src/include/utils/pgstat_internal.h b/src/include/utils/pgstat_internal.h index d5557e6e998cd..6cf00008f6333 100644 --- a/src/include/utils/pgstat_internal.h +++ b/src/include/utils/pgstat_internal.h @@ -295,18 +295,11 @@ typedef struct PgStat_KindInfo * * Returns true if some of the stats could not be flushed, due to lock * contention for example. Optional. - */ - bool (*flush_static_cb) (bool nowait); - - /* - * For fixed-numbered or variable-numbered statistics: Check for pending - * stats in need of flush with flush_static_cb, when these do not use - * PgStat_EntryRef->pending. * - * Returns true if there are any stats pending for flush, triggering - * flush_static_cb. Optional. + * "pgstat_report_fixed" needs to be set to trigger the flush of pending + * stats. */ - bool (*have_static_pending_cb) (void); + bool (*flush_static_cb) (bool nowait); /* * For fixed-numbered statistics: Reset All. @@ -627,7 +620,6 @@ extern void pgstat_archiver_snapshot_cb(void); extern bool pgstat_flush_backend(bool nowait, bits32 flags); extern bool pgstat_backend_flush_cb(bool nowait); -extern bool pgstat_backend_have_pending_cb(void); extern void pgstat_backend_reset_timestamp_cb(PgStatShared_Common *header, TimestampTz ts); @@ -676,7 +668,6 @@ extern bool pgstat_function_flush_cb(PgStat_EntryRef *entry_ref, bool nowait); extern void pgstat_flush_io(bool nowait); -extern bool pgstat_io_have_pending_cb(void); extern bool pgstat_io_flush_cb(bool nowait); extern void pgstat_io_init_shmem_cb(void *stats); extern void pgstat_io_reset_all_cb(TimestampTz ts); @@ -738,7 +729,6 @@ extern PgStatShared_Common *pgstat_init_entry(PgStat_Kind kind, * Functions in pgstat_slru.c */ -extern bool pgstat_slru_have_pending_cb(void); extern bool pgstat_slru_flush_cb(bool nowait); extern void pgstat_slru_init_shmem_cb(void *stats); extern void pgstat_slru_reset_all_cb(TimestampTz ts); @@ -750,7 +740,6 @@ extern void pgstat_slru_snapshot_cb(void); */ extern void pgstat_wal_init_backend_cb(void); -extern bool pgstat_wal_have_pending_cb(void); extern bool pgstat_wal_flush_cb(bool nowait); extern void pgstat_wal_init_shmem_cb(void *stats); extern void pgstat_wal_reset_all_cb(TimestampTz ts); @@ -778,8 +767,23 @@ extern void pgstat_create_transactional(PgStat_Kind kind, Oid dboid, uint64 obji * Variables in pgstat.c */ -extern PGDLLIMPORT PgStat_LocalState pgStatLocal; +/* + * Track if *any* pending fixed-numbered statistics should be flushed to + * shared memory. + * + * This flag can be switched to true by fixed-numbered statistics to let + * pgstat_report_stat() know if it needs to go through one round of + * reports, calling flush_static_cb for each fixed-numbered statistics + * kind. When this flag is not set, pgstat_report_stat() is able to do + * a fast exit, knowing that there are no pending fixed-numbered statistics. + * + * Statistics callbacks should never reset this flag; pgstat_report_stat() + * is in charge of doing that. + */ +extern PGDLLIMPORT bool pgstat_report_fixed; +/* Backend-local stats state */ +extern PGDLLIMPORT PgStat_LocalState pgStatLocal; /* * Implementation of inline functions declared above. From 44e135ad57b242a89266b0aebaaf523a01a3484c Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Thu, 24 Jul 2025 13:30:43 -0400 Subject: [PATCH 091/457] Avoid throwing away the error message in syncrep_yyerror. Commit 473a575e05979b4dbb28b3f2544f4ec8f184ce65 purported to make this function stash the error message in *syncrep_parse_result_p, but it didn't actually. As a result, an attempt to set synchronous_standby_names to any value that does not parse resulted in a generic "parser failed." message rather than anything more specific. This fixes that. Discussion: http://postgr.es/m/CA+TgmoYF9wPNZ-Q_EMfib_espgHycY-eX__6Tzo2GpYpVXqCdQ@mail.gmail.com Backpatch-through: 18 --- src/backend/replication/syncrep_scanner.l | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/backend/replication/syncrep_scanner.l b/src/backend/replication/syncrep_scanner.l index 7dec1f869c745..02004d621e73d 100644 --- a/src/backend/replication/syncrep_scanner.l +++ b/src/backend/replication/syncrep_scanner.l @@ -157,17 +157,16 @@ syncrep_yyerror(SyncRepConfigData **syncrep_parse_result_p, char **syncrep_parse { struct yyguts_t *yyg = (struct yyguts_t *) yyscanner; /* needed for yytext * macro */ - char *syncrep_parse_error_msg = *syncrep_parse_error_msg_p; /* report only the first error in a parse operation */ - if (syncrep_parse_error_msg) + if (*syncrep_parse_error_msg_p) return; if (yytext[0]) - syncrep_parse_error_msg = psprintf("%s at or near \"%s\"", - message, yytext); + *syncrep_parse_error_msg_p = psprintf("%s at or near \"%s\"", + message, yytext); else - syncrep_parse_error_msg = psprintf("%s at end of input", - message); + *syncrep_parse_error_msg_p = psprintf("%s at end of input", + message); } void From 637ead2e1aa1fe955f9f095f791a38ef7797c959 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 28 Jul 2025 16:50:41 -0400 Subject: [PATCH 092/457] Avoid regression in the size of XML input that we will accept. This mostly reverts commit 6082b3d5d, "Use xmlParseInNodeContext not xmlParseBalancedChunkMemory". It turns out that xmlParseInNodeContext will reject text chunks exceeding 10MB, while (in most libxml2 versions) xmlParseBalancedChunkMemory will not. The bleeding-edge libxml2 bug that we needed to work around a year ago is presumably no longer a factor, and the argument that xmlParseBalancedChunkMemory is semi-deprecated is not enough to justify a functionality regression. Hence, go back to doing it the old way. Reported-by: Michael Paquier Author: Michael Paquier Co-authored-by: Erik Wienhold Reviewed-by: Tom Lane Discussion: https://postgr.es/m/aIGknLuc8b8ega2X@paquier.xyz Backpatch-through: 13 --- src/backend/utils/adt/xml.c | 68 ++++++++++++++++--------------------- 1 file changed, 30 insertions(+), 38 deletions(-) diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index 056d811594909..28af16fe93eea 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -1730,7 +1730,7 @@ xml_doctype_in_content(const xmlChar *str) * xmloption_arg, but a DOCTYPE node in the input can force DOCUMENT mode). * * If parsed_nodes isn't NULL and we parse in CONTENT mode, the list - * of parsed nodes from the xmlParseInNodeContext call will be returned + * of parsed nodes from the xmlParseBalancedChunkMemory call will be returned * to *parsed_nodes. (It is caller's responsibility to free that.) * * Errors normally result in ereport(ERROR), but if escontext is an @@ -1756,6 +1756,7 @@ xml_parse(text *data, XmlOptionType xmloption_arg, PgXmlErrorContext *xmlerrcxt; volatile xmlParserCtxtPtr ctxt = NULL; volatile xmlDocPtr doc = NULL; + volatile int save_keep_blanks = -1; /* * This step looks annoyingly redundant, but we must do it to have a @@ -1783,7 +1784,6 @@ xml_parse(text *data, XmlOptionType xmloption_arg, PG_TRY(); { bool parse_as_document = false; - int options; int res_code; size_t count = 0; xmlChar *version = NULL; @@ -1814,18 +1814,6 @@ xml_parse(text *data, XmlOptionType xmloption_arg, parse_as_document = true; } - /* - * Select parse options. - * - * Note that here we try to apply DTD defaults (XML_PARSE_DTDATTR) - * according to SQL/XML:2008 GR 10.16.7.d: 'Default values defined by - * internal DTD are applied'. As for external DTDs, we try to support - * them too (see SQL/XML:2008 GR 10.16.7.e), but that doesn't really - * happen because xmlPgEntityLoader prevents it. - */ - options = XML_PARSE_NOENT | XML_PARSE_DTDATTR - | (preserve_whitespace ? 0 : XML_PARSE_NOBLANKS); - /* initialize output parameters */ if (parsed_xmloptiontype != NULL) *parsed_xmloptiontype = parse_as_document ? XMLOPTION_DOCUMENT : @@ -1835,11 +1823,26 @@ xml_parse(text *data, XmlOptionType xmloption_arg, if (parse_as_document) { + int options; + + /* set up parser context used by xmlCtxtReadDoc */ ctxt = xmlNewParserCtxt(); if (ctxt == NULL || xmlerrcxt->err_occurred) xml_ereport(xmlerrcxt, ERROR, ERRCODE_OUT_OF_MEMORY, "could not allocate parser context"); + /* + * Select parse options. + * + * Note that here we try to apply DTD defaults (XML_PARSE_DTDATTR) + * according to SQL/XML:2008 GR 10.16.7.d: 'Default values defined + * by internal DTD are applied'. As for external DTDs, we try to + * support them too (see SQL/XML:2008 GR 10.16.7.e), but that + * doesn't really happen because xmlPgEntityLoader prevents it. + */ + options = XML_PARSE_NOENT | XML_PARSE_DTDATTR + | (preserve_whitespace ? 0 : XML_PARSE_NOBLANKS); + doc = xmlCtxtReadDoc(ctxt, utf8string, NULL, /* no URL */ "UTF-8", @@ -1861,10 +1864,7 @@ xml_parse(text *data, XmlOptionType xmloption_arg, } else { - xmlNodePtr root; - xmlNodePtr oldroot PG_USED_FOR_ASSERTS_ONLY; - - /* set up document with empty root node to be the context node */ + /* set up document that xmlParseBalancedChunkMemory will add to */ doc = xmlNewDoc(version); if (doc == NULL || xmlerrcxt->err_occurred) xml_ereport(xmlerrcxt, ERROR, ERRCODE_OUT_OF_MEMORY, @@ -1877,36 +1877,23 @@ xml_parse(text *data, XmlOptionType xmloption_arg, "could not allocate XML document"); doc->standalone = standalone; - root = xmlNewNode(NULL, (const xmlChar *) "content-root"); - if (root == NULL || xmlerrcxt->err_occurred) - xml_ereport(xmlerrcxt, ERROR, ERRCODE_OUT_OF_MEMORY, - "could not allocate xml node"); - - /* - * This attaches root to doc, so we need not free it separately; - * and there can't yet be any old root to free. - */ - oldroot = xmlDocSetRootElement(doc, root); - Assert(oldroot == NULL); + /* set parse options --- have to do this the ugly way */ + save_keep_blanks = xmlKeepBlanksDefault(preserve_whitespace ? 1 : 0); /* allow empty content */ if (*(utf8string + count)) { xmlNodePtr node_list = NULL; - xmlParserErrors res; - - res = xmlParseInNodeContext(root, - (char *) utf8string + count, - strlen((char *) utf8string + count), - options, - &node_list); - if (res != XML_ERR_OK || xmlerrcxt->err_occurred) + res_code = xmlParseBalancedChunkMemory(doc, NULL, NULL, 0, + utf8string + count, + &node_list); + if (res_code != 0 || xmlerrcxt->err_occurred) { - xmlFreeNodeList(node_list); xml_errsave(escontext, xmlerrcxt, ERRCODE_INVALID_XML_CONTENT, "invalid XML content"); + xmlFreeNodeList(node_list); goto fail; } @@ -1922,6 +1909,8 @@ xml_parse(text *data, XmlOptionType xmloption_arg, } PG_CATCH(); { + if (save_keep_blanks != -1) + xmlKeepBlanksDefault(save_keep_blanks); if (doc != NULL) xmlFreeDoc(doc); if (ctxt != NULL) @@ -1933,6 +1922,9 @@ xml_parse(text *data, XmlOptionType xmloption_arg, } PG_END_TRY(); + if (save_keep_blanks != -1) + xmlKeepBlanksDefault(save_keep_blanks); + if (ctxt != NULL) xmlFreeParserCtxt(ctxt); From 1fe9e3822c4e574aa526b99af723e61e03f36d4f Mon Sep 17 00:00:00 2001 From: Alexander Korotkov Date: Tue, 29 Jul 2025 10:41:13 +0300 Subject: [PATCH 093/457] Clarify documentation for the initcap function This commit documents differences in the definition of word separators for the initcap function between libc and ICU locale providers. Backpatch to all supported branches. Discussion: https://postgr.es/m/804cc10ef95d4d3b298e76b181fd9437%40postgrespro.ru Author: Oleg Tselebrovskiy Backpatch-through: 13 --- doc/src/sgml/func.sgml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 479b66b0a5b34..05e6d78ad6a05 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -3148,8 +3148,11 @@ SELECT NOT(ROW(table.*) IS NOT NULL) FROM TABLE; -- detect at least one null in Converts the first letter of each word to upper case and the - rest to lower case. Words are sequences of alphanumeric - characters separated by non-alphanumeric characters. + rest to lower case. When using the libc locale + provider, words are sequences of alphanumeric characters separated + by non-alphanumeric characters; when using the ICU locale provider, + words are separated according to + Unicode Standard Annex #29. initcap('hi THOMAS') From d5f014d897c81d1a610d8ee8084524aacf6ae3fb Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 29 Jul 2025 12:47:19 -0400 Subject: [PATCH 094/457] Remove unnecessary complication around xmlParseBalancedChunkMemory. When I prepared 71c0921b6 et al yesterday, I was thinking that the logic involving explicitly freeing the node_list output was still needed to dodge leakage bugs in libxml2. But I was misremembering: we introduced that only because with early 2.13.x releases we could not trust xmlParseBalancedChunkMemory's result code, so we had to look to see if a node list was returned or not. There's no reason to believe that xmlParseBalancedChunkMemory will fail to clean up the node list when required, so simplify. (This essentially completes reverting all the non-cosmetic changes in 6082b3d5d.) Reported-by: Jim Jones Author: Tom Lane Discussion: https://postgr.es/m/997668.1753802857@sss.pgh.pa.us Backpatch-through: 13 --- src/backend/utils/adt/xml.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c index 28af16fe93eea..cf793b6fc6698 100644 --- a/src/backend/utils/adt/xml.c +++ b/src/backend/utils/adt/xml.c @@ -1883,24 +1883,16 @@ xml_parse(text *data, XmlOptionType xmloption_arg, /* allow empty content */ if (*(utf8string + count)) { - xmlNodePtr node_list = NULL; - res_code = xmlParseBalancedChunkMemory(doc, NULL, NULL, 0, utf8string + count, - &node_list); + parsed_nodes); if (res_code != 0 || xmlerrcxt->err_occurred) { xml_errsave(escontext, xmlerrcxt, ERRCODE_INVALID_XML_CONTENT, "invalid XML content"); - xmlFreeNodeList(node_list); goto fail; } - - if (parsed_nodes != NULL) - *parsed_nodes = node_list; - else - xmlFreeNodeList(node_list); } } From 8e5e3ff5564104b5e1c3c459d626967a702ad9fb Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 29 Jul 2025 15:17:40 -0400 Subject: [PATCH 095/457] Don't put library-supplied -L/-I switches before user-supplied ones. For many optional libraries, we extract the -L and -l switches needed to link the library from a helper program such as llvm-config. In some cases we put the resulting -L switches into LDFLAGS ahead of -L switches specified via --with-libraries. That risks breaking the user's intention for --with-libraries. It's not such a problem if the library's -L switch points to a directory containing only that library, but on some platforms a library helper may "helpfully" offer a switch such as -L/usr/lib that points to a directory holding all standard libraries. If the user specified --with-libraries in hopes of overriding the standard build of some library, the -L/usr/lib switch prevents that from happening since it will come before the user-specified directory. To fix, avoid inserting these switches directly into LDFLAGS during configure, instead adding them to LIBDIRS or SHLIB_LINK. They will still eventually get added to LDFLAGS, but only after the switches coming from --with-libraries. The same problem exists for -I switches: those coming from --with-includes should appear before any coming from helper programs such as llvm-config. We have not heard field complaints about this case, but it seems certain that a user attempting to override a standard library could have issues. The changes for this go well beyond configure itself, however, because many Makefiles have occasion to manipulate CPPFLAGS to insert locally-desirable -I switches, and some of them got it wrong. The correct ordering is any -I switches pointing at within-the- source-tree-or-build-tree directories, then those from the tree-wide CPPFLAGS, then those from helper programs. There were several places that risked pulling in a system-supplied copy of libpq headers, for example, instead of the in-tree files. (Commit cb36f8ec2 fixed one instance of that a few months ago, but this exercise found more.) The Meson build scripts may or may not have any comparable problems, but I'll leave it to someone else to investigate that. Reported-by: Charles Samborski Author: Tom Lane Discussion: https://postgr.es/m/70f2155f-27ca-4534-b33d-7750e20633d7@demurgos.net Backpatch-through: 13 --- config/llvm.m4 | 4 ++-- config/programs.m4 | 4 ++-- configure | 24 ++++++++++++------------ configure.ac | 18 +++++++++--------- src/Makefile.global.in | 2 +- src/backend/jit/llvm/Makefile | 2 +- src/bin/initdb/Makefile | 2 +- src/common/Makefile | 2 +- src/interfaces/libpq-oauth/Makefile | 2 +- src/interfaces/libpq/Makefile | 2 +- src/pl/plpython/Makefile | 2 +- src/pl/tcl/Makefile | 2 +- 12 files changed, 33 insertions(+), 33 deletions(-) diff --git a/config/llvm.m4 b/config/llvm.m4 index fa4bedd9370fc..9d6fe8199e364 100644 --- a/config/llvm.m4 +++ b/config/llvm.m4 @@ -4,7 +4,7 @@ # ----------------- # # Look for the LLVM installation, check that it's new enough, set the -# corresponding LLVM_{CFLAGS,CXXFLAGS,BINPATH} and LDFLAGS +# corresponding LLVM_{CFLAGS,CXXFLAGS,BINPATH,LIBS} # variables. Also verify that CLANG is available, to transform C # into bitcode. # @@ -55,7 +55,7 @@ AC_DEFUN([PGAC_LLVM_SUPPORT], for pgac_option in `$LLVM_CONFIG --ldflags`; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LLVM_LIBS="$LLVM_LIBS $pgac_option";; esac done diff --git a/config/programs.m4 b/config/programs.m4 index c73d9307ea8a9..e57fe4907b844 100644 --- a/config/programs.m4 +++ b/config/programs.m4 @@ -290,8 +290,8 @@ AC_DEFUN([PGAC_CHECK_LIBCURL], pgac_save_LDFLAGS=$LDFLAGS pgac_save_LIBS=$LIBS - CPPFLAGS="$LIBCURL_CPPFLAGS $CPPFLAGS" - LDFLAGS="$LIBCURL_LDFLAGS $LDFLAGS" + CPPFLAGS="$CPPFLAGS $LIBCURL_CPPFLAGS" + LDFLAGS="$LDFLAGS $LIBCURL_LDFLAGS" AC_CHECK_HEADER(curl/curl.h, [], [AC_MSG_ERROR([header file is required for --with-libcurl])]) diff --git a/configure b/configure index 1b9980226c5d2..d0db84867b93e 100755 --- a/configure +++ b/configure @@ -5194,7 +5194,7 @@ fi for pgac_option in `$LLVM_CONFIG --ldflags`; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LLVM_LIBS="$LLVM_LIBS $pgac_option";; esac done @@ -9436,12 +9436,12 @@ fi # Note the user could also set XML2_CFLAGS/XML2_LIBS directly for pgac_option in $XML2_CFLAGS; do case $pgac_option in - -I*|-D*) CPPFLAGS="$CPPFLAGS $pgac_option";; + -I*|-D*) INCLUDES="$INCLUDES $pgac_option";; esac done for pgac_option in $XML2_LIBS; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LIBDIRS="$LIBDIRS $pgac_option";; esac done fi @@ -9666,12 +9666,12 @@ fi # note that -llz4 will be added by AC_CHECK_LIB below. for pgac_option in $LZ4_CFLAGS; do case $pgac_option in - -I*|-D*) CPPFLAGS="$CPPFLAGS $pgac_option";; + -I*|-D*) INCLUDES="$INCLUDES $pgac_option";; esac done for pgac_option in $LZ4_LIBS; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LIBDIRS="$LIBDIRS $pgac_option";; esac done fi @@ -9807,12 +9807,12 @@ fi # note that -lzstd will be added by AC_CHECK_LIB below. for pgac_option in $ZSTD_CFLAGS; do case $pgac_option in - -I*|-D*) CPPFLAGS="$CPPFLAGS $pgac_option";; + -I*|-D*) INCLUDES="$INCLUDES $pgac_option";; esac done for pgac_option in $ZSTD_LIBS; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LIBDIRS="$LIBDIRS $pgac_option";; esac done fi @@ -12723,8 +12723,8 @@ if test "$with_libcurl" = yes ; then pgac_save_LDFLAGS=$LDFLAGS pgac_save_LIBS=$LIBS - CPPFLAGS="$LIBCURL_CPPFLAGS $CPPFLAGS" - LDFLAGS="$LIBCURL_LDFLAGS $LDFLAGS" + CPPFLAGS="$CPPFLAGS $LIBCURL_CPPFLAGS" + LDFLAGS="$LDFLAGS $LIBCURL_LDFLAGS" ac_fn_c_check_header_mongrel "$LINENO" "curl/curl.h" "ac_cv_header_curl_curl_h" "$ac_includes_default" if test "x$ac_cv_header_curl_curl_h" = xyes; then : @@ -16658,7 +16658,7 @@ fi if test "$with_icu" = yes; then ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$ICU_CFLAGS $CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ICU_CFLAGS" # Verify we have ICU's header files ac_fn_c_check_header_mongrel "$LINENO" "unicode/ucol.h" "ac_cv_header_unicode_ucol_h" "$ac_includes_default" @@ -18876,7 +18876,7 @@ Use --without-tcl to disable building PL/Tcl." "$LINENO" 5 fi # now that we have TCL_INCLUDE_SPEC, we can check for ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$TCL_INCLUDE_SPEC $CPPFLAGS" + CPPFLAGS="$CPPFLAGS $TCL_INCLUDE_SPEC" ac_fn_c_check_header_mongrel "$LINENO" "tcl.h" "ac_cv_header_tcl_h" "$ac_includes_default" if test "x$ac_cv_header_tcl_h" = xyes; then : @@ -18945,7 +18945,7 @@ fi # check for if test "$with_python" = yes; then ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$python_includespec $CPPFLAGS" + CPPFLAGS="$CPPFLAGS $python_includespec" ac_fn_c_check_header_mongrel "$LINENO" "Python.h" "ac_cv_header_Python_h" "$ac_includes_default" if test "x$ac_cv_header_Python_h" = xyes; then : diff --git a/configure.ac b/configure.ac index 3e3fcfa98314a..f3fb8794645a8 100644 --- a/configure.ac +++ b/configure.ac @@ -1103,12 +1103,12 @@ if test "$with_libxml" = yes ; then # Note the user could also set XML2_CFLAGS/XML2_LIBS directly for pgac_option in $XML2_CFLAGS; do case $pgac_option in - -I*|-D*) CPPFLAGS="$CPPFLAGS $pgac_option";; + -I*|-D*) INCLUDES="$INCLUDES $pgac_option";; esac done for pgac_option in $XML2_LIBS; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LIBDIRS="$LIBDIRS $pgac_option";; esac done fi @@ -1152,12 +1152,12 @@ if test "$with_lz4" = yes; then # note that -llz4 will be added by AC_CHECK_LIB below. for pgac_option in $LZ4_CFLAGS; do case $pgac_option in - -I*|-D*) CPPFLAGS="$CPPFLAGS $pgac_option";; + -I*|-D*) INCLUDES="$INCLUDES $pgac_option";; esac done for pgac_option in $LZ4_LIBS; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LIBDIRS="$LIBDIRS $pgac_option";; esac done fi @@ -1177,12 +1177,12 @@ if test "$with_zstd" = yes; then # note that -lzstd will be added by AC_CHECK_LIB below. for pgac_option in $ZSTD_CFLAGS; do case $pgac_option in - -I*|-D*) CPPFLAGS="$CPPFLAGS $pgac_option";; + -I*|-D*) INCLUDES="$INCLUDES $pgac_option";; esac done for pgac_option in $ZSTD_LIBS; do case $pgac_option in - -L*) LDFLAGS="$LDFLAGS $pgac_option";; + -L*) LIBDIRS="$LIBDIRS $pgac_option";; esac done fi @@ -1944,7 +1944,7 @@ fi if test "$with_icu" = yes; then ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$ICU_CFLAGS $CPPFLAGS" + CPPFLAGS="$CPPFLAGS $ICU_CFLAGS" # Verify we have ICU's header files AC_CHECK_HEADER(unicode/ucol.h, [], @@ -2344,7 +2344,7 @@ Use --without-tcl to disable building PL/Tcl.]) fi # now that we have TCL_INCLUDE_SPEC, we can check for ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$TCL_INCLUDE_SPEC $CPPFLAGS" + CPPFLAGS="$CPPFLAGS $TCL_INCLUDE_SPEC" AC_CHECK_HEADER(tcl.h, [], [AC_MSG_ERROR([header file is required for Tcl])]) CPPFLAGS=$ac_save_CPPFLAGS fi @@ -2381,7 +2381,7 @@ fi # check for if test "$with_python" = yes; then ac_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$python_includespec $CPPFLAGS" + CPPFLAGS="$CPPFLAGS $python_includespec" AC_CHECK_HEADER(Python.h, [], [AC_MSG_ERROR([header file is required for Python])]) CPPFLAGS=$ac_save_CPPFLAGS fi diff --git a/src/Makefile.global.in b/src/Makefile.global.in index 04952b533ded9..8b1b357beaa04 100644 --- a/src/Makefile.global.in +++ b/src/Makefile.global.in @@ -254,7 +254,7 @@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ PG_SYSROOT = @PG_SYSROOT@ -override CPPFLAGS := $(ICU_CFLAGS) $(LIBNUMA_CFLAGS) $(LIBURING_CFLAGS) $(CPPFLAGS) +override CPPFLAGS += $(ICU_CFLAGS) $(LIBNUMA_CFLAGS) $(LIBURING_CFLAGS) ifdef PGXS override CPPFLAGS := -I$(includedir_server) -I$(includedir_internal) $(CPPFLAGS) diff --git a/src/backend/jit/llvm/Makefile b/src/backend/jit/llvm/Makefile index e8c12060b93df..68677ba42e189 100644 --- a/src/backend/jit/llvm/Makefile +++ b/src/backend/jit/llvm/Makefile @@ -31,7 +31,7 @@ endif # All files in this directory use LLVM. CFLAGS += $(LLVM_CFLAGS) CXXFLAGS += $(LLVM_CXXFLAGS) -override CPPFLAGS := $(LLVM_CPPFLAGS) $(CPPFLAGS) +override CPPFLAGS += $(LLVM_CPPFLAGS) SHLIB_LINK += $(LLVM_LIBS) # Because this module includes C++ files, we need to use a C++ diff --git a/src/bin/initdb/Makefile b/src/bin/initdb/Makefile index 997e0a013e956..c0470efda92a3 100644 --- a/src/bin/initdb/Makefile +++ b/src/bin/initdb/Makefile @@ -20,7 +20,7 @@ include $(top_builddir)/src/Makefile.global # from libpq, else we have risks of version skew if we run with a libpq # shared library from a different PG version. Define # USE_PRIVATE_ENCODING_FUNCS to ensure that that happens. -override CPPFLAGS := -DUSE_PRIVATE_ENCODING_FUNCS -I$(libpq_srcdir) -I$(top_srcdir)/src/timezone $(ICU_CFLAGS) $(CPPFLAGS) +override CPPFLAGS := -DUSE_PRIVATE_ENCODING_FUNCS -I$(libpq_srcdir) -I$(top_srcdir)/src/timezone $(CPPFLAGS) $(ICU_CFLAGS) # We need libpq only because fe_utils does. LDFLAGS_INTERNAL += -L$(top_builddir)/src/fe_utils -lpgfeutils $(libpq_pgport) $(ICU_LIBS) diff --git a/src/common/Makefile b/src/common/Makefile index 1e2b91c83c4c4..2c720caa50972 100644 --- a/src/common/Makefile +++ b/src/common/Makefile @@ -163,7 +163,7 @@ libpgcommon_shlib.a: $(OBJS_SHLIB) # The JSON API normally exits on out-of-memory; disable that behavior for shared # library builds. This requires libpq's pqexpbuffer.h. jsonapi_shlib.o: override CPPFLAGS += -DJSONAPI_USE_PQEXPBUFFER -jsonapi_shlib.o: override CPPFLAGS += -I$(libpq_srcdir) +jsonapi_shlib.o: override CPPFLAGS := -I$(libpq_srcdir) $(CPPFLAGS) # Because this uses its own compilation rule, it doesn't use the # dependency tracking logic from Makefile.global. To make sure that diff --git a/src/interfaces/libpq-oauth/Makefile b/src/interfaces/libpq-oauth/Makefile index 270fc0cf2d9d9..682f17413b3a4 100644 --- a/src/interfaces/libpq-oauth/Makefile +++ b/src/interfaces/libpq-oauth/Makefile @@ -24,7 +24,7 @@ NAME = pq-oauth-$(MAJORVERSION) override shlib := lib$(NAME)$(DLSUFFIX) override stlib := libpq-oauth.a -override CPPFLAGS := -I$(libpq_srcdir) -I$(top_builddir)/src/port $(LIBCURL_CPPFLAGS) $(CPPFLAGS) +override CPPFLAGS := -I$(libpq_srcdir) -I$(top_builddir)/src/port $(CPPFLAGS) $(LIBCURL_CPPFLAGS) OBJS = \ $(WIN32RES) diff --git a/src/interfaces/libpq/Makefile b/src/interfaces/libpq/Makefile index 47d6781150944..da6650066d46e 100644 --- a/src/interfaces/libpq/Makefile +++ b/src/interfaces/libpq/Makefile @@ -24,7 +24,7 @@ NAME= pq SO_MAJOR_VERSION= 5 SO_MINOR_VERSION= $(MAJORVERSION) -override CPPFLAGS := -I$(srcdir) $(CPPFLAGS) -I$(top_builddir)/src/port -I$(top_srcdir)/src/port +override CPPFLAGS := -I$(srcdir) -I$(top_builddir)/src/port -I$(top_srcdir)/src/port $(CPPFLAGS) ifneq ($(PORTNAME), win32) override CFLAGS += $(PTHREAD_CFLAGS) endif diff --git a/src/pl/plpython/Makefile b/src/pl/plpython/Makefile index f959083a0bdec..25f295c3709e2 100644 --- a/src/pl/plpython/Makefile +++ b/src/pl/plpython/Makefile @@ -11,7 +11,7 @@ ifeq ($(PORTNAME), win32) override python_libspec = endif -override CPPFLAGS := -I. -I$(srcdir) $(python_includespec) $(CPPFLAGS) +override CPPFLAGS := -I. -I$(srcdir) $(CPPFLAGS) $(python_includespec) rpathdir = $(python_libdir) diff --git a/src/pl/tcl/Makefile b/src/pl/tcl/Makefile index ea52a2efc229d..dd57f7d694c82 100644 --- a/src/pl/tcl/Makefile +++ b/src/pl/tcl/Makefile @@ -11,7 +11,7 @@ top_builddir = ../../.. include $(top_builddir)/src/Makefile.global -override CPPFLAGS := -I. -I$(srcdir) $(TCL_INCLUDE_SPEC) $(CPPFLAGS) +override CPPFLAGS := -I. -I$(srcdir) $(CPPFLAGS) $(TCL_INCLUDE_SPEC) # On Windows, we don't link directly with the Tcl library; see below ifneq ($(PORTNAME), win32) From fce7da1e73853b21a8084e645ac39354c1476261 Mon Sep 17 00:00:00 2001 From: Heikki Linnakangas Date: Wed, 30 Jul 2025 00:39:49 +0300 Subject: [PATCH 096/457] Handle cancel requests with PID 0 gracefully If the client sent a query cancel request with backend PID 0, it tripped an assertion. With assertions disabled, you got this in the log instead: LOG: invalid cancel request with PID 0 LOG: wrong key in cancel request for process 0 Query cancellations don't even require authentication, so we better tolerate bogus requests. Fix by turning the assertion into a regular runtime check. Spotted while testing libpq behavior with a modified server that didn't send BackendKeyData to the client. Backpatch-through: 18 --- src/backend/storage/ipc/procsignal.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/backend/storage/ipc/procsignal.c b/src/backend/storage/ipc/procsignal.c index a9bb540b55ac2..087821311cceb 100644 --- a/src/backend/storage/ipc/procsignal.c +++ b/src/backend/storage/ipc/procsignal.c @@ -728,7 +728,11 @@ procsignal_sigusr1_handler(SIGNAL_ARGS) void SendCancelRequest(int backendPID, const uint8 *cancel_key, int cancel_key_len) { - Assert(backendPID != 0); + if (backendPID == 0) + { + ereport(LOG, (errmsg("invalid cancel request with PID 0"))); + return; + } /* * See if we have a matching backend. Reading the pss_pid and From a60691eb201dfaa8a2c3aec8815d08ed3371aae7 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Tue, 29 Jul 2025 22:27:01 -0400 Subject: [PATCH 097/457] doc PG 18 relnotes: update to current Backpatch-through: 18 only --- doc/src/sgml/release-18.sgml | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index b4bd3559a3946..c1f111f6fd780 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -6,7 +6,7 @@ Release date: - 2025-??-??, CURRENT AS OF 2025-06-20 + 2025-??-??, CURRENT AS OF 2025-07-29 @@ -1181,15 +1181,18 @@ Author: Álvaro Herrera 2025-03-18 [62d712ecf] Introduce squashing of constant lists in query jumbling Author: Álvaro Herrera 2025-03-27 [9fbd53dea] Remove the query_id_squash_values GUC +Author: Álvaro Herrera +Branch: master Release: REL_18_BR [c2da1a5d6] 2025-06-24 19:36:32 +0200 --> Have query id computation - of arrays consider only the first and last array elements (Dmitry + of constant lists consider only the first and last constants (Dmitry Dolgov, Sami Imseih) § § + § @@ -1930,6 +1933,8 @@ Author: Peter Eisentraut @@ -1940,6 +1945,7 @@ Author: Álvaro Herrera linkend="catalog-pg-constraint">pg_constraint (Álvaro Herrera, Bernd Helmle) § + § @@ -2717,6 +2723,8 @@ Author: Thomas Munro @@ -2724,6 +2732,7 @@ Author: Michael Paquier Allow psql to parse, bind, and close named prepared statements (Anthonin Bonnefoy, Michael Paquier) § + § @@ -3271,13 +3280,16 @@ Author: Amit Kapila Add pg_createsubscriber option - to remove publications (Shubham Khanna) + to remove publications (Shubham Khanna) § + § @@ -3303,9 +3315,14 @@ Author: Masahiko Sawada Add option - to specify failover slots (Hayato Kuroda) + to specify failover slots (Hayato Kuroda) § + + + Also add option as a synonym + for , and deprecate the latter. + - - - - Allow to dump in the same output - formats as pg_dump supports (Mahendra - Singh Thalor, Andrew Dunstan) - § - - - - Also modify to handle such dumps. - Previously pg_dumpall only supported - text format. - - - + + + + The locale implementation underlying full-text search was improved. It + now observes the locale provider configured for the database for case + conversions. It was previously hardcoded to use libc. In database + clusters that use a locale provider other than libc (that is, ICU or + builtin) and where the locale configured through that locale provider + behaves differently from the LC_CTYPE setting configured for the database, + this could cause changes in behavior of some functions related to + full-text search as well as the pg_trgm extension. When upgrading such + database clusters using pg_upgrade, it is recommended to reindex all + indexes related to full-text search and pg_trgm after the upgrade. + + § + + + From 3eea4dc2c7cfbd9ef56e34ac25b43ab90fe62c51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Fri, 29 Aug 2025 14:43:47 +0200 Subject: [PATCH 200/457] CREATE STATISTICS: improve misleading error message MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit I think the error message for a different condition was inadvertently copied. This problem seems to have been introduced by commit a4d75c86bf15. Author: Álvaro Herrera Reported-by: jian he Reviewed-by: Tom Lane Backpatch-through: 14 Discussion: https://postgr.es/m/CACJufxEZ48toGH0Em_6vdsT57Y3L8pLF=DZCQ_gCii6=C3MeXw@mail.gmail.com --- src/backend/tcop/utility.c | 3 ++- src/test/regress/expected/stats_ext.out | 26 +++++++++++++++++++++++++ src/test/regress/sql/stats_ext.sql | 12 ++++++++++++ 3 files changed, 40 insertions(+), 1 deletion(-) diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c index 25fe3d5801665..76f5a5854ebb5 100644 --- a/src/backend/tcop/utility.c +++ b/src/backend/tcop/utility.c @@ -1883,7 +1883,8 @@ ProcessUtilitySlow(ParseState *pstate, if (!IsA(rel, RangeVar)) ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), - errmsg("only a single relation is allowed in CREATE STATISTICS"))); + errmsg("cannot create statistics on the specified relation"), + errdetail("CREATE STATISTICS only supports tables, foreign tables and materialized views."))); /* * CREATE STATISTICS will influence future execution plans diff --git a/src/test/regress/expected/stats_ext.out b/src/test/regress/expected/stats_ext.out index c66e09f8b1651..a1f83b58b2398 100644 --- a/src/test/regress/expected/stats_ext.out +++ b/src/test/regress/expected/stats_ext.out @@ -54,6 +54,32 @@ CREATE STATISTICS tst ON (x || 'x'), (x || 'x'), y FROM ext_stats_test; ERROR: duplicate expression in statistics definition CREATE STATISTICS tst (unrecognized) ON x, y FROM ext_stats_test; ERROR: unrecognized statistics kind "unrecognized" +-- unsupported targets +CREATE STATISTICS tst ON a FROM (VALUES (x)) AS foo; +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +CREATE STATISTICS tst ON a FROM foo NATURAL JOIN bar; +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +CREATE STATISTICS tst ON a FROM (SELECT * FROM ext_stats_test) AS foo; +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +CREATE STATISTICS tst ON a FROM ext_stats_test s TABLESAMPLE system (x); +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +CREATE STATISTICS tst ON a FROM XMLTABLE('foo' PASSING 'bar' COLUMNS a text); +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +CREATE STATISTICS tst ON a FROM JSON_TABLE(jsonb '123', '$' COLUMNS (item int)); +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +CREATE FUNCTION tftest(int) returns table(a int, b int) as $$ +SELECT $1, $1+i FROM generate_series(1,5) g(i); +$$ LANGUAGE sql IMMUTABLE STRICT; +CREATE STATISTICS alt_stat2 ON a FROM tftest(1); +ERROR: cannot create statistics on the specified relation +DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +DROP FUNCTION tftest; -- incorrect expressions CREATE STATISTICS tst ON (y) FROM ext_stats_test; -- single column reference ERROR: extended statistics require at least 2 columns diff --git a/src/test/regress/sql/stats_ext.sql b/src/test/regress/sql/stats_ext.sql index 9ce4c670ecbcd..823c7db9dab49 100644 --- a/src/test/regress/sql/stats_ext.sql +++ b/src/test/regress/sql/stats_ext.sql @@ -40,6 +40,18 @@ CREATE STATISTICS tst ON x, x, y, x, x, (x || 'x'), (y + 1), (x || 'x'), (x || ' CREATE STATISTICS tst ON (x || 'x'), (x || 'x'), (y + 1), (x || 'x'), (x || 'x'), (y + 1), (x || 'x'), (x || 'x'), (y + 1) FROM ext_stats_test; CREATE STATISTICS tst ON (x || 'x'), (x || 'x'), y FROM ext_stats_test; CREATE STATISTICS tst (unrecognized) ON x, y FROM ext_stats_test; +-- unsupported targets +CREATE STATISTICS tst ON a FROM (VALUES (x)) AS foo; +CREATE STATISTICS tst ON a FROM foo NATURAL JOIN bar; +CREATE STATISTICS tst ON a FROM (SELECT * FROM ext_stats_test) AS foo; +CREATE STATISTICS tst ON a FROM ext_stats_test s TABLESAMPLE system (x); +CREATE STATISTICS tst ON a FROM XMLTABLE('foo' PASSING 'bar' COLUMNS a text); +CREATE STATISTICS tst ON a FROM JSON_TABLE(jsonb '123', '$' COLUMNS (item int)); +CREATE FUNCTION tftest(int) returns table(a int, b int) as $$ +SELECT $1, $1+i FROM generate_series(1,5) g(i); +$$ LANGUAGE sql IMMUTABLE STRICT; +CREATE STATISTICS alt_stat2 ON a FROM tftest(1); +DROP FUNCTION tftest; -- incorrect expressions CREATE STATISTICS tst ON (y) FROM ext_stats_test; -- single column reference CREATE STATISTICS tst ON y + z FROM ext_stats_test; -- missing parentheses From 4aea5589106bdaa949e45e8ae6a7e49204a460f6 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Sat, 30 Aug 2025 00:51:39 +1200 Subject: [PATCH 201/457] Fix possible use after free in expand_partitioned_rtentry() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It's possible that if the only live partition is concurrently dropped and try_table_open() fails, that the bms_del_member() will pfree the live_parts Bitmapset. Since the bms_del_member() call does not assign the result back to the live_parts local variable, the while loop could segfault as that variable would still reference the pfree'd Bitmapset. Backpatch to 15. 52f3de874 was backpatched to 14, but there's no bms_del_member() there due to live_parts not yet existing in RelOptInfo in that version. Technically there's no bug in version 15 as bms_del_member() didn't pfree when the set became empty prior to 00b41463c (from v16). Applied to v15 anyway to keep the code similar and to avoid the bad coding pattern. Author: Bernd Reiß Reviewed-by: David Rowley Discussion: https://postgr.es/m/6b88f27a-c45c-4826-8e37-d61a04d90182@gmx.at Backpatch-through: 15 --- src/backend/optimizer/util/inherit.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/backend/optimizer/util/inherit.c b/src/backend/optimizer/util/inherit.c index 17e51cd75d744..246749309c436 100644 --- a/src/backend/optimizer/util/inherit.c +++ b/src/backend/optimizer/util/inherit.c @@ -322,7 +322,6 @@ expand_partitioned_rtentry(PlannerInfo *root, RelOptInfo *relinfo, PlanRowMark *top_parentrc, LOCKMODE lockmode) { PartitionDesc partdesc; - Bitmapset *live_parts; int num_live_parts; int i; @@ -356,10 +355,10 @@ expand_partitioned_rtentry(PlannerInfo *root, RelOptInfo *relinfo, * that survive pruning. Below, we will initialize child objects for the * surviving partitions. */ - relinfo->live_parts = live_parts = prune_append_rel_partitions(relinfo); + relinfo->live_parts = prune_append_rel_partitions(relinfo); /* Expand simple_rel_array and friends to hold child objects. */ - num_live_parts = bms_num_members(live_parts); + num_live_parts = bms_num_members(relinfo->live_parts); if (num_live_parts > 0) expand_planner_arrays(root, num_live_parts); @@ -378,7 +377,7 @@ expand_partitioned_rtentry(PlannerInfo *root, RelOptInfo *relinfo, * table itself, because it's not going to be scanned. */ i = -1; - while ((i = bms_next_member(live_parts, i)) >= 0) + while ((i = bms_next_member(relinfo->live_parts, i)) >= 0) { Oid childOID = partdesc->oids[i]; Relation childrel; From 0c97c72f3f4a6b7daa7873c7ef8e432661f4e070 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 29 Aug 2025 12:05:58 -0400 Subject: [PATCH 202/457] Fix .gitignore for src/interfaces/libpq-oauth. This missed files created when running the oauth tests. --- src/interfaces/libpq-oauth/.gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/interfaces/libpq-oauth/.gitignore b/src/interfaces/libpq-oauth/.gitignore index a4afe7c1c6858..eb5b98aea544c 100644 --- a/src/interfaces/libpq-oauth/.gitignore +++ b/src/interfaces/libpq-oauth/.gitignore @@ -1 +1,4 @@ /exports.list +/oauth_tests + +/tmp_check/ From 8980c724b5591fe758384685d215497215b20357 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Fri, 29 Aug 2025 19:28:46 +0200 Subject: [PATCH 203/457] pg_dump: Fix compression API errorhandling Compression in pg_dump is abstracted using an API with multiple implementations which can be selected at runtime by the user. The API and its implementations have evolved over time, notable commits include bf9aa490db, e9960732a9, 84adc8e20, and 0da243fed. The errorhandling defined by the API was however problematic and the implementations had a few bugs and/or were not following the API specification. This commit modifies the API to ensure that callers can perform errorhandling efficiently and fixes all the implementations such that they all implement the API in the same way. A full list of the changes can be seen below. * write_func: - Make write_func throw an error on all error conditions. All callers of write_func were already checking for success and calling pg_fatal on all errors, so we might as well make the API support that case directly with simpler errorhandling as a result. * open_func: - zstd: move stream initialization from the open function to the read and write functions as they can have fatal errors. Also ensure to dup the file descriptor like none and gzip. - lz4: Ensure to dup the file descriptor like none and gzip. * close_func: - zstd: Ensure to close the file descriptor even if closing down the compressor fails, and clean up state allocation on fclose failures. Make sure to capture errors set by fclose. - lz4: Ensure to close the file descriptor even if closing down the compressor fails, and instead of calling pg_fatal log the failures using pg_log_error. Make sure to capture errors set by fclose. - none: Make sure to catch errors set by fclose. * read_func / gets_func: - Make read_func unconditionally return the number of read bytes instead of making it optional per implementation. - lz4: Make sure to call throw an error and not return -1 - gzip: gzread returning zero cannot be assumed to indicate EOF as it is documented to return zero for some types of errors. - lz4, zstd: Convert the _read_internal helper functions to not call pg_fatal on errors to be able to handle gets_func returning NULL on error. * getc_func: - zstd: Use an unsigned char rather than an int to read char into. * LZ4Stream_init: - Make sure to not switch to inited state until we know that initialization succeeded and reset errno just in case. On top of these changes there are minor comment cleanups and improvements as well as an attempt to consistently reset errno in codepaths where it is inspected. This work was initiated by a report of API misuse, which turned into a larger body of work. As this is an internal API these changes can be backpatched into all affected branches. Author: Tom Lane Author: Daniel Gustafsson Reported-by: Evgeniy Gorbanev Discussion: https://postgr.es/m/517794.1750082166@sss.pgh.pa.us Backpatch-through: 16 --- src/bin/pg_dump/compress_gzip.c | 35 +++++-- src/bin/pg_dump/compress_io.c | 2 + src/bin/pg_dump/compress_io.h | 15 +-- src/bin/pg_dump/compress_lz4.c | 92 +++++++++------- src/bin/pg_dump/compress_none.c | 29 +++--- src/bin/pg_dump/compress_zstd.c | 144 ++++++++++++++++---------- src/bin/pg_dump/pg_backup_archiver.c | 4 +- src/bin/pg_dump/pg_backup_directory.c | 52 ++-------- 8 files changed, 208 insertions(+), 165 deletions(-) diff --git a/src/bin/pg_dump/compress_gzip.c b/src/bin/pg_dump/compress_gzip.c index 5a30ebf9bf5b5..4a067e1402c3b 100644 --- a/src/bin/pg_dump/compress_gzip.c +++ b/src/bin/pg_dump/compress_gzip.c @@ -251,34 +251,49 @@ InitCompressorGzip(CompressorState *cs, *---------------------- */ -static bool -Gzip_read(void *ptr, size_t size, size_t *rsize, CompressFileHandle *CFH) +static size_t +Gzip_read(void *ptr, size_t size, CompressFileHandle *CFH) { gzFile gzfp = (gzFile) CFH->private_data; int gzret; gzret = gzread(gzfp, ptr, size); - if (gzret <= 0 && !gzeof(gzfp)) + + /* + * gzread returns zero on EOF as well as some error conditions, and less + * than zero on other error conditions, so we need to inspect for EOF on + * zero. + */ + if (gzret <= 0) { int errnum; - const char *errmsg = gzerror(gzfp, &errnum); + const char *errmsg; + + if (gzret == 0 && gzeof(gzfp)) + return 0; + + errmsg = gzerror(gzfp, &errnum); pg_fatal("could not read from input file: %s", errnum == Z_ERRNO ? strerror(errno) : errmsg); } - if (rsize) - *rsize = (size_t) gzret; - - return true; + return (size_t) gzret; } -static bool +static void Gzip_write(const void *ptr, size_t size, CompressFileHandle *CFH) { gzFile gzfp = (gzFile) CFH->private_data; + int errnum; + const char *errmsg; - return gzwrite(gzfp, ptr, size) > 0; + if (gzwrite(gzfp, ptr, size) != size) + { + errmsg = gzerror(gzfp, &errnum); + pg_fatal("could not write to file: %s", + errnum == Z_ERRNO ? strerror(errno) : errmsg); + } } static int diff --git a/src/bin/pg_dump/compress_io.c b/src/bin/pg_dump/compress_io.c index 8c3d9c911c47b..9cadc6f2a3f34 100644 --- a/src/bin/pg_dump/compress_io.c +++ b/src/bin/pg_dump/compress_io.c @@ -269,6 +269,7 @@ InitDiscoverCompressFileHandle(const char *path, const char *mode) } CFH = InitCompressFileHandle(compression_spec); + errno = 0; if (!CFH->open_func(fname, -1, mode, CFH)) { free_keep_errno(CFH); @@ -289,6 +290,7 @@ EndCompressFileHandle(CompressFileHandle *CFH) { bool ret = false; + errno = 0; if (CFH->private_data) ret = CFH->close_func(CFH); diff --git a/src/bin/pg_dump/compress_io.h b/src/bin/pg_dump/compress_io.h index db9b38744c8e2..25a7bf0904d2e 100644 --- a/src/bin/pg_dump/compress_io.h +++ b/src/bin/pg_dump/compress_io.h @@ -123,21 +123,22 @@ struct CompressFileHandle CompressFileHandle *CFH); /* - * Read 'size' bytes of data from the file and store them into 'ptr'. - * Optionally it will store the number of bytes read in 'rsize'. + * Read up to 'size' bytes of data from the file and store them into + * 'ptr'. * - * Returns true on success and throws an internal error otherwise. + * Returns number of bytes read (this might be less than 'size' if EOF was + * reached). Exits via pg_fatal for all error conditions. */ - bool (*read_func) (void *ptr, size_t size, size_t *rsize, + size_t (*read_func) (void *ptr, size_t size, CompressFileHandle *CFH); /* * Write 'size' bytes of data into the file from 'ptr'. * - * Returns true on success and false on error. + * Returns nothing, exits via pg_fatal for all error conditions. */ - bool (*write_func) (const void *ptr, size_t size, - struct CompressFileHandle *CFH); + void (*write_func) (const void *ptr, size_t size, + CompressFileHandle *CFH); /* * Read at most size - 1 characters from the compress file handle into diff --git a/src/bin/pg_dump/compress_lz4.c b/src/bin/pg_dump/compress_lz4.c index e99f0cad71fcb..e2f7c46829308 100644 --- a/src/bin/pg_dump/compress_lz4.c +++ b/src/bin/pg_dump/compress_lz4.c @@ -12,6 +12,7 @@ *------------------------------------------------------------------------- */ #include "postgres_fe.h" +#include #include "compress_lz4.h" #include "pg_backup_utils.h" @@ -358,7 +359,6 @@ LZ4Stream_init(LZ4State *state, int size, bool compressing) return true; state->compressing = compressing; - state->inited = true; /* When compressing, write LZ4 header to the output stream. */ if (state->compressing) @@ -367,6 +367,7 @@ LZ4Stream_init(LZ4State *state, int size, bool compressing) if (!LZ4State_compression_init(state)) return false; + errno = 0; if (fwrite(state->buffer, 1, state->compressedlen, state->fp) != state->compressedlen) { errno = (errno) ? errno : ENOSPC; @@ -390,6 +391,7 @@ LZ4Stream_init(LZ4State *state, int size, bool compressing) state->overflowlen = 0; } + state->inited = true; return true; } @@ -457,7 +459,11 @@ LZ4Stream_read_internal(LZ4State *state, void *ptr, int ptrsize, bool eol_flag) /* Lazy init */ if (!LZ4Stream_init(state, size, false /* decompressing */ )) + { + pg_log_error("unable to initialize LZ4 library: %s", + LZ4F_getErrorName(state->errcode)); return -1; + } /* No work needs to be done for a zero-sized output buffer */ if (size <= 0) @@ -484,7 +490,10 @@ LZ4Stream_read_internal(LZ4State *state, void *ptr, int ptrsize, bool eol_flag) rsize = fread(readbuf, 1, size, state->fp); if (rsize < size && !feof(state->fp)) + { + pg_log_error("could not read from input file: %m"); return -1; + } rp = (char *) readbuf; rend = (char *) readbuf + rsize; @@ -501,6 +510,8 @@ LZ4Stream_read_internal(LZ4State *state, void *ptr, int ptrsize, bool eol_flag) if (LZ4F_isError(status)) { state->errcode = status; + pg_log_error("could not read from input file: %s", + LZ4F_getErrorName(state->errcode)); return -1; } @@ -558,7 +569,7 @@ LZ4Stream_read_internal(LZ4State *state, void *ptr, int ptrsize, bool eol_flag) /* * Compress size bytes from ptr and write them to the stream. */ -static bool +static void LZ4Stream_write(const void *ptr, size_t size, CompressFileHandle *CFH) { LZ4State *state = (LZ4State *) CFH->private_data; @@ -567,7 +578,8 @@ LZ4Stream_write(const void *ptr, size_t size, CompressFileHandle *CFH) /* Lazy init */ if (!LZ4Stream_init(state, size, true)) - return false; + pg_fatal("unable to initialize LZ4 library: %s", + LZ4F_getErrorName(state->errcode)); while (remaining > 0) { @@ -578,28 +590,24 @@ LZ4Stream_write(const void *ptr, size_t size, CompressFileHandle *CFH) status = LZ4F_compressUpdate(state->ctx, state->buffer, state->buflen, ptr, chunk, NULL); if (LZ4F_isError(status)) - { - state->errcode = status; - return false; - } + pg_fatal("error during writing: %s", LZ4F_getErrorName(status)); + errno = 0; if (fwrite(state->buffer, 1, status, state->fp) != status) { errno = (errno) ? errno : ENOSPC; - return false; + pg_fatal("error during writing: %m"); } ptr = ((const char *) ptr) + chunk; } - - return true; } /* * fread() equivalent implementation for LZ4 compressed files. */ -static bool -LZ4Stream_read(void *ptr, size_t size, size_t *rsize, CompressFileHandle *CFH) +static size_t +LZ4Stream_read(void *ptr, size_t size, CompressFileHandle *CFH) { LZ4State *state = (LZ4State *) CFH->private_data; int ret; @@ -607,10 +615,7 @@ LZ4Stream_read(void *ptr, size_t size, size_t *rsize, CompressFileHandle *CFH) if ((ret = LZ4Stream_read_internal(state, ptr, size, false)) < 0) pg_fatal("could not read from input file: %s", LZ4Stream_get_error(CFH)); - if (rsize) - *rsize = (size_t) ret; - - return true; + return (size_t) ret; } /* @@ -643,11 +648,13 @@ LZ4Stream_gets(char *ptr, int size, CompressFileHandle *CFH) int ret; ret = LZ4Stream_read_internal(state, ptr, size - 1, true); - if (ret < 0 || (ret == 0 && !LZ4Stream_eof(CFH))) - pg_fatal("could not read from input file: %s", LZ4Stream_get_error(CFH)); - /* Done reading */ - if (ret == 0) + /* + * LZ4Stream_read_internal returning 0 or -1 means that it was either an + * EOF or an error, but gets_func is defined to return NULL in either case + * so we can treat both the same here. + */ + if (ret <= 0) return NULL; /* @@ -669,6 +676,7 @@ LZ4Stream_close(CompressFileHandle *CFH) FILE *fp; LZ4State *state = (LZ4State *) CFH->private_data; size_t status; + int ret; fp = state->fp; if (state->inited) @@ -677,25 +685,31 @@ LZ4Stream_close(CompressFileHandle *CFH) { status = LZ4F_compressEnd(state->ctx, state->buffer, state->buflen, NULL); if (LZ4F_isError(status)) - pg_fatal("could not end compression: %s", - LZ4F_getErrorName(status)); - else if (fwrite(state->buffer, 1, status, state->fp) != status) { - errno = (errno) ? errno : ENOSPC; - WRITE_ERROR_EXIT; + pg_log_error("could not end compression: %s", + LZ4F_getErrorName(status)); + } + else + { + errno = 0; + if (fwrite(state->buffer, 1, status, state->fp) != status) + { + errno = (errno) ? errno : ENOSPC; + pg_log_error("could not write to output file: %m"); + } } status = LZ4F_freeCompressionContext(state->ctx); if (LZ4F_isError(status)) - pg_fatal("could not end compression: %s", - LZ4F_getErrorName(status)); + pg_log_error("could not end compression: %s", + LZ4F_getErrorName(status)); } else { status = LZ4F_freeDecompressionContext(state->dtx); if (LZ4F_isError(status)) - pg_fatal("could not end decompression: %s", - LZ4F_getErrorName(status)); + pg_log_error("could not end decompression: %s", + LZ4F_getErrorName(status)); pg_free(state->overflowbuf); } @@ -703,29 +717,35 @@ LZ4Stream_close(CompressFileHandle *CFH) } pg_free(state); + CFH->private_data = NULL; - return fclose(fp) == 0; + errno = 0; + ret = fclose(fp); + if (ret != 0) + { + pg_log_error("could not close file: %m"); + return false; + } + + return true; } static bool LZ4Stream_open(const char *path, int fd, const char *mode, CompressFileHandle *CFH) { - FILE *fp; LZ4State *state = (LZ4State *) CFH->private_data; if (fd >= 0) - fp = fdopen(fd, mode); + state->fp = fdopen(dup(fd), mode); else - fp = fopen(path, mode); - if (fp == NULL) + state->fp = fopen(path, mode); + if (state->fp == NULL) { state->errcode = errno; return false; } - state->fp = fp; - return true; } diff --git a/src/bin/pg_dump/compress_none.c b/src/bin/pg_dump/compress_none.c index 3fc89c9985461..4abb2e95abc88 100644 --- a/src/bin/pg_dump/compress_none.c +++ b/src/bin/pg_dump/compress_none.c @@ -83,35 +83,31 @@ InitCompressorNone(CompressorState *cs, * Private routines */ -static bool -read_none(void *ptr, size_t size, size_t *rsize, CompressFileHandle *CFH) +static size_t +read_none(void *ptr, size_t size, CompressFileHandle *CFH) { FILE *fp = (FILE *) CFH->private_data; size_t ret; - if (size == 0) - return true; - ret = fread(ptr, 1, size, fp); - if (ret != size && !feof(fp)) + if (ferror(fp)) pg_fatal("could not read from input file: %m"); - if (rsize) - *rsize = ret; - - return true; + return ret; } -static bool +static void write_none(const void *ptr, size_t size, CompressFileHandle *CFH) { size_t ret; + errno = 0; ret = fwrite(ptr, 1, size, (FILE *) CFH->private_data); if (ret != size) - return false; - - return true; + { + errno = (errno) ? errno : ENOSPC; + pg_fatal("could not write to file: %m"); + } } static const char * @@ -153,7 +149,12 @@ close_none(CompressFileHandle *CFH) CFH->private_data = NULL; if (fp) + { + errno = 0; ret = fclose(fp); + if (ret != 0) + pg_log_error("could not close file: %m"); + } return ret == 0; } diff --git a/src/bin/pg_dump/compress_zstd.c b/src/bin/pg_dump/compress_zstd.c index cb595b10c2d32..e24d45e1bbe07 100644 --- a/src/bin/pg_dump/compress_zstd.c +++ b/src/bin/pg_dump/compress_zstd.c @@ -13,6 +13,7 @@ */ #include "postgres_fe.h" +#include #include "compress_zstd.h" #include "pg_backup_utils.h" @@ -258,8 +259,8 @@ InitCompressorZstd(CompressorState *cs, * Compressed stream API */ -static bool -Zstd_read(void *ptr, size_t size, size_t *rdsize, CompressFileHandle *CFH) +static size_t +Zstd_read_internal(void *ptr, size_t size, CompressFileHandle *CFH, bool exit_on_error) { ZstdCompressorState *zstdcs = (ZstdCompressorState *) CFH->private_data; ZSTD_inBuffer *input = &zstdcs->input; @@ -268,6 +269,22 @@ Zstd_read(void *ptr, size_t size, size_t *rdsize, CompressFileHandle *CFH) size_t res, cnt; + /* + * If this is the first call to the reading function, initialize the + * required datastructures. + */ + if (zstdcs->dstream == NULL) + { + zstdcs->input.src = pg_malloc0(input_allocated_size); + zstdcs->dstream = ZSTD_createDStream(); + if (zstdcs->dstream == NULL) + { + if (exit_on_error) + pg_fatal("could not initialize compression library"); + return -1; + } + } + output->size = size; output->dst = ptr; output->pos = 0; @@ -292,6 +309,13 @@ Zstd_read(void *ptr, size_t size, size_t *rdsize, CompressFileHandle *CFH) if (input->pos == input->size) { cnt = fread(unconstify(void *, input->src), 1, input_allocated_size, zstdcs->fp); + if (ferror(zstdcs->fp)) + { + if (exit_on_error) + pg_fatal("could not read from input file: %m"); + return -1; + } + input->size = cnt; Assert(cnt <= input_allocated_size); @@ -307,7 +331,11 @@ Zstd_read(void *ptr, size_t size, size_t *rdsize, CompressFileHandle *CFH) res = ZSTD_decompressStream(zstdcs->dstream, output, input); if (ZSTD_isError(res)) - pg_fatal("could not decompress data: %s", ZSTD_getErrorName(res)); + { + if (exit_on_error) + pg_fatal("could not decompress data: %s", ZSTD_getErrorName(res)); + return -1; + } if (output->pos == output->size) break; /* No more room for output */ @@ -320,13 +348,10 @@ Zstd_read(void *ptr, size_t size, size_t *rdsize, CompressFileHandle *CFH) break; /* We read all the data that fits */ } - if (rdsize != NULL) - *rdsize = output->pos; - - return true; + return output->pos; } -static bool +static void Zstd_write(const void *ptr, size_t size, CompressFileHandle *CFH) { ZstdCompressorState *zstdcs = (ZstdCompressorState *) CFH->private_data; @@ -339,41 +364,40 @@ Zstd_write(const void *ptr, size_t size, CompressFileHandle *CFH) input->size = size; input->pos = 0; + if (zstdcs->cstream == NULL) + { + zstdcs->output.size = ZSTD_CStreamOutSize(); + zstdcs->output.dst = pg_malloc0(zstdcs->output.size); + zstdcs->cstream = _ZstdCStreamParams(CFH->compression_spec); + if (zstdcs->cstream == NULL) + pg_fatal("could not initialize compression library"); + } + /* Consume all input, to be flushed later */ while (input->pos != input->size) { output->pos = 0; res = ZSTD_compressStream2(zstdcs->cstream, output, input, ZSTD_e_continue); if (ZSTD_isError(res)) - { - zstdcs->zstderror = ZSTD_getErrorName(res); - return false; - } + pg_fatal("could not write to file: %s", ZSTD_getErrorName(res)); + errno = 0; cnt = fwrite(output->dst, 1, output->pos, zstdcs->fp); if (cnt != output->pos) { - zstdcs->zstderror = strerror(errno); - return false; + errno = (errno) ? errno : ENOSPC; + pg_fatal("could not write to file: %m"); } } - - return size; } static int Zstd_getc(CompressFileHandle *CFH) { - ZstdCompressorState *zstdcs = (ZstdCompressorState *) CFH->private_data; - int ret; + unsigned char ret; - if (CFH->read_func(&ret, 1, NULL, CFH) != 1) - { - if (feof(zstdcs->fp)) - pg_fatal("could not read from input file: end of file"); - else - pg_fatal("could not read from input file: %m"); - } + if (CFH->read_func(&ret, 1, CFH) != 1) + pg_fatal("could not read from input file: end of file"); return ret; } @@ -390,11 +414,7 @@ Zstd_gets(char *buf, int len, CompressFileHandle *CFH) */ for (i = 0; i < len - 1; ++i) { - size_t readsz; - - if (!CFH->read_func(&buf[i], 1, &readsz, CFH)) - break; - if (readsz != 1) + if (Zstd_read_internal(&buf[i], 1, CFH, false) != 1) break; if (buf[i] == '\n') { @@ -406,10 +426,17 @@ Zstd_gets(char *buf, int len, CompressFileHandle *CFH) return i > 0 ? buf : NULL; } +static size_t +Zstd_read(void *ptr, size_t size, CompressFileHandle *CFH) +{ + return Zstd_read_internal(ptr, size, CFH, true); +} + static bool Zstd_close(CompressFileHandle *CFH) { ZstdCompressorState *zstdcs = (ZstdCompressorState *) CFH->private_data; + bool success = true; if (zstdcs->cstream) { @@ -426,14 +453,18 @@ Zstd_close(CompressFileHandle *CFH) if (ZSTD_isError(res)) { zstdcs->zstderror = ZSTD_getErrorName(res); - return false; + success = false; + break; } + errno = 0; cnt = fwrite(output->dst, 1, output->pos, zstdcs->fp); if (cnt != output->pos) { + errno = (errno) ? errno : ENOSPC; zstdcs->zstderror = strerror(errno); - return false; + success = false; + break; } if (res == 0) @@ -450,11 +481,16 @@ Zstd_close(CompressFileHandle *CFH) pg_free(unconstify(void *, zstdcs->input.src)); } + errno = 0; if (fclose(zstdcs->fp) != 0) - return false; + { + zstdcs->zstderror = strerror(errno); + success = false; + } pg_free(zstdcs); - return true; + CFH->private_data = NULL; + return success; } static bool @@ -472,35 +508,33 @@ Zstd_open(const char *path, int fd, const char *mode, FILE *fp; ZstdCompressorState *zstdcs; + /* + * Clear state storage to avoid having the fd point to non-NULL memory on + * error return. + */ + CFH->private_data = NULL; + + zstdcs = (ZstdCompressorState *) pg_malloc_extended(sizeof(*zstdcs), + MCXT_ALLOC_NO_OOM | MCXT_ALLOC_ZERO); + if (!zstdcs) + { + errno = ENOMEM; + return false; + } + if (fd >= 0) - fp = fdopen(fd, mode); + fp = fdopen(dup(fd), mode); else fp = fopen(path, mode); if (fp == NULL) + { + pg_free(zstdcs); return false; + } - zstdcs = (ZstdCompressorState *) pg_malloc0(sizeof(*zstdcs)); - CFH->private_data = zstdcs; zstdcs->fp = fp; - - if (mode[0] == 'r') - { - zstdcs->input.src = pg_malloc0(ZSTD_DStreamInSize()); - zstdcs->dstream = ZSTD_createDStream(); - if (zstdcs->dstream == NULL) - pg_fatal("could not initialize compression library"); - } - else if (mode[0] == 'w' || mode[0] == 'a') - { - zstdcs->output.size = ZSTD_CStreamOutSize(); - zstdcs->output.dst = pg_malloc0(zstdcs->output.size); - zstdcs->cstream = _ZstdCStreamParams(CFH->compression_spec); - if (zstdcs->cstream == NULL) - pg_fatal("could not initialize compression library"); - } - else - pg_fatal("unhandled mode \"%s\"", mode); + CFH->private_data = zstdcs; return true; } diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index bb50a170ce712..f1ed2d9ff909c 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -1881,8 +1881,8 @@ ahwrite(const void *ptr, size_t size, size_t nmemb, ArchiveHandle *AH) { CompressFileHandle *CFH = (CompressFileHandle *) AH->OF; - if (CFH->write_func(ptr, size * nmemb, CFH)) - bytes_written = size * nmemb; + CFH->write_func(ptr, size * nmemb, CFH); + bytes_written = size * nmemb; } if (bytes_written != size * nmemb) diff --git a/src/bin/pg_dump/pg_backup_directory.c b/src/bin/pg_dump/pg_backup_directory.c index bc2a2fb479741..94d401d8a4e5a 100644 --- a/src/bin/pg_dump/pg_backup_directory.c +++ b/src/bin/pg_dump/pg_backup_directory.c @@ -316,15 +316,9 @@ _WriteData(ArchiveHandle *AH, const void *data, size_t dLen) lclContext *ctx = (lclContext *) AH->formatData; CompressFileHandle *CFH = ctx->dataFH; - errno = 0; - if (dLen > 0 && !CFH->write_func(data, dLen, CFH)) - { - /* if write didn't set errno, assume problem is no disk space */ - if (errno == 0) - errno = ENOSPC; - pg_fatal("could not write to output file: %s", - CFH->get_error_func(CFH)); - } + if (dLen <= 0) + return; + CFH->write_func(data, dLen, CFH); } /* @@ -351,7 +345,7 @@ _EndData(ArchiveHandle *AH, TocEntry *te) static void _PrintFileData(ArchiveHandle *AH, char *filename) { - size_t cnt = 0; + size_t cnt; char *buf; size_t buflen; CompressFileHandle *CFH; @@ -366,7 +360,7 @@ _PrintFileData(ArchiveHandle *AH, char *filename) buflen = DEFAULT_IO_BUFFER_SIZE; buf = pg_malloc(buflen); - while (CFH->read_func(buf, buflen, &cnt, CFH) && cnt > 0) + while ((cnt = CFH->read_func(buf, buflen, CFH)) > 0) { ahwrite(buf, 1, cnt, AH); } @@ -470,16 +464,7 @@ _WriteByte(ArchiveHandle *AH, const int i) lclContext *ctx = (lclContext *) AH->formatData; CompressFileHandle *CFH = ctx->dataFH; - errno = 0; - if (!CFH->write_func(&c, 1, CFH)) - { - /* if write didn't set errno, assume problem is no disk space */ - if (errno == 0) - errno = ENOSPC; - pg_fatal("could not write to output file: %s", - CFH->get_error_func(CFH)); - } - + CFH->write_func(&c, 1, CFH); return 1; } @@ -508,15 +493,7 @@ _WriteBuf(ArchiveHandle *AH, const void *buf, size_t len) lclContext *ctx = (lclContext *) AH->formatData; CompressFileHandle *CFH = ctx->dataFH; - errno = 0; - if (!CFH->write_func(buf, len, CFH)) - { - /* if write didn't set errno, assume problem is no disk space */ - if (errno == 0) - errno = ENOSPC; - pg_fatal("could not write to output file: %s", - CFH->get_error_func(CFH)); - } + CFH->write_func(buf, len, CFH); } /* @@ -531,10 +508,10 @@ _ReadBuf(ArchiveHandle *AH, void *buf, size_t len) CompressFileHandle *CFH = ctx->dataFH; /* - * If there was an I/O error, we already exited in readF(), so here we - * exit on short reads. + * We do not expect a short read, so fail if we get one. The read_func + * already dealt with any outright I/O error. */ - if (!CFH->read_func(buf, len, NULL, CFH)) + if (CFH->read_func(buf, len, CFH) != len) pg_fatal("could not read from input file: end of file"); } @@ -677,14 +654,7 @@ _EndLO(ArchiveHandle *AH, TocEntry *te, Oid oid) /* register the LO in blobs_NNN.toc */ len = snprintf(buf, sizeof(buf), "%u blob_%u.dat\n", oid, oid); - if (!CFH->write_func(buf, len, CFH)) - { - /* if write didn't set errno, assume problem is no disk space */ - if (errno == 0) - errno = ENOSPC; - pg_fatal("could not write to LOs TOC file: %s", - CFH->get_error_func(CFH)); - } + CFH->write_func(buf, len, CFH); } /* From e1dacaac3b9f95b10c24726dee4a15d817ca04e4 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Fri, 29 Aug 2025 15:54:47 -0400 Subject: [PATCH 204/457] doc PG 18 relnotes: update to current Backpatch-through: 18 only --- doc/src/sgml/release-18.sgml | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index c3e318dab008b..2deb5fdd328af 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -6,7 +6,7 @@ Release date: - 2025-??-??, CURRENT AS OF 2025-07-29 + 2025-??-??, CURRENT AS OF 2025-08-29 @@ -283,7 +283,6 @@ Author: Peter Eisentraut full-text search as well as the pg_trgm extension. When upgrading such database clusters using pg_upgrade, it is recommended to reindex all indexes related to full-text search and pg_trgm after the upgrade. - § @@ -2989,8 +2988,9 @@ Author: Nathan Bossart - This option can only be used by - and . + This option can only be run by superusers and can only + be used with options and + . @@ -3068,14 +3068,16 @@ Author: Masahiko Sawada - Add options - , , - and (Jeff Davis) + Add option + (Jeff Davis) § + § From a252ed7fba6667f913d74e72dd0af9c9b2c9b3d1 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 30 Aug 2025 17:52:06 -0400 Subject: [PATCH 205/457] doc PG 18 relnotes: add attribution and rewrite text search item Discussion: https://postgr.es/m/aLMo7lJKg8bWUs3y@momjian.us Backpatch-through: 18 --- doc/src/sgml/release-18.sgml | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 2deb5fdd328af..d01686f9d07bf 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -273,16 +273,20 @@ Author: Peter Eisentraut - The locale implementation underlying full-text search was improved. It - now observes the locale provider configured for the database for case - conversions. It was previously hardcoded to use libc. In database - clusters that use a locale provider other than libc (that is, ICU or - builtin) and where the locale configured through that locale provider - behaves differently from the LC_CTYPE setting configured for the database, - this could cause changes in behavior of some functions related to - full-text search as well as the pg_trgm extension. When upgrading such - database clusters using pg_upgrade, it is recommended to reindex all - indexes related to full-text search and pg_trgm after the upgrade. + Change full text search to use the + default collation provider of the cluster to read configuration files + and dictionaries, rather than always using libc (Peter Eisentraut) + + + + Clusters that default to non-libc collation providers (e.g., ICU, + builtin) that behave differently than libc for characters processed + by LC_CTYPE could observe changes in behavior of some full-text + search functions, as well as the extension. + When upgrading such clusters using , it + is recommended to reindex all indexes related to full-text search + and pg_trgm after the upgrade. + (Peter Eisentraut) § From e19c67d0fb16c6dcd75ac4813706a383623b7091 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Sat, 30 Aug 2025 18:21:05 -0400 Subject: [PATCH 206/457] doc PG 18 relnotes: adjust attribution for commit a252ed7fba6 Reported-by: Tom Lane Discussion: https://postgr.es/m/53125.1756591456@sss.pgh.pa.us Backpatch-through: 18 --- doc/src/sgml/release-18.sgml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index d01686f9d07bf..874f3113ccbea 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -276,6 +276,7 @@ Author: Peter Eisentraut Change full text search to use the default collation provider of the cluster to read configuration files and dictionaries, rather than always using libc (Peter Eisentraut) + § @@ -286,8 +287,6 @@ Author: Peter Eisentraut When upgrading such clusters using , it is recommended to reindex all indexes related to full-text search and pg_trgm after the upgrade. - (Peter Eisentraut) - § From 83fa88945929df3931413503bbf3c9ae98457f1a Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 1 Sep 2025 13:07:49 +0200 Subject: [PATCH 207/457] Translation updates Source-Git-URL: https://git.postgresql.org/git/pgtranslation/messages.git Source-Git-Hash: 0a0b90588b76075d4deb646a8c75cb6e9fd062f2 --- src/backend/po/de.po | 2296 ++-- src/backend/po/ja.po | 4 +- src/backend/po/ka.po | 2101 ++-- src/backend/po/ru.po | 14972 ++++++++++++++----------- src/backend/po/sv.po | 404 +- src/bin/initdb/po/ru.po | 369 +- src/bin/pg_amcheck/po/ru.po | 210 +- src/bin/pg_archivecleanup/po/ru.po | 64 +- src/bin/pg_basebackup/po/ru.po | 1046 +- src/bin/pg_basebackup/po/sv.po | 344 +- src/bin/pg_checksums/po/ru.po | 162 +- src/bin/pg_combinebackup/po/ru.po | 270 +- src/bin/pg_config/po/ru.po | 80 +- src/bin/pg_controldata/po/ru.po | 21 +- src/bin/pg_ctl/po/ru.po | 298 +- src/bin/pg_dump/po/de.po | 823 +- src/bin/pg_dump/po/ka.po | 978 +- src/bin/pg_dump/po/ru.po | 1477 +-- src/bin/pg_dump/po/sv.po | 1357 +-- src/bin/pg_resetwal/po/ru.po | 286 +- src/bin/pg_rewind/po/ru.po | 259 +- src/bin/pg_test_fsync/po/ru.po | 86 +- src/bin/pg_upgrade/po/ka.po | 20 +- src/bin/pg_upgrade/po/ru.po | 771 +- src/bin/pg_waldump/po/ru.po | 94 +- src/bin/pg_walsummary/po/ru.po | 56 +- src/bin/psql/po/de.po | 757 +- src/bin/psql/po/ru.po | 3907 ++++--- src/bin/psql/po/sv.po | 784 +- src/bin/scripts/po/ru.po | 393 +- src/interfaces/ecpg/ecpglib/po/ru.po | 8 +- src/interfaces/ecpg/preproc/po/ru.po | 270 +- src/interfaces/libpq/po/de.po | 492 +- src/interfaces/libpq/po/ka.po | 304 +- src/interfaces/libpq/po/sv.po | 138 +- src/pl/plperl/po/ru.po | 84 +- src/pl/plpgsql/src/po/ru.po | 355 +- src/pl/plpython/po/ru.po | 164 +- src/pl/tcl/po/ru.po | 46 +- 39 files changed, 19621 insertions(+), 16929 deletions(-) diff --git a/src/backend/po/de.po b/src/backend/po/de.po index da6d4e841c3cc..58bd0f37a5f8a 100644 --- a/src/backend/po/de.po +++ b/src/backend/po/de.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-08-08 06:11+0000\n" -"PO-Revision-Date: 2025-08-08 11:37+0200\n" +"POT-Creation-Date: 2025-08-28 07:41+0000\n" +"PO-Revision-Date: 2025-08-28 19:48+0200\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -81,15 +81,15 @@ msgstr "nicht aufgezeichnet" #: ../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 +#: utils/time/snapmgr.c:1448 #, c-format msgid "could not open file \"%s\" for reading: %m" 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:3612 -#: access/transam/xlog.c:4503 access/transam/xlogrecovery.c:1246 +#: 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 #: backup/walsummary.c:283 commands/extension.c:3817 libpq/hba.c:769 @@ -104,7 +104,7 @@ 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:3617 access/transam/xlog.c:4508 +#: 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:2489 #: replication/slot.c:2530 replication/walsender.c:634 @@ -118,10 +118,10 @@ 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: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 +#: 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 @@ -158,9 +158,9 @@ 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:3348 -#: access/transam/xlog.c:3528 access/transam/xlog.c:3567 -#: access/transam/xlog.c:3760 access/transam/xlog.c:4493 +#: 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/xlogutils.c:825 backup/basebackup.c:549 #: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 @@ -174,8 +174,8 @@ msgstr "" #: 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:1585 -#: utils/init/miscinit.c:1719 utils/init/miscinit.c:1796 utils/misc/guc.c:4779 +#: 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" @@ -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:9464 access/transam/xlogfuncs.c:699 +#: access/transam/xlog.c:9324 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,9 +197,9 @@ 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: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 +#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 +#: access/transam/xlog.c:4333 access/transam/xlog.c:8710 +#: access/transam/xlog.c:8754 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 @@ -230,7 +230,7 @@ msgstr "konnte Datei »%s« nicht fsyncen: %m" #: 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/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 @@ -358,7 +358,7 @@ msgstr "konnte Verzeichnis »%s« nicht lesen: %m" #: 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 +#: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "konnte Datei »%s« nicht in »%s« umbenennen: %m" @@ -468,10 +468,8 @@ msgid "Unicode low surrogate must follow a high surrogate." msgstr "Unicode-Low-Surrogate muss auf ein High-Surrogate folgen." #: ../common/jsonapi.c:2526 -#, fuzzy -#| msgid "out of memory while allocating a WAL reading processor" msgid "out of memory while constructing error description" -msgstr "Speicher aufgebraucht beim Anlegen eines WAL-Leseprozessors" +msgstr "Speicher aufgebraucht beim Konstruieren der Fehlerbeschreibung" #: ../common/logging.c:279 #, c-format @@ -723,7 +721,7 @@ msgstr "konnte Statuscode des Subprozesses nicht ermitteln: Fehlercode %lu" #: 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 +#: utils/time/snapmgr.c:1609 #, c-format msgid "could not remove file \"%s\": %m" msgstr "konnte Datei »%s« nicht löschen: %m" @@ -748,10 +746,9 @@ msgid "could not encode server key" msgstr "konnte Server Key nicht kodieren" #: ../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 "Länge der Bitkette überschreitet erlaubtes Maximum (%d)" +msgstr "Zeichenkettenpuffer überschreitet maximale erlaubte Länge (%zu Bytes)" #: ../common/stringinfo.c:363 #, c-format @@ -759,17 +756,13 @@ msgid "Cannot enlarge string buffer containing %d bytes by %d more bytes." msgstr "Kann Zeichenkettenpuffer mit %d Bytes nicht um %d Bytes vergrößern." #: ../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 "" -"Speicher aufgebraucht\n" +"Zeichenkettenpuffer überschreitet maximale erlaubte Länge (%zu Bytes)\n" "\n" "Kann Zeichenkettenpuffer mit %d Bytes nicht um %d Bytes vergrößern.\n" @@ -905,7 +898,7 @@ msgstr "Aufforderung für BRIN-Range-Summarization für Index »%s« Seite %u wu #: 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/attribute_stats.c:190 statistics/attribute_stats.c:934 #: statistics/relation_stats.c:97 #, c-format msgid "recovery is in progress" @@ -1024,10 +1017,9 @@ msgid "operator class \"%s\" of access method %s is missing support function %d" msgstr "in Operatorklasse »%s« für Zugriffsmethode %s fehlt Support-Funktion %d" #: 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 "Zurückgegebener Typ %1$s stimmt in Spalte %3$d nicht mit erwartetem Typ %2$s überein." +msgstr "Zurückgegebener Typ %1$s stimmt in Spalte »%3$s« (Position %4$d) nicht mit erwartetem Typ %2$s überein." #: access/common/attmap.c:147 #, c-format @@ -1206,12 +1198,12 @@ msgstr "konnte Tupel mit Index »%s« nicht erneut finden" msgid "could not identify a comparison function for type %s" msgstr "konnte keine Vergleichsfunktion für Typ %s ermitteln" -#: 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 "alte GIN-Indexe unterstützen keine Scans des ganzen Index oder Suchen nach NULL-Werten" -#: access/gin/ginscan.c:438 +#: access/gin/ginscan.c:481 #, c-format msgid "To fix this, do REINDEX INDEX \"%s\"." msgstr "Um das zu reparieren, führen Sie REINDEX INDEX \"%s\" aus." @@ -1384,7 +1376,7 @@ msgstr "Versuch ein unsichtbares Tupel zu aktualisieren" 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:3399 +#: access/heap/heapam.c:6405 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" @@ -1407,14 +1399,14 @@ 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:3373 access/transam/xlog.c:3581 -#: access/transam/xlog.c:4445 access/transam/xlog.c:9453 +#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 +#: access/transam/xlog.c:4312 access/transam/xlog.c:9313 #: 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 +#: 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 "konnte Datei »%s« nicht erstellen: %m" @@ -1426,16 +1418,16 @@ 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:3434 access/transam/xlog.c:3637 -#: access/transam/xlog.c:4457 commands/dbcommands.c:507 +#: 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:2341 storage/file/buffile.c:545 -#: storage/file/copydir.c:213 utils/init/miscinit.c:1660 -#: utils/init/miscinit.c:1671 utils/init/miscinit.c:1679 utils/misc/guc.c:4488 +#: 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 +#: utils/time/snapmgr.c:1257 utils/time/snapmgr.c:1264 #, c-format msgid "could not write to file \"%s\": %m" msgstr "konnte nicht in Datei »%s« schreiben: %m" @@ -1476,10 +1468,9 @@ msgid "automatic vacuum of table \"%s.%s.%s\": index scans: %d\n" msgstr "automatisches Vacuum der Tabelle »%s.%s.%s«: Index-Scans: %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 "Seiten: %u entfernt, %u verbleiben, %u gescannt (%.2f%% der Gesamtzahl)\n" +msgstr "Seiten: %u entfernt, %u verbleiben, %u gescannt (%.2f%% der Gesamtzahl), %u mit Eager Scan gelesen\n" #: access/heap/vacuumlazy.c:1024 #, c-format @@ -1514,7 +1505,7 @@ msgstr "eingefroren: in %u Seiten der Tabelle (%.2f%% der Gesamtzahl) wurden %

) rows due to data type incompatibility" -msgstr "%llu Zeile wurde übersprungen wegen Datentypinkompatibilität" +msgstr "mehr als REJECT_LIMIT (%) Zeilen wurden übersprungen wegen Datentypinkompatibilität" #: commands/copyfrom.c:1474 #, c-format @@ -7573,10 +7542,9 @@ msgstr "COPY-Ende-Markierung stimmt nicht mit vorherigem Newline-Stil überein" #: commands/copyfromparse.c:1473 commands/copyfromparse.c:1484 #: commands/copyfromparse.c:1500 -#, fuzzy, c-format -#| msgid "end-of-copy marker does not match previous newline style" +#, c-format msgid "end-of-copy marker is not alone on its line" -msgstr "COPY-Ende-Markierung stimmt nicht mit vorherigem Newline-Stil überein" +msgstr "COPY-Ende-Markierung ist nicht allein auf der Zeile" #: commands/copyfromparse.c:1773 commands/copyfromparse.c:1988 #, c-format @@ -7629,10 +7597,9 @@ msgid "Try the COPY (SELECT ...) TO variant." msgstr "Versuchen Sie die Variante COPY (SELECT ...) TO." #: commands/copyto.c:660 -#, fuzzy, c-format -#| msgid "cannot copy from materialized view \"%s\"" +#, c-format msgid "cannot copy from unpopulated materialized view \"%s\"" -msgstr "kann nicht aus materialisierter Sicht »%s« kopieren" +msgstr "kann nicht aus unbefüllter materialisierter Sicht »%s« kopieren" #: commands/copyto.c:662 executor/execUtils.c:760 #, c-format @@ -7808,16 +7775,14 @@ msgid "invalid LC_COLLATE locale name: \"%s\"" msgstr "ungültiger LC_COLLATE-Locale-Name: »%s«" #: commands/dbcommands.c:1073 commands/dbcommands.c:1091 -#, fuzzy, c-format -#| msgid "If the locale name is specific to ICU, use ICU_LOCALE." +#, c-format msgid "If the locale name is specific to the builtin provider, use BUILTIN_LOCALE." -msgstr "Wenn der Locale-Name nur für ICU gültig ist, verwenden Sie ICU_LOCALE." +msgstr "Wenn der Locale-Name nur für den Provider »builtin« gültig ist, verwenden Sie BUILTIN_LOCALE." #: commands/dbcommands.c:1078 commands/dbcommands.c:1096 -#, fuzzy, c-format -#| msgid "If the locale name is specific to ICU, use ICU_LOCALE." +#, c-format msgid "If the locale name is specific to the ICU provider, use ICU_LOCALE." -msgstr "Wenn der Locale-Name nur für ICU gültig ist, verwenden Sie ICU_LOCALE." +msgstr "Wenn der Locale-Name nur für den ICU-Provider gültig ist, verwenden Sie ICU_LOCALE." #: commands/dbcommands.c:1090 commands/dbcommands.c:1095 #: commands/dbcommands.c:1100 @@ -8503,22 +8468,19 @@ msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true" msgstr "Parameter »schema« kann nicht angegeben werden, wenn »relocatable« an ist" #: commands/extension.c:867 -#, fuzzy, c-format -#| msgid "SQL statement \"%s\"" +#, c-format msgid "SQL statement \"%.*s\"" -msgstr "SQL-Anweisung »%s«" +msgstr "SQL-Anweisung »%.*s«" #: commands/extension.c:896 -#, fuzzy, c-format -#| msgid "unrecognized descriptor item \"%s\" on line %d" +#, c-format msgid "extension script file \"%s\", near line %d" -msgstr "unbekanntes Deskriptorelement »%s« auf Zeile %d" +msgstr "Erweiterungs-Skript-Datei »%s«, in der Nähe von Zeile %d" #: commands/extension.c:900 -#, fuzzy, c-format -#| msgid "skipping special file \"%s\"" +#, c-format msgid "extension script file \"%s\"" -msgstr "überspringe besondere Datei »%s«" +msgstr "Erweiterungs-Skript-Datei »%s«" #: commands/extension.c:1012 #, c-format @@ -8695,7 +8657,7 @@ msgstr "konnte Multirange-Typ für Datentyp %s nicht finden" msgid "file \"%s\" is too large" msgstr "Datei »%s« ist zu groß" -#: commands/extension.c:3894 utils/fmgr/dfmgr.c:618 +#: commands/extension.c:3894 utils/fmgr/dfmgr.c:625 #, c-format msgid "component in parameter \"%s\" is not an absolute path" msgstr "eine Komponente im Parameter »%s« ist kein absoluter Pfad" @@ -9239,10 +9201,9 @@ msgid "access method \"%s\" does not support exclusion constraints" msgstr "Zugriffsmethode »%s« unterstützt keine Exclusion-Constraints" #: commands/indexcmds.c:892 -#, fuzzy, c-format -#| msgid "access method \"%s\" does not support exclusion constraints" +#, c-format msgid "access method \"%s\" does not support WITHOUT OVERLAPS constraints" -msgstr "Zugriffsmethode »%s« unterstützt keine Exclusion-Constraints" +msgstr "Zugriffsmethode »%s« unterstützt keine WITHOUT-OVERLAPS-Constraints" #: commands/indexcmds.c:1019 #, c-format @@ -9265,10 +9226,9 @@ msgid "could not identify an equality operator for type %s" msgstr "konnte keinen Ist-Gleich-Operator für Typ %s ermitteln" #: commands/indexcmds.c:1057 commands/indexcmds.c:2491 -#, fuzzy, c-format -#| msgid "operator family %s for access method %s" +#, c-format msgid "There is no suitable operator in operator family \"%s\" for access method \"%s\"." -msgstr "Operatorfamilie %s für Zugriffsmethode %s" +msgstr "Es gibt keinen passenden Operator in Operatorfamilie »%s« für Zugriffsmethode »%s«." #: commands/indexcmds.c:1077 #, c-format @@ -9291,22 +9251,19 @@ msgid "index creation on system columns is not supported" msgstr "Indexerzeugung für Systemspalten wird nicht unterstützt" #: commands/indexcmds.c:1123 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "primary keys on virtual generated columns are not supported" -msgstr "Indexerzeugung für Systemspalten wird nicht unterstützt" +msgstr "Primärschlüssel über virtuelle generierte Spalten werden nicht unterstützt" #: commands/indexcmds.c:1125 commands/indexcmds.c:1164 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "unique constraints on virtual generated columns are not supported" -msgstr "Indexerzeugung für Systemspalten wird nicht unterstützt" +msgstr "Unique Constraints über virtuelle generierte Spalten werden nicht unterstützt" #: commands/indexcmds.c:1126 commands/indexcmds.c:1165 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "indexes on virtual generated columns are not supported" -msgstr "Indexerzeugung für Systemspalten wird nicht unterstützt" +msgstr "Indexe über virtuelle generierte Spalten werden nicht unterstützt" #: commands/indexcmds.c:1397 tcop/utility.c:1518 #, c-format @@ -9429,22 +9386,19 @@ msgid "there are multiple default operator classes for data type %s" msgstr "es gibt mehrere Standardoperatorklassen für Datentyp %s" #: commands/indexcmds.c:2470 commands/indexcmds.c:2489 -#, fuzzy, c-format -#| msgid "could not identify an ordering operator for type %s" +#, c-format msgid "could not identify an overlaps operator for type %s" -msgstr "konnte keine Sortieroperator für Typ %s ermitteln" +msgstr "konnte keinen Überlappungsoperator für Typ %s ermitteln" #: commands/indexcmds.c:2471 commands/indexcmds.c:2490 -#, fuzzy, c-format -#| msgid "could not identify an inequality operator for type %s" +#, c-format msgid "could not identify a contained-by operator for type %s" -msgstr "konnte keinen Ist-Ungleich-Operator für Typ %s ermitteln" +msgstr "konnte keinen Contained-By-Operator für Typ %s ermitteln" #: commands/indexcmds.c:2472 commands/tablecmds.c:10333 -#, fuzzy, c-format -#| msgid "Could not translate compare type %d for operator family \"%s\", input type %s, access method \"%s\"." +#, c-format msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." -msgstr "Konnte Vergleichstyp %d für Operatorfamilie »%s«, Eingabetyp %s, Zugriffsmethode »%s« nicht übersetzen." +msgstr "Konnte Vergleichstyp %d für Operatorfamilie »%s« von Zugriffsmethode »%s« nicht übersetzen." #: commands/indexcmds.c:2846 #, c-format @@ -9568,10 +9522,9 @@ msgid "Row: %s" msgstr "Zeile: %s" #: commands/matview.c:838 -#, fuzzy, c-format -#| msgid "could not find suitable encoding for locale \"%s\"" +#, c-format msgid "could not find suitable unique index on materialized view \"%s\"" -msgstr "konnte keine passende Kodierung für Locale »%s« finden" +msgstr "konnte keinen passenden Unique Index für materialisierte Sicht »%s« finden" #: commands/opclasscmds.c:124 #, c-format @@ -9686,76 +9639,64 @@ msgid "Valid signature of operator class options parsing function is %s." msgstr "Gültige Signatur einer Operatorklassenoptionsparsefunktion ist %s." #: commands/opclasscmds.c:1259 -#, fuzzy, c-format -#| msgid "btree comparison functions must have two arguments" +#, c-format msgid "ordering comparison functions must have two arguments" -msgstr "btree-Vergleichsfunktionen müssen zwei Argumente haben" +msgstr "ordnende Vergleichsfunktionen müssen zwei Argumente haben" #: commands/opclasscmds.c:1263 -#, fuzzy, c-format -#| msgid "btree comparison functions must return integer" +#, c-format msgid "ordering comparison functions must return integer" -msgstr "btree-Vergleichsfunktionen müssen Typ integer zurückgeben" +msgstr "ordnende Vergleichsfunktionen müssen Typ integer zurückgeben" #: commands/opclasscmds.c:1280 -#, fuzzy, c-format -#| msgid "btree sort support functions must accept type \"internal\"" +#, c-format msgid "ordering sort support functions must accept type \"internal\"" -msgstr "btree-Sortierunterstützungsfunktionen müssen Typ »internal« akzeptieren" +msgstr "ordnende Sortierunterstützungsfunktionen müssen Typ »internal« akzeptieren" #: commands/opclasscmds.c:1284 -#, fuzzy, c-format -#| msgid "btree sort support functions must return void" +#, c-format msgid "ordering sort support functions must return void" -msgstr "btree-Sortierunterstützungsfunktionen müssen Typ void zurückgeben" +msgstr "ordnende Sortierunterstützungsfunktionen müssen Typ void zurückgeben" #: commands/opclasscmds.c:1295 -#, fuzzy, c-format -#| msgid "btree in_range functions must have five arguments" +#, c-format msgid "ordering in_range functions must have five arguments" -msgstr "btree-in_range-Funktionen müssen fünf Argumente haben" +msgstr "ordnende in_range-Funktionen müssen fünf Argumente haben" #: commands/opclasscmds.c:1299 -#, fuzzy, c-format -#| msgid "btree in_range functions must return boolean" +#, c-format msgid "ordering in_range functions must return boolean" -msgstr "btree-in_range-Funktionen müssen Typ boolean zurückgeben" +msgstr "ordnende in_range-Funktionen müssen Typ boolean zurückgeben" #: commands/opclasscmds.c:1315 -#, fuzzy, c-format -#| msgid "btree equal image functions must have one argument" +#, c-format msgid "ordering equal image functions must have one argument" -msgstr "btree-equal-image-Funktionen müssen ein Argument haben" +msgstr "ordnende Equal-Image-Funktionen müssen ein Argument haben" #: commands/opclasscmds.c:1319 -#, fuzzy, c-format -#| msgid "btree equal image functions must return boolean" +#, c-format msgid "ordering equal image functions must return boolean" -msgstr "btree-equal-image-Funktionen müssen Typ boolean zurückgeben" +msgstr "ordnende Equal-Image-Funktionen müssen Typ boolean zurückgeben" #: commands/opclasscmds.c:1332 -#, fuzzy, c-format -#| msgid "btree equal image functions must not be cross-type" +#, c-format msgid "ordering equal image functions must not be cross-type" -msgstr "btree-equal-image-Funktionen dürfen nicht typübergreifend sein" +msgstr "ordnende Equal-Image-Funktionen dürfen nicht typübergreifend sein" #: commands/opclasscmds.c:1340 -#, fuzzy, c-format -#| msgid "btree sort support functions must accept type \"internal\"" +#, c-format msgid "btree skip support functions must accept type \"internal\"" -msgstr "btree-Sortierunterstützungsfunktionen müssen Typ »internal« akzeptieren" +msgstr "btree-Skip-Unterstützungsfunktionen müssen Typ »internal« akzeptieren" #: commands/opclasscmds.c:1344 -#, fuzzy, c-format -#| msgid "btree sort support functions must return void" +#, c-format msgid "btree skip support functions must return void" -msgstr "btree-Sortierunterstützungsfunktionen müssen Typ void zurückgeben" +msgstr "btree-Skip-Unterstützungsfunktionen müssen Typ void zurückgeben" #: commands/opclasscmds.c:1357 -#, fuzzy, c-format -#| msgid "btree equal image functions must not be cross-type" +#, c-format msgid "btree skip support functions must not be cross-type" -msgstr "btree-equal-image-Funktionen dürfen nicht typübergreifend sein" +msgstr "btree-Skip-Unterstützungsfunktionen dürfen nicht typübergreifend sein" #: commands/opclasscmds.c:1367 #, c-format @@ -9993,7 +9934,7 @@ msgstr "nur Superuser können maßgeschneiderte prozedurale Sprachen erzeugen" #: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 #: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 -#: utils/init/miscinit.c:1870 +#: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "ungültige Listensyntax für Parameter »%s«" @@ -10391,10 +10332,9 @@ 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 -#, fuzzy, c-format -#| msgid "statistics creation on system columns is not supported" +#, c-format msgid "statistics creation on virtual generated columns is not supported" -msgstr "Statistikerzeugung für Systemspalten wird nicht unterstützt" +msgstr "Statistikerzeugung für virtuelle generierte Spalten wird nicht unterstützt" #: commands/statscmds.c:260 commands/statscmds.c:289 #, c-format @@ -10499,10 +10439,9 @@ msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können Subskriptionen e #: commands/subscriptioncmds.c:718 commands/subscriptioncmds.c:852 #: commands/subscriptioncmds.c:1594 -#, fuzzy, c-format -#| msgid "could not connect to the publisher: %s" +#, c-format msgid "subscription \"%s\" could not connect to the publisher: %s" -msgstr "konnte nicht mit dem Publikationsserver verbinden: %s" +msgstr "Subskription »%s« konnte nicht mit dem Publikationsserver verbinden: %s" #: commands/subscriptioncmds.c:790 #, c-format @@ -10520,18 +10459,17 @@ msgid "To initiate replication, you must manually create the replication slot, e msgstr "Um die Replikation einzuleiten, müssen Sie den Replikations-Slot manuell erzeugen, die Subskription aktivieren und die Subskription auffrischen." #: commands/subscriptioncmds.c:1070 -#, fuzzy, c-format -#| msgid "cannot set %s for enabled subscription" +#, c-format msgid "cannot set option \"%s\" for enabled subscription" -msgstr "für eine aktivierte Subskription kann nicht %s gesetzt werden" +msgstr "für eine aktivierte Subskription kann Option »%s« nicht gesetzt werden" #: commands/subscriptioncmds.c:1084 #, c-format msgid "cannot set option \"%s\" for a subscription that does not have a slot name" msgstr "Option »%s« kann nicht für eine Subskription ohne Slot-Name gesetzt werden" -#: 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 "Subskription »%s« existiert nicht" @@ -10542,16 +10480,14 @@ msgid "cannot set %s for enabled subscription" msgstr "für eine aktivierte Subskription kann nicht %s gesetzt werden" #: commands/subscriptioncmds.c:1270 -#, fuzzy, c-format -#| msgid "source and target cluster are on the same timeline" +#, c-format msgid "\"slot_name\" and \"two_phase\" cannot be altered at the same time" -msgstr "Quell- und Ziel-Cluster sind auf der gleichen Zeitleiste" +msgstr "»slot_name« und »two_phase« können nicht gleichzeitig geändert werden" #: commands/subscriptioncmds.c:1286 -#, fuzzy, c-format -#| msgid "cannot use %s with a logical replication slot" +#, c-format msgid "cannot alter \"two_phase\" when logical replication worker is still running" -msgstr "%s kann nicht mit einem logischem Replikations-Slot verwendet werden" +msgstr "»two_phase« kann nicht geändert werden, wenn ein Replikationsarbeitsprozess noch läuft" #: commands/subscriptioncmds.c:1287 #, c-format @@ -10559,16 +10495,14 @@ msgid "Try again after some time." msgstr "Versuchen Sie es nach einer Weile erneut." #: commands/subscriptioncmds.c:1300 -#, fuzzy, c-format -#| msgid "cannot disable two_phase when prepared transactions are present" +#, c-format msgid "cannot disable \"two_phase\" when prepared transactions exist" -msgstr "two_phase kann nicht ausgeschaltet werden, wenn vorbereitete Transaktionen existieren" +msgstr "»two_phase« kann nicht ausgeschaltet werden, wenn vorbereitete Transaktionen existieren" #: commands/subscriptioncmds.c:1301 -#, fuzzy, c-format -#| msgid "Stop the standby server and try again." +#, c-format msgid "Resolve these transactions and try again." -msgstr "Halten Sie den Standby-Server an und versuchen Sie erneut." +msgstr "Lösen Sie diese Transaktionen auf und versuchen Sie erneut." #: commands/subscriptioncmds.c:1348 #, c-format @@ -10621,86 +10555,86 @@ msgstr "Verwenden Sie ALTER SUBSCRIPTION ... REFRESH mit copy_data = false, oder msgid "skip WAL location (LSN %X/%X) must be greater than origin LSN %X/%X" msgstr "zu überspringende WAL-Position (LSN %X/%X) muss größer als Origin-LSN %X/%X sein" -#: commands/subscriptioncmds.c:1667 +#: commands/subscriptioncmds.c:1669 #, c-format msgid "subscription \"%s\" does not exist, skipping" msgstr "Subskription »%s« existiert nicht, wird übersprungen" -#: commands/subscriptioncmds.c:1934 +#: commands/subscriptioncmds.c:1936 #, c-format msgid "dropped replication slot \"%s\" on publisher" msgstr "Replikations-Slot »%s« auf dem Publikationsserver wurde gelöscht" -#: 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 "konnte Replikations-Slot »%s« auf dem Publikationsserver nicht löschen: %s" -#: commands/subscriptioncmds.c:2076 +#: commands/subscriptioncmds.c:2078 #, c-format msgid "subscription with OID %u does not exist" msgstr "Subskription mit OID %u existiert nicht" -#: 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 "konnte Liste der replizierten Tabellen nicht vom Publikationsserver empfangen: %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 "Subskription »%s« verlangte copy_data mit origin = NONE, aber könnte Daten kopieren, die einen anderen Origin hatten" -#: 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] "Die zu erzeugende Subskription hat eine Publikation (%s) abonniert, die Tabellen enthält, in die von anderen Subskriptionen geschrieben wird." msgstr[1] "Die zu erzeugende Subskription hat Publikationen (%s) abonniert, die Tabellen enthalten, in die von anderen Subskriptionen geschrieben wird." -#: 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 "Überprüfen Sie, dass die von den publizierten Tabellen kopierten initialen Daten nicht von anderen Origins kamen." -#: commands/subscriptioncmds.c:2296 replication/logical/tablesync.c:933 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 #: replication/pgoutput/pgoutput.c:1162 #, 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" -#: 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 "konnte beim Versuch den Replikations-Slot »%s« zu löschen nicht mit dem Publikationsserver verbinden: %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 "Verwenden Sie %s, um die Subskription zu deaktivieren, und dann %s, um sie vom Slot zu trennen." -#: commands/subscriptioncmds.c:2380 +#: commands/subscriptioncmds.c:2382 #, c-format msgid "publication name \"%s\" used more than once" msgstr "Publikationsname »%s« mehrmals angegeben" -#: commands/subscriptioncmds.c:2424 +#: commands/subscriptioncmds.c:2426 #, c-format msgid "publication \"%s\" is already in subscription \"%s\"" msgstr "Publikation »%s« ist bereits in Subskription »%s«" -#: commands/subscriptioncmds.c:2438 +#: commands/subscriptioncmds.c:2440 #, c-format msgid "publication \"%s\" is not in subscription \"%s\"" msgstr "Publikation »%s« ist nicht in Subskription »%s«" -#: commands/subscriptioncmds.c:2449 +#: commands/subscriptioncmds.c:2451 #, c-format msgid "cannot drop all the publications from a subscription" msgstr "kann nicht alle Publikationen von einer Subskription löschen" -#: commands/subscriptioncmds.c:2506 +#: commands/subscriptioncmds.c:2508 #, c-format msgid "%s requires a Boolean value or \"parallel\"" msgstr "%s erfordert einen Boole’schen Wert oder »parallel«" @@ -10962,10 +10896,9 @@ msgstr "Eine Spalte einer abgeleiteten Tabelle kann nur generiert sein, wenn die #: commands/tablecmds.c:3072 commands/tablecmds.c:3366 #: commands/tablecmds.c:17537 -#, fuzzy, c-format -#| msgid "column \"%s\" inherits from generated column but specifies identity" +#, c-format msgid "column \"%s\" inherits from generated column of different kind" -msgstr "Spalte »%s« erbt von einer generierten Spalte aber ist als Identitätsspalte definiert" +msgstr "Spalte »%s« erbt von einer generierten Spalte einer anderen Art" #: commands/tablecmds.c:3074 commands/tablecmds.c:3368 #: commands/tablecmds.c:17538 @@ -11375,8 +11308,7 @@ msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "Spalte »%s« von Relation »%s« ist keine generierte Spalte" #: commands/tablecmds.c:8612 -#, fuzzy, c-format -#| msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns on tables with check constraints" +#, c-format msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables with check constraints" msgstr "ALTER TABLE / SET EXPRESSION wird nicht unterstützt für virtuelle generierte Spalten in Tabellen mit Check-Constraints" @@ -11387,8 +11319,7 @@ msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." msgstr "Spalte »%s« von Relation »%s« ist eine virtuelle generierte Spalte." #: commands/tablecmds.c:8630 -#, fuzzy, c-format -#| msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns on tables that are part of a publication" +#, 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 wird nicht unterstützt für virtuelle generierte Spalten in Tabellen, die Teil einer Publikation sind" @@ -11478,17 +11409,15 @@ msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" msgstr "Spalte »%s« von Tabelle »%s« ist nicht als NOT NULL markiert" #: commands/tablecmds.c:9554 commands/tablecmds.c:9566 -#, fuzzy, c-format -#| msgid "cannot rename system column \"%s\"" +#, c-format msgid "cannot create primary key on column \"%s\"" -msgstr "Systemspalte »%s« kann nicht umbenannt werden" +msgstr "kann keinen Primärschlüssel über Spalte »%s« erzeugen" #. translator: fourth %s is a constraint characteristic such as NOT VALID #: commands/tablecmds.c:9556 commands/tablecmds.c:9568 -#, fuzzy, c-format -#| msgid "%s constraint on table \"%s\" lacks column \"%s\" which is part of the partition key." +#, c-format msgid "The constraint \"%s\" on column \"%s\" of table \"%s\", marked %s, is incompatible with a primary key." -msgstr "Im %s-Constraint in Tabelle »%s« fehlt Spalte »%s«, welche Teil des Partitionierungsschlüssels ist." +msgstr "Der Constraint »%s« für Spalte »%s« von Tabelle »%s«, markiert als %s, ist inkompatibel mit einem Primärschlüssel." #: commands/tablecmds.c:9692 #, c-format @@ -11541,8 +11470,7 @@ msgid "foreign key uses PERIOD on the referencing table but not the referenced t msgstr "Fremdschlüssel verwendet PERIOD für die verweisende Tabelle, aber nicht für die Tabelle, auf die verwiesen wird" #: commands/tablecmds.c:10192 -#, fuzzy, c-format -#| msgid "foreign key must use PERIOD when referencing a primary using WITHOUT OVERLAPS" +#, c-format msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" msgstr "Fremdschlüssel muss PERIOD verwenden, wenn auf einen Primärschlüssel verwiesen wird, der WITHOUT OVERLAPS verwendet" @@ -11567,16 +11495,14 @@ msgid "number of referencing and referenced columns for foreign key disagree" msgstr "Anzahl der Quell- und Zielspalten im Fremdschlüssel stimmt nicht überein" #: commands/tablecmds.c:10331 -#, fuzzy, c-format -#| msgid "could not identify an ordering operator for type %s" +#, c-format msgid "could not identify an overlaps operator for foreign key" -msgstr "konnte keine Sortieroperator für Typ %s ermitteln" +msgstr "konnte keinen Überlappungsoperator für den Fremdschlüssel ermitteln" #: commands/tablecmds.c:10332 -#, fuzzy, c-format -#| msgid "could not identify an equality operator for type %s" +#, c-format msgid "could not identify an equality operator for foreign key" -msgstr "konnte keinen Ist-Gleich-Operator für Typ %s ermitteln" +msgstr "konnte keinen Ist-Gleich-Operator für den Fremdschlüssel ermitteln" #: commands/tablecmds.c:10397 commands/tablecmds.c:10431 #, c-format @@ -11584,15 +11510,14 @@ msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "Fremdschlüssel-Constraint »%s« kann nicht implementiert werden" #: commands/tablecmds.c:10399 -#, fuzzy, c-format -#| msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." +#, c-format msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table are of incompatible types: %s and %s." -msgstr "Schlüsselspalten »%s« und »%s« haben inkompatible Typen: %s und %s." +msgstr "Schlüsselspalten »%s« der referenzierenden Tabelle und »%s« der referenzierten Tabelle haben inkompatible Typen: %s und %s." #: commands/tablecmds.c:10432 #, 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 "Schlüsselspalten »%s« der referenzierenden Tabelle und »%s« der referenzierten Tabelle haben inkompatible Sortierfolgen: »%s« und »%s«. Wenn eine der Sortierfolgen nichtdeterministisch ist, dann müssen beide Sortierfolgen die selbe sein." #: commands/tablecmds.c:10638 #, c-format @@ -11611,16 +11536,14 @@ msgid "cannot attach table \"%s\" as a partition because it is referenced by for msgstr "kann Tabelle »%s« nicht als Partition anfügen, weil auf sie von Fremdschlüssel »%s« verwiesen wird" #: commands/tablecmds.c:11719 -#, fuzzy, c-format -#| msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" +#, c-format msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" -msgstr "Constraint »%s« kollidiert mit vererbtem Constraint für Relation »%s«" +msgstr "ENFORCED-Einstellung von Constraint »%s« kollidiert mit Constraint »%s« für Relation »%s«" #: commands/tablecmds.c:12181 -#, fuzzy, c-format -#| msgid "constraint must be validated on child tables too" +#, c-format msgid "constraint must be altered in child tables too" -msgstr "Constraint muss ebenso in den abgeleiteten Tabellen validiert werden" +msgstr "Constraint muss ebenso in den abgeleiteten Tabellen geändert werden" #: commands/tablecmds.c:12210 commands/tablecmds.c:12907 #: commands/tablecmds.c:14022 commands/tablecmds.c:14251 @@ -11634,22 +11557,19 @@ msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "Constraint »%s« von Relation »%s« ist kein Fremdschlüssel-Constraint" #: commands/tablecmds.c:12222 -#, fuzzy, c-format -#| msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" +#, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" -msgstr "geerbter Constraint »%s« von Relation »%s« kann nicht gelöscht werden" +msgstr "ENFORCED-Einstellung des Constraints »%s« von Relation »%s« kann nicht geändert werden" #: commands/tablecmds.c:12228 -#, fuzzy, c-format -#| msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" +#, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" -msgstr "Constraint »%s« von Relation »%s« ist kein Fremdschlüssel-Constraint" +msgstr "Constraint »%s« von Relation »%s« ist kein Not-Null-Constraint" #: commands/tablecmds.c:12236 -#, fuzzy, c-format -#| msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" +#, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" -msgstr "geerbter Constraint »%s« von Relation »%s« kann nicht gelöscht werden" +msgstr "geerbter Constraint »%s« von Relation »%s« kann nicht geändert werden" #: commands/tablecmds.c:12276 #, c-format @@ -11967,10 +11887,9 @@ msgid "ROW triggers with transition tables are not supported in inheritance hier msgstr "ROW-Trigger mit Übergangstabellen werden in Vererbungshierarchien nicht unterstützt." #: commands/tablecmds.c:17518 commands/tablecmds.c:17767 -#, fuzzy, c-format -#| msgid "column \"%s\" in child table must be marked NOT NULL" +#, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" -msgstr "Spalte »%s« in abgeleiteter Tabelle muss als NOT NULL markiert sein" +msgstr "Spalte »%s« in abgeleiteter Tabelle »%s« muss als NOT NULL markiert sein" #: commands/tablecmds.c:17528 #, c-format @@ -12003,10 +11922,9 @@ msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s msgstr "Constraint »%s« kollidiert mit NOT-VALID-Constraint für abgeleitete Tabelle »%s«" #: commands/tablecmds.c:17726 -#, fuzzy, c-format -#| msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" +#, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" -msgstr "Constraint »%s« kollidiert mit NOT-VALID-Constraint für abgeleitete Tabelle »%s«" +msgstr "Constraint »%s« kollidiert mit NOT-ENFORCED-Constraint für abgeleitete Tabelle »%s«" #: commands/tablecmds.c:17775 #, c-format @@ -12331,16 +12249,14 @@ msgid "Another index is already attached for partition \"%s\"." msgstr "Ein anderer Index ist bereits für Partition »%s« angefügt." #: commands/tablecmds.c:21881 -#, fuzzy, c-format -#| msgid "invalid attribute in procedure definition" +#, c-format msgid "invalid primary key definition" -msgstr "ungültiges Attribut in Prozedurdefinition" +msgstr "ungültige Primärschlüsseldefinition" #: commands/tablecmds.c:21882 -#, fuzzy, c-format -#| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." +#, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." -msgstr "Spalte »%s« von Relation »%s« ist nicht bereits NOT NULL." +msgstr "Spalte »%s« von Relation »%s« ist nicht als NOT NULL markiert." #: commands/tablecmds.c:22017 #, c-format @@ -12704,33 +12620,33 @@ msgstr "Trigger »%s« für Tabelle »%s« wurde umbenannt" msgid "permission denied: \"%s\" is a system trigger" msgstr "keine Berechtigung: »%s« ist ein Systemtrigger" -#: commands/trigger.c:2386 +#: commands/trigger.c:2388 #, c-format msgid "trigger function %u returned null value" msgstr "Triggerfunktion %u gab NULL-Wert zurück" -#: commands/trigger.c:2446 commands/trigger.c:2675 commands/trigger.c:2947 -#: commands/trigger.c:3321 +#: 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 "Trigger für BEFORE STATEMENT kann keinen Wert zurückgeben" -#: commands/trigger.c:2524 +#: commands/trigger.c:2526 #, c-format msgid "moving row to another partition during a BEFORE FOR EACH ROW trigger is not supported" msgstr "Verschieben einer Zeile in eine andere Partition durch einen BEFORE-FOR-EACH-ROW-Trigger wird nicht unterstützt" -#: commands/trigger.c:2525 +#: commands/trigger.c:2527 #, c-format msgid "Before executing trigger \"%s\", the row was to be in partition \"%s.%s\"." msgstr "Vor der Ausführung von Trigger »%s« gehörte die Zeile in Partition »%s.%s«." -#: commands/trigger.c:2554 commands/trigger.c:2815 commands/trigger.c:3162 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 #, c-format msgid "cannot collect transition tuples from child foreign tables" msgstr "aus abgeleiteten Fremdtabellen können keine Übergangstupel gesammelt werden" -#: commands/trigger.c:3400 executor/nodeModifyTable.c:1687 +#: 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 @@ -12738,7 +12654,7 @@ msgstr "aus abgeleiteten Fremdtabellen können keine Übergangstupel gesammelt w 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." -#: commands/trigger.c:3442 executor/nodeLockRows.c:228 +#: 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 @@ -12746,24 +12662,24 @@ msgstr "Verwenden Sie einen AFTER-Trigger anstelle eines BEFORE-Triggers, um Än msgid "could not serialize access due to concurrent update" msgstr "konnte Zugriff nicht serialisieren wegen gleichzeitiger Aktualisierung" -#: commands/trigger.c:3450 executor/nodeModifyTable.c:1793 +#: 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 "konnte Zugriff nicht serialisieren wegen gleichzeitigem Löschen" -#: commands/trigger.c:4685 +#: commands/trigger.c:4687 #, 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:5866 +#: commands/trigger.c:5868 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "Constraint »%s« ist nicht aufschiebbar" -#: commands/trigger.c:5889 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "Constraint »%s« existiert nicht" @@ -12936,13 +12852,12 @@ msgstr "wiedersprüchliche NULL/NOT NULL-Constraints" #: commands/typecmds.c:952 #, c-format msgid "redundant NOT NULL constraint definition" -msgstr "" +msgstr "überflüssige NOT-NULL-Constraint-Definition" #: commands/typecmds.c:958 -#, fuzzy, c-format -#| msgid "check constraints for domains cannot be marked NO INHERIT" +#, c-format msgid "not-null constraints for domains cannot be marked NO INHERIT" -msgstr "Check-Constraints für Domänen können nicht als NO INHERIT markiert werden" +msgstr "Not-Null-Constraints für Domänen können nicht als NO INHERIT markiert werden" #: commands/typecmds.c:985 #, c-format @@ -12975,16 +12890,14 @@ msgid "specifying constraint deferrability not supported for domains" msgstr "Setzen des Constraint-Modus wird für Domänen nicht unterstützt" #: commands/typecmds.c:1035 -#, fuzzy, c-format -#| msgid "specifying constraint deferrability not supported for domains" +#, c-format msgid "specifying GENERATED not supported for domains" -msgstr "Setzen des Constraint-Modus wird für Domänen nicht unterstützt" +msgstr "Angabe von GENERATED wird für Domänen nicht unterstützt" #: commands/typecmds.c:1043 -#, fuzzy, c-format -#| msgid "specifying constraint deferrability not supported for domains" +#, c-format msgid "specifying constraint enforceability not supported for domains" -msgstr "Setzen des Constraint-Modus wird für Domänen nicht unterstützt" +msgstr "Angabe von ENFORCED/NOT ENFORCED wird für Domänen nicht unterstützt" #: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format @@ -13653,10 +13566,9 @@ msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "überspringe Analyze von »%s« --- Relation existiert nicht mehr" #: commands/vacuum.c:989 -#, fuzzy, c-format -#| msgid "partitioned table \"%s\" was removed concurrently" +#, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" -msgstr "partitionierte Tabelle »%s« wurde nebenläufig entfernt" +msgstr "VACUUM ONLY für partitionierte Tabelle »%s« hat keine Auswirkung" #: commands/vacuum.c:1180 #, c-format @@ -13991,7 +13903,7 @@ msgid_plural "cannot pass more than %d arguments to a function" msgstr[0] "kann nicht mehr als %d Argument an eine Funktion übergeben" msgstr[1] "kann nicht mehr als %d Argumente an eine Funktion übergeben" -#: executor/execExpr.c:2756 executor/execSRF.c:738 executor/functions.c:1581 +#: 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" @@ -14157,139 +14069,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:1067 +#: executor/execMain.c:1066 #, c-format msgid "cannot change sequence \"%s\"" msgstr "kann Sequenz »%s« nicht ändern" -#: executor/execMain.c:1073 +#: executor/execMain.c:1072 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "kann TOAST-Relation »%s« nicht ändern" -#: executor/execMain.c:1092 +#: executor/execMain.c:1091 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "kann materialisierte Sicht »%s« nicht ändern" -#: executor/execMain.c:1104 +#: executor/execMain.c:1103 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "kann nicht in Fremdtabelle »%s« einfügen" -#: executor/execMain.c:1110 +#: executor/execMain.c:1109 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "Fremdtabelle »%s« erlaubt kein Einfügen" -#: executor/execMain.c:1117 +#: executor/execMain.c:1116 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "kann Fremdtabelle »%s« nicht aktualisieren" -#: executor/execMain.c:1123 +#: executor/execMain.c:1122 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "Fremdtabelle »%s« erlaubt kein Aktualisieren" -#: executor/execMain.c:1130 +#: executor/execMain.c:1129 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "kann nicht aus Fremdtabelle »%s« löschen" -#: executor/execMain.c:1136 +#: executor/execMain.c:1135 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "Fremdtabelle »%s« erlaubt kein Löschen" -#: executor/execMain.c:1147 +#: executor/execMain.c:1146 #, c-format msgid "cannot change relation \"%s\"" msgstr "kann Relation »%s« nicht ändern" -#: executor/execMain.c:1174 +#: executor/execMain.c:1173 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "kann Zeilen in Sequenz »%s« nicht sperren" -#: executor/execMain.c:1181 +#: executor/execMain.c:1180 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "kann Zeilen in TOAST-Relation »%s« nicht sperren" -#: executor/execMain.c:1188 +#: executor/execMain.c:1187 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "kann Zeilen in Sicht »%s« nicht sperren" -#: executor/execMain.c:1196 +#: executor/execMain.c:1195 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "kann Zeilen in materialisierter Sicht »%s« nicht sperren" -#: executor/execMain.c:1205 executor/execMain.c:2837 +#: executor/execMain.c:1204 executor/execMain.c:2836 #: 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:1211 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "kann Zeilen in Relation »%s« nicht sperren" -#: executor/execMain.c:1934 +#: executor/execMain.c:1933 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "neue Zeile für Relation »%s« verletzt Partitions-Constraint" -#: executor/execMain.c:1936 executor/execMain.c:2048 executor/execMain.c:2186 -#: executor/execMain.c:2294 +#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 +#: executor/execMain.c:2293 #, c-format msgid "Failing row contains %s." msgstr "Fehlgeschlagene Zeile enthält %s." -#: executor/execMain.c:2046 +#: executor/execMain.c:2045 #, 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:2183 +#: executor/execMain.c:2182 #, 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:2292 +#: executor/execMain.c:2291 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "neue Zeile verletzt Check-Option für Sicht »%s«" -#: executor/execMain.c:2302 +#: executor/execMain.c:2301 #, 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:2307 +#: executor/execMain.c:2306 #, 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:2315 +#: executor/execMain.c:2314 #, 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:2320 +#: executor/execMain.c:2319 #, 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:2327 +#: executor/execMain.c:2326 #, 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:2332 +#: executor/execMain.c:2331 #, 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«" @@ -14434,87 +14346,87 @@ msgstr "in diesem Kontext gibt es kein zu speicherndes Tupel" msgid "materialized view \"%s\" has not been populated" msgstr "materialisierte Sicht »%s« wurde noch nicht befüllt" -#: executor/functions.c:291 +#: executor/functions.c:292 #, c-format msgid "could not determine actual type of argument declared %s" msgstr "konnte tatsächlichen Typ von Argument mit deklarierten Typ %s nicht bestimmen" -#: executor/functions.c:714 +#: executor/functions.c:737 #, c-format msgid "cannot COPY to/from client in an SQL function" msgstr "COPY vom/zum Client funktioniert in einer SQL-Funktion nicht" #. 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 ist in SQL-Funktionen nicht erlaubt" #. 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 ist in als nicht »volatile« markierten Funktionen nicht erlaubt" -#: 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 "Rückgabetyp von Funktion stimmt nicht überein; deklariert als %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 "Die letzte Anweisung der Funktion muss ein SELECT oder INSERT/UPDATE/DELETE/MERGE RETURNING sein." -#: 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 "gecachter Plan darf den Ergebnistyp nicht ändern" -#: 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-Funktion »%s« beim Start" -#: executor/functions.c:1921 +#: executor/functions.c:1950 #, c-format msgid "SQL function \"%s\" statement %d" msgstr "SQL-Funktion »%s« Anweisung %d" -#: executor/functions.c:2046 +#: executor/functions.c:2075 #, c-format msgid "calling procedures with output arguments is not supported in SQL functions" msgstr "Aufruf von Prozeduren mit Ausgabeargumenten wird in SQL-Funktionen nicht unterstützt" -#: executor/functions.c:2235 +#: executor/functions.c:2264 #, c-format msgid "Final statement must return exactly one column." msgstr "Die letzte Anweisung muss genau eine Spalte zurückgeben." -#: executor/functions.c:2249 +#: executor/functions.c:2278 #, c-format msgid "Actual return type is %s." msgstr "Eigentlicher Rückgabetyp ist %s." -#: executor/functions.c:2339 +#: executor/functions.c:2368 #, c-format msgid "Final statement returns too many columns." msgstr "Die letzte Anweisung gibt zu viele Spalten zurück." -#: executor/functions.c:2372 +#: executor/functions.c:2401 #, c-format msgid "Final statement returns %s instead of %s at column %d." msgstr "Die letzte Anweisung ergibt %s statt %s in Spalte %d." -#: executor/functions.c:2386 +#: executor/functions.c:2415 #, c-format msgid "Final statement returns too few columns." msgstr "Die letzte Anweisung gibt zu wenige Spalten zurück." -#: executor/functions.c:2414 +#: executor/functions.c:2443 #, c-format msgid "return type %s is not supported for SQL functions" msgstr "Rückgabetyp %s wird von SQL-Funktionen nicht unterstützt" @@ -14765,10 +14677,9 @@ msgid "%s query does not return tuples" msgstr "%s-Anfrage gibt keine Tupel zurück" #: executor/spi.c:2987 -#, fuzzy, c-format -#| msgid "SQL expression \"%s\"" +#, c-format msgid "PL/pgSQL expression \"%s\"" -msgstr "SQL-Ausdruck »%s«" +msgstr "PL/pgSQL-Ausdruck »%s«" #: executor/spi.c:2992 #, c-format @@ -14842,10 +14753,9 @@ msgid "column number must be in range from 1 to %d" msgstr "Spaltennummer muss im Bereich 1 bis %d sein" #: gram.y:2675 -#, fuzzy, c-format -#| msgid "%s constraints cannot be marked NOT VALID" +#, c-format msgid "constraints cannot be altered to be NOT VALID" -msgstr "%s-Constraints können nicht als NOT VALID markiert werden" +msgstr "Constraints können nicht in NOT VALID geändert werden" #: gram.y:3125 #, c-format @@ -15166,17 +15076,15 @@ msgstr "%s-Constraints können nicht als NO INHERIT markiert werden" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19521 -#, fuzzy, c-format -#| msgid "%s constraints cannot be marked NOT VALID" +#, c-format msgid "%s constraints cannot be marked NOT ENFORCED" -msgstr "%s-Constraints können nicht als NOT VALID markiert werden" +msgstr "%s-Constraints können nicht als NOT ENFORCED markiert werden" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19543 -#, fuzzy, c-format -#| msgid "%s constraints cannot be marked DEFERRABLE" +#, c-format msgid "%s constraints cannot be marked ENFORCED" -msgstr "%s-Constraints können nicht als DEFERRABLE markiert werden" +msgstr "%s-Constraints können nicht als ENFORCED markiert werden" #: gram.y:19565 #, c-format @@ -15357,10 +15265,9 @@ msgstr "Client hat einen ungültigen SASL-Authentifizierungsmechanismums gewähl #: 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 -#, fuzzy, c-format -#| msgid "malformed SCRAM message" +#, c-format msgid "malformed OAUTHBEARER message" -msgstr "fehlerhafte SCRAM-Nachricht" +msgstr "fehlerhafte OAUTHBEARER-Nachricht" #: libpq/auth-oauth.c:170 libpq/auth-scram.c:383 #, c-format @@ -15375,13 +15282,12 @@ msgstr "Länge der Nachricht stimmt nicht mit Länge der Eingabe überein." #: libpq/auth-oauth.c:193 #, c-format msgid "Client did not send a kvsep response." -msgstr "" +msgstr "Client hat keine kvsep-Antwort gesendet." #: libpq/auth-oauth.c:221 -#, fuzzy, c-format -#| msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data." +#, c-format msgid "The server does not support channel binding for OAuth, but the client message includes channel binding data." -msgstr "Der Client hat SCRAM-SHA-256 ohne Channel-Binding gewählt, aber die SCRAM-Nachricht enthält Channel-Binding-Daten." +msgstr "Der Server unterstützt Channel-Binding für OAuth nicht, aber die Client-Nachricht enthält Channel-Binding-Daten." #: libpq/auth-oauth.c:231 libpq/auth-scram.c:1003 libpq/auth-scram.c:1033 #, c-format @@ -15404,146 +15310,134 @@ msgid "Unexpected attribute \"%s\" in client-first-message." msgstr "Unerwartetes Attribut »%s« in »client-first-message«." #: libpq/auth-oauth.c:264 -#, fuzzy, c-format -#| msgid "Comma expected, but found character \"%s\"." +#, c-format msgid "Key-value separator expected, but found character \"%s\"." -msgstr "Komma wurde erwartet, aber Zeichen »%s« wurde gefunden." +msgstr "Key-Value-Separator wurde erwartet, aber Zeichen »%s« wurde gefunden." #: libpq/auth-oauth.c:273 -#, fuzzy, c-format -#| msgid "File \"%s\" does not contain valid data." +#, c-format msgid "Message does not contain an auth value." -msgstr "Die Datei »%s« enthält keine gültigen Daten." +msgstr "Nachricht enthält keinen auth-Wert." #: libpq/auth-oauth.c:280 #, c-format msgid "Message contains additional data after the final terminator." -msgstr "" +msgstr "Nachricht enthält zusätzliche Daten nach dem abschließenden Endezeichen." #: libpq/auth-oauth.c:343 #, c-format msgid "Message contains an empty key name." -msgstr "" +msgstr "Nachricht enthält einen leeren Schlüsselnamen." #: libpq/auth-oauth.c:350 #, c-format msgid "Message contains an invalid key name." -msgstr "" +msgstr "Nachricht enthält einen ungültigen Schlüsselnamen." #: libpq/auth-oauth.c:376 -#, fuzzy, c-format -#| msgid "enum %s contains no values" +#, c-format msgid "Message contains an invalid value." -msgstr "Enum %s enthält keine Werte" +msgstr "Nachricht enthält einen ungültigen Wert." #: libpq/auth-oauth.c:421 #, c-format msgid "Message contains an unterminated key/value pair." -msgstr "" +msgstr "Nachricht enthält ein nicht abgeschlossenes Schlüssel/Wert-Paar." #: libpq/auth-oauth.c:439 #, c-format msgid "Message contains a key without a value." -msgstr "" +msgstr "Nachricht enthält einen Schlüssel ohne einen Wert." #: libpq/auth-oauth.c:453 #, c-format msgid "Message contains multiple auth values." -msgstr "" +msgstr "Nachricht enthält mehrere auth-Werte." #: libpq/auth-oauth.c:473 #, c-format msgid "Message did not contain a final terminator." -msgstr "" +msgstr "Nachricht enthielt kein abschließendes Endezeichen." #: libpq/auth-oauth.c:499 -#, fuzzy, c-format -#| msgid "unit \"%s\" not recognized for type %s" +#, c-format msgid "OAuth is not properly configured for this user" -msgstr "Einheit »%s« nicht erkannt für Typ %s" +msgstr "OAuth ist für diesen Benutzer nicht richtig konfiguriert." #: libpq/auth-oauth.c:500 #, c-format msgid "The issuer and scope parameters must be set in pg_hba.conf." -msgstr "" +msgstr "Die Parameter issuer und scope müssen in pg_hba.conf gesetzt sein." #: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 -#, fuzzy, c-format -#| msgid "malformed JSON array" +#, c-format msgid "malformed OAuth bearer token" -msgstr "fehlerhaftes JSON-Array" +msgstr "fehlerhaftes OAuth-Bearer-Token" #: libpq/auth-oauth.c:586 -#, fuzzy, c-format -#| msgid "client selected an invalid SASL authentication mechanism" +#, c-format msgid "Client response indicated a non-Bearer authentication scheme." -msgstr "Client hat einen ungültigen SASL-Authentifizierungsmechanismums gewählt" +msgstr "Client-Antwort gibt ein Nicht-Bearer-Authentifizierungssystem an." #: libpq/auth-oauth.c:603 -#, fuzzy, c-format -#| msgid "Query buffer is empty." +#, c-format msgid "Bearer token is empty." -msgstr "Anfragepuffer ist leer." +msgstr "Bearer-Token ist leer." #: libpq/auth-oauth.c:625 #, c-format msgid "Bearer token is not in the correct format." -msgstr "" +msgstr "Bearer-Token ist nicht im korrekten Format." #: libpq/auth-oauth.c:656 #, c-format msgid "validation of OAuth token requested without a validator loaded" -msgstr "" +msgstr "Validierung von OAuth-Token verlangt ohne geladenen Validator" #: libpq/auth-oauth.c:665 #, c-format msgid "internal error in OAuth validator module" -msgstr "" +msgstr "interner Fehler im OAuth-Validator-Modul" #: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 -#, fuzzy, c-format -#| msgid "Peer authentication failed for user \"%s\"" +#, c-format msgid "OAuth bearer authentication failed for user \"%s\"" -msgstr "Peer-Authentifizierung für Benutzer »%s« fehlgeschlagen" +msgstr "OAuth-Bearer-Authentifizierung für Benutzer »%s« fehlgeschlagen" #: libpq/auth-oauth.c:681 #, c-format msgid "Validator failed to authorize the provided token." -msgstr "" +msgstr "Validator konnte das bereitgestellte Token nicht autorisieren." #: libpq/auth-oauth.c:705 #, c-format msgid "Validator provided no identity." -msgstr "" +msgstr "Validator hat keine Identität angegeben." #: libpq/auth-oauth.c:760 -#, fuzzy, c-format -#| msgid "archive modules have to define the symbol %s" +#, c-format msgid "%s module \"%s\" must define the symbol %s" -msgstr "Archivmodule müssen das Symbol %s definieren" +msgstr "%s-Modul »%s« muss das Symbol %s definieren" #: libpq/auth-oauth.c:773 -#, fuzzy, c-format -#| msgid "incompatible library \"%s\": magic block mismatch" +#, c-format msgid "%s module \"%s\": magic number mismatch" -msgstr "inkompatible Bibliothek »%s«: magischer Block stimmt überein" +msgstr "%s-Modul »%s«: magische Zahl stimmt nicht überein" #: libpq/auth-oauth.c:775 #, c-format msgid "Server has magic number 0x%08X, module has 0x%08X." -msgstr "" +msgstr "Server hat magische Zahl 0x%08X, Modul hat 0x%08X." #: libpq/auth-oauth.c:784 -#, fuzzy, c-format -#| msgid "archive modules must register an archive callback" +#, c-format msgid "%s module \"%s\" must provide a %s callback" -msgstr "Archivmodule müssen einen Archiv-Callback registrieren" +msgstr "%s-Modul »%s« muss einen %s-Callback zur Verfügung stellen" #: libpq/auth-oauth.c:833 -#, fuzzy, c-format -#| msgid "authentication option \"%s\" is only valid for authentication methods %s" +#, c-format msgid "oauth_validator_libraries must be set for authentication method %s" -msgstr "Authentifizierungsoption »%s« ist nur gültig für Authentifizierungsmethoden %s" +msgstr "oauth_validator_libraries muss gesetzt sein für Authentifizierungsmethode \"%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 @@ -15565,16 +15459,14 @@ msgid "line %d of configuration file \"%s\"" msgstr "Zeile %d in Konfigurationsdatei »%s«" #: libpq/auth-oauth.c:867 -#, fuzzy, c-format -#| msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set" +#, c-format msgid "authentication method \"oauth\" requires argument \"validator\" to be set when oauth_validator_libraries contains multiple options" -msgstr "Authentifizierungsmethode »ldap« benötigt Argument »ldapbasedn«, »ldapprefix« oder »ldapsuffix«" +msgstr "Authentifizierungsmethode »oauth« erfordert, dass das Argument »validator« gesetzt ist, wenn oauth_validator_libraries mehrere Optionen enthält" #: libpq/auth-oauth.c:882 -#, fuzzy, c-format -#| msgid "role \"%s\" is not permitted to log in" +#, c-format msgid "validator \"%s\" is not permitted by %s" -msgstr "Rolle »%s« hat keine Berechtigung zum Einloggen" +msgstr "Validator »%s« ist nicht durch %s erlaubt" #: libpq/auth-sasl.c:89 #, c-format @@ -16424,16 +16316,14 @@ msgid "\"%s\" cannot be higher than \"%s\"" msgstr "»%s« kann nicht höher als »%s« sein" #: libpq/be-secure-openssl.c:295 -#, fuzzy, c-format -#| msgid "could not set the cipher list (no valid ciphers available)" +#, c-format msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" -msgstr "konnte Cipher-Liste nicht setzen (keine gültigen Ciphers verfügbar)" +msgstr "konnte TLSv1.2-Cipher-Liste nicht setzen (keine gültigen Ciphers verfügbar)" #: libpq/be-secure-openssl.c:310 -#, fuzzy, c-format -#| msgid "could not set the cipher list (no valid ciphers available)" +#, c-format msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" -msgstr "konnte Cipher-Liste nicht setzen (keine gültigen Ciphers verfügbar)" +msgstr "konnte TLSv1.3-Cipher-Suites nicht setzen (keine gültigen Ciphers verfügbar)" #: libpq/be-secure-openssl.c:331 #, c-format @@ -16566,19 +16456,18 @@ msgid "DH: could not set DH parameters: %s" msgstr "DH: konnte DH-Parameter nicht setzen: %s" #: libpq/be-secure-openssl.c:1439 -#, fuzzy, c-format -#| msgid "could not set group of file \"%s\": %m" +#, c-format msgid "could not set group names specified in ssl_groups: %s" -msgstr "konnte Gruppe von Datei »%s« nicht setzen: %m" +msgstr "konnte die in ssl_groups angegebenen Gruppennamen nicht setzen: %s" #: libpq/be-secure-openssl.c:1441 msgid "No valid groups found" -msgstr "" +msgstr "Keine gültigen Gruppen gefunden" #: libpq/be-secure-openssl.c:1442 #, c-format msgid "Ensure that each group name is spelled correctly and supported by the installed version of OpenSSL." -msgstr "" +msgstr "Stellen Sie sicher, dass jeder Gruppenname richtig geschrieben ist und von der installierten Version von OpenSSL unterstützt wird." #: libpq/be-secure-openssl.c:1488 msgid "no SSL error reported" @@ -16642,7 +16531,7 @@ msgstr "Unterstützung für MD5-Passwörter ist veraltet und wird in einer zukü #: libpq/crypt.c:185 #, c-format msgid "Refer to the PostgreSQL documentation for details about migrating to another password type." -msgstr "" +msgstr "Lesen Sie in der PostgreSQL-Dokumentation, wie man zu einem anderen Passworttyp migrieren kann." #: libpq/crypt.c:216 #, c-format @@ -17491,7 +17380,7 @@ msgstr "erweiterbarer Knotentyp »%s« existiert bereits" msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "ExtensibleNodeMethods »%s« wurde nicht registriert" -#: nodes/makefuncs.c:154 nodes/makefuncs.c:180 statistics/extended_stats.c:2306 +#: 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 "Relation »%s« hat keinen zusammengesetzten Typ" @@ -17532,44 +17421,44 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "%s kann nicht auf die nullbare Seite eines äußeren Verbundes angewendet werden" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1462 parser/analyze.c:1815 parser/analyze.c:2074 +#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 #: parser/analyze.c:3395 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s ist nicht in UNION/INTERSECT/EXCEPT erlaubt" -#: optimizer/plan/planner.c:2205 optimizer/plan/planner.c:4091 +#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 #, c-format msgid "could not implement GROUP BY" msgstr "konnte GROUP BY nicht implementieren" -#: optimizer/plan/planner.c:2206 optimizer/plan/planner.c:4092 -#: optimizer/plan/planner.c:4773 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 +#: optimizer/plan/planner.c:4806 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:4772 +#: optimizer/plan/planner.c:4805 #, c-format msgid "could not implement DISTINCT" msgstr "konnte DISTINCT nicht implementieren" -#: optimizer/plan/planner.c:6234 +#: optimizer/plan/planner.c:6267 #, c-format msgid "could not implement window PARTITION BY" msgstr "konnte PARTITION BY für Fenster nicht implementieren" -#: optimizer/plan/planner.c:6235 +#: optimizer/plan/planner.c:6268 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Fensterpartitionierungsspalten müssen sortierbare Datentypen haben." -#: optimizer/plan/planner.c:6239 +#: optimizer/plan/planner.c:6272 #, c-format msgid "could not implement window ORDER BY" msgstr "konnte ORDER BY für Fenster nicht implementieren" -#: optimizer/plan/planner.c:6240 +#: optimizer/plan/planner.c:6273 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Fenstersortierspalten müssen sortierbare Datentypen haben." @@ -17591,16 +17480,14 @@ msgid "could not implement %s" msgstr "konnte %s nicht implementieren" #: optimizer/util/appendinfo.c:165 -#, fuzzy, c-format -#| msgid "constraint \"%s\" of relation \"%s\" does not exist" +#, c-format msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" -msgstr "Constraint »%s« von Relation »%s« existiert nicht" +msgstr "Attribut »%s« von Relation »%s« stimmt nicht mit dem Typ der Elterntabelle überein" #: optimizer/util/appendinfo.c:170 -#, fuzzy, c-format -#| msgid "constraint \"%s\" of relation \"%s\" does not exist" +#, c-format msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" -msgstr "Constraint »%s« von Relation »%s« existiert nicht" +msgstr "Attribut »%s« von Relation »%s« stimmt nicht mit der Sortierfolge der Elterntabelle überein" #: optimizer/util/clauses.c:4966 #, c-format @@ -17700,10 +17587,9 @@ msgstr "SET-Zielspalten können nicht mit dem Relationsnamen qualifiziert werden #. translator: %s is OLD or NEW #: parser/analyze.c:2668 parser/analyze.c:2678 -#, fuzzy, c-format -#| msgid "NEW TABLE cannot be specified multiple times" +#, c-format msgid "%s cannot be specified multiple times" -msgstr "NEW TABLE kann nicht mehrmals angegeben werden" +msgstr "%s kann nicht mehrmals angegeben werden" #: parser/analyze.c:2690 parser/parse_relation.c:473 #, c-format @@ -17867,7 +17753,7 @@ msgstr "Relation »%s« in %s nicht in der FROM-Klausel gefunden" #: parser/parse_agg.c:215 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" -msgstr "konnte keine Sortieroperator für Typ %s ermitteln" +msgstr "konnte keinen Sortieroperator für Typ %s ermitteln" #: parser/parse_agg.c:217 #, c-format @@ -19907,16 +19793,14 @@ msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" msgstr "widersprüchliche NULL/NOT NULL-Deklarationen für Spalte »%s« von Tabelle »%s«" #: parser/parse_utilcmd.c:759 parser/parse_utilcmd.c:1077 -#, fuzzy, c-format -#| msgid "check constraints for domains cannot be marked NO INHERIT" +#, c-format msgid "not-null constraints on partitioned tables cannot be NO INHERIT" -msgstr "Check-Constraints für Domänen können nicht als NO INHERIT markiert werden" +msgstr "Not-Null-Constraints für partitionierte Tabellen können nicht NO INHERIT sein" #: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 -#, fuzzy, c-format -#| msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" +#, c-format msgid "conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" -msgstr "widersprüchliche NULL/NOT NULL-Deklarationen für Spalte »%s« von Tabelle »%s«" +msgstr "widersprüchliche NO INHERIT-Deklarationen für Not-Null-Constraints für Spalte »%s«" #: parser/parse_utilcmd.c:821 #, c-format @@ -20146,22 +20030,19 @@ msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "falsch platzierte INITIALLY IMMEDIATE-Klausel" #: parser/parse_utilcmd.c:3998 -#, fuzzy, c-format -#| msgid "misplaced DEFERRABLE clause" +#, c-format msgid "misplaced ENFORCED clause" -msgstr "falsch platzierte DEFERRABLE-Klausel" +msgstr "falsch platzierte ENFORCED-Klausel" #: parser/parse_utilcmd.c:4003 parser/parse_utilcmd.c:4020 -#, fuzzy, c-format -#| msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" +#, c-format msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" -msgstr "mehrere DEFERRABLE/NOT DEFERRABLE-Klauseln sind nicht erlaubt" +msgstr "mehrere ENFORCED/NOT ENFORCED-Klauseln sind nicht erlaubt" #: parser/parse_utilcmd.c:4015 -#, fuzzy, c-format -#| msgid "misplaced NOT DEFERRABLE clause" +#, c-format msgid "misplaced NOT ENFORCED clause" -msgstr "falsch platzierte NOT DEFERRABLE-Klausel" +msgstr "falsch platzierte NOT ENFORCED-Klausel" #: parser/parse_utilcmd.c:4213 #, c-format @@ -20344,7 +20225,7 @@ msgid "column %d of the partition key has type \"%s\", but supplied value is of msgstr "Spalte %d des Partitionierungsschlüssels hat Typ »%s«, aber der angegebene Wert hat Typ »%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 "konnte »stat« für Datenverzeichnis »%s« nicht ausführen: %m" @@ -20411,27 +20292,27 @@ msgstr "Huge Pages werden auf dieser Plattform nicht unterstützt" msgid "huge pages not supported with the current \"shared_memory_type\" setting" msgstr "Huge Pages werden mit der aktuellen »shared_memory_type«-Einstellung nicht unterstützt" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1406 +#: 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 "bereits bestehender Shared-Memory-Block (Schlüssel %lu, ID %lu) wird noch benutzt" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1408 +#: 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 "Beenden Sie alle alten Serverprozesse, die zum Datenverzeichnis »%s« gehören." -#: port/sysv_sema.c:120 +#: port/sysv_sema.c:135 #, c-format msgid "could not create semaphores: %m" msgstr "konnte Semaphore nicht erzeugen: %m" -#: port/sysv_sema.c:121 +#: port/sysv_sema.c:136 #, c-format msgid "Failed system call was semget(%lu, %d, 0%o)." msgstr "Fehlgeschlagener Systemaufruf war 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" @@ -20440,7 +20321,7 @@ msgstr "" "Dieser Fehler bedeutet *nicht*, dass kein Platz mehr auf der Festplatte ist. Er tritt auf, wenn entweder die Systemhöchstgrenze für die Anzahl Semaphor-Sets (SEMMNI) oder die Systemhöchstgrenze für die Anzahl Semaphore (SEMMNS) überschritten würde. Sie müssen den entsprechenden Kernelparameter erhöhen. Alternativ können Sie den Semaphorverbrauch von PostgreSQL reduzieren indem Sie den Parameter »max_connections« herabsetzen.\n" "Die PostgreSQL-Dokumentation enthält weitere Informationen, wie Sie Ihr System für PostgreSQL konfigurieren können." -#: 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 "Sie müssen möglicherweise den Kernelparameter SEMVMX auf mindestens %d erhöhen. Weitere Informationen finden Sie in der PostgreSQL-Dokumentation." @@ -21074,16 +20955,12 @@ msgid "slot sync worker process" msgstr "Slot-Sync-Arbeitsprozess" #: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 -#, fuzzy -#| msgid "slot sync worker process" msgid "io worker" -msgstr "Slot-Sync-Arbeitsprozess" +msgstr "I/O-Arbeitsprozess" #: postmaster/postmaster.c:2545 postmaster/postmaster.c:2547 -#, fuzzy -#| msgid "could not write to child process: %s\n" msgid "untracked child process" -msgstr "konnte nicht an Kindprozess schreiben: %s\n" +msgstr "nicht verfolgter Kindprozess" #: postmaster/postmaster.c:2580 #, c-format @@ -21169,16 +21046,14 @@ msgid "database system is ready to accept read-only connections" msgstr "Datenbanksystem ist bereit, um lesende Verbindungen anzunehmen" #: postmaster/postmaster.c:3846 -#, fuzzy, c-format -#| msgid "manifest ended unexpectedly" +#, c-format msgid "WAL was shut down unexpectedly" -msgstr "Manifest endete unerwartet" +msgstr "WAL wurde unerwartet heruntergefahren" #: postmaster/postmaster.c:3971 -#, fuzzy, c-format -#| msgid "no slot available for new background worker process" +#, c-format msgid "no slot available for new autovacuum worker process" -msgstr "kein Slot für neuen Background-Worker-Prozess verfügbar" +msgstr "kein Slot für neuen Autovacuum-Worker-Prozess verfügbar" #: postmaster/postmaster.c:3986 #, c-format @@ -21489,10 +21364,9 @@ msgid "logical replication apply worker will serialize the remaining changes of msgstr "Apply-Worker für logische Replikation wird die restlichen Änderungen der Remote-Transaktion %u in eine Datei serialisieren" #: replication/logical/conflict.c:126 -#, fuzzy, c-format -#| msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" +#, c-format msgid "conflict detected on relation \"%s.%s\": conflict=%s" -msgstr "für Relation »%s.%s« in Publikation »%s« kann keine Spaltenliste verwendet werden" +msgstr "Konflikt entdeckt für Relation »%s.%s«: Konflikt=%s" #: replication/logical/conflict.c:223 #, c-format @@ -21502,12 +21376,12 @@ msgstr "Schlüssel existiert bereits in Unique Index »%s«, lokal modifiziert i #: 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 "Schlüssel existiert bereits in Unique Index »%s«, modifiziert von Origin »%s« in Transaktion %u um %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 "Schlüssel existiert bereits in Unique Index »%s«, modifiziert von nicht existierendem Origin in Transaktion %u um %s." #: replication/logical/conflict.c:244 #, c-format @@ -21517,17 +21391,17 @@ msgstr "Schlüssel existiert bereits in Unique Index »%s«, modifiziert in Tran #: replication/logical/conflict.c:251 #, c-format msgid "Updating the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Aktualisiere die Zeile, die lokal in Transaktion %u um %s modifiziert wurde." #: 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 "Aktualisiere die Zeile, die von einem anderen Origin »%s« in Transaktion %u um %s modifiziert wurde." #: 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 "Aktualisiere die Zeile, die von einem nicht existierenden Origin in Transaktion %u um %s modifiziert wurde." #: replication/logical/conflict.c:265 msgid "Could not find the row to be updated." @@ -21536,74 +21410,66 @@ msgstr "Konnte die zu aktualisierende Zeile nicht finden." #: replication/logical/conflict.c:270 #, c-format msgid "Deleting the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Lösche die Zeile, die lokal in Transaktion %u um %s modifiziert wurde." #: 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 "Lösche die Zeile, die von einem anderen Origin »%s« in Transaktion %u um %s modifiziert wurde." #: 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 "Lösche die Zeile, die von einem nicht existierenden Origin in Transaktion %u um %s modifiziert wurde." #: replication/logical/conflict.c:284 -#, fuzzy -#| msgid "could not find a \"%s\" to execute" msgid "Could not find the row to be deleted." -msgstr "konnte kein »%s« zum Ausführen finden" +msgstr "Konnte die zu löschende Zeile nicht finden." #: replication/logical/conflict.c:347 #, c-format msgid "Key %s" -msgstr "" +msgstr "Schlüssel %s" #: replication/logical/conflict.c:364 #, c-format -msgid "existing local tuple %s" -msgstr "" +msgid "existing local row %s" +msgstr "bestehende lokale Zeile %s" #: replication/logical/conflict.c:369 #, c-format -msgid "Existing local tuple %s" -msgstr "" +msgid "Existing local row %s" +msgstr "Bestehende lokale Zeile %s" #: replication/logical/conflict.c:396 -#, fuzzy, c-format -#| msgid "composite type %s" -msgid "remote tuple %s" -msgstr "zusammengesetzter Typ %s" +#, c-format +msgid "remote row %s" +msgstr "entfernte Zeile %s" #: replication/logical/conflict.c:400 -#, fuzzy, c-format -#| msgid "composite type %s" -msgid "Remote tuple %s" -msgstr "zusammengesetzter Typ %s" +#, c-format +msgid "Remote row %s" +msgstr "Entfernte Zeile %s" #: replication/logical/conflict.c:434 -#, fuzzy, c-format -#| msgid ", replica identity" +#, c-format msgid "replica identity %s" -msgstr ", Replika-Identität" +msgstr "Replika-Identität %s" #: replication/logical/conflict.c:435 -#, fuzzy, c-format -#| msgid ", replica identity" +#, c-format msgid "replica identity full %s" -msgstr ", Replika-Identität" +msgstr "Replika-Identität Full %s" #: replication/logical/conflict.c:440 -#, fuzzy, c-format -#| msgid "Replica Identity" +#, c-format msgid "Replica identity %s" -msgstr "Replika-Identität" +msgstr "Replika-Identität %s" #: replication/logical/conflict.c:441 -#, fuzzy, c-format -#| msgid "Replica Identity" +#, c-format msgid "Replica identity full %s" -msgstr "Replika-Identität" +msgstr "Replika-Identität Full %s" #: replication/logical/decode.c:177 replication/logical/logical.c:143 #, c-format @@ -21611,10 +21477,9 @@ msgid "logical decoding on standby requires \"wal_level\" >= \"logical\" on the msgstr "logische Dekodierung auf dem Standby-Server erfordert »wal_level« >= »logical« auf dem Primärserver" #: replication/logical/launcher.c:344 -#, fuzzy, c-format -#| msgid "cannot start logical replication workers when max_replication_slots = 0" +#, c-format msgid "cannot start logical replication workers when \"max_active_replication_origins\" is 0" -msgstr "Arbeitsprozesse für logische Replikation können nicht gestartet werden, wenn max_replication_slots = 0" +msgstr "Arbeitsprozesse für logische Replikation können nicht gestartet werden, wenn »max_active_replication_origins« 0 ist" #: replication/logical/launcher.c:437 #, c-format @@ -21758,10 +21623,9 @@ msgid "logical decoding output plugin \"%s\" produces binary output, but functio msgstr "Ausgabe-Plugin »%s« erzeugt binäre Ausgabe, aber Funktion »%s« erwartet Textdaten" #: replication/logical/origin.c:195 -#, fuzzy, c-format -#| msgid "cannot query or manipulate replication origin when \"max_replication_slots\" is 0" +#, c-format msgid "cannot query or manipulate replication origin when \"max_active_replication_origins\" is 0" -msgstr "Replication-Origin kann nicht abgefragt oder geändert werden, wenn »max_replication_slots« 0 ist" +msgstr "Replication-Origin kann nicht abgefragt oder geändert werden, wenn »max_active_replication_origins« 0 ist" #: replication/logical/origin.c:200 #, c-format @@ -21774,16 +21638,14 @@ msgid "replication origin \"%s\" does not exist" msgstr "Replication-Origin »%s« existiert nicht" #: replication/logical/origin.c:275 -#, fuzzy, c-format -#| msgid "replication slot name \"%s\" is too long" +#, c-format msgid "replication origin name is too long" -msgstr "Replikations-Slot-Name »%s« ist zu lang" +msgstr "Replication-Origin-Name ist zu lang" #: replication/logical/origin.c:276 -#, fuzzy, c-format -#| msgid "replication origin name \"%s\" is reserved" +#, c-format msgid "Replication origin names must be no longer than %d bytes." -msgstr "Replication-Origin-Name »%s« ist reserviert" +msgstr "Replication-Origin-Namen dürfen nicht länger als %d Bytes sein." #: replication/logical/origin.c:359 #, c-format @@ -21806,10 +21668,9 @@ msgid "replication checkpoint has wrong magic %u instead of %u" msgstr "Replikations-Checkpoint hat falsche magische Zahl %u statt %u" #: replication/logical/origin.c:821 -#, fuzzy, c-format -#| msgid "could not find free replication state, increase \"max_replication_slots\"" +#, c-format msgid "could not find free replication state, increase \"max_active_replication_origins\"" -msgstr "konnte keinen freien Replication-State finden, erhöhen Sie »max_replication_slots«" +msgstr "konnte keinen freien Replication-State finden, erhöhen Sie »max_active_replication_origins«" #: replication/logical/origin.c:829 #, c-format @@ -21832,10 +21693,9 @@ msgid "could not find free replication state slot for replication origin with ID msgstr "konnte keinen freien Replication-State-Slot für Replication-Origin mit ID %d finden" #: replication/logical/origin.c:980 replication/logical/origin.c:1181 -#, fuzzy, c-format -#| msgid "Increase \"max_replication_slots\" and try again." +#, c-format msgid "Increase \"max_active_replication_origins\" and try again." -msgstr "Erhöhen Sie »max_replication_slots« und versuchen Sie es erneut." +msgstr "Erhöhen Sie »max_active_replication_origins« und versuchen Sie es erneut." #: replication/logical/origin.c:1137 #, c-format @@ -21875,13 +21735,11 @@ msgstr[0] "in Zielrelation für logische Replikation »%s.%s« fehlt eine repliz msgstr[1] "in Zielrelation für logische Replikation »%s.%s« fehlen replizierte Spalten: %s" #: replication/logical/relation.c:273 -#, fuzzy, 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" +#, 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] "in Zielrelation für logische Replikation »%s.%s« fehlt eine replizierte Spalte: %s" -msgstr[1] "in Zielrelation für logische Replikation »%s.%s« fehlen replizierte Spalten: %s" +msgstr[0] "Zielrelation für logische Replikation »%s.%s« hat eine inkompatible generierte Spalte: %s" +msgstr[1] "Zielrelation für logische Replikation »%s.%s« hat inkompatible generierte Spalten: %s" #: replication/logical/relation.c:328 #, c-format @@ -21911,10 +21769,9 @@ msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes msgstr "konnte nicht aus Reorder-Buffer-Spill-Datei lesen: %d statt %u Bytes gelesen" #: replication/logical/reorderbuffer.c:4876 -#, fuzzy, c-format -#| msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m" +#, c-format msgid "could not remove file \"%s\" during removal of %s/%s/xid*: %m" -msgstr "konnte Datei »%s« nicht löschen, bei Löschen von pg_replslot/%s/xid*: %m" +msgstr "konnte Datei »%s« nicht löschen, beim Löschen von %s/%s/xid*: %m" #: replication/logical/reorderbuffer.c:5373 #, c-format @@ -21962,16 +21819,14 @@ 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 -#, fuzzy, c-format -#| msgid "could not fetch primary_slot_name \"%s\" info from the primary server: %s" +#, 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 -#, fuzzy, c-format -#| msgid "Check if primary_slot_name is configured correctly." +#, c-format msgid "Check if \"primary_slot_name\" is configured correctly." -msgstr "Prüfen Sie, ob primary_slot_name korrekt konfiguriert ist." +msgstr "Prüfen Sie, ob »primary_slot_name« korrekt konfiguriert ist." #: replication/logical/slotsync.c:1006 #, c-format @@ -22041,10 +21896,9 @@ msgid "slot sync worker started" msgstr "Slot-Sync-Arbeitsprozess gestartet" #: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 -#, fuzzy, c-format -#| msgid "could not connect to the primary server: %s" +#, c-format msgid "synchronization worker \"%s\" could not connect to the primary server: %s" -msgstr "konnte nicht mit dem Primärserver verbinden: %s" +msgstr "Synchronisierungs-Arbeitsprozess »%s« konnte nicht mit dem Primärserver verbinden: %s" #: replication/logical/snapbuild.c:514 #, c-format @@ -22150,10 +22004,9 @@ msgid "could not start initial contents copy for table \"%s.%s\": %s" msgstr "konnte Kopieren des Anfangsinhalts für Tabelle »%s.%s« nicht starten: %s" #: replication/logical/tablesync.c:1380 -#, fuzzy, c-format -#| msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished" +#, c-format msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" -msgstr "Arbeitsprozess für logische Replikation für Tabellensynchronisation für Subskription »%s«, Tabelle »%s« hat abgeschlossen" +msgstr "Arbeitsprozess für Tabellensynchronisation für Subskription »%s« konnte nicht mit dem Publikationsserver verbinden: %s" #: replication/logical/tablesync.c:1466 #, c-format @@ -22251,87 +22104,86 @@ msgid "subscription has no replication slot set" msgstr "für die Subskription ist kein Replikations-Slot gesetzt" #: replication/logical/worker.c:4592 -#, fuzzy, c-format -#| msgid "could not connect to the publisher: %s" +#, c-format msgid "apply worker for subscription \"%s\" could not connect to the publisher: %s" -msgstr "konnte nicht mit dem Publikationsserver verbinden: %s" +msgstr "Apply-Worker für Subskription »%s« konnte nicht mit dem Publikationsserver verbinden: %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 "Arbeitsprozess für logische Replikation für Subskription %u« wird nicht starten, weil die Subskription während des Starts entfernt wurde" -#: 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 "Arbeitsprozess für logische Replikation für Subskription »%s« wird nicht starten, weil die Subskription während des Starts deaktiviert wurde" -#: 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 "Arbeitsprozess für logische Replikation für Tabellensynchronisation für Subskription »%s«, Tabelle »%s« hat gestartet" -#: replication/logical/worker.c:4734 +#: replication/logical/worker.c:4741 #, c-format 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:4864 +#: replication/logical/worker.c:4871 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "Subskription »%s« wurde wegen eines Fehlers deaktiviert" -#: replication/logical/worker.c:4912 +#: replication/logical/worker.c:4919 #, 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:4926 +#: replication/logical/worker.c:4933 #, 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:5014 +#: replication/logical/worker.c:5021 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "Skip-LSN von Subskription »%s« gelöscht" -#: replication/logical/worker.c:5015 +#: replication/logical/worker.c:5022 #, 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:5043 +#: replication/logical/worker.c:5050 #, 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:5047 +#: replication/logical/worker.c:5054 #, 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:5052 +#: replication/logical/worker.c:5059 #, 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:5063 +#: replication/logical/worker.c:5070 #, 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:5070 +#: replication/logical/worker.c:5077 #, 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:5081 +#: replication/logical/worker.c:5088 #, 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:5089 +#: replication/logical/worker.c:5096 #, 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" @@ -22392,29 +22244,24 @@ 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:1085 -#, fuzzy, c-format -#| msgid "cannot use different column lists for table \"%s.%s\" in different publications" +#, 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 Spaltenlisten für verschiedene Publikationen verwendet werden" +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:1792 -#, fuzzy, c-format -#| msgid "reading publications" +#, c-format msgid "skipped loading publication \"%s\"" -msgstr "lese Publikationen" +msgstr "Laden der Publikation »%s« übersprungen" #: replication/pgoutput/pgoutput.c:1793 -#, fuzzy, c-format -#| msgid "publication %s does not exist on the publisher" -#| msgid_plural "publications %s do not exist on the publisher" +#, c-format msgid "The publication does not exist at this point in the WAL." -msgstr "Publikation %s existiert auf dem Publikationsserver nicht" +msgstr "Die Publikation existiert an diesem Punkt im WAL nicht." #: replication/pgoutput/pgoutput.c:1794 -#, fuzzy, c-format -#| msgid "publication \"%s\" does not exist" +#, c-format msgid "Create the publication if it does not exist." -msgstr "Publikation »%s« existiert nicht" +msgstr "Erzeugen Sie die Publikation, wenn sie nicht existiert." #: replication/slot.c:275 #, c-format @@ -22473,16 +22320,14 @@ msgid "replication slot \"%s\" is active for PID %d" msgstr "Replikations-Slot »%s« ist aktiv für PID %d" #: replication/slot.c:652 -#, fuzzy, c-format -#| msgid "can no longer get changes from replication slot \"%s\"" +#, c-format msgid "can no longer access replication slot \"%s\"" -msgstr "aus Replikations-Slot »%s« können keine Änderungen mehr gelesen werden" +msgstr "auf Replikations-Slot »%s« kann nicht mehr zugegriffen werden" #: replication/slot.c:654 -#, fuzzy, c-format -#| msgid "User was using a logical replication slot that must be invalidated." +#, c-format msgid "This replication slot has been invalidated due to \"%s\"." -msgstr "Benutzer verwendete einen logischen Replikations-Slot, der ungültig gemacht werden muss." +msgstr "Dieser Replikations-Slot wurde wegen »%s« ungültig gemacht." #: replication/slot.c:673 #, c-format @@ -22569,7 +22414,7 @@ msgstr "Logische Dekodierung auf dem Standby-Server erfordert »wal_level« >= #: replication/slot.c:1616 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." -msgstr "" +msgstr "Die Leerlaufzeit des Slots von %lds überschreitet die durch »%s« konfigurierte Dauer von %ds." #: replication/slot.c:1630 #, c-format @@ -22642,16 +22487,14 @@ msgid "Increase \"max_replication_slots\" and try again." msgstr "Erhöhen Sie »max_replication_slots« und versuchen Sie es erneut." #: replication/slot.c:2732 -#, fuzzy, c-format -#| msgid "replication slot \"%s\" does not exist" +#, c-format msgid "Replication slot \"%s\" does not exist." -msgstr "Replikations-Slot »%s« existiert nicht" +msgstr "Replikations-Slot »%s« existiert nicht." #: replication/slot.c:2740 -#, fuzzy, c-format -#| msgid "\"%s\" is not a physical replication slot" +#, c-format msgid "\"%s\" is not a physical replication slot." -msgstr "»%s« ist kein physischer Replikations-Slot" +msgstr "»%s« ist kein physischer Replikations-Slot." #: replication/slot.c:2919 #, c-format @@ -22814,10 +22657,9 @@ msgid "number of synchronous standbys (%d) must be greater than zero" msgstr "Anzahl synchroner Standbys (%d) muss größer als null sein" #: replication/walreceiver.c:276 -#, fuzzy, c-format -#| msgid "could not connect to the primary server: %s" +#, c-format msgid "streaming replication receiver \"%s\" could not connect to the primary server: %s" -msgstr "konnte nicht mit dem Primärserver verbinden: %s" +msgstr "Streaming-Replication-Receiver »%s« konnte nicht mit dem Primärserver verbinden: %s" #: replication/walreceiver.c:324 #, c-format @@ -23530,10 +23372,8 @@ msgid "operator too long" msgstr "Operator zu lang" #: scan.l:1001 -#, fuzzy -#| msgid "parameter number %d is out of range 0..%d" msgid "parameter number too large" -msgstr "Parameternummer %d ist außerhalb des zulässigen Bereichs 0..%d" +msgstr "Parameternummer ist zu groß" #: scan.l:1007 msgid "trailing junk after parameter" @@ -23619,87 +23459,62 @@ msgstr "unbekannter Snowball-Parameter: »%s«" msgid "missing Language parameter" msgstr "Parameter »Language« fehlt" -#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:932 +#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:935 #: statistics/relation_stats.c:98 -#, fuzzy, c-format -#| msgid "%s cannot be executed during recovery." +#, c-format msgid "Statistics cannot be modified during recovery." -msgstr "%s kann nicht während der Wiederherstellung ausgeführt werden." +msgstr "Statistiken können nicht während der Wiederherstellung geändert werden." #: statistics/attribute_stats.c:202 -#, fuzzy, c-format -#| msgid "cannot specify both %s and %s" -msgid "cannot specify both attname and attnum" -msgstr "%s und %s können nicht beide angegeben werden" +#, c-format +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "»%s« und »%s« können nicht beide angegeben werden" #: statistics/attribute_stats.c:228 -#, fuzzy, c-format -#| msgid "must specify at least one column" -msgid "must specify either attname or attnum" -msgstr "mindestens eine Spalte muss angegeben werden" +#, c-format +msgid "must specify either \"%s\" or \"%s\"" +msgstr "entweder »%s« oder »%s« muss angegeben werden" #: statistics/attribute_stats.c:236 -#, fuzzy, c-format -#| msgid "cannot assign to system column \"%s\"" +#, c-format msgid "cannot modify statistics on system column \"%s\"" -msgstr "kann Systemspalte »%s« keinen Wert zuweisen" +msgstr "Statistiken für Systemspalte »%s« können nicht modifiziert werden" #: statistics/attribute_stats.c:300 -#, fuzzy, c-format -#| msgid "cannot determine element type of \"anyarray\" argument" -msgid "unable to determine element type of attribute \"%s\"" -msgstr "kann Elementtyp des Arguments mit Typ »anyarray« nicht bestimmen" - -#: statistics/attribute_stats.c:301 #, c-format -msgid "Cannot set STATISTIC_KIND_MCELEM or STATISTIC_KIND_DECHIST." -msgstr "" +msgid "could not determine element type of column \"%s\"" +msgstr "konnte Elementtyp von Spalte »%s« nicht bestimmen" -#: statistics/attribute_stats.c:316 -#, fuzzy, c-format -#| msgid "could not determine data type for argument %d" -msgid "could not determine less-than operator for attribute \"%s\"" -msgstr "konnte Datentyp von Argument %d nicht ermitteln" +#: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 +#: statistics/attribute_stats.c:333 +#, c-format +msgid "Cannot set %s or %s." +msgstr "Kann %s oder %s nicht setzen." #: statistics/attribute_stats.c:317 #, c-format -msgid "Cannot set STATISTIC_KIND_HISTOGRAM or STATISTIC_KIND_CORRELATION." -msgstr "" - -#: statistics/attribute_stats.c:330 -#, fuzzy, c-format -#| msgid "variable \"%s\" is not an array" -msgid "attribute \"%s\" is not a range type" -msgstr "Variable »%s« ist kein Array" +msgid "could not determine less-than operator for column \"%s\"" +msgstr "konnte Kleiner-Als-Operator für Spalte »%s« nicht bestimmen" -#: statistics/attribute_stats.c:331 +#: statistics/attribute_stats.c:332 #, c-format -msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS_HISTOGRAM." -msgstr "" +msgid "column \"%s\" is not a range type" +msgstr "Spalte »%s« ist kein Range-Typ" -#: statistics/attribute_stats.c:590 statistics/attribute_stats.c:598 -#, fuzzy, c-format -#| msgid "attribute %d of relation with OID %u does not exist" -msgid "attribute %d of relation \"%s\" does not exist" -msgstr "Attribut %d der Relation mit OID %u existiert nicht" - -#: statistics/attribute_stats.c:732 statistics/stat_utils.c:80 -#, fuzzy, c-format -#| msgid "ACL arrays must not contain null values" -msgid "\"%s\" array cannot contain NULL values" -msgstr "ACL-Array darf keine NULL-Werte enthalten" +#: statistics/attribute_stats.c:735 +#, c-format +msgid "\"%s\" array must not contain null values" +msgstr "»%s«-Array darf keine NULL-Werte enthalten" -#: statistics/attribute_stats.c:775 -#, fuzzy, c-format -#| msgid "maximum number of committed subtransactions (%d) exceeded" +#: statistics/attribute_stats.c:778 +#, c-format msgid "maximum number of statistics slots exceeded: %d" -msgstr "maximale Anzahl committeter Subtransaktionen (%d) überschritten" +msgstr "maximale Anzahl Statistik-Slots überschritten: %d" -#: statistics/attribute_stats.c:942 -#, fuzzy, c-format -#| msgid "cannot assign to system column \"%s\"" +#: statistics/attribute_stats.c:945 +#, c-format msgid "cannot clear statistics on system column \"%s\"" -msgstr "kann Systemspalte »%s« keinen Wert zuweisen" +msgstr "Statistiken für Systemspalte »%s« können nicht geleert werden" #: statistics/extended_stats.c:175 #, c-format @@ -23712,219 +23527,204 @@ msgid "function returning record called in context that cannot accept type recor msgstr "Funktion, die einen Record zurückgibt, in einem Zusammenhang aufgerufen, der Typ record nicht verarbeiten kann" #: statistics/relation_stats.c:115 -#, fuzzy, c-format -#| msgid "range subtype cannot be %s" -msgid "reltuples cannot be < -1.0" -msgstr "Bereichtsuntertyp kann nicht %s sein" +#, c-format +msgid "argument \"%s\" must not be less than -1.0" +msgstr "Argument »%s« darf nicht kleiner als -1.0 sein" #: statistics/stat_utils.c:44 -#, fuzzy, c-format -#| msgid "\"%s\" cannot be empty." -msgid "\"%s\" cannot be NULL" -msgstr "»%s« kann nicht leer sein." +#, c-format +msgid "argument \"%s\" must not be null" +msgstr "Argument »%s« darf nicht NULL sein" #: statistics/stat_utils.c:71 -#, fuzzy, c-format -#| msgid "multiranges cannot be constructed from multidimensional arrays" -msgid "\"%s\" cannot be a multidimensional array" -msgstr "Multiranges können nicht aus mehrdimensionalen Arrays konstruiert werden" +#, c-format +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "Argument »%s« darf kein mehrdimensionales Array sein" + +#: statistics/stat_utils.c:80 +#, c-format +msgid "argument \"%s\" array must not contain null values" +msgstr "Array für Argument »%s« darf keine NULL-Werte enthalten" #: statistics/stat_utils.c:111 -#, fuzzy, c-format -#| msgid "aggregate msfunc must be specified when mstype is specified" -msgid "\"%s\" must be specified when \"%s\" is specified" -msgstr "»msfunc« für Aggregatfunktion muss angegeben werden, wenn »mstype« angegeben ist" +#, c-format +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "Argument »%s« muss angegeben werden, wenn Argument »%s« angegeben ist" #: statistics/stat_utils.c:178 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" +#, c-format msgid "cannot modify statistics for relation \"%s\"" -msgstr "für Relation »%s« können keine Statistiken definiert werden" +msgstr "Statistiken für Relation »%s« können nicht modifiziert werden" #: statistics/stat_utils.c:199 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" +#, c-format msgid "cannot modify statistics for shared relation" -msgstr "für Relation »%s« können keine Statistiken definiert werden" +msgstr "Statistiken für geteilte Relation können nicht modifiziert werden" #: statistics/stat_utils.c:252 -#, fuzzy, c-format -#| msgid "unrecognized event name \"%s\"" +#, c-format msgid "unrecognized argument name: \"%s\"" -msgstr "unbekannter Ereignisname »%s«" +msgstr "unbekannter Argumentname »%s«" #: statistics/stat_utils.c:266 -#, fuzzy, c-format -#| msgid "argument of %s must be type %s, not type %s" -msgid "argument \"%s\" has type \"%s\", expected type \"%s\"" -msgstr "Argument von %s muss Typ %s haben, nicht Typ %s" +#, c-format +msgid "argument \"%s\" has type %s, expected type %s" +msgstr "Argument »%s« hat Typ %s, erwarteter Typ %s" #: statistics/stat_utils.c:307 -#, fuzzy, c-format -#| msgid "argument of %s must be a name" +#, c-format msgid "variadic arguments must be name/value pairs" -msgstr "Argument von %s muss ein Name sein" +msgstr "variadische Argumente müssen Name/Wert-Paare sein" #: statistics/stat_utils.c:308 #, c-format msgid "Provide an even number of variadic arguments that can be divided into pairs." -msgstr "" +msgstr "Geben Sie eine gerade Anzahl variadischer Argumente an, die in Paare aufgeteilt werden können." #: statistics/stat_utils.c:322 -#, fuzzy, c-format -#| msgid "path element at position %d is null" -msgid "name at variadic position %d is NULL" -msgstr "Pfadelement auf Position %d ist NULL" +#, c-format +msgid "name at variadic position %d is null" +msgstr "Name auf variadischer Position %d ist NULL" #: statistics/stat_utils.c:326 #, c-format -msgid "name at variadic position %d has type \"%s\", expected type \"%s\"" -msgstr "" +msgid "name at variadic position %d has type %s, expected type %s" +msgstr "Name auf variadischer Position %d hat Typ %s, erwarteter Typ %s" #: storage/aio/aio.c:1340 #, c-format msgid "Only -1 or values bigger than 0 are valid." -msgstr "" +msgstr "Nur -1 oder Werte größer als 0 sind gültig." #: storage/aio/method_io_uring.c:369 msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." -msgstr "" +msgstr "Prüfen Sie, ob io_uring durch /proc/sys/kernel/io_uring_disabled deaktiviert ist." #: storage/aio/method_io_uring.c:374 -#, fuzzy, c-format -#| msgid "Consider increasing the configuration parameter \"%s\"." +#, c-format msgid "Consider increasing \"ulimit -n\" to at least %d." -msgstr "Erhöhen Sie eventuell den Konfigurationsparameter »%s«." +msgstr "Erhöhen Sie eventuell »ulimit -n« auf mindestens %d." #: storage/aio/method_io_uring.c:380 -#, fuzzy -#| msgid "server does not support server-side compression" -msgid "Kernel does not support io_uring." -msgstr "Server unterstützt keine serverseitige Komprimierung" +msgid "The kernel does not support io_uring." +msgstr "Der Kernel unterstützt io_uring nicht." #: storage/aio/method_io_uring.c:388 -#, fuzzy, c-format -#| msgid "could not set timer: %m" +#, c-format msgid "could not setup io_uring queue: %m" -msgstr "konnte Timer nicht setzen: %m" +msgstr "konnte io_uring-Queue nicht einrichten: %m" #: storage/aio/method_io_uring.c:522 #, c-format msgid "completing I/O on behalf of process %d" -msgstr "" +msgstr "komplettiere I/O für Prozess %d" #: storage/aio/method_worker.c:382 #, c-format msgid "I/O worker executing I/O on behalf of process %d" -msgstr "" +msgstr "I/O-Worker, der I/O für Prozess %d ausführt" #: storage/buffer/bufmgr.c:662 storage/buffer/bufmgr.c:818 #, c-format msgid "cannot access temporary tables of other sessions" msgstr "auf temporäre Tabellen anderer Sitzungen kann nicht zugegriffen werden" -#: storage/buffer/bufmgr.c:2708 storage/buffer/localbuf.c:393 +#: storage/buffer/bufmgr.c:2703 storage/buffer/localbuf.c:393 #, c-format msgid "cannot extend relation %s beyond %u blocks" msgstr "kann Relation %s nicht auf über %u Blöcke erweitern" -#: storage/buffer/bufmgr.c:2779 +#: storage/buffer/bufmgr.c:2774 #, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" -msgstr "unerwartete Daten hinter Dateiende in Block %u von Relation %s" +msgid "unexpected data beyond EOF in block %u of relation \"%s\"" +msgstr "unerwartete Daten hinter Dateiende in Block %u von Relation »%s«" -#: storage/buffer/bufmgr.c:2782 +#: storage/buffer/bufmgr.c:2777 #, c-format msgid "This has been seen to occur with buggy kernels; consider updating your system." msgstr "Das scheint mit fehlerhaften Kernels vorzukommen; Sie sollten eine Systemaktualisierung in Betracht ziehen." -#: storage/buffer/bufmgr.c:6183 +#: storage/buffer/bufmgr.c:6178 #, c-format msgid "could not write block %u of %s" msgstr "konnte Block %u von %s nicht schreiben" -#: storage/buffer/bufmgr.c:6187 +#: storage/buffer/bufmgr.c:6182 #, c-format msgid "Multiple failures --- write error might be permanent." msgstr "Mehrere Fehlschläge --- Schreibfehler ist möglicherweise dauerhaft." -#: storage/buffer/bufmgr.c:6204 storage/buffer/bufmgr.c:6219 +#: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 #, c-format -msgid "writing block %u of relation %s" -msgstr "schreibe Block %u von Relation %s" +msgid "writing block %u of relation \"%s\"" +msgstr "schreibe Block %u von Relation »%s«" -#: storage/buffer/bufmgr.c:7318 +#: storage/buffer/bufmgr.c:7313 #, 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 Seite(n) werden mit Nullen gefüllt und %u Prüfsummenfehler werden ignoriert in den Blöcken %u..%u von Relation »%s«" -#: storage/buffer/bufmgr.c:7321 storage/buffer/bufmgr.c:7347 +#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7344 #, c-format -msgid "Block %u held first zeroed page." -msgstr "" +msgid "Block %u held the first zeroed page." +msgstr "Block %u enthielt die erste mit Nullen gefüllte Seite." -#: storage/buffer/bufmgr.c:7323 -#, fuzzy, c-format -#| msgid "See server log for query details." -msgid "See server log for details about the other %d invalid block(s)." -msgstr "Einzelheiten zur Anfrage finden Sie im Serverlog." +#: storage/buffer/bufmgr.c:7318 +#, 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] "Details zu dem anderen %d ungültigen Block finden Sie im Serverlog." +msgstr[1] "Details zu den anderen %d ungültigen Blöcken finden Sie im Serverlog." -#: storage/buffer/bufmgr.c:7338 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "%u invalid pages among blocks %u..%u of relation %s" -msgstr "ungültige Seite in Block %u von Relation %s" +#: storage/buffer/bufmgr.c:7335 +#, c-format +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "%u ungültige Seiten in den Blöcken %u..%u von Relation »%s«" -#: storage/buffer/bufmgr.c:7339 +#: storage/buffer/bufmgr.c:7336 #, c-format -msgid "Block %u held first invalid page." -msgstr "" +msgid "Block %u held the first invalid page." +msgstr "Block %u enthielt die erste ungültige Seite." -#: storage/buffer/bufmgr.c:7340 -#, fuzzy, c-format -#| msgid "See server log for query details." +#: storage/buffer/bufmgr.c:7337 +#, c-format msgid "See server log for the other %u invalid block(s)." -msgstr "Einzelheiten zur Anfrage finden Sie im Serverlog." +msgstr "Die anderen %u ungültigen Blöcke finden Sie im Serverlog." -#: storage/buffer/bufmgr.c:7345 +#: storage/buffer/bufmgr.c:7342 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" -msgstr "ungültige Seite in Block %u von Relation %s; fülle Seite mit Nullen" +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "ungültige Seite in Block %u von Relation »%s«; fülle Seite mit Nullen" -#: storage/buffer/bufmgr.c:7346 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "zeroing out %u invalid pages among blocks %u..%u of relation %s" -msgstr "ungültige Seite in Block %u von Relation %s" +#: storage/buffer/bufmgr.c:7343 +#, c-format +msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "%u ungültige Seiten werden mit Nullen gefüllt in den Blöcken %u..%u von Relation »%s«" -#: storage/buffer/bufmgr.c:7348 -#, fuzzy, c-format -#| msgid "See server log for query details." +#: storage/buffer/bufmgr.c:7345 +#, c-format msgid "See server log for the other %u zeroed block(s)." -msgstr "Einzelheiten zur Anfrage finden Sie im Serverlog." +msgstr "Die anderen %u mit Nullen gefüllten Blöcke finden Sie im Serverlog." -#: storage/buffer/bufmgr.c:7353 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "ignoring checksum failure in block %u of relation %s" -msgstr "ungültige Seite in Block %u von Relation %s" +#: storage/buffer/bufmgr.c:7350 +#, c-format +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "Prüfsummenfehler wird ignoriert in Block %u von Relation »%s«" -#: storage/buffer/bufmgr.c:7354 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "ignoring %u checksum failures among blocks %u..%u of relation %s" -msgstr "ungültige Seite in Block %u von Relation %s" +#: storage/buffer/bufmgr.c:7351 +#, c-format +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "%u Prüfsummenfehler werden ignoriert in den Blöcken %u..%u von Relation »%s«" -#: storage/buffer/bufmgr.c:7355 +#: storage/buffer/bufmgr.c:7352 #, c-format -msgid "Block %u held first ignored page." -msgstr "" +msgid "Block %u held the first ignored page." +msgstr "Block %u enthielt die erste ignorierte Seite." -#: storage/buffer/bufmgr.c:7356 -#, fuzzy, c-format -#| msgid "See server log for query details." +#: storage/buffer/bufmgr.c:7353 +#, c-format msgid "See server log for the other %u ignored block(s)." -msgstr "Einzelheiten zur Anfrage finden Sie im Serverlog." +msgstr "Die anderen %u ignorierten Blöcke finden Sie im Serverlog." #: storage/buffer/localbuf.c:272 #, c-format @@ -23972,10 +23772,9 @@ msgid "could not truncate file \"%s\": %m" msgstr "kann Datei »%s« nicht kürzen: %m" #: storage/file/copydir.c:244 storage/file/copydir.c:275 -#, fuzzy, c-format -#| msgid "could not copy file \"%s\" to \"%s\": %m" +#, c-format msgid "could not clone file \"%s\" to \"%s\": %m" -msgstr "konnte Datei »%s« nicht nach »%s« kopieren: %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 #, c-format @@ -24003,10 +23802,9 @@ msgid "insufficient file descriptors available to start server process" msgstr "nicht genug Dateideskriptoren verfügbar, um Serverprozess zu starten" #: storage/file/fd.c:1072 -#, fuzzy, c-format -#| msgid "System allows %d, server needs at least %d." +#, 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." +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 @@ -24050,10 +23848,9 @@ msgid "could not delete file \"%s\": %m" msgstr "konnte Datei »%s« nicht löschen: %m" #: storage/file/fd.c:2286 -#, fuzzy, c-format -#| msgid "temporary file size exceeds temp_file_limit (%dkB)" +#, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" -msgstr "Größe der temporären Datei überschreitet 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 #, c-format @@ -24096,16 +23893,14 @@ 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 -#, fuzzy, c-format -#| msgid "Invalid list syntax in parameter \"%s\"" +#, c-format msgid "Invalid list syntax in parameter \"%s\"." -msgstr "Ungültige Listensyntax für Parameter »%s«" +msgstr "Ungültige Listensyntax für Parameter »%s«." #: storage/file/fd.c:4047 tcop/backend_startup.c:1054 -#, fuzzy, c-format -#| msgid "Invalid option \"%s\"" +#, c-format msgid "Invalid option \"%s\"." -msgstr "Ungültige Option »%s«" +msgstr "Ungültige Option »%s«." #: storage/file/fd.c:4060 #, c-format @@ -24256,10 +24051,9 @@ msgid "still waiting for backend with PID %d to accept ProcSignalBarrier" msgstr "warte immer noch darauf, dass Backend mit PID %d ProcSignalBarrier annimmt" #: storage/ipc/procsignal.c:733 -#, fuzzy, c-format -#| msgid "invalid next transaction ID" +#, c-format msgid "invalid cancel request with PID 0" -msgstr "ungültige nächste Transaktions-ID" +msgstr "ungültige Stornierungsanfrage mit PID 0" #: storage/ipc/procsignal.c:788 #, c-format @@ -24339,10 +24133,9 @@ msgid "Only roles with the %s attribute may cancel queries of roles with the %s msgstr "Nur Rollen mit dem %s-Attribut können Anfragen von Rollen mit dem %s-Attribut stornieren." #: storage/ipc/signalfuncs.c:151 -#, fuzzy, c-format -#| msgid "Only roles with privileges of the \"%s\" role may COPY to a file." +#, c-format msgid "Only roles with privileges of the \"%s\" role may cancel autovacuum workers." -msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können mit COPY in eine Datei schreiben." +msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können Autovacuum-Arbeitsprozesse stornieren." #: storage/ipc/signalfuncs.c:158 #, c-format @@ -24367,10 +24160,9 @@ msgid "\"timeout\" must not be negative" msgstr "»timeout« darf nicht negativ sein" #: storage/ipc/signalfuncs.c:264 -#, fuzzy, c-format -#| msgid "Only roles with privileges of the \"%s\" role may examine this parameter." +#, c-format msgid "Only roles with privileges of the \"%s\" role may terminate autovacuum workers." -msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können diesen Parameter inspizieren." +msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können Autovacuum-Arbeitsprozesse beenden." #: storage/ipc/signalfuncs.c:313 #, c-format @@ -24592,10 +24384,9 @@ msgid "Only RowExclusiveLock or less can be acquired on database objects during msgstr "Nur Sperren gleich oder unter RowExclusiveLock können während der Wiederherstellung auf Datenbankobjekte gesetzt werden." #: storage/lmgr/lock.c:1185 -#, fuzzy, c-format -#| msgid "could not obtain database OID: %s" +#, c-format msgid "process %d could not obtain %s on %s" -msgstr "konnte Datenbank-OID nicht ermitteln: %s" +msgstr "Prozess %d konnte Sperre %s für %s nicht setzen" #: storage/lmgr/lock.c:3426 storage/lmgr/lock.c:3494 storage/lmgr/lock.c:3610 #, c-format @@ -24632,13 +24423,13 @@ msgstr "Mit »SET default_transaction_isolation = 'repeatable read'« können Si msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE" msgstr "eine Transaktion, die einen Snapshot importiert, must READ ONLY DEFERRABLE sein" -#: 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 "konnte den angeforderten Snapshot nicht importieren" -#: 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 "Der Ausgangsprozess mit PID %d läuft nicht mehr." @@ -24750,10 +24541,9 @@ 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 -#, fuzzy, c-format -#| msgid "could not read blocks %u..%u in file \"%s\": %m" +#, c-format msgid "could not start reading blocks %u..%u in file \"%s\": %m" -msgstr "konnte Blöcke %u..%u in Datei »%s« nicht lesen: %m" +msgstr "konnte nicht anfangen, die Blöcke %u..%u in Datei »%s« zu lesen: %m" #: storage/smgr/md.c:1119 #, c-format @@ -24781,22 +24571,19 @@ msgid "could not open file \"%s\" (target block %u): %m" msgstr "konnte Datei »%s« nicht öffnen (Zielblock %u): %m" #: storage/smgr/smgr.c:1106 -#, fuzzy, c-format -#| msgid "\"%s\"" +#, c-format msgid "file \"%s\"" -msgstr "»%s«" +msgstr "Datei »%s«" #: storage/smgr/smgr.c:1108 -#, fuzzy, c-format -#| msgid "could not read block %u in file \"%s\": %m" +#, c-format msgid "block %u in file \"%s\"" -msgstr "konnte Block %u in Datei »%s« nicht lesen: %m" +msgstr "Block %u in Datei »%s«" #: storage/smgr/smgr.c:1112 -#, fuzzy, c-format -#| msgid "could not read blocks %u..%u in file \"%s\": %m" +#, c-format msgid "blocks %u..%u in file \"%s\"" -msgstr "konnte Blöcke %u..%u in Datei »%s« nicht lesen: %m" +msgstr "Blöcke %u..%u in Datei »%s«" #: tcop/backend_startup.c:104 #, c-format @@ -24841,7 +24628,7 @@ msgstr "Recovery-Snapshot ist noch nicht für Hot-Standby bereit." #: tcop/backend_startup.c:322 #, c-format msgid "To enable hot standby, close write transactions with more than %d subtransactions on the primary server." -msgstr "" +msgstr "Um Hot Standby zu ermöglichen, schließen Sie schreibende Transaktionen auf dem Primärserver mit mehr als %d Subtransaktionen." #: tcop/backend_startup.c:328 #, c-format @@ -24949,22 +24736,19 @@ msgid "no PostgreSQL user name specified in startup packet" msgstr "kein PostgreSQL-Benutzername im Startpaket angegeben" #: tcop/backend_startup.c:884 -#, fuzzy, c-format -#| msgid "invalid length of startup packet" +#, c-format msgid "invalid length of cancel request packet" -msgstr "ungültige Länge des Startpakets" +msgstr "ungültige Länge des Pakets zur Stornierungsanfrage" #: tcop/backend_startup.c:892 -#, fuzzy, c-format -#| msgid "invalid length of startup packet" +#, c-format msgid "invalid length of cancel key in cancel request packet" -msgstr "ungültige Länge des Startpakets" +msgstr "ungültige Länge des Stornierungsschlüssels im Paket zur Stornierungsanfrage" #: tcop/backend_startup.c:1022 -#, fuzzy, c-format -#| msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" +#, c-format msgid "Cannot specify log_connections option \"%s\" in a list with other options." -msgstr "logischer Replikations-Slot »%s« kann nicht in Parameter »%s« angegeben werden" +msgstr "log_connections-Option »%s« kann nicht in einer Liste mit anderen Optionen angegeben werden." #: tcop/fastpath.c:141 utils/fmgr/fmgr.c:2161 #, c-format @@ -25298,7 +25082,7 @@ msgstr "konnte zufälligen Stornierungsschlüssel nicht erzeugen" #: tcop/postgres.c:4677 #, c-format msgid "connection ready: setup total=%.3f ms, fork=%.3f ms, authentication=%.3f ms" -msgstr "" +msgstr "Verbindung bereit: Setup gesamt=%.3f ms, Fork=%.3f ms, Authentifizierung=%.3f ms" #: tcop/postgres.c:4908 #, c-format @@ -25626,69 +25410,60 @@ msgid "invalid statistics kind: \"%s\"" msgstr "ungültige Statistikart: »%s«" #: utils/activity/pgstat.c:1471 -#, fuzzy, c-format -#| msgid "custom resource manager name is invalid" +#, c-format msgid "custom cumulative statistics name is invalid" -msgstr "Custom-Resource-Manager-Name ist ungültig" +msgstr "Name für benutzerdefinierte kumulative Statistik ist ungültig" #: utils/activity/pgstat.c:1472 -#, fuzzy, c-format -#| msgid "Provide a non-empty name for the custom resource manager." +#, c-format msgid "Provide a non-empty name for the custom cumulative statistics." -msgstr "Geben Sie einen nicht leeren Namen für den Custom-Resource-Manager an." +msgstr "Geben Sie einen nicht leeren Namen für die benutzerdefinierte kumulative Statistik an." #: utils/activity/pgstat.c:1475 -#, fuzzy, c-format -#| msgid "custom resource manager ID %d is out of range" +#, c-format msgid "custom cumulative statistics ID %u is out of range" -msgstr "Custom-Resource-Manager-ID %d ist außerhalb des gültigen Bereichs" +msgstr "ID %u für benutzerdefinierte kumulative Statistik ist außerhalb des gültigen Bereichs" #: utils/activity/pgstat.c:1476 -#, fuzzy, c-format -#| msgid "Provide a custom resource manager ID between %d and %d." +#, c-format msgid "Provide a custom cumulative statistics ID between %u and %u." -msgstr "Geben Sie eine Custom-Resource-Manager-ID zwischen %d und %d an." +msgstr "Geben Sie eine ID für die benutzerdefinierte kumulative Statistik zwischen %u und %u an." #: utils/activity/pgstat.c:1481 utils/activity/pgstat.c:1508 #: utils/activity/pgstat.c:1521 -#, fuzzy, c-format -#| msgid "failed to register custom resource manager \"%s\" with ID %d" +#, c-format msgid "failed to register custom cumulative statistics \"%s\" with ID %u" -msgstr "konnte Custom-Resource-Manager »%s« mit ID %d nicht registrieren" +msgstr "konnte benutzerdefinierte kumulative Statistik »%s« mit ID %u nicht registrieren" #: utils/activity/pgstat.c:1482 -#, fuzzy, c-format -#| msgid "Custom resource manager must be registered while initializing modules in \"shared_preload_libraries\"." +#, c-format msgid "Custom cumulative statistics must be registered while initializing modules in \"shared_preload_libraries\"." -msgstr "Custom-Resource-Manager muss beim Initialisieren von Modulen in »shared_preload_libraries« registriert werden." +msgstr "Benutzerdefinierte kumulative Statistik muss beim Initialisieren von Modulen in »shared_preload_libraries« registriert werden." #: utils/activity/pgstat.c:1491 #, c-format msgid "custom cumulative statistics property is invalid" -msgstr "" +msgstr "Property für benutzerdefinierte kumulative Statistik ist ungültig" #: utils/activity/pgstat.c:1492 #, c-format msgid "Custom cumulative statistics require a shared memory size for fixed-numbered objects." -msgstr "" +msgstr "Benutzerdefinierte kumulative Statistiken benötigen eine Shared-Memory-Größe für Objekte mit fester Zahl." #: utils/activity/pgstat.c:1509 -#, fuzzy, c-format -#| msgid "Custom resource manager \"%s\" already registered with the same ID." +#, c-format msgid "Custom cumulative statistics \"%s\" already registered with the same ID." -msgstr "Custom-Resource-Manager »%s« ist schon mit der gleichen ID registriert." +msgstr "Benutzerdefinierte kumulative Statistik »%s« ist schon mit der gleichen ID registriert." #: utils/activity/pgstat.c:1522 -#, fuzzy, c-format -#| msgid "Existing resource manager with ID %d has the same name." +#, c-format msgid "Existing cumulative statistics with ID %u has the same name." -msgstr "Bestehender Resource-Manager mit ID %d hat den gleichen Namen." +msgstr "Bestehende kumulative Statistik mit ID %u hat den gleichen Namen." #: utils/activity/pgstat.c:1528 -#, fuzzy, c-format -#| msgid "registered custom resource manager \"%s\" with ID %d" +#, c-format msgid "registered custom cumulative statistics \"%s\" with ID %u" -msgstr "Custom-Resource-Manager »%s« mit ID %d wurde registriert" +msgstr "benutzerdefinierte kumulative Statistik »%s« mit ID %u wurde registriert" #: utils/activity/pgstat.c:1597 #, c-format @@ -25721,10 +25496,9 @@ msgid "function call to dropped function" msgstr "Funktionsaufruf einer gelöschten Funktion" #: 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 "bestehende Statistiken für Art %s, db=%u, oid=%u werden zurückgesetzt" +msgstr "bestehende Statistiken für Art %s, db=%u, oid=% werden zurückgesetzt" #: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format @@ -26754,10 +26528,9 @@ msgid "could not determine which collation to use for %s function" msgstr "konnte die für die Funktion %s zu verwendende Sortierfolge nicht bestimmen" #: utils/adt/formatting.c:1853 -#, fuzzy, c-format -#| msgid "Unicode categorization can only be performed if server encoding is UTF8" +#, c-format msgid "Unicode case folding can only be performed if server encoding is UTF8" -msgstr "Unicode-Kategorisierung kann nur durchgeführt werden, wenn die Serverkodierung UTF8 ist" +msgstr "Unicode-Case-Folding kann nur durchgeführt werden, wenn die Serverkodierung UTF8 ist" #: utils/adt/formatting.c:2150 #, c-format @@ -28433,10 +28206,9 @@ msgid "Key is not present in table \"%s\"." msgstr "Der Schlüssel ist nicht in Tabelle »%s« vorhanden." #: utils/adt/ri_triggers.c:2787 -#, fuzzy, c-format -#| msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\"" +#, c-format msgid "update or delete on table \"%s\" violates RESTRICT setting of foreign key constraint \"%s\" on table \"%s\"" -msgstr "Aktualisieren oder Löschen in Tabelle »%s« verletzt Fremdschlüssel-Constraint »%s« von Tabelle »%s«" +msgstr "Aktualisieren oder Löschen in Tabelle »%s« verletzt die RESTRICT-Einstellung des Fremdschlüssel-Constraints »%s« von Tabelle »%s«" #: utils/adt/ri_triggers.c:2792 #, c-format @@ -28537,31 +28309,29 @@ msgid "rule \"%s\" has unsupported event type %d" msgstr "Regel »%s« hat nicht unterstützten Ereignistyp %d" #: utils/adt/tid.c:317 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" +#, c-format msgid "cannot look at latest visible tid for relation \"%s.%s\"" -msgstr "für Relation »%s« können keine Statistiken definiert werden" +msgstr "für Relation »%s.%s« kann die letzte sichtbare tid nicht angesehen werden" #: utils/adt/tid.c:356 #, c-format msgid "ctid isn't of type TID" -msgstr "" +msgstr "ctid hat nicht Typ TID" #: utils/adt/tid.c:364 #, c-format msgid "currtid cannot handle views with no CTID" -msgstr "" +msgstr "currtid kann keine Sichten ohne CTID verarbeiten" #: utils/adt/tid.c:369 #, c-format msgid "the view has no rules" -msgstr "" +msgstr "die Sicht hat keine Regeln" #: utils/adt/tid.c:381 -#, fuzzy, c-format -#| msgid "only one default namespace is allowed" +#, c-format msgid "only one select rule is allowed in views" -msgstr "nur ein Standardnamensraum ist erlaubt" +msgstr "in einer Sicht ist nur eine SELECT-Regel erlaubt" #: utils/adt/timestamp.c:130 #, c-format @@ -29395,78 +29165,78 @@ msgstr "FATAL" msgid "PANIC" msgstr "PANIK" -#: utils/fmgr/dfmgr.c:126 +#: utils/fmgr/dfmgr.c:133 #, c-format msgid "could not find function \"%s\" in file \"%s\"" msgstr "konnte Funktion »%s« nicht in Datei »%s« finden" -#: utils/fmgr/dfmgr.c:245 +#: utils/fmgr/dfmgr.c:252 #, c-format msgid "could not load library \"%s\": %s" msgstr "konnte Bibliothek »%s« nicht laden: %s" -#: utils/fmgr/dfmgr.c:282 +#: utils/fmgr/dfmgr.c:289 #, c-format msgid "incompatible library \"%s\": missing magic block" msgstr "inkompatible Bibliothek »%s«: magischer Block fehlt" -#: 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 "Erweiterungsbibliotheken müssen das Makro PG_MODULE_MAGIC verwenden." -#: utils/fmgr/dfmgr.c:330 +#: utils/fmgr/dfmgr.c:337 #, c-format msgid "incompatible library \"%s\": version mismatch" msgstr "inkompatible Bibliothek »%s«: Version stimmt nicht überein" -#: utils/fmgr/dfmgr.c:332 +#: utils/fmgr/dfmgr.c:339 #, c-format msgid "Server is version %d, library is version %s." msgstr "Serverversion ist %d, Bibliotheksversion ist %s." -#: utils/fmgr/dfmgr.c:344 +#: utils/fmgr/dfmgr.c:351 #, c-format msgid "incompatible library \"%s\": ABI mismatch" msgstr "inkompatible Bibliothek »%s«: ABI stimmt nicht überein" -#: utils/fmgr/dfmgr.c:346 +#: utils/fmgr/dfmgr.c:353 #, c-format msgid "Server has ABI \"%s\", library has \"%s\"." msgstr "Server hat ABI »%s«, Bibliothek hat »%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 "Server hat %s = %d, Bibliothek hat %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 "Server hat %s = %s, Bibliothek hat %s." -#: utils/fmgr/dfmgr.c:402 +#: utils/fmgr/dfmgr.c:409 msgid "Magic block has unexpected length or padding difference." msgstr "Magischer Block hat unerwartete Länge oder unterschiedliches Padding." -#: utils/fmgr/dfmgr.c:405 +#: utils/fmgr/dfmgr.c:412 #, c-format msgid "incompatible library \"%s\": magic block mismatch" -msgstr "inkompatible Bibliothek »%s«: magischer Block stimmt überein" +msgstr "inkompatible Bibliothek »%s«: magischer Block stimmt nicht überein" -#: utils/fmgr/dfmgr.c:520 +#: utils/fmgr/dfmgr.c:527 #, c-format msgid "access to library \"%s\" is not allowed" msgstr "Zugriff auf Bibliothek »%s« ist nicht erlaubt" -#: utils/fmgr/dfmgr.c:547 +#: utils/fmgr/dfmgr.c:554 #, c-format msgid "invalid macro name in path: %s" msgstr "ungültiger Makroname im Pfad: %s" -#: utils/fmgr/dfmgr.c:599 +#: utils/fmgr/dfmgr.c:606 #, c-format msgid "zero-length component in parameter \"%s\"" msgstr "eine Komponente im Parameter »%s« hat Länge null" @@ -29531,92 +29301,72 @@ msgid "unknown process type" msgstr "unbekannter Prozesstyp" #: utils/init/miscinit.c:270 -#, fuzzy -#| msgid "could not initialize globals" msgid "not initialized" -msgstr "konnte globale Objekte nicht initialisieren" +msgstr "nicht initialisiert" #: utils/init/miscinit.c:273 -#, fuzzy -#| msgid "archiver process" msgid "archiver" -msgstr "Archivierprozess" +msgstr "Archivierer" #: utils/init/miscinit.c:276 -#, fuzzy -#| msgid "autovacuum launcher process" msgid "autovacuum launcher" -msgstr "Autovacuum-Launcher-Prozess" +msgstr "Autovacuum-Launcher" #: utils/init/miscinit.c:279 -#, fuzzy -#| msgid "Autovacuum" msgid "autovacuum worker" -msgstr "Autovacuum" +msgstr "Autovacuum-Worker" #: utils/init/miscinit.c:282 msgid "client backend" -msgstr "" +msgstr "Client-Backend" #: utils/init/miscinit.c:285 msgid "dead-end client backend" -msgstr "" +msgstr "dead-end Client-Backend" #: utils/init/miscinit.c:288 -#, fuzzy -#| msgid "background worker \"%s\"" msgid "background worker" -msgstr "Background-Worker »%s«" +msgstr "Background-Worker" #: utils/init/miscinit.c:291 -#, fuzzy -#| msgid "background writer process" msgid "background writer" -msgstr "Background-Writer-Prozess" +msgstr "Background-Writer" #: utils/init/miscinit.c:294 -#, fuzzy -#| msgid "checkpointer process" msgid "checkpointer" -msgstr "Checkpointer-Prozess" +msgstr "Checkpointer" #: utils/init/miscinit.c:300 -#, fuzzy -#| msgid "unlogged" msgid "logger" -msgstr "ungeloggt" +msgstr "Logger" #: utils/init/miscinit.c:303 -#, fuzzy -#| msgid "slot sync worker process" msgid "slotsync worker" msgstr "Slot-Sync-Arbeitsprozess" #: utils/init/miscinit.c:306 msgid "standalone backend" -msgstr "" +msgstr "Standalone Backend" #: utils/init/miscinit.c:309 -#, fuzzy -#| msgid "startup process" msgid "startup" msgstr "Startprozess" #: utils/init/miscinit.c:312 msgid "walreceiver" -msgstr "" +msgstr "WAL-Receiver" #: utils/init/miscinit.c:315 msgid "walsender" -msgstr "" +msgstr "WAL-Sender" #: utils/init/miscinit.c:318 msgid "walsummarizer" -msgstr "" +msgstr "WAL-Summarizer" #: utils/init/miscinit.c:321 msgid "walwriter" -msgstr "" +msgstr "WAL-Writer" #: utils/init/miscinit.c:358 #, c-format @@ -29683,113 +29433,113 @@ msgstr "zu viele Verbindungen von Rolle »%s«" msgid "invalid role OID: %u" msgstr "ungültige Rollen-OID: %u" -#: utils/init/miscinit.c:1197 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "Datenbanksystem ist heruntergefahren" -#: utils/init/miscinit.c:1284 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "konnte Sperrdatei »%s« nicht erstellen: %m" -#: utils/init/miscinit.c:1298 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "konnte Sperrdatei »%s« nicht öffnen: %m" -#: utils/init/miscinit.c:1305 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "konnte Sperrdatei »%s« nicht lesen: %m" -#: utils/init/miscinit.c:1314 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "Sperrdatei »%s« ist leer" -#: utils/init/miscinit.c:1315 +#: 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 "Entweder startet gerade ein anderer Server oder die Sperrdatei ist von einen Absturz übrig geblieben." -#: utils/init/miscinit.c:1359 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "Sperrdatei »%s« existiert bereits" -#: utils/init/miscinit.c:1363 +#: utils/init/miscinit.c:1364 #, c-format msgid "Is another postgres (PID %d) running in data directory \"%s\"?" msgstr "Läuft bereits ein anderer postgres-Prozess (PID %d) im Datenverzeichnis »%s«?" -#: utils/init/miscinit.c:1365 +#: utils/init/miscinit.c:1366 #, c-format msgid "Is another postmaster (PID %d) running in data directory \"%s\"?" msgstr "Läuft bereits ein anderer postmaster-Prozess (PID %d) im Datenverzeichnis »%s«?" -#: utils/init/miscinit.c:1368 +#: utils/init/miscinit.c:1369 #, c-format msgid "Is another postgres (PID %d) using socket file \"%s\"?" msgstr "Verwendet bereits ein anderer postgres-Prozess (PID %d) die Socketdatei »%s«?" -#: utils/init/miscinit.c:1370 +#: utils/init/miscinit.c:1371 #, c-format msgid "Is another postmaster (PID %d) using socket file \"%s\"?" msgstr "Verwendet bereits ein anderer postmaster-Prozess (PID %d) die Socketdatei »%s«?" -#: utils/init/miscinit.c:1421 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "konnte alte Sperrdatei »%s« nicht löschen: %m" -#: utils/init/miscinit.c:1423 +#: 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 "Die Datei ist anscheinend aus Versehen übrig geblieben, konnte aber nicht gelöscht werden. Bitte entfernen Sie die Datei von Hand und versuchen Sie es erneut." -#: utils/init/miscinit.c:1460 utils/init/miscinit.c:1474 -#: utils/init/miscinit.c:1485 +#: 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 "konnte Sperrdatei »%s« nicht schreiben: %m" -#: utils/init/miscinit.c:1596 utils/init/miscinit.c:1738 utils/misc/guc.c:5768 +#: 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 "konnte nicht aus Datei »%s« lesen: %m" -#: utils/init/miscinit.c:1726 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "konnte Datei »%s« nicht öffnen: %m; setze trotzdem fort" -#: utils/init/miscinit.c:1751 +#: utils/init/miscinit.c:1752 #, c-format msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld" msgstr "Sperrdatei »%s« enthält falsche PID: %ld statt %ld" -#: utils/init/miscinit.c:1790 utils/init/miscinit.c:1806 +#: utils/init/miscinit.c:1791 utils/init/miscinit.c:1807 #, c-format msgid "\"%s\" is not a valid data directory" msgstr "»%s« ist kein gültiges Datenverzeichnis" -#: utils/init/miscinit.c:1792 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "Die Datei »%s« fehlt." -#: utils/init/miscinit.c:1808 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "Die Datei »%s« enthält keine gültigen Daten." -#: utils/init/miscinit.c:1810 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "Sie müssen möglicherweise initdb ausführen." -#: utils/init/miscinit.c:1818 +#: 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 "Das Datenverzeichnis wurde von PostgreSQL Version %s initialisiert, welche nicht mit dieser Version %s kompatibel ist." @@ -30595,17 +30345,15 @@ msgstr "Ermöglicht asynchrone Append-Pläne im Planer." #: utils/misc/guc_tables.c:1011 msgid "Enables removal of unique self-joins." -msgstr "" +msgstr "Ermöglicht das Entfernen von Unique Self-Joins." #: utils/misc/guc_tables.c:1021 msgid "Enables reordering of GROUP BY keys." msgstr "Ermöglicht Umordnen von GROUP-BY-Schlüsseln." #: utils/misc/guc_tables.c:1031 -#, fuzzy -#| msgid "Enables reordering of GROUP BY keys." msgid "Enables reordering of DISTINCT keys." -msgstr "Ermöglicht Umordnen von GROUP-BY-Schlüsseln." +msgstr "Ermöglicht Umordnen von DISTINCT-Schlüsseln." #: utils/misc/guc_tables.c:1041 msgid "Enables genetic query optimization." @@ -30745,15 +30493,15 @@ msgstr "Loggt die Dauer jeder abgeschlossenen SQL-Anweisung." #: 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 "" +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 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 "" +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 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 "" +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 msgid "Logs each query's parse tree." @@ -30852,10 +30600,8 @@ msgid "Logs long lock waits." msgstr "Schreibt Meldungen über langes Warten auf Sperren in den Log." #: utils/misc/guc_tables.c:1606 -#, fuzzy -#| msgid "Logs long lock waits." msgid "Logs lock failures." -msgstr "Schreibt Meldungen über langes Warten auf Sperren in den Log." +msgstr "Schreibt Meldungen über fehlgeschlagenes Sperren in den Log." #: utils/misc/guc_tables.c:1615 msgid "Logs standby recovery conflict waits." @@ -31082,10 +30828,8 @@ msgid "Enables deprecation warnings for MD5 passwords." msgstr "Ermöglicht Warnungen über veraltete Verwendung von MD5-Passwörtern." #: utils/misc/guc_tables.c:2139 -#, 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 leere Seiten am Ende der Tabelle nicht abschneiden\n" +msgstr "Ermöglicht es Vacuum, leere Seiten am Ende der Tabelle abzuschneiden." #: utils/misc/guc_tables.c:2157 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file." @@ -31095,10 +30839,8 @@ msgstr "Setzt die Zeit, die gewartet wird, bevor ein Umschalten auf die nächste #: 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 -#, fuzzy -#| msgid "-1 disables optimization." msgid "0 disables the timeout." -msgstr "-1 schaltet Optimierung aus." +msgstr "0 schaltet Zeitüberschreitungen aus." #: utils/misc/guc_tables.c:2168 msgid "Sets the amount of time to wait after authentication on connection startup." @@ -31213,16 +30955,12 @@ 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 -#, fuzzy -#| msgid "event triggers are not supported for %s" msgid "-1 means huge pages are not supported." -msgstr "Ereignistrigger für %s werden nicht unterstützt" +msgstr "-1 bedeutet, dass Huge Page nicht unterstützt werden." #: utils/misc/guc_tables.c:2414 -#, fuzzy -#| msgid "Sets the number of shared memory buffers used by the server." msgid "Shows the number of semaphores required for the server." -msgstr "Setzt die Anzahl der vom Server verwendeten Shared-Memory-Puffer." +msgstr "Zeigt die Anzahl der vom Server benötigten Semaphore." #: utils/misc/guc_tables.c:2425 msgid "Sets the size of the dedicated buffer pool used for the commit timestamp cache." @@ -31350,10 +31088,8 @@ msgid "-1 means use \"vacuum_cost_limit\"." msgstr "-1 bedeutet, »vacuum_cost_limit« zu verwenden." #: utils/misc/guc_tables.c:2685 -#, 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 "Setzt die maximale Zahl gleichzeitig geöffneter Dateien für jeden Serverprozess." +msgstr "Setzt die maximale Zahl Dateien, die jeder Serverprozess gleichzeitig öffnen darf." #: utils/misc/guc_tables.c:2698 msgid "Sets the maximum number of simultaneously prepared transactions." @@ -31499,7 +31235,7 @@ msgstr "Anzahl der Seiten, nach denen getätigte Schreibvorgänge auf die Festpl #: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 #: utils/misc/guc_tables.c:3323 msgid "0 disables forced writeback." -msgstr "" +msgstr "0 schaltet das erzwungene Zurückschreiben aus." #: utils/misc/guc_tables.c:3011 msgid "Sets the number of disk-page buffers in shared memory for WAL." @@ -31542,10 +31278,8 @@ 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 -#, 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 "Benutzer verwendete einen logischen Replikations-Slot, der ungültig gemacht werden muss." +msgstr "Setzt die Dauer, die ein Replikations-Slot inaktiv sein kann, bevor er ungültig gemacht wird." #: utils/misc/guc_tables.c:3112 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk." @@ -31569,7 +31303,7 @@ msgstr "Setzt die minimale Ausführungszeit, über der Stichproben aller Anweisu #: utils/misc/guc_tables.c:3151 msgid "-1 disables sampling. 0 means sample all statements." -msgstr "" +msgstr "-1 schaltet Stichproben aus. 0 bedeutet, alle Anweisungen zu einzubeziehen." #: utils/misc/guc_tables.c:3161 msgid "Sets the minimum execution time above which all statements will be logged." @@ -31577,7 +31311,7 @@ msgstr "Setzt die minimale Ausführungszeit, über der alle Anweisungen geloggt #: utils/misc/guc_tables.c:3163 msgid "-1 disables logging statement durations. 0 means log all statement durations." -msgstr "" +msgstr "-1 schaltet das Loggen der Ausführungszeit aus. 0 bedeutet, die Ausführungszeit aller Anweisungen zu loggen." #: utils/misc/guc_tables.c:3173 msgid "Sets the minimum execution time above which autovacuum actions will be logged." @@ -31585,7 +31319,7 @@ msgstr "Setzt die minimale Ausführungszeit, über der Autovacuum-Aktionen gelog #: utils/misc/guc_tables.c:3175 msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." -msgstr "" +msgstr "-1 schaltet das Loggen der Autovacuum-Aktionen aus. 0 bedeutet, alle Autovacuum-Aktionen zu loggen." #: utils/misc/guc_tables.c:3185 msgid "Sets the maximum length in bytes of data logged for bind parameter values when logging statements." @@ -31608,10 +31342,8 @@ 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 -#, fuzzy -#| msgid "-1 disables inlining." msgid "0 disables background writing." -msgstr "-1 schaltet Inlining aus." +msgstr "0 schaltet Schreiben im Hintergrund aus." #: utils/misc/guc_tables.c:3243 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem." @@ -31619,7 +31351,7 @@ msgstr "Anzahl simultaner Anfragen, die das Festplattensubsystem effizient bearb #: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 msgid "0 disables simultaneous requests." -msgstr "" +msgstr "0 schaltet simultane Anfragen aus." #: utils/misc/guc_tables.c:3257 msgid "A variant of \"effective_io_concurrency\" that is used for maintenance work." @@ -31627,7 +31359,7 @@ msgstr "Eine Variante von »effective_io_concurrency«, die für Wartungsarbeite #: utils/misc/guc_tables.c:3272 msgid "Server-wide limit that clamps io_combine_limit." -msgstr "" +msgstr "Serverweites Limit, das io_combine_limit beschränkt." #: utils/misc/guc_tables.c:3286 msgid "Limit on the size of data reads and writes." @@ -31635,11 +31367,11 @@ msgstr "Begrenzung der Größe von Datenlese- und -schreibvorgängen." #: utils/misc/guc_tables.c:3300 msgid "Max number of IOs that one process can execute simultaneously." -msgstr "" +msgstr "Maximale Anzahl IOs, die ein Prozess gleichzeitig ausführen kann." #: utils/misc/guc_tables.c:3312 msgid "Number of IO worker processes, for io_method=worker." -msgstr "" +msgstr "Anzahl IO-Worker-Prozesse, für io_method=worker." #: utils/misc/guc_tables.c:3335 msgid "Maximum number of concurrent worker processes." @@ -31658,10 +31390,8 @@ msgid "Maximum number of parallel apply workers per subscription." msgstr "Maximale Anzahl Parallel-Apply-Worker pro Subskription." #: utils/misc/guc_tables.c:3383 -#, fuzzy -#| msgid "Sets the maximum number of simultaneously defined replication slots." msgid "Sets the maximum number of active replication origins." -msgstr "Setzt die maximale Anzahl von gleichzeitig definierten Replikations-Slots." +msgstr "Setzt die maximale Anzahl aktiver Replication-Origins." #: utils/misc/guc_tables.c:3393 msgid "Sets the amount of time to wait before forcing log file rotation." @@ -31669,7 +31399,7 @@ msgstr "Setzt die Zeit, die gewartet wird, bevor Logdateirotation erzwungen wird #: utils/misc/guc_tables.c:3395 msgid "0 disables time-based creation of new log files." -msgstr "" +msgstr "0 schaltet zeitbasierende Erzeugung neuer Logdateien aus." #: utils/misc/guc_tables.c:3405 msgid "Sets the maximum size a log file can reach before being rotated." @@ -31677,7 +31407,7 @@ msgstr "Setzt die maximale Größe, die eine Logdatei erreichen kann, bevor sie #: utils/misc/guc_tables.c:3407 msgid "0 disables size-based creation of new log files." -msgstr "" +msgstr "0 schaltet größenbasierende Erzeugung neuer Logdateien aus." #: utils/misc/guc_tables.c:3417 msgid "Shows the maximum number of function arguments." @@ -31732,20 +31462,16 @@ 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 -#, fuzzy -#| msgid "-1 disables optimization." msgid "-1 disables the maximum threshold." -msgstr "-1 schaltet Optimierung aus." +msgstr "-1 schaltet die Höchstanzahl aus." #: utils/misc/guc_tables.c:3549 msgid "Minimum number of tuple inserts prior to vacuum." msgstr "Mindestanzahl an eingefügten Tupeln vor einem Vacuum." #: utils/misc/guc_tables.c:3550 -#, fuzzy -#| msgid "-1 disables inlining." msgid "-1 disables insert vacuums." -msgstr "-1 schaltet Inlining aus." +msgstr "-1 schaltet Vacuum aufgrund von Einfügen aus." #: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." @@ -31760,10 +31486,8 @@ msgid "Multixact age at which to autovacuum a table to prevent multixact wraparo msgstr "Multixact-Alter, nach dem eine Tabelle automatisch gevacuumt wird, um Transaktionsnummernüberlauf zu verhindern." #: utils/misc/guc_tables.c:3590 -#, 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 "Setzt die maximale Speichergröße für jeden Autovacuum-Worker-Prozess." +msgstr "Setzt die Anzahl der für Autovacuum-Worker bereitgestellten Backend-Slots." #: utils/misc/guc_tables.c:3599 msgid "Sets the maximum number of simultaneously running autovacuum worker processes." @@ -31855,10 +31579,8 @@ 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 -#, fuzzy -#| msgid "constraints on temporary tables may reference only temporary tables" msgid "-1 disables logging temporary files. 0 means log all temporary files." -msgstr "Constraints für temporäre Tabellen dürfen nur auf temporäre Tabellen verweisen" +msgstr "-1 schaltet Loggen von temporären Dateien aus. 0 bedeutet, dass alle temporären Dateien geloggt werden." #: utils/misc/guc_tables.c:3764 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." @@ -31994,7 +31716,7 @@ msgstr "Vacuum-Kosten-Verzögerung in Millisekunden, für Autovacuum." #: utils/misc/guc_tables.c:4075 msgid "-1 means use \"vacuum_cost_delay\"." -msgstr "" +msgstr "-1 bedeutet, »vacuum_cost_delay« zu verwenden." #: utils/misc/guc_tables.c:4085 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples." @@ -32030,11 +31752,11 @@ msgstr "Verwenden Sie einen Wert zwischen 0.0 (nie loggen) und 1.0 (alle Anweisu #: 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 "" +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 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 "" +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 msgid "Sets the shell command that will be called to archive a WAL file." @@ -32142,7 +31864,7 @@ msgstr "Bestimmt, ob ein CREATEROLE-Benutzer sich die Rolle automatisch selbst g #: utils/misc/guc_tables.c:4370 msgid "An empty string disables automatic self grants." -msgstr "" +msgstr "Eine leere Zeichenkette schaltet automatische Selbst-Grants aus." #: utils/misc/guc_tables.c:4380 msgid "Sets the path for dynamically loadable modules." @@ -32153,14 +31875,12 @@ msgid "If a dynamically loadable module needs to be opened and the specified nam 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 -#, fuzzy -#| msgid "Sets the file permissions for log files." msgid "Sets the path for extension control files." -msgstr "Setzt die Dateizugriffsrechte für Logdateien." +msgstr "Setzt den Pfad für Kontrolldateien von Erweiterungen." #: 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 "" +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 msgid "Sets the location of the Kerberos server key file." @@ -32172,7 +31892,7 @@ msgstr "Setzt den Bonjour-Servicenamen." #: utils/misc/guc_tables.c:4418 msgid "An empty string means use the computer name." -msgstr "" +msgstr "Eine leere Zeichenkette bedeutet, den Computer-Namen zu verwenden." #: utils/misc/guc_tables.c:4427 msgid "Sets the language in which messages are displayed." @@ -32181,7 +31901,7 @@ 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 msgid "An empty string means use the operating system setting." -msgstr "" +msgstr "Eine leere Zeichenkette bedeutet, die Betriebssystemeinstellung zu verwenden." #: utils/misc/guc_tables.c:4437 msgid "Sets the locale for formatting monetary amounts." @@ -32268,10 +31988,8 @@ 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 -#, 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 "Der Eigentümer ist immer der Benutzer, der den Server startet." +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 msgid "Sets the directories where Unix-domain sockets will be created." @@ -32334,40 +32052,32 @@ msgid "Sets default text search configuration." msgstr "Setzt die vorgegebene Textsuchekonfiguration." #: utils/misc/guc_tables.c:4813 -#, fuzzy -#| msgid "Sets the list of allowed SSL ciphers." msgid "Sets the list of allowed TLSv1.3 cipher suites." -msgstr "Setzt die Liste der erlaubten SSL-Verschlüsselungsalgorithmen." +msgstr "Setzt die Liste der erlaubten Verschlüsselungsalgorithmen für TLSv1.3." #: utils/misc/guc_tables.c:4814 -#, fuzzy -#| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use the default cipher suites." -msgstr "Eine leere Zeichenkette wählt den Standard-Tablespace der Datenbank." +msgstr "Eine leere Zeichenkette bedeutet, die voreingestellten Verschlüsselungsalgorithmen zu verwenden." #: utils/misc/guc_tables.c:4824 -#, fuzzy -#| msgid "Sets the list of allowed SSL ciphers." msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." -msgstr "Setzt die Liste der erlaubten SSL-Verschlüsselungsalgorithmen." +msgstr "Setzt die Liste der erlaubten Verschlüsselungsalgorithmen für TLSv1.2 (und älter)." #: utils/misc/guc_tables.c:4839 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." -msgstr "" +msgstr "Setzt die für Diffie-Hellman-Schlüsselaustausch zu verwendenden Gruppen." #: utils/misc/guc_tables.c:4840 msgid "Multiple groups can be specified using a colon-separated list." -msgstr "" +msgstr "Mehrere Gruppen können in einer durch Doppelpunkte getrennten Liste angegeben werden." #: utils/misc/guc_tables.c:4854 msgid "Location of the SSL DH parameters file." msgstr "Setzt den Ort der SSL-DH-Parameter-Datei." #: utils/misc/guc_tables.c:4855 -#, fuzzy -#| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use compiled-in default parameters." -msgstr "Eine leere Zeichenkette wählt den Standard-Tablespace der Datenbank." +msgstr "Eine leere Zeichenkette bedeutet, die einkompilierten Standardparameter zu verwenden." #: utils/misc/guc_tables.c:4865 msgid "Command to obtain passphrases for SSL." @@ -32375,7 +32085,7 @@ msgstr "Befehl zum Einlesen von Passphrasen für SSL." #: utils/misc/guc_tables.c:4866 msgid "An empty string means use the built-in prompting mechanism." -msgstr "" +msgstr "Eine leere Zeichenkette bedeutet, den eingebauten Prompt-Mechanismus zu verwenden." #: utils/misc/guc_tables.c:4876 msgid "Sets the application name to be reported in statistics and logs." @@ -32407,7 +32117,7 @@ msgstr "Direct-I/O für Dateizugriff verwenden." #: utils/misc/guc_tables.c:4932 msgid "An empty string disables direct I/O." -msgstr "" +msgstr "Eine leere Zeichenkette schaltet Direct-I/O aus." #: utils/misc/guc_tables.c:4942 msgid "Lists streaming replication standby server replication slot names that logical WAL sender processes will wait for." @@ -32423,11 +32133,11 @@ msgstr "Verbietet Zugriff auf Nicht-System-Relationen der angegeben Arten." #: utils/misc/guc_tables.c:4967 msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." -msgstr "" +msgstr "Listet Bibliotheken, die aufgerufen werden können, um OAuth-v2-Bearer-Tokens zu validieren." #: utils/misc/guc_tables.c:4978 msgid "Logs specified aspects of connection establishment and setup." -msgstr "" +msgstr "Loggt die angegebenen Aspekte des Verbindungsaufbaus." #: utils/misc/guc_tables.c:4999 msgid "Sets whether \"\\'\" is allowed in string literals." @@ -32540,7 +32250,7 @@ msgstr "Wählt die Shared-Memory-Implementierung, die für den Haupt-Shared-Memo #: utils/misc/guc_tables.c:5259 msgid "Selects the file copy method." -msgstr "" +msgstr "Wählt die Methode, um Dateien zu kopieren." #: utils/misc/guc_tables.c:5269 msgid "Selects the method used for forcing WAL updates to disk." @@ -32611,10 +32321,8 @@ msgid "On the publisher, it allows streaming or serializing each change in logic 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 -#, fuzzy -#| msgid "Selects the method used for forcing WAL updates to disk." msgid "Selects the method for executing asynchronous I/O." -msgstr "Wählt die Methode, um das Schreiben von WAL-Änderungen auf die Festplatte zu erzwingen." +msgstr "Wählt die Methode zum Ausführen von asynchronem I/O." #: utils/misc/help_config.c:129 #, c-format @@ -32832,57 +32540,57 @@ msgstr "Es existieren doppelte Schlüssel." msgid "could not seek in tuplestore temporary file" msgstr "konnte Positionszeiger in temporärer Datei für Tuplestore nicht setzen" -#: utils/time/snapmgr.c:557 +#: utils/time/snapmgr.c:568 #, c-format msgid "The source transaction is not running anymore." msgstr "Die Quelltransaktion läuft nicht mehr." -#: utils/time/snapmgr.c:1143 +#: utils/time/snapmgr.c:1154 #, c-format msgid "cannot export a snapshot from a subtransaction" msgstr "aus einer Subtransaktion kann kein Snapshot exportiert werden" -#: 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 "ungültige Snapshot-Daten in Datei »%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 muss vor allen Anfragen aufgerufen werden" -#: 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 "eine Snapshot-importierende Transaktion muss Isolationsgrad SERIALIZABLE oder REPEATABLE READ haben" -#: utils/time/snapmgr.c:1418 +#: utils/time/snapmgr.c:1429 #, c-format msgid "invalid snapshot identifier: \"%s\"" msgstr "ungültiger Snapshot-Bezeichner: »%s«" -#: utils/time/snapmgr.c:1433 +#: utils/time/snapmgr.c:1444 #, c-format msgid "snapshot \"%s\" does not exist" msgstr "Snapshot »%s« existiert nicht" -#: 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 "eine serialisierbare Transaktion kann keinen Snapshot aus einer nicht-serialisierbaren Transaktion importieren" -#: 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 "eine serialisierbare Transaktion, die nicht im Read-Only-Modus ist, kann keinen Snapshot aus einer Read-Only-Transaktion importieren" -#: utils/time/snapmgr.c:1550 +#: utils/time/snapmgr.c:1561 #, c-format msgid "cannot import a snapshot from a different database" msgstr "kann keinen Snapshot aus einer anderen Datenbank importieren" diff --git a/src/backend/po/ja.po b/src/backend/po/ja.po index 49c62bf995de6..8d3fba9f3ac0d 100644 --- a/src/backend/po/ja.po +++ b/src/backend/po/ja.po @@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: postgres (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" "POT-Creation-Date: 2025-07-03 13:13+0900\n" -"PO-Revision-Date: 2025-07-03 14:19+0900\n" +"PO-Revision-Date: 2025-08-20 15:40+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: jpug-doc \n" "Language: ja\n" @@ -2724,7 +2724,7 @@ msgstr "リカバリが進行中ではありません" #: 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 "リカバリ制御関数リカバリ中にのみを実行可能です。" +msgstr "リカバリ制御関数はリカバリ中にのみ実行可能です。" #: access/transam/xlogfuncs.c:529 access/transam/xlogfuncs.c:559 #, c-format diff --git a/src/backend/po/ka.po b/src/backend/po/ka.po index a45b820c35cf1..0787988180bce 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-06-27 09:13+0000\n" -"PO-Revision-Date: 2025-06-27 14:57+0200\n" +"POT-Creation-Date: 2025-08-17 20:13+0000\n" +"PO-Revision-Date: 2025-08-18 18:54+0200\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -81,20 +81,20 @@ msgstr "ჩაწერილი არაა" 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:3621 access/transam/xlog.c:4512 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:2493 replication/slot.c:2534 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: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 #, 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:3626 access/transam/xlog.c:4517 replication/logical/origin.c:773 replication/logical/origin.c:812 replication/logical/snapbuild.c:1956 replication/slot.c:2497 replication/slot.c:2538 replication/walsender.c:634 utils/cache/relmapper.c:833 +#: ../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 #, 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:3467 access/transam/xlog.c:3661 access/transam/xlog.c:3666 access/transam/xlog.c:3802 -#: access/transam/xlog.c:4482 access/transam/xlog.c:5458 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:2381 replication/slot.c:2545 replication/walsender.c:644 storage/file/copydir.c:224 storage/file/copydir.c:229 -#: 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 +#: ../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 +#: 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" msgstr "ფაილის (%s) დახურვის შეცდომა: %m" @@ -115,27 +115,27 @@ 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:3357 access/transam/xlog.c:3537 access/transam/xlog.c:3576 access/transam/xlog.c:3769 access/transam/xlog.c:4502 +#: ../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:2465 replication/walsender.c:602 replication/walsender.c:3080 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:675 utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 utils/error/elog.c:2132 utils/init/miscinit.c:1585 utils/init/miscinit.c:1719 utils/init/miscinit.c:1796 utils/misc/guc.c:4774 utils/misc/guc.c:4824 +#: 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 #, 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:9471 access/transam/xlogfuncs.c:699 backup/basebackup_server.c:173 backup/basebackup_server.c:266 backup/walsummary.c:304 postmaster/postmaster.c:4098 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: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 #, 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:3457 access/transam/xlog.c:3655 access/transam/xlog.c:4475 access/transam/xlog.c:8857 access/transam/xlog.c:8901 -#: backup/basebackup_server.c:207 commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 replication/slot.c:2367 replication/slot.c:2475 storage/file/fd.c:820 storage/file/fd.c:3916 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: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 #, 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:1345 libpq/auth.c:1389 libpq/auth.c:1951 libpq/be-secure-gssapi.c:537 libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 postmaster/bgworker.c:1022 postmaster/postmaster.c:3568 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: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/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 +#: ../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 #, c-format msgid "out of memory" @@ -203,13 +203,13 @@ msgstr "არასაკმარისი მეხსიერება\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "ნულოვანი მაჩვენებლის დუბლირება შეუძლებელია (შიდა შეცდომა)\n" -#: ../common/file_utils.c:75 storage/file/fd.c:3581 +#: ../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: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 -#: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 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 +#: 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" @@ -219,17 +219,17 @@ msgstr "ფაილი \"%s\" არ არსებობს: %m" msgid "this build does not support sync method \"%s\"" msgstr "ამ აგებას სინქრონიზაციის მეთოდის \"%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:2997 storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:340 +#: ../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 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:3009 +#: ../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: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:2253 replication/slot.c:2395 storage/file/fd.c:838 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:988 replication/slot.c:2245 replication/slot.c:2387 storage/file/fd.c:835 utils/time/snapmgr.c:1262 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "გადარქმევის შეცდომა %s - %s: %m" @@ -518,7 +518,7 @@ msgstr "მანიფესტის საკონტროლო ჯამ 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: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:6929 utils/misc/guc.c:6970 +#: ../common/percentrepl.c:79 ../common/percentrepl.c:85 ../common/percentrepl.c:118 ../common/percentrepl.c:124 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\"" @@ -578,13 +578,13 @@ 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:2449 storage/file/fd.c:878 storage/file/fd.c:3443 storage/file/fd.c:3505 +#: ../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 #, 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:3435 storage/file/fd.c:3844 +#: ../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 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "საქაღალდის (\"%s\") წაშლის შეცდომა: %m" @@ -1102,7 +1102,7 @@ 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:19928 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 +#: 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 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." @@ -1183,7 +1183,7 @@ msgstr "უხილავი კორტეჟის განახლებ msgid "could not obtain lock on row in relation \"%s\"" msgstr "ურთიერთობაში \"%s\" მწკრივის დაბლოკვის შეცდომა" -#: access/heap/heapam.c:6405 commands/trigger.c:3350 executor/nodeModifyTable.c:2566 executor/nodeModifyTable.c:2656 +#: access/heap/heapam.c:6405 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 +1203,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:3382 access/transam/xlog.c:3590 access/transam/xlog.c:4454 access/transam/xlog.c:9460 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:4085 postmaster/walsummarizer.c:1215 -#: replication/logical/origin.c:626 replication/slot.c:2314 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: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 #, c-format msgid "could not create file \"%s\": %m" msgstr "ფაილის (%s) შექმნის შეცდომა: %m" @@ -1214,8 +1214,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:3443 access/transam/xlog.c:3646 access/transam/xlog.c:4466 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:2349 -#: storage/file/buffile.c:545 storage/file/copydir.c:213 utils/init/miscinit.c:1660 utils/init/miscinit.c:1671 utils/init/miscinit.c:1679 utils/misc/guc.c:4488 utils/misc/guc.c:4519 utils/misc/guc.c:5673 utils/misc/guc.c:5691 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: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 #, c-format msgid "could not write to file \"%s\": %m" msgstr "ფაილში (%s) ჩაწერის შეცდომა: %m" @@ -1356,27 +1356,27 @@ msgstr "WAL გამოყენება: % ჩანაწერი, msgid "system usage: %s" msgstr "სისტემური გამოყენება: %s" -#: access/heap/vacuumlazy.c:1431 +#: access/heap/vacuumlazy.c:1432 #, c-format -msgid "disabling eager scanning after freezing %u eagerly scanned blocks of \"%s.%s.%s\"" +msgid "disabling eager scanning after freezing %u eagerly scanned blocks of relation \"%s.%s.%s\"" msgstr "" -#: access/heap/vacuumlazy.c:2816 +#: access/heap/vacuumlazy.c:2821 #, c-format msgid "table \"%s\": removed % dead item identifiers in %u pages" msgstr "ცხრილი \"%s\": წაიშალა % მკვდარი ჩანაწერის იდენტიფიკატორი %u გვერდზე" -#: access/heap/vacuumlazy.c:2977 +#: 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:2980 +#: 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:2981 +#: access/heap/vacuumlazy.c:2986 #, c-format msgid "" "Consider increasing configuration parameter \"maintenance_work_mem\" or \"autovacuum_work_mem\".\n" @@ -1385,67 +1385,67 @@ msgstr "" "მხედველობაში იქონიეთ, რომ საჭიროა კონფიგურაციის პარამეტრის \"maintenance_work_mem\" ან \"autovacuum_work_mem\" გაზრდა.\n" "ასევე შეიძლება დაგჭირდეთ განიხილოთ მომტვერსასრუტების სხვა გზები, რომ დაეწიოთ ტრანზაქცების ID-ების გამოყოფას." -#: access/heap/vacuumlazy.c:3243 +#: access/heap/vacuumlazy.c:3248 #, c-format msgid "\"%s\": stopping truncate due to conflicting lock request" msgstr "%s: წაკვეთის შეჩერება ბლოკირების კონფლიქტური მოთხოვნის გამო" -#: access/heap/vacuumlazy.c:3313 +#: access/heap/vacuumlazy.c:3318 #, c-format msgid "table \"%s\": truncated %u to %u pages" msgstr "ცხრილი \"%s\": წაიკვეთა %u-დან %u გვერდზე" -#: access/heap/vacuumlazy.c:3375 +#: access/heap/vacuumlazy.c:3380 #, c-format msgid "table \"%s\": suspending truncate due to conflicting lock request" msgstr "ცხრილი %s: წაკვეთის შეჩერება ბლოკირების კონფლიქტური მოთხოვნის გამო" -#: access/heap/vacuumlazy.c:3494 +#: 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:3761 +#: access/heap/vacuumlazy.c:3766 #, 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:3764 +#: access/heap/vacuumlazy.c:3769 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "%u ბლოკის (ურთიერთობის %s.%s) სკანირებისას" -#: access/heap/vacuumlazy.c:3768 +#: access/heap/vacuumlazy.c:3773 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "ურთიერთობის სკანირებისას \"%s.%s\"" -#: access/heap/vacuumlazy.c:3776 +#: access/heap/vacuumlazy.c:3781 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "ბლოკის %u, წანაცვლება %u (ურთიერთობის \"%s.%s\") მომტვერსასრუტებისას" -#: access/heap/vacuumlazy.c:3779 +#: access/heap/vacuumlazy.c:3784 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "ბლოკის (%u) მომტვერსასრუტებისას (ურთიერთობიდან \"%s.%s\")" -#: access/heap/vacuumlazy.c:3783 +#: access/heap/vacuumlazy.c:3788 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "ურთერთობის დამტვერსასრუტებისას \"%s.%s\"" -#: access/heap/vacuumlazy.c:3788 commands/vacuumparallel.c:1126 +#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "ინდექსის (%s) მომტვერსასრუტებისას (ურთიერთობიდან \"%s.%s\")" -#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1132 +#: access/heap/vacuumlazy.c:3798 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "ინდექსის \"%s\" მოსუფთავებისას, რომელიც ეკუთვნის ურთიერთობას \"%s.%s\"" -#: access/heap/vacuumlazy.c:3799 +#: access/heap/vacuumlazy.c:3804 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "ურთიერთობის \"%s.%s\" %u ბლოკამდე მოკვეთისას" @@ -1470,7 +1470,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:19617 commands/tablecmds.c:21545 +#: 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 #, c-format msgid "\"%s\" is not an index" msgstr "\"%s\" ინდექსი არაა" @@ -1515,17 +1515,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:4295 +#: access/nbtree/nbtutils.c:4196 #, 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:4300 +#: access/nbtree/nbtutils.c:4201 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "ინდექსის მწკრივები გადაბმულია კორტეჟზე (%u, %u) ურთიერთობაში \"%s\"." -#: access/nbtree/nbtutils.c:4304 +#: access/nbtree/nbtutils.c:4205 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -2083,7 +2083,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:514 utils/fmgr/dfmgr.c:207 +#: access/transam/twophase.c:2523 storage/file/fd.c:511 utils/fmgr/dfmgr.c:207 #, c-format msgid "could not access file \"%s\": %m" msgstr "ფაილის (%s) წვდომის შეცდომა: %m" @@ -2235,118 +2235,113 @@ msgstr "პარალელური ოპერაციის დროს msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "ტრანზაქციაში 2^32-1 ქვეტრანზაქციაზე მეტი ვერ იქნება" -#: access/transam/xlog.c:1552 +#: access/transam/xlog.c:1556 #, c-format msgid "request to flush past end of generated WAL; request %X/%X, current position %X/%X" msgstr "" -#: access/transam/xlog.c:1779 +#: access/transam/xlog.c:1783 #, c-format msgid "cannot read past end of generated WAL: requested %X/%X, current position %X/%X" msgstr "" -#: access/transam/xlog.c:2342 access/transam/xlog.c:4690 +#: access/transam/xlog.c:2352 access/transam/xlog.c:4681 #, 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:2360 -#, c-format -msgid "\"%s\" must be set to -1 during binary upgrade mode." -msgstr "ბინარული განახლების რეჟიმისას \"%s\"-ის მნიშვნელობა -1-ზე უნდა დააყენოთ." - -#: access/transam/xlog.c:2597 +#: access/transam/xlog.c:2588 #, 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:3883 access/transam/xlogutils.c:820 replication/walsender.c:3074 +#: access/transam/xlog.c:3874 access/transam/xlogutils.c:820 replication/walsender.c:3074 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "მოთხოვნილი WAL სეგმენტი %s უკვე წაშლილია" -#: access/transam/xlog.c:4205 +#: access/transam/xlog.c:4196 #, c-format msgid "could not rename file \"%s\": %m" msgstr "ფაილის გადარქმევის შეცდომა %s: %m" -#: access/transam/xlog.c:4248 access/transam/xlog.c:4259 access/transam/xlog.c:4280 +#: access/transam/xlog.c:4239 access/transam/xlog.c:4250 access/transam/xlog.c:4271 #, c-format msgid "required WAL directory \"%s\" does not exist" msgstr "wal-ის აუცილებელი საქაღალდე \"%s\" არ არსებობს" -#: access/transam/xlog.c:4265 access/transam/xlog.c:4286 +#: access/transam/xlog.c:4256 access/transam/xlog.c:4277 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "ნაკლული WAL საქაღალდის შექმნა: \"%s\"" -#: access/transam/xlog.c:4269 access/transam/xlog.c:4289 commands/dbcommands.c:3301 +#: access/transam/xlog.c:4260 access/transam/xlog.c:4280 commands/dbcommands.c:3301 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "ნაკლული საქაღალდის (\"%s\") შექმნის შეცდომა: %m" -#: access/transam/xlog.c:4356 +#: access/transam/xlog.c:4347 #, c-format msgid "could not generate secret authorization token" msgstr "ავთენტიკაციისთვის ერთჯერადი კოდის გენერაციის შეცდომა" -#: access/transam/xlog.c:4534 access/transam/xlog.c:4544 access/transam/xlog.c:4570 access/transam/xlog.c:4580 access/transam/xlog.c:4590 access/transam/xlog.c:4596 access/transam/xlog.c:4606 access/transam/xlog.c:4616 access/transam/xlog.c:4626 access/transam/xlog.c:4636 access/transam/xlog.c:4646 access/transam/xlog.c:4656 access/transam/xlog.c:4668 access/transam/xlog.c:4676 utils/init/miscinit.c:1817 +#: 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 #, c-format msgid "database files are incompatible with server" msgstr "ბაზის ფაილები სერვერთან თავსებადი არაა" -#: access/transam/xlog.c:4535 +#: access/transam/xlog.c:4526 #, 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:4539 +#: access/transam/xlog.c:4530 #, 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:4545 +#: access/transam/xlog.c:4536 #, 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:4548 access/transam/xlog.c:4576 access/transam/xlog.c:4586 access/transam/xlog.c:4592 +#: access/transam/xlog.c:4539 access/transam/xlog.c:4567 access/transam/xlog.c:4577 access/transam/xlog.c:4583 #, c-format msgid "It looks like you need to initdb." msgstr "როგორც ჩანს, initdb გჭირდებათ." -#: access/transam/xlog.c:4560 +#: access/transam/xlog.c:4551 #, 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:4572 access/transam/xlog.c:4582 access/transam/xlog.c:4598 access/transam/xlog.c:4608 access/transam/xlog.c:4618 access/transam/xlog.c:4628 access/transam/xlog.c:4638 access/transam/xlog.c:4648 access/transam/xlog.c:4658 +#: 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 #, 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:4591 +#: access/transam/xlog.c:4582 #, c-format msgid "The database cluster appears to use a different floating-point number format than the server executable." msgstr "როგორც ჩანს, ბაზის კლასტერი წილადი რიცხვების სხვა ფორმატს იყენებს, ვიდრე სერვერის გამშვები ფაილი." -#: access/transam/xlog.c:4602 access/transam/xlog.c:4612 access/transam/xlog.c:4622 access/transam/xlog.c:4632 access/transam/xlog.c:4642 access/transam/xlog.c:4652 access/transam/xlog.c:4662 access/transam/xlog.c:4671 access/transam/xlog.c:4679 +#: 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 #, c-format msgid "It looks like you need to recompile or initdb." msgstr "როგორც ჩანს, გჭირდებათ თავიდან ააგოთ პროდუქტი, ან initdb." -#: access/transam/xlog.c:4669 +#: access/transam/xlog.c:4660 #, 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:4677 +#: access/transam/xlog.c:4668 #, 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:4686 +#: access/transam/xlog.c:4677 #, c-format msgid "invalid WAL segment size in control file (%d byte)" msgid_plural "invalid WAL segment size in control file (%d bytes)" @@ -2354,279 +2349,279 @@ msgstr[0] "არასწორი WAL სეგმენტის ზომა msgstr[1] "არასწორი WAL სეგმენტის ზომა კონტროლის ფაილში (%d ბაიტი)" #. translator: both %s are GUC names -#: access/transam/xlog.c:4700 access/transam/xlog.c:4706 +#: access/transam/xlog.c:4691 access/transam/xlog.c:4697 #, c-format msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\", სულ ცოტა, ორჯერ მეტი უნდა იყოს \"%s\"-ზე" -#: access/transam/xlog.c:4868 catalog/namespace.c:4696 commands/tablespace.c:1210 commands/user.c:2542 commands/variable.c:72 replication/slot.c:2719 tcop/postgres.c:3626 utils/error/elog.c:2257 +#: 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 #, c-format msgid "List syntax is invalid." msgstr "სია სინტაქსი არასწორია." -#: access/transam/xlog.c:4914 commands/user.c:2558 commands/variable.c:173 tcop/postgres.c:3642 utils/error/elog.c:2283 +#: access/transam/xlog.c:4905 commands/user.c:2558 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:5341 +#: access/transam/xlog.c:5332 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "ფაილში წინასწარ-ჩაწერადი ჟურნალის ფაილის დასაწყისის ჩაწერის შეცდომა: %m" -#: access/transam/xlog.c:5349 +#: access/transam/xlog.c:5340 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "ფაილში წინასწარ-ჩაწერადი ჟურნალის ფაილის დასაწყისის fsync-ის შეცდომა: %m" -#: access/transam/xlog.c:5355 +#: access/transam/xlog.c:5346 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "ფაილში წინასწარ-ჩაწერადი ჟურნალის ფაილის დასაწყისის დახურვის შეცდომა: %m" -#: access/transam/xlog.c:5580 +#: access/transam/xlog.c:5571 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "WAL-ი გენერირებული იყო \"wal_level=minimal\"-ით. აღდგენა ვერ გაგრძელდება" -#: access/transam/xlog.c:5581 +#: access/transam/xlog.c:5572 #, c-format msgid "This happens if you temporarily set \"wal_level=minimal\" on the server." msgstr "ეს ხდება, თუ სერვერზე დროებით \"wal_level=minimal\"-ს დააყენებთ." -#: access/transam/xlog.c:5582 +#: access/transam/xlog.c:5573 #, c-format msgid "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." msgstr "გამოიყენეთ მარქაფი, რომელიც \"wal_level\"-ის \"minimal\"-ზე მეტზე დაყენების შემდეგ აიღეთ." -#: access/transam/xlog.c:5647 +#: access/transam/xlog.c:5638 #, c-format msgid "control file contains invalid checkpoint location" msgstr "საკონტროლო ფაილი საკონტროლო წერტილის არასწორ მდებარეობას შეიცავს" -#: access/transam/xlog.c:5658 +#: access/transam/xlog.c:5649 #, c-format msgid "database system was shut down at %s" msgstr "მონაცემთა ბაზის სისტემის გათიშვის დრო: %s" -#: access/transam/xlog.c:5664 +#: access/transam/xlog.c:5655 #, c-format msgid "database system was shut down in recovery at %s" msgstr "მონაცემთა ბაზის სისტემის აღდგენისას გათიშვის დრო: %s" -#: access/transam/xlog.c:5670 +#: access/transam/xlog.c:5661 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "მონაცემთა ბაზა შეწყვეტილია; ბოლოს ჩართული იყო: %s" -#: access/transam/xlog.c:5676 +#: access/transam/xlog.c:5667 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "მონაცემთა ბაზის სისტემის აღდგენისას გათიშვის დრო: %s" -#: access/transam/xlog.c:5678 +#: access/transam/xlog.c:5669 #, 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:5684 +#: access/transam/xlog.c:5675 #, c-format msgid "database system was interrupted while in recovery at log time %s" msgstr "მონაცემთა ბაზის სისტემა გაითიშა აღდგენისას ჟურნალის დროს %s" -#: access/transam/xlog.c:5686 +#: access/transam/xlog.c:5677 #, 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:5692 +#: access/transam/xlog.c:5683 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "მონაცემთა ბაზა შეწყვეტილია; ბოლოს ჩართული იყო: %s" -#: access/transam/xlog.c:5699 +#: access/transam/xlog.c:5690 #, c-format msgid "control file contains invalid database cluster state" msgstr "კონტროლის ფაილი ბაზის კლასტერის არასწორ მდგომარეობას შეიცავს" -#: access/transam/xlog.c:6087 +#: access/transam/xlog.c:6078 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL ონლაინ მარქაფის დასასრულამდე მთავრდება" -#: access/transam/xlog.c:6088 +#: access/transam/xlog.c:6079 #, c-format msgid "All WAL generated while online backup was taken must be available at recovery." msgstr "აღდგენისას ონლაინ მარქაფის აღებისას გენერირებული ყველა WAL-ი ხელმისაწვდომი უნდა იყოს." -#: access/transam/xlog.c:6092 +#: access/transam/xlog.c:6083 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL აღდგენის შეთანხმებულ წერტილამდე მთავრდება" -#: access/transam/xlog.c:6138 +#: access/transam/xlog.c:6129 #, c-format msgid "selected new timeline ID: %u" msgstr "დროის ახალი ხაზის არჩეული ID: %u" -#: access/transam/xlog.c:6171 +#: access/transam/xlog.c:6162 #, c-format msgid "archive recovery complete" msgstr "არქივიდან აღდგენა დასრულდა" -#: access/transam/xlog.c:6803 +#: access/transam/xlog.c:6794 #, c-format msgid "shutting down" msgstr "მიმდინარეობს გამორთვა" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6842 +#: access/transam/xlog.c:6833 #, 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:6854 +#: access/transam/xlog.c:6845 #, 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:6919 +#: access/transam/xlog.c:6910 #, 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:6943 +#: access/transam/xlog.c:6934 #, 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:7429 +#: access/transam/xlog.c:7420 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "კონკურენტული წინასწარ-ჩაწერადი ჟურნალის აქტივობა, სანამ მონაცემთა ბაზა მუშაობას ასრულებს" -#: access/transam/xlog.c:8020 +#: access/transam/xlog.c:8011 #, c-format msgid "recovery restart point at %X/%X" msgstr "აღდგენის გადატვირთვის წერტილი: %X/%X" -#: access/transam/xlog.c:8022 +#: access/transam/xlog.c:8013 #, c-format msgid "Last completed transaction was at log time %s." msgstr "უკანასკნელად დასრულებული ტრანზაქცია მოხდა ჟურნალის დროით %s." -#: access/transam/xlog.c:8284 +#: access/transam/xlog.c:8277 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "აღდგენის წერტილი \"%s\" შექმნილია %X/%X -სთან" -#: access/transam/xlog.c:8491 +#: access/transam/xlog.c:8484 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "ონლაინ მარქაფი გაუქმდა. აღდგენა ვერ გაგრძელდება" -#: access/transam/xlog.c:8549 +#: access/transam/xlog.c:8542 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "გამორთვის საკონტროლო წერტილში ნაპოვნია დროის ხაზი %u მოულოდნელია (უნდა იყოს %u)" -#: access/transam/xlog.c:8607 +#: access/transam/xlog.c:8600 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "ჩართვის საკონტროლო წერტილში ნაპოვნია დროის ხაზი %u მოულოდნელია (უნდა იყოს %u)" -#: access/transam/xlog.c:8636 +#: access/transam/xlog.c:8629 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "აღდგენის ბოლო საკონტროლო წერტილში ნაპოვნია დროის ხაზი %u მოულოდნელია (უნდა იყოს %u)" -#: access/transam/xlog.c:8906 +#: access/transam/xlog.c:8899 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "გამჭოლად-ჩაწერადი ფაილის (%s) fsync-ის შეცდომა: %m" -#: access/transam/xlog.c:8911 +#: access/transam/xlog.c:8904 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "ფაილის \"%s\" fdatasync შეუძლებელია: %m" -#: access/transam/xlog.c:8988 access/transam/xlog.c:9324 +#: access/transam/xlog.c:8981 access/transam/xlog.c:9317 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "ონლაინ მარქაფისთვის WAL-ის მიმდინარე დონე საკმარისი არაა" -#: access/transam/xlog.c:8989 access/transam/xlog.c:9325 access/transam/xlogfuncs.c:249 +#: access/transam/xlog.c:8982 access/transam/xlog.c:9318 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:8994 +#: access/transam/xlog.c:8987 #, c-format msgid "backup label too long (max %d bytes)" msgstr "მარქაფის ჭდე ძალიან გრძელია (max %d ბაიტი)" -#: access/transam/xlog.c:9115 +#: access/transam/xlog.c:9108 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "" -#: access/transam/xlog.c:9117 access/transam/xlog.c:9413 +#: access/transam/xlog.c:9110 access/transam/xlog.c:9406 #, 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:9197 backup/basebackup.c:1419 utils/adt/misc.c:354 +#: access/transam/xlog.c:9190 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:9204 backup/basebackup.c:1424 utils/adt/misc.c:359 +#: access/transam/xlog.c:9197 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:9363 backup/basebackup.c:1283 +#: access/transam/xlog.c:9356 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "უქმე წახალისდა ონლაინ მარქაფის მიმდინარეობის დროს" -#: access/transam/xlog.c:9364 backup/basebackup.c:1284 +#: access/transam/xlog.c:9357 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:9411 +#: access/transam/xlog.c:9404 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "" -#: access/transam/xlog.c:9527 +#: access/transam/xlog.c:9520 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "ძირითადი მარქაფი დასრულდა. ველოდები აუცილებელი WAL-ის სეგმენტების დაარქივებას" -#: access/transam/xlog.c:9541 +#: access/transam/xlog.c:9534 #, c-format msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)" msgstr "ჯერ კიდევ ველოდები ყველა აუცილებელი WAL სეგმენტის დაარქივებას (გასულია %d წამი)" -#: access/transam/xlog.c:9543 +#: access/transam/xlog.c:9536 #, 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:9550 +#: access/transam/xlog.c:9543 #, c-format msgid "all required WAL segments have been archived" msgstr "ყველა საჭირო WAL სეგმენტი დაარქივებულია" -#: access/transam/xlog.c:9554 +#: access/transam/xlog.c:9547 #, 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:9593 +#: access/transam/xlog.c:9586 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "მარქაფი გაუქმდა, რადგან უკანაბოლომ მუშაობა pg_backup_stop-ის გამოძახებამდე დაასრულა" @@ -2776,147 +2771,147 @@ msgstr "ჩანაწერის არასწორი წანაცვ msgid "contrecord is requested by %X/%X" msgstr "contrecord მოთხოვნილია %X/%X-ის მიერ" -#: access/transam/xlogreader.c:670 access/transam/xlogreader.c:1135 +#: 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:759 +#: access/transam/xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" msgstr "მისამართზე %X/%X contrecord ალამი არ არსებობს" -#: access/transam/xlogreader.c:772 +#: 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:1143 +#: 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:1156 access/transam/xlogreader.c:1172 +#: 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:1210 +#: 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:1244 +#: access/transam/xlogreader.c:1254 #, c-format msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "არასწორი მაგიური რიცხვი %04X ჟურნალის სეგმენტში %s, LSN %X/%X, წანაცვლება %u" -#: access/transam/xlogreader.c:1259 access/transam/xlogreader.c:1301 +#: 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 ჟურნალის სეგმენტში %s, LSN %X/%X, წანაცვლება %u" -#: access/transam/xlogreader.c:1275 +#: access/transam/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 ფაილი სხვა მონაცემთა ბაზის სისტემიდანაა: WAL ფაილის ბაზის სისტემის იდენტიფიკატორია %, pg_control-ის ბაზის სისტემის იდენტიფიკატორია %" -#: access/transam/xlogreader.c:1283 +#: 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:1289 +#: access/transam/xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "WAL ფაილი სხვა მონაცემთა ბაზის სისტემიდანაა: გვერდის თავსართში მითითებული XLOG_BLKSZ არასწორია" -#: access/transam/xlogreader.c:1321 +#: 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 ჟურნალის სეგმენტში %s, LSN %X/%X, წანაცვლება %u" -#: access/transam/xlogreader.c:1347 +#: 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-ის შემდეგ) ჟურნალის სეგმენტში %s, LSN %X/%X, წანაცვლება %u" -#: access/transam/xlogreader.c:1759 +#: access/transam/xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "ურიგო block_id %u მისამართზე %X/%X" -#: access/transam/xlogreader.c:1783 +#: 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:1790 +#: 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:1826 +#: 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:1842 +#: 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:1856 +#: 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:1871 +#: 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:1887 +#: 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:1899 +#: access/transam/xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "არასწორი block_id %u %X/%X" -#: access/transam/xlogreader.c:1966 +#: access/transam/xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "ჩანაწერი არასწორი სიგრძით მისამართზე %X/%X" -#: access/transam/xlogreader.c:1992 +#: access/transam/xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "შეცდომა WAL ჩანაწერში მარქაფი ბლოკის, ID-ით %d, მოძებნისას" -#: access/transam/xlogreader.c:2076 +#: 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:2083 +#: 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:2110 access/transam/xlogreader.c:2127 +#: 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 "%3$s მეთოდით შეკუმშული ასლი მისამართზე %1$X/%2$X, ბლოკი %4$d მხარდაუჭერელია ამ აგების მიერ" -#: access/transam/xlogreader.c:2136 +#: 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:2144 +#: access/transam/xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "არასწორად შეკუმშული ასლი მისამართზე %X/%X, ბლოკი %d" @@ -3416,7 +3411,7 @@ msgstr "არქივირების წარუმატებლად msgid "archive command was terminated by exception 0x%X" msgstr "არქივაციის ბრძანება დასრულდა გამონაკლისით 0x%X" -#: archive/shell_archive.c:109 postmaster/postmaster.c:2843 +#: 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\"." @@ -3680,7 +3675,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:2241 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:2233 storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "საქაღალდის (%s) შექმნის შეცდომა: %m" @@ -3911,8 +3906,8 @@ msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" msgstr "'IN SCHEMA' პირობის გამოყენება GRANT/REVOKE ON LARGE OBJECT-ის გამოყენებისას შეუძლებელია" #: 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:14371 commands/tablecmds.c:14574 commands/tablecmds.c:14735 commands/tablecmds.c:15940 commands/tablecmds.c:18707 commands/trigger.c:947 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:2921 utils/adt/ruleutils.c:2858 +#: 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 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "სვეტი \"%s\" ურთიერთობაში %s არ არსებობს" @@ -3922,12 +3917,12 @@ msgstr "სვეტი \"%s\" ურთიერთობაში %s არ msgid "\"%s\" is an index" msgstr "\"%s\" ინდექსია" -#: catalog/aclchk.c:1813 commands/tablecmds.c:16097 commands/tablecmds.c:19626 +#: catalog/aclchk.c:1813 commands/tablecmds.c:16121 commands/tablecmds.c:19650 #, 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:19590 utils/adt/acl.c:2105 utils/adt/acl.c:2135 utils/adt/acl.c:2168 utils/adt/acl.c:2204 utils/adt/acl.c:2235 utils/adt/acl.c:2266 +#: 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 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\" მიმდევრობა არაა" @@ -4441,8 +4436,8 @@ 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:16691 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:312 replication/logical/applyparallelworker.c:1041 replication/slot.c:1638 replication/syncrep.c:1079 storage/aio/method_io_uring.c:191 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:6823 utils/misc/guc.c:6857 utils/misc/guc.c:6891 utils/misc/guc.c:6934 utils/misc/guc.c:6976 +#: 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" @@ -4551,7 +4546,7 @@ msgstr "" msgid "relation \"%s\" already exists" msgstr "ურთიერთობა \"%s\" უკვე არსებობს" -#: 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:1205 commands/typecmds.c:1431 commands/typecmds.c:1611 commands/typecmds.c:2586 +#: 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:1213 commands/typecmds.c:1439 commands/typecmds.c:1619 commands/typecmds.c:2594 #, c-format msgid "type \"%s\" already exists" msgstr "ტიპი \"%s\" უკვე არსებობს" @@ -4621,7 +4616,7 @@ 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:17534 commands/tablecmds.c:17716 +#: 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 #, c-format msgid "too many inheritance parents" msgstr "მეტისმეტად ბევრი მემკვიდრეობის მშობლები" @@ -4638,8 +4633,8 @@ msgstr "ურთიერთგამომრიცხავი არან #: catalog/heap.c:3009 #, c-format -msgid "cannot define not-null constraint on column \"%s\" with NO INHERIT" -msgstr "არანულოვანი შეზღუდვების აღწერა სვეტზე \"%s\" შეუძლებელია NO INHERIT-თან ერთად" +msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" +msgstr "არანულოვანი შეზღუდვების აღწერა NO INHERIT-თან ერთად სვეტზე \"%s\" შეუძლებელია" #: catalog/heap.c:3011 #, c-format @@ -4816,7 +4811,7 @@ msgstr "\"%s\"-ის რეინდექსი დასრულდა" msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "'TOAST' ცხრილზე მდებარე არასწორი ინდექსის \"%s.%s\" რეინდექსი შეუძლებელია. გამოტოვება" -#: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 commands/trigger.c:5765 +#: 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 "ბაზებს შორის ბმულები განხორციელებული არაა: \"%s.%s.%s\"" @@ -4896,7 +4891,7 @@ msgstr "ტექსტის ძებნის კონფიგურაც msgid "cross-database references are not implemented: %s" msgstr "ბაზებს შორის ბმულები განხორციელებული არაა: %s" -#: catalog/namespace.c:3335 gram.y:19349 gram.y:19389 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: catalog/namespace.c:3335 gram.y:19355 gram.y:19395 parser/parse_expr.c:873 parser/parse_target.c:1269 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "არასწორი სრული სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" @@ -4946,22 +4941,22 @@ msgstr "აღდგენისას დროებითი ცხრილ 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:14509 +#: 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 #, c-format msgid "\"%s\" is not a table" msgstr "\"%s\" ცხრილი არაა" -#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 commands/tablecmds.c:19595 commands/view.c:113 +#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 commands/tablecmds.c:19619 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:19600 +#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 commands/tablecmds.c:19624 #, c-format msgid "\"%s\" is not a materialized view" msgstr "\"%s\" არ არის მატერიალიზებული ხედი" -#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 commands/tablecmds.c:19605 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 commands/tablecmds.c:19629 #, c-format msgid "\"%s\" is not a foreign table" msgstr "\"%s\" გარე ცხრილი არაა" @@ -4981,7 +4976,7 @@ msgstr "სვეტს სახელი სრულად უნდა მ msgid "default value for column \"%s\" of relation \"%s\" does not exist" msgstr "ურთიერთობის (%2$s) სვეტის (%1$s) ნაგულისხმევი მნიშვნელობა არ არსებობს" -#: catalog/objectaddress.c:1623 commands/functioncmds.c:132 commands/tablecmds.c:288 commands/typecmds.c:278 commands/typecmds.c:3834 parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:801 utils/adt/acl.c:4558 +#: 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:4575 #, c-format msgid "type \"%s\" does not exist" msgstr "ტიპი \"%s\" არ არსებობს" @@ -5543,7 +5538,7 @@ msgstr "\"%s\" ჰიპოთეტიკური-სეტის აგრე msgid "cannot change number of direct arguments of an aggregate function" msgstr "" -#: catalog/pg_aggregate.c:859 commands/functioncmds.c:701 commands/typecmds.c:2015 commands/typecmds.c:2061 commands/typecmds.c:2113 commands/typecmds.c:2150 commands/typecmds.c:2184 commands/typecmds.c:2218 commands/typecmds.c:2252 commands/typecmds.c:2281 commands/typecmds.c:2368 commands/typecmds.c:2410 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 +#: 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" @@ -5764,7 +5759,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:17842 +#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 commands/tablecmds.c:17866 #, c-format msgid "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending detach operation." msgstr "მოხსნის ოპერაციის დასასრულებლად გამოიყენეთ ALTER TABLE ... DETACH PARTITION ... FINALIZE ." @@ -6093,12 +6088,12 @@ msgstr "%s-ის წაშლა შეუძლებელია. საჭ msgid "cannot reassign ownership of objects owned by %s because they are required by the database system" msgstr "%s-ის მფლობელობაში მყოფი ობიექტების წვდომების თავიდან მინიჭება შეუძლებელია, რადგან ისინი ბაზის სისტემისთვისაა საჭირო" -#: catalog/pg_subscription.c:469 +#: catalog/pg_subscription.c:484 #, c-format msgid "could not drop relation mapping for subscription \"%s\"" msgstr "გამოწერისთვის \"%s\" ურთიერთობის მიბმის წაშლა შეუძლებელია" -#: catalog/pg_subscription.c:471 +#: catalog/pg_subscription.c:486 #, c-format msgid "Table synchronization for relation \"%s\" is in progress and is in state \"%c\"." msgstr "მიმდინარეობს ცხრილის სინქრონიზაცია ურთიერთობისთვის \"%s\" და მისი მდგომარეობაა \"%c\"." @@ -6106,7 +6101,7 @@ msgstr "მიმდინარეობს ცხრილის სინქ #. translator: first %s is a SQL ALTER command and second %s is a #. SQL DROP command #. -#: catalog/pg_subscription.c:478 +#: 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, გამოწერის წასაშლელად." @@ -6136,7 +6131,7 @@ msgstr "შიდა ზომა %d მნიშვნელობით-გა msgid "alignment \"%c\" is invalid for variable-length type" msgstr "სწორება \"%c\" არასწორია ცვლადი-სიგრძის ტიპისთვის" -#: catalog/pg_type.c:325 commands/typecmds.c:4354 +#: catalog/pg_type.c:325 commands/typecmds.c:4362 #, c-format msgid "fixed-size types must have storage PLAIN" msgstr "ფიქსირებული ზომის ტიპებს უნდა PLAIN ტიპის საცავი უნდა ჰქონდეთ" @@ -6151,7 +6146,7 @@ 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:7337 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7332 #, c-format msgid "invalid page in block %u of relation %s" msgstr "ურთიერთობის (%2$s) ბლოკის (%1$u) არასწორ გვერდი" @@ -6351,7 +6346,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:705 parser/parse_clause.c:941 +#: 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 #, c-format msgid "function %s must return type %s" msgstr "ფუნქციამ (%s) აუცილებლად უნდა დააბრუნოს ტიპი %s" @@ -6461,7 +6456,7 @@ msgstr "სხვა სესიების დროებით ცხრი msgid "there is no previously clustered index for table \"%s\"" msgstr "ცხრილისთვის \"%s\" წინასწარ დაკლასტერებული ინდექსი არ არსებობს" -#: commands/cluster.c:190 commands/tablecmds.c:16398 commands/tablecmds.c:18464 +#: commands/cluster.c:190 commands/tablecmds.c:16422 commands/tablecmds.c:18488 #, c-format msgid "index \"%s\" for table \"%s\" does not exist" msgstr "ინდექსი %s ცხრილისთვის %s არ არსებობს" @@ -6476,7 +6471,7 @@ msgstr "გაზიარებული კატალოგის დაკ msgid "cannot vacuum temporary tables of other sessions" msgstr "სხვა სესიების დროებითი ცხრილების მომტვერსასრუტება შეუძლებელია" -#: commands/cluster.c:507 commands/tablecmds.c:18474 +#: commands/cluster.c:507 commands/tablecmds.c:18498 #, c-format msgid "\"%s\" is not an index for table \"%s\"" msgstr "\"%s\" არ წარმოადგენს ინდექსს ცხრილისთვის \"%s\"" @@ -6608,7 +6603,7 @@ 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:16100 commands/tablecmds.c:19628 commands/tablecmds.c:19649 commands/typecmds.c:3778 commands/typecmds.c:3863 commands/typecmds.c:4217 +#: 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 #, c-format msgid "Use %s instead." msgstr "ამის ნაცვლად %s გამოიყენეთ." @@ -6887,7 +6882,7 @@ msgstr "გენერირებული სვეტები COPY-ში msgid "column \"%s\" does not exist" msgstr "სვეტი არ არსებობს: \"%s\"" -#: commands/copy.c:1012 commands/tablecmds.c:2619 commands/trigger.c:956 parser/parse_target.c:1086 parser/parse_target.c:1097 +#: commands/copy.c:1012 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\"" @@ -7719,7 +7714,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:18905 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:18929 tcop/utility.c:1328 #, c-format msgid "relation \"%s\" does not exist, skipping" msgstr "ურთიერთობა \"%s\" არ არსებობს, გამოტოვებს" @@ -8240,7 +8235,7 @@ msgstr "ამ ტიპის ობიექტის გაფართოე msgid "cannot add schema \"%s\" to extension \"%s\" because the schema contains the extension" msgstr "სქემის (\"%s\") გაფართოებაში (\"%s\") ჩამატება შეუძლებელია, რადგან სქემა გაფართოებას შეიცავს" -#: commands/extension.c:3759 commands/typecmds.c:4033 utils/fmgr/funcapi.c:725 +#: commands/extension.c:3759 commands/typecmds.c:4041 utils/fmgr/funcapi.c:725 #, c-format msgid "could not find multirange type for data type %s" msgstr "მონაცემების ტიპისთვის %s მრავალდიაპაზონიანი ტიპი ვერ ვიპოვე" @@ -8907,7 +8902,7 @@ msgstr "ჩასმულ სვეტს NULLS FIRST/LAST მხარდა msgid "could not determine which collation to use for index expression" msgstr "ინდექსის გამოსახულებისთვის გამოსაყენებელი კოლაციის გამოცნობა შეუძლებელია" -#: commands/indexcmds.c:2097 commands/tablecmds.c:19935 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: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 #, c-format msgid "collations are not supported by type %s" msgstr "ტიპს \"%s\" კოლაციების მხარდაჭერა არ გააჩნია" @@ -8942,7 +8937,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:19960 commands/tablecmds.c:19966 commands/typecmds.c:2341 +#: commands/indexcmds.c:2277 commands/tablecmds.c:19984 commands/tablecmds.c:19990 commands/typecmds.c:2349 #, c-format msgid "data type %s has no default operator class for access method \"%s\"" msgstr "მონაცემის ტიპს %s წვდომის მეთოდისთვის \"%s\" ნაგულისხმევი ოპერატორის კლასი არ გააჩნია" @@ -8957,7 +8952,7 @@ msgstr "აუცილებელია მიუთითოთ ოპერ msgid "operator class \"%s\" does not exist for access method \"%s\"" msgstr "ოპერატორის კლასი \"%s\" წვდომის მეთოდისთვის \"%s\" არ არსებობს" -#: commands/indexcmds.c:2330 commands/typecmds.c:2329 +#: commands/indexcmds.c:2330 commands/typecmds.c:2337 #, c-format msgid "operator class \"%s\" does not accept data type %s" msgstr "ოპერატორის კლასი \"%s\" მონაცემების ტიპს %s არ იღებს" @@ -9077,7 +9072,7 @@ msgstr "ურთიერთობის დაბლოკვა (\"%s\") შ msgid "CONCURRENTLY cannot be used when the materialized view is not populated" msgstr "CONCURRENTLY-ის გამოყენება შეუძლებელია, როცა მატერიალიზებული ხედი შევსებული არაა" -#: commands/matview.c:214 gram.y:19081 +#: commands/matview.c:214 gram.y:19087 #, c-format msgid "%s and %s options cannot be used together" msgstr "პარამეტრები %s და %s შეუთავსებლებია" @@ -9104,8 +9099,8 @@ msgstr "მწკრივი: %s" #: commands/matview.c:838 #, c-format -msgid "could not find suitable unique index on materialized view" -msgstr "მატერიალიზებულ ხედზე შესაბამისი უნიკალური ინდექსი ვერ ვიპოვე" +msgid "could not find suitable unique index on materialized view \"%s\"" +msgstr "მატერიალიზებულ ხედზე \"%s\" შესაბამისი უნიკალური ინდექსი ვერ ვიპოვე" #: commands/opclasscmds.c:124 #, c-format @@ -9407,7 +9402,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:19516 commands/tablecmds.c:19551 commands/trigger.c:318 commands/trigger.c:1337 commands/trigger.c:1447 rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 +#: 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 #, c-format msgid "permission denied: \"%s\" is a system catalog" msgstr "წვდომა აკრძალულია: '%s\" სისტემური კატალოგია" @@ -9457,7 +9452,7 @@ msgstr "კურსორის არასწორი სახელი. msgid "cannot create a cursor WITH HOLD within security-restricted operation" msgstr "უსაფრთხოებაზე-შეზღუდული ოპერაციის შიგნით კურსორს WITH HOLD ვერ შექმნით" -#: commands/portalcmds.c:199 commands/portalcmds.c:252 executor/execCurrent.c:70 utils/adt/xml.c:2949 utils/adt/xml.c:3119 +#: 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\" არ არსებობს" @@ -9502,7 +9497,7 @@ 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:1870 +#: 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\"" @@ -9698,8 +9693,13 @@ msgstr "პუბლიკაცია OID-ით %u არ არსებო #: commands/publicationcmds.c:2133 #, c-format -msgid "%s requires a \"none\" or \"stored\" value" -msgstr "%s მოითხოვს მნიშვნელობას \"none' ან \"stored\"" +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 @@ -9856,7 +9856,7 @@ msgstr "მიმდევრობას იგივე სქემა უნ msgid "cannot change ownership of identity sequence" msgstr "იდენტიფიკაციის მიმდევრობის მფლობელის შეცვლა შეუძლებელია" -#: commands/sequence.c:1671 commands/tablecmds.c:16087 commands/tablecmds.c:18925 +#: commands/sequence.c:1671 commands/tablecmds.c:16111 commands/tablecmds.c:18949 #, c-format msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "მიმდევრობა %s მიბმულია ცხრილზე \"%s\"." @@ -10037,13 +10037,13 @@ msgstr "ჩართული გამოწერისთვის %s-ის #: commands/subscriptioncmds.c:1270 #, c-format -msgid "slot_name and two_phase cannot be altered at the same time" -msgstr "slot_name და two_phase ერთდროულად ვერ შეიცვლება" +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-ის შეცვლა შეუძლებელია, როცა ლოგიკური რეპლიკაციის დამხმარე პროცესი ჯერ კიდევ გაშვებულია" +msgid "cannot alter \"two_phase\" when logical replication worker is still running" +msgstr "\"two_phase\"-ის შეცვლა შეუძლებელია, როცა ლოგიკური რეპლიკაციის დამხმარე პროცესი ჯერ კიდევ გაშვებულია" #: commands/subscriptioncmds.c:1287 #, c-format @@ -10052,8 +10052,8 @@ msgstr "სცადეთ კიდევ ერთხელ რაღაც #: commands/subscriptioncmds.c:1300 #, c-format -msgid "cannot disable two_phase when prepared transactions are present" -msgstr "" +msgid "cannot disable \"two_phase\" when prepared transactions exist" +msgstr "ვერ გამოვრთავ \"two_phase\"-ს, როცა არსებობს მომზადებული ტრანზაქციები" #: commands/subscriptioncmds.c:1301 #, c-format @@ -10153,7 +10153,7 @@ msgstr[1] "" 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:909 replication/pgoutput/pgoutput.c:1162 +#: commands/subscriptioncmds.c:2296 replication/logical/tablesync.c:933 replication/pgoutput/pgoutput.c:1162 #, c-format msgid "cannot use different column lists for table \"%s.%s\" in different publications" msgstr "" @@ -10250,7 +10250,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:21588 parser/parse_utilcmd.c:2429 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 parser/parse_utilcmd.c:2429 #, c-format msgid "index \"%s\" does not exist" msgstr "ინდექსი \"%s\" არ არსებობს" @@ -10273,7 +10273,7 @@ msgstr "\"%s\" ტიპი არაა" msgid "Use DROP TYPE to remove a type." msgstr "ტიპის წასაშლელად გამოიყენეთ DROP TYPE." -#: commands/tablecmds.c:294 commands/tablecmds.c:15926 commands/tablecmds.c:18627 +#: commands/tablecmds.c:294 commands/tablecmds.c:15950 commands/tablecmds.c:18651 #, c-format msgid "foreign table \"%s\" does not exist" msgstr "გარე ცხრილი \"%s\" არ არსებობს" @@ -10302,7 +10302,7 @@ msgstr "დაყოფილი ცხრილების ჟურნალ msgid "cannot create temporary table within security-restricted operation" msgstr "უსაფრთხოებაზე-შეზღუდული ოპერაციის შიგნით დროებითი ცხრილის შექმნა შეუძლებელია" -#: commands/tablecmds.c:875 commands/tablecmds.c:17351 +#: commands/tablecmds.c:875 commands/tablecmds.c:17375 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "ურთიერთობა \"%s\" მემკვირდრეობით ერზე მეტჯერ იქნებოდა მიღებული" @@ -10327,7 +10327,7 @@ msgstr "დაყოფილი ცხრილის (%s) გარე და msgid "Table \"%s\" contains indexes that are unique." msgstr "ცხრილი %s შეიცავს სვეტებს, რომლებიც უნიკალურია." -#: commands/tablecmds.c:1415 commands/tablecmds.c:14926 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 #, c-format msgid "too many array dimensions" msgstr "მასივის მეტისმეტად ბევრი განზომილება" @@ -10377,7 +10377,7 @@ msgstr "გარე ცხრილის (\"%s\") მოკვეთის შ msgid "cannot truncate temporary tables of other sessions" msgstr "სხვა სესიების დროებითი ცხრილების მოკვეთის შეცდომა" -#: commands/tablecmds.c:2675 commands/tablecmds.c:17248 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17272 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "დაყოფილი ცხრილიდან \"%s\" მემკვიდრეობის მიღება შეუძლებელია" @@ -10397,17 +10397,17 @@ msgstr "მემკვიდრეობით მიღებული ურ msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "შეუძლებელია შექმნათ დროებით ურთიერთობა, რომელიც მუდმივი ურთიერთობის \"%s\" დანაყოფი იქნება" -#: commands/tablecmds.c:2709 commands/tablecmds.c:17227 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17251 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "დროებითი ურთიერთობიდან (%s) მემკვიდრეობითობა შეუძლებელია" -#: commands/tablecmds.c:2719 commands/tablecmds.c:17235 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17259 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "სხვა სესიის დროებითი ურთიერთობიდან მემკვიდრეობითობა შეუძლებელია" -#: commands/tablecmds.c:2874 commands/tablecmds.c:2928 commands/tablecmds.c:14609 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:14610 parser/parse_utilcmd.c:1440 parser/parse_utilcmd.c:1485 parser/parse_utilcmd.c:1917 parser/parse_utilcmd.c:2025 #, c-format msgid "cannot convert whole-row table reference" msgstr "" @@ -10442,12 +10442,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:17513 +#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 commands/tablecmds.c:17537 #, 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:17514 +#: commands/tablecmds.c:3074 commands/tablecmds.c:3368 commands/tablecmds.c:17538 #, c-format msgid "Parent column is %s, child column is %s." msgstr "მშობელი სვეტია %s, შვილი სვეტია %s." @@ -10710,12 +10710,12 @@ msgstr "ტიპიზირებულ ცხრილში სვეტე msgid "cannot add column to a partition" msgstr "დანაყოფს სვეტს ვერ დაუმატებთ" -#: commands/tablecmds.c:7269 commands/tablecmds.c:17469 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17493 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "შვილ ცხრილს \"%s\" სვეტისთვის \"%s\" სხვა ტიპი გააჩნია" -#: commands/tablecmds.c:7275 commands/tablecmds.c:17475 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17499 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "შვილ ცხრილს \"%s\" სვეტისთვის \"%s\" სხვა კოლაცია გააჩნია" @@ -10745,12 +10745,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:14381 commands/tablecmds.c:15949 commands/tablecmds.c:18716 +#: 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 #, c-format msgid "cannot alter system column \"%s\"" msgstr "სისტემური სვეტის \"%s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 commands/tablecmds.c:14142 +#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 commands/tablecmds.c:14143 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" იდენტიფიკატორი სვეტია" @@ -10837,8 +10837,8 @@ msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" გ #: commands/tablecmds.c:8612 #, c-format -msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns on tables with check constraints" -msgstr "ALTER TABLE / SET EXPRESSION მხარდაჭერილი არაა შემოწმების შეზღუდვების მქონე ვირტუალური გენერირებული სვეტებისთვის" +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 #, c-format @@ -10847,8 +10847,8 @@ msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" ვ #: commands/tablecmds.c:8630 #, c-format -msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns on tables that are part of a publication" -msgstr "ALTER TABLE / SET EXPRESSION მხარდაჭერილი არაა ვირტუალურ გენერირებულ სვეტებზე ცხრილებზე, რომლებიც გამოცემის ნაწილი არიან" +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 #, c-format @@ -10998,7 +10998,7 @@ msgstr "" #: commands/tablecmds.c:10192 #, c-format -msgid "foreign key must use PERIOD when referencing a primary using WITHOUT OVERLAPS" +msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" msgstr "" #: commands/tablecmds.c:10216 commands/tablecmds.c:10222 @@ -11071,7 +11071,7 @@ msgstr "შეზღუდვის \"%s\" ნაძალადევობა msgid "constraint must be altered in child tables too" msgstr "შეზღუდვა შვილ ცხრილებშიც უნდა შეიცვალოს" -#: commands/tablecmds.c:12210 commands/tablecmds.c:12907 commands/tablecmds.c:14021 commands/tablecmds.c:14250 +#: commands/tablecmds.c:12210 commands/tablecmds.c:12907 commands/tablecmds.c:14022 commands/tablecmds.c:14251 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "ურთიერთობის \"%2$s\" შეზღუდვა \"%1$s\" არ არსებობს" @@ -11113,681 +11113,686 @@ msgstr "ამის მაგიერ, შეიგძლიათ, შეც #: commands/tablecmds.c:12916 #, c-format -msgid "constraint \"%s\" of relation \"%s\" is not a foreign key, check, or not-null constraint" -msgstr "შეზღუდვა \"%s\" ურთიერთობისთვის \"%s\" გარე გასაღებს, შემოწმებას, ან არანულოვან შეზღუდვას არ წარმოადგენს" +msgid "cannot validate constraint \"%s\" of relation \"%s\"" +msgstr "ვერ გადავამოწმე შეზღუდვა \"%s\" ურთიერთობისთვის \"%s\"" -#: commands/tablecmds.c:12922 +#: commands/tablecmds.c:12918 +#, c-format +msgid "This operation is not supported for this type of constraint." +msgstr "ეს ოპერაცია ამ ტიპის შეზღუდვისთვის მხარდაჭერილი არაა." + +#: commands/tablecmds.c:12923 #, c-format msgid "cannot validate NOT ENFORCED constraint" msgstr "შეზღუდვის NOT ENFORCED დადასტურება შეუძლებელია" -#: commands/tablecmds.c:13131 commands/tablecmds.c:13231 +#: commands/tablecmds.c:13132 commands/tablecmds.c:13232 #, c-format msgid "constraint must be validated on child tables too" msgstr "შეზღუდვა შვილ ცხრილებზეც უნდა გადამოწმდეს" -#: commands/tablecmds.c:13308 +#: commands/tablecmds.c:13309 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "გარე გასაღების შეზღუდვაში მითითებული სვეტი \"%s\" არ არსებობს" -#: commands/tablecmds.c:13314 +#: commands/tablecmds.c:13315 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "უცხო გასაღებებში სისტემურ სვეტებს ვერ გამოიყენებთ" -#: commands/tablecmds.c:13318 +#: commands/tablecmds.c:13319 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "გარე გასაღებში %d გასაღებზე მეტი ვერ გექნებათ" -#: commands/tablecmds.c:13386 +#: commands/tablecmds.c:13387 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "" -#: commands/tablecmds.c:13403 +#: commands/tablecmds.c:13404 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "მითითებული ცხრილისთვის \"%s\" ძირითადი გასაღები არ არსებობს" -#: commands/tablecmds.c:13476 +#: commands/tablecmds.c:13477 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "" -#: commands/tablecmds.c:13579 +#: commands/tablecmds.c:13580 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "" -#: commands/tablecmds.c:13584 +#: commands/tablecmds.c:13585 #, c-format msgid "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "" -#: commands/tablecmds.c:14025 +#: commands/tablecmds.c:14026 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" msgstr "ურთიერთობის (\"%2$s\") შეზღუდვა (\"%1$s\") არ არსებობს. გამოტოვება" -#: commands/tablecmds.c:14070 +#: commands/tablecmds.c:14071 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "მემკვიდრეობით მიღებული ურთიერთობის \"%2$s\" შეზღუდვის \"%1$s\" წაშლა შეუძლებელია" -#: commands/tablecmds.c:14122 +#: commands/tablecmds.c:14123 #, c-format msgid "column \"%s\" is in a primary key" msgstr "სვეტი \"%s\" პირველადი გასაღებია" -#: commands/tablecmds.c:14130 +#: commands/tablecmds.c:14131 #, c-format msgid "column \"%s\" is in index used as replica identity" msgstr "სვეტი \"%s\" რეპლიკის იდენტიფიკატორად გამოყენებული ინდექსია" -#: commands/tablecmds.c:14363 +#: commands/tablecmds.c:14364 #, c-format msgid "cannot alter column type of typed table" msgstr "ტიპიზირებული ცხრილის სვეტის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14391 +#: commands/tablecmds.c:14392 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "გენერირებული სვეტის ტიპის შეცვლისას USING-ს ვერ მიუთითებთ" -#: commands/tablecmds.c:14392 commands/tablecmds.c:19775 commands/tablecmds.c:19868 commands/trigger.c:659 rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 +#: 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:14403 +#: commands/tablecmds.c:14404 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "მემკვიდრეობით მიღებული სვეტის \"%s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14412 +#: commands/tablecmds.c:14413 #, c-format msgid "cannot alter column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "სვეტის \"%s\" შეცვლა შეუძლებელია, რადგან ის ურთიერთობის \"%s\" დანაყოფის გასაღების ნაწილია" -#: commands/tablecmds.c:14467 +#: commands/tablecmds.c:14468 #, c-format msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s" msgstr "" -#: commands/tablecmds.c:14470 +#: commands/tablecmds.c:14471 #, c-format msgid "You might need to add an explicit cast." msgstr "შეიძლება აშკარა დაკასტვა უნდა დაამატოთ." -#: commands/tablecmds.c:14474 +#: commands/tablecmds.c:14475 #, 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:14478 +#: commands/tablecmds.c:14479 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "შეიძლება, გჭირდებათ, მიუთითოთ \"USING %s::%s\"." -#: commands/tablecmds.c:14581 +#: commands/tablecmds.c:14582 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "ურთიერთობის \"%2$s\" სვეტის \"%1$s\" შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14610 +#: commands/tablecmds.c:14611 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "" -#: commands/tablecmds.c:14621 +#: commands/tablecmds.c:14622 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "" -#: commands/tablecmds.c:14746 +#: commands/tablecmds.c:14747 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "სვეტის (\"%s\") ტიპის ორჯერ შეცვლა შეუძლებელია" -#: commands/tablecmds.c:14784 +#: commands/tablecmds.c:14785 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "" -#: commands/tablecmds.c:14789 +#: commands/tablecmds.c:14790 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "" -#: commands/tablecmds.c:15093 +#: commands/tablecmds.c:15094 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "ფუნქციის ან პროცედურის მიერ გამოყენებული სვეტის ტიპის შექმნა შეუძლებელია" -#: commands/tablecmds.c:15094 commands/tablecmds.c:15109 commands/tablecmds.c:15129 commands/tablecmds.c:15148 commands/tablecmds.c:15207 +#: commands/tablecmds.c:15095 commands/tablecmds.c:15110 commands/tablecmds.c:15130 commands/tablecmds.c:15149 commands/tablecmds.c:15208 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s ეყრდნობა სვეტს \"%s\"" -#: commands/tablecmds.c:15108 +#: commands/tablecmds.c:15109 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "ხედის ან წესის მიერ გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15128 +#: commands/tablecmds.c:15129 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "ტრიგერის აღწერაში გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15147 +#: commands/tablecmds.c:15148 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "პოლიტიკის აღწერაში გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15178 +#: commands/tablecmds.c:15179 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "გენერირებული სვეტის მიერ გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:15179 +#: commands/tablecmds.c:15180 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "სვეტი (%s\") გენერირებული სვეტის (%s) მიერ გამოიყენება." -#: commands/tablecmds.c:15206 +#: commands/tablecmds.c:15207 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "გამოცემის WHERE პირობის მიერ გამოყენებული სვეტის ტიპის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16057 commands/tablecmds.c:16069 +#: commands/tablecmds.c:16081 commands/tablecmds.c:16093 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "ინდექსის \"%s\" მფლობელის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16059 commands/tablecmds.c:16071 +#: commands/tablecmds.c:16083 commands/tablecmds.c:16095 #, c-format msgid "Change the ownership of the index's table instead." msgstr "ამის მაგიერ ინდექსის ცხრილის მფლობელი შეცვალეთ." -#: commands/tablecmds.c:16085 +#: commands/tablecmds.c:16109 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "მიმდევრობის \"%s\" მფლობელის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16110 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "ურთიერთობის \"%s\" მფლობელის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:16577 +#: commands/tablecmds.c:16601 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "ერთზე მეტი SET TABLESPACE ქვებრძანება ვერ გექნებათ" -#: commands/tablecmds.c:16656 +#: commands/tablecmds.c:16680 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "ურთიერთობის (%s) პარამეტრების დაყენება შეუძლებელია" -#: commands/tablecmds.c:16690 commands/view.c:440 +#: commands/tablecmds.c:16714 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "WITH CHECK OPTION მხოლოდ ავტომატურად განახლებად ხედებზეა მხარდაჭერილი" -#: commands/tablecmds.c:16943 +#: commands/tablecmds.c:16967 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "ცხრილის სივრცეში მხოლოდ ცხრილები, ინდექსები და მატერიალიზებული ხედები შეიძლება არსებობდეს" -#: commands/tablecmds.c:16955 +#: commands/tablecmds.c:16979 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "ცხრილების სივრცეში pg_globl ურთიერთობების შეტანა/გამოტანა შეუძლებელია" -#: commands/tablecmds.c:17047 +#: commands/tablecmds.c:17071 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "შეწყვეტა, რადგან ბლოკი ურთიერთობაზე \"%s.%s\" ხელმისაწვდომი არაა" -#: commands/tablecmds.c:17063 +#: commands/tablecmds.c:17087 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "ცხრილების სივრცეში \"%s\" ურთიერთობა, რომელიც ემთხვევა, ვერ ვიპოვე" -#: commands/tablecmds.c:17185 +#: commands/tablecmds.c:17209 #, c-format msgid "cannot change inheritance of typed table" msgstr "ტიპიზირებული ცხრილის მემკვიდრეობითობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:17190 commands/tablecmds.c:17774 +#: commands/tablecmds.c:17214 commands/tablecmds.c:17798 #, c-format msgid "cannot change inheritance of a partition" msgstr "დანაყოფის მემკვიდრეობითობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:17195 +#: commands/tablecmds.c:17219 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "დაყოფილი ცხრილის მემკვიდრეობითობის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:17242 +#: commands/tablecmds.c:17266 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "სხვა სესიის დროებითი ურთიერთობის მემკვიდრეობით მიღება შეუძლებელია" -#: commands/tablecmds.c:17255 +#: commands/tablecmds.c:17279 #, c-format msgid "cannot inherit from a partition" msgstr "დანაყოფიდან მემკვიდრეობითობა შეუძლებელია" -#: commands/tablecmds.c:17277 commands/tablecmds.c:20288 +#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 #, c-format msgid "circular inheritance not allowed" msgstr "წრიული მემკვიდრეობითობა დაუშვებელია" -#: commands/tablecmds.c:17278 commands/tablecmds.c:20289 +#: commands/tablecmds.c:17302 commands/tablecmds.c:20313 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\" უკვე \"%s\"-ის შვილია." -#: commands/tablecmds.c:17291 +#: commands/tablecmds.c:17315 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "ტრიგერი \"%s\" ხელს უშლის ცხრილს \"%s\" მემკვიდრეობის შვილად გადაიქცეს" -#: commands/tablecmds.c:17293 +#: commands/tablecmds.c:17317 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "ROW ტრიგერები, რომლებსაც გარდამავალი ცხრილები გააჩნიათ, მემკვიდრეობითობის იერარქიებში მხარდაჭერილი არაა." -#: commands/tablecmds.c:17494 commands/tablecmds.c:17743 +#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 #, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" msgstr "სვეტი \"%s\" შვილ ცხრილში \"%s\" NOT NULL-ით უნდა იყოს დანიშნული" -#: commands/tablecmds.c:17504 +#: commands/tablecmds.c:17528 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "შვილ ცხრილში სვეტი \"%s\" გენერირებული სვეტი არ უნდა იყოს" -#: commands/tablecmds.c:17508 +#: commands/tablecmds.c:17532 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "შვილ ცხრილში სვეტი \"%s\" გენერირებული სვეტი არ უნდა იყოს" -#: commands/tablecmds.c:17554 +#: commands/tablecmds.c:17578 #, c-format msgid "child table is missing column \"%s\"" msgstr "შვილ ცხრილს აკლია სვეტი \"%s\"" -#: commands/tablecmds.c:17671 +#: commands/tablecmds.c:17695 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "შვილ ცხრილს \"%s\" შემოწმების შეზღუდვისთვის \"%s\" სხვა განსაზღვრება გააჩნია" -#: commands/tablecmds.c:17680 +#: commands/tablecmds.c:17704 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "შეზღუდვა \"%s\" კონფლიქტშია არა-მემკვიდრეობით მიღებულ შეზღუდვასთან შვილ ცხრილზე \"%s\"" -#: commands/tablecmds.c:17691 +#: commands/tablecmds.c:17715 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "შეზღუდვა \"%s\" კონფლიქტშია შეზღუდვასთან NOT VALID შვილ ცხრილზე \"%s\"" -#: commands/tablecmds.c:17702 +#: commands/tablecmds.c:17726 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" msgstr "შეზღუდვა \"%s\" კონფლიქტშია შეზღუდვასთან NOT ENFORCED შვილ ცხრილზე \"%s\"" -#: commands/tablecmds.c:17751 +#: commands/tablecmds.c:17775 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "შვილ ცხრილს აკლია შეზღუდვა \"%s\"" -#: commands/tablecmds.c:17838 +#: commands/tablecmds.c:17862 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "დანაყოფი \"%s\" უკვე დაყოფილი ცხრილიდან \"%s.%s\" მოხსნის რიგშია" -#: commands/tablecmds.c:17867 commands/tablecmds.c:17915 +#: commands/tablecmds.c:17891 commands/tablecmds.c:17939 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "ურთიერთობა \"%s\" ურთიერთობის \"%s\" დანაყოფს არ წარმოადგენს" -#: commands/tablecmds.c:17921 +#: commands/tablecmds.c:17945 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "ურთიერთობა \"%s\" ურთიერთობის \"%s\" მშობელს არ წარმოადგენს" -#: commands/tablecmds.c:18192 +#: commands/tablecmds.c:18216 #, c-format msgid "typed tables cannot inherit" msgstr "ტიპიზირებულ ცხრილებს მემკვიდრეობითობა არ შეუძლიათ" -#: commands/tablecmds.c:18222 +#: commands/tablecmds.c:18246 #, c-format msgid "table is missing column \"%s\"" msgstr "ცხრილს აკლია სვეტი \"%s\"" -#: commands/tablecmds.c:18233 +#: commands/tablecmds.c:18257 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "ცხრილს აქვს სვეტი \"%s\" მაშინ, როცა ტიპი \"%s\"-ს მოითხოვს" -#: commands/tablecmds.c:18242 +#: commands/tablecmds.c:18266 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "ცხრილს \"%s\" სვეტისთვის \"%s\" სხვა ტიპი აქვს" -#: commands/tablecmds.c:18256 +#: commands/tablecmds.c:18280 #, c-format msgid "table has extra column \"%s\"" msgstr "ცხრილს აქვს დამატებითი სვეტი \"%s\"" -#: commands/tablecmds.c:18308 +#: commands/tablecmds.c:18332 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\" ტიპიზირებული ცხრილი არაა" -#: commands/tablecmds.c:18488 +#: commands/tablecmds.c:18512 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "არაუნიკალურ ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ" -#: commands/tablecmds.c:18494 +#: commands/tablecmds.c:18518 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "არასაუყოვნებლივ ინდექსს \"%s\" რეპლიკის იდენფიტიკაციისთვის ვერ გამოიყენებთ" -#: commands/tablecmds.c:18500 +#: commands/tablecmds.c:18524 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "გამოსახულების ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ" -#: commands/tablecmds.c:18506 +#: commands/tablecmds.c:18530 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "ნაწილობრივი ინდექსის (\"%s\") რეპლიკის იდენტიფიკატორად გამოყენება შეუძლებელია" -#: commands/tablecmds.c:18523 +#: commands/tablecmds.c:18547 #, c-format msgid "index \"%s\" cannot be used as replica identity because column %d is a system column" msgstr "ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ, რადგან სვეტი %d სისტემური სვეტია" -#: commands/tablecmds.c:18530 +#: commands/tablecmds.c:18554 #, c-format msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable" msgstr "ინდექსს \"%s\" რეპლიკის იდენტიფიკაციისთვის ვერ გამოიყენებთ, რადგან სვეტი %s განულებადია" -#: commands/tablecmds.c:18779 +#: commands/tablecmds.c:18803 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "ცხრილის \"%s\" ჟურნალში ჩაწერის სტატუსის შეცვლა შეუძლებელია, რადგან ის დროებითია" -#: commands/tablecmds.c:18803 +#: commands/tablecmds.c:18827 #, c-format msgid "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "" -#: commands/tablecmds.c:18805 +#: commands/tablecmds.c:18829 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "უჟურნალო ურთიერთობების რეპლიკაცია შეუძლებელია." -#: commands/tablecmds.c:18850 +#: commands/tablecmds.c:18874 #, c-format msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\"" msgstr "" -#: commands/tablecmds.c:18860 +#: commands/tablecmds.c:18884 #, c-format msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\"" msgstr "" -#: commands/tablecmds.c:18924 +#: commands/tablecmds.c:18948 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "მფლობელობაში არსებული მიმდევრობის სხვა სქემაში გადატანა შეუძლებელია" -#: commands/tablecmds.c:19032 +#: commands/tablecmds.c:19056 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "სქემაში (%2$s) ურთიერთობა (%1$s) უკვე არსებობს" -#: commands/tablecmds.c:19457 +#: commands/tablecmds.c:19481 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\" ცხრილი ან მატერიალიზებული ხედი არაა" -#: commands/tablecmds.c:19610 +#: commands/tablecmds.c:19634 #, c-format msgid "\"%s\" is not a composite type" msgstr "ტიპი %s კომპოზიტური არაა" -#: commands/tablecmds.c:19640 +#: commands/tablecmds.c:19664 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "ინდექსის (%s) სქემის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:19642 commands/tablecmds.c:19656 +#: commands/tablecmds.c:19666 commands/tablecmds.c:19680 #, c-format msgid "Change the schema of the table instead." msgstr "ამის მაგიერ ცხრილის სქემა შეცვლათ." -#: commands/tablecmds.c:19646 +#: commands/tablecmds.c:19670 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "კომპოზიტური ტიპის (%s) სქემის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:19654 +#: commands/tablecmds.c:19678 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "\"TOAST\" ცხრილის (%s) სქემის შეცვლა შეუძლებელია" -#: commands/tablecmds.c:19686 +#: commands/tablecmds.c:19710 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "ერთზე მეტ სვეტთან ერთად დაყოფის სტრატეგიას \"list\" ვერ გამოიყენებთ" -#: commands/tablecmds.c:19752 +#: commands/tablecmds.c:19776 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "დანაყოფის გასაღებში დასახელებული სვეტი \"%s\" არ არსებობს" -#: commands/tablecmds.c:19760 +#: commands/tablecmds.c:19784 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "დანაყოფის გასაღებში სისტემური სვეტის (%s) გამოყენება შეუძლებელია" -#: commands/tablecmds.c:19774 commands/tablecmds.c:19867 +#: commands/tablecmds.c:19798 commands/tablecmds.c:19891 #, c-format msgid "cannot use generated column in partition key" msgstr "გენერირებულ სვეტს დანაყოფის გასაღებში ვერ გამოიყენებთ" -#: commands/tablecmds.c:19847 +#: commands/tablecmds.c:19871 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "დანაყოფის გასაღების გამოსახულებები, არ შეიძლება, სისტემურ სვეტზე მითითებებს შეიცავდნენ" -#: commands/tablecmds.c:19897 +#: commands/tablecmds.c:19921 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "ფუნქცია დანაყოფის გასაღების გამოსახულებაში აუცილებლად უნდა იყოს მონიშნული, როგორც IMMUTABLE" -#: commands/tablecmds.c:19906 +#: commands/tablecmds.c:19930 #, c-format msgid "cannot use constant expression as partition key" msgstr "დაყოფის გასაღების გამოსახულებაში მუდმივ გამოსახულებას ვერ გამოიყენებთ" -#: commands/tablecmds.c:19927 +#: commands/tablecmds.c:19951 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "დანაყოფის გამოსახულებისათვის კოლაციის დადგენა შეუძლებელია" -#: commands/tablecmds.c:19962 +#: commands/tablecmds.c:19986 #, 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:19968 +#: commands/tablecmds.c:19992 #, 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:20228 +#: commands/tablecmds.c:20252 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\" უკვე დანაყოფია" -#: commands/tablecmds.c:20234 +#: commands/tablecmds.c:20258 #, c-format msgid "cannot attach a typed table as partition" msgstr "ტიპიზირებული ცხრილის, როგორც დანაყოფის მიბმა შეუძლებელია" -#: commands/tablecmds.c:20250 +#: commands/tablecmds.c:20274 #, c-format msgid "cannot attach inheritance child as partition" msgstr "მემკვიდრეობის შვილის დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20264 +#: commands/tablecmds.c:20288 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "მემკვიდრეობის მშობლის დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20298 +#: commands/tablecmds.c:20322 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "დროებითი ურითერთობის, როგორც მუდმივი ურთიერთობის (\"%s\") დანაყოფის მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20306 +#: commands/tablecmds.c:20330 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "მუდმივი ურთიერთობის, როგორც დროებითი ურთიერთობის (%s) დანაყოფის მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20314 +#: commands/tablecmds.c:20338 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "სხვა სესიის დროებითი ურთიერთობის დანაყოფის მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20321 +#: commands/tablecmds.c:20345 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "სხვა სესიის დროებითი ურთიერთობის დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20341 +#: commands/tablecmds.c:20365 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "ცხრილი \"%s\", რომლის მიმაგრებაც მიმდინარეობს, შეიცავს იდენტიფიკაციის სვეტს \"%s\"" -#: commands/tablecmds.c:20343 +#: commands/tablecmds.c:20367 #, c-format msgid "The new partition may not contain an identity column." msgstr "ახალი დანაყოფი არ შეიძლება, იდენტიფიკატორის სვეტს შეიცავდეს." -#: commands/tablecmds.c:20351 +#: commands/tablecmds.c:20375 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "ცხრილი \"%s\" შეიცავს სვეტს \"%s\", რომელიც მშობელში \"%s\" აღმოჩენილი არაა" -#: commands/tablecmds.c:20354 +#: commands/tablecmds.c:20378 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "ახალი დანაყოფი მხოლოდ მშობელში არსებულ სვეტებს შეიძლება, შეიცავდეს." -#: commands/tablecmds.c:20366 +#: commands/tablecmds.c:20390 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "ტრიგერი \"%s\" ხელს უშლის ცხრილს \"%s\" დანაყოფად გადაიქცეს" -#: commands/tablecmds.c:20368 +#: commands/tablecmds.c:20392 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "დანაყოფებზე იდენტიფიკაციის სვეტები მხარდაჭერილი არაა." -#: commands/tablecmds.c:20550 +#: commands/tablecmds.c:20574 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "გარე ცხრილის \"%s\" დაყოფილი ცხრილის (\"%s\") დანაყოფის სახით მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:20553 +#: commands/tablecmds.c:20577 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "დაყოფილი ცხრილი \"%s\" უნიკალურ ცხრილებს შეიცავს." -#: commands/tablecmds.c:20876 +#: commands/tablecmds.c:20900 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "ნაგულისხმევი დანაყოფის არსებობის შემთხვევაში დანაყოფების ერთდროული მოხსნა შეუძლებელია" -#: commands/tablecmds.c:20985 +#: commands/tablecmds.c:21009 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "დაყოფილი ცხრილი \"%s\" ერთდროულად წაიშალა" -#: commands/tablecmds.c:20991 +#: commands/tablecmds.c:21015 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "დანაყოფი \"%s\" ერთდროულად წაიშალა" -#: commands/tablecmds.c:21622 commands/tablecmds.c:21642 commands/tablecmds.c:21663 commands/tablecmds.c:21682 commands/tablecmds.c:21731 +#: commands/tablecmds.c:21646 commands/tablecmds.c:21666 commands/tablecmds.c:21687 commands/tablecmds.c:21706 commands/tablecmds.c:21755 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "ერთი ინდექსის ინდექსის (%s) მეორე ინდექსის (\"%s) დანაყოფად მიმაგრება შეუძლებელია" -#: commands/tablecmds.c:21625 +#: commands/tablecmds.c:21649 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "ინდექსი %s სხვა ინდექსზეა უკვე მიმაგრებული." -#: commands/tablecmds.c:21645 +#: commands/tablecmds.c:21669 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "ინდექსი %s ცხრილის (%s) არცერთი დანაყოფის ინდექსი არაა." -#: commands/tablecmds.c:21666 +#: commands/tablecmds.c:21690 #, c-format msgid "The index definitions do not match." msgstr "ინდექსის აღწერები არ ემთხვევა." -#: commands/tablecmds.c:21685 +#: commands/tablecmds.c:21709 #, c-format msgid "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint exists for index \"%s\"." msgstr "" -#: commands/tablecmds.c:21734 +#: commands/tablecmds.c:21758 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "ცხრილისთვის %s სხვა ინდექსი უკვე მიმაგრებულია." -#: commands/tablecmds.c:21857 +#: commands/tablecmds.c:21881 #, c-format msgid "invalid primary key definition" msgstr "არასწორი ძირითადი გასაღების აღწერა" -#: commands/tablecmds.c:21858 +#: commands/tablecmds.c:21882 #, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" არაა დანიშნული, როგორც NOT NULL." -#: commands/tablecmds.c:21993 +#: commands/tablecmds.c:22017 #, c-format msgid "column data type %s does not support compression" msgstr "სვეტის მონაცემის ტიპს (%s) შეკუმშვის მხარდაჭერა არ გააჩნია" -#: commands/tablecmds.c:22000 +#: commands/tablecmds.c:22024 #, c-format msgid "invalid compression method \"%s\"" msgstr "შეკუმშვის არასწორი მეთოდი \"%s\"" -#: commands/tablecmds.c:22026 +#: commands/tablecmds.c:22050 #, c-format msgid "invalid storage type \"%s\"" msgstr "საცავის არასწორი ტიპი \"%s\"" -#: commands/tablecmds.c:22036 +#: commands/tablecmds.c:22060 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "სვეტის მონაცემების ტიპს %s საცავის ტიპად მხოლოდ PLAIN შეიძლება, ჰქონდეს" @@ -11912,272 +11917,277 @@ msgstr "ცხრილების სივრცის (%u) საქაღ msgid "You can remove the directories manually if necessary." msgstr "თუ გჭირდებათ, საქაღალდეები შეგიძლიათ ხელითაც წაშალოთ." -#: commands/trigger.c:227 commands/trigger.c:238 +#: commands/trigger.c:228 commands/trigger.c:239 #, c-format msgid "\"%s\" is a table" msgstr "\"%s\" ცხრილია" -#: commands/trigger.c:229 commands/trigger.c:240 +#: commands/trigger.c:230 commands/trigger.c:241 #, c-format msgid "Tables cannot have INSTEAD OF triggers." msgstr "ცხრილებს INSTEAD OF ტიპის ტრიგერები ვერ ექნებათ." -#: commands/trigger.c:261 +#: commands/trigger.c:262 #, c-format msgid "\"%s\" is a partitioned table" msgstr "\"%s\" დაყოფილი ცხრილია" -#: commands/trigger.c:263 +#: commands/trigger.c:264 #, c-format msgid "ROW triggers with transition tables are not supported on partitioned tables." msgstr "დანაყოფებზე იდენტიფიკაციის სვეტები მხარდაჭერილი არაა." -#: commands/trigger.c:275 commands/trigger.c:282 commands/trigger.c:446 +#: commands/trigger.c:276 commands/trigger.c:283 commands/trigger.c:447 #, c-format msgid "\"%s\" is a view" msgstr "\"%s\" ხედია" -#: commands/trigger.c:277 +#: commands/trigger.c:278 #, c-format msgid "Views cannot have row-level BEFORE or AFTER triggers." msgstr "ხედებს მწკრივის დონის BEFORE და AFTER ტრიგერები ვერ ექნებათ." -#: commands/trigger.c:284 +#: commands/trigger.c:285 #, c-format msgid "Views cannot have TRUNCATE triggers." msgstr "ხედებს TRUNCATE ტიპის ტრიგერები ვერ ექნებათ." -#: commands/trigger.c:292 commands/trigger.c:304 commands/trigger.c:439 +#: 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:294 +#: commands/trigger.c:295 #, c-format msgid "Foreign tables cannot have INSTEAD OF triggers." msgstr "გარე ცხრილებს INSTEAD OF ტრიგერები ვერ ექნებათ." -#: commands/trigger.c:306 +#: commands/trigger.c:307 #, c-format msgid "Foreign tables cannot have constraint triggers." msgstr "გარე ცხრილებს შეზღუდვის ტრიგერები ვერ ექნებათ." -#: commands/trigger.c:311 commands/trigger.c:1330 commands/trigger.c:1437 +#: 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:382 +#: commands/trigger.c:383 #, c-format msgid "TRUNCATE FOR EACH ROW triggers are not supported" msgstr "TRUNCATE FOR EACH ROW ტრიგერები მხარდაუჭერელია" -#: commands/trigger.c:390 +#: commands/trigger.c:391 #, c-format msgid "INSTEAD OF triggers must be FOR EACH ROW" msgstr "INSTEAD OF ტრიგერები უნდა იყოს FOR EACH ROW" -#: commands/trigger.c:394 +#: commands/trigger.c:395 #, c-format msgid "INSTEAD OF triggers cannot have WHEN conditions" msgstr "INSTEAD OF ტრიგერებს WHEN პირობები არ შეიძლება ჰქონდეს" -#: commands/trigger.c:398 +#: commands/trigger.c:399 #, c-format msgid "INSTEAD OF triggers cannot have column lists" msgstr "INSTEAD OF ტრიგერებს სვეტების სიები არ შეიძლება ჰქონდეთ" -#: commands/trigger.c:427 +#: commands/trigger.c:428 #, c-format msgid "ROW variable naming in the REFERENCING clause is not supported" msgstr "" -#: commands/trigger.c:428 +#: 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:441 +#: commands/trigger.c:442 #, c-format msgid "Triggers on foreign tables cannot have transition tables." msgstr "გარე ცხრილებზე არსებულ ტრიგერებს გარდამავალი ცხრილები ვერ ექნებათ." -#: commands/trigger.c:448 +#: commands/trigger.c:449 #, c-format msgid "Triggers on views cannot have transition tables." msgstr "ხედებზე არსებულ ტრიგერებს გარდამავალი ცხრილები ვერ ექნებათ." -#: commands/trigger.c:464 +#: commands/trigger.c:465 #, c-format msgid "ROW triggers with transition tables are not supported on partitions" msgstr "ROW ტრიგერები გარდამავალი ცხრილებით დანაყოფებზე მხარდაჭერილი არაა" -#: commands/trigger.c:468 +#: commands/trigger.c:469 #, c-format msgid "ROW triggers with transition tables are not supported on inheritance children" msgstr "ROW ტრიგერები გარდამავალი ცხრილებით მემკვიდრეობის შვილებზე მხარდაჭერილი არაა" -#: commands/trigger.c:474 +#: commands/trigger.c:475 #, c-format msgid "transition table name can only be specified for an AFTER trigger" msgstr "გარდამავალი ცხრილის სახელი მხოლოდ ტრიგერისთვის AFTER შეგიძლიათ, მიუთითოთ" -#: commands/trigger.c:479 +#: commands/trigger.c:480 #, c-format msgid "TRUNCATE triggers with transition tables are not supported" msgstr "ტრიგერები TRUNCATE გარდამავალი ცხრილებით მხარდაჭერილი არაა" -#: commands/trigger.c:496 +#: commands/trigger.c:497 #, c-format msgid "transition tables cannot be specified for triggers with more than one event" msgstr "გარდამავალი ცხრილების მითითება ტრიგერებისთვის, რომლებსაც ერთზე მეტი მოვლენა გააჩნიათ, შეუძლებელია" -#: commands/trigger.c:507 +#: commands/trigger.c:508 #, c-format msgid "transition tables cannot be specified for triggers with column lists" msgstr "გარდამავალი ცხრილების მითითება ტრიგერებისთვის, რომლებსაც სვეტების სიები გააჩნიათ, შეუძლებელია" -#: commands/trigger.c:524 +#: 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:529 +#: commands/trigger.c:530 #, c-format msgid "NEW TABLE cannot be specified multiple times" msgstr "NEW TABLE -ის რამდენჯერმე მითითება აკრძალულია" -#: commands/trigger.c:539 +#: 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:544 +#: commands/trigger.c:545 #, c-format msgid "OLD TABLE cannot be specified multiple times" msgstr "OLD TABLE -ის რამდენჯერმე მითითება აკრძალულია" -#: commands/trigger.c:554 +#: 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:618 commands/trigger.c:631 +#: 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:623 +#: commands/trigger.c:624 #, c-format msgid "INSERT trigger's WHEN condition cannot reference OLD values" msgstr "INSERT-ის ტრიგერის WHEN პირობა არ შეიძლება, OLD მნიშვნელობებზე მიუთითებდეს" -#: commands/trigger.c:636 +#: commands/trigger.c:637 #, c-format msgid "DELETE trigger's WHEN condition cannot reference NEW values" msgstr "DELETE-ის ტრიგერის WHEN პირობა არ შეიძლება, NEW მნიშვნელობებზე მიუთითებდეს" -#: commands/trigger.c:641 +#: commands/trigger.c:642 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns" msgstr "BEFORE-ის ტრიგერის WHEN პირობა არ შეიძლება, NEW სისტემურ სვეტებზე მიუთითებდეს" -#: commands/trigger.c:650 commands/trigger.c:658 +#: commands/trigger.c:651 commands/trigger.c:659 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW generated columns" msgstr "BEFORE-ის ტრიგერის WHEN პირობა არ შეიძლება, NEW გენერირებულ სვეტებზე მიუთითებდეს" -#: commands/trigger.c:651 +#: commands/trigger.c:652 #, c-format msgid "A whole-row reference is used and the table contains generated columns." msgstr "" -#: commands/trigger.c:766 commands/trigger.c:1613 +#: commands/trigger.c:767 commands/trigger.c:1614 #, c-format msgid "trigger \"%s\" for relation \"%s\" already exists" msgstr "ტრიგერი \"%s\" ურთიერთობისთვის \"%s\" უკვე არსებობს" -#: commands/trigger.c:779 +#: 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:798 +#: commands/trigger.c:799 #, c-format msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger" msgstr "ტრიგერი \"%s\" ურთიერთობისთვის \"%s\", შეზღუდვის ტრიგერია" -#: commands/trigger.c:1402 commands/trigger.c:1556 commands/trigger.c:1837 +#: 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:1528 +#: commands/trigger.c:1529 #, c-format msgid "cannot rename trigger \"%s\" on table \"%s\"" msgstr "ტრიგერის (%s) (ცხრილზე %s) სახელის გადარქმევა შეუძლებელია" -#: commands/trigger.c:1530 +#: commands/trigger.c:1531 #, c-format msgid "Rename the trigger on the partitioned table \"%s\" instead." msgstr "ამის მაგიერ დაყოფილ ცხრილზე ('%s\") ტრიგერს გადაარქვით სახელი." -#: commands/trigger.c:1630 +#: commands/trigger.c:1631 #, c-format msgid "renamed trigger \"%s\" on relation \"%s\"" msgstr "ურთიერთობაზე \"%2$s\" ტრიგერს \"%1$s\" სახელი გადაერქვა" -#: commands/trigger.c:1776 +#: commands/trigger.c:1777 #, c-format msgid "permission denied: \"%s\" is a system trigger" msgstr "წვდომა აკრძალულია: %s სისტემური ტრიგერია" -#: commands/trigger.c:2385 +#: commands/trigger.c:2388 #, c-format msgid "trigger function %u returned null value" msgstr "ტრიგერის ფუნქციამ %u ნულოვანი მნიშვნელობა დააბრუნა" -#: commands/trigger.c:2445 commands/trigger.c:2665 commands/trigger.c:2918 commands/trigger.c:3273 +#: 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:2523 +#: 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:2524 +#: 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:3351 executor/nodeModifyTable.c:1686 executor/nodeModifyTable.c:1760 executor/nodeModifyTable.c:2567 executor/nodeModifyTable.c:2657 executor/nodeModifyTable.c:3329 executor/nodeModifyTable.c:3499 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 +#, c-format +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 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "" -#: commands/trigger.c:3392 executor/nodeLockRows.c:228 executor/nodeLockRows.c:237 executor/nodeModifyTable.c:389 executor/nodeModifyTable.c:1702 executor/nodeModifyTable.c:2583 executor/nodeModifyTable.c:2808 +#: 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:3400 executor/nodeModifyTable.c:1792 executor/nodeModifyTable.c:2674 executor/nodeModifyTable.c:2832 executor/nodeModifyTable.c:3347 +#: 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:4635 +#: commands/trigger.c:4687 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "" -#: commands/trigger.c:5816 +#: commands/trigger.c:5868 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "შეზღუდვა გადადებადი არაა %s" -#: commands/trigger.c:5839 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "შეზღუდვა \"%s\" არ არსებობს" @@ -12287,7 +12297,7 @@ msgstr "საბაზისო ტიპის შესაცვლელა msgid "Create the type as a shell type, then create its I/O functions, then do a full CREATE TYPE." msgstr "" -#: commands/typecmds.c:331 commands/typecmds.c:1486 commands/typecmds.c:4471 +#: commands/typecmds.c:331 commands/typecmds.c:1494 commands/typecmds.c:4479 #, c-format msgid "type attribute \"%s\" not recognized" msgstr "ტიპის უცნობი ატრიბუტი: %s" @@ -12307,7 +12317,7 @@ msgstr "%s მასივის ელემენტის ტიპი არ msgid "alignment \"%s\" not recognized" msgstr "სწორება \"%s\" უცნობია" -#: commands/typecmds.c:454 commands/typecmds.c:4345 +#: commands/typecmds.c:454 commands/typecmds.c:4353 #, c-format msgid "storage \"%s\" not recognized" msgstr "საცავი \"%s\" უცნობია" @@ -12342,297 +12352,302 @@ msgstr "%s დომენისთვის სწორ ბაზისურ msgid "multiple default expressions" msgstr "ერთზე მეტი ნაგულისხმევი გამოსახულება" -#: commands/typecmds.c:945 commands/typecmds.c:960 +#: commands/typecmds.c:947 commands/typecmds.c:968 #, c-format msgid "conflicting NULL/NOT NULL constraints" msgstr "კონფლიქტური NULL/NOT NULL შეზღუდვები" -#: commands/typecmds.c:950 +#: commands/typecmds.c:952 +#, c-format +msgid "redundant NOT NULL constraint definition" +msgstr "" + +#: commands/typecmds.c:958 #, c-format msgid "not-null constraints for domains cannot be marked NO INHERIT" msgstr "არანულოვანი შეზღუდვები დომენებისთვის არ შეიძლება, NO INHERIT-ით მონიშნოთ" -#: commands/typecmds.c:977 +#: commands/typecmds.c:985 #, c-format msgid "check constraints for domains cannot be marked NO INHERIT" msgstr "დომენის შემოწმების შეზღუდვების, როგორც NO INHERIT, მონიშვნა შეუძლებელია" -#: commands/typecmds.c:988 +#: commands/typecmds.c:996 #, c-format msgid "unique constraints not possible for domains" msgstr "უნიკალური შეზღუდვები დომენებისთვის შეუძლებელია" -#: commands/typecmds.c:995 +#: commands/typecmds.c:1003 #, c-format msgid "primary key constraints not possible for domains" msgstr "ძირითადი გასაღების შეზღუდვა დომენებისთვის შეუძლებელია" -#: commands/typecmds.c:1002 +#: commands/typecmds.c:1010 #, c-format msgid "exclusion constraints not possible for domains" msgstr "გაშვების შეზღუდვა დომენებისთვის შეუძლებელია" -#: commands/typecmds.c:1009 +#: commands/typecmds.c:1017 #, c-format msgid "foreign key constraints not possible for domains" msgstr "გარე გასაღების შეზღუდვა დომენებისთვის შეუძლებელია" -#: commands/typecmds.c:1019 +#: commands/typecmds.c:1027 #, c-format msgid "specifying constraint deferrability not supported for domains" msgstr "" -#: commands/typecmds.c:1027 +#: commands/typecmds.c:1035 #, c-format msgid "specifying GENERATED not supported for domains" msgstr "დომენებისთვის GENERATED-ის მითითება მხარდაჭერილი არაა" -#: commands/typecmds.c:1035 +#: commands/typecmds.c:1043 #, c-format msgid "specifying constraint enforceability not supported for domains" msgstr "შეზღუდვის ნაძალადევობის მითითება დომენებისთვის მხარდაჭერილი არაა" -#: commands/typecmds.c:1353 utils/cache/typcache.c:2757 +#: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format msgid "%s is not an enum" msgstr "%s ჩამონათვალი არაა" -#: commands/typecmds.c:1494 +#: commands/typecmds.c:1502 #, c-format msgid "type attribute \"subtype\" is required" msgstr "ტიპის ატრიბუტი \"subtype\" აუცილებელია" -#: commands/typecmds.c:1499 +#: commands/typecmds.c:1507 #, c-format msgid "range subtype cannot be %s" msgstr "%s დიაპაზონის ქვეტიპი ვერ იქნება" -#: commands/typecmds.c:1518 +#: commands/typecmds.c:1526 #, c-format msgid "range collation specified but subtype does not support collation" msgstr "" -#: commands/typecmds.c:1528 +#: commands/typecmds.c:1536 #, c-format msgid "cannot specify a canonical function without a pre-created shell type" msgstr "" -#: commands/typecmds.c:1529 +#: 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 "" -#: commands/typecmds.c:2005 +#: commands/typecmds.c:2013 #, c-format msgid "type input function %s has multiple matches" msgstr "ტიპის შეყვანის ფუნქციის (%s) რამდენიმე ასლი არსებობს" -#: commands/typecmds.c:2023 +#: commands/typecmds.c:2031 #, c-format msgid "type input function %s must return type %s" msgstr "ტიპის შეყვანის ფუნქციამ (\"%s\") უნდა დააბრუნოს ტიპი \"%s\"" -#: commands/typecmds.c:2039 +#: commands/typecmds.c:2047 #, c-format msgid "type input function %s should not be volatile" msgstr "ტიპის შეყვანის ფუნქცია (%s) ცვალებადი არ უნდა იყოს" -#: commands/typecmds.c:2067 +#: commands/typecmds.c:2075 #, c-format msgid "type output function %s must return type %s" msgstr "ტიპის გამოტანის ფუნქციამ (%s) უნდა დააბრუნოს ტიპი \"%s\"" -#: commands/typecmds.c:2074 +#: commands/typecmds.c:2082 #, c-format msgid "type output function %s should not be volatile" msgstr "ტიპის გამოტანის ფუნქცია (%s) ცვალებადი არ უნდა იყოს" -#: commands/typecmds.c:2103 +#: commands/typecmds.c:2111 #, c-format msgid "type receive function %s has multiple matches" msgstr "ტიპის მიღების ფუქნციის (%s) რამდენიმე ასლი არსებობს" -#: commands/typecmds.c:2121 +#: commands/typecmds.c:2129 #, c-format msgid "type receive function %s must return type %s" msgstr "ტიპის მიღების ფუნქციამ (%s) უნდა დააბრუნოს ტიპი %s" -#: commands/typecmds.c:2128 +#: commands/typecmds.c:2136 #, c-format msgid "type receive function %s should not be volatile" msgstr "ტიპის მიღების ფუნქცია (%s) ცვალებადი არ უნდა იყოს" -#: commands/typecmds.c:2156 +#: commands/typecmds.c:2164 #, c-format msgid "type send function %s must return type %s" msgstr "ტიპის გაგზავნის ფუნქციამ (%s) უნდა დააბრუნოს ტიპი \"%s\"" -#: commands/typecmds.c:2163 +#: commands/typecmds.c:2171 #, c-format msgid "type send function %s should not be volatile" msgstr "ტიპის გაგზავნის ფუნქცია (%s) ცვალებადი არ უნდა იყოს" -#: commands/typecmds.c:2190 +#: commands/typecmds.c:2198 #, c-format msgid "typmod_in function %s must return type %s" msgstr "typmod_in ფუნქციამ (%s) უნდა დააბრუნოს ტიპი %s" -#: commands/typecmds.c:2197 +#: commands/typecmds.c:2205 #, c-format msgid "type modifier input function %s should not be volatile" msgstr "ტიპის მოდიფიკატორის შეყვანის ფუნქცია (%s) ცვალებადი არ უნდა იყოს" -#: commands/typecmds.c:2224 +#: commands/typecmds.c:2232 #, c-format msgid "typmod_out function %s must return type %s" msgstr "typmod_out ფუნქციამ (%s) უნდა დააბრუნოს ტიპი %s" -#: commands/typecmds.c:2231 +#: commands/typecmds.c:2239 #, c-format msgid "type modifier output function %s should not be volatile" msgstr "ტიპის მოდიფიკატორის გამოტანის ფუნქცია (%s) ცვალებადი არ უნდა იყოს" -#: commands/typecmds.c:2258 +#: commands/typecmds.c:2266 #, c-format msgid "type analyze function %s must return type %s" msgstr "ტიპის ანალიზის ფუნქციამ (%s) უნდა დააბრუნოს ტიპი %s" -#: commands/typecmds.c:2287 +#: commands/typecmds.c:2295 #, c-format msgid "type subscripting function %s must return type %s" msgstr "" -#: commands/typecmds.c:2297 +#: commands/typecmds.c:2305 #, c-format msgid "user-defined types cannot use subscripting function %s" msgstr "მომხმარებლის აღწერილ ტიპებს არ შეუძლიათ, გამოიყენონ გამოწერის ფუნქცია %s" -#: commands/typecmds.c:2343 +#: 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:2374 +#: commands/typecmds.c:2382 #, c-format msgid "range canonical function %s must return range type" msgstr "კანონიკური დიაპაზონის ფუნქციამ (%s) დიაპაზონის ტიპი უნდა დააბრუნოს" -#: commands/typecmds.c:2380 +#: commands/typecmds.c:2388 #, c-format msgid "range canonical function %s must be immutable" msgstr "კანონიკური დიაპაზონის ფუნქცია (%s) მუდმივი უნდა იყოს" -#: commands/typecmds.c:2416 +#: commands/typecmds.c:2424 #, c-format msgid "range subtype diff function %s must return type %s" msgstr "დიაპაზონის ქვეტიპის განსხვავების ფუნქციამ (%s) უნდა დააბრუნოს ტიპი: %s" -#: commands/typecmds.c:2423 +#: commands/typecmds.c:2431 #, c-format msgid "range subtype diff function %s must be immutable" msgstr "დიაპაზონის ქვეტიპის განსხვავების ფუნქცია (%s) უცვლელი უნდა იყოს" -#: commands/typecmds.c:2450 +#: commands/typecmds.c:2458 #, c-format msgid "pg_type array OID value not set when in binary upgrade mode" msgstr "ბინარული განახლების რეჟიმში pg_type-ის მასივის OID-ის მნიშვნელობა დაყენებული არაა" -#: commands/typecmds.c:2483 +#: commands/typecmds.c:2491 #, c-format msgid "pg_type multirange OID value not set when in binary upgrade mode" msgstr "ბინარული განახლების რეჟიმში pg_type-ის მრავალდიაპაზონიანი OID-ის მნიშვნელობა დაყენებული არაა" -#: commands/typecmds.c:2516 +#: commands/typecmds.c:2524 #, c-format msgid "pg_type multirange array OID value not set when in binary upgrade mode" msgstr "ბინარული განახლების რეჟიმში pg_type-ის მრავალდიაპაზონიანი მასივის OID-ის მნიშვნელობა დაყენებული არაა" -#: commands/typecmds.c:2898 commands/typecmds.c:3080 +#: commands/typecmds.c:2906 commands/typecmds.c:3088 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist" msgstr "დომენის (\"%2$s\") შეზღუდვა (\"%1$s\") არ არსებობს" -#: commands/typecmds.c:2902 +#: commands/typecmds.c:2910 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping" msgstr "დომენის (\"%2$s\") შეზღუდვა (\"%1$s\") არ არსებობს. გამოტოვება" -#: commands/typecmds.c:3087 +#: commands/typecmds.c:3095 #, c-format msgid "constraint \"%s\" of domain \"%s\" is not a check constraint" msgstr "დომენის (\"%2$s\") შეზღუდვა (\"%1$s\") შეზღუდვის შემოწმება არაა" -#: commands/typecmds.c:3167 +#: commands/typecmds.c:3175 #, c-format msgid "column \"%s\" of table \"%s\" contains null values" msgstr "სვეტი \"%s\" (ცხრილში %s) ნულოვან მნიშვნელობებს შეიცავს" -#: commands/typecmds.c:3256 +#: 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:3485 commands/typecmds.c:3763 commands/typecmds.c:3848 commands/typecmds.c:4064 +#: 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:3519 commands/typecmds.c:3675 +#: commands/typecmds.c:3527 commands/typecmds.c:3683 #, c-format msgid "constraint \"%s\" for domain \"%s\" already exists" msgstr "შეზღუდვა \"%s\" დომენისთვის %s უკვე არსებობს" -#: commands/typecmds.c:3570 +#: commands/typecmds.c:3578 #, c-format msgid "cannot use table references in domain check constraint" msgstr "" -#: commands/typecmds.c:3775 commands/typecmds.c:3860 commands/typecmds.c:4214 +#: 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:3785 commands/typecmds.c:3870 commands/typecmds.c:4112 +#: 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:3787 commands/typecmds.c:3872 commands/typecmds.c:4114 +#: 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:3883 +#: commands/typecmds.c:3891 #, c-format msgid "cannot alter multirange type %s" msgstr "მრავალშუალედანი ტიპის %s შეცვლა შეუძლებელია" -#: commands/typecmds.c:3886 +#: 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:4193 +#: commands/typecmds.c:4201 #, c-format msgid "type \"%s\" already exists in schema \"%s\"" msgstr "ტიპი \"%s\" სქემაში \"%s\" უკვე არსებობს" -#: commands/typecmds.c:4373 +#: commands/typecmds.c:4381 #, c-format msgid "cannot change type's storage to PLAIN" msgstr "ტიპის საცავს PLAIN-ზე ვერ შეცვლით" -#: commands/typecmds.c:4466 +#: commands/typecmds.c:4474 #, c-format msgid "type attribute \"%s\" cannot be changed" msgstr "ტიპის ატრიბუტის შეცვლა შეუძლებელია: %s" -#: commands/typecmds.c:4484 +#: commands/typecmds.c:4492 #, c-format msgid "must be superuser to alter a type" msgstr "ტიპის შესაცვლელად ზემომხმარებლის უფლებებია საჭირო" -#: commands/typecmds.c:4505 commands/typecmds.c:4514 +#: commands/typecmds.c:4513 commands/typecmds.c:4522 #, c-format msgid "%s is not a base type" msgstr "%s საბაზისო ტიპი არაა" @@ -12657,7 +12672,7 @@ msgstr "როლების შექმნა მხოლოდ %s ატრ 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:17467 gram.y:17513 utils/adt/acl.c:5690 utils/adt/acl.c:5696 +#: 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 #, c-format msgid "role name \"%s\" is reserved" msgstr "როლის სახელი \"%s\" დაცულია" @@ -12746,7 +12761,7 @@ msgstr "როლების წაშლა მხოლოდ სამიზ msgid "cannot use special role specifier in DROP ROLE" msgstr "სპეციალური როლის მიმთითებლის გამოყენება DROP ROLE-ში შეუძლებელია" -#: 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:366 utils/adt/acl.c:386 utils/adt/acl.c:5545 utils/adt/acl.c:5593 utils/adt/acl.c:5621 utils/adt/acl.c:5640 utils/adt/regproc.c:1571 utils/init/miscinit.c:804 +#: 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\"" @@ -12936,12 +12951,12 @@ msgstr "როლის (\"%s\") მიერ მინიჭებული პ 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:1325 +#: commands/user.c:2504 utils/adt/acl.c:1342 #, c-format msgid "dependent privileges exist" msgstr "დამოკიდებული პრივილეგიები არსებობს" -#: commands/user.c:2505 utils/adt/acl.c:1326 +#: commands/user.c:2505 utils/adt/acl.c:1343 #, c-format msgid "Use CASCADE to revoke them too." msgstr "მათ გასაუქმებლადაც CASCADE გამოიყენეთ." @@ -13330,7 +13345,7 @@ msgstr "პარამეტრის %d (%s) ტიპი არ ემთხ msgid "no value found for parameter %d" msgstr "პარამეტრისთვის მნიშვნელობების პოვნა შეუძლებელია: %d" -#: executor/execExpr.c:667 executor/execExpr.c:674 executor/execExpr.c:680 executor/execExprInterp.c:5440 executor/execExprInterp.c:5457 executor/execExprInterp.c:5556 executor/nodeModifyTable.c:211 executor/nodeModifyTable.c:230 executor/nodeModifyTable.c:247 executor/nodeModifyTable.c:257 executor/nodeModifyTable.c:267 +#: 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 "" @@ -13345,7 +13360,7 @@ msgstr "მოთხოვნას მეტისმეტად ბევრ msgid "Query provides a value for a dropped column at ordinal position %d." msgstr "" -#: executor/execExpr.c:681 executor/execExprInterp.c:5458 executor/nodeModifyTable.c:258 +#: 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 "" @@ -13469,14 +13484,14 @@ msgstr "მითითებულ ბილიკზე SQL/JSON ელემ msgid "could not coerce %s expression (%s) to the RETURNING type" msgstr "ვერ შევაკავე %s გამოსახულება (%s) ტპზე RETURNING" -#: executor/execExprInterp.c:5441 +#: 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." msgstr[0] "ცხრილის მწკრივი %d ატრიბუტს შეიცავს, მოთხოვნა კი %d-ს მოელოდა." msgstr[1] "ცხრილის მწკრივი %d ატრიბუტს შეიცავს, მოთხოვნა კი %d-ს მოელოდა." -#: executor/execExprInterp.c:5557 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 "" @@ -13521,137 +13536,137 @@ msgstr "გასაღები აქტიურ გასაღებთა msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "" -#: executor/execMain.c:1067 +#: executor/execMain.c:1066 #, c-format msgid "cannot change sequence \"%s\"" msgstr "მიმდევრობის შეცვლა შეუძლებელია: \"%s\"" -#: executor/execMain.c:1073 +#: executor/execMain.c:1072 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "'TOAST' ტიპის ურთიერთობის \"%s\" შეცვლა შეუძლებელია" -#: executor/execMain.c:1092 +#: executor/execMain.c:1091 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "მატერიალიზებული ხედის შეცვლა შეუძლებელია: %s" -#: executor/execMain.c:1104 +#: executor/execMain.c:1103 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "გარე ცხრილში ჩამატების შეცდომა: %s" -#: executor/execMain.c:1110 +#: executor/execMain.c:1109 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "გარე ცხრილი ჩამატების საშუალებას არ იძლევა: %s" -#: executor/execMain.c:1117 +#: executor/execMain.c:1116 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "გარე ცხრილის განახლების შეცდომა: %s" -#: executor/execMain.c:1123 +#: executor/execMain.c:1122 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "გარე ცხრილი განახლებების საშუალებას არ იძლევა: %s" -#: executor/execMain.c:1130 +#: executor/execMain.c:1129 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "გარე ცხრილიდან წაშლის შეცდომა: %s" -#: executor/execMain.c:1136 +#: executor/execMain.c:1135 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "გარე ცხრილი წაშლის საშუალებას არ იძლევა: %s" -#: executor/execMain.c:1147 +#: executor/execMain.c:1146 #, c-format msgid "cannot change relation \"%s\"" msgstr "ურთიერთობის შეცვლის შეცდომა: %s" -#: executor/execMain.c:1174 +#: executor/execMain.c:1173 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "მიმდევრობაში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1181 +#: executor/execMain.c:1180 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "\"TOAST\" ურთიერთობაში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1188 +#: executor/execMain.c:1187 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "ხედში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1196 +#: executor/execMain.c:1195 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "მატერიალიზებულ ხედში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1205 executor/execMain.c:2837 executor/nodeLockRows.c:135 +#: executor/execMain.c:1204 executor/execMain.c:2836 executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "გარე ცხრილში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1211 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "ურთიერთობაში მწკრივების ჩაკეტვა შეუძლებელია: %s" -#: executor/execMain.c:1934 +#: executor/execMain.c:1933 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "ახალი მწკრივი ურთიერთობისთვის \"%s\" დანაყოფის შეზღუდვას არღვევს" -#: executor/execMain.c:1936 executor/execMain.c:2048 executor/execMain.c:2186 executor/execMain.c:2294 +#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 executor/execMain.c:2293 #, c-format msgid "Failing row contains %s." msgstr "შეცდომიანი მწკრივი \"%s\"-ს შეიცავს." -#: executor/execMain.c:2046 +#: executor/execMain.c:2045 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "ახალი მწკრივი ურთიერთობისთვის \"%s\" არღვევს შემოწმების შეზღუდვას \"%s\"" -#: executor/execMain.c:2183 +#: executor/execMain.c:2182 #, c-format msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "ნულოვანი მნიშვნელობა სვეტში \"%s\" ურთიერთობისთვის \"%s\" არანულოვან შეზღუდვას არღვევს" -#: executor/execMain.c:2292 +#: executor/execMain.c:2291 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "ახალი მწკრივი არღვევს შემოწმების პარამეტრს ხედისთვის \"%s\"" -#: executor/execMain.c:2302 +#: executor/execMain.c:2301 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "ახალი მწკრივი არღვევს მწკრივის-დონის უსაფრთხოების პოლიტიკას \"%s\" ცხრილისთვის \"%s\"" -#: executor/execMain.c:2307 +#: executor/execMain.c:2306 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "ახალი მწკრივი ცხრილისთვის \"%s\" მწკრივის-დონის უსაფრთხოების პოლიტიკა არღვევს" -#: executor/execMain.c:2315 +#: executor/execMain.c:2314 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "" -#: executor/execMain.c:2320 +#: executor/execMain.c:2319 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "" -#: executor/execMain.c:2327 +#: executor/execMain.c:2326 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "" -#: executor/execMain.c:2332 +#: executor/execMain.c:2331 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "" @@ -13930,58 +13945,58 @@ msgstr "" msgid "Query has too few columns." msgstr "მოთხოვნას ძალიან ცოტა სვეტი აქვს." -#: executor/nodeModifyTable.c:1685 executor/nodeModifyTable.c:1759 +#: 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:1958 +#: executor/nodeModifyTable.c:1959 #, c-format msgid "invalid ON UPDATE specification" msgstr "\"ON UPDATE\"-ის არასწორი სპეციფიკაცია" -#: executor/nodeModifyTable.c:1959 +#: executor/nodeModifyTable.c:1960 #, c-format msgid "The result tuple would appear in a different partition than the original tuple." msgstr "" -#: executor/nodeModifyTable.c:2415 +#: 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:2416 +#: executor/nodeModifyTable.c:2418 #, c-format msgid "A foreign key points to ancestor \"%s\" but not the root ancestor \"%s\"." msgstr "" -#: executor/nodeModifyTable.c:2419 +#: 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:2786 executor/nodeModifyTable.c:3335 executor/nodeModifyTable.c:3505 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3507 #, c-format msgid "%s command cannot affect row a second time" msgstr "ბრძანებას %s მწკრივის მეორედ შეცვლა არ შეუძლია" -#: executor/nodeModifyTable.c:2788 +#: 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:3328 executor/nodeModifyTable.c:3498 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3500 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "გასაახლებელი ან წასაშლელ კორტეჟი მიმდინარე ბრძანების მიერ დატრიგერებულმა ოპერაციამ უკვე შეცვალა" -#: executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3507 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3509 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "" -#: executor/nodeModifyTable.c:3406 +#: executor/nodeModifyTable.c:3408 #, c-format msgid "tuple to be merged was already moved to another partition due to concurrent update" msgstr "შესარწყმელი კორტეჟები პარალელური განახლების გამო უკვე სხვა დანაყოფშია გადატანილი" @@ -14143,7 +14158,7 @@ msgstr "გაზიარებული-მეხსიერების მ msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "\"%s\"-სთვის მომხმარებლის ასახვა ვერ ვიპოვე. სერვერი \"%s\"" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7271 optimizer/util/plancat.c:538 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 optimizer/util/plancat.c:538 #, c-format msgid "access to non-system foreign table is restricted" msgstr "" @@ -14193,365 +14208,370 @@ msgstr "დროის სარტყლის ინტერვალი HOU msgid "column number must be in range from 1 to %d" msgstr "სვეტის ნომერი უნდა იყოს 1-დან %d-მდე" -#: gram.y:3119 +#: 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:3158 +#: gram.y:3164 #, c-format msgid "modulus for hash partition provided more than once" msgstr "ჰეშ-დანაყოფის მოდული ერთზე მეტჯერაა მითითებული" -#: gram.y:3167 +#: gram.y:3173 #, c-format msgid "remainder for hash partition provided more than once" msgstr "დარჩენილი ნაწილი ჰეშ-დანაყოფისთვის ერთზე მეტჯერაა მითითებული" -#: gram.y:3174 +#: gram.y:3180 #, c-format msgid "unrecognized hash partition bound specification \"%s\"" msgstr "" -#: gram.y:3182 +#: gram.y:3188 #, c-format msgid "modulus for hash partition must be specified" msgstr "საჭიროა ჰეშ დანაყოფის მოდულის მითითება" -#: gram.y:3187 +#: gram.y:3193 #, c-format msgid "remainder for hash partition must be specified" msgstr "საჭიროა ჰეშ დანაყოფის ნაშთის მითითება" -#: gram.y:3396 gram.y:3430 +#: gram.y:3402 gram.y:3436 #, c-format msgid "STDIN/STDOUT not allowed with PROGRAM" msgstr "STDIN/STDOUT-ი PROGRAM-თან ერთად დაშვებული არაა" -#: gram.y:3402 +#: gram.y:3408 #, c-format msgid "WHERE clause not allowed with COPY TO" msgstr "პირობა 'WHERE' 'COPY TO'-სთან ერთად დაშვებული არაა" -#: gram.y:3750 gram.y:3757 gram.y:13162 gram.y:13170 +#: 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:4039 +#: gram.y:4045 #, c-format msgid "for a generated column, GENERATED ALWAYS must be specified" msgstr "გენერირებული სვეტისთვის GENERATED ALWAYS-ის მითითება აუცილებელია" -#: gram.y:4448 utils/adt/ri_triggers.c:2259 +#: gram.y:4454 utils/adt/ri_triggers.c:2259 #, c-format msgid "MATCH PARTIAL not yet implemented" msgstr "MATCH PARTIAL ჯერ განხორციელებული არაა" -#: gram.y:4540 +#: gram.y:4546 #, c-format msgid "a column list with %s is only supported for ON DELETE actions" msgstr "" -#: gram.y:5259 +#: gram.y:5265 #, c-format msgid "CREATE EXTENSION ... FROM is no longer supported" msgstr "CREATE EXTENSION ... FROM უკვე მხარდაუჭერელია" -#: gram.y:5957 +#: gram.y:5963 #, c-format msgid "unrecognized row security option \"%s\"" msgstr "მწკრივის უსაფრთხოების უცნობი პარამეტრი:\"%s\"" -#: gram.y:5958 +#: gram.y:5964 #, c-format msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently." msgstr "" -#: gram.y:6043 +#: gram.y:6049 #, c-format msgid "CREATE OR REPLACE CONSTRAINT TRIGGER is not supported" msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER მხარდაუჭერელია" -#: gram.y:6081 +#: gram.y:6087 msgid "duplicate trigger events specified" msgstr "მითითებულია ტრიგერი მეორდება" -#: gram.y:6223 parser/parse_utilcmd.c:3947 parser/parse_utilcmd.c:3973 +#: gram.y:6229 parser/parse_utilcmd.c:3947 parser/parse_utilcmd.c:3973 #, c-format msgid "constraint declared INITIALLY DEFERRED must be DEFERRABLE" msgstr "შეზღუდვა, რომელიც აღწერილია, როგორც 'INITIALLY DEFERRED' DEFERRABLE ტიპის უნდა იყოს" -#: gram.y:6231 +#: gram.y:6237 #, c-format msgid "conflicting constraint properties" msgstr "ერთმანეთთან შეუთავსებელი შეზღუდვის თვისებები" -#: gram.y:6332 +#: gram.y:6338 #, c-format msgid "CREATE ASSERTION is not yet implemented" msgstr "CREATE ASSERTION ჯერ განუხორცელებია" -#: gram.y:6650 +#: gram.y:6656 #, c-format msgid "dropping an enum value is not implemented" msgstr "ჩამონათვლის მნიშვნელობის მოცილება განხორციელებული არაა" -#: gram.y:8630 +#: gram.y:8636 #, c-format msgid "aggregates cannot have output arguments" msgstr "აგრეგატებს გამოტანის არგუმენტები ვერ ექნება" -#: gram.y:9094 utils/adt/regproc.c:670 +#: gram.y:9100 utils/adt/regproc.c:670 #, c-format msgid "missing argument" msgstr "ნაკლული არგუმენტი" -#: gram.y:9095 utils/adt/regproc.c:671 +#: gram.y:9101 utils/adt/regproc.c:671 #, c-format msgid "Use NONE to denote the missing argument of a unary operator." msgstr "" -#: gram.y:11323 gram.y:11342 +#: gram.y:11329 gram.y:11348 #, c-format msgid "WITH CHECK OPTION not supported on recursive views" msgstr "WITH CHECK OPTION რეკურსიულ ხედებზე მხარდაუჭერელია" -#: gram.y:13309 +#: gram.y:13315 #, c-format msgid "LIMIT #,# syntax is not supported" msgstr "LIMIT #,# სინტაქსი მხარდაჭერილი არაა" -#: gram.y:13310 +#: gram.y:13316 #, c-format msgid "Use separate LIMIT and OFFSET clauses." msgstr "გამოიყენეთ განცალკევებული LIMIT და OFFSET პირობები." -#: gram.y:14197 +#: gram.y:14203 #, c-format msgid "only one DEFAULT value is allowed" msgstr "დასაშვებია DEFAULT_ის მხოლოდ ერთი მნიშვნელობა" -#: gram.y:14206 +#: gram.y:14212 #, c-format msgid "only one PATH value per column is allowed" msgstr "ყოველ სვეტზე PATH-ის მხოლოდ ერთი მნიშვნელობაა დასაშვები" -#: gram.y:14215 +#: gram.y:14221 #, c-format msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\"" msgstr "" -#: gram.y:14224 +#: gram.y:14230 #, c-format msgid "unrecognized column option \"%s\"" msgstr "სვეტის უცნობი პარამეტრი %s" -#: gram.y:14257 +#: gram.y:14263 #, c-format msgid "option name \"%s\" cannot be used in XMLTABLE" msgstr "პარამეტრის სახელს \"%s\" ვერ გამოიყენებთ XMLTABLE-ში" -#: gram.y:14313 +#: gram.y:14319 #, c-format msgid "only string constants are supported in JSON_TABLE path specification" msgstr "" -#: gram.y:14635 +#: gram.y:14641 #, c-format msgid "precision for type float must be at least 1 bit" msgstr "წილადი რიცხვების სიზუსტე 1 ბიტი მაინც უნდა იყოს" -#: gram.y:14644 +#: gram.y:14650 #, c-format msgid "precision for type float must be less than 54 bits" msgstr "წილადი რიცხვების სიზუსტე 54 ბიტზე მეტი ვერ იქნება" -#: gram.y:15161 +#: gram.y:15167 #, c-format msgid "wrong number of parameters on left side of OVERLAPS expression" msgstr "" -#: gram.y:15166 +#: gram.y:15172 #, c-format msgid "wrong number of parameters on right side of OVERLAPS expression" msgstr "" -#: gram.y:15344 +#: gram.y:15350 #, c-format msgid "UNIQUE predicate is not yet implemented" msgstr "პრედიკატი UNIQUE ჯერ განხორციელებული არაა" -#: gram.y:15758 +#: gram.y:15764 #, c-format msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP" msgstr "'WITHIN GROUP'-თან ერთად ერთზე მეტი ORDER BY პირობის გამოყენება შეუძლებელია" -#: gram.y:15763 +#: gram.y:15769 #, c-format msgid "cannot use DISTINCT with WITHIN GROUP" msgstr "\"DISTINCT\"-ს \"WITHIN GROUP\"-თან ერთად ვერ გამოიყენებთ" -#: gram.y:15768 +#: gram.y:15774 #, c-format msgid "cannot use VARIADIC with WITHIN GROUP" msgstr "\"VARIADIC\"-ს \"WITHIN GROUP\"-თან ერთად ვერ გამოიყენებთ" -#: gram.y:16495 gram.y:16519 +#: gram.y:16501 gram.y:16525 #, c-format msgid "frame start cannot be UNBOUNDED FOLLOWING" msgstr "ჩარჩოს დასაწყისი UNBOUNDED FOLLOWING ვერ იქნება" -#: gram.y:16500 +#: gram.y:16506 #, c-format msgid "frame starting from following row cannot end with current row" msgstr "ჩარჩო, რომელიც შემდეგი მწკრივიდან იწყება, მიმდინარე მწკრივზე ვერ დასრულდება" -#: gram.y:16524 +#: gram.y:16530 #, c-format msgid "frame end cannot be UNBOUNDED PRECEDING" msgstr "ჩარჩოს დასასრული UNBOUNDED PRECEDING ვერ იქნება" -#: gram.y:16530 +#: gram.y:16536 #, c-format msgid "frame starting from current row cannot have preceding rows" msgstr "ჩარჩოს, რომელიც მიმდინარე მწკრივიდან იწყება, წინა ჩარჩოები ვერ ექნება" -#: gram.y:16537 +#: gram.y:16543 #, c-format msgid "frame starting from following row cannot have preceding rows" msgstr "ჩარჩოს, რომელიც შემდეგი მწკრივიდან იწყება, წინა ჩარჩოები ვერ ექნება" -#: gram.y:17075 +#: gram.y:17081 #, c-format msgid "unrecognized JSON encoding: %s" msgstr "უცნობი JSON კოდირება \"%s\"" -#: gram.y:17400 +#: gram.y:17406 #, c-format msgid "type modifier cannot have parameter name" msgstr "ტიპის მოდიფიკატორს პარამეტრის სახელი ვერ ექნება" -#: gram.y:17406 +#: gram.y:17412 #, c-format msgid "type modifier cannot have ORDER BY" msgstr "ტიპის მოდიფიკატორს ORDER BY ვერ ექნება" -#: gram.y:17474 gram.y:17481 gram.y:17488 +#: 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:17578 gram.y:19068 +#: 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:18761 gram.y:18936 +#: gram.y:18767 gram.y:18942 msgid "improper use of \"*\"" msgstr "\"*\"-ის არასათანადო გამოყენება" -#: gram.y:18899 gram.y:18916 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 tsearch/spell.c:965 tsearch/spell.c:982 tsearch/spell.c:999 tsearch/spell.c:1016 tsearch/spell.c:1082 #, c-format msgid "syntax error" msgstr "სინტაქსის შეცდომა" -#: gram.y:19000 +#: 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 "" -#: gram.y:19037 +#: gram.y:19043 #, c-format msgid "multiple ORDER BY clauses not allowed" msgstr "\"ORDER BY\"-ის გამოყენება მხოლოდ ერთხელ შეგიძლიათ" -#: gram.y:19048 +#: gram.y:19054 #, c-format msgid "multiple OFFSET clauses not allowed" msgstr "\"OFFSET\"-ის გამოყენება მხოლოდ ერთხელ შეგიძლიათ" -#: gram.y:19057 +#: gram.y:19063 #, c-format msgid "multiple LIMIT clauses not allowed" msgstr "\"LIMIT\"-ის გამოყენება მხოლოდ ერთხელ შეგიძლიათ" -#: gram.y:19093 +#: gram.y:19099 #, c-format msgid "multiple WITH clauses not allowed" msgstr "\"WITH\"-ის გამოყენება მხოლოდ ერთხელ შეგიძლიათ" -#: gram.y:19289 +#: gram.y:19295 #, c-format msgid "OUT and INOUT arguments aren't allowed in TABLE functions" msgstr "" -#: gram.y:19423 +#: gram.y:19429 #, c-format msgid "multiple COLLATE clauses not allowed" msgstr "\"COLLATE\"-ის გამოყენება მხოლოდ ერთხელ შეგიძლიათ" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19463 gram.y:19476 +#: gram.y:19469 gram.y:19482 #, c-format msgid "%s constraints cannot be marked DEFERRABLE" msgstr "%s -ის შეზღუდვებიs, როგორც DEFERRABLE, მონიშვნა შეუძლებელია" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19489 +#: gram.y:19495 #, c-format msgid "%s constraints cannot be marked NOT VALID" msgstr "%s -ის შეზღუდვებიs, როგორც NOT VALID, მონიშვნა შეუძლებელია" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19502 +#: gram.y:19508 #, c-format msgid "%s constraints cannot be marked NO INHERIT" msgstr "%s -ის შეზღუდვებიs, როგორც NO INHERIT, მონიშვნა შეუძლებელია" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19515 +#: 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:19537 +#: gram.y:19543 #, c-format msgid "%s constraints cannot be marked ENFORCED" msgstr "%s -ის შეზღუდვებიs, როგორც ENFORCED, მონიშვნა შეუძლებელია" -#: gram.y:19559 +#: gram.y:19565 #, c-format msgid "unrecognized partitioning strategy \"%s\"" msgstr "დაყოფის უცნობი სტრატეგია: %s" -#: gram.y:19583 +#: gram.y:19589 #, c-format msgid "invalid publication object list" msgstr "პუბლიკაციების ობიექტების არასწორი სია" -#: gram.y:19584 +#: gram.y:19590 #, c-format msgid "One of TABLE or TABLES IN SCHEMA must be specified before a standalone table or schema name." msgstr "" -#: gram.y:19600 +#: gram.y:19606 #, c-format msgid "invalid table name" msgstr "არასწორი ცხრილის სახელი" -#: gram.y:19621 +#: gram.y:19627 #, c-format msgid "WHERE clause not allowed for schema" msgstr "WHERE პირობა სქემისთვის დაშვებული არაა" -#: gram.y:19628 +#: gram.y:19634 #, c-format msgid "column specification not allowed for schema" msgstr "სქემისთვის სვეტის მითითება დაშვებული არაა" -#: gram.y:19642 +#: gram.y:19648 #, c-format msgid "invalid schema name" msgstr "არასწორი სქემის სახელი" @@ -14824,7 +14844,7 @@ msgstr "" msgid "internal error in OAuth validator module" msgstr "" -#: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:294 +#: 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-ის წარმდგენის ავთენტიკაცია ჩავარდა მომხმარებლისთვის \"%s\"" @@ -15001,550 +15021,550 @@ msgstr "" msgid "Garbage found at the end of client-final-message." msgstr "კლიენტის-საბოლოო-შეტყობინების ბოლოში აღმოჩენილია ნაგავი." -#: libpq/auth.c:254 +#: libpq/auth.c:262 #, c-format msgid "authentication failed for user \"%s\": host rejected" msgstr "ავთენტიკაციის შეცდომა მომხმარებლისთვის \"%s\": ჰოსტმა ის უარყო" -#: libpq/auth.c:257 +#: libpq/auth.c:265 #, c-format msgid "\"trust\" authentication failed for user \"%s\"" msgstr "\"ნდობით\" ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:260 +#: libpq/auth.c:268 #, c-format msgid "Ident authentication failed for user \"%s\"" msgstr "იდენტიფიკაციით ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:263 +#: libpq/auth.c:271 #, c-format msgid "Peer authentication failed for user \"%s\"" msgstr "პარტნიორის ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:268 +#: libpq/auth.c:276 #, c-format msgid "password authentication failed for user \"%s\"" msgstr "პაროლით ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:273 +#: libpq/auth.c:281 #, c-format msgid "GSSAPI authentication failed for user \"%s\"" msgstr "GSSAPI ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:276 +#: libpq/auth.c:284 #, c-format msgid "SSPI authentication failed for user \"%s\"" msgstr "SSPI ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:279 +#: libpq/auth.c:287 #, c-format msgid "PAM authentication failed for user \"%s\"" msgstr "PAM ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:282 +#: libpq/auth.c:290 #, c-format msgid "BSD authentication failed for user \"%s\"" msgstr "BSD ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:285 +#: libpq/auth.c:293 #, c-format msgid "LDAP authentication failed for user \"%s\"" msgstr "LDAP ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:288 +#: libpq/auth.c:296 #, c-format msgid "certificate authentication failed for user \"%s\"" msgstr "სერტიფიკატით ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:291 +#: libpq/auth.c:299 #, c-format msgid "RADIUS authentication failed for user \"%s\"" msgstr "რადიუსით ავთენტიფიკაცია მომხმარებლისთვის \"%s\" ვერ მოხერხდა" -#: libpq/auth.c:297 +#: libpq/auth.c:305 #, c-format msgid "authentication failed for user \"%s\": invalid authentication method" msgstr "ავთენტიკაციის შეცდომა მომხმარებლისთვის \"%s\": არასწორი ავთენტიკაციის მეთოდი" -#: libpq/auth.c:301 +#: libpq/auth.c:309 #, c-format msgid "Connection matched file \"%s\" line %d: \"%s\"" msgstr "მიერთება დაემთხვა ფაილ %s-ს ხაზზე %d: \"%s\"" -#: libpq/auth.c:346 +#: libpq/auth.c:354 #, c-format msgid "authentication identifier set more than once" msgstr "ავთენტიფიკაციის იდენტიფიკატორი ერთზე მეტჯერაა დაყენებული" -#: libpq/auth.c:347 +#: libpq/auth.c:355 #, c-format msgid "previous identifier: \"%s\"; new identifier: \"%s\"" msgstr "წინა იდენტიფიკატორი: \"%s\"; ახალი იდენტიფიკატორი: \"%s\"" -#: libpq/auth.c:357 +#: libpq/auth.c:365 #, c-format msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)" msgstr "მიერთება ავთენტიფიცირებულია: იდენტიფიკატორი=\"%s\" მეთოდი=%s (%s:%d)" -#: libpq/auth.c:397 +#: libpq/auth.c:405 #, c-format msgid "client certificates can only be checked if a root certificate store is available" msgstr "კლიენტის სერტიფიკატების შემოწმება მხოლოდ მაშინაა შესაძლებელი, როცა ხელმისაწვდომია ძირითადი სერტიფიკატების საცავი" -#: libpq/auth.c:408 +#: libpq/auth.c:416 #, c-format msgid "connection requires a valid client certificate" msgstr "მიერთების მცდელობას კლიენტის სწორი სერტიფიკატი ესაჭიროება" -#: libpq/auth.c:439 libpq/auth.c:485 +#: libpq/auth.c:447 libpq/auth.c:493 msgid "GSS encryption" msgstr "GSS დაშიფვრა" -#: libpq/auth.c:442 libpq/auth.c:488 +#: libpq/auth.c:450 libpq/auth.c:496 msgid "SSL encryption" msgstr "SSL დაშიფვრა" -#: libpq/auth.c:444 libpq/auth.c:490 +#: libpq/auth.c:452 libpq/auth.c:498 msgid "no encryption" msgstr "დაშიფვრის გარეშე" #. translator: last %s describes encryption state -#: libpq/auth.c:450 +#: 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:457 +#: 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:495 +#: libpq/auth.c:503 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup matches." msgstr "კლიენტის IP მისამართი იხსნება \"%s\" პირდაპირი DNS ემთხვევა." -#: libpq/auth.c:498 +#: libpq/auth.c:506 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup not checked." msgstr "კლიენტის IP მისამართი იხსნება \"%s\" პირდაპირი DNS არ შემოწმებულა." -#: libpq/auth.c:501 +#: libpq/auth.c:509 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup does not match." msgstr "კლიენტის IP მისამართი იხსნება \"%s\" პირდაპირი DNS არ ემთხვევა." -#: libpq/auth.c:504 +#: 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:509 +#: 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:517 +#: 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:525 +#: 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:649 +#: libpq/auth.c:657 #, c-format msgid "connection authenticated: user=\"%s\" method=%s (%s:%d)" msgstr "მიერთება ავთენტიფიცირებულია: მომხმარებელი =\"%s\" მეთოდი=%s (%s:%d)" -#: libpq/auth.c:718 +#: libpq/auth.c:726 #, c-format msgid "expected password response, got message type %d" msgstr "მოველოდი პაროლის პასუხს, მივიღე შეტყობინების ტიპი %d" -#: libpq/auth.c:739 +#: libpq/auth.c:747 #, c-format msgid "invalid password packet size" msgstr "პაროლის პაკეტის არასწორი ზომა" -#: libpq/auth.c:757 +#: libpq/auth.c:765 #, c-format msgid "empty password returned by client" msgstr "კლიენტმა ცარიელი პაროლი დააბრუნა" -#: libpq/auth.c:885 +#: libpq/auth.c:893 #, c-format msgid "could not generate random MD5 salt" msgstr "შემთხვევითი MD5 მარილის გენერაციის შეცდომა" -#: libpq/auth.c:936 libpq/be-secure-gssapi.c:553 +#: libpq/auth.c:944 libpq/be-secure-gssapi.c:553 #, c-format msgid "could not set environment: %m" msgstr "გარემოს მორგების შეცდომა: %m" -#: libpq/auth.c:975 +#: libpq/auth.c:983 #, c-format msgid "expected GSS response, got message type %d" msgstr "მოველოდი GSS პასუხს, მივიღე შეტყობინების ტიპი %d" -#: libpq/auth.c:1041 +#: libpq/auth.c:1049 msgid "accepting GSS security context failed" msgstr "'GSS'-ის უსაფრთხოების კონტექსტის მიღების შეცდომა" -#: libpq/auth.c:1082 +#: libpq/auth.c:1090 msgid "retrieving GSS user name failed" msgstr "'GSS'-ის მომხმარებლის სახელის მიღების შეცდომა" -#: libpq/auth.c:1228 +#: libpq/auth.c:1236 msgid "could not acquire SSPI credentials" msgstr "შეცდომა SSPI-ის მომხმ./პაროლის მიღებისას" -#: libpq/auth.c:1253 +#: libpq/auth.c:1261 #, c-format msgid "expected SSPI response, got message type %d" msgstr "მოველოდი SSPI პასუხს, მივიღე შეტყობინების ტიპი %d" -#: libpq/auth.c:1331 +#: libpq/auth.c:1339 msgid "could not accept SSPI security context" msgstr "'SSPI'-ის უსაფრთხოების კონტექსტის მიღების შეცდომა" -#: libpq/auth.c:1372 +#: libpq/auth.c:1380 msgid "could not get token from SSPI security context" msgstr "'SSPI'-ის უსაფრთხოების კონტექსტიდან კოდის მიღების შეცდომა" -#: libpq/auth.c:1508 libpq/auth.c:1527 +#: libpq/auth.c:1516 libpq/auth.c:1535 #, c-format msgid "could not translate name" msgstr "სახელის თარგმნა შეუძლებელია" -#: libpq/auth.c:1540 +#: libpq/auth.c:1548 #, c-format msgid "realm name too long" msgstr "რეალმის სახელი ძალიან გრძელია" -#: libpq/auth.c:1555 +#: libpq/auth.c:1563 #, c-format msgid "translated account name too long" msgstr "ანგარიშის ნათარგმნი სახელი ძალიან გრძელია" -#: libpq/auth.c:1734 +#: libpq/auth.c:1742 #, c-format msgid "could not create socket for Ident connection: %m" msgstr "ident მიერთებისთვის სოკეტის შექმნა შეუძლებელია: %m" -#: libpq/auth.c:1749 +#: libpq/auth.c:1757 #, c-format msgid "could not bind to local address \"%s\": %m" msgstr "ლოკალურ მისამართზე \"%s\" მიბმის შეცდომა: %m" -#: libpq/auth.c:1761 +#: libpq/auth.c:1769 #, c-format msgid "could not connect to Ident server at address \"%s\", port %s: %m" msgstr "შეცდომა LDAP სერვერთან მიერთებისას. მისამართი - \"%s\",პორტი - %s: %m" -#: libpq/auth.c:1783 +#: libpq/auth.c:1791 #, c-format msgid "could not send query to Ident server at address \"%s\", port %s: %m" msgstr "შეცდომა LDAP სერვერზე მოთხოვნის გაგზავნისას. მისამართი - \"%s\", პორტი - %s: %m" -#: libpq/auth.c:1800 +#: 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:1810 +#: libpq/auth.c:1818 #, c-format msgid "invalidly formatted response from Ident server: \"%s\"" msgstr "არასწორად დაფორმატებული პასუხი Ident სერვერიდან: \"%s\"" -#: libpq/auth.c:1866 +#: libpq/auth.c:1874 #, c-format msgid "peer authentication is not supported on this platform" msgstr "ამ პლატფორმაზე პარტნიორის ავთენტიკაცია მხარდაჭერილი არაა" -#: libpq/auth.c:1870 +#: libpq/auth.c:1878 #, c-format msgid "could not get peer credentials: %m" msgstr "პარტნიორის ავტორიზაციის დეტალების მიღების შეცდომა: %m" -#: libpq/auth.c:1880 +#: libpq/auth.c:1888 #, c-format msgid "could not look up local user ID %ld: %m" msgstr "ლოკალური მომხმარებლის ID-ით %ld მოძებნა შეუძლებელია: %m" -#: libpq/auth.c:1886 +#: libpq/auth.c:1894 #, c-format msgid "local user with ID %ld does not exist" msgstr "ლოკალური მომხმარებელი ID-ით %ld არ არსებობს" -#: libpq/auth.c:1986 +#: libpq/auth.c:1994 #, c-format msgid "error from underlying PAM layer: %s" msgstr "შეცდომა ქვედა PAM ფენიდან: %s" -#: libpq/auth.c:1997 +#: libpq/auth.c:2005 #, c-format msgid "unsupported PAM conversation %d/\"%s\"" msgstr "მხარდაუჭერელი PAM საუბარი %d/\"%s\"" -#: libpq/auth.c:2054 +#: libpq/auth.c:2062 #, c-format msgid "could not create PAM authenticator: %s" msgstr "შეცდომა PAM ავთენტიკატორის შექმნისას: %s" -#: libpq/auth.c:2065 +#: libpq/auth.c:2073 #, c-format msgid "pam_set_item(PAM_USER) failed: %s" msgstr "pam_set_item(PAM_USER) -ის შეცდომა: %s" -#: libpq/auth.c:2097 +#: libpq/auth.c:2105 #, c-format msgid "pam_set_item(PAM_RHOST) failed: %s" msgstr "pam_set_item(PAM_RHOST) -ის შეცდომა: %s" -#: libpq/auth.c:2109 +#: libpq/auth.c:2117 #, c-format msgid "pam_set_item(PAM_CONV) failed: %s" msgstr "pam_set_item(PAM_CONV) -ის შეცდომა: %s" -#: libpq/auth.c:2122 +#: libpq/auth.c:2130 #, c-format msgid "pam_authenticate failed: %s" msgstr "pam_authenticate -ის შეცდომა: %s" -#: libpq/auth.c:2135 +#: libpq/auth.c:2143 #, c-format msgid "pam_acct_mgmt failed: %s" msgstr "pam_acct_mgmt-ის შეცდომა: %s" -#: libpq/auth.c:2146 +#: libpq/auth.c:2154 #, c-format msgid "could not release PAM authenticator: %s" msgstr "შეცდომა PAM ავთენტიკატორის მოხსნისას: %s" -#: libpq/auth.c:2226 +#: libpq/auth.c:2234 #, c-format msgid "could not initialize LDAP: error code %d" msgstr "შეცდომა LDAP-ის ინიციალიზაციისას: შეცდომის კოდი %d" -#: libpq/auth.c:2263 +#: libpq/auth.c:2271 #, c-format msgid "could not extract domain name from ldapbasedn" msgstr "ldapbasedn-დან დომენის სახელის გამოღება შეუძლებელია" -#: libpq/auth.c:2271 +#: libpq/auth.c:2279 #, c-format msgid "LDAP authentication could not find DNS SRV records for \"%s\"" msgstr "LDAP ავთენტიკაციამ \"%s\"-სთვის DNS SRV ჩანაწერები ვერ იპოვა" -#: libpq/auth.c:2273 +#: libpq/auth.c:2281 #, c-format msgid "Set an LDAP server name explicitly." msgstr "LDAP სერვერის სახელი აშკარად უნდა დააყენოთ." -#: libpq/auth.c:2325 +#: libpq/auth.c:2333 #, c-format msgid "could not initialize LDAP: %s" msgstr "\"LDAP\"-ის ინიციალიზაციის შეცდომა: %s" -#: libpq/auth.c:2335 +#: libpq/auth.c:2343 #, c-format msgid "ldaps not supported with this LDAP library" msgstr "ამ LDAP ბიბლიოთეკას ldaps-ის მხარდაჭერა არ გააჩნია" -#: libpq/auth.c:2343 +#: libpq/auth.c:2351 #, c-format msgid "could not initialize LDAP: %m" msgstr "\"LDAP\"-ის ინიციალიზაციის შეცდომა: %m" -#: libpq/auth.c:2353 +#: libpq/auth.c:2361 #, c-format msgid "could not set LDAP protocol version: %s" msgstr "\"LDAP\"-ის ვერსიის დაყენების შეცდომა: %s" -#: libpq/auth.c:2369 +#: libpq/auth.c:2377 #, c-format msgid "could not start LDAP TLS session: %s" msgstr "\"LDAP TLS\" სესიის დაწყების შეცდომა: %s" -#: libpq/auth.c:2446 +#: libpq/auth.c:2454 #, c-format msgid "LDAP server not specified, and no ldapbasedn" msgstr "LDAP სერვერი და ldapbasedn მითითებული არაა" -#: libpq/auth.c:2453 +#: libpq/auth.c:2461 #, c-format msgid "LDAP server not specified" msgstr "LDAP სერვერი მითითებული არაა" -#: libpq/auth.c:2515 +#: libpq/auth.c:2523 #, c-format msgid "invalid character in user name for LDAP authentication" msgstr "არასწორი სიმბოლო მომხმარებლის სახელში LDAP-ით ავთენტიკაციისას" -#: libpq/auth.c:2532 +#: libpq/auth.c:2540 #, c-format msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s" msgstr "ldapbinddn \"%s\"-სთვის სერვერზე \"%s\" საწყისი LDAP მიბმა ვერ განვახორციელე: %s" -#: libpq/auth.c:2562 +#: libpq/auth.c:2570 #, c-format msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s" msgstr "ფილტრისთვის \"%s\" სერვერზე \"%s\" LDAP ძებნის გაშვება შეუძლებელია: %s" -#: libpq/auth.c:2578 +#: libpq/auth.c:2586 #, c-format msgid "LDAP user \"%s\" does not exist" msgstr "LDAP-ის მომხმარებელი \"%s\" არ არსებობს" -#: libpq/auth.c:2579 +#: 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:2583 +#: libpq/auth.c:2591 #, c-format msgid "LDAP user \"%s\" is not unique" msgstr "LDAP-ის მომხმარებელი \"%s\" უნიკალური არაა" -#: libpq/auth.c:2584 +#: 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." msgstr[0] "LDAP ძებნამ ფილტრისთვის \"%s\" სერვერზე \"%s\" %d ჩანაწერი დააბრუნა." msgstr[1] "LDAP ძებნამ ფილტრისთვის \"%s\" სერვერზე \"%s\" %d ჩანაწერი დააბრუნა." -#: libpq/auth.c:2604 +#: libpq/auth.c:2612 #, c-format msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s" msgstr "" -#: libpq/auth.c:2631 +#: 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:2663 +#: libpq/auth.c:2671 #, c-format msgid "LDAP diagnostics: %s" msgstr "LDAP-ის დიაგნოსტიკა: %s" -#: libpq/auth.c:2701 +#: libpq/auth.c:2709 #, c-format msgid "certificate authentication failed for user \"%s\": client certificate contains no user name" msgstr "სერტიფიკატით ავთენტიკაციის შეცდომა მომხმარებლისთვის \"%s\": კლიენტის სერტიფიკატი მომხმარებლის სახელს არ შეიცავს" -#: libpq/auth.c:2722 +#: libpq/auth.c:2730 #, c-format msgid "certificate authentication failed for user \"%s\": unable to retrieve subject DN" msgstr "სერტიფიკატით ავთენტიკაცია ჩავარდა მომხმარებლისთვის \"%s\": სათაურის DN-ის მიღება შეუძლებელა" -#: libpq/auth.c:2745 +#: 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:2750 +#: 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:2852 +#: libpq/auth.c:2860 #, c-format msgid "RADIUS server not specified" msgstr "RADIUS სერვერი მითითებული არაა" -#: libpq/auth.c:2859 +#: libpq/auth.c:2867 #, c-format msgid "RADIUS secret not specified" msgstr "RADIUS-ის პაროლი მითითებული არაა" -#: libpq/auth.c:2873 +#: libpq/auth.c:2881 #, c-format msgid "RADIUS authentication does not support passwords longer than %d characters" msgstr "RADIUS-ით ავთენტიკაციისას %d სიმბოლოზე გრძელი პაროლები მხარდაჭერილი არაა" -#: libpq/auth.c:2975 libpq/hba.c:2391 +#: 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:2989 +#: libpq/auth.c:2997 #, c-format msgid "could not generate random encryption vector" msgstr "შემთხვევითი დაშიფვრის ვექტორის გენერაციის შეცდომა" -#: libpq/auth.c:3026 +#: libpq/auth.c:3034 #, c-format msgid "could not perform MD5 encryption of password: %s" msgstr "პაროლის MD5-ით დაშიფვრა შეუძლებელია: %s" -#: libpq/auth.c:3053 +#: libpq/auth.c:3061 #, c-format msgid "could not create RADIUS socket: %m" msgstr "შეცდომა RADIUS სოკეტის შექმნისას: %m" -#: libpq/auth.c:3069 +#: libpq/auth.c:3077 #, c-format msgid "could not bind local RADIUS socket: %m" msgstr "ლოკალურ RADIUS სოკეტზე მიბმის შეცდომა: %m" -#: libpq/auth.c:3079 +#: libpq/auth.c:3087 #, c-format msgid "could not send RADIUS packet: %m" msgstr "შეცდომა RADIUS პაკეტის გაგზავნისას: %m" -#: libpq/auth.c:3113 libpq/auth.c:3139 +#: libpq/auth.c:3121 libpq/auth.c:3147 #, c-format msgid "timeout waiting for RADIUS response from %s" msgstr "%s-დან RADIUS პასუხის მოლოდინის ვადა ამოიწურა" -#: libpq/auth.c:3132 +#: libpq/auth.c:3140 #, c-format msgid "could not check status on RADIUS socket: %m" msgstr "შეცდომა RADIUS სოკეტის სტატუსის შემოწმებისას: %m" -#: libpq/auth.c:3162 +#: libpq/auth.c:3170 #, c-format msgid "could not read RADIUS response: %m" msgstr "შეცდომა RADIUS პასუხის წაკითხვისას: %m" -#: libpq/auth.c:3170 +#: libpq/auth.c:3178 #, c-format msgid "RADIUS response from %s was sent from incorrect port: %d" msgstr "RADIUS პასუხი \"%s\" გამოგზავნილია არასწორი პორტიდან: %d" -#: libpq/auth.c:3178 +#: libpq/auth.c:3186 #, c-format msgid "RADIUS response from %s too short: %d" msgstr "RADIUS პასუხი %s-დან მეტისმეტად მოკლეა: %d" -#: libpq/auth.c:3185 +#: 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:3193 +#: 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 "%s-დან მიღებული RADIUS პასუხის MD5 ხელმოწერა არასწორია" -#: libpq/auth.c:3248 +#: libpq/auth.c:3256 #, c-format msgid "RADIUS response from %s has invalid code (%d) for user \"%s\"" msgstr "%s-დან მიღებულ RADIUS-ს პასუხს არასწორი კოდი (%d) გააჩნია მომხმარებლისთვის \"%s\"" @@ -15862,8 +15882,8 @@ msgstr "DH: DH-ის პარამეტრების დაყენებ #: libpq/be-secure-openssl.c:1439 #, c-format -msgid "failed to set group names specified in ssl_groups: %s" -msgstr "" +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" @@ -15871,8 +15891,8 @@ msgstr "სწორი ჯგუფები აღმოჩენილი ა #: libpq/be-secure-openssl.c:1442 #, c-format -msgid "Ensure that each group name is spelled correctly and supported by the installed version of OpenSSL" -msgstr "დარწმუნდით, რომ თითოეული ჯგუფის სახელის მართლწერა სწორია და მხარდაჭერილია OpenSSL-ის დაყენებული ვერსიის მიერ" +msgid "Ensure that each group name is spelled correctly and supported by the installed version of OpenSSL." +msgstr "დარწმუნდით, რომ თითოეული ჯგუფის სახელის მართლწერა სწორია და მხარდაჭერილია OpenSSL-ის დაყენებული ვერსიის მიერ." #: libpq/be-secure-openssl.c:1488 msgid "no SSL error reported" @@ -16763,7 +16783,7 @@ msgstr "გაფართოებადი კვანძის ტიპი msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "ExtensibleNodeMethods \"%s\" რეგისტრირებული არ იყო" -#: nodes/makefuncs.c:154 nodes/makefuncs.c:180 statistics/extended_stats.c:2306 +#: 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\" კომპოზიტური ტიპი არ გააჩნია" @@ -16788,7 +16808,7 @@ msgstr "უსახელო პორტალი პარამეტრე msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "" -#: optimizer/plan/createplan.c:7293 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1689 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "ურთიერთობაზე \"%s\" MERGE-ს ვერ გაუშვებთ" @@ -16800,42 +16820,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:1462 parser/analyze.c:1815 parser/analyze.c:2074 parser/analyze.c:3395 +#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 parser/analyze.c:3395 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s აკრძალულია UNION/INTERSECT/EXCEPT-სთან ერთად" -#: optimizer/plan/planner.c:2205 optimizer/plan/planner.c:4091 +#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 #, c-format msgid "could not implement GROUP BY" msgstr "\"GROUP BY\"-ის განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:2206 optimizer/plan/planner.c:4092 optimizer/plan/planner.c:4773 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 optimizer/plan/planner.c:4806 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:4772 +#: optimizer/plan/planner.c:4805 #, c-format msgid "could not implement DISTINCT" msgstr "\"DISTINCT\"-ის განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:6234 +#: optimizer/plan/planner.c:6267 #, c-format msgid "could not implement window PARTITION BY" msgstr "ფანჯრის, \"PARTITION BY\" განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:6235 +#: optimizer/plan/planner.c:6268 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "ფანჯრის დამყოფი სვეტები დალაგებადი მონაცემის ტიპის უნდა იყოს." -#: optimizer/plan/planner.c:6239 +#: optimizer/plan/planner.c:6272 #, c-format msgid "could not implement window ORDER BY" msgstr "ფანჯრის, \"ORDER BY\" განხორციელება შეუძლებელია" -#: optimizer/plan/planner.c:6240 +#: optimizer/plan/planner.c:6273 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "ფანჯრის დამლაგებელი სვეტები დალაგებადი მონაცემის ტიპის უნდა იყოს." @@ -19572,7 +19592,7 @@ msgstr "" msgid "column %d of the partition key has type \"%s\", but supplied value is of type \"%s\"" msgstr "" -#: 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/pg_sema.c:209 port/pg_shmem.c:717 port/posix_sema.c:209 port/sysv_sema.c:343 port/sysv_shmem.c:717 #, c-format msgid "could not stat data directory \"%s\": %m" msgstr "მონაცემების საქაღალდის (%s) პოვნა შეუძლებელია: %m" @@ -19633,34 +19653,34 @@ msgstr "ამ პლატფორმაზე უზარმაზარი msgid "huge pages not supported with the current \"shared_memory_type\" setting" msgstr "\"shared_memory_type\" პარამეტრთან ერთად უზარმაზარი გვერდები მხარდაჭერილი არაა" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1406 +#: 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, ID %lu) ჯერ კიდევ გამოიყენება" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1408 +#: 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 "" -#: 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 "" -#: 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 "" @@ -19832,81 +19852,81 @@ msgstr "" msgid "inconsistent background worker state (\"max_worker_processes\"=%d, total slots=%d)" msgstr "" -#: postmaster/bgworker.c:645 +#: postmaster/bgworker.c:646 #, c-format msgid "background worker \"%s\": background workers without shared memory access are not supported" msgstr "" -#: postmaster/bgworker.c:656 +#: postmaster/bgworker.c:657 #, c-format msgid "background worker \"%s\": cannot request database access if starting at postmaster start" msgstr "" -#: postmaster/bgworker.c:670 +#: postmaster/bgworker.c:671 #, c-format msgid "background worker \"%s\": invalid restart interval" msgstr "ფონური დამხმარე პროცესი \"%s\": არასწორი გადატვირთვის ინტერვალი" -#: postmaster/bgworker.c:685 +#: postmaster/bgworker.c:686 #, c-format msgid "background worker \"%s\": parallel workers may not be configured for restart" msgstr "" -#: postmaster/bgworker.c:709 tcop/postgres.c:3343 +#: postmaster/bgworker.c:710 tcop/postgres.c:3343 #, c-format msgid "terminating background worker \"%s\" due to administrator command" msgstr "" -#: postmaster/bgworker.c:868 postmaster/bgworker.c:902 +#: postmaster/bgworker.c:869 postmaster/bgworker.c:903 #, c-format msgid "database connection requirement not indicated during registration" msgstr "" -#: postmaster/bgworker.c:878 postmaster/bgworker.c:912 +#: postmaster/bgworker.c:879 postmaster/bgworker.c:913 #, c-format msgid "invalid processing mode in background worker" msgstr "არასწორი დამუშავების რეჟიმი ფონურ დამხმარე პროცესში" -#: postmaster/bgworker.c:965 +#: postmaster/bgworker.c:966 #, c-format msgid "background worker \"%s\": must be registered in \"shared_preload_libraries\"" msgstr "ფონური დამხმარე პროცესი \"%s\": \"shared_preload_libraries\"-ში დარეგისტრირებული უნდა იყოს" -#: postmaster/bgworker.c:988 +#: postmaster/bgworker.c:989 #, c-format msgid "background worker \"%s\": only dynamic background workers can request notification" msgstr "ფონური დახმამრე პროცესი \"%s\": გაფრთხილების მოთხოვნა მხოლოდ დინამიკურ ფონურ დამხმარე პროცესებს შეუძლიათ" -#: postmaster/bgworker.c:1003 +#: postmaster/bgworker.c:1004 #, c-format msgid "too many background workers" msgstr "მეტისმეტად ბევრი ფონური დამხმარე პროცესი" -#: postmaster/bgworker.c:1004 +#: 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." msgstr[0] "" msgstr[1] "" -#: postmaster/bgworker.c:1008 postmaster/checkpointer.c:459 +#: postmaster/bgworker.c:1009 postmaster/checkpointer.c:462 #, c-format msgid "Consider increasing the configuration parameter \"%s\"." msgstr "გაითვალისწინეთ, რომ შეიძლება კონფიგურაციის პარამეტრის \"%s\" გაზრდა გჭირდებათ." -#: postmaster/checkpointer.c:455 +#: 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)" msgstr[0] "საკონტროლო წერტილები მეტისმეტად ხშირად ხდება (%d წამიანი შუალედით)" msgstr[1] "საკონტროლო წერტილები მეტისმეტად ხშირად ხდება (%d წამიანი შუალედით)" -#: postmaster/checkpointer.c:1121 +#: postmaster/checkpointer.c:1127 #, c-format msgid "checkpoint request failed" msgstr "საკონტროლო წერტილის მოთხოვნის შეცდომა" -#: postmaster/checkpointer.c:1122 +#: postmaster/checkpointer.c:1128 #, c-format msgid "Consult recent messages in the server log for details." msgstr "დეტალებისთვის იხილეთ სერვერის ჟურნალის უახლესი შეტყობინებები." @@ -20157,7 +20177,7 @@ msgstr "%s-ის ჩატვირთვა შეუძლებელია" msgid "postmaster became multithreaded during startup" msgstr "პროცესი postmaster გაშვებისას მრავალნაკადიანი გახდა" -#: postmaster/postmaster.c:1365 postmaster/postmaster.c:3661 +#: postmaster/postmaster.c:1365 postmaster/postmaster.c:3668 #, c-format msgid "Set the LC_ALL environment variable to a valid locale." msgstr "დააყენეთ LC_ALL გარემოს ცვლადი სწორ ლოკალზე." @@ -20300,114 +20320,114 @@ msgstr "შვილი პროცესი ტრეკინგის გა msgid "background worker \"%s\"" msgstr "ფონური დამხმარე პროცესი \"%s\"" -#: postmaster/postmaster.c:2797 +#: 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:2830 +#: postmaster/postmaster.c:2837 #, c-format msgid "%s (PID %d) exited with exit code %d" msgstr "%s (PID %d) დასრულდა სტატუსით %d" -#: postmaster/postmaster.c:2832 postmaster/postmaster.c:2844 postmaster/postmaster.c:2854 postmaster/postmaster.c:2865 +#: 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:2841 +#: 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:2851 +#: 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:2863 +#: postmaster/postmaster.c:2870 #, c-format msgid "%s (PID %d) exited with unrecognized status %d" msgstr "%s (PID %d) დასრულდა უცნობი სტატუსით %d" -#: postmaster/postmaster.c:3154 +#: postmaster/postmaster.c:3161 #, c-format msgid "abnormal database system shutdown" msgstr "მონაცემთა ბაზის სისტემის არანორმალური გამორთვა" -#: postmaster/postmaster.c:3180 +#: postmaster/postmaster.c:3187 #, c-format msgid "shutting down due to startup process failure" msgstr "მუშაობის დასრულება გამშვები პროცესის შეცდომის გამო" -#: postmaster/postmaster.c:3186 +#: postmaster/postmaster.c:3193 #, c-format msgid "shutting down because \"restart_after_crash\" is off" msgstr "მუშაობა დასრულდება. რადგან \"restart_after_crash\" გამორთულია" -#: postmaster/postmaster.c:3198 +#: postmaster/postmaster.c:3205 #, c-format msgid "all server processes terminated; reinitializing" msgstr "სერვერის ყველა პროცესი დასრულდა; მიმდინარეობს რეინიციალიზაცია" -#: postmaster/postmaster.c:3591 +#: postmaster/postmaster.c:3598 #, c-format msgid "could not fork new process for connection: %m" msgstr "ახალი პროცესის ფორკის შეცდომა შეერთებისთვის: %m" -#: postmaster/postmaster.c:3626 +#: postmaster/postmaster.c:3633 msgid "could not fork new process for connection: " msgstr "ახალი პროცესის ფორკის შეცდომა შეერთებისთვის: " -#: postmaster/postmaster.c:3660 +#: postmaster/postmaster.c:3667 #, c-format msgid "postmaster became multithreaded" msgstr "postmaster მრავალნაკადიანი გახდა" -#: postmaster/postmaster.c:3738 +#: postmaster/postmaster.c:3745 #, c-format msgid "database system is ready to accept read-only connections" msgstr "მონაცემთა ბაზის სისტემა მზადაა მხოლოდ-კითხვადი შეერთებების მისაღებად" -#: postmaster/postmaster.c:3839 +#: postmaster/postmaster.c:3846 #, c-format msgid "WAL was shut down unexpectedly" msgstr "WAL მოულოდნელად გაითიშა" -#: postmaster/postmaster.c:3964 +#: postmaster/postmaster.c:3971 #, c-format msgid "no slot available for new autovacuum worker process" msgstr "ავტომომტვერსასრუტების ფონური დამხმარე პროცესისთვის სლოტი ხელმისაწვდომი არაა" -#: postmaster/postmaster.c:3979 +#: postmaster/postmaster.c:3986 #, c-format msgid "could not fork \"%s\" process: %m" msgstr "\"%s\" პროცესის ფორკის შეცდომა: %m" -#: postmaster/postmaster.c:4138 +#: postmaster/postmaster.c:4145 #, c-format msgid "no slot available for new background worker process" msgstr "ახალი ფონური დამხმარე პროცესისთვის სლოტი ხელმისაწვდომი არაა" -#: postmaster/postmaster.c:4156 +#: postmaster/postmaster.c:4163 #, c-format msgid "could not fork background worker process: %m" msgstr "ფონური დამხმარე პროცესის ფორკის შეცდომა: %m" -#: postmaster/postmaster.c:4489 +#: postmaster/postmaster.c:4496 #, c-format msgid "could not read exit code for process\n" msgstr "პროცესის გამოსვლის კოდის წაკითხვის შეცდომა\n" -#: postmaster/postmaster.c:4531 +#: postmaster/postmaster.c:4538 #, c-format msgid "could not post child completion status\n" msgstr "შვილი პროცესის დასრულების სტატუსის წაკითხვის შეცდომა\n" @@ -20800,8 +20820,8 @@ msgstr "ლოგიკურ გაშიფვრას უქმეზე ძ #: replication/logical/launcher.c:344 #, c-format -msgid "cannot start logical replication workers when \"max_active_replication_origins\"=0" -msgstr "შეუძლებელია ლოგიკური რეპლიკაციის დამხმარე პროცესების გაშვება, როცა \"max_active_replication_origins\"=0" +msgid "cannot start logical replication workers when \"max_active_replication_origins\" is 0" +msgstr "შეუძლებელია ლოგიკური რეპლიკაციის დამხმარე პროცესების გაშვება, როცა \"max_active_replication_origins\" არის 0" #: replication/logical/launcher.c:437 #, c-format @@ -20809,7 +20829,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:1623 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: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 #, c-format msgid "You might need to increase \"%s\"." msgstr "როგორც ჩანს, გჭირდებათ, \"%s\" გაზარდოთ." @@ -21094,7 +21114,7 @@ msgstr "რეპლიკაციის სლოტის \"%s\" სინქ #: replication/logical/slotsync.c:216 #, c-format -msgid "Synchronization could lead to data loss as the remote slot needs WAL at LSN %X/%X and catalog xmin %u, but the standby has LSN %X/%X and catalog 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 "" #: replication/logical/slotsync.c:475 @@ -21104,7 +21124,7 @@ msgstr "წაიშალა რეპლიკაციის სლოტი #: replication/logical/slotsync.c:596 #, c-format -msgid "Synchronization could lead to data loss as standby could not build a consistent snapshot to decode WALs at 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 "" #: replication/logical/slotsync.c:605 @@ -21156,7 +21176,7 @@ msgstr "რეპლიკაციის სლოტი \"%s\", რომე msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "რეპლიკაციის სლოტის სინქრონიზაციას სჭირდება, რომ \"%s\" მითითებული იყოს \"%s\"-ში" -#: replication/logical/slotsync.c:1069 +#: replication/logical/slotsync.c:1067 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "რეპლიკაციის სლოტის სინქრონიზაციას \"wal_level\" >= \"logical\" ესაჭიროება" @@ -21281,57 +21301,57 @@ msgstr "ფაილის სახელის დამუშავები msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished" msgstr "" -#: replication/logical/tablesync.c:645 +#: 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 "" -#: replication/logical/tablesync.c:835 replication/logical/tablesync.c:976 +#: 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 "" -#: replication/logical/tablesync.c:842 +#: replication/logical/tablesync.c:866 #, c-format msgid "table \"%s.%s\" not found on publisher" msgstr "ცხრილი \"%s.%s\" გამომცემელზე ნაპოვნი არაა" -#: replication/logical/tablesync.c:895 +#: replication/logical/tablesync.c:919 #, c-format msgid "could not fetch column list info for table \"%s.%s\" from publisher: %s" msgstr "" -#: replication/logical/tablesync.c:1074 +#: replication/logical/tablesync.c:1098 #, c-format msgid "could not fetch table WHERE clause info for table \"%s.%s\" from publisher: %s" msgstr "" -#: replication/logical/tablesync.c:1241 +#: replication/logical/tablesync.c:1265 #, c-format msgid "could not start initial contents copy for table \"%s.%s\": %s" msgstr "" -#: replication/logical/tablesync.c:1356 +#: replication/logical/tablesync.c:1380 #, c-format msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "" -#: replication/logical/tablesync.c:1441 +#: replication/logical/tablesync.c:1466 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "ცხრილის კოპირებამ ვერ გაუშვა ტრანზაქცია გამომცემელზე: %s" -#: replication/logical/tablesync.c:1484 +#: replication/logical/tablesync.c:1509 #, c-format msgid "replication origin \"%s\" already exists" msgstr "რეპლიკაციის წყარო \"%s\" უკვე არსებობს" -#: replication/logical/tablesync.c:1517 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1542 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:1530 +#: replication/logical/tablesync.c:1555 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "ცხრილის კოპირებამ ვერ დაასრულა ტრანზაქცია გამომცემელზე: %s" @@ -21558,8 +21578,8 @@ msgstr "" #: replication/pgoutput/pgoutput.c:1792 #, c-format -msgid "skipped loading publication: %s" -msgstr "გამოტოვებულია ჩატვირთვა პუბლიკაციისთვის: %s" +msgid "skipped loading publication \"%s\"" +msgstr "გამოტოვებულია ჩატვირთვა პუბლიკაციისთვის \"%s\"" #: replication/pgoutput/pgoutput.c:1793 #, c-format @@ -21676,7 +21696,7 @@ msgstr "რეპლიკაციის სლოტის \"%s\" შეცვ msgid "cannot enable failover for a replication slot on the standby" msgstr "" -#: replication/slot.c:1021 replication/slot.c:2182 replication/slot.c:2568 +#: replication/slot.c:1021 replication/slot.c:2174 replication/slot.c:2560 #, c-format msgid "could not remove directory \"%s\"" msgstr "საქაღალდის (\"%s\") წაშლის შეცდომა" @@ -21718,146 +21738,141 @@ msgid "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the msgstr "ლოგიკურ გაშიფვრას უქმეზე ძირითად სერვერზე \"wal_level\" >= \"logical\" ესაჭიროება." #. translator: %s is a GUC variable name -#: replication/slot.c:1619 +#: replication/slot.c:1616 #, c-format -msgid "The slot's idle time of %dmin %02ds exceeds the configured \"%s\" duration of %dmin." +msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." msgstr "" -#: replication/slot.c:1633 +#: replication/slot.c:1630 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "რეპლიკაციის სლოტის (%2$s) გასათავისუფლებლად მოხდება პროცესის მოკვლა: %1$d" -#: replication/slot.c:1635 +#: replication/slot.c:1632 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "მოძველებული რეპლიკაციის სლოტის (\"%s\") არასწორად გამოცხადება" -#: replication/slot.c:2506 +#: replication/slot.c:2498 #, c-format msgid "replication slot file \"%s\" has wrong magic number: %u instead of %u" msgstr "რეპლიკაციის სლოტის (%s) ფაილის არასწორი მაგიური რიცხვი: %u (უნდა იყოს %u)" -#: replication/slot.c:2513 +#: replication/slot.c:2505 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "რეპლიკაციის სლოტის ფაილის (%s) მხარდაუჭერელი ვერსია %u" -#: replication/slot.c:2520 +#: replication/slot.c:2512 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "რეპლიკაციის სლოტის ფაილის (%s) დაზიანებული სიგრძე: %u" -#: replication/slot.c:2556 +#: replication/slot.c:2548 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "" -#: replication/slot.c:2592 +#: replication/slot.c:2584 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "ლოგიკური რეპლიკაციის სლოტი\"%s\" არსებობს, მაგრამ \"wal_level\" < \"logical\"" -#: replication/slot.c:2594 +#: replication/slot.c:2586 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "შეცვალეთ \"wal_level\" \"logical\"-ზე ან უფრო მაღალზე." -#: replication/slot.c:2606 +#: replication/slot.c:2598 #, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" msgstr "ლოგიკური რეპლიკაციის სლოტი\"%s\" არსებობს, მაგრამ \"hot_standby\" = \"off\"" -#: replication/slot.c:2608 +#: replication/slot.c:2600 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "" -#: replication/slot.c:2613 +#: replication/slot.c:2605 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "ფიზიკური რეპლიკაციის სლოტი\"%s\" არსებობს, მაგრამ \"wal_level\" < \"replica\"" -#: replication/slot.c:2615 +#: replication/slot.c:2607 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "შეცვალეთ \"wal_level\" \"replica\"-ზე ან ზემოთ." -#: replication/slot.c:2662 +#: replication/slot.c:2654 #, c-format msgid "too many replication slots active before shutdown" msgstr "გამორთვამდე მეტისმეტად ბევრი რეპლიკაციის სლოტი იყო აქტიური" -#: replication/slot.c:2663 +#: replication/slot.c:2655 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "გაზარდეთ \"max_replication_slots\"-ის მნიშვნელობა და თავიდან სცადეთ." -#: replication/slot.c:2740 +#: replication/slot.c:2732 #, c-format msgid "Replication slot \"%s\" does not exist." msgstr "რეპლიკაციის სლოტი \"%s\" არ არსებობს." -#: replication/slot.c:2748 +#: replication/slot.c:2740 #, c-format msgid "\"%s\" is not a physical replication slot." msgstr "\"%s\" ფიზიკური რეპლიკაციის სლოტი არაა." -#: replication/slot.c:2927 +#: replication/slot.c:2919 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "რეპლიკაციის სლოტი \"%s\", მითითებული პარამეტრში %s, არ არსებობს" -#: replication/slot.c:2929 replication/slot.c:2963 replication/slot.c:2978 +#: replication/slot.c:2921 replication/slot.c:2955 replication/slot.c:2970 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "ლოგიკური რეპლიკაცია ელოდება უქმე სლოტს, რომელიც დაკავშირებულია რეპლიკაციის სლოტთან \"%s\"." -#: replication/slot.c:2931 +#: replication/slot.c:2923 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "შექმენით რეპლიკაციის სლოტი \"%s\" ან შეცვალეთ პარამეტრი \"%s\"." -#: replication/slot.c:2941 +#: replication/slot.c:2933 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "ვერ მიუთითებთ ლოგიკური რეპლიკაციის სლოტს \"%s\" პარამეტრში \"%s\"" -#: replication/slot.c:2943 +#: replication/slot.c:2935 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "ლოგიკური რეპლიკაცია ელოდება კორექტირებას რეპლიკაციის სლოტზე \"%s\"." -#: replication/slot.c:2945 +#: replication/slot.c:2937 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "წაშალეთ ლოგიკური რეპლიკაციის სლოტი \"%s\" პარამეტრიდან \"%s\"." -#: replication/slot.c:2961 +#: replication/slot.c:2953 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "ფიზიკური რეპლიკაციის სლოტი \"%s\", მითითებული პარამეტრში \"%s\", გაუქმებულია" -#: replication/slot.c:2965 +#: replication/slot.c:2957 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "განიხილეთ მოცილება ან თავიდან შექმნა სლოტისთვის \"%s\" ან მიაწერეთ პარამეტრი \"%s\"." -#: replication/slot.c:2976 +#: replication/slot.c:2968 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not have active_pid" msgstr "რეპლიკაციის სლოტი \"%s\", რომელიც მითითებულია პარამეტრში \"%s\", active_pid არ გააჩნია" -#: replication/slot.c:2980 +#: replication/slot.c:2972 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "გაუშვით უქმე, ასოცირებული რეპლიკაციის სლოტთან \"%s\", ან მიაწერეთ პარამეტრი \"%s\"." -#: replication/slot.c:3072 -#, c-format -msgid "\"%s\" must be set to 0 during binary upgrade mode." -msgstr "ბინარული განახლების რეჟიმისას \"%s\"-ის მნიშვნელობა 0-ზე უნდა დააყენოთ." - #: replication/slotfuncs.c:529 #, c-format msgid "invalid target WAL LSN" @@ -22911,30 +22926,30 @@ msgstr "" msgid "Only -1 or values bigger than 0 are valid." msgstr "" -#: storage/aio/method_io_uring.c:171 +#: storage/aio/method_io_uring.c:369 msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." msgstr "" -#: storage/aio/method_io_uring.c:176 +#: 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:182 +#: storage/aio/method_io_uring.c:380 msgid "Kernel does not support io_uring." msgstr "ბირთვს io_uring_ის მხარდაჭერა არ გააჩნია." -#: storage/aio/method_io_uring.c:190 +#: 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:324 +#: storage/aio/method_io_uring.c:522 #, c-format msgid "completing I/O on behalf of process %d" msgstr "" -#: storage/aio/method_worker.c:380 +#: storage/aio/method_worker.c:382 #, c-format msgid "I/O worker executing I/O on behalf of process %d" msgstr "" @@ -22944,97 +22959,97 @@ msgstr "" msgid "cannot access temporary tables of other sessions" msgstr "სხვა სესიების დროებით ცხრილებთან წვდომა შეუძლებელია" -#: storage/buffer/bufmgr.c:2708 storage/buffer/localbuf.c:393 +#: storage/buffer/bufmgr.c:2703 storage/buffer/localbuf.c:393 #, c-format msgid "cannot extend relation %s beyond %u blocks" msgstr "" -#: storage/buffer/bufmgr.c:2779 +#: storage/buffer/bufmgr.c:2774 #, c-format msgid "unexpected data beyond EOF in block %u of relation %s" msgstr "" -#: storage/buffer/bufmgr.c:2782 +#: 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:6183 +#: storage/buffer/bufmgr.c:6178 #, c-format msgid "could not write block %u of %s" msgstr "%2$s-ის %1$u ბლოკის ჩაწერა შეუძლებელია" -#: storage/buffer/bufmgr.c:6187 +#: storage/buffer/bufmgr.c:6182 #, c-format msgid "Multiple failures --- write error might be permanent." msgstr "ბევრი შეცდომა --- ჩაწერის შეცდომა შეიძლება მუდმივი იყოს." -#: storage/buffer/bufmgr.c:6204 storage/buffer/bufmgr.c:6219 +#: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 #, c-format msgid "writing block %u of relation %s" msgstr "" -#: storage/buffer/bufmgr.c:7318 +#: storage/buffer/bufmgr.c:7313 #, c-format msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation %s" msgstr "" -#: storage/buffer/bufmgr.c:7321 storage/buffer/bufmgr.c:7347 +#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7342 #, c-format msgid "Block %u held first zeroed page." msgstr "" -#: storage/buffer/bufmgr.c:7323 +#: storage/buffer/bufmgr.c:7318 #, c-format msgid "See server log for details about the other %d invalid block(s)." msgstr "სხვა %d ბლოკ(ებ)-ის დეტალების შესახებ ინფორმაციისთვის იხილეთ სერვერის ჟურნალი." -#: storage/buffer/bufmgr.c:7338 +#: storage/buffer/bufmgr.c:7333 #, c-format msgid "%u invalid pages among blocks %u..%u of relation %s" msgstr "%u არასწორი გვერდი ბლოკების %u..%u გასწვრივ ურთიერთობისთვის %s" -#: storage/buffer/bufmgr.c:7339 +#: storage/buffer/bufmgr.c:7334 #, c-format msgid "Block %u held first invalid page." msgstr "" -#: storage/buffer/bufmgr.c:7340 +#: storage/buffer/bufmgr.c:7335 #, c-format msgid "See server log for the other %u invalid block(s)." msgstr "დარჩენილი %u არასწორი ბლოკისთვის იხილეთ სერვერის ჟურნალი." -#: storage/buffer/bufmgr.c:7345 +#: storage/buffer/bufmgr.c:7340 #, c-format msgid "invalid page in block %u of relation %s; zeroing out page" msgstr "" -#: storage/buffer/bufmgr.c:7346 +#: storage/buffer/bufmgr.c:7341 #, c-format msgid "zeroing out %u invalid pages among blocks %u..%u of relation %s" msgstr "მიმდინარეობს %u არასწორი გვერდის განულება ბლოკების %u..%u გასწვრივ ურთიერთობისთვის %s" -#: storage/buffer/bufmgr.c:7348 +#: storage/buffer/bufmgr.c:7343 #, c-format msgid "See server log for the other %u zeroed block(s)." msgstr "დარჩენილი %u განულებული ბლოკისთვის იხილეთ სერვერის ჟურნალი." -#: storage/buffer/bufmgr.c:7353 +#: storage/buffer/bufmgr.c:7348 #, c-format msgid "ignoring checksum failure in block %u of relation %s" msgstr "ურთიერთობის (%2$s) ბლოკის (%1$u) საკონტროლო ჯამის გამოთვლის ჩავარდნა გამოტოვებული იქნება" -#: storage/buffer/bufmgr.c:7354 +#: storage/buffer/bufmgr.c:7349 #, c-format msgid "ignoring %u checksum failures among blocks %u..%u of relation %s" msgstr "გამოტოვებული იქნება %u საკონტროლო ჯამის გამოთვლის ჩავარდნა ბლოკების %u..%u გასწვრივ ურთიერთობისთვის %s" -#: storage/buffer/bufmgr.c:7355 +#: storage/buffer/bufmgr.c:7350 #, c-format msgid "Block %u held first ignored page." msgstr "" -#: storage/buffer/bufmgr.c:7356 +#: storage/buffer/bufmgr.c:7351 #, c-format msgid "See server log for the other %u ignored block(s)." msgstr "დარჩენილი %u გამოტოვებული ბლოკისთვის იხილეთ სერვერის ჟურნალი." @@ -23089,137 +23104,137 @@ msgstr "ფაილის (%s) მოკვეთის შეცდომა: msgid "could not clone file \"%s\" to \"%s\": %m" msgstr "ფაილის \"%s\"-დან \"%s\"-ში დაკლონვა შეუძლებელია: %m" -#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 +#: 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 "" -#: storage/file/fd.c:613 +#: storage/file/fd.c:610 #, c-format msgid "could not determine dirty data size: %m" msgstr "" -#: storage/file/fd.c:665 +#: storage/file/fd.c:662 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "" -#: storage/file/fd.c:983 +#: storage/file/fd.c:980 #, c-format msgid "getrlimit failed: %m" msgstr "getrlimit-ის შეცდომა: %m" -#: storage/file/fd.c:1074 +#: storage/file/fd.c:1071 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "სერვერის პროცესის გასაშვებად საკმარისი ფაილის დესკრიპტორების ხელმისაწვდომი არაა" -#: storage/file/fd.c:1075 +#: storage/file/fd.c:1072 #, c-format msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "სისტემა გვიშვებს %d, სერვერს კი სჭირდება %d. უკვე ღიაა %d ფაილი." -#: storage/file/fd.c:1164 storage/file/fd.c:2679 storage/file/fd.c:2788 storage/file/fd.c:2942 +#: 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:1540 +#: storage/file/fd.c:1537 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "დროებითი ფაილი: ბილიკი \"%s\", ზომა %lu" -#: storage/file/fd.c:1679 +#: storage/file/fd.c:1676 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "დროებითი საქაღალდის (%s) შექმნის შეცდომა: %m" -#: storage/file/fd.c:1686 +#: storage/file/fd.c:1683 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "დროებითი ქვესაქაღალდის (%s) შექმნის შეცდომა: %m" -#: storage/file/fd.c:1883 +#: storage/file/fd.c:1880 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "დროებითი ფაილის (%s) შექმნის შეცდომა: %m" -#: storage/file/fd.c:1919 +#: storage/file/fd.c:1916 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "დროებითი ფაილის (\"%s\") გახსნის შეცდომა: %m" -#: storage/file/fd.c:1960 +#: storage/file/fd.c:1957 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "დროებითი ფაილის (%s) ბმულის მოხსნის შეცდომა: %m" -#: storage/file/fd.c:2050 +#: storage/file/fd.c:2047 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ფაილის (\"%s\") წაშლის შეცდომა: %m" -#: storage/file/fd.c:2289 +#: storage/file/fd.c:2286 #, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "დროებითი ფაილის ზომა 'temp_file_limit\"-ს (%dკბ) აჭარბებს" -#: storage/file/fd.c:2655 storage/file/fd.c:2714 +#: 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:2759 +#: 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:2918 +#: 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:3449 +#: storage/file/fd.c:3446 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "დროებითი ფაილების საქაღალდეში აღმოჩენილია მოულოდნელი ფაილი: \"%s\"" -#: storage/file/fd.c:3567 +#: storage/file/fd.c:3564 #, c-format msgid "syncing data directory (syncfs), elapsed time: %ld.%02d s, current path: %s" msgstr "" -#: storage/file/fd.c:3794 +#: storage/file/fd.c:3791 #, c-format msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "" -#: storage/file/fd.c:3826 +#: storage/file/fd.c:3823 #, c-format msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "" -#: storage/file/fd.c:4015 +#: storage/file/fd.c:4012 #, c-format msgid "\"%s\" is not supported on this platform." msgstr "ამ პლატფორმაზე \"%s\" მხარდაჭერილი არაა." -#: storage/file/fd.c:4030 +#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 #, c-format msgid "Invalid list syntax in parameter \"%s\"." msgstr "არასწორი სიის სინტაქსი პარამეტრში \"%s\"." -#: storage/file/fd.c:4050 tcop/backend_startup.c:1054 +#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 #, c-format msgid "Invalid option \"%s\"." msgstr "არასწორი პარამეტრი \"%s\"." -#: storage/file/fd.c:4063 +#: storage/file/fd.c:4060 #, c-format msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "\"%s\" მხარდაჭერილი არაა WAL-სთვის, რადგან %s ძალიან პატარაა." -#: storage/file/fd.c:4071 +#: storage/file/fd.c:4068 #, c-format msgid "\"%s\" is not supported for data because %s is too small." msgstr "\"%s\" მხარდაჭერილი არაა მონაცემებისთვის, რადგან %s ძალიან პატარაა." @@ -23354,12 +23369,17 @@ msgstr "" msgid "still waiting for backend with PID %d to accept ProcSignalBarrier" msgstr "" -#: storage/ipc/procsignal.c:784 +#: 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:793 +#: storage/ipc/procsignal.c:797 #, c-format msgid "PID %d in cancel request did not match any process" msgstr "PID %d, მოთხოვნილი გაუქმების მოთხოვნაში, არც ერთ პროცესს არ ემთხვევა" @@ -24015,24 +24035,19 @@ msgstr "გაშვების პაკეტში PostgreSQL-ის მო #: tcop/backend_startup.c:884 #, c-format -msgid "invalid length of query cancel packet" +msgid "invalid length of cancel request packet" msgstr "მოთხოვნის გაუქმების პაკეტის სიგრძე არასწორია" #: tcop/backend_startup.c:892 #, c-format -msgid "invalid length of query cancel key" -msgstr "მოთხოვნის გაუქმების გასაღების სიგრძე არასწორია" +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/backend_startup.c:1080 -#, c-format -msgid "Invalid list syntax in parameter \"log_connections\"." -msgstr "არასწორი სიის სინტაქსი პარამეტრში \"log_connections\"." - #: tcop/fastpath.c:141 utils/fmgr/fmgr.c:2161 #, c-format msgid "function with OID %u does not exist" @@ -24396,12 +24411,12 @@ msgstr "" msgid "bind message has %d result formats but query has %d columns" msgstr "" -#: tcop/pquery.c:940 tcop/pquery.c:1693 +#: tcop/pquery.c:940 tcop/pquery.c:1684 #, c-format msgid "cursor can only scan forward" msgstr "კურსორს მხოლოდ წინ სკანირება შეუძლია" -#: tcop/pquery.c:941 tcop/pquery.c:1694 +#: tcop/pquery.c:941 tcop/pquery.c:1685 #, c-format msgid "Declare it with SCROLL option to enable backward scan." msgstr "" @@ -24677,92 +24692,92 @@ msgstr "%s დადებითი უნდა იყოს" msgid "%s must be >= 0" msgstr "" -#: utils/activity/pgstat.c:533 +#: utils/activity/pgstat.c:534 #, c-format msgid "could not unlink permanent statistics file \"%s\": %m" msgstr "" -#: utils/activity/pgstat.c:1440 +#: utils/activity/pgstat.c:1426 #, c-format msgid "invalid statistics kind: \"%s\"" msgstr "სტატისტიკის არასწორი ტიპი: \"%s\"" -#: utils/activity/pgstat.c:1485 +#: utils/activity/pgstat.c:1471 #, c-format msgid "custom cumulative statistics name is invalid" msgstr "კუმულატიური სტატისტიკის ხელით მითითებული სახელი არასწორია" -#: utils/activity/pgstat.c:1486 +#: utils/activity/pgstat.c:1472 #, c-format msgid "Provide a non-empty name for the custom cumulative statistics." msgstr "მიუთითეთ არაცარიელი სახელი მორგებული დაგროვებადი სტატისტიკისთვის." -#: utils/activity/pgstat.c:1489 +#: utils/activity/pgstat.c:1475 #, c-format msgid "custom cumulative statistics ID %u is out of range" msgstr "კუმულატიური სტატისტიკის ხელით მითითებული ID %u დიაპაზონს გარეთაა" -#: utils/activity/pgstat.c:1490 +#: 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:1495 utils/activity/pgstat.c:1522 utils/activity/pgstat.c:1535 +#: 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:1496 +#: 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:1505 +#: utils/activity/pgstat.c:1491 #, c-format msgid "custom cumulative statistics property is invalid" msgstr "" -#: utils/activity/pgstat.c:1506 +#: 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:1523 +#: 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:1536 +#: 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:1542 +#: utils/activity/pgstat.c:1528 #, c-format msgid "registered custom cumulative statistics \"%s\" with ID %u" msgstr "რეგისტრირებულია მორგებული კუმულაციური სტატისტიკა \"%s\" ID-ით %u" -#: utils/activity/pgstat.c:1611 +#: utils/activity/pgstat.c:1597 #, c-format msgid "could not open temporary statistics file \"%s\": %m" msgstr "სტატისტიკის დროებითი ფაილის (\"%s\") გახსნა შეუძლებელია: %m" -#: utils/activity/pgstat.c:1732 +#: utils/activity/pgstat.c:1718 #, c-format msgid "could not write temporary statistics file \"%s\": %m" msgstr "სტატისტიკის დროებითი ფაილში (\"%s\") ჩაწერა შეუძლებელია: %m" -#: utils/activity/pgstat.c:1741 +#: utils/activity/pgstat.c:1727 #, c-format msgid "could not close temporary statistics file \"%s\": %m" msgstr "სტატისტიკის დროებითი ფაილის (\"%s\") დახურვა შეუძლებელია: %m" -#: utils/activity/pgstat.c:1795 +#: utils/activity/pgstat.c:1781 #, c-format msgid "could not open statistics file \"%s\": %m" msgstr "სტატისტიკის ფაილის (\"%s\") გახსნა შეუძლებელია: %m" -#: utils/activity/pgstat.c:2035 +#: utils/activity/pgstat.c:2021 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "სტატისტიკის დაზიანებული ფაილი \"%s\"" @@ -24787,102 +24802,102 @@ msgstr "მოცდის მოვლენა \"%s\" უკვე არს msgid "too many custom wait events" msgstr "მეტისმეტად ბევრი მორგებული მოცდის მოვლენა" -#: utils/adt/acl.c:187 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:188 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 "" -#: utils/adt/acl.c:276 +#: utils/adt/acl.c:293 #, c-format msgid "unrecognized key word: \"%s\"" msgstr "უცნობი საკვანძო სიტყვა: \"%s\"" -#: utils/adt/acl.c:277 +#: utils/adt/acl.c:294 #, c-format msgid "ACL key word must be \"group\" or \"user\"." msgstr "ACL-ის საკვანძო სიტყვა უნდა იყოს \"group\" ან \"user\"." -#: utils/adt/acl.c:285 +#: utils/adt/acl.c:302 #, c-format msgid "missing name" msgstr "სახელი აკლია" -#: utils/adt/acl.c:286 +#: utils/adt/acl.c:303 #, c-format msgid "A name must follow the \"group\" or \"user\" key word." msgstr "" -#: utils/adt/acl.c:292 +#: utils/adt/acl.c:309 #, c-format msgid "missing \"=\" sign" msgstr "აკლია \"=\" ნიშანი" -#: utils/adt/acl.c:351 +#: utils/adt/acl.c:368 #, c-format msgid "invalid mode character: must be one of \"%s\"" msgstr "არასწორი რეჟიმის სიმბოლო: უნდა იყოს ერთ-ერთი სიიდან \"%s\"" -#: utils/adt/acl.c:381 +#: utils/adt/acl.c:398 #, c-format msgid "a name must follow the \"/\" sign" msgstr "\"/\" სიმბოლოს სახელი უნდა მოჰყვებოდეს" -#: utils/adt/acl.c:393 +#: utils/adt/acl.c:410 #, c-format msgid "defaulting grantor to user ID %u" msgstr "" -#: utils/adt/acl.c:579 +#: utils/adt/acl.c:596 #, c-format msgid "ACL array contains wrong data type" msgstr "ACL-ის მასივი მონაცემების არასწორ ტიპს შეიცავს" -#: utils/adt/acl.c:583 +#: utils/adt/acl.c:600 #, c-format msgid "ACL arrays must be one-dimensional" msgstr "ACL-ის მასივები ერთგანზომილებიანი უნდა იყოს" -#: utils/adt/acl.c:587 +#: utils/adt/acl.c:604 #, c-format msgid "ACL arrays must not contain null values" msgstr "ACL-ის მასივები ნულოვან მნიშვნელობებს არ უნდა შეიცავდეს" -#: utils/adt/acl.c:616 +#: utils/adt/acl.c:633 #, c-format msgid "extra garbage at the end of the ACL specification" msgstr "" -#: utils/adt/acl.c:1264 +#: utils/adt/acl.c:1281 #, c-format msgid "grant options cannot be granted back to your own grantor" msgstr "" -#: utils/adt/acl.c:1580 +#: utils/adt/acl.c:1597 #, c-format msgid "aclinsert is no longer supported" msgstr "aclinsert მხარდაჭერილი აღარაა" -#: utils/adt/acl.c:1590 +#: 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:3548 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:5330 +#: utils/adt/acl.c:5347 #, c-format msgid "must be able to SET ROLE \"%s\"" msgstr "უნდა შეეძლოს SET ROLE \"%s\"" @@ -25267,12 +25282,12 @@ msgstr "TIME(%d)%s-ის სიზუსტე უარყოფით არ msgid "TIME(%d)%s precision reduced to maximum allowed, %d" msgstr "" -#: utils/adt/date.c:168 utils/adt/date.c:176 utils/adt/formatting.c:4171 utils/adt/formatting.c:4180 utils/adt/formatting.c:4285 utils/adt/formatting.c:4295 +#: 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: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:2565 +#: 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 "თარიღი დიაპაზონს გარეთაა" @@ -25307,15 +25322,15 @@ msgstr "ერთეული \"%s\" ტიპისთვის %s მხარ msgid "unit \"%s\" not recognized for type %s" msgstr "ერთეული \"%s\" ტიპისთვის %s შეუძლებელია" -#: 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:4016 utils/adt/formatting.c:4052 utils/adt/formatting.c:4139 utils/adt/formatting.c:4261 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/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:2587 utils/adt/xml.c:2594 utils/adt/xml.c:2614 utils/adt/xml.c:2621 +#: 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:1601 utils/adt/date.c:2417 utils/adt/formatting.c:4344 +#: utils/adt/date.c:1601 utils/adt/date.c:2417 utils/adt/formatting.c:4345 #, c-format msgid "time out of range" msgstr "დროის მნიშვნელობა დიაპაზონს გარეთაა" @@ -25720,7 +25735,7 @@ msgstr "ველს %d სიმბოლო სჭირდება, მა msgid "If your source string is not fixed-width, try using the \"FM\" modifier." msgstr "" -#: utils/adt/formatting.c:2256 utils/adt/formatting.c:2269 utils/adt/formatting.c:2490 utils/adt/formatting.c:3390 +#: 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\"-თვის არასწორია" @@ -25735,7 +25750,7 @@ msgstr "" msgid "Value must be an integer." msgstr "მნიშვნელობა მთელი რიცხვი უნდა იყოს." -#: utils/adt/formatting.c:2276 +#: 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\"-ის მნიშვნელობა დიაპაზონს გარეთაა" @@ -25770,77 +25785,67 @@ msgstr "" msgid "Time zone abbreviation is not recognized." msgstr "დროის სარტყელის აბრევიატურა უცნობია." -#: utils/adt/formatting.c:3593 -#, c-format -msgid "invalid input string for \"Y,YYY\"" -msgstr "არასწორი შეყვანილი სტრიქონი \"Y,YYY\"-სთვის" - -#: utils/adt/formatting.c:3600 -#, c-format -msgid "value for \"Y,YYY\" in source string is out of range" -msgstr "წყარო სტრიქონში \"Y,YYY\"-ის მნიშვნელობები დიაპაზონს გარეთაა" - -#: utils/adt/formatting.c:3689 +#: utils/adt/formatting.c:3690 #, c-format msgid "input string is too short for datetime format" msgstr "შეყვანილი სტრიქონი datetime ფორმატისთვის მეტისმეტად მოკლეა" -#: utils/adt/formatting.c:3697 +#: utils/adt/formatting.c:3698 #, c-format msgid "trailing characters remain in input string after datetime format" msgstr "" -#: utils/adt/formatting.c:4241 +#: utils/adt/formatting.c:4242 #, c-format msgid "missing time zone in input string for type timestamptz" msgstr "" -#: utils/adt/formatting.c:4247 +#: utils/adt/formatting.c:4248 #, c-format msgid "timestamptz out of range" msgstr "timestamptz დიაპაზონს გარეთაა" -#: utils/adt/formatting.c:4275 +#: utils/adt/formatting.c:4276 #, c-format msgid "datetime format is zoned but not timed" msgstr "" -#: utils/adt/formatting.c:4324 +#: utils/adt/formatting.c:4325 #, c-format msgid "missing time zone in input string for type timetz" msgstr "" -#: utils/adt/formatting.c:4330 +#: utils/adt/formatting.c:4331 #, c-format msgid "timetz out of range" msgstr "timetz დიაპაზონს გარეთაა" -#: utils/adt/formatting.c:4356 +#: utils/adt/formatting.c:4357 #, c-format msgid "datetime format is not dated and not timed" msgstr "" -#: utils/adt/formatting.c:4533 +#: utils/adt/formatting.c:4534 #, c-format msgid "hour \"%d\" is invalid for the 12-hour clock" msgstr "საათი \"%d\" არასწორია 12-საათიანი ათვლისთვის" -#: utils/adt/formatting.c:4535 +#: 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:4712 +#: utils/adt/formatting.c:4713 #, c-format msgid "cannot calculate day of year without year information" msgstr "წლის დღის გამოთვლა წლის მითითების გარეშე შეუძლებელია" -#: utils/adt/formatting.c:5833 +#: utils/adt/formatting.c:5834 #, c-format msgid "\"EEEE\" not supported for input" msgstr "\"EEEE\" შეყვანისთვის მხარდაჭერილი არაა" -#: utils/adt/formatting.c:6110 +#: utils/adt/formatting.c:6111 #, c-format msgid "invalid Roman numeral" msgstr "არასწორი რომაული რიცხვი" @@ -25977,7 +25982,7 @@ msgstr "მასივს ორი სვეტი უნდა ჰქონ msgid "mismatched array dimensions" msgstr "მასივის ზომები არ ემთხვევა" -#: utils/adt/json.c:1850 utils/adt/jsonb_util.c:1963 +#: utils/adt/json.c:1850 utils/adt/jsonb_util.c:1969 #, c-format msgid "duplicate JSON object key value" msgstr "დუბლირებული JSON ობიექტის გასაღების მნიშვნელობა" @@ -26042,22 +26047,22 @@ msgstr "jsonb ობიექტის %s-ის ტიპში გადაყ msgid "cannot cast jsonb array or object to type %s" msgstr "jsonb ობიექტის ან მასივის %s-ის ტიპში გადაყვანა შეუძლებელია" -#: utils/adt/jsonb_util.c:763 +#: utils/adt/jsonb_util.c:760 #, c-format msgid "number of jsonb object pairs exceeds the maximum allowed (%zu)" msgstr "" -#: utils/adt/jsonb_util.c:804 +#: utils/adt/jsonb_util.c:801 #, c-format msgid "number of jsonb array elements exceeds the maximum allowed (%zu)" msgstr "" -#: utils/adt/jsonb_util.c:1678 utils/adt/jsonb_util.c:1698 +#: 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:1759 utils/adt/jsonb_util.c:1794 utils/adt/jsonb_util.c:1814 +#: 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 "" @@ -27166,7 +27171,7 @@ 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:6818 utils/misc/guc.c:6852 +#: 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 #, c-format msgid "invalid value for parameter \"%s\": %d" msgstr "არასწორი მნიშვნელობა პარამეტრისთვის \"%s\": %d" @@ -27923,136 +27928,136 @@ msgstr "არასწორი XML კომენტარი" msgid "not an XML document" msgstr "არ არის XML დოკუმენტი" -#: utils/adt/xml.c:1015 utils/adt/xml.c:1038 +#: utils/adt/xml.c:1020 utils/adt/xml.c:1043 #, c-format msgid "invalid XML processing instruction" msgstr "xml-ის დამუშავების არასწორი ინსტრუქცია" -#: utils/adt/xml.c:1016 +#: utils/adt/xml.c:1021 #, c-format msgid "XML processing instruction target name cannot be \"%s\"." msgstr "" -#: utils/adt/xml.c:1039 +#: utils/adt/xml.c:1044 #, c-format msgid "XML processing instruction cannot contain \"?>\"." msgstr "" -#: utils/adt/xml.c:1118 +#: utils/adt/xml.c:1123 #, c-format msgid "xmlvalidate is not implemented" msgstr "xmlvalidate განხორციელებული არაა" -#: utils/adt/xml.c:1174 +#: utils/adt/xml.c:1179 #, c-format msgid "could not initialize XML library" msgstr "xml ბიბლიოთეკის ინიციალიზება ვერ მოხერხდა" -#: utils/adt/xml.c:1175 +#: utils/adt/xml.c:1180 #, c-format msgid "libxml2 has incompatible char type: sizeof(char)=%zu, sizeof(xmlChar)=%zu." msgstr "libxml2 აქვს შეუთავსებელი char ტიპის: ზომა (char)=%zu, sizeof(xmlChar)=%zu." -#: utils/adt/xml.c:1261 +#: utils/adt/xml.c:1266 #, c-format msgid "could not set up XML error handler" msgstr "\"XML\" შეცდომების დამმუშავებლის მორგების შეცდომა" -#: utils/adt/xml.c:1262 +#: 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 "" -#: utils/adt/xml.c:2294 +#: utils/adt/xml.c:2283 msgid "Invalid character value." msgstr "სტრიქონის არასწორი მნშვნელობა." -#: utils/adt/xml.c:2297 +#: utils/adt/xml.c:2286 msgid "Space required." msgstr "საჭიროა გამოტოვება." -#: utils/adt/xml.c:2300 +#: utils/adt/xml.c:2289 msgid "standalone accepts only 'yes' or 'no'." msgstr "standalone-ის მნიშვნელობა შეიძლება იყოს \"yes\"(დიახ) ან \"no\"(არა)." -#: utils/adt/xml.c:2303 +#: utils/adt/xml.c:2292 msgid "Malformed declaration: missing version." msgstr "არასწორი აღწერა: ვერსია მითითებული არაა." -#: utils/adt/xml.c:2306 +#: utils/adt/xml.c:2295 msgid "Missing encoding in text declaration." msgstr "ტექსტის აღწერაში კოდირება მითითებული არაა." -#: utils/adt/xml.c:2309 +#: utils/adt/xml.c:2298 msgid "Parsing XML declaration: '?>' expected." msgstr "" -#: utils/adt/xml.c:2312 +#: utils/adt/xml.c:2301 #, c-format msgid "Unrecognized libxml error code: %d." msgstr "Libxml-ის შეცდომის უცნობი კოდი: %d." -#: utils/adt/xml.c:2566 +#: utils/adt/xml.c:2555 #, c-format msgid "XML does not support infinite date values." msgstr "XML-ს უსასრულო თარიღის მნიშვნელობების მხარდაჭერა არ გააჩნია." -#: utils/adt/xml.c:2588 utils/adt/xml.c:2615 +#: 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:3031 +#: utils/adt/xml.c:3020 #, c-format msgid "invalid query" msgstr "არასწორი მოთხოვნა" -#: utils/adt/xml.c:3123 +#: utils/adt/xml.c:3112 #, c-format msgid "portal \"%s\" does not return tuples" msgstr "პორტალი \"%s\" კორტეჟებს არ აბრუნებს" -#: utils/adt/xml.c:4375 +#: utils/adt/xml.c:4364 #, c-format msgid "invalid array for XML namespace mapping" msgstr "" -#: utils/adt/xml.c:4376 +#: utils/adt/xml.c:4365 #, c-format msgid "The array must be two-dimensional with length of the second axis equal to 2." msgstr "" -#: utils/adt/xml.c:4400 +#: utils/adt/xml.c:4389 #, c-format msgid "empty XPath expression" msgstr "ცარიელი XPath გამოხატულება" -#: utils/adt/xml.c:4452 +#: utils/adt/xml.c:4441 #, c-format msgid "neither namespace name nor URI may be null" msgstr "სახელების სივრცის სახელი და URI ნულოვანი არ შეიძლება, იყოს" -#: utils/adt/xml.c:4459 +#: utils/adt/xml.c:4448 #, c-format msgid "could not register XML namespace with name \"%s\" and URI \"%s\"" msgstr "" -#: utils/adt/xml.c:4808 +#: utils/adt/xml.c:4797 #, c-format msgid "DEFAULT namespace is not supported" msgstr "სახელების სივრცე DEFAULT მხარდაუჭერელია" -#: utils/adt/xml.c:4837 +#: utils/adt/xml.c:4826 #, c-format msgid "row path filter must not be empty string" msgstr "მწკრივის ბილიკის ფილტრი ცარიელი სტრიქონი არ შეიძლება იყოს" -#: utils/adt/xml.c:4871 +#: utils/adt/xml.c:4860 #, c-format msgid "column path filter must not be empty string" msgstr "სვეტის ბილიკის ფილტრი ცარიელი სტრიქონი არ შეიძლება იყოს" -#: utils/adt/xml.c:5018 +#: utils/adt/xml.c:5007 #, c-format msgid "more than one value returned by column XPath expression" msgstr "" @@ -28509,112 +28514,112 @@ msgstr "მეტისმეტად ბევრი კავშირი რ msgid "invalid role OID: %u" msgstr "როლის არასწორი OID: %u" -#: utils/init/miscinit.c:1197 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "მონაცემთა ბაზის სისტემა გათიშულია" -#: utils/init/miscinit.c:1284 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "ბლოკის ფაილის (%s) შექმნის შეცდომა: %m" -#: utils/init/miscinit.c:1298 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "ბლოკის ფაილის (%s) გახსნის შეცდომა: %m" -#: utils/init/miscinit.c:1305 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "ბლოკის ფაილის (%s) წაკითხვის შეცდომა: %m" -#: utils/init/miscinit.c:1314 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "ბლოკის ფაილი (\"%s\") ცარიელია" -#: utils/init/miscinit.c:1315 +#: 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:1359 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "ბლოკის ფაილი (\"%s\") უკვე არსებობს" -#: utils/init/miscinit.c:1363 +#: 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:1365 +#: 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:1368 +#: 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:1370 +#: 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:1421 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "ბლოკის ძველი ფაილის წაშლის შეცდომა \"%s\": %m" -#: utils/init/miscinit.c:1423 +#: 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:1460 utils/init/miscinit.c:1474 utils/init/miscinit.c:1485 +#: 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:1596 utils/init/miscinit.c:1738 utils/misc/guc.c:5763 +#: 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:1726 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "შეცდომა ფაილის (\"%s\") გახსნისას: %m; მაინც ვაგრძელებ" -#: utils/init/miscinit.c:1751 +#: 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:1790 utils/init/miscinit.c:1806 +#: 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:1792 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "ფაილი \"%s\" აკლია." -#: utils/init/miscinit.c:1808 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "ფაილი \"%s\" სწორ მონაცემებს არ შეიცავს." -#: utils/init/miscinit.c:1810 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "როგორც ჩანს, initdb გჭირდებათ." -#: utils/init/miscinit.c:1818 +#: 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, თავსებადი არაა." @@ -29004,7 +29009,7 @@ msgstr "პარამეტრი \"%s\" არ შეიძლება შ msgid "parameter \"%s\" cannot be changed now" msgstr "პარამეტრი \"%s\" ახლა არ შეიძლება შეიცვალოს" -#: utils/misc/guc.c:3538 utils/misc/guc.c:3600 utils/misc/guc.c:4668 utils/misc/guc.c:6754 +#: 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\") დაყენების წვდომა აკრძალულია" @@ -29029,12 +29034,12 @@ msgstr "პარამეტრის საწყის მნიშვნე msgid "parameter \"%s\" cannot be set locally in functions" msgstr "პარამეტრი \"%s\"-ის ფუნქციებში ლოკალურად დაყენება შეუძლებელია" -#: utils/misc/guc.c:4367 utils/misc/guc.c:4415 utils/misc/guc.c:5448 +#: 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:4368 utils/misc/guc.c:4416 utils/misc/guc.c:5449 +#: 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\" პრივილეგიის მქონე როლებს შეუძლიათ." @@ -29049,47 +29054,47 @@ msgstr "ამ გარემოში ALTER SYSTEM დაშვებული msgid "permission denied to perform ALTER SYSTEM RESET ALL" msgstr "\"ALTER SYSTEM RESET ALL\"-ის შესრულების წვდომა აკრძალულია" -#: utils/misc/guc.c:4737 +#: 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:4782 +#: utils/misc/guc.c:4787 #, c-format msgid "could not parse contents of file \"%s\"" msgstr "ფაილის დშემცველობის ამუშავების შეცდომა \"%s\"" -#: utils/misc/guc.c:4965 +#: utils/misc/guc.c:4970 #, c-format msgid "attempt to redefine parameter \"%s\"" msgstr "პარამეტრის თავიდან აღწერის მცდელობა: \"%s\"" -#: utils/misc/guc.c:5304 +#: utils/misc/guc.c:5309 #, c-format msgid "invalid configuration parameter name \"%s\", removing it" msgstr "კონფიგურაციის პარამეტრის არასწორი სახელი: \"%s\". წაიშლება" -#: utils/misc/guc.c:5306 +#: utils/misc/guc.c:5311 #, c-format msgid "\"%s\" is now a reserved prefix." msgstr "\"%s\" ახლა დაცული პრეფიქსია." -#: utils/misc/guc.c:6177 +#: utils/misc/guc.c:6182 #, c-format msgid "while setting parameter \"%s\" to \"%s\"" msgstr "პარამეტრის \"%s\" \"%s\"-ზე დაყენებისას" -#: utils/misc/guc.c:6346 +#: utils/misc/guc.c:6351 #, c-format msgid "parameter \"%s\" could not be set" msgstr "პარამეტრის დაყენების შეცდომა: \"%s\"" -#: utils/misc/guc.c:6436 +#: utils/misc/guc.c:6441 #, c-format msgid "could not parse setting for parameter \"%s\"" msgstr "პარამეტრის მნიშვნელობის დამუშავების შეცდომა: %s" -#: utils/misc/guc.c:6886 +#: utils/misc/guc.c:6897 #, c-format msgid "invalid value for parameter \"%s\": %g" msgstr "არასწორი მნიშვნელობა პარამეტრისთვის \"%s\": %g" @@ -29407,8 +29412,8 @@ msgid "Enables reordering of GROUP BY keys." msgstr "გასაღების (GROUP BY) გადალაგების ჩართვა." #: utils/misc/guc_tables.c:1031 -msgid "Enables reordering of DISTINCT pathkeys." -msgstr "ჩართავს DISTINCT ბილიკის გასაღებების გადალაგებას." +msgid "Enables reordering of DISTINCT keys." +msgstr "ჩართავს DISTINCT გასაღებების გადალაგებას." #: utils/misc/guc_tables.c:1041 msgid "Enables genetic query optimization." @@ -31115,7 +31120,7 @@ msgid "Sets the group(s) to use for Diffie-Hellman key exchange." msgstr "" #: utils/misc/guc_tables.c:4840 -msgid "Multiple groups can be specified using colon-separated list." +msgid "Multiple groups can be specified using a colon-separated list." msgstr "" #: utils/misc/guc_tables.c:4854 @@ -31638,6 +31643,14 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "\"%s\" is not a partition" #~ msgstr "\"%s\" დანაყოფი არაა" +#, c-format +#~ msgid "\"%s\" must be set to -1 during binary upgrade mode." +#~ msgstr "ბინარული განახლების რეჟიმისას \"%s\"-ის მნიშვნელობა -1-ზე უნდა დააყენოთ." + +#, c-format +#~ msgid "\"%s\" must be set to 0 during binary upgrade mode." +#~ msgstr "ბინარული განახლების რეჟიმისას \"%s\"-ის მნიშვნელობა 0-ზე უნდა დააყენოთ." + #, c-format #~ msgid "\"%s\" must be set to 0 on platforms that lack support for issuing read-ahead advice." #~ msgstr "\"%s\" უნდა იყოს 0 პლატფორმებზე, რომლებსაც წინასწარ-წაკითხვის მითითების მხარდაჭერა არ გააჩნიათ." @@ -31674,6 +31687,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "%s cannot be executed within a pipeline" #~ msgstr "%s ფუნქციიდან ვერ გაეშვება" +#, c-format +#~ msgid "%s requires a \"none\" or \"stored\" value" +#~ msgstr "%s მოითხოვს მნიშვნელობას \"none' ან \"stored\"" + #, c-format #~ msgid "%s with OID %u does not exist" #~ msgstr "%s OID-ით %u არ არსებობს" @@ -31845,6 +31862,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "Incremental parser requires incremental lexer" #~ msgstr "ინკრემენტულ დამმუშავებელს ინკრემენტული lexer სჭირდება" +#, c-format +#~ msgid "Invalid list syntax in parameter \"log_connections\"." +#~ msgstr "არასწორი სიის სინტაქსი პარამეტრში \"log_connections\"." + #, c-format #~ msgid "Invalid list syntax in parameter %s" #~ msgstr "არასწორი სიის სინტაქსი პარამეტრში %s" @@ -32142,6 +32163,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "column \"%s\" of relation \"%s\" is not a stored generated column" #~ msgstr "ურთიერთობის \"%2$s\" სვეტი \"%1$s\" დამახსოვრებული გენერირებული სვეტი არაა" +#, c-format +#~ msgid "constraint \"%s\" of relation \"%s\" is not a foreign key, check, or not-null constraint" +#~ msgstr "შეზღუდვა \"%s\" ურთიერთობისთვის \"%s\" გარე გასაღებს, შემოწმებას, ან არანულოვან შეზღუდვას არ წარმოადგენს" + #, c-format #~ msgid "conversion with OID %u does not exist" #~ msgstr "გადაყვანა OID-ით %u არ არსებობს" @@ -32314,10 +32339,18 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "invalid checkpoint link in backup_label file" #~ msgstr "backup_label ფაილში არსებული საკონტროლო წერტილი არასწორია" +#, c-format +#~ msgid "invalid input string for \"Y,YYY\"" +#~ msgstr "არასწორი შეყვანილი სტრიქონი \"Y,YYY\"-სთვის" + #, c-format #~ msgid "invalid length of primary checkpoint record" #~ msgstr "ძირითადი საკონტროლო წერტილის ჩანაწერის არასწორი სიგრძე" +#, c-format +#~ msgid "invalid length of query cancel key" +#~ msgstr "მოთხოვნის გაუქმების გასაღების სიგრძე არასწორია" + #, c-format #~ msgid "invalid parameter name \"%s\"" #~ msgstr "პარამეტრის არასწორი სახელი \"%s\"" @@ -32606,6 +32639,10 @@ msgstr "სხვა ბაზიდან სწრაფი ასლის #~ msgid "upper bound of partition \"%s\" is not equal to upper bound of split partition" #~ msgstr "ზედა ზღვარი დანაყოფისთვის \"%s\" არ უდრის დაყოფილი დანაყოფის ზედა საზღვარს" +#, c-format +#~ msgid "value for \"Y,YYY\" in source string is out of range" +#~ msgstr "წყარო სტრიქონში \"Y,YYY\"-ის მნიშვნელობები დიაპაზონს გარეთაა" + #, c-format #~ msgid "wal_level must be set to \"replica\" or \"logical\" at server start." #~ msgstr "სერვისის გაშვებისას wal_level -ის მნიშვნელობა უნდა იყოს \"replica\" ან \"logical\"." diff --git a/src/backend/po/ru.po b/src/backend/po/ru.po index f8e7152cd84f1..0e18a5fb5738b 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. -# Alexander Lakhin , 2012-2025. +# SPDX-FileCopyrightText: 2012-2025 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-02-08 07:44+0200\n" -"PO-Revision-Date: 2025-02-08 08:50+0200\n" +"POT-Creation-Date: 2025-08-30 15:58+0300\n" +"PO-Revision-Date: 2025-08-09 07:31+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -88,34 +88,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:3807 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:3477 -#: access/transam/xlog.c:4341 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:5113 -#: 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: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 #, 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:3482 access/transam/xlog.c:4346 -#: 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:2489 +#: replication/slot.c:2530 replication/walsender.c:634 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -126,17 +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:1784 access/transam/xlog.c:3323 -#: access/transam/xlog.c:3517 access/transam/xlog.c:3522 -#: access/transam/xlog.c:3658 access/transam/xlog.c:4311 -#: access/transam/xlog.c:5246 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:5165 -#: 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/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:2373 replication/slot.c:2537 replication/walsender.c:644 +#: 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" @@ -161,105 +162,106 @@ msgstr "" "установленный 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:1309 access/transam/xlog.c:3230 -#: access/transam/xlog.c:3393 access/transam/xlog.c:3432 -#: access/transam/xlog.c:3625 access/transam/xlog.c:4331 -#: access/transam/xlogrecovery.c:4264 access/transam/xlogrecovery.c:4367 -#: 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:3766 -#: replication/logical/reorderbuffer.c:4320 -#: replication/logical/reorderbuffer.c:5093 -#: 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:1580 utils/init/miscinit.c:1714 -#: utils/init/miscinit.c:1791 utils/misc/guc.c:4777 utils/misc/guc.c:4827 +#: 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/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 #, 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:1757 access/transam/twophase.c:1766 -#: access/transam/xlog.c:9280 access/transam/xlogfuncs.c:698 +#: access/transam/twophase.c:1756 access/transam/twophase.c:1765 +#: access/transam/xlog.c:9324 access/transam/xlogfuncs.c:699 #: backup/basebackup_server.c:173 backup/basebackup_server.c:266 -#: backup/walsummary.c:304 postmaster/postmaster.c:4127 -#: 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:1778 -#: access/transam/xlog.c:3316 access/transam/xlog.c:3511 -#: access/transam/xlog.c:4304 access/transam/xlog.c:8655 -#: access/transam/xlog.c:8700 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:1331 storage/smgr/md.c:1376 -#: storage/sync/sync.c:446 utils/misc/guc.c:4530 +#: 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:8710 +#: access/transam/xlog.c:8754 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 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "не удалось синхронизировать с ФС файл \"%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:852 ../common/psprintf.c:143 -#: ../common/scram-common.c:268 ../common/stringinfo.c:314 ../port/path.c:828 -#: ../port/path.c:865 ../port/path.c:882 access/transam/twophase.c:1418 -#: 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:3560 postmaster/postmaster.c:4021 -#: postmaster/postmaster.c:4383 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:532 -#: utils/adt/pg_locale.c:696 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:4508 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: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: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:1159 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" @@ -283,34 +285,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:654 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:1589 storage/ipc/latch.c:1751 -#: storage/ipc/latch.c:1877 +#: ../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 #, 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:830 ../port/path.c:867 -#: ../port/path.c:884 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" @@ -320,51 +322,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:1321 +#: ../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:700 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:3796 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:1470 -#: 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:988 +#: replication/slot.c:2245 replication/slot.c:2387 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" @@ -373,92 +375,92 @@ 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." @@ -466,40 +468,45 @@ 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 +#, fuzzy +msgid "out of memory while constructing error description" +msgstr "не удалось выделить память для декодирования записи длины %u" + +#: ../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 "подсказка: " @@ -594,7 +601,7 @@ msgstr "не удалось декодировать имя файла" msgid "file size is not an integer" msgstr "размер файла не является целочисленным" -#: ../common/parse_manifest.c:699 backup/basebackup.c:870 +#: ../common/parse_manifest.c:699 backup/basebackup.c:872 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "нераспознанный алгоритм расчёта контрольных сумм: \"%s\"" @@ -663,9 +670,9 @@ 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:4712 utils/misc/guc.c:6931 -#: utils/misc/guc.c:6972 +#: 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\"" @@ -727,22 +734,22 @@ 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:1717 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:4589 -#: 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: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: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" @@ -759,16 +766,21 @@ msgstr "не удалось закодировать сохранённый кл msgid "could not encode server key" msgstr "не удалось закодировать ключ сервера" -#: ../common/stringinfo.c:315 +#: ../common/stringinfo.c:362 +#, fuzzy, c-format +msgid "string buffer exceeds maximum allowed length (%zu bytes)" +msgstr "длина битовой строки превышает предел (%d)" + +#: ../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 -#, c-format +#: ../common/stringinfo.c:367 +#, fuzzy, c-format msgid "" -"out of memory\n" +"string buffer exceeds maximum allowed length (%zu bytes)\n" "\n" "Cannot enlarge string buffer containing %d bytes by %d more bytes.\n" msgstr "" @@ -782,7 +794,7 @@ msgstr "" msgid "could not look up effective user ID %ld: %s" msgstr "выяснить эффективный идентификатор пользователя (%ld) не удалось: %s" -#: ../common/username.c:45 libpq/auth.c:1888 +#: ../common/username.c:45 msgid "user does not exist" msgstr "пользователь не существует" @@ -821,12 +833,12 @@ msgstr "дочерний процесс завершён по сигналу %d: 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 "" @@ -879,7 +891,7 @@ msgstr "" "Возможно, работе СУБД мешает антивирус, программа резервного копирования или " "что-то подобное." -#: ../port/path.c:852 +#: ../port/path.c:853 #, c-format msgid "could not get current working directory: %m\n" msgstr "не удалось определить текущий рабочий каталог: %m\n" @@ -889,16 +901,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 "локальный пользователь с ID %d не существует" - #: ../port/win32security.c:62 #, c-format msgid "could not get SID for Administrators group: error code %lu\n" @@ -916,7 +918,7 @@ 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 " @@ -925,43 +927,45 @@ 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:190 statistics/attribute_stats.c:934 +#: 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 -#, c-format -msgid "block number out of range: %lld" +#: access/brin/brin.c:1403 access/brin/brin.c:1510 +#, fuzzy, c-format +msgid "block number out of range: %" msgstr "номер блока вне диапазона: %lld" -#: 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:2455 #, 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 @@ -972,7 +976,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\"" @@ -989,9 +993,9 @@ 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 " @@ -1000,9 +1004,9 @@ 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 " @@ -1011,9 +1015,9 @@ 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 " @@ -1022,9 +1026,9 @@ 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 " @@ -1033,9 +1037,9 @@ 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 " @@ -1044,8 +1048,8 @@ 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 " @@ -1054,7 +1058,7 @@ 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) " @@ -1063,37 +1067,39 @@ 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 -#, c-format -msgid "Returned type %s does not match expected type %s in column %d." +#: access/common/attmap.c:118 +#, fuzzy, c-format +msgid "" +"Returned type %s does not match expected type %s in column \"%s\" (position " +"%d)." msgstr "Возвращаемый тип %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 " @@ -1101,12 +1107,12 @@ msgid "" 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)" @@ -1116,96 +1122,101 @@ msgstr "число столбцов (%d) превышает предел (%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 "Допускаются только значения \"on\", \"off\" и \"auto\"." -#: 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:1214 +#: 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 "Задайте параметры хранения для её конечных секций." @@ -1250,26 +1261,27 @@ msgstr "обращаться к временным индексам других msgid "failed to re-find tuple within index \"%s\"" msgstr "не удалось повторно найти кортеж в индексе \"%s\"" -#: access/gin/ginscan.c:431 +#: 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 +#, 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:2200 -#: 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 " @@ -1278,7 +1290,7 @@ 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 " @@ -1286,18 +1298,18 @@ msgid "" 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 " @@ -1306,8 +1318,8 @@ 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 @@ -1315,7 +1327,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)" @@ -1335,19 +1347,19 @@ 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 " @@ -1356,7 +1368,7 @@ 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 " @@ -1365,21 +1377,22 @@ msgstr "" "семейство операторов \"%s\" метода доступа %s содержит некорректное " "определение ORDER BY для оператора %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:2021 commands/tablecmds.c:18178 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: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 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Задайте правило сортировки явно в предложении COLLATE." @@ -1390,7 +1403,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 "Значения, не умещающиеся в страницу буфера, нельзя проиндексировать." @@ -1405,7 +1418,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 "хеш-индексы не поддерживают сканирование всего индекса" @@ -1420,7 +1433,7 @@ 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 " @@ -1429,46 +1442,46 @@ 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:2206 +#: access/heap/heapam.c:2280 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "вставлять кортежи в параллельном исполнителе нельзя" -#: access/heap/heapam.c:2725 +#: access/heap/heapam.c:2803 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "удалять кортежи во время параллельных операций нельзя" -#: access/heap/heapam.c:2772 +#: access/heap/heapam.c:2850 #, c-format msgid "attempted to delete invisible tuple" msgstr "попытка удаления невидимого кортежа" -#: access/heap/heapam.c:3220 access/heap/heapam.c:6501 access/index/genam.c:818 +#: access/heap/heapam.c:3300 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "изменять кортежи во время параллельных операций нельзя" -#: access/heap/heapam.c:3397 +#: access/heap/heapam.c:3477 #, c-format msgid "attempted to update invisible tuple" msgstr "попытка изменения невидимого кортежа" -#: access/heap/heapam.c:4908 access/heap/heapam.c:4946 -#: access/heap/heapam.c:5211 access/heap/heapam_handler.c:468 +#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 +#: access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "не удалось получить блокировку строки в таблице \"%s\"" -#: access/heap/heapam.c:6314 commands/trigger.c:3340 -#: executor/nodeModifyTable.c:2376 executor/nodeModifyTable.c:2467 +#: access/heap/heapam.c:6405 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 " @@ -1477,7 +1490,7 @@ msgstr "" "кортеж, который должен быть изменён, уже модифицирован в операции, вызванной " "текущей командой" -#: access/heap/heapam_handler.c:413 +#: access/heap/heapam_handler.c:415 #, c-format msgid "" "tuple to be locked was already moved to another partition due to concurrent " @@ -1498,14 +1511,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:3255 access/transam/xlog.c:3446 -#: access/transam/xlog.c:4283 access/transam/xlog.c:9269 -#: 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:4114 -#: 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:9313 +#: 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:1252 #, c-format msgid "could not create file \"%s\": %m" msgstr "не удалось создать файл \"%s\": %m" @@ -1517,36 +1530,36 @@ 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:3305 access/transam/xlog.c:3502 -#: access/transam/xlog.c:4295 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:1655 -#: utils/init/miscinit.c:1666 utils/init/miscinit.c:1674 utils/misc/guc.c:4491 -#: utils/misc/guc.c:4522 utils/misc/guc.c:5675 utils/misc/guc.c:5693 -#: 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: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: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\": " @@ -1555,7 +1568,7 @@ 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: " @@ -1564,104 +1577,116 @@ 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 -#, c-format -msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n" +#: access/heap/vacuumlazy.c:1015 +#, fuzzy, c-format +msgid "" +"pages: %u removed, %u remain, %u scanned (%.2f%% of total), %u eagerly " +"scanned\n" msgstr "" "страниц удалено: %u, осталось: %u, просканировано: %u (%.2f%% от общего " "числа)\n" -#: access/heap/vacuumlazy.c:660 -#, c-format +#: access/heap/vacuumlazy.c:1024 +#, fuzzy, c-format msgid "" -"tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n" +"tuples: % removed, % remain, % are dead but not yet " +"removable\n" msgstr "" "версий строк: удалено: %lld, осталось: %lld, «мёртвых», но ещё не подлежащих " "удалению: %lld\n" -#: access/heap/vacuumlazy.c:666 -#, c-format +#: access/heap/vacuumlazy.c:1030 +#, fuzzy, c-format msgid "" -"tuples missed: %lld dead from %u pages not removed due to cleanup lock " +"tuples missed: % dead from %u pages not removed due to cleanup lock " "contention\n" msgstr "" "из-за конфликта блокировки очистки пропущено версий строк: %lld, на " "страницах: %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 "" "XID отсечки удаления: %u, на момент завершения операции он имел возраст: %d " "XID\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 XID\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 MXID\n" -#: access/heap/vacuumlazy.c:690 -#, c-format -msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n" +#: access/heap/vacuumlazy.c:1054 +#, fuzzy, c-format +msgid "" +"frozen: %u pages from table (%.2f%% of total) had % tuples frozen\n" msgstr "" "замораживание: на страницах таблицы (%u, %.2f%% от общего числа) заморожено " "кортежей: %lld\n" -#: access/heap/vacuumlazy.c:698 +#: access/heap/vacuumlazy.c:1062 +#, c-format +msgid "" +"visibility map: %u pages set all-visible, %u pages set all-frozen (%u were " +"all-visible)\n" +msgstr "" + +#: 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 -#, c-format +#: access/heap/vacuumlazy.c:1074 +#, fuzzy, c-format msgid "" -"%u pages from table (%.2f%% of total) had %lld dead item identifiers " +"%u pages from table (%.2f%% of total) had % dead item identifiers " "removed\n" msgstr "" "на страницах таблицы (%u, %.2f%% от общего числа) удалено мёртвых " "идентификаторов элементов: %lld\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 -#, c-format -msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n" +#: access/heap/vacuumlazy.c:1083 +#, fuzzy, c-format +msgid "" +"%u pages from table (%.2f%% of total) have % dead item identifiers\n" msgstr "" "на страницах таблицы (%u, %.2f%% от общего числа) находится мёртвых " "идентификаторов элементов: %lld\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 " @@ -1670,43 +1695,57 @@ 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 "" + +#: 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 -#, c-format -msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n" +#: access/heap/vacuumlazy.c:1134 commands/analyze.c:830 +#, fuzzy, c-format +msgid "buffer usage: % hits, % reads, % dirtied\n" msgstr "" "использование буфера: попаданий: %lld, промахов: %lld, «грязных» записей: " "%lld\n" -#: access/heap/vacuumlazy.c:756 -#, c-format -msgid "WAL usage: %lld records, %lld full page images, %llu bytes\n" +#: access/heap/vacuumlazy.c:1139 commands/analyze.c:835 +#, fuzzy, c-format +msgid "" +"WAL usage: % records, % full page images, % bytes, " +"% buffers full\n" msgstr "" "использование WAL: записей: %lld, полных образов страниц: %lld, байт: %llu\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:2170 +#: access/heap/vacuumlazy.c:1432 #, c-format -msgid "table \"%s\": removed %lld dead item identifiers in %u pages" +msgid "" +"disabling eager scanning after freezing %u eagerly scanned blocks of " +"relation \"%s.%s.%s\"" +msgstr "" + +#: access/heap/vacuumlazy.c:2821 +#, fuzzy, c-format +msgid "table \"%s\": removed % dead item identifiers in %u pages" msgstr "" "таблица \"%s\": удалено мёртвых идентификаторов элементов: %lld, на " "страницах: %u" -#: access/heap/vacuumlazy.c:2324 +#: access/heap/vacuumlazy.c:2982 #, c-format msgid "" "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after " @@ -1715,12 +1754,12 @@ msgstr "" "несущественная операция обслуживания таблицы \"%s.%s.%s\" пропускается в " "качестве меры защиты после %d сканирований индекса" -#: access/heap/vacuumlazy.c:2327 +#: 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:2328 +#: access/heap/vacuumlazy.c:2986 #, c-format msgid "" "Consider increasing configuration parameter \"maintenance_work_mem\" or " @@ -1733,23 +1772,23 @@ msgstr "" "Также можно рассмотреть другие способы обеспечения производительности " "VACUUM, соответствующей скорости выделения идентификаторов транзакций." -#: access/heap/vacuumlazy.c:2590 +#: access/heap/vacuumlazy.c:3248 #, c-format msgid "\"%s\": stopping truncate due to conflicting lock request" msgstr "\"%s\": остановка усечения из-за конфликтующего запроса блокировки" -#: access/heap/vacuumlazy.c:2660 +#: access/heap/vacuumlazy.c:3318 #, c-format msgid "table \"%s\": truncated %u to %u pages" msgstr "таблица \"%s\": усечение (было страниц: %u, стало: %u)" -#: access/heap/vacuumlazy.c:2722 +#: access/heap/vacuumlazy.c:3380 #, c-format msgid "table \"%s\": suspending truncate due to conflicting lock request" msgstr "" "таблица \"%s\": приостановка усечения из-за конфликтующего запроса блокировки" -#: access/heap/vacuumlazy.c:2841 +#: access/heap/vacuumlazy.c:3499 #, c-format msgid "" "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary " @@ -1758,47 +1797,47 @@ msgstr "" "отключение параллельного режима очистки \"%s\" --- создавать временные " "таблицы в параллельном режиме нельзя" -#: access/heap/vacuumlazy.c:3108 +#: access/heap/vacuumlazy.c:3766 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "при сканировании блока %u (смещение %u) отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3111 +#: access/heap/vacuumlazy.c:3769 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "при сканировании блока %u отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3115 +#: access/heap/vacuumlazy.c:3773 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "при сканировании отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3123 +#: access/heap/vacuumlazy.c:3781 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "при очистке блока %u (смещение %u) отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3126 +#: access/heap/vacuumlazy.c:3784 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "при очистке блока %u отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3130 +#: access/heap/vacuumlazy.c:3788 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "при очистке отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3135 commands/vacuumparallel.c:1112 +#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "при очистке индекса \"%s\" отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3140 commands/vacuumparallel.c:1118 +#: access/heap/vacuumlazy.c:3798 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "при уборке индекса \"%s\" отношения \"%s.%s\"" -#: access/heap/vacuumlazy.c:3146 +#: access/heap/vacuumlazy.c:3804 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "при усечении отношения \"%s.%s\" до %u блок." @@ -1813,24 +1852,24 @@ msgstr "метод доступа \"%s\" имеет не тип %s" msgid "index access method \"%s\" does not have a handler" msgstr "для метода доступа индекса \"%s\" не задан обработчик" -#: access/index/genam.c:489 +#: access/index/genam.c:498 #, c-format msgid "transaction aborted during system catalog scan" msgstr "транзакция прервана во время сканирования системного каталога" -#: access/index/genam.c:657 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:2851 commands/tablecmds.c:281 commands/tablecmds.c:305 -#: commands/tablecmds.c:17873 commands/tablecmds.c:19762 +#: 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 #, 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 нет параметров" @@ -1851,7 +1890,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:2505 #, c-format msgid "index \"%s\" is not a btree" msgstr "индекс \"%s\" не является b-деревом" @@ -1879,7 +1918,7 @@ msgstr "" "Причиной тому могло быть прерывание операции VACUUM в версии 9.3 или старее, " "до обновления. Этот индекс нужно перестроить (REINDEX)." -#: access/nbtree/nbtutils.c:5108 +#: access/nbtree/nbtutils.c:4196 #, c-format msgid "" "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" @@ -1887,12 +1926,12 @@ msgstr "" "размер строки индекса (%zu) больше предельного для btree версии %u размера " "(%zu) (индекс \"%s\")" -#: access/nbtree/nbtutils.c:5114 +#: access/nbtree/nbtutils.c:4201 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "Строка индекса ссылается на кортеж (%u,%u) в отношении \"%s\"." -#: access/nbtree/nbtutils.c:5118 +#: access/nbtree/nbtutils.c:4205 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -1904,7 +1943,7 @@ msgstr "" "Возможно, вам стоит применить индекс функции с 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 " @@ -1919,7 +1958,7 @@ msgstr "" 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" @@ -1927,19 +1966,19 @@ 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 " @@ -1948,28 +1987,28 @@ 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 "идентификатор кортежа (%u, %u) недопустим для отношения \"%s\"" -#: access/table/tableamapi.c:109 +#: access/table/tableamapi.c:106 #, c-format msgid "\"%s\" cannot be empty." msgstr "Значение \"%s\" не может быть пустым." # well-spelled: симв -#: access/table/tableamapi.c:116 access/transam/xlogrecovery.c:4859 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4879 #, 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\" не существует." @@ -2001,7 +2040,7 @@ msgstr "" msgid "Make sure the configuration parameter \"%s\" is set." msgstr "Убедитесь, что в конфигурации установлен параметр \"%s\"." -#: access/transam/multixact.c:1091 +#: access/transam/multixact.c:1097 #, c-format msgid "" "database is not accepting commands that assign new MultiXactIds to avoid " @@ -2010,8 +2049,8 @@ 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: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 #, c-format msgid "" @@ -2023,7 +2062,7 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1104 #, c-format msgid "" "database is not accepting commands that assign new MultiXactIds to avoid " @@ -2032,7 +2071,7 @@ msgstr "" "база данных не принимает команды, назначающие новые MultiXactId, во " "избежание потери данных из-за зацикливания в базе данных с OID %u" -#: access/transam/multixact.c:1119 access/transam/multixact.c:2474 +#: access/transam/multixact.c:1125 access/transam/multixact.c:2482 #, c-format msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used" msgid_plural "" @@ -2047,7 +2086,7 @@ msgstr[2] "" "база данных \"%s\" должна быть очищена, прежде чем будут использованы " "оставшиеся MultiXactId (%u)" -#: access/transam/multixact.c:1128 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1134 access/transam/multixact.c:2491 #, c-format msgid "" "database with OID %u must be vacuumed before %u more MultiXactId is used" @@ -2063,12 +2102,12 @@ msgstr[2] "" "база данных с OID %u должна быть очищена, прежде чем будут использованы " "оставшиеся MultiXactId (%u)" -#: access/transam/multixact.c:1189 +#: access/transam/multixact.c:1195 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "слишком много членов мультитранзакции" -#: access/transam/multixact.c:1190 +#: access/transam/multixact.c:1196 #, c-format msgid "" "This command would create a multixact with %u members, but the remaining " @@ -2086,7 +2125,7 @@ msgstr[2] "" "Мультитранзакция, создаваемая этой командой, должна включать членов: %u, но " "оставшегося места хватает только для %u." -#: access/transam/multixact.c:1195 +#: access/transam/multixact.c:1201 #, c-format msgid "" "Execute a database-wide VACUUM in database with OID %u with reduced " @@ -2096,7 +2135,7 @@ msgstr "" "Выполните очистку (VACUUM) всей базы данных с OID %u, уменьшив значения " "\"vacuum_multixact_freeze_min_age\" и \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1226 +#: access/transam/multixact.c:1232 #, c-format msgid "" "database with OID %u must be vacuumed before %d more multixact member is used" @@ -2113,7 +2152,7 @@ msgstr[2] "" "база данных с OID %u должна быть очищена, пока не использованы оставшиеся " "члены мультитранзакций (%d)" -#: access/transam/multixact.c:1231 +#: access/transam/multixact.c:1237 #, c-format msgid "" "Execute a database-wide VACUUM in that database with reduced " @@ -2123,17 +2162,17 @@ msgstr "" "Выполните очистку (VACUUM) всей этой базы данных, уменьшив значения " "\"vacuum_multixact_freeze_min_age\" и \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1371 +#: access/transam/multixact.c:1377 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u прекратил существование: видимо, произошло зацикливание" -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1383 #, 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:2487 access/transam/multixact.c:2496 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in " @@ -2146,7 +2185,7 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: access/transam/multixact.c:2767 +#: access/transam/multixact.c:2775 #, c-format msgid "" "MultiXact member wraparound protections are disabled because oldest " @@ -2155,12 +2194,12 @@ msgstr "" "Защита от зацикливания членов мультитранзакций отключена, так как старейшая " "отмеченная мультитранзакция %u не найдена на диске" -#: access/transam/multixact.c:2789 +#: access/transam/multixact.c:2797 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "Защита от зацикливания мультитранзакций сейчас включена" -#: access/transam/multixact.c:3180 +#: access/transam/multixact.c:3188 #, c-format msgid "" "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" @@ -2168,7 +2207,7 @@ msgstr "" "старейшая мультитранзакция %u не найдена, новейшая мультитранзакция: %u, " "усечение пропускается" -#: access/transam/multixact.c:3198 +#: access/transam/multixact.c:3206 #, c-format msgid "" "cannot truncate up to MultiXact %u because it does not exist on disk, " @@ -2177,41 +2216,41 @@ msgstr "" "выполнить усечение до мультитранзакции %u нельзя ввиду её отсутствия на " "диске, усечение пропускается" -#: access/transam/multixact.c:3517 +#: access/transam/multixact.c:3525 #, c-format msgid "invalid MultiXactId: %u" msgstr "неверный MultiXactId: %u" -#: access/transam/parallel.c:748 access/transam/parallel.c:867 +#: access/transam/parallel.c:752 access/transam/parallel.c:871 #, c-format msgid "parallel worker failed to initialize" msgstr "не удалось инициализировать параллельный исполнитель" -#: access/transam/parallel.c:749 access/transam/parallel.c:868 +#: access/transam/parallel.c:753 access/transam/parallel.c:872 #, c-format msgid "More details may be available in the server log." msgstr "Дополнительная информация может быть в журнале сервера." -#: access/transam/parallel.c:929 +#: access/transam/parallel.c:933 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster завершился в процессе параллельной транзакции" -#: access/transam/parallel.c:1116 +#: access/transam/parallel.c:1120 #, c-format msgid "lost connection to parallel worker" msgstr "потеряно подключение к параллельному исполнителю" -#: access/transam/parallel.c:1172 access/transam/parallel.c:1174 +#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 msgid "parallel worker" msgstr "параллельный исполнитель" -#: access/transam/parallel.c:1344 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 #, c-format msgid "could not map dynamic shared memory segment" msgstr "не удалось отобразить динамический сегмент разделяемой памяти" -#: access/transam/parallel.c:1349 replication/logical/applyparallelworker.c:896 +#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:896 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "неверное магическое число в динамическом сегменте разделяемой памяти" @@ -2282,67 +2321,67 @@ msgstr "Существующий менеджер ресурсов с ID %d им msgid "registered custom resource manager \"%s\" with ID %d" msgstr "зарегистрирован пользовательский менеджер ресурсов \"%s\" с ID %d" -#: access/transam/slru.c:361 -#, c-format -msgid "\"%s\" must be a multiple of %d" +#: access/transam/slru.c:360 +#, fuzzy, c-format +msgid "\"%s\" must be a multiple of %d." msgstr "значение \"%s\" должно быть кратно %d" -#: access/transam/slru.c:830 +#: access/transam/slru.c:832 #, 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: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 #, c-format msgid "could not access status of transaction %u" msgstr "не удалось получить состояние транзакции %u" -#: access/transam/slru.c:1060 +#: access/transam/slru.c:1062 #, c-format msgid "Could not open file \"%s\": %m." msgstr "Не удалось открыть файл \"%s\": %m." -#: access/transam/slru.c:1066 +#: access/transam/slru.c:1068 #, 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:1076 #, 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:1081 #, 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:1088 #, 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:1093 #, 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:1100 #, c-format msgid "Could not fsync file \"%s\": %m." msgstr "Не удалось синхронизировать с ФС файл \"%s\": %m." -#: access/transam/slru.c:1105 +#: access/transam/slru.c:1107 #, c-format msgid "Could not close file \"%s\": %m." msgstr "Не удалось закрыть файл \"%s\": %m." -#: access/transam/slru.c:1431 +#: access/transam/slru.c:1433 #, c-format msgid "could not truncate directory \"%s\": apparent wraparound" msgstr "не удалось очистить каталог \"%s\": видимо, произошло зацикливание" @@ -2408,12 +2447,12 @@ msgstr "Установите ненулевое значение парамет msgid "transaction identifier \"%s\" is already in use" msgstr "идентификатор транзакции \"%s\" уже используется" -#: access/transam/twophase.c:404 access/transam/twophase.c:2531 +#: 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:2532 +#: access/transam/twophase.c:405 access/transam/twophase.c:2531 #, c-format msgid "Increase \"max_prepared_transactions\" (currently %d)." msgstr "" @@ -2495,9 +2534,9 @@ msgstr "" "вычисленная контрольная сумма (CRC) не соответствует значению, сохранённому " "в файле \"%s\"" -#: access/transam/twophase.c:1419 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:571 +#: postmaster/walsummarizer.c:939 replication/logical/logical.c:213 +#: replication/walsender.c:812 #, c-format msgid "Failed while allocating a WAL reading processor." msgstr "Не удалось разместить обработчик журнала транзакций." @@ -2519,12 +2558,12 @@ msgstr "" "ожидаемые данные состояния двухфазной фиксации отсутствуют в WAL в позиции " "%X/%X" -#: access/transam/twophase.c:1745 +#: access/transam/twophase.c:1744 #, c-format msgid "could not recreate file \"%s\": %m" msgstr "пересоздать файл \"%s\" не удалось: %m" -#: access/transam/twophase.c:1872 +#: access/transam/twophase.c:1871 #, c-format msgid "" "%u two-phase state file was written for a long-running prepared transaction" @@ -2537,47 +2576,47 @@ msgstr[1] "" msgstr[2] "" "для длительных подготовленных транзакций записано файлов состояния 2PC: %u" -#: access/transam/twophase.c:2107 +#: access/transam/twophase.c:2106 #, c-format msgid "recovering prepared transaction %u from shared memory" msgstr "восстановление подготовленной транзакции %u из разделяемой памяти" -#: access/transam/twophase.c:2200 +#: access/transam/twophase.c:2199 #, c-format msgid "removing stale two-phase state file for transaction %u" msgstr "удаление устаревшего файла состояния 2PC для транзакции %u" -#: access/transam/twophase.c:2207 +#: access/transam/twophase.c:2206 #, c-format msgid "removing stale two-phase state from memory for transaction %u" msgstr "удаление из памяти устаревшего состояния 2PC для транзакции %u" -#: access/transam/twophase.c:2220 +#: access/transam/twophase.c:2219 #, c-format msgid "removing future two-phase state file for transaction %u" msgstr "удаление файла будущего состояния 2PC для транзакции %u" -#: access/transam/twophase.c:2227 +#: access/transam/twophase.c:2226 #, c-format msgid "removing future two-phase state from memory for transaction %u" msgstr "удаление из памяти будущего состояния 2PC для транзакции %u" -#: access/transam/twophase.c:2252 +#: access/transam/twophase.c:2251 #, c-format msgid "corrupted two-phase state file for transaction %u" msgstr "испорчен файл состояния 2PC для транзакции %u" -#: access/transam/twophase.c:2257 +#: access/transam/twophase.c:2256 #, c-format msgid "corrupted two-phase state in memory for transaction %u" msgstr "испорчено состояние 2PC в памяти для транзакции %u" -#: access/transam/twophase.c:2514 +#: access/transam/twophase.c:2513 #, c-format msgid "could not recover two-phase state file for transaction %u" msgstr "не удалось восстановить файл состояния 2PC для транзакции %u" -#: access/transam/twophase.c:2516 +#: access/transam/twophase.c:2515 #, c-format msgid "" "Two-phase state file has been found in WAL record %X/%X, but this " @@ -2586,7 +2625,7 @@ msgstr "" "Для WAL-записи %X/%X найден файл состояния двухфазной фиксации, но эта " "транзакция уже была восстановлена с диска." -#: access/transam/twophase.c:2524 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" @@ -2650,130 +2689,124 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: 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:1542 +#: access/transam/xlog.c:1545 #, c-format msgid "" "request to flush past end of generated WAL; request %X/%X, current position " @@ -2782,7 +2815,7 @@ msgstr "" "запрос на сброс данных за концом сгенерированного WAL; запрошена позиция %X/" "%X, текущая позиция %X/%X" -#: access/transam/xlog.c:1769 +#: access/transam/xlog.c:1772 #, c-format msgid "" "cannot read past end of generated WAL: requested %X/%X, current position %X/" @@ -2791,69 +2824,64 @@ msgstr "" "чтение за концом сгенерированного WAL невозможно: запрошена позиция %X/%X, " "текущая позиция %X/%X" -#: access/transam/xlog.c:2210 access/transam/xlog.c:4501 +#: 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 должен задаваться степенью 2 в интервале от 1 МБ до 1 ГБ." -#: access/transam/xlog.c:2228 -#, c-format -msgid "\"%s\" must be set to -1 during binary upgrade mode." -msgstr "Параметр \"%s\" должен быть равен -1 в режиме двоичного обновления." - -#: access/transam/xlog.c:2477 +#: 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:3739 access/transam/xlogutils.c:831 -#: replication/walsender.c:3045 +#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: replication/walsender.c:3074 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "запрошенный сегмент WAL %s уже удалён" -#: access/transam/xlog.c:4061 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "не удалось переименовать файл \"%s\": %m" -#: access/transam/xlog.c:4104 access/transam/xlog.c:4115 -#: access/transam/xlog.c:4136 +#: 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:4121 access/transam/xlog.c:4142 +#: 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:4125 access/transam/xlog.c:4145 -#: commands/dbcommands.c:3262 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 +#: commands/dbcommands.c:3301 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "не удалось создать отсутствующий каталог \"%s\": %m" -#: access/transam/xlog.c:4212 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "не удалось сгенерировать случайное число для аутентификации" -#: access/transam/xlog.c:4363 access/transam/xlog.c:4373 -#: access/transam/xlog.c:4399 access/transam/xlog.c:4407 -#: access/transam/xlog.c:4415 access/transam/xlog.c:4421 -#: access/transam/xlog.c:4429 access/transam/xlog.c:4437 -#: access/transam/xlog.c:4445 access/transam/xlog.c:4453 -#: access/transam/xlog.c:4461 access/transam/xlog.c:4469 -#: access/transam/xlog.c:4479 access/transam/xlog.c:4487 -#: utils/init/miscinit.c:1812 +#: 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:4364 +#: access/transam/xlog.c:4393 #, c-format msgid "" "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), " @@ -2862,7 +2890,7 @@ msgstr "" "Кластер баз данных был инициализирован с PG_CONTROL_VERSION %d (0x%08x), но " "сервер скомпилирован с PG_CONTROL_VERSION %d (0x%08x)." -#: access/transam/xlog.c:4368 +#: access/transam/xlog.c:4397 #, c-format msgid "" "This could be a problem of mismatched byte ordering. It looks like you need " @@ -2871,7 +2899,7 @@ msgstr "" "Возможно, проблема вызвана разным порядком байт. Кажется, вам надо выполнить " "initdb." -#: access/transam/xlog.c:4374 +#: access/transam/xlog.c:4403 #, c-format msgid "" "The database cluster was initialized with PG_CONTROL_VERSION %d, but the " @@ -2880,36 +2908,32 @@ msgstr "" "Кластер баз данных был инициализирован с PG_CONTROL_VERSION %d, но сервер " "скомпилирован с PG_CONTROL_VERSION %d." -#: access/transam/xlog.c:4377 access/transam/xlog.c:4403 -#: access/transam/xlog.c:4411 access/transam/xlog.c:4417 +#: 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:4389 +#: access/transam/xlog.c:4418 #, c-format msgid "incorrect checksum in control file" msgstr "ошибка контрольной суммы в файле pg_control" -#: access/transam/xlog.c:4400 -#, c-format +#. 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 CATALOG_VERSION_NO %d, but the " -"server was compiled with CATALOG_VERSION_NO %d." +"The database cluster was initialized with %s %d, but the server was compiled " +"with %s %d." msgstr "" -"Кластер баз данных был инициализирован с CATALOG_VERSION_NO %d, но сервер " -"скомпилирован с CATALOG_VERSION_NO %d." - -#: access/transam/xlog.c:4408 -#, c-format -msgid "" -"The database cluster was initialized with MAXALIGN %d, but the server was " -"compiled with MAXALIGN %d." -msgstr "" -"Кластер баз данных был инициализирован с MAXALIGN %d, но сервер " -"скомпилирован с MAXALIGN %d." +"Кластер баз данных был инициализирован с BLCKSZ %d, но сервер скомпилирован " +"с BLCKSZ %d." -#: access/transam/xlog.c:4416 +#: access/transam/xlog.c:4449 #, c-format msgid "" "The database cluster appears to use a different floating-point number format " @@ -2918,79 +2942,16 @@ msgstr "" "Кажется, в кластере баз данных и в программе сервера используются разные " "форматы чисел с плавающей точкой." -#: access/transam/xlog.c:4422 -#, 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:4425 access/transam/xlog.c:4433 -#: access/transam/xlog.c:4441 access/transam/xlog.c:4449 -#: access/transam/xlog.c:4457 access/transam/xlog.c:4465 -#: access/transam/xlog.c:4473 access/transam/xlog.c:4482 -#: access/transam/xlog.c:4490 +#: 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:4430 -#, c-format -msgid "" -"The database cluster was initialized with RELSEG_SIZE %d, but the server was " -"compiled with RELSEG_SIZE %d." -msgstr "" -"Кластер баз данных был инициализирован с RELSEG_SIZE %d, но сервер " -"скомпилирован с RELSEG_SIZE %d." - -#: access/transam/xlog.c:4438 -#, 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:4446 -#, 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:4454 -#, 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:4462 -#, 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:4470 -#, 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:4480 +#: access/transam/xlog.c:4527 #, c-format msgid "" "The database cluster was initialized without USE_FLOAT8_BYVAL but the server " @@ -2999,7 +2960,7 @@ msgstr "" "Кластер баз данных был инициализирован без USE_FLOAT8_BYVAL, но сервер " "скомпилирован с USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4488 +#: access/transam/xlog.c:4535 #, c-format msgid "" "The database cluster was initialized with USE_FLOAT8_BYVAL but the server " @@ -3008,7 +2969,7 @@ msgstr "" "Кластер баз данных был инициализирован с USE_FLOAT8_BYVAL, но сервер был " "скомпилирован без USE_FLOAT8_BYVAL." -#: access/transam/xlog.c:4497 +#: 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)" @@ -3016,45 +2977,41 @@ msgstr[0] "управляющий файл содержит неверный р msgstr[1] "управляющий файл содержит неверный размер сегмента WAL (%d Б)" msgstr[2] "управляющий файл содержит неверный размер сегмента WAL (%d Б)" -#: access/transam/xlog.c:4510 -#, c-format -msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "\"min_wal_size\" должен быть минимум вдвое больше \"wal_segment_size\"" - -#: access/transam/xlog.c:4514 -#, c-format -msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "\"max_wal_size\" должен быть минимум вдвое больше \"wal_segment_size\"" +#. translator: both %s are GUC names +#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 +#, fuzzy, c-format +msgid "\"%s\" must be at least twice \"%s\"" +msgstr "%s должно быть меньше %s" -#: access/transam/xlog.c:4662 catalog/namespace.c:4696 -#: 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: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 #, c-format msgid "List syntax is invalid." msgstr "Ошибка синтаксиса в списке." -#: access/transam/xlog.c:4708 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:2558 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:5129 +#: access/transam/xlog.c:5195 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "не удалось записать начальный файл журнала предзаписи: %m" -#: access/transam/xlog.c:5137 +#: access/transam/xlog.c:5203 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "не удалось сбросить на диск начальный файл журнала предзаписи: %m" -#: access/transam/xlog.c:5143 +#: access/transam/xlog.c:5209 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "не удалось закрыть начальный файл журнала предзаписи: %m" -#: access/transam/xlog.c:5368 +#: access/transam/xlog.c:5434 #, c-format msgid "" "WAL was generated with \"wal_level=minimal\", cannot continue recovering" @@ -3062,13 +3019,13 @@ msgstr "" "WAL был создан с параметром \"wal_level=minimal\", продолжение " "восстановления невозможно" -#: access/transam/xlog.c:5369 +#: 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:5370 +#: access/transam/xlog.c:5436 #, c-format msgid "" "Use a backup taken after setting \"wal_level\" to higher than \"minimal\"." @@ -3076,32 +3033,32 @@ msgstr "" "Используйте резервную копию, сделанную после переключения \"wal_level\" на " "любой уровень выше \"minimal\"." -#: access/transam/xlog.c:5435 +#: access/transam/xlog.c:5501 #, c-format msgid "control file contains invalid checkpoint location" msgstr "файл pg_control содержит неправильную позицию контрольной точки" -#: access/transam/xlog.c:5446 +#: access/transam/xlog.c:5512 #, c-format msgid "database system was shut down at %s" msgstr "система БД была выключена: %s" -#: access/transam/xlog.c:5452 +#: access/transam/xlog.c:5518 #, c-format msgid "database system was shut down in recovery at %s" msgstr "система БД была выключена в процессе восстановления: %s" -#: access/transam/xlog.c:5458 +#: access/transam/xlog.c:5524 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "выключение системы БД было прервано; последний момент работы: %s" -#: access/transam/xlog.c:5464 +#: access/transam/xlog.c:5530 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "работа системы БД была прервана во время восстановления: %s" -#: access/transam/xlog.c:5466 +#: access/transam/xlog.c:5532 #, c-format msgid "" "This probably means that some data is corrupted and you will have to use the " @@ -3110,14 +3067,14 @@ msgstr "" "Это скорее всего означает, что некоторые данные повреждены и вам придётся " "восстановить БД из последней резервной копии." -#: access/transam/xlog.c:5472 +#: 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:5474 +#: access/transam/xlog.c:5540 #, c-format msgid "" "If this has occurred more than once some data might be corrupted and you " @@ -3126,22 +3083,22 @@ msgstr "" "Если это происходит постоянно, возможно, какие-то данные были испорчены и " "для восстановления стоит выбрать более раннюю точку." -#: access/transam/xlog.c:5480 +#: access/transam/xlog.c:5546 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "работа системы БД была прервана; последний момент работы: %s" -#: access/transam/xlog.c:5487 +#: access/transam/xlog.c:5553 #, c-format msgid "control file contains invalid database cluster state" msgstr "файл pg_control содержит неверный код состояния кластера" -#: access/transam/xlog.c:5875 +#: access/transam/xlog.c:5941 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL закончился без признака окончания копирования" -#: access/transam/xlog.c:5876 +#: access/transam/xlog.c:5942 #, c-format msgid "" "All WAL generated while online backup was taken must be available at " @@ -3150,46 +3107,46 @@ msgstr "" "Все журналы WAL, созданные во время резервного копирования \"на ходу\", " "должны быть в наличии для восстановления." -#: access/transam/xlog.c:5880 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL закончился до согласованной точки восстановления" -#: access/transam/xlog.c:5926 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "выбранный ID новой линии времени: %u" -#: access/transam/xlog.c:5959 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "восстановление архива завершено" -#: access/transam/xlog.c:6612 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "выключение" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6651 +#: 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:6663 +#: 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" # well-spelled: синхр -#: access/transam/xlog.c:6728 -#, c-format +#: 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" +"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%%); добавлено файлов " "WAL %d, удалено: %d, переработано: %d; запись=%ld.%03d сек., синхр.=%ld.%03d " @@ -3198,13 +3155,13 @@ msgstr "" "lsn=%X/%X, lsn redo=%X/%X" # well-spelled: синхр -#: access/transam/xlog.c:6751 -#, c-format +#: 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" +"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%%); добавлено файлов " "WAL %d, удалено: %d, переработано: %d; запись=%ld.%03d сек., синхр.=%ld.%03d " @@ -3212,7 +3169,7 @@ msgstr "" "=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB; " "lsn=%X/%X, lsn redo=%X/%X" -#: access/transam/xlog.c:7233 +#: access/transam/xlog.c:7280 #, c-format msgid "" "concurrent write-ahead log activity while database system is shutting down" @@ -3220,64 +3177,65 @@ msgstr "" "во время выключения системы баз данных отмечена активность в журнале " "предзаписи" -#: access/transam/xlog.c:7818 +#: access/transam/xlog.c:7871 #, c-format msgid "recovery restart point at %X/%X" msgstr "точка перезапуска восстановления в позиции %X/%X" -#: access/transam/xlog.c:7820 +#: access/transam/xlog.c:7873 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Последняя завершённая транзакция была выполнена в %s." -#: access/transam/xlog.c:8082 +#: access/transam/xlog.c:8137 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "точка восстановления \"%s\" создана в позиции %X/%X" -#: access/transam/xlog.c:8289 +#: access/transam/xlog.c:8344 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "" "резервное копирование \"на ходу\" было отменено, продолжить восстановление " "нельзя" -#: access/transam/xlog.c:8347 +#: 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:8405 +#: access/transam/xlog.c:8460 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "" "неожиданный ID линии времени %u (должен быть %u) в записи точки активности" -#: access/transam/xlog.c:8434 +#: access/transam/xlog.c:8489 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "" "неожиданный ID линии времени %u (должен быть %u) в записи конец-" "восстановления" -#: access/transam/xlog.c:8705 +#: access/transam/xlog.c:8759 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "не удалось синхронизировать с ФС файл сквозной записи %s: %m" -#: access/transam/xlog.c:8710 +#: access/transam/xlog.c:8764 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "не удалось синхронизировать с ФС данные (fdatasync) файла \"%s\": %m" -#: access/transam/xlog.c:8797 access/transam/xlog.c:9133 +#: access/transam/xlog.c:8841 access/transam/xlog.c:9177 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "" "Выбранный уровень WAL недостаточен для резервного копирования \"на ходу\"" -#: access/transam/xlog.c:8798 access/transam/xlogfuncs.c:248 +#: access/transam/xlog.c:8842 access/transam/xlog.c:9178 +#: access/transam/xlogfuncs.c:249 #, c-format msgid "" "\"wal_level\" must be set to \"replica\" or \"logical\" at server start." @@ -3285,12 +3243,12 @@ msgstr "" "Параметр \"wal_level\" должен иметь значение \"replica\" или \"logical\" при " "запуске сервера." -#: access/transam/xlog.c:8803 +#: access/transam/xlog.c:8847 #, c-format msgid "backup label too long (max %d bytes)" msgstr "длина метки резервной копии превышает предел (%d байт)" -#: access/transam/xlog.c:8924 +#: access/transam/xlog.c:8968 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed since last " @@ -3299,7 +3257,7 @@ msgstr "" "после последней точки перезапуска был воспроизведён WAL, созданный в режиме " "\"full_page_writes=off\"" -#: access/transam/xlog.c:8926 access/transam/xlog.c:9222 +#: access/transam/xlog.c:8970 access/transam/xlog.c:9266 #, c-format msgid "" "This means that the backup being taken on the standby is corrupt and should " @@ -3311,28 +3269,23 @@ msgstr "" "CHECKPOINT на ведущем сервере, а затем попробуйте резервное копирование \"на " "ходу\" ещё раз." -#: access/transam/xlog.c:9006 backup/basebackup.c:1417 utils/adt/misc.c:354 +#: access/transam/xlog.c:9050 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:9013 backup/basebackup.c:1422 utils/adt/misc.c:359 +#: access/transam/xlog.c:9057 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:9134 -#, c-format -msgid "wal_level must be set to \"replica\" or \"logical\" at server start." -msgstr "Установите wal_level \"replica\" или \"logical\" при запуске сервера." - -#: access/transam/xlog.c:9172 backup/basebackup.c:1281 +#: access/transam/xlog.c:9216 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "" "ведомый сервер был повышен в процессе резервного копирования \"на ходу\"" -#: access/transam/xlog.c:9173 backup/basebackup.c:1282 +#: access/transam/xlog.c:9217 backup/basebackup.c:1284 #, c-format msgid "" "This means that the backup being taken is corrupt and should not be used. " @@ -3341,7 +3294,7 @@ msgstr "" "Это означает, что создаваемая резервная копия испорчена и использовать её не " "следует. Попробуйте резервное копирование \"на ходу\" ещё раз." -#: access/transam/xlog.c:9220 +#: access/transam/xlog.c:9264 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed during online backup" @@ -3349,13 +3302,13 @@ msgstr "" "в процессе резервного копирования \"на ходу\" был воспроизведён WAL, " "созданный в режиме \"full_page_writes=off\"" -#: access/transam/xlog.c:9336 +#: access/transam/xlog.c:9380 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "" "базовое копирование выполнено, ожидается архивация нужных сегментов WAL" -#: access/transam/xlog.c:9350 +#: access/transam/xlog.c:9394 #, c-format msgid "" "still waiting for all required WAL segments to be archived (%d seconds " @@ -3363,7 +3316,7 @@ msgid "" msgstr "" "продолжается ожидание архивации всех нужных сегментов WAL (прошло %d сек.)" -#: access/transam/xlog.c:9352 +#: access/transam/xlog.c:9396 #, c-format msgid "" "Check that your \"archive_command\" is executing properly. You can safely " @@ -3374,12 +3327,12 @@ msgstr "" "копирования можно отменить безопасно, но резервная копия базы будет " "непригодна без всех сегментов WAL." -#: access/transam/xlog.c:9359 +#: access/transam/xlog.c:9403 #, c-format msgid "all required WAL segments have been archived" msgstr "все нужные сегменты WAL заархивированы" -#: access/transam/xlog.c:9363 +#: access/transam/xlog.c:9407 #, c-format msgid "" "WAL archiving is not enabled; you must ensure that all required WAL segments " @@ -3388,7 +3341,7 @@ msgstr "" "архивация WAL не настроена; вы должны обеспечить копирование всех требуемых " "сегментов WAL другими средствами для получения резервной копии" -#: access/transam/xlog.c:9402 +#: access/transam/xlog.c:9446 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "" @@ -3435,35 +3388,35 @@ 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\"" @@ -3471,69 +3424,69 @@ 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 не достаточен для создания точки восстановления" # well-spelled: симв -#: 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" @@ -3541,81 +3494,81 @@ msgstr[0] "повышение сервера не завершилось за %d msgstr[1] "повышение сервера не завершилось за %d секунды" msgstr[2] "повышение сервера не завершилось за %d секунд" -#: access/transam/xlogprefetcher.c:1088 -#, c-format +#: access/transam/xlogprefetcher.c:1086 +#, fuzzy, c-format msgid "" -"\"recovery_prefetch\" is not supported on platforms that lack " -"posix_fadvise()." +"\"recovery_prefetch\" is not supported on platforms that lack support for " +"issuing read-ahead advice." msgstr "" "\"recovery_prefetch\" не поддерживается на платформах, где отсутствует " "posix_fadvise()." -#: 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" -#: 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 -#, c-format +#: access/transam/xlogreader.c:1285 +#, fuzzy, c-format msgid "" "WAL file is from different database system: WAL file database system " -"identifier is %llu, pg_control database system identifier is %llu" +"identifier is %, pg_control database system identifier is %" msgstr "" "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД " "%llu, а идентификатор системы pg_control: %llu" -#: 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 " @@ -3624,7 +3577,7 @@ 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 " @@ -3633,12 +3586,12 @@ 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, " @@ -3647,23 +3600,23 @@ 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 идёт не по порядку в позиции %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 " @@ -3672,21 +3625,21 @@ 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 " @@ -3695,41 +3648,41 @@ 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, " @@ -3738,7 +3691,7 @@ 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" @@ -3746,12 +3699,12 @@ 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:623 #, c-format msgid "" "starting backup recovery with redo LSN %X/%X, checkpoint LSN %X/%X, on " @@ -3760,7 +3713,7 @@ msgstr "" "начинается восстановление копии с LSN redo %X/%X, LSN контрольной точки %X/" "%X, на линии времени %u" -#: access/transam/xlogrecovery.c:649 +#: access/transam/xlogrecovery.c:655 #, c-format msgid "" "could not find redo location %X/%X referenced by checkpoint record at %X/%X" @@ -3768,7 +3721,7 @@ msgstr "" "не удалось найти положение REDO %X/%X, указанное в записи контрольной точки " "в %X/%X" -#: access/transam/xlogrecovery.c:651 access/transam/xlogrecovery.c:662 +#: access/transam/xlogrecovery.c:657 access/transam/xlogrecovery.c:668 #, c-format msgid "" "If you are restoring from a backup, touch \"%s/recovery.signal\" or \"%s/" @@ -3784,93 +3737,95 @@ msgstr "" "Будьте осторожны: при восстановлении резервной копии удаление \"%s/" "backup_label\" приведёт к повреждению кластера." -#: access/transam/xlogrecovery.c:660 +#: access/transam/xlogrecovery.c:666 #, 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:696 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:729 access/transam/xlogrecovery.c:735 #, c-format msgid "ignoring file \"%s\" because no file \"%s\" exists" msgstr "файл \"%s\" игнорируется ввиду отсутствия файла \"%s\"" -#: access/transam/xlogrecovery.c:725 +#: access/transam/xlogrecovery.c:731 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "Файл \"%s\" был переименован в \"%s\"." -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:737 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "Не удалось переименовать файл \"%s\" в \"%s\" (%m)." -#: access/transam/xlogrecovery.c:770 +#: access/transam/xlogrecovery.c:776 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "перезапуск восстановления копии с LSN redo %X/%X" -#: access/transam/xlogrecovery.c:795 +#: access/transam/xlogrecovery.c:801 #, 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:812 #, c-format msgid "entering standby mode" msgstr "переход в режим резервного сервера" -#: access/transam/xlogrecovery.c:809 +#: access/transam/xlogrecovery.c:815 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "начинается восстановление точки во времени до XID %u" -#: access/transam/xlogrecovery.c:813 +#: access/transam/xlogrecovery.c:819 #, c-format msgid "starting point-in-time recovery to %s" msgstr "начинается восстановление точки во времени до %s" -#: access/transam/xlogrecovery.c:817 +#: access/transam/xlogrecovery.c:823 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "начинается восстановление точки во времени до \"%s\"" -#: access/transam/xlogrecovery.c:821 +#: access/transam/xlogrecovery.c:827 #, 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:831 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "" "начинается восстановление точки во времени до первой точки согласованности" -#: access/transam/xlogrecovery.c:828 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting archive recovery" msgstr "начинается восстановление архива" -#: access/transam/xlogrecovery.c:849 +#: access/transam/xlogrecovery.c:855 #, c-format msgid "requested timeline %u is not a child of this server's history" msgstr "в истории сервера нет ответвления запрошенной линии времени %u" -#: access/transam/xlogrecovery.c:851 -#, c-format +#. translator: %s is a backup_label file or a pg_control file +#: access/transam/xlogrecovery.c:858 +#, 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." +"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 "" "Последняя контрольная точка: %X/%X на линии времени %u, но в истории " "запрошенной линии времени сервер ответвился с этой линии в %X/%X." -#: access/transam/xlogrecovery.c:865 +#: access/transam/xlogrecovery.c:873 #, c-format msgid "" "requested timeline %u does not contain minimum recovery point %X/%X on " @@ -3879,22 +3834,22 @@ msgstr "" "запрошенная линия времени %u не содержит минимальную точку восстановления %X/" "%X на линии времени %u" -#: access/transam/xlogrecovery.c:893 +#: access/transam/xlogrecovery.c:901 #, c-format msgid "invalid next transaction ID" msgstr "неверный ID следующей транзакции" -#: access/transam/xlogrecovery.c:898 +#: access/transam/xlogrecovery.c:906 #, c-format msgid "invalid redo in checkpoint record" msgstr "неверная запись REDO в контрольной точке" -#: access/transam/xlogrecovery.c:909 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "неверная запись REDO в контрольной точке выключения" -#: access/transam/xlogrecovery.c:938 +#: access/transam/xlogrecovery.c:946 #, c-format msgid "" "database system was not properly shut down; automatic recovery in progress" @@ -3902,19 +3857,19 @@ msgstr "" "система БД была остановлена нештатно; производится автоматическое " "восстановление" -#: access/transam/xlogrecovery.c:942 +#: access/transam/xlogrecovery.c:950 #, 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:993 #, 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:994 #, c-format msgid "" "This means that the backup is corrupted and you will have to use another " @@ -3923,24 +3878,24 @@ msgstr "" "Это означает, что резервная копия повреждена и для восстановления БД " "придётся использовать другую копию." -#: access/transam/xlogrecovery.c:1040 +#: access/transam/xlogrecovery.c:1048 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "" "использование файла с конфигурацией восстановления \"%s\" не поддерживается" -#: access/transam/xlogrecovery.c:1105 +#: access/transam/xlogrecovery.c:1113 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "" "режим резервного сервера не поддерживается однопользовательским сервером" -#: access/transam/xlogrecovery.c:1122 +#: access/transam/xlogrecovery.c:1130 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "не указано ни \"primary_conninfo\", ни \"restore_command\"" -#: access/transam/xlogrecovery.c:1123 +#: access/transam/xlogrecovery.c:1131 #, c-format msgid "" "The database server will regularly poll the pg_wal subdirectory to check for " @@ -3949,103 +3904,103 @@ msgstr "" "Сервер БД будет регулярно опрашивать подкаталог pg_wal и проверять " "содержащиеся в нём файлы." -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1139 #, 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:1177 #, 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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "неверные данные в файле \"%s\"" -#: access/transam/xlogrecovery.c:1319 +#: access/transam/xlogrecovery.c:1327 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "Получен идентификатор линии времени %u, но ожидался %u." -#: access/transam/xlogrecovery.c:1330 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "это каталог инкрементальной копии, не каталог данных" -#: access/transam/xlogrecovery.c:1331 +#: access/transam/xlogrecovery.c:1339 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "" "Реконструируйте полноценный каталог данных, используя pg_combinebackup." -#: access/transam/xlogrecovery.c:1717 +#: access/transam/xlogrecovery.c:1725 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "в точке redo %X/%X обнаружена запись неожиданного типа" -#: access/transam/xlogrecovery.c:1740 +#: access/transam/xlogrecovery.c:1748 #, c-format msgid "redo starts at %X/%X" msgstr "запись REDO начинается со смещения %X/%X" -#: access/transam/xlogrecovery.c:1753 +#: access/transam/xlogrecovery.c:1761 #, 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:1843 +#: access/transam/xlogrecovery.c:1851 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "" "запрошенная точка остановки восстановления предшествует согласованной точке " "восстановления" -#: access/transam/xlogrecovery.c:1875 +#: access/transam/xlogrecovery.c:1883 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "записи REDO обработаны до смещения %X/%X, нагрузка системы: %s" -#: access/transam/xlogrecovery.c:1881 +#: access/transam/xlogrecovery.c:1889 #, c-format msgid "last completed transaction was at log time %s" msgstr "последняя завершённая транзакция была выполнена в %s" -#: access/transam/xlogrecovery.c:1890 +#: access/transam/xlogrecovery.c:1898 #, c-format msgid "redo is not required" msgstr "данные REDO не требуются" -#: access/transam/xlogrecovery.c:1901 +#: access/transam/xlogrecovery.c:1910 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "восстановление окончилось до достижения заданной цели восстановления" -#: access/transam/xlogrecovery.c:2095 +#: access/transam/xlogrecovery.c:2104 #, 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:2171 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "в %2$s обнаружен недопустимый элемент-каталог \"%1$s\"" -#: access/transam/xlogrecovery.c:2164 -#, c-format -msgid "All directory entries in pg_tblspc/ should be symbolic links." +#: access/transam/xlogrecovery.c:2173 +#, fuzzy, c-format +msgid "All directory entries in %s/ should be symbolic links." msgstr "" "Все элементы-каталоги в pg_tblspc/ должны быть символическими ссылками." -#: access/transam/xlogrecovery.c:2165 +#: access/transam/xlogrecovery.c:2175 #, c-format msgid "" "Remove those directories, or set \"allow_in_place_tablespaces\" to ON " @@ -4054,23 +4009,23 @@ msgstr "" "Удалите эти каталоги или на время установите в " "\"allow_in_place_tablespaces\" значение ON, чтобы восстановление завершилось." -#: access/transam/xlogrecovery.c:2217 +#: access/transam/xlogrecovery.c:2227 #, 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:2247 +#: access/transam/xlogrecovery.c:2258 #, 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:2296 #, 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:2394 #, c-format msgid "" "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint " @@ -4079,13 +4034,13 @@ msgstr "" "неожиданный ID предыдущей линии времени %u (ID текущей линии времени %u) в " "записи контрольной точки" -#: access/transam/xlogrecovery.c:2392 +#: access/transam/xlogrecovery.c:2403 #, 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:2408 +#: access/transam/xlogrecovery.c:2419 #, c-format msgid "" "unexpected timeline ID %u in checkpoint record, before reaching minimum " @@ -4094,83 +4049,83 @@ msgstr "" "неожиданный ID линии времени %u в записи контрольной точки, до достижения " "минимальной к. т. %X/%X на линии времени %u" -#: access/transam/xlogrecovery.c:2592 access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 #, c-format msgid "recovery stopping after reaching consistency" msgstr "" "восстановление останавливается после достижения согласованного состояния" -#: access/transam/xlogrecovery.c:2613 +#: access/transam/xlogrecovery.c:2624 #, 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:2714 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "" "восстановление останавливается перед фиксированием транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2710 +#: access/transam/xlogrecovery.c:2721 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "" "восстановление останавливается перед прерыванием транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2763 +#: access/transam/xlogrecovery.c:2774 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "восстановление останавливается в точке восстановления \"%s\", время %s" -#: access/transam/xlogrecovery.c:2781 +#: access/transam/xlogrecovery.c:2792 #, 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:2859 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "" "восстановление останавливается после фиксирования транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2856 +#: access/transam/xlogrecovery.c:2867 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "" "восстановление останавливается после прерывания транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2937 +#: access/transam/xlogrecovery.c:2948 #, c-format msgid "pausing at the end of recovery" msgstr "остановка в конце восстановления" -#: access/transam/xlogrecovery.c:2938 +#: access/transam/xlogrecovery.c:2949 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Выполните pg_wal_replay_resume() для повышения." -#: access/transam/xlogrecovery.c:2941 access/transam/xlogrecovery.c:4679 +#: access/transam/xlogrecovery.c:2952 access/transam/xlogrecovery.c:4698 #, c-format msgid "recovery has paused" msgstr "восстановление приостановлено" -#: access/transam/xlogrecovery.c:2942 +#: access/transam/xlogrecovery.c:2953 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Выполните pg_wal_replay_resume() для продолжения." -#: access/transam/xlogrecovery.c:3205 +#: access/transam/xlogrecovery.c:3216 #, 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:3413 +#: access/transam/xlogrecovery.c:3432 #, 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:3420 +#: access/transam/xlogrecovery.c:3439 #, c-format msgid "" "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" @@ -4178,38 +4133,38 @@ msgstr "" "не удалось прочитать сегмент WAL %s, LSN %X/%X, смещение %u (прочитано байт: " "%d из %zu)" -#: access/transam/xlogrecovery.c:4061 +#: access/transam/xlogrecovery.c:4082 #, c-format msgid "invalid checkpoint location" msgstr "неверное положение контрольной точки" -#: access/transam/xlogrecovery.c:4071 +#: access/transam/xlogrecovery.c:4092 #, c-format msgid "invalid checkpoint record" msgstr "неверная запись контрольной точки" -#: access/transam/xlogrecovery.c:4077 +#: access/transam/xlogrecovery.c:4098 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "неверный ID менеджера ресурсов в записи контрольной точки" -#: access/transam/xlogrecovery.c:4085 +#: access/transam/xlogrecovery.c:4106 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "неверные флаги xl_info в записи контрольной точки" -#: access/transam/xlogrecovery.c:4091 +#: access/transam/xlogrecovery.c:4112 #, c-format msgid "invalid length of checkpoint record" msgstr "неверная длина записи контрольной точки" -#: access/transam/xlogrecovery.c:4145 +#: access/transam/xlogrecovery.c:4166 #, c-format msgid "new timeline %u is not a child of database system timeline %u" msgstr "" "новая линия времени %u не является ответвлением линии времени системы БД %u" -#: access/transam/xlogrecovery.c:4159 +#: access/transam/xlogrecovery.c:4180 #, c-format msgid "" "new timeline %u forked off current database system timeline %u before " @@ -4218,30 +4173,30 @@ msgstr "" "новая линия времени %u ответвилась от текущей линии времени базы данных %u " "до текущей точки восстановления %X/%X" -#: access/transam/xlogrecovery.c:4178 +#: access/transam/xlogrecovery.c:4199 #, c-format msgid "new target timeline is %u" msgstr "новая целевая линия времени %u" -#: access/transam/xlogrecovery.c:4381 +#: access/transam/xlogrecovery.c:4400 #, c-format msgid "WAL receiver process shutdown requested" msgstr "получен запрос на выключение процесса приёмника WAL" -#: access/transam/xlogrecovery.c:4441 +#: access/transam/xlogrecovery.c:4460 #, c-format msgid "received promote request" msgstr "получен запрос повышения статуса" -#: access/transam/xlogrecovery.c:4670 +#: access/transam/xlogrecovery.c:4689 #, c-format msgid "hot standby is not possible because of insufficient parameter settings" msgstr "" "режим горячего резерва невозможен из-за отсутствия достаточных значений " "параметров" -#: access/transam/xlogrecovery.c:4671 access/transam/xlogrecovery.c:4698 -#: access/transam/xlogrecovery.c:4728 +#: access/transam/xlogrecovery.c:4690 access/transam/xlogrecovery.c:4717 +#: access/transam/xlogrecovery.c:4747 #, c-format msgid "" "%s = %d is a lower setting than on the primary server, where its value was " @@ -4249,12 +4204,12 @@ msgid "" msgstr "" "Параметр %s = %d меньше, чем на ведущем сервере, где его значение было %d." -#: access/transam/xlogrecovery.c:4680 +#: access/transam/xlogrecovery.c:4699 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "В случае возобновления восстановления сервер отключится." -#: access/transam/xlogrecovery.c:4681 +#: access/transam/xlogrecovery.c:4700 #, c-format msgid "" "You can then restart the server after making the necessary configuration " @@ -4263,24 +4218,24 @@ msgstr "" "Затем вы можете перезапустить сервер после внесения необходимых изменений " "конфигурации." -#: access/transam/xlogrecovery.c:4692 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "повышение невозможно из-за отсутствия достаточных значений параметров" -#: access/transam/xlogrecovery.c:4702 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "" "Перезапустите сервер после внесения необходимых изменений конфигурации." -#: access/transam/xlogrecovery.c:4726 +#: access/transam/xlogrecovery.c:4745 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "" "восстановление прервано из-за отсутствия достаточных значений параметров" -#: access/transam/xlogrecovery.c:4732 +#: access/transam/xlogrecovery.c:4751 #, c-format msgid "" "You can restart the server after making the necessary configuration changes." @@ -4288,12 +4243,12 @@ msgstr "" "Вы можете перезапустить сервер после внесения необходимых изменений " "конфигурации." -#: access/transam/xlogrecovery.c:4774 +#: access/transam/xlogrecovery.c:4792 #, c-format msgid "multiple recovery targets specified" msgstr "указано несколько целей восстановления" -#: access/transam/xlogrecovery.c:4775 +#: access/transam/xlogrecovery.c:4793 #, c-format msgid "" "At most one of \"recovery_target\", \"recovery_target_lsn\", " @@ -4304,28 +4259,27 @@ msgstr "" "\"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", " "\"recovery_target_xid\"." -#: access/transam/xlogrecovery.c:4786 +#: access/transam/xlogrecovery.c:4804 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Единственное допустимое значение: \"immediate\"." -#: access/transam/xlogrecovery.c:4938 utils/adt/timestamp.c:202 -#: utils/adt/timestamp.c:455 -#, c-format -msgid "timestamp out of range: \"%s\"" +#: access/transam/xlogrecovery.c:4958 +#, fuzzy, c-format +msgid "Timestamp out of range: \"%s\"." msgstr "timestamp вне диапазона: \"%s\"" -#: access/transam/xlogrecovery.c:4983 +#: access/transam/xlogrecovery.c:5003 #, 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 "" @@ -4348,7 +4302,7 @@ msgstr "Команда архивации с ошибкой: %s" msgid "archive command was terminated by exception 0x%X" msgstr "команда архивации была прервана исключением 0x%X" -#: archive/shell_archive.c:109 postmaster/postmaster.c:3095 +#: 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." @@ -4366,42 +4320,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" @@ -4409,95 +4363,95 @@ msgstr[0] "всего ошибок контрольных сумм: %lld" msgstr[1] "всего ошибок контрольных сумм: %lld" msgstr[2] "всего ошибок контрольных сумм: %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 "контрольные суммы не могут рассчитываться без манифеста копии" # skip-rule: capital-letter-first -#: backup/basebackup.c:941 +#: backup/basebackup.c:943 #, c-format msgid "target detail cannot be used without target" msgstr "доп. информацию о получателе нельзя задать без указания получателя" # skip-rule: capital-letter-first -#: 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 "" "инкрементальной команде BASE_BACKUP должна предшествовать UPLOAD_MANIFEST" -#: 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 " @@ -4506,7 +4460,7 @@ 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" @@ -4514,7 +4468,7 @@ msgstr[0] "всего в файле \"%s\" обнаружено ошибок к msgstr[1] "всего в файле \"%s\" обнаружено ошибок контрольных сумм: %d" msgstr[2] "всего в файле \"%s\" обнаружено ошибок контрольных сумм: %d" -#: backup/basebackup.c:1917 +#: backup/basebackup.c:1920 #, c-format msgid "" "checksum verification failed in file \"%s\", block %u: calculated %X but " @@ -4523,19 +4477,19 @@ 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\"" @@ -4543,7 +4497,7 @@ 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)" @@ -4558,17 +4512,17 @@ 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 " @@ -4577,7 +4531,7 @@ 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 " @@ -4586,7 +4540,7 @@ 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 " @@ -4595,7 +4549,7 @@ 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 " @@ -4604,7 +4558,7 @@ 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 " @@ -4613,7 +4567,7 @@ 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 " @@ -4622,7 +4576,7 @@ msgstr "" "требуются обобщения WAL для линии времени %u с позиции %X/%X по %X/%X, но " "они не найдены" -#: 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 " @@ -4631,22 +4585,22 @@ 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 -#, c-format +#: backup/basebackup_incremental.c:952 +#, fuzzy, c-format msgid "" -"system identifier in backup manifest is %llu, but database system identifier " -"is %llu" +"system identifier in backup manifest is %, but database system " +"identifier is %" msgstr "" "в манифесте копии указан идентификатор системы: %llu, но идентификатор " "системы базы данных: %llu" @@ -4677,10 +4631,10 @@ 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:2233 +#: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "не удалось создать каталог \"%s\": %m" @@ -4690,15 +4644,15 @@ msgstr "не удалось создать каталог \"%s\": %m" msgid "directory \"%s\" exists but is not empty" msgstr "каталог \"%s\" существует, но он не пуст" -#: backup/basebackup_server.c:123 utils/init/postinit.c:1178 +#: 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 "Проверьте, есть ли место на диске." @@ -4737,27 +4691,32 @@ msgid "could not enable long-distance mode: %s" msgstr "не удалось включить режим большой дистанции: %s" #: backup/walsummaryfuncs.c:95 -#, c-format -msgid "invalid timeline %lld" +#, fuzzy, c-format +msgid "invalid timeline %" msgstr "неверная линия времени %lld" -#: bootstrap/bootstrap.c:239 postmaster/postmaster.c:623 tcop/postgres.c:3946 +#: bootstrap/bootstrap.c:239 postmaster/postmaster.c:626 tcop/postgres.c:3858 +#, fuzzy, c-format +msgid "--%s must be first argument" +msgstr "%s должно быть больше нуля" + +#: 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" @@ -4814,12 +4773,12 @@ msgstr "для объекта \"%s\" были отозваны не все пр msgid "grantor must be current user" msgstr "праводателем должен быть текущий пользователь" -#: catalog/aclchk.c:480 catalog/aclchk.c:1055 +#: 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:1059 +#: catalog/aclchk.c:484 catalog/aclchk.c:1000 #, c-format msgid "invalid privilege type %s for sequence" msgstr "право %s неприменимо для последовательностей" @@ -4834,7 +4793,7 @@ msgstr "право %s неприменимо для баз данных" msgid "invalid privilege type %s for domain" msgstr "право %s неприменимо для домена" -#: catalog/aclchk.c:496 catalog/aclchk.c:1063 +#: catalog/aclchk.c:496 catalog/aclchk.c:1004 #, c-format msgid "invalid privilege type %s for function" msgstr "право %s неприменимо для функций" @@ -4844,22 +4803,22 @@ msgstr "право %s неприменимо для функций" msgid "invalid privilege type %s for language" msgstr "право %s неприменимо для языков" -#: catalog/aclchk.c:504 +#: 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:1079 +#: 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:1067 +#: 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:1071 +#: catalog/aclchk.c:516 catalog/aclchk.c:1012 #, c-format msgid "invalid privilege type %s for routine" msgstr "право %s неприменимо для подпрограмм" @@ -4869,7 +4828,7 @@ msgstr "право %s неприменимо для подпрограмм" msgid "invalid privilege type %s for tablespace" msgstr "право %s неприменимо для табличных пространств" -#: catalog/aclchk.c:524 catalog/aclchk.c:1075 +#: catalog/aclchk.c:524 catalog/aclchk.c:1016 #, c-format msgid "invalid privilege type %s for type" msgstr "право %s неприменимо для типа" @@ -4894,93 +4853,93 @@ msgstr "неверный тип прав %s для параметра" msgid "column privileges are only valid for relations" msgstr "права для столбцов применимы только к отношениям" -#: catalog/aclchk.c:738 catalog/aclchk.c:3629 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:1112 +#: catalog/aclchk.c:1057 #, c-format msgid "default privileges cannot be set for columns" msgstr "права по умолчанию нельзя определить для столбцов" -#: catalog/aclchk.c:1148 +#: catalog/aclchk.c:1093 #, c-format msgid "permission denied to change default privileges" msgstr "нет полномочий для изменения прав доступа по умолчанию" -#: catalog/aclchk.c:1266 +#: catalog/aclchk.c:1211 #, c-format msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" msgstr "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON SCHEMAS" -#: catalog/aclchk.c:1617 catalog/catalog.c:659 catalog/objectaddress.c:1523 -#: catalog/pg_publication.c:528 commands/analyze.c:380 commands/copy.c:951 -#: commands/sequence.c:1655 commands/tablecmds.c:7541 commands/tablecmds.c:7695 -#: commands/tablecmds.c:7745 commands/tablecmds.c:7819 -#: commands/tablecmds.c:7889 commands/tablecmds.c:8019 -#: commands/tablecmds.c:8148 commands/tablecmds.c:8242 -#: commands/tablecmds.c:8343 commands/tablecmds.c:8470 -#: commands/tablecmds.c:8500 commands/tablecmds.c:8642 -#: commands/tablecmds.c:8735 commands/tablecmds.c:8869 -#: commands/tablecmds.c:8981 commands/tablecmds.c:12797 -#: commands/tablecmds.c:12989 commands/tablecmds.c:13150 -#: commands/tablecmds.c:14339 commands/tablecmds.c:16966 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:2812 +#: catalog/aclchk.c:1221 +#, fuzzy, c-format +msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" +msgstr "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON SCHEMAS" + +#: 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: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:951 +#: 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:1862 +#: catalog/aclchk.c:1820 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" - это индекс" -#: catalog/aclchk.c:1869 commands/tablecmds.c:14496 commands/tablecmds.c:17882 +#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" - это составной тип" -#: catalog/aclchk.c:1877 catalog/objectaddress.c:1363 commands/tablecmds.c:263 -#: commands/tablecmds.c:17846 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:1835 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 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\" - это не последовательность" -#: catalog/aclchk.c:1915 +#: catalog/aclchk.c:1873 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "" "для последовательности \"%s\" применимы только права USAGE, SELECT и UPDATE" -#: catalog/aclchk.c:1932 +#: catalog/aclchk.c:1890 #, c-format msgid "invalid privilege type %s for table" msgstr "право %s неприменимо для таблиц" -#: catalog/aclchk.c:2097 +#: catalog/aclchk.c:2055 #, c-format msgid "invalid privilege type %s for column" msgstr "право %s неприменимо для столбцов" -#: catalog/aclchk.c:2110 +#: catalog/aclchk.c:2068 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "для последовательности \"%s\" применимо только право SELECT" # TO REVIEW -#: catalog/aclchk.c:2301 +#: catalog/aclchk.c:2259 #, c-format msgid "language \"%s\" is not trusted" msgstr "язык \"%s\" не является доверенным" -#: catalog/aclchk.c:2303 +#: catalog/aclchk.c:2261 #, c-format msgid "" "GRANT and REVOKE are not allowed on untrusted languages, because only " @@ -4989,417 +4948,413 @@ msgstr "" "GRANT и REVOKE не допускаются для недоверенных языков, так как использовать " "такие языки могут только суперпользователи." -#: catalog/aclchk.c:2454 +#: catalog/aclchk.c:2412 #, c-format msgid "cannot set privileges of array types" msgstr "для типов массивов нельзя определить права" -#: catalog/aclchk.c:2455 +#: catalog/aclchk.c:2413 #, c-format msgid "Set the privileges of the element type instead." msgstr "Вместо этого установите права для типа элемента." -#: catalog/aclchk.c:2459 +#: catalog/aclchk.c:2417 #, c-format msgid "cannot set privileges of multirange types" msgstr "для мультидиапазонных типов нельзя определить права" -#: catalog/aclchk.c:2460 +#: catalog/aclchk.c:2418 #, c-format msgid "Set the privileges of the range type instead." msgstr "Вместо этого установите права для диапазонного типа." -#: catalog/aclchk.c:2467 catalog/objectaddress.c:1629 -#, c-format -msgid "\"%s\" is not a domain" -msgstr "\"%s\" - это не домен" - -#: catalog/aclchk.c:2653 +#: catalog/aclchk.c:2601 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "нераспознанное право: \"%s\"" -#: catalog/aclchk.c:2720 +#: catalog/aclchk.c:2668 #, c-format msgid "permission denied for aggregate %s" msgstr "нет доступа к агрегату %s" -#: catalog/aclchk.c:2723 +#: catalog/aclchk.c:2671 #, c-format msgid "permission denied for collation %s" msgstr "нет доступа к правилу сортировки %s" -#: catalog/aclchk.c:2726 +#: catalog/aclchk.c:2674 #, c-format msgid "permission denied for column %s" msgstr "нет доступа к столбцу %s" -#: catalog/aclchk.c:2729 +#: catalog/aclchk.c:2677 #, c-format msgid "permission denied for conversion %s" msgstr "нет доступа к преобразованию %s" -#: catalog/aclchk.c:2732 +#: catalog/aclchk.c:2680 #, c-format msgid "permission denied for database %s" msgstr "нет доступа к базе данных %s" -#: catalog/aclchk.c:2735 +#: catalog/aclchk.c:2683 #, c-format msgid "permission denied for domain %s" msgstr "нет доступа к домену %s" -#: catalog/aclchk.c:2738 +#: catalog/aclchk.c:2686 #, c-format msgid "permission denied for event trigger %s" msgstr "нет доступа к событийному триггеру %s" -#: catalog/aclchk.c:2741 +#: catalog/aclchk.c:2689 #, c-format msgid "permission denied for extension %s" msgstr "нет доступа к расширению %s" -#: catalog/aclchk.c:2744 +#: catalog/aclchk.c:2692 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "нет доступа к обёртке сторонних данных %s" -#: catalog/aclchk.c:2747 +#: catalog/aclchk.c:2695 #, c-format msgid "permission denied for foreign server %s" msgstr "нет доступа к стороннему серверу %s" -#: catalog/aclchk.c:2750 +#: catalog/aclchk.c:2698 #, c-format msgid "permission denied for foreign table %s" msgstr "нет доступа к сторонней таблице %s" -#: catalog/aclchk.c:2753 +#: catalog/aclchk.c:2701 #, c-format msgid "permission denied for function %s" msgstr "нет доступа к функции %s" -#: catalog/aclchk.c:2756 +#: catalog/aclchk.c:2704 #, c-format msgid "permission denied for index %s" msgstr "нет доступа к индексу %s" -#: catalog/aclchk.c:2759 +#: catalog/aclchk.c:2707 #, c-format msgid "permission denied for language %s" msgstr "нет доступа к языку %s" -#: catalog/aclchk.c:2762 +#: catalog/aclchk.c:2710 #, c-format msgid "permission denied for large object %s" msgstr "нет доступа к большому объекту %s" -#: catalog/aclchk.c:2765 +#: catalog/aclchk.c:2713 #, c-format msgid "permission denied for materialized view %s" msgstr "нет доступа к материализованному представлению %s" -#: catalog/aclchk.c:2768 +#: catalog/aclchk.c:2716 #, c-format msgid "permission denied for operator class %s" msgstr "нет доступа к классу операторов %s" -#: catalog/aclchk.c:2771 +#: catalog/aclchk.c:2719 #, c-format msgid "permission denied for operator %s" msgstr "нет доступа к оператору %s" -#: catalog/aclchk.c:2774 +#: catalog/aclchk.c:2722 #, c-format msgid "permission denied for operator family %s" msgstr "нет доступа к семейству операторов %s" -#: catalog/aclchk.c:2777 +#: catalog/aclchk.c:2725 #, c-format msgid "permission denied for parameter %s" msgstr "нет доступа к параметру %s" -#: catalog/aclchk.c:2780 +#: catalog/aclchk.c:2728 #, c-format msgid "permission denied for policy %s" msgstr "нет доступа к политике %s" -#: catalog/aclchk.c:2783 +#: catalog/aclchk.c:2731 #, c-format msgid "permission denied for procedure %s" msgstr "нет доступа к процедуре %s" -#: catalog/aclchk.c:2786 +#: catalog/aclchk.c:2734 #, c-format msgid "permission denied for publication %s" msgstr "нет доступа к публикации %s" -#: catalog/aclchk.c:2789 +#: catalog/aclchk.c:2737 #, c-format msgid "permission denied for routine %s" msgstr "нет доступа к подпрограмме %s" -#: catalog/aclchk.c:2792 +#: catalog/aclchk.c:2740 #, c-format msgid "permission denied for schema %s" msgstr "нет доступа к схеме %s" -#: catalog/aclchk.c:2795 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2743 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:2798 +#: catalog/aclchk.c:2746 #, c-format msgid "permission denied for statistics object %s" msgstr "нет доступа к объекту статистики %s" -#: catalog/aclchk.c:2801 +#: catalog/aclchk.c:2749 #, c-format msgid "permission denied for subscription %s" msgstr "нет доступа к подписке %s" -#: catalog/aclchk.c:2804 +#: catalog/aclchk.c:2752 #, c-format msgid "permission denied for table %s" msgstr "нет доступа к таблице %s" -#: catalog/aclchk.c:2807 +#: catalog/aclchk.c:2755 #, c-format msgid "permission denied for tablespace %s" msgstr "нет доступа к табличному пространству %s" -#: catalog/aclchk.c:2810 +#: catalog/aclchk.c:2758 #, c-format msgid "permission denied for text search configuration %s" msgstr "нет доступа к конфигурации текстового поиска %s" -#: catalog/aclchk.c:2813 +#: catalog/aclchk.c:2761 #, c-format msgid "permission denied for text search dictionary %s" msgstr "нет доступа к словарю текстового поиска %s" -#: catalog/aclchk.c:2816 +#: catalog/aclchk.c:2764 #, c-format msgid "permission denied for type %s" msgstr "нет доступа к типу %s" -#: catalog/aclchk.c:2819 +#: catalog/aclchk.c:2767 #, c-format msgid "permission denied for view %s" msgstr "нет доступа к представлению %s" -#: catalog/aclchk.c:2855 +#: catalog/aclchk.c:2803 #, c-format msgid "must be owner of aggregate %s" msgstr "нужно быть владельцем агрегата %s" -#: catalog/aclchk.c:2858 +#: catalog/aclchk.c:2806 #, c-format msgid "must be owner of collation %s" msgstr "нужно быть владельцем правила сортировки %s" -#: catalog/aclchk.c:2861 +#: catalog/aclchk.c:2809 #, c-format msgid "must be owner of conversion %s" msgstr "нужно быть владельцем преобразования %s" -#: catalog/aclchk.c:2864 +#: catalog/aclchk.c:2812 #, c-format msgid "must be owner of database %s" msgstr "нужно быть владельцем базы %s" -#: catalog/aclchk.c:2867 +#: catalog/aclchk.c:2815 #, c-format msgid "must be owner of domain %s" msgstr "нужно быть владельцем домена %s" -#: catalog/aclchk.c:2870 +#: catalog/aclchk.c:2818 #, c-format msgid "must be owner of event trigger %s" msgstr "нужно быть владельцем событийного триггера %s" -#: catalog/aclchk.c:2873 +#: catalog/aclchk.c:2821 #, c-format msgid "must be owner of extension %s" msgstr "нужно быть владельцем расширения %s" -#: catalog/aclchk.c:2876 +#: catalog/aclchk.c:2824 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "нужно быть владельцем обёртки сторонних данных %s" -#: catalog/aclchk.c:2879 +#: catalog/aclchk.c:2827 #, c-format msgid "must be owner of foreign server %s" msgstr "нужно быть \"владельцем\" стороннего сервера %s" -#: catalog/aclchk.c:2882 +#: catalog/aclchk.c:2830 #, c-format msgid "must be owner of foreign table %s" msgstr "нужно быть владельцем сторонней таблицы %s" -#: catalog/aclchk.c:2885 +#: catalog/aclchk.c:2833 #, c-format msgid "must be owner of function %s" msgstr "нужно быть владельцем функции %s" -#: catalog/aclchk.c:2888 +#: catalog/aclchk.c:2836 #, c-format msgid "must be owner of index %s" msgstr "нужно быть владельцем индекса %s" -#: catalog/aclchk.c:2891 +#: catalog/aclchk.c:2839 #, c-format msgid "must be owner of language %s" msgstr "нужно быть владельцем языка %s" -#: catalog/aclchk.c:2894 +#: catalog/aclchk.c:2842 #, c-format msgid "must be owner of large object %s" msgstr "нужно быть владельцем большого объекта %s" -#: catalog/aclchk.c:2897 +#: catalog/aclchk.c:2845 #, c-format msgid "must be owner of materialized view %s" msgstr "нужно быть владельцем материализованного представления %s" -#: catalog/aclchk.c:2900 +#: catalog/aclchk.c:2848 #, c-format msgid "must be owner of operator class %s" msgstr "нужно быть владельцем класса операторов %s" -#: catalog/aclchk.c:2903 +#: catalog/aclchk.c:2851 #, c-format msgid "must be owner of operator %s" msgstr "нужно быть владельцем оператора %s" -#: catalog/aclchk.c:2906 +#: catalog/aclchk.c:2854 #, c-format msgid "must be owner of operator family %s" msgstr "нужно быть владельцем семейства операторов %s" -#: catalog/aclchk.c:2909 +#: catalog/aclchk.c:2857 #, c-format msgid "must be owner of procedure %s" msgstr "нужно быть владельцем процедуры %s" -#: catalog/aclchk.c:2912 +#: catalog/aclchk.c:2860 #, c-format msgid "must be owner of publication %s" msgstr "нужно быть владельцем публикации %s" -#: catalog/aclchk.c:2915 +#: catalog/aclchk.c:2863 #, c-format msgid "must be owner of routine %s" msgstr "нужно быть владельцем подпрограммы %s" -#: catalog/aclchk.c:2918 +#: catalog/aclchk.c:2866 #, c-format msgid "must be owner of sequence %s" msgstr "нужно быть владельцем последовательности %s" -#: catalog/aclchk.c:2921 +#: catalog/aclchk.c:2869 #, c-format msgid "must be owner of subscription %s" msgstr "нужно быть владельцем подписки %s" -#: catalog/aclchk.c:2924 +#: catalog/aclchk.c:2872 #, c-format msgid "must be owner of table %s" msgstr "нужно быть владельцем таблицы %s" -#: catalog/aclchk.c:2927 +#: catalog/aclchk.c:2875 #, c-format msgid "must be owner of type %s" msgstr "нужно быть владельцем типа %s" -#: catalog/aclchk.c:2930 +#: catalog/aclchk.c:2878 #, c-format msgid "must be owner of view %s" msgstr "нужно быть владельцем представления %s" -#: catalog/aclchk.c:2933 +#: catalog/aclchk.c:2881 #, c-format msgid "must be owner of schema %s" msgstr "нужно быть владельцем схемы %s" -#: catalog/aclchk.c:2936 +#: catalog/aclchk.c:2884 #, c-format msgid "must be owner of statistics object %s" msgstr "нужно быть владельцем объекта статистики %s" -#: catalog/aclchk.c:2939 +#: catalog/aclchk.c:2887 #, c-format msgid "must be owner of tablespace %s" msgstr "нужно быть владельцем табличного пространства %s" -#: catalog/aclchk.c:2942 +#: catalog/aclchk.c:2890 #, c-format msgid "must be owner of text search configuration %s" msgstr "нужно быть владельцем конфигурации текстового поиска %s" -#: catalog/aclchk.c:2945 +#: catalog/aclchk.c:2893 #, c-format msgid "must be owner of text search dictionary %s" msgstr "нужно быть владельцем словаря текстового поиска %s" -#: catalog/aclchk.c:2959 +#: catalog/aclchk.c:2907 #, c-format msgid "must be owner of relation %s" msgstr "нужно быть владельцем отношения %s" -#: catalog/aclchk.c:3005 +#: catalog/aclchk.c:2953 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "нет доступа к столбцу \"%s\" отношения \"%s\"" -#: catalog/aclchk.c:3162 catalog/aclchk.c:4170 catalog/aclchk.c:4201 -#, c-format -msgid "%s with OID %u does not exist" -msgstr "%s с OID %u не существует" - -#: catalog/aclchk.c:3245 catalog/aclchk.c:3264 +#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "атрибут %d отношения с OID %u не существует" -#: catalog/aclchk.c:3302 catalog/aclchk.c:3365 catalog/aclchk.c:4004 +#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 #, c-format msgid "relation with OID %u does not exist" msgstr "отношение с OID %u не существует" -#: catalog/aclchk.c:3550 +#: catalog/aclchk.c:3492 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "ACL параметра с OID %u не существует" -#: catalog/aclchk.c:3723 commands/collationcmds.c:853 -#: commands/publicationcmds.c:1739 +#: 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 +#, c-format +msgid "large object %u does not exist" +msgstr "большой объект %u не существует" + +#: catalog/aclchk.c:3665 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1846 #, c-format msgid "schema with OID %u does not exist" msgstr "схема с OID %u не существует" -#: catalog/aclchk.c:3797 catalog/aclchk.c:3824 catalog/aclchk.c:3853 -#: utils/cache/typcache.c:392 utils/cache/typcache.c:447 +#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: 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:477 +#: catalog/catalog.c:504 #, c-format msgid "still searching for an unused OID in relation \"%s\"" msgstr "продолжается поиск неиспользованного OID в отношении \"%s\"" -#: catalog/catalog.c:479 -#, c-format +#: catalog/catalog.c:506 +#, fuzzy, c-format msgid "" -"OID candidates have been checked %llu time, but no unused OID has been found " -"yet." +"OID candidates have been checked % time, but no unused OID has been " +"found yet." msgid_plural "" -"OID candidates have been checked %llu times, but no unused OID has been " +"OID candidates have been checked % times, but no unused OID has been " "found yet." msgstr[0] "" "Потенциальные OID были проверены %llu раз, но неиспользуемые OID ещё не были " @@ -5411,35 +5366,36 @@ msgstr[2] "" "Потенциальные OID были проверены %llu раз, но неиспользуемые OID ещё не были " "найдены." -#: catalog/catalog.c:504 -#, 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" +#: catalog/catalog.c:531 +#, fuzzy, 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] "новый OID был назначен в отношении \"%s\" после %llu попытки" msgstr[1] "новый OID был назначен в отношении \"%s\" после %llu попыток" msgstr[2] "новый OID был назначен в отношении \"%s\" после %llu попыток" -#: catalog/catalog.c:637 catalog/catalog.c:704 +#: catalog/catalog.c:662 catalog/catalog.c:729 #, c-format msgid "must be superuser to call %s()" msgstr "вызывать %s() может только суперпользователь" -#: catalog/catalog.c:646 +#: catalog/catalog.c:671 #, c-format msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() можно использовать только для системных каталогов" -#: catalog/catalog.c:651 parser/parse_utilcmd.c:2270 +#: catalog/catalog.c:676 parser/parse_utilcmd.c:2448 #, c-format msgid "index \"%s\" does not belong to table \"%s\"" msgstr "индекс \"%s\" не принадлежит таблице \"%s\"" -#: catalog/catalog.c:668 +#: catalog/catalog.c:693 #, c-format msgid "column \"%s\" is not of type oid" msgstr "столбец \"%s\" имеет тип не oid" -#: catalog/catalog.c:675 +#: catalog/catalog.c:700 #, c-format msgid "index \"%s\" is not the index for column \"%s\"" msgstr "индекс \"%s\" не является индексом столбца \"%s\"" @@ -5493,15 +5449,16 @@ 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:1459 -#: commands/tablecmds.c:15088 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:211 commands/view.c:441 executor/execExprInterp.c:4655 -#: executor/execExprInterp.c:4663 libpq/auth.c:324 -#: replication/logical/applyparallelworker.c:1041 replication/syncrep.c:1011 -#: storage/lmgr/deadlock.c:1134 storage/lmgr/proc.c:1432 utils/misc/guc.c:3169 -#: utils/misc/guc.c:3210 utils/misc/guc.c:3285 utils/misc/guc.c:6825 -#: utils/misc/guc.c:6859 utils/misc/guc.c:6893 utils/misc/guc.c:6936 -#: utils/misc/guc.c:6978 +#: 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" @@ -5530,56 +5487,81 @@ msgstr[2] "удаление распространяется на ещё %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 +#, fuzzy, 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:221 +#: statistics/attribute_stats.c:593 statistics/attribute_stats.c:601 #, 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:2495 commands/tablecmds.c:2917 -#: commands/tablecmds.c:7163 +#: 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:7432 +#: 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 +#, fuzzy, c-format +msgid "virtual generated column \"%s\" cannot have a domain type" +msgstr "" +"значение по умолчанию для столбца \"%s\" нельзя автоматически привести к " +"типу %s" + +#: catalog/heap.c:622 #, c-format msgid "composite type %s cannot be made a member of itself" msgstr "составной тип %s не может содержать себя же" +#: catalog/heap.c:673 +#, fuzzy, c-format +msgid "virtual generated column \"%s\" cannot have a user-defined type" +msgstr "Генерируемые столбцы нельзя использовать в COPY." + +#: 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" @@ -5587,28 +5569,28 @@ 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:4171 +#: 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 " @@ -5617,54 +5599,59 @@ msgstr "" "С отношением уже связан тип с таким же именем; выберите имя, не " "конфликтующее с существующими типами." -#: catalog/heap.c:1218 +#: catalog/heap.c:1236 #, c-format msgid "toast relfilenumber value not set when in binary upgrade mode" msgstr "" "значение relfilenumber для TOAST не задано в режиме двоичного обновления" -#: 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:2130 +#: catalog/heap.c:2202 #, c-format msgid "cannot add NO INHERIT constraint to partitioned table \"%s\"" msgstr "" "добавить ограничение NO INHERIT к секционированной таблице \"%s\" нельзя" -#: catalog/heap.c:2402 +#: catalog/heap.c:2525 #, c-format msgid "check constraint \"%s\" already exists" msgstr "ограничение-проверка \"%s\" уже существует" -#: catalog/heap.c:2574 catalog/index.c:913 catalog/pg_constraint.c:724 -#: commands/tablecmds.c:9356 +#: catalog/heap.c:2626 catalog/heap.c:2946 +#, fuzzy, c-format +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 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "ограничение \"%s\" для отношения \"%s\" уже существует" -#: catalog/heap.c:2581 +#: catalog/heap.c:2786 #, c-format msgid "" "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "" "ограничение \"%s\" конфликтует с ненаследуемым ограничением таблицы \"%s\"" -#: catalog/heap.c:2592 +#: catalog/heap.c:2797 #, c-format msgid "" "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "" "ограничение \"%s\" конфликтует с наследуемым ограничением таблицы \"%s\"" -#: catalog/heap.c:2602 +#: catalog/heap.c:2807 #, c-format msgid "" "constraint \"%s\" conflicts with NOT VALID constraint on relation \"%s\"" @@ -5672,71 +5659,119 @@ msgstr "" "ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " "таблицы \"%s\"" -#: catalog/heap.c:2607 +#: catalog/heap.c:2819 +#, fuzzy, c-format +msgid "" +"constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" +msgstr "" +"ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " +"таблицы \"%s\"" + +#: catalog/heap.c:2824 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "слияние ограничения \"%s\" с унаследованным определением" -#: catalog/heap.c:2633 catalog/pg_constraint.c:853 commands/tablecmds.c:3074 -#: commands/tablecmds.c:3377 commands/tablecmds.c:7089 -#: commands/tablecmds.c:15907 commands/tablecmds.c:16038 +#: 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 #, c-format msgid "too many inheritance parents" msgstr "слишком много родителей в иерархии наследования" -#: catalog/heap.c:2717 +#: catalog/heap.c:2965 parser/parse_utilcmd.c:2656 +#, fuzzy, c-format +msgid "" +"conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" +msgstr "конфликт NULL/NOT NULL в объявлении столбца \"%s\" таблицы \"%s\"" + +#: catalog/heap.c:2979 +#, fuzzy, c-format +msgid "conflicting not-null constraint names \"%s\" and \"%s\"" +msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" + +#: catalog/heap.c:3009 +#, c-format +msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" +msgstr "" + +#: catalog/heap.c:3011 +#, fuzzy, c-format +msgid "The column has an inherited not-null constraint." +msgstr "" +"значение NULL в столбце \"%s\" отношения \"%s\" нарушает ограничение NOT NULL" + +#: catalog/heap.c:3201 #, c-format msgid "cannot use generated column \"%s\" in column generation expression" msgstr "" "использовать генерируемый столбец \"%s\" в выражении генерируемого столбца " "нельзя" -#: catalog/heap.c:2719 +#: catalog/heap.c:3203 #, c-format msgid "A generated column cannot reference another generated column." msgstr "" "Генерируемый столбец не может ссылаться на другой генерируемый столбец." -#: catalog/heap.c:2725 +#: catalog/heap.c:3209 #, c-format msgid "cannot use whole-row variable in column generation expression" msgstr "" "в выражении генерируемого столбца нельзя использовать переменные «вся строка»" -#: catalog/heap.c:2726 +#: catalog/heap.c:3210 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "" "Это сделало бы генерируемый столбец зависимым от собственного значения." -#: catalog/heap.c:2781 +#: catalog/heap.c:3277 +#, fuzzy, 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 +#, fuzzy, 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:2809 rewrite/rewriteHandler.c:1276 +#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "столбец \"%s\" имеет тип %s, но тип выражения по умолчанию %s" -#: catalog/heap.c:2814 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:1281 +#: 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 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "Перепишите выражение или преобразуйте его тип." -#: catalog/heap.c:2861 +#: catalog/heap.c:3429 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "в ограничении-проверке можно ссылаться только на таблицу \"%s\"" -#: catalog/heap.c:3167 +#: catalog/heap.c:3735 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "неподдерживаемое сочетание внешнего ключа с ON COMMIT" -#: catalog/heap.c:3168 +#: catalog/heap.c:3736 #, c-format msgid "" "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT " @@ -5744,118 +5779,118 @@ msgid "" msgstr "" "Таблица \"%s\" ссылается на \"%s\", и для них задан разный режим ON COMMIT." -#: catalog/heap.c:3173 +#: catalog/heap.c:3741 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "опустошить таблицу, на которую ссылается внешний ключ, нельзя" -#: catalog/heap.c:3174 +#: catalog/heap.c:3742 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "Таблица \"%s\" ссылается на \"%s\"." -#: catalog/heap.c:3176 +#: 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:2353 #, 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:3791 +#: 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:3668 +#: catalog/index.c:3729 #, c-format msgid "cannot reindex temporary tables of other sessions" msgstr "переиндексировать временные таблицы других сеансов нельзя" -#: catalog/index.c:3679 commands/indexcmds.c:3626 +#: catalog/index.c:3740 commands/indexcmds.c:3791 #, c-format msgid "cannot reindex invalid index on TOAST table" msgstr "перестроить нерабочий индекс в таблице TOAST нельзя" -#: catalog/index.c:3695 commands/indexcmds.c:3504 commands/indexcmds.c:3650 -#: commands/tablecmds.c:3581 +#: 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:3832 +#: catalog/index.c:3893 #, c-format msgid "index \"%s\" was reindexed" msgstr "индекс \"%s\" был перестроен" -#: catalog/index.c:3998 +#: catalog/index.c:4059 #, c-format msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "" @@ -5863,7 +5898,7 @@ msgstr "" "пропускается" #: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 -#: commands/trigger.c:5729 +#: commands/trigger.c:5817 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "ссылки между базами не реализованы: \"%s.%s.%s\"" @@ -5883,19 +5918,20 @@ msgstr "не удалось получить блокировку таблицы msgid "could not obtain lock on relation \"%s\"" msgstr "не удалось получить блокировку таблицы \"%s\"" -#: catalog/namespace.c:633 parser/parse_relation.c:1430 +#: catalog/namespace.c:633 parser/parse_relation.c:1447 +#: statistics/stat_utils.c:231 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "отношение \"%s.%s\" не существует" -#: catalog/namespace.c:638 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:704 catalog/namespace.c:3522 commands/extension.c:1607 -#: commands/extension.c:1613 +#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1804 +#: commands/extension.c:1810 #, c-format msgid "no schema has been selected to create in" msgstr "схема для создания объектов не выбрана" @@ -5941,13 +5977,13 @@ msgstr "шаблон текстового поиска \"%s\" не сущест msgid "text search configuration \"%s\" does not exist" msgstr "конфигурация текстового поиска \"%s\" не существует" -#: catalog/namespace.c:3329 parser/parse_expr.c:868 parser/parse_target.c:1259 +#: catalog/namespace.c:3329 parser/parse_expr.c:866 parser/parse_target.c:1262 #, c-format msgid "cross-database references are not implemented: %s" msgstr "ссылки между базами не реализованы: %s" -#: catalog/namespace.c:3335 parser/parse_expr.c:875 parser/parse_target.c:1266 -#: gram.y:19181 gram.y:19221 +#: catalog/namespace.c:3335 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: gram.y:19355 gram.y:19395 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неверное полное имя (слишком много компонентов): %s" @@ -5963,7 +5999,7 @@ 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:1404 utils/adt/regproc.c:1688 +#: commands/tablecmds.c:1464 utils/adt/regproc.c:1688 #, c-format msgid "schema \"%s\" does not exist" msgstr "схема \"%s\" не существует" @@ -5998,247 +6034,253 @@ msgstr "создавать временные таблицы в процессе 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:2327 -#: commands/tablecmds.c:12925 +#: 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 #, c-format msgid "\"%s\" is not a table" msgstr "\"%s\" - это не таблица" -#: catalog/objectaddress.c:1378 commands/tablecmds.c:269 -#: commands/tablecmds.c:17851 commands/view.c:114 +#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 +#: commands/tablecmds.c:19619 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:17856 +#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 +#: commands/tablecmds.c:19624 #, c-format msgid "\"%s\" is not a materialized view" msgstr "\"%s\" - это не материализованное представление" -#: catalog/objectaddress.c:1392 commands/tablecmds.c:293 -#: commands/tablecmds.c:17861 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 +#: commands/tablecmds.c:19629 #, 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 -#, c-format -msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." +#: catalog/objectaddress.c:2015 +#, fuzzy, c-format +msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." msgstr "Допустимые типы объектов: \"%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 большого объекта не может быть NULL" -#: 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:2928 +#: catalog/objectaddress.c:2937 #, c-format msgid "column %s of %s" msgstr "столбец %s отношения %s" -#: catalog/objectaddress.c:2943 +#: catalog/objectaddress.c:2952 #, c-format msgid "function %s" msgstr "функция %s" -#: catalog/objectaddress.c:2956 +#: catalog/objectaddress.c:2965 #, c-format msgid "type %s" msgstr "тип %s" -#: catalog/objectaddress.c:2993 +#: catalog/objectaddress.c:3002 #, c-format msgid "cast from %s to %s" msgstr "приведение %s к %s" -#: catalog/objectaddress.c:3026 +#: catalog/objectaddress.c:3035 #, c-format msgid "collation %s" msgstr "правило сортировки %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3057 +#: catalog/objectaddress.c:3066 #, c-format msgid "constraint %s on %s" msgstr "ограничение %s в отношении %s" -#: catalog/objectaddress.c:3063 +#: catalog/objectaddress.c:3072 #, c-format msgid "constraint %s" msgstr "ограничение %s" -#: catalog/objectaddress.c:3095 +#: catalog/objectaddress.c:3104 #, c-format msgid "conversion %s" msgstr "преобразование %s" #. translator: %s is typically "column %s of table %s" -#: catalog/objectaddress.c:3117 +#: catalog/objectaddress.c:3126 #, c-format msgid "default value for %s" msgstr "значение по умолчанию для %s" -#: catalog/objectaddress.c:3128 +#: catalog/objectaddress.c:3137 #, c-format msgid "language %s" msgstr "язык %s" -#: catalog/objectaddress.c:3136 +#: catalog/objectaddress.c:3145 #, c-format msgid "large object %u" msgstr "большой объект %u" -#: catalog/objectaddress.c:3149 +#: catalog/objectaddress.c:3158 #, c-format msgid "operator %s" msgstr "оператор %s" -#: catalog/objectaddress.c:3186 +#: catalog/objectaddress.c:3195 #, c-format msgid "operator class %s for access method %s" msgstr "класс операторов %s для метода доступа %s" -#: catalog/objectaddress.c:3214 +#: catalog/objectaddress.c:3223 #, c-format msgid "access method %s" msgstr "метод доступа %s" @@ -6247,7 +6289,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:3269 +#: catalog/objectaddress.c:3278 #, c-format msgid "operator %d (%s, %s) of %s: %s" msgstr "оператор %d (%s, %s) из семейства \"%s\": %s" @@ -6256,241 +6298,246 @@ 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:3334 +#: 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:3388 +#: 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:3434 +#: catalog/objectaddress.c:3443 #, c-format msgid "trigger %s on %s" msgstr "триггер %s в отношении %s" -#: catalog/objectaddress.c:3454 +#: catalog/objectaddress.c:3463 #, c-format msgid "schema %s" msgstr "схема %s" -#: catalog/objectaddress.c:3482 +#: catalog/objectaddress.c:3491 #, c-format msgid "statistics object %s" msgstr "объект статистики %s" -#: catalog/objectaddress.c:3513 +#: catalog/objectaddress.c:3522 #, c-format msgid "text search parser %s" msgstr "анализатор текстового поиска %s" -#: catalog/objectaddress.c:3544 +#: catalog/objectaddress.c:3553 #, c-format msgid "text search dictionary %s" msgstr "словарь текстового поиска %s" -#: catalog/objectaddress.c:3575 +#: catalog/objectaddress.c:3584 #, c-format msgid "text search template %s" msgstr "шаблон текстового поиска %s" -#: catalog/objectaddress.c:3606 +#: catalog/objectaddress.c:3615 #, c-format msgid "text search configuration %s" msgstr "конфигурация текстового поиска %s" -#: catalog/objectaddress.c:3619 +#: catalog/objectaddress.c:3628 #, c-format msgid "role %s" msgstr "роль %s" -#: catalog/objectaddress.c:3656 catalog/objectaddress.c:5505 +#: catalog/objectaddress.c:3665 catalog/objectaddress.c:5589 #, c-format msgid "membership of role %s in role %s" msgstr "членство роли %s в роли %s" -#: catalog/objectaddress.c:3677 +#: catalog/objectaddress.c:3686 #, c-format msgid "database %s" msgstr "база данных %s" -#: catalog/objectaddress.c:3693 +#: catalog/objectaddress.c:3702 #, c-format msgid "tablespace %s" msgstr "табличное пространство %s" -#: catalog/objectaddress.c:3704 +#: catalog/objectaddress.c:3713 #, c-format msgid "foreign-data wrapper %s" msgstr "обёртка сторонних данных %s" -#: catalog/objectaddress.c:3714 +#: catalog/objectaddress.c:3723 #, c-format msgid "server %s" msgstr "сервер %s" -#: catalog/objectaddress.c:3747 +#: catalog/objectaddress.c:3756 #, c-format msgid "user mapping for %s on server %s" msgstr "сопоставление для пользователя %s на сервере %s" -#: catalog/objectaddress.c:3799 +#: 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:3803 +#: catalog/objectaddress.c:3812 #, c-format msgid "default privileges on new relations belonging to role %s" msgstr "права по умолчанию для новых отношений, принадлежащих роли %s" -#: catalog/objectaddress.c:3809 +#: 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:3813 +#: catalog/objectaddress.c:3822 #, c-format msgid "default privileges on new sequences belonging to role %s" msgstr "" "права по умолчанию для новых последовательностей, принадлежащих роли %s" -#: catalog/objectaddress.c:3819 +#: 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:3823 +#: catalog/objectaddress.c:3832 #, c-format msgid "default privileges on new functions belonging to role %s" msgstr "права по умолчанию для новых функций, принадлежащих роли %s" -#: catalog/objectaddress.c:3829 +#: 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:3833 +#: catalog/objectaddress.c:3842 #, c-format msgid "default privileges on new types belonging to role %s" msgstr "права по умолчанию для новых типов, принадлежащих роли %s" -#: catalog/objectaddress.c:3839 +#: catalog/objectaddress.c:3848 #, c-format msgid "default privileges on new schemas belonging to role %s" msgstr "права по умолчанию для новых схем, принадлежащих роли %s" -#: catalog/objectaddress.c:3846 +#: catalog/objectaddress.c:3854 +#, fuzzy, 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:3850 +#: catalog/objectaddress.c:3865 #, c-format msgid "default privileges belonging to role %s" msgstr "права по умолчанию для новых объектов, принадлежащих роли %s" -#: catalog/objectaddress.c:3872 +#: catalog/objectaddress.c:3887 #, c-format msgid "extension %s" msgstr "расширение %s" -#: catalog/objectaddress.c:3889 +#: catalog/objectaddress.c:3904 #, c-format msgid "event trigger %s" msgstr "событийный триггер %s" -#: catalog/objectaddress.c:3913 +#: catalog/objectaddress.c:3928 #, c-format msgid "parameter %s" msgstr "параметр %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3956 +#: catalog/objectaddress.c:3971 #, c-format msgid "policy %s on %s" msgstr "политика %s отношения %s" -#: catalog/objectaddress.c:3970 +#: catalog/objectaddress.c:3985 #, c-format msgid "publication %s" msgstr "публикация %s" -#: catalog/objectaddress.c:3983 +#: 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:4014 +#: catalog/objectaddress.c:4029 #, c-format msgid "publication of %s in publication %s" msgstr "публикуемое отношение %s в публикации %s" -#: catalog/objectaddress.c:4027 +#: catalog/objectaddress.c:4042 #, c-format msgid "subscription %s" msgstr "подписка %s" -#: catalog/objectaddress.c:4048 +#: catalog/objectaddress.c:4063 #, c-format msgid "transform for %s language %s" msgstr "преобразование для %s, языка %s" -#: catalog/objectaddress.c:4117 +#: catalog/objectaddress.c:4132 #, c-format msgid "table %s" msgstr "таблица %s" -#: catalog/objectaddress.c:4122 +#: catalog/objectaddress.c:4137 #, c-format msgid "index %s" msgstr "индекс %s" -#: catalog/objectaddress.c:4126 +#: catalog/objectaddress.c:4141 #, c-format msgid "sequence %s" msgstr "последовательность %s" -#: catalog/objectaddress.c:4130 +#: catalog/objectaddress.c:4145 #, c-format msgid "toast table %s" msgstr "TOAST-таблица %s" -#: catalog/objectaddress.c:4134 +#: catalog/objectaddress.c:4149 #, c-format msgid "view %s" msgstr "представление %s" -#: catalog/objectaddress.c:4138 +#: catalog/objectaddress.c:4153 #, c-format msgid "materialized view %s" msgstr "материализованное представление %s" -#: catalog/objectaddress.c:4142 +#: catalog/objectaddress.c:4157 #, c-format msgid "composite type %s" msgstr "составной тип %s" -#: catalog/objectaddress.c:4146 +#: catalog/objectaddress.c:4161 #, c-format msgid "foreign table %s" msgstr "сторонняя таблица %s" -#: catalog/objectaddress.c:4151 +#: catalog/objectaddress.c:4166 #, c-format msgid "relation %s" msgstr "отношение %s" -#: catalog/objectaddress.c:4192 +#: catalog/objectaddress.c:4207 #, c-format msgid "operator family %s for access method %s" msgstr "семейство операторов %s для метода доступа %s" @@ -6543,7 +6590,7 @@ msgstr "" msgid "return type of inverse transition function %s is not %s" msgstr "обратная функция перехода %s должна возвращать тип %s" -#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2991 +#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:3057 #, c-format msgid "" "strictness of aggregate's forward and inverse transition functions must match" @@ -6562,7 +6609,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 "" @@ -6579,12 +6626,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 "небезопасное использование псевдотипа \"internal\"" @@ -6605,55 +6652,55 @@ 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 требуется приведение типов во время выполнения" @@ -6734,21 +6781,53 @@ 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 +#, fuzzy, c-format +msgid "" +"cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation " +"\"%s\"" +msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" + +#: catalog/pg_constraint.c:765 commands/tablecmds.c:9559 +#, c-format +msgid "You might need to make the existing constraint inheritable using %s." +msgstr "" + +#: catalog/pg_constraint.c:775 +#, fuzzy, c-format +msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" +msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" + +#: catalog/pg_constraint.c:777 commands/tablecmds.c:9571 +#, fuzzy, 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 "" + +#: catalog/pg_constraint.c:1665 +#, fuzzy, c-format +msgid "Only range and multirange are supported." +msgstr "нежурналируемые последовательности не поддерживаются" + #: catalog/pg_conversion.c:64 #, c-format msgid "conversion \"%s\" already exists" @@ -6759,23 +6838,23 @@ 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:3665 #, 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:3705 #, 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 " @@ -6784,7 +6863,7 @@ 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 "" @@ -6840,8 +6919,8 @@ msgstr "" "Эта секция отсоединяется параллельно или для неё не была завершена операция " "отсоединения." -#: catalog/pg_inherits.c:595 commands/tablecmds.c:4800 -#: commands/tablecmds.c:16153 +#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 +#: commands/tablecmds.c:17866 #, c-format msgid "" "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending " @@ -6956,7 +7035,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" @@ -6964,37 +7043,37 @@ msgstr[0] "функции не могут иметь больше %d аргум msgstr[1] "функции не могут иметь больше %d аргументов" msgstr[2] "функции не могут иметь больше %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 "изменить тип возврата существующей функции нельзя" @@ -7003,113 +7082,113 @@ 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 -#, c-format -msgid "cannot use generated column \"%s\" in publication column list" +#: catalog/pg_publication.c:582 +#, fuzzy, c-format +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\"" @@ -7199,12 +7278,12 @@ 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 " @@ -7214,7 +7293,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 " @@ -7251,7 +7330,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" @@ -7270,9 +7349,9 @@ msgstr "" "Имя мультидиапазонного типа можно указать вручную, воспользовавшись " "атрибутом \"multirange_type_name\"." -#: catalog/storage.c:533 storage/buffer/bufmgr.c:1540 -#, c-format -msgid "invalid page in block %u of relation %s" +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 +#, fuzzy, c-format +msgid "invalid page in block %u of relation \"%s\"" msgstr "неверная страница в блоке %u отношения %s" #: commands/aggregatecmds.c:167 @@ -7360,7 +7439,7 @@ 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 "" @@ -7378,12 +7457,12 @@ msgstr "" msgid "event trigger \"%s\" already exists" msgstr "событийный триггер \"%s\" уже существует" -#: commands/alter.c:86 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:89 commands/foreigncmds.c:884 +#: commands/alter.c:89 commands/foreigncmds.c:895 #, c-format msgid "server \"%s\" already exists" msgstr "сервер \"%s\" уже существует" @@ -7393,12 +7472,12 @@ msgstr "сервер \"%s\" уже существует" msgid "language \"%s\" already exists" msgstr "язык \"%s\" уже существует" -#: commands/alter.c:95 commands/publicationcmds.c:764 +#: commands/alter.c:95 commands/publicationcmds.c:865 #, c-format msgid "publication \"%s\" already exists" msgstr "публикация \"%s\" уже существует" -#: commands/alter.c:98 commands/subscriptioncmds.c:669 +#: commands/alter.c:98 commands/subscriptioncmds.c:629 #, c-format msgid "subscription \"%s\" already exists" msgstr "подписка \"%s\" уже существует" @@ -7438,16 +7517,16 @@ msgstr "конфигурация текстового поиска \"%s\" уже msgid "must be superuser to rename %s" msgstr "переименовать \"%s\" может только суперпользователь" -#: commands/alter.c:256 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:257 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 " @@ -7456,7 +7535,7 @@ msgstr "" "Подписки с параметром password_required option, равным false, могут " "создавать или изменять только суперпользователи." -#: commands/alter.c:735 +#: commands/alter.c:746 #, c-format msgid "must be superuser to set schema of %s" msgstr "для назначения схемы объекта %s нужно быть суперпользователем" @@ -7476,7 +7555,7 @@ msgstr "Для создания метода доступа нужно быть msgid "access method \"%s\" already exists" msgstr "метод доступа \"%s\" уже существует" -#: commands/amcmds.c:154 commands/indexcmds.c:224 commands/indexcmds.c:850 +#: 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" @@ -7488,45 +7567,50 @@ 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/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 +#, fuzzy, 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 " @@ -7536,7 +7620,7 @@ msgstr "" "%.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 " @@ -7545,7 +7629,7 @@ msgstr "" "пропускается анализ дерева наследования \"%s.%s\" --- это дерево " "наследования не содержит дочерних таблиц" -#: commands/analyze.c:1482 +#: commands/analyze.c:1528 #, c-format msgid "" "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree " @@ -7604,42 +7688,42 @@ msgstr "" "Очередь NOTIFY можно будет освободить, только когда этот процесс завершит " "текущую транзакцию." -#: commands/cluster.c:128 +#: commands/cluster.c:127 #, c-format msgid "unrecognized CLUSTER option \"%s\"" msgstr "нераспознанный параметр CLUSTER: \"%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:14797 commands/tablecmds.c:16729 +#: commands/cluster.c:190 commands/tablecmds.c:16422 commands/tablecmds.c:18488 #, 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:16739 +#: commands/cluster.c:507 commands/tablecmds.c:18498 #, 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 " @@ -7647,38 +7731,38 @@ msgid "" 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" @@ -7686,7 +7770,7 @@ 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" @@ -7695,7 +7779,7 @@ msgstr "" "В данный момент нельзя удалить \"мёртвых\" строк %.0f.\n" "%s." -#: commands/cluster.c:1744 +#: commands/cluster.c:1751 #, c-format msgid "permission denied to cluster \"%s\", skipping it" msgstr "нет прав для кластеризации отношения \"%s\", оно пропускается" @@ -7706,13 +7790,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:8129 -#: replication/pgoutput/pgoutput.c:314 replication/pgoutput/pgoutput.c:337 -#: replication/pgoutput/pgoutput.c:351 replication/pgoutput/pgoutput.c:361 -#: replication/pgoutput/pgoutput.c:371 replication/pgoutput/pgoutput.c:381 -#: replication/pgoutput/pgoutput.c:393 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: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 #, c-format msgid "conflicting or redundant options" msgstr "конфликтующие или избыточные параметры" @@ -7743,7 +7828,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\"" @@ -7754,7 +7839,7 @@ 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" @@ -7764,70 +7849,71 @@ 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:7905 commands/tablecmds.c:7915 -#: commands/tablecmds.c:7917 commands/tablecmds.c:14499 -#: commands/tablecmds.c:17884 commands/tablecmds.c:17905 -#: 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:16124 +#: commands/tablecmds.c:19652 commands/tablecmds.c:19673 +#: 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:2566 +#: commands/collationcmds.c:476 commands/dbcommands.c:2605 #, c-format msgid "changing version from %s to %s" msgstr "изменение версии с %s на %s" -#: commands/collationcmds.c:495 commands/dbcommands.c:2579 +#: commands/collationcmds.c:491 commands/dbcommands.c:2618 #, c-format msgid "version has not changed" msgstr "версия не была изменена" -#: commands/collationcmds.c:528 commands/dbcommands.c:2749 +#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: 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 "правило сортировки с OID %u не существует" -#: 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:1883 -#: commands/dbcommands.c:1995 commands/dbcommands.c:2193 -#: commands/dbcommands.c:2433 commands/dbcommands.c:2526 -#: commands/dbcommands.c:2650 commands/dbcommands.c:3161 -#: utils/init/postinit.c:1034 utils/init/postinit.c:1098 -#: utils/init/postinit.c:1171 +#: 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 #, c-format msgid "database \"%s\" does not exist" msgstr "база данных \"%s\" не существует" @@ -7837,12 +7923,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 для строк" @@ -7947,214 +8033,238 @@ 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:782 commands/copy.c:798 -#: commands/copy.c:815 commands/copy.c:841 commands/copy.c:851 +#: commands/copy.c:402 commands/copy.c:818 commands/copy.c:834 +#: commands/copy.c:851 commands/copy.c:877 commands/copy.c:887 #, 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:416 commands/copy.c:474 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "параметр COPY %s \"%s\" не распознан" -#: commands/copy.c:502 +#: 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 +#, c-format +msgid "%s requires a numeric value" +msgstr "%s требует числовое значение" + +#: commands/copy.c:446 +#, fuzzy, c-format +msgid "REJECT_LIMIT (%) must be greater than zero" +msgstr "значение CACHE (%lld) должно быть больше нуля" + +#: commands/copy.c:536 #, 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:594 commands/copy.c:609 commands/copy.c:624 +#: commands/copy.c:643 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "аргументом параметра \"%s\" должен быть список имён столбцов" -#: commands/copy.c:621 +#: commands/copy.c:655 #, 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:2381 +#: commands/copy.c:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 #, 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:696 commands/copy.c:701 commands/copy.c:706 +#: commands/copy.c:776 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "в режиме BINARY нельзя указывать %s" -#: 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:728 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "разделитель для COPY должен быть однобайтным символом" -#: commands/copy.c:699 +#: commands/copy.c:735 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "" "разделителем для COPY не может быть символ новой строки или возврата каретки" -#: commands/copy.c:705 +#: commands/copy.c:741 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "" "представление NULL для COPY не может включать символ новой строки или " "возврата каретки" -#: commands/copy.c:715 +#: commands/copy.c:751 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "" "представление DEFAULT для COPY не может включать символ новой строки или " "возврата каретки" -#: commands/copy.c:733 +#: commands/copy.c:769 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "\"%s\" не может быть разделителем для COPY" #. 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:791 commands/copy.c:807 +#: commands/copy.c:783 commands/copy.c:800 commands/copy.c:812 +#: commands/copy.c:827 commands/copy.c:843 #, c-format msgid "COPY %s requires CSV mode" msgstr "для COPY %s требуется режим CSV" -#: commands/copy.c:752 +#: commands/copy.c:788 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "символ кавычек для COPY должен быть однобайтным" -#: commands/copy.c:757 +#: commands/copy.c:793 #, c-format msgid "COPY delimiter and quote must be different" msgstr "символ кавычек для COPY должен отличаться от разделителя" -#: commands/copy.c:769 +#: commands/copy.c:805 #, 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:823 commands/copy.c:859 +#: commands/copy.c:859 commands/copy.c:895 #, 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:832 commands/copy.c:868 +#: commands/copy.c:868 commands/copy.c:904 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "символ кавычек в CSV не должен присутствовать в указании %s" -#: commands/copy.c:877 +#: commands/copy.c:913 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "представления NULL и DEFAULT не могут быть одинаковыми" -#: commands/copy.c:939 +#: commands/copy.c:919 +#, 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:926 +#, fuzzy, c-format +msgid "COPY %s requires %s to be set to %s" +msgstr "для COPY %s требуется режим CSV" + +#: commands/copy.c:988 #, c-format msgid "column \"%s\" is a generated column" msgstr "столбец \"%s\" — генерируемый" -#: commands/copy.c:941 +#: commands/copy.c:990 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "Генерируемые столбцы нельзя использовать в COPY." -#: commands/copy.c:956 commands/indexcmds.c:1890 commands/statscmds.c:239 -#: commands/tablecmds.c:2526 commands/tablecmds.c:2997 -#: commands/tablecmds.c:3808 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: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 #, c-format msgid "column \"%s\" does not exist" msgstr "столбец \"%s\" не существует" -#: commands/copy.c:963 commands/tablecmds.c:2552 commands/trigger.c:951 -#: parser/parse_target.c:1083 parser/parse_target.c:1094 +#: commands/copy.c:1012 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 -#, c-format -msgid "COPY %s, line %llu, column %s" +#: commands/copyfrom.c:268 +#, fuzzy, c-format +msgid "COPY %s, line %, column %s" msgstr "COPY %s, строка %llu, столбец %s" -#: commands/copyfrom.c:131 commands/copyfrom.c:177 -#, c-format -msgid "COPY %s, line %llu" +#: commands/copyfrom.c:273 commands/copyfrom.c:319 +#, fuzzy, c-format +msgid "COPY %s, line %" msgstr "COPY %s, строка %llu" -#: commands/copyfrom.c:143 -#, c-format -msgid "COPY %s, line %llu, column %s: \"%s\"" +#: commands/copyfrom.c:285 +#, fuzzy, c-format +msgid "COPY %s, line %, column %s: \"%s\"" msgstr "COPY %s, строка %llu, столбец %s: \"%s\"" -#: commands/copyfrom.c:153 -#, c-format -msgid "COPY %s, line %llu, column %s: null input" +#: commands/copyfrom.c:295 +#, fuzzy, c-format +msgid "COPY %s, line %, column %s: null input" msgstr "COPY %s, строка %llu, столбец %s: значение NULL" -#: commands/copyfrom.c:170 -#, c-format -msgid "COPY %s, line %llu: \"%s\"" +#: commands/copyfrom.c:312 +#, fuzzy, c-format +msgid "COPY %s, line %: \"%s\"" msgstr "COPY %s, строка %llu: \"%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 +#, fuzzy, 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 " @@ -8163,29 +8273,36 @@ msgstr "" "выполнить COPY FREEZE нельзя, так как таблица не была создана или усечена в " "текущей подтранзакции" -#: commands/copyfrom.c:1313 -#, c-format -msgid "%llu row was skipped due to data type incompatibility" -msgid_plural "%llu rows were skipped due to data type incompatibility" +#: commands/copyfrom.c:1171 +#, fuzzy, c-format +msgid "" +"skipped more than REJECT_LIMIT (%) rows due to data type " +"incompatibility" +msgstr "из-за несовместимости типов данных пропущена %llu строка" + +#: commands/copyfrom.c:1474 +#, fuzzy, c-format +msgid "% row was skipped due to data type incompatibility" +msgid_plural "% rows were skipped due to data type incompatibility" msgstr[0] "из-за несовместимости типов данных пропущена %llu строка" msgstr[1] "из-за несовместимости типов данных пропущены %llu строки" msgstr[2] "из-за несовместимости типов данных пропущены %llu строк" #. 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:601 +#: 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 " @@ -8195,17 +8312,17 @@ msgstr "" "файла. Возможно, на самом деле вам нужно клиентское средство, например, " "\\copy в psql." -#: commands/copyfrom.c:1755 commands/copyto.c:706 +#: 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\"" @@ -8246,27 +8363,27 @@ 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:732 replication/walsender.c:758 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:748 #, 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:779 #, c-format msgid "COPY from stdin failed: %s" msgstr "ошибка при вводе данных COPY из stdin: %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\"), " @@ -8275,7 +8392,7 @@ 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\"" @@ -8283,222 +8400,227 @@ 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 -#, c-format +#: commands/copyfromparse.c:1056 +#, fuzzy, c-format msgid "" -"skipping row due to data type incompatibility at line %llu for column " +"skipping row due to data type incompatibility at line % for column " "\"%s\": \"%s\"" msgstr "" "строка пропускается из-за несовместимости данных в строке %llu, столбце " "\"%s\": \"%s\"" -#: commands/copyfromparse.c:998 -#, c-format +#: commands/copyfromparse.c:1064 +#, fuzzy, c-format msgid "" -"skipping row due to data type incompatibility at line %llu for column " +"skipping row due to data type incompatibility at line % for column " "\"%s\": null input" msgstr "" "строка пропускается из-за несовместимости данных в строке %llu, столбце " "\"%s\": значение null" -#: 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 -#, c-format -msgid "end-of-copy marker corrupt" -msgstr "маркер \"конец копии\" испорчен" +#: commands/copyfromparse.c:1473 commands/copyfromparse.c:1484 +#: commands/copyfromparse.c:1500 +#, fuzzy, c-format +msgid "end-of-copy marker is not alone on its line" +msgstr "маркер \"конец копии\" не соответствует предыдущему стилю новой строки" -#: 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 "неожиданный маркер DEFAULT в данных 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 -#, c-format -msgid "cannot copy from materialized view \"%s\"" +#: commands/copyto.c:660 +#, fuzzy, c-format +msgid "cannot copy from unpopulated materialized view \"%s\"" msgstr "копировать из материализованного представления \"%s\" нельзя" -#: commands/copyto.c:391 +#: commands/copyto.c:662 executor/execUtils.c:760 +#, c-format +msgid "Use the REFRESH MATERIALIZED VIEW command." +msgstr "Примените команду REFRESH MATERIALIZED VIEW." + +#: 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 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:499 +#: commands/copyto.c:778 #, c-format msgid "COPY query must not be a utility command" msgstr "служебная команда в запросе COPY не допускается" -#: commands/copyto.c:515 +#: commands/copyto.c:794 #, c-format msgid "COPY query must have a RETURNING clause" msgstr "в запросе COPY должно быть предложение RETURNING" -#: commands/copyto.c:544 +#: commands/copyto.c:823 #, c-format msgid "relation referenced by COPY statement has changed" msgstr "отношение, задействованное в операторе COPY, изменилось" -#: commands/copyto.c:671 +#: commands/copyto.c:950 #, c-format msgid "relative path not allowed for COPY to file" msgstr "при выполнении COPY в файл нельзя указывать относительный путь" -#: commands/copyto.c:690 +#: commands/copyto.c:969 #, c-format msgid "could not open file \"%s\" for writing: %m" msgstr "не удалось открыть файл \"%s\" для записи: %m" -#: commands/copyto.c:693 +#: commands/copyto.c:972 #, c-format msgid "" "COPY TO instructs the PostgreSQL server process to write a file. You may " @@ -8508,135 +8630,143 @@ msgstr "" "Возможно, на самом деле вам нужно клиентское средство, например, \\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:2414 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:300 #: 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:2444 -#: utils/init/postinit.c:1113 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: 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 -#, c-format -msgid "If the locale name is specific to ICU, use ICU_LOCALE." +#: commands/dbcommands.c:1073 commands/dbcommands.c:1091 +#, fuzzy, c-format +msgid "" +"If the locale name is specific to the builtin provider, use BUILTIN_LOCALE." +msgstr "Если эта локаль свойственна ICU, используйте ICU_LOCALE." + +#: commands/dbcommands.c:1078 commands/dbcommands.c:1096 +#, fuzzy, c-format +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 " @@ -8644,7 +8774,7 @@ msgid "" 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 " @@ -8653,7 +8783,7 @@ msgstr "" "Используйте кодировку шаблона базы данных или выберите в качестве шаблона " "template0." -#: commands/dbcommands.c:1171 +#: commands/dbcommands.c:1210 #, c-format msgid "" "new collation (%s) is incompatible with the collation of the template " @@ -8662,7 +8792,7 @@ 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 " @@ -8671,7 +8801,7 @@ 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 " @@ -8680,7 +8810,7 @@ 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 " @@ -8689,7 +8819,7 @@ 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 " @@ -8698,7 +8828,7 @@ 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 " @@ -8707,14 +8837,14 @@ 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 " @@ -8723,7 +8853,7 @@ 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 " @@ -8732,7 +8862,7 @@ msgstr "" "новые правила сортировки ICU (%s) несовместимы с правилами сортировки в " "шаблоне базы данных (%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 " @@ -8741,7 +8871,7 @@ msgstr "" "Используйте те же правила сортировки, что и в шаблоне базы данных, или " "выберите в качестве шаблона template0." -#: commands/dbcommands.c:1243 +#: commands/dbcommands.c:1282 #, c-format msgid "" "template database \"%s\" has a collation version, but no actual collation " @@ -8750,13 +8880,13 @@ 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 " @@ -8765,7 +8895,7 @@ 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 " @@ -8776,18 +8906,18 @@ msgstr "" "сортировки, и выполните ALTER DATABASE %s REFRESH COLLATION VERSION, либо " "соберите PostgreSQL с правильной версией библиотеки." -#: commands/dbcommands.c:1298 commands/dbcommands.c:2041 +#: 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 " @@ -8796,63 +8926,63 @@ msgstr "" "База данных \"%s\" содержит таблицы, которые уже находятся в этом табличном " "пространстве." -#: commands/dbcommands.c:1356 commands/dbcommands.c:1912 +#: 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:2588 +#: commands/dbcommands.c:1610 commands/dbcommands.c:1625 +#: utils/adt/pg_locale.c:1518 #, 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." @@ -8860,12 +8990,12 @@ msgstr[0] "Обнаружен %d активный слот." msgstr[1] "Обнаружены %d активных слота." msgstr[2] "Обнаружено %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." @@ -8873,36 +9003,36 @@ msgstr[0] "Обнаружена %d подписка." msgstr[1] "Обнаружены %d подписки." msgstr[2] "Обнаружено %d подписок." -#: commands/dbcommands.c:1754 commands/dbcommands.c:1934 -#: commands/dbcommands.c:2063 +#: 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:1894 +#: commands/dbcommands.c:1933 #, c-format msgid "permission denied to rename database" msgstr "нет прав для переименования базы данных" -#: commands/dbcommands.c:1923 +#: commands/dbcommands.c:1962 #, c-format msgid "current database cannot be renamed" msgstr "нельзя переименовать текущую базу данных" -#: commands/dbcommands.c:2019 +#: commands/dbcommands.c:2058 #, c-format msgid "cannot change the tablespace of the currently open database" msgstr "" "изменить табличное пространство открытой в данный момент базы данных нельзя" -#: commands/dbcommands.c:2125 +#: commands/dbcommands.c:2164 #, c-format msgid "some relations of database \"%s\" are already in tablespace \"%s\"" msgstr "" "некоторые отношения базы данных \"%s\" уже находятся в табличном " "пространстве \"%s\"" -#: commands/dbcommands.c:2127 +#: commands/dbcommands.c:2166 #, c-format msgid "" "You must move them back to the database's default tablespace before using " @@ -8911,38 +9041,38 @@ msgstr "" "Прежде чем выполнять эту команду, вы должны вернуть их назад в табличное " "пространство по умолчанию для этой базы данных." -#: commands/dbcommands.c:2256 commands/dbcommands.c:2999 -#: commands/dbcommands.c:3299 commands/dbcommands.c:3412 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 +#: commands/dbcommands.c:3338 commands/dbcommands.c:3451 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "в старом каталоге базы данных \"%s\" могли остаться ненужные файлы" -#: commands/dbcommands.c:2317 +#: commands/dbcommands.c:2356 #, c-format msgid "unrecognized DROP DATABASE option \"%s\"" msgstr "нераспознанный параметр DROP DATABASE: \"%s\"" -#: commands/dbcommands.c:2395 +#: commands/dbcommands.c:2434 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "параметр \"%s\" нельзя задать с другими параметрами" -#: commands/dbcommands.c:2443 +#: commands/dbcommands.c:2482 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "изменить свойства некорректной базы \"%s\" нельзя" -#: commands/dbcommands.c:2460 +#: commands/dbcommands.c:2499 #, c-format msgid "cannot disallow connections for current database" msgstr "запретить подключения к текущей базе данных нельзя" -#: commands/dbcommands.c:2690 +#: commands/dbcommands.c:2729 #, c-format msgid "permission denied to change owner of database" msgstr "нет прав для изменения владельца базы данных" -#: commands/dbcommands.c:3105 +#: commands/dbcommands.c:3144 #, c-format msgid "" "There are %d other session(s) and %d prepared transaction(s) using the " @@ -8951,7 +9081,7 @@ msgstr "" "С этой базой данных связаны другие сеансы (%d) и подготовленные транзакции " "(%d)." -#: commands/dbcommands.c:3108 +#: commands/dbcommands.c:3147 #, c-format msgid "There is %d other session using the database." msgid_plural "There are %d other sessions using the database." @@ -8959,7 +9089,7 @@ msgstr[0] "Эта база данных используется ещё в %d с msgstr[1] "Эта база данных используется ещё в %d сеансах." msgstr[2] "Эта база данных используется ещё в %d сеансах." -#: commands/dbcommands.c:3113 storage/ipc/procarray.c:3859 +#: commands/dbcommands.c:3152 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." @@ -8967,56 +9097,50 @@ msgstr[0] "С этой базой данных связана %d подгото msgstr[1] "С этой базой данных связаны %d подготовленные транзакции." msgstr[2] "С этой базой данных связаны %d подготовленных транзакций." -#: commands/dbcommands.c:3255 +#: commands/dbcommands.c:3294 #, c-format msgid "missing directory \"%s\"" msgstr "отсутствует каталог \"%s\"" -#: commands/dbcommands.c:3313 commands/tablespace.c:184 +#: commands/dbcommands.c:3352 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:2910 +#: commands/dropcmds.c:96 commands/functioncmds.c:1400 +#: utils/adt/ruleutils.c:2956 #, c-format msgid "\"%s\" is an aggregate function" msgstr "функция \"%s\" является агрегатной" @@ -9026,19 +9150,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:3892 -#: commands/tablecmds.c:4050 commands/tablecmds.c:4102 -#: commands/tablecmds.c:17161 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:18929 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:1409 +#: 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\" не существует, пропускается" @@ -9058,7 +9182,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:682 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "объект статистики \"%s\" не существует, пропускается" @@ -9153,7 +9277,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\" не существует, пропускается" @@ -9239,122 +9363,108 @@ msgstr "нет прав для изменения владельца событ msgid "The owner of an event trigger must be a superuser." msgstr "Владельцем событийного триггера должен быть суперпользователь." -#: commands/event_trigger.c:1409 +#: commands/event_trigger.c:1404 #, c-format msgid "%s can only be called in a sql_drop event trigger function" msgstr "%s можно вызывать только в событийной триггерной функции sql_drop" -#: commands/event_trigger.c:1502 commands/event_trigger.c:1523 +#: commands/event_trigger.c:1497 commands/event_trigger.c:1518 #, c-format msgid "%s can only be called in a table_rewrite event trigger function" msgstr "%s можно вызывать только в событийной триггерной функции table_rewrite" -#: commands/event_trigger.c:1936 +#: commands/event_trigger.c:1931 #, c-format msgid "%s can only be called in an event trigger function" msgstr "%s можно вызывать только в событийной триггерной функции" -#: commands/explain.c:241 commands/explain.c:266 +#: 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.c:273 +#: commands/explain_state.c:165 #, c-format msgid "unrecognized EXPLAIN option \"%s\"" msgstr "нераспознанный параметр EXPLAIN: \"%s\"" -#: commands/explain.c:282 -#, c-format -msgid "EXPLAIN option WAL requires ANALYZE" +#: commands/explain_state.c:174 commands/explain_state.c:186 +#: commands/explain_state.c:192 +#, fuzzy, c-format +msgid "EXPLAIN option %s requires ANALYZE" msgstr "параметр WAL оператора EXPLAIN требует указания ANALYZE" -#: commands/explain.c:291 -#, c-format -msgid "EXPLAIN option TIMING requires ANALYZE" -msgstr "параметр TIMING оператора EXPLAIN требует указания ANALYZE" - -#: commands/explain.c:297 -#, c-format -msgid "EXPLAIN option SERIALIZE requires ANALYZE" -msgstr "параметр SERIALIZE оператора EXPLAIN требует указания 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 оператора EXPLAIN нельзя использовать " "одновременно" -#: commands/extension.c:178 commands/extension.c:3031 +#: commands/extension.c:177 commands/extension.c:3299 #, 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 " @@ -9362,91 +9472,106 @@ msgid "" 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\" = true" -#: commands/extension.c:817 +#: commands/extension.c:867 +#, fuzzy, c-format +msgid "SQL statement \"%.*s\"" +msgstr "SQL-оператор: \"%s\"" + +#: commands/extension.c:896 +#, fuzzy, c-format +msgid "extension script file \"%s\", near line %d" +msgstr "Подключение соответствует строке %2$d в \"%1$s\": \"%3$s\"" + +#: commands/extension.c:900 +#, fuzzy, 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\"" @@ -9454,7 +9579,7 @@ 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\"" @@ -9462,12 +9587,12 @@ msgstr "" "для расширения \"%s\" не определён путь обновления с версии \"%s\" до версии " "\"%s\"" -#: commands/extension.c:1496 commands/extension.c:3089 +#: commands/extension.c:1693 commands/extension.c:3357 #, 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 " @@ -9476,71 +9601,71 @@ 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:2665 #, 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:2677 #, c-format msgid "OID %u does not refer to a table" msgstr "OID %u не относится к таблице" -#: commands/extension.c:2467 +#: commands/extension.c:2682 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "таблица \"%s\" не относится к созданному расширению" -#: commands/extension.c:2813 +#: commands/extension.c:3081 #, c-format msgid "" "cannot move extension \"%s\" into schema \"%s\" because the extension " @@ -9549,12 +9674,12 @@ msgstr "" "переместить расширение \"%s\" в схему \"%s\" нельзя, так как оно содержит " "схему" -#: commands/extension.c:2854 commands/extension.c:2948 +#: commands/extension.c:3122 commands/extension.c:3216 #, c-format msgid "extension \"%s\" does not support SET SCHEMA" msgstr "расширение \"%s\" не поддерживает SET SCHEMA" -#: commands/extension.c:2911 +#: commands/extension.c:3179 #, c-format msgid "" "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" @@ -9562,32 +9687,32 @@ msgstr "" "выполнить SET SCHEMA для расширения \"%s\" нельзя, так как этому " "препятствуют другие расширения" -#: commands/extension.c:2913 +#: commands/extension.c:3181 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "Расширение \"%s\" не допускает перемещения расширения \"%s\"." -#: commands/extension.c:2950 +#: commands/extension.c:3218 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "объект %s не принадлежит схеме расширения \"%s\"" -#: commands/extension.c:3011 +#: commands/extension.c:3279 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "вложенные операторы ALTER EXTENSION не поддерживаются" -#: commands/extension.c:3100 +#: commands/extension.c:3368 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "версия \"%s\" расширения \"%s\" уже установлена" -#: commands/extension.c:3311 +#: commands/extension.c:3579 #, c-format msgid "cannot add an object of this type to an extension" msgstr "добавить объект этого типа к расширению нельзя" -#: commands/extension.c:3409 +#: commands/extension.c:3677 #, c-format msgid "" "cannot add schema \"%s\" to extension \"%s\" because the schema contains the " @@ -9596,78 +9721,85 @@ msgstr "" "добавить схему \"%s\" к расширению \"%s\" нельзя, так как схема содержит " "расширение" -#: commands/extension.c:3491 commands/typecmds.c:4042 utils/fmgr/funcapi.c:725 +#: commands/extension.c:3759 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:3801 #, c-format msgid "file \"%s\" is too large" msgstr "файл \"%s\" слишком большой" -#: commands/foreigncmds.c:148 commands/foreigncmds.c:157 +#: commands/extension.c:3894 utils/fmgr/dfmgr.c:625 +#, fuzzy, c-format +msgid "component in parameter \"%s\" is not an absolute path" +msgstr "" +"параметр dynamic_library_path содержит компонент, не являющийся абсолютным " +"путём" + +#: 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 " @@ -9676,7 +9808,7 @@ msgstr "" "при изменении обработчика в обёртке сторонних данных может измениться " "поведение существующих сторонних таблиц" -#: commands/foreigncmds.c:745 +#: commands/foreigncmds.c:756 #, c-format msgid "" "changing the foreign-data wrapper validator can cause the options for " @@ -9685,46 +9817,46 @@ 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\"" @@ -9759,121 +9891,121 @@ 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" @@ -9881,84 +10013,84 @@ 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 " @@ -9967,17 +10099,17 @@ 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 " @@ -9986,132 +10118,132 @@ 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" @@ -10119,91 +10251,106 @@ msgstr[0] "процедуре нельзя передать больше %d ар msgstr[1] "процедуре нельзя передать больше %d аргументов" msgstr[2] "процедуре нельзя передать больше %d аргументов" -#: commands/indexcmds.c:656 +#: commands/indexcmds.c:659 #, c-format msgid "must specify at least one column" msgstr "нужно указать минимум один столбец" -#: commands/indexcmds.c:660 +#: commands/indexcmds.c:663 #, c-format msgid "cannot use more than %d columns in an index" msgstr "число столбцов в индексе не может превышать %d" -#: commands/indexcmds.c:703 +#: commands/indexcmds.c:712 #, c-format msgid "cannot create index on relation \"%s\"" msgstr "создать индекс для отношения \"%s\" нельзя" -#: commands/indexcmds.c:729 +#: commands/indexcmds.c:738 #, c-format msgid "cannot create index on partitioned table \"%s\" concurrently" msgstr "" "создать индекс в секционированной таблице \"%s\" параллельным способом нельзя" -#: commands/indexcmds.c:739 +#: commands/indexcmds.c:748 #, c-format msgid "cannot create indexes on temporary tables of other sessions" msgstr "создавать индексы во временных таблицах других сеансов нельзя" -#: commands/indexcmds.c:777 commands/tablecmds.c:818 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:809 commands/tablecmds.c:849 commands/tablecmds.c:3588 +#: 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:842 +#: commands/indexcmds.c:851 #, c-format msgid "substituting access method \"gist\" for obsolete method \"rtree\"" msgstr "устаревший метод доступа \"rtree\" подменяется методом \"gist\"" -#: commands/indexcmds.c:863 +#: commands/indexcmds.c:872 #, c-format msgid "access method \"%s\" does not support unique indexes" msgstr "метод доступа \"%s\" не поддерживает уникальные индексы" -#: commands/indexcmds.c:868 +#: commands/indexcmds.c:877 #, c-format msgid "access method \"%s\" does not support included columns" msgstr "метод доступа \"%s\" не поддерживает включаемые столбцы" -#: commands/indexcmds.c:873 +#: commands/indexcmds.c:882 #, c-format msgid "access method \"%s\" does not support multicolumn indexes" msgstr "метод доступа \"%s\" не поддерживает индексы по многим столбцам" -#: commands/indexcmds.c:878 +#: commands/indexcmds.c:887 #, c-format msgid "access method \"%s\" does not support exclusion constraints" msgstr "метод доступа \"%s\" не поддерживает ограничения-исключения" -#: commands/indexcmds.c:1007 -#, c-format -msgid "cannot match partition key to an index using access method \"%s\"" -msgstr "" -"сопоставить ключ секционирования с индексом, использующим метод доступа " -"\"%s\", нельзя" +#: commands/indexcmds.c:892 +#, fuzzy, c-format +msgid "access method \"%s\" does not support WITHOUT OVERLAPS constraints" +msgstr "метод доступа \"%s\" не поддерживает ограничения-исключения" -#: commands/indexcmds.c:1017 +#: commands/indexcmds.c:1019 #, c-format msgid "unsupported %s constraint with partition key definition" msgstr "" "неподдерживаемое ограничение \"%s\" с определением ключа секционирования" -#: commands/indexcmds.c:1019 +#: commands/indexcmds.c:1021 #, c-format msgid "%s constraints cannot be used when partition keys include expressions." msgstr "" "Ограничения %s не могут использоваться, когда ключи секционирования включают " "выражения." -#: commands/indexcmds.c:1069 +#: 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 +#, fuzzy, 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 " @@ -10212,7 +10359,7 @@ msgstr "" "сопоставить ключ секционирования с индексом, построенному по столбцу \"%s\" " "с оператором неравенства \"%s\", нельзя" -#: commands/indexcmds.c:1085 +#: commands/indexcmds.c:1093 #, c-format msgid "" "unique constraint on partitioned table must include all partitioning columns" @@ -10220,7 +10367,7 @@ msgstr "" "ограничение уникальности в секционированной таблице должно включать все " "секционирующие столбцы" -#: commands/indexcmds.c:1086 +#: commands/indexcmds.c:1094 #, c-format msgid "" "%s constraint on table \"%s\" lacks column \"%s\" which is part of the " @@ -10229,92 +10376,107 @@ msgstr "" "В ограничении %s таблицы \"%s\" не хватает столбца \"%s\", входящего в ключ " "секционирования." -#: commands/indexcmds.c:1105 commands/indexcmds.c:1124 +#: commands/indexcmds.c:1116 commands/indexcmds.c:1147 #, c-format msgid "index creation on system columns is not supported" msgstr "создание индекса для системных столбцов не поддерживается" -#: commands/indexcmds.c:1354 tcop/utility.c:1515 +#: commands/indexcmds.c:1123 +#, fuzzy, c-format +msgid "primary keys on virtual generated columns are not supported" +msgstr "генерируемые столбцы не поддерживаются с секциями" + +#: commands/indexcmds.c:1125 commands/indexcmds.c:1164 +#, fuzzy, c-format +msgid "unique constraints on virtual generated columns are not supported" +msgstr "создание индекса для системных столбцов не поддерживается" + +#: commands/indexcmds.c:1126 commands/indexcmds.c:1165 +#, fuzzy, 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:1356 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:1806 +#: commands/indexcmds.c:1857 #, c-format msgid "functions in index predicate must be marked IMMUTABLE" msgstr "функции в предикате индекса должны быть помечены как IMMUTABLE" -#: commands/indexcmds.c:1885 parser/parse_utilcmd.c:2519 -#: parser/parse_utilcmd.c:2654 +#: commands/indexcmds.c:1954 parser/parse_utilcmd.c:2736 +#: parser/parse_utilcmd.c:2919 #, c-format msgid "column \"%s\" named in key does not exist" msgstr "указанный в ключе столбец \"%s\" не существует" -#: commands/indexcmds.c:1909 parser/parse_utilcmd.c:1807 +#: commands/indexcmds.c:1978 parser/parse_utilcmd.c:1989 #, c-format msgid "expressions are not supported in included columns" msgstr "выражения во включаемых столбцах не поддерживаются" -#: commands/indexcmds.c:1950 +#: commands/indexcmds.c:2019 #, c-format msgid "functions in index expression must be marked IMMUTABLE" msgstr "функции в индексном выражении должны быть помечены как IMMUTABLE" -#: commands/indexcmds.c:1965 +#: commands/indexcmds.c:2034 #, c-format msgid "including column does not support a collation" msgstr "включаемые столбцы не поддерживают правила сортировки" -#: commands/indexcmds.c:1969 +#: commands/indexcmds.c:2038 #, c-format msgid "including column does not support an operator class" msgstr "включаемые столбцы не поддерживают классы операторов" -#: commands/indexcmds.c:1973 +#: commands/indexcmds.c:2042 #, c-format msgid "including column does not support ASC/DESC options" msgstr "включаемые столбцы не поддерживают сортировку ASC/DESC" -#: commands/indexcmds.c:1977 +#: commands/indexcmds.c:2046 #, c-format msgid "including column does not support NULLS FIRST/LAST options" msgstr "включаемые столбцы не поддерживают указания NULLS FIRST/LAST" -#: commands/indexcmds.c:2020 +#: commands/indexcmds.c:2089 #, c-format msgid "could not determine which collation to use for index expression" msgstr "не удалось определить правило сортировки для индексного выражения" -#: commands/indexcmds.c:2028 commands/tablecmds.c:18185 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: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 #, c-format msgid "collations are not supported by type %s" msgstr "тип %s не поддерживает сортировку (COLLATION)" -#: commands/indexcmds.c:2095 +#: commands/indexcmds.c:2164 #, c-format msgid "operator %s is not commutative" msgstr "оператор %s не коммутативен" -#: commands/indexcmds.c:2097 +#: commands/indexcmds.c:2166 #, c-format msgid "Only commutative operators can be used in exclusion constraints." msgstr "" "В ограничениях-исключениях могут использоваться только коммутативные " "операторы." -#: commands/indexcmds.c:2123 +#: commands/indexcmds.c:2176 #, c-format msgid "operator %s is not a member of operator family \"%s\"" msgstr "оператор \"%s\" не входит в семейство операторов \"%s\"" -#: commands/indexcmds.c:2126 +#: commands/indexcmds.c:2179 #, c-format msgid "" "The exclusion operator must be related to the index operator class for the " @@ -10323,25 +10485,25 @@ msgstr "" "Оператор исключения для ограничения должен относиться к классу операторов " "индекса." -#: commands/indexcmds.c:2161 +#: commands/indexcmds.c:2228 #, c-format msgid "access method \"%s\" does not support ASC/DESC options" msgstr "метод доступа \"%s\" не поддерживает сортировку ASC/DESC" -#: commands/indexcmds.c:2166 +#: 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:2210 commands/tablecmds.c:18210 -#: commands/tablecmds.c:18216 commands/typecmds.c:2311 +#: commands/indexcmds.c:2277 commands/tablecmds.c:19984 +#: commands/tablecmds.c:19990 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:2212 +#: commands/indexcmds.c:2279 #, c-format msgid "" "You must specify an operator class for the index or define a default " @@ -10350,89 +10512,107 @@ msgstr "" "Вы должны указать класс операторов для индекса или определить класс " "операторов по умолчанию для этого типа данных." -#: commands/indexcmds.c:2241 commands/indexcmds.c:2249 +#: 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:2263 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:2353 +#: commands/indexcmds.c:2420 #, c-format msgid "there are multiple default operator classes for data type %s" msgstr "" "для типа данных %s определено несколько классов операторов по умолчанию" -#: commands/indexcmds.c:2681 +#: commands/indexcmds.c:2470 commands/indexcmds.c:2489 +#, fuzzy, c-format +msgid "could not identify an overlaps operator for type %s" +msgstr "для типа %s не удалось найти оператор сортировки" + +#: commands/indexcmds.c:2471 commands/indexcmds.c:2490 +#, fuzzy, c-format +msgid "could not identify a contained-by operator for type %s" +msgstr "не удалось найти оператор неравенства для типа %s" + +#: commands/indexcmds.c:2472 commands/tablecmds.c:10333 +#, fuzzy, c-format +msgid "" +"Could not translate compare type %d for operator family \"%s\" of access " +"method \"%s\"." +msgstr "" +"Преобразовать имя клиентского компьютера \"%s\" в IP-адрес не удалось: %s." + +#: commands/indexcmds.c:2846 #, c-format msgid "unrecognized REINDEX option \"%s\"" msgstr "нераспознанный параметр REINDEX: \"%s\"" -#: commands/indexcmds.c:2913 +#: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" msgstr "" "в таблице \"%s\" нет индексов, которые можно переиндексировать неблокирующим " "способом" -#: commands/indexcmds.c:2927 +#: commands/indexcmds.c:3092 #, c-format msgid "table \"%s\" has no indexes to reindex" msgstr "в таблице \"%s\" нет индексов для переиндексации" -#: commands/indexcmds.c:2974 commands/indexcmds.c:3485 -#: commands/indexcmds.c:3615 +#: commands/indexcmds.c:3139 commands/indexcmds.c:3650 +#: commands/indexcmds.c:3780 #, c-format msgid "cannot reindex system catalogs concurrently" msgstr "Переиндексировать системные каталоги неблокирующим способом нельзя" -#: commands/indexcmds.c:2998 +#: commands/indexcmds.c:3163 #, c-format msgid "can only reindex the currently open database" msgstr "переиндексировать можно только текущую базу данных" -#: commands/indexcmds.c:3090 +#: commands/indexcmds.c:3255 #, c-format msgid "cannot reindex system catalogs concurrently, skipping all" msgstr "" "все системные каталоги пропускаются, так как их нельзя переиндексировать " "неблокирующим способом" -#: commands/indexcmds.c:3123 +#: commands/indexcmds.c:3288 #, c-format msgid "cannot move system relations, skipping all" msgstr "переместить системные отношения нельзя, все они пропускаются" -#: commands/indexcmds.c:3169 +#: commands/indexcmds.c:3334 #, c-format msgid "while reindexing partitioned table \"%s.%s\"" msgstr "при переиндексировании секционированной таблицы \"%s.%s\"" -#: commands/indexcmds.c:3172 +#: commands/indexcmds.c:3337 #, c-format msgid "while reindexing partitioned index \"%s.%s\"" msgstr "при перестроении секционированного индекса \"%s.%s\"" -#: commands/indexcmds.c:3365 commands/indexcmds.c:4241 +#: commands/indexcmds.c:3530 commands/indexcmds.c:4422 #, c-format msgid "table \"%s.%s\" was reindexed" msgstr "таблица \"%s.%s\" переиндексирована" -#: commands/indexcmds.c:3517 commands/indexcmds.c:3570 +#: commands/indexcmds.c:3682 commands/indexcmds.c:3735 #, c-format msgid "skipping reindex of invalid index \"%s.%s\"" msgstr "индекс \"%s.%s\" — нерабочий, переиндексация пропускается" -#: commands/indexcmds.c:3520 commands/indexcmds.c:3573 +#: 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:3524 +#: commands/indexcmds.c:3689 #, c-format msgid "" "cannot reindex exclusion constraint index \"%s.%s\" concurrently, skipping" @@ -10440,24 +10620,24 @@ msgstr "" "перестроить индекс ограничения-исключения \"%s.%s\" неблокирующим способом " "нельзя, он пропускается" -#: commands/indexcmds.c:3680 +#: commands/indexcmds.c:3845 #, c-format msgid "cannot reindex this type of relation concurrently" msgstr "переиндексировать отношение такого типа неблокирующим способом нельзя" -#: commands/indexcmds.c:3698 +#: commands/indexcmds.c:3863 #, c-format msgid "cannot move non-shared relation to tablespace \"%s\"" msgstr "" "переместить отношение, не являющееся разделяемым, в табличное пространство " "\"%s\" нельзя" -#: commands/indexcmds.c:4222 commands/indexcmds.c:4234 +#: commands/indexcmds.c:4403 commands/indexcmds.c:4415 #, c-format msgid "index \"%s.%s\" was reindexed" msgstr "индекс \"%s.%s\" был перестроен" -#: commands/indexcmds.c:4224 commands/indexcmds.c:4243 +#: commands/indexcmds.c:4405 commands/indexcmds.c:4424 #, c-format msgid "%s." msgstr "%s." @@ -10467,24 +10647,24 @@ 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 " @@ -10493,7 +10673,7 @@ msgstr "" "Создайте уникальный индекс без предложения WHERE для одного или нескольких " "столбцов материализованного представления." -#: commands/matview.c:666 +#: commands/matview.c:682 #, c-format msgid "" "new data for materialized view \"%s\" contains duplicate rows without any " @@ -10502,11 +10682,16 @@ msgstr "" "новые данные для материализованного представления \"%s\" содержат " "дублирующиеся строки (без учёта столбцов с NULL)" -#: commands/matview.c:668 +#: commands/matview.c:684 #, c-format msgid "Row: %s" msgstr "Строка: %s" +#: commands/matview.c:838 +#, fuzzy, 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\"" @@ -10633,106 +10818,121 @@ msgstr "" "операторов: '%s'." #: commands/opclasscmds.c:1259 -#, c-format -msgid "btree comparison functions must have two arguments" +#, fuzzy, c-format +msgid "ordering comparison functions must have two arguments" msgstr "функции сравнения btree должны иметь два аргумента" #: commands/opclasscmds.c:1263 -#, c-format -msgid "btree comparison functions must return integer" +#, fuzzy, c-format +msgid "ordering comparison functions must return integer" msgstr "функции сравнения btree должны возвращать целое число" #: commands/opclasscmds.c:1280 -#, c-format -msgid "btree sort support functions must accept type \"internal\"" +#, fuzzy, c-format +msgid "ordering sort support functions must accept type \"internal\"" msgstr "опорные функции сортировки btree должны принимать тип \"internal\"" #: commands/opclasscmds.c:1284 -#, c-format -msgid "btree sort support functions must return void" +#, fuzzy, c-format +msgid "ordering sort support functions must return void" msgstr "опорные функции сортировки btree должны возвращать пустое (void)" #: commands/opclasscmds.c:1295 -#, c-format -msgid "btree in_range functions must have five arguments" +#, fuzzy, c-format +msgid "ordering in_range functions must have five arguments" msgstr "функции in_range для btree должны принимать пять аргументов" #: commands/opclasscmds.c:1299 -#, c-format -msgid "btree in_range functions must return boolean" +#, fuzzy, c-format +msgid "ordering in_range functions must return boolean" msgstr "функции in_range для btree должны возвращать логическое значение" #: commands/opclasscmds.c:1315 -#, c-format -msgid "btree equal image functions must have one argument" +#, fuzzy, c-format +msgid "ordering equal image functions must have one argument" msgstr "функции равенства образов btree должны иметь один аргумент" #: commands/opclasscmds.c:1319 -#, c-format -msgid "btree equal image functions must return boolean" +#, fuzzy, c-format +msgid "ordering equal image functions must return boolean" msgstr "функции равенства образов должны возвращать логическое значение" #: commands/opclasscmds.c:1332 -#, c-format -msgid "btree equal image functions must not be cross-type" +#, fuzzy, c-format +msgid "ordering equal image functions must not be cross-type" msgstr "функции равенства образов не должны быть межтиповыми" -#: commands/opclasscmds.c:1342 +#: commands/opclasscmds.c:1340 +#, fuzzy, c-format +msgid "btree skip support functions must accept type \"internal\"" +msgstr "опорные функции сортировки btree должны принимать тип \"internal\"" + +#: commands/opclasscmds.c:1344 +#, fuzzy, c-format +msgid "btree skip support functions must return void" +msgstr "опорные функции сортировки btree должны возвращать пустое (void)" + +#: commands/opclasscmds.c:1357 +#, fuzzy, c-format +msgid "btree skip support functions must not be cross-type" +msgstr "функции равенства образов не должны быть межтиповыми" + +#: commands/opclasscmds.c:1367 #, c-format msgid "hash function 1 must have one argument" msgstr "функция хеширования 1 должна принимать один аргумент" -#: commands/opclasscmds.c:1346 +#: commands/opclasscmds.c:1371 #, c-format msgid "hash function 1 must return integer" msgstr "функция хеширования 1 должна возвращать целое число" -#: commands/opclasscmds.c:1353 +#: commands/opclasscmds.c:1378 #, c-format msgid "hash function 2 must have two arguments" msgstr "функция хеширования 2 должна принимать два аргумента" -#: commands/opclasscmds.c:1357 +#: commands/opclasscmds.c:1382 #, c-format msgid "hash function 2 must return bigint" msgstr "функция хеширования 2 должна возвращать значение bigint" -#: commands/opclasscmds.c:1382 +#: commands/opclasscmds.c:1407 #, c-format msgid "associated data types must be specified for index support function" msgstr "для опорной функции индексов должны быть указаны связанные типы данных" -#: commands/opclasscmds.c:1407 +#: commands/opclasscmds.c:1432 #, c-format msgid "function number %d for (%s,%s) appears more than once" msgstr "номер функции %d для (%s,%s) дублируется" -#: commands/opclasscmds.c:1414 +#: commands/opclasscmds.c:1439 #, c-format msgid "operator number %d for (%s,%s) appears more than once" msgstr "номер оператора %d для (%s,%s) дублируется" -#: commands/opclasscmds.c:1460 +#: 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:1589 +#: 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:1744 +#: 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:1784 +#: 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:1815 +#: commands/opclasscmds.c:1840 #, c-format msgid "" "operator class \"%s\" for access method \"%s\" already exists in schema " @@ -10741,7 +10941,7 @@ msgstr "" "класс операторов \"%s\" для метода доступа \"%s\" уже существует в схеме " "\"%s\"" -#: commands/opclasscmds.c:1838 +#: commands/opclasscmds.c:1863 #, c-format msgid "" "operator family \"%s\" for access method \"%s\" already exists in schema " @@ -10818,11 +11018,11 @@ 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:1740 commands/tablecmds.c:2340 -#: commands/tablecmds.c:3702 commands/tablecmds.c:6605 -#: commands/tablecmds.c:9637 commands/tablecmds.c:17772 -#: commands/tablecmds.c:17807 commands/trigger.c:316 commands/trigger.c:1332 -#: commands/trigger.c:1442 rewrite/rewriteDefine.c:268 +#: 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 #, c-format msgid "permission denied: \"%s\" is a system catalog" @@ -10863,58 +11063,58 @@ 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 "неверный оператор: имя не должно быть пустым" # [SM]: TO REVIEW -#: 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" # [SM]: TO REVIEW -#: commands/prepare.c:411 +#: commands/prepare.c:414 #, c-format msgid "prepared statement \"%s\" already exists" msgstr "подготовленный оператор \"%s\" уже существует" # [SM]: TO REVIEW -#: commands/prepare.c:450 +#: commands/prepare.c:453 #, c-format msgid "prepared statement \"%s\" does not exist" msgstr "подготовленный оператор \"%s\" не существует" @@ -10925,37 +11125,38 @@ 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:1865 +#: 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." @@ -10963,43 +11164,43 @@ 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 " @@ -11008,7 +11209,7 @@ 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." @@ -11016,34 +11217,34 @@ 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 ALL 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\" публикации \"%s\" нельзя присвоить false" -#: commands/publicationcmds.c:961 +#: commands/publicationcmds.c:1070 #, c-format msgid "" "The publication contains a WHERE clause for partitioned table \"%s\", which " @@ -11052,7 +11253,7 @@ 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 " @@ -11061,12 +11262,12 @@ 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 " @@ -11075,86 +11276,96 @@ 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\" определена для всех таблиц (FOR ALL TABLES)" -#: 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 "" "Владельцем публикации всех таблиц (FOR ALL TABLES) должен быть " "суперпользователь." -#: 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 "публикация с OID %u не существует" +#: commands/publicationcmds.c:2133 +#, fuzzy, c-format +msgid "invalid value for publication parameter \"%s\": \"%s\"" +msgstr "неверное значение для параметра \"%s\": \"%s\"" + +#: commands/publicationcmds.c:2134 +#, fuzzy, c-format +msgid "Valid values are \"%s\" and \"%s\"." +msgstr "Допускаются значения только от \"%d\" до \"%d\"." + #: commands/schemacmds.c:109 commands/schemacmds.c:289 #, c-format msgid "unacceptable schema name \"%s\"" @@ -11199,14 +11410,14 @@ msgid "cannot set security label on relation \"%s\"" msgstr "задать метку безопасности для отношения \"%s\" нельзя" #: commands/sequence.c:748 -#, c-format -msgid "nextval: reached maximum value of sequence \"%s\" (%lld)" +#, fuzzy, c-format +msgid "nextval: reached maximum value of sequence \"%s\" (%)" msgstr "" "функция nextval достигла максимума для последовательности \"%s\" (%lld)" #: commands/sequence.c:767 -#, c-format -msgid "nextval: reached minimum value of sequence \"%s\" (%lld)" +#, fuzzy, c-format +msgid "nextval: reached minimum value of sequence \"%s\" (%)" msgstr "функция nextval достигла минимума для последовательности \"%s\" (%lld)" #: commands/sequence.c:886 @@ -11222,8 +11433,10 @@ msgid "lastval is not yet defined in this session" msgstr "последнее значение (lastval) ещё не определено в этом сеансе" #: commands/sequence.c:991 -#, c-format -msgid "setval: value %lld is out of bounds for sequence \"%s\" (%lld..%lld)" +#, fuzzy, c-format +msgid "" +"setval: value % is out of bounds for sequence \"%s\" (%.." +"%)" msgstr "" "функции setval передано значение %lld вне пределов последовательности " "\"%s\" (%lld..%lld)" @@ -11251,43 +11464,43 @@ msgid "INCREMENT must not be zero" msgstr "INCREMENT не может быть нулевым" #: commands/sequence.c:1466 -#, c-format -msgid "MAXVALUE (%lld) is out of range for sequence data type %s" +#, fuzzy, c-format +msgid "MAXVALUE (%) is out of range for sequence data type %s" msgstr "MAXVALUE (%lld) выходит за пределы типа данных последовательности %s" #: commands/sequence.c:1498 -#, c-format -msgid "MINVALUE (%lld) is out of range for sequence data type %s" +#, fuzzy, c-format +msgid "MINVALUE (%) is out of range for sequence data type %s" msgstr "MINVALUE (%lld) выходит за пределы типа данных последовательности %s" #: commands/sequence.c:1506 -#, c-format -msgid "MINVALUE (%lld) must be less than MAXVALUE (%lld)" +#, fuzzy, c-format +msgid "MINVALUE (%) must be less than MAXVALUE (%)" msgstr "MINVALUE (%lld) должно быть меньше MAXVALUE (%lld)" #: commands/sequence.c:1527 -#, c-format -msgid "START value (%lld) cannot be less than MINVALUE (%lld)" +#, fuzzy, c-format +msgid "START value (%) cannot be less than MINVALUE (%)" msgstr "значение START (%lld) не может быть меньше MINVALUE (%lld)" #: commands/sequence.c:1533 -#, c-format -msgid "START value (%lld) cannot be greater than MAXVALUE (%lld)" +#, fuzzy, c-format +msgid "START value (%) cannot be greater than MAXVALUE (%)" msgstr "значение START (%lld) не может быть больше MAXVALUE (%lld)" #: commands/sequence.c:1557 -#, c-format -msgid "RESTART value (%lld) cannot be less than MINVALUE (%lld)" +#, fuzzy, c-format +msgid "RESTART value (%) cannot be less than MINVALUE (%)" msgstr "значение RESTART (%lld) не может быть меньше MINVALUE (%lld)" #: commands/sequence.c:1563 -#, c-format -msgid "RESTART value (%lld) cannot be greater than MAXVALUE (%lld)" +#, fuzzy, c-format +msgid "RESTART value (%) cannot be greater than MAXVALUE (%)" msgstr "значение RESTART (%lld) не может быть больше MAXVALUE (%lld)" #: commands/sequence.c:1574 -#, c-format -msgid "CACHE (%lld) must be greater than zero" +#, fuzzy, c-format +msgid "CACHE (%) must be greater than zero" msgstr "значение CACHE (%lld) должно быть больше нуля" #: commands/sequence.c:1610 @@ -11325,13 +11538,13 @@ msgstr "" msgid "cannot change ownership of identity sequence" msgstr "сменить владельца последовательности идентификации нельзя" -#: commands/sequence.c:1671 commands/tablecmds.c:14486 -#: commands/tablecmds.c:17181 +#: commands/sequence.c:1671 commands/tablecmds.c:16111 +#: commands/tablecmds.c:18949 #, 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 можно указать только одно отношение" @@ -11356,12 +11569,17 @@ msgstr "объект статистики \"%s\" уже существует" 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:247 commands/statscmds.c:276 commands/statscmds.c:316 #, c-format msgid "statistics creation on system columns is not supported" msgstr "создание статистики для системных столбцов не поддерживается" -#: commands/statscmds.c:254 commands/statscmds.c:277 +#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#, fuzzy, c-format +msgid "statistics creation on virtual generated columns is not supported" +msgstr "создание статистики для системных столбцов не поддерживается" + +#: commands/statscmds.c:260 commands/statscmds.c:289 #, c-format msgid "" "column \"%s\" cannot be used in statistics because its type %s has no " @@ -11370,7 +11588,7 @@ msgstr "" "столбец \"%s\" нельзя использовать в статистике, так как для его типа %s не " "определён класс операторов B-дерева по умолчанию" -#: commands/statscmds.c:321 +#: commands/statscmds.c:339 #, c-format msgid "" "expression cannot be used in multivariate statistics because its type %s has " @@ -11379,7 +11597,7 @@ msgstr "" "выражение нельзя использовать в многовариантной статистике, так как для его " "типа %s не определён класс операторов btree по умолчанию" -#: commands/statscmds.c:342 +#: commands/statscmds.c:360 #, c-format msgid "" "when building statistics on a single expression, statistics kinds may not be " @@ -11388,76 +11606,76 @@ msgstr "" "при построении статистики по единственному выражению указывать виды " "статистики нельзя" -#: commands/statscmds.c:371 +#: commands/statscmds.c:389 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "нераспознанный вид статистики \"%s\"" -#: commands/statscmds.c:400 +#: commands/statscmds.c:418 #, c-format msgid "extended statistics require at least 2 columns" msgstr "для расширенной статистики требуются минимум 2 столбца" -#: commands/statscmds.c:418 +#: commands/statscmds.c:436 #, c-format msgid "duplicate column name in statistics definition" msgstr "повторяющееся имя столбца в определении статистики" -#: commands/statscmds.c:453 +#: commands/statscmds.c:471 #, c-format msgid "duplicate expression in statistics definition" msgstr "повторяющееся выражение в определении статистики" -#: commands/statscmds.c:628 commands/tablecmds.c:8620 +#: commands/statscmds.c:646 commands/tablecmds.c:8914 #, c-format msgid "statistics target %d is too low" msgstr "ориентир статистики слишком мал (%d)" -#: commands/statscmds.c:636 commands/tablecmds.c:8628 +#: commands/statscmds.c:654 commands/tablecmds.c:8922 #, c-format msgid "lowering statistics target to %d" msgstr "ориентир статистики снижается до %d" -#: commands/statscmds.c:660 +#: commands/statscmds.c:678 #, 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:404 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:410 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "нераспознанное значение origin: \"%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" @@ -11465,34 +11683,33 @@ msgstr[0] "публикация %s не существует на публику msgstr[1] "публикации %s не существуют на публикующем сервере" msgstr[2] "публикации %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 -#, c-format -msgid "could not connect to the publisher: %s" +#: commands/subscriptioncmds.c:718 commands/subscriptioncmds.c:852 +#: commands/subscriptioncmds.c:1594 +#, fuzzy, c-format +msgid "subscription \"%s\" could not connect to the publisher: %s" msgstr "не удалось подключиться к серверу публикации: %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, " @@ -11501,43 +11718,74 @@ msgstr "" "Чтобы начать репликацию, вы должны вручную создать слот репликации, включить " "подписку, а затем обновить её." -#: commands/subscriptioncmds.c:1109 commands/subscriptioncmds.c:1590 -#: commands/subscriptioncmds.c:1973 utils/cache/lsyscache.c:3684 +#: commands/subscriptioncmds.c:1070 +#, fuzzy, 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 "\"slot_name\" and \"two_phase\" cannot be altered at the same time" +msgstr "" + +#: commands/subscriptioncmds.c:1286 +#, fuzzy, c-format msgid "" -"cannot set option \"%s\" for a subscription that does not have a slot name" +"cannot alter \"two_phase\" when logical replication worker is still running" +msgstr "использовать %s со слотом логической репликации нельзя" + +#: commands/subscriptioncmds.c:1287 +#, c-format +msgid "Try again after some time." msgstr "" -"задать параметр \"%s\" для подписки, для которой не задано имя слота, нельзя" -#: commands/subscriptioncmds.c:1279 +#: commands/subscriptioncmds.c:1300 +#, fuzzy, c-format +msgid "cannot disable \"two_phase\" when prepared transactions exist" +msgstr "база \"%s\" используется подготовленными транзакциями" + +#: commands/subscriptioncmds.c:1301 +#, fuzzy, c-format +msgid "Resolve these transactions and try again." +msgstr "Устанавливает режим \"только чтение\" для текущей транзакции." + +#: 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 " @@ -11546,7 +11794,7 @@ 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 " @@ -11556,7 +11804,7 @@ msgstr "" "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 " @@ -11565,13 +11813,13 @@ 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 " @@ -11580,7 +11828,7 @@ 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/" @@ -11589,39 +11837,39 @@ 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) должна быть больше начального 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 "подписка с OID %u не существует" -#: 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 " @@ -11630,7 +11878,7 @@ msgstr "" "для подписки \"%s\" выбран режим copy_data с origin = NONE, но в неё могут " "попасть данные из другого источника" -#: commands/subscriptioncmds.c:2114 +#: commands/subscriptioncmds.c:2190 #, c-format msgid "" "The subscription being created subscribes to a publication (%s) that " @@ -11648,7 +11896,7 @@ msgstr[2] "" "Создаваемая подписка связана с публикациями (%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 " @@ -11657,8 +11905,8 @@ msgstr "" "Убедитесь, что начальные данные, скопированные из таблиц публикации, " "поступили не из других источников." -#: commands/subscriptioncmds.c:2223 replication/logical/tablesync.c:906 -#: replication/pgoutput/pgoutput.c:1143 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 +#: replication/pgoutput/pgoutput.c:1162 #, c-format msgid "" "cannot use different column lists for table \"%s.%s\" in different " @@ -11667,7 +11915,7 @@ 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 " @@ -11677,7 +11925,7 @@ 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 " @@ -11686,197 +11934,202 @@ 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:19805 -#: parser/parse_utilcmd.c:2251 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 +#: parser/parse_utilcmd.c:2429 #, 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:14325 -#: commands/tablecmds.c:16886 +#: commands/tablecmds.c:294 commands/tablecmds.c:15950 +#: commands/tablecmds.c:18651 #, 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:734 +#: commands/tablecmds.c:802 #, c-format msgid "ON COMMIT can only be used on temporary tables" msgstr "ON COMMIT можно использовать только для временных таблиц" -#: commands/tablecmds.c:765 +#: commands/tablecmds.c:819 +#, fuzzy, 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:801 commands/tablecmds.c:15745 +#: commands/tablecmds.c:875 commands/tablecmds.c:17375 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "отношение \"%s\" наследуется неоднократно" -#: commands/tablecmds.c:1067 +#: commands/tablecmds.c:1133 #, c-format msgid "\"%s\" is not partitioned" msgstr "отношение \"%s\" не является секционированным" -#: commands/tablecmds.c:1161 +#: commands/tablecmds.c:1227 #, c-format msgid "cannot partition using more than %d columns" msgstr "число столбцов в ключе секционирования не может превышать %d" -#: commands/tablecmds.c:1217 +#: commands/tablecmds.c:1283 #, c-format msgid "cannot create foreign partition of partitioned table \"%s\"" msgstr "создать стороннюю секцию для секционированной таблицы \"%s\" нельзя" -#: commands/tablecmds.c:1219 +#: commands/tablecmds.c:1285 #, c-format msgid "Table \"%s\" contains indexes that are unique." msgstr "Таблица \"%s\" содержит индексы, являющиеся уникальными." -#: commands/tablecmds.c:1338 commands/tablecmds.c:13341 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 #, c-format msgid "too many array dimensions" msgstr "слишком много размерностей массива" -#: commands/tablecmds.c:1343 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:1489 +#: commands/tablecmds.c:1549 #, c-format msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects" msgstr "DROP INDEX CONCURRENTLY не поддерживает удаление нескольких объектов" -#: commands/tablecmds.c:1493 +#: commands/tablecmds.c:1553 #, c-format msgid "DROP INDEX CONCURRENTLY does not support CASCADE" msgstr "DROP INDEX CONCURRENTLY не поддерживает режим CASCADE" -#: commands/tablecmds.c:1597 +#: commands/tablecmds.c:1657 #, c-format msgid "cannot drop partitioned index \"%s\" concurrently" msgstr "удалить секционированный индекс \"%s\" параллельным способом нельзя" -#: commands/tablecmds.c:1885 +#: commands/tablecmds.c:1945 #, c-format msgid "cannot truncate only a partitioned table" msgstr "опустошить собственно секционированную таблицу нельзя" -#: commands/tablecmds.c:1886 +#: commands/tablecmds.c:1946 #, c-format msgid "" "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions " @@ -11885,39 +12138,39 @@ msgstr "" "Не указывайте ключевое слово ONLY или выполните TRUNCATE ONLY " "непосредственно для секций." -#: commands/tablecmds.c:1959 +#: commands/tablecmds.c:2019 #, c-format msgid "truncate cascades to table \"%s\"" msgstr "опустошение распространяется на таблицу %s" -#: commands/tablecmds.c:2320 +#: commands/tablecmds.c:2380 #, c-format msgid "cannot truncate foreign table \"%s\"" msgstr "опустошить стороннюю таблицу \"%s\" нельзя" -#: commands/tablecmds.c:2377 +#: commands/tablecmds.c:2437 #, c-format msgid "cannot truncate temporary tables of other sessions" msgstr "временные таблицы других сеансов нельзя опустошить" -#: commands/tablecmds.c:2606 commands/tablecmds.c:15642 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17272 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "наследование от секционированной таблицы \"%s\" не допускается" -#: commands/tablecmds.c:2611 +#: commands/tablecmds.c:2680 #, c-format msgid "cannot inherit from partition \"%s\"" msgstr "наследование от секции \"%s\" не допускается" -#: commands/tablecmds.c:2619 parser/parse_utilcmd.c:2481 -#: parser/parse_utilcmd.c:2623 +#: commands/tablecmds.c:2688 parser/parse_utilcmd.c:2700 +#: parser/parse_utilcmd.c:2888 #, c-format msgid "inherited relation \"%s\" is not a table or foreign table" msgstr "" "наследуемое отношение \"%s\" не является таблицей или сторонней таблицей" -#: commands/tablecmds.c:2631 +#: commands/tablecmds.c:2700 #, c-format msgid "" "cannot create a temporary relation as partition of permanent relation \"%s\"" @@ -11925,25 +12178,25 @@ msgstr "" "создать временное отношение в качестве секции постоянного отношения \"%s\" " "нельзя" -#: commands/tablecmds.c:2640 commands/tablecmds.c:15621 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17251 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "временное отношение \"%s\" не может наследоваться" -#: commands/tablecmds.c:2650 commands/tablecmds.c:15629 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17259 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "наследование от временного отношения другого сеанса невозможно" -#: commands/tablecmds.c:2791 commands/tablecmds.c:2845 -#: commands/tablecmds.c:13024 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:14610 parser/parse_utilcmd.c:1440 +#: parser/parse_utilcmd.c:1485 parser/parse_utilcmd.c:1917 +#: parser/parse_utilcmd.c:2025 #, c-format msgid "cannot convert whole-row table reference" msgstr "преобразовать ссылку на тип всей строки таблицы нельзя" -#: commands/tablecmds.c:2792 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 " @@ -11952,58 +12205,72 @@ msgstr "" "Генерирующее выражение столбца \"%s\" ссылается на тип всей строки в таблице " "\"%s\"." -#: commands/tablecmds.c:2846 parser/parse_utilcmd.c:1309 +#: commands/tablecmds.c:2929 parser/parse_utilcmd.c:1486 #, c-format msgid "Constraint \"%s\" contains a whole-row reference to table \"%s\"." msgstr "Ограничение \"%s\" ссылается на тип всей строки в таблице \"%s\"." -#: commands/tablecmds.c:2956 commands/tablecmds.c:3227 +#: 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:2961 commands/tablecmds.c:3232 +#: 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:2969 commands/tablecmds.c:3240 +#: commands/tablecmds.c:3064 commands/tablecmds.c:3358 #, c-format msgid "child column \"%s\" specifies generation expression" msgstr "для дочернего столбца \"%s\" указано генерирующее выражение" -#: commands/tablecmds.c:2971 commands/tablecmds.c:3242 +#: 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:3017 +#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 +#: commands/tablecmds.c:17537 +#, fuzzy, 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 +#, c-format +msgid "Parent column is %s, child column is %s." +msgstr "" + +#: commands/tablecmds.c:3121 #, c-format msgid "column \"%s\" inherits conflicting generation expressions" msgstr "столбец \"%s\" наследует конфликтующие генерирующие выражения" -#: commands/tablecmds.c:3019 +#: commands/tablecmds.c:3123 #, c-format msgid "To resolve the conflict, specify a generation expression explicitly." msgstr "Для разрешения конфликта укажите генерирующее выражение явно." -#: commands/tablecmds.c:3023 +#: commands/tablecmds.c:3127 #, c-format msgid "column \"%s\" inherits conflicting default values" msgstr "столбец \"%s\" наследует конфликтующие значения по умолчанию" -#: commands/tablecmds.c:3025 +#: commands/tablecmds.c:3129 #, c-format msgid "To resolve the conflict, specify a default explicitly." msgstr "Для решения конфликта укажите желаемое значение по умолчанию." -#: commands/tablecmds.c:3080 +#: commands/tablecmds.c:3196 #, c-format msgid "" "check constraint name \"%s\" appears multiple times but with different " @@ -12012,132 +12279,132 @@ msgstr "" "имя ограничения-проверки \"%s\" фигурирует несколько раз, но с разными " "выражениями" -#: commands/tablecmds.c:3131 +#: commands/tablecmds.c:3249 #, c-format msgid "merging column \"%s\" with inherited definition" msgstr "слияние столбца \"%s\" с наследованным определением" -#: commands/tablecmds.c:3135 +#: commands/tablecmds.c:3253 #, c-format msgid "moving and merging column \"%s\" with inherited definition" msgstr "перемещение и слияние столбца \"%s\" с наследуемым определением" -#: commands/tablecmds.c:3136 +#: commands/tablecmds.c:3254 #, c-format msgid "User-specified column moved to the position of the inherited column." msgstr "" "Определённый пользователем столбец перемещён в позицию наследуемого столбца." -#: commands/tablecmds.c:3148 +#: commands/tablecmds.c:3266 #, c-format msgid "column \"%s\" has a type conflict" msgstr "конфликт типов в столбце \"%s\"" -#: commands/tablecmds.c:3150 commands/tablecmds.c:3184 -#: commands/tablecmds.c:3200 commands/tablecmds.c:3307 -#: commands/tablecmds.c:3340 commands/tablecmds.c:3356 -#: parser/parse_coerce.c:2192 parser/parse_coerce.c:2212 -#: parser/parse_coerce.c:2232 parser/parse_coerce.c:2253 -#: parser/parse_coerce.c:2308 parser/parse_coerce.c:2342 -#: parser/parse_coerce.c:2418 parser/parse_coerce.c:2449 -#: parser/parse_coerce.c:2488 parser/parse_coerce.c:2555 -#: 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:3162 +#: commands/tablecmds.c:3280 #, c-format msgid "column \"%s\" has a collation conflict" msgstr "конфликт правил сортировки в столбце \"%s\"" -#: commands/tablecmds.c:3164 commands/tablecmds.c:3326 -#: commands/tablecmds.c:7080 +#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 +#: commands/tablecmds.c:7277 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\" и \"%s\"" -#: commands/tablecmds.c:3182 +#: commands/tablecmds.c:3300 #, c-format msgid "column \"%s\" has a storage parameter conflict" msgstr "конфликт параметров хранения в столбце \"%s\"" -#: commands/tablecmds.c:3198 commands/tablecmds.c:3354 +#: commands/tablecmds.c:3316 commands/tablecmds.c:3476 #, c-format msgid "column \"%s\" has a compression method conflict" msgstr "в столбце \"%s\" возник конфликт методов сжатия" -#: commands/tablecmds.c:3293 +#: commands/tablecmds.c:3420 #, c-format msgid "merging multiple inherited definitions of column \"%s\"" msgstr "слияние нескольких наследованных определений столбца \"%s\"" -#: commands/tablecmds.c:3305 +#: commands/tablecmds.c:3432 #, c-format msgid "inherited column \"%s\" has a type conflict" msgstr "конфликт типов в наследованном столбце \"%s\"" -#: commands/tablecmds.c:3324 +#: commands/tablecmds.c:3446 #, c-format msgid "inherited column \"%s\" has a collation conflict" msgstr "конфликт правил сортировки в наследованном столбце \"%s\"" -#: commands/tablecmds.c:3338 +#: commands/tablecmds.c:3460 #, c-format msgid "inherited column \"%s\" has a storage parameter conflict" msgstr "конфликт параметров хранения в наследованном столбце \"%s\"" -#: commands/tablecmds.c:3366 +#: commands/tablecmds.c:3488 #, c-format msgid "inherited column \"%s\" has a generation conflict" msgstr "конфликт свойства генерирования в наследованном столбце \"%s\"" -#: commands/tablecmds.c:3597 +#: commands/tablecmds.c:3719 #, c-format msgid "cannot move temporary tables of other sessions" msgstr "перемещать временные таблицы других сеансов нельзя" -#: commands/tablecmds.c:3670 +#: commands/tablecmds.c:3792 #, c-format msgid "cannot rename column of typed table" msgstr "переименовать столбец типизированной таблицы нельзя" -#: commands/tablecmds.c:3689 +#: commands/tablecmds.c:3811 #, c-format msgid "cannot rename columns of relation \"%s\"" msgstr "переименовывать столбцы отношения \"%s\" нельзя" -#: commands/tablecmds.c:3784 +#: commands/tablecmds.c:3906 #, c-format msgid "inherited column \"%s\" must be renamed in child tables too" msgstr "" "наследованный столбец \"%s\" должен быть также переименован в дочерних " "таблицах" -#: commands/tablecmds.c:3816 +#: commands/tablecmds.c:3938 #, c-format msgid "cannot rename system column \"%s\"" msgstr "нельзя переименовать системный столбец \"%s\"" -#: commands/tablecmds.c:3831 +#: commands/tablecmds.c:3953 #, c-format msgid "cannot rename inherited column \"%s\"" msgstr "нельзя переименовать наследованный столбец \"%s\"" -#: commands/tablecmds.c:3983 +#: commands/tablecmds.c:4108 #, c-format msgid "inherited constraint \"%s\" must be renamed in child tables too" msgstr "" "наследуемое ограничение \"%s\" должно быть также переименовано в дочерних " "таблицах" -#: commands/tablecmds.c:3990 +#: 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:4290 +#: commands/tablecmds.c:4415 #, c-format msgid "" "cannot %s \"%s\" because it is being used by active queries in this session" @@ -12146,59 +12413,59 @@ msgstr "" "запросами в данном сеансе" #. translator: first %s is a SQL command, eg ALTER TABLE -#: commands/tablecmds.c:4299 +#: commands/tablecmds.c:4424 #, c-format msgid "cannot %s \"%s\" because it has pending trigger events" msgstr "" "нельзя выполнить %s \"%s\", так как с этим объектом связаны отложенные " "события триггеров" -#: commands/tablecmds.c:4325 +#: commands/tablecmds.c:4450 #, c-format msgid "cannot alter temporary tables of other sessions" msgstr "модифицировать временные таблицы других сеансов нельзя" -#: commands/tablecmds.c:4798 +#: commands/tablecmds.c:4914 #, c-format msgid "cannot alter partition \"%s\" with an incomplete detach" msgstr "нельзя изменить секцию \"%s\", которая не полностью отсоединена" -#: commands/tablecmds.c:5002 commands/tablecmds.c:5017 +#: commands/tablecmds.c:5143 #, c-format msgid "cannot change persistence setting twice" msgstr "изменить характеристику хранения дважды нельзя" -#: commands/tablecmds.c:5038 +#: commands/tablecmds.c:5160 #, c-format msgid "cannot have multiple SET ACCESS METHOD subcommands" msgstr "множественные подкоманды SET ACCESS METHOD не допускаются" -#: commands/tablecmds.c:5768 +#: commands/tablecmds.c:5894 #, c-format msgid "cannot rewrite system relation \"%s\"" msgstr "перезаписать системное отношение \"%s\" нельзя" -#: commands/tablecmds.c:5774 +#: commands/tablecmds.c:5900 #, c-format msgid "cannot rewrite table \"%s\" used as a catalog table" msgstr "перезаписать таблицу \"%s\", используемую как таблицу каталога, нельзя" -#: commands/tablecmds.c:5786 +#: commands/tablecmds.c:5912 #, c-format msgid "cannot rewrite temporary tables of other sessions" msgstr "перезаписывать временные таблицы других сеансов нельзя" -#: commands/tablecmds.c:6281 +#: 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:6298 +#: commands/tablecmds.c:6485 #, c-format msgid "check constraint \"%s\" of relation \"%s\" is violated by some row" msgstr "ограничение-проверку \"%s\" отношения \"%s\" нарушает некоторая строка" -#: commands/tablecmds.c:6317 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 " @@ -12207,24 +12474,24 @@ msgstr "" "изменённое ограничение секции для секции по умолчанию \"%s\" будет нарушено " "некоторыми строками" -#: commands/tablecmds.c:6323 +#: 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:6588 +#: commands/tablecmds.c:6776 #, c-format msgid "ALTER action %s cannot be performed on relation \"%s\"" msgstr "действие ALTER %s нельзя выполнить с отношением \"%s\"" -#: commands/tablecmds.c:6843 commands/tablecmds.c:6850 +#: 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:6857 +#: commands/tablecmds.c:7045 #, c-format msgid "" "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type" @@ -12232,152 +12499,139 @@ msgstr "" "изменить стороннюю таблицу \"%s\" нельзя, так как столбец \"%s.%s\" " "задействует тип её строки" -#: commands/tablecmds.c:6864 +#: 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:6920 +#: 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:6922 +#: commands/tablecmds.c:7110 #, c-format msgid "Use ALTER ... CASCADE to alter the typed tables too." msgstr "" "Чтобы изменить также типизированные таблицы, выполните ALTER ... CASCADE." -#: commands/tablecmds.c:6968 +#: commands/tablecmds.c:7156 +#, fuzzy, 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 "" + +#: commands/tablecmds.c:7163 #, c-format msgid "type %s is not a composite type" msgstr "тип %s не является составным" -#: commands/tablecmds.c:6995 +#: commands/tablecmds.c:7190 #, c-format msgid "cannot add column to typed table" msgstr "добавить столбец в типизированную таблицу нельзя" -#: commands/tablecmds.c:7043 +#: commands/tablecmds.c:7240 #, c-format msgid "cannot add column to a partition" msgstr "добавить столбец в секцию нельзя" -#: commands/tablecmds.c:7072 commands/tablecmds.c:15860 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17493 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "дочерняя таблица \"%s\" имеет другой тип для столбца \"%s\"" -#: commands/tablecmds.c:7078 commands/tablecmds.c:15866 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17499 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "" "дочерняя таблица \"%s\" имеет другое правило сортировки для столбца \"%s\"" -#: commands/tablecmds.c:7096 +#: commands/tablecmds.c:7293 #, c-format msgid "merging definition of column \"%s\" for child \"%s\"" msgstr "объединение определений столбца \"%s\" для потомка \"%s\"" -#: commands/tablecmds.c:7149 +#: commands/tablecmds.c:7346 #, c-format msgid "cannot recursively add identity column to table that has child tables" msgstr "" "добавить столбец идентификации в таблицу, у которой есть дочерние, нельзя" -#: commands/tablecmds.c:7362 +#: commands/tablecmds.c:7593 #, c-format msgid "column must be added to child tables too" msgstr "столбец также должен быть добавлен к дочерним таблицам" -#: commands/tablecmds.c:7440 +#: commands/tablecmds.c:7671 #, c-format msgid "column \"%s\" of relation \"%s\" already exists, skipping" msgstr "столбец \"%s\" отношения \"%s\" уже существует, пропускается" -#: commands/tablecmds.c:7447 +#: commands/tablecmds.c:7678 #, c-format msgid "column \"%s\" of relation \"%s\" already exists" msgstr "столбец \"%s\" отношения \"%s\" уже существует" -#: commands/tablecmds.c:7513 commands/tablecmds.c:12652 -#, c-format -msgid "" -"cannot remove constraint from only the partitioned table when partitions " -"exist" -msgstr "" -"удалить ограничение только из секционированной таблицы, когда существуют " -"секции, нельзя" - -#: commands/tablecmds.c:7514 commands/tablecmds.c:7828 -#: commands/tablecmds.c:8006 commands/tablecmds.c:8113 -#: commands/tablecmds.c:8230 commands/tablecmds.c:9049 -#: commands/tablecmds.c:12653 -#, c-format -msgid "Do not specify the ONLY keyword." -msgstr "Не указывайте ключевое слово ONLY." - -#: commands/tablecmds.c:7550 commands/tablecmds.c:7754 -#: commands/tablecmds.c:7896 commands/tablecmds.c:8028 -#: commands/tablecmds.c:8157 commands/tablecmds.c:8251 -#: commands/tablecmds.c:8352 commands/tablecmds.c:8509 -#: commands/tablecmds.c:8662 commands/tablecmds.c:8743 -#: commands/tablecmds.c:8877 commands/tablecmds.c:12806 -#: commands/tablecmds.c:14348 commands/tablecmds.c:16975 +#: 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 #, c-format msgid "cannot alter system column \"%s\"" msgstr "системный столбец \"%s\" нельзя изменить" -#: commands/tablecmds.c:7556 commands/tablecmds.c:7902 +#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 +#: commands/tablecmds.c:14143 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "столбец \"%s\" отношения \"%s\" является столбцом идентификации" -#: commands/tablecmds.c:7597 -#, c-format -msgid "column \"%s\" is in a primary key" -msgstr "столбец \"%s\" входит в первичный ключ" - -#: commands/tablecmds.c:7602 -#, c-format -msgid "column \"%s\" is in index used as replica identity" -msgstr "столбец \"%s\" входит в индекс, используемый для идентификации реплики" - -#: commands/tablecmds.c:7625 +#: commands/tablecmds.c:7792 #, c-format msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "столбец \"%s\" в родительской таблице помечен как NOT NULL" -#: commands/tablecmds.c:7825 commands/tablecmds.c:9533 +#: commands/tablecmds.c:8014 commands/tablecmds.c:9988 #, c-format msgid "constraint must be added to child tables too" msgstr "ограничение также должно быть добавлено к дочерним таблицам" -#: commands/tablecmds.c:7826 +#: commands/tablecmds.c:8015 commands/tablecmds.c:8246 +#: commands/tablecmds.c:8353 commands/tablecmds.c:8470 +#: commands/tablecmds.c:9354 commands/tablecmds.c:12182 #, 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:7911 +#: commands/tablecmds.c:8152 #, c-format msgid "column \"%s\" of relation \"%s\" is a generated column" msgstr "столбец \"%s\" отношения \"%s\" является генерируемым" -#: commands/tablecmds.c:8005 +#: commands/tablecmds.c:8245 #, c-format msgid "cannot add identity to a column of only the partitioned table" msgstr "" "сделать столбцом идентификации столбец одной лишь секционированной таблицы " "нельзя" -#: commands/tablecmds.c:8011 +#: commands/tablecmds.c:8251 #, c-format msgid "cannot add identity to a column of a partition" msgstr "сделать столбцом идентификации столбец одной секции нельзя" -#: commands/tablecmds.c:8039 +#: commands/tablecmds.c:8279 #, c-format msgid "" "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity " @@ -12386,128 +12640,153 @@ msgstr "" "столбец \"%s\" отношения \"%s\" должен быть объявлен как NOT NULL, чтобы его " "можно было сделать столбцом идентификации" -#: commands/tablecmds.c:8045 +#: commands/tablecmds.c:8285 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "столбец \"%s\" отношения \"%s\" уже является столбцом идентификации" -#: commands/tablecmds.c:8051 +#: commands/tablecmds.c:8291 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "столбец \"%s\" отношения \"%s\" уже имеет значение по умолчанию" -#: commands/tablecmds.c:8112 +#: commands/tablecmds.c:8352 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "" "изменить столбец идентификации для одной лишь секционированной таблицы нельзя" -#: commands/tablecmds.c:8118 +#: commands/tablecmds.c:8358 #, c-format msgid "cannot change identity column of a partition" msgstr "изменить столбец идентификации для одной секции нельзя" -#: commands/tablecmds.c:8163 commands/tablecmds.c:8259 +#: commands/tablecmds.c:8403 commands/tablecmds.c:8499 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column" msgstr "столбец \"%s\" отношения \"%s\" не является столбцом идентификации" -#: commands/tablecmds.c:8229 +#: commands/tablecmds.c:8469 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "" "лишить свойства идентификации столбец одной лишь секционированной таблицы " "нельзя" -#: commands/tablecmds.c:8235 +#: commands/tablecmds.c:8475 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "лишить свойства идентификации столбец одной секции нельзя" -#: commands/tablecmds.c:8264 +#: commands/tablecmds.c:8504 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "" "столбец \"%s\" отношения \"%s\" не является столбцом идентификации, " "пропускается" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8601 commands/tablecmds.c:8811 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "столбец \"%s\" отношения \"%s\" не является генерируемым столбцом" -#: commands/tablecmds.c:8456 +#: commands/tablecmds.c:8612 +#, c-format +msgid "" +"ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns " +"in tables with check constraints" +msgstr "" + +#: commands/tablecmds.c:8613 commands/tablecmds.c:8631 +#: commands/tablecmds.c:8803 +#, fuzzy, c-format +msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." +msgstr "столбец \"%s\" отношения \"%s\" является генерируемым" + +#: commands/tablecmds.c:8630 +#, c-format +msgid "" +"ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns " +"in tables that are part of a publication" +msgstr "" + +#: commands/tablecmds.c:8737 #, c-format msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgstr "" "ALTER TABLE / DROP EXPRESSION нужно применять также к дочерним таблицам" -#: commands/tablecmds.c:8478 +#: commands/tablecmds.c:8759 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "нельзя удалить генерирующее выражение из наследуемого столбца" -#: commands/tablecmds.c:8517 -#, c-format -msgid "column \"%s\" of relation \"%s\" is not a stored generated column" +#: commands/tablecmds.c:8802 +#, fuzzy, c-format +msgid "" +"ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" msgstr "" -"столбец \"%s\" отношения \"%s\" не является сохранённым генерируемым столбцом" +"ALTER TABLE / DROP EXPRESSION нужно применять также к дочерним таблицам" -#: commands/tablecmds.c:8522 -#, c-format -msgid "" -"column \"%s\" of relation \"%s\" is not a stored generated column, skipping" +#: commands/tablecmds.c:8816 +#, fuzzy, c-format +msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "" "столбец \"%s\" отношения \"%s\" пропускается, так как не является " "сохранённым генерируемым столбцом" -#: commands/tablecmds.c:8600 +#: commands/tablecmds.c:8894 #, c-format msgid "cannot refer to non-index column by number" msgstr "по номеру можно ссылаться только на столбец в индексе" -#: commands/tablecmds.c:8652 +#: commands/tablecmds.c:8946 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "столбец с номером %d отношения \"%s\" не существует" -#: commands/tablecmds.c:8671 +#: commands/tablecmds.c:8966 +#, fuzzy, c-format +msgid "cannot alter statistics on virtual generated column \"%s\"" +msgstr "изменить статистику включённого столбца \"%s\" индекса \"%s\" нельзя" + +#: commands/tablecmds.c:8975 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "изменить статистику включённого столбца \"%s\" индекса \"%s\" нельзя" -#: commands/tablecmds.c:8676 +#: commands/tablecmds.c:8980 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "" "изменить статистику столбца \"%s\" (не выражения) индекса \"%s\" нельзя" -#: commands/tablecmds.c:8678 +#: commands/tablecmds.c:8982 #, c-format msgid "Alter statistics on table column instead." msgstr "Вместо этого измените статистику для столбца в таблице." -#: commands/tablecmds.c:8924 +#: commands/tablecmds.c:9228 #, c-format msgid "cannot drop column from typed table" msgstr "нельзя удалить столбец в типизированной таблице" -#: commands/tablecmds.c:8987 +#: commands/tablecmds.c:9292 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "столбец \"%s\" в таблице\"%s\" не существует, пропускается" -#: commands/tablecmds.c:9000 +#: commands/tablecmds.c:9305 #, c-format msgid "cannot drop system column \"%s\"" msgstr "нельзя удалить системный столбец \"%s\"" -#: commands/tablecmds.c:9010 +#: commands/tablecmds.c:9315 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "нельзя удалить наследованный столбец \"%s\"" -#: commands/tablecmds.c:9023 +#: commands/tablecmds.c:9328 #, c-format msgid "" "cannot drop column \"%s\" because it is part of the partition key of " @@ -12516,7 +12795,7 @@ msgstr "" "удалить столбец \"%s\" нельзя, так как он входит в ключ разбиения отношения " "\"%s\"" -#: commands/tablecmds.c:9048 +#: commands/tablecmds.c:9353 #, c-format msgid "" "cannot drop column from only the partitioned table when partitions exist" @@ -12524,7 +12803,25 @@ msgstr "" "удалить столбец только из секционированной таблицы, когда существуют секции, " "нельзя" -#: commands/tablecmds.c:9253 +#: commands/tablecmds.c:9518 +#, fuzzy, c-format +msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" +msgstr "Столбец \"%s\" отношения \"%s\" уже имеет свойство NOT NULL." + +#: commands/tablecmds.c:9554 commands/tablecmds.c:9566 +#, fuzzy, 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 +#, 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 #, c-format msgid "" "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned " @@ -12533,14 +12830,14 @@ msgstr "" "ALTER TABLE / ADD CONSTRAINT USING INDEX не поддерживается с " "секционированными таблицами" -#: commands/tablecmds.c:9278 +#: commands/tablecmds.c:9717 #, 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:9615 +#: commands/tablecmds.c:10075 #, c-format msgid "" "cannot use ONLY for foreign key on partitioned table \"%s\" referencing " @@ -12549,34 +12846,19 @@ msgstr "" "нельзя использовать ONLY для стороннего ключа в секционированной таблице " "\"%s\", ссылающегося на отношение \"%s\"" -#: commands/tablecmds.c:9621 -#, c-format -msgid "" -"cannot add NOT VALID foreign key on partitioned table \"%s\" referencing " -"relation \"%s\"" -msgstr "" -"нельзя добавить с характеристикой NOT VALID сторонний ключ в " -"секционированной таблице \"%s\", ссылающийся на отношение \"%s\"" - -#: commands/tablecmds.c:9624 -#, c-format -msgid "This feature is not yet supported on partitioned tables." -msgstr "" -"Эта функциональность с секционированными таблицами пока не поддерживается." - -#: commands/tablecmds.c:9631 commands/tablecmds.c:10092 +#: commands/tablecmds.c:10083 commands/tablecmds.c:10710 #, c-format msgid "referenced relation \"%s\" is not a table" msgstr "указанный объект \"%s\" не является таблицей" -#: commands/tablecmds.c:9654 +#: commands/tablecmds.c:10106 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "" "ограничения в постоянных таблицах могут ссылаться только на постоянные " "таблицы" -#: commands/tablecmds.c:9661 +#: commands/tablecmds.c:10113 #, c-format msgid "" "constraints on unlogged tables may reference only permanent or unlogged " @@ -12585,13 +12867,13 @@ msgstr "" "ограничения в нежурналируемых таблицах могут ссылаться только на постоянные " "или нежурналируемые таблицы" -#: commands/tablecmds.c:9667 +#: commands/tablecmds.c:10119 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "" "ограничения во временных таблицах могут ссылаться только на временные таблицы" -#: commands/tablecmds.c:9671 +#: commands/tablecmds.c:10123 #, c-format msgid "" "constraints on temporary tables must involve temporary tables of this session" @@ -12599,7 +12881,26 @@ msgstr "" "ограничения во временных таблицах должны ссылаться только на временные " "таблицы текущего сеанса" -#: commands/tablecmds.c:9735 commands/tablecmds.c:9741 +#: commands/tablecmds.c:10138 commands/tablecmds.c:10166 +#, c-format +msgid "" +"foreign key uses PERIOD on the referenced table but not the referencing table" +msgstr "" + +#: commands/tablecmds.c:10178 +#, c-format +msgid "" +"foreign key uses PERIOD on the referencing table but not the referenced table" +msgstr "" + +#: commands/tablecmds.c:10192 +#, 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 #, c-format msgid "" "invalid %s action for foreign key constraint containing generated column" @@ -12607,22 +12908,54 @@ msgstr "" "некорректное действие %s для ограничения внешнего ключа, содержащего " "генерируемый столбец" -#: commands/tablecmds.c:9757 +#: commands/tablecmds.c:10237 +#, fuzzy, c-format +msgid "foreign key constraints on virtual generated columns are not supported" +msgstr "ограничение внешнего ключа \"%s\" в таблице\"%s\" не существует" + +#: commands/tablecmds.c:10251 commands/tablecmds.c:10260 +#, fuzzy, c-format +msgid "unsupported %s action for foreign key constraint using PERIOD" +msgstr "" +"некорректное действие %s для ограничения внешнего ключа, содержащего " +"генерируемый столбец" + +#: commands/tablecmds.c:10275 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "число столбцов в источнике и назначении внешнего ключа не совпадает" -#: commands/tablecmds.c:9864 +#: commands/tablecmds.c:10331 +#, fuzzy, c-format +msgid "could not identify an overlaps operator for foreign key" +msgstr "для типа %s не удалось найти оператор сортировки" + +#: commands/tablecmds.c:10332 +#, fuzzy, c-format +msgid "could not identify an equality operator for foreign key" +msgstr "не удалось найти оператор равенства для типа %s" + +#: commands/tablecmds.c:10397 commands/tablecmds.c:10431 #, c-format msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "ограничение внешнего ключа \"%s\" нельзя реализовать" -#: commands/tablecmds.c:9866 -#, c-format -msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." +#: commands/tablecmds.c:10399 +#, fuzzy, 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:10035 +#: commands/tablecmds.c:10432 +#, 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 #, c-format msgid "" "column \"%s\" referenced in ON DELETE SET action must be part of foreign key" @@ -12630,13 +12963,13 @@ msgstr "" "столбец \"%s\", фигурирующий в действии ON DELETE SET, должен входить во " "внешний ключ" -#: commands/tablecmds.c:10392 commands/tablecmds.c:10832 -#: parser/parse_utilcmd.c:822 parser/parse_utilcmd.c:945 +#: commands/tablecmds.c:11022 commands/tablecmds.c:11455 +#: 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:10815 +#: commands/tablecmds.c:11438 #, c-format msgid "" "cannot attach table \"%s\" as a partition because it is referenced by " @@ -12645,86 +12978,121 @@ msgstr "" "присоединить таблицу \"%s\" в качестве секции нельзя, так как на неё " "ссылается внешний ключ \"%s\"" -#: commands/tablecmds.c:11416 commands/tablecmds.c:11697 -#: commands/tablecmds.c:12609 commands/tablecmds.c:12683 +#: commands/tablecmds.c:11719 +#, fuzzy, c-format +msgid "" +"constraint \"%s\" enforceability conflicts with constraint \"%s\" on " +"relation \"%s\"" +msgstr "" +"ограничение \"%s\" конфликтует с наследуемым ограничением таблицы \"%s\"" + +#: commands/tablecmds.c:12181 +#, fuzzy, 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 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "ограничение \"%s\" в таблице \"%s\" не существует" -#: commands/tablecmds.c:11423 +#: commands/tablecmds.c:12217 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "ограничение \"%s\" в таблице \"%s\" не является внешним ключом" -#: commands/tablecmds.c:11461 +#: commands/tablecmds.c:12222 +#, fuzzy, c-format +msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" +msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" + +#: commands/tablecmds.c:12228 +#, fuzzy, c-format +msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" +msgstr "ограничение \"%s\" в таблице \"%s\" не является внешним ключом" + +#: commands/tablecmds.c:12236 +#, fuzzy, c-format +msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" +msgstr "удалить наследованное ограничение \"%s\" таблицы \"%s\" нельзя" + +#: commands/tablecmds.c:12276 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" -#: commands/tablecmds.c:11464 +#: commands/tablecmds.c:12279 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "" "Ограничение \"%s\" является производным от ограничения \"%s\" таблицы \"%s\"." -#: commands/tablecmds.c:11466 +#: commands/tablecmds.c:12281 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "Вместо этого вы можете изменить родительское ограничение." -#: commands/tablecmds.c:11705 +#: commands/tablecmds.c:12916 +#, fuzzy, c-format +msgid "cannot validate constraint \"%s\" of relation \"%s\"" +msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" + +#: commands/tablecmds.c:12918 +#, fuzzy, c-format +msgid "This operation is not supported for this type of constraint." +msgstr "Эта операция не поддерживается для составных типов." + +#: commands/tablecmds.c:12923 #, c-format -msgid "" -"constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint" +msgid "cannot validate NOT ENFORCED constraint" msgstr "" -"ограничение \"%s\" в таблице \"%s\" не является внешним ключом или " -"ограничением-проверкой" -#: commands/tablecmds.c:11782 +#: commands/tablecmds.c:13132 commands/tablecmds.c:13232 #, c-format msgid "constraint must be validated on child tables too" msgstr "ограничение также должно соблюдаться в дочерних таблицах" -#: commands/tablecmds.c:11869 +#: commands/tablecmds.c:13309 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "столбец \"%s\", указанный в ограничении внешнего ключа, не существует" -#: commands/tablecmds.c:11875 +#: commands/tablecmds.c:13315 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "системные столбцы нельзя использовать во внешних ключах" -#: commands/tablecmds.c:11879 +#: commands/tablecmds.c:13319 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "во внешнем ключе не может быть больше %d столбцов" -#: commands/tablecmds.c:11944 +#: commands/tablecmds.c:13387 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "" "использовать откладываемый первичный ключ в целевой внешней таблице \"%s\" " "нельзя" -#: commands/tablecmds.c:11961 +#: commands/tablecmds.c:13404 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "в целевой внешней таблице \"%s\" нет первичного ключа" -#: commands/tablecmds.c:12029 +#: commands/tablecmds.c:13477 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "в списке столбцов внешнего ключа не должно быть повторений" -#: commands/tablecmds.c:12121 +#: commands/tablecmds.c:13580 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "" "использовать откладываемое ограничение уникальности в целевой внешней " "таблице \"%s\" нельзя" -#: commands/tablecmds.c:12126 +#: commands/tablecmds.c:13585 #, c-format msgid "" "there is no unique constraint matching given keys for referenced table \"%s\"" @@ -12732,39 +13100,49 @@ msgstr "" "в целевой внешней таблице \"%s\" нет ограничения уникальности, " "соответствующего данным ключам" -#: commands/tablecmds.c:12565 +#: commands/tablecmds.c:14026 +#, c-format +msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" +msgstr "ограничение \"%s\" в таблице \"%s\" не существует, пропускается" + +#: commands/tablecmds.c:14071 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "удалить наследованное ограничение \"%s\" таблицы \"%s\" нельзя" -#: commands/tablecmds.c:12615 +#: commands/tablecmds.c:14123 #, 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:12790 +#: commands/tablecmds.c:14131 +#, c-format +msgid "column \"%s\" is in index used as replica identity" +msgstr "столбец \"%s\" входит в индекс, используемый для идентификации реплики" + +#: commands/tablecmds.c:14364 #, c-format msgid "cannot alter column type of typed table" msgstr "изменить тип столбца в типизированной таблице нельзя" -#: commands/tablecmds.c:12816 +#: commands/tablecmds.c:14392 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "изменяя тип генерируемого столбца, нельзя указывать USING" -#: commands/tablecmds.c:12817 commands/tablecmds.c:18028 -#: commands/tablecmds.c:18118 commands/trigger.c:656 -#: rewrite/rewriteHandler.c:941 rewrite/rewriteHandler.c:976 +#: 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:12827 +#: commands/tablecmds.c:14404 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "изменить наследованный столбец \"%s\" нельзя" -#: commands/tablecmds.c:12836 +#: commands/tablecmds.c:14413 #, c-format msgid "" "cannot alter column \"%s\" because it is part of the partition key of " @@ -12773,7 +13151,7 @@ msgstr "" "изменить столбец \"%s\" нельзя, так как он входит в ключ разбиения отношения " "\"%s\"" -#: commands/tablecmds.c:12886 +#: commands/tablecmds.c:14468 #, c-format msgid "" "result of USING clause for column \"%s\" cannot be cast automatically to " @@ -12781,45 +13159,45 @@ msgid "" msgstr "" "результат USING для столбца \"%s\" нельзя автоматически привести к типу %s" -#: commands/tablecmds.c:12889 +#: commands/tablecmds.c:14471 #, c-format msgid "You might need to add an explicit cast." msgstr "Возможно, необходимо добавить явное приведение." -#: commands/tablecmds.c:12893 +#: commands/tablecmds.c:14475 #, c-format msgid "column \"%s\" cannot be cast automatically to type %s" msgstr "столбец \"%s\" нельзя автоматически привести к типу %s" # skip-rule: double-colons #. translator: USING is SQL, don't translate it -#: commands/tablecmds.c:12897 +#: commands/tablecmds.c:14479 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "Возможно, необходимо указать \"USING %s::%s\"." -#: commands/tablecmds.c:12996 +#: commands/tablecmds.c:14582 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "изменить наследованный столбец \"%s\" отношения \"%s\" нельзя" -#: commands/tablecmds.c:13025 +#: commands/tablecmds.c:14611 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "Выражение USING ссылается на тип всей строки таблицы." -#: commands/tablecmds.c:13036 +#: commands/tablecmds.c:14622 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "" "тип наследованного столбца \"%s\" должен быть изменён и в дочерних таблицах" -#: commands/tablecmds.c:13161 +#: commands/tablecmds.c:14747 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "нельзя изменить тип столбца \"%s\" дважды" -#: commands/tablecmds.c:13199 +#: commands/tablecmds.c:14785 #, c-format msgid "" "generation expression for column \"%s\" cannot be cast automatically to type " @@ -12828,160 +13206,160 @@ msgstr "" "генерирующее выражение для столбца \"%s\" нельзя автоматически привести к " "типу %s" -#: commands/tablecmds.c:13204 +#: commands/tablecmds.c:14790 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "" "значение по умолчанию для столбца \"%s\" нельзя автоматически привести к " "типу %s" -#: commands/tablecmds.c:13508 +#: commands/tablecmds.c:15094 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "изменить тип столбца, задействованного в функции или процедуре, нельзя" -#: commands/tablecmds.c:13509 commands/tablecmds.c:13524 -#: commands/tablecmds.c:13544 commands/tablecmds.c:13563 -#: commands/tablecmds.c:13622 +#: commands/tablecmds.c:15095 commands/tablecmds.c:15110 +#: commands/tablecmds.c:15130 commands/tablecmds.c:15149 +#: commands/tablecmds.c:15208 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s зависит от столбца \"%s\"" -#: commands/tablecmds.c:13523 +#: commands/tablecmds.c:15109 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "" "изменить тип столбца, задействованного в представлении или правиле, нельзя" -#: commands/tablecmds.c:13543 +#: commands/tablecmds.c:15129 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "изменить тип столбца, задействованного в определении триггера, нельзя" -#: commands/tablecmds.c:13562 +#: commands/tablecmds.c:15148 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "изменить тип столбца, задействованного в определении политики, нельзя" -#: commands/tablecmds.c:13593 +#: commands/tablecmds.c:15179 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "изменить тип столбца, задействованного в генерируемом столбце, нельзя" -#: commands/tablecmds.c:13594 +#: commands/tablecmds.c:15180 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "Столбец \"%s\" используется генерируемым столбцом \"%s\"." -#: commands/tablecmds.c:13621 +#: commands/tablecmds.c:15207 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "" "изменить тип столбца, задействованного в заданном для публикации предложении " "WHERE, нельзя" -#: commands/tablecmds.c:14456 commands/tablecmds.c:14468 +#: commands/tablecmds.c:16081 commands/tablecmds.c:16093 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "сменить владельца индекса \"%s\" нельзя" -#: commands/tablecmds.c:14458 commands/tablecmds.c:14470 +#: commands/tablecmds.c:16083 commands/tablecmds.c:16095 #, c-format msgid "Change the ownership of the index's table instead." msgstr "Однако возможно сменить владельца таблицы, содержащей этот индекс." -#: commands/tablecmds.c:14484 +#: commands/tablecmds.c:16109 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "сменить владельца последовательности \"%s\" нельзя" -#: commands/tablecmds.c:14509 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "сменить владельца отношения \"%s\" нельзя" -#: commands/tablecmds.c:14976 +#: commands/tablecmds.c:16601 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "в одной инструкции не может быть несколько подкоманд SET TABLESPACE" -#: commands/tablecmds.c:15053 +#: commands/tablecmds.c:16680 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "задать параметры отношения \"%s\" нельзя" -#: commands/tablecmds.c:15087 commands/view.c:440 +#: commands/tablecmds.c:16714 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "" "WITH CHECK OPTION поддерживается только с автообновляемыми представлениями" -#: commands/tablecmds.c:15338 +#: commands/tablecmds.c:16967 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "" "в табличных пространствах есть только таблицы, индексы и материализованные " "представления" -#: commands/tablecmds.c:15350 +#: commands/tablecmds.c:16979 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "перемещать объекты в/из табличного пространства pg_global нельзя" -#: commands/tablecmds.c:15442 +#: commands/tablecmds.c:17071 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "" "обработка прерывается из-за невозможности заблокировать отношение \"%s.%s\"" -#: commands/tablecmds.c:15458 +#: commands/tablecmds.c:17087 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "в табличном пространстве \"%s\" не найдены подходящие отношения" -#: commands/tablecmds.c:15580 +#: commands/tablecmds.c:17209 #, c-format msgid "cannot change inheritance of typed table" msgstr "изменить наследование типизированной таблицы нельзя" -#: commands/tablecmds.c:15585 commands/tablecmds.c:16085 +#: commands/tablecmds.c:17214 commands/tablecmds.c:17798 #, c-format msgid "cannot change inheritance of a partition" msgstr "изменить наследование секции нельзя" -#: commands/tablecmds.c:15590 +#: commands/tablecmds.c:17219 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "изменить наследование секционированной таблицы нельзя" -#: commands/tablecmds.c:15636 +#: commands/tablecmds.c:17266 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "наследование для временного отношения другого сеанса невозможно" -#: commands/tablecmds.c:15649 +#: commands/tablecmds.c:17279 #, c-format msgid "cannot inherit from a partition" msgstr "наследование от секции невозможно" -#: commands/tablecmds.c:15671 commands/tablecmds.c:18529 +#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 #, c-format msgid "circular inheritance not allowed" msgstr "циклическое наследование недопустимо" -#: commands/tablecmds.c:15672 commands/tablecmds.c:18530 +#: commands/tablecmds.c:17302 commands/tablecmds.c:20313 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\" уже является потомком \"%s\"." -#: commands/tablecmds.c:15685 +#: commands/tablecmds.c:17315 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "" "триггер \"%s\" не позволяет таблице \"%s\" стать потомком в иерархии " "наследования" -#: commands/tablecmds.c:15687 +#: commands/tablecmds.c:17317 #, c-format msgid "" "ROW triggers with transition tables are not supported in inheritance " @@ -12990,34 +13368,34 @@ msgstr "" "Триггеры ROW с переходными таблицами не поддерживаются в иерархиях " "наследования." -#: commands/tablecmds.c:15876 -#, c-format -msgid "column \"%s\" in child table must be marked NOT NULL" +#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 +#, fuzzy, c-format +msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" msgstr "столбец \"%s\" в дочерней таблице должен быть помечен как NOT NULL" -#: commands/tablecmds.c:15885 +#: commands/tablecmds.c:17528 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "столбец \"%s\" в дочерней таблице должен быть генерируемым" -#: commands/tablecmds.c:15889 +#: commands/tablecmds.c:17532 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "столбец \"%s\" в дочерней таблице должен быть не генерируемым" -#: commands/tablecmds.c:15927 +#: commands/tablecmds.c:17578 #, c-format msgid "child table is missing column \"%s\"" msgstr "в дочерней таблице не хватает столбца \"%s\"" -#: commands/tablecmds.c:16008 +#: commands/tablecmds.c:17695 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "" "дочерняя таблица \"%s\" содержит другое определение ограничения-проверки " "\"%s\"" -#: commands/tablecmds.c:16015 +#: commands/tablecmds.c:17704 #, c-format msgid "" "constraint \"%s\" conflicts with non-inherited constraint on child table " @@ -13026,7 +13404,7 @@ msgstr "" "ограничение \"%s\" конфликтует с ненаследуемым ограничением дочерней таблицы " "\"%s\"" -#: commands/tablecmds.c:16025 +#: commands/tablecmds.c:17715 #, c-format msgid "" "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" @@ -13034,82 +13412,91 @@ msgstr "" "ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " "дочерней таблицы \"%s\"" -#: commands/tablecmds.c:16063 +#: commands/tablecmds.c:17726 +#, fuzzy, c-format +msgid "" +"constraint \"%s\" conflicts with NOT ENFORCED constraint on child table " +"\"%s\"" +msgstr "" +"ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " +"дочерней таблицы \"%s\"" + +#: commands/tablecmds.c:17775 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "в дочерней таблице не хватает ограничения \"%s\"" -#: commands/tablecmds.c:16149 +#: commands/tablecmds.c:17862 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "" "секция \"%s\" уже ожидает отсоединения от секционированной таблицы \"%s.%s\"" -#: commands/tablecmds.c:16178 commands/tablecmds.c:16224 +#: commands/tablecmds.c:17891 commands/tablecmds.c:17939 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "отношение \"%s\" не является секцией отношения \"%s\"" -#: commands/tablecmds.c:16230 +#: commands/tablecmds.c:17945 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "отношение \"%s\" не является предком отношения \"%s\"" -#: commands/tablecmds.c:16457 +#: commands/tablecmds.c:18216 #, c-format msgid "typed tables cannot inherit" msgstr "типизированные таблицы не могут наследоваться" -#: commands/tablecmds.c:16487 +#: commands/tablecmds.c:18246 #, c-format msgid "table is missing column \"%s\"" msgstr "в таблице не хватает столбца \"%s\"" -#: commands/tablecmds.c:16498 +#: commands/tablecmds.c:18257 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "таблица содержит столбец \"%s\", тогда как тип требует \"%s\"" -#: commands/tablecmds.c:16507 +#: commands/tablecmds.c:18266 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "таблица \"%s\" содержит столбец \"%s\" другого типа" -#: commands/tablecmds.c:16521 +#: commands/tablecmds.c:18280 #, c-format msgid "table has extra column \"%s\"" msgstr "таблица содержит лишний столбец \"%s\"" -#: commands/tablecmds.c:16573 +#: commands/tablecmds.c:18332 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\" - это не типизированная таблица" -#: commands/tablecmds.c:16747 +#: commands/tablecmds.c:18512 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "" "для идентификации реплики нельзя использовать неуникальный индекс \"%s\"" -#: commands/tablecmds.c:16753 +#: commands/tablecmds.c:18518 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "" "для идентификации реплики нельзя использовать не непосредственный индекс " "\"%s\"" -#: commands/tablecmds.c:16759 +#: commands/tablecmds.c:18524 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "" "для идентификации реплики нельзя использовать индекс с выражением \"%s\"" -#: commands/tablecmds.c:16765 +#: commands/tablecmds.c:18530 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "для идентификации реплики нельзя использовать частичный индекс \"%s\"" -#: commands/tablecmds.c:16782 +#: commands/tablecmds.c:18547 #, c-format msgid "" "index \"%s\" cannot be used as replica identity because column %d is a " @@ -13118,7 +13505,7 @@ msgstr "" "индекс \"%s\" нельзя использовать для идентификации реплики, так как столбец " "%d - системный" -#: commands/tablecmds.c:16789 +#: commands/tablecmds.c:18554 #, c-format msgid "" "index \"%s\" cannot be used as replica identity because column \"%s\" is " @@ -13127,13 +13514,13 @@ msgstr "" "индекс \"%s\" нельзя использовать для идентификации реплики, так как столбец " "\"%s\" допускает NULL" -#: commands/tablecmds.c:17041 +#: commands/tablecmds.c:18803 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "" "изменить состояние журналирования таблицы %s нельзя, так как она временная" -#: commands/tablecmds.c:17065 +#: commands/tablecmds.c:18827 #, c-format msgid "" "cannot change table \"%s\" to unlogged because it is part of a publication" @@ -13141,12 +13528,12 @@ msgstr "" "таблицу \"%s\" нельзя сделать нежурналируемой, так как она включена в " "публикацию" -#: commands/tablecmds.c:17067 +#: commands/tablecmds.c:18829 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "Нежурналируемые отношения не поддерживают репликацию." -#: commands/tablecmds.c:17112 +#: commands/tablecmds.c:18874 #, c-format msgid "" "could not change table \"%s\" to logged because it references unlogged table " @@ -13155,7 +13542,7 @@ msgstr "" "не удалось сделать таблицу \"%s\" журналируемой, так как она ссылается на " "нежурналируемую таблицу \"%s\"" -#: commands/tablecmds.c:17122 +#: commands/tablecmds.c:18884 #, c-format msgid "" "could not change table \"%s\" to unlogged because it references logged table " @@ -13164,91 +13551,91 @@ msgstr "" "не удалось сделать таблицу \"%s\" нежурналируемой, так как она ссылается на " "журналируемую таблицу \"%s\"" -#: commands/tablecmds.c:17180 +#: commands/tablecmds.c:18948 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "переместить последовательность с владельцем в другую схему нельзя" -#: commands/tablecmds.c:17288 +#: commands/tablecmds.c:19056 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "отношение \"%s\" уже существует в схеме \"%s\"" -#: commands/tablecmds.c:17713 +#: commands/tablecmds.c:19481 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\" - это не таблица и не материализованное представление" -#: commands/tablecmds.c:17866 +#: commands/tablecmds.c:19634 #, c-format msgid "\"%s\" is not a composite type" msgstr "\"%s\" - это не составной тип" -#: commands/tablecmds.c:17896 +#: commands/tablecmds.c:19664 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "сменить схему индекса \"%s\" нельзя" -#: commands/tablecmds.c:17898 commands/tablecmds.c:17912 +#: commands/tablecmds.c:19666 commands/tablecmds.c:19680 #, c-format msgid "Change the schema of the table instead." msgstr "Однако возможно сменить владельца таблицы." -#: commands/tablecmds.c:17902 +#: commands/tablecmds.c:19670 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "сменить схему составного типа \"%s\" нельзя" -#: commands/tablecmds.c:17910 +#: commands/tablecmds.c:19678 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "сменить схему TOAST-таблицы \"%s\" нельзя" -#: commands/tablecmds.c:17942 +#: commands/tablecmds.c:19710 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "стратегия секционирования по списку не поддерживает несколько столбцов" -#: commands/tablecmds.c:18008 +#: commands/tablecmds.c:19776 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "столбец \"%s\", упомянутый в ключе секционирования, не существует" -#: commands/tablecmds.c:18016 +#: commands/tablecmds.c:19784 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "системный столбец \"%s\" нельзя использовать в ключе секционирования" -#: commands/tablecmds.c:18027 commands/tablecmds.c:18117 +#: commands/tablecmds.c:19798 commands/tablecmds.c:19891 #, c-format msgid "cannot use generated column in partition key" msgstr "генерируемый столбец нельзя использовать в ключе секционирования" -#: commands/tablecmds.c:18100 +#: commands/tablecmds.c:19871 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "" "выражения ключей секционирования не могут содержать ссылки на системный " "столбец" -#: commands/tablecmds.c:18147 +#: commands/tablecmds.c:19921 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "" "функции в выражении ключа секционирования должны быть помечены как IMMUTABLE" -#: commands/tablecmds.c:18156 +#: commands/tablecmds.c:19930 #, c-format msgid "cannot use constant expression as partition key" msgstr "" "в качестве ключа секционирования нельзя использовать константное выражение" -#: commands/tablecmds.c:18177 +#: commands/tablecmds.c:19951 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "не удалось определить правило сортировки для выражения секционирования" -#: commands/tablecmds.c:18212 +#: commands/tablecmds.c:19986 #, c-format msgid "" "You must specify a hash operator class or define a default hash operator " @@ -13257,7 +13644,7 @@ msgstr "" "Вы должны указать класс операторов хеширования или определить класс " "операторов хеширования по умолчанию для этого типа данных." -#: commands/tablecmds.c:18218 +#: commands/tablecmds.c:19992 #, c-format msgid "" "You must specify a btree operator class or define a default btree operator " @@ -13266,27 +13653,27 @@ msgstr "" "Вы должны указать класс операторов B-дерева или определить класс операторов " "B-дерева по умолчанию для этого типа данных." -#: commands/tablecmds.c:18469 +#: commands/tablecmds.c:20252 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\" уже является секцией" -#: commands/tablecmds.c:18475 +#: commands/tablecmds.c:20258 #, c-format msgid "cannot attach a typed table as partition" msgstr "подключить типизированную таблицу в качестве секции нельзя" -#: commands/tablecmds.c:18491 +#: commands/tablecmds.c:20274 #, c-format msgid "cannot attach inheritance child as partition" msgstr "подключить потомок в иерархии наследования в качестве секции нельзя" -#: commands/tablecmds.c:18505 +#: commands/tablecmds.c:20288 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "подключить родитель в иерархии наследования в качестве секции нельзя" -#: commands/tablecmds.c:18539 +#: commands/tablecmds.c:20322 #, c-format msgid "" "cannot attach a temporary relation as partition of permanent relation \"%s\"" @@ -13294,7 +13681,7 @@ msgstr "" "подключить временное отношение в качестве секции постоянного отношения " "\"%s\" нельзя" -#: commands/tablecmds.c:18547 +#: commands/tablecmds.c:20330 #, c-format msgid "" "cannot attach a permanent relation as partition of temporary relation \"%s\"" @@ -13302,102 +13689,102 @@ msgstr "" "подключить постоянное отношение в качестве секции временного отношения " "\"%s\" нельзя" -#: commands/tablecmds.c:18555 +#: commands/tablecmds.c:20338 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "подключить секцию к временному отношению в другом сеансе нельзя" -#: commands/tablecmds.c:18562 +#: commands/tablecmds.c:20345 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "" "подключить временное отношение из другого сеанса в качестве секции нельзя" -#: commands/tablecmds.c:18582 +#: commands/tablecmds.c:20365 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "присоединяемая таблица \"%s\" содержит столбец идентификации \"%s\"" -#: commands/tablecmds.c:18584 +#: commands/tablecmds.c:20367 #, c-format msgid "The new partition may not contain an identity column." msgstr "Новая секция не может содержать столбец идентификации." -#: commands/tablecmds.c:18592 +#: commands/tablecmds.c:20375 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "" "таблица \"%s\" содержит столбец \"%s\", отсутствующий в родителе \"%s\"" -#: commands/tablecmds.c:18595 +#: commands/tablecmds.c:20378 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "" "Новая секция может содержать только столбцы, имеющиеся в родительской " "таблице." -#: commands/tablecmds.c:18607 +#: commands/tablecmds.c:20390 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "триггер \"%s\" не позволяет сделать таблицу \"%s\" секцией" -#: commands/tablecmds.c:18609 +#: commands/tablecmds.c:20392 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "Триггеры ROW с переходными таблицами для секций не поддерживаются." -#: commands/tablecmds.c:18785 +#: commands/tablecmds.c:20574 #, c-format msgid "" "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "" "нельзя присоединить стороннюю таблицу \"%s\" в качестве секции таблицы \"%s\"" -#: commands/tablecmds.c:18788 +#: commands/tablecmds.c:20577 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "Секционированная таблица \"%s\" содержит уникальные индексы." -#: commands/tablecmds.c:19110 +#: commands/tablecmds.c:20900 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "" "секции нельзя отсоединять в режиме CONCURRENTLY, когда существует секция по " "умолчанию" -#: commands/tablecmds.c:19219 +#: commands/tablecmds.c:21009 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "секционированная таблица \"%s\" была параллельно удалена" -#: commands/tablecmds.c:19225 +#: commands/tablecmds.c:21015 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "секция \"%s\" была параллельно удалена" -#: commands/tablecmds.c:19839 commands/tablecmds.c:19859 -#: commands/tablecmds.c:19880 commands/tablecmds.c:19899 -#: commands/tablecmds.c:19941 +#: commands/tablecmds.c:21646 commands/tablecmds.c:21666 +#: commands/tablecmds.c:21687 commands/tablecmds.c:21706 +#: commands/tablecmds.c:21755 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "нельзя присоединить индекс \"%s\" в качестве секции индекса \"%s\"" -#: commands/tablecmds.c:19842 +#: commands/tablecmds.c:21649 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "Индекс \"%s\" уже присоединён к другому индексу." -#: commands/tablecmds.c:19862 +#: commands/tablecmds.c:21669 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "Индекс \"%s\" не является индексом какой-либо секции таблицы \"%s\"." -#: commands/tablecmds.c:19883 +#: commands/tablecmds.c:21690 #, c-format msgid "The index definitions do not match." msgstr "Определения индексов не совпадают." -#: commands/tablecmds.c:19902 +#: commands/tablecmds.c:21709 #, c-format msgid "" "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint " @@ -13406,27 +13793,37 @@ msgstr "" "Индекс \"%s\" принадлежит ограничению в таблице \"%s\", но для индекса " "\"%s\" ограничения нет." -#: commands/tablecmds.c:19944 +#: commands/tablecmds.c:21758 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "К секции \"%s\" уже присоединён другой индекс." -#: commands/tablecmds.c:20180 +#: commands/tablecmds.c:21881 +#, fuzzy, c-format +msgid "invalid primary key definition" +msgstr "неверная запись первичной контрольной точки" + +#: commands/tablecmds.c:21882 +#, fuzzy, c-format +msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." +msgstr "Столбец \"%s\" отношения \"%s\" уже имеет свойство NOT NULL." + +#: commands/tablecmds.c:22017 #, c-format msgid "column data type %s does not support compression" msgstr "тим данных столбца %s не поддерживает сжатие" -#: commands/tablecmds.c:20187 +#: commands/tablecmds.c:22024 #, c-format msgid "invalid compression method \"%s\"" msgstr "неверный метод сжатия \"%s\"" -#: commands/tablecmds.c:20213 +#: commands/tablecmds.c:22050 #, c-format msgid "invalid storage type \"%s\"" msgstr "неверный тип хранилища \"%s\"" -#: commands/tablecmds.c:20223 +#: commands/tablecmds.c:22060 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "тип данных столбца %s совместим только с хранилищем PLAIN" @@ -13556,22 +13953,22 @@ 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." @@ -13579,88 +13976,88 @@ 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 "" "указание переменной типа кортеж в предложении 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" @@ -13668,17 +14065,17 @@ 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" @@ -13686,127 +14083,127 @@ 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 " @@ -13814,7 +14211,7 @@ msgid "" 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\"." @@ -13822,10 +14219,15 @@ msgstr "" "До выполнения триггера \"%s\" строка должна была находиться в секции \"%s." "%s\"." -#: commands/trigger.c:3341 executor/nodeModifyTable.c:1541 -#: executor/nodeModifyTable.c:1615 executor/nodeModifyTable.c:2377 -#: executor/nodeModifyTable.c:2468 executor/nodeModifyTable.c:3132 -#: executor/nodeModifyTable.c:3302 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 +#, c-format +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 #, c-format msgid "" "Consider using an AFTER trigger instead of a BEFORE trigger to propagate " @@ -13834,34 +14236,34 @@ 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:2394 -#: executor/nodeModifyTable.c:2618 +#: 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:2485 executor/nodeModifyTable.c:2642 -#: executor/nodeModifyTable.c:3150 +#: 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:4599 +#: commands/trigger.c:4687 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "" "в рамках операции с ограничениями по безопасности нельзя вызвать отложенный " "триггер" -#: commands/trigger.c:5780 +#: commands/trigger.c:5868 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "ограничение \"%s\" не является откладываемым" -#: commands/trigger.c:5803 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "ограничение \"%s\" не существует" @@ -13976,7 +14378,7 @@ 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\" не распознан" @@ -13996,7 +14398,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\"" @@ -14031,78 +14433,101 @@ 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 +#, fuzzy, c-format +msgid "redundant NOT NULL constraint definition" +msgstr "недостаточно столбцов в определении ограничения %s" + +#: commands/typecmds.c:958 +#, fuzzy, c-format +msgid "not-null constraints for domains cannot be marked NO INHERIT" +msgstr "" +"ограничения-проверки для доменов не могут иметь характеристики 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 +#, fuzzy, c-format +msgid "specifying GENERATED not supported for domains" +msgstr "" +"возможность определения отложенных ограничений для доменов не поддерживается" + +#: commands/typecmds.c:1043 +#, fuzzy, 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:1468 +#: 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, " @@ -14111,96 +14536,96 @@ 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 " @@ -14209,190 +14634,190 @@ 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 должна быть постоянной " "(IMMUTABLE)" -#: 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) должна быть постоянной " "(IMMUTABLE)" -#: 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 — не базовый тип" -#: commands/user.c:200 +#: commands/user.c:201 #, c-format msgid "SYSID can no longer be specified" msgstr "SYSID уже не нужно указывать" -#: commands/user.c:318 commands/user.c:324 commands/user.c:330 -#: commands/user.c:336 commands/user.c:342 +#: commands/user.c:319 commands/user.c:325 commands/user.c:331 +#: commands/user.c:337 commands/user.c:343 #, c-format msgid "permission denied to create role" msgstr "нет прав для создания роли" -#: commands/user.c:319 +#: commands/user.c:320 #, c-format msgid "Only roles with the %s attribute may create roles." msgstr "Создавать роли могут только роли с атрибутом %s." -#: commands/user.c:325 commands/user.c:331 commands/user.c:337 -#: commands/user.c:343 +#: commands/user.c:326 commands/user.c:332 commands/user.c:338 +#: commands/user.c:344 #, c-format 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 +#: commands/user.c:355 commands/user.c:1386 commands/user.c:1393 +#: 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\" зарезервировано" -#: commands/user.c:356 commands/user.c:1388 commands/user.c:1395 +#: commands/user.c:357 commands/user.c:1388 commands/user.c:1395 #, c-format msgid "Role names starting with \"pg_\" are reserved." msgstr "Имена ролей, начинающиеся с \"pg_\", зарезервированы." -#: commands/user.c:377 commands/user.c:1410 +#: commands/user.c:378 commands/user.c:1410 #, c-format msgid "role \"%s\" already exists" msgstr "роль \"%s\" уже существует" -#: commands/user.c:439 commands/user.c:924 +#: commands/user.c:440 commands/user.c:924 #, c-format msgid "empty string is not a valid password, clearing password" msgstr "пустая строка не является допустимым паролем; пароль сбрасывается" -#: commands/user.c:468 +#: commands/user.c:469 #, c-format msgid "pg_authid OID value not set when in binary upgrade mode" msgstr "значение OID в pg_authid не задано в режиме двоичного обновления" @@ -14479,11 +14904,11 @@ msgstr "" msgid "cannot use special role specifier in DROP ROLE" msgstr "использовать специальную роль в DROP ROLE нельзя" -#: commands/user.c:1135 commands/user.c:1357 commands/variable.c:851 -#: commands/variable.c:854 commands/variable.c:971 commands/variable.c:974 -#: 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:799 +#: 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\" не существует" @@ -14557,7 +14982,7 @@ msgstr "" 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\"" @@ -14602,96 +15027,96 @@ 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:2036 #, 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:2137 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "роль \"%s\" не может содержать явных членов" -#: commands/user.c:2135 commands/user.c:2158 +#: commands/user.c:2148 commands/user.c:2171 #, c-format msgid "permission denied to grant role \"%s\"" msgstr "нет прав для назначения членства в роли \"%s\"" -#: commands/user.c:2137 +#: commands/user.c:2150 #, 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:2155 commands/user.c:2178 #, c-format msgid "permission denied to revoke role \"%s\"" msgstr "нет прав для лишения членства в роли \"%s\"" -#: commands/user.c:2144 +#: commands/user.c:2157 #, 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:2173 #, 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:2180 #, 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:2260 commands/user.c:2269 #, c-format msgid "permission denied to grant privileges as role \"%s\"" msgstr "нет полномочий для назначения прав доступа роли \"%s\"" -#: commands/user.c:2249 +#: commands/user.c:2262 #, 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:2271 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "Праводатель должен иметь привилегию %s для роли \"%s\"." -#: commands/user.c:2266 +#: commands/user.c:2279 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "нет полномочий для отзыва прав доступа, назначенных ролью \"%s\"" -#: commands/user.c:2268 +#: commands/user.c:2281 #, c-format msgid "" "Only roles with privileges of role \"%s\" may revoke privileges granted by " @@ -14699,127 +15124,132 @@ msgid "" msgstr "" "Только роли с правами роли \"%s\" могут отзывать права от имени этой роли." -#: commands/user.c:2491 utils/adt/acl.c:1324 +#: commands/user.c:2504 utils/adt/acl.c:1342 #, c-format msgid "dependent privileges exist" msgstr "существуют зависимые права" -#: commands/user.c:2492 utils/adt/acl.c:1325 +#: commands/user.c:2505 utils/adt/acl.c:1343 #, c-format msgid "Use CASCADE to revoke them too." msgstr "Используйте CASCADE, чтобы отозвать и их." -#: commands/vacuum.c:134 -#, c-format -msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" +#: commands/vacuum.c:147 +#, fuzzy, c-format +msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "" "значение \"vacuum_buffer_usage_limit\" должно быть нулевым или лежать в " "диапазоне от %d kB до %d kB" -#: commands/vacuum.c:209 +#: commands/vacuum.c:223 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "" "параметр BUFFER_USAGE_LIMIT должен быть нулевым или лежать в диапазоне от %d " "kB до %d kB" -#: commands/vacuum.c:219 +#: commands/vacuum.c:233 #, c-format msgid "unrecognized ANALYZE option \"%s\"" msgstr "нераспознанный параметр ANALYZE: \"%s\"" -#: commands/vacuum.c:259 +#: commands/vacuum.c:273 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "для параметра parallel требуется значение от 0 до %d" -#: commands/vacuum.c:271 +#: commands/vacuum.c:285 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "" "число параллельных исполнителей для выполнения очистки должно быть от 0 до %d" -#: commands/vacuum.c:292 +#: commands/vacuum.c:306 #, c-format msgid "unrecognized VACUUM option \"%s\"" msgstr "нераспознанный параметр VACUUM: \"%s\"" -#: commands/vacuum.c:318 +#: commands/vacuum.c:332 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL нельзя выполнять в параллельном режиме" -#: commands/vacuum.c:329 +#: commands/vacuum.c:343 #, 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:357 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "если задаётся список столбцов, необходимо указать ANALYZE" -#: commands/vacuum.c:355 +#: commands/vacuum.c:369 #, 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:376 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "VACUUM FULL работает только с PROCESS_TOAST" -#: commands/vacuum.c:371 +#: commands/vacuum.c:385 #, 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:394 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "ONLY_DATABASE_STATS нельзя задавать с другими параметрами VACUUM" -#: commands/vacuum.c:515 +#: commands/vacuum.c:534 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s нельзя выполнить в ходе VACUUM или ANALYZE" -#: commands/vacuum.c:730 +#: commands/vacuum.c:756 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "нет доступа для очистки отношения \"%s\", оно пропускается" -#: commands/vacuum.c:743 +#: commands/vacuum.c:769 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "нет доступа для анализа отношения \"%s\", оно пропускается" -#: commands/vacuum.c:821 commands/vacuum.c:918 +#: commands/vacuum.c:847 commands/vacuum.c:948 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "очистка \"%s\" пропускается --- блокировка недоступна" -#: commands/vacuum.c:826 +#: commands/vacuum.c:852 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "очистка \"%s\" пропускается --- это отношение более не существует" -#: commands/vacuum.c:842 commands/vacuum.c:923 +#: commands/vacuum.c:868 commands/vacuum.c:953 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "анализ \"%s\" пропускается --- блокировка недоступна" -#: commands/vacuum.c:847 +#: commands/vacuum.c:873 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "анализ \"%s\" пропускается --- это отношение более не существует" -#: commands/vacuum.c:1139 +#: commands/vacuum.c:989 +#, fuzzy, c-format +msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" +msgstr "секционированная таблица \"%s\" была параллельно удалена" + +#: commands/vacuum.c:1180 #, 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:1181 commands/vacuum.c:1186 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -14831,42 +15261,42 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: commands/vacuum.c:1144 +#: commands/vacuum.c:1185 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "момент отсечки для замораживания мультитранзакций далеко в прошлом" -#: commands/vacuum.c:1900 +#: commands/vacuum.c:1947 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "" "есть базы данных, которые не очищались на протяжении более чем 2 миллиардов " "транзакций" -#: commands/vacuum.c:1901 +#: commands/vacuum.c:1948 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "" "Возможно, вы уже потеряли данные в результате зацикливания ID транзакций." -#: commands/vacuum.c:2080 +#: commands/vacuum.c:2134 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "" "\"%s\" пропускается --- очищать не таблицы или специальные системные таблицы " "нельзя" -#: commands/vacuum.c:2512 -#, c-format -msgid "scanned index \"%s\" to remove %lld row versions" +#: commands/vacuum.c:2650 +#, fuzzy, c-format +msgid "scanned index \"%s\" to remove % row versions" msgstr "просканирован индекс \"%s\", удалено версий строк: %lld" -#: commands/vacuum.c:2531 +#: commands/vacuum.c:2669 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "индекс \"%s\" теперь содержит версий строк: %.0f, в страницах: %u" -#: commands/vacuum.c:2535 +#: commands/vacuum.c:2673 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -14878,7 +15308,7 @@ msgstr "" "На данный момент удалено страниц индекса: %u, из них свободны для " "использования: %u." -#: commands/vacuumparallel.c:707 +#: commands/vacuumparallel.c:709 #, c-format msgid "launched %d parallel vacuum worker for index vacuuming (planned: %d)" msgid_plural "" @@ -14893,7 +15323,7 @@ msgstr[2] "" "запущено %d параллельных процессов очистки для очистки индекса " "(планировалось: %d)" -#: commands/vacuumparallel.c:713 +#: commands/vacuumparallel.c:715 #, c-format msgid "launched %d parallel vacuum worker for index cleanup (planned: %d)" msgid_plural "" @@ -14909,8 +15339,8 @@ msgstr[2] "" "(планировалось: %d)" #: commands/variable.c:185 -#, c-format -msgid "Conflicting \"datestyle\" specifications." +#, fuzzy, c-format +msgid "Conflicting \"DateStyle\" specifications." msgstr "Конфликтующие спецификации стиля дат." #: commands/variable.c:307 @@ -14923,12 +15353,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 не поддерживает координационные секунды." @@ -14938,126 +15368,108 @@ 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:1685 +#: commands/variable.c:610 storage/lmgr/predicate.c:1695 #, c-format msgid "cannot use serializable mode in a hot standby" msgstr "использовать сериализуемый режим в горячем резерве нельзя" -#: 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 +#, fuzzy, 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 "" -"изменить параметр \"client_encoding\" во время параллельной операции нельзя" - -#: commands/variable.c:876 +#: commands/variable.c:889 #, c-format msgid "permission will be denied to set session authorization \"%s\"" msgstr "в доступе для смены объекта авторизации \"%s\" будет отказано" -#: commands/variable.c:881 +#: commands/variable.c:894 #, c-format msgid "permission denied to set session authorization \"%s\"" msgstr "нет доступа для смены объекта авторизации в сеансе \"%s\"" -#: commands/variable.c:991 +#: commands/variable.c:1003 #, c-format msgid "permission will be denied to set role \"%s\"" msgstr "нет прав установить роль \"%s\"" -#: commands/variable.c:996 +#: commands/variable.c:1008 #, c-format msgid "permission denied to set role \"%s\"" msgstr "нет прав установить роль \"%s\"" -#: commands/variable.c:1200 +#: commands/variable.c:1226 #, c-format msgid "Bonjour is not supported by this build" msgstr "Bonjour не поддерживается в данной сборке" -#: commands/variable.c:1228 -#, c-format -msgid "" -"\"effective_io_concurrency\" must be set to 0 on platforms that lack " -"posix_fadvise()." -msgstr "" -"Значение \"effective_io_concurrency\" должно равняться 0 на платформах, где " -"отсутствует posix_fadvise()." - -#: commands/variable.c:1241 -#, c-format -msgid "" -"\"maintenance_io_concurrency\" must be set to 0 on platforms that lack " -"posix_fadvise()." -msgstr "" -"Значение \"maintenance_io_concurrency\" должно равняться 0 на платформах, " -"где отсутствует posix_fadvise()." - #: 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 "" @@ -15153,7 +15565,7 @@ msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\"" msgstr "" "для курсора \"%s\" не выполняется обновляемое сканирование таблицы \"%s\"" -#: executor/execCurrent.c:280 executor/execExprInterp.c:2555 +#: 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)" @@ -15161,55 +15573,55 @@ msgstr "" "тип параметра %d (%s) не соответствует тому, с которым подготавливался план " "(%s)" -#: executor/execCurrent.c:292 executor/execExprInterp.c:2567 +#: 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:4852 executor/execExprInterp.c:4869 -#: executor/execExprInterp.c:4968 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:4870 -#: 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:843 #, c-format msgid "window function calls cannot be nested" msgstr "вложенные вызовы оконных функций недопустимы" -#: executor/execExpr.c:1649 +#: executor/execExpr.c:1689 #, c-format msgid "target type is not an array" msgstr "целевой тип не является массивом" -#: executor/execExpr.c:1989 +#: executor/execExpr.c:2033 #, c-format msgid "ROW() column has type %s instead of type %s" msgstr "столбец ROW() имеет тип %s, а должен - %s" -#: executor/execExpr.c:2653 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" @@ -15218,60 +15630,60 @@ msgstr[0] "функции нельзя передать больше %d аргу msgstr[1] "функции нельзя передать больше %d аргументов" msgstr[2] "функции нельзя передать больше %d аргументов" -#: executor/execExpr.c:2680 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 "" "функция, возвращающая множество, вызвана в контексте, где ему нет места" -#: executor/execExpr.c:3086 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:3214 executor/execExpr.c:3236 +#: executor/execExpr.c:3390 executor/execExpr.c:3412 #, c-format msgid "type %s does not support subscripted assignment" msgstr "тип %s не поддерживает изменение элемента по индексу" -#: executor/execExprInterp.c:2019 +#: executor/execExprInterp.c:2415 #, c-format msgid "attribute %d of type %s has been dropped" msgstr "атрибут %d типа %s был удалён" -#: executor/execExprInterp.c:2025 +#: executor/execExprInterp.c:2421 #, c-format msgid "attribute %d of type %s has wrong type" msgstr "атрибут %d типа %s имеет неправильный тип" -#: executor/execExprInterp.c:2027 executor/execExprInterp.c:3226 -#: executor/execExprInterp.c:3272 +#: 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:2107 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:2710 +#: executor/execExprInterp.c:3266 #, c-format msgid "WHERE CURRENT OF is not supported for this table type" msgstr "WHERE CURRENT OF для таблиц такого типа не поддерживается" -#: executor/execExprInterp.c:2923 +#: executor/execExprInterp.c:3479 #, c-format msgid "cannot merge incompatible arrays" msgstr "не удалось объединить несовместимые массивы" -#: executor/execExprInterp.c:2924 +#: executor/execExprInterp.c:3480 #, c-format msgid "" "Array with element type %s cannot be included in ARRAY construct with " @@ -15280,15 +15692,15 @@ msgstr "" "Массив с типом элементов %s нельзя включить в конструкцию ARRAY с типом " "элементов %s." -#: executor/execExprInterp.c:2945 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:2965 executor/execExprInterp.c:3000 +#: executor/execExprInterp.c:3521 executor/execExprInterp.c:3556 #, c-format msgid "" "multidimensional arrays must have array expressions with matching dimensions" @@ -15296,53 +15708,53 @@ msgstr "" "для многомерных массивов должны задаваться выражения с соответствующими " "размерностями" -#: executor/execExprInterp.c:2977 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:3225 executor/execExprInterp.c:3271 +#: executor/execExprInterp.c:3781 executor/execExprInterp.c:3827 #, c-format msgid "attribute %d has wrong type" msgstr "атрибут %d имеет неверный тип" -#: executor/execExprInterp.c:3857 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:3872 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:4447 +#: executor/execExprInterp.c:5003 #, c-format msgid "no SQL/JSON item found for specified path of column \"%s\"" msgstr "по заданному для столбца \"%s\" пути не найден элемент SQL/JSON" -#: executor/execExprInterp.c:4452 +#: executor/execExprInterp.c:5008 #, c-format msgid "no SQL/JSON item found for specified path" msgstr "по заданному пути не найден элемент SQL/JSON" #. translator: first %s is a SQL/JSON clause (e.g. ON ERROR) -#: executor/execExprInterp.c:4652 executor/execExprInterp.c:4660 +#: executor/execExprInterp.c:5208 executor/execExprInterp.c:5216 #, c-format msgid "could not coerce %s expression (%s) to the RETURNING type" msgstr "привести выражение %s (%s) к типу RETURNING не удалось" -#: executor/execExprInterp.c:4853 +#: 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." @@ -15350,14 +15762,14 @@ msgstr[0] "Строка таблицы содержит %d атрибут, а в msgstr[1] "Строка таблицы содержит %d атрибута, а в запросе ожидается %d." msgstr[2] "Строка таблицы содержит %d атрибутов, а в запросе ожидается %d." -#: executor/execExprInterp.c:4969 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 " @@ -15366,159 +15778,164 @@ 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:1039 +#: executor/execIndexing.c:1172 +#, c-format +msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" +msgstr "" + +#: executor/execMain.c:1066 #, c-format msgid "cannot change sequence \"%s\"" msgstr "последовательность \"%s\" изменить нельзя" -#: executor/execMain.c:1045 +#: executor/execMain.c:1072 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "TOAST-отношение \"%s\" изменить нельзя" -#: executor/execMain.c:1064 +#: executor/execMain.c:1091 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "изменить материализованное представление \"%s\" нельзя" -#: executor/execMain.c:1076 +#: executor/execMain.c:1103 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "вставлять данные в стороннюю таблицу \"%s\" нельзя" -#: executor/execMain.c:1082 +#: executor/execMain.c:1109 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "сторонняя таблица \"%s\" не допускает добавления" -#: executor/execMain.c:1089 +#: executor/execMain.c:1116 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "изменять данные в сторонней таблице \"%s\"" -#: executor/execMain.c:1095 +#: executor/execMain.c:1122 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "сторонняя таблица \"%s\" не допускает изменения" -#: executor/execMain.c:1102 +#: executor/execMain.c:1129 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "удалять данные из сторонней таблицы \"%s\" нельзя" -#: executor/execMain.c:1108 +#: executor/execMain.c:1135 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "сторонняя таблица \"%s\" не допускает удаления" -#: executor/execMain.c:1119 +#: executor/execMain.c:1146 #, c-format msgid "cannot change relation \"%s\"" msgstr "отношение \"%s\" изменить нельзя" -#: executor/execMain.c:1146 +#: executor/execMain.c:1173 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "блокировать строки в последовательности \"%s\" нельзя" -#: executor/execMain.c:1153 +#: executor/execMain.c:1180 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "блокировать строки в TOAST-отношении \"%s\" нельзя" -#: executor/execMain.c:1160 +#: executor/execMain.c:1187 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "блокировать строки в представлении \"%s\" нельзя" -#: executor/execMain.c:1168 +#: executor/execMain.c:1195 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "блокировать строки в материализованном представлении \"%s\" нельзя" -#: executor/execMain.c:1177 executor/execMain.c:2687 +#: executor/execMain.c:1204 executor/execMain.c:2836 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "блокировать строки в сторонней таблице \"%s\" нельзя" -#: executor/execMain.c:1183 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "блокировать строки в отношении \"%s\" нельзя" -#: executor/execMain.c:1901 +#: executor/execMain.c:1933 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "новая строка в отношении \"%s\" нарушает ограничение секции" -#: executor/execMain.c:1903 executor/execMain.c:1987 executor/execMain.c:2038 -#: executor/execMain.c:2148 +#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 +#: executor/execMain.c:2293 #, c-format msgid "Failing row contains %s." msgstr "Ошибочная строка содержит %s." -#: executor/execMain.c:1984 +#: executor/execMain.c:2045 +#, c-format +msgid "new row for relation \"%s\" violates check constraint \"%s\"" +msgstr "новая строка в отношении \"%s\" нарушает ограничение-проверку \"%s\"" + +#: executor/execMain.c:2182 #, c-format msgid "" "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "" "значение NULL в столбце \"%s\" отношения \"%s\" нарушает ограничение NOT NULL" -#: executor/execMain.c:2036 -#, c-format -msgid "new row for relation \"%s\" violates check constraint \"%s\"" -msgstr "новая строка в отношении \"%s\" нарушает ограничение-проверку \"%s\"" - -#: executor/execMain.c:2146 +#: executor/execMain.c:2291 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "новая строка нарушает ограничение-проверку для представления \"%s\"" -#: executor/execMain.c:2156 +#: executor/execMain.c:2301 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" для таблицы " "\"%s\"" -#: executor/execMain.c:2161 +#: executor/execMain.c:2306 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк для таблицы \"%s\"" -#: executor/execMain.c:2169 +#: executor/execMain.c:2314 #, c-format msgid "" "target row violates row-level security policy \"%s\" (USING expression) for " @@ -15527,7 +15944,7 @@ msgstr "" "целевая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2174 +#: executor/execMain.c:2319 #, c-format msgid "" "target row violates row-level security policy (USING expression) for table " @@ -15536,7 +15953,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк (выражение USING) для " "таблицы \"%s\"" -#: executor/execMain.c:2181 +#: executor/execMain.c:2326 #, c-format msgid "" "new row violates row-level security policy \"%s\" (USING expression) for " @@ -15545,7 +15962,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2186 +#: executor/execMain.c:2331 #, c-format msgid "" "new row violates row-level security policy (USING expression) for table " @@ -15554,17 +15971,17 @@ 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 " @@ -15573,31 +15990,23 @@ 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:687 executor/execReplication.c:693 +#: executor/execReplication.c:809 executor/execReplication.c:815 +#: executor/execReplication.c:821 #, c-format msgid "cannot update table \"%s\"" msgstr "изменять данные в таблице \"%s\" нельзя" -#: executor/execReplication.c:689 executor/execReplication.c:701 +#: executor/execReplication.c:811 executor/execReplication.c:829 #, c-format msgid "" "Column used in the publication WHERE expression is not part of the replica " @@ -15606,7 +16015,7 @@ msgstr "" "Столбец, фигурирующий в выражении WHERE публикации, не входит в " "идентификатор реплики." -#: executor/execReplication.c:695 executor/execReplication.c:707 +#: executor/execReplication.c:817 executor/execReplication.c:835 #, c-format msgid "" "Column list used by the publication does not cover the replica identity." @@ -15614,12 +16023,18 @@ msgstr "" "Список столбцов, используемых в публикации, не покрывает идентификатор " "реплики." -#: executor/execReplication.c:699 executor/execReplication.c:705 +#: 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:725 +#: executor/execReplication.c:859 #, c-format msgid "" "cannot update table \"%s\" because it does not have a replica identity and " @@ -15628,14 +16043,14 @@ msgstr "" "изменение в таблице \"%s\" невозможно, так как в ней отсутствует " "идентификатор реплики, но она публикует изменения" -#: executor/execReplication.c:727 +#: 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:731 +#: executor/execReplication.c:865 #, c-format msgid "" "cannot delete from table \"%s\" because it does not have a replica identity " @@ -15644,7 +16059,7 @@ msgstr "" "удаление из таблицы \"%s\" невозможно, так как в ней отсутствует " "идентификатор реплики, но она публикует удаления" -#: executor/execReplication.c:733 +#: executor/execReplication.c:867 #, c-format msgid "" "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE." @@ -15652,7 +16067,7 @@ msgstr "" "Чтобы эта таблица поддерживала удаление, установите REPLICA IDENTITY, " "выполнив ALTER TABLE." -#: executor/execReplication.c:749 +#: executor/execReplication.c:883 #, c-format msgid "cannot use relation \"%s.%s\" as logical replication target" msgstr "" @@ -15708,79 +16123,58 @@ msgstr[2] "" 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 "для этого типа кортежей транзакционная информация отсутствует" -#: 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 "в данном контексте хранимый кортеж отсутствует" -#: 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 "%s нельзя использовать в SQL-функции" #. translator: %s is a SQL statement name -#: executor/functions.c:527 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 нельзя использовать в не изменчивой (volatile) функции" -#: executor/functions.c:1452 -#, c-format -msgid "SQL function \"%s\" statement %d" -msgstr "SQL-функция \"%s\", оператор %d" - -#: executor/functions.c:1478 -#, c-format -msgid "SQL function \"%s\" during startup" -msgstr "SQL-функция \"%s\" (при старте)" - -#: executor/functions.c:1563 -#, c-format -msgid "" -"calling procedures with output arguments is not supported in SQL functions" -msgstr "" -"вызов процедур с выходными аргументами в функциях SQL не поддерживается" - -#: 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: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:1700 +#: executor/functions.c:1187 executor/functions.c:2226 #, c-format msgid "" "Function's final statement must be SELECT or INSERT/UPDATE/DELETE/MERGE " @@ -15789,43 +16183,65 @@ msgstr "" "Последним оператором в функции должен быть SELECT или INSERT/UPDATE/DELETE/" "MERGE RETURNING." -#: executor/functions.c:1738 +#: executor/functions.c:1270 utils/cache/plancache.c:860 +#, c-format +msgid "cached plan must not change result type" +msgstr "в кешированном плане не должен изменяться тип результата" + +#: executor/functions.c:1922 executor/functions.c:1953 +#, c-format +msgid "SQL function \"%s\" during startup" +msgstr "SQL-функция \"%s\" (при старте)" + +#: executor/functions.c:1950 +#, c-format +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: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:2975 +#: 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:685 parser/parse_agg.c:713 #, c-format msgid "aggregate function calls cannot be nested" msgstr "вложенные вызовы агрегатных функций недопустимы" @@ -15835,12 +16251,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 "" @@ -15857,25 +16273,31 @@ 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 " @@ -15884,12 +16306,12 @@ 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 " @@ -15898,7 +16320,7 @@ 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 " @@ -15907,26 +16329,26 @@ 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:2596 executor/nodeModifyTable.c:3138 -#: executor/nodeModifyTable.c:3308 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 +#: executor/nodeModifyTable.c:3507 #, c-format msgid "%s command cannot affect row a second time" msgstr "команда %s не может подействовать на строку дважды" -#: executor/nodeModifyTable.c:2598 +#: executor/nodeModifyTable.c:2790 #, c-format msgid "" "Ensure that no rows proposed for insertion within the same command have " @@ -15935,7 +16357,7 @@ msgstr "" "Проверьте, не содержат ли строки, которые должна добавить команда, " "дублирующиеся значения, подпадающие под ограничения." -#: executor/nodeModifyTable.c:3131 executor/nodeModifyTable.c:3301 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3500 #, c-format msgid "" "tuple to be updated or deleted was already modified by an operation " @@ -15944,14 +16366,14 @@ msgstr "" "кортеж, который должен быть изменён или удалён, уже модифицирован в " "операции, вызванной текущей командой" -#: executor/nodeModifyTable.c:3140 executor/nodeModifyTable.c:3310 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3509 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "" "Проверьте, не может ли какой-либо целевой строке соответствовать более одной " "исходной строки." -#: executor/nodeModifyTable.c:3209 +#: executor/nodeModifyTable.c:3408 #, c-format msgid "" "tuple to be merged was already moved to another partition due to concurrent " @@ -15970,8 +16392,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:317 executor/nodeSubplan.c:343 +#: executor/nodeSubplan.c:397 executor/nodeSubplan.c:1182 #, c-format msgid "more than one row returned by a subquery used as an expression" msgstr "подзапрос в выражении вернул больше одной строки" @@ -16006,27 +16428,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:2891 +#: executor/nodeWindowAgg.c:2957 #, c-format msgid "aggregate function %s does not support use as a window function" msgstr "" @@ -16079,7 +16501,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:2928 +#: executor/spi.c:1719 parser/analyze.c:3076 #, c-format msgid "Scrollable cursors must be READ ONLY." msgstr "Прокручиваемые курсоры должны быть READ ONLY." @@ -16096,8 +16518,8 @@ msgid "%s query does not return tuples" msgstr "запрос %s не возвращает кортежи" #: executor/spi.c:2987 -#, c-format -msgid "SQL expression \"%s\"" +#, fuzzy, c-format +msgid "PL/pgSQL expression \"%s\"" msgstr "SQL-выражение \"%s\"" #: executor/spi.c:2992 @@ -16115,28 +16537,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:7293 +#: optimizer/util/plancat.c:538 #, c-format msgid "access to non-system foreign table is restricted" 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 "В данном контексте недопустимы никакие параметры." @@ -16147,82 +16569,289 @@ msgstr "В данном контексте недопустимы никакие msgid "Failed on DSA request of size %zu." msgstr "Ошибка при запросе памяти DSA (%zu Б)." -#: libpq/auth-sasl.c:97 +#: libpq/auth-oauth.c:109 libpq/auth-scram.c:267 #, c-format -msgid "expected SASL response, got message type %d" -msgstr "ожидался ответ SASL, но получено сообщение %d" +msgid "client selected an invalid SASL authentication mechanism" +msgstr "клиент выбрал неверный механизм аутентификации SASL" -#: libpq/auth-scram.c:263 +#: 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 +#, fuzzy, c-format +msgid "malformed OAUTHBEARER message" +msgstr "неправильное сообщение SCRAM" + +#: libpq/auth-oauth.c:170 libpq/auth-scram.c:383 #, c-format -msgid "client selected an invalid SASL authentication mechanism" +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 "" + +#: libpq/auth-oauth.c:221 +#, fuzzy, c-format +msgid "" +"The server does not support channel binding for OAuth, but the client " +"message includes channel binding data." +msgstr "" +"Клиент выбрал алгоритм SCRAM-SHA-256 без связывания каналов, но сообщение " +"SCRAM содержит данные связывания каналов." + +#: 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 +#, fuzzy, c-format +msgid "Key-value separator expected, but found character \"%s\"." +msgstr "Ожидалась запятая, но обнаружен символ \"%s\"." + +#: libpq/auth-oauth.c:273 +#, fuzzy, c-format +msgid "Message does not contain an auth value." +msgstr "Файл \"%s\" содержит неприемлемые данные." + +#: 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 +#, fuzzy, c-format +msgid "Message contains an invalid value." +msgstr "перечисление %s не содержит значений" + +#: 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 +#, fuzzy, c-format +msgid "Message contains multiple auth values." +msgstr "столбец \"%s\" содержит значения NULL" + +#: libpq/auth-oauth.c:473 +#, c-format +msgid "Message did not contain a final terminator." +msgstr "" + +#: libpq/auth-oauth.c:499 +#, fuzzy, c-format +msgid "OAuth is not properly configured for this user" +msgstr "единица \"%s\" для типа %s не распознана" + +#: libpq/auth-oauth.c:500 +#, c-format +msgid "The issuer and scope parameters must be set in pg_hba.conf." +msgstr "" + +#: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 +#, fuzzy, c-format +msgid "malformed OAuth bearer token" +msgstr "неправильный массив JSON" + +#: libpq/auth-oauth.c:586 +#, fuzzy, c-format +msgid "Client response indicated a non-Bearer authentication scheme." msgstr "клиент выбрал неверный механизм аутентификации SASL" -#: libpq/auth-scram.c:287 libpq/auth-scram.c:536 libpq/auth-scram.c:547 +#: libpq/auth-oauth.c:603 +#, fuzzy, c-format +msgid "Bearer token is empty." +msgstr "Сообщение пустое." + +#: libpq/auth-oauth.c:625 +#, c-format +msgid "Bearer token is not in the correct format." +msgstr "" + +#: libpq/auth-oauth.c:656 +#, c-format +msgid "validation of OAuth token requested without a validator loaded" +msgstr "" + +#: libpq/auth-oauth.c:665 +#, c-format +msgid "internal error in OAuth validator module" +msgstr "" + +#: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 +#, fuzzy, c-format +msgid "OAuth bearer authentication failed for user \"%s\"" +msgstr "пользователь \"%s\" не прошёл проверку подлинности (Peer)" + +#: 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 +#, fuzzy, c-format +msgid "%s module \"%s\" must define the symbol %s" +msgstr "в модулях архивирования должен объявляться символ %s" + +#: libpq/auth-oauth.c:773 +#, fuzzy, c-format +msgid "%s module \"%s\": magic number mismatch" +msgstr "несовместимая библиотека \"%s\": несоответствие отличительного блока" + +#: libpq/auth-oauth.c:775 +#, c-format +msgid "Server has magic number 0x%08X, module has 0x%08X." +msgstr "" + +#: libpq/auth-oauth.c:784 +#, fuzzy, c-format +msgid "%s module \"%s\" must provide a %s callback" +msgstr "модули архивирования должны регистрировать обработчик вызова архивации" + +#: libpq/auth-oauth.c:833 +#, fuzzy, c-format +msgid "oauth_validator_libraries must be set for authentication method %s" +msgstr "параметр проверки подлинности \"%s\" допускается только для методов %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 +#, fuzzy, c-format +msgid "" +"authentication method \"oauth\" requires argument \"validator\" to be set " +"when oauth_validator_libraries contains multiple options" +msgstr "" +"для метода проверки подлинности \"ldap\" требуется установить аргументы " +"\"ldapbasedn\" и \"ldapprefix\" или \"ldapsuffix\"" + +#: libpq/auth-oauth.c:882 +#, fuzzy, c-format +msgid "validator \"%s\" is not permitted by %s" +msgstr "для роли \"%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 " @@ -16231,17 +16860,12 @@ 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. " @@ -16250,7 +16874,7 @@ 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 " @@ -16259,155 +16883,140 @@ 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 "Подключение соответствует строке %2$d в \"%1$s\": \"%3$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 " @@ -16416,25 +17025,25 @@ 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" @@ -16443,7 +17052,7 @@ msgstr "" "пользователь \"%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 " @@ -16452,38 +17061,38 @@ 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 " @@ -16493,242 +17102,247 @@ msgstr "" "компьютера \"%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 "соединение аутентифицировано: пользователь=\"%s\" метод=%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 -#, c-format -msgid "could not look up local user ID %ld: %s" +#: libpq/auth.c:1888 +#, fuzzy, c-format +msgid "could not look up local user ID %ld: %m" msgstr "найти локального пользователя по идентификатору (%ld) не удалось: %s" -#: libpq/auth.c:1988 +#: libpq/auth.c:1894 +#, fuzzy, c-format +msgid "local user with ID %ld does not exist" +msgstr "локальный пользователь с ID %d не существует" + +#: 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\": " @@ -16737,28 +17351,28 @@ 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 "" @@ -16767,7 +17381,7 @@ msgstr[0] "LDAP-поиск по фильтру \"%s\" на сервере \"%s\" msgstr[1] "LDAP-поиск по фильтру \"%s\" на сервере \"%s\" вернул %d записи." msgstr[2] "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" @@ -16775,18 +17389,18 @@ 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 " @@ -16795,7 +17409,7 @@ msgstr "" "ошибка проверки подлинности пользователя \"%s\" по сертификату: сертификат " "клиента не содержит имя пользователя" -#: libpq/auth.c:2724 +#: libpq/auth.c:2730 #, c-format msgid "" "certificate authentication failed for user \"%s\": unable to retrieve " @@ -16804,7 +17418,7 @@ msgstr "" "пользователь \"%s\" не прошёл проверку подлинности по сертификату: не " "удалось получить DN субъекта" -#: libpq/auth.c:2747 +#: libpq/auth.c:2753 #, c-format msgid "" "certificate validation (clientcert=verify-full) failed for user \"%s\": DN " @@ -16813,7 +17427,7 @@ 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 " @@ -16822,106 +17436,106 @@ 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 не определён" # well-spelled: симв -#: 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" @@ -16931,7 +17545,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 не был открыт для записи" @@ -16950,32 +17564,32 @@ 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 "запрошенная длина не может быть отрицательной" @@ -17017,123 +17631,123 @@ msgstr "" "он принадлежит пользователю сервера, либо u=rw,g=r (0640) или более строгие, " "если он принадлежит root." -#: 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 -#, c-format -msgid "could not set the cipher list (no valid ciphers available)" +#: libpq/be-secure-openssl.c:295 +#, fuzzy, c-format +msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" +msgstr "не удалось установить список шифров (подходящие шифры отсутствуют)" + +#: libpq/be-secure-openssl.c:310 +#, fuzzy, c-format +msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" msgstr "не удалось установить список шифров (подходящие шифры отсутствуют)" -#: 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 " @@ -17142,38 +17756,38 @@ msgstr "" "не удалось загрузить списки отзыва сертификатов SSL из файла \"%s\" или " "каталога \"%s\": %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-подключение: обрыв данных" -#: 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 " @@ -17182,65 +17796,65 @@ 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 "получен запрос на 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 "уникальное имя (DN) в SSL-сертификате содержит нулевой байт" -#: 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: p - не простое число" -#: 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, " @@ -17249,173 +17863,190 @@ 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 -#, c-format -msgid "ECDH: unrecognized curve name: %s" -msgstr "ECDH: нераспознанное имя кривой: %s" +#: libpq/be-secure-openssl.c:1439 +#, fuzzy, c-format +msgid "could not set group names specified in ssl_groups: %s" +msgstr "не удалось установить группу для файла \"%s\": %m" + +#: 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 "" -#: 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 +#, fuzzy, 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 "" + +#: libpq/crypt.c:183 +#, c-format +msgid "setting an MD5-encrypted password" +msgstr "" + +#: libpq/crypt.c:184 +#, c-format +msgid "" +"MD5 password support is deprecated and will be removed in a future release " +"of PostgreSQL." +msgstr "" + +#: libpq/crypt.c:185 +#, c-format +msgid "" +"Refer to the PostgreSQL documentation for details about migrating to another " +"password type." +msgstr "" + +#: 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 "Установите \"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" @@ -17423,135 +18054,131 @@ 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" +msgid "cannot mix options for simple bind and search+bind modes" msgstr "" -"нельзя использовать ldapbasedn, ldapbinddn, ldapbindpasswd, " -"ldapsearchattribute, ldapsearchfilter или ldapurl вместе с ldapprefix" -#: libpq/hba.c:1921 +#: libpq/hba.c:1929 #, c-format msgid "" "authentication method \"ldap\" requires argument \"ldapbasedn\", " @@ -17560,22 +18187,22 @@ 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 " @@ -17584,7 +18211,7 @@ 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 " @@ -17593,7 +18220,7 @@ 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 " @@ -17602,16 +18229,23 @@ msgstr "" "количество идентификаторов RADIUS (%d) должно равняться 1 или количеству " "серверов RADIUS (%d)" -#: libpq/hba.c:2066 -msgid "ident, peer, gssapi, sspi, and cert" +#. translator: strings are replaced with hba options +#: libpq/hba.c:2067 +#, fuzzy, c-format +msgid "%s cannot be used in combination with %s" +msgstr "COPY %s нельзя использовать с %s" + +#: libpq/hba.c:2105 +#, fuzzy +msgid "ident, peer, gssapi, sspi, cert, and oauth" msgstr "ident, peer, gssapi, sspi и cert" -#: 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" @@ -17619,95 +18253,95 @@ msgstr "" "с проверкой подлинности \"cert\" для clientcert допускается только значение " "\"verify-full\"" -#: 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 " @@ -17716,96 +18350,97 @@ 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 "Возможно, порт %d занят другим процессом postmaster?" -#: 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 " @@ -17815,88 +18450,88 @@ msgstr "" "попытку через несколько секунд." #. 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 "неожиданный обрыв данных в слове длины сообщения" -#: 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 "изменение значения keepalives_idle не поддерживается" -#: 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) не поддерживается" @@ -17907,7 +18542,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" @@ -17923,12 +18558,12 @@ msgstr "неверная строка в сообщении" msgid "invalid message format" msgstr "неверный формат сообщения" -#: main/main.c:236 +#: main/main.c:298 #, c-format msgid "%s: WSAStartup failed: %d\n" msgstr "%s: ошибка WSAStartup: %d\n" -#: main/main.c:324 +#: main/main.c:386 #, c-format msgid "" "%s is the PostgreSQL server.\n" @@ -17937,7 +18572,7 @@ msgstr "" "%s - сервер PostgreSQL.\n" "\n" -#: main/main.c:325 +#: main/main.c:387 #, c-format msgid "" "Usage:\n" @@ -17948,110 +18583,110 @@ msgstr "" " %s [ПАРАМЕТР]...\n" "\n" -#: main/main.c:326 +#: main/main.c:388 #, c-format msgid "Options:\n" msgstr "Параметры:\n" -#: main/main.c:327 +#: main/main.c:389 #, c-format msgid " -B NBUFFERS number of shared buffers\n" msgstr " -B ЧИСЛО_БУФ число разделяемых буферов\n" -#: main/main.c:328 +#: main/main.c:390 #, c-format msgid " -c NAME=VALUE set run-time parameter\n" msgstr " -c ИМЯ=ЗНАЧЕНИЕ установить параметр выполнения\n" -#: main/main.c:329 +#: main/main.c:391 #, c-format msgid " -C NAME print value of run-time parameter, then exit\n" msgstr " -C ИМЯ вывести значение параметра выполнения и выйти\n" -#: main/main.c:330 +#: main/main.c:392 #, c-format msgid " -d 1-5 debugging level\n" msgstr " -d 1-5 уровень отладочных сообщений\n" -#: main/main.c:331 +#: main/main.c:393 #, c-format msgid " -D DATADIR database directory\n" msgstr " -D КАТ_ДАННЫХ каталог с данными\n" # well-spelled: ДМГ -#: main/main.c:332 +#: main/main.c:394 #, c-format msgid " -e use European date input format (DMY)\n" msgstr " -e использовать европейский формат дат (ДМГ)\n" -#: main/main.c:333 +#: main/main.c:395 #, c-format msgid " -F turn fsync off\n" msgstr " -F выключить синхронизацию с ФС\n" -#: main/main.c:334 +#: main/main.c:396 #, c-format msgid " -h HOSTNAME host name or IP address to listen on\n" msgstr " -h ИМЯ имя или IP-адрес для приёма сетевых соединений\n" -#: main/main.c:335 +#: main/main.c:397 #, c-format msgid " -i enable TCP/IP connections (deprecated)\n" msgstr "" " -i включить соединения TCP/IP (устаревший параметр)\n" -#: main/main.c:336 +#: main/main.c:398 #, c-format msgid " -k DIRECTORY Unix-domain socket location\n" msgstr " -k КАТАЛОГ расположение Unix-сокетов\n" -#: main/main.c:338 +#: main/main.c:400 #, c-format msgid " -l enable SSL connections\n" msgstr " -l разрешить SSL-подключения\n" # well-spelled: ПОДКЛ -#: main/main.c:340 +#: main/main.c:402 #, c-format msgid " -N MAX-CONNECT maximum number of allowed connections\n" msgstr " -N МАКС_ПОДКЛ предельное число подключений\n" -#: main/main.c:341 +#: main/main.c:403 #, c-format msgid " -p PORT port number to listen on\n" msgstr " -p ПОРТ номер порта для приёма подключений\n" -#: main/main.c:342 +#: main/main.c:404 #, c-format msgid " -s show statistics after each query\n" msgstr " -s показывать статистику после каждого запроса\n" -#: main/main.c:343 +#: main/main.c:405 #, c-format msgid " -S WORK-MEM set amount of memory for sorts (in kB)\n" msgstr " -S РАБ_ПАМЯТЬ задать объём памяти для сортировки (в КБ)\n" -#: main/main.c:344 +#: main/main.c:406 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: main/main.c:345 +#: main/main.c:407 #, c-format msgid " --NAME=VALUE set run-time parameter\n" msgstr " --ИМЯ=ЗНАЧЕНИЕ установить параметр выполнения\n" -#: main/main.c:346 +#: main/main.c:408 #, c-format msgid " --describe-config describe configuration parameters, then exit\n" msgstr " --describe-config вывести параметры конфигурации и выйти\n" -#: main/main.c:347 +#: main/main.c:409 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: main/main.c:349 +#: main/main.c:411 #, c-format msgid "" "\n" @@ -18060,27 +18695,27 @@ msgstr "" "\n" "Параметры для разработчиков:\n" -#: main/main.c:350 +#: 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:351 +#: main/main.c:413 #, c-format msgid " -O allow system table structure changes\n" msgstr " -O разрешить изменять структуру системных таблиц\n" -#: main/main.c:352 +#: main/main.c:414 #, c-format msgid " -P disable system indexes\n" msgstr " -P отключить системные индексы\n" -#: main/main.c:353 +#: 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:354 +#: main/main.c:416 #, c-format msgid "" " -T send SIGABRT to all backend processes if one dies\n" @@ -18088,13 +18723,13 @@ msgstr "" " -T посылать сигнал SIGABRT всем серверным процессам\n" " при отключении одного\n" -#: main/main.c:355 +#: main/main.c:417 #, c-format msgid " -W NUM wait NUM seconds to allow attach from a debugger\n" msgstr "" " -W СЕК ждать заданное число секунд для подключения отладчика\n" -#: main/main.c:357 +#: main/main.c:419 #, c-format msgid "" "\n" @@ -18103,7 +18738,7 @@ msgstr "" "\n" "Параметры для монопольного режима:\n" -#: main/main.c:358 +#: main/main.c:420 #, c-format msgid "" " --single selects single-user mode (must be first argument)\n" @@ -18111,22 +18746,22 @@ msgstr "" " --single включить монопольный режим\n" " (этот аргумент должен быть первым)\n" -#: main/main.c:359 +#: main/main.c:421 #, c-format msgid " DBNAME database name (defaults to user name)\n" msgstr " ИМЯ_БД база данных (по умолчанию - имя пользователя)\n" -#: main/main.c:360 +#: main/main.c:422 #, c-format msgid " -d 0-5 override debugging level\n" msgstr " -d 0-5 переопределить уровень отладочных сообщений\n" -#: main/main.c:361 +#: main/main.c:423 #, c-format msgid " -E echo statement before execution\n" msgstr " -E выводить SQL-операторы перед выполнением\n" -#: main/main.c:362 +#: main/main.c:424 #, c-format msgid "" " -j do not use newline as interactive query delimiter\n" @@ -18134,12 +18769,12 @@ msgstr "" " -j не считать конец строки разделителем интерактивных " "запросов\n" -#: main/main.c:363 main/main.c:369 +#: main/main.c:425 main/main.c:431 #, c-format msgid " -r FILENAME send stdout and stderr to given file\n" msgstr " -r ИМЯ_ФАЙЛА перенаправить STDOUT и STDERR в указанный файл\n" -#: main/main.c:365 +#: main/main.c:427 #, c-format msgid "" "\n" @@ -18148,7 +18783,7 @@ msgstr "" "\n" "Параметры для режима инициализации:\n" -#: main/main.c:366 +#: main/main.c:428 #, c-format msgid "" " --boot selects bootstrapping mode (must be first argument)\n" @@ -18156,14 +18791,14 @@ msgstr "" " --boot включить режим инициализации\n" " (этот аргумент должен быть первым)\n" -#: main/main.c:367 +#: main/main.c:429 #, c-format msgid " --check selects check mode (must be first argument)\n" msgstr "" " --check включить режим проверки (этот аргумент должен быть " "первым)\n" -#: main/main.c:368 +#: main/main.c:430 #, c-format msgid "" " DBNAME database name (mandatory argument in bootstrapping " @@ -18171,7 +18806,7 @@ msgid "" msgstr "" " ИМЯ_БД имя базы данных (необходимо в режиме инициализации)\n" -#: main/main.c:371 +#: main/main.c:433 #, c-format msgid "" "\n" @@ -18188,12 +18823,12 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: main/main.c:375 +#: main/main.c:437 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" -#: main/main.c:386 +#: main/main.c:448 #, c-format msgid "" "\"root\" execution of the PostgreSQL server is not permitted.\n" @@ -18206,12 +18841,12 @@ msgstr "" "должен запускать обычный пользователь. Подробнее о том, как\n" "правильно запускать сервер, вы можете узнать в документации.\n" -#: main/main.c:403 +#: main/main.c:465 #, c-format msgid "%s: real and effective user IDs must match\n" msgstr "%s: фактический и эффективный ID пользователя должны совпадать\n" -#: main/main.c:410 +#: main/main.c:472 #, c-format msgid "" "Execution of PostgreSQL by a user with administrative permissions is not\n" @@ -18236,15 +18871,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:2604 -#: parser/parse_coerce.c:2742 parser/parse_coerce.c:2789 -#: 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:2120 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 не найден" @@ -18259,7 +18894,7 @@ 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 " @@ -18268,32 +18903,32 @@ msgstr "" "FULL JOIN поддерживается только с условиями, допускающими соединение " "слиянием или хеш-соединение" -#: optimizer/plan/createplan.c:7175 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1680 +#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1689 #, 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 не может применяться к NULL-содержащей стороне внешнего соединения" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1380 parser/analyze.c:1771 parser/analyze.c:2029 -#: parser/analyze.c:3247 +#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 +#: parser/analyze.c:3395 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s несовместимо с UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2121 optimizer/plan/planner.c:4108 +#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 #, c-format msgid "could not implement GROUP BY" msgstr "не удалось реализовать GROUP BY" -#: optimizer/plan/planner.c:2122 optimizer/plan/planner.c:4109 -#: optimizer/plan/planner.c:4790 optimizer/prep/prepunion.c:1320 +#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 +#: optimizer/plan/planner.c:4806 optimizer/prep/prepunion.c:1073 #, c-format msgid "" "Some of the datatypes only support hashing, while others only support " @@ -18302,48 +18937,58 @@ msgstr "" "Одни типы данных поддерживают только хеширование, а другие - только " "сортировку." -#: optimizer/plan/planner.c:4789 +#: optimizer/plan/planner.c:4805 #, c-format msgid "could not implement DISTINCT" msgstr "не удалось реализовать DISTINCT" -#: optimizer/plan/planner.c:6134 +#: optimizer/plan/planner.c:6267 #, c-format msgid "could not implement window PARTITION BY" msgstr "не удалось реализовать PARTITION BY для окна" -#: optimizer/plan/planner.c:6135 +#: optimizer/plan/planner.c:6268 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Столбцы, разбивающие окна, должны иметь сортируемые типы данных." -#: optimizer/plan/planner.c:6139 +#: optimizer/plan/planner.c:6272 #, c-format msgid "could not implement window ORDER BY" msgstr "не удалось реализовать ORDER BY для окна" -#: optimizer/plan/planner.c:6140 +#: optimizer/plan/planner.c:6273 #, 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:4963 +#: optimizer/util/appendinfo.c:165 +#, fuzzy, c-format +msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" +msgstr "ограничение \"%s\" в таблице \"%s\" не существует" + +#: optimizer/util/appendinfo.c:170 +#, fuzzy, c-format +msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" +msgstr "ограничение \"%s\" в таблице \"%s\" не существует" + +#: optimizer/util/clauses.c:4966 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "внедрённая в код SQL-функция \"%s\"" @@ -18355,24 +19000,24 @@ msgstr "" "обращаться к временным или нежурналируемым отношениям в процессе " "восстановления нельзя" -#: optimizer/util/plancat.c:768 +#: optimizer/util/plancat.c:770 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "" "указания со ссылкой на всю строку для выбора уникального индекса не " "поддерживаются" -#: optimizer/util/plancat.c:785 +#: optimizer/util/plancat.c:787 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "ограничению в ON CONFLICT не соответствует индекс" -#: optimizer/util/plancat.c:835 +#: optimizer/util/plancat.c:837 #, 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:954 #, c-format msgid "" "there is no unique or exclusion constraint matching the ON CONFLICT " @@ -18381,22 +19026,22 @@ 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 " @@ -18405,29 +19050,29 @@ 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:3627 #, 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 " @@ -18436,12 +19081,12 @@ 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 " @@ -18450,22 +19095,33 @@ 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 +#, fuzzy, c-format +msgid "%s cannot be specified multiple times" +msgstr "NEW TABLE нельзя задать несколько раз" + +#: 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" @@ -18473,356 +19129,356 @@ msgstr[0] "источник присваиваемого значения выд msgstr[1] "источник присваиваемого значения выдал %d столбца" msgstr[2] "источник присваиваемого значения выдал %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:3026 parser/analyze.c:3034 #, c-format msgid "cannot specify both %s and %s" msgstr "указать %s и %s одновременно нельзя" -#: parser/analyze.c:2906 +#: parser/analyze.c:3054 #, 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:3062 #, c-format msgid "DECLARE CURSOR WITH HOLD ... %s is not supported" msgstr "DECLARE CURSOR WITH HOLD ... %s не поддерживается" -#: parser/analyze.c:2917 +#: parser/analyze.c:3065 #, 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:3073 #, 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:3084 #, c-format msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid" msgstr "DECLARE INSENSITIVE CURSOR ... %s не допускается" -#: parser/analyze.c:2939 +#: parser/analyze.c:3087 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "Независимые курсоры должны быть READ ONLY." -#: parser/analyze.c:3033 +#: parser/analyze.c:3181 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "" "в материализованных представлениях не должны использоваться операторы, " "изменяющие данные в WITH" -#: parser/analyze.c:3043 +#: parser/analyze.c:3191 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "" "в материализованных представлениях не должны использоваться временные " "таблицы и представления" -#: parser/analyze.c:3053 +#: parser/analyze.c:3201 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "" "определять материализованные представления со связанными параметрами нельзя" -#: parser/analyze.c:3065 +#: parser/analyze.c:3213 #, 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:3402 #, 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:3409 #, 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:3416 #, 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:3423 #, 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:3430 #, 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:3437 #, 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:3536 #, 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:3600 #, 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:3609 #, 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:3618 #, 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:3636 #, 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:3645 #, 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:3665 #, 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:215 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:217 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "Агрегатным функциям с DISTINCT необходимо сортировать входные данные." -#: parser/parse_agg.c:270 +#: parser/parse_agg.c:275 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "у GROUPING должно быть меньше 32 аргументов" -#: parser/parse_agg.c:373 +#: parser/parse_agg.c:378 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "агрегатные функции нельзя применять в условиях JOIN" -#: parser/parse_agg.c:375 +#: parser/parse_agg.c:380 msgid "grouping operations are not allowed in JOIN conditions" msgstr "операции группировки нельзя применять в условиях JOIN" -#: parser/parse_agg.c:385 +#: parser/parse_agg.c:390 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:392 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:397 msgid "aggregate functions are not allowed in functions in FROM" msgstr "агрегатные функции нельзя применять в функциях во FROM" -#: parser/parse_agg.c:394 +#: parser/parse_agg.c:399 msgid "grouping operations are not allowed in functions in FROM" msgstr "операции группировки нельзя применять в функциях во FROM" -#: parser/parse_agg.c:402 +#: parser/parse_agg.c:407 msgid "aggregate functions are not allowed in policy expressions" msgstr "агрегатные функции нельзя применять в выражениях политик" -#: parser/parse_agg.c:404 +#: parser/parse_agg.c:409 msgid "grouping operations are not allowed in policy expressions" msgstr "операции группировки нельзя применять в выражениях политик" -#: parser/parse_agg.c:421 +#: parser/parse_agg.c:426 msgid "aggregate functions are not allowed in window RANGE" msgstr "агрегатные функции нельзя применять в указании RANGE для окна" -#: parser/parse_agg.c:423 +#: parser/parse_agg.c:428 msgid "grouping operations are not allowed in window RANGE" msgstr "операции группировки нельзя применять в указании RANGE для окна" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:433 msgid "aggregate functions are not allowed in window ROWS" msgstr "агрегатные функции нельзя применять в указании ROWS для окна" -#: parser/parse_agg.c:430 +#: parser/parse_agg.c:435 msgid "grouping operations are not allowed in window ROWS" msgstr "операции группировки нельзя применять в указании ROWS для окна" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:440 msgid "aggregate functions are not allowed in window GROUPS" msgstr "агрегатные функции нельзя применять в указании GROUPS для окна" -#: parser/parse_agg.c:437 +#: parser/parse_agg.c:442 msgid "grouping operations are not allowed in window GROUPS" msgstr "операции группировки нельзя применять в указании GROUPS для окна" -#: parser/parse_agg.c:450 +#: parser/parse_agg.c:455 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "агрегатные функции нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:452 +#: parser/parse_agg.c:457 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "операции группировки нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:479 +#: parser/parse_agg.c:484 msgid "aggregate functions are not allowed in check constraints" msgstr "агрегатные функции нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:481 +#: parser/parse_agg.c:486 msgid "grouping operations are not allowed in check constraints" msgstr "операции группировки нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:488 +#: parser/parse_agg.c:493 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "агрегатные функции нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:490 +#: parser/parse_agg.c:495 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "операции группировки нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:500 msgid "aggregate functions are not allowed in index expressions" msgstr "агрегатные функции нельзя применять в выражениях индексов" -#: parser/parse_agg.c:497 +#: parser/parse_agg.c:502 msgid "grouping operations are not allowed in index expressions" msgstr "операции группировки нельзя применять в выражениях индексов" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:507 msgid "aggregate functions are not allowed in index predicates" msgstr "агрегатные функции нельзя применять в предикатах индексов" -#: parser/parse_agg.c:504 +#: parser/parse_agg.c:509 msgid "grouping operations are not allowed in index predicates" msgstr "операции группировки нельзя применять в предикатах индексов" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:514 msgid "aggregate functions are not allowed in statistics expressions" msgstr "агрегатные функции нельзя применять в выражениях статистики" -#: parser/parse_agg.c:511 +#: parser/parse_agg.c:516 msgid "grouping operations are not allowed in statistics expressions" msgstr "операции группировки нельзя применять в выражениях статистики" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:521 msgid "aggregate functions are not allowed in transform expressions" msgstr "агрегатные функции нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:518 +#: parser/parse_agg.c:523 msgid "grouping operations are not allowed in transform expressions" msgstr "операции группировки нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:528 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "агрегатные функции нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:525 +#: parser/parse_agg.c:530 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "операции группировки нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:535 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "агрегатные функции нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:532 +#: parser/parse_agg.c:537 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "операции группировки нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:542 msgid "aggregate functions are not allowed in partition bound" msgstr "агрегатные функции нельзя применять в выражении границы секции" -#: parser/parse_agg.c:539 +#: parser/parse_agg.c:544 msgid "grouping operations are not allowed in partition bound" msgstr "операции группировки нельзя применять в выражении границы секции" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:549 msgid "aggregate functions are not allowed in partition key expressions" msgstr "агрегатные функции нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:546 +#: parser/parse_agg.c:551 msgid "grouping operations are not allowed in partition key expressions" msgstr "" "операции группировки нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:552 +#: parser/parse_agg.c:557 msgid "aggregate functions are not allowed in column generation expressions" msgstr "агрегатные функции нельзя применять в выражениях генерируемых столбцов" -#: parser/parse_agg.c:554 +#: parser/parse_agg.c:559 msgid "grouping operations are not allowed in column generation expressions" msgstr "" "операции группировки нельзя применять в выражениях генерируемых столбцов" -#: parser/parse_agg.c:560 +#: parser/parse_agg.c:565 msgid "aggregate functions are not allowed in CALL arguments" msgstr "агрегатные функции нельзя применять в аргументах CALL" -#: parser/parse_agg.c:562 +#: parser/parse_agg.c:567 msgid "grouping operations are not allowed in CALL arguments" msgstr "операции группировки нельзя применять в аргументах CALL" -#: parser/parse_agg.c:568 +#: parser/parse_agg.c:573 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "агрегатные функции нельзя применять в условиях COPY FROM WHERE" -#: parser/parse_agg.c:570 +#: parser/parse_agg.c:575 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:602 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:605 #, c-format msgid "grouping operations are not allowed in %s" msgstr "операции группировки нельзя применять в конструкции %s" -#: parser/parse_agg.c:701 +#: parser/parse_agg.c:706 #, c-format msgid "" "outer-level aggregate cannot contain a lower-level variable in its direct " @@ -18831,14 +19487,14 @@ msgstr "" "агрегатная функция внешнего уровня не может содержать в своих аргументах " "переменные нижнего уровня" -#: parser/parse_agg.c:779 +#: parser/parse_agg.c:784 #, 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:785 parser/parse_expr.c:1762 parser/parse_expr.c:2255 #: parser/parse_func.c:885 #, c-format msgid "" @@ -18848,107 +19504,107 @@ msgstr "" "Исправить ситуацию можно, переместив функцию, возвращающую множество, в " "элемент LATERAL FROM." -#: parser/parse_agg.c:785 +#: parser/parse_agg.c:790 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "вызовы агрегатных функций не могут включать вызовы оконных функции" -#: parser/parse_agg.c:864 +#: parser/parse_agg.c:869 msgid "window functions are not allowed in JOIN conditions" msgstr "оконные функции нельзя применять в условиях JOIN" -#: parser/parse_agg.c:871 +#: parser/parse_agg.c:876 msgid "window functions are not allowed in functions in FROM" msgstr "оконные функции нельзя применять в функциях во FROM" -#: parser/parse_agg.c:877 +#: parser/parse_agg.c:882 msgid "window functions are not allowed in policy expressions" msgstr "оконные функции нельзя применять в выражениях политик" -#: parser/parse_agg.c:890 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in window definitions" msgstr "оконные функции нельзя применять в определении окна" -#: parser/parse_agg.c:901 +#: parser/parse_agg.c:906 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "оконные функции нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:926 +#: parser/parse_agg.c:931 msgid "window functions are not allowed in check constraints" msgstr "оконные функции нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:930 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in DEFAULT expressions" msgstr "оконные функции нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:933 +#: parser/parse_agg.c:938 msgid "window functions are not allowed in index expressions" msgstr "оконные функции нельзя применять в выражениях индексов" -#: parser/parse_agg.c:936 +#: parser/parse_agg.c:941 msgid "window functions are not allowed in statistics expressions" msgstr "оконные функции нельзя применять в выражениях статистики" -#: parser/parse_agg.c:939 +#: parser/parse_agg.c:944 msgid "window functions are not allowed in index predicates" msgstr "оконные функции нельзя применять в предикатах индексов" -#: parser/parse_agg.c:942 +#: parser/parse_agg.c:947 msgid "window functions are not allowed in transform expressions" msgstr "оконные функции нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:945 +#: parser/parse_agg.c:950 msgid "window functions are not allowed in EXECUTE parameters" msgstr "оконные функции нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:948 +#: parser/parse_agg.c:953 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "оконные функции нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:951 +#: parser/parse_agg.c:956 msgid "window functions are not allowed in partition bound" msgstr "оконные функции нельзя применять в выражении границы секции" -#: parser/parse_agg.c:954 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in partition key expressions" msgstr "оконные функции нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:962 msgid "window functions are not allowed in CALL arguments" msgstr "оконные функции нельзя применять в аргументах CALL" -#: parser/parse_agg.c:960 +#: parser/parse_agg.c:965 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "оконные функции нельзя применять в условиях COPY FROM WHERE" -#: parser/parse_agg.c:963 +#: parser/parse_agg.c:968 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:991 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:1025 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "окно \"%s\" не существует" -#: parser/parse_agg.c:1108 +#: parser/parse_agg.c:1115 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "слишком много наборов группирования (при максимуме 4096)" -#: parser/parse_agg.c:1248 +#: parser/parse_agg.c:1276 #, 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:1499 #, c-format msgid "" "column \"%s.%s\" must appear in the GROUP BY clause or be used in an " @@ -18957,7 +19613,7 @@ msgstr "" "столбец \"%s.%s\" должен фигурировать в предложении GROUP BY или " "использоваться в агрегатной функции" -#: parser/parse_agg.c:1444 +#: parser/parse_agg.c:1502 #, c-format msgid "" "Direct arguments of an ordered-set aggregate must use only grouped columns." @@ -18965,13 +19621,13 @@ msgstr "" "Прямые аргументы сортирующей агрегатной функции могут включать только " "группируемые столбцы." -#: parser/parse_agg.c:1449 +#: parser/parse_agg.c:1507 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "" "подзапрос использует негруппированный столбец \"%s.%s\" из внешнего запроса" -#: parser/parse_agg.c:1613 +#: parser/parse_agg.c:1672 #, c-format msgid "" "arguments to GROUPING must be grouping expressions of the associated query " @@ -18980,25 +19636,25 @@ msgstr "" "аргументами GROUPING должны быть выражения группирования для " "соответствующего уровня запроса" -#: 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" @@ -19006,7 +19662,7 @@ 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()." @@ -19014,14 +19670,14 @@ 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 " @@ -19030,43 +19686,43 @@ 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" @@ -19074,39 +19730,39 @@ msgstr[0] "метод %s для получения выборки требует msgstr[1] "метод %s для получения выборки требует аргументов: %d, получено: %d" msgstr[2] "метод %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" @@ -19262,14 +19918,14 @@ 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 " @@ -19278,12 +19934,12 @@ 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 " @@ -19292,155 +19948,155 @@ 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:2154 parser/parse_expr.c:2774 parser/parse_expr.c:3425 +#: parser/parse_expr.c:3654 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:1420 +#: parser/parse_coerce.c:1418 #, c-format msgid "%s types %s and %s cannot be matched" msgstr "в конструкции %s типы %s и %s не имеют общего" -#: parser/parse_coerce.c:1536 +#: 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:1588 +#: parser/parse_coerce.c:1586 #, c-format msgid "%s could not convert type %s to %s" msgstr "в конструкции %s нельзя преобразовать тип %s в %s" -#: parser/parse_coerce.c:2191 parser/parse_coerce.c:2211 -#: parser/parse_coerce.c:2231 parser/parse_coerce.c:2252 -#: parser/parse_coerce.c:2307 parser/parse_coerce.c:2341 +#: 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:2286 parser/parse_coerce.c:2399 +#: 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:2319 parser/parse_coerce.c:2469 +#: 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:2353 parser/parse_coerce.c:2433 -#: parser/parse_coerce.c:2566 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:2390 +#: parser/parse_coerce.c:2388 #, c-format msgid "cannot determine element type of \"anyarray\" argument" msgstr "тип элемента аргумента \"anyarray\" определить нельзя" -#: parser/parse_coerce.c:2416 parser/parse_coerce.c:2447 -#: parser/parse_coerce.c:2486 parser/parse_coerce.c:2552 +#: 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:2511 +#: parser/parse_coerce.c:2509 #, c-format msgid "could not determine polymorphic type because input has type %s" msgstr "" "не удалось определить полиморфный тип, так как входные аргументы имеют тип %s" -#: parser/parse_coerce.c:2525 +#: parser/parse_coerce.c:2523 #, c-format msgid "type matched to anynonarray is an array type: %s" msgstr "" "в нарушение объявления \"anynonarray\" соответствующий аргумент оказался " "массивом: %s" -#: parser/parse_coerce.c:2535 +#: 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:2596 +#: 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:2614 parser/parse_coerce.c:2635 -#: parser/parse_coerce.c:2685 parser/parse_coerce.c:2690 -#: parser/parse_coerce.c:2754 parser/parse_coerce.c:2766 +#: 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:2624 +#: parser/parse_coerce.c:2622 #, c-format msgid "anycompatiblerange type %s does not match anycompatible type %s" msgstr "тип %s (anycompatiblerange) не соответствует типу %s (anycompatible)" -#: parser/parse_coerce.c:2645 +#: parser/parse_coerce.c:2643 #, c-format msgid "anycompatiblemultirange type %s does not match anycompatible type %s" msgstr "" "тип %s (anycompatiblemultirange) не соответствует типу %s (anycompatible)" -#: parser/parse_coerce.c:2659 +#: parser/parse_coerce.c:2657 #, c-format msgid "type matched to anycompatiblenonarray is an array type: %s" msgstr "" "в нарушение объявления \"anycompatiblenonarray\" соответствующий аргумент " "оказался массивом: %s" -#: parser/parse_coerce.c:2894 +#: parser/parse_coerce.c:2892 #, c-format msgid "" "A result of type %s requires at least one input of type anyrange or " @@ -19449,7 +20105,7 @@ msgstr "" "Для результата типа %s требуется минимум один аргумент типа anyrange или " "anymultirange." -#: parser/parse_coerce.c:2911 +#: parser/parse_coerce.c:2909 #, c-format msgid "" "A result of type %s requires at least one input of type anycompatiblerange " @@ -19458,7 +20114,7 @@ msgstr "" "Для результата типа %s требуется минимум один аргумент типа " "anycompatiblerange или anycompatiblemultirange." -#: parser/parse_coerce.c:2923 +#: parser/parse_coerce.c:2921 #, c-format msgid "" "A result of type %s requires at least one input of type anyelement, " @@ -19467,7 +20123,7 @@ msgstr "" "Для результата типа %s требуется минимум один аргумент типа anyelement, " "anyarray, anynonarray, anyenum, anyrange или anymultirange." -#: parser/parse_coerce.c:2935 +#: parser/parse_coerce.c:2933 #, c-format msgid "" "A result of type %s requires at least one input of type anycompatible, " @@ -19478,7 +20134,7 @@ msgstr "" "anycompatiblearray, anycompatiblenonarray, anycompatiblerange или " "anycompatiblemultirange." -#: parser/parse_coerce.c:2965 +#: parser/parse_coerce.c:2963 msgid "A result of type internal requires at least one input of type internal." msgstr "" "Для результата типа internal требуется минимум один аргумент типа internal." @@ -19537,17 +20193,17 @@ 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" @@ -19555,7 +20211,7 @@ 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 " @@ -19564,12 +20220,12 @@ 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 " @@ -19578,43 +20234,43 @@ 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" @@ -19622,64 +20278,64 @@ 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] " @@ -19688,93 +20344,93 @@ 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:311 #, 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: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 #, c-format msgid "column %s.%s does not exist" msgstr "столбец %s.%s не существует" -#: parser/parse_expr.c:418 +#: parser/parse_expr.c:416 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "столбец \"%s\" не найден в типе данных %s" -#: parser/parse_expr.c:424 +#: parser/parse_expr.c:422 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "не удалось идентифицировать столбец \"%s\" в типе записи" # skip-rule: space-before-period -#: parser/parse_expr.c:430 +#: parser/parse_expr.c:428 #, 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:459 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:582 msgid "cannot use column reference in DEFAULT expression" msgstr "в выражении DEFAULT (по умолчанию) нельзя ссылаться на столбцы" -#: parser/parse_expr.c:587 +#: parser/parse_expr.c:585 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:844 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:900 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:1101 parser/parse_expr.c:3085 #, 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:1109 parser/parse_expr.c:3072 +#: parser/parse_expr.c:1107 parser/parse_expr.c:3092 #, c-format msgid "%s must not return a set" msgstr "%s не должна возвращать множество" @@ -19801,7 +20457,7 @@ msgstr "" "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:1760 parser/parse_expr.c:2253 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "функции, возвращающие множества, нельзя применять в конструкции %s" @@ -19858,7 +20514,7 @@ msgstr "в условии COPY FROM WHERE нельзя использовать msgid "cannot use subquery in column generation expression" msgstr "в выражении генерируемого столбца нельзя использовать подзапросы" -#: parser/parse_expr.c:1914 parser/parse_expr.c:3764 +#: parser/parse_expr.c:1914 parser/parse_expr.c:3784 #, c-format msgid "subquery must return only one column" msgstr "подзапрос должен вернуть только один столбец" @@ -19873,178 +20529,178 @@ msgstr "в подзапросе слишком много столбцов" msgid "subquery has too few columns" msgstr "в подзапросе недостаточно столбцов" -#: parser/parse_expr.c:2086 +#: parser/parse_expr.c:2094 #, c-format msgid "cannot determine type of empty array" msgstr "тип пустого массива определить нельзя" -#: parser/parse_expr.c:2087 +#: parser/parse_expr.c:2095 #, 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:2109 #, c-format msgid "could not find element type for data type %s" msgstr "не удалось определить тип элемента для типа данных %s" -#: parser/parse_expr.c:2184 +#: parser/parse_expr.c:2194 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "число элементов в выражениях ROW ограничено %d" -#: parser/parse_expr.c:2389 +#: parser/parse_expr.c:2399 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "вместо значения XML-атрибута без имени должен указываться столбец" -#: parser/parse_expr.c:2390 +#: parser/parse_expr.c:2400 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "вместо значения XML-элемента без имени должен указываться столбец" -#: parser/parse_expr.c:2405 +#: parser/parse_expr.c:2415 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "имя XML-атрибута \"%s\" указано неоднократно" -#: parser/parse_expr.c:2513 +#: parser/parse_expr.c:2523 #, 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:2847 parser/parse_expr.c:3043 #, c-format msgid "unequal number of entries in row expressions" msgstr "разное число элементов в строках" -#: parser/parse_expr.c:2837 +#: parser/parse_expr.c:2857 #, c-format msgid "cannot compare rows of zero length" msgstr "строки нулевой длины сравнивать нельзя" -#: parser/parse_expr.c:2862 +#: parser/parse_expr.c:2882 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "" "оператор сравнения строк должен выдавать результат логического типа, а не %s" -#: parser/parse_expr.c:2869 +#: parser/parse_expr.c:2889 #, 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:2948 parser/parse_expr.c:2989 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "не удалось выбрать интерпретацию оператора сравнения строк %s" -#: parser/parse_expr.c:2930 +#: parser/parse_expr.c:2950 #, c-format msgid "" "Row comparison operators must be associated with btree operator families." msgstr "" "Операторы сравнения строк должны быть связаны с семейством операторов btree." -#: parser/parse_expr.c:2971 +#: parser/parse_expr.c:2991 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Оказалось несколько равноценных кандидатур." -#: parser/parse_expr.c:3306 +#: parser/parse_expr.c:3326 #, 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:3390 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "" "с неявным предложением FORMAT JSON можно использовать только строковые типы" -#: parser/parse_expr.c:3371 +#: parser/parse_expr.c:3391 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "" "с явным предложением FORMAT JSON можно использовать только строковые типы" -#: parser/parse_expr.c:3460 +#: parser/parse_expr.c:3480 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "формат JSON можно использовать, только если возвращаемый тип строковый" -#: parser/parse_expr.c:3473 +#: parser/parse_expr.c:3493 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "" "кодировку JSON можно использовать, только если возвращаемый тип — bytea" -#: parser/parse_expr.c:3478 +#: parser/parse_expr.c:3498 #, c-format msgid "unsupported JSON encoding" msgstr "неподдерживаемая кодировка JSON" -#: parser/parse_expr.c:3479 +#: parser/parse_expr.c:3499 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Для JSON поддерживается только кодировка UTF-8." -#: parser/parse_expr.c:3516 +#: parser/parse_expr.c:3536 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "функции SQL/JSON не могут возвращать типы SETOF" -#: parser/parse_expr.c:3521 +#: parser/parse_expr.c:3541 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "функции SQL/JSON не могут возвращать псевдотипы" -#: parser/parse_expr.c:3849 parser/parse_func.c:866 +#: parser/parse_expr.c:3869 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:4092 #, 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:4112 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "в предикате IS JSON нельзя использовать тип %s" -#: parser/parse_expr.c:4118 parser/parse_expr.c:4239 +#: parser/parse_expr.c:4138 parser/parse_expr.c:4259 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "тип %s нельзя использовать в предложении RETURNING функции %s" -#: parser/parse_expr.c:4120 +#: parser/parse_expr.c:4140 #, c-format msgid "Try returning json or jsonb." msgstr "Попробуйте возвратить тип json или jsonb." -#: parser/parse_expr.c:4168 +#: parser/parse_expr.c:4188 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "" "с предложением WITH UNIQUE KEYS можно использовать только строковые типы " "данных" -#: parser/parse_expr.c:4242 +#: parser/parse_expr.c:4262 #, c-format msgid "Try returning a string type or bytea." msgstr "Попробуйте возвратить строковый тип или bytea." -#: parser/parse_expr.c:4307 +#: parser/parse_expr.c:4327 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "FORMAT JSON не может указываться в предложении RETURNING %s()" -#: parser/parse_expr.c:4320 +#: parser/parse_expr.c:4340 #, c-format msgid "" "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" @@ -20052,16 +20708,16 @@ msgstr "" "когда используется WITH WRAPPER, поведение QUOTES в SQL/JSON задать нельзя" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4334 parser/parse_expr.c:4363 parser/parse_expr.c:4394 -#: parser/parse_expr.c:4420 parser/parse_expr.c:4446 -#: parser/parse_jsontable.c:94 +#: 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 #, 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:4337 parser/parse_expr.c:4366 +#: parser/parse_expr.c:4357 parser/parse_expr.c:4386 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -20073,14 +20729,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:4344 parser/parse_expr.c:4373 parser/parse_expr.c:4402 -#: parser/parse_expr.c:4430 parser/parse_expr.c:4456 +#: 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 #, 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:4347 parser/parse_expr.c:4376 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -20089,13 +20745,13 @@ msgstr "" "В %s для форматируемых столбцов допускается только ERROR, NULL, EMPTY ARRAY, " "EMPTY OBJECT или выражение DEFAULT." -#: parser/parse_expr.c:4395 +#: parser/parse_expr.c:4415 #, 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:4405 +#: parser/parse_expr.c:4425 #, c-format msgid "" "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." @@ -20104,13 +20760,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:4423 parser/parse_expr.c:4449 +#: parser/parse_expr.c:4443 parser/parse_expr.c:4469 #, 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:4433 parser/parse_expr.c:4459 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #, c-format msgid "" "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." @@ -20118,12 +20774,12 @@ msgstr "" "В %s для скалярных столбцов допускается только ERROR, NULL или выражение " "DEFAULT." -#: parser/parse_expr.c:4489 +#: parser/parse_expr.c:4509 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "выражение пути JSON должно быть типа %s, а не типа %s" -#: parser/parse_expr.c:4707 +#: parser/parse_expr.c:4727 #, c-format msgid "" "can only specify a constant, non-aggregate function, or operator expression " @@ -20132,22 +20788,22 @@ msgstr "" "в DEFAULT может задаваться только константа, вызов не агрегатной функции или " "выражение с оператором" -#: parser/parse_expr.c:4712 +#: parser/parse_expr.c:4732 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "выражения в DEFAULT не могут содержать ссылки на столбцы" -#: parser/parse_expr.c:4717 +#: parser/parse_expr.c:4737 #, c-format msgid "DEFAULT expression must not return a set" msgstr "выражение в DEFAULT не может возвращать множество" -#: parser/parse_expr.c:4793 parser/parse_expr.c:4802 +#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "привести выражение поведения, имеющее тип %s, к типу %s нельзя" -#: parser/parse_expr.c:4796 +#: parser/parse_expr.c:4816 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "Приведите выражение к типу %s явно." @@ -20555,7 +21211,7 @@ 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." @@ -20563,7 +21219,7 @@ msgstr "" "На верхнем уровне предложения ON ERROR допускается только EMPTY [ ARRAY ] " "или 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 "повторяющийся столбец или имя пути в JSON_TABLE: %s" @@ -20660,38 +21316,33 @@ msgstr "" "для операторов 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 " @@ -20700,35 +21351,35 @@ 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\"" -#: 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 " @@ -20737,7 +21388,7 @@ 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." @@ -20745,13 +21396,13 @@ 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 " @@ -20760,79 +21411,79 @@ 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 "в запросе \"%s\" в WITH нет предложения 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 " @@ -20841,12 +21492,12 @@ 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 " @@ -20855,52 +21506,52 @@ 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 "элементу массива нельзя присвоить значение по умолчанию" -#: parser/parse_target.c:513 +#: parser/parse_target.c:516 #, c-format msgid "cannot set a subfield to DEFAULT" msgstr "вложенному полю нельзя присвоить значение по умолчанию" -#: 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 " @@ -20909,7 +21560,7 @@ 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 " @@ -20918,7 +21569,7 @@ 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 " @@ -20927,12 +21578,12 @@ 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 * должен ссылаться на таблицы" @@ -20952,8 +21603,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\" является пустышкой" @@ -20973,79 +21624,91 @@ 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 "изменить состояние журналирования временной последовательности нельзя" -#: parser/parse_utilcmd.c:611 +#: parser/parse_utilcmd.c:642 #, c-format msgid "array of serial is not implemented" msgstr "массивы с типом serial не реализованы" -#: 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 +#, fuzzy, c-format +msgid "not-null constraints on partitioned tables cannot be NO INHERIT" +msgstr "" +"ограничения-проверки для доменов не могут иметь характеристики NO INHERIT" + +#: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 +#, fuzzy, c-format +msgid "" +"conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" +msgstr "конфликт NULL/NOT NULL в объявлении столбца \"%s\" таблицы \"%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 " @@ -21054,7 +21717,7 @@ 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 " @@ -21063,88 +21726,93 @@ msgstr "" "для столбца \"%s\" таблицы \"%s\" задано и генерирующее выражение, и " "свойство identity" -#: 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:1918 parser/parse_utilcmd.c:2026 #, c-format msgid "Index \"%s\" contains a whole-row table reference." msgstr "Индекс \"%s\" ссылается на тип всей строки таблицы." -#: parser/parse_utilcmd.c:2242 +#: parser/parse_utilcmd.c:2420 #, c-format msgid "cannot use an existing index in CREATE TABLE" msgstr "в CREATE TABLE нельзя использовать существующий индекс" -#: parser/parse_utilcmd.c:2262 +#: parser/parse_utilcmd.c:2440 #, c-format msgid "index \"%s\" is already associated with a constraint" msgstr "индекс \"%s\" уже связан с ограничением" -#: parser/parse_utilcmd.c:2283 +#: parser/parse_utilcmd.c:2466 #, 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:2467 parser/parse_utilcmd.c:2474 +#: parser/parse_utilcmd.c:2481 parser/parse_utilcmd.c:2557 #, 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:2473 #, c-format msgid "index \"%s\" contains expressions" msgstr "индекс \"%s\" содержит выражения" -#: parser/parse_utilcmd.c:2297 +#: parser/parse_utilcmd.c:2480 #, c-format msgid "\"%s\" is a partial index" msgstr "\"%s\" - частичный индекс" -#: parser/parse_utilcmd.c:2309 +#: parser/parse_utilcmd.c:2492 #, c-format msgid "\"%s\" is a deferrable index" msgstr "\"%s\" - откладываемый индекс" -#: parser/parse_utilcmd.c:2310 +#: parser/parse_utilcmd.c:2493 #, c-format msgid "Cannot create a non-deferrable constraint using a deferrable index." msgstr "" "Создать не откладываемое ограничение на базе откладываемого индекса нельзя." -#: parser/parse_utilcmd.c:2374 +#: parser/parse_utilcmd.c:2556 #, 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:2748 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "столбец \"%s\" фигурирует в первичном ключе дважды" -#: parser/parse_utilcmd.c:2537 +#: parser/parse_utilcmd.c:2754 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "столбец \"%s\" фигурирует в ограничении уникальности дважды" -#: parser/parse_utilcmd.c:2871 +#: parser/parse_utilcmd.c:2799 +#, c-format +msgid "column \"%s\" in WITHOUT OVERLAPS is not a range or multirange type" +msgstr "" + +#: parser/parse_utilcmd.c:2827 +#, c-format +msgid "constraint using WITHOUT OVERLAPS needs at least two columns" +msgstr "" + +#: parser/parse_utilcmd.c:3124 #, c-format msgid "" "index expressions and predicates can refer only to the table being indexed" @@ -21152,22 +21820,22 @@ msgstr "" "индексные выражения и предикаты могут ссылаться только на индексируемую " "таблицу" -#: parser/parse_utilcmd.c:2943 +#: parser/parse_utilcmd.c:3196 #, c-format msgid "statistics expressions can refer only to the table being referenced" msgstr "выражения статистики могут ссылаться только на целевую таблицу" -#: parser/parse_utilcmd.c:2986 +#: parser/parse_utilcmd.c:3239 #, c-format msgid "rules on materialized views are not supported" msgstr "правила для материализованных представлений не поддерживаются" -#: parser/parse_utilcmd.c:3046 +#: parser/parse_utilcmd.c:3299 #, c-format msgid "rule WHERE condition cannot contain references to other relations" msgstr "в условиях WHERE для правил нельзя ссылаться на другие отношения" -#: parser/parse_utilcmd.c:3118 +#: parser/parse_utilcmd.c:3371 #, c-format msgid "" "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELETE " @@ -21176,158 +21844,173 @@ msgstr "" "правила с условиями WHERE могут содержать только действия SELECT, INSERT, " "UPDATE или DELETE" -#: parser/parse_utilcmd.c:3136 parser/parse_utilcmd.c:3237 -#: rewrite/rewriteHandler.c:544 rewrite/rewriteManip.c:1096 +#: parser/parse_utilcmd.c:3389 parser/parse_utilcmd.c:3490 +#: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "условные операторы UNION/INTERSECT/EXCEPT не реализованы" -#: parser/parse_utilcmd.c:3154 +#: parser/parse_utilcmd.c:3407 #, c-format msgid "ON SELECT rule cannot use OLD" msgstr "в правиле ON SELECT нельзя использовать OLD" -#: parser/parse_utilcmd.c:3158 +#: parser/parse_utilcmd.c:3411 #, c-format msgid "ON SELECT rule cannot use NEW" msgstr "в правиле ON SELECT нельзя использовать NEW" -#: parser/parse_utilcmd.c:3167 +#: parser/parse_utilcmd.c:3420 #, c-format msgid "ON INSERT rule cannot use OLD" msgstr "в правиле ON INSERT нельзя использовать OLD" -#: parser/parse_utilcmd.c:3173 +#: parser/parse_utilcmd.c:3426 #, c-format msgid "ON DELETE rule cannot use NEW" msgstr "в правиле ON DELETE нельзя использовать NEW" -#: parser/parse_utilcmd.c:3201 +#: parser/parse_utilcmd.c:3454 #, c-format msgid "cannot refer to OLD within WITH query" msgstr "в запросе WITH нельзя ссылаться на OLD" -#: parser/parse_utilcmd.c:3208 +#: parser/parse_utilcmd.c:3461 #, c-format msgid "cannot refer to NEW within WITH query" msgstr "в запросе WITH нельзя ссылаться на NEW" -#: parser/parse_utilcmd.c:3664 +#: parser/parse_utilcmd.c:3919 #, c-format msgid "misplaced DEFERRABLE clause" msgstr "предложение DEFERRABLE расположено неправильно" -#: parser/parse_utilcmd.c:3669 parser/parse_utilcmd.c:3684 +#: parser/parse_utilcmd.c:3924 parser/parse_utilcmd.c:3939 #, c-format msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" msgstr "DEFERRABLE/NOT DEFERRABLE можно указать только один раз" -#: parser/parse_utilcmd.c:3679 +#: parser/parse_utilcmd.c:3934 #, 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:3947 parser/parse_utilcmd.c:3973 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:3955 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "предложение INITIALLY DEFERRED расположено неправильно" -#: parser/parse_utilcmd.c:3705 parser/parse_utilcmd.c:3731 +#: parser/parse_utilcmd.c:3960 parser/parse_utilcmd.c:3986 #, c-format msgid "multiple INITIALLY IMMEDIATE/DEFERRED clauses not allowed" msgstr "INITIALLY IMMEDIATE/DEFERRED можно указать только один раз" -#: parser/parse_utilcmd.c:3726 +#: parser/parse_utilcmd.c:3981 #, c-format msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "предложение INITIALLY IMMEDIATE расположено неправильно" -#: parser/parse_utilcmd.c:3919 +#: parser/parse_utilcmd.c:3998 +#, fuzzy, c-format +msgid "misplaced ENFORCED clause" +msgstr "предложение DEFERRABLE расположено неправильно" + +#: parser/parse_utilcmd.c:4003 parser/parse_utilcmd.c:4020 +#, fuzzy, c-format +msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" +msgstr "DEFERRABLE/NOT DEFERRABLE можно указать только один раз" + +#: parser/parse_utilcmd.c:4015 +#, fuzzy, c-format +msgid "misplaced NOT ENFORCED clause" +msgstr "предложение NOT DEFERRABLE расположено неправильно" + +#: parser/parse_utilcmd.c:4213 #, 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:4248 #, c-format msgid "\"%s\" is not a partitioned table" msgstr "\"%s\" — не секционированная таблица" -#: parser/parse_utilcmd.c:3961 +#: parser/parse_utilcmd.c:4255 #, c-format msgid "table \"%s\" is not partitioned" msgstr "таблица \"%s\" не является секционированной" -#: parser/parse_utilcmd.c:3968 +#: parser/parse_utilcmd.c:4262 #, c-format msgid "index \"%s\" is not partitioned" msgstr "индекс \"%s\" не секционирован" -#: parser/parse_utilcmd.c:4008 +#: parser/parse_utilcmd.c:4302 #, c-format msgid "a hash-partitioned table may not have a default partition" msgstr "у секционированной по хешу таблицы не может быть секции по умолчанию" -#: parser/parse_utilcmd.c:4025 +#: parser/parse_utilcmd.c:4319 #, c-format msgid "invalid bound specification for a hash partition" msgstr "неправильное указание ограничения для хеш-секции" -#: parser/parse_utilcmd.c:4031 partitioning/partbounds.c:4802 +#: parser/parse_utilcmd.c:4325 partitioning/partbounds.c:4802 #, c-format msgid "modulus for hash partition must be an integer value greater than zero" msgstr "модуль для хеш-секции должен быть положительным целым" -#: parser/parse_utilcmd.c:4038 partitioning/partbounds.c:4810 +#: parser/parse_utilcmd.c:4332 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:4345 #, c-format msgid "invalid bound specification for a list partition" msgstr "неправильное указание ограничения для секции по списку" -#: parser/parse_utilcmd.c:4104 +#: parser/parse_utilcmd.c:4398 #, c-format msgid "invalid bound specification for a range partition" msgstr "неправильное указание ограничения для секции по диапазону" -#: parser/parse_utilcmd.c:4110 +#: parser/parse_utilcmd.c:4404 #, c-format msgid "FROM must specify exactly one value per partitioning column" msgstr "" "во FROM должно указываться ровно одно значение для секционирующего столбца" -#: parser/parse_utilcmd.c:4114 +#: parser/parse_utilcmd.c:4408 #, c-format msgid "TO must specify exactly one value per partitioning column" msgstr "" "в TO должно указываться ровно одно значение для секционирующего столбца" -#: parser/parse_utilcmd.c:4228 +#: parser/parse_utilcmd.c:4522 #, c-format msgid "cannot specify NULL in range bound" msgstr "указать NULL в диапазонном ограничении нельзя" -#: parser/parse_utilcmd.c:4277 +#: parser/parse_utilcmd.c:4571 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "за границей MAXVALUE могут следовать только границы MAXVALUE" -#: parser/parse_utilcmd.c:4284 +#: parser/parse_utilcmd.c:4578 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "за границей MINVALUE могут следовать только границы MINVALUE" -#: parser/parse_utilcmd.c:4327 +#: parser/parse_utilcmd.c:4621 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "указанное значение нельзя привести к типу %s столбца \"%s\"" @@ -21340,12 +22023,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:6842 scan.l:702 #, c-format msgid "invalid Unicode escape" msgstr "неверный спецкод Unicode" @@ -21355,8 +22038,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:6867 scan.l:663 scan.l:679 +#: scan.l:695 #, c-format msgid "invalid Unicode surrogate pair" msgstr "неверная суррогатная пара Unicode" @@ -21457,7 +22140,7 @@ msgstr "" "значение типа \"%s\"" #: port/pg_sema.c:209 port/pg_shmem.c:717 port/posix_sema.c:209 -#: port/sysv_sema.c:329 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" @@ -21555,14 +22238,14 @@ msgstr "" "огромные страницы не поддерживаются с текущим значением " "\"shared_memory_type\"" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1401 +#: 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, ID %lu) по-прежнему " "используется" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1403 +#: 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\"." @@ -21570,17 +22253,17 @@ msgstr "" "Завершите все старые серверные процессы, работающие с каталогом данных " "\"%s\"." -#: port/sysv_sema.c:126 +#: port/sysv_sema.c:135 #, c-format msgid "could not create semaphores: %m" msgstr "не удалось создать семафоры: %m" -#: port/sysv_sema.c:127 +#: 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:131 +#: port/sysv_sema.c:140 #, c-format msgid "" "This error does *not* mean that you have run out of disk space. It occurs " @@ -21600,7 +22283,7 @@ msgstr "" "Подробная информация о настройке разделяемой памяти содержится в " "документации PostgreSQL." -#: port/sysv_sema.c:161 +#: port/sysv_sema.c:170 #, c-format msgid "" "You possibly need to raise your kernel's SEMVMX value to be at least %d. " @@ -21742,52 +22425,66 @@ 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 "процесс автоочистки запускался слишком долго; его запуск отменён" # skip-rule: capital-letter-first -#: postmaster/autovacuum.c:2203 +#: postmaster/autovacuum.c:2232 #, c-format msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\"" msgstr "автоочистка: удаление устаревшей врем. таблицы \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2439 +#: postmaster/autovacuum.c:2475 #, c-format msgid "automatic vacuum of table \"%s.%s.%s\"" msgstr "автоматическая очистка таблицы \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2442 +#: postmaster/autovacuum.c:2478 #, c-format msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "автоматический анализ таблицы \"%s.%s.%s\"" -#: postmaster/autovacuum.c:2636 +#: postmaster/autovacuum.c:2674 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "обработка рабочей записи для отношения \"%s.%s.%s\"" -#: postmaster/autovacuum.c:3254 +#: postmaster/autovacuum.c:3345 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "автоочистка не запущена из-за неправильной конфигурации" -#: postmaster/autovacuum.c:3255 +#: postmaster/autovacuum.c:3346 #, c-format msgid "Enable the \"track_counts\" option." msgstr "Включите параметр \"track_counts\"." -#: postmaster/bgworker.c:260 +#: postmaster/autovacuum.c:3468 #, c-format msgid "" -"inconsistent background worker state (max_worker_processes=%d, " -"total_slots=%d)" +"\"autovacuum_max_workers\" (%d) should be less than or equal to " +"\"autovacuum_worker_slots\" (%d)" +msgstr "" + +#: postmaster/autovacuum.c:3470 +#, c-format +msgid "" +"The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum " +"workers at a given time." +msgstr "" + +#: postmaster/bgworker.c:260 +#, fuzzy, c-format +msgid "" +"inconsistent background worker state (\"max_worker_processes\"=%d, total " +"slots=%d)" msgstr "" "несогласованное состояние фонового рабочего процесса " "(max_worker_processes=%d, total_slots=%d)" -#: postmaster/bgworker.c:651 +#: postmaster/bgworker.c:646 #, c-format msgid "" "background worker \"%s\": background workers without shared memory access " @@ -21796,7 +22493,7 @@ msgstr "" "фоновый процесс \"%s\": фоновые процессы, не обращающиеся к общей памяти, не " "поддерживаются" -#: postmaster/bgworker.c:662 +#: postmaster/bgworker.c:657 #, c-format msgid "" "background worker \"%s\": cannot request database access if starting at " @@ -21805,12 +22502,12 @@ 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" @@ -21818,12 +22515,24 @@ 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\"" @@ -21831,7 +22540,7 @@ 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 " @@ -21840,12 +22549,12 @@ 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 "" @@ -21857,12 +22566,12 @@ msgstr[1] "" msgstr[2] "" "Максимально возможное число фоновых процессов при текущих параметрах: %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 "Возможно, стоит увеличить параметр \"%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)" @@ -21870,128 +22579,128 @@ msgstr[0] "контрольные точки происходят слишком msgstr[1] "контрольные точки происходят слишком часто (через %d сек.)" msgstr[2] "контрольные точки происходят слишком часто (через %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 "открыть файл серверных переменных \"%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 "прочитать файл серверных переменных \"%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 "" "прочитать стартовые данные из файла серверных переменных \"%s\" не удалось: " "%m\n" -#: postmaster/launch_backend.c:924 +#: postmaster/launch_backend.c:944 #, c-format msgid "could not remove file \"%s\": %m\n" 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 "параметр \"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 " @@ -22000,7 +22709,7 @@ 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 " @@ -22009,19 +22718,19 @@ 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 "\"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 "" "Только один из параметров \"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" @@ -22029,32 +22738,32 @@ 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 " @@ -22063,12 +22772,12 @@ 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 "архивацию 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 " @@ -22077,103 +22786,103 @@ 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-сокет в каталоге \"%s\"" -#: postmaster/postmaster.c:1240 +#: postmaster/postmaster.c:1262 #, c-format msgid "could not create any Unix-domain sockets" msgstr "ни один Unix-сокет создать не удалось" -#: 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:1342 +#: postmaster/postmaster.c:1364 #, c-format msgid "postmaster became multithreaded during startup" msgstr "процесс postmaster стал многопоточным при запуске" -#: postmaster/postmaster.c:1343 postmaster/postmaster.c:3684 +#: 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:1442 +#: postmaster/postmaster.c:1468 #, c-format msgid "%s: could not locate my own executable path" msgstr "%s: не удалось найти путь к собственному исполняемому файлу" -#: postmaster/postmaster.c:1449 +#: postmaster/postmaster.c:1475 #, c-format msgid "%s: could not locate matching postgres executable" msgstr "%s: подходящий исполняемый файл postgres не найден" -#: postmaster/postmaster.c:1472 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 " @@ -22182,7 +22891,7 @@ msgstr "" "Возможно, PostgreSQL установлен не полностью или файла \"%s\" нет в " "положенном месте." -#: postmaster/postmaster.c:1499 +#: postmaster/postmaster.c:1525 #, c-format msgid "" "%s: could not find the database system\n" @@ -22195,306 +22904,292 @@ msgstr "" # well-spelled: неподчиняющимся #. translator: %s is SIGKILL or SIGABRT -#: postmaster/postmaster.c:1789 +#: postmaster/postmaster.c:1762 #, c-format msgid "issuing %s to recalcitrant children" msgstr "неподчиняющимся потомкам посылается %s" -#: postmaster/postmaster.c:1811 +#: postmaster/postmaster.c:1784 #, c-format msgid "" "performing immediate shutdown because data directory lock file is invalid" msgstr "" "немедленное отключение из-за ошибочного файла блокировки каталога данных" -#: postmaster/postmaster.c:1874 -#, c-format -msgid "wrong key in cancel request for process %d" -msgstr "неправильный ключ в запросе на отмену процесса %d" - -#: postmaster/postmaster.c:1886 -#, c-format -msgid "PID %d in cancel request did not match any process" -msgstr "процесс с кодом %d, полученным в запросе на отмену, не найден" - -#: postmaster/postmaster.c:2106 +#: postmaster/postmaster.c:2004 #, c-format msgid "received SIGHUP, reloading configuration files" msgstr "получен SIGHUP, файлы конфигурации перезагружаются" #. translator: %s is a configuration file -#: postmaster/postmaster.c:2134 postmaster/postmaster.c:2138 +#: postmaster/postmaster.c:2012 postmaster/postmaster.c:2016 #, c-format msgid "%s was not reloaded" msgstr "%s не был перезагружен" -#: postmaster/postmaster.c:2148 +#: postmaster/postmaster.c:2026 #, c-format msgid "SSL configuration was not reloaded" msgstr "конфигурация SSL не была перезагружена" -#: postmaster/postmaster.c:2234 +#: postmaster/postmaster.c:2112 #, c-format msgid "received smart shutdown request" msgstr "получен запрос на \"вежливое\" выключение" -#: postmaster/postmaster.c:2275 +#: postmaster/postmaster.c:2153 #, c-format msgid "received fast shutdown request" msgstr "получен запрос на быстрое выключение" -#: postmaster/postmaster.c:2293 +#: postmaster/postmaster.c:2171 #, c-format msgid "aborting any active transactions" msgstr "прерывание всех активных транзакций" -#: postmaster/postmaster.c:2317 +#: postmaster/postmaster.c:2195 #, c-format msgid "received immediate shutdown request" msgstr "получен запрос на немедленное выключение" -#: postmaster/postmaster.c:2389 +#: postmaster/postmaster.c:2270 #, c-format msgid "shutdown at recovery target" msgstr "выключение при достижении цели восстановления" -#: postmaster/postmaster.c:2407 postmaster/postmaster.c:2443 +#: postmaster/postmaster.c:2288 postmaster/postmaster.c:2324 msgid "startup process" msgstr "стартовый процесс" -#: postmaster/postmaster.c:2410 +#: postmaster/postmaster.c:2291 #, c-format msgid "aborting startup due to startup process failure" msgstr "прерывание запуска из-за ошибки в стартовом процессе" -#: postmaster/postmaster.c:2485 +#: postmaster/postmaster.c:2347 #, c-format msgid "database system is ready to accept connections" msgstr "система БД готова принимать подключения" -#: postmaster/postmaster.c:2506 +#: postmaster/postmaster.c:2369 msgid "background writer process" msgstr "процесс фоновой записи" -#: postmaster/postmaster.c:2553 +#: postmaster/postmaster.c:2402 msgid "checkpointer process" msgstr "процесс контрольных точек" -#: postmaster/postmaster.c:2569 +#: postmaster/postmaster.c:2419 msgid "WAL writer process" msgstr "процесс записи WAL" -#: postmaster/postmaster.c:2584 +#: postmaster/postmaster.c:2435 msgid "WAL receiver process" msgstr "процесс считывания WAL" -#: postmaster/postmaster.c:2598 +#: postmaster/postmaster.c:2450 msgid "WAL summarizer process" msgstr "процесс обобщения WAL" -#: postmaster/postmaster.c:2613 +#: postmaster/postmaster.c:2466 msgid "autovacuum launcher process" msgstr "процесс запуска автоочистки" -#: postmaster/postmaster.c:2631 +#: postmaster/postmaster.c:2482 msgid "archiver process" msgstr "процесс архивации" -#: postmaster/postmaster.c:2644 +#: postmaster/postmaster.c:2497 msgid "system logger process" msgstr "процесс системного протоколирования" -#: postmaster/postmaster.c:2661 +#: postmaster/postmaster.c:2515 msgid "slot sync worker process" msgstr "рабочий процесс синхронизации слотов" -#: postmaster/postmaster.c:2717 +#: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 +msgid "io worker" +msgstr "" + +#: postmaster/postmaster.c:2545 postmaster/postmaster.c:2547 +#, fuzzy +msgid "untracked child process" +msgstr "процесс архивации" + +#: postmaster/postmaster.c:2580 #, c-format msgid "background worker \"%s\"" msgstr "фоновый процесс \"%s\"" -#: postmaster/postmaster.c:2796 postmaster/postmaster.c:2816 -#: postmaster/postmaster.c:2823 postmaster/postmaster.c:2841 -msgid "server process" -msgstr "процесс сервера" - -#: postmaster/postmaster.c:2895 +#: 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:3082 +#: postmaster/postmaster.c:2837 #, c-format msgid "%s (PID %d) exited with exit code %d" msgstr "%s (PID %d) завершился с кодом выхода %d" -#: postmaster/postmaster.c:3084 postmaster/postmaster.c:3096 -#: postmaster/postmaster.c:3106 postmaster/postmaster.c:3117 +#: 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:3093 +#: 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:3103 +#: 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:3115 +#: postmaster/postmaster.c:2870 #, c-format msgid "%s (PID %d) exited with unrecognized status %d" msgstr "%s (PID %d) завершился с нераспознанным кодом состояния %d" -#: postmaster/postmaster.c:3331 +#: postmaster/postmaster.c:3161 #, c-format msgid "abnormal database system shutdown" msgstr "аварийное выключение системы БД" -#: postmaster/postmaster.c:3357 +#: postmaster/postmaster.c:3187 #, c-format msgid "shutting down due to startup process failure" msgstr "сервер останавливается из-за ошибки в стартовом процессе" -#: postmaster/postmaster.c:3363 +#: postmaster/postmaster.c:3193 #, c-format msgid "shutting down because \"restart_after_crash\" is off" msgstr "сервер останавливается, так как \"restart_after_crash\" = \"off\"" -#: postmaster/postmaster.c:3375 +#: postmaster/postmaster.c:3205 #, c-format msgid "all server processes terminated; reinitializing" msgstr "все серверные процессы завершены... переинициализация" -#: postmaster/postmaster.c:3574 postmaster/postmaster.c:3985 -#: postmaster/postmaster.c:4374 -#, c-format -msgid "could not generate random cancel key" -msgstr "не удалось сгенерировать случайный ключ отмены" - -#: postmaster/postmaster.c:3607 +#: postmaster/postmaster.c:3598 #, c-format msgid "could not fork new process for connection: %m" msgstr "породить новый процесс для соединения не удалось: %m" -#: postmaster/postmaster.c:3649 +#: postmaster/postmaster.c:3633 msgid "could not fork new process for connection: " msgstr "породить новый процесс для соединения не удалось: " -#: postmaster/postmaster.c:3683 +#: postmaster/postmaster.c:3667 #, c-format msgid "postmaster became multithreaded" msgstr "процесс postmaster стал многопоточным" -#: postmaster/postmaster.c:3752 +#: postmaster/postmaster.c:3745 #, c-format msgid "database system is ready to accept read-only connections" msgstr "система БД готова принимать подключения в режиме \"только чтение\"" -#: postmaster/postmaster.c:3935 +#: postmaster/postmaster.c:3846 +#, fuzzy, c-format +msgid "WAL was shut down unexpectedly" +msgstr "неожиданный конец манифеста" + +#: postmaster/postmaster.c:3971 +#, fuzzy, c-format +msgid "no slot available for new autovacuum worker process" +msgstr "для нового фонового рабочего процесса нет свободного слота" + +#: postmaster/postmaster.c:3986 #, c-format msgid "could not fork \"%s\" process: %m" msgstr "породить процесс \"%s\" не удалось: %m" -#: postmaster/postmaster.c:4173 postmaster/postmaster.c:4207 -#, c-format -msgid "database connection requirement not indicated during registration" -msgstr "" -"при регистрации фонового процесса не указывалось, что ему требуется " -"подключение к БД" - -#: postmaster/postmaster.c:4183 postmaster/postmaster.c:4217 +#: postmaster/postmaster.c:4145 #, c-format -msgid "invalid processing mode in background worker" -msgstr "неправильный режим обработки в фоновом процессе" +msgid "no slot available for new background worker process" +msgstr "для нового фонового рабочего процесса нет свободного слота" -#: postmaster/postmaster.c:4277 +#: postmaster/postmaster.c:4163 #, c-format msgid "could not fork background worker process: %m" msgstr "породить фоновый рабочий процесс не удалось: %m" -#: postmaster/postmaster.c:4360 -#, c-format -msgid "no slot available for new background worker process" -msgstr "для нового фонового рабочего процесса нет свободного слота" - -#: postmaster/postmaster.c:4623 +#: postmaster/postmaster.c:4496 #, c-format msgid "could not read exit code for process\n" msgstr "прочитать код завершения процесса не удалось\n" -#: postmaster/postmaster.c:4665 +#: 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/" @@ -22503,7 +23198,7 @@ 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 "" @@ -22512,27 +23207,27 @@ msgstr[0] "ожидание обобщения позиции %X/%X продол msgstr[1] "ожидание обобщения позиции %X/%X продолжается %ld сек." msgstr[2] "ожидание обобщения позиции %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 "" @@ -22546,19 +23241,19 @@ 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 " @@ -22567,30 +23262,30 @@ 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 " @@ -22599,13 +23294,13 @@ 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 " @@ -22614,91 +23309,91 @@ 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 "ошибка при остановке потоковой операции COPY: %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 "неожиданный режим канала" @@ -22748,7 +23443,131 @@ msgstr "" "применяющий процесс логической репликации будет сериализовывать остальное " "содержимое удалённой транзакции %u в файл" -#: replication/logical/decode.c:177 replication/logical/logical.c:141 +#: replication/logical/conflict.c:126 +#, fuzzy, c-format +msgid "conflict detected on relation \"%s.%s\": conflict=%s" +msgstr "добавить отношение \"%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 "" + +#: 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 "" + +#: 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 "" + +#: replication/logical/conflict.c:244 +#, c-format +msgid "Key already exists in unique index \"%s\", modified in transaction %u." +msgstr "" + +#: replication/logical/conflict.c:251 +#, c-format +msgid "Updating the row that was modified locally in transaction %u at %s." +msgstr "" + +#: 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 "" + +#: 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 "" + +#: replication/logical/conflict.c:265 +#, fuzzy +msgid "Could not find the row to be updated." +msgstr "не удалось найти запускаемый файл \"%s\"" + +#: replication/logical/conflict.c:270 +#, c-format +msgid "Deleting the row that was modified locally in transaction %u at %s." +msgstr "" + +#: 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 "" + +#: 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 "" + +#: replication/logical/conflict.c:284 +#, fuzzy +msgid "Could not find the row to be deleted." +msgstr "не удалось найти запускаемый файл \"%s\"" + +#: replication/logical/conflict.c:347 +#, c-format +msgid "Key %s" +msgstr "" + +#: replication/logical/conflict.c:364 +#, fuzzy, c-format +msgid "existing local row %s" +msgstr "существующий курсор (\"%s\") закрывается" + +#: replication/logical/conflict.c:369 +#, c-format +msgid "Existing local row %s" +msgstr "" + +#: replication/logical/conflict.c:396 +#, c-format +msgid "remote row %s" +msgstr "" + +#: replication/logical/conflict.c:400 +#, c-format +msgid "Remote row %s" +msgstr "" + +#: replication/logical/conflict.c:434 +#, fuzzy, c-format +msgid "replica identity %s" +msgstr "публикация %s" + +#: replication/logical/conflict.c:435 +#, c-format +msgid "replica identity full %s" +msgstr "" + +#: replication/logical/conflict.c:440 +#, fuzzy, c-format +msgid "Replica identity %s" +msgstr "публикация %s" + +#: replication/logical/conflict.c:441 +#, c-format +msgid "Replica identity full %s" +msgstr "" + +#: replication/logical/decode.c:177 replication/logical/logical.c:143 #, c-format msgid "" "logical decoding on standby requires \"wal_level\" >= \"logical\" on the " @@ -22757,39 +23576,43 @@ msgstr "" "для логического декодирования на ведомом сервере требуется \"wal_level\" >= " "\"logical\" на ведущем" -#: replication/logical/launcher.c:334 -#, c-format -msgid "cannot start logical replication workers when max_replication_slots = 0" +#: replication/logical/launcher.c:344 +#, fuzzy, c-format +msgid "" +"cannot start logical replication workers when " +"\"max_active_replication_origins\" is 0" msgstr "" "нельзя запустить процессы-обработчики логической репликации при " "max_replication_slots = 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:2836 storage/lmgr/lock.c:4221 storage/lmgr/lock.c:4286 -#: storage/lmgr/lock.c:4636 storage/lmgr/predicate.c:2469 -#: storage/lmgr/predicate.c:2484 storage/lmgr/predicate.c:3881 +#. 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 #, 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 " @@ -22798,28 +23621,28 @@ 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:521 #, 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:531 #, 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 " @@ -22827,78 +23650,59 @@ msgid "" msgstr "" "нельзя создать слот логической репликации в транзакции, осуществляющей запись" -#: replication/logical/logical.c:540 +#: replication/logical/logical.c:542 #, 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:544 replication/slot.c:829 +#: replication/slot.c:864 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Этот слот репликации синхронизируется с ведущего сервера." -#: replication/logical/logical.c:543 +#: replication/logical/logical.c:545 #, 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:611 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "начинается логическое декодирование для слота \"%s\"" -#: replication/logical/logical.c:630 +#: replication/logical/logical.c:613 #, 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:761 #, 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:767 #, 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:938 replication/logical/logical.c:983 +#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 #, 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:1306 replication/logical/logical.c:1355 +#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 +#: replication/logical/logical.c:1531 #, c-format msgid "logical streaming requires a %s callback" msgstr "для логической потоковой репликации требуется обработчик %s" -#: replication/logical/logical.c:1458 +#: replication/logical/logical.c:1441 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "" @@ -22925,7 +23729,7 @@ msgstr "массив должен быть одномерным" msgid "array must not contain nulls" msgstr "массив не должен содержать элементы null" -#: 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" @@ -22940,74 +23744,85 @@ msgstr "" "модуль вывода логического декодирования \"%s\" выдаёт двоичные данные, но " "функция \"%s\" ожидает текстовые" -#: replication/logical/origin.c:190 -#, c-format +#: replication/logical/origin.c:195 +#, fuzzy, c-format msgid "" -"cannot query or manipulate replication origin when \"max_replication_slots\" " -"is 0" +"cannot query or manipulate replication origin when " +"\"max_active_replication_origins\" is 0" msgstr "" "запрашивать или модифицировать источники репликации при " "\"max_replication_slots\" = 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 +#, fuzzy, c-format +msgid "replication origin name is too long" +msgstr "имя слота репликации \"%s\" слишком длинное" + +#: replication/logical/origin.c:276 +#, fuzzy, c-format +msgid "Replication origin names must be no longer than %d bytes." +msgstr "имя источника репликации \"%s\" зарезервировано" + +#: 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 -#, c-format +#: replication/logical/origin.c:821 +#, fuzzy, c-format msgid "" -"could not find free replication state, increase \"max_replication_slots\"" +"could not find free replication state, increase " +"\"max_active_replication_origins\"" msgstr "" "не удалось найти свободную ячейку для состояния репликации, увеличьте " "\"max_replication_slots\"" -#: 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" @@ -23015,29 +23830,28 @@ msgstr "" "не удалось найти свободный слот состояния репликации для источника " "репликации с ID %d" -#: replication/logical/origin.c:957 replication/logical/origin.c:1158 -#: replication/slot.c:2384 -#, c-format -msgid "Increase \"max_replication_slots\" and try again." +#: replication/logical/origin.c:980 replication/logical/origin.c:1181 +#, fuzzy, c-format +msgid "Increase \"max_active_replication_origins\" and try again." msgstr "Увеличьте параметр \"max_replication_slots\" и повторите попытку." -#: 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." @@ -23045,17 +23859,16 @@ 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: " @@ -23073,7 +23886,25 @@ msgstr[2] "" "в целевом отношении логической репликации (\"%s.%s\") отсутствуют " "реплицируемые столбцы: %s" -#: replication/logical/relation.c:306 +#: replication/logical/relation.c:273 +#, fuzzy, 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" + +#: replication/logical/relation.c:328 #, c-format msgid "" "logical replication target relation \"%s.%s\" uses system columns in REPLICA " @@ -23082,24 +23913,24 @@ 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:3999 +#: 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:4345 -#: replication/logical/reorderbuffer.c:4370 +#: 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:4349 -#: replication/logical/reorderbuffer.c:4374 +#: 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" @@ -23107,59 +23938,53 @@ msgstr "" "не удалось прочитать файл подкачки буфера пересортировки (прочитано байт: " "%d, требовалось: %u)" -#: replication/logical/reorderbuffer.c:4624 -#, c-format -msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m" +#: replication/logical/reorderbuffer.c:4876 +#, fuzzy, c-format +msgid "could not remove file \"%s\" during removal of %s/%s/xid*: %m" msgstr "" "ошибка при удалении файла \"%s\" в процессе удаления pg_replslot/%s/xid*: %m" -#: replication/logical/reorderbuffer.c:5120 +#: 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." +"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 "" -"Для удалённого слота текущий LSN %X/%X и xmin каталога %u, тогда как для " -"локального — LSN %X/%X и xmin каталога %u." +"Синхронизация могла привести к потере данных, так как удалённый слот требует " +"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." +"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." +"Синхронизация могла привести к потере данных, так как резервный сервер не " +"смог получить согласованный снимок для декодирования WAL в позиции 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 " @@ -23168,7 +23993,7 @@ 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 " @@ -23177,32 +24002,32 @@ msgstr "" "синхронизация слота отменяется, потому что слот с таким же именем \"%s\" уже " "существует на резервном сервере" -#: replication/logical/slotsync.c:819 +#: replication/logical/slotsync.c:835 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "" "не удалось получить информацию о переносимых логических слотах с главного " "сервера: %s" -#: replication/logical/slotsync.c:965 -#, c-format +#: replication/logical/slotsync.c:984 +#, fuzzy, c-format msgid "" -"could not fetch primary_slot_name \"%s\" info from the primary server: %s" +"could not fetch primary slot name \"%s\" info from the primary server: %s" msgstr "не удалось получить информацию о слоте \"%s\" с главного сервера: %s" # skip-rule: nastroy1 -#: replication/logical/slotsync.c:967 -#, c-format -msgid "Check if primary_slot_name is configured correctly." +#: replication/logical/slotsync.c:986 +#, fuzzy, c-format +msgid "Check if \"primary_slot_name\" is configured correctly." msgstr "Проверьте правильность настройки primary_slot_name." -#: replication/logical/slotsync.c:987 +#: replication/logical/slotsync.c:1006 #, 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:1015 #, c-format msgid "" "replication slot \"%s\" specified by \"%s\" does not exist on primary server" @@ -23212,32 +24037,32 @@ msgstr "" #. translator: first %s is a connection option; second %s is a GUC #. variable name #. -#: replication/logical/slotsync.c:1029 +#: replication/logical/slotsync.c:1048 #, 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:1067 #, 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:1082 replication/logical/slotsync.c:1110 #, 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:1096 #, 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:1148 #, c-format msgid "" "replication slot synchronization worker will shut down because \"%s\" is " @@ -23246,7 +24071,7 @@ msgstr "" "процесс синхронизации слотов репликации будет остановлен, так как \"%s\" " "отключён" -#: replication/logical/slotsync.c:1138 +#: replication/logical/slotsync.c:1157 #, c-format msgid "" "replication slot synchronization worker will restart because of a parameter " @@ -23255,7 +24080,7 @@ msgstr "" "процесс синхронизации слотов репликации будет перезапущен вследствие " "изменения параметров" -#: replication/logical/slotsync.c:1162 +#: replication/logical/slotsync.c:1181 #, c-format msgid "" "replication slot synchronization worker is shutting down on receiving SIGINT" @@ -23263,36 +24088,36 @@ msgstr "" "процесс синхронизации слотов репликации останавливается, получив сигнал " "SIGINT" -#: replication/logical/slotsync.c:1287 +#: replication/logical/slotsync.c:1306 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "" "синхронизировать слоты репликации, когда выполняется повышение резервного " "сервера, нельзя" -#: replication/logical/slotsync.c:1295 +#: replication/logical/slotsync.c:1314 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "многопоточная синхронизация слотов репликации не поддерживается" -#: replication/logical/slotsync.c:1403 +#: replication/logical/slotsync.c:1422 #, c-format msgid "slot sync worker started" msgstr "рабочий процесс синхронизации слотов запущен" -#: replication/logical/slotsync.c:1466 replication/slotfuncs.c:900 -#: replication/walreceiver.c:307 -#, c-format -msgid "could not connect to the primary server: %s" +#: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 +#, fuzzy, c-format +msgid "" +"synchronization worker \"%s\" could not connect to the primary server: %s" msgstr "не удалось подключиться к главному серверу: %s" -#: replication/logical/snapbuild.c:653 +#: replication/logical/snapbuild.c:514 #, c-format msgid "initial slot snapshot too large" msgstr "изначальный снимок слота слишком большой" # skip-rule: capital-letter-first -#: replication/logical/snapbuild.c:707 +#: replication/logical/snapbuild.c:568 #, c-format msgid "exported logical decoding snapshot: \"%s\" with %u transaction ID" msgid_plural "" @@ -23304,68 +24129,68 @@ msgstr[1] "" msgstr[2] "" "экспортирован снимок логического декодирования: \"%s\" (ид. транзакций: %u)" -#: 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\", " @@ -23374,7 +24199,7 @@ 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 " @@ -23383,25 +24208,25 @@ 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: " @@ -23410,25 +24235,34 @@ 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 +#, fuzzy, c-format +msgid "" +"table synchronization worker for subscription \"%s\" could not connect to " +"the publisher: %s" +msgstr "" +"процесс синхронизации таблицы при логической репликации для подписки \"%s\", " +"таблицы \"%s\" закончил обработку" + +#: replication/logical/tablesync.c:1466 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "" "при копировании таблицы не удалось начать транзакцию на сервере публикации: " "%s" -#: replication/logical/tablesync.c:1472 +#: replication/logical/tablesync.c:1509 #, c-format msgid "replication origin \"%s\" already exists" msgstr "источник репликации \"%s\" уже существует" -#: replication/logical/tablesync.c:1505 replication/logical/worker.c:2361 +#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 #, c-format msgid "" "user \"%s\" cannot replicate into relation with row-level security enabled: " @@ -23437,14 +24271,14 @@ msgstr "" "пользователь \"%s\" не может реплицировать данные в отношение с включённой " "защитой на уровне строк: \"%s\"" -#: replication/logical/tablesync.c:1518 +#: replication/logical/tablesync.c:1555 #, 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" @@ -23452,7 +24286,7 @@ msgstr "" "параллельный применяющий процесс логической репликации для подписки \"%s\" " "будет остановлен" -#: replication/logical/worker.c:483 +#: replication/logical/worker.c:476 #, c-format msgid "" "Cannot handle streamed replication transactions using parallel apply workers " @@ -23462,13 +24296,13 @@ 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 " @@ -23477,7 +24311,7 @@ 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 " @@ -23488,22 +24322,22 @@ msgstr "" "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 " @@ -23512,7 +24346,7 @@ 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 " @@ -23521,7 +24355,7 @@ 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 " @@ -23530,7 +24364,7 @@ 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 " @@ -23539,7 +24373,7 @@ 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 " @@ -23549,7 +24383,7 @@ 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 " @@ -23558,12 +24392,18 @@ 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 +#, fuzzy, c-format +msgid "" +"apply worker for subscription \"%s\" could not connect to the publisher: %s" +msgstr "не удалось подключиться к серверу публикации: %s" + +#: replication/logical/worker.c:4696 #, c-format msgid "" "logical replication worker for subscription %u will not start because the " @@ -23572,7 +24412,7 @@ 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 " @@ -23581,7 +24421,7 @@ msgstr "" "процесс логической репликации для подписки \"%s\" не будет запущен, так как " "подписка была отключена при старте" -#: replication/logical/worker.c:4631 +#: replication/logical/worker.c:4736 #, c-format msgid "" "logical replication table synchronization worker for subscription \"%s\", " @@ -23590,35 +24430,35 @@ 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:4871 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "подписка \"%s\" была отключена из-за ошибки" -#: replication/logical/worker.c:4806 +#: replication/logical/worker.c:4919 #, 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:4933 #, 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:5021 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "значение skip-LSN для подписки \"%s\" очищено" -#: replication/logical/worker.c:4903 +#: replication/logical/worker.c:5022 #, c-format msgid "" "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN " @@ -23627,7 +24467,7 @@ msgstr "" "Позиция завершения удалённой транзакции в WAL (LSN) %X/%X не совпала со " "значением skip-LSN %X/%X." -#: replication/logical/worker.c:4940 +#: replication/logical/worker.c:5050 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23636,7 +24476,7 @@ msgstr "" "обработка внешних данных для источника репликации \"%s\" в контексте " "сообщения типа \"%s\"" -#: replication/logical/worker.c:4944 +#: replication/logical/worker.c:5054 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23645,7 +24485,7 @@ msgstr "" "обработка внешних данных из источника репликации \"%s\" в контексте " "сообщения типа \"%s\" в транзакции %u" -#: replication/logical/worker.c:4949 +#: replication/logical/worker.c:5059 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23654,7 +24494,7 @@ msgstr "" "обработка внешних данных для источника репликации \"%s\" в контексте " "сообщения типа \"%s\" в транзакции %u, конечная позиция %X/%X" -#: replication/logical/worker.c:4960 +#: replication/logical/worker.c:5070 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23664,7 +24504,7 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\" в " "транзакции %u" -#: replication/logical/worker.c:4967 +#: replication/logical/worker.c:5077 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23675,7 +24515,7 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\" в " "транзакции %u, конечная позиция %X/%X" -#: replication/logical/worker.c:4978 +#: replication/logical/worker.c:5088 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23686,7 +24526,7 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\", столбца " "\"%s\", в транзакции %u" -#: replication/logical/worker.c:4986 +#: replication/logical/worker.c:5096 #, c-format msgid "" "processing remote data for replication origin \"%s\" during message type " @@ -23697,27 +24537,27 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\", столбца " "\"%s\", в транзакции %u, конечная позиция %X/%X" -#: replication/pgoutput/pgoutput.c:322 +#: replication/pgoutput/pgoutput.c:328 #, c-format msgid "invalid proto_version" msgstr "неверное значение proto_version" -#: replication/pgoutput/pgoutput.c:327 +#: replication/pgoutput/pgoutput.c:333 #, c-format msgid "proto_version \"%s\" out of range" msgstr "значение proto_verson \"%s\" вне диапазона" -#: replication/pgoutput/pgoutput.c:344 +#: replication/pgoutput/pgoutput.c:350 #, c-format msgid "invalid publication_names syntax" msgstr "неверный синтаксис publication_names" -#: replication/pgoutput/pgoutput.c:414 replication/pgoutput/pgoutput.c:418 +#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 #, c-format msgid "option \"%s\" missing" msgstr "параметр \"%s\" отсутствует" -#: replication/pgoutput/pgoutput.c:478 +#: replication/pgoutput/pgoutput.c:469 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or lower" @@ -23725,7 +24565,7 @@ msgstr "" "клиент передал proto_version=%d, но сервер поддерживает только протокол %d и " "ниже" -#: replication/pgoutput/pgoutput.c:484 +#: replication/pgoutput/pgoutput.c:475 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or higher" @@ -23733,7 +24573,7 @@ msgstr "" "клиент передал proto_version=%d, но сервер поддерживает только протокол %d и " "выше" -#: replication/pgoutput/pgoutput.c:499 +#: replication/pgoutput/pgoutput.c:490 #, c-format msgid "" "requested proto_version=%d does not support streaming, need %d or higher" @@ -23741,7 +24581,7 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает потоковую передачу, " "требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:505 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "" "requested proto_version=%d does not support parallel streaming, need %d or " @@ -23750,12 +24590,12 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает параллельную потоковую " "передачу, требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:510 +#: replication/pgoutput/pgoutput.c:501 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "запрошена потоковая передача, но она не поддерживается модулем вывода" -#: replication/pgoutput/pgoutput.c:524 +#: replication/pgoutput/pgoutput.c:515 #, c-format msgid "" "requested proto_version=%d does not support two-phase commit, need %d or " @@ -23764,27 +24604,51 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает двухфазную фиксацию, " "требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:529 +#: replication/pgoutput/pgoutput.c:520 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "запрошена двухфазная фиксация, но она не поддерживается модулем вывода" -#: replication/slot.c:260 +#: replication/pgoutput/pgoutput.c:1085 +#, fuzzy, c-format +msgid "" +"cannot use different values of publish_generated_columns for table \"%s.%s\" " +"in different publications" +msgstr "" +"использовать различные списки столбцов таблицы \"%s.%s\" в разных " +"публикациях нельзя" + +#: replication/pgoutput/pgoutput.c:1792 +#, fuzzy, c-format +msgid "skipped loading publication \"%s\"" +msgstr "%s в публикации %s" + +#: replication/pgoutput/pgoutput.c:1793 +#, fuzzy, c-format +msgid "The publication does not exist at this point in the WAL." +msgstr "публикация %s не существует на публикующем сервере" + +#: replication/pgoutput/pgoutput.c:1794 +#, fuzzy, c-format +msgid "Create the publication if it does not exist." +msgstr "публикация \"%s\" не существует" + +#: replication/slot.c:275 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "имя слота репликации \"%s\" слишком короткое" -#: replication/slot.c:269 +#: replication/slot.c:284 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "имя слота репликации \"%s\" слишком длинное" -#: replication/slot.c:282 +#: replication/slot.c:297 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "имя слота репликации \"%s\" содержит недопустимый символ" -#: replication/slot.c:284 +#: replication/slot.c:299 #, c-format msgid "" "Replication slot names may only contain lower case letters, numbers, and the " @@ -23793,125 +24657,138 @@ msgstr "" "Имя слота репликации может содержать только буквы в нижнем регистре, цифры и " "знак подчёркивания." -#: replication/slot.c:333 +#: replication/slot.c:348 #, 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:360 replication/slot.c:886 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "временный слот репликации не может быть переносимым" -#: replication/slot.c:370 +#: replication/slot.c:385 #, c-format msgid "replication slot \"%s\" already exists" msgstr "слот репликации \"%s\" уже существует" -#: replication/slot.c:380 +#: replication/slot.c:395 #, c-format msgid "all replication slots are in use" msgstr "используются все слоты репликации" -#: replication/slot.c:381 +#: replication/slot.c:396 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Освободите ненужный или увеличьте параметр \"max_replication_slots\"." -#: replication/slot.c:560 replication/slot.c:2450 replication/slotfuncs.c:661 -#: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:728 +#: replication/slot.c:580 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:635 replication/slot.c:1431 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "слот репликации \"%s\" занят процессом с PID %d" -#: replication/slot.c:638 +#: replication/slot.c:652 +#, fuzzy, c-format +msgid "can no longer access replication slot \"%s\"" +msgstr "из слота репликации \"%s\" больше нельзя получать изменения" + +#: replication/slot.c:654 +#, fuzzy, c-format +msgid "This replication slot has been invalidated due to \"%s\"." +msgstr "" +"Пользователь использовал слот логической репликации, который должен быть " +"аннулирован." + +#: replication/slot.c:673 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "получен слот логической репликации \"%s\"" -#: replication/slot.c:640 +#: replication/slot.c:675 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "получен слот физической репликации \"%s\"" -#: replication/slot.c:729 +#: replication/slot.c:760 #, c-format msgid "released logical replication slot \"%s\"" msgstr "освобождён слот логической репликации \"%s\"" -#: replication/slot.c:731 +#: replication/slot.c:762 #, c-format msgid "released physical replication slot \"%s\"" msgstr "освобождён слот физической репликации \"%s\"" -#: replication/slot.c:797 +#: replication/slot.c:828 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "удалить слот репликации \"%s\" нельзя" -#: replication/slot.c:816 +#: replication/slot.c:851 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "выполнить %s со слотом физической репликации нельзя" -#: replication/slot.c:828 +#: replication/slot.c:863 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "изменить слот репликации \"%s\" нельзя" -#: replication/slot.c:838 +#: replication/slot.c:873 #, 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:1021 replication/slot.c:2174 replication/slot.c:2560 #, c-format msgid "could not remove directory \"%s\"" msgstr "ошибка при удалении каталога \"%s\"" -#: replication/slot.c:1372 +#: replication/slot.c:1466 #, 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:1471 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "" "слоты репликации можно использовать, только если \"wal_level\" >= \"replica\"" -#: replication/slot.c:1389 +#: replication/slot.c:1483 #, c-format msgid "permission denied to use replication slots" msgstr "нет прав для использования слотов репликации" -#: replication/slot.c:1390 +#: replication/slot.c:1484 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Использовать слоты репликации могут только роли с атрибутом %s." -#: replication/slot.c:1498 -#, 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:1594 +#, fuzzy, 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 слота превысила предел на %llu Б." msgstr[1] "Позиция restart_lsn %X/%X слота превысила предел на %llu Б." msgstr[2] "Позиция restart_lsn %X/%X слота превысила предел на %llu Б." -#: replication/slot.c:1506 +#: replication/slot.c:1605 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Слот конфликтует с горизонтом xid %u." -#: replication/slot.c:1511 +#: replication/slot.c:1610 msgid "" "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the " "primary server." @@ -23919,77 +24796,108 @@ msgstr "" "Для логического декодирования на ведомом сервере требуется \"wal_level\" >= " "\"logical\" на ведущем." -#: replication/slot.c:1519 +#. translator: %s is a GUC variable name +#: replication/slot.c:1616 +#, c-format +msgid "" +"The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." +msgstr "" + +#: replication/slot.c:1630 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "завершение процесса %d для освобождения слота репликации \"%s\"" -#: replication/slot.c:1521 +#: replication/slot.c:1632 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "аннулирование устаревшего слота репликации \"%s\"" -#: replication/slot.c:2249 +#: replication/slot.c:2498 #, 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:2505 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "файл состояния snapbuild \"%s\" имеет неподдерживаемую версию %u" -#: replication/slot.c:2263 +#: replication/slot.c:2512 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "у файла слота репликации \"%s\" неверная длина: %u" -#: replication/slot.c:2299 +#: replication/slot.c:2548 #, 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:2584 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "" "существует слот логической репликации \"%s\", но \"wal_level\" < \"logical\"" -#: replication/slot.c:2335 +#: replication/slot.c:2586 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Смените \"wal_level\" на \"logical\" или более высокий уровень." -#: replication/slot.c:2339 +#: replication/slot.c:2598 +#, c-format +msgid "" +"logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = " +"\"off\"" +msgstr "" +"на ведомом сервере существует слот логической репликации \"%s\", но " +"\"hot_standby\" = \"off\"" + +#: replication/slot.c:2600 +#, c-format +msgid "Change \"hot_standby\" to be \"on\"." +msgstr "Смените значение \"hot_standby\" на \"on\"." + +#: replication/slot.c:2605 #, c-format msgid "" "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "" "существует слот физической репликации \"%s\", но \"wal_level\" < \"replica\"" -#: replication/slot.c:2341 +#: replication/slot.c:2607 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Смените \"wal_level\" на \"replica\" или более высокий уровень." -#: replication/slot.c:2383 +#: replication/slot.c:2654 #, c-format msgid "too many replication slots active before shutdown" msgstr "перед завершением активно слишком много слотов репликации" -#: replication/slot.c:2458 +#: replication/slot.c:2655 #, c-format -msgid "\"%s\" is not a physical replication slot" +msgid "Increase \"max_replication_slots\" and try again." +msgstr "Увеличьте параметр \"max_replication_slots\" и повторите попытку." + +#: replication/slot.c:2732 +#, fuzzy, c-format +msgid "Replication slot \"%s\" does not exist." +msgstr "слот репликации \"%s\" не существует" + +#: replication/slot.c:2740 +#, fuzzy, c-format +msgid "\"%s\" is not a physical replication slot." msgstr "\"%s\" не является слотом физической репликации" -#: replication/slot.c:2635 +#: replication/slot.c:2919 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "слот репликации \"%s\", указанный в параметре \"%s\", не существует" -#: replication/slot.c:2637 replication/slot.c:2671 replication/slot.c:2686 +#: replication/slot.c:2921 replication/slot.c:2955 replication/slot.c:2970 #, c-format msgid "" "Logical replication is waiting on the standby associated with replication " @@ -23998,30 +24906,30 @@ msgstr "" "Логическая репликация ожидает резервного сервера, связанного со слотом " "репликации \"%s\"." -#: replication/slot.c:2639 +#: replication/slot.c:2923 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Создайте слот репликации \"%s\" или опустите параметр \"%s\"." -#: replication/slot.c:2649 +#: replication/slot.c:2933 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "" "слот логической репликации \"%s\" не может быть указан в параметре \"%s\"" -#: replication/slot.c:2651 +#: replication/slot.c:2935 #, c-format msgid "" "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "Логическая репликация ожидает исправления слота репликации \"%s\"." -#: replication/slot.c:2653 +#: replication/slot.c:2937 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "" "Удалите указание слота логической репликации \"%s\" из параметра \"%s\"." -#: replication/slot.c:2669 +#: replication/slot.c:2953 #, c-format msgid "" "physical replication slot \"%s\" specified in parameter \"%s\" has been " @@ -24030,14 +24938,14 @@ msgstr "" "слот физической репликации \"%s\", указанный в параметре \"%s\", был " "аннулирован" -#: replication/slot.c:2673 +#: replication/slot.c:2957 #, c-format msgid "" "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "" "Удалите и пересоздайте слот репликации \"%s\" или опустите параметр \"%s\"." -#: replication/slot.c:2684 +#: replication/slot.c:2968 #, c-format msgid "" "replication slot \"%s\" specified in parameter \"%s\" does not have " @@ -24046,7 +24954,7 @@ msgstr "" "у слота репликации \"%s\", указанного в параметре \"%s\", нулевое значение " "active_pid" -#: replication/slot.c:2688 +#: replication/slot.c:2972 #, c-format msgid "" "Start the standby associated with the replication slot \"%s\", or amend " @@ -24055,29 +24963,29 @@ msgstr "" "Запустите резервный сервер, связанный со слотом репликации \"%s\", или " "опустите параметр \"%s\"." -#: replication/slotfuncs.c:526 +#: replication/slotfuncs.c:529 #, c-format msgid "invalid target WAL LSN" msgstr "неверный целевой 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" @@ -24085,7 +24993,7 @@ msgstr "" "слот физической репликации \"%s\" нельзя скопировать как слот логической " "репликации" -#: replication/slotfuncs.c:675 +#: replication/slotfuncs.c:678 #, c-format msgid "" "cannot copy logical replication slot \"%s\" as a physical replication slot" @@ -24093,17 +25001,22 @@ 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 " @@ -24112,26 +25025,36 @@ 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 " @@ -24140,7 +25063,7 @@ 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 " @@ -24149,142 +25072,144 @@ 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 -#, c-format -msgid "\"synchronous_standby_names\" parser failed" -msgstr "ошибка при разборе \"synchronous_standby_names\"" +#: replication/syncrep.c:1081 +#, fuzzy, c-format +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 -#, c-format -msgid "terminating walreceiver process due to administrator command" -msgstr "завершение процесса считывания журнала по команде администратора" +#: replication/walreceiver.c:276 +#, fuzzy, c-format +msgid "" +"streaming replication receiver \"%s\" could not connect to the primary " +"server: %s" +msgstr "не удалось подключиться к главному серверу: %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 "" "начало передачи журнала с главного сервера, с позиции %X/%X на линии времени " "%u" -#: replication/walreceiver.c:423 +#: replication/walreceiver.c:393 #, c-format msgid "restarted WAL streaming at %X/%X on timeline %u" msgstr "перезапуск передачи журнала с позиции %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 достигнут конец журнала." -#: replication/walreceiver.c:593 +#: replication/walreceiver.c:573 #, c-format msgid "terminating walreceiver due to timeout" msgstr "завершение приёма журнала из-за тайм-аута" -#: replication/walreceiver.c:625 +#: replication/walreceiver.c:605 #, c-format msgid "primary server contains no more WAL on requested timeline %u" msgstr "" "на главном сервере больше нет журналов для запрошенной линии времени %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:505 #, c-format msgid "cannot use %s with a logical replication slot" msgstr "использовать %s со слотом логической репликации нельзя" -#: replication/walsender.c:635 storage/smgr/md.c:1735 +#: replication/walsender.c:609 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:613 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "не удалось перейти к началу файла \"%s\": %m" -#: replication/walsender.c:853 +#: replication/walsender.c:829 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "" "слот логической репликации нельзя использовать для физической репликации" -#: replication/walsender.c:919 +#: replication/walsender.c:895 #, 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:898 #, 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:942 #, c-format msgid "" "requested starting point %X/%X is ahead of the WAL flush position of this " @@ -24293,75 +25218,75 @@ msgstr "" "запрошенная начальная точка %X/%X впереди позиции сброшенных данных журнала " "на этом сервере (%X/%X)" -#: replication/walsender.c:1160 +#: 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:1266 +#: replication/walsender.c:1243 #, 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:1253 #, 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:1259 #, 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:1264 #, 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:1270 #, 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:1276 #, c-format msgid "%s must not be called in a subtransaction" msgstr "%s требуется вызывать не в подтранзакции" -#: replication/walsender.c:1472 +#: replication/walsender.c:1453 #, c-format msgid "terminating walsender process after promotion" msgstr "завершение процесса передачи журнала после повышения" -#: replication/walsender.c:2000 +#: replication/walsender.c:1996 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "" "нельзя выполнять новые команды, пока процесс передачи WAL находится в режиме " "остановки" -#: replication/walsender.c:2035 +#: replication/walsender.c:2050 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "" "нельзя выполнять команды SQL в процессе, передающем WAL для физической " "репликации" -#: replication/walsender.c:2068 +#: replication/walsender.c:2081 #, 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: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 #, c-format msgid "" "current transaction is aborted, commands ignored until end of transaction " @@ -24369,22 +25294,22 @@ msgid "" msgstr "" "текущая транзакция прервана, команды до конца блока транзакции игнорируются" -#: replication/walsender.c:2233 replication/walsender.c:2268 +#: replication/walsender.c:2249 replication/walsender.c:2284 #, c-format msgid "unexpected EOF on standby connection" msgstr "неожиданный обрыв соединения с резервным сервером" -#: replication/walsender.c:2256 +#: replication/walsender.c:2272 #, c-format msgid "invalid standby message type \"%c\"" msgstr "неверный тип сообщения резервного сервера: \"%c\"" -#: replication/walsender.c:2345 +#: replication/walsender.c:2361 #, c-format msgid "unexpected message type \"%c\"" msgstr "неожиданный тип сообщения \"%c\"" -#: replication/walsender.c:2759 +#: replication/walsender.c:2775 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "завершение процесса передачи журнала из-за тайм-аута репликации" @@ -24577,7 +25502,7 @@ msgstr "правило \"%s\" для отношения\"%s\" не сущест msgid "renaming an ON SELECT rule is not allowed" msgstr "переименовывать правило ON SELECT нельзя" -#: rewrite/rewriteHandler.c:588 +#: rewrite/rewriteHandler.c:590 #, c-format msgid "" "WITH query name \"%s\" appears in both a rule action and the query being " @@ -24586,7 +25511,7 @@ msgstr "" "имя запроса WITH \"%s\" оказалось и в действии правила, и в переписываемом " "запросе" -#: rewrite/rewriteHandler.c:615 +#: rewrite/rewriteHandler.c:617 #, c-format msgid "" "INSERT ... SELECT rule actions are not supported for queries having data-" @@ -24595,123 +25520,123 @@ msgstr "" "правила INSERT ... SELECT не поддерживаются для запросов с операторами, " "изменяющими данные, в WITH" -#: rewrite/rewriteHandler.c:668 +#: rewrite/rewriteHandler.c:671 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "RETURNING можно определить только для одного правила" -#: rewrite/rewriteHandler.c:900 rewrite/rewriteHandler.c:939 +#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "в столбец \"%s\" можно вставить только значение по умолчанию" -#: rewrite/rewriteHandler.c:902 rewrite/rewriteHandler.c:968 +#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "" "Столбец \"%s\" является столбцом идентификации со свойством GENERATED ALWAYS." -#: rewrite/rewriteHandler.c:904 +#: rewrite/rewriteHandler.c:912 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Для переопределения укажите OVERRIDING SYSTEM VALUE." -#: rewrite/rewriteHandler.c:966 rewrite/rewriteHandler.c:974 +#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "столбцу \"%s\" можно присвоить только значение DEFAULT" -#: rewrite/rewriteHandler.c:1109 rewrite/rewriteHandler.c:1127 +#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "многочисленные присвоения одному столбцу \"%s\"" -#: rewrite/rewriteHandler.c:1682 +#: rewrite/rewriteHandler.c:1691 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE не поддерживается для отношений с правилами." -#: rewrite/rewriteHandler.c:1722 rewrite/rewriteHandler.c:3262 +#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "доступ к несистемному представлению \"%s\" ограничен" -#: rewrite/rewriteHandler.c:2122 rewrite/rewriteHandler.c:4254 +#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "обнаружена бесконечная рекурсия в правилах для отношения \"%s\"" -#: rewrite/rewriteHandler.c:2227 +#: rewrite/rewriteHandler.c:2235 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "обнаружена бесконечная рекурсия в политике для отношения \"%s\"" -#: rewrite/rewriteHandler.c:2589 +#: rewrite/rewriteHandler.c:2598 msgid "Junk view columns are not updatable." msgstr "Утилизируемые столбцы представлений не обновляются." -#: rewrite/rewriteHandler.c:2594 +#: rewrite/rewriteHandler.c:2603 msgid "" "View columns that are not columns of their base relation are not updatable." msgstr "" "Столбцы представлений, не являющиеся столбцами базовых отношений, не " "обновляются." -#: rewrite/rewriteHandler.c:2597 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that refer to system columns are not updatable." msgstr "" "Столбцы представлений, ссылающиеся на системные столбцы, не обновляются." -#: rewrite/rewriteHandler.c:2600 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that return whole-row references are not updatable." msgstr "" "Столбцы представлений, возвращающие ссылки на всю строку, не обновляются." -#: rewrite/rewriteHandler.c:2661 +#: rewrite/rewriteHandler.c:2670 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Представления с DISTINCT не обновляются автоматически." -#: rewrite/rewriteHandler.c:2664 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Представления с GROUP BY не обновляются автоматически." -#: rewrite/rewriteHandler.c:2667 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing HAVING are not automatically updatable." msgstr "Представления с HAVING не обновляются автоматически." -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2679 msgid "" "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "" "Представления с UNION, INTERSECT или EXCEPT не обновляются автоматически." -#: rewrite/rewriteHandler.c:2673 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing WITH are not automatically updatable." msgstr "Представления с WITH не обновляются автоматически." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "Представления с LIMIT или OFFSET не обновляются автоматически." -#: rewrite/rewriteHandler.c:2688 +#: rewrite/rewriteHandler.c:2697 msgid "Views that return aggregate functions are not automatically updatable." msgstr "" "Представления, возвращающие агрегатные функции, не обновляются автоматически." -#: rewrite/rewriteHandler.c:2691 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return window functions are not automatically updatable." msgstr "" "Представления, возвращающие оконные функции, не обновляются автоматически." -#: rewrite/rewriteHandler.c:2694 +#: rewrite/rewriteHandler.c:2703 msgid "" "Views that return set-returning functions are not automatically updatable." msgstr "" "Представления, возвращающие функции с результатом-множеством, не обновляются " "автоматически." -#: rewrite/rewriteHandler.c:2701 rewrite/rewriteHandler.c:2705 -#: rewrite/rewriteHandler.c:2713 +#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 +#: rewrite/rewriteHandler.c:2722 msgid "" "Views that do not select from a single table or view are not automatically " "updatable." @@ -24719,22 +25644,22 @@ msgstr "" "Представления, выбирающие данные не из одной таблицы или представления, не " "обновляются автоматически." -#: rewrite/rewriteHandler.c:2716 +#: rewrite/rewriteHandler.c:2725 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Представления, содержащие TABLESAMPLE, не обновляются автоматически." -#: rewrite/rewriteHandler.c:2740 +#: rewrite/rewriteHandler.c:2749 msgid "Views that have no updatable columns are not automatically updatable." msgstr "" "Представления, не содержащие обновляемых столбцов, не обновляются " "автоматически." -#: rewrite/rewriteHandler.c:3121 rewrite/rewriteHandler.c:3156 +#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 #, c-format msgid "cannot insert into view \"%s\"" msgstr "вставить данные в представление \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3124 +#: rewrite/rewriteHandler.c:3133 #, c-format msgid "" "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or " @@ -24743,12 +25668,12 @@ msgstr "" "Чтобы представление допускало добавление данных, установите триггер INSTEAD " "OF INSERT или безусловное правило ON INSERT DO INSTEAD." -#: rewrite/rewriteHandler.c:3129 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 #, c-format msgid "cannot update view \"%s\"" msgstr "изменить данные в представлении \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3132 +#: rewrite/rewriteHandler.c:3141 #, c-format msgid "" "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an " @@ -24757,12 +25682,12 @@ msgstr "" "Чтобы представление допускало изменение данных, установите триггер INSTEAD " "OF UPDATE или безусловное правило ON UPDATE DO INSTEAD." -#: rewrite/rewriteHandler.c:3137 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 #, c-format msgid "cannot delete from view \"%s\"" msgstr "удалить данные из представления \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3140 +#: rewrite/rewriteHandler.c:3149 #, c-format msgid "" "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an " @@ -24771,7 +25696,7 @@ msgstr "" "Чтобы представление допускало удаление данных, установите триггер INSTEAD OF " "DELETE или безусловное правило ON DELETE DO INSTEAD." -#: rewrite/rewriteHandler.c:3159 +#: rewrite/rewriteHandler.c:3168 #, c-format msgid "" "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT " @@ -24780,7 +25705,7 @@ msgstr "" "Чтобы представление допускало добавление данных посредством MERGE, создайте " "триггер INSTEAD OF INSERT." -#: rewrite/rewriteHandler.c:3168 +#: rewrite/rewriteHandler.c:3177 #, c-format msgid "" "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE " @@ -24789,7 +25714,7 @@ msgstr "" "Чтобы представление допускало изменение данных посредством MERGE, создайте " "триггер INSTEAD OF UPDATE." -#: rewrite/rewriteHandler.c:3177 +#: rewrite/rewriteHandler.c:3186 #, c-format msgid "" "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE " @@ -24798,27 +25723,27 @@ msgstr "" "Чтобы представление допускало удаление данных посредством MERGE, создайте " "триггер INSTEAD OF DELETE." -#: rewrite/rewriteHandler.c:3352 +#: rewrite/rewriteHandler.c:3361 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "вставить данные в столбец \"%s\" представления \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3360 +#: rewrite/rewriteHandler.c:3369 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "изменить данные в столбце \"%s\" представления \"%s\" нельзя" -#: rewrite/rewriteHandler.c:3368 +#: rewrite/rewriteHandler.c:3377 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "столбец \"%s\" представления \"%s\" не допускает объединение данных" -#: rewrite/rewriteHandler.c:3396 +#: rewrite/rewriteHandler.c:3405 #, c-format msgid "cannot merge into view \"%s\"" msgstr "представление \"%s\" не допускает объединение данных" -#: rewrite/rewriteHandler.c:3398 +#: rewrite/rewriteHandler.c:3407 #, c-format msgid "" "MERGE is not supported for views with INSTEAD OF triggers for some actions " @@ -24827,7 +25752,7 @@ msgstr "" "MERGE не поддерживается для представлений, имеющих триггеры INSTEAD OF для " "некоторых, но не всех действий." -#: rewrite/rewriteHandler.c:3399 +#: rewrite/rewriteHandler.c:3408 #, c-format msgid "" "To enable merging into the view, either provide a full set of INSTEAD OF " @@ -24836,7 +25761,7 @@ msgstr "" "Чтобы представление допускало объединение данных, или предоставьте полный " "набор триггеров INSTEAD OF, или удалите существующие триггеры INSTEAD OF." -#: rewrite/rewriteHandler.c:3912 +#: rewrite/rewriteHandler.c:3923 #, c-format msgid "" "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in " @@ -24845,7 +25770,7 @@ msgstr "" "правила DO INSTEAD NOTIFY не поддерживаются в операторах, изменяющих данные, " "в WITH" -#: rewrite/rewriteHandler.c:3923 +#: rewrite/rewriteHandler.c:3934 #, c-format msgid "" "DO INSTEAD NOTHING rules are not supported for data-modifying statements in " @@ -24854,7 +25779,7 @@ msgstr "" "правила DO INSTEAD NOTHING не поддерживаются в операторах, изменяющих " "данные, в WITH" -#: rewrite/rewriteHandler.c:3937 +#: rewrite/rewriteHandler.c:3948 #, c-format msgid "" "conditional DO INSTEAD rules are not supported for data-modifying statements " @@ -24863,13 +25788,13 @@ msgstr "" "условные правила DO INSTEAD не поддерживаются для операторов, изменяющих " "данные, в WITH" -#: rewrite/rewriteHandler.c:3941 +#: rewrite/rewriteHandler.c:3952 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "" "правила DO ALSO не поддерживаются для операторов, изменяющих данные, в WITH" -#: rewrite/rewriteHandler.c:3946 +#: rewrite/rewriteHandler.c:3957 #, c-format msgid "" "multi-statement DO INSTEAD rules are not supported for data-modifying " @@ -24878,50 +25803,50 @@ msgstr "" "составные правила DO INSTEAD не поддерживаются для операторов, изменяющих " "данные, в WITH" -#: rewrite/rewriteHandler.c:4206 +#: rewrite/rewriteHandler.c:4217 msgid "" "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "" "Представления в сочетании с правилами DO INSTEAD с условиями не обновляются " "автоматически." -#: rewrite/rewriteHandler.c:4303 +#: rewrite/rewriteHandler.c:4314 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "выполнить INSERT RETURNING для отношения \"%s\" нельзя" -#: rewrite/rewriteHandler.c:4305 +#: rewrite/rewriteHandler.c:4316 #, 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:4310 +#: rewrite/rewriteHandler.c:4321 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "выполнить UPDATE RETURNING для отношения \"%s\" нельзя" -#: rewrite/rewriteHandler.c:4312 +#: rewrite/rewriteHandler.c:4323 #, 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:4317 +#: rewrite/rewriteHandler.c:4328 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "выполнить DELETE RETURNING для отношения \"%s\" нельзя" -#: rewrite/rewriteHandler.c:4319 +#: rewrite/rewriteHandler.c:4330 #, 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:4337 +#: rewrite/rewriteHandler.c:4348 #, c-format msgid "" "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or " @@ -24930,7 +25855,7 @@ msgstr "" "INSERT c предложением ON CONFLICT нельзя использовать с таблицей, для " "которой заданы правила INSERT или UPDATE" -#: rewrite/rewriteHandler.c:4394 +#: rewrite/rewriteHandler.c:4405 #, c-format msgid "" "WITH cannot be used in a query that is rewritten by rules into multiple " @@ -24939,17 +25864,17 @@ msgstr "" "WITH нельзя использовать в запросе, преобразованном правилами в несколько " "запросов" -#: rewrite/rewriteManip.c:1084 +#: rewrite/rewriteManip.c:1178 #, c-format msgid "conditional utility statements are not implemented" msgstr "условные служебные операторы не реализованы" -#: rewrite/rewriteManip.c:1431 +#: rewrite/rewriteManip.c:1523 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "условие WHERE CURRENT OF для представлений не реализовано" -#: rewrite/rewriteManip.c:1767 +#: rewrite/rewriteManip.c:1926 #, c-format msgid "" "NEW variables in ON UPDATE rules cannot reference columns that are part of a " @@ -24967,33 +25892,91 @@ 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:191 statistics/attribute_stats.c:935 +#: statistics/relation_stats.c:98 +#, fuzzy, c-format +msgid "Statistics cannot be modified during recovery." +msgstr "выполнить %s во время восстановления нельзя." + +#: statistics/attribute_stats.c:202 +#, fuzzy, c-format +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "указать %s и %s одновременно нельзя" + +#: statistics/attribute_stats.c:228 +#, fuzzy, c-format +msgid "must specify either \"%s\" or \"%s\"" +msgstr "указать %s и %s одновременно нельзя" + +#: statistics/attribute_stats.c:236 +#, fuzzy, c-format +msgid "cannot modify statistics on system column \"%s\"" +msgstr "присвоить значение системному столбцу \"%s\" нельзя" + +#: statistics/attribute_stats.c:300 +#, fuzzy, c-format +msgid "could not determine element type of column \"%s\"" +msgstr "не удалось определить тип данных аргумента %d" + +#: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 +#: statistics/attribute_stats.c:333 +#, fuzzy, c-format +msgid "Cannot set %s or %s." +msgstr "привести тип %s к %s нельзя" + +#: statistics/attribute_stats.c:317 +#, fuzzy, c-format +msgid "could not determine less-than operator for column \"%s\"" +msgstr "" +"не удалось определить правило сортировки для столбца представления \"%s\"" + +#: statistics/attribute_stats.c:332 +#, fuzzy, c-format +msgid "column \"%s\" is not a range type" +msgstr "столбец \"%s\" имеет не символьный тип" + +#: statistics/attribute_stats.c:735 +#, fuzzy, c-format +msgid "\"%s\" array must not contain null values" +msgstr "Массивы ACL не должны содержать значения null" + +#: statistics/attribute_stats.c:778 +#, fuzzy, c-format +msgid "maximum number of statistics slots exceeded: %d" +msgstr "превышен предел числа зафиксированных подтранзакций (%d)" + +#: statistics/attribute_stats.c:945 +#, fuzzy, 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\"" @@ -25007,27 +25990,123 @@ msgid "" msgstr "" "функция, возвращающая запись, вызвана в контексте, не допускающем этот тип" -#: storage/buffer/bufmgr.c:649 storage/buffer/bufmgr.c:805 +#: statistics/relation_stats.c:115 +#, fuzzy, c-format +msgid "argument \"%s\" must not be less than -1.0" +msgstr "%s должно быть меньше %s" + +#: statistics/stat_utils.c:44 +#, fuzzy, c-format +msgid "argument \"%s\" must not be null" +msgstr "аргумент %d: ключ не может быть NULL" + +#: statistics/stat_utils.c:71 +#, fuzzy, c-format +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "аргумент должен быть одномерным массивом или пустым" + +#: statistics/stat_utils.c:80 +#, fuzzy, c-format +msgid "argument \"%s\" array must not contain null values" +msgstr "Массивы ACL не должны содержать значения null" + +#: statistics/stat_utils.c:111 +#, fuzzy, c-format +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "в определении агрегата требуется msfunc, если указан mstype" + +#: statistics/stat_utils.c:178 +#, fuzzy, c-format +msgid "cannot modify statistics for relation \"%s\"" +msgstr "для отношения \"%s\" нельзя определить объект статистики" + +#: statistics/stat_utils.c:199 +#, fuzzy, c-format +msgid "cannot modify statistics for shared relation" +msgstr "для отношения \"%s\" нельзя определить объект статистики" + +#: statistics/stat_utils.c:252 +#, fuzzy, c-format +msgid "unrecognized argument name: \"%s\"" +msgstr "нераспознанное имя события \"%s\"" + +#: statistics/stat_utils.c:266 +#, fuzzy, c-format +msgid "argument \"%s\" has type %s, expected type %s" +msgstr "аргумент конструкции %s должен иметь тип %s, а не %s" + +#: statistics/stat_utils.c:307 +#, fuzzy, c-format +msgid "variadic arguments must be name/value pairs" +msgstr "" +"неверное число аргументов: объект должен составляться из пар ключ-значение" + +#: statistics/stat_utils.c:308 #, c-format -msgid "cannot access temporary tables of other sessions" -msgstr "обращаться к временным таблицам других сеансов нельзя" +msgid "" +"Provide an even number of variadic arguments that can be divided into pairs." +msgstr "" + +#: statistics/stat_utils.c:322 +#, fuzzy, c-format +msgid "name at variadic position %d is null" +msgstr "элемент пути в позиции %d равен NULL" -#: storage/buffer/bufmgr.c:1532 +#: statistics/stat_utils.c:326 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" -msgstr "неверная страница в блоке %u отношения %s; страница обнуляется" +msgid "name at variadic position %d has type %s, expected type %s" +msgstr "" + +#: storage/aio/aio.c:1340 +#, c-format +msgid "Only -1 or values bigger than 0 are valid." +msgstr "" + +#: storage/aio/method_io_uring.c:369 +msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." +msgstr "" + +#: storage/aio/method_io_uring.c:374 +#, fuzzy, c-format +msgid "Consider increasing \"ulimit -n\" to at least %d." +msgstr "Возможно, стоит увеличить параметр \"%s\"." + +#: storage/aio/method_io_uring.c:380 +#, fuzzy +msgid "The kernel does not support io_uring." +msgstr "Эта операция не поддерживается для индексов." + +#: storage/aio/method_io_uring.c:388 +#, fuzzy, c-format +msgid "could not setup io_uring queue: %m" +msgstr "не удалось задать переменную окружения: %m" + +#: storage/aio/method_io_uring.c:522 +#, c-format +msgid "completing I/O on behalf of process %d" +msgstr "" + +#: storage/aio/method_worker.c:382 +#, c-format +msgid "I/O worker executing I/O on behalf of process %d" +msgstr "" + +#: 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:2277 storage/buffer/localbuf.c:361 +#: 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 -#, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" +#: storage/buffer/bufmgr.c:2774 +#, fuzzy, c-format +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 " @@ -25036,32 +26115,102 @@ 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 -#, c-format -msgid "writing block %u of relation %s" +#: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 +#, fuzzy, c-format +msgid "writing block %u of relation \"%s\"" msgstr "запись блока %u отношения %s" -#: storage/buffer/localbuf.c:220 +#: storage/buffer/bufmgr.c:7313 +#, c-format +msgid "" +"zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u " +"of relation \"%s\"" +msgstr "" + +#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7344 +#, c-format +msgid "Block %u held the first zeroed page." +msgstr "" + +#: storage/buffer/bufmgr.c:7318 +#, fuzzy, 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] "Смотрите подробности в протоколе сервера." +msgstr[1] "Смотрите подробности в протоколе сервера." +msgstr[2] "Смотрите подробности в протоколе сервера." + +#: storage/buffer/bufmgr.c:7335 +#, fuzzy, c-format +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "неверная страница в блоке %u отношения %s" + +#: storage/buffer/bufmgr.c:7336 +#, c-format +msgid "Block %u held the first invalid page." +msgstr "" + +#: storage/buffer/bufmgr.c:7337 +#, fuzzy, c-format +msgid "See server log for the other %u invalid block(s)." +msgstr "Смотрите подробности в протоколе сервера." + +#: storage/buffer/bufmgr.c:7342 +#, fuzzy, c-format +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "неверная страница в блоке %u отношения %s; страница обнуляется" + +#: storage/buffer/bufmgr.c:7343 +#, fuzzy, c-format +msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "неверная страница в блоке %u отношения %s" + +#: storage/buffer/bufmgr.c:7345 +#, fuzzy, c-format +msgid "See server log for the other %u zeroed block(s)." +msgstr "Подробности запроса смотрите в протоколе сервера." + +#: storage/buffer/bufmgr.c:7350 +#, fuzzy, c-format +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "неверная страница в блоке %u отношения %s" + +#: storage/buffer/bufmgr.c:7351 +#, fuzzy, c-format +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "при очистке блока %u отношения \"%s.%s\"" + +#: storage/buffer/bufmgr.c:7352 +#, c-format +msgid "Block %u held the first ignored page." +msgstr "" + +#: storage/buffer/bufmgr.c:7353 +#, fuzzy, c-format +msgid "See server log for the other %u ignored block(s)." +msgstr "Смотрите подробности в протоколе сервера." + +#: 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 " @@ -25087,7 +26236,7 @@ msgstr "" 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" @@ -25095,115 +26244,120 @@ 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:1194 +#: 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 +#, fuzzy, 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 -#, c-format -msgid "System allows %d, server needs at least %d." +#: storage/file/fd.c:1072 +#, fuzzy, c-format +msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "Система может выделить: %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 -#, c-format -msgid "temporary file size exceeds temp_file_limit (%dkB)" +#: storage/file/fd.c:2286 +#, fuzzy, c-format +msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "размер временного файла превышает предел temp_file_limit (%d КБ)" -#: 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" @@ -25211,7 +26365,7 @@ 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: " @@ -25220,7 +26374,7 @@ msgstr "" "синхронизация каталога данных (подготовка к 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" @@ -25228,33 +26382,31 @@ msgstr "" "синхронизация каталога данных (fsync), прошло времени: %ld.%02d с, текущий " "путь: %s" -#: storage/file/fd.c:3950 -#, c-format -msgid "\"debug_io_direct\" is not supported on this platform." -msgstr "Параметр \"debug_io_direct\" не поддерживается в этой ОС." +#: storage/file/fd.c:4012 +#, fuzzy, c-format +msgid "\"%s\" is not supported on this platform." +msgstr "URL-адреса LDAP не поддерживаются в этой ОС" -#: storage/file/fd.c:3964 -#, c-format -msgid "Invalid list syntax in parameter \"%s\"" +#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 +#, fuzzy, c-format +msgid "Invalid list syntax in parameter \"%s\"." msgstr "Неверный формат списка в параметре \"%s\"." -#: storage/file/fd.c:3984 -#, c-format -msgid "Invalid option \"%s\"" +#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 +#, fuzzy, c-format +msgid "Invalid option \"%s\"." msgstr "Неверный параметр \"%s\"." -#: storage/file/fd.c:3997 -#, c-format -msgid "" -"\"debug_io_direct\" is not supported for WAL because XLOG_BLCKSZ is too small" +#: storage/file/fd.c:4060 +#, fuzzy, c-format +msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "" "режим \"debug_io_direct\" не поддерживается для WAL из-за слишком маленького " "размера XLOG_BLCKSZ" -#: storage/file/fd.c:4004 -#, c-format -msgid "" -"\"debug_io_direct\" is not supported for data because BLCKSZ is too small" +#: storage/file/fd.c:4068 +#, fuzzy, c-format +msgid "\"%s\" is not supported for data because %s is too small." msgstr "" "режим \"debug_io_direct\" не поддерживается для данных из-за слишком " "маленького размера BLCKSZ" @@ -25375,24 +26527,25 @@ msgstr "" "запрошенный размер сегмента DSM не совпадает с размером существующего " "сегмента" -#: storage/ipc/procarray.c:488 storage/lmgr/proc.c:357 -#: 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 " @@ -25401,7 +26554,7 @@ 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 " @@ -25410,13 +26563,28 @@ 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 +#, fuzzy, c-format +msgid "invalid cancel request with PID 0" +msgstr "неверный ID следующей транзакции" + +#: 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 "процесс с кодом %d, полученным в запросе на отмену, не найден" + #: storage/ipc/shm_mq.c:383 #, c-format msgid "cannot send a message of size %zu via shared memory queue" @@ -25428,12 +26596,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:2835 storage/lmgr/lock.c:4220 -#: storage/lmgr/lock.c:4285 storage/lmgr/lock.c:4635 -#: storage/lmgr/predicate.c:2468 storage/lmgr/predicate.c:2483 -#: storage/lmgr/predicate.c:3880 storage/lmgr/predicate.c:4927 -#: 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 "нехватка разделяемой памяти" @@ -25470,23 +26638,24 @@ 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:1453 -#: 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 " @@ -25494,7 +26663,14 @@ msgid "" msgstr "" "Только роли с атрибутом %s могут отменять запросы ролей с атрибутом %s." -#: storage/ipc/signalfuncs.c:137 +#: storage/ipc/signalfuncs.c:151 +#, fuzzy, c-format +msgid "" +"Only roles with privileges of the \"%s\" role may cancel autovacuum workers." +msgstr "" +"Выполнять COPY с записью в файл могут только роли с правами роли \"%s\"." + +#: storage/ipc/signalfuncs.c:158 #, c-format msgid "" "Only roles with privileges of the role whose query is being canceled or with " @@ -25503,241 +26679,249 @@ 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 -#, 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" +#: storage/ipc/signalfuncs.c:218 +#, fuzzy, c-format +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 не завершился за %lld мс" msgstr[1] "обслуживающий процесс с PID %d не завершился за %lld мс" msgstr[2] "обслуживающий процесс с PID %d не завершился за %lld мс" -#: 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 +#, fuzzy, 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" @@ -25745,7 +26929,7 @@ 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 " @@ -25754,7 +26938,12 @@ msgstr "" "В процессе восстановления для объектов базы данных может быть получена " "только блокировка RowExclusiveLock или менее сильная." -#: storage/lmgr/lock.c:3284 storage/lmgr/lock.c:3352 storage/lmgr/lock.c:3468 +#: storage/lmgr/lock.c:1185 +#, fuzzy, 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 " @@ -25786,13 +26975,13 @@ msgstr "" "в пуле недостаточно элементов для записи о потенциальном конфликте чтения/" "записи" -#: storage/lmgr/predicate.c:1686 +#: storage/lmgr/predicate.c:1696 #, c-format msgid "\"default_transaction_isolation\" is set to \"serializable\"." msgstr "" "Параметр \"default_transaction_isolation\" имеет значение \"serializable\"." -#: storage/lmgr/predicate.c:1687 +#: storage/lmgr/predicate.c:1697 #, c-format msgid "" "You can use \"SET default_transaction_isolation = 'repeatable read'\" to " @@ -25801,27 +26990,27 @@ msgstr "" "Чтобы изменить режим по умолчанию, выполните \"SET " "default_transaction_isolation = 'repeatable read'\"." -#: storage/lmgr/predicate.c:1738 +#: 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:1817 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:1818 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:3991 storage/lmgr/predicate.c:4027 -#: storage/lmgr/predicate.c:4060 storage/lmgr/predicate.c:4068 -#: storage/lmgr/predicate.c:4107 storage/lmgr/predicate.c:4337 -#: storage/lmgr/predicate.c:4656 storage/lmgr/predicate.c:4668 -#: storage/lmgr/predicate.c:4715 storage/lmgr/predicate.c:4751 +#: 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" @@ -25829,16 +27018,16 @@ msgstr "" "не удалось сериализовать доступ из-за зависимостей чтения/записи между " "транзакциями" -#: storage/lmgr/predicate.c:3993 storage/lmgr/predicate.c:4029 -#: storage/lmgr/predicate.c:4062 storage/lmgr/predicate.c:4070 -#: storage/lmgr/predicate.c:4109 storage/lmgr/predicate.c:4339 -#: storage/lmgr/predicate.c:4658 storage/lmgr/predicate.c:4670 -#: storage/lmgr/predicate.c:4717 storage/lmgr/predicate.c:4753 +#: 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:353 +#: storage/lmgr/proc.c:453 #, c-format msgid "" "number of requested standby connections exceeds " @@ -25847,7 +27036,7 @@ msgstr "" "число запрошенных подключений резервных серверов превышает " "\"max_wal_senders\" (сейчас: %d)" -#: storage/lmgr/proc.c:1546 +#: storage/lmgr/proc.c:1591 #, c-format msgid "" "process %d avoided deadlock for %s on %s by rearranging queue order after " @@ -25856,7 +27045,7 @@ msgstr "" "процесс %d избежал взаимоблокировки, ожидая в режиме %s блокировку \"%s\", " "изменив порядок очереди через %ld.%03d мс" -#: storage/lmgr/proc.c:1561 +#: storage/lmgr/proc.c:1606 #, c-format msgid "" "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms" @@ -25864,103 +27053,108 @@ msgstr "" "процесс %d обнаружил взаимоблокировку, ожидая в режиме %s блокировку \"%s\" " "в течение %ld.%03d мс" -#: storage/lmgr/proc.c:1570 +#: 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:1577 +#: 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:1594 +#: 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 +#, fuzzy, 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:1165 +#: 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:1220 +#: 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:1700 +#: storage/smgr/md.c:1832 #, c-format msgid "" "could not open file \"%s\" (target block %u): previous segment is only %u " @@ -25969,109 +27163,136 @@ msgstr "" "не удалось открыть файл file \"%s\" (целевой блок %u): недостаточно блоков в " "предыдущем сегменте (всего %u)" -#: storage/smgr/md.c:1714 +#: storage/smgr/md.c:1846 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "не удалось открыть файл file \"%s\" (целевой блок %u): %m" -#: tcop/backend_startup.c:85 +#: storage/smgr/smgr.c:1106 +#, fuzzy, c-format +msgid "file \"%s\"" +msgstr "удаляется файл \"%s\"" + +#: storage/smgr/smgr.c:1108 +#, fuzzy, c-format +msgid "block %u in file \"%s\"" +msgstr "время резервного копирования %s в файле \"%s\"" + +#: storage/smgr/smgr.c:1112 +#, fuzzy, c-format +msgid "blocks %u..%u in file \"%s\"" +msgstr "не удалось прочитать блоки %u..%u в файле \"%s\": %m" + +#: 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 "Режим горячего резерва отключён." + +#: 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 "" -#: tcop/backend_startup.c:289 +#: tcop/backend_startup.c:328 #, c-format -msgid "Hot standby mode is disabled." -msgstr "Режим горячего резерва отключён." +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 "получен запрос прямого SSL-соединения, но в нём нет расширения ALPN" -#: tcop/backend_startup.c:420 +#: tcop/backend_startup.c:459 #, c-format msgid "direct SSL connection accepted" msgstr "запрос прямого SSL-соединения принят" -#: tcop/backend_startup.c:430 +#: tcop/backend_startup.c:469 #, c-format msgid "direct SSL connection rejected" 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 "SSLRequest принят" -#: tcop/backend_startup.c:576 +#: tcop/backend_startup.c:600 #, c-format msgid "SSLRequest rejected" 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-" @@ -26080,138 +27301,155 @@ msgstr "" "Это может свидетельствовать об ошибке в клиентском ПО или о попытке атаки " "MITM." -#: tcop/backend_startup.c:627 +#: tcop/backend_startup.c:651 #, c-format msgid "GSSENCRequest accepted" msgstr "GSSENCRequest принят" -#: tcop/backend_startup.c:630 +#: tcop/backend_startup.c:654 #, c-format msgid "GSSENCRequest rejected" 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 +#, fuzzy, c-format +msgid "invalid length of cancel request packet" +msgstr "неверная длина стартового пакета" + +#: tcop/backend_startup.c:892 +#, fuzzy, c-format +msgid "invalid length of cancel key in cancel request packet" +msgstr "неверная длина стартового пакета" + +#: tcop/backend_startup.c:1022 +#, fuzzy, c-format +msgid "" +"Cannot specify log_connections option \"%s\" in a list with other options." +msgstr "" +"слот логической репликации \"%s\" не может быть указан в параметре \"%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" # [SM]: TO REVIEW -#: 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 " @@ -26220,120 +27458,120 @@ 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 " @@ -26344,7 +27582,7 @@ 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 " @@ -26353,18 +27591,18 @@ 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-" @@ -26374,114 +27612,90 @@ 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 "завершение процесса считывания журнала по команде администратора" + +#: 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 "" "Значение \"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\", " @@ -26491,49 +27705,60 @@ msgstr "" "\"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 "" + +#: 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 " @@ -26542,19 +27767,19 @@ 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:942 tcop/pquery.c:1696 +#: tcop/pquery.c:940 tcop/pquery.c:1684 #, c-format msgid "cursor can only scan forward" msgstr "курсор может сканировать только вперёд" -#: tcop/pquery.c:943 tcop/pquery.c:1697 +#: tcop/pquery.c:941 tcop/pquery.c:1685 #, c-format msgid "Declare it with SCROLL option to enable backward scan." msgstr "Добавьте в его объявление SCROLL, чтобы он мог перемещаться назад." @@ -26584,68 +27809,82 @@ 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 +#, fuzzy, c-format +msgid "cannot create statistics on the specified relation" +msgstr "для отношения \"%s\" нельзя определить объект статистики" + +#: tcop/utility.c:1887 +#, fuzzy, c-format +msgid "" +"CREATE STATISTICS only supports tables, foreign tables and materialized " +"views." +msgstr "" +"отношение \"%s\" - это не таблица, не сторонняя таблица и не " +"материализованное представление" + +#: 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 "нераспознанный параметр словаря simple: \"%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" @@ -26724,55 +27963,55 @@ 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 "неверный флаг аффиксов \"%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 "флаг аффикса \"%s\" вне диапазона" -#: tsearch/spell.c:415 +#: tsearch/spell.c:417 #, c-format msgid "invalid character in affix flag \"%s\"" msgstr "неверный символ во флаге аффикса \"%s\"" -#: tsearch/spell.c:435 +#: tsearch/spell.c:437 #, c-format msgid "invalid affix flag \"%s\" with \"long\" flag value" msgstr "неверный флаг аффиксов \"%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 "неверное указание аффикса \"%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 "не удалось открыть файл аффиксов \"%s\": %m" -#: tsearch/spell.c:1277 +#: tsearch/spell.c:1281 #, c-format msgid "" "Ispell dictionary supports only \"default\", \"long\", and \"num\" flag " @@ -26781,36 +28020,31 @@ 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 "файл аффиксов содержит команды и в старом, и в новом стиле" -#: 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 @@ -26823,12 +28057,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" @@ -26858,43 +28092,102 @@ msgstr "%s должно быть больше нуля" msgid "%s must be >= 0" msgstr "%s должно быть >= 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:1255 +#: utils/activity/pgstat.c:1426 #, c-format msgid "invalid statistics kind: \"%s\"" msgstr "неверный вид статистики: \"%s\"" -#: utils/activity/pgstat.c:1335 +#: utils/activity/pgstat.c:1471 +#, fuzzy, c-format +msgid "custom cumulative statistics name is invalid" +msgstr "неверное имя пользовательского менеджера ресурсов" + +#: utils/activity/pgstat.c:1472 +#, fuzzy, c-format +msgid "Provide a non-empty name for the custom cumulative statistics." +msgstr "Задайте непустое имя для менеджера ресурсов." + +#: utils/activity/pgstat.c:1475 +#, fuzzy, c-format +msgid "custom cumulative statistics ID %u is out of range" +msgstr "идентификатор пользовательского менеджера ресурсов %d вне диапазона" + +#: utils/activity/pgstat.c:1476 +#, fuzzy, c-format +msgid "Provide a custom cumulative statistics ID between %u and %u." +msgstr "Задайте идентификатор менеджера ресурсов от %d до %d." + +#: utils/activity/pgstat.c:1481 utils/activity/pgstat.c:1508 +#: utils/activity/pgstat.c:1521 +#, fuzzy, c-format +msgid "failed to register custom cumulative statistics \"%s\" with ID %u" +msgstr "" +"не удалось зарегистрировать пользовательский менеджер ресурсов \"%s\" с ID %d" + +#: utils/activity/pgstat.c:1482 +#, fuzzy, 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 +#, fuzzy, c-format +msgid "" +"Custom cumulative statistics \"%s\" already registered with the same ID." +msgstr "" +"Пользовательский менеджер ресурсов \"%s\" уже зарегистрирован с тем же ID." + +#: utils/activity/pgstat.c:1522 +#, fuzzy, c-format +msgid "Existing cumulative statistics with ID %u has the same name." +msgstr "Существующий менеджер ресурсов с ID %d имеет то же имя." + +#: utils/activity/pgstat.c:1528 +#, fuzzy, c-format +msgid "registered custom cumulative statistics \"%s\" with ID %u" +msgstr "зарегистрирован пользовательский менеджер ресурсов \"%s\" с ID %d" + +#: utils/activity/pgstat.c:1597 #, c-format msgid "could not open temporary statistics file \"%s\": %m" msgstr "не удалось открыть временный файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1455 +#: utils/activity/pgstat.c:1718 #, c-format msgid "could not write temporary statistics file \"%s\": %m" msgstr "не удалось записать во временный файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1464 +#: utils/activity/pgstat.c:1727 #, c-format msgid "could not close temporary statistics file \"%s\": %m" msgstr "не удалось закрыть временный файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1472 -#, c-format -msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" -msgstr "" -"не удалось переименовать временный файл статистики из \"%s\" в \"%s\": %m" - -#: utils/activity/pgstat.c:1521 +#: utils/activity/pgstat.c:1781 #, c-format msgid "could not open statistics file \"%s\": %m" msgstr "не удалось открыть файл статистики \"%s\": %m" -#: utils/activity/pgstat.c:1683 +#: utils/activity/pgstat.c:2021 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "файл статистики \"%s\" испорчен" @@ -26904,202 +28197,202 @@ msgstr "файл статистики \"%s\" испорчен" msgid "function call to dropped function" msgstr "вызвана функция, которая была удалена" -#: utils/activity/pgstat_xact.c:362 -#, c-format -msgid "resetting existing statistics for kind %s, db=%u, oid=%u" +#: utils/activity/pgstat_xact.c:366 +#, fuzzy, c-format +msgid "resetting existing statistics for kind %s, db=%u, oid=%" msgstr "сбрасывается существующая статистика вида %s, db=%u, oid=%u" -#: utils/activity/wait_event.c:207 utils/activity/wait_event.c:232 +#: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format msgid "wait event \"%s\" already exists in type \"%s\"" msgstr "событие ожидания \"%s\" в типе \"%s\" уже существует" -#: utils/activity/wait_event.c:246 +#: utils/activity/wait_event.c:245 #, c-format msgid "too many custom wait events" 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 "назначившим права считается пользователь с ID %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:3184 utils/adt/varlena.c:4118 #, 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" @@ -27184,7 +28477,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 "" @@ -27197,14 +28490,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" @@ -27222,7 +28515,7 @@ msgstr "" "(%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 нет функции ввода двоичных данных" @@ -27233,7 +28526,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 нет функции вывода двоичных данных" @@ -27245,11 +28538,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 "неверное число индексов массива" @@ -27289,90 +28582,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" @@ -27403,21 +28696,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:323 +#: 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\"" @@ -27428,23 +28721,23 @@ msgstr "неверный синтаксис для типа %s: \"%s\"" msgid "money out of range" 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" @@ -27459,187 +28752,188 @@ 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 "дата вне диапазона для типа timestamp" -#: 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 "timestamp вне диапазона" -#: 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 "бесконечный интервал нельзя привести к типу time" -#: 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 "бесконечный интервал нельзя добавить к значению time" -#: 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 "бесконечный интервал нельзя вычесть из значения time" -#: 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 "значение поля типа date/time вне диапазона: \"%s\"" -#: utils/adt/datetime.c:4110 -#, c-format -msgid "Perhaps you need a different \"datestyle\" setting." +#: utils/adt/datetime.c:4232 +#, fuzzy, c-format +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 "значение поля interval вне диапазона: \"%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 " @@ -27653,17 +28947,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\"." @@ -27691,41 +28990,41 @@ 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 "при декодировании base64 обнаружен неверный символ \"%.*s\"" -#: 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" @@ -27763,200 +29062,219 @@ 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\" вне диапазона для типа real" -#: 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:4093 #, c-format msgid "smallint out of range" msgstr "smallint вне диапазона" -#: 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 +#, fuzzy, c-format +msgid "cannot use \"RN\" twice" +msgstr "нельзя использовать \"S\" дважды" + +#: 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 +#, fuzzy, c-format +msgid "\"RN\" is incompatible with other formats" +msgstr "\"EEEE\" несовместим с другими форматами" + +#: utils/adt/formatting.c:1364 +#, fuzzy, c-format +msgid "\"RN\" may only be used together with \"FM\"." +msgstr "" +"\"EEEE\" может использоваться только с шаблонами цифр и десятичной точки." + +#: utils/adt/formatting.c:1445 #, c-format msgid "invalid datetime format separator: \"%s\"" msgstr "неверный разделитель в формате datetime: \"%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 +# well-spelled: категоризацию +#: utils/adt/formatting.c:1853 +#, fuzzy, 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." @@ -27964,27 +29282,27 @@ msgstr "" "Не смешивайте Григорианский стиль дат (недель) с 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." @@ -27992,135 +29310,131 @@ 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 "входная строка короче, чем требует формат datetime" -#: utils/adt/formatting.c:3950 +#: utils/adt/formatting.c:3698 #, c-format msgid "trailing characters remain in input string after datetime format" msgstr "" "после разбора формата datetime во входной строке остались дополнительные " "символы" -#: 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 "в формате datetime указан часовой пояс, но отсутствует время" -#: 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 "в формате datetime нет ни даты, ни времени" -#: 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 -#, c-format -msgid "\"RN\" not supported for input" -msgstr "\"RN\" не поддерживается при вводе" +#: utils/adt/formatting.c:6111 +#, fuzzy, c-format +msgid "invalid Roman numeral" +msgstr "неверное имя схемы" #: utils/adt/genfile.c:84 #, c-format @@ -28132,9 +29446,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 "запрошенная длина слишком велика" @@ -28149,11 +29463,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" @@ -28205,8 +29514,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 "размер шага не может быть нулевым" @@ -28220,9 +29529,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:4143 #, c-format msgid "bigint out of range" msgstr "bigint вне диапазона" @@ -28232,50 +29541,50 @@ 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" @@ -28342,23 +29651,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 байт)" @@ -28395,108 +29704,108 @@ 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 " @@ -28505,38 +29814,38 @@ msgstr "" "Передайте отличный от NULL аргумент-запись или вызовите эту функцию в " "предложении 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 "требуется режим материализации, но он недопустим в этом контексте" -#: 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\", " @@ -28545,12 +29854,12 @@ 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\"." @@ -28558,7 +29867,7 @@ 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 " @@ -28567,55 +29876,55 @@ 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 " @@ -28623,7 +29932,7 @@ msgid "" 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\"" @@ -28638,71 +29947,72 @@ 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 может применяться только к объекту" # skip-rule: space-before-period -#: 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 "метод .%s() в jsonpath может применяться только к массиву" -#: utils/adt/jsonpath_exec.c:1167 utils/adt/jsonpath_exec.c:1193 -#, c-format -msgid "" -"argument \"%s\" of jsonpath item method .%s() is invalid for type double " -"precision" +#: 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 +#, fuzzy, c-format +msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type %s" msgstr "" -"аргумент \"%s\" метода элемента jsonpath .%s() некорректен для типа double " -"precision" +"аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа bigint" -#: 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 "метод элемента jsonpath .%s() не принимает значения NaN и Infinity" # skip-rule: space-before-period -#: 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" @@ -28710,22 +30020,8 @@ msgstr "" "метод .%s() в jsonpath может применяться только к строковому или числовому " "значению" -#: 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 "" -"аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа bigint" - -#: 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 "" -"аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа boolean" - # skip-rule: space-before-period -#: 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 " @@ -28734,34 +30030,20 @@ msgstr "" "метод .%s() в jsonpath может применяться только к булевскому, строковому или " "числовому значению" -#: 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 "" -"аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа numeric" - -#: 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 "" -"аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа integer" - # skip-rule: space-before-period -#: 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, " @@ -28770,84 +30052,84 @@ msgstr "" "метод .%s() в jsonpath может применяться только к булевскому, строковому, " "числовому значению или к дате/времени" -#: 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 "" "левый операнд оператора %s в jsonpath не является одним числовым значением" -#: 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 "" "правый операнд оператора %s в jsonpath не является одним числовым значением" -#: 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 "" "операнд унарного оператора %s в jsonpath не является числовым значением" # skip-rule: space-before-period -#: 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 "метод .%s() в jsonpath может применяться только к числовому значению" # skip-rule: space-before-period -#: 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 "метод .%s() в jsonpath может применяться только к строке" -#: 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 "" "Воспользуйтесь аргументом datetime для указания формата входных данных." -#: 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 "точность времени в аргументе метода jsonpath .%s() некорректная" # skip-rule: space-before-period -#: 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 "метод .%s() в jsonpath может применяться только к объекту" -#: 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 "преобразовать значение типа %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." @@ -28855,27 +30137,27 @@ 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\" must return single item when no " @@ -28884,14 +30166,14 @@ 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 "" "Используйте предложение 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 must return single item when no wrapper " @@ -28900,14 +30182,14 @@ 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\" 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 must return single scalar item" msgstr "" @@ -28919,42 +30201,43 @@ msgstr "" msgid "levenshtein argument exceeds maximum length of %d characters" msgstr "длина аргумента levenshtein() превышает максимум (%d симв.)" -#: utils/adt/like.c:159 -#, c-format -msgid "nondeterministic collations are not supported for LIKE" -msgstr "недетерминированные правила сортировки не поддерживаются для LIKE" +#: utils/adt/like.c:162 +#, fuzzy, c-format +msgid "could not determine which collation to use for LIKE" +msgstr "не удалось определить, какой порядок сортировки использовать для ILIKE" -#: 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:803 #, 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:804 #, 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" @@ -28979,7 +30262,7 @@ msgstr "" "Преобразование из macaddr8 в macaddr возможно только для адресов, содержащих " "FF и FE в 4-ом и 5-ом байтах слева, например xx:xx:xx:ff:fe:xx:xx:xx." -#: 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" @@ -29096,8 +30379,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" @@ -29125,157 +30408,157 @@ 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 "нижняя граница не может быть NaN" -#: utils/adt/numeric.c:4260 +#: utils/adt/numeric.c:4364 #, c-format msgid "lower bound cannot be infinity" msgstr "нижняя граница не может быть бесконечностью" -#: utils/adt/numeric.c:4267 +#: utils/adt/numeric.c:4371 #, c-format msgid "upper bound cannot be NaN" msgstr "верхняя граница не может быть NaN" -#: utils/adt/numeric.c:4271 +#: utils/adt/numeric.c:4375 #, c-format msgid "upper bound cannot be infinity" 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 " @@ -29284,13 +30567,13 @@ 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" @@ -29301,27 +30584,27 @@ msgstr "нижняя граница должна быть меньше или р 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" @@ -29332,55 +30615,22 @@ msgstr "запрошенный символ не подходит для код msgid "percentile value %g is not between 0 and 1" msgstr "значение перцентиля %g лежит не в диапазоне 0..1" -#: utils/adt/pg_locale.c:326 utils/adt/pg_locale.c:358 +#: utils/adt/pg_locale.c:304 utils/adt/pg_locale.c:336 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "имя локали \"%s\" содержит не-ASCII символы" -#: utils/adt/pg_locale.c:1507 -#, c-format -msgid "could not open collator for locale \"%s\" with rules \"%s\": %s" -msgstr "" -"не удалось открыть сортировщик для локали \"%s\" с правилами \"%s\": %s" - -#: utils/adt/pg_locale.c:1518 utils/adt/pg_locale.c:2992 -#: utils/adt/pg_locale.c:3065 -#, c-format -msgid "ICU is not supported in this build" -msgstr "ICU не поддерживается в данной сборке" - -#: utils/adt/pg_locale.c:1546 -#, c-format -msgid "could not create locale \"%s\": %m" -msgstr "не удалось создать локаль \"%s\": %m" - -#: utils/adt/pg_locale.c:1549 -#, c-format -msgid "" -"The operating system could not find any locale data for the locale name " -"\"%s\"." -msgstr "Операционная система не может найти данные локали с именем \"%s\"." - -#: utils/adt/pg_locale.c:1670 -#, c-format -msgid "" -"collations with different collate and ctype values are not supported on this " -"platform" -msgstr "" -"правила сортировки с разными значениями collate и ctype не поддерживаются на " -"этой платформе" - -#: utils/adt/pg_locale.c:1717 +#: utils/adt/pg_locale.c:1120 #, c-format msgid "collation \"%s\" has no actual version, but a version was recorded" msgstr "для правила сортировки \"%s\", лишённого версии, была записана версия" -#: utils/adt/pg_locale.c:1723 +#: utils/adt/pg_locale.c:1126 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "несовпадение версии для правила сортировки \"%s\"" -#: utils/adt/pg_locale.c:1725 +#: utils/adt/pg_locale.c:1128 #, c-format msgid "" "The collation in the database was created using version %s, but the " @@ -29389,7 +30639,7 @@ msgstr "" "Правило сортировки в базе данных было создано с версией %s, но операционная " "система предоставляет версию %s." -#: utils/adt/pg_locale.c:1728 +#: utils/adt/pg_locale.c:1131 #, c-format msgid "" "Rebuild all objects affected by this collation and run ALTER COLLATION %s " @@ -29399,98 +30649,136 @@ msgstr "" "ALTER COLLATION %s REFRESH VERSION либо соберите PostgreSQL с правильной " "версией библиотеки." -#: utils/adt/pg_locale.c:1772 utils/adt/pg_locale.c:2556 -#: utils/adt/pg_locale.c:2581 +#: utils/adt/pg_locale.c:1484 utils/adt/pg_locale.c:1511 +#: utils/adt/pg_locale_builtin.c:188 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "неверное имя локали \"%s\" для встроенного провайдера" -#: utils/adt/pg_locale.c:1814 +#: utils/adt/pg_locale.c:1576 #, 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:1839 +#: utils/adt/pg_locale.c:1585 utils/adt/pg_locale.c:1660 +#: utils/adt/pg_locale_icu.c:215 #, c-format -msgid "could not get collation version for locale \"%s\": error code %lu" +msgid "ICU is not supported in this build" +msgstr "ICU не поддерживается в данной сборке" + +#: utils/adt/pg_locale.c:1618 +#, 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 +#, c-format +msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." msgstr "" -"не удалось получить версию правила сортировки для локали \"%s\" (код ошибки: " -"%lu)" +"Чтобы отключить проверку локалей ICU, установите для параметра \"%s\" " +"значение \"%s\"." -#: utils/adt/pg_locale.c:1895 utils/adt/pg_locale.c:1908 +#: utils/adt/pg_locale.c:1648 #, c-format -msgid "could not convert string to UTF-16: error code %lu" -msgstr "не удалось преобразовать строку в UTF-16 (код ошибки: %lu)" +msgid "ICU locale \"%s\" has unknown language \"%s\"" +msgstr "для локали ICU \"%s\" получен неизвестный язык \"%s\"" -#: utils/adt/pg_locale.c:1920 +#: utils/adt/pg_locale_icu.c:264 #, c-format -msgid "could not compare Unicode strings: %m" -msgstr "не удалось сравнить строки в Unicode: %m" +msgid "could not get language from locale \"%s\": %s" +msgstr "не удалось определить язык для локали \"%s\": %s" -#: utils/adt/pg_locale.c:2094 +#: 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_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:2313 utils/adt/pg_locale.c:2345 +#: 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:2635 +#: 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:2656 utils/adt/pg_locale.c:2672 +#: 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:2697 +#: utils/adt/pg_locale_icu.c:851 #, c-format msgid "encoding \"%s\" not supported by ICU" msgstr "ICU не поддерживает кодировку \"%s\"" -#: utils/adt/pg_locale.c:2704 +#: 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:2722 utils/adt/pg_locale.c:2741 -#: utils/adt/pg_locale.c:2797 utils/adt/pg_locale.c:2808 +#: 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:2983 +#: 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:3024 +#: 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:3026 utils/adt/pg_locale.c:3055 +#: 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:3053 +#: utils/adt/pg_locale_libc.c:793 #, c-format -msgid "ICU locale \"%s\" has unknown language \"%s\"" -msgstr "для локали 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_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.c:3204 +#: utils/adt/pg_locale_libc.c:1000 #, c-format msgid "invalid multibyte character for locale" msgstr "неверный многобайтный символ для локали" -#: utils/adt/pg_locale.c:3205 +#: utils/adt/pg_locale_libc.c:1001 #, c-format msgid "" "The server's LC_CTYPE locale is probably incompatible with the database " @@ -29508,23 +30796,23 @@ 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\", " @@ -29533,7 +30821,7 @@ msgstr "" "Допустимые счётчики: \"archiver\", \"bgwriter\", \"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" @@ -29558,72 +30846,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 "аргумент flags конструктора диапазона не может быть 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:2022 utils/adt/varlena.c:4475 #, c-format msgid "regular expression failed: %s" msgstr "ошибка в регулярном выражении: %s" @@ -29642,15 +30930,15 @@ msgstr "" "Если вы хотите вызвать regexp_replace() с параметром start, явно приведите " "четвёртый аргумент к целочисленному типу." -#: 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:6820 utils/misc/guc.c:6854 +#: 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 #, c-format msgid "invalid value for parameter \"%s\": %d" msgstr "неверное значение параметра \"%s\": %d" -#: utils/adt/regexp.c:936 +#: utils/adt/regexp.c:939 #, c-format msgid "" "SQL regular expression may not contain more than two escape-double-quote " @@ -29660,19 +30948,19 @@ msgstr "" "(экранированных кавычек)" #. 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: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 #, c-format msgid "%s does not support the \"global\" option" msgstr "%s не поддерживает режим \"global\"" -#: utils/adt/regexp.c:1312 +#: utils/adt/regexp.c:1338 #, c-format msgid "Use the regexp_matches function instead." msgstr "Вместо неё используйте функцию regexp_matches." -#: utils/adt/regexp.c:1500 +#: utils/adt/regexp.c:1526 #, c-format msgid "too many regular expression matches" msgstr "слишком много совпадений для регулярного выражения" @@ -29687,19 +30975,19 @@ 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:10509 -#: utils/adt/ruleutils.c:10722 +#: 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 "слишком много аргументов" @@ -29710,7 +30998,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:3481 utils/adt/varlena.c:3486 #, c-format msgid "invalid name syntax" msgstr "ошибка синтаксиса в имени" @@ -29735,39 +31023,39 @@ 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 и не null." -#: 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 " @@ -29776,12 +31064,12 @@ 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 " @@ -29790,33 +31078,52 @@ 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 +#, fuzzy, c-format +msgid "" +"update or delete on table \"%s\" violates RESTRICT setting of foreign key " +"constraint \"%s\" on table \"%s\"" +msgstr "" +"UPDATE или DELETE в таблице \"%s\" нарушает ограничение внешнего ключа " +"\"%s\" таблицы \"%s\"" + +#: utils/adt/ri_triggers.c:2792 +#, fuzzy, c-format +msgid "Key (%s)=(%s) is referenced from table \"%s\"." +msgstr "Ссылки на ключ (%s)=(%s) остаются в таблице \"%s\"." + +#: utils/adt/ri_triggers.c:2795 +#, fuzzy, 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 " @@ -29825,7 +31132,7 @@ 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\"." @@ -29879,148 +31186,177 @@ msgstr "" 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:2694 +#: utils/adt/ruleutils.c:2740 #, c-format msgid "input is a query, not an expression" msgstr "на вход поступил запрос, а не выражение" -#: utils/adt/ruleutils.c:2706 +#: utils/adt/ruleutils.c:2752 #, c-format msgid "expression contains variables of more than one relation" msgstr "выражение содержит переменные из нескольких отношений" -#: utils/adt/ruleutils.c:2713 +#: utils/adt/ruleutils.c:2759 #, c-format msgid "expression contains variables" msgstr "выражение содержит переменные" -#: utils/adt/ruleutils.c:5246 +#: 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 +#, fuzzy, c-format +msgid "cannot look at latest visible tid for relation \"%s.%s\"" +msgstr "для отношения \"%s\" нельзя определить объект статистики" + +#: utils/adt/tid.c:356 +#, c-format +msgid "ctid isn't of type TID" +msgstr "" + +#: utils/adt/tid.c:364 +#, c-format +msgid "currtid cannot handle views with no CTID" +msgstr "" + +#: utils/adt/tid.c:369 +#, c-format +msgid "the view has no rules" +msgstr "" + +#: utils/adt/tid.c:381 +#, fuzzy, c-format +msgid "only one select rule is allowed in views" +msgstr "допускается только одно пространство имён по умолчанию" + +#: 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 "timestamp вне диапазона: \"%s\"" + +#: utils/adt/timestamp.c:396 #, c-format msgid "timestamp(%d) precision must be between %d and %d" msgstr "точность timestamp(%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 "timestamp вне диапазона: %d-%02d-%02d %d:%02d:%02g" -#: utils/adt/timestamp.c:744 +#: utils/adt/timestamp.c:735 #, c-format msgid "timestamp cannot be NaN" msgstr "timestamp не может быть 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 "timestamp вне диапазона: \"%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 "interval вне диапазона" -#: 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 "значения timestamp нельзя подогнать под бесконечные интервалы" -#: 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 "" "значения timestamp нельзя подогнать под интервалы, содержащие месяцы или годы" -#: 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 "размер шага не может быть бесконечным" @@ -30109,32 +31445,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)" @@ -30215,7 +31551,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 "не удалось сгенерировать случайные значения" @@ -30260,9 +31596,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:3102 +#: utils/adt/varlena.c:3180 #, c-format msgid "negative substring length not allowed" msgstr "подстрока должна иметь неотрицательную длину" @@ -30288,7 +31624,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:3337 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 #, c-format msgid "new bit must be 0 or 1" msgstr "значением бита должен быть 0 или 1" @@ -30303,98 +31639,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:1520 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 #, 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:1864 #, 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:3268 utils/adt/varlena.c:3335 #, 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 -#, c-format -msgid "index %lld out of valid range, 0..%lld" -msgstr "индекс %lld вне диапазона 0..%lld" +#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#, fuzzy, c-format +msgid "index % out of valid range, 0..%" +msgstr "индекс %d вне диапазона 0..%d" -#: utils/adt/varlena.c:4385 +#: utils/adt/varlena.c:4587 #, c-format msgid "field position must not be zero" msgstr "позиция поля должна быть отлична от 0" -#: utils/adt/varlena.c:5630 +#: utils/adt/varlena.c:5832 #, 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:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "Для представления одного знака \"%%\" запишите \"%%%%\"." -#: utils/adt/varlena.c:5763 utils/adt/varlena.c:5884 +#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 #, 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:5978 utils/adt/varlena.c:6035 #, c-format msgid "too few arguments for format()" msgstr "мало аргументов для format()" -#: utils/adt/varlena.c:5929 utils/adt/varlena.c:6111 +#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 #, c-format msgid "number is out of range" msgstr "число вне диапазона" -#: utils/adt/varlena.c:5992 utils/adt/varlena.c:6020 +#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 #, 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:6215 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "указание аргумента ширины должно оканчиваться \"$\"" -#: utils/adt/varlena.c:6058 +#: utils/adt/varlena.c:6260 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "значения null нельзя представить в виде SQL-идентификатора" -#: utils/adt/varlena.c:6266 +#: utils/adt/varlena.c:6468 #, 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:6481 #, c-format msgid "invalid normalization form: %s" msgstr "неверная форма нормализации: %s" # well-spelled: категоризацию -#: utils/adt/varlena.c:6324 +#: utils/adt/varlena.c:6526 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" msgstr "" "категоризацию Unicode можно выполнять, только если кодировка сервера — UTF8" -#: utils/adt/varlena.c:6541 utils/adt/varlena.c:6576 utils/adt/varlena.c:6611 +#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 #, c-format msgid "invalid Unicode code point: %04X" msgstr "неверный код символа Unicode: %04X" -#: utils/adt/varlena.c:6641 +#: utils/adt/varlena.c:6843 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "" @@ -30411,8 +31747,8 @@ msgid "argument of nth_value must be greater than zero" msgstr "аргумент nth_value должен быть больше нуля" #: utils/adt/xid8funcs.c:120 -#, c-format -msgid "transaction ID %llu is in the future" +#, fuzzy, c-format +msgid "transaction ID % is in the future" msgstr "ID транзакции %llu относится к будущему" #: utils/adt/xid8funcs.c:522 @@ -30430,7 +31766,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\"" @@ -30445,32 +31781,32 @@ 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-инструкция обработки (PI)" -#: utils/adt/xml.c:1009 +#: utils/adt/xml.c:1021 #, c-format msgid "XML processing instruction target name cannot be \"%s\"." msgstr "назначением XML-инструкции обработки (PI) не может быть \"%s\"." -#: utils/adt/xml.c:1032 +#: utils/adt/xml.c:1044 #, c-format msgid "XML processing instruction cannot contain \"?>\"." msgstr "XML-инструкция обработки (PI) не может содержать \"?>\"." -#: 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." @@ -30478,12 +31814,12 @@ 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 " @@ -30492,120 +31828,128 @@ 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 не поддерживает бесконечность в timestamp." -#: 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 "портал \"%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 +#, fuzzy, c-format +msgid "" +"could not determine actual argument type for polymorphic function \"%s\"" +msgstr "" +"не удалось определить действительный тип результата для функции \"%s\", " +"объявленной как возвращающая тип %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 нет функции вывода" @@ -30619,35 +31963,30 @@ 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:3801 +#: utils/cache/relcache.c:3805 #, c-format msgid "heap relfilenumber value not set when in binary upgrade mode" msgstr "" "значение relfilenumber для кучи не задано в режиме двоичного обновления" -#: utils/cache/relcache.c:3809 +#: utils/cache/relcache.c:3813 #, c-format msgid "unexpected request for new relfilenumber in binary upgrade mode" msgstr "" "неожиданный запрос нового значения relfilenumber в режиме двоичного " "обновления" -#: utils/cache/relcache.c:6539 +#: utils/cache/relcache.c:6633 #, c-format msgid "could not create relation-cache initialization file \"%s\": %m" msgstr "создать файл инициализации для кеша отношений \"%s\" не удалось: %m" -#: utils/cache/relcache.c:6541 +#: utils/cache/relcache.c:6635 #, c-format msgid "Continuing anyway, but there's something wrong." msgstr "Продолжаем всё равно, хотя что-то не так." -#: utils/cache/relcache.c:6871 +#: utils/cache/relcache.c:6965 #, c-format msgid "could not remove cache file \"%s\": %m" msgstr "не удалось стереть файл кеша \"%s\": %m" @@ -30668,7 +32007,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 "тип записи не зарегистрирован" @@ -30683,196 +32022,181 @@ msgstr "ЛОВУШКА: Исключительное условие: невер msgid "TRAP: failed Assert(\"%s\"), File: \"%s\", Line: %d, PID: %d\n" msgstr "ЛОВУШКА: нарушение 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 -#, c-format -msgid "Invalid character" +#: utils/error/elog.c:2191 +#, fuzzy, c-format +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 "[н/д]" -#: 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 -#, c-format -msgid "Server has NAMEDATALEN = %d, library has %d." +#. 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 +#, fuzzy, c-format +msgid "Server has %s = %d, library has %d." msgstr "В сервере NAMEDATALEN = %d, в библиотеке: %d." -#: utils/fmgr/dfmgr.c:388 -#, c-format -msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." -msgstr "В сервере FLOAT8PASSBYVAL = %s, в библиотеке: %s." +#. translator: %s is a variable name and %d its values +#: utils/fmgr/dfmgr.c:402 +#, fuzzy, c-format +msgid "Server has %s = %s, library has %s." +msgstr "ABI сервера: \"%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 -#, c-format -msgid "invalid macro name in dynamic library path: %s" +#: utils/fmgr/dfmgr.c:554 +#, fuzzy, c-format +msgid "invalid macro name in path: %s" msgstr "неправильный макрос в пути динамической библиотеки: %s" -#: utils/fmgr/dfmgr.c:541 -#, c-format -msgid "zero-length component in parameter \"dynamic_library_path\"" +#: utils/fmgr/dfmgr.c:606 +#, fuzzy, c-format +msgid "zero-length component in parameter \"%s\"" 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 содержит компонент, не являющийся абсолютным " -"путём" - #: utils/fmgr/fmgr.c:236 #, c-format msgid "internal function \"%s\" is not in internal lookup table" @@ -30939,100 +32263,182 @@ msgstr "псевдоним столбца не указан" msgid "could not determine row description for function returning record" msgstr "не удалось определить описание строки для функции, возвращающей запись" -#: utils/init/miscinit.c:353 +#: utils/init/miscinit.c:265 +#, fuzzy +msgid "unknown process type" +msgstr "причина неизвестна" + +#: utils/init/miscinit.c:270 +#, fuzzy +msgid "not initialized" +msgstr "не удалось инициализировать LDAP: %s" + +#: utils/init/miscinit.c:273 +#, fuzzy +msgid "archiver" +msgstr "процесс архивации" + +#: utils/init/miscinit.c:276 +#, fuzzy +msgid "autovacuum launcher" +msgstr "процесс запуска автоочистки" + +#: utils/init/miscinit.c:279 +#, fuzzy +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 +#, fuzzy +msgid "background worker" +msgstr "фоновый процесс \"%s\"" + +#: utils/init/miscinit.c:291 +#, fuzzy +msgid "background writer" +msgstr "процесс фоновой записи" + +#: utils/init/miscinit.c:294 +#, fuzzy +msgid "checkpointer" +msgstr "процесс контрольных точек" + +#: utils/init/miscinit.c:300 +msgid "logger" +msgstr "" + +#: utils/init/miscinit.c:303 +#, fuzzy +msgid "slotsync worker" +msgstr "рабочий процесс синхронизации слотов" + +#: utils/init/miscinit.c:306 +msgid "standalone backend" +msgstr "" + +#: utils/init/miscinit.c:309 +#, fuzzy +msgid "startup" +msgstr "стартовый процесс" + +#: utils/init/miscinit.c:312 +msgid "walreceiver" +msgstr "" + +#: utils/init/miscinit.c:315 +msgid "walsender" +msgstr "" + +#: utils/init/miscinit.c:318 +msgid "walsummarizer" +msgstr "" + +#: utils/init/miscinit.c:321 +msgid "walwriter" +msgstr "" + +#: utils/init/miscinit.c:358 #, c-format msgid "data directory \"%s\" does not exist" msgstr "каталог данных \"%s\" не существует" -#: utils/init/miscinit.c:358 +#: utils/init/miscinit.c:363 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "не удалось прочитать права на каталог \"%s\": %m" -#: utils/init/miscinit.c:366 +#: utils/init/miscinit.c:371 #, c-format msgid "specified data directory \"%s\" is not a directory" msgstr "указанный каталог данных \"%s\" не существует" -#: utils/init/miscinit.c:382 +#: utils/init/miscinit.c:387 #, c-format msgid "data directory \"%s\" has wrong ownership" msgstr "владелец каталога данных \"%s\" определён неверно" -#: utils/init/miscinit.c:384 +#: 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:402 +#: utils/init/miscinit.c:407 #, c-format msgid "data directory \"%s\" has invalid permissions" msgstr "для каталога данных \"%s\" установлены неправильные права доступа" -#: utils/init/miscinit.c:404 +#: 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:462 +#: utils/init/miscinit.c:467 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "не удалось перейти в каталог \"%s\": %m" -#: utils/init/miscinit.c:720 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:807 +#: utils/init/miscinit.c:812 #, c-format msgid "role with OID %u does not exist" msgstr "роль с OID %u не существует" -#: utils/init/miscinit.c:853 +#: utils/init/miscinit.c:858 #, c-format msgid "role \"%s\" is not permitted to log in" msgstr "для роли \"%s\" вход запрещён" -#: utils/init/miscinit.c:874 +#: utils/init/miscinit.c:879 #, c-format msgid "too many connections for role \"%s\"" msgstr "слишком много подключений для роли \"%s\"" -#: utils/init/miscinit.c:1045 +#: utils/init/miscinit.c:1050 #, c-format msgid "invalid role OID: %u" msgstr "неверный OID роли: %u" -#: utils/init/miscinit.c:1192 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "система БД выключена" -#: utils/init/miscinit.c:1279 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "не удалось создать файл блокировки \"%s\": %m" -#: utils/init/miscinit.c:1293 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "не удалось открыть файл блокировки \"%s\": %m" -#: utils/init/miscinit.c:1300 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "не удалось прочитать файл блокировки \"%s\": %m" -#: utils/init/miscinit.c:1309 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "файл блокировки \"%s\" пуст" -#: utils/init/miscinit.c:1310 +#: utils/init/miscinit.c:1316 #, c-format msgid "" "Either another server is starting, or the lock file is the remnant of a " @@ -31041,38 +32447,38 @@ msgstr "" "Либо сейчас запускается другой сервер, либо этот файл остался в результате " "сбоя при предыдущем запуске." -#: utils/init/miscinit.c:1354 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "файл блокировки \"%s\" уже существует" -#: utils/init/miscinit.c:1358 +#: 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:1360 +#: 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:1363 +#: 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:1365 +#: 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:1416 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "не удалось стереть старый файл блокировки \"%s\": %m" -#: utils/init/miscinit.c:1418 +#: utils/init/miscinit.c:1424 #, c-format msgid "" "The file seems accidentally left over, but it could not be removed. Please " @@ -31081,48 +32487,48 @@ msgstr "" "Кажется, файл сохранился по ошибке, но удалить его не получилось. " "Пожалуйста, удалите файл вручную и повторите попытку." -#: utils/init/miscinit.c:1455 utils/init/miscinit.c:1469 -#: utils/init/miscinit.c:1480 +#: 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:1591 utils/init/miscinit.c:1733 utils/misc/guc.c:5765 +#: 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:1721 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "не удалось открыть файл \"%s\": %m; ошибка игнорируется" -#: utils/init/miscinit.c:1746 +#: 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:1785 utils/init/miscinit.c:1801 +#: 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:1787 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "Файл \"%s\" отсутствует." -#: utils/init/miscinit.c:1803 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "Файл \"%s\" содержит неприемлемые данные." -#: utils/init/miscinit.c:1805 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "Возможно, вам нужно выполнить initdb." -#: utils/init/miscinit.c:1813 +#: utils/init/miscinit.c:1819 #, c-format msgid "" "The data directory was initialized by PostgreSQL version %s, which is not " @@ -31131,32 +32537,32 @@ 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 " база=%s" -#: utils/init/postinit.c:268 +#: utils/init/postinit.c:278 #, c-format msgid " application_name=%s" msgstr " приложение=%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)" @@ -31164,60 +32570,60 @@ msgstr "" " GSS (аутентификация=%s, шифрование=%s, делегированное_удостоверение=%s, " "принципал=%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 (аутентификация=%s, шифрование=%s, делегированное_удостоверение=%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:389 +#: utils/init/postinit.c:398 #, c-format msgid "too many connections for database \"%s\"" msgstr "слишком много подключений к БД \"%s\"" -#: utils/init/postinit.c:413 utils/init/postinit.c:420 +#: 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:414 +#: utils/init/postinit.c:423 #, c-format msgid "" "The database was initialized with LC_COLLATE \"%s\", which is not " @@ -31226,7 +32632,7 @@ msgstr "" "База данных была инициализирована с параметром LC_COLLATE \"%s\", но сейчас " "setlocale() не воспринимает его." -#: utils/init/postinit.c:416 utils/init/postinit.c:423 +#: utils/init/postinit.c:425 utils/init/postinit.c:432 #, c-format msgid "" "Recreate the database with another locale or install the missing locale." @@ -31234,7 +32640,7 @@ msgstr "" "Пересоздайте базу данных с другой локалью или установите поддержку нужной " "локали." -#: utils/init/postinit.c:421 +#: utils/init/postinit.c:430 #, c-format msgid "" "The database was initialized with LC_CTYPE \"%s\", which is not recognized " @@ -31243,12 +32649,12 @@ msgstr "" "База данных была инициализирована с параметром LC_CTYPE \"%s\", но сейчас " "setlocale() не воспринимает его." -#: utils/init/postinit.c:493 +#: utils/init/postinit.c:471 #, c-format msgid "database \"%s\" has a collation version mismatch" msgstr "несовпадение версии для правила сортировки в базе данных \"%s\"" -#: utils/init/postinit.c:495 +#: utils/init/postinit.c:473 #, c-format msgid "" "The database was created using collation version %s, but the operating " @@ -31257,7 +32663,7 @@ msgstr "" "База данных была создана с версией правила сортировки %s, но операционная " "система предоставляет версию %s." -#: utils/init/postinit.c:498 +#: utils/init/postinit.c:476 #, c-format msgid "" "Rebuild all objects in this database that use the default collation and run " @@ -31268,31 +32674,44 @@ msgstr "" "сортировки, и выполните ALTER DATABASE %s REFRESH COLLATION VERSION, либо " "соберите PostgreSQL с правильной версией библиотеки." -#: utils/init/postinit.c:904 +#: utils/init/postinit.c:566 +#, c-format +msgid "too many server processes configured" +msgstr "" + +#: utils/init/postinit.c:567 +#, c-format +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 "" + +#: utils/init/postinit.c:878 #, c-format msgid "no roles are defined in this database system" msgstr "в этой системе баз данных не создано ни одной роли" -#: utils/init/postinit.c:905 +#: utils/init/postinit.c:879 #, c-format msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;." msgstr "Вы должны немедленно выполнить CREATE USER \"%s\" CREATEUSER;." -#: utils/init/postinit.c:942 +#: utils/init/postinit.c:924 #, c-format msgid "must be superuser to connect in binary upgrade mode" msgstr "" "нужно быть суперпользователем, чтобы подключиться в режиме двоичного " "обновления" -#: utils/init/postinit.c:962 +#: 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:968 +#: utils/init/postinit.c:950 #, c-format msgid "" "remaining connection slots are reserved for roles with privileges of the " @@ -31301,32 +32720,32 @@ msgstr "" "оставшиеся слоты подключений зарезервированы для подключений ролей с правами " "роли \"%s\"" -#: utils/init/postinit.c:980 +#: utils/init/postinit.c:962 #, c-format msgid "permission denied to start WAL sender" msgstr "нет прав для запуска процесса, передающего WAL" -#: utils/init/postinit.c:981 +#: 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:1099 +#: utils/init/postinit.c:1081 #, c-format msgid "It seems to have just been dropped or renamed." msgstr "Похоже, она только что была удалена или переименована." -#: utils/init/postinit.c:1103 +#: utils/init/postinit.c:1085 #, c-format msgid "database %u does not exist" msgstr "база данных %u не существует" -#: utils/init/postinit.c:1112 +#: utils/init/postinit.c:1094 #, c-format msgid "cannot connect to invalid database \"%s\"" msgstr "подключиться к некорректной базе \"%s\" нельзя" -#: utils/init/postinit.c:1173 +#: utils/init/postinit.c:1155 #, c-format msgid "The database subdirectory \"%s\" is missing." msgstr "Подкаталог базы данных \"%s\" отсутствует." @@ -31341,60 +32760,60 @@ msgstr "роль \"%s\" не может переключиться на \"%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 "неожиданный ID кодировки %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 "неожиданный ID кодировки %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 " @@ -31413,14 +32832,14 @@ 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\"." @@ -31428,36 +32847,36 @@ 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:4071 -#: utils/misc/guc.c:4212 +#: 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" @@ -31465,17 +32884,17 @@ 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 " @@ -31484,22 +32903,22 @@ 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" @@ -31507,7 +32926,7 @@ 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" @@ -31518,12 +32937,12 @@ msgstr "" "Вы должны указать его расположение в параметре --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" @@ -31534,7 +32953,7 @@ msgstr "" "Их расположение можно задать как значение \"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" @@ -31545,7 +32964,7 @@ msgstr "" "Его расположение можно задать как значение \"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" @@ -31556,129 +32975,129 @@ msgstr "" "Его расположение можно задать как значение \"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:4696 +#: 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:4671 -#: utils/misc/guc.c:6756 +#: 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:4370 utils/misc/guc.c:4418 utils/misc/guc.c:5450 +#: 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:4371 utils/misc/guc.c:4419 utils/misc/guc.c:5451 +#: 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:4629 +#: utils/misc/guc.c:4626 #, c-format msgid "ALTER SYSTEM is not allowed in this environment" msgstr "команда ALTER SYSTEM запрещена в этом окружении" -#: utils/misc/guc.c:4661 +#: 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:4740 +#: 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:4785 +#: utils/misc/guc.c:4787 #, c-format msgid "could not parse contents of file \"%s\"" msgstr "не удалось разобрать содержимое файла \"%s\"" -#: utils/misc/guc.c:4967 +#: utils/misc/guc.c:4970 #, c-format msgid "attempt to redefine parameter \"%s\"" msgstr "попытка переопределить параметр \"%s\"" -#: utils/misc/guc.c:5306 +#: utils/misc/guc.c:5309 #, c-format msgid "invalid configuration parameter name \"%s\", removing it" msgstr "неверное имя параметра конфигурации: \"%s\", он удаляется" -#: utils/misc/guc.c:5308 +#: utils/misc/guc.c:5311 #, c-format msgid "\"%s\" is now a reserved prefix." msgstr "Теперь \"%s\" — зарезервированный префикс." -#: utils/misc/guc.c:6179 +#: utils/misc/guc.c:6182 #, c-format msgid "while setting parameter \"%s\" to \"%s\"" msgstr "при назначении параметру \"%s\" значения \"%s\"" -#: utils/misc/guc.c:6348 +#: utils/misc/guc.c:6351 #, c-format msgid "parameter \"%s\" could not be set" msgstr "параметр \"%s\" нельзя установить" -#: utils/misc/guc.c:6438 +#: utils/misc/guc.c:6441 #, c-format msgid "could not parse setting for parameter \"%s\"" msgstr "не удалось разобрать значение параметра \"%s\"" -#: utils/misc/guc.c:6888 +#: utils/misc/guc.c:6897 #, c-format msgid "invalid value for parameter \"%s\": %g" msgstr "неверное значение параметра \"%s\": %g" @@ -31703,274 +33122,289 @@ 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 +#, fuzzy +msgid "Resource Usage / I/O" +msgstr "Использование ресурсов / Диск" -#: utils/misc/guc_tables.c:688 +#: utils/misc/guc_tables.c:703 +#, fuzzy +msgid "Resource Usage / Worker Processes" +msgstr "Использование ресурсов / Ресурсы ядра" + +#: 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 "Журнал WAL / Обобщение" -#: 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 +#, fuzzy +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 "Разрешает планировщику использовать материализацию." # well-spelled: мемоизацию -#: 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." @@ -31978,7 +33412,7 @@ 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." @@ -31986,7 +33420,7 @@ 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, " @@ -31997,31 +33431,40 @@ msgstr "" "данные. Когда этот параметр отключён, во время выполнения всегда неявно " "производится сортировка." -#: 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 +#, fuzzy +msgid "Enables reordering of DISTINCT keys." +msgstr "Включает переупорядочивание ключей GROUP BY." + +#: 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." @@ -32029,34 +33472,34 @@ 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 "" "Определяет, будет ли вызываться \"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 " @@ -32067,11 +33510,11 @@ msgstr "" "обеспечивающую физическую запись данных на диск. Тем самым гарантируется, " "что кластер БД придёт в целостное состояние после отказа ОС или оборудования." -#: 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 " @@ -32085,11 +33528,11 @@ msgstr "" "что может привести к сбоям или другим серьёзным проблемам. Это имеет место, " "только если включён контроль целостности страниц." -#: 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 " @@ -32103,12 +33546,12 @@ msgstr "" "продолжит работу. Это приведёт к потере данных, а именно строк в " "повреждённой странице." -#: 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. " @@ -32127,12 +33570,12 @@ msgstr "" "проблемам. Данный параметр действует только при восстановлении или в режиме " "резервного сервера." -#: 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 " @@ -32145,7 +33588,7 @@ msgstr "" "при первом изменении после контрольной точки, что позволяет полностью " "восстановить данные." -#: 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." @@ -32153,98 +33596,113 @@ 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 "" "Протоколировать сообщения об установлении соединения до аутентификации." -#: 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 "" + +#: 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 "" + +#: 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 "" + +#: 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." @@ -32252,11 +33710,11 @@ msgstr "" "Фиксировать статистику использования системных ресурсов (памяти и " "процессора) при различных операциях с b-деревом." -#: 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." @@ -32264,70 +33722,80 @@ 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 +#, fuzzy +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 +#, fuzzy +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 " @@ -32339,11 +33807,11 @@ msgstr "" "параметр, но учтите, что это может значительно повлиять на " "производительность." -#: 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 " @@ -32355,21 +33823,21 @@ msgstr "" "совпадает с 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." @@ -32377,26 +33845,28 @@ msgstr "" "Определяет, откладывать ли сериализуемую транзакцию \"только чтение\" до " "момента, когда сбой сериализации будет исключён." -#: utils/misc/guc_tables.c:1587 -msgid "Enable row security." +#: utils/misc/guc_tables.c:1688 +#, fuzzy +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." +#: utils/misc/guc_tables.c:1706 +#, fuzzy +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." @@ -32404,83 +33874,85 @@ 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 более не поддерживается; единственное допустимое значение — false." -#: utils/misc/guc_tables.c:1632 +#: 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." +#: utils/misc/guc_tables.c:1780 +#, fuzzy +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." +#: utils/misc/guc_tables.c:1857 +#, fuzzy +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." @@ -32488,19 +33960,19 @@ msgstr "" "Разрешает обратную связь сервера горячего резерва с основным для " "предотвращения конфликтов при длительных запросах." -#: utils/misc/guc_tables.c:1808 +#: utils/misc/guc_tables.c:1907 msgid "Shows whether hot standby is currently active." msgstr "Показывает, активен ли в настоящий момент режим горячего резерва." -#: 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." @@ -32508,20 +33980,20 @@ 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." @@ -32529,66 +34001,66 @@ 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-скомпилированные функции в отладчике." -#: 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-компилируемые функции в профилировщике 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." @@ -32596,17 +34068,17 @@ 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." @@ -32614,28 +34086,44 @@ msgstr "" "Позволяет физической реплике синхронизировать переносимые слоты логической " "репликации с ведущего сервера." -#: utils/misc/guc_tables.c:2040 +#: utils/misc/guc_tables.c:2130 +msgid "Enables deprecation warnings for MD5 passwords." +msgstr "" + +#: utils/misc/guc_tables.c:2139 +msgid "Enables vacuum to truncate empty pages at the end of the table." +msgstr "" + +#: 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 +#, fuzzy +msgid "0 disables the timeout." +msgstr "-1 отключает оптимизацию." + +#: 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." @@ -32643,13 +34131,13 @@ 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." @@ -32657,13 +34145,13 @@ 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." @@ -32671,34 +34159,35 @@ 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." +#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +#, fuzzy +msgid "0 means use a suitable default value." msgstr "При нуле выбирается подходящее значение по умолчанию." -#: 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." @@ -32706,7 +34195,12 @@ msgstr "" "Задаёт максимальную задержку до отмены запроса, когда сервер горячего " "резерва обрабатывает данные WAL из архива." -#: utils/misc/guc_tables.c:2162 +#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +#, fuzzy +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." @@ -32714,13 +34208,13 @@ msgstr "" "Задаёт максимальную задержку до отмены запроса, когда сервер горячего " "резерва обрабатывает данные 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." @@ -32728,21 +34222,21 @@ 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." @@ -32750,19 +34244,19 @@ 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)." @@ -32770,17 +34264,23 @@ 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 +#, fuzzy +msgid "-1 means huge pages are not supported." +msgstr "для %s событийные триггеры не поддерживаются" -#: utils/misc/guc_tables.c:2297 +#: utils/misc/guc_tables.c:2414 +#, fuzzy +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." @@ -32788,13 +34288,13 @@ 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." +#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 +#: utils/misc/guc_tables.c:2492 +#, fuzzy +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." @@ -32802,7 +34302,7 @@ 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." @@ -32810,7 +34310,7 @@ 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." @@ -32818,7 +34318,7 @@ 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." @@ -32826,14 +34326,14 @@ 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 "" "Задаёт размер выделенного пула буферов, используемых для кеширования " "подтранзакций." -#: 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." @@ -32841,19 +34341,19 @@ 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 " @@ -32865,11 +34365,11 @@ msgstr "" "воспринимаемом системными функциями 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 " @@ -32879,11 +34379,11 @@ 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 " @@ -32893,11 +34393,11 @@ 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." @@ -32905,19 +34405,19 @@ 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." @@ -32925,86 +34425,87 @@ 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 +#: utils/misc/guc_tables.c:2676 +#, fuzzy +msgid "-1 means use \"vacuum_cost_limit\"." +msgstr "-1 отключает ограничение." + +#: utils/misc/guc_tables.c:2685 +#, fuzzy msgid "" -"Sets the maximum number of simultaneously open files for each server process." +"Sets the maximum number of files each server process is allowed to open " +"simultaneously." msgstr "" "Задаёт предельное число одновременно открытых файлов для каждого серверного " "процесса." -#: utils/misc/guc_tables.c:2570 +#: 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 "Нулевое значение отключает тайм-аут." - -#: 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)." @@ -33012,7 +34513,7 @@ 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." @@ -33020,37 +34521,37 @@ 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." @@ -33058,11 +34559,11 @@ msgstr "" "Возраст мультитранзакций, при котором 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 " @@ -33073,11 +34574,11 @@ 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 " @@ -33088,14 +34589,14 @@ 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." @@ -33103,13 +34604,13 @@ 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." @@ -33117,50 +34618,50 @@ 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." @@ -33168,77 +34669,94 @@ msgstr "" "Задаёт максимальный интервал, в котором выдаётся предупреждение о том, что " "контрольные точки, вызванные активностью WAL, происходят слишком часто." -#: utils/misc/guc_tables.c:2859 +#: utils/misc/guc_tables.c:2987 +#, 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." +"WAL segment files happen more frequently than this amount of time. 0 " +"disables the warning." msgstr "" "В журнал сервера будет записываться сообщение, когда интервал между " "контрольными точками, вызванными заполнением файлов сегментов WAL, меньше " "заданного значения. Нулевое значение отключает эти предупреждения." -#: 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 "" + +#: 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." +#: utils/misc/guc_tables.c:3012 +#, fuzzy +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 "" "Размер нового файла, при достижении которого файл не пишется в 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 +#: utils/misc/guc_tables.c:3077 +#, 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." +"deletion or recycling, if this much space is occupied by WAL on disk. -1 " +"means no maximum." msgstr "" "Если объём WAL на диске достигнет этого значения, слоты репликации будут " "помечены как нерабочие, а сегменты будут освобождены для удаления или " "переработки." -#: 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 +#, fuzzy +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." @@ -33246,7 +34764,7 @@ 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\"." @@ -33254,11 +34772,11 @@ 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 " @@ -33270,31 +34788,33 @@ msgstr "" "(FLT_DIG или DBL_DIG соответственно). Положительное значение включает режим " "точного вывода." -#: utils/misc/guc_tables.c:3008 +#: utils/misc/guc_tables.c:3148 +#, fuzzy msgid "" "Sets the minimum execution time above which a sample of statements will be " -"logged. Sampling is determined by log_statement_sample_rate." +"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 "" -#: 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 "" -#: 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." @@ -33302,12 +34822,12 @@ msgstr "" "Задаёт предельное время выполнения автоочистки, при превышении которого эта " "операция протоколируется в журнале." -#: utils/misc/guc_tables.c:3035 -msgid "Zero prints all actions. -1 turns autovacuum logging off." +#: utils/misc/guc_tables.c:3175 +msgid "" +"-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "" -"При 0 протоколируются все операции автоочистки; -1 отключает эти сообщения." -#: 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." @@ -33315,11 +34835,12 @@ msgstr "" "Задаёт максимальный размер данных (в байтах), выводимых в значениях " "привязанных параметров при протоколировании операторов." -#: utils/misc/guc_tables.c:3047 utils/misc/guc_tables.c:3059 -msgid "-1 to print values in full." +#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +#, fuzzy +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." @@ -33327,17 +34848,22 @@ 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 +#, fuzzy +msgid "0 disables background writing." +msgstr "-1 отключает встраивание кода." + +#: utils/misc/guc_tables.c:3243 msgid "" "Number of simultaneous requests that can be handled efficiently by the disk " "subsystem." @@ -33345,125 +34871,176 @@ 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 "" + +#: utils/misc/guc_tables.c:3257 msgid "" "A variant of \"effective_io_concurrency\" that is used for maintenance work." msgstr "" "Вариация параметра \"effective_io_concurrency\", предназначенная для " "операций обслуживания БД." -#: utils/misc/guc_tables.c:3132 +#: utils/misc/guc_tables.c:3272 +msgid "Server-wide limit that clamps io_combine_limit." +msgstr "" + +#: utils/misc/guc_tables.c:3286 msgid "Limit on the size of data reads and writes." msgstr "Предельный размер для операций чтения и записи данных." -#: utils/misc/guc_tables.c:3157 +#: utils/misc/guc_tables.c:3300 +msgid "Max number of IOs that one process can execute simultaneously." +msgstr "" + +#: utils/misc/guc_tables.c:3312 +msgid "Number of IO worker processes, for io_method=worker." +msgstr "" + +#: 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 +#, fuzzy +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 "" + +#: 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 "" + +#: 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 "Показывает размер сегментов журнала предзаписи." -#: 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 "" + +#: 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 +#, fuzzy +msgid "Maximum number of tuple updates or deletes prior to vacuum." +msgstr "Минимальное число изменений или удалений кортежей, вызывающее очистку." -#: utils/misc/guc_tables.c:3359 +#: utils/misc/guc_tables.c:3541 +#, fuzzy +msgid "-1 disables the maximum threshold." +msgstr "-1 отключает оптимизацию." + +#: utils/misc/guc_tables.c:3549 +#, fuzzy +msgid "Minimum number of tuple inserts prior to vacuum." +msgstr "Минимальное число изменений или удалений кортежей, вызывающее очистку." + +#: utils/misc/guc_tables.c:3550 +#, fuzzy +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 +#, fuzzy +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." @@ -33471,70 +35048,82 @@ 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 +#, fuzzy +msgid "-1 means use \"maintenance_work_mem\"." +msgstr "Уменьшите \"maintenance_work_mem\"." + +#: utils/misc/guc_tables.c:3652 msgid "Time between issuing TCP keepalives." msgstr "Интервал между TCP-пакетами пульса (keep-alive)." -#: 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." +#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 +#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +#, fuzzy +msgid "0 means use the system default." msgstr "При нулевом значении действует системный параметр." -#: utils/misc/guc_tables.c:3455 +#: utils/misc/guc_tables.c:3663 msgid "Time between TCP keepalive retransmits." msgstr "Интервал между повторениями TCP-пакетов пульса (keep-alive)." -#: 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-пакетов пульса (keep-alive)." -#: utils/misc/guc_tables.c:3478 +#: utils/misc/guc_tables.c:3686 +#, 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." +"connection is considered dead. 0 means use the system default." msgstr "" "Количество идущих подряд пакетов пульса, которое может быть потеряно, прежде " "чем соединение будет считаться пропавшим. При нулевом значении действует " "системный параметр." -#: 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 +#, fuzzy +msgid "0 means no limit." +msgstr "-1 отключает ограничение." + +#: 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 " @@ -33544,12 +35133,12 @@ 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." @@ -33558,12 +35147,12 @@ 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." @@ -33572,68 +35161,78 @@ 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)." +#: utils/misc/guc_tables.c:3754 +#, fuzzy +msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "" -"При 0 отмечаются все файлы; при -1 эти сообщения отключаются (по умолчанию)." +"ограничения во временных таблицах могут ссылаться только на временные таблицы" -#: 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 "" + +#: 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 +#, fuzzy +msgid "0 disables connection checks." +msgstr "Разрешает SSL-подключения." + +#: 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 "" -#: 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." @@ -33641,13 +35240,13 @@ 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." @@ -33655,7 +35254,7 @@ 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." @@ -33663,7 +35262,7 @@ 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." @@ -33671,7 +35270,7 @@ 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." @@ -33679,40 +35278,40 @@ 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-" "скомпилированные функции." -#: 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." @@ -33720,37 +35319,41 @@ 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 "Множитель \"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 "" + +#: utils/misc/guc_tables.c:4085 msgid "" "Number of tuple updates or deletes prior to vacuum as a fraction of " "reltuples." @@ -33758,13 +35361,13 @@ 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." @@ -33772,7 +35375,7 @@ 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." @@ -33780,26 +35383,26 @@ 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 "" "Доля записываемых в журнал операторов с длительностью, превышающей " "\"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)." @@ -33807,48 +35410,63 @@ 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 "" + +#: 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 "" + +#: 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 "" -#: 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." +#: utils/misc/guc_tables.c:4176 +#, fuzzy +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." @@ -33856,24 +35474,24 @@ msgstr "" "Задайте значение \"immediate\", чтобы восстановление остановилось сразу " "после достижения согласованного состояния." -#: 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." @@ -33881,61 +35499,62 @@ 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." +#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +#, fuzzy +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." @@ -33943,11 +35562,15 @@ 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 " @@ -33957,71 +35580,91 @@ msgstr "" "указан путь (нет символа '/'), система будет искать этот файл в заданном " "пути." -#: utils/misc/guc_tables.c:4177 +#: utils/misc/guc_tables.c:4394 +#, fuzzy +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." @@ -34029,24 +35672,24 @@ 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." @@ -34054,121 +35697,147 @@ 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 +#: utils/misc/guc_tables.c:4636 +#, fuzzy msgid "" -"The owning user of the socket is always the user that starts the server." +"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 "Файл, в который будет записан код процесса 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." +#: utils/misc/guc_tables.c:4813 +#, fuzzy +msgid "Sets the list of allowed TLSv1.3 cipher suites." msgstr "Задаёт список допустимых алгоритмов шифрования для SSL." -#: utils/misc/guc_tables.c:4599 -msgid "Sets the curve to use for ECDH." -msgstr "Задаёт кривую для ECDH." +#: utils/misc/guc_tables.c:4814 +#, fuzzy +msgid "An empty string means use the default cipher suites." +msgstr "При пустом значении используется табличное пространство базы данных." + +#: utils/misc/guc_tables.c:4824 +#, fuzzy +msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." +msgstr "Задаёт список допустимых алгоритмов шифрования для SSL." -#: utils/misc/guc_tables.c:4614 +#: utils/misc/guc_tables.c:4839 +msgid "Sets the group(s) to use for Diffie-Hellman key exchange." +msgstr "" + +#: 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 +#, fuzzy +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." @@ -34176,19 +35845,23 @@ 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." @@ -34196,7 +35869,7 @@ msgstr "" "Определяет список имён слотов потовой репликации, готовности которых будут " "ждать процессы передачи логических изменений." -#: 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." @@ -34205,24 +35878,32 @@ msgstr "" "декодированные изменения модулям вывода только после того, как указанные " "слоты репликации подтвердят получение WAL." -#: utils/misc/guc_tables.c:4716 +#: utils/misc/guc_tables.c:4956 msgid "Prohibits access to non-system relations of specified kinds." msgstr "Запрещает доступ к несистемным отношениям указанных видов." -#: utils/misc/guc_tables.c:4736 +#: utils/misc/guc_tables.c:4967 +msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." +msgstr "" + +#: 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." @@ -34230,16 +35911,16 @@ 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." @@ -34247,88 +35928,88 @@ 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 "" "Включает протоколирование для SQL-операторов, выполненных с ошибкой этого " "или большего уровня." -#: 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 "Разрешает архивацию файлов 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." @@ -34336,15 +36017,19 @@ 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." @@ -34352,27 +36037,27 @@ 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 " @@ -34382,15 +36067,15 @@ 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 " @@ -34400,30 +36085,30 @@ 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 " @@ -34436,6 +36121,11 @@ msgstr "" "файлы и уведомления применяющих процессов о необходимости прочитать и " "применить изменения в конце транзакции." +#: utils/misc/guc_tables.c:5413 +#, fuzzy +msgid "Selects the method for executing asynchronous I/O." +msgstr "Выбирает метод принудительной записи изменений в WAL на диск." + #: utils/misc/help_config.c:129 #, c-format msgid "internal error: unrecognized run-time parameter type\n" @@ -34471,6 +36161,35 @@ 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 +#, fuzzy, c-format +msgid "\"max_stack_depth\" must not exceed %zdkB." +msgstr "Значение \"max_stack_depth\" не должно превышать %ld КБ." + +#: 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" @@ -34492,37 +36211,37 @@ 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 " @@ -34531,27 +36250,27 @@ 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 "" @@ -34568,12 +36287,12 @@ msgstr "Ошибка при создании контекста памяти \"% msgid "could not attach to dynamic shared area" msgstr "не удалось подключиться к динамической разделяемой области" -#: utils/mmgr/mcxt.c:1155 +#: utils/mmgr/mcxt.c:1160 #, 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:1304 #, c-format msgid "logging memory contexts of PID %d" msgstr "вывод информации о памяти процесса с PID %d" @@ -34618,8 +36337,8 @@ msgstr "" "производящим изменения" #: utils/sort/logtape.c:266 utils/sort/logtape.c:287 -#, c-format -msgid "could not seek to block %lld of temporary file" +#, fuzzy, c-format +msgid "could not seek to block % of temporary file" msgstr "не удалось переместиться к блоку %lld временного файла" #: utils/sort/sharedtuplestore.c:466 @@ -34634,61 +36353,61 @@ 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 " @@ -34697,17 +36416,17 @@ 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 " @@ -34715,7 +36434,7 @@ msgid "" 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 " @@ -34724,23 +36443,23 @@ 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 не может включать элементы схемы" @@ -34750,268 +36469,268 @@ 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 +#, fuzzy, c-format +msgid "constraints cannot be altered to be NOT VALID" +msgstr "ограничения %s не могут иметь характеристики 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 "в указании пути 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 "параметр функции-модификатора типа должен быть безымянным" -#: gram.y:17249 +#: gram.y:17412 #, c-format msgid "type modifier cannot have ORDER BY" msgstr "модификатор типа не может включать 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 " @@ -35020,70 +36739,77 @@ 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 "параметры LIMIT можно указать только один раз" - -#: 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 +#, fuzzy, c-format +msgid "%s constraints cannot be marked NOT ENFORCED" +msgstr "ограничения %s не могут иметь характеристики NOT VALID" + +#. translator: %s is CHECK, UNIQUE, or similar +#: gram.y:19543 +#, fuzzy, c-format +msgid "%s constraints cannot be marked ENFORCED" +msgstr "ограничения %s не могут иметь характеристики DEFERRABLE" + +#: 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 " @@ -35092,64 +36818,64 @@ 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 "" @@ -35157,17 +36883,17 @@ msgstr "" "прекращается" # skip-rule: space-after-comma, space-before-period -#: jsonpath_gram.y:267 +#: jsonpath_gram.y:269 #, c-format msgid ".decimal() can only have an optional precision[,scale]." msgstr "Аргументами .decimal() могут быть только точность[,масштаб]." -#: 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 "" @@ -35185,75 +36911,75 @@ 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 в строке jsonpath (примерное положение: \"%s\")" -#: 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 "не удалось преобразовать символ Unicode в серверную кодировку" -#: 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 " @@ -35262,22 +36988,22 @@ msgstr "" "Строки со спецкодами Unicode нельзя использовать, когда параметр " "\"standard_conforming_strings\" выключен." -#: scan.l:643 +#: scan.l:629 msgid "unhandled previous state in xqs" msgstr "" "необрабатываемое предыдущее состояние при обнаружении закрывающего апострофа" -#: 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." @@ -35285,56 +37011,61 @@ 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 +#, fuzzy +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'...')." @@ -35342,27 +37073,389 @@ 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'." +#, c-format +#~ msgid "could not look up local user ID %d: %s" +#~ msgstr "найти локального пользователя по идентификатору (%d) не удалось: %s" + +#, c-format +#~ msgid "%s cannot be executed within a pipeline" +#~ msgstr "%s нельзя выполнять в конвейере" + +#, c-format +#~ msgid "\"%s\" must be set to -1 during binary upgrade mode." +#~ msgstr "Параметр \"%s\" должен быть равен -1 в режиме двоичного обновления." + +#, 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." + +#, c-format +#~ msgid "" +#~ "The database cluster was initialized with MAXALIGN %d, but the server was " +#~ "compiled with MAXALIGN %d." +#~ msgstr "" +#~ "Кластер баз данных был инициализирован с MAXALIGN %d, но сервер " +#~ "скомпилирован с MAXALIGN %d." + +#, c-format +#~ msgid "" +#~ "The database cluster was initialized with RELSEG_SIZE %d, but the server " +#~ "was compiled with RELSEG_SIZE %d." +#~ msgstr "" +#~ "Кластер баз данных был инициализирован с RELSEG_SIZE %d, но сервер " +#~ "скомпилирован с RELSEG_SIZE %d." + +#, 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." + +#, c-format +#~ msgid "" +#~ "The database cluster was initialized with NAMEDATALEN %d, but the server " +#~ "was compiled with NAMEDATALEN %d." +#~ msgstr "" +#~ "Кластер баз данных был инициализирован с NAMEDATALEN %d, но сервер " +#~ "скомпилирован с NAMEDATALEN %d." + +#, 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." + +#, 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." + +#, c-format +#~ msgid "" +#~ "The database cluster was initialized with LOBLKSIZE %d, but the server " +#~ "was compiled with LOBLKSIZE %d." +#~ msgstr "" +#~ "Кластер баз данных был инициализирован с LOBLKSIZE %d, но сервер " +#~ "скомпилирован с LOBLKSIZE %d." + +#, c-format +#~ msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" +#~ msgstr "" +#~ "\"min_wal_size\" должен быть минимум вдвое больше \"wal_segment_size\"" + +#, c-format +#~ msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" +#~ msgstr "" +#~ "\"max_wal_size\" должен быть минимум вдвое больше \"wal_segment_size\"" + +#, c-format +#~ msgid "wal_level must be set to \"replica\" or \"logical\" at server start." +#~ msgstr "" +#~ "Установите wal_level \"replica\" или \"logical\" при запуске сервера." + +#, c-format +#~ msgid "%s with OID %u does not exist" +#~ msgstr "%s с OID %u не существует" + +#, c-format +#~ msgid "end-of-copy marker corrupt" +#~ msgstr "маркер \"конец копии\" испорчен" + +#, c-format +#~ msgid "EXPLAIN option TIMING requires ANALYZE" +#~ msgstr "параметр TIMING оператора EXPLAIN требует указания ANALYZE" + +#, c-format +#~ msgid "EXPLAIN option SERIALIZE requires ANALYZE" +#~ msgstr "параметр SERIALIZE оператора EXPLAIN требует указания ANALYZE" + +#, c-format +#~ msgid "Could not open extension control file \"%s\": %m." +#~ msgstr "Не удалось открыть управляющий файл расширения \"%s\": %m." + +#, c-format +#~ msgid "cannot match partition key to an index using access method \"%s\"" +#~ msgstr "" +#~ "сопоставить ключ секционирования с индексом, использующим метод доступа " +#~ "\"%s\", нельзя" + +#, c-format +#~ msgid "" +#~ "cannot remove constraint from only the partitioned table when partitions " +#~ "exist" +#~ msgstr "" +#~ "удалить ограничение только из секционированной таблицы, когда существуют " +#~ "секции, нельзя" + +#, c-format +#~ msgid "column \"%s\" of relation \"%s\" is not a stored generated column" +#~ msgstr "" +#~ "столбец \"%s\" отношения \"%s\" не является сохранённым генерируемым " +#~ "столбцом" + +#, c-format +#~ msgid "" +#~ "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing " +#~ "relation \"%s\"" +#~ msgstr "" +#~ "нельзя добавить с характеристикой NOT VALID сторонний ключ в " +#~ "секционированной таблице \"%s\", ссылающийся на отношение \"%s\"" + +#, c-format +#~ msgid "This feature is not yet supported on partitioned tables." +#~ msgstr "" +#~ "Эта функциональность с секционированными таблицами пока не поддерживается." + +#, c-format +#~ msgid "" +#~ "constraint \"%s\" of relation \"%s\" is not a foreign key or check " +#~ "constraint" +#~ msgstr "" +#~ "ограничение \"%s\" в таблице \"%s\" не является внешним ключом или " +#~ "ограничением-проверкой" + +#, c-format +#~ msgid "" +#~ "\"effective_io_concurrency\" must be set to 0 on platforms that lack " +#~ "posix_fadvise()." +#~ msgstr "" +#~ "Значение \"effective_io_concurrency\" должно равняться 0 на платформах, " +#~ "где отсутствует posix_fadvise()." + +#, c-format +#~ msgid "" +#~ "\"maintenance_io_concurrency\" must be set to 0 on platforms that lack " +#~ "posix_fadvise()." +#~ msgstr "" +#~ "Значение \"maintenance_io_concurrency\" должно равняться 0 на платформах, " +#~ "где отсутствует posix_fadvise()." + +#, c-format +#~ msgid "oversize GSSAPI packet sent by the client (%zu > %d)" +#~ msgstr "клиент передал чрезмерно большой пакет GSSAPI (%zu > %d)" + +#, c-format +#~ msgid "ECDH: unrecognized curve name: %s" +#~ msgstr "ECDH: нераспознанное имя кривой: %s" + +#, c-format +#~ msgid "ECDH: could not create key" +#~ msgstr "ECDH: не удалось создать ключ" + +#, c-format +#~ msgid "" +#~ "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, " +#~ "ldapsearchfilter, or ldapurl together with ldapprefix" +#~ msgstr "" +#~ "нельзя использовать ldapbasedn, ldapbinddn, ldapbindpasswd, " +#~ "ldapsearchattribute, ldapsearchfilter или ldapurl вместе с ldapprefix" + +#, c-format +#~ msgid "LIKE is not supported for creating foreign tables" +#~ msgstr "LIKE при создании сторонних таблиц не поддерживается" + +#~ msgid "server process" +#~ msgstr "процесс сервера" + +#, c-format +#~ msgid "" +#~ "This slot has been invalidated because it exceeded the maximum reserved " +#~ "size." +#~ msgstr "" +#~ "Этот слот был аннулирован из-за превышения максимального " +#~ "зарезервированного размера." + +#, c-format +#~ msgid "" +#~ "This slot has been invalidated because it was conflicting with recovery." +#~ msgstr "Этот слот был аннулирован из-за конфликта с восстановлением." + +#, c-format +#~ msgid ", \"%s\"" +#~ msgstr ", \"%s\"" + +#, c-format +#~ msgid "" +#~ "could not synchronize replication slot \"%s\" because remote slot " +#~ "precedes local slot" +#~ msgstr "" +#~ "синхронизировать слот репликации \"%s\" не удалось, так как состояние " +#~ "удалённого слота предшествует локальному" + +#, c-format +#~ msgid "" +#~ "Logical decoding could not find consistent point from local slot's LSN %X/" +#~ "%X." +#~ msgstr "" +#~ "При логическом декодировании не удалось найти точку согласованности от " +#~ "LSN локального слота %X/%X." + +#, c-format +#~ msgid "\"synchronous_standby_names\" parser failed" +#~ msgstr "ошибка при разборе \"synchronous_standby_names\"" + +#, c-format +#~ msgid "\"debug_io_direct\" is not supported on this platform." +#~ msgstr "Параметр \"debug_io_direct\" не поддерживается в этой ОС." + +#, c-format +#~ msgid "conversion from wchar_t to server encoding failed: %m" +#~ msgstr "преобразовать wchar_t в кодировку сервера не удалось: %m" + +#, c-format +#~ msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" +#~ msgstr "" +#~ "не удалось переименовать временный файл статистики из \"%s\" в \"%s\": %m" + +#, c-format +#~ msgid "invalid input string for \"Y,YYY\"" +#~ msgstr "ошибка синтаксиса в значении для шаблона \"Y,YYY\"" + +#, c-format +#~ msgid "\"RN\" not supported for input" +#~ msgstr "\"RN\" не поддерживается при вводе" + +#, c-format +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type double " +#~ "precision" +#~ msgstr "" +#~ "аргумент \"%s\" метода элемента jsonpath .%s() некорректен для типа " +#~ "double precision" + +#, c-format +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type boolean" +#~ msgstr "" +#~ "аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа " +#~ "boolean" + +#, c-format +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type numeric" +#~ msgstr "" +#~ "аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа " +#~ "numeric" + +#, c-format +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type integer" +#~ msgstr "" +#~ "аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа " +#~ "integer" + +#, c-format +#~ msgid "nondeterministic collations are not supported for LIKE" +#~ msgstr "недетерминированные правила сортировки не поддерживаются для LIKE" + +#, c-format +#~ msgid "index %lld out of valid range, 0..%lld" +#~ msgstr "индекс %lld вне диапазона 0..%lld" + +#, c-format +#~ msgid "Server has FUNC_MAX_ARGS = %d, library has %d." +#~ msgstr "В сервере FUNC_MAX_ARGS = %d, в библиотеке: %d." + +#, c-format +#~ msgid "Server has INDEX_MAX_KEYS = %d, library has %d." +#~ msgstr "В сервере INDEX_MAX_KEYS = %d, в библиотеке: %d." + +#, c-format +#~ msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." +#~ msgstr "В сервере FLOAT8PASSBYVAL = %s, в библиотеке: %s." + +#~ msgid "Resource Usage / Asynchronous Behavior" +#~ msgstr "Использование ресурсов / Асинхронное поведение" + +#~ msgid "Logs each successful connection." +#~ msgstr "Протоколировать устанавливаемые соединения." + +#~ msgid "-1 indicates that the value could not be determined." +#~ msgstr "Значение -1 показывает, что определить это количество не удалось." + +#~ msgid "A value of 0 turns off the timeout." +#~ msgstr "Нулевое значение отключает тайм-аут." + +#~ msgid "Zero logs a sample of all queries. -1 turns this feature off." +#~ msgstr "При 0 выводятся все запросы в выборке; -1 отключает эти сообщения." + +#~ msgid "Zero prints all queries. -1 turns this feature off." +#~ msgstr "При 0 выводятся все запросы; -1 отключает эти сообщения." + +#~ msgid "Zero prints all actions. -1 turns autovacuum logging off." +#~ msgstr "" +#~ "При 0 протоколируются все операции автоочистки; -1 отключает эти " +#~ "сообщения." + +#~ msgid "" +#~ "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert " +#~ "vacuums." +#~ msgstr "" +#~ "Минимальное число добавлений кортежей, вызывающее очистку; при -1 такая " +#~ "очистка отключается." + +#~ msgid "Zero logs all files. The default is -1 (turning this feature off)." +#~ msgstr "" +#~ "При 0 отмечаются все файлы; при -1 эти сообщения отключаются (по " +#~ "умолчанию)." + +#~ msgid "0 turns this feature off." +#~ msgstr "При 0 эта функциональность отключается." + +#~ msgid "This is used only if \"archive_library\" is not set." +#~ msgstr "" +#~ "Это параметр используется, только если не задан \"archive_library\"." + +#~ msgid "If blank, no prefix is used." +#~ msgstr "При пустом значении префикс также отсутствует." + +#~ msgid "Sets the curve to use for ECDH." +#~ msgstr "Задаёт кривую для ECDH." + +#, c-format +#~ msgid "RECHECK is no longer required" +#~ msgstr "RECHECK более не требуется" + +#, c-format +#~ msgid "Update your data type." +#~ msgstr "Обновите тип данных." + +#, c-format +#~ msgid "multiple limit options not allowed" +#~ msgstr "параметры LIMIT можно указать только один раз" + #, c-format #~ msgid "cannot use RETURNING type %s in %s" #~ msgstr "использовать в RETURNING тип %s в %s нельзя" @@ -35659,10 +37752,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgstr "" #~ "Включает протоколирование отладочной информации, связанной с репликацией." -#, c-format -#~ msgid "out of memory while trying to decode a record of length %u" -#~ msgstr "не удалось выделить память для декодирования записи длины %u" - #, c-format #~ msgid "record length %u at %X/%X too long" #~ msgstr "длина записи %u в позиции %X/%X слишком велика" @@ -35737,10 +37826,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "invalid checkpoint link in backup_label file" #~ msgstr "неверная ссылка на контрольную точку в файле backup_label" -#, c-format -#~ msgid "invalid primary checkpoint record" -#~ msgstr "неверная запись первичной контрольной точки" - #, c-format #~ msgid "invalid resource manager ID in primary checkpoint record" #~ msgstr "неверный ID менеджера ресурсов в записи первичной контрольной точки" @@ -36000,10 +38085,6 @@ msgstr "Используйте для записи спецсимволов си #~ " -n не переинициализировать разделяемую память после\n" #~ " аварийного выхода\n" -#, c-format -#~ msgid "generated columns are not supported on partitions" -#~ msgstr "генерируемые столбцы не поддерживаются с секциями" - #, c-format #~ msgid "could not load pg_hba.conf" #~ msgstr "не удалось загрузить pg_hba.conf" @@ -36120,10 +38201,6 @@ msgstr "Используйте для записи спецсимволов си #~ "не удалось преобразовать таблицу \"%s\" в представление, так как к ней " #~ "применены политики защиты строк" -#, c-format -#~ msgid "could not link file \"%s\" to \"%s\": %m" -#~ msgstr "для файла \"%s\" не удалось создать ссылку \"%s\": %m" - #, c-format #~ msgid "must be a superuser to terminate superuser process" #~ msgstr "прерывать процесс суперпользователя может только суперпользователь" @@ -36299,9 +38376,6 @@ msgstr "Используйте для записи спецсимволов си #~ "Таблица \"%s\" в схеме \"%s\" уже является частью публикации, добавление " #~ "той же схемы не поддерживается." -#~ msgid "cannot add relation \"%s.%s\" to publication" -#~ msgstr "добавить отношение \"%s.%s\" в публикацию нельзя" - #~ msgid "" #~ "Table's schema \"%s\" is already part of the publication or part of the " #~ "specified schema list." @@ -36495,17 +38569,9 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "utility statements cannot be prepared" #~ msgstr "служебные SQL-операторы нельзя подготовить" -#~ msgid "unlogged sequences are not supported" -#~ msgstr "нежурналируемые последовательности не поддерживаются" - #~ msgid "referenced relation \"%s\" is not a table or foreign table" #~ msgstr "указанный объект \"%s\" не является таблицей или сторонней таблицей" -#~ msgid "relation \"%s\" is not a table, foreign table, or materialized view" -#~ msgstr "" -#~ "отношение \"%s\" - это не таблица, не сторонняя таблица и не " -#~ "материализованное представление" - #~ msgid "" #~ "\"%s\" is not a table, view, materialized view, composite type, index, or " #~ "foreign table" @@ -36833,9 +38899,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "pclose failed: %m" #~ msgstr "ошибка pclose: %m" -#~ msgid "password too long" -#~ msgstr "слишком длинный пароль" - #~ msgid "\"%s\": removed %.0f row versions in %u pages" #~ msgstr "\"%s\": удалено версий строк: %.0f, обработано страниц: %u" @@ -36861,9 +38924,6 @@ msgstr "Используйте для записи спецсимволов си #~ "Граница членов мультитранзакции сейчас: %u (при старейшей " #~ "мультитранзакции %u)" -#~ msgid "removing file \"%s\"" -#~ msgstr "удаляется файл \"%s\"" - #~ msgid "transaction ID wrap limit is %u, limited by database with OID %u" #~ msgstr "" #~ "предел зацикливания ID транзакций равен %u, источник ограничения - база " @@ -36906,9 +38966,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgstr "" #~ "создание точки перезапуска пропускается, она уже создана по смещению %X/%X" -#~ msgid "backup time %s in file \"%s\"" -#~ msgstr "время резервного копирования %s в файле \"%s\"" - #~ msgid "backup label %s in file \"%s\"" #~ msgstr "метка резервного копирования %s в файле \"%s\"" @@ -37170,9 +39227,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "deferrable snapshot was unsafe; trying a new one" #~ msgstr "откладываемый снимок был небезопасен; пробуем более новый" -#~ msgid "Process %d waits for %s on %s." -#~ msgstr "Процесс %d ожидает в режиме %s блокировку %s." - #~ msgid "sending cancel to blocking autovacuum PID %d" #~ msgstr "снятие блокирующего процесса автоочистки (PID %d)" @@ -37365,9 +39419,6 @@ msgstr "Используйте для записи спецсимволов си #~ "индекс \"%s\" теперь содержит версий строк: %.0f, в страницах: %u (по " #~ "информации параллельного процесса очистки)" -#~ msgid "insufficient columns in %s constraint definition" -#~ msgstr "недостаточно столбцов в определении ограничения %s" - #~ msgid "cannot reindex invalid index on TOAST table concurrently" #~ msgstr "" #~ "перестроить нерабочий индекс в таблице TOAST неблокирующим способом нельзя" @@ -37483,9 +39534,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "changing return type of function %s from %s to %s" #~ msgstr "изменение типа возврата функции %s с %s на %s" -#~ msgid "column \"%s\" contains null values" -#~ msgstr "столбец \"%s\" содержит значения NULL" - #~ msgid "" #~ "updated partition constraint for default partition would be violated by " #~ "some row" @@ -37597,9 +39645,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "could not rmdir directory \"%s\": %m" #~ msgstr "ошибка удаления каталога \"%s\": %m" -#~ msgid "Key (%s)=(%s) still referenced from table \"%s\"." -#~ msgstr "Ссылки на ключ (%s)=(%s) остаются в таблице \"%s\"." - #~ msgid "GSSAPI context error" #~ msgstr "ошибка контекста GSSAPI" @@ -38124,9 +40169,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid " in schema %s" #~ msgstr " в схеме %s" -#~ msgid "%s in publication %s" -#~ msgstr "%s в публикации %s" - #~ msgid "table \"%s\" has multiple constraints named \"%s\"" #~ msgstr "таблица \"%s\" содержит несколько ограничений с именем \"%s\"" @@ -38148,9 +40190,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "cannot copy to foreign table \"%s\"" #~ msgstr "копировать в стороннюю таблицу \"%s\" нельзя" -#~ msgid "cannot route inserted tuples to a foreign table" -#~ msgstr "направить вставляемые кортежи в стороннюю таблицу нельзя" - #~ msgid "unrecognized function attribute \"%s\" ignored" #~ msgstr "нераспознанный атрибут функции \"%s\" --- игнорируется" @@ -38263,10 +40302,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "RANGE FOLLOWING is only supported with UNBOUNDED" #~ msgstr "RANGE FOLLOWING поддерживается только с UNBOUNDED" -#~ msgid "invalid number of arguments: object must be matched key value pairs" -#~ msgstr "" -#~ "неверное число аргументов: объект должен составляться из пар ключ-значение" - #~ msgid "invalid publish list" #~ msgstr "неверный список публикации" @@ -39611,9 +41646,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "received fast promote request" #~ msgstr "получен запрос быстрого повышения статуса" -#~ msgid "argument number is out of range" -#~ msgstr "номер аргумента вне диапазона" - #~ msgid "could not change directory to \"%s\"" #~ msgstr "не удалось перейти в каталог \"%s\"" @@ -39897,9 +41929,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "Sets the list of known custom variable classes." #~ msgstr "Задаёт список известных классов дополнительных переменных." -#~ msgid "foreign key constraint \"%s\" of relation \"%s\" does not exist" -#~ msgstr "ограничение внешнего ключа \"%s\" в таблице\"%s\" не существует" - #~ msgid "removing built-in function \"%s\"" #~ msgstr "удаление встроенной функции \"%s\"" @@ -39944,9 +41973,6 @@ msgstr "Используйте для записи спецсимволов си #~ msgid "missing or erroneous pg_hba.conf file" #~ msgstr "файл pg_hba.conf отсутствует или испорчен" -#~ msgid "See server log for details." -#~ msgstr "Смотрите подробности в протоколе сервера." - #~ msgid "Make sure the root.crt file is present and readable." #~ msgstr "Убедитесь в наличии и доступности файла root.crt." diff --git a/src/backend/po/sv.po b/src/backend/po/sv.po index 584437a07d5c5..691517eb0308c 100644 --- a/src/backend/po/sv.po +++ b/src/backend/po/sv.po @@ -21,10 +21,10 @@ # hänvisas till och inte någon annan städning. msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 18\n" +"Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-09 01:46+0000\n" -"PO-Revision-Date: 2025-08-09 20:16+0200\n" +"POT-Creation-Date: 2025-08-17 11:16+0000\n" +"PO-Revision-Date: 2025-08-17 21:16+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -189,8 +189,8 @@ msgstr "" #: 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:1585 -#: utils/init/miscinit.c:1719 utils/init/miscinit.c:1796 utils/misc/guc.c:4779 +#: 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" @@ -1439,8 +1439,8 @@ msgstr "kunde inte trunkera fil \"%s\" till %u: %m" #: 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:1660 -#: utils/init/miscinit.c:1671 utils/init/miscinit.c:1679 utils/misc/guc.c:4488 +#: 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 #, c-format @@ -1520,7 +1520,7 @@ msgstr "frysta: %u sidor i tabellen (%.2f%% av totalt) hade % frysta tup #: access/heap/vacuumlazy.c:1062 #, c-format msgid "visibility map: %u pages set all-visible, %u pages set all-frozen (%u were all-visible)\n" -msgstr "" +msgstr "synlighetskarta: %u sidor satta till all-visible, %u sidor satta till all-frozen (%u var all-visible)\n" #: access/heap/vacuumlazy.c:1070 msgid "index scan not needed: " @@ -1587,7 +1587,7 @@ msgstr "systemanvändning: %s" #: access/heap/vacuumlazy.c:1432 #, c-format msgid "disabling eager scanning after freezing %u eagerly scanned blocks of relation \"%s.%s.%s\"" -msgstr "" +msgstr "slår av tidig skanning efter frysning av %u tidigt skannade block för relationen \"%s.%s.%s\"" #: access/heap/vacuumlazy.c:2821 #, c-format @@ -2542,7 +2542,7 @@ msgstr "kunde inte generera hemligt auktorisationstoken" #: 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:1817 +#: utils/init/miscinit.c:1818 #, c-format msgid "database files are incompatible with server" msgstr "databasfilerna är inkompatibla med servern" @@ -5013,13 +5013,12 @@ msgstr "läser användardefinierade funktioner" #: catalog/heap.c:3278 #, c-format msgid "Virtual generated columns that make use of user-defined functions are not yet supported." -msgstr "" +msgstr "Virtuellt genererade kolumner som använder användardefinierade funktioner stöds inte än." #: catalog/heap.c:3293 -#, fuzzy, c-format -#| msgid "generation expression is not immutable" +#, c-format msgid "generation expression uses user-defined type" -msgstr "genereringsuttryck är inte immutable" +msgstr "genereringsuttryck avänder användardefinierad typ" #: catalog/heap.c:3345 #, c-format @@ -6018,7 +6017,7 @@ msgstr "kan inte ändra villkoret \"%s\" i relation \"%s\"" #: catalog/pg_constraint.c:765 commands/tablecmds.c:9559 #, c-format msgid "You might need to make the existing constraint inheritable using %s." -msgstr "" +msgstr "Du kan behöva gör det existerande villkoret ärvbart med %s." #: catalog/pg_constraint.c:775 #, c-format @@ -6048,12 +6047,12 @@ msgstr "villkor \"%s\" för domänen %s finns inte" #: catalog/pg_constraint.c:1664 #, c-format msgid "invalid type for PERIOD part of foreign key" -msgstr "" +msgstr "ogiltig type för PERIOD-delen av främmande nyckel" #: catalog/pg_constraint.c:1665 #, c-format msgid "Only range and multirange are supported." -msgstr "" +msgstr "Bara range och multirange stöds." #: catalog/pg_conversion.c:64 #, c-format @@ -9990,7 +9989,7 @@ msgstr "måste vara en superuser för att skapa ett eget procedurspråk" #: commands/publicationcmds.c:130 libpq/auth-oauth.c:850 #: postmaster/postmaster.c:1130 postmaster/postmaster.c:1232 -#: utils/init/miscinit.c:1870 +#: utils/init/miscinit.c:1871 #, c-format msgid "invalid list syntax in parameter \"%s\"" msgstr "ogiltigt listsyntax för parameter \"%s\"" @@ -11219,7 +11218,7 @@ msgstr "kan inte ändra typ \"%s\" eftersom det är typen för en typad tabell" #: commands/tablecmds.c:7158 #, c-format msgid "A typed table must use a stand-alone composite type created with CREATE TYPE." -msgstr "" +msgstr "En typad tabell måste använda en fristående composite-typ som skapats med CREATE TYPE." #: commands/tablecmds.c:7163 #, c-format @@ -11488,7 +11487,7 @@ msgstr "kan inte ändra döpa om systemkolumn \"%s\"" #: commands/tablecmds.c:9556 commands/tablecmds.c:9568 #, c-format msgid "The constraint \"%s\" on column \"%s\" of table \"%s\", marked %s, is incompatible with a primary key." -msgstr "" +msgstr "Villkoret \"%s\" på kolumn \"%s\" i tabell \"%s\", markerad %s, är inkompatibel med en primärnyckel." #: commands/tablecmds.c:9692 #, c-format @@ -11533,17 +11532,17 @@ msgstr "villkor på temporära tabeller får bara ta med temporära tabeller fr #: commands/tablecmds.c:10138 commands/tablecmds.c:10166 #, c-format msgid "foreign key uses PERIOD on the referenced table but not the referencing table" -msgstr "" +msgstr "främmande nyckek använder PERIOD på den refererade tabellen men inte på den refererande tabellen" #: commands/tablecmds.c:10178 #, c-format msgid "foreign key uses PERIOD on the referencing table but not the referenced table" -msgstr "" +msgstr "främmande nyckel använder PERIOD på den refererande tabellen men inte på den refererade tabellen" #: commands/tablecmds.c:10192 #, c-format msgid "foreign key must use PERIOD when referencing a primary key using WITHOUT OVERLAPS" -msgstr "" +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 #, c-format @@ -11593,7 +11592,7 @@ msgstr "Nyckelkolumner \"%s\" och \"%s\" har inkompatibla typer %s och %s." #: commands/tablecmds.c:10432 #, 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 "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 #, c-format @@ -11682,7 +11681,7 @@ msgstr "Denna operation stöds inte på composite-typer." #: commands/tablecmds.c:12923 #, c-format msgid "cannot validate NOT ENFORCED constraint" -msgstr "" +msgstr "kan inte validera NOT ENFORCED-villkor" #: commands/tablecmds.c:13132 commands/tablecmds.c:13232 #, c-format @@ -12939,13 +12938,12 @@ msgstr "motstridiga NULL/NOT NULL-villkor" #: commands/typecmds.c:952 #, c-format msgid "redundant NOT NULL constraint definition" -msgstr "" +msgstr "redundant definition av NOT NULL-villkor" #: commands/typecmds.c:958 -#, fuzzy, c-format -#| msgid "check constraints for domains cannot be marked NO INHERIT" +#, c-format msgid "not-null constraints for domains cannot be marked NO INHERIT" -msgstr "check-villkor för domäner kan inte markeras NO INHERIT" +msgstr "icke-null-villkor för domäner kan inte markeras NO INHERIT" #: commands/typecmds.c:985 #, c-format @@ -14162,141 +14160,141 @@ msgstr "Nyckel står i konflikt med existerande nyckel." #: executor/execIndexing.c:1172 #, c-format msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" -msgstr "" +msgstr "tomt WITHOUT OVERLAPS-värde hittat i kolumn \"%s\" i relationen \"%s\"" -#: executor/execMain.c:1067 +#: executor/execMain.c:1066 #, c-format msgid "cannot change sequence \"%s\"" msgstr "kan inte ändra sekvens \"%s\"" -#: executor/execMain.c:1073 +#: executor/execMain.c:1072 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "kan inte ändra TOAST-relation \"%s\"" -#: executor/execMain.c:1092 +#: executor/execMain.c:1091 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "kan inte ändra materialiserad vy \"%s\"" -#: executor/execMain.c:1104 +#: executor/execMain.c:1103 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "kan inte sätta in i främmande tabell \"%s\"" -#: executor/execMain.c:1110 +#: executor/execMain.c:1109 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "främmande tabell \"%s\" tillåter inte insättningar" -#: executor/execMain.c:1117 +#: executor/execMain.c:1116 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "kan inte uppdatera främmande tabell \"%s\"" -#: executor/execMain.c:1123 +#: executor/execMain.c:1122 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "främmande tabell \"%s\" tillåter inte uppdateringar" -#: executor/execMain.c:1130 +#: executor/execMain.c:1129 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "kan inte radera från främmande tabell \"%s\"" -#: executor/execMain.c:1136 +#: executor/execMain.c:1135 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "främmande tabell \"%s\" tillåter inte radering" -#: executor/execMain.c:1147 +#: executor/execMain.c:1146 #, c-format msgid "cannot change relation \"%s\"" msgstr "kan inte ändra relation \"%s\"" -#: executor/execMain.c:1174 +#: executor/execMain.c:1173 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "kan inte låsa rader i sekvens \"%s\"" -#: executor/execMain.c:1181 +#: executor/execMain.c:1180 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "kan inte låsa rader i TOAST-relation \"%s\"" -#: executor/execMain.c:1188 +#: executor/execMain.c:1187 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "kan inte låsa rader i vy \"%s\"" -#: executor/execMain.c:1196 +#: executor/execMain.c:1195 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "kan inte låsa rader i materialiserad vy \"%s\"" -#: executor/execMain.c:1205 executor/execMain.c:2837 +#: executor/execMain.c:1204 executor/execMain.c:2836 #: 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:1211 +#: executor/execMain.c:1210 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "kan inte låsa rader i relation \"%s\"" -#: executor/execMain.c:1934 +#: executor/execMain.c:1933 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "ny rad för relation \"%s\" bryter mot partitionesvillkoret" -#: executor/execMain.c:1936 executor/execMain.c:2048 executor/execMain.c:2186 -#: executor/execMain.c:2294 +#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 +#: executor/execMain.c:2293 #, c-format msgid "Failing row contains %s." msgstr "Misslyckande rad innehåller %s." -#: executor/execMain.c:2046 +#: executor/execMain.c:2045 #, 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:2183 +#: executor/execMain.c:2182 #, 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:2292 +#: executor/execMain.c:2291 #, 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:2302 +#: executor/execMain.c:2301 #, 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:2307 +#: executor/execMain.c:2306 #, 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:2315 +#: executor/execMain.c:2314 #, 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:2320 +#: executor/execMain.c:2319 #, 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:2327 +#: executor/execMain.c:2326 #, 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:2332 +#: executor/execMain.c:2331 #, 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\"" @@ -14345,7 +14343,7 @@ msgstr "Kolumnlistan som används i publiceringen inkluderar inte hela replikans #: executor/execReplication.c:823 executor/execReplication.c:841 #, c-format msgid "Replica identity must not contain unpublished generated columns." -msgstr "" +msgstr "Replikaidentitet får inte innehålla genererade kolumner som ej är publicerade." #: executor/execReplication.c:827 executor/execReplication.c:833 #: executor/execReplication.c:839 @@ -14772,10 +14770,9 @@ msgid "%s query does not return tuples" msgstr "%s-fråga returnerar inga tupler" #: executor/spi.c:2987 -#, fuzzy, c-format -#| msgid "SQL expression \"%s\"" +#, c-format msgid "PL/pgSQL expression \"%s\"" -msgstr "SQL-uttryck \"%s\"" +msgstr "PL/pgSQL-uttryck \"%s\"" #: executor/spi.c:2992 #, c-format @@ -14849,10 +14846,9 @@ msgid "column number must be in range from 1 to %d" msgstr "kolumnnummer måste vara i intervallet 1 till %d." #: gram.y:2675 -#, fuzzy, c-format -#| msgid "%s constraints cannot be marked NOT VALID" +#, c-format msgid "constraints cannot be altered to be NOT VALID" -msgstr "%s-villkor kan inte markeras NOT VALID" +msgstr "villkor kan inte ändras till NOT VALID" #: gram.y:3125 #, c-format @@ -15173,17 +15169,15 @@ msgstr "%s-villkor kan inte markeras NO INHERIT" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19521 -#, fuzzy, c-format -#| msgid "%s constraints cannot be marked NOT VALID" +#, c-format msgid "%s constraints cannot be marked NOT ENFORCED" -msgstr "%s-villkor kan inte markeras NOT VALID" +msgstr "%s-villkor kan inte markeras NOT ENFORCED" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19543 -#, fuzzy, c-format -#| msgid "%s constraints cannot be marked DEFERRABLE" +#, c-format msgid "%s constraints cannot be marked ENFORCED" -msgstr "%s-villkor kan inte markeras DEFERRABLE" +msgstr "%s-villkor kan inte markeras ENFORCED" #: gram.y:19565 #, c-format @@ -15364,10 +15358,9 @@ msgstr "klient valde en ogiltig SASL-autentiseringsmekanism" #: 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 -#, fuzzy, c-format -#| msgid "malformed SCRAM message" +#, c-format msgid "malformed OAUTHBEARER message" -msgstr "trasigt SCRAM-meddelande" +msgstr "trasigt OAUTHBEARER-meddelande" #: libpq/auth-oauth.c:170 libpq/auth-scram.c:383 #, c-format @@ -15382,7 +15375,7 @@ msgstr "Meddelandelängden matchar inte indatalängden." #: libpq/auth-oauth.c:193 #, c-format msgid "Client did not send a kvsep response." -msgstr "" +msgstr "Klienten skickade inte kvsep-respons." #: libpq/auth-oauth.c:221 #, fuzzy, c-format @@ -15425,17 +15418,17 @@ msgstr "Filen \"%s\" innehåller inte giltig data." #: libpq/auth-oauth.c:280 #, c-format msgid "Message contains additional data after the final terminator." -msgstr "" +msgstr "Meddelandet innehåller mer data efter den avslutande terminatorn." #: libpq/auth-oauth.c:343 #, c-format msgid "Message contains an empty key name." -msgstr "" +msgstr "Meddelande innehåller ett tomt nyckelnamn." #: libpq/auth-oauth.c:350 #, c-format msgid "Message contains an invalid key name." -msgstr "" +msgstr "Meddelandet innehåller ett ogilitgt nyckelnamn." #: libpq/auth-oauth.c:376 #, fuzzy, c-format @@ -15446,88 +15439,82 @@ msgstr "enum %s innehåller inga värden" #: libpq/auth-oauth.c:421 #, c-format msgid "Message contains an unterminated key/value pair." -msgstr "" +msgstr "Meddelandet innehåller ett icketerminerat nyckel/värde-par." #: libpq/auth-oauth.c:439 #, c-format msgid "Message contains a key without a value." -msgstr "" +msgstr "Meddelandet innehåller en nyckel utan värde." #: libpq/auth-oauth.c:453 #, c-format msgid "Message contains multiple auth values." -msgstr "" +msgstr "Meddelande innehåller multipla auth-värden." #: libpq/auth-oauth.c:473 #, c-format msgid "Message did not contain a final terminator." -msgstr "" +msgstr "Meddelandet innehöll ingen avslutande terminator." #: libpq/auth-oauth.c:499 -#, fuzzy, c-format -#| msgid "unit \"%s\" not recognized for type %s" +#, c-format msgid "OAuth is not properly configured for this user" -msgstr "enheten \"%s\" känns inte igen för typen %s" +msgstr "OAuth är inte korrekt konfigurerat för denna användare" #: libpq/auth-oauth.c:500 #, c-format msgid "The issuer and scope parameters must be set in pg_hba.conf." -msgstr "" +msgstr "Parametrarna issuer och scope måste sättas i pg_hba.conf." #: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 -#, fuzzy, c-format -#| msgid "malformed JSON array" +#, c-format msgid "malformed OAuth bearer token" -msgstr "felaktig JSON-array" +msgstr "felaktigt bärande OAuth-token" #: libpq/auth-oauth.c:586 -#, fuzzy, c-format -#| msgid "client selected an invalid SASL authentication mechanism" +#, c-format msgid "Client response indicated a non-Bearer authentication scheme." -msgstr "klient valde en ogiltig SASL-autentiseringsmekanism" +msgstr "Klientrespons indikerade ett icke-bärande autentisersschema" #: libpq/auth-oauth.c:603 -#, fuzzy, c-format -#| msgid "Query buffer is empty." +#, c-format msgid "Bearer token is empty." -msgstr "Frågebufferten är tom." +msgstr "Bärande token är tom." #: libpq/auth-oauth.c:625 #, c-format msgid "Bearer token is not in the correct format." -msgstr "" +msgstr "Bärande token är inte i korrekt format." #: libpq/auth-oauth.c:656 #, c-format msgid "validation of OAuth token requested without a validator loaded" -msgstr "" +msgstr "Validering av OAuth-token begärd utan att en validator laddats" #: libpq/auth-oauth.c:665 #, c-format msgid "internal error in OAuth validator module" -msgstr "" +msgstr "internt fel i modulen för OAuth-validering" #: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 -#, fuzzy, c-format -#| msgid "Peer authentication failed for user \"%s\"" +#, c-format msgid "OAuth bearer authentication failed for user \"%s\"" -msgstr "Peer-autentisering misslyckades för användare \"%s\"" +msgstr "OAuth-bärande autentisering misslyckades för användare \"%s\"" #: libpq/auth-oauth.c:681 #, c-format msgid "Validator failed to authorize the provided token." -msgstr "" +msgstr "Validatorn misslyckades att auktoriserad bifogad token." #: libpq/auth-oauth.c:705 #, c-format msgid "Validator provided no identity." -msgstr "" +msgstr "Validatorn gav ingen identitet." #: libpq/auth-oauth.c:760 #, fuzzy, c-format -#| msgid "archive modules have to define the symbol %s" msgid "%s module \"%s\" must define the symbol %s" -msgstr "arkiveringsmoduler måste definiera symbolen %s" +msgstr "%s-modul \"%s\" måste definiera symbolen %s" #: libpq/auth-oauth.c:773 #, fuzzy, c-format @@ -15538,13 +15525,12 @@ msgstr "inkompatibelt bibliotek \"%s\": magiskt block matchar inte" #: libpq/auth-oauth.c:775 #, c-format msgid "Server has magic number 0x%08X, module has 0x%08X." -msgstr "" +msgstr "Server har magiskt nummer 0x%08X, modulen har 0x%08X." #: libpq/auth-oauth.c:784 -#, fuzzy, c-format -#| msgid "archive modules must register an archive callback" +#, c-format msgid "%s module \"%s\" must provide a %s callback" -msgstr "arkiveringsmoduler måste registrera en arkiverings-callback" +msgstr "%s-modul \"%s\" måste ge en %s-callback" #: libpq/auth-oauth.c:833 #, fuzzy, c-format @@ -15572,16 +15558,14 @@ msgid "line %d of configuration file \"%s\"" msgstr "rad %d i konfigurationsfil \"%s\"" #: libpq/auth-oauth.c:867 -#, fuzzy, c-format -#| msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set" +#, c-format msgid "authentication method \"oauth\" requires argument \"validator\" to be set when oauth_validator_libraries contains multiple options" -msgstr "autentiseringsmetoden \"ldap\" kräver att argumenten \"ldapbasedn\", \"ldapprefix\" eller \"ldapsuffix\" är satta" +msgstr "autentiseringsmetoden \"oauth\" kräver att argumentet \"validator\" är satt när oauth_validator_libraries innehåller multipla flaggor" #: libpq/auth-oauth.c:882 -#, fuzzy, c-format -#| msgid "role \"%s\" is not permitted to log in" +#, c-format msgid "validator \"%s\" is not permitted by %s" -msgstr "roll \"%s\" tillåts inte logga in" +msgstr "validator \"%s\" tillåts inte av %s" #: libpq/auth-sasl.c:89 #, c-format @@ -16582,12 +16566,12 @@ msgstr "kunde inte sätta gruppen på filen \"%s\": %m" #: libpq/be-secure-openssl.c:1441 msgid "No valid groups found" -msgstr "" +msgstr "Inga giltiga grupper hittades" #: libpq/be-secure-openssl.c:1442 #, c-format msgid "Ensure that each group name is spelled correctly and supported by the installed version of OpenSSL." -msgstr "" +msgstr "Säkerställ att varje gruppnamn är rättstavat och stöds av den installerade versionen av OpenSSL." #: libpq/be-secure-openssl.c:1488 msgid "no SSL error reported" @@ -16637,23 +16621,22 @@ msgstr "katalogsökväg för nytt kluster är för lång" #: libpq/crypt.c:175 #, c-format msgid "Encrypted passwords must be no longer than %d bytes." -msgstr "" +msgstr "Krypterade lösenord får inte vara längre än %d byte." #: libpq/crypt.c:183 -#, fuzzy, c-format -#| msgid "could not encrypt password: %s" +#, c-format msgid "setting an MD5-encrypted password" -msgstr "kan inte kryptera lösenord: %s" +msgstr "sätter ett MD5-kypterat lösenord" #: libpq/crypt.c:184 #, c-format msgid "MD5 password support is deprecated and will be removed in a future release of PostgreSQL." -msgstr "" +msgstr "Support för MD5-lösenord är föråldrat och kommer tas bort i en framtida release av PostgreSQL." #: libpq/crypt.c:185 #, c-format msgid "Refer to the PostgreSQL documentation for details about migrating to another password type." -msgstr "" +msgstr "Se PostgreSQLs dokumentation för detaljer om hur man migrerar till en annan sorts lösenord." #: libpq/crypt.c:216 #, c-format @@ -17501,7 +17484,7 @@ msgstr "utökningsbar nodtyp \"%s\" finns redan" msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "ExtensibleNodeMethods \"%s\" har inte registerats" -#: nodes/makefuncs.c:154 nodes/makefuncs.c:180 statistics/extended_stats.c:2306 +#: 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 "relationen \"%s\" har ingen composite-typ" @@ -17542,44 +17525,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:1462 parser/analyze.c:1815 parser/analyze.c:2074 +#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 #: parser/analyze.c:3395 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s tillåts inte med UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2205 optimizer/plan/planner.c:4091 +#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 #, c-format msgid "could not implement GROUP BY" msgstr "kunde inte implementera GROUP BY" -#: optimizer/plan/planner.c:2206 optimizer/plan/planner.c:4092 -#: optimizer/plan/planner.c:4773 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 +#: optimizer/plan/planner.c:4806 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:4772 +#: optimizer/plan/planner.c:4805 #, c-format msgid "could not implement DISTINCT" msgstr "kunde inte implementera DISTINCT" -#: optimizer/plan/planner.c:6234 +#: optimizer/plan/planner.c:6267 #, c-format msgid "could not implement window PARTITION BY" msgstr "kunde inte implementera fönster-PARTITION BY" -#: optimizer/plan/planner.c:6235 +#: optimizer/plan/planner.c:6268 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Fönsterpartitioneringskolumner måsta ha en sorterbar datatyp." -#: optimizer/plan/planner.c:6239 +#: optimizer/plan/planner.c:6272 #, c-format msgid "could not implement window ORDER BY" msgstr "kunde inte implementera fönster-ORDER BY" -#: optimizer/plan/planner.c:6240 +#: optimizer/plan/planner.c:6273 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Fönsterordningskolumner måste ha en sorterbar datatyp." @@ -20057,12 +20040,12 @@ msgstr "kolumn \"%s\" finns med två gånger i unique-villkoret" #: parser/parse_utilcmd.c:2799 #, c-format msgid "column \"%s\" in WITHOUT OVERLAPS is not a range or multirange type" -msgstr "" +msgstr "kolumn \"%s\" i WITHOUT OVERLAPS är inte av typen range eller multirange" #: parser/parse_utilcmd.c:2827 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" -msgstr "" +msgstr "villkor som använder WITHOUT OVERLAPS kräver minst två kolumner" #: parser/parse_utilcmd.c:3124 #, c-format @@ -20354,7 +20337,7 @@ msgid "column %d of the partition key has type \"%s\", but supplied value is of msgstr "kolumn %d i partitioneringsnyckeln har typ \"%s\" men använt värde har typ \"%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 "kunde inte göra stat() på datakatalog \"%s\": %m" @@ -20421,34 +20404,34 @@ msgstr "stora sidor stöds inte på denna plattform" msgid "huge pages not supported with the current \"shared_memory_type\" setting" msgstr "stora sidor stöds inte vid nuvarande inställning av \"shared_memory_type\"" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1406 +#: 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 "redan existerande delat minnesblock (nyckel %lu, ID %lu) används fortfarande" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1408 +#: 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 "Stäng ner gamla serverprocesser som hör ihop med datakatalogen \"%s\"." -#: port/sysv_sema.c:120 +#: port/sysv_sema.c:135 #, c-format msgid "could not create semaphores: %m" msgstr "kan inte skapa semafor: %m" -#: port/sysv_sema.c:121 +#: port/sysv_sema.c:136 #, c-format msgid "Failed system call was semget(%lu, %d, 0%o)." msgstr "Misslyckade systemanropet var 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 "Detta fel betyder *inte* att disken blivit full. Detta fel kommer när systemgränsen för maximalt antal semaforvektorer (SEMMNI) överskridits eller när systemets globala maximum för semaforer (SEMMNS) överskridits. Du behöver öka respektive kernel-parameter. Alternativt kan du minska PostgreSQL:s användning av semaforer genom att dra ner på parametern \"max_connections\". PostgreSQL:s dokumentation innehåller mer information om hur du konfigurerar systemet för 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 "Du kan behöva öka kärnans SEMVMX-värde till minst %d. Se PostgreSQL:s dokumentation för mer information." @@ -21084,13 +21067,11 @@ msgstr "arbetarprocess för slotsynkronisering" #: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 msgid "io worker" -msgstr "" +msgstr "io-arbetare" #: postmaster/postmaster.c:2545 postmaster/postmaster.c:2547 -#, fuzzy -#| msgid "could not write to child process: %s\n" msgid "untracked child process" -msgstr "kunde inte skriva till barnprocess: %s\n" +msgstr "ospårad barnprocess" #: postmaster/postmaster.c:2580 #, c-format @@ -21176,16 +21157,14 @@ msgid "database system is ready to accept read-only connections" msgstr "databassystemet är redo att ta emot read-only-anslutningar" #: postmaster/postmaster.c:3846 -#, fuzzy, c-format -#| msgid "manifest ended unexpectedly" +#, c-format msgid "WAL was shut down unexpectedly" -msgstr "manifestet avslutades oväntat" +msgstr "WAL ständes ner oväntat" #: postmaster/postmaster.c:3971 -#, fuzzy, c-format -#| msgid "no slot available for new background worker process" +#, c-format msgid "no slot available for new autovacuum worker process" -msgstr "ingen slot tillgänglig till ny process för bakgrundsarbete" +msgstr "ingen slot tillgänglig till ny process för autovaccum" #: postmaster/postmaster.c:3986 #, c-format @@ -21537,10 +21516,8 @@ msgid "Updating the row that was modified by a non-existent origin in transactio msgstr "" #: replication/logical/conflict.c:265 -#, fuzzy -#| msgid "could not find a \"%s\" to execute" msgid "Could not find the row to be updated." -msgstr "kunde inte hitta en \"%s\" att köra" +msgstr "Kunde inte hitta raden som skulle uppdateras." #: replication/logical/conflict.c:270 #, c-format @@ -21558,15 +21535,13 @@ msgid "Deleting the row that was modified by a non-existent origin in transactio msgstr "" #: replication/logical/conflict.c:284 -#, fuzzy -#| msgid "could not find a \"%s\" to execute" msgid "Could not find the row to be deleted." -msgstr "kunde inte hitta en \"%s\" att köra" +msgstr "Kunde inte hitta raden som skulle tas bort." #: replication/logical/conflict.c:347 #, c-format msgid "Key %s" -msgstr "" +msgstr "Nyckel %s" #: replication/logical/conflict.c:364 #, c-format @@ -21579,40 +21554,34 @@ msgid "Existing local tuple %s" msgstr "" #: replication/logical/conflict.c:396 -#, fuzzy, c-format -#| msgid "composite type %s" +#, c-format msgid "remote tuple %s" -msgstr "composite-typ %s" +msgstr "fjärr-tupel %s" #: replication/logical/conflict.c:400 -#, fuzzy, c-format -#| msgid "composite type %s" +#, c-format msgid "Remote tuple %s" -msgstr "composite-typ %s" +msgstr "Fjärr-tupel %s" #: replication/logical/conflict.c:434 -#, fuzzy, c-format -#| msgid ", replica identity" +#, c-format msgid "replica identity %s" -msgstr ", replikaidentitet" +msgstr "replikaidentitet %s" #: replication/logical/conflict.c:435 -#, fuzzy, c-format -#| msgid ", replica identity" +#, c-format msgid "replica identity full %s" -msgstr ", replikaidentitet" +msgstr "full replikaidentitet %s" #: replication/logical/conflict.c:440 -#, fuzzy, c-format -#| msgid "Replica Identity" +#, c-format msgid "Replica identity %s" -msgstr "Replikaidentitet" +msgstr "Replikaidentitet %s" #: replication/logical/conflict.c:441 -#, fuzzy, c-format -#| msgid "Replica Identity" +#, c-format msgid "Replica identity full %s" -msgstr "Replikaidentitet" +msgstr "Full replikaidentitet %s" #: replication/logical/decode.c:177 replication/logical/logical.c:143 #, c-format @@ -21620,10 +21589,9 @@ msgid "logical decoding on standby requires \"wal_level\" >= \"logical\" on the msgstr "logisk avkodning på standby kräver \"wal_level\" >= \"logical\" på primären" #: replication/logical/launcher.c:344 -#, fuzzy, c-format -#| msgid "cannot start logical replication workers when max_replication_slots = 0" +#, c-format msgid "cannot start logical replication workers when \"max_active_replication_origins\" is 0" -msgstr "kan inte starta logisk replikeringsarbetare när max_replication_slots = 0" +msgstr "kan inte starta logisk replikeringsarbetare när \"max_active_replication_origins\" är 0" #: replication/logical/launcher.c:437 #, c-format @@ -23674,13 +23642,12 @@ msgstr "kunde inte lista ut datatypen för argument %d" #: statistics/attribute_stats.c:317 #, c-format msgid "Cannot set STATISTIC_KIND_HISTOGRAM or STATISTIC_KIND_CORRELATION." -msgstr "" +msgstr "Kan inte sätta STATISTIC_KIND_HISTOGRAM eller STATISTIC_KIND_CORRELATION." #: statistics/attribute_stats.c:330 -#, fuzzy, c-format -#| msgid "variable \"%s\" is not an array" +#, c-format msgid "attribute \"%s\" is not a range type" -msgstr "variabel \"%s\" är inte en array" +msgstr "attribut \"%s\" är inte av typen range" #: statistics/attribute_stats.c:331 #, c-format @@ -23688,10 +23655,9 @@ msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS msgstr "Kan inte sätta STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM eller STATISTIC_KIND_BOUNDS_HISTOGRAM." #: statistics/attribute_stats.c:590 statistics/attribute_stats.c:598 -#, fuzzy, c-format -#| msgid "attribute %d of relation with OID %u does not exist" +#, c-format msgid "attribute %d of relation \"%s\" does not exist" -msgstr "attribut %d i relation med OID %u existerar inte" +msgstr "attribut %d i relation \"%s\" existerar inte" #: statistics/attribute_stats.c:732 statistics/stat_utils.c:80 #, fuzzy, c-format @@ -23728,10 +23694,9 @@ msgid "reltuples cannot be < -1.0" msgstr "intervall-subtyp kan inte vara %s" #: statistics/stat_utils.c:44 -#, fuzzy, c-format -#| msgid "\"%s\" cannot be empty." +#, c-format msgid "\"%s\" cannot be NULL" -msgstr "\"%s\" får inte vara tom." +msgstr "\"%s\" får inte vara NULL" #: statistics/stat_utils.c:71 #, fuzzy, c-format @@ -23801,16 +23766,13 @@ msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." msgstr "" #: storage/aio/method_io_uring.c:374 -#, fuzzy, c-format -#| msgid "Consider increasing the configuration parameter \"%s\"." +#, c-format msgid "Consider increasing \"ulimit -n\" to at least %d." -msgstr "Överväg att öka konfigurationsparametern \"%s\"." +msgstr "Överväg att öka \"ulimit -n\" till minst %d." #: storage/aio/method_io_uring.c:380 -#, fuzzy -#| msgid "server does not support server-side compression" msgid "Kernel does not support io_uring." -msgstr "servern stöder inte komprimering på serversidan" +msgstr "Kärnan stöder inte io_uring." #: storage/aio/method_io_uring.c:388 #, fuzzy, c-format @@ -29715,113 +29677,113 @@ msgstr "för många uppkopplingar för roll \"%s\"" msgid "invalid role OID: %u" msgstr "ogiltigt roll-OID: %u" -#: utils/init/miscinit.c:1197 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "databassystemet är nedstängt" -#: utils/init/miscinit.c:1284 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "kan inte skapa låsfil \"%s\": %m" -#: utils/init/miscinit.c:1298 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "kunde inte öppna låsfil \"%s\": %m" -#: utils/init/miscinit.c:1305 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "kunde inte läsa låsfil \"%s\": %m" -#: utils/init/miscinit.c:1314 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "låsfilen \"%s\" är tom" -#: utils/init/miscinit.c:1315 +#: 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 "Antingen startar en annan server eller så är låsfilen kvar från en tidigare serverkrash vid uppstart." -#: utils/init/miscinit.c:1359 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "låsfil med namn \"%s\" finns redan" -#: utils/init/miscinit.c:1363 +#: utils/init/miscinit.c:1364 #, c-format msgid "Is another postgres (PID %d) running in data directory \"%s\"?" msgstr "Kör en annan postgres (PID %d) i datakatalogen \"%s\"?" -#: utils/init/miscinit.c:1365 +#: utils/init/miscinit.c:1366 #, c-format msgid "Is another postmaster (PID %d) running in data directory \"%s\"?" msgstr "Kör en annan postmaster (PID %d) i datakatalogen \"%s\"?" -#: utils/init/miscinit.c:1368 +#: utils/init/miscinit.c:1369 #, c-format msgid "Is another postgres (PID %d) using socket file \"%s\"?" msgstr "Använder en annan postgres (PID %d) uttagesfilen (socket) \"%s\"?" -#: utils/init/miscinit.c:1370 +#: utils/init/miscinit.c:1371 #, c-format msgid "Is another postmaster (PID %d) using socket file \"%s\"?" msgstr "Använder en annan postmaster (PID %d) uttagesfilen (socket) \"%s\"?" -#: utils/init/miscinit.c:1421 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "kunde inte ta bort gammal låsfil \"%s\": %m" -#: utils/init/miscinit.c:1423 +#: 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 "Filen verkar ha lämnats kvar av misstag, men kan inte tas bort. Ta bort den för hand och försök igen.>" -#: utils/init/miscinit.c:1460 utils/init/miscinit.c:1474 -#: utils/init/miscinit.c:1485 +#: 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 "kunde inte skriva låsfil \"%s\": %m" -#: utils/init/miscinit.c:1596 utils/init/miscinit.c:1738 utils/misc/guc.c:5768 +#: 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 "kunde inte läsa från fil \"%s\": %m" -#: utils/init/miscinit.c:1726 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "kunde inte öppna fil \"%s\": %m: fortsätter ändå" -#: utils/init/miscinit.c:1751 +#: utils/init/miscinit.c:1752 #, c-format msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld" msgstr "låsfil \"%s\" innehåller fel PID: %ld istället för %ld" -#: utils/init/miscinit.c:1790 utils/init/miscinit.c:1806 +#: utils/init/miscinit.c:1791 utils/init/miscinit.c:1807 #, c-format msgid "\"%s\" is not a valid data directory" msgstr "\"%s\" är inte en giltigt datakatalog" -#: utils/init/miscinit.c:1792 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "Filen \"%s\" saknas." -#: utils/init/miscinit.c:1808 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "Filen \"%s\" innehåller inte giltig data." -#: utils/init/miscinit.c:1810 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "Du kan behöva köra initdb." -#: utils/init/miscinit.c:1818 +#: 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 "Datakatalogen har skapats av PostgreSQL version %s, som inte är kompatibel med version %s." @@ -32491,7 +32453,7 @@ msgstr "Förhindrar access till icke-system-relationer av angivna sorter." #: utils/misc/guc_tables.c:4967 msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." -msgstr "" +msgstr "Listar bibliotek som kan anropas för att validera OAuth v2 bärande token." #: utils/misc/guc_tables.c:4978 msgid "Logs specified aspects of connection establishment and setup." @@ -32608,7 +32570,7 @@ msgstr "Väljer implementation för delat minne som används för det delade min #: utils/misc/guc_tables.c:5259 msgid "Selects the file copy method." -msgstr "" +msgstr "Väljer metod för att kopiera filer." #: utils/misc/guc_tables.c:5269 msgid "Selects the method used for forcing WAL updates to disk." diff --git a/src/bin/initdb/po/ru.po b/src/bin/initdb/po/ru.po index c1fab13b8c488..8d2ec2fcb9c8a 100644 --- a/src/bin/initdb/po/ru.po +++ b/src/bin/initdb/po/ru.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: initdb (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-11-02 08:21+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-11-02 08:27+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -22,22 +22,22 @@ 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" -#: ../../../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 "подсказка: " @@ -62,28 +62,28 @@ msgstr "не удалось найти запускаемый файл \"%s\"" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "не удалось преобразовать относительный путь \"%s\" в абсолютный: %m" -#: ../../common/exec.c:382 initdb.c:750 +#: ../../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:372 initdb.c:408 +#: ../../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 "нехватка памяти" @@ -99,46 +99,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 "не удалось синхронизировать с ФС файл \"%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" @@ -247,14 +247,14 @@ 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 "" @@ -270,102 +270,102 @@ msgstr "не удалось создать связь для каталога \" msgid "could not get junction for \"%s\": %s\n" msgstr "не удалось получить связь для каталога \"%s\": %s\n" -#: initdb.c:369 +#: initdb.c:372 #, c-format msgid "_wsetlocale() failed" msgstr "ошибка в _wsetlocale()" -#: initdb.c:376 +#: initdb.c:379 #, c-format msgid "setlocale() failed" msgstr "ошибка в setlocale()" -#: initdb.c:390 +#: initdb.c:393 #, c-format msgid "failed to restore old locale" msgstr "не удалось восстановить старую локаль" -#: initdb.c:393 +#: initdb.c:396 #, c-format msgid "failed to restore old locale \"%s\"" msgstr "не удалось восстановить старую локаль \"%s\"" -#: initdb.c:682 initdb.c:1674 +#: initdb.c:685 initdb.c:1692 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "не удалось открыть файл \"%s\" для чтения: %m" -#: initdb.c:726 initdb.c:1030 initdb.c:1050 +#: 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:730 initdb.c:1033 initdb.c:1052 +#: initdb.c:733 initdb.c:1038 initdb.c:1057 #, c-format msgid "could not write file \"%s\": %m" msgstr "не удалось записать файл \"%s\": %m" -#: initdb.c:734 +#: initdb.c:737 #, c-format msgid "could not close file \"%s\": %m" msgstr "не удалось закрыть файл \"%s\": %m" -#: initdb.c:768 +#: initdb.c:771 #, c-format msgid "removing data directory \"%s\"" msgstr "удаление каталога данных \"%s\"" -#: initdb.c:770 +#: initdb.c:773 #, c-format msgid "failed to remove data directory" msgstr "ошибка при удалении каталога данных" -#: initdb.c:774 +#: initdb.c:777 #, c-format msgid "removing contents of data directory \"%s\"" msgstr "удаление содержимого каталога данных \"%s\"" -#: initdb.c:777 +#: initdb.c:780 #, c-format msgid "failed to remove contents of data directory" msgstr "ошибка при удалении содержимого каталога данных" -#: initdb.c:782 +#: initdb.c:785 #, c-format msgid "removing WAL directory \"%s\"" msgstr "удаление каталога WAL \"%s\"" -#: initdb.c:784 +#: initdb.c:787 #, c-format msgid "failed to remove WAL directory" msgstr "ошибка при удалении каталога WAL" -#: initdb.c:788 +#: initdb.c:791 #, c-format msgid "removing contents of WAL directory \"%s\"" msgstr "удаление содержимого каталога WAL \"%s\"" -#: initdb.c:790 +#: initdb.c:793 #, c-format msgid "failed to remove contents of WAL directory" msgstr "ошибка при удалении содержимого каталога WAL" -#: initdb.c:797 +#: initdb.c:800 #, c-format msgid "data directory \"%s\" not removed at user's request" msgstr "каталог данных \"%s\" не был удалён по запросу пользователя" -#: initdb.c:801 +#: initdb.c:804 #, c-format msgid "WAL directory \"%s\" not removed at user's request" msgstr "каталог WAL \"%s\" не был удалён по запросу пользователя" -#: initdb.c:819 +#: initdb.c:822 #, c-format msgid "cannot be run as root" msgstr "программу не должен запускать root" -#: initdb.c:820 +#: initdb.c:823 #, c-format msgid "" "Please log in (using, e.g., \"su\") as the (unprivileged) user that will own " @@ -374,17 +374,17 @@ msgstr "" "Пожалуйста, переключитесь на обычного пользователя (например, используя " "\"su\"), которому будет принадлежать серверный процесс." -#: initdb.c:852 +#: initdb.c:855 #, c-format msgid "\"%s\" is not a valid server encoding name" msgstr "\"%s\" — некорректное имя серверной кодировки" -#: initdb.c:996 +#: initdb.c:1001 #, c-format msgid "file \"%s\" does not exist" msgstr "файл \"%s\" не существует" -#: initdb.c:997 initdb.c:1002 initdb.c:1009 +#: initdb.c:1002 initdb.c:1007 initdb.c:1014 #, c-format msgid "" "This might mean you have a corrupted installation or identified the wrong " @@ -393,124 +393,124 @@ msgstr "" "Это означает, что ваша установка PostgreSQL испорчена или в параметре -L " "задан неправильный каталог." -#: initdb.c:1001 +#: initdb.c:1006 #, c-format msgid "could not access file \"%s\": %m" msgstr "ошибка при обращении к файлу \"%s\": %m" -#: initdb.c:1008 +#: initdb.c:1013 #, c-format msgid "file \"%s\" is not a regular file" msgstr "\"%s\" — не обычный файл" -#: initdb.c:1141 +#: initdb.c:1157 #, c-format msgid "selecting dynamic shared memory implementation ... " msgstr "выбирается реализация динамической разделяемой памяти... " -#: initdb.c:1150 +#: initdb.c:1167 #, c-format msgid "selecting default \"max_connections\" ... " msgstr "выбирается значение \"max_connections\" по умолчанию... " -#: initdb.c:1170 +#: initdb.c:1188 #, c-format msgid "selecting default \"shared_buffers\" ... " msgstr "выбирается значение \"shared_buffers\" по умолчанию... " -#: initdb.c:1193 +#: initdb.c:1211 #, c-format msgid "selecting default time zone ... " msgstr "выбирается часовой пояс по умолчанию... " -#: initdb.c:1272 +#: initdb.c:1291 msgid "creating configuration files ... " msgstr "создание конфигурационных файлов... " -#: initdb.c:1425 initdb.c:1439 initdb.c:1506 initdb.c:1517 +#: 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:1536 +#: initdb.c:1554 #, c-format msgid "running bootstrap script ... " msgstr "выполняется подготовительный скрипт... " -#: initdb.c:1548 +#: initdb.c:1566 #, c-format msgid "input file \"%s\" does not belong to PostgreSQL %s" msgstr "входной файл \"%s\" не принадлежит PostgreSQL %s" -#: initdb.c:1550 +#: initdb.c:1568 #, c-format msgid "Specify the correct path using the option -L." msgstr "Укажите корректный путь в параметре -L." -#: initdb.c:1652 +#: initdb.c:1670 msgid "Enter new superuser password: " msgstr "Введите новый пароль суперпользователя: " -#: initdb.c:1653 +#: initdb.c:1671 msgid "Enter it again: " msgstr "Повторите его: " -#: initdb.c:1656 +#: initdb.c:1674 #, c-format msgid "Passwords didn't match.\n" msgstr "Пароли не совпадают.\n" -#: initdb.c:1680 +#: initdb.c:1698 #, c-format msgid "could not read password from file \"%s\": %m" msgstr "не удалось прочитать пароль из файла \"%s\": %m" -#: initdb.c:1683 +#: initdb.c:1701 #, c-format msgid "password file \"%s\" is empty" msgstr "файл пароля \"%s\" пуст" -#: initdb.c:2095 +#: initdb.c:2113 #, c-format msgid "caught signal\n" msgstr "получен сигнал\n" -#: initdb.c:2101 +#: initdb.c:2119 #, c-format msgid "could not write to child process: %s\n" msgstr "не удалось записать в поток дочернего процесса: %s\n" -#: initdb.c:2109 +#: initdb.c:2127 #, c-format msgid "ok\n" msgstr "ок\n" -#: initdb.c:2191 initdb.c:2237 +#: initdb.c:2209 initdb.c:2255 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "имя локали \"%s\" содержит не-ASCII символы" -#: initdb.c:2217 +#: initdb.c:2235 #, c-format msgid "invalid locale name \"%s\"" msgstr "ошибочное имя локали \"%s\"" -#: initdb.c:2218 +#: initdb.c:2236 #, c-format msgid "If the locale name is specific to ICU, use --icu-locale." msgstr "Если эта локаль свойственна ICU, укажите --icu-locale." -#: initdb.c:2231 +#: initdb.c:2249 #, c-format msgid "invalid locale settings; check LANG and LC_* environment variables" msgstr "неверные установки локали; проверьте переменные окружения LANG и LC_*" -#: initdb.c:2262 initdb.c:2286 +#: initdb.c:2280 initdb.c:2304 #, c-format msgid "encoding mismatch" msgstr "несоответствие кодировки" -#: initdb.c:2263 +#: initdb.c:2281 #, c-format msgid "" "The encoding you selected (%s) and the encoding that the selected locale " @@ -521,7 +521,7 @@ msgstr "" "может привести к неправильной работе различных функций обработки текстовых " "строк." -#: initdb.c:2268 initdb.c:2289 +#: initdb.c:2286 initdb.c:2307 #, c-format msgid "" "Rerun %s and either do not specify an encoding explicitly, or choose a " @@ -530,47 +530,47 @@ msgstr "" "Для исправления перезапустите %s, не указывая кодировку явно, либо выберите " "подходящее сочетание параметров локализации." -#: initdb.c:2287 +#: initdb.c:2305 #, c-format msgid "The encoding you selected (%s) is not supported with the ICU provider." msgstr "Выбранная вами кодировка (%s) не поддерживается провайдером ICU." -#: initdb.c:2338 +#: initdb.c:2356 #, c-format msgid "could not convert locale name \"%s\" to language tag: %s" msgstr "не удалось получить из названия локали \"%s\" метку языка: %s" -#: initdb.c:2344 initdb.c:2396 initdb.c:2488 +#: initdb.c:2362 initdb.c:2414 initdb.c:2508 #, c-format msgid "ICU is not supported in this build" msgstr "ICU не поддерживается в данной сборке" -#: initdb.c:2367 +#: initdb.c:2385 #, c-format msgid "could not get language from locale \"%s\": %s" msgstr "не удалось определить язык для локали \"%s\": %s" -#: initdb.c:2393 +#: initdb.c:2411 #, c-format msgid "locale \"%s\" has unknown language \"%s\"" msgstr "для локали \"%s\" получен неизвестный язык \"%s\"" -#: initdb.c:2454 +#: initdb.c:2472 #, c-format msgid "locale must be specified if provider is %s" msgstr "если выбран провайдер %s, необходимо задать локаль" -#: initdb.c:2465 +#: initdb.c:2485 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "неверное имя локали \"%s\" для встроенного провайдера" -#: initdb.c:2476 +#: initdb.c:2496 #, c-format msgid "Using language tag \"%s\" for ICU locale \"%s\".\n" msgstr "Для локали ICU \"%s\" используется метка языка \"%s\".\n" -#: initdb.c:2499 +#: initdb.c:2519 #, c-format msgid "" "%s initializes a PostgreSQL database cluster.\n" @@ -579,17 +579,17 @@ msgstr "" "%s инициализирует кластер PostgreSQL.\n" "\n" -#: initdb.c:2500 +#: initdb.c:2520 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: initdb.c:2501 +#: initdb.c:2521 #, c-format msgid " %s [OPTION]... [DATADIR]\n" msgstr " %s [ПАРАМЕТР]... [КАТАЛОГ]\n" -#: initdb.c:2502 +#: initdb.c:2522 #, c-format msgid "" "\n" @@ -598,7 +598,7 @@ msgstr "" "\n" "Параметры:\n" -#: initdb.c:2503 +#: initdb.c:2523 #, c-format msgid "" " -A, --auth=METHOD default authentication method for local " @@ -607,7 +607,7 @@ msgstr "" " -A, --auth=МЕТОД метод проверки подлинности по умолчанию\n" " для локальных подключений\n" -#: initdb.c:2504 +#: initdb.c:2524 #, c-format msgid "" " --auth-host=METHOD default authentication method for local TCP/IP " @@ -616,7 +616,7 @@ msgstr "" " --auth-host=МЕТОД метод проверки подлинности по умолчанию\n" " для локальных TCP/IP-подключений\n" -#: initdb.c:2505 +#: initdb.c:2525 #, c-format msgid "" " --auth-local=METHOD default authentication method for local-socket " @@ -625,17 +625,17 @@ msgstr "" " --auth-local=МЕТОД метод проверки подлинности по умолчанию\n" " для локальных подключений через сокет\n" -#: initdb.c:2506 +#: initdb.c:2526 #, c-format msgid " [-D, --pgdata=]DATADIR location for this database cluster\n" msgstr " [-D, --pgdata=]КАТАЛОГ расположение данных этого кластера БД\n" -#: initdb.c:2507 +#: initdb.c:2527 #, c-format msgid " -E, --encoding=ENCODING set default encoding for new databases\n" msgstr " -E, --encoding=КОДИРОВКА кодировка по умолчанию для новых баз\n" -#: initdb.c:2508 +#: initdb.c:2528 #, c-format msgid "" " -g, --allow-group-access allow group read/execute on data directory\n" @@ -644,12 +644,12 @@ msgstr "" "для\n" " группы\n" -#: initdb.c:2509 +#: initdb.c:2529 #, c-format msgid " --icu-locale=LOCALE set ICU locale ID for new databases\n" msgstr " --icu-locale=ЛОКАЛЬ идентификатор локали ICU для новых баз\n" -#: initdb.c:2510 +#: initdb.c:2530 #, c-format msgid "" " --icu-rules=RULES set additional ICU collation rules for new " @@ -658,17 +658,17 @@ msgstr "" " --icu-rules=ПРАВИЛА дополнительные правила сортировки ICU для новых " "баз\n" -#: initdb.c:2511 +#: initdb.c:2531 #, c-format msgid " -k, --data-checksums use data page checksums\n" msgstr " -k, --data-checksums включить контроль целостности страниц\n" -#: initdb.c:2512 +#: initdb.c:2532 #, c-format msgid " --locale=LOCALE set default locale for new databases\n" msgstr " --locale=ЛОКАЛЬ локаль по умолчанию для новых баз\n" -#: initdb.c:2513 +#: initdb.c:2533 #, c-format msgid "" " --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n" @@ -682,12 +682,12 @@ msgstr "" " установить соответствующий параметр локали\n" " для новых баз (вместо значения из окружения)\n" -#: initdb.c:2517 +#: initdb.c:2537 #, c-format msgid " --no-locale equivalent to --locale=C\n" msgstr " --no-locale эквивалентно --locale=C\n" -#: initdb.c:2518 +#: initdb.c:2538 #, c-format msgid "" " --builtin-locale=LOCALE\n" @@ -696,7 +696,7 @@ msgstr "" " --builtin-locale=ЛОКАЛЬ\n" " имя встроенной локали для новых баз\n" -#: initdb.c:2520 +#: initdb.c:2540 #, c-format msgid "" " --locale-provider={builtin|libc|icu}\n" @@ -705,14 +705,19 @@ msgstr "" " --locale-provider={builtin|libc|icu}\n" " провайдер основной локали для новых баз\n" -#: initdb.c:2522 +#: initdb.c:2542 +#, fuzzy, c-format +msgid " --no-data-checksums do not use data page checksums\n" +msgstr " -k, --data-checksums включить контроль целостности страниц\n" + +#: initdb.c:2543 #, c-format msgid "" " --pwfile=FILE read password for the new superuser from file\n" msgstr "" " --pwfile=ФАЙЛ прочитать пароль суперпользователя из файла\n" -#: initdb.c:2523 +#: initdb.c:2544 #, c-format msgid "" " -T, --text-search-config=CFG\n" @@ -721,29 +726,29 @@ msgstr "" " -T, --text-search-config=КОНФИГУРАЦИЯ\n" " конфигурация текстового поиска по умолчанию\n" -#: initdb.c:2525 +#: initdb.c:2546 #, c-format msgid " -U, --username=NAME database superuser name\n" msgstr " -U, --username=ИМЯ имя суперпользователя БД\n" -#: initdb.c:2526 +#: initdb.c:2547 #, c-format msgid "" " -W, --pwprompt prompt for a password for the new superuser\n" msgstr " -W, --pwprompt запросить пароль суперпользователя\n" -#: initdb.c:2527 +#: initdb.c:2548 #, c-format msgid "" " -X, --waldir=WALDIR location for the write-ahead log directory\n" msgstr " -X, --waldir=КАТАЛОГ расположение журнала предзаписи\n" -#: initdb.c:2528 +#: initdb.c:2549 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=РАЗМЕР размер сегментов WAL (в мегабайтах)\n" -#: initdb.c:2529 +#: initdb.c:2550 #, c-format msgid "" "\n" @@ -752,7 +757,7 @@ msgstr "" "\n" "Редко используемые параметры:\n" -#: initdb.c:2530 +#: initdb.c:2551 #, c-format msgid "" " -c, --set NAME=VALUE override default setting for server parameter\n" @@ -760,27 +765,27 @@ msgstr "" " -c, --set ИМЯ=ЗНАЧЕНИЕ переопределить значение серверного параметра по\n" " умолчанию\n" -#: initdb.c:2531 +#: initdb.c:2552 #, c-format msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug выдавать много отладочных сообщений\n" -#: initdb.c:2532 +#: initdb.c:2553 #, c-format msgid " --discard-caches set debug_discard_caches=1\n" msgstr " --discard-caches установить debug_discard_caches=1\n" -#: initdb.c:2533 +#: initdb.c:2554 #, c-format msgid " -L DIRECTORY where to find the input files\n" msgstr " -L КАТАЛОГ расположение входных файлов\n" -#: initdb.c:2534 +#: initdb.c:2555 #, c-format msgid " -n, --no-clean do not clean up after errors\n" msgstr " -n, --no-clean не очищать после ошибок\n" -#: initdb.c:2535 +#: initdb.c:2556 #, c-format msgid "" " -N, --no-sync do not wait for changes to be written safely to " @@ -788,23 +793,29 @@ msgid "" msgstr "" " -N, --no-sync не ждать завершения сохранения данных на диске\n" -#: initdb.c:2536 +#: initdb.c:2557 +#, c-format +msgid "" +" --no-sync-data-files do not sync files within database directories\n" +msgstr "" + +#: initdb.c:2558 #, c-format msgid " --no-instructions do not print instructions for next steps\n" msgstr "" " --no-instructions не выводить инструкции для дальнейших действий\n" -#: initdb.c:2537 +#: initdb.c:2559 #, c-format msgid " -s, --show show internal settings, then exit\n" msgstr " -s, --show показать внутренние установки и выйти\n" -#: initdb.c:2538 +#: initdb.c:2560 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=МЕТОД метод синхронизации файлов с ФС\n" -#: initdb.c:2539 +#: initdb.c:2561 #, c-format msgid "" " -S, --sync-only only sync database files to disk, then exit\n" @@ -812,7 +823,7 @@ msgstr "" " -S, --sync-only только синхронизировать с ФС файлы базы и " "завершиться\n" -#: initdb.c:2540 +#: initdb.c:2562 #, c-format msgid "" "\n" @@ -821,17 +832,17 @@ msgstr "" "\n" "Другие параметры:\n" -#: initdb.c:2541 +#: initdb.c:2563 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: initdb.c:2542 +#: initdb.c:2564 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: initdb.c:2543 +#: initdb.c:2565 #, c-format msgid "" "\n" @@ -841,7 +852,7 @@ msgstr "" "\n" "Если каталог данных не указан, используется переменная окружения PGDATA.\n" -#: initdb.c:2545 +#: initdb.c:2567 #, c-format msgid "" "\n" @@ -850,18 +861,18 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: initdb.c:2546 +#: initdb.c:2568 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" -#: initdb.c:2570 +#: initdb.c:2592 #, c-format msgid "invalid authentication method \"%s\" for \"%s\" connections" msgstr "" "нераспознанный метод проверки подлинности \"%s\" для подключений \"%s\"" -#: initdb.c:2584 +#: initdb.c:2606 #, c-format msgid "" "must specify a password for the superuser to enable password authentication" @@ -869,12 +880,12 @@ msgstr "" "для включения аутентификации по паролю необходимо указать пароль " "суперпользователя" -#: initdb.c:2603 +#: initdb.c:2625 #, c-format msgid "no data directory specified" msgstr "каталог данных не указан" -#: initdb.c:2604 +#: initdb.c:2626 #, c-format msgid "" "You must identify the directory where the data for this database system will " @@ -884,55 +895,55 @@ msgstr "" "Вы должны указать каталог, в котором будут располагаться данные этой СУБД. " "Это можно сделать, добавив ключ -D или установив переменную окружения PGDATA." -#: initdb.c:2621 +#: initdb.c:2643 #, c-format msgid "could not set environment" msgstr "не удалось задать переменную окружения" -#: initdb.c:2639 +#: 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:2642 +#: 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:2657 +#: initdb.c:2679 #, c-format msgid "input file location must be an absolute path" msgstr "расположение входных файлов должно задаваться абсолютным путём" -#: initdb.c:2674 +#: initdb.c:2696 #, c-format msgid "The database cluster will be initialized with locale \"%s\".\n" msgstr "Кластер баз данных будет инициализирован с локалью \"%s\".\n" -#: initdb.c:2677 +#: initdb.c:2699 #, c-format msgid "" "The database cluster will be initialized with this locale configuration:\n" msgstr "" "Кластер баз данных будет инициализирован со следующими параметрами локали:\n" -#: initdb.c:2678 +#: initdb.c:2700 #, c-format msgid " locale provider: %s\n" msgstr " провайдер локалей: %s\n" -#: initdb.c:2680 +#: initdb.c:2702 #, c-format msgid " default collation: %s\n" msgstr "" " правило сортировки\n" " по умолчанию: %s\n" -#: initdb.c:2681 +#: initdb.c:2703 #, c-format msgid "" " LC_COLLATE: %s\n" @@ -949,22 +960,22 @@ msgstr "" " LC_NUMERIC: %s\n" " LC_TIME: %s\n" -#: initdb.c:2711 +#: initdb.c:2733 #, c-format msgid "could not find suitable encoding for locale \"%s\"" msgstr "не удалось найти подходящую кодировку для локали \"%s\"" -#: initdb.c:2713 +#: initdb.c:2735 #, c-format msgid "Rerun %s with the -E option." msgstr "Перезапустите %s с параметром -E." -#: initdb.c:2714 initdb.c:3257 initdb.c:3377 initdb.c:3397 +#: 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:2726 +#: initdb.c:2748 #, c-format msgid "" "Encoding \"%s\" implied by locale is not allowed as a server-side encoding.\n" @@ -973,45 +984,45 @@ msgstr "" "Кодировка \"%s\", подразумеваемая локалью, не годится для сервера.\n" "Вместо неё в качестве кодировки БД по умолчанию будет выбрана \"%s\".\n" -#: initdb.c:2731 +#: initdb.c:2753 #, c-format msgid "locale \"%s\" requires unsupported encoding \"%s\"" msgstr "для локали \"%s\" требуется неподдерживаемая кодировка \"%s\"" -#: initdb.c:2733 +#: initdb.c:2755 #, c-format msgid "Encoding \"%s\" is not allowed as a server-side encoding." msgstr "Кодировка \"%s\" недопустима в качестве серверной кодировки." -#: initdb.c:2735 +#: initdb.c:2757 #, c-format msgid "Rerun %s with a different locale selection." msgstr "Перезапустите %s, выбрав другую локаль." -#: initdb.c:2743 +#: initdb.c:2765 #, c-format msgid "The default database encoding has accordingly been set to \"%s\".\n" msgstr "" "Кодировка БД по умолчанию, выбранная в соответствии с настройками: \"%s\".\n" -#: initdb.c:2757 +#: initdb.c:2781 #, c-format msgid "builtin provider locale \"%s\" requires encoding \"%s\"" msgstr "для локали \"%s\" встроенного провайдера требуется кодировка \"%s\"" -#: initdb.c:2819 +#: initdb.c:2843 #, c-format msgid "could not find suitable text search configuration for locale \"%s\"" msgstr "" "не удалось найти подходящую конфигурацию текстового поиска для локали \"%s\"" -#: initdb.c:2830 +#: initdb.c:2854 #, c-format msgid "suitable text search configuration for locale \"%s\" is unknown" msgstr "" "внимание: для локали \"%s\" нет известной конфигурации текстового поиска" -#: initdb.c:2835 +#: initdb.c:2859 #, c-format msgid "" "specified text search configuration \"%s\" might not match locale \"%s\"" @@ -1019,37 +1030,37 @@ msgstr "" "указанная конфигурация текстового поиска \"%s\" может не соответствовать " "локали \"%s\"" -#: initdb.c:2840 +#: initdb.c:2864 #, c-format msgid "The default text search configuration will be set to \"%s\".\n" msgstr "Выбрана конфигурация текстового поиска по умолчанию \"%s\".\n" -#: initdb.c:2883 initdb.c:2954 +#: initdb.c:2898 initdb.c:2969 #, c-format msgid "creating directory %s ... " msgstr "создание каталога %s... " -#: initdb.c:2888 initdb.c:2959 initdb.c:3007 initdb.c:3064 +#: 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:2897 initdb.c:2969 +#: initdb.c:2912 initdb.c:2984 #, c-format msgid "fixing permissions on existing directory %s ... " msgstr "исправление прав для существующего каталога %s... " -#: initdb.c:2902 initdb.c:2974 +#: initdb.c:2917 initdb.c:2989 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "не удалось поменять права для каталога \"%s\": %m" -#: initdb.c:2914 initdb.c:2986 +#: initdb.c:2929 initdb.c:3001 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "каталог \"%s\" существует, но он не пуст" -#: initdb.c:2918 +#: initdb.c:2933 #, c-format msgid "" "If you want to create a new database system, either remove or empty the " @@ -1058,29 +1069,29 @@ msgstr "" "Если вы хотите создать новую систему баз данных, удалите или очистите " "каталог \"%s\", либо при запуске %s в качестве пути укажите не \"%s\"." -#: initdb.c:2926 initdb.c:2996 initdb.c:3422 +#: initdb.c:2941 initdb.c:3011 initdb.c:3445 #, c-format msgid "could not access directory \"%s\": %m" msgstr "ошибка при обращении к каталогу \"%s\": %m" -#: initdb.c:2947 +#: initdb.c:2962 #, c-format msgid "WAL directory location must be an absolute path" msgstr "расположение каталога WAL должно определяться абсолютным путём" -#: initdb.c:2990 +#: 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:3000 +#: initdb.c:3015 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "не удалось создать символическую ссылку \"%s\": %m" -#: initdb.c:3019 +#: initdb.c:3034 #, c-format msgid "" "It contains a dot-prefixed/invisible file, perhaps due to it being a mount " @@ -1088,13 +1099,13 @@ msgid "" msgstr "" "Он содержит файл с точкой (невидимый), возможно, это точка монтирования." -#: initdb.c:3021 +#: 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:3023 +#: initdb.c:3038 #, c-format msgid "" "Using a mount point directly as the data directory is not recommended.\n" @@ -1104,62 +1115,62 @@ msgstr "" "рекомендуется.\n" "Создайте в монтируемом ресурсе подкаталог и используйте его." -#: initdb.c:3050 +#: initdb.c:3065 #, c-format msgid "creating subdirectories ... " msgstr "создание подкаталогов... " -#: initdb.c:3093 +#: initdb.c:3108 msgid "performing post-bootstrap initialization ... " msgstr "выполняется заключительная инициализация... " -#: initdb.c:3256 +#: initdb.c:3273 #, c-format msgid "-c %s requires a value" msgstr "для -c %s требуется значение" -#: initdb.c:3281 +#: initdb.c:3298 #, c-format msgid "Running in debug mode.\n" msgstr "Программа запущена в режиме отладки.\n" -#: initdb.c:3285 +#: initdb.c:3302 #, c-format msgid "Running in no-clean mode. Mistakes will not be cleaned up.\n" msgstr "" "Программа запущена в режиме 'no-clean' - очистки и исправления ошибок не " "будет.\n" -#: initdb.c:3358 +#: initdb.c:3375 #, c-format msgid "unrecognized locale provider: %s" msgstr "нераспознанный провайдер локали: %s" -#: initdb.c:3395 +#: initdb.c:3418 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "слишком много аргументов командной строки (первый: \"%s\")" -#: initdb.c:3402 initdb.c:3406 initdb.c:3410 +#: 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:3424 initdb.c:3487 +#: initdb.c:3447 initdb.c:3510 msgid "syncing data to disk ... " msgstr "сохранение данных на диске... " -#: initdb.c:3432 +#: initdb.c:3455 #, c-format msgid "password prompt and password file cannot be specified together" msgstr "нельзя одновременно запросить пароль и прочитать пароль из файла" -#: initdb.c:3443 +#: 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:3456 +#: initdb.c:3479 #, c-format msgid "" "superuser name \"%s\" is disallowed; role names cannot begin with \"pg_\"" @@ -1167,7 +1178,7 @@ msgstr "" "имя \"%s\" для суперпользователя не допускается; имена ролей не могут " "начинаться с \"pg_\"" -#: initdb.c:3458 +#: initdb.c:3481 #, c-format msgid "" "The files belonging to this database system will be owned by user \"%s\".\n" @@ -1178,17 +1189,17 @@ msgstr "" "От его имени также будет запускаться процесс сервера.\n" "\n" -#: initdb.c:3474 +#: initdb.c:3497 #, c-format msgid "Data page checksums are enabled.\n" msgstr "Контроль целостности страниц данных включён.\n" -#: initdb.c:3476 +#: initdb.c:3499 #, c-format msgid "Data page checksums are disabled.\n" msgstr "Контроль целостности страниц данных отключён.\n" -#: initdb.c:3493 +#: initdb.c:3516 #, c-format msgid "" "\n" @@ -1199,12 +1210,12 @@ msgstr "" "Сохранение данных на диск пропускается.\n" "Каталог данных может повредиться при сбое операционной системы.\n" -#: initdb.c:3498 +#: initdb.c:3521 #, c-format msgid "enabling \"trust\" authentication for local connections" msgstr "включение метода аутентификации \"trust\" для локальных подключений" -#: initdb.c:3499 +#: initdb.c:3522 #, c-format msgid "" "You can change this by editing pg_hba.conf or using the option -A, or --auth-" @@ -1214,11 +1225,11 @@ msgstr "" "initdb с ключом -A, --auth-local или --auth-host." #. translator: This is a placeholder in a shell command. -#: initdb.c:3529 +#: initdb.c:3552 msgid "logfile" msgstr "файл_журнала" -#: initdb.c:3531 +#: initdb.c:3554 #, c-format msgid "" "\n" diff --git a/src/bin/pg_amcheck/po/ru.po b/src/bin/pg_amcheck/po/ru.po index 0889dfb2f8ebc..4d7da795e2a80 100644 --- a/src/bin/pg_amcheck/po/ru.po +++ b/src/bin/pg_amcheck/po/ru.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_amcheck (PostgreSQL) 14\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-05 08:23+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -12,22 +12,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\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 "подсказка: " @@ -43,44 +43,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 "не удалось синхронизировать с ФС файл \"%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" @@ -153,177 +153,177 @@ msgid "processing of database \"%s\" failed: %s" msgstr "ошибка при обработке базы \"%s\": %s" #: ../../fe_utils/query_utils.c:33 ../../fe_utils/query_utils.c:58 -#: pg_amcheck.c:1693 pg_amcheck.c:2138 +#: pg_amcheck.c:1695 pg_amcheck.c:2155 #, c-format msgid "query failed: %s" msgstr "ошибка при выполнении запроса: %s" #: ../../fe_utils/query_utils.c:34 ../../fe_utils/query_utils.c:59 -#: pg_amcheck.c:578 pg_amcheck.c:1147 pg_amcheck.c:1694 pg_amcheck.c:2139 +#: pg_amcheck.c:579 pg_amcheck.c:1149 pg_amcheck.c:1696 pg_amcheck.c:2156 #, c-format 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" -#: pg_amcheck.c:403 +#: pg_amcheck.c:404 #, c-format msgid "invalid argument for option %s" msgstr "недопустимый аргумент параметра %s" -#: pg_amcheck.c:409 +#: pg_amcheck.c:410 #, c-format msgid "invalid start block" msgstr "неверный начальный блок" -#: pg_amcheck.c:411 +#: pg_amcheck.c:412 #, c-format msgid "start block out of bounds" msgstr "начальный блок вне допустимых пределов" -#: pg_amcheck.c:418 +#: pg_amcheck.c:419 #, c-format msgid "invalid end block" msgstr "неверный конечный блок" -#: pg_amcheck.c:420 +#: pg_amcheck.c:421 #, c-format msgid "end block out of bounds" msgstr "конечный блок вне допустимых пределов" -#: pg_amcheck.c:446 pg_amcheck.c:468 +#: pg_amcheck.c:447 pg_amcheck.c:469 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Для дополнительной информации попробуйте \"%s --help\"." -#: pg_amcheck.c:452 +#: pg_amcheck.c:453 #, c-format msgid "end block precedes start block" msgstr "конечный блок предшествует начальному" -#: pg_amcheck.c:466 +#: pg_amcheck.c:467 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "слишком много аргументов командной строки (первый: \"%s\")" -#: pg_amcheck.c:486 +#: pg_amcheck.c:487 #, c-format msgid "cannot specify a database name with --all" msgstr "имя базы данных нельзя задавать с --all" -#: pg_amcheck.c:492 +#: pg_amcheck.c:493 #, c-format msgid "cannot specify both a database name and database patterns" msgstr "нельзя задавать одновременно имя базы данных и шаблоны имён" -#: pg_amcheck.c:520 +#: pg_amcheck.c:521 #, c-format msgid "no databases to check" msgstr "не указаны базы для проверки" -#: pg_amcheck.c:576 +#: pg_amcheck.c:577 #, c-format msgid "database \"%s\": %s" msgstr "база данных \"%s\": %s" -#: pg_amcheck.c:587 +#: pg_amcheck.c:588 #, c-format msgid "skipping database \"%s\": amcheck is not installed" msgstr "база \"%s\" пропускается: расширение amcheck не установлено" -#: pg_amcheck.c:595 +#: pg_amcheck.c:597 #, c-format msgid "in database \"%s\": using amcheck version \"%s\" in schema \"%s\"" msgstr "база \"%s\": используется amcheck версии \"%s\" в схеме \"%s\"" -#: pg_amcheck.c:624 +#: pg_amcheck.c:626 #, c-format msgid "option %s is not supported by amcheck version %s" msgstr "параметр %s не поддерживается версией amcheck %s" -#: pg_amcheck.c:650 +#: pg_amcheck.c:652 #, c-format msgid "no heap tables to check matching \"%s\"" msgstr "не найдены подлежащие проверке базовые таблицы, соответствующие \"%s\"" -#: pg_amcheck.c:653 +#: pg_amcheck.c:655 #, c-format msgid "no btree indexes to check matching \"%s\"" msgstr "не найдены подлежащие проверке индексы btree, соответствующие \"%s\"" -#: pg_amcheck.c:656 +#: pg_amcheck.c:658 #, c-format msgid "no relations to check in schemas matching \"%s\"" msgstr "" "не найдены подлежащие проверке отношения в схемах, соответствующих \"%s\"" -#: pg_amcheck.c:659 +#: pg_amcheck.c:661 #, c-format msgid "no relations to check matching \"%s\"" msgstr "не найдены подлежащие проверке отношения, соответствующие \"%s\"" -#: pg_amcheck.c:687 +#: pg_amcheck.c:689 #, c-format msgid "no relations to check" msgstr "не найдены отношения для проверки" -#: pg_amcheck.c:770 +#: pg_amcheck.c:772 #, c-format msgid "checking heap table \"%s.%s.%s\"" msgstr "проверка базовой таблицы \"%s.%s.%s\"" -#: pg_amcheck.c:786 +#: pg_amcheck.c:788 #, c-format msgid "checking btree index \"%s.%s.%s\"" msgstr "проверка индекса btree \"%s.%s.%s\"" -#: pg_amcheck.c:937 +#: pg_amcheck.c:939 #, c-format msgid "error sending command to database \"%s\": %s" msgstr "ошибка передачи команды базе \"%s\": %s" -#: pg_amcheck.c:940 +#: pg_amcheck.c:942 #, c-format msgid "Command was: %s" msgstr "Выполнялась команда: %s" -#: pg_amcheck.c:1060 +#: pg_amcheck.c:1062 #, c-format msgid "heap table \"%s.%s.%s\", block %s, offset %s, attribute %s:\n" msgstr "базовая таблица \"%s.%s.%s\", блок %s, смещение %s, атрибут %s:\n" -#: pg_amcheck.c:1067 +#: pg_amcheck.c:1069 #, c-format msgid "heap table \"%s.%s.%s\", block %s, offset %s:\n" msgstr "базовая таблица \"%s.%s.%s\", блок %s, смещение %s:\n" -#: pg_amcheck.c:1073 +#: pg_amcheck.c:1075 #, c-format msgid "heap table \"%s.%s.%s\", block %s:\n" msgstr "базовая таблица \"%s.%s.%s\", блок %s:\n" -#: pg_amcheck.c:1078 pg_amcheck.c:1089 +#: pg_amcheck.c:1080 pg_amcheck.c:1091 #, c-format msgid "heap table \"%s.%s.%s\":\n" msgstr "базовая таблица \"%s.%s.%s\":\n" -#: pg_amcheck.c:1093 pg_amcheck.c:1162 +#: pg_amcheck.c:1095 pg_amcheck.c:1164 #, c-format msgid "query was: %s\n" msgstr "запрос: %s\n" -#: pg_amcheck.c:1144 +#: pg_amcheck.c:1146 #, c-format msgid "" "btree index \"%s.%s.%s\": btree checking function returned unexpected number " @@ -332,17 +332,17 @@ msgstr "" "индекс btree \"%s.%s.%s\": функция проверки btree выдала неожиданное " "количество строк: %d" -#: pg_amcheck.c:1148 +#: pg_amcheck.c:1150 #, c-format msgid "Are %s's and amcheck's versions compatible?" msgstr "Совместимы ли версии %s и amcheck?" -#: pg_amcheck.c:1158 +#: pg_amcheck.c:1160 #, c-format msgid "btree index \"%s.%s.%s\":\n" msgstr "индекс btree \"%s.%s.%s\":\n" -#: pg_amcheck.c:1183 +#: pg_amcheck.c:1185 #, c-format msgid "" "%s checks objects in a PostgreSQL database for corruption.\n" @@ -351,17 +351,17 @@ msgstr "" "%s проверяет объекты в базе данных PostgreSQL на предмет повреждений.\n" "\n" -#: pg_amcheck.c:1184 +#: pg_amcheck.c:1186 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: pg_amcheck.c:1185 +#: pg_amcheck.c:1187 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [ПАРАМЕТР]... [ИМЯ_БД]\n" -#: pg_amcheck.c:1186 +#: pg_amcheck.c:1188 #, c-format msgid "" "\n" @@ -370,77 +370,77 @@ msgstr "" "\n" "Параметры выбора объектов:\n" -#: pg_amcheck.c:1187 +#: pg_amcheck.c:1189 #, c-format msgid " -a, --all check all databases\n" msgstr " -a, --all проверить все базы\n" -#: pg_amcheck.c:1188 +#: pg_amcheck.c:1190 #, c-format msgid " -d, --database=PATTERN check matching database(s)\n" msgstr "" " -d, --database=ШАБЛОН проверить соответствующие шаблону базы\n" -#: pg_amcheck.c:1189 +#: pg_amcheck.c:1191 #, c-format msgid " -D, --exclude-database=PATTERN do NOT check matching database(s)\n" msgstr "" " -D, --exclude-database=ШАБЛОН не проверять соответствующие шаблону базы\n" -#: pg_amcheck.c:1190 +#: pg_amcheck.c:1192 #, c-format msgid " -i, --index=PATTERN check matching index(es)\n" msgstr "" " -i, --index=ШАБЛОН проверить соответствующие шаблону индексы\n" -#: pg_amcheck.c:1191 +#: pg_amcheck.c:1193 #, c-format msgid " -I, --exclude-index=PATTERN do NOT check matching index(es)\n" msgstr "" " -I, --exclude-index=ШАБЛОН не проверять соответствующие шаблону " "индексы\n" -#: pg_amcheck.c:1192 +#: pg_amcheck.c:1194 #, c-format msgid " -r, --relation=PATTERN check matching relation(s)\n" msgstr "" " -r, --relation=ШАБЛОН проверить соответствующие шаблону " "отношения\n" -#: pg_amcheck.c:1193 +#: pg_amcheck.c:1195 #, c-format msgid " -R, --exclude-relation=PATTERN do NOT check matching relation(s)\n" msgstr "" " -R, --exclude-relation=ШАБЛОН не проверять соответствующие шаблону " "отношения\n" -#: pg_amcheck.c:1194 +#: pg_amcheck.c:1196 #, c-format msgid " -s, --schema=PATTERN check matching schema(s)\n" msgstr "" " -s, --schema=ШАБЛОН проверить соответствующие шаблону схемы\n" -#: pg_amcheck.c:1195 +#: pg_amcheck.c:1197 #, c-format msgid " -S, --exclude-schema=PATTERN do NOT check matching schema(s)\n" msgstr "" " -S, --exclude-schema=ШАБЛОН не проверять соответствующие шаблону " "схемы\n" -#: pg_amcheck.c:1196 +#: pg_amcheck.c:1198 #, c-format msgid " -t, --table=PATTERN check matching table(s)\n" msgstr "" " -t, --table=ШАБЛОН проверить соответствующие шаблону таблицы\n" -#: pg_amcheck.c:1197 +#: pg_amcheck.c:1199 #, c-format msgid " -T, --exclude-table=PATTERN do NOT check matching table(s)\n" msgstr "" " -T, --exclude-table=ШАБЛОН не проверять соответствующие шаблону " "таблицы\n" -#: pg_amcheck.c:1198 +#: pg_amcheck.c:1200 #, c-format msgid "" " --no-dependent-indexes do NOT expand list of relations to include " @@ -449,7 +449,7 @@ msgstr "" " --no-dependent-indexes не включать в список проверяемых отношений " "индексы\n" -#: pg_amcheck.c:1199 +#: pg_amcheck.c:1201 #, c-format msgid "" " --no-dependent-toast do NOT expand list of relations to include " @@ -458,7 +458,7 @@ msgstr "" " --no-dependent-toast не включать в список проверяемых отношений " "TOAST-таблицы\n" -#: pg_amcheck.c:1200 +#: pg_amcheck.c:1202 #, c-format msgid "" " --no-strict-names do NOT require patterns to match objects\n" @@ -466,7 +466,7 @@ msgstr "" " --no-strict-names не требовать наличия объектов, " "соответствующих шаблонам\n" -#: pg_amcheck.c:1201 +#: pg_amcheck.c:1203 #, c-format msgid "" "\n" @@ -475,14 +475,14 @@ msgstr "" "\n" "Параметры проверки таблиц:\n" -#: pg_amcheck.c:1202 +#: pg_amcheck.c:1204 #, c-format msgid "" " --exclude-toast-pointers do NOT follow relation TOAST pointers\n" msgstr "" " --exclude-toast-pointers не переходить по указателям в TOAST\n" -#: pg_amcheck.c:1203 +#: pg_amcheck.c:1205 #, c-format msgid "" " --on-error-stop stop checking at end of first corrupt " @@ -491,7 +491,7 @@ msgstr "" " --on-error-stop прекратить проверку по достижении конца " "первой повреждённой страницы\n" -#: pg_amcheck.c:1204 +#: pg_amcheck.c:1206 #, c-format msgid "" " --skip=OPTION do NOT check \"all-frozen\" or \"all-" @@ -500,7 +500,7 @@ msgstr "" " --skip=ТИП_БЛОКА не проверять блоки типа \"all-frozen\" или " "\"all-visible\"\n" -#: pg_amcheck.c:1205 +#: pg_amcheck.c:1207 #, c-format msgid "" " --startblock=BLOCK begin checking table(s) at the given block " @@ -510,7 +510,7 @@ msgstr "" "заданным номером\n" # skip-rule: no-space-before-parentheses -#: pg_amcheck.c:1206 +#: pg_amcheck.c:1208 #, c-format msgid "" " --endblock=BLOCK check table(s) only up to the given block " @@ -519,7 +519,7 @@ msgstr "" " --endblock=БЛОК проверить таблицы(у) до блока с заданным " "номером\n" -#: pg_amcheck.c:1207 +#: pg_amcheck.c:1209 #, c-format msgid "" "\n" @@ -528,7 +528,7 @@ msgstr "" "\n" "Параметры проверки индексов-B-деревьев:\n" -#: pg_amcheck.c:1208 +#: pg_amcheck.c:1210 #, c-format msgid "" " --checkunique check unique constraint if index is " @@ -537,7 +537,7 @@ msgstr "" " --checkunique проверить ограничение уникальности для " "уникальных индексов\n" -#: pg_amcheck.c:1209 +#: pg_amcheck.c:1211 #, c-format msgid "" " --heapallindexed check that all heap tuples are found " @@ -546,7 +546,7 @@ msgstr "" " --heapallindexed проверить, что всем кортежам кучи " "находится соответствие в индексах\n" -#: pg_amcheck.c:1210 +#: pg_amcheck.c:1212 #, c-format msgid "" " --parent-check check index parent/child relationships\n" @@ -554,7 +554,7 @@ msgstr "" " --parent-check проверить связи родитель/потомок в " "индексах\n" -#: pg_amcheck.c:1211 +#: pg_amcheck.c:1213 #, c-format msgid "" " --rootdescend search from root page to refind tuples\n" @@ -562,7 +562,7 @@ msgstr "" " --rootdescend перепроверять поиск кортежей от корневой " "страницы\n" -#: pg_amcheck.c:1212 +#: pg_amcheck.c:1214 #, c-format msgid "" "\n" @@ -571,7 +571,7 @@ msgstr "" "\n" "Параметры подключения:\n" -#: pg_amcheck.c:1213 +#: pg_amcheck.c:1215 #, c-format msgid "" " -h, --host=HOSTNAME database server host or socket directory\n" @@ -579,34 +579,34 @@ msgstr "" " -h, --host=ИМЯ компьютер с сервером баз данных или " "каталог сокетов\n" -#: pg_amcheck.c:1214 +#: pg_amcheck.c:1216 #, c-format msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=ПОРТ порт сервера баз данных\n" -#: pg_amcheck.c:1215 +#: pg_amcheck.c:1217 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr "" " -U, --username=ИМЯ имя пользователя для подключения к " "серверу\n" -#: pg_amcheck.c:1216 +#: pg_amcheck.c:1218 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password не запрашивать пароль\n" -#: pg_amcheck.c:1217 +#: pg_amcheck.c:1219 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password запросить пароль\n" -#: pg_amcheck.c:1218 +#: pg_amcheck.c:1220 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=ИМЯ_БД другая опорная база данных\n" -#: pg_amcheck.c:1219 +#: pg_amcheck.c:1221 #, c-format msgid "" "\n" @@ -615,7 +615,7 @@ msgstr "" "\n" "Другие параметры:\n" -#: pg_amcheck.c:1220 +#: pg_amcheck.c:1222 #, c-format msgid "" " -e, --echo show the commands being sent to the " @@ -623,7 +623,7 @@ msgid "" msgstr "" " -e, --echo отображать команды, отправляемые серверу\n" -#: pg_amcheck.c:1221 +#: pg_amcheck.c:1223 #, c-format msgid "" " -j, --jobs=NUM use this many concurrent connections to " @@ -632,33 +632,33 @@ msgstr "" " -j, --jobs=ЧИСЛО устанавливать заданное число подключений к " "серверу\n" -#: pg_amcheck.c:1222 +#: pg_amcheck.c:1224 #, c-format msgid " -P, --progress show progress information\n" msgstr " -P, --progress показывать прогресс операции\n" -#: pg_amcheck.c:1223 +#: pg_amcheck.c:1225 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose выводить исчерпывающие сообщения\n" -#: pg_amcheck.c:1224 +#: pg_amcheck.c:1226 #, c-format msgid "" " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: pg_amcheck.c:1225 +#: pg_amcheck.c:1227 #, c-format msgid " --install-missing install missing extensions\n" msgstr " --install-missing установить недостающие расширения\n" -#: pg_amcheck.c:1226 +#: pg_amcheck.c:1228 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_amcheck.c:1228 +#: pg_amcheck.c:1230 #, c-format msgid "" "\n" @@ -667,53 +667,53 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: pg_amcheck.c:1229 +#: pg_amcheck.c:1231 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" -#: pg_amcheck.c:1282 +#: pg_amcheck.c:1284 #, c-format msgid "%*s/%s relations (%d%%), %*s/%s pages (%d%%) %*s" msgstr "отношений: %*s/%s (%d%%), страниц: %*s/%s (%d%%) %*s" -#: pg_amcheck.c:1293 +#: pg_amcheck.c:1295 #, c-format msgid "%*s/%s relations (%d%%), %*s/%s pages (%d%%) (%s%-*.*s)" msgstr "отношений: %*s/%s (%d%%), страниц: %*s/%s (%d%%) (%s%-*.*s)" -#: pg_amcheck.c:1308 +#: pg_amcheck.c:1310 #, c-format msgid "%*s/%s relations (%d%%), %*s/%s pages (%d%%)" msgstr "отношений: %*s/%s (%d%%), страниц: %*s/%s (%d%%)" -#: pg_amcheck.c:1367 pg_amcheck.c:1400 +#: pg_amcheck.c:1369 pg_amcheck.c:1402 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неверное полное имя (слишком много компонентов): %s" -#: pg_amcheck.c:1445 +#: pg_amcheck.c:1447 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "неверное имя отношения (слишком много компонентов): %s" -#: pg_amcheck.c:1598 pg_amcheck.c:1737 +#: pg_amcheck.c:1600 pg_amcheck.c:1739 #, c-format msgid "including database \"%s\"" msgstr "выбирается база \"%s\"" -#: pg_amcheck.c:1719 +#: pg_amcheck.c:1721 #, c-format msgid "internal error: received unexpected database pattern_id %d" msgstr "внутренняя ошибка: получен неожиданный идентификатор шаблона базы %d" -#: pg_amcheck.c:1721 +#: pg_amcheck.c:1723 #, c-format msgid "no connectable databases to check matching \"%s\"" msgstr "" "не найдены подлежащие проверке доступные базы, соответствующие шаблону \"%s\"" -#: pg_amcheck.c:2179 +#: pg_amcheck.c:2196 #, c-format msgid "internal error: received unexpected relation pattern_id %d" msgstr "" diff --git a/src/bin/pg_archivecleanup/po/ru.po b/src/bin/pg_archivecleanup/po/ru.po index e04456d67d365..8e51fb073041a 100644 --- a/src/bin/pg_archivecleanup/po/ru.po +++ b/src/bin/pg_archivecleanup/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_archivecleanup (PostgreSQL) 10\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-07 06:17+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,22 +17,22 @@ 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" -#: ../../../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,43 +48,43 @@ 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" @@ -93,18 +93,18 @@ 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 [ПАРАМЕТР]... РАСПОЛОЖЕНИЕ_АРХИВА СТАРЕЙШИЙ_СОХРАНЯЕМЫЙ_ФАЙЛ_WAL\n" -#: pg_archivecleanup.c:262 +#: pg_archivecleanup.c:263 #, c-format msgid "" "\n" @@ -113,21 +113,21 @@ 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 " @@ -138,13 +138,13 @@ msgstr "" "файлов,\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" # well-spelled: РСШ -#: pg_archivecleanup.c:268 +#: pg_archivecleanup.c:269 #, c-format msgid "" " -x, --strip-extension=EXT strip this extension before identifying files " @@ -155,16 +155,16 @@ msgstr "" "файлы,\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 -#, c-format +#: pg_archivecleanup.c:272 +#, fuzzy, 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" @@ -177,7 +177,7 @@ msgstr "" "например:\n" " archive_cleanup_command = 'pg_archivecleanup /mnt/server/archiverdir %%r'\n" -#: pg_archivecleanup.c:276 +#: pg_archivecleanup.c:277 #, c-format msgid "" "\n" @@ -192,7 +192,7 @@ msgstr "" " pg_archivecleanup /mnt/server/archiverdir " "000000010000000000000010.00000020.backup\n" -#: pg_archivecleanup.c:280 +#: pg_archivecleanup.c:281 #, c-format msgid "" "\n" @@ -201,22 +201,22 @@ 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/po/ru.po b/src/bin/pg_basebackup/po/ru.po index 94912f27c90b4..115d26a9111f0 100644 --- a/src/bin/pg_basebackup/po/ru.po +++ b/src/bin/pg_basebackup/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_basebackup (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-11-09 07:47+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-07 11:12+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,30 +17,31 @@ 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" -#: ../../../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" @@ -98,7 +99,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" @@ -110,7 +111,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" @@ -133,10 +134,10 @@ msgstr "" "этой программой. В этом случае результаты будут неверными и\n" "установленный 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" @@ -146,8 +147,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 "не удалось синхронизировать с ФС файл \"%s\": %m" @@ -163,36 +164,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" @@ -227,194 +228,203 @@ 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:334 -#, 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 +#: ../../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 "shell command argument contains a newline or carriage return: \"%s\"\n" -msgstr "" -"аргумент команды оболочки содержит символ новой строки или перевода каретки: " -"\"%s\"\n" - -#: ../../fe_utils/string_utils.c:607 -#, 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 "не удалось установить для zstd число потоков %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\"" @@ -510,14 +520,14 @@ 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 [ПАРАМЕТР]...\n" @@ -681,12 +691,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" @@ -749,12 +759,12 @@ msgstr "" " --sync-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" @@ -768,14 +778,14 @@ msgstr "" msgid " -d, --dbname=CONNSTR connection string\n" msgstr " -d, --dbname=СТРОКА строка подключения\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=ИМЯ компьютер с сервером баз данных или каталог " "сокетов\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=ПОРТ номер порта сервера БД\n" @@ -791,19 +801,19 @@ msgstr "" " интервал между передаваемыми серверу\n" " пакетами состояния (в секундах)\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 connect as specified database user\n" " -U, --username=ИМЯ имя пользователя баз данных\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 " @@ -811,8 +821,8 @@ msgid "" 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" @@ -821,8 +831,8 @@ 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" @@ -832,8 +842,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:521 +#: 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\"" @@ -848,37 +858,37 @@ msgstr "не удалось завершить запись файлов WAL: %m 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" @@ -886,7 +896,7 @@ msgstr[0] "%*s/%s КБ (100%%), табличное пространство %d/% msgstr[1] "%*s/%s КБ (100%%), табличное пространство %d/%d %*s" msgstr[2] "%*s/%s КБ (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)" @@ -894,7 +904,7 @@ msgstr[0] "%*s/%s КБ (%d%%), табличное пространство %d/%d msgstr[1] "%*s/%s КБ (%d%%), табличное пространство %d/%d (%s%-*.*s)" msgstr[2] "%*s/%s КБ (%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" @@ -902,58 +912,58 @@ msgstr[0] "%*s/%s КБ (%d%%), табличное пространство %d/%d msgstr[1] "%*s/%s КБ (%d%%), табличное пространство %d/%d" msgstr[2] "%*s/%s КБ (%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 "скорость передачи должна быть больше 0" -#: 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 " @@ -962,24 +972,24 @@ 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." @@ -987,119 +997,119 @@ 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:367 streamutil.c:441 -#: streamutil.c:493 streamutil.c:581 streamutil.c:733 streamutil.c:778 +#: 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 "не удалось отправить сообщение \"конец COPY\": %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 " @@ -1108,130 +1118,125 @@ 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:92 streamutil.c:207 streamutil.c:319 -#, 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\"" @@ -1239,124 +1244,125 @@ 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: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_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:2235 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 " @@ -1365,32 +1371,32 @@ 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:1314 #, 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" @@ -1399,7 +1405,7 @@ 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" @@ -1408,7 +1414,16 @@ 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 "" + +#: pg_createsubscriber.c:251 #, c-format msgid "" " -d, --database=DBNAME database in which to create a " @@ -1416,7 +1431,7 @@ msgid "" msgstr "" " -d, --database=ИМЯ_БД база, в которой будет создана подписка\n" -#: pg_createsubscriber.c:225 +#: pg_createsubscriber.c:252 #, c-format msgid "" " -D, --pgdata=DATADIR location for the subscriber data " @@ -1424,7 +1439,7 @@ msgid "" msgstr "" " -D, --pgdata=КАТ_ДАННЫХ расположение каталога данных подписчика\n" -#: pg_createsubscriber.c:226 +#: pg_createsubscriber.c:253 #, c-format msgid "" " -n, --dry-run dry run, just show what would be done\n" @@ -1432,19 +1447,19 @@ msgstr "" " -n, --dry-run показать, какие действия будут выполнены,\n" " но не выполнять их\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=ПОРТ номер порта подписчика (по умолчанию: %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=СТРОКА строка подключения к серверу публикации\n" -#: pg_createsubscriber.c:229 +#: pg_createsubscriber.c:256 #, c-format msgid "" " -s, --socketdir=DIR socket directory to use (default current " @@ -1452,25 +1467,42 @@ msgid "" msgstr "" " -s, --socketdir=КАТАЛОГ каталог сокетов (по умолчанию текущий)\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=СЕК время ожидания окончания восстановления\n" -#: pg_createsubscriber.c:231 +#: pg_createsubscriber.c:258 +#, fuzzy, c-format +msgid "" +" -T, --enable-two-phase enable two-phase commit for all " +"subscriptions\n" +msgstr "" +" -d, --database=ИМЯ_БД база, в которой будет создана подписка\n" + +#: pg_createsubscriber.c:259 #, c-format msgid " -U, --subscriber-username=NAME user name for subscriber connection\n" msgstr "" " -U, --subscriber-username=ИМЯ имя пользователя для подключения " "подписчика\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 "" + +#: pg_createsubscriber.c:263 #, c-format msgid "" " --config-file=FILENAME use specified main server configuration\n" @@ -1480,203 +1512,203 @@ msgstr "" " конфигурации сервера при запуске целевого\n" " кластера\n" -#: pg_createsubscriber.c:235 +#: pg_createsubscriber.c:265 #, c-format msgid " --publication=NAME publication name\n" msgstr " --publication=ИМЯ имя публикации\n" -#: pg_createsubscriber.c:236 +#: pg_createsubscriber.c:266 #, c-format msgid " --replication-slot=NAME replication slot name\n" msgstr " --replication-slot=ИМЯ имя слота репликации\n" -#: pg_createsubscriber.c:237 +#: pg_createsubscriber.c:267 #, c-format msgid " --subscription=NAME subscription name\n" msgstr " --subscription=ИМЯ имя подписки\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 -#, c-format -msgid "system identifier is %llu on publisher" +#: pg_createsubscriber.c:617 +#, fuzzy, c-format +msgid "system identifier is % on publisher" msgstr "идентификатор системы на стороне публикации: %llu" -#: 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 -#, c-format -msgid "system identifier is %llu on subscriber" +#: pg_createsubscriber.c:645 pg_createsubscriber.c:685 +#, fuzzy, c-format +msgid "system identifier is % on subscriber" msgstr "идентификатор системы на подписчике: %llu" -#: pg_createsubscriber.c:637 +#: pg_createsubscriber.c:666 #, c-format msgid "modifying system identifier of subscriber" msgstr "изменение идентификатора системы на подписчике" -#: pg_createsubscriber.c:659 +#: pg_createsubscriber.c:688 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "запуск pg_resetwal на подписчике" -#: pg_createsubscriber.c:671 +#: pg_createsubscriber.c:700 #, c-format msgid "subscriber successfully changed the system identifier" msgstr "идентификатор системы на подписчике успешно изменён" -#: pg_createsubscriber.c:673 +#: pg_createsubscriber.c:702 #, c-format msgid "could not change system identifier of subscriber: %s" msgstr "изменить идентификатор системы на подписчике не удалось: %s" -#: pg_createsubscriber.c:697 +#: pg_createsubscriber.c:726 #, c-format msgid "could not obtain database OID: %s" msgstr "получить OID базы данных не удалось: %s" -#: pg_createsubscriber.c:704 +#: pg_createsubscriber.c:733 #, 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:805 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "создаётся слот репликации \"%s\" на подписчике" -#: pg_createsubscriber.c:796 +#: pg_createsubscriber.c:825 #, c-format msgid "could not write an additional WAL record: %s" msgstr "не удалось записать дополнительную запись WAL: %s" -#: pg_createsubscriber.c:822 +#: pg_createsubscriber.c:851 #, c-format msgid "could not obtain recovery progress: %s" msgstr "не удалось получить состояние восстановления: %s" -#: pg_createsubscriber.c:854 +#: pg_createsubscriber.c:884 #, c-format msgid "checking settings on publisher" msgstr "проверка параметров на стороне публикации" -#: pg_createsubscriber.c:864 +#: pg_createsubscriber.c:894 #, c-format msgid "primary server cannot be in recovery" msgstr "главный сервер не должен быть в состоянии восстановления" -#: pg_createsubscriber.c:888 +#: pg_createsubscriber.c:920 #, c-format msgid "could not obtain publisher settings: %s" msgstr "не удалось получить параметры с сервера публикации: %s" -#: pg_createsubscriber.c:914 -#, c-format -msgid "publisher requires wal_level >= \"logical\"" +#: pg_createsubscriber.c:949 +#, fuzzy, c-format +msgid "publisher requires \"wal_level\" >= \"logical\"" msgstr "на стороне публикации требуется значение wal_level >= \"logical\"" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:955 #, 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:957 pg_createsubscriber.c:966 +#: pg_createsubscriber.c:1076 pg_createsubscriber.c:1085 +#: pg_createsubscriber.c:1094 #, c-format msgid "Increase the configuration parameter \"%s\" to at least %d." msgstr "Увеличьте значение параметра конфигурации \"%s\" как минимум до %d." -#: pg_createsubscriber.c:929 +#: pg_createsubscriber.c:964 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "" "на стороне публикации требуется процессов-передатчиков WAL: %d, но доступно " "всего %d" -#: pg_createsubscriber.c:938 +#: pg_createsubscriber.c:973 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "параметр two_phase для слотов репликации не будет включён" -#: pg_createsubscriber.c:939 +#: pg_createsubscriber.c:974 #, c-format msgid "" "Subscriptions will be created with the two_phase option disabled. Prepared " @@ -1685,64 +1717,82 @@ msgstr "" "Подписки будут созданы с отключённым параметром two_phase. Подготовленные " "транзакции будут реплицироваться в момент выполнения COMMIT PREPARED." -#: pg_createsubscriber.c:971 +#: pg_createsubscriber.c:976 +#, c-format +msgid "" +"You can use the command-line option --enable-two-phase to enable two_phase." +msgstr "" + +#: pg_createsubscriber.c:986 +#, c-format +msgid "required WAL could be removed from the publisher" +msgstr "" + +#: pg_createsubscriber.c:987 +#, c-format +msgid "" +"Set the configuration parameter \"%s\" to -1 to ensure that required WAL " +"files are not prematurely removed." +msgstr "" + +#: pg_createsubscriber.c:1019 #, c-format msgid "checking settings on subscriber" msgstr "проверка параметров на подписчике" -#: pg_createsubscriber.c:978 +#: pg_createsubscriber.c:1026 #, c-format msgid "target server must be a standby" msgstr "целевой сервер должен быть резервным" -#: pg_createsubscriber.c:1002 +#: pg_createsubscriber.c:1050 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "получить параметры подписчика не удалось: %s" -#: pg_createsubscriber.c:1026 -#, c-format -msgid "subscriber requires %d replication slots, but only %d remain" +#: pg_createsubscriber.c:1074 +#, fuzzy, c-format +msgid "subscriber requires %d active replication origins, but only %d remain" msgstr "подписчику требуется слотов репликации: %d, но доступно всего %d" -#: pg_createsubscriber.c:1035 +#: pg_createsubscriber.c:1083 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "" "подписчику требуется процессов логической репликации: %d, но доступно всего " "%d" -#: pg_createsubscriber.c:1044 +#: pg_createsubscriber.c:1092 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "подписчику требуется рабочих процессов: %d, но доступно всего %d" -#: pg_createsubscriber.c:1079 +#: pg_createsubscriber.c:1127 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "удаление подписки \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1088 +#: pg_createsubscriber.c:1136 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "удалить подписку \"%s\" не получилось: %s" -#: pg_createsubscriber.c:1123 +#: pg_createsubscriber.c:1171 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "получить уже существующие подписки не удалось: %s" -#: pg_createsubscriber.c:1258 +#: pg_createsubscriber.c:1312 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "удалить слот репликации \"%s\" на главном сервере не получилось" -#: pg_createsubscriber.c:1292 +#: pg_createsubscriber.c:1346 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "получить информацию о переносимом слоте репликации не удалось: %s" -#: pg_createsubscriber.c:1294 pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1348 pg_createsubscriber.c:1357 #, c-format msgid "" "Drop the failover replication slots on subscriber soon to avoid retention of " @@ -1751,42 +1801,42 @@ msgstr "" "Удалите переносимые слоты репликации на подписчике незамедлительно во " "избежание накопления файлов WAL." -#: pg_createsubscriber.c:1302 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not drop failover replication slot" msgstr "удалить переносимый слот репликации не получилось" -#: pg_createsubscriber.c:1324 +#: pg_createsubscriber.c:1378 #, c-format msgid "creating the replication slot \"%s\" in database \"%s\"" msgstr "создание слота репликации \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1342 +#: pg_createsubscriber.c:1397 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "создать слот репликации \"%s\" в базе \"%s\" не удалось: %s" -#: pg_createsubscriber.c:1372 +#: pg_createsubscriber.c:1427 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "удаление слота репликации \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1443 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "удалить слот репликации \"%s\" в базе \"%s\" не получилось: %s" -#: pg_createsubscriber.c:1409 +#: pg_createsubscriber.c:1464 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "команда pg_ctl завершилась с кодом ошибки %d" -#: pg_createsubscriber.c:1414 +#: pg_createsubscriber.c:1469 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "команда pg_ctl была прервана исключением 0x%X" -#: pg_createsubscriber.c:1416 +#: pg_createsubscriber.c:1471 #, c-format msgid "" "See C include file \"ntstatus.h\" for a description of the hexadecimal value." @@ -1794,52 +1844,52 @@ msgstr "" "Описание этого шестнадцатеричного значения ищите во включаемом C-файле " "\"ntstatus.h\"" -#: pg_createsubscriber.c:1418 +#: pg_createsubscriber.c:1473 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "команда pg_ctl была завершена сигналом %d: %s" -#: pg_createsubscriber.c:1424 +#: pg_createsubscriber.c:1479 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "команда pg_ctl завершилась с нераспознанным кодом состояния %d" -#: pg_createsubscriber.c:1427 +#: pg_createsubscriber.c:1482 #, c-format msgid "The failed command was: %s" msgstr "Ошибку вызвала команда: %s" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1532 #, c-format msgid "server was started" msgstr "сервер был запущен" -#: pg_createsubscriber.c:1488 +#: pg_createsubscriber.c:1547 #, c-format msgid "server was stopped" msgstr "сервер был остановлен" -#: pg_createsubscriber.c:1507 +#: pg_createsubscriber.c:1566 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "ожидание достижения целевым сервером согласованного состояния" -#: pg_createsubscriber.c:1530 +#: pg_createsubscriber.c:1589 #, c-format msgid "recovery timed out" msgstr "тайм-аут при восстановлении" -#: pg_createsubscriber.c:1543 +#: pg_createsubscriber.c:1602 #, c-format msgid "server did not end recovery" msgstr "сервер не завершил восстановление" -#: pg_createsubscriber.c:1545 +#: pg_createsubscriber.c:1604 #, c-format msgid "target server reached the consistent state" msgstr "целевой сервер достиг согласованного состояния" -#: pg_createsubscriber.c:1546 +#: pg_createsubscriber.c:1605 #, c-format msgid "" "If pg_createsubscriber fails after this point, you must recreate the " @@ -1848,159 +1898,179 @@ msgstr "" "Если в работе pg_createsubscriber произойдёт сбой после этого момента, " "продолжение возможно только после пересоздания физической реплики." -#: pg_createsubscriber.c:1573 +#: pg_createsubscriber.c:1632 pg_createsubscriber.c:1755 #, c-format msgid "could not obtain publication information: %s" msgstr "получить информацию о публикации не удалось: %s" -#: pg_createsubscriber.c:1587 +#: pg_createsubscriber.c:1646 #, c-format msgid "publication \"%s\" already exists" msgstr "публикация \"%s\" уже существует" -#: pg_createsubscriber.c:1588 +#: pg_createsubscriber.c:1647 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Чтобы продолжить, её можно переименовать." -#: pg_createsubscriber.c:1595 +#: pg_createsubscriber.c:1654 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "создаётся публикация \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1608 +#: pg_createsubscriber.c:1667 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "создать публикацию \"%s\" в базе \"%s\" не удалось: %s" -#: pg_createsubscriber.c:1637 +#: pg_createsubscriber.c:1697 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "удаляется публикация \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1651 +#: pg_createsubscriber.c:1711 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "удалить публикацию \"%s\" в базе \"%s\" не получилось: %s" -#: pg_createsubscriber.c:1697 +#: pg_createsubscriber.c:1748 +#, fuzzy, c-format +msgid "dropping all existing publications in database \"%s\"" +msgstr "удаляется публикация \"%s\" в базе \"%s\"" + +#: pg_createsubscriber.c:1806 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "создаётся подписка \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1718 +#: pg_createsubscriber.c:1828 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "создать подписку \"%s\" в базе \"%s\" не удалось: %s" -#: pg_createsubscriber.c:1763 +#: pg_createsubscriber.c:1873 #, c-format msgid "could not obtain subscription OID: %s" msgstr "получить OID подписки не удалось: %s" -#: pg_createsubscriber.c:1770 +#: pg_createsubscriber.c:1880 #, 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:1904 #, 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:1919 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "не удалось передать состояние репликации для подписки \"%s\": %s" -#: pg_createsubscriber.c:1840 +#: pg_createsubscriber.c:1950 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "включение подписки \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1852 +#: pg_createsubscriber.c:1962 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "включить подписку \"%s\" не удалось: %s" -#: pg_createsubscriber.c:1944 +#: pg_createsubscriber.c:2008 +#, fuzzy, c-format +msgid "could not obtain a list of databases: %s" +msgstr "получить OID базы данных не удалось: %s" + +#: pg_createsubscriber.c:2112 #, c-format msgid "cannot be executed by \"root\"" msgstr "программу не должен запускать root" -#: pg_createsubscriber.c:1945 +#: pg_createsubscriber.c:2113 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускать %s нужно от имени суперпользователя PostgreSQL." -#: pg_createsubscriber.c:1966 -#, c-format -msgid "database \"%s\" specified more than once" +#: pg_createsubscriber.c:2136 +#, fuzzy, c-format +msgid "database \"%s\" specified more than once for -d/--database" msgstr "база \"%s\" указана неоднократно" -#: pg_createsubscriber.c:2007 -#, c-format -msgid "publication \"%s\" specified more than once" +#: pg_createsubscriber.c:2177 +#, fuzzy, c-format +msgid "publication \"%s\" specified more than once for --publication" msgstr "публикация \"%s\" указана неоднократно" -#: pg_createsubscriber.c:2019 -#, c-format -msgid "replication slot \"%s\" specified more than once" +#: pg_createsubscriber.c:2186 +#, fuzzy, c-format +msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "слот репликации \"%s\" указан неоднократно" -#: pg_createsubscriber.c:2031 -#, c-format -msgid "subscription \"%s\" specified more than once" +#: pg_createsubscriber.c:2195 +#, fuzzy, c-format +msgid "subscription \"%s\" specified more than once for --subscription" msgstr "подписка \"%s\" указана неоднократно" -#: pg_createsubscriber.c:2054 +#: pg_createsubscriber.c:2201 +#, fuzzy, c-format +msgid "object type \"%s\" specified more than once for --clean" +msgstr "слот репликации \"%s\" указан неоднократно" + +#: pg_createsubscriber.c:2226 +#, c-format +msgid "options %s and -a/--all cannot be used together" +msgstr "" + +#: pg_createsubscriber.c:2244 #, c-format msgid "no subscriber data directory specified" msgstr "каталог данных подписчика не указан" -#: pg_createsubscriber.c:2065 +#: pg_createsubscriber.c:2255 #, c-format msgid "could not determine current directory" msgstr "не удалось определить текущий каталог" -#: pg_createsubscriber.c:2082 +#: pg_createsubscriber.c:2272 #, c-format msgid "no publisher connection string specified" msgstr "строка подключения к серверу публикации не указана" -#: pg_createsubscriber.c:2086 +#: pg_createsubscriber.c:2276 #, c-format msgid "validating publisher connection string" msgstr "проверяется строка подключения к серверу публикации" -#: pg_createsubscriber.c:2092 +#: pg_createsubscriber.c:2282 #, c-format msgid "validating subscriber connection string" msgstr "проверяется строка подключения к подписчику" -#: pg_createsubscriber.c:2097 +#: pg_createsubscriber.c:2299 #, c-format msgid "no database was specified" msgstr "база данных не указана" -#: pg_createsubscriber.c:2109 +#: pg_createsubscriber.c:2310 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "имя базы \"%s\" извлечено из строки подключения к серверу публикации" -#: pg_createsubscriber.c:2114 +#: pg_createsubscriber.c:2315 #, c-format msgid "no database name specified" msgstr "имя базы данных не указано" -#: pg_createsubscriber.c:2124 +#: pg_createsubscriber.c:2325 #, c-format msgid "wrong number of publication names specified" msgstr "указано неверное количество имён публикаций" -#: pg_createsubscriber.c:2125 +#: pg_createsubscriber.c:2326 #, c-format msgid "" "The number of specified publication names (%d) must match the number of " @@ -2009,12 +2079,12 @@ msgstr "" "Количество указанных имён публикаций (%d) должно совпадать с количеством " "указанных имён баз (%d)." -#: pg_createsubscriber.c:2131 +#: pg_createsubscriber.c:2332 #, c-format msgid "wrong number of subscription names specified" msgstr "указано неверное количество имён подписок" -#: pg_createsubscriber.c:2132 +#: pg_createsubscriber.c:2333 #, c-format msgid "" "The number of specified subscription names (%d) must match the number of " @@ -2023,12 +2093,12 @@ msgstr "" "Количество указанных имён подписок (%d) должно совпадать с количеством " "указанных имён баз (%d)." -#: pg_createsubscriber.c:2138 +#: pg_createsubscriber.c:2339 #, c-format msgid "wrong number of replication slot names specified" msgstr "указано неверное количество имён слотов репликации" -#: pg_createsubscriber.c:2139 +#: pg_createsubscriber.c:2340 #, c-format msgid "" "The number of specified replication slot names (%d) must match the number of " @@ -2037,38 +2107,48 @@ msgstr "" "Количество указанных имён слотов репликации (%d) должно совпадать с " "количеством указанных имён баз (%d)." -#: pg_createsubscriber.c:2168 +#: pg_createsubscriber.c:2352 +#, c-format +msgid "invalid object type \"%s\" specified for --clean" +msgstr "" + +#: pg_createsubscriber.c:2353 +#, fuzzy, c-format +msgid "The valid value is: \"%s\"" +msgstr "неверная единица измерения в --max-rate: \"%s\"" + +#: pg_createsubscriber.c:2384 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "" "каталог данных подписчика не является копией исходного кластера баз данных" -#: pg_createsubscriber.c:2181 +#: pg_createsubscriber.c:2397 #, c-format msgid "standby server is running" msgstr "резервный сервер запущен" -#: pg_createsubscriber.c:2182 +#: pg_createsubscriber.c:2398 #, c-format msgid "Stop the standby server and try again." msgstr "Остановите резервный сервер и повторите попытку." -#: pg_createsubscriber.c:2191 +#: pg_createsubscriber.c:2407 #, c-format msgid "starting the standby server with command-line options" msgstr "резервный сервер запускается с параметрами командной строки" -#: pg_createsubscriber.c:2207 pg_createsubscriber.c:2242 +#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 #, c-format msgid "stopping the subscriber" msgstr "подписчик останавливается" -#: pg_createsubscriber.c:2221 +#: pg_createsubscriber.c:2437 #, c-format msgid "starting the subscriber" msgstr "подписчик запускается" -#: pg_createsubscriber.c:2250 +#: pg_createsubscriber.c:2466 #, c-format msgid "Done!" msgstr "Готово!" @@ -2090,14 +2170,14 @@ msgstr "" " -D, --directory=ПУТЬ сохранять файлы журнала предзаписи в данный " "каталог\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 определяет позицию, после которой нужно " "остановиться\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 " @@ -2106,7 +2186,7 @@ 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" @@ -2119,7 +2199,7 @@ msgid "" 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" @@ -2156,7 +2236,7 @@ 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 " @@ -2165,7 +2245,7 @@ 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 " @@ -2189,7 +2269,7 @@ msgstr "завершена передача журнала с позиции %X/ 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 "получен сигнал прерывания, работа завершается" @@ -2268,7 +2348,7 @@ msgstr "" 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\"" @@ -2301,28 +2381,28 @@ 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" @@ -2331,7 +2411,7 @@ msgstr "" "%s управляет потоками логического декодирования PostgreSQL.\n" "\n" -#: pg_recvlogical.c:88 +#: pg_recvlogical.c:87 #, c-format msgid "" "\n" @@ -2340,7 +2420,7 @@ msgstr "" "\n" "Действие, которое будет выполнено:\n" -#: pg_recvlogical.c:91 +#: pg_recvlogical.c:90 #, c-format msgid "" " --start start streaming in a replication slot (for the " @@ -2349,13 +2429,21 @@ 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 "" + +#: pg_recvlogical.c:95 #, c-format msgid " -f, --file=FILE receive log into this file, - for stdout\n" msgstr "" " -f, --file=ФАЙЛ сохранять журнал в этот файл, - обозначает stdout\n" -#: pg_recvlogical.c:95 +#: pg_recvlogical.c:96 #, c-format msgid "" " -F --fsync-interval=SECS\n" @@ -2366,7 +2454,7 @@ msgstr "" " периодичность сброса на диск выходного файла (по " "умолчанию: %d)\n" -#: pg_recvlogical.c:98 +#: pg_recvlogical.c:99 #, c-format msgid "" " -I, --startpos=LSN where in an existing slot should the streaming " @@ -2375,7 +2463,7 @@ msgstr "" " -I, --startpos=LSN определяет, с какой позиции в существующем слоте " "начнётся передача\n" -#: pg_recvlogical.c:100 +#: pg_recvlogical.c:101 #, c-format msgid "" " -o, --option=NAME[=VALUE]\n" @@ -2387,181 +2475,186 @@ msgstr "" "необязательным\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=МОДУЛЬ использовать заданный модуль вывода (по умолчанию: " "%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=ИМЯ_СЛОТА имя слота логической репликации\n" -#: pg_recvlogical.c:107 -#, c-format +#: pg_recvlogical.c:108 +#, fuzzy, c-format msgid "" -" -t, --two-phase enable decoding of prepared transactions when " +" -t, --enable-two-phase enable decoding of prepared transactions when " "creating a slot\n" msgstr "" " -t, --two-phase включить декодирование подготовленных транзакций " "при создании слота\n" -#: pg_recvlogical.c:112 +#: pg_recvlogical.c:109 +#, c-format +msgid " --two-phase (same as --enable-two-phase, deprecated)\n" +msgstr "" + +#: pg_recvlogical.c:114 #, c-format msgid " -d, --dbname=DBNAME database to connect to\n" msgstr " -d, --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 -#, c-format -msgid "--two-phase may only be specified with --create-slot" +#: pg_recvlogical.c:933 pg_recvlogical.c:940 +#, fuzzy, c-format +msgid "%s may only be specified with --create-slot" msgstr "--two-phase можно задать только вместе с --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 достигнута при обработке keepalive" -#: 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 "" "не удалось сбросить на диск существующий файл журнала предзаписи \"%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" @@ -2572,37 +2665,37 @@ msgstr[1] "" msgstr[2] "" "файл журнала предзаписи \"%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 " @@ -2611,7 +2704,7 @@ msgstr "" "несовместимая версия сервера %s; клиент не поддерживает репликацию с " "серверов версии ниже %s" -#: receivelog.c:403 +#: receivelog.c:402 #, c-format msgid "" "incompatible server version %s; client does not support streaming from " @@ -2620,7 +2713,7 @@ msgstr "" "несовместимая версия сервера %s; клиент не поддерживает репликацию с " "серверов версии выше %s" -#: receivelog.c:508 +#: receivelog.c:507 #, c-format msgid "" "system identifier does not match between base backup and streaming connection" @@ -2628,12 +2721,12 @@ 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, " @@ -2642,12 +2735,12 @@ 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 " @@ -2656,12 +2749,12 @@ 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, " @@ -2670,62 +2763,57 @@ 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 "не удалось синхронизировать с ФС файл \"%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\": %s" -#: streamutil.c:165 +#: streamutil.c:162 msgid "Password: " msgstr "Пароль: " -#: streamutil.c:192 +#: streamutil.c:189 #, c-format msgid "could not connect to server" msgstr "не удалось подключиться к серверу" -#: streamutil.c:233 -#, c-format -msgid "could not clear \"search_path\": %s" -msgstr "не удалось очистить \"search_path\": %s" - -#: streamutil.c:249 +#: streamutil.c:246 #, c-format msgid "could not determine server setting for \"integer_datetimes\"" msgstr "не удалось получить параметр сервера \"integer_datetimes\"" -#: streamutil.c:256 +#: streamutil.c:253 #, c-format msgid "\"integer_datetimes\" compile flag does not match server" msgstr "" "флаг компиляции \"integer_datetimes\" не соответствует настройке сервера" -#: streamutil.c:375 +#: streamutil.c:304 #, c-format msgid "" "could not fetch WAL segment size: got %d rows and %d fields, expected %d " @@ -2734,12 +2822,12 @@ msgstr "" "не удалось извлечь размер сегмента WAL; получено строк: %d, полей: %d " "(ожидалось: %d и %d (или более))" -#: streamutil.c:385 +#: streamutil.c:314 #, c-format msgid "WAL segment size could not be parsed" msgstr "разобрать размер сегмента WAL не удалось" -#: streamutil.c:403 +#: 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)" @@ -2747,13 +2835,13 @@ msgstr[0] "удалённый сервер выдал неверный разм msgstr[1] "удалённый сервер выдал неверный размер сегмента WAL: %d Б" msgstr[2] "удалённый сервер выдал неверный размер сегмента WAL: %d Б" -#: streamutil.c:407 +#: streamutil.c:336 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "" "Размер сегмента WAL должен задаваться степенью 2 в интервале от 1 МБ до 1 ГБ." -#: streamutil.c:449 +#: streamutil.c:378 #, c-format msgid "" "could not fetch group access flag: got %d rows and %d fields, expected %d " @@ -2762,12 +2850,12 @@ msgstr "" "не удалось извлечь флаг доступа группы; получено строк: %d, полей: %d " "(ожидалось: %d и %d (или более))" -#: streamutil.c:458 +#: streamutil.c:387 #, c-format msgid "group access flag could not be parsed: %s" msgstr "не удалось разобрать флаг доступа группы: %s" -#: streamutil.c:501 streamutil.c:538 +#: streamutil.c:430 streamutil.c:467 #, c-format msgid "" "could not identify system: got %d rows and %d fields, expected %d rows and " @@ -2776,7 +2864,7 @@ msgstr "" "не удалось идентифицировать систему; получено строк: %d, полей: %d " "(ожидалось: %d и %d (или более))" -#: streamutil.c:590 +#: streamutil.c:519 #, c-format msgid "" "could not read replication slot \"%s\": got %d rows and %d fields, expected " @@ -2785,23 +2873,23 @@ msgstr "" "прочитать из слота репликации \"%s\" не удалось; получено строк: %d, полей: " "%d (ожидалось: %d и %d)" -#: streamutil.c:602 +#: streamutil.c:531 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "слот репликации \"%s\" не существует" -#: streamutil.c:613 +#: streamutil.c:542 #, c-format msgid "expected a physical replication slot, got type \"%s\" instead" msgstr "ожидался слот физической репликации, вместо этого получен тип \"%s\"" -#: streamutil.c:627 +#: streamutil.c:556 #, c-format msgid "could not parse restart_lsn \"%s\" for replication slot \"%s\"" msgstr "" "не удалось разобрать позицию restart_lsn \"%s\" для слота репликации \"%s\"" -#: streamutil.c:744 +#: streamutil.c:678 #, c-format msgid "" "could not create replication slot \"%s\": got %d rows and %d fields, " @@ -2810,7 +2898,7 @@ msgstr "" "создать слот репликации \"%s\" не удалось; получено строк: %d, полей: %d " "(ожидалось: %d и %d)" -#: streamutil.c:788 +#: streamutil.c:722 #, c-format msgid "" "could not drop replication slot \"%s\": got %d rows and %d fields, expected " @@ -2848,6 +2936,10 @@ msgstr "со сжатием закрытие файла с удалением н msgid "could not close compression stream" msgstr "не удалось закрыть поток сжатых данных" +#, c-format +#~ msgid "could not clear search_path: %s" +#~ msgstr "не удалось очистить search_path: %s" + #, c-format #~ msgid "this build does not support gzip compression" #~ msgstr "эта сборка программы не поддерживает сжатие gzip" diff --git a/src/bin/pg_basebackup/po/sv.po b/src/bin/pg_basebackup/po/sv.po index dce2f5c27f1d1..760d183956cce 100644 --- a/src/bin/pg_basebackup/po/sv.po +++ b/src/bin/pg_basebackup/po/sv.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 18\n" +"Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-05-11 15:49+0000\n" -"PO-Revision-Date: 2025-05-12 21:33+0200\n" +"POT-Creation-Date: 2025-08-15 19:19+0000\n" +"PO-Revision-Date: 2025-08-15 22:47+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -107,7 +107,7 @@ msgid "could not read file \"%s\": read %d of %zu" msgstr "kunde inte läsa fil \"%s\": läste %d av %zu" #: ../../common/controldata_utils.c:132 ../../common/controldata_utils.c:280 -#: ../../fe_utils/astreamer_file.c:141 pg_recvlogical.c:652 +#: ../../fe_utils/astreamer_file.c:141 pg_recvlogical.c:653 #, c-format msgid "could not close file \"%s\": %m" msgstr "kunde inte stänga fil \"%s\": %m" @@ -143,7 +143,7 @@ msgid "could not write file \"%s\": %m" msgstr "kunde inte skriva fil \"%s\": %m" #: ../../common/controldata_utils.c:268 ../../common/file_utils.c:440 -#: ../../common/file_utils.c:510 pg_recvlogical.c:205 +#: ../../common/file_utils.c:510 pg_recvlogical.c:206 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "kunde inte fsync:a fil \"%s\": %m" @@ -165,7 +165,7 @@ msgid "could not synchronize file system for file \"%s\": %m" msgstr "kan inte synkronisera filsystemet för fil \"%s\": %m" #: ../../common/file_utils.c:123 ../../common/file_utils.c:588 -#: pg_receivewal.c:319 pg_recvlogical.c:353 +#: pg_receivewal.c:319 pg_recvlogical.c:354 #, c-format msgid "could not stat file \"%s\": %m" msgstr "kunde inte göra stat() på fil \"%s\": %m" @@ -663,12 +663,12 @@ msgstr " -P, --progress visa förloppsinformation\n" msgid " -S, --slot=SLOTNAME replication slot to use\n" msgstr " -S, --slot=SLOTNAMN replikerings-slot att använda\n" -#: pg_basebackup.c:425 pg_receivewal.c:91 pg_recvlogical.c:109 +#: pg_basebackup.c:425 pg_receivewal.c:91 pg_recvlogical.c:110 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose mata ut utförliga meddelanden\n" -#: pg_basebackup.c:426 pg_receivewal.c:92 pg_recvlogical.c:110 +#: 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 visa versionsinformation, avsluta sedan\n" @@ -724,12 +724,12 @@ msgstr "" " --sync-method=METOD\n" " sätt synkmetod för att synka filer till disk\n" -#: pg_basebackup.c:438 pg_receivewal.c:95 pg_recvlogical.c:111 +#: pg_basebackup.c:438 pg_receivewal.c:95 pg_recvlogical.c:112 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help visa den här hjälpen, avsluta sedan\n" -#: pg_basebackup.c:439 pg_receivewal.c:96 pg_recvlogical.c:112 +#: pg_basebackup.c:439 pg_receivewal.c:96 pg_recvlogical.c:113 #, c-format msgid "" "\n" @@ -743,12 +743,12 @@ msgstr "" msgid " -d, --dbname=CONNSTR connection string\n" msgstr " -d, --dbname=CONNSTR anslutningssträng\n" -#: pg_basebackup.c:441 pg_receivewal.c:98 pg_recvlogical.c:114 +#: 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=HOSTNAMN databasserverns värdnamn eller socket-katalog\n" -#: pg_basebackup.c:442 pg_receivewal.c:99 pg_recvlogical.c:115 +#: 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 databasserverns postnummer\n" @@ -762,23 +762,23 @@ msgstr "" " -s, --status-interval=INTERVAL\n" " tid mellan att statuspaket skickas till servern (i sekunder)\n" -#: pg_basebackup.c:445 pg_receivewal.c:100 pg_recvlogical.c:116 +#: 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=NAMN ansluta som angiven databasanvändare\n" -#: pg_basebackup.c:446 pg_receivewal.c:101 pg_recvlogical.c:117 +#: 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 fråga aldrig efter lösenord\n" -#: pg_basebackup.c:447 pg_receivewal.c:102 pg_recvlogical.c:118 +#: 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 tvinga fram lösenordsfråga (skall ske automatiskt)\n" #: pg_basebackup.c:448 pg_createsubscriber.c:270 pg_receivewal.c:106 -#: pg_recvlogical.c:119 +#: pg_recvlogical.c:120 #, c-format msgid "" "\n" @@ -788,7 +788,7 @@ msgstr "" "Rapportera fel till <%s>.\n" #: pg_basebackup.c:449 pg_createsubscriber.c:271 pg_receivewal.c:107 -#: pg_recvlogical.c:120 +#: pg_recvlogical.c:121 #, c-format msgid "%s home page: <%s>\n" msgstr "hemsida för %s: <%s>\n" @@ -900,7 +900,7 @@ msgstr "överföringshastighet \"%s\" är utanför sitt intervall" msgid "could not get COPY data stream: %s" msgstr "kunde inte hämta COPY-data-ström: %s" -#: pg_basebackup.c:1040 pg_recvlogical.c:450 pg_recvlogical.c:626 +#: pg_basebackup.c:1040 pg_recvlogical.c:451 pg_recvlogical.c:627 #: receivelog.c:980 #, c-format msgid "could not read COPY data: %s" @@ -986,7 +986,7 @@ msgstr "Använd -X none eller -X fetch för att stänga av logg-strömning" msgid "server does not support incremental backup" msgstr "servern stöder inte inkrementella backup:er" -#: pg_basebackup.c:1851 pg_basebackup.c:2009 pg_recvlogical.c:273 +#: 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 @@ -1179,21 +1179,21 @@ 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: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: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_receivewal.c:760 pg_receivewal.c:767 pg_receivewal.c:776 -#: pg_receivewal.c:783 pg_receivewal.c:793 pg_recvlogical.c:859 -#: pg_recvlogical.c:871 pg_recvlogical.c:881 pg_recvlogical.c:888 -#: pg_recvlogical.c:895 pg_recvlogical.c:902 pg_recvlogical.c:909 -#: pg_recvlogical.c:916 pg_recvlogical.c:923 pg_recvlogical.c:932 -#: pg_recvlogical.c:939 +#: 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 "Försök med \"%s --help\" för mer information." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2226 pg_receivewal.c:758 -#: pg_recvlogical.c:869 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2235 pg_receivewal.c:758 +#: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "för många kommandoradsargument (första är \"%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:1305 +#: pg_createsubscriber.c:231 pg_createsubscriber.c:1314 #, 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." @@ -1335,10 +1335,10 @@ msgstr "" #, c-format msgid "" " -a, --all create subscriptions for all databases except template\n" -" databases or databases that don't allow connections\n" +" databases and databases that don't allow connections\n" msgstr "" " -a, --all skapa prenumerationer för alla databaser förutom\n" -" template-databaser eller databaser som inte tillåter\n" +" template-databaser och databaser som inte tillåter\n" " anslutningar\n" #: pg_createsubscriber.c:251 @@ -1368,38 +1368,38 @@ msgstr " -P, --publisher-server=CONNSTR publicerarens anslutningssträng\n" #: pg_createsubscriber.c:256 #, c-format -msgid "" -" -R, --remove=OBJECTTYPE remove all objects of the specified type from specified\n" -" databases on the subscriber; accepts: publications\n" -msgstr "" -" -R, --remove=OBJEKTTYP ta bort alla objekt av den angivna typen från angivna\n" -" databaser på prenumerantsidan; accepterar: publications\n" - -#: pg_createsubscriber.c:258 -#, c-format msgid " -s, --socketdir=DIR socket directory to use (default current dir.)\n" msgstr " -s, --socketdir=KAT uttagskatalog (standard är aktuell katalog.)\n" -#: pg_createsubscriber.c:259 +#: pg_createsubscriber.c:257 #, c-format msgid " -t, --recovery-timeout=SECS seconds to wait for recovery to end\n" msgstr " -t, --recovery-timeout=SECS antal sekunder att vänta på att återställning skall avslutas\n" -#: pg_createsubscriber.c:260 +#: pg_createsubscriber.c:258 #, c-format msgid " -T, --enable-two-phase enable two-phase commit for all subscriptions\n" msgstr " -T, --enable-two-phase slå på tvåfas-commit för alla prenumerationer\n" -#: pg_createsubscriber.c:261 +#: pg_createsubscriber.c:259 #, c-format msgid " -U, --subscriber-username=NAME user name for subscriber connection\n" msgstr " -U, --subscriber-username=NAME användarnamn för prenumerantens anslutning\n" -#: pg_createsubscriber.c:262 +#: pg_createsubscriber.c:260 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose visa utförliga meddelanden\n" +#: 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 "" +" -R, --remove=OBJEKTTYP ta bort alla objekt av den angivna typen från angivna\n" +" databaser på prenumerantsidan; accepterar: \"%s\"\n" + #: pg_createsubscriber.c:263 #, c-format msgid "" @@ -1603,8 +1603,8 @@ msgstr "Prenumerationer kommer skapas med flaggan two_phase avaktiverad. Förbe #: pg_createsubscriber.c:976 #, c-format -msgid "You can use --enable-two-phase switch to enable two_phase." -msgstr "Du kan använda flaggan --enable-two-phase för att slå på two_phase." +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 #, c-format @@ -1661,349 +1661,349 @@ msgstr "kunde inte slänga prenumeration \"%s\": %s" msgid "could not obtain pre-existing subscriptions: %s" msgstr "kunde inte hämta redan existerande prenumerationer: %s" -#: pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1312 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "kunde inte slänga replikeringsslotten \"%s\" på primären" -#: pg_createsubscriber.c:1337 +#: pg_createsubscriber.c:1346 #, 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:1339 pg_createsubscriber.c:1348 +#: pg_createsubscriber.c:1348 pg_createsubscriber.c:1357 #, 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:1347 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not drop failover replication slot" msgstr "kunde inte slänga replikeringsslot för failover" -#: pg_createsubscriber.c:1369 +#: pg_createsubscriber.c:1378 #, c-format msgid "creating the replication slot \"%s\" in database \"%s\"" msgstr "skapar replikeringsslot \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1397 #, 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:1418 +#: pg_createsubscriber.c:1427 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "slänger replikeringsslot \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1434 +#: pg_createsubscriber.c:1443 #, 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:1455 +#: pg_createsubscriber.c:1464 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl avslutade med felkod %d" -#: pg_createsubscriber.c:1460 +#: pg_createsubscriber.c:1469 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl avslutades med avbrott 0x%X" -#: pg_createsubscriber.c:1462 +#: pg_createsubscriber.c:1471 #, 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:1464 +#: pg_createsubscriber.c:1473 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl terminerades av signal %d: %s" -#: pg_createsubscriber.c:1470 +#: pg_createsubscriber.c:1479 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl avslutade med okänd statuskod %d" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1482 #, c-format msgid "The failed command was: %s" msgstr "Det misslyckade kommandot var: %s" -#: pg_createsubscriber.c:1523 +#: pg_createsubscriber.c:1532 #, c-format msgid "server was started" msgstr "servern startad" -#: pg_createsubscriber.c:1538 +#: pg_createsubscriber.c:1547 #, c-format msgid "server was stopped" msgstr "servern är stoppad" -#: pg_createsubscriber.c:1557 +#: pg_createsubscriber.c:1566 #, 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:1580 +#: pg_createsubscriber.c:1589 #, c-format msgid "recovery timed out" msgstr "timeout vid återställning" -#: pg_createsubscriber.c:1593 +#: pg_createsubscriber.c:1602 #, c-format msgid "server did not end recovery" msgstr "servern avslutade inte återställning" -#: pg_createsubscriber.c:1595 +#: pg_createsubscriber.c:1604 #, c-format msgid "target server reached the consistent state" msgstr "målservern har nått ett konsistent läge" -#: pg_createsubscriber.c:1596 +#: pg_createsubscriber.c:1605 #, 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:1623 pg_createsubscriber.c:1746 +#: pg_createsubscriber.c:1632 pg_createsubscriber.c:1755 #, c-format msgid "could not obtain publication information: %s" msgstr "kunde inte hämta publiceringsinformation: %s" -#: pg_createsubscriber.c:1637 +#: pg_createsubscriber.c:1646 #, c-format msgid "publication \"%s\" already exists" msgstr "publicering \"%s\" finns redan" -#: pg_createsubscriber.c:1638 +#: pg_createsubscriber.c:1647 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Överväg att byta namn på denna publicering innan fortsättning." -#: pg_createsubscriber.c:1645 +#: pg_createsubscriber.c:1654 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "skapar puiblicering \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1658 +#: pg_createsubscriber.c:1667 #, 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:1688 +#: pg_createsubscriber.c:1697 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "slänger publiceringen \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1702 +#: pg_createsubscriber.c:1711 #, 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:1739 +#: pg_createsubscriber.c:1748 #, c-format msgid "dropping all existing publications in database \"%s\"" msgstr "slänger alla existerande publiceringar i databasen \"%s\"" -#: pg_createsubscriber.c:1797 +#: pg_createsubscriber.c:1806 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "skapar prenumeration \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1819 +#: pg_createsubscriber.c:1828 #, 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:1864 +#: pg_createsubscriber.c:1873 #, c-format msgid "could not obtain subscription OID: %s" msgstr "kunde inte hämta prenumerations-OID: %s" -#: pg_createsubscriber.c:1871 +#: pg_createsubscriber.c:1880 #, 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:1895 +#: pg_createsubscriber.c:1904 #, 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:1910 +#: pg_createsubscriber.c:1919 #, 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:1941 +#: pg_createsubscriber.c:1950 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "aktiverar prenumeration \"%s\" i databasen \"%s\"" -#: pg_createsubscriber.c:1953 +#: pg_createsubscriber.c:1962 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "kunde inte aktivera prenumerationen \"%s\": %s" -#: pg_createsubscriber.c:1999 +#: pg_createsubscriber.c:2008 #, c-format msgid "could not obtain a list of databases: %s" msgstr "kunde inte hämta en lista med databaser: %s" -#: pg_createsubscriber.c:2103 +#: pg_createsubscriber.c:2112 #, c-format msgid "cannot be executed by \"root\"" msgstr "kan inte köras av \"root\"" -#: pg_createsubscriber.c:2104 +#: pg_createsubscriber.c:2113 #, 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:2127 +#: pg_createsubscriber.c:2136 #, 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:2146 -#, c-format -msgid "object type \"%s\" is specified more than once for -R/--remove" -msgstr "objekttypeb \"%s\" är angiven mer än en gång för -R/--remove" - -#: pg_createsubscriber.c:2174 +#: pg_createsubscriber.c:2177 #, 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:2183 +#: pg_createsubscriber.c:2186 #, 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:2192 +#: pg_createsubscriber.c:2195 #, 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:2217 +#: pg_createsubscriber.c:2201 #, c-format -msgid "%s cannot be used with -a/--all" -msgstr "%s kan inte användas med -a/--all" +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:2235 +#: pg_createsubscriber.c:2226 +#, c-format +msgid "options %s and -a/--all cannot be used together" +msgstr "flaggorna %s och -a/--all kan inte användas tillsammans" + +#: pg_createsubscriber.c:2244 #, c-format msgid "no subscriber data directory specified" msgstr "ingen datakatalog för prenumeration angiven" -#: pg_createsubscriber.c:2246 +#: pg_createsubscriber.c:2255 #, c-format msgid "could not determine current directory" msgstr "kunde inte bestämma aktuell katalog" -#: pg_createsubscriber.c:2263 +#: pg_createsubscriber.c:2272 #, c-format msgid "no publisher connection string specified" msgstr "ingen anslutningssträng angiven för publicerare" -#: pg_createsubscriber.c:2267 +#: pg_createsubscriber.c:2276 #, c-format msgid "validating publisher connection string" msgstr "validerar publicerares anslutningssträng" -#: pg_createsubscriber.c:2273 +#: pg_createsubscriber.c:2282 #, c-format msgid "validating subscriber connection string" msgstr "validerar prenumerants anslutningssträng" -#: pg_createsubscriber.c:2290 +#: pg_createsubscriber.c:2299 #, c-format msgid "no database was specified" msgstr "ingen databas angavs" -#: pg_createsubscriber.c:2301 +#: pg_createsubscriber.c:2310 #, 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:2306 +#: pg_createsubscriber.c:2315 #, c-format msgid "no database name specified" msgstr "inget databasnamn angavs" -#: pg_createsubscriber.c:2316 +#: pg_createsubscriber.c:2325 #, c-format msgid "wrong number of publication names specified" msgstr "fel antal namn på publicister angavs" -#: pg_createsubscriber.c:2317 +#: pg_createsubscriber.c:2326 #, 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:2323 +#: pg_createsubscriber.c:2332 #, c-format msgid "wrong number of subscription names specified" msgstr "fel antal namn på prenumeranter angivna" -#: pg_createsubscriber.c:2324 +#: pg_createsubscriber.c:2333 #, 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:2330 +#: pg_createsubscriber.c:2339 #, c-format msgid "wrong number of replication slot names specified" msgstr "fel antal namn på replikeringsslottar angivet" -#: pg_createsubscriber.c:2331 +#: pg_createsubscriber.c:2340 #, 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:2343 +#: pg_createsubscriber.c:2352 #, c-format -msgid "invalid object type \"%s\" specified for -R/--remove" -msgstr "ogiltigt objekttyp \"%s\" angivet för -R/--remove" +msgid "invalid object type \"%s\" specified for --clean" +msgstr "ogiltigt objekttyp \"%s\" angivet för --clean" -#: pg_createsubscriber.c:2344 +#: pg_createsubscriber.c:2353 #, c-format -msgid "The valid option is: \"publications\"" -msgstr "Giltiga flaggor är: \"publications\"" +msgid "The valid value is: \"%s\"" +msgstr "Giltigt värde är: \"%s\"" -#: pg_createsubscriber.c:2375 +#: pg_createsubscriber.c:2384 #, 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:2388 +#: pg_createsubscriber.c:2397 #, c-format msgid "standby server is running" msgstr "standby-servern kör" -#: pg_createsubscriber.c:2389 +#: pg_createsubscriber.c:2398 #, c-format msgid "Stop the standby server and try again." msgstr "Stoppa standby-servern och försök igen." -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2407 #, c-format msgid "starting the standby server with command-line options" msgstr "startar standby-server med kommandoradsflaggor" -#: pg_createsubscriber.c:2414 pg_createsubscriber.c:2449 +#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 #, c-format msgid "stopping the subscriber" msgstr "stoppar prenumeranten" -#: pg_createsubscriber.c:2428 +#: pg_createsubscriber.c:2437 #, c-format msgid "starting the subscriber" msgstr "startar prenumeranten" -#: pg_createsubscriber.c:2457 +#: pg_createsubscriber.c:2466 #, c-format msgid "Done!" msgstr "Klar!" @@ -2022,7 +2022,7 @@ msgstr "" msgid " -D, --directory=DIR receive write-ahead log files into this directory\n" msgstr " -D, --directory=KAT ta emot write-ahead-logg-filer till denna katalog\n" -#: pg_receivewal.c:83 pg_recvlogical.c:92 +#: 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 avsluta efter att ha taget emot den angivna LSN\n" @@ -2099,7 +2099,7 @@ msgstr "stoppade logg-strömning vid %X/%X (tidslinje %u)" msgid "switched to timeline %u at %X/%X" msgstr "bytte till tidslinje %u vid %X/%X" -#: pg_receivewal.c:224 pg_recvlogical.c:1073 +#: pg_receivewal.c:224 pg_recvlogical.c:1075 #, c-format msgid "received interrupt signal, exiting" msgstr "mottog avbrottsignal, avslutar" @@ -2169,7 +2169,7 @@ msgstr "kan inte kontrollera filen \"%s\": komprimering med %s stöds inte av de msgid "starting log streaming at %X/%X (timeline %u)" msgstr "startar logg-strömning vid %X/%X (tidslinje %u)" -#: pg_receivewal.c:693 pg_recvlogical.c:807 +#: pg_receivewal.c:693 pg_recvlogical.c:809 #, c-format msgid "could not parse end position \"%s\"" msgstr "kunde inte parsa slutposition \"%s\"" @@ -2199,23 +2199,23 @@ msgstr "komprimering med %s stöds inte än" msgid "replication connection using slot \"%s\" is unexpectedly database specific" msgstr "replikeringsanslutning som använder slot \"%s\" är oväntat databasspecifik" -#: pg_receivewal.c:878 pg_recvlogical.c:991 +#: pg_receivewal.c:878 pg_recvlogical.c:993 #, c-format msgid "dropping replication slot \"%s\"" msgstr "slänger replikeringsslot \"%s\"" -#: pg_receivewal.c:889 pg_recvlogical.c:1001 +#: pg_receivewal.c:889 pg_recvlogical.c:1003 #, c-format msgid "creating replication slot \"%s\"" msgstr "skapar replikeringsslot \"%s\"" -#: pg_receivewal.c:918 pg_recvlogical.c:1026 +#: pg_receivewal.c:918 pg_recvlogical.c:1028 #, c-format msgid "disconnected" msgstr "nerkopplad" #. translator: check source for value for %d -#: pg_receivewal.c:922 pg_recvlogical.c:1030 +#: pg_receivewal.c:922 pg_recvlogical.c:1032 #, c-format msgid "disconnected; waiting %d seconds to try again" msgstr "nerkopplad; väntar %d sekunder för att försöka igen" @@ -2243,14 +2243,14 @@ msgstr "" msgid " --start start streaming in a replication slot (for the slot's name see --slot)\n" msgstr " --start starta strömning i en replikeringsslot (angående slot:ens namn, se --slot)\n" -#: pg_recvlogical.c:93 +#: pg_recvlogical.c:92 #, c-format msgid "" -" --failover enable replication slot synchronization to standby servers when\n" -" creating a slot\n" +" --enable-failover enable replication slot synchronization to standby servers when\n" +" creating a replication slot\n" msgstr "" -" --failover slå på synkronisering av replikeringsslot till standby-servrar\n" -" när en slot skapas\n" +" --enable-failover slå på synkronisering av replikeringsslot till standby-servrar\n" +" när en replikeringsslot skapas\n" #: pg_recvlogical.c:95 #, c-format @@ -2294,136 +2294,136 @@ msgstr " -S, --slot=SLOTNAMN namn på den logiska replikerings-slotten\n" #: pg_recvlogical.c:108 #, c-format -msgid " -t, --two-phase enable decoding of prepared transactions when creating a slot\n" -msgstr " -t, --two-phase slå på avkodning av förberedda transaktioner när en slot skapas\n" +msgid " -t, --enable-two-phase enable decoding of prepared transactions when creating a slot\n" +msgstr " -t, --enable-two-phase slå på avkodning av förberedda transaktioner när en slot skapas\n" -#: pg_recvlogical.c:113 +#: pg_recvlogical.c:109 +#, c-format +msgid " --two-phase (same as --enable-two-phase, deprecated)\n" +msgstr " --two-phase (samma som --enable-two-phase, obsolet)\n" + +#: pg_recvlogical.c:114 #, c-format msgid " -d, --dbname=DBNAME database to connect to\n" msgstr " -d, --dbname=DBNAMN databas att ansluta till\n" -#: pg_recvlogical.c:146 +#: pg_recvlogical.c:147 #, c-format msgid "confirming write up to %X/%X, flush to %X/%X (slot %s)" msgstr "bekräftar skrivning fram till %X/%X, flush till %X/%X (slot %s)" -#: pg_recvlogical.c:170 receivelog.c:359 +#: pg_recvlogical.c:171 receivelog.c:359 #, c-format msgid "could not send feedback packet: %s" msgstr "kunde inte skicka feedback-paket: %s" -#: pg_recvlogical.c:240 +#: pg_recvlogical.c:241 #, c-format msgid "starting log streaming at %X/%X (slot %s)" msgstr "startar logg-strömning vid %X/%X (slot %s)" -#: pg_recvlogical.c:282 +#: pg_recvlogical.c:283 #, c-format msgid "streaming initiated" msgstr "strömning initierad" -#: pg_recvlogical.c:347 +#: pg_recvlogical.c:348 #, c-format msgid "could not open log file \"%s\": %m" msgstr "kunde inte öppna loggfil \"%s\": %m" -#: pg_recvlogical.c:376 receivelog.c:889 +#: pg_recvlogical.c:377 receivelog.c:889 #, c-format msgid "invalid socket: %s" msgstr "ogiltigt uttag: %s" -#: pg_recvlogical.c:429 receivelog.c:917 +#: pg_recvlogical.c:430 receivelog.c:917 #, c-format msgid "%s() failed: %m" msgstr "%s() misslyckades: %m" -#: pg_recvlogical.c:436 receivelog.c:966 +#: pg_recvlogical.c:437 receivelog.c:966 #, c-format msgid "could not receive data from WAL stream: %s" msgstr "kunde inte ta emot data från WAL-ström: %s" -#: pg_recvlogical.c:478 pg_recvlogical.c:529 receivelog.c:1010 +#: pg_recvlogical.c:479 pg_recvlogical.c:530 receivelog.c:1010 #: receivelog.c:1073 #, c-format msgid "streaming header too small: %d" msgstr "strömningsheader för liten: %d" -#: pg_recvlogical.c:513 receivelog.c:846 +#: pg_recvlogical.c:514 receivelog.c:846 #, c-format msgid "unrecognized streaming header: \"%c\"" msgstr "okänd strömningsheader: \"%c\"" -#: pg_recvlogical.c:567 pg_recvlogical.c:579 +#: pg_recvlogical.c:568 pg_recvlogical.c:580 #, c-format msgid "could not write %d bytes to log file \"%s\": %m" msgstr "kunde inte skriva %d byte till loggfil \"%s\": %m" -#: pg_recvlogical.c:637 receivelog.c:641 receivelog.c:678 +#: pg_recvlogical.c:638 receivelog.c:641 receivelog.c:678 #, c-format msgid "unexpected termination of replication stream: %s" msgstr "oväntad terminering av replikeringsström: %s" -#: pg_recvlogical.c:802 +#: pg_recvlogical.c:804 #, c-format msgid "could not parse start position \"%s\"" msgstr "kunde inte parsa startposition \"%s\"" -#: pg_recvlogical.c:880 +#: pg_recvlogical.c:882 #, c-format msgid "no slot specified" msgstr "ingen slot angiven" -#: pg_recvlogical.c:887 +#: pg_recvlogical.c:889 #, c-format msgid "no target file specified" msgstr "ingen målfil angiven" -#: pg_recvlogical.c:894 +#: pg_recvlogical.c:896 #, c-format msgid "no database specified" msgstr "ingen databas angiven" -#: pg_recvlogical.c:901 +#: pg_recvlogical.c:903 #, c-format msgid "at least one action needs to be specified" msgstr "minst en handling måste anges" -#: pg_recvlogical.c:908 +#: pg_recvlogical.c:910 #, c-format msgid "cannot use --create-slot or --start together with --drop-slot" msgstr "kan inte använda --create-slot eller --start tillsammans med --drop-slot" -#: pg_recvlogical.c:915 +#: pg_recvlogical.c:917 #, c-format msgid "cannot use --create-slot or --drop-slot together with --startpos" msgstr "kan inte använda --create-slot eller --drop-slot tillsammans med --startpos" -#: pg_recvlogical.c:922 +#: pg_recvlogical.c:924 #, c-format msgid "--endpos may only be specified with --start" msgstr "--endpos får bara anges tillsammans med --start" -#: pg_recvlogical.c:931 -#, c-format -msgid "--two-phase may only be specified with --create-slot" -msgstr "--two-phase får bara anges tillsammans med --create-slot" - -#: pg_recvlogical.c:938 +#: pg_recvlogical.c:933 pg_recvlogical.c:940 #, c-format -msgid "--failover may only be specified with --create-slot" -msgstr "--failover får bara anges tillsammans med --create-slot" +msgid "%s may only be specified with --create-slot" +msgstr "%s får bara anges tillsammans med --create-slot" -#: pg_recvlogical.c:975 +#: pg_recvlogical.c:977 #, c-format msgid "could not establish database-specific replication connection" msgstr "kunde inte upprätta databasspecifik replikeringsanslutning" -#: pg_recvlogical.c:1076 +#: pg_recvlogical.c:1078 #, c-format msgid "end position %X/%X reached by keepalive" msgstr "slutposition %X/%X nådd av keepalive" -#: pg_recvlogical.c:1081 +#: pg_recvlogical.c:1083 #, c-format msgid "end position %X/%X reached by WAL record at %X/%X" msgstr "slutposition %X/%X nådd av WAL-post vid %X/%X" diff --git a/src/bin/pg_checksums/po/ru.po b/src/bin/pg_checksums/po/ru.po index 30f9791b0460a..3c1863fe8475b 100644 --- a/src/bin/pg_checksums/po/ru.po +++ b/src/bin/pg_checksums/po/ru.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_verify_checksums (PostgreSQL) 11\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 13:35+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -12,22 +12,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\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 @@ msgstr "" "этой программой. В этом случае результаты будут неверными и\n" "установленный 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 "не удалось синхронизировать с ФС файл \"%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,7 +147,7 @@ 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 " @@ -158,17 +158,17 @@ msgstr "" "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 [ПАРАМЕТР]... [КАТАЛОГ]\n" -#: pg_checksums.c:73 +#: pg_checksums.c:72 #, c-format msgid "" "\n" @@ -177,29 +177,29 @@ msgstr "" "\n" "Параметры:\n" -#: pg_checksums.c:74 +#: pg_checksums.c:73 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]КАТ_ДАННЫХ каталог данных\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" @@ -207,7 +207,7 @@ msgstr "" " -f, --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 " @@ -215,32 +215,32 @@ msgid "" 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=МЕТОД метод синхронизации файлов с ФС\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" @@ -254,32 +254,32 @@ msgstr "" "переменной окружения 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 -#, c-format -msgid "%lld/%lld MB (%d%%) computed" +#: pg_checksums.c:144 +#, fuzzy, c-format +msgid "%/% MB (%d%%) computed" msgstr "%lld/%lld МБ (%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 " @@ -288,72 +288,72 @@ 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 "ошибка контрольного значения в 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_checksums" -#: 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 " @@ -362,77 +362,77 @@ 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 -#, c-format -msgid "Files scanned: %lld\n" +#: pg_checksums.c:606 +#, fuzzy, c-format +msgid "Files scanned: %\n" msgstr "Просканировано файлов: %lld\n" -#: pg_checksums.c:608 -#, c-format -msgid "Blocks scanned: %lld\n" +#: pg_checksums.c:607 +#, fuzzy, c-format +msgid "Blocks scanned: %\n" msgstr "Просканировано блоков: %lld\n" -#: pg_checksums.c:611 -#, c-format -msgid "Bad checksums: %lld\n" +#: pg_checksums.c:610 +#, fuzzy, c-format +msgid "Bad checksums: %\n" msgstr "Неверные контрольные суммы: %lld\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 -#, c-format -msgid "Files written: %lld\n" +#: pg_checksums.c:618 +#, fuzzy, c-format +msgid "Files written: %\n" msgstr "Записано файлов: %lld\n" -#: pg_checksums.c:620 -#, c-format -msgid "Blocks written: %lld\n" +#: pg_checksums.c:619 +#, fuzzy, c-format +msgid "Blocks written: %\n" msgstr "Записано блоков: %lld\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/po/ru.po b/src/bin/pg_combinebackup/po/ru.po index 5c2af7387c385..052184e886e06 100644 --- a/src/bin/pg_combinebackup/po/ru.po +++ b/src/bin/pg_combinebackup/po/ru.po @@ -3,7 +3,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-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-11-09 08:04+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -15,22 +15,22 @@ msgstr "" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Lokalize 21.12.3\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 "подсказка: " @@ -40,8 +40,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:540 +#: ../../common/controldata_utils.c:110 copy_file.c:164 load_manifest.c:161 +#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:540 #, c-format msgid "could not read file \"%s\": %m" msgstr "не удалось прочитать файл \"%s\": %m" @@ -52,8 +52,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:369 reconstruct.c:740 +#: backup_label.c:174 copy_file.c:71 pg_combinebackup.c:548 +#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:740 #: write_manifest.c:187 #, c-format msgid "could not close file \"%s\": %m" @@ -77,12 +77,12 @@ msgstr "" "этой программой. В этом случае результаты будут неверными и\n" "установленный 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:523 reconstruct.c:638 +#: ../../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:523 reconstruct.c:638 #: write_manifest.c:250 #, c-format msgid "could not open file \"%s\": %m" @@ -94,14 +94,15 @@ 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 "не удалось синхронизировать с ФС файл \"%s\": %m" #: ../../common/cryptohash.c:261 ../../common/cryptohash_openssl.c:356 -#: ../../common/parse_manifest.c:157 ../../common/parse_manifest.c:852 +#: ../../common/jsonapi.c:2410 ../../common/parse_manifest.c:157 +#: ../../common/parse_manifest.c:852 #, c-format msgid "out of memory" msgstr "нехватка памяти" @@ -130,126 +131,126 @@ 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:204 +#: ../../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 #, 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." @@ -257,21 +258,25 @@ 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/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" @@ -362,7 +367,7 @@ msgstr "не удалось декодировать имя файла" msgid "file size is not an integer" msgstr "размер файла не является целочисленным" -#: ../../common/parse_manifest.c:699 pg_combinebackup.c:199 +#: ../../common/parse_manifest.c:699 pg_combinebackup.c:204 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "нераспознанный алгоритм расчёта контрольных сумм: \"%s\"" @@ -479,63 +484,68 @@ msgstr "%s: %s требует %s" 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:721 +#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:721 #: reconstruct.c:767 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:784 +#: copy_file.c:213 reconstruct.c:784 #, 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:704 +#: copy_file.c:292 reconstruct.c:704 #, 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:724 +#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:724 #, 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 +#, fuzzy, 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" @@ -562,27 +572,28 @@ msgstr "" 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 -#, c-format -msgid "%s: manifest system identifier is %llu, but control file has %llu" +#: pg_combinebackup.c:306 +#, fuzzy, c-format +msgid "" +"%s: manifest system identifier is %, but control file has %" msgstr "%s: идентификатор системы в манифесте %llu, а в управляющем файле %llu" -#: pg_combinebackup.c:340 +#: pg_combinebackup.c:345 #, c-format msgid "" "cannot generate a manifest because no manifest is available for the final " @@ -591,41 +602,48 @@ 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 "" + +#: 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\"; должно быть " "\"СТАРЫЙ_КАТАЛОГ=НОВЫЙ_КАТАЛОГ\"" -#: 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 " @@ -634,7 +652,7 @@ 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 " @@ -643,37 +661,37 @@ 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 -#, c-format -msgid "%s: expected system identifier %llu, but found %llu" +#: pg_combinebackup.c:635 +#, fuzzy, c-format +msgid "%s: expected system identifier %, but found %" msgstr "%s: ожидался идентификатор системы %llu, но обнаружен %llu" -#: 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 " @@ -682,37 +700,37 @@ 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" @@ -721,17 +739,17 @@ 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" @@ -740,18 +758,26 @@ 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 +#, fuzzy, c-format +msgid " -k, --link link files instead of copying\n" +msgstr "" +" --clone клонировать (используя reflink), а не " +"копировать\n" +" файлы\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 " @@ -759,12 +785,12 @@ msgid "" 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=КАТАЛОГ выходной каталог\n" -#: pg_combinebackup.c:767 +#: pg_combinebackup.c:777 #, c-format msgid "" " -T, --tablespace-mapping=OLDDIR=NEWDIR\n" @@ -775,7 +801,7 @@ msgstr "" "каталога\n" " в новый\n" -#: pg_combinebackup.c:769 +#: pg_combinebackup.c:779 #, c-format msgid " --clone clone (reflink) files instead of copying\n" msgstr "" @@ -783,19 +809,19 @@ msgstr "" "копировать\n" " файлы\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 использовать для копирования системную функцию\n" " 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" @@ -804,27 +830,27 @@ 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=МЕТОД метод синхронизации файлов с ФС\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" @@ -833,73 +859,73 @@ 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:305 +#: 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 "" "два табличных пространства с OIDs %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)" diff --git a/src/bin/pg_config/po/ru.po b/src/bin/pg_config/po/ru.po index 0a86bbb455c6d..35580c39bccd6 100644 --- a/src/bin/pg_config/po/ru.po +++ b/src/bin/pg_config/po/ru.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_config (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 13:45+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -48,27 +48,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 +#: ../../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 "нехватка памяти" @@ -83,7 +83,7 @@ msgstr "нехватка памяти\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "попытка дублирования нулевого указателя (внутренняя ошибка)\n" -#: pg_config.c:74 +#: pg_config.c:73 #, c-format msgid "" "\n" @@ -94,12 +94,12 @@ msgstr "" "%s предоставляет информацию об установленной версии PostgreSQL.\n" "\n" -#: pg_config.c:75 +#: pg_config.c:74 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: pg_config.c:76 +#: pg_config.c:75 #, c-format msgid "" " %s [OPTION]...\n" @@ -108,28 +108,28 @@ msgstr "" " %s [ПАРАМЕТР]...\n" "\n" -#: pg_config.c:77 +#: pg_config.c:76 #, c-format msgid "Options:\n" msgstr "Параметры:\n" -#: pg_config.c:78 +#: pg_config.c:77 #, c-format msgid " --bindir show location of user executables\n" msgstr " --bindir показать расположение исполняемых файлов\n" -#: pg_config.c:79 +#: pg_config.c:78 #, c-format msgid " --docdir show location of documentation files\n" msgstr " --docdir показать расположение файлов документации\n" -#: pg_config.c:80 +#: pg_config.c:79 #, c-format msgid " --htmldir show location of HTML documentation files\n" msgstr "" " --htmldir показать расположение HTML-файлов документации\n" -#: pg_config.c:81 +#: pg_config.c:80 #, c-format msgid "" " --includedir show location of C header files of the client\n" @@ -138,13 +138,13 @@ msgstr "" " --includedir показать расположение файлов-заголовков (.h) для\n" " клиентских интерфейсов на языке C\n" -#: pg_config.c:83 +#: pg_config.c:82 #, c-format msgid " --pkgincludedir show location of other C header files\n" msgstr "" " --pkgincludedir показать расположение других файлов-заголовков (.h)\n" -#: pg_config.c:84 +#: pg_config.c:83 #, c-format msgid "" " --includedir-server show location of C header files for the server\n" @@ -152,31 +152,31 @@ msgstr "" " --includedir-server показать расположение файлов-заголовков (.h) для " "сервера\n" -#: pg_config.c:85 +#: pg_config.c:84 #, c-format msgid " --libdir show location of object code libraries\n" msgstr "" " --libdir показать расположение библиотек объектного кода\n" -#: pg_config.c:86 +#: pg_config.c:85 #, c-format msgid " --pkglibdir show location of dynamically loadable modules\n" msgstr "" " --pkglibdir показать расположение динамически загружаемых " "модулей\n" -#: pg_config.c:87 +#: pg_config.c:86 #, c-format msgid " --localedir show location of locale support files\n" msgstr "" " --localedir показать расположение файлов описания локалей\n" -#: pg_config.c:88 +#: pg_config.c:87 #, c-format msgid " --mandir show location of manual pages\n" msgstr " --mandir показать расположение справочных страниц\n" -#: pg_config.c:89 +#: pg_config.c:88 #, c-format msgid "" " --sharedir show location of architecture-independent support " @@ -185,7 +185,7 @@ msgstr "" " --sharedir показать расположение платформенно-независимых " "файлов\n" -#: pg_config.c:90 +#: pg_config.c:89 #, c-format msgid "" " --sysconfdir show location of system-wide configuration files\n" @@ -193,13 +193,13 @@ msgstr "" " --sysconfdir показать расположение общесистемных файлов " "конфигурации\n" -#: pg_config.c:91 +#: pg_config.c:90 #, c-format msgid " --pgxs show location of extension makefile\n" msgstr "" " --pgxs показать расположение makefile для расширений\n" -#: pg_config.c:92 +#: pg_config.c:91 #, c-format msgid "" " --configure show options given to \"configure\" script when\n" @@ -209,13 +209,13 @@ msgstr "" "которыми\n" " был собран PostgreSQL\n" -#: pg_config.c:94 +#: pg_config.c:93 #, c-format msgid " --cc show CC value used when PostgreSQL was built\n" msgstr "" " --cc показать, с каким значением CC собран PostgreSQL\n" -#: pg_config.c:95 +#: pg_config.c:94 #, c-format msgid "" " --cppflags show CPPFLAGS value used when PostgreSQL was built\n" @@ -223,14 +223,14 @@ msgstr "" " --cppflags показать, с каким значением CPPFLAGS собран " "PostgreSQL\n" -#: pg_config.c:96 +#: pg_config.c:95 #, c-format msgid "" " --cflags show CFLAGS value used when PostgreSQL was built\n" msgstr "" " --cflags показать, с какими флагами C собран PostgreSQL\n" -#: pg_config.c:97 +#: pg_config.c:96 #, c-format msgid "" " --cflags_sl show CFLAGS_SL value used when PostgreSQL was built\n" @@ -238,7 +238,7 @@ msgstr "" " --cflags_sl показать, с каким значением CFLAGS_SL собран " "PostgreSQL\n" -#: pg_config.c:98 +#: pg_config.c:97 #, c-format msgid "" " --ldflags show LDFLAGS value used when PostgreSQL was built\n" @@ -246,7 +246,7 @@ msgstr "" " --ldflags показать, с каким значением LDFLAGS собран " "PostgreSQL\n" -#: pg_config.c:99 +#: pg_config.c:98 #, c-format msgid "" " --ldflags_ex show LDFLAGS_EX value used when PostgreSQL was " @@ -255,7 +255,7 @@ msgstr "" " --ldflags_ex показать, с каким значением LDFLAGS_EX собран " "PostgreSQL\n" -#: pg_config.c:100 +#: pg_config.c:99 #, c-format msgid "" " --ldflags_sl show LDFLAGS_SL value used when PostgreSQL was " @@ -264,24 +264,24 @@ msgstr "" " --ldflags_sl показать, с каким значением LDFLAGS_SL собран " "PostgreSQL\n" -#: pg_config.c:101 +#: pg_config.c:100 #, c-format msgid "" " --libs show LIBS value used when PostgreSQL was built\n" msgstr "" " --libs показать, с каким значением LIBS собран PostgreSQL\n" -#: pg_config.c:102 +#: pg_config.c:101 #, c-format msgid " --version show the PostgreSQL version\n" msgstr " --version показать версию PostgreSQL\n" -#: pg_config.c:103 +#: pg_config.c:102 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_config.c:104 +#: pg_config.c:103 #, c-format msgid "" "\n" @@ -292,27 +292,27 @@ msgstr "" "При запуске без аргументов выводятся все известные значения.\n" "\n" -#: pg_config.c:105 +#: pg_config.c:104 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Об ошибках сообщайте по адресу <%s>.\n" -#: pg_config.c:106 +#: pg_config.c:105 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" -#: pg_config.c:112 +#: pg_config.c:111 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Для дополнительной информации попробуйте \"%s --help\".\n" -#: pg_config.c:154 +#: pg_config.c:153 #, c-format msgid "%s: could not find own program executable\n" msgstr "%s: не удалось найти свой исполняемый файл\n" -#: pg_config.c:181 +#: pg_config.c:180 #, c-format msgid "%s: invalid argument: %s\n" msgstr "%s: неверный аргумент: %s\n" diff --git a/src/bin/pg_controldata/po/ru.po b/src/bin/pg_controldata/po/ru.po index 5197e06cc71d3..6f4858da86b38 100644 --- a/src/bin/pg_controldata/po/ru.po +++ b/src/bin/pg_controldata/po/ru.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_controldata (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 17:08+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -253,8 +253,8 @@ msgid "Catalog version number: %u\n" msgstr "Номер версии каталога: %u\n" #: pg_controldata.c:242 -#, c-format -msgid "Database system identifier: %llu\n" +#, fuzzy, c-format +msgid "Database system identifier: %\n" msgstr "Идентификатор системы баз данных: %llu\n" #: pg_controldata.c:244 @@ -536,8 +536,21 @@ msgstr "по значению" msgid "Data page checksum version: %u\n" msgstr "Версия контрольных сумм страниц: %u\n" -# skip-rule: capital-letter-first #: pg_controldata.c:339 +#, fuzzy, c-format +msgid "Default char data signedness: %s\n" +msgstr "Макс. предел выравнивания данных: %u\n" + +#: pg_controldata.c:340 +msgid "signed" +msgstr "" + +#: pg_controldata.c:340 +msgid "unsigned" +msgstr "" + +# skip-rule: capital-letter-first +#: pg_controldata.c:341 #, c-format msgid "Mock authentication nonce: %s\n" msgstr "Случ. число для псевдоаутентификации: %s\n" diff --git a/src/bin/pg_ctl/po/ru.po b/src/bin/pg_ctl/po/ru.po index 8f9a0a24aef49..37259586e8b29 100644 --- a/src/bin/pg_ctl/po/ru.po +++ b/src/bin/pg_ctl/po/ru.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_ctl (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-07 06:47+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -46,33 +46,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:830 ../../port/path.c:867 ../../port/path.c:884 +#: ../../port/path.c:831 ../../port/path.c:868 ../../port/path.c:885 #, c-format msgid "out of memory\n" msgstr "нехватка памяти\n" @@ -112,131 +112,135 @@ msgstr "дочерний процесс завершён по сигналу %d: msgid "child process exited with unrecognized status %d" msgstr "дочерний процесс завершился с нераспознанным кодом состояния %d" -#: ../../port/path.c:852 +#: ../../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 "" + +#: pg_ctl.c:1008 #, c-format msgid "" "%s: could not start server\n" @@ -245,43 +249,43 @@ 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: остановить сервер с 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" @@ -289,243 +293,243 @@ msgstr "" "ПОДСКАЗКА: Параметр \"-m fast\" может сбросить сеансы принудительно,\n" "не дожидаясь, пока они завершатся сами.\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: перезапустить сервер с 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: перезагрузить сервер с 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: повысить сервер с 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: не удалось получить LUID для привилегий (код ошибки: %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" @@ -535,17 +539,17 @@ msgstr "" "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" @@ -554,13 +558,13 @@ 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" @@ -569,32 +573,32 @@ 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 КАТАЛОГ-ДАННЫХ]\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 КАТАЛОГ-ДАННЫХ] [-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" @@ -606,12 +610,12 @@ msgstr "" " [-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" @@ -620,12 +624,12 @@ 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" @@ -634,45 +638,45 @@ msgstr "" "журнал,\n" " когда сервер работает в виде службы\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" @@ -681,24 +685,24 @@ 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" @@ -708,12 +712,12 @@ msgstr "" "PostgreSQL)\n" " или initdb параметры командной строки\n" -#: pg_ctl.c:2004 +#: pg_ctl.c:2016 #, c-format msgid " -p PATH-TO-POSTGRES normally not necessary\n" msgstr " -p ПУТЬ-К-POSTGRES обычно не требуется\n" -#: pg_ctl.c:2005 +#: pg_ctl.c:2017 #, c-format msgid "" "\n" @@ -722,14 +726,14 @@ 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" @@ -738,17 +742,17 @@ 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 " @@ -757,7 +761,7 @@ msgstr "" " immediate закончить немедленно, в экстренном режиме; влечёт за собой\n" " восстановление при перезапуске\n" -#: pg_ctl.c:2013 +#: pg_ctl.c:2025 #, c-format msgid "" "\n" @@ -766,7 +770,7 @@ msgstr "" "\n" "Разрешённые сигналы для команды kill:\n" -#: pg_ctl.c:2017 +#: pg_ctl.c:2029 #, c-format msgid "" "\n" @@ -775,30 +779,30 @@ 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" @@ -807,7 +811,7 @@ msgstr "" "\n" "Типы запуска:\n" -#: pg_ctl.c:2024 +#: pg_ctl.c:2036 #, c-format msgid "" " auto start service automatically during system startup (default)\n" @@ -815,12 +819,12 @@ 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" @@ -829,37 +833,37 @@ 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" @@ -870,32 +874,32 @@ msgstr "" "Пожалуйста, переключитесь на обычного пользователя (например,\n" "используя \"su\"), который будет запускать серверный процесс.\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" diff --git a/src/bin/pg_dump/po/de.po b/src/bin/pg_dump/po/de.po index 44e88f3b455d9..1e2c60fd23960 100644 --- a/src/bin/pg_dump/po/de.po +++ b/src/bin/pg_dump/po/de.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-08-08 06:22+0000\n" -"PO-Revision-Date: 2025-08-08 11:06+0200\n" +"POT-Creation-Date: 2025-08-25 17:22+0000\n" +"PO-Revision-Date: 2025-08-25 22:08+0200\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -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:905 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 #, c-format msgid "could not open directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht öffnen: %m" @@ -569,13 +569,13 @@ msgstr "unbehandelter Modus »%s«" msgid "Password: " msgstr "Passwort: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:918 -#: pg_dump_sort.c:1454 pg_dump_sort.c:1474 +#: 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 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:495 +#: connectdb.c:157 pg_dumpall.c:514 #, c-format msgid "could not connect to database \"%s\"" msgstr "konnte nicht mit der Datenbank »%s« verbinden" @@ -600,32 +600,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:1739 +#: connectdb.c:282 pg_dumpall.c:1784 #, c-format msgid "executing %s" msgstr "führe %s aus" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1745 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 #, c-format msgid "query failed: %s" msgstr "Anfrage fehlgeschlagen: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1746 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 #, c-format msgid "Query was: %s" msgstr "Anfrage war: %s" -#: dumputils.c:910 +#: dumputils.c:948 #, c-format msgid "could not create directory \"%s\": %m" msgstr "konnte Verzeichnis »%s« nicht erzeugen: %m" -#: dumputils.c:915 +#: dumputils.c:953 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "konnte Rechte des Verzeichnisses »%s« nicht ändern: %m" -#: dumputils.c:920 +#: dumputils.c:958 #, c-format msgid "directory \"%s\" is not empty" msgstr "Verzeichnis »%s« ist nicht leer" @@ -759,7 +759,7 @@ msgstr "pgpipe: konnte Socket nicht verbinden: Fehlercode %d" msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: konnte Verbindung nicht annehmen: Fehlercode %d" -#: pg_backup_archiver.c:269 pg_backup_archiver.c:1726 +#: pg_backup_archiver.c:269 pg_backup_archiver.c:1745 #, c-format msgid "could not close output file: %m" msgstr "konnte Ausgabedatei nicht schließen: %m" @@ -804,412 +804,412 @@ msgstr "direkte Datenbankverbindungen sind in Archiven vor Version 1.3 nicht unt msgid "implied no-schema restore" msgstr "implizit wird das Schema nicht wiederhergestellt" -#: pg_backup_archiver.c:518 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "entferne %s %s" -#: pg_backup_archiver.c:650 +#: pg_backup_archiver.c:661 #, c-format msgid "could not find where to insert IF EXISTS in statement \"%s\"" msgstr "konnte nicht bestimmen, wo IF EXISTS in die Anweisung »%s« eingefügt werden soll" -#: pg_backup_archiver.c:836 pg_backup_archiver.c:838 +#: pg_backup_archiver.c:855 pg_backup_archiver.c:857 #, c-format msgid "warning from original dump file: %s" msgstr "Warnung aus der ursprünglichen Ausgabedatei: %s" -#: pg_backup_archiver.c:872 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "erstelle %s »%s.%s«" -#: pg_backup_archiver.c:875 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "erstelle %s »%s«" -#: pg_backup_archiver.c:925 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "verbinde mit neuer Datenbank »%s«" -#: pg_backup_archiver.c:952 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "verarbeite %s" -#: pg_backup_archiver.c:974 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "verarbeite Daten für Tabelle »%s.%s«" -#: pg_backup_archiver.c:1044 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "führe %s %s aus" -#: pg_backup_archiver.c:1113 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "schalte Trigger für %s aus" -#: pg_backup_archiver.c:1139 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "schalte Trigger für %s ein" -#: pg_backup_archiver.c:1204 +#: pg_backup_archiver.c:1223 #, c-format msgid "internal error -- WriteData cannot be called outside the context of a DataDumper routine" msgstr "interner Fehler -- WriteData kann nicht außerhalb des Kontexts einer DataDumper-Routine aufgerufen werden" -#: pg_backup_archiver.c:1399 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "Large-Object-Ausgabe im gewählten Format nicht unterstützt" -#: pg_backup_archiver.c:1462 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "%d Large Object wiederhergestellt" msgstr[1] "%d Large Objects wiederhergestellt" -#: pg_backup_archiver.c:1489 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 "Wiederherstellung von Large Object mit OID %u" -#: pg_backup_archiver.c:1501 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "konnte Large Object %u nicht erstellen: %s" -#: pg_backup_archiver.c:1506 pg_dump.c:4061 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "konnte Large Object %u nicht öffnen: %s" -#: pg_backup_archiver.c:1562 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" msgstr "konnte Inhaltsverzeichnisdatei »%s« nicht öffnen: %m" -#: pg_backup_archiver.c:1590 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "Zeile ignoriert: %s" -#: pg_backup_archiver.c:1597 pg_backup_db.c:548 +#: pg_backup_archiver.c:1616 pg_backup_db.c:548 #, c-format msgid "could not find entry for ID %d" msgstr "konnte Eintrag für ID %d nicht finden" -#: pg_backup_archiver.c:1620 pg_backup_directory.c:187 +#: pg_backup_archiver.c:1639 pg_backup_directory.c:187 #: pg_backup_directory.c:586 #, c-format msgid "could not close TOC file: %m" msgstr "konnte Inhaltsverzeichnisdatei nicht schließen: %m" -#: pg_backup_archiver.c:1707 pg_backup_custom.c:151 pg_backup_directory.c:301 +#: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 #: pg_backup_directory.c:573 pg_backup_directory.c:639 -#: pg_backup_directory.c:657 pg_dumpall.c:529 +#: pg_backup_directory.c:657 pg_dumpall.c:548 #, c-format msgid "could not open output file \"%s\": %m" msgstr "konnte Ausgabedatei »%s« nicht öffnen: %m" -#: pg_backup_archiver.c:1709 pg_backup_custom.c:157 +#: pg_backup_archiver.c:1728 pg_backup_custom.c:157 #, c-format msgid "could not open output file: %m" msgstr "konnte Ausgabedatei nicht öffnen: %m" -#: pg_backup_archiver.c:1792 +#: 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)" msgstr[0] "%zu Byte Large-Object-Daten geschrieben (Ergebnis = %d)" msgstr[1] "%zu Bytes Large-Object-Daten geschrieben (Ergebnis = %d)" -#: pg_backup_archiver.c:1798 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "konnte Large Object nicht schreiben: %s" -#: pg_backup_archiver.c:1888 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" msgstr "in Phase INITIALIZING:" -#: pg_backup_archiver.c:1893 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" msgstr "in Phase PROCESSING TOC:" -#: pg_backup_archiver.c:1898 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" msgstr "in Phase FINALIZING:" -#: pg_backup_archiver.c:1903 +#: pg_backup_archiver.c:1922 #, c-format msgid "from TOC entry %d; %u %u %s %s %s" msgstr "in Inhaltsverzeichniseintrag %d; %u %u %s %s %s" -#: pg_backup_archiver.c:1979 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "ungültige DumpId" -#: pg_backup_archiver.c:2000 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "ungültige Tabellen-DumpId für »TABLE DATA«-Eintrag" -#: pg_backup_archiver.c:2092 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "unerwartete Datenoffsetmarkierung %d" -#: pg_backup_archiver.c:2105 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "Dateioffset in Dumpdatei ist zu groß" -#: pg_backup_archiver.c:2216 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "Verzeichnisname zu lang: »%s«" -#: pg_backup_archiver.c:2266 +#: pg_backup_archiver.c:2285 #, c-format msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does not exist)" msgstr "Verzeichnis »%s« scheint kein gültiges Archiv zu sein (»toc.dat« existiert nicht)" -#: pg_backup_archiver.c:2274 pg_backup_custom.c:168 pg_backup_custom.c:813 +#: pg_backup_archiver.c:2293 pg_backup_custom.c:168 pg_backup_custom.c:813 #: pg_backup_directory.c:172 pg_backup_directory.c:364 #, c-format msgid "could not open input file \"%s\": %m" msgstr "konnte Eingabedatei »%s« nicht öffnen: %m" -#: pg_backup_archiver.c:2281 pg_backup_custom.c:174 +#: pg_backup_archiver.c:2300 pg_backup_custom.c:174 #, c-format msgid "could not open input file: %m" msgstr "konnte Eingabedatei nicht öffnen: %m" -#: pg_backup_archiver.c:2287 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "konnte Eingabedatei nicht lesen: %m" -#: pg_backup_archiver.c:2289 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "Eingabedatei ist zu kurz (gelesen: %lu, erwartet: 5)" -#: pg_backup_archiver.c:2321 +#: pg_backup_archiver.c:2340 #, c-format msgid "input file appears to be a text format dump. Please use psql." msgstr "Eingabedatei ist anscheinend ein Dump im Textformat. Bitte verwenden Sie psql." -#: pg_backup_archiver.c:2327 +#: pg_backup_archiver.c:2346 #, c-format msgid "input file does not appear to be a valid archive (too short?)" msgstr "Eingabedatei scheint kein gültiges Archiv zu sein (zu kurz?)" -#: pg_backup_archiver.c:2333 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "Eingabedatei scheint kein gültiges Archiv zu sein" -#: pg_backup_archiver.c:2342 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "konnte Eingabedatei nicht schließen: %m" -#: pg_backup_archiver.c:2421 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "konnte Standardausgabe nicht zum Anhängen öffnen: %m" -#: pg_backup_archiver.c:2466 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "nicht erkanntes Dateiformat »%d«" -#: pg_backup_archiver.c:2547 pg_backup_archiver.c:4768 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4761 #, c-format msgid "finished item %d %s %s" msgstr "Element %d %s %s abgeschlossen" -#: pg_backup_archiver.c:2551 pg_backup_archiver.c:4781 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4774 #, c-format msgid "worker process failed: exit code %d" msgstr "Arbeitsprozess fehlgeschlagen: Code %d" -#: pg_backup_archiver.c:2649 +#: pg_backup_archiver.c:2668 #, c-format msgid "unexpected TOC entry in WriteToc(): %d %s %s" msgstr "unerwarteter TOC-Eintrag in WriteToc(): %d %s %s" -#: pg_backup_archiver.c:2653 pg_backup_custom.c:440 pg_backup_custom.c:506 +#: 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 "Fehler beim Suchen in Datei: %m" -#: pg_backup_archiver.c:2711 +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "ID %d des Eintrags außerhalb des gültigen Bereichs -- vielleicht ein verfälschtes Inhaltsverzeichnis" -#: pg_backup_archiver.c:2794 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "Wiederherstellung von Tabellen mit WITH OIDS wird nicht mehr unterstützt" -#: pg_backup_archiver.c:2876 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "nicht erkannte Kodierung »%s«" -#: pg_backup_archiver.c:2882 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" msgstr "ungültiger ENCODING-Eintrag: %s" -#: pg_backup_archiver.c:2900 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" msgstr "ungültiger STDSTRINGS-Eintrag: %s" -#: pg_backup_archiver.c:2925 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "Schema »%s« nicht gefunden" -#: pg_backup_archiver.c:2932 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "Tabelle »%s« nicht gefunden" -#: pg_backup_archiver.c:2939 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "Index »%s« nicht gefunden" -#: pg_backup_archiver.c:2946 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "Funktion »%s« nicht gefunden" -#: pg_backup_archiver.c:2953 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "Trigger »%s« nicht gefunden" -#: pg_backup_archiver.c:3414 +#: pg_backup_archiver.c:3433 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "konnte Sitzungsbenutzer nicht auf »%s« setzen: %s" -#: pg_backup_archiver.c:3546 +#: pg_backup_archiver.c:3575 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "konnte »search_path« nicht auf »%s« setzen: %s" -#: pg_backup_archiver.c:3607 +#: pg_backup_archiver.c:3636 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "konnte »default_tablespace« nicht auf »%s« setzen: %s" -#: pg_backup_archiver.c:3656 +#: pg_backup_archiver.c:3685 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "konnte »default_table_access_method« nicht setzen: %s" -#: pg_backup_archiver.c:3705 +#: pg_backup_archiver.c:3734 #, c-format msgid "could not alter table access method: %s" msgstr "konnte Tabellenzugriffsmethode nicht ändern: %s" -#: pg_backup_archiver.c:3806 +#: pg_backup_archiver.c:3835 #, 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:3941 +#: pg_backup_archiver.c:3970 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "unerwarteter TOC-Eintrag in _printTocEntry(): %d %s %s" -#: pg_backup_archiver.c:4125 +#: pg_backup_archiver.c:4118 #, c-format msgid "did not find magic string in file header" msgstr "magische Zeichenkette im Dateikopf nicht gefunden" -#: pg_backup_archiver.c:4139 +#: pg_backup_archiver.c:4132 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "nicht unterstützte Version (%d.%d) im Dateikopf" -#: pg_backup_archiver.c:4144 +#: pg_backup_archiver.c:4137 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "Prüfung der Integer-Größe (%lu) fehlgeschlagen" -#: pg_backup_archiver.c:4148 +#: pg_backup_archiver.c:4141 #, 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:4158 +#: pg_backup_archiver.c:4151 #, 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:4180 +#: pg_backup_archiver.c:4173 #, 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:4216 +#: pg_backup_archiver.c:4209 #, c-format msgid "invalid creation date in header" msgstr "ungültiges Erstellungsdatum im Kopf" -#: pg_backup_archiver.c:4350 +#: pg_backup_archiver.c:4343 #, c-format msgid "processing item %d %s %s" msgstr "verarbeite Element %d %s %s" -#: pg_backup_archiver.c:4435 +#: pg_backup_archiver.c:4428 #, c-format msgid "entering main parallel loop" msgstr "Eintritt in Hauptparallelschleife" -#: pg_backup_archiver.c:4446 +#: pg_backup_archiver.c:4439 #, c-format msgid "skipping item %d %s %s" msgstr "Element %d %s %s wird übersprungen" -#: pg_backup_archiver.c:4455 +#: pg_backup_archiver.c:4448 #, c-format msgid "launching item %d %s %s" msgstr "starte Element %d %s %s" -#: pg_backup_archiver.c:4509 +#: pg_backup_archiver.c:4502 #, c-format msgid "finished main parallel loop" msgstr "Hauptparallelschleife beendet" -#: pg_backup_archiver.c:4545 +#: pg_backup_archiver.c:4538 #, c-format msgid "processing missed item %d %s %s" msgstr "verarbeite verpasstes Element %d %s %s" -#: pg_backup_archiver.c:5087 +#: pg_backup_archiver.c:5080 #, 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" @@ -1326,7 +1326,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:2437 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "unerwartete zusätzliche Ergebnisse während COPY von Tabelle »%s«" @@ -1488,10 +1488,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:794 pg_dump.c:811 pg_dumpall.c:376 -#: pg_dumpall.c:386 pg_dumpall.c:394 pg_dumpall.c:402 pg_dumpall.c:409 -#: pg_dumpall.c:419 pg_dumpall.c:511 pg_restore.c:320 pg_restore.c:336 -#: pg_restore.c:350 +#: 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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Versuchen Sie »%s --help« für weitere Informationen." @@ -1501,117 +1501,132 @@ 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:809 pg_dumpall.c:384 pg_restore.c:334 +#: pg_dump.c:814 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:821 pg_restore.c:358 +#: 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:823 pg_restore.c:360 +#: 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:825 pg_restore.c:362 +#: 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:829 pg_restore.c:366 +#: 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:831 pg_restore.c:368 +#: 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:833 pg_restore.c:370 +#: 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:837 pg_restore.c:374 +#: 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:841 pg_dump.c:844 pg_restore.c:378 pg_restore.c:381 +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 #, 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:848 +#: 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:851 +#: pg_dump.c:856 #, 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" -#: pg_dump.c:854 pg_restore.c:385 +#: pg_dump.c:859 pg_restore.c:407 #, 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" -#: pg_dump.c:857 pg_dumpall.c:414 pg_restore.c:426 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "Option --if-exists benötigt Option -c/--clean" -#: pg_dump.c:877 +#: 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:906 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, 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 +#, c-format +msgid "invalid restrict key" +msgstr "ungültiger Restrict-Schlüssel" + +#: pg_dump.c:903 +#, c-format +msgid "option --restrict-key can only be used with --format=plain" +msgstr "Option --restrict-key kann nur mit --format=plain verwendet werden" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "unbekannter Komprimierungsalgorithmus: »%s«" -#: pg_dump.c:913 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "ungültige Komprimierungsangabe: %s" -#: pg_dump.c:926 +#: pg_dump.c:945 #, 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:938 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "parallele Sicherung wird nur vom Ausgabeformat »Verzeichnis« unterstützt" -#: pg_dump.c:984 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "letzte eingebaute OID ist %u" -#: pg_dump.c:993 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "keine passenden Schemas gefunden" -#: pg_dump.c:1010 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "keine passenden Tabellen gefunden" -#: pg_dump.c:1038 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "keine passenden Erweiterungen gefunden" -#: pg_dump.c:1231 +#: pg_dump.c:1251 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1620,17 +1635,17 @@ msgstr "" "%s exportiert eine PostgreSQL-Datenbank als SQL-Skript oder in anderen Formaten.\n" "\n" -#: pg_dump.c:1232 pg_dumpall.c:659 pg_restore.c:501 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "Aufruf:\n" -#: pg_dump.c:1233 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [DBNAME]\n" -#: pg_dump.c:1235 pg_dumpall.c:662 pg_restore.c:504 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1639,12 +1654,12 @@ msgstr "" "\n" "Allgemeine Optionen:\n" -#: pg_dump.c:1236 +#: pg_dump.c:1256 #, 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:1237 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1653,22 +1668,22 @@ msgstr "" " -F, --format=c|d|t|p Ausgabeformat (custom, d=Verzeichnis, tar,\n" " plain text)\n" -#: pg_dump.c:1239 +#: pg_dump.c:1259 #, 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:1240 pg_dumpall.c:664 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose »Verbose«-Modus\n" -#: pg_dump.c:1241 pg_dumpall.c:665 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version Versionsinformationen anzeigen, dann beenden\n" -#: pg_dump.c:1242 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1677,31 +1692,31 @@ msgstr "" " -Z, --compress=METHODE[:DETAIL]\n" " wie angegeben komprimieren\n" -#: pg_dump.c:1244 pg_dumpall.c:666 +#: pg_dump.c:1264 pg_dumpall.c:701 #, 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:1245 pg_dumpall.c:698 +#: pg_dump.c:1265 pg_dumpall.c:733 #, 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:1246 +#: pg_dump.c:1266 #, 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:1247 pg_dumpall.c:667 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help diese Hilfe anzeigen, dann beenden\n" -#: pg_dump.c:1249 pg_dumpall.c:668 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1710,64 +1725,64 @@ msgstr "" "\n" "Optionen die den Inhalt der Ausgabe kontrollieren:\n" -#: pg_dump.c:1250 pg_dumpall.c:669 +#: pg_dump.c:1270 pg_dumpall.c:704 #, 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:1251 +#: pg_dump.c:1271 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects Large Objects mit ausgeben\n" -#: pg_dump.c:1252 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (gleich --large-objects, veraltet)\n" -#: pg_dump.c:1253 +#: pg_dump.c:1273 #, 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:1254 +#: pg_dump.c:1274 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (gleich --no-large-objects, veraltet)\n" -#: pg_dump.c:1255 pg_restore.c:515 +#: pg_dump.c:1275 pg_restore.c:537 #, 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:1256 +#: pg_dump.c:1276 #, 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:1257 +#: pg_dump.c:1277 #, 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:1258 pg_dumpall.c:671 +#: pg_dump.c:1278 pg_dumpall.c:706 #, 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:1259 +#: pg_dump.c:1279 #, 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:1260 +#: pg_dump.c:1280 #, 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:1261 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1776,58 +1791,58 @@ msgstr "" " -O, --no-owner Wiederherstellung der Objekteigentümerschaft im\n" " »plain text«-Format auslassen\n" -#: pg_dump.c:1263 pg_dumpall.c:675 +#: pg_dump.c:1283 pg_dumpall.c:710 #, 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:1264 +#: pg_dump.c:1284 #, 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:1265 +#: pg_dump.c:1285 #, 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:1266 +#: pg_dump.c:1286 #, 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:1267 pg_dumpall.c:678 +#: pg_dump.c:1287 pg_dumpall.c:713 #, 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:1268 pg_dumpall.c:679 +#: pg_dump.c:1288 pg_dumpall.c:714 #, 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:1269 pg_dumpall.c:680 +#: pg_dump.c:1289 pg_dumpall.c:715 #, 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:1270 pg_dumpall.c:681 +#: pg_dump.c:1290 pg_dumpall.c:716 #, 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:1271 pg_dumpall.c:682 pg_restore.c:532 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, 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:1272 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1836,12 +1851,12 @@ msgstr "" " --enable-row-security Sicherheit auf Zeilenebene einschalten (nur Daten\n" " ausgeben, auf die der Benutzer Zugriff hat)\n" -#: pg_dump.c:1274 +#: pg_dump.c:1294 #, 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:1275 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1852,12 +1867,12 @@ msgstr "" " die angegebene(n) Tabelle(n) NICHT ausgeben,\n" " einschließlich abgeleiteter und Partitionstabellen\n" -#: pg_dump.c:1278 +#: pg_dump.c:1298 #, 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:1279 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1868,12 +1883,12 @@ msgstr "" " Daten der angegebenen Tabelle(n) NICHT ausgeben,\n" " einschließlich abgeleiteter und Partitionstabellen\n" -#: pg_dump.c:1282 pg_dumpall.c:684 +#: pg_dump.c:1302 pg_dumpall.c:719 #, 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:1283 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1882,12 +1897,12 @@ msgstr "" " --filter=DATEINAME Objekte und Daten basierend auf Ausdrücken in DATEINAME\n" " mit sichern oder überspringen\n" -#: pg_dump.c:1285 pg_dumpall.c:686 pg_restore.c:536 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, 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:1286 +#: pg_dump.c:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1898,126 +1913,133 @@ msgstr "" " Daten von Fremdtabellen auf Fremdservern, die\n" " mit MUSTER übereinstimmen, mit sichern\n" -#: pg_dump.c:1289 pg_dumpall.c:687 +#: pg_dump.c:1309 pg_dumpall.c:722 #, 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:1290 pg_dumpall.c:688 +#: pg_dump.c:1310 pg_dumpall.c:723 #, 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:1291 pg_dumpall.c:689 +#: pg_dump.c:1311 pg_dumpall.c:724 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments Kommentar-Befehle nicht ausgeben\n" -#: pg_dump.c:1292 pg_dumpall.c:690 +#: pg_dump.c:1312 pg_dumpall.c:725 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data Daten nicht ausgeben\n" -#: pg_dump.c:1293 pg_dumpall.c:691 +#: pg_dump.c:1313 pg_dumpall.c:726 #, 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:1294 pg_dumpall.c:692 +#: pg_dump.c:1314 pg_dumpall.c:727 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications Publikationen nicht ausgeben\n" -#: pg_dump.c:1295 pg_dumpall.c:694 +#: pg_dump.c:1315 pg_dumpall.c:729 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema Schema nicht ausgeben\n" -#: pg_dump.c:1296 pg_dumpall.c:695 +#: pg_dump.c:1316 pg_dumpall.c:730 #, 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:1297 pg_dumpall.c:696 +#: pg_dump.c:1317 pg_dumpall.c:731 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics Statistiken nicht ausgeben\n" -#: pg_dump.c:1298 pg_dumpall.c:697 +#: pg_dump.c:1318 pg_dumpall.c:732 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions Subskriptionen nicht ausgeben\n" -#: pg_dump.c:1299 pg_dumpall.c:699 +#: pg_dump.c:1319 pg_dumpall.c:734 #, 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:1300 pg_dumpall.c:700 +#: pg_dump.c:1320 pg_dumpall.c:735 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces Tablespace-Zuordnungen nicht ausgeben\n" -#: pg_dump.c:1301 pg_dumpall.c:701 +#: pg_dump.c:1321 pg_dumpall.c:736 #, 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:1302 pg_dumpall.c:702 +#: pg_dump.c:1322 pg_dumpall.c:737 #, 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:1303 pg_dumpall.c:703 +#: pg_dump.c:1323 pg_dumpall.c:738 #, 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:1304 pg_dumpall.c:704 +#: pg_dump.c:1324 pg_dumpall.c:739 #, 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:1305 pg_dumpall.c:705 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, 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 #, 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:1306 +#: pg_dump.c:1327 #, 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:1307 pg_dumpall.c:706 +#: pg_dump.c:1328 pg_dumpall.c:742 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data Sequenzdaten in Ausgabe einfügen\n" -#: pg_dump.c:1308 +#: pg_dump.c:1329 #, 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:1309 +#: pg_dump.c:1330 #, 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:1310 pg_dumpall.c:707 +#: pg_dump.c:1331 pg_dumpall.c:743 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics die Statistiken ausgeben\n" -#: pg_dump.c:1311 pg_dumpall.c:708 +#: pg_dump.c:1332 pg_dumpall.c:744 #, 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:1312 pg_restore.c:552 +#: pg_dump.c:1333 pg_restore.c:575 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2026,7 +2048,7 @@ msgstr "" " --strict-names Tabellen- oder Schemamuster müssen auf mindestens\n" " je ein Objekt passen\n" -#: pg_dump.c:1314 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2035,7 +2057,7 @@ msgstr "" " --table-and-children=MUSTER nur die angegebene(n) Tabelle(n) ausgeben,\n" " einschließlich abgeleiteter und Partitionstabellen\n" -#: pg_dump.c:1316 pg_dumpall.c:709 pg_restore.c:555 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2047,7 +2069,7 @@ msgstr "" " OWNER Befehle verwenden, um Eigentümerschaft zu\n" " setzen\n" -#: pg_dump.c:1320 pg_dumpall.c:713 pg_restore.c:559 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2056,42 +2078,42 @@ msgstr "" "\n" "Verbindungsoptionen:\n" -#: pg_dump.c:1321 +#: pg_dump.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAME auszugebende Datenbank\n" -#: pg_dump.c:1322 pg_dumpall.c:715 pg_restore.c:560 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, 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:1323 pg_dumpall.c:717 pg_restore.c:561 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT Portnummer des Datenbankservers\n" -#: pg_dump.c:1324 pg_dumpall.c:718 pg_restore.c:562 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAME Datenbankbenutzername\n" -#: pg_dump.c:1325 pg_dumpall.c:719 pg_restore.c:563 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password niemals nach Passwort fragen\n" -#: pg_dump.c:1326 pg_dumpall.c:720 pg_restore.c:564 +#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 #, 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:1327 pg_dumpall.c:721 +#: pg_dump.c:1348 pg_dumpall.c:757 #, 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:1329 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2104,562 +2126,562 @@ msgstr "" "PGDATABASE verwendet.\n" "\n" -#: pg_dump.c:1331 pg_dumpall.c:725 pg_restore.c:571 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Berichten Sie Fehler an <%s>.\n" -#: pg_dump.c:1332 pg_dumpall.c:726 pg_restore.c:572 +#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "%s Homepage: <%s>\n" -#: pg_dump.c:1351 pg_dumpall.c:541 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "ungültige Clientkodierung »%s« angegeben" -#: pg_dump.c:1499 +#: pg_dump.c:1520 #, 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:1564 +#: pg_dump.c:1585 #, c-format msgid "invalid output format \"%s\" specified" msgstr "ungültiges Ausgabeformat »%s« angegeben" -#: pg_dump.c:1605 pg_dump.c:1661 pg_dump.c:1714 pg_dumpall.c:1546 +#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "falscher qualifizierter Name (zu viele Namensteile): %s" -#: pg_dump.c:1613 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "keine passenden Schemas für Muster »%s« gefunden" -#: pg_dump.c:1666 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "keine passenden Erweiterungen für Muster »%s« gefunden" -#: pg_dump.c:1719 +#: pg_dump.c:1740 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "keine passenden Fremdserver für Muster »%s« gefunden" -#: pg_dump.c:1790 +#: pg_dump.c:1811 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "falscher Relationsname (zu viele Namensteile): %s" -#: pg_dump.c:1812 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "keine passenden Tabellen für Muster »%s« gefunden" -#: pg_dump.c:1839 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "Sie sind gegenwärtig nicht mit einer Datenbank verbunden." -#: pg_dump.c:1842 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "Verweise auf andere Datenbanken sind nicht implementiert: %s" -#: pg_dump.c:2308 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "gebe Inhalt der Tabelle »%s.%s« aus" -#: pg_dump.c:2418 +#: pg_dump.c:2439 #, 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:2419 pg_dump.c:2429 +#: pg_dump.c:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "Fehlermeldung vom Server: %s" -#: pg_dump.c:2420 pg_dump.c:2430 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "Die Anweisung war: %s" -#: pg_dump.c:2428 +#: pg_dump.c:2449 #, 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:2519 +#: pg_dump.c:2540 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "falsche Anzahl Felder von Tabelle »%s« erhalten" -#: pg_dump.c:3234 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "sichere Datenbankdefinition" -#: pg_dump.c:3349 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "unbekannter Locale-Provider: %s" -#: pg_dump.c:3710 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "sichere Kodierung = %s" -#: pg_dump.c:3735 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "sichere »standard_conforming_strings = %s«" -#: pg_dump.c:3774 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "konnte Ergebnis von current_schemas() nicht interpretieren" -#: pg_dump.c:3793 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "sichere »search_path = %s«" -#: pg_dump.c:3829 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "lese Large Objects" -#: pg_dump.c:4050 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "sichere Large Objects »%s«" -#: pg_dump.c:4071 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "Fehler beim Lesen von Large Object %u: %s" -#: pg_dump.c:4179 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "lese Policys für Sicherheit auf Zeilenebene" -#: pg_dump.c:4320 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "unerwarteter Policy-Befehlstyp: %c" -#: pg_dump.c:4762 pg_dump.c:5319 pg_dump.c:7948 pg_dump.c:13426 pg_dump.c:19619 -#: pg_dump.c:19621 pg_dump.c:20253 +#: 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 #, c-format msgid "could not parse %s array" msgstr "konnte %s-Array nicht interpretieren" -#: pg_dump.c:4978 +#: pg_dump.c:5002 #, 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:5182 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "Subskription mit OID %u existiert nicht" -#: pg_dump.c:5189 +#: pg_dump.c:5213 #, 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:5775 +#: pg_dump.c:5799 #, 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:5913 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "Schema mit OID %u existiert nicht" -#: pg_dump.c:6970 +#: pg_dump.c:6994 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "für Relationstyp »%c« können keine Statistiken ausgegeben werden" -#: pg_dump.c:7482 pg_dump.c:18963 +#: pg_dump.c:7506 pg_dump.c:18987 #, 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:7627 +#: pg_dump.c:7651 #, 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:7892 pg_dump.c:8185 pg_dump.c:8648 pg_dump.c:9293 pg_dump.c:9432 -#: pg_dump.c:9577 pg_dump.c:9677 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "unbekannte Tabellen-OID %u" -#: pg_dump.c:7896 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "unerwartete Indexdaten für Tabelle »%s«" -#: pg_dump.c:8435 +#: pg_dump.c:8459 #, 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:9297 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "unerwartete Spaltendaten für Tabelle »%s«" -#: pg_dump.c:9329 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "ungültige Spaltennummerierung in Tabelle »%s«" -#: pg_dump.c:9394 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "finde Tabellenvorgabeausdrücke" -#: pg_dump.c:9436 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "ungültiger adnum-Wert %d für Tabelle »%s«" -#: pg_dump.c:9529 +#: pg_dump.c:9553 #, c-format msgid "finding invalid not-null constraints" msgstr "finde ungültige Not-Null-Constraints" -#: pg_dump.c:9627 +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "finde Tabellen-Check-Constraints" -#: pg_dump.c:9681 +#: pg_dump.c:9705 #, 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:9685 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "Die Systemkataloge sind wahrscheinlich verfälscht." -#: pg_dump.c:10490 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "Rolle mit OID %u existiert nicht" -#: pg_dump.c:10602 pg_dump.c:10631 +#: pg_dump.c:10626 pg_dump.c:10655 #, 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:10927 +#: pg_dump.c:10951 #, 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:11068 +#: pg_dump.c:11092 #, c-format msgid "unexpected null attname" msgstr "unerwarteter atttname mit NULL-Wert" -#: pg_dump.c:11097 +#: pg_dump.c:11121 #, c-format msgid "could not find index attname \"%s\"" msgstr "konnte Index-Attname »%s« nicht finden" -#: pg_dump.c:11583 +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "fehlende Metadaten für Large Objects »%s«" -#: pg_dump.c:11869 +#: pg_dump.c:11893 #, 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:13497 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "ungültiger provolatile-Wert für Funktion »%s«" -#: pg_dump.c:13547 pg_dump.c:15443 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "ungültiger proparallel-Wert für Funktion »%s«" -#: pg_dump.c:13677 pg_dump.c:13783 pg_dump.c:13790 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, 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:13716 +#: pg_dump.c:13740 #, 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:13719 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "unsinniger Wert in Feld pg_cast.castmethod" -#: pg_dump.c:13809 +#: pg_dump.c:13833 #, 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:13826 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "unsinniger Wert in Feld pg_transform.trffromsql" -#: pg_dump.c:13847 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "unsinniger Wert in Feld pg_transform.trftosql" -#: pg_dump.c:13992 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "Postfix-Operatoren werden nicht mehr unterstützt (Operator »%s«)" -#: pg_dump.c:14162 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "konnte Operator mit OID %s nicht finden" -#: pg_dump.c:14230 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "ungültiger Typ »%c« für Zugriffsmethode »%s«" -#: pg_dump.c:14904 pg_dump.c:14972 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "unbekannter Sortierfolgen-Provider: %s" -#: pg_dump.c:14913 pg_dump.c:14920 pg_dump.c:14931 pg_dump.c:14941 -#: pg_dump.c:14956 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "ungültige Sortierfolge »%s«" -#: pg_dump.c:15362 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "unbekannter aggfinalmodify-Wert für Aggregat »%s«" -#: pg_dump.c:15418 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "unbekannter aggmfinalmodify-Wert für Aggregat »%s«" -#: pg_dump.c:16138 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "unbekannter Objekttyp in den Vorgabeprivilegien: %d" -#: pg_dump.c:16154 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "konnte Vorgabe-ACL-Liste (%s) nicht interpretieren" -#: pg_dump.c:16238 +#: pg_dump.c:16262 #, 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:16263 +#: pg_dump.c:16287 #, 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:16806 +#: pg_dump.c:16830 #, 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:16809 +#: pg_dump.c:16833 #, 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:16816 +#: pg_dump.c:16840 #, 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:16901 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS wird nicht mehr unterstützt (Tabelle »%s«)" -#: pg_dump.c:18041 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "ungültige Spaltennummer %d in Tabelle »%s«" -#: pg_dump.c:18119 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "konnte Indexstatistikspalten nicht interpretieren" -#: pg_dump.c:18121 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "konnte Indexstatistikwerte nicht interpretieren" -#: pg_dump.c:18123 +#: pg_dump.c:18147 #, 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:18352 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "fehlender Index für Constraint »%s«" -#: pg_dump.c:18621 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "unbekannter Constraint-Typ: %c" -#: pg_dump.c:18674 +#: pg_dump.c:18698 #, c-format msgid "unrecognized sequence type: %s" msgstr "unbekannter Sequenztyp: %s" -#: pg_dump.c:18806 pg_dump.c:19038 +#: pg_dump.c:18830 pg_dump.c:19062 #, 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:18842 +#: pg_dump.c:18866 #, c-format msgid "unrecognized sequence type: %d" msgstr "unbekannter Sequenztyp: %d" -#: pg_dump.c:19371 +#: pg_dump.c:19395 #, 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:19524 +#: pg_dump.c:19548 #, c-format msgid "could not find referenced extension %u" msgstr "konnte referenzierte Erweiterung %u nicht finden" -#: pg_dump.c:19623 +#: pg_dump.c:19647 #, 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:19755 +#: pg_dump.c:19779 #, c-format msgid "reading dependency data" msgstr "lese Abhängigkeitsdaten" -#: pg_dump.c:19841 +#: pg_dump.c:19865 #, c-format msgid "no referencing object %u %u" msgstr "kein referenzierendes Objekt %u %u" -#: pg_dump.c:19852 +#: pg_dump.c:19876 #, c-format msgid "no referenced object %u %u" msgstr "kein referenziertes Objekt %u %u" -#: pg_dump.c:20287 pg_dump.c:20325 pg_dumpall.c:1791 pg_restore.c:606 -#: pg_restore.c:652 +#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "%s-Filter für »%s« ist nicht erlaubt" -#: pg_dump_sort.c:636 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "ungültige dumpId %d" -#: pg_dump_sort.c:642 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "ungültige Abhängigkeit %d" -#: pg_dump_sort.c:806 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "konnte Abhängigkeitsschleife nicht bestimmen" -#: pg_dump_sort.c:1450 +#: pg_dump_sort.c:1462 #, 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:1455 +#: pg_dump_sort.c:1467 #, 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:1456 +#: pg_dump_sort.c:1468 #, 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:1468 +#: pg_dump_sort.c:1480 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "konnte Abhängigkeitsschleife zwischen diesen Elementen nicht auflösen:" -#: pg_dumpall.c:237 +#: pg_dumpall.c:240 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "Programm »%s« wird von %s benötigt, aber wurde nicht im selben Verzeichnis wie »%s« gefunden" -#: pg_dumpall.c:240 +#: pg_dumpall.c:243 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "Programm »%s« wurde von »%s« gefunden, aber es hatte nicht die gleiche Version wie %s" -#: pg_dumpall.c:393 +#: 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:401 +#: 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:408 +#: 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:418 +#: 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" -#: pg_dumpall.c:509 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2668,89 +2690,91 @@ msgstr "" "konnte nicht mit Datenbank »postgres« oder »template1« verbinden\n" "Bitte geben Sie eine alternative Datenbank an." -#: pg_dumpall.c:658 +#: pg_dumpall.c:693 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" -msgstr "%s exportiert einen PostgreSQL-Datenbankcluster als SQL-Skript.\n\n" +msgstr "" +"%s exportiert einen PostgreSQL-Datenbankcluster als SQL-Skript.\n" +"\n" -#: pg_dumpall.c:660 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPTION]...\n" -#: pg_dumpall.c:663 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=DATEINAME Name der Ausgabedatei\n" -#: pg_dumpall.c:670 +#: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean Datenbanken vor der Wiedererstellung löschen\n" -#: pg_dumpall.c:672 +#: pg_dumpall.c:707 #, 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:673 pg_restore.c:524 +#: pg_dumpall.c:708 pg_restore.c:546 #, 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:674 +#: pg_dumpall.c:709 #, 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:676 +#: pg_dumpall.c:711 #, 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:677 +#: pg_dumpall.c:712 #, 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:683 +#: pg_dumpall.c:718 #, 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:685 +#: pg_dumpall.c:720 #, 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:693 +#: pg_dumpall.c:728 #, 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:714 +#: pg_dumpall.c:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=VERBDG mit angegebenen Verbindungsparametern verbinden\n" -#: pg_dumpall.c:716 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAME alternative Standarddatenbank\n" -#: pg_dumpall.c:723 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2763,149 +2787,156 @@ msgstr "" "Standardausgabe geschrieben.\n" "\n" -#: pg_dumpall.c:868 +#: pg_dumpall.c:904 #, 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:1085 pg_dumpall.c:1143 pg_dumpall.c:1152 +#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 #, 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:1118 +#: pg_dumpall.c:1154 #, 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:1273 +#: pg_dumpall.c:1309 #, 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:1400 +#: pg_dumpall.c:1436 #, 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:1607 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "Datenbank »%s« übersprungen" -#: pg_dumpall.c:1611 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "Ausgabe der Datenbank »%s«" -#: pg_dumpall.c:1642 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump für Datenbank »%s« fehlgeschlagen; beende" -#: pg_dumpall.c:1648 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "konnte die Ausgabedatei »%s« nicht neu öffnen: %m" -#: pg_dumpall.c:1692 +#: pg_dumpall.c:1737 #, c-format msgid "running \"%s\"" msgstr "führe »%s« aus" -#: pg_dumpall.c:1811 +#: pg_dumpall.c:1856 msgid "unsupported filter object" msgstr "nicht unterstütztes Filterobjekt" -#: pg_restore.c:342 +#: pg_restore.c:348 #, c-format msgid "one of -d/--dbname and -f/--file must be specified" msgstr "entweder -d/--dbname oder -f/--file muss angegeben werden" -#: pg_restore.c:349 +#: 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:388 +#: 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:395 +#: 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:399 +#: pg_restore.c:421 #, 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:445 +#: pg_restore.c:467 #, 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:449 +#: pg_restore.c:471 #, 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:487 +#: pg_restore.c:509 #, c-format msgid "errors ignored on restore: %d" msgstr "bei Wiederherstellung ignorierte Fehler: %d" -#: pg_restore.c:500 +#: pg_restore.c:522 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" "\n" -msgstr "%s stellt eine PostgreSQL-Datenbank wieder her, die mit pg_dump gesichert wurde.\n\n" +msgstr "" +"%s stellt eine PostgreSQL-Datenbank wieder her, die mit pg_dump gesichert wurde.\n" +"\n" -#: pg_restore.c:502 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPTION]... [DATEI]\n" -#: pg_restore.c:505 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAME mit angegebener Datenbank verbinden\n" -#: pg_restore.c:506 +#: pg_restore.c:528 #, 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:507 +#: pg_restore.c:529 #, 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:508 +#: pg_restore.c:530 #, 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:509 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose »Verbose«-Modus\n" -#: pg_restore.c:510 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version Versionsinformationen anzeigen, dann beenden\n" -#: pg_restore.c:511 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help diese Hilfe anzeigen, dann beenden\n" -#: pg_restore.c:513 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -2914,34 +2945,34 @@ msgstr "" "\n" "Optionen die die Wiederherstellung kontrollieren:\n" -#: pg_restore.c:514 +#: pg_restore.c:536 #, 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:516 +#: pg_restore.c:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create Zieldatenbank erzeugen\n" -#: pg_restore.c:517 +#: pg_restore.c:539 #, 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:518 +#: pg_restore.c:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME benannten Index wiederherstellen\n" -#: pg_restore.c:519 +#: pg_restore.c:541 #, 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:520 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2950,59 +2981,59 @@ msgstr "" " -L, --use-list=DATEINAME Inhaltsverzeichnis aus dieser Datei zur Auswahl oder\n" " Sortierung der Ausgabe verwenden\n" -#: pg_restore.c:522 +#: pg_restore.c:544 #, 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:523 +#: pg_restore.c:545 #, 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:525 +#: pg_restore.c:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAME(args) benannte Funktion wiederherstellen\n" -#: pg_restore.c:526 +#: pg_restore.c:548 #, 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:527 +#: pg_restore.c:549 #, 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:528 +#: pg_restore.c:550 #, 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:529 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME benannten Trigger wiederherstellen\n" -#: pg_restore.c:530 +#: pg_restore.c:552 #, 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:531 +#: pg_restore.c:553 #, 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:533 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security Sicherheit auf Zeilenebene einschalten\n" -#: pg_restore.c:534 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3011,17 +3042,17 @@ msgstr "" " --filter=DATEINAME Objekte basierend auf Ausdrücken in DATEINAME\n" " wiederherstellen oder überspringen\n" -#: pg_restore.c:537 +#: pg_restore.c:559 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments Kommentar-Befehle nicht wiederherstellen\n" -#: pg_restore.c:538 +#: pg_restore.c:560 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data Daten nicht wiederherstellen\n" -#: pg_restore.c:539 +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3030,76 +3061,76 @@ msgstr "" " --no-data-for-failed-tables Daten für Tabellen, die nicht erzeugt werden\n" " konnten, nicht wiederherstellen\n" -#: pg_restore.c:541 +#: pg_restore.c:563 #, 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:542 +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications Publikationen nicht wiederherstellen\n" -#: pg_restore.c:543 +#: pg_restore.c:565 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema Schema nicht wiederherstellen\n" -#: pg_restore.c:544 +#: pg_restore.c:566 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels Security-Labels nicht wiederherstellen\n" -#: pg_restore.c:545 +#: pg_restore.c:567 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics Statistiken nicht wiederherstellen\n" -#: pg_restore.c:546 +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions Subskriptionen nicht wiederherstellen\n" -#: pg_restore.c:547 +#: pg_restore.c:569 #, 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:548 +#: pg_restore.c:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces Tablespace-Zuordnungen nicht wiederherstellen\n" -#: pg_restore.c:549 +#: pg_restore.c:572 #, 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:550 +#: pg_restore.c:573 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics die Statistiken wiederherstellen\n" -#: pg_restore.c:551 +#: pg_restore.c:574 #, 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:554 +#: pg_restore.c:577 #, 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:565 +#: pg_restore.c:588 #, 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:567 +#: pg_restore.c:590 #, c-format msgid "" "\n" @@ -3110,7 +3141,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:570 +#: pg_restore.c:593 #, c-format msgid "" "\n" diff --git a/src/bin/pg_dump/po/ka.po b/src/bin/pg_dump/po/ka.po index 6c6d716155603..bc2a56ec38696 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-03 02:22+0000\n" -"PO-Revision-Date: 2025-08-04 01:40+0200\n" +"POT-Creation-Date: 2025-08-29 20:21+0000\n" +"PO-Revision-Date: 2025-08-30 03:24+0200\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.7\n" #: ../../../src/common/logging.c:279 #, c-format @@ -39,9 +39,9 @@ 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:108 compress_lz4.c:780 compress_lz4.c:787 compress_zstd.c:25 -#: compress_zstd.c:31 +#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: 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-ით შეკუმშვის მხარდაჭრა არ არსებობს" @@ -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:905 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 #, c-format msgid "could not open directory \"%s\": %m" msgstr "საქაღალდის (%s) გახსნის შეცდომა: %m" @@ -482,7 +482,7 @@ msgstr "შეკუმშვის ბიბლიოთეკის ინი msgid "could not close compression stream: %s" msgstr "შეკუმშვის ნაკადის დახურვის შეცდომა: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "მონაცემების შეკუმშვა შეუძლებელია: %s" @@ -497,86 +497,116 @@ msgstr "მონაცემების განშლის შეცდო 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:277 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:375 pg_backup_custom.c:650 +#: compress_gzip.c:294 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_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:373 pg_backup_custom.c:648 pg_backup_directory.c:538 +#: compress_gzip.c:312 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:233 compress_zstd.c:492 -#: compress_zstd.c:500 +#: 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:196 compress_zstd.c:310 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "მონაცემების გაშლის შეცდომა: %s" -#: compress_zstd.c:503 -#, c-format -msgid "unhandled mode \"%s\"" -msgstr "დაუმუშავებელი რეჟიმი \"%s\"" - #: 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:918 -#: pg_dump_sort.c:1454 pg_dump_sort.c:1474 +#: 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 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:495 +#: connectdb.c:157 pg_dumpall.c:514 #, c-format msgid "could not connect to database \"%s\"" msgstr "მონაცემთა ბაზასთან დაკავშირება ვერ მოხერხდა \"%s\"" @@ -601,32 +631,32 @@ msgstr "ოპერაცია გაუქმდა სერვერის msgid "server version: %s; %s version: %s" msgstr "სერვერის ვერსია: %s; %s ვერსია: %s" -#: connectdb.c:282 pg_dumpall.c:1739 +#: connectdb.c:282 pg_dumpall.c:1784 #, c-format msgid "executing %s" msgstr "%s -ის შესრულება" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1745 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 #, c-format msgid "query failed: %s" msgstr "მოთხოვნის შეცდომა: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1746 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 #, c-format msgid "Query was: %s" msgstr "მოთხოვნის შინაარსი: %s" -#: dumputils.c:910 +#: dumputils.c:948 #, c-format msgid "could not create directory \"%s\": %m" msgstr "საქაღალდის (%s) შექმნის შეცდომა: %m" -#: dumputils.c:915 +#: dumputils.c:953 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "საქაღალდის წვდომების შეცვლა შეუძლებელია \"%s\": %m" -#: dumputils.c:920 +#: dumputils.c:958 #, c-format msgid "directory \"%s\" is not empty" msgstr "საქაღალდე \"%s\" ცარიელი არაა" @@ -651,32 +681,32 @@ msgstr "არასწორი ფორმატი ფილტრში, msgid "invalid format in filter read from file \"%s\" on line %d: %s" msgstr "არასწორი ფორმატი ფილტრში, რომელიც წავიკითხე ფაილიდან \"%s\", ხაზზე %d: %s" -#: filter.c:240 filter.c:467 +#: filter.c:243 filter.c:470 #, c-format msgid "could not read from filter file \"%s\": %m" msgstr "ფილტრის ფაილიდან \"%s\" წაკითხვა შეუძლებელია: %m" -#: filter.c:243 +#: filter.c:246 msgid "unexpected end of file" msgstr "ფაილის მოულოდნელი დასასრული" -#: filter.c:310 +#: filter.c:313 msgid "missing object name pattern" msgstr "აკლია ობიექტის სახელის ნიმუში" -#: filter.c:421 +#: filter.c:424 msgid "no filter command found (expected \"include\" or \"exclude\")" msgstr "ფილტრის ბრძანება ვერ ვიპოვე (მოველოდი \"include\" ან \"exclude\")" -#: filter.c:432 +#: filter.c:435 msgid "invalid filter command (expected \"include\" or \"exclude\")" msgstr "არასწორი ფილტრის ბრძანება (მოველოდი \"include\" ან \"exclude\")" -#: filter.c:439 +#: filter.c:442 msgid "missing filter object type" msgstr "აკლია ფილტრის ობიექტის ტიპი" -#: filter.c:446 +#: filter.c:449 #, c-format msgid "unsupported filter object type: \"%.*s\"" msgstr "მხარდაუჭერელი ფილტრის ობიექტის ტიპი: \"%.*s\"" @@ -760,7 +790,7 @@ msgstr "pgpipe: სოკეტთან მიერთების შეც msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: შეერთების დადასტურება შეუძლებელია: შეცდომის კოდი %d" -#: pg_backup_archiver.c:269 pg_backup_archiver.c:1726 +#: pg_backup_archiver.c:269 pg_backup_archiver.c:1745 #, c-format msgid "could not close output file: %m" msgstr "გამოტანის ფაილის დახურვის შეცდომა: %m" @@ -805,412 +835,412 @@ msgstr "ბაზასთან პირდაპირი შეერთე msgid "implied no-schema restore" msgstr "სავარაუდო no-schema-ის აღდგენა" -#: pg_backup_archiver.c:518 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "მოცილება %s %s" -#: pg_backup_archiver.c:650 +#: pg_backup_archiver.c:661 #, c-format msgid "could not find where to insert IF EXISTS in statement \"%s\"" msgstr "ვერ ვიპოვე, ოპერაციაში \"%s\" IF EXISTS სად უნდა ჩავსვა" -#: pg_backup_archiver.c:836 pg_backup_archiver.c:838 +#: 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:872 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "იქმნება %s \"%s.%s\"" -#: pg_backup_archiver.c:875 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "იქმნება %s \"%s\"" -#: pg_backup_archiver.c:925 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "ახალ ბაზასთან მიერთება \"%s\"" -#: pg_backup_archiver.c:952 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "დამუშავება %s" -#: pg_backup_archiver.c:974 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "მონაცემების დამუშავება ცხრილისთვის \"%s.%s\"" -#: pg_backup_archiver.c:1044 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "შესრულება %s %s" -#: pg_backup_archiver.c:1113 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "%s-სთვის ტრიგერების გამორთვა" -#: pg_backup_archiver.c:1139 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "%s-სთვის ტრიგერების ჩართვა" -#: pg_backup_archiver.c:1204 +#: 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:1399 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "არჩეულ ფორმატს დიდი ობიექტების გამოტანის საშუალება არ გააჩნია" -#: pg_backup_archiver.c:1462 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "აღდგენილია %d დიდი ობიექტი" msgstr[1] "აღდგენილია %d დიდი ობიექტი" -#: pg_backup_archiver.c:1489 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:1501 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "დიდი ობიექტის (%u) შექმნის შეცდომა: %s" -#: pg_backup_archiver.c:1506 pg_dump.c:4061 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "დიდი ობიექტის (%u) გახსნის შეცდომა: %s" -#: pg_backup_archiver.c:1562 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" -msgstr "\"TOC\" ფაილის (%s) გახსნის შეცდომა: %m" +msgstr "TOC ფაილის (%s) გახსნის შეცდომა: %m" -#: pg_backup_archiver.c:1590 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "ხაზი გამოტოვებულია: %s" -#: pg_backup_archiver.c:1597 pg_backup_db.c:548 +#: 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:1620 pg_backup_directory.c:187 -#: pg_backup_directory.c:586 +#: 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" +msgstr "TOC ფაილის დახურვის შეცდომა: %m" -#: pg_backup_archiver.c:1707 pg_backup_custom.c:151 pg_backup_directory.c:301 -#: pg_backup_directory.c:573 pg_backup_directory.c:639 -#: pg_backup_directory.c:657 pg_dumpall.c:529 +#: 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 #, c-format msgid "could not open output file \"%s\": %m" msgstr "გამოტანის ფაილის (\"%s\") გახსნის შეცდომა: %m" -#: pg_backup_archiver.c:1709 pg_backup_custom.c:157 +#: 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:1792 +#: 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)" msgstr[0] "ჩაწერილია დიდი ობიექტის მონაცემების %zu ბაიტი (შედეგი = %d)" msgstr[1] "ჩაწერილია დიდი ობიექტის მონაცემების %zu ბაიტი (შედეგი = %d)" -#: pg_backup_archiver.c:1798 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "დიდი ობიექტის ჩაწერის შეცდომა: %s" -#: pg_backup_archiver.c:1888 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" -msgstr "\"INITIALIZING\"-ის დროს:" +msgstr "INITIALIZING-ის დროს:" -#: pg_backup_archiver.c:1893 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" -msgstr "\"PROCESSING TOC\"-ის დროს:" +msgstr "PROCESSING TOC-ის დროს:" -#: pg_backup_archiver.c:1898 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" -msgstr "\"FINALIZING\"-ის დროს:" +msgstr "FINALIZING-ის დროს:" -#: pg_backup_archiver.c:1903 +#: pg_backup_archiver.c:1922 #, c-format msgid "from TOC entry %d; %u %u %s %s %s" msgstr "შინაარსის ჩანაწერიდან %d; %u %u %s %s %s" -#: pg_backup_archiver.c:1979 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "არასწორი dumpId" -#: pg_backup_archiver.c:2000 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "ცხრილის არასწორი dumpId-ი TABLE DATA ელემენტისთვის" -#: pg_backup_archiver.c:2092 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "მონაცემების წანაცვლების მოულოდნელი ალამი: %d" -#: pg_backup_archiver.c:2105 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "გამოტანილ ფაილში ფაილის წანაცვლება ძალიან დიდია" -#: pg_backup_archiver.c:2216 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "საქაღალდის სახელი ძალიან გრძელია : \"%s\"" -#: pg_backup_archiver.c:2266 +#: 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:2274 pg_backup_custom.c:168 pg_backup_custom.c:813 -#: pg_backup_directory.c:172 pg_backup_directory.c:364 +#: 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:2281 pg_backup_custom.c:174 +#: 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:2287 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "შემოსატანი ფაილის წაკითხვის შეცდომა: %m" -#: pg_backup_archiver.c:2289 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "შეყვანის ფაილი ძალიან მოკლეა (წავიკითხე %lu, მოსალოდნელია 5)" -#: pg_backup_archiver.c:2321 +#: 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:2327 +#: 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:2333 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "შეყვანის ფაილი სწორ არქივს არ ჰგავს" -#: pg_backup_archiver.c:2342 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "შეყვანის ფაილის დახურვის შეცდომა: %m" -#: pg_backup_archiver.c:2421 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "stdout-ის ბოლოში მისაწერად გახსნა შეუძლებელია: %m" -#: pg_backup_archiver.c:2466 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "ფაილის უცნობი ფორმატი \"%d\"" -#: pg_backup_archiver.c:2547 pg_backup_archiver.c:4768 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4761 #, c-format msgid "finished item %d %s %s" msgstr "დასრულებული ელემენტი %d %s %s" -#: pg_backup_archiver.c:2551 pg_backup_archiver.c:4781 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4774 #, c-format msgid "worker process failed: exit code %d" msgstr "დამხმარე პროცესის შეცდომა: გამოსვლის კოდი %d" -#: pg_backup_archiver.c:2649 +#: 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:2653 pg_backup_custom.c:440 pg_backup_custom.c:506 +#: 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 "ფაილში გადახვევის პრობლემა: %m" -#: pg_backup_archiver.c:2711 +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "ელემენტის ID %d დიაპაზონს გარეთაა -- შეიძლება სარჩევი დაზიანებულია" -#: pg_backup_archiver.c:2794 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "ცხრილების, აღწერილი WITH OIDS -ით, აღდგენა მხარდაჭერილი აღარაა" -#: pg_backup_archiver.c:2876 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "უცნობი კოდირება \"%s\"" -#: pg_backup_archiver.c:2882 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" -msgstr "არასწორი ჩანაწერი \"ENCODING\": %s" +msgstr "არასწორი ელემენტი \"ENCODING\": %s" -#: pg_backup_archiver.c:2900 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" -msgstr "არასწორი ჩანაწერი \"STDSTRINGS\": %s" +msgstr "არასწორი ელემენტი \"STDSTRINGS\": %s" -#: pg_backup_archiver.c:2925 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "სქემა \"%s\" არ არსებობს" -#: pg_backup_archiver.c:2932 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "ცხრილი %s არ არსებობს" -#: pg_backup_archiver.c:2939 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "ინდექსი %s არ არსებობს" -#: pg_backup_archiver.c:2946 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "ფუნქცია %s არ არსებობს" -#: pg_backup_archiver.c:2953 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "ტრიგერი %s არ არსებობს" -#: pg_backup_archiver.c:3414 +#: pg_backup_archiver.c:3433 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "სესიის მომხმარებლის %s-ზე დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3546 +#: pg_backup_archiver.c:3575 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "\"session_path\"-ის %s-ზე დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3607 +#: pg_backup_archiver.c:3636 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" -msgstr "\"default_tablespace\"-ის %s-ზე დაყენების შეცდომა: %s" +msgstr "default_tablespace-ის %s-ზე დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3656 +#: pg_backup_archiver.c:3685 #, c-format msgid "could not set \"default_table_access_method\": %s" -msgstr "\"default_table_access_method\"-ის დაყენების შეცდომა: %s" +msgstr "default_table_access_method-ის დაყენების შეცდომა: %s" -#: pg_backup_archiver.c:3705 +#: pg_backup_archiver.c:3734 #, c-format msgid "could not alter table access method: %s" msgstr "ცხრილის წვდომის მეთოდის შეცვლა შეუძლებელია: %s" -#: pg_backup_archiver.c:3806 +#: pg_backup_archiver.c:3835 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "არ ვიცი, როგორ დავაყენო ობიექტის მოცემული ტიპის (%s) მფლობელი" -#: pg_backup_archiver.c:3941 +#: pg_backup_archiver.c:3970 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "მოულოდნელი TOC ჩანაწერი ფუნქციაში _printTocEntry(): %d %s %s" -#: pg_backup_archiver.c:4125 +#: pg_backup_archiver.c:4118 #, c-format msgid "did not find magic string in file header" msgstr "ფაილის თავსართში მაგიური სტრიქონი ნაპოვნი არაა" -#: pg_backup_archiver.c:4139 +#: pg_backup_archiver.c:4132 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "ფაილის თავსართში არსებული ვერსია (%d.%d) მხარდაუჭერელია" -#: pg_backup_archiver.c:4144 +#: pg_backup_archiver.c:4137 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "მთელი რიცხვის ზომის (%lu) სისწორის შემოწმების შეცდომა" -#: pg_backup_archiver.c:4148 +#: pg_backup_archiver.c:4141 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "არქივი შეიქმნა მანქანაზე, სადაც მთელი რიცხვი უფრო დიდია. ზოგიერთი ოპერაცია შეიძლება შეცდომით დასრულდეს" -#: pg_backup_archiver.c:4158 +#: pg_backup_archiver.c:4151 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "მოსალოდნელი ფორმატი (%d) განსხვავდება ფაილის ფორმატისგან (%d)" -#: pg_backup_archiver.c:4180 +#: pg_backup_archiver.c:4173 #, 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:4216 +#: pg_backup_archiver.c:4209 #, c-format msgid "invalid creation date in header" msgstr "თავსართში არსებული შექმნის დრო არასწორია" -#: pg_backup_archiver.c:4350 +#: pg_backup_archiver.c:4343 #, c-format msgid "processing item %d %s %s" msgstr "მუშავდება ელემენტი %d %s %s" -#: pg_backup_archiver.c:4435 +#: pg_backup_archiver.c:4428 #, c-format msgid "entering main parallel loop" msgstr "მთავარი პარალელური მარყუჟის დასაწყისი" -#: pg_backup_archiver.c:4446 +#: pg_backup_archiver.c:4439 #, c-format msgid "skipping item %d %s %s" msgstr "ელემენტის გამოტოვება %d %s %s" -#: pg_backup_archiver.c:4455 +#: pg_backup_archiver.c:4448 #, c-format msgid "launching item %d %s %s" msgstr "ელემენტის გაშვება %d %s %s" -#: pg_backup_archiver.c:4509 +#: pg_backup_archiver.c:4502 #, c-format msgid "finished main parallel loop" msgstr "მთავარი პარალელური მარყუჟის დასასრული" -#: pg_backup_archiver.c:4545 +#: pg_backup_archiver.c:4538 #, c-format msgid "processing missed item %d %s %s" msgstr "გამორჩენილი ჩანაწერის დამუშავება %d %s %s" -#: pg_backup_archiver.c:5087 +#: pg_backup_archiver.c:5080 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "ცხრილის (%s) შექმნა შეუძლებელია. მონაცემების აღდგენა არ მოხდება" @@ -1315,19 +1345,19 @@ msgstr "მოთხოვნის შესრულების შეცდ #: pg_backup_db.c:399 #, c-format msgid "error returned by PQputCopyData: %s" -msgstr "\"PQputCopyData\"-ის მიერ დაბრუნებული შეცდომა: %s" +msgstr "PQputCopyData-ის მიერ დაბრუნებული შეცდომა: %s" #: pg_backup_db.c:448 #, c-format msgid "error returned by PQputCopyEnd: %s" -msgstr "\"PQputCopyEnd\"-ის მიერ დაბრუნებული შეცდომა: %s" +msgstr "PQputCopyEnd-ის მიერ დაბრუნებული შეცდომა: %s" #: pg_backup_db.c:454 #, c-format msgid "COPY failed for table \"%s\": %s" msgstr "COPY-ის შეცდომა ცხრილისთვის \"%s\": %s" -#: pg_backup_db.c:460 pg_dump.c:2437 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "მოულოდნელი დამატებითი შედეგები COPY-ის დროს ცხრილისთვის \"%s\"" @@ -1345,58 +1375,47 @@ msgstr "ბაზის ტრანზაქციის გადაცემ msgid "no output directory specified" msgstr "გამოტანის საქაღალდე მითითებული არაა" -#: pg_backup_directory.c:325 pg_backup_directory.c:479 -#: pg_backup_directory.c:517 -#, c-format -msgid "could not write to output file: %s" -msgstr "გამოსატან ფაილში ჩაწერის შეცდომა: %s" - -#: pg_backup_directory.c:343 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "მონაცემების ფაილის დახურვის შეცდომა: %m" -#: pg_backup_directory.c:376 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "მონაცემების ფაილის (%s) დახურვის შეცდომა: %m" -#: pg_backup_directory.c:428 +#: pg_backup_directory.c:422 #, c-format msgid "could not open large object TOC file \"%s\" for input: %m" msgstr "დიდი ობიექტის სარჩევის ფაილის %s წასაკითხად გახსნის შეცდომა: %m" -#: pg_backup_directory.c:439 +#: pg_backup_directory.c:433 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" msgstr "არასწორი ხაზი დიდი ობიექტის ცხრილის ფაილში \"%s\": %s" -#: pg_backup_directory.c:448 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "დიდი ობიექტის სარჩევის ფაილის წაკითხვის შეცდომა: %s" -#: pg_backup_directory.c:452 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "დიდი ობიექტის სარჩევის ფაილის (%s) დახურვის შეცდომა: %m" -#: pg_backup_directory.c:675 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" -msgstr "'LO' მონაცემების ფაილის დახურვის შეცდომა: %m" +msgstr "LO-ის მონაცემების ფაილის დახურვის შეცდომა: %m" -#: pg_backup_directory.c:685 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "'LO'-ების სარჩევის ფაილში ჩაწერა შეუძლებელია: %s" - -#: pg_backup_directory.c:701 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" -msgstr "'LO'-ის სარჩევის ფაილის დახურვის შეცდომა: %m" +msgstr "LO-ებისის TOC ფაილის დახურვის შეცდომა: %m" -#: pg_backup_directory.c:720 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "%s: ფაილის სახელი ძალიან გრძელია" @@ -1445,7 +1464,7 @@ msgstr "დროებითი ფაილის სახელის გე #: pg_backup_tar.c:619 #, c-format msgid "unexpected COPY statement syntax: \"%s\"" -msgstr "\"COPY ოპერატორის მოულოდნელი სინტაქსი: %s" +msgstr "COPY ოპერატორის მოულოდნელი სინტაქსი: %s" #: pg_backup_tar.c:903 #, c-format @@ -1489,10 +1508,10 @@ msgstr "%s-ში ნაპოვნია დაზიანებული თ msgid "unrecognized section name: \"%s\"" msgstr "სექციის უცნობი სახელი: %s" -#: pg_backup_utils.c:57 pg_dump.c:794 pg_dump.c:811 pg_dumpall.c:376 -#: pg_dumpall.c:386 pg_dumpall.c:394 pg_dumpall.c:402 pg_dumpall.c:409 -#: pg_dumpall.c:419 pg_dumpall.c:511 pg_restore.c:320 pg_restore.c:336 -#: pg_restore.c:350 +#: 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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "მეტი ინფორმაციისთვის სცადეთ '%s --help'." @@ -1502,117 +1521,132 @@ msgstr "მეტი ინფორმაციისთვის სცად msgid "out of on_exit_nicely slots" msgstr "on_exit_nicely ტიპის სლოტები აღარ დარჩა" -#: pg_dump.c:809 pg_dumpall.c:384 pg_restore.c:334 +#: 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:821 pg_restore.c:358 +#: 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:823 pg_restore.c:360 +#: 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:825 pg_restore.c:362 +#: 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:829 pg_restore.c:366 +#: 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:831 pg_restore.c:368 +#: 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:833 pg_restore.c:370 +#: 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:837 pg_restore.c:374 +#: 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:841 pg_dump.c:844 pg_restore.c:378 pg_restore.c:381 +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 #, c-format msgid "options %s and %s cannot be used together" msgstr "პარამეტრებს %s და -%s ერთად ვერ გამოიყენებთ" -#: pg_dump.c:848 +#: 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:851 +#: pg_dump.c:856 #, c-format msgid "option --include-foreign-data is not supported with parallel backup" msgstr "პარამეტრი --include-foreign-data მხარდაუჭერელია პარალელური მარქაფისას" -#: pg_dump.c:854 pg_restore.c:385 +#: 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 ერთად ვერ გამოიყენება" -#: pg_dump.c:857 pg_dumpall.c:414 pg_restore.c:426 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "--if-exists -ს -c/--clean პარამეტრი ესაჭიროება" -#: pg_dump.c:877 +#: 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:906 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, c-format +msgid "could not generate restrict key" +msgstr "შეზღუდვის გასაღების გენერაცია შეუძლებელია" + +#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#, c-format +msgid "invalid restrict key" +msgstr "არასწორი შეზღუდვის გასაღები" + +#: pg_dump.c:903 +#, c-format +msgid "option --restrict-key can only be used with --format=plain" +msgstr "პარამეტრს --restrict-key მხოლოდ, პარამეტრთან --format=plain ერთად იქნეს გამოყენებული" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "შეკუმშვის უცხო ალგორითმი: \"%s\"" -#: pg_dump.c:913 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "შეკუმშვის არასწორი სპეციფიკაცია: %s" -#: pg_dump.c:926 +#: pg_dump.c:945 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "შეკუმშვის პარამეტრი \"%s\"-ი pg_dump-ის მიერ ამჟამად მხარდაჭერილი არაა" -#: pg_dump.c:938 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "პარალელური მარქაფი მხოლოდ საქაღალდის რეჟიმშია მხარდაჭერილი" -#: pg_dump.c:984 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "ბოლო ჩაშენებული OID %u" -#: pg_dump.c:993 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "შესაბამისი სქემები ნაპოვნი არაა" -#: pg_dump.c:1010 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "შესაბამისი ცხრილები ნაპოვნი არაა" -#: pg_dump.c:1038 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "შესაბამისი გაფართოებები ნაპოვნი არაა" -#: pg_dump.c:1231 +#: pg_dump.c:1251 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1621,17 +1655,17 @@ msgstr "" "%s გაიტანს PostgreSQL მონაცემთა ბაზას SQL სკრიპტის ან სხვა ფორმატის სახით.\n" "\n" -#: pg_dump.c:1232 pg_dumpall.c:659 pg_restore.c:501 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "გამოყენება:\n" -#: pg_dump.c:1233 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [პარამეტრი]... [ბაზისსახელი]\n" -#: pg_dump.c:1235 pg_dumpall.c:662 pg_restore.c:504 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1640,12 +1674,12 @@ msgstr "" "\n" "ზოგადი პარამეტრები:\n" -#: pg_dump.c:1236 +#: pg_dump.c:1256 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=FILENAME გამოტანის ფაილის სახელი\n" -#: pg_dump.c:1237 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1654,22 +1688,22 @@ msgstr "" " -F, --format=c|d|t|p გამოტანის ფაილის ფორმატი (custom, directory, tar\n" " უბრალო ტექსტი (ნაგულისხმევი))\n" -#: pg_dump.c:1239 +#: pg_dump.c:1259 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM მითითებული რაოდენობის პარალელური დავალების გაშვება\n" -#: pg_dump.c:1240 pg_dumpall.c:664 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose დამატებითი ინფორმაციის გამოტანა\n" -#: pg_dump.c:1241 pg_dumpall.c:665 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version ვერსიის ინფორმაციის გამოტანა და გასვლა\n" -#: pg_dump.c:1242 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1678,27 +1712,27 @@ msgstr "" " -Z, --compress=მეთოდი[:წვრილმანი]\n" " შეკუმშვის მითითება\n" -#: pg_dump.c:1244 pg_dumpall.c:666 +#: pg_dump.c:1264 pg_dumpall.c:701 #, 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:1245 pg_dumpall.c:698 +#: pg_dump.c:1265 pg_dumpall.c:733 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync არ დაველოდო ცვლილებების დისკზე უსაფრთხოდ ჩაწერას\n" -#: pg_dump.c:1246 +#: pg_dump.c:1266 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=მეთოდი ფაილების დისკზე სინქრონიზაციის მეთოდის დაყენება\n" -#: pg_dump.c:1247 pg_dumpall.c:667 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help ამ დახმარების ჩვენება და გასვლა\n" -#: pg_dump.c:1249 pg_dumpall.c:668 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1707,62 +1741,62 @@ msgstr "" "\n" "პარამეტრები, რომლებიც აკონტროლებენ გამოტანას:\n" -#: pg_dump.c:1250 pg_dumpall.c:669 +#: pg_dump.c:1270 pg_dumpall.c:704 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only მოხდება, მხოლოდ, მონაცემების დამპი, მაგრამ არა სქემის ან სტატისტიკის\n" -#: pg_dump.c:1251 +#: pg_dump.c:1271 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects გამოტანილი იქნება დიდი ობიექტებიც\n" -#: pg_dump.c:1252 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (იგივე, რაც--large-objects, რომელიც მოძველებულია)\n" -#: pg_dump.c:1253 +#: pg_dump.c:1273 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects დიდი ობიექტები გამოტანილი არ იქნება\n" -#: pg_dump.c:1254 +#: pg_dump.c:1274 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (იგივე, რაც --no-large-objects, რომელიც მოძველებულია)\n" -#: pg_dump.c:1255 pg_restore.c:515 +#: pg_dump.c:1275 pg_restore.c:537 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean ბაზის ობიექტების წაშლა თავიდან შექმნამდე\n" -#: pg_dump.c:1256 +#: pg_dump.c:1276 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr " -C, --create გამოტანილში ბაზის შექმნის ბრძანებების მიყოლება\n" -#: pg_dump.c:1257 +#: pg_dump.c:1277 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=PATTERN მხოლოდ მითითებული გაფართოებების გამოტანა\n" -#: pg_dump.c:1258 pg_dumpall.c:671 +#: pg_dump.c:1278 pg_dumpall.c:706 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=ENCODING მხოლოდ მითითებული კოდირების მქონე მონაცემების გამოტანა\n" -#: pg_dump.c:1259 +#: pg_dump.c:1279 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=PATTERN მხოლოდ მითითებული სქემების გამოტანა\n" -#: pg_dump.c:1260 +#: pg_dump.c:1280 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=PATTERN მითითებული სქემები გამოტანილი არ იქნება\n" -#: pg_dump.c:1261 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1771,52 +1805,52 @@ msgstr "" " -O, --no-owner უბრალო ტექსტურ ფორმატში ობიექტების მფლობელობის \n" " აღდგენის გამოტოვება\n" -#: pg_dump.c:1263 pg_dumpall.c:675 +#: pg_dump.c:1283 pg_dumpall.c:710 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr " -s, --schema-only მოხდება, მხოლოდ, სქემის დამპი, მაგრამ არა მონაცემების ან სტატისტიკის\n" -#: pg_dump.c:1264 +#: pg_dump.c:1284 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr " -S, --superuser=NAME უბრალო ტექსტურ ფაილში გამოტანისას გამოყენებული ზემომხმარებლის სახელი\n" -#: pg_dump.c:1265 +#: pg_dump.c:1285 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=შაბლონი მხოლოდ მითითებული ცხრილების დამპი\n" -#: pg_dump.c:1266 +#: pg_dump.c:1286 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=PATTERN მითითებული ცხრილები გამოტანილი არ იქნება\n" -#: pg_dump.c:1267 pg_dumpall.c:678 +#: pg_dump.c:1287 pg_dumpall.c:713 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges პრივილეგიები (dump/revoke) გამოტანილი არ იქნება\n" -#: pg_dump.c:1268 pg_dumpall.c:679 +#: pg_dump.c:1288 pg_dumpall.c:714 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade გამოიყენება მხოლოდ განახლების პროგრამების მიერ\n" -#: pg_dump.c:1269 pg_dumpall.c:680 +#: pg_dump.c:1289 pg_dumpall.c:715 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr " --column-inserts მონაცემების დამპი ისე, როგორც ბრძანება INSERT, სვეტების სახელებით\n" -#: pg_dump.c:1270 pg_dumpall.c:681 +#: pg_dump.c:1290 pg_dumpall.c:716 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr " --disable-dollar-quoting დოლარით ციტირების გამორთვა. სტანდარტული SQL ციტირების გამოყენება\n" -#: pg_dump.c:1271 pg_dumpall.c:682 pg_restore.c:532 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers მხოლოდ მონაცემების აღდგენისას ტრიგერების გამორთვა\n" -#: pg_dump.c:1272 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1825,12 +1859,12 @@ msgstr "" " --enable-row-security მწკრივების უსაფრთხოების ჩართვა (მხოლოდ იმ მონაცემების დამპი, \n" " რაზეც მომხმარებელს წვდომა გააჩნია)\n" -#: pg_dump.c:1274 +#: pg_dump.c:1294 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=PATTERN მითითებული გაფართოებ(ებ)-ი გამოტანილი *არ* იქნება\n" -#: pg_dump.c:1275 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1841,12 +1875,12 @@ msgstr "" " მითითებული ცხრილები დამპში არ იქნება,\n" " შვილი და დაყოფილი ცხრილების ჩათვლით\n" -#: pg_dump.c:1278 +#: pg_dump.c:1298 #, 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:1279 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1857,12 +1891,12 @@ msgstr "" " მითითებული ცხრილების მონაცემები დამპში არ იქნება,\n" " შვილი და დაყოფილი ცხრილების ჩათვლით\n" -#: pg_dump.c:1282 pg_dumpall.c:684 +#: pg_dump.c:1302 pg_dumpall.c:719 #, 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:1283 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1871,12 +1905,12 @@ msgstr "" " --filter=ფაილისსახელი დამპიდან ობიექტების და მონაცემების, რომლებიც ემთხვევა მითითებულ\n" " ფაილისსახელში მყოფ გამოსახულებას, ამოღება ან ჩასმა\n" -#: pg_dump.c:1285 pg_dumpall.c:686 pg_restore.c:536 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists ობიექტების გადაყრისას IF EXISTS -ის გამოყენება\n" -#: pg_dump.c:1286 +#: pg_dump.c:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1887,122 +1921,127 @@ msgstr "" " მონაცემების ჩასმა უცხო სერვერებზე მდებარე , უცხო ცხრილებიდან, რომლებიც\n" " შაბლონს ემთხვევა\n" -#: pg_dump.c:1289 pg_dumpall.c:687 +#: pg_dump.c:1309 pg_dumpall.c:722 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts მონაცემების დამპი INSERT ბრძანებების მსგავსად, COPY-ის მაგიერ\n" -#: pg_dump.c:1290 pg_dumpall.c:688 +#: pg_dump.c:1310 pg_dumpall.c:723 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root დანაყოფების root ცხრილს გავლით ჩატვირთვა\n" -#: pg_dump.c:1291 pg_dumpall.c:689 +#: pg_dump.c:1311 pg_dumpall.c:724 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments კომენტარის ბრძანებების დამპი არ მოხდება\n" -#: pg_dump.c:1292 pg_dumpall.c:690 +#: pg_dump.c:1312 pg_dumpall.c:725 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data მონაცემების დამპი არ მოხდება\n" -#: pg_dump.c:1293 pg_dumpall.c:691 +#: pg_dump.c:1313 pg_dumpall.c:726 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies მწკრივის უსაფრთხოების პოლიტიკის დამპი არ მოხდება\n" -#: pg_dump.c:1294 pg_dumpall.c:692 +#: pg_dump.c:1314 pg_dumpall.c:727 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications გამოცემების გარეშე\n" -#: pg_dump.c:1295 pg_dumpall.c:694 +#: pg_dump.c:1315 pg_dumpall.c:729 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema სქემების დამპი არ მოხდება\n" -#: pg_dump.c:1296 pg_dumpall.c:695 +#: pg_dump.c:1316 pg_dumpall.c:730 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels უსაფრთხოების ჭდეების მინიჭებების გარეშე\n" -#: pg_dump.c:1297 pg_dumpall.c:696 +#: pg_dump.c:1317 pg_dumpall.c:731 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics სტატისტიკის დამპი არ მოხდება\n" -#: pg_dump.c:1298 pg_dumpall.c:697 +#: pg_dump.c:1318 pg_dumpall.c:732 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions გამოწერების გარეშე\n" -#: pg_dump.c:1299 pg_dumpall.c:699 +#: pg_dump.c:1319 pg_dumpall.c:734 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method ცხრილის წვდომის მეთოდები\n" -#: pg_dump.c:1300 pg_dumpall.c:700 +#: pg_dump.c:1320 pg_dumpall.c:735 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces ცხრილის სივრცის მინიჭებები\n" -#: pg_dump.c:1301 pg_dumpall.c:701 +#: pg_dump.c:1321 pg_dumpall.c:736 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression TOAST-ის შეკუმშვის მეთოდები დამპში არ ჩაიწერება\n" -#: pg_dump.c:1302 pg_dumpall.c:702 +#: pg_dump.c:1322 pg_dumpall.c:737 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data ის ცხრილები, რომლებსაც ჟურნალი არ აქვთ, დამპში არ ჩაიწერება\n" -#: pg_dump.c:1303 pg_dumpall.c:703 +#: pg_dump.c:1323 pg_dumpall.c:738 #, 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:1304 pg_dumpall.c:704 +#: pg_dump.c:1324 pg_dumpall.c:739 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr " --quote-all-identifiers ყველა იდენტიფიკატორის ციტირება. მაშინაც კი, თუ ისინი საკვანძო სიტყვები არაა\n" -#: pg_dump.c:1305 pg_dumpall.c:705 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, 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 #, 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:1306 +#: pg_dump.c:1327 #, 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:1307 pg_dumpall.c:706 +#: pg_dump.c:1328 pg_dumpall.c:742 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data მიმდევრობის მონაცემების ჩასმა დამპში\n" -#: pg_dump.c:1308 +#: pg_dump.c:1329 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable მოცდა, სანამ დამპის გაშვება ანომალიების გარეშე იქნება შესაძლებელი\n" -#: pg_dump.c:1309 +#: pg_dump.c:1330 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT დამპისთვის მითითებული სწრაფი ასლის გამოყენება\n" -#: pg_dump.c:1310 pg_dumpall.c:707 +#: pg_dump.c:1331 pg_dumpall.c:743 #, c-format msgid " --statistics dump the statistics\n" msgstr " --statistics სტატისტიკის დამპი\n" -#: pg_dump.c:1311 pg_dumpall.c:708 +#: pg_dump.c:1332 pg_dumpall.c:744 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr " --statistics-only მოხდება, მხოლოდ, სტატისტიკის დამპი, მაგრამ არ სქემის ან მონაცემების\n" -#: pg_dump.c:1312 pg_restore.c:552 +#: pg_dump.c:1333 pg_restore.c:575 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2011,7 +2050,7 @@ msgstr "" " --strict-names მოთხოვნა, რომ ცხრილი ან/და სქემა შეიცავდეს შაბლონებს, რომლებიც\n" " ერთ ელემენტს მაინც ემთხვევა\n" -#: pg_dump.c:1314 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2020,7 +2059,7 @@ msgstr "" " --table-and-children=შაბლონი მხოლოდ მითითებული ცხრილების დამპი,\n" " შვილი და დაყოფილი ცხრილების ჩათვლით\n" -#: pg_dump.c:1316 pg_dumpall.c:709 pg_restore.c:555 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2031,7 +2070,7 @@ msgstr "" " მფლობელობის დასაყენებლად ALTER OWNER ბრძანებების მაგიერ\n" " SET SESSION AUTHORIZATION -ის გამოყენება\n" -#: pg_dump.c:1320 pg_dumpall.c:713 pg_restore.c:559 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2040,42 +2079,42 @@ msgstr "" "\n" "შეერთების პარამეტრები:\n" -#: pg_dump.c:1321 +#: pg_dump.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=ბაზისსახელი მონაცემთა ბაზის სახელი\n" -#: pg_dump.c:1322 pg_dumpall.c:715 pg_restore.c:560 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=HOSTNAME მონაცემთა ბაზის სერვერის ჰოსტის ან სოკეტის საქაღალდე\n" -#: pg_dump.c:1323 pg_dumpall.c:717 pg_restore.c:561 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT მონაცემთა ბაზის სერვერის პორტი\n" -#: pg_dump.c:1324 pg_dumpall.c:718 pg_restore.c:562 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=მომხმარებელი ბაზის მომხმარებლის სახელი\n" -#: pg_dump.c:1325 pg_dumpall.c:719 pg_restore.c:563 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password არასოდეს მკითხო პაროლი\n" -#: pg_dump.c:1326 pg_dumpall.c:720 pg_restore.c:564 +#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr " -W, --password პაროლის ყოველთვის კითხვა (ავტომატურად უნდა ხდებოდეს)\n" -#: pg_dump.c:1327 pg_dumpall.c:721 +#: pg_dump.c:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLENAME აღდგენამდე SET ROLE -ის გაშვება\n" -#: pg_dump.c:1329 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2088,562 +2127,562 @@ msgstr "" "ცვლადი გამოიყენება.\n" "\n" -#: pg_dump.c:1331 pg_dumpall.c:725 pg_restore.c:571 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, c-format msgid "Report bugs to <%s>.\n" msgstr "შეცდომების შესახებ მიწერეთ: <%s>\n" -#: pg_dump.c:1332 pg_dumpall.c:726 pg_restore.c:572 +#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "%s-ის საწყისი გვერდია: <%s>\n" -#: pg_dump.c:1351 pg_dumpall.c:541 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "კლიენტის მითითებული კოდირება არასწორია: %s" -#: pg_dump.c:1499 +#: pg_dump.c:1520 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "სერვერის ამ ვერსიაში უქმე სერვერებიდან პარალელური დამპი მხარდაჭერილი არაა" -#: pg_dump.c:1564 +#: pg_dump.c:1585 #, c-format msgid "invalid output format \"%s\" specified" msgstr "გამოტანის მითითებული ფორმატი არასწორია: %s" -#: pg_dump.c:1605 pg_dump.c:1661 pg_dump.c:1714 pg_dumpall.c:1546 +#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "არასწორი სრული სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" -#: pg_dump.c:1613 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "შესაბამისი სქემა შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1666 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "შესაბამისი გაფართოება შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1719 +#: pg_dump.c:1740 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "შესაბამისი უცხო სერვერი შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1790 +#: pg_dump.c:1811 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "ურთიერთობის არასწორი სახელი (ძალიან ბევრი წერტილიანი სახელი): %s" -#: pg_dump.c:1812 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "შესაბამისი ცხრილი შაბლონისთვის \"%s\" ვერ ვიპოვე" -#: pg_dump.c:1839 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "ამჟამად მონაცემთა ბაზასთან მიერთებული არ ბრძანდებით." -#: pg_dump.c:1842 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "ბაზებს შორის ბმულები განხორციელებული არაა: %s" -#: pg_dump.c:2308 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "ცხრილის შემცველობის გამოტანა: \"%s.%s\"" -#: pg_dump.c:2418 +#: pg_dump.c:2439 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "ცხრილის (\"%s\") დამპის შეცდომა: PQgetCopyData() failed." -#: pg_dump.c:2419 pg_dump.c:2429 +#: pg_dump.c:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "შეცდომა სერვერიდან: %s" -#: pg_dump.c:2420 pg_dump.c:2430 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "ბრძანება იყო: %s" -#: pg_dump.c:2428 +#: pg_dump.c:2449 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "ცხრილის (\"%s\") დამპის შეცდომა: PQgetResult() failed." -#: pg_dump.c:2519 +#: pg_dump.c:2540 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "ცხრილიდან \"%s\" მიღებულია ველების არასწორი რაოდენობა" -#: pg_dump.c:3234 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "ბაზის აღწერის შენახვა" -#: pg_dump.c:3349 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "ენის უცნობი მომწოდებელი: %s" -#: pg_dump.c:3710 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "კოდირების შენახვა = %s" -#: pg_dump.c:3735 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "შენახვა: \"standard_conforming_strings = %s\"" -#: pg_dump.c:3774 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "current_schemas() -ის შედეგის დამუშავების შეცდომა" -#: pg_dump.c:3793 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "შენახვა: \"search_path = %s\"" -#: pg_dump.c:3829 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "დიდი ობიექტების კითხვა" -#: pg_dump.c:4050 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "მიმდინარეობს შენახვა დიდი ობიექტებისთვის \"%s\"" -#: pg_dump.c:4071 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "დიდი ობიექტის (%u) წაკითხვის შეცდომა: %s" -#: pg_dump.c:4179 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "მწკრივის დონის უსაფრთხოების წესების წაკითხვა" -#: pg_dump.c:4320 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "წესების ბრძანების მოულოდნელი ტიპი: %c" -#: pg_dump.c:4762 pg_dump.c:5319 pg_dump.c:7948 pg_dump.c:13426 pg_dump.c:19619 -#: pg_dump.c:19621 pg_dump.c:20253 +#: 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 #, c-format msgid "could not parse %s array" msgstr "მასივის დამუშავების შეცდომა: %s" -#: pg_dump.c:4978 +#: pg_dump.c:5002 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "გამოწერები დამპში არ ჩაწერილა. მიმდინარე მომხმარებელი ზემომხმარებელი არაა" -#: pg_dump.c:5182 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "გამოწერა OID-ით %u არ არსებობს" -#: pg_dump.c:5189 +#: pg_dump.c:5213 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "სისწორის შემოწმების შეცდომა. ცხრილი OID-ით %u აღმოჩენილი არაა" -#: pg_dump.c:5775 +#: pg_dump.c:5799 #, c-format msgid "could not find parent extension for %s %s" msgstr "%s-სთვის მშობელი გაფართოება ვერ ვიპოვე %s" -#: pg_dump.c:5913 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "სქემა OID-ით %u არ არსებობს" -#: pg_dump.c:6970 +#: pg_dump.c:6994 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "სტატისტიკის დამპი ურთიერთობის ტიპისთვის \"%c\" შეუძლებელია" -#: pg_dump.c:7482 pg_dump.c:18963 +#: pg_dump.c:7506 pg_dump.c:18987 #, 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:7627 +#: pg_dump.c:7651 #, 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:7892 pg_dump.c:8185 pg_dump.c:8648 pg_dump.c:9293 pg_dump.c:9432 -#: pg_dump.c:9577 pg_dump.c:9677 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "ცხრილის უცნობი OID: %u" -#: pg_dump.c:7896 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "მოულოდნელი ინდექსის მონაცემები ცხრილისთვის \"%s\"" -#: pg_dump.c:8435 +#: pg_dump.c:8459 #, 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:9297 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "სვეტის მოულოდნელი მონაცემები ცხრილისთვის %s" -#: pg_dump.c:9329 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "ცხრილში \"%s\" სვეტები არასწორადაა დანომრილი" -#: pg_dump.c:9394 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "ვეძებ ცხრილის ნაგულისხმევ გამოსახულებებს" -#: pg_dump.c:9436 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "adnum -ის არასწორი მნიშვნელობა %d ცხრილისთვის \"%s\"" -#: pg_dump.c:9529 +#: pg_dump.c:9553 #, c-format msgid "finding invalid not-null constraints" msgstr "ვეძებ არასწორ არანულოვან შეზღუდვებს" -#: pg_dump.c:9627 +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "ვეძებ ცხრილის შემოწმების შეზღუდვებს" -#: pg_dump.c:9681 +#: pg_dump.c:9705 #, 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:9685 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "სისტემის კატალოგი შეიძლება დაზიანებულია." -#: pg_dump.c:10490 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "როლი OID-ით %u არ არსებობს" -#: pg_dump.c:10602 pg_dump.c:10631 +#: pg_dump.c:10626 pg_dump.c:10655 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "pg_init_privs -ის არასწორი ჩანაწერი: %u %u %d" -#: pg_dump.c:10927 +#: pg_dump.c:10951 #, 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:11068 +#: pg_dump.c:11092 #, c-format msgid "unexpected null attname" msgstr "მოულოდნელი null attname" -#: pg_dump.c:11097 +#: pg_dump.c:11121 #, c-format msgid "could not find index attname \"%s\"" msgstr "ინდექსის attname \"%s\" აღმოჩენილი არაა" -#: pg_dump.c:11583 +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "აკლია მეტამონაცემები დიდი ობიექტებისთვის \"%s\"" -#: pg_dump.c:11869 +#: pg_dump.c:11893 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "მონაცემის ტიპი %s-ის typetype თურმე არასორია" -#: pg_dump.c:13497 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "უცნობი provolatile მნიშვნელობა ფუნქციისთვის \"%s\"" -#: pg_dump.c:13547 pg_dump.c:15443 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "უცნობი proparallel მნიშვნელობა ფუნქციისთვის \"%s\"" -#: pg_dump.c:13677 pg_dump.c:13783 pg_dump.c:13790 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, c-format msgid "could not find function definition for function with OID %u" msgstr "ფუნქციის აღწერა ფუნქციისთვის OID-ით %u ვერ ვიპოვე" -#: pg_dump.c:13716 +#: pg_dump.c:13740 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "pg_cast.castfunc ან pg_cast.castmethod ველების არასწორი მნიშვნელობა" -#: pg_dump.c:13719 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "pg_cast.castmethod ველის არასწორი მნიშვნელობა" -#: pg_dump.c:13809 +#: pg_dump.c:13833 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "არასწორი გარდაქმნის აღწერა. ერთ-ერთი, trffromsql ან trftosql ნულს არ უნდა უდრიდეს" -#: pg_dump.c:13826 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "pg_transform.trffromsql ველის არასწორი მნიშვნელობა" -#: pg_dump.c:13847 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "pg_transform.trftosql ველის არასწორი მნიშვნელობა" -#: pg_dump.c:13992 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "postfix ოპერატორები მხარდაჭერილი აღარაა (ოპერატორი \"%s\")" -#: pg_dump.c:14162 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "ოპერატორი OID-ით %s არ არსებობს" -#: pg_dump.c:14230 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "წვდომის მეთოდის (%2$s) არასწორი ტიპი: %1$c" -#: pg_dump.c:14904 pg_dump.c:14972 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "კოლაციის უცნობი მომწოდებელი: %s" -#: pg_dump.c:14913 pg_dump.c:14920 pg_dump.c:14931 pg_dump.c:14941 -#: pg_dump.c:14956 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "არასწორი კოლაცია \"%s\"" -#: pg_dump.c:15362 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "აგრეგატის (%s) aggfinalmodify -ის უცნობი ტიპი" -#: pg_dump.c:15418 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "აგრეგატის (%s) aggmfinalmodify -ის უცნობი ტიპი" -#: pg_dump.c:16138 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "ნაგულისხმევ პრივილეგიებში არსებული ობიექტის უცნობი ტიპი: %d" -#: pg_dump.c:16154 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "ნაგულიხმები ACL სიის ანალიზი შეუძლებელია: %s" -#: pg_dump.c:16238 +#: pg_dump.c:16262 #, 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:16263 +#: pg_dump.c:16287 #, 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:16806 +#: pg_dump.c:16830 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "ხედის (%s) აღწერის გამოთხოვამ მონაცემები არ დააბრუნა" -#: pg_dump.c:16809 +#: pg_dump.c:16833 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "ხედის (%s) აღწერის გამოთხოვამ ერთზე მეტი აღწერა დააბრუნა" -#: pg_dump.c:16816 +#: pg_dump.c:16840 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "ხედის (%s) აღწერა, როგორც ჩანს, ცარიელია (ნულოვანი სიგრძე)" -#: pg_dump.c:16901 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS-ები უკვე მხარდაუჭერელია (ცხრილი \"%s\")" -#: pg_dump.c:18041 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "სვეტების არასწორი რიცხვი %d ცხრილისთვის %s" -#: pg_dump.c:18119 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "ინდექსის სტატისტიკის სვეტების დამუშავების შეცდომა" -#: pg_dump.c:18121 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "ინდექსის სტატისტიკის მნიშვნელობების დამუშავების შეცდომა" -#: pg_dump.c:18123 +#: pg_dump.c:18147 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "ინდექსის სტატისტიკისთვის სვეტებისა და მნიშვნელობების რაოდენობა არ ემთხვევა" -#: pg_dump.c:18352 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "შეზღუდვას ინდექსი აკლია: \"%s\"" -#: pg_dump.c:18621 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "შეზღუდვის უცნობი ტიპი: %c" -#: pg_dump.c:18674 +#: pg_dump.c:18698 #, c-format msgid "unrecognized sequence type: %s" msgstr "მიმდევრობის უცნობი ტიპი: %s" -#: pg_dump.c:18806 pg_dump.c:19038 +#: pg_dump.c:18830 pg_dump.c:19062 #, 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:18842 +#: pg_dump.c:18866 #, c-format msgid "unrecognized sequence type: %d" msgstr "მიმდევრობის უცნობი ტიპი: %d" -#: pg_dump.c:19371 +#: pg_dump.c:19395 #, 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:19524 +#: pg_dump.c:19548 #, c-format msgid "could not find referenced extension %u" msgstr "მიბმული გაფართოება (%u) ვერ ვიპოვე" -#: pg_dump.c:19623 +#: pg_dump.c:19647 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "კონფიგურაციებისა და პირობების რაოდენობა გაფართოებისთვის არ ემთხვევა" -#: pg_dump.c:19755 +#: pg_dump.c:19779 #, c-format msgid "reading dependency data" msgstr "დამოკიდებულების მონაცემების კითხვა" -#: pg_dump.c:19841 +#: pg_dump.c:19865 #, c-format msgid "no referencing object %u %u" msgstr "მიბმადი ობიექტის გარეშე %u %u" -#: pg_dump.c:19852 +#: pg_dump.c:19876 #, c-format msgid "no referenced object %u %u" msgstr "მიბმული ობიექტის გარეშე %u %u" -#: pg_dump.c:20287 pg_dump.c:20325 pg_dumpall.c:1791 pg_restore.c:606 -#: pg_restore.c:652 +#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "ფილტრი %s \"%s\"-სთვის დაშვებული არაა" -#: pg_dump_sort.c:636 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "არასწორი dumpId %d" -#: pg_dump_sort.c:642 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "არასწორი დამოკიდებულება %d" -#: pg_dump_sort.c:806 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "დამოკიდებულებების მარყუჟები ნაპოვნი არაა" -#: pg_dump_sort.c:1450 +#: pg_dump_sort.c:1462 #, 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:1455 +#: pg_dump_sort.c:1467 #, 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:1456 +#: pg_dump_sort.c:1468 #, 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:1468 +#: pg_dump_sort.c:1480 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "ამ ელემენტებს შორის დამოკიდებულებების მარყუჟის ამოხსნა შეუძლებელია:" -#: pg_dumpall.c:237 +#: 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:240 +#: 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:393 +#: 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:401 +#: 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:408 +#: 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:418 +#: 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:509 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2652,7 +2691,7 @@ msgstr "" "ვერ დაუკავშირდა მონაცემთა ბაზებს \"postgres\" ან \"template1\"\n" "გთხოვთ მიუთითოთ ალტერნატიული მონაცემთა ბაზა." -#: pg_dumpall.c:658 +#: pg_dumpall.c:693 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2661,72 +2700,72 @@ msgstr "" "%s გაიტანს PostgreSQL-ის მონაცემთა ბაზის კლასტერს SQL სკრიპტის სახით.\n" "\n" -#: pg_dumpall.c:660 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [პარამეტრი]...\n" -#: pg_dumpall.c:663 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=FILENAME გამოტანის ფაილის სახელი\n" -#: pg_dumpall.c:670 +#: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean ბაზის წაშლა თავიდან შექმნამდე\n" -#: pg_dumpall.c:672 +#: pg_dumpall.c:707 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr " -g, --globals-only წაიშლება მხოლოდ გლობალური ობიექტები და არა ბაზები\n" -#: pg_dumpall.c:673 pg_restore.c:524 +#: pg_dumpall.c:708 pg_restore.c:546 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner ობიექტების მფლობელობის აღდგენის გამოტოვება\n" -#: pg_dumpall.c:674 +#: pg_dumpall.c:709 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr " -r, --roles-only გამოიტანს მხოლოდ როლებს და არც ბაზებს და არც ცხრილების სივრცეებს\n" -#: pg_dumpall.c:676 +#: pg_dumpall.c:711 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr " -S, --superuser=NAME გამოსაყენებელი ზემომხმარებლის სახელი\n" -#: pg_dumpall.c:677 +#: pg_dumpall.c:712 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr " -t, --tablespaces-only გამოიტანს მხლოდ ცხრილების სივრცეებს და არც ბაზებს და არც როლებს\n" -#: pg_dumpall.c:683 +#: pg_dumpall.c:718 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=PATTERN გამორიცხავს ბაზებს, რომლებიც PATTERN-ს ემთხვევა\n" -#: pg_dumpall.c:685 +#: pg_dumpall.c:720 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=FILENAME ფაილში მითითებული მონაცემთა ბაზების ამოღება\n" -#: pg_dumpall.c:693 +#: pg_dumpall.c:728 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords როლების პაროლები გამოტანილ არ იქნება\n" -#: pg_dumpall.c:714 +#: pg_dumpall.c:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CONNSTR კავშირის სტრიქონი\n" -#: pg_dumpall.c:716 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=ბაზისსახელი ალტერნატიული ბაზის სახელი)\n" -#: pg_dumpall.c:723 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2739,102 +2778,107 @@ msgstr "" "სტანდარტულ გამოტანაზე იქნება გამოტანილი.\n" "\n" -#: pg_dumpall.c:868 +#: pg_dumpall.c:904 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "როლის სახელი, რომელიც \"pg_\"-ით იწყება, გამოტოვებულია (%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1085 pg_dumpall.c:1143 pg_dumpall.c:1152 +#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "აღმოჩენილია მიტოვებული pg_auth-ის წევრის ჩანაწერი როლისთვის %s" -#: pg_dumpall.c:1118 +#: pg_dumpall.c:1154 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "სწორი დამპის მიმდევრობა წევრობისთვის როლში \"%s\" აღმოჩენილი არაა" -#: pg_dumpall.c:1273 +#: pg_dumpall.c:1309 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "ვერ გაანალიზდა ACL სია (%s) პარამეტრისთვის \"%s\"" -#: pg_dumpall.c:1400 +#: pg_dumpall.c:1436 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "შეცდომა ACL-ის სიის (%s) დამუშავებისთვის ცხრილის სივრცისთვის \"%s\"" -#: pg_dumpall.c:1607 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "გამოირიცხა ბაზა \"%s\"" -#: pg_dumpall.c:1611 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "დამპის გამოტანა ბაზისთვის \"%s\"" -#: pg_dumpall.c:1642 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump -ის შეცდომა ბაზაზე \"%s\". დასასრული" -#: pg_dumpall.c:1648 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "გამოსატანი ფაილის თავიდან გახსნის შეცდომა \"%s\": %m" -#: pg_dumpall.c:1692 +#: pg_dumpall.c:1737 #, c-format msgid "running \"%s\"" msgstr "%s -ის გაშვება" -#: pg_dumpall.c:1811 +#: pg_dumpall.c:1856 msgid "unsupported filter object" msgstr "მხარდაუჭერელი ფილტრის ობიექტი" -#: pg_restore.c:342 +#: 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:349 +#: 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:388 +#: 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:395 +#: 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:399 +#: pg_restore.c:421 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "--single-transaction -ის მითითება ბევრ დავალებასთან ერთად შეუძლებელია" -#: pg_restore.c:445 +#: pg_restore.c:467 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "არქივის ფორმატი \"%s\" მხარდაჭერილი არაა. გამოიყენეთ psql" -#: pg_restore.c:449 +#: pg_restore.c:471 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "არქივის უცნობი ფორმატი \"%s\"; გთხოვთ მიუთითოთ \"გ\", \"დ\", ან \"t\"" -#: pg_restore.c:487 +#: pg_restore.c:509 #, c-format msgid "errors ignored on restore: %d" msgstr "აღდგენისას იგნორირებული შეცდომების რაოდენობა: %d" -#: pg_restore.c:500 +#: pg_restore.c:522 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2843,47 +2887,47 @@ msgstr "" "%s აღადგენს PostgreSQL მონაცემთა ბაზას pg_dump-ის მიერ შექმნილი არქივებიდან.\n" "\n" -#: pg_restore.c:502 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [პარამეტრი]... [ფაილი]\n" -#: pg_restore.c:505 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=ბაზისსახელი მონაცემთა ბაზის სახელი\n" -#: pg_restore.c:506 +#: pg_restore.c:528 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILENAME გამოტანის ფაილის სახელი(stdout-ზე გამოსატანად გამოიყენეთ \"-\")\n" -#: pg_restore.c:507 +#: pg_restore.c:529 #, 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:508 +#: pg_restore.c:530 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list არქივის სარჩევის მიმოხილვის გამოტანა\n" -#: pg_restore.c:509 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose დამატებითი ინფორმაციის გამოტანა\n" -#: pg_restore.c:510 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version ვერსიის ინფორმაციის გამოტანა და გასვლა\n" -#: pg_restore.c:511 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help ამ დახმარების ჩვენება და გასვლა\n" -#: pg_restore.c:513 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -2892,32 +2936,32 @@ msgstr "" "\n" "პარამეტრები, რომლებიც აკონტროლებენ გამოტანას:\n" -#: pg_restore.c:514 +#: pg_restore.c:536 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only აღდგება მხოლოდ მონაცემები, სქემის გარეშე\n" -#: pg_restore.c:516 +#: pg_restore.c:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create სამიზნე ბაზის შექმნა\n" -#: pg_restore.c:517 +#: pg_restore.c:539 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error დაუყოვნებლივი გამოსვლა შეცდომის შემთხვევაში\n" -#: pg_restore.c:518 +#: pg_restore.c:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME მითითებული სახელის მქონე ინდექსის აღდგენა\n" -#: pg_restore.c:519 +#: pg_restore.c:541 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM აღდგენისას მითითებული რაოდენობის პარალელური დავალების გაშვება\n" -#: pg_restore.c:520 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2926,57 +2970,57 @@ msgstr "" " -L, --use-list=FILENAME გამოტანის ასარჩევად/დასალაგებლად მითითებული\n" " ფაილის შემცველობის გამოყენება\n" -#: pg_restore.c:522 +#: pg_restore.c:544 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME მხოლოდ მითითებული სქემის ობიექტების აღდგენა\n" -#: pg_restore.c:523 +#: pg_restore.c:545 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=სახელი მითითებული სახელის მქონე სქემაში ობიექტები არ აღდგება\n" -#: pg_restore.c:525 +#: pg_restore.c:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=სახელი(არგები) მითითებული სახელის მქონე ფუნქციის აღდგენა\n" -#: pg_restore.c:526 +#: pg_restore.c:548 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only აღდგება მხოლოდ სქემები, მონაცემები კი არა\n" -#: pg_restore.c:527 +#: pg_restore.c:549 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAME ტრიგერების გამოსართავად გამოყენებული ზემომხმარებლის სახელი\n" -#: pg_restore.c:528 +#: pg_restore.c:550 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NAME მითითებული ურთიერთობის აღდგენა (ცხრილი, ხედი, და ა.შ.)\n" -#: pg_restore.c:529 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME მითითებული ტრიგერის აღდგენა \n" -#: pg_restore.c:530 +#: pg_restore.c:552 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges წვდომის პრივილეგიების აღდგენის გამოტოვება (grant/revoke)\n" -#: pg_restore.c:531 +#: pg_restore.c:553 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction აღდგენის ერთ ტრანზაქციად გაშვება\n" -#: pg_restore.c:533 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security მწკრივების უსაფრთხოების ჩართვა\n" -#: pg_restore.c:534 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -2985,17 +3029,17 @@ msgstr "" " --filter=FILENAME ობიექტების აღდგენა ან გამოტოვება ფაილში\n" " მითითებული გამოსახულებების მიხედვით\n" -#: pg_restore.c:537 +#: pg_restore.c:559 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments კომენტარის ბრძანებები არ აღდგება\n" -#: pg_restore.c:538 +#: pg_restore.c:560 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data მონაცემები არ აღდგება\n" -#: pg_restore.c:539 +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3004,72 +3048,72 @@ msgstr "" " --no-data-for-failed-tables ცხრილების, რომლის შექმნა შეუძლებელია,\n" " მონაცემები არ აღდგება\n" -#: pg_restore.c:541 +#: pg_restore.c:563 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies მწკრივის უსაფრთხოების პოლიტიკები არ აღდგება\n" -#: pg_restore.c:542 +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications გამოცემები არ აღდგება\n" -#: pg_restore.c:543 +#: pg_restore.c:565 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema სქემები არ აღდგება\n" -#: pg_restore.c:544 +#: pg_restore.c:566 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels უსაფრთხოების ჭდეები არ აღდგება\n" -#: pg_restore.c:545 +#: pg_restore.c:567 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics სტატისტიკის აღდგენა არ მოხდება\n" -#: pg_restore.c:546 +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions გამოწერები არ აღდგება\n" -#: pg_restore.c:547 +#: pg_restore.c:569 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method ცხრილის წვდომის მეთოდები არ აღდგება\n" -#: pg_restore.c:548 +#: pg_restore.c:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces ცხრილის სივრცის მინიჭებები არ აღდგება\n" -#: pg_restore.c:549 +#: pg_restore.c:572 #, 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:550 +#: pg_restore.c:573 #, c-format msgid " --statistics restore the statistics\n" msgstr " --statistics სტატისტიკის აღდგენა\n" -#: pg_restore.c:551 +#: pg_restore.c:574 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only აღდგება, მხოლოდ, სტატისტიკა, სქემა, ან მონაცემები კი - არა\n" -#: pg_restore.c:554 +#: pg_restore.c:577 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N გადაცემა ყოველი N ობიექტის შემდეგ\n" -#: pg_restore.c:565 +#: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME აღდგენამდე SET ROLE -ის გაშვება\n" -#: pg_restore.c:567 +#: pg_restore.c:590 #, c-format msgid "" "\n" @@ -3080,7 +3124,7 @@ msgstr "" "შესაძლებელია პარამეტრების -I, -n, -N, -P, -t, -T და --section ერთად და მრავალჯერ მითითება ერთზე\n" "მეტი ობიექტის ამოსაღებად.\n" -#: pg_restore.c:570 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -3179,6 +3223,10 @@ msgstr "" #~ msgid "could not read symbolic link \"%s\": %m" #~ msgstr "სიმბოლური ბმის \"%s\" წაკითხვის შეცდომა: %m" +#, c-format +#~ msgid "could not write to LOs TOC file: %s" +#~ msgstr "'LO'-ების სარჩევის ფაილში ჩაწერა შეუძლებელია: %s" + #, c-format #~ msgid "database name \"%s\" matches exclude pattern \"%s\"" #~ msgstr "მონაცემთა ბაზის სახელი \"%s\" ემთხვევა გამოტოვების ნიმუშს: \"%s\"" @@ -3321,6 +3369,10 @@ msgstr "" #~ msgid "unexpected tgtype value: %d" #~ msgstr "tgtype -ის არასწორი მნიშვნელობა: %d" +#, c-format +#~ msgid "unhandled mode \"%s\"" +#~ msgstr "დაუმუშავებელი რეჟიმი \"%s\"" + #, c-format #~ msgid "unrecognized collation provider '%c'" #~ msgstr "უცნობი კოლაციის მომწოდებელი '%c'" diff --git a/src/bin/pg_dump/po/ru.po b/src/bin/pg_dump/po/ru.po index f0297f30d1455..d2a28a4075170 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. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 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-02-08 07:44+0200\n" -"PO-Revision-Date: 2024-09-07 07:35+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" +"PO-Revision-Date: 2025-05-03 16:33+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -21,30 +21,30 @@ 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" -#: ../../../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:428 compress_gzip.c:435 +#: 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" @@ -117,27 +117,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 "нехватка памяти" @@ -152,45 +152,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:943 #, 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 "не удалось синхронизировать с ФС файл \"%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" @@ -240,247 +239,247 @@ 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\": неверный символ в числе" @@ -495,7 +494,7 @@ msgstr "не удалось инициализировать библиотек msgid "could not close compression stream: %s" msgstr "не удалось закрыть поток сжатых данных: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "не удалось сжать данные: %s" @@ -510,153 +509,248 @@ msgstr "не удалось распаковать данные: %s" 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:277 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:374 pg_backup_custom.c:651 +#: compress_gzip.c:294 compress_zstd.c:382 +#, fuzzy, c-format +msgid "could not write to file: %s" +msgstr "не удалось записать в выходной файл: %s" + +#: compress_gzip.c:310 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:372 pg_backup_custom.c:649 pg_backup_directory.c:565 +#: compress_gzip.c:312 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 +#, fuzzy, c-format +msgid "unable to initialize LZ4 library: %s" +msgstr "не удалось инициализировать библиотеку сжатия: %s" + +#: compress_lz4.c:593 +#, fuzzy, c-format +msgid "error during writing: %s" +msgstr "ошибка при перемещении в файле: %m" + +#: compress_lz4.c:599 +#, fuzzy, c-format +msgid "error during writing: %m" +msgstr "ошибка при перемещении в файле: %m" + +#: compress_lz4.c:698 +#, fuzzy, c-format +msgid "could not write to output file: %m" +msgstr "не удалось записать в выходной файл: %s" + +#: 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 +#, fuzzy, c-format +msgid "could not close file: %m" +msgstr "не удалось закрыть файл оглавления: %m" + +#: compress_none.c:109 compress_zstd.c:389 +#, fuzzy, c-format +msgid "could not write to file: %m" +msgstr "не удалось записать в выходной файл: %s" + +#: compress_zstd.c:67 #, c-format msgid "could not set compression parameter \"%s\": %s" msgstr "не удалось задать параметр сжатия \"%s\": %s" -#: compress_zstd.c:78 compress_zstd.c:232 compress_zstd.c:491 -#: compress_zstd.c:499 +#: 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:195 compress_zstd.c:309 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "не удалось распаковать данные: %s" -#: compress_zstd.c:502 +#: 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:937 +#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 +#, c-format +msgid "%s" +msgstr "%s" + +#: connectdb.c:157 pg_dumpall.c:514 #, c-format -msgid "unhandled mode \"%s\"" -msgstr "необрабатываемый режим \"%s\"" +msgid "could not connect to database \"%s\"" +msgstr "не удалось подключиться к базе данных: \"%s\"" -#: filter.c:49 +#: 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 "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" + +#: connectdb.c:282 pg_dumpall.c:1784 +#, c-format +msgid "executing %s" +msgstr "выполняется %s" + +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#, c-format +msgid "query failed: %s" +msgstr "ошибка при выполнении запроса: %s" + +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#, c-format +msgid "Query was: %s" +msgstr "Выполнялся запрос: %s" + +#: dumputils.c:948 +#, c-format +msgid "could not create directory \"%s\": %m" +msgstr "не удалось создать каталог \"%s\": %m" + +#: dumputils.c:953 +#, fuzzy, c-format +msgid "could not change permissions of directory \"%s\": %m" +msgstr "не удалось перейти в каталог \"%s\": %m" + +#: dumputils.c:958 +#, fuzzy, c-format +msgid "directory \"%s\" is not empty" +msgstr "фильтр %s для \"%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" @@ -669,157 +763,157 @@ msgstr "" "этой таблицы после того, как родительский процесс pg_dump получил для неё " "начальную блокировку ACCESS SHARE." -#: 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 "" "параллельное восстановление возможно только для архивов, созданных pg_dump " "версии 8.0 и новее" -#: 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 -#, c-format -msgid "implied data-only restore" +#: pg_backup_archiver.c:450 +#, fuzzy, c-format +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 " @@ -828,12 +922,12 @@ 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" @@ -841,55 +935,55 @@ msgstr[0] "восстановлен %d большой объект" msgstr[1] "восстановлено %d больших объекта" msgstr[2] "восстановлено %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:4085 #, 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 "не удалось открыть файл оглавления \"%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 "не удалось закрыть файл оглавления: %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:548 #, 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)" @@ -897,221 +991,238 @@ msgstr[0] "записан %zu байт данных большого объек msgstr[1] "записано %zu байта данных большого объекта (результат = %d)" msgstr[2] "записано %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 "при обработке оглавления:" -#: 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 "из записи оглавления %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 таблицы в элементе TABLE DATA" -#: 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:4761 #, 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:4774 #, c-format msgid "worker process failed: exit code %d" msgstr "рабочий процесс завершился с кодом возврата %d" -#: pg_backup_archiver.c:2653 +#: pg_backup_archiver.c:2668 +#, fuzzy, c-format +msgid "unexpected TOC entry in WriteToc(): %d %s %s" +msgstr "прочитана запись оглавления %d (ID %d): %s %s\n" + +#: 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 "ошибка при перемещении в файле: %m" + +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "ID записи %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 "неверный элемент ENCODING: %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:3433 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "не удалось переключить пользователя сеанса на \"%s\": %s" -#: pg_backup_archiver.c:3457 +#: pg_backup_archiver.c:3575 #, 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:3636 #, 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:3685 #, 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:3734 #, c-format msgid "could not alter table access method: %s" msgstr "не удалось изменить табличный метод доступа: %s" -#: pg_backup_archiver.c:3717 +#: pg_backup_archiver.c:3835 #, 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:3970 +#, c-format +msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" +msgstr "" + +#: pg_backup_archiver.c:4118 #, c-format msgid "did not find magic string in file header" msgstr "в заголовке файла не найдена нужная сигнатура" -#: pg_backup_archiver.c:4018 +#: pg_backup_archiver.c:4132 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "неподдерживаемая версия (%d.%d) в заголовке файла" -#: pg_backup_archiver.c:4023 +#: pg_backup_archiver.c:4137 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "несоответствие размера integer (%lu)" -#: pg_backup_archiver.c:4027 +#: pg_backup_archiver.c:4141 #, c-format msgid "" "archive was made on a machine with larger integers, some operations might " @@ -1120,12 +1231,12 @@ msgstr "" "архив был сделан на компьютере большей разрядности -- возможен сбой " "некоторых операций" -#: pg_backup_archiver.c:4037 +#: pg_backup_archiver.c:4151 #, 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:4173 #, c-format msgid "" "archive is compressed, but this installation does not support compression " @@ -1134,68 +1245,62 @@ msgstr "" "архив сжат, но установленная версия не поддерживает сжатие (%s) -- данные " "будут недоступны" -#: pg_backup_archiver.c:4095 +#: pg_backup_archiver.c:4209 #, c-format msgid "invalid creation date in header" msgstr "неверная дата создания в заголовке" -#: pg_backup_archiver.c:4229 +#: pg_backup_archiver.c:4343 #, c-format msgid "processing item %d %s %s" msgstr "обработка объекта %d %s %s" -#: pg_backup_archiver.c:4314 +#: pg_backup_archiver.c:4428 #, c-format msgid "entering main parallel loop" msgstr "вход в основной параллельный цикл" -#: pg_backup_archiver.c:4325 +#: pg_backup_archiver.c:4439 #, c-format msgid "skipping item %d %s %s" msgstr "объект %d %s %s пропускается" -#: pg_backup_archiver.c:4334 +#: pg_backup_archiver.c:4448 #, c-format msgid "launching item %d %s %s" msgstr "объект %d %s %s запускается" -#: pg_backup_archiver.c:4388 +#: pg_backup_archiver.c:4502 #, c-format msgid "finished main parallel loop" msgstr "основной параллельный цикл закончен" -#: pg_backup_archiver.c:4424 +#: pg_backup_archiver.c:4538 #, c-format msgid "processing missed item %d %s %s" msgstr "обработка пропущенного объекта %d %s %s" -#: pg_backup_archiver.c:4966 +#: pg_backup_archiver.c:5080 #, 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 "ошибка при перемещении в файле: %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 " @@ -1205,109 +1310,69 @@ msgstr "" "последовательного запроса восстановления, который нельзя обработать с " "файлом, не допускающим произвольный доступ" -#: 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 "не удалось найти в архиве блок с ID %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 "при чтении данных получен неожиданный ID блока (%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" +#: pg_backup_db.c:41 +#, fuzzy, 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 -#, c-format -msgid "server version: %s; %s version: %s" -msgstr "версия сервера: %s; версия %s: %s" - -#: 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" @@ -1316,111 +1381,90 @@ msgstr[1] "запрос вернул %d строки вместо одной: %s msgstr[2] "запрос вернул %d строк вместо одной: %s" # skip-rule: language-mix -#: 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 "сбой команды COPY для таблицы \"%s\": %s" -#: pg_backup_db.c:521 pg_dump.c:2283 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "неожиданные лишние результаты получены при COPY для таблицы \"%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 "" "не удалось открыть для чтения файл оглавления больших объектов \"%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 "неверная строка в файле оглавления больших объектов \"%s\": \"%s\"" -#: pg_backup_directory.c:475 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "ошибка чтения файла оглавления больших объектов \"%s\"" -#: pg_backup_directory.c:479 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "не удалось закрыть файл оглавления больших объектов \"%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: %s" - -#: pg_backup_directory.c:728 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" msgstr "не удалось закрыть файл оглавления LO: %m" -#: pg_backup_directory.c:747 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "слишком длинное имя файла: \"%s\"" @@ -1517,59 +1561,97 @@ 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: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 #, 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 "превышен предел обработчиков штатного выхода" -#: 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_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:731 +#: pg_dump.c:828 pg_restore.c:382 +#, fuzzy, c-format +msgid "options -s/--schema-only and --statistics-only cannot be used together" +msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" + +#: pg_dump.c:830 pg_restore.c:384 +#, fuzzy, c-format +msgid "options -a/--data-only and --statistics-only cannot be used together" +msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" + +#: pg_dump.c:834 pg_restore.c:388 +#, fuzzy, c-format +msgid "options -a/--data-only and --no-data cannot be used together" +msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" + +#: pg_dump.c:836 pg_restore.c:390 +#, fuzzy, c-format +msgid "options -s/--schema-only and --no-schema cannot be used together" +msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" + +#: pg_dump.c:838 pg_restore.c:392 +#, fuzzy, c-format +msgid "options --statistics-only and --no-statistics cannot be used together" +msgstr "" +"параметры -1/--single-transaction и --transaction-size исключают друг друга" + +#: pg_dump.c:842 pg_restore.c:396 +#, fuzzy, c-format +msgid "options --statistics and --no-statistics cannot be used together" +msgstr "" +"параметры -1/--single-transaction и --transaction-size исключают друг друга" + +# TO REVEIW +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#, fuzzy, c-format +msgid "options %s and %s cannot be used together" +msgstr "параметры -d/--dbname и -f/--file исключают друг друга" + +#: 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:734 +#: pg_dump.c:856 #, c-format msgid "option --include-foreign-data is not supported with parallel backup" msgstr "" "параметр --include-foreign-data не поддерживается при копировании в " "параллельном режиме" -#: pg_dump.c:737 pg_restore.c:347 +#: 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 исключают друг друга" -#: pg_dump.c:740 pg_dumpall.c:408 pg_restore.c:375 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "параметр --if-exists требует указания -c/--clean" -#: pg_dump.c:747 +#: pg_dump.c:882 #, c-format msgid "" "option --on-conflict-do-nothing requires option --inserts, --rows-per-" @@ -1578,68 +1660,83 @@ msgstr "" "параметр --on-conflict-do-nothing требует указания --inserts, --rows-per-" "insert или --column-inserts" -#: pg_dump.c:776 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, fuzzy, c-format +msgid "could not generate restrict key" +msgstr "не удалось выполнить запрос" + +#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#, c-format +msgid "invalid restrict key" +msgstr "" + +#: pg_dump.c:903 +#, c-format +msgid "option --restrict-key can only be used with --format=plain" +msgstr "" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "нераспознанный алгоритм сжатия: \"%s\"" -#: pg_dump.c:783 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "неправильное указание сжатия: %s" -#: pg_dump.c:796 +#: pg_dump.c:945 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "pg_dump в настоящее время не поддерживает параметр сжатия \"%s\"" -#: pg_dump.c:808 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "" "параллельное резервное копирование поддерживается только с форматом " "\"каталог\"" -#: pg_dump.c:854 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "последний системный OID: %u" -#: pg_dump.c:863 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "соответствующие схемы не найдены" -#: pg_dump.c:880 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "соответствующие таблицы не найдены" -#: pg_dump.c:908 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "соответствующие расширения не найдены" -#: pg_dump.c:1092 -#, c-format +#: pg_dump.c:1251 +#, fuzzy, c-format msgid "" -"%s dumps a database as a text file or to other formats.\n" +"%s exports a PostgreSQL database as an SQL script or to other formats.\n" "\n" msgstr "" "%s сохраняет резервную копию БД в текстовом файле или другом виде.\n" "\n" -#: pg_dump.c:1093 pg_dumpall.c:635 pg_restore.c:452 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: pg_dump.c:1094 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [ПАРАМЕТР]... [ИМЯ_БД]\n" -#: pg_dump.c:1096 pg_dumpall.c:638 pg_restore.c:455 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1648,12 +1745,12 @@ msgstr "" "\n" "Общие параметры:\n" -#: pg_dump.c:1097 +#: pg_dump.c:1256 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=ИМЯ имя выходного файла или каталога\n" -#: pg_dump.c:1098 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1663,7 +1760,7 @@ msgstr "" " (пользовательский | каталог | tar |\n" " текстовый (по умолчанию))\n" -#: pg_dump.c:1100 +#: pg_dump.c:1259 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr "" @@ -1671,18 +1768,18 @@ msgstr "" "число\n" " заданий\n" -#: pg_dump.c:1101 pg_dumpall.c:640 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose режим подробных сообщений\n" -#: pg_dump.c:1102 pg_dumpall.c:641 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" # well-spelled: ИНФО -#: pg_dump.c:1103 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1691,7 +1788,7 @@ msgstr "" " -Z, --compress=МЕТОД[:ДОП_ИНФО]\n" " выполнять сжатие как указано\n" -#: pg_dump.c:1105 pg_dumpall.c:642 +#: pg_dump.c:1264 pg_dumpall.c:701 #, c-format msgid "" " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" @@ -1699,7 +1796,7 @@ msgstr "" " --lock-wait-timeout=ТАЙМ-АУТ прервать операцию при тайм-ауте блокировки " "таблицы\n" -#: pg_dump.c:1106 pg_dumpall.c:670 +#: pg_dump.c:1265 pg_dumpall.c:733 #, c-format msgid "" " --no-sync do not wait for changes to be written safely " @@ -1708,17 +1805,17 @@ msgstr "" " --no-sync не ждать надёжного сохранения изменений на " "диске\n" -#: pg_dump.c:1107 +#: pg_dump.c:1266 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=МЕТОД метод синхронизации файлов с ФС\n" -#: pg_dump.c:1108 pg_dumpall.c:643 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_dump.c:1110 pg_dumpall.c:644 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1727,35 +1824,37 @@ msgstr "" "\n" "Параметры, управляющие выводом:\n" -#: pg_dump.c:1111 pg_dumpall.c:645 -#, c-format -msgid " -a, --data-only dump only the data, not the schema\n" +#: pg_dump.c:1270 pg_dumpall.c:704 +#, fuzzy, c-format +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:1271 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects выгрузить большие объекты\n" -#: pg_dump.c:1113 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr "" " --blobs (устаревшая альтернатива --large-objects)\n" -#: pg_dump.c:1114 +#: pg_dump.c:1273 #, 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:1274 #, 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:1275 pg_restore.c:537 #, c-format msgid "" " -c, --clean clean (drop) database objects before " @@ -1764,7 +1863,7 @@ msgstr "" " -c, --clean очистить (удалить) объекты БД при " "восстановлении\n" -#: pg_dump.c:1117 +#: pg_dump.c:1276 #, c-format msgid "" " -C, --create include commands to create database in dump\n" @@ -1772,28 +1871,28 @@ msgstr "" " -C, --create добавить в копию команды создания базы " "данных\n" -#: pg_dump.c:1118 +#: pg_dump.c:1277 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr "" " -e, --extension=ШАБЛОН выгрузить только указанное расширение(я)\n" -#: pg_dump.c:1119 pg_dumpall.c:647 +#: pg_dump.c:1278 pg_dumpall.c:706 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=КОДИРОВКА выгружать данные в заданной кодировке\n" -#: pg_dump.c:1120 +#: pg_dump.c:1279 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=ШАБЛОН выгрузить только указанную схему(ы)\n" -#: pg_dump.c:1121 +#: pg_dump.c:1280 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=ШАБЛОН НЕ выгружать указанную схему(ы)\n" -#: pg_dump.c:1122 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1802,12 +1901,13 @@ msgstr "" " -O, --no-owner не восстанавливать владение объектами\n" " при использовании текстового формата\n" -#: pg_dump.c:1124 pg_dumpall.c:651 -#, c-format -msgid " -s, --schema-only dump only the schema, no data\n" +#: pg_dump.c:1283 pg_dumpall.c:710 +#, fuzzy, c-format +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:1284 #, c-format msgid "" " -S, --superuser=NAME superuser user name to use in plain-text " @@ -1816,27 +1916,27 @@ msgstr "" " -S, --superuser=ИМЯ имя пользователя, который будет задействован\n" " при восстановлении из текстового формата\n" -#: pg_dump.c:1126 +#: pg_dump.c:1285 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=ШАБЛОН выгрузить только указанную таблицу(ы)\n" -#: pg_dump.c:1127 +#: pg_dump.c:1286 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=ШАБЛОН НЕ выгружать указанную таблицу(ы)\n" -#: pg_dump.c:1128 pg_dumpall.c:654 +#: pg_dump.c:1287 pg_dumpall.c:713 #, 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:1288 pg_dumpall.c:714 #, 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:1289 pg_dumpall.c:715 #, c-format msgid "" " --column-inserts dump data as INSERT commands with column " @@ -1845,7 +1945,7 @@ msgstr "" " --column-inserts выгружать данные в виде INSERT с именами " "столбцов\n" -#: pg_dump.c:1131 pg_dumpall.c:657 +#: pg_dump.c:1290 pg_dumpall.c:716 #, c-format msgid "" " --disable-dollar-quoting disable dollar quoting, use SQL standard " @@ -1854,7 +1954,7 @@ msgstr "" " --disable-dollar-quoting отключить спецстроки с $, выводить строки\n" " по стандарту SQL\n" -#: pg_dump.c:1132 pg_dumpall.c:658 pg_restore.c:483 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, c-format msgid "" " --disable-triggers disable triggers during data-only restore\n" @@ -1862,7 +1962,7 @@ msgstr "" " --disable-triggers отключить триггеры при восстановлении\n" " только данных, без схемы\n" -#: pg_dump.c:1133 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user " @@ -1873,12 +1973,12 @@ msgstr "" "только\n" " те данные, которые доступны пользователю)\n" -#: pg_dump.c:1135 +#: pg_dump.c:1294 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=ШАБЛОН НЕ выгружать указанное расширение(я)\n" -#: pg_dump.c:1136 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1890,7 +1990,7 @@ msgstr "" " НЕ выгружать указанную таблицу(ы), а также\n" " её секции и дочерние таблицы\n" -#: pg_dump.c:1139 +#: pg_dump.c:1298 #, c-format msgid "" " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" @@ -1898,7 +1998,7 @@ msgstr "" " --exclude-table-data=ШАБЛОН НЕ выгружать данные указанной таблицы " "(таблиц)\n" -#: pg_dump.c:1140 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1910,7 +2010,7 @@ msgstr "" "(таблиц),\n" " а также её секций и дочерних таблиц\n" -#: pg_dump.c:1143 pg_dumpall.c:660 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid "" " --extra-float-digits=NUM override default setting for " @@ -1918,7 +2018,7 @@ msgid "" msgstr "" " --extra-float-digits=ЧИСЛО переопределить значение extra_float_digits\n" -#: pg_dump.c:1144 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from " @@ -1929,13 +2029,13 @@ msgstr "" " дампа в соответствии с выражениями в этом " "файле\n" -#: pg_dump.c:1146 pg_dumpall.c:662 pg_restore.c:487 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, 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:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1946,7 +2046,7 @@ msgstr "" " включать в копию данные сторонних таблиц с\n" " серверов с именами, подпадающими под ШАБЛОН\n" -#: pg_dump.c:1150 pg_dumpall.c:663 +#: pg_dump.c:1309 pg_dumpall.c:722 #, c-format msgid "" " --inserts dump data as INSERT commands, rather than " @@ -1955,57 +2055,77 @@ msgstr "" " --inserts выгрузить данные в виде команд INSERT, не " "COPY\n" -#: pg_dump.c:1151 pg_dumpall.c:664 +#: pg_dump.c:1310 pg_dumpall.c:723 #, 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 -#, c-format -msgid " --no-comments do not dump comments\n" +#: pg_dump.c:1311 pg_dumpall.c:724 +#, fuzzy, c-format +msgid " --no-comments do not dump comment commands\n" +msgstr " --no-comments не выгружать комментарии\n" + +#: pg_dump.c:1312 pg_dumpall.c:725 +#, fuzzy, c-format +msgid " --no-data do not dump data\n" +msgstr " --no-comments не выгружать комментарии\n" + +#: pg_dump.c:1313 pg_dumpall.c:726 +#, fuzzy, c-format +msgid " --no-policies do not dump row security policies\n" msgstr " --no-comments не выгружать комментарии\n" -#: pg_dump.c:1153 pg_dumpall.c:666 +#: pg_dump.c:1314 pg_dumpall.c:727 #, 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:1315 pg_dumpall.c:729 +#, fuzzy, c-format +msgid " --no-schema do not dump schema\n" +msgstr " --no-comments не выгружать комментарии\n" + +#: pg_dump.c:1316 pg_dumpall.c:730 #, 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:1317 pg_dumpall.c:731 +#, fuzzy, c-format +msgid " --no-statistics do not dump statistics\n" +msgstr " --no-subscriptions не выгружать подписки\n" + +#: pg_dump.c:1318 pg_dumpall.c:732 #, 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:1319 pg_dumpall.c:734 #, 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:1320 pg_dumpall.c:735 #, 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:1321 pg_dumpall.c:736 #, 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:1322 pg_dumpall.c:737 #, 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:1323 pg_dumpall.c:738 #, c-format msgid "" " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT " @@ -2014,7 +2134,7 @@ msgstr "" " --on-conflict-do-nothing добавлять ON CONFLICT DO NOTHING в команды " "INSERT\n" -#: pg_dump.c:1161 pg_dumpall.c:676 +#: pg_dump.c:1324 pg_dumpall.c:739 #, c-format msgid "" " --quote-all-identifiers quote all identifiers, even if not key words\n" @@ -2022,7 +2142,13 @@ msgstr "" " --quote-all-identifiers заключать в кавычки все идентификаторы,\n" " а не только ключевые слова\n" -#: pg_dump.c:1162 pg_dumpall.c:677 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, c-format +msgid "" +" --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" +msgstr "" + +#: pg_dump.c:1326 pg_dumpall.c:741 #, c-format msgid "" " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" @@ -2030,7 +2156,7 @@ msgstr "" " --rows-per-insert=ЧИСЛО число строк в одном INSERT; подразумевает --" "inserts\n" -#: pg_dump.c:1163 +#: pg_dump.c:1327 #, c-format msgid "" " --section=SECTION dump named section (pre-data, data, or post-" @@ -2039,7 +2165,14 @@ msgstr "" " --section=РАЗДЕЛ выгрузить заданный раздел\n" " (pre-data, data или post-data)\n" -#: pg_dump.c:1164 +#: pg_dump.c:1328 pg_dumpall.c:742 +#, fuzzy, c-format +msgid " --sequence-data include sequence data in dump\n" +msgstr "" +" -C, --create добавить в копию команды создания базы " +"данных\n" + +#: pg_dump.c:1329 #, c-format msgid "" " --serializable-deferrable wait until the dump can run without " @@ -2048,13 +2181,26 @@ msgstr "" " --serializable-deferrable дождаться момента для выгрузки данных без " "аномалий\n" -#: pg_dump.c:1165 +#: pg_dump.c:1330 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr "" " --snapshot=СНИМОК использовать при выгрузке заданный снимок\n" -#: pg_dump.c:1166 pg_restore.c:497 +#: pg_dump.c:1331 pg_dumpall.c:743 +#, fuzzy, c-format +msgid " --statistics dump the statistics\n" +msgstr "" +" --no-tablespaces не выгружать назначения табличных " +"пространств\n" + +#: pg_dump.c:1332 pg_dumpall.c:744 +#, fuzzy, c-format +msgid "" +" --statistics-only dump only the statistics, not schema or data\n" +msgstr " -s, --schema-only выгрузить только схему, без данных\n" + +#: pg_dump.c:1333 pg_restore.c:575 #, c-format msgid "" " --strict-names require table and/or schema include patterns " @@ -2067,7 +2213,7 @@ msgstr "" "минимум\n" " один объект\n" -#: pg_dump.c:1168 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2077,7 +2223,7 @@ msgstr "" "также\n" " её секции и дочерние таблицы\n" -#: pg_dump.c:1170 pg_dumpall.c:678 pg_restore.c:500 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2089,7 +2235,7 @@ msgstr "" " устанавливать владельца, используя команды\n" " SET SESSION AUTHORIZATION вместо ALTER OWNER\n" -#: pg_dump.c:1174 pg_dumpall.c:682 pg_restore.c:504 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2098,34 +2244,34 @@ msgstr "" "\n" "Параметры подключения:\n" -#: pg_dump.c:1175 +#: pg_dump.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=БД имя базы данных для выгрузки\n" -#: pg_dump.c:1176 pg_dumpall.c:684 pg_restore.c:505 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=ИМЯ компьютер с сервером баз данных или каталог " "сокетов\n" -#: pg_dump.c:1177 pg_dumpall.c:686 pg_restore.c:506 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=ПОРТ номер порта сервера БД\n" -#: pg_dump.c:1178 pg_dumpall.c:687 pg_restore.c:507 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=ИМЯ имя пользователя баз данных\n" -#: pg_dump.c:1179 pg_dumpall.c:688 pg_restore.c:508 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, 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:1347 pg_dumpall.c:756 pg_restore.c:587 #, c-format msgid "" " -W, --password force password prompt (should happen " @@ -2133,12 +2279,12 @@ msgid "" msgstr "" " -W, --password запрашивать пароль всегда (обычно не требуется)\n" -#: pg_dump.c:1181 pg_dumpall.c:690 +#: pg_dump.c:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ИМЯ_РОЛИ выполнить SET ROLE перед выгрузкой\n" -#: pg_dump.c:1183 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2151,22 +2297,22 @@ msgstr "" "PGDATABASE.\n" "\n" -#: pg_dump.c:1185 pg_dumpall.c:694 pg_restore.c:516 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, 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:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" -#: pg_dump.c:1205 pg_dumpall.c:518 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "указана неверная клиентская кодировка \"%s\"" -#: pg_dump.c:1352 +#: pg_dump.c:1520 #, c-format msgid "" "parallel dumps from standby servers are not supported by this server version" @@ -2174,170 +2320,175 @@ msgstr "" "выгрузка дампа в параллельном режиме с ведомых серверов не поддерживается " "данной версией сервера" -#: pg_dump.c:1417 +#: pg_dump.c:1585 #, 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:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "неверное полное имя (слишком много компонентов): %s" -#: pg_dump.c:1466 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "схемы, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1519 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "расширения, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1572 +#: pg_dump.c:1740 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "сторонние серверы, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1643 +#: pg_dump.c:1811 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "неверное имя отношения (слишком много компонентов): %s" -#: pg_dump.c:1665 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "таблицы, соответствующие шаблону \"%s\", не найдены" -#: pg_dump.c:1692 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "В данный момент вы не подключены к базе данных." -#: pg_dump.c:1695 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "ссылки между базами не реализованы: %s" -#: pg_dump.c:2154 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "выгрузка содержимого таблицы \"%s.%s\"" -#: pg_dump.c:2264 +#: pg_dump.c:2439 #, 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:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "Сообщение об ошибке с сервера: %s" # skip-rule: language-mix -#: pg_dump.c:2266 pg_dump.c:2276 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "Выполнялась команда: %s" -#: pg_dump.c:2274 +#: pg_dump.c:2449 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Ошибка выгрузки таблицы \"%s\": сбой в PQgetResult()." -#: pg_dump.c:2365 +#: pg_dump.c:2540 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "из таблицы \"%s\" получено неверное количество полей" -#: pg_dump.c:3067 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "сохранение определения базы данных" -#: pg_dump.c:3176 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "нераспознанный провайдер локали: %s" -#: pg_dump.c:3537 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "сохранение кодировки (%s)" -#: pg_dump.c:3562 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "сохранение \"standard_conforming_strings = %s\"" -#: pg_dump.c:3601 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "не удалось разобрать результат current_schemas()" -#: pg_dump.c:3620 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "сохранение \"search_path = %s\"" -#: pg_dump.c:3656 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "чтение больших объектов" -#: pg_dump.c:3877 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "сохранение больших объектов \"%s\"" -#: pg_dump.c:3898 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "ошибка чтения большого объекта %u: %s" -#: pg_dump.c:4001 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "чтение политик защиты на уровне строк" -#: pg_dump.c:4142 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "нераспознанный тип команды в политике: %c" -#: pg_dump.c:4592 pg_dump.c:5150 pg_dump.c:12364 pg_dump.c:18249 -#: pg_dump.c:18251 pg_dump.c:18873 +#: 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 #, c-format msgid "could not parse %s array" msgstr "не удалось разобрать массив %s" -#: pg_dump.c:4806 +#: pg_dump.c:5002 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "" "подписки не выгружены, так как текущий пользователь не суперпользователь" -#: pg_dump.c:5012 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "подписка с OID %u не существует" -#: pg_dump.c:5019 +#: pg_dump.c:5213 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "нарушение целостности: таблица с OID %u не найдена" -#: pg_dump.c:5582 +#: pg_dump.c:5799 #, c-format msgid "could not find parent extension for %s %s" msgstr "не удалось найти родительское расширение для %s %s" -#: pg_dump.c:5727 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "схема с OID %u не существует" -#: pg_dump.c:7209 pg_dump.c:17620 +#: pg_dump.c:6994 +#, c-format +msgid "cannot dump statistics for relation kind \"%c\"" +msgstr "" + +#: pg_dump.c:7506 pg_dump.c:18987 #, c-format msgid "" "failed sanity check, parent table with OID %u of sequence with OID %u not " @@ -2346,7 +2497,7 @@ msgstr "" "нарушение целостности: по OID %u не удалось найти родительскую таблицу " "последовательности с OID %u" -#: pg_dump.c:7354 +#: pg_dump.c:7651 #, c-format msgid "" "failed sanity check, table OID %u appearing in pg_partitioned_table not found" @@ -2354,18 +2505,18 @@ msgstr "" "нарушение целостности: таблица с OID %u, фигурирующим в " "pg_partitioned_table, не найдена" -#: pg_dump.c:7585 pg_dump.c:7859 pg_dump.c:8306 pg_dump.c:8920 pg_dump.c:9042 -#: pg_dump.c:9190 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "нераспознанный OID таблицы %u" -#: pg_dump.c:7589 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "неожиданно получены данные индекса для таблицы \"%s\"" -#: pg_dump.c:8091 +#: pg_dump.c:8459 #, c-format msgid "" "failed sanity check, parent table with OID %u of pg_rewrite entry with OID " @@ -2374,32 +2525,37 @@ msgstr "" "нарушение целостности: по OID %u не удалось найти родительскую таблицу для " "записи pg_rewrite с OID %u" -#: pg_dump.c:8924 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "неожиданно получены данные столбцов для таблицы \"%s\"" -#: pg_dump.c:8953 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "неверная нумерация столбцов в таблице \"%s\"" -#: pg_dump.c:9004 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "поиск выражений по умолчанию для таблиц" -#: pg_dump.c:9046 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "неверное значение adnum (%d) в таблице \"%s\"" -#: pg_dump.c:9140 +#: pg_dump.c:9553 +#, fuzzy, c-format +msgid "finding invalid not-null constraints" +msgstr "поиск ограничений-проверок для таблиц" + +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "поиск ограничений-проверок для таблиц" -#: pg_dump.c:9194 +#: pg_dump.c:9705 #, 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" @@ -2410,59 +2566,74 @@ msgstr[1] "" msgstr[2] "" "ожидалось %d ограничений-проверок для таблицы \"%s\", но найдено: %d" -#: pg_dump.c:9198 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "Возможно, повреждены системные каталоги." -#: pg_dump.c:9888 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "роль с OID %u не существует" -#: pg_dump.c:10000 pg_dump.c:10029 +#: pg_dump.c:10626 pg_dump.c:10655 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "неподдерживаемая запись в pg_init_privs: %u %u %d" -#: pg_dump.c:10576 +#: pg_dump.c:10951 +#, c-format +msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" +msgstr "" + +#: pg_dump.c:11092 +#, fuzzy, c-format +msgid "unexpected null attname" +msgstr "неожиданный конец файла" + +#: pg_dump.c:11121 +#, fuzzy, c-format +msgid "could not find index attname \"%s\"" +msgstr "не удалось подключиться к базе данных: \"%s\"" + +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "отсутствуют метаданные о больших объектах \"%s\"" -#: pg_dump.c:10859 +#: pg_dump.c:11893 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "у типа данных \"%s\" по-видимому неправильный тип типа" # TO REVEIW -#: pg_dump.c:12433 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "недопустимое значение provolatile для функции \"%s\"" # TO REVEIW -#: pg_dump.c:12483 pg_dump.c:14379 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "недопустимое значение proparallel для функции \"%s\"" -#: pg_dump.c:12613 pg_dump.c:12719 pg_dump.c:12726 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, c-format msgid "could not find function definition for function with OID %u" msgstr "не удалось найти определение функции для функции с OID %u" -#: pg_dump.c:12652 +#: pg_dump.c:13740 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "неприемлемое значение в поле pg_cast.castfunc или pg_cast.castmethod" -#: pg_dump.c:12655 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "неприемлемое значение в поле pg_cast.castmethod" -#: pg_dump.c:12745 +#: pg_dump.c:13833 #, c-format msgid "" "bogus transform definition, at least one of trffromsql and trftosql should " @@ -2471,63 +2642,63 @@ msgstr "" "неприемлемое определение преобразования (trffromsql или trftosql должно быть " "ненулевым)" -#: pg_dump.c:12762 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "неприемлемое значение в поле pg_transform.trffromsql" -#: pg_dump.c:12783 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "неприемлемое значение в поле pg_transform.trftosql" -#: pg_dump.c:12928 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "постфиксные операторы больше не поддерживаются (оператор \"%s\")" -#: pg_dump.c:13098 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "оператор с OID %s не найден" -#: pg_dump.c:13166 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "неверный тип \"%c\" метода доступа \"%s\"" -#: pg_dump.c:13840 pg_dump.c:13908 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "нераспознанный провайдер правил сортировки: %s" -#: pg_dump.c:13849 pg_dump.c:13856 pg_dump.c:13867 pg_dump.c:13877 -#: pg_dump.c:13892 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "неверное правило сортировки \"%s\"" -#: pg_dump.c:14298 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "нераспознанное значение aggfinalmodify для агрегата \"%s\"" -#: pg_dump.c:14354 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "нераспознанное значение aggmfinalmodify для агрегата \"%s\"" -#: pg_dump.c:15071 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "нераспознанный тип объекта в определении прав по умолчанию: %d" -#: pg_dump.c:15087 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "не удалось разобрать список прав по умолчанию (%s)" -#: pg_dump.c:15171 +#: pg_dump.c:16262 #, c-format msgid "" "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" @@ -2535,20 +2706,20 @@ msgstr "" "не удалось разобрать изначальный список ACL (%s) или ACL по умолчанию (%s) " "для объекта \"%s\" (%s)" -#: pg_dump.c:15196 +#: pg_dump.c:16287 #, 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:15739 +#: pg_dump.c:16830 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "" "запрос на получение определения представления \"%s\" не возвратил данные" -#: pg_dump.c:15742 +#: pg_dump.c:16833 #, c-format msgid "" "query to obtain definition of view \"%s\" returned more than one definition" @@ -2556,49 +2727,54 @@ msgstr "" "запрос на получение определения представления \"%s\" возвратил несколько " "определений" -#: pg_dump.c:15749 +#: pg_dump.c:16840 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "определение представления \"%s\" пустое (длина равна нулю)" -#: pg_dump.c:15834 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "свойство WITH OIDS больше не поддерживается (таблица \"%s\")" -#: pg_dump.c:16821 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "неверный номер столбца %d для таблицы \"%s\"" -#: pg_dump.c:16899 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "не удалось разобрать столбцы статистики в индексе" -#: pg_dump.c:16901 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "не удалось разобрать значения статистики в индексе" -#: pg_dump.c:16903 +#: pg_dump.c:18147 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "" "столбцы, задающие статистику индекса, не соответствуют значениям по " "количеству" -#: pg_dump.c:17118 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "отсутствует индекс для ограничения \"%s\"" -#: pg_dump.c:17353 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "нераспознанный тип ограничения: %c" -#: pg_dump.c:17454 pg_dump.c:17684 +#: pg_dump.c:18698 +#, c-format +msgid "unrecognized sequence type: %s" +msgstr "нераспознанный тип последовательности: %s" + +#: pg_dump.c:18830 pg_dump.c:19062 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "" @@ -2613,12 +2789,12 @@ msgstr[2] "" "запрос на получение данных последовательности \"%s\" вернул %d строк " "(ожидалась 1)" -#: pg_dump.c:17486 -#, c-format -msgid "unrecognized sequence type: %s" +#: pg_dump.c:18866 +#, fuzzy, c-format +msgid "unrecognized sequence type: %d" msgstr "нераспознанный тип последовательности: %s" -#: pg_dump.c:18001 +#: pg_dump.c:19395 #, c-format msgid "" "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows " @@ -2627,53 +2803,53 @@ msgstr "" "запрос на получение правила \"%s\" для таблицы \"%s\" возвратил неверное " "число строк" -#: pg_dump.c:18154 +#: pg_dump.c:19548 #, c-format msgid "could not find referenced extension %u" msgstr "не удалось найти упомянутое расширение %u" -#: pg_dump.c:18253 +#: pg_dump.c:19647 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "конфигурации расширения не соответствуют условиям по количеству" -#: pg_dump.c:18385 +#: pg_dump.c:19779 #, c-format msgid "reading dependency data" msgstr "чтение информации о зависимостях" -#: pg_dump.c:18471 +#: pg_dump.c:19865 #, c-format msgid "no referencing object %u %u" msgstr "нет подчинённого объекта %u %u" -#: pg_dump.c:18482 +#: pg_dump.c:19876 #, c-format msgid "no referenced object %u %u" msgstr "нет вышестоящего объекта %u %u" -#: pg_dump.c:18907 pg_dump.c:18945 pg_dumpall.c:1962 pg_restore.c:551 -#: pg_restore.c:597 +#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "фильтр %s для \"%s\" не допускается" -#: pg_dump_sort.c:424 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "неверный dumpId %d" -#: pg_dump_sort.c:430 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "неверная зависимость %d" -#: pg_dump_sort.c:594 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "не удалось определить цикл зависимостей" -#: pg_dump_sort.c:1209 +#: pg_dump_sort.c:1462 #, c-format msgid "there are circular foreign-key constraints on this table:" msgid_plural "there are circular foreign-key constraints among these tables:" @@ -2681,7 +2857,7 @@ msgstr[0] "в следующей таблице зациклены ограни msgstr[1] "в следующих таблицах зациклены ограничения внешних ключей:" msgstr[2] "в следующих таблицах зациклены ограничения внешних ключей:" -#: pg_dump_sort.c:1214 +#: pg_dump_sort.c:1467 #, c-format msgid "" "You might not be able to restore the dump without using --disable-triggers " @@ -2690,7 +2866,7 @@ msgstr "" "Возможно, для восстановления базы потребуется использовать --disable-" "triggers или временно удалить ограничения." -#: pg_dump_sort.c:1215 +#: pg_dump_sort.c:1468 #, c-format msgid "" "Consider using a full dump instead of a --data-only dump to avoid this " @@ -2699,26 +2875,26 @@ msgstr "" "Во избежание этой проблемы, вероятно, стоит выгружать всю базу данных, а не " "только данные (--data-only)." -#: pg_dump_sort.c:1227 +#: pg_dump_sort.c:1480 #, 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 +#: pg_dumpall.c:402 #, c-format msgid "" "option --exclude-database cannot be used together with -g/--globals-only, -" @@ -2727,30 +2903,25 @@ msgstr "" "параметр --exclude-database несовместим с -g/--globals-only, -r/--roles-only " "и -t/--tablespaces-only" -#: pg_dumpall.c:395 +#: 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:402 +#: 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:412 +#: 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:474 pg_dumpall.c:1771 -#, c-format -msgid "could not connect to database \"%s\"" -msgstr "не удалось подключиться к базе данных: \"%s\"" - -#: pg_dumpall.c:486 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2759,26 +2930,26 @@ msgstr "" "не удалось подключиться к базе данных \"postgres\" или \"template1\"\n" "Укажите другую базу данных." -#: pg_dumpall.c:634 -#, c-format +#: pg_dumpall.c:693 +#, fuzzy, c-format msgid "" -"%s extracts a PostgreSQL database cluster into an SQL script file.\n" +"%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:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [ПАРАМЕТР]...\n" -#: pg_dumpall.c:639 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=ИМЯ_ФАЙЛА имя выходного файла\n" -#: pg_dumpall.c:646 +#: pg_dumpall.c:705 #, c-format msgid "" " -c, --clean clean (drop) databases before recreating\n" @@ -2786,18 +2957,18 @@ msgstr "" " -c, --clean очистить (удалить) базы данных перед\n" " восстановлением\n" -#: pg_dumpall.c:648 +#: pg_dumpall.c:707 #, 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:708 pg_restore.c:546 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner не восстанавливать владение объектами\n" -#: pg_dumpall.c:650 +#: pg_dumpall.c:709 #, c-format msgid "" " -r, --roles-only dump only roles, no databases or tablespaces\n" @@ -2805,13 +2976,13 @@ msgstr "" " -r, --roles-only выгрузить только роли, без баз данных\n" " и табличных пространств\n" -#: pg_dumpall.c:652 +#: pg_dumpall.c:711 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr "" " -S, --superuser=ИМЯ имя пользователя для выполнения выгрузки\n" -#: pg_dumpall.c:653 +#: pg_dumpall.c:712 #, c-format msgid "" " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" @@ -2819,7 +2990,7 @@ msgstr "" " -t, --tablespaces-only выгружать только табличные пространства,\n" " без баз данных и ролей\n" -#: pg_dumpall.c:659 +#: pg_dumpall.c:718 #, c-format msgid "" " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" @@ -2827,7 +2998,7 @@ msgstr "" " --exclude-database=ШАБЛОН исключить базы с именами, подпадающими под " "шаблон\n" -#: pg_dumpall.c:661 +#: pg_dumpall.c:720 #, c-format msgid "" " --filter=FILENAME exclude databases based on expressions in " @@ -2836,22 +3007,22 @@ msgstr "" " --filter=ИМЯ_ФАЙЛА исключать базы данных в соответствии с\n" " выражениями в этом файле\n" -#: pg_dumpall.c:667 +#: pg_dumpall.c:728 #, 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:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=СТРОКА подключиться с данной строкой подключения\n" -#: pg_dumpall.c:685 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=ИМЯ_БД выбор другой базы данных по умолчанию\n" -#: pg_dumpall.c:692 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2865,85 +3036,82 @@ msgstr "" "вывод.\n" "\n" -#: pg_dumpall.c:837 +#: pg_dumpall.c:904 #, 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:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#, c-format +msgid "found orphaned pg_auth_members entry for role %s" +msgstr "обнаружена потерянная запись pg_auth_members для роли %s" + +#: pg_dumpall.c:1154 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "не удалось найти подходящий порядок выгрузки для членов роли \"%s\"" -#: pg_dumpall.c:1194 +#: pg_dumpall.c:1309 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "не удалось разобрать список ACL (%s) для параметра \"%s\"" -#: pg_dumpall.c:1321 +#: pg_dumpall.c:1436 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "" "не удалось разобрать список управления доступом (%s) для табл. пространства " "\"%s\"" -#: pg_dumpall.c:1528 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "база данных \"%s\" исключается" -#: pg_dumpall.c:1532 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "выгрузка базы данных \"%s\"" -#: pg_dumpall.c:1563 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "ошибка при обработке базы \"%s\", pg_dump завершается" -#: pg_dumpall.c:1569 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "не удалось повторно открыть выходной файл \"%s\": %m" -#: pg_dumpall.c:1613 +#: pg_dumpall.c:1737 #, 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:1856 msgid "unsupported filter object" msgstr "неподдерживаемый объект фильтра" # TO REVEIW -#: 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" # TO REVEIW -#: pg_restore.c:336 +#: 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:350 +# TO REVEIW +#: pg_restore.c:361 +#, fuzzy, c-format +msgid "options -d/--dbname and --restrict-key cannot be used together" +msgstr "параметры -d/--dbname и -f/--file исключают друг друга" + +#: pg_restore.c:410 #, c-format msgid "" "options -1/--single-transaction and --transaction-size cannot be used " @@ -2951,28 +3119,33 @@ msgid "" msgstr "" "параметры -1/--single-transaction и --transaction-size исключают друг друга" -#: pg_restore.c:357 +#: 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:361 +#: pg_restore.c:421 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "параметр --single-transaction допускается только с одним заданием" -#: pg_restore.c:399 +#: pg_restore.c:467 +#, c-format +msgid "archive format \"%s\" is not supported; please use psql" +msgstr "" + +#: pg_restore.c:471 #, 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:509 #, c-format msgid "errors ignored on restore: %d" msgstr "при восстановлении проигнорировано ошибок: %d" -#: pg_restore.c:451 +#: pg_restore.c:522 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2982,49 +3155,49 @@ msgstr "" "pg_dump.\n" "\n" -#: pg_restore.c:453 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [ПАРАМЕТР]... [ФАЙЛ]\n" -#: pg_restore.c:456 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=БД подключиться к указанной базе данных\n" -#: pg_restore.c:457 +#: pg_restore.c:528 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr "" " -f, --file=ИМЯ_ФАЙЛА имя выходного файла (или - для вывода в stdout)\n" -#: pg_restore.c:458 +#: pg_restore.c:529 #, 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:530 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list вывести краткое оглавление архива\n" -#: pg_restore.c:460 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose выводить подробные сообщения\n" -#: pg_restore.c:461 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: pg_restore.c:462 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_restore.c:464 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -3033,35 +3206,35 @@ msgstr "" "\n" "Параметры, управляющие восстановлением:\n" -#: pg_restore.c:465 +#: pg_restore.c:536 #, 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:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create создать целевую базу данных\n" -#: pg_restore.c:468 +#: pg_restore.c:539 #, 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:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=ИМЯ восстановить указанный индекс\n" -#: pg_restore.c:470 +#: pg_restore.c:541 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr "" " -j, --jobs=ЧИСЛО распараллелить восстановление на указанное " "число заданий\n" -#: pg_restore.c:471 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3070,13 +3243,13 @@ msgstr "" " -L, --use-list=ИМЯ_ФАЙЛА использовать оглавление из этого файла для\n" " чтения/упорядочивания данных\n" -#: pg_restore.c:473 +#: pg_restore.c:544 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr "" " -n, --schema=ИМЯ восстановить объекты только в этой схеме\n" -#: pg_restore.c:474 +#: pg_restore.c:545 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr "" @@ -3084,17 +3257,17 @@ msgstr "" # skip-rule: no-space-before-parentheses # well-spelled: арг -#: pg_restore.c:476 +#: pg_restore.c:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=ИМЯ(арг-ты) восстановить заданную функцию\n" -#: pg_restore.c:477 +#: pg_restore.c:548 #, 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:549 #, c-format msgid "" " -S, --superuser=NAME superuser user name to use for disabling " @@ -3103,7 +3276,7 @@ msgstr "" " -S, --superuser=ИМЯ имя суперпользователя для отключения " "триггеров\n" -#: pg_restore.c:479 +#: pg_restore.c:550 #, c-format msgid "" " -t, --table=NAME restore named relation (table, view, etc.)\n" @@ -3111,12 +3284,12 @@ msgstr "" " -t, --table=ИМЯ восстановить заданное отношение (таблицу, " "представление и т. п.)\n" -#: pg_restore.c:480 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=ИМЯ восстановить заданный триггер\n" -#: pg_restore.c:481 +#: pg_restore.c:552 #, c-format msgid "" " -x, --no-privileges skip restoration of access privileges (grant/" @@ -3125,18 +3298,18 @@ msgstr "" " -x, --no-privileges не восстанавливать права доступа\n" " (назначение/отзыв)\n" -#: pg_restore.c:482 +#: pg_restore.c:553 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr "" " -1, --single-transaction выполнить восстановление в одной транзакции\n" -#: pg_restore.c:484 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security включить защиту на уровне строк\n" -#: pg_restore.c:485 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3145,12 +3318,17 @@ msgstr "" " --filter=ИМЯ_ФАЙЛА восстанавливать или пропускать объекты\n" " в соответствии с выражениями в этом файле\n" -#: pg_restore.c:488 -#, c-format -msgid " --no-comments do not restore comments\n" +#: pg_restore.c:559 +#, fuzzy, c-format +msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments не восстанавливать комментарии\n" -#: pg_restore.c:489 +#: pg_restore.c:560 +#, fuzzy, c-format +msgid " --no-data do not restore data\n" +msgstr " --no-comments не восстанавливать комментарии\n" + +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not " @@ -3160,35 +3338,50 @@ msgstr "" " --no-data-for-failed-tables не восстанавливать данные таблиц, которые\n" " не удалось создать\n" -#: pg_restore.c:491 +#: pg_restore.c:563 +#, fuzzy, c-format +msgid " --no-policies do not restore row security policies\n" +msgstr " --no-comments не восстанавливать комментарии\n" + +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications не восстанавливать публикации\n" -#: pg_restore.c:492 +#: pg_restore.c:565 +#, fuzzy, c-format +msgid " --no-schema do not restore schema\n" +msgstr " --no-comments не восстанавливать комментарии\n" + +#: pg_restore.c:566 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels не восстанавливать метки безопасности\n" -#: pg_restore.c:493 +#: pg_restore.c:567 +#, fuzzy, c-format +msgid " --no-statistics do not restore statistics\n" +msgstr " --no-subscriptions не восстанавливать подписки\n" + +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions не восстанавливать подписки\n" -#: pg_restore.c:494 +#: pg_restore.c:569 #, 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:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr "" " --no-tablespaces не восстанавливать назначения табл. " "пространств\n" -#: pg_restore.c:496 +#: pg_restore.c:572 #, c-format msgid "" " --section=SECTION restore named section (pre-data, data, or " @@ -3197,18 +3390,30 @@ msgstr "" " --section=РАЗДЕЛ восстановить заданный раздел\n" " (pre-data, data или post-data)\n" -#: pg_restore.c:499 +#: pg_restore.c:573 +#, fuzzy, c-format +msgid " --statistics restore the statistics\n" +msgstr " -C, --create создать целевую базу данных\n" + +#: pg_restore.c:574 +#, fuzzy, c-format +msgid "" +" --statistics-only restore only the statistics, not schema or " +"data\n" +msgstr " -s, --schema-only восстановить только схему, без данных\n" + +#: pg_restore.c:577 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr "" " --transaction-size=N выполнять COMMIT после каждых N объектов\n" -#: pg_restore.c:510 +#: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ИМЯ_РОЛИ выполнить SET ROLE перед восстановлением\n" -#: pg_restore.c:512 +#: pg_restore.c:590 #, c-format msgid "" "\n" @@ -3221,7 +3426,7 @@ msgstr "" "указывать\n" "несколько раз для выбора нескольких объектов.\n" -#: pg_restore.c:515 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -3233,6 +3438,26 @@ msgstr "" "ввода.\n" "\n" +#, c-format +#~ msgid "unhandled mode \"%s\"" +#~ msgstr "необрабатываемый режим \"%s\"" + +#, c-format +#~ msgid "could not connect to database" +#~ msgstr "не удалось переподключиться к базе" + +#, c-format +#~ msgid "reconnection failed: %s" +#~ msgstr "переподключиться не удалось: %s" + +#, c-format +#~ msgid "could not close directory \"%s\": %m" +#~ msgstr "не удалось закрыть каталог \"%s\": %m" + +#, c-format +#~ msgid "could not write to LOs TOC file: %s" +#~ msgstr "не удалось записать в файл оглавления LO: %s" + #, c-format #~ msgid "" #~ "query produced null referenced table name for foreign key trigger \"%s\" " @@ -3257,10 +3482,6 @@ msgstr "" #~ msgid "could not identify current directory: %m" #~ msgstr "не удалось определить текущий каталог: %m" -#, c-format -#~ msgid "could not change directory to \"%s\": %m" -#~ msgstr "не удалось перейти в каталог \"%s\": %m" - #, c-format #~ msgid "could not read symbolic link \"%s\": %m" #~ msgstr "не удалось прочитать символическую ссылку \"%s\": %m" @@ -3488,9 +3709,6 @@ msgstr "" #~ msgid "allocating AH for %s, format %d\n" #~ msgstr "выделение структуры AH для %s, формат %d\n" -#~ msgid "read TOC entry %d (ID %d) for %s %s\n" -#~ msgstr "прочитана запись оглавления %d (ID %d): %s %s\n" - #~ msgid "could not set default_with_oids: %s" #~ msgstr "не удалось установить параметр default_with_oids: %s" @@ -3775,9 +3993,6 @@ msgstr "" #~ msgid "missing pg_database entry for this database\n" #~ msgstr "для этой базы данных отсутствует запись в pg_database\n" -#~ msgid "found more than one pg_database entry for this database\n" -#~ msgstr "для этой базы данных найдено несколько записей в pg_database\n" - #~ msgid "could not find entry for pg_indexes in pg_class\n" #~ msgstr "для pg_indexes не найдена запись в pg_class\n" diff --git a/src/bin/pg_dump/po/sv.po b/src/bin/pg_dump/po/sv.po index 3491bc3b30116..6d1db160f39d4 100644 --- a/src/bin/pg_dump/po/sv.po +++ b/src/bin/pg_dump/po/sv.po @@ -4,10 +4,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 18\n" +"Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-05-22 18:21+0000\n" -"PO-Revision-Date: 2025-05-22 21:29+0200\n" +"POT-Creation-Date: 2025-08-16 15:22+0000\n" +"PO-Revision-Date: 2025-08-17 20:48+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -123,7 +123,7 @@ 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 parallel.c:1621 +#: ../../common/exec.c:405 parallel.c:1611 #, c-format msgid "%s() failed: %m" msgstr "%s() misslyckades: %m" @@ -165,7 +165,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:905 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 #, c-format msgid "could not open directory \"%s\": %m" msgstr "kunde inte öppna katalog \"%s\": %m" @@ -240,232 +240,232 @@ msgstr "shell-kommandots argument innehåller nyrad eller vagnretur: \"%s\"\n" msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "databasnamnet innehåller nyrad eller vagnretur: \"%s\"\n" -#: common.c:111 +#: common.c:112 #, c-format msgid "reading extensions" msgstr "läser utökningar" -#: common.c:114 +#: common.c:115 #, c-format msgid "identifying extension members" msgstr "identifierar utökningsmedlemmar" -#: common.c:117 +#: common.c:118 #, c-format msgid "reading schemas" msgstr "läser scheman" -#: common.c:126 +#: common.c:127 #, c-format msgid "reading user-defined tables" msgstr "läser användardefinierade tabeller" -#: common.c:131 +#: common.c:132 #, c-format msgid "reading user-defined functions" msgstr "läser användardefinierade funktioner" -#: common.c:135 +#: common.c:136 #, c-format msgid "reading user-defined types" msgstr "läser användardefinierade typer" -#: common.c:139 +#: common.c:140 #, c-format msgid "reading procedural languages" msgstr "läser procedurspråk" -#: common.c:142 +#: common.c:143 #, c-format msgid "reading user-defined aggregate functions" msgstr "läser användardefinierade aggregatfunktioner" -#: common.c:145 +#: common.c:146 #, c-format msgid "reading user-defined operators" msgstr "läser användardefinierade operatorer" -#: common.c:148 +#: common.c:149 #, c-format msgid "reading user-defined access methods" msgstr "läser användardefinierade accessmetoder" -#: common.c:151 +#: common.c:152 #, c-format msgid "reading user-defined operator classes" msgstr "läser användardefinierade operatorklasser" -#: common.c:154 +#: common.c:155 #, c-format msgid "reading user-defined operator families" msgstr "läser användardefinierade operator-familjer" -#: common.c:157 +#: common.c:158 #, c-format msgid "reading user-defined text search parsers" msgstr "läser användardefinierade textsöktolkare" -#: common.c:160 +#: common.c:161 #, c-format msgid "reading user-defined text search templates" msgstr "läser användardefinierade textsökmallar" -#: common.c:163 +#: common.c:164 #, c-format msgid "reading user-defined text search dictionaries" msgstr "läser användardefinierade textsökordlistor" -#: common.c:166 +#: common.c:167 #, c-format msgid "reading user-defined text search configurations" msgstr "läser användardefinierade textsökkonfigurationer" -#: common.c:169 +#: common.c:170 #, c-format msgid "reading user-defined foreign-data wrappers" msgstr "läser användardefinierade främmande data-omvandlare" -#: common.c:172 +#: common.c:173 #, c-format msgid "reading user-defined foreign servers" msgstr "läser användardefinierade främmande servrar" -#: common.c:175 +#: common.c:176 #, c-format msgid "reading default privileges" msgstr "läser standardrättigheter" -#: common.c:178 +#: common.c:179 #, c-format msgid "reading user-defined collations" msgstr "läser användardefinierade jämförelser" -#: common.c:181 +#: common.c:182 #, c-format msgid "reading user-defined conversions" msgstr "läser användardefinierade konverteringar" -#: common.c:184 +#: common.c:185 #, c-format msgid "reading type casts" msgstr "läser typomvandlingar" -#: common.c:187 +#: common.c:188 #, c-format msgid "reading transforms" msgstr "läser transformer" -#: common.c:190 +#: common.c:191 #, c-format msgid "reading table inheritance information" msgstr "läser information om arv av tabeller" -#: common.c:193 +#: common.c:194 #, c-format msgid "reading event triggers" msgstr "läser händelsetriggrar" -#: common.c:197 +#: common.c:198 #, c-format msgid "finding extension tables" msgstr "hittar utökningstabeller" -#: common.c:201 +#: common.c:202 #, c-format msgid "finding inheritance relationships" msgstr "hittar arvrelationer" -#: common.c:204 +#: common.c:205 #, c-format msgid "reading column info for interesting tables" msgstr "läser kolumninfo flr intressanta tabeller" -#: common.c:207 +#: common.c:208 #, c-format msgid "flagging inherited columns in subtables" msgstr "markerar ärvda kolumner i undertabeller" -#: common.c:210 +#: common.c:211 #, c-format msgid "reading partitioning data" msgstr "läser partitioneringsdata" -#: common.c:213 +#: common.c:214 #, c-format msgid "reading indexes" msgstr "läser index" -#: common.c:216 +#: common.c:217 #, c-format msgid "flagging indexes in partitioned tables" msgstr "flaggar index i partitionerade tabeller" -#: common.c:219 +#: common.c:220 #, c-format msgid "reading extended statistics" msgstr "läser utökad statistik" -#: common.c:222 +#: common.c:223 #, c-format msgid "reading constraints" msgstr "läser integritetsvillkor" -#: common.c:225 +#: common.c:226 #, c-format msgid "reading triggers" msgstr "läser triggrar" -#: common.c:228 +#: common.c:229 #, c-format msgid "reading rewrite rules" msgstr "läser omskrivningsregler" -#: common.c:231 +#: common.c:232 #, c-format msgid "reading policies" msgstr "läser policys" -#: common.c:234 +#: common.c:235 #, c-format msgid "reading publications" msgstr "läser publiceringar" -#: common.c:237 +#: common.c:238 #, c-format msgid "reading publication membership of tables" msgstr "läser publiceringsmedlemskap för tabeller" -#: common.c:240 +#: common.c:241 #, c-format msgid "reading publication membership of schemas" msgstr "läser publiceringsmedlemskap för scheman" -#: common.c:243 +#: common.c:244 #, c-format msgid "reading subscriptions" msgstr "läser prenumerationer" -#: common.c:246 +#: common.c:247 #, c-format msgid "reading subscription membership of tables" msgstr "läser prenumerationsmedlemskap för tabeller" -#: common.c:309 +#: common.c:310 #, c-format msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found" msgstr "misslyckades med riktighetskontroll, hittade inte förälder-OID %u för tabell \"%s\" (OID %u)" -#: common.c:351 +#: common.c:352 #, c-format msgid "invalid number of parents %d for table \"%s\"" msgstr "ogiltigt antal (%d) föräldrar för tabell \"%s\"" -#: common.c:1109 +#: common.c:1128 #, c-format msgid "could not parse numeric array \"%s\": too many numbers" msgstr "kunde inte tolka numerisk array \"%s\": för många nummer" -#: common.c:1121 +#: common.c:1140 #, c-format msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "kunde inte tolka numerisk array \"%s\": ogiltigt tecken i nummer" @@ -507,7 +507,7 @@ msgid "could not read from input file: %m" msgstr "kunde inte läsa från infilen: %m" #: compress_gzip.c:297 compress_lz4.c:630 compress_none.c:141 -#: compress_zstd.c:373 pg_backup_custom.c:648 pg_backup_directory.c:533 +#: compress_zstd.c:373 pg_backup_custom.c:648 pg_backup_directory.c:538 #: pg_backup_tar.c:740 pg_backup_tar.c:763 #, c-format msgid "could not read from input file: end of file" @@ -568,13 +568,13 @@ msgstr "kan inte hantera läget \"%s\"" msgid "Password: " msgstr "Lösenord: " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:925 -#: pg_dump_sort.c:1251 pg_dump_sort.c:1271 +#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 +#: pg_dump_sort.c:1453 pg_dump_sort.c:1473 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:552 pg_restore.c:544 +#: connectdb.c:157 pg_dumpall.c:514 #, c-format msgid "could not connect to database \"%s\"" msgstr "kunde inte ansluta till databasen \"%s\"" @@ -599,32 +599,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:1864 +#: connectdb.c:282 pg_dumpall.c:1784 #, c-format msgid "executing %s" msgstr "kör: %s" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1870 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 #, c-format msgid "query failed: %s" msgstr "fråga misslyckades: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1871 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 #, c-format msgid "Query was: %s" msgstr "Frågan var: %s" -#: dumputils.c:910 +#: dumputils.c:948 #, c-format msgid "could not create directory \"%s\": %m" msgstr "kunde inte skapa katalog \"%s\": %m" -#: dumputils.c:915 +#: dumputils.c:953 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "kunde inte ändra rättigheter på katalogen \"%s\": %m" -#: dumputils.c:920 +#: dumputils.c:958 #, c-format msgid "directory \"%s\" is not empty" msgstr "katalogen \"%s\" är inte tom" @@ -649,32 +649,32 @@ msgstr "ogiltigt format i filter som lästs från standard input på rad %d: %s" msgid "invalid format in filter read from file \"%s\" on line %d: %s" msgstr "ogiltigt format i filter som lästs från fil \"%s\" på rad %d: %s" -#: filter.c:240 filter.c:467 +#: filter.c:243 filter.c:470 #, c-format msgid "could not read from filter file \"%s\": %m" msgstr "kunde inte läsa från filterfil \"%s\": %m" -#: filter.c:243 +#: filter.c:246 msgid "unexpected end of file" msgstr "oväntat slut på fil" -#: filter.c:310 +#: filter.c:313 msgid "missing object name pattern" msgstr "saknar mall för objektnamn" -#: filter.c:421 +#: filter.c:424 msgid "no filter command found (expected \"include\" or \"exclude\")" msgstr "hittade inte filterkommandon (förväntade \"include\" eller \"exclude\")" -#: filter.c:432 +#: filter.c:435 msgid "invalid filter command (expected \"include\" or \"exclude\")" msgstr "ogiltigt filterkommando (förväntade \"include\" eller \"exclude\")" -#: filter.c:439 +#: filter.c:442 msgid "missing filter object type" msgstr "saknas typ på filterobjekt" -#: filter.c:446 +#: filter.c:449 #, c-format msgid "unsupported filter object type: \"%.*s\"" msgstr "typen för filterobjekt stöd ej: \"%.*s\"" @@ -684,27 +684,27 @@ msgstr "typen för filterobjekt stöd ej: \"%.*s\"" msgid "%s() failed: error code %d" msgstr "%s() misslyckades: felkod %d" -#: parallel.c:971 +#: parallel.c:961 #, c-format msgid "could not create communication channels: %m" msgstr "kunde inte skapa kommunikationskanaler: %m" -#: parallel.c:1028 +#: parallel.c:1018 #, c-format msgid "could not create worker process: %m" msgstr "kunde inte skapa arbetsprocess: %m" -#: parallel.c:1158 +#: parallel.c:1148 #, c-format msgid "unrecognized command received from leader: \"%s\"" msgstr "okänt kommando mottaget från ledare: \"%s\"" -#: parallel.c:1201 parallel.c:1439 +#: parallel.c:1191 parallel.c:1429 #, c-format msgid "invalid message received from worker: \"%s\"" msgstr "ogiltigt meddelande mottaget från arbetare: \"%s\"" -#: parallel.c:1333 +#: parallel.c:1323 #, c-format msgid "" "could not obtain lock on relation \"%s\"\n" @@ -714,52 +714,52 @@ msgstr "" "Dette beror oftast på att någon tagit ett ACCESS EXCLUSIVE-lås på tabellen\n" "efter att pg_dumps föräldraprocess tagit ett ACCESS SHARE-lås på tabellen." -#: parallel.c:1422 +#: parallel.c:1412 #, c-format msgid "a worker process died unexpectedly" msgstr "en arbetsprocess dog oväntat" -#: parallel.c:1544 parallel.c:1662 +#: parallel.c:1534 parallel.c:1652 #, c-format msgid "could not write to the communication channel: %m" msgstr "kunde inte skriva till kommunikationskanal: %m" -#: parallel.c:1746 +#: parallel.c:1736 #, c-format msgid "pgpipe: could not create socket: error code %d" msgstr "pgpipe: kunde inte skapa uttag (socket): felkod %d" -#: parallel.c:1757 +#: parallel.c:1747 #, c-format msgid "pgpipe: could not bind: error code %d" msgstr "pgpipe: kunde inte göra \"bind\": felkod %d" -#: parallel.c:1764 +#: parallel.c:1754 #, c-format msgid "pgpipe: could not listen: error code %d" msgstr "pgpipe: kunde inte göra \"listen\": felkod %d" -#: parallel.c:1771 +#: parallel.c:1761 #, c-format msgid "pgpipe: %s() failed: error code %d" msgstr "pgpipe: %s() misslyckades: felkod %d" -#: parallel.c:1782 +#: parallel.c:1772 #, c-format msgid "pgpipe: could not create second socket: error code %d" msgstr "pgpipe: kunde inte skapa ett andra uttag (socket): felkod %d" -#: parallel.c:1791 +#: parallel.c:1781 #, c-format msgid "pgpipe: could not connect socket: error code %d" msgstr "pgpipe: kunde itne ansluta till uttag (socket): felkod %d" -#: parallel.c:1800 +#: parallel.c:1790 #, c-format msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: kunde inte acceptera anslutning: felkod %d" -#: pg_backup_archiver.c:269 pg_backup_archiver.c:1732 +#: pg_backup_archiver.c:269 pg_backup_archiver.c:1745 #, c-format msgid "could not close output file: %m" msgstr "kunde inte stänga utdatafilen: %m" @@ -774,443 +774,442 @@ msgstr "arkivobjekten är inte i korrekt sektionsordning" msgid "unexpected section code %d" msgstr "oväntad sektionskod %d" -#: pg_backup_archiver.c:365 +#: pg_backup_archiver.c:360 #, c-format msgid "parallel restore is not supported with this archive file format" msgstr "parallell återställning stöds inte med detta arkivformat" -#: pg_backup_archiver.c:369 +#: pg_backup_archiver.c:364 #, c-format msgid "parallel restore is not supported with archives made by pre-8.0 pg_dump" msgstr "parallell återställning stöds inte med arkiv som skapats av en pre-8.0 pg_dump" -#: pg_backup_archiver.c:390 +#: pg_backup_archiver.c:385 #, c-format msgid "cannot restore from compressed archive (%s)" msgstr "kan inte återställa från komprimerat arkiv (%s)" -#: pg_backup_archiver.c:410 +#: pg_backup_archiver.c:405 #, c-format msgid "connecting to database for restore" msgstr "kopplar upp mot databas för återställning" -#: pg_backup_archiver.c:412 +#: pg_backup_archiver.c:407 #, c-format msgid "direct database connections are not supported in pre-1.3 archives" msgstr "direkta databasuppkopplingar stöds inte i arkiv från före version 1.3" -#: pg_backup_archiver.c:455 -#, fuzzy, c-format -#| msgid "implied data-only restore" +#: pg_backup_archiver.c:450 +#, c-format msgid "implied no-schema restore" -msgstr "implicerad återställning av enbart data" +msgstr "implicerad återställning av icke-schema" -#: pg_backup_archiver.c:523 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "tar bort %s %s" -#: pg_backup_archiver.c:655 +#: pg_backup_archiver.c:661 #, c-format msgid "could not find where to insert IF EXISTS in statement \"%s\"" msgstr "kunde inte hitta var IF EXISTS skulle stoppas in i sats \"%s\"" -#: pg_backup_archiver.c:841 pg_backup_archiver.c:843 +#: pg_backup_archiver.c:855 pg_backup_archiver.c:857 #, c-format msgid "warning from original dump file: %s" msgstr "varning från orginaldumpfilen: %s" -#: pg_backup_archiver.c:877 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "skapar %s \"%s.%s\"" -#: pg_backup_archiver.c:880 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "skapar %s \"%s\"" -#: pg_backup_archiver.c:930 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "kopplar upp mot ny databas \"%s\"" -#: pg_backup_archiver.c:957 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "processar %s" -#: pg_backup_archiver.c:979 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "processar data för tabell \"%s.%s\"" -#: pg_backup_archiver.c:1049 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "kör %s %s" -#: pg_backup_archiver.c:1118 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "stänger av trigger för %s" -#: pg_backup_archiver.c:1144 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "slår på trigger för %s" -#: pg_backup_archiver.c:1209 +#: pg_backup_archiver.c:1223 #, c-format msgid "internal error -- WriteData cannot be called outside the context of a DataDumper routine" msgstr "internt fel -- WriteData kan inte anropas utanför kontexten av en DataDumper-rutin" -#: pg_backup_archiver.c:1404 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "utmatning av stora objekt stöds inte i det valda formatet" -#: pg_backup_archiver.c:1467 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "återställde %d stor objekt" msgstr[1] "återställde %d stora objekt" -#: pg_backup_archiver.c:1494 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 "återställer stort objekt med OID %u" -#: pg_backup_archiver.c:1506 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "kunde inte skapa stort objekt %u: %s" -#: pg_backup_archiver.c:1511 pg_dump.c:4063 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "kunde inte öppna stort objekt %u: %s" -#: pg_backup_archiver.c:1567 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" msgstr "kunde inte öppna TOC-filen \"%s\": %m" -#: pg_backup_archiver.c:1595 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "rad ignorerad: %s" -#: pg_backup_archiver.c:1602 pg_backup_db.c:548 +#: pg_backup_archiver.c:1616 pg_backup_db.c:548 #, c-format msgid "could not find entry for ID %d" msgstr "kunde inte hitta en post för ID %d" -#: pg_backup_archiver.c:1625 pg_backup_directory.c:187 -#: pg_backup_directory.c:581 +#: pg_backup_archiver.c:1639 pg_backup_directory.c:187 +#: pg_backup_directory.c:586 #, c-format msgid "could not close TOC file: %m" msgstr "kunde inte stänga TOC-filen: %m" -#: pg_backup_archiver.c:1713 pg_backup_custom.c:151 pg_backup_directory.c:301 -#: pg_backup_directory.c:568 pg_backup_directory.c:634 -#: pg_backup_directory.c:652 pg_dumpall.c:534 +#: pg_backup_archiver.c:1726 pg_backup_custom.c:151 pg_backup_directory.c:301 +#: pg_backup_directory.c:573 pg_backup_directory.c:639 +#: pg_backup_directory.c:657 pg_dumpall.c:548 #, c-format msgid "could not open output file \"%s\": %m" msgstr "kunde inte öppna utdatafilen \"%s\": %m" -#: pg_backup_archiver.c:1715 pg_backup_custom.c:157 +#: pg_backup_archiver.c:1728 pg_backup_custom.c:157 #, c-format msgid "could not open output file: %m" msgstr "kunde inte öppna utdatafilen: %m" -#: pg_backup_archiver.c:1798 +#: 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)" msgstr[0] "skrev %zu byte data av stort objekt (resultat = %d)" msgstr[1] "skrev %zu bytes data av stort objekt (resultat = %d)" -#: pg_backup_archiver.c:1804 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "kunde inte skriva till stort objekt: %s" -#: pg_backup_archiver.c:1894 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" msgstr "vid INITIERING:" -#: pg_backup_archiver.c:1899 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" msgstr "vid HANTERING AV TOC:" -#: pg_backup_archiver.c:1904 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" msgstr "vid SLUTFÖRANDE:" -#: pg_backup_archiver.c:1909 +#: pg_backup_archiver.c:1922 #, c-format msgid "from TOC entry %d; %u %u %s %s %s" msgstr "från TOC-post %d; %u %u %s %s %s" -#: pg_backup_archiver.c:1985 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "felaktigt dumpId" -#: pg_backup_archiver.c:2006 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "felaktig tabell-dumpId för TABLE DATA-objekt" -#: pg_backup_archiver.c:2098 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "oväntad data-offset-flagga %d" -#: pg_backup_archiver.c:2111 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "fil-offset i dumpfilen är för stort" -#: pg_backup_archiver.c:2222 pg_restore.c:847 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "katalognamn för långt: \"%s\"" -#: pg_backup_archiver.c:2272 +#: pg_backup_archiver.c:2285 #, c-format msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does not exist)" msgstr "katalogen \"%s\" verkar inte vara ett giltigt arkiv (\"toc.dat\" finns inte)" -#: pg_backup_archiver.c:2280 pg_backup_custom.c:168 pg_backup_custom.c:813 +#: pg_backup_archiver.c:2293 pg_backup_custom.c:168 pg_backup_custom.c:813 #: pg_backup_directory.c:172 pg_backup_directory.c:364 #, c-format msgid "could not open input file \"%s\": %m" msgstr "kunde inte öppna indatafilen \"%s\": %m" -#: pg_backup_archiver.c:2287 pg_backup_custom.c:174 +#: pg_backup_archiver.c:2300 pg_backup_custom.c:174 #, c-format msgid "could not open input file: %m" msgstr "kan inte öppna infil: %m" -#: pg_backup_archiver.c:2293 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "kan inte läsa infilen: %m" -#: pg_backup_archiver.c:2295 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "indatafilen är för kort (läste %lu, förväntade 5)" -#: pg_backup_archiver.c:2327 +#: pg_backup_archiver.c:2340 #, c-format msgid "input file appears to be a text format dump. Please use psql." msgstr "indatafilen verkar vara en dump i textformat. Använd psql." -#: pg_backup_archiver.c:2333 +#: pg_backup_archiver.c:2346 #, c-format msgid "input file does not appear to be a valid archive (too short?)" msgstr "indatafilen verkar inte vara ett korrekt arkiv (för kort?)" -#: pg_backup_archiver.c:2339 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "indatafilen verkar inte vara ett korrekt arkiv" -#: pg_backup_archiver.c:2348 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "kunde inte stänga indatafilen: %m" -#: pg_backup_archiver.c:2427 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "kunde inte öppna stdout för append: %m" -#: pg_backup_archiver.c:2472 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "känner inte igen filformat \"%d\"" -#: pg_backup_archiver.c:2553 pg_backup_archiver.c:4774 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4761 #, c-format msgid "finished item %d %s %s" msgstr "klar med objekt %d %s %s" -#: pg_backup_archiver.c:2557 pg_backup_archiver.c:4787 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4774 #, c-format msgid "worker process failed: exit code %d" msgstr "arbetsprocess misslyckades: felkod %d" -#: pg_backup_archiver.c:2655 +#: pg_backup_archiver.c:2668 #, c-format msgid "unexpected TOC entry in WriteToc(): %d %s %s" msgstr "oväntad TOC-post i WriteToc(): %d %s %s" -#: pg_backup_archiver.c:2659 pg_backup_custom.c:440 pg_backup_custom.c:506 +#: 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 "fel vid sökning: %m" -#: pg_backup_archiver.c:2717 +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "post-ID %d utanför sitt intervall -- kanske en trasig TOC" -#: pg_backup_archiver.c:2800 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "återeställa tabeller med WITH OIDS stöds inte längre" -#: pg_backup_archiver.c:2882 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "okänd teckenkodning \"%s\"" -#: pg_backup_archiver.c:2888 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" msgstr "ogiltigt ENCODING-val: %s" -#: pg_backup_archiver.c:2906 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" msgstr "ogiltigt STDSTRINGS-val: %s" -#: pg_backup_archiver.c:2931 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "schema \"%s\" hittades inte" -#: pg_backup_archiver.c:2938 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "tabell \"%s\" hittades inte" -#: pg_backup_archiver.c:2945 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "index \"%s\" hittades inte" -#: pg_backup_archiver.c:2952 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "funktion \"%s\" hittades inte" -#: pg_backup_archiver.c:2959 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "trigger \"%s\" hittades inte" -#: pg_backup_archiver.c:3420 +#: pg_backup_archiver.c:3433 #, 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:3552 +#: pg_backup_archiver.c:3575 #, 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:3613 +#: pg_backup_archiver.c:3636 #, 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:3662 +#: pg_backup_archiver.c:3685 #, 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:3711 +#: pg_backup_archiver.c:3734 #, c-format msgid "could not alter table access method: %s" msgstr "kunde inte ändra tabellaccessmetod: %s" -#: pg_backup_archiver.c:3812 +#: pg_backup_archiver.c:3835 #, 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:3947 +#: pg_backup_archiver.c:3970 #, 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:4131 +#: pg_backup_archiver.c:4118 #, 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:4145 +#: pg_backup_archiver.c:4132 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "ej supportad version (%d.%d) i filhuvudet" -#: pg_backup_archiver.c:4150 +#: pg_backup_archiver.c:4137 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "riktighetskontroll på heltalsstorlek (%lu) misslyckades" -#: pg_backup_archiver.c:4154 +#: pg_backup_archiver.c:4141 #, 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:4164 +#: pg_backup_archiver.c:4151 #, 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:4186 +#: pg_backup_archiver.c:4173 #, 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:4222 +#: pg_backup_archiver.c:4209 #, c-format msgid "invalid creation date in header" msgstr "ogiltig skapandedatum i huvud" -#: pg_backup_archiver.c:4356 +#: pg_backup_archiver.c:4343 #, c-format msgid "processing item %d %s %s" msgstr "processar objekt %d %s %s" -#: pg_backup_archiver.c:4441 +#: pg_backup_archiver.c:4428 #, c-format msgid "entering main parallel loop" msgstr "går in i parallella huvudloopen" -#: pg_backup_archiver.c:4452 +#: pg_backup_archiver.c:4439 #, c-format msgid "skipping item %d %s %s" msgstr "hoppar över objekt %d %s %s" -#: pg_backup_archiver.c:4461 +#: pg_backup_archiver.c:4448 #, c-format msgid "launching item %d %s %s" msgstr "startar objekt %d %s %s" -#: pg_backup_archiver.c:4515 +#: pg_backup_archiver.c:4502 #, c-format msgid "finished main parallel loop" msgstr "klar med parallella huvudloopen" -#: pg_backup_archiver.c:4551 +#: pg_backup_archiver.c:4538 #, c-format msgid "processing missed item %d %s %s" msgstr "processar saknat objekt %d %s %s" -#: pg_backup_archiver.c:5093 +#: pg_backup_archiver.c:5080 #, 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" @@ -1327,7 +1326,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:2439 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "oväntade extraresultat under kopiering (COPY) av tabell \"%s\"" @@ -1345,8 +1344,8 @@ msgstr "kunde inte genomföra databastransaktionen" msgid "no output directory specified" msgstr "ingen utdatakatalog angiven" -#: pg_backup_directory.c:325 pg_backup_directory.c:474 -#: pg_backup_directory.c:512 +#: pg_backup_directory.c:325 pg_backup_directory.c:479 +#: pg_backup_directory.c:517 #, c-format msgid "could not write to output file: %s" msgstr "kunde inte skriva till utdatafil: %s" @@ -1361,42 +1360,42 @@ msgstr "kan inte stänga datafil: %m" msgid "could not close data file \"%s\": %m" msgstr "kan inte stänga datafil \"%s\": %m" -#: pg_backup_directory.c:423 +#: pg_backup_directory.c:428 #, c-format msgid "could not open large object TOC file \"%s\" for input: %m" msgstr "kunde inte öppna stora objekts TOC-fil \"%s\" för läsning: %m" -#: pg_backup_directory.c:434 +#: pg_backup_directory.c:439 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" msgstr "ogiltig rad i stora objekts TOC-fil \"%s\": \"%s\"" -#: pg_backup_directory.c:443 +#: pg_backup_directory.c:448 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "fel vid lösning av stora objekts TOC-fil \"%s\"" -#: pg_backup_directory.c:447 +#: pg_backup_directory.c:452 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "kunde inte stänga stora objekts TOC-fil \"%s\": %m" -#: pg_backup_directory.c:670 +#: pg_backup_directory.c:675 #, c-format msgid "could not close LO data file: %m" msgstr "kan inte stänga LO-datafil: %m" -#: pg_backup_directory.c:680 +#: pg_backup_directory.c:685 #, c-format msgid "could not write to LOs TOC file: %s" msgstr "kunde inte skriva till TOC-fil för LO: %s" -#: pg_backup_directory.c:696 +#: pg_backup_directory.c:701 #, c-format msgid "could not close LOs TOC file: %m" msgstr "kunde inte stänga TOC-fil för LO: %m" -#: pg_backup_directory.c:715 +#: pg_backup_directory.c:720 #, c-format msgid "file name too long: \"%s\"" msgstr "filnamnet är för långt: \"%s\"" @@ -1489,10 +1488,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:803 pg_dump.c:820 pg_dumpall.c:387 -#: pg_dumpall.c:397 pg_dumpall.c:405 pg_dumpall.c:413 pg_dumpall.c:420 -#: pg_dumpall.c:430 pg_dumpall.c:445 pg_dumpall.c:568 pg_restore.c:361 -#: pg_restore.c:377 pg_restore.c:388 pg_restore.c:398 pg_restore.c:527 +#: 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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Försök med \"%s --help\" för mer information." @@ -1502,61 +1501,50 @@ 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:818 pg_dumpall.c:395 pg_restore.c:375 +#: pg_dump.c:814 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:830 pg_restore.c:406 +#: 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:832 pg_restore.c:408 +#: 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:834 pg_restore.c:410 +#: 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:838 pg_restore.c:414 -#, fuzzy, c-format -#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#: pg_dump.c:834 pg_restore.c:388 +#, c-format msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "flaggorna \"bara schema\" (-s) och \"bara data\" (-a) kan inte användas tillsammans" +msgstr "flaggorna -a/--data-only och --no-data kan inte användas tillsammans" -#: pg_dump.c:840 pg_restore.c:416 -#, fuzzy, c-format -#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#: pg_dump.c:836 pg_restore.c:390 +#, c-format msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "flaggorna \"bara schema\" (-s) och \"bara data\" (-a) kan inte användas tillsammans" +msgstr "flaggorna -s/--schema-only och --no-schema kan inte användas tillsammans" -#: pg_dump.c:842 pg_restore.c:418 -#, fuzzy, c-format -#| msgid "options -1/--single-transaction and --transaction-size cannot be used together" +#: pg_dump.c:838 pg_restore.c:392 +#, c-format msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "flaggorna -1/--single-transaction och --transaction-size kan inte användas tillsammans" +msgstr "flaggorna --statistics-only och --no-statistics kan inte användas tillsammans" -#: pg_dump.c:846 pg_restore.c:422 -#, fuzzy, c-format -#| msgid "options -c/--clean and -a/--data-only cannot be used together" -msgid "options --with-data and --no-data cannot be used together" -msgstr "flaggorna \"nollställ\" (-c) och \"bara data\" (-a) kan inte användas tillsammans" - -#: pg_dump.c:848 pg_restore.c:424 -#, fuzzy, c-format -#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" -msgid "options --with-schema and --no-schema cannot be used together" -msgstr "flaggorna \"bara schema\" (-s) och \"bara data\" (-a) 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:850 pg_restore.c:426 -#, fuzzy, c-format -#| msgid "options -1/--single-transaction and --transaction-size cannot be used together" -msgid "options --with-statistics and --no-statistics cannot be used together" -msgstr "flaggorna -1/--single-transaction och --transaction-size kan inte användas tillsammans" +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#, 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 @@ -1568,81 +1556,96 @@ msgstr "flaggorna -s/--schema-only och --include-foreign-data kan inte användas 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:429 +#: pg_dump.c:859 pg_restore.c:407 #, 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" -#: pg_dump.c:862 pg_dumpall.c:425 pg_restore.c:472 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "flaggan --if-exists kräver flaggan -c/--clean" -#: pg_dump.c:884 +#: pg_dump.c:882 #, 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" -#: pg_dump.c:913 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, 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 +#, c-format +msgid "invalid restrict key" +msgstr "ogiltig begränsningsnyckel" + +#: pg_dump.c:903 +#, 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" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "okänd komprimeringsalgoritm: \"%s\"" -#: pg_dump.c:920 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "ogiltig inställning för komprimering: %s" -#: pg_dump.c:933 +#: pg_dump.c:945 #, 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:945 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "parallell backup stöds bara med katalogformat" -#: pg_dump.c:991 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "sista inbyggda OID är %u" -#: pg_dump.c:1000 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "hittade inga matchande scheman" -#: pg_dump.c:1017 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "hittade inga matchande tabeller" -#: pg_dump.c:1045 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "hittade inga matchande utökningar" -#: pg_dump.c:1238 +#: pg_dump.c:1251 #, c-format msgid "" -"%s dumps a database as a text file or to other formats.\n" +"%s exports a PostgreSQL database as an SQL script or to other formats.\n" "\n" msgstr "" -"%s dumpar en databas som en textfil eller i andra format.\n" +"%s exporterar en PostgreSQL-databas som ett SQL-skript eller till andra format.\n" "\n" -#: pg_dump.c:1239 pg_dumpall.c:703 pg_restore.c:657 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "Användning:\n" -#: pg_dump.c:1240 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [FLAGGA]... [DBNAMN]\n" -#: pg_dump.c:1242 pg_dumpall.c:706 pg_restore.c:660 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1651,12 +1654,12 @@ msgstr "" "\n" "Allmänna flaggor:\n" -#: pg_dump.c:1243 +#: pg_dump.c:1256 #, 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:1244 pg_dumpall.c:708 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1665,22 +1668,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:1246 +#: pg_dump.c:1259 #, 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:1247 pg_dumpall.c:710 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose visa mer information\n" -#: pg_dump.c:1248 pg_dumpall.c:711 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version visa versionsinformation, avsluta sedan\n" -#: pg_dump.c:1249 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1689,27 +1692,27 @@ msgstr "" " -Z, --compress=METOD[:DETALJ]\n" " komprimera som angivet\n" -#: pg_dump.c:1251 pg_dumpall.c:712 +#: pg_dump.c:1264 pg_dumpall.c:701 #, 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:1252 pg_dumpall.c:744 +#: pg_dump.c:1265 pg_dumpall.c:733 #, 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:1253 +#: pg_dump.c:1266 #, 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:1254 pg_dumpall.c:713 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help visa denna hjälp, avsluta sedan\n" -#: pg_dump.c:1256 pg_dumpall.c:714 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1718,63 +1721,62 @@ msgstr "" "\n" "Flaggor som styr utmatning:\n" -#: pg_dump.c:1257 pg_dumpall.c:715 -#, fuzzy, c-format -#| msgid " -a, --data-only dump only the data, not the schema\n" +#: pg_dump.c:1270 pg_dumpall.c:704 +#, 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\n" +msgstr " -a, --data-only dumpa bara data, inte schema eller statistik\n" -#: pg_dump.c:1258 +#: pg_dump.c:1271 #, 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:1259 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (samma som --large-objects, obsolet)\n" -#: pg_dump.c:1260 +#: pg_dump.c:1273 #, 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:1261 +#: pg_dump.c:1274 #, 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:1262 pg_restore.c:671 +#: pg_dump.c:1275 pg_restore.c:537 #, 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:1263 +#: pg_dump.c:1276 #, 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:1264 +#: pg_dump.c:1277 #, 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:1265 pg_dumpall.c:717 +#: pg_dump.c:1278 pg_dumpall.c:706 #, 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:1266 +#: pg_dump.c:1279 #, 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:1267 +#: pg_dump.c:1280 #, 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:1268 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1783,53 +1785,52 @@ msgstr "" " -O, --no-owner hoppa över återställande av objektägare i\n" " textformatdumpar\n" -#: pg_dump.c:1270 pg_dumpall.c:721 -#, fuzzy, c-format -#| msgid " -s, --schema-only dump only the schema, no data\n" +#: pg_dump.c:1283 pg_dumpall.c:710 +#, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" -msgstr " -s, --schema-only dumpa bara scheman, inte data\n" +msgstr " -s, --schema-only dumpa bara scheman, inte data eller statistik\n" -#: pg_dump.c:1271 +#: pg_dump.c:1284 #, 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:1272 +#: pg_dump.c:1285 #, 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:1273 +#: pg_dump.c:1286 #, 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:1274 pg_dumpall.c:724 +#: pg_dump.c:1287 pg_dumpall.c:713 #, 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:1275 pg_dumpall.c:725 +#: pg_dump.c:1288 pg_dumpall.c:714 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade används bara av uppgraderingsverktyg\n" -#: pg_dump.c:1276 pg_dumpall.c:726 +#: pg_dump.c:1289 pg_dumpall.c:715 #, 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:1277 pg_dumpall.c:727 +#: pg_dump.c:1290 pg_dumpall.c:716 #, 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:1278 pg_dumpall.c:728 pg_restore.c:689 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, 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:1279 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1838,12 +1839,12 @@ msgstr "" " --enable-row-security slå på radsäkerhet (dumpa bara data användaren\n" " har rätt till)\n" -#: pg_dump.c:1281 +#: pg_dump.c:1294 #, 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:1282 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1854,12 +1855,12 @@ msgstr "" " dumpa INTE angivna tabeller, inklusive\n" " barn och partitionstabeller\n" -#: pg_dump.c:1285 +#: pg_dump.c:1298 #, 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:1286 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1870,12 +1871,12 @@ msgstr "" " dumpa INTE data för angivna tabeller,\n" " inklusive barn och partitionstabeller\n" -#: pg_dump.c:1289 pg_dumpall.c:730 +#: pg_dump.c:1302 pg_dumpall.c:719 #, 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:1290 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1885,12 +1886,12 @@ msgstr "" " från dump baserat på uttryck i FILNAMN\n" "\n" -#: pg_dump.c:1292 pg_dumpall.c:732 pg_restore.c:694 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, 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:1293 +#: pg_dump.c:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1901,124 +1902,129 @@ msgstr "" " inkludera data i främmande tabeller från\n" " främmande servrar som matchar MALL\n" -#: pg_dump.c:1296 pg_dumpall.c:733 +#: pg_dump.c:1309 pg_dumpall.c:722 #, 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:1297 pg_dumpall.c:734 +#: pg_dump.c:1310 pg_dumpall.c:723 #, 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:1298 pg_dumpall.c:735 -#, fuzzy, c-format -#| msgid " --no-comments do not dump comments\n" +#: pg_dump.c:1311 pg_dumpall.c:724 +#, c-format msgid " --no-comments do not dump comment commands\n" -msgstr " --no-comments dumpa inte kommentarer\n" +msgstr " --no-comments dumpa inte kommentarskommandon\n" -#: pg_dump.c:1299 pg_dumpall.c:736 -#, fuzzy, c-format -#| msgid " --no-comments do not dump comments\n" +#: pg_dump.c:1312 pg_dumpall.c:725 +#, c-format msgid " --no-data do not dump data\n" -msgstr " --no-comments dumpa inte kommentarer\n" +msgstr " --no-data dumpa inte data\n" -#: pg_dump.c:1300 pg_dumpall.c:737 -#, fuzzy, c-format -#| msgid " --no-comments do not dump comments\n" +#: pg_dump.c:1313 pg_dumpall.c:726 +#, c-format msgid " --no-policies do not dump row security policies\n" -msgstr " --no-comments dumpa inte kommentarer\n" +msgstr " --no-policies dumpa inte säkerhetspolicyer\n" -#: pg_dump.c:1301 pg_dumpall.c:738 +#: pg_dump.c:1314 pg_dumpall.c:727 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications dumpa inte publiceringar\n" -#: pg_dump.c:1302 pg_dumpall.c:740 -#, fuzzy, c-format -#| msgid " --no-comments do not dump comments\n" +#: pg_dump.c:1315 pg_dumpall.c:729 +#, c-format msgid " --no-schema do not dump schema\n" -msgstr " --no-comments dumpa inte kommentarer\n" +msgstr " --no-comments dumpa inte schema\n" -#: pg_dump.c:1303 pg_dumpall.c:741 +#: pg_dump.c:1316 pg_dumpall.c:730 #, 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:1304 pg_dumpall.c:742 -#, fuzzy, c-format -#| msgid " --no-subscriptions do not dump subscriptions\n" +#: pg_dump.c:1317 pg_dumpall.c:731 +#, c-format msgid " --no-statistics do not dump statistics\n" -msgstr " --no-subscriptions dumpa inte prenumereringar\n" +msgstr " --no-statistics dumpa inte statistik\n" -#: pg_dump.c:1305 pg_dumpall.c:743 +#: pg_dump.c:1318 pg_dumpall.c:732 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions dumpa inte prenumereringar\n" -#: pg_dump.c:1306 pg_dumpall.c:745 +#: pg_dump.c:1319 pg_dumpall.c:734 #, 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:1307 pg_dumpall.c:746 +#: pg_dump.c:1320 pg_dumpall.c:735 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces dumpa inte användning av tabellutymmen\n" -#: pg_dump.c:1308 pg_dumpall.c:747 +#: pg_dump.c:1321 pg_dumpall.c:736 #, 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:1309 pg_dumpall.c:748 +#: pg_dump.c:1322 pg_dumpall.c:737 #, 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:1310 pg_dumpall.c:749 +#: pg_dump.c:1323 pg_dumpall.c:738 #, 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:1311 pg_dumpall.c:750 +#: pg_dump.c:1324 pg_dumpall.c:739 #, 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:1312 pg_dumpall.c:751 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, 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 #, 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:1313 +#: pg_dump.c:1327 #, 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:1314 pg_dumpall.c:752 -#, fuzzy, c-format -#| msgid " -C, --create include commands to create database in dump\n" +#: pg_dump.c:1328 pg_dumpall.c:742 +#, c-format msgid " --sequence-data include sequence data in dump\n" -msgstr " -C, --create inkludera kommandon för att skapa databasen i dumpen\n" +msgstr " --sequence-data inkludera sekvensdata i dumpen\n" -#: pg_dump.c:1315 +#: pg_dump.c:1329 #, 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:1316 +#: pg_dump.c:1330 #, 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:1317 pg_dumpall.c:753 -#, fuzzy, c-format -#| msgid " -s, --schema-only dump only the schema, no data\n" +#: pg_dump.c:1331 pg_dumpall.c:743 +#, c-format +msgid " --statistics dump the statistics\n" +msgstr " --statistics dumpa statistik\n" + +#: pg_dump.c:1332 pg_dumpall.c:744 +#, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" -msgstr " -s, --schema-only dumpa bara scheman, inte data\n" +msgstr " --statistics-only dumpa bara statistik, inte schema eller data\n" -#: pg_dump.c:1318 pg_restore.c:709 +#: pg_dump.c:1333 pg_restore.c:575 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2027,7 +2033,7 @@ msgstr "" " --strict-names kräv att mallar för tabeller och/eller scheman matchar\n" " minst en sak var\n" -#: pg_dump.c:1320 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2036,7 +2042,7 @@ msgstr "" " --table-and-children=MALL dumpa bara angivna tabell(er), inklusive\n" " barn och partitionstabeller\n" -#: pg_dump.c:1322 pg_dumpall.c:754 pg_restore.c:712 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2047,25 +2053,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:1325 pg_dumpall.c:757 pg_restore.c:715 -#, fuzzy, c-format -#| msgid " -a, --data-only dump only the data, not the schema\n" -msgid " --with-data dump the data\n" -msgstr " -a, --data-only dumpa bara data, inte schema\n" - -#: pg_dump.c:1326 pg_dumpall.c:758 pg_restore.c:716 -#, fuzzy, c-format -#| msgid " -s, --schema-only dump only the schema, no data\n" -msgid " --with-schema dump the schema\n" -msgstr " -s, --schema-only dumpa bara scheman, inte data\n" - -#: pg_dump.c:1327 pg_dumpall.c:759 pg_restore.c:717 -#, fuzzy, c-format -#| msgid " -z, --analyze update optimizer statistics\n" -msgid " --with-statistics dump the statistics\n" -msgstr " -z, --analyze uppdatera optimeringsstatistik\n" - -#: pg_dump.c:1329 pg_dumpall.c:761 pg_restore.c:719 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2074,42 +2062,42 @@ msgstr "" "\n" "Flaggor för anslutning:\n" -#: pg_dump.c:1330 +#: pg_dump.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAMN databasens som skall dumpas\n" -#: pg_dump.c:1331 pg_dumpall.c:763 pg_restore.c:720 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, 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:1332 pg_dumpall.c:765 pg_restore.c:721 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT databasens värdport\n" -#: pg_dump.c:1333 pg_dumpall.c:766 pg_restore.c:722 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, 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:1334 pg_dumpall.c:767 pg_restore.c:723 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, 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:1335 pg_dumpall.c:768 pg_restore.c:724 +#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 #, 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:1336 pg_dumpall.c:769 +#: pg_dump.c:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLLNAMN gör SET ROLE innan dumpen\n" -#: pg_dump.c:1338 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2122,578 +2110,562 @@ msgstr "" "PGDATABASE att användas.\n" "\n" -#: pg_dump.c:1340 pg_dumpall.c:773 pg_restore.c:731 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Rapportera fel till <%s>.\n" -#: pg_dump.c:1341 pg_dumpall.c:774 pg_restore.c:732 +#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "hemsida för %s: <%s>\n" -#: pg_dump.c:1360 pg_dumpall.c:585 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "ogiltig klientteckenkodning \"%s\" angiven" -#: pg_dump.c:1508 +#: pg_dump.c:1520 #, 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:1573 +#: pg_dump.c:1585 #, c-format msgid "invalid output format \"%s\" specified" msgstr "ogiltigt utdataformat \"%s\" angivet" -#: pg_dump.c:1614 pg_dump.c:1670 pg_dump.c:1723 pg_dumpall.c:1598 -#: pg_restore.c:984 +#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, 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:1622 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "hittade inga matchande scheman för mallen \"%s\"" -#: pg_dump.c:1675 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "hittade inga matchande utökningar för mallen \"%s\"" -#: pg_dump.c:1728 +#: pg_dump.c:1740 #, 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:1799 +#: pg_dump.c:1811 #, 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:1821 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "hittade inga matchande tabeller för mallen \"%s\"" -#: pg_dump.c:1848 +#: pg_dump.c:1860 #, 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:1851 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "referenser till andra databaser är inte implementerat: %s" -#: pg_dump.c:2310 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "dumpar innehållet i tabell \"%s.%s\"" -#: pg_dump.c:2420 +#: pg_dump.c:2439 #, 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:2421 pg_dump.c:2431 +#: pg_dump.c:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "Felmeddelandet från servern: %s" -#: pg_dump.c:2422 pg_dump.c:2432 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "Kommandot var: %s" -#: pg_dump.c:2430 +#: pg_dump.c:2449 #, 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:2521 +#: pg_dump.c:2540 #, 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:3236 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "sparar databasdefinition" -#: pg_dump.c:3351 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "okänd lokalleverantör: %s" -#: pg_dump.c:3712 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "sparar kodning = %s" -#: pg_dump.c:3737 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "sparar \"standard_conforming_strings = %s\"" -#: pg_dump.c:3776 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "kunde inte parsa resultat från current_schemas()" -#: pg_dump.c:3795 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "sparar \"search_path = %s\"" -#: pg_dump.c:3831 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "läser stora objekt" -#: pg_dump.c:4052 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "sparar stora objekt \"%s\"" -#: pg_dump.c:4073 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "fel vid läsning av stort objekt %u: %s" -#: pg_dump.c:4181 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "läser säkerhetspolicy på radnivå" -#: pg_dump.c:4322 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "oväntad kommandotyp för policy: %c" -#: pg_dump.c:4764 pg_dump.c:5321 pg_dump.c:7917 pg_dump.c:13305 pg_dump.c:19423 -#: pg_dump.c:19425 pg_dump.c:20057 +#: 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 #, c-format msgid "could not parse %s array" msgstr "kunde inte parsa arrayen %s" -#: pg_dump.c:4980 +#: pg_dump.c:5002 #, 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:5184 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "prenumeration med OID %u existerar inte" -#: pg_dump.c:5191 +#: pg_dump.c:5213 #, 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:5777 +#: pg_dump.c:5799 #, 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:5915 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "schema med OID %u existerar inte" -#: pg_dump.c:6939 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" -msgid "cannot dump statistics for relation kind '%c'" -msgstr "kan inte definiera statistik för relationen \"%s\"" +#: pg_dump.c:6994 +#, c-format +msgid "cannot dump statistics for relation kind \"%c\"" +msgstr "kan inte dumpa statistik för relation av typ \"%c\"" -#: pg_dump.c:7451 pg_dump.c:18767 +#: pg_dump.c:7506 pg_dump.c:18987 #, 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:7596 +#: pg_dump.c:7651 #, 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:7861 pg_dump.c:8154 pg_dump.c:8595 pg_dump.c:9232 pg_dump.c:9367 -#: pg_dump.c:9512 pg_dump.c:9612 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "okänt tabell-OID %u" -#: pg_dump.c:7865 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "oväntat indexdata för tabell \"%s\"" -#: pg_dump.c:8382 +#: pg_dump.c:8459 #, 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:9236 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "oväntad kolumndata för tabell \"%s\"" -#: pg_dump.c:9267 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "ogiltigt kolumnnumrering i tabell \"%s\"" -#: pg_dump.c:9329 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "hittar tabellers default-uttryck" -#: pg_dump.c:9371 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "felaktigt adnum-värde %d för tabell \"%s\"" -#: pg_dump.c:9464 -#, fuzzy, c-format -#| msgid "finding table check constraints" -msgid "finding invalid not null constraints" -msgstr "hittar tabellers check-villkor" +#: pg_dump.c:9553 +#, c-format +msgid "finding invalid not-null constraints" +msgstr "hittar ogiltiga icke-null-villkor" -#: pg_dump.c:9562 +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "hittar tabellers check-villkor" -#: pg_dump.c:9616 +#: pg_dump.c:9705 #, 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:9620 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "Systemkatalogerna kan vara trasiga." -#: pg_dump.c:10421 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "roll med OID %u existerar inte" -#: pg_dump.c:10533 pg_dump.c:10562 +#: pg_dump.c:10626 pg_dump.c:10655 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "ogiltig pg_init_privs-post: %u %u %d" -#: pg_dump.c:10858 +#: pg_dump.c:10951 #, c-format -msgid "stats dumped out of order (current: %d %s %s) (expected: %d %s %s)" -msgstr "" +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:10999 -#, fuzzy, c-format -#| msgid "timestamp cannot be NaN" -msgid "attname cannot be NULL" -msgstr "timestamp kan inte vara NaN" +#: pg_dump.c:11092 +#, c-format +msgid "unexpected null attname" +msgstr "attname är oväntat null" -#: pg_dump.c:11028 -#, fuzzy, c-format -#| msgid "could not find an aggregate named \"%s\"" +#: pg_dump.c:11121 +#, c-format msgid "could not find index attname \"%s\"" -msgstr "kunde inte hitta ett aggregat med namn \"%s\"" +msgstr "kunde inte hitta index attname \"%s\"" -#: pg_dump.c:11514 +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "saknar metadata för stort objekt \"%s\"" -#: pg_dump.c:11800 +#: pg_dump.c:11893 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "typtype för datatyp \"%s\" verkar vara ogiltig" -#: pg_dump.c:13376 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "okänt provolatile-värde för funktion \"%s\"" -#: pg_dump.c:13426 pg_dump.c:15322 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "okänt proparallel-värde för funktion \"%s\"" -#: pg_dump.c:13556 pg_dump.c:13662 pg_dump.c:13669 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, 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:13595 +#: pg_dump.c:13740 #, 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:13598 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "felaktigt värde i fältet pg_cast.castmethod" -#: pg_dump.c:13688 +#: pg_dump.c:13833 #, 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:13705 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "felaktigt värde i fältet pg_transform.trffromsql" -#: pg_dump.c:13726 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "felaktigt värde i fältet pg_transform.trftosql" -#: pg_dump.c:13871 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "postfix-operatorer stöds inte längre (operator \"%s\")" -#: pg_dump.c:14041 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "kunde inte hitta en operator med OID %s." -#: pg_dump.c:14109 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "ogiltig typ \"%c\" för accessmetod \"%s\"" -#: pg_dump.c:14783 pg_dump.c:14851 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "okänd jämförelseleverantör: %s" -#: pg_dump.c:14792 pg_dump.c:14799 pg_dump.c:14810 pg_dump.c:14820 -#: pg_dump.c:14835 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "ogiltig jämförelse \"%s\"" -#: pg_dump.c:15241 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "okänt aggfinalmodify-värde för aggregat \"%s\"" -#: pg_dump.c:15297 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "okänt aggmfinalmodify-värde för aggregat \"%s\"" -#: pg_dump.c:16017 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "okänd objekttyp i standardrättigheter: %d" -#: pg_dump.c:16033 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "kunde inte parsa standard-ACL-lista (%s)" -#: pg_dump.c:16117 +#: pg_dump.c:16262 #, 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:16142 +#: pg_dump.c:16287 #, 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:16685 +#: pg_dump.c:16830 #, 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:16688 +#: pg_dump.c:16833 #, 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:16695 +#: pg_dump.c:16840 #, 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:16780 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS stöds inte längre (tabell \"%s\")" -#: pg_dump.c:17870 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "ogiltigt kolumnnummer %d för tabell \"%s\"" -#: pg_dump.c:17948 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "kunde inte parsa kolumn i indexstatistik" -#: pg_dump.c:17950 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "kunde inte parsa värden i indexstatistik" -#: pg_dump.c:17952 +#: pg_dump.c:18147 #, 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:18181 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "saknar index för integritetsvillkor \"%s\"" -#: pg_dump.c:18425 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "oväntad integritetsvillkorstyp: %c" -#: pg_dump.c:18478 +#: pg_dump.c:18698 #, c-format msgid "unrecognized sequence type: %s" msgstr "okänd sekvenstyp: %s" -#: pg_dump.c:18610 pg_dump.c:18842 +#: pg_dump.c:18830 pg_dump.c:19062 #, 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:18646 +#: pg_dump.c:18866 #, c-format msgid "unrecognized sequence type: %d" msgstr "okänd sekvenstyp: %d" -#: pg_dump.c:19175 +#: pg_dump.c:19395 #, 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:19328 +#: pg_dump.c:19548 #, c-format msgid "could not find referenced extension %u" msgstr "kunde inte hitta refererad utökning %u" -#: pg_dump.c:19427 +#: pg_dump.c:19647 #, 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:19559 +#: pg_dump.c:19779 #, c-format msgid "reading dependency data" msgstr "läser beroendedata" -#: pg_dump.c:19645 +#: pg_dump.c:19865 #, c-format msgid "no referencing object %u %u" msgstr "inget refererande objekt %u %u" -#: pg_dump.c:19656 +#: pg_dump.c:19876 #, c-format msgid "no referenced object %u %u" msgstr "inget refererat objekt %u %u" -#: pg_dump.c:20091 pg_dump.c:20129 pg_dumpall.c:1916 pg_restore.c:766 -#: pg_restore.c:812 +#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "%s-filter för \"%s\" tillåts inte" -#: pg_dump_sort.c:436 +#: pg_dump_sort.c:635 #, c-format msgid "invalid dumpId %d" msgstr "ogiltigt dumpId %d" -#: pg_dump_sort.c:442 +#: pg_dump_sort.c:641 #, c-format msgid "invalid dependency %d" msgstr "ogiltigt beroende %d" -#: pg_dump_sort.c:606 +#: pg_dump_sort.c:805 #, c-format msgid "could not identify dependency loop" msgstr "kunde inte fastställa beroendeloop" -#: pg_dump_sort.c:1247 +#: pg_dump_sort.c:1449 #, 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:1252 +#: pg_dump_sort.c:1454 #, 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:1253 +#: pg_dump_sort.c:1455 #, 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:1265 +#: pg_dump_sort.c:1467 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "kunde inte räta ut beroendeloopen för dessa saker:" -#: pg_dumpall.c:246 +#: pg_dumpall.c:240 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "programmet \"%s\" behövs av %s men hittades inte i samma katalog som \"%s\"" -#: pg_dumpall.c:249 +#: pg_dumpall.c:243 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "programmet \"%s\" hittades av \"%s\" men är inte av samma version som %s" -#: pg_dumpall.c:404 +#: 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:412 +#: 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:419 +#: 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:429 +#: 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" -#: pg_dumpall.c:444 -#, fuzzy, c-format -#| msgid "option --if-exists requires option -c/--clean" -msgid "option -F/--format=d|c|t requires option -f/--file" -msgstr "flaggan --if-exists kräver flaggan -c/--clean" - -#: pg_dumpall.c:528 pg_restore.c:1061 pg_restore.c:1317 -#, c-format -msgid "could not open \"%s\": %m" -msgstr "kunde inte öppna \"%s\": %m" - -#: pg_dumpall.c:566 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2702,84 +2674,81 @@ msgstr "" "kunde inte ansluta till databasen \"postgres\" eller \"template1\"\n" "Ange en annan databas." -#: pg_dumpall.c:702 -#, fuzzy, c-format -#| msgid "" -#| "%s extracts a PostgreSQL database cluster into an SQL script file.\n" -#| "\n" +#: pg_dumpall.c:693 +#, c-format msgid "" -"%s extracts a PostgreSQL database cluster based on specified dump format.\n" +"%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" msgstr "" -"%s extraherar ett PostgreSQL databaskluster till en SQL-scriptfil.\n" +"%s extraherar ett PostgreSQL databaskluster som ett SQL-script.\n" "\n" -#: pg_dumpall.c:704 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [FLAGGA]...\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=FILENAME utdatafilnamn\n" -#: pg_dumpall.c:716 +#: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean nollställ (drop) databaser innan återskapning\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:707 #, 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:719 pg_restore.c:681 +#: pg_dumpall.c:708 pg_restore.c:546 #, 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:720 +#: pg_dumpall.c:709 #, 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:722 +#: pg_dumpall.c:711 #, 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:723 +#: pg_dumpall.c:712 #, 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:729 +#: pg_dumpall.c:718 #, 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:731 +#: pg_dumpall.c:720 #, 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:739 +#: pg_dumpall.c:728 #, 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:762 +#: pg_dumpall.c:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=ANSLSTR anslut med anslutningssträng\n" -#: pg_dumpall.c:764 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAMN alternativ standarddatabas\n" -#: pg_dumpall.c:771 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2791,211 +2760,156 @@ msgstr "" "Om -f/--file inte används så kommer SQL-skriptet skriva till standard ut.\n" "\n" -#: pg_dumpall.c:916 +#: pg_dumpall.c:904 #, 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:1130 pg_dumpall.c:1188 pg_dumpall.c:1197 +#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 #, 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:1163 +#: pg_dumpall.c:1154 #, 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:1318 +#: pg_dumpall.c:1309 #, 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:1445 +#: pg_dumpall.c:1436 #, 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:1662 -#, c-format -msgid "could not create subdirectory \"%s\": %m" -msgstr "kunde inte skapa underkatalog \"%s\": %m" - -#: pg_dumpall.c:1669 -#, c-format -msgid "could not open map file: %s" -msgstr "kunde inte öppna map-fil: %s" - -#: pg_dumpall.c:1686 pg_restore.c:1014 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "utesluter databas \"%s\"" -#: pg_dumpall.c:1707 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "dumpar databas \"%s\"" -#: pg_dumpall.c:1736 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump misslyckades med databas \"%s\", avslutar" -#: pg_dumpall.c:1749 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "kunde inte öppna om utdatafilen \"%s\": %m" -#: pg_dumpall.c:1817 +#: pg_dumpall.c:1737 #, c-format msgid "running \"%s\"" msgstr "kör \"%s\"" -#: pg_dumpall.c:1936 +#: pg_dumpall.c:1856 msgid "unsupported filter object" msgstr "filterobjektet stöds inte" -#: pg_dumpall.c:1979 -#, fuzzy, c-format -#| msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" -msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", \"p\", or \"t\"" -msgstr "okänt arkivformat \"%s\"; vänligen ange \"c\", \"d\" eller \"t\"" - -#: pg_restore.c:383 +#: pg_restore.c:348 #, c-format 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:387 -#, fuzzy, c-format -#| msgid "option --exclude-database cannot be used together with -g/--globals-only, -r/--roles-only, or -t/--tablespaces-only" -msgid "option --exclude-database cannot be used together with -g/--globals-only" -msgstr "flaggan --exclude-database kan inte användas tillsammans med -g/--globals-only, -r/--roles-only eller -t/--tablespaces-only" - -#: pg_restore.c:397 +#: 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:432 +#: 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:439 +#: 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:443 +#: pg_restore.c:421 #, 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:491 +#: pg_restore.c:467 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "arkivformat \"%s\" stöds inte, använd psql" -#: pg_restore.c:495 +#: pg_restore.c:471 #, 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:516 -#, c-format -msgid "option -l/--list cannot be used when restoring an archive created by pg_dumpall" -msgstr "" - -#: pg_restore.c:518 -#, c-format -msgid "option -L/--use-list cannot be used when restoring an archive created by pg_dumpall" -msgstr "" - -#: pg_restore.c:526 -#, c-format -msgid "-C/--create option should be specified when restoring an archive created by pg_dumpall" -msgstr "" - -#: pg_restore.c:528 -#, c-format -msgid "Individual databases can be restored using their specific archives." -msgstr "" - -#: pg_restore.c:560 -#, c-format -msgid "database restoring skipped as -g/--globals-only option was specified" -msgstr "" - -#: pg_restore.c:575 -#, c-format -msgid "option --exclude-database can be used only when restoring an archive created by pg_dumpall" -msgstr "" - -#: pg_restore.c:578 -#, c-format -msgid "option -g/--globals-only can be used only when restoring an archive created by pg_dumpall" -msgstr "" - -#: pg_restore.c:586 +#: pg_restore.c:509 #, c-format msgid "errors ignored on restore: %d" msgstr "fel ignorerade vid återställande: %d" -#: pg_restore.c:656 -#, fuzzy, c-format -#| msgid "" -#| "%s restores a PostgreSQL database from an archive created by pg_dump.\n" -#| "\n" +#: pg_restore.c:522 +#, c-format msgid "" -"%s restores PostgreSQL databases from archives created by pg_dump or pg_dumpall.\n" +"%s restores a PostgreSQL database from an archive created by pg_dump.\n" "\n" msgstr "" "%s återställer en PostgreSQL-databas från ett arkiv skapat av pg_dump.\n" "\n" -#: pg_restore.c:658 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [FLAGGA]... [FIL]\n" -#: pg_restore.c:661 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAMN koppla upp med databasnamn\n" -#: pg_restore.c:662 +#: pg_restore.c:528 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILNAMN utdatafilnamn (- för stdout)\n" -#: pg_restore.c:663 +#: pg_restore.c:529 #, 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:664 +#: pg_restore.c:530 #, 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:665 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose visa mer information\n" -#: pg_restore.c:666 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version visa versionsinformation, avsluta sedan\n" -#: pg_restore.c:667 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help visa denna hjälp, avsluta sedan\n" -#: pg_restore.c:669 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -3004,38 +2918,32 @@ msgstr "" "\n" "Flaggor som styr återställning:\n" -#: pg_restore.c:670 +#: pg_restore.c:536 #, 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:672 +#: pg_restore.c:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create skapa måldatabasen\n" -#: pg_restore.c:673 +#: pg_restore.c:539 #, 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:674 -#, fuzzy, c-format -#| msgid " -g, --globals-only dump only global objects, no databases\n" -msgid " -g, --globals-only restore only global objects, no databases\n" -msgstr " -g, --globals-only dumpa bara globala objekt, inte databaser\n" - -#: pg_restore.c:675 +#: pg_restore.c:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAMN återställ namngivet index\n" -#: pg_restore.c:676 +#: pg_restore.c:541 #, 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:677 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3044,63 +2952,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:679 +#: pg_restore.c:544 #, 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:680 +#: pg_restore.c:545 #, 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:682 +#: pg_restore.c:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAMN(arg) återställ namngiven funktion\n" -#: pg_restore.c:683 +#: pg_restore.c:548 #, 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:684 +#: pg_restore.c:549 #, 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:685 +#: pg_restore.c:550 #, 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:686 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAMN återställ namngiven trigger\n" -#: pg_restore.c:687 +#: pg_restore.c:552 #, 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:688 +#: pg_restore.c:553 #, 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:690 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security aktivera radsäkerhet\n" -#: pg_restore.c:691 -#, fuzzy, c-format -#| msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" -msgid " --exclude-database=PATTERN do not restore the specified database(s)\n" -msgstr " -T, --exclude-table=MALL dumpa INTE de angivna tabellerna\n" - -#: pg_restore.c:692 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3109,19 +3011,17 @@ msgstr "" " --filter=FILENAMN återställ eller hoppa över objekt\n" " baserat på uttryck i FILENAMN\n" -#: pg_restore.c:695 -#, fuzzy, c-format -#| msgid " --no-comments do not restore comments\n" +#: pg_restore.c:559 +#, c-format msgid " --no-comments do not restore comment commands\n" -msgstr " --no-comments återställ inte kommentarer\n" +msgstr " --no-comments återställ inte kommentarskommandon\n" -#: pg_restore.c:696 -#, fuzzy, c-format -#| msgid " --no-comments do not restore comments\n" +#: pg_restore.c:560 +#, c-format msgid " --no-data do not restore data\n" -msgstr " --no-comments återställ inte kommentarer\n" +msgstr " --no-data återställ inte data\n" -#: pg_restore.c:697 +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3130,86 +3030,83 @@ msgstr "" " --no-data-for-failed-tables återställ inte data för tabeller som\n" " inte kunde skapas\n" -#: pg_restore.c:699 -#, fuzzy, c-format -#| msgid " --no-comments do not restore comments\n" +#: pg_restore.c:563 +#, c-format msgid " --no-policies do not restore row security policies\n" -msgstr " --no-comments återställ inte kommentarer\n" +msgstr " --no-policies återställ inte särkerhetspolicyer\n" -#: pg_restore.c:700 +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications återställ inte publiceringar\n" -#: pg_restore.c:701 -#, fuzzy, c-format -#| msgid " --no-comments do not restore comments\n" +#: pg_restore.c:565 +#, c-format msgid " --no-schema do not restore schema\n" -msgstr " --no-comments återställ inte kommentarer\n" +msgstr " --no-schema återställ inte schema\n" -#: pg_restore.c:702 +#: pg_restore.c:566 #, 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:703 -#, fuzzy, c-format -#| msgid " --no-subscriptions do not restore subscriptions\n" +#: pg_restore.c:567 +#, c-format msgid " --no-statistics do not restore statistics\n" -msgstr " --no-subscriptions återställ inte prenumerationer\n" +msgstr " --no-statistics återställ inte statistik\n" -#: pg_restore.c:704 +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions återställ inte prenumerationer\n" -#: pg_restore.c:705 +#: pg_restore.c:569 #, 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:706 +#: pg_restore.c:570 #, 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:707 +#: pg_restore.c:572 #, 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:708 -#, fuzzy, c-format -#| msgid " -s, --schema-only restore only the schema, no data\n" +#: pg_restore.c:573 +#, c-format +msgid " --statistics restore the statistics\n" +msgstr " --statistics återställ statistik\n" + +#: pg_restore.c:574 +#, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" -msgstr " -s, --schema-only återställ bara scheman, inte data\n" +msgstr " --statistics-only återställ bara statistik, inte schema och data\n" -#: pg_restore.c:711 +#: pg_restore.c:577 #, 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:725 +#: pg_restore.c:588 #, 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:727 -#, fuzzy, c-format -#| msgid "" -#| "\n" -#| "The options -I, -n, -N, -P, -t, -T, and --section can be combined and specified\n" -#| "multiple times to select multiple objects.\n" +#: pg_restore.c:590 +#, c-format msgid "" "\n" -"The options -I, -n, -N, -P, -t, -T, --section, and --exclude-database can be combined\n" -"and specified multiple times to select multiple objects.\n" +"The options -I, -n, -N, -P, -t, -T, and --section can be combined and specified\n" +"multiple times to select multiple objects.\n" msgstr "" "\n" "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:730 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -3219,93 +3116,3 @@ msgstr "" "\n" "Om inget indatafilnamn är angivet, så kommer standard in att användas.\n" "\n" - -#: pg_restore.c:949 -#, c-format -msgid "considering PATTERN as NAME for --exclude-database option as no db connection while doing pg_restore." -msgstr "" - -#: pg_restore.c:995 -#, c-format -msgid "database \"%s\" matches exclude pattern: \"%s\"" -msgstr "" - -#: pg_restore.c:1051 -#, c-format -msgid "database restoring is skipped as \"map.dat\" is not present in \"%s\"" -msgstr "" - -#: pg_restore.c:1089 -#, c-format -msgid "invalid entry in \"%s\" at line: %d" -msgstr "ogiltigt post i \"%s\" på rad %d" - -#: pg_restore.c:1092 -#, c-format -msgid "found database \"%s\" (OID: %u) in \"%s\"" -msgstr "hittade databas \"%s\" (OID: %u) i \"%s\"" - -#: pg_restore.c:1145 -#, c-format -msgid "found %d database names in \"map.dat\"" -msgstr "hittade %d databasnamn i \"map.dat\"" - -#: pg_restore.c:1149 -#, c-format -msgid "trying to connect database \"postgres\"" -msgstr "försöker ansluta till databasen \"postgres\"" - -#: pg_restore.c:1158 -#, c-format -msgid "trying to connect database \"template1\"" -msgstr "försöker ansluta till databasen \"template1\"" - -#: pg_restore.c:1182 -#, c-format -msgid "no database needs to restore out of %d databases" -msgstr "" - -#: pg_restore.c:1186 -#, c-format -msgid "need to restore %d databases out of %d databases" -msgstr "" - -#: pg_restore.c:1235 -#, c-format -msgid "restoring database \"%s\"" -msgstr "återställer databasen \"%s\"" - -#: pg_restore.c:1276 -#, fuzzy, c-format -#| msgid "errors ignored on restore: %d" -msgid "errors ignored on database \"%s\" restore: %d" -msgstr "fel ignorerade vid återställande: %d" - -#: pg_restore.c:1283 -#, c-format -msgid "number of restored databases is %d" -msgstr "antalet återställda databaser är %d" - -#: pg_restore.c:1346 -#, c-format -msgid "executing query: %s" -msgstr "kör fråga: %s" - -#: pg_restore.c:1357 -#, c-format -msgid "" -"could not execute query: \"%s\" \n" -"Command was: \"%s\"" -msgstr "" -"kunde inte köra fråga: \"%s\"\n" -"Kommandot var: \"%s\"" - -#: pg_restore.c:1364 -#, c-format -msgid "ignored %d errors in \"%s\"" -msgstr "" - -#: pg_restore.c:1395 -#, c-format -msgid "could not open file: \"%s\"" -msgstr "kunde inte öppna fil: \"%s\"" diff --git a/src/bin/pg_resetwal/po/ru.po b/src/bin/pg_resetwal/po/ru.po index c26776baad267..4977535f6fa13 100644 --- a/src/bin/pg_resetwal/po/ru.po +++ b/src/bin/pg_resetwal/po/ru.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_resetxlog (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-05 12:19+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -21,33 +21,33 @@ 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" -#: ../../../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:389 pg_resetwal.c:547 +#: pg_resetwal.c:595 #, 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:556 pg_resetwal.c:610 #, c-format msgid "could not read file \"%s\": %m" msgstr "не удалось прочитать файл \"%s\": %m" @@ -80,20 +80,20 @@ msgstr "" "этой программой. В этом случае результаты будут неверными и\n" "установленный 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:1158 #, 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:1166 pg_resetwal.c:1178 #, 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 "не удалось синхронизировать с ФС файл \"%s\": %m" @@ -109,35 +109,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:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 #, 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:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 #, 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" @@ -188,154 +188,154 @@ 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: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 #, 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: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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Для дополнительной информации попробуйте \"%s --help\"." -#: pg_resetwal.c:169 +#: pg_resetwal.c:171 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "эпоха ID транзакции (-e) не должна быть равна -1" -#: pg_resetwal.c:182 +#: pg_resetwal.c:184 #, 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:197 #, 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:219 pg_resetwal.c:223 #, 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:234 +#: pg_resetwal.c:236 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) не должен быть равен 0" -#: pg_resetwal.c:255 +#: pg_resetwal.c:257 #, c-format msgid "multitransaction ID (-m) must not be 0" msgstr "ID мультитранзакции (-m) не должен быть равен 0" -#: pg_resetwal.c:262 +#: pg_resetwal.c:264 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "ID старейшей мультитранзакции (-m) не должен быть равен 0" -#: pg_resetwal.c:275 +#: pg_resetwal.c:277 #, c-format msgid "multitransaction offset (-O) must not be -1" msgstr "смещение мультитранзакции (-O) не должно быть равно -1" -#: pg_resetwal.c:301 +#: pg_resetwal.c:303 #, 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:337 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "слишком много аргументов командной строки (первый: \"%s\")" -#: pg_resetwal.c:326 +#: pg_resetwal.c:345 #, c-format msgid "no data directory specified" msgstr "каталог данных не указан" -#: pg_resetwal.c:340 +#: pg_resetwal.c:359 #, c-format msgid "cannot be executed by \"root\"" msgstr "программу не должен запускать root" -#: pg_resetwal.c:341 +#: pg_resetwal.c:360 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускать %s нужно от имени суперпользователя PostgreSQL." -#: pg_resetwal.c:351 +#: pg_resetwal.c:370 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "не удалось прочитать права на каталог \"%s\": %m" -#: pg_resetwal.c:357 +#: pg_resetwal.c:376 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "не удалось перейти в каталог \"%s\": %m" -#: pg_resetwal.c:375 +#: pg_resetwal.c:394 #, c-format msgid "lock file \"%s\" exists" msgstr "файл блокировки \"%s\" существует" -#: pg_resetwal.c:376 +#: pg_resetwal.c:395 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "" "Возможно, сервер запущен? Если нет, удалите этот файл и попробуйте снова." -#: pg_resetwal.c:475 +#: pg_resetwal.c:497 #, c-format msgid "not proceeding because control file values were guessed" msgstr "" "выполнение прервано, так как значения из контрольного файла являются " "предполагаемыми" -#: pg_resetwal.c:476 +#: pg_resetwal.c:498 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "" "Если эти значения всё же приемлемы, выполните сброс принудительно, добавив " "ключ -f." -#: pg_resetwal.c:485 +#: pg_resetwal.c:507 #, c-format msgid "database server was not shut down cleanly" msgstr "сервер баз данных не был остановлен штатно" -#: pg_resetwal.c:486 +#: pg_resetwal.c:508 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "Сброс журнала предзаписи может привести к потере данных." -#: pg_resetwal.c:487 +#: pg_resetwal.c:509 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "" "Если вы всё же хотите продолжить, выполните сброс принудительно, добавив " "ключ -f." -#: pg_resetwal.c:500 +#: pg_resetwal.c:522 #, c-format msgid "Write-ahead log reset\n" msgstr "Журнал предзаписи сброшен\n" -#: pg_resetwal.c:532 +#: pg_resetwal.c:554 #, c-format msgid "unexpected empty file \"%s\"" msgstr "файл \"%s\" оказался пустым" -#: pg_resetwal.c:542 +#: pg_resetwal.c:564 #, c-format msgid "data directory is of wrong version" msgstr "каталог данных имеет неверную версию" -#: pg_resetwal.c:543 +#: pg_resetwal.c:565 #, c-format msgid "" "File \"%s\" contains \"%s\", which is not compatible with this program's " @@ -343,7 +343,7 @@ msgid "" msgstr "" "Файл \"%s\" содержит строку \"%s\", а ожидается версия программы \"%s\"." -#: pg_resetwal.c:576 +#: pg_resetwal.c:598 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -354,14 +354,14 @@ msgstr "" " touch %s\n" "и повторите попытку." -#: pg_resetwal.c:604 +#: pg_resetwal.c:626 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "" "pg_control существует, но его контрольная сумма неверна; продолжайте с " "осторожностью" -#: pg_resetwal.c:613 +#: pg_resetwal.c:635 #, c-format msgid "" "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" @@ -378,14 +378,14 @@ msgstr[2] "" "в pg_control указан некорректный размер сегмента WAL (%d Б); продолжайте с " "осторожностью" -#: pg_resetwal.c:624 +#: pg_resetwal.c:646 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "" "pg_control испорчен или имеет неизвестную либо недопустимую версию; " "игнорируется..." -#: pg_resetwal.c:719 +#: pg_resetwal.c:741 #, c-format msgid "" "Guessed pg_control values:\n" @@ -394,7 +394,7 @@ msgstr "" "Предполагаемые значения pg_control:\n" "\n" -#: pg_resetwal.c:721 +#: pg_resetwal.c:743 #, c-format msgid "" "Current pg_control values:\n" @@ -403,181 +403,194 @@ msgstr "" "Текущие значения pg_control:\n" "\n" -#: pg_resetwal.c:723 +#: pg_resetwal.c:745 #, c-format msgid "pg_control version number: %u\n" msgstr "Номер версии pg_control: %u\n" -#: pg_resetwal.c:725 +#: pg_resetwal.c:747 #, c-format msgid "Catalog version number: %u\n" msgstr "Номер версии каталога: %u\n" -#: pg_resetwal.c:727 -#, c-format -msgid "Database system identifier: %llu\n" +#: pg_resetwal.c:749 +#, fuzzy, c-format +msgid "Database system identifier: %\n" msgstr "Идентификатор системы баз данных: %llu\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:729 +#: pg_resetwal.c:751 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "Линия времени последней конт. точки: %u\n" # skip-rule: no-space-after-period -#: pg_resetwal.c:731 +#: pg_resetwal.c:753 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "Режим full_page_writes последней к.т: %s\n" -#: pg_resetwal.c:732 +#: pg_resetwal.c:754 msgid "off" msgstr "выкл." -#: pg_resetwal.c:732 +#: pg_resetwal.c:754 msgid "on" msgstr "вкл." # skip-rule: capital-letter-first -#: pg_resetwal.c:733 +#: pg_resetwal.c:755 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "NextXID последней конт. точки: %u:%u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:736 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "NextOID последней конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:738 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "NextMultiXactId послед. конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:740 +#: pg_resetwal.c:762 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "NextMultiOffset послед. конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:742 +#: pg_resetwal.c:764 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "oldestXID последней конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:744 +#: pg_resetwal.c:766 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "БД с oldestXID последней конт. точки: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:746 +#: pg_resetwal.c:768 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "oldestActiveXID последней к. т.: %u\n" # skip-rule: capital-letter-first -#: pg_resetwal.c:748 +#: pg_resetwal.c:770 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "oldestMultiXid последней конт. точки: %u\n" # skip-rule: capital-letter-first, double-space -#: pg_resetwal.c:750 +#: pg_resetwal.c:772 #, 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:752 +#: pg_resetwal.c:774 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "oldestCommitTsXid последней к. т.: %u\n" # skip-rule: capital-letter-first, double-space -#: pg_resetwal.c:754 +#: pg_resetwal.c:776 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "newestCommitTsXid последней к. т.: %u\n" -#: pg_resetwal.c:756 +#: pg_resetwal.c:778 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Макс. предел выравнивания данных: %u\n" -#: pg_resetwal.c:759 +#: pg_resetwal.c:781 #, c-format msgid "Database block size: %u\n" msgstr "Размер блока БД: %u\n" # skip-rule: double-space -#: pg_resetwal.c:761 +#: pg_resetwal.c:783 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Блоков в макс. сегменте отношений: %u\n" -#: pg_resetwal.c:763 +#: pg_resetwal.c:785 #, c-format msgid "WAL block size: %u\n" msgstr "Размер блока WAL: %u\n" -#: pg_resetwal.c:765 pg_resetwal.c:851 +#: pg_resetwal.c:787 pg_resetwal.c:875 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Байт в сегменте WAL: %u\n" -#: pg_resetwal.c:767 +#: pg_resetwal.c:789 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Максимальная длина идентификаторов: %u\n" -#: pg_resetwal.c:769 +#: pg_resetwal.c:791 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "Макс. число столбцов в индексе: %u\n" -#: pg_resetwal.c:771 +#: pg_resetwal.c:793 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Максимальный размер порции TOAST: %u\n" -#: pg_resetwal.c:773 +#: pg_resetwal.c:795 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "Размер порции большого объекта: %u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:798 #, c-format msgid "Date/time type storage: %s\n" msgstr "Формат хранения даты/времени: %s\n" -#: pg_resetwal.c:777 +#: pg_resetwal.c:799 msgid "64-bit integers" msgstr "64-битные целые" -#: pg_resetwal.c:778 +#: pg_resetwal.c:800 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Передача аргумента float8: %s\n" -#: pg_resetwal.c:779 +#: pg_resetwal.c:801 msgid "by reference" msgstr "по ссылке" -#: pg_resetwal.c:779 +#: pg_resetwal.c:801 msgid "by value" msgstr "по значению" -#: pg_resetwal.c:780 +#: pg_resetwal.c:802 #, c-format msgid "Data page checksum version: %u\n" msgstr "Версия контрольных сумм страниц: %u\n" -#: pg_resetwal.c:794 +#: pg_resetwal.c:804 +#, fuzzy, c-format +msgid "Default char data signedness: %s\n" +msgstr "Макс. предел выравнивания данных: %u\n" + +#: pg_resetwal.c:805 +msgid "signed" +msgstr "" + +#: pg_resetwal.c:805 +msgid "unsigned" +msgstr "" + +#: pg_resetwal.c:818 #, c-format msgid "" "\n" @@ -590,82 +603,82 @@ msgstr "" "Значения, которые будут изменены:\n" "\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:822 #, c-format msgid "First log segment after reset: %s\n" msgstr "Первый сегмент журнала после сброса: %s\n" -#: pg_resetwal.c:802 +#: pg_resetwal.c:826 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:828 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:806 +#: pg_resetwal.c:830 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "БД с oldestMultiXid: %u\n" -#: pg_resetwal.c:812 +#: pg_resetwal.c:836 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:818 +#: pg_resetwal.c:842 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:824 +#: pg_resetwal.c:848 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:850 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:852 #, c-format msgid "OldestXID's DB: %u\n" msgstr "БД с oldestXID: %u\n" -#: pg_resetwal.c:834 +#: pg_resetwal.c:858 #, c-format msgid "NextXID epoch: %u\n" msgstr "Эпоха NextXID: %u\n" -#: pg_resetwal.c:840 +#: pg_resetwal.c:864 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:845 +#: pg_resetwal.c:869 #, 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:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 #, 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:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ошибка удаления файла \"%s\": %m" -#: pg_resetwal.c:1159 +#: pg_resetwal.c:1183 #, c-format msgid "fsync error: %m" msgstr "ошибка синхронизации с ФС: %m" -#: pg_resetwal.c:1168 +#: pg_resetwal.c:1192 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -674,17 +687,17 @@ msgstr "" "%s сбрасывает журнал предзаписи PostgreSQL.\n" "\n" -#: pg_resetwal.c:1169 +#: pg_resetwal.c:1193 #, c-format msgid "Usage:\n" msgstr "Использование:\n" -#: pg_resetwal.c:1170 +#: pg_resetwal.c:1194 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [ПАРАМЕТР]... КАТ_ДАННЫХ\n" -#: pg_resetwal.c:1172 +#: pg_resetwal.c:1196 #, c-format msgid "" "\n" @@ -693,12 +706,12 @@ msgstr "" "\n" "Параметры:\n" -#: pg_resetwal.c:1173 +#: pg_resetwal.c:1197 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]КАТ_ДАННЫХ каталог данных\n" -#: pg_resetwal.c:1174 +#: pg_resetwal.c:1198 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown " @@ -710,24 +723,24 @@ msgstr "" "нештатного\n" " отключения сервера\n" -#: pg_resetwal.c:1176 +#: pg_resetwal.c:1200 #, c-format msgid " -n, --dry-run no update, just show what would be done\n" msgstr "" " -n, --dry-run показать, какие действия будут выполнены, но не\n" " выполнять их\n" -#: pg_resetwal.c:1177 +#: pg_resetwal.c:1201 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: pg_resetwal.c:1178 +#: pg_resetwal.c:1202 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: pg_resetwal.c:1180 +#: pg_resetwal.c:1204 #, c-format msgid "" "\n" @@ -736,7 +749,7 @@ msgstr "" "\n" "Параметры, переопределяющие значения из контрольного файла:\n" -#: pg_resetwal.c:1181 +#: pg_resetwal.c:1205 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -748,13 +761,13 @@ msgstr "" " задать старейшую и новейшую транзакции,\n" " несущие метки времени (0 — не менять)\n" -#: pg_resetwal.c:1184 +#: pg_resetwal.c:1208 #, 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:1209 #, c-format msgid "" " -l, --next-wal-file=WALFILE set minimum starting location for new " @@ -763,7 +776,7 @@ msgstr "" " -l, --next-wal-file=ФАЙЛ_WAL задать минимальное начальное положение\n" " для нового WAL\n" -#: pg_resetwal.c:1186 +#: pg_resetwal.c:1210 #, c-format msgid "" " -m, --multixact-ids=MXID,MXID set next and oldest multitransaction ID\n" @@ -771,35 +784,42 @@ msgstr "" " -m, --multixact-ids=MXID,MXID задать ID следующей и старейшей\n" " мультитранзакции\n" -#: pg_resetwal.c:1187 +#: pg_resetwal.c:1211 #, 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:1212 #, c-format msgid " -O, --multixact-offset=OFFSET set next multitransaction offset\n" msgstr "" " -O, --multixact-offset=СМЕЩЕНИЕ задать смещение следующей " "мультитранзакции\n" -#: pg_resetwal.c:1189 +#: pg_resetwal.c:1213 #, 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:1190 +#: pg_resetwal.c:1214 #, 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:1215 +#, c-format +msgid "" +" --char-signedness=OPTION set char signedness to \"signed\" or " +"\"unsigned\"\n" +msgstr "" + +#: pg_resetwal.c:1216 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr "" " --wal-segsize=РАЗМЕР размер сегментов WAL (в мегабайтах)\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1218 #, c-format msgid "" "\n" @@ -808,7 +828,7 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1219 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" diff --git a/src/bin/pg_rewind/po/ru.po b/src/bin/pg_rewind/po/ru.po index 6f3d63dec583b..5cc933105bb63 100644 --- a/src/bin/pg_rewind/po/ru.po +++ b/src/bin/pg_rewind/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_rewind (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-07 13:07+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,22 +17,22 @@ 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" -#: ../../../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 file_ops.c:341 local_source.c:104 -#: local_source.c:163 parsexlog.c:371 +#: ../../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" @@ -54,7 +54,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 -#: 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" @@ -77,9 +77,9 @@ msgstr "" "этой программой. В этом случае результаты будут неверными и\n" "установленный 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 +#: ../../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" @@ -90,8 +90,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 "не удалось синхронизировать с ФС файл \"%s\": %m" @@ -107,34 +107,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" @@ -219,31 +219,36 @@ 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 "" @@ -324,17 +329,17 @@ msgstr "целевой путь символической ссылки \"%s\" msgid "could not close directory \"%s\": %m" msgstr "не удалось закрыть каталог \"%s\": %m" -#: filemap.c:297 +#: filemap.c:298 #, c-format msgid "data file \"%s\" in source is not a regular file" msgstr "файл данных \"%s\" в источнике не является обычным файлом" -#: filemap.c:302 filemap.c:335 +#: filemap.c:303 filemap.c:336 #, c-format msgid "duplicate source file \"%s\"" msgstr "повторный исходный файл \"%s\"" -#: filemap.c:390 +#: filemap.c:391 #, c-format msgid "unexpected page modification for non-regular file \"%s\"" msgstr "неожиданная модификация страницы для файла особого вида \"%s\"" @@ -354,78 +359,78 @@ msgstr "файл \"%s\" имеет разный тип в исходном и ц 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" @@ -433,72 +438,73 @@ 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 "неожиданные значения NULL в результате при получении файлов с сервера" -#: 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 -#, c-format +#: libpq_source.c:579 +#, fuzzy, c-format msgid "" -"received data at offset %lld of file \"%s\", when requested for offset %lld" +"received data at offset % of file \"%s\", when requested for offset " +"%lld" msgstr "" "получены данные по смещению %lld в файле \"%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\"" @@ -742,11 +748,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" @@ -767,74 +768,74 @@ msgstr "серверы разошлись в позиции WAL %X/%X на ли msgid "no rewind required" msgstr "перемотка не требуется" -#: pg_rewind.c:463 +#: 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:473 +#: pg_rewind.c:474 #, c-format msgid "reading source file list" msgstr "чтение списка исходных файлов" -#: pg_rewind.c:477 +#: pg_rewind.c:478 #, c-format msgid "reading target file list" msgstr "чтение списка целевых файлов" -#: pg_rewind.c:486 +#: pg_rewind.c:487 #, c-format msgid "reading WAL in target" msgstr "чтение WAL в целевом кластере" -#: pg_rewind.c:507 +#: 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:525 +#: pg_rewind.c:526 #, c-format msgid "syncing target data directory" msgstr "синхронизация целевого каталога данных" -#: pg_rewind.c:541 +#: pg_rewind.c:543 #, c-format msgid "Done!" msgstr "Готово!" -#: pg_rewind.c:621 +#: pg_rewind.c:623 #, c-format msgid "no action decided for file \"%s\"" msgstr "действие не определено для файла \"%s\"" -#: pg_rewind.c:653 +#: pg_rewind.c:655 #, c-format msgid "source system was modified while pg_rewind was running" msgstr "в исходной системе произошли изменения в процессе работы pg_rewind" -#: pg_rewind.c:657 +#: pg_rewind.c:659 #, c-format msgid "creating backup label and updating control file" msgstr "создание метки копии и модификация управляющего файла" -#: pg_rewind.c:707 +#: pg_rewind.c:709 #, c-format msgid "source system was in unexpected state at end of rewind" msgstr "исходная система оказалась в неожиданном состоянии после перемотки" -#: pg_rewind.c:739 +#: pg_rewind.c:741 #, c-format msgid "source and target clusters are from different systems" msgstr "исходный и целевой кластеры относятся к разным системам" -#: pg_rewind.c:747 +#: pg_rewind.c:749 #, c-format msgid "clusters are not compatible with this version of pg_rewind" msgstr "кластеры несовместимы с этой версией pg_rewind" -#: pg_rewind.c:757 +#: pg_rewind.c:759 #, c-format msgid "" "target server needs to use either data checksums or \"wal_log_hints = on\"" @@ -842,44 +843,44 @@ msgstr "" "на целевом сервере должны быть контрольные суммы данных или \"wal_log_hints " "= on\"" -#: pg_rewind.c:768 +#: pg_rewind.c:770 #, c-format msgid "target server must be shut down cleanly" msgstr "целевой сервер должен быть выключен штатно" -#: pg_rewind.c:778 +#: pg_rewind.c:780 #, c-format msgid "source data directory must be shut down cleanly" msgstr "работа с исходным каталогом данных должна быть завершена штатно" -#: pg_rewind.c:825 +#: pg_rewind.c:827 #, c-format msgid "%*s/%s kB (%d%%) copied" msgstr "%*s/%s КБ (%d%%) скопировано" -#: pg_rewind.c:951 +#: pg_rewind.c:953 #, c-format msgid "" "could not find common ancestor of the source and target cluster's timelines" msgstr "" "не удалось найти общего предка линий времени исходного и целевого кластеров" -#: pg_rewind.c:992 +#: pg_rewind.c:994 #, c-format msgid "backup label buffer too small" msgstr "буфер для метки копии слишком мал" -#: pg_rewind.c:1015 +#: pg_rewind.c:1017 #, c-format msgid "unexpected control file CRC" msgstr "неверная контрольная сумма управляющего файла" -#: pg_rewind.c:1027 +#: pg_rewind.c:1029 #, c-format msgid "unexpected control file size %d, expected %d" msgstr "неверный размер управляющего файла (%d), ожидалось: %d" -#: pg_rewind.c:1037 +#: 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)" @@ -887,50 +888,50 @@ msgstr[0] "управляющий файл содержит неверный р msgstr[1] "управляющий файл содержит неверный размер сегмента WAL (%d Б)" msgstr[2] "управляющий файл содержит неверный размер сегмента WAL (%d Б)" -#: pg_rewind.c:1041 +#: 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 должен задаваться степенью 2 в интервале от 1 МБ до 1 ГБ." -#: pg_rewind.c:1078 pg_rewind.c:1146 +#: 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:1081 pg_rewind.c:1149 +#: 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:1110 -#, c-format -msgid "could not read restore_command from target cluster" +#: pg_rewind.c:1112 +#, fuzzy, c-format +msgid "could not read \"restore_command\" from target cluster" msgstr "не удалось прочитать параметр \"restore_command\" в целевом кластере" -#: pg_rewind.c:1115 +#: pg_rewind.c:1117 #, c-format msgid "\"restore_command\" is not set in the target cluster" msgstr "параметр \"restore_command\" в целевом кластере не определён" -#: pg_rewind.c:1153 +#: pg_rewind.c:1155 #, c-format msgid "executing \"%s\" for target server to complete crash recovery" msgstr "" "выполнение \"%s\" для восстановления согласованности на целевом сервере" -#: pg_rewind.c:1191 +#: pg_rewind.c:1193 #, c-format msgid "postgres single-user mode in target cluster failed" msgstr "" "не удалось запустить postgres в целевом кластере в однопользовательском " "режиме" -#: pg_rewind.c:1192 +#: pg_rewind.c:1194 #, c-format msgid "Command was: %s" msgstr "Выполнялась команда: %s" @@ -971,72 +972,72 @@ 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" -#: 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 -#, c-format +#: xlogreader.c:1285 +#, fuzzy, c-format msgid "" "WAL file is from different database system: WAL file database system " -"identifier is %llu, pg_control database system identifier is %llu" +"identifier is %, pg_control database system identifier is %" msgstr "" "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД " "%llu, а идентификатор системы pg_control: %llu" -#: xlogreader.c:1282 +#: xlogreader.c:1293 #, c-format msgid "" "WAL file is from different database system: incorrect segment size in page " @@ -1045,7 +1046,7 @@ msgstr "" "файл WAL принадлежит другой СУБД: некорректный размер сегмента в заголовке " "страницы" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "" "WAL file is from different database system: incorrect XLOG_BLCKSZ in page " @@ -1054,12 +1055,12 @@ 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, " @@ -1068,23 +1069,23 @@ 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 идёт не по порядку в позиции %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 " @@ -1093,21 +1094,21 @@ 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 " @@ -1116,41 +1117,41 @@ 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, " @@ -1159,7 +1160,7 @@ 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" @@ -1167,7 +1168,7 @@ 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/ru.po b/src/bin/pg_test_fsync/po/ru.po index c6fccd00352bf..2ed3322d0e6fc 100644 --- a/src/bin/pg_test_fsync/po/ru.po +++ b/src/bin/pg_test_fsync/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_test_fsync (PostgreSQL) 10\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 18:11+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,22 +17,22 @@ 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" -#: ../../../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 "подсказка: " @@ -49,47 +49,47 @@ msgid "cannot duplicate null pointer (internal error)\n" msgstr "попытка дублирования нулевого указателя (внутренняя ошибка)\n" #. translator: maintain alignment with NA_FORMAT -#: pg_test_fsync.c:38 +#: pg_test_fsync.c:37 #, c-format msgid "%13.3f ops/sec %6.0f usecs/op\n" msgstr "%13.3f оп/с %6.0f мкс/оп\n" -#: pg_test_fsync.c:56 +#: pg_test_fsync.c:55 #, c-format msgid "could not create thread for alarm" msgstr "не удалось создать поток для обработки сигналов" -#: pg_test_fsync.c:101 +#: pg_test_fsync.c:100 #, c-format msgid "%s: %m" msgstr "%s: %m" -#: pg_test_fsync.c:165 +#: pg_test_fsync.c:163 #, c-format msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" msgstr "Использование: %s [-f ИМЯ_ФАЙЛА ] [-s ТЕСТ_СЕК]\n" -#: pg_test_fsync.c:191 +#: pg_test_fsync.c:189 #, c-format msgid "invalid argument for option %s" msgstr "недопустимый аргумент параметра %s" -#: pg_test_fsync.c:192 pg_test_fsync.c:204 pg_test_fsync.c:213 +#: pg_test_fsync.c:190 pg_test_fsync.c:202 pg_test_fsync.c:211 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Для дополнительной информации попробуйте \"%s --help\"." -#: pg_test_fsync.c:198 +#: pg_test_fsync.c:196 #, c-format msgid "%s must be in range %u..%u" msgstr "значение %s должно быть в диапазоне %u..%u" -#: pg_test_fsync.c:211 +#: pg_test_fsync.c:209 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "слишком много аргументов командной строки (первый: \"%s\")" -#: pg_test_fsync.c:217 +#: pg_test_fsync.c:215 #, c-format msgid "%u second per test\n" msgid_plural "%u seconds per test\n" @@ -97,42 +97,42 @@ msgstr[0] "на тест отводится %u сек.\n" msgstr[1] "на тест отводится %u сек.\n" msgstr[2] "на тест отводится %u сек.\n" -#: pg_test_fsync.c:222 +#: pg_test_fsync.c:220 #, c-format msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" msgstr "" "O_DIRECT на этой платформе не поддерживается для open_datasync и open_sync.\n" -#: pg_test_fsync.c:224 +#: pg_test_fsync.c:222 #, c-format msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" msgstr "" "F_NOCACHE на этой платформе поддерживается для open_datasync и open_sync.\n" -#: pg_test_fsync.c:226 +#: pg_test_fsync.c:224 #, c-format msgid "Direct I/O is not supported on this platform.\n" msgstr "Прямой ввод/вывод не поддерживается на этой платформе.\n" -#: pg_test_fsync.c:251 pg_test_fsync.c:341 pg_test_fsync.c:363 -#: pg_test_fsync.c:387 pg_test_fsync.c:531 pg_test_fsync.c:543 -#: pg_test_fsync.c:559 pg_test_fsync.c:565 pg_test_fsync.c:587 +#: pg_test_fsync.c:249 pg_test_fsync.c:339 pg_test_fsync.c:361 +#: pg_test_fsync.c:385 pg_test_fsync.c:529 pg_test_fsync.c:541 +#: pg_test_fsync.c:557 pg_test_fsync.c:563 pg_test_fsync.c:585 msgid "could not open output file" msgstr "не удалось открыть выходной файл" -#: pg_test_fsync.c:255 pg_test_fsync.c:325 pg_test_fsync.c:350 -#: pg_test_fsync.c:372 pg_test_fsync.c:396 pg_test_fsync.c:435 -#: pg_test_fsync.c:494 pg_test_fsync.c:533 pg_test_fsync.c:561 -#: pg_test_fsync.c:592 +#: pg_test_fsync.c:253 pg_test_fsync.c:323 pg_test_fsync.c:348 +#: pg_test_fsync.c:370 pg_test_fsync.c:394 pg_test_fsync.c:433 +#: pg_test_fsync.c:492 pg_test_fsync.c:531 pg_test_fsync.c:559 +#: pg_test_fsync.c:590 msgid "write failed" msgstr "ошибка записи" -#: pg_test_fsync.c:259 pg_test_fsync.c:374 pg_test_fsync.c:398 -#: pg_test_fsync.c:535 pg_test_fsync.c:567 +#: pg_test_fsync.c:257 pg_test_fsync.c:372 pg_test_fsync.c:396 +#: pg_test_fsync.c:533 pg_test_fsync.c:565 msgid "fsync failed" msgstr "ошибка синхронизации с ФС" -#: pg_test_fsync.c:298 +#: pg_test_fsync.c:296 #, c-format msgid "" "\n" @@ -141,7 +141,7 @@ msgstr "" "\n" "Сравнение методов синхронизации файлов при однократной записи %d КБ:\n" -#: pg_test_fsync.c:300 +#: pg_test_fsync.c:298 #, c-format msgid "" "\n" @@ -150,7 +150,7 @@ msgstr "" "\n" "Сравнение методов синхронизации файлов при двухкратной записи %d КБ:\n" -#: pg_test_fsync.c:301 +#: pg_test_fsync.c:299 #, c-format msgid "" "(in \"wal_sync_method\" preference order, except fdatasync is Linux's " @@ -159,16 +159,16 @@ msgstr "" "(в порядке предпочтения для \"wal_sync_method\", за исключением того, что в " "Linux предпочитается fdatasync)\n" -#: pg_test_fsync.c:312 pg_test_fsync.c:415 pg_test_fsync.c:482 +#: pg_test_fsync.c:310 pg_test_fsync.c:413 pg_test_fsync.c:480 msgid "n/a*" msgstr "н/д*" -#: pg_test_fsync.c:331 pg_test_fsync.c:403 pg_test_fsync.c:441 -#: pg_test_fsync.c:500 +#: pg_test_fsync.c:329 pg_test_fsync.c:401 pg_test_fsync.c:439 +#: pg_test_fsync.c:498 msgid "n/a" msgstr "н/д" -#: pg_test_fsync.c:446 +#: pg_test_fsync.c:444 #, c-format msgid "" "* This file system and its mount options do not support direct\n" @@ -177,7 +177,7 @@ msgstr "" "* Эта файловая система с текущими параметрами монтирования не поддерживает\n" " прямой ввод/вывод, как например, ext4 в режиме журналирования.\n" -#: pg_test_fsync.c:454 +#: pg_test_fsync.c:452 #, c-format msgid "" "\n" @@ -186,7 +186,7 @@ msgstr "" "\n" "Сравнение open_sync при различных объёмах записываемых данных:\n" -#: pg_test_fsync.c:455 +#: pg_test_fsync.c:453 #, c-format msgid "" "(This is designed to compare the cost of writing 16kB in different write\n" @@ -197,27 +197,27 @@ msgstr "" "записи с open_sync.)\n" # skip-rule: double-space -#: pg_test_fsync.c:458 +#: pg_test_fsync.c:456 msgid " 1 * 16kB open_sync write" msgstr "запись с open_sync 1 * 16 КБ" -#: pg_test_fsync.c:459 +#: pg_test_fsync.c:457 msgid " 2 * 8kB open_sync writes" msgstr "запись с open_sync 2 * 8 КБ" -#: pg_test_fsync.c:460 +#: pg_test_fsync.c:458 msgid " 4 * 4kB open_sync writes" msgstr "запись с open_sync 4 * 4 КБ" -#: pg_test_fsync.c:461 +#: pg_test_fsync.c:459 msgid " 8 * 2kB open_sync writes" msgstr "запись с open_sync 8 * 2 КБ" -#: pg_test_fsync.c:462 +#: pg_test_fsync.c:460 msgid "16 * 1kB open_sync writes" msgstr "запись с open_sync 16 * 1 КБ" -#: pg_test_fsync.c:516 +#: pg_test_fsync.c:514 #, c-format msgid "" "\n" @@ -227,7 +227,7 @@ msgstr "" "Проверка, производится ли fsync с указателем файла, открытого не для " "записи:\n" -#: pg_test_fsync.c:517 +#: pg_test_fsync.c:515 #, c-format msgid "" "(If the times are similar, fsync() can sync data written on a different\n" @@ -237,7 +237,7 @@ msgstr "" "данные,\n" "записанные через другой дескриптор.)\n" -#: pg_test_fsync.c:582 +#: pg_test_fsync.c:580 #, c-format msgid "" "\n" diff --git a/src/bin/pg_upgrade/po/ka.po b/src/bin/pg_upgrade/po/ka.po index 24547488c6e90..58d0acd1eae91 100644 --- a/src/bin/pg_upgrade/po/ka.po +++ b/src/bin/pg_upgrade/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-08 17:20+0000\n" -"PO-Revision-Date: 2025-07-09 05:44+0200\n" +"POT-Creation-Date: 2025-08-15 21:19+0000\n" +"PO-Revision-Date: 2025-08-16 16:35+0200\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -583,7 +583,7 @@ msgid "" "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" +" ALTER TABLE tablename ALTER column SET NOT NULL;\n" "on each column listed in the file:\n" " %s" msgstr "" @@ -2019,7 +2019,7 @@ msgstr "ვერსიის ფაილის გახსნის შეც msgid "could not parse version file \"%s\"" msgstr "ვერსიის ფაილის დამუშავების შეცდომა \"%s\"" -#: server.c:317 +#: server.c:299 #, c-format msgid "" "\n" @@ -2028,7 +2028,7 @@ msgstr "" "\n" "%s" -#: server.c:321 +#: server.c:303 #, c-format msgid "" "could not connect to source postmaster started with the command:\n" @@ -2037,7 +2037,7 @@ msgstr "" "ვერ ვუკავშირდები საწყის postmaster-ს, რომელიც შემდეგი ბრძანებით გაეშვა:\n" "%s" -#: server.c:325 +#: server.c:307 #, c-format msgid "" "could not connect to target postmaster started with the command:\n" @@ -2046,22 +2046,22 @@ msgstr "" "ვერ ვუკავშირდები სამიზნე postmaster-ს, რომელიც შემდეგი ბრძანებით გაეშვა:\n" "%s" -#: server.c:339 +#: server.c:321 #, c-format msgid "pg_ctl failed to start the source server, or connection failed" msgstr "pg_ctl-ის შეცდომა საწყისი სერვერის გაშვებისას ან შეერთების შეცდომა" -#: server.c:341 +#: server.c:323 #, c-format msgid "pg_ctl failed to start the target server, or connection failed" msgstr "pg_ctl-ის შეცდომა სამიზნე სერვერის გაშვებისას ან შეერთების შეცდომა" -#: server.c:386 task.c:195 +#: server.c:368 task.c:195 #, c-format msgid "out of memory" msgstr "არასაკმარისი მეხსიერება" -#: server.c:399 +#: server.c:381 #, c-format msgid "libpq environment variable %s has a non-local server value: %s" msgstr "libpq-ის გარემოს ცვლად %s-ს არალოკალური სერვერის მნიშვნელობა: %s გააჩნია" diff --git a/src/bin/pg_upgrade/po/ru.po b/src/bin/pg_upgrade/po/ru.po index 71fa979972e85..a112757e9445d 100644 --- a/src/bin/pg_upgrade/po/ru.po +++ b/src/bin/pg_upgrade/po/ru.po @@ -1,14 +1,14 @@ # Russian message translation file for pg_upgrade # Copyright (C) 2017 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Alexander Lakhin , 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin # Maxim Yablokov , 2021. msgid "" msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL) 10\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-11-02 08:21+0300\n" -"PO-Revision-Date: 2024-11-02 08:31+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" +"PO-Revision-Date: 2025-08-09 07:24+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -48,24 +48,24 @@ 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" @@ -79,11 +79,11 @@ msgstr "" "проблемные\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" @@ -99,11 +99,11 @@ msgstr "" "можете\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" @@ -115,11 +115,11 @@ msgstr "" "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" @@ -134,11 +134,11 @@ msgstr "" "и\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" @@ -152,12 +152,12 @@ msgstr "" "проблемные\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" @@ -169,12 +169,12 @@ msgstr "" "поэтому обновить данный кластер невозможно. Вы можете удалить проблемные\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" @@ -187,12 +187,12 @@ msgstr "" "и\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" @@ -208,12 +208,12 @@ 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" @@ -229,12 +229,12 @@ 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" @@ -250,34 +250,34 @@ msgstr "" "поменять\n" "их тип на другой, а затем перезапустить обновление.\n" -#: check.c:345 -#, c-format -msgid "Checking data type usage" -msgstr "Проверка использования типов данных" - -#: check.c:480 +#: check.c:422 #, 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" @@ -286,7 +286,7 @@ msgstr "" "Проверка целостности на старом работающем сервере\n" "-------------------------------------------------" -#: check.c:569 +#: check.c:582 #, c-format msgid "" "Performing Consistency Checks\n" @@ -295,7 +295,15 @@ msgstr "" "Проведение проверок целостности\n" "-------------------------------" -#: check.c:718 +#: check.c:754 +#, fuzzy, 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" @@ -304,7 +312,7 @@ msgstr "" "\n" "*Кластеры совместимы*" -#: check.c:726 +#: check.c:785 #, c-format msgid "" "\n" @@ -316,18 +324,19 @@ msgstr "" "initdb\n" "для нового кластера, чтобы продолжить." -#: check.c:767 -#, c-format +#: check.c:826 +#, fuzzy, 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" +"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" -#: check.c:773 +#: check.c:835 #, c-format msgid "" "Running this script will delete the old cluster's data files:\n" @@ -336,7 +345,7 @@ 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" @@ -349,24 +358,24 @@ 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." @@ -374,7 +383,7 @@ msgstr "" "Эта утилита не может понижать версию до более старой основной версии " "PostgreSQL." -#: check.c:821 +#: check.c:883 #, c-format msgid "" "Old cluster data and binary directories are from different major versions." @@ -382,7 +391,7 @@ msgstr "" "Каталоги данных и исполняемых файлов старого кластера относятся к разным " "основным версиям." -#: check.c:824 +#: check.c:886 #, c-format msgid "" "New cluster data and binary directories are from different major versions." @@ -390,7 +399,14 @@ msgstr "" "Каталоги данных и исполняемых файлов нового кластера относятся к разным " "основным версиям." -#: check.c:839 +#: check.c:897 +#, fuzzy, c-format +msgid "The option %s cannot be used for upgrades from PostgreSQL %s and later." +msgstr "" +"Эта утилита может производить обновление только с версии PostgreSQL %s и " +"новее." + +#: check.c:913 #, c-format msgid "" "When checking a live server, the old and new port numbers must be different." @@ -398,24 +414,24 @@ 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" @@ -426,7 +442,7 @@ msgstr "" "ПРЕДУПРЕЖДЕНИЕ: новый каталог данных не должен располагаться внутри старого " "каталога данных, то есть, в %s" -#: check.c:950 +#: check.c:1025 #, c-format msgid "" "\n" @@ -437,42 +453,42 @@ msgstr "" "ПРЕДУПРЕЖДЕНИЕ: пользовательские табличные пространства не должны " "располагаться внутри каталога данных, то есть, в %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 " @@ -481,21 +497,22 @@ 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 -#, c-format +#: check.c:1204 +#, fuzzy, 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, должны допускать подключения, то есть их свойство " @@ -506,27 +523,27 @@ msgstr "" "с этой проблемой содержится в файле:\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" @@ -548,12 +565,12 @@ msgstr "" "проблемных функций приведён в файле:\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" @@ -569,12 +586,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" @@ -595,12 +612,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" @@ -616,12 +633,36 @@ msgstr "" "Список проблемных таблиц приведён в файле:\n" " %s" -#: check.c:1596 +#: check.c:1684 +#, c-format +msgid "Checking for not-null constraint inconsistencies" +msgstr "Проверка несогласованных ограничений NOT 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" +"Исправить эту ситуацию можно, выполнив:\n" +" ALTER TABLE имя_таблицы ALTER столбец 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" @@ -636,12 +677,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" @@ -658,32 +699,51 @@ msgstr "" "Список пользовательских перекодировок приведён в файле:\n" " %s" -#: check.c:1746 +#: check.c:1939 +#, fuzzy, c-format +msgid "Checking for objects affected by Unicode update" +msgstr "Проверка обновлённых расширений" + +#: 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 "" + +#: 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 "обнаружено слотов логической репликации: %d, тогда как ожидалось 0" -#: 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 " @@ -692,26 +752,26 @@ 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 -#, c-format +#: check.c:2153 +#, fuzzy, c-format msgid "" -"\"max_replication_slots\" (%d) must be greater than or equal to the number " -"of subscriptions (%d) on the old cluster" +"\"max_active_replication_origins\" (%d) must be greater than or equal to the " +"number of subscriptions (%d) on the old cluster" msgstr "" "значение \"max_replication_slots\" (%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 " @@ -729,12 +789,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 " @@ -752,17 +812,17 @@ 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 " @@ -772,7 +832,7 @@ msgstr "" "обновление, используйте документированный способ с rsync или отключите его в " "режиме главного сервера." -#: controldata.c:160 +#: controldata.c:164 #, c-format msgid "" "The target cluster was shut down while in recovery mode. To upgrade, use " @@ -782,174 +842,179 @@ 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 "В целевом кластере не хватает необходимой управляющей информации:" # skip-rule: capital-letter-first -#: controldata.c:584 +#: controldata.c:624 #, c-format msgid " checkpoint next XID" msgstr " следующий XID конт. точки" # skip-rule: capital-letter-first -#: controldata.c:587 +#: controldata.c:627 #, c-format msgid " latest checkpoint next OID" msgstr " следующий OID последней конт. точки" # skip-rule: capital-letter-first -#: controldata.c:590 +#: controldata.c:630 #, c-format msgid " latest checkpoint next MultiXactId" msgstr " следующий MultiXactId последней конт. точки" # skip-rule: capital-letter-first -#: controldata.c:594 +#: controldata.c:634 #, c-format msgid " latest checkpoint oldest MultiXactId" msgstr " старейший MultiXactId последней конт. точки" # skip-rule: capital-letter-first -#: controldata.c:597 +#: controldata.c:637 #, c-format msgid " latest checkpoint oldestXID" msgstr " oldestXID последней конт. точки" # skip-rule: capital-letter-first -#: 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" @@ -958,13 +1023,13 @@ 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 " @@ -973,13 +1038,13 @@ 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" @@ -987,7 +1052,7 @@ 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 " @@ -996,7 +1061,7 @@ 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 " @@ -1005,7 +1070,7 @@ 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 " @@ -1014,7 +1079,7 @@ 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 " @@ -1022,48 +1087,50 @@ msgid "" msgstr "" "старый и новый размер порции большого объекта различаются или некорректны" -#: 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 -#, c-format -msgid "Adding \".old\" suffix to old global/pg_control" +#. translator: %s is the file path of the control file +#: controldata.c:762 +#, fuzzy, c-format +msgid "Adding \".old\" suffix to old \"%s\"" msgstr "Добавление расширения \".old\" к старому файлу global/pg_control" -#: 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 -#, c-format +#. translator: %s/%s is the file path of the control file +#: controldata.c:773 +#, fuzzy, 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 "" @@ -1073,6 +1140,19 @@ msgstr "" "Так как применялся режим \"ссылок\", работа старого кластера\n" "после того, как будет запущен новый, не гарантируется." +#: controldata.c:780 +#, c-format +msgid "" +"\n" +"Because \"swap\" mode was used, the old cluster can no longer be\n" +"safely started." +msgstr "" + +#: controldata.c:784 file.c:455 +#, c-format +msgid "unrecognized transfer mode" +msgstr "" + #: dump.c:20 #, c-format msgid "Creating dump of global objects" @@ -1103,7 +1183,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" @@ -1140,7 +1220,7 @@ 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" @@ -1293,7 +1373,7 @@ 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" @@ -1305,22 +1385,34 @@ msgstr "" "В режиме \"ссылок\" старый и новый каталоги данных должны находиться в одной " "файловой системе." -#: function.c:154 +#: file.c:452 +#, fuzzy, 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" @@ -1335,7 +1427,7 @@ 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." @@ -1344,32 +1436,32 @@ 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 " @@ -1378,7 +1470,7 @@ 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 " @@ -1387,7 +1479,7 @@ msgstr "" "В новом кластере не нашлось соответствия для старого отношения с OID %u в " "базе данных \"%s\": %s" -#: info.c:300 +#: info.c:325 #, c-format msgid "" "\n" @@ -1396,7 +1488,7 @@ msgstr "" "\n" "исходные базы данных:" -#: info.c:302 +#: info.c:327 #, c-format msgid "" "\n" @@ -1405,94 +1497,99 @@ 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 "имя_отношения: \"%s.%s\", oid_отношения: %u, табл_пространство: %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\", двухфазный: %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 "" + +#: 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" @@ -1501,12 +1598,12 @@ 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" @@ -1515,18 +1612,18 @@ msgstr "" " pg_upgrade [ПАРАМЕТР]...\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=КАТ_BIN каталог исполняемых файлов старого кластера\n" -#: option.c:289 +#: option.c:311 #, c-format msgid "" " -B, --new-bindir=BINDIR new cluster executable directory (default\n" @@ -1535,7 +1632,7 @@ msgstr "" " -B, --new-bindir=КАТ_BIN каталог исполняемых файлов нового кластера\n" " (по умолчанию каталог программы pg_upgrade)\n" -#: option.c:291 +#: option.c:313 #, c-format msgid "" " -c, --check check clusters only, don't change any data\n" @@ -1543,17 +1640,17 @@ 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=КАТ_ДАННЫХ каталог данных старого кластера\n" -#: option.c:293 +#: option.c:315 #, c-format msgid " -D, --new-datadir=DATADIR new cluster data directory\n" msgstr " -D, --new-datadir=КАТ_ДАННЫХ каталог данных нового кластера\n" -#: option.c:294 +#: option.c:316 #, c-format msgid "" " -j, --jobs=NUM number of simultaneous processes or threads " @@ -1563,7 +1660,7 @@ msgstr "" "или\n" " потоков\n" -#: option.c:295 +#: option.c:317 #, c-format msgid "" " -k, --link link instead of copying files to new " @@ -1573,7 +1670,7 @@ msgstr "" "файлов\n" " в новый кластер\n" -#: option.c:296 +#: option.c:318 #, c-format msgid "" " -N, --no-sync do not wait for changes to be written safely " @@ -1582,7 +1679,7 @@ 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" @@ -1590,7 +1687,7 @@ msgstr "" " -o, --old-options=ПАРАМЕТРЫ параметры старого кластера, передаваемые " "серверу\n" -#: option.c:298 +#: option.c:320 #, c-format msgid "" " -O, --new-options=OPTIONS new cluster options to pass to the server\n" @@ -1598,21 +1695,21 @@ msgstr "" " -O, --new-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=ПОРТ номер порта старого кластера (по умолчанию " "%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=ПОРТ номер порта нового кластера (по умолчанию " "%d)\n" -#: option.c:301 +#: option.c:323 #, c-format msgid "" " -r, --retain retain SQL and log files after success\n" @@ -1620,7 +1717,7 @@ msgstr "" " -r, --retain сохранить файлы журналов и SQL в случае " "успеха\n" -#: option.c:302 +#: option.c:324 #, c-format msgid "" " -s, --socketdir=DIR socket directory to use (default current " @@ -1628,27 +1725,27 @@ msgid "" msgstr "" " -s, --socketdir=КАТАЛОГ каталог сокетов (по умолчанию текущий)\n" -#: option.c:303 +#: option.c:325 #, c-format msgid " -U, --username=NAME cluster superuser (default \"%s\")\n" msgstr "" " -U, --username=ИМЯ суперпользователь кластера (по умолчанию " "\"%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 " @@ -1657,14 +1754,14 @@ 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 " @@ -1673,17 +1770,38 @@ msgstr "" " --copy-file-range копировать файлы в новый кластер, используя\n" " функцию copy_file_range\n" -#: option.c:309 +#: option.c:331 +#, c-format +msgid "" +" --no-statistics do not import statistics from old cluster\n" +msgstr "" + +#: option.c:332 +#, c-format +msgid "" +" --set-char-signedness=OPTION set new cluster char signedness to " +"\"signed\" or\n" +" \"unsigned\"\n" +msgstr "" + +#: option.c:334 +#, fuzzy, c-format +msgid " --swap move data directories to new cluster\n" +msgstr "" +" --clone клонировать, а не копировать файлы в новый " +"кластер\n" + +#: option.c:335 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-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" @@ -1698,7 +1816,7 @@ msgstr "" " остановить процесс postmaster, обслуживающий старый кластер\n" " остановить процесс postmaster, обслуживающий новый кластер\n" -#: option.c:316 +#: option.c:342 #, c-format msgid "" "\n" @@ -1715,7 +1833,7 @@ msgstr "" " путь к каталогу \"bin\" старой версии (-b КАТ_BIN)\n" " путь к каталогу \"bin\" новой версии (-B КАТ_BIN)\n" -#: option.c:322 +#: option.c:348 #, c-format msgid "" "\n" @@ -1730,7 +1848,7 @@ msgstr "" "bin -B новый_кластер/bin\n" "или\n" -#: option.c:327 +#: option.c:353 #, c-format msgid "" " $ export PGDATAOLD=oldCluster/data\n" @@ -1745,7 +1863,7 @@ msgstr "" " $ export PGBINNEW=новый_кластер/bin\n" " $ pg_upgrade\n" -#: option.c:333 +#: option.c:359 #, c-format msgid "" " C:\\> set PGDATAOLD=oldCluster/data\n" @@ -1760,7 +1878,7 @@ msgstr "" " C:\\> set PGBINNEW=новый_кластер/bin\n" " C:\\> pg_upgrade\n" -#: option.c:339 +#: option.c:365 #, c-format msgid "" "\n" @@ -1769,12 +1887,12 @@ 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" @@ -1784,32 +1902,32 @@ msgstr "" "Воспользуйтесь для этого ключом командной строки %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" @@ -1824,7 +1942,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" @@ -1839,12 +1957,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" @@ -1855,17 +1973,17 @@ msgstr "" "Выполнение обновления\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" @@ -1876,23 +1994,24 @@ msgstr "" "Обновление завершено\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" @@ -1901,7 +2020,7 @@ 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" @@ -1910,116 +2029,161 @@ msgstr "" "Видимо, запущен процесс postmaster, обслуживающий новый кластер.\n" "Остановите его и попробуйте ещё раз." -#: pg_upgrade.c:413 +#: pg_upgrade.c:421 +#, fuzzy, 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 "Установка старейшего OID для нового кластера" -#: pg_upgrade.c:719 +#: pg_upgrade.c:769 #, c-format msgid "Setting next transaction ID and epoch for new cluster" msgstr "" "Установка следующего идентификатора транзакции и эпохи для нового кластера" -#: pg_upgrade.c:749 +#: pg_upgrade.c:799 #, c-format msgid "Setting next multixact ID and offset for new cluster" msgstr "" "Установка следующего идентификатора и смещения мультитранзакции для нового " "кластера" -#: pg_upgrade.c:773 +#: pg_upgrade.c:823 #, c-format msgid "Setting oldest multixact ID in new cluster" msgstr "Установка старейшего идентификатора мультитранзакции в новом кластере" -#: 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 +#, fuzzy, 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 +#, fuzzy, 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 +#, fuzzy, c-format +msgid "could not stat file \"%s\": %m" +msgstr "не удалось создать файл \"%s\": %m" + +#: relfilenumber.c:301 relfilenumber.c:305 +#, fuzzy, c-format +msgid "could not rename directory \"%s\" to \"%s\": %m" +msgstr "не удалось переименовать файл \"%s\" в \"%s\": %m" + +#: relfilenumber.c:375 relfilenumber.c:402 +#, fuzzy, c-format +msgid "could not open directory \"%s\": %m" +msgstr "не удалось создать каталог \"%s\": %m" + +#: relfilenumber.c:396 relfilenumber.c:434 +#, fuzzy, c-format +msgid "could not read directory \"%s\": %m" +msgstr "не удалось создать каталог \"%s\": %m" + +#: relfilenumber.c:439 +#, fuzzy, c-format +msgid "could not synchronize directory \"%s\": %m" +msgstr "не удалось создать каталог \"%s\": %m" + +#: relfilenumber.c:441 +#, fuzzy, 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" @@ -2027,31 +2191,36 @@ 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 "копирование \"%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" @@ -2083,7 +2252,7 @@ msgstr "не удалось открыть файл с версией \"%s\": %m msgid "could not parse version file \"%s\"" msgstr "не удалось разобрать файл с версией \"%s\"" -#: server.c:310 +#: server.c:299 #, c-format msgid "" "\n" @@ -2092,7 +2261,7 @@ msgstr "" "\n" "%s" -#: server.c:314 +#: server.c:303 #, c-format msgid "" "could not connect to source postmaster started with the command:\n" @@ -2102,7 +2271,7 @@ msgstr "" "командой:\n" "%s" -#: server.c:318 +#: server.c:307 #, c-format msgid "" "could not connect to target postmaster started with the command:\n" @@ -2112,26 +2281,26 @@ msgstr "" "командой:\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 "" @@ -2162,6 +2331,16 @@ msgstr "" msgid "tablespace path \"%s\" is not a directory" msgstr "путь табличного пространства \"%s\" не указывает на каталог" +#: task.c:216 task.c:267 task.c:282 task.c:293 +#, fuzzy, 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" @@ -2182,11 +2361,6 @@ msgstr "ок" msgid "Checking for hash indexes" msgstr "Проверка хеш-индексов" -#: version.c:121 -#, c-format -msgid "warning" -msgstr "предупреждение" - #: version.c:123 #, c-format msgid "" @@ -2221,17 +2395,17 @@ msgstr "" "будучи выполненным администратором БД в 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" @@ -2452,9 +2626,6 @@ msgstr "" #~ "проверка файла \"%s\" не пройдена: не удаётся прочитать файл (нет " #~ "доступа)\n" -#~ msgid "connection to database failed: %s" -#~ msgstr "не удалось подключиться к базе: %s" - #~ msgid "" #~ "\n" #~ "connection to database failed: %s" diff --git a/src/bin/pg_waldump/po/ru.po b/src/bin/pg_waldump/po/ru.po index bafe5a3233c66..6d27400889797 100644 --- a/src/bin/pg_waldump/po/ru.po +++ b/src/bin/pg_waldump/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_waldump (PostgreSQL) 10\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-07 08:59+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,22 +17,22 @@ 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" -#: ../../../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 "не удалось синхронизировать с ФС файл \"%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" @@ -490,72 +490,72 @@ 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" -#: 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 -#, c-format +#: xlogreader.c:1285 +#, fuzzy, c-format msgid "" "WAL file is from different database system: WAL file database system " -"identifier is %llu, pg_control database system identifier is %llu" +"identifier is %, pg_control database system identifier is %" msgstr "" "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД " "%llu, а идентификатор системы pg_control: %llu" -#: xlogreader.c:1282 +#: xlogreader.c:1293 #, c-format msgid "" "WAL file is from different database system: incorrect segment size in page " @@ -564,7 +564,7 @@ msgstr "" "файл WAL принадлежит другой СУБД: некорректный размер сегмента в заголовке " "страницы" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "" "WAL file is from different database system: incorrect XLOG_BLCKSZ in page " @@ -573,12 +573,12 @@ 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, " @@ -587,23 +587,23 @@ 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 идёт не по порядку в позиции %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 " @@ -612,21 +612,21 @@ 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 " @@ -635,41 +635,41 @@ 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, " @@ -678,7 +678,7 @@ 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" @@ -686,7 +686,7 @@ 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_walsummary/po/ru.po b/src/bin/pg_walsummary/po/ru.po index 1dcd7aaf72aec..0fe35651185b6 100644 --- a/src/bin/pg_walsummary/po/ru.po +++ b/src/bin/pg_walsummary/po/ru.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_walsummary (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:31+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-05 14:47+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -15,22 +15,22 @@ msgstr "" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Lokalize 21.12.3\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 "подсказка: " @@ -46,45 +46,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 "не удалось синхронизировать с ФС файл \"%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" @@ -104,22 +104,22 @@ 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" @@ -128,17 +128,17 @@ 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 [ПАРАМЕТР]... [ФАЙЛ]...\n" -#: pg_walsummary.c:270 +#: pg_walsummary.c:269 #, c-format msgid "" "\n" @@ -147,7 +147,7 @@ msgstr "" "\n" "Параметры:\n" -#: pg_walsummary.c:271 +#: pg_walsummary.c:270 #, c-format msgid "" " -i, --individual list block numbers individually, not as ranges\n" @@ -155,24 +155,24 @@ 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" @@ -181,7 +181,7 @@ 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/psql/po/de.po b/src/bin/psql/po/de.po index e2a6870204b30..6f2cfc6f215b7 100644 --- a/src/bin/psql/po/de.po +++ b/src/bin/psql/po/de.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-06-26 11:48+0000\n" -"PO-Revision-Date: 2025-06-26 16:20+0200\n" +"POT-Creation-Date: 2025-08-25 17:18+0000\n" +"PO-Revision-Date: 2025-08-25 22:20+0200\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -78,7 +78,7 @@ msgid "%s() failed: %m" msgstr "%s() fehlgeschlagen: %m" #: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 -#: command.c:1639 command.c:3988 command.c:4037 command.c:4162 input.c:225 +#: 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 "kann NULL-Zeiger nicht kopieren (interner Fehler)\n" msgid "could not look up effective user ID %ld: %s" msgstr "konnte effektive Benutzer-ID %ld nicht nachschlagen: %s" -#: ../../common/username.c:45 command.c:700 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "Benutzer existiert nicht" @@ -194,169 +194,174 @@ msgstr "Argument des Shell-Befehls enthält Newline oder Carriage Return: »%s« msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "Datenbankname enthält Newline oder Carriage Return: »%s«\n" -#: command.c:245 +#: command.c:254 +#, c-format +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "Backslash-Befehle sind eingeschränkt; nur \\unrestrict ist erlaubt" + +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "ungültige Anweisung \\%s" -#: command.c:247 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr "Versuchen Sie \\? für Hilfe." -#: command.c:265 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s: überflüssiges Argument »%s« ignoriert" -#: command.c:317 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "Befehl \\%s ignoriert; verwenden Sie \\endif oder Strg-C um den aktuellen \\if-Block zu beenden" -#: command.c:552 command.c:747 command.c:1885 command.c:2053 command.c:2366 -#: command.c:2380 command.c:2412 command.c:2501 command.c:2614 command.c:2892 -#: command.c:3154 command.c:3194 +#: 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: notwendiges Argument fehlt" -#: command.c:698 +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "konnte Home-Verzeichnis für Benutzer-ID %ld nicht ermitteln: %s" -#: command.c:717 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s: konnte nicht in das Verzeichnis »%s« wechseln: %m" -#: command.c:790 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "Sie sind gegenwärtig nicht mit einer Datenbank verbunden.\n" -#: command.c:818 +#: command.c:839 msgid "Connection Information" msgstr "Verbindungsinformationen" -#: command.c:819 describe.c:4722 +#: command.c:840 describe.c:4722 msgid "Parameter" msgstr "Parameter" -#: command.c:820 describe.c:4723 +#: command.c:841 describe.c:4723 msgid "Value" msgstr "Wert" -#: command.c:823 describe.c:3874 +#: command.c:844 describe.c:3874 msgid "Database" msgstr "Datenbank" -#: command.c:827 +#: command.c:848 msgid "Client User" msgstr "Client-Benutzer" -#: command.c:836 command.c:851 +#: command.c:857 command.c:872 msgid "Host Address" msgstr "Hostadresse" -#: command.c:841 +#: command.c:862 msgid "Socket Directory" msgstr "Socket-Verzeichnis" -#: command.c:847 +#: command.c:868 msgid "Host" msgstr "Host" -#: command.c:857 +#: command.c:878 msgid "Server Port" msgstr "Serverport" -#: command.c:861 describe.c:246 describe.c:3615 describe.c:3955 +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 msgid "Options" msgstr "Optionen" -#: command.c:865 +#: command.c:886 msgid "Protocol Version" msgstr "Protokollversion" -#: command.c:869 +#: command.c:890 msgid "Password Used" msgstr "Passwort verwendet" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "false" msgstr "falsch" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "true" msgstr "wahr" -#: command.c:873 +#: command.c:894 msgid "GSSAPI Authenticated" msgstr "GSSAPI-authentifiziert" -#: command.c:877 +#: command.c:898 msgid "Backend PID" msgstr "Backend-PID" -#: command.c:881 +#: command.c:902 msgid "SSL Connection" msgstr "SSL-Verbindung" -#: command.c:901 +#: command.c:922 msgid "SSL Library" msgstr "SSL-Bibliothek" -#: command.c:902 command.c:905 command.c:908 command.c:911 command.c:923 -#: command.c:927 command.c:4426 command.c:4427 +#: 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 "unbekannt" -#: command.c:904 +#: command.c:925 msgid "SSL Protocol" msgstr "SSL-Protokoll" -#: command.c:907 +#: command.c:928 msgid "SSL Key Bits" msgstr "SSL-Schlüssel-Bits" -#: command.c:910 +#: command.c:931 msgid "SSL Cipher" msgstr "SSL-Verschlüsselungsmethode" -#: command.c:913 +#: command.c:934 msgid "SSL Compression" msgstr "SSL-Komprimierung" -#: command.c:917 +#: command.c:938 msgid "ALPN" msgstr "ALPN" -#: command.c:918 command.c:4429 +#: command.c:939 command.c:4519 msgid "none" msgstr "keine" -#: command.c:1335 command.c:1436 command.c:3187 +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "kein Anfragepuffer" -#: command.c:1368 command.c:6310 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "ungültige Zeilennummer: %s" -#: command.c:1514 +#: command.c:1535 msgid "No changes" msgstr "keine Änderungen" -#: command.c:1599 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s: ungültiger Kodierungsname oder Umwandlungsprozedur nicht gefunden" -#: command.c:1635 command.c:2575 command.c:3984 command.c:4182 command.c:6416 +#: 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 @@ -365,223 +370,233 @@ msgstr "%s: ungültiger Kodierungsname oder Umwandlungsprozedur nicht gefunden" msgid "%s" msgstr "%s" -#: command.c:1642 +#: command.c:1663 msgid "There is no previous error." msgstr "Es gibt keinen vorangegangenen Fehler." -#: command.c:1745 command.c:1952 command.c:1978 command.c:3290 +#: command.c:1766 command.c:1973 command.c:1999 command.c:3380 #, c-format msgid "\\%s not allowed in pipeline mode" msgstr "\\%s im Pipeline-Modus nicht erlaubt" -#: command.c:1801 +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: rechte Klammer fehlt" -#: command.c:1927 +#: command.c:1948 #, c-format msgid "\\getresults: invalid number of requested results" msgstr "\\getresults: ungültige Anzahl angeforderter Ergebnisse" -#: command.c:2184 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif: kann nicht nach \\else kommen" -#: command.c:2189 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif: kein passendes \\if" -#: command.c:2253 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else: kann nicht nach \\else kommen" -#: command.c:2258 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else: kein passendes \\if" -#: command.c:2298 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif: kein passendes \\if" -#: command.c:2476 +#: command.c:2497 msgid "Query buffer is empty." msgstr "Anfragepuffer ist leer." -#: command.c:2553 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "Neues Passwort für Benutzer »%s« eingeben: " -#: command.c:2557 +#: command.c:2578 msgid "Enter it again: " msgstr "Geben Sie es noch einmal ein: " -#: command.c:2566 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "Passwörter stimmten nicht überein." -#: command.c:2649 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "\\%s: konnte Wert für Variable nicht lesen" -#: command.c:2751 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "Anfragepuffer wurde gelöscht." -#: command.c:2773 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "Befehlsgeschichte in Datei »%s« geschrieben.\n" -#: command.c:2803 +#: command.c:2853 #, c-format msgid "\\sendpipeline must be used after \\bind or \\bind_named" msgstr "\\sendpipeline muss nach \\bind oder \\bind_named verwendet werden" -#: command.c:2810 +#: command.c:2860 #, c-format msgid "\\sendpipeline not allowed outside of pipeline mode" msgstr "\\sendpipeline ist außerhalb des Pipeline-Modus nicht erlaubt" -#: command.c:2897 +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s: Name der Umgebungsvariable darf kein »=« enthalten" -#: command.c:2945 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "Funktionsname wird benötigt" -#: command.c:2947 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "Sichtname wird benötigt" -#: command.c:3126 +#: command.c:3176 msgid "Timing is on." msgstr "Zeitmessung ist an." -#: command.c:3128 +#: command.c:3178 msgid "Timing is off." msgstr "Zeitmessung ist aus." -#: command.c:3214 command.c:3252 command.c:4697 command.c:4700 command.c:4703 -#: command.c:4709 command.c:4711 command.c:4737 command.c:4747 command.c:4759 -#: command.c:4773 command.c:4800 command.c:4858 common.c:77 copy.c:329 +#: command.c:3208 +#, c-format +msgid "\\%s: not currently in restricted mode" +msgstr "\\%s: aktuell nicht im Restricted-Modus" + +#: command.c:3218 +#, c-format +msgid "\\%s: wrong key" +msgstr "\\%s: falscher Schlüssel" + +#: 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:3241 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s: %s" -#: command.c:3322 command.c:3388 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch: Intervallwert mehrmals angegeben" -#: command.c:3332 command.c:3398 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch: falscher Intervallwert »%s«" -#: command.c:3342 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: Wiederholungszahl mehrmals angegeben" -#: command.c:3352 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch: falsche Wiederholungszahl »%s«" -#: command.c:3362 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: Mindestzeilenzahl mehrmals angegeben" -#: command.c:3372 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: falsche Mindestzeilenzahl »%s«" -#: command.c:3379 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch: unbekannter Parameter »%s«" -#: command.c:3785 startup.c:248 startup.c:298 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "Passwort: " -#: command.c:3790 startup.c:295 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "Passwort für Benutzer %s: " -#: command.c:3846 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "Geben Sie Benutzer, Host oder Port nicht separat an, wenn eine Verbindungsangabe verwendet wird" -#: command.c:3881 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "Es gibt keine Verbindung, von der die Parameter verwendet werden können" -#: command.c:4188 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "Vorherige Verbindung wurde behalten" -#: command.c:4194 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect: %s" -#: command.c:4250 +#: command.c:4340 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" msgstr "Sie sind jetzt verbunden mit der Datenbank »%s« als Benutzer »%s« auf Adresse »%s« auf Port »%s«.\n" -#: command.c:4253 +#: 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 "Sie sind jetzt verbunden mit der Datenbank »%s« als Benutzer »%s« via Socket in »%s« auf Port »%s«.\n" -#: command.c:4259 +#: 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 "Sie sind jetzt verbunden mit der Datenbank »%s« als Benutzer »%s« auf Host »%s« (Adresse »%s«) auf Port »%s«.\n" -#: command.c:4262 +#: command.c:4352 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" msgstr "Sie sind jetzt verbunden mit der Datenbank »%s« als Benutzer »%s« auf Host »%s« auf Port »%s«.\n" -#: command.c:4267 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "Sie sind jetzt verbunden mit der Datenbank »%s« als Benutzer »%s«.\n" -#: command.c:4373 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s, Server %s)\n" -#: command.c:4386 +#: command.c:4476 #, c-format msgid "" "WARNING: %s major version %s, server major version %s.\n" @@ -590,25 +605,25 @@ msgstr "" "WARNUNG: %s-Hauptversion %s, Server-Hauptversion %s.\n" " Einige Features von psql werden eventuell nicht funktionieren.\n" -#: command.c:4425 +#: command.c:4515 #, c-format msgid "SSL connection (protocol: %s, cipher: %s, compression: %s, ALPN: %s)\n" msgstr "SSL-Verbindung (Protokoll: %s, Verschlüsselungsmethode: %s, Komprimierung: %s, ALPN: %s)\n" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "off" msgstr "aus" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "on" msgstr "an" -#: command.c:4443 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "GSSAPI-verschlüsselte Verbindung\n" -#: command.c:4463 +#: command.c:4553 #, c-format msgid "" "WARNING: Console code page (%u) differs from Windows code page (%u)\n" @@ -620,284 +635,284 @@ msgstr "" " richtig. Einzelheiten finden Sie auf der psql-Handbuchseite unter\n" " »Notes for Windows users«.\n" -#: command.c:4572 +#: command.c:4667 #, c-format msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number" msgstr "Umgebungsvariable PSQL_EDITOR_LINENUMBER_ARG muss gesetzt werden, um eine Zeilennummer angeben zu können" -#: command.c:4602 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "konnte Editor »%s« nicht starten" -#: command.c:4604 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "konnte /bin/sh nicht starten" -#: command.c:4654 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "konnte temporäres Verzeichnis nicht finden: %s" -#: command.c:4681 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "konnte temporäre Datei »%s« nicht öffnen: %m" -#: command.c:5017 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: Abkürzung »%s« ist nicht eindeutig, passt auf »%s« und »%s«" -#: command.c:5037 +#: command.c:5132 #, c-format msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" msgstr "\\pset: zulässige Formate sind aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" -#: command.c:5056 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: zulässige Linienstile sind ascii, old-ascii, unicode" -#: command.c:5071 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset: zulässige Unicode-Rahmnenlinienstile sind single, double" -#: command.c:5086 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: zulässige Unicode-Spaltenlinienstile sind single, double" -#: command.c:5101 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset: zulässige Unicode-Kopflinienstile sind single, double" -#: command.c:5153 +#: 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: zulässige Werte für xheader_width sind »%s« (Standard), »%s«, »%s« oder eine Zahl, die die genaue Breite angibt" -#: command.c:5170 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsep muss ein einzelnes Ein-Byte-Zeichen sein" -#: command.c:5175 +#: command.c:5270 #, c-format msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return" msgstr "\\pset: csv_fieldsep kann nicht doppeltes Anführungszeichen, Newline oder Carriage Return sein" -#: command.c:5313 command.c:5514 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset: unbekannte Option: %s" -#: command.c:5333 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "Rahmenstil ist %d.\n" -#: command.c:5339 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "Zielbreite ist nicht gesetzt.\n" -#: command.c:5341 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "Zielbreite ist %d.\n" -#: command.c:5348 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "Erweiterte Anzeige ist an.\n" -#: command.c:5350 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "Erweiterte Anzeige wird automatisch verwendet.\n" -#: command.c:5352 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "Erweiterte Anzeige ist aus.\n" -#: command.c:5359 command.c:5361 command.c:5363 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "Erweiterte Kopfzeilenbreite ist »%s«.\n" -#: command.c:5365 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "Erweiterte Kopfzeilenbreite ist %d.\n" -#: command.c:5371 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "Feldtrennzeichen für CSV ist »%s«.\n" -#: command.c:5379 command.c:5387 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "Feldtrennzeichen ist ein Null-Byte.\n" -#: command.c:5381 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "Feldtrennzeichen ist »%s«.\n" -#: command.c:5394 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "Standardfußzeile ist an.\n" -#: command.c:5396 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "Standardfußzeile ist aus.\n" -#: command.c:5402 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "Ausgabeformat ist »%s«.\n" -#: command.c:5408 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "Linienstil ist %s.\n" -#: command.c:5415 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "Null-Anzeige ist »%s«.\n" -#: command.c:5423 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "Lokalisiertes Format für numerische Daten ist an.\n" -#: command.c:5425 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "Lokalisiertes Format für numerische Daten ist aus.\n" -#: command.c:5432 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "Pager wird für lange Ausgaben verwendet.\n" -#: command.c:5434 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "Pager wird immer verwendet.\n" -#: command.c:5436 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "Pager-Verwendung ist aus.\n" -#: command.c:5442 +#: 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" msgstr[0] "Pager wird nicht für weniger als %d Zeile verwendet werden.\n" msgstr[1] "Pager wird nicht für weniger als %d Zeilen verwendet werden.\n" -#: command.c:5452 command.c:5462 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "Satztrennzeichen ist ein Null-Byte.\n" -#: command.c:5454 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "Satztrennzeichen ist .\n" -#: command.c:5456 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "Satztrennzeichen ist »%s«.\n" -#: command.c:5469 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "Tabellenattribute sind »%s«.\n" -#: command.c:5472 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "Tabellenattribute sind nicht gesetzt.\n" -#: command.c:5479 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "Titel ist »%s«.\n" -#: command.c:5481 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "Titel ist nicht gesetzt.\n" -#: command.c:5488 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "Nur Datenzeilen ist an.\n" -#: command.c:5490 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "Nur Datenzeilen ist aus.\n" -#: command.c:5496 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "Unicode-Rahmenlinienstil ist »%s«.\n" -#: command.c:5502 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "Unicode-Spaltenlinienstil ist »%s«.\n" -#: command.c:5508 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "Unicode-Kopflinienstil ist »%s«.\n" -#: command.c:5757 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: fehlgeschlagen" -#: command.c:5795 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch kann nicht mit einer leeren Anfrage verwendet werden" -#: command.c:5827 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "konnte Timer nicht setzen: %m" -#: command.c:5896 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (alle %gs)\n" -#: command.c:5899 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (alle %gs)\n" -#: command.c:5963 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "konnte nicht auf Signale warten: %m" -#: command.c:6019 command.c:6026 common.c:667 common.c:674 common.c:1159 +#: command.c:6114 command.c:6121 common.c:667 common.c:674 common.c:1159 #, c-format msgid "" "/******** QUERY *********/\n" @@ -910,12 +925,12 @@ msgstr "" "/************************/\n" "\n" -#: command.c:6205 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "»%s.%s« ist keine Sicht" -#: command.c:6221 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "konnte reloptions-Array nicht interpretieren" @@ -2713,7 +2728,7 @@ msgstr "" "psql ist das interaktive PostgreSQL-Terminal.\n" "\n" -#: help.c:61 help.c:385 help.c:472 help.c:518 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "Aufruf:\n" @@ -3015,6 +3030,22 @@ msgstr " \\q psql beenden\n" #: help.c:174 msgid "" +" \\restrict RESTRICT_KEY\n" +" enter restricted mode with provided key\n" +msgstr "" +" \\restrict RESTRICT_KEY\n" +" Restricted-Modus mit angegebenem Schlüssel starten\n" + +#: help.c:176 +msgid "" +" \\unrestrict RESTRICT_KEY\n" +" exit restricted mode if key matches\n" +msgstr "" +" \\unrestrict RESTRICT_KEY\n" +" Restricted-Modus beenden, wenn der Schlüssel passt\n" + +#: help.c:178 +msgid "" " \\watch [[i=]SEC] [c=N] [m=MIN]\n" " execute query every SEC seconds, up to N times,\n" " stop if less than MIN rows are returned\n" @@ -3023,210 +3054,210 @@ msgstr "" " Anfrage alle SEK Sekunden ausführen, bis zu N Mal,\n" " aufhören wenn weniger als MIN Zeilen zurückgegeben werden\n" -#: help.c:177 help.c:185 help.c:197 help.c:207 help.c:214 help.c:272 help.c:280 -#: help.c:300 help.c:313 help.c:322 help.c:328 +#: 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" -#: help.c:179 +#: help.c:183 msgid "Help\n" msgstr "Hilfe\n" -#: help.c:181 +#: help.c:185 msgid " \\? [commands] show help on backslash commands\n" msgstr " \\? [commands] Hilfe über Backslash-Befehle anzeigen\n" -#: help.c:182 +#: help.c:186 msgid " \\? options show help on psql command-line options\n" msgstr " \\? options Hilfe über psql-Kommandozeilenoptionen anzeigen\n" -#: help.c:183 +#: help.c:187 msgid " \\? variables show help on special variables\n" msgstr " \\? variables Hilfe über besondere Variablen anzeigen\n" -#: help.c:184 +#: help.c:188 msgid " \\h [NAME] help on syntax of SQL commands, * for all commands\n" msgstr " \\h [NAME] Syntaxhilfe über SQL-Anweisung, * für alle Anweisungen\n" -#: help.c:187 +#: help.c:191 msgid "Query Buffer\n" msgstr "Anfragepuffer\n" -#: help.c:188 +#: help.c:192 msgid " \\e [FILE] [LINE] edit the query buffer (or file) with external editor\n" msgstr " \\e [DATEI] [ZEILE] Anfragepuffer (oder Datei) mit externem Editor bearbeiten\n" -#: help.c:189 +#: help.c:193 msgid " \\ef [FUNCNAME [LINE]] edit function definition with external editor\n" msgstr " \\ef [FUNKNAME [ZEILE]] Funktionsdefinition mit externem Editor bearbeiten\n" -#: help.c:190 +#: help.c:194 msgid " \\ev [VIEWNAME [LINE]] edit view definition with external editor\n" msgstr " \\ev [SICHTNAME [ZEILE]] Sichtdefinition mit externem Editor bearbeiten\n" -#: help.c:191 +#: help.c:195 msgid " \\p show the contents of the query buffer\n" msgstr " \\p aktuellen Inhalt der Anfragepuffers zeigen\n" -#: help.c:192 +#: help.c:196 msgid " \\r reset (clear) the query buffer\n" msgstr " \\r Anfragepuffer löschen\n" -#: help.c:194 +#: help.c:198 msgid " \\s [FILE] display history or save it to file\n" msgstr " \\s [DATEI] Befehlsgeschichte ausgeben oder in Datei schreiben\n" -#: help.c:196 +#: help.c:200 msgid " \\w FILE write query buffer to file\n" msgstr " \\w DATEI Anfragepuffer in Datei schreiben\n" -#: help.c:199 +#: help.c:203 msgid "Input/Output\n" msgstr "Eingabe/Ausgabe\n" -#: help.c:200 +#: help.c:204 msgid " \\copy ... perform SQL COPY with data stream to the client host\n" msgstr " \\copy ... SQL COPY mit Datenstrom auf Client-Host ausführen\n" -#: help.c:201 +#: help.c:205 msgid " \\echo [-n] [STRING] write string to standard output (-n for no newline)\n" msgstr " \\echo [-n] [TEXT] Text auf Standardausgabe schreiben (-n für ohne Newline)\n" -#: help.c:202 +#: help.c:206 msgid " \\i FILE execute commands from file\n" msgstr " \\i DATEI Befehle aus Datei ausführen\n" -#: help.c:203 +#: help.c:207 msgid " \\ir FILE as \\i, but relative to location of current script\n" msgstr " \\ir DATEI wie \\i, aber relativ zum Ort des aktuellen Skripts\n" -#: help.c:204 +#: help.c:208 msgid " \\o [FILE] send all query results to file or |pipe\n" msgstr " \\o [DATEI] alle Anfrageergebnisse in Datei oder |Pipe schreiben\n" -#: help.c:205 +#: help.c:209 msgid " \\qecho [-n] [STRING] write string to \\o output stream (-n for no newline)\n" msgstr "" " \\qecho [-n] [TEXT] Text auf Ausgabestrom für \\o schreiben (-n für ohne\n" " Newline)\n" -#: help.c:206 +#: help.c:210 msgid " \\warn [-n] [STRING] write string to standard error (-n for no newline)\n" msgstr "" " \\warn [-n] [TEXT] Text auf Standardfehlerausgabe schreiben (-n für ohne\n" " Newline)\n" -#: help.c:209 +#: help.c:213 msgid "Conditional\n" msgstr "Bedingte Anweisungen\n" -#: help.c:210 +#: help.c:214 msgid " \\if EXPR begin conditional block\n" msgstr " \\if AUSDRUCK Beginn einer bedingten Anweisung\n" -#: help.c:211 +#: help.c:215 msgid " \\elif EXPR alternative within current conditional block\n" msgstr " \\elif AUSDRUCK Alternative in aktueller bedingter Anweisung\n" -#: help.c:212 +#: help.c:216 msgid " \\else final alternative within current conditional block\n" msgstr " \\else letzte Alternative in aktueller bedingter Anweisung\n" -#: help.c:213 +#: help.c:217 msgid " \\endif end conditional block\n" msgstr " \\endif Ende einer bedingten Anweisung\n" -#: help.c:216 +#: help.c:220 msgid "Informational\n" msgstr "Informationen\n" -#: help.c:217 +#: help.c:221 msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" msgstr " (Optionen: S = Systemobjekte zeigen, x = erweiterte Ausgabe, + = mehr Details)\n" -#: help.c:218 +#: help.c:222 msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr " \\d[Sx+] Tabellen, Sichten und Sequenzen auflisten\n" -#: help.c:219 +#: help.c:223 msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr " \\d[S+] NAME Tabelle, Sicht, Sequenz oder Index beschreiben\n" -#: help.c:220 +#: help.c:224 msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[Sx] [MUSTER] Aggregatfunktionen auflisten\n" -#: help.c:221 +#: help.c:225 msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[x+] [MUSTER] Zugriffsmethoden auflisten\n" -#: help.c:222 +#: help.c:226 msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[x+] [AMMUST [TYPMUST]] Operatorklassen auflisten\n" -#: help.c:223 +#: help.c:227 msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[x+] [AMMUST [TYPMUST]] Operatorfamilien auflisten\n" -#: help.c:224 +#: help.c:228 msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr " \\dAo[x+] [AMMUST [OPFMUST]] Operatoren in Operatorfamilien auflisten\n" -#: help.c:225 +#: help.c:229 msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgstr " \\dAp[x+] [AMMUST [OPFMUST]] Unterst.funktionen in Operatorfamilien auflisten\n" -#: help.c:226 +#: help.c:230 msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[x+] [MUSTER] Tablespaces auflisten\n" -#: help.c:227 +#: help.c:231 msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[Sx+] [MUSTER] Konversionen auflisten\n" -#: help.c:228 +#: help.c:232 msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[x+] [MUSTER] Konfigurationsparameter auflisten\n" -#: help.c:229 +#: help.c:233 msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[x+] [MUSTER] Typumwandlungen (Casts) auflisten\n" -#: help.c:230 +#: help.c:234 msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr "" " \\dd[Sx] [MUSTER] Objektbeschreibungen zeigen, die nirgendwo anders\n" " erscheinen\n" -#: help.c:231 +#: help.c:235 msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[Sx+] [MUSTER] Domänen auflisten\n" -#: help.c:232 +#: help.c:236 msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp[x] [MUSTER] Vorgabeprivilegien auflisten\n" -#: help.c:233 +#: help.c:237 msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[Sx+] [MUSTER] Fremdtabellen auflisten\n" -#: help.c:234 +#: help.c:238 msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[x+] [MUSTER] Fremdserver auflisten\n" -#: help.c:235 +#: help.c:239 msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[x+] [MUSTER] Fremdtabellen auflisten\n" -#: help.c:236 +#: help.c:240 msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[x+] [MUSTER] Benutzerabbildungen auflisten\n" -#: help.c:237 +#: help.c:241 msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[x+] [MUSTER] Fremddaten-Wrapper auflisten\n" -#: help.c:238 +#: help.c:242 msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" @@ -3234,47 +3265,47 @@ msgstr "" " \\df[anptw][Sx+] [FUNKMUSTR [TYPMUSTR ...]]\n" " Funktionen [nur Agg/normale/Proz/Trigger/Fenster] auflisten\n" -#: help.c:240 +#: help.c:244 msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr " \\dF[x+] [MUSTER] Textsuchekonfigurationen auflisten\n" -#: help.c:241 +#: help.c:245 msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr " \\dFd[x+] [MUSTER] Textsuchewörterbücher auflisten\n" -#: help.c:242 +#: help.c:246 msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr " \\dFp[x+] [MUSTER] Textsucheparser auflisten\n" -#: help.c:243 +#: help.c:247 msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr " \\dFt[x+] [MUSTER] Textsuchevorlagen auflisten\n" -#: help.c:244 +#: help.c:248 msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[Sx+] [MUSTER] Rollen auflisten\n" -#: help.c:245 +#: help.c:249 msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[Sx+] [MUSTER] Indexe auflisten\n" -#: help.c:246 +#: help.c:250 msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr " \\dl[x+] Large Objects auflisten, wie \\lo_list\n" -#: help.c:247 +#: help.c:251 msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[Sx+] [MUSTER] prozedurale Sprachen auflisten\n" -#: help.c:248 +#: help.c:252 msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[Sx+] [MUSTER] materialisierte Sichten auflisten\n" -#: help.c:249 +#: help.c:253 msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[Sx+] [MUSTER] Schemas auflisten\n" -#: help.c:250 +#: help.c:254 msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" @@ -3282,23 +3313,23 @@ msgstr "" " \\do[Sx+] [OPMUST [TYPMUST [TYPMUST]]]\n" " Operatoren auflisten\n" -#: help.c:252 +#: help.c:256 msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[Sx+] [MUSTER] Sortierfolgen auflisten\n" -#: help.c:253 +#: help.c:257 msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr "" " \\dp[Sx] [MUSTER] Zugriffsprivilegien für Tabellen, Sichten und\n" " Sequenzen auflisten\n" -#: help.c:254 +#: help.c:258 msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgstr "" " \\dP[itnx+] [MUSTER] partitionierte Relationen [nur Indexe/Tabellen]\n" " auflisten [n=geschachtelt]\n" -#: help.c:255 +#: help.c:259 msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" @@ -3306,77 +3337,77 @@ msgstr "" " \\drds[x] [ROLLMUST [DBMUST]]\n" " datenbankspezifische Rolleneinstellungen auflisten\n" -#: help.c:257 +#: help.c:261 msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\drg[Sx] [MUSTER] Rollen-Grants auflisten\n" -#: help.c:258 +#: help.c:262 msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[x+] [MUSTER] Replikationspublikationen auflisten\n" -#: help.c:259 +#: help.c:263 msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[x+] [MUSTER] Replikationssubskriptionen auflisten\n" -#: help.c:260 +#: help.c:264 msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[Sx+] [MUSTER] Sequenzen auflisten\n" -#: help.c:261 +#: help.c:265 msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[Sx+] [MUSTER] Tabellen auflisten\n" -#: help.c:262 +#: help.c:266 msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[Sx+] [MUSTER] Datentypen auflisten\n" -#: help.c:263 +#: help.c:267 msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[Sx+] [MUSTER] Rollen auflisten\n" -#: help.c:264 +#: help.c:268 msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[Sx+] [MUSTER] Sichten auflisten\n" -#: help.c:265 +#: help.c:269 msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[x+] [MUSTER] Erweiterungen auflisten\n" -#: help.c:266 +#: help.c:270 msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX[x] [MUSTER] erweiterte Statistiken auflisten\n" -#: help.c:267 +#: help.c:271 msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[x+] [MUSTER] Ereignistrigger auflisten\n" -#: help.c:268 +#: help.c:272 msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[x+] [MUSTER] Datenbanken auflisten\n" -#: help.c:269 +#: help.c:273 msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] FUNKNAME Funktionsdefinition zeigen\n" -#: help.c:270 +#: help.c:274 msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] SICHTNAME Sichtdefinition zeigen\n" -#: help.c:271 +#: help.c:275 msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[Sx] [MUSTER] äquivalent zu \\dp\n" -#: help.c:274 +#: help.c:278 msgid "Large Objects\n" msgstr "Large Objects\n" -#: help.c:275 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr "" " \\lo_export LOBOID DATEI\n" " Large Object in Datei schreiben\n" -#: help.c:276 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3384,38 +3415,38 @@ msgstr "" " \\lo_import DATEI [KOMMENTAR]\n" " Large Object aus Datei lesen\n" -#: help.c:278 +#: help.c:282 msgid " \\lo_list[x+] list large objects\n" msgstr " \\lo_list[x+] Large Objects auflisten\n" -#: help.c:279 +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID Large Object löschen\n" -#: help.c:282 +#: help.c:286 msgid "Formatting\n" msgstr "Formatierung\n" -#: help.c:283 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr "" " \\a zwischen unausgerichtetem und ausgerichtetem Ausgabemodus\n" " umschalten\n" -#: help.c:284 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr " \\C [TEXT] Tabellentitel setzen oder löschen\n" -#: help.c:285 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr " \\f [ZEICHEN] Feldtrennzeichen zeigen oder setzen\n" -#: help.c:286 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H HTML-Ausgabemodus umschalten (gegenwärtig %s)\n" -#: help.c:288 +#: help.c:292 msgid "" " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" @@ -3433,29 +3464,29 @@ msgstr "" " unicode_border_linestyle|unicode_column_linestyle|\n" " unicode_header_linestyle|xheader_width)\n" -#: help.c:295 +#: help.c:299 #, c-format msgid " \\t [on|off] show only rows (currently %s)\n" msgstr " \\t [on|off] nur Datenzeilen zeigen (gegenwärtig %s)\n" -#: help.c:297 +#: help.c:301 msgid " \\T [STRING] set HTML tag attributes, or unset if none\n" msgstr " \\T [TEXT] HTML
-Tag-Attribute setzen oder löschen\n" -#: help.c:298 +#: help.c:302 #, c-format msgid " \\x [on|off|auto] toggle expanded output (currently %s)\n" msgstr " \\x [on|off|auto] erweiterte Ausgabe umschalten (gegenwärtig %s)\n" -#: help.c:299 +#: help.c:303 msgid "auto" msgstr "auto" -#: help.c:302 +#: help.c:306 msgid "Connection\n" msgstr "Verbindung\n" -#: help.c:304 +#: help.c:308 #, c-format msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" @@ -3464,7 +3495,7 @@ msgstr "" " \\c[onnect] {[DBNAME|- BENUTZER|- HOST|- PORT|-] | conninfo}\n" " mit neuer Datenbank verbinden (aktuell »%s«)\n" -#: help.c:308 +#: help.c:312 msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently no connection)\n" @@ -3472,70 +3503,70 @@ msgstr "" " \\c[onnect] {[DBNAME|- BENUTZER|- HOST|- PORT|-] | conninfo}\n" " mit neuer Datenbank verbinden (aktuell keine Verbindung)\n" -#: help.c:310 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo Informationen über aktuelle Verbindung anzeigen\n" -#: help.c:311 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr " \\encoding [KODIERUNG] Client-Kodierung zeigen oder setzen\n" -#: help.c:312 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr "" " \\password [BENUTZERNAME]\n" " sicheres Ändern eines Benutzerpasswortes\n" -#: help.c:315 +#: help.c:319 msgid "Operating System\n" msgstr "Betriebssystem\n" -#: help.c:316 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [VERZ] Arbeitsverzeichnis wechseln\n" -#: help.c:317 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv PSQLVAR ENVVAR Umgebungsvariable auslesen\n" -#: help.c:318 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr " \\setenv NAME [WERT] Umgebungsvariable setzen oder löschen\n" -#: help.c:319 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr " \\timing [on|off] Zeitmessung umschalten (gegenwärtig %s)\n" -#: help.c:321 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr " \\! [BEFEHL] Befehl in Shell ausführen oder interaktive Shell starten\n" -#: help.c:324 +#: help.c:328 msgid "Variables\n" msgstr "Variablen\n" -#: help.c:325 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr " \\prompt [TEXT] NAME interne Variable vom Benutzer abfragen\n" -#: help.c:326 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr " \\set [NAME [WERT]] interne Variable setzen, oder alle anzeigen\n" -#: help.c:327 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset NAME interne Variable löschen\n" -#: help.c:330 +#: help.c:334 msgid "Extended Query Protocol\n" msgstr "Erweitertes Anfrageprotokoll\n" -#: help.c:331 +#: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" msgstr " \\bind [PARAM]... Anfrageparameter setzen\n" -#: help.c:332 +#: help.c:336 msgid "" " \\bind_named STMT_NAME [PARAM]...\n" " set query parameters for an existing prepared statement\n" @@ -3543,7 +3574,7 @@ msgstr "" " \\bind_named BEF-NAME [PARAM]...\n" " Anfrageparameter für bestehenden vorbereiteten Befehl setzen\n" -#: help.c:334 +#: help.c:338 msgid "" " \\close_prepared STMT_NAME\n" " close an existing prepared statement\n" @@ -3551,39 +3582,39 @@ msgstr "" " \\close_prepared BEF-NAME\n" " bestehenden vorbereiteten Befehl schließen\n" -#: help.c:336 +#: help.c:340 msgid " \\endpipeline exit pipeline mode\n" msgstr " \\endpipeline Pipeline-Modus beenden\n" -#: help.c:337 +#: help.c:341 msgid " \\flush flush output data to the server\n" msgstr " \\flush Ausgabedaten an den Server flushen\n" -#: help.c:338 +#: help.c:342 msgid " \\flushrequest send request to the server to flush its output buffer\n" msgstr " \\flushrequest Anfrage an den Server senden, den Ausgabepuffer zu flushen\n" -#: help.c:339 +#: help.c:343 msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argument\n" msgstr " \\getresults [ANZ_RES] ANZ_RES unerledigte Ergebnisse lesen, oder alle wenn kein Argument\n" -#: help.c:340 +#: help.c:344 msgid " \\parse STMT_NAME create a prepared statement\n" msgstr " \\parse BEF-NAME vorbereiteten Befehl erzeugen\n" -#: help.c:341 +#: help.c:345 msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" msgstr " \\sendpipeline eine erweiterte Anfrage an eine laufende Pipeline senden\n" -#: help.c:342 +#: help.c:346 msgid " \\startpipeline enter pipeline mode\n" msgstr " \\startpipeline Pipeline-Modus beginnen\n" -#: help.c:343 +#: help.c:347 msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" msgstr " \\syncpipeline Synchronisierungspunkt zu einer laufenden Pipeline hinzufügen\n" -#: help.c:382 +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" @@ -3591,11 +3622,11 @@ msgstr "" "Liste besonderer Variablen\n" "\n" -#: help.c:384 +#: help.c:388 msgid "psql variables:\n" msgstr "psql-Variablen:\n" -#: help.c:386 +#: help.c:390 msgid "" " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n" @@ -3605,7 +3636,7 @@ msgstr "" " oder \\set NAME WERT innerhalb von psql\n" "\n" -#: help.c:388 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3613,7 +3644,7 @@ msgstr "" " AUTOCOMMIT\n" " wenn gesetzt werden alle erfolgreichen SQL-Befehle automatisch committet\n" -#: help.c:390 +#: help.c:394 msgid "" " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" @@ -3623,7 +3654,7 @@ msgstr "" " bestimmt, ob SQL-Schlüsselwörter in Groß- oder Kleinschreibung\n" " vervollständigt werden [lower, upper, preserve-lower, preserve-upper]\n" -#: help.c:393 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3631,7 +3662,7 @@ msgstr "" " DBNAME\n" " Name der aktuellen Datenbank\n" -#: help.c:395 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3641,7 +3672,7 @@ msgstr "" " kontrolliert, welche Eingaben auf die Standardausgabe geschrieben werden\n" " [all, errors, none, queries]\n" -#: help.c:398 +#: help.c:402 msgid "" " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" @@ -3651,7 +3682,7 @@ msgstr "" " wenn gesetzt, interne Anfragen, die von Backslash-Befehlen ausgeführt werden,\n" " anzeigen; wenn auf »noexec« gesetzt, nur anzeigen, nicht ausführen\n" -#: help.c:401 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3659,7 +3690,7 @@ msgstr "" " ENCODING\n" " aktuelle Zeichensatzkodierung des Clients\n" -#: help.c:403 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3667,7 +3698,7 @@ msgstr "" " ERROR\n" " »true« wenn die letzte Anfrage fehlgeschlagen ist, sonst »false«\n" -#: help.c:405 +#: help.c:409 msgid "" " FETCH_COUNT\n" " the number of result rows to fetch and display at a time (0 = unlimited)\n" @@ -3675,7 +3706,7 @@ msgstr "" " FETCH_COUNT\n" " Anzahl auf einmal zu holender und anzuzeigender Zeilen (0 = unbegrenzt)\n" -#: help.c:407 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3683,7 +3714,7 @@ msgstr "" " HIDE_TABLEAM\n" " wenn gesetzt werden Tabellenzugriffsmethoden nicht angezeigt\n" -#: help.c:409 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3691,7 +3722,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " wenn gesetzt werden Kompressionsmethoden nicht angezeigt\n" -#: help.c:411 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3699,7 +3730,7 @@ msgstr "" " HISTCONTROL\n" " kontrolliert Befehlsgeschichte [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:413 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3707,7 +3738,7 @@ msgstr "" " HISTFILE\n" " Dateiname für die Befehlsgeschichte\n" -#: help.c:415 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3715,7 +3746,7 @@ msgstr "" " HISTSIZE\n" " maximale Anzahl der in der Befehlsgeschichte zu speichernden Befehle\n" -#: help.c:417 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3723,7 +3754,7 @@ msgstr "" " HOST\n" " der aktuell verbundene Datenbankserverhost\n" -#: help.c:419 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3731,7 +3762,7 @@ msgstr "" " IGNOREEOF\n" " Anzahl benötigter EOFs um eine interaktive Sitzung zu beenden\n" -#: help.c:421 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3739,7 +3770,7 @@ msgstr "" " LASTOID\n" " Wert der zuletzt beinträchtigten OID\n" -#: help.c:423 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3750,7 +3781,7 @@ msgstr "" " Fehlermeldung und SQLSTATE des letzten Fehlers, oder leer und »000000« wenn\n" " kein Fehler\n" -#: help.c:426 +#: help.c:430 msgid "" " ON_ERROR_ROLLBACK\n" " if set, an error doesn't stop a transaction (uses implicit savepoints)\n" @@ -3759,7 +3790,7 @@ msgstr "" " wenn gesetzt beendet ein Fehler die Transaktion nicht (verwendet implizite\n" " Sicherungspunkte)\n" -#: help.c:428 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3767,7 +3798,7 @@ msgstr "" " ON_ERROR_STOP\n" " Skriptausführung bei Fehler beenden\n" -#: help.c:430 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3775,7 +3806,7 @@ msgstr "" " PORT\n" " Serverport der aktuellen Verbindung\n" -#: help.c:432 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3783,7 +3814,7 @@ msgstr "" " PROMPT1\n" " der normale psql-Prompt\n" -#: help.c:434 +#: help.c:438 msgid "" " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" @@ -3791,7 +3822,7 @@ msgstr "" " PROMPT2\n" " der Prompt, wenn eine Anweisung von der vorherigen Zeile fortgesetzt wird\n" -#: help.c:436 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3799,7 +3830,7 @@ msgstr "" " PROMPT3\n" " der Prompt während COPY ... FROM STDIN\n" -#: help.c:438 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3807,7 +3838,7 @@ msgstr "" " QUIET\n" " stille Ausführung (wie Option -q)\n" -#: help.c:440 +#: help.c:444 msgid "" " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" @@ -3815,7 +3846,7 @@ msgstr "" " ROW_COUNT\n" " Anzahl der von der letzten Anfrage beeinträchtigten Zeilen, oder 0\n" -#: help.c:442 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3825,7 +3856,7 @@ msgstr "" " SERVER_VERSION_NUM\n" " Serverversion (kurze Zeichenkette oder numerisches Format)\n" -#: help.c:445 +#: help.c:449 msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" @@ -3833,7 +3864,7 @@ msgstr "" " SHELL_ERROR\n" " »true« wenn der letzte Shell-Befehl fehlgeschlagen ist, sonst »false«\n" -#: help.c:447 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3841,7 +3872,7 @@ msgstr "" " SHELL_EXIT_CODE\n" " Statuscode des letzten Shell-Befehls\n" -#: help.c:449 +#: help.c:453 msgid "" " SHOW_ALL_RESULTS\n" " show all results of a combined query (\\;) instead of only the last\n" @@ -3849,7 +3880,7 @@ msgstr "" " SHOW_ALL_RESULTS\n" " alle Ergebnisse einer kombinierten Anfrage (\\;) anzeigen statt nur das letzte\n" -#: help.c:451 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3858,7 +3889,7 @@ msgstr "" " kontrolliert die Anzeige von Kontextinformationen in Meldungen\n" " [never, errors, always]\n" -#: help.c:453 +#: help.c:457 msgid "" " SINGLELINE\n" " if set, end of line terminates SQL commands (same as -S option)\n" @@ -3866,7 +3897,7 @@ msgstr "" " SINGLELINE\n" " wenn gesetzt beendet Zeilenende die SQL-Anweisung (wie Option -S)\n" -#: help.c:455 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3874,7 +3905,7 @@ msgstr "" " SINGLESTEP\n" " Einzelschrittmodus (wie Option -s)\n" -#: help.c:457 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3882,7 +3913,7 @@ msgstr "" " SQLSTATE\n" " SQLSTATE der letzten Anfrage, oder »00000« wenn kein Fehler\n" -#: help.c:459 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3890,7 +3921,7 @@ msgstr "" " USER\n" " der aktuell verbundene Datenbankbenutzer\n" -#: help.c:461 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3899,7 +3930,7 @@ msgstr "" " kontrolliert wieviele Details in Fehlermeldungen enthalten sind\n" " [default, verbose, terse, sqlstate]\n" -#: help.c:463 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3911,7 +3942,7 @@ msgstr "" " VERSION_NUM\n" " Version von psql (lange Zeichenkette, kurze Zeichenkette oder numerisch)\n" -#: help.c:467 +#: help.c:471 #, c-format msgid "" " WATCH_INTERVAL\n" @@ -3920,7 +3951,7 @@ msgstr "" " WATCH_INTERVAL\n" " Anzahl Sekunden, die \\watch zwischen Ausführungen wartet (Standard %s)\n" -#: help.c:471 +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3928,7 +3959,7 @@ msgstr "" "\n" "Anzeigeeinstellungen:\n" -#: help.c:473 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3938,7 +3969,7 @@ msgstr "" " oder \\pset NAME [WERT] innerhalb von psql\n" "\n" -#: help.c:475 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -3946,7 +3977,7 @@ msgstr "" " border\n" " Rahmenstil (Zahl)\n" -#: help.c:477 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -3954,7 +3985,7 @@ msgstr "" " columns\n" " Zielbreite für das Format »wrapped«\n" -#: help.c:479 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3962,7 +3993,7 @@ msgstr "" " expanded (oder x)\n" " erweiterte Ausgabe [on, off, auto]\n" -#: help.c:481 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -3971,7 +4002,7 @@ msgstr "" " fieldsep\n" " Feldtrennzeichen für unausgerichteten Ausgabemodus (Standard »%s«)\n" -#: help.c:484 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3979,7 +4010,7 @@ msgstr "" " fieldsep_zero\n" " Feldtrennzeichen für unausgerichteten Ausgabemodus auf Null-Byte setzen\n" -#: help.c:486 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3987,7 +4018,7 @@ msgstr "" " footer\n" " Tabellenfußzeile ein- oder auschalten [on, off]\n" -#: help.c:488 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3995,7 +4026,7 @@ msgstr "" " format\n" " Ausgabeformat setzen [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:490 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -4003,7 +4034,7 @@ msgstr "" " linestyle\n" " Rahmenlinienstil setzen [ascii, old-ascii, unicode]\n" -#: help.c:492 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -4011,7 +4042,7 @@ msgstr "" " null\n" " setzt die Zeichenkette, die anstelle eines NULL-Wertes ausgegeben wird\n" -#: help.c:494 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4020,7 +4051,7 @@ msgstr "" " Verwendung eines Locale-spezifischen Zeichens zur Trennung von Zifferngruppen\n" " einschalten [on, off]\n" -#: help.c:496 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4028,7 +4059,7 @@ msgstr "" " pager\n" " kontrolliert Verwendung eines externen Pager-Programms [yes, no, always]\n" -#: help.c:498 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4036,7 +4067,7 @@ msgstr "" " recordsep\n" " Satztrennzeichen für unausgerichteten Ausgabemodus\n" -#: help.c:500 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4044,7 +4075,7 @@ msgstr "" " recordsep_zero\n" " Satztrennzeichen für unausgerichteten Ausgabemodus auf Null-Byte setzen\n" -#: help.c:502 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4054,7 +4085,7 @@ msgstr "" " Attribute für das »table«-Tag im Format »html« oder proportionale\n" " Spaltenbreite für links ausgerichtete Datentypen im Format »latex-longtable«\n" -#: help.c:505 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4062,7 +4093,7 @@ msgstr "" " title\n" " setzt den Titel darauffolgend ausgegebener Tabellen\n" -#: help.c:507 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4070,7 +4101,7 @@ msgstr "" " tuples_only\n" " wenn gesetzt werden nur die eigentlichen Tabellendaten gezeigt\n" -#: help.c:509 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4082,7 +4113,7 @@ msgstr "" " unicode_header_linestyle\n" " setzt den Stil für Unicode-Linien [single, double]\n" -#: help.c:513 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4092,7 +4123,7 @@ msgstr "" " setzt die maximale Breite der Kopfzeile für die erweiterte Ausgabe\n" " [full, column, page, ganze Zahl]\n" -#: help.c:517 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -4100,7 +4131,7 @@ msgstr "" "\n" "Umgebungsvariablen:\n" -#: help.c:521 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4110,7 +4141,7 @@ msgstr "" " oder \\setenv NAME [WERT] innerhalb von psql\n" "\n" -#: help.c:523 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4122,7 +4153,7 @@ msgstr "" " oder \\setenv NAME [WERT] innerhalb von psql\n" "\n" -#: help.c:526 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4130,7 +4161,7 @@ msgstr "" " COLUMNS\n" " Anzahl Spalten im Format »wrapped«\n" -#: help.c:528 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4138,7 +4169,7 @@ msgstr "" " PGAPPNAME\n" " wie Verbindungsparameter »application_name«\n" -#: help.c:530 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4146,7 +4177,7 @@ msgstr "" " PGDATABASE\n" " wie Verbindungsparameter »dbname«\n" -#: help.c:532 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4154,7 +4185,7 @@ msgstr "" " PGHOST\n" " wie Verbindungsparameter »host«\n" -#: help.c:534 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4162,7 +4193,7 @@ msgstr "" " PGPASSFILE\n" " Name der Passwortdatei\n" -#: help.c:536 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4170,7 +4201,7 @@ msgstr "" " PGPASSWORD\n" " Verbindungspasswort (nicht empfohlen)\n" -#: help.c:538 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4178,7 +4209,7 @@ msgstr "" " PGPORT\n" " wie Verbindungsparameter »port«\n" -#: help.c:540 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4186,7 +4217,7 @@ msgstr "" " PGUSER\n" " wie Verbindungsparameter »user«\n" -#: help.c:542 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4194,7 +4225,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " Editor für Befehle \\e, \\ef und \\ev\n" -#: help.c:544 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4202,7 +4233,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " wie die Zeilennummer beim Aufruf des Editors angegeben wird\n" -#: help.c:546 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4210,7 +4241,7 @@ msgstr "" " PSQL_HISTORY\n" " alternativer Pfad für History-Datei\n" -#: help.c:548 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4218,7 +4249,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " Name des externen Pager-Programms\n" -#: help.c:551 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4226,7 +4257,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " Name des externen Pager-Programms für \\watch\n" -#: help.c:554 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4234,7 +4265,7 @@ msgstr "" " PSQLRC\n" " alternativer Pfad für .psqlrc-Datei des Benutzers\n" -#: help.c:556 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4242,7 +4273,7 @@ msgstr "" " SHELL\n" " Shell für den Befehl \\!\n" -#: help.c:558 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4250,11 +4281,11 @@ msgstr "" " TMPDIR\n" " Verzeichnis für temporäre Dateien\n" -#: help.c:618 +#: help.c:622 msgid "Available help:\n" msgstr "Verfügbare Hilfe:\n" -#: help.c:713 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -4273,7 +4304,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:736 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -6888,7 +6919,7 @@ msgstr "überflüssiges Kommandozeilenargument »%s« ignoriert" msgid "could not find own program executable" msgstr "konnte eigene Programmdatei nicht finden" -#: tab-complete.in.c:6613 +#: tab-complete.in.c:6633 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/ru.po b/src/bin/psql/po/ru.po index 9ffcab1d2b8e9..fc1ee695a522a 100644 --- a/src/bin/psql/po/ru.po +++ b/src/bin/psql/po/ru.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: psql (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2025-02-08 08:33+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -21,22 +21,22 @@ 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" -#: ../../../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 "подсказка: " @@ -61,28 +61,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" @@ -104,7 +104,7 @@ msgstr "попытка дублирования нулевого указате msgid "could not look up effective user ID %ld: %s" msgstr "выяснить эффективный идентификатор пользователя (%ld) не удалось: %s" -#: ../../common/username.c:45 command.c:616 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "пользователь не существует" @@ -165,10 +165,10 @@ msgid "Interrupted\n" msgstr "Прервано\n" #: ../../fe_utils/print.c:3188 -#, c-format +#, fuzzy, c-format msgid "" -"Cannot print table contents: number of cells %lld is equal to or exceeds " -"maximum %lld.\n" +"Cannot print table contents: number of cells % is equal to or " +"exceeds maximum %zu.\n" msgstr "" "Вывести содержимое таблицы нельзя: число ячеек %lld достигло максимума " "%lld.\n" @@ -180,8 +180,9 @@ msgstr "" "Ошибка добавления заголовка таблицы: превышен предел числа столбцов (%d).\n" #: ../../fe_utils/print.c:3272 -#, c-format -msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" +#, fuzzy, c-format +msgid "" +"Cannot add cell to table content: total cell count of % exceeded.\n" msgstr "" "Ошибка добавления ячейки в таблицу: превышен предел числа ячеек (%lld).\n" @@ -190,290 +191,390 @@ msgstr "" 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 -#, c-format -msgid "could not look up local user ID %d: %s" -msgstr "найти локального пользователя по идентификатору (%d) не удалось: %s" - -#: ../../port/user.c:48 ../../port/user.c:84 +#: command.c:254 #, c-format -msgid "local user with ID %d does not exist" -msgstr "локальный пользователь с ID %d не существует" +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "" -#: 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 "не удалось получить домашний каталог пользователя c ид. %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" +#: command.c:839 +#, fuzzy +msgid "Connection Information" msgstr "" -"Вы подключены к базе данных \"%s\" как пользователь \"%s\" (адрес сервера " -"\"%s\", порт \"%s\").\n" +"\n" +"Параметры подключения:\n" -#: command.c:670 -#, c-format -msgid "" -"You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at " -"port \"%s\".\n" +#: command.c:840 describe.c:4722 +msgid "Parameter" +msgstr "Параметр" + +#: command.c:841 describe.c:4723 +msgid "Value" +msgstr "Значение" + +#: command.c:844 describe.c:3874 +msgid "Database" +msgstr "БД" + +#: command.c:848 +msgid "Client User" msgstr "" -"Вы подключены к базе данных \"%s\" как пользователь \"%s\" через сокет в " -"\"%s\", порт \"%s\".\n" -#: command.c:676 -#, c-format -msgid "" -"You are connected to database \"%s\" as user \"%s\" on host \"%s\" (address " -"\"%s\") at port \"%s\".\n" +#: command.c:857 command.c:872 +msgid "Host Address" msgstr "" -"Вы подключены к базе данных \"%s\" как пользователь \"%s\" (компьютер " -"\"%s\": адрес \"%s\", порт \"%s\").\n" -#: command.c:679 -#, c-format -msgid "" -"You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port " -"\"%s\".\n" +#: command.c:862 +#, fuzzy +msgid "Socket Directory" +msgstr "каталог" + +#: command.c:868 +msgid "Host" msgstr "" -"Вы подключены к базе данных \"%s\" как пользователь \"%s\" (компьютер " -"\"%s\", порт \"%s\").\n" -#: command.c:1069 command.c:1170 command.c:2675 +#: command.c:878 +#, fuzzy +msgid "Server Port" +msgstr "Сервер" + +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 +msgid "Options" +msgstr "Параметры" + +#: command.c:886 +#, fuzzy +msgid "Protocol Version" +msgstr "Версия" + +#: command.c:890 +#, fuzzy +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:894 +msgid "GSSAPI Authenticated" +msgstr "" + +#: command.c:898 +msgid "Backend PID" +msgstr "" + +#: command.c:902 +#, fuzzy +msgid "SSL Connection" +msgstr "Соединение\n" + +#: command.c:922 +msgid "SSL Library" +msgstr "" + +#: 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 "" + +#: command.c:928 +msgid "SSL Key Bits" +msgstr "" + +#: command.c:931 +msgid "SSL Cipher" +msgstr "" + +#: command.c:934 +#, fuzzy +msgid "SSL Compression" +msgstr "Сжатие" + +#: command.c:938 +msgid "ALPN" +msgstr "" + +#: 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:5776 +#: 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:5882 -#: 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 "" + +#: 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 "" -#: 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 "" + +#: command.c:2860 +#, c-format +msgid "\\sendpipeline not allowed outside of pipeline mode" +msgstr "" + +#: 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 "" + +#: command.c:3218 +#, c-format +msgid "\\%s: wrong key" +msgstr "" + +#: 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" @@ -481,23 +582,23 @@ 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 " @@ -506,7 +607,7 @@ 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\" " @@ -515,7 +616,7 @@ 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 " @@ -524,7 +625,7 @@ 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 " @@ -533,17 +634,17 @@ 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" @@ -552,33 +653,25 @@ 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" @@ -591,7 +684,7 @@ msgstr "" " Подробнее об этом смотрите документацию psql, раздел\n" " \"Notes for Windows users\".\n" -#: command.c:4038 +#: command.c:4667 #, c-format msgid "" "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a " @@ -600,33 +693,33 @@ 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-" @@ -635,27 +728,27 @@ 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\", " @@ -664,12 +757,12 @@ 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 " @@ -678,117 +771,117 @@ 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" @@ -796,97 +889,97 @@ msgstr[0] "Постраничник не будет использоваться msgstr[1] "Постраничник не будет использоваться, если строк меньше %d\n" msgstr[2] "Постраничник не будет использоваться, если строк меньше %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 "Атрибуты HTML-таблицы: \"%s\".\n" -#: command.c:4938 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "Атрибуты HTML-таблицы не заданы.\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:5261 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch нельзя использовать с пустым запросом" -#: command.c:5293 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "не удалось установить таймер: %m" -#: command.c:5362 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (обновление: %g с)\n" -#: command.c:5365 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (обновление: %g с)\n" -#: command.c:5429 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "сбой при ожидании сигналов: %m" -#: command.c:5485 command.c:5492 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" @@ -899,79 +992,79 @@ msgstr "" "/************************/\n" "\n" -#: command.c:5671 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "\"%s.%s\" — не представление" -#: command.c:5687 +#: 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 д. %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 " @@ -980,34 +1073,34 @@ 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 " @@ -1022,37 +1115,52 @@ msgstr "" "/**(Enter - выполнение; x и Enter - " "отмена)************************************/\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.c:98 #, c-format msgid "\\copy: arguments required" @@ -1105,11 +1213,11 @@ 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 "попытка выйти из режима копирования" @@ -1169,768 +1277,785 @@ 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 -#, c-format -msgid "\\df only takes [anptwS+] as options" +#: describe.c:316 +#, fuzzy, c-format +msgid "\\df only takes [%s] as options" msgstr "\\df принимает в качестве параметров только [anptwS+]" -#: describe.c:316 +#: describe.c:324 #, c-format msgid "\\df does not take a \"%c\" option with server version %s" msgstr "\\df не поддерживает параметр \"%c\" с сервером версии %s" # well-spelled: агр #. 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 "проц." # well-spelled: функ -#: 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 "LC_COLLATE" -#: describe.c:939 describe.c:4937 +#: describe.c:978 describe.c:5113 msgid "Ctype" msgstr "LC_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 +#, fuzzy +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 "Последовательность для столбца идентификации: %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 "Допустимость NULL" -#: 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 "Определение" # well-spelled: ОСД -#: 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 "Параметры ОСД" -#: 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 " null не различаются" -#: 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 "Ограничения-проверки:" # TO REWVIEW -#: 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 +#, fuzzy +msgid "Not-null constraints:" +msgstr "ограничение таблицы" + +#: describe.c:3141 +#, fuzzy +msgid " (local, inherited)" +msgstr "Не наследуется" + +#: describe.c:3142 +#, fuzzy +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" # well-spelled: ОСД -#: describe.c:3333 +#: describe.c:3429 #, c-format msgid "FDW options: (%s)" msgstr "Параметр ОСД: (%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 "Содержит OID: да" -#: 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 "Пропускать RLS" -#: 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" @@ -1938,401 +2063,483 @@ msgstr[0] "%d подключение" msgstr[1] "%d подключения" msgstr[2] "%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 +#, fuzzy, c-format +msgid "Did not find any relations named \"%s\"." +msgstr "Отношение \"%s\" не найдено." + +#: describe.c:4183 +#, fuzzy, c-format +msgid "Did not find any tables named \"%s\"." +msgstr "Расширение \"%s\" не найдено." + +#: describe.c:4186 +#, fuzzy, c-format +msgid "Did not find any indexes named \"%s\"." +msgstr "Расширение \"%s\" не найдено." + +#: describe.c:4189 +#, fuzzy, c-format +msgid "Did not find any views named \"%s\"." +msgstr "Расширение \"%s\" не найдено." + +#: describe.c:4192 +#, fuzzy, c-format +msgid "Did not find any materialized views named \"%s\"." +msgstr "Отношение \"%s\" не найдено." + +#: describe.c:4195 +#, fuzzy, c-format +msgid "Did not find any sequences named \"%s\"." +msgstr "Расширение \"%s\" не найдено." + +#: describe.c:4198 +#, fuzzy, c-format +msgid "Did not find any foreign tables named \"%s\"." +msgstr "Отношение \"%s\" не найдено." + +#: describe.c:4209 +#, fuzzy, c-format +msgid "Did not find any tables." +msgstr "Никакие расширения не найдены." + +#: describe.c:4211 +#, fuzzy, c-format +msgid "Did not find any indexes." +msgstr "Никакие расширения не найдены." + +#: describe.c:4213 +#, fuzzy, c-format +msgid "Did not find any views." +msgstr "Никакие параметры не найдены." + +#: describe.c:4215 +#, fuzzy, c-format +msgid "Did not find any materialized views." +msgstr "создать материализованное представление" + +#: describe.c:4217 +#, fuzzy, c-format +msgid "Did not find any sequences." +msgstr "Никакие параметры не найдены." + +#: describe.c:4219 +#, fuzzy, c-format +msgid "Did not find any foreign tables." +msgstr "Отношения не найдены." + +#: describe.c:4227 msgid "List of relations" msgstr "Список отношений" -#: describe.c:4127 +#: describe.c:4228 +#, fuzzy +msgid "List of tables" +msgstr "Список табличных пространств" + +#: describe.c:4229 +#, fuzzy +msgid "List of indexes" +msgstr "Список доменов" + +#: describe.c:4230 +#, fuzzy +msgid "List of views" +msgstr "Список ролей" + +#: describe.c:4231 +#, fuzzy +msgid "List of materialized views" +msgstr "материализованное представление" + +#: describe.c:4232 +#, fuzzy +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" @@ -2341,7 +2548,7 @@ msgstr "" "\n" "Анализатор: \"%s.%s\"" -#: describe.c:5705 +#: describe.c:5881 #, c-format msgid "" "\n" @@ -2350,273 +2557,279 @@ 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 +#, fuzzy +msgid "Default version" +msgstr "Строка итогов включена.\n" -#: 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 +#, fuzzy +msgid "Generated columns" +msgstr "целевой_столбец" + +#: describe.c:6444 describe.c:6654 msgid "Via root" msgstr "Через корень" -#: 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 "Строка подключения" -#: 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" @@ -2624,11 +2837,11 @@ msgstr "" "psql - это интерактивный терминал PostgreSQL.\n" "\n" -#: help.c:64 help.c:372 help.c:456 help.c:502 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "Использование:\n" -#: help.c:65 +#: help.c:62 msgid "" " psql [OPTION]... [DBNAME [USERNAME]]\n" "\n" @@ -2636,11 +2849,11 @@ 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" @@ -2648,19 +2861,19 @@ msgstr "" " -c, --command=КОМАНДА выполнить одну команду (SQL или внутреннюю) и " "выйти\n" -#: help.c:69 +#: help.c:66 msgid " -d, --dbname=DBNAME database name to connect to\n" msgstr " -d, --dbname=БД имя целевой базы данных\n" -#: help.c:70 +#: help.c:67 msgid " -f, --file=FILENAME execute commands from file, then exit\n" msgstr " -f, --file=ИМЯ_ФАЙЛА выполнить команды из файла и выйти\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" @@ -2670,16 +2883,16 @@ msgstr "" " присвоить переменной psql ИМЯ заданное ЗНАЧЕНИЕ\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-" @@ -2689,20 +2902,20 @@ msgstr "" " выполнить как одну транзакцию\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" @@ -2710,54 +2923,54 @@ 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=ИМЯ_ФАЙЛА сохранять протокол работы в файл\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=ИМЯ_ФАЙЛА направить результаты запроса в файл (или канал " "|)\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" @@ -2765,7 +2978,7 @@ msgstr "" " -S, --single-line однострочный режим (конец строки завершает " "команду)\n" -#: help.c:95 +#: help.c:92 msgid "" "\n" "Output format options:\n" @@ -2773,11 +2986,11 @@ 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 "" @@ -2785,7 +2998,7 @@ msgstr "" "разделённые\n" " запятыми)\n" -#: help.c:98 +#: help.c:95 #, c-format msgid "" " -F, --field-separator=STRING\n" @@ -2796,11 +3009,11 @@ msgstr "" " разделителей полей при невыровненном выводе\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" @@ -2809,7 +3022,7 @@ msgstr "" "ЗНАЧЕНИЕМ)\n" " (см. описание \\pset)\n" -#: help.c:103 +#: help.c:100 msgid "" " -R, --record-separator=STRING\n" " record separator for unaligned output (default: " @@ -2819,22 +3032,22 @@ msgstr "" " разделитель записей при невыровненном выводе\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 " @@ -2844,7 +3057,7 @@ msgstr "" " сделать разделителем полей при невыровненном\n" " выводе нулевой байт\n" -#: help.c:110 +#: help.c:107 msgid "" " -0, --record-separator-zero\n" " set record separator for unaligned output to zero " @@ -2854,7 +3067,7 @@ msgstr "" " сделать разделителем записей при невыровненном\n" " нулевой байт\n" -#: help.c:113 +#: help.c:110 msgid "" "\n" "Connection options:\n" @@ -2862,32 +3075,32 @@ msgstr "" "\n" "Параметры подключения:\n" -#: help.c:114 +#: help.c:111 msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=ИМЯ компьютер с сервером баз данных или каталог " "сокетов\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=ИМЯ имя пользователя БД\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 " @@ -2903,40 +3116,36 @@ msgstr "" "документации 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 [ПАРАМЕТР]... задать параметры запроса\n" - # skip-rule: copyright -#: 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 [СТОЛБЦЫ] выполнить запрос и вывести результат в " "перекрёстном виде\n" -#: help.c:170 +#: help.c:166 msgid "" " \\errverbose show most recent error message at maximum " "verbosity\n" @@ -2944,7 +3153,7 @@ 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" @@ -2953,13 +3162,13 @@ msgstr "" " или канал |); \\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" @@ -2967,7 +3176,7 @@ msgstr "" " \\gexec выполнить запрос, а затем выполнить каждую строку " "в результате\n" -#: help.c:175 +#: help.c:171 msgid "" " \\gset [PREFIX] execute query and store result in psql variables\n" msgstr "" @@ -2975,15 +3184,27 @@ msgstr "" "переменных\n" " psql\n" -#: help.c:176 +#: help.c:172 msgid " \\gx [(OPTIONS)] [FILE] as \\g, but forces expanded output mode\n" msgstr "" " \\gx [(ПАРАМЕТРЫ)] [ФАЙЛ] то же, что \\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 "" + +#: help.c:176 +msgid "" +" \\unrestrict RESTRICT_KEY\n" +" exit restricted mode if key matches\n" +msgstr "" + #: help.c:178 msgid "" " \\watch [[i=]SEC] [c=N] [m=MIN]\n" @@ -2995,8 +3216,8 @@ msgstr "" "более\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" @@ -3146,108 +3367,133 @@ msgid "Informational\n" msgstr "Информационные\n" #: help.c:221 -msgid " (options: S = show system objects, + = additional detail)\n" +#, fuzzy +msgid "" +" (options: S = show system objects, x = expanded mode, + = additional " +"detail)\n" msgstr "" " (дополнения: S = показывать системные объекты, + = дополнительные " "подробности)\n" #: help.c:222 -msgid " \\d[S+] list tables, views, and sequences\n" +#, fuzzy +msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr "" " \\d[S+] список таблиц, представлений и " "последовательностей\n" #: help.c:223 -msgid " \\d[S+] NAME describe table, view, sequence, or index\n" +#, fuzzy +msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr "" " \\d[S+] ИМЯ описание таблицы, представления, " "последовательности\n" " или индекса\n" #: help.c:224 -msgid " \\da[S] [PATTERN] list aggregates\n" +#, fuzzy +msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[S] [МАСКА] список агрегатных функций\n" #: help.c:225 -msgid " \\dA[+] [PATTERN] list access methods\n" +#, fuzzy +msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[+] [МАСКА] список методов доступа\n" # well-spelled: МСК #: help.c:226 -msgid " \\dAc[+] [AMPTRN [TYPEPTRN]] list operator classes\n" +#, fuzzy +msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[+] [МСК_МД [МСК_ТИПА]] список классов операторов\n" # well-spelled: МСК #: help.c:227 -msgid " \\dAf[+] [AMPTRN [TYPEPTRN]] list operator families\n" +#, fuzzy +msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[+] [МСК_МД [МСК_ТИПА]] список семейств операторов\n" # well-spelled: МСК #: help.c:228 -msgid " \\dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families\n" +#, fuzzy +msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr "" " \\dAo[+] [МСК_МД [МСК_СОП]] список операторов из семейств операторов\n" # well-spelled: МСК #: help.c:229 +#, fuzzy msgid "" -" \\dAp[+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" +" \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator " +"families\n" msgstr " \\dAp[+] [МСК_МД [МСК_СОП]] список опорных функций из семейств\n" #: help.c:230 -msgid " \\db[+] [PATTERN] list tablespaces\n" +#, fuzzy +msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[+] [МАСКА] список табличных пространств\n" #: help.c:231 -msgid " \\dc[S+] [PATTERN] list conversions\n" +#, fuzzy +msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[S+] [МАСКА] список преобразований\n" #: help.c:232 -msgid " \\dconfig[+] [PATTERN] list configuration parameters\n" +#, fuzzy +msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[+] [МАСКА] список параметров конфигурации\n" #: help.c:233 -msgid " \\dC[+] [PATTERN] list casts\n" +#, fuzzy +msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[+] [МАСКА] список приведений типов\n" #: help.c:234 +#, fuzzy msgid "" -" \\dd[S] [PATTERN] show object descriptions not displayed elsewhere\n" +" \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr "" " \\dd[S] [МАСКА] описания объектов, не выводимые в других режимах\n" #: help.c:235 -msgid " \\dD[S+] [PATTERN] list domains\n" +#, fuzzy +msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[S+] [МАСКА] список доменов\n" #: help.c:236 -msgid " \\ddp [PATTERN] list default privileges\n" +#, fuzzy +msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp [МАСКА] список прав по умолчанию\n" #: help.c:237 -msgid " \\dE[S+] [PATTERN] list foreign tables\n" +#, fuzzy +msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[S+] [МАСКА] список сторонних таблиц\n" #: help.c:238 -msgid " \\des[+] [PATTERN] list foreign servers\n" +#, fuzzy +msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[+] [МАСКА] список сторонних серверов\n" #: help.c:239 -msgid " \\det[+] [PATTERN] list foreign tables\n" +#, fuzzy +msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[+] [МАСКА] список сторонних таблиц\n" #: help.c:240 -msgid " \\deu[+] [PATTERN] list user mappings\n" +#, fuzzy +msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[+] [МАСКА] список сопоставлений пользователей\n" #: help.c:241 -msgid " \\dew[+] [PATTERN] list foreign-data wrappers\n" +#, fuzzy +msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[+] [МАСКА] список обёрток сторонних данных\n" # well-spelled: МСК, ФУНК #: help.c:242 +#, fuzzy msgid "" -" \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" +" \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] " "functions\n" msgstr "" @@ -3256,69 +3502,83 @@ msgstr "" "триггеров/оконных]\n" #: help.c:244 -msgid " \\dF[+] [PATTERN] list text search configurations\n" +#, fuzzy +msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr " \\dF[+] [МАСКА] список конфигураций текстового поиска\n" #: help.c:245 -msgid " \\dFd[+] [PATTERN] list text search dictionaries\n" +#, fuzzy +msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr " \\dFd[+] [МАСКА] список словарей текстового поиска\n" #: help.c:246 -msgid " \\dFp[+] [PATTERN] list text search parsers\n" +#, fuzzy +msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr " \\dFp[+] [МАСКА] список анализаторов текстового поиска\n" #: help.c:247 -msgid " \\dFt[+] [PATTERN] list text search templates\n" +#, fuzzy +msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr " \\dFt[+] [МАСКА] список шаблонов текстового поиска\n" #: help.c:248 -msgid " \\dg[S+] [PATTERN] list roles\n" +#, fuzzy +msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[S+] [МАСКА] список ролей\n" #: help.c:249 -msgid " \\di[S+] [PATTERN] list indexes\n" +#, fuzzy +msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[S+] [МАСКА] список индексов\n" #: help.c:250 -msgid " \\dl[+] list large objects, same as \\lo_list\n" +#, fuzzy +msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr "" " \\dl[+] список больших объектов (то же, что и \\lo_list)\n" #: help.c:251 -msgid " \\dL[S+] [PATTERN] list procedural languages\n" +#, fuzzy +msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[S+] [МАСКА] список языков процедур\n" #: help.c:252 -msgid " \\dm[S+] [PATTERN] list materialized views\n" +#, fuzzy +msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[S+] [МАСКА] список материализованных представлений\n" #: help.c:253 -msgid " \\dn[S+] [PATTERN] list schemas\n" +#, fuzzy +msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[S+] [МАСКА] список схем\n" # well-spelled: МСК #: help.c:254 +#, fuzzy msgid "" -" \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" +" \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" msgstr "" " \\do[S+] [МСК_ОП [МСК_ТИПА [МСК_ТИПА]]]\n" " список операторов\n" #: help.c:256 -msgid " \\dO[S+] [PATTERN] list collations\n" +#, fuzzy +msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[S+] [МАСКА] список правил сортировки\n" #: help.c:257 +#, fuzzy msgid "" -" \\dp[S] [PATTERN] list table, view, and sequence access privileges\n" +" \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr "" " \\dp[S] [МАСКА] список прав доступа к таблицам, представлениям и\n" " последовательностям\n" #: help.c:258 +#, fuzzy msgid "" -" \\dP[itn+] [PATTERN] list [only index/table] partitioned relations " +" \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations " "[n=nested]\n" msgstr "" " \\dP[itn+] [МАСКА] список секционированных отношений\n" @@ -3327,79 +3587,97 @@ msgstr "" # well-spelled: МСК #: help.c:259 -msgid " \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n" +#, fuzzy +msgid "" +" \\drds[x] [ROLEPTRN [DBPTRN]]\n" +" list per-database role settings\n" msgstr " \\drds [МСК_РОЛИ [МСК_БД]] список параметров роли на уровне БД\n" -#: help.c:260 -msgid " \\drg[S] [PATTERN] list role grants\n" +#: help.c:261 +#, fuzzy +msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\drg[S] [МАСКА] список назначений ролей\n" -#: help.c:261 -msgid " \\dRp[+] [PATTERN] list replication publications\n" +#: help.c:262 +#, fuzzy +msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[+] [МАСКА] список публикаций для репликации\n" -#: help.c:262 -msgid " \\dRs[+] [PATTERN] list replication subscriptions\n" +#: help.c:263 +#, fuzzy +msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[+] [МАСКА] список подписок на репликацию\n" -#: help.c:263 -msgid " \\ds[S+] [PATTERN] list sequences\n" +#: help.c:264 +#, fuzzy +msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[S+] [МАСКА] список последовательностей\n" -#: help.c:264 -msgid " \\dt[S+] [PATTERN] list tables\n" +#: help.c:265 +#, fuzzy +msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[S+] [МАСКА] список таблиц\n" -#: help.c:265 -msgid " \\dT[S+] [PATTERN] list data types\n" +#: help.c:266 +#, fuzzy +msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[S+] [МАСКА] список типов данных\n" -#: help.c:266 -msgid " \\du[S+] [PATTERN] list roles\n" +#: help.c:267 +#, fuzzy +msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[S+] [МАСКА] список ролей\n" -#: help.c:267 -msgid " \\dv[S+] [PATTERN] list views\n" +#: help.c:268 +#, fuzzy +msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[S+] [МАСКА] список представлений\n" -#: help.c:268 -msgid " \\dx[+] [PATTERN] list extensions\n" +#: help.c:269 +#, fuzzy +msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[+] [МАСКА] список расширений\n" -#: help.c:269 -msgid " \\dX [PATTERN] list extended statistics\n" +#: help.c:270 +#, fuzzy +msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX [МАСКА] список расширенных статистик\n" -#: help.c:270 -msgid " \\dy[+] [PATTERN] list event triggers\n" +#: help.c:271 +#, fuzzy +msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[+] [МАСКА] список событийных триггеров\n" -#: help.c:271 -msgid " \\l[+] [PATTERN] list databases\n" +#: help.c:272 +#, fuzzy +msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[+] [МАСКА] список баз данных\n" -#: help.c:272 -msgid " \\sf[+] FUNCNAME show a function's definition\n" +#: help.c:273 +#, fuzzy +msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] ИМЯ_ФУНКЦИИ показать определение функции\n" # well-spelled: ПРЕДСТ -#: help.c:273 -msgid " \\sv[+] VIEWNAME show a view's definition\n" +#: help.c:274 +#, fuzzy +msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] ИМЯ_ПРЕДСТ показать определение представления\n" -#: help.c:274 -msgid " \\z[S] [PATTERN] same as \\dp\n" +#: help.c:275 +#, fuzzy +msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[S] [МАСКА] то же, что и \\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 OID_БО ФАЙЛ записать большой объект в файл\n" -#: help.c:279 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3407,32 +3685,33 @@ msgstr "" " \\lo_import ФАЙЛ [КОММЕНТАРИЙ]\n" " прочитать большой объект из файла\n" -#: help.c:281 -msgid " \\lo_list[+] list large objects\n" +#: help.c:282 +#, fuzzy +msgid " \\lo_list[x+] list large objects\n" msgstr " \\lo_list[+] список больших объектов\n" -#: help.c:282 +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink OID_БО удалить большой объект\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 переключение режимов вывода:\n" " неформатированный/выровненный\n" -#: help.c:287 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr "" " \\C [СТРОКА] задать заголовок таблицы или убрать, если не " "задан\n" -#: help.c:288 +#: help.c:289 msgid "" " \\f [STRING] show or set field separator for unaligned query " "output\n" @@ -3440,13 +3719,13 @@ msgstr "" " \\f [СТРОКА] показать или установить разделитель полей для\n" " неформатированного вывода\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" @@ -3464,34 +3743,34 @@ msgstr "" " unicode_border_linestyle|unicode_column_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 [СТРОКА] задать атрибуты для
или убрать, если не " "заданы\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 "auto" -#: 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" @@ -3501,7 +3780,7 @@ msgstr "" " подключиться к другой базе данных\n" " (текущая: \"%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" @@ -3510,43 +3789,43 @@ msgstr "" " подключиться к другой базе данных\n" " (сейчас подключения нет)\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 [КОДИРОВКА] показать/установить клиентскую кодировку\n" -#: help.c:315 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr " \\password [ИМЯ] безопасно сменить пароль пользователя\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 [ПУТЬ] сменить текущий каталог\n" # well-spelled: ОКР -#: help.c:320 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv ПЕР_PSQL ПЕР_ОКР прочитать переменную окружения\n" -#: help.c:321 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr "" " \\setenv ИМЯ [ЗНАЧЕНИЕ] установить или сбросить переменную окружения\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" @@ -3554,17 +3833,17 @@ msgstr "" " \\! [КОМАНДА] выполнить команду в командной оболочке\n" " или запустить интерактивную оболочку\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 [ТЕКСТ] ИМЯ предложить пользователю задать внутреннюю " "переменную\n" -#: help.c:329 +#: help.c:330 msgid "" " \\set [NAME [VALUE]] set internal variable, or list all if no " "parameters\n" @@ -3572,11 +3851,73 @@ msgstr "" " \\set [ИМЯ [ЗНАЧЕНИЕ]] установить внутреннюю переменную или вывести все,\n" " если имя не задано\n" -#: help.c:330 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset ИМЯ сбросить (удалить) внутреннюю переменную\n" -#: help.c:369 +#: help.c:334 +msgid "Extended Query Protocol\n" +msgstr "" + +#: help.c:335 +msgid " \\bind [PARAM]... set query parameters\n" +msgstr " \\bind [ПАРАМЕТР]... задать параметры запроса\n" + +#: help.c:336 +msgid "" +" \\bind_named STMT_NAME [PARAM]...\n" +" set query parameters for an existing prepared " +"statement\n" +msgstr "" + +#: help.c:338 +msgid "" +" \\close_prepared STMT_NAME\n" +" close an existing prepared statement\n" +msgstr "" + +#: help.c:340 +msgid " \\endpipeline exit pipeline mode\n" +msgstr "" + +#: help.c:341 +#, fuzzy +msgid " \\flush flush output data to the server\n" +msgstr " \\p вывести содержимое буфера запросов\n" + +#: help.c:342 +msgid "" +" \\flushrequest send request to the server to flush its output " +"buffer\n" +msgstr "" + +#: help.c:343 +msgid "" +" \\getresults [NUM_RES] read NUM_RES pending results, or all if no " +"argument\n" +msgstr "" + +#: help.c:344 +#, fuzzy +msgid " \\parse STMT_NAME create a prepared statement\n" +msgstr "освободить подготовленный оператор" + +#: help.c:345 +msgid "" +" \\sendpipeline send an extended query to an ongoing pipeline\n" +msgstr "" + +#: help.c:346 +msgid " \\startpipeline enter pipeline mode\n" +msgstr "" + +#: help.c:347 +msgid "" +" \\syncpipeline add a synchronisation point to an ongoing " +"pipeline\n" +msgstr "" + +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" @@ -3584,11 +3925,11 @@ 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" @@ -3598,7 +3939,7 @@ msgstr "" " или \\set ИМЯ ЗНАЧЕНИЕ в приглашении psql\n" "\n" -#: help.c:375 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3606,7 +3947,7 @@ 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" @@ -3618,7 +3959,7 @@ msgstr "" " preserve-lower (сохранять нижний),\n" " preserve-upper (сохранять верхний)]\n" -#: help.c:380 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3626,7 +3967,7 @@ msgstr "" " DBNAME\n" " имя текущей подключённой базы данных\n" -#: help.c:382 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3637,7 +3978,7 @@ msgstr "" " [all (всё), errors (ошибки), none (ничего),\n" " queries (запросы)]\n" -#: help.c:385 +#: help.c:402 msgid "" " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" @@ -3647,7 +3988,7 @@ msgstr "" " если включено, выводит внутренние запросы, порождаемые командами с \\;\n" " если установлено значение \"noexec\", они выводятся, но не выполняются\n" -#: help.c:388 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3655,7 +3996,7 @@ msgstr "" " ENCODING\n" " текущая кодировка клиентского набора символов\n" -#: help.c:390 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3663,7 +4004,7 @@ 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 = " @@ -3673,7 +4014,7 @@ msgstr "" " число результирующих строк, извлекаемых и отображаемых за раз\n" " (0 = без ограничений)\n" -#: help.c:394 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3681,7 +4022,7 @@ msgstr "" " HIDE_TABLEAM\n" " если установлено, табличные методы доступа не выводятся\n" -#: help.c:396 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3689,7 +4030,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " если установлено, методы сжатия не выводятся\n" -#: help.c:398 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3698,7 +4039,7 @@ msgstr "" " управляет историей команд [ignorespace (игнорировать пробелы),\n" " ignoredups (игнорировать дубли), ignoreboth (и то, и другое)]\n" -#: help.c:400 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3706,7 +4047,7 @@ msgstr "" " HISTFILE\n" " имя файла, в котором будет сохраняться история команд\n" -#: help.c:402 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3714,7 +4055,7 @@ msgstr "" " HISTSIZE\n" " максимальное число команд, сохраняемых в истории\n" -#: help.c:404 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3722,7 +4063,7 @@ msgstr "" " HOST\n" " компьютер с сервером баз данных, к которому установлено подключение\n" -#: help.c:406 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3730,7 +4071,7 @@ msgstr "" " IGNOREEOF\n" " количество EOF для завершения интерактивного сеанса\n" -#: help.c:408 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3738,7 +4079,7 @@ msgstr "" " LASTOID\n" " значение последнего задействованного OID\n" -#: help.c:410 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3751,7 +4092,7 @@ msgstr "" "\"00000\",\n" " если ошибки не было\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" @@ -3760,7 +4101,7 @@ msgstr "" " если установлено, транзакция не прекращается при ошибке\n" " (используются неявные точки сохранения)\n" -#: help.c:415 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3768,7 +4109,7 @@ msgstr "" " ON_ERROR_STOP\n" " останавливать выполнение пакета команд после ошибки\n" -#: help.c:417 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3776,7 +4117,7 @@ msgstr "" " PORT\n" " порт сервера для текущего соединения\n" -#: help.c:419 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3784,7 +4125,7 @@ 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 " @@ -3794,7 +4135,7 @@ msgstr "" " устанавливает приглашение, которое выводится при переносе оператора\n" " на новую строку\n" -#: help.c:423 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3802,7 +4143,7 @@ msgstr "" " PROMPT3\n" " устанавливает приглашение для выполнения COPY ... FROM STDIN\n" -#: help.c:425 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3810,7 +4151,7 @@ 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" @@ -3819,7 +4160,7 @@ msgstr "" " число строк, возвращённых или обработанных последним SQL-запросом, либо " "0\n" -#: help.c:429 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3829,7 +4170,7 @@ msgstr "" " 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" @@ -3838,7 +4179,7 @@ msgstr "" " \"true\" в случае ошибки последней команды оболочки, \"false\" в ином " "случае\n" -#: help.c:434 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3846,7 +4187,7 @@ msgstr "" " SHELL_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" @@ -3855,7 +4196,7 @@ msgstr "" " выводить все результаты объединённых запросов (\\;), а не только " "последнего\n" -#: help.c:438 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3864,7 +4205,7 @@ msgstr "" " управляет отображением полей контекста сообщений\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" @@ -3873,7 +4214,7 @@ msgstr "" " если установлено, конец строки завершает режим ввода SQL-команды\n" " (как и с параметром -S)\n" -#: help.c:442 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3881,7 +4222,7 @@ msgstr "" " SINGLESTEP\n" " пошаговый режим (как и с параметром -s)\n" -#: help.c:444 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3890,7 +4231,7 @@ msgstr "" " SQLSTATE последнего запроса или \"00000\", если он выполнился без " "ошибок\n" -#: help.c:446 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3898,7 +4239,7 @@ msgstr "" " USER\n" " текущий пользователь, подключённый к БД\n" -#: help.c:448 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3907,7 +4248,7 @@ msgstr "" " управляет детализацией отчётов об ошибках [default (по умолчанию),\n" " verbose (подробно), terse (кратко), sqlstate (код состояния)]\n" -#: help.c:450 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3919,7 +4260,14 @@ msgstr "" " 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 "" + +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3927,7 +4275,7 @@ msgstr "" "\n" "Параметры отображения:\n" -#: help.c:457 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3937,7 +4285,7 @@ msgstr "" " или \\pset ИМЯ [ЗНАЧЕНИЕ] в приглашении psql\n" "\n" -#: help.c:459 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -3945,7 +4293,7 @@ msgstr "" " border\n" " стиль границы (число)\n" -#: help.c:461 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -3953,7 +4301,7 @@ msgstr "" " columns\n" " целевая ширина для формата с переносом\n" -#: help.c:463 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3961,7 +4309,7 @@ msgstr "" " expanded (или x)\n" " развёрнутый вывод [on (вкл.), off (выкл.), auto (авто)]\n" -#: help.c:465 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -3970,7 +4318,7 @@ msgstr "" " fieldsep\n" " разделитель полей для неформатированного вывода (по умолчанию \"%s\")\n" -#: help.c:468 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3978,7 +4326,7 @@ msgstr "" " fieldsep_zero\n" " устанавливает ноль разделителем полей при неформатированном выводе\n" -#: help.c:470 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3986,7 +4334,7 @@ msgstr "" " footer\n" " включает или выключает вывод подписей таблицы [on (вкл.), off (выкл.)]\n" -#: help.c:472 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3996,7 +4344,7 @@ msgstr "" "\n" " aligned (выровненный), wrapped (с переносом), html, asciidoc, ...]\n" -#: help.c:474 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -4004,7 +4352,7 @@ msgstr "" " linestyle\n" " задаёт стиль рисования линий границы [ascii, old-ascii, unicode]\n" -#: help.c:476 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -4012,7 +4360,7 @@ msgstr "" " null\n" " устанавливает строку, выводимую вместо значения NULL\n" -#: help.c:478 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of " @@ -4021,7 +4369,7 @@ msgstr "" " numericlocale\n" " отключает вывод заданного локалью разделителя группы цифр\n" -#: help.c:480 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4030,7 +4378,7 @@ msgstr "" " определяет, используется ли внешний постраничник\n" " [yes (да), no (нет), always (всегда)]\n" -#: help.c:482 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4038,7 +4386,7 @@ msgstr "" " recordsep\n" " разделитель записей (строк) при неформатированном выводе\n" -#: help.c:484 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4046,7 +4394,7 @@ msgstr "" " recordsep_zero\n" " устанавливает ноль разделителем записей при неформатированном выводе\n" -#: help.c:486 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4056,7 +4404,7 @@ msgstr "" " задаёт атрибуты для тега table в формате html или пропорциональные\n" " ширины столбцов для выровненных влево данных, в формате latex-longtable\n" -#: help.c:489 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4064,7 +4412,7 @@ msgstr "" " title\n" " задаёт заголовок таблицы для последовательно печатаемых таблиц\n" -#: help.c:491 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4072,7 +4420,7 @@ msgstr "" " tuples_only\n" " если установлено, выводятся только непосредственно табличные данные\n" -#: help.c:493 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4085,7 +4433,7 @@ msgstr "" " задаёт стиль рисуемых линий Unicode [single (одинарные), double " "(двойные)]\n" -#: help.c:497 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4095,7 +4443,7 @@ msgstr "" " задаёт максимальную ширину заголовка для развёрнутого вывода\n" " [full (полностью), column (столбец), page (страница), целое значение]\n" -#: help.c:501 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -4103,7 +4451,7 @@ msgstr "" "\n" "Переменные окружения:\n" -#: help.c:505 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4113,7 +4461,7 @@ msgstr "" " или \\setenv ИМЯ [ЗНАЧЕНИЕ] в приглашении psql\n" "\n" -#: help.c:507 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4125,7 +4473,7 @@ msgstr "" " или \\setenv ИМЯ ЗНАЧЕНИЕ в приглашении psql\n" "\n" -#: help.c:510 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4133,7 +4481,7 @@ msgstr "" " COLUMNS\n" " число столбцов для форматирования с переносом\n" -#: help.c:512 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4141,7 +4489,7 @@ msgstr "" " PGAPPNAME\n" " синоним параметра подключения application_name\n" -#: help.c:514 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4149,7 +4497,7 @@ msgstr "" " PGDATABASE\n" " синоним параметра подключения dbname\n" -#: help.c:516 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4157,7 +4505,7 @@ msgstr "" " PGHOST\n" " синоним параметра подключения host\n" -#: help.c:518 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4165,7 +4513,7 @@ msgstr "" " PGPASSFILE\n" " имя файла с паролем\n" -#: help.c:520 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4173,7 +4521,7 @@ msgstr "" " PGPASSWORD\n" " пароль для подключения (использовать не рекомендуется)\n" -#: help.c:522 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4181,7 +4529,7 @@ msgstr "" " PGPORT\n" " синоним параметра подключения port\n" -#: help.c:524 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4189,7 +4537,7 @@ msgstr "" " PGUSER\n" " синоним параметра подключения user\n" -#: help.c:526 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4197,7 +4545,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " редактор, вызываемый командами \\e, \\ef и \\ev\n" -#: help.c:528 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4205,7 +4553,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " определяет способ передачи номера строки при вызове редактора\n" -#: help.c:530 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4213,7 +4561,7 @@ msgstr "" " PSQL_HISTORY\n" " альтернативное размещение файла с историей команд\n" -#: help.c:532 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4221,7 +4569,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " имя программы внешнего постраничника\n" -#: help.c:535 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4229,7 +4577,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " имя программы внешнего постраничника для \\watch\n" -#: help.c:538 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4237,7 +4585,7 @@ msgstr "" " PSQLRC\n" " альтернативное размещение пользовательского файла .psqlrc\n" -#: help.c:540 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4245,7 +4593,7 @@ msgstr "" " SHELL\n" " оболочка, вызываемая командой \\!\n" -#: help.c:542 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4253,11 +4601,11 @@ msgstr "" " TMPDIR\n" " каталог для временных файлов\n" -#: help.c:602 +#: help.c:622 msgid "Available help:\n" msgstr "Имеющаяся справка:\n" -#: help.c:697 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -4276,7 +4624,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:720 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -4388,12 +4736,12 @@ msgstr "" 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: нехватка памяти" @@ -4401,2420 +4749,2434 @@ 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:245 -#: sql_help.c:247 sql_help.c:248 sql_help.c:250 sql_help.c:252 sql_help.c:255 -#: sql_help.c:257 sql_help.c:259 sql_help.c:261 sql_help.c:276 sql_help.c:277 -#: sql_help.c:278 sql_help.c:280 sql_help.c:329 sql_help.c:331 sql_help.c:333 -#: sql_help.c:335 sql_help.c:404 sql_help.c:409 sql_help.c:411 sql_help.c:453 -#: sql_help.c:455 sql_help.c:458 sql_help.c:460 sql_help.c:529 sql_help.c:534 -#: sql_help.c:539 sql_help.c:544 sql_help.c:549 sql_help.c:603 sql_help.c:605 -#: sql_help.c:607 sql_help.c:609 sql_help.c:611 sql_help.c:614 sql_help.c:616 -#: sql_help.c:619 sql_help.c:630 sql_help.c:632 sql_help.c:676 sql_help.c:678 -#: sql_help.c:680 sql_help.c:683 sql_help.c:685 sql_help.c:687 sql_help.c:728 -#: sql_help.c:732 sql_help.c:736 sql_help.c:757 sql_help.c:760 sql_help.c:763 -#: sql_help.c:792 sql_help.c:804 sql_help.c:812 sql_help.c:815 sql_help.c:818 -#: sql_help.c:833 sql_help.c:836 sql_help.c:865 sql_help.c:870 sql_help.c:875 -#: sql_help.c:880 sql_help.c:885 sql_help.c:912 sql_help.c:914 sql_help.c:916 -#: sql_help.c:918 sql_help.c:921 sql_help.c:923 sql_help.c:970 sql_help.c:1015 -#: sql_help.c:1020 sql_help.c:1025 sql_help.c:1030 sql_help.c:1035 -#: sql_help.c:1054 sql_help.c:1065 sql_help.c:1067 sql_help.c:1087 -#: sql_help.c:1097 sql_help.c:1098 sql_help.c:1100 sql_help.c:1102 -#: sql_help.c:1114 sql_help.c:1118 sql_help.c:1120 sql_help.c:1132 -#: sql_help.c:1134 sql_help.c:1136 sql_help.c:1138 sql_help.c:1157 -#: sql_help.c:1159 sql_help.c:1163 sql_help.c:1167 sql_help.c:1171 -#: sql_help.c:1174 sql_help.c:1175 sql_help.c:1176 sql_help.c:1179 -#: sql_help.c:1182 sql_help.c:1184 sql_help.c:1324 sql_help.c:1326 -#: sql_help.c:1329 sql_help.c:1332 sql_help.c:1334 sql_help.c:1336 -#: sql_help.c:1339 sql_help.c:1342 sql_help.c:1464 sql_help.c:1466 -#: sql_help.c:1468 sql_help.c:1471 sql_help.c:1492 sql_help.c:1495 -#: sql_help.c:1498 sql_help.c:1501 sql_help.c:1505 sql_help.c:1507 -#: sql_help.c:1509 sql_help.c:1511 sql_help.c:1525 sql_help.c:1528 -#: sql_help.c:1530 sql_help.c:1532 sql_help.c:1542 sql_help.c:1544 -#: sql_help.c:1554 sql_help.c:1556 sql_help.c:1566 sql_help.c:1569 -#: sql_help.c:1592 sql_help.c:1594 sql_help.c:1596 sql_help.c:1598 -#: sql_help.c:1601 sql_help.c:1603 sql_help.c:1606 sql_help.c:1609 -#: sql_help.c:1660 sql_help.c:1703 sql_help.c:1706 sql_help.c:1708 -#: sql_help.c:1710 sql_help.c:1713 sql_help.c:1715 sql_help.c:1717 -#: sql_help.c:1720 sql_help.c:1770 sql_help.c:1786 sql_help.c:2019 -#: sql_help.c:2088 sql_help.c:2107 sql_help.c:2120 sql_help.c:2178 -#: sql_help.c:2186 sql_help.c:2196 sql_help.c:2224 sql_help.c:2257 -#: sql_help.c:2275 sql_help.c:2303 sql_help.c:2414 sql_help.c:2460 -#: sql_help.c:2485 sql_help.c:2508 sql_help.c:2512 sql_help.c:2546 -#: sql_help.c:2566 sql_help.c:2588 sql_help.c:2602 sql_help.c:2623 -#: sql_help.c:2652 sql_help.c:2685 sql_help.c:2708 sql_help.c:2755 -#: sql_help.c:3053 sql_help.c:3066 sql_help.c:3083 sql_help.c:3099 -#: sql_help.c:3139 sql_help.c:3193 sql_help.c:3197 sql_help.c:3199 -#: sql_help.c:3206 sql_help.c:3225 sql_help.c:3252 sql_help.c:3287 -#: sql_help.c:3299 sql_help.c:3308 sql_help.c:3352 sql_help.c:3366 -#: sql_help.c:3394 sql_help.c:3402 sql_help.c:3414 sql_help.c:3424 -#: sql_help.c:3432 sql_help.c:3440 sql_help.c:3448 sql_help.c:3456 -#: sql_help.c:3465 sql_help.c:3476 sql_help.c:3484 sql_help.c:3492 -#: sql_help.c:3500 sql_help.c:3508 sql_help.c:3518 sql_help.c:3527 -#: sql_help.c:3536 sql_help.c:3544 sql_help.c:3554 sql_help.c:3565 -#: sql_help.c:3573 sql_help.c:3582 sql_help.c:3593 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:3682 sql_help.c:3699 sql_help.c:3708 -#: sql_help.c:3716 sql_help.c:3733 sql_help.c:3748 sql_help.c:4061 -#: sql_help.c:4182 sql_help.c:4211 sql_help.c:4227 sql_help.c:4229 -#: sql_help.c:4733 sql_help.c:4781 sql_help.c:4940 +#: 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: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 msgid "name" msgstr "имя" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:340 sql_help.c:1863 -#: sql_help.c:3367 sql_help.c:4500 +#: 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 msgid "aggregate_signature" msgstr "сигнатура_агр_функции" -#: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:260 -#: sql_help.c:281 sql_help.c:412 sql_help.c:459 sql_help.c:538 sql_help.c:586 -#: sql_help.c:604 sql_help.c:631 sql_help.c:684 sql_help.c:759 sql_help.c:814 -#: sql_help.c:835 sql_help.c:874 sql_help.c:924 sql_help.c:971 sql_help.c:1024 -#: sql_help.c:1056 sql_help.c:1066 sql_help.c:1101 sql_help.c:1121 -#: sql_help.c:1135 sql_help.c:1185 sql_help.c:1333 sql_help.c:1465 -#: sql_help.c:1508 sql_help.c:1529 sql_help.c:1543 sql_help.c:1555 -#: sql_help.c:1568 sql_help.c:1595 sql_help.c:1661 sql_help.c:1714 +#: 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 msgid "new_name" msgstr "новое_имя" -#: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:258 -#: sql_help.c:279 sql_help.c:410 sql_help.c:495 sql_help.c:543 sql_help.c:633 -#: sql_help.c:642 sql_help.c:707 sql_help.c:731 sql_help.c:762 sql_help.c:817 -#: sql_help.c:879 sql_help.c:922 sql_help.c:1029 sql_help.c:1068 -#: sql_help.c:1099 sql_help.c:1119 sql_help.c:1133 sql_help.c:1183 -#: sql_help.c:1399 sql_help.c:1467 sql_help.c:1510 sql_help.c:1531 -#: sql_help.c:1593 sql_help.c:1709 sql_help.c:3039 +#: 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 msgid "new_owner" msgstr "новый_владелец" -#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:262 sql_help.c:332 -#: sql_help.c:461 sql_help.c:548 sql_help.c:686 sql_help.c:735 sql_help.c:765 -#: sql_help.c:820 sql_help.c:884 sql_help.c:1034 sql_help.c:1103 -#: sql_help.c:1137 sql_help.c:1335 sql_help.c:1512 sql_help.c:1533 -#: sql_help.c:1545 sql_help.c:1557 sql_help.c:1597 sql_help.c:1716 +#: 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 msgid "new_schema" msgstr "новая_схема" -#: sql_help.c:44 sql_help.c:1927 sql_help.c:3368 sql_help.c:4529 +#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 msgid "where aggregate_signature is:" msgstr "где сигнатура_агр_функции:" -#: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:350 sql_help.c:363 -#: sql_help.c:367 sql_help.c:383 sql_help.c:386 sql_help.c:389 sql_help.c:530 -#: sql_help.c:535 sql_help.c:540 sql_help.c:545 sql_help.c:550 sql_help.c:866 -#: sql_help.c:871 sql_help.c:876 sql_help.c:881 sql_help.c:886 sql_help.c:1016 -#: sql_help.c:1021 sql_help.c:1026 sql_help.c:1031 sql_help.c:1036 -#: sql_help.c:1881 sql_help.c:1898 sql_help.c:1904 sql_help.c:1928 -#: sql_help.c:1931 sql_help.c:1934 sql_help.c:2089 sql_help.c:2108 -#: sql_help.c:2111 sql_help.c:2415 sql_help.c:2624 sql_help.c:3369 -#: sql_help.c:3372 sql_help.c:3375 sql_help.c:3466 sql_help.c:3555 -#: sql_help.c:3583 sql_help.c:3936 sql_help.c:4399 sql_help.c:4506 -#: sql_help.c:4513 sql_help.c:4519 sql_help.c:4530 sql_help.c:4533 -#: sql_help.c:4536 +#: 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 msgid "argmode" msgstr "режим_аргумента" -#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:351 sql_help.c:364 -#: sql_help.c:368 sql_help.c:384 sql_help.c:387 sql_help.c:390 sql_help.c:531 -#: sql_help.c:536 sql_help.c:541 sql_help.c:546 sql_help.c:551 sql_help.c:867 -#: sql_help.c:872 sql_help.c:877 sql_help.c:882 sql_help.c:887 sql_help.c:1017 -#: sql_help.c:1022 sql_help.c:1027 sql_help.c:1032 sql_help.c:1037 -#: sql_help.c:1882 sql_help.c:1899 sql_help.c:1905 sql_help.c:1929 -#: sql_help.c:1932 sql_help.c:1935 sql_help.c:2090 sql_help.c:2109 -#: sql_help.c:2112 sql_help.c:2416 sql_help.c:2625 sql_help.c:3370 -#: sql_help.c:3373 sql_help.c:3376 sql_help.c:3467 sql_help.c:3556 -#: sql_help.c:3584 sql_help.c:4507 sql_help.c:4514 sql_help.c:4520 -#: sql_help.c:4531 sql_help.c:4534 sql_help.c:4537 +#: 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 msgid "argname" msgstr "имя_аргумента" -#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:352 sql_help.c:365 -#: sql_help.c:369 sql_help.c:385 sql_help.c:388 sql_help.c:391 sql_help.c:532 -#: sql_help.c:537 sql_help.c:542 sql_help.c:547 sql_help.c:552 sql_help.c:868 -#: sql_help.c:873 sql_help.c:878 sql_help.c:883 sql_help.c:888 sql_help.c:1018 -#: sql_help.c:1023 sql_help.c:1028 sql_help.c:1033 sql_help.c:1038 -#: sql_help.c:1883 sql_help.c:1900 sql_help.c:1906 sql_help.c:1930 -#: sql_help.c:1933 sql_help.c:1936 sql_help.c:2417 sql_help.c:2626 -#: sql_help.c:3371 sql_help.c:3374 sql_help.c:3377 sql_help.c:3468 -#: sql_help.c:3557 sql_help.c:3585 sql_help.c:4508 sql_help.c:4515 -#: sql_help.c:4521 sql_help.c:4532 sql_help.c:4535 sql_help.c:4538 +#: 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 msgid "argtype" msgstr "тип_аргумента" -#: sql_help.c:114 sql_help.c:407 sql_help.c:484 sql_help.c:496 sql_help.c:965 -#: sql_help.c:1116 sql_help.c:1526 sql_help.c:1655 sql_help.c:1687 -#: sql_help.c:1739 sql_help.c:1798 sql_help.c:1987 sql_help.c:1994 -#: sql_help.c:2306 sql_help.c:2356 sql_help.c:2363 sql_help.c:2372 -#: sql_help.c:2461 sql_help.c:2686 sql_help.c:2777 sql_help.c:3068 -#: sql_help.c:3253 sql_help.c:3275 sql_help.c:3415 sql_help.c:3772 -#: sql_help.c:3980 sql_help.c:4226 sql_help.c:4228 sql_help.c:5006 +#: 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 msgid "option" msgstr "параметр" -#: sql_help.c:115 sql_help.c:966 sql_help.c:1656 sql_help.c:2462 -#: sql_help.c:2687 sql_help.c:3254 sql_help.c:3416 +#: 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 msgid "where option can be:" msgstr "где допустимые параметры:" -#: sql_help.c:116 sql_help.c:2238 +#: sql_help.c:116 sql_help.c:2263 msgid "allowconn" msgstr "разр_подключения" -#: sql_help.c:117 sql_help.c:967 sql_help.c:1657 sql_help.c:2239 -#: sql_help.c:2463 sql_help.c:2688 sql_help.c:3255 +#: 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 msgid "connlimit" msgstr "предел_подключений" -#: sql_help.c:118 sql_help.c:2240 +#: sql_help.c:118 sql_help.c:2265 msgid "istemplate" msgstr "это_шаблон" -#: sql_help.c:124 sql_help.c:621 sql_help.c:689 sql_help.c:703 sql_help.c:1338 -#: sql_help.c:1392 sql_help.c:4232 +#: 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 msgid "new_tablespace" msgstr "новое_табл_пространство" -#: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:558 sql_help.c:560 -#: sql_help.c:561 sql_help.c:891 sql_help.c:893 sql_help.c:894 sql_help.c:974 -#: sql_help.c:978 sql_help.c:981 sql_help.c:1043 sql_help.c:1045 -#: sql_help.c:1046 sql_help.c:1196 sql_help.c:1198 sql_help.c:1664 -#: sql_help.c:1668 sql_help.c:1671 sql_help.c:2427 sql_help.c:2630 -#: sql_help.c:3948 sql_help.c:4250 sql_help.c:4411 sql_help.c:4721 +#: 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 msgid "configuration_parameter" msgstr "параметр_конфигурации" -#: sql_help.c:128 sql_help.c:408 sql_help.c:479 sql_help.c:485 sql_help.c:497 -#: sql_help.c:559 sql_help.c:613 sql_help.c:695 sql_help.c:705 sql_help.c:892 -#: sql_help.c:920 sql_help.c:975 sql_help.c:1044 sql_help.c:1117 -#: sql_help.c:1162 sql_help.c:1166 sql_help.c:1170 sql_help.c:1173 -#: sql_help.c:1178 sql_help.c:1181 sql_help.c:1197 sql_help.c:1371 -#: sql_help.c:1394 sql_help.c:1442 sql_help.c:1450 sql_help.c:1470 -#: sql_help.c:1527 sql_help.c:1611 sql_help.c:1665 sql_help.c:1688 -#: sql_help.c:2307 sql_help.c:2357 sql_help.c:2364 sql_help.c:2373 -#: sql_help.c:2428 sql_help.c:2429 sql_help.c:2493 sql_help.c:2496 -#: sql_help.c:2530 sql_help.c:2631 sql_help.c:2632 sql_help.c:2655 -#: sql_help.c:2778 sql_help.c:2817 sql_help.c:2927 sql_help.c:2940 -#: sql_help.c:2954 sql_help.c:2995 sql_help.c:3003 sql_help.c:3025 -#: sql_help.c:3042 sql_help.c:3069 sql_help.c:3276 sql_help.c:3981 -#: sql_help.c:4722 sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 +#: 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 msgid "value" msgstr "значение" -#: sql_help.c:202 +#: sql_help.c:214 msgid "target_role" msgstr "целевая_роль" -#: sql_help.c:203 sql_help.c:929 sql_help.c:2291 sql_help.c:2660 -#: sql_help.c:2733 sql_help.c:2738 sql_help.c:3911 sql_help.c:3920 -#: sql_help.c:3939 sql_help.c:3951 sql_help.c:4374 sql_help.c:4383 -#: sql_help.c:4402 sql_help.c:4414 +#: 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 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:584 sql_help.c:620 sql_help.c:688 sql_help.c:838 sql_help.c:985 -#: sql_help.c:1337 sql_help.c:1675 sql_help.c:2466 sql_help.c:2467 -#: sql_help.c:2468 sql_help.c:2469 sql_help.c:2470 sql_help.c:2604 -#: sql_help.c:2691 sql_help.c:2692 sql_help.c:2693 sql_help.c:3258 -#: sql_help.c:3259 sql_help.c:3260 sql_help.c:3261 sql_help.c:3262 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:4423 sql_help.c:4427 -#: sql_help.c:4743 +#: 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 msgid "role_name" msgstr "имя_роли" -#: sql_help.c:246 sql_help.c:265 sql_help.c:472 sql_help.c:928 sql_help.c:1353 -#: sql_help.c:1355 sql_help.c:1359 sql_help.c:1409 sql_help.c:1421 -#: sql_help.c:1446 sql_help.c:1705 sql_help.c:2260 sql_help.c:2264 -#: sql_help.c:2376 sql_help.c:2381 sql_help.c:2489 sql_help.c:2659 -#: sql_help.c:2794 sql_help.c:2799 sql_help.c:2801 sql_help.c:2922 -#: sql_help.c:2935 sql_help.c:2949 sql_help.c:2958 sql_help.c:2970 -#: sql_help.c:2999 sql_help.c:4012 sql_help.c:4027 sql_help.c:4029 -#: sql_help.c:4125 sql_help.c:4128 sql_help.c:4130 sql_help.c:4593 -#: sql_help.c:4594 sql_help.c:4603 sql_help.c:4650 sql_help.c:4651 -#: sql_help.c:4652 sql_help.c:4653 sql_help.c:4654 sql_help.c:4655 -#: sql_help.c:4696 sql_help.c:4697 sql_help.c:4702 sql_help.c:4707 -#: sql_help.c:4851 sql_help.c:4852 sql_help.c:4861 sql_help.c:4908 -#: sql_help.c:4909 sql_help.c:4910 sql_help.c:4911 sql_help.c:4912 -#: sql_help.c:4913 sql_help.c:4968 sql_help.c:4970 sql_help.c:5036 -#: sql_help.c:5096 sql_help.c:5097 sql_help.c:5106 sql_help.c:5153 -#: sql_help.c:5154 sql_help.c:5155 sql_help.c:5156 sql_help.c:5157 -#: sql_help.c:5158 +#: 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 msgid "expression" msgstr "выражение" -#: sql_help.c:249 sql_help.c:2261 +#: sql_help.c:263 sql_help.c:2286 msgid "domain_constraint" msgstr "ограничение_домена" -#: sql_help.c:251 sql_help.c:253 sql_help.c:256 sql_help.c:264 sql_help.c:487 -#: sql_help.c:488 sql_help.c:1330 sql_help.c:1379 sql_help.c:1380 -#: sql_help.c:1381 sql_help.c:1408 sql_help.c:1420 sql_help.c:1437 -#: sql_help.c:1869 sql_help.c:1871 sql_help.c:2263 sql_help.c:2375 -#: sql_help.c:2380 sql_help.c:2957 sql_help.c:2969 sql_help.c:4024 +#: 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 msgid "constraint_name" msgstr "имя_ограничения" -#: sql_help.c:254 sql_help.c:1331 +#: sql_help.c:268 sql_help.c:1348 msgid "new_constraint_name" msgstr "имя_нового_ограничения" -#: sql_help.c:263 sql_help.c:2262 +#: sql_help.c:277 sql_help.c:2287 msgid "where domain_constraint is:" msgstr "где ограничение_домена может быть следующим:" -#: sql_help.c:330 sql_help.c:1115 +#: sql_help.c:344 sql_help.c:1130 msgid "new_version" msgstr "новая_версия" -#: sql_help.c:334 sql_help.c:336 +#: sql_help.c:348 sql_help.c:350 msgid "member_object" msgstr "элемент_объект" -#: sql_help.c:337 +#: sql_help.c:351 msgid "where member_object is:" msgstr "где элемент_объект:" -#: sql_help.c:338 sql_help.c:343 sql_help.c:344 sql_help.c:345 sql_help.c:346 -#: sql_help.c:347 sql_help.c:348 sql_help.c:353 sql_help.c:357 sql_help.c:359 -#: sql_help.c:361 sql_help.c:370 sql_help.c:371 sql_help.c:372 sql_help.c:373 -#: sql_help.c:374 sql_help.c:375 sql_help.c:376 sql_help.c:377 sql_help.c:380 -#: sql_help.c:381 sql_help.c:1861 sql_help.c:1866 sql_help.c:1873 -#: sql_help.c:1874 sql_help.c:1875 sql_help.c:1876 sql_help.c:1877 -#: sql_help.c:1878 sql_help.c:1879 sql_help.c:1884 sql_help.c:1886 -#: sql_help.c:1890 sql_help.c:1892 sql_help.c:1896 sql_help.c:1901 -#: sql_help.c:1902 sql_help.c:1909 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:1917 sql_help.c:1918 sql_help.c:1919 -#: sql_help.c:1924 sql_help.c:1925 sql_help.c:4496 sql_help.c:4501 -#: sql_help.c:4502 sql_help.c:4503 sql_help.c:4504 sql_help.c:4510 -#: sql_help.c:4511 sql_help.c:4516 sql_help.c:4517 sql_help.c:4522 -#: sql_help.c:4523 sql_help.c:4524 sql_help.c:4525 sql_help.c:4526 -#: sql_help.c:4527 +#: 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: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 msgid "object_name" msgstr "имя_объекта" # well-spelled: агр -#: sql_help.c:339 sql_help.c:1862 sql_help.c:4499 +#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 msgid "aggregate_name" msgstr "имя_агр_функции" -#: sql_help.c:341 sql_help.c:1864 sql_help.c:2154 sql_help.c:2158 -#: sql_help.c:2160 sql_help.c:3385 +#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 +#: sql_help.c:2185 sql_help.c:3432 msgid "source_type" msgstr "исходный_тип" -#: sql_help.c:342 sql_help.c:1865 sql_help.c:2155 sql_help.c:2159 -#: sql_help.c:2161 sql_help.c:3386 +#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 +#: sql_help.c:2186 sql_help.c:3433 msgid "target_type" msgstr "целевой_тип" -#: sql_help.c:349 sql_help.c:802 sql_help.c:1880 sql_help.c:2156 -#: sql_help.c:2199 sql_help.c:2279 sql_help.c:2547 sql_help.c:2578 -#: sql_help.c:3145 sql_help.c:4398 sql_help.c:4505 sql_help.c:4622 -#: sql_help.c:4626 sql_help.c:4630 sql_help.c:4633 sql_help.c:4880 -#: sql_help.c:4884 sql_help.c:4888 sql_help.c:4891 sql_help.c:5125 -#: sql_help.c:5129 sql_help.c:5133 sql_help.c:5136 +#: 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 msgid "function_name" msgstr "имя_функции" -#: sql_help.c:354 sql_help.c:795 sql_help.c:1887 sql_help.c:2571 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 msgid "operator_name" msgstr "имя_оператора" -#: sql_help.c:355 sql_help.c:729 sql_help.c:733 sql_help.c:737 sql_help.c:1888 -#: sql_help.c:2548 sql_help.c:3509 +#: 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 msgid "left_type" msgstr "тип_слева" -#: sql_help.c:356 sql_help.c:730 sql_help.c:734 sql_help.c:738 sql_help.c:1889 -#: sql_help.c:2549 sql_help.c:3510 +#: 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 msgid "right_type" msgstr "тип_справа" -#: sql_help.c:358 sql_help.c:360 sql_help.c:758 sql_help.c:761 sql_help.c:764 -#: sql_help.c:793 sql_help.c:805 sql_help.c:813 sql_help.c:816 sql_help.c:819 -#: sql_help.c:1426 sql_help.c:1891 sql_help.c:1893 sql_help.c:2568 -#: sql_help.c:2589 sql_help.c:2975 sql_help.c:3519 sql_help.c:3528 +#: 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 msgid "index_method" msgstr "метод_индекса" -#: sql_help.c:362 sql_help.c:1897 sql_help.c:4512 +#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 msgid "procedure_name" msgstr "имя_процедуры" -#: sql_help.c:366 sql_help.c:1903 sql_help.c:3935 sql_help.c:4518 +#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 msgid "routine_name" msgstr "имя_подпрограммы" -#: sql_help.c:378 sql_help.c:1398 sql_help.c:1920 sql_help.c:2423 -#: sql_help.c:2629 sql_help.c:2930 sql_help.c:3112 sql_help.c:3690 -#: sql_help.c:3957 sql_help.c:4420 +#: 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 msgid "type_name" msgstr "имя_типа" -#: sql_help.c:379 sql_help.c:1921 sql_help.c:2422 sql_help.c:2628 -#: sql_help.c:3113 sql_help.c:3343 sql_help.c:3691 sql_help.c:3942 -#: sql_help.c:4405 +#: 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 msgid "lang_name" msgstr "имя_языка" -#: sql_help.c:382 +#: sql_help.c:396 msgid "and aggregate_signature is:" msgstr "и сигнатура_агр_функции:" -#: sql_help.c:405 sql_help.c:2021 sql_help.c:2304 +#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 msgid "handler_function" msgstr "функция_обработчик" -#: sql_help.c:406 sql_help.c:2305 +#: sql_help.c:420 sql_help.c:2330 msgid "validator_function" msgstr "функция_проверки" -#: sql_help.c:454 sql_help.c:533 sql_help.c:677 sql_help.c:869 sql_help.c:1019 -#: sql_help.c:1325 sql_help.c:1602 +#: 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 msgid "action" msgstr "действие" -#: sql_help.c:456 sql_help.c:463 sql_help.c:467 sql_help.c:468 sql_help.c:471 -#: sql_help.c:473 sql_help.c:474 sql_help.c:475 sql_help.c:477 sql_help.c:480 -#: sql_help.c:482 sql_help.c:483 sql_help.c:681 sql_help.c:691 sql_help.c:693 -#: sql_help.c:696 sql_help.c:698 sql_help.c:699 sql_help.c:927 sql_help.c:1096 -#: sql_help.c:1327 sql_help.c:1345 sql_help.c:1349 sql_help.c:1350 -#: sql_help.c:1354 sql_help.c:1356 sql_help.c:1357 sql_help.c:1358 -#: sql_help.c:1360 sql_help.c:1361 sql_help.c:1363 sql_help.c:1366 -#: sql_help.c:1367 sql_help.c:1369 sql_help.c:1372 sql_help.c:1374 -#: sql_help.c:1375 sql_help.c:1422 sql_help.c:1424 sql_help.c:1431 -#: sql_help.c:1440 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1704 sql_help.c:1707 sql_help.c:1711 sql_help.c:1747 -#: sql_help.c:1868 sql_help.c:1984 sql_help.c:1990 sql_help.c:2004 -#: sql_help.c:2005 sql_help.c:2006 sql_help.c:2354 sql_help.c:2367 -#: sql_help.c:2420 sql_help.c:2488 sql_help.c:2494 sql_help.c:2527 -#: sql_help.c:2658 sql_help.c:2763 sql_help.c:2798 sql_help.c:2800 -#: sql_help.c:2912 sql_help.c:2921 sql_help.c:2931 sql_help.c:2934 -#: sql_help.c:2944 sql_help.c:2948 sql_help.c:2971 sql_help.c:2973 -#: sql_help.c:2980 sql_help.c:2993 sql_help.c:2998 sql_help.c:3005 -#: sql_help.c:3006 sql_help.c:3022 sql_help.c:3148 sql_help.c:3288 -#: sql_help.c:3914 sql_help.c:3915 sql_help.c:4011 sql_help.c:4026 -#: sql_help.c:4028 sql_help.c:4030 sql_help.c:4124 sql_help.c:4127 -#: sql_help.c:4129 sql_help.c:4131 sql_help.c:4377 sql_help.c:4378 -#: sql_help.c:4498 sql_help.c:4659 sql_help.c:4666 sql_help.c:4668 -#: sql_help.c:4917 sql_help.c:4924 sql_help.c:4926 sql_help.c:4967 -#: sql_help.c:4969 sql_help.c:4971 sql_help.c:5024 sql_help.c:5162 -#: sql_help.c:5169 sql_help.c:5171 +#: 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 msgid "column_name" msgstr "имя_столбца" -#: sql_help.c:457 sql_help.c:682 sql_help.c:1328 sql_help.c:1712 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 msgid "new_column_name" msgstr "новое_имя_столбца" -#: sql_help.c:462 sql_help.c:554 sql_help.c:690 sql_help.c:890 sql_help.c:1040 -#: sql_help.c:1344 sql_help.c:1612 +#: 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 msgid "where action is one of:" msgstr "где допустимое действие:" -#: sql_help.c:464 sql_help.c:469 sql_help.c:1088 sql_help.c:1346 -#: sql_help.c:1351 sql_help.c:1614 sql_help.c:1618 sql_help.c:2258 -#: sql_help.c:2355 sql_help.c:2567 sql_help.c:2756 sql_help.c:2913 -#: sql_help.c:3195 sql_help.c:4183 +#: 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 msgid "data_type" msgstr "тип_данных" -#: sql_help.c:465 sql_help.c:470 sql_help.c:1347 sql_help.c:1352 -#: sql_help.c:1447 sql_help.c:1615 sql_help.c:1619 sql_help.c:2259 -#: sql_help.c:2358 sql_help.c:2490 sql_help.c:2915 sql_help.c:2923 -#: sql_help.c:2936 sql_help.c:2950 sql_help.c:3000 sql_help.c:3196 -#: sql_help.c:3202 sql_help.c:4021 +#: 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 msgid "collation" msgstr "правило_сортировки" -#: sql_help.c:466 sql_help.c:1348 sql_help.c:2359 sql_help.c:2368 -#: sql_help.c:2916 sql_help.c:2932 sql_help.c:2945 +#: 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 msgid "column_constraint" msgstr "ограничение_столбца" -#: sql_help.c:476 sql_help.c:618 sql_help.c:692 sql_help.c:1368 sql_help.c:5018 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 msgid "integer" msgstr "целое" -#: sql_help.c:478 sql_help.c:481 sql_help.c:694 sql_help.c:697 sql_help.c:1370 -#: sql_help.c:1373 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 +#: sql_help.c:1390 msgid "attribute_option" msgstr "атрибут" -#: sql_help.c:486 sql_help.c:1377 sql_help.c:2360 sql_help.c:2369 -#: sql_help.c:2917 sql_help.c:2933 sql_help.c:2946 +#: 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 msgid "table_constraint" msgstr "ограничение_таблицы" -#: sql_help.c:489 sql_help.c:490 sql_help.c:491 sql_help.c:492 sql_help.c:1382 -#: sql_help.c:1383 sql_help.c:1384 sql_help.c:1385 sql_help.c:1922 +#: 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 msgid "trigger_name" msgstr "имя_триггера" -#: sql_help.c:493 sql_help.c:494 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:2361 sql_help.c:2366 sql_help.c:2920 sql_help.c:2943 +#: 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 msgid "parent_table" msgstr "таблица_родитель" -#: sql_help.c:553 sql_help.c:610 sql_help.c:679 sql_help.c:889 sql_help.c:1039 -#: sql_help.c:1571 sql_help.c:2290 +#: 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 msgid "extension_name" msgstr "имя_расширения" -#: sql_help.c:555 sql_help.c:1041 sql_help.c:2424 +#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 msgid "execution_cost" msgstr "стоимость_выполнения" -#: sql_help.c:556 sql_help.c:1042 sql_help.c:2425 +#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 msgid "result_rows" msgstr "строк_в_результате" -#: sql_help.c:557 sql_help.c:2426 +#: sql_help.c:571 sql_help.c:2463 msgid "support_function" msgstr "вспомогательная_функция" -#: sql_help.c:579 sql_help.c:581 sql_help.c:964 sql_help.c:972 sql_help.c:976 -#: sql_help.c:979 sql_help.c:982 sql_help.c:1654 sql_help.c:1662 -#: sql_help.c:1666 sql_help.c:1669 sql_help.c:1672 sql_help.c:2734 -#: sql_help.c:2736 sql_help.c:2739 sql_help.c:2740 sql_help.c:3912 -#: sql_help.c:3913 sql_help.c:3917 sql_help.c:3918 sql_help.c:3921 -#: sql_help.c:3922 sql_help.c:3924 sql_help.c:3925 sql_help.c:3927 -#: sql_help.c:3928 sql_help.c:3930 sql_help.c:3931 sql_help.c:3933 -#: sql_help.c:3934 sql_help.c:3940 sql_help.c:3941 sql_help.c:3943 -#: sql_help.c:3944 sql_help.c:3946 sql_help.c:3947 sql_help.c:3949 -#: sql_help.c:3950 sql_help.c:3952 sql_help.c:3953 sql_help.c:3955 -#: sql_help.c:3956 sql_help.c:3958 sql_help.c:3959 sql_help.c:3961 -#: sql_help.c:3962 sql_help.c:4375 sql_help.c:4376 sql_help.c:4380 -#: sql_help.c:4381 sql_help.c:4384 sql_help.c:4385 sql_help.c:4387 -#: sql_help.c:4388 sql_help.c:4390 sql_help.c:4391 sql_help.c:4393 -#: sql_help.c:4394 sql_help.c:4396 sql_help.c:4397 sql_help.c:4403 -#: sql_help.c:4404 sql_help.c:4406 sql_help.c:4407 sql_help.c:4409 -#: sql_help.c:4410 sql_help.c:4412 sql_help.c:4413 sql_help.c:4415 -#: sql_help.c:4416 sql_help.c:4418 sql_help.c:4419 sql_help.c:4421 -#: sql_help.c:4422 sql_help.c:4424 sql_help.c:4425 +#: 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 msgid "role_specification" msgstr "указание_роли" -#: sql_help.c:580 sql_help.c:582 sql_help.c:1685 sql_help.c:2225 -#: sql_help.c:2742 sql_help.c:3273 sql_help.c:3724 sql_help.c:4753 +#: 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 msgid "user_name" msgstr "имя_пользователя" -#: sql_help.c:583 sql_help.c:984 sql_help.c:1674 sql_help.c:2741 -#: sql_help.c:3963 sql_help.c:4426 +#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 +#: sql_help.c:4010 sql_help.c:4477 msgid "where role_specification can be:" msgstr "где допустимое указание_роли:" -#: sql_help.c:585 +#: sql_help.c:599 msgid "group_name" msgstr "имя_группы" -#: sql_help.c:606 sql_help.c:1443 sql_help.c:2237 sql_help.c:2497 -#: sql_help.c:2531 sql_help.c:2928 sql_help.c:2941 sql_help.c:2955 -#: sql_help.c:2996 sql_help.c:3026 sql_help.c:3038 sql_help.c:3954 -#: sql_help.c:4417 +#: 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 msgid "tablespace_name" msgstr "табл_пространство" -#: sql_help.c:608 sql_help.c:701 sql_help.c:1390 sql_help.c:1400 -#: sql_help.c:1438 sql_help.c:1800 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 +#: sql_help.c:1461 sql_help.c:1823 msgid "index_name" msgstr "имя_индекса" -#: sql_help.c:612 sql_help.c:615 sql_help.c:704 sql_help.c:706 sql_help.c:1393 -#: sql_help.c:1395 sql_help.c:1441 sql_help.c:2495 sql_help.c:2529 -#: sql_help.c:2926 sql_help.c:2939 sql_help.c:2953 sql_help.c:2994 -#: sql_help.c:3024 +#: 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 msgid "storage_parameter" msgstr "параметр_хранения" -#: sql_help.c:617 +#: sql_help.c:631 msgid "column_number" msgstr "номер_столбца" -#: sql_help.c:641 sql_help.c:1885 sql_help.c:4509 +#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 msgid "large_object_oid" msgstr "oid_большого_объекта" -#: sql_help.c:700 sql_help.c:1376 sql_help.c:2914 +#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 msgid "compression_method" msgstr "метод_сжатия" -#: sql_help.c:702 sql_help.c:1391 +#: sql_help.c:716 sql_help.c:1409 msgid "new_access_method" msgstr "новый_метод_доступа" -#: sql_help.c:739 sql_help.c:2552 +#: sql_help.c:753 sql_help.c:2589 msgid "res_proc" msgstr "процедура_ограничения" -#: sql_help.c:740 sql_help.c:2553 +#: sql_help.c:754 sql_help.c:2590 msgid "join_proc" msgstr "процедура_соединения" -#: sql_help.c:741 sql_help.c:2550 +#: sql_help.c:755 sql_help.c:2587 msgid "com_op" msgstr "коммут_оператор" -#: sql_help.c:742 sql_help.c:2551 +#: sql_help.c:756 sql_help.c:2588 msgid "neg_op" msgstr "обратный_оператор" -#: sql_help.c:794 sql_help.c:806 sql_help.c:2570 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 msgid "strategy_number" msgstr "номер_стратегии" -#: sql_help.c:796 sql_help.c:797 sql_help.c:800 sql_help.c:801 sql_help.c:807 -#: sql_help.c:808 sql_help.c:810 sql_help.c:811 sql_help.c:2572 sql_help.c:2573 -#: sql_help.c:2576 sql_help.c:2577 +#: 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 msgid "op_type" msgstr "тип_операции" -#: sql_help.c:798 sql_help.c:2574 +#: sql_help.c:812 sql_help.c:2611 msgid "sort_family_name" msgstr "семейство_сортировки" -#: sql_help.c:799 sql_help.c:809 sql_help.c:2575 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 msgid "support_number" msgstr "номер_опорной_процедуры" -#: sql_help.c:803 sql_help.c:2157 sql_help.c:2579 sql_help.c:3115 -#: sql_help.c:3117 +#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 +#: sql_help.c:3162 msgid "argument_type" msgstr "тип_аргумента" -#: sql_help.c:834 sql_help.c:837 sql_help.c:926 sql_help.c:1055 sql_help.c:1095 -#: sql_help.c:1567 sql_help.c:1570 sql_help.c:1746 sql_help.c:1799 -#: sql_help.c:1870 sql_help.c:1895 sql_help.c:1908 sql_help.c:1923 -#: sql_help.c:1983 sql_help.c:1989 sql_help.c:2353 sql_help.c:2365 -#: sql_help.c:2486 sql_help.c:2526 sql_help.c:2603 sql_help.c:2657 -#: sql_help.c:2710 sql_help.c:2762 sql_help.c:2795 sql_help.c:2802 -#: sql_help.c:2911 sql_help.c:2929 sql_help.c:2942 sql_help.c:3021 -#: sql_help.c:3141 sql_help.c:3322 sql_help.c:3545 sql_help.c:3594 -#: sql_help.c:3700 sql_help.c:3910 sql_help.c:3916 sql_help.c:3977 -#: sql_help.c:4009 sql_help.c:4373 sql_help.c:4379 sql_help.c:4497 -#: sql_help.c:4610 sql_help.c:4673 sql_help.c:4712 sql_help.c:4868 -#: sql_help.c:4931 sql_help.c:4965 sql_help.c:5023 sql_help.c:5113 -#: sql_help.c:5176 +#: 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 msgid "table_name" msgstr "имя_таблицы" -#: sql_help.c:839 sql_help.c:2605 +#: sql_help.c:853 sql_help.c:2642 msgid "using_expression" msgstr "выражение_использования" -#: sql_help.c:840 sql_help.c:2606 +#: sql_help.c:854 sql_help.c:2643 msgid "check_expression" msgstr "выражение_проверки" -#: sql_help.c:913 sql_help.c:915 sql_help.c:917 sql_help.c:2653 +#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 msgid "publication_object" msgstr "объект_публикации" -#: sql_help.c:919 sql_help.c:2654 +#: sql_help.c:933 sql_help.c:2691 msgid "publication_parameter" msgstr "параметр_публикации" -#: sql_help.c:925 sql_help.c:2656 +#: sql_help.c:939 sql_help.c:2693 msgid "where publication_object is one of:" msgstr "где объект_публикации:" -#: sql_help.c:968 sql_help.c:1658 sql_help.c:2464 sql_help.c:2689 -#: sql_help.c:3256 +#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 +#: sql_help.c:3301 msgid "password" msgstr "пароль" -#: sql_help.c:969 sql_help.c:1659 sql_help.c:2465 sql_help.c:2690 -#: sql_help.c:3257 +#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 +#: sql_help.c:3302 msgid "timestamp" msgstr "timestamp" -#: sql_help.c:973 sql_help.c:977 sql_help.c:980 sql_help.c:983 sql_help.c:1663 -#: sql_help.c:1667 sql_help.c:1670 sql_help.c:1673 sql_help.c:3923 -#: sql_help.c:4386 +#: 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 msgid "database_name" msgstr "имя_БД" -#: sql_help.c:1089 sql_help.c:2757 +#: sql_help.c:1104 sql_help.c:2796 msgid "increment" msgstr "шаг" -#: sql_help.c:1090 sql_help.c:2758 +#: sql_help.c:1105 sql_help.c:2797 msgid "minvalue" msgstr "мин_значение" -#: sql_help.c:1091 sql_help.c:2759 +#: sql_help.c:1106 sql_help.c:2798 msgid "maxvalue" msgstr "макс_значение" -#: sql_help.c:1092 sql_help.c:2760 sql_help.c:4606 sql_help.c:4710 -#: sql_help.c:4864 sql_help.c:5040 sql_help.c:5109 +#: 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 msgid "start" msgstr "начальное_значение" -#: sql_help.c:1093 sql_help.c:1365 +#: sql_help.c:1108 sql_help.c:1382 msgid "restart" msgstr "значение_перезапуска" -#: sql_help.c:1094 sql_help.c:2761 +#: sql_help.c:1109 sql_help.c:2800 msgid "cache" msgstr "кеш" -#: sql_help.c:1139 +#: sql_help.c:1154 msgid "new_target" msgstr "новое_имя" -#: sql_help.c:1158 sql_help.c:2814 +#: sql_help.c:1173 sql_help.c:2853 msgid "conninfo" msgstr "строка_подключения" -#: sql_help.c:1160 sql_help.c:1164 sql_help.c:1168 sql_help.c:2815 +#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 msgid "publication_name" msgstr "имя_публикации" -#: sql_help.c:1161 sql_help.c:1165 sql_help.c:1169 +#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 msgid "publication_option" msgstr "параметр_публикации" -#: sql_help.c:1172 +#: sql_help.c:1187 msgid "refresh_option" msgstr "параметр_обновления" -#: sql_help.c:1177 sql_help.c:2816 +#: sql_help.c:1192 sql_help.c:2855 msgid "subscription_parameter" msgstr "параметр_подписки" -#: sql_help.c:1180 +#: sql_help.c:1195 msgid "skip_option" msgstr "параметр_пропуска" -#: sql_help.c:1340 sql_help.c:1343 +#: sql_help.c:1357 sql_help.c:1360 msgid "partition_name" msgstr "имя_секции" -#: sql_help.c:1341 sql_help.c:2370 sql_help.c:2947 +#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 msgid "partition_bound_spec" msgstr "указание_границ_секции" -#: sql_help.c:1362 sql_help.c:1412 sql_help.c:2961 +#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 msgid "sequence_options" msgstr "параметры_последовательности" -#: sql_help.c:1364 +#: sql_help.c:1381 msgid "sequence_option" msgstr "параметр_последовательности" -#: sql_help.c:1378 +#: sql_help.c:1395 msgid "table_constraint_using_index" msgstr "ограничение_таблицы_с_индексом" -#: sql_help.c:1386 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 msgid "rewrite_rule_name" msgstr "имя_правила_перезаписи" -#: sql_help.c:1401 sql_help.c:2382 sql_help.c:2986 +#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 msgid "and partition_bound_spec is:" msgstr "и указание_границ_секции:" -#: sql_help.c:1402 sql_help.c:1403 sql_help.c:1404 sql_help.c:2383 -#: sql_help.c:2384 sql_help.c:2385 sql_help.c:2987 sql_help.c:2988 -#: sql_help.c:2989 +#: 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 msgid "partition_bound_expr" msgstr "выражение_границ_секции" -#: sql_help.c:1405 sql_help.c:1406 sql_help.c:2386 sql_help.c:2387 -#: sql_help.c:2990 sql_help.c:2991 +#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 +#: sql_help.c:3035 sql_help.c:3036 msgid "numeric_literal" msgstr "числовая_константа" -#: sql_help.c:1407 +#: sql_help.c:1425 msgid "and column_constraint is:" msgstr "и ограничение_столбца:" -#: sql_help.c:1410 sql_help.c:2377 sql_help.c:2418 sql_help.c:2627 -#: sql_help.c:2959 +#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 +#: sql_help.c:2999 msgid "default_expr" msgstr "выражение_по_умолчанию" -#: sql_help.c:1411 sql_help.c:2378 sql_help.c:2960 +#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 msgid "generation_expr" msgstr "генерирующее_выражение" -#: sql_help.c:1413 sql_help.c:1414 sql_help.c:1423 sql_help.c:1425 -#: sql_help.c:1429 sql_help.c:2962 sql_help.c:2963 sql_help.c:2972 -#: sql_help.c:2974 sql_help.c:2978 +#: 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 msgid "index_parameters" msgstr "параметры_индекса" -#: sql_help.c:1415 sql_help.c:1432 sql_help.c:2964 sql_help.c:2981 +#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 msgid "reftable" msgstr "целевая_таблица" -#: sql_help.c:1416 sql_help.c:1433 sql_help.c:2965 sql_help.c:2982 +#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 +#: sql_help.c:3026 sql_help.c:3027 msgid "refcolumn" msgstr "целевой_столбец" -#: sql_help.c:1417 sql_help.c:1418 sql_help.c:1434 sql_help.c:1435 -#: sql_help.c:2966 sql_help.c:2967 sql_help.c:2983 sql_help.c:2984 +#: 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 msgid "referential_action" msgstr "ссылочное_действие" -#: sql_help.c:1419 sql_help.c:2379 sql_help.c:2968 +#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 msgid "and table_constraint is:" msgstr "и ограничение_таблицы:" -#: sql_help.c:1427 sql_help.c:2976 +#: sql_help.c:1448 sql_help.c:3019 msgid "exclude_element" msgstr "объект_исключения" -#: sql_help.c:1428 sql_help.c:2977 sql_help.c:4604 sql_help.c:4708 -#: sql_help.c:4862 sql_help.c:5038 sql_help.c:5107 +#: 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 msgid "operator" msgstr "оператор" -#: sql_help.c:1430 sql_help.c:2498 sql_help.c:2979 +#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 msgid "predicate" msgstr "предикат" -#: sql_help.c:1436 +#: sql_help.c:1459 msgid "and table_constraint_using_index is:" msgstr "и ограничение_таблицы_с_индексом:" -#: sql_help.c:1439 sql_help.c:2992 +#: sql_help.c:1462 sql_help.c:3037 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "параметры_индекса в ограничениях UNIQUE, PRIMARY KEY и EXCLUDE:" -#: sql_help.c:1444 sql_help.c:2997 +#: sql_help.c:1467 sql_help.c:3042 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "объект_исключения в ограничении EXCLUDE:" -#: sql_help.c:1448 sql_help.c:2491 sql_help.c:2924 sql_help.c:2937 -#: sql_help.c:2951 sql_help.c:3001 sql_help.c:4022 +#: 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 msgid "opclass" msgstr "класс_оператора" -#: sql_help.c:1449 sql_help.c:2492 sql_help.c:3002 +#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 msgid "opclass_parameter" msgstr "параметр_класса_оп" -#: sql_help.c:1451 sql_help.c:3004 +#: sql_help.c:1474 sql_help.c:3049 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "ссылочное действие в ограничении FOREIGN KEY/REFERENCES:" -#: sql_help.c:1469 sql_help.c:1472 sql_help.c:3041 +#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 msgid "tablespace_option" msgstr "параметр_табл_пространства" -#: sql_help.c:1493 sql_help.c:1496 sql_help.c:1502 sql_help.c:1506 +#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 msgid "token_type" msgstr "тип_фрагмента" -#: sql_help.c:1494 sql_help.c:1497 +#: sql_help.c:1517 sql_help.c:1520 msgid "dictionary_name" msgstr "имя_словаря" -#: sql_help.c:1499 sql_help.c:1503 +#: sql_help.c:1522 sql_help.c:1526 msgid "old_dictionary" msgstr "старый_словарь" -#: sql_help.c:1500 sql_help.c:1504 +#: sql_help.c:1523 sql_help.c:1527 msgid "new_dictionary" msgstr "новый_словарь" -#: sql_help.c:1599 sql_help.c:1613 sql_help.c:1616 sql_help.c:1617 -#: sql_help.c:3194 +#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 +#: sql_help.c:3239 msgid "attribute_name" msgstr "имя_атрибута" -#: sql_help.c:1600 +#: sql_help.c:1623 msgid "new_attribute_name" msgstr "новое_имя_атрибута" -#: sql_help.c:1604 sql_help.c:1608 +#: sql_help.c:1627 sql_help.c:1631 msgid "new_enum_value" msgstr "новое_значение_перечисления" -#: sql_help.c:1605 +#: sql_help.c:1628 msgid "neighbor_enum_value" msgstr "соседнее_значение_перечисления" -#: sql_help.c:1607 +#: sql_help.c:1630 msgid "existing_enum_value" msgstr "существующее_значение_перечисления" -#: sql_help.c:1610 +#: sql_help.c:1633 msgid "property" msgstr "свойство" -#: sql_help.c:1686 sql_help.c:2362 sql_help.c:2371 sql_help.c:2773 -#: sql_help.c:3274 sql_help.c:3725 sql_help.c:3932 sql_help.c:3978 -#: sql_help.c:4395 +#: 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 msgid "server_name" msgstr "имя_сервера" -#: sql_help.c:1718 sql_help.c:1721 sql_help.c:3289 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 msgid "view_option_name" msgstr "имя_параметра_представления" -#: sql_help.c:1719 sql_help.c:3290 +#: sql_help.c:1742 sql_help.c:3335 msgid "view_option_value" msgstr "значение_параметра_представления" -#: sql_help.c:1740 sql_help.c:5007 +#: sql_help.c:1763 sql_help.c:5060 msgid "table_and_columns" msgstr "таблица_и_столбцы" -#: sql_help.c:1741 sql_help.c:1801 sql_help.c:1995 sql_help.c:3774 -#: sql_help.c:4230 sql_help.c:5008 +#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 +#: sql_help.c:4281 sql_help.c:5061 msgid "where option can be one of:" msgstr "где допустимый параметр:" -#: sql_help.c:1742 sql_help.c:1743 sql_help.c:1802 sql_help.c:1997 -#: sql_help.c:2001 sql_help.c:2183 sql_help.c:3775 sql_help.c:3776 -#: sql_help.c:3777 sql_help.c:3778 sql_help.c:3779 sql_help.c:3780 -#: sql_help.c:3781 sql_help.c:3782 sql_help.c:3783 sql_help.c:3784 -#: sql_help.c:4231 sql_help.c:4233 sql_help.c:5009 sql_help.c:5010 -#: sql_help.c:5011 sql_help.c:5012 sql_help.c:5013 sql_help.c:5014 -#: sql_help.c:5015 sql_help.c:5016 sql_help.c:5017 sql_help.c:5019 -#: sql_help.c:5020 +#: 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 msgid "boolean" msgstr "логическое_значение" -#: sql_help.c:1744 sql_help.c:5021 +#: sql_help.c:1767 sql_help.c:5074 msgid "size" msgstr "размер" -#: sql_help.c:1745 sql_help.c:5022 +#: sql_help.c:1768 sql_help.c:5075 msgid "and table_and_columns is:" msgstr "и таблица_и_столбцы:" -#: sql_help.c:1761 sql_help.c:4769 sql_help.c:4771 sql_help.c:4795 +#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 msgid "transaction_mode" msgstr "режим_транзакции" -#: sql_help.c:1762 sql_help.c:4772 sql_help.c:4796 +#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 msgid "where transaction_mode is one of:" msgstr "где допустимый режим_транзакции:" -#: sql_help.c:1771 sql_help.c:4614 sql_help.c:4623 sql_help.c:4627 -#: sql_help.c:4631 sql_help.c:4634 sql_help.c:4872 sql_help.c:4881 -#: sql_help.c:4885 sql_help.c:4889 sql_help.c:4892 sql_help.c:5117 -#: sql_help.c:5126 sql_help.c:5130 sql_help.c:5134 sql_help.c:5137 +#: 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 msgid "argument" msgstr "аргумент" -#: sql_help.c:1867 +#: sql_help.c:1890 msgid "relation_name" msgstr "имя_отношения" -#: sql_help.c:1872 sql_help.c:3926 sql_help.c:4389 +#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 msgid "domain_name" msgstr "имя_домена" -#: sql_help.c:1894 +#: sql_help.c:1917 msgid "policy_name" msgstr "имя_политики" -#: sql_help.c:1907 +#: sql_help.c:1930 msgid "rule_name" msgstr "имя_правила" -#: sql_help.c:1926 sql_help.c:4528 +#: sql_help.c:1949 sql_help.c:4579 msgid "string_literal" msgstr "строковая_константа" -#: sql_help.c:1951 sql_help.c:4192 sql_help.c:4442 +#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 msgid "transaction_id" msgstr "код_транзакции" -#: sql_help.c:1985 sql_help.c:1992 sql_help.c:4048 +#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 msgid "filename" msgstr "имя_файла" -#: sql_help.c:1986 sql_help.c:1993 sql_help.c:2712 sql_help.c:2713 -#: sql_help.c:2714 +#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 +#: sql_help.c:2751 msgid "command" msgstr "команда" -#: sql_help.c:1988 sql_help.c:2711 sql_help.c:3144 sql_help.c:3325 -#: sql_help.c:4032 sql_help.c:4115 sql_help.c:4118 sql_help.c:4121 -#: 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:4974 sql_help.c:5100 -#: sql_help.c:5102 +#: 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 msgid "condition" msgstr "условие" -#: sql_help.c:1991 sql_help.c:2532 sql_help.c:3027 sql_help.c:3291 -#: sql_help.c:3309 sql_help.c:4013 +#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 +#: sql_help.c:3354 sql_help.c:4061 msgid "query" msgstr "запрос" -#: sql_help.c:1996 +#: sql_help.c:2020 msgid "format_name" msgstr "имя_формата" -#: sql_help.c:1998 +#: sql_help.c:2022 msgid "delimiter_character" msgstr "символ_разделитель" -#: sql_help.c:1999 +#: sql_help.c:2023 msgid "null_string" msgstr "представление_NULL" -#: sql_help.c:2000 +#: sql_help.c:2024 msgid "default_string" msgstr "представление_DEFAULT" -#: sql_help.c:2002 +#: sql_help.c:2026 msgid "quote_character" msgstr "символ_кавычек" -#: sql_help.c:2003 +#: sql_help.c:2027 msgid "escape_character" msgstr "спецсимвол" -#: sql_help.c:2007 +#: sql_help.c:2031 msgid "error_action" msgstr "действие_при_ошибке" -#: sql_help.c:2008 +#: sql_help.c:2032 +#, fuzzy +msgid "maxerror" +msgstr "ошибка: " + +#: sql_help.c:2033 msgid "encoding_name" msgstr "имя_кодировки" -#: sql_help.c:2009 +#: sql_help.c:2034 msgid "verbosity" msgstr "детализация" -#: sql_help.c:2020 +#: sql_help.c:2045 msgid "access_method_type" msgstr "тип_метода_доступа" -#: sql_help.c:2091 sql_help.c:2110 sql_help.c:2113 +#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 msgid "arg_data_type" msgstr "тип_данных_аргумента" -#: sql_help.c:2092 sql_help.c:2114 sql_help.c:2122 +#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 msgid "sfunc" msgstr "функция_состояния" -#: sql_help.c:2093 sql_help.c:2115 sql_help.c:2123 +#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 msgid "state_data_type" msgstr "тип_данных_состояния" -#: sql_help.c:2094 sql_help.c:2116 sql_help.c:2124 +#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 msgid "state_data_size" msgstr "размер_данных_состояния" -#: sql_help.c:2095 sql_help.c:2117 sql_help.c:2125 +#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 msgid "ffunc" msgstr "функция_завершения" -#: sql_help.c:2096 sql_help.c:2126 +#: sql_help.c:2121 sql_help.c:2151 msgid "combinefunc" msgstr "комбинирующая_функция" -#: sql_help.c:2097 sql_help.c:2127 +#: sql_help.c:2122 sql_help.c:2152 msgid "serialfunc" msgstr "функция_сериализации" -#: sql_help.c:2098 sql_help.c:2128 +#: sql_help.c:2123 sql_help.c:2153 msgid "deserialfunc" msgstr "функция_десериализации" -#: sql_help.c:2099 sql_help.c:2118 sql_help.c:2129 +#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 msgid "initial_condition" msgstr "начальное_условие" -#: sql_help.c:2100 sql_help.c:2130 +#: sql_help.c:2125 sql_help.c:2155 msgid "msfunc" msgstr "функция_состояния_движ" -#: sql_help.c:2101 sql_help.c:2131 +#: sql_help.c:2126 sql_help.c:2156 msgid "minvfunc" msgstr "обратная_функция_движ" -#: sql_help.c:2102 sql_help.c:2132 +#: sql_help.c:2127 sql_help.c:2157 msgid "mstate_data_type" msgstr "тип_данных_состояния_движ" -#: sql_help.c:2103 sql_help.c:2133 +#: sql_help.c:2128 sql_help.c:2158 msgid "mstate_data_size" msgstr "размер_данных_состояния_движ" -#: sql_help.c:2104 sql_help.c:2134 +#: sql_help.c:2129 sql_help.c:2159 msgid "mffunc" msgstr "функция_завершения_движ" -#: sql_help.c:2105 sql_help.c:2135 +#: sql_help.c:2130 sql_help.c:2160 msgid "minitial_condition" msgstr "начальное_условие_движ" -#: sql_help.c:2106 sql_help.c:2136 +#: sql_help.c:2131 sql_help.c:2161 msgid "sort_operator" msgstr "оператор_сортировки" -#: sql_help.c:2119 +#: sql_help.c:2144 msgid "or the old syntax" msgstr "или старый синтаксис" -#: sql_help.c:2121 +#: sql_help.c:2146 msgid "base_type" msgstr "базовый_тип" -#: sql_help.c:2179 sql_help.c:2229 +#: sql_help.c:2204 sql_help.c:2254 msgid "locale" msgstr "код_локали" -#: sql_help.c:2180 sql_help.c:2230 +#: sql_help.c:2205 sql_help.c:2255 msgid "lc_collate" msgstr "код_правила_сортировки" -#: sql_help.c:2181 sql_help.c:2231 +#: sql_help.c:2206 sql_help.c:2256 msgid "lc_ctype" msgstr "код_классификации_символов" -#: sql_help.c:2182 sql_help.c:4495 +#: sql_help.c:2207 sql_help.c:4546 msgid "provider" msgstr "провайдер" -#: sql_help.c:2184 +#: sql_help.c:2209 msgid "rules" msgstr "правила" -#: sql_help.c:2185 sql_help.c:2292 +#: sql_help.c:2210 sql_help.c:2317 msgid "version" msgstr "версия" -#: sql_help.c:2187 +#: sql_help.c:2212 msgid "existing_collation" msgstr "существующее_правило_сортировки" -#: sql_help.c:2197 +#: sql_help.c:2222 msgid "source_encoding" msgstr "исходная_кодировка" -#: sql_help.c:2198 +#: sql_help.c:2223 msgid "dest_encoding" msgstr "целевая_кодировка" -#: sql_help.c:2226 sql_help.c:3067 +#: sql_help.c:2251 sql_help.c:3112 msgid "template" msgstr "шаблон" -#: sql_help.c:2227 +#: sql_help.c:2252 msgid "encoding" msgstr "кодировка" -#: sql_help.c:2228 +#: sql_help.c:2253 msgid "strategy" msgstr "стратегия" -#: sql_help.c:2232 +#: sql_help.c:2257 msgid "builtin_locale" msgstr "встроенная_локаль" -#: sql_help.c:2233 +#: sql_help.c:2258 msgid "icu_locale" msgstr "локаль_icu" -#: sql_help.c:2234 +#: sql_help.c:2259 msgid "icu_rules" msgstr "правила_icu" -#: sql_help.c:2235 +#: sql_help.c:2260 msgid "locale_provider" msgstr "провайдер_локали" -#: sql_help.c:2236 +#: sql_help.c:2261 msgid "collation_version" msgstr "версия_правила_сортировки" -#: sql_help.c:2241 +#: sql_help.c:2266 msgid "oid" msgstr "oid" -#: sql_help.c:2276 sql_help.c:2709 sql_help.c:3140 +#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 msgid "event" msgstr "событие" -#: sql_help.c:2277 +#: sql_help.c:2302 msgid "filter_variable" msgstr "переменная_фильтра" -#: sql_help.c:2278 +#: sql_help.c:2303 msgid "filter_value" msgstr "значение_фильтра" -#: sql_help.c:2374 sql_help.c:2956 +#: sql_help.c:2394 sql_help.c:2958 +msgid "source_table" +msgstr "исходная_таблица" + +#: sql_help.c:2395 sql_help.c:2959 +msgid "like_option" +msgstr "параметр_порождения" + +#: sql_help.c:2409 sql_help.c:2996 msgid "where column_constraint is:" msgstr "где ограничение_столбца:" -#: sql_help.c:2419 +#: sql_help.c:2418 sql_help.c:3030 +msgid "and like_option is:" +msgstr "и параметр_порождения:" + +#: sql_help.c:2456 msgid "rettype" msgstr "тип_возврата" -#: sql_help.c:2421 +#: sql_help.c:2458 msgid "column_type" msgstr "тип_столбца" -#: sql_help.c:2430 sql_help.c:2633 +#: sql_help.c:2467 sql_help.c:2670 msgid "definition" msgstr "определение" -#: sql_help.c:2431 sql_help.c:2634 +#: sql_help.c:2468 sql_help.c:2671 msgid "obj_file" msgstr "объектный_файл" -#: sql_help.c:2432 sql_help.c:2635 +#: sql_help.c:2469 sql_help.c:2672 msgid "link_symbol" msgstr "символ_в_экспорте" -#: sql_help.c:2433 sql_help.c:2636 +#: sql_help.c:2470 sql_help.c:2673 msgid "sql_body" msgstr "тело_sql" -#: sql_help.c:2471 sql_help.c:2694 sql_help.c:3263 +#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 msgid "uid" msgstr "uid" -#: sql_help.c:2487 sql_help.c:2528 sql_help.c:2925 sql_help.c:2938 -#: sql_help.c:2952 sql_help.c:3023 +#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 +#: sql_help.c:2992 sql_help.c:3068 msgid "method" msgstr "метод" -#: sql_help.c:2509 +#: sql_help.c:2546 msgid "call_handler" msgstr "обработчик_вызова" -#: sql_help.c:2510 +#: sql_help.c:2547 msgid "inline_handler" msgstr "обработчик_внедрённого_кода" -#: sql_help.c:2511 +#: sql_help.c:2548 msgid "valfunction" msgstr "функция_проверки" -#: sql_help.c:2569 +#: sql_help.c:2606 msgid "family_name" msgstr "имя_семейства" -#: sql_help.c:2580 +#: sql_help.c:2617 msgid "storage_type" msgstr "тип_хранения" -#: sql_help.c:2715 sql_help.c:3147 +#: sql_help.c:2752 sql_help.c:3192 msgid "where event can be one of:" msgstr "где допустимое событие:" -#: sql_help.c:2735 sql_help.c:2737 +#: sql_help.c:2772 sql_help.c:2774 msgid "schema_element" msgstr "элемент_схемы" -#: sql_help.c:2774 +#: sql_help.c:2813 msgid "server_type" msgstr "тип_сервера" -#: sql_help.c:2775 +#: sql_help.c:2814 msgid "server_version" msgstr "версия_сервера" -#: sql_help.c:2776 sql_help.c:3929 sql_help.c:4392 +#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 msgid "fdw_name" msgstr "имя_обёртки_сторонних_данных" -#: sql_help.c:2793 sql_help.c:2796 +#: sql_help.c:2832 sql_help.c:2835 msgid "statistics_name" msgstr "имя_статистики" -#: sql_help.c:2797 +#: sql_help.c:2836 msgid "statistics_kind" msgstr "вид_статистики" -#: sql_help.c:2813 +#: sql_help.c:2852 msgid "subscription_name" msgstr "имя_подписки" -#: sql_help.c:2918 -msgid "source_table" -msgstr "исходная_таблица" - -#: sql_help.c:2919 -msgid "like_option" -msgstr "параметр_порождения" - -#: sql_help.c:2985 -msgid "and like_option is:" -msgstr "и параметр_порождения:" - -#: sql_help.c:3040 +#: sql_help.c:3085 msgid "directory" msgstr "каталог" -#: sql_help.c:3054 +#: sql_help.c:3099 msgid "parser_name" msgstr "имя_анализатора" -#: sql_help.c:3055 +#: sql_help.c:3100 msgid "source_config" msgstr "исходная_конфигурация" -#: sql_help.c:3084 +#: sql_help.c:3129 msgid "start_function" msgstr "функция_начала" -#: sql_help.c:3085 +#: sql_help.c:3130 msgid "gettoken_function" msgstr "функция_выдачи_фрагмента" -#: sql_help.c:3086 +#: sql_help.c:3131 msgid "end_function" msgstr "функция_окончания" -#: sql_help.c:3087 +#: sql_help.c:3132 msgid "lextypes_function" msgstr "функция_лекс_типов" -#: sql_help.c:3088 +#: sql_help.c:3133 msgid "headline_function" msgstr "функция_создания_выдержек" -#: sql_help.c:3100 +#: sql_help.c:3145 msgid "init_function" msgstr "функция_инициализации" -#: sql_help.c:3101 +#: sql_help.c:3146 msgid "lexize_function" msgstr "функция_выделения_лексем" -#: sql_help.c:3114 +#: sql_help.c:3159 msgid "from_sql_function_name" msgstr "имя_функции_из_sql" -#: sql_help.c:3116 +#: sql_help.c:3161 msgid "to_sql_function_name" msgstr "имя_функции_в_sql" -#: sql_help.c:3142 +#: sql_help.c:3187 msgid "referenced_table_name" msgstr "ссылающаяся_таблица" -#: sql_help.c:3143 +#: sql_help.c:3188 msgid "transition_relation_name" msgstr "имя_переходного_отношения" -#: sql_help.c:3146 +#: sql_help.c:3191 msgid "arguments" msgstr "аргументы" -#: sql_help.c:3198 +#: sql_help.c:3243 msgid "label" msgstr "метка" -#: sql_help.c:3200 +#: sql_help.c:3245 msgid "subtype" msgstr "подтип" -#: sql_help.c:3201 +#: sql_help.c:3246 msgid "subtype_operator_class" msgstr "класс_оператора_подтипа" -#: sql_help.c:3203 +#: sql_help.c:3248 msgid "canonical_function" msgstr "каноническая_функция" -#: sql_help.c:3204 +#: sql_help.c:3249 msgid "subtype_diff_function" msgstr "функция_различий_подтипа" -#: sql_help.c:3205 +#: sql_help.c:3250 msgid "multirange_type_name" msgstr "имя_мультидиапазонного_типа" -#: sql_help.c:3207 +#: sql_help.c:3252 msgid "input_function" msgstr "функция_ввода" -#: sql_help.c:3208 +#: sql_help.c:3253 msgid "output_function" msgstr "функция_вывода" -#: sql_help.c:3209 +#: sql_help.c:3254 msgid "receive_function" msgstr "функция_получения" -#: sql_help.c:3210 +#: sql_help.c:3255 msgid "send_function" msgstr "функция_отправки" -#: sql_help.c:3211 +#: sql_help.c:3256 msgid "type_modifier_input_function" msgstr "функция_ввода_модификатора_типа" -#: sql_help.c:3212 +#: sql_help.c:3257 msgid "type_modifier_output_function" msgstr "функция_вывода_модификатора_типа" -#: sql_help.c:3213 +#: sql_help.c:3258 msgid "analyze_function" msgstr "функция_анализа" -#: sql_help.c:3214 +#: sql_help.c:3259 msgid "subscript_function" msgstr "функция_обращения_по_индексу" -#: sql_help.c:3215 +#: sql_help.c:3260 msgid "internallength" msgstr "внутр_длина" -#: sql_help.c:3216 +#: sql_help.c:3261 msgid "alignment" msgstr "выравнивание" -#: sql_help.c:3217 +#: sql_help.c:3262 msgid "storage" msgstr "хранение" -#: sql_help.c:3218 +#: sql_help.c:3263 msgid "like_type" msgstr "тип_образец" -#: sql_help.c:3219 +#: sql_help.c:3264 msgid "category" msgstr "категория" -#: sql_help.c:3220 +#: sql_help.c:3265 msgid "preferred" msgstr "предпочитаемый" -#: sql_help.c:3221 +#: sql_help.c:3266 msgid "default" msgstr "по_умолчанию" -#: sql_help.c:3222 +#: sql_help.c:3267 msgid "element" msgstr "элемент" -#: sql_help.c:3223 +#: sql_help.c:3268 msgid "delimiter" msgstr "разделитель" -#: sql_help.c:3224 +#: sql_help.c:3269 msgid "collatable" msgstr "сортируемый" -#: sql_help.c:3321 sql_help.c:4008 sql_help.c:4102 sql_help.c:4592 -#: sql_help.c:4695 sql_help.c:4850 sql_help.c:4964 sql_help.c:5095 +#: 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 msgid "with_query" msgstr "запрос_WITH" -#: sql_help.c:3323 sql_help.c:4010 sql_help.c:4611 sql_help.c:4617 -#: sql_help.c:4620 sql_help.c:4624 sql_help.c:4628 sql_help.c:4636 -#: sql_help.c:4869 sql_help.c:4875 sql_help.c:4878 sql_help.c:4882 -#: sql_help.c:4886 sql_help.c:4894 sql_help.c:4966 sql_help.c:5114 -#: sql_help.c:5120 sql_help.c:5123 sql_help.c:5127 sql_help.c:5131 -#: sql_help.c:5139 +#: 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 msgid "alias" msgstr "псевдоним" -#: sql_help.c:3324 sql_help.c:4596 sql_help.c:4638 sql_help.c:4640 -#: sql_help.c:4644 sql_help.c:4646 sql_help.c:4647 sql_help.c:4648 -#: sql_help.c:4700 sql_help.c:4854 sql_help.c:4896 sql_help.c:4898 -#: sql_help.c:4902 sql_help.c:4904 sql_help.c:4905 sql_help.c:4906 -#: sql_help.c:4973 sql_help.c:5099 sql_help.c:5141 sql_help.c:5143 -#: sql_help.c:5147 sql_help.c:5149 sql_help.c:5150 sql_help.c:5151 +#: 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 msgid "from_item" msgstr "источник_данных" -#: sql_help.c:3326 sql_help.c:3810 sql_help.c:4159 sql_help.c:4975 +#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 msgid "cursor_name" msgstr "имя_курсора" -#: sql_help.c:3327 sql_help.c:4016 sql_help.c:4108 sql_help.c:4976 +#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#, fuzzy +msgid "output_alias" +msgstr "имя_результата" + +#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 msgid "output_expression" msgstr "выражение_результата" -#: sql_help.c:3328 sql_help.c:4017 sql_help.c:4109 sql_help.c:4595 -#: sql_help.c:4698 sql_help.c:4853 sql_help.c:4977 sql_help.c:5098 +#: 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 msgid "output_name" msgstr "имя_результата" -#: sql_help.c:3344 +#: sql_help.c:3391 msgid "code" msgstr "внедрённый_код" -#: sql_help.c:3749 +#: sql_help.c:3796 msgid "parameter" msgstr "параметр" -#: sql_help.c:3773 sql_help.c:4184 +#: sql_help.c:3820 sql_help.c:4235 msgid "statement" msgstr "оператор" -#: sql_help.c:3809 sql_help.c:4158 +#: sql_help.c:3856 sql_help.c:4209 msgid "direction" msgstr "направление" -#: sql_help.c:3811 sql_help.c:4160 +#: sql_help.c:3858 sql_help.c:4211 msgid "where direction can be one of:" msgstr "где допустимое направление:" -#: sql_help.c:3812 sql_help.c:3813 sql_help.c:3814 sql_help.c:3815 -#: sql_help.c:3816 sql_help.c:4161 sql_help.c:4162 sql_help.c:4163 -#: sql_help.c:4164 sql_help.c:4165 sql_help.c:4605 sql_help.c:4607 -#: sql_help.c:4709 sql_help.c:4711 sql_help.c:4863 sql_help.c:4865 -#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5108 sql_help.c:5110 +#: 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 msgid "count" msgstr "число" -#: sql_help.c:3919 sql_help.c:4382 +#: sql_help.c:3966 sql_help.c:4433 msgid "sequence_name" msgstr "имя_последовательности" -#: sql_help.c:3937 sql_help.c:4400 +#: sql_help.c:3984 sql_help.c:4451 msgid "arg_name" msgstr "имя_аргумента" -#: sql_help.c:3938 sql_help.c:4401 +#: sql_help.c:3985 sql_help.c:4452 msgid "arg_type" msgstr "тип_аргумента" -#: sql_help.c:3945 sql_help.c:4408 +#: sql_help.c:3992 sql_help.c:4459 msgid "loid" msgstr "код_БО" -#: sql_help.c:3976 +#: sql_help.c:4023 msgid "remote_schema" msgstr "удалённая_схема" -#: sql_help.c:3979 +#: sql_help.c:4026 msgid "local_schema" msgstr "локальная_схема" -#: sql_help.c:4014 +#: sql_help.c:4062 msgid "conflict_target" msgstr "объект_конфликта" -#: sql_help.c:4015 +#: sql_help.c:4063 msgid "conflict_action" msgstr "действие_при_конфликте" -#: sql_help.c:4018 +#: sql_help.c:4067 msgid "where conflict_target can be one of:" msgstr "где допустимый объект_конфликта:" -#: sql_help.c:4019 +#: sql_help.c:4068 msgid "index_column_name" msgstr "имя_столбца_индекса" -#: sql_help.c:4020 +#: sql_help.c:4069 msgid "index_expression" msgstr "выражение_индекса" -#: sql_help.c:4023 +#: sql_help.c:4072 msgid "index_predicate" msgstr "предикат_индекса" -#: sql_help.c:4025 +#: sql_help.c:4074 msgid "and conflict_action is one of:" msgstr "а допустимое действие_при_конфликте:" -#: sql_help.c:4031 sql_help.c:4132 sql_help.c:4972 +#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 msgid "sub-SELECT" msgstr "вложенный_SELECT" -#: sql_help.c:4040 sql_help.c:4173 sql_help.c:4948 +#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 msgid "channel" msgstr "канал" -#: sql_help.c:4062 +#: sql_help.c:4111 msgid "lockmode" msgstr "режим_блокировки" -#: sql_help.c:4063 +#: sql_help.c:4112 msgid "where lockmode is one of:" msgstr "где допустимый режим_блокировки:" -#: sql_help.c:4103 +#: sql_help.c:4153 msgid "target_table_name" msgstr "имя_целевой_таблицы" -#: sql_help.c:4104 +#: sql_help.c:4154 msgid "target_alias" msgstr "псевдоним_назначения" -#: sql_help.c:4105 +#: sql_help.c:4155 msgid "data_source" msgstr "источник_данных" -#: sql_help.c:4106 sql_help.c:4641 sql_help.c:4899 sql_help.c:5144 +#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 msgid "join_condition" msgstr "условие_соединения" -#: sql_help.c:4107 +#: sql_help.c:4157 msgid "when_clause" msgstr "предложение_when" -#: sql_help.c:4110 +#: sql_help.c:4161 msgid "where data_source is:" msgstr "где источник_данных:" -#: sql_help.c:4111 +#: sql_help.c:4162 msgid "source_table_name" msgstr "имя_исходной_таблицы" -#: sql_help.c:4112 +#: sql_help.c:4163 msgid "source_query" msgstr "исходный_запрос" -#: sql_help.c:4113 +#: sql_help.c:4164 msgid "source_alias" msgstr "псевдоним_источника" -#: sql_help.c:4114 +#: sql_help.c:4165 msgid "and when_clause is:" msgstr "и предложение_when:" -#: sql_help.c:4116 sql_help.c:4119 +#: sql_help.c:4167 sql_help.c:4170 msgid "merge_update" msgstr "merge_update" -#: sql_help.c:4117 sql_help.c:4120 +#: sql_help.c:4168 sql_help.c:4171 msgid "merge_delete" msgstr "merge_delete" -#: sql_help.c:4122 +#: sql_help.c:4173 msgid "merge_insert" msgstr "merge_insert" -#: sql_help.c:4123 +#: sql_help.c:4174 msgid "and merge_insert is:" msgstr "и merge_insert:" -#: sql_help.c:4126 +#: sql_help.c:4177 msgid "and merge_update is:" msgstr "и merge_update:" -#: sql_help.c:4133 +#: sql_help.c:4184 msgid "and merge_delete is:" msgstr "и merge_delete:" -#: sql_help.c:4174 +#: sql_help.c:4225 msgid "payload" msgstr "сообщение_нагрузка" -#: sql_help.c:4201 +#: sql_help.c:4252 msgid "old_role" msgstr "старая_роль" -#: sql_help.c:4202 +#: sql_help.c:4253 msgid "new_role" msgstr "новая_роль" -#: sql_help.c:4241 sql_help.c:4450 sql_help.c:4458 +#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 msgid "savepoint_name" msgstr "имя_точки_сохранения" -#: sql_help.c:4598 sql_help.c:4656 sql_help.c:4856 sql_help.c:4914 -#: sql_help.c:5101 sql_help.c:5159 +#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 +#: sql_help.c:5154 sql_help.c:5212 msgid "grouping_element" msgstr "элемент_группирования" -#: sql_help.c:4600 sql_help.c:4704 sql_help.c:4858 sql_help.c:5103 +#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 msgid "window_name" msgstr "имя_окна" -#: sql_help.c:4601 sql_help.c:4705 sql_help.c:4859 sql_help.c:5104 +#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 msgid "window_definition" msgstr "определение_окна" -#: sql_help.c:4602 sql_help.c:4616 sql_help.c:4660 sql_help.c:4706 -#: sql_help.c:4860 sql_help.c:4874 sql_help.c:4918 sql_help.c:5105 -#: sql_help.c:5119 sql_help.c:5163 +#: 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 msgid "select" msgstr "select" -#: sql_help.c:4608 sql_help.c:4866 sql_help.c:5111 +#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 msgid "from_reference" msgstr "ссылка_FROM" -#: sql_help.c:4609 sql_help.c:4867 sql_help.c:5112 +#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 msgid "where from_item can be one of:" msgstr "где допустимый источник_данных:" -#: sql_help.c:4612 sql_help.c:4618 sql_help.c:4621 sql_help.c:4625 -#: sql_help.c:4637 sql_help.c:4870 sql_help.c:4876 sql_help.c:4879 -#: sql_help.c:4883 sql_help.c:4895 sql_help.c:5115 sql_help.c:5121 -#: sql_help.c:5124 sql_help.c:5128 sql_help.c:5140 +#: 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 msgid "column_alias" msgstr "псевдоним_столбца" -#: sql_help.c:4613 sql_help.c:4871 sql_help.c:5116 +#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 msgid "sampling_method" msgstr "метод_выборки" -#: sql_help.c:4615 sql_help.c:4873 sql_help.c:5118 +#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 msgid "seed" msgstr "начальное_число" -#: sql_help.c:4619 sql_help.c:4658 sql_help.c:4877 sql_help.c:4916 -#: sql_help.c:5122 sql_help.c:5161 +#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 +#: sql_help.c:5175 sql_help.c:5214 msgid "with_query_name" msgstr "имя_запроса_WITH" -#: sql_help.c:4629 sql_help.c:4632 sql_help.c:4635 sql_help.c:4887 -#: sql_help.c:4890 sql_help.c:4893 sql_help.c:5132 sql_help.c:5135 -#: sql_help.c:5138 +#: 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 msgid "column_definition" msgstr "определение_столбца" -#: sql_help.c:4639 sql_help.c:4645 sql_help.c:4897 sql_help.c:4903 -#: sql_help.c:5142 sql_help.c:5148 +#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 +#: sql_help.c:5195 sql_help.c:5201 msgid "join_type" msgstr "тип_соединения" -#: sql_help.c:4642 sql_help.c:4900 sql_help.c:5145 +#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 msgid "join_column" msgstr "столбец_соединения" -#: sql_help.c:4643 sql_help.c:4901 sql_help.c:5146 +#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 msgid "join_using_alias" msgstr "псевдоним_использования_соединения" -#: sql_help.c:4649 sql_help.c:4907 sql_help.c:5152 +#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 msgid "and grouping_element can be one of:" msgstr "где допустимый элемент_группирования:" -#: sql_help.c:4657 sql_help.c:4915 sql_help.c:5160 +#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 msgid "and with_query is:" msgstr "и запрос_WITH:" -#: sql_help.c:4661 sql_help.c:4919 sql_help.c:5164 +#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "values" msgstr "значения" -#: sql_help.c:4662 sql_help.c:4920 sql_help.c:5165 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "insert" msgstr "insert" -#: sql_help.c:4663 sql_help.c:4921 sql_help.c:5166 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "update" msgstr "update" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5167 +#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 msgid "delete" msgstr "delete" -#: sql_help.c:4665 sql_help.c:4923 sql_help.c:5168 +#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 msgid "merge" msgstr "merge" -#: sql_help.c:4667 sql_help.c:4925 sql_help.c:5170 +#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 msgid "search_seq_col_name" msgstr "имя_столбца_послед_поиска" -#: sql_help.c:4669 sql_help.c:4927 sql_help.c:5172 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "cycle_mark_col_name" msgstr "имя_столбца_пометки_цикла" -#: sql_help.c:4670 sql_help.c:4928 sql_help.c:5173 +#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 msgid "cycle_mark_value" msgstr "значение_пометки_цикла" -#: sql_help.c:4671 sql_help.c:4929 sql_help.c:5174 +#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 msgid "cycle_mark_default" msgstr "пометка_цикла_по_умолчанию" -#: sql_help.c:4672 sql_help.c:4930 sql_help.c:5175 +#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 msgid "cycle_path_col_name" msgstr "имя_столбца_пути_цикла" -#: sql_help.c:4699 +#: sql_help.c:4750 msgid "new_table" msgstr "новая_таблица" -#: sql_help.c:4770 +#: sql_help.c:4821 msgid "snapshot_id" msgstr "код_снимка" -#: sql_help.c:5037 +#: sql_help.c:5090 msgid "sort_expression" msgstr "выражение_сортировки" -#: sql_help.c:5182 sql_help.c:6166 +#: sql_help.c:5235 sql_help.c:6219 msgid "abort the current transaction" msgstr "прервать текущую транзакцию" -#: sql_help.c:5188 +#: sql_help.c:5241 msgid "change the definition of an aggregate function" msgstr "изменить определение агрегатной функции" -#: sql_help.c:5194 +#: sql_help.c:5247 msgid "change the definition of a collation" msgstr "изменить определение правила сортировки" -#: sql_help.c:5200 +#: sql_help.c:5253 msgid "change the definition of a conversion" msgstr "изменить определение преобразования" -#: sql_help.c:5206 +#: sql_help.c:5259 msgid "change a database" msgstr "изменить атрибуты базы данных" -#: sql_help.c:5212 +#: sql_help.c:5265 msgid "define default access privileges" msgstr "определить права доступа по умолчанию" -#: sql_help.c:5218 +#: sql_help.c:5271 msgid "change the definition of a domain" msgstr "изменить определение домена" -#: sql_help.c:5224 +#: sql_help.c:5277 msgid "change the definition of an event trigger" msgstr "изменить определение событийного триггера" -#: sql_help.c:5230 +#: sql_help.c:5283 msgid "change the definition of an extension" msgstr "изменить определение расширения" -#: sql_help.c:5236 +#: sql_help.c:5289 msgid "change the definition of a foreign-data wrapper" msgstr "изменить определение обёртки сторонних данных" -#: sql_help.c:5242 +#: sql_help.c:5295 msgid "change the definition of a foreign table" msgstr "изменить определение сторонней таблицы" -#: sql_help.c:5248 +#: sql_help.c:5301 msgid "change the definition of a function" msgstr "изменить определение функции" -#: sql_help.c:5254 +#: sql_help.c:5307 msgid "change role name or membership" msgstr "изменить имя роли или членство" -#: sql_help.c:5260 +#: sql_help.c:5313 msgid "change the definition of an index" msgstr "изменить определение индекса" -#: sql_help.c:5266 +#: sql_help.c:5319 msgid "change the definition of a procedural language" msgstr "изменить определение процедурного языка" -#: sql_help.c:5272 +#: sql_help.c:5325 msgid "change the definition of a large object" msgstr "изменить определение большого объекта" -#: sql_help.c:5278 +#: sql_help.c:5331 msgid "change the definition of a materialized view" msgstr "изменить определение материализованного представления" -#: sql_help.c:5284 +#: sql_help.c:5337 msgid "change the definition of an operator" msgstr "изменить определение оператора" -#: sql_help.c:5290 +#: sql_help.c:5343 msgid "change the definition of an operator class" msgstr "изменить определение класса операторов" -#: sql_help.c:5296 +#: sql_help.c:5349 msgid "change the definition of an operator family" msgstr "изменить определение семейства операторов" -#: sql_help.c:5302 +#: sql_help.c:5355 msgid "change the definition of a row-level security policy" msgstr "изменить определение политики защиты на уровне строк" -#: sql_help.c:5308 +#: sql_help.c:5361 msgid "change the definition of a procedure" msgstr "изменить определение процедуры" -#: sql_help.c:5314 +#: sql_help.c:5367 msgid "change the definition of a publication" msgstr "изменить определение публикации" -#: sql_help.c:5320 sql_help.c:5422 +#: sql_help.c:5373 sql_help.c:5475 msgid "change a database role" msgstr "изменить роль пользователя БД" -#: sql_help.c:5326 +#: sql_help.c:5379 msgid "change the definition of a routine" msgstr "изменить определение подпрограммы" -#: sql_help.c:5332 +#: sql_help.c:5385 msgid "change the definition of a rule" msgstr "изменить определение правила" -#: sql_help.c:5338 +#: sql_help.c:5391 msgid "change the definition of a schema" msgstr "изменить определение схемы" -#: sql_help.c:5344 +#: sql_help.c:5397 msgid "change the definition of a sequence generator" msgstr "изменить определение генератора последовательности" -#: sql_help.c:5350 +#: sql_help.c:5403 msgid "change the definition of a foreign server" msgstr "изменить определение стороннего сервера" -#: sql_help.c:5356 +#: sql_help.c:5409 msgid "change the definition of an extended statistics object" msgstr "изменить определение объекта расширенной статистики" -#: sql_help.c:5362 +#: sql_help.c:5415 msgid "change the definition of a subscription" msgstr "изменить определение подписки" -#: sql_help.c:5368 +#: sql_help.c:5421 msgid "change a server configuration parameter" msgstr "изменить параметр конфигурации сервера" -#: sql_help.c:5374 +#: sql_help.c:5427 msgid "change the definition of a table" msgstr "изменить определение таблицы" -#: sql_help.c:5380 +#: sql_help.c:5433 msgid "change the definition of a tablespace" msgstr "изменить определение табличного пространства" -#: sql_help.c:5386 +#: sql_help.c:5439 msgid "change the definition of a text search configuration" msgstr "изменить определение конфигурации текстового поиска" -#: sql_help.c:5392 +#: sql_help.c:5445 msgid "change the definition of a text search dictionary" msgstr "изменить определение словаря текстового поиска" -#: sql_help.c:5398 +#: sql_help.c:5451 msgid "change the definition of a text search parser" msgstr "изменить определение анализатора текстового поиска" -#: sql_help.c:5404 +#: sql_help.c:5457 msgid "change the definition of a text search template" msgstr "изменить определение шаблона текстового поиска" -#: sql_help.c:5410 +#: sql_help.c:5463 msgid "change the definition of a trigger" msgstr "изменить определение триггера" -#: sql_help.c:5416 +#: sql_help.c:5469 msgid "change the definition of a type" msgstr "изменить определение типа" -#: sql_help.c:5428 +#: sql_help.c:5481 msgid "change the definition of a user mapping" msgstr "изменить сопоставление пользователей" -#: sql_help.c:5434 +#: sql_help.c:5487 msgid "change the definition of a view" msgstr "изменить определение представления" -#: sql_help.c:5440 +#: sql_help.c:5493 msgid "collect statistics about a database" msgstr "собрать статистику о базе данных" -#: sql_help.c:5446 sql_help.c:6244 +#: sql_help.c:5499 sql_help.c:6297 msgid "start a transaction block" msgstr "начать транзакцию" -#: sql_help.c:5452 +#: sql_help.c:5505 msgid "invoke a procedure" msgstr "вызвать процедуру" -#: sql_help.c:5458 +#: sql_help.c:5511 msgid "force a write-ahead log checkpoint" msgstr "произвести контрольную точку в журнале предзаписи" -#: sql_help.c:5464 +#: sql_help.c:5517 msgid "close a cursor" msgstr "закрыть курсор" -#: sql_help.c:5470 +#: sql_help.c:5523 msgid "cluster a table according to an index" msgstr "перегруппировать таблицу по индексу" -#: sql_help.c:5476 +#: sql_help.c:5529 msgid "define or change the comment of an object" msgstr "задать или изменить комментарий объекта" -#: sql_help.c:5482 sql_help.c:6040 +#: sql_help.c:5535 sql_help.c:6093 msgid "commit the current transaction" msgstr "зафиксировать текущую транзакцию" -#: sql_help.c:5488 +#: sql_help.c:5541 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "зафиксировать транзакцию, ранее подготовленную для двухфазной фиксации" -#: sql_help.c:5494 +#: sql_help.c:5547 msgid "copy data between a file and a table" msgstr "импорт/экспорт данных в файл" -#: sql_help.c:5500 +#: sql_help.c:5553 msgid "define a new access method" msgstr "создать новый метод доступа" -#: sql_help.c:5506 +#: sql_help.c:5559 msgid "define a new aggregate function" msgstr "создать агрегатную функцию" -#: sql_help.c:5512 +#: sql_help.c:5565 msgid "define a new cast" msgstr "создать приведение типов" -#: sql_help.c:5518 +#: sql_help.c:5571 msgid "define a new collation" msgstr "создать правило сортировки" -#: sql_help.c:5524 +#: sql_help.c:5577 msgid "define a new encoding conversion" msgstr "создать преобразование кодировки" -#: sql_help.c:5530 +#: sql_help.c:5583 msgid "create a new database" msgstr "создать базу данных" -#: sql_help.c:5536 +#: sql_help.c:5589 msgid "define a new domain" msgstr "создать домен" -#: sql_help.c:5542 +#: sql_help.c:5595 msgid "define a new event trigger" msgstr "создать событийный триггер" -#: sql_help.c:5548 +#: sql_help.c:5601 msgid "install an extension" msgstr "установить расширение" -#: sql_help.c:5554 +#: sql_help.c:5607 msgid "define a new foreign-data wrapper" msgstr "создать обёртку сторонних данных" -#: sql_help.c:5560 +#: sql_help.c:5613 msgid "define a new foreign table" msgstr "создать стороннюю таблицу" -#: sql_help.c:5566 +#: sql_help.c:5619 msgid "define a new function" msgstr "создать функцию" -#: sql_help.c:5572 sql_help.c:5632 sql_help.c:5734 +#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 msgid "define a new database role" msgstr "создать роль пользователя БД" -#: sql_help.c:5578 +#: sql_help.c:5631 msgid "define a new index" msgstr "создать индекс" -#: sql_help.c:5584 +#: sql_help.c:5637 msgid "define a new procedural language" msgstr "создать процедурный язык" -#: sql_help.c:5590 +#: sql_help.c:5643 msgid "define a new materialized view" msgstr "создать материализованное представление" -#: sql_help.c:5596 +#: sql_help.c:5649 msgid "define a new operator" msgstr "создать оператор" -#: sql_help.c:5602 +#: sql_help.c:5655 msgid "define a new operator class" msgstr "создать класс операторов" -#: sql_help.c:5608 +#: sql_help.c:5661 msgid "define a new operator family" msgstr "создать семейство операторов" -#: sql_help.c:5614 +#: sql_help.c:5667 msgid "define a new row-level security policy for a table" msgstr "создать новую политику защиты на уровне строк для таблицы" -#: sql_help.c:5620 +#: sql_help.c:5673 msgid "define a new procedure" msgstr "создать процедуру" -#: sql_help.c:5626 +#: sql_help.c:5679 msgid "define a new publication" msgstr "создать публикацию" -#: sql_help.c:5638 +#: sql_help.c:5691 msgid "define a new rewrite rule" msgstr "создать правило перезаписи" -#: sql_help.c:5644 +#: sql_help.c:5697 msgid "define a new schema" msgstr "создать схему" -#: sql_help.c:5650 +#: sql_help.c:5703 msgid "define a new sequence generator" msgstr "создать генератор последовательностей" -#: sql_help.c:5656 +#: sql_help.c:5709 msgid "define a new foreign server" msgstr "создать сторонний сервер" -#: sql_help.c:5662 +#: sql_help.c:5715 msgid "define extended statistics" msgstr "создать расширенную статистику" -#: sql_help.c:5668 +#: sql_help.c:5721 msgid "define a new subscription" msgstr "создать подписку" -#: sql_help.c:5674 +#: sql_help.c:5727 msgid "define a new table" msgstr "создать таблицу" -#: sql_help.c:5680 sql_help.c:6202 +#: sql_help.c:5733 sql_help.c:6255 msgid "define a new table from the results of a query" msgstr "создать таблицу из результатов запроса" -#: sql_help.c:5686 +#: sql_help.c:5739 msgid "define a new tablespace" msgstr "создать табличное пространство" -#: sql_help.c:5692 +#: sql_help.c:5745 msgid "define a new text search configuration" msgstr "создать конфигурацию текстового поиска" -#: sql_help.c:5698 +#: sql_help.c:5751 msgid "define a new text search dictionary" msgstr "создать словарь текстового поиска" -#: sql_help.c:5704 +#: sql_help.c:5757 msgid "define a new text search parser" msgstr "создать анализатор текстового поиска" -#: sql_help.c:5710 +#: sql_help.c:5763 msgid "define a new text search template" msgstr "создать шаблон текстового поиска" -#: sql_help.c:5716 +#: sql_help.c:5769 msgid "define a new transform" msgstr "создать преобразование" -#: sql_help.c:5722 +#: sql_help.c:5775 msgid "define a new trigger" msgstr "создать триггер" -#: sql_help.c:5728 +#: sql_help.c:5781 msgid "define a new data type" msgstr "создать тип данных" -#: sql_help.c:5740 +#: sql_help.c:5793 msgid "define a new mapping of a user to a foreign server" msgstr "создать сопоставление пользователя для стороннего сервера" -#: sql_help.c:5746 +#: sql_help.c:5799 msgid "define a new view" msgstr "создать представление" -#: sql_help.c:5752 +#: sql_help.c:5805 msgid "deallocate a prepared statement" msgstr "освободить подготовленный оператор" -#: sql_help.c:5758 +#: sql_help.c:5811 msgid "define a cursor" msgstr "создать курсор" -#: sql_help.c:5764 +#: sql_help.c:5817 msgid "delete rows of a table" msgstr "удалить записи таблицы" -#: sql_help.c:5770 +#: sql_help.c:5823 msgid "discard session state" msgstr "очистить состояние сеанса" -#: sql_help.c:5776 +#: sql_help.c:5829 msgid "execute an anonymous code block" msgstr "выполнить анонимный блок кода" -#: sql_help.c:5782 +#: sql_help.c:5835 msgid "remove an access method" msgstr "удалить метод доступа" -#: sql_help.c:5788 +#: sql_help.c:5841 msgid "remove an aggregate function" msgstr "удалить агрегатную функцию" -#: sql_help.c:5794 +#: sql_help.c:5847 msgid "remove a cast" msgstr "удалить приведение типа" -#: sql_help.c:5800 +#: sql_help.c:5853 msgid "remove a collation" msgstr "удалить правило сортировки" -#: sql_help.c:5806 +#: sql_help.c:5859 msgid "remove a conversion" msgstr "удалить преобразование" -#: sql_help.c:5812 +#: sql_help.c:5865 msgid "remove a database" msgstr "удалить базу данных" -#: sql_help.c:5818 +#: sql_help.c:5871 msgid "remove a domain" msgstr "удалить домен" -#: sql_help.c:5824 +#: sql_help.c:5877 msgid "remove an event trigger" msgstr "удалить событийный триггер" -#: sql_help.c:5830 +#: sql_help.c:5883 msgid "remove an extension" msgstr "удалить расширение" -#: sql_help.c:5836 +#: sql_help.c:5889 msgid "remove a foreign-data wrapper" msgstr "удалить обёртку сторонних данных" -#: sql_help.c:5842 +#: sql_help.c:5895 msgid "remove a foreign table" msgstr "удалить стороннюю таблицу" -#: sql_help.c:5848 +#: sql_help.c:5901 msgid "remove a function" msgstr "удалить функцию" -#: sql_help.c:5854 sql_help.c:5920 sql_help.c:6022 +#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 msgid "remove a database role" msgstr "удалить роль пользователя БД" -#: sql_help.c:5860 +#: sql_help.c:5913 msgid "remove an index" msgstr "удалить индекс" -#: sql_help.c:5866 +#: sql_help.c:5919 msgid "remove a procedural language" msgstr "удалить процедурный язык" -#: sql_help.c:5872 +#: sql_help.c:5925 msgid "remove a materialized view" msgstr "удалить материализованное представление" -#: sql_help.c:5878 +#: sql_help.c:5931 msgid "remove an operator" msgstr "удалить оператор" -#: sql_help.c:5884 +#: sql_help.c:5937 msgid "remove an operator class" msgstr "удалить класс операторов" -#: sql_help.c:5890 +#: sql_help.c:5943 msgid "remove an operator family" msgstr "удалить семейство операторов" -#: sql_help.c:5896 +#: sql_help.c:5949 msgid "remove database objects owned by a database role" msgstr "удалить объекты базы данных, принадлежащие роли" -#: sql_help.c:5902 +#: sql_help.c:5955 msgid "remove a row-level security policy from a table" msgstr "удалить из таблицы политику защиты на уровне строк" -#: sql_help.c:5908 +#: sql_help.c:5961 msgid "remove a procedure" msgstr "удалить процедуру" -#: sql_help.c:5914 +#: sql_help.c:5967 msgid "remove a publication" msgstr "удалить публикацию" -#: sql_help.c:5926 +#: sql_help.c:5979 msgid "remove a routine" msgstr "удалить подпрограмму" -#: sql_help.c:5932 +#: sql_help.c:5985 msgid "remove a rewrite rule" msgstr "удалить правило перезаписи" -#: sql_help.c:5938 +#: sql_help.c:5991 msgid "remove a schema" msgstr "удалить схему" -#: sql_help.c:5944 +#: sql_help.c:5997 msgid "remove a sequence" msgstr "удалить последовательность" -#: sql_help.c:5950 +#: sql_help.c:6003 msgid "remove a foreign server descriptor" msgstr "удалить описание стороннего сервера" -#: sql_help.c:5956 +#: sql_help.c:6009 msgid "remove extended statistics" msgstr "удалить расширенную статистику" -#: sql_help.c:5962 +#: sql_help.c:6015 msgid "remove a subscription" msgstr "удалить подписку" -#: sql_help.c:5968 +#: sql_help.c:6021 msgid "remove a table" msgstr "удалить таблицу" -#: sql_help.c:5974 +#: sql_help.c:6027 msgid "remove a tablespace" msgstr "удалить табличное пространство" -#: sql_help.c:5980 +#: sql_help.c:6033 msgid "remove a text search configuration" msgstr "удалить конфигурацию текстового поиска" -#: sql_help.c:5986 +#: sql_help.c:6039 msgid "remove a text search dictionary" msgstr "удалить словарь текстового поиска" -#: sql_help.c:5992 +#: sql_help.c:6045 msgid "remove a text search parser" msgstr "удалить анализатор текстового поиска" -#: sql_help.c:5998 +#: sql_help.c:6051 msgid "remove a text search template" msgstr "удалить шаблон текстового поиска" -#: sql_help.c:6004 +#: sql_help.c:6057 msgid "remove a transform" msgstr "удалить преобразование" -#: sql_help.c:6010 +#: sql_help.c:6063 msgid "remove a trigger" msgstr "удалить триггер" -#: sql_help.c:6016 +#: sql_help.c:6069 msgid "remove a data type" msgstr "удалить тип данных" -#: sql_help.c:6028 +#: sql_help.c:6081 msgid "remove a user mapping for a foreign server" msgstr "удалить сопоставление пользователя для стороннего сервера" -#: sql_help.c:6034 +#: sql_help.c:6087 msgid "remove a view" msgstr "удалить представление" -#: sql_help.c:6046 +#: sql_help.c:6099 msgid "execute a prepared statement" msgstr "выполнить подготовленный оператор" -#: sql_help.c:6052 +#: sql_help.c:6105 msgid "show the execution plan of a statement" msgstr "показать план выполнения оператора" -#: sql_help.c:6058 +#: sql_help.c:6111 msgid "retrieve rows from a query using a cursor" msgstr "получить результат запроса через курсор" -#: sql_help.c:6064 +#: sql_help.c:6117 msgid "define access privileges" msgstr "определить права доступа" -#: sql_help.c:6070 +#: sql_help.c:6123 msgid "import table definitions from a foreign server" msgstr "импортировать определения таблиц со стороннего сервера" -#: sql_help.c:6076 +#: sql_help.c:6129 msgid "create new rows in a table" msgstr "добавить строки в таблицу" -#: sql_help.c:6082 +#: sql_help.c:6135 msgid "listen for a notification" msgstr "ожидать уведомления" -#: sql_help.c:6088 +#: sql_help.c:6141 msgid "load a shared library file" msgstr "загрузить файл разделяемой библиотеки" -#: sql_help.c:6094 +#: sql_help.c:6147 msgid "lock a table" msgstr "заблокировать таблицу" -#: sql_help.c:6100 +#: sql_help.c:6153 msgid "conditionally insert, update, or delete rows of a table" msgstr "добавление, изменение или удаление строк таблицы по условию" -#: sql_help.c:6106 +#: sql_help.c:6159 msgid "position a cursor" msgstr "установить курсор" -#: sql_help.c:6112 +#: sql_help.c:6165 msgid "generate a notification" msgstr "сгенерировать уведомление" -#: sql_help.c:6118 +#: sql_help.c:6171 msgid "prepare a statement for execution" msgstr "подготовить оператор для выполнения" -#: sql_help.c:6124 +#: sql_help.c:6177 msgid "prepare the current transaction for two-phase commit" msgstr "подготовить текущую транзакцию для двухфазной фиксации" -#: sql_help.c:6130 +#: sql_help.c:6183 msgid "change the ownership of database objects owned by a database role" msgstr "изменить владельца объектов БД, принадлежащих заданной роли" -#: sql_help.c:6136 +#: sql_help.c:6189 msgid "replace the contents of a materialized view" msgstr "заменить содержимое материализованного представления" -#: sql_help.c:6142 +#: sql_help.c:6195 msgid "rebuild indexes" msgstr "перестроить индексы" -#: sql_help.c:6148 +#: sql_help.c:6201 msgid "release a previously defined savepoint" msgstr "освободить ранее определённую точку сохранения" -#: sql_help.c:6154 +#: sql_help.c:6207 msgid "restore the value of a run-time parameter to the default value" msgstr "восстановить исходное значение параметра выполнения" -#: sql_help.c:6160 +#: sql_help.c:6213 msgid "remove access privileges" msgstr "удалить права доступа" -#: sql_help.c:6172 +#: sql_help.c:6225 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "отменить транзакцию, подготовленную ранее для двухфазной фиксации" -#: sql_help.c:6178 +#: sql_help.c:6231 msgid "roll back to a savepoint" msgstr "откатиться к точке сохранения" -#: sql_help.c:6184 +#: sql_help.c:6237 msgid "define a new savepoint within the current transaction" msgstr "определить новую точку сохранения в текущей транзакции" -#: sql_help.c:6190 +#: sql_help.c:6243 msgid "define or change a security label applied to an object" msgstr "задать или изменить метку безопасности, применённую к объекту" -#: sql_help.c:6196 sql_help.c:6250 sql_help.c:6286 +#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 msgid "retrieve rows from a table or view" msgstr "выбрать строки из таблицы или представления" -#: sql_help.c:6208 +#: sql_help.c:6261 msgid "change a run-time parameter" msgstr "изменить параметр выполнения" -#: sql_help.c:6214 +#: sql_help.c:6267 msgid "set constraint check timing for the current transaction" msgstr "установить время проверки ограничений для текущей транзакции" -#: sql_help.c:6220 +#: sql_help.c:6273 msgid "set the current user identifier of the current session" msgstr "задать идентификатор текущего пользователя в текущем сеансе" -#: sql_help.c:6226 +#: sql_help.c:6279 msgid "" "set the session user identifier and the current user identifier of the " "current session" @@ -6822,45 +7184,45 @@ msgstr "" "задать идентификатор пользователя сеанса и идентификатор текущего " "пользователя в текущем сеансе" -#: sql_help.c:6232 +#: sql_help.c:6285 msgid "set the characteristics of the current transaction" msgstr "задать свойства текущей транзакции" -#: sql_help.c:6238 +#: sql_help.c:6291 msgid "show the value of a run-time parameter" msgstr "показать значение параметра выполнения" -#: sql_help.c:6256 +#: sql_help.c:6309 msgid "empty a table or set of tables" msgstr "опустошить таблицу или набор таблиц" -#: sql_help.c:6262 +#: sql_help.c:6315 msgid "stop listening for a notification" msgstr "прекратить ожидание уведомлений" -#: sql_help.c:6268 +#: sql_help.c:6321 msgid "update rows of a table" msgstr "изменить строки таблицы" -#: sql_help.c:6274 +#: sql_help.c:6327 msgid "garbage-collect and optionally analyze a database" msgstr "произвести сборку мусора и проанализировать базу данных" -#: sql_help.c:6280 +#: sql_help.c:6333 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" @@ -6869,27 +7231,27 @@ 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:6633 #, c-format msgid "" "tab completion query failed: %s\n" @@ -6900,23 +7262,48 @@ msgstr "" "Запрос:\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 +#, fuzzy, c-format +msgid "invalid input syntax for variable \"%s\"" +msgstr "не удалось установить переменную \"%s\"\n" + +#: variables.c:218 +#, fuzzy, c-format +msgid "invalid value \"%s\" for variable \"%s\": must be greater than %.2f" +msgstr "неправильное значение \"%s\" для \"%s\": ожидалось целое" + +#: variables.c:225 +#, fuzzy, c-format +msgid "invalid value \"%s\" for variable \"%s\": must be less than %.2f" +msgstr "неправильное значение \"%s\" для \"%s\": ожидалось целое" + +#: variables.c:241 +#, fuzzy, c-format +msgid "value \"%s\" is out of range for variable \"%s\"" +msgstr "%s: не удалось установить переменную \"%s\"\n" + +#: variables.c:247 +#, fuzzy, 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" @@ -6925,6 +7312,50 @@ msgstr "" "нераспознанное значение \"%s\" для \"%s\"\n" "Допустимые значения: %s." +#, c-format +#~ msgid "could not look up local user ID %d: %s" +#~ msgstr "найти локального пользователя по идентификатору (%d) не удалось: %s" + +#, c-format +#~ msgid "local user with ID %d does not exist" +#~ msgstr "локальный пользователь с ID %d не существует" + +#, 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" + +#, 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" + +#, 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" + +#, 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" + +#, c-format +#~ msgid "Unlogged materialized view \"%s.%s\"" +#~ msgstr "Нежурналируемое материализованное представление \"%s.%s\"" + #~ msgid "ICU Locale" #~ msgstr "локаль ICU" @@ -7154,9 +7585,6 @@ msgstr "" #~ msgid "\\%s: error while setting variable\n" #~ msgstr "\\%s: не удалось установить переменную\n" -#~ msgid "could not set variable \"%s\"\n" -#~ msgstr "не удалось установить переменную \"%s\"\n" - #~ msgid "Modifiers" #~ msgstr "Модификаторы" @@ -7172,9 +7600,6 @@ msgstr "" #~ msgid "Modifier" #~ msgstr "Модификатор" -#~ msgid "%s: could not set variable \"%s\"\n" -#~ msgstr "%s: не удалось установить переменную \"%s\"\n" - #~ msgid "\\crosstabview: query must return results to be shown in crosstab\n" #~ msgstr "" #~ "\\crosstabview: запрос должен возвращать результаты для вывода в " diff --git a/src/bin/psql/po/sv.po b/src/bin/psql/po/sv.po index 5e65a3616b590..a778caa83d466 100644 --- a/src/bin/psql/po/sv.po +++ b/src/bin/psql/po/sv.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 18\n" +"Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-29 17:18+0000\n" -"PO-Revision-Date: 2025-07-29 20:21+0200\n" +"POT-Creation-Date: 2025-08-16 15:18+0000\n" +"PO-Revision-Date: 2025-08-17 09:01+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -79,7 +79,7 @@ msgid "%s() failed: %m" msgstr "%s() misslyckades: %m" #: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 -#: command.c:1639 command.c:3988 command.c:4037 command.c:4162 input.c:225 +#: 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" @@ -101,7 +101,7 @@ msgstr "kan inte duplicera null-pekare (internt fel)\n" msgid "could not look up effective user ID %ld: %s" msgstr "kunde inte slå upp effektivt användar-id %ld: %s" -#: ../../common/username.c:45 command.c:700 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "användaren finns inte" @@ -195,169 +195,174 @@ msgstr "shell-kommandots argument innehåller nyrad eller vagnretur: \"%s\"\n" msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "databasnamnet innehåller nyrad eller vagnretur: \"%s\"\n" -#: command.c:245 +#: command.c:254 +#, c-format +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "baksträckkommandon är begränsade; bara \\unrestrict tillåts" + +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "ogiltigt kommando \\%s" -#: command.c:247 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr "Försök med \\? för hjälp." -#: command.c:265 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s: extra argument \"%s\" ignorerat" -#: command.c:317 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "kommandot \\%s ignorerat; använd \\endif eller Ctrl-C för att avsluta nuvarande \\if-block" -#: command.c:552 command.c:747 command.c:1885 command.c:2053 command.c:2366 -#: command.c:2380 command.c:2412 command.c:2501 command.c:2614 command.c:2892 -#: command.c:3154 command.c:3194 +#: 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: obligatoriskt argument saknas" -#: command.c:698 +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "kunde inte hämta hemkatalog för användar-ID %ld: %s" -#: command.c:717 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s: kunde inte byta katalog till \"%s\": %m" -#: command.c:790 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "Du är för närvarande inte uppkopplad mot en databas.\n" -#: command.c:818 +#: command.c:839 msgid "Connection Information" msgstr "Anslutningsinformation" -#: command.c:819 describe.c:4722 +#: command.c:840 describe.c:4722 msgid "Parameter" msgstr "Parameter" -#: command.c:820 describe.c:4723 +#: command.c:841 describe.c:4723 msgid "Value" msgstr "Värde" -#: command.c:823 describe.c:3874 +#: command.c:844 describe.c:3874 msgid "Database" msgstr "Databas" -#: command.c:827 +#: command.c:848 msgid "Client User" msgstr "Klientanvändare" -#: command.c:836 command.c:851 +#: command.c:857 command.c:872 msgid "Host Address" msgstr "Värdadress" -#: command.c:841 +#: command.c:862 msgid "Socket Directory" msgstr "Socket-katalog" -#: command.c:847 +#: command.c:868 msgid "Host" msgstr "Värd" -#: command.c:857 +#: command.c:878 msgid "Server Port" msgstr "Serverport" -#: command.c:861 describe.c:246 describe.c:3615 describe.c:3955 +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 msgid "Options" msgstr "Alternativ" -#: command.c:865 +#: command.c:886 msgid "Protocol Version" msgstr "Protokollversion" -#: command.c:869 +#: command.c:890 msgid "Password Used" msgstr "Använd lösenord" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "false" msgstr "falskt" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "true" msgstr "sant" -#: command.c:873 +#: command.c:894 msgid "GSSAPI Authenticated" msgstr "GSSAPI-autentiserad" -#: command.c:877 +#: command.c:898 msgid "Backend PID" msgstr "Backend-PID" -#: command.c:881 +#: command.c:902 msgid "SSL Connection" msgstr "SSL-anslutning" -#: command.c:901 +#: command.c:922 msgid "SSL Library" msgstr "SSL-bibliotek" -#: command.c:902 command.c:905 command.c:908 command.c:911 command.c:923 -#: command.c:927 command.c:4426 command.c:4427 +#: 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 "okänd" -#: command.c:904 +#: command.c:925 msgid "SSL Protocol" msgstr "SSL-protokoll" -#: command.c:907 +#: command.c:928 msgid "SSL Key Bits" msgstr "SSL nyckelbitar" -#: command.c:910 +#: command.c:931 msgid "SSL Cipher" msgstr "SSL-krypto" -#: command.c:913 +#: command.c:934 msgid "SSL Compression" msgstr "SSL-komprimering" -#: command.c:917 +#: command.c:938 msgid "ALPN" msgstr "ALPN" -#: command.c:918 command.c:4429 +#: command.c:939 command.c:4519 msgid "none" msgstr "ingen" -#: command.c:1335 command.c:1436 command.c:3187 +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "ingen frågebuffert" -#: command.c:1368 command.c:6315 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "ogiltigt radnummer: %s" -#: command.c:1514 +#: command.c:1535 msgid "No changes" msgstr "Inga ändringar" -#: command.c:1599 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s: ogiltigt kodningsnamn eller konverteringsprocedur hittades inte" -#: command.c:1635 command.c:2575 command.c:3984 command.c:4182 command.c:6421 +#: 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 @@ -366,223 +371,233 @@ msgstr "%s: ogiltigt kodningsnamn eller konverteringsprocedur hittades inte" msgid "%s" msgstr "%s" -#: command.c:1642 +#: command.c:1663 msgid "There is no previous error." msgstr "Det finns inget tidigare fel." -#: command.c:1745 command.c:1952 command.c:1978 command.c:3290 +#: command.c:1766 command.c:1973 command.c:1999 command.c:3380 #, c-format msgid "\\%s not allowed in pipeline mode" msgstr "\\%s tillåts inte i pipeline-läge" -#: command.c:1801 +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: saknar höger parentes" -#: command.c:1927 +#: command.c:1948 #, c-format msgid "\\getresults: invalid number of requested results" msgstr "\\getresults: ogiltigt antal efterfrågade resultat" -#: command.c:2184 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif: kan inte komma efter \\else" -#: command.c:2189 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif: ingen matchande \\if" -#: command.c:2253 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else: kan inte komma efter \\else" -#: command.c:2258 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else: ingen matchande \\if" -#: command.c:2298 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif: ingen matchande \\if" -#: command.c:2476 +#: command.c:2497 msgid "Query buffer is empty." msgstr "Frågebufferten är tom." -#: command.c:2553 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "Mata in nytt lösenord för användare \"%s\": " -#: command.c:2557 +#: command.c:2578 msgid "Enter it again: " msgstr "Mata in det igen: " -#: command.c:2566 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "Lösenorden stämde inte överens." -#: command.c:2649 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "\\%s: kunde inte läsa värde på varibeln" -#: command.c:2751 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "Frågebufferten har blivit borttagen." -#: command.c:2773 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "Skrev historiken till fil \"%s\".\n" -#: command.c:2803 +#: command.c:2853 #, c-format msgid "\\sendpipeline must be used after \\bind or \\bind_named" msgstr "\\sendpipeline måste användas efter \\bind eller \\bind_named" -#: command.c:2810 +#: command.c:2860 #, c-format msgid "\\sendpipeline not allowed outside of pipeline mode" msgstr "\\sendpipeline tillåts inte utanför pipeline-läge" -#: command.c:2897 +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s: omgivningsvariabelnamn får ej innehålla \"=\"" -#: command.c:2945 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "funktionsnamn krävs" -#: command.c:2947 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "vynamn krävs" -#: command.c:3126 +#: command.c:3176 msgid "Timing is on." msgstr "Tidtagning är på." -#: command.c:3128 +#: command.c:3178 msgid "Timing is off." msgstr "Tidtagning är av." -#: command.c:3214 command.c:3252 command.c:4702 command.c:4705 command.c:4708 -#: command.c:4714 command.c:4716 command.c:4742 command.c:4752 command.c:4764 -#: command.c:4778 command.c:4805 command.c:4863 common.c:77 copy.c:329 +#: command.c:3208 +#, c-format +msgid "\\%s: not currently in restricted mode" +msgstr "\\%s: ej i begränsat läge just nu" + +#: command.c:3218 +#, c-format +msgid "\\%s: wrong key" +msgstr "\\%s: fel nyckel" + +#: 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:3241 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s: %s" -#: command.c:3322 command.c:3388 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch: värde på intervall angivet mer än en gång" -#: command.c:3332 command.c:3398 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch: inkorrekt intervallvärde \"%s\"" -#: command.c:3342 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: iterationsantal angivet mer än en gång" -#: command.c:3352 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch: inkorrekt iterationsantal \"%s\"" -#: command.c:3362 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: minsta radantal angivet mer än en gång" -#: command.c:3372 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: inkorrekt minsta radantal \"%s\"" -#: command.c:3379 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch: okänd parameter \"%s\"" -#: command.c:3785 startup.c:248 startup.c:298 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "Lösenord: " -#: command.c:3790 startup.c:295 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "Lösenord för användare %s: " -#: command.c:3846 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "Ange inte användare, värd eller port separat tillsammans med en anslutningssträng" -#: command.c:3881 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "Det finns ingen anslutning att återanvända parametrar från" -#: command.c:4188 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "Föregående anslutning bevarad" -#: command.c:4194 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect: %s" -#: command.c:4250 +#: command.c:4340 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" msgstr "Du är nu uppkopplad mot databasen \"%s\" som användare \"%s\" på adress \"%s\" på port \"%s\".\n" -#: command.c:4253 +#: 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 "Du är nu uppkopplad mot databasen \"%s\" som användare \"%s\" via uttag i \"%s\" på port \"%s\".\n" -#: command.c:4259 +#: 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 "Du är nu uppkopplad mot databasen \"%s\" som användare \"%s\" på värd \"%s\" (adress \"%s\") på port \"%s\".\n" -#: command.c:4262 +#: command.c:4352 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" msgstr "Du är nu uppkopplad mot databasen \"%s\" som användare \"%s\" på värd \"%s\" på port \"%s\".\n" -#: command.c:4267 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "Du är nu uppkopplad mot databasen \"%s\" som användare \"%s\".\n" -#: command.c:4373 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s, server %s)\n" -#: command.c:4386 +#: command.c:4476 #, c-format msgid "" "WARNING: %s major version %s, server major version %s.\n" @@ -591,25 +606,25 @@ msgstr "" "VARNING: %s huvudversion %s, server huvudversion %s.\n" " En del psql-finesser kommer kanske inte fungera.\n" -#: command.c:4425 +#: command.c:4515 #, c-format msgid "SSL connection (protocol: %s, cipher: %s, compression: %s, ALPN: %s)\n" msgstr "SSL-anslutning (protokoll: %s, krypto: %s, komprimering: %s, ALPN: %s)\n" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "off" msgstr "av" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "on" msgstr "på" -#: command.c:4443 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "GSSAPI-krypterad anslutning\n" -#: command.c:4463 +#: command.c:4553 #, c-format msgid "" "WARNING: Console code page (%u) differs from Windows code page (%u)\n" @@ -620,284 +635,284 @@ msgstr "" " 8-bitars tecken kommer troligen inte fungera korrekt. Se psql:s\n" " referensmanual i sektionen \"Notes for Windows users\" för mer detaljer.\n" -#: command.c:4577 +#: command.c:4667 #, c-format msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number" msgstr "omgivningsvariabeln PSQL_EDITOR_LINENUMBER_ARG måste ange ett radnummer" -#: command.c:4607 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "kunde inte starta editorn \"%s\"" -#: command.c:4609 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "kunde inte starta /bin/sh" -#: command.c:4659 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "kunde inte hitta temp-katalog: %s" -#: command.c:4686 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "kunde inte öppna temporär fil \"%s\": %m" -#: command.c:5022 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: tvetydig förkortning \"%s\" matchar både \"%s\" och \"%s\"" -#: command.c:5042 +#: command.c:5132 #, c-format msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" msgstr "\\pset: tillåtna format är aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" -#: command.c:5061 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: tillåtna linjestilar är ascii, old-ascii, unicode" -#: command.c:5076 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset: tillåtna Unicode-ramstilar är single, double" -#: command.c:5091 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: tillåtna Unicode-kolumnlinjestilar ärsingle, double" -#: command.c:5106 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset: tillåtna Unicode-rubriklinjestilar är single, double" -#: command.c:5158 +#: 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: tillåtna värden på xheader_width är \"%s\" (standard), \"%s\", \"%s\" eller ett tal som anger exakt vidd" -#: command.c:5175 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsep måste vara ett ensamt en-byte-tecken" -#: command.c:5180 +#: command.c:5270 #, c-format msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return" msgstr "\\pset: csv_fieldset kan inte vara dubbelcitat, nyrad eller vagnretur" -#: command.c:5318 command.c:5519 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset: okänd parameter: %s" -#: command.c:5338 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "Ramstil är %d.\n" -#: command.c:5344 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "Målvidd är inte satt.\n" -#: command.c:5346 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "Målvidd är %d.\n" -#: command.c:5353 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "Utökad visning är på.\n" -#: command.c:5355 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "Utökad visning används automatiskt.\n" -#: command.c:5357 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "Utökad visning är av.\n" -#: command.c:5364 command.c:5366 command.c:5368 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "Expanderad rubrikvidd är \"%s\".\n" -#: command.c:5370 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "Expanderad rubrikvidd är %d.\n" -#: command.c:5376 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "Fältseparatorn för CSV är \"%s\".\n" -#: command.c:5384 command.c:5392 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "Fältseparatorn är noll-byte.\n" -#: command.c:5386 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "Fältseparatorn är \"%s\".\n" -#: command.c:5399 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "Standard sidfot är på.\n" -#: command.c:5401 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "Standard sidfot är av.\n" -#: command.c:5407 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "Utdataformatet är \"%s\".\n" -#: command.c:5413 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "Linjestil är %s.\n" -#: command.c:5420 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "Null-visare är \"%s\".\n" -#: command.c:5428 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "Lokal-anpassad numerisk utdata är på.\n" -#: command.c:5430 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "Lokal-anpassad numerisk utdata är av.\n" -#: command.c:5437 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "Siduppdelare är på för lång utdata.\n" -#: command.c:5439 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "Siduppdelare används alltid.\n" -#: command.c:5441 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "Siduppdelare är av.\n" -#: command.c:5447 +#: 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" msgstr[0] "Siduppdelare kommer inte användas för färre än %d linje.\n" msgstr[1] "Siduppdelare kommer inte användas för färre än %d linjer.\n" -#: command.c:5457 command.c:5467 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "Postseparatorn är noll-byte.\n" -#: command.c:5459 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "Postseparatorn är .\n" -#: command.c:5461 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "Postseparatorn är \"%s\".\n" -#: command.c:5474 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "Tabellattributen är \"%s\".\n" -#: command.c:5477 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "Tabellattributen är ej satta.\n" -#: command.c:5484 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "Titeln är \"%s\".\n" -#: command.c:5486 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "Titeln är inte satt.\n" -#: command.c:5493 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "Visa bara tupler är på.\n" -#: command.c:5495 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "Visa bara tupler är av.\n" -#: command.c:5501 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "Unicode-ramstil är \"%s\".\n" -#: command.c:5507 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "Unicode-kolumnLinjestil är \"%s\".\n" -#: command.c:5513 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "Unicode-rubriklinjestil är \"%s\".\n" -#: command.c:5762 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: misslyckades" -#: command.c:5800 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch kan inte användas på en tom fråga" -#: command.c:5832 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "kunde inte sätta timer: %m" -#: command.c:5901 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (varje %gs)\n" -#: command.c:5904 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (varje %gs)\n" -#: command.c:5968 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "kunde inte vänta på signaler: %m" -#: command.c:6024 command.c:6031 common.c:667 common.c:674 common.c:1159 +#: command.c:6114 command.c:6121 common.c:667 common.c:674 common.c:1159 #, c-format msgid "" "/******** QUERY *********/\n" @@ -910,12 +925,12 @@ msgstr "" "/************************/\n" "\n" -#: command.c:6210 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "\"%s.%s\" är inte en vy" -#: command.c:6226 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "kunde inte parsa arrayen reloptions" @@ -1063,10 +1078,9 @@ msgid "Pipeline aborted, command did not run" msgstr "Pipeline avbruten, kommandot kördes inte" #: common.c:1893 -#, fuzzy, c-format -#| msgid "fastpath function calls not supported in a replication connection" +#, c-format msgid "COPY in a pipeline is not supported, aborting connection" -msgstr "fastpath-funktionsanrop stöds inte i en replikeringsanslutning" +msgstr "COPY i en pipeline stöds inte, avbryter anslutning" #: copy.c:98 #, c-format @@ -2719,7 +2733,7 @@ msgstr "" "psql är den interaktiva PostgreSQL-terminalen.\n" "\n" -#: help.c:61 help.c:385 help.c:472 help.c:518 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "Användning:\n" @@ -3004,6 +3018,22 @@ msgstr " \\q avsluta psql\n" #: help.c:174 msgid "" +" \\restrict RESTRICT_KEY\n" +" enter restricted mode with provided key\n" +msgstr "" +" \\restrict RESTRICT_KEY\n" +" gå in i begränsat läge med angiven nyckel\n" + +#: help.c:176 +msgid "" +" \\unrestrict RESTRICT_KEY\n" +" exit restricted mode if key matches\n" +msgstr "" +" \\unrestrict RESTRICT_KEY\n" +" avsluta begränsat läge om nyckeln matchar\n" + +#: help.c:178 +msgid "" " \\watch [[i=]SEC] [c=N] [m=MIN]\n" " execute query every SEC seconds, up to N times,\n" " stop if less than MIN rows are returned\n" @@ -3012,204 +3042,204 @@ msgstr "" " kör fråga var SEK sekund, upp till N gånger,\n" " stoppa om färre än MIN rader returneras\n" -#: help.c:177 help.c:185 help.c:197 help.c:207 help.c:214 help.c:272 help.c:280 -#: help.c:300 help.c:313 help.c:322 help.c:328 +#: 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" -#: help.c:179 +#: help.c:183 msgid "Help\n" msgstr "Hjälp\n" -#: help.c:181 +#: help.c:185 msgid " \\? [commands] show help on backslash commands\n" msgstr " \\? [kommandon] visa hjälp om backstreckkommandon\n" -#: help.c:182 +#: help.c:186 msgid " \\? options show help on psql command-line options\n" msgstr " \\? options visa hjälp för psqls kommandoradflaggor\n" -#: help.c:183 +#: help.c:187 msgid " \\? variables show help on special variables\n" msgstr " \\? variables visa hjälp om speciella variabler\n" -#: help.c:184 +#: help.c:188 msgid " \\h [NAME] help on syntax of SQL commands, * for all commands\n" msgstr " \\h [NAMN] hjälp med syntaxen för SQL-kommandon, * för alla kommandon\n" -#: help.c:187 +#: help.c:191 msgid "Query Buffer\n" msgstr "Frågebuffert\n" -#: help.c:188 +#: help.c:192 msgid " \\e [FILE] [LINE] edit the query buffer (or file) with external editor\n" msgstr " \\e [FIL] [RAD] redigera frågebufferten (eller filen) med extern redigerare\n" -#: help.c:189 +#: help.c:193 msgid " \\ef [FUNCNAME [LINE]] edit function definition with external editor\n" msgstr " \\ef [FUNKNAMN [RAD]] redigera funktionsdefinition med extern redigerare\n" -#: help.c:190 +#: help.c:194 msgid " \\ev [VIEWNAME [LINE]] edit view definition with external editor\n" msgstr " \\ev [FUNKNAMN [RAD]] redigera vydefinition med extern redigerare\n" -#: help.c:191 +#: help.c:195 msgid " \\p show the contents of the query buffer\n" msgstr " \\p visa innehållet i frågebufferten\n" -#: help.c:192 +#: help.c:196 msgid " \\r reset (clear) the query buffer\n" msgstr " \\r nollställ (radera) frågebufferten\n" -#: help.c:194 +#: help.c:198 msgid " \\s [FILE] display history or save it to file\n" msgstr " \\s [FILNAMN] visa kommandohistorien eller spara den i fil\n" -#: help.c:196 +#: help.c:200 msgid " \\w FILE write query buffer to file\n" msgstr " \\w FILNAMN skriv frågebuffert till fil\n" -#: help.c:199 +#: help.c:203 msgid "Input/Output\n" msgstr "In-/Utmatning\n" -#: help.c:200 +#: help.c:204 msgid " \\copy ... perform SQL COPY with data stream to the client host\n" msgstr " \\copy ... utför SQL COPY med dataström till klientvärden\n" -#: help.c:201 +#: help.c:205 msgid " \\echo [-n] [STRING] write string to standard output (-n for no newline)\n" msgstr " \\echo [-n] [TEXT] skriv text till standard ut (-n för ingen nyrad)\n" -#: help.c:202 +#: help.c:206 msgid " \\i FILE execute commands from file\n" msgstr " \\i FILNAMN kör kommandon från fil\n" -#: help.c:203 +#: help.c:207 msgid " \\ir FILE as \\i, but relative to location of current script\n" msgstr " \\ir FIL som \\i, men relativt platsen för aktuellt script\n" -#: help.c:204 +#: help.c:208 msgid " \\o [FILE] send all query results to file or |pipe\n" msgstr " \\o [FIL] skicka frågeresultat till fil eller |rör\n" -#: help.c:205 +#: help.c:209 msgid " \\qecho [-n] [STRING] write string to \\o output stream (-n for no newline)\n" msgstr " \\qecho [-n] [TEXT] skriv text till \\o-utdataströmmen (-n för ingen nyrad)\n" -#: help.c:206 +#: help.c:210 msgid " \\warn [-n] [STRING] write string to standard error (-n for no newline)\n" msgstr " \\warn [-n] [TEXT] skriv text till standard error (-n för ingen nyrad)\n" -#: help.c:209 +#: help.c:213 msgid "Conditional\n" msgstr "Villkor\n" -#: help.c:210 +#: help.c:214 msgid " \\if EXPR begin conditional block\n" msgstr " \\if EXPR starta villkorsblock\n" -#: help.c:211 +#: help.c:215 msgid " \\elif EXPR alternative within current conditional block\n" msgstr " \\elif EXPR alternativ inom aktuellt villkorsblock\n" -#: help.c:212 +#: help.c:216 msgid " \\else final alternative within current conditional block\n" msgstr " \\else avslutningsalternativ inom aktuellt villkorsblock\n" -#: help.c:213 +#: help.c:217 msgid " \\endif end conditional block\n" msgstr " \\endif avsluta villkorsblock\n" -#: help.c:216 +#: help.c:220 msgid "Informational\n" msgstr "Information\n" -#: help.c:217 +#: help.c:221 msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" msgstr " (flaggor: S = lista systemobjekt, x = expanderat läge, + = mer detaljer)\n" -#: help.c:218 +#: help.c:222 msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr " \\d[Sx+] lista tabeller, vyer och sekvenser\n" -#: help.c:219 +#: help.c:223 msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr " \\d[S+] NAMN beskriv tabell, vy, sekvens eller index\n" -#: help.c:220 +#: help.c:224 msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[Sx] [MALL] lista aggregatfunktioner\n" -#: help.c:221 +#: help.c:225 msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[x+] [MALL] lista accessmetoder\n" -#: help.c:222 +#: help.c:226 msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[x+] [AMPTRN [TYPEPTRN]] lista operatorklasser\n" -#: help.c:223 +#: help.c:227 msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[x+] [AMPTRN [TYPEPTRN]] lista operatorfamiljer\n" -#: help.c:224 +#: help.c:228 msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr " \\dAo[x+] [AMPTRN [OPFPTRN]] lista operatorer i operatorfamiljer\n" -#: help.c:225 +#: help.c:229 msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgstr " \\dAp[x+] [AMPTRN [OPFPTRN]] lista supportfunktioner i operatorfamiljer\n" -#: help.c:226 +#: help.c:230 msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[x+] [MALL] lista tabellutrymmen\n" -#: help.c:227 +#: help.c:231 msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[Sx+] [MALL] lista konverteringar\n" -#: help.c:228 +#: help.c:232 msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[x+] [MALL] lista konfigurationsparametrar\n" -#: help.c:229 +#: help.c:233 msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[x+] [MALL] lista typomvandlingar\n" -#: help.c:230 +#: help.c:234 msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr " \\dd[Sx] [MALL] visa objektbeskrivning som inte visas på andra ställen\n" -#: help.c:231 +#: help.c:235 msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[Sx+] [MALL] lista domäner\n" -#: help.c:232 +#: help.c:236 msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp[x] [MALL] lista standardrättigheter\n" -#: help.c:233 +#: help.c:237 msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[Sx+] [MALL] lista främmande tabeller\n" -#: help.c:234 +#: help.c:238 msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[x+] [MALL] lista främmande servrar\n" -#: help.c:235 +#: help.c:239 msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[x+] [MALL] lista främmande tabeller\n" -#: help.c:236 +#: help.c:240 msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[x+] [MALL] lista användarmappning\n" -#: help.c:237 +#: help.c:241 msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[x+] [MALL] lista främmande data-omvandlare\n" -#: help.c:238 +#: help.c:242 msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" @@ -3217,47 +3247,47 @@ msgstr "" " \\df[anptw][Sx+] [FUNKMALL [TYPMALL ...]]\n" " lista [endast agg/normala/procedur/trigger/window] funktioner\n" -#: help.c:240 +#: help.c:244 msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr " \\dF[x+] [MALL] lista textsökkonfigurationer\n" -#: help.c:241 +#: help.c:245 msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr " \\dFd[x+] [MALL] lista textsökordlistor\n" -#: help.c:242 +#: help.c:246 msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr " \\dFp[x+] [MALL] lista textsökparsrar\n" -#: help.c:243 +#: help.c:247 msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr " \\dFt[x+] [MALL] lista textsökmallar\n" -#: help.c:244 +#: help.c:248 msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[Sx+] [MALL] lista roller\n" -#: help.c:245 +#: help.c:249 msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[Sx+] [MALL] lista index\n" -#: help.c:246 +#: help.c:250 msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr " \\dl[x+] lista stora objekt, samma som \\lo_list\n" -#: help.c:247 +#: help.c:251 msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[Sx+] [MALL] lista procedurspråk\n" -#: help.c:248 +#: help.c:252 msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[Sx+] [MALL] lista materialiserade vyer\n" -#: help.c:249 +#: help.c:253 msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[Sx+] [MALL] lista scheman\n" -#: help.c:250 +#: help.c:254 msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" @@ -3265,97 +3295,95 @@ msgstr "" " \\do[Sx+] [OPMALL [TYPMALL [TYPMALL]]]\n" " lista operatorer\n" -#: help.c:252 +#: help.c:256 msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[Sx+] [MALL] lista jämförelser (collation)\n" -#: help.c:253 +#: help.c:257 msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr " \\dp[Sx] [MALL] lista åtkomsträttigheter för tabeller, vyer och sekvenser\n" -#: help.c:254 +#: help.c:258 msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgstr " \\dP[tinx+] [MALL] lista [bara tabell/index] partitionerade relationer [n=nästlad]\n" -#: help.c:255 -#, fuzzy -#| msgid " \\drds[x] [ROLEPTRN [DBPTRN]] list per-database role settings\n" +#: help.c:259 msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" msgstr "" -" \\drds[x] [ROLLMALL1 [DBMALL2]]\n" +" \\drds[x] [ROLLMALL [DBMALL]]\n" " lista rollinställningar per databas\n" -#: help.c:257 +#: help.c:261 msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\drg[Sx] [MALL] lista roll-rättigheter\n" -#: help.c:258 +#: help.c:262 msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[x+] [MALL] lista replikeringspubliceringar\n" -#: help.c:259 +#: help.c:263 msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[x+] [MALL] lista replikeringsprenumerationer\n" -#: help.c:260 +#: help.c:264 msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[Sx+] [MALL] lista sekvenser\n" -#: help.c:261 +#: help.c:265 msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[Sx+] [MALL] lista tabeller\n" -#: help.c:262 +#: help.c:266 msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[Sx+] [MALL] lista datatyper\n" -#: help.c:263 +#: help.c:267 msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[Sx+] [MALL] lista roller\n" -#: help.c:264 +#: help.c:268 msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[Sx+] [MALL] lista vyer\n" -#: help.c:265 +#: help.c:269 msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[x+] [MALL] lista utökningar\n" -#: help.c:266 +#: help.c:270 msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX[x] [MALL] lista utökad statistik\n" -#: help.c:267 +#: help.c:271 msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[x+] [MALL] lista händelsetriggrar\n" -#: help.c:268 +#: help.c:272 msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[x+] [MALL] lista databaser\n" -#: help.c:269 +#: help.c:273 msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] FUNKNAMN visa en funktions definition\n" -#: help.c:270 +#: help.c:274 msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] VYNAMN visa en vys definition\n" -#: help.c:271 +#: help.c:275 msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[Sx] [MALL] samma som \\dp\n" -#: help.c:274 +#: help.c:278 msgid "Large Objects\n" msgstr "Stora objekt\n" -#: help.c:275 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr " \\lo_export LOBOID FIL skriv stort objekt till fil\n" -#: help.c:276 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3363,36 +3391,36 @@ msgstr "" " \\lo_import FIL [KOMMENTAR]\n" " läs stort objekt från fil\n" -#: help.c:278 +#: help.c:282 msgid " \\lo_list[x+] list large objects\n" msgstr " \\lo_list[x+] lista stora objekt\n" -#: help.c:279 +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID ta bort stort objekt\n" -#: help.c:282 +#: help.c:286 msgid "Formatting\n" msgstr "Formatering\n" -#: help.c:283 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr " \\a byt mellan ojusterat och justerat utdataformat\n" -#: help.c:284 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr " \\C [TEXT] sätt tabelltitel, eller nollställ\n" -#: help.c:285 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr " \\f [TEXT] visa eller sätt fältseparatorn för ojusterad utmatning\n" -#: help.c:286 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H slå på/av HTML-utskriftsläge (för närvarande: %s)\n" -#: help.c:288 +#: help.c:292 msgid "" " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" @@ -3410,29 +3438,29 @@ msgstr "" " unicode_border_linestyle|unicode_column_linestyle|\n" " unicode_header_linestyle|xheader_width)\n" -#: help.c:295 +#: help.c:299 #, c-format msgid " \\t [on|off] show only rows (currently %s)\n" msgstr " \\t [on|off] visa endast rader (för närvarande: %s)\n" -#: help.c:297 +#: help.c:301 msgid " \\T [STRING] set HTML
tag attributes, or unset if none\n" msgstr " \\T [TEXT] sätt HTML-tabellens
-attribut, eller nollställ\n" -#: help.c:298 +#: help.c:302 #, c-format msgid " \\x [on|off|auto] toggle expanded output (currently %s)\n" msgstr " \\x [on|off|auto] slå på/av expanderat utmatningsläge (för närvarande: %s)\n" -#: help.c:299 +#: help.c:303 msgid "auto" msgstr "auto" -#: help.c:302 +#: help.c:306 msgid "Connection\n" msgstr "Anslutning\n" -#: help.c:304 +#: help.c:308 #, c-format msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" @@ -3441,7 +3469,7 @@ msgstr "" " \\c[onnect] {[DBNAMN|- ANVÄNDARE|- VÄRD|- PORT|-] | conninfo}\n" " koppla upp mot ny databas (för närvarande \"%s\")\n" -#: help.c:308 +#: help.c:312 msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently no connection)\n" @@ -3449,68 +3477,68 @@ msgstr "" " \\c[onnect] {[DBNAMN|- ANVÄNDARE|- VÄRD|- PORT|-] | conninfo}\n" " koppla upp mot ny databas (för närvarande ingen uppkoppling)\n" -#: help.c:310 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo visa information om aktuell uppkoppling\n" -#: help.c:311 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr " \\encoding [KODNING] visa eller sätt klientens teckenkodning\n" -#: help.c:312 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr " \\password [ANVÄNDARNAMN] byt användares lösenord på ett säkert sätt\n" -#: help.c:315 +#: help.c:319 msgid "Operating System\n" msgstr "Operativsystem\n" -#: help.c:316 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [KATALOG] byt den aktuella katalogen\n" -#: help.c:317 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv PSQLVAR ENVVAR hämta omgivningsvariabel\n" -#: help.c:318 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr " \\setenv NAMN [VÄRDE] sätt eller nollställ omgivningsvariabel\n" -#: help.c:319 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr " \\timing [on|off] slå på/av tidstagning av kommandon (för närvarande: %s)\n" -#: help.c:321 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr " \\! [KOMMANDO] kör kommando i skal eller starta interaktivt skal\n" -#: help.c:324 +#: help.c:328 msgid "Variables\n" msgstr "Variabler\n" -#: help.c:325 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr " \\prompt [TEXT] NAMN be användaren att sätta en intern variabel\n" -#: help.c:326 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr " \\set [NAMN [VÄRDE]] sätt intern variabel, eller lista alla om ingen param\n" -#: help.c:327 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset NAME ta bort intern variabel\n" -#: help.c:330 +#: help.c:334 msgid "Extended Query Protocol\n" msgstr "Utökat frågeprotokoll\n" -#: help.c:331 +#: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" msgstr " \\bind [PARAM]... sätt frågeparameter\n" -#: help.c:332 +#: help.c:336 msgid "" " \\bind_named STMT_NAME [PARAM]...\n" " set query parameters for an existing prepared statement\n" @@ -3518,63 +3546,59 @@ msgstr "" " \\bind_named SATS_NAMN [PARAM]...\n" " ange frågeparametrar för en existerande förberedd sats\n" -#: help.c:334 -#, fuzzy -#| msgid " \\close STMT_NAME close an existing prepared statement\n" +#: help.c:338 msgid "" " \\close_prepared STMT_NAME\n" " close an existing prepared statement\n" -msgstr " \\close SATS_NAMN stäng en existernade förbered sats\n" +msgstr "" +" \\close_prepared SATS_NAME\n" +" stäng en existerande förberedd sats\n" -#: help.c:336 +#: help.c:340 msgid " \\endpipeline exit pipeline mode\n" msgstr " \\endpipeline avsluta pipeline-läge\n" -#: help.c:337 +#: help.c:341 msgid " \\flush flush output data to the server\n" msgstr " \\flush flusha utdata till servern\n" -#: help.c:338 +#: help.c:342 msgid " \\flushrequest send request to the server to flush its output buffer\n" msgstr " \\flushrequest skicka förfrågan till servern att flusha utdatabuffern\n" -#: help.c:339 -#, fuzzy -#| msgid "" -#| " \\getresults [NUM_RES] read NUM_RES pending results. All pending results are\n" -#| " read if no argument is provided\n" +#: help.c:343 msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argument\n" msgstr "" -" \\getresults [NUM_RES] läs NUM_RES väntande resultat. Alla väntande resultat\n" -" läses in om inget argument anges\n" +" \\getresults [NUM_RES] läs NUM_RES väntande resultat eller alla\n" +" om argument inget argument anges\n" -#: help.c:340 +#: help.c:344 msgid " \\parse STMT_NAME create a prepared statement\n" msgstr " \\parse SATS_NAMN skapa en förberedd sats\n" -#: help.c:341 +#: help.c:345 msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" msgstr " \\sendpipeline skicka en utökad fråga på en aktiv pipeline\n" -#: help.c:342 +#: help.c:346 msgid " \\startpipeline enter pipeline mode\n" msgstr " \\startpipeline gå in i pipeline-läge\n" -#: help.c:343 +#: help.c:347 msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" msgstr " \\syncpipeline lägg till en synkroniseringspunkt till aktiv pipeline\n" -#: help.c:382 +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" msgstr "Lista av variabler som hanteras speciellt\n" -#: help.c:384 +#: help.c:388 msgid "psql variables:\n" msgstr "psql-variabler:\n" -#: help.c:386 +#: help.c:390 msgid "" " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n" @@ -3584,7 +3608,7 @@ msgstr "" " eller \\set NAMN VÄRDE inne i psql\n" "\n" -#: help.c:388 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3592,7 +3616,7 @@ msgstr "" " AUTOCOMMIT\n" " om satt så kommer efterföljande SQL-kommandon commit:as automatiskt\n" -#: help.c:390 +#: help.c:394 msgid "" " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" @@ -3602,7 +3626,7 @@ msgstr "" " bestämmer skiftläge för att komplettera SQL-nyckelord\n" " [lower, upper, preserve-lower, preserve-upper]\n" -#: help.c:393 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3610,7 +3634,7 @@ msgstr "" " DBNAME\n" " den uppkopplade databasens namn\n" -#: help.c:395 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3620,7 +3644,7 @@ msgstr "" " bestämmer vilken indata som skrivs till standard ut\n" " [all, errors, none, queries]\n" -#: help.c:398 +#: help.c:402 msgid "" " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" @@ -3630,7 +3654,7 @@ msgstr "" " om satt, visa interna frågor som körs av backåtstreckkommandon:\n" " om satt till \"noexec\", bara visa dem utan att köra\n" -#: help.c:401 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3638,7 +3662,7 @@ msgstr "" " ENCODING\n" " aktuell teckenkodning för klient\n" -#: help.c:403 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3646,7 +3670,7 @@ msgstr "" " ERROR\n" " \"true\" om sista frågan misslyckades, \"false\" annars\n" -#: help.c:405 +#: help.c:409 msgid "" " FETCH_COUNT\n" " the number of result rows to fetch and display at a time (0 = unlimited)\n" @@ -3654,7 +3678,7 @@ msgstr "" " FETCH_COUNT\n" " antal resultatrader som hämtas och visas åt gången (0=obegränsat)\n" -#: help.c:407 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3662,7 +3686,7 @@ msgstr "" " HIDE_TABLEAM\n" " om satt så visas inte accessmetoder\n" -#: help.c:409 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3670,7 +3694,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " om satt så visas inte komprimeringsmetoder\n" -#: help.c:411 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3678,7 +3702,7 @@ msgstr "" " HISTCONTROL\n" " styr kommandohistoriken [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:413 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3686,7 +3710,7 @@ msgstr "" " HISTFILE\n" " filnamn för att spara kommandohistoriken i\n" -#: help.c:415 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3694,7 +3718,7 @@ msgstr "" " HISTSIZE\n" " maximalt antal kommandon som sparas i kommandohistoriken\n" -#: help.c:417 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3702,7 +3726,7 @@ msgstr "" " HOST\n" " den uppkopplade databasens värd\n" -#: help.c:419 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3710,7 +3734,7 @@ msgstr "" " IGNOREEOF\n" " antal EOF som behövs för att avsluta en interaktiv session\n" -#: help.c:421 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3718,7 +3742,7 @@ msgstr "" " LASTOID\n" " värdet av den senast påverkade OID:en\n" -#: help.c:423 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3728,7 +3752,7 @@ msgstr "" " LAST_ERROR_SQLSTATE\n" " meddelande och SQLSTATE för sista felet eller en tom sträng och \"00000\" om det inte varit fel\n" -#: help.c:426 +#: help.c:430 msgid "" " ON_ERROR_ROLLBACK\n" " if set, an error doesn't stop a transaction (uses implicit savepoints)\n" @@ -3736,7 +3760,7 @@ msgstr "" " ON_ERROR_ROLLBACK\n" " om satt, ett fel stoppar inte en transaktion (använder implicita sparpunkter)\n" -#: help.c:428 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3744,7 +3768,7 @@ msgstr "" " ON_ERROR_STOP\n" " avsluta batchkörning vid fel\n" -#: help.c:430 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3752,7 +3776,7 @@ msgstr "" " PORT\n" " värdport för den aktuella uppkopplingen\n" -#: help.c:432 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3760,7 +3784,7 @@ msgstr "" " PROMPT1\n" " anger standardprompten för psql\n" -#: help.c:434 +#: help.c:438 msgid "" " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" @@ -3768,7 +3792,7 @@ msgstr "" " PROMPT2\n" " anger den prompt som används om en sats forsätter på efterföljande rad\n" -#: help.c:436 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3776,7 +3800,7 @@ msgstr "" " PROMPT3\n" " anger den prompt som används för COPY ... FROM STDIN\n" -#: help.c:438 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3784,7 +3808,7 @@ msgstr "" " QUIET\n" " kör tyst (samma som flaggan -q)\n" -#: help.c:440 +#: help.c:444 msgid "" " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" @@ -3792,7 +3816,7 @@ msgstr "" " ROW_COUNT\n" " antal rader som returnerades eller påverkades av senaste frågan alternativt 0\n" -#: help.c:442 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3802,7 +3826,7 @@ msgstr "" " SERVER_VERSION_NAME\n" " serverns version (i kort sträng eller numeriskt format)\n" -#: help.c:445 +#: help.c:449 msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" @@ -3810,7 +3834,7 @@ msgstr "" " ERROR\n" " \"true\" om sista frågan misslyckades, \"false\" annars\n" -#: help.c:447 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3818,7 +3842,7 @@ msgstr "" " SHELL_EXIT_CODE\n" " exit-kod för senaste skalkommandot\n" -#: help.c:449 +#: help.c:453 msgid "" " SHOW_ALL_RESULTS\n" " show all results of a combined query (\\;) instead of only the last\n" @@ -3827,7 +3851,7 @@ msgstr "" " visa alla resultat från en kombinerad fråga (\\;) istället för bara\n" " det sista\n" -#: help.c:451 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3835,7 +3859,7 @@ msgstr "" " SHOW_CONTEXT\n" " styr visning av meddelandekontextfält [never, errors, always]\n" -#: help.c:453 +#: help.c:457 msgid "" " SINGLELINE\n" " if set, end of line terminates SQL commands (same as -S option)\n" @@ -3843,7 +3867,7 @@ msgstr "" " SINGLELINE\n" " om satt, slut på raden avslutar SQL-kommandon (samma som flaggan -S )\n" -#: help.c:455 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3851,7 +3875,7 @@ msgstr "" " SINGLESTEP\n" " stegningsläge (samma som flaggan -s)\n" -#: help.c:457 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3859,7 +3883,7 @@ msgstr "" " SQLSTATE\n" " SQLSTATE för sista frågan eller \"00000\" om det inte varit fel\n" -#: help.c:459 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3867,7 +3891,7 @@ msgstr "" " USER\n" " den uppkopplade databasanvändaren\n" -#: help.c:461 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3875,7 +3899,7 @@ msgstr "" " VERBOSITY\n" " styr verbositet för felrapporter [default, verbose, terse, sqlstate]\n" -#: help.c:463 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3887,14 +3911,16 @@ msgstr "" " VERSION_NUM\n" " psql:s version (i lång sträng, kort sträng eller numeriskt format)\n" -#: help.c:467 +#: help.c:471 #, c-format msgid "" " WATCH_INTERVAL\n" " number of seconds \\watch waits between executions (default %s)\n" msgstr "" +" WATCH_INTERVAL\n" +" antal sekunder som \\watch väntar mellan körningar (standard %s)\n" -#: help.c:471 +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3902,7 +3928,7 @@ msgstr "" "\n" "Visningsinställningar:\n" -#: help.c:473 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3912,7 +3938,7 @@ msgstr "" " eller \\pset NAMN [VÄRDE] inne i psql\n" "\n" -#: help.c:475 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -3920,7 +3946,7 @@ msgstr "" " border\n" " ramstil (nummer)\n" -#: help.c:477 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -3928,7 +3954,7 @@ msgstr "" " columns\n" " målvidd för wrappade format\n" -#: help.c:479 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3936,7 +3962,7 @@ msgstr "" " expanded (eller x)\n" " expanderat utmatningsläge [on, off, auto]\n" -#: help.c:481 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -3945,7 +3971,7 @@ msgstr "" " fieldsep\n" " fältseparator för ej justerad utdata (standard \"%s\")\n" -#: help.c:484 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3953,7 +3979,7 @@ msgstr "" " fieldsep_zero\n" " sätt fältseparator för ej justerad utdata till noll-byte\n" -#: help.c:486 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3961,7 +3987,7 @@ msgstr "" " footer\n" " slå på/av visning av tabellfot [on, off]\n" -#: help.c:488 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3969,7 +3995,7 @@ msgstr "" " format\n" " sätt utdataformat [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:490 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -3977,7 +4003,7 @@ msgstr "" " linestyle\n" " sätt ramlinjestil [ascii, old-ascii, unicode]\n" -#: help.c:492 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -3985,7 +4011,7 @@ msgstr "" " null\n" " sätt sträng som visas istället för null-värden\n" -#: help.c:494 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -3993,7 +4019,7 @@ msgstr "" " numericlocale\n" " slå på visning av lokalspecifika tecken för gruppering av siffror\n" -#: help.c:496 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4001,7 +4027,7 @@ msgstr "" " pager\n" " styr när en extern pagenerare används [yes, no, always]\n" -#: help.c:498 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4009,7 +4035,7 @@ msgstr "" " recordsep\n" " post (rad) separator för ej justerad utdata\n" -#: help.c:500 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4017,7 +4043,7 @@ msgstr "" " recordsep_zero\n" " sätt postseparator för ej justerad utdata till noll-byte\n" -#: help.c:502 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4027,7 +4053,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:505 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4035,7 +4061,7 @@ msgstr "" " title\n" " sätt tabelltitel för efterkommande tabellutskrifter\n" -#: help.c:507 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4043,7 +4069,7 @@ msgstr "" " tuples_only\n" " om satt, bara tabelldatan visas\n" -#: help.c:509 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4055,7 +4081,7 @@ msgstr "" " unicode_header_linestyle\n" " sätter stilen på Unicode-linjer [single, double]\n" -#: help.c:513 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4065,7 +4091,7 @@ msgstr "" " sätt maximal bredd på rubriken för expanderat utmatningsläge\n" " [full, column, page, integer value]\n" -#: help.c:517 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -4073,7 +4099,7 @@ msgstr "" "\n" "Omgivningsvariabler:\n" -#: help.c:521 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4083,7 +4109,7 @@ msgstr "" " eller \\setenv NAMN [VÄRDE] inne psql\n" "\n" -#: help.c:523 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4095,7 +4121,7 @@ msgstr "" " eller \\setenv NAMN [VÄRDE] inne i psql\n" "\n" -#: help.c:526 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4103,7 +4129,7 @@ msgstr "" " COLUMNS\n" " antal kolumner i wrappade format\n" -#: help.c:528 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4111,7 +4137,7 @@ msgstr "" " PGAPPNAME\n" " samma som anslutningsparametern \"application_name\"\n" -#: help.c:530 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4119,7 +4145,7 @@ msgstr "" " PGDATABASE\n" " samma som anslutningsparametern \"dbname\"\n" -#: help.c:532 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4127,7 +4153,7 @@ msgstr "" " PGHOST\n" " samma som anslutningsparametern \"host\"\n" -#: help.c:534 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4135,7 +4161,7 @@ msgstr "" " PGPASSFILE\n" " lösenordsfilnamn\n" -#: help.c:536 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4143,7 +4169,7 @@ msgstr "" " PGPASSWORD\n" " uppkoppingens lösenord (rekommenderas inte)\n" -#: help.c:538 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4151,7 +4177,7 @@ msgstr "" " PGPORT\n" " samma som anslutingsparametern \"port\"\n" -#: help.c:540 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4159,7 +4185,7 @@ msgstr "" " PGUSER\n" " samma som anslutningsparametern \"user\"\n" -#: help.c:542 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4167,7 +4193,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " redigerare som används av kommanona \\e, \\ef och \\ev\n" -#: help.c:544 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4175,7 +4201,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " hur radnummer anges när redigerare startas\n" -#: help.c:546 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4183,7 +4209,7 @@ msgstr "" " PSQL_HISTORY\n" " alternativ plats för kommandohistorikfilen\n" -#: help.c:548 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4191,7 +4217,7 @@ msgstr "" " PAGER\n" " namnet på den externa pageneraren\n" -#: help.c:551 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4199,7 +4225,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " namn på externt paginerarprogram för \\watch\n" -#: help.c:554 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4207,7 +4233,7 @@ msgstr "" " PSQLRC\n" " alternativ plats för användarens \".psqlrc\"-fil\n" -#: help.c:556 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4215,7 +4241,7 @@ msgstr "" " SHELL\n" " skalet som används av kommandot \\!\n" -#: help.c:558 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4223,11 +4249,11 @@ msgstr "" " TMPDIR\n" " katalog för temporärfiler\n" -#: help.c:618 +#: help.c:622 msgid "Available help:\n" msgstr "Tillgänglig hjälp:\n" -#: help.c:713 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -4246,7 +4272,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:736 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -6860,7 +6886,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:6627 +#: tab-complete.in.c:6633 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/scripts/po/ru.po b/src/bin/scripts/po/ru.po index 2afac56ec193f..52c7155062286 100644 --- a/src/bin/scripts/po/ru.po +++ b/src/bin/scripts/po/ru.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: pgscripts (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-05 08:25+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -19,22 +19,22 @@ 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" -#: ../../../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 "подсказка: " @@ -50,44 +50,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 "не удалось синхронизировать с ФС файл \"%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,10 +177,10 @@ msgid "Interrupted\n" msgstr "Прервано\n" #: ../../fe_utils/print.c:3188 -#, c-format +#, fuzzy, c-format msgid "" -"Cannot print table contents: number of cells %lld is equal to or exceeds " -"maximum %lld.\n" +"Cannot print table contents: number of cells % is equal to or " +"exceeds maximum %zu.\n" msgstr "" "Вывести содержимое таблицы нельзя: число ячеек %lld достигло максимума " "%lld.\n" @@ -192,8 +192,9 @@ msgstr "" "Ошибка добавления заголовка таблицы: превышен предел числа столбцов (%d).\n" #: ../../fe_utils/print.c:3272 -#, c-format -msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" +#, fuzzy, c-format +msgid "" +"Cannot add cell to table content: total cell count of % exceeded.\n" msgstr "" "Ошибка добавления ячейки в таблицу: превышен предел числа ячеек (%lld).\n" @@ -212,54 +213,54 @@ 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" @@ -268,19 +269,19 @@ 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:872 vacuumdb.c:1170 +#: 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:873 vacuumdb.c:1171 +#: clusterdb.c:275 reindexdb.c:899 vacuumdb.c:1338 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [ПАРАМЕТР]... [ИМЯ_БД]\n" -#: clusterdb.c:277 createdb.c:300 createuser.c:417 dropdb.c:174 dropuser.c:172 -#: pg_isready.c:229 reindexdb.c:874 vacuumdb.c:1172 +#: 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" @@ -289,50 +290,50 @@ 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:889 vacuumdb.c:1201 +#: 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" @@ -341,40 +342,40 @@ msgstr "" "\n" "Параметры подключения:\n" -#: clusterdb.c:287 createuser.c:449 dropdb.c:182 dropuser.c:180 vacuumdb.c:1202 +#: 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=ИМЯ компьютер с сервером баз данных или каталог " "сокетов\n" -#: clusterdb.c:288 createuser.c:450 dropdb.c:183 dropuser.c:181 vacuumdb.c:1203 +#: 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=ПОРТ порт сервера баз данных\n" -#: clusterdb.c:289 dropdb.c:184 vacuumdb.c:1204 +#: 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:1205 +#: 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:1206 +#: 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:1207 +#: clusterdb.c:291 dropdb.c:186 vacuumdb.c:1375 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=ИМЯ_БД сменить опорную базу данных\n" -#: clusterdb.c:293 +#: clusterdb.c:292 #, c-format msgid "" "\n" @@ -383,8 +384,8 @@ 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:897 vacuumdb.c:1209 +#: 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" @@ -393,13 +394,13 @@ 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:898 vacuumdb.c:1210 +#: 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" @@ -434,17 +435,17 @@ 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" @@ -453,65 +454,65 @@ msgstr "" "%s создаёт базу данных PostgreSQL.\n" "\n" -#: createdb.c:299 +#: createdb.c:301 #, c-format msgid " %s [OPTION]... [DBNAME] [DESCRIPTION]\n" msgstr " %s [ПАРАМЕТР]... [ИМЯ_БД] [ОПИСАНИЕ]\n" # well-spelled: ПРОСТР -#: 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:878 +#: 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=ЛОКАЛЬ имя встроенной локали для базы данных\n" -#: createdb.c:308 +#: createdb.c:310 #, c-format msgid " --icu-locale=LOCALE ICU locale setting for the database\n" msgstr " --icu-locale=ЛОКАЛЬ локаль ICU для базы данных\n" -#: createdb.c:309 +#: createdb.c:311 #, c-format msgid " --icu-rules=RULES ICU rules setting for the database\n" msgstr "" " --icu-rules=ПРАВИЛА настройка правил сортировки ICU для базы " "данных\n" -#: createdb.c:310 +#: createdb.c:312 #, c-format msgid "" " --locale-provider={builtin|libc|icu}\n" @@ -522,13 +523,13 @@ msgstr "" " провайдер локали для основного правила " "сортировки БД\n" -#: createdb.c:312 +#: createdb.c:314 #, c-format msgid " -O, --owner=OWNER database user to own the new database\n" msgstr "" " -O, --owner=ВЛАДЕЛЕЦ пользователь-владелец новой базы данных\n" -#: createdb.c:313 +#: createdb.c:315 #, c-format msgid "" " -S, --strategy=STRATEGY database creation strategy wal_log or " @@ -537,22 +538,22 @@ 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, --template=ШАБЛОН исходная база данных для копирования\n" -#: createdb.c:315 reindexdb.c:887 +#: 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:888 +#: createdb.c:318 reindexdb.c:914 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: createdb.c:318 reindexdb.c:890 +#: createdb.c:320 reindexdb.c:916 #, c-format msgid "" " -h, --host=HOSTNAME database server host or socket directory\n" @@ -560,33 +561,33 @@ msgstr "" " -h, --host=ИМЯ компьютер с сервером баз данных или каталог " "сокетов\n" -#: createdb.c:319 reindexdb.c:891 +#: 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:892 +#: 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:893 +#: 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:894 +#: createdb.c:324 reindexdb.c:920 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password запросить пароль\n" -#: createdb.c:323 reindexdb.c:895 +#: createdb.c:325 reindexdb.c:921 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=ИМЯ_БД сменить опорную базу данных\n" -#: createdb.c:324 +#: createdb.c:326 #, c-format msgid "" "\n" @@ -624,17 +625,17 @@ 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" @@ -643,12 +644,12 @@ 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 [ПАРАМЕТР]... [ИМЯ_РОЛИ]\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" @@ -658,7 +659,7 @@ msgstr "" "привилегией\n" " ADMIN\n" -#: createuser.c:420 +#: createuser.c:422 #, c-format msgid "" " -c, --connection-limit=N connection limit for role (default: no limit)\n" @@ -666,29 +667,29 @@ msgstr "" " -c, --connection-limit=N предел подключений для роли\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=РОЛЬ новая роль будет членом заданной роли\n" -#: createuser.c:425 +#: createuser.c:427 #, c-format msgid " --role=ROLE (same as --member-of, deprecated)\n" msgstr " --role=РОЛЬ (устаревшая альтернатива --member-of)\n" -#: createuser.c:426 +#: createuser.c:428 #, c-format msgid "" " -i, --inherit role inherits privileges of roles it is a\n" @@ -698,57 +699,57 @@ msgstr "" "она\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=РОЛЬ заданная роль будет членом новой роли\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" @@ -757,7 +758,7 @@ msgstr "" " -v, --valid-until=ДАТА_ВРЕМЯ\n" " дата и время истечения срока пароля для роли\n" -#: createuser.c:440 +#: createuser.c:442 #, c-format msgid "" " --interactive prompt for missing role name and attributes " @@ -767,7 +768,7 @@ msgstr "" " --interactive запрашивать отсутствующие атрибуты и имя роли,\n" " а не использовать значения по умолчанию\n" -#: createuser.c:442 +#: createuser.c:444 #, c-format msgid "" " --bypassrls role can bypass row-level security (RLS) policy\n" @@ -775,7 +776,7 @@ msgstr "" " --bypassrls роль не будет подчиняться политикам защиты на\n" " уровне строк (RLS)\n" -#: createuser.c:443 +#: createuser.c:445 #, c-format msgid "" " --no-bypassrls role cannot bypass row-level security (RLS) " @@ -785,12 +786,12 @@ msgstr "" " --no-bypassrls роль будет подчиняться политикам защиты на\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" @@ -798,7 +799,7 @@ msgstr "" " --no-replication роль не может инициировать репликацию\n" " (по умолчанию)\n" -#: createuser.c:451 +#: createuser.c:453 #, c-format msgid "" " -U, --username=USERNAME user name to connect as (not the one to create)\n" @@ -820,12 +821,12 @@ msgstr "База данных \"%s\" будет удалена безвозвр msgid "Are you sure?" msgstr "Вы уверены? (y/n)" -#: 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" @@ -834,12 +835,12 @@ msgstr "" "%s удаляет базу данных PostgreSQL.\n" "\n" -#: dropdb.c:173 +#: dropdb.c:172 #, c-format msgid " %s [OPTION]... DBNAME\n" msgstr " %s [ПАРАМЕТР]... БД\n" -#: dropdb.c:176 +#: dropdb.c:175 #, c-format msgid "" " -f, --force try to terminate other connections before " @@ -848,12 +849,12 @@ 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" @@ -874,12 +875,12 @@ 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" @@ -888,7 +889,7 @@ msgstr "" "%s удаляет роль PostgreSQL.\n" "\n" -#: dropuser.c:174 +#: dropuser.c:175 #, c-format msgid "" " -i, --interactive prompt before deleting anything, and prompt for\n" @@ -897,13 +898,13 @@ 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" @@ -1002,59 +1003,59 @@ 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:514 vacuumdb.c:521 vacuumdb.c:528 -#: vacuumdb.c:535 vacuumdb.c:542 vacuumdb.c:549 vacuumdb.c:556 vacuumdb.c:563 -#: vacuumdb.c:570 vacuumdb.c:577 vacuumdb.c:584 +#: 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:828 +#: reindexdb.c:854 #, c-format msgid "%s: reindexing database \"%s\"\n" msgstr "%s: переиндексация базы данных \"%s\"\n" -#: reindexdb.c:871 +#: reindexdb.c:897 #, c-format msgid "" "%s reindexes a PostgreSQL database.\n" @@ -1063,29 +1064,29 @@ msgstr "" "%s переиндексирует базу данных PostgreSQL.\n" "\n" -#: reindexdb.c:875 +#: reindexdb.c:901 #, c-format msgid " -a, --all reindex all databases\n" msgstr " -a, --all переиндексировать все базы данных\n" -#: reindexdb.c:876 +#: reindexdb.c:902 #, c-format msgid " --concurrently reindex concurrently\n" msgstr "" " --concurrently переиндексировать в неблокирующем режиме\n" -#: reindexdb.c:877 +#: reindexdb.c:903 #, c-format msgid " -d, --dbname=DBNAME database to reindex\n" msgstr " -d, --dbname=БД имя базы для переиндексации\n" -#: reindexdb.c:879 +#: reindexdb.c:905 #, c-format msgid " -i, --index=INDEX recreate specific index(es) only\n" msgstr "" " -i, --index=ИНДЕКС пересоздать только указанный индекс(ы)\n" -#: reindexdb.c:880 +#: reindexdb.c:906 #, c-format msgid "" " -j, --jobs=NUM use this many concurrent connections to " @@ -1094,24 +1095,24 @@ msgstr "" " -j, --jobs=ЧИСЛО запускать для переиндексации заданное число\n" " заданий\n" -#: reindexdb.c:881 +#: reindexdb.c:907 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet не выводить сообщения\n" -#: reindexdb.c:882 +#: reindexdb.c:908 #, c-format msgid " -s, --system reindex system catalogs only\n" msgstr "" " -s, --system переиндексировать только системные каталоги\n" -#: reindexdb.c:883 +#: reindexdb.c:909 #, c-format msgid " -S, --schema=SCHEMA reindex specific schema(s) only\n" msgstr "" " -S, --schema=СХЕМА переиндексировать только указанную схему(ы)\n" -#: reindexdb.c:884 +#: reindexdb.c:910 #, c-format msgid " -t, --table=TABLE reindex specific table(s) only\n" msgstr "" @@ -1119,19 +1120,19 @@ msgstr "" "таблицу(ы)\n" # well-spelled: ПРОСТР -#: reindexdb.c:885 +#: reindexdb.c:911 #, c-format msgid " --tablespace=TABLESPACE tablespace where indexes are rebuilt\n" msgstr "" " --tablespace=ТАБЛ_ПРОСТР табличное пространство, в котором будут\n" " перестраиваться индексы\n" -#: reindexdb.c:886 +#: reindexdb.c:912 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose выводить исчерпывающие сообщения\n" -#: reindexdb.c:896 +#: reindexdb.c:922 #, c-format msgid "" "\n" @@ -1140,28 +1141,33 @@ 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\"" -#: 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 +#, fuzzy, c-format +msgid "cannot use the \"%s\" option without \"%s\" or \"%s\"" +msgstr "параметр \"%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" @@ -1169,57 +1175,57 @@ 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:501 +#: vacuumdb.c:546 msgid "Generating minimal optimizer statistics (1 target)" msgstr "Вычисление минимальной статистики для оптимизатора (1 запись)" -#: vacuumdb.c:502 +#: vacuumdb.c:547 msgid "Generating medium optimizer statistics (10 targets)" msgstr "Вычисление средней статистики для оптимизатора (10 записей)" -#: vacuumdb.c:503 +#: vacuumdb.c:548 msgid "Generating default (full) optimizer statistics" msgstr "Вычисление стандартной (полной) статистики для оптимизатора" -#: vacuumdb.c:594 +#: vacuumdb.c:646 #, c-format msgid "%s: processing database \"%s\": %s\n" msgstr "%s: обработка базы данных \"%s\": %s\n" -#: vacuumdb.c:597 +#: vacuumdb.c:649 #, c-format msgid "%s: vacuuming database \"%s\"\n" msgstr "%s: очистка базы данных \"%s\"\n" -#: vacuumdb.c:1158 +#: vacuumdb.c:1325 #, c-format msgid "vacuuming of table \"%s\" in database \"%s\" failed: %s" msgstr "очистить таблицу \"%s\" в базе \"%s\" не удалось: %s" -#: vacuumdb.c:1161 +#: vacuumdb.c:1328 #, c-format msgid "vacuuming of database \"%s\" failed: %s" msgstr "очистить базу данных \"%s\" не удалось: %s" -#: vacuumdb.c:1169 +#: vacuumdb.c:1336 #, c-format msgid "" "%s cleans and analyzes a PostgreSQL database.\n" @@ -1228,12 +1234,12 @@ msgstr "" "%s очищает и анализирует базу данных PostgreSQL.\n" "\n" -#: vacuumdb.c:1173 +#: vacuumdb.c:1340 #, c-format msgid " -a, --all vacuum all databases\n" msgstr " -a, --all очистить все базы данных\n" -#: vacuumdb.c:1174 +#: vacuumdb.c:1341 #, c-format msgid " --buffer-usage-limit=SIZE size of ring buffer used for vacuum\n" msgstr "" @@ -1241,18 +1247,18 @@ msgstr "" "при\n" " очистке\n" -#: vacuumdb.c:1175 +#: vacuumdb.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to vacuum\n" msgstr " -d, --dbname=ИМЯ_БД очистить указанную базу данных\n" -#: vacuumdb.c:1176 +#: vacuumdb.c:1343 #, c-format msgid " --disable-page-skipping disable all page-skipping behavior\n" msgstr "" " --disable-page-skipping исключить все варианты пропуска страниц\n" -#: vacuumdb.c:1177 +#: vacuumdb.c:1344 #, c-format msgid "" " -e, --echo show the commands being sent to the " @@ -1260,19 +1266,19 @@ msgid "" msgstr "" " -e, --echo отображать команды, отправляемые серверу\n" -#: vacuumdb.c:1178 +#: vacuumdb.c:1345 #, c-format msgid " -f, --full do full vacuuming\n" msgstr " -f, --full произвести полную очистку\n" -#: vacuumdb.c:1179 +#: vacuumdb.c:1346 #, c-format msgid " -F, --freeze freeze row transaction information\n" msgstr "" " -F, --freeze заморозить информацию о транзакциях в " "строках\n" -#: vacuumdb.c:1180 +#: vacuumdb.c:1347 #, c-format msgid "" " --force-index-cleanup always remove index entries that point to " @@ -1282,7 +1288,7 @@ msgstr "" "указывающие\n" " на мёртвые кортежи\n" -#: vacuumdb.c:1181 +#: vacuumdb.c:1348 #, c-format msgid "" " -j, --jobs=NUM use this many concurrent connections to " @@ -1291,7 +1297,7 @@ msgstr "" " -j, --jobs=ЧИСЛО запускать для очистки заданное число " "заданий\n" -#: vacuumdb.c:1182 +#: vacuumdb.c:1349 #, c-format msgid "" " --min-mxid-age=MXID_AGE minimum multixact ID age of tables to " @@ -1300,7 +1306,7 @@ msgstr "" " --min-mxid-age=ВОЗРАСТ минимальный возраст мультитранзакций для\n" " таблиц, подлежащих очистке\n" -#: vacuumdb.c:1183 +#: vacuumdb.c:1350 #, c-format msgid "" " --min-xid-age=XID_AGE minimum transaction ID age of tables to " @@ -1310,7 +1316,14 @@ msgstr "" "таблиц,\n" " подлежащих очистке\n" -#: vacuumdb.c:1184 +#: vacuumdb.c:1351 +#, c-format +msgid "" +" --missing-stats-only only analyze relations with missing " +"statistics\n" +msgstr "" + +#: vacuumdb.c:1352 #, c-format msgid "" " --no-index-cleanup don't remove index entries that point to " @@ -1319,12 +1332,12 @@ msgstr "" " --no-index-cleanup не удалять элементы индекса, указывающие\n" " на мёртвые кортежи\n" -#: vacuumdb.c:1185 +#: vacuumdb.c:1353 #, c-format msgid " --no-process-main skip the main relation\n" msgstr " --no-process-main пропускать основное отношение\n" -#: vacuumdb.c:1186 +#: vacuumdb.c:1354 #, c-format msgid "" " --no-process-toast skip the TOAST table associated with the " @@ -1333,7 +1346,7 @@ msgstr "" " --no-process-toast пропускать TOAST-таблицу, связанную\n" " с очищаемой таблицей\n" -#: vacuumdb.c:1187 +#: vacuumdb.c:1355 #, c-format msgid "" " --no-truncate don't truncate empty pages at the end of " @@ -1342,7 +1355,7 @@ msgstr "" " --no-truncate не отсекать пустые страницы в конце " "таблицы\n" -#: vacuumdb.c:1188 +#: vacuumdb.c:1356 #, c-format msgid "" " -n, --schema=SCHEMA vacuum tables in the specified schema(s) " @@ -1351,7 +1364,7 @@ msgstr "" " -n, --schema=СХЕМА очищать таблицы только в указанной " "схеме(ах)\n" -#: vacuumdb.c:1189 +#: vacuumdb.c:1357 #, c-format msgid "" " -N, --exclude-schema=SCHEMA do not vacuum tables in the specified " @@ -1359,7 +1372,7 @@ msgid "" msgstr "" " -N, --exclude-schema=СХЕМА не очищать таблицы в указанной схеме(ах)\n" -#: vacuumdb.c:1190 +#: vacuumdb.c:1358 #, c-format msgid "" " -P, --parallel=PARALLEL_WORKERS use this many background workers for " @@ -1369,12 +1382,12 @@ msgstr "" " по возможности использовать для очистки\n" " заданное число фоновых процессов\n" -#: vacuumdb.c:1191 +#: vacuumdb.c:1359 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet не выводить сообщения\n" -#: vacuumdb.c:1192 +#: vacuumdb.c:1360 #, c-format msgid "" " --skip-locked skip relations that cannot be immediately " @@ -1383,29 +1396,29 @@ msgstr "" " --skip-locked пропускать отношения, которые не удаётся\n" " заблокировать немедленно\n" -#: vacuumdb.c:1193 +#: vacuumdb.c:1361 #, c-format msgid " -t, --table='TABLE[(COLUMNS)]' vacuum specific table(s) only\n" msgstr "" " -t, --table='ТАБЛ[(СТОЛБЦЫ)]' очистить только указанную таблицу(ы)\n" -#: vacuumdb.c:1194 +#: vacuumdb.c:1362 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose выводить исчерпывающие сообщения\n" -#: vacuumdb.c:1195 +#: vacuumdb.c:1363 #, c-format msgid "" " -V, --version output version information, then exit\n" msgstr " -V, --version показать версию и выйти\n" -#: vacuumdb.c:1196 +#: vacuumdb.c:1364 #, c-format msgid " -z, --analyze update optimizer statistics\n" msgstr " -z, --analyze обновить статистику оптимизатора\n" -#: vacuumdb.c:1197 +#: vacuumdb.c:1365 #, c-format msgid "" " -Z, --analyze-only only update optimizer statistics; no " @@ -1414,7 +1427,7 @@ msgstr "" " -Z, --analyze-only только обновить статистику оптимизатора,\n" " не очищать БД\n" -#: vacuumdb.c:1198 +#: vacuumdb.c:1366 #, c-format msgid "" " --analyze-in-stages only update optimizer statistics, in " @@ -1426,12 +1439,12 @@ msgstr "" " (в несколько проходов для большей " "скорости), без очистки\n" -#: vacuumdb.c:1200 +#: vacuumdb.c:1368 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" -#: vacuumdb.c:1208 +#: vacuumdb.c:1376 #, c-format msgid "" "\n" diff --git a/src/interfaces/ecpg/ecpglib/po/ru.po b/src/interfaces/ecpg/ecpglib/po/ru.po index 91b23dbc9fc07..18282264d3081 100644 --- a/src/interfaces/ecpg/ecpglib/po/ru.po +++ b/src/interfaces/ecpg/ecpglib/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: ecpglib (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2019-09-09 13:30+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,11 +17,11 @@ 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" -#: connect.c:221 +#: connect.c:226 msgid "empty message text" msgstr "пустое сообщение" -#: connect.c:386 connect.c:645 +#: connect.c:391 connect.c:653 msgid "" msgstr "<ПО_УМОЛЧАНИЮ>" @@ -196,7 +196,7 @@ msgstr "подключение к серверу потеряно" msgid "SQL error: %s\n" msgstr "ошибка SQL: %s\n" -#: execute.c:2186 execute.c:2193 +#: execute.c:2189 execute.c:2196 msgid "" msgstr "<>" diff --git a/src/interfaces/ecpg/preproc/po/ru.po b/src/interfaces/ecpg/preproc/po/ru.po index 874da38e6428d..b4da548eb4a48 100644 --- a/src/interfaces/ecpg/preproc/po/ru.po +++ b/src/interfaces/ecpg/preproc/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: ecpg (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 07:22+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,47 +17,47 @@ 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" -#: 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" @@ -66,7 +66,7 @@ msgstr "" "%s - препроцессор SQL-вставок в программах на C для PostgreSQL.\n" "\n" -#: ecpg.c:38 +#: ecpg.c:39 #, c-format msgid "" "Usage:\n" @@ -77,12 +77,12 @@ msgstr "" " %s [ПАРАМЕТР]... ФАЙЛ...\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" @@ -91,7 +91,7 @@ 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" @@ -100,38 +100,38 @@ msgstr "" " -C РЕЖИМ установить режим совместимости; допустимый РЕЖИМ:\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 СИМВОЛ определить (define) СИМВОЛ\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 разобрать также системные включаемые файлы\n" -#: ecpg.c:52 +#: ecpg.c:53 #, c-format msgid " -I DIRECTORY search DIRECTORY for include files\n" msgstr " -I КАТАЛОГ искать включаемые файлы в указанном каталоге\n" -#: ecpg.c:53 +#: ecpg.c:54 #, c-format msgid " -o OUTFILE write result to OUTFILE\n" msgstr " -o ФАЙЛ записать результат в ФАЙЛ\n" -#: ecpg.c:54 +#: ecpg.c:55 #, c-format msgid "" " -r OPTION specify run-time behavior; OPTION can be:\n" @@ -140,28 +140,28 @@ msgstr "" " -r ПАРАМЕТР определить режим выполнения; допустимый ПАРАМЕТР:\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" # skip-rule: space-before-period -#: ecpg.c:60 +#: ecpg.c:61 #, c-format msgid "" "\n" @@ -172,7 +172,7 @@ msgstr "" "Если выходной файл не указан, к имени входного файла без расширения .pgc\n" "добавляется .c.\n" -#: ecpg.c:62 +#: ecpg.c:63 #, c-format msgid "" "\n" @@ -181,7 +181,7 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: ecpg.c:63 +#: ecpg.c:64 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" @@ -231,7 +231,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" @@ -241,258 +241,253 @@ msgstr "ошибка при удалении выходного файла \"%s\ 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 "" "необрабатываемое предыдущее состояние при обнаружении закрывающего " "апострофа\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:624 +#: 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 "оператор CLOSE DATABASE с параметром AT не поддерживается" -#: preproc.y:2081 +#: preproc.y:1184 #, c-format msgid "AT option not allowed in CONNECT statement" msgstr "оператор CONNECT с параметром AT не поддерживается" -#: preproc.y:2121 +#: preproc.y:1221 #, c-format msgid "AT option not allowed in DISCONNECT statement" msgstr "оператор DISCONNECT с параметром AT не поддерживается" -#: preproc.y:2176 +#: preproc.y:1274 #, c-format msgid "AT option not allowed in SET CONNECTION statement" msgstr "оператор SET CONNECTION с параметром AT не поддерживается" -#: preproc.y:2198 +#: preproc.y:1292 #, c-format msgid "AT option not allowed in TYPE statement" msgstr "оператор TYPE с параметром AT не поддерживается" -#: preproc.y:2207 +#: preproc.y:1300 #, c-format msgid "AT option not allowed in VAR statement" msgstr "оператор VAR с параметром AT не поддерживается" -#: preproc.y:2214 +#: preproc.y:1307 #, c-format msgid "AT option not allowed in WHENEVER statement" msgstr "оператор WHENEVER с параметром AT не поддерживается" -#: 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 "" "в режиме INFORMIX нельзя использовать \"database\" в качестве имени курсора" -#: 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 " @@ -501,165 +496,175 @@ 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\" - не указатель" @@ -679,27 +684,32 @@ msgstr "переменная \"%s\" - не структура и не объед msgid "variable \"%s\" is not an array" msgstr "переменная \"%s\" - не массив" -#: variable.c:232 variable.c:254 +#: variable.c:220 +#, fuzzy, 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:492 +#: variable.c:517 #, c-format msgid "indicator variable must have an integer type" msgstr "переменная-индикатор должна быть целочисленной" -#: variable.c:509 +#: variable.c:534 #, c-format msgid "unrecognized data type name \"%s\"" msgstr "нераспознанное имя типа данных \"%s\"" -#: variable.c:520 variable.c:528 variable.c:545 variable.c:548 +#: variable.c:548 variable.c:556 variable.c:573 variable.c:576 #, c-format msgid "multidimensional arrays are not supported" msgstr "многомерные массивы не поддерживаются" -#: variable.c:537 +#: variable.c:565 #, c-format msgid "" "multilevel pointers (more than 2 levels) are not supported; found %d level" @@ -715,12 +725,12 @@ msgstr[2] "" "многоуровневые указатели (больше 2 уровней) не поддерживаются, обнаружено %d " "уровней" -#: variable.c:542 +#: variable.c:570 #, c-format msgid "pointer to pointer is not supported for this data type" msgstr "для этого типа данных указатели на указатели не поддерживаются" -#: variable.c:562 +#: variable.c:590 #, c-format msgid "multidimensional arrays for structures are not supported" msgstr "многомерные массивы структур не поддерживаются" diff --git a/src/interfaces/libpq/po/de.po b/src/interfaces/libpq/po/de.po index 6ba83e508965e..e416fe0892120 100644 --- a/src/interfaces/libpq/po/de.po +++ b/src/interfaces/libpq/po/de.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-08-08 06:10+0000\n" -"PO-Revision-Date: 2025-08-08 11:22+0200\n" +"POT-Creation-Date: 2025-08-28 18:10+0000\n" +"PO-Revision-Date: 2025-08-28 21:25+0200\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -17,236 +17,211 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: ../libpq-oauth/oauth-curl.c:306 ../libpq-oauth/oauth-curl.c:1936 -#, fuzzy, c-format -#| msgid "database removal failed: %s" +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#, c-format msgid "libcurl easy handle removal failed: %s" -msgstr "Löschen der Datenbank fehlgeschlagen: %s" +msgstr "libcurl-Easy-Handle-Removal fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:326 -#, fuzzy, c-format -#| msgid "creation of new role failed: %s" +#: ../libpq-oauth/oauth-curl.c:327 +#, c-format msgid "libcurl multi handle cleanup failed: %s" -msgstr "Erzeugen der neuen Rolle fehlgeschlagen: %s" +msgstr "libcurl-Multi-Handle-Cleanup fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:389 ../libpq-oauth/oauth-curl.c:400 -#, fuzzy, c-format -#| msgid "could not establish SSL connection: %s" +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#, c-format msgid "failed to set %s on OAuth connection: %s" -msgstr "konnte SSL-Verbindung nicht aufbauen: %s" +msgstr "konnte %s nicht setzen für die OAuth-Verbindung: %s" -#: ../libpq-oauth/oauth-curl.c:411 -#, fuzzy, c-format -#| msgid "failed to send SSL negotiation response: %m" +#: ../libpq-oauth/oauth-curl.c:412 +#, c-format msgid "failed to get %s from OAuth response: %s" -msgstr "konnte SSL-Verhandlungsantwort nicht senden: %m" +msgstr "konnte %s nicht ermitteln aus der OAuth-Antwort: %s" -#: ../libpq-oauth/oauth-curl.c:514 ../libpq-oauth/oauth-curl.c:624 +#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 #, c-format msgid "JSON is too deeply nested" -msgstr "" +msgstr "JSON ist zu tief geschachtelt" -#: ../libpq-oauth/oauth-curl.c:539 +#: ../libpq-oauth/oauth-curl.c:540 #, c-format msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "" +msgstr "interner Fehler: startete Feld »%s« bevor Feld »%s« beendet war" -#: ../libpq-oauth/oauth-curl.c:566 -#, fuzzy, c-format -#| msgid "Key %s is duplicated." +#: ../libpq-oauth/oauth-curl.c:567 +#, c-format msgid "field \"%s\" is duplicated" -msgstr "Schlüssel %s ist doppelt vorhanden." +msgstr "Feld »%s« ist doppelt vorhanden" -#: ../libpq-oauth/oauth-curl.c:591 +#: ../libpq-oauth/oauth-curl.c:592 #, c-format msgid "internal error: field '%s' still active at end of object" -msgstr "" +msgstr "interner Fehler: Feld »%s« ist am Ende des Objekts noch aktiv" -#: ../libpq-oauth/oauth-curl.c:606 ../libpq-oauth/oauth-curl.c:666 -#, fuzzy, c-format -#| msgid "cannot extract elements from an object" +#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#, c-format msgid "top-level element must be an object" -msgstr "kann keine Elemente aus einem Objekt auswählen" +msgstr "Element auf oberster Ebene muss ein Objekt sein" -#: ../libpq-oauth/oauth-curl.c:647 -#, fuzzy, c-format -#| msgid "internal error: received unexpected database pattern_id %d" +#: ../libpq-oauth/oauth-curl.c:648 +#, c-format msgid "internal error: found unexpected array end while parsing field '%s'" -msgstr "interner Fehler: unerwartete pattern_id %d für Datenbank empfangen" +msgstr "interner Fehler: unerwartetes Array-Ende gefunden beim Parsen von Feld »%s«" -#: ../libpq-oauth/oauth-curl.c:702 +#: ../libpq-oauth/oauth-curl.c:703 #, c-format msgid "internal error: scalar target found at nesting level %d" -msgstr "" +msgstr "interner Fehler: skalares Ziel auf Verschachtelungsebene %d gefunden" -#: ../libpq-oauth/oauth-curl.c:712 +#: ../libpq-oauth/oauth-curl.c:713 #, c-format msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "" +msgstr "interner Fehler: skalares Feld »%s« würde zweimal zugewiesen werden" -#: ../libpq-oauth/oauth-curl.c:734 +#: ../libpq-oauth/oauth-curl.c:735 #, c-format msgid "internal error: array member found at nesting level %d" -msgstr "" +msgstr "interner Fehler: Array-Mitglied gefunden auf Verschachtelungsebene %d" -#: ../libpq-oauth/oauth-curl.c:769 -#, fuzzy, c-format -#| msgid "no column alias was provided" +#: ../libpq-oauth/oauth-curl.c:770 +#, c-format msgid "no content type was provided" -msgstr "Spaltenalias fehlt" +msgstr "kein Content-Typ wurde angegeben" -#: ../libpq-oauth/oauth-curl.c:808 -#, fuzzy, c-format -#| msgid "unexpected message type \"%c\"" +#: ../libpq-oauth/oauth-curl.c:809 +#, c-format msgid "unexpected content type: \"%s\"" -msgstr "unerwarteter Message-Typ »%c«" +msgstr "unerwarteter Content-Typ: »%s«" -#: ../libpq-oauth/oauth-curl.c:833 -#, fuzzy, c-format -#| msgid "SSL certificate's name contains embedded null" +#: ../libpq-oauth/oauth-curl.c:834 +#, c-format msgid "response contains embedded NULLs" -msgstr "Name im SSL-Zertifikat enthält Null-Byte" +msgstr "Antwort enthält Null-Bytes" -#: ../libpq-oauth/oauth-curl.c:843 -#, fuzzy, c-format -#| msgid "index \"%s\" is not valid" +#: ../libpq-oauth/oauth-curl.c:844 +#, c-format msgid "response is not valid UTF-8" -msgstr "Index »%s« ist nicht gültig" +msgstr "Antwort ist kein gültiges UTF-8" -#: ../libpq-oauth/oauth-curl.c:883 -#, fuzzy, c-format -#| msgid "File \"%s\" is missing." +#: ../libpq-oauth/oauth-curl.c:884 +#, c-format msgid "field \"%s\" is missing" -msgstr "Die Datei »%s« fehlt." +msgstr "Feld »%s« fehlt" -#: ../libpq-oauth/oauth-curl.c:1117 +#: ../libpq-oauth/oauth-curl.c:1118 #, c-format msgid "provider rejected the oauth_client_secret" -msgstr "" +msgstr "Provider hat das oauth_client_secret abgelehnt" -#: ../libpq-oauth/oauth-curl.c:1181 -#, fuzzy, c-format -#| msgid "failed to restore old locale \"%s\"" +#: ../libpq-oauth/oauth-curl.c:1182 +#, c-format msgid "failed to create epoll set: %m" -msgstr "konnte alte Locale »%s« nicht wiederherstellen" +msgstr "konnte epoll-Set nicht erzeugen: %m" -#: ../libpq-oauth/oauth-curl.c:1188 -#, fuzzy, c-format -#| msgid "failed to send signal to postmaster: %m" +#: ../libpq-oauth/oauth-curl.c:1189 +#, c-format msgid "failed to create timerfd: %m" -msgstr "konnte Signal nicht an Postmaster senden: %m" +msgstr "konnte timerfd nicht erzeugen: %m" -#: ../libpq-oauth/oauth-curl.c:1194 -#, fuzzy, c-format -#| msgid "failed to send signal to postmaster: %m" +#: ../libpq-oauth/oauth-curl.c:1195 +#, c-format msgid "failed to add timerfd to epoll set: %m" -msgstr "konnte Signal nicht an Postmaster senden: %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:1204 -#, fuzzy, c-format -#| msgid "could not create socket: %s" +#: ../libpq-oauth/oauth-curl.c:1205 +#, c-format msgid "failed to create kqueue: %m" -msgstr "konnte Socket nicht erzeugen: %s" +msgstr "konnte kqueue nicht erzeugen: %m" -#: ../libpq-oauth/oauth-curl.c:1217 -#, fuzzy, c-format -#| msgid "failed to send signal to postmaster: %m" +#: ../libpq-oauth/oauth-curl.c:1218 +#, c-format msgid "failed to create timer kqueue: %m" -msgstr "konnte Signal nicht an Postmaster senden: %m" +msgstr "konnte Timer-kqueue nicht erzeugen: %m" -#: ../libpq-oauth/oauth-curl.c:1261 ../libpq-oauth/oauth-curl.c:1333 +#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 #, c-format msgid "unknown libcurl socket operation: %d" -msgstr "" +msgstr "unbekannte libcurl-Socket-Operation: %d" -#: ../libpq-oauth/oauth-curl.c:1278 -#, fuzzy, c-format -#| msgid "could not send data to client: %m" +#: ../libpq-oauth/oauth-curl.c:1279 +#, c-format msgid "could not add to epoll set: %m" -msgstr "konnte Daten nicht an den Client senden: %m" +msgstr "konnte nicht zum epoll-Set hinzufügen: %m" -#: ../libpq-oauth/oauth-curl.c:1282 -#, fuzzy, c-format -#| msgid "could not delete file \"%s\": %m" +#: ../libpq-oauth/oauth-curl.c:1283 +#, c-format msgid "could not delete from epoll set: %m" -msgstr "konnte Datei »%s« nicht löschen: %m" +msgstr "konnte nicht aus dem epoll-Set löschen: %m" -#: ../libpq-oauth/oauth-curl.c:1286 -#, fuzzy, c-format -#| msgid "could not duplicate stdout: %m" +#: ../libpq-oauth/oauth-curl.c:1287 +#, c-format msgid "could not update epoll set: %m" -msgstr "konnte Standardausgabe nicht duplizieren: %m" +msgstr "konnte epoll-Set nicht aktualisieren: %m" -#: ../libpq-oauth/oauth-curl.c:1340 -#, fuzzy, c-format -#| msgid "could not set timer: %m" +#: ../libpq-oauth/oauth-curl.c:1347 +#, c-format msgid "could not modify kqueue: %m" -msgstr "konnte Timer nicht setzen: %m" +msgstr "konnte kqueue nicht modifizieren: %m" -#: ../libpq-oauth/oauth-curl.c:1364 -#, fuzzy, c-format -#| msgid "could not delete file \"%s\": %m" +#: ../libpq-oauth/oauth-curl.c:1371 +#, c-format msgid "could not delete from kqueue: %m" -msgstr "konnte Datei »%s« nicht löschen: %m" +msgstr "konnte nicht aus kqueue löschen: %m" -#: ../libpq-oauth/oauth-curl.c:1367 -#, fuzzy, c-format -#| msgid "could not set timer: %m" +#: ../libpq-oauth/oauth-curl.c:1374 +#, c-format msgid "could not add to kqueue: %m" -msgstr "konnte Timer nicht setzen: %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:1419 +#: ../libpq-oauth/oauth-curl.c:1473 #, c-format msgid "setting timerfd to %ld: %m" -msgstr "" +msgstr "setze timerfd auf %ld: %m" -#: ../libpq-oauth/oauth-curl.c:1449 +#: ../libpq-oauth/oauth-curl.c:1503 #, c-format msgid "deleting kqueue timer: %m" -msgstr "" +msgstr "lösche kqueue-Timer: %m" -#: ../libpq-oauth/oauth-curl.c:1456 +#: ../libpq-oauth/oauth-curl.c:1510 #, c-format msgid "removing kqueue timer from multiplexer: %m" -msgstr "" +msgstr "entferne kqueue-Timer aus dem Multiplexer: %m" -#: ../libpq-oauth/oauth-curl.c:1467 +#: ../libpq-oauth/oauth-curl.c:1521 #, c-format msgid "setting kqueue timer to %ld: %m" -msgstr "" +msgstr "setze kqueue-Timer auf %ld: %m" -#: ../libpq-oauth/oauth-curl.c:1474 +#: ../libpq-oauth/oauth-curl.c:1528 #, c-format msgid "adding kqueue timer to multiplexer: %m" -msgstr "" +msgstr "füge kqueue-Timer zum Multiplexer hinzu: %m" -#: ../libpq-oauth/oauth-curl.c:1497 +#: ../libpq-oauth/oauth-curl.c:1553 #, c-format -msgid "getting timerfd value: %m" -msgstr "" +msgid "checking timer expiration: %m" +msgstr "prüfe Ablauf des Timers: %m" -#: ../libpq-oauth/oauth-curl.c:1519 +#: ../libpq-oauth/oauth-curl.c:1715 #, c-format -msgid "checking kqueue for timeout: %m" -msgstr "" - -#: ../libpq-oauth/oauth-curl.c:1651 -#, fuzzy, c-format -#| msgid "failed to restore old locale" msgid "failed to create libcurl multi handle" -msgstr "konnte alte Locale nicht wiederherstellen" +msgstr "konnte libcurl-Multi-Handle nicht erzeugen" -#: ../libpq-oauth/oauth-curl.c:1671 -#, fuzzy, c-format -#| msgid "failed to restore old locale" +#: ../libpq-oauth/oauth-curl.c:1735 +#, c-format msgid "failed to create libcurl handle" -msgstr "konnte alte Locale nicht wiederherstellen" +msgstr "konnte libcurl-Handle nicht erzeugen" -#: ../libpq-oauth/oauth-curl.c:1755 ../libpq-oauth/oauth-curl.c:1796 -#: ../libpq-oauth/oauth-curl.c:2109 ../libpq-oauth/oauth-curl.c:2270 -#: ../libpq-oauth/oauth-curl.c:2331 ../libpq-oauth/oauth-curl.c:2420 -#: ../libpq-oauth/oauth-curl.c:2714 ../libpq-oauth/oauth-curl.c:2905 +#: ../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 #: 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 @@ -257,96 +232,93 @@ msgstr "konnte alte Locale nicht wiederherstellen" #: 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:1315 fe-exec.c:3254 fe-exec.c:4293 fe-exec.c:4459 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:210 fe-protocol3.c:233 -#: fe-protocol3.c:256 fe-protocol3.c:273 fe-protocol3.c:294 fe-protocol3.c:368 -#: fe-protocol3.c:732 fe-protocol3.c:972 fe-protocol3.c:1553 -#: fe-protocol3.c:1862 fe-protocol3.c:2263 fe-secure-common.c:110 +#: 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-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "Speicher aufgebraucht" -#: ../libpq-oauth/oauth-curl.c:1783 -#, fuzzy, c-format -#| msgid "tsquery is too large" +#: ../libpq-oauth/oauth-curl.c:1847 +#, c-format msgid "response is too large" -msgstr "tsquery ist zu groß" +msgstr "Antwort ist zu groß" -#: ../libpq-oauth/oauth-curl.c:1825 +#: ../libpq-oauth/oauth-curl.c:1889 #, c-format msgid "failed to queue HTTP request: %s" -msgstr "" +msgstr "Einreihen der HTTP-Anfrage fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:1842 ../libpq-oauth/oauth-curl.c:1895 -#, fuzzy, c-format -#| msgid "checkpoint request failed" +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#, c-format msgid "asynchronous HTTP request failed: %s" -msgstr "Checkpoint-Anforderung fehlgeschlagen" +msgstr "asynchrone HTTP-Anfrage fehlgeschlagen: %s" -#: ../libpq-oauth/oauth-curl.c:1947 +#: ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "no result was retrieved for the finished handle" -msgstr "" +msgstr "für die abgeschlossene Handle wurde kein Ergebnis abgerufen" -#: ../libpq-oauth/oauth-curl.c:2080 ../libpq-oauth/oauth-curl.c:2386 -#: ../libpq-oauth/oauth-curl.c:2465 -#, fuzzy, c-format -#| msgid "unexpected section code %d" +#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 +#: ../libpq-oauth/oauth-curl.c:2529 +#, c-format msgid "unexpected response code %ld" -msgstr "unerwarteter Abschnittscode %d" +msgstr "unerwarteter Antwortcode %ld" -#: ../libpq-oauth/oauth-curl.c:2152 -#, fuzzy, c-format -#| msgid "server certificate for \"%s\" does not match host name \"%s\"" +#: ../libpq-oauth/oauth-curl.c:2216 +#, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" -msgstr "Server-Zertifikat für »%s« stimmt nicht mit dem Hostnamen »%s« überein" +msgstr "der Issuer-Identifier (%s) stimmt nicht mit oauth_issuer (%s) überein" -#: ../libpq-oauth/oauth-curl.c:2179 +#: ../libpq-oauth/oauth-curl.c:2243 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" -msgstr "" +msgstr "Issuer »%s« stellt keinen Device-Authorization-Endpunkt zur Verfügung" -#: ../libpq-oauth/oauth-curl.c:2205 +#: ../libpq-oauth/oauth-curl.c:2269 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" -msgstr "" +msgstr "Device-Authorization-Endpunkt »%s« muss HTTPS verwenden" -#: ../libpq-oauth/oauth-curl.c:2214 +#: ../libpq-oauth/oauth-curl.c:2278 #, c-format msgid "token endpoint \"%s\" must use HTTPS" -msgstr "" +msgstr "Token-Endpunkt »%s« muss HTTPS verwenden" -#: ../libpq-oauth/oauth-curl.c:2523 +#: ../libpq-oauth/oauth-curl.c:2587 #, c-format msgid "slow_down interval overflow" -msgstr "" +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:2559 +#: ../libpq-oauth/oauth-curl.c:2623 #, c-format msgid "Visit %s and enter the code: %s\n" -msgstr "" +msgstr "Besuchen Sie %s und geben Sie den Code ein: %s\n" -#: ../libpq-oauth/oauth-curl.c:2564 +#: ../libpq-oauth/oauth-curl.c:2628 #, c-format msgid "device prompt failed" -msgstr "" +msgstr "Device-Prompt fehlgeschlagen" -#: ../libpq-oauth/oauth-curl.c:2620 +#: ../libpq-oauth/oauth-curl.c:2684 #, c-format msgid "curl_global_init previously failed during OAuth setup" -msgstr "" +msgstr "curl_global_init zuvor beim OAuth-Setup fehlgeschlagen" -#: ../libpq-oauth/oauth-curl.c:2639 +#: ../libpq-oauth/oauth-curl.c:2703 #, c-format msgid "curl_global_init failed during OAuth setup" -msgstr "" +msgstr "curl_global_init beim OAuth-Setup fehlgeschlagen" -#: ../libpq-oauth/oauth-curl.c:2660 +#: ../libpq-oauth/oauth-curl.c:2724 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -355,6 +327,11 @@ msgid "" "\tlibcurl reports that it is not. Recompile libpq against\n" "\tthe installed version of libcurl." msgstr "" +"libcurl ist nicht mehr thread-safe\n" +"\tCurl-Initialisierung wurde als thread-safe berichtet, als libpq\n" +"\tkompiliert wurde, aber die aktuell installierte Version von libcurl\n" +"\tberichtet, dass sie nicht thread-safe ist. Kompilieren Sie libpq neu\n" +"\tmit der installierten Version von libcurl." #: fe-auth-scram.c:228 #, c-format @@ -1181,8 +1158,8 @@ msgstr "unerwartete Leerzeichen in »%s« gefunden, verwenden Sie stattdessen Pr 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:3459 -#: fe-protocol3.c:987 fe-protocol3.c:1020 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "Speicher aufgebraucht\n" @@ -1206,12 +1183,12 @@ msgstr "Passwort wurde aus Datei »%s« gelesen" 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:3533 +#: fe-exec.c:469 fe-exec.c:3544 #, 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:2068 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" @@ -1238,134 +1215,134 @@ msgstr "PGresult kann nicht mehr als INT_MAX Tupel enthalten" msgid "size_t overflow" msgstr "Überlauf von size_t" -#: fe-exec.c:1438 fe-exec.c:1507 fe-exec.c:1553 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "Befehlszeichenkette ist ein NULL-Zeiger" -#: fe-exec.c:1444 fe-exec.c:3003 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s im Pipeline-Modus nicht erlaubt" -#: fe-exec.c:1512 fe-exec.c:1558 fe-exec.c:1652 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, 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:1548 fe-exec.c:1647 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "Anweisungsname ist ein NULL-Zeiger" -#: fe-exec.c:1689 fe-exec.c:3379 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "keine Verbindung mit dem Server" -#: fe-exec.c:1697 fe-exec.c:3387 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "ein anderer Befehl ist bereits in Ausführung" -#: fe-exec.c:1727 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "während COPY können keine Befehle aufgereiht werden" -#: fe-exec.c:1846 +#: fe-exec.c:1857 #, 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:2205 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "unerwarteter asyncStatus: %d" -#: fe-exec.c:2361 +#: fe-exec.c:2372 #, 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:2378 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "COPY von neuem PQexec beendet" -#: fe-exec.c:2394 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec ist während COPY BOTH nicht erlaubt" -#: fe-exec.c:2630 +#: fe-exec.c:2641 #, c-format msgid "unrecognized message type \"%c\"" msgstr "unbekannter Message-Typ »%c«" -#: fe-exec.c:2702 fe-exec.c:2756 fe-exec.c:2824 fe-protocol3.c:1999 +#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 #, c-format msgid "no COPY in progress" msgstr "keine COPY in Ausführung" -#: fe-exec.c:3010 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "Verbindung im falschen Zustand" -#: fe-exec.c:3053 +#: fe-exec.c:3064 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "kann Pipeline-Modus nicht einschalten, Verbindung ist nicht inaktiv" -#: fe-exec.c:3089 fe-exec.c:3110 +#: fe-exec.c:3100 fe-exec.c:3121 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "kann Pipeline-Modus nicht beenden, wegen nicht eingesammelter Ergebnisse" -#: fe-exec.c:3093 +#: fe-exec.c:3104 #, 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:3104 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "kann Pipeline-Modus nicht beenden während COPY aktiv ist" -#: fe-exec.c:3303 +#: fe-exec.c:3314 #, 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:3422 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "ungültiger ExecStatusType-Kode" -#: fe-exec.c:3449 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresult ist kein Fehlerresultat\n" -#: fe-exec.c:3517 fe-exec.c:3540 +#: fe-exec.c:3528 fe-exec.c:3551 #, 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:3555 +#: fe-exec.c:3566 #, 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:3866 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "konnte Ergebnis vom Server nicht interpretieren: %s" -#: fe-exec.c:4141 fe-exec.c:4255 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "unvollständiges Mehrbyte-Zeichen" -#: fe-exec.c:4143 fe-exec.c:4274 +#: fe-exec.c:4154 fe-exec.c:4285 #, c-format msgid "invalid multibyte character" msgstr "ungültiges Mehrbytezeichen" @@ -1457,181 +1434,196 @@ msgstr "ungültiges Socket" msgid "%s() failed: %s" msgstr "%s() fehlgeschlagen: %s" -#: fe-protocol3.c:188 +#: fe-protocol3.c:189 #, 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:401 +#: fe-protocol3.c:402 #, 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:443 +#: fe-protocol3.c:444 #, 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:462 +#: fe-protocol3.c:468 #, 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:480 +#: fe-protocol3.c:503 #, 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:532 fe-protocol3.c:572 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "nicht genug Daten in »T«-Nachricht" -#: fe-protocol3.c:643 fe-protocol3.c:849 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "Speicher für Anfrageergebnis aufgebraucht" -#: fe-protocol3.c:712 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "nicht genug Daten in »t«-Nachricht" -#: fe-protocol3.c:771 fe-protocol3.c:803 fe-protocol3.c:821 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "nicht genug Daten in »D«-Nachricht" -#: fe-protocol3.c:777 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "unerwartete Feldzahl in »D«-Nachricht" -#: fe-protocol3.c:1033 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "keine Fehlermeldung verfügbar\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1081 fe-protocol3.c:1100 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " bei Zeichen %s" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "DETAIL: %s\n" -#: fe-protocol3.c:1116 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "TIP: %s\n" -#: fe-protocol3.c:1119 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "ANFRAGE: %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "KONTEXT: %s\n" -#: fe-protocol3.c:1135 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "SCHEMANAME: %s\n" -#: fe-protocol3.c:1139 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "TABELLENNAME: %s\n" -#: fe-protocol3.c:1143 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "SPALTENNAME: %s\n" -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "DATENTYPNAME: %s\n" -#: fe-protocol3.c:1151 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "CONSTRAINT-NAME: %s\n" -#: fe-protocol3.c:1163 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "ORT: " -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1167 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1362 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "ZEILE %d: " -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1442 #, 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:1430 +#: fe-protocol3.c:1448 #, 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:1437 +#: fe-protocol3.c:1455 #, 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:1443 +#: fe-protocol3.c:1461 #, 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:1449 +#: fe-protocol3.c:1467 #, 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:1455 +#: fe-protocol3.c:1473 #, 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:1480 +#: fe-protocol3.c:1498 #, 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:1483 +#: fe-protocol3.c:1501 #, 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:1490 +#: fe-protocol3.c:1508 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "ungültige Protokollverhandlungsnachricht empfangen: Nachricht zu kurz" -#: fe-protocol3.c:1894 +#: fe-protocol3.c:1574 +#, 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 +#, 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 +#, 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 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: Text COPY OUT nicht ausgeführt" -#: fe-protocol3.c:2269 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "Protokollfehler: kein Funktionsergebnis" -#: fe-protocol3.c:2281 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "Protokollfehler: id=0x%x" diff --git a/src/interfaces/libpq/po/ka.po b/src/interfaces/libpq/po/ka.po index 869e425ed9a1d..13c37ff3a05ea 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-07-19 13:10+0000\n" -"PO-Revision-Date: 2025-07-20 04:37+0200\n" +"POT-Creation-Date: 2025-08-24 00:10+0000\n" +"PO-Revision-Date: 2025-08-24 09:40+0200\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -16,213 +16,213 @@ 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.7\n" -#: ../libpq-oauth/oauth-curl.c:306 ../libpq-oauth/oauth-curl.c:1936 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "libcurl-ის ადვილი დამმუშავებლის წაშლა ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:326 +#: ../libpq-oauth/oauth-curl.c:327 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "libcurl-ის დამმუშავებლების მოსუფთავება ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:389 ../libpq-oauth/oauth-curl.c:400 +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "%s-ის დაყენება OAuth კავშირზე ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:411 +#: ../libpq-oauth/oauth-curl.c:412 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "OAuth-ის პასუხიდან %s-ის მიღება ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:514 ../libpq-oauth/oauth-curl.c:624 +#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 #, c-format msgid "JSON is too deeply nested" msgstr "JSON მეტისმეტად ღრმადაა ჩადგმული" -#: ../libpq-oauth/oauth-curl.c:539 +#: ../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:566 +#: ../libpq-oauth/oauth-curl.c:567 #, c-format msgid "field \"%s\" is duplicated" msgstr "ველი \"%s\" დუბლირებულია" -#: ../libpq-oauth/oauth-curl.c:591 +#: ../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:606 ../libpq-oauth/oauth-curl.c:666 +#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 #, c-format msgid "top-level element must be an object" msgstr "უმაღლესი დონის ელემენტი ობიექტი უნდა იყოს" -#: ../libpq-oauth/oauth-curl.c:647 +#: ../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:702 +#: ../libpq-oauth/oauth-curl.c:703 #, c-format msgid "internal error: scalar target found at nesting level %d" msgstr "შიდა შეცდომა: აღმოჩენილია სკალარული სამიზნე ერთმანეთში ჩალაგების დონეზე %d" -#: ../libpq-oauth/oauth-curl.c:712 +#: ../libpq-oauth/oauth-curl.c:713 #, c-format msgid "internal error: scalar field '%s' would be assigned twice" msgstr "შიდა შეცდომა: შეიძლება, სკალარული ველი '%s' ორჯერაა მინიჭებული" -#: ../libpq-oauth/oauth-curl.c:734 +#: ../libpq-oauth/oauth-curl.c:735 #, c-format msgid "internal error: array member found at nesting level %d" msgstr "შიდა შეცდომა: ერთმანეთში ჩალაგების დონეზე %d აღმოჩენილია მასივის წევრი" -#: ../libpq-oauth/oauth-curl.c:769 +#: ../libpq-oauth/oauth-curl.c:770 #, c-format msgid "no content type was provided" msgstr "შემცველობის ტიპი მოწოდებული არაა" -#: ../libpq-oauth/oauth-curl.c:808 +#: ../libpq-oauth/oauth-curl.c:809 #, c-format msgid "unexpected content type: \"%s\"" msgstr "მოულოდნელი შემცველობის ტიპი: \"%s\"" -#: ../libpq-oauth/oauth-curl.c:833 +#: ../libpq-oauth/oauth-curl.c:834 #, c-format msgid "response contains embedded NULLs" msgstr "პასუხი ჩაშენებულ NULL-ებს შეიცავს" -#: ../libpq-oauth/oauth-curl.c:843 +#: ../libpq-oauth/oauth-curl.c:844 #, c-format msgid "response is not valid UTF-8" msgstr "პასუხი არასწორი UTF-8-ა" -#: ../libpq-oauth/oauth-curl.c:883 +#: ../libpq-oauth/oauth-curl.c:884 #, c-format msgid "field \"%s\" is missing" msgstr "ველი \"%s\" აკლია" -#: ../libpq-oauth/oauth-curl.c:1117 +#: ../libpq-oauth/oauth-curl.c:1118 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "პროვაიდერმა უარჰყო oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1181 +#: ../libpq-oauth/oauth-curl.c:1182 #, c-format msgid "failed to create epoll set: %m" msgstr "epoll-ის ნაკრების შექმნა ჩავარდა: %m" -#: ../libpq-oauth/oauth-curl.c:1188 +#: ../libpq-oauth/oauth-curl.c:1189 #, c-format msgid "failed to create timerfd: %m" msgstr "timerfd-ის შექმნა ჩავარდა: %m" -#: ../libpq-oauth/oauth-curl.c:1194 +#: ../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:1204 +#: ../libpq-oauth/oauth-curl.c:1205 #, c-format msgid "failed to create kqueue: %m" msgstr "kqueue-ის შექმნა ჩავარდა: %m" -#: ../libpq-oauth/oauth-curl.c:1217 +#: ../libpq-oauth/oauth-curl.c:1218 #, c-format msgid "failed to create timer kqueue: %m" msgstr "ტაიმერის kqueue-ის შექმნა ჩავარდა: %m" -#: ../libpq-oauth/oauth-curl.c:1261 ../libpq-oauth/oauth-curl.c:1333 +#: ../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:1278 +#: ../libpq-oauth/oauth-curl.c:1279 #, c-format msgid "could not add to epoll set: %m" msgstr "epoll-ის ნაკრებში ჩამატება შეუძლებელია: %m" -#: ../libpq-oauth/oauth-curl.c:1282 +#: ../libpq-oauth/oauth-curl.c:1283 #, c-format msgid "could not delete from epoll set: %m" msgstr "epoll-ის ნაკრებიდან წაშლა შეუძლებელია: %m" -#: ../libpq-oauth/oauth-curl.c:1286 +#: ../libpq-oauth/oauth-curl.c:1287 #, c-format msgid "could not update epoll set: %m" msgstr "epoll-ების ნაკრების განახლება ჩავარდა: %m" -#: ../libpq-oauth/oauth-curl.c:1340 +#: ../libpq-oauth/oauth-curl.c:1347 #, c-format msgid "could not modify kqueue: %m" msgstr "kqueue-ის შეცვლა შეუძლებელია: %m" -#: ../libpq-oauth/oauth-curl.c:1364 +#: ../libpq-oauth/oauth-curl.c:1371 #, c-format msgid "could not delete from kqueue: %m" msgstr "kqueue-დან წაშლა შეუძლებელია: %m" -#: ../libpq-oauth/oauth-curl.c:1367 +#: ../libpq-oauth/oauth-curl.c:1374 #, c-format msgid "could not add to kqueue: %m" msgstr "kqueue-ში ჩამატება შეუძლებელია: %m" -#: ../libpq-oauth/oauth-curl.c:1419 +#: ../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:1449 +#: ../libpq-oauth/oauth-curl.c:1503 #, c-format msgid "deleting kqueue timer: %m" msgstr "kqueue-ის ტაიმერის წაშლა: %m" -#: ../libpq-oauth/oauth-curl.c:1456 +#: ../libpq-oauth/oauth-curl.c:1510 #, c-format msgid "removing kqueue timer from multiplexer: %m" msgstr "kqueue-ის ტაიმერის წაშლა მულტიპლექსერიდან: %m" -#: ../libpq-oauth/oauth-curl.c:1467 +#: ../libpq-oauth/oauth-curl.c:1521 #, c-format msgid "setting kqueue timer to %ld: %m" msgstr "kqueue-ის ტაიმერის დაყენება %ld-ზე: %m" -#: ../libpq-oauth/oauth-curl.c:1474 +#: ../libpq-oauth/oauth-curl.c:1528 #, c-format msgid "adding kqueue timer to multiplexer: %m" msgstr "kqueue-ის ტაიმერის დამატება მულტიპლექსერზე: %m" -#: ../libpq-oauth/oauth-curl.c:1497 +#: ../libpq-oauth/oauth-curl.c:1553 #, c-format -msgid "getting timerfd value: %m" -msgstr "timerfd-ის მნიშვნელობის მიღება: %m" +msgid "checking timer expiration: %m" +msgstr "შემოწმება მოლოდინის დროის ამოწურვაზე: %m" -#: ../libpq-oauth/oauth-curl.c:1519 -#, c-format -msgid "checking kqueue for timeout: %m" -msgstr "kqueue-ის შემოწმება მოლოდინის დროის ამოწურვაზე: %m" - -#: ../libpq-oauth/oauth-curl.c:1651 +#: ../libpq-oauth/oauth-curl.c:1715 #, c-format msgid "failed to create libcurl multi handle" msgstr "libcurl-ის ერთზე მეტი დამმუშავებლის შექმნა ჩავარდა" -#: ../libpq-oauth/oauth-curl.c:1671 +#: ../libpq-oauth/oauth-curl.c:1735 #, c-format msgid "failed to create libcurl handle" msgstr "libcurl-ის დამმუშავებლის შექმნა ჩავარდა" -#: ../libpq-oauth/oauth-curl.c:1755 ../libpq-oauth/oauth-curl.c:1796 -#: ../libpq-oauth/oauth-curl.c:2109 ../libpq-oauth/oauth-curl.c:2270 -#: ../libpq-oauth/oauth-curl.c:2331 ../libpq-oauth/oauth-curl.c:2420 -#: ../libpq-oauth/oauth-curl.c:2714 ../libpq-oauth/oauth-curl.c:2905 +#: ../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 #: 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 @@ -233,64 +233,65 @@ msgstr "libcurl-ის დამმუშავებლის შექმნ #: 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:1315 fe-exec.c:3254 fe-exec.c:4293 fe-exec.c:4459 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:210 fe-protocol3.c:233 -#: fe-protocol3.c:256 fe-protocol3.c:273 fe-protocol3.c:294 fe-protocol3.c:368 -#: fe-protocol3.c:732 fe-protocol3.c:972 fe-protocol3.c:1553 -#: fe-protocol3.c:1862 fe-protocol3.c:2263 fe-secure-common.c:110 +#: 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-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "არასაკმარისი მეხსიერება" -#: ../libpq-oauth/oauth-curl.c:1783 +#: ../libpq-oauth/oauth-curl.c:1847 #, c-format msgid "response is too large" msgstr "პასუხი მეტისმეტად დიდია" -#: ../libpq-oauth/oauth-curl.c:1825 +#: ../libpq-oauth/oauth-curl.c:1889 #, c-format msgid "failed to queue HTTP request: %s" msgstr "HTTP მოთხოვნის რიგში ჩამატება ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:1842 ../libpq-oauth/oauth-curl.c:1895 +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "ასინქრონული HTTP მოთხოვნა ჩავარდა: %s" -#: ../libpq-oauth/oauth-curl.c:1947 +#: ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "no result was retrieved for the finished handle" msgstr "დასრულებული დამმუშავებლიდან შედეგი მიღებული არაა" -#: ../libpq-oauth/oauth-curl.c:2080 ../libpq-oauth/oauth-curl.c:2386 -#: ../libpq-oauth/oauth-curl.c:2465 +#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 +#: ../libpq-oauth/oauth-curl.c:2529 #, c-format msgid "unexpected response code %ld" msgstr "მოულოდნელი პასუხის კოდი %ld" -#: ../libpq-oauth/oauth-curl.c:2152 +#: ../libpq-oauth/oauth-curl.c:2216 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "გამომცემლის იდენტიფიკატორი (%s) oauth_issuer-ს (%s) არ ემთხვევა" -#: ../libpq-oauth/oauth-curl.c:2179 +#: ../libpq-oauth/oauth-curl.c:2243 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "გამომცემელმა \"%s\" არ მოგვაწოდა მოწყობილობის ავტორიზაციის ბოლოწერტილი" -#: ../libpq-oauth/oauth-curl.c:2205 +#: ../libpq-oauth/oauth-curl.c:2269 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "მოწყობილობის ავტორიზაციის ბოლოწერტილი \"%s\" HTTPS-ს უნდა იყენებდეს" -#: ../libpq-oauth/oauth-curl.c:2214 +#: ../libpq-oauth/oauth-curl.c:2278 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "კოდის ბოლოწერტილი \"%s\" HTTPS-ს უნდა იყენებდეს" -#: ../libpq-oauth/oauth-curl.c:2523 +#: ../libpq-oauth/oauth-curl.c:2587 #, c-format msgid "slow_down interval overflow" msgstr "slow_down-ის ინტერვალის გადავსება" @@ -298,27 +299,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:2559 +#: ../libpq-oauth/oauth-curl.c:2623 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "გადადით %s-ზე და შეიყვანეთ კოდი: %s\n" -#: ../libpq-oauth/oauth-curl.c:2564 +#: ../libpq-oauth/oauth-curl.c:2628 #, c-format msgid "device prompt failed" msgstr "მოწყობილობის მოთხოვნა ჩავარდა" -#: ../libpq-oauth/oauth-curl.c:2620 +#: ../libpq-oauth/oauth-curl.c:2684 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init უკვე ჩავარდა OAuth-ის მორგებისას" -#: ../libpq-oauth/oauth-curl.c:2639 +#: ../libpq-oauth/oauth-curl.c:2703 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init ჩავარდა OAuth-ის მორგებისას" -#: ../libpq-oauth/oauth-curl.c:2660 +#: ../libpq-oauth/oauth-curl.c:2724 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -1158,8 +1159,8 @@ msgstr "\"%s\"-ში აღმოჩენილია მოულოდნე msgid "connection pointer is NULL\n" msgstr "შეერთების მაჩვენებელი ნულოვანია\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3459 -#: fe-protocol3.c:987 fe-protocol3.c:1020 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "არასაკმარისი მეხსიერება\n" @@ -1183,12 +1184,12 @@ msgstr "პაროლი მიღებულია ფაილიდან msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "არასწორი მნიშვნელობა: \"%s\" (უნდა იყოს მთელი რიცხვი) შეერთების პარამეტრისთვის \"%s\"" -#: fe-exec.c:469 fe-exec.c:3533 +#: fe-exec.c:469 fe-exec.c:3544 #, c-format msgid "row number %d is out of range 0..%d" msgstr "მწკრივების რაოდენობა %d ზღვარს (0..%d) გარეთაა" -#: fe-exec.c:531 fe-protocol3.c:2068 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" @@ -1215,134 +1216,134 @@ msgstr "PGresult-ს INT_MAX-ზე მეტი სტრუქტურის msgid "size_t overflow" msgstr "size_t -ის გადავსება" -#: fe-exec.c:1438 fe-exec.c:1507 fe-exec.c:1553 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "ბრძანების სტრიქონი ნულოვანი მაჩვენებელია" -#: fe-exec.c:1444 fe-exec.c:3003 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "კომუნიკაციის არხის რეჟიმში %s დაუშვებელია" -#: fe-exec.c:1512 fe-exec.c:1558 fe-exec.c:1652 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "პარამეტრების რაოდენობა 0-სა და %d-ს შორის შეიძლება იყოს" -#: fe-exec.c:1548 fe-exec.c:1647 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "გამოსახულების სახელი ნულოვანი მაჩვენებელია" -#: fe-exec.c:1689 fe-exec.c:3379 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "სერვერთან შეერთება არ არსებობს" -#: fe-exec.c:1697 fe-exec.c:3387 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "უკვე გაშვებულია სხვა ბრძანება" -#: fe-exec.c:1727 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "როცა გაშვებულია ბრძანება COPY, სხვა ბრძანებებს ვერ გაუშვებთ" -#: fe-exec.c:1846 +#: fe-exec.c:1857 #, c-format msgid "length must be given for binary parameter" msgstr "ბინარული პარამეტრისთვის სიგრძის მითითება აუცილებელია" -#: fe-exec.c:2205 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "მოულოდნელი asyncStatus: %d" -#: fe-exec.c:2361 +#: fe-exec.c:2372 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "კომუნიკაციის არხის რეჟიმში ბრძანების სინქრონული შესრულების ფუნქციები მიუწვდომელია" -#: fe-exec.c:2378 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "COPY შეწყვეტილია ახალი PQexec-ის მიერ" -#: fe-exec.c:2394 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "COPY BOTH-ის დროს PQexec დაუშვებელია" -#: fe-exec.c:2630 +#: fe-exec.c:2641 #, c-format msgid "unrecognized message type \"%c\"" msgstr "შეტყობინების უცნობი ტიპი: \"%c\"" -#: fe-exec.c:2702 fe-exec.c:2756 fe-exec.c:2824 fe-protocol3.c:1999 +#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 #, c-format msgid "no COPY in progress" msgstr "ბრძანება COPY გაშვებული არაა" -#: fe-exec.c:3010 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "შეერთების მდგომარეობა არასწორია" -#: fe-exec.c:3053 +#: fe-exec.c:3064 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "კომუნიკაციის არხის რეჟიმზე გადართვის შეცდომა. შეერთება უქმე არაა" -#: fe-exec.c:3089 fe-exec.c:3110 +#: fe-exec.c:3100 fe-exec.c:3121 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "მოგროვებული შედეგების გარეშე კომუნიკაციის არხის რეჟიმიდან ვერ გახვალთ" -#: fe-exec.c:3093 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "კომუნიკაციის არხის რეჟიმიდან გასვლა მაშინ, როცა ის დაკავებულია, შეუძლებელია" -#: fe-exec.c:3104 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "კომუნიკაციის არხის რეჟიმიდან გასვლა მაშინ, როცა ის დაკავებულია, შეუძლებელია" -#: fe-exec.c:3303 +#: fe-exec.c:3314 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "კომუნიკაციის არხის გაგზავნა, როცა კომუნიკაციის არხის რეჟიმში არ ხართ, შეუძლებელია" -#: fe-exec.c:3422 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "'ExecStatusType'-ის არასწორი კოდი" -#: fe-exec.c:3449 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresult შეცდომითი შედეგი არაა\n" -#: fe-exec.c:3517 fe-exec.c:3540 +#: fe-exec.c:3528 fe-exec.c:3551 #, c-format msgid "column number %d is out of range 0..%d" msgstr "სვეტების რაოდენობა %d ზღვარს (0..%d) გარეთაა" -#: fe-exec.c:3555 +#: fe-exec.c:3566 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "პარამეტრების რაოდენობა %d ზღვარს (0..%d) გარეთაა" -#: fe-exec.c:3866 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "სერვერის პასუხის გაურკვეველია: %s" -#: fe-exec.c:4141 fe-exec.c:4255 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "დაუსრულებელი მრავალბაიტიანი სიმბოლო" -#: fe-exec.c:4143 fe-exec.c:4274 +#: fe-exec.c:4154 fe-exec.c:4285 #, c-format msgid "invalid multibyte character" msgstr "არასწორი მრავალბაიტიანი სიმბოლო" @@ -1434,181 +1435,196 @@ msgstr "არასწორი სოკეტი" msgid "%s() failed: %s" msgstr "%s()-ის შეცდომა: %s" -#: fe-protocol3.c:188 +#: fe-protocol3.c:189 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "შეტყობინების ტიპი 0x%02x მოვიდა სერვერიდან, როცა უქმე ვიყავი" -#: fe-protocol3.c:401 +#: fe-protocol3.c:402 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "სერვერმა მონაცემები (\"D\" შეტყობინება) მწკრივების წინასწარი აღწერის (\"T\" შეტყობინება) გარეშე გამოაგზავნა" -#: fe-protocol3.c:443 +#: fe-protocol3.c:444 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "სერვერის მოულოდნელი პასუხი; პირველი მიღებული სიმბოლოა \"%c\"" -#: fe-protocol3.c:462 +#: fe-protocol3.c:468 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "შეტყობინების შიგთავსი შეტყობინების ამ ტიპის (%c) სიგრძეს არ ემთხვევა" -#: fe-protocol3.c:480 +#: fe-protocol3.c:503 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "სერვერთან სინქრონიზაციის შეცდომა: შეტყობინების ტიპი: \"%c\", სიგრძე %d" -#: fe-protocol3.c:532 fe-protocol3.c:572 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "არასაკმარისი მონაცემები \"T\" შეტყობინებაში" -#: fe-protocol3.c:643 fe-protocol3.c:849 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "არასაკმარისი მეხსიერება მოთხოვნის შედეგისთვის" -#: fe-protocol3.c:712 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "არასაკმარისი მონაცემები \"t\" შეტყობინებაში" -#: fe-protocol3.c:771 fe-protocol3.c:803 fe-protocol3.c:821 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "არასაკმარისი მონაცემები \"D\" შეტყობინებაში" -#: fe-protocol3.c:777 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "ველების მოულოდნელი რაოდენობა \"D\" შეტყობინებაში" -#: fe-protocol3.c:1033 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "შეცდომის შეტყობინების გარეშე\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1081 fe-protocol3.c:1100 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " სიმბოლოსთან %s" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "დეტალი: %s\n" -#: fe-protocol3.c:1116 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "მინიშნება: %s\n" -#: fe-protocol3.c:1119 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "მოთხოვნა: %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "კონტექსტი: %s\n" -#: fe-protocol3.c:1135 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "სქემის სახელი: %s\n" -#: fe-protocol3.c:1139 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "ცხრილის სახელი: %s\n" -#: fe-protocol3.c:1143 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "სვეტის სახელი: %s\n" -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "მონ. ტიპის სახელი: %s\n" -#: fe-protocol3.c:1151 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "შეზღუდვის სახელი: %s\n" -#: fe-protocol3.c:1163 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "მდებარეობა: " -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1167 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1362 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "ხაზი %d: " -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1442 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მოითხოვა ვერსიის ჩამოწევა უფრო მაღალ ვერსიაზე" -#: fe-protocol3.c:1430 +#: fe-protocol3.c:1448 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მოითხოვა ვერსიის ჩამოწევა 3.0-მდელ ვერსიაზე" -#: fe-protocol3.c:1437 +#: fe-protocol3.c:1455 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "მიღებულია არასწორი პროტოკოლის ხელის ჩამორთმევის შეტყობინება: სერვერი ითხოვს ვერსიის ჩამოწევას არარსებულ პროტოკოლის ვერსიაზე 3.1" -#: fe-protocol3.c:1443 +#: fe-protocol3.c:1461 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მხარდაუჭერელი პარამეტრების უარყოფითი რაოდენობა გადმოგვცა" -#: fe-protocol3.c:1449 +#: fe-protocol3.c:1467 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერთან კავშირი დამყარდა, მაგრამ ის ცვლილებებს არ ითხოვს" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1473 #, 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:1480 +#: fe-protocol3.c:1498 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "მიღებულია არასწორი პროტოკოლის მოლაპარაკების შეტყობინება: სერვერმა მოიწერა მხარდაუჭერელი პარამეტრის სახელი \"%s\" პრეფიქსის გარეშე (\"%s\")" -#: fe-protocol3.c:1483 +#: fe-protocol3.c:1501 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება: სერვერმა მოიწერა მხარდაუჭერელი პარამეტრი, რომელიც მას არ მოუთხოვია (\"%s\")" -#: fe-protocol3.c:1490 +#: fe-protocol3.c:1508 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "მიღებულია არასწორი პროტოკოლის მიმოცვლის შეტყობინება; შეტყობინება მეტისმეტად მოკლეა" -#: fe-protocol3.c:1894 +#: fe-protocol3.c:1574 +#, 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 +#, 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 +#, 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 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: ტექსტის COPY OUT-ს არ გავაკეთებ" -#: fe-protocol3.c:2269 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "პროტოკოლის შეცდომა: ფუნქციის შედეგის გარეშე" -#: fe-protocol3.c:2281 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "პროტოკოლის შეცდომა: id=0x%x" @@ -1977,6 +1993,10 @@ msgstr "სოკეტის უცნობი შეცდომა: 0x%08X/% #~ msgid "could not open file \"%s\": %s\n" #~ msgstr "ფაილის გახსნის შეცდომა \"%s\": %s\n" +#, c-format +#~ msgid "getting timerfd value: %m" +#~ msgstr "timerfd-ის მნიშვნელობის მიღება: %m" + #~ msgid "incoming GSSAPI message did not use confidentiality\n" #~ msgstr "შემომავალი GSSAPI შეტყობინება კონფიდენციალობას არ იყენებს\n" diff --git a/src/interfaces/libpq/po/sv.po b/src/interfaces/libpq/po/sv.po index 0296092b7f4d9..5dcd1eed11405 100644 --- a/src/interfaces/libpq/po/sv.po +++ b/src/interfaces/libpq/po/sv.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 18\n" +"Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-29 17:10+0000\n" -"PO-Revision-Date: 2025-07-29 20:17+0200\n" +"POT-Creation-Date: 2025-08-15 19:10+0000\n" +"PO-Revision-Date: 2025-08-15 22:39+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -18,211 +18,211 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: ../libpq-oauth/oauth-curl.c:306 ../libpq-oauth/oauth-curl.c:1936 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "borttagning av libcurl easy handle misslyckades: %s" -#: ../libpq-oauth/oauth-curl.c:326 +#: ../libpq-oauth/oauth-curl.c:327 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "uppstädning av libcurl multi handle misslyckades: %s" -#: ../libpq-oauth/oauth-curl.c:389 ../libpq-oauth/oauth-curl.c:400 +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 #, 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:411 +#: ../libpq-oauth/oauth-curl.c:412 #, 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:514 ../libpq-oauth/oauth-curl.c:624 +#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 #, c-format msgid "JSON is too deeply nested" msgstr "JSON är nästlad för djupt" -#: ../libpq-oauth/oauth-curl.c:539 +#: ../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" -#: ../libpq-oauth/oauth-curl.c:566 +#: ../libpq-oauth/oauth-curl.c:567 #, c-format msgid "field \"%s\" is duplicated" msgstr "fältet \"%s\" är duplicerat." -#: ../libpq-oauth/oauth-curl.c:591 +#: ../libpq-oauth/oauth-curl.c:592 #, c-format msgid "internal error: field '%s' still active at end of object" msgstr "internt fel: fältet '%s' är fortfarande aktivt vid objektslutet" -#: ../libpq-oauth/oauth-curl.c:606 ../libpq-oauth/oauth-curl.c:666 +#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 #, c-format msgid "top-level element must be an object" msgstr "elementet på toppnivå måste vara ett objekt" -#: ../libpq-oauth/oauth-curl.c:647 +#: ../libpq-oauth/oauth-curl.c:648 #, 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:702 +#: ../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" -#: ../libpq-oauth/oauth-curl.c:712 +#: ../libpq-oauth/oauth-curl.c:713 #, c-format msgid "internal error: scalar field '%s' would be assigned twice" msgstr "internt fel: skalärfält '%s' skulle tilldelas två gånger" -#: ../libpq-oauth/oauth-curl.c:734 +#: ../libpq-oauth/oauth-curl.c:735 #, c-format msgid "internal error: array member found at nesting level %d" msgstr "internt fel: array-medlem hittad vid nästlingsnivå %d" -#: ../libpq-oauth/oauth-curl.c:769 +#: ../libpq-oauth/oauth-curl.c:770 #, c-format msgid "no content type was provided" msgstr "ingen innehållstyp angiven" -#: ../libpq-oauth/oauth-curl.c:808 +#: ../libpq-oauth/oauth-curl.c:809 #, c-format msgid "unexpected content type: \"%s\"" msgstr "oväntad innehållstyp \"%s\"" -#: ../libpq-oauth/oauth-curl.c:833 +#: ../libpq-oauth/oauth-curl.c:834 #, c-format msgid "response contains embedded NULLs" msgstr "svaret innehåller inbäddade NULL-värden" -#: ../libpq-oauth/oauth-curl.c:843 +#: ../libpq-oauth/oauth-curl.c:844 #, c-format msgid "response is not valid UTF-8" msgstr "svaret är inte korrekt UTF-8" -#: ../libpq-oauth/oauth-curl.c:883 +#: ../libpq-oauth/oauth-curl.c:884 #, c-format msgid "field \"%s\" is missing" msgstr "fältet \"%s\" saknas" -#: ../libpq-oauth/oauth-curl.c:1117 +#: ../libpq-oauth/oauth-curl.c:1118 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "leverantör avvisade oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1181 +#: ../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:1188 +#: ../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:1194 +#: ../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:1204 +#: ../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:1217 +#: ../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:1261 ../libpq-oauth/oauth-curl.c:1333 +#: ../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:1278 +#: ../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:1282 +#: ../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:1286 +#: ../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:1340 +#: ../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:1364 +#: ../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:1367 +#: ../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:1419 +#: ../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:1449 +#: ../libpq-oauth/oauth-curl.c:1503 #, c-format msgid "deleting kqueue timer: %m" msgstr "tar bort kqueue-timer: %m" -#: ../libpq-oauth/oauth-curl.c:1456 +#: ../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:1467 +#: ../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:1474 +#: ../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:1497 -#, c-format -msgid "getting timerfd value: %m" -msgstr "hämtar timerfd-värde: %m" - -#: ../libpq-oauth/oauth-curl.c:1519 +#: ../libpq-oauth/oauth-curl.c:1553 #, c-format -msgid "checking kqueue for timeout: %m" -msgstr "kontrollerar kqueue för timeout: %m" +msgid "checking timer expiration: %m" +msgstr "kontrollerar om timer löpt ut: %m" -#: ../libpq-oauth/oauth-curl.c:1651 +#: ../libpq-oauth/oauth-curl.c:1715 #, c-format msgid "failed to create libcurl multi handle" msgstr "misslyckades med skapa multi-handle för libcurl" -#: ../libpq-oauth/oauth-curl.c:1671 +#: ../libpq-oauth/oauth-curl.c:1735 #, c-format msgid "failed to create libcurl handle" msgstr "misslyckades med att skapa handle för libcurl" -#: ../libpq-oauth/oauth-curl.c:1755 ../libpq-oauth/oauth-curl.c:1796 -#: ../libpq-oauth/oauth-curl.c:2109 ../libpq-oauth/oauth-curl.c:2270 -#: ../libpq-oauth/oauth-curl.c:2331 ../libpq-oauth/oauth-curl.c:2420 -#: ../libpq-oauth/oauth-curl.c:2714 ../libpq-oauth/oauth-curl.c:2905 +#: ../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 #: 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 @@ -244,53 +244,53 @@ msgstr "misslyckades med att skapa handle för libcurl" msgid "out of memory" msgstr "slut på minne" -#: ../libpq-oauth/oauth-curl.c:1783 +#: ../libpq-oauth/oauth-curl.c:1847 #, c-format msgid "response is too large" msgstr "svaret är för stort" -#: ../libpq-oauth/oauth-curl.c:1825 +#: ../libpq-oauth/oauth-curl.c:1889 #, c-format msgid "failed to queue HTTP request: %s" msgstr "misslyckades att köa HTTP-anrop: %s" -#: ../libpq-oauth/oauth-curl.c:1842 ../libpq-oauth/oauth-curl.c:1895 +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "asynkront HTTP-anrop misslyckades: %s" -#: ../libpq-oauth/oauth-curl.c:1947 +#: ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "no result was retrieved for the finished handle" msgstr "inget resultat kom från avslutad handle" -#: ../libpq-oauth/oauth-curl.c:2080 ../libpq-oauth/oauth-curl.c:2386 -#: ../libpq-oauth/oauth-curl.c:2465 +#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 +#: ../libpq-oauth/oauth-curl.c:2529 #, c-format msgid "unexpected response code %ld" msgstr "oväntad svarskod %ld" -#: ../libpq-oauth/oauth-curl.c:2152 +#: ../libpq-oauth/oauth-curl.c:2216 #, 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:2179 +#: ../libpq-oauth/oauth-curl.c:2243 #, 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:2205 +#: ../libpq-oauth/oauth-curl.c:2269 #, 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:2214 +#: ../libpq-oauth/oauth-curl.c:2278 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "token-ändpunkt \"%s\" måste använda HTTPS" -#: ../libpq-oauth/oauth-curl.c:2523 +#: ../libpq-oauth/oauth-curl.c:2587 #, c-format msgid "slow_down interval overflow" msgstr "overflow i intervall för slow_down" @@ -298,27 +298,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:2559 +#: ../libpq-oauth/oauth-curl.c:2623 #, 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:2564 +#: ../libpq-oauth/oauth-curl.c:2628 #, c-format msgid "device prompt failed" msgstr "misslyckades att skapa inmatningsfråga för enhet" -#: ../libpq-oauth/oauth-curl.c:2620 +#: ../libpq-oauth/oauth-curl.c:2684 #, 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:2639 +#: ../libpq-oauth/oauth-curl.c:2703 #, 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:2660 +#: ../libpq-oauth/oauth-curl.c:2724 #, c-format msgid "" "libcurl is no longer thread-safe\n" diff --git a/src/pl/plperl/po/ru.po b/src/pl/plperl/po/ru.po index 8b47276a62056..20aabd70405aa 100644 --- a/src/pl/plperl/po/ru.po +++ b/src/pl/plperl/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: plperl (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 20:00+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,90 +17,90 @@ 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" -#: plperl.c:405 +#: plperl.c:407 msgid "" "If true, trusted and untrusted Perl code will be compiled in strict mode." msgstr "" "Если этот параметр равен true, доверенный и недоверенный код Perl будет " "компилироваться в строгом режиме." -#: plperl.c:419 +#: plperl.c:421 msgid "" "Perl initialization code to execute when a Perl interpreter is initialized." msgstr "" "Код инициализации Perl, который выполняется при инициализации интерпретатора " "Perl." -#: plperl.c:441 +#: plperl.c:443 msgid "Perl initialization code to execute once when plperl is first used." msgstr "" "Код инициализации Perl, который выполняется один раз, при первом " "использовании plperl." -#: plperl.c:449 +#: plperl.c:451 msgid "Perl initialization code to execute once when plperlu is first used." msgstr "" "Код инициализации Perl, который выполняется один раз, при первом " "использовании 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" @@ -108,74 +108,74 @@ 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 "не удалось получить ссылку на код после компиляции функции \"%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 "не удалось получить возвращаемый элемент от триггерной функции" @@ -200,12 +200,12 @@ 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\"" @@ -213,24 +213,24 @@ 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 " @@ -239,17 +239,17 @@ 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/ru.po b/src/pl/plpgsql/src/po/ru.po index 99ba5ac7e11d4..c59b7dc431498 100644 --- a/src/pl/plpgsql/src/po/ru.po +++ b/src/pl/plpgsql/src/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: plpgsql (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-09-02 09:29+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-09-04 20:00+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,34 +17,34 @@ 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" -#: 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 " @@ -53,141 +53,133 @@ 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 "" "функция, возвращающая множество, вызвана в контексте, где ему нет места" -#: 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 "требуется режим материализации, но он недопустим в этом контексте" -#: 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 "" @@ -197,7 +189,7 @@ 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" @@ -205,39 +197,39 @@ 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 " @@ -246,7 +238,7 @@ msgstr "" "параметр процедуры \"%s\" является выходным, но соответствующий аргумент не " "допускает запись" -#: pl_exec.c:2375 +#: pl_exec.c:2387 #, c-format msgid "" "procedure parameter %d is an output parameter but corresponding argument is " @@ -255,199 +247,199 @@ 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 "неправильный CASE" -#: 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 "возможность выполнения SELECT ... INTO в EXECUTE не реализована" # skip-rule: space-before-ellipsis -#: pl_exec.c:4525 +#: pl_exec.c:4531 #, c-format msgid "" "You might want to use EXECUTE ... INTO or EXECUTE CREATE TABLE ... AS " @@ -456,57 +448,57 @@ 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" @@ -514,17 +506,17 @@ msgstr[0] "запрос вернул %d столбец" msgstr[1] "запрос вернул %d столбца" msgstr[2] "запрос вернул %d столбцов" -#: pl_exec.c:5831 +#: pl_exec.c:5827 #, c-format msgid "query is SELECT INTO, but it should be plain SELECT" msgstr "запрос - не просто SELECT, а SELECT INTO" -#: 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)" @@ -532,35 +524,35 @@ 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" @@ -597,52 +589,52 @@ 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 не поддерживает сортировку (COLLATION)" -#: 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 " @@ -651,238 +643,238 @@ 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 "RETURN должен быть без параметров в функции с параметрами OUT" -#: pl_gram.y:3390 +#: pl_gram.y:3459 #, c-format msgid "RETURN NEXT cannot have a parameter in function with OUT parameters" msgstr "RETURN NEXT должен быть без параметров в функции с параметрами OUT" -#: 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." @@ -890,7 +882,7 @@ 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." @@ -898,31 +890,38 @@ 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\")" +#, c-format +#~ msgid "" +#~ "could not determine actual argument type for polymorphic function \"%s\"" +#~ msgstr "" +#~ "не удалось определить фактический тип аргумента для полиморфной функции " +#~ "\"%s\"" + #~ msgid "query \"%s\" returned more than one row" #~ msgstr "запрос \"%s\" вернул несколько строк" diff --git a/src/pl/plpython/po/ru.po b/src/pl/plpython/po/ru.po index 0b57951c61093..066976d50ab15 100644 --- a/src/pl/plpython/po/ru.po +++ b/src/pl/plpython/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: plpython (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2019-08-29 15:42+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,22 +17,22 @@ 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" -#: 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:154 +#: plpy_cursorobject.c:177 #, c-format msgid "plpy.cursor takes a sequence as its second argument" msgstr "plpy.cursor принимает в качестве второго аргумента последовательность" -#: plpy_cursorobject.c:170 plpy_spi.c:204 +#: plpy_cursorobject.c:193 plpy_spi.c:200 #, c-format msgid "could not execute plan" msgstr "нельзя выполнить план" -#: plpy_cursorobject.c:173 plpy_spi.c:207 +#: 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" @@ -40,43 +40,43 @@ msgstr[0] "Ожидалась последовательность из %d ар msgstr[1] "Ожидалась последовательность из %d аргументов, получено %d: %s" msgstr[2] "Ожидалась последовательность из %d аргументов, получено %d: %s" -#: plpy_cursorobject.c:317 +#: plpy_cursorobject.c:349 #, c-format msgid "iterating a closed cursor" msgstr "перемещение закрытого курсора" -#: plpy_cursorobject.c:325 plpy_cursorobject.c:391 +#: plpy_cursorobject.c:357 plpy_cursorobject.c:423 #, c-format msgid "iterating a cursor in an aborted subtransaction" msgstr "перемещение курсора в прерванной подтранзакции" -#: plpy_cursorobject.c:383 +#: plpy_cursorobject.c:415 #, c-format msgid "fetch from a closed cursor" msgstr "выборка из закрытого курсора" -#: plpy_cursorobject.c:426 plpy_spi.c:393 +#: 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:478 +#: 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." @@ -84,51 +84,51 @@ 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" @@ -136,42 +136,42 @@ 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 " @@ -180,121 +180,121 @@ 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 "не удалось инициализировать глобальные данные" -#: 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 "аргумент 'message' задан и по имени, и по позиции" -#: 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" @@ -309,57 +309,57 @@ msgstr "не удалось скомпилировать функцию PL/Pytho 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:188 +#: plpy_spi.c:184 #, c-format msgid "plpy.execute takes a sequence as its second argument" msgstr "plpy.execute принимает в качестве второго аргумента последовательность" -#: plpy_spi.c:289 +#: plpy_spi.c:285 #, c-format msgid "SPI_execute_plan failed: %s" msgstr "ошибка в SPI_execute_plan: %s" -#: plpy_spi.c:331 +#: 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 "нет подтранзакции, которую нужно закончить" @@ -379,17 +379,17 @@ 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 " @@ -398,7 +398,7 @@ msgstr "" "не удалось преобразовать объект Python в cstring: похоже, представление " "строки Python содержит нулевые байты" -#: plpy_typeio.c:1157 +#: plpy_typeio.c:1160 #, c-format msgid "" "return value of function with array return type is not a Python sequence" @@ -406,14 +406,14 @@ msgstr "" "возвращаемое значение функции с результатом-массивом не является " "последовательностью" -#: 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" @@ -421,22 +421,22 @@ 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 " @@ -445,12 +445,12 @@ 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 " @@ -459,17 +459,17 @@ 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 "в объекте Python не существует атрибут \"%s\"" -#: 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 " @@ -478,12 +478,12 @@ 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/ru.po b/src/pl/tcl/po/ru.po index 1f15520c8cba6..acb9132534dbc 100644 --- a/src/pl/tcl/po/ru.po +++ b/src/pl/tcl/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: pltcl (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-08 07:44+0200\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" "PO-Revision-Date: 2024-08-01 13:03+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -17,109 +17,109 @@ 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" -#: pltcl.c:466 +#: pltcl.c:470 msgid "PL/Tcl function to call once when pltcl is first used." msgstr "Функция на PL/Tcl, вызываемая при первом использовании pltcl." -#: pltcl.c:473 +#: pltcl.c:477 msgid "PL/TclU function to call once when pltclu is first used." msgstr "Функция на PL/TclU, вызываемая при первом использовании pltclu." -#: pltcl.c:640 +#: pltcl.c:644 #, c-format msgid "function \"%s\" is in the wrong language" msgstr "Функция \"%s\" объявлена на другом языке" -#: pltcl.c:651 +#: 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:685 +#: pltcl.c:689 #, c-format msgid "processing %s parameter" msgstr "обработка параметра %s" -#: pltcl.c:838 +#: pltcl.c:841 #, c-format msgid "set-valued function called in context that cannot accept a set" msgstr "" "функция, возвращающая множество, вызвана в контексте, где ему нет места" -#: pltcl.c:843 +#: pltcl.c:846 #, c-format msgid "materialize mode required, but it is not allowed in this context" msgstr "требуется режим материализации, но он недопустим в этом контексте" -#: pltcl.c:1016 +#: pltcl.c:1019 #, c-format msgid "" "function returning record called in context that cannot accept type record" msgstr "" "функция, возвращающая запись, вызвана в контексте, не допускающем этот тип" -#: pltcl.c:1035 +#: pltcl.c:1038 #, c-format msgid "could not parse function return value: %s" msgstr "разобрать возвращаемое функцией значение не удалось: %s" -#: pltcl.c:1302 +#: pltcl.c:1304 #, c-format msgid "could not parse trigger return value: %s" msgstr "разобрать возвращаемое триггером значение не удалось: %s" -#: pltcl.c:1387 pltcl.c:1814 +#: pltcl.c:1404 pltcl.c:1898 #, c-format msgid "%s" msgstr "%s" -#: pltcl.c:1388 -#, c-format +#: pltcl.c:1405 +#, fuzzy, c-format msgid "" "%s\n" -"in PL/Tcl function \"%s\"" +"in PL/Tcl function %s" msgstr "" "%s\n" "в функции PL/Tcl \"%s\"" -#: pltcl.c:1551 +#: pltcl.c:1633 #, c-format msgid "trigger functions can only be called as triggers" msgstr "триггерные функции могут вызываться только в триггерах" -#: pltcl.c:1555 +#: pltcl.c:1637 #, c-format msgid "PL/Tcl functions cannot return type %s" msgstr "функции PL/Tcl не могут возвращать тип %s" -#: pltcl.c:1594 +#: pltcl.c:1676 #, c-format msgid "PL/Tcl functions cannot accept type %s" msgstr "функции PL/Tcl не могут принимать тип %s" -#: pltcl.c:1706 +#: pltcl.c:1788 #, c-format msgid "could not create internal procedure \"%s\": %s" msgstr "не удалось создать внутреннюю процедуру \"%s\": %s" -#: pltcl.c:3211 +#: pltcl.c:3298 #, c-format msgid "column name/value list must have even number of elements" msgstr "в списке имён/значений столбцов должно быть чётное число элементов" -#: pltcl.c:3229 +#: pltcl.c:3316 #, c-format msgid "column name/value list contains nonexistent column name \"%s\"" msgstr "" "список имён/значений столбцов содержит имя несуществующего столбца \"%s\"" -#: pltcl.c:3236 +#: pltcl.c:3323 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "присвоить значение системному атрибуту \"%s\" нельзя" -#: pltcl.c:3242 +#: pltcl.c:3329 #, c-format msgid "cannot set generated column \"%s\"" msgstr "присвоить значение генерируемому столбцу \"%s\" нельзя" From 6200622301310b1e47a2d5b7e25d098f0a38c551 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 1 Sep 2025 16:03:08 -0400 Subject: [PATCH 208/457] Stamp 18rc1. --- configure | 18 +++++++++--------- configure.ac | 2 +- meson.build | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/configure b/configure index f2115d5898b24..4ffd27f12bff9 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 18beta3. +# Generated by GNU Autoconf 2.69 for PostgreSQL 18rc1. # # Report bugs to . # @@ -582,8 +582,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='PostgreSQL' PACKAGE_TARNAME='postgresql' -PACKAGE_VERSION='18beta3' -PACKAGE_STRING='PostgreSQL 18beta3' +PACKAGE_VERSION='18rc1' +PACKAGE_STRING='PostgreSQL 18rc1' PACKAGE_BUGREPORT='pgsql-bugs@lists.postgresql.org' PACKAGE_URL='https://www.postgresql.org/' @@ -1468,7 +1468,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 18beta3 to adapt to many kinds of systems. +\`configure' configures PostgreSQL 18rc1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1533,7 +1533,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of PostgreSQL 18beta3:";; + short | recursive ) echo "Configuration of PostgreSQL 18rc1:";; esac cat <<\_ACEOF @@ -1724,7 +1724,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -PostgreSQL configure 18beta3 +PostgreSQL configure 18rc1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2477,7 +2477,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 18beta3, which was +It was created by PostgreSQL $as_me 18rc1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -20089,7 +20089,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 18beta3, which was +This file was extended by PostgreSQL $as_me 18rc1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -20160,7 +20160,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 18beta3 +PostgreSQL config.status 18rc1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index 38b5442407cbb..d13de054c8c6b 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], [18beta3], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) +AC_INIT([PostgreSQL], [18rc1], [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/meson.build b/meson.build index 52e21ce956f2c..973e8890bbd59 100644 --- a/meson.build +++ b/meson.build @@ -8,7 +8,7 @@ project('postgresql', ['c'], - version: '18beta3', + version: '18rc1', license: 'PostgreSQL', # We want < 0.56 for python 3.5 compatibility on old platforms. EPEL for From 399f7ce3daa692a5bebbba50bf9cb773f6469613 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 3 Sep 2025 10:20:33 +0900 Subject: [PATCH 209/457] Update outdated references to the SLRU ControlLock SLRU bank locks are referred as "bank locks" or "SLRU bank locks" in the code comments. The comments updated in this commit use the latter term. Oversight in 53c2a97a9266, that has replaced the single ControlLock by the bank control locks. Author: Julien Rouhaud Discussion: https://postgr.es/m/aLUT2UO8RjJOzZNq@jrouhaud Backpatch-through: 17 --- src/backend/access/transam/slru.c | 8 ++++---- src/include/access/slru.h | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/backend/access/transam/slru.c b/src/backend/access/transam/slru.c index fe56286d9a972..bcc6adb4d295e 100644 --- a/src/backend/access/transam/slru.c +++ b/src/backend/access/transam/slru.c @@ -400,10 +400,10 @@ SimpleLruZeroPage(SlruCtl ctl, int64 pageno) /* * Assume this page is now the latest active page. * - * Note that because both this routine and SlruSelectLRUPage run with - * ControlLock held, it is not possible for this to be zeroing a page that - * SlruSelectLRUPage is going to evict simultaneously. Therefore, there's - * no memory barrier here. + * Note that because both this routine and SlruSelectLRUPage run with a + * SLRU bank lock held, it is not possible for this to be zeroing a page + * that SlruSelectLRUPage is going to evict simultaneously. Therefore, + * there's no memory barrier here. */ pg_atomic_write_u64(&shared->latest_page_number, pageno); diff --git a/src/include/access/slru.h b/src/include/access/slru.h index e142800aab216..d5ca344720815 100644 --- a/src/include/access/slru.h +++ b/src/include/access/slru.h @@ -55,7 +55,7 @@ typedef enum /* * Shared-memory state * - * ControlLock is used to protect access to the other fields, except + * SLRU bank locks are used to protect access to the other fields, except * latest_page_number, which uses atomics; see comment in slru.c. */ typedef struct SlruSharedData From ae53537e218a112676483e50358718d142bcfeb9 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 3 Sep 2025 12:54:27 +0900 Subject: [PATCH 210/457] libpq: Fix PQtrace() format for non-printable characters PQtrace() was generating its output for non-printable characters without casting the characters printed with unsigned char, leading to some extra "\xffffff" generated in the output due to the fact that char may be signed. Oversights introduced by commit 198b3716dba6, so backpatch down to v14. Author: Ran Benita Discussion: https://postgr.es/m/a3383211-4539-459b-9d51-95c736ef08e0@app.fastmail.com Backpatch-through: 14 --- src/interfaces/libpq/fe-trace.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/interfaces/libpq/fe-trace.c b/src/interfaces/libpq/fe-trace.c index a45f0d855871b..fae5b47e55161 100644 --- a/src/interfaces/libpq/fe-trace.c +++ b/src/interfaces/libpq/fe-trace.c @@ -113,7 +113,7 @@ pqTraceOutputByte1(FILE *pfdebug, const char *data, int *cursor) * that completes ErrorResponse and NoticeResponse messages. */ if (!isprint((unsigned char) *v)) - fprintf(pfdebug, " \\x%02x", *v); + fprintf(pfdebug, " \\x%02x", (unsigned char) *v); else fprintf(pfdebug, " %c", *v); *cursor += 1; @@ -212,7 +212,7 @@ pqTraceOutputNchar(FILE *pfdebug, int len, const char *data, int *cursor, bool s else { fwrite(v + next, 1, i - next, pfdebug); - fprintf(pfdebug, "\\x%02x", v[i]); + fprintf(pfdebug, "\\x%02x", (unsigned char) v[i]); next = i + 1; } } From 8df3d355db0fcb56535644c5ea2f4ae6f7dfacdf Mon Sep 17 00:00:00 2001 From: Amit Kapila Date: Wed, 3 Sep 2025 06:17:08 +0000 Subject: [PATCH 211/457] Fix use-after-free issue in slot synchronization. Author: Shlok Kyal Reviewed-by: Daniel Gustafsson Reviewed-by: Amit Kapila Backpatch-through: 18, where it was introduced Discussion: https://postgr.es/m/CANhcyEXMrcEdzj-RNGJam0nJHM4y+ttdWsgUCFmXciM7BNKc7A@mail.gmail.com --- src/backend/replication/logical/slotsync.c | 3 ++- src/backend/replication/slotfuncs.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/backend/replication/logical/slotsync.c b/src/backend/replication/logical/slotsync.c index 0be941c643c41..e534ccc449ab8 100644 --- a/src/backend/replication/logical/slotsync.c +++ b/src/backend/replication/logical/slotsync.c @@ -1477,7 +1477,6 @@ ReplSlotSyncWorkerMain(const void *startup_data, size_t startup_data_len) */ wrconn = walrcv_connect(PrimaryConnInfo, false, false, false, app_name.data, &err); - pfree(app_name.data); if (!wrconn) ereport(ERROR, @@ -1485,6 +1484,8 @@ ReplSlotSyncWorkerMain(const void *startup_data, size_t startup_data_len) errmsg("synchronization worker \"%s\" could not connect to the primary server: %s", app_name.data, err)); + pfree(app_name.data); + /* * Register the disconnection callback. * diff --git a/src/backend/replication/slotfuncs.c b/src/backend/replication/slotfuncs.c index 36cc2ed4e440f..f5b1793c1c543 100644 --- a/src/backend/replication/slotfuncs.c +++ b/src/backend/replication/slotfuncs.c @@ -921,7 +921,6 @@ pg_sync_replication_slots(PG_FUNCTION_ARGS) /* Connect to the primary server. */ wrconn = walrcv_connect(PrimaryConnInfo, false, false, false, app_name.data, &err); - pfree(app_name.data); if (!wrconn) ereport(ERROR, @@ -929,6 +928,8 @@ pg_sync_replication_slots(PG_FUNCTION_ARGS) errmsg("synchronization worker \"%s\" could not connect to the primary server: %s", app_name.data, err)); + pfree(app_name.data); + SyncReplicationSlots(wrconn); walrcv_disconnect(wrconn); From ab4a35b4ea9d2290b1ee5ec25f65df4c739077cb Mon Sep 17 00:00:00 2001 From: Richard Guo Date: Wed, 3 Sep 2025 16:00:38 +0900 Subject: [PATCH 212/457] Fix planner error when estimating SubPlan cost SubPlan nodes are typically built very early, before any RelOptInfos have been constructed for the parent query level. As a result, the simple_rel_array in the parent root has not yet been initialized. Currently, during cost estimation of a SubPlan's testexpr, we may call examine_variable() to look up statistical data about the expressions. This can lead to "no relation entry for relid" errors. To fix, pass root as NULL to cost_qual_eval() in cost_subplan(), since the root does not yet contain enough information to safely consult statistics. One exception is SubPlan nodes built for the initplans of MIN/MAX aggregates from indexes. In this case, having a NULL root is safe because testexpr will be NULL. Additionally, an initplan will by definition not consult anything from the parent plan. Backpatch to all supported branches. Although the reported call path that triggers this error is not reachable prior to v17, there's no guarantee that other code paths -- especially in extensions -- could not encounter the same issue when cost_qual_eval() is called with a root that lacks a valid simple_rel_array. The test case is not included in pre-v17 branches though. Bug: #19037 Reported-by: Alexander Lakhin Diagnosed-by: Tom Lane Author: Richard Guo Reviewed-by: Tom Lane Discussion: https://postgr.es/m/19037-3d1c7bb553c7ce84@postgresql.org Backpatch-through: 13 --- src/backend/optimizer/path/costsize.c | 18 ++++++++++++++++-- src/test/regress/expected/subselect.out | 19 +++++++++++++++++++ src/test/regress/sql/subselect.sql | 9 +++++++++ 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/src/backend/optimizer/path/costsize.c b/src/backend/optimizer/path/costsize.c index 3d44815ed5adf..a290a3e66b6d9 100644 --- a/src/backend/optimizer/path/costsize.c +++ b/src/backend/optimizer/path/costsize.c @@ -4535,10 +4535,24 @@ cost_subplan(PlannerInfo *root, SubPlan *subplan, Plan *plan) { QualCost sp_cost; - /* Figure any cost for evaluating the testexpr */ + /* + * Figure any cost for evaluating the testexpr. + * + * Usually, SubPlan nodes are built very early, before we have constructed + * any RelOptInfos for the parent query level, which means the parent root + * does not yet contain enough information to safely consult statistics. + * Therefore, we pass root as NULL here. cost_qual_eval() is already + * well-equipped to handle a NULL root. + * + * One exception is SubPlan nodes built for the initplans of MIN/MAX + * aggregates from indexes (cf. SS_make_initplan_from_plan). In this + * case, having a NULL root is safe because testexpr will be NULL. + * Besides, an initplan will by definition not consult anything from the + * parent plan. + */ cost_qual_eval(&sp_cost, make_ands_implicit((Expr *) subplan->testexpr), - root); + NULL); if (subplan->useHashTable) { diff --git a/src/test/regress/expected/subselect.out b/src/test/regress/expected/subselect.out index 40d8056fcea40..1f5f159fbce32 100644 --- a/src/test/regress/expected/subselect.out +++ b/src/test/regress/expected/subselect.out @@ -773,6 +773,25 @@ select (select (a.*)::text) from view_a a; (42) (1 row) +-- +-- Test case for bug #19037: no relation entry for relid N +-- +explain (costs off) +select (1 = any(array_agg(f1))) = any (select false) from int4_tbl; + QUERY PLAN +---------------------------- + Aggregate + -> Seq Scan on int4_tbl + SubPlan 1 + -> Result +(4 rows) + +select (1 = any(array_agg(f1))) = any (select false) from int4_tbl; + ?column? +---------- + t +(1 row) + -- -- Check that whole-row Vars reading the result of a subselect don't include -- any junk columns therein diff --git a/src/test/regress/sql/subselect.sql b/src/test/regress/sql/subselect.sql index fec38ef85a6a6..4a3e32c2147dc 100644 --- a/src/test/regress/sql/subselect.sql +++ b/src/test/regress/sql/subselect.sql @@ -412,6 +412,15 @@ select (select view_a) from view_a; select (select (select view_a)) from view_a; select (select (a.*)::text) from view_a a; +-- +-- Test case for bug #19037: no relation entry for relid N +-- + +explain (costs off) +select (1 = any(array_agg(f1))) = any (select false) from int4_tbl; + +select (1 = any(array_agg(f1))) = any (select false) from int4_tbl; + -- -- Check that whole-row Vars reading the result of a subselect don't include -- any junk columns therein From c91c61b2417d0c36993deff03f09b1f64c821a1b Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 4 Sep 2025 08:34:57 +0900 Subject: [PATCH 213/457] Fix incorrect comment in pgstat_backend.c The counters saved from pgWalUsage, used for the difference calculations when flushing the backend WAL stats, are updated when calling pgstat_flush_backend() under PGSTAT_BACKEND_FLUSH_WAL, and not pgstat_report_wal(). The comment updated in this commit referenced the latter, but it is perfectly OK to flush the backend stats independently of the WAL stats. Noticed while looking at this area of the code, introduced by 76def4cdd7c2 as a copy-pasto. Backpatch-through: 18 --- src/backend/utils/activity/pgstat_backend.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/backend/utils/activity/pgstat_backend.c b/src/backend/utils/activity/pgstat_backend.c index 8714a85e2d936..07a1116671b18 100644 --- a/src/backend/utils/activity/pgstat_backend.c +++ b/src/backend/utils/activity/pgstat_backend.c @@ -41,9 +41,9 @@ static bool backend_has_iostats = false; /* * WAL usage counters saved from pgWalUsage at the previous call to - * pgstat_report_wal(). This is used to calculate how much WAL usage - * happens between pgstat_report_wal() calls, by subtracting the previous - * counters from the current ones. + * pgstat_flush_backend(). This is used to calculate how much WAL usage + * happens between pgstat_flush_backend() calls, by subtracting the + * previous counters from the current ones. */ static WalUsage prevBackendWalUsage; From 344662848ac15efc89e09b7d39662d7c71b30e06 Mon Sep 17 00:00:00 2001 From: Dean Rasheed Date: Thu, 4 Sep 2025 11:32:00 +0100 Subject: [PATCH 214/457] Fix replica identity check for INSERT ON CONFLICT DO UPDATE. If an INSERT has an ON CONFLICT DO UPDATE clause, the executor must check that the target relation supports UPDATE as well as INSERT. In particular, it must check that the target relation has a REPLICA IDENTITY if it publishes updates. Formerly, it was not doing this check, which could lead to silently breaking replication. Fix by adding such a check to CheckValidResultRel(), which requires adding a new onConflictAction argument. In back-branches, preserve ABI compatibility by introducing a wrapper function with the original signature. Author: Zhijie Hou Reviewed-by: Ashutosh Bapat Reviewed-by: Dean Rasheed Tested-by: Chao Li Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 13 --- src/backend/commands/copyfrom.c | 2 +- src/backend/executor/execMain.c | 12 +++++++++- src/backend/executor/execPartition.c | 9 ++++++-- src/backend/executor/nodeModifyTable.c | 3 ++- src/include/executor/executor.h | 1 + src/test/regress/expected/publication.out | 23 +++++++++++++++++++ src/test/regress/sql/publication.sql | 27 +++++++++++++++++++++++ 7 files changed, 72 insertions(+), 5 deletions(-) diff --git a/src/backend/commands/copyfrom.c b/src/backend/commands/copyfrom.c index fbbbc09a97b17..12781963b4f95 100644 --- a/src/backend/commands/copyfrom.c +++ b/src/backend/commands/copyfrom.c @@ -919,7 +919,7 @@ CopyFrom(CopyFromState cstate) ExecInitResultRelation(estate, resultRelInfo, 1); /* Verify the named relation is a valid target for INSERT */ - CheckValidResultRel(resultRelInfo, CMD_INSERT, NIL); + CheckValidResultRel(resultRelInfo, CMD_INSERT, ONCONFLICT_NONE, NIL); ExecOpenIndices(resultRelInfo, false); diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index b8b9d2a85f76c..8f56d5e312ec2 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -1036,6 +1036,9 @@ InitPlan(QueryDesc *queryDesc, int eflags) * Generally the parser and/or planner should have noticed any such mistake * already, but let's make sure. * + * For INSERT ON CONFLICT, the result relation is required to support the + * onConflictAction, regardless of whether a conflict actually occurs. + * * For MERGE, mergeActions is the list of actions that may be performed. The * result relation is required to support every action, regardless of whether * or not they are all executed. @@ -1045,7 +1048,7 @@ InitPlan(QueryDesc *queryDesc, int eflags) */ void CheckValidResultRel(ResultRelInfo *resultRelInfo, CmdType operation, - List *mergeActions) + OnConflictAction onConflictAction, List *mergeActions) { Relation resultRel = resultRelInfo->ri_RelationDesc; FdwRoutine *fdwroutine; @@ -1059,6 +1062,13 @@ CheckValidResultRel(ResultRelInfo *resultRelInfo, CmdType operation, case RELKIND_RELATION: case RELKIND_PARTITIONED_TABLE: CheckCmdReplicaIdentity(resultRel, operation); + + /* + * For INSERT ON CONFLICT DO UPDATE, additionally check that the + * target relation supports UPDATE. + */ + if (onConflictAction == ONCONFLICT_UPDATE) + CheckCmdReplicaIdentity(resultRel, CMD_UPDATE); break; case RELKIND_SEQUENCE: ereport(ERROR, diff --git a/src/backend/executor/execPartition.c b/src/backend/executor/execPartition.c index 514eae1037dc3..1f2da072632e3 100644 --- a/src/backend/executor/execPartition.c +++ b/src/backend/executor/execPartition.c @@ -360,8 +360,12 @@ ExecFindPartition(ModifyTableState *mtstate, true, false); if (rri) { + ModifyTable *node = (ModifyTable *) mtstate->ps.plan; + /* Verify this ResultRelInfo allows INSERTs */ - CheckValidResultRel(rri, CMD_INSERT, NIL); + CheckValidResultRel(rri, CMD_INSERT, + node ? node->onConflictAction : ONCONFLICT_NONE, + NIL); /* * Initialize information needed to insert this and @@ -527,7 +531,8 @@ ExecInitPartitionInfo(ModifyTableState *mtstate, EState *estate, * partition-key becomes a DELETE+INSERT operation, so this check is still * required when the operation is CMD_UPDATE. */ - CheckValidResultRel(leaf_part_rri, CMD_INSERT, NIL); + CheckValidResultRel(leaf_part_rri, CMD_INSERT, + node ? node->onConflictAction : ONCONFLICT_NONE, NIL); /* * Open partition indices. The user may have asked to check for conflicts diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index 7c6c2c1f6e42a..b0c4e2c0d32a4 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -4811,7 +4811,8 @@ ExecInitModifyTable(ModifyTable *node, EState *estate, int eflags) /* * Verify result relation is a valid target for the current operation */ - CheckValidResultRel(resultRelInfo, operation, mergeActions); + CheckValidResultRel(resultRelInfo, operation, node->onConflictAction, + mergeActions); resultRelInfo++; i++; diff --git a/src/include/executor/executor.h b/src/include/executor/executor.h index 54a68f74d4373..ac5190c0ef8e7 100644 --- a/src/include/executor/executor.h +++ b/src/include/executor/executor.h @@ -243,6 +243,7 @@ extern bool ExecCheckPermissions(List *rangeTable, List *rteperminfos, bool ereport_on_violation); extern bool ExecCheckOneRelPerms(RTEPermissionInfo *perminfo); extern void CheckValidResultRel(ResultRelInfo *resultRelInfo, CmdType operation, + OnConflictAction onConflictAction, List *mergeActions); extern void InitResultRelInfo(ResultRelInfo *resultRelInfo, Relation resultRelationDesc, diff --git a/src/test/regress/expected/publication.out b/src/test/regress/expected/publication.out index 53268059142ee..00f3cb978d774 100644 --- a/src/test/regress/expected/publication.out +++ b/src/test/regress/expected/publication.out @@ -1924,6 +1924,29 @@ DROP PUBLICATION pub1; DROP PUBLICATION pub2; DROP TABLE gencols; RESET client_min_messages; +-- Test that the INSERT ON CONFLICT command correctly checks REPLICA IDENTITY +-- when the target table is published. +CREATE TABLE testpub_insert_onconfl_no_ri (a int unique, b int); +CREATE TABLE testpub_insert_onconfl_parted (a int unique, b int) PARTITION by RANGE (a); +CREATE TABLE testpub_insert_onconfl_part_no_ri PARTITION OF testpub_insert_onconfl_parted FOR VALUES FROM (1) TO (10); +SET client_min_messages = 'ERROR'; +CREATE PUBLICATION pub1 FOR ALL TABLES; +RESET client_min_messages; +-- fail - missing REPLICA IDENTITY +INSERT INTO testpub_insert_onconfl_no_ri VALUES (1, 1) ON CONFLICT (a) DO UPDATE SET b = 2; +ERROR: cannot update table "testpub_insert_onconfl_no_ri" because it does not have a replica identity and publishes updates +HINT: To enable updating the table, set REPLICA IDENTITY using ALTER TABLE. +-- ok - no updates +INSERT INTO testpub_insert_onconfl_no_ri VALUES (1, 1) ON CONFLICT DO NOTHING; +-- fail - missing REPLICA IDENTITY in partition testpub_insert_onconfl_no_ri +INSERT INTO testpub_insert_onconfl_parted VALUES (1, 1) ON CONFLICT (a) DO UPDATE SET b = 2; +ERROR: cannot update table "testpub_insert_onconfl_part_no_ri" because it does not have a replica identity and publishes updates +HINT: To enable updating the table, set REPLICA IDENTITY using ALTER TABLE. +-- ok - no updates +INSERT INTO testpub_insert_onconfl_parted VALUES (1, 1) ON CONFLICT DO NOTHING; +DROP PUBLICATION pub1; +DROP TABLE testpub_insert_onconfl_no_ri; +DROP TABLE testpub_insert_onconfl_parted; RESET SESSION AUTHORIZATION; DROP ROLE regress_publication_user, regress_publication_user2; DROP ROLE regress_publication_user_dummy; diff --git a/src/test/regress/sql/publication.sql b/src/test/regress/sql/publication.sql index deddf0da8445f..53422d30320d3 100644 --- a/src/test/regress/sql/publication.sql +++ b/src/test/regress/sql/publication.sql @@ -1223,6 +1223,33 @@ DROP PUBLICATION pub2; DROP TABLE gencols; RESET client_min_messages; + +-- Test that the INSERT ON CONFLICT command correctly checks REPLICA IDENTITY +-- when the target table is published. +CREATE TABLE testpub_insert_onconfl_no_ri (a int unique, b int); +CREATE TABLE testpub_insert_onconfl_parted (a int unique, b int) PARTITION by RANGE (a); +CREATE TABLE testpub_insert_onconfl_part_no_ri PARTITION OF testpub_insert_onconfl_parted FOR VALUES FROM (1) TO (10); + +SET client_min_messages = 'ERROR'; +CREATE PUBLICATION pub1 FOR ALL TABLES; +RESET client_min_messages; + +-- fail - missing REPLICA IDENTITY +INSERT INTO testpub_insert_onconfl_no_ri VALUES (1, 1) ON CONFLICT (a) DO UPDATE SET b = 2; + +-- ok - no updates +INSERT INTO testpub_insert_onconfl_no_ri VALUES (1, 1) ON CONFLICT DO NOTHING; + +-- fail - missing REPLICA IDENTITY in partition testpub_insert_onconfl_no_ri +INSERT INTO testpub_insert_onconfl_parted VALUES (1, 1) ON CONFLICT (a) DO UPDATE SET b = 2; + +-- ok - no updates +INSERT INTO testpub_insert_onconfl_parted VALUES (1, 1) ON CONFLICT DO NOTHING; + +DROP PUBLICATION pub1; +DROP TABLE testpub_insert_onconfl_no_ri; +DROP TABLE testpub_insert_onconfl_parted; + RESET SESSION AUTHORIZATION; DROP ROLE regress_publication_user, regress_publication_user2; DROP ROLE regress_publication_user_dummy; From 311340f17863b0f87b3af32649ee5a2a58988b08 Mon Sep 17 00:00:00 2001 From: Dean Rasheed Date: Thu, 4 Sep 2025 11:47:15 +0100 Subject: [PATCH 215/457] Fix replica identity check for MERGE. When executing a MERGE, check that the target relation supports all actions mentioned in the MERGE command. Specifically, check that it has a REPLICA IDENTITY if it publishes updates or deletes and the MERGE command contains update or delete actions. Failing to do this can silently break replication. Author: Zhijie Hou Reviewed-by: Ashutosh Bapat Reviewed-by: Dean Rasheed Tested-by: Chao Li Discussion: https://postgr.es/m/OS3PR01MB57180C87E43A679A730482DF94B62@OS3PR01MB5718.jpnprd01.prod.outlook.com Backpatch-through: 15 --- src/backend/executor/execMain.c | 11 +++++++- src/test/regress/expected/publication.out | 28 ++++++++++++++++++++ src/test/regress/sql/publication.sql | 31 +++++++++++++++++++++++ 3 files changed, 69 insertions(+), 1 deletion(-) diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index 8f56d5e312ec2..ff12e2e136438 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -1061,7 +1061,16 @@ CheckValidResultRel(ResultRelInfo *resultRelInfo, CmdType operation, { case RELKIND_RELATION: case RELKIND_PARTITIONED_TABLE: - CheckCmdReplicaIdentity(resultRel, operation); + + /* + * For MERGE, check that the target relation supports each action. + * For other operations, just check the operation itself. + */ + if (operation == CMD_MERGE) + foreach_node(MergeAction, action, mergeActions) + CheckCmdReplicaIdentity(resultRel, action->commandType); + else + CheckCmdReplicaIdentity(resultRel, operation); /* * For INSERT ON CONFLICT DO UPDATE, additionally check that the diff --git a/src/test/regress/expected/publication.out b/src/test/regress/expected/publication.out index 00f3cb978d774..895ca87a0dfeb 100644 --- a/src/test/regress/expected/publication.out +++ b/src/test/regress/expected/publication.out @@ -1947,6 +1947,34 @@ INSERT INTO testpub_insert_onconfl_parted VALUES (1, 1) ON CONFLICT DO NOTHING; DROP PUBLICATION pub1; DROP TABLE testpub_insert_onconfl_no_ri; DROP TABLE testpub_insert_onconfl_parted; +-- Test that the MERGE command correctly checks REPLICA IDENTITY when the +-- target table is published. +CREATE TABLE testpub_merge_no_ri (a int, b int); +CREATE TABLE testpub_merge_pk (a int primary key, b int); +SET client_min_messages = 'ERROR'; +CREATE PUBLICATION pub1 FOR ALL TABLES; +RESET client_min_messages; +-- fail - missing REPLICA IDENTITY +MERGE INTO testpub_merge_no_ri USING testpub_merge_pk s ON s.a >= 1 + WHEN MATCHED THEN UPDATE SET b = s.b; +ERROR: cannot update table "testpub_merge_no_ri" because it does not have a replica identity and publishes updates +HINT: To enable updating the table, set REPLICA IDENTITY using ALTER TABLE. +-- fail - missing REPLICA IDENTITY +MERGE INTO testpub_merge_no_ri USING testpub_merge_pk s ON s.a >= 1 + WHEN MATCHED THEN DELETE; +ERROR: cannot delete from table "testpub_merge_no_ri" because it does not have a replica identity and publishes deletes +HINT: To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE. +-- ok - insert and do nothing are not restricted +MERGE INTO testpub_merge_no_ri USING testpub_merge_pk s ON s.a >= 1 + WHEN MATCHED THEN DO NOTHING + WHEN NOT MATCHED THEN INSERT (a, b) VALUES (0, 0); +-- ok - REPLICA IDENTITY is DEFAULT and table has a PK +MERGE INTO testpub_merge_pk USING testpub_merge_no_ri s ON s.a >= 1 + WHEN MATCHED AND s.a > 0 THEN UPDATE SET b = s.b + WHEN MATCHED THEN DELETE; +DROP PUBLICATION pub1; +DROP TABLE testpub_merge_no_ri; +DROP TABLE testpub_merge_pk; RESET SESSION AUTHORIZATION; DROP ROLE regress_publication_user, regress_publication_user2; DROP ROLE regress_publication_user_dummy; diff --git a/src/test/regress/sql/publication.sql b/src/test/regress/sql/publication.sql index 53422d30320d3..3f42306139533 100644 --- a/src/test/regress/sql/publication.sql +++ b/src/test/regress/sql/publication.sql @@ -1250,6 +1250,37 @@ DROP PUBLICATION pub1; DROP TABLE testpub_insert_onconfl_no_ri; DROP TABLE testpub_insert_onconfl_parted; +-- Test that the MERGE command correctly checks REPLICA IDENTITY when the +-- target table is published. +CREATE TABLE testpub_merge_no_ri (a int, b int); +CREATE TABLE testpub_merge_pk (a int primary key, b int); + +SET client_min_messages = 'ERROR'; +CREATE PUBLICATION pub1 FOR ALL TABLES; +RESET client_min_messages; + +-- fail - missing REPLICA IDENTITY +MERGE INTO testpub_merge_no_ri USING testpub_merge_pk s ON s.a >= 1 + WHEN MATCHED THEN UPDATE SET b = s.b; + +-- fail - missing REPLICA IDENTITY +MERGE INTO testpub_merge_no_ri USING testpub_merge_pk s ON s.a >= 1 + WHEN MATCHED THEN DELETE; + +-- ok - insert and do nothing are not restricted +MERGE INTO testpub_merge_no_ri USING testpub_merge_pk s ON s.a >= 1 + WHEN MATCHED THEN DO NOTHING + WHEN NOT MATCHED THEN INSERT (a, b) VALUES (0, 0); + +-- ok - REPLICA IDENTITY is DEFAULT and table has a PK +MERGE INTO testpub_merge_pk USING testpub_merge_no_ri s ON s.a >= 1 + WHEN MATCHED AND s.a > 0 THEN UPDATE SET b = s.b + WHEN MATCHED THEN DELETE; + +DROP PUBLICATION pub1; +DROP TABLE testpub_merge_no_ri; +DROP TABLE testpub_merge_pk; + RESET SESSION AUTHORIZATION; DROP ROLE regress_publication_user, regress_publication_user2; DROP ROLE regress_publication_user_dummy; From a730ad855144d73a29a24cfdb00a5e0f954bdaec Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 5 Sep 2025 14:10:24 +0900 Subject: [PATCH 216/457] Fix outdated comments in slru.c SlruRecentlyUsed() is an inline function since 53c2a97a9266, not a macro. The description of long_segment_names was missing at the top of SimpleLruInit(), part forgotten in 4ed8f0913bfd. Author: Julien Rouhaud Discussion: https://postgr.es/m/aLpBLMOYwEQkaleF@jrouhaud Backpatch-through: 17 --- src/backend/access/transam/slru.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/backend/access/transam/slru.c b/src/backend/access/transam/slru.c index bcc6adb4d295e..4b2a285db34c2 100644 --- a/src/backend/access/transam/slru.c +++ b/src/backend/access/transam/slru.c @@ -246,6 +246,7 @@ SimpleLruAutotuneBuffers(int divisor, int max) * buffer_tranche_id: tranche ID to use for the SLRU's per-buffer LWLocks. * bank_tranche_id: tranche ID to use for the bank LWLocks. * sync_handler: which set of functions to use to handle sync requests + * long_segment_names: use short or long segment names */ void SimpleLruInit(SlruCtl ctl, const char *name, int nslots, int nlsns, @@ -619,7 +620,7 @@ SimpleLruReadPage_ReadOnly(SlruCtl ctl, int64 pageno, TransactionId xid) shared->page_number[slotno] == pageno && shared->page_status[slotno] != SLRU_PAGE_READ_IN_PROGRESS) { - /* See comments for SlruRecentlyUsed macro */ + /* See comments for SlruRecentlyUsed() */ SlruRecentlyUsed(shared, slotno); /* update the stats counter of pages found in the SLRU */ From c70b6db34ffeab48beef1fb4ce61bcad3772b8dd Mon Sep 17 00:00:00 2001 From: Dean Rasheed Date: Fri, 5 Sep 2025 08:21:35 +0100 Subject: [PATCH 217/457] Fix concurrent update issue with MERGE. When executing a MERGE UPDATE action, if there is more than one concurrent update of the target row, the lock-and-retry code would sometimes incorrectly identify the latest version of the target tuple, leading to incorrect results. This was caused by using the ctid field from the TM_FailureData returned by table_tuple_lock() in a case where the result was TM_Ok, which is unsafe because the TM_FailureData struct is not guaranteed to be fully populated in that case. Instead, it should use the tupleid passed to (and updated by) table_tuple_lock(). To reduce the chances of similar errors in the future, improve the commentary for table_tuple_lock() and TM_FailureData to make it clearer that table_tuple_lock() updates the tid passed to it, and most fields of TM_FailureData should not be relied on in non-failure cases. An exception to this is the "traversed" field, which is set in both success and failure cases. Reported-by: Dmitry Author: Yugo Nagata Reviewed-by: Dean Rasheed Reviewed-by: Chao Li Discussion: https://postgr.es/m/1570d30e-2b95-4239-b9c3-f7bf2f2f8556@yandex.ru Backpatch-through: 15 --- src/backend/executor/nodeModifyTable.c | 9 +- src/include/access/tableam.h | 15 +- .../expected/merge-match-recheck.out | 145 ++++++++++++++++++ .../isolation/specs/merge-match-recheck.spec | 18 +++ 4 files changed, 179 insertions(+), 8 deletions(-) diff --git a/src/backend/executor/nodeModifyTable.c b/src/backend/executor/nodeModifyTable.c index b0c4e2c0d32a4..4c5647ac38a1c 100644 --- a/src/backend/executor/nodeModifyTable.c +++ b/src/backend/executor/nodeModifyTable.c @@ -3402,7 +3402,7 @@ ExecMergeMatched(ModifyTableContext *context, ResultRelInfo *resultRelInfo, * the tuple moved, and setting our current * resultRelInfo to that. */ - if (ItemPointerIndicatesMovedPartitions(&context->tmfd.ctid)) + if (ItemPointerIndicatesMovedPartitions(tupleid)) ereport(ERROR, (errcode(ERRCODE_T_R_SERIALIZATION_FAILURE), errmsg("tuple to be merged was already moved to another partition due to concurrent update"))); @@ -3450,12 +3450,13 @@ ExecMergeMatched(ModifyTableContext *context, ResultRelInfo *resultRelInfo, if (ItemPointerIsValid(&lockedtid)) UnlockTuple(resultRelInfo->ri_RelationDesc, &lockedtid, InplaceUpdateTupleLock); - LockTuple(resultRelInfo->ri_RelationDesc, &context->tmfd.ctid, + LockTuple(resultRelInfo->ri_RelationDesc, tupleid, InplaceUpdateTupleLock); - lockedtid = context->tmfd.ctid; + lockedtid = *tupleid; } + if (!table_tuple_fetch_row_version(resultRelationDesc, - &context->tmfd.ctid, + tupleid, SnapshotAny, resultRelInfo->ri_oldTupleSlot)) elog(ERROR, "failed to fetch the target tuple"); diff --git a/src/include/access/tableam.h b/src/include/access/tableam.h index 8713e12cbfb99..2b2b25c7c274f 100644 --- a/src/include/access/tableam.h +++ b/src/include/access/tableam.h @@ -121,7 +121,9 @@ typedef enum TU_UpdateIndexes /* * When table_tuple_update, table_tuple_delete, or table_tuple_lock fail * because the target tuple is already outdated, they fill in this struct to - * provide information to the caller about what happened. + * provide information to the caller about what happened. When those functions + * succeed, the contents of this struct should not be relied upon, except for + * `traversed`, which may be set in both success and failure cases. * * ctid is the target's ctid link: it is the same as the target's TID if the * target was deleted, or the location of the replacement tuple if the target @@ -137,6 +139,9 @@ typedef enum TU_UpdateIndexes * tuple); otherwise cmax is zero. (We make this restriction because * HeapTupleHeaderGetCmax doesn't work for tuples outdated in other * transactions.) + * + * traversed indicates if an update chain was followed in order to try to lock + * the target tuple. (This may be set in both success and failure cases.) */ typedef struct TM_FailureData { @@ -1508,7 +1513,7 @@ table_tuple_update(Relation rel, ItemPointer otid, TupleTableSlot *slot, * * Input parameters: * relation: relation containing tuple (caller must hold suitable lock) - * tid: TID of tuple to lock + * tid: TID of tuple to lock (updated if an update chain was followed) * snapshot: snapshot to use for visibility determinations * cid: current command ID (used for visibility test, and stored into * tuple's cmax if lock is successful) @@ -1533,8 +1538,10 @@ table_tuple_update(Relation rel, ItemPointer otid, TupleTableSlot *slot, * TM_WouldBlock: lock couldn't be acquired and wait_policy is skip * * In the failure cases other than TM_Invisible and TM_Deleted, the routine - * fills *tmfd with the tuple's t_ctid, t_xmax, and, if possible, t_cmax. See - * comments for struct TM_FailureData for additional info. + * fills *tmfd with the tuple's t_ctid, t_xmax, and, if possible, t_cmax. + * Additionally, in both success and failure cases, tmfd->traversed is set if + * an update chain was followed. See comments for struct TM_FailureData for + * additional info. */ static inline TM_Result table_tuple_lock(Relation rel, ItemPointer tid, Snapshot snapshot, diff --git a/src/test/isolation/expected/merge-match-recheck.out b/src/test/isolation/expected/merge-match-recheck.out index 90300f1db5ab3..4250b85af2d3c 100644 --- a/src/test/isolation/expected/merge-match-recheck.out +++ b/src/test/isolation/expected/merge-match-recheck.out @@ -271,6 +271,151 @@ key|balance|status|val step c1: COMMIT; +starting permutation: update1 update6 merge_bal c2 select1 c1 +step update1: UPDATE target t SET balance = balance + 10, val = t.val || ' updated by update1' WHERE t.key = 1; +step update6: UPDATE target t SET balance = balance - 100, val = t.val || ' updated by update6' WHERE t.key = 1; +step merge_bal: + MERGE INTO target t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3'; + +step c2: COMMIT; +step merge_bal: <... completed> +step select1: SELECT * FROM target; +key|balance|status|val +---+-------+------+------------------------------------------------- + 1| 140|s1 |setup updated by update1 updated by update6 when1 +(1 row) + +step c1: COMMIT; + +starting permutation: update1_pa update6_pa merge_bal_pa c2 select1_pa c1 +step update1_pa: UPDATE target_pa t SET balance = balance + 10, val = t.val || ' updated by update1_pa' WHERE t.key = 1; +step update6_pa: UPDATE target_pa t SET balance = balance - 100, val = t.val || ' updated by update6_pa' WHERE t.key = 1; +step merge_bal_pa: + MERGE INTO target_pa t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3'; + +step c2: COMMIT; +step merge_bal_pa: <... completed> +step select1_pa: SELECT * FROM target_pa; +key|balance|status|val +---+-------+------+------------------------------------------------------- + 1| 140|s1 |setup updated by update1_pa updated by update6_pa when1 +(1 row) + +step c1: COMMIT; + +starting permutation: update1_tg update6_tg merge_bal_tg c2 select1_tg c1 +s2: NOTICE: Update: (1,160,s1,setup) -> (1,170,s1,"setup updated by update1_tg") +step update1_tg: UPDATE target_tg t SET balance = balance + 10, val = t.val || ' updated by update1_tg' WHERE t.key = 1; +s2: NOTICE: Update: (1,170,s1,"setup updated by update1_tg") -> (1,70,s1,"setup updated by update1_tg updated by update6_tg") +step update6_tg: UPDATE target_tg t SET balance = balance - 100, val = t.val || ' updated by update6_tg' WHERE t.key = 1; +step merge_bal_tg: + WITH t AS ( + MERGE INTO target_tg t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3' + RETURNING t.* + ) + SELECT * FROM t; + +step c2: COMMIT; +s1: NOTICE: Update: (1,70,s1,"setup updated by update1_tg updated by update6_tg") -> (1,140,s1,"setup updated by update1_tg updated by update6_tg when1") +step merge_bal_tg: <... completed> +key|balance|status|val +---+-------+------+------------------------------------------------------- + 1| 140|s1 |setup updated by update1_tg updated by update6_tg when1 +(1 row) + +step select1_tg: SELECT * FROM target_tg; +key|balance|status|val +---+-------+------+------------------------------------------------------- + 1| 140|s1 |setup updated by update1_tg updated by update6_tg when1 +(1 row) + +step c1: COMMIT; + +starting permutation: update7 update6 merge_bal c2 select1 c1 +step update7: UPDATE target t SET balance = 350, val = t.val || ' updated by update7' WHERE t.key = 1; +step update6: UPDATE target t SET balance = balance - 100, val = t.val || ' updated by update6' WHERE t.key = 1; +step merge_bal: + MERGE INTO target t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3'; + +step c2: COMMIT; +step merge_bal: <... completed> +step select1: SELECT * FROM target; +key|balance|status|val +---+-------+------+------------------------------------------------- + 1| 2000|s1 |setup updated by update7 updated by update6 when3 +(1 row) + +step c1: COMMIT; + +starting permutation: update1_pa_move merge_bal_pa c2 c1 +step update1_pa_move: UPDATE target_pa t SET balance = 210, val = t.val || ' updated by update1_pa_move' WHERE t.key = 1; +step merge_bal_pa: + MERGE INTO target_pa t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3'; + +step c2: COMMIT; +step merge_bal_pa: <... completed> +ERROR: tuple to be locked was already moved to another partition due to concurrent update +step c1: COMMIT; + +starting permutation: update1_pa update1_pa_move merge_bal_pa c2 c1 +step update1_pa: UPDATE target_pa t SET balance = balance + 10, val = t.val || ' updated by update1_pa' WHERE t.key = 1; +step update1_pa_move: UPDATE target_pa t SET balance = 210, val = t.val || ' updated by update1_pa_move' WHERE t.key = 1; +step merge_bal_pa: + MERGE INTO target_pa t + USING (SELECT 1 as key) s + ON s.key = t.key + WHEN MATCHED AND balance < 100 THEN + UPDATE SET balance = balance * 2, val = t.val || ' when1' + WHEN MATCHED AND balance < 200 THEN + UPDATE SET balance = balance * 4, val = t.val || ' when2' + WHEN MATCHED AND balance < 300 THEN + UPDATE SET balance = balance * 8, val = t.val || ' when3'; + +step c2: COMMIT; +step merge_bal_pa: <... completed> +ERROR: tuple to be locked was already moved to another partition due to concurrent update +step c1: COMMIT; + starting permutation: update1 merge_delete c2 select1 c1 step update1: UPDATE target t SET balance = balance + 10, val = t.val || ' updated by update1' WHERE t.key = 1; step merge_delete: diff --git a/src/test/isolation/specs/merge-match-recheck.spec b/src/test/isolation/specs/merge-match-recheck.spec index 15226e40c9efc..6e7a776d17e5a 100644 --- a/src/test/isolation/specs/merge-match-recheck.spec +++ b/src/test/isolation/specs/merge-match-recheck.spec @@ -146,6 +146,8 @@ setup BEGIN ISOLATION LEVEL READ COMMITTED; } step "update1" { UPDATE target t SET balance = balance + 10, val = t.val || ' updated by update1' WHERE t.key = 1; } +step "update1_pa" { UPDATE target_pa t SET balance = balance + 10, val = t.val || ' updated by update1_pa' WHERE t.key = 1; } +step "update1_pa_move" { UPDATE target_pa t SET balance = 210, val = t.val || ' updated by update1_pa_move' WHERE t.key = 1; } step "update1_tg" { UPDATE target_tg t SET balance = balance + 10, val = t.val || ' updated by update1_tg' WHERE t.key = 1; } step "update2" { UPDATE target t SET status = 's2', val = t.val || ' updated by update2' WHERE t.key = 1; } step "update2_tg" { UPDATE target_tg t SET status = 's2', val = t.val || ' updated by update2_tg' WHERE t.key = 1; } @@ -153,6 +155,10 @@ step "update3" { UPDATE target t SET status = 's3', val = t.val || ' updated by step "update3_tg" { UPDATE target_tg t SET status = 's3', val = t.val || ' updated by update3_tg' WHERE t.key = 1; } step "update5" { UPDATE target t SET status = 's5', val = t.val || ' updated by update5' WHERE t.key = 1; } step "update5_tg" { UPDATE target_tg t SET status = 's5', val = t.val || ' updated by update5_tg' WHERE t.key = 1; } +step "update6" { UPDATE target t SET balance = balance - 100, val = t.val || ' updated by update6' WHERE t.key = 1; } +step "update6_pa" { UPDATE target_pa t SET balance = balance - 100, val = t.val || ' updated by update6_pa' WHERE t.key = 1; } +step "update6_tg" { UPDATE target_tg t SET balance = balance - 100, val = t.val || ' updated by update6_tg' WHERE t.key = 1; } +step "update7" { UPDATE target t SET balance = 350, val = t.val || ' updated by update7' WHERE t.key = 1; } step "update_bal1" { UPDATE target t SET balance = 50, val = t.val || ' updated by update_bal1' WHERE t.key = 1; } step "update_bal1_pa" { UPDATE target_pa t SET balance = 50, val = t.val || ' updated by update_bal1_pa' WHERE t.key = 1; } step "update_bal1_tg" { UPDATE target_tg t SET balance = 50, val = t.val || ' updated by update_bal1_tg' WHERE t.key = 1; } @@ -179,6 +185,18 @@ permutation "update_bal1" "merge_bal" "c2" "select1" "c1" permutation "update_bal1_pa" "merge_bal_pa" "c2" "select1_pa" "c1" permutation "update_bal1_tg" "merge_bal_tg" "c2" "select1_tg" "c1" +# merge_bal sees row concurrently updated twice and rechecks WHEN conditions, different check passes, so final balance = 140 +permutation "update1" "update6" "merge_bal" "c2" "select1" "c1" +permutation "update1_pa" "update6_pa" "merge_bal_pa" "c2" "select1_pa" "c1" +permutation "update1_tg" "update6_tg" "merge_bal_tg" "c2" "select1_tg" "c1" + +# merge_bal sees row concurrently updated twice, first update would cause all checks to fail, second update causes different check to pass, so final balance = 2000 +permutation "update7" "update6" "merge_bal" "c2" "select1" "c1" + +# merge_bal sees concurrently updated row moved to new partition, so fails +permutation "update1_pa_move" "merge_bal_pa" "c2" "c1" +permutation "update1_pa" "update1_pa_move" "merge_bal_pa" "c2" "c1" + # merge_delete sees concurrently updated row and rechecks WHEN conditions, but recheck passes and row is deleted permutation "update1" "merge_delete" "c2" "select1" "c1" permutation "update1_tg" "merge_delete_tg" "c2" "select1_tg" "c1" From fbb8ae2aec009491a72597d051b9f597266e1bd1 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 8 Sep 2025 10:07:18 +0900 Subject: [PATCH 218/457] Update parser README to include parse_jsontable.c The README was missing parse_jsontable.c which handles JSON_TABLE. Oversight in de3600452b61. Author: Karthik S Discussion: https://postgr.es/m/CAK4gQD9gdcj+vq_FZGp=Rv-W+41v8_C7cmCUmDeu=cfrOdfXEw@mail.gmail.com Backpatch-through: 17 --- src/backend/parser/README | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backend/parser/README b/src/backend/parser/README index e0c986a41efea..e26eb437a9f35 100644 --- a/src/backend/parser/README +++ b/src/backend/parser/README @@ -20,6 +20,7 @@ parse_cte.c handle Common Table Expressions (WITH clauses) parse_expr.c handle expressions like col, col + 3, x = 3 or x = 4 parse_enr.c handle ephemeral named rels (trigger transition tables, ...) parse_func.c handle functions, table.column and column identifiers +parse_jsontable.c handle JSON_TABLE parse_merge.c handle MERGE parse_node.c create nodes for various structures parse_oper.c handle operators in expressions From f256a7bba7286058bbf9d5ce160e3237dfe83b79 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 8 Sep 2025 15:52:48 +0900 Subject: [PATCH 219/457] Fix corruption of pgstats shared hashtable due to OOM failures A new pgstats entry is created as a two-step process: - The entry is looked at in the shared hashtable of pgstats, and is inserted if not found. - When not found and inserted, its fields are then initialized. This part include a DSA chunk allocation for the stats data of the new entry. As currently coded, if the DSA chunk allocation fails due to an out-of-memory failure, an ERROR is generated, leaving in the pgstats shared hashtable an inconsistent entry due to the first step, as the entry has already been inserted in the hashtable. These broken entries can then be found by other backends, crashing them. There are only two callers of pgstat_init_entry(), when loading the pgstats file at startup and when creating a new pgstats entry. This commit changes pgstat_init_entry() so as we use dsa_allocate_extended() with DSA_ALLOC_NO_OOM, making it return NULL on allocation failure instead of failing. This way, a backend failing an entry creation can take appropriate cleanup actions in the shared hashtable before throwing an error. Currently, this means removing the entry from the shared hashtable before throwing the error for the allocation failure. Out-of-memory errors unlikely happen in the wild, and we do not bother with back-patches when these are fixed, usually. However, the problem dealt with here is a degree worse as it breaks the shared memory state of pgstats, impacting other processes that may look at an inconsistent entry that a different process has failed to create. Author: Mikhail Kot Discussion: https://postgr.es/m/CAAi9E7jELo5_-sBENftnc2E8XhW2PKZJWfTC3i2y-GMQd2bcqQ@mail.gmail.com Backpatch-through: 15 --- src/backend/utils/activity/pgstat.c | 11 +++++++++ src/backend/utils/activity/pgstat_shmem.c | 28 ++++++++++++++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/backend/utils/activity/pgstat.c b/src/backend/utils/activity/pgstat.c index 6bc91ce0dadda..9113ee9d6a950 100644 --- a/src/backend/utils/activity/pgstat.c +++ b/src/backend/utils/activity/pgstat.c @@ -1975,6 +1975,17 @@ pgstat_read_statsfile(void) header = pgstat_init_entry(key.kind, p); dshash_release_lock(pgStatLocal.shared_hash, p); + if (header == NULL) + { + /* + * It would be tempting to switch this ERROR to a + * WARNING, but it would mean that all the statistics + * are discarded when the environment fails on OOM. + */ + elog(ERROR, "could not allocate entry %u/%u/%" PRIu64 " of type %c", + key.kind, key.dboid, + key.objid, t); + } if (!read_chunk(fpin, pgstat_get_entry_data(key.kind, header), diff --git a/src/backend/utils/activity/pgstat_shmem.c b/src/backend/utils/activity/pgstat_shmem.c index cca4277f2343a..08ec264baa3a7 100644 --- a/src/backend/utils/activity/pgstat_shmem.c +++ b/src/backend/utils/activity/pgstat_shmem.c @@ -290,6 +290,13 @@ pgstat_detach_shmem(void) * ------------------------------------------------------------ */ +/* + * Initialize entry newly-created. + * + * Returns NULL in the event of an allocation failure, so as callers can + * take cleanup actions as the entry initialized is already inserted in the + * shared hashtable. + */ PgStatShared_Common * pgstat_init_entry(PgStat_Kind kind, PgStatShared_HashEntry *shhashent) @@ -312,7 +319,12 @@ pgstat_init_entry(PgStat_Kind kind, pg_atomic_init_u32(&shhashent->generation, 0); shhashent->dropped = false; - chunk = dsa_allocate0(pgStatLocal.dsa, pgstat_get_kind_info(kind)->shared_size); + chunk = dsa_allocate_extended(pgStatLocal.dsa, + pgstat_get_kind_info(kind)->shared_size, + DSA_ALLOC_ZERO | DSA_ALLOC_NO_OOM); + if (chunk == InvalidDsaPointer) + return NULL; + shheader = dsa_get_address(pgStatLocal.dsa, chunk); shheader->magic = 0xdeadbeef; @@ -510,6 +522,20 @@ pgstat_get_entry_ref(PgStat_Kind kind, Oid dboid, uint64 objid, bool create, if (!shfound) { shheader = pgstat_init_entry(kind, shhashent); + if (shheader == NULL) + { + /* + * Failed the allocation of a new entry, so clean up the + * shared hashtable before giving up. + */ + dshash_delete_entry(pgStatLocal.shared_hash, shhashent); + + ereport(ERROR, + (errcode(ERRCODE_OUT_OF_MEMORY), + errmsg("out of memory"), + errdetail("Failed while allocating entry %u/%u/%" PRIu64 ".", + key.kind, key.dboid, key.objid))); + } pgstat_acquire_entry_ref(entry_ref, shhashent, shheader); if (created_entry != NULL) From a80b7a0547da0dc1dfff5df96b709a9e0321252b Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Tue, 9 Sep 2025 14:35:30 -0500 Subject: [PATCH 220/457] Fix documentation for shmem_startup_hook. This section claims that each backend executes the shmem_startup_hook shortly after attaching to shared memory, which is true for EXEC_BACKEND builds, but not for others. This commit adds this important detail. Oversight in commit 964152c476. Reported-by: Sami Imseih Reviewed-by: Sami Imseih Discussion: https://postgr.es/m/CAA5RZ0vEGT1eigGbVt604LkXP6mUPMwPMxQoRCbFny44w%2B9EUQ%40mail.gmail.com Backpatch-through: 17 --- doc/src/sgml/xfunc.sgml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml index 2d81afce8cb9b..1eb5abffd8f24 100644 --- a/doc/src/sgml/xfunc.sgml +++ b/doc/src/sgml/xfunc.sgml @@ -3669,11 +3669,14 @@ LWLockRelease(AddinShmemInitLock); shmem_startup_hook provides a convenient place for the initialization code, but it is not strictly required that all such code - be placed in this hook. Each backend will execute the registered - shmem_startup_hook shortly after it attaches to shared - memory. Note that add-ins should still acquire + be placed in this hook. On Windows (and anywhere else where + EXEC_BACKEND is defined), each backend executes the + registered shmem_startup_hook shortly after it + attaches to shared memory, so add-ins should still acquire AddinShmemInitLock within this hook, as shown in the - example above. + example above. On other platforms, only the postmaster process executes + the shmem_startup_hook, and each backend automatically + inherits the pointers to shared memory. From 039301b3fceb00a8c7c6cdf8ccbfaf912dd8cd5f Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 10 Sep 2025 07:23:22 +0900 Subject: [PATCH 221/457] Fix leak with SMgrRelations in startup process The startup process does not process shared invalidation messages, only sending them, and never calls AtEOXact_SMgr() which clean up any unpinned SMgrRelations. Hence, it is never able to free SMgrRelations on a periodic basis, bloating its hashtable over time. Like the checkpointer and the bgwriter, this commit takes a conservative approach by freeing periodically SMgrRelations when replaying a checkpoint record, either online or shutdown, so as the startup process has a way to perform a periodic cleanup. Issue caused by 21d9c3ee4ef7, so backpatch down to v17. Author: Jingtang Zhang Reviewed-by: Yuhang Qiu Discussion: https://postgr.es/m/28C687D4-F335-417E-B06C-6612A0BD5A10@gmail.com Backpatch-through: 17 --- src/backend/access/transam/xlog.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index c9e5daecd5e47..15b09ac9770d4 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -8403,6 +8403,14 @@ xlog_redo(XLogReaderState *record) checkPoint.ThisTimeLineID, replayTLI))); RecoveryRestartPoint(&checkPoint, record); + + /* + * After replaying a checkpoint record, free all smgr objects. + * Otherwise we would never do so for dropped relations, as the + * startup does not process shared invalidation messages or call + * AtEOXact_SMgr(). + */ + smgrdestroyall(); } else if (info == XLOG_CHECKPOINT_ONLINE) { @@ -8461,6 +8469,14 @@ xlog_redo(XLogReaderState *record) checkPoint.ThisTimeLineID, replayTLI))); RecoveryRestartPoint(&checkPoint, record); + + /* + * After replaying a checkpoint record, free all smgr objects. + * Otherwise we would never do so for dropped relations, as the + * startup does not process shared invalidation messages or call + * AtEOXact_SMgr(). + */ + smgrdestroyall(); } else if (info == XLOG_OVERWRITE_CONTRECORD) { From a7024398b80a836a83c00af42c6ab7cc25c12087 Mon Sep 17 00:00:00 2001 From: Jeff Davis Date: Tue, 9 Sep 2025 16:04:04 -0700 Subject: [PATCH 222/457] meson: build checksums with extra optimization flags. Use -funroll-loops and -ftree-vectorize when building checksum.c to match what autoconf does. Missed backport of 9af672bcb2, noticed by Nathan Bossart. Reported-by: Nathan Bossart Discussion: https://postgr.es/m/a81f2f7ef34afc24a89c613671ea017e3651329c.camel@j-davis.com Reviewed-by: Andres Freund Backpatch-through: 16 --- src/backend/storage/page/meson.build | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/backend/storage/page/meson.build b/src/backend/storage/page/meson.build index c3e4a805862a9..112f00ff36552 100644 --- a/src/backend/storage/page/meson.build +++ b/src/backend/storage/page/meson.build @@ -1,7 +1,15 @@ # Copyright (c) 2022-2025, PostgreSQL Global Development Group +checksum_backend_lib = static_library('checksum_backend_lib', + 'checksum.c', + dependencies: backend_build_deps, + kwargs: internal_lib_args, + c_args: vectorize_cflags + unroll_loops_cflags, +) + +backend_link_with += checksum_backend_lib + backend_sources += files( 'bufpage.c', - 'checksum.c', 'itemptr.c', ) From 21fdc37d219acebd298d2e7b309b111a5174ae4c Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Wed, 10 Sep 2025 11:49:53 +0200 Subject: [PATCH 223/457] Fix CREATE TABLE LIKE with not-valid check constraint In CREATE TABLE ... LIKE, any check constraints copied from the source table should be set to valid if they are ENFORCED (the default). Bug introduced in commit ca87c415e2f. Author: jian he Discussion: https://www.postgresql.org/message-id/CACJufxH%3D%2Bod8Wy0P4L3_GpapNwLUP3oAes5UFRJ7yTxrM_M5kg%40mail.gmail.com --- src/backend/parser/parse_utilcmd.c | 3 +-- src/test/regress/expected/create_table_like.out | 8 ++++++++ src/test/regress/sql/create_table_like.sql | 1 + 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/backend/parser/parse_utilcmd.c b/src/backend/parser/parse_utilcmd.c index afcf54169c3b3..e96b38a59d503 100644 --- a/src/backend/parser/parse_utilcmd.c +++ b/src/backend/parser/parse_utilcmd.c @@ -1461,7 +1461,6 @@ expandTableLikeClause(RangeVar *heapRel, TableLikeClause *table_like_clause) char *ccname = constr->check[ccnum].ccname; char *ccbin = constr->check[ccnum].ccbin; bool ccenforced = constr->check[ccnum].ccenforced; - bool ccvalid = constr->check[ccnum].ccvalid; bool ccnoinherit = constr->check[ccnum].ccnoinherit; Node *ccbin_node; bool found_whole_row; @@ -1492,7 +1491,7 @@ expandTableLikeClause(RangeVar *heapRel, TableLikeClause *table_like_clause) n->conname = pstrdup(ccname); n->location = -1; n->is_enforced = ccenforced; - n->initially_valid = ccvalid; + n->initially_valid = ccenforced; /* sic */ n->is_no_inherit = ccnoinherit; n->raw_expr = NULL; n->cooked_expr = nodeToString(ccbin_node); diff --git a/src/test/regress/expected/create_table_like.out b/src/test/regress/expected/create_table_like.out index 29a779c2e9072..d3c35c148475d 100644 --- a/src/test/regress/expected/create_table_like.out +++ b/src/test/regress/expected/create_table_like.out @@ -320,6 +320,7 @@ DROP TABLE inhz; -- including storage and comments CREATE TABLE ctlt1 (a text CHECK (length(a) > 2) ENFORCED PRIMARY KEY, b text CHECK (length(b) > 100) NOT ENFORCED); +ALTER TABLE ctlt1 ADD CONSTRAINT cc CHECK (length(b) > 100) NOT VALID; CREATE INDEX ctlt1_b_key ON ctlt1 (b); CREATE INDEX ctlt1_fnidx ON ctlt1 ((a || b)); CREATE STATISTICS ctlt1_a_b_stat ON a,b FROM ctlt1; @@ -378,6 +379,7 @@ SELECT conname, description FROM pg_description, pg_constraint c WHERE classoid CREATE TABLE ctlt1_inh (LIKE ctlt1 INCLUDING CONSTRAINTS INCLUDING COMMENTS) INHERITS (ctlt1); NOTICE: merging column "a" with inherited definition NOTICE: merging column "b" with inherited definition +NOTICE: merging constraint "cc" with inherited definition NOTICE: merging constraint "ctlt1_a_check" with inherited definition NOTICE: merging constraint "ctlt1_b_check" with inherited definition \d+ ctlt1_inh @@ -387,6 +389,7 @@ NOTICE: merging constraint "ctlt1_b_check" with inherited definition a | text | | not null | | main | | A b | text | | | | extended | | B Check constraints: + "cc" CHECK (length(b) > 100) "ctlt1_a_check" CHECK (length(a) > 2) "ctlt1_b_check" CHECK (length(b) > 100) NOT ENFORCED Not-null constraints: @@ -409,6 +412,7 @@ NOTICE: merging multiple inherited definitions of column "a" b | text | | | | extended | | c | text | | | | external | | Check constraints: + "cc" CHECK (length(b) > 100) "ctlt1_a_check" CHECK (length(a) > 2) "ctlt1_b_check" CHECK (length(b) > 100) NOT ENFORCED "ctlt3_a_check" CHECK (length(a) < 5) @@ -430,6 +434,7 @@ NOTICE: merging column "a" with inherited definition Indexes: "ctlt13_like_expr_idx" btree ((a || c)) Check constraints: + "cc" CHECK (length(b) > 100) "ctlt1_a_check" CHECK (length(a) > 2) "ctlt1_b_check" CHECK (length(b) > 100) NOT ENFORCED "ctlt3_a_check" CHECK (length(a) < 5) @@ -456,6 +461,7 @@ Indexes: "ctlt_all_b_idx" btree (b) "ctlt_all_expr_idx" btree ((a || b)) Check constraints: + "cc" CHECK (length(b) > 100) "ctlt1_a_check" CHECK (length(a) > 2) "ctlt1_b_check" CHECK (length(b) > 100) NOT ENFORCED Statistics objects: @@ -499,6 +505,7 @@ Indexes: "pg_attrdef_b_idx" btree (b) "pg_attrdef_expr_idx" btree ((a || b)) Check constraints: + "cc" CHECK (length(b) > 100) "ctlt1_a_check" CHECK (length(a) > 2) "ctlt1_b_check" CHECK (length(b) > 100) NOT ENFORCED Statistics objects: @@ -524,6 +531,7 @@ Indexes: "ctlt1_b_idx" btree (b) "ctlt1_expr_idx" btree ((a || b)) Check constraints: + "cc" CHECK (length(b) > 100) "ctlt1_a_check" CHECK (length(a) > 2) "ctlt1_b_check" CHECK (length(b) > 100) NOT ENFORCED Statistics objects: diff --git a/src/test/regress/sql/create_table_like.sql b/src/test/regress/sql/create_table_like.sql index bf8702116a74b..93389b57dbf95 100644 --- a/src/test/regress/sql/create_table_like.sql +++ b/src/test/regress/sql/create_table_like.sql @@ -130,6 +130,7 @@ DROP TABLE inhz; -- including storage and comments CREATE TABLE ctlt1 (a text CHECK (length(a) > 2) ENFORCED PRIMARY KEY, b text CHECK (length(b) > 100) NOT ENFORCED); +ALTER TABLE ctlt1 ADD CONSTRAINT cc CHECK (length(b) > 100) NOT VALID; CREATE INDEX ctlt1_b_key ON ctlt1 (b); CREATE INDEX ctlt1_fnidx ON ctlt1 ((a || b)); CREATE STATISTICS ctlt1_a_b_stat ON a,b FROM ctlt1; From 87ea6e9b66b64c10c9d203691221dfc8594c7697 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Wed, 10 Sep 2025 11:21:12 -0500 Subject: [PATCH 224/457] meson: Build numeric.c with -ftree-vectorize. autoconf builds have compiled this file with -ftree-vectorize since commit 8870917623, but meson builds seem to have missed the memo. Reviewed-by: Jeff Davis Discussion: https://postgr.es/m/aL85CeasM51-0D1h%40nathan Backpatch-through: 16 --- src/backend/utils/adt/meson.build | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/backend/utils/adt/meson.build b/src/backend/utils/adt/meson.build index 244f48f4fd711..624ae3187722e 100644 --- a/src/backend/utils/adt/meson.build +++ b/src/backend/utils/adt/meson.build @@ -1,5 +1,15 @@ # Copyright (c) 2022-2025, PostgreSQL Global Development Group +# Some code in numeric.c benefits from auto-vectorization +numeric_backend_lib = static_library('numeric_backend_lib', + 'numeric.c', + dependencies: backend_build_deps, + kwargs: internal_lib_args, + c_args: vectorize_cflags, +) + +backend_link_with += numeric_backend_lib + backend_sources += files( 'acl.c', 'amutils.c', @@ -59,7 +69,6 @@ backend_sources += files( 'network_gist.c', 'network_selfuncs.c', 'network_spgist.c', - 'numeric.c', 'numutils.c', 'oid.c', 'oracle_compat.c', From bc865ff6d1f0a31e997eb479785f588adf1b7cf8 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 10 Sep 2025 16:05:03 -0400 Subject: [PATCH 225/457] Fix memory leakage in nodeSubplan.c. If the hash functions used for hashing tuples leaked any memory, we failed to clean that up, resulting in query-lifespan memory leakage in queries using hashed subplans. One way that could happen is if the values being hashed require de-toasting, since most of our hash functions don't trouble to clean up de-toasted inputs. Prior to commit bf6c614a2, this leakage was largely masked because TupleHashTableMatch would reset hashtable->tempcxt (via execTuplesMatch). But it doesn't do that anymore, and that's not really the right place for this anyway: doing it there could reset the tempcxt many times per hash lookup, or not at all. Instead put reset calls into ExecHashSubPlan and buildSubPlanHash. Along the way to that, rearrange ExecHashSubPlan so that there's just one place to call MemoryContextReset instead of several. This amounts to accepting the de-facto API spec that the caller of the TupleHashTable routines is responsible for resetting the tempcxt adequately often. Although the other callers seem to get this right, it was not documented anywhere, so add a comment about it. Bug: #19040 Reported-by: Haiyang Li Author: Haiyang Li Reviewed-by: Fei Changhong Reviewed-by: Tom Lane Discussion: https://postgr.es/m/19040-c9b6073ef814f48c@postgresql.org Backpatch-through: 13 --- src/backend/executor/execGrouping.c | 6 +++ src/backend/executor/nodeSubplan.c | 70 +++++++++++------------------ 2 files changed, 33 insertions(+), 43 deletions(-) diff --git a/src/backend/executor/execGrouping.c b/src/backend/executor/execGrouping.c index b540074935386..75087204f0c69 100644 --- a/src/backend/executor/execGrouping.c +++ b/src/backend/executor/execGrouping.c @@ -156,6 +156,12 @@ execTuplesHashPrepare(int numCols, * * Note that the keyColIdx, hashfunctions, and collations arrays must be * allocated in storage that will live as long as the hashtable does. + * + * LookupTupleHashEntry, FindTupleHashEntry, and related functions may leak + * memory in the tempcxt. It is caller's responsibility to reset that context + * reasonably often, typically once per tuple. (We do it that way, rather + * than managing an extra context within the hashtable, because in many cases + * the caller can specify a tempcxt that it needs to reset per-tuple anyway.) */ TupleHashTable BuildTupleHashTable(PlanState *parent, diff --git a/src/backend/executor/nodeSubplan.c b/src/backend/executor/nodeSubplan.c index f7f6fc2da0b95..8e55dcc159b0b 100644 --- a/src/backend/executor/nodeSubplan.c +++ b/src/backend/executor/nodeSubplan.c @@ -102,6 +102,7 @@ ExecHashSubPlan(SubPlanState *node, ExprContext *econtext, bool *isNull) { + bool result = false; SubPlan *subplan = node->subplan; PlanState *planstate = node->planstate; TupleTableSlot *slot; @@ -132,14 +133,6 @@ ExecHashSubPlan(SubPlanState *node, node->projLeft->pi_exprContext = econtext; slot = ExecProject(node->projLeft); - /* - * Note: because we are typically called in a per-tuple context, we have - * to explicitly clear the projected tuple before returning. Otherwise, - * we'll have a double-free situation: the per-tuple context will probably - * be reset before we're called again, and then the tuple slot will think - * it still needs to free the tuple. - */ - /* * If the LHS is all non-null, probe for an exact match in the main hash * table. If we find one, the result is TRUE. Otherwise, scan the @@ -161,19 +154,10 @@ ExecHashSubPlan(SubPlanState *node, slot, node->cur_eq_comp, node->lhs_hash_expr) != NULL) - { - ExecClearTuple(slot); - return BoolGetDatum(true); - } - if (node->havenullrows && - findPartialMatch(node->hashnulls, slot, node->cur_eq_funcs)) - { - ExecClearTuple(slot); + result = true; + else if (node->havenullrows && + findPartialMatch(node->hashnulls, slot, node->cur_eq_funcs)) *isNull = true; - return BoolGetDatum(false); - } - ExecClearTuple(slot); - return BoolGetDatum(false); } /* @@ -186,34 +170,31 @@ ExecHashSubPlan(SubPlanState *node, * aren't provably unequal to the LHS; if so, the result is UNKNOWN. * Otherwise, the result is FALSE. */ - if (node->hashnulls == NULL) - { - ExecClearTuple(slot); - return BoolGetDatum(false); - } - if (slotAllNulls(slot)) - { - ExecClearTuple(slot); + else if (node->hashnulls == NULL) + /* just return FALSE */ ; + else if (slotAllNulls(slot)) *isNull = true; - return BoolGetDatum(false); - } /* Scan partly-null table first, since more likely to get a match */ - if (node->havenullrows && - findPartialMatch(node->hashnulls, slot, node->cur_eq_funcs)) - { - ExecClearTuple(slot); + else if (node->havenullrows && + findPartialMatch(node->hashnulls, slot, node->cur_eq_funcs)) *isNull = true; - return BoolGetDatum(false); - } - if (node->havehashrows && - findPartialMatch(node->hashtable, slot, node->cur_eq_funcs)) - { - ExecClearTuple(slot); + else if (node->havehashrows && + findPartialMatch(node->hashtable, slot, node->cur_eq_funcs)) *isNull = true; - return BoolGetDatum(false); - } + + /* + * Note: because we are typically called in a per-tuple context, we have + * to explicitly clear the projected tuple before returning. Otherwise, + * we'll have a double-free situation: the per-tuple context will probably + * be reset before we're called again, and then the tuple slot will think + * it still needs to free the tuple. + */ ExecClearTuple(slot); - return BoolGetDatum(false); + + /* Also must reset the hashtempcxt after each hashtable lookup. */ + MemoryContextReset(node->hashtempcxt); + + return BoolGetDatum(result); } /* @@ -642,6 +623,9 @@ buildSubPlanHash(SubPlanState *node, ExprContext *econtext) * during ExecProject. */ ResetExprContext(innerecontext); + + /* Also must reset the hashtempcxt after each hashtable lookup. */ + MemoryContextReset(node->hashtempcxt); } /* From e9682da594403fdb503669ca24f3f589a179cfe4 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 11 Sep 2025 10:15:37 +0900 Subject: [PATCH 226/457] Fix incorrect file reference in guc.h GucSource_Names was documented as being in guc.c, but since 0a20ff54f5e6 it is located in guc_tables.c. The reference to the location of GucSource_Names is important, as GucSource needs to be kept in sync with GucSource_Names. Author: David G. Johnston Discussion: https://postgr.es/m/CAKFQuwYPgAHWPYjPzK7iXzhSZ6MKR8w20_Nz7ZXpOvx=kZbs7A@mail.gmail.com Backpatch-through: 16 --- src/include/utils/guc.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/include/utils/guc.h b/src/include/utils/guc.h index f619100467df2..27f31404fff0d 100644 --- a/src/include/utils/guc.h +++ b/src/include/utils/guc.h @@ -106,7 +106,7 @@ typedef enum * will show as "default" in pg_settings. If there is a specific reason not * to want that, use source == PGC_S_OVERRIDE. * - * NB: see GucSource_Names in guc.c if you change this. + * NB: see GucSource_Names in guc_tables.c if you change this. */ typedef enum { From a4e87604bcdfb6b877b16cc767b2ed15411c7342 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 11 Sep 2025 17:17:24 +0900 Subject: [PATCH 227/457] Fix description of WAL record blocks in hash_xlog.h hash_xlog.h included descriptions for the blocks used in WAL records that were was not completely consistent with how the records are generated, with one block missing for SQUEEZE_PAGE, and inconsistent descriptions used for block 0 in VACUUM_ONE_PAGE and MOVE_PAGE_CONTENTS. This information was incorrect since c11453ce0aea, cross-checking the logic for the record generation. Author: Kirill Reshke Reviewed-by: Andrey Borodin Discussion: https://postgr.es/m/CALdSSPj1j=a1d1hVA3oabRFz0hSU3KKrYtZPijw4UPUM7LY9zw@mail.gmail.com Backpatch-through: 13 --- src/include/access/hash_xlog.h | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/include/access/hash_xlog.h b/src/include/access/hash_xlog.h index 6fe97de4d66f1..5d4671dc4c128 100644 --- a/src/include/access/hash_xlog.h +++ b/src/include/access/hash_xlog.h @@ -129,7 +129,7 @@ typedef struct xl_hash_split_complete * * This data record is used for XLOG_HASH_MOVE_PAGE_CONTENTS * - * Backup Blk 0: bucket page + * Backup Blk 0: primary bucket page * Backup Blk 1: page containing moved tuples * Backup Blk 2: page from which tuples will be removed */ @@ -149,12 +149,13 @@ typedef struct xl_hash_move_page_contents * * This data record is used for XLOG_HASH_SQUEEZE_PAGE * - * Backup Blk 0: page containing tuples moved from freed overflow page - * Backup Blk 1: freed overflow page - * Backup Blk 2: page previous to the freed overflow page - * Backup Blk 3: page next to the freed overflow page - * Backup Blk 4: bitmap page containing info of freed overflow page - * Backup Blk 5: meta page + * Backup Blk 0: primary bucket page + * Backup Blk 1: page containing tuples moved from freed overflow page + * Backup Blk 2: freed overflow page + * Backup Blk 3: page previous to the freed overflow page + * Backup Blk 4: page next to the freed overflow page + * Backup Blk 5: bitmap page containing info of freed overflow page + * Backup Blk 6: meta page */ typedef struct xl_hash_squeeze_page { @@ -245,7 +246,7 @@ typedef struct xl_hash_init_bitmap_page * * This data record is used for XLOG_HASH_VACUUM_ONE_PAGE * - * Backup Blk 0: bucket page + * Backup Blk 0: primary bucket page * Backup Blk 1: meta page */ typedef struct xl_hash_vacuum_one_page From 3e43a7b1ab971ed22e663891d941d4d00b6dd9fe Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Thu, 11 Sep 2025 11:55:29 +0200 Subject: [PATCH 228/457] Remove stray semicolon at global scope The Sun Studio compiler complains about an empty declaration here. Note for future historians: This does not mean that this compiler is still of current interest for anyone using PostgreSQL. But we can let this small fix be its parting gift. Reviewed-by: Andres Freund Reviewed-by: Tom Lane Discussion: https://www.postgresql.org/message-id/flat/a0f817ee-fb86-483a-8a14-b6f7f5991b6e%40eisentraut.org --- src/backend/replication/logical/slotsync.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/replication/logical/slotsync.c b/src/backend/replication/logical/slotsync.c index e534ccc449ab8..61b2e9396aa69 100644 --- a/src/backend/replication/logical/slotsync.c +++ b/src/backend/replication/logical/slotsync.c @@ -1338,7 +1338,7 @@ reset_syncing_flag() SpinLockRelease(&SlotSyncCtx->mutex); syncing_slots = false; -}; +} /* * The main loop of our worker process. From 3c02c46521b01f1e60caff2d056f3da5ee98ce58 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 11 Sep 2025 17:11:54 -0400 Subject: [PATCH 229/457] Report the correct is_temporary flag for column defaults. pg_event_trigger_dropped_objects() would report a column default object with is_temporary = false, even if it belongs to a temporary table. This seems clearly wrong, so adjust it to report the table's temp-ness. While here, refactor EventTriggerSQLDropAddObject to make its handling of namespace objects less messy and avoid duplication of the schema-lookup code. And add some explicit test coverage of dropped-object reports for dependencies of temp tables. Back-patch to v15. The bug exists further back, but the GetAttrDefaultColumnAddress function this patch depends on does not, and it doesn't seem worth adjusting it to cope with the older code. Author: Antoine Violin Co-authored-by: Tom Lane Discussion: https://postgr.es/m/CAFjUV9x3-hv0gihf+CtUc-1it0hh7Skp9iYFhMS7FJjtAeAptA@mail.gmail.com Backpatch-through: 15 --- src/backend/commands/event_trigger.c | 111 ++++++++++++++------ src/test/regress/expected/event_trigger.out | 37 +++++++ src/test/regress/sql/event_trigger.sql | 20 ++++ 3 files changed, 136 insertions(+), 32 deletions(-) diff --git a/src/backend/commands/event_trigger.c b/src/backend/commands/event_trigger.c index edc2c988e2934..ff5b82b0dab6b 100644 --- a/src/backend/commands/event_trigger.c +++ b/src/backend/commands/event_trigger.c @@ -21,6 +21,7 @@ #include "catalog/dependency.h" #include "catalog/indexing.h" #include "catalog/objectaccess.h" +#include "catalog/pg_attrdef.h" #include "catalog/pg_authid.h" #include "catalog/pg_auth_members.h" #include "catalog/pg_database.h" @@ -109,6 +110,8 @@ static Oid insert_event_trigger_tuple(const char *trigname, const char *eventnam static void validate_ddl_tags(const char *filtervar, List *taglist); static void validate_table_rewrite_tags(const char *filtervar, List *taglist); static void EventTriggerInvoke(List *fn_oid_list, EventTriggerData *trigdata); +static bool obtain_object_name_namespace(const ObjectAddress *object, + SQLDropObject *obj); static const char *stringify_grant_objtype(ObjectType objtype); static const char *stringify_adefprivs_objtype(ObjectType objtype); static void SetDatabaseHasLoginEventTriggers(void); @@ -1280,12 +1283,6 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no Assert(EventTriggerSupportsObject(object)); - /* don't report temp schemas except my own */ - if (object->classId == NamespaceRelationId && - (isAnyTempNamespace(object->objectId) && - !isTempNamespace(object->objectId))) - return; - oldcxt = MemoryContextSwitchTo(currentEventTriggerState->cxt); obj = palloc0(sizeof(SQLDropObject)); @@ -1293,21 +1290,88 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no obj->original = original; obj->normal = normal; + if (object->classId == NamespaceRelationId) + { + /* Special handling is needed for temp namespaces */ + if (isTempNamespace(object->objectId)) + obj->istemp = true; + else if (isAnyTempNamespace(object->objectId)) + { + /* don't report temp schemas except my own */ + pfree(obj); + MemoryContextSwitchTo(oldcxt); + return; + } + } + else if (object->classId == AttrDefaultRelationId) + { + /* We treat a column default as temp if its table is temp */ + ObjectAddress colobject; + + colobject = GetAttrDefaultColumnAddress(object->objectId); + if (OidIsValid(colobject.objectId)) + { + colobject.objectSubId = 0; /* convert to table reference */ + if (!obtain_object_name_namespace(&colobject, obj)) + { + pfree(obj); + MemoryContextSwitchTo(oldcxt); + return; + } + } + } + else + { + /* Generic handling for all other object classes */ + if (!obtain_object_name_namespace(object, obj)) + { + /* don't report temp objects except my own */ + pfree(obj); + MemoryContextSwitchTo(oldcxt); + return; + } + } + + /* object identity, objname and objargs */ + obj->objidentity = + getObjectIdentityParts(&obj->address, &obj->addrnames, &obj->addrargs, + false); + + /* object type */ + obj->objecttype = getObjectTypeDescription(&obj->address, false); + + slist_push_head(&(currentEventTriggerState->SQLDropList), &obj->next); + + MemoryContextSwitchTo(oldcxt); +} + +/* + * Fill obj->objname, obj->schemaname, and obj->istemp based on object. + * + * Returns true if this object should be reported, false if it should + * be ignored because it is a temporary object of another session. + */ +static bool +obtain_object_name_namespace(const ObjectAddress *object, SQLDropObject *obj) +{ /* * Obtain schema names from the object's catalog tuple, if one exists; * this lets us skip objects in temp schemas. We trust that * ObjectProperty contains all object classes that can be * schema-qualified. + * + * Currently, this function does nothing for object classes that are not + * in ObjectProperty, but we might sometime add special cases for that. */ if (is_objectclass_supported(object->classId)) { Relation catalog; HeapTuple tuple; - catalog = table_open(obj->address.classId, AccessShareLock); + catalog = table_open(object->classId, AccessShareLock); tuple = get_catalog_object_by_oid(catalog, get_object_attnum_oid(object->classId), - obj->address.objectId); + object->objectId); if (tuple) { @@ -1315,7 +1379,7 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no Datum datum; bool isnull; - attnum = get_object_attnum_namespace(obj->address.classId); + attnum = get_object_attnum_namespace(object->classId); if (attnum != InvalidAttrNumber) { datum = heap_getattr(tuple, attnum, @@ -1333,10 +1397,9 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no } else if (isAnyTempNamespace(namespaceId)) { - pfree(obj); + /* no need to fill any fields of *obj */ table_close(catalog, AccessShareLock); - MemoryContextSwitchTo(oldcxt); - return; + return false; } else { @@ -1346,10 +1409,10 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no } } - if (get_object_namensp_unique(obj->address.classId) && - obj->address.objectSubId == 0) + if (get_object_namensp_unique(object->classId) && + object->objectSubId == 0) { - attnum = get_object_attnum_name(obj->address.classId); + attnum = get_object_attnum_name(object->classId); if (attnum != InvalidAttrNumber) { datum = heap_getattr(tuple, attnum, @@ -1362,24 +1425,8 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no table_close(catalog, AccessShareLock); } - else - { - if (object->classId == NamespaceRelationId && - isTempNamespace(object->objectId)) - obj->istemp = true; - } - /* object identity, objname and objargs */ - obj->objidentity = - getObjectIdentityParts(&obj->address, &obj->addrnames, &obj->addrargs, - false); - - /* object type */ - obj->objecttype = getObjectTypeDescription(&obj->address, false); - - slist_push_head(&(currentEventTriggerState->SQLDropList), &obj->next); - - MemoryContextSwitchTo(oldcxt); + return true; } /* diff --git a/src/test/regress/expected/event_trigger.out b/src/test/regress/expected/event_trigger.out index 7b2198eac6f20..0e090cbc37500 100644 --- a/src/test/regress/expected/event_trigger.out +++ b/src/test/regress/expected/event_trigger.out @@ -476,6 +476,43 @@ NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_10_15 NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_15_20 name={evttrig,part_15_20} args={} DROP TABLE a_temp_tbl; NOTICE: NORMAL: orig=t normal=f istemp=t type=table identity=pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl} args={} +-- check unfiltered results, too +CREATE OR REPLACE FUNCTION event_trigger_report_dropped() + RETURNS event_trigger + LANGUAGE plpgsql +AS $$ +DECLARE r record; +BEGIN + FOR r IN SELECT * from pg_event_trigger_dropped_objects() + LOOP + RAISE NOTICE 'DROP: orig=% normal=% istemp=% type=% identity=% name=% args=%', + r.original, r.normal, r.is_temporary, r.object_type, + r.object_identity, r.address_names, r.address_args; + END LOOP; +END; $$; +NOTICE: END: command_tag=CREATE FUNCTION type=function identity=public.event_trigger_report_dropped() +CREATE TABLE evtrg_nontemp_table (f1 int primary key, f2 int default 42); +NOTICE: END: command_tag=CREATE TABLE type=table identity=public.evtrg_nontemp_table +NOTICE: END: command_tag=CREATE INDEX type=index identity=public.evtrg_nontemp_table_pkey +DROP TABLE evtrg_nontemp_table; +NOTICE: DROP: orig=t normal=f istemp=f type=table identity=public.evtrg_nontemp_table name={public,evtrg_nontemp_table} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=type identity=public.evtrg_nontemp_table name={public.evtrg_nontemp_table} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=type identity=public.evtrg_nontemp_table[] name={public.evtrg_nontemp_table[]} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=default value identity=for public.evtrg_nontemp_table.f2 name={public,evtrg_nontemp_table,f2} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=table constraint identity=evtrg_nontemp_table_f1_not_null on public.evtrg_nontemp_table name={public,evtrg_nontemp_table,evtrg_nontemp_table_f1_not_null} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=table constraint identity=evtrg_nontemp_table_pkey on public.evtrg_nontemp_table name={public,evtrg_nontemp_table,evtrg_nontemp_table_pkey} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=index identity=public.evtrg_nontemp_table_pkey name={public,evtrg_nontemp_table_pkey} args={} +CREATE TEMP TABLE a_temp_tbl (f1 int primary key, f2 int default 42); +NOTICE: END: command_tag=CREATE TABLE type=table identity=pg_temp.a_temp_tbl +NOTICE: END: command_tag=CREATE INDEX type=index identity=pg_temp.a_temp_tbl_pkey +DROP TABLE a_temp_tbl; +NOTICE: DROP: orig=t normal=f istemp=t type=table identity=pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=type identity=pg_temp.a_temp_tbl name={pg_temp.a_temp_tbl} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=type identity=pg_temp.a_temp_tbl[] name={pg_temp.a_temp_tbl[]} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=default value identity=for pg_temp.a_temp_tbl.f2 name={pg_temp,a_temp_tbl,f2} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=table constraint identity=a_temp_tbl_f1_not_null on pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl,a_temp_tbl_f1_not_null} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=table constraint identity=a_temp_tbl_pkey on pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl,a_temp_tbl_pkey} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=index identity=pg_temp.a_temp_tbl_pkey name={pg_temp,a_temp_tbl_pkey} args={} -- CREATE OPERATOR CLASS without FAMILY clause should report -- both CREATE OPERATOR FAMILY and CREATE OPERATOR CLASS CREATE OPERATOR CLASS evttrigopclass FOR TYPE int USING btree AS STORAGE int; diff --git a/src/test/regress/sql/event_trigger.sql b/src/test/regress/sql/event_trigger.sql index 013546b83057b..ef5978b9697aa 100644 --- a/src/test/regress/sql/event_trigger.sql +++ b/src/test/regress/sql/event_trigger.sql @@ -337,6 +337,26 @@ DROP INDEX evttrig.one_idx; DROP SCHEMA evttrig CASCADE; DROP TABLE a_temp_tbl; +-- check unfiltered results, too +CREATE OR REPLACE FUNCTION event_trigger_report_dropped() + RETURNS event_trigger + LANGUAGE plpgsql +AS $$ +DECLARE r record; +BEGIN + FOR r IN SELECT * from pg_event_trigger_dropped_objects() + LOOP + RAISE NOTICE 'DROP: orig=% normal=% istemp=% type=% identity=% name=% args=%', + r.original, r.normal, r.is_temporary, r.object_type, + r.object_identity, r.address_names, r.address_args; + END LOOP; +END; $$; + +CREATE TABLE evtrg_nontemp_table (f1 int primary key, f2 int default 42); +DROP TABLE evtrg_nontemp_table; +CREATE TEMP TABLE a_temp_tbl (f1 int primary key, f2 int default 42); +DROP TABLE a_temp_tbl; + -- CREATE OPERATOR CLASS without FAMILY clause should report -- both CREATE OPERATOR FAMILY and CREATE OPERATOR CLASS CREATE OPERATOR CLASS evttrigopclass FOR TYPE int USING btree AS STORAGE int; From 14bb47567a3977cd838f62c4297c2cc4c878e800 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Fri, 12 Sep 2025 07:27:48 +0200 Subject: [PATCH 230/457] Silence compiler warnings on clang 21 Clang 21 shows some new compiler warnings, for example: warning: variable 'dstsize' is uninitialized when passed as a const pointer argument here [-Wuninitialized-const-pointer] The fix is to initialize the variables when they are defined. This is similar to, for example, the existing situation in gistKeyIsEQ(). Discussion: https://www.postgresql.org/message-id/flat/6604ad6e-5934-43ac-8590-15113d6ae4b1%40eisentraut.org --- src/backend/access/common/toast_internals.c | 2 +- src/backend/access/gist/gistutil.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/backend/access/common/toast_internals.c b/src/backend/access/common/toast_internals.c index 7d8be8346ce52..b03196fdf3e3d 100644 --- a/src/backend/access/common/toast_internals.c +++ b/src/backend/access/common/toast_internals.c @@ -135,7 +135,7 @@ toast_save_datum(Relation rel, Datum value, char data[TOAST_MAX_CHUNK_SIZE + VARHDRSZ]; /* ensure union is aligned well enough: */ int32 align_it; - } chunk_data; + } chunk_data = {0}; /* silence compiler warning */ int32 chunk_size; int32 chunk_seq = 0; char *data_p; diff --git a/src/backend/access/gist/gistutil.c b/src/backend/access/gist/gistutil.c index c0aa7d0222f39..cdc4ab3151be1 100644 --- a/src/backend/access/gist/gistutil.c +++ b/src/backend/access/gist/gistutil.c @@ -157,7 +157,7 @@ gistMakeUnionItVec(GISTSTATE *giststate, IndexTuple *itvec, int len, { int i; GistEntryVector *evec; - int attrsize; + int attrsize = 0; /* silence compiler warning */ evec = (GistEntryVector *) palloc((len + 2) * sizeof(GISTENTRY) + GEVHDRSZ); @@ -242,7 +242,7 @@ gistMakeUnionKey(GISTSTATE *giststate, int attno, char padding[2 * sizeof(GISTENTRY) + GEVHDRSZ]; } storage; GistEntryVector *evec = &storage.gev; - int dstsize; + int dstsize = 0; /* silence compiler warning */ evec->n = 2; From 3c0018a6f417425b1e6f2516fe6493596d71bddf Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Fri, 12 Sep 2025 10:18:31 -0400 Subject: [PATCH 231/457] ci: openbsd: Increase RAM disk's size Its size was ~3.8GB before, which sometimes was not enough. OpenBSD CI task often were failing due to no space left on device. Increase the RAM disk size to ~4.6 GB. Author: Nazir Bilal Yavuz Discussion: https://postgr.es/m/CAN55FZ2XVVPJRJmGB2DsL3gOrOinWh=HWvj6GO1cHzJ=6LwTag@mail.gmail.com Backpatch-through: 18, where openbsd was added to CI --- src/tools/ci/gcp_ram_disk.sh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/tools/ci/gcp_ram_disk.sh b/src/tools/ci/gcp_ram_disk.sh index d48634512ac28..18dbb2037f5dc 100755 --- a/src/tools/ci/gcp_ram_disk.sh +++ b/src/tools/ci/gcp_ram_disk.sh @@ -15,7 +15,12 @@ case "`uname`" in umount /dev/sd0j # unused /usr/obj partition printf "m j\n\n\nswap\nw\nq\n" | disklabel -E sd0 swapon /dev/sd0j - mount -t mfs -o rw,noatime,nodev,-s=8000000 swap $CIRRUS_WORKING_DIR + # Remove the per-process data segment limit so that mount_mfs can allocate + # large memory filesystems. Without this, mount_mfs mmap() may fail with + # "Cannot allocate memory" if the requested size exceeds the current + # datasize limit. + ulimit -d unlimited + mount -t mfs -o rw,noatime,nodev,-s=10000000 swap $CIRRUS_WORKING_DIR ;; esac From e457312c0d19b3d4e60f44f7260280a2788c1503 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Fri, 12 Sep 2025 13:22:58 -0400 Subject: [PATCH 232/457] Always commute strategy when preprocessing DESC keys. A recently added nbtree preprocessing step failed to account for the fact that DESC columns already had their B-Tree strategy number commuted at this point in preprocessing. As a result, preprocessing could output a set of scan keys where one or more keys had the correct strategy number, but used the wrong comparison routine. To fix, make the faulty code path that looks up a more restrictive replacement operator/comparison routine commute its requested inequality strategy (while outputting the transformed strategy number as before). This makes the final transformed scan key comport with the approach preprocessing has always used to deal with DESC columns (which is described by comments above _bt_fix_scankey_strategy). Oversight in commit commit b3f1a13f, which made nbtree preprocessing perform transformations on skip array inequalities that can reduce the total number of index searches. Author: Peter Geoghegan Reported-By: Natalya Aksman Discussion: https://postgr.es/m/19049-b7df801e71de41b2@postgresql.org Backpatch-through: 18 --- src/backend/access/nbtree/nbtpreprocesskeys.c | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index 21c519cd108ed..4c9389c781a57 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -1410,6 +1410,7 @@ _bt_skiparray_strat_decrement(IndexScanDesc scan, ScanKey arraysk, Datum orig_sk_argument = high_compare->sk_argument, new_sk_argument; bool uflow; + int16 lookupstrat; Assert(high_compare->sk_strategy == BTLessStrategyNumber); @@ -1431,9 +1432,14 @@ _bt_skiparray_strat_decrement(IndexScanDesc scan, ScanKey arraysk, return; } - /* Look up <= operator (might fail) */ - leop = get_opfamily_member(opfamily, opcintype, opcintype, - BTLessEqualStrategyNumber); + /* + * Look up <= operator (might fail), accounting for the fact that a + * high_compare on a DESC column already had its strategy commuted + */ + lookupstrat = BTLessEqualStrategyNumber; + if (high_compare->sk_flags & SK_BT_DESC) + lookupstrat = BTGreaterEqualStrategyNumber; /* commute this too */ + leop = get_opfamily_member(opfamily, opcintype, opcintype, lookupstrat); if (!OidIsValid(leop)) return; cmp_proc = get_opcode(leop); @@ -1462,6 +1468,7 @@ _bt_skiparray_strat_increment(IndexScanDesc scan, ScanKey arraysk, Datum orig_sk_argument = low_compare->sk_argument, new_sk_argument; bool oflow; + int16 lookupstrat; Assert(low_compare->sk_strategy == BTGreaterStrategyNumber); @@ -1483,9 +1490,14 @@ _bt_skiparray_strat_increment(IndexScanDesc scan, ScanKey arraysk, return; } - /* Look up >= operator (might fail) */ - geop = get_opfamily_member(opfamily, opcintype, opcintype, - BTGreaterEqualStrategyNumber); + /* + * Look up >= operator (might fail), accounting for the fact that a + * low_compare on a DESC column already had its strategy commuted + */ + lookupstrat = BTGreaterEqualStrategyNumber; + if (low_compare->sk_flags & SK_BT_DESC) + lookupstrat = BTLessEqualStrategyNumber; /* commute this too */ + geop = get_opfamily_member(opfamily, opcintype, opcintype, lookupstrat); if (!OidIsValid(geop)) return; cmp_proc = get_opcode(geop); From ef81db9697a082300b452c8dd6824d2d07f5f557 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 12 Sep 2025 17:43:15 -0400 Subject: [PATCH 233/457] Fix oversights in pg_event_trigger_dropped_objects() fixes. Commit a0b99fc12 caused pg_event_trigger_dropped_objects() to not fill the object_name field for schemas, which it should have; and caused it to fill the object_name field for default values, which it should not have. In addition, triggers and RLS policies really should behave the same way as we're making column defaults do; that is, they should have is_temporary = true if they belong to a temporary table. Fix those things, and upgrade event_trigger.sql's woefully inadequate test coverage of these secondary output columns. As before, back-patch only to v15. Reported-by: Sergey Shinderuk Author: Tom Lane Discussion: https://postgr.es/m/bd7b4651-1c26-4d30-832b-f942fabcb145@postgrespro.ru Backpatch-through: 15 --- src/backend/commands/event_trigger.c | 87 ++++++++- src/test/regress/expected/event_trigger.out | 188 ++++++++++++-------- src/test/regress/sql/event_trigger.sql | 55 ++++-- 3 files changed, 244 insertions(+), 86 deletions(-) diff --git a/src/backend/commands/event_trigger.c b/src/backend/commands/event_trigger.c index ff5b82b0dab6b..8a613172224d6 100644 --- a/src/backend/commands/event_trigger.c +++ b/src/backend/commands/event_trigger.c @@ -30,6 +30,7 @@ #include "catalog/pg_opclass.h" #include "catalog/pg_opfamily.h" #include "catalog/pg_parameter_acl.h" +#include "catalog/pg_policy.h" #include "catalog/pg_proc.h" #include "catalog/pg_tablespace.h" #include "catalog/pg_trigger.h" @@ -1302,6 +1303,7 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no MemoryContextSwitchTo(oldcxt); return; } + obj->objname = get_namespace_name(object->objectId); } else if (object->classId == AttrDefaultRelationId) { @@ -1311,7 +1313,6 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no colobject = GetAttrDefaultColumnAddress(object->objectId); if (OidIsValid(colobject.objectId)) { - colobject.objectSubId = 0; /* convert to table reference */ if (!obtain_object_name_namespace(&colobject, obj)) { pfree(obj); @@ -1320,6 +1321,90 @@ EventTriggerSQLDropAddObject(const ObjectAddress *object, bool original, bool no } } } + else if (object->classId == TriggerRelationId) + { + /* Similarly, a trigger is temp if its table is temp */ + /* Sadly, there's no lsyscache.c support for trigger objects */ + Relation pg_trigger_rel; + ScanKeyData skey[1]; + SysScanDesc sscan; + HeapTuple tuple; + Oid relid; + + /* Fetch the trigger's table OID the hard way */ + pg_trigger_rel = table_open(TriggerRelationId, AccessShareLock); + ScanKeyInit(&skey[0], + Anum_pg_trigger_oid, + BTEqualStrategyNumber, F_OIDEQ, + ObjectIdGetDatum(object->objectId)); + sscan = systable_beginscan(pg_trigger_rel, TriggerOidIndexId, true, + NULL, 1, skey); + tuple = systable_getnext(sscan); + if (HeapTupleIsValid(tuple)) + relid = ((Form_pg_trigger) GETSTRUCT(tuple))->tgrelid; + else + relid = InvalidOid; /* shouldn't happen */ + systable_endscan(sscan); + table_close(pg_trigger_rel, AccessShareLock); + /* Do nothing if we didn't find the trigger */ + if (OidIsValid(relid)) + { + ObjectAddress relobject; + + relobject.classId = RelationRelationId; + relobject.objectId = relid; + /* Arbitrarily set objectSubId nonzero so as not to fill objname */ + relobject.objectSubId = 1; + if (!obtain_object_name_namespace(&relobject, obj)) + { + pfree(obj); + MemoryContextSwitchTo(oldcxt); + return; + } + } + } + else if (object->classId == PolicyRelationId) + { + /* Similarly, a policy is temp if its table is temp */ + /* Sadly, there's no lsyscache.c support for policy objects */ + Relation pg_policy_rel; + ScanKeyData skey[1]; + SysScanDesc sscan; + HeapTuple tuple; + Oid relid; + + /* Fetch the policy's table OID the hard way */ + pg_policy_rel = table_open(PolicyRelationId, AccessShareLock); + ScanKeyInit(&skey[0], + Anum_pg_policy_oid, + BTEqualStrategyNumber, F_OIDEQ, + ObjectIdGetDatum(object->objectId)); + sscan = systable_beginscan(pg_policy_rel, PolicyOidIndexId, true, + NULL, 1, skey); + tuple = systable_getnext(sscan); + if (HeapTupleIsValid(tuple)) + relid = ((Form_pg_policy) GETSTRUCT(tuple))->polrelid; + else + relid = InvalidOid; /* shouldn't happen */ + systable_endscan(sscan); + table_close(pg_policy_rel, AccessShareLock); + /* Do nothing if we didn't find the policy */ + if (OidIsValid(relid)) + { + ObjectAddress relobject; + + relobject.classId = RelationRelationId; + relobject.objectId = relid; + /* Arbitrarily set objectSubId nonzero so as not to fill objname */ + relobject.objectSubId = 1; + if (!obtain_object_name_namespace(&relobject, obj)) + { + pfree(obj); + MemoryContextSwitchTo(oldcxt); + return; + } + } + } else { /* Generic handling for all other object classes */ diff --git a/src/test/regress/expected/event_trigger.out b/src/test/regress/expected/event_trigger.out index 0e090cbc37500..16e4530708cc9 100644 --- a/src/test/regress/expected/event_trigger.out +++ b/src/test/regress/expected/event_trigger.out @@ -228,9 +228,15 @@ INSERT INTO undroppable_objs VALUES ('table', 'schema_one.table_three'), ('table', 'audit_tbls.schema_two_table_three'); CREATE TABLE dropped_objects ( - type text, - schema text, - object text + object_type text, + schema_name text, + object_name text, + object_identity text, + address_names text[], + address_args text[], + is_temporary bool, + original bool, + normal bool ); -- This tests errors raised within event triggers; the one in audit_tbls -- uses 2nd-level recursive invocation via test_evtrig_dropped_objects(). @@ -268,8 +274,12 @@ BEGIN END IF; INSERT INTO dropped_objects - (type, schema, object) VALUES - (obj.object_type, obj.schema_name, obj.object_identity); + (object_type, schema_name, object_name, + object_identity, address_names, address_args, + is_temporary, original, normal) VALUES + (obj.object_type, obj.schema_name, obj.object_name, + obj.object_identity, obj.address_names, obj.address_args, + obj.is_temporary, obj.original, obj.normal); END LOOP; END $$; @@ -325,42 +335,44 @@ NOTICE: table "audit_tbls_schema_two_table_three" does not exist, skipping NOTICE: table "schema_one_table_one" does not exist, skipping NOTICE: table "schema_one_table two" does not exist, skipping NOTICE: table "schema_one_table_three" does not exist, skipping -SELECT * FROM dropped_objects WHERE schema IS NULL OR schema <> 'pg_toast'; - type | schema | object ---------------+------------+------------------------------------- - table column | schema_one | schema_one.table_one.a - schema | | schema_two - table | schema_two | schema_two.table_two - type | schema_two | schema_two.table_two - type | schema_two | schema_two.table_two[] - table | audit_tbls | audit_tbls.schema_two_table_three - type | audit_tbls | audit_tbls.schema_two_table_three - type | audit_tbls | audit_tbls.schema_two_table_three[] - table | schema_two | schema_two.table_three - type | schema_two | schema_two.table_three - type | schema_two | schema_two.table_three[] - function | schema_two | schema_two.add(integer,integer) - aggregate | schema_two | schema_two.newton(integer) - schema | | schema_one - table | schema_one | schema_one.table_one - type | schema_one | schema_one.table_one - type | schema_one | schema_one.table_one[] - table | schema_one | schema_one."table two" - type | schema_one | schema_one."table two" - type | schema_one | schema_one."table two"[] - table | schema_one | schema_one.table_three - type | schema_one | schema_one.table_three - type | schema_one | schema_one.table_three[] +-- exclude TOAST objects because they have unstable names +SELECT * FROM dropped_objects + WHERE schema_name IS NULL OR schema_name <> 'pg_toast'; + object_type | schema_name | object_name | object_identity | address_names | address_args | is_temporary | original | normal +--------------+-------------+-------------------------+-------------------------------------+---------------------------------------+-------------------+--------------+----------+-------- + table column | schema_one | | schema_one.table_one.a | {schema_one,table_one,a} | {} | f | t | f + schema | | schema_two | schema_two | {schema_two} | {} | f | t | f + table | schema_two | table_two | schema_two.table_two | {schema_two,table_two} | {} | f | f | t + type | schema_two | table_two | schema_two.table_two | {schema_two.table_two} | {} | f | f | f + type | schema_two | _table_two | schema_two.table_two[] | {schema_two.table_two[]} | {} | f | f | f + table | audit_tbls | schema_two_table_three | audit_tbls.schema_two_table_three | {audit_tbls,schema_two_table_three} | {} | f | t | f + type | audit_tbls | schema_two_table_three | audit_tbls.schema_two_table_three | {audit_tbls.schema_two_table_three} | {} | f | f | f + type | audit_tbls | _schema_two_table_three | audit_tbls.schema_two_table_three[] | {audit_tbls.schema_two_table_three[]} | {} | f | f | f + table | schema_two | table_three | schema_two.table_three | {schema_two,table_three} | {} | f | f | t + type | schema_two | table_three | schema_two.table_three | {schema_two.table_three} | {} | f | f | f + type | schema_two | _table_three | schema_two.table_three[] | {schema_two.table_three[]} | {} | f | f | f + function | schema_two | | schema_two.add(integer,integer) | {schema_two,add} | {integer,integer} | f | f | t + aggregate | schema_two | | schema_two.newton(integer) | {schema_two,newton} | {integer} | f | f | t + schema | | schema_one | schema_one | {schema_one} | {} | f | t | f + table | schema_one | table_one | schema_one.table_one | {schema_one,table_one} | {} | f | f | t + type | schema_one | table_one | schema_one.table_one | {schema_one.table_one} | {} | f | f | f + type | schema_one | _table_one | schema_one.table_one[] | {schema_one.table_one[]} | {} | f | f | f + table | schema_one | table two | schema_one."table two" | {schema_one,"table two"} | {} | f | f | t + type | schema_one | table two | schema_one."table two" | {"schema_one.\"table two\""} | {} | f | f | f + type | schema_one | _table two | schema_one."table two"[] | {"schema_one.\"table two\"[]"} | {} | f | f | f + table | schema_one | table_three | schema_one.table_three | {schema_one,table_three} | {} | f | f | t + type | schema_one | table_three | schema_one.table_three | {schema_one.table_three} | {} | f | f | f + type | schema_one | _table_three | schema_one.table_three[] | {schema_one.table_three[]} | {} | f | f | f (23 rows) DROP OWNED BY regress_evt_user; NOTICE: schema "audit_tbls" does not exist, skipping -SELECT * FROM dropped_objects WHERE type = 'schema'; - type | schema | object ---------+--------+------------ - schema | | schema_two - schema | | schema_one - schema | | audit_tbls +SELECT * FROM dropped_objects WHERE object_type = 'schema'; + object_type | schema_name | object_name | object_identity | address_names | address_args | is_temporary | original | normal +-------------+-------------+-------------+-----------------+---------------+--------------+--------------+----------+-------- + schema | | schema_two | schema_two | {schema_two} | {} | f | t | f + schema | | schema_one | schema_one | {schema_one} | {} | f | t | f + schema | | audit_tbls | audit_tbls | {audit_tbls} | {} | f | t | f (3 rows) DROP ROLE regress_evt_user; @@ -378,9 +390,10 @@ BEGIN IF NOT r.normal AND NOT r.original THEN CONTINUE; END IF; - RAISE NOTICE 'NORMAL: orig=% normal=% istemp=% type=% identity=% name=% args=%', + RAISE NOTICE 'NORMAL: orig=% normal=% istemp=% type=% identity=% schema=% name=% addr=% args=%', r.original, r.normal, r.is_temporary, r.object_type, - r.object_identity, r.address_names, r.address_args; + r.object_identity, r.schema_name, r.object_name, + r.address_names, r.address_args; END LOOP; END; $$; CREATE EVENT TRIGGER regress_event_trigger_report_dropped ON sql_drop @@ -436,18 +449,18 @@ CREATE TABLE evttrig.part_15_20 PARTITION OF evttrig.part_10_20 (id) FOR VALUES FROM (15) TO (20); NOTICE: END: command_tag=CREATE TABLE type=table identity=evttrig.part_15_20 ALTER TABLE evttrig.two DROP COLUMN col_c; -NOTICE: NORMAL: orig=t normal=f istemp=f type=table column identity=evttrig.two.col_c name={evttrig,two,col_c} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table constraint identity=two_col_c_check on evttrig.two name={evttrig,two,two_col_c_check} args={} +NOTICE: NORMAL: orig=t normal=f istemp=f type=table column identity=evttrig.two.col_c schema=evttrig name= addr={evttrig,two,col_c} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table constraint identity=two_col_c_check on evttrig.two schema=evttrig name= addr={evttrig,two,two_col_c_check} args={} NOTICE: END: command_tag=ALTER TABLE type=table identity=evttrig.two ALTER TABLE evttrig.one ALTER COLUMN col_b DROP DEFAULT; -NOTICE: NORMAL: orig=t normal=f istemp=f type=default value identity=for evttrig.one.col_b name={evttrig,one,col_b} args={} +NOTICE: NORMAL: orig=t normal=f istemp=f type=default value identity=for evttrig.one.col_b schema=evttrig name= addr={evttrig,one,col_b} args={} NOTICE: END: command_tag=ALTER TABLE type=table identity=evttrig.one ALTER TABLE evttrig.one DROP CONSTRAINT one_pkey; -NOTICE: NORMAL: orig=t normal=f istemp=f type=table constraint identity=one_pkey on evttrig.one name={evttrig,one,one_pkey} args={} +NOTICE: NORMAL: orig=t normal=f istemp=f type=table constraint identity=one_pkey on evttrig.one schema=evttrig name= addr={evttrig,one,one_pkey} args={} NOTICE: END: command_tag=ALTER TABLE type=table identity=evttrig.one ALTER TABLE evttrig.one DROP COLUMN col_c; -NOTICE: NORMAL: orig=t normal=f istemp=f type=table column identity=evttrig.one.col_c name={evttrig,one,col_c} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=default value identity=for evttrig.one.col_c name={evttrig,one,col_c} args={} +NOTICE: NORMAL: orig=t normal=f istemp=f type=table column identity=evttrig.one.col_c schema=evttrig name= addr={evttrig,one,col_c} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=default value identity=for evttrig.one.col_c schema=evttrig name= addr={evttrig,one,col_c} args={} NOTICE: END: command_tag=ALTER TABLE type=table identity=evttrig.one ALTER TABLE evttrig.id ALTER COLUMN col_d SET DATA TYPE bigint; NOTICE: END: command_tag=ALTER SEQUENCE type=sequence identity=evttrig.id_col_d_seq @@ -456,26 +469,26 @@ ALTER TABLE evttrig.id ALTER COLUMN col_d DROP IDENTITY, ALTER COLUMN col_d SET DATA TYPE int; NOTICE: END: command_tag=ALTER TABLE type=table identity=evttrig.id DROP INDEX evttrig.one_idx; -NOTICE: NORMAL: orig=t normal=f istemp=f type=index identity=evttrig.one_idx name={evttrig,one_idx} args={} +NOTICE: NORMAL: orig=t normal=f istemp=f type=index identity=evttrig.one_idx schema=evttrig name=one_idx addr={evttrig,one_idx} args={} DROP SCHEMA evttrig CASCADE; NOTICE: drop cascades to 4 other objects DETAIL: drop cascades to table evttrig.one drop cascades to table evttrig.two drop cascades to table evttrig.id drop cascades to table evttrig.parted -NOTICE: NORMAL: orig=t normal=f istemp=f type=schema identity=evttrig name={evttrig} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.one name={evttrig,one} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=sequence identity=evttrig.one_col_a_seq name={evttrig,one_col_a_seq} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=default value identity=for evttrig.one.col_a name={evttrig,one,col_a} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.two name={evttrig,two} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.id name={evttrig,id} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.parted name={evttrig,parted} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_1_10 name={evttrig,part_1_10} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_10_20 name={evttrig,part_10_20} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_10_15 name={evttrig,part_10_15} args={} -NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_15_20 name={evttrig,part_15_20} args={} +NOTICE: NORMAL: orig=t normal=f istemp=f type=schema identity=evttrig schema= name=evttrig addr={evttrig} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.one schema=evttrig name=one addr={evttrig,one} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=sequence identity=evttrig.one_col_a_seq schema=evttrig name=one_col_a_seq addr={evttrig,one_col_a_seq} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=default value identity=for evttrig.one.col_a schema=evttrig name= addr={evttrig,one,col_a} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.two schema=evttrig name=two addr={evttrig,two} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.id schema=evttrig name=id addr={evttrig,id} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.parted schema=evttrig name=parted addr={evttrig,parted} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_1_10 schema=evttrig name=part_1_10 addr={evttrig,part_1_10} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_10_20 schema=evttrig name=part_10_20 addr={evttrig,part_10_20} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_10_15 schema=evttrig name=part_10_15 addr={evttrig,part_10_15} args={} +NOTICE: NORMAL: orig=f normal=t istemp=f type=table identity=evttrig.part_15_20 schema=evttrig name=part_15_20 addr={evttrig,part_15_20} args={} DROP TABLE a_temp_tbl; -NOTICE: NORMAL: orig=t normal=f istemp=t type=table identity=pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl} args={} +NOTICE: NORMAL: orig=t normal=f istemp=t type=table identity=pg_temp.a_temp_tbl schema=pg_temp name=a_temp_tbl addr={pg_temp,a_temp_tbl} args={} -- check unfiltered results, too CREATE OR REPLACE FUNCTION event_trigger_report_dropped() RETURNS event_trigger @@ -485,34 +498,61 @@ DECLARE r record; BEGIN FOR r IN SELECT * from pg_event_trigger_dropped_objects() LOOP - RAISE NOTICE 'DROP: orig=% normal=% istemp=% type=% identity=% name=% args=%', + RAISE NOTICE 'DROP: orig=% normal=% istemp=% type=% identity=% schema=% name=% addr=% args=%', r.original, r.normal, r.is_temporary, r.object_type, - r.object_identity, r.address_names, r.address_args; + r.object_identity, r.schema_name, r.object_name, + r.address_names, r.address_args; END LOOP; END; $$; NOTICE: END: command_tag=CREATE FUNCTION type=function identity=public.event_trigger_report_dropped() +CREATE FUNCTION event_trigger_dummy_trigger() + RETURNS trigger + LANGUAGE plpgsql +AS $$ +BEGIN + RETURN new; +END; $$; +NOTICE: END: command_tag=CREATE FUNCTION type=function identity=public.event_trigger_dummy_trigger() CREATE TABLE evtrg_nontemp_table (f1 int primary key, f2 int default 42); NOTICE: END: command_tag=CREATE TABLE type=table identity=public.evtrg_nontemp_table NOTICE: END: command_tag=CREATE INDEX type=index identity=public.evtrg_nontemp_table_pkey +CREATE TRIGGER evtrg_nontemp_trig + BEFORE INSERT ON evtrg_nontemp_table + EXECUTE FUNCTION event_trigger_dummy_trigger(); +NOTICE: END: command_tag=CREATE TRIGGER type=trigger identity=evtrg_nontemp_trig on public.evtrg_nontemp_table +CREATE POLICY evtrg_nontemp_pol ON evtrg_nontemp_table USING (f2 > 0); +NOTICE: END: command_tag=CREATE POLICY type=policy identity=evtrg_nontemp_pol on public.evtrg_nontemp_table DROP TABLE evtrg_nontemp_table; -NOTICE: DROP: orig=t normal=f istemp=f type=table identity=public.evtrg_nontemp_table name={public,evtrg_nontemp_table} args={} -NOTICE: DROP: orig=f normal=f istemp=f type=type identity=public.evtrg_nontemp_table name={public.evtrg_nontemp_table} args={} -NOTICE: DROP: orig=f normal=f istemp=f type=type identity=public.evtrg_nontemp_table[] name={public.evtrg_nontemp_table[]} args={} -NOTICE: DROP: orig=f normal=f istemp=f type=default value identity=for public.evtrg_nontemp_table.f2 name={public,evtrg_nontemp_table,f2} args={} -NOTICE: DROP: orig=f normal=f istemp=f type=table constraint identity=evtrg_nontemp_table_f1_not_null on public.evtrg_nontemp_table name={public,evtrg_nontemp_table,evtrg_nontemp_table_f1_not_null} args={} -NOTICE: DROP: orig=f normal=f istemp=f type=table constraint identity=evtrg_nontemp_table_pkey on public.evtrg_nontemp_table name={public,evtrg_nontemp_table,evtrg_nontemp_table_pkey} args={} -NOTICE: DROP: orig=f normal=f istemp=f type=index identity=public.evtrg_nontemp_table_pkey name={public,evtrg_nontemp_table_pkey} args={} +NOTICE: DROP: orig=t normal=f istemp=f type=table identity=public.evtrg_nontemp_table schema=public name=evtrg_nontemp_table addr={public,evtrg_nontemp_table} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=type identity=public.evtrg_nontemp_table schema=public name=evtrg_nontemp_table addr={public.evtrg_nontemp_table} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=type identity=public.evtrg_nontemp_table[] schema=public name=_evtrg_nontemp_table addr={public.evtrg_nontemp_table[]} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=default value identity=for public.evtrg_nontemp_table.f2 schema=public name= addr={public,evtrg_nontemp_table,f2} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=table constraint identity=evtrg_nontemp_table_f1_not_null on public.evtrg_nontemp_table schema=public name= addr={public,evtrg_nontemp_table,evtrg_nontemp_table_f1_not_null} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=table constraint identity=evtrg_nontemp_table_pkey on public.evtrg_nontemp_table schema=public name= addr={public,evtrg_nontemp_table,evtrg_nontemp_table_pkey} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=index identity=public.evtrg_nontemp_table_pkey schema=public name=evtrg_nontemp_table_pkey addr={public,evtrg_nontemp_table_pkey} args={} +NOTICE: DROP: orig=f normal=f istemp=f type=trigger identity=evtrg_nontemp_trig on public.evtrg_nontemp_table schema=public name= addr={public,evtrg_nontemp_table,evtrg_nontemp_trig} args={} +NOTICE: DROP: orig=f normal=t istemp=f type=policy identity=evtrg_nontemp_pol on public.evtrg_nontemp_table schema=public name= addr={public,evtrg_nontemp_table,evtrg_nontemp_pol} args={} CREATE TEMP TABLE a_temp_tbl (f1 int primary key, f2 int default 42); NOTICE: END: command_tag=CREATE TABLE type=table identity=pg_temp.a_temp_tbl NOTICE: END: command_tag=CREATE INDEX type=index identity=pg_temp.a_temp_tbl_pkey +CREATE TRIGGER a_temp_trig + BEFORE INSERT ON a_temp_tbl + EXECUTE FUNCTION event_trigger_dummy_trigger(); +NOTICE: END: command_tag=CREATE TRIGGER type=trigger identity=a_temp_trig on pg_temp.a_temp_tbl +CREATE POLICY a_temp_pol ON a_temp_tbl USING (f2 > 0); +NOTICE: END: command_tag=CREATE POLICY type=policy identity=a_temp_pol on pg_temp.a_temp_tbl DROP TABLE a_temp_tbl; -NOTICE: DROP: orig=t normal=f istemp=t type=table identity=pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl} args={} -NOTICE: DROP: orig=f normal=f istemp=t type=type identity=pg_temp.a_temp_tbl name={pg_temp.a_temp_tbl} args={} -NOTICE: DROP: orig=f normal=f istemp=t type=type identity=pg_temp.a_temp_tbl[] name={pg_temp.a_temp_tbl[]} args={} -NOTICE: DROP: orig=f normal=f istemp=t type=default value identity=for pg_temp.a_temp_tbl.f2 name={pg_temp,a_temp_tbl,f2} args={} -NOTICE: DROP: orig=f normal=f istemp=t type=table constraint identity=a_temp_tbl_f1_not_null on pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl,a_temp_tbl_f1_not_null} args={} -NOTICE: DROP: orig=f normal=f istemp=t type=table constraint identity=a_temp_tbl_pkey on pg_temp.a_temp_tbl name={pg_temp,a_temp_tbl,a_temp_tbl_pkey} args={} -NOTICE: DROP: orig=f normal=f istemp=t type=index identity=pg_temp.a_temp_tbl_pkey name={pg_temp,a_temp_tbl_pkey} args={} +NOTICE: DROP: orig=t normal=f istemp=t type=table identity=pg_temp.a_temp_tbl schema=pg_temp name=a_temp_tbl addr={pg_temp,a_temp_tbl} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=type identity=pg_temp.a_temp_tbl schema=pg_temp name=a_temp_tbl addr={pg_temp.a_temp_tbl} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=type identity=pg_temp.a_temp_tbl[] schema=pg_temp name=_a_temp_tbl addr={pg_temp.a_temp_tbl[]} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=default value identity=for pg_temp.a_temp_tbl.f2 schema=pg_temp name= addr={pg_temp,a_temp_tbl,f2} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=table constraint identity=a_temp_tbl_f1_not_null on pg_temp.a_temp_tbl schema=pg_temp name= addr={pg_temp,a_temp_tbl,a_temp_tbl_f1_not_null} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=table constraint identity=a_temp_tbl_pkey on pg_temp.a_temp_tbl schema=pg_temp name= addr={pg_temp,a_temp_tbl,a_temp_tbl_pkey} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=index identity=pg_temp.a_temp_tbl_pkey schema=pg_temp name=a_temp_tbl_pkey addr={pg_temp,a_temp_tbl_pkey} args={} +NOTICE: DROP: orig=f normal=f istemp=t type=trigger identity=a_temp_trig on pg_temp.a_temp_tbl schema=pg_temp name= addr={pg_temp,a_temp_tbl,a_temp_trig} args={} +NOTICE: DROP: orig=f normal=t istemp=t type=policy identity=a_temp_pol on pg_temp.a_temp_tbl schema=pg_temp name= addr={pg_temp,a_temp_tbl,a_temp_pol} args={} +DROP FUNCTION event_trigger_dummy_trigger(); +NOTICE: DROP: orig=t normal=f istemp=f type=function identity=public.event_trigger_dummy_trigger() schema=public name= addr={public,event_trigger_dummy_trigger} args={} -- CREATE OPERATOR CLASS without FAMILY clause should report -- both CREATE OPERATOR FAMILY and CREATE OPERATOR CLASS CREATE OPERATOR CLASS evttrigopclass FOR TYPE int USING btree AS STORAGE int; diff --git a/src/test/regress/sql/event_trigger.sql b/src/test/regress/sql/event_trigger.sql index ef5978b9697aa..c613c0cfd439b 100644 --- a/src/test/regress/sql/event_trigger.sql +++ b/src/test/regress/sql/event_trigger.sql @@ -202,9 +202,15 @@ INSERT INTO undroppable_objs VALUES ('table', 'audit_tbls.schema_two_table_three'); CREATE TABLE dropped_objects ( - type text, - schema text, - object text + object_type text, + schema_name text, + object_name text, + object_identity text, + address_names text[], + address_args text[], + is_temporary bool, + original bool, + normal bool ); -- This tests errors raised within event triggers; the one in audit_tbls @@ -245,8 +251,12 @@ BEGIN END IF; INSERT INTO dropped_objects - (type, schema, object) VALUES - (obj.object_type, obj.schema_name, obj.object_identity); + (object_type, schema_name, object_name, + object_identity, address_names, address_args, + is_temporary, original, normal) VALUES + (obj.object_type, obj.schema_name, obj.object_name, + obj.object_identity, obj.address_names, obj.address_args, + obj.is_temporary, obj.original, obj.normal); END LOOP; END $$; @@ -263,10 +273,12 @@ DROP SCHEMA schema_one, schema_two CASCADE; DELETE FROM undroppable_objs WHERE object_identity = 'schema_one.table_three'; DROP SCHEMA schema_one, schema_two CASCADE; -SELECT * FROM dropped_objects WHERE schema IS NULL OR schema <> 'pg_toast'; +-- exclude TOAST objects because they have unstable names +SELECT * FROM dropped_objects + WHERE schema_name IS NULL OR schema_name <> 'pg_toast'; DROP OWNED BY regress_evt_user; -SELECT * FROM dropped_objects WHERE type = 'schema'; +SELECT * FROM dropped_objects WHERE object_type = 'schema'; DROP ROLE regress_evt_user; @@ -285,9 +297,10 @@ BEGIN IF NOT r.normal AND NOT r.original THEN CONTINUE; END IF; - RAISE NOTICE 'NORMAL: orig=% normal=% istemp=% type=% identity=% name=% args=%', + RAISE NOTICE 'NORMAL: orig=% normal=% istemp=% type=% identity=% schema=% name=% addr=% args=%', r.original, r.normal, r.is_temporary, r.object_type, - r.object_identity, r.address_names, r.address_args; + r.object_identity, r.schema_name, r.object_name, + r.address_names, r.address_args; END LOOP; END; $$; CREATE EVENT TRIGGER regress_event_trigger_report_dropped ON sql_drop @@ -346,17 +359,37 @@ DECLARE r record; BEGIN FOR r IN SELECT * from pg_event_trigger_dropped_objects() LOOP - RAISE NOTICE 'DROP: orig=% normal=% istemp=% type=% identity=% name=% args=%', + RAISE NOTICE 'DROP: orig=% normal=% istemp=% type=% identity=% schema=% name=% addr=% args=%', r.original, r.normal, r.is_temporary, r.object_type, - r.object_identity, r.address_names, r.address_args; + r.object_identity, r.schema_name, r.object_name, + r.address_names, r.address_args; END LOOP; END; $$; +CREATE FUNCTION event_trigger_dummy_trigger() + RETURNS trigger + LANGUAGE plpgsql +AS $$ +BEGIN + RETURN new; +END; $$; + CREATE TABLE evtrg_nontemp_table (f1 int primary key, f2 int default 42); +CREATE TRIGGER evtrg_nontemp_trig + BEFORE INSERT ON evtrg_nontemp_table + EXECUTE FUNCTION event_trigger_dummy_trigger(); +CREATE POLICY evtrg_nontemp_pol ON evtrg_nontemp_table USING (f2 > 0); DROP TABLE evtrg_nontemp_table; + CREATE TEMP TABLE a_temp_tbl (f1 int primary key, f2 int default 42); +CREATE TRIGGER a_temp_trig + BEFORE INSERT ON a_temp_tbl + EXECUTE FUNCTION event_trigger_dummy_trigger(); +CREATE POLICY a_temp_pol ON a_temp_tbl USING (f2 > 0); DROP TABLE a_temp_tbl; +DROP FUNCTION event_trigger_dummy_trigger(); + -- CREATE OPERATOR CLASS without FAMILY clause should report -- both CREATE OPERATOR FAMILY and CREATE OPERATOR CLASS CREATE OPERATOR CLASS evttrigopclass FOR TYPE int USING btree AS STORAGE int; From 17a5ca58eb119a33e81e57b72618236538932167 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Sat, 13 Sep 2025 14:50:02 -0500 Subject: [PATCH 234/457] Re-pgindent nbtpreprocesskeys.c after commit 796962922e. Backpatch-through: 18 --- src/backend/access/nbtree/nbtpreprocesskeys.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index 4c9389c781a57..567f7fb3150c0 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -1496,7 +1496,7 @@ _bt_skiparray_strat_increment(IndexScanDesc scan, ScanKey arraysk, */ lookupstrat = BTGreaterEqualStrategyNumber; if (low_compare->sk_flags & SK_BT_DESC) - lookupstrat = BTLessEqualStrategyNumber; /* commute this too */ + lookupstrat = BTLessEqualStrategyNumber; /* commute this too */ geop = get_opfamily_member(opfamily, opcintype, opcintype, lookupstrat); if (!OidIsValid(geop)) return; From 01bea6029df3f03902cc7795459fd8678cc51625 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Sat, 13 Sep 2025 14:58:49 -0500 Subject: [PATCH 235/457] Add commit 17a5ca58eb to .git-blame-ignore-revs. --- .git-blame-ignore-revs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index cf30711d616be..9c59931bf3eb9 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -14,6 +14,9 @@ # # $ git log --pretty=format:"%H # %cd%n# %s" $PGINDENTGITHASH -1 --date=iso +17a5ca58eb119a33e81e57b72618236538932167 # 2025-09-13 14:50:02 -0500 +# Re-pgindent nbtpreprocesskeys.c after commit 796962922e. + 07448b3969d55a2081cdafafc23f68df3392f220 # 2025-07-01 15:24:19 +0200 # Fix indentation in pg_numa code From 802308693f2f55704751657986abdc81f76ee4cf Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 13 Sep 2025 16:55:51 -0400 Subject: [PATCH 236/457] Amend recent fix for SIMILAR TO regex conversion. Commit e3ffc3e91 fixed the translation of character classes in SIMILAR TO regular expressions. Unfortunately the fix broke a corner case: if there is an escape character right after the opening bracket (for example in "[\q]"), a closing bracket right after the escape sequence would not be seen as closing the character class. There were two more oversights: a backslash or a nested opening bracket right at the beginning of a character class should remove the special meaning from any following caret or closing bracket. This bug suggests that this code needs to be more readable, so also rename the variables "charclass_depth" and "charclass_start" to something more meaningful, rewrite an "if" cascade to be more consistent, and improve the commentary. Reported-by: Dominique Devienne Reported-by: Stephan Springl Author: Laurenz Albe Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CAFCRh-8NwJd0jq6P=R3qhHyqU7hw0BTor3W0SvUcii24et+zAw@mail.gmail.com Backpatch-through: 13 --- src/backend/utils/adt/regexp.c | 97 +++++++++++++++++++-------- src/test/regress/expected/strings.out | 9 +++ src/test/regress/sql/strings.sql | 3 + 3 files changed, 82 insertions(+), 27 deletions(-) diff --git a/src/backend/utils/adt/regexp.c b/src/backend/utils/adt/regexp.c index 6e2864cbbda8c..b0cdef9b19fa2 100644 --- a/src/backend/utils/adt/regexp.c +++ b/src/backend/utils/adt/regexp.c @@ -774,10 +774,8 @@ similar_escape_internal(text *pat_text, text *esc_text) elen; bool afterescape = false; int nquotes = 0; - int charclass_depth = 0; /* Nesting level of character classes, - * encompassed by square brackets */ - int charclass_start = 0; /* State of the character class start, - * for carets */ + int bracket_depth = 0; /* square bracket nesting level */ + int charclass_pos = 0; /* position inside a character class */ p = VARDATA_ANY(pat_text); plen = VARSIZE_ANY_EXHDR(pat_text); @@ -836,6 +834,17 @@ similar_escape_internal(text *pat_text, text *esc_text) * the relevant part separators in the above expansion. If the result * of this function is used in a plain regexp match (SIMILAR TO), the * escape-double-quotes have no effect on the match behavior. + * + * While we don't fully validate character classes (bracket expressions), + * we do need to parse them well enough to know where they end. + * "charclass_pos" tracks where we are in a character class. + * Its value is uninteresting when bracket_depth is 0. + * But when bracket_depth > 0, it will be + * 1: right after the opening '[' (a following '^' will negate + * the class, while ']' is a literal character) + * 2: right after a '^' after the opening '[' (']' is still a literal + * character) + * 3 or more: further inside the character class (']' ends the class) *---------- */ @@ -907,7 +916,7 @@ similar_escape_internal(text *pat_text, text *esc_text) /* fast path */ if (afterescape) { - if (pchar == '"' && charclass_depth < 1) /* escape-double-quote? */ + if (pchar == '"' && bracket_depth < 1) /* escape-double-quote? */ { /* emit appropriate part separator, per notes above */ if (nquotes == 0) @@ -948,6 +957,12 @@ similar_escape_internal(text *pat_text, text *esc_text) */ *r++ = '\\'; *r++ = pchar; + + /* + * If we encounter an escaped character in a character class, + * we are no longer at the beginning. + */ + charclass_pos = 3; } afterescape = false; } @@ -956,41 +971,69 @@ similar_escape_internal(text *pat_text, text *esc_text) /* SQL escape character; do not send to output */ afterescape = true; } - else if (charclass_depth > 0) + else if (bracket_depth > 0) { + /* inside a character class */ if (pchar == '\\') + { + /* + * If we're here, backslash is not the SQL escape character, + * so treat it as a literal class element, which requires + * doubling it. (This matches our behavior for backslashes + * outside character classes.) + */ *r++ = '\\'; + } *r++ = pchar; - /* - * Ignore a closing bracket at the start of a character class. - * Such a bracket is taken literally rather than closing the - * class. "charclass_start" is 1 right at the beginning of a - * class and 2 after an initial caret. - */ - if (pchar == ']' && charclass_start > 2) - charclass_depth--; + /* parse the character class well enough to identify ending ']' */ + if (pchar == ']' && charclass_pos > 2) + { + /* found the real end of a bracket pair */ + bracket_depth--; + /* don't reset charclass_pos, this may be an inner bracket */ + } else if (pchar == '[') - charclass_depth++; + { + /* start of a nested bracket pair */ + bracket_depth++; - /* - * If there is a caret right after the opening bracket, it negates - * the character class, but a following closing bracket should - * still be treated as a normal character. That holds only for - * the first caret, so only the values 1 and 2 mean that closing - * brackets should be taken literally. - */ - if (pchar == '^') - charclass_start++; + /* + * We are no longer at the beginning of a character class. + * (The nested bracket pair is a collating element, not a + * character class in its own right.) + */ + charclass_pos = 3; + } + else if (pchar == '^') + { + /* + * A caret right after the opening bracket negates the + * character class. In that case, the following will + * increment charclass_pos from 1 to 2, so that a following + * ']' is still a literal character and does not end the + * character class. If we are further inside a character + * class, charclass_pos might get incremented past 3, which is + * fine. + */ + charclass_pos++; + } else - charclass_start = 3; /* definitely past the start */ + { + /* + * Anything else (including a backslash or leading ']') is an + * element of the character class, so we are no longer at the + * beginning of the class. + */ + charclass_pos = 3; + } } else if (pchar == '[') { /* start of a character class */ *r++ = pchar; - charclass_depth++; - charclass_start = 1; + bracket_depth = 1; + charclass_pos = 1; } else if (pchar == '%') { diff --git a/src/test/regress/expected/strings.out b/src/test/regress/expected/strings.out index 788844abd20e3..b9c5d4c12b8c9 100644 --- a/src/test/regress/expected/strings.out +++ b/src/test/regress/expected/strings.out @@ -681,6 +681,15 @@ EXPLAIN (COSTS OFF) SELECT * FROM TEXT_TBL WHERE f1 SIMILAR TO '[^^]^'; Filter: (f1 ~ '^(?:[^^]\^)$'::text) (2 rows) +-- Closing square bracket after an escape sequence at the beginning of +-- a character closes the character class +EXPLAIN (COSTS OFF) SELECT * FROM TEXT_TBL WHERE f1 SIMILAR TO '[|a]%' ESCAPE '|'; + QUERY PLAN +--------------------------------------- + Seq Scan on text_tbl + Filter: (f1 ~ '^(?:[\a].*)$'::text) +(2 rows) + -- Test backslash escapes in regexp_replace's replacement string SELECT regexp_replace('1112223333', E'(\\d{3})(\\d{3})(\\d{4})', E'(\\1) \\2-\\3'); regexp_replace diff --git a/src/test/regress/sql/strings.sql b/src/test/regress/sql/strings.sql index 2577a42987de7..0198927f5fca8 100644 --- a/src/test/regress/sql/strings.sql +++ b/src/test/regress/sql/strings.sql @@ -216,6 +216,9 @@ EXPLAIN (COSTS OFF) SELECT * FROM TEXT_TBL WHERE f1 SIMILAR TO '[]%][^]%][^%]%'; -- Closing square bracket effective after two carets at the beginning -- of character class. EXPLAIN (COSTS OFF) SELECT * FROM TEXT_TBL WHERE f1 SIMILAR TO '[^^]^'; +-- Closing square bracket after an escape sequence at the beginning of +-- a character closes the character class +EXPLAIN (COSTS OFF) SELECT * FROM TEXT_TBL WHERE f1 SIMILAR TO '[|a]%' ESCAPE '|'; -- Test backslash escapes in regexp_replace's replacement string SELECT regexp_replace('1112223333', E'(\\d{3})(\\d{3})(\\d{4})', E'(\\1) \\2-\\3'); From bee763aea13ff27ade2fe4704eaf6605b0ad4d65 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Sat, 13 Sep 2025 21:01:31 -0400 Subject: [PATCH 237/457] nbtree: Always set skipScan flag on rescan. The TimescaleDB extension expects to be able to change an nbtree scan's keys across rescans. The issue arises in the extension's implementation of loose index scan. This is arguably a misuse of the index AM API, though apparently it worked until recently. It stopped working when the skipScan flag was added to BTScanOpaqueData by commit 8a510275, though. The flag wouldn't reliably track whether the scan (actually, the current rescan) has any skip arrays, leading to confusion in _bt_set_startikey. nbtree preprocessing will now defensively initialize the scan's skipScan flag in all cases, including the case where _bt_preprocess_array_keys returns early due to the (re)scan not using arrays. While nbtree isn't obligated to support this use case (at least not according to my reading of the index AM API), it still seems like a good idea to be consistent here, on general robustness grounds. Author: Peter Geoghegan Reported-By: Natalya Aksman Discussion: https://postgr.es/m/CAJumhcirfMojbk20+W0YimbNDkwdECvJprQGQ-XqK--ph09nQw@mail.gmail.com Backpatch-through: 18 --- src/backend/access/nbtree/nbtpreprocesskeys.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/access/nbtree/nbtpreprocesskeys.c b/src/backend/access/nbtree/nbtpreprocesskeys.c index 567f7fb3150c0..842ab94f189f3 100644 --- a/src/backend/access/nbtree/nbtpreprocesskeys.c +++ b/src/backend/access/nbtree/nbtpreprocesskeys.c @@ -1852,6 +1852,7 @@ _bt_preprocess_array_keys(IndexScanDesc scan, int *new_numberOfKeys) * (also checks if we should add extra skip arrays based on input keys) */ numArrayKeys = _bt_num_array_keys(scan, skip_eq_ops, &numSkipArrayKeys); + so->skipScan = (numSkipArrayKeys > 0); /* Quit if nothing to do. */ if (numArrayKeys == 0) @@ -1881,7 +1882,6 @@ _bt_preprocess_array_keys(IndexScanDesc scan, int *new_numberOfKeys) arrayKeyData = (ScanKey) palloc(numArrayKeyData * sizeof(ScanKeyData)); /* Allocate space for per-array data in the workspace context */ - so->skipScan = (numSkipArrayKeys > 0); so->arrayKeys = (BTArrayKeyInfo *) palloc(numArrayKeys * sizeof(BTArrayKeyInfo)); /* Allocate space for ORDER procs used to help _bt_checkkeys */ From 8309f3f86da8103f53193b218cabe4b904550b4a Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 15 Sep 2025 07:25:22 +0200 Subject: [PATCH 238/457] Hide duplicate names from extension views If extensions of equal names were installed in different directories in the path, the views pg_available_extensions and pg_available_extension_versions would show all of them, even though only the first one was actually reachable by CREATE EXTENSION. To fix, have those views skip extensions found later in the path if they have names already found earlier. Also add a bit of documentation that only the first extension in the path can be used. Reported-by: Pierrick Discussion: https://www.postgresql.org/message-id/flat/8f5a0517-1cb8-4085-ae89-77e7454e27ba%40dalibo.com --- doc/src/sgml/config.sgml | 6 +++++ src/backend/commands/extension.c | 24 +++++++++++++++++++ .../t/001_extension_control_path.pl | 9 ++++--- 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index d1e103ed779bd..5aea6cc2fe8fc 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -11057,6 +11057,12 @@ extension_control_path = 'C:\tools\postgresql;H:\my_project\share;$system' string, the default '$system' is also assumed. + + If extensions with equal names are present in multiple directories in + the configured path, only the instance found first in the path will be + used. + + This parameter can be changed at run time by superusers and users with the appropriate SET privilege, but a diff --git a/src/backend/commands/extension.c b/src/backend/commands/extension.c index e6f9ab6dfd66b..93ef1ad106fdb 100644 --- a/src/backend/commands/extension.c +++ b/src/backend/commands/extension.c @@ -2208,6 +2208,7 @@ pg_available_extensions(PG_FUNCTION_ARGS) List *locations; DIR *dir; struct dirent *de; + List *found_ext = NIL; /* Build tuplestore to hold the result rows */ InitMaterializedSRF(fcinfo, 0); @@ -2232,6 +2233,7 @@ pg_available_extensions(PG_FUNCTION_ARGS) { ExtensionControlFile *control; char *extname; + String *extname_str; Datum values[3]; bool nulls[3]; @@ -2246,6 +2248,16 @@ pg_available_extensions(PG_FUNCTION_ARGS) if (strstr(extname, "--")) continue; + /* + * Ignore already-found names. They are not reachable by the + * path search, so don't shown them. + */ + extname_str = makeString(extname); + if (list_member(found_ext, extname_str)) + continue; + else + found_ext = lappend(found_ext, extname_str); + control = new_ExtensionControlFile(extname); control->control_dir = pstrdup(location); parse_extension_control_file(control, NULL); @@ -2294,6 +2306,7 @@ pg_available_extension_versions(PG_FUNCTION_ARGS) List *locations; DIR *dir; struct dirent *de; + List *found_ext = NIL; /* Build tuplestore to hold the result rows */ InitMaterializedSRF(fcinfo, 0); @@ -2318,6 +2331,7 @@ pg_available_extension_versions(PG_FUNCTION_ARGS) { ExtensionControlFile *control; char *extname; + String *extname_str; if (!is_extension_control_filename(de->d_name)) continue; @@ -2330,6 +2344,16 @@ pg_available_extension_versions(PG_FUNCTION_ARGS) if (strstr(extname, "--")) continue; + /* + * Ignore already-found names. They are not reachable by the + * path search, so don't shown them. + */ + extname_str = makeString(extname); + if (list_member(found_ext, extname_str)) + continue; + else + found_ext = lappend(found_ext, extname_str); + /* read the control file */ control = new_ExtensionControlFile(extname); control->control_dir = pstrdup(location); diff --git a/src/test/modules/test_extensions/t/001_extension_control_path.pl b/src/test/modules/test_extensions/t/001_extension_control_path.pl index 1a9c97bbf4dcc..7fbe5bde33227 100644 --- a/src/test/modules/test_extensions/t/001_extension_control_path.pl +++ b/src/test/modules/test_extensions/t/001_extension_control_path.pl @@ -11,12 +11,15 @@ $node->init; -# Create a temporary directory for the extension control file +# Create temporary directories for the extension control files my $ext_dir = PostgreSQL::Test::Utils::tempdir(); mkpath("$ext_dir/extension"); +my $ext_dir2 = PostgreSQL::Test::Utils::tempdir(); +mkpath("$ext_dir2/extension"); my $ext_name = "test_custom_ext_paths"; create_extension($ext_name, $ext_dir); +create_extension($ext_name, $ext_dir2); my $ext_name2 = "test_custom_ext_paths_using_directory"; mkpath("$ext_dir/$ext_name2"); @@ -26,7 +29,7 @@ my $sep = $windows_os ? ";" : ":"; $node->append_conf( 'postgresql.conf', qq{ -extension_control_path = '\$system$sep@{[ $windows_os ? ($ext_dir =~ s/\\/\\\\/gr) : $ext_dir ]}' +extension_control_path = '\$system$sep@{[ $windows_os ? ($ext_dir =~ s/\\/\\\\/gr) : $ext_dir ]}$sep@{[ $windows_os ? ($ext_dir2 =~ s/\\/\\\\/gr) : $ext_dir2 ]}' }); # Start node @@ -34,7 +37,7 @@ my $ecp = $node->safe_psql('postgres', 'show extension_control_path;'); -is($ecp, "\$system$sep$ext_dir", +is($ecp, "\$system$sep$ext_dir$sep$ext_dir2", "custom extension control directory path configured"); $node->safe_psql('postgres', "CREATE EXTENSION $ext_name"); From c11ac811a30db4159543f8399f3c0b723369fa20 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 15 Sep 2025 08:13:21 +0200 Subject: [PATCH 239/457] jit: fix build with LLVM-21 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LLVM-21 renamed llvm::GlobalValue::getGUID() to getGUIDAssumingExternalLinkage(), so add a version guard. Author: Holger Hoffstätte Discussion: https://www.postgresql.org/message-id/flat/d25e6e4a-d1b4-84d3-2f8a-6c45b975f53d%40applied-asynchrony.com --- src/backend/jit/llvm/llvmjit_inline.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/backend/jit/llvm/llvmjit_inline.cpp b/src/backend/jit/llvm/llvmjit_inline.cpp index 2764c3bbe2f03..51b32cd9f940d 100644 --- a/src/backend/jit/llvm/llvmjit_inline.cpp +++ b/src/backend/jit/llvm/llvmjit_inline.cpp @@ -238,7 +238,11 @@ llvm_build_inline_plan(LLVMContextRef lc, llvm::Module *mod) llvm_split_symbol_name(symbolName.data(), &cmodname, &cfuncname); +#if LLVM_VERSION_MAJOR >= 21 + funcGUID = llvm::GlobalValue::getGUIDAssumingExternalLinkage(cfuncname); +#else funcGUID = llvm::GlobalValue::getGUID(cfuncname); +#endif /* already processed */ if (inlineState.processed) From 38883916e41c5d3f3367b221b37838c3999227e2 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 15 Sep 2025 11:38:58 +0200 Subject: [PATCH 240/457] CREATE STATISTICS: improve misleading error message The previous change (commit f225473cbae) was still not on target, because it talked about relation kinds, which are not what is being checked here. Provide a more accurate message. Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CACJufxEZ48toGH0Em_6vdsT57Y3L8pLF=DZCQ_gCii6=C3MeXw@mail.gmail.com --- src/backend/tcop/utility.c | 3 +-- src/test/regress/expected/stats_ext.out | 21 +++++++-------------- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c index 76f5a5854ebb5..5c42d6302bead 100644 --- a/src/backend/tcop/utility.c +++ b/src/backend/tcop/utility.c @@ -1883,8 +1883,7 @@ ProcessUtilitySlow(ParseState *pstate, if (!IsA(rel, RangeVar)) ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), - errmsg("cannot create statistics on the specified relation"), - errdetail("CREATE STATISTICS only supports tables, foreign tables and materialized views."))); + errmsg("CREATE STATISTICS only supports relation names in the FROM clause"))); /* * CREATE STATISTICS will influence future execution plans diff --git a/src/test/regress/expected/stats_ext.out b/src/test/regress/expected/stats_ext.out index a1f83b58b2398..fdc0aa130bdb8 100644 --- a/src/test/regress/expected/stats_ext.out +++ b/src/test/regress/expected/stats_ext.out @@ -56,29 +56,22 @@ CREATE STATISTICS tst (unrecognized) ON x, y FROM ext_stats_test; ERROR: unrecognized statistics kind "unrecognized" -- unsupported targets CREATE STATISTICS tst ON a FROM (VALUES (x)) AS foo; -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE STATISTICS tst ON a FROM foo NATURAL JOIN bar; -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE STATISTICS tst ON a FROM (SELECT * FROM ext_stats_test) AS foo; -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE STATISTICS tst ON a FROM ext_stats_test s TABLESAMPLE system (x); -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE STATISTICS tst ON a FROM XMLTABLE('foo' PASSING 'bar' COLUMNS a text); -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE STATISTICS tst ON a FROM JSON_TABLE(jsonb '123', '$' COLUMNS (item int)); -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause CREATE FUNCTION tftest(int) returns table(a int, b int) as $$ SELECT $1, $1+i FROM generate_series(1,5) g(i); $$ LANGUAGE sql IMMUTABLE STRICT; CREATE STATISTICS alt_stat2 ON a FROM tftest(1); -ERROR: cannot create statistics on the specified relation -DETAIL: CREATE STATISTICS only supports tables, foreign tables and materialized views. +ERROR: CREATE STATISTICS only supports relation names in the FROM clause DROP FUNCTION tftest; -- incorrect expressions CREATE STATISTICS tst ON (y) FROM ext_stats_test; -- single column reference From e7a2bbdb522dd6fc7283550742b8b52605198783 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 15 Sep 2025 16:27:50 +0200 Subject: [PATCH 241/457] Expand virtual generated columns in constraint expressions Virtual generated columns in constraint expressions need to be expanded because the optimizer matches these expressions to qual clauses. Failing to do so can cause us to miss opportunities for constraint exclusion. Author: Richard Guo Discussion: https://www.postgresql.org/message-id/flat/204804c0-798f-4c72-bd1f-36116024fda3%40eisentraut.org --- src/backend/optimizer/util/plancat.c | 9 ++++++++ .../regress/expected/generated_virtual.out | 23 +++++++++++++++++++ src/test/regress/sql/generated_virtual.sql | 15 ++++++++++++ 3 files changed, 47 insertions(+) diff --git a/src/backend/optimizer/util/plancat.c b/src/backend/optimizer/util/plancat.c index 95671771c79af..6d420bb427f0a 100644 --- a/src/backend/optimizer/util/plancat.c +++ b/src/backend/optimizer/util/plancat.c @@ -42,6 +42,7 @@ #include "parser/parse_relation.h" #include "parser/parsetree.h" #include "partitioning/partdesc.h" +#include "rewrite/rewriteHandler.h" #include "rewrite/rewriteManip.h" #include "statistics/statistics.h" #include "storage/bufmgr.h" @@ -1392,6 +1393,14 @@ get_relation_constraints(PlannerInfo *root, result = list_concat(result, rel->partition_qual); } + /* + * Expand virtual generated columns in the constraint expressions. + */ + if (result) + result = (List *) expand_generated_columns_in_expr((Node *) result, + relation, + varno); + table_close(relation, NoLock); return result; diff --git a/src/test/regress/expected/generated_virtual.out b/src/test/regress/expected/generated_virtual.out index 3b40e15a95ad0..e076977e98699 100644 --- a/src/test/regress/expected/generated_virtual.out +++ b/src/test/regress/expected/generated_virtual.out @@ -1614,3 +1614,26 @@ select * from gtest32 t group by grouping sets (a, b, c, d, e) having c = 20; -- Ensure that the virtual generated columns in ALTER COLUMN TYPE USING expression are expanded alter table gtest32 alter column e type bigint using b; drop table gtest32; +-- Ensure that virtual generated columns in constraint expressions are expanded +create table gtest33 (a int, b int generated always as (a * 2) virtual not null, check (b > 10)); +set constraint_exclusion to on; +-- should get a dummy Result, not a seq scan +explain (costs off) +select * from gtest33 where b < 10; + QUERY PLAN +-------------------------- + Result + One-Time Filter: false +(2 rows) + +-- should get a dummy Result, not a seq scan +explain (costs off) +select * from gtest33 where b is null; + QUERY PLAN +-------------------------- + Result + One-Time Filter: false +(2 rows) + +reset constraint_exclusion; +drop table gtest33; diff --git a/src/test/regress/sql/generated_virtual.sql b/src/test/regress/sql/generated_virtual.sql index e2b31853e0132..63be8edb2496e 100644 --- a/src/test/regress/sql/generated_virtual.sql +++ b/src/test/regress/sql/generated_virtual.sql @@ -859,3 +859,18 @@ select * from gtest32 t group by grouping sets (a, b, c, d, e) having c = 20; alter table gtest32 alter column e type bigint using b; drop table gtest32; + +-- Ensure that virtual generated columns in constraint expressions are expanded +create table gtest33 (a int, b int generated always as (a * 2) virtual not null, check (b > 10)); +set constraint_exclusion to on; + +-- should get a dummy Result, not a seq scan +explain (costs off) +select * from gtest33 where b < 10; + +-- should get a dummy Result, not a seq scan +explain (costs off) +select * from gtest33 where b is null; + +reset constraint_exclusion; +drop table gtest33; From 77d2b155caf716354a3519233f2cef3369984a65 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Tue, 16 Sep 2025 10:35:12 +0900 Subject: [PATCH 242/457] pg_restore: Fix comment handling with --no-publications / --no-subscriptions. Previously, pg_restore did not skip comments on publications or subscriptions even when --no-publications or --no-subscriptions was specified. As a result, it could issue COMMENT commands for objects that were never created, causing those commands to fail. This commit fixes the issue by ensuring that comments on publications and subscriptions are also skipped when the corresponding options are used. Backpatch to all supported versions. Author: Jian He Co-authored-by: Fujii Masao Discussion: https://postgr.es/m/CACJufxHCt00pR9h51AVu6+yPD5J7JQn=7dQXxqacj0XyDhc-fA@mail.gmail.com Backpatch-through: 13 --- src/bin/pg_dump/pg_backup_archiver.c | 14 +++++++++ src/bin/pg_dump/t/002_pg_dump.pl | 44 ++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index f1ed2d9ff909c..7299ffa661945 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -3033,6 +3033,20 @@ _tocEntryRequired(TocEntry *te, teSection curSection, ArchiveHandle *AH) strcmp(te->desc, "ROW SECURITY") == 0)) return 0; + /* + * If it's a comment on a publication or a subscription, maybe ignore it. + */ + if (strcmp(te->desc, "COMMENT") == 0) + { + if (ropt->no_publications && + strncmp(te->tag, "PUBLICATION", strlen("PUBLICATION")) == 0) + return 0; + + if (ropt->no_subscriptions && + strncmp(te->tag, "SUBSCRIPTION", strlen("SUBSCRIPTION")) == 0) + return 0; + } + /* * If it's a publication or a table part of a publication, maybe ignore * it. diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl index a68f132e4490a..a626d24b5730c 100644 --- a/src/bin/pg_dump/t/002_pg_dump.pl +++ b/src/bin/pg_dump/t/002_pg_dump.pl @@ -650,6 +650,32 @@ 'postgres', ], }, + no_subscriptions => { + dump_cmd => [ + 'pg_dump', '--no-sync', + '--file' => "$tempdir/no_subscriptions.sql", + '--no-subscriptions', + '--statistics', + 'postgres', + ], + }, + no_subscriptions_restore => { + dump_cmd => [ + 'pg_dump', '--no-sync', + '--format' => 'custom', + '--file' => "$tempdir/no_subscriptions_restore.dump", + '--statistics', + 'postgres', + ], + restore_cmd => [ + 'pg_restore', + '--format' => 'custom', + '--file' => "$tempdir/no_subscriptions_restore.sql", + '--no-subscriptions', + '--statistics', + "$tempdir/no_subscriptions_restore.dump", + ], + }, no_table_access_method => { dump_cmd => [ 'pg_dump', '--no-sync', @@ -873,6 +899,8 @@ no_policies => 1, no_privs => 1, no_statistics => 1, + no_subscriptions => 1, + no_subscriptions_restore => 1, no_table_access_method => 1, pg_dumpall_dbprivs => 1, pg_dumpall_exclude => 1, @@ -1844,6 +1872,10 @@ regexp => qr/^COMMENT ON SUBSCRIPTION sub1 IS 'comment on subscription';/m, like => { %full_runs, section_post_data => 1, }, + unlike => { + no_subscriptions => 1, + no_subscriptions_restore => 1, + }, }, 'COMMENT ON TEXT SEARCH CONFIGURATION dump_test.alt_ts_conf1' => { @@ -3361,6 +3393,10 @@ \QCREATE SUBSCRIPTION sub1 CONNECTION 'dbname=doesnotexist' PUBLICATION pub1 WITH (connect = false, slot_name = 'sub1', streaming = parallel);\E /xm, like => { %full_runs, section_post_data => 1, }, + unlike => { + no_subscriptions => 1, + no_subscriptions_restore => 1, + }, }, 'CREATE SUBSCRIPTION sub2' => { @@ -3372,6 +3408,10 @@ \QCREATE SUBSCRIPTION sub2 CONNECTION 'dbname=doesnotexist' PUBLICATION pub1 WITH (connect = false, slot_name = 'sub2', streaming = off, origin = none);\E /xm, like => { %full_runs, section_post_data => 1, }, + unlike => { + no_subscriptions => 1, + no_subscriptions_restore => 1, + }, }, 'CREATE SUBSCRIPTION sub3' => { @@ -3383,6 +3423,10 @@ \QCREATE SUBSCRIPTION sub3 CONNECTION 'dbname=doesnotexist' PUBLICATION pub1 WITH (connect = false, slot_name = 'sub3', streaming = on);\E /xm, like => { %full_runs, section_post_data => 1, }, + unlike => { + no_subscriptions => 1, + no_subscriptions_restore => 1, + }, }, From 2ddbfede0c615c009bbbb0f8dfcaa848da5d2376 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Tue, 16 Sep 2025 11:54:23 +0900 Subject: [PATCH 243/457] pg_restore: Fix comment handling with --no-policies. Previously, pg_restore did not skip comments on policies even when --no-policies was specified. As a result, it could issue COMMENT commands for policies that were never created, causing those commands to fail. This commit fixes the issue by ensuring that comments on policies are also skipped when --no-policies is used. Backpatch to v18, where --no-policies was added in pg_restore. Author: Jian He Co-authored-by: Fujii Masao Discussion: https://postgr.es/m/CACJufxHCt00pR9h51AVu6+yPD5J7JQn=7dQXxqacj0XyDhc-fA@mail.gmail.com Backpatch-through: 18 --- src/bin/pg_dump/pg_backup_archiver.c | 7 ++++- src/bin/pg_dump/t/002_pg_dump.pl | 46 ++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index 7299ffa661945..beb4d299b5209 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -3034,10 +3034,15 @@ _tocEntryRequired(TocEntry *te, teSection curSection, ArchiveHandle *AH) return 0; /* - * If it's a comment on a publication or a subscription, maybe ignore it. + * If it's a comment on a policy, a publication, or a subscription, maybe + * ignore it. */ if (strcmp(te->desc, "COMMENT") == 0) { + if (ropt->no_policies && + strncmp(te->tag, "POLICY", strlen("POLICY")) == 0) + return 0; + if (ropt->no_publications && strncmp(te->tag, "PUBLICATION", strlen("PUBLICATION")) == 0) return 0; diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl index a626d24b5730c..e5e55e9a21c44 100644 --- a/src/bin/pg_dump/t/002_pg_dump.pl +++ b/src/bin/pg_dump/t/002_pg_dump.pl @@ -632,6 +632,23 @@ 'postgres', ], }, + no_policies_restore => { + dump_cmd => [ + 'pg_dump', '--no-sync', + '--format' => 'custom', + '--file' => "$tempdir/no_policies_restore.dump", + '--statistics', + 'postgres', + ], + restore_cmd => [ + 'pg_restore', + '--format' => 'custom', + '--file' => "$tempdir/no_policies_restore.sql", + '--no-policies', + '--statistics', + "$tempdir/no_policies_restore.dump", + ], + }, no_privs => { dump_cmd => [ 'pg_dump', '--no-sync', @@ -897,6 +914,7 @@ no_large_objects => 1, no_owner => 1, no_policies => 1, + no_policies_restore => 1, no_privs => 1, no_statistics => 1, no_subscriptions => 1, @@ -1539,6 +1557,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, @@ -1856,6 +1875,27 @@ }, }, + 'COMMENT ON POLICY p1' => { + create_order => 55, + create_sql => 'COMMENT ON POLICY p1 ON dump_test.test_table + IS \'comment on policy\';', + regexp => + qr/^COMMENT ON POLICY p1 ON dump_test.test_table IS 'comment on policy';/m, + like => { + %full_runs, + %dump_test_schema_runs, + only_dump_test_table => 1, + section_post_data => 1, + }, + unlike => { + exclude_dump_test_schema => 1, + exclude_test_table => 1, + no_policies => 1, + no_policies_restore => 1, + only_dump_measurement => 1, + }, + }, + 'COMMENT ON PUBLICATION pub1' => { create_order => 55, create_sql => 'COMMENT ON PUBLICATION pub1 @@ -3222,6 +3262,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, @@ -3244,6 +3285,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, @@ -3266,6 +3308,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, @@ -3288,6 +3331,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, @@ -3310,6 +3354,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, @@ -3332,6 +3377,7 @@ exclude_dump_test_schema => 1, exclude_test_table => 1, no_policies => 1, + no_policies_restore => 1, only_dump_measurement => 1, }, }, From e179115dc04159eb364ffda88fed82e511aff0f7 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 16 Sep 2025 07:23:50 +0200 Subject: [PATCH 244/457] Fix incorrect const qualifier Commit 7202d72787d added in passing some const qualifiers, but the one on the postmaster_child_launch() startup_data argument was incorrect, because the function itself modifies the pointed-to data. This is hidden from the compiler because of casts. The qualifiers on the functions called by postmaster_child_launch() are still correct. --- src/backend/postmaster/launch_backend.c | 2 +- src/include/postmaster/postmaster.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/postmaster/launch_backend.c b/src/backend/postmaster/launch_backend.c index bf6b55ee83048..ae94cc99d319a 100644 --- a/src/backend/postmaster/launch_backend.c +++ b/src/backend/postmaster/launch_backend.c @@ -227,7 +227,7 @@ PostmasterChildName(BackendType child_type) */ pid_t postmaster_child_launch(BackendType child_type, int child_slot, - const void *startup_data, size_t startup_data_len, + void *startup_data, size_t startup_data_len, ClientSocket *client_sock) { pid_t pid; diff --git a/src/include/postmaster/postmaster.h b/src/include/postmaster/postmaster.h index 92497cd6a0fb5..753871071ac35 100644 --- a/src/include/postmaster/postmaster.h +++ b/src/include/postmaster/postmaster.h @@ -108,7 +108,7 @@ extern PGDLLIMPORT struct ClientSocket *MyClientSocket; /* prototypes for functions in launch_backend.c */ extern pid_t postmaster_child_launch(BackendType child_type, int child_slot, - const void *startup_data, + void *startup_data, size_t startup_data_len, struct ClientSocket *client_sock); const char *PostmasterChildName(BackendType child_type); From 176002c5bfa61421497b382e9a4b4f7315dda42d Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Tue, 16 Sep 2025 16:44:58 +0900 Subject: [PATCH 245/457] pg_dump: Fix dumping of security labels on subscriptions and event triggers. Previously, pg_dump incorrectly queried pg_seclabel to retrieve security labels for subscriptions, which are stored in pg_shseclabel as they are global objects. This could result in security labels for subscriptions not being dumped. This commit fixes the issue by updating pg_dump to query the pg_seclabels view, which aggregates entries from both pg_seclabel and pg_shseclabel. While querying pg_shseclabel directly for subscriptions was an alternative, using pg_seclabels is simpler and sufficient. In addition, pg_dump is updated to dump security labels on event triggers, which were previously omitted. Backpatch to all supported versions. Author: Jian He Co-authored-by: Fujii Masao Discussion: https://postgr.es/m/CACJufxHCt00pR9h51AVu6+yPD5J7JQn=7dQXxqacj0XyDhc-fA@mail.gmail.com Backpatch-through: 13 --- src/bin/pg_dump/pg_backup_archiver.c | 12 +++++++----- src/bin/pg_dump/pg_dump.c | 7 ++++++- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index beb4d299b5209..618e79d25cc7c 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -3310,12 +3310,14 @@ _tocEntryRestorePass(TocEntry *te) return RESTORE_PASS_POST_ACL; /* - * Comments need to be emitted in the same pass as their parent objects. - * ACLs haven't got comments, and neither do matview data objects, but - * event triggers do. (Fortunately, event triggers haven't got ACLs, or - * we'd need yet another weird special case.) + * Comments and security labels need to be emitted in the same pass as + * their parent objects. ACLs haven't got comments and security labels, + * and neither do matview data objects, but event triggers do. + * (Fortunately, event triggers haven't got ACLs, or we'd need yet another + * weird special case.) */ - if (strcmp(te->desc, "COMMENT") == 0 && + if ((strcmp(te->desc, "COMMENT") == 0 || + strcmp(te->desc, "SECURITY LABEL") == 0) && strncmp(te->tag, "EVENT TRIGGER ", 14) == 0) return RESTORE_PASS_POST_ACL; diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 2b70da8d49d80..764628e2e3c62 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -16601,7 +16601,7 @@ collectSecLabels(Archive *fout) appendPQExpBufferStr(query, "SELECT label, provider, classoid, objoid, objsubid " - "FROM pg_catalog.pg_seclabel " + "FROM pg_catalog.pg_seclabels " "ORDER BY classoid, objoid, objsubid"); res = ExecuteSqlQuery(fout, query->data, PGRES_TUPLES_OK); @@ -19311,6 +19311,11 @@ dumpEventTrigger(Archive *fout, const EventTriggerInfo *evtinfo) NULL, evtinfo->evtowner, evtinfo->dobj.catId, 0, evtinfo->dobj.dumpId); + if (evtinfo->dobj.dump & DUMP_COMPONENT_SECLABEL) + dumpSecLabel(fout, "EVENT TRIGGER", qevtname, + NULL, evtinfo->evtowner, + evtinfo->dobj.catId, 0, evtinfo->dobj.dumpId); + destroyPQExpBuffer(query); destroyPQExpBuffer(delqry); free(qevtname); From 409543da5411d55d3455d6acbd885f592f20c429 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 16 Sep 2025 08:59:12 +0200 Subject: [PATCH 246/457] Move pg_int64 back to postgres_ext.h Fix for commit 3c86223c998. That commit moved the typedef of pg_int64 from postgres_ext.h to libpq-fe.h, because the only remaining place where it might be used is libpq users, and since the type is obsolete, the intent was to limit its scope. The problem is that if someone builds an extension against an older (pre-PG18) server version and a new (PG18) libpq, they might get two typedefs, depending on include file order. This is not allowed under C99, so they might get warnings or errors, depending on the compiler and options. The underlying types might also be different (e.g., long int vs. long long int), which would also lead to errors. This scenario is plausible when using the standard Debian packaging, which provides only the newest libpq but per-major-version server packages. The fix is to undo that part of commit 3c86223c998. That way, the typedef is in the same header file across versions. At least, this is the safest fix doable before PostgreSQL 18 releases. Reviewed-by: Thomas Munro Discussion: https://www.postgresql.org/message-id/25144219-5142-4589-89f8-4e76948b32db%40eisentraut.org --- src/include/postgres_ext.h | 5 +++++ src/interfaces/libpq/libpq-fe.h | 3 --- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/include/postgres_ext.h b/src/include/postgres_ext.h index bf45c50dcf318..6a8f25a9907e4 100644 --- a/src/include/postgres_ext.h +++ b/src/include/postgres_ext.h @@ -24,6 +24,8 @@ #ifndef POSTGRES_EXT_H #define POSTGRES_EXT_H +#include + /* * Object ID is a fundamental type in Postgres. */ @@ -42,6 +44,9 @@ typedef unsigned int Oid; /* the above needs */ +/* deprecated name for int64_t, formerly used in client API declarations */ +typedef int64_t pg_int64; + /* * Identifiers of error message fields. Kept here to keep common * between frontend and backend, and also to export them to libpq diff --git a/src/interfaces/libpq/libpq-fe.h b/src/interfaces/libpq/libpq-fe.h index af8004f952a56..0852584edae4b 100644 --- a/src/interfaces/libpq/libpq-fe.h +++ b/src/interfaces/libpq/libpq-fe.h @@ -234,9 +234,6 @@ typedef struct pgNotify struct pgNotify *next; /* list link */ } PGnotify; -/* deprecated name for int64_t */ -typedef int64_t pg_int64; - /* pg_usec_time_t is like time_t, but with microsecond resolution */ typedef int64_t pg_usec_time_t; From d29a3f4b46a043323dd5f39e9b97f1aaabbbec87 Mon Sep 17 00:00:00 2001 From: Richard Guo Date: Tue, 16 Sep 2025 18:42:20 +0900 Subject: [PATCH 247/457] Treat JsonConstructorExpr as non-strict JsonConstructorExpr can produce non-NULL output with a NULL input, so it should be treated as a non-strict construct. Failing to do so can lead to incorrect query behavior. For example, in the reported case, when pulling up a subquery that is under an outer join, if the subquery's target list contains a JsonConstructorExpr that uses subquery variables and it is mistakenly treated as strict, it will be pulled up without being wrapped in a PlaceHolderVar. As a result, the expression will be evaluated at the wrong place and will not be forced to null when the outer join should do so. Back-patch to v16 where JsonConstructorExpr was introduced. Bug: #19046 Reported-by: Runyuan He Author: Tender Wang Co-authored-by: Richard Guo Discussion: https://postgr.es/m/19046-765b6602b0a8cfdf@postgresql.org Backpatch-through: 16 --- src/backend/optimizer/util/clauses.c | 2 ++ src/test/regress/expected/subselect.out | 28 +++++++++++++++++++++++++ src/test/regress/sql/subselect.sql | 17 +++++++++++++++ 3 files changed, 47 insertions(+) diff --git a/src/backend/optimizer/util/clauses.c b/src/backend/optimizer/util/clauses.c index 26a3e0500866c..593d91454ab46 100644 --- a/src/backend/optimizer/util/clauses.c +++ b/src/backend/optimizer/util/clauses.c @@ -1112,6 +1112,8 @@ contain_nonstrict_functions_walker(Node *node, void *context) return true; if (IsA(node, BooleanTest)) return true; + if (IsA(node, JsonConstructorExpr)) + return true; /* Check other function-containing nodes */ if (check_functions_in_node(node, contain_nonstrict_functions_checker, diff --git a/src/test/regress/expected/subselect.out b/src/test/regress/expected/subselect.out index 1f5f159fbce32..ff667bec8ba2f 100644 --- a/src/test/regress/expected/subselect.out +++ b/src/test/regress/expected/subselect.out @@ -1783,6 +1783,34 @@ fetch backward all in c1; commit; -- +-- Check that JsonConstructorExpr is treated as non-strict, and thus can be +-- wrapped in a PlaceHolderVar +-- +begin; +create temp table json_tab (a int); +insert into json_tab values (1); +explain (verbose, costs off) +select * from json_tab t1 left join (select json_array(1, a) from json_tab t2) s on false; + QUERY PLAN +--------------------------------------------------- + Nested Loop Left Join + Output: t1.a, (JSON_ARRAY(1, a RETURNING json)) + Join Filter: false + -> Seq Scan on pg_temp.json_tab t1 + Output: t1.a + -> Result + Output: JSON_ARRAY(1, a RETURNING json) + One-Time Filter: false +(8 rows) + +select * from json_tab t1 left join (select json_array(1, a) from json_tab t2) s on false; + a | json_array +---+------------ + 1 | +(1 row) + +rollback; +-- -- Verify that we correctly flatten cases involving a subquery output -- expression that doesn't need to be wrapped in a PlaceHolderVar -- diff --git a/src/test/regress/sql/subselect.sql b/src/test/regress/sql/subselect.sql index 4a3e32c2147dc..d77588ea91f8d 100644 --- a/src/test/regress/sql/subselect.sql +++ b/src/test/regress/sql/subselect.sql @@ -929,6 +929,23 @@ fetch backward all in c1; commit; +-- +-- Check that JsonConstructorExpr is treated as non-strict, and thus can be +-- wrapped in a PlaceHolderVar +-- + +begin; + +create temp table json_tab (a int); +insert into json_tab values (1); + +explain (verbose, costs off) +select * from json_tab t1 left join (select json_array(1, a) from json_tab t2) s on false; + +select * from json_tab t1 left join (select json_array(1, a) from json_tab t2) s on false; + +rollback; + -- -- Verify that we correctly flatten cases involving a subquery output -- expression that doesn't need to be wrapped in a PlaceHolderVar From 9e2c58417342f71f921543ad36df423459196368 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 16 Sep 2025 10:09:49 -0400 Subject: [PATCH 248/457] Add regression expected-files for older OpenSSL in FIPS mode. In our previous discussions around making our regression tests pass in FIPS mode, we concluded that we didn't need to support the different error message wording observed with pre-3.0 OpenSSL. However there are still a few LTS distributions soldiering along with such versions, and now we have some in the buildfarm. So let's add the variant expected-files needed to make them happy. This commit only covers the core regression tests. Previous discussion suggested that we might need some adjustments in contrib as well, but it's not totally clear to me what those would be. Rather than work it out from first principles, I'll wait to see what the buildfarm shows. Back-patch to v17 which is the oldest branch that claims to support this case. Author: Tom Lane Discussion: https://postgr.es/m/443709.1757876535@sss.pgh.pa.us Backpatch-through: 17 --- src/test/regress/expected/md5_2.out | 35 +++++ src/test/regress/expected/password_2.out | 168 +++++++++++++++++++++++ 2 files changed, 203 insertions(+) create mode 100644 src/test/regress/expected/md5_2.out create mode 100644 src/test/regress/expected/password_2.out diff --git a/src/test/regress/expected/md5_2.out b/src/test/regress/expected/md5_2.out new file mode 100644 index 0000000000000..4eea7f2bfc360 --- /dev/null +++ b/src/test/regress/expected/md5_2.out @@ -0,0 +1,35 @@ +-- +-- MD5 test suite - from IETF RFC 1321 +-- (see: https://www.rfc-editor.org/rfc/rfc1321) +-- +-- (The md5() function will error in OpenSSL FIPS mode. By keeping +-- this test in a separate file, it is easier to manage variant +-- results.) +select md5('') = 'd41d8cd98f00b204e9800998ecf8427e' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('a') = '0cc175b9c0f1b6a831c399e269772661' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('abc') = '900150983cd24fb0d6963f7d28e17f72' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('message digest') = 'f96b697d7cb7938d525a2f31aaf161d0' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('abcdefghijklmnopqrstuvwxyz') = 'c3fcd3d76192e4007dfb496cca67e13b' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789') = 'd174ab98d277d9f5a5611c2c9f419d9f' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('12345678901234567890123456789012345678901234567890123456789012345678901234567890') = '57edf4a22be3c955ac49da2e2107b67a' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5(''::bytea) = 'd41d8cd98f00b204e9800998ecf8427e' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('a'::bytea) = '0cc175b9c0f1b6a831c399e269772661' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('abc'::bytea) = '900150983cd24fb0d6963f7d28e17f72' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('message digest'::bytea) = 'f96b697d7cb7938d525a2f31aaf161d0' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('abcdefghijklmnopqrstuvwxyz'::bytea) = 'c3fcd3d76192e4007dfb496cca67e13b' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'::bytea) = 'd174ab98d277d9f5a5611c2c9f419d9f' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS +select md5('12345678901234567890123456789012345678901234567890123456789012345678901234567890'::bytea) = '57edf4a22be3c955ac49da2e2107b67a' AS "TRUE"; +ERROR: could not compute MD5 hash: disabled for FIPS diff --git a/src/test/regress/expected/password_2.out b/src/test/regress/expected/password_2.out new file mode 100644 index 0000000000000..ea1fc7a083c6d --- /dev/null +++ b/src/test/regress/expected/password_2.out @@ -0,0 +1,168 @@ +-- +-- Tests for password types +-- +-- Tests for GUC password_encryption +SET password_encryption = 'novalue'; -- error +ERROR: invalid value for parameter "password_encryption": "novalue" +HINT: Available values: md5, scram-sha-256. +SET password_encryption = true; -- error +ERROR: invalid value for parameter "password_encryption": "true" +HINT: Available values: md5, scram-sha-256. +SET password_encryption = 'md5'; -- ok +SET password_encryption = 'scram-sha-256'; -- ok +-- consistency of password entries +SET password_encryption = 'md5'; +CREATE ROLE regress_passwd1; +ALTER ROLE regress_passwd1 PASSWORD 'role_pwd1'; +ERROR: password encryption failed: disabled for FIPS +CREATE ROLE regress_passwd2; +ALTER ROLE regress_passwd2 PASSWORD 'role_pwd2'; +ERROR: password encryption failed: disabled for FIPS +SET password_encryption = 'scram-sha-256'; +CREATE ROLE regress_passwd3 PASSWORD 'role_pwd3'; +CREATE ROLE regress_passwd4 PASSWORD NULL; +-- check list of created entries +-- +-- The scram secret will look something like: +-- SCRAM-SHA-256$4096:E4HxLGtnRzsYwg==$6YtlR4t69SguDiwFvbVgVZtuz6gpJQQqUMZ7IQJK5yI=:ps75jrHeYU4lXCcXI4O8oIdJ3eO8o2jirjruw9phBTo= +-- +-- Since the salt is random, the exact value stored will be different on every test +-- run. Use a regular expression to mask the changing parts. +SELECT rolname, regexp_replace(rolpassword, '(SCRAM-SHA-256)\$(\d+):([a-zA-Z0-9+/=]+)\$([a-zA-Z0-9+=/]+):([a-zA-Z0-9+/=]+)', '\1$\2:$:') as rolpassword_masked + FROM pg_authid + WHERE rolname LIKE 'regress_passwd%' + ORDER BY rolname, rolpassword; + rolname | rolpassword_masked +-----------------+--------------------------------------------------- + regress_passwd1 | + regress_passwd2 | + regress_passwd3 | SCRAM-SHA-256$4096:$: + regress_passwd4 | +(4 rows) + +-- Rename a role +ALTER ROLE regress_passwd2 RENAME TO regress_passwd2_new; +-- md5 entry should have been removed +SELECT rolname, rolpassword + FROM pg_authid + WHERE rolname LIKE 'regress_passwd2_new' + ORDER BY rolname, rolpassword; + rolname | rolpassword +---------------------+------------- + regress_passwd2_new | +(1 row) + +ALTER ROLE regress_passwd2_new RENAME TO regress_passwd2; +-- Change passwords with ALTER USER. With plaintext or already-encrypted +-- passwords. +SET password_encryption = 'md5'; +-- encrypt with MD5 +ALTER ROLE regress_passwd2 PASSWORD 'foo'; +ERROR: password encryption failed: disabled for FIPS +-- already encrypted, use as they are +ALTER ROLE regress_passwd1 PASSWORD 'md5cd3578025fe2c3d7ed1b9a9b26238b70'; +WARNING: setting an MD5-encrypted password +DETAIL: MD5 password support is deprecated and will be removed in a future release of PostgreSQL. +HINT: Refer to the PostgreSQL documentation for details about migrating to another password type. +ALTER ROLE regress_passwd3 PASSWORD 'SCRAM-SHA-256$4096:VLK4RMaQLCvNtQ==$6YtlR4t69SguDiwFvbVgVZtuz6gpJQQqUMZ7IQJK5yI=:ps75jrHeYU4lXCcXI4O8oIdJ3eO8o2jirjruw9phBTo='; +SET password_encryption = 'scram-sha-256'; +-- create SCRAM secret +ALTER ROLE regress_passwd4 PASSWORD 'foo'; +-- already encrypted with MD5, use as it is +CREATE ROLE regress_passwd5 PASSWORD 'md5e73a4b11df52a6068f8b39f90be36023'; +WARNING: setting an MD5-encrypted password +DETAIL: MD5 password support is deprecated and will be removed in a future release of PostgreSQL. +HINT: Refer to the PostgreSQL documentation for details about migrating to another password type. +-- This looks like a valid SCRAM-SHA-256 secret, but it is not +-- so it should be hashed with SCRAM-SHA-256. +CREATE ROLE regress_passwd6 PASSWORD 'SCRAM-SHA-256$1234'; +-- These may look like valid MD5 secrets, but they are not, so they +-- should be hashed with SCRAM-SHA-256. +-- trailing garbage at the end +CREATE ROLE regress_passwd7 PASSWORD 'md5012345678901234567890123456789zz'; +-- invalid length +CREATE ROLE regress_passwd8 PASSWORD 'md501234567890123456789012345678901zz'; +-- Changing the SCRAM iteration count +SET scram_iterations = 1024; +CREATE ROLE regress_passwd9 PASSWORD 'alterediterationcount'; +SELECT rolname, regexp_replace(rolpassword, '(SCRAM-SHA-256)\$(\d+):([a-zA-Z0-9+/=]+)\$([a-zA-Z0-9+=/]+):([a-zA-Z0-9+/=]+)', '\1$\2:$:') as rolpassword_masked + FROM pg_authid + WHERE rolname LIKE 'regress_passwd%' + ORDER BY rolname, rolpassword; + rolname | rolpassword_masked +-----------------+--------------------------------------------------- + regress_passwd1 | md5cd3578025fe2c3d7ed1b9a9b26238b70 + regress_passwd2 | + regress_passwd3 | SCRAM-SHA-256$4096:$: + regress_passwd4 | SCRAM-SHA-256$4096:$: + regress_passwd5 | md5e73a4b11df52a6068f8b39f90be36023 + regress_passwd6 | SCRAM-SHA-256$4096:$: + regress_passwd7 | SCRAM-SHA-256$4096:$: + regress_passwd8 | SCRAM-SHA-256$4096:$: + regress_passwd9 | SCRAM-SHA-256$1024:$: +(9 rows) + +-- An empty password is not allowed, in any form +CREATE ROLE regress_passwd_empty PASSWORD ''; +NOTICE: empty string is not a valid password, clearing password +ALTER ROLE regress_passwd_empty PASSWORD 'md585939a5ce845f1a1b620742e3c659e0a'; +WARNING: setting an MD5-encrypted password +DETAIL: MD5 password support is deprecated and will be removed in a future release of PostgreSQL. +HINT: Refer to the PostgreSQL documentation for details about migrating to another password type. +ALTER ROLE regress_passwd_empty PASSWORD 'SCRAM-SHA-256$4096:hpFyHTUsSWcR7O9P$LgZFIt6Oqdo27ZFKbZ2nV+vtnYM995pDh9ca6WSi120=:qVV5NeluNfUPkwm7Vqat25RjSPLkGeoZBQs6wVv+um4='; +NOTICE: empty string is not a valid password, clearing password +SELECT rolpassword FROM pg_authid WHERE rolname='regress_passwd_empty'; + rolpassword +------------- + +(1 row) + +-- Test with invalid stored and server keys. +-- +-- The first is valid, to act as a control. The others have too long +-- stored/server keys. They will be re-hashed. +CREATE ROLE regress_passwd_sha_len0 PASSWORD 'SCRAM-SHA-256$4096:A6xHKoH/494E941doaPOYg==$Ky+A30sewHIH3VHQLRN9vYsuzlgNyGNKCh37dy96Rqw=:COPdlNiIkrsacU5QoxydEuOH6e/KfiipeETb/bPw8ZI='; +CREATE ROLE regress_passwd_sha_len1 PASSWORD 'SCRAM-SHA-256$4096:A6xHKoH/494E941doaPOYg==$Ky+A30sewHIH3VHQLRN9vYsuzlgNyGNKCh37dy96RqwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=:COPdlNiIkrsacU5QoxydEuOH6e/KfiipeETb/bPw8ZI='; +CREATE ROLE regress_passwd_sha_len2 PASSWORD 'SCRAM-SHA-256$4096:A6xHKoH/494E941doaPOYg==$Ky+A30sewHIH3VHQLRN9vYsuzlgNyGNKCh37dy96Rqw=:COPdlNiIkrsacU5QoxydEuOH6e/KfiipeETb/bPw8ZIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA='; +-- Check that the invalid secrets were re-hashed. A re-hashed secret +-- should not contain the original salt. +SELECT rolname, rolpassword not like '%A6xHKoH/494E941doaPOYg==%' as is_rolpassword_rehashed + FROM pg_authid + WHERE rolname LIKE 'regress_passwd_sha_len%' + ORDER BY rolname; + rolname | is_rolpassword_rehashed +-------------------------+------------------------- + regress_passwd_sha_len0 | f + regress_passwd_sha_len1 | t + regress_passwd_sha_len2 | t +(3 rows) + +-- Test that valid hashes that are too long are rejected +CREATE ROLE regress_passwd10 PASSWORD 'SCRAM-SHA-256$000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004096:wNFxNSk1hAXBkgub8py3bg==$65zC6E+R0U7tiYTC9+Wtq4Thw6gUDj3eDCINij8TflU=:rC1I7tcVugrHEY2DT0iPjGyjM4aJxkMM9n8WBxtUtHU='; +ERROR: encrypted password is too long +DETAIL: Encrypted passwords must be no longer than 512 bytes. +ALTER ROLE regress_passwd9 PASSWORD 'SCRAM-SHA-256$000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004096:wNFxNSk1hAXBkgub8py3bg==$65zC6E+R0U7tiYTC9+Wtq4Thw6gUDj3eDCINij8TflU=:rC1I7tcVugrHEY2DT0iPjGyjM4aJxkMM9n8WBxtUtHU='; +ERROR: encrypted password is too long +DETAIL: Encrypted passwords must be no longer than 512 bytes. +DROP ROLE regress_passwd1; +DROP ROLE regress_passwd2; +DROP ROLE regress_passwd3; +DROP ROLE regress_passwd4; +DROP ROLE regress_passwd5; +DROP ROLE regress_passwd6; +DROP ROLE regress_passwd7; +DROP ROLE regress_passwd8; +DROP ROLE regress_passwd9; +DROP ROLE regress_passwd_empty; +DROP ROLE regress_passwd_sha_len0; +DROP ROLE regress_passwd_sha_len1; +DROP ROLE regress_passwd_sha_len2; +-- all entries should have been removed +SELECT rolname, rolpassword + FROM pg_authid + WHERE rolname LIKE 'regress_passwd%' + ORDER BY rolname, rolpassword; + rolname | rolpassword +---------+------------- +(0 rows) + From dad1e259dfa95edd07bf9a890fbb103dc35057ce Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Tue, 16 Sep 2025 11:48:48 -0400 Subject: [PATCH 249/457] doc PG 18 relnotes: add mention of temporal foreign key constr. Reported-by: Yugo Nagata Author: Yugo Nagata Discussion: https://postgr.es/m/20250901200148.baca5744b27419c87c323362@sraoss.co.jp Backpatch-through: 18 only --- doc/src/sgml/release-18.sgml | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 874f3113ccbea..75cf99b6390ab 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -1891,21 +1891,27 @@ Author: Thomas Munro Allow the specification of non-overlapping PRIMARY - KEY and UNIQUE + KEY, + UNIQUE, and + foreign key constraints (Paul A. Jungwirth) § + § - This is specified by WITHOUT OVERLAPS on the - last specified column. + This is specified by WITHOUT OVERLAPS for + PRIMARY KEY and UNIQUE, and by + PERIOD for foreign keys, all applied to the last + specified column. From 4ad846445dd0a1596ca7bfeb5b2ea93f6d7a751d Mon Sep 17 00:00:00 2001 From: Noah Misch Date: Tue, 16 Sep 2025 09:40:44 -0700 Subject: [PATCH 250/457] Fix pg_dump COMMENT dependency for separate domain constraints. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The COMMENT should depend on the separately-dumped constraint, not the domain. Sufficient restore parallelism might fail the COMMENT command by issuing it before the constraint exists. Back-patch to v13, like commit 0858f0f96ebb891c8960994f023ed5a17b758a38. Reviewed-by: Álvaro Herrera Discussion: https://postgr.es/m/20250913020233.fa.nmisch@google.com Backpatch-through: 13 --- src/bin/pg_dump/pg_dump.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index 764628e2e3c62..dd7d5b514f3c8 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -18634,7 +18634,7 @@ dumpConstraint(Archive *fout, const ConstraintInfo *coninfo) dumpComment(fout, conprefix->data, qtypname, tyinfo->dobj.namespace->dobj.name, tyinfo->rolname, - coninfo->dobj.catId, 0, tyinfo->dobj.dumpId); + coninfo->dobj.catId, 0, coninfo->dobj.dumpId); destroyPQExpBuffer(conprefix); free(qtypname); } From cc7053a5fe08883801057faa70101dcf99f0d071 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 16 Sep 2025 13:05:53 -0400 Subject: [PATCH 251/457] Revert "Avoid race condition between "GRANT role" and "DROP ROLE"". This reverts commit 98fc31d6499163a0a781aa6f13582a07f09cd7c6. That change allowed DROP OWNED BY to drop grants of the target role to other roles, arguing that nobody would need those privileges anymore. But that's not so: if you're not superuser, you still need admin privilege on the target role so you can drop it. It's not clear whether or how the dependency-based approach to solving the original problem can be adapted to keep these grants. Since v18 release is fast approaching, the sanest thing to do seems to be to revert this patch for now. The race-condition problem is low severity and not worth taking risks for. I didn't force a catversion bump in 98fc31d64, so I won't do so here either. Reported-by: Dipesh Dhameliya Author: Tom Lane Discussion: https://postgr.es/m/CABgZEgczOFicCJoqtrH9gbYMe_BV3Hq8zzCBRcMgmU6LRsihUA@mail.gmail.com Backpatch-through: 18 --- doc/src/sgml/ref/drop_owned.sgml | 2 +- src/backend/commands/user.c | 23 +++++------------- src/test/regress/expected/privileges.out | 30 ------------------------ src/test/regress/sql/privileges.sql | 15 ------------ 4 files changed, 7 insertions(+), 63 deletions(-) diff --git a/doc/src/sgml/ref/drop_owned.sgml b/doc/src/sgml/ref/drop_owned.sgml index 46e1c229ec0fb..efda01a39e88b 100644 --- a/doc/src/sgml/ref/drop_owned.sgml +++ b/doc/src/sgml/ref/drop_owned.sgml @@ -33,7 +33,7 @@ DROP OWNED BY { name | CURRENT_ROLE database that are owned by one of the specified roles. Any privileges granted to the given roles on objects in the current database or on shared objects (databases, tablespaces, configuration - parameters, or other roles) will also be revoked. + parameters) will also be revoked. diff --git a/src/backend/commands/user.c b/src/backend/commands/user.c index 0d638e29d0066..5ce8ffa863a72 100644 --- a/src/backend/commands/user.c +++ b/src/backend/commands/user.c @@ -30,7 +30,6 @@ #include "commands/defrem.h" #include "commands/seclabel.h" #include "commands/user.h" -#include "lib/qunique.h" #include "libpq/crypt.h" #include "miscadmin.h" #include "storage/lmgr.h" @@ -490,7 +489,8 @@ CreateRole(ParseState *pstate, CreateRoleStmt *stmt) * Advance command counter so we can see new record; else tests in * AddRoleMems may fail. */ - CommandCounterIncrement(); + if (addroleto || adminmembers || rolemembers) + CommandCounterIncrement(); /* Default grant. */ InitGrantRoleOptions(&popt); @@ -1904,8 +1904,7 @@ AddRoleMems(Oid currentUserId, const char *rolename, Oid roleid, else { Oid objectId; - Oid *newmembers = (Oid *) palloc(3 * sizeof(Oid)); - int nnewmembers; + Oid *newmembers = palloc(sizeof(Oid)); /* * The values for these options can be taken directly from 'popt'. @@ -1947,22 +1946,12 @@ AddRoleMems(Oid currentUserId, const char *rolename, Oid roleid, new_record, new_record_nulls); CatalogTupleInsert(pg_authmem_rel, tuple); - /* - * Record dependencies on the roleid, member, and grantor, as if a - * pg_auth_members entry were an object ACL. - * updateAclDependencies() requires an input array that is - * palloc'd (it will free it), sorted, and de-duped. - */ - newmembers[0] = roleid; - newmembers[1] = memberid; - newmembers[2] = grantorId; - qsort(newmembers, 3, sizeof(Oid), oid_cmp); - nnewmembers = qunique(newmembers, 3, sizeof(Oid), oid_cmp); - + /* updateAclDependencies wants to pfree array inputs */ + newmembers[0] = grantorId; updateAclDependencies(AuthMemRelationId, objectId, 0, InvalidOid, 0, NULL, - nnewmembers, newmembers); + 1, newmembers); } /* CCI after each change, in case there are duplicates in list */ diff --git a/src/test/regress/expected/privileges.out b/src/test/regress/expected/privileges.out index a8997a3eea5d4..823b824c203f9 100644 --- a/src/test/regress/expected/privileges.out +++ b/src/test/regress/expected/privileges.out @@ -113,36 +113,6 @@ CREATE USER regress_priv_user2; CREATE USER regress_priv_user3; CREATE USER regress_priv_user4; CREATE USER regress_priv_user5; --- DROP OWNED should also act on granted and granted-to roles -GRANT regress_priv_user1 TO regress_priv_user2; -GRANT regress_priv_user2 TO regress_priv_user3; -SELECT roleid::regrole, member::regrole FROM pg_auth_members - WHERE roleid IN ('regress_priv_user1'::regrole,'regress_priv_user2'::regrole) - ORDER BY roleid::regrole::text; - roleid | member ---------------------+-------------------- - regress_priv_user1 | regress_priv_user2 - regress_priv_user2 | regress_priv_user3 -(2 rows) - -REASSIGN OWNED BY regress_priv_user2 TO regress_priv_user4; -- no effect -SELECT roleid::regrole, member::regrole FROM pg_auth_members - WHERE roleid IN ('regress_priv_user1'::regrole,'regress_priv_user2'::regrole) - ORDER BY roleid::regrole::text; - roleid | member ---------------------+-------------------- - regress_priv_user1 | regress_priv_user2 - regress_priv_user2 | regress_priv_user3 -(2 rows) - -DROP OWNED BY regress_priv_user2; -- removes both grants -SELECT roleid::regrole, member::regrole FROM pg_auth_members - WHERE roleid IN ('regress_priv_user1'::regrole,'regress_priv_user2'::regrole) - ORDER BY roleid::regrole::text; - roleid | member ---------+-------- -(0 rows) - GRANT pg_read_all_data TO regress_priv_user6; GRANT pg_write_all_data TO regress_priv_user7; GRANT pg_read_all_settings TO regress_priv_user8 WITH ADMIN OPTION; diff --git a/src/test/regress/sql/privileges.sql b/src/test/regress/sql/privileges.sql index e3f047fff1946..75fe68df333c1 100644 --- a/src/test/regress/sql/privileges.sql +++ b/src/test/regress/sql/privileges.sql @@ -90,21 +90,6 @@ CREATE USER regress_priv_user3; CREATE USER regress_priv_user4; CREATE USER regress_priv_user5; --- DROP OWNED should also act on granted and granted-to roles -GRANT regress_priv_user1 TO regress_priv_user2; -GRANT regress_priv_user2 TO regress_priv_user3; -SELECT roleid::regrole, member::regrole FROM pg_auth_members - WHERE roleid IN ('regress_priv_user1'::regrole,'regress_priv_user2'::regrole) - ORDER BY roleid::regrole::text; -REASSIGN OWNED BY regress_priv_user2 TO regress_priv_user4; -- no effect -SELECT roleid::regrole, member::regrole FROM pg_auth_members - WHERE roleid IN ('regress_priv_user1'::regrole,'regress_priv_user2'::regrole) - ORDER BY roleid::regrole::text; -DROP OWNED BY regress_priv_user2; -- removes both grants -SELECT roleid::regrole, member::regrole FROM pg_auth_members - WHERE roleid IN ('regress_priv_user1'::regrole,'regress_priv_user2'::regrole) - ORDER BY roleid::regrole::text; - GRANT pg_read_all_data TO regress_priv_user6; GRANT pg_write_all_data TO regress_priv_user7; GRANT pg_read_all_settings TO regress_priv_user8 WITH ADMIN OPTION; From ef5ee0e346182600015b38eb41cace179ce6566f Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Tue, 16 Sep 2025 14:36:51 -0400 Subject: [PATCH 252/457] Add regression expected-files for older OpenSSL in FIPS mode. Cover contrib/pgcrypto, per buildfarm. Author: Tom Lane Discussion: https://postgr.es/m/443709.1757876535@sss.pgh.pa.us Backpatch-through: 17 --- contrib/pgcrypto/expected/hmac-md5_2.out | 44 ++++++++++++++++++++++++ contrib/pgcrypto/expected/md5_2.out | 17 +++++++++ 2 files changed, 61 insertions(+) create mode 100644 contrib/pgcrypto/expected/hmac-md5_2.out create mode 100644 contrib/pgcrypto/expected/md5_2.out diff --git a/contrib/pgcrypto/expected/hmac-md5_2.out b/contrib/pgcrypto/expected/hmac-md5_2.out new file mode 100644 index 0000000000000..08cdf95d53245 --- /dev/null +++ b/contrib/pgcrypto/expected/hmac-md5_2.out @@ -0,0 +1,44 @@ +-- +-- HMAC-MD5 +-- +SELECT hmac( +'Hi There', +'\x0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b'::bytea, +'md5'); +ERROR: Cannot use "md5": No such hash algorithm +-- 2 +SELECT hmac( +'Jefe', +'what do ya want for nothing?', +'md5'); +ERROR: Cannot use "md5": No such hash algorithm +-- 3 +SELECT hmac( +'\xdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd'::bytea, +'\xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'::bytea, +'md5'); +ERROR: Cannot use "md5": No such hash algorithm +-- 4 +SELECT hmac( +'\xcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcd'::bytea, +'\x0102030405060708090a0b0c0d0e0f10111213141516171819'::bytea, +'md5'); +ERROR: Cannot use "md5": No such hash algorithm +-- 5 +SELECT hmac( +'Test With Truncation', +'\x0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c'::bytea, +'md5'); +ERROR: Cannot use "md5": No such hash algorithm +-- 6 +SELECT hmac( +'Test Using Larger Than Block-Size Key - Hash Key First', +'\xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'::bytea, +'md5'); +ERROR: Cannot use "md5": No such hash algorithm +-- 7 +SELECT hmac( +'Test Using Larger Than Block-Size Key and Larger Than One Block-Size Data', +'\xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'::bytea, +'md5'); +ERROR: Cannot use "md5": No such hash algorithm diff --git a/contrib/pgcrypto/expected/md5_2.out b/contrib/pgcrypto/expected/md5_2.out new file mode 100644 index 0000000000000..51bdaa86f32b4 --- /dev/null +++ b/contrib/pgcrypto/expected/md5_2.out @@ -0,0 +1,17 @@ +-- +-- MD5 message digest +-- +SELECT digest('', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm +SELECT digest('a', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm +SELECT digest('abc', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm +SELECT digest('message digest', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm +SELECT digest('abcdefghijklmnopqrstuvwxyz', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm +SELECT digest('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm +SELECT digest('12345678901234567890123456789012345678901234567890123456789012345678901234567890', 'md5'); +ERROR: Cannot use "md5": No such hash algorithm From bae6c74ba4e4e4fdbb45e45569a5b53f27590b1c Mon Sep 17 00:00:00 2001 From: David Rowley Date: Wed, 17 Sep 2025 11:49:26 +1200 Subject: [PATCH 253/457] Add missing EPQ recheck for TID Scan The EvalPlanQual recheck for TID Scan wasn't rechecking the TID qual still passed after following update chains. This could result in tuples being updated or deleted by plans using TID Scans where the ctid of the new (updated) tuple no longer matches the clause of the scan. This isn't desired behavior, and isn't consistent with what would happen if the chosen plan had used an Index or Seq Scan, and that could lead to hard to predict behavior for scans that contain TID quals and other quals as the planner has freedom to choose TID or some other scan method for such queries, and the chosen plan could change at any moment. Here we fix this by properly implementing the recheck function for TID Scans. Backpatch to 13, oldest supported version Reported-by: Sophie Alpert Author: Sophie Alpert Author: David Rowley Reviewed-by: David Rowley Reviewed-by: Chao Li Discussion: https://postgr.es/m/4a6268ff-3340-453a-9bf5-c98d51a6f729@app.fastmail.com Backpatch-through: 13 --- src/backend/executor/nodeTidscan.c | 19 +++-- .../isolation/expected/eval-plan-qual.out | 71 +++++++++++++++++++ src/test/isolation/specs/eval-plan-qual.spec | 11 +++ 3 files changed, 97 insertions(+), 4 deletions(-) diff --git a/src/backend/executor/nodeTidscan.c b/src/backend/executor/nodeTidscan.c index 5e56e29a15fc4..d50c6600358c5 100644 --- a/src/backend/executor/nodeTidscan.c +++ b/src/backend/executor/nodeTidscan.c @@ -402,12 +402,23 @@ TidNext(TidScanState *node) static bool TidRecheck(TidScanState *node, TupleTableSlot *slot) { + ItemPointer match; + + /* WHERE CURRENT OF always intends to resolve to the latest tuple */ + if (node->tss_isCurrentOf) + return true; + + if (node->tss_TidList == NULL) + TidListEval(node); + /* - * XXX shouldn't we check here to make sure tuple matches TID list? In - * runtime-key case this is not certain, is it? However, in the WHERE - * CURRENT OF case it might not match anyway ... + * Binary search the TidList to see if this ctid is mentioned and return + * true if it is. */ - return true; + match = (ItemPointer) bsearch(&slot->tts_tid, node->tss_TidList, + node->tss_NumTids, sizeof(ItemPointerData), + itemptr_comparator); + return match != NULL; } diff --git a/src/test/isolation/expected/eval-plan-qual.out b/src/test/isolation/expected/eval-plan-qual.out index 032d4208d51f3..2cba44f2bde3f 100644 --- a/src/test/isolation/expected/eval-plan-qual.out +++ b/src/test/isolation/expected/eval-plan-qual.out @@ -1218,6 +1218,77 @@ subid|id (1 row) +starting permutation: tid1 tid2 c1 c2 read +step tid1: UPDATE accounts SET balance = balance + 100 WHERE ctid = '(0,1)' RETURNING accountid, balance; +accountid|balance +---------+------- +checking | 700 +(1 row) + +step tid2: UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' RETURNING accountid, balance; +step c1: COMMIT; +step tid2: <... completed> +accountid|balance +---------+------- +(0 rows) + +step c2: COMMIT; +step read: SELECT * FROM accounts ORDER BY accountid; +accountid|balance|balance2 +---------+-------+-------- +checking | 700| 1400 +savings | 600| 1200 +(2 rows) + + +starting permutation: tid1 tidsucceed2 c1 c2 read +step tid1: UPDATE accounts SET balance = balance + 100 WHERE ctid = '(0,1)' RETURNING accountid, balance; +accountid|balance +---------+------- +checking | 700 +(1 row) + +step tidsucceed2: UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' OR ctid = '(0,3)' RETURNING accountid, balance; +step c1: COMMIT; +step tidsucceed2: <... completed> +accountid|balance +---------+------- +checking | 900 +(1 row) + +step c2: COMMIT; +step read: SELECT * FROM accounts ORDER BY accountid; +accountid|balance|balance2 +---------+-------+-------- +checking | 900| 1800 +savings | 600| 1200 +(2 rows) + + +starting permutation: tid1 tid2 r1 c2 read +step tid1: UPDATE accounts SET balance = balance + 100 WHERE ctid = '(0,1)' RETURNING accountid, balance; +accountid|balance +---------+------- +checking | 700 +(1 row) + +step tid2: UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' RETURNING accountid, balance; +step r1: ROLLBACK; +step tid2: <... completed> +accountid|balance +---------+------- +checking | 800 +(1 row) + +step c2: COMMIT; +step read: SELECT * FROM accounts ORDER BY accountid; +accountid|balance|balance2 +---------+-------+-------- +checking | 800| 1600 +savings | 600| 1200 +(2 rows) + + starting permutation: simplepartupdate conditionalpartupdate c1 c2 read_part step simplepartupdate: update parttbl set b = b + 10; diff --git a/src/test/isolation/specs/eval-plan-qual.spec b/src/test/isolation/specs/eval-plan-qual.spec index 07307e623e473..b8983ea215f18 100644 --- a/src/test/isolation/specs/eval-plan-qual.spec +++ b/src/test/isolation/specs/eval-plan-qual.spec @@ -99,6 +99,9 @@ step upsert1 { WHERE NOT EXISTS (SELECT 1 FROM upsert); } +# Tests for Tid Scan +step tid1 { UPDATE accounts SET balance = balance + 100 WHERE ctid = '(0,1)' RETURNING accountid, balance; } + # tests with table p check inheritance cases: # readp1/writep1/readp2 tests a bug where nodeLockRows did the wrong thing # when the first updated tuple was in a non-first child table. @@ -241,6 +244,10 @@ step updateforcip3 { step wrtwcte { UPDATE table_a SET value = 'tableAValue2' WHERE id = 1; } step wrjt { UPDATE jointest SET data = 42 WHERE id = 7; } +step tid2 { UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' RETURNING accountid, balance; } +# here, recheck succeeds; (0,3) is the id that step tid1 will assign +step tidsucceed2 { UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' OR ctid = '(0,3)' RETURNING accountid, balance; } + step conditionalpartupdate { update parttbl set c = -c where b < 10; } @@ -392,6 +399,10 @@ permutation wrtwcte readwcte c1 c2 permutation wrjt selectjoinforupdate c2 c1 permutation wrjt selectresultforupdate c2 c1 permutation wrtwcte multireadwcte c1 c2 +permutation tid1 tid2 c1 c2 read +permutation tid1 tidsucceed2 c1 c2 read +# test that a rollback on s1 has s2 perform the update on the original row +permutation tid1 tid2 r1 c2 read permutation simplepartupdate conditionalpartupdate c1 c2 read_part permutation simplepartupdate complexpartupdate c1 c2 read_part From 78e6047dcea588ec127f6a71c7cebd5c0f41d795 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Wed, 17 Sep 2025 12:19:51 +1200 Subject: [PATCH 254/457] Add missing EPQ recheck for TID Range Scan The EvalPlanQual recheck for TID Range Scan wasn't rechecking the TID qual still passed after following update chains. This could result in tuples being updated or deleted by plans using TID Range Scans where the ctid of the new (updated) tuple no longer matches the clause of the scan. This isn't desired behavior, and isn't consistent with what would happen if the chosen plan had used an Index or Seq Scan, and that could lead to hard to predict behavior for scans that contain TID quals and other quals as the planner has freedom to choose TID Range or some other non-TID scan method for such queries, and the chosen plan could change at any moment. Here we fix this by properly implementing the recheck function for TID Range Scans. Backpatch to 14, where TID Range Scans were added Reported-by: Sophie Alpert Author: Sophie Alpert Author: David Rowley Reviewed-by: David Rowley Reviewed-by: Chao Li Discussion: https://postgr.es/m/4a6268ff-3340-453a-9bf5-c98d51a6f729@app.fastmail.com Backpatch-through: 14 --- src/backend/executor/nodeTidrangescan.c | 10 ++++++++ .../isolation/expected/eval-plan-qual.out | 23 +++++++++++++++++++ src/test/isolation/specs/eval-plan-qual.spec | 5 +++- 3 files changed, 37 insertions(+), 1 deletion(-) diff --git a/src/backend/executor/nodeTidrangescan.c b/src/backend/executor/nodeTidrangescan.c index 26f7420b64b0e..1bce8d6cbfe6b 100644 --- a/src/backend/executor/nodeTidrangescan.c +++ b/src/backend/executor/nodeTidrangescan.c @@ -274,6 +274,16 @@ TidRangeNext(TidRangeScanState *node) static bool TidRangeRecheck(TidRangeScanState *node, TupleTableSlot *slot) { + if (!TidRangeEval(node)) + return false; + + Assert(ItemPointerIsValid(&slot->tts_tid)); + + /* Recheck the ctid is still within range */ + if (ItemPointerCompare(&slot->tts_tid, &node->trss_mintid) < 0 || + ItemPointerCompare(&slot->tts_tid, &node->trss_maxtid) > 0) + return false; + return true; } diff --git a/src/test/isolation/expected/eval-plan-qual.out b/src/test/isolation/expected/eval-plan-qual.out index 2cba44f2bde3f..3d31d0f84e590 100644 --- a/src/test/isolation/expected/eval-plan-qual.out +++ b/src/test/isolation/expected/eval-plan-qual.out @@ -1265,6 +1265,29 @@ savings | 600| 1200 (2 rows) +starting permutation: tidrange1 tidrange2 c1 c2 read +step tidrange1: UPDATE accounts SET balance = balance + 100 WHERE ctid BETWEEN '(0,1)' AND '(0,1)' RETURNING accountid, balance; +accountid|balance +---------+------- +checking | 700 +(1 row) + +step tidrange2: UPDATE accounts SET balance = balance + 200 WHERE ctid BETWEEN '(0,1)' AND '(0,1)' RETURNING accountid, balance; +step c1: COMMIT; +step tidrange2: <... completed> +accountid|balance +---------+------- +(0 rows) + +step c2: COMMIT; +step read: SELECT * FROM accounts ORDER BY accountid; +accountid|balance|balance2 +---------+-------+-------- +checking | 700| 1400 +savings | 600| 1200 +(2 rows) + + starting permutation: tid1 tid2 r1 c2 read step tid1: UPDATE accounts SET balance = balance + 100 WHERE ctid = '(0,1)' RETURNING accountid, balance; accountid|balance diff --git a/src/test/isolation/specs/eval-plan-qual.spec b/src/test/isolation/specs/eval-plan-qual.spec index b8983ea215f18..c6eee68558685 100644 --- a/src/test/isolation/specs/eval-plan-qual.spec +++ b/src/test/isolation/specs/eval-plan-qual.spec @@ -99,8 +99,9 @@ step upsert1 { WHERE NOT EXISTS (SELECT 1 FROM upsert); } -# Tests for Tid Scan +# Tests for Tid / Tid Range Scan step tid1 { UPDATE accounts SET balance = balance + 100 WHERE ctid = '(0,1)' RETURNING accountid, balance; } +step tidrange1 { UPDATE accounts SET balance = balance + 100 WHERE ctid BETWEEN '(0,1)' AND '(0,1)' RETURNING accountid, balance; } # tests with table p check inheritance cases: # readp1/writep1/readp2 tests a bug where nodeLockRows did the wrong thing @@ -245,6 +246,7 @@ step wrtwcte { UPDATE table_a SET value = 'tableAValue2' WHERE id = 1; } step wrjt { UPDATE jointest SET data = 42 WHERE id = 7; } step tid2 { UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' RETURNING accountid, balance; } +step tidrange2 { UPDATE accounts SET balance = balance + 200 WHERE ctid BETWEEN '(0,1)' AND '(0,1)' RETURNING accountid, balance; } # here, recheck succeeds; (0,3) is the id that step tid1 will assign step tidsucceed2 { UPDATE accounts SET balance = balance + 200 WHERE ctid = '(0,1)' OR ctid = '(0,3)' RETURNING accountid, balance; } @@ -401,6 +403,7 @@ permutation wrjt selectresultforupdate c2 c1 permutation wrtwcte multireadwcte c1 c2 permutation tid1 tid2 c1 c2 read permutation tid1 tidsucceed2 c1 c2 read +permutation tidrange1 tidrange2 c1 c2 read # test that a rollback on s1 has s2 perform the update on the original row permutation tid1 tid2 r1 c2 read From dd74e599b8f639fbccc3655d3856a56a6b8d4288 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 17 Sep 2025 09:33:35 +0900 Subject: [PATCH 255/457] Fix shared memory calculation size of PgAioCtl The shared memory size was calculated based on an offset of io_handles, which is itself a pointer included in the structure. We tend to overestimate the shared memory size overall, so this was unlikely an issue in practice, but let's be correct and use the full size of the structure in the calculation, so as the pointer for io_handles is included. Oversight in da7226993fd4. Author: Madhukar Prasad Reviewed-by: Andres Freund Reviewed-by: Matthias van de Meent Discussion: https://postgr.es/m/CAKi+wrbC2dTzh_vKJoAZXV5wqTbhY0n4wRNpCjJ=e36aoo0kFw@mail.gmail.com Backpatch-through: 18 --- src/backend/storage/aio/aio_init.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/backend/storage/aio/aio_init.c b/src/backend/storage/aio/aio_init.c index 885c3940c6626..54ab84dd6f03a 100644 --- a/src/backend/storage/aio/aio_init.c +++ b/src/backend/storage/aio/aio_init.c @@ -30,12 +30,8 @@ static Size AioCtlShmemSize(void) { - Size sz; - /* pgaio_ctl itself */ - sz = offsetof(PgAioCtl, io_handles); - - return sz; + return sizeof(PgAioCtl); } static uint32 From 6e8286f9a15325b6354a682a9106b4035dba0f17 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 17 Sep 2025 10:16:10 +0900 Subject: [PATCH 256/457] injection_points: Fix incrementation of variable-numbered stats The pending entry was not used when incrementing its data, directly manipulating the shared memory pointer, without even locking it. This could mean losing statistics under concurrent activity. The flush callback was a no-op. This code serves as a base template for extensions for the custom cumulative statistics, so let's be clean and use a pending entry for the incrementations, whose data is then flushed to the corresponding entry in the shared hashtable when all the stats are reported, in its own flush callback. Author: Sami Imseih Discussion: https://postgr.es/m/CAA5RZ0v0U0yhPbY+bqChomkPbyUrRQ3rQXnZf_SB-svDiQOpgQ@mail.gmail.com Backpatch-through: 18 --- src/test/modules/injection_points/injection_stats.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/test/modules/injection_points/injection_stats.c b/src/test/modules/injection_points/injection_stats.c index e3947b23ba573..ca8df4ad217ab 100644 --- a/src/test/modules/injection_points/injection_stats.c +++ b/src/test/modules/injection_points/injection_stats.c @@ -164,8 +164,7 @@ void pgstat_report_inj(const char *name) { PgStat_EntryRef *entry_ref; - PgStatShared_InjectionPoint *shstatent; - PgStat_StatInjEntry *statent; + PgStat_StatInjEntry *pending; /* leave if disabled */ if (!inj_stats_loaded || !inj_stats_enabled) @@ -174,11 +173,10 @@ pgstat_report_inj(const char *name) entry_ref = pgstat_prep_pending_entry(PGSTAT_KIND_INJECTION, InvalidOid, PGSTAT_INJ_IDX(name), NULL); - shstatent = (PgStatShared_InjectionPoint *) entry_ref->shared_stats; - statent = &shstatent->stats; + pending = (PgStat_StatInjEntry *) entry_ref->pending; - /* Update the injection point statistics */ - statent->numcalls++; + /* Update the injection point pending statistics */ + pending->numcalls++; } /* From 4eab456494e3fc20dc0a10dac0466d344c9fbfaf Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 17 Sep 2025 16:32:57 -0400 Subject: [PATCH 257/457] Calculate agglevelsup correctly when Aggref contains a CTE. If an aggregate function call contains a sub-select that has an RTE referencing a CTE outside the aggregate, we must treat that reference like a Var referencing the CTE's query level for purposes of determining the aggregate's level. Otherwise we might reach the nonsensical conclusion that the aggregate should be evaluated at some query level higher than the CTE, ending in a planner error or a broken plan tree that causes executor failures. Bug: #19055 Reported-by: BugForge Author: Tom Lane Discussion: https://postgr.es/m/19055-6970cfa8556a394d@postgresql.org Backpatch-through: 13 --- src/backend/parser/parse_agg.c | 28 +++++++++++++++++++++++- src/test/regress/expected/with.out | 34 ++++++++++++++++++++++++++++++ src/test/regress/sql/with.sql | 14 ++++++++++++ 3 files changed, 75 insertions(+), 1 deletion(-) diff --git a/src/backend/parser/parse_agg.c b/src/backend/parser/parse_agg.c index 0ac8966e30ff3..3254c83cc6cdb 100644 --- a/src/backend/parser/parse_agg.c +++ b/src/backend/parser/parse_agg.c @@ -791,6 +791,32 @@ check_agg_arguments_walker(Node *node, parser_errposition(context->pstate, ((WindowFunc *) node)->location))); } + + 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) + { + int ctelevelsup = rte->ctelevelsup; + + /* convert levelsup to frame of reference of original query */ + ctelevelsup -= context->sublevels_up; + /* ignore local CTEs of subqueries */ + if (ctelevelsup >= 0) + { + if (context->min_varlevel < 0 || + context->min_varlevel > ctelevelsup) + context->min_varlevel = ctelevelsup; + } + } + return false; /* allow range_table_walker to continue */ + } if (IsA(node, Query)) { /* Recurse into subselects */ @@ -800,7 +826,7 @@ check_agg_arguments_walker(Node *node, result = query_tree_walker((Query *) node, check_agg_arguments_walker, context, - 0); + QTW_EXAMINE_RTES_BEFORE); context->sublevels_up--; return result; } diff --git a/src/test/regress/expected/with.out b/src/test/regress/expected/with.out index 26c8850514007..61409197dbf22 100644 --- a/src/test/regress/expected/with.out +++ b/src/test/regress/expected/with.out @@ -2296,6 +2296,40 @@ from int4_tbl; -2147483647 (5 rows) +-- +-- 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) +select f1, (with cte1(x,y) as (select 1,2) + select count((select i4.f1 from cte1))) as ss +from int4_tbl i4; + QUERY PLAN +-------------------------------------------- + Seq Scan on public.int4_tbl i4 + Output: i4.f1, (SubPlan 2) + SubPlan 2 + -> Aggregate + Output: count((InitPlan 1).col1) + InitPlan 1 + -> Result + Output: i4.f1 + -> Result +(9 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) + -- -- test for nested-recursive-WITH bug -- diff --git a/src/test/regress/sql/with.sql b/src/test/regress/sql/with.sql index b1cae1612904b..d88d5abb91a11 100644 --- a/src/test/regress/sql/with.sql +++ b/src/test/regress/sql/with.sql @@ -1097,6 +1097,20 @@ select ( with cte(foo) as ( values(f1) ) values((select foo from cte)) ) 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) +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 nested-recursive-WITH bug -- From 7aecc00b3d66162b7a9554cd922c5316db5cb8a0 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Thu, 18 Sep 2025 11:09:15 +0900 Subject: [PATCH 258/457] pg_restore: Fix security label handling with --no-publications/subscriptions. Previously, pg_restore did not skip security labels on publications or subscriptions even when --no-publications or --no-subscriptions was specified. As a result, it could issue SECURITY LABEL commands for objects that were never created, causing those commands to fail. This commit fixes the issue by ensuring that security labels on publications and subscriptions are also skipped when the corresponding options are used. Backpatch to all supported versions. Author: Jian He Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/CACJufxHCt00pR9h51AVu6+yPD5J7JQn=7dQXxqacj0XyDhc-fA@mail.gmail.com Backpatch-through: 13 --- src/bin/pg_dump/pg_backup_archiver.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/bin/pg_dump/pg_backup_archiver.c b/src/bin/pg_dump/pg_backup_archiver.c index 618e79d25cc7c..8456992c33c06 100644 --- a/src/bin/pg_dump/pg_backup_archiver.c +++ b/src/bin/pg_dump/pg_backup_archiver.c @@ -3066,6 +3066,21 @@ _tocEntryRequired(TocEntry *te, teSection curSection, ArchiveHandle *AH) if (ropt->no_security_labels && strcmp(te->desc, "SECURITY LABEL") == 0) return 0; + /* + * If it's a security label on a publication or a subscription, maybe + * ignore it. + */ + if (strcmp(te->desc, "SECURITY LABEL") == 0) + { + if (ropt->no_publications && + strncmp(te->tag, "PUBLICATION", strlen("PUBLICATION")) == 0) + return 0; + + if (ropt->no_subscriptions && + strncmp(te->tag, "SUBSCRIPTION", strlen("SUBSCRIPTION")) == 0) + return 0; + } + /* If it's a subscription, maybe ignore it */ if (ropt->no_subscriptions && strcmp(te->desc, "SUBSCRIPTION") == 0) return 0; From b4879afdf5bf6664a95e9591ff975ff5c0e2985a Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Thu, 18 Sep 2025 10:20:16 -0400 Subject: [PATCH 259/457] doc PG 18 relnotes: update description of skip scan item Reported-by: Peter Geoghegan Discussion: https://postgr.es/m/CAH2-Wz=5aGnkPsLH9u1kZED=M8TKvxX2b9XmgdOe+ePO0KxwcQ@mail.gmail.com Backpatch-through: 18 only --- doc/src/sgml/release-18.sgml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 75cf99b6390ab..63ce3473dc58b 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -607,8 +607,10 @@ Author: Peter Geoghegan - This allows multi-column btree indexes to be used by queries that - only equality-reference the second or later indexed columns. + This allows multi-column btree indexes to be used in more cases such + as when there are no restrictions on the first or early indexed + columns (or there are non-equality ones), and there are useful + restrictions on later indexed columns. From 144de0341bde9cab7a6b629a3d9041be54486d96 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Thu, 18 Sep 2025 11:29:36 -0400 Subject: [PATCH 260/457] doc PG 18 relnotes: set release date, remove "CURRENT AS OF" Backpatch-through: 18 only --- doc/src/sgml/release-18.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 63ce3473dc58b..46b4787a1918f 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -6,7 +6,7 @@ Release date: - 2025-??-??, CURRENT AS OF 2025-08-29 + 2025-09-25 From 9a82a64edcd8615cf16eae64bf1572d4156cb912 Mon Sep 17 00:00:00 2001 From: Amit Langote Date: Fri, 19 Sep 2025 11:39:06 +0900 Subject: [PATCH 261/457] Fix EPQ crash from missing partition pruning state in EState Commit bb3ec16e14 moved partition pruning metadata into PlannedStmt. At executor startup this metadata is used to initialize the EState fields es_part_prune_infos, es_part_prune_states, and es_part_prune_results. EvalPlanQualStart() failed to copy those fields into the child EState, causing NULL dereference when Append ran partition pruning during a recheck. This can occur with DELETE or UPDATE on partitioned tables that use runtime pruning, e.g. with generic plans. Fix by copying all partition pruning state into the EPQ estate. Add an isolation test that reproduces the crash with concurrent UPDATE and DELETE on a partitioned table, where the DELETE session hits the crash during its EPQ recheck after the UPDATE commits. Bug: #19056 Reported-by: Fei Changhong Diagnozed-by: Fei Changhong Author: David Rowley Co-authored-by: Amit Langote Discussion: https://postgr.es/m/19056-a677cef9b54d76a0%40postgresql.org --- src/backend/executor/execMain.c | 9 +++++++++ src/test/isolation/expected/eval-plan-qual.out | 9 +++++++++ src/test/isolation/specs/eval-plan-qual.spec | 8 ++++++++ 3 files changed, 26 insertions(+) diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index ff12e2e136438..831c55ce78740 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -3084,6 +3084,15 @@ EvalPlanQualStart(EPQState *epqstate, Plan *planTree) */ rcestate->es_unpruned_relids = parentestate->es_unpruned_relids; + /* + * Also make the PartitionPruneInfo and the results of pruning available. + * These need to match exactly so that we initialize all the same Append + * and MergeAppend subplans as the parent did. + */ + rcestate->es_part_prune_infos = parentestate->es_part_prune_infos; + rcestate->es_part_prune_states = parentestate->es_part_prune_states; + rcestate->es_part_prune_results = parentestate->es_part_prune_results; + /* * Initialize private state information for each SubPlan. We must do this * before running ExecInitNode on the main query tree, since diff --git a/src/test/isolation/expected/eval-plan-qual.out b/src/test/isolation/expected/eval-plan-qual.out index 3d31d0f84e590..60eca44b4e37c 100644 --- a/src/test/isolation/expected/eval-plan-qual.out +++ b/src/test/isolation/expected/eval-plan-qual.out @@ -1457,3 +1457,12 @@ step sysmerge2: step c1: COMMIT; step sysmerge2: <... completed> step c2: COMMIT; + +starting permutation: s1pp1 s2pp1 s2pp2 s2pp3 c1 c2 +step s1pp1: UPDATE another_parttbl SET b = b + 1 WHERE a = 1; +step s2pp1: SET plan_cache_mode TO force_generic_plan; +step s2pp2: PREPARE epd AS DELETE FROM another_parttbl WHERE a = $1; +step s2pp3: EXECUTE epd(1); +step c1: COMMIT; +step s2pp3: <... completed> +step c2: COMMIT; diff --git a/src/test/isolation/specs/eval-plan-qual.spec b/src/test/isolation/specs/eval-plan-qual.spec index c6eee68558685..64afffb1d83b1 100644 --- a/src/test/isolation/specs/eval-plan-qual.spec +++ b/src/test/isolation/specs/eval-plan-qual.spec @@ -204,6 +204,7 @@ step sys1 { UPDATE pg_class SET reltuples = 123 WHERE oid = 'accounts'::regclass; } +step s1pp1 { UPDATE another_parttbl SET b = b + 1 WHERE a = 1; } session s2 setup { BEGIN ISOLATION LEVEL READ COMMITTED; } @@ -312,6 +313,10 @@ step sysmerge2 { step c2 { COMMIT; } step r2 { ROLLBACK; } +step s2pp1 { SET plan_cache_mode TO force_generic_plan; } +step s2pp2 { PREPARE epd AS DELETE FROM another_parttbl WHERE a = $1; } +step s2pp3 { EXECUTE epd(1); } + session s3 setup { BEGIN ISOLATION LEVEL READ COMMITTED; } step read { SELECT * FROM accounts ORDER BY accountid; } @@ -415,3 +420,6 @@ permutation simplepartupdate_noroute complexpartupdate_doesnt_route c1 c2 read_p permutation sys1 sysupd2 c1 c2 permutation sys1 sysmerge2 c1 c2 + +# Exercise run-time partition pruning code in an EPQ recheck +permutation s1pp1 s2pp1 s2pp2 s2pp3 c1 c2 From 6fa2688a9d63c190da0f19eb61a23b72eea110a2 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Fri, 19 Sep 2025 23:35:53 +1200 Subject: [PATCH 262/457] Improve wording in a few comments Initially this was to fix the "catched" typo, but I (David) wasn't quite clear on what the previous comment meant about being "effective". I expect this means efficiency, so I've reworded the comment to indicate that. While this is only a comment fixup, for the sake of possibly minimizing possible future backpatching pain, I've opted to backpatch to 18 since this code is new to that version and the release isn't out the door yet. Author: Tender Wang Discussion: https://postgr.es/m/CAHewXNmSYWPud1sfBvpKbCJeRkWeZYuqatxtV9U9LvAFXBEiBw@mail.gmail.com Backpatch-through: 18 --- src/backend/optimizer/path/indxpath.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/backend/optimizer/path/indxpath.c b/src/backend/optimizer/path/indxpath.c index 601354ea3e056..4d891aedecab0 100644 --- a/src/backend/optimizer/path/indxpath.c +++ b/src/backend/optimizer/path/indxpath.c @@ -3322,9 +3322,9 @@ match_orclause_to_indexcol(PlannerInfo *root, /* * Try to convert a list of OR-clauses to a single SAOP expression. Each * OR entry must be in the form: (indexkey operator constant) or (constant - * operator indexkey). Operators of all the entries must match. To be - * effective, give up on the first non-matching entry. Exit is - * implemented as a break from the loop, which is catched afterwards. + * operator indexkey). Operators of all the entries must match. On + * discovery of anything unsupported, we give up by breaking out of the + * loop immediately and returning NULL. */ foreach(lc, orclause->args) { @@ -3462,9 +3462,9 @@ match_orclause_to_indexcol(PlannerInfo *root, } /* - * Catch the break from the loop above. Normally, a foreach() loop ends - * up with a NULL list cell. A non-NULL list cell indicates a break from - * the foreach() loop. Free the consts list and return NULL then. + * 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. */ if (lc != NULL) { From 142885d380533b5ad4ecbaae49760dc9e21d5892 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Fri, 19 Sep 2025 14:28:28 +0200 Subject: [PATCH 263/457] Add list of acknowledgments to release notes Author: Corey Huinker Discussion: https://www.postgresql.org/message-id/CADkLM%3DfGrtKiQMv6GSoxyghtTxB_6b1FQUB7fhQG00%3DLhuizPg%40mail.gmail.com --- doc/src/sgml/release-18.sgml | 508 ++++++++++++++++++++++++++++++++++- 1 file changed, 507 insertions(+), 1 deletion(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 46b4787a1918f..8f13786fe88bc 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -4211,7 +4211,513 @@ Author: Daniel Gustafsson - (to be completed) + Abhishek Chanda + Adam Guo + Adam Rauch + Aidar Imamov + Ajin Cherian + Alastair Turner + Alec Cozens + Aleksander Alekseev + Alena Rybakina + Alex Friedman + Alex Richman + Alexander Alehin + Alexander Borisov + Alexander Korotkov + Alexander Kozhemyakin + Alexander Kukushkin + Alexander Kuzmenkov + Alexander Kuznetsov + Alexander Lakhin + Alexander Pyhalov + Alexandra Wang + Alexey Dvoichenkov + Alexey Makhmutov + Alexey Shishkin + Ali Akbar + Álvaro Herrera + Álvaro Mongil + Amit Kapila + Amit Langote + Amul Sul + Andreas Karlsson + Andreas Scherbaum + Andreas Ulbrich + Andrei Lepikhov + Andres Freund + Andrew + Andrew Bille + Andrew Dunstan + Andrew Jackson + Andrew Kane + Andrew Watkins + Andrey Borodin + Andrey Chudnovsky + Andrey Rachitskiy + Andrey Rudometov + Andy Alsup + Andy Fan + Anthonin Bonnefoy + Anthony Hsu + Anthony Leung + Anton Melnikov + Anton Voloshin + Antonin Houska + Antti Lampinen + Arseniy Mukhin + Artur Zakirov + Arun Thirupathi + Ashutosh Bapat + Asphator + Atsushi Torikoshi + Avi Weinberg + Aya Iwata + Ayush Tiwari + Ayush Vatsa + Bastien Roucariès + Ben Peachey Higdon + Benoit Lobréau + Bernd Helmle + Bernd Reiß + Bernhard Wiedemann + Bertrand Drouvot + Bertrand Mamasam + Bharath Rupireddy + Bogdan Grigorenko + Boyu Yang + Braulio Fdo Gonzalez + Bruce Momjian + Bykov Ivan + Cameron Vogt + Cary Huang + Cédric Villemain + Cees van Zeeland + ChangAo Chen + Chao Li + Chapman Flack + Charles Samborski + Chengwen Wu + Chengxi Sun + Chiranmoy Bhattacharya + Chris Gooch + Christian Charukiewicz + Christoph Berg + Christophe Courtois + Christopher Inokuchi + Clemens Ruck + Corey Huinker + Craig Milhiser + Crisp Lee + Dagfinn Ilmari Mannsåker + Daniel Elishakov + Daniel Gustafsson + Daniel Vérité + Daniel Westermann + Daniele Varrazzo + Daniil Davydov + Daria Shanina + Dave Cramer + Dave Page + David Benjamin + David Christensen + David Fiedler + David G. Johnston + David Geier + David Rowley + David Steele + David Wheeler + David Zhang + Davinder Singh + Dean Rasheed + Devanga Susmitha + Devrim Gündüz + Dian Fay + Dilip Kumar + Dimitrios Apostolou + Dipesh Dhameliya + Dmitrii Bondar + Dmitry Dolgov + Dmitry Koval + Dmitry Kovalenko + Dmitry Yurichev + Dominique Devienne + Donghang Lin + Dorjpalam Batbaatar + Drew Callahan + Duncan Sands + Dwayne Towell + Dzmitry Jachnik + Egor Chindyaskin + Egor Rogov + Emanuel Ionescu + Emanuele Musella + Emre Hasegeli + Eric Cyr + Erica Zhang + Erik Nordström + Erik Rijkers + Erik Wienhold + Erki Eessaar + Ethan Mertz + Etienne LAFARGE + Etsuro Fujita + Euler Taveira + Evan Si + Evgeniy Gorbanev + Fabio R. Sluzala + Fabrízio de Royes Mello + Feike Steenbergen + Feliphe Pozzer + Felix + Fire Emerald + Florents Tselai + Francesco Degrassi + Frank Streitzig + Frédéric Yhuel + Fredrik Widlert + Gabriele Bartolini + Gavin Panella + Geoff Winkless + George MacKerron + Gilles Darold + Grant Gryczan + Greg Burd + Greg Sabino Mullane + Greg Stark + Grigory Kryachko + Guillaume Lelarge + Gunnar Morling + Gunnar Wagner + Gurjeet Singh + Haifang Wang + Hajime Matsunaga + Hamid Akhtar + Hannu Krosing + Hari Krishna Sunder + Haruka Takatsuka + Hayato Kuroda + Heikki Linnakangas + Hironobu Suzuki + Holger Jakobs + Hubert Lubaczewski + Hugo Dubois + Hugo Zhang + Hunaid Sohail + Hywel Carver + Ian Barwick + Ibrar Ahmed + Igor Gnatyuk + Igor Korot + Ilia Evdokimov + Ilya Gladyshev + Ilyasov Ian + Imran Zaheer + Isaac Morland + Israel Barth Rubio + Ivan Kush + Jacob Brazeal + Jacob Champion + Jaime Casanova + Jakob Egger + Jakub Wartak + James Coleman + James Hunter + Jan Behrens + Japin Li + Jason Smith + Jayesh Dehankar + Jeevan Chalke + Jeff Davis + Jehan-Guillaume de Rorthais + Jelte Fennema-Nio + Jian He + Jianghua Yang + Jiao Shuntian + Jim Jones + Jim Nasby + Jingtang Zhang + Jingzhou Fu + Joe Conway + Joel Jacobson + John Hutchins + John Naylor + Jonathan Katz + Jorge Solórzano + José Villanova + Josef Šimánek + Joseph Koshakow + Julien Rouhaud + Junwang Zhao + Justin Pryzby + Kaido Vaikla + Kaimeh + Karina Litskevich + Karthik S + Kartyshov Ivan + Kashif Zeeshan + Keisuke Kuroda + Kevin Hale Boyes + Kevin K Biju + Kirill Reshke + Kirill Zdornyy + Koen De Groote + Koichi Suzuki + Koki Nakamura + Konstantin Knizhnik + Kouhei Sutou + Kuntal Ghosh + Kyotaro Horiguchi + Lakshmi Narayana Velayudam + Lars Kanis + Laurence Parry + Laurenz Albe + Lele Gaifax + Li Yong + Lilian Ontowhee + Lingbin Meng + Luboslav Špilák + Luca Vallisa + Lukas Fittl + Maciek Sakrejda + Magnus Hagander + Mahendra Singh Thalor + Mahendrakar Srinivasarao + Maiquel Grassi + Maksim Korotkov + Maksim Melnikov + Man Zeng + Marat Buharov + Marc Balmer + Marco Nenciarini + Marcos Pegoraro + Marina Polyakova + Mark Callaghan + Mark Dilger + Marlene Brandstaetter + Marlene Reiterer + Martin Rakhmanov + Masahiko Sawada + Masahiro Ikeda + Masao Fujii + Mason Mackaman + Mat Arye + Matheus Alcantara + Mats Kindahl + Matthew Gabeler-Lee + Matthew Kim + Matthew Sterrett + Matthew Woodcraft + Matthias van de Meent + Matthieu Denais + Maurizio Boriani + Max Johnson + Max Madden + Maxim Boguk + Maxim Orlov + Maximilian Chrzan + Melanie Plageman + Melih Mutlu + Mert Alev + Michael Banck + Michael Bondarenko + Michael Christofides + Michael Guissine + Michael Harris + Michaël Paquier + Michail Nikolaev + Michal Kleczek + Michel Pelletier + Mikaël Gourlaouen + Mikhail Gribkov + Mikhail Kot + Milosz Chmura + Muralikrishna Bandaru + Murat Efendioglu + Mutaamba Maasha + Naeem Akhter + Nat Makarevitch + Nathan Bossart + Navneet Kumar + Nazir Bilal Yavuz + Neil Conway + Niccolò Fei + Nick Davies + Nicolas Maus + Niek Brasa + Nikhil Raj + Nikita + Nikita Kalinin + Nikita Malakhov + Nikolay Samokhvalov + Nikolay Shaplov + Nisha Moond + Nitin Jadhav + Nitin Motiani + Noah Misch + Noboru Saito + Noriyoshi Shinoda + Ole Peder Brandtzæg + Oleg Sibiryakov + Oleg Tselebrovskiy + Olleg Samoylov + Onder Kalaci + Ondrej Navratil + Patrick Stählin + Paul Amonson + Paul Jungwirth + Paul Ramsey + Pavel Borisov + Pavel Luzanov + Pavel Nekrasov + Pavel Stehule + Peter Eisentraut + Peter Geoghegan + Peter Mittere + Peter Smith + Phil Eaton + Philipp Salvisberg + Philippe Beaudoin + Pierre Giraud + Pixian Shi + Polina Bungina + Przemyslaw Sztoch + Quynh Tran + Rafia Sabih + Raghuveer Devulapalli + Rahila Syed + Rama Malladi + Ran Benita + Ranier Vilela + Renan Alves Fonseca + Richard Guo + Richard Neill + Rintaro Ikeda + Robert Haas + Robert Treat + Robins Tharakan + Roman Zharkov + Ronald Cruz + Ronan Dunklau + Rui Zhao + Rushabh Lathia + Rustam Allakov + Ryo Kanbayashi + Ryohei Takahashi + RyotaK + Sagar Dilip Shedge + Salvatore Dipietro + Sam Gabrielsson + Sam James + Sameer Kumar + Sami Imseih + Samuel Thibault + Satyanarayana Narlapuram + Sebastian Skalacki + Senglee Choi + Sergei Kornilov + Sergey Belyashov + Sergey Dudoladov + Sergey Prokhorenko + Sergey Sargsyan + Sergey Soloviev + Sergey Tatarintsev + Shaik Mohammad Mujeeb + Shawn McCoy + Shenhao Wang + Shihao Zhong + Shinya Kato + Shlok Kyal + Shubham Khanna + Shveta Malik + Simon Riggs + Smolkin Grigory + Sofia Kopikova + Song Hongyu + Song Jinzhou + Soumyadeep Chakraborty + Sravan Kumar + Srinath Reddy + Stan Hu + Stepan Neretin + Stephen Fewer + Stephen Frost + Steve Chavez + Steven Niu + Suraj Kharage + Sven Klemm + Takamichi Osumi + Takeshi Ideriha + Tatsuo Ishii + Ted Yu + Tels + Tender Wang + Teodor Sigaev + Thom Brown + Thomas Baehler + Thomas Krennwallner + Thomas Munro + Tim Wood + Timur Magomedov + Tobias Wendorff + Todd Cook + Tofig Aliev + Tom Lane + Tomas Vondra + Tomasz Rybak + Tomasz Szypowski + Torsten Foertsch + Toshi Harada + Tristan Partin + Triveni N + Umar Hayat + Vallimaharajan G + Vasya Boytsov + Victor Yegorov + Vignesh C + Viktor Holmberg + Vinícius Abrahão + Vinod Sridharan + Virender Singla + Vitaly Davydov + Vladlen Popolitov + Vladyslav Nebozhyn + Walid Ibrahim + Webbo Han + Wenhui Qiu + Will Mortensen + Will Storey + Wolfgang Walther + Xin Zhang + Xing Guo + Xuneng Zhou + Yan Chengpen + Yang Lei + Yaroslav Saburov + Yaroslav Syrytsia + Yasir Hussain + Yasuo Honda + Yogesh Sharma + Yonghao Lee + Yoran Heling + Yu Liang + Yugo Nagata + Yuhang Qiu + Yuki Seino + Yura Sokolov + Yurii Rashkovskii + Yushi Ogiwara + Yusuke Sugie + Yuta Katsuragi + Yuto Sasaki + Yuuki Fujii + Yuya Watari + Zane Duffield + Zeyuan Hu + Zhang Mingli + Zhihong Yu + Zhijie Hou + Zsolt Parragi From b585f25284d24d2e3fe19e81583c2b458b2a3efc Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Fri, 19 Sep 2025 15:07:41 -0500 Subject: [PATCH 264/457] Add list of major features to the v18 release notes. Author: Nathan Bossart Co-authored-by: "Jonathan S. Katz" Reviewed-by: Peter Eisentraut Reviewed-by: Erik Rijkers Reviewed-by: Robert Haas Discussion: https://postgr.es/m/aLMo7lJKg8bWUs3y%40momjian.us Backpatch-through: 18 only --- doc/src/sgml/release-18.sgml | 60 +++++++++++++++++++++++++++++++++++- 1 file changed, 59 insertions(+), 1 deletion(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 8f13786fe88bc..8811a6a1f33f1 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -21,7 +21,65 @@ - (to be completed) + An asynchronous I/O (AIO) subsystem that can improve performance of + sequential scans, bitmap heap scans, vacuums, and other operations. + + + + + + pg_upgrade + now retains optimizer statistics. + + + + + + Support for "skip scan" lookups that allow using + multicolumn B-tree indexes in + more cases. + + + + + + uuidv7() + function for generating timestamp-ordered + UUIDs. + + + + + + Virtual + generated columns + that compute their values during read operations. This is now the + default for generated columns. + + + + + + OAuth authentication support. + + + + + + OLD and NEW support for + RETURNING clauses + in , , + , and commands. + + + + + + Temporal constraints, or constraints over ranges, for + PRIMARY KEY, + UNIQUE, and + FOREIGN KEY + constraints. From 5f565b0aee90ef94fbfcfce0beadc10c0ccdd463 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 22 Sep 2025 08:03:25 +0900 Subject: [PATCH 265/457] Fix meson build with -Duuid=ossp when using version older than 0.60 The package for the UUID library may be named "uuid" or "ossp-uuid", and meson.build has been using a single call of dependency() with multiple names, something only supported since meson 0.60.0. The minimum version of meson supported by Postgres is 0.57.2 on HEAD, since f039c2244110, and 0.54 on stable branches down to 16. Author: Oreo Yang Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/OS3P301MB01656E6F91539770682B1E77E711A@OS3P301MB0165.JPNP301.PROD.OUTLOOK.COM Backpatch-through: 16 --- meson.build | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build index 973e8890bbd59..a15686cc4e30d 100644 --- a/meson.build +++ b/meson.build @@ -1579,7 +1579,10 @@ if uuidopt != 'none' elif uuidopt == 'ossp' # In upstream, the package and library is called just 'uuid', but many # distros change it to 'ossp-uuid'. - uuid = dependency('ossp-uuid', 'uuid', required: false) + uuid = dependency('ossp-uuid', required: false) + if not uuid.found() + uuid = dependency('uuid', required: false) + endif uuidfunc = 'uuid_export' uuidheader = 'uuid.h' From ed93b291c91fb2fe2e5c57913cc0dbff72fc0f08 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 22 Sep 2025 09:04:20 +0900 Subject: [PATCH 266/457] Revert "Fix meson build with -Duuid=ossp when using version older than 0.60" This reverts commit 5f565b0aee90 temporarily on v18. This branch is in a release freeze state until tagged. Let's re-add this commit once the release is out. The other branches are left untouched. Discussion: https://postgr.es/m/2775358.1758498584@sss.pgh.pa.us --- meson.build | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/meson.build b/meson.build index a15686cc4e30d..973e8890bbd59 100644 --- a/meson.build +++ b/meson.build @@ -1579,10 +1579,7 @@ if uuidopt != 'none' elif uuidopt == 'ossp' # In upstream, the package and library is called just 'uuid', but many # distros change it to 'ossp-uuid'. - uuid = dependency('ossp-uuid', required: false) - if not uuid.found() - uuid = dependency('uuid', required: false) - endif + uuid = dependency('ossp-uuid', 'uuid', required: false) uuidfunc = 'uuid_export' uuidheader = 'uuid.h' From 987e00fa990fc905fe8fab645a16f7a4be3d9126 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Mon, 22 Sep 2025 10:12:31 +0200 Subject: [PATCH 267/457] doc: Remove trailing whitespace in xref Remove stray whitespace in xref tag. This was found due to a regression in xmllint 2.15.0 which flagged this as an error, and at the time of this commit no fix for xmllint has shipped. Author: Erik Wienhold Discussion: https://postgr.es/m/f4c4661b-4e60-4c10-9336-768b7b55c084@ewie.name Backpatch-through: 17 --- doc/src/sgml/ref/pg_combinebackup.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/ref/pg_combinebackup.sgml b/doc/src/sgml/ref/pg_combinebackup.sgml index 330a598f7013e..9a6d201e0b8e3 100644 --- a/doc/src/sgml/ref/pg_combinebackup.sgml +++ b/doc/src/sgml/ref/pg_combinebackup.sgml @@ -314,7 +314,7 @@ PostgreSQL documentation To avoid this problem, taking a new full backup after changing the checksum - state of the cluster using is + state of the cluster using is recommended. Otherwise, you can disable and then optionally reenable checksums on the directory produced by pg_combinebackup in order to correct the problem. From ec8a75ae8debea768c6ebebdd3fc83d841aac5e7 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Mon, 22 Sep 2025 10:20:07 +0200 Subject: [PATCH 268/457] Revert "doc: Remove trailing whitespace in xref" This reverts commit 987e00fa990fc905fe8fab645a16f7a4be3d9126 due to me missing the release freeze. --- doc/src/sgml/ref/pg_combinebackup.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/ref/pg_combinebackup.sgml b/doc/src/sgml/ref/pg_combinebackup.sgml index 9a6d201e0b8e3..330a598f7013e 100644 --- a/doc/src/sgml/ref/pg_combinebackup.sgml +++ b/doc/src/sgml/ref/pg_combinebackup.sgml @@ -314,7 +314,7 @@ PostgreSQL documentation To avoid this problem, taking a new full backup after changing the checksum - state of the cluster using is + state of the cluster using is recommended. Otherwise, you can disable and then optionally reenable checksums on the directory produced by pg_combinebackup in order to correct the problem. From 9bbcec6030a2744d83311370ec92213fbd76e514 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 22 Sep 2025 14:18:56 +0200 Subject: [PATCH 269/457] Translation updates Source-Git-URL: https://git.postgresql.org/git/pgtranslation/messages.git Source-Git-Hash: 9e968777f6022b6347cd08ae6bdc324e49e622ec --- src/backend/po/de.po | 495 +- src/backend/po/es.po | 14835 ++++++++++++++---------- src/backend/po/ko.po | 15410 ++++++++++++++----------- src/backend/po/ru.po | 2419 ++-- src/backend/po/sv.po | 2629 ++--- src/bin/initdb/po/es.po | 368 +- src/bin/initdb/po/ko.po | 389 +- src/bin/initdb/po/ru.po | 10 +- src/bin/initdb/po/zh_CN.po | 4 +- src/bin/pg_amcheck/po/es.po | 210 +- src/bin/pg_amcheck/po/ko.po | 64 +- src/bin/pg_archivecleanup/po/es.po | 72 +- src/bin/pg_archivecleanup/po/ko.po | 69 +- src/bin/pg_archivecleanup/po/ru.po | 12 +- src/bin/pg_basebackup/po/es.po | 1056 +- src/bin/pg_basebackup/po/ko.po | 1060 +- src/bin/pg_basebackup/po/ru.po | 87 +- src/bin/pg_basebackup/po/sv.po | 4 +- src/bin/pg_checksums/po/es.po | 170 +- src/bin/pg_checksums/po/ko.po | 166 +- src/bin/pg_checksums/po/ru.po | 28 +- src/bin/pg_combinebackup/po/es.po | 347 +- src/bin/pg_combinebackup/po/ko.po | 274 +- src/bin/pg_combinebackup/po/ru.po | 29 +- src/bin/pg_config/po/es.po | 80 +- src/bin/pg_controldata/po/es.po | 24 +- src/bin/pg_controldata/po/ko.po | 176 +- src/bin/pg_controldata/po/ru.po | 16 +- src/bin/pg_ctl/po/es.po | 301 +- src/bin/pg_ctl/po/ko.po | 302 +- src/bin/pg_ctl/po/ru.po | 6 +- src/bin/pg_dump/po/de.po | 119 +- src/bin/pg_dump/po/es.po | 1515 ++- src/bin/pg_dump/po/fr.po | 1027 +- src/bin/pg_dump/po/ko.po | 1474 ++- src/bin/pg_dump/po/ru.po | 273 +- src/bin/pg_dump/po/sv.po | 137 +- src/bin/pg_resetwal/po/es.po | 289 +- src/bin/pg_resetwal/po/ko.po | 303 +- src/bin/pg_resetwal/po/ru.po | 18 +- src/bin/pg_rewind/po/es.po | 259 +- src/bin/pg_rewind/po/ko.po | 268 +- src/bin/pg_rewind/po/ru.po | 18 +- src/bin/pg_test_fsync/po/es.po | 86 +- src/bin/pg_test_timing/po/es.po | 2 +- src/bin/pg_upgrade/po/es.po | 807 +- src/bin/pg_upgrade/po/fr.po | 56 +- src/bin/pg_upgrade/po/ko.po | 802 +- src/bin/pg_upgrade/po/ru.po | 127 +- src/bin/pg_verifybackup/po/es.po | 646 +- src/bin/pg_verifybackup/po/ko.po | 650 +- src/bin/pg_verifybackup/po/ru.po | 665 +- src/bin/pg_waldump/po/es.po | 101 +- src/bin/pg_waldump/po/ko.po | 103 +- src/bin/pg_waldump/po/ru.po | 8 +- src/bin/pg_walsummary/po/es.po | 56 +- src/bin/psql/po/es.po | 4029 ++++--- src/bin/psql/po/fr.po | 759 +- src/bin/psql/po/ka.po | 761 +- src/bin/psql/po/ko.po | 3942 ++++--- src/bin/psql/po/ru.po | 399 +- src/bin/psql/po/sv.po | 4 +- src/bin/scripts/po/es.po | 288 +- src/bin/scripts/po/ko.po | 443 +- src/bin/scripts/po/ru.po | 21 +- src/interfaces/ecpg/ecpglib/po/es.po | 8 +- src/interfaces/ecpg/preproc/po/es.po | 274 +- src/interfaces/ecpg/preproc/po/ko.po | 274 +- src/interfaces/ecpg/preproc/po/ru.po | 10 +- src/interfaces/libpq/po/es.po | 1220 +- src/interfaces/libpq/po/fr.po | 304 +- src/interfaces/libpq/po/ko.po | 1221 +- src/interfaces/libpq/po/ru.po | 1253 +- src/interfaces/libpq/po/sv.po | 168 +- src/pl/plperl/po/es.po | 84 +- src/pl/plpgsql/src/po/es.po | 349 +- src/pl/plpython/po/es.po | 164 +- src/pl/tcl/po/es.po | 51 +- src/pl/tcl/po/ko.po | 51 +- src/pl/tcl/po/ru.po | 8 +- 80 files changed, 37994 insertions(+), 29012 deletions(-) diff --git a/src/backend/po/de.po b/src/backend/po/de.po index 58bd0f37a5f8a..e580fa5eb731c 100644 --- a/src/backend/po/de.po +++ b/src/backend/po/de.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-08-28 07:41+0000\n" -"PO-Revision-Date: 2025-08-28 19:48+0200\n" +"POT-Creation-Date: 2025-09-17 01:41+0000\n" +"PO-Revision-Date: 2025-09-17 06:58+0200\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -80,7 +80,7 @@ msgid "not recorded" msgstr "nicht aufgezeichnet" #: ../common/controldata_utils.c:93 ../common/controldata_utils.c:97 -#: commands/copyfrom.c:1879 commands/extension.c:3807 utils/adt/genfile.c:123 +#: 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" @@ -92,7 +92,7 @@ msgstr "konnte Datei »%s« nicht zum Lesen öffnen: %m" #: 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 -#: backup/walsummary.c:283 commands/extension.c:3817 libpq/hba.c:769 +#: 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 @@ -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:9324 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 @@ -198,8 +198,8 @@ msgstr "konnte Datei »%s« nicht schreiben: %m" #: 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:8710 -#: access/transam/xlog.c:8754 backup/basebackup_server.c:207 +#: access/transam/xlog.c:4333 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 @@ -227,10 +227,11 @@ msgstr "konnte Datei »%s« nicht fsyncen: %m" #: 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:234 utils/hash/dynahash.c:517 utils/hash/dynahash.c:617 +#: 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/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 @@ -324,7 +325,7 @@ msgstr "konnte Dateisystem für Datei »%s« nicht synchronisieren: %m" #: 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/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 @@ -925,7 +926,7 @@ msgid "could not open parent table of index \"%s\"" msgstr "konnte Basistabelle von Index »%s« nicht öffnen" #: access/brin/brin.c:1472 access/brin/brin.c:1568 access/gin/ginfast.c:1085 -#: parser/parse_utilcmd.c:2455 +#: parser/parse_utilcmd.c:2454 #, c-format msgid "index \"%s\" is not valid" msgstr "Index »%s« ist nicht gültig" @@ -1400,7 +1401,7 @@ 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:9313 +#: access/transam/xlog.c:4312 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 @@ -1710,7 +1711,7 @@ msgid "This may be because of a non-immutable index expression." msgstr "Das kann daran liegen, dass der Indexausdruck nicht »immutable« ist." #: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:611 -#: parser/parse_utilcmd.c:2505 +#: parser/parse_utilcmd.c:2504 #, c-format msgid "index \"%s\" is not a btree" msgstr "Index »%s« ist kein B-Tree" @@ -1755,7 +1756,7 @@ msgid "operator family \"%s\" of access method %s is missing support function fo msgstr "in Operatorfamilie »%s« für Zugriffsmethode %s fehlt Support-Funktion für Typen %s und %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 "kann Relation »%s« nicht öffnen" @@ -2028,65 +2029,65 @@ msgstr "Bestehender Resource-Manager mit ID %d hat den gleichen Namen." msgid "registered custom resource manager \"%s\" with ID %d" msgstr "Custom-Resource-Manager »%s« mit ID %d wurde registriert" -#: access/transam/slru.c:360 +#: access/transam/slru.c:361 #, c-format msgid "\"%s\" must be a multiple of %d." msgstr "»%s« muss ein Vielfaches von %d sein." -#: access/transam/slru.c:832 +#: access/transam/slru.c:833 #, c-format msgid "file \"%s\" doesn't exist, reading as zeroes" msgstr "Datei »%s« existiert nicht, wird als Nullen eingelesen" -#: 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 "konnte auf den Status von Transaktion %u nicht zugreifen" -#: access/transam/slru.c:1062 +#: access/transam/slru.c:1063 #, c-format msgid "Could not open file \"%s\": %m." msgstr "Konnte Datei »%s« nicht öffnen: %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 "Konnte Positionszeiger in Datei »%s« nicht auf %d setzen: %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 "Konnte nicht aus Datei »%s« bei Position %d lesen: %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 "Konnte nicht aus Datei »%s« bei Position %d lesen: zu wenige Bytes gelesen." -#: access/transam/slru.c:1088 +#: access/transam/slru.c:1089 #, c-format msgid "Could not write to file \"%s\" at offset %d: %m." msgstr "Konnte nicht in Datei »%s« bei Position %d schreiben: %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 "Konnte nicht in Datei »%s« bei Position %d schreiben: zu wenige Bytes geschrieben." -#: access/transam/slru.c:1100 +#: access/transam/slru.c:1101 #, c-format msgid "Could not fsync file \"%s\": %m." msgstr "Konnte Datei »%s« nicht fsyncen: %m." -#: access/transam/slru.c:1107 +#: access/transam/slru.c:1108 #, c-format msgid "Could not close file \"%s\": %m." msgstr "Konnte Datei »%s« nicht schließen: %m." -#: access/transam/slru.c:1433 +#: access/transam/slru.c:1434 #, c-format msgid "could not truncate directory \"%s\": apparent wraparound" msgstr "konnte Verzeichnis »%s« nicht leeren: anscheinender Überlauf" @@ -2604,13 +2605,13 @@ 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:4696 -#: commands/tablespace.c:1210 commands/user.c:2542 commands/variable.c:72 +#: 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 #, c-format msgid "List syntax is invalid." msgstr "Die Listensyntax ist ungültig." -#: access/transam/xlog.c:4772 commands/user.c:2558 commands/variable.c:173 +#: 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\"." @@ -2778,103 +2779,103 @@ msgstr "Online-Sicherung wurde storniert, Wiederherstellung kann nicht fortgeset 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:8460 +#: 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:8489 +#: 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:8759 +#: 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:8764 +#: 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:8841 access/transam/xlog.c:9177 +#: 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:8842 access/transam/xlog.c:9178 +#: 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:8847 +#: 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:8968 +#: 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:8970 access/transam/xlog.c:9266 +#: 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:9050 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:9057 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:9216 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:9217 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:9264 +#: 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:9380 +#: 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:9394 +#: 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:9396 +#: 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:9403 +#: 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:9407 +#: 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:9446 +#: 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" @@ -4197,8 +4198,8 @@ msgstr "Klausel IN SCHEMA kann nicht verwendet werden, wenn GRANT/REVOKE ON LARG #: 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 +#: 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 #: utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format @@ -4677,7 +4678,7 @@ msgstr "nur Superuser können %s() aufrufen" msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() kann nur mit Systemkatalogen verwendet werden" -#: 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 "Index »%s« gehört nicht zu Tabelle »%s«" @@ -4942,7 +4943,7 @@ 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: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 "widersprüchliche NO INHERIT-Deklaration für Not-Null-Constraint für Spalte »%s«" @@ -5044,7 +5045,7 @@ msgstr "Tabelle »%s« verweist auf »%s«." msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "Leeren Sie die Tabelle »%s« gleichzeitig oder verwenden Sie 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 "mehrere Primärschlüssel für Tabelle »%s« nicht erlaubt" @@ -6040,12 +6041,12 @@ msgstr "Konversion »%s« existiert bereits" msgid "default conversion for %s to %s already exists" msgstr "Standardumwandlung von %s nach %s existiert bereits" -#: 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 ist schon Mitglied der Erweiterung »%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 ist kein Mitglied der Erweiterung »%s«" @@ -6596,7 +6597,7 @@ msgstr "Parameter »parallel« muss SAFE, RESTRICTED oder UNSAFE sein" msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE" msgstr "Parameter »%s« muss READ_ONLY, SHAREABLE oder READ_WRITE sein" -#: 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 "Ereignistrigger »%s« existiert bereits" @@ -6706,7 +6707,7 @@ msgstr "Zugriffsmethode »%s« existiert nicht" msgid "handler function is not specified" msgstr "keine Handler-Funktion angegeben" -#: commands/amcmds.c:264 commands/event_trigger.c:200 +#: 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 @@ -7721,7 +7722,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:300 +#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -8266,79 +8267,79 @@ msgstr "Operatorfamilie »%s« existiert nicht für Zugriffsmethode »%s«, wird msgid "publication \"%s\" does not exist, skipping" msgstr "Publikation »%s« existiert nicht, wird übersprungen" -#: commands/event_trigger.c:137 +#: commands/event_trigger.c:141 #, c-format msgid "permission denied to create event trigger \"%s\"" msgstr "keine Berechtigung, um Ereignistrigger »%s« zu erzeugen" -#: commands/event_trigger.c:139 +#: commands/event_trigger.c:143 #, c-format msgid "Must be superuser to create an event trigger." msgstr "Nur Superuser können Ereignistrigger anlegen." -#: commands/event_trigger.c:149 +#: commands/event_trigger.c:153 #, c-format msgid "unrecognized event name \"%s\"" msgstr "unbekannter Ereignisname »%s«" -#: commands/event_trigger.c:166 +#: commands/event_trigger.c:170 #, c-format msgid "unrecognized filter variable \"%s\"" msgstr "unbekannte Filtervariable »%s«" -#: commands/event_trigger.c:181 +#: commands/event_trigger.c:185 #, c-format msgid "tag filtering is not supported for login event triggers" msgstr "Tag-Filtern wird für Login-Ereignistrigger nicht unterstützt" -#: commands/event_trigger.c:224 +#: commands/event_trigger.c:228 #, c-format msgid "filter value \"%s\" not recognized for filter variable \"%s\"" msgstr "Filterwert »%s« nicht erkannt für Filtervariable »%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 "Ereignistrigger für %s werden nicht unterstützt" -#: commands/event_trigger.c:265 +#: commands/event_trigger.c:269 #, c-format msgid "filter variable \"%s\" specified more than once" msgstr "Filtervariable »%s« mehrmals angegeben" -#: 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 "Ereignistrigger »%s« existiert nicht" -#: commands/event_trigger.c:522 +#: commands/event_trigger.c:526 #, c-format msgid "event trigger with OID %u does not exist" msgstr "Ereignistrigger mit OID %u existiert nicht" -#: commands/event_trigger.c:552 +#: commands/event_trigger.c:556 #, c-format msgid "permission denied to change owner of event trigger \"%s\"" msgstr "keine Berechtigung, um Eigentümer des Ereignistriggers »%s« zu ändern" -#: commands/event_trigger.c:554 +#: commands/event_trigger.c:558 #, c-format msgid "The owner of an event trigger must be a superuser." msgstr "Der Eigentümer eines Ereignistriggers muss ein Superuser sein." -#: 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 kann nur in einer sql_drop-Ereignistriggerfunktion aufgerufen werden" -#: 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 kann nur in einer table_rewrite-Ereignistriggerfunktion aufgerufen werden" -#: 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 kann nur in einer Ereignistriggerfunktion aufgerufen werden" @@ -8364,7 +8365,7 @@ msgstr "EXPLAIN-Option %s erfordert ANALYZE" msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" msgstr "EXPLAIN-Optionen ANALYZE und GENERIC_PLAN können nicht zusammen verwendet werden" -#: 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 "Erweiterung »%s« existiert nicht" @@ -8532,7 +8533,7 @@ msgstr "ungültiges Zeichen in Schema von Erweiterung »%s«: darf keins aus »% msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\"" msgstr "Erweiterung »%s« hat keinen Aktualisierungspfad von Version »%s« auf Version »%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 "die zu installierende Version muss angegeben werden" @@ -8587,77 +8588,77 @@ msgstr "geschachteltes CREATE EXTENSION wird nicht unterstützt" msgid "cannot drop extension \"%s\" because it is being modified" msgstr "Erweiterung »%s« kann nicht gelöscht werden, weil sie gerade geändert wird" -#: 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 kann nur von einem SQL-Skript aufgerufen werden, das von CREATE EXTENSION ausgeführt wird" -#: commands/extension.c:2677 +#: commands/extension.c:2701 #, c-format msgid "OID %u does not refer to a table" msgstr "OID %u bezieht sich nicht auf eine Tabelle" -#: commands/extension.c:2682 +#: commands/extension.c:2706 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "Tabelle »%s« ist kein Mitglied der anzulegenden Erweiterung" -#: 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 "kann Erweiterung »%s« nicht in Schema »%s« verschieben, weil die Erweiterung das Schema enthält" -#: 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 "Erweiterung »%s« unterstützt SET SCHEMA nicht" -#: commands/extension.c:3179 +#: commands/extension.c:3203 #, c-format msgid "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" msgstr "SET SCHEMA für Erweiterung »%s« ist nicht möglich, weil andere Erweiterungen es verhindern" -#: commands/extension.c:3181 +#: commands/extension.c:3205 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "Erweiterung »%s« verhindert Verlagerung von Erweiterung »%s«." -#: commands/extension.c:3218 +#: commands/extension.c:3242 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "%s ist nicht im Schema der Erweiterung (»%s«)" -#: commands/extension.c:3279 +#: commands/extension.c:3303 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "geschachteltes ALTER EXTENSION wird nicht unterstützt" -#: commands/extension.c:3368 +#: commands/extension.c:3392 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "Version »%s« von Erweiterung »%s« ist bereits installiert" -#: commands/extension.c:3579 +#: commands/extension.c:3603 #, c-format msgid "cannot add an object of this type to an extension" msgstr "ein Objekt dieses Typs kann nicht zu einer Erweiterung hinzugefügt werden" -#: 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 "kann Schema »%s« nicht zu Erweiterung »%s« hinzufügen, weil das Schema die Erweiterung enthält" -#: 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 "konnte Multirange-Typ für Datentyp %s nicht finden" -#: commands/extension.c:3801 +#: commands/extension.c:3825 #, c-format msgid "file \"%s\" is too large" msgstr "Datei »%s« ist zu groß" -#: commands/extension.c:3894 utils/fmgr/dfmgr.c:625 +#: commands/extension.c:3918 utils/fmgr/dfmgr.c:625 #, c-format msgid "component in parameter \"%s\" is not an absolute path" msgstr "eine Komponente im Parameter »%s« ist kein absoluter Pfad" @@ -9280,13 +9281,13 @@ msgstr "Tabelle »%s« enthält Partitionen, die Fremdtabellen sind." msgid "functions in index predicate must be marked IMMUTABLE" msgstr "Funktionen im Indexprädikat müssen als IMMUTABLE markiert sein" -#: 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 "Spalte »%s«, die im Schlüssel verwendet wird, existiert nicht" -#: 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 "in eingeschlossenen Spalten werden keine Ausdrücke unterstützt" @@ -9322,7 +9323,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:19959 commands/typecmds.c:812 -#: parser/parse_expr.c:2805 parser/parse_type.c:568 parser/parse_utilcmd.c:4065 +#: parser/parse_expr.c:2805 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" @@ -10301,7 +10302,7 @@ msgstr "kann Eigentümer einer Identitätssequenz nicht ändern" msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "Sequenz »%s« ist mit Tabelle »%s« verknüpft." -#: 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 "in CREATE STATISTICS ist nur eine einzelne Relation erlaubt" @@ -10696,7 +10697,7 @@ msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "Verwenden Sie DROP MATERIALIZED VIEW, um eine materialisierte Sicht zu löschen." #: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 -#: parser/parse_utilcmd.c:2429 +#: parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" msgstr "Index »%s« existiert nicht" @@ -10835,8 +10836,8 @@ msgstr "von partitionierter Tabelle »%s« kann nicht geerbt werden" msgid "cannot inherit from partition \"%s\"" msgstr "von Partition »%s« kann nicht geerbt werden" -#: 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 "geerbte Relation »%s« ist keine Tabelle oder Fremdtabelle" @@ -10858,8 +10859,8 @@ msgstr "von temporärer Relation einer anderen Sitzung kann nicht geerbt werden" #: 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 +#: 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 "kann Verweis auf ganze Zeile der Tabelle nicht umwandeln" @@ -10869,7 +10870,7 @@ msgstr "kann Verweis auf ganze Zeile der Tabelle nicht umwandeln" msgid "Generation expression for column \"%s\" contains a whole-row reference to table \"%s\"." msgstr "Generierungsausdruck für Spalte »%s« enthält einen Verweis auf die ganze Zeile der Tabelle »%s«." -#: 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 "Constraint »%s« enthält einen Verweis auf die ganze Zeile der Tabelle »%s«." @@ -12649,7 +12650,7 @@ 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:3501 +#: executor/nodeModifyTable.c:3502 #, 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." @@ -13145,50 +13146,50 @@ msgstr "nur Superuser können Typen ändern" msgid "%s is not a base type" msgstr "%s ist kein Basistyp" -#: commands/user.c:201 +#: commands/user.c:200 #, c-format msgid "SYSID can no longer be specified" msgstr "SYSID kann nicht mehr angegeben werden" -#: 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 "keine Berechtigung, um Rolle zu erzeugen" -#: commands/user.c:320 +#: commands/user.c:319 #, c-format msgid "Only roles with the %s attribute may create roles." msgstr "Nur Rollen mit dem %s-Attribut können Rollen erzeugen." -#: 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 "Nur Rollen mit dem %s-Attribut können Rollen mit dem %s-Attribut erzeugen." -#: commands/user.c:355 commands/user.c:1386 commands/user.c:1393 gram.y:17473 +#: 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 "Rollenname »%s« ist reserviert" -#: 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 "Rollennamen, die mit »pg_« anfangen, sind reserviert." -#: commands/user.c:378 commands/user.c:1410 +#: commands/user.c:377 commands/user.c:1410 #, c-format msgid "role \"%s\" already exists" msgstr "Rolle »%s« existiert bereits" -#: 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 "leere Zeichenkette ist kein gültiges Passwort, Passwort wird entfernt" -#: commands/user.c:469 +#: commands/user.c:468 #, c-format msgid "pg_authid OID value not set when in binary upgrade mode" msgstr "OID-Wert für pg_auth ist im Binary-Upgrade-Modus nicht gesetzt" @@ -13390,77 +13391,77 @@ msgstr "%s-Option kann nicht an den eigenen Grantor gegeben werden" msgid "role \"%s\" has already been granted membership in role \"%s\" by role \"%s\"" msgstr "Rolle »%s« wurde schon Mitgliedschaft in Rolle »%s« durch Rolle »%s« gewährt" -#: 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 "Rolle »%s« wurde keine Mitgliedschaft in Rolle »%s« durch Rolle »%s« gewährt" -#: commands/user.c:2137 +#: commands/user.c:2126 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "Rolle »%s« kann keine expliziten Mitglieder haben" -#: 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 "keine Berechtigung, um Rolle »%s« zu gewähren" -#: 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 "Nur Rollen mit dem %s-Attribut können Rollen mit dem %s-Attribut gewähren." -#: 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 "keine Berechtigung, um Rolle »%s« zu entziehen" -#: 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 "Nur Rollen mit dem %s-Attribut können Rollen mit dem %s-Attribut entziehen." -#: 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 "Nur Rollen mit der %s-Option für Rolle »%s« können diese Rolle gewähren." -#: 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 "Nur Rollen mit der %s-Option für Rolle »%s« können diese Rolle entziehen." -#: 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 "keine Berechtigung, um Privilegien als Rolle »%s« zu gewähren" -#: 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 "Nur Rollen mit den Privilegien der Rolle »%s« können Privilegien als diese Rolle gewähren." -#: commands/user.c:2271 +#: commands/user.c:2260 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "Der Grantor muss die %s-Option für Rolle »%s« haben." -#: commands/user.c:2279 +#: commands/user.c:2268 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "keine Berechtigung, um von Rolle »%s« gewährte Privilegien zu entziehen" -#: 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 "Nur Rollen mit den Privilegien der Rolle »%s« können von dieser Rolle gewährte Privilegien entziehen." -#: 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 "abhängige Privilegien existieren" -#: 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 "Verwenden Sie CASCADE, um diese auch zu entziehen." @@ -14069,139 +14070,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:1066 +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "kann Sequenz »%s« nicht ändern" -#: executor/execMain.c:1072 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "kann TOAST-Relation »%s« nicht ändern" -#: executor/execMain.c:1091 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "kann materialisierte Sicht »%s« nicht ändern" -#: executor/execMain.c:1103 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "kann nicht in Fremdtabelle »%s« einfügen" -#: executor/execMain.c:1109 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "Fremdtabelle »%s« erlaubt kein Einfügen" -#: executor/execMain.c:1116 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "kann Fremdtabelle »%s« nicht aktualisieren" -#: executor/execMain.c:1122 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "Fremdtabelle »%s« erlaubt kein Aktualisieren" -#: executor/execMain.c:1129 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "kann nicht aus Fremdtabelle »%s« löschen" -#: executor/execMain.c:1135 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "Fremdtabelle »%s« erlaubt kein Löschen" -#: executor/execMain.c:1146 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "kann Relation »%s« nicht ändern" -#: executor/execMain.c:1173 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "kann Zeilen in Sequenz »%s« nicht sperren" -#: executor/execMain.c:1180 +#: executor/execMain.c:1199 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "kann Zeilen in TOAST-Relation »%s« nicht sperren" -#: executor/execMain.c:1187 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "kann Zeilen in Sicht »%s« nicht sperren" -#: executor/execMain.c:1195 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "kann Zeilen in materialisierter Sicht »%s« nicht sperren" -#: executor/execMain.c:1204 executor/execMain.c:2836 +#: executor/execMain.c:1223 executor/execMain.c:2855 #: 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:1210 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "kann Zeilen in Relation »%s« nicht sperren" -#: executor/execMain.c:1933 +#: executor/execMain.c:1952 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "neue Zeile für Relation »%s« verletzt Partitions-Constraint" -#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 -#: executor/execMain.c:2293 +#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 +#: executor/execMain.c:2312 #, c-format msgid "Failing row contains %s." msgstr "Fehlgeschlagene Zeile enthält %s." -#: executor/execMain.c:2045 +#: executor/execMain.c:2064 #, 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:2182 +#: executor/execMain.c:2201 #, 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:2291 +#: executor/execMain.c:2310 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "neue Zeile verletzt Check-Option für Sicht »%s«" -#: executor/execMain.c:2301 +#: executor/execMain.c:2320 #, 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:2306 +#: executor/execMain.c:2325 #, 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:2314 +#: executor/execMain.c:2333 #, 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:2319 +#: executor/execMain.c:2338 #, 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:2326 +#: executor/execMain.c:2345 #, 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:2331 +#: executor/execMain.c:2350 #, 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«" @@ -14518,7 +14519,7 @@ 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:3507 +#: executor/nodeModifyTable.c:3508 #, c-format msgid "%s command cannot affect row a second time" msgstr "Befehl in %s kann eine Zeile nicht ein zweites Mal ändern" @@ -14528,12 +14529,12 @@ 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:3500 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 #, 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:3509 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 #, 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." @@ -14553,8 +14554,8 @@ msgstr "Parameter von TABLESAMPLE darf nicht NULL sein" msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "Parameter von TABLESAMPLE REPEATABLE darf nicht NULL sein" -#: 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 "als Ausdruck verwendete Unteranfrage ergab mehr als eine Zeile" @@ -14702,7 +14703,7 @@ 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 -#: optimizer/util/plancat.c:538 +#: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" msgstr "Zugriff auf Nicht-System-Fremdtabelle ist beschränkt" @@ -14841,7 +14842,7 @@ msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER wird nicht unterstützt" msgid "duplicate trigger events specified" msgstr "mehrere Trigger-Ereignisse angegeben" -#: 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 "Constraint, der als INITIALLY DEFERRED deklariert wurde, muss DEFERRABLE sein" @@ -17489,32 +17490,32 @@ 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:4966 +#: optimizer/util/clauses.c:4968 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "SQL-Funktion »%s« beim Inlining" -#: optimizer/util/plancat.c:153 +#: optimizer/util/plancat.c:154 #, c-format msgid "cannot access temporary or unlogged relations during recovery" msgstr "während der Wiederherstellung kann nicht auf temporäre oder ungeloggte Tabellen zugegriffen werden" -#: optimizer/util/plancat.c:770 +#: optimizer/util/plancat.c:771 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "Inferenzangaben mit Unique-Index über die gesamte Zeile werden nicht unterstützt" -#: optimizer/util/plancat.c:787 +#: optimizer/util/plancat.c:788 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "Constraint in der ON-CONFLICT-Klausel hat keinen zugehörigen Index" -#: optimizer/util/plancat.c:837 +#: optimizer/util/plancat.c:838 #, c-format msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints" msgstr "ON CONFLICT DO UPDATE nicht unterstützt mit Exclusion-Constraints" -#: optimizer/util/plancat.c:954 +#: optimizer/util/plancat.c:955 #, c-format msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification" msgstr "es gibt keinen Unique-Constraint oder Exclusion-Constraint, der auf die ON-CONFLICT-Angabe passt" @@ -19867,259 +19868,259 @@ msgstr "Exclusion-Constraints auf Fremdtabellen werden nicht unterstützt" msgid "relation \"%s\" is invalid in LIKE clause" msgstr "Relation »%s« ist ungültig in der LIKE-Klausel" -#: 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 "Index »%s« enthält einen Verweis auf die ganze Zeile der Tabelle." -#: parser/parse_utilcmd.c:2420 +#: parser/parse_utilcmd.c:2419 #, c-format msgid "cannot use an existing index in CREATE TABLE" msgstr "bestehender Index kann nicht in CREATE TABLE verwendet werden" -#: parser/parse_utilcmd.c:2440 +#: parser/parse_utilcmd.c:2439 #, c-format msgid "index \"%s\" is already associated with a constraint" msgstr "Index »%s« gehört bereits zu einem Constraint" -#: parser/parse_utilcmd.c:2466 +#: parser/parse_utilcmd.c:2465 #, c-format msgid "\"%s\" is not a unique index" msgstr "»%s« ist kein Unique Index" -#: 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 "Ein Primärschlüssel oder Unique-Constraint kann nicht mit einem solchen Index erzeugt werden." -#: parser/parse_utilcmd.c:2473 +#: parser/parse_utilcmd.c:2472 #, c-format msgid "index \"%s\" contains expressions" msgstr "Index »%s« enthält Ausdrücke" -#: parser/parse_utilcmd.c:2480 +#: parser/parse_utilcmd.c:2479 #, c-format msgid "\"%s\" is a partial index" msgstr "»%s« ist ein partieller Index" -#: parser/parse_utilcmd.c:2492 +#: parser/parse_utilcmd.c:2491 #, c-format msgid "\"%s\" is a deferrable index" msgstr "»%s« ist ein aufschiebbarer Index" -#: parser/parse_utilcmd.c:2493 +#: parser/parse_utilcmd.c:2492 #, c-format msgid "Cannot create a non-deferrable constraint using a deferrable index." msgstr "Ein nicht aufschiebbarer Constraint kann nicht mit einem aufschiebbaren Index erzeugt werden." -#: 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 "Index »%s« Spalte Nummer %d hat nicht das Standardsortierverhalten" -#: parser/parse_utilcmd.c:2748 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "Spalte »%s« erscheint zweimal im Primärschlüssel-Constraint" -#: parser/parse_utilcmd.c:2754 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "Spalte »%s« erscheint zweimal im Unique-Constraint" -#: 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 "Spalte »%s« in WITHOUT OVERLAPS ist kein Range- oder Multirange-Typ" -#: parser/parse_utilcmd.c:2827 +#: parser/parse_utilcmd.c:2826 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" msgstr "Constraints, die WITHOUT OVERLAPS verwenden, benötigen mindestens zwei Spalten" -#: 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 "Indexausdrücke und -prädikate können nur auf die zu indizierende Tabelle verweisen" -#: parser/parse_utilcmd.c:3196 +#: parser/parse_utilcmd.c:3195 #, c-format msgid "statistics expressions can refer only to the table being referenced" msgstr "Statistikausdrücke können nur auf die referenzierte Tabelle verweisen" -#: parser/parse_utilcmd.c:3239 +#: parser/parse_utilcmd.c:3238 #, c-format msgid "rules on materialized views are not supported" msgstr "Regeln für materialisierte Sichten werden nicht unterstützt" -#: parser/parse_utilcmd.c:3299 +#: parser/parse_utilcmd.c:3298 #, c-format msgid "rule WHERE condition cannot contain references to other relations" msgstr "WHERE-Bedingung einer Regel kann keine Verweise auf andere Relationen enthalten" -#: 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 "Regeln mit WHERE-Bedingungen können als Aktion nur SELECT, INSERT, UPDATE oder DELETE haben" -#: parser/parse_utilcmd.c:3389 parser/parse_utilcmd.c:3490 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 #: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "UNION/INTERSECTION/EXCEPT mit Bedingung sind nicht implementiert" -#: parser/parse_utilcmd.c:3407 +#: parser/parse_utilcmd.c:3406 #, c-format msgid "ON SELECT rule cannot use OLD" msgstr "ON-SELECT-Regel kann nicht OLD verwenden" -#: parser/parse_utilcmd.c:3411 +#: parser/parse_utilcmd.c:3410 #, c-format msgid "ON SELECT rule cannot use NEW" msgstr "ON-SELECT-Regel kann nicht NEW verwenden" -#: parser/parse_utilcmd.c:3420 +#: parser/parse_utilcmd.c:3419 #, c-format msgid "ON INSERT rule cannot use OLD" msgstr "ON-INSERT-Regel kann nicht OLD verwenden" -#: parser/parse_utilcmd.c:3426 +#: parser/parse_utilcmd.c:3425 #, c-format msgid "ON DELETE rule cannot use NEW" msgstr "ON-DELETE-Regel kann nicht NEW verwenden" -#: parser/parse_utilcmd.c:3454 +#: parser/parse_utilcmd.c:3453 #, c-format msgid "cannot refer to OLD within WITH query" msgstr "in WITH-Anfrage kann nicht auf OLD verweisen werden" -#: parser/parse_utilcmd.c:3461 +#: parser/parse_utilcmd.c:3460 #, c-format msgid "cannot refer to NEW within WITH query" msgstr "in WITH-Anfrage kann nicht auf NEW verwiesen werden" -#: parser/parse_utilcmd.c:3919 +#: parser/parse_utilcmd.c:3918 #, c-format msgid "misplaced DEFERRABLE clause" msgstr "falsch platzierte DEFERRABLE-Klausel" -#: 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 "mehrere DEFERRABLE/NOT DEFERRABLE-Klauseln sind nicht erlaubt" -#: parser/parse_utilcmd.c:3934 +#: parser/parse_utilcmd.c:3933 #, c-format msgid "misplaced NOT DEFERRABLE clause" msgstr "falsch platzierte NOT DEFERRABLE-Klausel" -#: parser/parse_utilcmd.c:3955 +#: parser/parse_utilcmd.c:3954 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "falsch platzierte INITIALLY DEFERRED-Klausel" -#: 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 "mehrere INITIALLY IMMEDIATE/DEFERRED-Klauseln sind nicht erlaubt" -#: parser/parse_utilcmd.c:3981 +#: parser/parse_utilcmd.c:3980 #, c-format msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "falsch platzierte INITIALLY IMMEDIATE-Klausel" -#: parser/parse_utilcmd.c:3998 +#: parser/parse_utilcmd.c:3997 #, c-format msgid "misplaced ENFORCED clause" msgstr "falsch platzierte ENFORCED-Klausel" -#: 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 "mehrere ENFORCED/NOT ENFORCED-Klauseln sind nicht erlaubt" -#: parser/parse_utilcmd.c:4015 +#: parser/parse_utilcmd.c:4014 #, c-format msgid "misplaced NOT ENFORCED clause" msgstr "falsch platzierte NOT ENFORCED-Klausel" -#: 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 "CREATE gibt ein Schema an (%s) welches nicht gleich dem zu erzeugenden Schema ist (%s)" -#: parser/parse_utilcmd.c:4248 +#: parser/parse_utilcmd.c:4247 #, c-format msgid "\"%s\" is not a partitioned table" msgstr "»%s« ist keine partitionierte Tabelle" -#: parser/parse_utilcmd.c:4255 +#: parser/parse_utilcmd.c:4254 #, c-format msgid "table \"%s\" is not partitioned" msgstr "Tabelle »%s« ist nicht partitioniert" -#: parser/parse_utilcmd.c:4262 +#: parser/parse_utilcmd.c:4261 #, c-format msgid "index \"%s\" is not partitioned" msgstr "Index »%s« ist nicht partitioniert" -#: parser/parse_utilcmd.c:4302 +#: parser/parse_utilcmd.c:4301 #, c-format msgid "a hash-partitioned table may not have a default partition" msgstr "eine hashpartitionierte Tabelle kann keine Standardpartition haben" -#: parser/parse_utilcmd.c:4319 +#: parser/parse_utilcmd.c:4318 #, c-format msgid "invalid bound specification for a hash partition" msgstr "ungültige Begrenzungsangabe für eine Hash-Partition" -#: 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 "Modulus für Hashpartition muss eine ganze Zahl größer als null sein" -#: 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 "Rest für Hashpartition muss kleiner als Modulus sein" -#: parser/parse_utilcmd.c:4345 +#: parser/parse_utilcmd.c:4344 #, c-format msgid "invalid bound specification for a list partition" msgstr "ungültige Begrenzungsangabe für eine Listenpartition" -#: parser/parse_utilcmd.c:4398 +#: parser/parse_utilcmd.c:4397 #, c-format msgid "invalid bound specification for a range partition" msgstr "ungültige Begrenzungsangabe für eine Bereichspartition" -#: parser/parse_utilcmd.c:4404 +#: parser/parse_utilcmd.c:4403 #, c-format msgid "FROM must specify exactly one value per partitioning column" msgstr "FROM muss genau einen Wert pro Partitionierungsspalte angeben" -#: parser/parse_utilcmd.c:4408 +#: parser/parse_utilcmd.c:4407 #, c-format msgid "TO must specify exactly one value per partitioning column" msgstr "TO muss genau einen Wert pro Partitionierungsspalte angeben" -#: parser/parse_utilcmd.c:4522 +#: parser/parse_utilcmd.c:4521 #, c-format msgid "cannot specify NULL in range bound" msgstr "NULL kann nicht in der Bereichsgrenze angegeben werden" -#: parser/parse_utilcmd.c:4571 +#: parser/parse_utilcmd.c:4570 #, 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:4578 +#: parser/parse_utilcmd.c:4577 #, 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:4621 +#: parser/parse_utilcmd.c:4620 #, 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" @@ -21895,7 +21896,7 @@ msgstr "Replikations-Slots können nicht nebenläufig synchronisiert werden" msgid "slot sync worker started" msgstr "Slot-Sync-Arbeitsprozess gestartet" -#: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 +#: replication/logical/slotsync.c:1484 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" @@ -25165,6 +25166,11 @@ msgstr "keine Berechtigung, um Befehl %s auszuführen" msgid "Only roles with privileges of the \"%s\" role may execute this command." msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können diesen Befehl ausführen." +#: tcop/utility.c:1886 +#, c-format +msgid "CREATE STATISTICS only supports relation names in the FROM clause" +msgstr "CREATE STATISTICS unterstützt nur Relationsnamen in der FROM-Klausel" + #: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format msgid "multiple DictFile parameters" @@ -25485,7 +25491,7 @@ msgstr "konnte temporäre Statistikdatei »%s« nicht schließen: %m" msgid "could not open statistics file \"%s\": %m" msgstr "konnte Statistikdatei »%s« nicht öffnen: %m" -#: utils/activity/pgstat.c:2021 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "verfälschte Statistikdatei »%s«" @@ -25495,6 +25501,11 @@ msgstr "verfälschte Statistikdatei »%s«" msgid "function call to dropped function" msgstr "Funktionsaufruf einer gelöschten Funktion" +#: utils/activity/pgstat_shmem.c:536 +#, c-format +msgid "Failed while allocating entry %u/%u/%." +msgstr "Fehlgeschlagen beim Anlegen von Eintrag %u/%u/%." + #: utils/activity/pgstat_xact.c:366 #, c-format msgid "resetting existing statistics for kind %s, db=%u, oid=%" @@ -27395,12 +27406,12 @@ msgstr "nichtdeterministische Sortierfolgen werden von ILIKE nicht unterstützt" msgid "LIKE pattern must not end with escape character" msgstr "LIKE-Muster darf nicht mit Escape-Zeichen enden" -#: 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 "ungültige ESCAPE-Zeichenkette" -#: 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 "ESCAPE-Zeichenkette muss null oder ein Zeichen lang sein." @@ -28046,7 +28057,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:2022 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 #, c-format msgid "regular expression failed: %s" msgstr "regulärer Ausdruck fehlgeschlagen: %s" @@ -28061,33 +28072,33 @@ msgstr "ungültige Option für regulären Ausdruck: »%.*s«" msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly." msgstr "Wenn Sie regexp_replace() mit einem Startparameter verwenden wollten, wandeln Sie das vierte Argument explizit in integer um." -#: 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 "ungültiger Wert für Parameter »%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 "SQL regulärer Ausdruck darf nicht mehr als zwei Escape-Double-Quote-Separatoren enthalten" #. 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 unterstützt die »Global«-Option nicht" -#: utils/adt/regexp.c:1338 +#: utils/adt/regexp.c:1381 #, c-format msgid "Use the regexp_matches function instead." msgstr "Verwenden Sie stattdessen die Funktion regexp_matches." -#: utils/adt/regexp.c:1526 +#: utils/adt/regexp.c:1569 #, c-format msgid "too many regular expression matches" msgstr "zu viele Treffer für regulären Ausdruck" diff --git a/src/backend/po/es.po b/src/backend/po/es.po index e2593b522719a..8a10392f4c6d0 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-02-16 19:41+0000\n" -"PO-Revision-Date: 2025-02-17 15:18+0100\n" +"POT-Creation-Date: 2025-09-20 09:41+0000\n" +"PO-Revision-Date: 2025-09-22 11:54+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -138,34 +138,34 @@ msgid "not recorded" msgstr "no registrado" #: ../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 "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:3477 -#: access/transam/xlog.c:4341 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:5113 -#: 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: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: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 +#: 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 "no se pudo leer el archivo «%s»: %m" #: ../common/controldata_utils.c:116 ../common/controldata_utils.c:119 -#: access/transam/xlog.c:3482 access/transam/xlog.c:4346 -#: 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:2489 +#: replication/slot.c:2530 replication/walsender.c:634 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -176,17 +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:1784 access/transam/xlog.c:3323 -#: access/transam/xlog.c:3517 access/transam/xlog.c:3522 -#: access/transam/xlog.c:3658 access/transam/xlog.c:4311 -#: access/transam/xlog.c:5246 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:5165 -#: 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/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:2373 replication/slot.c:2537 replication/walsender.c:644 +#: 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" @@ -211,105 +212,107 @@ msgstr "" "directorio de datos." #: ../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:1309 access/transam/xlog.c:3230 -#: access/transam/xlog.c:3393 access/transam/xlog.c:3432 -#: access/transam/xlog.c:3625 access/transam/xlog.c:4331 -#: access/transam/xlogrecovery.c:4264 access/transam/xlogrecovery.c:4367 -#: 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:3766 -#: replication/logical/reorderbuffer.c:4320 -#: replication/logical/reorderbuffer.c:5093 -#: 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:1580 utils/init/miscinit.c:1714 -#: utils/init/miscinit.c:1791 utils/misc/guc.c:4777 utils/misc/guc.c:4827 +#: 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/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 #, c-format msgid "could not open file \"%s\": %m" msgstr "no se pudo abrir el archivo «%s»: %m" #: ../common/controldata_utils.c:246 ../common/controldata_utils.c:249 -#: access/transam/twophase.c:1757 access/transam/twophase.c:1766 -#: access/transam/xlog.c:9280 access/transam/xlogfuncs.c:698 +#: access/transam/twophase.c:1756 access/transam/twophase.c:1765 +#: 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:4127 -#: 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 "no se pudo escribir el archivo «%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:1778 -#: access/transam/xlog.c:3316 access/transam/xlog.c:3511 -#: access/transam/xlog.c:4304 access/transam/xlog.c:8655 -#: access/transam/xlog.c:8700 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:1331 storage/smgr/md.c:1376 -#: storage/sync/sync.c:446 utils/misc/guc.c:4530 +#: 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: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 +#: storage/sync/sync.c:446 utils/misc/guc.c:4527 #, c-format msgid "could not fsync file \"%s\": %m" msgstr "no se pudo sincronizar (fsync) archivo «%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:852 ../common/psprintf.c:143 -#: ../common/scram-common.c:268 ../common/stringinfo.c:314 ../port/path.c:828 -#: ../port/path.c:865 ../port/path.c:882 access/transam/twophase.c:1418 -#: 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:3560 postmaster/postmaster.c:4021 -#: postmaster/postmaster.c:4383 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:532 -#: utils/adt/pg_locale.c:696 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:4508 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: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/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/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:1159 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "memoria agotada" #: ../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 "éxito" #: ../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 "el búfer de destino es demasiado pequeño" -#: ../common/cryptohash_openssl.c:372 ../common/hmac_openssl.c:373 +#: ../common/cryptohash_openssl.c:372 ../common/hmac_openssl.c:355 msgid "OpenSSL failure" msgstr "falla de openSSL" @@ -333,34 +336,34 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "no se pudo resolver la ruta «%s» a forma absoluta: %m" -#: ../common/exec.c:382 commands/collationcmds.c:876 commands/copyfrom.c:1723 -#: commands/copyto.c:654 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 "no se pudo ejecutar la orden «%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 "no se pudo leer desde la orden «%s»: %m" -#: ../common/exec.c:397 +#: ../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../common/exec.c:424 libpq/pqcomm.c:192 storage/ipc/latch.c:1169 -#: storage/ipc/latch.c:1349 storage/ipc/latch.c:1589 storage/ipc/latch.c:1751 -#: storage/ipc/latch.c:1877 +#: ../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 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %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:830 ../port/path.c:867 -#: ../port/path.c:884 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 "memoria agotada\n" @@ -370,51 +373,51 @@ 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: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 "no se pudo sincronizar el sistema de archivos para el archivo «%s»: %m" -#: ../common/file_utils.c:120 ../common/file_utils.c:566 -#: ../common/file_utils.c:570 access/transam/twophase.c:1321 +#: ../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:700 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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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:1470 -#: 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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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:988 +#: replication/slot.c:2245 replication/slot.c:2387 storage/file/fd.c:835 +#: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -423,122 +426,128 @@ msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" msgid "internal error" msgstr "error interno" -#: ../common/jsonapi.c:2121 +#: ../common/jsonapi.c:2435 msgid "Recursive descent parser cannot use incremental lexer." msgstr "El parser recursivo descendiente no puede usar el lexer incremental." -#: ../common/jsonapi.c:2123 +#: ../common/jsonapi.c:2437 msgid "Incremental parser requires incremental lexer." msgstr "El parser incremental requiere el lexer incremental." -#: ../common/jsonapi.c:2125 +#: ../common/jsonapi.c:2439 msgid "JSON nested too deep, maximum permitted depth is 6400." msgstr "JSON anidado demasiado profundamente, profundidad máxima es 6400." -#: ../common/jsonapi.c:2127 +#: ../common/jsonapi.c:2441 #, c-format msgid "Escape sequence \"\\%.*s\" is invalid." msgstr "La secuencia de escape «\\%.*s» no es válida." -#: ../common/jsonapi.c:2131 +#: ../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Los caracteres con valor 0x%02x deben ser escapados." -#: ../common/jsonapi.c:2135 +#: ../common/jsonapi.c:2449 #, c-format msgid "Expected end of input, but found \"%.*s\"." msgstr "Se esperaba el fin de la entrada, se encontró «%.*s»." -#: ../common/jsonapi.c:2138 +#: ../common/jsonapi.c:2452 #, c-format msgid "Expected array element or \"]\", but found \"%.*s\"." msgstr "Se esperaba un elemento de array o «]», se encontró «%.*s»." -#: ../common/jsonapi.c:2141 +#: ../common/jsonapi.c:2455 #, c-format msgid "Expected \",\" or \"]\", but found \"%.*s\"." msgstr "Se esperaba «,» o «]», se encontró «%.*s»." -#: ../common/jsonapi.c:2144 +#: ../common/jsonapi.c:2458 #, c-format msgid "Expected \":\", but found \"%.*s\"." msgstr "Se esperaba «:», se encontró «%.*s»." -#: ../common/jsonapi.c:2147 +#: ../common/jsonapi.c:2461 #, c-format msgid "Expected JSON value, but found \"%.*s\"." msgstr "Se esperaba un valor JSON, se encontró «%.*s»." -#: ../common/jsonapi.c:2150 +#: ../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "La cadena de entrada terminó inesperadamente." -#: ../common/jsonapi.c:2152 +#: ../common/jsonapi.c:2466 #, c-format msgid "Expected string or \"}\", but found \"%.*s\"." msgstr "Se esperaba una cadena o «}», se encontró «%.*s»." -#: ../common/jsonapi.c:2155 +#: ../common/jsonapi.c:2469 #, c-format msgid "Expected \",\" or \"}\", but found \"%.*s\"." msgstr "Se esperaba «,» o «}», se encontró «%.*s»." -#: ../common/jsonapi.c:2158 +#: ../common/jsonapi.c:2472 #, c-format msgid "Expected string, but found \"%.*s\"." msgstr "Se esperaba una cadena, se encontró «%.*s»." -#: ../common/jsonapi.c:2161 +#: ../common/jsonapi.c:2475 #, c-format msgid "Token \"%.*s\" is invalid." msgstr "El elemento «%.*s» no es válido." -#: ../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 no puede ser convertido a text." -#: ../common/jsonapi.c:2166 +#: ../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales." -#: ../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 "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es 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 "El valor de escape Unicode no pudo ser traducido a la codificación del servidor %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 "Un «high-surrogate» Unicode no puede venir después de un «high-surrogate»." -#: ../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 "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»." -#: ../common/logging.c:276 +#: ../common/jsonapi.c:2526 +#, fuzzy +#| msgid "out of memory while allocating a WAL reading processor" +msgid "out of memory while constructing error description" +msgstr "memoria agotada mientras se emplazaba un procesador de lectura de WAL" + +#: ../common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../common/logging.c:283 +#: ../common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../common/logging.c:294 +#: ../common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../common/logging.c:301 +#: ../common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -633,7 +642,7 @@ msgstr "no se pudo decodificar el nombre del archivo" msgid "file size is not an integer" msgstr "el tamaño del archivo no es un número entero" -#: ../common/parse_manifest.c:699 backup/basebackup.c:870 +#: ../common/parse_manifest.c:699 backup/basebackup.c:872 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "algoritmo de suma de comprobación no reconocido: \"%s\"" @@ -702,9 +711,9 @@ msgstr "no se pudo analizar el manifiesto de la copia de seguridad: %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:4712 utils/misc/guc.c:6931 -#: utils/misc/guc.c:6972 +#: 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 "valor no válido para el parámetro «%s»: «%s»" @@ -765,22 +774,22 @@ msgid "could not get exit code from subprocess: error code %lu" msgstr "no se pudo obtener el código de salida del subproceso»: código de error %lu" #: ../common/rmtree.c:97 access/heap/rewriteheap.c:1214 -#: access/transam/twophase.c:1717 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:4589 -#: 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: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:1609 #, c-format 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: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 "no se pudo eliminar el directorio «%s»: %m" @@ -797,15 +806,25 @@ msgstr "no se pudo codificar la llave almacenada" msgid "could not encode server key" msgstr "no se pudo codificar la llave del servidor" -#: ../common/stringinfo.c:315 +#: ../common/stringinfo.c:362 +#, fuzzy, c-format +#| msgid "bit string length exceeds the maximum allowed (%d)" +msgid "string buffer exceeds maximum allowed length (%zu bytes)" +msgstr "el tamaño de la cadena de bits excede el máximo permitido (%d)" + +#: ../common/stringinfo.c:363 #, c-format 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:319 -#, c-format +#: ../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" msgid "" -"out of memory\n" +"string buffer exceeds maximum allowed length (%zu bytes)\n" "\n" "Cannot enlarge string buffer containing %d bytes by %d more bytes.\n" msgstr "" @@ -818,7 +837,7 @@ msgstr "" msgid "could not look up effective user ID %ld: %s" msgstr "no se pudo encontrar el ID de usuario efectivo %ld: %s" -#: ../common/username.c:45 libpq/auth.c:1888 +#: ../common/username.c:45 msgid "user does not exist" msgstr "usuario no existe" @@ -857,12 +876,12 @@ msgstr "el proceso hijo fue terminado por una señal %d: %s" msgid "child process exited with unrecognized status %d" msgstr "el proceso hijo terminó con código %d no reconocido" -#: ../port/chklocale.c:283 +#: ../port/chklocale.c:280 #, c-format msgid "could not determine encoding for codeset \"%s\"" msgstr "no se pudo determinar la codificación para el codeset «%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 "no se pudo determinar la codificación para la configuración regional «%s»: el codeset es «%s»" @@ -910,7 +929,7 @@ msgstr "Reintentando durante 30 segundos." 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." -#: ../port/path.c:852 +#: ../port/path.c:853 #, c-format msgid "could not get current working directory: %m\n" msgstr "no se pudo obtener el directorio de trabajo actual: %m\n" @@ -920,16 +939,6 @@ msgstr "no se pudo obtener el directorio de trabajo actual: %m\n" msgid "operating system error %d" msgstr "error %d de sistema operativo" -#: ../port/user.c:43 ../port/user.c:79 -#, c-format -msgid "could not look up local user ID %d: %s" -msgstr "no se pudo buscar el usuario local de ID %d: %s" - -#: ../port/user.c:48 ../port/user.c:84 -#, c-format -msgid "local user with ID %d does not exist" -msgstr "no existe un usuario local con ID %d" - #: ../port/win32security.c:62 #, c-format msgid "could not get SID for Administrators group: error code %lu\n" @@ -945,48 +954,51 @@ msgstr "no se pudo obtener el SID del grupo PowerUsers: código de error %lu\n" msgid "could not check access token membership: error code %lu\n" msgstr "no se pudo verificar el token de proceso: código de error %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 "petición para sumarización BRIN de rango para el índice «%s» página %u no fue registrada" -#: 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:190 statistics/attribute_stats.c:934 +#: statistics/relation_stats.c:97 #, c-format msgid "recovery is in progress" msgstr "la recuperación está en proceso" -#: 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 "Las funciones de control de BRIN no pueden ejecutarse durante la recuperación." -#: access/brin/brin.c:1391 access/brin/brin.c:1499 -#, c-format -msgid "block number out of range: %lld" +#: access/brin/brin.c:1403 access/brin/brin.c:1510 +#, fuzzy, c-format +#| msgid "block number out of range: %lld" +msgid "block number out of range: %" msgstr "número de bloque fuera de rango: %lld" -#: 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» no es un índice 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 "no se pudo abrir la tabla padre del índice «%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 "el índice «%s» no es válido" -#: 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 @@ -997,7 +1009,7 @@ msgstr "no se puede aceptar un valor de tipo %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\"" @@ -1013,90 +1025,91 @@ msgstr "índice BRIN corrompido: mapa de rango inconsistente" msgid "unexpected page type 0x%04X in BRIN index \"%s\" block %u" msgstr "tipo de página 0x%04X inesperado en el índice BRIN «%s» bloque %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 "familia de operadores «%s» de método de acceso %s contiene la función %s con número de soporte %d no válido" -#: 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 "familia de operadores «%s» de método de acceso %s contiene la función %s con signatura incorrecta para el número de soporte %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 "familia de operadores «%s» de método de acceso %s contiene el operador %s con número de estrategia %d no válido" -#: 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 "familia de operadores «%s» de método de acceso %s contiene especificación ORDER BY no válida para el operador %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 "familia de operadores «%s» de método de acceso %s contiene el operador %s con signatura incorrecta" -#: 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 "el/los operador(es) para los tipos %3$s y %4$s faltan de la familia de operadores «%1$s» de método de acceso %2$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 "la(s) función/funciones de soporte para los tipos %3$s y %4$s faltan de la familia de operadores «%1$s» de método de acceso %2$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 "faltan operadores de la clase de operadores «%s» del método de acceso %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 "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:121 -#, c-format -msgid "Returned type %s does not match expected type %s in column %d." +#: access/common/attmap.c:118 +#, fuzzy, c-format +#| msgid "Returned type %s does not match expected type %s in column %d." +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." -#: 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 "La cantidad de columnas retornadas (%d) no coincide con la cantidad esperada de columnas (%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 "no se pudo convertir el tipo de registro" -#: 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 "El atributo «%s» de tipo %s no coincide con el atributo correspondiente de tipo %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 "El atributo «%s» de tipo %s no existe en el tipo %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 "el número de columnas (%d) excede el límite (%d)" @@ -1106,96 +1119,102 @@ msgstr "el número de columnas (%d) excede el límite (%d)" msgid "number of index columns (%d) exceeds limit (%d)" msgstr "el número de columnas del índice (%d) excede el límite (%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 "fila de índice requiere %zu bytes, tamaño máximo es %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 "código de formato no soportado: %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 "Los valores aceptables son «on», «off» y «auto»." -#: access/common/reloptions.c:541 +#: access/common/reloptions.c:552 msgid "Valid values are \"local\" and \"cascaded\"." msgstr "Los valores aceptables son «local» y «cascaded»." -#: access/common/reloptions.c:689 +#: access/common/reloptions.c:700 #, c-format msgid "user-defined relation parameter types limit exceeded" msgstr "el límite de tipos de parámetros de relación definidos por el usuario ha sido excedido" -#: access/common/reloptions.c:1231 +#: access/common/reloptions.c:1242 #, c-format msgid "RESET must not include values for parameters" msgstr "RESET no debe incluir valores de parámetros" -#: access/common/reloptions.c:1263 +#: access/common/reloptions.c:1275 #, c-format msgid "unrecognized parameter namespace \"%s\"" msgstr "espacio de nombre de parámetro «%s» no reconocido" -#: access/common/reloptions.c:1300 commands/variable.c:1214 +#: access/common/reloptions.c:1305 commands/foreigncmds.c:86 +#, fuzzy, c-format +#| msgid "Extension names must not contain \"--\"." +msgid "invalid option name \"%s\": must not contain \"=\"" +msgstr "Los nombres de extensión no deben contener «--»." + +#: access/common/reloptions.c:1320 commands/variable.c:1240 #, c-format msgid "tables declared WITH OIDS are not supported" msgstr "las tablas declaradas WITH OIDS no están soportadas" -#: access/common/reloptions.c:1468 +#: access/common/reloptions.c:1488 #, c-format msgid "unrecognized parameter \"%s\"" msgstr "parámetro «%s» no reconocido" -#: access/common/reloptions.c:1580 +#: access/common/reloptions.c:1600 #, c-format msgid "parameter \"%s\" specified more than once" msgstr "el parámetro «%s» fue especificado más de una vez" -#: access/common/reloptions.c:1596 +#: access/common/reloptions.c:1616 #, c-format msgid "invalid value for boolean option \"%s\": %s" msgstr "valor no válido para la opción booleana «%s»: «%s»" -#: access/common/reloptions.c:1608 +#: access/common/reloptions.c:1628 #, c-format msgid "invalid value for integer option \"%s\": %s" msgstr "valor no válido para la opción entera «%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 "el valor %s está fuera del rango de la opción «%s»" -#: access/common/reloptions.c:1616 +#: access/common/reloptions.c:1636 #, c-format msgid "Valid values are between \"%d\" and \"%d\"." msgstr "Los valores aceptables están entre «%d» y «%d»." -#: access/common/reloptions.c:1628 +#: access/common/reloptions.c:1648 #, c-format msgid "invalid value for floating point option \"%s\": %s" msgstr "valor no válido para la opción de coma flotante «%s»: «%s»" -#: access/common/reloptions.c:1636 +#: access/common/reloptions.c:1656 #, c-format msgid "Valid values are between \"%f\" and \"%f\"." msgstr "Valores aceptables están entre «%f» y «%f»." -#: access/common/reloptions.c:1658 +#: access/common/reloptions.c:1678 #, c-format msgid "invalid value for enum option \"%s\": %s" msgstr "valor no válido para la opción enum «%s»: %s" -#: access/common/reloptions.c:1989 +#: access/common/reloptions.c:2025 #, c-format msgid "cannot specify storage parameters for a partitioned table" msgstr "no se puede especificar parámetros de almacenamiento para una tabla particionada" -#: access/common/reloptions.c:1990 +#: access/common/reloptions.c:2026 #, c-format msgid "Specify storage parameters for its leaf partitions instead." msgstr "Especifique parámetros de almacenamiento para sus particiones hijas en su lugar." @@ -1240,52 +1259,53 @@ msgstr "no se pueden acceder índices temporales de otras sesiones" msgid "failed to re-find tuple within index \"%s\"" msgstr "no se pudo volver a encontrar la tupla dentro del índice «%s»" -#: access/gin/ginscan.c:431 +#: 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 +#, 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" + +#: access/gin/ginscan.c:480 #, c-format msgid "old GIN indexes do not support whole-index scans nor searches for nulls" msgstr "los índices GIN antiguos no soportan recorridos del índice completo ni búsquedas de nulos" -#: access/gin/ginscan.c:432 +#: access/gin/ginscan.c:481 #, c-format msgid "To fix this, do REINDEX INDEX \"%s\"." msgstr "Para corregir esto, ejecute REINDEX INDEX \"%s\"." -#: access/gin/ginutil.c:147 executor/execExpr.c:2200 -#: 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 "no se pudo identificar una función de comparación para el tipo %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 "la familia de operadores «%s» del método de acceso %s contiene el procedimiento de soporte %s registrado entre tipos distintos" -#: 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 "falta la función de soporte %3$d o %4$d de la clase de operadores «%1$s» del método de accesso %2$s" -#: 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 "el número de función de soporte %d no es válido para el método de acceso %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 "el índice «%s» contiene una tupla interna marcada como no válida" -#: 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 "Esto es causado por una división de página incompleta durante una recuperación antes de actualizar a 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 @@ -1293,7 +1313,7 @@ msgstr "Esto es causado por una división de página incompleta durante una recu msgid "Please REINDEX it." msgstr "Por favor aplíquele REINDEX." -#: access/gist/gist.c:1196 +#: access/gist/gist.c:1208 #, c-format msgid "fixing incomplete split in index \"%s\", block %u" msgstr "arreglando división incompleta en el índice «%s», bloque %u" @@ -1308,41 +1328,42 @@ msgstr "el método picksplit para la columna %d del índice «%s» falló" 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 "El índice no es óptimo. Para optimizarlo, contacte un desarrollador o trate de usar la columna en segunda posición en la orden 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 "índice «%s» contiene páginas vacías no esperadas en el bloque %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 "el índice «%s» contiene una página corrupta en el bloque %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 "la familia de operadores «%s» del método de acceso %s contiene una especificación ORDER BY no soportada para el operador %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 "la familia de operadores «%s» del método de acceso %s contiene una especificación de familia en ORDER BY incorrecta para el operador %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 "no se pudo determinar qué ordenamiento usar para el hashing de cadenas" -#: 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:2021 commands/tablecmds.c:18178 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: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 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "Use la cláusula COLLATE para establecer el ordenamiento explícitamente." @@ -1353,7 +1374,7 @@ msgid "index row size %zu exceeds hash maximum %zu" msgstr "el tamaño de fila de índice %zu excede el máximo para hash %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 "Valores mayores a una página del buffer no pueden ser indexados." @@ -1368,7 +1389,7 @@ msgstr "número no válido de bloque de «overflow» %u" msgid "out of overflow pages in hash index \"%s\"" msgstr "se agotaron las páginas de desbordamiento en el índice hash «%s»" -#: access/hash/hashsearch.c:311 +#: access/hash/hashsearch.c:313 #, c-format msgid "hash indexes do not support whole-index scans" msgstr "los índices hash no soportan recorridos del índice completo" @@ -1383,54 +1404,54 @@ msgstr "el índice «%s» no es un índice hash" msgid "index \"%s\" has wrong hash version" msgstr "el índice «%s» tiene una versión de hash incorrecta" -#: 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 "la familia de operadores «%s» del método de acceso %s no tiene función de soporte para el operador %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 "faltan operadores entre tipos en la familia de operadores «%s» del método de acceso %s" -#: access/heap/heapam.c:2206 +#: access/heap/heapam.c:2280 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "no se pueden insertar tuplas en un ayudante paralelo" -#: access/heap/heapam.c:2725 +#: access/heap/heapam.c:2803 #, 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:2772 +#: access/heap/heapam.c:2850 #, c-format msgid "attempted to delete invisible tuple" msgstr "se intentó eliminar una tupla invisible" -#: access/heap/heapam.c:3220 access/heap/heapam.c:6501 access/index/genam.c:818 +#: access/heap/heapam.c:3300 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:3397 +#: access/heap/heapam.c:3477 #, c-format msgid "attempted to update invisible tuple" msgstr "se intentó actualizar una tupla invisible" -#: access/heap/heapam.c:4908 access/heap/heapam.c:4946 -#: access/heap/heapam.c:5211 access/heap/heapam_handler.c:468 +#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 +#: access/heap/heapam.c:5291 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:6314 commands/trigger.c:3340 -#: executor/nodeModifyTable.c:2376 executor/nodeModifyTable.c:2467 +#: access/heap/heapam.c:6405 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 "el registro a ser actualizado ya fue modificado por una operación disparada por la orden actual" -#: access/heap/heapam_handler.c:413 +#: access/heap/heapam_handler.c:415 #, c-format msgid "tuple to be locked was already moved to another partition due to concurrent update" msgstr "el registro a ser bloqueado ya fue movido a otra partición por un update concurrente" @@ -1447,14 +1468,14 @@ 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:3255 access/transam/xlog.c:3446 -#: access/transam/xlog.c:4283 access/transam/xlog.c:9269 -#: 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:4114 -#: 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: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 +#: 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 "no se pudo crear archivo «%s»: %m" @@ -1466,162 +1487,187 @@ 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:3305 access/transam/xlog.c:3502 -#: access/transam/xlog.c:4295 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:1655 -#: utils/init/miscinit.c:1666 utils/init/miscinit.c:1674 utils/misc/guc.c:4491 -#: utils/misc/guc.c:4522 utils/misc/guc.c:5675 utils/misc/guc.c:5693 -#: 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: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:1257 utils/time/snapmgr.c:1264 #, c-format msgid "could not write to file \"%s\": %m" msgstr "no se pudo escribir a archivo «%s»: %m" -#: access/heap/vacuumlazy.c:473 +#: access/heap/vacuumlazy.c:815 #, c-format msgid "aggressively vacuuming \"%s.%s.%s\"" msgstr "haciendo vacuum agresivamente a «%s.%s.%s»" -#: access/heap/vacuumlazy.c:478 +#: access/heap/vacuumlazy.c:820 #, c-format msgid "vacuuming \"%s.%s.%s\"" msgstr "haciendo vacuum a «%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 "se terminó el vacuum de «%s.%s.%s»: recorridos de índice: %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 "vacuum agresivo automático para prevenir wraparound de la tabla «%s.%s.%s»: recorridos de índice: %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 "vacuum automático para prevenir wraparound de la tabla «%s.%s.%s»: recorridos de índice: %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 "vacuum agresivo automático de la tabla «%s.%s.%s»: recorridos de índice: %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 "vacuum automático de la tabla «%s.%s.%s»: recorridos de índice: %d\n" -#: access/heap/vacuumlazy.c:653 -#, c-format -msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n" +#: access/heap/vacuumlazy.c:1015 +#, fuzzy, c-format +#| msgid "pages: %u removed, %u remain, %u scanned (%.2f%% of total)\n" +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" -#: access/heap/vacuumlazy.c:660 -#, c-format -msgid "tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n" +#: access/heap/vacuumlazy.c:1024 +#, fuzzy, c-format +#| msgid "tuples: %lld removed, %lld remain, %lld are dead but not yet removable\n" +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" -#: access/heap/vacuumlazy.c:666 -#, c-format -msgid "tuples missed: %lld dead from %u pages not removed due to cleanup lock contention\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" +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" -#: 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 "punto de corte de eliminación: %u, que era %d XIDs de antiguo cuando la operación terminó\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 "nuevo relfrozenxid: %u, que está %d XIDs más adelante del valor anterior\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 "nuevo relminmxid: %u, que está %d MXIDs más adelante del valor anterior\n" -#: access/heap/vacuumlazy.c:690 -#, c-format -msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n" +#: access/heap/vacuumlazy.c:1054 +#, fuzzy, c-format +#| msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n" +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" -#: access/heap/vacuumlazy.c:698 +#: access/heap/vacuumlazy.c:1062 +#, c-format +msgid "visibility map: %u pages set all-visible, %u pages set all-frozen (%u were all-visible)\n" +msgstr "" + +#: access/heap/vacuumlazy.c:1070 msgid "index scan not needed: " msgstr "recorrido de índice no necesario: " -#: access/heap/vacuumlazy.c:700 +#: access/heap/vacuumlazy.c:1072 msgid "index scan needed: " msgstr "recorrido de índice necesario: " -#: access/heap/vacuumlazy.c:702 -#, c-format -msgid "%u pages from table (%.2f%% of total) had %lld dead item identifiers removed\n" +#: access/heap/vacuumlazy.c:1074 +#, fuzzy, c-format +#| msgid "%u pages from table (%.2f%% of total) had %lld dead item identifiers removed\n" +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" -#: access/heap/vacuumlazy.c:707 +#: access/heap/vacuumlazy.c:1079 msgid "index scan bypassed: " msgstr "recorrido de índice pasado por alto: " -#: access/heap/vacuumlazy.c:709 +#: access/heap/vacuumlazy.c:1081 msgid "index scan bypassed by failsafe: " msgstr "recorrido de índice pasado por alto debido a modo failsafe: " -#: access/heap/vacuumlazy.c:711 -#, c-format -msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n" +#: access/heap/vacuumlazy.c:1083 +#, fuzzy, c-format +#| msgid "%u pages from table (%.2f%% of total) have %lld dead item identifiers\n" +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" -#: 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 "índice «%s»: páginas: %u en total, %u recientemente eliminadas, %u eliminadas hasta ahora, %u reusables\n" -#: access/heap/vacuumlazy.c:738 commands/analyze.c:794 +#: access/heap/vacuumlazy.c:1113 commands/analyze.c:817 +#, fuzzy, c-format +#| msgid "Time: %.3f ms\n" +msgid "delay time: %.3f ms\n" +msgstr "Duración: %.3f ms\n" + +#: access/heap/vacuumlazy.c:1121 commands/analyze.c:825 #, c-format msgid "I/O timings: read: %.3f ms, write: %.3f ms\n" msgstr "tiempos de E/S: lectura: %.3f ms, escritura: %.3f ms\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 "tasa lectura promedio: %.3f MB/s, tasa escritura promedio: %.3f MB/s\n" -#: access/heap/vacuumlazy.c:751 commands/analyze.c:799 -#, c-format -msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n" +#: access/heap/vacuumlazy.c:1134 commands/analyze.c:830 +#, fuzzy, c-format +#| msgid "buffer usage: %lld hits, %lld misses, %lld dirtied\n" +msgid "buffer usage: % hits, % reads, % dirtied\n" msgstr "uso de búfers: %lld aciertos, %lld fallos, %lld ensuciados\n" -#: access/heap/vacuumlazy.c:756 -#, c-format -msgid "WAL usage: %lld records, %lld full page images, %llu bytes\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" +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" -#: 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 "uso de sistema: %s" -#: access/heap/vacuumlazy.c:2170 +#: access/heap/vacuumlazy.c:1432 #, c-format -msgid "table \"%s\": removed %lld dead item identifiers in %u pages" +msgid "disabling eager scanning after freezing %u eagerly scanned blocks of relation \"%s.%s.%s\"" +msgstr "" + +#: access/heap/vacuumlazy.c:2821 +#, fuzzy, c-format +#| msgid "table \"%s\": removed %lld dead item identifiers in %u pages" +msgid "table \"%s\": removed % dead item identifiers in %u pages" msgstr "tabla «%s»: se eliminaron %lld identificadores de elementos muertos en %u páginas" -#: access/heap/vacuumlazy.c:2324 +#: access/heap/vacuumlazy.c:2982 #, c-format msgid "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after %d index scans" msgstr "pasando por alto el mantenimiento no esencial de la tabla «%s.%s.%s» como mecanismo de seguridad (failsafe) luego de %d recorridos de índice" -#: access/heap/vacuumlazy.c:2327 +#: access/heap/vacuumlazy.c:2985 #, c-format msgid "The table's relfrozenxid or relminmxid is too far in the past." msgstr "El relfrozenxid o el relminmxid de la tabla es demasiado antiguo." -#: access/heap/vacuumlazy.c:2328 +#: access/heap/vacuumlazy.c:2986 #, c-format msgid "" "Consider increasing configuration parameter \"maintenance_work_mem\" or \"autovacuum_work_mem\".\n" @@ -1630,67 +1676,67 @@ msgstr "" "Considere incrementar el parámetro de configuración «maintenance_work_mem» o «autovacuum_work_mem».\n" "Es probable que también deba considerar otras formas para que VACUUM pueda mantener el paso de la asignación de IDs de transacción." -#: access/heap/vacuumlazy.c:2590 +#: access/heap/vacuumlazy.c:3248 #, c-format msgid "\"%s\": stopping truncate due to conflicting lock request" msgstr "«%s»: suspendiendo el truncado debido a una petición de “lock” en conflicto" -#: access/heap/vacuumlazy.c:2660 +#: access/heap/vacuumlazy.c:3318 #, c-format msgid "table \"%s\": truncated %u to %u pages" msgstr "tabla «%s»: truncadas %u a %u páginas" -#: access/heap/vacuumlazy.c:2722 +#: access/heap/vacuumlazy.c:3380 #, c-format msgid "table \"%s\": suspending truncate due to conflicting lock request" msgstr "tabla «%s»: suspendiendo el truncado debido a una petición de bloqueo en conflicto" -#: access/heap/vacuumlazy.c:2841 +#: access/heap/vacuumlazy.c:3499 #, c-format msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "desactivando el comportamiento paralelo de vacuum en «%s» --- no se puede hacer vacuum de tablas temporales en paralelo" -#: access/heap/vacuumlazy.c:3108 +#: access/heap/vacuumlazy.c:3766 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "recorriendo el bloque %u posición %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3111 +#: access/heap/vacuumlazy.c:3769 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "recorriendo el bloque %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3115 +#: access/heap/vacuumlazy.c:3773 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "recorriendo la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3123 +#: access/heap/vacuumlazy.c:3781 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "haciendo «vacuum» al bloque %u posición %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3126 +#: access/heap/vacuumlazy.c:3784 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "haciendo «vacuum» al bloque %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3130 +#: access/heap/vacuumlazy.c:3788 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "mientras se hacía «vacuum» a la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3135 commands/vacuumparallel.c:1112 +#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "mientras se hacía «vacuum» al índice «%s» de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3140 commands/vacuumparallel.c:1118 +#: access/heap/vacuumlazy.c:3798 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "mientras se limpiaba el índice «%s» de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3146 +#: access/heap/vacuumlazy.c:3804 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "error mientras se truncaba la relación «%s.%s» a %u bloques" @@ -1705,24 +1751,24 @@ msgstr "el método de acceso «%s» no es de tipo %s" msgid "index access method \"%s\" does not have a handler" msgstr "el método de acceso «%s» no tiene manejador" -#: access/index/genam.c:489 +#: access/index/genam.c:498 #, c-format msgid "transaction aborted during system catalog scan" msgstr "transacción abortada durante recorrido de catálogos de sistema" -#: access/index/genam.c:657 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 "no se puede acceder el índice «%s» mientras está siendo reindexado" -#: access/index/indexam.c:203 catalog/objectaddress.c:1356 -#: commands/indexcmds.c:2851 commands/tablecmds.c:281 commands/tablecmds.c:305 -#: commands/tablecmds.c:17873 commands/tablecmds.c:19762 +#: 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 #, c-format msgid "\"%s\" is not an index" msgstr "«%s» no es un índice" -#: access/index/indexam.c:1028 +#: access/index/indexam.c:1075 #, c-format msgid "operator class %s has no options" msgstr "clase de operadores «%s» no tiene opciones" @@ -1743,7 +1789,7 @@ msgid "This may be because of a non-immutable index expression." msgstr "Esto puede deberse a una expresión de índice no inmutable." #: 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 "el índice «%s» no es un btree" @@ -1763,17 +1809,17 @@ msgstr "el índice «%s» contiene una página interna parcialmente muerta" msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it." msgstr "Esto puede ser causado por la interrupción de un VACUUM en la versión 9.3 o anteriores, antes de actualizar. Ejecute REINDEX por favor." -#: access/nbtree/nbtutils.c:5108 +#: access/nbtree/nbtutils.c:4196 #, c-format msgid "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" msgstr "el tamaño de fila de índice %1$zu excede el máximo %3$zu para btree versión %2$u para el índice «%4$s»" -#: access/nbtree/nbtutils.c:5114 +#: access/nbtree/nbtutils.c:4201 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "La tupla de índice hace referencia a la tupla (%u,%u) en la relación «%s»." -#: access/nbtree/nbtutils.c:5118 +#: access/nbtree/nbtutils.c:4205 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -1782,58 +1828,58 @@ msgstr "" "Valores mayores a 1/3 de la página del buffer no pueden ser indexados.\n" "Considere un índice sobre una función que genere un hash MD5 del valor, o utilice un esquema de indexación de texto completo." -#: 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 "falta una función de soporte para los tipos %3$s y %4$s en la familia de operadores «%1$s» del método de acceso %2$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 "no se puede abrir la relación «%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 "método «compress» debe estar definido cuando el tipo hoja es distinto del tipo de entrada" -#: access/spgist/spgutils.c:1028 +#: access/spgist/spgutils.c:1036 #, c-format msgid "SP-GiST inner tuple size %zu exceeds maximum %zu" msgstr "el tamaño de tupla interna SP-GiST %zu excede el máximo %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 "el tipo de dato hoja SP-GiST %s no coincide con el tipo declarado %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 "falta la función de soporte %3$d para el tipo %4$s de la clase de operadores «%1$s» del método de accesso %2$s" -#: access/table/tableam.c:255 +#: access/table/tableam.c:256 #, c-format msgid "tid (%u, %u) is not valid for relation \"%s\"" msgstr "el tid (%u, %u) no es válido para la relación «%s»" -#: access/table/tableamapi.c:109 +#: access/table/tableamapi.c:106 #, c-format msgid "\"%s\" cannot be empty." msgstr "«%s» no puede ser vacío." -#: access/table/tableamapi.c:116 access/transam/xlogrecovery.c:4859 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4879 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "«%s» es demasiado largo (máximo %d caracteres)." -#: access/table/tableamapi.c:139 +#: access/table/tableamapi.c:136 #, c-format msgid "table access method \"%s\" does not exist" msgstr "no existe el método de acceso de tabla «%s»" -#: access/table/tableamapi.c:144 +#: access/table/tableamapi.c:141 #, c-format msgid "Table access method \"%s\" does not exist." msgstr "No existe el método de acceso de tabla «%s»." @@ -1863,13 +1909,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:1091 +#: access/transam/multixact.c:1097 #, 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:1093 access/transam/multixact.c:1100 -#: access/transam/multixact.c:1124 access/transam/multixact.c:1133 +#: 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 #, c-format msgid "" @@ -1879,65 +1925,65 @@ 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:1098 +#: access/transam/multixact.c:1104 #, 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:1119 access/transam/multixact.c:2474 +#: access/transam/multixact.c:1125 access/transam/multixact.c:2482 #, 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:1128 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1134 access/transam/multixact.c:2491 #, 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:1189 +#: access/transam/multixact.c:1195 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "límite de miembros de multixact alcanzado" -#: access/transam/multixact.c:1190 +#: access/transam/multixact.c:1196 #, 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:1195 +#: access/transam/multixact.c:1201 #, 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:1226 +#: access/transam/multixact.c:1232 #, 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:1231 +#: access/transam/multixact.c:1237 #, 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:1371 +#: access/transam/multixact.c:1377 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "el MultiXactId %u ya no existe -- “wraparound” aparente" -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1383 #, 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:2479 access/transam/multixact.c:2488 +#: access/transam/multixact.c:2487 access/transam/multixact.c:2496 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1946,61 +1992,61 @@ 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:2767 +#: access/transam/multixact.c:2775 #, 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:2789 +#: access/transam/multixact.c:2797 #, 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:3180 +#: access/transam/multixact.c:3188 #, 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:3198 +#: access/transam/multixact.c:3206 #, 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:3517 +#: access/transam/multixact.c:3525 #, c-format msgid "invalid MultiXactId: %u" msgstr "el MultiXactId no es válido: %u" -#: access/transam/parallel.c:748 access/transam/parallel.c:867 +#: access/transam/parallel.c:752 access/transam/parallel.c:871 #, c-format msgid "parallel worker failed to initialize" msgstr "el ayudante paralelo no pudo iniciar" -#: access/transam/parallel.c:749 access/transam/parallel.c:868 +#: access/transam/parallel.c:753 access/transam/parallel.c:872 #, 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:929 +#: access/transam/parallel.c:933 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "postmaster terminó durante una transacción paralela" -#: access/transam/parallel.c:1116 +#: access/transam/parallel.c:1120 #, c-format msgid "lost connection to parallel worker" msgstr "se ha perdido la conexión al ayudante paralelo" -#: access/transam/parallel.c:1172 access/transam/parallel.c:1174 +#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 msgid "parallel worker" msgstr "ayudante paralelo" -#: access/transam/parallel.c:1344 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 #, 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:1349 replication/logical/applyparallelworker.c:896 +#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:896 #, 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" @@ -2062,64 +2108,65 @@ 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 -#, c-format -msgid "\"%s\" must be a multiple of %d" +#, fuzzy, c-format +#| msgid "\"%s\" must be a multiple of %d" +msgid "\"%s\" must be a multiple of %d." msgstr "«%s» debe ser múltiple de %d" -#: access/transam/slru.c:830 +#: access/transam/slru.c:833 #, c-format msgid "file \"%s\" doesn't exist, reading as zeroes" msgstr "el archivo «%s» no existe, leyendo como ceros" -#: 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 "no se pudo encontrar el estado de la transacción %u" -#: access/transam/slru.c:1060 +#: access/transam/slru.c:1063 #, c-format msgid "Could not open file \"%s\": %m." msgstr "No se pudo abrir el archivo «%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 "No se pudo posicionar (seek) en el archivo «%s» a la posición %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 "No se pudo leer desde el archivo «%s» en la posición %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 "No se pudo leer desde el archivo «%s» en la posición %d: se leyeron muy pocos bytes." -#: access/transam/slru.c:1086 +#: access/transam/slru.c:1089 #, c-format msgid "Could not write to file \"%s\" at offset %d: %m." msgstr "No se pudo escribir al archivo «%s» en la posición %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 "No se pudo escribir al archivo «%s» en la posición %d: se escribieron muy pocos bytes." -#: access/transam/slru.c:1098 +#: access/transam/slru.c:1101 #, c-format msgid "Could not fsync file \"%s\": %m." msgstr "No se pudo sincronizar (fsync) archivo «%s»: %m." -#: access/transam/slru.c:1105 +#: access/transam/slru.c:1108 #, c-format msgid "Could not close file \"%s\": %m." msgstr "No se pudo cerrar el archivo «%s»: %m." -#: access/transam/slru.c:1431 +#: access/transam/slru.c:1434 #, c-format msgid "could not truncate directory \"%s\": apparent wraparound" msgstr "no se pudo truncar el directorio «%s»: “wraparound” aparente" @@ -2184,12 +2231,12 @@ msgstr "Defina «max_prepared_transactions» a un valor distinto de cero." msgid "transaction identifier \"%s\" is already in use" msgstr "identificador de transacción «%s» ya está siendo utilizado" -#: access/transam/twophase.c:404 access/transam/twophase.c:2531 +#: access/transam/twophase.c:404 access/transam/twophase.c:2530 #, c-format msgid "maximum number of prepared transactions reached" msgstr "se alcanzó el número máximo de transacciones preparadas" -#: access/transam/twophase.c:405 access/transam/twophase.c:2532 +#: access/transam/twophase.c:405 access/transam/twophase.c:2531 #, c-format msgid "Increase \"max_prepared_transactions\" (currently %d)." msgstr "Incremente «max_prepared_transactions» (actualmente es %d)." @@ -2261,9 +2308,9 @@ msgstr "tamaño no válido en archivo «%s»" msgid "calculated CRC checksum does not match value stored in file \"%s\"" msgstr "la suma de verificación calculada no coincide con el valor almacenado en el archivo «%s»" -#: access/transam/twophase.c:1419 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:571 +#: postmaster/walsummarizer.c:939 replication/logical/logical.c:213 +#: replication/walsender.c:812 #, c-format msgid "Failed while allocating a WAL reading processor." msgstr "Falló mientras se emplazaba un procesador de lectura de WAL." @@ -2283,64 +2330,64 @@ msgstr "no se pudo leer el archivo de estado de dos fases desde WAL en %X/%X" msgid "expected two-phase state data is not present in WAL at %X/%X" msgstr "los datos de estado de dos fases esperados no están presentes en WAL en %X/%X" -#: access/transam/twophase.c:1745 +#: access/transam/twophase.c:1744 #, c-format msgid "could not recreate file \"%s\": %m" msgstr "no se pudo recrear archivo «%s»: %m" -#: access/transam/twophase.c:1872 +#: 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" msgstr[0] "%u archivo de estado de dos fases fue escrito para transacción de larga duración" msgstr[1] "%u archivos de estado de dos fases fueron escritos para transacciones de larga duración" -#: access/transam/twophase.c:2107 +#: access/transam/twophase.c:2106 #, c-format msgid "recovering prepared transaction %u from shared memory" msgstr "recuperando transacción preparada %u desde memoria compartida" -#: access/transam/twophase.c:2200 +#: access/transam/twophase.c:2199 #, c-format msgid "removing stale two-phase state file for transaction %u" msgstr "eliminando archivo obsoleto de estado de dos fases para transacción %u" -#: access/transam/twophase.c:2207 +#: access/transam/twophase.c:2206 #, c-format msgid "removing stale two-phase state from memory for transaction %u" msgstr "eliminando de memoria estado de dos fases obsoleto para transacción %u" -#: access/transam/twophase.c:2220 +#: access/transam/twophase.c:2219 #, c-format msgid "removing future two-phase state file for transaction %u" msgstr "eliminando archivo futuro de estado de dos fases para transacción %u" -#: access/transam/twophase.c:2227 +#: access/transam/twophase.c:2226 #, c-format msgid "removing future two-phase state from memory for transaction %u" msgstr "eliminando estado de dos fases futuro de memoria para transacción %u" -#: access/transam/twophase.c:2252 +#: access/transam/twophase.c:2251 #, c-format msgid "corrupted two-phase state file for transaction %u" msgstr "archivo de estado de dos fases corrupto para transacción %u" -#: access/transam/twophase.c:2257 +#: access/transam/twophase.c:2256 #, c-format msgid "corrupted two-phase state in memory for transaction %u" msgstr "estado de dos fases en memoria corrupto para transacción %u" -#: access/transam/twophase.c:2514 +#: access/transam/twophase.c:2513 #, c-format msgid "could not recover two-phase state file for transaction %u" msgstr "no se pudo recuperar el archivo de estado de dos fases para la transacción %u" -#: access/transam/twophase.c:2516 +#: 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 "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:2524 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 "no se pudo acceder al archivo «%s»: %m" @@ -2384,584 +2431,534 @@ msgstr "" "Para evitar que la base de datos se desactive, 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/xact.c:649 +#: access/transam/xact.c:652 #, c-format msgid "cannot assign transaction IDs during a parallel operation" msgstr "no se puede asignar IDs de transacción durante una operación paralela" -#: access/transam/xact.c:840 +#: access/transam/xact.c:843 #, c-format msgid "cannot modify data in a parallel worker" msgstr "no se pueden modificar datos en un proceso ayudante paralelo" -#: access/transam/xact.c:1115 +#: access/transam/xact.c:1118 #, c-format msgid "cannot start commands during a parallel operation" msgstr "no se puede iniciar órdenes durante una operación paralela" -#: 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 "no se pueden tener más de 2^32-2 órdenes en una transacción" -#: access/transam/xact.c:1664 +#: access/transam/xact.c:1695 #, c-format msgid "maximum number of committed subtransactions (%d) exceeded" msgstr "se superó el número máximo de subtransacciones comprometidas (%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 "no se puede hacer PREPARE de una transacción que ha operado en objetos temporales" -#: access/transam/xact.c:2571 +#: access/transam/xact.c:2626 #, c-format msgid "cannot PREPARE a transaction that has exported snapshots" msgstr "no se puede hacer PREPARE de una transacción que ha exportado snapshots" #. 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 no puede ser ejecutado dentro de un bloque de transacción" #. 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 no puede ser ejecutado dentro de una subtransacción" #. translator: %s represents an SQL statement name -#: access/transam/xact.c:3613 -#, c-format -msgid "%s cannot be executed within a pipeline" -msgstr "%s no puede ser ejecutado en un “pipeline”" - -#. 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 no puede ser ejecutado desde una función" #. 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 "la orden %s sólo puede ser usada en bloques de transacción" -#: access/transam/xact.c:3905 +#: access/transam/xact.c:3956 #, c-format msgid "there is already a transaction in progress" msgstr "ya hay una transacción en curso" -#: 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 "no hay una transacción en curso" -#: access/transam/xact.c:4114 +#: access/transam/xact.c:4165 #, c-format msgid "cannot commit during a parallel operation" msgstr "no se puede comprometer una transacción durante una operación paralela" -#: access/transam/xact.c:4237 +#: access/transam/xact.c:4288 #, c-format msgid "cannot abort during a parallel operation" msgstr "no se puede abortar durante una operación paralela" -#: access/transam/xact.c:4336 +#: access/transam/xact.c:4387 #, c-format msgid "cannot define savepoints during a parallel operation" msgstr "no se pueden definir savepoints durante una operación paralela" -#: access/transam/xact.c:4423 +#: access/transam/xact.c:4474 #, c-format msgid "cannot release savepoints during a parallel operation" msgstr "no se pueden liberar savepoints durante una operación paralela" -#: 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 "no existe el «savepoint» «%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 "el «savepoint» «%s» no existe dentro del nivel de savepoint actual" -#: access/transam/xact.c:4532 +#: access/transam/xact.c:4583 #, c-format msgid "cannot rollback to savepoints during a parallel operation" msgstr "no se puede hacer rollback a un savepoint durante una operación paralela" -#: 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 "no se pueden tener más de 2^32-1 subtransacciones en una transacción" -#: access/transam/xlog.c:1542 +#: access/transam/xlog.c:1545 #, 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:1769 +#: access/transam/xlog.c:1772 #, 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:2210 access/transam/xlog.c:4501 +#: 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 "El tamaño de segmento de WAL debe ser una potencia de dos entre 1 MB y 1 GB." -#: access/transam/xlog.c:2228 -#, c-format -msgid "\"%s\" must be set to -1 during binary upgrade mode." -msgstr "«%s» debe ser establecido a -1 durante el modo de actualización binaria." - -#: access/transam/xlog.c:2477 +#: access/transam/xlog.c:2455 #, 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:3739 access/transam/xlogutils.c:831 -#: replication/walsender.c:3045 +#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: replication/walsender.c:3074 #, 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:4061 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "no se pudo renombrar el archivo «%s»: %m" -#: access/transam/xlog.c:4104 access/transam/xlog.c:4115 -#: access/transam/xlog.c:4136 +#: 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 "no existe el directorio WAL «%s»" -#: access/transam/xlog.c:4121 access/transam/xlog.c:4142 +#: access/transam/xlog.c:4123 access/transam/xlog.c:4144 #, c-format msgid "creating missing WAL directory \"%s\"" msgstr "creando el directorio WAL faltante «%s»" -#: access/transam/xlog.c:4125 access/transam/xlog.c:4145 -#: commands/dbcommands.c:3262 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 +#: commands/dbcommands.c:3301 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "no se pudo crear el directorio faltante «%s»: %m" -#: access/transam/xlog.c:4212 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "no se pudo generar un token de autorización secreto" -#: access/transam/xlog.c:4363 access/transam/xlog.c:4373 -#: access/transam/xlog.c:4399 access/transam/xlog.c:4407 -#: access/transam/xlog.c:4415 access/transam/xlog.c:4421 -#: access/transam/xlog.c:4429 access/transam/xlog.c:4437 -#: access/transam/xlog.c:4445 access/transam/xlog.c:4453 -#: access/transam/xlog.c:4461 access/transam/xlog.c:4469 -#: access/transam/xlog.c:4479 access/transam/xlog.c:4487 -#: utils/init/miscinit.c:1812 +#: 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 "los archivos de base de datos son incompatibles con el servidor" -#: access/transam/xlog.c:4364 +#: 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 "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:4368 +#: 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 "Este puede ser un problema de discordancia en el orden de bytes. Parece que necesitará ejecutar initdb." -#: access/transam/xlog.c:4374 +#: 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 "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:4377 access/transam/xlog.c:4403 -#: access/transam/xlog.c:4411 access/transam/xlog.c:4417 +#: 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 "Parece que necesita ejecutar initdb." -#: access/transam/xlog.c:4389 +#: access/transam/xlog.c:4418 #, c-format msgid "incorrect checksum in control file" msgstr "la suma de verificación es incorrecta en el archivo de control" -#: access/transam/xlog.c:4400 -#, c-format -msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d." -msgstr "Los archivos de base de datos fueron inicializados con CATALOG_VERSION_NO %d, pero el servidor fue compilado con CATALOG_VERSION_NO %d." - -#: access/transam/xlog.c:4408 -#, c-format -msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d." -msgstr "Los archivos de la base de datos fueron inicializados con MAXALIGN %d, pero el servidor fue compilado con MAXALIGN %d." +#. 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." +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." -#: access/transam/xlog.c:4416 +#: 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 "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:4422 -#, c-format -msgid "The database cluster was initialized with BLCKSZ %d, but the server was compiled with BLCKSZ %d." -msgstr "Los archivos de base de datos fueron inicializados con BLCKSZ %d, pero el servidor fue compilado con BLCKSZ %d." - -#: access/transam/xlog.c:4425 access/transam/xlog.c:4433 -#: access/transam/xlog.c:4441 access/transam/xlog.c:4449 -#: access/transam/xlog.c:4457 access/transam/xlog.c:4465 -#: access/transam/xlog.c:4473 access/transam/xlog.c:4482 -#: access/transam/xlog.c:4490 +#: 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 "Parece que necesita recompilar o ejecutar initdb." -#: access/transam/xlog.c:4430 -#, c-format -msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d." -msgstr "Los archivos de la base de datos fueron inicializados con RELSEG_SIZE %d, pero el servidor fue compilado con RELSEG_SIZE %d." - -#: access/transam/xlog.c:4438 -#, c-format -msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d." -msgstr "Los archivos de base de datos fueron inicializados con XLOG_BLCKSZ %d, pero el servidor fue compilado con XLOG_BLCKSZ %d." - -#: access/transam/xlog.c:4446 -#, c-format -msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d." -msgstr "Los archivos de la base de datos fueron inicializados con NAMEDATALEN %d, pero el servidor fue compilado con NAMEDATALEN %d." - -#: access/transam/xlog.c:4454 -#, c-format -msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d." -msgstr "Los archivos de la base de datos fueron inicializados con INDEX_MAX_KEYS %d, pero el servidor fue compilado con INDEX_MAX_KEYS %d." - -#: access/transam/xlog.c:4462 -#, 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 "Los archivos de la base de datos fueron inicializados con TOAST_MAX_CHUNK_SIZE %d, pero el servidor fue compilado con TOAST_MAX_CHUNK_SIZE %d." - -#: access/transam/xlog.c:4470 -#, c-format -msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d." -msgstr "Los archivos de base de datos fueron inicializados con LOBLKSIZE %d, pero el servidor fue compilado con LOBLKSIZE %d." - -#: access/transam/xlog.c:4480 +#: 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 "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:4488 +#: 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 "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:4497 +#: 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)" 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" -#: access/transam/xlog.c:4510 -#, c-format -msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "«min_wal_size» debe ser al menos el doble de «wal_segment_size»" - -#: access/transam/xlog.c:4514 -#, c-format -msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "«max_wal_size» debe ser al menos el doble de «wal_segment_size»" +#. 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" +msgid "\"%s\" must be at least twice \"%s\"" +msgstr "%s debe ser menor que %s" -#: access/transam/xlog.c:4662 catalog/namespace.c:4696 -#: 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:4696 +#: 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 #, c-format msgid "List syntax is invalid." msgstr "La sintaxis de lista no es válida." -#: access/transam/xlog.c:4708 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 "Palabra clave no reconocida: «%s»." -#: access/transam/xlog.c:5129 +#: access/transam/xlog.c:5195 #, 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:5137 +#: access/transam/xlog.c:5203 #, 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:5143 +#: access/transam/xlog.c:5209 #, 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:5368 +#: access/transam/xlog.c:5434 #, 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:5369 +#: access/transam/xlog.c:5435 #, 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:5370 +#: access/transam/xlog.c:5436 #, 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:5435 +#: access/transam/xlog.c:5501 #, 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:5446 +#: access/transam/xlog.c:5512 #, 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:5452 +#: access/transam/xlog.c:5518 #, 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:5458 +#: access/transam/xlog.c:5524 #, 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:5464 +#: access/transam/xlog.c:5530 #, 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:5466 +#: 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 "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:5472 +#: access/transam/xlog.c:5538 #, 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:5474 +#: 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 "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:5480 +#: access/transam/xlog.c:5546 #, 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:5487 +#: access/transam/xlog.c:5553 #, 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:5875 +#: access/transam/xlog.c:5941 #, 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:5876 +#: access/transam/xlog.c:5942 #, 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:5880 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL termina antes del punto de recuperación consistente" -#: access/transam/xlog.c:5926 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "seleccionado nuevo ID de timeline: %u" -#: access/transam/xlog.c:5959 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "recuperación completa" -#: access/transam/xlog.c:6612 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "apagando" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6651 +#: access/transam/xlog.c:6693 #, 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:6663 +#: access/transam/xlog.c:6705 #, 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:6728 -#, 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: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" +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" -#: access/transam/xlog.c:6751 -#, 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: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" +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" -#: access/transam/xlog.c:7233 +#: access/transam/xlog.c:7280 #, 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:7818 +#: 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:7820 +#: 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:8082 +#: 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:8289 +#: 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:8347 +#: 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:8405 +#: 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:8434 +#: 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:8705 +#: 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:8710 +#: 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:8797 access/transam/xlog.c:9133 +#: 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:8798 access/transam/xlogfuncs.c:248 +#: 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:8803 +#: 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:8924 +#: 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:8926 access/transam/xlog.c:9222 +#: 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:9006 backup/basebackup.c:1417 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:9013 backup/basebackup.c:1422 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:9134 -#, 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:9172 backup/basebackup.c:1281 +#: 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:9173 backup/basebackup.c:1282 +#: 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:9220 +#: 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:9336 +#: 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:9350 +#: 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:9352 +#: 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:9359 +#: 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:9363 +#: 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:9402 +#: 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" @@ -3004,277 +3001,279 @@ msgstr "no se pudo crear el archivo de estado «%s»: %m" msgid "could not write archive status file \"%s\": %m" msgstr "no se pudo escribir el archivo de estado «%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 "ya hay un respaldo en curso en esta sesión" -#: access/transam/xlogfuncs.c:140 +#: access/transam/xlogfuncs.c:141 #, c-format msgid "backup is not in progress" msgstr "no hay respaldo en curso" -#: access/transam/xlogfuncs.c:141 +#: access/transam/xlogfuncs.c:142 #, c-format msgid "Did you call pg_backup_start()?" msgstr "¿Invocó 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 "Las funciones de control de WAL no pueden ejecutarse durante la recuperación." -#: 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 "No se puede ejecutar %s durante la recuperación." -#: 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() sólo puede usarse si «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 "el nivel de WAL no es suficiente para crear un punto de recuperación" -#: access/transam/xlogfuncs.c:255 +#: access/transam/xlogfuncs.c:256 #, c-format msgid "value too long for restore point (maximum %d characters)" msgstr "el valor es demasiado largo para un punto de recuperación (máximo %d caracteres)" -#: access/transam/xlogfuncs.c:486 +#: access/transam/xlogfuncs.c:487 #, c-format msgid "invalid WAL file name \"%s\"" msgstr "nombre de archivo WAL «%s» no válido" -#: 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 "la recuperación no está en proceso" -#: 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 "Las funciones de control de recuperación sólo pueden ejecutarse durante la recuperación." -#: 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 "la promoción del standby está en curso" -#: 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 no puede ser ejecutado después que una promoción es solicitada." -#: access/transam/xlogfuncs.c:685 +#: access/transam/xlogfuncs.c:686 #, c-format msgid "\"wait_seconds\" must not be negative or zero" msgstr "«wait_seconds» no puede ser negativo o cero" -#: 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 "no se pudo enviar señal a 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 "terminando la conexión debido al término inesperado de postmaster" -#: access/transam/xlogfuncs.c:740 +#: access/transam/xlogfuncs.c:741 #, c-format msgid "while waiting on promotion" msgstr "mientras se esperaba la promoción" -#: 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" msgstr[0] "el servidor no se promovió en %d segundo" msgstr[1] "el servidor no se promovió en %d segundos" -#: access/transam/xlogprefetcher.c:1088 -#, c-format -msgid "\"recovery_prefetch\" is not supported on platforms that lack posix_fadvise()." +#: access/transam/xlogprefetcher.c:1086 +#, fuzzy, c-format +#| msgid "\"recovery_prefetch\" is not supported on platforms that lack posix_fadvise()." +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()." -#: 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 "desplazamiento de registro no válido en %X/%X: se esperaba al menos %u, se obtuvo %u" -#: access/transam/xlogreader.c:628 +#: access/transam/xlogreader.c:629 #, c-format msgid "contrecord is requested by %X/%X" msgstr "contrecord solicitado por %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 "largo de registro no válido en %X/%X: se esperaba al menos %u, se obtuvo %u" -#: access/transam/xlogreader.c:758 +#: access/transam/xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" msgstr "no hay bandera de contrecord en %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 "largo de contrecord %u no válido (se esperaba %lld) en %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 de gestor de recursos %u no válido en %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 "registro con prev-link %X/%X incorrecto en %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 "suma de verificación de los datos del gestor de recursos incorrecta en el registro en %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 "número mágico %04X no válido en segmento WAL %s, LSN %X/%X, posición %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 "info bits %04X no válidos en segment WAL %s, LSN %X/%X, posición %u" -#: access/transam/xlogreader.c:1274 -#, c-format -msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" +#: access/transam/xlogreader.c:1285 +#, fuzzy, c-format +#| msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" +msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" -#: 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 "archivo WAL es de un sistema de bases de datos distinto: tamaño de segmento incorrecto en cabecera de paǵina" -#: 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 "archivo WAL es de un sistema de bases de datos distinto: XLOG_BLCKSZ incorrecto en cabecera de paǵina" -#: 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 inesperado en segmento WAL %s, LSN %X/%X, posición %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 de timeline %u fuera de secuencia (después de %u) en segmento WAL %s, LSN %X/%X, posición %u" -#: access/transam/xlogreader.c:1749 +#: access/transam/xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "block_id %u fuera de orden en %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 está definido, pero no hay datos en %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 no está definido, pero el largo de los datos es %u en %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 está definido, pero posición del agujero es %u largo %u largo de imagen %u en %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 no está definido, pero posición del agujero es %u largo %u en %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 definido, pero largo de imagen de bloque es %u en %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 "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_COMPRESSED están definidos, pero el largo de imagen de bloque es %u en %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 está definido, pero no hay «rel» anterior en %X/%X " -#: access/transam/xlogreader.c:1889 +#: access/transam/xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "block_id %u no válido en %X/%X" -#: access/transam/xlogreader.c:1956 +#: access/transam/xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "registro con largo no válido en %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 "no se pudo localizar un bloque de respaldo con ID %d en el registro 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 "no se pudo restaurar la imagen en %X/%X con bloque especifica %d no válido" -#: 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 "no se pudo restaurar la imagen en %X/%X con estado no válido, bloque %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 "no se pudo restaurar la imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %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 "no se pudo restaurar la imagen en %X/%X comprimida con un método desconocido, bloque %d" -#: access/transam/xlogreader.c:2134 +#: access/transam/xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %d" -#: access/transam/xlogrecovery.c:617 +#: access/transam/xlogrecovery.c:623 #, c-format msgid "starting backup recovery with redo LSN %X/%X, checkpoint LSN %X/%X, on timeline ID %u" msgstr "iniciando recuperación de backup con LSN de redo %X/%X, LSN de checkpoint %X/%X, en timeline %u" -#: access/transam/xlogrecovery.c:649 +#: access/transam/xlogrecovery.c:655 #, c-format msgid "could not find redo location %X/%X referenced by checkpoint record at %X/%X" msgstr "no se pudo encontrar la ubicación de redo %X/%X referida por el registro de checkpoint en %X/%X" # Purposefully deviate from quoting convention here, since argument is a shell command. -#: access/transam/xlogrecovery.c:651 access/transam/xlogrecovery.c:662 +#: access/transam/xlogrecovery.c:657 access/transam/xlogrecovery.c:668 #, c-format msgid "" "If you are restoring from a backup, touch \"%s/recovery.signal\" or \"%s/standby.signal\" and add required recovery options.\n" @@ -3285,467 +3284,470 @@ msgstr "" "Si no está restaurando de un respaldo, intente eliminar el archivo \"%s/backup_label\".\n" "Tenga cuidado: eliminar \"%s/backup_label\" resultará en un clúster corrupto si está restaurando de un respaldo." -#: access/transam/xlogrecovery.c:660 +#: access/transam/xlogrecovery.c:666 #, c-format msgid "could not locate required checkpoint record at %X/%X" msgstr "no se pudo localizar el registro de checkpoint requerido en %X/%X" -#: access/transam/xlogrecovery.c:690 commands/tablespace.c:664 +#: access/transam/xlogrecovery.c:696 commands/tablespace.c:664 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "no se pudo crear el enlace simbólico «%s»: %m" -#: access/transam/xlogrecovery.c:723 access/transam/xlogrecovery.c:729 +#: access/transam/xlogrecovery.c:729 access/transam/xlogrecovery.c:735 #, c-format msgid "ignoring file \"%s\" because no file \"%s\" exists" msgstr "ignorando el archivo «%s» porque no existe un archivo «%s»" -#: access/transam/xlogrecovery.c:725 +#: access/transam/xlogrecovery.c:731 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "El archivo «%s» fue renombrado a «%s»." -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:737 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "No se pudo renombrar el archivo de «%s» a «%s»: %m." -#: access/transam/xlogrecovery.c:770 +#: access/transam/xlogrecovery.c:776 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "reiniciando recuperación del backup con LSN de redo «%X/%X»" -#: access/transam/xlogrecovery.c:795 +#: access/transam/xlogrecovery.c:801 #, c-format 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:806 +#: access/transam/xlogrecovery.c:812 #, c-format msgid "entering standby mode" msgstr "entrando al modo standby" -#: access/transam/xlogrecovery.c:809 +#: access/transam/xlogrecovery.c:815 #, 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:813 +#: access/transam/xlogrecovery.c:819 #, c-format msgid "starting point-in-time recovery to %s" msgstr "comenzando el proceso de recuperación hasta %s" -#: access/transam/xlogrecovery.c:817 +#: access/transam/xlogrecovery.c:823 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "comenzando el proceso de recuperación hasta «%s»" -#: access/transam/xlogrecovery.c:821 +#: access/transam/xlogrecovery.c:827 #, 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:825 +#: access/transam/xlogrecovery.c:831 #, 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:828 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting archive recovery" msgstr "comenzando proceso de recuperación" -#: access/transam/xlogrecovery.c:849 +#: access/transam/xlogrecovery.c:855 #, 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" -#: access/transam/xlogrecovery.c:851 -#, 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." +#. translator: %s is a backup_label file or a pg_control file +#: access/transam/xlogrecovery.c:858 +#, 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." +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." -#: access/transam/xlogrecovery.c:865 +#: access/transam/xlogrecovery.c:873 #, 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:893 +#: access/transam/xlogrecovery.c:901 #, c-format msgid "invalid next transaction ID" msgstr "el siguiente ID de transacción no es válido" -#: access/transam/xlogrecovery.c:898 +#: access/transam/xlogrecovery.c:906 #, c-format msgid "invalid redo in checkpoint record" msgstr "redo no es válido en el registro de checkpoint" -#: access/transam/xlogrecovery.c:909 +#: access/transam/xlogrecovery.c:917 #, 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:938 +#: access/transam/xlogrecovery.c:946 #, 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:942 +#: access/transam/xlogrecovery.c:950 #, 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:985 +#: access/transam/xlogrecovery.c:993 #, 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:986 +#: access/transam/xlogrecovery.c:994 #, 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:1040 +#: access/transam/xlogrecovery.c:1048 #, 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:1105 +#: access/transam/xlogrecovery.c:1113 #, 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:1122 +#: access/transam/xlogrecovery.c:1130 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "no se especifica «primary_conninfo» ni «restore_command»" -#: access/transam/xlogrecovery.c:1123 +#: access/transam/xlogrecovery.c:1131 #, 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:1131 +#: access/transam/xlogrecovery.c:1139 #, 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:1169 +#: access/transam/xlogrecovery.c:1177 #, 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: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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "datos no válidos en archivo «%s»" -#: access/transam/xlogrecovery.c:1319 +#: access/transam/xlogrecovery.c:1327 #, 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:1330 +#: access/transam/xlogrecovery.c:1338 #, 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:1331 +#: access/transam/xlogrecovery.c:1339 #, 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:1717 +#: access/transam/xlogrecovery.c:1725 #, 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:1740 +#: access/transam/xlogrecovery.c:1748 #, c-format msgid "redo starts at %X/%X" msgstr "redo comienza en %X/%X" -#: access/transam/xlogrecovery.c:1753 +#: access/transam/xlogrecovery.c:1761 #, 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:1843 +#: access/transam/xlogrecovery.c:1851 #, 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:1875 +#: access/transam/xlogrecovery.c:1883 #, 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:1881 +#: access/transam/xlogrecovery.c:1889 #, 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:1890 +#: access/transam/xlogrecovery.c:1898 #, c-format msgid "redo is not required" msgstr "no se requiere redo" -#: access/transam/xlogrecovery.c:1901 +#: access/transam/xlogrecovery.c:1910 #, 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:2095 +#: access/transam/xlogrecovery.c:2104 #, 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:2162 +#: access/transam/xlogrecovery.c:2171 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "entrada de directorio inesperada «%s» fue encontrada en %s" -#: access/transam/xlogrecovery.c:2164 -#, c-format -msgid "All directory entries in pg_tblspc/ should be symbolic links." +#: access/transam/xlogrecovery.c:2173 +#, fuzzy, c-format +#| msgid "All directory entries in pg_tblspc/ should be symbolic links." +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" -#: access/transam/xlogrecovery.c:2165 +#: access/transam/xlogrecovery.c:2175 #, 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:2217 +#: access/transam/xlogrecovery.c:2227 #, 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:2247 +#: access/transam/xlogrecovery.c:2258 #, 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:2285 +#: access/transam/xlogrecovery.c:2296 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "redo WAL en %X/%X para %s" -#: access/transam/xlogrecovery.c:2383 +#: access/transam/xlogrecovery.c:2394 #, 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:2392 +#: access/transam/xlogrecovery.c:2403 #, 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:2408 +#: access/transam/xlogrecovery.c:2419 #, 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:2592 access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 #, c-format msgid "recovery stopping after reaching consistency" msgstr "deteniendo recuperación al alcanzar un estado consistente" -#: access/transam/xlogrecovery.c:2613 +#: access/transam/xlogrecovery.c:2624 #, 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:2703 +#: access/transam/xlogrecovery.c:2714 #, 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:2710 +#: access/transam/xlogrecovery.c:2721 #, 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:2763 +#: access/transam/xlogrecovery.c:2774 #, 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:2781 +#: access/transam/xlogrecovery.c:2792 #, 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:2848 +#: access/transam/xlogrecovery.c:2859 #, 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:2856 +#: access/transam/xlogrecovery.c:2867 #, 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:2937 +#: access/transam/xlogrecovery.c:2948 #, c-format msgid "pausing at the end of recovery" msgstr "pausando al final de la recuperación" -#: access/transam/xlogrecovery.c:2938 +#: access/transam/xlogrecovery.c:2949 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Ejecute pg_wal_replay_resume() para promover." -#: access/transam/xlogrecovery.c:2941 access/transam/xlogrecovery.c:4679 +#: access/transam/xlogrecovery.c:2952 access/transam/xlogrecovery.c:4698 #, c-format msgid "recovery has paused" msgstr "la recuperación está en pausa" -#: access/transam/xlogrecovery.c:2942 +#: access/transam/xlogrecovery.c:2953 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Ejecute pg_wal_replay_resume() para continuar." -#: access/transam/xlogrecovery.c:3205 +#: access/transam/xlogrecovery.c:3216 #, 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:3413 +#: access/transam/xlogrecovery.c:3432 #, 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:3420 +#: access/transam/xlogrecovery.c:3439 #, 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:4061 +#: access/transam/xlogrecovery.c:4082 #, c-format msgid "invalid checkpoint location" msgstr "ubicación de checkpoint no válida" -#: access/transam/xlogrecovery.c:4071 +#: access/transam/xlogrecovery.c:4092 #, c-format msgid "invalid checkpoint record" msgstr "el registro del checkpoint no es válido" -#: access/transam/xlogrecovery.c:4077 +#: access/transam/xlogrecovery.c:4098 #, 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:4085 +#: access/transam/xlogrecovery.c:4106 #, 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:4091 +#: access/transam/xlogrecovery.c:4112 #, c-format msgid "invalid length of checkpoint record" msgstr "la longitud del registro de checkpoint no es válida" -#: access/transam/xlogrecovery.c:4145 +#: access/transam/xlogrecovery.c:4166 #, 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:4159 +#: access/transam/xlogrecovery.c:4180 #, 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:4178 +#: access/transam/xlogrecovery.c:4199 #, c-format msgid "new target timeline is %u" msgstr "el nuevo timeline destino es %u" -#: access/transam/xlogrecovery.c:4381 +#: access/transam/xlogrecovery.c:4400 #, 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:4441 +#: access/transam/xlogrecovery.c:4460 #, c-format msgid "received promote request" msgstr "se recibió petición de promoción" -#: access/transam/xlogrecovery.c:4670 +#: access/transam/xlogrecovery.c:4689 #, 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:4671 access/transam/xlogrecovery.c:4698 -#: access/transam/xlogrecovery.c:4728 +#: access/transam/xlogrecovery.c:4690 access/transam/xlogrecovery.c:4717 +#: access/transam/xlogrecovery.c:4747 #, 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:4680 +#: access/transam/xlogrecovery.c:4699 #, 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:4681 +#: access/transam/xlogrecovery.c:4700 #, 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:4692 +#: access/transam/xlogrecovery.c:4711 #, 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:4702 +#: access/transam/xlogrecovery.c:4721 #, 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:4726 +#: access/transam/xlogrecovery.c:4745 #, 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:4732 +#: access/transam/xlogrecovery.c:4751 #, 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:4774 +#: access/transam/xlogrecovery.c:4792 #, c-format msgid "multiple recovery targets specified" msgstr "múltiples valores de destino de recuperación especificados" -#: access/transam/xlogrecovery.c:4775 +#: access/transam/xlogrecovery.c:4793 #, 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:4786 +#: access/transam/xlogrecovery.c:4804 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "El único valor permitido es «immediate»." -#: access/transam/xlogrecovery.c:4938 utils/adt/timestamp.c:202 -#: utils/adt/timestamp.c:455 -#, c-format -msgid "timestamp out of range: \"%s\"" +#: access/transam/xlogrecovery.c:4958 +#, fuzzy, c-format +#| msgid "timestamp out of range: \"%s\"" +msgid "Timestamp out of range: \"%s\"." msgstr "timestamp fuera de rango: «%s»" -#: access/transam/xlogrecovery.c:4983 +#: access/transam/xlogrecovery.c:5003 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "«recovery_target_timeline» no es un número válido." -#: access/transam/xlogutils.c:1032 +#: access/transam/xlogutils.c:1023 #, c-format msgid "could not read from WAL segment %s, offset %d: %m" msgstr "no se pudo leer desde el segmento de WAL %s, posición %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 "no se pudo leer del segmento de WAL %s, posición %d: leídos %d de %d" @@ -3766,7 +3768,7 @@ msgstr "La orden fallida era: «%s»" msgid "archive command was terminated by exception 0x%X" msgstr "la orden de archivado fue terminada por una excepción 0x%X" -#: archive/shell_archive.c:109 postmaster/postmaster.c:3095 +#: 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 "Vea el archivo «ntstatus.h» para una descripción del valor hexadecimal." @@ -3781,165 +3783,165 @@ msgstr "la orden de archivado fue terminada por una señal %d: %s" msgid "archive command exited with unrecognized status %d" msgstr "la orden de archivado fue terminada con código %d no reconocido" -#: backup/backup_manifest.c:254 +#: backup/backup_manifest.c:255 #, c-format msgid "expected end timeline %u but found timeline %u" msgstr "se esperaba el timeline de término %u pero se encontró el timeline %u" -#: backup/backup_manifest.c:278 +#: backup/backup_manifest.c:279 #, c-format msgid "expected start timeline %u but found timeline %u" msgstr "se esperaba el timeline de inicio %u pero se encontró el timeline %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 "el timeline de inicio %u no fue encontrado en la historia del timeline %u" -#: backup/backup_manifest.c:356 +#: backup/backup_manifest.c:357 #, c-format msgid "could not rewind temporary file" msgstr "no se puede rebobinar el archivo temporal" -#: backup/basebackup.c:479 +#: backup/basebackup.c:481 #, c-format msgid "could not find any WAL files" msgstr "no se pudo encontrar ningún archivo de 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 "no se pudo encontrar archivo de 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 "tamaño del archivo WAL «%s» inesperado" -#: backup/basebackup.c:656 +#: backup/basebackup.c:658 #, c-format msgid "%lld total checksum verification failure" msgid_plural "%lld total checksum verification failures" msgstr[0] "%lld falla de verificación de suma de comprobación en total" msgstr[1] "%lld fallas de verificación de suma de comprobación en total" -#: backup/basebackup.c:663 +#: backup/basebackup.c:665 #, c-format msgid "checksum verification failure during base backup" msgstr "falla en verificación de checksums durante respaldo base" -#: 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 "nombre de opción «%s» duplicada" -#: backup/basebackup.c:761 +#: backup/basebackup.c:763 #, c-format msgid "unrecognized checkpoint type: \"%s\"" msgstr "tipo de checkpoint no reconocido: «%s»" -#: backup/basebackup.c:793 +#: backup/basebackup.c:795 #, c-format msgid "incremental backups cannot be taken unless WAL summarization is enabled" msgstr "los backups incrementales no pueden tomarse a menos que la sumarización de WAL esté activada" -#: backup/basebackup.c:809 +#: backup/basebackup.c:811 #, c-format msgid "%d is outside the valid range for parameter \"%s\" (%d .. %d)" msgstr "%d está fuera del rango aceptable para el parámetro «%s» (%d .. %d)" -#: backup/basebackup.c:854 +#: backup/basebackup.c:856 #, c-format msgid "unrecognized manifest option: \"%s\"" msgstr "opción de manifiesto «%s» no reconocida" -#: backup/basebackup.c:905 +#: backup/basebackup.c:907 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "algoritmo de compresión no reconocido: «%s»" -#: backup/basebackup.c:921 +#: backup/basebackup.c:923 #, c-format msgid "unrecognized base backup option: \"%s\"" msgstr "opción de respaldo base no reconocida: «%s»" -#: backup/basebackup.c:932 +#: backup/basebackup.c:934 #, c-format msgid "manifest checksums require a backup manifest" msgstr "la suma de comprobación del manifiesto requiere un manifiesto de la copia de seguridad" -#: backup/basebackup.c:941 +#: backup/basebackup.c:943 #, c-format msgid "target detail cannot be used without target" msgstr "no se puede usar “target detail” sin un destino" -#: 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 "el destino «%s» no acepta “target details”" -#: backup/basebackup.c:961 +#: backup/basebackup.c:963 #, c-format msgid "compression detail cannot be specified unless compression is enabled" msgstr "el detalle de compresión no puede especificarse a menos que la compresión esté activada" -#: backup/basebackup.c:974 +#: backup/basebackup.c:976 #, c-format msgid "invalid compression specification: %s" msgstr "especificación de compresión no válida: %s" -#: backup/basebackup.c:1024 +#: backup/basebackup.c:1026 #, c-format msgid "must UPLOAD_MANIFEST before performing an incremental BASE_BACKUP" msgstr "debe ejecutar UPLOAD_MANIFEST antes de lanzar un BASE_BACKUP incremental" -#: 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 "no se pudo hacer stat al archivo o directorio «%s»: %m" -#: backup/basebackup.c:1544 +#: backup/basebackup.c:1546 #, c-format msgid "skipping special file \"%s\"" msgstr "omitiendo el archivo especial «%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 "no se pudo verificar el checksum en el archivo «%s», bloque %u: el tamaño de búfer de lectura %d y el tamaño de página %d difieren" -#: 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" msgstr[0] "el archivo «%s» tiene un total de %d falla de verificación de checksum" msgstr[1] "el archivo «%s» tiene un total de %d fallas de verificación de checksums" -#: 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 "verificación de checksums falló en archivo «%s», bloque %u: calculado %X pero se esperaba %X" -#: backup/basebackup.c:1924 +#: backup/basebackup.c:1927 #, c-format msgid "further checksum verification failures in file \"%s\" will not be reported" msgstr "subsiguientes fallas de verificación de checksums en el archivo «%s» no se reportarán" -#: backup/basebackup.c:2048 +#: backup/basebackup.c:2052 #, c-format msgid "file name too long for tar format: \"%s\"" msgstr "nombre de archivo demasiado largo para el formato 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 "destino de enlace simbólico demasiado largo para el formato tar: nombre de archivo «%s», destino «%s»" -#: backup/basebackup.c:2127 +#: backup/basebackup.c:2132 #, c-format msgid "could not read file \"%s\": read %zd of %zu" msgstr "no se pudo leer el archivo «%s»: leídos %zd de %zu" @@ -3954,64 +3956,65 @@ msgstr "la compresión gzip no está soportada en este servidor" msgid "could not initialize compression library" msgstr "no se pudo inicializar la biblioteca de compresión" -#: backup/basebackup_incremental.c:294 +#: backup/basebackup_incremental.c:292 #, c-format msgid "manifest contains no required WAL ranges" msgstr "el manifiesto no contiene ningún rango WAL requerido" -#: 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 "el timeline %u fue encontrado en el manifiesto, pero no en la historia de este servidor" -#: 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 "el manifiesto requiere WAL en el timeline inicial %u desde %X/%X, pero ese timeline inicia en %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 "el manifiesto requiere WAL del timeline de continuación %u desde %X/%X, pero ese timeline empieza en %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 "el manifiesto requiere WAL del timeline final %u terminado en %X/%X, pero este backup empieza en %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 "Esto puede pasar para backups incrementales en un standby si hubo insuficiente actividad desde el backup anterior." -#: 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 "el manifiesto requiere WAL del timeline no-final %u terminando en %X/%X, pero este servidor cambió de timelines en %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 "se requieren sumarizaciones de WAL en el timeline %u desde %X/%X hasta %X/%X, pero no existen sumarizaciones para ese timeline y rango de 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 "se requieren sumarizaciones de WAL en el timeline %u desde %X/%X hasta %X/%X, pero las sumarizaciones en ese timeline y rango de LSN están incompletos" -#: backup/basebackup_incremental.c:538 +#: backup/basebackup_incremental.c:536 #, c-format 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:938 +#: backup/basebackup_incremental.c:934 #, 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:956 -#, c-format -msgid "system identifier in backup manifest is %llu, but database system identifier is %llu" +#: backup/basebackup_incremental.c:952 +#, fuzzy, c-format +#| msgid "system identifier in backup manifest is %llu, but database system identifier is %llu" +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" #: backup/basebackup_lz4.c:67 @@ -4034,10 +4037,10 @@ msgstr "Sólo los roles con privilegio del rol «%s» pueden crear un respaldo a msgid "relative path not allowed for backup stored on server" msgstr "no se permiten rutas relativas para un respaldo almacenado en el servidor" -#: 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:2233 +#: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "no se pudo crear el directorio «%s»: %m" @@ -4047,15 +4050,15 @@ msgstr "no se pudo crear el directorio «%s»: %m" msgid "directory \"%s\" exists but is not empty" msgstr "el directorio «%s» existe pero no está vacío" -#: backup/basebackup_server.c:123 utils/init/postinit.c:1178 +#: backup/basebackup_server.c:123 utils/init/postinit.c:1160 #, c-format msgid "could not access directory \"%s\": %m" 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: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 "Verifique el espacio libre en disco." @@ -4092,27 +4095,34 @@ msgid "could not enable long-distance mode: %s" msgstr "no se pudo habilitar el modo “long-distance”: %s" #: backup/walsummaryfuncs.c:95 -#, c-format -msgid "invalid timeline %lld" +#, fuzzy, c-format +#| msgid "invalid timeline %lld" +msgid "invalid timeline %" msgstr "timeline %lld no válido" -#: bootstrap/bootstrap.c:239 postmaster/postmaster.c:623 tcop/postgres.c:3946 +#: bootstrap/bootstrap.c:239 postmaster/postmaster.c:626 tcop/postgres.c:3858 +#, fuzzy, c-format +#| msgid "%s must be positive" +msgid "--%s must be first argument" +msgstr "%s debe ser positivo" + +#: bootstrap/bootstrap.c:253 postmaster/postmaster.c:640 tcop/postgres.c:3872 #, c-format msgid "--%s requires a value" msgstr "--%s requiere un valor" -#: 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 requiere un valor" -#: 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 "Pruebe «%s --help» para mayor información.\n" -#: bootstrap/bootstrap.c:291 +#: bootstrap/bootstrap.c:305 #, c-format msgid "%s: invalid command-line arguments\n" msgstr "%s: argumentos de línea de órdenes no válidos\n" @@ -4167,12 +4177,12 @@ msgstr "no todos los privilegios pudieron ser revocados para «%s»" msgid "grantor must be current user" msgstr "el cedente (grantor) debe ser el usuario actual" -#: catalog/aclchk.c:480 catalog/aclchk.c:1055 +#: catalog/aclchk.c:480 catalog/aclchk.c:996 #, c-format msgid "invalid privilege type %s for relation" msgstr "el tipo de privilegio %s no es válido para una relación" -#: catalog/aclchk.c:484 catalog/aclchk.c:1059 +#: catalog/aclchk.c:484 catalog/aclchk.c:1000 #, c-format msgid "invalid privilege type %s for sequence" msgstr "el tipo de privilegio %s no es válido para una secuencia" @@ -4187,7 +4197,7 @@ msgstr "el tipo de privilegio %s no es válido para una base de datos" msgid "invalid privilege type %s for domain" msgstr "el tipo de privilegio %s no es válido para un dominio" -#: catalog/aclchk.c:496 catalog/aclchk.c:1063 +#: catalog/aclchk.c:496 catalog/aclchk.c:1004 #, c-format msgid "invalid privilege type %s for function" msgstr "el tipo de privilegio %s no es válido para una función" @@ -4197,22 +4207,22 @@ msgstr "el tipo de privilegio %s no es válido para una función" msgid "invalid privilege type %s for language" msgstr "el tipo de privilegio %s no es válido para un lenguaje" -#: catalog/aclchk.c:504 +#: catalog/aclchk.c:504 catalog/aclchk.c:1024 #, c-format msgid "invalid privilege type %s for large object" msgstr "el tipo de privilegio %s no es válido para un objeto grande" -#: catalog/aclchk.c:508 catalog/aclchk.c:1079 +#: catalog/aclchk.c:508 catalog/aclchk.c:1020 #, c-format msgid "invalid privilege type %s for schema" msgstr "el tipo de privilegio %s no es válido para un esquema" -#: catalog/aclchk.c:512 catalog/aclchk.c:1067 +#: catalog/aclchk.c:512 catalog/aclchk.c:1008 #, c-format msgid "invalid privilege type %s for procedure" msgstr "el tipo de privilegio %s no es válido para un procedimiento" -#: catalog/aclchk.c:516 catalog/aclchk.c:1071 +#: catalog/aclchk.c:516 catalog/aclchk.c:1012 #, c-format msgid "invalid privilege type %s for routine" msgstr "el tipo de privilegio %s no es válido para una rutina" @@ -4222,7 +4232,7 @@ msgstr "el tipo de privilegio %s no es válido para una rutina" msgid "invalid privilege type %s for tablespace" msgstr "el tipo de privilegio %s no es válido para un tablespace" -#: catalog/aclchk.c:524 catalog/aclchk.c:1075 +#: catalog/aclchk.c:524 catalog/aclchk.c:1016 #, c-format msgid "invalid privilege type %s for type" msgstr "el tipo de privilegio %s no es válido para un tipo" @@ -4247,534 +4257,535 @@ msgstr "el tipo de privilegio %s no es válido para un parámetro" msgid "column privileges are only valid for relations" msgstr "los privilegios de columna son sólo válidos para relaciones" -#: catalog/aclchk.c:738 catalog/aclchk.c:3629 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 "no existe el objeto grande %u" - -#: catalog/aclchk.c:1112 +#: catalog/aclchk.c:1057 #, c-format msgid "default privileges cannot be set for columns" msgstr "los privilegios por omisión no pueden definirse para columnas" -#: catalog/aclchk.c:1148 +#: catalog/aclchk.c:1093 #, c-format msgid "permission denied to change default privileges" msgstr "se ha denegado el permiso para cambiar los privilegios por omisión" -#: catalog/aclchk.c:1266 +#: catalog/aclchk.c:1211 #, 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:1617 catalog/catalog.c:659 catalog/objectaddress.c:1523 -#: catalog/pg_publication.c:528 commands/analyze.c:380 commands/copy.c:951 -#: commands/sequence.c:1655 commands/tablecmds.c:7541 commands/tablecmds.c:7695 -#: commands/tablecmds.c:7745 commands/tablecmds.c:7819 -#: commands/tablecmds.c:7889 commands/tablecmds.c:8019 -#: commands/tablecmds.c:8148 commands/tablecmds.c:8242 -#: commands/tablecmds.c:8343 commands/tablecmds.c:8470 -#: commands/tablecmds.c:8500 commands/tablecmds.c:8642 -#: commands/tablecmds.c:8735 commands/tablecmds.c:8869 -#: commands/tablecmds.c:8981 commands/tablecmds.c:12797 -#: commands/tablecmds.c:12989 commands/tablecmds.c:13150 -#: commands/tablecmds.c:14339 commands/tablecmds.c:16966 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:2812 +#: 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" + +#: 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: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:3662 +#: parser/parse_utilcmd.c:3702 parser/parse_utilcmd.c:3744 +#: statistics/attribute_stats.c:209 statistics/attribute_stats.c:951 +#: utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "no existe la columna «%s» en la relación «%s»" -#: catalog/aclchk.c:1862 +#: catalog/aclchk.c:1820 #, c-format msgid "\"%s\" is an index" msgstr "«%s» es un índice" -#: catalog/aclchk.c:1869 commands/tablecmds.c:14496 commands/tablecmds.c:17882 +#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 #, c-format msgid "\"%s\" is a composite type" msgstr "«%s» es un tipo compuesto" -#: catalog/aclchk.c:1877 catalog/objectaddress.c:1363 commands/tablecmds.c:263 -#: commands/tablecmds.c:17846 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:1835 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 #, c-format msgid "\"%s\" is not a sequence" msgstr "«%s» no es una secuencia" -#: catalog/aclchk.c:1915 +#: catalog/aclchk.c:1873 #, 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:1932 +#: catalog/aclchk.c:1890 #, 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:2097 +#: catalog/aclchk.c:2055 #, 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:2110 +#: catalog/aclchk.c:2068 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "la secuencia «%s» sólo soporta el privilegio SELECT" -#: catalog/aclchk.c:2301 +#: catalog/aclchk.c:2259 #, c-format msgid "language \"%s\" is not trusted" msgstr "el lenguaje «%s» no es confiable (trusted)" -#: catalog/aclchk.c:2303 +#: catalog/aclchk.c:2261 #, 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:2454 +#: catalog/aclchk.c:2412 #, c-format msgid "cannot set privileges of array types" msgstr "no se puede definir privilegios para tipos de array" -#: catalog/aclchk.c:2455 +#: catalog/aclchk.c:2413 #, c-format msgid "Set the privileges of the element type instead." msgstr "Defina los privilegios del tipo elemento en su lugar." -#: catalog/aclchk.c:2459 +#: catalog/aclchk.c:2417 #, c-format msgid "cannot set privileges of multirange types" msgstr "no se puede definir privilegios para tipos multirango" -#: catalog/aclchk.c:2460 +#: catalog/aclchk.c:2418 #, 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:2467 catalog/objectaddress.c:1629 -#, c-format -msgid "\"%s\" is not a domain" -msgstr "«%s» no es un dominio" - -#: catalog/aclchk.c:2653 +#: catalog/aclchk.c:2601 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "tipo de privilegio «%s» no reconocido" -#: catalog/aclchk.c:2720 +#: catalog/aclchk.c:2668 #, c-format msgid "permission denied for aggregate %s" msgstr "permiso denegado a la función de agregación %s" -#: catalog/aclchk.c:2723 +#: catalog/aclchk.c:2671 #, c-format msgid "permission denied for collation %s" msgstr "permiso denegado al ordenamiento (collation) %s" -#: catalog/aclchk.c:2726 +#: catalog/aclchk.c:2674 #, c-format msgid "permission denied for column %s" msgstr "permiso denegado a la columna %s" -#: catalog/aclchk.c:2729 +#: catalog/aclchk.c:2677 #, c-format msgid "permission denied for conversion %s" msgstr "permiso denegado a la conversión %s" -#: catalog/aclchk.c:2732 +#: catalog/aclchk.c:2680 #, c-format msgid "permission denied for database %s" msgstr "permiso denegado a la base de datos %s" -#: catalog/aclchk.c:2735 +#: catalog/aclchk.c:2683 #, c-format msgid "permission denied for domain %s" msgstr "permiso denegado al dominio %s" -#: catalog/aclchk.c:2738 +#: catalog/aclchk.c:2686 #, c-format msgid "permission denied for event trigger %s" msgstr "permiso denegado al “trigger” por eventos %s" -#: catalog/aclchk.c:2741 +#: catalog/aclchk.c:2689 #, c-format msgid "permission denied for extension %s" msgstr "permiso denegado a la extensión %s" -#: catalog/aclchk.c:2744 +#: catalog/aclchk.c:2692 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "permiso denegado al conector de datos externos %s" -#: catalog/aclchk.c:2747 +#: catalog/aclchk.c:2695 #, c-format msgid "permission denied for foreign server %s" msgstr "permiso denegado al servidor foráneo %s" -#: catalog/aclchk.c:2750 +#: catalog/aclchk.c:2698 #, c-format msgid "permission denied for foreign table %s" msgstr "permiso denegado a la tabla foránea %s" -#: catalog/aclchk.c:2753 +#: catalog/aclchk.c:2701 #, c-format msgid "permission denied for function %s" msgstr "permiso denegado a la función %s" -#: catalog/aclchk.c:2756 +#: catalog/aclchk.c:2704 #, c-format msgid "permission denied for index %s" msgstr "permiso denegado al índice %s" -#: catalog/aclchk.c:2759 +#: catalog/aclchk.c:2707 #, c-format msgid "permission denied for language %s" msgstr "permiso denegado al lenguaje %s" -#: catalog/aclchk.c:2762 +#: catalog/aclchk.c:2710 #, c-format msgid "permission denied for large object %s" msgstr "permiso denegado al objeto grande %s" -#: catalog/aclchk.c:2765 +#: catalog/aclchk.c:2713 #, c-format msgid "permission denied for materialized view %s" msgstr "permiso denegado a la vista materializada %s" -#: catalog/aclchk.c:2768 +#: catalog/aclchk.c:2716 #, c-format msgid "permission denied for operator class %s" msgstr "permiso denegado a la clase de operadores %s" -#: catalog/aclchk.c:2771 +#: catalog/aclchk.c:2719 #, c-format msgid "permission denied for operator %s" msgstr "permiso denegado al operador %s" -#: catalog/aclchk.c:2774 +#: catalog/aclchk.c:2722 #, c-format msgid "permission denied for operator family %s" msgstr "permiso denegado a la familia de operadores %s" -#: catalog/aclchk.c:2777 +#: catalog/aclchk.c:2725 #, c-format msgid "permission denied for parameter %s" msgstr "permiso denegado al parámetro %s" -#: catalog/aclchk.c:2780 +#: catalog/aclchk.c:2728 #, c-format msgid "permission denied for policy %s" msgstr "permiso denegado a la política %s" -#: catalog/aclchk.c:2783 +#: catalog/aclchk.c:2731 #, c-format msgid "permission denied for procedure %s" msgstr "permiso denegado al procedimiento %s" -#: catalog/aclchk.c:2786 +#: catalog/aclchk.c:2734 #, c-format msgid "permission denied for publication %s" msgstr "permiso denegado a la publicación %s" -#: catalog/aclchk.c:2789 +#: catalog/aclchk.c:2737 #, c-format msgid "permission denied for routine %s" msgstr "permiso denegado a la rutina %s" -#: catalog/aclchk.c:2792 +#: catalog/aclchk.c:2740 #, c-format msgid "permission denied for schema %s" msgstr "permiso denegado al esquema %s" -#: catalog/aclchk.c:2795 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2743 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 "permiso denegado a la secuencia %s" -#: catalog/aclchk.c:2798 +#: catalog/aclchk.c:2746 #, c-format msgid "permission denied for statistics object %s" msgstr "permiso denegado al objeto de estadísticas %s" -#: catalog/aclchk.c:2801 +#: catalog/aclchk.c:2749 #, c-format msgid "permission denied for subscription %s" msgstr "permiso denegado a la suscripción %s" -#: catalog/aclchk.c:2804 +#: catalog/aclchk.c:2752 #, c-format msgid "permission denied for table %s" msgstr "permiso denegado a la tabla %s" -#: catalog/aclchk.c:2807 +#: catalog/aclchk.c:2755 #, c-format msgid "permission denied for tablespace %s" msgstr "permiso denegado al tablespace %s" -#: catalog/aclchk.c:2810 +#: catalog/aclchk.c:2758 #, 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:2813 +#: catalog/aclchk.c:2761 #, 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:2816 +#: catalog/aclchk.c:2764 #, c-format msgid "permission denied for type %s" msgstr "permiso denegado al tipo %s" -#: catalog/aclchk.c:2819 +#: catalog/aclchk.c:2767 #, c-format msgid "permission denied for view %s" msgstr "permiso denegado a la vista %s" -#: catalog/aclchk.c:2855 +#: catalog/aclchk.c:2803 #, 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:2858 +#: catalog/aclchk.c:2806 #, c-format msgid "must be owner of collation %s" msgstr "debe ser dueño del ordenamiento (collation) %s" -#: catalog/aclchk.c:2861 +#: catalog/aclchk.c:2809 #, c-format msgid "must be owner of conversion %s" msgstr "debe ser dueño de la conversión %s" -#: catalog/aclchk.c:2864 +#: catalog/aclchk.c:2812 #, c-format msgid "must be owner of database %s" msgstr "debe ser dueño de la base de datos %s" -#: catalog/aclchk.c:2867 +#: catalog/aclchk.c:2815 #, c-format msgid "must be owner of domain %s" msgstr "debe ser dueño del dominio %s" -#: catalog/aclchk.c:2870 +#: catalog/aclchk.c:2818 #, c-format msgid "must be owner of event trigger %s" msgstr "debe ser dueño del “trigger” por eventos %s" -#: catalog/aclchk.c:2873 +#: catalog/aclchk.c:2821 #, c-format msgid "must be owner of extension %s" msgstr "debe ser dueño de la extensión %s" -#: catalog/aclchk.c:2876 +#: catalog/aclchk.c:2824 #, 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:2879 +#: catalog/aclchk.c:2827 #, c-format msgid "must be owner of foreign server %s" msgstr "debe ser dueño del servidor foráneo %s" -#: catalog/aclchk.c:2882 +#: catalog/aclchk.c:2830 #, c-format msgid "must be owner of foreign table %s" msgstr "debe ser dueño de la tabla foránea %s" -#: catalog/aclchk.c:2885 +#: catalog/aclchk.c:2833 #, c-format msgid "must be owner of function %s" msgstr "debe ser dueño de la función %s" -#: catalog/aclchk.c:2888 +#: catalog/aclchk.c:2836 #, c-format msgid "must be owner of index %s" msgstr "debe ser dueño del índice %s" -#: catalog/aclchk.c:2891 +#: catalog/aclchk.c:2839 #, c-format msgid "must be owner of language %s" msgstr "debe ser dueño del lenguaje %s" -#: catalog/aclchk.c:2894 +#: catalog/aclchk.c:2842 #, c-format msgid "must be owner of large object %s" msgstr "debe ser dueño del objeto grande %s" -#: catalog/aclchk.c:2897 +#: catalog/aclchk.c:2845 #, c-format msgid "must be owner of materialized view %s" msgstr "debe ser dueño de la vista materializada %s" -#: catalog/aclchk.c:2900 +#: catalog/aclchk.c:2848 #, c-format msgid "must be owner of operator class %s" msgstr "debe ser dueño de la clase de operadores %s" -#: catalog/aclchk.c:2903 +#: catalog/aclchk.c:2851 #, c-format msgid "must be owner of operator %s" msgstr "debe ser dueño del operador %s" -#: catalog/aclchk.c:2906 +#: catalog/aclchk.c:2854 #, c-format msgid "must be owner of operator family %s" msgstr "debe ser dueño de la familia de operadores %s" -#: catalog/aclchk.c:2909 +#: catalog/aclchk.c:2857 #, c-format msgid "must be owner of procedure %s" msgstr "debe ser dueño del procedimiento %s" -#: catalog/aclchk.c:2912 +#: catalog/aclchk.c:2860 #, c-format msgid "must be owner of publication %s" msgstr "debe ser dueño de la publicación %s" -#: catalog/aclchk.c:2915 +#: catalog/aclchk.c:2863 #, c-format msgid "must be owner of routine %s" msgstr "debe ser dueño de la rutina %s" -#: catalog/aclchk.c:2918 +#: catalog/aclchk.c:2866 #, c-format msgid "must be owner of sequence %s" msgstr "debe ser dueño de la secuencia %s" -#: catalog/aclchk.c:2921 +#: catalog/aclchk.c:2869 #, c-format msgid "must be owner of subscription %s" msgstr "debe ser dueño de la suscripción %s" -#: catalog/aclchk.c:2924 +#: catalog/aclchk.c:2872 #, c-format msgid "must be owner of table %s" msgstr "debe ser dueño de la tabla %s" -#: catalog/aclchk.c:2927 +#: catalog/aclchk.c:2875 #, c-format msgid "must be owner of type %s" msgstr "debe ser dueño del tipo %s" -#: catalog/aclchk.c:2930 +#: catalog/aclchk.c:2878 #, c-format msgid "must be owner of view %s" msgstr "debe ser dueño de la vista %s" -#: catalog/aclchk.c:2933 +#: catalog/aclchk.c:2881 #, c-format msgid "must be owner of schema %s" msgstr "debe ser dueño del esquema %s" -#: catalog/aclchk.c:2936 +#: catalog/aclchk.c:2884 #, c-format msgid "must be owner of statistics object %s" msgstr "debe ser dueño del objeto de estadísticas %s" -#: catalog/aclchk.c:2939 +#: catalog/aclchk.c:2887 #, c-format msgid "must be owner of tablespace %s" msgstr "debe ser dueño del tablespace %s" -#: catalog/aclchk.c:2942 +#: catalog/aclchk.c:2890 #, 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:2945 +#: catalog/aclchk.c:2893 #, 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:2959 +#: catalog/aclchk.c:2907 #, c-format msgid "must be owner of relation %s" msgstr "debe ser dueño de la relación %s" -#: catalog/aclchk.c:3005 +#: catalog/aclchk.c:2953 #, 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:3162 catalog/aclchk.c:4170 catalog/aclchk.c:4201 -#, c-format -msgid "%s with OID %u does not exist" -msgstr "%s con el OID %u no existe" - -#: catalog/aclchk.c:3245 catalog/aclchk.c:3264 +#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 #, 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:3302 catalog/aclchk.c:3365 catalog/aclchk.c:4004 +#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 #, c-format msgid "relation with OID %u does not exist" msgstr "no existe la relación con OID %u" -#: catalog/aclchk.c:3550 +#: catalog/aclchk.c:3492 #, 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:3723 commands/collationcmds.c:853 -#: commands/publicationcmds.c:1739 +#: 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 +#, 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 #, c-format msgid "schema with OID %u does not exist" msgstr "no existe el esquema con OID %u" -#: catalog/aclchk.c:3797 catalog/aclchk.c:3824 catalog/aclchk.c:3853 -#: utils/cache/typcache.c:392 utils/cache/typcache.c:447 +#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" msgstr "no existe el tipo con OID %u" -#: catalog/catalog.c:477 +#: catalog/catalog.c:504 #, c-format 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:479 -#, 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." +#: 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." +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." -#: catalog/catalog.c:504 -#, 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" +#: 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" +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" -#: catalog/catalog.c:637 catalog/catalog.c:704 +#: catalog/catalog.c:662 catalog/catalog.c:729 #, c-format msgid "must be superuser to call %s()" msgstr "debe ser superusuario para invocar %s()" -#: catalog/catalog.c:646 +#: catalog/catalog.c:671 #, c-format msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() sólo puede usarse en catálogos de sistema" -#: catalog/catalog.c:651 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 "el índice «%s» no pertenece a la tabla «%s»" -#: catalog/catalog.c:668 +#: catalog/catalog.c:693 #, c-format msgid "column \"%s\" is not of type oid" msgstr "la columna «%s» no es de tipo oid" -#: catalog/catalog.c:675 +#: catalog/catalog.c:700 #, c-format msgid "index \"%s\" is not the index for column \"%s\"" msgstr "«el índice %s» no es el índice para la columna «%s»" @@ -4825,15 +4836,16 @@ msgid "cannot drop %s because other objects depend on it" msgstr "no se puede eliminar %s porque otros objetos dependen de él" #: catalog/dependency.c:1153 catalog/dependency.c:1160 -#: catalog/dependency.c:1171 commands/tablecmds.c:1459 -#: commands/tablecmds.c:15088 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:211 commands/view.c:441 executor/execExprInterp.c:4655 -#: executor/execExprInterp.c:4663 libpq/auth.c:324 -#: replication/logical/applyparallelworker.c:1041 replication/syncrep.c:1011 -#: storage/lmgr/deadlock.c:1134 storage/lmgr/proc.c:1432 utils/misc/guc.c:3169 -#: utils/misc/guc.c:3210 utils/misc/guc.c:3285 utils/misc/guc.c:6825 -#: utils/misc/guc.c:6859 utils/misc/guc.c:6893 utils/misc/guc.c:6936 -#: utils/misc/guc.c:6978 +#: 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" @@ -4860,303 +4872,380 @@ msgstr[1] "eliminando además %d objetos más" msgid "constant of the type %s cannot be used here" msgstr "no se puede usar una constante de tipo %s aquí" -#: catalog/dependency.c:2375 parser/parse_relation.c:3407 -#: parser/parse_relation.c:3417 +#: catalog/dependency.c:2205 +#, fuzzy, c-format +#| msgid "only table \"%s\" can be referenced in check constraint" +msgid "transition table \"%s\" cannot be referenced in a persistent object" +msgstr "sólo la tabla «%s» puede ser referenciada en una restricción «check»" + +#: 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 #, c-format msgid "column %d of relation \"%s\" does not exist" msgstr "no existe la columna %d en la relación «%s»" -#: catalog/heap.c:325 +#: catalog/heap.c:321 #, c-format msgid "permission denied to create \"%s.%s\"" msgstr "se ha denegado el permiso para crear «%s.%s»" -#: catalog/heap.c:327 +#: catalog/heap.c:323 #, c-format msgid "System catalog modifications are currently disallowed." msgstr "Las modificaciones al catálogo del sistema están actualmente deshabilitadas." -#: catalog/heap.c:467 commands/tablecmds.c:2495 commands/tablecmds.c:2917 -#: commands/tablecmds.c:7163 +#: 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 "las tablas pueden tener a lo más %d columnas" -#: catalog/heap.c:485 commands/tablecmds.c:7432 +#: catalog/heap.c:481 commands/tablecmds.c:7663 #, c-format msgid "column name \"%s\" conflicts with a system column name" msgstr "el nombre de columna «%s» colisiona con nombre de una columna de sistema" -#: catalog/heap.c:501 +#: catalog/heap.c:497 #, c-format msgid "column name \"%s\" specified more than once" msgstr "el nombre de columna «%s» fue especificado más de una vez" #. 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 "la columna %s de la llave de partición tiene pseudotipo %s" -#: catalog/heap.c:584 +#: catalog/heap.c:580 #, c-format msgid "column \"%s\" has pseudo-type %s" msgstr "la columna «%s» tiene pseudotipo %s" -#: catalog/heap.c:615 +#: catalog/heap.c:595 +#, fuzzy, c-format +#| msgid "default for column \"%s\" cannot be cast automatically to type %s" +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" + +#: catalog/heap.c:622 #, c-format msgid "composite type %s cannot be made a member of itself" msgstr "un tipo compuesto %s no puede ser hecho miembro de sí mismo" +#: catalog/heap.c:673 +#, fuzzy, c-format +#| msgid "Generated columns cannot be used in COPY." +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 +#, 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 "no se derivó ningún ordenamiento (collate) para la columna %s de llave de partición con tipo ordenable %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 "no se derivó ningún ordenamiento (collate) para la columna «%s» con tipo ordenable %s" -#: catalog/heap.c:1161 catalog/index.c:899 commands/createas.c:401 -#: commands/tablecmds.c:4171 +#: catalog/heap.c:1179 catalog/index.c:901 commands/createas.c:408 +#: commands/tablecmds.c:4296 #, c-format msgid "relation \"%s\" already exists" msgstr "la relación «%s» ya existe" -#: 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 "ya existe un tipo «%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 "Una relación tiene un tipo asociado del mismo nombre, de modo que debe usar un nombre que no entre en conflicto con un tipo existente." -#: catalog/heap.c:1218 +#: catalog/heap.c:1236 #, c-format msgid "toast relfilenumber value not set when in binary upgrade mode" msgstr "el valor de relfilenumber de toast no se definió en modo de actualización binaria" -#: catalog/heap.c:1229 +#: catalog/heap.c:1247 #, c-format msgid "pg_class heap OID value not set when in binary upgrade mode" msgstr "el valor de OID de heap de pg_class no se definió en modo de actualización binaria" -#: catalog/heap.c:1239 +#: catalog/heap.c:1257 #, c-format msgid "relfilenumber value not set when in binary upgrade mode" msgstr "el valor de relfilenumber no se definió en modo de actualización binaria" -#: catalog/heap.c:2130 +#: catalog/heap.c:2202 #, c-format msgid "cannot add NO INHERIT constraint to partitioned table \"%s\"" msgstr "no se puede agregar una restricción NO INHERIT a la tabla particionada «%s»" -#: catalog/heap.c:2402 +#: catalog/heap.c:2525 #, c-format msgid "check constraint \"%s\" already exists" msgstr "la restricción «check» «%s» ya existe" -#: catalog/heap.c:2574 catalog/index.c:913 catalog/pg_constraint.c:724 -#: commands/tablecmds.c:9356 +#: catalog/heap.c:2626 catalog/heap.c:2946 +#, 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:9796 #, 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:2581 +#: catalog/heap.c:2786 #, 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:2592 +#: catalog/heap.c:2797 #, 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:2602 +#: catalog/heap.c:2807 #, 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:2607 +#: catalog/heap.c:2819 +#, 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 #, c-format msgid "merging constraint \"%s\" with inherited definition" msgstr "mezclando la restricción «%s» con la definición heredada" -#: catalog/heap.c:2633 catalog/pg_constraint.c:853 commands/tablecmds.c:3074 -#: commands/tablecmds.c:3377 commands/tablecmds.c:7089 -#: commands/tablecmds.c:15907 commands/tablecmds.c:16038 +#: 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 #, c-format msgid "too many inheritance parents" msgstr "demasiados padres de herencia" -#: catalog/heap.c:2717 +#: catalog/heap.c:2965 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 +#, 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 +#, c-format +msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" +msgstr "" + +#: catalog/heap.c:3011 +#, fuzzy, c-format +#| msgid "finding table check constraints" +msgid "The column has an inherited not-null constraint." +msgstr "encontrando restricciones CHECK de tablas" + +#: catalog/heap.c:3201 #, 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:2719 +#: catalog/heap.c:3203 #, 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:2725 +#: catalog/heap.c:3209 #, 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:2726 +#: catalog/heap.c:3210 #, 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:2781 +#: catalog/heap.c:3277 +#, 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 +#, c-format +msgid "Virtual generated columns that make use of user-defined functions are not yet supported." +msgstr "" + +#: catalog/heap.c:3293 +#, 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 #, c-format msgid "generation expression is not immutable" msgstr "la expresión de generación no es inmutable" -#: catalog/heap.c:2809 rewrite/rewriteHandler.c:1276 +#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 #, 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:2814 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:1281 +#: 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 #, 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:2861 +#: catalog/heap.c:3429 #, 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:3167 +#: catalog/heap.c:3735 #, 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:3168 +#: catalog/heap.c:3736 #, 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:3173 +#: catalog/heap.c:3741 #, 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:3174 +#: catalog/heap.c:3742 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "La tabla «%s» hace referencia a «%s»." -#: catalog/heap.c:3176 +#: catalog/heap.c:3744 #, 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." -#: 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 "no se permiten múltiples llaves primarias para la tabla «%s»" -#: catalog/index.c:233 +#: catalog/index.c:234 #, c-format msgid "primary keys cannot use NULLS NOT DISTINCT indexes" msgstr "las llaves primarias no pueden usar índices NULLS NOT DISTINCT" -#: catalog/index.c:250 +#: catalog/index.c:251 #, c-format msgid "primary keys cannot be expressions" msgstr "las llaves primarias no pueden ser expresiones" -#: catalog/index.c:267 +#: catalog/index.c:268 #, c-format msgid "primary key column \"%s\" is not marked NOT NULL" msgstr "columna de llave primaria «%s» no está marcada 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 "los usuarios no pueden crear índices en tablas del sistema" -#: catalog/index.c:838 +#: catalog/index.c:840 #, c-format msgid "nondeterministic collations are not supported for operator class \"%s\"" msgstr "los ordenamientos no determinísticos no están soportados para la clase de operadores «%s»" -#: catalog/index.c:853 +#: catalog/index.c:855 #, c-format msgid "concurrent index creation on system catalog tables is not supported" msgstr "no se pueden crear índices de forma concurrente en tablas del sistema" -#: 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 "no se pueden crear índices para restricciones de exclusión de forma concurrente" -#: catalog/index.c:871 +#: catalog/index.c:873 #, c-format msgid "shared indexes cannot be created after initdb" msgstr "no se pueden crear índices compartidos después de 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 "la relación «%s» ya existe, omitiendo" -#: catalog/index.c:941 +#: catalog/index.c:943 #, c-format msgid "pg_class index OID value not set when in binary upgrade mode" msgstr "el valor de OID de índice de pg_class no se definió en modo de actualización binaria" -#: catalog/index.c:951 utils/cache/relcache.c:3791 +#: catalog/index.c:953 utils/cache/relcache.c:3795 #, c-format msgid "index relfilenumber value not set when in binary upgrade mode" msgstr "el valor relfilenumber de índice no se definió en modo de actualización binaria" -#: catalog/index.c:2214 +#: catalog/index.c:2222 #, c-format msgid "DROP INDEX CONCURRENTLY must be first action in transaction" msgstr "DROP INDEX CONCURRENTLY debe ser la primera acción en una transacción" -#: catalog/index.c:3668 +#: catalog/index.c:3729 #, c-format msgid "cannot reindex temporary tables of other sessions" msgstr "no se puede hacer reindex de tablas temporales de otras sesiones" -#: catalog/index.c:3679 commands/indexcmds.c:3626 +#: catalog/index.c:3740 commands/indexcmds.c:3791 #, c-format msgid "cannot reindex invalid index on TOAST table" msgstr "no es posible reindexar un índice no válido en tabla TOAST" -#: catalog/index.c:3695 commands/indexcmds.c:3504 commands/indexcmds.c:3650 -#: commands/tablecmds.c:3581 +#: 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 "no se puede mover la relación de sistema «%s»" -#: catalog/index.c:3832 +#: catalog/index.c:3893 #, c-format msgid "index \"%s\" was reindexed" msgstr "el índice «%s» fue reindexado" -#: catalog/index.c:3998 +#: catalog/index.c:4059 #, c-format 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:5729 +#: commands/trigger.c:5817 #, 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»" @@ -5176,19 +5265,20 @@ msgstr "no se pudo bloquear un “lock” en la relación «%s.%s»" msgid "could not obtain lock on relation \"%s\"" msgstr "no se pudo bloquear un “lock” en la relación «%s»" -#: catalog/namespace.c:633 parser/parse_relation.c:1430 +#: catalog/namespace.c:633 parser/parse_relation.c:1447 +#: statistics/stat_utils.c:231 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "no existe la relación «%s.%s»" -#: catalog/namespace.c:638 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 "no existe la relación «%s»" -#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1607 -#: commands/extension.c:1613 +#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1804 +#: commands/extension.c:1810 #, c-format msgid "no schema has been selected to create in" msgstr "no se ha seleccionado ningún esquema dentro del cual crear" @@ -5234,13 +5324,13 @@ msgstr "no existe la plantilla de búsqueda en texto «%s»" msgid "text search configuration \"%s\" does not exist" msgstr "no existe la configuración de búsqueda en texto «%s»" -#: catalog/namespace.c:3329 parser/parse_expr.c:868 parser/parse_target.c:1259 +#: catalog/namespace.c:3329 parser/parse_expr.c:866 parser/parse_target.c:1262 #, c-format msgid "cross-database references are not implemented: %s" msgstr "no están implementadas las referencias entre bases de datos: %s" -#: catalog/namespace.c:3335 parser/parse_expr.c:875 parser/parse_target.c:1266 -#: gram.y:19181 gram.y:19221 +#: catalog/namespace.c:3335 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: gram.y:19355 gram.y:19395 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "el nombre no es válido (demasiados puntos): %s" @@ -5256,7 +5346,7 @@ msgid "cannot move objects into or out of TOAST schema" msgstr "no se puede mover objetos hacia o desde el esquema TOAST" #: catalog/namespace.c:3544 commands/schemacmds.c:264 commands/schemacmds.c:344 -#: commands/tablecmds.c:1404 utils/adt/regproc.c:1688 +#: commands/tablecmds.c:1464 utils/adt/regproc.c:1688 #, c-format msgid "schema \"%s\" does not exist" msgstr "no existe el esquema «%s»" @@ -5291,243 +5381,250 @@ msgstr "no se pueden crear tablas temporales durante la recuperación" msgid "cannot create temporary tables during a parallel operation" msgstr "no se pueden crear tablas temporales durante una operación paralela" -#: catalog/objectaddress.c:1371 commands/policy.c:93 commands/policy.c:373 -#: commands/tablecmds.c:257 commands/tablecmds.c:299 commands/tablecmds.c:2327 -#: commands/tablecmds.c:12925 +#: 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 #, c-format msgid "\"%s\" is not a table" msgstr "«%s» no es una tabla" -#: catalog/objectaddress.c:1378 commands/tablecmds.c:269 -#: commands/tablecmds.c:17851 commands/view.c:114 +#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 +#: commands/tablecmds.c:19619 commands/view.c:113 #, c-format msgid "\"%s\" is not a view" msgstr "«%s» no es una vista" -#: catalog/objectaddress.c:1385 commands/matview.c:199 commands/tablecmds.c:275 -#: commands/tablecmds.c:17856 +#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 +#: commands/tablecmds.c:19624 #, c-format msgid "\"%s\" is not a materialized view" msgstr "«%s» no es una vista materializada" -#: catalog/objectaddress.c:1392 commands/tablecmds.c:293 -#: commands/tablecmds.c:17861 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 +#: commands/tablecmds.c:19629 #, c-format msgid "\"%s\" is not a foreign table" msgstr "«%s» no es una tabla foránea" -#: catalog/objectaddress.c:1433 +#: catalog/objectaddress.c:1438 #, c-format msgid "must specify relation and object name" msgstr "debe especificar nombre de relación y nombre de objeto" -#: 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 "el nombre de columna debe ser calificado" -#: catalog/objectaddress.c:1581 +#: catalog/objectaddress.c:1586 #, c-format msgid "default value for column \"%s\" of relation \"%s\" does not exist" msgstr "no existe el valor por omisión para la columna «%s» de la relación «%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 "no existe el tipo «%s»" -#: catalog/objectaddress.c:1737 +#: catalog/objectaddress.c:1634 +#, c-format +msgid "\"%s\" is not a domain" +msgstr "«%s» no es un dominio" + +#: catalog/objectaddress.c:1742 #, c-format msgid "operator %d (%s, %s) of %s does not exist" msgstr "no existe el operador %d (%s, %s) de %s" -#: catalog/objectaddress.c:1768 +#: catalog/objectaddress.c:1773 #, c-format msgid "function %d (%s, %s) of %s does not exist" msgstr "no existe la función %d (%s, %s) de %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 "no existe el mapeo para el usuario «%s» en el servidor «%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 "no existe el servidor «%s»" -#: catalog/objectaddress.c:1901 +#: catalog/objectaddress.c:1906 #, c-format msgid "publication relation \"%s\" in publication \"%s\" does not exist" msgstr "no existe la relación «%s» en la publicación «%s»" -#: catalog/objectaddress.c:1948 +#: catalog/objectaddress.c:1953 #, c-format msgid "publication schema \"%s\" in publication \"%s\" does not exist" msgstr "no existe el esquema de publicación «%s» en la publicación «%s»" -#: catalog/objectaddress.c:2006 +#: catalog/objectaddress.c:2014 #, c-format msgid "unrecognized default ACL object type \"%c\"" msgstr "tipo de objeto para ACL por omisión «%c» no reconocido" -#: catalog/objectaddress.c:2007 -#, c-format -msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." +#: catalog/objectaddress.c:2015 +#, fuzzy, c-format +#| msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." +msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." msgstr "Tipos válidos de objeto son «%c», «%c», «%c», «%c» y «%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 "no existe el ACL por omisión para el usuario «%s» en el esquema «%s» en %s" -#: catalog/objectaddress.c:2063 +#: catalog/objectaddress.c:2072 #, c-format msgid "default ACL for user \"%s\" on %s does not exist" msgstr "no existe el ACL por omisión para el usuario «%s» en %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 "las listas de nombres o argumentos no pueden contener nulls" -#: catalog/objectaddress.c:2123 +#: catalog/objectaddress.c:2132 #, c-format msgid "unsupported object type \"%s\"" msgstr "tipo de objeto «%s» no soportado" -#: 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 "el largo de la lista de nombres debe ser exactamente %d" -#: catalog/objectaddress.c:2163 +#: catalog/objectaddress.c:2172 #, c-format msgid "large object OID may not be null" msgstr "el OID de objeto grande no puede ser null" -#: 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 "el largo de la lista de nombres debe ser al menos %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 "el largo de la lista de argumentos debe ser exactamente %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 "debe ser dueño del objeto grande %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 "debe ser dueño del tipo %s o el tipo %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 "permiso denegado" -#: 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 "El usuario actual debe tener el atributo %s." -#: catalog/objectaddress.c:2528 +#: catalog/objectaddress.c:2537 #, c-format msgid "The current user must have the %s option on role \"%s\"." msgstr "El usuario actual debe tener la opción %s en el rol «%s»." -#: catalog/objectaddress.c:2542 +#: catalog/objectaddress.c:2551 #, c-format msgid "must be superuser" msgstr "debe ser superusuario" -#: catalog/objectaddress.c:2611 +#: catalog/objectaddress.c:2620 #, c-format msgid "unrecognized object type \"%s\"" msgstr "tipo de objeto «%s» no reconocido" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:2928 +#: catalog/objectaddress.c:2937 #, c-format msgid "column %s of %s" msgstr "columna %s de %s" -#: catalog/objectaddress.c:2943 +#: catalog/objectaddress.c:2952 #, c-format msgid "function %s" msgstr "función %s" -#: catalog/objectaddress.c:2956 +#: catalog/objectaddress.c:2965 #, c-format msgid "type %s" msgstr "tipo %s" -#: catalog/objectaddress.c:2993 +#: catalog/objectaddress.c:3002 #, c-format msgid "cast from %s to %s" msgstr "conversión de %s a %s" -#: catalog/objectaddress.c:3026 +#: catalog/objectaddress.c:3035 #, c-format msgid "collation %s" msgstr "ordenamiento (collation) %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3057 +#: catalog/objectaddress.c:3066 #, c-format msgid "constraint %s on %s" msgstr "restricción «%s» en %s" -#: catalog/objectaddress.c:3063 +#: catalog/objectaddress.c:3072 #, c-format msgid "constraint %s" msgstr "restricción %s" -#: catalog/objectaddress.c:3095 +#: catalog/objectaddress.c:3104 #, c-format msgid "conversion %s" msgstr "conversión %s" #. translator: %s is typically "column %s of table %s" -#: catalog/objectaddress.c:3117 +#: catalog/objectaddress.c:3126 #, c-format msgid "default value for %s" msgstr "valor por omisión para %s" -#: catalog/objectaddress.c:3128 +#: catalog/objectaddress.c:3137 #, c-format msgid "language %s" msgstr "lenguaje %s" -#: catalog/objectaddress.c:3136 +#: catalog/objectaddress.c:3145 #, c-format msgid "large object %u" msgstr "objeto grande %u" -#: catalog/objectaddress.c:3149 +#: catalog/objectaddress.c:3158 #, c-format msgid "operator %s" msgstr "operador %s" -#: catalog/objectaddress.c:3186 +#: catalog/objectaddress.c:3195 #, c-format msgid "operator class %s for access method %s" msgstr "clase de operadores «%s» para el método de acceso «%s»" -#: catalog/objectaddress.c:3214 +#: catalog/objectaddress.c:3223 #, c-format msgid "access method %s" msgstr "método de acceso %s" @@ -5536,7 +5633,7 @@ msgstr "método de acceso %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:3269 +#: catalog/objectaddress.c:3278 #, c-format msgid "operator %d (%s, %s) of %s: %s" msgstr "operador %d (%s, %s) de %s: %s" @@ -5545,236 +5642,242 @@ msgstr "operador %d (%s, %s) de %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:3334 +#: catalog/objectaddress.c:3343 #, c-format msgid "function %d (%s, %s) of %s: %s" msgstr "función %d (%s, %s) de %s: %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3388 +#: catalog/objectaddress.c:3397 #, c-format msgid "rule %s on %s" msgstr "regla %s en %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3434 +#: catalog/objectaddress.c:3443 #, c-format msgid "trigger %s on %s" msgstr "“trigger” %s en %s" -#: catalog/objectaddress.c:3454 +#: catalog/objectaddress.c:3463 #, c-format msgid "schema %s" msgstr "esquema %s" -#: catalog/objectaddress.c:3482 +#: catalog/objectaddress.c:3491 #, c-format msgid "statistics object %s" msgstr "objeto de estadísticas %s" -#: catalog/objectaddress.c:3513 +#: catalog/objectaddress.c:3522 #, c-format msgid "text search parser %s" msgstr "analizador de búsqueda en texto %s" -#: catalog/objectaddress.c:3544 +#: catalog/objectaddress.c:3553 #, c-format msgid "text search dictionary %s" msgstr "diccionario de búsqueda en texto %s" -#: catalog/objectaddress.c:3575 +#: catalog/objectaddress.c:3584 #, c-format msgid "text search template %s" msgstr "plantilla de búsqueda en texto %s" -#: catalog/objectaddress.c:3606 +#: catalog/objectaddress.c:3615 #, c-format msgid "text search configuration %s" msgstr "configuración de búsqueda en texto %s" -#: catalog/objectaddress.c:3619 +#: catalog/objectaddress.c:3628 #, c-format msgid "role %s" msgstr "rol %s" -#: catalog/objectaddress.c:3656 catalog/objectaddress.c:5505 +#: catalog/objectaddress.c:3665 catalog/objectaddress.c:5589 #, c-format msgid "membership of role %s in role %s" msgstr "membresía del rol %s en el rol %s" -#: catalog/objectaddress.c:3677 +#: catalog/objectaddress.c:3686 #, c-format msgid "database %s" msgstr "base de datos %s" -#: catalog/objectaddress.c:3693 +#: catalog/objectaddress.c:3702 #, c-format msgid "tablespace %s" msgstr "tablespace %s" -#: catalog/objectaddress.c:3704 +#: catalog/objectaddress.c:3713 #, c-format msgid "foreign-data wrapper %s" msgstr "conector de datos externos %s" -#: catalog/objectaddress.c:3714 +#: catalog/objectaddress.c:3723 #, c-format msgid "server %s" msgstr "servidor %s" -#: catalog/objectaddress.c:3747 +#: catalog/objectaddress.c:3756 #, c-format msgid "user mapping for %s on server %s" msgstr "mapeo para el usuario %s en el servidor %s" -#: catalog/objectaddress.c:3799 +#: catalog/objectaddress.c:3808 #, c-format msgid "default privileges on new relations belonging to role %s in schema %s" msgstr "privilegios por omisión en nuevas relaciones pertenecientes al rol %s en el esquema %s" -#: catalog/objectaddress.c:3803 +#: catalog/objectaddress.c:3812 #, c-format msgid "default privileges on new relations belonging to role %s" msgstr "privilegios por omisión en nuevas relaciones pertenecientes al rol %s" -#: catalog/objectaddress.c:3809 +#: catalog/objectaddress.c:3818 #, c-format msgid "default privileges on new sequences belonging to role %s in schema %s" msgstr "privilegios por omisión en nuevas secuencias pertenecientes al rol %s en el esquema %s" -#: catalog/objectaddress.c:3813 +#: catalog/objectaddress.c:3822 #, c-format msgid "default privileges on new sequences belonging to role %s" msgstr "privilegios por omisión en nuevas secuencias pertenecientes al rol %s" -#: catalog/objectaddress.c:3819 +#: catalog/objectaddress.c:3828 #, c-format msgid "default privileges on new functions belonging to role %s in schema %s" msgstr "privilegios por omisión en nuevas funciones pertenecientes al rol %s en el esquema %s" -#: catalog/objectaddress.c:3823 +#: catalog/objectaddress.c:3832 #, c-format msgid "default privileges on new functions belonging to role %s" msgstr "privilegios por omisión en nuevas funciones pertenecientes al rol %s" -#: catalog/objectaddress.c:3829 +#: catalog/objectaddress.c:3838 #, c-format msgid "default privileges on new types belonging to role %s in schema %s" msgstr "privilegios por omisión en nuevos tipos pertenecientes al rol %s en el esquema %s" -#: catalog/objectaddress.c:3833 +#: catalog/objectaddress.c:3842 #, c-format msgid "default privileges on new types belonging to role %s" msgstr "privilegios por omisión en nuevos tipos pertenecientes al rol %s" -#: catalog/objectaddress.c:3839 +#: catalog/objectaddress.c:3848 #, c-format msgid "default privileges on new schemas belonging to role %s" msgstr "privilegios por omisión en nuevos esquemas pertenecientes al rol %s" -#: catalog/objectaddress.c:3846 +#: catalog/objectaddress.c:3854 +#, fuzzy, c-format +#| msgid "default privileges on new relations belonging to role %s" +msgid "default privileges on new large objects belonging to role %s" +msgstr "privilegios por omisión en nuevas relaciones pertenecientes al rol %s" + +#: catalog/objectaddress.c:3861 #, c-format msgid "default privileges belonging to role %s in schema %s" msgstr "privilegios por omisión pertenecientes al rol %s en el esquema %s" -#: catalog/objectaddress.c:3850 +#: catalog/objectaddress.c:3865 #, c-format msgid "default privileges belonging to role %s" msgstr "privilegios por omisión pertenecientes al rol %s" -#: catalog/objectaddress.c:3872 +#: catalog/objectaddress.c:3887 #, c-format msgid "extension %s" msgstr "extensión %s" -#: catalog/objectaddress.c:3889 +#: catalog/objectaddress.c:3904 #, c-format msgid "event trigger %s" msgstr "“trigger” por eventos %s" -#: catalog/objectaddress.c:3913 +#: catalog/objectaddress.c:3928 #, c-format msgid "parameter %s" msgstr "parámetro %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3956 +#: catalog/objectaddress.c:3971 #, c-format msgid "policy %s on %s" msgstr "política %s en %s" -#: catalog/objectaddress.c:3970 +#: catalog/objectaddress.c:3985 #, c-format msgid "publication %s" msgstr "publicación %s" -#: catalog/objectaddress.c:3983 +#: catalog/objectaddress.c:3998 #, c-format msgid "publication of schema %s in publication %s" msgstr "publicación de esquema %s en la publicación %s" #. translator: first %s is, e.g., "table %s" -#: catalog/objectaddress.c:4014 +#: catalog/objectaddress.c:4029 #, c-format msgid "publication of %s in publication %s" msgstr "publicación de %s en la publicación %s" -#: catalog/objectaddress.c:4027 +#: catalog/objectaddress.c:4042 #, c-format msgid "subscription %s" msgstr "suscripción %s" -#: catalog/objectaddress.c:4048 +#: catalog/objectaddress.c:4063 #, c-format msgid "transform for %s language %s" msgstr "transformación para %s lenguaje %s" -#: catalog/objectaddress.c:4117 +#: catalog/objectaddress.c:4132 #, c-format msgid "table %s" msgstr "tabla %s" -#: catalog/objectaddress.c:4122 +#: catalog/objectaddress.c:4137 #, c-format msgid "index %s" msgstr "índice %s" -#: catalog/objectaddress.c:4126 +#: catalog/objectaddress.c:4141 #, c-format msgid "sequence %s" msgstr "secuencia %s" -#: catalog/objectaddress.c:4130 +#: catalog/objectaddress.c:4145 #, c-format msgid "toast table %s" msgstr "tabla toast %s" -#: catalog/objectaddress.c:4134 +#: catalog/objectaddress.c:4149 #, c-format msgid "view %s" msgstr "vista %s" -#: catalog/objectaddress.c:4138 +#: catalog/objectaddress.c:4153 #, c-format msgid "materialized view %s" msgstr "vista materializada %s" -#: catalog/objectaddress.c:4142 +#: catalog/objectaddress.c:4157 #, c-format msgid "composite type %s" msgstr "tipo compuesto %s" -#: catalog/objectaddress.c:4146 +#: catalog/objectaddress.c:4161 #, c-format msgid "foreign table %s" msgstr "tabla foránea %s" -#: catalog/objectaddress.c:4151 +#: catalog/objectaddress.c:4166 #, c-format msgid "relation %s" msgstr "relación %s" -#: catalog/objectaddress.c:4192 +#: catalog/objectaddress.c:4207 #, c-format msgid "operator family %s for access method %s" msgstr "familia de operadores %s para el método de acceso %s" @@ -5816,7 +5919,7 @@ msgstr "no se puede omitir el valor inicial cuando la función de transición es msgid "return type of inverse transition function %s is not %s" msgstr "el tipo de retorno de la función inversa de transición %s no es %s" -#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2991 +#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:3057 #, c-format msgid "strictness of aggregate's forward and inverse transition functions must match" msgstr "la opción «strict» de las funciones de transición directa e inversa deben coincidir exactamente en la función de agregación" @@ -5831,7 +5934,7 @@ msgstr "la función final con argumentos extra no debe declararse STRICT" msgid "return type of combine function %s is not %s" msgstr "el tipo de retorno de la función «combine» %s no es %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 "la función «combine» con tipo de transición %s no debe declararse STRICT" @@ -5846,12 +5949,12 @@ msgstr "el tipo de retorno de la función de serialización %s no es %s" msgid "return type of deserialization function %s is not %s" msgstr "el tipo de retorno de la función de deserialización %s no es %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 "no se puede determinar el tipo de dato del resultado" -#: 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 "uso inseguro de pseudotipo «internal»" @@ -5866,53 +5969,53 @@ msgstr "la implementación de la función de agregación en modo «moving» devu msgid "sort operator can only be specified for single-argument aggregates" msgstr "el operador de ordenamiento sólo puede ser especificado para funciones de agregación de un solo argumento" -#: 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 "no se puede cambiar el tipo de rutina" -#: catalog/pg_aggregate.c:708 +#: catalog/pg_aggregate.c:709 #, c-format msgid "\"%s\" is an ordinary aggregate function." msgstr "«%s» es una función de agregación corriente." -#: catalog/pg_aggregate.c:710 +#: catalog/pg_aggregate.c:711 #, c-format msgid "\"%s\" is an ordered-set aggregate." msgstr "«%s» es una función de agregación de conjunto ordenado." -#: catalog/pg_aggregate.c:712 +#: catalog/pg_aggregate.c:713 #, c-format msgid "\"%s\" is a hypothetical-set aggregate." msgstr "«%s» es una agregación de conjunto hipotético." -#: catalog/pg_aggregate.c:717 +#: catalog/pg_aggregate.c:718 #, c-format msgid "cannot change number of direct arguments of an aggregate function" msgstr "no se puede cambiar cantidad de argumentos directos de una función de agregación" -#: 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 "no existe la función %s" -#: catalog/pg_aggregate.c:864 +#: catalog/pg_aggregate.c:865 #, c-format msgid "function %s returns a set" msgstr "la función %s retorna un conjunto" -#: 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 "la función %s debe aceptar VARIADIC ANY para usarse en esta agregación" -#: catalog/pg_aggregate.c:903 +#: catalog/pg_aggregate.c:904 #, c-format msgid "function %s requires run-time type coercion" msgstr "la función %s requiere conversión de tipos en tiempo de ejecución" @@ -5992,21 +6095,54 @@ 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:732 +#: catalog/pg_constraint.c:763 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:9559 +#, c-format +msgid "You might need to make the existing constraint inheritable using %s." +msgstr "" + +#: catalog/pg_constraint.c:775 +#, 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:9571 +#, 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 #, 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: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 "no existe la restricción «%s» para la tabla «%s»" -#: catalog/pg_constraint.c:1125 +#: catalog/pg_constraint.c:1410 #, 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 +#, c-format +msgid "invalid type for PERIOD part of foreign key" +msgstr "" + +#: 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" @@ -6017,27 +6153,27 @@ msgstr "ya existe la conversión «%s»" msgid "default conversion for %s to %s already exists" msgstr "ya existe una conversión por omisión desde %s a %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» ya es un miembro de la extensión «%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 no es un miembro de la extensión «%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 "A una extensión no se le permite reemplazar un objeto que no posee." -#: 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 "Una extensión sólo puede usar CREATE ... IF NOT EXISTS para omitir la creación de un objeto si el objeto en conflicto es uno de cual ya es dueña." -#: 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 "no se puede eliminar dependencia a %s porque es un objeto requerido por el sistema" @@ -6087,8 +6223,8 @@ msgstr "no se puede desprender la partición «%s»" msgid "The partition is being detached concurrently or has an unfinished detach." msgstr "La partición está siendo desprendida de forma concurrente o tiene un desprendimiento sin terminar." -#: catalog/pg_inherits.c:595 commands/tablecmds.c:4800 -#: commands/tablecmds.c:16153 +#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 +#: commands/tablecmds.c:17866 #, c-format msgid "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending detach operation." msgstr "Utilice ALTER TABLE ... DETACH PARTITION ... FINALIZE para completar la operación de desprendimiento pendiente." @@ -6193,44 +6329,44 @@ msgstr "el operator de negación %s ya es el negador del operador %u" msgid "parameter ACL \"%s\" does not exist" msgstr "no existe el ACL de parámetro «%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" msgstr[0] "las funciones no pueden tener más de %d argumento" msgstr[1] "las funciones no pueden tener más de %d argumentos" -#: catalog/pg_proc.c:374 +#: catalog/pg_proc.c:402 #, c-format msgid "function \"%s\" already exists with same argument types" msgstr "ya existe una función «%s» con los mismos argumentos" -#: catalog/pg_proc.c:386 +#: catalog/pg_proc.c:414 #, c-format msgid "\"%s\" is an aggregate function." msgstr "«%s» es una función de agregación." -#: catalog/pg_proc.c:388 +#: catalog/pg_proc.c:416 #, c-format msgid "\"%s\" is a function." msgstr "«%s» es una función de agregación." -#: catalog/pg_proc.c:390 +#: catalog/pg_proc.c:418 #, c-format msgid "\"%s\" is a procedure." msgstr "«%s» es un índice parcial." -#: catalog/pg_proc.c:392 +#: catalog/pg_proc.c:420 #, c-format msgid "\"%s\" is a window function." msgstr "«%s» es una función de ventana deslizante." -#: catalog/pg_proc.c:412 +#: catalog/pg_proc.c:440 #, c-format msgid "cannot change whether a procedure has output parameters" msgstr "no se puede cambiar que un procedimiento tenga parámetros de salida" -#: 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 "no se puede cambiar el tipo de retorno de una función existente" @@ -6239,109 +6375,110 @@ msgstr "no se puede cambiar el tipo de retorno de una función existente" #. 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 "Use %s %s primero." -#: catalog/pg_proc.c:444 +#: catalog/pg_proc.c:472 #, c-format msgid "Row type defined by OUT parameters is different." msgstr "Tipo de registro definido por parámetros OUT es diferente." -#: catalog/pg_proc.c:488 +#: catalog/pg_proc.c:516 #, c-format msgid "cannot change name of input parameter \"%s\"" msgstr "no se puede cambiar el nombre del parámetro de entrada «%s»" -#: catalog/pg_proc.c:515 +#: catalog/pg_proc.c:543 #, c-format msgid "cannot remove parameter defaults from existing function" msgstr "no se puede eliminar el valor por omisión de funciones existentes" -#: catalog/pg_proc.c:539 +#: catalog/pg_proc.c:567 #, c-format msgid "cannot change data type of existing parameter default value" msgstr "no se puede cambiar el tipo de dato del valor por omisión de un parámetro" -#: catalog/pg_proc.c:750 +#: catalog/pg_proc.c:771 #, c-format msgid "there is no built-in function named \"%s\"" msgstr "no hay ninguna función interna llamada «%s»" -#: catalog/pg_proc.c:843 +#: catalog/pg_proc.c:864 #, c-format msgid "SQL functions cannot return type %s" msgstr "las funciones SQL no pueden retornar el tipo %s" -#: catalog/pg_proc.c:858 +#: catalog/pg_proc.c:879 #, c-format msgid "SQL functions cannot have arguments of type %s" msgstr "las funciones SQL no pueden tener argumentos de tipo %s" -#: catalog/pg_proc.c:986 executor/functions.c:1468 +#: catalog/pg_proc.c:1007 #, c-format msgid "SQL function \"%s\"" msgstr "función 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 "no se puede agregar la relación «%s» a la publicación" -#: catalog/pg_publication.c:76 +#: catalog/pg_publication.c:73 #, c-format msgid "This operation is not supported for system tables." msgstr "Esta operación no está soportada en tablas de sistema." -#: catalog/pg_publication.c:84 +#: catalog/pg_publication.c:81 #, c-format msgid "This operation is not supported for temporary tables." msgstr "Esta operación no está soportada en tablas temporales." -#: catalog/pg_publication.c:90 +#: catalog/pg_publication.c:87 #, c-format msgid "This operation is not supported for unlogged tables." msgstr "Esta característica no está soportada en tablas «unlogged»." -#: 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 "no se puede agregar el esquema «%s» a la partición" -#: catalog/pg_publication.c:106 +#: catalog/pg_publication.c:103 #, c-format msgid "This operation is not supported for system schemas." msgstr "Esta operación no está soportada en esquemas de sistema." -#: catalog/pg_publication.c:114 +#: catalog/pg_publication.c:111 #, c-format msgid "Temporary schemas cannot be replicated." msgstr "Los esquemas temporales no pueden replicarse." -#: catalog/pg_publication.c:392 +#: catalog/pg_publication.c:462 #, c-format msgid "relation \"%s\" is already member of publication \"%s\"" msgstr "la relación «%s» ya es un miembro de la publicación «%s»" -#: catalog/pg_publication.c:534 +#: catalog/pg_publication.c:576 #, c-format msgid "cannot use system column \"%s\" in publication column list" msgstr "no se puede usar la columna de sistema «%s» en lista de columnas de publicación" -#: catalog/pg_publication.c:540 -#, c-format -msgid "cannot use generated column \"%s\" in publication column list" +#: catalog/pg_publication.c:582 +#, fuzzy, c-format +#| msgid "cannot use generated column \"%s\" in publication column list" +msgid "cannot use virtual generated column \"%s\" in publication column list" msgstr "no se puede usar la columna generada «%s» en lista de columnas de publicación" -#: catalog/pg_publication.c:546 +#: catalog/pg_publication.c:588 #, c-format msgid "duplicate column \"%s\" in publication column list" msgstr "columna «%s» duplicada en lista de columnas de publicación" -#: catalog/pg_publication.c:636 +#: catalog/pg_publication.c:700 #, c-format msgid "schema \"%s\" is already member of publication \"%s\"" msgstr "el esquema «%s» ya es miembro de la publicación «%s»" @@ -6419,12 +6556,12 @@ msgstr "no se puede eliminar objetos de propiedad de %s porque son requeridos po msgid "cannot reassign ownership of objects owned by %s because they are required by the database system" msgstr "no se puede reasignar la propiedad de objetos de %s porque son requeridos por el sistema" -#: catalog/pg_subscription.c:438 +#: catalog/pg_subscription.c:484 #, c-format msgid "could not drop relation mapping for subscription \"%s\"" msgstr "no se pudo eliminar mapeo de relación para suscripción «%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 "La sincronización de tabla para la relación «%s» está en progreso y su estado es «%c»." @@ -6432,7 +6569,7 @@ msgstr "La sincronización de tabla para la relación «%s» está en progreso y #. 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 "Utilice %s para activar la suscripción si aún no está activada, o utilice %s para eliminar la suscripción." @@ -6463,7 +6600,7 @@ msgstr "el tamaño interno %d no es válido para un tipo pasado por valor" msgid "alignment \"%c\" is invalid for variable-length type" msgstr "el alineamiento «%c» no es válido para un tipo de largo variable" -#: 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 "los tipos de tamaño fijo deben tener almacenamiento PLAIN" @@ -6478,9 +6615,10 @@ msgstr "Falla al crear un tipo de multirango para el tipo «%s»." msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute." msgstr "Puede especificar manualmente un nombre para el tipo de multirango usando el atributo «multirange_type_name»." -#: catalog/storage.c:533 storage/buffer/bufmgr.c:1540 -#, c-format -msgid "invalid page in block %u of relation %s" +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 +#, fuzzy, c-format +#| msgid "invalid page in block %u of relation %s" +msgid "invalid page in block %u of relation \"%s\"" msgstr "la página no es válida en el bloque %u de la relación %s" #: commands/aggregatecmds.c:167 @@ -6563,7 +6701,7 @@ msgstr "las funciones de serialización pueden especificarse sólo cuando el tip msgid "must specify both or neither of serialization and deserialization functions" msgstr "debe especificar ambas o ninguna de las funciones de serialización y deserialización" -#: 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 "el parámetro «parallel» debe ser SAFE, RESTRICTED o UNSAFE" @@ -6573,17 +6711,17 @@ msgstr "el parámetro «parallel» debe ser SAFE, RESTRICTED o UNSAFE" msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE" msgstr "el parámetro «%s» debe ser READ_ONLY, SHAREABLE o 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 "el “trigger” por eventos «%s» ya existe" -#: commands/alter.c:86 commands/foreigncmds.c:593 +#: commands/alter.c:86 commands/foreigncmds.c:604 #, c-format msgid "foreign-data wrapper \"%s\" already exists" msgstr "el conector de datos externos «%s» ya existe" -#: commands/alter.c:89 commands/foreigncmds.c:884 +#: commands/alter.c:89 commands/foreigncmds.c:895 #, c-format msgid "server \"%s\" already exists" msgstr "el servidor «%s» ya existe" @@ -6593,12 +6731,12 @@ msgstr "el servidor «%s» ya existe" msgid "language \"%s\" already exists" msgstr "ya existe el lenguaje «%s»" -#: commands/alter.c:95 commands/publicationcmds.c:764 +#: commands/alter.c:95 commands/publicationcmds.c:865 #, c-format msgid "publication \"%s\" already exists" msgstr "la publicación «%s» ya existe" -#: commands/alter.c:98 commands/subscriptioncmds.c:669 +#: commands/alter.c:98 commands/subscriptioncmds.c:629 #, c-format msgid "subscription \"%s\" already exists" msgstr "la suscripción «%s» ya existe" @@ -6638,21 +6776,21 @@ msgstr "la configuración de búsqueda en texto «%s» ya existe en el esquema msgid "must be superuser to rename %s" msgstr "debe ser superusuario para cambiar el nombre de «%s»" -#: commands/alter.c:256 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 es sólo para superusuario" -#: commands/alter.c:257 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 "Las suscripciones con la opción password_required puesta en falso sólo pueden ser creadas o modificadas por el superusuario." -#: commands/alter.c:735 +#: commands/alter.c:746 #, c-format msgid "must be superuser to set schema of %s" msgstr "debe ser superusuario para definir el esquema de %s" @@ -6672,7 +6810,7 @@ msgstr "Debe ser superusuario para crear un método de acceso." msgid "access method \"%s\" already exists" msgstr "el método de acceso «%s» ya existe" -#: commands/amcmds.c:154 commands/indexcmds.c:224 commands/indexcmds.c:850 +#: 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" @@ -6683,54 +6821,60 @@ msgstr "no existe el método de acceso «%s»" msgid "handler function is not specified" msgstr "no se ha especificado una función manejadora" -#: 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 "la función %s debe retornar el tipo %s" -#: commands/analyze.c:217 +#: commands/analyze.c:215 #, c-format msgid "skipping \"%s\" --- cannot analyze this foreign table" msgstr "omitiendo «%s»: no se puede analizar esta tabla foránea" -#: commands/analyze.c:234 +#: commands/analyze.c:232 #, c-format msgid "skipping \"%s\" --- cannot analyze non-tables or special system tables" msgstr "omitiendo «%s»: no se pueden analizar objetos que no son tablas, ni tablas especiales de sistema" -#: commands/analyze.c:314 +#: commands/analyze.c:317 #, c-format msgid "analyzing \"%s.%s\" inheritance tree" msgstr "analizando la jerarquía de herencia «%s.%s»" -#: commands/analyze.c:319 +#: commands/analyze.c:322 #, c-format msgid "analyzing \"%s.%s\"" msgstr "analizando «%s.%s»" -#: commands/analyze.c:385 +#: commands/analyze.c:393 #, c-format msgid "column \"%s\" of relation \"%s\" appears more than once" msgstr "la columna «%s» aparece más de una vez en la relación «%s»" -#: commands/analyze.c:785 +#: commands/analyze.c:803 #, c-format msgid "automatic analyze of table \"%s.%s.%s\"\n" msgstr "análisis automático de la tabla «%s.%s.%s»\n" -#: commands/analyze.c:1300 +#: commands/analyze.c:805 +#, fuzzy, c-format +#| msgid "heap table \"%s.%s.%s\":\n" +msgid "finished analyzing table \"%s.%s.%s\"\n" +msgstr "tabla heap «%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»: se procesaron %d de %u páginas, que contenían %.0f filas vigentes y %.0f filas no vigentes; %d filas en la muestra, %.0f total de filas estimadas" -#: 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 "omitiendo el análisis del árbol de herencia «%s.%s» --- este árbol no contiene tablas hijas" -#: 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 "omitiendo el análisis del árbol de herencia «%s.%s» --- este árbol no contiene tablas hijas analizables" @@ -6775,82 +6919,82 @@ 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:128 +#: commands/cluster.c:127 #, c-format msgid "unrecognized CLUSTER option \"%s\"" msgstr "opción de CLUSTER «%s» no reconocida" -#: 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 "no se pueden reordenar tablas temporales de otras sesiones" -#: commands/cluster.c:177 +#: commands/cluster.c:176 #, c-format msgid "there is no previously clustered index for table \"%s\"" msgstr "no hay un índice de ordenamiento definido para la tabla «%s»" -#: commands/cluster.c:191 commands/tablecmds.c:14797 commands/tablecmds.c:16729 +#: commands/cluster.c:190 commands/tablecmds.c:16422 commands/tablecmds.c:18488 #, c-format msgid "index \"%s\" for table \"%s\" does not exist" msgstr "no existe el índice «%s» en la tabla «%s»" -#: commands/cluster.c:422 +#: commands/cluster.c:410 #, c-format msgid "cannot cluster a shared catalog" msgstr "no se puede reordenar un catálogo compartido" -#: commands/cluster.c:437 +#: commands/cluster.c:425 #, c-format msgid "cannot vacuum temporary tables of other sessions" msgstr "no se puede hacer vacuum a tablas temporales de otras sesiones" -#: commands/cluster.c:513 commands/tablecmds.c:16739 +#: commands/cluster.c:507 commands/tablecmds.c:18498 #, c-format msgid "\"%s\" is not an index for table \"%s\"" msgstr "«%s» no es un índice de la tabla «%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 "no se puede reordenar en índice «%s» porque el método de acceso no soporta reordenamiento" -#: commands/cluster.c:533 +#: commands/cluster.c:527 #, c-format msgid "cannot cluster on partial index \"%s\"" msgstr "no se puede reordenar en índice parcial «%s»" -#: commands/cluster.c:547 +#: commands/cluster.c:541 #, c-format msgid "cannot cluster on invalid index \"%s\"" msgstr "no se puede reordenar en el índice no válido «%s»" -#: commands/cluster.c:571 +#: commands/cluster.c:565 #, c-format msgid "cannot mark index clustered in partitioned table" msgstr "no se puede marcar un índice «clustered» en una tabla particionada" -#: commands/cluster.c:956 +#: commands/cluster.c:961 #, c-format msgid "clustering \"%s.%s\" using index scan on \"%s\"" msgstr "reordenando «%s.%s» usando un recorrido de índice en «%s»" -#: commands/cluster.c:962 +#: commands/cluster.c:967 #, c-format msgid "clustering \"%s.%s\" using sequential scan and sort" msgstr "reordenando «%s.%s» usando un recorrido secuencial y ordenamiento" -#: commands/cluster.c:967 +#: commands/cluster.c:972 #, c-format msgid "vacuuming \"%s.%s\"" msgstr "haciendo vacuum a «%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»: se encontraron %.0f versiones de filas eliminables, %.0f no eliminables en %u páginas" -#: commands/cluster.c:999 +#: commands/cluster.c:1004 #, c-format msgid "" "%.0f dead row versions cannot be removed yet.\n" @@ -6859,7 +7003,7 @@ msgstr "" "%.0f versiones muertas de filas no pueden ser eliminadas aún.\n" "%s." -#: commands/cluster.c:1744 +#: commands/cluster.c:1751 #, c-format msgid "permission denied to cluster \"%s\", skipping it" msgstr "permiso denegado a hacer cluster a «%s», ignorando" @@ -6870,13 +7014,14 @@ msgid "collation attribute \"%s\" not recognized" msgstr "el atributo de ordenamiento (collation) «%s» no es reconocido" #: commands/collationcmds.c:123 commands/collationcmds.c:129 -#: commands/define.c:388 commands/tablecmds.c:8129 -#: replication/pgoutput/pgoutput.c:314 replication/pgoutput/pgoutput.c:337 -#: replication/pgoutput/pgoutput.c:351 replication/pgoutput/pgoutput.c:361 -#: replication/pgoutput/pgoutput.c:371 replication/pgoutput/pgoutput.c:381 -#: replication/pgoutput/pgoutput.c:393 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: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 #, c-format msgid "conflicting or redundant options" msgstr "opciones contradictorias o redundantes" @@ -6907,7 +7052,7 @@ msgstr "proveedor de ordenamiento no reconocido: %s" msgid "parameter \"%s\" must be specified" msgstr "el parámetro «%s» debe especificarse" -#: 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 "usando la forma estándar «%s» para la configuración regional ICU «%s»" @@ -6917,7 +7062,7 @@ msgstr "usando la forma estándar «%s» para la configuración regional ICU «% msgid "nondeterministic collations not supported with this provider" msgstr "los ordenamientos no determinísticos no están soportados con este proveedor" -#: 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 "no se pueden especificar reglas ICU a menos que el proveedor de configuración regional sea ICU" @@ -6927,68 +7072,69 @@ msgstr "no se pueden especificar reglas ICU a menos que el proveedor de configur msgid "current database's encoding is not supported with this provider" msgstr "la codificación de la base de datos actual no está soportada con este proveedor" -#: commands/collationcmds.c:409 +#: commands/collationcmds.c:405 #, c-format msgid "collation \"%s\" for encoding \"%s\" already exists in schema \"%s\"" msgstr "ya existe un ordenamiento (collation) llamado «%s» para la codificación «%s» en el esquema «%s»" -#: commands/collationcmds.c:420 +#: commands/collationcmds.c:416 #, c-format msgid "collation \"%s\" already exists in schema \"%s\"" msgstr "ya existe un ordenamiento llamado «%s» en el esquema «%s»" -#: commands/collationcmds.c:445 +#: commands/collationcmds.c:441 #, c-format msgid "cannot refresh version of default collation" msgstr "no se puede refrescar la versión del ordenamiento por omisión" #. translator: %s is an SQL command #. translator: %s is an SQL ALTER command -#: commands/collationcmds.c:447 commands/subscriptioncmds.c:1376 -#: commands/tablecmds.c:7905 commands/tablecmds.c:7915 -#: commands/tablecmds.c:7917 commands/tablecmds.c:14499 -#: commands/tablecmds.c:17884 commands/tablecmds.c:17905 -#: 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:16124 +#: commands/tablecmds.c:19652 commands/tablecmds.c:19673 +#: commands/typecmds.c:3786 commands/typecmds.c:3871 commands/typecmds.c:4225 #, c-format msgid "Use %s instead." msgstr "Use %s en su lugar." -#: commands/collationcmds.c:480 commands/dbcommands.c:2566 +#: commands/collationcmds.c:476 commands/dbcommands.c:2605 #, c-format msgid "changing version from %s to %s" msgstr "cambiando versión de %s a %s" -#: commands/collationcmds.c:495 commands/dbcommands.c:2579 +#: commands/collationcmds.c:491 commands/dbcommands.c:2618 #, c-format msgid "version has not changed" msgstr "la versión no ha cambiado" -#: commands/collationcmds.c:528 commands/dbcommands.c:2749 +#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: utils/adt/dbsize.c:180 #, c-format msgid "database with OID %u does not exist" msgstr "no existe la base de datos con OID %u" -#: commands/collationcmds.c:554 +#: commands/collationcmds.c:550 #, c-format msgid "collation with OID %u does not exist" msgstr "no existe el ordenamiento (collation) con OID %u" -#: commands/collationcmds.c:848 +#: commands/collationcmds.c:844 #, c-format msgid "must be superuser to import system collations" msgstr "debe ser superusuario para importar ordenamientos del sistema" -#: 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 "no se encontraron locales de sistema utilizables" -#: commands/comment.c:61 commands/dbcommands.c:1665 commands/dbcommands.c:1883 -#: commands/dbcommands.c:1995 commands/dbcommands.c:2193 -#: commands/dbcommands.c:2433 commands/dbcommands.c:2526 -#: commands/dbcommands.c:2650 commands/dbcommands.c:3161 -#: utils/init/postinit.c:1034 utils/init/postinit.c:1098 -#: utils/init/postinit.c:1171 +#: 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 #, c-format msgid "database \"%s\" does not exist" msgstr "no existe la base de datos «%s»" @@ -6998,12 +7144,12 @@ msgstr "no existe la base de datos «%s»" msgid "cannot set comment on relation \"%s\"" msgstr "no se puede definir comentario en la relación «%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 "la función «%s» no fue ejecutada por el manejador de triggers" -#: 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 "la función «%s» debe ser ejecutada AFTER ROW" @@ -7095,246 +7241,287 @@ msgstr "«%s» requiere un valor lógico (booleano) o «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:782 commands/copy.c:798 -#: commands/copy.c:815 commands/copy.c:841 commands/copy.c:851 +#: commands/copy.c:402 commands/copy.c:818 commands/copy.c:834 +#: commands/copy.c:851 commands/copy.c:877 commands/copy.c:887 #, c-format msgid "COPY %s cannot be used with %s" msgstr "COPY %s no puede usarse con %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:416 commands/copy.c:474 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "no se reconoce el valor «%2$s» para COPY %1$s" -#: commands/copy.c:502 +#: 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 +#, c-format +msgid "%s requires a numeric value" +msgstr "%s requiere un valor numérico" + +#: commands/copy.c:446 +#, fuzzy, c-format +#| msgid "CACHE (%lld) must be greater than zero" +msgid "REJECT_LIMIT (%) must be greater than zero" +msgstr "el CACHE (%lld) debe ser mayor que cero" + +#: commands/copy.c:536 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "el formato de COPY «%s» no es reconocido" -#: commands/copy.c:560 commands/copy.c:575 commands/copy.c:590 -#: commands/copy.c:609 +#: commands/copy.c:594 commands/copy.c:609 commands/copy.c:624 +#: commands/copy.c:643 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "el argumento de la opción «%s» debe ser una lista de nombres de columna" -#: commands/copy.c:621 +#: commands/copy.c:655 #, c-format 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:642 commands/dbcommands.c:866 commands/dbcommands.c:2381 +#: commands/copy.c:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 #, c-format msgid "option \"%s\" not recognized" msgstr "no se reconoce la opción «%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:696 commands/copy.c:701 commands/copy.c:706 +#: commands/copy.c:776 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "no se puede especificar %s en modo BINARY" -#: commands/copy.c:670 -#, c-format -msgid "only ON_ERROR STOP is allowed in BINARY mode" -msgstr "sólo ON ERROR STOP es permitido en modo BINARY" - -#: commands/copy.c:692 +#: commands/copy.c:728 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "el delimitador de COPY debe ser un solo carácter de un byte" -#: commands/copy.c:699 +#: commands/copy.c:735 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "el delimitador de COPY no puede ser el carácter de nueva línea ni el de retorno de carro" -#: commands/copy.c:705 +#: commands/copy.c:741 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "la representación de null de COPY no puede usar el carácter de nueva línea ni el de retorno de carro" -#: commands/copy.c:715 +#: commands/copy.c:751 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "la representación de default de COPY no puede usar el carácter de nueva línea ni el de retorno de carro" -#: commands/copy.c:733 +#: commands/copy.c:769 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "el delimitador de COPY no puede ser «%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:791 commands/copy.c:807 +#: commands/copy.c:783 commands/copy.c:800 commands/copy.c:812 +#: commands/copy.c:827 commands/copy.c:843 #, c-format msgid "COPY %s requires CSV mode" msgstr "COPY %s requiere modo CSV" -#: commands/copy.c:752 +#: commands/copy.c:788 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "la comilla («quote») de COPY debe ser un solo carácter de un byte" -#: commands/copy.c:757 +#: commands/copy.c:793 #, c-format msgid "COPY delimiter and quote must be different" msgstr "el delimitador de COPY y la comilla («quote») deben ser diferentes" -#: commands/copy.c:769 +#: commands/copy.c:805 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "el escape de COPY debe ser un sólo carácter de un byte" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:823 commands/copy.c:859 +#: commands/copy.c:859 commands/copy.c:895 #, c-format msgid "COPY delimiter character must not appear in the %s specification" msgstr "el carácter delimitador de COPY no debe aparecer en la especificación %s" #. translator: %s is the name of a COPY option, e.g. NULL -#: commands/copy.c:832 commands/copy.c:868 +#: commands/copy.c:868 commands/copy.c:904 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "el carácter de «quote» de CSV no debe aparecer en la especificación %s" -#: commands/copy.c:877 +#: commands/copy.c:913 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "las especificaciones NULL y DEFAULT no pueden ser la misma" -#: commands/copy.c:939 +#: commands/copy.c:919 +#, c-format +msgid "only ON_ERROR STOP is allowed in BINARY mode" +msgstr "sólo ON ERROR STOP es permitido en modo 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 +#, fuzzy, c-format +#| msgid "COPY %s requires CSV mode" +msgid "COPY %s requires %s to be set to %s" +msgstr "COPY %s requiere modo CSV" + +#: commands/copy.c:988 #, c-format msgid "column \"%s\" is a generated column" msgstr "la columna «%s» es una columna generada" -#: commands/copy.c:941 +#: commands/copy.c:990 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "Las columnas generadas no pueden usarse en COPY." -#: commands/copy.c:956 commands/indexcmds.c:1890 commands/statscmds.c:239 -#: commands/tablecmds.c:2526 commands/tablecmds.c:2997 -#: commands/tablecmds.c:3808 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: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 #, c-format msgid "column \"%s\" does not exist" msgstr "no existe la columna «%s»" -#: commands/copy.c:963 commands/tablecmds.c:2552 commands/trigger.c:951 -#: parser/parse_target.c:1083 parser/parse_target.c:1094 +#: commands/copy.c:1012 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 "la columna «%s» fue especificada más de una vez" -#: commands/copyfrom.c:118 +#: commands/copyfrom.c:260 #, c-format msgid "COPY %s" msgstr "COPY %s" -#: commands/copyfrom.c:126 -#, c-format -msgid "COPY %s, line %llu, column %s" +#: commands/copyfrom.c:268 +#, fuzzy, c-format +#| msgid "COPY %s, line %llu, column %s" +msgid "COPY %s, line %, column %s" msgstr "COPY %s, línea %llu, columna %s" -#: commands/copyfrom.c:131 commands/copyfrom.c:177 -#, c-format -msgid "COPY %s, line %llu" +#: commands/copyfrom.c:273 commands/copyfrom.c:319 +#, fuzzy, c-format +#| msgid "COPY %s, line %llu" +msgid "COPY %s, line %" msgstr "COPY %s, línea %llu" -#: commands/copyfrom.c:143 -#, c-format -msgid "COPY %s, line %llu, column %s: \"%s\"" +#: commands/copyfrom.c:285 +#, fuzzy, c-format +#| msgid "COPY %s, line %llu, column %s: \"%s\"" +msgid "COPY %s, line %, column %s: \"%s\"" msgstr "COPY %s, línea %llu, columna %s: «%s»" -#: commands/copyfrom.c:153 -#, c-format -msgid "COPY %s, line %llu, column %s: null input" +#: commands/copyfrom.c:295 +#, fuzzy, c-format +#| msgid "COPY %s, line %llu, column %s: null input" +msgid "COPY %s, line %, column %s: null input" msgstr "COPY %s, línea %llu, columna %s: entrada nula" -#: commands/copyfrom.c:170 -#, c-format -msgid "COPY %s, line %llu: \"%s\"" +#: commands/copyfrom.c:312 +#, fuzzy, c-format +#| msgid "COPY %s, line %llu: \"%s\"" +msgid "COPY %s, line %: \"%s\"" msgstr "COPY %s, línea %llu: «%s»" -#: commands/copyfrom.c:673 +#: commands/copyfrom.c:823 #, c-format msgid "cannot copy to view \"%s\"" msgstr "no se puede copiar hacia la vista «%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 "Para posibilitar «copy» a una vista, provea un “trigger” INSTEAD OF INSERT." -#: commands/copyfrom.c:679 +#: commands/copyfrom.c:829 #, c-format msgid "cannot copy to materialized view \"%s\"" msgstr "no se puede copiar hacia la vista materializada «%s»" -#: commands/copyfrom.c:684 +#: commands/copyfrom.c:834 #, c-format msgid "cannot copy to sequence \"%s\"" msgstr "no se puede copiar hacia la secuencia «%s»" -#: commands/copyfrom.c:689 +#: commands/copyfrom.c:839 #, c-format msgid "cannot copy to non-table relation \"%s\"" msgstr "no se puede copiar hacia la relación «%s» porque no es una tabla" -#: commands/copyfrom.c:729 +#: commands/copyfrom.c:879 #, c-format msgid "cannot perform COPY FREEZE on a partitioned table" msgstr "no se puede hacer COPY FREEZE a una tabla particionada" -#: commands/copyfrom.c:744 +#: commands/copyfrom.c:886 +#, fuzzy, c-format +#| msgid "cannot perform COPY FREEZE on a partitioned table" +msgid "cannot perform COPY FREEZE on a foreign table" +msgstr "no se puede hacer COPY FREEZE a una tabla particionada" + +#: commands/copyfrom.c:900 #, c-format msgid "cannot perform COPY FREEZE because of prior transaction activity" msgstr "no se puede ejecutar COPY FREEZE debido a actividad anterior en la transacción" -#: 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 "no se puede ejecutar COPY FREEZE porque la tabla no fue creada ni truncada en la subtransacción en curso" -#: commands/copyfrom.c:1313 -#, c-format -msgid "%llu row was skipped due to data type incompatibility" -msgid_plural "%llu rows were skipped due to data type incompatibility" +#: commands/copyfrom.c:1171 +#, fuzzy, c-format +#| msgid "%llu row was skipped due to data type incompatibility" +#| msgid_plural "%llu rows were skipped due to data type incompatibility" +msgid "skipped more than REJECT_LIMIT (%) rows due to data type incompatibility" +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" +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" #. 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:601 +#: commands/copyfrom.c:1611 commands/copyfrom.c:1654 commands/copyto.c:880 #, c-format msgid "%s column \"%s\" not referenced by COPY" msgstr "la columna %s «%s» no es referenciada en 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 "no existe el procedimiento por omisión de conversión desde la codificación «%s» a «%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 indica al proceso servidor de PostgreSQL leer un archivo. Puede desear usar una facilidad del lado del cliente como \\copy de psql." -#: commands/copyfrom.c:1755 commands/copyto.c:706 +#: commands/copyfrom.c:1895 commands/copyto.c:985 #, c-format msgid "\"%s\" is a directory" msgstr "«%s» es un directorio" -#: 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 "no se pudo cerrar la tubería a la orden externa: %m" -#: commands/copyfrom.c:1838 commands/copyto.c:304 +#: commands/copyfrom.c:1968 commands/copyto.c:577 #, c-format msgid "program \"%s\" failed" msgstr "el programa «%s» falló" @@ -7375,676 +7562,688 @@ msgid "could not read from COPY file: %m" msgstr "no se pudo leer desde archivo 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:732 replication/walsender.c:758 tcop/postgres.c:369 #, c-format msgid "unexpected EOF on client connection with an open transaction" msgstr "se encontró fin de archivo inesperado en una conexión con una transacción abierta" -#: commands/copyfromparse.c:294 replication/walsender.c:772 +#: commands/copyfromparse.c:294 replication/walsender.c:748 #, c-format msgid "unexpected message type 0x%02X during COPY from stdin" msgstr "se recibió un mensaje de tipo 0x%02X inesperado durante COPY desde la entrada estándar" -#: commands/copyfromparse.c:317 replication/walsender.c:803 +#: commands/copyfromparse.c:317 replication/walsender.c:779 #, c-format msgid "COPY from stdin failed: %s" msgstr "falló COPY desde la entrada estándar: %s" -#: commands/copyfromparse.c:785 +#: commands/copyfromparse.c:802 #, c-format msgid "wrong number of fields in header line: got %d, expected %d" msgstr "número de campos en línea de cabecera erróneo: %d, se esperaban %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 "discordancia de nombre de columna en campo %d de la línea de encabezado: se obtuvo valor nulo («%s»), se esperaba «%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 "discordancia en nombre de columna en campo %d de la línea de encabezado: se obtuvo «%s», se esperaba «%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 "datos extra después de la última columna esperada" -#: commands/copyfromparse.c:906 +#: commands/copyfromparse.c:976 #, c-format msgid "missing data for column \"%s\"" msgstr "faltan datos en la columna «%s»" -#: commands/copyfromparse.c:990 -#, c-format -msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": \"%s\"" +#: commands/copyfromparse.c:1056 +#, fuzzy, c-format +#| msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": \"%s\"" +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»" -#: commands/copyfromparse.c:998 -#, c-format -msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": null input" +#: commands/copyfromparse.c:1064 +#, fuzzy, c-format +#| msgid "skipping row due to data type incompatibility at line %llu for column \"%s\": null input" +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" -#: commands/copyfromparse.c:1044 +#: commands/copyfromparse.c:1122 #, c-format msgid "received copy data after EOF marker" msgstr "se recibieron datos de copy después del marcador EOF" -#: commands/copyfromparse.c:1051 +#: commands/copyfromparse.c:1129 #, c-format msgid "row field count is %d, expected %d" msgstr "la cantidad de registros es %d, pero se esperaban %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 "se encontró un retorno de carro literal en los datos" -#: 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 "se encontró un retorno de carro fuera de comillas en los datos" -#: 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 "Use «\\r» para representar el retorno de carro." -#: 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 "Use un campo CSV entre comillas para representar el retorno de carro." -#: commands/copyfromparse.c:1369 +#: commands/copyfromparse.c:1427 #, c-format msgid "literal newline found in data" msgstr "se encontró un salto de línea literal en los datos" -#: commands/copyfromparse.c:1370 +#: commands/copyfromparse.c:1428 #, c-format msgid "unquoted newline found in data" msgstr "se encontró un salto de línea fuera de comillas en los datos" -#: commands/copyfromparse.c:1372 +#: commands/copyfromparse.c:1430 #, c-format msgid "Use \"\\n\" to represent newline." msgstr "Use «\\n» para representar un salto de línea." -#: commands/copyfromparse.c:1373 +#: commands/copyfromparse.c:1431 #, c-format msgid "Use quoted CSV field to represent newline." msgstr "Use un campo CSV entre comillas para representar un salto de línea." -#: 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 "el marcador fin-de-copy no coincide con el estilo previo de salto de línea" -#: commands/copyfromparse.c:1428 commands/copyfromparse.c:1444 -#, c-format -msgid "end-of-copy marker corrupt" -msgstr "marcador fin-de-copy corrupto" +#: commands/copyfromparse.c:1473 commands/copyfromparse.c:1484 +#: commands/copyfromparse.c:1500 +#, fuzzy, c-format +#| msgid "end-of-copy marker does not match previous newline style" +msgid "end-of-copy marker is not alone on its line" +msgstr "el marcador fin-de-copy no coincide con el estilo previo de salto de línea" -#: 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 "marcador “default” inesperado en datos de 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 "La columna «%s» no tiene valor por omisión." -#: commands/copyfromparse.c:1894 +#: commands/copyfromparse.c:1921 #, c-format msgid "unterminated CSV quoted field" msgstr "un valor entre comillas está inconcluso" -#: 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 "EOF inesperado en datos de COPY" -#: commands/copyfromparse.c:2005 +#: commands/copyfromparse.c:2032 #, c-format msgid "invalid field size" msgstr "el tamaño de campo no es válido" -#: commands/copyfromparse.c:2028 +#: commands/copyfromparse.c:2055 #, c-format msgid "incorrect binary data format" msgstr "el formato de datos binarios es incorrecto" -#: commands/copyto.c:229 +#: commands/copyto.c:477 #, c-format msgid "could not write to COPY program: %m" msgstr "no se pudo escribir al programa COPY: %m" -#: commands/copyto.c:234 +#: commands/copyto.c:482 #, c-format msgid "could not write to COPY file: %m" msgstr "no se pudo escribir archivo COPY: %m" -#: commands/copyto.c:379 +#: commands/copyto.c:652 #, c-format msgid "cannot copy from view \"%s\"" msgstr "no se puede copiar desde la vista «%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 "Intente la forma COPY (SELECT ...) TO." -#: commands/copyto.c:385 -#, c-format -msgid "cannot copy from materialized view \"%s\"" +#: commands/copyto.c:660 +#, fuzzy, c-format +#| msgid "cannot copy from materialized view \"%s\"" +msgid "cannot copy from unpopulated materialized view \"%s\"" msgstr "no se puede copiar desde la vista materializada «%s»" -#: commands/copyto.c:391 +#: commands/copyto.c:662 executor/execUtils.c:760 +#, c-format +msgid "Use the REFRESH MATERIALIZED VIEW command." +msgstr "Use la orden REFRESH MATERIALIZED VIEW." + +#: commands/copyto.c:667 #, c-format msgid "cannot copy from foreign table \"%s\"" msgstr "no se puede copiar desde la tabla foránea «%s»" -#: commands/copyto.c:397 +#: commands/copyto.c:673 #, c-format msgid "cannot copy from sequence \"%s\"" msgstr "no se puede copiar desde la secuencia «%s»" -#: commands/copyto.c:402 +#: commands/copyto.c:678 #, c-format msgid "cannot copy from partitioned table \"%s\"" msgstr "no se puede hacer copy de la tabla particionada «%s»" -#: commands/copyto.c:408 +#: commands/copyto.c:684 #, c-format msgid "cannot copy from non-table relation \"%s\"" msgstr "no se puede copiar desde la relación «%s» porque no es una tabla" -#: commands/copyto.c:460 +#: commands/copyto.c:739 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for COPY" msgstr "las reglas DO INSTEAD NOTHING no están soportadas para COPY" -#: commands/copyto.c:474 +#: commands/copyto.c:753 #, c-format msgid "conditional DO INSTEAD rules are not supported for COPY" msgstr "las reglas DO INSTEAD condicionales no están soportadas para COPY" -#: commands/copyto.c:478 +#: commands/copyto.c:757 #, c-format msgid "DO ALSO rules are not supported for COPY" msgstr "las reglas DO ALSO no están soportadas para COPY" -#: commands/copyto.c:483 +#: commands/copyto.c:762 #, c-format msgid "multi-statement DO INSTEAD rules are not supported for COPY" msgstr "las reglas DO INSTEAD de múltiples sentencias no están soportadas para COPY" -#: commands/copyto.c:493 +#: commands/copyto.c:772 #, c-format msgid "COPY (SELECT INTO) is not supported" msgstr "COPY (SELECT INTO) no está soportado" -#: commands/copyto.c:499 +#: commands/copyto.c:778 #, c-format msgid "COPY query must not be a utility command" msgstr "la consulta COPY no debe ser una orden de utilidad" -#: commands/copyto.c:515 +#: commands/copyto.c:794 #, c-format msgid "COPY query must have a RETURNING clause" msgstr "la consulta COPY debe tener una cláusula RETURNING" -#: commands/copyto.c:544 +#: commands/copyto.c:823 #, c-format msgid "relation referenced by COPY statement has changed" msgstr "la relación referenciada por la sentencia COPY ha cambiado" -#: commands/copyto.c:671 +#: commands/copyto.c:950 #, c-format msgid "relative path not allowed for COPY to file" msgstr "no se permiten rutas relativas para COPY hacia un archivo" -#: commands/copyto.c:690 +#: commands/copyto.c:969 #, c-format msgid "could not open file \"%s\" for writing: %m" msgstr "no se pudo abrir el archivo «%s» para escritura: %m" -#: commands/copyto.c:693 +#: 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 indica al proceso servidor PostgreSQL escribir a un archivo. Puede desear usar facilidades del lado del cliente, como \\copy de 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 "se especificaron demasiados nombres de columna" -#: commands/createas.c:539 +#: commands/createas.c:546 #, c-format msgid "policies not yet implemented for this command" msgstr "las políticas no están implementadas para esta orden" -#: commands/dbcommands.c:829 +#: commands/dbcommands.c:843 #, c-format msgid "LOCATION is not supported anymore" msgstr "LOCATION ya no está soportado" -#: commands/dbcommands.c:830 +#: commands/dbcommands.c:844 #, c-format msgid "Consider using tablespaces instead." msgstr "Considere usar tablespaces." -#: commands/dbcommands.c:855 +#: commands/dbcommands.c:869 #, c-format msgid "OIDs less than %u are reserved for system objects" msgstr "los OIDs menores que %u están reservados para objetos del sistema" -#: 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 no es un código válido de codificación" -#: 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 no es un nombre válido de codificación" -#: commands/dbcommands.c:931 +#: commands/dbcommands.c:945 #, c-format msgid "unrecognized locale provider: %s" msgstr "proveedor de ordenamiento no reconocido: %s" -#: commands/dbcommands.c:944 commands/dbcommands.c:2414 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" msgstr "límite de conexión no válido: %d" -#: commands/dbcommands.c:965 +#: commands/dbcommands.c:979 #, c-format msgid "permission denied to create database" msgstr "se ha denegado el permiso para crear la base de datos" -#: commands/dbcommands.c:989 +#: commands/dbcommands.c:1003 #, c-format msgid "template database \"%s\" does not exist" msgstr "no existe la base de datos patrón «%s»" -#: commands/dbcommands.c:999 +#: commands/dbcommands.c:1013 #, c-format 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:1000 commands/dbcommands.c:2444 -#: utils/init/postinit.c:1113 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: utils/init/postinit.c:1095 #, c-format msgid "Use DROP DATABASE to drop invalid databases." msgstr "Use DROP DATABASE para eliminar una base de datos no válida." -#: commands/dbcommands.c:1011 +#: commands/dbcommands.c:1025 #, c-format msgid "permission denied to copy database \"%s\"" msgstr "se ha denegado el permiso para copiar la base de datos «%s»" -#: commands/dbcommands.c:1028 +#: commands/dbcommands.c:1042 #, c-format msgid "invalid create database strategy \"%s\"" msgstr "estrategia de creación de base de dato no válida: «%s»" -#: commands/dbcommands.c:1029 +#: commands/dbcommands.c:1043 #, c-format msgid "Valid strategies are \"wal_log\" and \"file_copy\"." msgstr "Las estrategias válidas son «wal_log» y «file_copy»." -#: commands/dbcommands.c:1050 +#: commands/dbcommands.c:1064 #, c-format msgid "invalid server encoding %d" msgstr "la codificación de servidor %d no es válida" -#: 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 "nombre de configuración regional LC_COLLATE no válido: «%s»" -#: commands/dbcommands.c:1057 commands/dbcommands.c:1063 -#, c-format -msgid "If the locale name is specific to ICU, use ICU_LOCALE." +#: commands/dbcommands.c:1073 commands/dbcommands.c:1091 +#, fuzzy, c-format +#| msgid "If the locale name is specific to ICU, use ICU_LOCALE." +msgid "If the locale name is specific to the builtin provider, use BUILTIN_LOCALE." msgstr "Si el nombre de configuración regional es específico a ICU, use ICU_LOCALE." -#: commands/dbcommands.c:1062 +#: commands/dbcommands.c:1078 commands/dbcommands.c:1096 +#, fuzzy, c-format +#| msgid "If the locale name is specific to ICU, use ICU_LOCALE." +msgid "If the locale name is specific to the ICU provider, use ICU_LOCALE." +msgstr "Si el nombre de configuración regional es específico a ICU, use ICU_LOCALE." + +#: commands/dbcommands.c:1090 commands/dbcommands.c:1095 +#: commands/dbcommands.c:1100 #, c-format msgid "invalid LC_CTYPE locale name: \"%s\"" msgstr "nombre de configuración regional LC_CTYPE no válido: «%s»" -#: commands/dbcommands.c:1074 +#: commands/dbcommands.c:1113 #, c-format msgid "BUILTIN_LOCALE cannot be specified unless locale provider is builtin" msgstr "no se puede especificar BUILTIN_LOCALE a menos que el proveedor de configuración regional sea builtin" -#: commands/dbcommands.c:1082 +#: commands/dbcommands.c:1121 #, c-format msgid "ICU locale cannot be specified unless locale provider is ICU" msgstr "no se puede especificar una configuración regional ICU a menos que el proveedor de configuración regional sea ICU" -#: commands/dbcommands.c:1100 +#: commands/dbcommands.c:1139 #, c-format msgid "LOCALE or BUILTIN_LOCALE must be specified" msgstr "debe especificarse LOCALE o BUILTIN_LOCALE" -#: commands/dbcommands.c:1109 +#: commands/dbcommands.c:1148 #, c-format msgid "encoding \"%s\" is not supported with ICU provider" msgstr "la codificación «%s» no está soportada por ICU" -#: commands/dbcommands.c:1119 +#: commands/dbcommands.c:1158 #, c-format msgid "LOCALE or ICU_LOCALE must be specified" msgstr "debe especificarse LOCALE o 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 "la nueva codificación (%s) es incompatible con la codificación de la base de datos patrón (%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 "Use la misma codificación que en la base de datos patrón, o bien use template0 como patrón." -#: 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 "la nueva «collation» (%s) es incompatible con la «collation» de la base de datos patrón (%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 "Use la misma «collation» que en la base de datos patrón, o bien use template0 como patrón." -#: 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 "el nuevo LC_CTYPE (%s) es incompatible con el LC_CTYPE de la base de datos patrón (%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 "Use el mismo LC_CTYPE que en la base de datos patrón, o bien use template0 como patrón." -#: 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 "el nuevo proveedor de configuración regional (%s) no coincide con el proveedor de la base de datos patrón (%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 "Use el mismo proveedor de «locale» que en la base de datos patrón, o bien use template0 como patrón." -#: 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 "la nueva configuración regional ICU (%s) es incompatible con la configuración regional ICU de la base de datos patrón (%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 "Use la misma configuración regional («locale») que en la base de datos patrón, o bien use template0 como patrón." -#: 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 "las nuevas reglas de «collation» ICU (%s) son incompatibles con las reglas de «collation» ICU de la base de datos patrón (%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 "Use las mismas reglas de «collation» ICU que en la base de datos patrón, o bien use template0 como patrón." -#: 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 "la base de datos patrón «%s» tiene una versión de configuración regional, pero no se pudo determinar una versión real" -#: commands/dbcommands.c:1248 +#: commands/dbcommands.c:1287 #, c-format msgid "template database \"%s\" has a collation version mismatch" msgstr "discordancia en la versión de «collation» de la base de datos patrón «%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 "La base de datos patrón fue creada usando la versión %s, pero el sistema operativo provee la versión %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 "Reconstruya todos los objetos de la base de datos patrón afectados por este ordenamiento y ejecute ALTER DATABASE %s REFRESH COLLATION VERSION, o construya PostgreSQL con la versión correcta de la biblioteca." -#: commands/dbcommands.c:1298 commands/dbcommands.c:2041 +#: commands/dbcommands.c:1337 commands/dbcommands.c:2080 #, c-format msgid "pg_global cannot be used as default tablespace" msgstr "no puede usarse pg_global como tablespace por omisión" -#: commands/dbcommands.c:1324 +#: commands/dbcommands.c:1363 #, c-format msgid "cannot assign new default tablespace \"%s\"" msgstr "no se puede asignar el nuevo tablespace por omisión «%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 "Hay un conflicto puesto que la base de datos «%s» ya tiene algunas tablas en este tablespace." -#: commands/dbcommands.c:1356 commands/dbcommands.c:1912 +#: commands/dbcommands.c:1395 commands/dbcommands.c:1951 #, c-format msgid "database \"%s\" already exists" msgstr "la base de datos «%s» ya existe" -#: commands/dbcommands.c:1370 +#: commands/dbcommands.c:1409 #, c-format msgid "source database \"%s\" is being accessed by other users" msgstr "la base de datos de origen «%s» está siendo utilizada por otros usuarios" -#: commands/dbcommands.c:1392 +#: commands/dbcommands.c:1431 #, c-format msgid "database OID %u is already in use by database \"%s\"" msgstr "el OID de base de datos %u ya está en uso por la base de datos «%s»" -#: commands/dbcommands.c:1398 +#: commands/dbcommands.c:1437 #, c-format msgid "data directory with the specified OID %u already exists" msgstr "el directorio de datos con el OID %u especificado ya existe" -#: commands/dbcommands.c:1571 commands/dbcommands.c:1586 -#: utils/adt/pg_locale.c:2588 +#: commands/dbcommands.c:1610 commands/dbcommands.c:1625 +#: utils/adt/pg_locale.c:1518 #, c-format msgid "encoding \"%s\" does not match locale \"%s\"" msgstr "la codificación «%s» no coincide con la configuración regional «%s»" -#: commands/dbcommands.c:1574 +#: commands/dbcommands.c:1613 #, c-format msgid "The chosen LC_CTYPE setting requires encoding \"%s\"." msgstr "El parámetro LC_CTYPE escogido requiere la codificación «%s»." -#: commands/dbcommands.c:1589 +#: commands/dbcommands.c:1628 #, c-format msgid "The chosen LC_COLLATE setting requires encoding \"%s\"." msgstr "El parámetro LC_COLLATE escogido requiere la codificación «%s»." -#: commands/dbcommands.c:1672 +#: commands/dbcommands.c:1711 #, c-format msgid "database \"%s\" does not exist, skipping" msgstr "no existe la base de datos «%s», omitiendo" -#: commands/dbcommands.c:1696 +#: commands/dbcommands.c:1735 #, c-format msgid "cannot drop a template database" msgstr "no se puede borrar una base de datos patrón" -#: commands/dbcommands.c:1702 +#: commands/dbcommands.c:1741 #, c-format msgid "cannot drop the currently open database" msgstr "no se puede eliminar la base de datos activa" -#: commands/dbcommands.c:1715 +#: commands/dbcommands.c:1754 #, c-format msgid "database \"%s\" is used by an active logical replication slot" msgstr "la base de datos «%s» está en uso por un slot de replicación lógica activo" -#: commands/dbcommands.c:1717 +#: commands/dbcommands.c:1756 #, c-format msgid "There is %d active slot." msgid_plural "There are %d active slots." msgstr[0] "Hay %d slot activo." msgstr[1] "Hay %d slots activos." -#: commands/dbcommands.c:1731 +#: commands/dbcommands.c:1770 #, c-format msgid "database \"%s\" is being used by logical replication subscription" msgstr "la base de datos «%s» está siendo utilizada por suscripciones de replicación lógica" -#: commands/dbcommands.c:1733 +#: commands/dbcommands.c:1772 #, c-format msgid "There is %d subscription." msgid_plural "There are %d subscriptions." msgstr[0] "Hay %d suscripción." msgstr[1] "Hay %d suscripciones." -#: commands/dbcommands.c:1754 commands/dbcommands.c:1934 -#: commands/dbcommands.c:2063 +#: commands/dbcommands.c:1793 commands/dbcommands.c:1973 +#: commands/dbcommands.c:2102 #, c-format msgid "database \"%s\" is being accessed by other users" msgstr "la base de datos «%s» está siendo utilizada por otros usuarios" -#: commands/dbcommands.c:1894 +#: commands/dbcommands.c:1933 #, c-format msgid "permission denied to rename database" msgstr "se ha denegado el permiso para cambiar el nombre a la base de datos" -#: commands/dbcommands.c:1923 +#: commands/dbcommands.c:1962 #, c-format msgid "current database cannot be renamed" msgstr "no se puede cambiar el nombre de la base de datos activa" -#: commands/dbcommands.c:2019 +#: commands/dbcommands.c:2058 #, c-format msgid "cannot change the tablespace of the currently open database" msgstr "no se puede cambiar el tablespace de la base de datos activa" -#: commands/dbcommands.c:2125 +#: commands/dbcommands.c:2164 #, c-format msgid "some relations of database \"%s\" are already in tablespace \"%s\"" msgstr "algunas relaciones de la base de datos «%s» ya están en el tablespace «%s»" -#: commands/dbcommands.c:2127 +#: commands/dbcommands.c:2166 #, c-format 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:2256 commands/dbcommands.c:2999 -#: commands/dbcommands.c:3299 commands/dbcommands.c:3412 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 +#: commands/dbcommands.c:3338 commands/dbcommands.c:3451 #, 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:2317 +#: commands/dbcommands.c:2356 #, c-format msgid "unrecognized DROP DATABASE option \"%s\"" msgstr "opción de DROP DATABASE «%s» no reconocida" -#: commands/dbcommands.c:2395 +#: commands/dbcommands.c:2434 #, 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:2443 +#: commands/dbcommands.c:2482 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "no se puede alterar base de datos no válida «%s»" -#: commands/dbcommands.c:2460 +#: commands/dbcommands.c:2499 #, 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:2690 +#: commands/dbcommands.c:2729 #, 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:3105 +#: commands/dbcommands.c:3144 #, 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:3108 +#: commands/dbcommands.c:3147 #, 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:3113 storage/ipc/procarray.c:3859 +#: commands/dbcommands.c:3152 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:3255 +#: commands/dbcommands.c:3294 #, c-format msgid "missing directory \"%s\"" msgstr "directorio «%s» faltante" -#: commands/dbcommands.c:3313 commands/tablespace.c:184 +#: commands/dbcommands.c:3352 commands/tablespace.c:184 #: commands/tablespace.c:633 #, c-format msgid "could not stat directory \"%s\": %m" msgstr "no se pudo hacer stat al directorio «%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 requiere un parámetro" -#: 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 requiere un valor numérico" - -#: commands/define.c:153 +#: commands/define.c:140 #, c-format msgid "%s requires a Boolean value" msgstr "«%s» requiere un valor lógico (booleano)" -#: 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 requiere valor entero" -#: commands/define.c:271 +#: commands/define.c:258 #, c-format msgid "argument of %s must be a name" msgstr "el argumento de %s debe ser un nombre" -#: commands/define.c:301 +#: commands/define.c:288 #, c-format msgid "argument of %s must be a type name" msgstr "el argumento de %s debe ser un nombre de tipo" -#: commands/define.c:347 +#: commands/define.c:334 #, c-format msgid "invalid argument for %s: \"%s\"" msgstr "argumento no válido para %s: «%s»" -#: commands/dropcmds.c:96 commands/functioncmds.c:1382 -#: utils/adt/ruleutils.c:2910 +#: commands/dropcmds.c:96 commands/functioncmds.c:1400 +#: utils/adt/ruleutils.c:2956 #, c-format msgid "\"%s\" is an aggregate function" msgstr "«%s» es una función de agregación" @@ -8054,19 +8253,19 @@ msgstr "«%s» es una función de agregación" msgid "Use DROP AGGREGATE to drop aggregate functions." msgstr "Use DROP AGGREGATE para eliminar funciones de agregación." -#: commands/dropcmds.c:153 commands/sequence.c:462 commands/tablecmds.c:3892 -#: commands/tablecmds.c:4050 commands/tablecmds.c:4102 -#: commands/tablecmds.c:17161 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:18929 tcop/utility.c:1328 #, c-format msgid "relation \"%s\" does not exist, skipping" msgstr "no existe la relación «%s», omitiendo" -#: commands/dropcmds.c:183 commands/dropcmds.c:282 commands/tablecmds.c:1409 +#: commands/dropcmds.c:183 commands/dropcmds.c:282 commands/tablecmds.c:1469 #, c-format msgid "schema \"%s\" does not exist, skipping" msgstr "el esquema «%s» no existe, omitiendo" -#: 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 "el tipo «%s» no existe, omitiendo" @@ -8086,7 +8285,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:664 +#: commands/dropcmds.c:288 commands/statscmds.c:682 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "no existe el objeto de estadísticas «%s», omitiendo" @@ -8181,7 +8380,7 @@ msgstr "la regla «%s» para la relación «%s» no existe, omitiendo" msgid "foreign-data wrapper \"%s\" does not exist, skipping" msgstr "no existe el conector de datos externos «%s», omitiendo" -#: 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 "el servidor «%s» no existe, omitiendo" @@ -8201,502 +8400,513 @@ msgstr "no existe la familia de operadores «%s» para el método de acceso «%s msgid "publication \"%s\" does not exist, skipping" msgstr "no existe la publicación «%s», omitiendo" -#: commands/event_trigger.c:137 +#: commands/event_trigger.c:141 #, c-format msgid "permission denied to create event trigger \"%s\"" msgstr "se ha denegado el permiso para crear el “trigger” por eventos «%s»" -#: commands/event_trigger.c:139 +#: commands/event_trigger.c:143 #, c-format msgid "Must be superuser to create an event trigger." msgstr "Debe ser superusuario para crear un “trigger” por eventos." -#: commands/event_trigger.c:149 +#: commands/event_trigger.c:153 #, c-format msgid "unrecognized event name \"%s\"" msgstr "nommre de evento «%s» no reconocido" -#: commands/event_trigger.c:166 +#: commands/event_trigger.c:170 #, c-format msgid "unrecognized filter variable \"%s\"" msgstr "variable de filtro «%s» no reconocida" -#: commands/event_trigger.c:181 +#: commands/event_trigger.c:185 #, c-format msgid "tag filtering is not supported for login event triggers" msgstr "el filtrado de «tags» no está soportado en “triggers” por evento de login" -#: commands/event_trigger.c:224 +#: commands/event_trigger.c:228 #, c-format msgid "filter value \"%s\" not recognized for filter variable \"%s\"" msgstr "el valor de filtro «%s» no es reconocido por la variable de filtro «%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 "los “triggers” por evento no están soportados para %s" -#: commands/event_trigger.c:265 +#: commands/event_trigger.c:269 #, c-format msgid "filter variable \"%s\" specified more than once" msgstr "la variable de filtro «%s» fue especificada más de una vez" -#: 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 "no existe el “trigger” por eventos «%s»" -#: commands/event_trigger.c:522 +#: commands/event_trigger.c:526 #, c-format msgid "event trigger with OID %u does not exist" msgstr "no existe el “trigger” por eventos con 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 "se ha denegado el permiso para cambiar el dueño del “trigger” por eventos «%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 "El dueño de un “trigger” por eventos debe ser un superusuario." -#: commands/event_trigger.c:1409 +#: commands/event_trigger.c:1536 #, c-format msgid "%s can only be called in a sql_drop event trigger function" msgstr "%s sólo puede invocarse en una función de un “trigger” en el evento sql_drop" -#: commands/event_trigger.c:1502 commands/event_trigger.c:1523 +#: 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 sólo puede invocarse en una función de un “trigger” en el evento table_rewrite" -#: commands/event_trigger.c:1936 +#: commands/event_trigger.c:2063 #, c-format 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.c:241 commands/explain.c:266 +#: 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.c:273 +#: commands/explain_state.c:165 #, c-format msgid "unrecognized EXPLAIN option \"%s\"" msgstr "opción de EXPLAIN «%s» no reconocida" -#: commands/explain.c:282 -#, c-format -msgid "EXPLAIN option WAL requires ANALYZE" +#: commands/explain_state.c:174 commands/explain_state.c:186 +#: commands/explain_state.c:192 +#, fuzzy, c-format +#| msgid "EXPLAIN option WAL requires ANALYZE" +msgid "EXPLAIN option %s requires ANALYZE" msgstr "la opción WAL de EXPLAIN requiere ANALYZE" -#: commands/explain.c:291 -#, c-format -msgid "EXPLAIN option TIMING requires ANALYZE" -msgstr "la opción TIMING de EXPLAIN requiere ANALYZE" - -#: commands/explain.c:297 -#, c-format -msgid "EXPLAIN option SERIALIZE requires ANALYZE" -msgstr "la opción SERIALIZE de EXPLAIN requiere ANALYZE" - -#: commands/explain.c:303 +#: 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" -#: 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 "no existe la extensión «%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 "nombre de extensión no válido: «%s»" -#: commands/extension.c:278 +#: commands/extension.c:243 #, c-format msgid "Extension names must not be empty." msgstr "Los nombres de extensión no deben ser vacíos." -#: commands/extension.c:287 +#: commands/extension.c:252 #, c-format msgid "Extension names must not contain \"--\"." msgstr "Los nombres de extensión no deben contener «--»." -#: commands/extension.c:299 +#: commands/extension.c:264 #, c-format msgid "Extension names must not begin or end with \"-\"." msgstr "Los nombres de extensión no deben empezar ni terminar con «-»." -#: commands/extension.c:309 +#: commands/extension.c:274 #, c-format msgid "Extension names must not contain directory separator characters." msgstr "Los nombres de extensión no deben contener caracteres separadores de directorio." -#: 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 "nombre de versión de extensión no válido: «%s»" -#: commands/extension.c:325 +#: commands/extension.c:290 #, c-format msgid "Version names must not be empty." msgstr "Los nombres de versión no deben ser vacíos." -#: commands/extension.c:334 +#: commands/extension.c:299 #, c-format msgid "Version names must not contain \"--\"." msgstr "Los nombres de versión no deben contener «--»." -#: commands/extension.c:343 +#: commands/extension.c:308 #, c-format msgid "Version names must not begin or end with \"-\"." msgstr "Los nombres de versión no deben empezar ni terminar con «-»." -#: commands/extension.c:353 +#: commands/extension.c:318 #, c-format msgid "Version names must not contain directory separator characters." msgstr "Los nombres de versión no deben contener caracteres separadores de directorio." -#: commands/extension.c:507 +#: commands/extension.c:543 #, c-format msgid "extension \"%s\" is not available" msgstr "la extensión «%s» no está disponible" -#: commands/extension.c:508 -#, c-format -msgid "Could not open extension control file \"%s\": %m." -msgstr "No se pudo abrir el archivo de control de extensión «%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 "La extensión debe primero ser instalada en el sistema donde PostgreSQL está ejecutándose." -#: commands/extension.c:514 +#: commands/extension.c:566 #, c-format msgid "could not open extension control file \"%s\": %m" msgstr "no se pudo abrir el archivo de control de extensión «%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 "el parámetro «%s» no se puede cambiar en un archivo control secundario de extensión" -#: 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 "el parámetro «%s» requiere un valor lógico (booleano)" -#: commands/extension.c:594 +#: commands/extension.c:646 #, c-format msgid "\"%s\" is not a valid encoding name" msgstr "«%s» no es un nombre válido de codificación" -#: 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 "el parámetro «%s» debe ser una lista de nombres de extensión" -#: commands/extension.c:630 +#: commands/extension.c:682 #, c-format msgid "unrecognized parameter \"%s\" in file \"%s\"" msgstr "parámetro no reconocido «%s» en el archivo «%s»" -#: commands/extension.c:639 +#: commands/extension.c:691 #, c-format msgid "parameter \"schema\" cannot be specified when \"relocatable\" is true" msgstr "el parámetro «schema» no puede ser especificado cuando «relocatable» es verdadero" -#: commands/extension.c:817 +#: commands/extension.c:867 +#, fuzzy, c-format +#| msgid "SQL statement \"%s\"" +msgid "SQL statement \"%.*s\"" +msgstr "sentencia SQL: «%s»" + +#: commands/extension.c:896 +#, fuzzy, c-format +#| msgid "unrecognized descriptor item \"%s\" on line %d" +msgid "extension script file \"%s\", near line %d" +msgstr "elemento de descriptor no reconocido «%s» en línea %d" + +#: commands/extension.c:900 +#, fuzzy, c-format +#| msgid "skipping special file \"%s\"" +msgid "extension script file \"%s\"" +msgstr "omitiendo el archivo especial «%s»" + +#: commands/extension.c:1012 #, c-format msgid "transaction control statements are not allowed within an extension script" msgstr "las sentencias de control de transacción no están permitidos dentro de un guión de transacción" -#: commands/extension.c:897 +#: commands/extension.c:1094 #, c-format msgid "permission denied to create extension \"%s\"" msgstr "se ha denegado el permiso para crear la extensión «%s»" -#: commands/extension.c:900 +#: commands/extension.c:1097 #, c-format msgid "Must have CREATE privilege on current database to create this extension." msgstr "Debe tener privilegio CREATE en la base de datos actual para crear esta extensión." -#: commands/extension.c:901 +#: commands/extension.c:1098 #, c-format msgid "Must be superuser to create this extension." msgstr "Debe ser superusuario para crear esta extensión." -#: commands/extension.c:905 +#: commands/extension.c:1102 #, c-format msgid "permission denied to update extension \"%s\"" msgstr "se ha denegado el permiso para actualizar la extensión «%s»" -#: commands/extension.c:908 +#: commands/extension.c:1105 #, c-format msgid "Must have CREATE privilege on current database to update this extension." msgstr "Debe tener privilegio CREATE en la base de datos actual para actualizar esta extensión." -#: commands/extension.c:909 +#: commands/extension.c:1106 #, c-format msgid "Must be superuser to update this extension." msgstr "Debe ser superusuario para actualizar esta extensión." -#: commands/extension.c:1042 +#: commands/extension.c:1239 #, c-format msgid "invalid character in extension owner: must not contain any of \"%s\"" msgstr "carácter no válido en dueño de extensión: no debe contener ninguno de «%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 "carácter no válido en esquema de extensión «%s»: no debe contener ninguno de «%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 "la extensión «%s» no tiene ruta de actualización desde la versión «%s» hasta la versión «%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 "la versión a instalar debe ser especificada" -#: commands/extension.c:1533 +#: commands/extension.c:1730 #, c-format msgid "extension \"%s\" has no installation script nor update path for version \"%s\"" msgstr "la extensión «%s» no tiene script de instalación ni ruta de actualización para la versión «%s»" -#: commands/extension.c:1567 +#: commands/extension.c:1764 #, c-format msgid "extension \"%s\" must be installed in schema \"%s\"" msgstr "la extensión «%s» debe ser instalada en el esquema «%s»" -#: commands/extension.c:1727 +#: commands/extension.c:1924 #, c-format msgid "cyclic dependency detected between extensions \"%s\" and \"%s\"" msgstr "detectada una dependencia cíclica entre las extensiones «%s» y «%s»" -#: commands/extension.c:1732 +#: commands/extension.c:1929 #, c-format msgid "installing required extension \"%s\"" msgstr "instalando la extensión requerida «%s»" -#: commands/extension.c:1755 +#: commands/extension.c:1952 #, c-format msgid "required extension \"%s\" is not installed" msgstr "la extensión requerida «%s» no está instalada" -#: commands/extension.c:1758 +#: commands/extension.c:1955 #, c-format msgid "Use CREATE EXTENSION ... CASCADE to install required extensions too." msgstr "Use CREATE EXTENSION ... CASCADE para instalar además las extensiones requeridas." -#: commands/extension.c:1793 +#: commands/extension.c:1990 #, c-format msgid "extension \"%s\" already exists, skipping" msgstr "la extensión «%s» ya existe, omitiendo" -#: commands/extension.c:1800 +#: commands/extension.c:1997 #, c-format msgid "extension \"%s\" already exists" msgstr "la extensión «%s» ya existe" -#: commands/extension.c:1811 +#: commands/extension.c:2008 #, c-format msgid "nested CREATE EXTENSION is not supported" msgstr "los CREATE EXTENSION anidados no están soportados" -#: commands/extension.c:1975 +#: commands/extension.c:2172 #, c-format msgid "cannot drop extension \"%s\" because it is being modified" msgstr "no se puede eliminar la extensión «%s» porque está siendo modificada" -#: 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 sólo puede invocarse desde un script SQL ejecutado por CREATE EXTENSION" -#: commands/extension.c:2462 +#: commands/extension.c:2701 #, c-format msgid "OID %u does not refer to a table" msgstr "el OID %u no hace referencia a una tabla" -#: commands/extension.c:2467 +#: commands/extension.c:2706 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "el tabla «%s» no es un miembro de la extensión que se está creando" -#: 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 "no se puede mover la extensión «%s» al esquema «%s» porque la extensión contiene al esquema" -#: 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 "la extensión «%s» no soporta 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 "no se puede hacer SET SCHEMA de la extensión «%s» porque otras extensiones lo impiden" -#: commands/extension.c:2913 +#: commands/extension.c:3205 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "La extensión «%s» solicita no relocalizar la extensión «%s»." -#: commands/extension.c:2950 +#: commands/extension.c:3242 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "%s no está en el esquema de la extensión, «%s»" -#: commands/extension.c:3011 +#: commands/extension.c:3303 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "los ALTER EXTENSION anidados no están soportados" -#: commands/extension.c:3100 +#: commands/extension.c:3392 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "la versión «%s» de la extensión «%s» ya está instalada" -#: commands/extension.c:3311 +#: commands/extension.c:3603 #, c-format msgid "cannot add an object of this type to an extension" msgstr "no se puede añadir un objeto de este tipo a una extensión" -#: 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 "no se puede agregar el esquema «%s» a la extensión «%s» porque el esquema contiene la extensión" -#: 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 "no se pudo encontrar un tipo de multirango para el tipo de dato %s" -#: commands/extension.c:3532 +#: commands/extension.c:3825 #, c-format msgid "file \"%s\" is too large" msgstr "el archivo «%s» es demasiado grande" -#: commands/foreigncmds.c:148 commands/foreigncmds.c:157 +#: commands/extension.c:3918 utils/fmgr/dfmgr.c:625 +#, fuzzy, c-format +#| msgid "component in parameter \"dynamic_library_path\" is not an absolute path" +msgid "component in parameter \"%s\" is not an absolute path" +msgstr "un componente en el parámetro «dynamic_library_path» no es una ruta absoluta" + +#: commands/foreigncmds.c:159 commands/foreigncmds.c:168 #, c-format msgid "option \"%s\" not found" msgstr "opción «%s» no encontrada" -#: commands/foreigncmds.c:167 +#: commands/foreigncmds.c:178 #, c-format msgid "option \"%s\" provided more than once" msgstr "la opción «%s» fue especificada más de una vez" -#: 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 "se ha denegado el permiso para cambiar el dueño del conector de datos externos «%s»" -#: commands/foreigncmds.c:223 +#: commands/foreigncmds.c:234 #, c-format msgid "Must be superuser to change owner of a foreign-data wrapper." msgstr "Debe ser superusuario para cambiar el dueño de un conector de datos externos." -#: commands/foreigncmds.c:231 +#: commands/foreigncmds.c:242 #, c-format msgid "The owner of a foreign-data wrapper must be a superuser." msgstr "El dueño de un conector de datos externos debe ser un superusuario." -#: 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 "no existe el conector de datos externos «%s»" -#: commands/foreigncmds.c:325 +#: commands/foreigncmds.c:336 #, c-format msgid "foreign-data wrapper with OID %u does not exist" msgstr "no existe el conector de datos externos con OID %u" -#: commands/foreigncmds.c:462 +#: commands/foreigncmds.c:473 #, c-format msgid "foreign server with OID %u does not exist" msgstr "no existe el servidor foráneo con OID %u" -#: commands/foreigncmds.c:580 +#: commands/foreigncmds.c:591 #, c-format msgid "permission denied to create foreign-data wrapper \"%s\"" msgstr "se ha denegado el permiso para crear el conector de datos externos «%s»" -#: commands/foreigncmds.c:582 +#: commands/foreigncmds.c:593 #, c-format msgid "Must be superuser to create a foreign-data wrapper." msgstr "Debe ser superusuario para crear un conector de datos externos." -#: commands/foreigncmds.c:697 +#: commands/foreigncmds.c:708 #, c-format msgid "permission denied to alter foreign-data wrapper \"%s\"" msgstr "se ha denegado el permiso para cambiar el conector de datos externos «%s»" -#: commands/foreigncmds.c:699 +#: commands/foreigncmds.c:710 #, c-format msgid "Must be superuser to alter a foreign-data wrapper." msgstr "Debe ser superusuario para alterar un conector de datos externos." -#: 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 "al cambiar el manejador del conector de datos externos, el comportamiento de las tablas foráneas existentes puede cambiar" -#: 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 "al cambiar el validador del conector de datos externos, las opciones para los objetos dependientes de él pueden volverse no válidas" -#: commands/foreigncmds.c:876 +#: commands/foreigncmds.c:887 #, c-format msgid "server \"%s\" already exists, skipping" msgstr "el servidor «%s» ya existe, omitiendo" -#: commands/foreigncmds.c:1144 +#: commands/foreigncmds.c:1155 #, c-format msgid "user mapping for \"%s\" already exists for server \"%s\", skipping" msgstr "el mapeo de usuario «%s» ya existe para el servidor «%s», omitiendo" -#: commands/foreigncmds.c:1154 +#: commands/foreigncmds.c:1165 #, c-format msgid "user mapping for \"%s\" already exists for server \"%s\"" msgstr "el mapeo de usuario «%s» ya existe para el servidor «%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 "no existe el mapeo de usuario «%s» para el servidor «%s»" -#: commands/foreigncmds.c:1379 +#: commands/foreigncmds.c:1390 #, c-format msgid "user mapping for \"%s\" does not exist for server \"%s\", skipping" msgstr "no existe el mapeo de usuario «%s» para el servidor «%s», omitiendo" -#: 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 "el conector de datos externos «%s» no tiene manejador" -#: commands/foreigncmds.c:1513 +#: commands/foreigncmds.c:1524 #, c-format msgid "foreign-data wrapper \"%s\" does not support IMPORT FOREIGN SCHEMA" msgstr "el conector de datos externos «%s» no soporta IMPORT FOREIGN SCHEMA" -#: commands/foreigncmds.c:1615 +#: commands/foreigncmds.c:1626 #, c-format msgid "importing foreign table \"%s\"" msgstr "importando la tabla foránea «%s»" @@ -8731,641 +8941,694 @@ msgstr "Creando una definición de tipo inconclusa." msgid "SQL function cannot accept shell type %s" msgstr "las funciones SQL no pueden aceptar el tipo inconcluso %s" -#: commands/functioncmds.c:250 +#: commands/functioncmds.c:251 #, c-format msgid "aggregate cannot accept shell type %s" msgstr "las funciones de agregación no pueden aceptar el tipo inconcluso %s" -#: commands/functioncmds.c:255 +#: commands/functioncmds.c:257 #, c-format msgid "argument type %s is only a shell" msgstr "el tipo de argumento %s está inconcluso" -#: commands/functioncmds.c:265 +#: commands/functioncmds.c:268 #, c-format msgid "type %s does not exist" msgstr "no existe el tipo %s" -#: commands/functioncmds.c:279 +#: commands/functioncmds.c:283 #, c-format msgid "aggregates cannot accept set arguments" msgstr "las funciones de agregación no pueden aceptar argumentos de conjunto" -#: commands/functioncmds.c:283 +#: commands/functioncmds.c:288 #, c-format msgid "procedures cannot accept set arguments" msgstr "los procedimientos no pueden aceptar argumentos de conjunto" -#: commands/functioncmds.c:287 +#: commands/functioncmds.c:293 #, c-format msgid "functions cannot accept set arguments" msgstr "funciones no pueden aceptar argumentos de conjunto" -#: commands/functioncmds.c:297 +#: commands/functioncmds.c:304 #, c-format msgid "VARIADIC parameter must be the last input parameter" msgstr "el parámetro VARIADIC debe ser el último parámetro de entrada" -#: commands/functioncmds.c:317 +#: commands/functioncmds.c:325 #, c-format msgid "VARIADIC parameter must be the last parameter" msgstr "el parámetro VARIADIC debe ser el último parámetro" -#: commands/functioncmds.c:342 +#: commands/functioncmds.c:351 #, c-format msgid "VARIADIC parameter must be an array" msgstr "el parámetro VARIADIC debe ser un array" -#: commands/functioncmds.c:387 +#: commands/functioncmds.c:397 #, c-format msgid "parameter name \"%s\" used more than once" msgstr "nombre de parámetro «%s» usado más de una vez" -#: commands/functioncmds.c:405 +#: commands/functioncmds.c:416 #, c-format msgid "only input parameters can have default values" msgstr "solo los parámetros de entrada pueden tener valores por omisión" -#: commands/functioncmds.c:420 +#: commands/functioncmds.c:432 #, c-format msgid "cannot use table references in parameter default value" msgstr "no se pueden usar referencias a tablas en el valor por omisión de un parámetro" -#: commands/functioncmds.c:444 +#: commands/functioncmds.c:457 #, c-format msgid "input parameters after one with a default value must also have defaults" msgstr "los parámetros de entrada después de uno que tenga valor por omisión también deben tener valores por omisión" -#: commands/functioncmds.c:454 +#: commands/functioncmds.c:468 #, c-format msgid "procedure OUT parameters cannot appear after one with a default value" msgstr "los parámetros OUT no pueden aparecer después de uno que tenga valor por omisión" -#: 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 "atributo no válido en definición de procedimiento" -#: commands/functioncmds.c:692 +#: commands/functioncmds.c:707 #, c-format msgid "support function %s must return type %s" msgstr "la función de soporte %s debe retornar el tipo %s" -#: commands/functioncmds.c:703 +#: commands/functioncmds.c:718 #, c-format msgid "must be superuser to specify a support function" msgstr "debe ser superusuario para especificar una función de soporte" -#: 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 debe ser positivo" -#: 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 debe ser positivo" -#: commands/functioncmds.c:861 +#: commands/functioncmds.c:876 #, c-format msgid "no function body specified" msgstr "no se ha especificado un cuerpo para la función" -#: commands/functioncmds.c:866 +#: commands/functioncmds.c:881 #, c-format msgid "duplicate function body specified" msgstr "se ha especificado por duplicado el cuerpo para la función" -#: commands/functioncmds.c:871 +#: commands/functioncmds.c:886 #, c-format msgid "inline SQL function body only valid for language SQL" msgstr "cuerpo de función SQL en línea solo es válido para lenguaje SQL" -#: commands/functioncmds.c:913 +#: commands/functioncmds.c:928 #, c-format msgid "SQL function with unquoted function body cannot have polymorphic arguments" msgstr "una función SQL con el cuerpo de la función fuera de comillas no puede tener argumentos polimórficos" -#: 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 aún no está soportado en una función SQL con el cuerpo fuera de comillas" -#: commands/functioncmds.c:986 +#: commands/functioncmds.c:1001 #, c-format msgid "only one AS item needed for language \"%s\"" msgstr "sólo se requiere un item AS para el lenguaje «%s»" -#: commands/functioncmds.c:1091 +#: commands/functioncmds.c:1107 #, c-format msgid "no language specified" msgstr "no se ha especificado el lenguaje" -#: 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 "no existe el lenguaje «%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 "Use CREATE EXTENSION para cargar el lenguaje en la base de datos." -#: 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 "sólo un superusuario puede definir funciones «leakproof»" -#: commands/functioncmds.c:1185 +#: commands/functioncmds.c:1202 #, c-format msgid "function result type must be %s because of OUT parameters" msgstr "tipo de retorno de función debe ser %s debido a los parámetros OUT" -#: commands/functioncmds.c:1198 +#: commands/functioncmds.c:1215 #, c-format msgid "function result type must be specified" msgstr "el tipo de retorno de la función debe ser especificado" -#: 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 no es aplicable cuando una función no retorna un conjunto" -#: commands/functioncmds.c:1546 +#: commands/functioncmds.c:1564 #, c-format msgid "source data type %s is a pseudo-type" msgstr "el tipo de origen %s es un pseudotipo" -#: commands/functioncmds.c:1552 +#: commands/functioncmds.c:1570 #, c-format msgid "target data type %s is a pseudo-type" msgstr "el tipo de retorno %s es un pseudotipo" -#: commands/functioncmds.c:1576 +#: commands/functioncmds.c:1594 #, c-format msgid "cast will be ignored because the source data type is a domain" msgstr "el cast será ignorado porque el tipo de datos de origen es un dominio" -#: commands/functioncmds.c:1581 +#: commands/functioncmds.c:1599 #, c-format msgid "cast will be ignored because the target data type is a domain" msgstr "el cast será ignorado porque el tipo de datos de destino es un dominio" -#: commands/functioncmds.c:1606 +#: commands/functioncmds.c:1624 #, c-format msgid "cast function must take one to three arguments" msgstr "la función de conversión lleva de uno a tres argumentos" -#: 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 "el argumento de la función de conversión debe coincidir o ser binario-convertible con el tipo de origen" -#: commands/functioncmds.c:1616 +#: commands/functioncmds.c:1634 #, c-format msgid "second argument of cast function must be type %s" msgstr "el segundo argumento de la función de conversión debe ser de tipo %s" -#: commands/functioncmds.c:1621 +#: commands/functioncmds.c:1639 #, c-format msgid "third argument of cast function must be type %s" msgstr "el tercer argumento de la función de conversión debe ser de tipo %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 "el tipo de salida de la función de conversión debe coincidir o ser binario-convertible con el tipo de retorno" -#: commands/functioncmds.c:1639 +#: commands/functioncmds.c:1657 #, c-format msgid "cast function must not be volatile" msgstr "la función de conversión no debe ser volatile" -#: commands/functioncmds.c:1644 +#: commands/functioncmds.c:1662 #, c-format msgid "cast function must be a normal function" msgstr "la función de conversión debe ser una función normal" -#: commands/functioncmds.c:1648 +#: commands/functioncmds.c:1666 #, c-format msgid "cast function must not return a set" msgstr "la función de conversión no debe retornar un conjunto" -#: commands/functioncmds.c:1674 +#: commands/functioncmds.c:1692 #, c-format msgid "must be superuser to create a cast WITHOUT FUNCTION" msgstr "debe ser superusuario para crear una conversión sin especificar función" -#: commands/functioncmds.c:1689 +#: commands/functioncmds.c:1707 #, c-format msgid "source and target data types are not physically compatible" msgstr "los tipos de datos de origen y destino no son físicamente compatibles" -#: commands/functioncmds.c:1709 +#: commands/functioncmds.c:1727 #, c-format msgid "composite data types are not binary-compatible" msgstr "los tipos de datos compuestos no son binario-compatibles" -#: commands/functioncmds.c:1715 +#: commands/functioncmds.c:1733 #, c-format msgid "array data types are not binary-compatible" msgstr "los tipos de datos de array no son binario-compatibles" -#: commands/functioncmds.c:1723 +#: commands/functioncmds.c:1741 #, c-format msgid "range data types are not binary-compatible" msgstr "los tipos de datos de rango no son binario-compatibles" -#: commands/functioncmds.c:1729 +#: commands/functioncmds.c:1747 #, c-format msgid "enum data types are not binary-compatible" msgstr "los tipos de datos enum no son binario-compatibles" -#: commands/functioncmds.c:1746 +#: commands/functioncmds.c:1764 #, c-format msgid "domain data types must not be marked binary-compatible" msgstr "los tipos de dato de dominio no deben ser marcados binario-compatibles" -#: commands/functioncmds.c:1756 +#: commands/functioncmds.c:1774 #, c-format msgid "source data type and target data type are the same" msgstr "el tipo de origen y el tipo de retorno son el mismo" -#: commands/functioncmds.c:1789 +#: commands/functioncmds.c:1807 #, c-format msgid "transform function must not be volatile" msgstr "la función de transformación no debe ser volatile" -#: commands/functioncmds.c:1793 +#: commands/functioncmds.c:1811 #, c-format msgid "transform function must be a normal function" msgstr "la función de transformación debe ser una función normal" -#: commands/functioncmds.c:1797 +#: commands/functioncmds.c:1815 #, c-format msgid "transform function must not return a set" msgstr "la función de transformación no debe retornar un conjunto" -#: commands/functioncmds.c:1801 +#: commands/functioncmds.c:1819 #, c-format msgid "transform function must take one argument" msgstr "la función de transformación debe recibir un argumento" -#: commands/functioncmds.c:1805 +#: commands/functioncmds.c:1823 #, c-format msgid "first argument of transform function must be type %s" msgstr "el primer argumento de la función de transformación debe ser de tipo %s" -#: commands/functioncmds.c:1844 +#: commands/functioncmds.c:1862 #, c-format msgid "data type %s is a pseudo-type" msgstr "el tipo de dato %s es un pseudo-tipo" -#: commands/functioncmds.c:1850 +#: commands/functioncmds.c:1868 #, c-format msgid "data type %s is a domain" msgstr "tipo de dato «%s» es un dominio" -#: commands/functioncmds.c:1890 +#: commands/functioncmds.c:1908 #, c-format msgid "return data type of FROM SQL function must be %s" msgstr "el tipo de dato de retorno de la función FROM SQL debe ser %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 "el tipo de dato de retorno de la función TO SQL debe ser el tipo de dato de la transformación" -#: commands/functioncmds.c:1943 +#: commands/functioncmds.c:1961 #, c-format msgid "transform for type %s language \"%s\" already exists" msgstr "la transformación para el tipo %s lenguaje «%s» ya existe" -#: commands/functioncmds.c:2029 +#: commands/functioncmds.c:2047 #, c-format msgid "transform for type %s language \"%s\" does not exist" msgstr "la transformación para el tipo %s lenguaje «%s» no existe" -#: commands/functioncmds.c:2053 +#: commands/functioncmds.c:2071 #, c-format msgid "function %s already exists in schema \"%s\"" msgstr "ya existe una función llamada %s en el esquema «%s»" -#: commands/functioncmds.c:2104 +#: commands/functioncmds.c:2122 #, c-format msgid "no inline code specified" msgstr "no se ha especificado código" -#: commands/functioncmds.c:2150 +#: commands/functioncmds.c:2168 #, c-format msgid "language \"%s\" does not support inline code execution" msgstr "el lenguaje «%s» no soporta ejecución de código en línea" -#: 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" msgstr[0] "no se pueden pasar más de %d argumento a un procedimiento" msgstr[1] "no se pueden pasar más de %d argumentos a un procedimiento" -#: commands/indexcmds.c:656 +#: commands/indexcmds.c:659 #, c-format msgid "must specify at least one column" msgstr "debe especificar al menos una columna" -#: commands/indexcmds.c:660 +#: commands/indexcmds.c:663 #, c-format msgid "cannot use more than %d columns in an index" msgstr "no se puede usar más de %d columnas en un índice" -#: commands/indexcmds.c:703 +#: commands/indexcmds.c:712 #, c-format msgid "cannot create index on relation \"%s\"" msgstr "no se puede crear índice en la relación «%s»" -#: commands/indexcmds.c:729 +#: commands/indexcmds.c:738 #, c-format msgid "cannot create index on partitioned table \"%s\" concurrently" msgstr "no se puede crear un índice en la tabla particionada «%s» concurrentemente" -#: commands/indexcmds.c:739 +#: commands/indexcmds.c:748 #, c-format msgid "cannot create indexes on temporary tables of other sessions" msgstr "no se pueden crear índices en tablas temporales de otras sesiones" -#: commands/indexcmds.c:777 commands/tablecmds.c:818 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 "no se puede especificar el tablespace por omisión para las relaciones particionadas" -#: commands/indexcmds.c:809 commands/tablecmds.c:849 commands/tablecmds.c:3588 +#: 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 "sólo relaciones compartidas pueden ser puestas en el tablespace pg_global" -#: commands/indexcmds.c:842 +#: commands/indexcmds.c:851 #, c-format msgid "substituting access method \"gist\" for obsolete method \"rtree\"" msgstr "sustituyendo el método de acceso obsoleto «rtree» por «gist»" -#: commands/indexcmds.c:863 +#: commands/indexcmds.c:872 #, c-format msgid "access method \"%s\" does not support unique indexes" msgstr "el método de acceso «%s» no soporta índices únicos" -#: commands/indexcmds.c:868 +#: commands/indexcmds.c:877 #, c-format msgid "access method \"%s\" does not support included columns" msgstr "el método de acceso «%s» no soporta columnas incluidas" -#: commands/indexcmds.c:873 +#: commands/indexcmds.c:882 #, c-format msgid "access method \"%s\" does not support multicolumn indexes" msgstr "el método de acceso «%s» no soporta índices multicolumna" -#: commands/indexcmds.c:878 +#: commands/indexcmds.c:887 #, c-format msgid "access method \"%s\" does not support exclusion constraints" msgstr "el método de acceso «%s» no soporta restricciones de exclusión" -#: commands/indexcmds.c:1007 -#, c-format -msgid "cannot match partition key to an index using access method \"%s\"" -msgstr "no se puede hacer coincidir la llave de partición a un índice usando el método de acceso «%s»" +#: commands/indexcmds.c:892 +#, fuzzy, c-format +#| msgid "access method \"%s\" does not support exclusion constraints" +msgid "access method \"%s\" does not support WITHOUT OVERLAPS constraints" +msgstr "el método de acceso «%s» no soporta restricciones de exclusión" -#: commands/indexcmds.c:1017 +#: commands/indexcmds.c:1019 #, c-format msgid "unsupported %s constraint with partition key definition" msgstr "restricción %s no soportada con definición de llave de particionamiento" -#: commands/indexcmds.c:1019 +#: commands/indexcmds.c:1021 #, c-format msgid "%s constraints cannot be used when partition keys include expressions." msgstr "No se pueden usar restricciones %s cuando las llaves de particionamiento incluyen expresiones." -#: commands/indexcmds.c:1069 +#: 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 "no se pudo identificar un operador de igualdad para el tipo %s" + +#: commands/indexcmds.c:1057 commands/indexcmds.c:2491 +#, fuzzy, c-format +#| msgid "operator family %s for access method %s" +msgid "There is no suitable operator in operator family \"%s\" for access method \"%s\"." +msgstr "familia de operadores %s para el método de acceso %s" + +#: commands/indexcmds.c:1077 #, c-format msgid "cannot match partition key to index on column \"%s\" using non-equal operator \"%s\"" msgstr "no se puede hacer coincidir la llave de partición en la columna «%s» usando el operador «%s» que no es igualdad" -#: commands/indexcmds.c:1085 +#: commands/indexcmds.c:1093 #, c-format msgid "unique constraint on partitioned table must include all partitioning columns" msgstr "las restricciones unique en tablas particionadas deben incluir todas las columnas de particionamiento" -#: commands/indexcmds.c:1086 +#: commands/indexcmds.c:1094 #, c-format msgid "%s constraint on table \"%s\" lacks column \"%s\" which is part of the partition key." msgstr "La restricción %s en la tabla «%s» no incluye la columna «%s» que es parte de la llave de particionamiento." -#: commands/indexcmds.c:1105 commands/indexcmds.c:1124 +#: commands/indexcmds.c:1116 commands/indexcmds.c:1147 #, c-format msgid "index creation on system columns is not supported" msgstr "la creación de índices en columnas de sistema no está soportada" -#: commands/indexcmds.c:1354 tcop/utility.c:1515 +#: commands/indexcmds.c:1123 +#, fuzzy, c-format +#| msgid "generated columns are not supported on typed tables" +msgid "primary keys on virtual generated columns are not supported" +msgstr "las columnas generadas no están soportadas en tablas tipadas" + +#: commands/indexcmds.c:1125 commands/indexcmds.c:1164 +#, fuzzy, c-format +#| msgid "index creation on system columns is not supported" +msgid "unique constraints on virtual generated columns are not supported" +msgstr "la creación de índices en columnas de sistema no está soportada" + +#: commands/indexcmds.c:1126 commands/indexcmds.c:1165 +#, fuzzy, c-format +#| msgid "index creation on system columns is not supported" +msgid "indexes on virtual generated columns are not supported" +msgstr "la creación de índices en columnas de sistema no está soportada" + +#: commands/indexcmds.c:1397 tcop/utility.c:1518 #, c-format msgid "cannot create unique index on partitioned table \"%s\"" msgstr "no se puede crear un índice único en la tabla particionada «%s»" -#: commands/indexcmds.c:1356 tcop/utility.c:1517 +#: commands/indexcmds.c:1399 tcop/utility.c:1520 #, c-format msgid "Table \"%s\" contains partitions that are foreign tables." msgstr "La tabla «%s» contiene particiones que son tablas foráneas." -#: commands/indexcmds.c:1806 +#: commands/indexcmds.c:1857 #, c-format msgid "functions in index predicate must be marked IMMUTABLE" msgstr "las funciones utilizadas en predicados de índice deben estar marcadas IMMUTABLE" -#: commands/indexcmds.c:1885 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 "no existe la columna «%s» en la llave" -#: commands/indexcmds.c:1909 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 "las expresiones no están soportadas en columnas incluidas" -#: commands/indexcmds.c:1950 +#: commands/indexcmds.c:2019 #, c-format msgid "functions in index expression must be marked IMMUTABLE" msgstr "las funciones utilizadas en expresiones de índice deben estar marcadas IMMUTABLE" -#: commands/indexcmds.c:1965 +#: commands/indexcmds.c:2034 #, c-format msgid "including column does not support a collation" msgstr "la columna incluida no permite un ordenamiento (collation)" -#: commands/indexcmds.c:1969 +#: commands/indexcmds.c:2038 #, c-format msgid "including column does not support an operator class" msgstr "la columna incluida no permite una clase de operadores" -#: commands/indexcmds.c:1973 +#: commands/indexcmds.c:2042 #, c-format msgid "including column does not support ASC/DESC options" msgstr "la columna incluida no permite las opciones ASC/DESC" -#: commands/indexcmds.c:1977 +#: commands/indexcmds.c:2046 #, c-format msgid "including column does not support NULLS FIRST/LAST options" msgstr "la columna incluida no permite las opciones NULLS FIRST/LAST" -#: commands/indexcmds.c:2020 +#: commands/indexcmds.c:2089 #, c-format 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:2028 commands/tablecmds.c:18185 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:19959 commands/typecmds.c:812 +#: parser/parse_expr.c:2805 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 "los ordenamientos (collation) no están soportados por el tipo %s" -#: commands/indexcmds.c:2095 +#: commands/indexcmds.c:2164 #, c-format msgid "operator %s is not commutative" msgstr "el operador %s no es conmutativo" -#: commands/indexcmds.c:2097 +#: commands/indexcmds.c:2166 #, c-format msgid "Only commutative operators can be used in exclusion constraints." msgstr "Sólo operadores conmutativos pueden ser usados en restricciones de exclusión." -#: commands/indexcmds.c:2123 +#: commands/indexcmds.c:2176 #, c-format msgid "operator %s is not a member of operator family \"%s\"" msgstr "el operador %s no es un miembro de la familia de operadores «%s»" -#: commands/indexcmds.c:2126 +#: commands/indexcmds.c:2179 #, c-format msgid "The exclusion operator must be related to the index operator class for the constraint." msgstr "El operador de exclusión debe estar relacionado con la clase de operadores del índice para la restricción." -#: commands/indexcmds.c:2161 +#: commands/indexcmds.c:2228 #, c-format msgid "access method \"%s\" does not support ASC/DESC options" msgstr "el método de acceso «%s» no soporta las opciones ASC/DESC" -#: commands/indexcmds.c:2166 +#: commands/indexcmds.c:2233 #, c-format msgid "access method \"%s\" does not support NULLS FIRST/LAST options" msgstr "el método de acceso «%s» no soporta las opciones NULLS FIRST/LAST" -#: commands/indexcmds.c:2210 commands/tablecmds.c:18210 -#: commands/tablecmds.c:18216 commands/typecmds.c:2311 +#: commands/indexcmds.c:2277 commands/tablecmds.c:19984 +#: commands/tablecmds.c:19990 commands/typecmds.c:2349 #, c-format msgid "data type %s has no default operator class for access method \"%s\"" msgstr "el tipo de dato %s no tiene una clase de operadores por omisión para el método de acceso «%s»" -#: commands/indexcmds.c:2212 +#: 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 "Debe especificar una clase de operadores para el índice, o definir una clase de operadores por omisión para el tipo de datos." -#: commands/indexcmds.c:2241 commands/indexcmds.c:2249 +#: 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 "no existe la clase de operadores «%s» para el método de acceso «%s»" -#: commands/indexcmds.c:2263 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 "la clase de operadores «%s» no acepta el tipo de datos %s" -#: commands/indexcmds.c:2353 +#: commands/indexcmds.c:2420 #, c-format msgid "there are multiple default operator classes for data type %s" msgstr "hay múltiples clases de operadores por omisión para el tipo de datos %s" -#: commands/indexcmds.c:2681 +#: commands/indexcmds.c:2470 commands/indexcmds.c:2489 +#, fuzzy, c-format +#| msgid "could not identify an ordering operator for type %s" +msgid "could not identify an overlaps operator for type %s" +msgstr "no se pudo identificar un operador de ordenamiento para el tipo %s" + +#: commands/indexcmds.c:2471 commands/indexcmds.c:2490 +#, fuzzy, c-format +#| msgid "could not identify an inequality operator for type %s" +msgid "could not identify a contained-by operator for type %s" +msgstr "no se pudo identificar un operador de desigualdad para el tipo %s" + +#: commands/indexcmds.c:2472 commands/tablecmds.c:10333 +#, fuzzy, c-format +#| msgid "Could not translate client host name \"%s\" to IP address: %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:2913 +#: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" msgstr "la tabla «%s» no tiene índices que puedan ser reindexados concurrentemente" -#: commands/indexcmds.c:2927 +#: commands/indexcmds.c:3092 #, c-format msgid "table \"%s\" has no indexes to reindex" msgstr "la tabla «%s» no tiene índices para reindexar" -#: commands/indexcmds.c:2974 commands/indexcmds.c:3485 -#: commands/indexcmds.c:3615 +#: commands/indexcmds.c:3139 commands/indexcmds.c:3650 +#: commands/indexcmds.c:3780 #, c-format msgid "cannot reindex system catalogs concurrently" msgstr "no se pueden reindexar catálogos de sistema concurrentemente" -#: commands/indexcmds.c:2998 +#: commands/indexcmds.c:3163 #, c-format msgid "can only reindex the currently open database" msgstr "sólo se puede reindexar la base de datos actualmente abierta" -#: commands/indexcmds.c:3090 +#: commands/indexcmds.c:3255 #, c-format msgid "cannot reindex system catalogs concurrently, skipping all" msgstr "no se puede reindexar un catálogo de sistema concurrentemente, omitiéndolos todos" -#: commands/indexcmds.c:3123 +#: commands/indexcmds.c:3288 #, c-format msgid "cannot move system relations, skipping all" msgstr "no se puede mover las relaciones de sistema, omitiendo todas" -#: commands/indexcmds.c:3169 +#: commands/indexcmds.c:3334 #, c-format msgid "while reindexing partitioned table \"%s.%s\"" msgstr "al reindexar tabla particionada «%s.%s»" -#: commands/indexcmds.c:3172 +#: commands/indexcmds.c:3337 #, c-format msgid "while reindexing partitioned index \"%s.%s\"" msgstr "al reindexar índice particionado «%s.%s»" -#: commands/indexcmds.c:3365 commands/indexcmds.c:4241 +#: commands/indexcmds.c:3530 commands/indexcmds.c:4422 #, c-format msgid "table \"%s.%s\" was reindexed" msgstr "la tabla «%s.%s» fue reindexada" -#: commands/indexcmds.c:3517 commands/indexcmds.c:3570 +#: commands/indexcmds.c:3682 commands/indexcmds.c:3735 #, c-format msgid "skipping reindex of invalid index \"%s.%s\"" msgstr "omitiendo reindexar índice no válido «%s.%s»" -#: commands/indexcmds.c:3520 commands/indexcmds.c:3573 +#: commands/indexcmds.c:3685 commands/indexcmds.c:3738 #, c-format msgid "Use DROP INDEX or REINDEX INDEX." msgstr "Use DROP INDEX o REINDEX INDEX." -#: commands/indexcmds.c:3524 +#: commands/indexcmds.c:3689 #, c-format msgid "cannot reindex exclusion constraint index \"%s.%s\" concurrently, skipping" msgstr "no se puede reindexar el índice de restricción de exclusión «%s.%s» concurrentemente, omitiendo" -#: commands/indexcmds.c:3680 +#: commands/indexcmds.c:3845 #, c-format msgid "cannot reindex this type of relation concurrently" msgstr "no se puede reindexar este tipo de relación concurrentemente" -#: commands/indexcmds.c:3698 +#: commands/indexcmds.c:3863 #, c-format msgid "cannot move non-shared relation to tablespace \"%s\"" msgstr "no se puede mover relación no compartida al tablespace «%s»" -#: commands/indexcmds.c:4222 commands/indexcmds.c:4234 +#: commands/indexcmds.c:4403 commands/indexcmds.c:4415 #, c-format msgid "index \"%s.%s\" was reindexed" msgstr "el índice «%s.%s» fue reindexado" -#: commands/indexcmds.c:4224 commands/indexcmds.c:4243 +#: commands/indexcmds.c:4405 commands/indexcmds.c:4424 #, c-format msgid "%s." msgstr "%s." @@ -9375,36 +9638,42 @@ msgstr "%s." msgid "cannot lock relation \"%s\"" msgstr "no se puede bloquear la relación «%s»" -#: commands/matview.c:206 +#: commands/matview.c:208 #, c-format msgid "CONCURRENTLY cannot be used when the materialized view is not populated" msgstr "no se puede usar CONCURRENTLY cuando la vista materializada no contiene datos" -#: 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 "las opciones %s y %s no pueden usarse juntas" -#: commands/matview.c:269 +#: commands/matview.c:273 #, c-format msgid "cannot refresh materialized view \"%s\" concurrently" msgstr "no se puede refrescar la vista materializada «%s» concurrentemente" -#: 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 "Cree un índice único sin cláusula WHERE en una o más columnas de la vista materializada." -#: 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 "nuevos datos para la vista materializada «%s» contiene filas duplicadas sin columnas nulas" -#: commands/matview.c:668 +#: commands/matview.c:684 #, c-format msgid "Row: %s" msgstr "Fila: %s" +#: commands/matview.c:838 +#, fuzzy, c-format +#| msgid "could not find suitable encoding for locale \"%s\"" +msgid "could not find suitable unique index on materialized view \"%s\"" +msgstr "no se pudo encontrar una codificación apropiada para la configuración regional «%s»" + #: commands/opclasscmds.c:124 #, c-format msgid "operator family \"%s\" does not exist for access method \"%s\"" @@ -9518,111 +9787,138 @@ msgid "Valid signature of operator class options parsing function is %s." msgstr "La signatura válida para la función de interpretación de opciones de una clase de operadores es '%s'." #: commands/opclasscmds.c:1259 -#, c-format -msgid "btree comparison functions must have two arguments" +#, fuzzy, c-format +#| msgid "btree comparison functions must have two arguments" +msgid "ordering comparison functions must have two arguments" msgstr "las funciones de comparación btree deben tener dos argumentos" #: commands/opclasscmds.c:1263 -#, c-format -msgid "btree comparison functions must return integer" +#, fuzzy, c-format +#| msgid "btree comparison functions must return integer" +msgid "ordering comparison functions must return integer" msgstr "las funciones de comparación btree deben retornar entero" #: commands/opclasscmds.c:1280 -#, c-format -msgid "btree sort support functions must accept type \"internal\"" +#, fuzzy, c-format +#| msgid "btree sort support functions must accept type \"internal\"" +msgid "ordering sort support functions must accept type \"internal\"" msgstr "las funciones btree de soporte de ordenamiento deben aceptar tipo «internal»" #: commands/opclasscmds.c:1284 -#, c-format -msgid "btree sort support functions must return void" +#, fuzzy, c-format +#| msgid "btree sort support functions must return void" +msgid "ordering sort support functions must return void" msgstr "las funciones btree de soporte de ordenamiento deben retornar void" #: commands/opclasscmds.c:1295 -#, c-format -msgid "btree in_range functions must have five arguments" +#, fuzzy, c-format +#| msgid "btree in_range functions must have five arguments" +msgid "ordering in_range functions must have five arguments" msgstr "las funciones btree in_range deben tener cinco argumentos" #: commands/opclasscmds.c:1299 -#, c-format -msgid "btree in_range functions must return boolean" +#, fuzzy, c-format +#| msgid "btree in_range functions must return boolean" +msgid "ordering in_range functions must return boolean" msgstr "las funciones btree in_range deben retornar booleano" #: commands/opclasscmds.c:1315 -#, c-format -msgid "btree equal image functions must have one argument" +#, fuzzy, c-format +#| msgid "btree equal image functions must have one argument" +msgid "ordering equal image functions must have one argument" msgstr "las funciones btree de igualdad de imagen deben tener un argumento" #: commands/opclasscmds.c:1319 -#, c-format -msgid "btree equal image functions must return boolean" +#, fuzzy, c-format +#| msgid "btree equal image functions must return boolean" +msgid "ordering equal image functions must return boolean" msgstr "las funciones btree de igualdad de imagen deben retornar booleano" #: commands/opclasscmds.c:1332 -#, c-format -msgid "btree equal image functions must not be cross-type" +#, fuzzy, c-format +#| msgid "btree equal image functions must not be cross-type" +msgid "ordering equal image functions must not be cross-type" +msgstr "las funciones btree de igualdad de imagen no deben ser entre distintos tipos" + +#: commands/opclasscmds.c:1340 +#, fuzzy, c-format +#| msgid "btree sort support functions must accept type \"internal\"" +msgid "btree skip support functions must accept type \"internal\"" +msgstr "las funciones btree de soporte de ordenamiento deben aceptar tipo «internal»" + +#: commands/opclasscmds.c:1344 +#, fuzzy, c-format +#| msgid "btree sort support functions must return void" +msgid "btree skip support functions must return void" +msgstr "las funciones btree de soporte de ordenamiento deben retornar void" + +#: commands/opclasscmds.c:1357 +#, fuzzy, c-format +#| msgid "btree equal image functions must not be cross-type" +msgid "btree skip support functions must not be cross-type" msgstr "las funciones btree de igualdad de imagen no deben ser entre distintos tipos" -#: commands/opclasscmds.c:1342 +#: commands/opclasscmds.c:1367 #, c-format msgid "hash function 1 must have one argument" msgstr "la función de hash 1 debe tener un argumento" -#: commands/opclasscmds.c:1346 +#: commands/opclasscmds.c:1371 #, c-format msgid "hash function 1 must return integer" msgstr "la función de hash 1 debe retornar integer" -#: commands/opclasscmds.c:1353 +#: commands/opclasscmds.c:1378 #, c-format msgid "hash function 2 must have two arguments" msgstr "la función de hash 2 debe tener dos argumentos" -#: commands/opclasscmds.c:1357 +#: commands/opclasscmds.c:1382 #, c-format msgid "hash function 2 must return bigint" msgstr "la función de hash 2 debe retornar bigint" -#: commands/opclasscmds.c:1382 +#: commands/opclasscmds.c:1407 #, c-format msgid "associated data types must be specified for index support function" msgstr "los tipos de datos asociados deben ser especificados para una función de soporte de índice" -#: commands/opclasscmds.c:1407 +#: commands/opclasscmds.c:1432 #, c-format msgid "function number %d for (%s,%s) appears more than once" msgstr "la función número %d para (%s,%s) aparece más de una vez" -#: commands/opclasscmds.c:1414 +#: commands/opclasscmds.c:1439 #, c-format msgid "operator number %d for (%s,%s) appears more than once" msgstr "el número de operador %d para (%s,%s) aparece más de una vez" -#: commands/opclasscmds.c:1460 +#: commands/opclasscmds.c:1485 #, c-format msgid "operator %d(%s,%s) already exists in operator family \"%s\"" msgstr "ya existe un operador %d(%s,%s) en la familia de operadores «%s»" -#: commands/opclasscmds.c:1589 +#: commands/opclasscmds.c:1614 #, c-format msgid "function %d(%s,%s) already exists in operator family \"%s\"" msgstr "ya existe una función %d(%s,%s) en la familia de operador «%s»" -#: commands/opclasscmds.c:1744 +#: commands/opclasscmds.c:1769 #, c-format msgid "operator %d(%s,%s) does not exist in operator family \"%s\"" msgstr "no existe el operador %d(%s,%s) en la familia de operadores «%s»" -#: commands/opclasscmds.c:1784 +#: commands/opclasscmds.c:1809 #, c-format msgid "function %d(%s,%s) does not exist in operator family \"%s\"" msgstr "no existe la función %d(%s,%s) en la familia de operadores «%s»" -#: commands/opclasscmds.c:1815 +#: commands/opclasscmds.c:1840 #, c-format msgid "operator class \"%s\" for access method \"%s\" already exists in schema \"%s\"" msgstr "ya existe una clase de operadores «%s» para el método de acceso «%s» en el esquema «%s»" -#: commands/opclasscmds.c:1838 +#: commands/opclasscmds.c:1863 #, c-format msgid "operator family \"%s\" for access method \"%s\" already exists in schema \"%s\"" msgstr "ya existe una familia de operadores «%s» para el método de acceso «%s» en el esquema «%s»" @@ -9695,11 +9991,11 @@ 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/tablecmds.c:1740 commands/tablecmds.c:2340 -#: commands/tablecmds.c:3702 commands/tablecmds.c:6605 -#: commands/tablecmds.c:9637 commands/tablecmds.c:17772 -#: commands/tablecmds.c:17807 commands/trigger.c:316 commands/trigger.c:1332 -#: commands/trigger.c:1442 rewrite/rewriteDefine.c:268 +#: 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 #, c-format msgid "permission denied: \"%s\" is a system catalog" @@ -9740,53 +10036,53 @@ msgstr "no existe la política «%s» para la tabla «%s»" msgid "only USING expression allowed for SELECT, DELETE" msgstr "sólo se permite una expresión USING para SELECT, DELETE" -#: 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 "el nombre de cursor no es válido: no debe ser vacío" -#: commands/portalcmds.c:72 +#: commands/portalcmds.c:75 #, c-format msgid "cannot create a cursor WITH HOLD within security-restricted operation" msgstr "no se puede crear un cursor WITH HOLD dentro de una operación restringida por seguridad" -#: 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 "no existe el cursor «%s»" -#: commands/prepare.c:72 +#: commands/prepare.c:75 #, c-format msgid "invalid statement name: must not be empty" msgstr "el nombre de sentencia no es válido: no debe ser vacío" -#: 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 "la sentencia preparada no es un SELECT" -#: commands/prepare.c:292 +#: commands/prepare.c:295 #, c-format msgid "wrong number of parameters for prepared statement \"%s\"" msgstr "el número de parámetros es incorrecto en la sentencia preparada «%s»" -#: commands/prepare.c:294 +#: commands/prepare.c:297 #, c-format msgid "Expected %d parameters but got %d." msgstr "Se esperaban %d parámetros pero se obtuvieron %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 "el parámetro $%d de tipo %s no puede ser convertido al tipo esperado %s" -#: commands/prepare.c:411 +#: commands/prepare.c:414 #, c-format msgid "prepared statement \"%s\" already exists" msgstr "la sentencia preparada «%s» ya existe" -#: commands/prepare.c:450 +#: commands/prepare.c:453 #, c-format msgid "prepared statement \"%s\" does not exist" msgstr "no existe la sentencia preparada «%s»" @@ -9796,203 +10092,216 @@ 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:124 postmaster/postmaster.c:1108 -#: postmaster/postmaster.c:1210 utils/init/miscinit.c:1865 +#: 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 "la sintaxis de lista no es válida para el parámetro «%s»" -#: commands/publicationcmds.c:143 +#: commands/publicationcmds.c:149 #, 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:157 +#: commands/publicationcmds.c:170 #, c-format msgid "unrecognized publication parameter: \"%s\"" msgstr "parámetro de publicación no reconocido: «%s»" -#: commands/publicationcmds.c:198 +#: commands/publicationcmds.c:211 #, 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:495 +#: commands/publicationcmds.c:592 msgid "System columns are not allowed." msgstr "Las columnas de sistema no son permitidas." -#: 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 "Los operadores definidos por el usuario no están permitidos." -#: 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 "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:560 +#: commands/publicationcmds.c:657 msgid "User-defined types are not allowed." msgstr "Los tipos definidos por el usuario no están permitidos." -#: commands/publicationcmds.c:563 +#: commands/publicationcmds.c:660 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:566 +#: commands/publicationcmds.c:663 msgid "User-defined collations are not allowed." msgstr "Los «collations» definidos por el usuario no están permitidos." -#: commands/publicationcmds.c:576 +#: commands/publicationcmds.c:673 #, c-format msgid "invalid publication WHERE expression" msgstr "sintaxis de cláusula WHERE de publicación no válida" -#: commands/publicationcmds.c:629 +#: commands/publicationcmds.c:726 #, 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:631 +#: commands/publicationcmds.c:728 #, 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: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 "no se puede usar lista de columnas para la relación «%s.%s» en la publicación «%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 "Las listas de columnas no pueden ser especificadas en publicaciones que contienen elementos 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 "Las listas de columnas no pueden ser especificadas para tablas particionadas cuando %s es falso." -#: commands/publicationcmds.c:754 +#: commands/publicationcmds.c:855 #, 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:825 +#: commands/publicationcmds.c:930 #, 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:861 +#: commands/publicationcmds.c:966 #, c-format msgid "\"wal_level\" is insufficient to publish logical changes" msgstr "«wal_level» es insuficiente para publicar cambios lógicos" -#: commands/publicationcmds.c:862 +#: commands/publicationcmds.c:967 #, c-format msgid "Set \"wal_level\" to \"logical\" before creating subscriptions." msgstr "Cambie «wal_level» a «logical» antes de crear suscripciones." -#: 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 "no se puede definir el parámetro «%s» a falso para la publicación «%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 "La publicación contiene una cláusula WHERE para la tabla particionada «%s», que no está permitido cuando «%s» es falso." -#: 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 "La publicación contiene una lista de columns para la tabla particionada «%s», que no está permitido cuando «%s» es falso." -#: commands/publicationcmds.c:1292 +#: commands/publicationcmds.c:1399 #, c-format msgid "cannot add schema to publication \"%s\"" msgstr "no se puede agregar el esquema «%s» a la publicación" -#: 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 "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:1342 +#: commands/publicationcmds.c:1449 #, c-format msgid "must be superuser to add or set schemas" msgstr "debe ser superusuario para agregar o definir esquemas" -#: 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 "la publicación \"%s\" se define como FOR ALL TABLES" -#: commands/publicationcmds.c:1353 +#: commands/publicationcmds.c:1460 #, 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:1361 +#: commands/publicationcmds.c:1468 #, 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: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 "no existe la publicación «%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 "cláusulas WHERE en conflicto o redundantes para la tabla «%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 "listas de columnas contradictorias o redundantes para la tabla «%s»" -#: commands/publicationcmds.c:1796 +#: commands/publicationcmds.c:1903 #, 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:1808 +#: commands/publicationcmds.c:1915 #, 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:1815 +#: commands/publicationcmds.c:1922 #, 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:1875 +#: commands/publicationcmds.c:1982 #, 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: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 "se ha denegado el permiso para cambiar el dueño de la publicación «%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 "El dueño de una publicación FOR ALL TABLES debe ser un superusuario." -#: 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 "El dueño de una publicación FOR TABLES IN SCHEMA debe ser un superusuario." -#: commands/publicationcmds.c:1993 +#: commands/publicationcmds.c:2100 #, c-format msgid "publication with OID %u does not exist" msgstr "no existe la publicación con OID %u" +#: commands/publicationcmds.c:2133 +#, 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 +#, fuzzy, c-format +#| msgid "Valid values are between \"%d\" and \"%d\"." +msgid "Valid values are \"%s\" and \"%s\"." +msgstr "Los valores aceptables están entre «%d» y «%d»." + #: commands/schemacmds.c:109 commands/schemacmds.c:289 #, c-format msgid "unacceptable schema name \"%s\"" @@ -10034,13 +10343,15 @@ msgid "cannot set security label on relation \"%s\"" msgstr "no se puede definir la etiqueta de seguridad en la relación «%s»" #: commands/sequence.c:748 -#, c-format -msgid "nextval: reached maximum value of sequence \"%s\" (%lld)" +#, fuzzy, c-format +#| msgid "nextval: reached maximum value of sequence \"%s\" (%lld)" +msgid "nextval: reached maximum value of sequence \"%s\" (%)" msgstr "nextval: se alcanzó el valor máximo de la secuencia «%s» (%lld)" #: commands/sequence.c:767 -#, c-format -msgid "nextval: reached minimum value of sequence \"%s\" (%lld)" +#, fuzzy, c-format +#| msgid "nextval: reached minimum value of sequence \"%s\" (%lld)" +msgid "nextval: reached minimum value of sequence \"%s\" (%)" msgstr "nextval: se alcanzó el valor mínimo de la secuencia «%s» (%lld)" #: commands/sequence.c:886 @@ -10054,8 +10365,9 @@ msgid "lastval is not yet defined in this session" msgstr "lastval no está definido en esta sesión" #: commands/sequence.c:991 -#, c-format -msgid "setval: value %lld is out of bounds for sequence \"%s\" (%lld..%lld)" +#, fuzzy, c-format +#| msgid "setval: value %lld is out of bounds for sequence \"%s\" (%lld..%lld)" +msgid "setval: value % is out of bounds for sequence \"%s\" (%..%)" msgstr "setval: el valor %lld está fuera del rango para la secuencia «%s» (%lld..%lld)" #: commands/sequence.c:1357 @@ -10079,43 +10391,51 @@ msgid "INCREMENT must not be zero" msgstr "INCREMENT no debe ser cero" #: commands/sequence.c:1466 -#, c-format -msgid "MAXVALUE (%lld) is out of range for sequence data type %s" +#, fuzzy, c-format +#| msgid "MAXVALUE (%lld) is out of range for sequence data type %s" +msgid "MAXVALUE (%) is out of range for sequence data type %s" msgstr "el MAXVALUE (%lld) está fuera de rango para el tipo de la secuencia %s" #: commands/sequence.c:1498 -#, c-format -msgid "MINVALUE (%lld) is out of range for sequence data type %s" +#, fuzzy, c-format +#| msgid "MINVALUE (%lld) is out of range for sequence data type %s" +msgid "MINVALUE (%) is out of range for sequence data type %s" msgstr "el MINVALUE (%lld) está fuera de rango para el tipo de la secuencia %s" #: commands/sequence.c:1506 -#, c-format -msgid "MINVALUE (%lld) must be less than MAXVALUE (%lld)" +#, fuzzy, c-format +#| msgid "MINVALUE (%lld) must be less than MAXVALUE (%lld)" +msgid "MINVALUE (%) must be less than MAXVALUE (%)" msgstr "MINVALUE (%lld) debe ser menor que MAXVALUE (%lld)" #: commands/sequence.c:1527 -#, c-format -msgid "START value (%lld) cannot be less than MINVALUE (%lld)" +#, fuzzy, c-format +#| msgid "START value (%lld) cannot be less than MINVALUE (%lld)" +msgid "START value (%) cannot be less than MINVALUE (%)" msgstr "el valor START (%lld) no puede ser menor que MINVALUE (%lld)" #: commands/sequence.c:1533 -#, c-format -msgid "START value (%lld) cannot be greater than MAXVALUE (%lld)" +#, fuzzy, c-format +#| msgid "START value (%lld) cannot be greater than MAXVALUE (%lld)" +msgid "START value (%) cannot be greater than MAXVALUE (%)" msgstr "el valor START (%lld) no puede ser mayor que el MAXVALUE (%lld)" #: commands/sequence.c:1557 -#, c-format -msgid "RESTART value (%lld) cannot be less than MINVALUE (%lld)" +#, fuzzy, c-format +#| msgid "RESTART value (%lld) cannot be less than MINVALUE (%lld)" +msgid "RESTART value (%) cannot be less than MINVALUE (%)" msgstr "el valor RESTART (%lld) no puede ser menor que MINVALUE (%lld)" #: commands/sequence.c:1563 -#, c-format -msgid "RESTART value (%lld) cannot be greater than MAXVALUE (%lld)" +#, fuzzy, c-format +#| msgid "RESTART value (%lld) cannot be greater than MAXVALUE (%lld)" +msgid "RESTART value (%) cannot be greater than MAXVALUE (%)" msgstr "el valor RESTART (%lld) no puede ser mayor que MAXVALUE (%lld)" #: commands/sequence.c:1574 -#, c-format -msgid "CACHE (%lld) must be greater than zero" +#, fuzzy, c-format +#| msgid "CACHE (%lld) must be greater than zero" +msgid "CACHE (%) must be greater than zero" msgstr "el CACHE (%lld) debe ser mayor que cero" #: commands/sequence.c:1610 @@ -10148,13 +10468,13 @@ msgstr "la secuencia debe estar en el mismo esquema que la tabla a la que está msgid "cannot change ownership of identity sequence" msgstr "no se puede cambiar el dueño de la secuencia de identidad" -#: commands/sequence.c:1671 commands/tablecmds.c:14486 -#: commands/tablecmds.c:17181 +#: commands/sequence.c:1671 commands/tablecmds.c:16111 +#: commands/tablecmds.c:18949 #, c-format msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "La secuencia «%s» está enlazada a la tabla «%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 "sólo se permite una relación en CREATE STATISTICS" @@ -10179,1786 +10499,1986 @@ msgstr "el objeto de estadísticas «%s» ya existe" 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:270 commands/statscmds.c:304 +#: commands/statscmds.c:247 commands/statscmds.c:276 commands/statscmds.c:316 #, 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:254 commands/statscmds.c:277 +#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#, 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 #, 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:321 +#: commands/statscmds.c:339 #, 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:342 +#: commands/statscmds.c:360 #, 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:371 +#: commands/statscmds.c:389 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "tipo de estadísticas «%s» no reconocido" -#: commands/statscmds.c:400 +#: commands/statscmds.c:418 #, c-format msgid "extended statistics require at least 2 columns" msgstr "las estadísticas extendidas requieren al menos 2 columnas" -#: commands/statscmds.c:418 +#: commands/statscmds.c:436 #, c-format msgid "duplicate column name in statistics definition" msgstr "nombre de columna duplicado en definición de estadísticas" -#: commands/statscmds.c:453 +#: commands/statscmds.c:471 #, c-format msgid "duplicate expression in statistics definition" msgstr "expresión duplicada en definición de estadísticas" -#: commands/statscmds.c:628 commands/tablecmds.c:8620 +#: commands/statscmds.c:646 commands/tablecmds.c:8914 #, c-format msgid "statistics target %d is too low" msgstr "el valor de estadísticas %d es demasiado bajo" -#: commands/statscmds.c:636 commands/tablecmds.c:8628 +#: commands/statscmds.c:654 commands/tablecmds.c:8922 #, c-format msgid "lowering statistics target to %d" msgstr "bajando el valor de estadísticas a %d" -#: commands/statscmds.c:660 +#: commands/statscmds.c:678 #, 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:275 commands/subscriptioncmds.c:372 -#, c-format -msgid "unrecognized subscription parameter: \"%s\"" -msgstr "parámetro de suscripción no reconocido: «%s»" - -#: commands/subscriptioncmds.c:340 replication/pgoutput/pgoutput.c:404 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:410 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "valor de origen no reconocido: «%s»" -#: commands/subscriptioncmds.c:363 +#: commands/subscriptioncmds.c:354 #, c-format msgid "invalid WAL location (LSN): %s" msgstr "ubicación de WAL (LSN) no válida: %s" +#: commands/subscriptioncmds.c:363 +#, c-format +msgid "unrecognized subscription parameter: \"%s\"" +msgstr "parámetro de suscripción no reconocido: «%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 y %s son opciones mutuamente excluyentes" #. 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 "suscripción con %s también debe activar %s" -#: commands/subscriptioncmds.c:506 +#: commands/subscriptioncmds.c:466 #, c-format msgid "could not receive list of publications from the publisher: %s" msgstr "no se pudo recibir la lista de publicaciones desde el publicador: %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" msgstr[0] "no existe la publicación «%s» en el “publisher”" msgstr[1] "no existen las publicaciones «%s» en el “publisher”" -#: commands/subscriptioncmds.c:626 +#: commands/subscriptioncmds.c:586 #, c-format msgid "permission denied to create subscription" msgstr "permiso denegado a crear suscripción" -#: commands/subscriptioncmds.c:627 +#: commands/subscriptioncmds.c:587 #, c-format msgid "Only roles with privileges of the \"%s\" role may create subscriptions." msgstr "Sólo los roles con privilegio del rol «%s» pueden crear suscripciones." -#: commands/subscriptioncmds.c:758 commands/subscriptioncmds.c:891 -#: commands/subscriptioncmds.c:1524 replication/logical/tablesync.c:1345 -#: replication/logical/worker.c:4503 -#, c-format -msgid "could not connect to the publisher: %s" +#: commands/subscriptioncmds.c:718 commands/subscriptioncmds.c:852 +#: commands/subscriptioncmds.c:1594 +#, fuzzy, c-format +#| msgid "could not connect to the publisher: %s" +msgid "subscription \"%s\" could not connect to the publisher: %s" msgstr "no se pudo connectar con el publicador: %s" -#: commands/subscriptioncmds.c:829 +#: commands/subscriptioncmds.c:790 #, c-format msgid "created replication slot \"%s\" on publisher" msgstr "se creó el slot de replicación «%s» en el publicador" -#: commands/subscriptioncmds.c:841 +#: commands/subscriptioncmds.c:802 #, c-format msgid "subscription was created, but is not connected" msgstr "la suscripción fue creada, pero no está conectada" -#: 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 "Para iniciar la replicacióñ, debe manualmente crear el slot de replicación, activar la suscripción, y refrescar la suscripción." -#: commands/subscriptioncmds.c:1109 commands/subscriptioncmds.c:1590 -#: commands/subscriptioncmds.c:1973 utils/cache/lsyscache.c:3684 +#: commands/subscriptioncmds.c:1070 +#, fuzzy, c-format +#| msgid "cannot set %s for enabled subscription" +msgid "cannot set option \"%s\" for enabled subscription" +msgstr "no se puede establecer %s para la suscripción activada" + +#: commands/subscriptioncmds.c:1084 +#, c-format +msgid "cannot set option \"%s\" for a subscription that does not have a slot name" +msgstr "no se puede definir la opción «%s” para una suscripción que no tiene un nombre de slot" + +#: 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 "no existe la suscripción «%s»" -#: commands/subscriptioncmds.c:1166 commands/subscriptioncmds.c:1245 +#: commands/subscriptioncmds.c:1185 #, c-format msgid "cannot set %s for enabled subscription" msgstr "no se puede establecer %s para la suscripción activada" -#: commands/subscriptioncmds.c:1233 +#: commands/subscriptioncmds.c:1270 +#, fuzzy, c-format +#| msgid "source and target cluster are on the same timeline" +msgid "\"slot_name\" and \"two_phase\" cannot be altered at the same time" +msgstr "el cluster de origen y destino están en el mismo timeline" + +#: commands/subscriptioncmds.c:1286 +#, fuzzy, c-format +#| msgid "cannot use %s with a logical replication slot" +msgid "cannot alter \"two_phase\" when logical replication worker is still running" +msgstr "no se puede usar %s con un slot de replicación lógica" + +#: commands/subscriptioncmds.c:1287 #, c-format -msgid "cannot set option \"%s\" for a subscription that does not have a slot name" -msgstr "no se puede definir la opción «%s” para una suscripción que no tiene un nombre de slot" +msgid "Try again after some time." +msgstr "" + +#: commands/subscriptioncmds.c:1300 +#, fuzzy, c-format +#| msgid "database \"%s\" is being used by prepared transactions" +msgid "cannot disable \"two_phase\" when prepared transactions exist" +msgstr "la base de datos «%s» está siendo utilizada por transacciones preparadas" -#: commands/subscriptioncmds.c:1279 +#: commands/subscriptioncmds.c:1301 +#, fuzzy, c-format +#| msgid "Stop the standby server and try again." +msgid "Resolve these transactions and try again." +msgstr "Detenga el servidor standby y pruebe otra vez." + +#: commands/subscriptioncmds.c:1348 #, c-format msgid "cannot enable subscription that does not have a slot name" msgstr "no se puede habilitar la suscripción que no tiene un nombre de slot" -#: 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 con actualización no está permitido para las suscripciones desactivadas" -#: commands/subscriptioncmds.c:1324 +#: commands/subscriptioncmds.c:1393 #, c-format msgid "Use ALTER SUBSCRIPTION ... SET PUBLICATION ... WITH (refresh = false)." msgstr "Use 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 con «refresh» y «copy_data» no está permitido cuando «two_phase» está activo" -#: 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 "Use ALTER SUBSCRIPTION ... SET PUBLICATION con refresh = false, o con copy_data=false, o use 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 "Use %s con refresh = false, o con copy_data = false, o use 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 no está permitido para las suscripciones desactivadas" -#: 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 con copy_data no está permitido cuando two_phase está activo" -#: 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 "Use ALTER SUBSCRIPTION ... REFRESH con copy_data = false, o use 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 "la ubicación de WAL a saltar (LSN %X/%X) debe ser mayor que el LSN de origen %X/%X" -#: commands/subscriptioncmds.c:1594 +#: commands/subscriptioncmds.c:1669 #, c-format msgid "subscription \"%s\" does not exist, skipping" msgstr "no existe la suscripción «%s», omitiendo" -#: commands/subscriptioncmds.c:1863 +#: commands/subscriptioncmds.c:1936 #, c-format msgid "dropped replication slot \"%s\" on publisher" msgstr "eliminando el slot de replicación «%s» en publicador" -#: 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 "no se pudo eliminar el slot de replicación «%s» en publicador: %s" -#: commands/subscriptioncmds.c:2005 +#: commands/subscriptioncmds.c:2078 #, c-format msgid "subscription with OID %u does not exist" msgstr "no existe la suscripción con OID %u" -#: 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 "no se pudo recibir la lista de tablas replicadas desde el publicador: %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 "la suscripción «%s» pidió copy_data con origin = NONE pero podría copiar datos que tenían un origen diferente" -#: 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." msgstr[0] "La suscripción que está siendo creada suscribe a una publicación (%s) que contiene tablas que están siendo escritas por otras suscripciones." msgstr[1] "La suscripción que está siendo creada suscribe a publicaciones (%s) que contienen tablas que están siendo escritas por otras suscripciones." -#: 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 "Verifique que los datos iniciales copiados desde el publicador no vinieron de otros orígenes." -#: commands/subscriptioncmds.c:2223 replication/logical/tablesync.c:906 -#: replication/pgoutput/pgoutput.c:1143 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 +#: replication/pgoutput/pgoutput.c:1162 #, 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" -#: 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 "no se pudo conectar con el publicador al intentar eliminar el slot de replicación \"%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 "Use %s para desactivar la suscripción, luego use %s para disociarla del slot." -#: commands/subscriptioncmds.c:2307 +#: commands/subscriptioncmds.c:2382 #, c-format msgid "publication name \"%s\" used more than once" msgstr "nombre de publicación «%s» usado más de una vez" -#: commands/subscriptioncmds.c:2351 +#: commands/subscriptioncmds.c:2426 #, c-format msgid "publication \"%s\" is already in subscription \"%s\"" msgstr "la publicación «%s» ya existe en la suscripción «%s»" -#: commands/subscriptioncmds.c:2365 +#: commands/subscriptioncmds.c:2440 #, c-format msgid "publication \"%s\" is not in subscription \"%s\"" msgstr "la publicación «%s» no está en la suscripción «%s»" -#: commands/subscriptioncmds.c:2376 +#: commands/subscriptioncmds.c:2451 #, c-format msgid "cannot drop all the publications from a subscription" msgstr "no se puede eliminar todas las publicaciones de una suscripción" -#: commands/subscriptioncmds.c:2433 +#: commands/subscriptioncmds.c:2508 #, c-format msgid "%s requires a Boolean value or \"parallel\"" msgstr "«%s» requiere un valor lógico (booleano) o “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 "no existe la tabla «%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 "la tabla «%s» no existe, omitiendo" -#: 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 "Use DROP TABLE para eliminar una tabla." -#: commands/tablecmds.c:261 +#: commands/tablecmds.c:264 #, c-format msgid "sequence \"%s\" does not exist" msgstr "no existe la secuencia «%s»" -#: commands/tablecmds.c:262 +#: commands/tablecmds.c:265 #, c-format msgid "sequence \"%s\" does not exist, skipping" msgstr "la secuencia «%s» no existe, omitiendo" -#: commands/tablecmds.c:264 +#: commands/tablecmds.c:267 msgid "Use DROP SEQUENCE to remove a sequence." msgstr "Use DROP SEQUENCE para eliminar una secuencia." -#: commands/tablecmds.c:267 +#: commands/tablecmds.c:270 #, c-format msgid "view \"%s\" does not exist" msgstr "no existe la vista «%s»" -#: commands/tablecmds.c:268 +#: commands/tablecmds.c:271 #, c-format msgid "view \"%s\" does not exist, skipping" msgstr "la vista «%s» no existe, omitiendo" -#: commands/tablecmds.c:270 +#: commands/tablecmds.c:273 msgid "Use DROP VIEW to remove a view." msgstr "Use DROP VIEW para eliminar una vista." -#: commands/tablecmds.c:273 +#: commands/tablecmds.c:276 #, c-format msgid "materialized view \"%s\" does not exist" msgstr "no existe la vista materializada «%s»" -#: commands/tablecmds.c:274 +#: commands/tablecmds.c:277 #, c-format msgid "materialized view \"%s\" does not exist, skipping" msgstr "la vista materializada «%s» no existe, omitiendo" -#: commands/tablecmds.c:276 +#: commands/tablecmds.c:279 msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "Use DROP MATERIALIZED VIEW para eliminar una vista materializada." -#: commands/tablecmds.c:279 commands/tablecmds.c:303 commands/tablecmds.c:19805 -#: parser/parse_utilcmd.c:2251 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 +#: parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" msgstr "no existe el índice «%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 "el índice «%s» no existe, omitiendo" -#: 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 "Use DROP INDEX para eliminar un índice." -#: commands/tablecmds.c:287 +#: commands/tablecmds.c:290 #, c-format msgid "\"%s\" is not a type" msgstr "«%s» no es un tipo" -#: commands/tablecmds.c:288 +#: commands/tablecmds.c:291 msgid "Use DROP TYPE to remove a type." msgstr "Use DROP TYPE para eliminar un tipo." -#: commands/tablecmds.c:291 commands/tablecmds.c:14325 -#: commands/tablecmds.c:16886 +#: commands/tablecmds.c:294 commands/tablecmds.c:15950 +#: commands/tablecmds.c:18651 #, c-format msgid "foreign table \"%s\" does not exist" msgstr "no existe la tabla foránea «%s»" -#: commands/tablecmds.c:292 +#: commands/tablecmds.c:295 #, c-format msgid "foreign table \"%s\" does not exist, skipping" msgstr "la tabla foránea «%s» no existe, omitiendo" -#: commands/tablecmds.c:294 +#: commands/tablecmds.c:297 msgid "Use DROP FOREIGN TABLE to remove a foreign table." msgstr "Use DROP FOREIGN TABLE para eliminar una tabla foránea." -#: commands/tablecmds.c:734 +#: commands/tablecmds.c:802 #, c-format msgid "ON COMMIT can only be used on temporary tables" msgstr "ON COMMIT sólo puede ser usado en tablas temporales" -#: commands/tablecmds.c:765 +#: commands/tablecmds.c:819 +#, fuzzy, c-format +#| msgid "materialized views cannot be unlogged" +msgid "partitioned tables cannot be unlogged" +msgstr "las vistas materializadas no pueden ser «unlogged»" + +#: commands/tablecmds.c:839 #, c-format msgid "cannot create temporary table within security-restricted operation" msgstr "no se puede crear una tabla temporal dentro una operación restringida por seguridad" -#: commands/tablecmds.c:801 commands/tablecmds.c:15745 +#: commands/tablecmds.c:875 commands/tablecmds.c:17375 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "se heredaría de la relación «%s» más de una vez" -#: commands/tablecmds.c:1067 +#: commands/tablecmds.c:1133 #, c-format msgid "\"%s\" is not partitioned" msgstr "«%s» no está particionada" -#: commands/tablecmds.c:1161 +#: commands/tablecmds.c:1227 #, c-format msgid "cannot partition using more than %d columns" msgstr "no se puede particionar usando más de %d columnas" -#: commands/tablecmds.c:1217 +#: commands/tablecmds.c:1283 #, c-format msgid "cannot create foreign partition of partitioned table \"%s\"" msgstr "no se puede crear una partición foránea en la tabla particionada «%s»" -#: commands/tablecmds.c:1219 +#: commands/tablecmds.c:1285 #, c-format msgid "Table \"%s\" contains indexes that are unique." msgstr "La tabla «%s» contiene índices que son únicos." -#: commands/tablecmds.c:1338 commands/tablecmds.c:13341 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 #, c-format msgid "too many array dimensions" msgstr "demasiadas dimensiones de array" -#: commands/tablecmds.c:1343 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 "la columna «%s» no puede ser declarada SETOF" -#: commands/tablecmds.c:1489 +#: commands/tablecmds.c:1549 #, c-format msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects" msgstr "DROP INDEX CONCURRENTLY no soporta eliminar múltiples objetos" -#: commands/tablecmds.c:1493 +#: commands/tablecmds.c:1553 #, c-format msgid "DROP INDEX CONCURRENTLY does not support CASCADE" msgstr "DROP INDEX CONCURRENTLY no soporta CASCADE" -#: commands/tablecmds.c:1597 +#: commands/tablecmds.c:1657 #, c-format msgid "cannot drop partitioned index \"%s\" concurrently" msgstr "no se puede eliminar el índice particionado «%s» concurrentemente" -#: commands/tablecmds.c:1885 +#: commands/tablecmds.c:1945 #, c-format msgid "cannot truncate only a partitioned table" msgstr "no se puede truncar ONLY una tabla particionada" -#: commands/tablecmds.c:1886 +#: commands/tablecmds.c:1946 #, c-format msgid "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions directly." msgstr "No especifique la opción ONLY, o ejecute TRUNCATE ONLY en las particiones directamente." -#: commands/tablecmds.c:1959 +#: commands/tablecmds.c:2019 #, c-format msgid "truncate cascades to table \"%s\"" msgstr "truncando además la tabla «%s»" -#: commands/tablecmds.c:2320 +#: commands/tablecmds.c:2380 #, c-format msgid "cannot truncate foreign table \"%s\"" msgstr "no se puede truncar la tabla foránea «%s»" -#: commands/tablecmds.c:2377 +#: commands/tablecmds.c:2437 #, c-format msgid "cannot truncate temporary tables of other sessions" msgstr "no se pueden truncar tablas temporales de otras sesiones" -#: commands/tablecmds.c:2606 commands/tablecmds.c:15642 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17272 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "no se puede heredar de la tabla particionada «%s»" -#: commands/tablecmds.c:2611 +#: commands/tablecmds.c:2680 #, c-format msgid "cannot inherit from partition \"%s\"" msgstr "no se puede heredar de la partición «%s»" -#: commands/tablecmds.c:2619 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 "la relación heredada «%s» no es una tabla o tabla foránea" -#: commands/tablecmds.c:2631 +#: commands/tablecmds.c:2700 #, c-format msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "no se puede crear una relación temporal como partición de la relación permanente «%s»" -#: commands/tablecmds.c:2640 commands/tablecmds.c:15621 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17251 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "no se puede heredar de la tabla temporal «%s»" -#: commands/tablecmds.c:2650 commands/tablecmds.c:15629 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17259 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "no se puede heredar de una tabla temporal de otra sesión" -#: commands/tablecmds.c:2791 commands/tablecmds.c:2845 -#: commands/tablecmds.c:13024 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:14610 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 "no se puede convertir una referencia a la fila completa (whole-row)" -#: commands/tablecmds.c:2792 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 "La expresión de generación para la columna «%s» contiene una referencia a la fila completa (whole-row) de la tabla «%s»." -#: commands/tablecmds.c:2846 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 "La restricción «%s» contiene una referencia a la fila completa (whole-row) de la tabla «%s»." -#: commands/tablecmds.c:2956 commands/tablecmds.c:3227 +#: commands/tablecmds.c:3051 commands/tablecmds.c:3345 #, c-format msgid "column \"%s\" inherits from generated column but specifies default" msgstr "la columna «%s» hereda de una columna generada pero especifica un valor por omisión" -#: commands/tablecmds.c:2961 commands/tablecmds.c:3232 +#: commands/tablecmds.c:3056 commands/tablecmds.c:3350 #, c-format msgid "column \"%s\" inherits from generated column but specifies identity" msgstr "la columna «%s» hereda de una columna generada pero especifica una identidad" -#: commands/tablecmds.c:2969 commands/tablecmds.c:3240 +#: commands/tablecmds.c:3064 commands/tablecmds.c:3358 #, c-format msgid "child column \"%s\" specifies generation expression" msgstr "la columna hija «%s» especifica una expresión de generación de columna" -#: commands/tablecmds.c:2971 commands/tablecmds.c:3242 +#: commands/tablecmds.c:3066 commands/tablecmds.c:3360 #, c-format msgid "A child table column cannot be generated unless its parent column is." msgstr "Una columna de tabla hija no puede ser generada a menos que su columna padre lo sea." -#: commands/tablecmds.c:3017 +#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 +#: commands/tablecmds.c:17537 +#, fuzzy, c-format +#| msgid "column \"%s\" inherits from generated column but specifies identity" +msgid "column \"%s\" inherits from generated column of different kind" +msgstr "la columna «%s» hereda de una columna generada pero especifica una identidad" + +#: commands/tablecmds.c:3074 commands/tablecmds.c:3368 +#: commands/tablecmds.c:17538 +#, c-format +msgid "Parent column is %s, child column is %s." +msgstr "" + +#: commands/tablecmds.c:3121 #, c-format msgid "column \"%s\" inherits conflicting generation expressions" msgstr "la columna «%s» hereda expresiones de generación en conflicto" -#: commands/tablecmds.c:3019 +#: commands/tablecmds.c:3123 #, c-format msgid "To resolve the conflict, specify a generation expression explicitly." msgstr "Para resolver el conflicto, indique explícitamente una expresión de generación." -#: commands/tablecmds.c:3023 +#: commands/tablecmds.c:3127 #, c-format msgid "column \"%s\" inherits conflicting default values" msgstr "la columna «%s» hereda valores por omisión no coincidentes" -#: commands/tablecmds.c:3025 +#: commands/tablecmds.c:3129 #, c-format msgid "To resolve the conflict, specify a default explicitly." msgstr "Para resolver el conflicto, indique explícitamente un valor por omisión." -#: commands/tablecmds.c:3080 +#: commands/tablecmds.c:3196 #, c-format msgid "check constraint name \"%s\" appears multiple times but with different expressions" msgstr "la restricción «check» «%s» aparece más de una vez con diferentes expresiones" -#: commands/tablecmds.c:3131 +#: commands/tablecmds.c:3249 #, c-format msgid "merging column \"%s\" with inherited definition" msgstr "mezclando la columna «%s» con la definición heredada" -#: commands/tablecmds.c:3135 +#: commands/tablecmds.c:3253 #, c-format msgid "moving and merging column \"%s\" with inherited definition" msgstr "moviendo y mezclando la columna «%s» con la definición heredada" -#: commands/tablecmds.c:3136 +#: commands/tablecmds.c:3254 #, c-format msgid "User-specified column moved to the position of the inherited column." msgstr "La columna especificada por el usuario fue movida a la posición de la columna heredada." -#: commands/tablecmds.c:3148 +#: commands/tablecmds.c:3266 #, c-format msgid "column \"%s\" has a type conflict" msgstr "la columna «%s» tiene conflicto de tipos" -#: commands/tablecmds.c:3150 commands/tablecmds.c:3184 -#: commands/tablecmds.c:3200 commands/tablecmds.c:3307 -#: commands/tablecmds.c:3340 commands/tablecmds.c:3356 -#: parser/parse_coerce.c:2192 parser/parse_coerce.c:2212 -#: parser/parse_coerce.c:2232 parser/parse_coerce.c:2253 -#: parser/parse_coerce.c:2308 parser/parse_coerce.c:2342 -#: parser/parse_coerce.c:2418 parser/parse_coerce.c:2449 -#: parser/parse_coerce.c:2488 parser/parse_coerce.c:2555 -#: 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 versus %s" -#: commands/tablecmds.c:3162 +#: commands/tablecmds.c:3280 #, c-format msgid "column \"%s\" has a collation conflict" msgstr "la columna «%s» tiene conflicto de ordenamientos (collation)" -#: commands/tablecmds.c:3164 commands/tablecmds.c:3326 -#: commands/tablecmds.c:7080 +#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 +#: commands/tablecmds.c:7277 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "«%s» versus «%s»" -#: commands/tablecmds.c:3182 +#: commands/tablecmds.c:3300 #, c-format msgid "column \"%s\" has a storage parameter conflict" msgstr "la columna «%s» tiene conflicto de parámetros de almacenamiento" -#: commands/tablecmds.c:3198 commands/tablecmds.c:3354 +#: commands/tablecmds.c:3316 commands/tablecmds.c:3476 #, c-format msgid "column \"%s\" has a compression method conflict" msgstr "la columna «%s» tiene conflicto de método de compresión" -#: commands/tablecmds.c:3293 +#: commands/tablecmds.c:3420 #, c-format msgid "merging multiple inherited definitions of column \"%s\"" msgstr "mezclando múltiples definiciones heredadas de la columna «%s»" -#: commands/tablecmds.c:3305 +#: commands/tablecmds.c:3432 #, c-format msgid "inherited column \"%s\" has a type conflict" msgstr "columna heredada «%s» tiene conflicto de tipos" -#: commands/tablecmds.c:3324 +#: commands/tablecmds.c:3446 #, c-format msgid "inherited column \"%s\" has a collation conflict" msgstr "columna heredada «%s» tiene conflicto de ordenamiento (collation)" -#: commands/tablecmds.c:3338 +#: commands/tablecmds.c:3460 #, c-format msgid "inherited column \"%s\" has a storage parameter conflict" msgstr "columna heredada «%s» tiene conflicto de parámetros de almacenamiento" -#: commands/tablecmds.c:3366 +#: commands/tablecmds.c:3488 #, c-format msgid "inherited column \"%s\" has a generation conflict" msgstr "columna heredada «%s» tiene conflicto de generación" -#: commands/tablecmds.c:3597 +#: commands/tablecmds.c:3719 #, c-format msgid "cannot move temporary tables of other sessions" msgstr "no se pueden mover tablas temporales de otras sesiones" -#: commands/tablecmds.c:3670 +#: commands/tablecmds.c:3792 #, c-format msgid "cannot rename column of typed table" msgstr "no se puede cambiar el nombre a una columna de una tabla tipada" -#: commands/tablecmds.c:3689 +#: commands/tablecmds.c:3811 #, c-format msgid "cannot rename columns of relation \"%s\"" msgstr "no se puede cambiar el nombre de columnas de la relación «%s»" -#: commands/tablecmds.c:3784 +#: commands/tablecmds.c:3906 #, c-format msgid "inherited column \"%s\" must be renamed in child tables too" msgstr "debe cambiar el nombre a la columna heredada «%s» en las tablas hijas también" -#: commands/tablecmds.c:3816 +#: commands/tablecmds.c:3938 #, c-format msgid "cannot rename system column \"%s\"" msgstr "no se puede cambiar el nombre a la columna de sistema «%s»" -#: commands/tablecmds.c:3831 +#: commands/tablecmds.c:3953 #, c-format msgid "cannot rename inherited column \"%s\"" msgstr "no se puede cambiar el nombre a la columna heredada «%s»" -#: commands/tablecmds.c:3983 +#: commands/tablecmds.c:4108 #, c-format msgid "inherited constraint \"%s\" must be renamed in child tables too" msgstr "debe cambiar el nombre a la restricción heredada «%s» en las tablas hijas también" -#: commands/tablecmds.c:3990 +#: commands/tablecmds.c:4115 #, c-format msgid "cannot rename inherited constraint \"%s\"" msgstr "no se puede cambiar el nombre a la restricción heredada «%s»" #. translator: first %s is a SQL command, eg ALTER TABLE -#: commands/tablecmds.c:4290 +#: commands/tablecmds.c:4415 #, c-format msgid "cannot %s \"%s\" because it is being used by active queries in this session" msgstr "no se puede hacer %s en «%s» porque está siendo usada por consultas activas en esta sesión" #. translator: first %s is a SQL command, eg ALTER TABLE -#: commands/tablecmds.c:4299 +#: commands/tablecmds.c:4424 #, c-format msgid "cannot %s \"%s\" because it has pending trigger events" msgstr "no se puede hacer %s en «%s» porque tiene eventos de “trigger” pendientes" -#: commands/tablecmds.c:4325 +#: commands/tablecmds.c:4450 #, c-format msgid "cannot alter temporary tables of other sessions" msgstr "no se pueden alterar tablas temporales de otras sesiones" -#: commands/tablecmds.c:4798 +#: commands/tablecmds.c:4914 #, c-format msgid "cannot alter partition \"%s\" with an incomplete detach" msgstr "no se puede modificar la partición «%s» teniendo un desprendimiento incompleto" -#: commands/tablecmds.c:5002 commands/tablecmds.c:5017 +#: commands/tablecmds.c:5143 #, c-format msgid "cannot change persistence setting twice" msgstr "no se puede cambiar la opción de persistencia dos veces" -#: commands/tablecmds.c:5038 +#: commands/tablecmds.c:5160 #, c-format msgid "cannot have multiple SET ACCESS METHOD subcommands" msgstr "no se pueden tener múltiples subórdenes SET ACCESS METHOD" -#: commands/tablecmds.c:5768 +#: commands/tablecmds.c:5894 #, c-format msgid "cannot rewrite system relation \"%s\"" msgstr "no se puede reescribir la relación de sistema «%s»" -#: commands/tablecmds.c:5774 +#: commands/tablecmds.c:5900 #, c-format msgid "cannot rewrite table \"%s\" used as a catalog table" msgstr "no se puede reescribir la tabla «%s» que es usada como tabla de catálogo" -#: commands/tablecmds.c:5786 +#: commands/tablecmds.c:5912 #, c-format msgid "cannot rewrite temporary tables of other sessions" msgstr "no se puede reescribir tablas temporales de otras sesiones" -#: commands/tablecmds.c:6281 +#: commands/tablecmds.c:6448 commands/tablecmds.c:6468 #, c-format msgid "column \"%s\" of relation \"%s\" contains null values" msgstr "la columna «%s» de la relación «%s» contiene valores null" -#: commands/tablecmds.c:6298 +#: commands/tablecmds.c:6485 #, c-format msgid "check constraint \"%s\" of relation \"%s\" is violated by some row" msgstr "la restricción check «%s» de la relación «%s» es violada por alguna fila" -#: commands/tablecmds.c:6317 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 "la restricción de partición actualizada para la partición default «%s» sería violada por alguna fila" -#: commands/tablecmds.c:6323 +#: commands/tablecmds.c:6511 #, c-format msgid "partition constraint of relation \"%s\" is violated by some row" msgstr "la restricción de partición de la relación «%s» es violada por alguna fila" #. translator: %s is a group of some SQL keywords -#: commands/tablecmds.c:6588 +#: commands/tablecmds.c:6776 #, c-format msgid "ALTER action %s cannot be performed on relation \"%s\"" msgstr "la acción ALTER %s no puede ser efecutada en la relación «%s»" -#: commands/tablecmds.c:6843 commands/tablecmds.c:6850 +#: commands/tablecmds.c:7031 commands/tablecmds.c:7038 #, c-format msgid "cannot alter type \"%s\" because column \"%s.%s\" uses it" msgstr "no se puede alterar el tipo «%s» porque la columna «%s.%s» lo usa" -#: commands/tablecmds.c:6857 +#: commands/tablecmds.c:7045 #, c-format msgid "cannot alter foreign table \"%s\" because column \"%s.%s\" uses its row type" msgstr "no se puede alterar la tabla foránea «%s» porque la columna «%s.%s» usa su tipo de registro" -#: commands/tablecmds.c:6864 +#: commands/tablecmds.c:7052 #, c-format msgid "cannot alter table \"%s\" because column \"%s.%s\" uses its row type" msgstr "no se puede alterar la tabla «%s» porque la columna «%s.%s» usa su tipo de registro" -#: commands/tablecmds.c:6920 +#: commands/tablecmds.c:7108 #, c-format msgid "cannot alter type \"%s\" because it is the type of a typed table" msgstr "no se puede cambiar el tipo «%s» porque es el tipo de una tabla tipada" -#: commands/tablecmds.c:6922 +#: commands/tablecmds.c:7110 #, c-format msgid "Use ALTER ... CASCADE to alter the typed tables too." msgstr "Use ALTER ... CASCADE para eliminar además las tablas tipadas." -#: commands/tablecmds.c:6968 +#: commands/tablecmds.c:7156 +#, fuzzy, c-format +#| msgid "cannot alter type \"%s\" because it is the type of a typed table" +msgid "type %s is the row type of another table" +msgstr "no se puede cambiar el tipo «%s» porque es el tipo de una tabla tipada" + +#: commands/tablecmds.c:7158 +#, c-format +msgid "A typed table must use a stand-alone composite type created with CREATE TYPE." +msgstr "" + +#: commands/tablecmds.c:7163 #, c-format msgid "type %s is not a composite type" msgstr "el tipo %s no es un tipo compuesto" -#: commands/tablecmds.c:6995 +#: commands/tablecmds.c:7190 #, c-format msgid "cannot add column to typed table" msgstr "no se puede agregar una columna a una tabla tipada" -#: commands/tablecmds.c:7043 +#: commands/tablecmds.c:7240 #, c-format msgid "cannot add column to a partition" msgstr "no se puede agregar una columna a una partición" -#: commands/tablecmds.c:7072 commands/tablecmds.c:15860 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17493 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "la tabla hija «%s» tiene un tipo diferente para la columna «%s»" -#: commands/tablecmds.c:7078 commands/tablecmds.c:15866 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17499 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "la tabla hija «%s» tiene un ordenamiento (collation) diferente para la columna «%s»" -#: commands/tablecmds.c:7096 +#: commands/tablecmds.c:7293 #, c-format msgid "merging definition of column \"%s\" for child \"%s\"" msgstr "mezclando la definición de la columna «%s» en la tabla hija «%s»" -#: commands/tablecmds.c:7149 +#: commands/tablecmds.c:7346 #, c-format msgid "cannot recursively add identity column to table that has child tables" msgstr "no se puede agregar una columna de identidad recursivamente a una tabla que tiene tablas hijas" -#: commands/tablecmds.c:7362 +#: commands/tablecmds.c:7593 #, c-format msgid "column must be added to child tables too" msgstr "la columna debe ser agregada a las tablas hijas también" -#: commands/tablecmds.c:7440 +#: commands/tablecmds.c:7671 #, c-format msgid "column \"%s\" of relation \"%s\" already exists, skipping" msgstr "la columna «%s» de la relación «%s» ya existe, omitiendo" -#: commands/tablecmds.c:7447 +#: commands/tablecmds.c:7678 #, c-format msgid "column \"%s\" of relation \"%s\" already exists" msgstr "ya existe la columna «%s» en la relación «%s»" -#: commands/tablecmds.c:7513 commands/tablecmds.c:12652 -#, c-format -msgid "cannot remove constraint from only the partitioned table when partitions exist" -msgstr "no se pueden eliminar restricciones sólo de la tabla particionada cuando existen particiones" - -#: commands/tablecmds.c:7514 commands/tablecmds.c:7828 -#: commands/tablecmds.c:8006 commands/tablecmds.c:8113 -#: commands/tablecmds.c:8230 commands/tablecmds.c:9049 -#: commands/tablecmds.c:12653 -#, c-format -msgid "Do not specify the ONLY keyword." -msgstr "No especifique la opción ONLY." - -#: commands/tablecmds.c:7550 commands/tablecmds.c:7754 -#: commands/tablecmds.c:7896 commands/tablecmds.c:8028 -#: commands/tablecmds.c:8157 commands/tablecmds.c:8251 -#: commands/tablecmds.c:8352 commands/tablecmds.c:8509 -#: commands/tablecmds.c:8662 commands/tablecmds.c:8743 -#: commands/tablecmds.c:8877 commands/tablecmds.c:12806 -#: commands/tablecmds.c:14348 commands/tablecmds.c:16975 +#: 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 #, c-format msgid "cannot alter system column \"%s\"" msgstr "no se puede alterar columna de sistema «%s»" -#: commands/tablecmds.c:7556 commands/tablecmds.c:7902 +#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 +#: commands/tablecmds.c:14143 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "la columna «%s» en la relación «%s» es una columna de identidad" -#: commands/tablecmds.c:7597 -#, c-format -msgid "column \"%s\" is in a primary key" -msgstr "la columna «%s» está en la llave primaria" - -#: commands/tablecmds.c:7602 -#, c-format -msgid "column \"%s\" is in index used as replica identity" -msgstr "la columna «%s» se encuentra en un índice utilizado como identidad de réplica" - -#: commands/tablecmds.c:7625 +#: commands/tablecmds.c:7792 #, c-format msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "columna «%s» está marcada NOT NULL en la tabla padre" -#: commands/tablecmds.c:7825 commands/tablecmds.c:9533 +#: commands/tablecmds.c:8014 commands/tablecmds.c:9988 #, c-format msgid "constraint must be added to child tables too" msgstr "la restricción debe ser agregada a las tablas hijas también" -#: commands/tablecmds.c:7826 +#: commands/tablecmds.c:8015 commands/tablecmds.c:8246 +#: commands/tablecmds.c:8353 commands/tablecmds.c:8470 +#: commands/tablecmds.c:9354 commands/tablecmds.c:12182 #, c-format -msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." -msgstr "La columna «%s» de la relación «%s» no está previamente marcada NOT NULL." +msgid "Do not specify the ONLY keyword." +msgstr "No especifique la opción ONLY." -#: commands/tablecmds.c:7911 +#: commands/tablecmds.c:8152 #, c-format msgid "column \"%s\" of relation \"%s\" is a generated column" msgstr "la columna «%s» en la relación «%s» es una columna generada" -#: commands/tablecmds.c:8005 +#: commands/tablecmds.c:8245 #, c-format msgid "cannot add identity to a column of only the partitioned table" msgstr "no se puede agregar identidad a una columna de sólo una tabla particionada" -#: commands/tablecmds.c:8011 +#: commands/tablecmds.c:8251 #, c-format msgid "cannot add identity to a column of a partition" msgstr "no se puede agregar identidad a una columna de una partición" -#: commands/tablecmds.c:8039 +#: commands/tablecmds.c:8279 #, c-format msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added" msgstr "la columna «%s» en la relación «%s» debe ser declarada NOT NULL antes de que una identidad pueda agregarse" -#: commands/tablecmds.c:8045 +#: commands/tablecmds.c:8285 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "la columna «%s» en la relación «%s» ya es una columna de identidad" -#: commands/tablecmds.c:8051 +#: commands/tablecmds.c:8291 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "la columna «%s» en la relación «%s» ya tiene un valor por omisión" -#: commands/tablecmds.c:8112 +#: commands/tablecmds.c:8352 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "no se puede cambiar la columna de identidad de una tabla particionada" -#: commands/tablecmds.c:8118 +#: commands/tablecmds.c:8358 #, c-format msgid "cannot change identity column of a partition" msgstr "no puede cambiar la columna de identidad de una partición" -#: commands/tablecmds.c:8163 commands/tablecmds.c:8259 +#: commands/tablecmds.c:8403 commands/tablecmds.c:8499 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column" msgstr "la columna «%s» en la relación «%s» no es una columna identidad" -#: commands/tablecmds.c:8229 +#: commands/tablecmds.c:8469 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "no se pueden eliminar la identidad de la columna de sólo una tabla particionada" -#: commands/tablecmds.c:8235 +#: commands/tablecmds.c:8475 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "no se puede eliminar la identidad de la columna de una partición" -#: commands/tablecmds.c:8264 +#: commands/tablecmds.c:8504 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "la columna «%s» de la relación «%s» no es una columna identidad, omitiendo" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8601 commands/tablecmds.c:8811 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "la columna «%s» en la relación «%s» no es una columna generada" -#: commands/tablecmds.c:8456 +#: commands/tablecmds.c:8612 +#, c-format +msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables with check constraints" +msgstr "" + +#: commands/tablecmds.c:8613 commands/tablecmds.c:8631 +#: commands/tablecmds.c:8803 +#, fuzzy, c-format +#| msgid "column \"%s\" of relation \"%s\" is a generated column" +msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." +msgstr "la columna «%s» en la relación «%s» es una columna generada" + +#: commands/tablecmds.c:8630 +#, c-format +msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables that are part of a publication" +msgstr "" + +#: commands/tablecmds.c:8737 #, c-format msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgstr "ALTER TABLE / DROP EXPRESSION se debe aplicar a las tablas hijas también" -#: commands/tablecmds.c:8478 +#: commands/tablecmds.c:8759 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "no se puede eliminar la expresión de generación de una columna heredada" -#: commands/tablecmds.c:8517 -#, c-format -msgid "column \"%s\" of relation \"%s\" is not a stored generated column" -msgstr "la columna «%s» en la relación «%s» no es una columna generada almacenada" +#: commands/tablecmds.c:8802 +#, fuzzy, c-format +#| msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" +msgid "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" +msgstr "ALTER TABLE / DROP EXPRESSION se debe aplicar a las tablas hijas también" -#: commands/tablecmds.c:8522 -#, c-format -msgid "column \"%s\" of relation \"%s\" is not a stored generated column, skipping" +#: commands/tablecmds.c:8816 +#, fuzzy, c-format +#| msgid "column \"%s\" of relation \"%s\" is not a stored generated column, skipping" +msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "la columna «%s» de la relación «%s» no es una columna generada almacenada, omitiendo" -#: commands/tablecmds.c:8600 +#: commands/tablecmds.c:8894 #, c-format msgid "cannot refer to non-index column by number" msgstr "no se puede referir a columnas que no son de índice por número" -#: commands/tablecmds.c:8652 +#: commands/tablecmds.c:8946 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "no existe la columna número %d en la relación «%s»" -#: commands/tablecmds.c:8671 +#: commands/tablecmds.c:8966 +#, fuzzy, c-format +#| msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" +msgid "cannot alter statistics on virtual generated column \"%s\"" +msgstr "no se puede alterar estadísticas en la columna incluida «%s» del índice «%s»" + +#: commands/tablecmds.c:8975 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "no se puede alterar estadísticas en la columna incluida «%s» del índice «%s»" -#: commands/tablecmds.c:8676 +#: commands/tablecmds.c:8980 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "no se puede alterar estadísticas en la columna no-de-expresión «%s» del índice «%s»" -#: commands/tablecmds.c:8678 +#: commands/tablecmds.c:8982 #, c-format msgid "Alter statistics on table column instead." msgstr "Altere las estadísticas en la columna de la tabla en su lugar." -#: commands/tablecmds.c:8924 +#: commands/tablecmds.c:9228 #, c-format msgid "cannot drop column from typed table" msgstr "no se pueden eliminar columnas de una tabla tipada" -#: commands/tablecmds.c:8987 +#: commands/tablecmds.c:9292 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "no existe la columna «%s» en la relación «%s», omitiendo" -#: commands/tablecmds.c:9000 +#: commands/tablecmds.c:9305 #, c-format msgid "cannot drop system column \"%s\"" msgstr "no se puede eliminar la columna de sistema «%s»" -#: commands/tablecmds.c:9010 +#: commands/tablecmds.c:9315 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "no se puede eliminar la columna heredada «%s»" -#: commands/tablecmds.c:9023 +#: commands/tablecmds.c:9328 #, c-format msgid "cannot drop column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "no se puede eliminar la columna «%s» porque es parte de la llave de partición de la relación «%s»" -#: commands/tablecmds.c:9048 +#: commands/tablecmds.c:9353 #, c-format msgid "cannot drop column from only the partitioned table when partitions exist" msgstr "no se pueden eliminar columnas sólo de una tabla particionada cuando existe particiones" -#: commands/tablecmds.c:9253 +#: commands/tablecmds.c:9518 +#, fuzzy, c-format +#| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." +msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" +msgstr "La columna «%s» de la relación «%s» no está previamente marcada NOT NULL." + +#: commands/tablecmds.c:9554 commands/tablecmds.c:9566 +#, fuzzy, c-format +#| msgid "cannot rename system column \"%s\"" +msgid "cannot create primary key on column \"%s\"" +msgstr "no se puede cambiar el nombre a la columna de sistema «%s»" + +#. translator: fourth %s is a constraint characteristic such as NOT VALID +#: commands/tablecmds.c:9556 commands/tablecmds.c:9568 +#, 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 #, c-format msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned tables" msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX no está soportado en tablas particionadas" -#: commands/tablecmds.c:9278 +#: commands/tablecmds.c:9717 #, c-format msgid "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\"" msgstr "ALTER TABLE / ADD CONSTRAINT USING INDEX renombrará el índice «%s» a «%s»" -#: commands/tablecmds.c:9615 +#: commands/tablecmds.c:10075 #, c-format msgid "cannot use ONLY for foreign key on partitioned table \"%s\" referencing relation \"%s\"" msgstr "no se puede usar ONLY para una llave foránea en la tabla particionada «%s» haciendo referencia a la relación «%s»" -#: commands/tablecmds.c:9621 -#, c-format -msgid "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing relation \"%s\"" -msgstr "no se puede agregar una llave foránea NOT VALID a la tabla particionada «%s» haciendo referencia a la relación «%s»" - -#: commands/tablecmds.c:9624 -#, c-format -msgid "This feature is not yet supported on partitioned tables." -msgstr "Esta característica no está aún soportada en tablas particionadas." - -#: commands/tablecmds.c:9631 commands/tablecmds.c:10092 +#: commands/tablecmds.c:10083 commands/tablecmds.c:10710 #, c-format msgid "referenced relation \"%s\" is not a table" msgstr "la relación referida «%s» no es una tabla" -#: commands/tablecmds.c:9654 +#: commands/tablecmds.c:10106 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "las restricciones en tablas permanentes sólo pueden hacer referencia a tablas permanentes" -#: commands/tablecmds.c:9661 +#: commands/tablecmds.c:10113 #, c-format msgid "constraints on unlogged tables may reference only permanent or unlogged tables" msgstr "las restricciones en tablas «unlogged» sólo pueden hacer referencia a tablas permanentes o «unlogged»" -#: commands/tablecmds.c:9667 +#: commands/tablecmds.c:10119 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales" -#: commands/tablecmds.c:9671 +#: commands/tablecmds.c:10123 #, c-format msgid "constraints on temporary tables must involve temporary tables of this session" msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales de esta sesión" -#: commands/tablecmds.c:9735 commands/tablecmds.c:9741 +#: commands/tablecmds.c:10138 commands/tablecmds.c:10166 +#, c-format +msgid "foreign key uses PERIOD on the referenced table but not the referencing table" +msgstr "" + +#: commands/tablecmds.c:10178 +#, c-format +msgid "foreign key uses PERIOD on the referencing table but not the referenced table" +msgstr "" + +#: commands/tablecmds.c:10192 +#, 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 #, c-format msgid "invalid %s action for foreign key constraint containing generated column" msgstr "acción %s no válida para restricción de llave foránea que contiene columnas generadas" -#: commands/tablecmds.c:9757 +#: commands/tablecmds.c:10237 +#, fuzzy, c-format +#| msgid "index creation on system columns is not supported" +msgid "foreign key constraints on virtual generated columns are not supported" +msgstr "la creación de índices en columnas de sistema no está soportada" + +#: commands/tablecmds.c:10251 commands/tablecmds.c:10260 +#, fuzzy, c-format +#| msgid "invalid %s action for foreign key constraint containing generated column" +msgid "unsupported %s action for foreign key constraint using PERIOD" +msgstr "acción %s no válida para restricción de llave foránea que contiene columnas generadas" + +#: commands/tablecmds.c:10275 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "el número de columnas referidas en la llave foránea no coincide con el número de columnas de referencia" -#: commands/tablecmds.c:9864 +#: commands/tablecmds.c:10331 +#, fuzzy, c-format +#| msgid "could not identify an ordering operator for type %s" +msgid "could not identify an overlaps operator for foreign key" +msgstr "no se pudo identificar un operador de ordenamiento para el tipo %s" + +#: commands/tablecmds.c:10332 +#, fuzzy, c-format +#| msgid "could not identify an equality operator for type %s" +msgid "could not identify an equality operator for foreign key" +msgstr "no se pudo identificar un operador de igualdad para el tipo %s" + +#: commands/tablecmds.c:10397 commands/tablecmds.c:10431 #, c-format msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "la restricción de llave foránea «%s» no puede ser implementada" -#: commands/tablecmds.c:9866 -#, c-format -msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." +#: commands/tablecmds.c:10399 +#, fuzzy, c-format +#| msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." +msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table are of incompatible types: %s and %s." msgstr "Las columnas llave «%s» y «%s» son de tipos incompatibles: %s y %s" -#: commands/tablecmds.c:10035 +#: commands/tablecmds.c:10432 +#, 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 #, c-format msgid "column \"%s\" referenced in ON DELETE SET action must be part of foreign key" msgstr "la columna «%s» referenciada en la acción ON DELETE SET debe ser parte de la llave foránea" -#: commands/tablecmds.c:10392 commands/tablecmds.c:10832 -#: parser/parse_utilcmd.c:822 parser/parse_utilcmd.c:945 +#: commands/tablecmds.c:11022 commands/tablecmds.c:11455 +#: parser/parse_utilcmd.c:941 parser/parse_utilcmd.c:1086 #, c-format msgid "foreign key constraints are not supported on foreign tables" msgstr "las restricciones de llave foránea no están soportadas en tablas foráneas" -#: commands/tablecmds.c:10815 +#: commands/tablecmds.c:11438 #, c-format msgid "cannot attach table \"%s\" as a partition because it is referenced by foreign key \"%s\"" msgstr "no se puede adjuntar la tabla foránea «%s» como partición porque es referenciada por la llave foránea «%s»" -#: commands/tablecmds.c:11416 commands/tablecmds.c:11697 -#: commands/tablecmds.c:12609 commands/tablecmds.c:12683 +#: commands/tablecmds.c:11719 +#, fuzzy, c-format +#| msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" +msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" +msgstr "la restricción «%s» está en conflicto con la restricción heredada de la relación «%s»" + +#: commands/tablecmds.c:12181 +#, fuzzy, c-format +#| msgid "constraint must be validated on child tables too" +msgid "constraint must be altered in child tables too" +msgstr "la restricción debe ser validada en las tablas hijas también" + +#: commands/tablecmds.c:12210 commands/tablecmds.c:12907 +#: commands/tablecmds.c:14022 commands/tablecmds.c:14251 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "no existe la restricción «%s» en la relación «%s»" -#: commands/tablecmds.c:11423 +#: commands/tablecmds.c:12217 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "la restricción «%s» de la relación «%s» no es una restricción de llave foránea" -#: commands/tablecmds.c:11461 +#: commands/tablecmds.c:12222 +#, fuzzy, c-format +#| msgid "cannot alter constraint \"%s\" on relation \"%s\"" +msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" +msgstr "no se puede modificar la restricción «%s» en la relación «%s»" + +#: commands/tablecmds.c:12228 +#, fuzzy, c-format +#| msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" +msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" +msgstr "la restricción «%s» de la relación «%s» no es una restricción de llave foránea" + +#: commands/tablecmds.c:12236 +#, fuzzy, c-format +#| msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" +msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" +msgstr "no se puede eliminar la restricción «%s» heredada de la relación «%s»" + +#: commands/tablecmds.c:12276 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: commands/tablecmds.c:11464 +#: commands/tablecmds.c:12279 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "La restricción «%s» deriva de la restricción «%s» de la relación «%s»." -#: commands/tablecmds.c:11466 +#: commands/tablecmds.c:12281 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "En su lugar, puede modificar la restricción de la cual deriva." -#: commands/tablecmds.c:11705 +#: commands/tablecmds.c:12916 +#, fuzzy, c-format +#| msgid "cannot alter constraint \"%s\" on relation \"%s\"" +msgid "cannot validate constraint \"%s\" of relation \"%s\"" +msgstr "no se puede modificar la restricción «%s» en la relación «%s»" + +#: commands/tablecmds.c:12918 +#, fuzzy, c-format +#| msgid "This operation is not supported for composite types." +msgid "This operation is not supported for this type of constraint." +msgstr "Esta operación no está soportada en tipos compuestos." + +#: commands/tablecmds.c:12923 #, c-format -msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint" -msgstr "la restricción «%s» de la relación «%s» no es una llave foránea o restricción «check»" +msgid "cannot validate NOT ENFORCED constraint" +msgstr "" -#: commands/tablecmds.c:11782 +#: commands/tablecmds.c:13132 commands/tablecmds.c:13232 #, c-format msgid "constraint must be validated on child tables too" msgstr "la restricción debe ser validada en las tablas hijas también" -#: commands/tablecmds.c:11869 +#: commands/tablecmds.c:13309 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "no existe la columna «%s» referida en la llave foránea" -#: commands/tablecmds.c:11875 +#: commands/tablecmds.c:13315 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "las columnas de sistema no pueden usarse en llaves foráneas" -#: commands/tablecmds.c:11879 +#: commands/tablecmds.c:13319 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "no se puede tener más de %d columnas en una llave foránea" -#: commands/tablecmds.c:11944 +#: commands/tablecmds.c:13387 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "no se puede usar una llave primaria postergable para la tabla referenciada «%s»" -#: commands/tablecmds.c:11961 +#: commands/tablecmds.c:13404 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "no hay llave primaria para la tabla referida «%s»" -#: commands/tablecmds.c:12029 +#: commands/tablecmds.c:13477 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "la lista de columnas referidas en una llave foránea no debe contener duplicados" -#: commands/tablecmds.c:12121 +#: commands/tablecmds.c:13580 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "no se puede usar una restricción unique postergable para la tabla referenciada «%s»" -#: commands/tablecmds.c:12126 +#: commands/tablecmds.c:13585 #, c-format msgid "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "no hay restricción unique que coincida con las columnas dadas en la tabla referida «%s»" -#: commands/tablecmds.c:12565 +#: commands/tablecmds.c:14026 +#, c-format +msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" +msgstr "no existe la restricción «%s» en la relación «%s», omitiendo" + +#: commands/tablecmds.c:14071 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "no se puede eliminar la restricción «%s» heredada de la relación «%s»" -#: commands/tablecmds.c:12615 +#: commands/tablecmds.c:14123 #, c-format -msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" -msgstr "no existe la restricción «%s» en la relación «%s», omitiendo" +msgid "column \"%s\" is in a primary key" +msgstr "la columna «%s» está en la llave primaria" + +#: commands/tablecmds.c:14131 +#, c-format +msgid "column \"%s\" is in index used as replica identity" +msgstr "la columna «%s» se encuentra en un índice utilizado como identidad de réplica" -#: commands/tablecmds.c:12790 +#: commands/tablecmds.c:14364 #, c-format msgid "cannot alter column type of typed table" msgstr "no se puede cambiar el tipo de una columna de una tabla tipada" -#: commands/tablecmds.c:12816 +#: commands/tablecmds.c:14392 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "no se puede especificar USING al alterar el tipo de una columna generada" -#: commands/tablecmds.c:12817 commands/tablecmds.c:18028 -#: commands/tablecmds.c:18118 commands/trigger.c:656 -#: rewrite/rewriteHandler.c:941 rewrite/rewriteHandler.c:976 +#: 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 "La columna «%s» es una columna generada." -#: commands/tablecmds.c:12827 +#: commands/tablecmds.c:14404 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "no se puede alterar la columna heredada «%s»" -#: commands/tablecmds.c:12836 +#: commands/tablecmds.c:14413 #, c-format msgid "cannot alter column \"%s\" because it is part of the partition key of relation \"%s\"" msgstr "no se puede alterar la columna «%s» porque es parte de la llave de partición de la relación «%s»" -#: commands/tablecmds.c:12886 +#: commands/tablecmds.c:14468 #, c-format msgid "result of USING clause for column \"%s\" cannot be cast automatically to type %s" msgstr "el resultado de la cláusula USING para la columna «%s» no puede ser convertido automáticamente al tipo %s" -#: commands/tablecmds.c:12889 +#: commands/tablecmds.c:14471 #, c-format msgid "You might need to add an explicit cast." msgstr "Puede ser necesario agregar un cast explícito." -#: commands/tablecmds.c:12893 +#: commands/tablecmds.c:14475 #, c-format msgid "column \"%s\" cannot be cast automatically to type %s" msgstr "la columna «%s» no puede convertirse automáticamente al tipo %s" #. translator: USING is SQL, don't translate it -#: commands/tablecmds.c:12897 +#: commands/tablecmds.c:14479 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "Puede ser necesario especificar «USING %s::%s»." -#: commands/tablecmds.c:12996 +#: commands/tablecmds.c:14582 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "no se puede alterar la columna heredada «%s» de la relación «%s»" -#: commands/tablecmds.c:13025 +#: commands/tablecmds.c:14611 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "La expresión USING contiene una referencia a la fila completa (whole-row)." -#: commands/tablecmds.c:13036 +#: commands/tablecmds.c:14622 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "debe cambiar el tipo a la columna heredada «%s» en las tablas hijas también" -#: commands/tablecmds.c:13161 +#: commands/tablecmds.c:14747 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "no se puede alterar el tipo de la columna «%s» dos veces" -#: commands/tablecmds.c:13199 +#: commands/tablecmds.c:14785 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "la expresión de generación para la columna «%s» no puede ser convertido automáticamente al tipo %s" -#: commands/tablecmds.c:13204 +#: commands/tablecmds.c:14790 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "el valor por omisión para la columna «%s» no puede ser convertido automáticamente al tipo %s" -#: commands/tablecmds.c:13508 +#: commands/tablecmds.c:15094 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "no se puede alterar el tipo de una columna usada en una función o procedimiento" -#: commands/tablecmds.c:13509 commands/tablecmds.c:13524 -#: commands/tablecmds.c:13544 commands/tablecmds.c:13563 -#: commands/tablecmds.c:13622 +#: commands/tablecmds.c:15095 commands/tablecmds.c:15110 +#: commands/tablecmds.c:15130 commands/tablecmds.c:15149 +#: commands/tablecmds.c:15208 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s depende de la columna «%s»" -#: commands/tablecmds.c:13523 +#: commands/tablecmds.c:15109 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "no se puede alterar el tipo de una columna usada en una regla o vista" -#: commands/tablecmds.c:13543 +#: commands/tablecmds.c:15129 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "no se puede alterar el tipo de una columna usada en una definición de trigger" -#: commands/tablecmds.c:13562 +#: commands/tablecmds.c:15148 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "no se puede alterar el tipo de una columna usada en una definición de política" -#: commands/tablecmds.c:13593 +#: commands/tablecmds.c:15179 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "no se puede alterar el tipo de una columna usada por una columna generada" -#: commands/tablecmds.c:13594 +#: commands/tablecmds.c:15180 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "La columna «%s» es usada por la columna generada «%s»." -#: commands/tablecmds.c:13621 +#: commands/tablecmds.c:15207 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "no se puede alterar el tipo de una columna usada en una cláusula WHERE de publicación" -#: commands/tablecmds.c:14456 commands/tablecmds.c:14468 +#: commands/tablecmds.c:16081 commands/tablecmds.c:16093 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "no se puede cambiar el dueño del índice «%s»" -#: commands/tablecmds.c:14458 commands/tablecmds.c:14470 +#: commands/tablecmds.c:16083 commands/tablecmds.c:16095 #, c-format msgid "Change the ownership of the index's table instead." msgstr "Cambie el dueño de la tabla del índice en su lugar." -#: commands/tablecmds.c:14484 +#: commands/tablecmds.c:16109 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "no se puede cambiar el dueño de la secuencia «%s»" -#: commands/tablecmds.c:14509 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "no se puede cambiar el dueño de la relación «%s»" -#: commands/tablecmds.c:14976 +#: commands/tablecmds.c:16601 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "no se pueden tener múltiples subórdenes SET TABLESPACE" -#: commands/tablecmds.c:15053 +#: commands/tablecmds.c:16680 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "no se puede definir opciones para la relación «%s»" -#: commands/tablecmds.c:15087 commands/view.c:440 +#: commands/tablecmds.c:16714 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "WITH CHECK OPTION sólo puede usarse en vistas automáticamente actualizables" -#: commands/tablecmds.c:15338 +#: commands/tablecmds.c:16967 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "solamente tablas, índices y vistas materializadas existen en tablespaces" -#: commands/tablecmds.c:15350 +#: commands/tablecmds.c:16979 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "no se puede mover objetos hacia o desde el tablespace pg_global" -#: commands/tablecmds.c:15442 +#: commands/tablecmds.c:17071 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "cancelando porque el lock en la relación «%s.%s» no está disponible" -#: commands/tablecmds.c:15458 +#: commands/tablecmds.c:17087 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "no se encontraron relaciones coincidentes en el tablespace «%s»" -#: commands/tablecmds.c:15580 +#: commands/tablecmds.c:17209 #, c-format msgid "cannot change inheritance of typed table" msgstr "no se puede cambiar la herencia de una tabla tipada" -#: commands/tablecmds.c:15585 commands/tablecmds.c:16085 +#: commands/tablecmds.c:17214 commands/tablecmds.c:17798 #, c-format msgid "cannot change inheritance of a partition" msgstr "no puede cambiar la herencia de una partición" -#: commands/tablecmds.c:15590 +#: commands/tablecmds.c:17219 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "no se puede cambiar la herencia de una tabla particionada" -#: commands/tablecmds.c:15636 +#: commands/tablecmds.c:17266 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "no se puede agregar herencia a tablas temporales de otra sesión" -#: commands/tablecmds.c:15649 +#: commands/tablecmds.c:17279 #, c-format msgid "cannot inherit from a partition" msgstr "no se puede heredar de una partición" -#: commands/tablecmds.c:15671 commands/tablecmds.c:18529 +#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 #, c-format msgid "circular inheritance not allowed" msgstr "la herencia circular no está permitida" -#: commands/tablecmds.c:15672 commands/tablecmds.c:18530 +#: commands/tablecmds.c:17302 commands/tablecmds.c:20313 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "«%s» ya es un hijo de «%s»." -#: commands/tablecmds.c:15685 +#: commands/tablecmds.c:17315 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "el trigger «%s» impide a la tabla «%s» convertirse en hija de herencia" -#: commands/tablecmds.c:15687 +#: commands/tablecmds.c:17317 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "Los triggers ROW con tablas de transición no están permitidos en jerarquías de herencia." -#: commands/tablecmds.c:15876 +#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 #, c-format -msgid "column \"%s\" in child table must be marked NOT NULL" -msgstr "columna «%s» en tabla hija debe marcarse como NOT NULL" +#| msgid "column \"%s\" in child table must be marked NOT NULL" +msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" +msgstr "columna «%s» en tabla hija «%s» debe marcarse como NOT NULL" -#: commands/tablecmds.c:15885 +#: commands/tablecmds.c:17528 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "columna «%s» en tabla hija debe ser una columna generada" -#: commands/tablecmds.c:15889 +#: commands/tablecmds.c:17532 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "columna «%s» en tabla hija no puede ser una columna generada" -#: commands/tablecmds.c:15927 +#: commands/tablecmds.c:17578 #, c-format msgid "child table is missing column \"%s\"" msgstr "tabla hija no tiene la columna «%s»" -#: commands/tablecmds.c:16008 +#: commands/tablecmds.c:17695 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "la tabla hija «%s» tiene una definición diferente para la restricción «check» «%s»" -#: commands/tablecmds.c:16015 +#: commands/tablecmds.c:17704 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción no heredada en la tabla hija «%s»" -#: commands/tablecmds.c:16025 +#: commands/tablecmds.c:17715 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción NOT VALID en la tabla hija «%s»" -#: commands/tablecmds.c:16063 +#: commands/tablecmds.c:17726 +#, c-format +#| msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" +msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" +msgstr "la restricción «%s» está en conflicto con la restricción NOT ENFORCED en la tabla hija «%s»" + +#: commands/tablecmds.c:17775 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "tabla hija no tiene la restricción «%s»" -#: commands/tablecmds.c:16149 +#: commands/tablecmds.c:17862 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "la partición «%s» ya tiene un desprendimiento pendiente en la tabla particionada «%s.%s»" -#: commands/tablecmds.c:16178 commands/tablecmds.c:16224 +#: commands/tablecmds.c:17891 commands/tablecmds.c:17939 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "relación «%s» no es una partición de la relación «%s»" -#: commands/tablecmds.c:16230 +#: commands/tablecmds.c:17945 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "relación «%s» no es un padre de la relación «%s»" -#: commands/tablecmds.c:16457 +#: commands/tablecmds.c:18216 #, c-format msgid "typed tables cannot inherit" msgstr "las tablas tipadas no pueden heredar" -#: commands/tablecmds.c:16487 +#: commands/tablecmds.c:18246 #, c-format msgid "table is missing column \"%s\"" msgstr "la tabla no tiene la columna «%s»" -#: commands/tablecmds.c:16498 +#: commands/tablecmds.c:18257 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "la tabla tiene columna «%s» en la posición en que el tipo requiere «%s»." -#: commands/tablecmds.c:16507 +#: commands/tablecmds.c:18266 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "la tabla «%s» tiene un tipo diferente para la columna «%s»" -#: commands/tablecmds.c:16521 +#: commands/tablecmds.c:18280 #, c-format msgid "table has extra column \"%s\"" msgstr "tabla tiene la columna extra «%s»" -#: commands/tablecmds.c:16573 +#: commands/tablecmds.c:18332 #, c-format msgid "\"%s\" is not a typed table" msgstr "«%s» no es una tabla tipada" -#: commands/tablecmds.c:16747 +#: commands/tablecmds.c:18512 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "no se puede usar el índice no-único «%s» como identidad de réplica" -#: commands/tablecmds.c:16753 +#: commands/tablecmds.c:18518 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "no puede usar el índice no-inmediato «%s» como identidad de réplica" -#: commands/tablecmds.c:16759 +#: commands/tablecmds.c:18524 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "no se puede usar el índice funcional «%s» como identidad de réplica" -#: commands/tablecmds.c:16765 +#: commands/tablecmds.c:18530 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "no se puede usar el índice parcial «%s» como identidad de réplica" -#: commands/tablecmds.c:16782 +#: commands/tablecmds.c:18547 #, c-format msgid "index \"%s\" cannot be used as replica identity because column %d is a system column" msgstr "el índice «%s» no puede usarse como identidad de réplica porque la column %d es una columna de sistema" -#: commands/tablecmds.c:16789 +#: commands/tablecmds.c:18554 #, c-format msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable" msgstr "el índice «%s» no puede usarse como identidad de réplica porque la column «%s» acepta valores nulos" -#: commands/tablecmds.c:17041 +#: commands/tablecmds.c:18803 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "no se puede cambiar el estado «logged» de la tabla «%s» porque es temporal" -#: commands/tablecmds.c:17065 +#: commands/tablecmds.c:18827 #, c-format msgid "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "no se pudo cambiar la tabla «%s» a «unlogged» porque es parte de una publicación" -#: commands/tablecmds.c:17067 +#: commands/tablecmds.c:18829 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "Las tablas «unlogged» no pueden replicarse." -#: commands/tablecmds.c:17112 +#: commands/tablecmds.c:18874 #, c-format msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\"" msgstr "no se pudo cambiar la tabla «%s» a «logged» porque hace referencia a la tabla «unlogged» «%s»" -#: commands/tablecmds.c:17122 +#: commands/tablecmds.c:18884 #, c-format msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\"" msgstr "no se pudo cambiar la tabla «%s» a «unlogged» porque hace referencia a la tabla «logged» «%s»" -#: commands/tablecmds.c:17180 +#: commands/tablecmds.c:18948 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "no se puede mover una secuencia enlazada a una tabla hacia otro esquema" -#: commands/tablecmds.c:17288 +#: commands/tablecmds.c:19056 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "ya existe una relación llamada «%s» en el esquema «%s»" -#: commands/tablecmds.c:17713 +#: commands/tablecmds.c:19481 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "«%s» no es una tabla o vista materializada" -#: commands/tablecmds.c:17866 +#: commands/tablecmds.c:19634 #, c-format msgid "\"%s\" is not a composite type" msgstr "«%s» no es un tipo compuesto" -#: commands/tablecmds.c:17896 +#: commands/tablecmds.c:19664 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "no se puede cambiar el esquema del índice «%s»" -#: commands/tablecmds.c:17898 commands/tablecmds.c:17912 +#: commands/tablecmds.c:19666 commands/tablecmds.c:19680 #, c-format msgid "Change the schema of the table instead." msgstr "Cambie el esquema de la tabla en su lugar." -#: commands/tablecmds.c:17902 +#: commands/tablecmds.c:19670 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "no se puede cambiar el esquema del tipo compuesto «%s»" -#: commands/tablecmds.c:17910 +#: commands/tablecmds.c:19678 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "no se puede cambiar el esquema de la relación TOAST «%s»" -#: commands/tablecmds.c:17942 +#: commands/tablecmds.c:19710 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "no se puede usar la estrategia de particionamiento «list» con más de una columna" -#: commands/tablecmds.c:18008 +#: commands/tablecmds.c:19776 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "la columna «%s» nombrada en llave de particionamiento no existe" -#: commands/tablecmds.c:18016 +#: commands/tablecmds.c:19784 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "no se puede usar la columna de sistema «%s» en llave de particionamiento" -#: commands/tablecmds.c:18027 commands/tablecmds.c:18117 +#: commands/tablecmds.c:19798 commands/tablecmds.c:19891 #, c-format msgid "cannot use generated column in partition key" msgstr "no se puede usar una columna generada en llave de particionamiento" -#: commands/tablecmds.c:18100 +#: commands/tablecmds.c:19871 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "las expresiones en la llave de particionamiento no pueden contener referencias a columnas de sistema" -#: commands/tablecmds.c:18147 +#: commands/tablecmds.c:19921 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "las funciones utilizadas en expresiones de la llave de particionamiento deben estar marcadas IMMUTABLE" -#: commands/tablecmds.c:18156 +#: commands/tablecmds.c:19930 #, c-format msgid "cannot use constant expression as partition key" msgstr "no se pueden usar expresiones constantes como llave de particionamiento" -#: commands/tablecmds.c:18177 +#: commands/tablecmds.c:19951 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "no se pudo determinar qué ordenamiento (collation) usar para la expresión de particionamiento" -#: commands/tablecmds.c:18212 +#: commands/tablecmds.c:19986 #, c-format msgid "You must specify a hash operator class or define a default hash operator class for the data type." msgstr "Debe especificar una clase de operadores hash, o definir una clase de operadores por omisión para hash para el tipo de datos." -#: commands/tablecmds.c:18218 +#: commands/tablecmds.c:19992 #, c-format msgid "You must specify a btree operator class or define a default btree operator class for the data type." msgstr "Debe especificar una clase de operadores btree, o definir una clase de operadores por omisión para btree para el tipo de datos." -#: commands/tablecmds.c:18469 +#: commands/tablecmds.c:20252 #, c-format msgid "\"%s\" is already a partition" msgstr "«%s» ya es una partición" -#: commands/tablecmds.c:18475 +#: commands/tablecmds.c:20258 #, c-format msgid "cannot attach a typed table as partition" msgstr "no puede adjuntar tabla tipada como partición" -#: commands/tablecmds.c:18491 +#: commands/tablecmds.c:20274 #, c-format msgid "cannot attach inheritance child as partition" msgstr "no puede adjuntar hija de herencia como partición" -#: commands/tablecmds.c:18505 +#: commands/tablecmds.c:20288 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "no puede adjuntar ancestro de herencia como partición" -#: commands/tablecmds.c:18539 +#: commands/tablecmds.c:20322 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "no se puede adjuntar una relación temporal como partición de la relación permanente «%s»" -#: commands/tablecmds.c:18547 +#: commands/tablecmds.c:20330 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "no se puede adjuntar una relación permanente como partición de la relación temporal «%s»" -#: commands/tablecmds.c:18555 +#: commands/tablecmds.c:20338 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "no se puede adjuntar como partición de una relación temporal de otra sesión" -#: commands/tablecmds.c:18562 +#: commands/tablecmds.c:20345 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "no se adjuntar una relación temporal de otra sesión como partición" -#: commands/tablecmds.c:18582 +#: commands/tablecmds.c:20365 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "la tabla «%s» siendo adjuntada contiene la columna de identidad «%s»" -#: commands/tablecmds.c:18584 +#: commands/tablecmds.c:20367 #, c-format msgid "The new partition may not contain an identity column." msgstr "La nueva partición no puede contener una columna de identidad." -#: commands/tablecmds.c:18592 +#: commands/tablecmds.c:20375 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "la tabla «%s» contiene la columna «%s» no encontrada en el padre «%s»" -#: commands/tablecmds.c:18595 +#: commands/tablecmds.c:20378 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "La nueva partición sólo puede contener las columnas presentes en el padre." -#: commands/tablecmds.c:18607 +#: commands/tablecmds.c:20390 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "el trigger «%s» impide a la tabla «%s» devenir partición" -#: commands/tablecmds.c:18609 +#: commands/tablecmds.c:20392 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "Los triggers ROW con tablas de transición no están soportados en particiones." -#: commands/tablecmds.c:18785 +#: commands/tablecmds.c:20574 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "no se puede adjuntar la tabla foránea «%s» como partición de la tabla particionada «%s»" -#: commands/tablecmds.c:18788 +#: commands/tablecmds.c:20577 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "La tabla particionada «%s» contiene índices únicos." -#: commands/tablecmds.c:19110 +#: commands/tablecmds.c:20900 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "no se puede desprender particiones concurrentemente cuando existe una partición por omisión" -#: commands/tablecmds.c:19219 +#: commands/tablecmds.c:21009 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "la tabla particionada «%s» fue eliminada concurrentemente" -#: commands/tablecmds.c:19225 +#: commands/tablecmds.c:21015 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "la partición «%s» fue eliminada concurrentemente" -#: commands/tablecmds.c:19839 commands/tablecmds.c:19859 -#: commands/tablecmds.c:19880 commands/tablecmds.c:19899 -#: commands/tablecmds.c:19941 +#: commands/tablecmds.c:21646 commands/tablecmds.c:21666 +#: commands/tablecmds.c:21687 commands/tablecmds.c:21706 +#: commands/tablecmds.c:21755 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "no se puede adjuntar el índice «%s» como partición del índice «%s»" -#: commands/tablecmds.c:19842 +#: commands/tablecmds.c:21649 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "El índice «%s» ya está adjunto a otro índice." -#: commands/tablecmds.c:19862 +#: commands/tablecmds.c:21669 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "El índice «%s» no es un índice en una partición de la tabla «%s»." -#: commands/tablecmds.c:19883 +#: commands/tablecmds.c:21690 #, c-format msgid "The index definitions do not match." msgstr "Las definiciones de los índices no coinciden." -#: commands/tablecmds.c:19902 +#: commands/tablecmds.c:21709 #, c-format msgid "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint exists for index \"%s\"." msgstr "El índice «%s» pertenece a una restricción en la tabla «%s», pero no existe una restricción para el índice «%s»." -#: commands/tablecmds.c:19944 +#: commands/tablecmds.c:21758 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "Otro índice ya está adjunto para la partición «%s»." -#: commands/tablecmds.c:20180 +#: commands/tablecmds.c:21881 +#, c-format +#| msgid "invalid attribute in procedure definition" +msgid "invalid primary key definition" +msgstr "definición de llave primaria no válida" + +#: commands/tablecmds.c:21882 +#, c-format +#| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." +msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." +msgstr "La columna «%s» de la relación «%s» no está marcada NOT NULL." + +#: commands/tablecmds.c:22017 #, c-format msgid "column data type %s does not support compression" msgstr "el tipo de dato de columna %s no soporta compresión" -#: commands/tablecmds.c:20187 +#: commands/tablecmds.c:22024 #, c-format msgid "invalid compression method \"%s\"" msgstr "método de compresión «%s» no válido" -#: commands/tablecmds.c:20213 +#: commands/tablecmds.c:22050 #, c-format msgid "invalid storage type \"%s\"" msgstr "tipo de almacenamiento no válido «%s»" -#: commands/tablecmds.c:20223 +#: commands/tablecmds.c:22060 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "el tipo de datos %s de la columna sólo puede tener almacenamiento PLAIN" @@ -12085,281 +12605,287 @@ msgstr "algunos directorios para el tablespace %u no pudieron eliminarse" msgid "You can remove the directories manually if necessary." msgstr "Puede eliminar los directorios manualmente, si es necesario." -#: 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» es una tabla" -#: 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 "Las tablas no pueden tener “triggers” INSTEAD OF." -#: commands/trigger.c:259 +#: commands/trigger.c:262 #, c-format msgid "\"%s\" is a partitioned table" msgstr "«%s» es una tabla particionada" -#: commands/trigger.c:261 +#: commands/trigger.c:264 #, c-format msgid "ROW triggers with transition tables are not supported on partitioned tables." msgstr "Los triggers ROW con tablas de transición no están soportados en tablas particionadas." -#: 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» es una vista" -#: commands/trigger.c:275 +#: commands/trigger.c:278 #, c-format msgid "Views cannot have row-level BEFORE or AFTER triggers." msgstr "Las vistas no pueden tener “triggers” BEFORE o AFTER a nivel de fila." -#: commands/trigger.c:282 +#: commands/trigger.c:285 #, c-format msgid "Views cannot have TRUNCATE triggers." msgstr "Las vistas no pueden tener “triggers” 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» es una tabla foránea" -#: commands/trigger.c:292 +#: commands/trigger.c:295 #, c-format msgid "Foreign tables cannot have INSTEAD OF triggers." msgstr "Las tablas foráneas no pueden tener “triggers” INSTEAD OF." -#: commands/trigger.c:304 +#: commands/trigger.c:307 #, c-format msgid "Foreign tables cannot have constraint triggers." msgstr "Las tablas foráneas no pueden tener “triggers” de restricción." -#: 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 "la relación «%s» no puede tener triggers." -#: commands/trigger.c:380 +#: commands/trigger.c:383 #, c-format msgid "TRUNCATE FOR EACH ROW triggers are not supported" msgstr "los “triggers” TRUNCATE FOR EACH ROW no están soportados" -#: commands/trigger.c:388 +#: commands/trigger.c:391 #, c-format msgid "INSTEAD OF triggers must be FOR EACH ROW" msgstr "los “triggers” INSTEAD OF deben ser FOR EACH ROW" -#: commands/trigger.c:392 +#: commands/trigger.c:395 #, c-format msgid "INSTEAD OF triggers cannot have WHEN conditions" msgstr "los “triggers” INSTEAD OF no pueden tener condiciones WHEN" -#: commands/trigger.c:396 +#: commands/trigger.c:399 #, c-format msgid "INSTEAD OF triggers cannot have column lists" msgstr "los “triggers” INSTEAD OF no pueden tener listas de columnas" -#: commands/trigger.c:425 +#: commands/trigger.c:428 #, c-format msgid "ROW variable naming in the REFERENCING clause is not supported" msgstr "dar nombre a una variable ROW en la cláusula REFERENCING no está soportado" -#: commands/trigger.c:426 +#: commands/trigger.c:429 #, c-format msgid "Use OLD TABLE or NEW TABLE for naming transition tables." msgstr "utilice OLD TABLE o NEW TABLE para nombrar tablas de transición." -#: commands/trigger.c:439 +#: commands/trigger.c:442 #, c-format msgid "Triggers on foreign tables cannot have transition tables." msgstr "Las tablas foráneas no pueden tener tablas de transición." -#: commands/trigger.c:446 +#: commands/trigger.c:449 #, c-format msgid "Triggers on views cannot have transition tables." msgstr "Las triggers en vistas no pueden tener tablas de transición." -#: commands/trigger.c:462 +#: commands/trigger.c:465 #, c-format msgid "ROW triggers with transition tables are not supported on partitions" msgstr "los triggers ROW con tablas de transición no están soportados en particiones" -#: commands/trigger.c:466 +#: commands/trigger.c:469 #, c-format msgid "ROW triggers with transition tables are not supported on inheritance children" msgstr "los triggers ROW con tablas de transición no están soportados con hijas de herencia" -#: commands/trigger.c:472 +#: commands/trigger.c:475 #, c-format msgid "transition table name can only be specified for an AFTER trigger" msgstr "el nombre de la tabla de transición solo se puede especificar para un “trigger” AFTER" -#: commands/trigger.c:477 +#: commands/trigger.c:480 #, c-format msgid "TRUNCATE triggers with transition tables are not supported" msgstr "los triggers TRUNCATE con tablas de transición no están soportados" -#: commands/trigger.c:494 +#: commands/trigger.c:497 #, c-format msgid "transition tables cannot be specified for triggers with more than one event" msgstr "las tablas de transición no pueden especificarse para triggers con más de un evento" -#: commands/trigger.c:505 +#: commands/trigger.c:508 #, c-format msgid "transition tables cannot be specified for triggers with column lists" msgstr "las tablas de transición no pueden especificarse para triggers con lista de columnas" -#: 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 sólo se puede especificar para un “trigger” INSERT o UPDATE" -#: commands/trigger.c:527 +#: commands/trigger.c:530 #, c-format msgid "NEW TABLE cannot be specified multiple times" msgstr "NEW TABLE no se puede especificar varias veces" -#: 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 sólo se puede especificar para un “trigger” DELETE o UPDATE" -#: commands/trigger.c:542 +#: commands/trigger.c:545 #, c-format msgid "OLD TABLE cannot be specified multiple times" msgstr "OLD TABLE no se puede especificar varias veces" -#: commands/trigger.c:552 +#: commands/trigger.c:555 #, c-format msgid "OLD TABLE name and NEW TABLE name cannot be the same" msgstr "el nombre de OLD TABLE y el nombre de NEW TABLE no pueden ser iguales" -#: 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 "la condición WHEN de un “trigger” por sentencias no pueden referirse a los valores de las columnas" -#: commands/trigger.c:621 +#: commands/trigger.c:624 #, c-format msgid "INSERT trigger's WHEN condition cannot reference OLD values" msgstr "la condición WHEN de un “trigger” en INSERT no puede referirse a valores OLD" -#: commands/trigger.c:634 +#: commands/trigger.c:637 #, c-format msgid "DELETE trigger's WHEN condition cannot reference NEW values" msgstr "la condición WHEN de un “trigger” en DELETE no puede referirse a valores NEW" -#: commands/trigger.c:639 +#: commands/trigger.c:642 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns" msgstr "la condición WHEN de un “trigger” BEFORE no puede referirse a columnas de sistema de 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 "la condición WHEN del trigger BEFORE no puede hacer referencia a columnas NEW generadas" -#: commands/trigger.c:648 +#: commands/trigger.c:652 #, c-format msgid "A whole-row reference is used and the table contains generated columns." msgstr "Se utiliza una referencia de la tupla completa, y la tabla contiene columnas generadas" -#: 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 "ya existe un trigger «%s» para la relación «%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 "trigger «%s» para la relación «%s» es interno o derivado" -#: commands/trigger.c:795 +#: commands/trigger.c:799 #, c-format msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger" msgstr "“trigger” «%s» para la relación «%s» es un “trigger” de restricción" -#: 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 "no existe el trigger «%s» para la tabla «%s»" -#: commands/trigger.c:1522 +#: commands/trigger.c:1529 #, c-format msgid "cannot rename trigger \"%s\" on table \"%s\"" msgstr "no se puede cambiar el nombre del trigger «%s» en tabla «%s»" -#: commands/trigger.c:1524 +#: commands/trigger.c:1531 #, c-format msgid "Rename the trigger on the partitioned table \"%s\" instead." msgstr "Cambie el nombre del trigger en la tabla particionada «%s» en su lugar." -#: commands/trigger.c:1624 +#: commands/trigger.c:1631 #, c-format msgid "renamed trigger \"%s\" on relation \"%s\"" msgstr "se renombró el trigger «%s» en la relación «%s»" -#: commands/trigger.c:1770 +#: commands/trigger.c:1777 #, c-format msgid "permission denied: \"%s\" is a system trigger" msgstr "permiso denegado: «%s» es un trigger de sistema" -#: commands/trigger.c:2379 +#: commands/trigger.c:2388 #, c-format msgid "trigger function %u returned null value" msgstr "la función de trigger %u ha retornado un valor 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 "un trigger BEFORE STATEMENT no puede retornar un valor" -#: 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 "mover registros a otra partición durante un trigger BEFORE FOR EACH ROW no está soportado" -#: 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 "Antes de ejecutar el trigger «%s», la fila iba a estar en la partición «%s.%s»." -#: commands/trigger.c:3341 executor/nodeModifyTable.c:1541 -#: executor/nodeModifyTable.c:1615 executor/nodeModifyTable.c:2377 -#: executor/nodeModifyTable.c:2468 executor/nodeModifyTable.c:3132 -#: executor/nodeModifyTable.c:3302 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 +#, c-format +#| msgid "cannot delete from foreign table \"%s\"" +msgid "cannot collect transition tuples from child foreign tables" +msgstr "no se puede recolectar tuplas de transición desde tablas foráneas hijas" + +#: 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 #, 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." -#: commands/trigger.c:3382 executor/nodeLockRows.c:228 -#: executor/nodeLockRows.c:237 executor/nodeModifyTable.c:314 -#: executor/nodeModifyTable.c:1557 executor/nodeModifyTable.c:2394 -#: executor/nodeModifyTable.c:2618 +#: 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 "no se pudo serializar el acceso debido a un update concurrente" -#: commands/trigger.c:3390 executor/nodeModifyTable.c:1647 -#: executor/nodeModifyTable.c:2485 executor/nodeModifyTable.c:2642 -#: executor/nodeModifyTable.c:3150 +#: 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 "no se pudo serializar el acceso debido a un delete concurrente" -#: commands/trigger.c:4599 +#: commands/trigger.c:4687 #, 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:5780 +#: commands/trigger.c:5868 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "la restricción «%s» no es postergable" -#: commands/trigger.c:5803 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "no existe la restricción «%s»" @@ -12469,7 +12995,7 @@ msgstr "debe ser superusuario para crear un tipo base" msgid "Create the type as a shell type, then create its I/O functions, then do a full CREATE TYPE." msgstr "Cree el tipo como un tipo inconcluso, luego cree sus funciones de I/O, luego haga un CREATE TYPE completo." -#: 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 "el atributo de tipo «%s» no es reconocido" @@ -12489,7 +13015,7 @@ msgstr "el tipo de elemento de array no puede ser %s" msgid "alignment \"%s\" not recognized" msgstr "el alineamiento «%s» no es reconocido" -#: commands/typecmds.c:454 commands/typecmds.c:4354 +#: commands/typecmds.c:454 commands/typecmds.c:4353 #, c-format msgid "storage \"%s\" not recognized" msgstr "el almacenamiento «%s» no es reconocido" @@ -12519,288 +13045,311 @@ msgstr "no se puede especificar tipo de elemento sin una función de subindexaci msgid "\"%s\" is not a valid base type for a domain" msgstr "«%s» no es un tipo de dato base válido para un dominio" -#: commands/typecmds.c:883 +#: commands/typecmds.c:885 #, c-format msgid "multiple default expressions" msgstr "múltiples expresiones default" -#: 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 "las restricciones NULL/NOT NULL no coinciden" -#: commands/typecmds.c:971 +#: commands/typecmds.c:952 +#, c-format +msgid "redundant NOT NULL constraint definition" +msgstr "" + +#: commands/typecmds.c:958 +#, c-format +#| msgid "check constraints for domains cannot be marked NO INHERIT" +msgid "not-null constraints for domains cannot be marked NO INHERIT" +msgstr "las restricciones «not-null» en dominios no pueden ser marcadas NO INHERIT" + +#: commands/typecmds.c:985 #, c-format msgid "check constraints for domains cannot be marked NO INHERIT" msgstr "las restricciones «check» en dominios no pueden ser marcadas NO INHERIT" -#: commands/typecmds.c:980 commands/typecmds.c:2940 +#: commands/typecmds.c:996 #, c-format msgid "unique constraints not possible for domains" msgstr "no se pueden poner restricciones de unicidad a un dominio" -#: commands/typecmds.c:986 commands/typecmds.c:2946 +#: commands/typecmds.c:1003 #, c-format msgid "primary key constraints not possible for domains" msgstr "no se pueden poner restricciones de llave primaria a un dominio" -#: commands/typecmds.c:992 commands/typecmds.c:2952 +#: commands/typecmds.c:1010 #, c-format msgid "exclusion constraints not possible for domains" msgstr "las restricciones de exclusión no son posibles para los dominios" -#: commands/typecmds.c:998 commands/typecmds.c:2958 +#: commands/typecmds.c:1017 #, c-format msgid "foreign key constraints not possible for domains" msgstr "no se pueden poner restricciones de llave foránea a un dominio" -#: commands/typecmds.c:1007 commands/typecmds.c:2967 +#: commands/typecmds.c:1027 #, c-format msgid "specifying constraint deferrability not supported for domains" msgstr "no se puede especificar la postergabilidad de las restricciones a un dominio" -#: commands/typecmds.c:1327 utils/cache/typcache.c:2570 +#: commands/typecmds.c:1035 +#, c-format +#| msgid "specifying constraint deferrability not supported for domains" +msgid "specifying GENERATED not supported for domains" +msgstr "no se puede especificar GENERATED para dominios" + +#: commands/typecmds.c:1043 +#, fuzzy, c-format +#| msgid "specifying constraint deferrability not supported for domains" +msgid "specifying constraint enforceability not supported for domains" +msgstr "no se puede especificar la postergabilidad de las restricciones a un dominio" + +#: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format msgid "%s is not an enum" msgstr "%s no es un enum" -#: commands/typecmds.c:1468 +#: commands/typecmds.c:1502 #, c-format msgid "type attribute \"subtype\" is required" msgstr "el atributo de tipo «subtype» es obligatorio" -#: commands/typecmds.c:1473 +#: commands/typecmds.c:1507 #, c-format msgid "range subtype cannot be %s" msgstr "el subtipo de rango no puede ser %s" -#: commands/typecmds.c:1492 +#: commands/typecmds.c:1526 #, c-format msgid "range collation specified but subtype does not support collation" msgstr "se especificó un ordenamiento (collation) al rango, pero el subtipo no soporta ordenamiento" -#: commands/typecmds.c:1502 +#: commands/typecmds.c:1536 #, c-format msgid "cannot specify a canonical function without a pre-created shell type" msgstr "no se puede especificar una función canónica sin antes crear un tipo inconcluso" -#: 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 "Cree el tipo como un tipo inconcluso, luego cree su función de canonicalización, luego haga un CREATE TYPE completo." -#: commands/typecmds.c:1975 +#: commands/typecmds.c:2013 #, c-format msgid "type input function %s has multiple matches" msgstr "la función de entrada %s del tipo tiene múltiples coincidencias" -#: commands/typecmds.c:1993 +#: commands/typecmds.c:2031 #, c-format msgid "type input function %s must return type %s" msgstr "la función de entrada %s del tipo debe retornar %s" -#: commands/typecmds.c:2009 +#: commands/typecmds.c:2047 #, c-format msgid "type input function %s should not be volatile" msgstr "la función de entrada %s no debe ser volatile" -#: commands/typecmds.c:2037 +#: commands/typecmds.c:2075 #, c-format msgid "type output function %s must return type %s" msgstr "la función de salida %s del tipo debe retornar %s" -#: commands/typecmds.c:2044 +#: commands/typecmds.c:2082 #, c-format msgid "type output function %s should not be volatile" msgstr "la función de salida %s no debe ser volatile" -#: commands/typecmds.c:2073 +#: commands/typecmds.c:2111 #, c-format msgid "type receive function %s has multiple matches" msgstr "la función de recepción %s del tipo tiene múltiples coincidencias" -#: commands/typecmds.c:2091 +#: commands/typecmds.c:2129 #, c-format msgid "type receive function %s must return type %s" msgstr "la función de recepción %s del tipo debe retornar %s" -#: commands/typecmds.c:2098 +#: commands/typecmds.c:2136 #, c-format msgid "type receive function %s should not be volatile" msgstr "la función «receive» %s del tipo no debe ser volatile" -#: commands/typecmds.c:2126 +#: commands/typecmds.c:2164 #, c-format msgid "type send function %s must return type %s" msgstr "la función «send» %s del tipo debe retornar %s" -#: commands/typecmds.c:2133 +#: commands/typecmds.c:2171 #, c-format msgid "type send function %s should not be volatile" msgstr "la función «send» %s no debe ser volatile" -#: commands/typecmds.c:2160 +#: commands/typecmds.c:2198 #, c-format msgid "typmod_in function %s must return type %s" msgstr "la función typmod_in %s debe retornar tipo %s" -#: commands/typecmds.c:2167 +#: commands/typecmds.c:2205 #, c-format msgid "type modifier input function %s should not be volatile" msgstr "la función de modificadores de tipo %s no debe ser volatile" -#: commands/typecmds.c:2194 +#: commands/typecmds.c:2232 #, c-format msgid "typmod_out function %s must return type %s" msgstr "la función typmod_out %s debe retornar tipo %s" -#: commands/typecmds.c:2201 +#: commands/typecmds.c:2239 #, c-format msgid "type modifier output function %s should not be volatile" msgstr "la función de salida de modificadores de tipo %s no debe ser volatile" -#: commands/typecmds.c:2228 +#: commands/typecmds.c:2266 #, c-format msgid "type analyze function %s must return type %s" msgstr "la función de análisis %s del tipo debe retornar %s" -#: commands/typecmds.c:2257 +#: commands/typecmds.c:2295 #, c-format msgid "type subscripting function %s must return type %s" msgstr "la función de subindexación %s del tipo debe retornar %s" -#: commands/typecmds.c:2267 +#: commands/typecmds.c:2305 #, c-format msgid "user-defined types cannot use subscripting function %s" msgstr "los tipos definidos por el usuario no pueden usar la función de subindexación %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 "Debe especificar una clase de operadores para el tipo de rango, o definir una clase de operadores por omisión para el subtipo." -#: commands/typecmds.c:2344 +#: commands/typecmds.c:2382 #, c-format msgid "range canonical function %s must return range type" msgstr "la función canónica %s del rango debe retornar tipo de rango" -#: commands/typecmds.c:2350 +#: commands/typecmds.c:2388 #, c-format msgid "range canonical function %s must be immutable" msgstr "la función canónica %s del rango debe ser inmutable" -#: commands/typecmds.c:2386 +#: commands/typecmds.c:2424 #, c-format msgid "range subtype diff function %s must return type %s" msgstr "la función «diff» de subtipo, %s, debe retornar tipo %s" -#: commands/typecmds.c:2393 +#: commands/typecmds.c:2431 #, c-format msgid "range subtype diff function %s must be immutable" msgstr "la función «diff» de subtipo, %s, debe ser inmutable" -#: commands/typecmds.c:2420 +#: commands/typecmds.c:2458 #, c-format msgid "pg_type array OID value not set when in binary upgrade mode" msgstr "el valor de OID de pg_type no se definió en modo de actualización binaria" -#: commands/typecmds.c:2453 +#: commands/typecmds.c:2491 #, c-format msgid "pg_type multirange OID value not set when in binary upgrade mode" msgstr "el valor de OID de multirango de pg_type no se definió en modo de actualización binaria" -#: 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 "el valor de OID de array de multirango de pg_type no se definió en modo de actualización binaria" -#: 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 "no existe la restricción «%s» en el dominio «%s»" -#: commands/typecmds.c:2872 +#: commands/typecmds.c:2910 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping" msgstr "no existe la restricción «%s» en el dominio «%s», omitiendo" -#: commands/typecmds.c:3100 +#: commands/typecmds.c:3095 #, c-format msgid "constraint \"%s\" of domain \"%s\" is not a check constraint" msgstr "la restricción «%s» en el dominio «%s» no es una restricción «check»" -#: commands/typecmds.c:3180 +#: commands/typecmds.c:3175 #, c-format msgid "column \"%s\" of table \"%s\" contains null values" msgstr "la columna «%s» de la tabla «%s» contiene valores 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 "la columna «%s» de la relación «%s» contiene valores que violan la nueva restricción" -#: 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 no es un dominio" -#: 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 "el dominio «%2$s» ya contiene una restricción llamada «%1$s»" -#: commands/typecmds.c:3583 +#: commands/typecmds.c:3578 #, c-format msgid "cannot use table references in domain check constraint" msgstr "no se pueden usar referencias a tablas en restricción «check» para un dominio" -#: 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 es el tipo de registro de una tabla" -#: 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 "no se puede alterar el tipo de array %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 "Puede alterar el tipo %s, lo cual alterará el tipo de array también." -#: commands/typecmds.c:3892 +#: commands/typecmds.c:3891 #, c-format msgid "cannot alter multirange type %s" msgstr "no se puede alterar el tipo multirango %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 "Puede alterar el tipo %s, lo cual alterará el tipo de multirango también." -#: commands/typecmds.c:4202 +#: commands/typecmds.c:4201 #, c-format msgid "type \"%s\" already exists in schema \"%s\"" msgstr "ya existe un tipo llamado «%s» en el esquema «%s»" -#: commands/typecmds.c:4382 +#: commands/typecmds.c:4381 #, c-format msgid "cannot change type's storage to PLAIN" msgstr "no se puede cambiar el almacenamiento del tipo a PLAIN" -#: commands/typecmds.c:4475 +#: commands/typecmds.c:4474 #, c-format msgid "type attribute \"%s\" cannot be changed" msgstr "el atributo de tipo «%s» no puede ser cambiado" -#: commands/typecmds.c:4493 +#: commands/typecmds.c:4492 #, c-format msgid "must be superuser to alter a type" msgstr "debe ser superusuario para alterar un tipo" -#: 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» no es un tipo base" @@ -12828,7 +13377,7 @@ msgid "Only roles with the %s attribute may create roles with the %s attribute." msgstr "Sólo los roles con el atributo %s pueden crear roles con el atributo %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 "el nombre de rol «%s» está reservado" @@ -12888,7 +13437,6 @@ msgstr "Para cambiar la password de otro rol, el usuario actual debe tener el at #: commands/user.c:825 #, c-format -#| msgid "Only roles with the %s option on role \"%s\" may add members." msgid "Only roles with the %s option on role \"%s\" may add or drop members." msgstr "Sólo los roles con la opción %s en el rol «%s» pueden agregar miembros." @@ -12922,11 +13470,11 @@ msgstr "Sólo los roles con el atributo %s y la opción %s en los roles de desti msgid "cannot use special role specifier in DROP ROLE" msgstr "no se puede usar un especificador especial de rol en DROP ROLE" -#: commands/user.c:1135 commands/user.c:1357 commands/variable.c:851 -#: commands/variable.c:854 commands/variable.c:971 commands/variable.c:974 -#: 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:799 +#: 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 "no existe el rol «%s»" @@ -12991,7 +13539,7 @@ msgstr "Sólo los roles con el atributo %s y la opción %s en el rol «%s» pued msgid "MD5 password cleared because of role rename" msgstr "la contraseña MD5 fue borrada debido al cambio de nombre del rol" -#: commands/user.c:1518 gram.y:1294 +#: commands/user.c:1518 gram.y:1285 #, c-format msgid "unrecognized role option \"%s\"" msgstr "opción de rol «%s» no reconocida" @@ -13031,207 +13579,214 @@ msgstr "Sólo los roles con privilegios del rol «%s» pueden reasignar objetos msgid "Only roles with privileges of role \"%s\" may reassign objects to it." msgstr "Sólo los roles con privilegios del rol «%s» pueden reasignar objetos a él." -#: commands/user.c:1733 +#: commands/user.c:1734 #, c-format msgid "role \"%s\" cannot be a member of any role" msgstr "el rol «%s» no puede ser miembro de ningún rol" -#: commands/user.c:1746 +#: commands/user.c:1747 #, c-format msgid "role \"%s\" is a member of role \"%s\"" msgstr "el rol «%s» es un miembro del rol «%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 "la opción %s no puede ser otorgada de vuelta a quien la otorgó" -#: 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 "el rol «%s» ya recibió membresía en el rol «%s» por parte del rol «%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 "al rol «%s» no se le ha otorgado membresía en el rol «%s» por parte del rol «%s»" -#: commands/user.c:2124 +#: commands/user.c:2126 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "el rol «%s» no puede tener miembros explícitos" -#: 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 "se ha denegado el permiso para otorgar el rol «%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ólo los roles con el atributo %s pueden otorgar roles con el atributo %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 "se ha denegado el permiso para revocar el rol «%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ólo los roles con el atributo %s pueden revocar roles con el atributo %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ólo los roles con la opción %s en el rol «%s» pueden otorgar este rol." -#: 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ólo los roles con la opción %s en el rol «%s» pueden revocar este rol." -#: 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 "se ha denegado el permiso para otorgar privilegio de rol «%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ólo los roles con privilegios del rol «%s» pueden otorgar privilegios como este rol." -#: commands/user.c:2258 +#: commands/user.c:2260 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "El otorgador debe tener la opción %s en el rol «%s»." -#: commands/user.c:2266 +#: commands/user.c:2268 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "se ha denegado el permiso a revocar permisos otorgados por el rol «%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ólo los roles con privilegios del rol «%s» pueden revocar privilegios otorgados por este rol." -#: 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 "existen privilegios dependientes" -#: 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 "Use CASCADE para revocarlos también." -#: commands/vacuum.c:134 +#: commands/vacuum.c:147 #, c-format -msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" -msgstr "«vacuum_buffer_usage_limit» debe ser 0 o estar entre %d kB y %d kB" +#| msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" +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:209 +#: commands/vacuum.c:223 #, 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:219 +#: commands/vacuum.c:233 #, c-format msgid "unrecognized ANALYZE option \"%s\"" msgstr "opción de ANALYZE «%s» no reconocida" -#: commands/vacuum.c:259 +#: commands/vacuum.c:273 #, 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:271 +#: commands/vacuum.c:285 #, 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:292 +#: commands/vacuum.c:306 #, c-format msgid "unrecognized VACUUM option \"%s\"" msgstr "opción de VACUUM «%s» no reconocida" -#: commands/vacuum.c:318 +#: commands/vacuum.c:332 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL no puede ser ejecutado en paralelo" -#: commands/vacuum.c:329 +#: commands/vacuum.c:343 #, 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:343 +#: commands/vacuum.c:357 #, 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:355 +#: commands/vacuum.c:369 #, 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:362 +#: commands/vacuum.c:376 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "se requiere especificar PROCESS_TOAST al hacer VACUUM FULL" -#: commands/vacuum.c:371 +#: commands/vacuum.c:385 #, 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:380 +#: commands/vacuum.c:394 #, 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:515 +#: commands/vacuum.c:534 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s no puede ejecutarse desde VACUUM o ANALYZE" -#: commands/vacuum.c:730 +#: commands/vacuum.c:756 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "permiso denegado a hacer vacuum a «%s», ignorando" -#: commands/vacuum.c:743 +#: commands/vacuum.c:769 #, 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:821 commands/vacuum.c:918 +#: commands/vacuum.c:847 commands/vacuum.c:948 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "omitiendo el vacuum de «%s»: el “lock” no está disponible" -#: commands/vacuum.c:826 +#: commands/vacuum.c:852 #, 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:842 commands/vacuum.c:923 +#: commands/vacuum.c:868 commands/vacuum.c:953 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "omitiendo analyze de «%s»: el “lock” no está disponible" -#: commands/vacuum.c:847 +#: commands/vacuum.c:873 #, 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:1139 +#: commands/vacuum.c:989 +#, c-format +#| msgid "partitioned table \"%s\" was removed concurrently" +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 #, 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:1140 commands/vacuum.c:1145 +#: commands/vacuum.c:1181 commands/vacuum.c:1186 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -13240,37 +13795,38 @@ 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:1144 +#: commands/vacuum.c:1185 #, 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:1900 +#: commands/vacuum.c:1947 #, 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:1901 +#: commands/vacuum.c:1948 #, 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:2080 +#: commands/vacuum.c:2134 #, 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:2512 +#: commands/vacuum.c:2650 #, c-format -msgid "scanned index \"%s\" to remove %lld row versions" -msgstr "se recorrió el índice «%s» para eliminar %lld versiones de filas" +#| msgid "scanned index \"%s\" to remove %lld row versions" +msgid "scanned index \"%s\" to remove % row versions" +msgstr "se recorrió el índice «%s» para eliminar % versiones de filas" -#: commands/vacuum.c:2531 +#: commands/vacuum.c:2669 #, 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:2535 +#: commands/vacuum.c:2673 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -13281,14 +13837,14 @@ msgstr "" "%u páginas de índice fueron recién eliminadas.\n" "%u páginas de índice están actualmente eliminadas, de las cuales %u son actualmente reusables." -#: commands/vacuumparallel.c:707 +#: 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)" msgstr[0] "se lanzó %d proceso asistente para «vacuum» de índices (planeados: %d)" msgstr[1] "se lanzaron %d procesos asistentes para «vacuum» índices (planeados: %d)" -#: commands/vacuumparallel.c:713 +#: 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)" @@ -13297,8 +13853,9 @@ msgstr[1] "se lanzaron %d procesos asistentes para «cleanup» de índices (plan #: commands/variable.c:185 #, c-format -msgid "Conflicting \"datestyle\" specifications." -msgstr "Especificaciones contradictorias de «datestyle»." +#| msgid "Conflicting \"datestyle\" specifications." +msgid "Conflicting \"DateStyle\" specifications." +msgstr "Especificaciones contradictorias de «DateStyle»." #: commands/variable.c:307 #, c-format @@ -13310,12 +13867,12 @@ msgstr "No se pueden especificar meses en el intervalo de huso horario." msgid "Cannot specify days in time zone interval." msgstr "No se pueden especificar días en el intervalo de huso horario." -#: 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 "el huso horario «%s» parece usar segundos intercalares (bisiestos)" -#: 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 no soporta segundos intercalares." @@ -13325,107 +13882,98 @@ msgstr "PostgreSQL no soporta segundos intercalares." msgid "UTC timezone offset is out of range." msgstr "El desplazamiento de huso horario UTC está fuera de rango." -#: commands/variable.c:552 +#: commands/variable.c:554 #, c-format msgid "cannot set transaction read-write mode inside a read-only transaction" msgstr "no se puede poner en modo de escritura dentro de una transacción de sólo lectura" -#: commands/variable.c:559 +#: commands/variable.c:561 #, c-format msgid "transaction read-write mode must be set before any query" msgstr "el modo de escritura debe ser activado antes de cualquier consulta" -#: commands/variable.c:566 +#: commands/variable.c:568 #, c-format msgid "cannot set transaction read-write mode during recovery" msgstr "no se puede poner en modo de escritura durante la recuperación" -#: 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 debe ser llamado antes de cualquier consulta" -#: 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 no debe ser llamado en una subtransacción" -#: commands/variable.c:606 storage/lmgr/predicate.c:1685 +#: commands/variable.c:610 storage/lmgr/predicate.c:1695 #, c-format msgid "cannot use serializable mode in a hot standby" msgstr "no se puede utilizar el modo serializable en un hot standby" -#: commands/variable.c:607 +#: commands/variable.c:611 #, c-format msgid "You can use REPEATABLE READ instead." msgstr "Puede utilizar REPEATABLE READ en su lugar." -#: 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 no puede ser llamado en una subtransacción" -#: 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 debe ser llamado antes de cualquier consulta" -#: commands/variable.c:713 +#: commands/variable.c:715 +#, c-format +#| msgid "cannot change \"client_encoding\" during a parallel operation" +msgid "Cannot change \"client_encoding\" during a parallel operation." +msgstr "No se puede cambiar «client_encoding» durante una operación paralela." + +#: commands/variable.c:743 #, c-format msgid "Conversion between %s and %s is not supported." msgstr "La conversión entre %s y %s no está soportada." -#: commands/variable.c:720 +#: commands/variable.c:750 #, c-format msgid "Cannot change \"client_encoding\" now." msgstr "No se puede cambiar «client_encoding» ahora." -#: commands/variable.c:781 -#, c-format -msgid "cannot change \"client_encoding\" during a parallel operation" -msgstr "no se puede cambiar «client_encoding» durante una operación paralela" - -#: commands/variable.c:876 +#: commands/variable.c:889 #, c-format msgid "permission will be denied to set session authorization \"%s\"" msgstr "se denegará el permiso para definir autorización de sesión «%s»" -#: commands/variable.c:881 +#: commands/variable.c:894 #, c-format msgid "permission denied to set session authorization \"%s\"" msgstr "se ha denegado el permiso para definir autorización de sesión «%s»" -#: commands/variable.c:991 +#: commands/variable.c:1003 #, c-format msgid "permission will be denied to set role \"%s\"" msgstr "se denegará el permiso para definir el rol «%s»" -#: commands/variable.c:996 +#: commands/variable.c:1008 #, c-format msgid "permission denied to set role \"%s\"" msgstr "se ha denegado el permiso para definir el rol «%s»" -#: commands/variable.c:1200 +#: commands/variable.c:1226 #, c-format msgid "Bonjour is not supported by this build" msgstr "Bonjour no está soportado en este servidor" -#: commands/variable.c:1228 -#, c-format -msgid "\"effective_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." -msgstr "«effective_io_concurrency» debe ser 0 en plataformas que no tienen posix_fadvise()." - -#: commands/variable.c:1241 -#, c-format -msgid "\"maintenance_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." -msgstr "«maintenance_io_concurrency» debe ser 0 en plataformas que no tienen posix_fadvise()." - #: commands/variable.c:1254 #, c-format msgid "SSL is not supported by this build" msgstr "SSL no está soportado en este servidor" -#: commands/view.c:79 +#: commands/view.c:78 #, c-format msgid "could not determine which collation to use for view column \"%s\"" msgstr "no se pudo determinar el ordenamiento (collation) a usar para la columna «%s» de vista" @@ -13511,57 +14059,57 @@ msgstr "el cursor «%s» no está posicionado en una fila" msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\"" msgstr "el cursor «%s» no es un recorrido simplemente actualizable de la tabla «%s»" -#: executor/execCurrent.c:280 executor/execExprInterp.c:2555 +#: 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 "el tipo del parámetro %d (%s) no coincide aquel con que fue preparado el plan (%s)" -#: executor/execCurrent.c:292 executor/execExprInterp.c:2567 +#: executor/execCurrent.c:292 executor/execExprInterp.c:3105 #, c-format msgid "no value found for parameter %d" msgstr "no se encontró un valor para parámetro %d" -#: executor/execExpr.c:642 executor/execExpr.c:649 executor/execExpr.c:655 -#: executor/execExprInterp.c:4852 executor/execExprInterp.c:4869 -#: executor/execExprInterp.c:4968 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 "el tipo de registro de la tabla no coincide con el tipo de registro de la consulta" -#: 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 "La consulta tiene demasiadas columnas." -#: 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 "La consulta entrega un valor para una columna eliminada en la posición %d." -#: executor/execExpr.c:656 executor/execExprInterp.c:4870 -#: 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 "La tabla tiene tipo %s en posición ordinal %d, pero la consulta esperaba %s." -#: executor/execExpr.c:1104 parser/parse_agg.c:838 +#: executor/execExpr.c:1157 parser/parse_agg.c:869 #, c-format msgid "window function calls cannot be nested" msgstr "no se pueden anidar llamadas a funciones de ventana deslizante" -#: executor/execExpr.c:1649 +#: executor/execExpr.c:1689 #, c-format msgid "target type is not an array" msgstr "el tipo de destino no es un array" -#: executor/execExpr.c:1989 +#: executor/execExpr.c:2033 #, c-format msgid "ROW() column has type %s instead of type %s" msgstr "la columna de ROW() es de tipo %s en lugar de ser de tipo %s" -#: executor/execExpr.c:2653 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" @@ -13569,379 +14117,382 @@ msgid_plural "cannot pass more than %d arguments to a function" msgstr[0] "no se pueden pasar más de %d argumento a una función" msgstr[1] "no se pueden pasar más de %d argumentos a una función" -#: executor/execExpr.c:2680 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 "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo" -#: executor/execExpr.c:3086 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 "no se puede poner subíndices al tipo %s porque no soporta subíndices" -#: executor/execExpr.c:3214 executor/execExpr.c:3236 +#: executor/execExpr.c:3390 executor/execExpr.c:3412 #, c-format msgid "type %s does not support subscripted assignment" msgstr "el tipo %s no soporta asignación subindexada" -#: executor/execExprInterp.c:2019 +#: executor/execExprInterp.c:2415 #, c-format msgid "attribute %d of type %s has been dropped" msgstr "El atributo %d de tipo %s ha sido eliminado" -#: executor/execExprInterp.c:2025 +#: executor/execExprInterp.c:2421 #, c-format msgid "attribute %d of type %s has wrong type" msgstr "el atributo %d del tipo %s tiene tipo erróneo" -#: executor/execExprInterp.c:2027 executor/execExprInterp.c:3226 -#: executor/execExprInterp.c:3272 +#: executor/execExprInterp.c:2423 executor/execExprInterp.c:3782 +#: executor/execExprInterp.c:3828 #, c-format msgid "Table has type %s, but query expects %s." msgstr "La tabla tiene tipo %s, pero la consulta esperaba %s." -#: executor/execExprInterp.c:2107 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 "el tipo %s no es compuesto" -#: executor/execExprInterp.c:2710 +#: executor/execExprInterp.c:3266 #, c-format msgid "WHERE CURRENT OF is not supported for this table type" msgstr "WHERE CURRENT OF no está soportado para este tipo de tabla" -#: executor/execExprInterp.c:2923 +#: executor/execExprInterp.c:3479 #, c-format msgid "cannot merge incompatible arrays" msgstr "no se puede mezclar arrays incompatibles" -#: executor/execExprInterp.c:2924 +#: executor/execExprInterp.c:3480 #, c-format msgid "Array with element type %s cannot be included in ARRAY construct with element type %s." msgstr "El array con tipo de elemento %s no puede ser incluido en una sentencia ARRAY con tipo de elemento %s." -#: executor/execExprInterp.c:2945 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 "el número de dimensiones del array (%d) excede el máximo permitido (%d)" -#: executor/execExprInterp.c:2965 executor/execExprInterp.c:3000 +#: executor/execExprInterp.c:3521 executor/execExprInterp.c:3556 #, c-format msgid "multidimensional arrays must have array expressions with matching dimensions" msgstr "los arrays multidimensionales deben tener expresiones de arrays con dimensiones coincidentes" -#: executor/execExprInterp.c:2977 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 "el tamaño del array excede el máximo permitido (%d)" -#: executor/execExprInterp.c:3225 executor/execExprInterp.c:3271 +#: executor/execExprInterp.c:3781 executor/execExprInterp.c:3827 #, c-format msgid "attribute %d has wrong type" msgstr "el atributo %d tiene tipo erróneo" -#: executor/execExprInterp.c:3857 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 "el dominio %s no permite valores null" -#: executor/execExprInterp.c:3872 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 "el valor para el dominio %s viola la restricción «check» «%s»" -#: executor/execExprInterp.c:4447 +#: executor/execExprInterp.c:5003 #, c-format msgid "no SQL/JSON item found for specified path of column \"%s\"" msgstr "ningún ítem SQL/JSON fue encontrado para la ruta especificada de la columna «%s»" -#: executor/execExprInterp.c:4452 +#: executor/execExprInterp.c:5008 #, c-format msgid "no SQL/JSON item found for specified path" msgstr "ningún ítem SQL/JSON fue encontrado para la ruta especificada" #. translator: first %s is a SQL/JSON clause (e.g. ON ERROR) -#: executor/execExprInterp.c:4652 executor/execExprInterp.c:4660 +#: executor/execExprInterp.c:5208 executor/execExprInterp.c:5216 #, c-format msgid "could not coerce %s expression (%s) to the RETURNING type" msgstr "no se pudo convertir la expresión %s (%s) al tipo RETURNING" -#: executor/execExprInterp.c:4853 +#: 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." msgstr[0] "La fila de la tabla contiene %d atributo, pero la consulta esperaba %d." msgstr[1] "La fila de la tabla contiene %d atributos, pero la consulta esperaba %d." -#: executor/execExprInterp.c:4969 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 "Discordancia de almacenamiento físico en atributo eliminado en la posición %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 no soporta las restricciones únicas o de exclusión postergables como árbitros" -#: executor/execIndexing.c:870 +#: executor/execIndexing.c:911 #, c-format msgid "could not create exclusion constraint \"%s\"" msgstr "no se pudo crear la restricción de exclusión «%s»" -#: executor/execIndexing.c:873 +#: executor/execIndexing.c:914 #, c-format msgid "Key %s conflicts with key %s." msgstr "La llave %s está en conflicto con la llave %s." -#: executor/execIndexing.c:875 +#: executor/execIndexing.c:916 #, c-format msgid "Key conflicts exist." msgstr "Existe un conflicto de llave." -#: executor/execIndexing.c:881 +#: executor/execIndexing.c:922 #, c-format msgid "conflicting key value violates exclusion constraint \"%s\"" msgstr "llave en conflicto viola la restricción de exclusión «%s»" -#: executor/execIndexing.c:884 +#: executor/execIndexing.c:925 #, c-format msgid "Key %s conflicts with existing key %s." msgstr "La llave %s está en conflicto con la llave existente %s." -#: executor/execIndexing.c:886 +#: executor/execIndexing.c:927 #, c-format msgid "Key conflicts with existing key." msgstr "La llave está en conflicto con una llave existente." -#: executor/execMain.c:1039 +#: executor/execIndexing.c:1172 +#, c-format +msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" +msgstr "" + +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "no se puede cambiar la secuencia «%s»" -#: executor/execMain.c:1045 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "no se puede cambiar la relación TOAST «%s»" -#: executor/execMain.c:1064 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "no se puede cambiar la vista materializada «%s»" -#: executor/execMain.c:1076 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "no se puede insertar en la tabla foránea «%s»" -#: executor/execMain.c:1082 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "la tabla foránea «%s» no permite inserciones" -#: executor/execMain.c:1089 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "no se puede actualizar la tabla foránea «%s»" -#: executor/execMain.c:1095 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "la tabla foránea «%s» no permite actualizaciones" -#: executor/execMain.c:1102 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "no se puede eliminar desde la tabla foránea «%s»" -#: executor/execMain.c:1108 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "la tabla foránea «%s» no permite eliminaciones" -#: executor/execMain.c:1119 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "no se puede cambiar la relación «%s»" -#: executor/execMain.c:1146 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "no se puede bloquear registros de la secuencia «%s»" -#: executor/execMain.c:1153 +#: executor/execMain.c:1199 #, 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:1160 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "no se puede bloquear registros en la vista «%s»" -#: executor/execMain.c:1168 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "no se puede bloquear registros en la vista materializada «%s»" -#: executor/execMain.c:1177 executor/execMain.c:2689 +#: executor/execMain.c:1223 executor/execMain.c:2855 #: 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:1183 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "no se puede bloquear registros en la tabla «%s»" -#: executor/execMain.c:1901 +#: executor/execMain.c:1952 #, 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:1903 executor/execMain.c:1987 executor/execMain.c:2038 -#: executor/execMain.c:2148 +#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 +#: executor/execMain.c:2312 #, c-format msgid "Failing row contains %s." msgstr "La fila que falla contiene %s." -#: executor/execMain.c:1984 -#, 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 de no nulo" - -#: executor/execMain.c:2036 +#: executor/execMain.c:2064 #, 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:2146 +#: executor/execMain.c:2201 +#, 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 de no nulo" + +#: executor/execMain.c:2310 #, 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:2156 +#: executor/execMain.c:2320 #, 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:2161 +#: executor/execMain.c:2325 #, 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:2169 +#: executor/execMain.c:2333 #, 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:2174 +#: executor/execMain.c:2338 #, 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:2181 +#: executor/execMain.c:2345 #, 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:2186 +#: executor/execMain.c:2350 #, 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»" -#: executor/execPartition.c:327 +#: executor/execPartition.c:330 #, c-format msgid "no partition of relation \"%s\" found for row" msgstr "no se encontró una partición de «%s» para el registro" -#: executor/execPartition.c:330 +#: executor/execPartition.c:333 #, c-format msgid "Partition key of the failing row contains %s." msgstr "La llave de particionamiento de la fila que falla contiene %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 "el registro a ser bloqueado ya fue movido a otra partición debido a un update concurrente, reintentando" -#: executor/execReplication.c:276 executor/execReplication.c:460 +#: executor/execReplication.c:151 #, c-format msgid "concurrent update, retrying" msgstr "actualización simultánea, reintentando" -#: executor/execReplication.c:282 executor/execReplication.c:466 +#: executor/execReplication.c:158 #, c-format msgid "concurrent delete, retrying" msgstr "eliminacón concurrente, reintentando" -#: 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 "no se pudo identificar un operador de igualdad para el tipo %s" - -#: executor/execReplication.c:687 executor/execReplication.c:693 +#: executor/execReplication.c:809 executor/execReplication.c:815 +#: executor/execReplication.c:821 #, c-format msgid "cannot update table \"%s\"" msgstr "no se puede actualizar la tabla «%s»" -#: executor/execReplication.c:689 executor/execReplication.c:701 +#: 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 "La columna usada en la expresión WHERE de la publicación no es parte de la identidad de replicación." -#: executor/execReplication.c:695 executor/execReplication.c:707 +#: executor/execReplication.c:817 executor/execReplication.c:835 #, c-format msgid "Column list used by the publication does not cover the replica identity." msgstr "La lista de columnas usada por la publicación no incluye la identidad de replicación." -#: executor/execReplication.c:699 executor/execReplication.c:705 +#: 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 "no se puede eliminar desde la tabla «%s»" -#: executor/execReplication.c:725 +#: executor/execReplication.c:859 #, c-format msgid "cannot update table \"%s\" because it does not have a replica identity and publishes updates" msgstr "no se puede actualizar la tabla «%s» porque no tiene identidad de replicación y publica updates" -#: executor/execReplication.c:727 +#: executor/execReplication.c:861 #, c-format msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE." msgstr "Para habilitar la actualización de la tabla, configure REPLICA IDENTITY utilizando ALTER TABLE." -#: executor/execReplication.c:731 +#: executor/execReplication.c:865 #, c-format msgid "cannot delete from table \"%s\" because it does not have a replica identity and publishes deletes" msgstr "no se puede eliminar de la tabla «%s» porque no tiene una identidad de replicación y publica deletes" -#: executor/execReplication.c:733 +#: executor/execReplication.c:867 #, c-format msgid "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE." msgstr "para habilitar la eliminación en la tabla, configure REPLICA IDENTITY utilizando ALTER TABLE." -#: executor/execReplication.c:749 +#: executor/execReplication.c:883 #, c-format msgid "cannot use relation \"%s.%s\" as logical replication target" msgstr "no se puede usar la relación «%s.%s» como destino de replicación lógica" @@ -13988,117 +14539,118 @@ msgstr[1] "Fila retornada contiene %d atributos, pero la consulta esperaba %d." msgid "Returned type %s at ordinal position %d, but query expects %s." msgstr "Tipo retornado %s en posición ordinal %d, pero la consulta esperaba %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 "no se puede obtener una columna de sistema en este contexto" -#: 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 "no se tiene información de transacción para este tipo de tupla" -#: 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 "no se tiene una tupla de almacenamiento en este contexto" -#: executor/execUtils.c:713 +#: executor/execUtils.c:758 #, c-format msgid "materialized view \"%s\" has not been populated" msgstr "la vista materializada «%s» no ha sido poblada" -#: executor/execUtils.c:715 -#, c-format -msgid "Use the REFRESH MATERIALIZED VIEW command." -msgstr "Use la orden REFRESH MATERIALIZED VIEW." - -#: executor/functions.c:217 +#: executor/functions.c:292 #, c-format msgid "could not determine actual type of argument declared %s" msgstr "no se pudo determinar el tipo de argumento declarado %s" -#: executor/functions.c:513 +#: executor/functions.c:737 #, c-format msgid "cannot COPY to/from client in an SQL function" msgstr "no se puede ejecutar COPY desde/a un cliente en una función SQL" #. 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 "%s no está permitido en una función SQL" #. translator: %s is a SQL statement name -#: executor/functions.c:527 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 no está permitido en una función no-«volatile»" -#: 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 "función SQL «%s» en la sentencia %d" +msgid "return type mismatch in function declared to return %s" +msgstr "el tipo de retorno de función declarada para retornar %s no concuerda" -#: executor/functions.c:1478 +#: executor/functions.c:1187 executor/functions.c:2226 #, c-format -msgid "SQL function \"%s\" during startup" -msgstr "función SQL «%s» durante el inicio" +msgid "Function's final statement must be SELECT or INSERT/UPDATE/DELETE/MERGE RETURNING." +msgstr "La sentencia final de la función debe ser un SELECT o 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 "no está permitido invocar procedimientos con argumentos de salida en funciones SQL" +msgid "cached plan must not change result type" +msgstr "el plan almacenado no debe cambiar el tipo de resultado" -#: 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 "el tipo de retorno de función declarada para retornar %s no concuerda" +msgid "SQL function \"%s\" during startup" +msgstr "función SQL «%s» durante el inicio" -#: 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 "La sentencia final de la función debe ser un SELECT o INSERT/UPDATE/DELETE/MERGE RETURNING." +msgid "SQL function \"%s\" statement %d" +msgstr "función SQL «%s» en la sentencia %d" + +#: executor/functions.c:2075 +#, c-format +msgid "calling procedures with output arguments is not supported in SQL functions" +msgstr "no está permitido invocar procedimientos con argumentos de salida en funciones SQL" -#: executor/functions.c:1738 +#: executor/functions.c:2264 #, c-format msgid "Final statement must return exactly one column." msgstr "La sentencia final debe retornar exactamente una columna." -#: executor/functions.c:1752 +#: executor/functions.c:2278 #, c-format msgid "Actual return type is %s." msgstr "El verdadero tipo de retorno es %s." -#: executor/functions.c:1847 +#: executor/functions.c:2368 #, c-format msgid "Final statement returns too many columns." msgstr "La sentencia final retorna demasiadas columnas." -#: executor/functions.c:1880 +#: executor/functions.c:2401 #, c-format msgid "Final statement returns %s instead of %s at column %d." msgstr "La sentencia final retorna %s en lugar de %s en la columna %d." -#: executor/functions.c:1894 +#: executor/functions.c:2415 #, c-format msgid "Final statement returns too few columns." msgstr "La sentencia final retorna muy pocas columnas." -#: executor/functions.c:1922 +#: executor/functions.c:2443 #, c-format msgid "return type %s is not supported for SQL functions" msgstr "el tipo de retorno %s no es soportado en funciones SQL" -#: executor/nodeAgg.c:3936 executor/nodeWindowAgg.c:2975 +#: executor/nodeAgg.c:4039 executor/nodeWindowAgg.c:3041 #, c-format 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:3966 parser/parse_agg.c:680 parser/parse_agg.c:708 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 #, c-format msgid "aggregate function calls cannot be nested" msgstr "no se pueden anidar llamadas a funciones de agregación" @@ -14108,12 +14660,12 @@ msgstr "no se pueden anidar llamadas a funciones de agregación" msgid "custom scan \"%s\" does not support MarkPos" msgstr "el scan personalizado «%s» no soporta 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 "no se puede rebobinar el archivo temporal del hash-join" -#: executor/nodeIndexonlyscan.c:239 +#: executor/nodeIndexonlyscan.c:240 #, c-format msgid "lossy distance functions are not supported in index-only scans" msgstr "no se permiten funciones de ventana deslizante en predicados de índice" @@ -14128,74 +14680,80 @@ msgstr "OFFSET no debe ser negativo" msgid "LIMIT must not be negative" msgstr "LIMIT no debe ser negativo" -#: executor/nodeMergejoin.c:1579 +#: executor/nodeMergejoin.c:1574 #, c-format msgid "RIGHT JOIN is only supported with merge-joinable join conditions" msgstr "RIGHT JOIN sólo está soportado con condiciones que se pueden usar con merge 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 sólo está soportado con condiciones que se pueden usar con merge join" -#: executor/nodeModifyTable.c:240 +#: executor/nodeModifyTable.c:248 +#, c-format +#| msgid "Query provides a value for a dropped column at ordinal position %d." +msgid "Query provides a value for a generated column at ordinal position %d." +msgstr "La consulta entrega un valor para una columna generada en la posición %d." + +#: executor/nodeModifyTable.c:268 #, c-format msgid "Query has too few columns." msgstr "La consulta tiene muy pocas columnas." -#: 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 "el registro a ser eliminado ya fue modificado por una operación disparada por la orden actual" -#: executor/nodeModifyTable.c:1769 +#: executor/nodeModifyTable.c:1959 #, c-format msgid "invalid ON UPDATE specification" msgstr "especificación ON UPDATE no válida" -#: 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 "La tupla de resultado aparecería en una partición diferente que la tupla original." -#: 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 "no se puede mover una tupla entre particiones cuando un ancestro no-raíz de la partición de origen es referenciada directamente en una llave foránea" -#: 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 "Una llave foránea apunta al ancestro «%s» pero no al ancestro raíz «%s»." -#: executor/nodeModifyTable.c:2230 +#: executor/nodeModifyTable.c:2421 #, c-format 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:2596 executor/nodeModifyTable.c:3138 -#: executor/nodeModifyTable.c:3308 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 +#: executor/nodeModifyTable.c:3508 #, c-format msgid "%s command cannot affect row a second time" msgstr "la orden %s no puede afectar una fila por segunda vez" -#: executor/nodeModifyTable.c:2598 +#: executor/nodeModifyTable.c:2790 #, c-format 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:3131 executor/nodeModifyTable.c:3301 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 #, 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:3140 executor/nodeModifyTable.c:3310 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 #, 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:3209 +#: executor/nodeModifyTable.c:3408 #, 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" @@ -14210,8 +14768,8 @@ msgstr "el parámetro TABLESAMPLE no puede ser null" msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "el parámetro TABLESAMPLE REPEATABLE no puede ser 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 "una subconsulta utilizada como expresión retornó más de un registro" @@ -14246,27 +14804,27 @@ msgstr "null no está permitido en la columna «%s»" msgid "moving-aggregate transition function must not return null" msgstr "la función de transición de moving-aggregate no debe retornar valor nulo" -#: executor/nodeWindowAgg.c:2083 +#: executor/nodeWindowAgg.c:2106 #, c-format msgid "frame starting offset must not be null" msgstr "la posición inicial del marco no debe ser null" -#: executor/nodeWindowAgg.c:2096 +#: executor/nodeWindowAgg.c:2120 #, c-format msgid "frame starting offset must not be negative" msgstr "la posición inicial del marco no debe ser negativa" -#: executor/nodeWindowAgg.c:2108 +#: executor/nodeWindowAgg.c:2133 #, c-format msgid "frame ending offset must not be null" msgstr "la posición final del marco no debe ser null" -#: executor/nodeWindowAgg.c:2121 +#: executor/nodeWindowAgg.c:2147 #, c-format msgid "frame ending offset must not be negative" msgstr "la posición final del marco no debe ser negativa" -#: executor/nodeWindowAgg.c:2891 +#: executor/nodeWindowAgg.c:2957 #, c-format msgid "aggregate function %s does not support use as a window function" msgstr "la función de agregación %s no permite ser usada como función ventana" @@ -14317,7 +14875,7 @@ msgstr "no se puede abrir consulta %s como cursor" msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported" msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE no está soportado" -#: executor/spi.c:1719 parser/analyze.c:2928 +#: executor/spi.c:1719 parser/analyze.c:3076 #, c-format msgid "Scrollable cursors must be READ ONLY." msgstr "Los cursores declarados SCROLL deben ser READ ONLY." @@ -14335,8 +14893,9 @@ msgstr "la consulta «%s» no retorna tuplas" #: executor/spi.c:2987 #, c-format -msgid "SQL expression \"%s\"" -msgstr "expresión SQL «%s»" +#| msgid "SQL expression \"%s\"" +msgid "PL/pgSQL expression \"%s\"" +msgstr "expresión PL/pgSQL «%s»" #: executor/spi.c:2992 #, c-format @@ -14353,28 +14912,28 @@ msgstr "sentencia SQL: «%s»" msgid "could not send tuple to shared-memory queue" msgstr "no se pudo enviar la tupla a la cola en memoria compartida" -#: foreign/foreign.c:225 +#: foreign/foreign.c:226 #, c-format 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:336 optimizer/plan/createplan.c:7153 -#: optimizer/util/plancat.c:540 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 +#: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" msgstr "el acceso a la tabla foránea no de sistema está restringido" -#: foreign/foreign.c:660 +#: foreign/foreign.c:661 #, c-format msgid "invalid option \"%s\"" msgstr "el nombre de opción «%s» no es válido" -#: foreign/foreign.c:662 +#: foreign/foreign.c:663 #, c-format msgid "Perhaps you meant the option \"%s\"." msgstr "Quizás se refiere a la opción «%s»." -#: foreign/foreign.c:664 +#: foreign/foreign.c:665 #, c-format msgid "There are no valid options in this context." msgstr "No hay opciones válidas en este contexto." @@ -14385,712 +14944,914 @@ msgstr "No hay opciones válidas en este contexto." msgid "Failed on DSA request of size %zu." msgstr "Falla en petición DSA de tamaño %zu." -#: libpq/auth-sasl.c:97 +#: libpq/auth-oauth.c:109 libpq/auth-scram.c:267 #, c-format -msgid "expected SASL response, got message type %d" -msgstr "se esperaba una respuesta SASL, se obtuvo mensaje de tipo %d" +msgid "client selected an invalid SASL authentication mechanism" +msgstr "cliente eligió un mecanismo de autentificación SASL no válido" -#: libpq/auth-scram.c:263 +#: 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 "client selected an invalid SASL authentication mechanism" +#| msgid "malformed SCRAM message" +msgid "malformed OAUTHBEARER message" +msgstr "mensaje OAUTHBEARER mal formado" + +#: libpq/auth-oauth.c:170 libpq/auth-scram.c:383 +#, c-format +msgid "The message is empty." +msgstr "El mensaje está vacío." + +#: libpq/auth-oauth.c:175 libpq/auth-scram.c:388 +#, c-format +msgid "Message length does not match input length." +msgstr "El largo del mensaje no coincide con el largo de entrada." + +#: libpq/auth-oauth.c:193 +#, c-format +msgid "Client did not send a kvsep response." +msgstr "" + +#: libpq/auth-oauth.c:221 +#, c-format +#| msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data." +msgid "The server does not support channel binding for OAuth, but the client message includes channel binding data." +msgstr "El servidor no soporta enlazado de canal (channel binding) para OAuth, pero el mensaje del cliente incluye datos de enlazado de canal." + +#: 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 "Se esperaba una coma, se encontró el carácter «%s»." + +#: libpq/auth-oauth.c:240 libpq/auth-scram.c:1065 +#, c-format +msgid "Unexpected channel-binding flag \"%s\"." +msgstr "Indicador de enlazado de canal «%s» inesperado." + +#: libpq/auth-oauth.c:250 libpq/auth-scram.c:1075 +#, c-format +msgid "client uses authorization identity, but it is not supported" +msgstr "el cliente usa identidad de autorización, pero no está soportada" + +#: libpq/auth-oauth.c:255 libpq/auth-scram.c:1080 +#, c-format +msgid "Unexpected attribute \"%s\" in client-first-message." +msgstr "Atributo inesperado \"%s\" en client-first-message." + +#: libpq/auth-oauth.c:264 +#, fuzzy, c-format +#| msgid "Comma expected, but found character \"%s\"." +msgid "Key-value separator expected, but found character \"%s\"." +msgstr "Se esperaba una coma, se encontró el carácter «%s»." + +#: libpq/auth-oauth.c:273 +#, fuzzy, c-format +#| msgid "File \"%s\" does not contain valid data." +msgid "Message does not contain an auth value." +msgstr "El archivo «%s» no contiene datos válidos." + +#: 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 +#, fuzzy, c-format +#| msgid "enum %s contains no values" +msgid "Message contains an invalid value." +msgstr "el enum %s no contiene valores" + +#: 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 +#, fuzzy, c-format +#| msgid "unit \"%s\" not recognized for type %s" +msgid "OAuth is not properly configured for this user" +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 "" + +#: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 +#, fuzzy, c-format +#| msgid "malformed JSON array" +msgid "malformed OAuth bearer token" +msgstr "array JSON mal formado" + +#: libpq/auth-oauth.c:586 +#, fuzzy, c-format +#| msgid "client selected an invalid SASL authentication mechanism" +msgid "Client response indicated a non-Bearer authentication scheme." msgstr "cliente eligió un mecanismo de autentificación SASL no válido" -#: libpq/auth-scram.c:287 libpq/auth-scram.c:536 libpq/auth-scram.c:547 +#: libpq/auth-oauth.c:603 +#, fuzzy, c-format +#| msgid "Query buffer is empty." +msgid "Bearer token is empty." +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 "" + +#: libpq/auth-oauth.c:656 +#, c-format +msgid "validation of OAuth token requested without a validator loaded" +msgstr "" + +#: libpq/auth-oauth.c:665 +#, c-format +msgid "internal error in OAuth validator module" +msgstr "" + +#: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 +#, fuzzy, c-format +#| msgid "Peer authentication failed for user \"%s\"" +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 +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 +#, fuzzy, c-format +#| msgid "archive modules have to define the symbol %s" +msgid "%s module \"%s\" must define the symbol %s" +msgstr "los módulos de archivado tienen que definir el símbolo %s" + +#: libpq/auth-oauth.c:773 +#, fuzzy, c-format +#| msgid "incompatible library \"%s\": magic block mismatch" +msgid "%s module \"%s\": magic number mismatch" +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 "" + +#: libpq/auth-oauth.c:784 +#, fuzzy, c-format +#| msgid "archive modules must register an archive callback" +msgid "%s module \"%s\" must provide a %s callback" +msgstr "los módulos de archivado deben registrar un callback de archivado" + +#: libpq/auth-oauth.c:833 +#, fuzzy, c-format +#| msgid "authentication option \"%s\" is only valid for authentication methods %s" +msgid "oauth_validator_libraries must be set for authentication method %s" +msgstr "la opción de autentificación «%s» sólo es válida para los métodos de autentificación %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 "línea %d del archivo de configuración «%s»" + +#: libpq/auth-oauth.c:867 +#, fuzzy, c-format +#| msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set" +msgid "authentication method \"oauth\" requires argument \"validator\" to be set when oauth_validator_libraries contains multiple options" +msgstr "el método de autentificación «ldap» requiere que los argumento «ldapbasedn», «ldapprefix» o «ldapsuffix» estén definidos" + +#: libpq/auth-oauth.c:882 +#, fuzzy, c-format +#| msgid "role \"%s\" is not permitted to log in" +msgid "validator \"%s\" is not permitted by %s" +msgstr "al rol «%s» no se le permite conectarse" + +#: libpq/auth-sasl.c:89 +#, c-format +msgid "expected SASL response, got message type %d" +msgstr "se esperaba una respuesta SASL, se obtuvo mensaje de tipo %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 "el secreto SCRAM para el usuario «%s» no es válido" -#: libpq/auth-scram.c:298 +#: libpq/auth-scram.c:302 #, c-format msgid "User \"%s\" does not have a valid SCRAM secret." msgstr "El usuario «%s» no tiene un secreto SCRAM válido." -#: 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 "mensaje SCRAM mal formado" -#: libpq/auth-scram.c:379 -#, c-format -msgid "The message is empty." -msgstr "El mensaje está vacío." - -#: libpq/auth-scram.c:384 -#, c-format -msgid "Message length does not match input length." -msgstr "El largo del mensaje no coincide con el largo de entrada." - -#: libpq/auth-scram.c:416 +#: libpq/auth-scram.c:420 #, c-format msgid "invalid SCRAM response" msgstr "respuesta SCRAM no válida" -#: libpq/auth-scram.c:417 +#: libpq/auth-scram.c:421 #, c-format msgid "Nonce does not match." msgstr "El «nonce» no coincide." -#: libpq/auth-scram.c:493 +#: libpq/auth-scram.c:504 #, c-format msgid "could not generate random salt" msgstr "no se pudo generar una sal aleatoria" -#: libpq/auth-scram.c:738 +#: libpq/auth-scram.c:752 #, c-format msgid "Expected attribute \"%c\" but found \"%s\"." msgstr "Se esperaba un atributo «%c» pero se encontró «%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 "Se esperaba el carácter «=» para el atributo «%c»." -#: libpq/auth-scram.c:851 +#: libpq/auth-scram.c:865 #, c-format msgid "Attribute expected, but found end of string." msgstr "Se esperaba un atributo, se encontró el fin de la cadena." -#: libpq/auth-scram.c:864 +#: libpq/auth-scram.c:878 #, c-format msgid "Attribute expected, but found invalid character \"%s\"." msgstr "Se esperaba un atributo, se encontró el carácter no válido «%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 "El cliente seleccionó SCRAM-SHA-256-PLUS, pero el mensaje SCRAM no incluye los datos de enlazado (binding) del canal." - -#: libpq/auth-scram.c:989 libpq/auth-scram.c:1019 -#, c-format -msgid "Comma expected, but found character \"%s\"." -msgstr "Se esperaba una coma, se encontró el carácter «%s»." +msgstr "El cliente seleccionó SCRAM-SHA-256-PLUS, pero el mensaje SCRAM no incluye los datos de enlazado de canal (channel binding)." -#: libpq/auth-scram.c:1010 +#: libpq/auth-scram.c:1024 #, c-format msgid "SCRAM channel binding negotiation error" -msgstr "error de negociación de enlazado (binding) de canal SCRAM" +msgstr "error de negociación de enlazado de canal (channel binding) 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 "El cliente soporta enlazado (binding) de canal SCRAM, pero piensa que el servidor no. Sin embargo, este servidor sí soporta enlazado de canal." +msgstr "El cliente soporta enlazado de canal (channel binding) SCRAM, pero piensa que el servidor no. Sin embargo, este servidor sí soporta enlazado de canal." -#: 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 "El cliente seleccionó SCRAM-SHA-256 sin enlazado de canal, pero el mensaje SCRAM incluye datos de enlazado de canal." +msgstr "El cliente seleccionó SCRAM-SHA-256 sin enlazado de canal (channel binding), pero el mensaje SCRAM incluye datos de enlazado de canal." -#: libpq/auth-scram.c:1044 +#: libpq/auth-scram.c:1058 #, c-format msgid "unsupported SCRAM channel-binding type \"%s\"" msgstr "tipo de enlazado de canal SCRAM «%s» no soportado" -#: libpq/auth-scram.c:1051 -#, c-format -msgid "Unexpected channel-binding flag \"%s\"." -msgstr "Indicador de enlazado de canal «%s» inesperado." - -#: libpq/auth-scram.c:1061 -#, c-format -msgid "client uses authorization identity, but it is not supported" -msgstr "el cliente usa identidad de autorización, pero no está soportada" - -#: libpq/auth-scram.c:1066 -#, c-format -msgid "Unexpected attribute \"%s\" in client-first-message." -msgstr "Atributo inesperado \"%s\" en client-first-message." - -#: libpq/auth-scram.c:1082 +#: libpq/auth-scram.c:1096 #, c-format msgid "client requires an unsupported SCRAM extension" msgstr "el cliente requiere una extensión SCRAM no soportada" -#: libpq/auth-scram.c:1096 +#: libpq/auth-scram.c:1110 #, c-format msgid "non-printable characters in SCRAM nonce" msgstr "caracteres no imprimibles en el «nonce» SCRAM" -#: libpq/auth-scram.c:1227 +#: libpq/auth-scram.c:1240 #, c-format msgid "could not generate random nonce" msgstr "no se pudo generar un «nonce» aleatorio" -#: libpq/auth-scram.c:1237 +#: libpq/auth-scram.c:1250 #, c-format msgid "could not encode random nonce" msgstr "no se pudo codificar un «nonce» aleatorio" -#: libpq/auth-scram.c:1343 +#: libpq/auth-scram.c:1356 #, c-format msgid "SCRAM channel binding check failed" -msgstr "la verificación de enlazado (binding) de canal SCRAM falló" +msgstr "la verificación de enlazado de canal (channel binding) SCRAM falló" -#: libpq/auth-scram.c:1361 +#: libpq/auth-scram.c:1374 #, c-format msgid "unexpected SCRAM channel-binding attribute in client-final-message" msgstr "atributo de enlazado de canal SCRAM inesperado en client-final-message" -#: libpq/auth-scram.c:1380 +#: libpq/auth-scram.c:1393 #, c-format msgid "Malformed proof in client-final-message." msgstr "Prueba (proof) mal formada en client-final-message." -#: libpq/auth-scram.c:1388 +#: libpq/auth-scram.c:1401 #, c-format msgid "Garbage found at the end of client-final-message." msgstr "Basura encontrada al final de client-final-message." -#: libpq/auth.c:269 +#: libpq/auth.c:262 #, c-format msgid "authentication failed for user \"%s\": host rejected" msgstr "la autentificación falló para el usuario «%s»: anfitrión rechazado" -#: libpq/auth.c:272 +#: libpq/auth.c:265 #, c-format msgid "\"trust\" authentication failed for user \"%s\"" msgstr "la autentificación «trust» falló para el usuario «%s»" -#: libpq/auth.c:275 +#: libpq/auth.c:268 #, c-format msgid "Ident authentication failed for user \"%s\"" msgstr "la autentificación Ident falló para el usuario «%s»" -#: libpq/auth.c:278 +#: libpq/auth.c:271 #, c-format msgid "Peer authentication failed for user \"%s\"" msgstr "la autentificación Peer falló para el usuario «%s»" -#: libpq/auth.c:283 +#: libpq/auth.c:276 #, c-format msgid "password authentication failed for user \"%s\"" msgstr "la autentificación password falló para el usuario «%s»" -#: libpq/auth.c:288 +#: libpq/auth.c:281 #, c-format msgid "GSSAPI authentication failed for user \"%s\"" msgstr "la autentificación GSSAPI falló para el usuario «%s»" -#: libpq/auth.c:291 +#: libpq/auth.c:284 #, c-format msgid "SSPI authentication failed for user \"%s\"" msgstr "la autentificación SSPI falló para el usuario «%s»" -#: libpq/auth.c:294 +#: libpq/auth.c:287 #, c-format msgid "PAM authentication failed for user \"%s\"" msgstr "la autentificación PAM falló para el usuario «%s»" -#: libpq/auth.c:297 +#: libpq/auth.c:290 #, c-format msgid "BSD authentication failed for user \"%s\"" msgstr "la autentificación BSD falló para el usuario «%s»" -#: libpq/auth.c:300 +#: libpq/auth.c:293 #, c-format msgid "LDAP authentication failed for user \"%s\"" msgstr "la autentificación LDAP falló para el usuario «%s»" -#: libpq/auth.c:303 +#: libpq/auth.c:296 #, c-format msgid "certificate authentication failed for user \"%s\"" msgstr "la autentificación por certificado falló para el usuario «%s»" -#: libpq/auth.c:306 +#: libpq/auth.c:299 #, c-format msgid "RADIUS authentication failed for user \"%s\"" msgstr "la autentificación RADIUS falló para el usuario «%s»" -#: libpq/auth.c:309 +#: libpq/auth.c:305 #, c-format msgid "authentication failed for user \"%s\": invalid authentication method" msgstr "la autentificación falló para el usuario «%s»: método de autentificación no válido" -#: libpq/auth.c:313 +#: libpq/auth.c:309 #, c-format msgid "Connection matched file \"%s\" line %d: \"%s\"" msgstr "La conexión coincidió con el archivo «%s» línea %d: «%s»" -#: libpq/auth.c:357 +#: libpq/auth.c:354 #, c-format msgid "authentication identifier set more than once" msgstr "identificador de autentificación establecido más de una vez" -#: libpq/auth.c:358 +#: libpq/auth.c:355 #, c-format msgid "previous identifier: \"%s\"; new identifier: \"%s\"" msgstr "identificador anterior: «%s»; nuevo identificador: «%s»" -#: libpq/auth.c:368 +#: libpq/auth.c:365 #, c-format msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)" msgstr "conexión autenticada: identidad=«%s» método=%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 "los certificados de cliente sólo pueden verificarse si un almacén de certificado raíz está disponible" -#: libpq/auth.c:419 +#: libpq/auth.c:416 #, c-format msgid "connection requires a valid client certificate" msgstr "la conexión requiere un certificado de cliente válido" -#: libpq/auth.c:450 libpq/auth.c:496 +#: libpq/auth.c:447 libpq/auth.c:493 msgid "GSS encryption" msgstr "cifrado GSS" -#: libpq/auth.c:453 libpq/auth.c:499 +#: libpq/auth.c:450 libpq/auth.c:496 msgid "SSL encryption" msgstr "cifrado SSL" -#: libpq/auth.c:455 libpq/auth.c:501 +#: libpq/auth.c:452 libpq/auth.c:498 msgid "no encryption" msgstr "sin cifrado" #. 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 rechaza la conexión de replicación para el servidor «%s», usuario «%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 rechaza la conexión para el servidor «%s», usuario «%s», base de datos «%s», %s" -#: libpq/auth.c:506 +#: libpq/auth.c:503 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup matches." msgstr "La dirección IP del cliente fue resuelta a «%s», este resultado es coincidente." -#: libpq/auth.c:509 +#: libpq/auth.c:506 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup not checked." msgstr "La dirección IP del cliente fue resuelta a «%s», este resultado no fue verificado." -#: libpq/auth.c:512 +#: libpq/auth.c:509 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup does not match." msgstr "La dirección IP del cliente fue resuelta a «%s», este resultado no es coincidente." -#: libpq/auth.c:515 +#: libpq/auth.c:512 #, c-format msgid "Could not translate client host name \"%s\" to IP address: %s." msgstr "No se pudo traducir el nombre de host del cliente «%s» a una dirección 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 "No se pudo obtener la dirección IP del cliente a un nombre de host: %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 "no hay una línea en pg_hba.conf para la conexión de replicación desde el servidor «%s», usuario «%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 "no hay una línea en pg_hba.conf para «%s», usuario «%s», base de datos «%s», %s" -#: libpq/auth.c:656 +#: libpq/auth.c:657 #, c-format msgid "connection authenticated: user=\"%s\" method=%s (%s:%d)" msgstr "conexión autenticada: usuario=«%s» método=%s (%s:%d)" -#: libpq/auth.c:725 +#: libpq/auth.c:726 #, c-format msgid "expected password response, got message type %d" msgstr "se esperaba una respuesta de contraseña, se obtuvo mensaje de tipo %d" -#: libpq/auth.c:746 +#: libpq/auth.c:747 #, c-format msgid "invalid password packet size" msgstr "el tamaño del paquete de contraseña no es válido" -#: libpq/auth.c:764 +#: libpq/auth.c:765 #, c-format msgid "empty password returned by client" msgstr "el cliente retornó una contraseña vacía" -#: libpq/auth.c:892 +#: libpq/auth.c:893 #, c-format msgid "could not generate random MD5 salt" msgstr "no se pudo generar una sal MD5 aleatoria" -#: 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 "no se pudo establecer el ambiente: %m" -#: libpq/auth.c:982 +#: libpq/auth.c:983 #, c-format msgid "expected GSS response, got message type %d" msgstr "se esperaba una respuesta GSS, se obtuvo mensaje de tipo %d" -#: libpq/auth.c:1048 +#: libpq/auth.c:1049 msgid "accepting GSS security context failed" msgstr "falló la aceptación del contexto de seguridad GSS" -#: libpq/auth.c:1089 +#: libpq/auth.c:1090 msgid "retrieving GSS user name failed" msgstr "falló la obtención del nombre de usuario GSS" -#: libpq/auth.c:1235 +#: libpq/auth.c:1236 msgid "could not acquire SSPI credentials" msgstr "no se pudo obtener las credenciales SSPI" -#: libpq/auth.c:1260 +#: libpq/auth.c:1261 #, c-format msgid "expected SSPI response, got message type %d" msgstr "se esperaba una respuesta SSPI, se obtuvo mensaje de tipo %d" -#: libpq/auth.c:1338 +#: libpq/auth.c:1339 msgid "could not accept SSPI security context" msgstr "no se pudo aceptar un contexto SSPI" -#: libpq/auth.c:1379 +#: libpq/auth.c:1380 msgid "could not get token from SSPI security context" msgstr "no se pudo obtener un testigo (token) desde el contexto de seguridad 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 "no se pudo traducir el nombre" -#: libpq/auth.c:1547 +#: libpq/auth.c:1548 #, c-format msgid "realm name too long" msgstr "nombre de «realm» demasiado largo" -#: libpq/auth.c:1562 +#: libpq/auth.c:1563 #, c-format msgid "translated account name too long" msgstr "nombre de cuenta traducido demasiado largo" -#: libpq/auth.c:1741 +#: libpq/auth.c:1742 #, c-format msgid "could not create socket for Ident connection: %m" msgstr "no se pudo crear un socket para conexión Ident: %m" -#: libpq/auth.c:1756 +#: libpq/auth.c:1757 #, c-format msgid "could not bind to local address \"%s\": %m" msgstr "no se pudo enlazar a la dirección local «%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 "no se pudo conectar al servidor Ident en dirección «%s», port %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 "no se pudo enviar consulta Ident al servidor «%s», port %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 "no se pudo recibir respuesta Ident desde el servidor «%s», port %s: %m" -#: libpq/auth.c:1817 +#: libpq/auth.c:1818 #, c-format msgid "invalidly formatted response from Ident server: \"%s\"" msgstr "respuesta del servidor Ident en formato no válido: «%s»" -#: libpq/auth.c:1870 +#: libpq/auth.c:1874 #, c-format msgid "peer authentication is not supported on this platform" msgstr "método de autentificación peer no está soportado en esta plataforma" -#: libpq/auth.c:1874 +#: libpq/auth.c:1878 #, c-format msgid "could not get peer credentials: %m" msgstr "no se pudo recibir credenciales: %m" -#: libpq/auth.c:1886 +#: libpq/auth.c:1888 +#, c-format +#| msgid "could not look up local user ID %ld: %s" +msgid "could not look up local user ID %ld: %m" +msgstr "no se pudo encontrar el ID del usuario local %ld: %m" + +#: libpq/auth.c:1894 #, c-format -msgid "could not look up local user ID %ld: %s" -msgstr "no se pudo encontrar el ID del usuario local %ld: %s" +#| msgid "local user with ID %d does not exist" +msgid "local user with ID %ld does not exist" +msgstr "no existe un usuario local con ID %ld" -#: libpq/auth.c:1988 +#: libpq/auth.c:1994 #, c-format msgid "error from underlying PAM layer: %s" msgstr "se ha recibido un error de la biblioteca PAM: %s" -#: libpq/auth.c:1999 +#: libpq/auth.c:2005 #, c-format msgid "unsupported PAM conversation %d/\"%s\"" msgstr "conversación PAM no soportada: %d/«%s»" -#: libpq/auth.c:2056 +#: libpq/auth.c:2062 #, c-format msgid "could not create PAM authenticator: %s" msgstr "no se pudo crear autenticador 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) falló: %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) falló: %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) falló: %s" -#: libpq/auth.c:2124 +#: libpq/auth.c:2130 #, c-format msgid "pam_authenticate failed: %s" msgstr "pam_authenticate falló: %s" -#: libpq/auth.c:2137 +#: libpq/auth.c:2143 #, c-format msgid "pam_acct_mgmt failed: %s" msgstr "pam_acct_mgmt falló: %s" -#: libpq/auth.c:2148 +#: libpq/auth.c:2154 #, c-format msgid "could not release PAM authenticator: %s" msgstr "no se pudo liberar autenticador PAM: %s" -#: libpq/auth.c:2228 +#: libpq/auth.c:2234 #, c-format msgid "could not initialize LDAP: error code %d" msgstr "no se pudo inicializar LDAP: código de error %d" -#: libpq/auth.c:2265 +#: libpq/auth.c:2271 #, c-format msgid "could not extract domain name from ldapbasedn" msgstr "no se pudo extraer el nombre de dominio de ldapbasedn" -#: libpq/auth.c:2273 +#: libpq/auth.c:2279 #, c-format msgid "LDAP authentication could not find DNS SRV records for \"%s\"" msgstr "la autentificación LDAP no pudo encontrar registros DNS SRV para «%s»" -#: libpq/auth.c:2275 +#: libpq/auth.c:2281 #, c-format msgid "Set an LDAP server name explicitly." msgstr "Defina un nombre de servidor LDAP explícitamente." -#: libpq/auth.c:2327 +#: libpq/auth.c:2333 #, c-format msgid "could not initialize LDAP: %s" msgstr "no se pudo inicializar LDAP: %s" -#: libpq/auth.c:2337 +#: libpq/auth.c:2343 #, c-format msgid "ldaps not supported with this LDAP library" msgstr "ldaps no está soportado con esta biblioteca LDAP" -#: libpq/auth.c:2345 +#: libpq/auth.c:2351 #, c-format msgid "could not initialize LDAP: %m" msgstr "no se pudo inicializar LDAP: %m" -#: libpq/auth.c:2355 +#: libpq/auth.c:2361 #, c-format msgid "could not set LDAP protocol version: %s" msgstr "no se pudo definir la versión de protocolo LDAP: %s" -#: libpq/auth.c:2371 +#: libpq/auth.c:2377 #, c-format msgid "could not start LDAP TLS session: %s" msgstr "no se pudo iniciar sesión de LDAP TLS: %s" -#: libpq/auth.c:2448 +#: libpq/auth.c:2454 #, c-format msgid "LDAP server not specified, and no ldapbasedn" msgstr "servidor LDAP no especificado, y no hay ldapbasedn" -#: libpq/auth.c:2455 +#: libpq/auth.c:2461 #, c-format msgid "LDAP server not specified" msgstr "servidor LDAP no especificado" -#: libpq/auth.c:2517 +#: libpq/auth.c:2523 #, c-format msgid "invalid character in user name for LDAP authentication" msgstr "carácter no válido en nombre de usuario para autentificación 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 "no se pudo hacer el enlace LDAP inicial para el ldapbinddb «%s» en el servidor «%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 "no se pudo hacer la búsqueda LDAP para el filtro «%s» en el servidor «%s»: %s" -#: libpq/auth.c:2580 +#: libpq/auth.c:2586 #, c-format msgid "LDAP user \"%s\" does not exist" msgstr "no existe el usuario 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 "La búsqueda LDAP para el filtro «%s» en el servidor «%s» no retornó elementos." -#: libpq/auth.c:2585 +#: libpq/auth.c:2591 #, c-format msgid "LDAP user \"%s\" is not unique" msgstr "el usuario LDAP «%s» no es única" -#: 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." msgstr[0] "La búsqueda LDAP para el filtro «%s» en el servidor «%s» retornó %d elemento." msgstr[1] "La búsqueda LDAP para el filtro «%s» en el servidor «%s» retornó %d elementos." -#: 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 "no se pudo obtener el dn para la primera entrada que coincide con «%s» en el servidor «%s»: %s" -#: libpq/auth.c:2633 +#: libpq/auth.c:2639 #, c-format msgid "LDAP login failed for user \"%s\" on server \"%s\": %s" msgstr "falló el inicio de sesión LDAP para el usuario «%s» en el servidor «%s»: %s" -#: libpq/auth.c:2665 +#: libpq/auth.c:2671 #, c-format msgid "LDAP diagnostics: %s" msgstr "Diagnóstico 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 "la autentificación con certificado falló para el usuario «%s»: el certificado de cliente no contiene un nombre de usuario" -#: libpq/auth.c:2724 +#: libpq/auth.c:2730 #, c-format msgid "certificate authentication failed for user \"%s\": unable to retrieve subject DN" msgstr "la autentificación por certificado falló para el usuario «%s»: no se pudo obtener el DN del sujeto" -#: libpq/auth.c:2747 +#: libpq/auth.c:2753 #, c-format msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": DN mismatch" msgstr "la validación de certificado (clientcert=verify-full) falló para el usuario «%s»: discordancia de DN" -#: libpq/auth.c:2752 +#: libpq/auth.c:2758 #, c-format msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": CN mismatch" msgstr "la validación de certificado (clientcert=verify-full) falló para el usuario «%s»: discordancia de CN" -#: libpq/auth.c:2854 +#: libpq/auth.c:2860 #, c-format msgid "RADIUS server not specified" msgstr "servidor RADIUS no especificado" -#: libpq/auth.c:2861 +#: libpq/auth.c:2867 #, c-format msgid "RADIUS secret not specified" msgstr "secreto RADIUS no especificado" -#: libpq/auth.c:2875 +#: libpq/auth.c:2881 #, c-format msgid "RADIUS authentication does not support passwords longer than %d characters" msgstr "la autentificación RADIUS no soporta contraseñas más largas de %d caracteres" -#: 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 "no se pudo traducir el nombre de servidor RADIUS «%s» a dirección: %s" -#: libpq/auth.c:2991 +#: libpq/auth.c:2997 #, c-format msgid "could not generate random encryption vector" msgstr "no se pudo generar un vector aleatorio de encriptación" -#: libpq/auth.c:3028 +#: libpq/auth.c:3034 #, c-format msgid "could not perform MD5 encryption of password: %s" msgstr "no se pudo efectuar cifrado MD5 de contraseña: %s" -#: libpq/auth.c:3055 +#: libpq/auth.c:3061 #, c-format msgid "could not create RADIUS socket: %m" msgstr "no se pudo crear el socket RADIUS: %m" -#: libpq/auth.c:3071 +#: libpq/auth.c:3077 #, c-format msgid "could not bind local RADIUS socket: %m" msgstr "no se pudo enlazar el socket RADIUS local: %m" -#: libpq/auth.c:3081 +#: libpq/auth.c:3087 #, c-format msgid "could not send RADIUS packet: %m" msgstr "no se pudo enviar el paquete 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 "se agotó el tiempo de espera de la respuesta RADIUS desde %s" -#: libpq/auth.c:3134 +#: libpq/auth.c:3140 #, c-format msgid "could not check status on RADIUS socket: %m" msgstr "no se pudo verificar el estado en el socket %m" -#: libpq/auth.c:3164 +#: libpq/auth.c:3170 #, c-format msgid "could not read RADIUS response: %m" msgstr "no se pudo leer la respuesta RADIUS: %m" -#: libpq/auth.c:3172 +#: libpq/auth.c:3178 #, c-format msgid "RADIUS response from %s was sent from incorrect port: %d" msgstr "la respuesta RADIUS desde %s fue enviada desde el port incorrecto: %d" -#: libpq/auth.c:3180 +#: libpq/auth.c:3186 #, c-format msgid "RADIUS response from %s too short: %d" msgstr "la respuesta RADIUS desde %s es demasiado corta: %d" -#: libpq/auth.c:3187 +#: libpq/auth.c:3193 #, c-format msgid "RADIUS response from %s has corrupt length: %d (actual length %d)" msgstr "la respuesta RADIUS desde %ss tiene largo corrupto: %d (largo real %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 "la respuesta RADIUS desde %s es a una petición diferente: %d (debería ser %d)" -#: libpq/auth.c:3220 +#: libpq/auth.c:3228 #, c-format msgid "could not perform MD5 encryption of received packet: %s" msgstr "no se pudo efectuar cifrado MD5 del paquete recibido: %s" -#: libpq/auth.c:3230 +#: libpq/auth.c:3238 #, c-format msgid "RADIUS response from %s has incorrect MD5 signature" msgstr "la respuesta RADIUS desde %s tiene firma MD5 incorrecta" -#: libpq/auth.c:3248 +#: libpq/auth.c:3256 #, c-format msgid "RADIUS response from %s has invalid code (%d) for user \"%s\"" msgstr "la respuesta RADIUS desde %s tiene código no válido (%d) para el usuario «%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 "el descriptor de objeto grande no es válido: %d" @@ -15100,7 +15861,7 @@ msgstr "el descriptor de objeto grande no es válido: %d" msgid "large object descriptor %d was not opened for reading" msgstr "el descriptor de objeto grande %d no fue abierto para lectura" -#: 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 "el descriptor de objeto grande %d no fue abierto para escritura" @@ -15115,32 +15876,32 @@ msgstr "resultado de lo_lseek fuera de rango para el descriptor de objeto grande msgid "lo_tell result out of range for large-object descriptor %d" msgstr "resultado de lo_tell fuera de rango para el descriptor de objeto grande %d" -#: libpq/be-fsstubs.c:439 +#: libpq/be-fsstubs.c:444 #, c-format msgid "could not open server file \"%s\": %m" msgstr "no se pudo abrir el archivo de servidor «%s»: %m" -#: libpq/be-fsstubs.c:462 +#: libpq/be-fsstubs.c:467 #, c-format msgid "could not read server file \"%s\": %m" msgstr "no se pudo leer el archivo de servidor «%s»: %m" -#: libpq/be-fsstubs.c:521 +#: libpq/be-fsstubs.c:526 #, c-format msgid "could not create server file \"%s\": %m" msgstr "no se pudo crear el archivo del servidor «%s»: %m" -#: libpq/be-fsstubs.c:533 +#: libpq/be-fsstubs.c:538 #, c-format msgid "could not write server file \"%s\": %m" msgstr "no se pudo escribir el archivo del servidor «%s»: %m" -#: libpq/be-fsstubs.c:774 +#: libpq/be-fsstubs.c:779 #, c-format msgid "large object read request is too large" msgstr "el tamaño de petición de lectura de objeto grande es muy grande" -#: 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 "el tamaño solicitado no puede ser negativo" @@ -15175,819 +15936,844 @@ msgstr "el archivo de la llave privada «%s» tiene acceso para el grupo u otros 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 "El archivo debe tener permisos u=rw (0600) o menos si es de propiedad del usuario de base deatos, o permisos u=rw,g=r (0640) o menos si es de root." -#: libpq/be-secure-gssapi.c:201 +#: libpq/be-secure-gssapi.c:209 msgid "GSSAPI wrap error" msgstr "error de «wrap» de GSSAPI" -#: libpq/be-secure-gssapi.c:208 +#: libpq/be-secure-gssapi.c:216 #, c-format msgid "outgoing GSSAPI message would not use confidentiality" msgstr "mensaje saliente GSSAPI no proveería confidencialidad" -#: 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 "el servidor intentó enviar un paquete GSSAPI demasiado grande (%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 "paquete GSSAPI demasiado grande enviado por el cliente (%zu > %zu)" -#: libpq/be-secure-gssapi.c:389 +#: libpq/be-secure-gssapi.c:397 msgid "GSSAPI unwrap error" msgstr "error de «unwrap» de GSSAPI" -#: libpq/be-secure-gssapi.c:396 +#: libpq/be-secure-gssapi.c:404 #, c-format msgid "incoming GSSAPI message did not use confidentiality" msgstr "mensaje GSSAPI entrante no usó confidencialidad" -#: libpq/be-secure-gssapi.c:575 -#, c-format -msgid "oversize GSSAPI packet sent by the client (%zu > %d)" -msgstr "paquete GSSAPI demasiado grande enviado por el cliente (%zu > %d)" - -#: libpq/be-secure-gssapi.c:600 +#: libpq/be-secure-gssapi.c:613 msgid "could not accept GSSAPI security context" msgstr "no se pudo aceptar un contexto de seguridad GSSAPI" -#: libpq/be-secure-gssapi.c:701 +#: libpq/be-secure-gssapi.c:731 msgid "GSSAPI size check error" msgstr "error de verificación de tamaño GSSAPI" -#: libpq/be-secure-openssl.c:131 +#: libpq/be-secure-openssl.c:118 #, c-format msgid "could not create SSL context: %s" msgstr "no se pudo crear un contexto 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 "no se pudo cargar el archivo de certificado de servidor «%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 "el archivo de clave privada \"%s\" no se puede volver a cargar porque requiere una contraseña" -#: libpq/be-secure-openssl.c:182 +#: libpq/be-secure-openssl.c:169 #, c-format msgid "could not load private key file \"%s\": %s" msgstr "no se pudo cargar el archivo de la llave privada «%s»: %s" -#: libpq/be-secure-openssl.c:191 +#: libpq/be-secure-openssl.c:178 #, c-format msgid "check of private key failed: %s" msgstr "falló la revisión de la llave privada: %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 "el valor «%2$s» para la opción «%1$s» no está soportado en este servidor" -#: libpq/be-secure-openssl.c:214 +#: libpq/be-secure-openssl.c:201 #, c-format msgid "could not set minimum SSL protocol version" msgstr "no se pudo definir la versión mínima de protocolo SSL" -#: libpq/be-secure-openssl.c:237 +#: libpq/be-secure-openssl.c:224 #, c-format msgid "could not set maximum SSL protocol version" msgstr "no se pudo definir la versión máxima de protocolo SSL" -#: libpq/be-secure-openssl.c:253 +#: libpq/be-secure-openssl.c:241 #, c-format msgid "could not set SSL protocol version range" msgstr "no se pudo definir el rango de versión de protocolo SSL" -#: libpq/be-secure-openssl.c:254 +#: libpq/be-secure-openssl.c:242 #, c-format msgid "\"%s\" cannot be higher than \"%s\"" msgstr "«%s» no puede ser más alto que «%s»" -#: libpq/be-secure-openssl.c:307 +#: libpq/be-secure-openssl.c:295 +#, c-format +#| msgid "could not set the cipher list (no valid ciphers available)" +msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" +msgstr "no se pudo establecer la lista de cifrado TLSv1.2 (no hay cifradores disponibles)" + +#: libpq/be-secure-openssl.c:310 #, c-format -msgid "could not set the cipher list (no valid ciphers available)" -msgstr "no se pudo establecer la lista de cifrado (no hay cifradores disponibles)" +#| msgid "could not set the cipher list (no valid ciphers available)" +msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" +msgstr "no se pudo establecer los suites de cifrado TLSv1.3 (no hay cifradores disponibles)" -#: libpq/be-secure-openssl.c:327 +#: libpq/be-secure-openssl.c:331 #, c-format msgid "could not load root certificate file \"%s\": %s" msgstr "no se pudo cargar el archivo del certificado raíz «%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 "no se pudo cargar el archivo de lista de revocación de certificados 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 "no se pudo cargar el directorio de lista de revocación de certificados 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 "no se pudo cargar el archivo de lista de revocación de certificados SSL «%s» o directorio «%s»: %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 "no se pudo inicializar la conexión SSL: el contexto SSL no está instalado" -#: libpq/be-secure-openssl.c:464 +#: libpq/be-secure-openssl.c:468 #, c-format msgid "could not initialize SSL connection: %s" msgstr "no se pudo inicializar la conexión SSL: %s" -#: libpq/be-secure-openssl.c:472 +#: libpq/be-secure-openssl.c:476 #, c-format msgid "could not set SSL socket: %s" msgstr "no se definir un socket SSL: %s" -#: libpq/be-secure-openssl.c:528 +#: libpq/be-secure-openssl.c:532 #, c-format msgid "could not accept SSL connection: %m" msgstr "no se pudo aceptar una conexión 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 "no se pudo aceptar una conexión SSL: se detectó EOF" -#: libpq/be-secure-openssl.c:573 +#: libpq/be-secure-openssl.c:577 #, c-format msgid "could not accept SSL connection: %s" msgstr "no se pudo aceptar una conexión 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 "Esto puede indicar que el cliente no soporta ninguna versión del protocolo SSL entre %s y %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 "código de error SSL no reconocido: %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 "recibido una solicitud de conexión SSL con protocolo ALPN inesperado" -#: libpq/be-secure-openssl.c:666 +#: libpq/be-secure-openssl.c:670 #, c-format msgid "SSL certificate's common name contains embedded null" msgstr "el «common name» del certificado SSL contiene un carácter null" -#: libpq/be-secure-openssl.c:712 +#: libpq/be-secure-openssl.c:716 #, c-format msgid "SSL certificate's distinguished name contains embedded null" msgstr "el elemento de nombre distinguido en el certificado SSL contiene un carácter 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 "error de 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 "no se pudo abrir el archivo de parámetros 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 "no se pudo cargar el archivo de parámetros DH: %s" -#: libpq/be-secure-openssl.c:1060 +#: libpq/be-secure-openssl.c:1072 #, c-format msgid "invalid DH parameters: %s" msgstr "parámetros DH no válidos: %s" -#: libpq/be-secure-openssl.c:1069 +#: libpq/be-secure-openssl.c:1081 #, c-format msgid "invalid DH parameters: p is not prime" msgstr "parámetros DH no válidos: p no es primo" -#: 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 "parámetros DH no válidos: no hay generador apropiado o primo seguro" -#: libpq/be-secure-openssl.c:1214 +#: libpq/be-secure-openssl.c:1226 #, c-format msgid "Client certificate verification failed at depth %d: %s." msgstr "La autentificación por certificado de cliente falló en la profundidad %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 "Datos del certificado fallido (sin verificar): sujeto «%s», número de serie %s, emisor «%s»." -#: libpq/be-secure-openssl.c:1252 +#: libpq/be-secure-openssl.c:1264 msgid "unknown" msgstr "desconocido" -#: libpq/be-secure-openssl.c:1389 +#: libpq/be-secure-openssl.c:1401 #, c-format msgid "DH: could not load DH parameters" msgstr "DH: no se pudo cargar los parámetros 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: no se pudo definir los parámetros DH: %s" -#: libpq/be-secure-openssl.c:1424 +#: libpq/be-secure-openssl.c:1439 #, c-format -msgid "ECDH: unrecognized curve name: %s" -msgstr "ECDH: nombre de curva no reconocida: %s" +#| msgid "could not set group of file \"%s\": %m" +msgid "could not set group names specified in ssl_groups: %s" +msgstr "no se pudo definir los nombres de grupo especificados en ssl_groups: %s" + +#: libpq/be-secure-openssl.c:1441 +msgid "No valid groups found" +msgstr "No se encontraron grupos válidos" -#: libpq/be-secure-openssl.c:1433 +#: libpq/be-secure-openssl.c:1442 #, c-format -msgid "ECDH: could not create key" -msgstr "ECDH: no se pudo crear la llave" +msgid "Ensure that each group name is spelled correctly and supported by the installed version of OpenSSL." +msgstr "Asegúrese que cada nombre de grupo esté escrito correctamente y sea soportado por la versión instalada de OpenSSL." -#: libpq/be-secure-openssl.c:1461 +#: libpq/be-secure-openssl.c:1488 msgid "no SSL error reported" msgstr "código de error SSL no reportado" -#: libpq/be-secure-openssl.c:1479 +#: libpq/be-secure-openssl.c:1506 #, c-format msgid "SSL error code %lu" msgstr "código de error SSL %lu" -#: libpq/be-secure-openssl.c:1636 +#: libpq/be-secure-openssl.c:1663 #, c-format msgid "could not create BIO" msgstr "no se pudo crear 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 "no se pudo obtener NID para objeto 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 "no se pudo convertir NID %d en una estructura ASN1_OBJECT" -#: libpq/crypt.c:48 +#: libpq/crypt.c:50 #, c-format msgid "Role \"%s\" does not exist." msgstr "No existe el rol «%s»." -#: libpq/crypt.c:58 +#: libpq/crypt.c:60 #, c-format msgid "User \"%s\" has no password assigned." msgstr "El usuario «%s» no tiene una contraseña asignada." -#: libpq/crypt.c:76 +#: libpq/crypt.c:78 #, c-format msgid "User \"%s\" has an expired password." msgstr "El usuario «%s» tiene contraseña expirada." -#: libpq/crypt.c:182 +#: libpq/crypt.c:174 +#, fuzzy, c-format +#| msgid "directory path for new cluster is too long" +msgid "encrypted password is too long" +msgstr "la contraseña cifrada es demasiado larga" + +#: libpq/crypt.c:175 +#, c-format +msgid "Encrypted passwords must be no longer than %d bytes." +msgstr "Las contraseñas cifradas no deben ser mayores a %d bytes." + +#: libpq/crypt.c:183 +#, fuzzy, c-format +#| msgid "could not encrypt password: %s" +msgid "setting an MD5-encrypted password" +msgstr "definiendo una contraseña cifrada con MD5" + +#: libpq/crypt.c:184 +#, c-format +msgid "MD5 password support is deprecated and will be removed in a future release of PostgreSQL." +msgstr "El soporte para contraseñas MD5 está depreciado y se eliminará en una versión futura de PostgreSQL." + +#: libpq/crypt.c:185 +#, c-format +msgid "Refer to the PostgreSQL documentation for details about migrating to another password type." +msgstr "Refiérase a la documentación de PostgreSQL para mayor información acerca de migrar a otro tipo de contraseña." + +#: libpq/crypt.c:216 #, c-format msgid "User \"%s\" has a password that cannot be used with MD5 authentication." msgstr "El usuario \"%s\" tiene una contraseña que no se puede usar con la autentificación 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 "La contraseña no coincide para el usuario «%s»." -#: libpq/crypt.c:284 +#: libpq/crypt.c:318 #, c-format msgid "Password of user \"%s\" is in unrecognized format." msgstr "La contraseña del usuario \"%s\" está en un formato no reconocido." -#: libpq/hba.c:327 +#: libpq/hba.c:329 #, c-format msgid "invalid regular expression \"%s\": %s" msgstr "la expresión regular «%s» no es válida: %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 "línea %d del archivo de configuración «%s»" - -#: libpq/hba.c:457 +#: libpq/hba.c:459 #, c-format msgid "skipping missing authentication file \"%s\"" msgstr "omitiendo el archivo de autentificación faltante «%s»" -#: libpq/hba.c:609 +#: libpq/hba.c:611 #, c-format msgid "could not open file \"%s\": maximum nesting depth exceeded" msgstr "no se pudo abrir el archivo «%s»: nivel de anidamiento máximo excedido" -#: libpq/hba.c:1216 +#: libpq/hba.c:1222 #, c-format msgid "error enumerating network interfaces: %m" msgstr "error al enumerar interfaces de red: %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 "la opción de autentificación «%s» sólo es válida para los métodos de autentificación %s" -#: libpq/hba.c:1263 +#: libpq/hba.c:1269 #, c-format msgid "authentication method \"%s\" requires argument \"%s\" to be set" msgstr "el método de autentificación «%s» requiere que el argumento «%s» esté definido" -#: libpq/hba.c:1287 +#: libpq/hba.c:1293 #, c-format msgid "missing entry at end of line" msgstr "falta una entrada al final de la línea" -#: libpq/hba.c:1300 +#: libpq/hba.c:1306 #, c-format msgid "multiple values in ident field" msgstr "múltiples valores en campo «ident»" -#: libpq/hba.c:1352 +#: libpq/hba.c:1358 #, c-format msgid "multiple values specified for connection type" msgstr "múltiples valores especificados para tipo de conexión" -#: libpq/hba.c:1353 +#: libpq/hba.c:1359 #, c-format msgid "Specify exactly one connection type per line." msgstr "Especifique exactamente un tipo de conexión por línea." -#: libpq/hba.c:1380 +#: libpq/hba.c:1386 #, c-format msgid "hostssl record cannot match because SSL is disabled" msgstr "el registro hostssl no puede coincidir porque SSL está deshabilitado" -#: libpq/hba.c:1381 +#: libpq/hba.c:1387 #, c-format msgid "Set \"ssl = on\" in postgresql.conf." msgstr "Defina «ssl = on» en 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 "el registro hostssl no puede coincidir porque SSL no está soportado en esta instalación" -#: libpq/hba.c:1401 +#: libpq/hba.c:1407 #, c-format msgid "hostgssenc record cannot match because GSSAPI is not supported by this build" msgstr "el registro hostgssenc no puede coincidir porque GSSAPI no está soportado en esta instalación" -#: libpq/hba.c:1421 +#: libpq/hba.c:1427 #, c-format msgid "invalid connection type \"%s\"" msgstr "tipo de conexión «%s» no válido" -#: libpq/hba.c:1435 +#: libpq/hba.c:1441 #, c-format msgid "end-of-line before database specification" msgstr "fin de línea antes de especificación de base de datos" -#: libpq/hba.c:1460 +#: libpq/hba.c:1466 #, c-format msgid "end-of-line before role specification" msgstr "fin de línea antes de especificación de rol" -#: libpq/hba.c:1487 +#: libpq/hba.c:1493 #, c-format msgid "end-of-line before IP address specification" msgstr "fin de línea antes de especificación de dirección IP" -#: libpq/hba.c:1498 +#: libpq/hba.c:1504 #, c-format msgid "multiple values specified for host address" msgstr "múltiples valores especificados para la dirección de anfitrión" -#: libpq/hba.c:1499 +#: libpq/hba.c:1505 #, c-format msgid "Specify one address range per line." msgstr "Especifique un rango de direcciones por línea." -#: libpq/hba.c:1557 +#: libpq/hba.c:1563 #, c-format msgid "invalid IP address \"%s\": %s" msgstr "dirección IP «%s» no válida: %s" -#: libpq/hba.c:1577 +#: libpq/hba.c:1583 #, c-format msgid "specifying both host name and CIDR mask is invalid: \"%s\"" msgstr "especificar tanto el nombre de host como la máscara CIDR no es válido: «%s»" -#: libpq/hba.c:1591 +#: libpq/hba.c:1597 #, c-format msgid "invalid CIDR mask in address \"%s\"" msgstr "máscara CIDR no válida en dirección «%s»" -#: libpq/hba.c:1611 +#: libpq/hba.c:1617 #, c-format msgid "end-of-line before netmask specification" msgstr "fin de línea antes de especificación de máscara de red" -#: libpq/hba.c:1612 +#: libpq/hba.c:1618 #, c-format msgid "Specify an address range in CIDR notation, or provide a separate netmask." msgstr "Especifique un rango de direcciones en notación CIDR, o provea una netmask separadamente." -#: libpq/hba.c:1623 +#: libpq/hba.c:1629 #, c-format msgid "multiple values specified for netmask" msgstr "múltiples valores especificados para la máscara de red" -#: libpq/hba.c:1637 +#: libpq/hba.c:1643 #, c-format msgid "invalid IP mask \"%s\": %s" msgstr "máscara IP «%s» no válida: %s" -#: libpq/hba.c:1657 +#: libpq/hba.c:1663 #, c-format msgid "IP address and mask do not match" msgstr "La dirección y máscara IP no coinciden" -#: libpq/hba.c:1673 +#: libpq/hba.c:1679 #, c-format msgid "end-of-line before authentication method" msgstr "fin de línea antes de especificación de método de autentificación" -#: libpq/hba.c:1684 +#: libpq/hba.c:1690 #, c-format msgid "multiple values specified for authentication type" msgstr "múltiples valores especificados para el tipo de autentificación" -#: libpq/hba.c:1685 +#: libpq/hba.c:1691 #, c-format msgid "Specify exactly one authentication type per line." msgstr "Especifique exactamente un tipo de autentificación por línea." -#: libpq/hba.c:1750 +#: libpq/hba.c:1758 #, c-format msgid "invalid authentication method \"%s\"" msgstr "método de autentificación «%s» no válido" -#: libpq/hba.c:1763 +#: libpq/hba.c:1771 #, c-format msgid "invalid authentication method \"%s\": not supported by this build" msgstr "método de autentificación «%s» no válido: este servidor no lo soporta" -#: libpq/hba.c:1786 +#: libpq/hba.c:1794 #, c-format msgid "gssapi authentication is not supported on local sockets" msgstr "la autentificación gssapi no está soportada en conexiones locales" -#: libpq/hba.c:1798 +#: libpq/hba.c:1806 #, c-format msgid "peer authentication is only supported on local sockets" msgstr "la autentificación peer sólo está soportada en conexiones locales" -#: libpq/hba.c:1816 +#: libpq/hba.c:1824 #, c-format msgid "cert authentication is only supported on hostssl connections" msgstr "la autentificación cert sólo está soportada en conexiones hostssl" -#: libpq/hba.c:1866 +#: libpq/hba.c:1874 #, c-format msgid "authentication option not in name=value format: %s" msgstr "opción de autentificación en formato nombre=valor: %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 "no se puede usar ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter o ldapurl junto con ldapprefix" +msgid "cannot mix options for simple bind and search+bind modes" +msgstr "" -#: libpq/hba.c:1921 +#: libpq/hba.c:1929 #, c-format msgid "authentication method \"ldap\" requires argument \"ldapbasedn\", \"ldapprefix\", or \"ldapsuffix\" to be set" msgstr "el método de autentificación «ldap» requiere que los argumento «ldapbasedn», «ldapprefix» o «ldapsuffix» estén definidos" -#: libpq/hba.c:1937 +#: libpq/hba.c:1945 #, c-format msgid "cannot use ldapsearchattribute together with ldapsearchfilter" msgstr "no se puede usar ldapsearchattribute junto con ldapsearchfilter" -#: libpq/hba.c:1954 +#: libpq/hba.c:1962 #, c-format msgid "list of RADIUS servers cannot be empty" msgstr "la lista de servidores RADIUS no puede ser vacía" -#: libpq/hba.c:1965 +#: libpq/hba.c:1973 #, c-format msgid "list of RADIUS secrets cannot be empty" msgstr "la lista de secretos RADIUS no puede ser vacía" -#: 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 "el número de secretos RADIUS (%d) debe ser 1 o igual al número de servidores 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 "el número de puertos RADIUS (%d) debe ser 1 o igual al número de servidores 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 "el número de identificadores RADIUS (%d) debe ser 1 o igual al número de servidores RADIUS (%d)" -#: libpq/hba.c:2066 -msgid "ident, peer, gssapi, sspi, and cert" -msgstr "ident, peer, gssapi, sspi y cert" +#. translator: strings are replaced with hba options +#: libpq/hba.c:2067 +#, c-format +#| msgid "COPY %s cannot be used with %s" +msgid "%s cannot be used in combination with %s" +msgstr "%s no puede usarse en combinación con %s" + +#: libpq/hba.c:2105 +#| msgid "ident, peer, gssapi, sspi, and cert" +msgid "ident, peer, gssapi, sspi, cert, and oauth" +msgstr "ident, peer, gssapi, sspi, cert y oauth" -#: libpq/hba.c:2075 +#: libpq/hba.c:2114 #, c-format msgid "clientcert can only be configured for \"hostssl\" rows" msgstr "clientcert sólo puede ser configurado en líneas «hostssl»" -#: libpq/hba.c:2092 +#: libpq/hba.c:2131 #, c-format msgid "clientcert only accepts \"verify-full\" when using \"cert\" authentication" msgstr "clientcert solo acepta «verify-full» cuando se emplea autentificación «cert»" -#: libpq/hba.c:2105 +#: libpq/hba.c:2144 #, c-format msgid "invalid value for clientcert: \"%s\"" msgstr "valor no válido para el parámetro clientcert: «%s»" -#: libpq/hba.c:2117 +#: libpq/hba.c:2156 #, c-format msgid "clientname can only be configured for \"hostssl\" rows" msgstr "clientname solo puede ser configurado en líneas «hostssl»" -#: libpq/hba.c:2136 +#: libpq/hba.c:2175 #, c-format msgid "invalid value for clientname: \"%s\"" msgstr "valor no válido para el parámetro clientname: «%s»" -#: libpq/hba.c:2169 +#: libpq/hba.c:2208 #, c-format msgid "could not parse LDAP URL \"%s\": %s" msgstr "no se pudo interpretar la URL LDAP «%s»: %s" -#: libpq/hba.c:2180 +#: libpq/hba.c:2219 #, c-format msgid "unsupported LDAP URL scheme: %s" msgstr "esquema de URL LDAP no soportado: %s" -#: libpq/hba.c:2204 +#: libpq/hba.c:2243 #, c-format msgid "LDAP URLs not supported on this platform" msgstr "las URLs LDAP no está soportado en esta plataforma" -#: libpq/hba.c:2222 +#: libpq/hba.c:2261 #, c-format msgid "invalid ldapscheme value: \"%s\"" msgstr "valor ldapscheme no válido: «%s»" -#: libpq/hba.c:2240 +#: libpq/hba.c:2279 #, c-format msgid "invalid LDAP port number: \"%s\"" msgstr "número de puerto LDAP no válido: «%s»" -#: libpq/hba.c:2286 libpq/hba.c:2293 +#: libpq/hba.c:2325 libpq/hba.c:2332 msgid "gssapi and sspi" msgstr "gssapi y 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 "no se pudo interpretar la lista de servidores RADIUS «%s»" -#: libpq/hba.c:2381 +#: libpq/hba.c:2420 #, c-format msgid "could not parse RADIUS port list \"%s\"" msgstr "no se pudo interpretar la lista de port RADIUS «%s»" -#: libpq/hba.c:2395 +#: libpq/hba.c:2434 #, c-format msgid "invalid RADIUS port number: \"%s\"" msgstr "número de puerto RADIUS no válido: «%s»" -#: libpq/hba.c:2417 +#: libpq/hba.c:2456 #, c-format msgid "could not parse RADIUS secret list \"%s\"" msgstr "no se pudo interpretar la lista de secretos RADIUS «%s»" -#: libpq/hba.c:2439 +#: libpq/hba.c:2478 #, c-format msgid "could not parse RADIUS identifiers list \"%s\"" msgstr "no se pudo interpretar la lista de identificadores RADIUS «%s»" -#: libpq/hba.c:2453 +#: libpq/hba.c:2515 #, c-format msgid "unrecognized authentication option name: \"%s\"" msgstr "nombre de opción de autentificación desconocido: «%s»" -#: libpq/hba.c:2645 +#: libpq/hba.c:2707 #, c-format msgid "configuration file \"%s\" contains no entries" msgstr "el archivo de configuración «%s» no contiene líneas" -#: libpq/hba.c:2798 +#: libpq/hba.c:2860 #, c-format msgid "regular expression match for \"%s\" failed: %s" msgstr "la coincidencia de expresión regular para «%s» falló: %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 "la expresión regular «%s» no tiene subexpresiones según lo requiere la referencia hacia atrás en «%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 "el nombre de usuario entregado (%s) y el nombre de usuario autentificado (%s) no coinciden" -#: libpq/hba.c:2945 +#: libpq/hba.c:3007 #, c-format msgid "no match in usermap \"%s\" for user \"%s\" authenticated as \"%s\"" msgstr "no hay coincidencia en el mapa «%s» para el usuario «%s» autentificado como «%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) falló: %m" -#: libpq/pqcomm.c:296 +#: libpq/pqcomm.c:297 #, c-format msgid "could not set socket to nonblocking mode: %m" msgstr "no se pudo establecer el socket en modo no bloqueante: %m" -#: libpq/pqcomm.c:456 +#: libpq/pqcomm.c:457 #, 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)" -#: libpq/pqcomm.c:476 +#: libpq/pqcomm.c:477 #, c-format msgid "could not translate host name \"%s\", service \"%s\" to address: %s" msgstr "no se pudo traducir el nombre de host «%s», servicio «%s» a dirección: %s" -#: libpq/pqcomm.c:480 +#: libpq/pqcomm.c:481 #, c-format msgid "could not translate service \"%s\" to address: %s" msgstr "no se pudo traducir el servicio «%s» a dirección: %s" -#: libpq/pqcomm.c:502 +#: libpq/pqcomm.c:503 #, c-format msgid "could not bind to all requested addresses: MAXLISTEN (%d) exceeded" msgstr "no se pudo enlazar a todas las direcciones pedidas: MAXLISTEN (%d) fue excedido" -#: 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 "la familia de direcciones %d no reconocida" #. 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 "no se pudo crear el socket %s de escucha para la dirección «%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) falló para la dirección %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 "no se pudo enlazar a la dirección %s «%s»: %m" -#: libpq/pqcomm.c:619 +#: libpq/pqcomm.c:620 #, c-format msgid "Is another postmaster already running on port %d?" msgstr "¿Hay otro postmaster en ejecución en el puerto %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 "¿Hay otro postmaster en ejecución en el puerto %d? Si no, aguarde unos segundos y reintente." #. 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 "no se pudo escuchar en la dirección %s «%s»: %m" -#: libpq/pqcomm.c:658 +#: libpq/pqcomm.c:659 #, c-format msgid "listening on Unix socket \"%s\"" msgstr "escuchando en el socket 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 "escuchando en la dirección %s «%s», port %d" -#: libpq/pqcomm.c:753 +#: libpq/pqcomm.c:754 #, c-format msgid "group \"%s\" does not exist" msgstr "no existe el grupo «%s»" -#: libpq/pqcomm.c:763 +#: libpq/pqcomm.c:764 #, c-format msgid "could not set group of file \"%s\": %m" msgstr "no se pudo definir el grupo del archivo «%s»: %m" -#: libpq/pqcomm.c:774 +#: libpq/pqcomm.c:775 #, c-format msgid "could not set permissions of file \"%s\": %m" msgstr "no se pudo definir los permisos del archivo «%s»: %m" -#: libpq/pqcomm.c:803 +#: libpq/pqcomm.c:804 #, c-format msgid "could not accept new connection: %m" msgstr "no se pudo aceptar una nueva conexión: %m" -#: libpq/pqcomm.c:885 +#: libpq/pqcomm.c:886 #, c-format msgid "there is no client connection" msgstr "no hay conexión de cliente" -#: 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 "no se pudo recibir datos del cliente: %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 "terminando la conexión por pérdida de sincronía del protocolo" -#: libpq/pqcomm.c:1215 +#: libpq/pqcomm.c:1217 #, c-format msgid "unexpected EOF within message length word" msgstr "EOF inesperado dentro de la palabra de tamaño del mensaje" -#: libpq/pqcomm.c:1225 +#: libpq/pqcomm.c:1227 #, c-format msgid "invalid message length" msgstr "el largo de mensaje no es válido" -#: libpq/pqcomm.c:1247 libpq/pqcomm.c:1260 +#: libpq/pqcomm.c:1249 libpq/pqcomm.c:1262 #, c-format msgid "incomplete message from client" msgstr "mensaje incompleto del cliente" -#: libpq/pqcomm.c:1401 +#: libpq/pqcomm.c:1405 #, c-format msgid "could not send data to client: %m" msgstr "no se pudo enviar datos al cliente: %m" -#: libpq/pqcomm.c:1616 +#: libpq/pqcomm.c:1620 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) falló: código de error %d" -#: libpq/pqcomm.c:1705 +#: libpq/pqcomm.c:1709 #, c-format msgid "setting the keepalive idle time is not supported" msgstr "establecer el tiempo de inactividad para keepalive no está soportado" -#: 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) no está soportado" @@ -15998,7 +16784,7 @@ msgid "no data left in message" msgstr "no hay datos restantes en el mensaje" #: 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" @@ -16014,12 +16800,12 @@ msgstr "cadena no válida en el mensaje" msgid "invalid message format" msgstr "formato de mensaje no válido" -#: main/main.c:236 +#: main/main.c:298 #, c-format msgid "%s: WSAStartup failed: %d\n" msgstr "%s: WSAStartup falló: %d\n" -#: main/main.c:324 +#: main/main.c:386 #, c-format msgid "" "%s is the PostgreSQL server.\n" @@ -16028,7 +16814,7 @@ msgstr "" "%s es el servidor PostgreSQL.\n" "\n" -#: main/main.c:325 +#: main/main.c:387 #, c-format msgid "" "Usage:\n" @@ -16039,109 +16825,109 @@ msgstr "" " %s [OPCION]...\n" "\n" -#: main/main.c:326 +#: main/main.c:388 #, c-format msgid "Options:\n" msgstr "Opciones:\n" -#: main/main.c:327 +#: main/main.c:389 #, c-format msgid " -B NBUFFERS number of shared buffers\n" msgstr " -B NBUFFERS número de búfers de memoria compartida\n" -#: main/main.c:328 +#: main/main.c:390 #, c-format msgid " -c NAME=VALUE set run-time parameter\n" msgstr " -c VAR=VALOR definir parámetro de ejecución\n" -#: main/main.c:329 +#: main/main.c:391 #, c-format msgid " -C NAME print value of run-time parameter, then exit\n" msgstr " -C NOMBRE imprimir valor de parámetro de configuración, luego salir\n" -#: main/main.c:330 +#: main/main.c:392 #, c-format msgid " -d 1-5 debugging level\n" msgstr " -d 1-5 nivel de depuración\n" -#: main/main.c:331 +#: main/main.c:393 #, c-format msgid " -D DATADIR database directory\n" msgstr " -D DATADIR directorio de bases de datos\n" -#: main/main.c:332 +#: main/main.c:394 #, c-format msgid " -e use European date input format (DMY)\n" msgstr " -e usar estilo europeo de fechas (DMY)\n" -#: main/main.c:333 +#: main/main.c:395 #, c-format msgid " -F turn fsync off\n" msgstr " -F desactivar fsync\n" -#: main/main.c:334 +#: main/main.c:396 #, c-format msgid " -h HOSTNAME host name or IP address to listen on\n" msgstr " -h NOMBRE nombre de host o dirección IP en que escuchar\n" -#: main/main.c:335 +#: main/main.c:397 #, c-format msgid " -i enable TCP/IP connections (deprecated)\n" msgstr " -i activar conexiones TCP/IP (obsoleto)\n" -#: main/main.c:336 +#: main/main.c:398 #, c-format msgid " -k DIRECTORY Unix-domain socket location\n" msgstr " -k DIRECTORIO ubicación del socket Unix\n" -#: main/main.c:338 +#: main/main.c:400 #, c-format msgid " -l enable SSL connections\n" msgstr " -l activar conexiones SSL\n" -#: main/main.c:340 +#: main/main.c:402 #, c-format msgid " -N MAX-CONNECT maximum number of allowed connections\n" msgstr " -N MAX-CONN número máximo de conexiones permitidas\n" -#: main/main.c:341 +#: main/main.c:403 #, c-format msgid " -p PORT port number to listen on\n" msgstr " -p PUERTO número de puerto en el cual escuchar\n" -#: main/main.c:342 +#: main/main.c:404 #, c-format msgid " -s show statistics after each query\n" msgstr " -s mostrar estadísticas después de cada consulta\n" -#: main/main.c:343 +#: main/main.c:405 #, c-format msgid " -S WORK-MEM set amount of memory for sorts (in kB)\n" msgstr " -S WORK-MEM definir cantidad de memoria para ordenamientos (en kB)\n" -#: main/main.c:344 +#: main/main.c:406 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de la versión, luego salir\n" -#: main/main.c:345 +#: main/main.c:407 #, c-format msgid " --NAME=VALUE set run-time parameter\n" msgstr " --NOMBRE=VALOR definir parámetro de ejecución\n" -#: main/main.c:346 +#: main/main.c:408 #, c-format msgid " --describe-config describe configuration parameters, then exit\n" msgstr "" " --describe-config\n" " mostrar parámetros de configuración y salir\n" -#: main/main.c:347 +#: main/main.c:409 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help muestra esta ayuda, luego sale\n" -#: main/main.c:349 +#: main/main.c:411 #, c-format msgid "" "\n" @@ -16150,37 +16936,37 @@ msgstr "" "\n" "Opciones de desarrollador:\n" -#: main/main.c:350 +#: 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 impedir el uso de algunos tipos de planes\n" -#: main/main.c:351 +#: main/main.c:413 #, c-format msgid " -O allow system table structure changes\n" msgstr " -O permitir cambios en estructura de tablas de sistema\n" -#: main/main.c:352 +#: main/main.c:414 #, c-format msgid " -P disable system indexes\n" msgstr " -P desactivar índices de sistema\n" -#: main/main.c:353 +#: main/main.c:415 #, c-format msgid " -t pa|pl|ex show timings after each query\n" msgstr " -t pa|pl|ex mostrar tiempos después de cada consulta\n" -#: main/main.c:354 +#: main/main.c:416 #, c-format msgid " -T send SIGABRT to all backend processes if one dies\n" msgstr " -T enviar SIGABRT a todos los procesos backend si uno muere\n" -#: main/main.c:355 +#: main/main.c:417 #, c-format msgid " -W NUM wait NUM seconds to allow attach from a debugger\n" msgstr " -W NÚM espera NÚM segundos para permitir acoplar un depurador\n" -#: main/main.c:357 +#: main/main.c:419 #, c-format msgid "" "\n" @@ -16189,37 +16975,37 @@ msgstr "" "\n" "Opciones para modo mono-usuario:\n" -#: main/main.c:358 +#: main/main.c:420 #, c-format msgid " --single selects single-user mode (must be first argument)\n" msgstr " --single selecciona modo mono-usuario (debe ser el primer argumento)\n" -#: main/main.c:359 +#: main/main.c:421 #, c-format msgid " DBNAME database name (defaults to user name)\n" msgstr " DBNAME nombre de base de datos (el valor por omisión es el nombre de usuario)\n" -#: main/main.c:360 +#: main/main.c:422 #, c-format msgid " -d 0-5 override debugging level\n" msgstr " -d 0-5 nivel de depuración\n" -#: main/main.c:361 +#: main/main.c:423 #, c-format msgid " -E echo statement before execution\n" msgstr " -E mostrar las consultas antes de su ejecución\n" -#: main/main.c:362 +#: main/main.c:424 #, c-format msgid " -j do not use newline as interactive query delimiter\n" msgstr " -j no usar saltos de línea como delimitadores de consulta\n" -#: main/main.c:363 main/main.c:369 +#: main/main.c:425 main/main.c:431 #, c-format msgid " -r FILENAME send stdout and stderr to given file\n" msgstr " -r ARCHIVO enviar salida estándar y de error a ARCHIVO\n" -#: main/main.c:365 +#: main/main.c:427 #, c-format msgid "" "\n" @@ -16228,22 +17014,22 @@ msgstr "" "\n" "Opciones para modo de inicio (bootstrapping):\n" -#: main/main.c:366 +#: main/main.c:428 #, c-format msgid " --boot selects bootstrapping mode (must be first argument)\n" msgstr " --boot selecciona modo de inicio (debe ser el primer argumento)\n" -#: main/main.c:367 +#: main/main.c:429 #, c-format msgid " --check selects check mode (must be first argument)\n" msgstr " --check selecciona modo de verificación (debe ser el primer argumento)\n" -#: main/main.c:368 +#: main/main.c:430 #, c-format msgid " DBNAME database name (mandatory argument in bootstrapping mode)\n" msgstr " DBNAME nombre de base de datos (argumento obligatorio en modo de inicio)\n" -#: main/main.c:371 +#: main/main.c:433 #, c-format msgid "" "\n" @@ -16260,12 +17046,12 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: main/main.c:375 +#: main/main.c:437 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: main/main.c:386 +#: main/main.c:448 #, c-format msgid "" "\"root\" execution of the PostgreSQL server is not permitted.\n" @@ -16279,12 +17065,12 @@ msgstr "" "Vea la documentación para obtener más información acerca de cómo\n" "iniciar correctamente el servidor.\n" -#: main/main.c:403 +#: main/main.c:465 #, c-format msgid "%s: real and effective user IDs must match\n" msgstr "%s: los IDs de usuario real y efectivo deben coincidir\n" -#: main/main.c:410 +#: main/main.c:472 #, c-format msgid "" "Execution of PostgreSQL by a user with administrative permissions is not\n" @@ -16309,15 +17095,15 @@ msgstr "el tipo de nodo extensible «%s» ya existe" msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "ExtensibleNodeMethods «%s» no fue registrado" -#: 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 "la relación «%s» no tiene un tipo compuesto" -#: nodes/nodeFuncs.c:118 nodes/nodeFuncs.c:149 parser/parse_coerce.c:2604 -#: parser/parse_coerce.c:2742 parser/parse_coerce.c:2789 -#: 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:2120 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 "no se pudo encontrar un tipo de array para el tipo de dato %s" @@ -16332,769 +17118,793 @@ msgstr "portal «%s» con parámetros: %s" msgid "unnamed portal with parameters: %s" msgstr "portal sin nombre con parámetros: %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 sólo está soportado con condiciones que se pueden usar con merge join o hash join" -#: optimizer/plan/createplan.c:7175 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1680 +#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1689 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "no se puede ejecutar MERGE en la relación «%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 no puede ser aplicado al lado nulable de un outer join" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1380 parser/analyze.c:1771 parser/analyze.c:2029 -#: parser/analyze.c:3247 +#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 +#: parser/analyze.c:3395 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s no está permitido con UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2121 optimizer/plan/planner.c:4108 +#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 #, c-format msgid "could not implement GROUP BY" msgstr "no se pudo implementar GROUP BY" -#: optimizer/plan/planner.c:2122 optimizer/plan/planner.c:4109 -#: optimizer/plan/planner.c:4790 optimizer/prep/prepunion.c:1320 +#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 +#: optimizer/plan/planner.c:4806 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:4789 +#: optimizer/plan/planner.c:4805 #, c-format msgid "could not implement DISTINCT" msgstr "no se pudo implementar DISTINCT" -#: optimizer/plan/planner.c:6134 +#: optimizer/plan/planner.c:6267 #, c-format msgid "could not implement window PARTITION BY" msgstr "No se pudo implementar PARTITION BY de ventana" -#: optimizer/plan/planner.c:6135 +#: optimizer/plan/planner.c:6268 #, 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:6139 +#: optimizer/plan/planner.c:6272 #, c-format msgid "could not implement window ORDER BY" msgstr "no se pudo implementar ORDER BY de ventana" -#: optimizer/plan/planner.c:6140 +#: optimizer/plan/planner.c:6273 #, 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." -#: optimizer/prep/prepunion.c:467 +#: optimizer/prep/prepunion.c:440 #, c-format msgid "could not implement recursive UNION" msgstr "no se pudo implementar UNION recursivo" -#: optimizer/prep/prepunion.c:468 +#: optimizer/prep/prepunion.c:441 #, c-format msgid "All column datatypes must be hashable." msgstr "Todos los tipos de dato de las columnas deben ser tipos de los que se puedan hacer un hash." -#. 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 "no se pudo implementar %s" -#: optimizer/util/clauses.c:4963 +#: optimizer/util/appendinfo.c:165 +#, c-format +#| msgid "constraint \"%s\" of relation \"%s\" does not exist" +msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" +msgstr "el atributo «%s» de la relación «%s» no coincide con el tipo del padre" + +#: optimizer/util/appendinfo.c:170 +#, c-format +#| msgid "constraint \"%s\" of relation \"%s\" does not exist" +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 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "función SQL «%s», durante expansión en línea" -#: optimizer/util/plancat.c:153 +#: optimizer/util/plancat.c:154 #, c-format msgid "cannot access temporary or unlogged relations during recovery" msgstr "no se puede acceder a tablas temporales o «unlogged» durante la recuperación" -#: optimizer/util/plancat.c:768 +#: optimizer/util/plancat.c:771 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "no están soportadas las especificaciones de inferencia de índice único de registro completo" -#: optimizer/util/plancat.c:785 +#: optimizer/util/plancat.c:788 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "la restricción en la cláusula ON CONFLICT no tiene un índice asociado" -#: optimizer/util/plancat.c:835 +#: optimizer/util/plancat.c:838 #, c-format msgid "ON CONFLICT DO UPDATE not supported with exclusion constraints" msgstr "ON CONFLICT DO UPDATE no está soportado con restricciones de exclusión" -#: optimizer/util/plancat.c:945 +#: optimizer/util/plancat.c:955 #, c-format msgid "there is no unique or exclusion constraint matching the ON CONFLICT specification" msgstr "no hay restricción única o de exclusión que coincida con la especificación 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 "las listas VALUES deben ser todas de la misma longitud" -#: parser/analyze.c:1027 +#: parser/analyze.c:1071 #, c-format msgid "INSERT has more expressions than target columns" msgstr "INSERT tiene más expresiones que columnas de destino" -#: parser/analyze.c:1045 +#: parser/analyze.c:1089 #, c-format msgid "INSERT has more target columns than expressions" msgstr "INSERT tiene más columnas de destino que expresiones" -#: 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 "La fuente de inserción es una expresión de fila que contiene la misma cantidad de columnas que esperaba el INSERT. ¿Usó accidentalmente paréntesis extra?" -#: 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 no está permitido aquí" #. 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:3627 #, c-format msgid "%s cannot be applied to VALUES" msgstr "%s no puede ser aplicado a VALUES" -#: parser/analyze.c:1911 +#: parser/analyze.c:1955 #, c-format msgid "invalid UNION/INTERSECT/EXCEPT ORDER BY clause" msgstr "cláusula UNION/INTERSECT/EXCEPT ORDER BY no válida" -#: parser/analyze.c:1912 +#: parser/analyze.c:1956 #, c-format msgid "Only result column names can be used, not expressions or functions." msgstr "Sólo nombres de columna del resultado pueden usarse, no expresiones o funciones." -#: 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 "Agregue la función o expresión a todos los SELECT, o mueva el UNION dentro de una cláusula FROM." -#: parser/analyze.c:2019 +#: parser/analyze.c:2064 #, c-format msgid "INTO is only allowed on first SELECT of UNION/INTERSECT/EXCEPT" msgstr "sólo se permite INTO en el primer SELECT de 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 "una sentencia miembro de UNION/INSERT/EXCEPT no puede referirse a otras relaciones del mismo nivel de la consulta" -#: parser/analyze.c:2178 +#: parser/analyze.c:2223 #, c-format msgid "each %s query must have the same number of columns" msgstr "cada consulta %s debe tener el mismo número de columnas" -#: parser/analyze.c:2535 +#: parser/analyze.c:2580 #, c-format msgid "SET target columns cannot be qualified with the relation name." msgstr "Las columnas de destino SET no pueden ser calificadas con el nombre de relación." -#: parser/analyze.c:2589 +#. translator: %s is OLD or NEW +#: parser/analyze.c:2668 parser/analyze.c:2678 +#, c-format +#| msgid "NEW TABLE cannot be specified multiple times" +msgid "%s cannot be specified multiple times" +msgstr "%s no se puede especificar varias veces" + +#: parser/analyze.c:2690 parser/parse_relation.c:473 +#, c-format +msgid "table name \"%s\" specified more than once" +msgstr "el nombre de tabla «%s» fue especificado más de una vez" + +#: parser/analyze.c:2738 #, c-format msgid "RETURNING must have at least one column" msgstr "RETURNING debe tener al menos una columna" -#: parser/analyze.c:2692 +#: parser/analyze.c:2840 #, c-format msgid "assignment source returned %d column" msgid_plural "assignment source returned %d columns" msgstr[0] "fuente de asignación retornó %d columna" msgstr[1] "fuente de asignación retornó %d columnas" -#: parser/analyze.c:2753 +#: parser/analyze.c:2901 #, c-format msgid "variable \"%s\" is of type %s but expression is of type %s" msgstr "la variable «%s» es de tipo %s pero la expresión es de tipo %s" #. translator: %s is a SQL keyword -#: parser/analyze.c:2878 parser/analyze.c:2886 +#: parser/analyze.c:3026 parser/analyze.c:3034 #, c-format msgid "cannot specify both %s and %s" msgstr "no se puede especificar %s junto con %s" -#: parser/analyze.c:2906 +#: parser/analyze.c:3054 #, c-format msgid "DECLARE CURSOR must not contain data-modifying statements in WITH" msgstr "DECLARE CURSOR no debe contener sentencias que modifiquen datos en WITH" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:2914 +#: parser/analyze.c:3062 #, c-format msgid "DECLARE CURSOR WITH HOLD ... %s is not supported" msgstr "DECLARE CURSOR WITH HOLD ... %s no está soportado" -#: parser/analyze.c:2917 +#: parser/analyze.c:3065 #, c-format msgid "Holdable cursors must be READ ONLY." msgstr "Los cursores declarados HOLD deben ser READ ONLY." #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:2925 +#: parser/analyze.c:3073 #, c-format msgid "DECLARE SCROLL CURSOR ... %s is not supported" msgstr "DECLARE SCROLL CURSOR ... %s no está soportado" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:2936 +#: parser/analyze.c:3084 #, c-format msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid" msgstr "DECLARE INSENSITIVE CURSOR ... %s no es válido" -#: parser/analyze.c:2939 +#: parser/analyze.c:3087 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "Los cursores insensitivos deben ser READ ONLY." -#: parser/analyze.c:3033 +#: parser/analyze.c:3181 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "las vistas materializadas no deben usar sentencias que modifiquen datos en WITH" -#: parser/analyze.c:3043 +#: parser/analyze.c:3191 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "las vistas materializadas no deben usar tablas temporales o vistas" -#: parser/analyze.c:3053 +#: parser/analyze.c:3201 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "las vistas materializadas no pueden definirse usando parámetros enlazados" -#: parser/analyze.c:3065 +#: parser/analyze.c:3213 #, c-format msgid "materialized views cannot be unlogged" msgstr "las vistas materializadas no pueden ser «unlogged»" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3254 +#: parser/analyze.c:3402 #, c-format msgid "%s is not allowed with DISTINCT clause" msgstr "%s no está permitido con cláusulas DISTINCT" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3261 +#: parser/analyze.c:3409 #, c-format msgid "%s is not allowed with GROUP BY clause" msgstr "%s no está permitido con cláusulas GROUP BY" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3268 +#: parser/analyze.c:3416 #, c-format msgid "%s is not allowed with HAVING clause" msgstr "%s no está permitido con cláusulas HAVING" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3275 +#: parser/analyze.c:3423 #, c-format msgid "%s is not allowed with aggregate functions" msgstr "%s no está permitido con funciones de agregación" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3282 +#: parser/analyze.c:3430 #, c-format msgid "%s is not allowed with window functions" msgstr "%s no está permitido con funciones de ventana deslizante" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3289 +#: parser/analyze.c:3437 #, c-format msgid "%s is not allowed with set-returning functions in the target list" msgstr "%s no está permitido con funciones que retornan conjuntos en la lista de resultados" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3388 +#: parser/analyze.c:3536 #, c-format msgid "%s must specify unqualified relation names" msgstr "%s debe especificar nombres de relaciones sin calificar" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3452 +#: parser/analyze.c:3600 #, c-format msgid "%s cannot be applied to a join" msgstr "%s no puede ser aplicado a un join" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3461 +#: parser/analyze.c:3609 #, c-format msgid "%s cannot be applied to a function" msgstr "%s no puede ser aplicado a una función" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3470 +#: parser/analyze.c:3618 #, c-format msgid "%s cannot be applied to a table function" msgstr "%s no puede ser aplicado a una función de tabla" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3488 +#: parser/analyze.c:3636 #, c-format msgid "%s cannot be applied to a WITH query" msgstr "%s no puede ser aplicado a una consulta WITH" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3497 +#: parser/analyze.c:3645 #, c-format msgid "%s cannot be applied to a named tuplestore" msgstr "%s no puede ser aplicado a un «tuplestore» con nombre" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3517 +#: parser/analyze.c:3665 #, c-format 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:210 parser/parse_oper.c:215 +#: parser/parse_agg.c:215 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:212 +#: parser/parse_agg.c:217 #, 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:270 +#: parser/parse_agg.c:275 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING debe tener menos de 32 argumentos" -#: parser/parse_agg.c:373 +#: parser/parse_agg.c:378 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:375 +#: parser/parse_agg.c:380 msgid "grouping operations are not allowed in JOIN conditions" msgstr "no se permiten las operaciones «grouping» en condiciones JOIN" -#: parser/parse_agg.c:385 +#: parser/parse_agg.c:390 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:387 +#: parser/parse_agg.c:392 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:392 +#: parser/parse_agg.c:397 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:394 +#: parser/parse_agg.c:399 msgid "grouping operations are not allowed in functions in FROM" msgstr "no se permiten operaciones «grouping» en funciones en FROM" -#: parser/parse_agg.c:402 +#: parser/parse_agg.c:407 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:404 +#: parser/parse_agg.c:409 msgid "grouping operations are not allowed in policy expressions" msgstr "no se permiten operaciones «grouping» en expresiones de políticas" -#: parser/parse_agg.c:421 +#: parser/parse_agg.c:426 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:423 +#: parser/parse_agg.c:428 msgid "grouping operations are not allowed in window RANGE" msgstr "no se permiten operaciones «grouping» en RANGE de ventana deslizante" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:433 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:430 +#: parser/parse_agg.c:435 msgid "grouping operations are not allowed in window ROWS" msgstr "no se permiten operaciones «grouping» en ROWS de ventana deslizante" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:440 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:437 +#: parser/parse_agg.c:442 msgid "grouping operations are not allowed in window GROUPS" msgstr "no se permiten operaciones «grouping» en GROUPS de ventana deslizante" -#: parser/parse_agg.c:450 +#: parser/parse_agg.c:455 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:452 +#: parser/parse_agg.c:457 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "no se permiten operaciones «grouping» en condiciones MERGE WHEN" -#: parser/parse_agg.c:479 +#: parser/parse_agg.c:484 msgid "aggregate functions are not allowed in check constraints" msgstr "no se permiten funciones de agregación en restricciones «check»" -#: parser/parse_agg.c:481 +#: parser/parse_agg.c:486 msgid "grouping operations are not allowed in check constraints" msgstr "no se permiten operaciones «grouping» en restricciones «check»" -#: parser/parse_agg.c:488 +#: parser/parse_agg.c:493 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "no se permiten funciones de agregación en expresiones DEFAULT" -#: parser/parse_agg.c:490 +#: parser/parse_agg.c:495 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "no se permiten operaciones «grouping» en expresiones DEFAULT" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:500 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:497 +#: parser/parse_agg.c:502 msgid "grouping operations are not allowed in index expressions" msgstr "no se permiten operaciones «grouping» en expresiones de índice" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:507 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:504 +#: parser/parse_agg.c:509 msgid "grouping operations are not allowed in index predicates" msgstr "no se permiten operaciones «grouping» en predicados de índice" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:514 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:511 +#: parser/parse_agg.c:516 msgid "grouping operations are not allowed in statistics expressions" msgstr "no se permiten operaciones «grouping» en expresiones de estadísticas" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:521 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:518 +#: parser/parse_agg.c:523 msgid "grouping operations are not allowed in transform expressions" msgstr "no se permiten operaciones «grouping» en expresiones de transformación" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:528 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:525 +#: parser/parse_agg.c:530 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "no se permiten operaciones «grouping» en parámetros a EXECUTE" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:535 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:532 +#: parser/parse_agg.c:537 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:537 +#: parser/parse_agg.c:542 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:539 +#: parser/parse_agg.c:544 msgid "grouping operations are not allowed in partition bound" msgstr "no se permiten operaciones «grouping» en borde de partición" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:549 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:546 +#: parser/parse_agg.c:551 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:552 +#: parser/parse_agg.c:557 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:554 +#: parser/parse_agg.c:559 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:560 +#: parser/parse_agg.c:565 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:562 +#: parser/parse_agg.c:567 msgid "grouping operations are not allowed in CALL arguments" msgstr "no se permiten operaciones «grouping» en argumentos de CALL" -#: parser/parse_agg.c:568 +#: parser/parse_agg.c:573 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:570 +#: parser/parse_agg.c:575 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:597 parser/parse_clause.c:1962 +#: parser/parse_agg.c:602 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:600 +#: parser/parse_agg.c:605 #, c-format msgid "grouping operations are not allowed in %s" msgstr "no se permiten operaciones «grouping» en %s" -#: parser/parse_agg.c:701 +#: parser/parse_agg.c:706 #, 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:779 +#: parser/parse_agg.c:784 #, 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:780 parser/parse_expr.c:1762 parser/parse_expr.c:2245 +#: parser/parse_agg.c:785 parser/parse_expr.c:1762 parser/parse_expr.c:2255 #: 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:785 +#: parser/parse_agg.c:790 #, 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:864 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in JOIN conditions" msgstr "no se permiten funciones de ventana deslizante en condiciones JOIN" -#: parser/parse_agg.c:871 +#: parser/parse_agg.c:902 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:877 +#: parser/parse_agg.c:908 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:890 +#: parser/parse_agg.c:921 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:901 +#: parser/parse_agg.c:932 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:926 +#: parser/parse_agg.c:957 msgid "window functions are not allowed in check constraints" msgstr "no se permiten funciones de ventana deslizante en restricciones «check»" -#: parser/parse_agg.c:930 +#: parser/parse_agg.c:961 msgid "window functions are not allowed in DEFAULT expressions" msgstr "no se permiten funciones de ventana deslizante en expresiones DEFAULT" -#: parser/parse_agg.c:933 +#: parser/parse_agg.c:964 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:936 +#: parser/parse_agg.c:967 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:939 +#: parser/parse_agg.c:970 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:942 +#: parser/parse_agg.c:973 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:945 +#: parser/parse_agg.c:976 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:948 +#: parser/parse_agg.c:979 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:951 +#: parser/parse_agg.c:982 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:954 +#: parser/parse_agg.c:985 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:957 +#: parser/parse_agg.c:988 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:960 +#: parser/parse_agg.c:991 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:963 +#: parser/parse_agg.c:994 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:986 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1017 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:1020 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "la ventana «%s» no existe" -#: parser/parse_agg.c:1108 +#: parser/parse_agg.c:1141 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "demasiados conjuntos «grouping» presentes (máximo 4096)" -#: parser/parse_agg.c:1248 +#: parser/parse_agg.c:1302 #, 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:1441 +#: parser/parse_agg.c:1525 #, 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:1444 +#: parser/parse_agg.c:1528 #, 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:1449 +#: parser/parse_agg.c:1533 #, 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:1613 +#: parser/parse_agg.c:1698 #, 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" -#: parser/parse_clause.c:193 +#: parser/parse_clause.c:191 #, c-format msgid "relation \"%s\" cannot be the target of a modifying statement" msgstr "relación «%s» no puede ser destino de una sentencia modificadora" -#: 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 "las funciones que retornan conjuntos deben aparecer en el nivel más externo del 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 "no se permiten múltiples definiciones de columnas para la misma función" -#: 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() con varias funciones no puede tener una lista de definición de columnas" -#: 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 "Ponga una lista de columnas separada para cada función dentro de 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() con varios argumentos no puede tener una lista de definición de columnas" -#: 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 "Use llamadas a UNNEST() separadas dentro de ROWS FROM() y adjunte una lista de columnas a cada una." -#: 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 no puede usarse con una lista de definición de columnas" -#: parser/parse_clause.c:658 +#: parser/parse_clause.c:656 #, c-format msgid "Put the column definition list inside ROWS FROM()." msgstr "Ponga una lista de columnas dentro de 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 "sólo se permite una columna FOR ORDINALITY" -#: parser/parse_clause.c:823 +#: parser/parse_clause.c:821 #, c-format msgid "column name \"%s\" is not unique" msgstr "el nombre de columna «%s» no es único" -#: parser/parse_clause.c:865 +#: parser/parse_clause.c:863 #, c-format msgid "namespace name \"%s\" is not unique" msgstr "el espacio de nombres «%s» no es único" -#: parser/parse_clause.c:875 +#: parser/parse_clause.c:873 #, c-format msgid "only one default namespace is allowed" msgstr "sólo se permite un espacio de nombres predeterminado" -#: parser/parse_clause.c:935 +#: parser/parse_clause.c:933 #, c-format msgid "tablesample method %s does not exist" msgstr "no existe el método de tablesample «%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" msgstr[0] "el método de tablesample «%s» requiere %d argumento, no %d" msgstr[1] "el método de tablesample «%s» requiere %d argumentos, no %d" -#: parser/parse_clause.c:991 +#: parser/parse_clause.c:989 #, c-format msgid "tablesample method %s does not support REPEATABLE" msgstr "el método de tablesample «%s» no soporta la opción 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 "la cláusula TABLESAMPLE sólo puede aplicarse a tablas y vistas materializadas" -#: parser/parse_clause.c:1331 +#: parser/parse_clause.c:1329 #, c-format msgid "column name \"%s\" appears more than once in USING clause" msgstr "la columna «%s» aparece más de una vez en la cláusula 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 "la columna común «%s» aparece más de una vez en la tabla izquierda" -#: 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 "la columna «%s» especificada en la cláusula USING no existe en la tabla izquierda" -#: 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 "la columna común «%s» aparece más de una vez en la tabla derecha" -#: 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 "la columna «%s» especificada en la cláusula USING no existe en la tabla derecha" @@ -17233,184 +18043,184 @@ msgstr "el operador «%s» no es un operador válido de ordenamiento" msgid "Ordering operators must be \"<\" or \">\" members of btree operator families." msgstr "Los operadores de ordenamiento deben ser miembros «<» o «>» de una familia de operadores 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 con desplazamiento PRECEDING/FOLLOWING no está soportado para la columna de tipo %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 con desplazamiento PRECEDING/FOLLOWING no está soportado para la columna de tipo %s y tipo de desplazamiento %s" -#: parser/parse_clause.c:3784 +#: parser/parse_clause.c:3787 #, c-format msgid "Cast the offset value to an appropriate type." msgstr "Convierta el valor de desplazamiento a un tipo apropiado." -#: 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 con desplazamiento PRECEDING/FOLLOWING tiene múltiples interpretaciones para la columna de tipo %s y tipo de desplazamiento %s" -#: parser/parse_clause.c:3792 +#: parser/parse_clause.c:3795 #, c-format msgid "Cast the offset value to the exact intended type." msgstr "Convierta el valor de desplazamiento al tipo deseado exacto." -#: 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:2154 parser/parse_expr.c:2774 parser/parse_expr.c:3425 +#: parser/parse_expr.c:3654 parser/parse_target.c:1001 #, c-format msgid "cannot cast type %s to %s" msgstr "no se puede convertir el tipo %s a %s" -#: parser/parse_coerce.c:1091 +#: parser/parse_coerce.c:1089 #, c-format msgid "Input has too few columns." msgstr "La entrada tiene muy pocas columnas." -#: parser/parse_coerce.c:1109 +#: parser/parse_coerce.c:1107 #, c-format msgid "Cannot cast type %s to %s in column %d." msgstr "No se puede convertir el tipo %s a %s en la columna %d." -#: parser/parse_coerce.c:1124 +#: parser/parse_coerce.c:1122 #, c-format msgid "Input has too many columns." msgstr "La entrada tiene demasiadas columnas." #. 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 "el argumento de %s debe ser de tipo %s, no tipo %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 "el argumento de %s no debe retornar un conjunto" #. translator: first %s is name of a SQL construct, eg CASE -#: parser/parse_coerce.c:1420 +#: parser/parse_coerce.c:1418 #, c-format msgid "%s types %s and %s cannot be matched" msgstr "los tipos %2$s y %3$s no son coincidentes en %1$s" -#: parser/parse_coerce.c:1536 +#: parser/parse_coerce.c:1534 #, c-format msgid "argument types %s and %s cannot be matched" msgstr "los tipos de argumento %s y %s no pueden hacerse coincidir" #. translator: first %s is name of a SQL construct, eg CASE -#: parser/parse_coerce.c:1588 +#: parser/parse_coerce.c:1586 #, c-format msgid "%s could not convert type %s to %s" msgstr "%s no pudo convertir el tipo %s a %s" -#: parser/parse_coerce.c:2191 parser/parse_coerce.c:2211 -#: parser/parse_coerce.c:2231 parser/parse_coerce.c:2252 -#: parser/parse_coerce.c:2307 parser/parse_coerce.c:2341 +#: 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 "los argumentos declarados «%s» no son de tipos compatibles" -#: parser/parse_coerce.c:2286 parser/parse_coerce.c:2399 +#: 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 "el argumento declarado %s no es un array sino de tipo %s" -#: parser/parse_coerce.c:2319 parser/parse_coerce.c:2469 +#: 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 "el argumento declarado %s no es un tipo de rango sino tipo %s" -#: parser/parse_coerce.c:2353 parser/parse_coerce.c:2433 -#: parser/parse_coerce.c:2566 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 "el argumento declarado %s no es un tipo de multirango sino tipo %s" -#: parser/parse_coerce.c:2390 +#: parser/parse_coerce.c:2388 #, c-format msgid "cannot determine element type of \"anyarray\" argument" msgstr "no se puede determinar el tipo del argumento «anyarray»" -#: parser/parse_coerce.c:2416 parser/parse_coerce.c:2447 -#: parser/parse_coerce.c:2486 parser/parse_coerce.c:2552 +#: 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 "el argumento declarado %s no es consistente con el argumento declarado %s" -#: parser/parse_coerce.c:2511 +#: parser/parse_coerce.c:2509 #, c-format msgid "could not determine polymorphic type because input has type %s" msgstr "no se pudo determinar el tipo polimórfico porque la entrada es de tipo %s" -#: parser/parse_coerce.c:2525 +#: parser/parse_coerce.c:2523 #, c-format msgid "type matched to anynonarray is an array type: %s" msgstr "el argumento emparejado con anynonarray es un array: %s" -#: parser/parse_coerce.c:2535 +#: parser/parse_coerce.c:2533 #, c-format msgid "type matched to anyenum is not an enum type: %s" msgstr "el tipo emparejado con anyenum no es un tipo enum: %s" -#: parser/parse_coerce.c:2596 +#: parser/parse_coerce.c:2594 #, c-format msgid "arguments of anycompatible family cannot be cast to a common type" msgstr "los argumentos de la familia anycompatible no pueden ser convertidos a un tipo común" -#: parser/parse_coerce.c:2614 parser/parse_coerce.c:2635 -#: parser/parse_coerce.c:2685 parser/parse_coerce.c:2690 -#: parser/parse_coerce.c:2754 parser/parse_coerce.c:2766 +#: 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 "no se pudo determinar el tipo polimórfico %s porque la entrada es de tipo %s" -#: parser/parse_coerce.c:2624 +#: parser/parse_coerce.c:2622 #, c-format msgid "anycompatiblerange type %s does not match anycompatible type %s" msgstr "el tipo anycompatiblerange %s no coincide con el tipo anycompatible %s" -#: parser/parse_coerce.c:2645 +#: parser/parse_coerce.c:2643 #, c-format msgid "anycompatiblemultirange type %s does not match anycompatible type %s" msgstr "el tipo anycompatiblemultirange %s no coincide con el tipo anycompatible %s" -#: parser/parse_coerce.c:2659 +#: parser/parse_coerce.c:2657 #, c-format msgid "type matched to anycompatiblenonarray is an array type: %s" msgstr "el argumento emparejado a anycompatiblenonarray es un array: %s" -#: parser/parse_coerce.c:2894 +#: parser/parse_coerce.c:2892 #, c-format msgid "A result of type %s requires at least one input of type anyrange or anymultirange." msgstr "Un resultado de tipo %s requiere al menos una entrada de tipo anyrange o anymultirange." -#: parser/parse_coerce.c:2911 +#: parser/parse_coerce.c:2909 #, c-format msgid "A result of type %s requires at least one input of type anycompatiblerange or anycompatiblemultirange." msgstr "Un resultado de tipo %s requiere al menos una entrada de tipo anycompatiblerange o anycompatiblemultirange." -#: parser/parse_coerce.c:2923 +#: 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 "Un resultado de tipo %s requiere al menos una entrada de tipo anyelement, anyarray, anynonarray, anyenum, anyrange o anymultirange." -#: parser/parse_coerce.c:2935 +#: 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 "Un resultado de tipo %s requiere al menos una entrada de tipo anycompatible, anycompatiblearray, anycompatiblenonarray, anycompatiblerange o anycompatiblemultirange." -#: parser/parse_coerce.c:2965 +#: parser/parse_coerce.c:2963 msgid "A result of type internal requires at least one input of type internal." msgstr "Un resultado de tipo internal requiere al menos una entrada de tipo internal." @@ -17456,211 +18266,211 @@ msgstr "la referencia recursiva a la consulta «%s» no debe aparecer dentro de msgid "recursive reference to query \"%s\" must not appear within EXCEPT" msgstr "la referencia recursiva a la consulta «%s» no debe aparecer dentro de EXCEPT" -#: parser/parse_cte.c:136 +#: parser/parse_cte.c:137 #, c-format msgid "WITH query name \"%s\" specified more than once" msgstr "el nombre de consulta WITH «%s» fue especificado más de una vez" -#: parser/parse_cte.c:308 +#: parser/parse_cte.c:309 #, c-format msgid "could not identify an inequality operator for type %s" msgstr "no se pudo identificar un operador de desigualdad para el tipo %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 "la cláusula WITH que contiene las sentencias que modifican datos debe estar en el nivel más externo" -#: 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 "la columna %2$d en la consulta recursiva «%1$s» tiene tipo %3$s en el término no recursivo, pero %4$s en general" -#: 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 "Aplique una conversión de tipo a la salida del término no recursivo al tipo correcto." -#: 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 "la columna %2$d en la consulta recursiva «%1$s» tiene ordenamiento (collation) %3$s en el término no recursivo, pero %4$s en general" -#: 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 "Use la clásula COLLATE para definir el ordenamiento del término no-recursivo." -#: parser/parse_cte.c:420 +#: parser/parse_cte.c:421 #, c-format msgid "WITH query is not recursive" msgstr "la consulta WITH no es recursiva" -#: 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 "con una cláusula SEARCH o CYCLE, el lado izquierdo de UNION debe ser un 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 "con una cláusula SEARCH o CYCLE, el lado derecho de UNION debe ser un SELECT" -#: parser/parse_cte.c:471 +#: parser/parse_cte.c:472 #, c-format msgid "search column \"%s\" not in WITH query column list" msgstr "columna de búsqueda «%s» no se encuentra en la lista de columnas de la consulta WITH" -#: parser/parse_cte.c:478 +#: parser/parse_cte.c:479 #, c-format msgid "search column \"%s\" specified more than once" msgstr "columna de búsqueda «%s» fue especificada más de una vez" -#: 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 "el nombre para la columna de secuencia de búsqueda «%s» ya ha sido utilizado en la lista de columnas de la consulta WITH" -#: parser/parse_cte.c:504 +#: parser/parse_cte.c:505 #, c-format msgid "cycle column \"%s\" not in WITH query column list" msgstr "la columna de ciclo «%s» no se encuentra en la lista de columnas de la consulta WITH" -#: parser/parse_cte.c:511 +#: parser/parse_cte.c:512 #, c-format msgid "cycle column \"%s\" specified more than once" msgstr "columna de ciclo «%s» fue especificada más de una vez" -#: 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 "el nombre para la columna de marca de ciclo «%s» ya ha sido utilizada en la lista de columnas de la consulta 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 "el nombre para la columna de ruta de ciclo «%s» ya ha sido utilizada en la lista de columnas de la consulta 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 "el nombre para la columna de marca de ciclo es igual que el nombre para la columna de ruta de ciclo" -#: 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 "el nombre para la columna de secuencia de búsqueda es igual que el nombre para la columna de marca de ciclo" -#: 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 "el nombre para la columna de secuencia de búsqueda es igual que el nombre para la columna de ruta de ciclo" -#: 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 "la consulta WITH «%s» tiene %d columnas disponibles pero se especificaron %d" -#: parser/parse_cte.c:816 +#: parser/parse_cte.c:882 #, c-format msgid "mutual recursion between WITH items is not implemented" msgstr "la recursión mutua entre elementos de WITH no está implementada" -#: parser/parse_cte.c:868 +#: parser/parse_cte.c:934 #, c-format msgid "recursive query \"%s\" must not contain data-modifying statements" msgstr "la consulta recursiva «%s» no debe contener sentencias que modifiquen datos" -#: 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 "la consulta recursiva «%s» no tiene la forma término-no-recursivo UNION [ALL] término-recursivo" -#: 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 no está implementado en una consulta recursiva" -#: parser/parse_cte.c:917 +#: parser/parse_cte.c:983 #, c-format msgid "OFFSET in a recursive query is not implemented" msgstr "OFFSET no está implementado en una consulta recursiva" -#: parser/parse_cte.c:923 +#: parser/parse_cte.c:989 #, c-format msgid "LIMIT in a recursive query is not implemented" msgstr "LIMIT no está implementado en una consulta recursiva" -#: 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 no está implementado en una consulta recursiva" -#: 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 "la referencia recursiva a la consulta «%s» no debe aparecer más de una vez" -#: parser/parse_expr.c:313 +#: parser/parse_expr.c:311 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "DEFAULT no está permitido en este contexto" -#: 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: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 #, c-format msgid "column %s.%s does not exist" msgstr "no existe la columna %s.%s" -#: parser/parse_expr.c:418 +#: parser/parse_expr.c:416 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "la columna «%s» no fue encontrado en el tipo %s" -#: parser/parse_expr.c:424 +#: parser/parse_expr.c:422 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "no se pudo identificar la columna «%s» en el tipo de dato record" -#: parser/parse_expr.c:430 +#: parser/parse_expr.c:428 #, c-format msgid "column notation .%s applied to type %s, which is not a composite type" msgstr "la notación de columna .%s fue aplicada al tipo %s, que no es un tipo compuesto" -#: parser/parse_expr.c:461 parser/parse_target.c:732 +#: parser/parse_expr.c:459 parser/parse_target.c:735 #, c-format msgid "row expansion via \"*\" is not supported here" msgstr "la expansión de filas a través de «*» no está soportado aquí" -#: parser/parse_expr.c:584 +#: parser/parse_expr.c:582 msgid "cannot use column reference in DEFAULT expression" msgstr "no se pueden usar referencias a columnas en una cláusula DEFAULT" -#: parser/parse_expr.c:587 +#: parser/parse_expr.c:585 msgid "cannot use column reference in partition bound expression" msgstr "no se pueden usar referencias a columnas en expresión de borde de partición" -#: parser/parse_expr.c:846 parser/parse_relation.c:833 -#: parser/parse_relation.c:915 parser/parse_target.c:1238 +#: parser/parse_expr.c:844 parser/parse_relation.c:848 +#: parser/parse_relation.c:930 parser/parse_target.c:1241 #, c-format msgid "column reference \"%s\" is ambiguous" msgstr "la referencia a la columna «%s» es ambigua" -#: 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:900 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 "no hay parámetro $%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:1101 parser/parse_expr.c:3085 #, 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:1109 parser/parse_expr.c:3072 +#: parser/parse_expr.c:1107 parser/parse_expr.c:3092 #, c-format msgid "%s must not return a set" msgstr "%s no debe retornar un conjunto" @@ -17681,7 +18491,7 @@ msgid "source for a multiple-column UPDATE item must be a sub-SELECT or ROW() ex 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:1760 parser/parse_expr.c:2243 parser/parse_func.c:2679 +#: parser/parse_expr.c:1760 parser/parse_expr.c:2253 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" @@ -17738,7 +18548,7 @@ msgstr "no se puede usar una subconsulta en la condición WHERE de COPY FROM" 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:1914 parser/parse_expr.c:3764 +#: parser/parse_expr.c:1914 parser/parse_expr.c:3784 #, c-format msgid "subquery must return only one column" msgstr "la subconsulta debe retornar sólo una columna" @@ -17753,184 +18563,182 @@ msgstr "la subconsulta tiene demasiadas columnas" msgid "subquery has too few columns" msgstr "la subconsulta tiene muy pocas columnas" -#: parser/parse_expr.c:2086 +#: parser/parse_expr.c:2094 #, 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:2087 +#: parser/parse_expr.c:2095 #, 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:2101 +#: parser/parse_expr.c:2109 #, 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:2184 +#: parser/parse_expr.c:2194 #, 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:2389 +#: parser/parse_expr.c:2399 #, 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:2390 +#: parser/parse_expr.c:2400 #, 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:2405 +#: parser/parse_expr.c:2415 #, 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:2513 +#: parser/parse_expr.c:2523 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "no se puede convertir el resultado de XMLSERIALIZE a %s" -#: parser/parse_expr.c:2827 parser/parse_expr.c:3023 +#: parser/parse_expr.c:2847 parser/parse_expr.c:3043 #, c-format msgid "unequal number of entries in row expressions" msgstr "número desigual de entradas en expresiones de registro" -#: parser/parse_expr.c:2837 +#: parser/parse_expr.c:2857 #, c-format msgid "cannot compare rows of zero length" msgstr "no se pueden comparar registros de largo cero" -#: parser/parse_expr.c:2862 +#: parser/parse_expr.c:2882 #, 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:2869 +#: parser/parse_expr.c:2889 #, 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:2928 parser/parse_expr.c:2969 +#: parser/parse_expr.c:2948 parser/parse_expr.c:2989 #, 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:2930 +#: parser/parse_expr.c:2950 #, 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:2971 +#: parser/parse_expr.c:2991 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Hay múltiples candidatos igualmente plausibles." -#: parser/parse_expr.c:3306 +#: parser/parse_expr.c:3326 #, 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:3370 +#: parser/parse_expr.c:3390 #, 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:3371 +#: parser/parse_expr.c:3391 #, 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:3460 +#: parser/parse_expr.c:3480 #, 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:3473 +#: parser/parse_expr.c:3493 #, 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:3478 +#: parser/parse_expr.c:3498 #, c-format msgid "unsupported JSON encoding" msgstr "codificación JSON no soportada" -#: parser/parse_expr.c:3479 +#: parser/parse_expr.c:3499 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Sólo la codificación JSON UTF8 está soportada." -#: parser/parse_expr.c:3516 +#: parser/parse_expr.c:3536 #, 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:3521 +#: parser/parse_expr.c:3541 #, 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:3849 parser/parse_func.c:866 +#: parser/parse_expr.c:3869 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:4072 +#: parser/parse_expr.c:4092 #, 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:4092 +#: parser/parse_expr.c:4112 #, 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:4118 parser/parse_expr.c:4239 +#: parser/parse_expr.c:4138 parser/parse_expr.c:4259 #, c-format -#| msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" 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:4120 +#: parser/parse_expr.c:4140 #, c-format -#| msgid "Try returning a string type or bytea." msgid "Try returning json or jsonb." msgstr "Intente retornando tipo json o jsonb." -#: parser/parse_expr.c:4168 +#: parser/parse_expr.c:4188 #, 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:4242 +#: parser/parse_expr.c:4262 #, c-format msgid "Try returning a string type or bytea." msgstr "Intente retornando un tipo de string o bytea." -#: parser/parse_expr.c:4307 +#: parser/parse_expr.c:4327 #, 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:4320 +#: parser/parse_expr.c:4340 #, 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:4334 parser/parse_expr.c:4363 parser/parse_expr.c:4394 -#: parser/parse_expr.c:4420 parser/parse_expr.c:4446 -#: parser/parse_jsontable.c:94 +#: 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 #, c-format msgid "invalid %s behavior" 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:4337 parser/parse_expr.c:4366 +#: parser/parse_expr.c:4357 parser/parse_expr.c:4386 #, 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." @@ -17938,68 +18746,68 @@ 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:4344 parser/parse_expr.c:4373 parser/parse_expr.c:4402 -#: parser/parse_expr.c:4430 parser/parse_expr.c:4456 +#: 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 #, 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:4347 parser/parse_expr.c:4376 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 #, 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:4395 +#: parser/parse_expr.c:4415 #, 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:4405 +#: parser/parse_expr.c:4425 #, 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:4423 parser/parse_expr.c:4449 +#: parser/parse_expr.c:4443 parser/parse_expr.c:4469 #, 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:4433 parser/parse_expr.c:4459 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #, 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:4489 +#: parser/parse_expr.c:4509 #, 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:4707 +#: parser/parse_expr.c:4727 #, 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:4712 +#: parser/parse_expr.c:4732 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "las expresiones DEFAULT no pueden contener referencias a columnas" -#: parser/parse_expr.c:4717 +#: parser/parse_expr.c:4737 #, c-format msgid "DEFAULT expression must not return a set" msgstr "las expresiones DEFAULT no deben retornar un conjunto" -#: parser/parse_expr.c:4793 parser/parse_expr.c:4802 +#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 #, 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:4796 +#: parser/parse_expr.c:4816 #, 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." @@ -18338,12 +19146,12 @@ msgstr "no se permiten funciones que retornan conjuntos en las condiciones WHERE msgid "set-returning functions are not allowed in column generation expressions" msgstr "no se permiten funciones que retornan conjuntos en expresiones de generación de columna" -#: 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 "Sólo EMPTY [ ARRAY ] o ERROR son permitidos en la cláusula ON ERROR de nivel superior." -#: 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 "nombre de columna o de “path” duplicada en JSON_TABLE: %s" @@ -18423,229 +19231,224 @@ msgstr "op ANY/ALL (array) requiere un operador que entregue boolean" msgid "op ANY/ALL (array) requires operator not to return a set" msgstr "op ANY/ALL (array) requiere un operador que no retorne un conjunto" -#: parser/parse_param.c:221 +#: parser/parse_param.c:222 #, c-format msgid "inconsistent types deduced for parameter $%d" msgstr "para el parámetro $%d se dedujeron tipos de dato inconsistentes" -#: 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 "no se pudo determinar el tipo del parámetro $%d" -#: parser/parse_relation.c:221 +#: parser/parse_relation.c:226 #, c-format msgid "table reference \"%s\" is ambiguous" msgstr "la referencia a la tabla «%s» es ambigua" -#: parser/parse_relation.c:265 +#: parser/parse_relation.c:273 #, c-format msgid "table reference %u is ambiguous" msgstr "la referencia a la tabla %u es ambigua" -#: parser/parse_relation.c:465 -#, c-format -msgid "table name \"%s\" specified more than once" -msgstr "el nombre de tabla «%s» fue especificado más de una vez" - -#: 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 "referencia a la entrada de la cláusula FROM para la tabla «%s» no válida" -#: 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 "Hay una entrada para la tabla «%s», pero no puede ser referenciada desde esta parte de la consulta." -#: 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 "El tipo de JOIN debe ser INNER o LEFT para una referencia LATERAL." -#: parser/parse_relation.c:703 +#: parser/parse_relation.c:711 #, c-format msgid "system column \"%s\" reference in check constraint is invalid" msgstr "la referencia a columna a sistema «%s» en una restricción check no es válida" -#: parser/parse_relation.c:712 +#: parser/parse_relation.c:724 #, c-format msgid "cannot use system column \"%s\" in column generation expression" msgstr "no se puede usar la columna de sistema «%s» en una expresión de generación de columna" -#: parser/parse_relation.c:723 +#: parser/parse_relation.c:735 #, c-format msgid "cannot use system column \"%s\" in MERGE WHEN condition" msgstr "no se puede usar la columna de sistema «%s» en condición 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 "la tabla «%s» tiene %d columnas pero se especificaron %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 "Hay un elemento WITH llamado «%s», pero no puede ser referenciada desde esta parte de la consulta." -#: 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 "Use WITH RECURSIVE, o reordene los elementos de WITH para eliminar referencias hacia adelante." -#: 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 "una lista de definición de columnas es redundante para una función con parámetros 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 "una lista de definición de columnas es redundante para una función que retorna un tipo compuesto especificado" -#: 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 "sólo se permite una lista de definición de columnas en funciones que retornan «record»" -#: parser/parse_relation.c:1857 +#: parser/parse_relation.c:1874 #, c-format msgid "a column definition list is required for functions returning \"record\"" msgstr "la lista de definición de columnas es obligatoria para funciones que retornan «record»" -#: parser/parse_relation.c:1894 +#: parser/parse_relation.c:1911 #, c-format msgid "column definition lists can have at most %d entries" msgstr "las listas de definición de columnas pueden tener a lo más %d entradas" -#: parser/parse_relation.c:1954 +#: parser/parse_relation.c:1971 #, c-format msgid "function \"%s\" in FROM has unsupported return type %s" msgstr "la función «%s» en FROM tiene el tipo de retorno no soportado %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 "las funciones en FROM pueden tener a lo más %d columnas" -#: parser/parse_relation.c:2096 +#: parser/parse_relation.c:2113 #, c-format msgid "%s function has %d columns available but %d columns specified" msgstr "la función %s tiene %d columnas disponibles pero se especificaron %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 "la lista VALUES «%s» tiene %d columnas disponibles pero se especificaron %d" -#: parser/parse_relation.c:2242 +#: parser/parse_relation.c:2259 #, c-format msgid "joins can have at most %d columns" msgstr "los joins pueden tener a lo más %d columnas" -#: 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 "la expresión de join «%s» tiene %d columnas disponibles pero se especificaron %d" -#: parser/parse_relation.c:2357 +#: parser/parse_relation.c:2375 #, c-format msgid "WITH query \"%s\" does not have a RETURNING clause" msgstr "la consulta WITH «%s» no tiene una cláusula RETURNING" -#: parser/parse_relation.c:3635 +#: parser/parse_relation.c:3741 #, c-format msgid "Perhaps you meant to reference the table alias \"%s\"." msgstr "Probablemente quiera hacer referencia al alias de la tabla «%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 "Para hacer referencia a esa tabla, debe marcar esta subconsulta con LATERAL." -#: parser/parse_relation.c:3653 +#: parser/parse_relation.c:3759 #, c-format msgid "missing FROM-clause entry for table \"%s\"" msgstr "falta una entrada para la tabla «%s» en la cláusula 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 "Hay columnas llamadas «%s», pero están en tablas que no pueden ser referenciadas desde esta parte de la consulta." -#: parser/parse_relation.c:3695 +#: parser/parse_relation.c:3801 #, c-format msgid "Try using a table-qualified name." msgstr "Intente usar un nombre calificado con nombre de tabla." -#: 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 "Hay una columna llamada «%s» en la tabla «%s», pero no puede ser referenciada desde esta parte de la consulta." -#: 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 "Para hacer referencia a esa columna, debe marcar esta subconsulta con 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 "Para hacer referencia a esa columna, debe usar un nombre calificado con nombre de tabla." -#: parser/parse_relation.c:3728 +#: parser/parse_relation.c:3834 #, c-format msgid "Perhaps you meant to reference the column \"%s.%s\"." msgstr "Probablemente quiera hacer referencia a la columna «%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 "Probablemente quiera hacer referencia a la columna «%s.%s» o la columna «%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 "no se puede asignar a la columna de sistema «%s»" -#: parser/parse_target.c:508 +#: parser/parse_target.c:511 #, c-format msgid "cannot set an array element to DEFAULT" msgstr "no se puede definir un elemento de array a DEFAULT" -#: parser/parse_target.c:513 +#: parser/parse_target.c:516 #, c-format msgid "cannot set a subfield to DEFAULT" msgstr "no se puede definir un subcampo a 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 "la columna «%s» es de tipo %s pero la expresión es de tipo %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 "no se puede asignar al campo «%s» de la columna «%s» porque su tipo %s no es un tipo compuesto" -#: 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 "no se puede asignar al campo «%s» de la columna «%s» porque no existe esa columna en el tipo de dato %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 "la asignación subindexada a «%s» requiere tipo %s pero la expresión es de tipo %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 "el subcampo «%s» es de tipo %s pero la expresión es de tipo %s" -#: parser/parse_target.c:1327 +#: parser/parse_target.c:1330 #, c-format msgid "SELECT * with no tables specified is not valid" msgstr "SELECT * sin especificar tablas no es válido" @@ -18665,8 +19468,8 @@ msgstr "la referencia a %%TYPE es inapropiada (demasiados nombres con punto): %s msgid "type reference %s converted to %s" msgstr "la referencia al tipo %s convertida a %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 "el tipo «%s» está inconcluso" @@ -18686,330 +19489,365 @@ msgstr "los modificadores de tipo deben ser constantes simples o identificadores msgid "invalid type name \"%s\"" msgstr "el nombre de tipo «%s» no es válido" -#: parser/parse_utilcmd.c:263 +#: parser/parse_utilcmd.c:265 #, c-format msgid "cannot create partitioned table as inheritance child" msgstr "no se puede crear una tabla particionada como hija de herencia" -#: parser/parse_utilcmd.c:475 +#: parser/parse_utilcmd.c:504 #, c-format msgid "cannot set logged status of a temporary sequence" msgstr "no se puede cambiar el estado «logged» de una secuencia temporal" -#: parser/parse_utilcmd.c:611 +#: parser/parse_utilcmd.c:642 #, c-format msgid "array of serial is not implemented" msgstr "array de serial no está implementado" -#: 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 "las declaraciones NULL/NOT NULL no son coincidentes para la columna «%s» de la tabla «%s»" -#: parser/parse_utilcmd.c:714 +#: parser/parse_utilcmd.c:759 parser/parse_utilcmd.c:1077 +#, c-format +#| msgid "check constraints for domains cannot be marked NO INHERIT" +msgid "not-null constraints on partitioned tables cannot be NO INHERIT" +msgstr "las restricciones «not-null» en tablas particionadas no pueden ser marcadas NO INHERIT" + +#: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 +#, c-format +#| msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" +msgid "conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" +msgstr "declaraciones NO INHERIT no coincidentes para las restricciones not-null en la columna «%s»" + +#: parser/parse_utilcmd.c:821 #, c-format msgid "multiple default values specified for column \"%s\" of table \"%s\"" msgstr "múltiples valores default especificados para columna «%s» de tabla «%s»" -#: parser/parse_utilcmd.c:731 +#: parser/parse_utilcmd.c:838 #, c-format msgid "identity columns are not supported on typed tables" msgstr "las columnas identidad no está soportadas en tablas tipadas" -#: parser/parse_utilcmd.c:735 +#: parser/parse_utilcmd.c:842 #, c-format msgid "identity columns are not supported on partitions" msgstr "las columnas identidad no están soportadas en particiones" -#: parser/parse_utilcmd.c:744 +#: parser/parse_utilcmd.c:851 #, c-format msgid "multiple identity specifications for column \"%s\" of table \"%s\"" msgstr "múltiples especificaciones de identidad para columna «%s» de tabla «%s»" -#: parser/parse_utilcmd.c:774 +#: parser/parse_utilcmd.c:884 #, c-format msgid "generated columns are not supported on typed tables" msgstr "las columnas generadas no están soportadas en tablas tipadas" -#: parser/parse_utilcmd.c:778 +#: parser/parse_utilcmd.c:888 #, c-format msgid "multiple generation clauses specified for column \"%s\" of table \"%s\"" msgstr "múltiples cláusulas de generación especificadas para columna «%s» de tabla «%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 "las restricciones de llave primaria no están soportadas en tablas foráneas" -#: 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 "las restricciones unique no están soportadas en tablas foráneas" -#: 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 "tanto el valor por omisión como identidad especificados para columna «%s» de tabla «%s»" -#: 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 "tanto el valor por omisión como expresión de generación especificados para columna «%s» de tabla «%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 "tanto identidad como expresión de generación especificados para columna «%s» de tabla «%s»" -#: parser/parse_utilcmd.c:931 +#: parser/parse_utilcmd.c:1063 #, c-format msgid "exclusion constraints are not supported on foreign tables" msgstr "las restricciones de exclusión no están soportadas en tablas foráneas" -#: parser/parse_utilcmd.c:996 -#, c-format -msgid "LIKE is not supported for creating foreign tables" -msgstr "LIKE no está soportado para la creación de tablas foráneas" - -#: parser/parse_utilcmd.c:1009 +#: parser/parse_utilcmd.c:1149 #, c-format msgid "relation \"%s\" is invalid in LIKE clause" msgstr "la relación «%s» no es válida en cláusula 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 "El índice «%s» contiene una referencia a la fila completa (whole-row)." -#: parser/parse_utilcmd.c:2242 +#: parser/parse_utilcmd.c:2419 #, c-format msgid "cannot use an existing index in CREATE TABLE" msgstr "no se puede usar un índice existente en CREATE TABLE" -#: parser/parse_utilcmd.c:2262 +#: parser/parse_utilcmd.c:2439 #, c-format msgid "index \"%s\" is already associated with a constraint" msgstr "el índice «%s» ya está asociado a una restricción" -#: parser/parse_utilcmd.c:2283 +#: parser/parse_utilcmd.c:2465 #, c-format msgid "\"%s\" is not a unique index" msgstr "«%s» no es un índice único" -#: 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 "No se puede crear una restricción de llave primaria o única usando un índice así." -#: parser/parse_utilcmd.c:2290 +#: parser/parse_utilcmd.c:2472 #, c-format msgid "index \"%s\" contains expressions" msgstr "el índice «%s» contiene expresiones" -#: parser/parse_utilcmd.c:2297 +#: parser/parse_utilcmd.c:2479 #, c-format msgid "\"%s\" is a partial index" msgstr "«%s» es un índice parcial" -#: parser/parse_utilcmd.c:2309 +#: parser/parse_utilcmd.c:2491 #, c-format msgid "\"%s\" is a deferrable index" msgstr "«%s» no es un índice postergable (deferrable)" -#: parser/parse_utilcmd.c:2310 +#: parser/parse_utilcmd.c:2492 #, c-format msgid "Cannot create a non-deferrable constraint using a deferrable index." msgstr "No se puede crear una restricción no postergable usando un índice postergable." -#: 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 "el índice «%s» columna número %d no tiene comportamiento de ordenamiento por omisión" -#: parser/parse_utilcmd.c:2531 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "la columna «%s» aparece dos veces en llave primaria" -#: parser/parse_utilcmd.c:2537 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "la columna «%s» aparece dos veces en restricción unique" -#: 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 "" + +#: parser/parse_utilcmd.c:2826 +#, c-format +msgid "constraint using WITHOUT OVERLAPS needs at least two columns" +msgstr "" + +#: parser/parse_utilcmd.c:3123 #, c-format msgid "index expressions and predicates can refer only to the table being indexed" msgstr "las expresiones y predicados de índice sólo pueden referirse a la tabla en indexación" -#: parser/parse_utilcmd.c:2943 +#: parser/parse_utilcmd.c:3195 #, c-format msgid "statistics expressions can refer only to the table being referenced" msgstr "las expresiones estadísticas sólo pueden referirse a la tabla que está siendo referida" -#: parser/parse_utilcmd.c:2986 +#: parser/parse_utilcmd.c:3238 #, c-format msgid "rules on materialized views are not supported" msgstr "las reglas en vistas materializadas no están soportadas" -#: parser/parse_utilcmd.c:3046 +#: parser/parse_utilcmd.c:3298 #, c-format msgid "rule WHERE condition cannot contain references to other relations" msgstr "la condición WHERE de la regla no puede contener referencias a otras relaciones" -#: 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 "las reglas con condiciones WHERE sólo pueden tener acciones SELECT, INSERT, UPDATE o DELETE" -#: parser/parse_utilcmd.c:3136 parser/parse_utilcmd.c:3237 -#: rewrite/rewriteHandler.c:544 rewrite/rewriteManip.c:1096 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 +#: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "las sentencias UNION/INTERSECT/EXCEPT condicionales no están implementadas" -#: parser/parse_utilcmd.c:3154 +#: parser/parse_utilcmd.c:3406 #, c-format msgid "ON SELECT rule cannot use OLD" msgstr "una regla ON SELECT no puede usar OLD" -#: parser/parse_utilcmd.c:3158 +#: parser/parse_utilcmd.c:3410 #, c-format msgid "ON SELECT rule cannot use NEW" msgstr "una regla ON SELECT no puede usar NEW" -#: parser/parse_utilcmd.c:3167 +#: parser/parse_utilcmd.c:3419 #, c-format msgid "ON INSERT rule cannot use OLD" msgstr "una regla ON INSERT no puede usar OLD" -#: parser/parse_utilcmd.c:3173 +#: parser/parse_utilcmd.c:3425 #, c-format msgid "ON DELETE rule cannot use NEW" msgstr "una regla ON DELETE no puede usar NEW" -#: parser/parse_utilcmd.c:3201 +#: parser/parse_utilcmd.c:3453 #, c-format msgid "cannot refer to OLD within WITH query" msgstr "no se puede hacer referencia a OLD dentro de una consulta WITH" -#: parser/parse_utilcmd.c:3208 +#: parser/parse_utilcmd.c:3460 #, c-format msgid "cannot refer to NEW within WITH query" msgstr "no se puede hacer referencia a NEW dentro de una consulta WITH" -#: parser/parse_utilcmd.c:3664 +#: parser/parse_utilcmd.c:3918 #, c-format msgid "misplaced DEFERRABLE clause" msgstr "cláusula DEFERRABLE mal puesta" -#: 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 "no se permiten múltiples cláusulas DEFERRABLE/NOT DEFERRABLE" -#: parser/parse_utilcmd.c:3679 +#: parser/parse_utilcmd.c:3933 #, c-format msgid "misplaced NOT DEFERRABLE clause" msgstr "la cláusula NOT DEFERRABLE está mal puesta" -#: 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 "una restricción declarada INITIALLY DEFERRED debe ser DEFERRABLE" -#: parser/parse_utilcmd.c:3700 +#: parser/parse_utilcmd.c:3954 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "la cláusula INITIALLY DEFERRED está mal puesta" -#: 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 "no se permiten múltiples cláusulas INITIALLY IMMEDIATE/DEFERRED" -#: parser/parse_utilcmd.c:3726 +#: parser/parse_utilcmd.c:3980 #, c-format msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "la cláusula INITIALLY IMMEDIATE está mal puesta" -#: parser/parse_utilcmd.c:3919 +#: parser/parse_utilcmd.c:3997 +#, c-format +#| msgid "misplaced DEFERRABLE clause" +msgid "misplaced ENFORCED clause" +msgstr "cláusula ENFORCED mal puesta" + +#: parser/parse_utilcmd.c:4002 parser/parse_utilcmd.c:4019 +#, c-format +#| msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" +msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" +msgstr "no se permiten múltiples cláusulas ENFORCED/NOT ENFORCED" + +#: parser/parse_utilcmd.c:4014 +#, c-format +#| msgid "misplaced NOT DEFERRABLE clause" +msgid "misplaced NOT ENFORCED clause" +msgstr "la cláusula NOT ENFORCED está mal puesta" + +#: parser/parse_utilcmd.c:4212 #, c-format msgid "CREATE specifies a schema (%s) different from the one being created (%s)" msgstr "CREATE especifica un esquema (%s) diferente del que se está creando (%s)" -#: parser/parse_utilcmd.c:3954 +#: parser/parse_utilcmd.c:4247 #, c-format msgid "\"%s\" is not a partitioned table" msgstr "«%s» no es una tabla particionada" -#: parser/parse_utilcmd.c:3961 +#: parser/parse_utilcmd.c:4254 #, c-format msgid "table \"%s\" is not partitioned" msgstr "la tabla «%s» no está particionada" -#: parser/parse_utilcmd.c:3968 +#: parser/parse_utilcmd.c:4261 #, c-format msgid "index \"%s\" is not partitioned" msgstr "el índice «%s» no está particionado" -#: parser/parse_utilcmd.c:4008 +#: parser/parse_utilcmd.c:4301 #, c-format msgid "a hash-partitioned table may not have a default partition" msgstr "una tabla particionada por hash no puede tener una partición default" -#: parser/parse_utilcmd.c:4025 +#: parser/parse_utilcmd.c:4318 #, c-format msgid "invalid bound specification for a hash partition" msgstr "especificación de borde no válida para partición de hash" -#: 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 "el módulo para una partición hash debe ser un valor entero mayor que cero" -#: 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 "remanente en partición hash debe ser menor que el módulo" -#: parser/parse_utilcmd.c:4051 +#: parser/parse_utilcmd.c:4344 #, c-format msgid "invalid bound specification for a list partition" msgstr "especificación de borde no válida para partición de lista" -#: parser/parse_utilcmd.c:4104 +#: parser/parse_utilcmd.c:4397 #, c-format msgid "invalid bound specification for a range partition" msgstr "especificación de borde no válida para partición de rango" -#: parser/parse_utilcmd.c:4110 +#: parser/parse_utilcmd.c:4403 #, c-format msgid "FROM must specify exactly one value per partitioning column" msgstr "FROM debe especificar exactamente un valor por cada columna de particionado" -#: parser/parse_utilcmd.c:4114 +#: parser/parse_utilcmd.c:4407 #, c-format 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:4228 +#: parser/parse_utilcmd.c:4521 #, c-format msgid "cannot specify NULL in range bound" msgstr "no se puede especificar NULL en borde de rango" -#: parser/parse_utilcmd.c:4277 +#: parser/parse_utilcmd.c:4570 #, 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:4284 +#: parser/parse_utilcmd.c:4577 #, 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:4327 +#: parser/parse_utilcmd.c:4620 #, 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»" @@ -19022,12 +19860,12 @@ msgstr "UESCAPE debe ser seguido por un literal de cadena simple" msgid "invalid Unicode escape character" msgstr "carácter de escape Unicode no válido" -#: parser/parser.c:347 scan.l:1393 +#: parser/parser.c:347 scan.l:1385 #, c-format msgid "invalid Unicode escape value" msgstr "valor de escape Unicode no válido" -#: parser/parser.c:494 utils/adt/varlena.c:6640 scan.l:716 +#: parser/parser.c:494 utils/adt/varlena.c:6842 scan.l:702 #, c-format msgid "invalid Unicode escape" msgstr "valor de escape Unicode no válido" @@ -19037,8 +19875,8 @@ 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:6665 scan.l:677 scan.l:693 -#: scan.l:709 +#: parser/parser.c:523 utils/adt/varlena.c:6867 scan.l:663 scan.l:679 +#: scan.l:695 #, c-format msgid "invalid Unicode surrogate pair" msgstr "par sustituto (surrogate) Unicode no válido" @@ -19115,7 +19953,7 @@ msgid "column %d of the partition key has type \"%s\", but supplied value is of msgstr "la columna %d de la llave de particionamiento tiene tipo «%s», pero el valor dado es de tipo «%s»" #: port/pg_sema.c:209 port/pg_shmem.c:717 port/posix_sema.c:209 -#: port/sysv_sema.c:329 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 "no se pudo hacer stat al directorio de datos «%s»: %m" @@ -19182,27 +20020,27 @@ msgstr "las huge pages no están soportadas en esta plataforma" msgid "huge pages not supported with the current \"shared_memory_type\" setting" msgstr "las huge pages no están soportadas con la configuración actual de «shared_memory_type»" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1401 +#: 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 "el bloque de memoria compartida preexistente (clave %lu, ID %lu) aún está en uso" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1403 +#: 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 "Termine cualquier proceso de servidor asociado al directorio de datos «%s»." -#: port/sysv_sema.c:126 +#: port/sysv_sema.c:135 #, c-format msgid "could not create semaphores: %m" msgstr "no se pudo crear semáforos: %m" -#: port/sysv_sema.c:127 +#: port/sysv_sema.c:136 #, c-format msgid "Failed system call was semget(%lu, %d, 0%o)." msgstr "La llamada a sistema fallida fue semget(%lu, %d, 0%o)." -#: port/sysv_sema.c:131 +#: 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" @@ -19212,7 +20050,7 @@ msgstr "" "Ocurre cuando se alcanza el límite del sistema del número de semáforos (SEMMNI), o bien cuando se excede el total de semáforos del sistema (SEMMNS). Necesita incrementar el parámetro respectivo del kernel. Alternativamente, reduzca el consumo de semáforos de PostgreSQL reduciendo el parámetro «max_connections».\n" "La documentación de PostgreSQL contiene más información acerca de cómo configurar su sistema para PostgreSQL." -#: port/sysv_sema.c:161 +#: 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 "Probablemente necesita incrementar el valor SEMVMX del kernel hasta al menos %d. Examine la documentación de PostgreSQL para obtener más detalles." @@ -19337,382 +20175,403 @@ msgstr "La llamada a sistema fallida fue DuplicateHandle." msgid "Failed system call was MapViewOfFileEx." msgstr "La llamada a sistema fallida fue MapViewOfFileEx." -#: postmaster/autovacuum.c:686 +#: postmaster/autovacuum.c:693 #, c-format msgid "autovacuum worker took too long to start; canceled" -msgstr "proceso ayudante autovacuum tomó demasiado tiempo para iniciarse; cancelado" +msgstr "«autovacuum worker» tomó demasiado tiempo para iniciarse; cancelado" -#: postmaster/autovacuum.c:2203 +#: postmaster/autovacuum.c:2232 #, c-format msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\"" msgstr "autovacuum: eliminando tabla temporal huérfana «%s.%s.%s»" -#: postmaster/autovacuum.c:2439 +#: postmaster/autovacuum.c:2475 #, c-format msgid "automatic vacuum of table \"%s.%s.%s\"" msgstr "vacuum automático de la tabla «%s.%s.%s»" -#: postmaster/autovacuum.c:2442 +#: postmaster/autovacuum.c:2478 #, c-format msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "análisis automático de la tabla «%s.%s.%s»" -#: postmaster/autovacuum.c:2636 +#: postmaster/autovacuum.c:2674 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "procesando elemento de tarea de la tabla «%s.%s.%s»" -#: postmaster/autovacuum.c:3254 +#: postmaster/autovacuum.c:3345 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "autovacuum no fue iniciado debido a un error de configuración" -#: postmaster/autovacuum.c:3255 +#: postmaster/autovacuum.c:3346 #, c-format msgid "Enable the \"track_counts\" option." msgstr "Active la opción «track_counts»." +#: postmaster/autovacuum.c:3468 +#, c-format +msgid "\"autovacuum_max_workers\" (%d) should be less than or equal to \"autovacuum_worker_slots\" (%d)" +msgstr "" + +#: postmaster/autovacuum.c:3470 +#, c-format +msgid "The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum workers at a given time." +msgstr "" + #: postmaster/bgworker.c:260 #, c-format -msgid "inconsistent background worker state (max_worker_processes=%d, total_slots=%d)" -msgstr "estado inconsistente de proceso ayudante (max_worker_processes=%d, total_slots=%d)" +#| msgid "inconsistent background worker state (max_worker_processes=%d, total_slots=%d)" +msgid "inconsistent background worker state (\"max_worker_processes\"=%d, total slots=%d)" +msgstr "estado inconsistente de proceso ayudante («max_worker_processes»=%d, total_slots=%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 "proceso ayudante «%s»: los ayudantes sin acceso a memoria compartida no están soportdos" -#: postmaster/bgworker.c:662 +#: postmaster/bgworker.c:657 #, c-format msgid "background worker \"%s\": cannot request database access if starting at postmaster start" msgstr "proceso ayudante «%s»: no se puede solicitar una conexión a base de datos si está iniciando en el momento de inicio de postmaster" -#: postmaster/bgworker.c:676 +#: postmaster/bgworker.c:671 #, c-format msgid "background worker \"%s\": invalid restart interval" msgstr "proceso ayudante «%s»: intervalo de reinicio no válido" -#: postmaster/bgworker.c:691 +#: postmaster/bgworker.c:686 #, c-format msgid "background worker \"%s\": parallel workers may not be configured for restart" msgstr "proceso ayudante «%s»: los ayudantes paralelos no pueden ser configurados «restart»" -#: 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 "terminando el proceso ayudante «%s» debido a una orden del administrador" -#: postmaster/bgworker.c:888 +#: postmaster/bgworker.c:869 postmaster/bgworker.c:903 +#, c-format +msgid "database connection requirement not indicated during registration" +msgstr "el requerimiento de conexión a base de datos no fue indicado durante el registro" + +#: postmaster/bgworker.c:879 postmaster/bgworker.c:913 +#, c-format +msgid "invalid processing mode in background worker" +msgstr "modo de procesamiento no válido en proceso ayudante" + +#: postmaster/bgworker.c:966 #, c-format msgid "background worker \"%s\": must be registered in \"shared_preload_libraries\"" msgstr "proceso ayudante «%s»: debe ser registrado en «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 "proceso ayudante «%s»: sólo los ayudantes dinámicos pueden pedir notificaciones" -#: postmaster/bgworker.c:926 +#: postmaster/bgworker.c:1004 #, c-format msgid "too many background workers" msgstr "demasiados procesos ayudantes" -#: 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." msgstr[0] "Hasta %d proceso ayudante puede registrarse con la configuración actual." msgstr[1] "Hasta %d procesos ayudantes pueden registrarse con la configuración actual." -#: 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 "Considere incrementar el parámetro de configuración «%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)" msgstr[0] "los puntos de control están ocurriendo con demasiada frecuencia (cada %d segundo)" msgstr[1] "los puntos de control están ocurriendo con demasiada frecuencia (cada %d segundos)" -#: postmaster/checkpointer.c:1067 +#: postmaster/checkpointer.c:1127 #, c-format msgid "checkpoint request failed" msgstr "falló la petición de checkpoint" -#: postmaster/checkpointer.c:1068 +#: postmaster/checkpointer.c:1128 #, c-format msgid "Consult recent messages in the server log for details." msgstr "Vea los mensajes recientes en el registro del servidor para obtener más detalles." -#: postmaster/launch_backend.c:381 +#: postmaster/launch_backend.c:395 #, c-format msgid "could not execute server process \"%s\": %m" msgstr "no se pudo lanzar el proceso servidor «%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 "no se pudo crear mapeo de archivo de parámetros de servidor: código de error %lu" -#: postmaster/launch_backend.c:442 +#: postmaster/launch_backend.c:457 #, c-format msgid "could not map backend parameter memory: error code %lu" msgstr "no se pudo mapear memoria para parámetros de servidor: código de error %lu" -#: postmaster/launch_backend.c:459 +#: postmaster/launch_backend.c:474 #, c-format msgid "subprocess command line too long" msgstr "orden de subproceso demasiado larga" -#: postmaster/launch_backend.c:477 +#: postmaster/launch_backend.c:492 #, c-format msgid "CreateProcess() call failed: %m (error code %lu)" msgstr "llamada a CreateProcess() falló: %m (código de error %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 "no se pudo desmapear la vista del archivo de parámetros de servidor: código de error %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 "no se pudo cerrar el archivo de parámetros de servidor: código de error %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 "renunciar después de demasiados intentos de reservar memoria compartida" -#: postmaster/launch_backend.c:531 +#: postmaster/launch_backend.c:548 #, c-format msgid "This might be caused by ASLR or antivirus software." msgstr "Esto podría deberse a ASLR o un software antivirus." -#: 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 "no se pudo duplicar el socket %d para su empleo en el backend: código de error %d" -#: postmaster/launch_backend.c:866 +#: postmaster/launch_backend.c:886 #, c-format msgid "could not create inherited socket: error code %d\n" msgstr "no se pudo crear el socket heradado: código de error %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 "no se pudo abrir el archivo de variables de servidor «%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 "no se pudo leer el archivo de variables de servidor «%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 "no se pudo leer el archivo de variables de servidor «%s»: %m\n" -#: postmaster/launch_backend.c:924 +#: postmaster/launch_backend.c:944 #, c-format msgid "could not remove file \"%s\": %m\n" msgstr "no se pudo eliminar el archivo «%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 "no se pudo mapear la vista del archivo de variables: código de error %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 "no se pudo desmapear la vista del archivo de variables: código de error %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 "no se pudo cerrar el archivo de variables de servidor: código de error %lu\n" -#: postmaster/pgarch.c:428 +#: postmaster/pgarch.c:429 #, c-format msgid "\"archive_mode\" enabled, yet archiving is not configured" msgstr "«archive_mode» está activado, pero el archivado no está configurado" -#: postmaster/pgarch.c:452 +#: postmaster/pgarch.c:453 #, c-format msgid "removed orphan archive status file \"%s\"" msgstr "eliminando archivo de estado huérfano «%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 "la eliminación del archivo de estado huérfano «%s» falló demasiadas veces, se tratará de nuevo despué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 "el archivado del archivo de WAL «%s» falló demasiadas veces, se tratará de nuevo más tarde" -#: 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 "tanto «archive_command» como «archive_library» están definidos" -#: 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 "Sólo uno de «archive_command», «archive_library» puede ser definido." -#: postmaster/pgarch.c:897 +#: postmaster/pgarch.c:899 #, c-format msgid "restarting archiver process because value of \"archive_library\" was changed" msgstr "reiniciando el proceso archivador porque el valor de «archive_library» cambió" -#: postmaster/pgarch.c:934 +#: postmaster/pgarch.c:936 #, c-format msgid "archive modules have to define the symbol %s" msgstr "los módulos de archivado tienen que definir el símbolo %s" -#: postmaster/pgarch.c:940 +#: postmaster/pgarch.c:942 #, c-format msgid "archive modules must register an archive callback" msgstr "los módulos de archivado deben registrar un callback de archivado" -#: postmaster/postmaster.c:661 +#: postmaster/postmaster.c:678 #, c-format msgid "%s: invalid argument for option -f: \"%s\"\n" msgstr "%s: argumento no válido para la opción -f: «%s»\n" -#: postmaster/postmaster.c:734 +#: postmaster/postmaster.c:751 #, c-format msgid "%s: invalid argument for option -t: \"%s\"\n" msgstr "%s: argumento no válido para la opción -t: «%s»\n" -#: postmaster/postmaster.c:757 +#: postmaster/postmaster.c:774 #, c-format msgid "%s: invalid argument: \"%s\"\n" msgstr "%s: argumento no válido: «%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 "%s: «superuser_reserved_connections» (%d) más «reserved_connections» (%d) debe ser menor que «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 "el archivador de WAL no puede activarse cuando «wal_level» es «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 "el flujo de WAL («max_wal_senders» > 0) requiere que «wal_level» sea «replica» o «logical»" -#: postmaster/postmaster.c:839 +#: postmaster/postmaster.c:856 #, c-format msgid "WAL cannot be summarized when \"wal_level\" is \"minimal\"" msgstr "no se puede sumarizar WAL cuando «wal_level» es «minimal»" -#: postmaster/postmaster.c:847 +#: postmaster/postmaster.c:864 #, c-format msgid "%s: invalid datetoken tables, please fix\n" msgstr "%s: las tablas de palabras clave de fecha no son válidas, arréglelas\n" -#: postmaster/postmaster.c:1004 +#: postmaster/postmaster.c:1025 #, c-format msgid "could not create I/O completion port for child queue" msgstr "no se pudo crear el port E/S de reporte de completitud para la cola de procesos hijos" -#: postmaster/postmaster.c:1069 +#: postmaster/postmaster.c:1091 #, c-format msgid "ending log output to stderr" msgstr "terminando la salida de registro a stderr" -#: postmaster/postmaster.c:1070 +#: postmaster/postmaster.c:1092 #, c-format msgid "Future log output will go to log destination \"%s\"." msgstr "La salida futura del registro será enviada al destino de log «%s»." -#: postmaster/postmaster.c:1081 +#: postmaster/postmaster.c:1103 #, c-format msgid "starting %s" msgstr "iniciando %s" -#: postmaster/postmaster.c:1143 +#: postmaster/postmaster.c:1165 #, c-format msgid "could not create listen socket for \"%s\"" msgstr "no se pudo crear el socket de escucha para «%s»" -#: postmaster/postmaster.c:1149 +#: postmaster/postmaster.c:1171 #, c-format msgid "could not create any TCP/IP sockets" msgstr "no se pudo crear ningún socket TCP/IP" -#: postmaster/postmaster.c:1181 +#: postmaster/postmaster.c:1203 #, c-format msgid "DNSServiceRegister() failed: error code %ld" msgstr "DNSServiceRegister() falló: código de error %ld" -#: postmaster/postmaster.c:1234 +#: postmaster/postmaster.c:1256 #, c-format msgid "could not create Unix-domain socket in directory \"%s\"" msgstr "no se pudo crear el socket de dominio Unix en el directorio «%s»" -#: postmaster/postmaster.c:1240 +#: postmaster/postmaster.c:1262 #, c-format msgid "could not create any Unix-domain sockets" msgstr "no se pudo crear ningún socket de dominio Unix" -#: postmaster/postmaster.c:1251 +#: postmaster/postmaster.c:1273 #, c-format msgid "no socket created for listening" msgstr "no se creó el socket de atención" -#: 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: no se pudo cambiar los permisos del archivo de PID externo «%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: no pudo escribir en el archivo externo de 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 "no se pudo cargar %s" -#: postmaster/postmaster.c:1342 +#: postmaster/postmaster.c:1364 #, c-format msgid "postmaster became multithreaded during startup" msgstr "postmaster se volvió multi-hilo durante la partida" -#: postmaster/postmaster.c:1343 postmaster/postmaster.c:3684 +#: postmaster/postmaster.c:1365 postmaster/postmaster.c:3668 #, c-format msgid "Set the LC_ALL environment variable to a valid locale." msgstr "Defina la variable de ambiente LC_ALL a un valor válido." -#: postmaster/postmaster.c:1442 +#: postmaster/postmaster.c:1468 #, c-format msgid "%s: could not locate my own executable path" msgstr "%s: no se pudo localizar la ruta de mi propio ejecutable" -#: postmaster/postmaster.c:1449 +#: postmaster/postmaster.c:1475 #, c-format msgid "%s: could not locate matching postgres executable" msgstr "%s: no se pudo localizar el ejecutable postgres correspondiente" -#: postmaster/postmaster.c:1472 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 "Esto puede indicar una instalación de PostgreSQL incompleta, o que el archivo «%s» ha sido movido de la ubicación adecuada." -#: postmaster/postmaster.c:1499 +#: postmaster/postmaster.c:1525 #, c-format msgid "" "%s: could not find the database system\n" @@ -19724,335 +20583,323 @@ msgstr "" "pero no se pudo abrir el archivo «%s»: %m\n" #. translator: %s is SIGKILL or SIGABRT -#: postmaster/postmaster.c:1789 +#: postmaster/postmaster.c:1762 #, c-format msgid "issuing %s to recalcitrant children" msgstr "enviando %s a hijos recalcitrantes" -#: postmaster/postmaster.c:1811 +#: postmaster/postmaster.c:1784 #, c-format msgid "performing immediate shutdown because data directory lock file is invalid" msgstr "ejecutando un apagado inmediato porque el archivo de bloqueo del directorio de datos no es válido" -#: postmaster/postmaster.c:1874 -#, c-format -msgid "wrong key in cancel request for process %d" -msgstr "llave incorrecta en la petición de cancelación para el proceso %d" - -#: postmaster/postmaster.c:1886 -#, c-format -msgid "PID %d in cancel request did not match any process" -msgstr "el PID %d en la petición de cancelación no coincidió con ningún proceso" - -#: postmaster/postmaster.c:2106 +#: postmaster/postmaster.c:2004 #, c-format msgid "received SIGHUP, reloading configuration files" msgstr "se recibió SIGHUP, volviendo a cargar archivos de configuración" #. translator: %s is a configuration file -#: postmaster/postmaster.c:2134 postmaster/postmaster.c:2138 +#: postmaster/postmaster.c:2012 postmaster/postmaster.c:2016 #, c-format msgid "%s was not reloaded" msgstr "%s no fue vuelto a cargar" -#: postmaster/postmaster.c:2148 +#: postmaster/postmaster.c:2026 #, c-format msgid "SSL configuration was not reloaded" msgstr "la configuración SSL no fue vuelta a cargar" -#: postmaster/postmaster.c:2234 +#: postmaster/postmaster.c:2112 #, c-format msgid "received smart shutdown request" msgstr "se recibió petición de apagado inteligente" -#: postmaster/postmaster.c:2275 +#: postmaster/postmaster.c:2153 #, c-format msgid "received fast shutdown request" msgstr "se recibió petición de apagado rápido" -#: postmaster/postmaster.c:2293 +#: postmaster/postmaster.c:2171 #, c-format msgid "aborting any active transactions" msgstr "abortando transacciones activas" -#: postmaster/postmaster.c:2317 +#: postmaster/postmaster.c:2195 #, c-format msgid "received immediate shutdown request" msgstr "se recibió petición de apagado inmediato" -#: postmaster/postmaster.c:2389 +#: postmaster/postmaster.c:2270 #, c-format msgid "shutdown at recovery target" msgstr "apagándose al alcanzar el destino de recuperación" -#: postmaster/postmaster.c:2407 postmaster/postmaster.c:2443 +#: postmaster/postmaster.c:2288 postmaster/postmaster.c:2324 msgid "startup process" msgstr "proceso de inicio" -#: postmaster/postmaster.c:2410 +#: postmaster/postmaster.c:2291 #, c-format msgid "aborting startup due to startup process failure" msgstr "abortando el inicio debido a una falla en el procesamiento de inicio" -#: postmaster/postmaster.c:2485 +#: postmaster/postmaster.c:2347 #, c-format msgid "database system is ready to accept connections" msgstr "el sistema de bases de datos está listo para aceptar conexiones" -#: postmaster/postmaster.c:2506 +#: postmaster/postmaster.c:2369 msgid "background writer process" msgstr "proceso background writer" -#: postmaster/postmaster.c:2553 +#: postmaster/postmaster.c:2402 msgid "checkpointer process" msgstr "proceso checkpointer" -#: postmaster/postmaster.c:2569 +#: postmaster/postmaster.c:2419 msgid "WAL writer process" msgstr "proceso escritor de WAL" -#: postmaster/postmaster.c:2584 +#: postmaster/postmaster.c:2435 msgid "WAL receiver process" msgstr "proceso receptor de WAL" -#: postmaster/postmaster.c:2598 +#: postmaster/postmaster.c:2450 msgid "WAL summarizer process" msgstr "proceso sumarizador de WAL" -#: postmaster/postmaster.c:2613 +#: postmaster/postmaster.c:2466 msgid "autovacuum launcher process" msgstr "proceso lanzador de autovacuum" -#: postmaster/postmaster.c:2631 +#: postmaster/postmaster.c:2482 msgid "archiver process" msgstr "proceso de archivado" -#: postmaster/postmaster.c:2644 +#: postmaster/postmaster.c:2497 msgid "system logger process" msgstr "proceso de log" -#: postmaster/postmaster.c:2661 +#: postmaster/postmaster.c:2515 msgid "slot sync worker process" msgstr "proceso sincronizador de slot" -#: postmaster/postmaster.c:2717 +#: 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 "proceso hijo sin seguimiento" + +#: postmaster/postmaster.c:2580 #, c-format msgid "background worker \"%s\"" msgstr "proceso ayudante «%s»" -#: postmaster/postmaster.c:2796 postmaster/postmaster.c:2816 -#: postmaster/postmaster.c:2823 postmaster/postmaster.c:2841 -msgid "server process" -msgstr "proceso de servidor" - -#: postmaster/postmaster.c:2895 +#: postmaster/postmaster.c:2804 #, c-format msgid "terminating any other active server processes" msgstr "terminando todos los otros procesos de servidor activos" #. translator: %s is a noun phrase describing a child process, such as #. "server process" -#: postmaster/postmaster.c:3082 +#: postmaster/postmaster.c:2837 #, c-format msgid "%s (PID %d) exited with exit code %d" msgstr "%s (PID %d) terminó con código de salida %d" -#: postmaster/postmaster.c:3084 postmaster/postmaster.c:3096 -#: postmaster/postmaster.c:3106 postmaster/postmaster.c:3117 +#: 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 "El proceso que falló estaba ejecutando: %s" #. translator: %s is a noun phrase describing a child process, such as #. "server process" -#: postmaster/postmaster.c:3093 +#: postmaster/postmaster.c:2848 #, c-format msgid "%s (PID %d) was terminated by exception 0x%X" msgstr "%s (PID %d) fue terminado por una excepción 0x%X" #. translator: %s is a noun phrase describing a child process, such as #. "server process" -#: postmaster/postmaster.c:3103 +#: postmaster/postmaster.c:2858 #, c-format msgid "%s (PID %d) was terminated by signal %d: %s" msgstr "%s (PID %d) fue terminado por una señal %d: %s" #. translator: %s is a noun phrase describing a child process, such as #. "server process" -#: postmaster/postmaster.c:3115 +#: postmaster/postmaster.c:2870 #, c-format msgid "%s (PID %d) exited with unrecognized status %d" msgstr "%s (PID %d) terminó con código %d no reconocido" -#: postmaster/postmaster.c:3331 +#: postmaster/postmaster.c:3161 #, c-format msgid "abnormal database system shutdown" msgstr "apagado anormal del sistema de bases de datos" -#: postmaster/postmaster.c:3357 +#: postmaster/postmaster.c:3187 #, c-format msgid "shutting down due to startup process failure" msgstr "apagando debido a una falla en el procesamiento de inicio" -#: postmaster/postmaster.c:3363 +#: postmaster/postmaster.c:3193 #, c-format msgid "shutting down because \"restart_after_crash\" is off" msgstr "apagando debido a que «restart_after_crash» está desactivado" -#: postmaster/postmaster.c:3375 +#: postmaster/postmaster.c:3205 #, c-format msgid "all server processes terminated; reinitializing" msgstr "todos los procesos fueron terminados; reinicializando" -#: postmaster/postmaster.c:3574 postmaster/postmaster.c:3985 -#: postmaster/postmaster.c:4374 -#, c-format -msgid "could not generate random cancel key" -msgstr "no se pudo generar una llave de cancelación aleatoria" - -#: postmaster/postmaster.c:3607 +#: postmaster/postmaster.c:3598 #, c-format msgid "could not fork new process for connection: %m" msgstr "no se pudo lanzar el nuevo proceso para la conexión: %m" -#: postmaster/postmaster.c:3649 +#: postmaster/postmaster.c:3633 msgid "could not fork new process for connection: " msgstr "no se pudo lanzar el nuevo proceso para la conexión: " -#: postmaster/postmaster.c:3683 +#: postmaster/postmaster.c:3667 #, c-format -#| msgid "postmaster became multithreaded during startup" msgid "postmaster became multithreaded" msgstr "postmaster se volvió multi-hilo" -#: postmaster/postmaster.c:3752 +#: postmaster/postmaster.c:3745 #, c-format msgid "database system is ready to accept read-only connections" msgstr "el sistema de bases de datos está listo para aceptar conexiones de sólo lectura" -#: postmaster/postmaster.c:3935 -#, c-format -msgid "could not fork \"%s\" process: %m" -msgstr "no se pudo lanzar el proceso «%s»: %m" - -#: postmaster/postmaster.c:4173 postmaster/postmaster.c:4207 +#: postmaster/postmaster.c:3846 #, c-format -msgid "database connection requirement not indicated during registration" -msgstr "el requerimiento de conexión a base de datos no fue indicado durante el registro" +#| msgid "manifest ended unexpectedly" +msgid "WAL was shut down unexpectedly" +msgstr "WAL fue terminado inesperadamente" -#: postmaster/postmaster.c:4183 postmaster/postmaster.c:4217 +#: postmaster/postmaster.c:3971 #, c-format -msgid "invalid processing mode in background worker" -msgstr "modo de procesamiento no válido en proceso ayudante" +#| msgid "no slot available for new background worker process" +msgid "no slot available for new autovacuum worker process" +msgstr "no hay slot disponible para un nuevo «autovacuum worker»" -#: postmaster/postmaster.c:4277 +#: postmaster/postmaster.c:3986 #, c-format -msgid "could not fork background worker process: %m" -msgstr "no se pudo lanzar el background writer: %m" +msgid "could not fork \"%s\" process: %m" +msgstr "no se pudo lanzar el proceso «%s»: %m" -#: postmaster/postmaster.c:4360 +#: postmaster/postmaster.c:4145 #, c-format msgid "no slot available for new background worker process" msgstr "no hay slot disponible para un nuevo proceso ayudante" -#: postmaster/postmaster.c:4623 +#: postmaster/postmaster.c:4163 +#, c-format +msgid "could not fork background worker process: %m" +msgstr "no se pudo lanzar el background writer: %m" + +#: postmaster/postmaster.c:4496 #, c-format msgid "could not read exit code for process\n" msgstr "no se pudo leer el código de salida del proceso\n" -#: postmaster/postmaster.c:4665 +#: postmaster/postmaster.c:4538 #, c-format msgid "could not post child completion status\n" msgstr "no se pudo publicar el estado de completitud del proceso hijo\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 "no se pudo leer desde la tubería de log: %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 "no se pudo crear la tubería para syslog: %m" -#: postmaster/syslogger.c:712 +#: postmaster/syslogger.c:711 #, c-format msgid "could not fork system logger: %m" msgstr "no se pudo crear el proceso de log: %m" -#: postmaster/syslogger.c:731 +#: postmaster/syslogger.c:730 #, c-format msgid "redirecting log output to logging collector process" msgstr "redirigiendo la salida del registro al proceso recolector de registro" -#: postmaster/syslogger.c:732 +#: postmaster/syslogger.c:731 #, c-format msgid "Future log output will appear in directory \"%s\"." msgstr "La salida futura del registro aparecerá en el directorio «%s»." -#: postmaster/syslogger.c:740 +#: postmaster/syslogger.c:739 #, c-format msgid "could not redirect stdout: %m" msgstr "no se pudo redirigir 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 "no se pudo redirigir stderr: %m" -#: postmaster/syslogger.c:1128 +#: postmaster/syslogger.c:1127 #, c-format msgid "could not write to log file: %m\n" msgstr "no se pudo escribir al archivo de log: %m\n" -#: postmaster/syslogger.c:1246 +#: postmaster/syslogger.c:1247 #, c-format msgid "could not open log file \"%s\": %m" msgstr "no se pudo abrir el archivo de registro «%s»: %m" -#: postmaster/syslogger.c:1336 +#: postmaster/syslogger.c:1337 #, c-format msgid "disabling automatic rotation (use SIGHUP to re-enable)" msgstr "desactivando rotación automática (use SIGHUP para reactivarla)" -#: postmaster/walsummarizer.c:740 +#: postmaster/walsummarizer.c:743 #, c-format msgid "WAL summarization is not progressing" msgstr "la sumarización de WAL no está progresando" -#: 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 "La sumarización de WAL se necesita hasta %X/%X, pero está detenido en %X/%X en disco y %X/%X en memoria." -#: 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" msgstr[0] "todavía esperando al resumen de WAL hasta %X/%X después de %ld segundo" msgstr[1] "todavía esperando al resumen de WAL hasta %X/%X después de %ld segundos" -#: postmaster/walsummarizer.c:760 +#: postmaster/walsummarizer.c:763 #, c-format msgid "Summarization has reached %X/%X on disk and %X/%X in memory." msgstr "El resumen ha alcanzado %X/%X en disco y %X/%X en memoria." -#: postmaster/walsummarizer.c:1000 +#: postmaster/walsummarizer.c:1003 #, c-format msgid "could not find a valid record after %X/%X" msgstr "no se pudo encontrar un registro válido después de %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 "no se pudo leer WAL del timeline %u en %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 "no se pudo leer WAL del timeline %u en %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 "no se pudo determinar qué ordenamiento usar para la expresión regular" @@ -20062,144 +20909,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:267 -#: replication/libpqwalreceiver/libpqwalreceiver.c:358 +#: replication/libpqwalreceiver/libpqwalreceiver.c:230 +#: replication/libpqwalreceiver/libpqwalreceiver.c:322 #, c-format msgid "password is required" msgstr "una contraseña es requerida" -#: 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 "No-superusuario no se puede conectar si el servidor no pide una constraseña." -#: 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 "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:285 +#: replication/libpqwalreceiver/libpqwalreceiver.c:249 #, c-format msgid "could not clear search path: %s" msgstr "no se pudo limpiar la ruta de búsqueda: %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 "sintaxis de cadena de conexión no válida: %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 "No-superusuario debe proveer una contraseña en la cadena de conexión." -#: replication/libpqwalreceiver/libpqwalreceiver.c:386 +#: replication/libpqwalreceiver/libpqwalreceiver.c:350 #, c-format msgid "could not parse connection string: %s" msgstr "no se pudo interpretar la cadena de conexión: %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 "no se pudo recibir el identificador de sistema y el ID de timeline del servidor primario: %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 "respuesta no válida del servidor primario" -#: 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 "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: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 "no se pudo iniciar el flujo de 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 "no se pudo enviar el mensaje fin-de-flujo al primario: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:690 +#: replication/libpqwalreceiver/libpqwalreceiver.c:659 #, 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:705 +#: replication/libpqwalreceiver/libpqwalreceiver.c:675 #, 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:715 +#: replication/libpqwalreceiver/libpqwalreceiver.c:686 #, 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: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 "resultado inesperado después de 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 "no se pudo recibir el archivo de historia de timeline del servidor primario: %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 "Se esperaba 1 tupla con 2 campos, se obtuvieron %d tuplas con %d campos." -#: 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 "no se pudo recibir datos desde el flujo de WAL: %s" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1000 +#: replication/libpqwalreceiver/libpqwalreceiver.c:875 #, 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:1101 +#: replication/libpqwalreceiver/libpqwalreceiver.c:978 #, 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:1140 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1030 #, 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:1174 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1064 #, c-format msgid "invalid query response" msgstr "respuesta no válida a consulta" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1065 #, c-format msgid "Expected %d fields, got %d fields." msgstr "Se esperaban %d campos, se obtuvieron %d campos." -#: replication/libpqwalreceiver/libpqwalreceiver.c:1245 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1135 #, 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:1277 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1169 msgid "empty query" msgstr "consulta vacía" -#: replication/libpqwalreceiver/libpqwalreceiver.c:1283 +#: replication/libpqwalreceiver/libpqwalreceiver.c:1175 msgid "unexpected pipeline mode" msgstr "modo pipeline inesperado" @@ -20239,138 +21086,244 @@ msgstr "no se pudo enviar datos a la cola en memoria compartida" msgid "logical replication apply worker will serialize the remaining changes of remote transaction %u to a file" msgstr "el ayudante paralelo «apply» de replicación lógica serializará los cambios restantes de la transacción remota %u a un archivo" +#: replication/logical/conflict.c:126 +#, fuzzy, c-format +#| msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" +msgid "conflict detected on relation \"%s.%s\": conflict=%s" +msgstr "no se puede usar lista de columnas para la relación «%s.%s» en la publicación «%s»" + +#: replication/logical/conflict.c:223 +#, c-format +msgid "Key already exists in unique index \"%s\", modified locally in transaction %u at %s." +msgstr "" + +#: 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 "" + +#: 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 "" + +#: replication/logical/conflict.c:244 +#, c-format +msgid "Key already exists in unique index \"%s\", modified in transaction %u." +msgstr "" + +#: replication/logical/conflict.c:251 +#, c-format +msgid "Updating the row that was modified locally in transaction %u at %s." +msgstr "" + +#: 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 "" + +#: 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 "" + +#: replication/logical/conflict.c:265 +#, fuzzy +#| msgid "could not find a \"%s\" to execute" +msgid "Could not find the row to be updated." +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 "" + +#: 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 "" + +#: 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 "" + +#: 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" + +#: replication/logical/conflict.c:347 +#, c-format +msgid "Key %s" +msgstr "" + +#: replication/logical/conflict.c:364 +#, fuzzy, c-format +#| msgid "closing existing cursor \"%s\"" +msgid "existing local row %s" +msgstr "cerrando el cursor «%s» preexistente" + +#: replication/logical/conflict.c:369 +#, c-format +msgid "Existing local row %s" +msgstr "" + +#: replication/logical/conflict.c:396 +#, c-format +msgid "remote row %s" +msgstr "" + +#: replication/logical/conflict.c:400 +#, c-format +msgid "Remote row %s" +msgstr "" + +#: replication/logical/conflict.c:434 +#, fuzzy, c-format +#| msgid ", replica identity" +msgid "replica identity %s" +msgstr ", identidad de replicación" + +#: replication/logical/conflict.c:435 +#, fuzzy, c-format +#| msgid ", replica identity" +msgid "replica identity full %s" +msgstr ", identidad de replicación" + +#: replication/logical/conflict.c:440 +#, fuzzy, c-format +#| msgid "Replica Identity" +msgid "Replica identity %s" +msgstr "Identidad de replicación" + +#: replication/logical/conflict.c:441 +#, fuzzy, c-format +#| msgid "Replica Identity" +msgid "Replica identity full %s" +msgstr "Identidad de replicación" + # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/logical/decode.c:177 replication/logical/logical.c:141 +#: 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 "la decodificación lógica en standby requiere «wal_level» >= «logical» en el primario" -#: replication/logical/launcher.c:334 -#, c-format -msgid "cannot start logical replication workers when max_replication_slots = 0" +#: replication/logical/launcher.c:344 +#, fuzzy, 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" -#: replication/logical/launcher.c:427 +#: replication/logical/launcher.c:437 #, c-format msgid "out of logical replication worker slots" msgstr "se agotaron los slots de procesos ayudantes de replicación lógica" -#: 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:2836 storage/lmgr/lock.c:4221 storage/lmgr/lock.c:4286 -#: storage/lmgr/lock.c:4636 storage/lmgr/predicate.c:2469 -#: storage/lmgr/predicate.c:2484 storage/lmgr/predicate.c:3881 +#. 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 #, c-format msgid "You might need to increase \"%s\"." msgstr "Puede ser necesario incrementar «%s»." -#: replication/logical/launcher.c:513 +#: replication/logical/launcher.c:523 #, c-format msgid "out of background worker slots" msgstr "se acabaron los slots de procesos ayudante" -#: replication/logical/launcher.c:720 +#: replication/logical/launcher.c:730 #, c-format msgid "logical replication worker slot %d is empty, cannot attach" msgstr "el slot del worker de replicación lógica %d está vacío, no se puede adjuntar" -#: 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 "el slot de replicación lógica %d ya está siendo utilizado por otro worker, no se puede adjuntar" # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/logical/logical.c:121 +#: replication/logical/logical.c:123 #, c-format msgid "logical decoding requires \"wal_level\" >= \"logical\"" msgstr "la decodificación lógica requiere «wal_level» >= «logical»" -#: replication/logical/logical.c:126 +#: replication/logical/logical.c:128 #, c-format 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:365 replication/logical/logical.c:519 +#: replication/logical/logical.c:367 replication/logical/logical.c:521 #, 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:370 replication/logical/logical.c:529 +#: replication/logical/logical.c:372 replication/logical/logical.c:531 #, 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" -#: 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 "no se puede crear un slot de replicación lógica en una transacción que ha efectuado escrituras" -#: replication/logical/logical.c:540 +#: replication/logical/logical.c:542 #, 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:542 replication/slot.c:798 -#: replication/slot.c:829 +#: replication/logical/logical.c:544 replication/slot.c:829 +#: replication/slot.c:864 #, 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:543 +#: replication/logical/logical.c:545 #, c-format msgid "Specify another replication slot." msgstr "Especifique otro slot de replicación." -#: replication/logical/logical.c:554 replication/logical/logical.c:561 -#, c-format -msgid "can no longer get changes from replication slot \"%s\"" -msgstr "ya no se pueden recibir cambios desde el slot de replicación «%s»" - -#: replication/logical/logical.c:556 -#, c-format -msgid "This slot has been invalidated because it exceeded the maximum reserved size." -msgstr "Este slot ha sido invalidado porque excedió el máximo del tamaño de reserva." - -#: replication/logical/logical.c:563 -#, c-format -msgid "This slot has been invalidated because it was conflicting with recovery." -msgstr "Este slot ha sido invalidado porque estaba en conflicto con la recuperación." - -#: replication/logical/logical.c:628 +#: replication/logical/logical.c:611 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "iniciando la decodificación lógica para el slot «%s»" -#: replication/logical/logical.c:630 +#: replication/logical/logical.c:613 #, 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:778 +#: replication/logical/logical.c:761 #, 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:784 +#: replication/logical/logical.c:767 #, 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:955 replication/logical/logical.c:1000 -#: replication/logical/logical.c:1045 replication/logical/logical.c:1091 +#: replication/logical/logical.c:938 replication/logical/logical.c:983 +#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 #, 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: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:1306 replication/logical/logical.c:1355 +#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 +#: replication/logical/logical.c:1531 #, c-format msgid "logical streaming requires a %s callback" msgstr "el flujo lógico requiere una función callback %s" -#: replication/logical/logical.c:1458 +#: replication/logical/logical.c:1441 #, 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" @@ -20395,7 +21348,7 @@ msgstr "el array debe ser unidimensional" msgid "array must not contain nulls" msgstr "el array no debe contener 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" @@ -20406,210 +21359,231 @@ msgstr "el array debe tener un número par de elementos" msgid "logical decoding output plugin \"%s\" produces binary output, but function \"%s\" expects textual data" msgstr "el plugin de salida de decodificación lógica «%s» produce salida binaria, pero «%s» espera datos textuales" -#: replication/logical/origin.c:190 -#, c-format -msgid "cannot query or manipulate replication origin when \"max_replication_slots\" is 0" +#: replication/logical/origin.c:195 +#, fuzzy, c-format +#| msgid "cannot query or manipulate replication origin when \"max_replication_slots\" is 0" +msgid "cannot query or manipulate replication origin when \"max_active_replication_origins\" is 0" msgstr "no se puede consultar o manipular orígenes de replicación cuando «max_replication_slots» = 0" -#: replication/logical/origin.c:195 +#: replication/logical/origin.c:200 #, c-format msgid "cannot manipulate replication origins during recovery" msgstr "no se puede manipular orígenes de replicación durante la recuperación" -#: replication/logical/origin.c:240 +#: replication/logical/origin.c:245 #, c-format msgid "replication origin \"%s\" does not exist" msgstr "no existe el origen de replicación «%s»" -#: replication/logical/origin.c:331 +#: replication/logical/origin.c:275 +#, fuzzy, c-format +#| msgid "replication slot name \"%s\" is too long" +msgid "replication origin name is too long" +msgstr "el nombre de slot de replicación «%s» es demasiado largo" + +#: replication/logical/origin.c:276 +#, fuzzy, c-format +#| msgid "replication origin name \"%s\" is reserved" +msgid "Replication origin names must be no longer than %d bytes." +msgstr "el nombre de origen de replicación «%s» está reservado" + +#: replication/logical/origin.c:359 #, c-format msgid "could not find free replication origin ID" msgstr "no se pudo encontrar un ID de origen de replicación disponible" -#: 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 "no se pudo eliminar el origen de replicación con ID %d, en uso por el PID %d" -#: replication/logical/origin.c:492 +#: replication/logical/origin.c:520 #, c-format msgid "replication origin with ID %d does not exist" msgstr "no existe el origen de replicación con 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 "el checkpoint de replicación tiene número mágico erróneo %u en lugar de %u" -#: replication/logical/origin.c:798 -#, c-format -msgid "could not find free replication state, increase \"max_replication_slots\"" +#: replication/logical/origin.c:821 +#, fuzzy, c-format +#| msgid "could not find free replication state, increase \"max_replication_slots\"" +msgid "could not find free replication state, increase \"max_active_replication_origins\"" msgstr "no se pudo encontrar una estructura de replicación libre, incremente «max_replication_slots»" -#: replication/logical/origin.c:806 +#: replication/logical/origin.c:829 #, c-format msgid "recovered replication state of node %d to %X/%X" msgstr "recuperado el estado de replicación del nodo %d a %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 "el checkpoint del slot de replicación tiene suma de verificación errónea %u, se esperaba %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 "el origen de replicación con ID %d está activo para el 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 "no se pudo encontrar una estructura de replicación libre para el origen de replicación con el ID %d" -#: replication/logical/origin.c:957 replication/logical/origin.c:1158 -#: replication/slot.c:2384 -#, c-format -msgid "Increase \"max_replication_slots\" and try again." +#: replication/logical/origin.c:980 replication/logical/origin.c:1181 +#, fuzzy, c-format +#| msgid "Increase \"max_replication_slots\" and try again." +msgid "Increase \"max_active_replication_origins\" and try again." msgstr "Aumente «max_replication_slots» y reintente." -#: replication/logical/origin.c:1114 +#: replication/logical/origin.c:1137 #, c-format msgid "cannot setup replication origin when one is already setup" msgstr "no se puede establecer un destino de replicación cuando ya hay uno definido" -#: 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 "no hay un destino de replicación configurado" -#: replication/logical/origin.c:1285 +#: replication/logical/origin.c:1308 #, c-format msgid "replication origin name \"%s\" is reserved" msgstr "el nombre de origen de replicación «%s» está reservado" -#: 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 "Los nombres de origen «%s», «%s» y los que empiezan con «pg_» están reservados." -#: 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" msgstr[0] "a la relación destino de replicación lógica «%s.%s» le falta la columna replicada: %s" msgstr[1] "a la relación destino de replicación lógica «%s.%s» le faltan las columnas replicadas: %s" -#: replication/logical/relation.c:306 +#: replication/logical/relation.c:273 +#, fuzzy, 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" +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] "a la relación destino de replicación lógica «%s.%s» le falta la columna replicada: %s" +msgstr[1] "a la relación destino de replicación lógica «%s.%s» le faltan las columnas replicadas: %s" + +#: replication/logical/relation.c:328 #, c-format msgid "logical replication target relation \"%s.%s\" uses system columns in REPLICA IDENTITY index" msgstr "la relación de destino de replicación lógica «%s.%s» usa columnas de sistemas en el índice 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 "la relación destino de replicación lógica «%s.%s» no existe" -#: replication/logical/reorderbuffer.c:3999 +#: replication/logical/reorderbuffer.c:4252 #, c-format msgid "could not write to data file for XID %u: %m" msgstr "no se pudo escribir al archivo de datos para el XID %u: %m" -#: replication/logical/reorderbuffer.c:4345 -#: replication/logical/reorderbuffer.c:4370 +#: replication/logical/reorderbuffer.c:4598 +#: replication/logical/reorderbuffer.c:4623 #, c-format msgid "could not read from reorderbuffer spill file: %m" msgstr "no se pudo leer desde el archivo de desborde de reorderbuffer: %m" -#: replication/logical/reorderbuffer.c:4349 -#: replication/logical/reorderbuffer.c:4374 +#: 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 "no se pudo leer desde el archivo de desborde de reorderbuffer: se leyeron sólo %d en ve de %u bytes" -#: replication/logical/reorderbuffer.c:4624 -#, c-format -msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m" +#: replication/logical/reorderbuffer.c:4876 +#, fuzzy, c-format +#| msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m" +msgid "could not remove file \"%s\" during removal of %s/%s/xid*: %m" msgstr "no se pudo borrar el archivo «%s» durante la eliminación de pg_replslot/%s/xid*: %m" # FIXME almost duplicated again!? -#: replication/logical/reorderbuffer.c:5120 +#: replication/logical/reorderbuffer.c:5373 #, c-format 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: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 "no se puede sincronizar el slot de replicación «%s» porque el slot remoto precede al slot local" +msgid "could not synchronize replication slot \"%s\"" +msgstr "no se pudo sincronizar el slot de replicación «%s»" -#: replication/logical/slotsync.c:217 -#, 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." +#: 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." +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." -#: replication/logical/slotsync.c:459 +#: 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:579 -#, c-format -msgid "could not synchronize replication slot \"%s\"" -msgstr "no se pudo sincronizar el slot de replicación «%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 "La decodificación lógica no pudo encontrar un punto consistente desde el LSN del slot local %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 "" -#: replication/logical/slotsync.c:589 +#: replication/logical/slotsync.c:605 #, 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: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 "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:650 +#: replication/logical/slotsync.c:666 #, 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:819 +#: replication/logical/slotsync.c:835 #, 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:965 -#, c-format -msgid "could not fetch primary_slot_name \"%s\" info from the primary server: %s" +#: replication/logical/slotsync.c:984 +#, 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:967 -#, c-format -msgid "Check if primary_slot_name is configured correctly." +#: replication/logical/slotsync.c:986 +#, 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:987 +#: replication/logical/slotsync.c:1006 #, 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:996 +#: replication/logical/slotsync.c:1015 #, 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" @@ -20617,938 +21591,1039 @@ 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:1029 +#: replication/logical/slotsync.c:1048 #, 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:1050 +#: replication/logical/slotsync.c:1067 #, 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:1063 replication/logical/slotsync.c:1091 +#: replication/logical/slotsync.c:1082 replication/logical/slotsync.c:1110 #, 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:1077 +#: replication/logical/slotsync.c:1096 #, 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:1129 +#: replication/logical/slotsync.c:1148 #, 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:1138 +#: replication/logical/slotsync.c:1157 #, 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:1162 +#: 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:1287 +#: replication/logical/slotsync.c:1306 #, 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:1295 +#: replication/logical/slotsync.c:1314 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "no se puede sincronizar slots de replicación concurrentemente" -#: replication/logical/slotsync.c:1403 +#: replication/logical/slotsync.c:1422 #, c-format msgid "slot sync worker started" msgstr "iniciado el trabajador de sincronización de slots" -#: replication/logical/slotsync.c:1466 replication/slotfuncs.c:900 -#: replication/walreceiver.c:307 -#, c-format -msgid "could not connect to the primary server: %s" +#: replication/logical/slotsync.c:1484 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" msgstr "no se pudo conectar al servidor primario: %s" -#: replication/logical/snapbuild.c:653 +#: replication/logical/snapbuild.c:514 #, c-format msgid "initial slot snapshot too large" msgstr "el snapshot inicial del slot es demasiado grande" # FIXME: snapshot? instantánea? -#: 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" msgstr[0] "se exportó un snapshot de decodificación lógica: «%s» con %u ID de transacción" msgstr[1] "se exportó un snapshot de decodificación lógica: «%s» con %u IDs de transacción" -#: 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 "la decodificación lógica encontró un punto consistente en %X/%X" -#: replication/logical/snapbuild.c:1406 +#: replication/logical/snapbuild.c:1315 #, c-format msgid "There are no running transactions." msgstr "No hay transacciones en ejecución." -#: replication/logical/snapbuild.c:1453 +#: replication/logical/snapbuild.c:1362 #, c-format msgid "logical decoding found initial starting point at %X/%X" msgstr "decodificación lógica encontró punto de inicio en %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 "Esperando que las (aproximadamente %d) transacciones más antiguas que %u terminen." -#: replication/logical/snapbuild.c:1477 +#: replication/logical/snapbuild.c:1386 #, c-format msgid "logical decoding found initial consistent point at %X/%X" msgstr "la decodificación lógica encontró un punto consistente inicial en %X/%X" -#: replication/logical/snapbuild.c:1503 +#: replication/logical/snapbuild.c:1412 #, c-format msgid "There are no old transactions anymore." msgstr "Ya no hay transacciones antiguas en ejecución." # FIXME "snapbuild"? -#: 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 "el archivo de estado de snapbuild «%s» tiene número mágico erróneo: %u en lugar de %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 "el archivo de estado de snapbuild «%s» tiene versión no soportada: %u en vez de %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 "suma de verificación no coincidente para el archivo de estado de snapbuild «%s»: es %u, debería ser %u" -#: replication/logical/snapbuild.c:2019 +#: replication/logical/snapbuild.c:1918 #, c-format msgid "Logical decoding will begin using saved snapshot." msgstr "La decodificación lógica comenzará usando el snapshot guardado." -#: replication/logical/snapbuild.c:2126 +#: replication/logical/snapbuild.c:2025 #, c-format msgid "could not parse file name \"%s\"" msgstr "no se pudo interpretar el nombre de archivo «%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 "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: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 "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará para activar «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 "no se pudo obtener información de la tabla «%s.%s» del publicador: %s" -#: replication/logical/tablesync.c:834 +#: replication/logical/tablesync.c:866 #, c-format msgid "table \"%s.%s\" not found on publisher" msgstr "la tabla \"%s.%s\" no fue encontrada en el publicador" -#: 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 "no se pudo obtener información de la lista de columnas para la tabla «%s.%s» del publicador: %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 "no se pudo obtener información de la cláusula WHERE para la tabla «%s.%s» del publicador: %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 "no se pudo iniciar la copia de contenido inicial para de la tabla «%s.%s»: %s" -#: replication/logical/tablesync.c:1429 +#: replication/logical/tablesync.c:1380 +#, fuzzy, c-format +#| msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished" +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 #, 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:1472 +#: 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:1505 replication/logical/worker.c:2361 +#: replication/logical/tablesync.c:1542 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:1518 +#: replication/logical/tablesync.c:1555 #, 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" -#: replication/logical/worker.c:481 +#: replication/logical/worker.c:474 #, c-format msgid "logical replication parallel apply worker for subscription \"%s\" will stop" msgstr "el ayudante «apply» de replicación lógica para la suscripción «%s» se detendrá" -#: 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 "No se puede gestionar replicación en flujo usando procesos en paralelo hasta que todas las tablas han sido sincronizadas." -#: 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 "el formato de datos binarios es incorrecto en columna de replicación lógica %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 "el publicador no envía la columna identidad de réplica esperada por la relación de destino de replicación lógica «%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 "la relación destino de replicación lógica «%s.%s» no tiene índice REPLICA IDENTITY ni PRIMARY KEY y la relación publicada no tiene REPLICA IDENTITY FULL" -#: replication/logical/worker.c:3371 +#: replication/logical/worker.c:3467 #, c-format msgid "invalid logical replication message type \"??? (%d)\"" msgstr "tipo de mensaje de replicación lógica no válido «??? (%d)»" -#: replication/logical/worker.c:3543 +#: replication/logical/worker.c:3639 #, c-format msgid "data stream from publisher has ended" msgstr "el flujo de datos del publisher ha terminado" -#: replication/logical/worker.c:3697 +#: replication/logical/worker.c:3793 #, c-format msgid "terminating logical replication worker due to timeout" msgstr "terminando el proceso de replicación lógica debido a que se agotó el tiempo de espera" -#: 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 "el ayudante «apply» de replicación lógica para la suscripción «%s» se detendrá porque la suscripción fue eliminada" -#: 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 "el ayudante «apply» de replicación lógica para la suscripción «%s» se detendrá porque la suscripción fue inhabilitada" -#: 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 "el ayudante paralelo «apply» de replicación lógica para la suscripción «%s» se reiniciará por un cambio de parámetro" -#: 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 "el ayudante «apply» de replicación lógica para la suscripción «%s» se reiniciará por un cambio de parámetro" -#: 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 "el proceso “apply” paralelo de replicación lógica para la suscripción «%s» se detendrá porque los privilegios de superusuario del dueño de la suscripción han sido revocados" -#: 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 "el proceso de replicación lógica para la suscripción «%s» se reiniciará porque los privilegios de superusuario del dueño de la suscripción han sido revocados" -#: replication/logical/worker.c:4478 +#: replication/logical/worker.c:4567 #, c-format msgid "subscription has no replication slot set" msgstr "la suscripción no tiene un slot de replicación establecido" -#: replication/logical/worker.c:4591 +#: replication/logical/worker.c:4592 +#, fuzzy, c-format +#| msgid "could not connect to the publisher: %s" +msgid "apply worker for subscription \"%s\" could not connect to the publisher: %s" +msgstr "no se pudo connectar con el publicador: %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 "el ayudante «apply» de replicación lógica para la suscripción %u no se iniciará porque la suscripción fue eliminada durante el inicio" -#: 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 "el ayudante «apply» de replicación lógica para la suscripción «%s» no se iniciará porque la suscripción fue inhabilitada durante el inicio" -#: 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 "el ayudante de sincronización de tabla de replicación lógica para la suscripción «%s», tabla «%s» ha iniciado" -#: replication/logical/worker.c:4636 +#: replication/logical/worker.c:4741 #, c-format 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:4758 +#: replication/logical/worker.c:4871 #, 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:4806 +#: replication/logical/worker.c:4919 #, 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:4820 +#: replication/logical/worker.c:4933 #, 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:4902 +#: replication/logical/worker.c:5021 #, 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:4903 +#: replication/logical/worker.c:5022 #, 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:4940 +#: replication/logical/worker.c:5050 #, 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:4944 +#: replication/logical/worker.c:5054 #, 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:4949 +#: replication/logical/worker.c:5059 #, 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:4960 +#: replication/logical/worker.c:5070 #, 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:4967 +#: replication/logical/worker.c:5077 #, 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:4978 +#: replication/logical/worker.c:5088 #, 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:4986 +#: replication/logical/worker.c:5096 #, 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" -#: replication/pgoutput/pgoutput.c:322 +#: replication/pgoutput/pgoutput.c:328 #, c-format msgid "invalid proto_version" msgstr "proto_version no válido" -#: replication/pgoutput/pgoutput.c:327 +#: replication/pgoutput/pgoutput.c:333 #, c-format msgid "proto_version \"%s\" out of range" msgstr "proto_version «%s» fuera de rango" -#: replication/pgoutput/pgoutput.c:344 +#: replication/pgoutput/pgoutput.c:350 #, c-format msgid "invalid publication_names syntax" msgstr "sintaxis de publication_names no válida" -#: replication/pgoutput/pgoutput.c:414 replication/pgoutput/pgoutput.c:418 +#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 #, c-format msgid "option \"%s\" missing" msgstr "falta la opción «%s»" -#: replication/pgoutput/pgoutput.c:478 +#: replication/pgoutput/pgoutput.c:469 #, 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:484 +#: replication/pgoutput/pgoutput.c:475 #, 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:499 +#: replication/pgoutput/pgoutput.c:490 #, 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:505 +#: replication/pgoutput/pgoutput.c:496 #, 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:510 +#: replication/pgoutput/pgoutput.c:501 #, 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:524 +#: replication/pgoutput/pgoutput.c:515 #, 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:529 +#: replication/pgoutput/pgoutput.c:520 #, 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/slot.c:260 +#: replication/pgoutput/pgoutput.c:1085 +#, 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:1792 +#, fuzzy, c-format +#| msgid "reading publications" +msgid "skipped loading publication \"%s\"" +msgstr "leyendo publicaciones" + +#: replication/pgoutput/pgoutput.c:1793 +#, 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:1794 +#, fuzzy, c-format +#| msgid "publication \"%s\" does not exist" +msgid "Create the publication if it does not exist." +msgstr "no existe la publicación «%s»" + +#: replication/slot.c:275 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "el nombre de slot de replicación «%s» es demasiado corto" -#: replication/slot.c:269 +#: replication/slot.c:284 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "el nombre de slot de replicación «%s» es demasiado largo" -#: replication/slot.c:282 +#: replication/slot.c:297 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "el nombre de slot de replicación «%s» contiene caracteres no válidos" -#: replication/slot.c:284 +#: replication/slot.c:299 #, c-format 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:333 +#: replication/slot.c:348 #, 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:345 replication/slot.c:849 +#: replication/slot.c:360 replication/slot.c:886 #, 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:370 +#: replication/slot.c:385 #, c-format msgid "replication slot \"%s\" already exists" msgstr "el slot de replicación «%s» ya existe" -#: replication/slot.c:380 +#: replication/slot.c:395 #, c-format msgid "all replication slots are in use" msgstr "todos los slots de replicación están en uso" -#: replication/slot.c:381 +#: replication/slot.c:396 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Libere uno o incremente «max_replication_slots»." -#: replication/slot.c:560 replication/slot.c:2450 replication/slotfuncs.c:661 -#: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:728 +#: replication/slot.c:580 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:606 replication/slot.c:1337 +#: replication/slot.c:635 replication/slot.c:1431 #, 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:638 +#: replication/slot.c:652 +#, 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:654 +#, 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:673 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "se adquirió el slot de replicación lógica «%s»" -#: replication/slot.c:640 +#: replication/slot.c:675 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "se adquirió el slot de replicación física «%s»" -#: replication/slot.c:729 +#: replication/slot.c:760 #, c-format msgid "released logical replication slot \"%s\"" msgstr "se liberó el slot de replicación lógica «%s»" -#: replication/slot.c:731 +#: replication/slot.c:762 #, c-format msgid "released physical replication slot \"%s\"" msgstr "se liberó el slot de replicación física «%s»" -#: replication/slot.c:797 +#: replication/slot.c:828 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "no se puede eliminar el slot de replicación «%s»" -#: replication/slot.c:816 +#: replication/slot.c:851 #, 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:828 +#: replication/slot.c:863 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "no se puede alterar el slot de replicación «%s»" -#: replication/slot.c:838 +#: replication/slot.c:873 #, 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:969 replication/slot.c:1927 replication/slot.c:2311 +#: replication/slot.c:1021 replication/slot.c:2174 replication/slot.c:2560 #, c-format msgid "could not remove directory \"%s\"" msgstr "no se pudo eliminar el directorio «%s»" -#: replication/slot.c:1372 +#: replication/slot.c:1466 #, 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:1377 +#: replication/slot.c:1471 #, 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:1389 +#: replication/slot.c:1483 #, c-format msgid "permission denied to use replication slots" msgstr "permiso denegado a usar slots de replicación" -#: replication/slot.c:1390 +#: replication/slot.c:1484 #, 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:1498 -#, 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:1594 +#, 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." +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." -#: replication/slot.c:1506 +#: replication/slot.c:1605 #, 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:1511 +#: replication/slot.c:1610 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." -#: replication/slot.c:1519 +#. translator: %s is a GUC variable name +#: replication/slot.c:1616 +#, c-format +msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." +msgstr "" + +#: replication/slot.c:1630 #, 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:1521 +#: replication/slot.c:1632 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "invalidando el slot de replicación obsoleto «%s»" -#: replication/slot.c:2249 +#: replication/slot.c:2498 #, 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:2256 +#: replication/slot.c:2505 #, 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:2263 +#: replication/slot.c:2512 #, 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:2299 +#: replication/slot.c:2548 #, 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:2333 +#: replication/slot.c:2584 #, 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:2335 +#: replication/slot.c:2586 #, 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:2339 +#: replication/slot.c:2598 +#, fuzzy, c-format +#| msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" +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»" + +#: replication/slot.c:2600 +#, c-format +msgid "Change \"hot_standby\" to be \"on\"." +msgstr "" + +# FIXME see slot.c:779. See also postmaster.c:835 +#: replication/slot.c:2605 #, 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:2341 +#: replication/slot.c:2607 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Cambie «wal_level» a «replica» o superior." -#: replication/slot.c:2383 +#: replication/slot.c:2654 #, c-format msgid "too many replication slots active before shutdown" msgstr "demasiados slots de replicación activos antes del apagado" -#: replication/slot.c:2458 +#: replication/slot.c:2655 #, c-format -msgid "\"%s\" is not a physical replication slot" +msgid "Increase \"max_replication_slots\" and try again." +msgstr "Aumente «max_replication_slots» y reintente." + +#: replication/slot.c:2732 +#, fuzzy, c-format +#| msgid "replication slot \"%s\" does not exist" +msgid "Replication slot \"%s\" does not exist." +msgstr "no existe el slot de replicación «%s»" + +#: replication/slot.c:2740 +#, fuzzy, c-format +#| msgid "\"%s\" is not a physical replication slot" +msgid "\"%s\" is not a physical replication slot." msgstr "«%s» no es un slot de replicación física" -#: replication/slot.c:2635 +#: replication/slot.c:2919 #, 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:2637 replication/slot.c:2671 replication/slot.c:2686 +#: replication/slot.c:2921 replication/slot.c:2955 replication/slot.c:2970 #, 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:2639 +#: replication/slot.c:2923 #, 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:2649 +#: replication/slot.c:2933 #, 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:2651 +#: replication/slot.c:2935 #, 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:2653 +#: replication/slot.c:2937 #, 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:2669 +#: replication/slot.c:2953 #, 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:2673 +#: replication/slot.c:2957 #, 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:2684 +#: replication/slot.c:2968 #, 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:2688 +#: replication/slot.c:2972 #, 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»." -#: replication/slotfuncs.c:526 +#: replication/slotfuncs.c:529 #, c-format msgid "invalid target WAL LSN" msgstr "el LSN de wal de destino no es válido" -#: replication/slotfuncs.c:548 +#: replication/slotfuncs.c:551 #, c-format msgid "replication slot \"%s\" cannot be advanced" msgstr "no se puede avanzar el slot de replicación «%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 "Este slot nunca ha reservado WAL previamente, o ha sido invalidado." -#: replication/slotfuncs.c:566 +#: replication/slotfuncs.c:569 #, c-format msgid "cannot advance replication slot to %X/%X, minimum is %X/%X" msgstr "no puede avanzar un slot de replicación a %X/%X, el mínimo es %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 "no se puede copiar el slot de replicación física «%s» como slot de replicación lógica" -#: replication/slotfuncs.c:675 +#: replication/slotfuncs.c:678 #, c-format msgid "cannot copy logical replication slot \"%s\" as a physical replication slot" msgstr "no se puede copiar el slot de replicación lógica «%s» como slot de replicación física" -#: replication/slotfuncs.c:682 +#: replication/slotfuncs.c:685 #, c-format 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:768 +#: replication/slotfuncs.c:691 +#, fuzzy, c-format +#| msgid "cannot alter replication slot \"%s\"" +msgid "cannot copy invalidated replication slot \"%s\"" +msgstr "no se puede alterar el slot de replicación «%s»" + +#: replication/slotfuncs.c:783 #, c-format msgid "could not copy replication slot \"%s\"" msgstr "no se pudo copiar el slot de replicación «%s»" -#: replication/slotfuncs.c:770 +#: replication/slotfuncs.c:785 #, c-format msgid "The source replication slot was modified incompatibly during the copy operation." msgstr "El slot de replicación de origen fue modificado incompatiblemente durante la operación de copia." -#: replication/slotfuncs.c:776 +#: replication/slotfuncs.c:791 #, c-format msgid "cannot copy unfinished logical replication slot \"%s\"" msgstr "no se puede copiar el slot de replicación lógica no terminado «%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 "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\"" +msgid "cannot copy replication slot \"%s\"" +msgstr "no se puede eliminar 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." +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." + # FIXME see logical.c:81 -#: replication/slotfuncs.c:877 +#: replication/slotfuncs.c:906 #, c-format msgid "replication slots can only be synchronized to a standby server" msgstr "los slots de replicación sólo pueden sincronizarse a un servidor standby" -#: 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 "cancelando la espera para la replicación sincrónica y terminando la conexión debido a una orden del administrador" -#: 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 "La transacción ya fue comprometida localmente, pero pudo no haber sido replicada al standby." -#: replication/syncrep.c:278 +#: replication/syncrep.c:321 #, c-format msgid "canceling wait for synchronous replication due to user request" msgstr "cancelando espera para la replicación sincrónica debido a una petición del usuario" -#: replication/syncrep.c:485 +#: replication/syncrep.c:528 #, c-format msgid "standby \"%s\" is now a synchronous standby with priority %d" msgstr "el standby «%s» es ahora un standby sincrónico con prioridad %d" -#: replication/syncrep.c:489 +#: replication/syncrep.c:532 #, c-format 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:1013 -#, c-format -msgid "\"synchronous_standby_names\" parser failed" -msgstr "falló la interpretación de «synchronous_standby_names»" +#: replication/syncrep.c:1081 +#, fuzzy, c-format +#| msgid "\"%s\" failed" +msgid "\"%s\" parser failed." +msgstr "«%s» falló" -#: replication/syncrep.c:1019 +#: replication/syncrep.c:1088 #, c-format 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:176 -#, c-format -msgid "terminating walreceiver process due to administrator command" -msgstr "terminando el proceso walreceiver debido a una orden del administrador" +#: replication/walreceiver.c:276 +#, fuzzy, 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" -#: replication/walreceiver.c:354 +#: replication/walreceiver.c:324 #, c-format msgid "database system identifier differs between the primary and standby" msgstr "el identificador de sistema difiere entre el primario y el standby" -#: replication/walreceiver.c:355 +#: replication/walreceiver.c:325 #, c-format msgid "The primary's identifier is %s, the standby's identifier is %s." msgstr "El identificador del primario es %s, el identificador del standby es %s." -#: replication/walreceiver.c:366 +#: replication/walreceiver.c:336 #, c-format msgid "highest timeline %u of the primary is behind recovery timeline %u" msgstr "el timeline más alto del primario, %u, está más atrás que el timeline de recuperación %u" -#: replication/walreceiver.c:419 +#: replication/walreceiver.c:389 #, c-format msgid "started streaming WAL from primary at %X/%X on timeline %u" msgstr "iniciando el flujo de WAL desde el primario en %X/%X en el timeline %u" -#: replication/walreceiver.c:423 +#: replication/walreceiver.c:393 #, c-format msgid "restarted WAL streaming at %X/%X on timeline %u" msgstr "reiniciando el flujo de WAL en %X/%X en el timeline %u" -#: replication/walreceiver.c:458 +#: replication/walreceiver.c:428 #, c-format msgid "cannot continue WAL streaming, recovery has already ended" msgstr "no se puede continuar el flujo de WAL; la recuperación ya ha terminado" -#: replication/walreceiver.c:502 +#: replication/walreceiver.c:472 #, c-format msgid "replication terminated by primary server" msgstr "replicación terminada por el servidor primario" -#: replication/walreceiver.c:503 +#: replication/walreceiver.c:473 #, c-format msgid "End of WAL reached on timeline %u at %X/%X." msgstr "Se alcanzó el fin de WAL en el timeline %u en la posición %X/%X." -#: replication/walreceiver.c:593 +#: replication/walreceiver.c:573 #, c-format msgid "terminating walreceiver due to timeout" msgstr "terminando el proceso walreceiver debido a que se agotó el tiempo de espera" -#: replication/walreceiver.c:625 +#: replication/walreceiver.c:605 #, c-format msgid "primary server contains no more WAL on requested timeline %u" msgstr "el servidor primario no contiene más WAL en el timeline %u solicitado" -#: 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 "no se pudo cerrar el segmento de 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 "trayendo el archivo de historia del timeline para el timeline %u desde el servidor primario" -#: 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 "no se pudo escribir al segmento de WAL %s en la posición %d, largo %lu: %m" -#: replication/walsender.c:531 +#: replication/walsender.c:505 #, c-format 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:635 storage/smgr/md.c:1735 +#: replication/walsender.c:609 storage/smgr/md.c:1867 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "no se pudo posicionar (seek) al fin del archivo «%s»: %m" -#: replication/walsender.c:639 +#: replication/walsender.c:613 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "no se pudo posicionar (seek) al comienzo del archivo «%s»: %m" -#: replication/walsender.c:853 +#: replication/walsender.c:829 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "no se puede usar un slot de replicación lógica para replicación física" -#: replication/walsender.c:919 +#: replication/walsender.c:895 #, c-format msgid "requested starting point %X/%X on timeline %u is not in this server's history" msgstr "el punto de inicio solicitado %X/%X del timeline %u no está en la historia de este servidor" -#: replication/walsender.c:922 +#: replication/walsender.c:898 #, c-format msgid "This server's history forked from timeline %u at %X/%X." msgstr "La historia de este servidor bifurcó desde el timeline %u en %X/%X." -#: replication/walsender.c:966 +#: replication/walsender.c:942 #, c-format 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:1160 +#: replication/walsender.c:1137 #, 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:1266 +#: replication/walsender.c:1243 #, c-format msgid "%s must not be called inside a transaction" msgstr "%s no debe ser ejecutado dentro de una transacción" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1276 +#: replication/walsender.c:1253 #, c-format msgid "%s must be called inside a transaction" msgstr "%s no debe ser ejecutado dentro de una transacción" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1282 +#: replication/walsender.c:1259 #, c-format msgid "%s must be called in REPEATABLE READ isolation mode transaction" msgstr "%s debe llamarse en una transacción de modo de aislamiento REPEATABLE READ" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1287 +#: replication/walsender.c:1264 #, c-format msgid "%s must be called in a read-only transaction" msgstr "%s debe ser ejecutado en una transacción de sólo lectura" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1293 +#: replication/walsender.c:1270 #, c-format msgid "%s must be called before any query" msgstr "%s debe ser llamado antes de cualquier consulta" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1299 +#: replication/walsender.c:1276 #, c-format msgid "%s must not be called in a subtransaction" msgstr "%s no está permitido en una subtransacción" -#: replication/walsender.c:1472 +#: replication/walsender.c:1453 #, c-format msgid "terminating walsender process after promotion" msgstr "terminando el proceso walsender luego de la promoción" -#: replication/walsender.c:2000 +#: replication/walsender.c:1996 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "no puede ejecutar nuevas órdenes mientras el “WAL sender” está en modo de apagarse" -#: replication/walsender.c:2035 +#: replication/walsender.c:2050 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "no puede ejecutar órdenes SQL en el “WAL sender” para replicación física" -#: replication/walsender.c:2068 +#: replication/walsender.c:2081 #, c-format msgid "received replication command: %s" msgstr "se recibió orden de replicación: %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: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 #, c-format msgid "current transaction is aborted, commands ignored until end of transaction block" msgstr "transacción abortada, las órdenes serán ignoradas hasta el fin de bloque de transacción" -#: replication/walsender.c:2233 replication/walsender.c:2268 +#: replication/walsender.c:2249 replication/walsender.c:2284 #, c-format msgid "unexpected EOF on standby connection" msgstr "se encontró fin de archivo inesperado en la conexión standby" -#: replication/walsender.c:2256 +#: replication/walsender.c:2272 #, c-format msgid "invalid standby message type \"%c\"" msgstr "el tipo «%c» de mensaje del standby no es válido" -#: replication/walsender.c:2345 +#: replication/walsender.c:2361 #, c-format msgid "unexpected message type \"%c\"" msgstr "mensaje de tipo «%c» inesperado" -#: replication/walsender.c:2759 +#: replication/walsender.c:2775 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "terminando el proceso walsender debido a que se agotó el tiempo de espera de replicación" @@ -21729,288 +22804,288 @@ msgstr "no existe la regla «%s» para la relación «%s»" msgid "renaming an ON SELECT rule is not allowed" msgstr "no se permite cambiar el nombre de una regla ON SELECT" -#: rewrite/rewriteHandler.c:588 +#: rewrite/rewriteHandler.c:590 #, c-format 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:615 +#: rewrite/rewriteHandler.c:617 #, 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:668 +#: rewrite/rewriteHandler.c:671 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "no se puede usar RETURNING en múltiples reglas" -#: rewrite/rewriteHandler.c:900 rewrite/rewriteHandler.c:939 +#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 #, 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:902 rewrite/rewriteHandler.c:968 +#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 #, 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:904 +#: rewrite/rewriteHandler.c:912 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "Use OVERRIDING SYSTEM VALUE para controlar manualmente." -#: rewrite/rewriteHandler.c:966 rewrite/rewriteHandler.c:974 +#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "la columna «%s» sólo puede actualizarse a DEFAULT" -#: rewrite/rewriteHandler.c:1109 rewrite/rewriteHandler.c:1127 +#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "hay múltiples asignaciones a la misma columna «%s»" -#: rewrite/rewriteHandler.c:1682 +#: rewrite/rewriteHandler.c:1691 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE no está soportado para relaciones con reglas." -#: rewrite/rewriteHandler.c:1722 rewrite/rewriteHandler.c:3262 +#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 #, 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:2122 rewrite/rewriteHandler.c:4254 +#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 #, 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:2227 +#: rewrite/rewriteHandler.c:2235 #, 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:2589 +#: rewrite/rewriteHandler.c:2598 msgid "Junk view columns are not updatable." msgstr "Las columnas «basura» de vistas no son actualizables." -#: rewrite/rewriteHandler.c:2594 +#: rewrite/rewriteHandler.c:2603 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:2597 +#: rewrite/rewriteHandler.c:2606 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:2600 +#: rewrite/rewriteHandler.c:2609 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:2661 +#: rewrite/rewriteHandler.c:2670 msgid "Views containing DISTINCT are not automatically updatable." msgstr "Las vistas que contienen DISTINCT no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2664 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing GROUP BY are not automatically updatable." msgstr "Las vistas que contienen GROUP BY no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2667 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing HAVING are not automatically updatable." msgstr "Las vistas que contienen HAVING no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2670 +#: rewrite/rewriteHandler.c:2679 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:2673 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing WITH are not automatically updatable." msgstr "Las vistas que contienen WITH no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2676 +#: rewrite/rewriteHandler.c:2685 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:2688 +#: rewrite/rewriteHandler.c:2697 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:2691 +#: rewrite/rewriteHandler.c:2700 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:2694 +#: rewrite/rewriteHandler.c:2703 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:2701 rewrite/rewriteHandler.c:2705 -#: rewrite/rewriteHandler.c:2713 +#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 +#: rewrite/rewriteHandler.c:2722 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:2716 +#: rewrite/rewriteHandler.c:2725 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "Las vistas que contienen TABLESAMPLE no son automáticamente actualizables." -#: rewrite/rewriteHandler.c:2740 +#: rewrite/rewriteHandler.c:2749 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:3121 rewrite/rewriteHandler.c:3156 +#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 #, c-format msgid "cannot insert into view \"%s\"" msgstr "no se puede insertar en la vista «%s»" -#: rewrite/rewriteHandler.c:3124 +#: rewrite/rewriteHandler.c:3133 #, 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:3129 rewrite/rewriteHandler.c:3165 +#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 #, c-format msgid "cannot update view \"%s\"" msgstr "no se puede actualizar la vista «%s»" -#: rewrite/rewriteHandler.c:3132 +#: rewrite/rewriteHandler.c:3141 #, 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:3137 rewrite/rewriteHandler.c:3174 +#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 #, c-format msgid "cannot delete from view \"%s\"" msgstr "no se puede eliminar de la vista «%s»" -#: rewrite/rewriteHandler.c:3140 +#: rewrite/rewriteHandler.c:3149 #, 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:3159 +#: rewrite/rewriteHandler.c:3168 #, 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:3168 +#: rewrite/rewriteHandler.c:3177 #, 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:3177 +#: rewrite/rewriteHandler.c:3186 #, 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:3352 +#: rewrite/rewriteHandler.c:3361 #, 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:3360 +#: rewrite/rewriteHandler.c:3369 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "no se puede actualizar la columna «%s» vista «%s»" -#: rewrite/rewriteHandler.c:3368 +#: rewrite/rewriteHandler.c:3377 #, 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:3396 +#: rewrite/rewriteHandler.c:3405 #, c-format msgid "cannot merge into view \"%s\"" msgstr "no se puede hacer «merge» en la vista «%s»" -#: rewrite/rewriteHandler.c:3398 +#: rewrite/rewriteHandler.c:3407 #, 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:3399 +#: rewrite/rewriteHandler.c:3408 #, 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:3912 +#: rewrite/rewriteHandler.c:3923 #, 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:3923 +#: rewrite/rewriteHandler.c:3934 #, 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:3937 +#: rewrite/rewriteHandler.c:3948 #, 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:3941 +#: rewrite/rewriteHandler.c:3952 #, 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:3946 +#: rewrite/rewriteHandler.c:3957 #, 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:4206 +#: rewrite/rewriteHandler.c:4217 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:4303 +#: rewrite/rewriteHandler.c:4314 #, 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:4305 +#: rewrite/rewriteHandler.c:4316 #, 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:4310 +#: rewrite/rewriteHandler.c:4321 #, 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:4312 +#: rewrite/rewriteHandler.c:4323 #, 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:4317 +#: rewrite/rewriteHandler.c:4328 #, 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:4319 +#: rewrite/rewriteHandler.c:4330 #, 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:4337 +#: rewrite/rewriteHandler.c:4348 #, 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:4394 +#: rewrite/rewriteHandler.c:4405 #, 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" -#: rewrite/rewriteManip.c:1084 +#: rewrite/rewriteManip.c:1178 #, c-format msgid "conditional utility statements are not implemented" msgstr "las sentencias condicionales de utilidad no están implementadas" -#: rewrite/rewriteManip.c:1431 +#: rewrite/rewriteManip.c:1523 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "WHERE CURRENT OF no está implementado en una vista" -#: rewrite/rewriteManip.c:1767 +#: rewrite/rewriteManip.c:1926 #, 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 "las variables NEW en reglas ON UPDATE no pueden referenciar columnas que son parte de una asignación múltiple en la orden UPDATE" @@ -22020,33 +23095,101 @@ msgstr "las variables NEW en reglas ON UPDATE no pueden referenciar columnas que 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 "con una cláusula SEARCH o CYCLE, la referencia recursiva a la consulta de WITH «%s» debe estar en el nivel superior de su SELECT del lado derecho" -#: snowball/dict_snowball.c:215 +#: snowball/dict_snowball.c:220 #, c-format msgid "no Snowball stemmer available for language \"%s\" and encoding \"%s\"" msgstr "no se encontró un analizador Snowball para el lenguaje «%s» y la codificación «%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 "parámetro StopWords duplicado" -#: snowball/dict_snowball.c:247 +#: snowball/dict_snowball.c:252 #, c-format msgid "multiple Language parameters" msgstr "parámetro Language duplicado" -#: snowball/dict_snowball.c:254 +#: snowball/dict_snowball.c:259 #, c-format msgid "unrecognized Snowball parameter: \"%s\"" msgstr "parámetro Snowball no reconocido: «%s»" -#: snowball/dict_snowball.c:262 +#: snowball/dict_snowball.c:267 #, c-format msgid "missing Language parameter" msgstr "falta un parámetro Language" -#: statistics/extended_stats.c:176 +#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:935 +#: statistics/relation_stats.c:98 +#, fuzzy, c-format +#| msgid "%s cannot be executed during recovery." +msgid "Statistics cannot be modified during recovery." +msgstr "No se puede ejecutar %s durante la recuperación." + +#: statistics/attribute_stats.c:202 +#, fuzzy, c-format +#| msgid "cannot specify both %s and %s" +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "no se puede especificar %s junto con %s" + +#: statistics/attribute_stats.c:228 +#, fuzzy, c-format +#| msgid "cannot specify both %s and %s" +msgid "must specify either \"%s\" or \"%s\"" +msgstr "no se puede especificar %s junto con %s" + +#: statistics/attribute_stats.c:236 +#, fuzzy, c-format +#| msgid "cannot assign to system column \"%s\"" +msgid "cannot modify statistics on system column \"%s\"" +msgstr "no se puede asignar a la columna de sistema «%s»" + +#: statistics/attribute_stats.c:300 +#, fuzzy, c-format +#| msgid "could not determine data type for argument %d" +msgid "could not determine element type of column \"%s\"" +msgstr "no se pudo determinar el tipo de dato para el argumento %d" + +#: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 +#: statistics/attribute_stats.c:333 +#, fuzzy, c-format +#| msgid "cannot cast type %s to %s" +msgid "Cannot set %s or %s." +msgstr "no se puede convertir el tipo %s a %s" + +#: statistics/attribute_stats.c:317 +#, fuzzy, c-format +#| msgid "could not determine which collation to use for view column \"%s\"" +msgid "could not determine less-than operator for column \"%s\"" +msgstr "no se pudo determinar el ordenamiento (collation) a usar para la columna «%s» de vista" + +#: statistics/attribute_stats.c:332 +#, fuzzy, c-format +#| msgid "column \"%s\" is not of a character type" +msgid "column \"%s\" is not a range type" +msgstr "la columna «%s» no es de un tipo textual" + +#: statistics/attribute_stats.c:735 +#, fuzzy, c-format +#| msgid "ACL arrays must not contain null values" +msgid "\"%s\" array must not contain null values" +msgstr "los arrays de ACL no pueden contener valores nulos" + +#: statistics/attribute_stats.c:778 +#, fuzzy, c-format +#| msgid "maximum number of committed subtransactions (%d) exceeded" +msgid "maximum number of statistics slots exceeded: %d" +msgstr "se superó el número máximo de subtransacciones comprometidas (%d)" + +#: statistics/attribute_stats.c:945 +#, fuzzy, c-format +#| msgid "cannot assign to system column \"%s\"" +msgid "cannot clear statistics on system column \"%s\"" +msgstr "no se puede asignar a la columna de sistema «%s»" + +#: statistics/extended_stats.c:175 #, c-format msgid "statistics object \"%s.%s\" could not be computed for relation \"%s.%s\"" msgstr "el objeto de estadísticas «%s.%s» no pudo ser calculado para la relación «%s.%s»" @@ -22056,57 +23199,243 @@ msgstr "el objeto de estadísticas «%s.%s» no pudo ser calculado para la relac msgid "function returning record called in context that cannot accept type record" msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo" -#: storage/buffer/bufmgr.c:649 storage/buffer/bufmgr.c:805 -#, c-format -msgid "cannot access temporary tables of other sessions" -msgstr "no se pueden acceder tablas temporales de otras sesiones" +#: statistics/relation_stats.c:115 +#, fuzzy, c-format +#| msgid "%s must be less than %s" +msgid "argument \"%s\" must not be less than -1.0" +msgstr "%s debe ser menor que %s" + +#: statistics/stat_utils.c:44 +#, fuzzy, c-format +#| msgid "argument %d: key must not be null" +msgid "argument \"%s\" must not be null" +msgstr "argumento %d: la llave no puede ser null" + +#: statistics/stat_utils.c:71 +#, fuzzy, c-format +#| msgid "argument must be empty or one-dimensional array" +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "el argumento debe ser vacío o un array unidimensional" + +#: statistics/stat_utils.c:80 +#, fuzzy, c-format +#| msgid "ACL arrays must not contain null values" +msgid "argument \"%s\" array must not contain null values" +msgstr "los arrays de ACL no pueden contener valores nulos" + +#: statistics/stat_utils.c:111 +#, fuzzy, c-format +#| msgid "aggregate msfunc must be specified when mstype is specified" +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "debe especificarse la función de transición msfunc cuando se especifica mstype" + +#: statistics/stat_utils.c:178 +#, fuzzy, c-format +#| msgid "cannot define statistics for relation \"%s\"" +msgid "cannot modify statistics for relation \"%s\"" +msgstr "no se puede definir estadísticas para la relación «%s»" + +#: statistics/stat_utils.c:199 +#, fuzzy, c-format +#| msgid "cannot define statistics for relation \"%s\"" +msgid "cannot modify statistics for shared relation" +msgstr "no se puede definir estadísticas para la relación «%s»" + +#: statistics/stat_utils.c:252 +#, fuzzy, c-format +#| msgid "unrecognized event name \"%s\"" +msgid "unrecognized argument name: \"%s\"" +msgstr "nommre de evento «%s» no reconocido" -#: storage/buffer/bufmgr.c:1532 +#: statistics/stat_utils.c:266 +#, fuzzy, c-format +#| msgid "argument of %s must be type %s, not type %s" +msgid "argument \"%s\" has type %s, expected type %s" +msgstr "el argumento de %s debe ser de tipo %s, no tipo %s" + +#: statistics/stat_utils.c:307 +#, fuzzy, c-format +#| msgid "argument of %s must be a name" +msgid "variadic arguments must be name/value pairs" +msgstr "el argumento de %s debe ser un nombre" + +#: statistics/stat_utils.c:308 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" -msgstr "la página no es válida en el bloque %u de la relación «%s»; reinicializando la página" +msgid "Provide an even number of variadic arguments that can be divided into pairs." +msgstr "" + +#: statistics/stat_utils.c:322 +#, fuzzy, c-format +#| msgid "path element at position %d is null" +msgid "name at variadic position %d is null" +msgstr "el elemento en la posición %d de la ruta es null" + +#: statistics/stat_utils.c:326 +#, c-format +msgid "name at variadic position %d has type %s, expected type %s" +msgstr "" + +#: storage/aio/aio.c:1340 +#, c-format +msgid "Only -1 or values bigger than 0 are valid." +msgstr "" + +#: storage/aio/method_io_uring.c:369 +msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." +msgstr "" -#: storage/buffer/bufmgr.c:2277 storage/buffer/localbuf.c:361 +#: storage/aio/method_io_uring.c:374 +#, fuzzy, 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»." + +#: 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." + +#: storage/aio/method_io_uring.c:388 +#, fuzzy, c-format +#| msgid "could not delete file \"%s\": %m" +msgid "could not setup io_uring queue: %m" +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 "" + +#: storage/aio/method_worker.c:382 +#, c-format +msgid "I/O worker executing I/O on behalf of process %d" +msgstr "" + +#: storage/buffer/bufmgr.c:662 storage/buffer/bufmgr.c:818 +#, c-format +msgid "cannot access temporary tables of other sessions" +msgstr "no se pueden acceder tablas temporales de otras sesiones" + +#: storage/buffer/bufmgr.c:2703 storage/buffer/localbuf.c:393 #, c-format 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:2348 -#, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" +#: storage/buffer/bufmgr.c:2774 +#, fuzzy, 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" -#: 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 "Esto parece ocurrir sólo con kernels defectuosos; considere actualizar su sistema." -#: storage/buffer/bufmgr.c:5653 +#: storage/buffer/bufmgr.c:6178 #, c-format msgid "could not write block %u of %s" msgstr "no se pudo escribir el bloque %u de %s" -#: storage/buffer/bufmgr.c:5655 +#: storage/buffer/bufmgr.c:6182 #, c-format msgid "Multiple failures --- write error might be permanent." msgstr "Múltiples fallas --- el error de escritura puede ser permanente." -#: storage/buffer/bufmgr.c:5677 storage/buffer/bufmgr.c:5697 -#, c-format -msgid "writing block %u of relation %s" +#: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 +#, fuzzy, 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" -#: storage/buffer/localbuf.c:220 +#: storage/buffer/bufmgr.c:7313 +#, c-format +msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation \"%s\"" +msgstr "" + +#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7344 +#, c-format +msgid "Block %u held the first zeroed page." +msgstr "" + +#: storage/buffer/bufmgr.c:7318 +#, fuzzy, c-format +#| msgid "See server log for query details." +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] "Vea el registro del servidor para obtener detalles de las consultas." +msgstr[1] "Vea el registro del servidor para obtener detalles de las consultas." + +#: storage/buffer/bufmgr.c:7335 +#, fuzzy, c-format +#| msgid "invalid page in block %u of relation %s" +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "la página no es válida en el bloque %u de la relación %s" + +#: storage/buffer/bufmgr.c:7336 +#, c-format +msgid "Block %u held the first invalid page." +msgstr "" + +#: storage/buffer/bufmgr.c:7337 +#, fuzzy, c-format +#| msgid "See server log for query details." +msgid "See server log for the other %u invalid block(s)." +msgstr "Vea el registro del servidor para obtener detalles de las consultas." + +#: storage/buffer/bufmgr.c:7342 +#, fuzzy, c-format +#| msgid "invalid page in block %u of relation %s; zeroing out page" +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "la página no es válida en el bloque %u de la relación «%s»; reinicializando la página" + +#: storage/buffer/bufmgr.c:7343 +#, fuzzy, c-format +#| msgid "invalid page in block %u of relation %s" +msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "la página no es válida en el bloque %u de la relación %s" + +#: storage/buffer/bufmgr.c:7345 +#, fuzzy, c-format +#| msgid "See server log for query details." +msgid "See server log for the other %u zeroed block(s)." +msgstr "Vea el registro del servidor para obtener detalles de las consultas." + +#: storage/buffer/bufmgr.c:7350 +#, fuzzy, c-format +#| msgid "invalid page in block %u of relation %s" +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "la página no es válida en el bloque %u de la relación %s" + +#: storage/buffer/bufmgr.c:7351 +#, fuzzy, c-format +#| msgid "while vacuuming block %u of relation \"%s.%s\"" +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "haciendo «vacuum» al bloque %u de la relación «%s.%s»" + +#: storage/buffer/bufmgr.c:7352 +#, c-format +msgid "Block %u held the first ignored page." +msgstr "" + +#: storage/buffer/bufmgr.c:7353 +#, fuzzy, c-format +#| msgid "See server log for query details." +msgid "See server log for the other %u ignored block(s)." +msgstr "Vea el registro del servidor para obtener detalles de las consultas." + +#: storage/buffer/localbuf.c:272 #, c-format msgid "no empty local buffer available" msgstr "no hay ningún búfer local disponible" -#: storage/buffer/localbuf.c:597 +#: storage/buffer/localbuf.c:736 #, c-format msgid "cannot access temporary tables during a parallel operation" msgstr "no se pueden acceder tablas temporales durante una operación paralela" -#: 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» no puede ser cambiado después de que cualquier tabla temporal haya sido accedida en la sesión." @@ -22126,155 +23455,168 @@ msgstr "no se pudo leer del “file set” «%s»: se leyeron sólo %zu de %zu b msgid "could not read from temporary file: read only %zu of %zu bytes" msgstr "no se pudo leer del archivo temporal: se leyeron sólo %zu de %zu bytes" -#: 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 "no se pudo determinar el tamaño del archivo temporal «%s» del BufFile «%s»: %m" -#: storage/file/buffile.c:956 +#: storage/file/buffile.c:951 #, c-format msgid "could not delete fileset \"%s\": %m" msgstr "no se pudo borrar el “fileset” «%s»: %m" -#: storage/file/buffile.c:974 storage/smgr/md.c:336 storage/smgr/md.c:1194 +#: 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 "no se pudo truncar el archivo «%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 +#, fuzzy, c-format +#| msgid "could not copy file \"%s\" to \"%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 #, c-format msgid "could not flush dirty data: %m" msgstr "no se pudo sincronizar (flush) datos «sucios»: %m" -#: storage/file/fd.c:613 +#: storage/file/fd.c:610 #, 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:665 +#: storage/file/fd.c:662 #, 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:983 +#: storage/file/fd.c:980 #, c-format msgid "getrlimit failed: %m" msgstr "getrlimit falló: %m" -#: storage/file/fd.c:1073 +#: storage/file/fd.c:1071 #, 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:1074 -#, c-format -msgid "System allows %d, server needs at least %d." +#: storage/file/fd.c:1072 +#, 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: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 "se agotaron los descriptores de archivo: %m; libere e intente nuevamente" -#: storage/file/fd.c:1536 +#: storage/file/fd.c:1537 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "archivo temporal: ruta «%s», tamaño %lu" -#: storage/file/fd.c:1675 +#: storage/file/fd.c:1676 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "no se pudo crear el directorio temporal «%s»: %m" -#: storage/file/fd.c:1682 +#: storage/file/fd.c:1683 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "no se pudo crear el subdirectorio temporal «%s»: %m" -#: storage/file/fd.c:1879 +#: storage/file/fd.c:1880 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "no se pudo crear el archivo temporal «%s»: %m" -#: storage/file/fd.c:1915 +#: storage/file/fd.c:1916 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "no se pudo abrir el archivo temporal «%s»: %m" -#: storage/file/fd.c:1956 +#: storage/file/fd.c:1957 #, 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:2044 +#: storage/file/fd.c:2047 #, c-format msgid "could not delete file \"%s\": %m" msgstr "no se pudo borrar el archivo «%s»: %m" -#: storage/file/fd.c:2234 -#, c-format -msgid "temporary file size exceeds temp_file_limit (%dkB)" +#: storage/file/fd.c:2286 +#, 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: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 "se excedió maxAllocatedDescs (%d) mientras se trataba de abrir el archivo «%s»" -#: storage/file/fd.c:2698 +#: storage/file/fd.c:2756 #, 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:2854 +#: storage/file/fd.c:2915 #, 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:3384 +#: storage/file/fd.c:3446 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "archivo inesperado en directorio de archivos temporales: «%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 "sincronizando el directorio de datos (syncfs), transcurrido: %ld.%02d s, ruta actual: %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 "sincronizando el directorio de datos (pre-fsync), transcurrido: %ld.%02d s, ruta actual: %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 "sincronizando el directorio de datos (fsync), transcurrido: %ld.%02d s, ruta actual: %s" -#: storage/file/fd.c:3950 -#, c-format -msgid "\"debug_io_direct\" is not supported on this platform." -msgstr "«debug_io_direct» no está soportado en esta plataforma." +#: storage/file/fd.c:4012 +#, 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:3964 -#, c-format -msgid "Invalid list syntax in parameter \"%s\"" +#: storage/file/fd.c:4027 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:3984 -#, c-format -msgid "Invalid option \"%s\"" +#: storage/file/fd.c:4047 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:3997 -#, c-format -msgid "\"debug_io_direct\" is not supported for WAL because XLOG_BLCKSZ is too small" +#: storage/file/fd.c:4060 +#, 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:4004 -#, c-format -msgid "\"debug_io_direct\" is not supported for data because BLCKSZ is too small" +#: storage/file/fd.c:4068 +#, 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." msgstr "«debug_io_direct» no está soportado para datos porque BLCKSZ es demasiado pequeño" #: storage/file/reinit.c:145 @@ -22382,38 +23724,55 @@ msgstr "el tamaño del segmento DSM debe ser distinto de cero" 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" -#: storage/ipc/procarray.c:488 storage/lmgr/proc.c:357 -#: 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 "lo siento, ya tenemos demasiados clientes" -#: storage/ipc/procarray.c:3857 +#: storage/ipc/procarray.c:3858 #, c-format msgid "database \"%s\" is being used by prepared transactions" msgstr "la base de datos «%s» está siendo utilizada por transacciones preparadas" -#: 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 "se ha denegado el permiso para terminar el proceso" -#: 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ólo roles con el atributo %s pueden terminar procesos de roles con el atributo %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ólo roles con privilegios del rol cuyo proceso está siendo terminados o con privilegios del rol «%s» pueden terminar este proceso." -#: storage/ipc/procsignal.c:416 +#: storage/ipc/procsignal.c:451 #, c-format msgid "still waiting for backend with PID %d to accept ProcSignalBarrier" msgstr "aún esperando que el backend con PID %d acepte ProcSignalBarrier" +#: storage/ipc/procsignal.c:733 +#, fuzzy, c-format +#| msgid "invalid next transaction ID" +msgid "invalid cancel request with PID 0" +msgstr "el siguiente ID de transacción no es válido" + +#: storage/ipc/procsignal.c:788 +#, c-format +msgid "wrong key in cancel request for process %d" +msgstr "llave incorrecta en la petición de cancelación para el proceso %d" + +#: storage/ipc/procsignal.c:797 +#, c-format +msgid "PID %d in cancel request did not match any process" +msgstr "el PID %d en la petición de cancelación no coincidió con ningún proceso" + #: storage/ipc/shm_mq.c:383 #, c-format msgid "cannot send a message of size %zu via shared memory queue" @@ -22424,12 +23783,12 @@ msgstr "no se puede enviar un mensaje de tamaño %zu mediante la cola de memoria msgid "invalid message size %zu in shared memory queue" msgstr "tamaño no válido de mensaje %zu en cola de memoria compartida" -#: 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:2835 storage/lmgr/lock.c:4220 -#: storage/lmgr/lock.c:4285 storage/lmgr/lock.c:4635 -#: storage/lmgr/predicate.c:2468 storage/lmgr/predicate.c:2483 -#: storage/lmgr/predicate.c:3880 storage/lmgr/predicate.c:4927 -#: 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 "memoria compartida agotada" @@ -22459,270 +23818,291 @@ msgstr "el espacio de memoria compartida es insuficiente para la estructura «%s msgid "requested shared memory size overflows size_t" msgstr "la petición de tamaño de memoria compartida desborda 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 no es un proceso servidor de PostgreSQL" -#: storage/ipc/signalfuncs.c:109 storage/lmgr/proc.c:1453 -#: 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 "no se pudo enviar la señal al proceso %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 "se ha denegado el permiso para cancelar la consulta" -#: 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ólo roles con el atributo %s pueden cancelar consultas de roles con el atributo %s." -#: storage/ipc/signalfuncs.c:137 +#: storage/ipc/signalfuncs.c:151 +#, c-format +#| msgid "Only roles with privileges of the \"%s\" role may COPY to a file." +msgid "Only roles with privileges of the \"%s\" role may cancel autovacuum workers." +msgstr "Sólo los roles con privilegios del rol «%s» pueden cancelar «autovacuum workers»." + +#: 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ólo roles con privilegios del rol cuya consulta está siendo cancelada o con privilegios del rol «%s» pueden cancelar esta consulta." -#: 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 "no se pudo comprobar la existencia del proceso de servidor con 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] "el proceso de servidor con PID %d no terminó dentro de %lld milisegundo" -msgstr[1] "el proceso de servidor con PID %d no terminó dentro de %lld milisegundos" +#| msgid "backend with PID %d did not terminate within %lld millisecond" +#| msgid_plural "backend with PID %d did not terminate within %lld milliseconds" +msgid "backend with PID %d did not terminate within % millisecond" +msgid_plural "backend with PID %d did not terminate within % milliseconds" +msgstr[0] "el proceso de servidor con PID %d no terminó dentro de % milisegundo" +msgstr[1] "el proceso de servidor con PID %d no terminó dentro de % milisegundos" -#: storage/ipc/signalfuncs.c:228 +#: storage/ipc/signalfuncs.c:249 #, c-format msgid "\"timeout\" must not be negative" msgstr "\"timeout\" no debe ser negativo" -#: storage/ipc/signalfuncs.c:285 +#: storage/ipc/signalfuncs.c:264 +#, c-format +#| msgid "Only roles with privileges of the \"%s\" role may examine this parameter." +msgid "Only roles with privileges of the \"%s\" role may terminate autovacuum workers." +msgstr "Sólo roles con privilegios del rol «%s» pueden terminar «autovacuum workers»." + +#: storage/ipc/signalfuncs.c:313 #, c-format msgid "rotation not possible because log collection not active" msgstr "la rotación no es posible porque la recoleccion de log no está activa" -#: storage/ipc/standby.c:329 +#: storage/ipc/standby.c:330 #, c-format msgid "recovery still waiting after %ld.%03d ms: %s" msgstr "la recuperación aún está esperando después de %ld.%03d ms: %s" -#: storage/ipc/standby.c:338 +#: storage/ipc/standby.c:339 #, c-format msgid "recovery finished waiting after %ld.%03d ms: %s" msgstr "la recuperación terminó de esperar después de %ld.%03d ms: %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 "cancelando la sentencia debido a un conflicto con la recuperación" -#: 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 "La transacción del usuario causó un «deadlock» con la recuperación." -#: storage/ipc/standby.c:1486 +#: storage/ipc/standby.c:1494 msgid "unknown reason" msgstr "razón desconocida" -#: storage/ipc/standby.c:1491 +#: storage/ipc/standby.c:1499 msgid "recovery conflict on buffer pin" msgstr "conflicto de recuperación en «pin» de búfer" -#: storage/ipc/standby.c:1494 +#: storage/ipc/standby.c:1502 msgid "recovery conflict on lock" msgstr "conflicto de recuperación en bloqueo" -#: storage/ipc/standby.c:1497 +#: storage/ipc/standby.c:1505 msgid "recovery conflict on tablespace" msgstr "conflicto de recuperación en tablespace" -#: storage/ipc/standby.c:1500 +#: storage/ipc/standby.c:1508 msgid "recovery conflict on snapshot" msgstr "conflicto de recuperación en snapshot" -#: storage/ipc/standby.c:1503 +#: storage/ipc/standby.c:1511 msgid "recovery conflict on replication slot" msgstr "conflicto de recuperación en slot de replicación" -#: storage/ipc/standby.c:1506 +#: storage/ipc/standby.c:1514 msgid "recovery conflict on buffer deadlock" msgstr "conflicto de recuperación en deadlock de búfer" -#: storage/ipc/standby.c:1509 +#: storage/ipc/standby.c:1517 msgid "recovery conflict on database" msgstr "conflicto de recuperación en base de datos" -#: 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 "la entrada pg_largeobject para el OID %u, página %d tiene tamaño de campo %d no válido" -#: 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 "opciones no válidas para abrir un objeto grande: %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 "permiso denegado al objeto grande %u" -#: storage/large_object/inv_api.c:455 +#: storage/large_object/inv_api.c:417 #, c-format msgid "invalid whence setting: %d" msgstr "parámetro «whence» no válido: %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 "tamaño de petición de escritura de objeto grande no válido: %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 "El proceso %d espera %s en %s; bloqueado por proceso %d." -#: storage/lmgr/deadlock.c:1123 +#: storage/lmgr/deadlock.c:1126 #, c-format msgid "Process %d: %s" msgstr "Proceso %d: %s" -#: storage/lmgr/deadlock.c:1132 +#: storage/lmgr/deadlock.c:1135 #, c-format msgid "deadlock detected" msgstr "se ha detectado un deadlock" -#: storage/lmgr/deadlock.c:1135 +#: storage/lmgr/deadlock.c:1138 #, c-format msgid "See server log for query details." msgstr "Vea el registro del servidor para obtener detalles de las consultas." -#: storage/lmgr/lmgr.c:848 +#: storage/lmgr/lmgr.c:862 #, c-format msgid "while updating tuple (%u,%u) in relation \"%s\"" msgstr "mientras se actualizaba la tupla (%u,%u) en la relación «%s»" -#: storage/lmgr/lmgr.c:851 +#: storage/lmgr/lmgr.c:865 #, c-format msgid "while deleting tuple (%u,%u) in relation \"%s\"" msgstr "mientras se borraba la tupla (%u,%u) en la relación «%s»" -#: storage/lmgr/lmgr.c:854 +#: storage/lmgr/lmgr.c:868 #, c-format msgid "while locking tuple (%u,%u) in relation \"%s\"" msgstr "mientras se bloqueaba la tupla (%u,%u) de la relación «%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 "mientras se bloqueaba la versión actualizada (%u,%u) en la relación «%s»" -#: storage/lmgr/lmgr.c:860 +#: storage/lmgr/lmgr.c:874 #, c-format msgid "while inserting index tuple (%u,%u) in relation \"%s\"" msgstr "mientras se insertaba la tupla de índice (%u,%u) en la relación «%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 "mientras se verificaba la unicidad de la tupla (%u,%u) en la relación «%s»" -#: storage/lmgr/lmgr.c:866 +#: storage/lmgr/lmgr.c:880 #, c-format msgid "while rechecking updated tuple (%u,%u) in relation \"%s\"" msgstr "mientras se verificaba la tupla actualizada (%u,%u) en la relación «%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 "mientras se verificaba una restricción de exclusión en la tupla (%u,%u) en la relación «%s»" -#: storage/lmgr/lmgr.c:1239 +#: storage/lmgr/lmgr.c:1255 #, c-format msgid "relation %u of database %u" msgstr "relación %u de la base de datos %u" -#: storage/lmgr/lmgr.c:1245 +#: storage/lmgr/lmgr.c:1261 #, c-format msgid "extension of relation %u of database %u" msgstr "extensión de la relación %u de la base de datos %u" -#: storage/lmgr/lmgr.c:1251 +#: storage/lmgr/lmgr.c:1267 #, c-format msgid "pg_database.datfrozenxid of database %u" msgstr "pg_database.datfrozenxid de la base de datos %u" -#: storage/lmgr/lmgr.c:1256 +#: storage/lmgr/lmgr.c:1272 #, c-format msgid "page %u of relation %u of database %u" msgstr "página %u de la relación %u de la base de datos %u" -#: storage/lmgr/lmgr.c:1263 +#: storage/lmgr/lmgr.c:1279 #, c-format msgid "tuple (%u,%u) of relation %u of database %u" msgstr "tupla (%u,%u) de la relación %u de la base de datos %u" -#: storage/lmgr/lmgr.c:1271 +#: storage/lmgr/lmgr.c:1287 #, c-format msgid "transaction %u" msgstr "transacción %u" -#: storage/lmgr/lmgr.c:1276 +#: storage/lmgr/lmgr.c:1292 #, c-format msgid "virtual transaction %d/%u" msgstr "transacción virtual %d/%u" -#: storage/lmgr/lmgr.c:1282 +#: storage/lmgr/lmgr.c:1298 #, c-format msgid "speculative token %u of transaction %u" msgstr "token especulativo %u de la transacción %u" -#: storage/lmgr/lmgr.c:1288 +#: storage/lmgr/lmgr.c:1304 #, c-format msgid "object %u of class %u of database %u" msgstr "objeto %u de clase %u de la base de datos %u" -#: storage/lmgr/lmgr.c:1296 +#: storage/lmgr/lmgr.c:1312 #, c-format msgid "user lock [%u,%u,%u]" msgstr "“lock” de usuario [%u,%u,%u]" # XXX is this a good translation? -#: storage/lmgr/lmgr.c:1303 +#: storage/lmgr/lmgr.c:1319 #, c-format msgid "advisory lock [%u,%u,%u,%u]" msgstr "“lock” consultivo [%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 "transacción remota %u de la suscripción %u de la base de datos %u" -#: storage/lmgr/lmgr.c:1318 +#: storage/lmgr/lmgr.c:1334 #, c-format msgid "unrecognized locktag type %d" msgstr "tipo de locktag %d no reconocido" -#: 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 "no se puede adquirir “lock” en modo %s en objetos de la base de datos mientras la recuperación está en proceso" -#: 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 "Sólo “locks” RowExclusiveLock o menor pueden ser adquiridos en objetos de la base de datos durante la recuperación." -#: storage/lmgr/lock.c:3284 storage/lmgr/lock.c:3352 storage/lmgr/lock.c:3468 +#: storage/lmgr/lock.c:1185 +#, fuzzy, c-format +#| msgid "could not obtain database OID: %s" +msgid "process %d could not obtain %s on %s" +msgstr "no se pudo obtener el OID de base de datos: %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 "no se puede hacer PREPARE mientras se mantienen “locks” a nivel de sesión y transacción simultáneamente sobre el mismo objeto" @@ -22742,678 +24122,725 @@ msgstr "Puede ser necesario ejecutar menos transacciones al mismo tiempo, o incr msgid "not enough elements in RWConflictPool to record a potential read/write conflict" msgstr "no hay suficientes elementos en RWConflictPool para registrar un potencial conflicto read/write" -#: storage/lmgr/predicate.c:1686 +#: storage/lmgr/predicate.c:1696 #, c-format msgid "\"default_transaction_isolation\" is set to \"serializable\"." msgstr "«default_transaction_isolation» está definido a «serializable»." -#: storage/lmgr/predicate.c:1687 +#: storage/lmgr/predicate.c:1697 #, c-format msgid "You can use \"SET default_transaction_isolation = 'repeatable read'\" to change the default." msgstr "Puede usar «SET default_transaction_isolation = 'repeatable read'» para cambiar el valor por omisión." -#: storage/lmgr/predicate.c:1738 +#: storage/lmgr/predicate.c:1748 #, c-format msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE" msgstr "una transacción que importa un snapshot no debe ser READ ONLY DEFERRABLE" -#: storage/lmgr/predicate.c:1817 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 "no se pudo importar el snapshot solicitado" -#: storage/lmgr/predicate.c:1818 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 "El proceso de origen con PID %d ya no está en ejecución." -#: storage/lmgr/predicate.c:3991 storage/lmgr/predicate.c:4027 -#: storage/lmgr/predicate.c:4060 storage/lmgr/predicate.c:4068 -#: storage/lmgr/predicate.c:4107 storage/lmgr/predicate.c:4337 -#: storage/lmgr/predicate.c:4656 storage/lmgr/predicate.c:4668 -#: storage/lmgr/predicate.c:4715 storage/lmgr/predicate.c:4751 +#: 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 "no se pudo serializar el acceso debido a dependencias read/write entre transacciones" -#: storage/lmgr/predicate.c:3993 storage/lmgr/predicate.c:4029 -#: storage/lmgr/predicate.c:4062 storage/lmgr/predicate.c:4070 -#: storage/lmgr/predicate.c:4109 storage/lmgr/predicate.c:4339 -#: storage/lmgr/predicate.c:4658 storage/lmgr/predicate.c:4670 -#: storage/lmgr/predicate.c:4717 storage/lmgr/predicate.c:4753 +#: 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 "La transacción podría tener éxito si es reintentada." -#: storage/lmgr/proc.c:353 +#: storage/lmgr/proc.c:453 #, c-format msgid "number of requested standby connections exceeds \"max_wal_senders\" (currently %d)" msgstr "la cantidad de conexiones standby pedidas excede «max_wal_senders» (actualmente %d)" -#: storage/lmgr/proc.c:1546 +#: 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 "el proceso %d evitó un deadlock para %s en %s reordenando la cola después de %ld.%03d ms" -#: storage/lmgr/proc.c:1561 +#: storage/lmgr/proc.c:1606 #, c-format msgid "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms" msgstr "el proceso %d detectó un deadlock mientras esperaba %s en %s después de %ld.%03d ms" -#: storage/lmgr/proc.c:1570 +#: storage/lmgr/proc.c:1615 #, c-format msgid "process %d still waiting for %s on %s after %ld.%03d ms" msgstr "el proceso %d aún espera %s en %s después de %ld.%03d ms" -#: storage/lmgr/proc.c:1577 +#: storage/lmgr/proc.c:1622 #, c-format msgid "process %d acquired %s on %s after %ld.%03d ms" msgstr "el proceso %d adquirió %s en %s después de %ld.%03d ms" -#: storage/lmgr/proc.c:1594 +#: storage/lmgr/proc.c:1639 #, c-format msgid "process %d failed to acquire %s on %s after %ld.%03d ms" msgstr "el proceso %d no pudo adquirir %s en %s después de %ld.%03d ms" -#: storage/page/bufpage.c:152 +#: storage/page/bufpage.c:154 #, c-format msgid "page verification failed, calculated checksum %u but expected %u" msgstr "la suma de verificación falló, se calculó %u pero se esperaba %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 "los punteros de página están corruptos: inferior = %u, superior = %u, especial = %u" -#: storage/page/bufpage.c:759 +#: storage/page/bufpage.c:758 #, c-format msgid "corrupted line pointer: %u" msgstr "puntero de ítem corrupto: %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 "los largos de ítem están corruptos: total %u, espacio disponible %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 "puntero de ítem corrupto: desplazamiento = %u, tamaño = %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 "no se pudo extender el archivo «%s» más allá de %u bloques" -#: 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 "no se pudo extender el archivo «%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 "no se pudo extender el archivo «%s»: sólo se escribieron %d de %d bytes en el bloque %u" -#: storage/smgr/md.c:589 +#: storage/smgr/md.c:606 #, 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: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 "no se pudo leer los bloques %u..%u del archivo «%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 "no se pudo leer los bloques %u..%u del archivo «%s»: se leyeron sólo %zu de %zu bytes" -#: storage/smgr/md.c:995 +#: storage/smgr/md.c:1023 +#, 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 #, 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:1165 +#: storage/smgr/md.c:1289 #, 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:1220 +#: storage/smgr/md.c:1344 #, 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:1700 +#: storage/smgr/md.c:1832 #, 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:1714 +#: storage/smgr/md.c:1846 #, c-format msgid "could not open file \"%s\" (target block %u): %m" msgstr "no se pudo abrir el archivo «%s» (bloque buscado %u): %m" -#: tcop/backend_startup.c:85 +#: storage/smgr/smgr.c:1106 +#, fuzzy, c-format +#| msgid ", \"%s\"" +msgid "file \"%s\"" +msgstr ", «%s»" + +#: storage/smgr/smgr.c:1108 +#, 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 +#, fuzzy, c-format +#| msgid "could not read blocks %u..%u in file \"%s\": %m" +msgid "blocks %u..%u in file \"%s\"" +msgstr "no se pudo leer los bloques %u..%u del archivo «%s»: %m" + +#: tcop/backend_startup.c:104 #, c-format msgid "SSL configuration could not be loaded in child process" msgstr "No se pudo cargar la configuración SSL en proceso secundario" -#: tcop/backend_startup.c:208 +#: tcop/backend_startup.c:226 #, c-format msgid "connection received: host=%s port=%s" msgstr "conexión recibida: host=%s port=%s" -#: tcop/backend_startup.c:213 +#: tcop/backend_startup.c:231 #, c-format msgid "connection received: host=%s" msgstr "conexión recibida: host=%s" -#: tcop/backend_startup.c:277 +#: tcop/backend_startup.c:309 #, c-format msgid "the database system is starting up" msgstr "el sistema de base de datos está iniciándose" -#: tcop/backend_startup.c:283 +#: tcop/backend_startup.c:315 +#, c-format +msgid "the database system is not accepting connections" +msgstr "el sistema de bases de datos no está aceptando conexiones" + +#: tcop/backend_startup.c:316 +#, c-format +msgid "Hot standby mode is disabled." +msgstr "El modo hot standby está desactivado." + +#: tcop/backend_startup.c:320 tcop/backend_startup.c:327 #, c-format msgid "the database system is not yet accepting connections" msgstr "el sistema de bases de datos aún no está aceptando conexiones" -#: tcop/backend_startup.c:284 +#: tcop/backend_startup.c:321 #, c-format -msgid "Consistent recovery state has not been yet reached." -msgstr "Aún no se ha alcanzado un estado de recuperación consistente." +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 "el sistema de bases de datos no está aceptando conexiones" +msgid "To enable hot standby, close write transactions with more than %d subtransactions on the primary server." +msgstr "" -#: tcop/backend_startup.c:289 +#: tcop/backend_startup.c:328 #, c-format -msgid "Hot standby mode is disabled." -msgstr "El modo hot standby está desactivado." +msgid "Consistent recovery state has not been yet reached." +msgstr "Aún no se ha alcanzado un estado de recuperación consistente." -#: tcop/backend_startup.c:294 +#: tcop/backend_startup.c:333 #, c-format msgid "the database system is shutting down" msgstr "el sistema de base de datos está apagándose" -#: tcop/backend_startup.c:299 +#: tcop/backend_startup.c:338 #, c-format msgid "the database system is in recovery mode" msgstr "el sistema de base de datos está en modo de recuperación" -#: tcop/backend_startup.c:414 +#: tcop/backend_startup.c:453 #, c-format msgid "received direct SSL connection request without ALPN protocol negotiation extension" msgstr "se recibió petición de conexión SSL directa sin la extensión de negociación de protocolo ALPN" -#: tcop/backend_startup.c:420 +#: tcop/backend_startup.c:459 #, c-format msgid "direct SSL connection accepted" msgstr "conexión SSL directa aceptada" -#: tcop/backend_startup.c:430 +#: tcop/backend_startup.c:469 #, c-format msgid "direct SSL connection rejected" msgstr "conexión SSL directa rechazada" -#: 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 "el paquete de inicio está incompleto" -#: tcop/backend_startup.c:501 tcop/backend_startup.c:538 +#: tcop/backend_startup.c:540 #, c-format msgid "invalid length of startup packet" msgstr "el de paquete de inicio tiene largo incorrecto" -#: tcop/backend_startup.c:573 +#: tcop/backend_startup.c:597 #, c-format msgid "SSLRequest accepted" msgstr "SSLRequest aceptado" -#: tcop/backend_startup.c:576 +#: tcop/backend_startup.c:600 #, c-format msgid "SSLRequest rejected" msgstr "SSLRequest rechazado" -#: tcop/backend_startup.c:585 +#: tcop/backend_startup.c:609 #, c-format msgid "failed to send SSL negotiation response: %m" msgstr "no se pudo enviar la respuesta de negociación SSL: %m" -#: tcop/backend_startup.c:603 +#: tcop/backend_startup.c:627 #, c-format msgid "received unencrypted data after SSL request" msgstr "se recibieron datos no cifrados después de petición 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 "Esto podría ser un error en el software cliente o evidencia de un intento de ataque man-in-the-middle." -#: tcop/backend_startup.c:627 +#: tcop/backend_startup.c:651 #, c-format msgid "GSSENCRequest accepted" msgstr "GSSENCRequest aceptado" -#: tcop/backend_startup.c:630 +#: tcop/backend_startup.c:654 #, c-format msgid "GSSENCRequest rejected" msgstr "GSSENCRequest rechazado" -#: tcop/backend_startup.c:639 +#: tcop/backend_startup.c:663 #, c-format msgid "failed to send GSSAPI negotiation response: %m" msgstr "no se pudo enviar la respuesta de negociación GSSAPI: %m" -#: tcop/backend_startup.c:657 +#: tcop/backend_startup.c:681 #, c-format msgid "received unencrypted data after GSSAPI encryption request" msgstr "se recibieron datos no cifrados después de petición de cifrado 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 "el protocolo %u.%u no está soportado: servidor soporta %u.0 hasta %u.%u" -#: tcop/backend_startup.c:744 +#: tcop/backend_startup.c:772 #, c-format msgid "Valid values are: \"false\", 0, \"true\", 1, \"database\"." msgstr "Los valores válidos son: «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 "el paquete de inicio no es válido: se esperaba un terminador en el último byte" -#: tcop/backend_startup.c:802 +#: tcop/backend_startup.c:830 #, c-format msgid "no PostgreSQL user name specified in startup packet" msgstr "no se especifica un nombre de usuario en el paquete de inicio" -#: tcop/fastpath.c:142 utils/fmgr/fmgr.c:2161 +#: tcop/backend_startup.c:884 +#, fuzzy, c-format +#| msgid "invalid length of startup packet" +msgid "invalid length of cancel request packet" +msgstr "el de paquete de inicio tiene largo incorrecto" + +#: tcop/backend_startup.c:892 +#, fuzzy, c-format +#| msgid "invalid length of startup packet" +msgid "invalid length of cancel key in cancel request packet" +msgstr "el de paquete de inicio tiene largo incorrecto" + +#: tcop/backend_startup.c:1022 +#, fuzzy, c-format +#| msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" +msgid "Cannot specify log_connections option \"%s\" in a list with other options." +msgstr "no se puede especificar el slot de replicación lógica «%s» en el parámetro «%s»" + +#: tcop/fastpath.c:141 utils/fmgr/fmgr.c:2161 #, c-format msgid "function with OID %u does not exist" msgstr "no existe la función con OID %u" -#: tcop/fastpath.c:149 +#: tcop/fastpath.c:148 #, c-format msgid "cannot call function \"%s\" via fastpath interface" msgstr "no se puede llamar a la función «%s» mediante la interfaz fastpath" -#: tcop/fastpath.c:234 +#: tcop/fastpath.c:233 #, c-format msgid "fastpath function call: \"%s\" (OID %u)" msgstr "llamada a función 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 "duración: %s ms" -#: tcop/fastpath.c:317 +#: tcop/fastpath.c:316 #, c-format msgid "duration: %s ms fastpath function call: \"%s\" (OID %u)" msgstr "duración: %s ms llamada a función 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 "el mensaje de llamada a función contiene %d argumentos pero la función requiere %d" -#: tcop/fastpath.c:361 +#: tcop/fastpath.c:360 #, c-format msgid "function call message contains %d argument formats but %d arguments" msgstr "el mensaje de llamada a función contiene %d formatos de argumento pero %d argumentos" -#: tcop/fastpath.c:385 +#: tcop/fastpath.c:384 #, c-format msgid "invalid argument size %d in function call message" msgstr "el tamaño de argumento %d no es válido en el mensaje de llamada a función" -#: tcop/fastpath.c:448 +#: tcop/fastpath.c:447 #, c-format msgid "incorrect binary data format in function argument %d" msgstr "el formato de datos binarios es incorrecto en argumento %d a función" -#: 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 "el tipo de mensaje de frontend %d no es válido" -#: tcop/postgres.c:1076 +#: tcop/postgres.c:1070 #, c-format msgid "statement: %s" msgstr "sentencia: %s" -#: tcop/postgres.c:1374 +#: tcop/postgres.c:1368 #, c-format msgid "duration: %s ms statement: %s" msgstr "duración: %s ms sentencia: %s" -#: tcop/postgres.c:1480 +#: tcop/postgres.c:1474 #, c-format msgid "cannot insert multiple commands into a prepared statement" msgstr "no se pueden insertar múltiples órdenes en una sentencia preparada" -#: tcop/postgres.c:1610 +#: tcop/postgres.c:1604 #, c-format msgid "duration: %s ms parse %s: %s" msgstr "duración: %s ms parse: %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 "no existe una sentencia preparada sin nombre" -#: tcop/postgres.c:1729 +#: tcop/postgres.c:1723 #, c-format msgid "bind message has %d parameter formats but %d parameters" msgstr "el mensaje de «bind» tiene %d formatos de parámetro pero %d parámetros" -#: tcop/postgres.c:1735 +#: tcop/postgres.c:1729 #, c-format msgid "bind message supplies %d parameters, but prepared statement \"%s\" requires %d" msgstr "el mensaje de «bind» entrega %d parámetros, pero la sentencia preparada «%s» requiere %d" -#: tcop/postgres.c:1949 +#: tcop/postgres.c:1943 #, c-format msgid "incorrect binary data format in bind parameter %d" msgstr "el formato de datos binarios es incorrecto en el parámetro de «bind» %d" -#: tcop/postgres.c:2076 +#: tcop/postgres.c:2082 #, c-format msgid "duration: %s ms bind %s%s%s: %s" msgstr "duración: %s ms 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 "no existe el portal «%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 "ejecutar fetch desde" -#: tcop/postgres.c:2216 tcop/postgres.c:2342 +#: tcop/postgres.c:2233 tcop/postgres.c:2358 msgid "execute" msgstr "ejecutar" -#: tcop/postgres.c:2338 +#: tcop/postgres.c:2354 #, c-format msgid "duration: %s ms %s %s%s%s: %s" msgstr "duración: %s ms %s %s%s%s: %s" -#: tcop/postgres.c:2486 +#: tcop/postgres.c:2502 #, c-format msgid "prepare: %s" msgstr "prepare: %s" -#: tcop/postgres.c:2511 +#: tcop/postgres.c:2527 #, c-format msgid "Parameters: %s" msgstr "Parámetros: %s" -#: tcop/postgres.c:2526 +#: tcop/postgres.c:2542 #, c-format msgid "Abort reason: recovery conflict" msgstr "Razón para abortar: conflicto en la recuperación" -#: tcop/postgres.c:2542 +#: tcop/postgres.c:2558 #, c-format msgid "User was holding shared buffer pin for too long." msgstr "El usuario mantuvo el búfer compartido «clavado» por demasiado tiempo." -#: tcop/postgres.c:2545 +#: tcop/postgres.c:2561 #, c-format msgid "User was holding a relation lock for too long." msgstr "El usuario mantuvo una relación bloqueada por demasiado tiempo." -#: tcop/postgres.c:2548 +#: tcop/postgres.c:2564 #, c-format msgid "User was or might have been using tablespace that must be dropped." msgstr "El usuario estaba o pudo haber estado usando un tablespace que debía ser eliminado." -#: 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 "La consulta del usuario pudo haber necesitado examinar versiones de tuplas que debían eliminarse." -#: tcop/postgres.c:2554 +#: tcop/postgres.c:2570 #, c-format msgid "User was using a logical replication slot that must be invalidated." msgstr "El usuario estaba usando un slot de replicación lógica que debía ser invalidado." -#: tcop/postgres.c:2560 +#: tcop/postgres.c:2576 #, c-format msgid "User was connected to a database that must be dropped." msgstr "El usuario estaba conectado a una base de datos que debía ser eliminada." -#: tcop/postgres.c:2599 +#: tcop/postgres.c:2615 #, c-format msgid "portal \"%s\" parameter $%d = %s" msgstr "portal «%s» parámetro $%d = %s" -#: tcop/postgres.c:2602 +#: tcop/postgres.c:2618 #, c-format msgid "portal \"%s\" parameter $%d" msgstr "portal «%s» parámetro $%d" -#: tcop/postgres.c:2608 +#: tcop/postgres.c:2624 #, c-format msgid "unnamed portal parameter $%d = %s" msgstr "portal sin nombre, parámetro %d = %s" -#: tcop/postgres.c:2611 +#: tcop/postgres.c:2627 #, c-format msgid "unnamed portal parameter $%d" msgstr "portal sin nombre, parámetro %d" -#: tcop/postgres.c:2955 +#: tcop/postgres.c:2982 #, c-format msgid "terminating connection because of unexpected SIGQUIT signal" msgstr "terminando la conexión debido a una señal SIGQUIT inesperada" -#: tcop/postgres.c:2961 +#: tcop/postgres.c:2988 #, c-format msgid "terminating connection because of crash of another server process" msgstr "terminando la conexión debido a una falla en otro proceso servidor" -#: 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 "Postmaster ha ordenado que este proceso servidor cancele la transacción en curso y finalice la conexión, porque otro proceso servidor ha terminado anormalmente y podría haber corrompido la memoria compartida." -#: 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 "Dentro de un momento debería poder reconectarse y repetir la consulta." -#: tcop/postgres.c:2973 +#: tcop/postgres.c:3000 #, c-format msgid "terminating connection due to immediate shutdown command" msgstr "terminando la conexión debido a una orden de apagado inmediato" -#: tcop/postgres.c:3051 +#: tcop/postgres.c:3078 #, c-format msgid "floating-point exception" msgstr "excepción de coma flotante" -#: 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 "Se ha recibido una señal de una operación de coma flotante no válida. Esto puede significar un resultado fuera de rango o una operación no válida, como una división por cero." -#: tcop/postgres.c:3217 +#: tcop/postgres.c:3244 #, c-format msgid "terminating connection due to conflict with recovery" msgstr "terminando la conexión debido a un conflicto con la recuperación" -#: tcop/postgres.c:3289 +#: tcop/postgres.c:3316 #, c-format msgid "canceling authentication due to timeout" msgstr "cancelando la autentificación debido a que se agotó el tiempo de espera" -#: tcop/postgres.c:3293 +#: tcop/postgres.c:3320 #, c-format msgid "terminating autovacuum process due to administrator command" msgstr "terminando el proceso autovacuum debido a una orden del administrador" -#: tcop/postgres.c:3297 +#: tcop/postgres.c:3324 #, c-format msgid "terminating logical replication worker due to administrator command" msgstr "terminando el proceso de replicación lógica debido a una orden del administrador" -#: tcop/postgres.c:3317 +#: tcop/postgres.c:3339 +#, c-format +msgid "terminating walreceiver process due to administrator command" +msgstr "terminando el proceso walreceiver debido a una orden del administrador" + +#: tcop/postgres.c:3355 #, c-format msgid "terminating connection due to administrator command" msgstr "terminando la conexión debido a una orden del administrador" -#: tcop/postgres.c:3348 +#: tcop/postgres.c:3386 #, c-format msgid "connection to client lost" msgstr "se ha perdido la conexión al cliente" -#: tcop/postgres.c:3400 +#: tcop/postgres.c:3438 #, c-format msgid "canceling statement due to lock timeout" msgstr "cancelando la sentencia debido a que se agotó el tiempo de espera de “locks”" -#: tcop/postgres.c:3407 +#: tcop/postgres.c:3445 #, c-format msgid "canceling statement due to statement timeout" msgstr "cancelando la sentencia debido a que se agotó el tiempo de espera de sentencias" -#: tcop/postgres.c:3414 +#: tcop/postgres.c:3452 #, c-format msgid "canceling autovacuum task" msgstr "cancelando tarea de autovacuum" -#: tcop/postgres.c:3427 +#: tcop/postgres.c:3465 #, c-format msgid "canceling statement due to user request" msgstr "cancelando la sentencia debido a una petición del usuario" -#: tcop/postgres.c:3448 +#: tcop/postgres.c:3486 #, c-format msgid "terminating connection due to idle-in-transaction timeout" msgstr "terminando la conexión debido a que se agotó el tiempo de espera para transacciones abiertas inactivas" -#: tcop/postgres.c:3461 +#: tcop/postgres.c:3499 #, c-format msgid "terminating connection due to transaction timeout" msgstr "terminando la conexión debido a que se agotó el tiempo de espera para transacciones" -#: tcop/postgres.c:3474 +#: tcop/postgres.c:3512 #, c-format msgid "terminating connection due to idle-session timeout" msgstr "terminando la conexión debido a que se agotó el tiempo de espera para sesiones abiertas inactivas" -#: tcop/postgres.c:3564 -#, c-format -msgid "stack depth limit exceeded" -msgstr "límite de profundidad de stack alcanzado" - -#: 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 "Incremente el parámetro de configuración «max_stack_depth» (actualmente %dkB), después de asegurarse que el límite de profundidad de stack de la plataforma es adecuado." - -#: tcop/postgres.c:3612 -#, c-format -msgid "\"max_stack_depth\" must not exceed %ldkB." -msgstr "«max_stack_depth» no debe exceder %ldkB." - -#: tcop/postgres.c:3614 -#, c-format -msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent." -msgstr "Incremente el límite de profundidad del stack del sistema usando «ulimit -s» o el equivalente de su sistema." - -#: tcop/postgres.c:3637 +#: tcop/postgres.c:3548 #, c-format msgid "\"client_connection_check_interval\" must be set to 0 on this platform." msgstr "«client_connection_check_interval» debe ser 0 en esta plataforma." -#: tcop/postgres.c:3658 +#: tcop/postgres.c:3569 #, c-format msgid "Cannot enable parameter when \"log_statement_stats\" is true." msgstr "No se puede activar el parámetro cuando «log_statement_stats» está activo." -#: 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 "No se puede activar «log_statement_stats» cuando «log_parser_stats», «log_planner_stats» o «log_executor_stats» están activos." -#: tcop/postgres.c:4098 +#: tcop/postgres.c:4024 #, c-format msgid "invalid command-line argument for server process: %s" msgstr "argumentos de línea de órdenes no válidos para proceso servidor: %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 "Pruebe «%s --help» para mayor información." -#: tcop/postgres.c:4103 +#: tcop/postgres.c:4029 #, c-format msgid "%s: invalid command-line argument: %s" msgstr "%s: argumento de línea de órdenes no válido: %s" -#: tcop/postgres.c:4156 +#: tcop/postgres.c:4082 #, c-format msgid "%s: no database nor user name specified" msgstr "%s: no se ha especificado base de datos ni usuario" -#: tcop/postgres.c:4909 +#: tcop/postgres.c:4275 +#, c-format +msgid "could not generate random cancel key" +msgstr "no se pudo generar una llave de cancelación aleatoria" + +#: tcop/postgres.c:4677 +#, c-format +msgid "connection ready: setup total=%.3f ms, fork=%.3f ms, authentication=%.3f ms" +msgstr "" + +#: tcop/postgres.c:4908 #, c-format msgid "invalid CLOSE message subtype %d" msgstr "subtipo %d de mensaje CLOSE no válido" -#: tcop/postgres.c:4946 +#: tcop/postgres.c:4945 #, c-format msgid "invalid DESCRIBE message subtype %d" msgstr "subtipo %d de mensaje DESCRIBE no válido" -#: tcop/postgres.c:5033 +#: tcop/postgres.c:5039 #, c-format msgid "fastpath function calls not supported in a replication connection" msgstr "la invocación «fastpath» de funciones no está soportada en conexiones de replicación" -#: tcop/postgres.c:5037 +#: tcop/postgres.c:5043 #, c-format msgid "extended query protocol not supported in a replication connection" msgstr "el protocolo extendido de consultas no está soportado en conexiones de replicación" -#: 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 "desconexión: duración de sesión: %d:%02d:%02d.%03d usuario=%s base=%s host=%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 "el mensaje de «bind» tiene %d formatos de resultado pero la consulta tiene %d columnas" -#: tcop/pquery.c:942 tcop/pquery.c:1696 +#: tcop/pquery.c:940 tcop/pquery.c:1684 #, c-format msgid "cursor can only scan forward" msgstr "el cursor sólo se puede desplazar hacia adelante" -#: tcop/pquery.c:943 tcop/pquery.c:1697 +#: tcop/pquery.c:941 tcop/pquery.c:1685 #, c-format msgid "Declare it with SCROLL option to enable backward scan." msgstr "Declárelo con SCROLL para permitirle desplazar hacia atrás." @@ -23443,68 +24870,73 @@ msgid "cannot execute %s within security-restricted operation" msgstr "no se puede ejecutar %s durante una operación restringida por seguridad" #. 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 "no se puede ejecutar %s dentro de un proceso en segundo plano" #. 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 "permiso denegado a ejecutar la sentencia %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ólo los roles con privilegios del rol «%s» pueden ejecutar esta sentencia." -#: 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 "" + +#: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format msgid "multiple DictFile parameters" msgstr "parámetro DictFile duplicado" -#: tsearch/dict_ispell.c:63 +#: tsearch/dict_ispell.c:64 #, c-format msgid "multiple AffFile parameters" msgstr "parámetro AffFile duplicado" -#: tsearch/dict_ispell.c:82 +#: tsearch/dict_ispell.c:83 #, c-format msgid "unrecognized Ispell parameter: \"%s\"" msgstr "parámetro Ispell no reconocido: «%s»" -#: tsearch/dict_ispell.c:96 +#: tsearch/dict_ispell.c:97 #, c-format msgid "missing AffFile parameter" msgstr "falta un parámetro 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 "falta un parámetro DictFile" -#: tsearch/dict_simple.c:58 +#: tsearch/dict_simple.c:59 #, c-format msgid "multiple Accept parameters" msgstr "parámetro Accept duplicado" -#: tsearch/dict_simple.c:66 +#: tsearch/dict_simple.c:67 #, c-format msgid "unrecognized simple dictionary parameter: \"%s\"" msgstr "parámetro del diccionario simple no reconocido: «%s»" -#: tsearch/dict_synonym.c:118 +#: tsearch/dict_synonym.c:120 #, c-format msgid "unrecognized synonym parameter: \"%s\"" msgstr "parámetro de sinónimo no reconocido «%s»" -#: tsearch/dict_synonym.c:125 +#: tsearch/dict_synonym.c:127 #, c-format msgid "missing Synonyms parameter" msgstr "falta un parámetro Synonyms" -#: tsearch/dict_synonym.c:132 +#: tsearch/dict_synonym.c:134 #, c-format msgid "could not open synonym file \"%s\": %m" msgstr "no se pudo abrir el archivo de sinónimos «%s»: %m" @@ -23582,89 +25014,84 @@ msgstr "parámetro no reconocido de tesauro: «%s»" msgid "missing Dictionary parameter" msgstr "falta un paramétro 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 "marca de afijo «%s» no válida" -#: 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 "la marca de afijo «%s» fuera de rango" -#: tsearch/spell.c:415 +#: tsearch/spell.c:417 #, c-format msgid "invalid character in affix flag \"%s\"" msgstr "caracteres no válidos en la marca de afijo «%s»" -#: tsearch/spell.c:435 +#: tsearch/spell.c:437 #, c-format msgid "invalid affix flag \"%s\" with \"long\" flag value" msgstr "marca de afijo «%s» no válida con el valor de marca «long»" -#: tsearch/spell.c:525 +#: tsearch/spell.c:527 #, c-format msgid "could not open dictionary file \"%s\": %m" msgstr "no se pudo abrir el archivo de diccionario «%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 "la expresión regular no es válida: %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 "error de sintaxis" -#: 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 "alias de afijo «%s» no válido" -#: 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 "no se pudo abrir el archivo de afijos «%s»: %m" -#: tsearch/spell.c:1277 +#: tsearch/spell.c:1281 #, c-format msgid "Ispell dictionary supports only \"default\", \"long\", and \"num\" flag values" msgstr "el diccionario Ispell sólo permite los valores «default», «long» y «num»" -#: tsearch/spell.c:1321 +#: tsearch/spell.c:1325 #, c-format msgid "invalid number of flag vector aliases" msgstr "número no válido de alias de opciones" -#: tsearch/spell.c:1344 +#: tsearch/spell.c:1348 #, c-format msgid "number of aliases exceeds specified number %d" msgstr "el número de aliases excede el número especificado %d" -#: tsearch/spell.c:1559 +#: tsearch/spell.c:1563 #, c-format msgid "affix file contains both old-style and new-style commands" msgstr "el archivo de «affix» contiene órdenes en estilos antiguo y nuevo" -#: 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 "la cadena es demasiado larga para tsvector (%d bytes, máximo %d bytes)" -#: tsearch/ts_locale.c:236 +#: tsearch/ts_locale.c:191 #, c-format msgid "line %d of configuration file \"%s\": \"%s\"" msgstr "línea %d del archivo de configuración «%s»: «%s»" -#: tsearch/ts_locale.c:315 -#, c-format -msgid "conversion from wchar_t to server encoding failed: %m" -msgstr "conversión desde un wchar_t a la codificación del servidor falló: %m" - #: tsearch/ts_parse.c:387 tsearch/ts_parse.c:394 tsearch/ts_parse.c:573 #: tsearch/ts_parse.c:580 #, c-format @@ -23677,12 +25104,12 @@ msgstr "la palabra es demasiado larga para ser indexada" msgid "Words longer than %d characters are ignored." msgstr "Las palabras más largas que %d caracteres son ignoradas." -#: tsearch/ts_utils.c:51 +#: tsearch/ts_utils.c:52 #, c-format msgid "invalid text search configuration file name \"%s\"" msgstr "nombre de configuración de búsqueda en texto «%s» no válido" -#: tsearch/ts_utils.c:83 +#: tsearch/ts_utils.c:84 #, c-format msgid "could not open stop-word file \"%s\": %m" msgstr "no se pudo abrir el archivo de stopwords «%s»: %m" @@ -23699,13 +25126,11 @@ msgstr "parámetro de encabezado (headline) no reconocido: «%s»" #: tsearch/wparser_def.c:2674 #, c-format -#| msgid "%s must be in range %d..%d" msgid "%s must be less than %s" msgstr "%s debe ser menor que %s" #: tsearch/wparser_def.c:2678 #, c-format -#| msgid "COST must be positive" msgid "%s must be positive" msgstr "%s debe ser positivo" @@ -23714,42 +25139,102 @@ msgstr "%s debe ser positivo" msgid "%s must be >= 0" msgstr "%s debe ser >= 0" -#: utils/activity/pgstat.c:435 +#: utils/activity/pgstat.c:534 #, c-format msgid "could not unlink permanent statistics file \"%s\": %m" msgstr "no se pudo eliminar el archivo permanente de estadísticas «%s»: %m" -#: utils/activity/pgstat.c:1255 +#: utils/activity/pgstat.c:1426 #, c-format msgid "invalid statistics kind: \"%s\"" msgstr "tipo de estadísticas no válido: «%s»" -#: utils/activity/pgstat.c:1335 +#: utils/activity/pgstat.c:1471 +#, fuzzy, c-format +#| msgid "custom resource manager name is invalid" +msgid "custom cumulative statistics name is invalid" +msgstr "el nombre de gestor de recursos personalizado no es válido" + +#: utils/activity/pgstat.c:1472 +#, fuzzy, c-format +#| msgid "Provide a non-empty name for the custom resource manager." +msgid "Provide a non-empty name for the custom cumulative statistics." +msgstr "Provea un nombre no vacío para el gestor de recursos personalizado." + +#: utils/activity/pgstat.c:1475 +#, fuzzy, c-format +#| msgid "custom resource manager ID %d is out of range" +msgid "custom cumulative statistics ID %u is out of range" +msgstr "el ID %d de gestor de recursos está fuera de rango" + +#: utils/activity/pgstat.c:1476 +#, fuzzy, c-format +#| msgid "Provide a custom resource manager ID between %d and %d." +msgid "Provide a custom cumulative statistics ID between %u and %u." +msgstr "Provea un ID de gestor de recursos personalizado entre %d y %d." + +#: utils/activity/pgstat.c:1481 utils/activity/pgstat.c:1508 +#: utils/activity/pgstat.c:1521 +#, fuzzy, c-format +#| msgid "failed to register custom resource manager \"%s\" with ID %d" +msgid "failed to register custom cumulative statistics \"%s\" with ID %u" +msgstr "no se pudo registrar un gestor de recursos personalizado «%s» con ID %d" + +#: utils/activity/pgstat.c:1482 +#, fuzzy, c-format +#| msgid "Custom resource manager must be registered while initializing modules in \"shared_preload_libraries\"." +msgid "Custom cumulative statistics must be registered while initializing modules in \"shared_preload_libraries\"." +msgstr "El gestor de recursos personalizado debe ser registrado en «shared_preload_libraries» al inicializar módulos." + +#: 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 +#, fuzzy, c-format +#| msgid "Custom resource manager \"%s\" already registered with the same ID." +msgid "Custom cumulative statistics \"%s\" already registered with the same ID." +msgstr "El gestor de recursos «%s» ya está registrado con el mismo ID." + +#: utils/activity/pgstat.c:1522 +#, fuzzy, c-format +#| msgid "Existing resource manager with ID %d has the same name." +msgid "Existing cumulative statistics with ID %u has the same name." +msgstr "El gestor de recursos con ID %d tiene el mismo nombre." + +#: utils/activity/pgstat.c:1528 +#, fuzzy, c-format +#| msgid "registered custom resource manager \"%s\" with ID %d" +msgid "registered custom cumulative statistics \"%s\" with ID %u" +msgstr "se registró el gestor de recursos «%s» con ID %d" + +#: utils/activity/pgstat.c:1597 #, c-format msgid "could not open temporary statistics file \"%s\": %m" msgstr "no se pudo abrir el archivo temporal de estadísticas «%s»: %m" -#: utils/activity/pgstat.c:1455 +#: utils/activity/pgstat.c:1718 #, c-format msgid "could not write temporary statistics file \"%s\": %m" msgstr "no se pudo escribir el archivo temporal de estadísticas «%s»: %m" -#: utils/activity/pgstat.c:1464 +#: utils/activity/pgstat.c:1727 #, c-format msgid "could not close temporary statistics file \"%s\": %m" msgstr "no se pudo cerrar el archivo temporal de estadísticas «%s»: %m" -#: utils/activity/pgstat.c:1472 -#, c-format -msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" -msgstr "no se pudo cambiar el nombre al archivo temporal de estadísticas de «%s» a «%s»: %m" - -#: utils/activity/pgstat.c:1521 +#: utils/activity/pgstat.c:1781 #, c-format msgid "could not open statistics file \"%s\": %m" msgstr "no se pudo abrir el archivo de estadísticas «%s»: %m" -#: utils/activity/pgstat.c:1683 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "el archivo de estadísticas «%s» está corrupto" @@ -23759,199 +25244,206 @@ msgstr "el archivo de estadísticas «%s» está corrupto" msgid "function call to dropped function" msgstr "invocación a una función eliminada" -#: utils/activity/pgstat_xact.c:362 -#, c-format -msgid "resetting existing statistics for kind %s, db=%u, oid=%u" +#: utils/activity/pgstat_shmem.c:536 +#, fuzzy, c-format +#| msgid "Failed while allocating a WAL reading processor." +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" +msgid "resetting existing statistics for kind %s, db=%u, oid=%" msgstr "reseteando estadísticas existentes para el tipo %s, db=%u, oid=%u" -#: utils/activity/wait_event.c:207 utils/activity/wait_event.c:232 +#: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format msgid "wait event \"%s\" already exists in type \"%s\"" msgstr "ya existe un “wait event” llamado «%s» en el tipo «%s»" -#: utils/activity/wait_event.c:246 +#: utils/activity/wait_event.c:245 #, c-format msgid "too many custom wait events" msgstr "demasiados “wait events” definidos por el usuario" -#: 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 "el identificador es demasiado largo" -#: 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 "El identificador debe ser menor a %d caracteres." -#: utils/adt/acl.c:272 +#: utils/adt/acl.c:293 #, c-format msgid "unrecognized key word: \"%s\"" msgstr "palabra clave no reconocida: «%s»" -#: utils/adt/acl.c:273 +#: utils/adt/acl.c:294 #, c-format msgid "ACL key word must be \"group\" or \"user\"." msgstr "Palabra clave de ACL debe ser «group» o «user»." -#: utils/adt/acl.c:281 +#: utils/adt/acl.c:302 #, c-format msgid "missing name" msgstr "falta un nombre" -#: utils/adt/acl.c:282 +#: utils/adt/acl.c:303 #, c-format msgid "A name must follow the \"group\" or \"user\" key word." msgstr "Debe venir un nombre después de una palabra clave «group» o «user»." -#: utils/adt/acl.c:288 +#: utils/adt/acl.c:309 #, c-format msgid "missing \"=\" sign" msgstr "falta un signo «=»" -#: utils/adt/acl.c:350 +#: utils/adt/acl.c:368 #, c-format msgid "invalid mode character: must be one of \"%s\"" msgstr "carácter de modo no válido: debe ser uno de «%s»" -#: utils/adt/acl.c:380 +#: utils/adt/acl.c:398 #, c-format msgid "a name must follow the \"/\" sign" msgstr "debe venir un nombre después del signo «/»" -#: utils/adt/acl.c:392 +#: utils/adt/acl.c:410 #, c-format msgid "defaulting grantor to user ID %u" msgstr "usando el cedente por omisión con ID %u" -#: utils/adt/acl.c:578 +#: utils/adt/acl.c:596 #, c-format msgid "ACL array contains wrong data type" msgstr "el array ACL contiene tipo de datos incorrecto" -#: utils/adt/acl.c:582 +#: utils/adt/acl.c:600 #, c-format msgid "ACL arrays must be one-dimensional" msgstr "los array de ACL debe ser unidimensional" -#: utils/adt/acl.c:586 +#: utils/adt/acl.c:604 #, c-format msgid "ACL arrays must not contain null values" msgstr "los arrays de ACL no pueden contener valores nulos" -#: utils/adt/acl.c:615 +#: utils/adt/acl.c:633 #, c-format msgid "extra garbage at the end of the ACL specification" msgstr "basura extra al final de la especificación de la 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 "la opción de grant no puede ser otorgada de vuelta a quien la otorgó" -#: utils/adt/acl.c:1579 +#: utils/adt/acl.c:1597 #, c-format msgid "aclinsert is no longer supported" msgstr "aclinsert ya no está soportado" -#: utils/adt/acl.c:1589 +#: utils/adt/acl.c:1607 #, c-format msgid "aclremove is no longer supported" msgstr "aclremove ya no está soportado" -#: utils/adt/acl.c:1709 +#: utils/adt/acl.c:1726 #, c-format msgid "unrecognized privilege type: \"%s\"" msgstr "tipo de privilegio no reconocido: «%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 "no existe la función «%s»" -#: utils/adt/acl.c:5196 +#: utils/adt/acl.c:5347 #, c-format msgid "must be able to SET ROLE \"%s\"" msgstr "debe ser capaz de hacer 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 "no se pudo determinar el tipo de dato de entrada" -#: utils/adt/array_userfuncs.c:107 +#: utils/adt/array_userfuncs.c:123 #, c-format msgid "input data type is not an array" msgstr "el tipo de entrada no es un array" -#: 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:3184 utils/adt/varlena.c:4118 #, c-format msgid "integer out of range" msgstr "entero fuera de rango" -#: 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 "el argumento debe ser vacío o un array unidimensional" -#: 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 "no se pueden concatenar arrays incompatibles" -#: 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 "Los arrays con elementos de tipo %s y %s son incompatibles para la concatenación." -#: 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 "Los arrays de dimesiones %d y %d son incompatibles para la concatenación." -#: 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 "Los arrays con elementos de diferentes dimensiones son incompatibles para la concatenación." -#: 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 "Los arrays con diferentes dimensiones son incompatibles para la concatenación." -#: 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 "no se pueden acumular arrays de distinta dimensionalidad" -#: 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 "no está soportada la búsqueda de elementos en arrays multidimensionales" -#: utils/adt/array_userfuncs.c:1301 +#: utils/adt/array_userfuncs.c:1377 #, c-format msgid "initial position must not be null" msgstr "la posición inicial no debe ser 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 "el tamaño de la muestra debe estar entre 0 y %d" @@ -24036,7 +25528,7 @@ msgstr "Elemento de array inesperado." msgid "Specified array dimensions do not match array contents." msgstr "Las dimensiones del array especificadas no coinciden con el contenido del array." -#: 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 "Los arrays multidimensionales deben tener sub-arrays con dimensiones coincidentes." @@ -24047,14 +25539,14 @@ msgid "Incorrectly quoted array element." msgstr "Elemento de array entrecomillado incorrectamente." #: 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 "Fin inesperado de la entrada." -#: 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 "número incorrecto de dimensiones: %d" @@ -24070,7 +25562,7 @@ msgid "binary data has array element type %u (%s) instead of expected %u (%s)" msgstr "los datos binarios tienen el tipo de elemento de array %u (%s) en lugar del esperado %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 "no hay una función binaria de entrada para el tipo %s" @@ -24081,7 +25573,7 @@ msgid "improper binary format in array element %d" msgstr "el formato binario no es válido en elemento %d de array" #: 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 "no hay una función binaria de salida para el tipo %s" @@ -24093,11 +25585,11 @@ msgstr "no está implementada la obtención de segmentos de arrays de largo fijo #: 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 "número incorrecto de subíndices del array" @@ -24133,90 +25625,90 @@ msgstr "Cuando se asigna a un segmento de un array vacío, los bordes del segmen msgid "source array too small" msgstr "el array de origen es demasiado pequeño" -#: utils/adt/arrayfuncs.c:3657 +#: utils/adt/arrayfuncs.c:3669 #, c-format msgid "null array element not allowed in this context" msgstr "los arrays con elementos null no son permitidos en este contexto" -#: 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 "no se pueden comparar arrays con elementos de distintos tipos" -#: 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 "no se pudo identificar una función de hash para el tipo %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 "no se pudo identificar una función de hash extendida para el tipo %s" -#: utils/adt/arrayfuncs.c:5506 +#: utils/adt/arrayfuncs.c:5518 #, c-format msgid "data type %s is not an array type" msgstr "el tipo %s no es un array" -#: utils/adt/arrayfuncs.c:5561 +#: utils/adt/arrayfuncs.c:5573 #, c-format msgid "cannot accumulate null arrays" msgstr "no se pueden acumular arrays nulos" -#: utils/adt/arrayfuncs.c:5589 +#: utils/adt/arrayfuncs.c:5601 #, c-format msgid "cannot accumulate empty arrays" msgstr "no se pueden acumular arrays vacíos" -#: 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 "el array de dimensiones o el array de límites inferiores debe ser no nulo" -#: 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 "El array de dimensiones debe ser unidimensional." -#: 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 "los valores de dimensión no pueden ser null" -#: utils/adt/arrayfuncs.c:6130 +#: utils/adt/arrayfuncs.c:6144 #, c-format msgid "Low bound array has different size than dimensions array." msgstr "El array de límites inferiores tiene tamaño diferente que el array de dimensiones." -#: utils/adt/arrayfuncs.c:6411 +#: utils/adt/arrayfuncs.c:6425 #, c-format msgid "removing elements from multidimensional arrays is not supported" msgstr "la eliminación de elementos desde arrays multidimensionales no está soportada" -#: utils/adt/arrayfuncs.c:6688 +#: utils/adt/arrayfuncs.c:6702 #, c-format msgid "thresholds must be one-dimensional array" msgstr "los umbrales deben ser un array unidimensional" -#: utils/adt/arrayfuncs.c:6693 +#: utils/adt/arrayfuncs.c:6707 #, c-format msgid "thresholds array must not contain NULLs" msgstr "el array de umbrales no debe contener nulos" -#: 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 "el número de elementos a recortar debe estar entre 0 y %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 "los subíndices de arrays deben tener tipo entero" -#: 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 "subíndice de array en asignación no puede ser nulo" @@ -24247,21 +25739,21 @@ msgid "encoding conversion from %s to ASCII not supported" msgstr "la conversión de codificación de %s a ASCII no está soportada" #. 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:323 +#: 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 "la sintaxis de entrada no es válida para tipo %s: «%s»" @@ -24272,23 +25764,23 @@ msgstr "la sintaxis de entrada no es válida para tipo %s: «%s»" msgid "money out of range" msgstr "money fuera de rango" -#: 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 "división por cero" #: 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 "el valor «%s» está fuera de rango para el tipo %s" @@ -24303,186 +25795,188 @@ msgstr "«char» fuera de rango" msgid "could not compute %s hash: %s" msgstr "no se pudo calcular el hash %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 "el modificador de tipo no es válido" -#: utils/adt/date.c:76 +#: utils/adt/date.c:77 #, c-format msgid "TIME(%d)%s precision must not be negative" msgstr "la precisión de TIME(%d)%s no debe ser negativa" -#: utils/adt/date.c:82 +#: utils/adt/date.c:83 #, c-format msgid "TIME(%d)%s precision reduced to maximum allowed, %d" msgstr "la precisión de TIME(%d)%s fue reducida al máximo permitido, %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 "fecha fuera de rango: «%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 "fecha fuera de rango" -#: 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 "valor en campo de fecha fuera de rango: %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 "fecha fuera de rango: %d-%02d-%02d" -#: utils/adt/date.c:495 +#: utils/adt/date.c:560 #, c-format msgid "cannot subtract infinite dates" msgstr "no se pueden restar fechas infinitas" -#: 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 "fecha fuera de rango para timestamp" -#: 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 "unidades «%s» no soportada para el tipo %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 "unidad «%s» no reconocida para el tipo %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 "timestamp fuera de rango" -#: 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 "hora fuera de rango" -#: 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 "valor en campo de hora fuera de rango: %d:%02d:%02g" -#: utils/adt/date.c:2020 +#: utils/adt/date.c:2085 #, c-format msgid "cannot convert infinite interval to time" msgstr "no se puede convertir intervalo infinito a time" -#: 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 "no se puede sumar intervalo infinito a time" -#: 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 "no se pueden restar intervalo infinito de time" -#: 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 "tamaño «preceding» o «following» no válido en ventana deslizante" -#: utils/adt/date.c:2360 +#: utils/adt/date.c:2425 #, c-format msgid "time zone displacement out of range" msgstr "desplazamiento de huso horario fuera de rango" -#: 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 "el intervalo de huso horario «%s» debe ser finito" -#: 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 "el intervalo de huso horario «%s» no debe especificar meses o días" -#: 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 "el huso horario «%s» no es reconocido" -#: 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 "valor de hora/fecha fuera de rango: «%s»" -#: utils/adt/datetime.c:4110 -#, c-format -msgid "Perhaps you need a different \"datestyle\" setting." +#: utils/adt/datetime.c:4232 +#, fuzzy, c-format +#| msgid "Perhaps you need a different \"datestyle\" setting." +msgid "Perhaps you need a different \"DateStyle\" setting." msgstr "Quizás necesite una configuración diferente de «datestyle»." -#: utils/adt/datetime.c:4115 +#: utils/adt/datetime.c:4237 #, c-format msgid "interval field value out of range: \"%s\"" msgstr "valor de interval fuera de rango: «%s»" -#: utils/adt/datetime.c:4121 +#: utils/adt/datetime.c:4243 #, c-format msgid "time zone displacement out of range: \"%s\"" msgstr "desplazamiento de huso horario fuera de rango: «%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 "Este nombre de huso horario aparece en el archivo de configuración para abreviaciones de husos horarios «%s»." @@ -24492,17 +25986,22 @@ msgstr "Este nombre de huso horario aparece en el archivo de configuración para msgid "invalid Datum pointer" msgstr "puntero a Datum no válido" -#: 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 "no existe el tablespace con OID %u" + +#: utils/adt/dbsize.c:782 utils/adt/dbsize.c:858 #, c-format msgid "invalid size: \"%s\"" msgstr "tamaño no válido: «%s»" -#: utils/adt/dbsize.c:841 +#: utils/adt/dbsize.c:859 #, c-format msgid "Invalid size unit: \"%s\"." msgstr "Nombre de unidad de tamaño no válido: «%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 "Unidades aceptables son «bytes«, «B», «kB», «MB», «GB», «TB» y «PB»." @@ -24527,40 +26026,40 @@ msgstr "el resultado de la conversión de codificación es demasiado grande" msgid "result of decoding conversion is too large" msgstr "el resultado de la conversión de decodificación es demasiado grande" -#: 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 "dígito hexadecimal no válido: «%.*s»" -#: utils/adt/encode.c:223 +#: utils/adt/encode.c:244 #, c-format msgid "invalid hexadecimal data: odd number of digits" msgstr "el dato hexadecimal no es válido: tiene un número impar de dígitos" -#: utils/adt/encode.c:344 +#: utils/adt/encode.c:365 #, c-format msgid "unexpected \"=\" while decoding base64 sequence" msgstr "«=» inesperado mientras se decodificaba la secuencia base64" -#: utils/adt/encode.c:356 +#: utils/adt/encode.c:377 #, c-format msgid "invalid symbol \"%.*s\" found while decoding base64 sequence" msgstr "se encontró símbolo no válido «%.*s» al decodificar secuencia base64" -#: utils/adt/encode.c:377 +#: utils/adt/encode.c:398 #, c-format msgid "invalid base64 end sequence" msgstr "secuencia de término base64 no válida" -#: 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 "A los datos de entrada les falta relleno, o están truncados, o están corruptos de alguna otra forma." -#: 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 "sintaxis de entrada no válida para tipo %s" @@ -24597,351 +26096,368 @@ msgstr "no se pudo determinar el tipo enum efectivo" msgid "enum %s contains no values" msgstr "el enum %s no contiene valores" -#: utils/adt/float.c:83 +#: utils/adt/float.c:90 #, c-format msgid "value out of range: overflow" msgstr "valor fuera de rango: desbordamiento" -#: utils/adt/float.c:91 +#: utils/adt/float.c:98 #, c-format msgid "value out of range: underflow" msgstr "valor fuera de rango: desbordamiento por abajo" -#: utils/adt/float.c:280 +#: utils/adt/float.c:287 #, c-format msgid "\"%s\" is out of range for type real" msgstr "«%s» está fuera de rango para el tipo real" -#: utils/adt/float.c:482 +#: utils/adt/float.c:489 #, c-format msgid "\"%s\" is out of range for type double precision" msgstr "«%s» está fuera de rango para el tipo 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:4093 #, c-format msgid "smallint out of range" msgstr "smallint fuera de rango" -#: 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 "no se puede calcular la raíz cuadrada un de número negativo" -#: 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 "cero elevado a una potencia negativa es indefinido" -#: 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 "un número negativo elevado a una potencia no positiva entrega un resultado complejo" -#: 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 "no se puede calcular logaritmo de cero" -#: 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 "no se puede calcular logaritmo de un número negativo" -#: 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 "la entrada está fuera de rango" -#: 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 "count debe ser mayor que cero" -#: 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 "el operando, límite inferior y límite superior no pueden ser 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 "los límites inferior y superior deben ser finitos" -#: 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 "el límite superior no puede ser igual al límite inferior" -#: utils/adt/formatting.c:530 +#: utils/adt/formatting.c:556 #, c-format msgid "invalid format specification for an interval value" msgstr "especificación de formato no válida para un valor de interval" -#: utils/adt/formatting.c:531 +#: utils/adt/formatting.c:557 #, c-format msgid "Intervals are not tied to specific calendar dates." msgstr "Los Interval no están ... a valores determinados de fechas de calendario." -#: utils/adt/formatting.c:1161 +#: utils/adt/formatting.c:1197 #, c-format msgid "\"EEEE\" must be the last pattern used" msgstr "«EEEE» debe ser el último patrón usado" -#: utils/adt/formatting.c:1169 +#: utils/adt/formatting.c:1205 #, c-format msgid "\"9\" must be ahead of \"PR\"" msgstr "«9» debe ir antes de «PR»" -#: utils/adt/formatting.c:1185 +#: utils/adt/formatting.c:1221 #, c-format msgid "\"0\" must be ahead of \"PR\"" msgstr "«0» debe ir antes de «PR»" -#: utils/adt/formatting.c:1212 +#: utils/adt/formatting.c:1248 #, c-format msgid "multiple decimal points" msgstr "hay múltiples puntos decimales" -#: 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 "no se puede usar «V» y un punto decimal simultáneamente" -#: utils/adt/formatting.c:1228 +#: utils/adt/formatting.c:1264 #, c-format msgid "cannot use \"S\" twice" msgstr "no se puede usar «S» dos veces" -#: utils/adt/formatting.c:1232 +#: utils/adt/formatting.c:1268 #, c-format msgid "cannot use \"S\" and \"PL\"/\"MI\"/\"SG\"/\"PR\" together" msgstr "no se puede usar «S» y «PL»/«MI»/«SG»/«PR» simultáneamente" -#: utils/adt/formatting.c:1252 +#: utils/adt/formatting.c:1288 #, c-format msgid "cannot use \"S\" and \"MI\" together" msgstr "no se puede usar «S» y «MI» simultáneamente" -#: utils/adt/formatting.c:1262 +#: utils/adt/formatting.c:1298 #, c-format msgid "cannot use \"S\" and \"PL\" together" msgstr "no se puede usar «S» y «PL» simultáneamente" -#: utils/adt/formatting.c:1272 +#: utils/adt/formatting.c:1308 #, c-format msgid "cannot use \"S\" and \"SG\" together" msgstr "no se puede usar «S» y «SG» simultáneamente" -#: utils/adt/formatting.c:1281 +#: utils/adt/formatting.c:1317 #, c-format msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together" msgstr "no se puede usar «PR» y «S»/«PL»/«MI»/«SG» simultáneamente" -#: utils/adt/formatting.c:1307 +#: utils/adt/formatting.c:1326 +#, fuzzy, c-format +#| msgid "cannot use \"S\" twice" +msgid "cannot use \"RN\" twice" +msgstr "no se puede usar «S» dos veces" + +#: utils/adt/formatting.c:1347 #, c-format msgid "cannot use \"EEEE\" twice" msgstr "no se puede usar «EEEE» dos veces" -#: utils/adt/formatting.c:1313 +#: utils/adt/formatting.c:1353 #, c-format msgid "\"EEEE\" is incompatible with other formats" msgstr "«EEEE» es incompatible con otros formatos" -#: 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» sólo puede ser usado en conjunción con patrones de dígitos y puntos decimales." -#: utils/adt/formatting.c:1398 +#: utils/adt/formatting.c:1363 +#, fuzzy, c-format +#| msgid "\"EEEE\" is incompatible with other formats" +msgid "\"RN\" is incompatible with other formats" +msgstr "«EEEE» es incompatible con otros formatos" + +#: utils/adt/formatting.c:1364 +#, fuzzy, c-format +#| msgid "\"EEEE\" may only be used together with digit and decimal point patterns." +msgid "\"RN\" may only be used together with \"FM\"." +msgstr "«EEEE» sólo puede ser usado en conjunción con patrones de dígitos y puntos decimales." + +#: utils/adt/formatting.c:1445 #, c-format msgid "invalid datetime format separator: \"%s\"" msgstr "separador de formato «datetime» no válido: «%s»" -#: utils/adt/formatting.c:1525 +#: utils/adt/formatting.c:1572 #, c-format msgid "\"%s\" is not a number" msgstr "«%s» no es un número" -#: utils/adt/formatting.c:1603 -#, c-format -msgid "case conversion failed: %s" -msgstr "falló la conversión de mayúsculas: %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 "no se pudo determinar qué ordenamiento usar para la función %s" -#: utils/adt/formatting.c:2410 +#: utils/adt/formatting.c:1853 +#, fuzzy, c-format +#| msgid "Unicode categorization can only be performed if server encoding is UTF8" +msgid "Unicode case folding 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/formatting.c:2150 #, c-format msgid "invalid combination of date conventions" msgstr "combinación no válida de convenciones de fecha" -#: 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 " No mezclar convenciones de semana Gregorianas e ISO en una plantilla formateada" -#: utils/adt/formatting.c:2433 +#: utils/adt/formatting.c:2173 #, c-format msgid "conflicting values for \"%s\" field in formatting string" msgstr "valores en conflicto para le campo \"%s\" en cadena de formato" -#: 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 "Este valor se contradice con un seteo previo para el mismo tipo de campo" -#: utils/adt/formatting.c:2502 +#: utils/adt/formatting.c:2242 #, c-format msgid "source string too short for \"%s\" formatting field" msgstr "cadena de texto fuente muy corta para campo formateado \"%s\" " -#: utils/adt/formatting.c:2504 +#: utils/adt/formatting.c:2244 #, c-format msgid "Field requires %d characters, but only %d remain." msgstr "El campo requiere %d caractéres, pero solo quedan %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 "Si su cadena de texto no es de ancho modificado, trate de usar el modificador \"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 "el valor «%s» no es válido para «%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 "El campo requiere %d caracteres, pero sólo %d pudieron ser analizados." -#: utils/adt/formatting.c:2531 +#: utils/adt/formatting.c:2271 #, c-format msgid "Value must be an integer." msgstr "El valor debe ser un entero." -#: 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 "el valor para «%s» en la cadena de origen está fuera de rango" -#: utils/adt/formatting.c:2538 +#: utils/adt/formatting.c:2278 #, c-format msgid "Value must be in the range %d to %d." msgstr "El valor debe estar en el rango de %d a %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 "El valor dado no concuerda con ninguno de los valores permitidos para este campo." -#: 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 "cadena traducida en cadena de formato es demasiado larga" -#: utils/adt/formatting.c:3458 +#: utils/adt/formatting.c:3198 #, c-format msgid "unmatched format separator \"%c\"" msgstr "separador de formato «%c» desemparejado" -#: utils/adt/formatting.c:3519 +#: utils/adt/formatting.c:3259 #, c-format msgid "unmatched format character \"%s\"" msgstr "carácter de formato «%s» desemparejado" -#: utils/adt/formatting.c:3652 +#: utils/adt/formatting.c:3392 #, c-format msgid "Time zone abbreviation is not recognized." msgstr "La abreviatura de huso horario no es reconocida." -#: utils/adt/formatting.c:3853 -#, c-format -msgid "invalid input string for \"Y,YYY\"" -msgstr "cadena de entrada no válida para «Y,YYY»" - -#: utils/adt/formatting.c:3942 +#: utils/adt/formatting.c:3690 #, c-format msgid "input string is too short for datetime format" msgstr "cadena de entrada muy corta para formato de fecha/hora" -#: utils/adt/formatting.c:3950 +#: utils/adt/formatting.c:3698 #, c-format msgid "trailing characters remain in input string after datetime format" msgstr "quedan caracteres al final de la cadena de entrada después del formato fecha/hora" -#: utils/adt/formatting.c:4494 +#: utils/adt/formatting.c:4242 #, c-format msgid "missing time zone in input string for type timestamptz" msgstr "falta el huso horario en la cadena de entrada para el tipo timestamptz" -#: utils/adt/formatting.c:4500 +#: utils/adt/formatting.c:4248 #, c-format msgid "timestamptz out of range" msgstr "timestamptz fuera de rango" -#: utils/adt/formatting.c:4528 +#: utils/adt/formatting.c:4276 #, c-format msgid "datetime format is zoned but not timed" msgstr "el formato de fecha/hora tiene huso horario pero no hora" -#: utils/adt/formatting.c:4577 +#: utils/adt/formatting.c:4325 #, c-format msgid "missing time zone in input string for type timetz" msgstr "falta el huso horario en la cadena de entrada del tipo timetz" -#: utils/adt/formatting.c:4583 +#: utils/adt/formatting.c:4331 #, c-format msgid "timetz out of range" msgstr "timetz fuera de rango" -#: utils/adt/formatting.c:4609 +#: utils/adt/formatting.c:4357 #, c-format msgid "datetime format is not dated and not timed" msgstr "el formato de fecha/hora no tiene fecha ni hora" -#: utils/adt/formatting.c:4786 +#: utils/adt/formatting.c:4534 #, c-format msgid "hour \"%d\" is invalid for the 12-hour clock" msgstr "la hora «%d» no es válida para el reloj de 12 horas" -#: 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 "Use el reloj de 24 horas, o entregue una hora entre 1 y 12." -#: utils/adt/formatting.c:4900 +#: utils/adt/formatting.c:4713 #, c-format msgid "cannot calculate day of year without year information" msgstr "no se puede calcular el día del año sin conocer el año" -#: utils/adt/formatting.c:5852 +#: utils/adt/formatting.c:5834 #, c-format msgid "\"EEEE\" not supported for input" msgstr "«EEEE» no está soportado en la entrada" -#: utils/adt/formatting.c:5864 -#, c-format -msgid "\"RN\" not supported for input" -msgstr "«RN» no está soportado en la entrada" +#: utils/adt/formatting.c:6111 +#, fuzzy, c-format +#| msgid "invalid schema name" +msgid "invalid Roman numeral" +msgstr "nombre de esquema no válido" #: utils/adt/genfile.c:84 #, c-format @@ -24953,9 +26469,9 @@ msgstr "no se permiten rutas absolutas" msgid "path must be in or below the data directory" msgstr "la ruta debe estar en o debajo del directorio de datos" -#: 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 "el tamaño solicitado es demasiado grande" @@ -24970,11 +26486,6 @@ msgstr "no se pudo posicionar (seek) el archivo «%s»: %m" msgid "file length too large" msgstr "el tamaño del archivo es demasiado grande" -#: utils/adt/genfile.c:656 -#, c-format -msgid "tablespace with OID %u does not exist" -msgstr "no existe el tablespace con 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" @@ -25026,8 +26537,8 @@ msgstr "debe pedir al menos 2 puntos" msgid "invalid int2vector data" msgstr "datos de int2vector no válidos" -#: 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 "el tamaño de paso no puede ser cero" @@ -25041,9 +26552,9 @@ msgstr "el tamaño de paso no puede ser cero" #: 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:4143 #, c-format msgid "bigint out of range" msgstr "bigint fuera de rango" @@ -25053,49 +26564,49 @@ msgstr "bigint fuera de rango" msgid "OID out of range" msgstr "OID fuera de rango" -#: 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 "el valor de llave debe ser escalar, no array, composite o 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 "no se pudo determinar el tipo de dato para el argumento %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 "no se permite el valor nulo como llave en un objeto" -#: 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 "valor de llave de objeto JSON duplicado: %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 "la lista de argumentos debe tener un número par de elementos" #. 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 "El argumento de %s debe consistir de llaves y valores alternados." -#: 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 "un array debe tener dos columnas" -#: 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 "las dimensiones de array no coinciden" -#: 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 "valor de llavo del objeto JSON duplicado" @@ -25160,23 +26671,23 @@ msgstr "no se puede convertir un objeto jsonb a tipo %s" msgid "cannot cast jsonb array or object to type %s" msgstr "no se puede convertir un array u objeto jsonb a tipo %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 "el número de pares en objeto jsonb excede el máximo permitido (%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 "el número de elementos del array jsonb excede el máximo permitido (%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 "el tamaño total de los elementos del array jsonb excede el máximo de %d bytes" -#: 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 "el tamaño total de los elementos del objeto jsonb excede el máximo de %d bytes" @@ -25211,215 +26722,215 @@ msgstr "subíndice jsonb debe tener tipo text" msgid "jsonb subscript in assignment must not be null" msgstr "subíndice jsonb en asignación no puede ser nulo" -#: 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 "no se puede invocar %s en un escalar" -#: 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 "no se puede invocar %s en un array" -#: 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 "secuencia de escape Unicode no soportado" -#: utils/adt/jsonfuncs.c:724 +#: utils/adt/jsonfuncs.c:726 #, c-format msgid "JSON data, line %d: %s%s%s" msgstr "Datos JSON, línea %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 "no se puede obtener el largo de array de un escalar" -#: 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 "no se puede obtener el largo de array de un no-array" -#: utils/adt/jsonfuncs.c:1986 +#: utils/adt/jsonfuncs.c:1988 #, c-format msgid "cannot call %s on a non-object" msgstr "no se puede invocar %s en un no-objeto" -#: utils/adt/jsonfuncs.c:2174 +#: utils/adt/jsonfuncs.c:2176 #, c-format msgid "cannot deconstruct an array as an object" msgstr "no se puede desconstruir un array como un objeto" -#: utils/adt/jsonfuncs.c:2188 +#: utils/adt/jsonfuncs.c:2190 #, c-format msgid "cannot deconstruct a scalar" msgstr "no se puede desconstruir un escalar" -#: utils/adt/jsonfuncs.c:2233 +#: utils/adt/jsonfuncs.c:2235 #, c-format msgid "cannot extract elements from a scalar" msgstr "no se pueden extraer elementos de un escalar" -#: utils/adt/jsonfuncs.c:2237 +#: utils/adt/jsonfuncs.c:2239 #, c-format msgid "cannot extract elements from an object" msgstr "no se pudo extraer elementos de un objeto" -#: 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 "no se puede invocar %s en un no-array" -#: 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 "se esperaba un array JSON" -#: utils/adt/jsonfuncs.c:2516 +#: utils/adt/jsonfuncs.c:2518 #, c-format msgid "See the value of key \"%s\"." msgstr "Vea el valor de la llave «%s»." -#: utils/adt/jsonfuncs.c:2539 +#: utils/adt/jsonfuncs.c:2541 #, c-format msgid "See the array element %s of key \"%s\"." msgstr "Vea el elemento %s de la llave «%s»." -#: utils/adt/jsonfuncs.c:2545 +#: utils/adt/jsonfuncs.c:2547 #, c-format msgid "See the array element %s." msgstr "Veo el elemento de array %s." -#: utils/adt/jsonfuncs.c:2597 +#: utils/adt/jsonfuncs.c:2599 #, c-format msgid "malformed JSON array" msgstr "array JSON mal formado" #. 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 "el primer argumento de %s debe ser un tipo de registro" #. 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 "no se pudo determinar el tipo de dato para el resultado de %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 "Provea un argumento de registro no-nulo, o invoque la función en la cláusula FROM usando una lista de definición de columnas." -#: 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 "se requiere un nodo «materialize», pero no está permitido en este contexto" -#: 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 "el argumento de %s debe ser un array de objetos" -#: utils/adt/jsonfuncs.c:4223 +#: utils/adt/jsonfuncs.c:4225 #, c-format msgid "cannot call %s on an object" msgstr "no se puede invocar %s en un objeto" -#: 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 "no se puede eliminar de un escalar" -#: utils/adt/jsonfuncs.c:4800 +#: utils/adt/jsonfuncs.c:4824 #, c-format msgid "cannot delete from object using integer index" msgstr "no se puede eliminar de un objeto usando un índice numérico" -#: 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 "no se puede definir una ruta en un escalar" -#: 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 debe ser «delete_key», «return_target», «use_json_null», o «raise_exception»" -#: utils/adt/jsonfuncs.c:4922 +#: utils/adt/jsonfuncs.c:4946 #, c-format msgid "JSON value must not be null" msgstr "valor JSON no debe ser 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 "Una excepción fue lanzada porque null_value_treatment es «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 "Para impedir esto, puede cambiar el argumento null_value_treatment o asegurarse que no se pase un nulo SQL." -#: utils/adt/jsonfuncs.c:4979 +#: utils/adt/jsonfuncs.c:5003 #, c-format msgid "cannot delete path in scalar" msgstr "no se puede eliminar una ruta en un escalar" -#: utils/adt/jsonfuncs.c:5193 +#: utils/adt/jsonfuncs.c:5217 #, c-format msgid "path element at position %d is null" msgstr "el elemento en la posición %d de la ruta es 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 "no se puede reemplazar una llave existente" -#: 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 "La ruta asume que la llave es un objeto compuesto, pero es un valor escalar." -#: utils/adt/jsonfuncs.c:5317 +#: utils/adt/jsonfuncs.c:5341 #, c-format msgid "Try using the function jsonb_set to replace key value." msgstr "Intente usar la función jsonb_set para reemplazar el valor de la llave." -#: utils/adt/jsonfuncs.c:5421 +#: utils/adt/jsonfuncs.c:5445 #, c-format msgid "path element at position %d is not an integer: \"%s\"" msgstr "el elemento de ruta en la posición %d no es un entero: «%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 "el elemento de ruta en la posición %d está fuera de rango: %d" -#: utils/adt/jsonfuncs.c:5590 +#: utils/adt/jsonfuncs.c:5614 #, c-format msgid "wrong flag type, only arrays and scalars are allowed" msgstr "indicador de tipo errónea, sólo se permiten arrays y tipos escalares" -#: utils/adt/jsonfuncs.c:5597 +#: utils/adt/jsonfuncs.c:5621 #, c-format msgid "flag array element is not a string" msgstr "elemento del array de opciones no es un string" -#: 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 "Los valores posibles son: «string», «numeric», «boolean», «key» y «all»." -#: utils/adt/jsonfuncs.c:5618 +#: utils/adt/jsonfuncs.c:5642 #, c-format msgid "wrong flag in flag array: \"%s\"" msgstr "indicador erróneo en array de indicadores: «%s»" @@ -25434,222 +26945,203 @@ msgstr "@ no es permitido en expresiones raíz" msgid "LAST is allowed only in array subscripts" msgstr "LAST sólo está permitido en subíndices de array" -#: utils/adt/jsonpath_exec.c:491 +#: utils/adt/jsonpath_exec.c:489 #, c-format msgid "single boolean result is expected" msgstr "se esperaba un único resultado booleano" -#: 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 "el método de acceso comodín de array jsonpath sólo puede aplicarse a un array" -#: 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 "el método de acesso comodín de objeto jsonpath sólo puede aplicarse a un objeto" -#: utils/adt/jsonpath_exec.c:923 +#: utils/adt/jsonpath_exec.c:921 #, c-format msgid "jsonpath array subscript is out of bounds" msgstr "subíndice de array jsonpath fuera de los bordes" -#: 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 "el método de acceso de array jsonpath sólo puede aplicarse a un array" -#: utils/adt/jsonpath_exec.c:1044 +#: utils/adt/jsonpath_exec.c:1042 #, c-format msgid "JSON object does not contain key \"%s\"" msgstr "el objeto JSON no contiene la llave «%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 "el método de acceso a un miembro jsonpath sólo puede aplicarse a un objeto" -#: 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 "el método de ítem jsonpath .%s() sólo puede aplicase a un array" -#: utils/adt/jsonpath_exec.c:1167 utils/adt/jsonpath_exec.c:1193 -#, c-format -msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type double precision" -msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo de precisión doble" +#: 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 +#, fuzzy, c-format +#| msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type bigint" +msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type %s" +msgstr "el argumento «%s» del método de item jsonpath .%s() es inválido para el tipo bigint" -#: 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 "NaN o infinito no son permitidos para el método de ítem 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 "el método de ítem jsonpath .%s() sólo puede aplicarse a un valor numérico o de cadena" -#: 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 "el argumento «%s» del método de item jsonpath .%s() es inválido para el tipo bigint" - -#: 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 "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo booleano" - -#: 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 "el método de ítem jsonpath .%s() sólo puede aplicarse a un valor booleano, de cadena o numérico" -#: 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 "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo numeric" - -#: 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 "la precisión del método de item jsonpath .%s() está fuera de rango para el tipo 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 "la escala del método de item jsonpath .%s() está fuera de rango para el tipo 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 "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo integer" - -#: 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 "el método de ítem jsonpath .%s() sólo puede aplicarse a un valor boolean, datetime, numérico o de cadena" -#: 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 "el operando izquierdo del operador jsonpath %s no es un valor numérico escalar" -#: 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 "el operando derecho del operador jsonpath %s no es un valor numérico escalar" -#: 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 "el operando del operador jsonpath unario %s no es un valor numérico" -#: 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 "el método de ítem jsonpath .%s() sólo puede aplicarse a un valor numérico" -#: 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 "el método de ítem jsonpath .%s() sólo puede aplicase a una cadena" -#: 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 "la precisión de tiempo del método de item jsonpath .%s() está fuera de rango para el tipo 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 "formato de %s no se reconoce: «%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 "Use un argumento de patrón fecha/hora para especificar el formato de entrada del dato." -#: 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 "la precisión de tiempo del método de item jsonpath .%s() no es válida" -#: 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 "el método de ítem jsonpath .%s() sólo puede ser aplicado a un objeto" -#: 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 "no se pudo convertir el valor de tipo %s a jsonpath" -#: utils/adt/jsonpath_exec.c:3158 +#: utils/adt/jsonpath_exec.c:3157 #, c-format msgid "could not find jsonpath variable \"%s\"" msgstr "no se pudo encontrar la variable jsonpath «%s»" -#: utils/adt/jsonpath_exec.c:3211 +#: utils/adt/jsonpath_exec.c:3210 #, c-format msgid "\"vars\" argument is not an object" msgstr "el argumento «vars» no es un objeto" -#: 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 "Los parámetros jsonpath deben codificarse como pares llave-valor del objeto «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 "el subíndice de array jsonpath no es un único valor numérico" -#: utils/adt/jsonpath_exec.c:3487 +#: utils/adt/jsonpath_exec.c:3486 #, c-format msgid "jsonpath array subscript is out of integer range" msgstr "subíndice de array jsonpath fuera del rango entero" -#: 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 "no se puede convertir el valor de %s a %s sin uso de huso horario" -#: utils/adt/jsonpath_exec.c:3673 +#: utils/adt/jsonpath_exec.c:3672 #, c-format msgid "Use *_tz() function for time zone support." msgstr "Utilice una función *_tz() para el soporte de huso horario." -#: 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" msgid "JSON path expression for column \"%s\" must return single item when no wrapper is requested" msgstr "la expresión de ruta JSON para la columna «%s» debe retornar un único elemento cuando no se pide un “wrapper”" -#: 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 "Use la cláusula WITH WRAPPER para envolver elementos SQL/JSON en un array." -#: 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" msgid "JSON path expression in JSON_QUERY must return single item when no wrapper is requested" msgstr "la expresión de ruta en JSON_QUERY debe retornar un único elemento cuando no se pide un “wrapper”" -#: 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" msgid "JSON path expression for column \"%s\" must return single scalar item" msgstr "la expresión de ruta JSON para la columna «%s» debe retornar un único elemento escalar" -#: 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" msgid "JSON path expression in JSON_VALUE must return single scalar item" msgstr "la expresión de ruta JSON en JSON_VALUE debe retornar un único elemento escalar" @@ -25658,42 +27150,44 @@ msgstr "la expresión de ruta JSON en JSON_VALUE debe retornar un único element msgid "levenshtein argument exceeds maximum length of %d characters" msgstr "el argumento levenshtein excede el largo máximo de %d caracteres" -#: utils/adt/like.c:159 -#, c-format -msgid "nondeterministic collations are not supported for LIKE" -msgstr "los ordenamientos no determinísticos no están soportados para LIKE" +#: utils/adt/like.c:162 +#, fuzzy, c-format +#| msgid "could not determine which collation to use for ILIKE" +msgid "could not determine which collation to use for LIKE" +msgstr "no se pudo determinar qué ordenamiento (collation) usar para ILIKE" -#: 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 "no se pudo determinar qué ordenamiento (collation) usar para ILIKE" -#: utils/adt/like.c:200 +#: utils/adt/like.c:202 #, c-format msgid "nondeterministic collations are not supported for ILIKE" msgstr "los ordenamientos no determinísticos no están soportados para 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 "el patrón de LIKE debe no terminar con un carácter de escape" -#: 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 "cadena de escape no válida" -#: 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 "La cadena de escape debe ser vacía o un carácter." -#: utils/adt/like_support.c:1013 +#: utils/adt/like_support.c:1009 #, c-format msgid "case insensitive matching not supported on type bytea" msgstr "no está soportada la comparación insensible a mayúsculas en 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 "no está soportada la comparación con expresiones regulares en bytea" @@ -25713,7 +27207,7 @@ msgstr "datos macaddr8 fuera de rango para convertir a macaddr" 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 "Sólo las direcciones que tienen FF y FF como valores en el cuarto y quinto bytes desde la izquierda, por ejemplo xx:xx:xx:ff:fe:xx:xx:xx se pueden convertir de macaddr8 a 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 no es un proceso servidor de PostgreSQL" @@ -25830,8 +27324,8 @@ msgstr "valor cidr no válido: «%s»" msgid "Value has bits set to right of mask." msgstr "El valor tiene bits definidos a la derecha de la máscara" -#: 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 "no se pudo dar formato al valor inet: %m" @@ -25859,167 +27353,167 @@ msgstr "largo no válido en valor «%s» externo" msgid "invalid external \"cidr\" value" msgstr "valor externo «cidr» no válido" -#: 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 "largo de máscara no válido: %d" -#: utils/adt/network.c:1252 +#: utils/adt/network.c:1217 #, c-format msgid "could not format cidr value: %m" msgstr "no se pudo dar formato al valor cidr: %m" -#: utils/adt/network.c:1485 +#: utils/adt/network.c:1450 #, c-format msgid "cannot merge addresses from different families" msgstr "no se pueden mezclar direcciones de familias diferentes" -#: utils/adt/network.c:1893 +#: utils/adt/network.c:1858 #, c-format msgid "cannot AND inet values of different sizes" msgstr "no se puede hacer AND entre valores inet de distintos tamaños" -#: utils/adt/network.c:1925 +#: utils/adt/network.c:1890 #, c-format msgid "cannot OR inet values of different sizes" msgstr "no se puede hacer OR entre valores inet de distintos tamaños" -#: 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 "el resultado está fuera de rango" -#: utils/adt/network.c:2027 +#: utils/adt/network.c:1992 #, c-format msgid "cannot subtract inet values of different sizes" msgstr "no se puede sustraer valores inet de distintos tamaños" -#: 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 "el valor excede el formato numeric" -#: utils/adt/numeric.c:1106 +#: utils/adt/numeric.c:1108 #, c-format msgid "invalid sign in external \"numeric\" value" msgstr "el signo no es válido en el valor «numeric» externo" -#: utils/adt/numeric.c:1112 +#: utils/adt/numeric.c:1114 #, c-format msgid "invalid scale in external \"numeric\" value" msgstr "la escala no es válida en el valor «numeric» externo" -#: utils/adt/numeric.c:1121 +#: utils/adt/numeric.c:1123 #, c-format msgid "invalid digit in external \"numeric\" value" msgstr "hay un dígito no válido en el valor «numeric» externo" -#: 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 "la precisión %d de NUMERIC debe estar entre 1 y %d" -#: utils/adt/numeric.c:1341 +#: utils/adt/numeric.c:1343 #, c-format msgid "NUMERIC scale %d must be between %d and %d" msgstr "escala NUMERIC %d debe estar entre %d y %d" -#: utils/adt/numeric.c:1359 +#: utils/adt/numeric.c:1361 #, c-format msgid "invalid NUMERIC type modifier" msgstr "modificador de tipo NUMERIC no es válido" -#: utils/adt/numeric.c:1725 +#: utils/adt/numeric.c:1727 #, c-format msgid "start value cannot be NaN" msgstr "el valor de inicio no puede ser NaN" -#: utils/adt/numeric.c:1729 +#: utils/adt/numeric.c:1731 #, c-format msgid "start value cannot be infinity" msgstr "el valor de inicio no puede ser infinito" -#: utils/adt/numeric.c:1736 +#: utils/adt/numeric.c:1738 #, c-format msgid "stop value cannot be NaN" msgstr "el valor de término no puede ser NaN" -#: utils/adt/numeric.c:1740 +#: utils/adt/numeric.c:1742 #, c-format msgid "stop value cannot be infinity" msgstr "el valor de término no puede ser infinito" -#: utils/adt/numeric.c:1753 +#: utils/adt/numeric.c:1755 #, c-format msgid "step size cannot be NaN" msgstr "el tamaño de paso no puede ser NaN" -#: utils/adt/numeric.c:1757 +#: utils/adt/numeric.c:1759 #, c-format msgid "step size cannot be infinity" msgstr "el tamaño de paso no puede ser infinito" -#: utils/adt/numeric.c:3649 +#: utils/adt/numeric.c:3753 #, c-format msgid "factorial of a negative number is undefined" msgstr "el factorial de un número negativo es indefinido" -#: utils/adt/numeric.c:4256 +#: utils/adt/numeric.c:4360 #, c-format msgid "lower bound cannot be NaN" msgstr "el límite inferior no puede ser NaN" -#: utils/adt/numeric.c:4260 +#: utils/adt/numeric.c:4364 #, c-format msgid "lower bound cannot be infinity" msgstr "el límite inferior no puede ser infinito" -#: utils/adt/numeric.c:4267 +#: utils/adt/numeric.c:4371 #, c-format msgid "upper bound cannot be NaN" msgstr "el límite superior no puede ser NaN" -#: utils/adt/numeric.c:4271 +#: utils/adt/numeric.c:4375 #, c-format msgid "upper bound cannot be infinity" msgstr "el límite superior no puede ser infinito" -#: 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 "no se puede convertir NaN a %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 "no se puede convertir infinito a %s" -#: utils/adt/numeric.c:4789 +#: utils/adt/numeric.c:4893 #, c-format msgid "pg_lsn out of range" msgstr "pg_lsn fuera de rango" -#: 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 "desbordamiento de campo 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 "Un campo con precisión %d, escala %d debe redondear a un valor absoluto menor que %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 "Un campo con precisión %d, escala %d no puede contener un valor infinito." -#: 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" @@ -26030,27 +27524,27 @@ msgstr "el límite inferior debe ser menor o igual al límite superior" msgid "invalid oidvector data" msgstr "datos de oidvector no válidos" -#: utils/adt/oracle_compat.c:976 +#: utils/adt/oracle_compat.c:992 #, c-format msgid "requested character too large" msgstr "el carácter solicitado es demasiado grande" -#: utils/adt/oracle_compat.c:1020 +#: utils/adt/oracle_compat.c:1036 #, c-format msgid "character number must be positive" msgstr "el número de carácter debe ser positivo" -#: utils/adt/oracle_compat.c:1024 +#: utils/adt/oracle_compat.c:1040 #, c-format msgid "null character not permitted" msgstr "el carácter nulo no está permitido" -#: 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 "el carácter pedido es demasiado largo para el encoding: %u" -#: utils/adt/oracle_compat.c:1083 +#: utils/adt/oracle_compat.c:1099 #, c-format msgid "requested character not valid for encoding: %u" msgstr "el carácter pedido no es válido para el encoding: %u" @@ -26061,145 +27555,150 @@ msgstr "el carácter pedido no es válido para el encoding: %u" msgid "percentile value %g is not between 0 and 1" msgstr "el valor de percentil %g no está entre 0 y 1" -#: utils/adt/pg_locale.c:326 utils/adt/pg_locale.c:358 +#: utils/adt/pg_locale.c:304 utils/adt/pg_locale.c:336 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "el nombre de configuración regional «%s» contiene caracteres no ASCII" -#: utils/adt/pg_locale.c:1507 -#, c-format -msgid "could not open collator for locale \"%s\" with rules \"%s\": %s" -msgstr "no se pudo abrir el «collator» para la configuración regional «%s» con reglas «%s»: %s" - -#: utils/adt/pg_locale.c:1518 utils/adt/pg_locale.c:2992 -#: utils/adt/pg_locale.c:3065 -#, c-format -msgid "ICU is not supported in this build" -msgstr "ICU no está soportado en este servidor" - -#: utils/adt/pg_locale.c:1546 -#, c-format -msgid "could not create locale \"%s\": %m" -msgstr "no se pudo crear la configuración regional «%s»: %m" - -#: utils/adt/pg_locale.c:1549 -#, c-format -msgid "The operating system could not find any locale data for the locale name \"%s\"." -msgstr "El sistema operativo no pudo encontrar datos de configuración regional para la configuración «%s»." - -#: utils/adt/pg_locale.c:1670 -#, c-format -msgid "collations with different collate and ctype values are not supported on this platform" -msgstr "los ordenamientos (collation) con valores collate y ctype diferentes no están soportados en esta plataforma" - -#: utils/adt/pg_locale.c:1717 +#: utils/adt/pg_locale.c:1120 #, c-format msgid "collation \"%s\" has no actual version, but a version was recorded" msgstr "la “collation” «%s» no tiene versión actual, pero una versión fue registrada" -#: utils/adt/pg_locale.c:1723 +#: utils/adt/pg_locale.c:1126 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "el ordenamiento (collation) «%s» tiene una discordancia de versión" -#: utils/adt/pg_locale.c:1725 +#: utils/adt/pg_locale.c:1128 #, c-format msgid "The collation in the database was created using version %s, but the operating system provides version %s." msgstr "El ordenamiento en la base de datos fue creado usando la versión %s, pero el sistema operativo provee la versión %s." -#: utils/adt/pg_locale.c:1728 +#: utils/adt/pg_locale.c:1131 #, 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 "Reconstruya todos los objetos afectados por este ordenamiento y ejecute ALTER COLLATION %s REFRESH VERSION, o construya PostgreSQL con la versión correcta de la biblioteca." -#: utils/adt/pg_locale.c:1772 utils/adt/pg_locale.c:2556 -#: utils/adt/pg_locale.c:2581 +#: utils/adt/pg_locale.c:1484 utils/adt/pg_locale.c:1511 +#: utils/adt/pg_locale_builtin.c:188 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "nombre de configuración regional «%s» no válido para el proveedor builtin" -#: utils/adt/pg_locale.c:1814 +#: utils/adt/pg_locale.c:1576 #, c-format -msgid "could not load locale \"%s\"" -msgstr "no se pudo cargar la configuración regional «%s»" +msgid "could not convert locale name \"%s\" to language tag: %s" +msgstr "no se pudo convertir el nombre de configuración regional «%s» a etiqueta de lenguaje: %s" -#: utils/adt/pg_locale.c:1839 +#: utils/adt/pg_locale.c:1585 utils/adt/pg_locale.c:1660 +#: utils/adt/pg_locale_icu.c:215 #, c-format -msgid "could not get collation version for locale \"%s\": error code %lu" -msgstr "no se pudo obtener la versión de «collation» para la configuración regional «%s»: código de error %lu" +msgid "ICU is not supported in this build" +msgstr "ICU no está soportado en este servidor" -#: utils/adt/pg_locale.c:1895 utils/adt/pg_locale.c:1908 +#: utils/adt/pg_locale.c:1618 #, c-format -msgid "could not convert string to UTF-16: error code %lu" -msgstr "no se pudo convertir la cadena a UTF-16: código de error %lu" +msgid "could not get language from ICU locale \"%s\": %s" +msgstr "no se pudo obtener el lenguaje de la configuración regional ICU «%s»: %s" -#: utils/adt/pg_locale.c:1920 +#: utils/adt/pg_locale.c:1620 utils/adt/pg_locale.c:1650 #, c-format -msgid "could not compare Unicode strings: %m" -msgstr "no se pudieron comparar las cadenas Unicode: %m" +msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." +msgstr "Par desactivar la validación ICU de configuración regional, defina «%s» a «%s»." + +#: utils/adt/pg_locale.c:1648 +#, c-format +msgid "ICU locale \"%s\" has unknown language \"%s\"" +msgstr "el locale ICU «%s» tiene lenguaje desconocido «%s»" + +#: utils/adt/pg_locale_icu.c:264 +#, c-format +msgid "could not get language from locale \"%s\": %s" +msgstr "no se pudo el lenguaje de la configuración regional «%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 "no se pudo abrir el «collator» para la configuración regional «%s»: %s" + +#: utils/adt/pg_locale_icu.c:374 +#, c-format +msgid "could not open collator for locale \"%s\" with rules \"%s\": %s" +msgstr "no se pudo abrir el «collator» para la configuración regional «%s» con reglas «%s»: %s" -#: utils/adt/pg_locale.c:2094 +#: utils/adt/pg_locale_icu.c:488 #, c-format msgid "collation failed: %s" msgstr "el ordenamiento falló: %s" -#: utils/adt/pg_locale.c:2313 utils/adt/pg_locale.c:2345 +#: utils/adt/pg_locale_icu.c:567 utils/adt/pg_locale_icu.c:831 #, c-format msgid "sort key generation failed: %s" msgstr "la generación de la llave de ordenamiento falló: %s" -#: utils/adt/pg_locale.c:2635 +#: 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 "no se pudo el lenguaje de la configuración regional «%s»: %s" +msgid "%s failed: %s" +msgstr "%s falló: %s" -#: utils/adt/pg_locale.c:2656 utils/adt/pg_locale.c:2672 +#: utils/adt/pg_locale_icu.c:682 #, c-format -msgid "could not open collator for locale \"%s\": %s" -msgstr "no se pudo abrir el «collator» para la configuración regional «%s»: %s" +msgid "case conversion failed: %s" +msgstr "falló la conversión de mayúsculas: %s" -#: utils/adt/pg_locale.c:2697 +#: utils/adt/pg_locale_icu.c:851 #, c-format msgid "encoding \"%s\" not supported by ICU" msgstr "la codificación «%s» no estæ soportada por ICU" -#: utils/adt/pg_locale.c:2704 +#: utils/adt/pg_locale_icu.c:858 #, c-format msgid "could not open ICU converter for encoding \"%s\": %s" msgstr "no se pudo abrir el conversor ICU para la codificación «%s»: %s" -#: utils/adt/pg_locale.c:2722 utils/adt/pg_locale.c:2741 -#: utils/adt/pg_locale.c:2797 utils/adt/pg_locale.c:2808 +#: utils/adt/pg_locale_libc.c:553 #, c-format -msgid "%s failed: %s" -msgstr "%s falló: %s" +msgid "collations with different collate and ctype values are not supported on this platform" +msgstr "los ordenamientos (collation) con valores collate y ctype diferentes no están soportados en esta plataforma" -#: utils/adt/pg_locale.c:2983 +#: utils/adt/pg_locale_libc.c:683 #, c-format -msgid "could not convert locale name \"%s\" to language tag: %s" -msgstr "no se pudo convertir el nombre de configuración regional «%s» a etiqueta de lenguaje: %s" +msgid "could not load locale \"%s\"" +msgstr "no se pudo cargar la configuración regional «%s»" -#: utils/adt/pg_locale.c:3024 +#: utils/adt/pg_locale_libc.c:708 #, c-format -msgid "could not get language from ICU locale \"%s\": %s" -msgstr "no se pudo obtener el lenguaje de la configuración regional ICU «%s»: %s" +msgid "could not get collation version for locale \"%s\": error code %lu" +msgstr "no se pudo obtener la versión de «collation» para la configuración regional «%s»: código de error %lu" -#: utils/adt/pg_locale.c:3026 utils/adt/pg_locale.c:3055 +#: 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 "Par desactivar la validación ICU de configuración regional, defina «%s» a «%s»." +msgid "could not convert string to UTF-16: error code %lu" +msgstr "no se pudo convertir la cadena a UTF-16: código de error %lu" -#: utils/adt/pg_locale.c:3053 +#: utils/adt/pg_locale_libc.c:793 #, c-format -msgid "ICU locale \"%s\" has unknown language \"%s\"" -msgstr "el locale ICU «%s» tiene lenguaje desconocido «%s»" +msgid "could not compare Unicode strings: %m" +msgstr "no se pudieron comparar las cadenas Unicode: %m" + +#: utils/adt/pg_locale_libc.c:825 +#, c-format +msgid "could not create locale \"%s\": %m" +msgstr "no se pudo crear la configuración regional «%s»: %m" + +#: 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 "El sistema operativo no pudo encontrar datos de configuración regional para la configuración «%s»." -#: utils/adt/pg_locale.c:3204 +#: utils/adt/pg_locale_libc.c:1000 #, c-format msgid "invalid multibyte character for locale" msgstr "el carácter multibyte no es válido para esta configuración regional" -#: utils/adt/pg_locale.c:3205 +#: utils/adt/pg_locale_libc.c:1001 #, c-format msgid "The server's LC_CTYPE locale is probably incompatible with the database encoding." msgstr "La configuración regional LC_CTYPE del servidor es probablemente incompatible con la codificación de la base de datos." @@ -26214,27 +27713,27 @@ msgstr "no se puede sumar NaN a bigint" msgid "cannot subtract NaN from pg_lsn" msgstr "no se puede restar NaN de 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 "la función sólo puede invocarse cuando el servidor está en modo de actualización binaria" -#: utils/adt/pgstatfuncs.c:252 +#: utils/adt/pgstatfuncs.c:280 #, c-format msgid "invalid command name: \"%s\"" msgstr "nombre de orden no válido: «%s»" -#: utils/adt/pgstatfuncs.c:1739 +#: utils/adt/pgstatfuncs.c:1909 #, c-format msgid "unrecognized reset target: \"%s\"" msgstr "destino de reset no reconocido: «%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 "El destino debe ser «archiver», «bgwriter», «checkpointer», «io», «recovery_prefetch», «slru» o «wal»." -#: utils/adt/pgstatfuncs.c:1822 +#: utils/adt/pgstatfuncs.c:2027 #, c-format msgid "invalid subscription OID %u" msgstr "OID de suscripción %u no válido" @@ -26259,72 +27758,72 @@ msgstr "no se puede aceptar un valor de un tipo inconcluso" msgid "cannot display a value of a shell type" msgstr "no se puede desplegar un valor de un tipo inconcluso" -#: utils/adt/rangetypes.c:422 +#: utils/adt/rangetypes.c:424 #, c-format msgid "range constructor flags argument must not be null" msgstr "el argumento de opciones del constructor de rango no debe ser null" -#: utils/adt/rangetypes.c:1021 +#: utils/adt/rangetypes.c:1023 #, c-format msgid "result of range difference would not be contiguous" msgstr "el resultado de la diferencia de rangos no sería contiguo" -#: utils/adt/rangetypes.c:1082 +#: utils/adt/rangetypes.c:1084 #, c-format msgid "result of range union would not be contiguous" msgstr "el resultado de la unión de rangos no sería contiguo" -#: 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 "el límite inferior del rango debe ser menor o igual al límite superior del rango" -#: 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 "opciones de bordes de rango no válidas" -#: 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 "Los valores aceptables son «[]», «[)», «(]» y «()»." -#: 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 "literal de rango mal formado: «%s»" -#: utils/adt/rangetypes.c:2354 +#: utils/adt/rangetypes.c:2418 #, c-format msgid "Junk after \"empty\" key word." msgstr "Basura a continuación de la palabra «empty»." -#: utils/adt/rangetypes.c:2371 +#: utils/adt/rangetypes.c:2435 #, c-format msgid "Missing left parenthesis or bracket." msgstr "Falta paréntesis o corchete izquierdo." -#: utils/adt/rangetypes.c:2386 +#: utils/adt/rangetypes.c:2450 #, c-format msgid "Missing comma after lower bound." msgstr "Coma faltante después del límite inferior." -#: utils/adt/rangetypes.c:2406 +#: utils/adt/rangetypes.c:2470 #, c-format msgid "Too many commas." msgstr "Demasiadas comas." -#: utils/adt/rangetypes.c:2417 +#: utils/adt/rangetypes.c:2481 #, c-format 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:1996 utils/adt/varlena.c:4273 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 #, c-format msgid "regular expression failed: %s" msgstr "la expresión regular falló: %s" @@ -26339,33 +27838,33 @@ msgstr "opción de expresión regular no válida: «%.*s»" msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly." msgstr "Si su intención era usar regexp_replace() con un parámetro de inicio, convierta el cuarto argumento a integer explícitamente." -#: 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:6820 utils/misc/guc.c:6854 +#: 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 "valor no válido para el parámetro «%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 "la expresión regular SQL no puede contener más de dos separadores escape-comilla doble" #. 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 no soporta la opción «global»" -#: utils/adt/regexp.c:1312 +#: utils/adt/regexp.c:1381 #, c-format msgid "Use the regexp_matches function instead." msgstr "En su lugar, utilice la función regexp_matches." -#: utils/adt/regexp.c:1500 +#: utils/adt/regexp.c:1569 #, c-format msgid "too many regular expression matches" msgstr "demasiadas coincidencias de la expresión regular" @@ -26380,18 +27879,18 @@ msgstr "existe más de una función llamada «%s»" msgid "more than one operator named %s" msgstr "existe más de un operador llamado %s" -#: utils/adt/regproc.c:670 gram.y:8992 +#: utils/adt/regproc.c:670 gram.y:9100 #, c-format msgid "missing argument" msgstr "falta un argumento" -#: 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 "Use NONE para denotar el argumento faltante de un operador unario." -#: utils/adt/regproc.c:675 utils/adt/regproc.c:2029 utils/adt/ruleutils.c:10509 -#: utils/adt/ruleutils.c:10722 +#: 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 "demasiados argumentos" @@ -26402,7 +27901,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:3413 utils/adt/varlena.c:3418 +#: utils/adt/regproc.c:1815 utils/adt/varlena.c:3481 utils/adt/varlena.c:3486 #, c-format msgid "invalid name syntax" msgstr "la sintaxis de nombre no es válida" @@ -26427,83 +27926,101 @@ msgstr "se esperaba un nombre de tipo" msgid "improper type name" msgstr "el nombre de tipo no es válido" -#: 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 "inserción o actualización en la tabla «%s» viola la llave foránea «%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 no permite la mezcla de valores de clave nulos y no nulos." -#: utils/adt/ri_triggers.c:2036 +#: utils/adt/ri_triggers.c:2192 #, c-format msgid "function \"%s\" must be fired for INSERT" msgstr "la función «%s» debe ser ejecutada en INSERT" -#: utils/adt/ri_triggers.c:2042 +#: utils/adt/ri_triggers.c:2198 #, c-format msgid "function \"%s\" must be fired for UPDATE" msgstr "la función «%s» debe ser ejecutada en UPDATE" -#: utils/adt/ri_triggers.c:2048 +#: utils/adt/ri_triggers.c:2204 #, c-format msgid "function \"%s\" must be fired for DELETE" msgstr "la función «%s» debe ser ejecutada en 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 "no hay una entrada en pg_constraint para el trigger «%s» en tabla «%s»" -#: 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 "Elimine este trigger de integridad referencial y sus pares, y utilice 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 no está implementada" -#: 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 "la consulta de integridad referencial en «%s» de la restricción «%s» en «%s» entregó un resultado inesperado" -#: 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 "Esto probablemente es causado por una regla que reescribió la consulta." -#: utils/adt/ri_triggers.c:2591 +#: utils/adt/ri_triggers.c:2764 #, c-format msgid "removing partition \"%s\" violates foreign key constraint \"%s\"" msgstr "eliminar la partición «%s» viola la llave foránea «%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 "La llave (%s)=(%s) todavía es referida desde la tabla «%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 "La llave (%s)=(%s) no está presente en la tabla «%s»." -#: utils/adt/ri_triggers.c:2608 +#: utils/adt/ri_triggers.c:2781 #, c-format msgid "Key is not present in table \"%s\"." msgstr "La llave no está presente en la tabla «%s»." -#: utils/adt/ri_triggers.c:2614 +#: utils/adt/ri_triggers.c:2787 +#, fuzzy, c-format +#| msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\"" +msgid "update or delete on table \"%s\" violates RESTRICT setting of foreign key constraint \"%s\" on table \"%s\"" +msgstr "update o delete en «%s» viola la llave foránea «%s» en la tabla «%s»" + +#: utils/adt/ri_triggers.c:2792 +#, fuzzy, c-format +#| msgid "Key (%s)=(%s) is still referenced from table \"%s\"." +msgid "Key (%s)=(%s) is referenced from table \"%s\"." +msgstr "La llave (%s)=(%s) todavía es referida desde la tabla «%s»." + +#: utils/adt/ri_triggers.c:2795 +#, fuzzy, c-format +#| msgid "Key is still referenced from table \"%s\"." +msgid "Key is referenced from table \"%s\"." +msgstr "La llave todavía es referida desde la tabla «%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 o delete en «%s» viola la llave foránea «%s» en la tabla «%s»" -#: utils/adt/ri_triggers.c:2622 +#: utils/adt/ri_triggers.c:2809 #, c-format msgid "Key is still referenced from table \"%s\"." msgstr "La llave todavía es referida desde la tabla «%s»." @@ -26554,146 +28071,177 @@ msgstr "los datos binarios tienen tipo %u (%s) en lugar del esperado %u (%s) en msgid "improper binary format in record column %d" msgstr "formato binario incorrecto en la columna record %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 "no se pueden comparar los tipos de columnas disímiles %s y %s en la columna %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 "no se pueden comparar registros con cantidad distinta de columnas" -#: utils/adt/ruleutils.c:2694 +#: utils/adt/ruleutils.c:2740 #, c-format msgid "input is a query, not an expression" msgstr "la entrada es una consulta, no una expresión" -#: utils/adt/ruleutils.c:2706 +#: utils/adt/ruleutils.c:2752 #, c-format msgid "expression contains variables of more than one relation" msgstr "la expresión contiene variables de más de una relación" -#: utils/adt/ruleutils.c:2713 +#: utils/adt/ruleutils.c:2759 #, c-format msgid "expression contains variables" msgstr "la expresión contiene variables" -#: utils/adt/ruleutils.c:5246 +#: utils/adt/ruleutils.c:5433 #, c-format msgid "rule \"%s\" has unsupported event type %d" msgstr "la regla «%s» tiene el tipo de evento no soportado %d" -#: utils/adt/timestamp.c:128 +#: utils/adt/tid.c:317 +#, fuzzy, c-format +#| msgid "cannot define statistics for relation \"%s\"" +msgid "cannot look at latest visible tid for relation \"%s.%s\"" +msgstr "no se puede definir estadísticas para la relación «%s»" + +#: utils/adt/tid.c:356 +#, c-format +msgid "ctid isn't of type TID" +msgstr "" + +#: utils/adt/tid.c:364 +#, c-format +msgid "currtid cannot handle views with no CTID" +msgstr "" + +#: utils/adt/tid.c:369 +#, c-format +msgid "the view has no rules" +msgstr "" + +#: utils/adt/tid.c:381 +#, fuzzy, c-format +#| msgid "only one default namespace is allowed" +msgid "only one select rule is allowed in views" +msgstr "sólo se permite un espacio de nombres predeterminado" + +#: utils/adt/timestamp.c:130 #, c-format msgid "TIMESTAMP(%d)%s precision must not be negative" msgstr "la precisión de TIMESTAMP(%d)%s no debe ser negativa" -#: utils/adt/timestamp.c:134 +#: utils/adt/timestamp.c:136 #, c-format msgid "TIMESTAMP(%d)%s precision reduced to maximum allowed, %d" msgstr "la precisión de TIMESTAMP(%d)%s fue reducida al máximo permitido, %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 "timestamp fuera de rango: «%s»" + +#: utils/adt/timestamp.c:396 #, c-format msgid "timestamp(%d) precision must be between %d and %d" msgstr "la precisión de timestamp(%d) debe estar entre %d y %d" -#: utils/adt/timestamp.c:512 +#: utils/adt/timestamp.c:514 #, c-format msgid "Numeric time zones must have \"-\" or \"+\" as first character." msgstr "Los husos horarios numéricos deben tener «-» o «+» como su primer carácter." -#: utils/adt/timestamp.c:524 +#: utils/adt/timestamp.c:526 #, c-format msgid "numeric time zone \"%s\" out of range" msgstr "huso horario numérico «%s» fuera de rango" -#: 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 "timestamp fuera de rango: %d-%02d-%02d %d:%02d:%02g" -#: utils/adt/timestamp.c:744 +#: utils/adt/timestamp.c:735 #, c-format msgid "timestamp cannot be NaN" msgstr "el timestamp no puede ser 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 "timestamp fuera de rango: «%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 "interval fuera de rango" -#: 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 "modificador de tipo INTERVAL no válido" -#: utils/adt/timestamp.c:1110 +#: utils/adt/timestamp.c:1101 #, c-format msgid "INTERVAL(%d) precision must not be negative" msgstr "la precisión de INTERVAL(%d) no debe ser negativa" -#: utils/adt/timestamp.c:1116 +#: utils/adt/timestamp.c:1107 #, c-format msgid "INTERVAL(%d) precision reduced to maximum allowed, %d" msgstr "la precisión de INTERVAL(%d) fue reducida al máximo permitido, %d" -#: utils/adt/timestamp.c:1506 +#: utils/adt/timestamp.c:1497 #, c-format msgid "interval(%d) precision must be between %d and %d" msgstr "la precisión de interval(%d) debe estar entre %d y %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 "origen fuera de rango" -#: 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 "no se puede aproximar (bin) timestamps hacia intervalos infinitos" -#: 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 "no se puede aproximar (bin) timestamps hacia intervalos que contengan meses o años" -#: 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 "el intervalo de paso (stride) debe ser mayor que cero" -#: utils/adt/timestamp.c:5091 +#: utils/adt/timestamp.c:5181 utils/adt/timestamp.c:5233 #, c-format msgid "Months usually have fractional weeks." msgstr "Los meses usualmente tienen semanas fraccionales." -#: 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 "el tamaño de paso no puede ser infinito" @@ -26768,32 +28316,32 @@ msgstr "la consulta de búsqueda en texto contiene sólo stopwords o no contiene msgid "ts_rewrite query must return two tsquery columns" msgstr "consulta ts_rewrite debe retornar dos columnas tsquery" -#: utils/adt/tsrank.c:412 +#: utils/adt/tsrank.c:415 #, c-format msgid "array of weight must be one-dimensional" msgstr "el array de pesos debe ser unidimensional" -#: utils/adt/tsrank.c:417 +#: utils/adt/tsrank.c:420 #, c-format msgid "array of weight is too short" msgstr "el array de pesos es muy corto" -#: utils/adt/tsrank.c:422 +#: utils/adt/tsrank.c:425 #, c-format msgid "array of weight must not contain nulls" msgstr "los arrays de pesos no deben contener valores nulos" -#: 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 "peso fuera de rango" -#: utils/adt/tsvector.c:216 +#: utils/adt/tsvector.c:213 #, c-format msgid "word is too long (%ld bytes, max %ld bytes)" msgstr "la palabra es demasiado larga (%ld, máximo %ld bytes)" -#: 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 "la cadena es demasiado larga para tsvector (%ld bytes, máximo %ld bytes)" @@ -26873,7 +28421,7 @@ msgstr "no hay carácter escapado: «%s»" msgid "wrong position info in tsvector: \"%s\"" msgstr "información posicional incorrecta en 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 "no se pudo generar valores aleatorios" @@ -26918,9 +28466,9 @@ msgstr "el largo no es válido en cadena de bits externa" 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: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:3102 +#: utils/adt/varlena.c:3180 #, c-format msgid "negative substring length not allowed" msgstr "no se permite un largo negativo de subcadena" @@ -26945,7 +28493,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:3337 +#: utils/adt/varbit.c:1833 utils/adt/varlena.c:3384 #, c-format msgid "new bit must be 0 or 1" msgstr "el nuevo bit debe ser 0 o 1" @@ -26960,92 +28508,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:1520 +#: utils/adt/varchar.c:737 utils/adt/varlena.c:1591 #, 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:1230 utils/adt/varlena.c:1809 +#: utils/adt/varlena.c:1864 #, 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:3221 utils/adt/varlena.c:3288 +#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 #, 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:3252 utils/adt/varlena.c:3324 -#, c-format -msgid "index %lld out of valid range, 0..%lld" -msgstr "el índice %lld está fuera de rango, 0..%lld" +#: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 +#, 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:4385 +#: utils/adt/varlena.c:4587 #, c-format msgid "field position must not be zero" msgstr "la posición del campo no debe ser cero" -#: utils/adt/varlena.c:5630 +#: utils/adt/varlena.c:5832 #, c-format msgid "unterminated format() type specifier" msgstr "especificador de tipo inconcluso en format()" -#: utils/adt/varlena.c:5631 utils/adt/varlena.c:5765 utils/adt/varlena.c:5886 +#: utils/adt/varlena.c:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "Para un «%%» solo, use «%%%%»." -#: utils/adt/varlena.c:5763 utils/adt/varlena.c:5884 +#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 #, c-format msgid "unrecognized format() type specifier \"%.*s\"" msgstr "especificador de tipo no reconocido «%.*s» en format()" -#: utils/adt/varlena.c:5776 utils/adt/varlena.c:5833 +#: utils/adt/varlena.c:5978 utils/adt/varlena.c:6035 #, c-format msgid "too few arguments for format()" msgstr "muy pocos argumentos para format()" -#: utils/adt/varlena.c:5929 utils/adt/varlena.c:6111 +#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 #, c-format msgid "number is out of range" msgstr "el número está fuera de rango" -#: utils/adt/varlena.c:5992 utils/adt/varlena.c:6020 +#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 #, 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:6013 +#: utils/adt/varlena.c:6215 #, 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:6058 +#: utils/adt/varlena.c:6260 #, 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:6266 +#: utils/adt/varlena.c:6468 #, 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:6279 +#: utils/adt/varlena.c:6481 #, c-format msgid "invalid normalization form: %s" msgstr "forma de normalización no válida: %s" -#: utils/adt/varlena.c:6324 +#: utils/adt/varlena.c:6526 #, 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:6541 utils/adt/varlena.c:6576 utils/adt/varlena.c:6611 +#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 #, c-format msgid "invalid Unicode code point: %04X" msgstr "punto de código Unicode no válido: %04X" -#: utils/adt/varlena.c:6641 +#: utils/adt/varlena.c:6843 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "Los escapes Unicode deben ser \\XXXX, \\+XXXXXX, \\uXXXX o \\UXXXXXXXX." @@ -27061,8 +28610,9 @@ msgid "argument of nth_value must be greater than zero" msgstr "el argumento de nth_value debe ser mayor que cero" #: utils/adt/xid8funcs.c:120 -#, c-format -msgid "transaction ID %llu is in the future" +#, fuzzy, c-format +#| msgid "transaction ID %llu is in the future" +msgid "transaction ID % is in the future" msgstr "el ID de transacción %llu está en el futuro" #: utils/adt/xid8funcs.c:522 @@ -27080,7 +28630,7 @@ msgstr "característica XML no soportada" msgid "This functionality requires the server to be built with libxml support." msgstr "Esta funcionalidad requiere que el servidor haya sido construido con soporte 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 "nombre de codificación «%s» no válido" @@ -27095,157 +28645,162 @@ msgstr "comentario XML no válido" msgid "not an XML document" msgstr "no es un documento 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 "instrucción de procesamiento XML no válida" -#: utils/adt/xml.c:1009 +#: utils/adt/xml.c:1021 #, c-format msgid "XML processing instruction target name cannot be \"%s\"." msgstr "el nombre de destino de la instrucción de procesamiento XML no puede ser «%s»." -#: utils/adt/xml.c:1032 +#: utils/adt/xml.c:1044 #, c-format msgid "XML processing instruction cannot contain \"?>\"." msgstr "la instrucción de procesamiento XML no puede contener «?>»." -#: utils/adt/xml.c:1111 +#: utils/adt/xml.c:1123 #, c-format msgid "xmlvalidate is not implemented" msgstr "xmlvalidate no está implementado" -#: utils/adt/xml.c:1167 +#: utils/adt/xml.c:1179 #, c-format msgid "could not initialize XML library" msgstr "no se pudo inicializar la biblioteca 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 tiene un tipo char incompatible: 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 "no se pudo instalar un gestor de errores 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 "Esto probablemente indica que la versión de libxml2 en uso no es compatible con los archivos de cabecera libxml2 con los que PostgreSQL fue construido." -#: utils/adt/xml.c:2281 +#: utils/adt/xml.c:2283 msgid "Invalid character value." msgstr "Valor de carácter no válido." -#: utils/adt/xml.c:2284 +#: utils/adt/xml.c:2286 msgid "Space required." msgstr "Se requiere un espacio." -#: utils/adt/xml.c:2287 +#: utils/adt/xml.c:2289 msgid "standalone accepts only 'yes' or 'no'." msgstr "standalone acepta sólo 'yes' y 'no'." -#: utils/adt/xml.c:2290 +#: utils/adt/xml.c:2292 msgid "Malformed declaration: missing version." msgstr "Declaración mal formada: falta la versión." -#: utils/adt/xml.c:2293 +#: utils/adt/xml.c:2295 msgid "Missing encoding in text declaration." msgstr "Falta especificación de codificación en declaración de texto." -#: utils/adt/xml.c:2296 +#: utils/adt/xml.c:2298 msgid "Parsing XML declaration: '?>' expected." msgstr "Procesando declaración XML: se esperaba '?>'." -#: utils/adt/xml.c:2299 +#: utils/adt/xml.c:2301 #, c-format msgid "Unrecognized libxml error code: %d." msgstr "Código de error libxml no reconocido: %d." -#: utils/adt/xml.c:2553 +#: utils/adt/xml.c:2555 #, c-format msgid "XML does not support infinite date values." msgstr "XML no soporta valores infinitos de fecha." -#: 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 no soporta valores infinitos de timestamp." -#: utils/adt/xml.c:3018 +#: utils/adt/xml.c:3020 #, c-format msgid "invalid query" msgstr "consulta no válido" -#: utils/adt/xml.c:3110 +#: utils/adt/xml.c:3112 #, c-format msgid "portal \"%s\" does not return tuples" msgstr "el portal «%s» no retorna tuplas" -#: utils/adt/xml.c:4362 +#: utils/adt/xml.c:4364 #, c-format msgid "invalid array for XML namespace mapping" msgstr "array no válido para mapeo de espacio de nombres 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 "El array debe ser bidimensional y el largo del segundo eje igual a 2." -#: utils/adt/xml.c:4387 +#: utils/adt/xml.c:4389 #, c-format msgid "empty XPath expression" msgstr "expresion XPath vacía" -#: utils/adt/xml.c:4439 +#: utils/adt/xml.c:4441 #, c-format msgid "neither namespace name nor URI may be null" msgstr "ni el espacio de nombres ni la URI pueden ser vacíos" -#: 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 "no se pudo registrar un espacio de nombres XML llamado «%s» con URI «%s»" -#: utils/adt/xml.c:4795 +#: utils/adt/xml.c:4797 #, c-format msgid "DEFAULT namespace is not supported" msgstr "el espacio de nombres DEFAULT no está soportado" -#: utils/adt/xml.c:4824 +#: utils/adt/xml.c:4826 #, c-format msgid "row path filter must not be empty string" msgstr "el «path» de filtro de registros no debe ser la cadena vacía" -#: utils/adt/xml.c:4858 +#: utils/adt/xml.c:4860 #, c-format msgid "column path filter must not be empty string" msgstr "el «path» de filtro de columna no debe ser la cadena vacía" -#: utils/adt/xml.c:5005 +#: utils/adt/xml.c:5007 #, c-format msgid "more than one value returned by column XPath expression" msgstr "la expresión XPath de columna retornó más de un valor" -#: utils/cache/lsyscache.c:1017 +#: utils/cache/funccache.c:364 +#, c-format +msgid "could not determine actual argument type for polymorphic function \"%s\"" +msgstr "no se pudo determinar el verdadero tipo de argumento para la función polimórfica «%s»" + +#: utils/cache/lsyscache.c:1109 #, c-format msgid "cast from type %s to type %s does not exist" msgstr "no existe la conversión del tipo %s al tipo %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 "el tipo %s está inconcluso" -#: utils/cache/lsyscache.c:2892 +#: utils/cache/lsyscache.c:3032 #, c-format msgid "no input function available for type %s" msgstr "no hay una función de entrada para el tipo %s" -#: utils/cache/lsyscache.c:2925 +#: utils/cache/lsyscache.c:3065 #, c-format msgid "no output function available for type %s" msgstr "no hay una función de salida para el tipo %s" @@ -27255,32 +28810,27 @@ msgstr "no hay una función de salida para el tipo %s" msgid "operator class \"%s\" of access method %s is missing support function %d for type %s" msgstr "falta la función de soporte %3$d para el tipo %4$s de la clase de operadores «%1$s» del método de acceso %2$s" -#: utils/cache/plancache.c:747 -#, c-format -msgid "cached plan must not change result type" -msgstr "el plan almacenado no debe cambiar el tipo de resultado" - -#: utils/cache/relcache.c:3801 +#: utils/cache/relcache.c:3805 #, c-format msgid "heap relfilenumber value not set when in binary upgrade mode" msgstr "el valor de relfilenumber de heap no se definió en modo de actualización binaria" -#: utils/cache/relcache.c:3809 +#: utils/cache/relcache.c:3813 #, c-format msgid "unexpected request for new relfilenumber in binary upgrade mode" msgstr "petición inesperada de un nuevo relfilenode en modo de actualización binaria" -#: utils/cache/relcache.c:6539 +#: utils/cache/relcache.c:6633 #, c-format msgid "could not create relation-cache initialization file \"%s\": %m" msgstr "no se pudo crear el archivo de cache de catálogos de sistema «%s»: %m" -#: utils/cache/relcache.c:6541 +#: utils/cache/relcache.c:6635 #, c-format msgid "Continuing anyway, but there's something wrong." msgstr "Prosiguiendo de todas maneras, pero hay algo mal." -#: utils/cache/relcache.c:6871 +#: utils/cache/relcache.c:6965 #, c-format msgid "could not remove cache file \"%s\": %m" msgstr "no se pudo eliminar el archivo de cache «%s»: %m" @@ -27300,7 +28850,7 @@ msgstr "el archivo de mapeo de relaciones «%s» contiene datos no válidos" msgid "relation mapping file \"%s\" contains incorrect checksum" msgstr "el archivo de mapeo de relaciones «%s» tiene una suma de verificación incorrecta" -#: 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 "el tipo record no ha sido registrado" @@ -27315,194 +28865,186 @@ msgstr "TRAP: ExceptionalCondition: argumentos erróneos en PID %d\n" msgid "TRAP: failed Assert(\"%s\"), File: \"%s\", Line: %d, PID: %d\n" msgstr "TRAP: falló Assert(«%s»), Archivo «%s», Línea %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 "ocurrió un error antes de que el procesamiento de errores esté disponible\n" -#: utils/error/elog.c:2134 +#: utils/error/elog.c:2142 #, c-format msgid "could not reopen file \"%s\" as stderr: %m" msgstr "no se pudo reabrir «%s» para error estándar: %m" -#: utils/error/elog.c:2147 +#: utils/error/elog.c:2155 #, c-format msgid "could not reopen file \"%s\" as stdout: %m" msgstr "no se pudo reabrir «%s» para usar como salida estándar: %m" -#: utils/error/elog.c:2183 -#, c-format -msgid "Invalid character" +#: utils/error/elog.c:2191 +#, fuzzy, c-format +#| msgid "Invalid character" +msgid "Invalid character." msgstr "Carácter no válido" -#: 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 "[desconocido]" -#: 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 "falta un texto de mensaje de error" -#: 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 " en carácter %d" -#: utils/error/elog.c:3218 utils/error/elog.c:3225 +#: utils/error/elog.c:3262 utils/error/elog.c:3269 msgid "DETAIL: " msgstr "DETALLE: " -#: utils/error/elog.c:3232 +#: utils/error/elog.c:3276 msgid "HINT: " msgstr "HINT: " -#: utils/error/elog.c:3239 +#: utils/error/elog.c:3283 msgid "QUERY: " msgstr "CONSULTA: " -#: utils/error/elog.c:3246 +#: utils/error/elog.c:3290 msgid "CONTEXT: " msgstr "CONTEXTO: " -#: utils/error/elog.c:3256 +#: utils/error/elog.c:3300 #, c-format msgid "LOCATION: %s, %s:%d\n" msgstr "UBICACIÓN: %s, %s:%d\n" -#: utils/error/elog.c:3263 +#: utils/error/elog.c:3307 #, c-format msgid "LOCATION: %s:%d\n" msgstr "UBICACIÓN: %s:%d\n" -#: utils/error/elog.c:3270 +#: utils/error/elog.c:3314 msgid "BACKTRACE: " msgstr "BACKTRACE: " -#: utils/error/elog.c:3282 +#: utils/error/elog.c:3326 msgid "STATEMENT: " msgstr "SENTENCIA: " -#: utils/error/elog.c:3678 +#: utils/error/elog.c:3722 msgid "DEBUG" msgstr "DEBUG" -#: utils/error/elog.c:3682 +#: utils/error/elog.c:3726 msgid "LOG" msgstr "LOG" -#: utils/error/elog.c:3685 +#: utils/error/elog.c:3729 msgid "INFO" msgstr "INFO" -#: utils/error/elog.c:3688 +#: utils/error/elog.c:3732 msgid "NOTICE" msgstr "NOTICE" -#: utils/error/elog.c:3692 +#: utils/error/elog.c:3736 msgid "WARNING" msgstr "WARNING" -#: utils/error/elog.c:3695 +#: utils/error/elog.c:3739 msgid "ERROR" msgstr "ERROR" -#: utils/error/elog.c:3698 +#: utils/error/elog.c:3742 msgid "FATAL" msgstr "FATAL" -#: utils/error/elog.c:3701 +#: utils/error/elog.c:3745 msgid "PANIC" msgstr "PANIC" -#: utils/fmgr/dfmgr.c:128 +#: utils/fmgr/dfmgr.c:133 #, c-format msgid "could not find function \"%s\" in file \"%s\"" msgstr "no se pudo encontrar la función «%s» en el archivo «%s»" -#: utils/fmgr/dfmgr.c:247 +#: utils/fmgr/dfmgr.c:252 #, c-format msgid "could not load library \"%s\": %s" msgstr "no se pudo cargar la biblioteca «%s»: %s" -#: utils/fmgr/dfmgr.c:279 +#: utils/fmgr/dfmgr.c:289 #, c-format msgid "incompatible library \"%s\": missing magic block" msgstr "biblioteca «%s» incompatible: no se encuentra el bloque mágico" -#: 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 "Se requiere que las bibliotecas de extensión usen la macro PG_MODULE_MAGIC." -#: utils/fmgr/dfmgr.c:327 +#: utils/fmgr/dfmgr.c:337 #, c-format msgid "incompatible library \"%s\": version mismatch" msgstr "biblioteca «%s» incompatible: versión no coincide" -#: utils/fmgr/dfmgr.c:329 +#: utils/fmgr/dfmgr.c:339 #, c-format msgid "Server is version %d, library is version %s." msgstr "Versión del servidor %d, versión de biblioteca %s." -#: utils/fmgr/dfmgr.c:341 +#: utils/fmgr/dfmgr.c:351 #, c-format msgid "incompatible library \"%s\": ABI mismatch" msgstr "biblioteca «%s» incompatible: ABI no coincide" -#: utils/fmgr/dfmgr.c:343 +#: utils/fmgr/dfmgr.c:353 #, c-format msgid "Server has ABI \"%s\", library has \"%s\"." msgstr "El servidor tiene ABI «%s», la librería tiene «%s»." -#: utils/fmgr/dfmgr.c:361 -#, c-format -msgid "Server has FUNC_MAX_ARGS = %d, library has %d." -msgstr "El servidor tiene FUNC_MAX_ARGS = %d, la librería tiene %d" - -#: utils/fmgr/dfmgr.c:370 -#, c-format -msgid "Server has INDEX_MAX_KEYS = %d, library has %d." -msgstr "El servidor tiene INDEX_MAX_KEYS = %d, la librería tiene %d" - -#: utils/fmgr/dfmgr.c:379 -#, c-format -msgid "Server has NAMEDATALEN = %d, library has %d." +#. 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 +#, fuzzy, c-format +#| msgid "Server has NAMEDATALEN = %d, library has %d." +msgid "Server has %s = %d, library has %d." msgstr "El servidor tiene NAMEDATALEN = %d, la librería tiene %d" -#: utils/fmgr/dfmgr.c:388 -#, c-format -msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." -msgstr "El servidor tiene FLOAT8PASSBYVAL = %s, la librería tiene %s" +#. translator: %s is a variable name and %d its values +#: utils/fmgr/dfmgr.c:402 +#, fuzzy, c-format +#| msgid "Server has ABI \"%s\", library has \"%s\"." +msgid "Server has %s = %s, library has %s." +msgstr "El servidor tiene ABI «%s», la librería tiene «%s»." -#: utils/fmgr/dfmgr.c:395 +#: utils/fmgr/dfmgr.c:409 msgid "Magic block has unexpected length or padding difference." msgstr "El bloque mágico tiene un largo inesperado, o una diferencia de relleno." -#: utils/fmgr/dfmgr.c:398 +#: utils/fmgr/dfmgr.c:412 #, c-format msgid "incompatible library \"%s\": magic block mismatch" msgstr "biblioteca «%s» incompatible: bloque mágico no coincide" -#: utils/fmgr/dfmgr.c:475 +#: utils/fmgr/dfmgr.c:527 #, c-format msgid "access to library \"%s\" is not allowed" msgstr "no está permitido el acceso a la biblioteca «%s»" -#: utils/fmgr/dfmgr.c:501 -#, c-format -msgid "invalid macro name in dynamic library path: %s" +#: utils/fmgr/dfmgr.c:554 +#, fuzzy, c-format +#| msgid "invalid macro name in dynamic library path: %s" +msgid "invalid macro name in path: %s" msgstr "el nombre de macro no es válido en la ruta a biblioteca dinámica: %s" -#: utils/fmgr/dfmgr.c:541 -#, c-format -msgid "zero-length component in parameter \"dynamic_library_path\"" +#: utils/fmgr/dfmgr.c:606 +#, fuzzy, c-format +#| msgid "zero-length component in parameter \"dynamic_library_path\"" +msgid "zero-length component in parameter \"%s\"" msgstr "se encontró componente de largo cero en el parámetro «dynamic_library_path»" -#: utils/fmgr/dfmgr.c:560 -#, c-format -msgid "component in parameter \"dynamic_library_path\" is not an absolute path" -msgstr "un componente en el parámetro «dynamic_library_path» no es una ruta absoluta" - #: utils/fmgr/fmgr.c:236 #, c-format msgid "internal function \"%s\" is not in internal lookup table" @@ -27558,345 +29100,449 @@ msgstr "no se entregó alias de columna" msgid "could not determine row description for function returning record" msgstr "no se pudo encontrar descripción de registro de función que retorna record" -#: utils/init/miscinit.c:353 +#: utils/init/miscinit.c:265 +#, fuzzy +#| msgid "unknown reason" +msgid "unknown process type" +msgstr "razón desconocida" + +#: utils/init/miscinit.c:270 +#, fuzzy +#| msgid "could not initialize globals" +msgid "not initialized" +msgstr "no se pudo inicializar las globales" + +#: utils/init/miscinit.c:273 +#, fuzzy +#| msgid "archiver process" +msgid "archiver" +msgstr "proceso de archivado" + +#: utils/init/miscinit.c:276 +#, fuzzy +#| msgid "autovacuum launcher process" +msgid "autovacuum launcher" +msgstr "proceso lanzador de autovacuum" + +#: utils/init/miscinit.c:279 +#, fuzzy +#| msgid "Autovacuum" +msgid "autovacuum worker" +msgstr "autovacuum worker" + +#: utils/init/miscinit.c:282 +msgid "client backend" +msgstr "backend de cliente" + +#: utils/init/miscinit.c:285 +msgid "dead-end client backend" +msgstr "" + +#: utils/init/miscinit.c:288 +#, fuzzy +#| msgid "background worker \"%s\"" +msgid "background worker" +msgstr "proceso ayudante" + +#: utils/init/miscinit.c:291 +#, fuzzy +#| msgid "background writer process" +msgid "background writer" +msgstr "proceso background writer" + +#: utils/init/miscinit.c:294 +#, fuzzy +#| msgid "checkpointer process" +msgid "checkpointer" +msgstr "proceso checkpointer" + +#: utils/init/miscinit.c:300 +#, fuzzy +#| msgid "unlogged" +msgid "logger" +msgstr "unlogged" + +#: utils/init/miscinit.c:303 +#, fuzzy +#| msgid "slot sync worker process" +msgid "slotsync worker" +msgstr "proceso sincronizador de slot" + +#: utils/init/miscinit.c:306 +msgid "standalone backend" +msgstr "" + +#: utils/init/miscinit.c:309 +#, fuzzy +#| msgid "starting up" +msgid "startup" +msgstr "iniciando" + +#: utils/init/miscinit.c:312 +msgid "walreceiver" +msgstr "" + +#: utils/init/miscinit.c:315 +msgid "walsender" +msgstr "" + +#: utils/init/miscinit.c:318 +msgid "walsummarizer" +msgstr "" + +#: utils/init/miscinit.c:321 +msgid "walwriter" +msgstr "" + +#: utils/init/miscinit.c:358 #, c-format msgid "data directory \"%s\" does not exist" msgstr "no existe el directorio de datos «%s»" -#: utils/init/miscinit.c:358 +#: utils/init/miscinit.c:363 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "no se pudo obtener los permisos del directorio «%s»: %m" -#: utils/init/miscinit.c:366 +#: utils/init/miscinit.c:371 #, c-format msgid "specified data directory \"%s\" is not a directory" msgstr "el directorio de datos especificado «%s» no es un directorio" -#: utils/init/miscinit.c:382 +#: utils/init/miscinit.c:387 #, c-format msgid "data directory \"%s\" has wrong ownership" msgstr "el directorio de datos «%s» tiene dueño equivocado" -#: utils/init/miscinit.c:384 +#: utils/init/miscinit.c:389 #, c-format msgid "The server must be started by the user that owns the data directory." msgstr "El servidor debe ser iniciado por el usuario dueño del directorio de datos." -#: utils/init/miscinit.c:402 +#: utils/init/miscinit.c:407 #, c-format msgid "data directory \"%s\" has invalid permissions" msgstr "el directorio de datos «%s» tiene permisos no válidos" -#: utils/init/miscinit.c:404 +#: utils/init/miscinit.c:409 #, c-format msgid "Permissions should be u=rwx (0700) or u=rwx,g=rx (0750)." msgstr "Los permisos deberían ser u=rwx (0700) o u=rwx,g=rx (0750)." -#: utils/init/miscinit.c:462 +#: utils/init/miscinit.c:467 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "no se pudo cambiar al directorio «%s»: %m" -#: utils/init/miscinit.c:720 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 "no se puede definir el parámetro «%s» dentro de una operación restringida por seguridad" -#: utils/init/miscinit.c:807 +#: utils/init/miscinit.c:812 #, c-format msgid "role with OID %u does not exist" msgstr "no existe el rol con OID %u" -#: utils/init/miscinit.c:853 +#: utils/init/miscinit.c:858 #, c-format msgid "role \"%s\" is not permitted to log in" msgstr "al rol «%s» no se le permite conectarse" -#: utils/init/miscinit.c:874 +#: utils/init/miscinit.c:879 #, c-format msgid "too many connections for role \"%s\"" msgstr "demasiadas conexiones para el rol «%s»" -#: utils/init/miscinit.c:1045 +#: utils/init/miscinit.c:1050 #, c-format msgid "invalid role OID: %u" msgstr "el OID de rol no es válido: %u" -#: utils/init/miscinit.c:1192 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "el sistema de bases de datos está apagado" -#: utils/init/miscinit.c:1279 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "no se pudo crear el archivo de bloqueo «%s»: %m" -#: utils/init/miscinit.c:1293 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "no se pudo abrir el archivo de bloqueo «%s»: %m" -#: utils/init/miscinit.c:1300 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "no se pudo leer el archivo de bloqueo «%s»: %m" -#: utils/init/miscinit.c:1309 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "el archivo de bloqueo «%s» está vacío" -#: utils/init/miscinit.c:1310 +#: 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 "Otro proceso servidor está iniciándose, o el archivo de bloqueo es remanente de una caída durante un inicio anterior." -#: utils/init/miscinit.c:1354 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "el archivo de bloqueo «%s» ya existe" -#: utils/init/miscinit.c:1358 +#: utils/init/miscinit.c:1364 #, c-format msgid "Is another postgres (PID %d) running in data directory \"%s\"?" msgstr "¿Hay otro postgres (PID %d) en ejecución en el directorio de datos «%s»?" -#: utils/init/miscinit.c:1360 +#: utils/init/miscinit.c:1366 #, c-format msgid "Is another postmaster (PID %d) running in data directory \"%s\"?" msgstr "¿Hay otro postmaster (PID %d) en ejecución en el directorio de datos «%s»?" -#: utils/init/miscinit.c:1363 +#: utils/init/miscinit.c:1369 #, c-format msgid "Is another postgres (PID %d) using socket file \"%s\"?" msgstr "¿Hay otro postgres (PID %d) usando el socket «%s»?" -#: utils/init/miscinit.c:1365 +#: utils/init/miscinit.c:1371 #, c-format msgid "Is another postmaster (PID %d) using socket file \"%s\"?" msgstr "¿Hay otro postmaster (PID %d) usando el socket «%s»?" -#: utils/init/miscinit.c:1416 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "no se pudo eliminar el archivo de bloqueo antiguo «%s»: %m" -#: utils/init/miscinit.c:1418 +#: 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 "El archivo parece accidentalmente abandonado, pero no pudo ser eliminado. Por favor elimine el archivo manualmente e intente nuevamente." -#: utils/init/miscinit.c:1455 utils/init/miscinit.c:1469 -#: utils/init/miscinit.c:1480 +#: 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 "no se pudo escribir el archivo de bloqueo «%s»: %m" -#: utils/init/miscinit.c:1591 utils/init/miscinit.c:1733 utils/misc/guc.c:5765 +#: 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 "no se pudo leer el archivo «%s»: %m" -#: utils/init/miscinit.c:1721 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "no se pudo abrir el archivo «%s»: %m; continuando de todas formas" -#: utils/init/miscinit.c:1746 +#: utils/init/miscinit.c:1752 #, c-format msgid "lock file \"%s\" contains wrong PID: %ld instead of %ld" msgstr "el archivo de bloqueo «%s» tiene un PID erróneo: %ld en lugar de %ld" -#: utils/init/miscinit.c:1785 utils/init/miscinit.c:1801 +#: utils/init/miscinit.c:1791 utils/init/miscinit.c:1807 #, c-format msgid "\"%s\" is not a valid data directory" msgstr "«%s» no es un directorio de datos válido" -#: utils/init/miscinit.c:1787 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "Falta el archivo «%s»." -#: utils/init/miscinit.c:1803 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "El archivo «%s» no contiene datos válidos." -#: utils/init/miscinit.c:1805 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "Puede ser necesario ejecutar initdb." -#: utils/init/miscinit.c:1813 +#: 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 "El directorio de datos fue inicializado por PostgreSQL versión %s, que no es compatible con esta versión %s." -#: utils/init/postinit.c:259 +#: utils/init/postinit.c:269 #, c-format msgid "replication connection authorized: user=%s" msgstr "conexión de replicación autorizada: usuario=%s" -#: utils/init/postinit.c:262 +#: utils/init/postinit.c:272 #, c-format msgid "connection authorized: user=%s" msgstr "conexión autorizada: usuario=%s" -#: utils/init/postinit.c:265 +#: utils/init/postinit.c:275 #, c-format msgid " database=%s" msgstr " base_de_datos=%s" -#: utils/init/postinit.c:268 +#: utils/init/postinit.c:278 #, c-format msgid " application_name=%s" msgstr " nombre_de_aplicación=%s" -#: utils/init/postinit.c:273 +#: utils/init/postinit.c:283 #, c-format msgid " SSL enabled (protocol=%s, cipher=%s, bits=%d)" msgstr " SSL habilitado (protocolo=%s, cifrado=%s, bits=%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 (autenticado=%s, cifrado=%s, delegado_credenciales=%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 "no" -#: 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 "sí" -#: utils/init/postinit.c:292 +#: utils/init/postinit.c:302 #, c-format msgid " GSS (authenticated=%s, encrypted=%s, delegated_credentials=%s)" msgstr " GSS (autenticado=%s, cifrado=%s, delegado_credentiales=%s)" -#: utils/init/postinit.c:333 +#: utils/init/postinit.c:342 #, c-format msgid "database \"%s\" has disappeared from pg_database" msgstr "la base de datos «%s» ha desaparecido de 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 "Base de datos con OID %u ahora parece pertenecer a «%s»." -#: utils/init/postinit.c:355 +#: utils/init/postinit.c:364 #, c-format msgid "database \"%s\" is not currently accepting connections" msgstr "la base de datos «%s» no acepta conexiones" -#: utils/init/postinit.c:368 +#: utils/init/postinit.c:377 #, c-format msgid "permission denied for database \"%s\"" msgstr "permiso denegado a la base de datos «%s»" -#: utils/init/postinit.c:369 +#: utils/init/postinit.c:378 #, c-format msgid "User does not have CONNECT privilege." msgstr "Usuario no tiene privilegios de conexión." -#: utils/init/postinit.c:389 +#: utils/init/postinit.c:398 #, c-format msgid "too many connections for database \"%s\"" msgstr "demasiadas conexiones para la base de datos «%s»" -#: utils/init/postinit.c:413 utils/init/postinit.c:420 +#: utils/init/postinit.c:422 utils/init/postinit.c:429 #, c-format msgid "database locale is incompatible with operating system" msgstr "la configuración regional es incompatible con el sistema operativo" -#: utils/init/postinit.c:414 +#: utils/init/postinit.c:423 #, c-format msgid "The database was initialized with LC_COLLATE \"%s\", which is not recognized by setlocale()." msgstr "La base de datos fue inicializada con LC_COLLATE «%s», el cual no es reconocido por setlocale()." -#: utils/init/postinit.c:416 utils/init/postinit.c:423 +#: 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 "Recree la base de datos con otra configuración regional, o instale la configuración regional faltante." -#: utils/init/postinit.c:421 +#: utils/init/postinit.c:430 #, c-format msgid "The database was initialized with LC_CTYPE \"%s\", which is not recognized by setlocale()." msgstr "La base de datos fue inicializada con LC_CTYPE «%s», el cual no es reconocido por setlocale()." -#: utils/init/postinit.c:493 +#: utils/init/postinit.c:471 #, c-format msgid "database \"%s\" has a collation version mismatch" msgstr "la base de datos «%s» tiene una discordancia de versión de ordenamiento (“collation”)" -#: utils/init/postinit.c:495 +#: utils/init/postinit.c:473 #, c-format msgid "The database was created using collation version %s, but the operating system provides version %s." msgstr "La base de datos fue creada usando la versión de ordenamiento %s, pero el sistema operativo provee la versión %s." -#: utils/init/postinit.c:498 +#: 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 "Reconstruya todos los objetos en esta base de datos que usen el ordenamiento por omisión y ejecute ALTER DATABASE %s REFRESH COLLATION VERSION, o construya PostgreSQL con la versión correcta de la biblioteca." -#: utils/init/postinit.c:904 +#: utils/init/postinit.c:566 +#, c-format +msgid "too many server processes configured" +msgstr "" + +#: utils/init/postinit.c:567 +#, c-format +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 "" + +#: utils/init/postinit.c:878 #, c-format msgid "no roles are defined in this database system" msgstr "no hay roles definidos en esta base de datos" -#: utils/init/postinit.c:905 +#: utils/init/postinit.c:879 #, c-format msgid "You should immediately run CREATE USER \"%s\" SUPERUSER;." msgstr "Debería ejecutar imediatamente CREATE USER \"%s\" SUPERUSER;." -#: utils/init/postinit.c:942 +#: utils/init/postinit.c:924 #, c-format msgid "must be superuser to connect in binary upgrade mode" msgstr "debe ser superusuario para conectarse en modo de actualización binaria" -#: utils/init/postinit.c:962 +#: utils/init/postinit.c:944 #, c-format msgid "remaining connection slots are reserved for roles with the %s attribute" msgstr "las conexiones restantes están reservadas a roles con el atributo %s" -#: utils/init/postinit.c:968 +#: utils/init/postinit.c:950 #, c-format msgid "remaining connection slots are reserved for roles with privileges of the \"%s\" role" msgstr "las conexiones restantes están reservadas a roles con privilegios del rol «%s»" -#: utils/init/postinit.c:980 +#: utils/init/postinit.c:962 #, c-format msgid "permission denied to start WAL sender" msgstr "se ha denegado el permiso para iniciar “WAL sender”" -#: utils/init/postinit.c:981 +#: utils/init/postinit.c:963 #, c-format msgid "Only roles with the %s attribute may start a WAL sender process." msgstr "Sólo roles con el atributo %s pueden iniciar un proceso “WAL sender”." -#: utils/init/postinit.c:1099 +#: utils/init/postinit.c:1081 #, c-format msgid "It seems to have just been dropped or renamed." msgstr "Parece haber sido eliminada o renombrada." -#: utils/init/postinit.c:1103 +#: utils/init/postinit.c:1085 #, c-format msgid "database %u does not exist" msgstr "no existe la base de datos %u" -#: utils/init/postinit.c:1112 +#: utils/init/postinit.c:1094 #, c-format msgid "cannot connect to invalid database \"%s\"" msgstr "no se puede conectar a la base de datos no válida «%s»" -#: utils/init/postinit.c:1173 +#: utils/init/postinit.c:1155 #, c-format msgid "The database subdirectory \"%s\" is missing." msgstr "Falta el subdirectorio de base de datos «%s»." @@ -27911,60 +29557,60 @@ msgstr "el rol «%s» no puede hacer SET ROLE a «%s»" msgid "invalid encoding number: %d" msgstr "el número de codificación no es válido: %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 "ID de codificación %d inesperado para juegos de caracteres 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 "ID de codificación %d inesperado para juegos de caracteres 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 "la conversión entre %s y %s no está soportada" -#: 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 "La cadena de %d bytes es demasiado larga para la recodificación." -#: utils/mb/mbutils.c:568 +#: utils/mb/mbutils.c:569 #, c-format msgid "invalid source encoding name \"%s\"" msgstr "la codificación de origen «%s» no es válida" -#: utils/mb/mbutils.c:573 +#: utils/mb/mbutils.c:574 #, c-format msgid "invalid destination encoding name \"%s\"" msgstr "la codificación de destino «%s» no es válida" -#: utils/mb/mbutils.c:713 +#: utils/mb/mbutils.c:714 #, c-format msgid "invalid byte value for encoding \"%s\": 0x%02x" msgstr "byte no válido para codificación «%s»: 0x%02x" -#: utils/mb/mbutils.c:877 +#: utils/mb/mbutils.c:878 #, c-format msgid "invalid Unicode code point" msgstr "punto de código Unicode no válido" -#: utils/mb/mbutils.c:1201 +#: utils/mb/mbutils.c:1202 #, c-format msgid "bind_textdomain_codeset failed" msgstr "bind_textdomain_codeset falló" -#: utils/mb/mbutils.c:1718 +#: utils/mb/mbutils.c:1719 #, c-format msgid "invalid byte sequence for encoding \"%s\": %s" msgstr "secuencia de bytes no válida para codificación «%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 "carácter con secuencia de bytes %s en codificación «%s» no tiene equivalente en la codificación «%s»" @@ -27979,82 +29625,82 @@ msgstr "nombre de directorio de configuración vacío: «%s»" msgid "could not open configuration directory \"%s\": %m" msgstr "no se pudo abrir el directorio de configuración «%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 "Unidades válidas para este parámetro son «B», «kB», «MB», «GB» y «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 "Unidades válidas son para este parámetro son «us», «ms», «s», «min», «h» y «d»." -#: utils/misc/guc.c:430 +#: utils/misc/guc.c:428 #, c-format msgid "unrecognized configuration parameter \"%s\" in file \"%s\" line %d" msgstr "parámetro de configuración «%s» no reconocido en el archivo «%s» línea %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:4071 -#: utils/misc/guc.c:4212 +#: 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 "el parámetro «%s» no se puede cambiar sin reiniciar el servidor" -#: utils/misc/guc.c:506 +#: utils/misc/guc.c:504 #, c-format msgid "parameter \"%s\" removed from configuration file, reset to default" msgstr "parámetro «%s» eliminado del archivo de configuración, volviendo al valor por omisión" -#: utils/misc/guc.c:571 +#: utils/misc/guc.c:569 #, c-format msgid "parameter \"%s\" changed to \"%s\"" msgstr "el parámetro «%s» fue cambiado a «%s»" -#: utils/misc/guc.c:613 +#: utils/misc/guc.c:611 #, c-format msgid "configuration file \"%s\" contains errors" msgstr "el archivo de configuración «%s» contiene errores" -#: utils/misc/guc.c:618 +#: utils/misc/guc.c:616 #, c-format msgid "configuration file \"%s\" contains errors; unaffected changes were applied" msgstr "el archivo de configuración «%s» contiene errores; los cambios no afectados fueron aplicados" -#: utils/misc/guc.c:623 +#: utils/misc/guc.c:621 #, c-format msgid "configuration file \"%s\" contains errors; no changes were applied" msgstr "el archivo de configuración «%s» contiene errores; no se aplicó ningún cambio" -#: 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 "nombre de parámetro de configuración «%s» no válido" -#: 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 "Los nombres de los parámetros personalizados deben ser dos o más identificadores sencillos separados por puntos." -#: utils/misc/guc.c:1157 +#: utils/misc/guc.c:1155 #, c-format msgid "\"%s\" is a reserved prefix." msgstr "«%s» es un prefijo reservado." -#: 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 "parámetro de configuración «%s» no reconocido" -#: utils/misc/guc.c:1802 +#: utils/misc/guc.c:1800 #, c-format msgid "%s: could not access directory \"%s\": %m\n" msgstr "%s: no se pudo acceder al directorio «%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 "Ejecute initdb o pg_basebackup para inicializar un directorio de datos de 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" @@ -28063,12 +29709,12 @@ msgstr "" "%s no sabe dónde encontrar el archivo de configuración del servidor.\n" "Debe especificar la opción --config-file o -D o definir la variable de ambiente 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: no se pudo acceder al archivo de configuración «%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" @@ -28077,7 +29723,7 @@ msgstr "" "%s no sabe dónde encontrar los archivos de sistema de la base de datos.\n" "Esto puede especificarse como «data_directory» en «%s», o usando la opción -D, o a través de la variable de ambiente 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" @@ -28086,7 +29732,7 @@ msgstr "" "%s no sabe dónde encontrar el archivo de configuración «hba».\n" "Esto puede especificarse como «hba_file» en «%s», o usando la opción -D, o a través de la variable de ambiente 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" @@ -28095,122 +29741,122 @@ msgstr "" "%s no sabe dónde encontrar el archivo de configuración «ident».\n" "Esto puede especificarse como «ident_file» en «%s», o usando la opción -D, o a través de la variable de ambiente PGDATA.\n" -#: utils/misc/guc.c:2943 +#: utils/misc/guc.c:2941 msgid "Value exceeds integer range." msgstr "El valor excede el rango para enteros." -#: 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 está fuera del rango aceptable para el parámetro «%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 está fuera del rango aceptable para el parámetro «%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 "no se puede establecer el parámetro «%s» durante una operación paralela" -#: utils/misc/guc.c:3481 utils/misc/guc.c:4696 +#: utils/misc/guc.c:3478 utils/misc/guc.c:4693 #, c-format msgid "parameter \"%s\" cannot be changed" msgstr "no se puede cambiar el parámetro «%s»" -#: utils/misc/guc.c:3514 +#: utils/misc/guc.c:3511 #, c-format msgid "parameter \"%s\" cannot be changed now" msgstr "el parámetro «%s» no se puede cambiar en este momento" -#: utils/misc/guc.c:3541 utils/misc/guc.c:3603 utils/misc/guc.c:4671 -#: utils/misc/guc.c:6756 +#: 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 "se ha denegado el permiso para cambiar la opción «%s»" -#: utils/misc/guc.c:3583 +#: utils/misc/guc.c:3580 #, c-format msgid "parameter \"%s\" cannot be set after connection start" msgstr "el parámetro «%s» no se puede cambiar después de efectuar la conexión" -#: utils/misc/guc.c:3642 +#: utils/misc/guc.c:3639 #, c-format msgid "cannot set parameter \"%s\" within security-definer function" msgstr "no se puede definir el parámetro «%s» dentro una función security-definer" -#: utils/misc/guc.c:3663 +#: utils/misc/guc.c:3660 #, c-format msgid "parameter \"%s\" cannot be reset" msgstr "el parámetro «%s» no puede ser reseteado" -#: utils/misc/guc.c:3670 +#: utils/misc/guc.c:3667 #, c-format msgid "parameter \"%s\" cannot be set locally in functions" msgstr "el parámetro «%s» no se puede cambiar localmente en funciones" -#: utils/misc/guc.c:4370 utils/misc/guc.c:4418 utils/misc/guc.c:5450 +#: utils/misc/guc.c:4367 utils/misc/guc.c:4415 utils/misc/guc.c:5453 #, c-format msgid "permission denied to examine \"%s\"" msgstr "se ha denegado el permiso a examinar «%s»" -#: utils/misc/guc.c:4371 utils/misc/guc.c:4419 utils/misc/guc.c:5451 +#: 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ólo roles con privilegios del rol «%s» pueden examinar este parámetro." -#: utils/misc/guc.c:4629 +#: utils/misc/guc.c:4626 #, c-format msgid "ALTER SYSTEM is not allowed in this environment" msgstr "ALTER SYSTEM no está permitido en este ambiente" -#: utils/misc/guc.c:4661 +#: utils/misc/guc.c:4658 #, c-format msgid "permission denied to perform ALTER SYSTEM RESET ALL" msgstr "permiso denegado a ejecutar ALTER SYSTEM RESET ALL" -#: utils/misc/guc.c:4740 +#: utils/misc/guc.c:4742 #, c-format msgid "parameter value for ALTER SYSTEM must not contain a newline" msgstr "los valores de parámetros para ALTER SYSTEM no deben contener saltos de línea" -#: utils/misc/guc.c:4785 +#: utils/misc/guc.c:4787 #, c-format msgid "could not parse contents of file \"%s\"" msgstr "no se pudo interpretar el contenido del archivo «%s»" -#: utils/misc/guc.c:4967 +#: utils/misc/guc.c:4970 #, c-format msgid "attempt to redefine parameter \"%s\"" msgstr "intento de cambiar la opción «%s»" -#: utils/misc/guc.c:5306 +#: utils/misc/guc.c:5309 #, c-format msgid "invalid configuration parameter name \"%s\", removing it" msgstr "nombre de parámetro de configuración «%s» no válido, eliminándolo" -#: utils/misc/guc.c:5308 +#: utils/misc/guc.c:5311 #, c-format msgid "\"%s\" is now a reserved prefix." msgstr "«%s» es ahora un prefijo reservado." -#: utils/misc/guc.c:6179 +#: utils/misc/guc.c:6182 #, c-format msgid "while setting parameter \"%s\" to \"%s\"" msgstr "al establecer el parámetro «%s» a «%s»" -#: utils/misc/guc.c:6348 +#: utils/misc/guc.c:6351 #, c-format msgid "parameter \"%s\" could not be set" msgstr "no se pudo cambiar el parámetro «%s»" -#: utils/misc/guc.c:6438 +#: utils/misc/guc.c:6441 #, c-format msgid "could not parse setting for parameter \"%s\"" msgstr "no se pudo interpretar el valor de para el parámetro «%s»" -#: utils/misc/guc.c:6888 +#: utils/misc/guc.c:6897 #, c-format msgid "invalid value for parameter \"%s\": %g" msgstr "valor no válido para el parámetro «%s»: %g" @@ -28235,2065 +29881,2365 @@ 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:676 +#: utils/misc/guc_tables.c:692 msgid "Ungrouped" msgstr "Sin Grupo" -#: utils/misc/guc_tables.c:677 +#: utils/misc/guc_tables.c:693 msgid "File Locations" msgstr "Ubicaciones de Archivos" -#: utils/misc/guc_tables.c:678 +#: utils/misc/guc_tables.c:694 msgid "Connections and Authentication / Connection Settings" msgstr "Conexiones y Autentificación / Parámetros de Conexión" -#: utils/misc/guc_tables.c:679 +#: utils/misc/guc_tables.c:695 msgid "Connections and Authentication / TCP Settings" msgstr "Conexiones y Autentificación / Parámetros TCP" -#: utils/misc/guc_tables.c:680 +#: utils/misc/guc_tables.c:696 msgid "Connections and Authentication / Authentication" msgstr "Conexiones y Autentificación / Autentificación" -#: utils/misc/guc_tables.c:681 +#: utils/misc/guc_tables.c:697 msgid "Connections and Authentication / SSL" msgstr "Conexiones y Autentificación / SSL" -#: utils/misc/guc_tables.c:682 +#: utils/misc/guc_tables.c:698 msgid "Resource Usage / Memory" msgstr "Uso de Recursos / Memoria" -#: utils/misc/guc_tables.c:683 +#: utils/misc/guc_tables.c:699 msgid "Resource Usage / Disk" msgstr "Uso de Recursos / Disco" -#: utils/misc/guc_tables.c:684 +#: utils/misc/guc_tables.c:700 msgid "Resource Usage / Kernel Resources" msgstr "Uso de Recursos / Recursos del Kernel" -#: utils/misc/guc_tables.c:685 -msgid "Resource Usage / Cost-Based Vacuum Delay" -msgstr "Uso de Recursos / Retardo de Vacuum por Costos" - -#: utils/misc/guc_tables.c:686 +#: utils/misc/guc_tables.c:701 msgid "Resource Usage / Background Writer" msgstr "Uso de Recursos / Escritor en Segundo Plano" -#: utils/misc/guc_tables.c:687 -msgid "Resource Usage / Asynchronous Behavior" -msgstr "Uso de Recursos / Comportamiento Asíncrono" +#: utils/misc/guc_tables.c:702 +#, fuzzy +#| msgid "Resource Usage / Disk" +msgid "Resource Usage / I/O" +msgstr "Uso de Recursos / Disco" + +#: utils/misc/guc_tables.c:703 +#, fuzzy +#| msgid "Resource Usage / Kernel Resources" +msgid "Resource Usage / Worker Processes" +msgstr "Uso de Recursos / Recursos del Kernel" -#: utils/misc/guc_tables.c:688 +#: utils/misc/guc_tables.c:704 msgid "Write-Ahead Log / Settings" msgstr "Write-Ahead Log / Configuraciones" -#: utils/misc/guc_tables.c:689 +#: utils/misc/guc_tables.c:705 msgid "Write-Ahead Log / Checkpoints" msgstr "Write-Ahead Log / Puntos de Control (Checkpoints)" -#: utils/misc/guc_tables.c:690 +#: utils/misc/guc_tables.c:706 msgid "Write-Ahead Log / Archiving" msgstr "Write-Ahead Log / Archivado" -#: utils/misc/guc_tables.c:691 +#: utils/misc/guc_tables.c:707 msgid "Write-Ahead Log / Recovery" msgstr "Write-Ahead Log / Recuperación" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:708 msgid "Write-Ahead Log / Archive Recovery" msgstr "Write-Ahead Log / Recuperación desde Archivo" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:709 msgid "Write-Ahead Log / Recovery Target" msgstr "Write-Ahead Log / Destino de Recuperación" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:710 msgid "Write-Ahead Log / Summarization" msgstr "Write-Ahead Log / Sumarización" -#: utils/misc/guc_tables.c:695 +#: utils/misc/guc_tables.c:711 msgid "Replication / Sending Servers" msgstr "Replicación / Servidores de Envío" -#: utils/misc/guc_tables.c:696 +#: utils/misc/guc_tables.c:712 msgid "Replication / Primary Server" msgstr "Replicación / Servidor Primario" -#: utils/misc/guc_tables.c:697 +#: utils/misc/guc_tables.c:713 msgid "Replication / Standby Servers" msgstr "Replicación / Servidores Standby" -#: utils/misc/guc_tables.c:698 +#: utils/misc/guc_tables.c:714 msgid "Replication / Subscribers" msgstr "Replicación / Suscriptores" -#: utils/misc/guc_tables.c:699 +#: utils/misc/guc_tables.c:715 msgid "Query Tuning / Planner Method Configuration" msgstr "Afinamiento de Consultas / Configuración de Métodos del Planner" -#: utils/misc/guc_tables.c:700 +#: utils/misc/guc_tables.c:716 msgid "Query Tuning / Planner Cost Constants" msgstr "Afinamiento de Consultas / Constantes de Costo del Planner" -#: utils/misc/guc_tables.c:701 +#: utils/misc/guc_tables.c:717 msgid "Query Tuning / Genetic Query Optimizer" msgstr "Afinamiento de Consultas / Optimizador Genético de Consultas" -#: utils/misc/guc_tables.c:702 +#: utils/misc/guc_tables.c:718 msgid "Query Tuning / Other Planner Options" msgstr "Afinamiento de Consultas / Otras Opciones del Planner" -#: utils/misc/guc_tables.c:703 +#: utils/misc/guc_tables.c:719 msgid "Reporting and Logging / Where to Log" msgstr "Reporte y Registro / Dónde Registrar" -#: utils/misc/guc_tables.c:704 +#: utils/misc/guc_tables.c:720 msgid "Reporting and Logging / When to Log" msgstr "Reporte y Registro / Cuándo Registrar" -#: utils/misc/guc_tables.c:705 +#: utils/misc/guc_tables.c:721 msgid "Reporting and Logging / What to Log" msgstr "Reporte y Registro / Qué Registrar" -#: utils/misc/guc_tables.c:706 +#: utils/misc/guc_tables.c:722 msgid "Reporting and Logging / Process Title" msgstr "Reporte y Registro / Título del Proceso" -#: utils/misc/guc_tables.c:707 +#: utils/misc/guc_tables.c:723 msgid "Statistics / Monitoring" msgstr "Estadísticas / Monitoreo" -#: utils/misc/guc_tables.c:708 +#: utils/misc/guc_tables.c:724 msgid "Statistics / Cumulative Query and Index Statistics" msgstr "Estadísticas / Acumuladores de Consultas e Índices" -#: utils/misc/guc_tables.c:709 -msgid "Autovacuum" -msgstr "Autovacuum" +#: utils/misc/guc_tables.c:725 +msgid "Vacuuming / Automatic Vacuuming" +msgstr "" -#: utils/misc/guc_tables.c:710 +#: utils/misc/guc_tables.c:726 +#, 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 +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 "Valores por Omisión de Conexiones / Comportamiento de Sentencias" -#: utils/misc/guc_tables.c:711 +#: utils/misc/guc_tables.c:730 msgid "Client Connection Defaults / Locale and Formatting" msgstr "Valores por Omisión de Conexiones / Configuraciones Regionales y Formateo" -#: utils/misc/guc_tables.c:712 +#: utils/misc/guc_tables.c:731 msgid "Client Connection Defaults / Shared Library Preloading" msgstr "Valores por Omisión de Conexiones / Precargado de Bibliotecas Compartidas" -#: utils/misc/guc_tables.c:713 +#: utils/misc/guc_tables.c:732 msgid "Client Connection Defaults / Other Defaults" msgstr "Valores por Omisión de Conexiones / Otros Valores" -#: utils/misc/guc_tables.c:714 +#: utils/misc/guc_tables.c:733 msgid "Lock Management" msgstr "Manejo de Bloqueos" -#: utils/misc/guc_tables.c:715 +#: utils/misc/guc_tables.c:734 msgid "Version and Platform Compatibility / Previous PostgreSQL Versions" msgstr "Compatibilidad de Versión y Plataforma / Versiones Anteriores de PostgreSQL" -#: utils/misc/guc_tables.c:716 +#: utils/misc/guc_tables.c:735 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:717 +#: utils/misc/guc_tables.c:736 msgid "Error Handling" msgstr "Gestión de Errores" -#: utils/misc/guc_tables.c:718 +#: utils/misc/guc_tables.c:737 msgid "Preset Options" msgstr "Opciones Predefinidas" -#: utils/misc/guc_tables.c:719 +#: utils/misc/guc_tables.c:738 msgid "Customized Options" msgstr "Opciones Personalizadas" -#: utils/misc/guc_tables.c:720 +#: utils/misc/guc_tables.c:739 msgid "Developer Options" msgstr "Opciones de Desarrollador" -#: utils/misc/guc_tables.c:775 +#: utils/misc/guc_tables.c:794 msgid "Enables the planner's use of sequential-scan plans." msgstr "Permitir el uso de planes de recorrido secuencial." -#: utils/misc/guc_tables.c:785 +#: utils/misc/guc_tables.c:804 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:795 +#: utils/misc/guc_tables.c:814 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:805 +#: utils/misc/guc_tables.c:824 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:815 +#: utils/misc/guc_tables.c:834 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:825 +#: utils/misc/guc_tables.c:844 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:835 +#: utils/misc/guc_tables.c:854 msgid "Enables the planner's use of incremental sort steps." msgstr "Permitir el uso de pasos incrementales de ordenamiento." -#: utils/misc/guc_tables.c:845 +#: utils/misc/guc_tables.c:864 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:855 +#: utils/misc/guc_tables.c:874 msgid "Enables the planner's use of materialization." msgstr "Permitir el uso de materialización de planes." -#: utils/misc/guc_tables.c:865 +#: utils/misc/guc_tables.c:884 msgid "Enables the planner's use of memoization." msgstr "Permitir el uso de memoización de planes." -#: utils/misc/guc_tables.c:875 +#: utils/misc/guc_tables.c:894 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:885 +#: utils/misc/guc_tables.c:904 msgid "Enables the planner's use of merge join plans." msgstr "Permitir el uso de planes «merge join»." -#: utils/misc/guc_tables.c:895 +#: utils/misc/guc_tables.c:914 msgid "Enables the planner's use of hash join plans." msgstr "Permitir el uso de planes «hash join»." -#: utils/misc/guc_tables.c:905 +#: utils/misc/guc_tables.c:924 msgid "Enables the planner's use of gather merge plans." msgstr "Permitir el uso de planes «gather merge»." -#: utils/misc/guc_tables.c:915 +#: utils/misc/guc_tables.c:934 msgid "Enables partitionwise join." msgstr "Permitir el uso de joins por particiones." -#: utils/misc/guc_tables.c:925 +#: utils/misc/guc_tables.c:944 msgid "Enables partitionwise aggregation and grouping." msgstr "Permitir el uso de agregación y agrupamiento por particiones." -#: utils/misc/guc_tables.c:935 +#: utils/misc/guc_tables.c:954 msgid "Enables the planner's use of parallel append plans." msgstr "Permitir el uso de planes «append» paralelos." -#: utils/misc/guc_tables.c:945 +#: utils/misc/guc_tables.c:964 msgid "Enables the planner's use of parallel hash plans." msgstr "Permitir el uso de planes «hash join» paralelos." -#: utils/misc/guc_tables.c:955 +#: utils/misc/guc_tables.c:974 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: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 "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: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 "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: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 "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:982 +#: utils/misc/guc_tables.c:1001 msgid "Enables the planner's use of async append plans." msgstr "Permitir el uso de planes «append» asíncronos." -#: 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 "Activa el reordenamiento de claves GROUP BY." -#: utils/misc/guc_tables.c:1002 +#: utils/misc/guc_tables.c:1031 +#, 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 msgid "Enables genetic query optimization." msgstr "Permitir el uso del optimizador genético de consultas." -#: utils/misc/guc_tables.c:1003 +#: utils/misc/guc_tables.c:1042 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:1017 +#: utils/misc/guc_tables.c:1056 msgid "Shows whether the current user is a superuser." msgstr "Indica si el usuario actual es superusuario." -#: utils/misc/guc_tables.c:1032 +#: utils/misc/guc_tables.c:1071 msgid "Allows running the ALTER SYSTEM command." msgstr "Permite ejecutar la orden 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 "Puede desactivarse en ambientes donde los cambios globales de configuración deban hacerse usando un método diferente." -#: utils/misc/guc_tables.c:1043 +#: utils/misc/guc_tables.c:1082 msgid "Enables advertising the server via Bonjour." msgstr "Permitir la publicación del servidor vía Bonjour." -#: utils/misc/guc_tables.c:1052 +#: utils/misc/guc_tables.c:1091 msgid "Collects transaction commit time." msgstr "Recolectar tiempo de compromiso de transacciones." -#: utils/misc/guc_tables.c:1061 +#: utils/misc/guc_tables.c:1100 msgid "Enables SSL connections." msgstr "Permitir conexiones 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 "Controla si «ssl_passphrase_command» es invocado durante el “reload” del servidor." -#: utils/misc/guc_tables.c:1079 +#: utils/misc/guc_tables.c:1118 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:1088 +#: utils/misc/guc_tables.c:1127 msgid "Forces synchronization of updates to disk." msgstr "Forzar la sincronización de escrituras a disco." -#: 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 "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:1100 +#: utils/misc/guc_tables.c:1139 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: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 "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:1115 +#: utils/misc/guc_tables.c:1154 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: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 "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:1129 +#: utils/misc/guc_tables.c:1168 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: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 "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:1148 +#: utils/misc/guc_tables.c:1187 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: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 "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: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 "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:1172 +#: utils/misc/guc_tables.c:1211 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:1182 +#: utils/misc/guc_tables.c:1221 msgid "Recycles WAL files by renaming them." msgstr "Reciclar archivos de WAL cambiándoles de nombre." -#: utils/misc/guc_tables.c:1192 +#: utils/misc/guc_tables.c:1231 msgid "Logs each checkpoint." msgstr "Registrar cada checkpoint." -#: utils/misc/guc_tables.c:1201 -msgid "Logs each successful connection." -msgstr "Registrar cada conexión exitosa." - -#: utils/misc/guc_tables.c:1210 +#: utils/misc/guc_tables.c:1240 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:1220 +#: utils/misc/guc_tables.c:1250 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:1229 +#: utils/misc/guc_tables.c:1259 msgid "Logs each replication command." msgstr "Registrar cada orden de replicación." -#: utils/misc/guc_tables.c:1238 +#: utils/misc/guc_tables.c:1268 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:1249 +#: utils/misc/guc_tables.c:1279 msgid "Terminate session on any error." msgstr "Terminar sesión ante cualquier error." -#: utils/misc/guc_tables.c:1258 +#: utils/misc/guc_tables.c:1288 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:1267 +#: utils/misc/guc_tables.c:1297 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:1277 +#: utils/misc/guc_tables.c:1307 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:1287 +#: utils/misc/guc_tables.c:1317 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:1298 +#: utils/misc/guc_tables.c:1328 msgid "Logs the duration of each completed SQL statement." msgstr "Registrar la duración de cada sentencia SQL ejecutada." -#: 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 "" + +#: 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 "" + +#: 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 "" + +#: utils/misc/guc_tables.c:1390 msgid "Logs each query's parse tree." msgstr "Registrar cada arbol analizado de consulta " -#: utils/misc/guc_tables.c:1316 +#: utils/misc/guc_tables.c:1399 msgid "Logs each query's rewritten parse tree." msgstr "Registrar cada reescritura del arból analizado de consulta" -#: utils/misc/guc_tables.c:1325 +#: utils/misc/guc_tables.c:1408 msgid "Logs each query's execution plan." msgstr "Registrar el plan de ejecución de cada consulta." -#: utils/misc/guc_tables.c:1334 +#: utils/misc/guc_tables.c:1417 msgid "Indents parse and plan tree displays." msgstr "Indentar los árboles de parse y plan." -#: utils/misc/guc_tables.c:1343 +#: utils/misc/guc_tables.c:1426 msgid "Writes parser performance statistics to the server log." msgstr "Escribir estadísticas de parser al registro del servidor." -#: utils/misc/guc_tables.c:1352 +#: utils/misc/guc_tables.c:1435 msgid "Writes planner performance statistics to the server log." msgstr "Escribir estadísticas de planner al registro del servidor." -#: utils/misc/guc_tables.c:1361 +#: utils/misc/guc_tables.c:1444 msgid "Writes executor performance statistics to the server log." msgstr "Escribir estadísticas del executor al registro del servidor." -#: utils/misc/guc_tables.c:1370 +#: utils/misc/guc_tables.c:1453 msgid "Writes cumulative performance statistics to the server log." msgstr "Escribir estadísticas acumulativas al registro del servidor." -#: 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 "Registrar uso de recursos de sistema (memoria y CPU) en varias operaciones B-tree." -#: utils/misc/guc_tables.c:1392 +#: utils/misc/guc_tables.c:1475 msgid "Collects information about executing commands." msgstr "Recolectar estadísticas sobre órdenes en ejecución." -#: 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 "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:1403 +#: utils/misc/guc_tables.c:1486 msgid "Collects statistics on database activity." msgstr "Recolectar estadísticas de actividad de la base de datos." -#: utils/misc/guc_tables.c:1412 +#: utils/misc/guc_tables.c:1495 +#, 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 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:1421 +#: utils/misc/guc_tables.c:1513 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:1431 +#: utils/misc/guc_tables.c:1523 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: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 "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:1441 +#: utils/misc/guc_tables.c:1533 msgid "Starts the autovacuum subprocess." msgstr "Iniciar el subproceso de autovacuum." -#: utils/misc/guc_tables.c:1451 +#: utils/misc/guc_tables.c:1543 msgid "Generates debugging output for LISTEN and NOTIFY." msgstr "Generar salida de depuración para LISTEN y NOTIFY." -#: utils/misc/guc_tables.c:1463 +#: utils/misc/guc_tables.c:1555 msgid "Emits information about lock usage." msgstr "Emitir información acerca del uso de locks." -#: utils/misc/guc_tables.c:1473 +#: utils/misc/guc_tables.c:1565 msgid "Emits information about user lock usage." msgstr "Emitir información acerca del uso de locks de usuario." -#: utils/misc/guc_tables.c:1483 +#: utils/misc/guc_tables.c:1575 msgid "Emits information about lightweight lock usage." msgstr "Emitir información acerca del uso de «lightweight locks»." -#: 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 "Volcar información acerca de los locks existentes cuando se agota el tiempo de deadlock." -#: utils/misc/guc_tables.c:1505 +#: utils/misc/guc_tables.c:1597 msgid "Logs long lock waits." msgstr "Registrar esperas largas de bloqueos." -#: utils/misc/guc_tables.c:1514 +#: utils/misc/guc_tables.c:1606 +#, fuzzy +#| msgid "Logs long lock waits." +msgid "Logs lock failures." +msgstr "Registrar esperas largas de bloqueos." + +#: utils/misc/guc_tables.c:1615 msgid "Logs standby recovery conflict waits." msgstr "Registrar esperas por conflictos en recuperación de standby" -#: utils/misc/guc_tables.c:1523 +#: utils/misc/guc_tables.c:1624 msgid "Logs the host name in the connection logs." msgstr "Registrar el nombre del host en la conexión." -#: 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 "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:1535 +#: utils/misc/guc_tables.c:1636 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "Tratar expr=NULL como 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 "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:1548 +#: utils/misc/guc_tables.c:1649 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:1558 +#: utils/misc/guc_tables.c:1659 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:1568 +#: utils/misc/guc_tables.c:1669 msgid "Sets the default deferrable status of new transactions." msgstr "Estado por omisión de postergable de nuevas transacciones." -#: 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 "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:1587 -msgid "Enable row security." +#: utils/misc/guc_tables.c:1688 +#, fuzzy +#| msgid "Enable row security." +msgid "Enables row security." msgstr "Activar seguridad de registros." -#: utils/misc/guc_tables.c:1588 +#: utils/misc/guc_tables.c:1689 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:1596 +#: utils/misc/guc_tables.c:1697 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:1605 -msgid "Enable input of NULL elements in arrays." +#: utils/misc/guc_tables.c:1706 +#, 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: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 "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:1622 +#: utils/misc/guc_tables.c:1723 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:1632 -#| msgid "Start a subprocess to capture stderr output and/or csvlogs into log files." +#: utils/misc/guc_tables.c:1733 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:1641 +#: utils/misc/guc_tables.c:1742 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:1652 +#: utils/misc/guc_tables.c:1752 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:1666 +#: utils/misc/guc_tables.c:1765 msgid "Generate debugging output for synchronized scanning." msgstr "Generar salida de depuración para recorrido sincronizado." -#: utils/misc/guc_tables.c:1681 -msgid "Enable bounded sorting using heap sort." +#: utils/misc/guc_tables.c:1780 +#, 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:1694 +#: utils/misc/guc_tables.c:1793 msgid "Emit WAL-related debugging output." msgstr "Activar salida de depuración de WAL." -#: utils/misc/guc_tables.c:1706 +#: utils/misc/guc_tables.c:1805 msgid "Shows whether datetimes are integer based." msgstr "Mostrar si las fechas y horas se basan en tipos enteros." -#: 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 "Define que los nombres de usuario Kerberos y GSSAPI deberían ser tratados sin distinción de mayúsculas." -#: utils/misc/guc_tables.c:1727 +#: utils/misc/guc_tables.c:1826 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:1737 +#: utils/misc/guc_tables.c:1836 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:1747 +#: utils/misc/guc_tables.c:1846 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:1758 -msgid "Enable synchronized sequential scans." +#: utils/misc/guc_tables.c:1857 +#, fuzzy +#| msgid "Enable synchronized sequential scans." +msgid "Enables synchronized sequential scans." msgstr "Permitir la sincronización de recorridos secuenciales." -#: utils/misc/guc_tables.c:1768 +#: utils/misc/guc_tables.c:1867 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:1778 +#: utils/misc/guc_tables.c:1877 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:1788 +#: utils/misc/guc_tables.c:1887 msgid "Allows connections and queries during recovery." msgstr "Permite conexiones y consultas durante la recuperación." -#: 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 "Permite retroalimentación desde un hot standby hacia el primario que evitará conflictos en consultas." -#: utils/misc/guc_tables.c:1808 +#: utils/misc/guc_tables.c:1907 msgid "Shows whether hot standby is currently active." msgstr "Muestra si hot standby está activo actualmente." -#: utils/misc/guc_tables.c:1819 +#: utils/misc/guc_tables.c:1918 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:1830 +#: utils/misc/guc_tables.c:1929 msgid "Disables reading from system indexes." msgstr "Deshabilita lectura de índices del sistema." -#: 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 "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:1842 +#: utils/misc/guc_tables.c:1941 msgid "Allows tablespaces directly inside pg_tblspc, for testing." msgstr "Permite tablespaces directamente dentro de pg_tblspc, para pruebas." -#: utils/misc/guc_tables.c:1853 +#: utils/misc/guc_tables.c:1952 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: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 "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:1864 +#: utils/misc/guc_tables.c:1963 msgid "When generating SQL fragments, quote all identifiers." msgstr "Al generar fragmentos SQL, entrecomillar todos los identificadores." -#: utils/misc/guc_tables.c:1874 +#: utils/misc/guc_tables.c:1973 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:1885 +#: utils/misc/guc_tables.c:1984 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:1895 +#: utils/misc/guc_tables.c:1994 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:1905 +#: utils/misc/guc_tables.c:2004 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:1906 +#: utils/misc/guc_tables.c:2005 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:1916 +#: utils/misc/guc_tables.c:2015 msgid "Allow JIT compilation." msgstr "Permitir compilación JIT." -#: utils/misc/guc_tables.c:1927 +#: utils/misc/guc_tables.c:2026 msgid "Register JIT-compiled functions with debugger." msgstr "Registrar las funciones JIT compiladas con el depurador." -#: utils/misc/guc_tables.c:1944 +#: utils/misc/guc_tables.c:2043 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:1955 +#: utils/misc/guc_tables.c:2054 msgid "Allow JIT compilation of expressions." msgstr "Permitir compilación JIT de expresiones." -#: utils/misc/guc_tables.c:1966 +#: utils/misc/guc_tables.c:2065 msgid "Register JIT-compiled functions with perf profiler." msgstr "Registrar las funciones JIT compiladas con el analizador «perf»." -#: utils/misc/guc_tables.c:1983 +#: utils/misc/guc_tables.c:2082 msgid "Allow JIT compilation of tuple deforming." msgstr "Permitir compilación JIT de deformación de tuplas." -#: 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 "Si continuar ejecutando después de una falla al sincronizar archivos de datos." -#: 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 "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:2012 +#: utils/misc/guc_tables.c:2111 msgid "Enables event triggers." msgstr "Activa “triggers” por evento." -#: utils/misc/guc_tables.c:2013 +#: utils/misc/guc_tables.c:2112 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:2022 +#: utils/misc/guc_tables.c:2121 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:2040 +#: utils/misc/guc_tables.c:2130 +msgid "Enables deprecation warnings for MD5 passwords." +msgstr "" + +#: utils/misc/guc_tables.c:2139 +#, 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 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: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 +#, fuzzy +#| msgid "-1 disables optimization." +msgid "0 disables the timeout." +msgstr "-1 inhabilita la optimización." + +#: utils/misc/guc_tables.c:2168 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: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 "Esto permite adjuntar un depurador al proceso." -#: utils/misc/guc_tables.c:2062 +#: utils/misc/guc_tables.c:2179 msgid "Sets the default statistics target." msgstr "Definir el valor por omisión de toma de estadísticas." -#: 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 "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:2072 +#: utils/misc/guc_tables.c:2189 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: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 "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:2085 +#: utils/misc/guc_tables.c:2202 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: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 "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:2098 +#: utils/misc/guc_tables.c:2215 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:2108 +#: utils/misc/guc_tables.c:2225 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:2118 +#: utils/misc/guc_tables.c:2235 msgid "GEQO: number of individuals in the population." msgstr "GEQO: número de individuos en una población." -#: utils/misc/guc_tables.c:2119 utils/misc/guc_tables.c:2129 -msgid "Zero selects a suitable default value." +#: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 +#, 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:2128 +#: utils/misc/guc_tables.c:2245 msgid "GEQO: number of iterations of the algorithm." msgstr "GEQO: número de iteraciones del algoritmo." -#: 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 "Define el tiempo a esperar un lock antes de buscar un deadlock." -#: 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 "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:2162 +#: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 +#, fuzzy +#| msgid "-1 means no limit." +msgid "-1 means wait forever." +msgstr "-1 significa sin límite." + +#: 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 "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:2173 +#: utils/misc/guc_tables.c:2290 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:2184 +#: utils/misc/guc_tables.c:2301 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:2195 +#: utils/misc/guc_tables.c:2312 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:2206 +#: utils/misc/guc_tables.c:2323 msgid "Sets the maximum number of concurrent connections." msgstr "Número máximo de conexiones concurrentes." -#: utils/misc/guc_tables.c:2217 +#: utils/misc/guc_tables.c:2334 msgid "Sets the number of connection slots reserved for superusers." msgstr "Número de conexiones reservadas para superusuarios." -#: 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 "Número de conexiones reservadas para con privilegios de 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 "Cantidad de memoria compartida dinámica reservada al iniciar." -#: 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 "Número de búfers de memoria compartida usados por el servidor." -#: utils/misc/guc_tables.c:2264 +#: utils/misc/guc_tables.c:2381 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: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 "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:2286 +#: utils/misc/guc_tables.c:2403 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:2287 -msgid "-1 indicates that the value could not be determined." -msgstr "-1 indica que el valor no pudo ser determinado." +#: utils/misc/guc_tables.c:2404 +#, 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 +#, 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:2297 +#: utils/misc/guc_tables.c:2425 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: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." +#: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 +#: utils/misc/guc_tables.c:2492 +#, 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:2308 +#: utils/misc/guc_tables.c:2436 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:2319 +#: utils/misc/guc_tables.c:2447 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:2330 +#: utils/misc/guc_tables.c:2458 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:2341 +#: utils/misc/guc_tables.c:2469 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:2352 +#: utils/misc/guc_tables.c:2480 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:2363 +#: utils/misc/guc_tables.c:2491 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:2374 +#: utils/misc/guc_tables.c:2502 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:2385 +#: utils/misc/guc_tables.c:2513 msgid "Sets the TCP port the server listens on." msgstr "Puerto TCP en el cual escuchará el servidor." -#: utils/misc/guc_tables.c:2395 +#: utils/misc/guc_tables.c:2523 msgid "Sets the access permissions of the Unix-domain socket." msgstr "Privilegios de acceso al socket 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 "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:2410 +#: utils/misc/guc_tables.c:2538 msgid "Sets the file permissions for log files." msgstr "Define los privilegios para los archivos del registro del servidor." -#: 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 "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:2425 +#: utils/misc/guc_tables.c:2553 msgid "Shows the mode of the data directory." msgstr "Muestra el modo del directorio de datos." -#: 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 "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:2439 +#: utils/misc/guc_tables.c:2567 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: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 "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:2457 +#: utils/misc/guc_tables.c:2585 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:2458 +#: utils/misc/guc_tables.c:2586 msgid "This includes operations such as VACUUM and CREATE INDEX." msgstr "Esto incluye operaciones como VACUUM y 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 "Establece el límite de memoria que se usará para decodificación lógica." -#: 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 "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:2485 +#: utils/misc/guc_tables.c:2613 msgid "Sets the maximum stack depth, in kilobytes." msgstr "Establece el tamaño máximo del stack, en kilobytes." -#: 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 "Limita el tamaño total de todos los archivos temporales usados en cada proceso." -#: utils/misc/guc_tables.c:2497 +#: utils/misc/guc_tables.c:2625 msgid "-1 means no limit." msgstr "-1 significa sin límite." -#: utils/misc/guc_tables.c:2507 +#: utils/misc/guc_tables.c:2635 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:2517 +#: utils/misc/guc_tables.c:2645 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:2527 +#: utils/misc/guc_tables.c:2655 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:2537 +#: utils/misc/guc_tables.c:2665 msgid "Vacuum cost amount available before napping." msgstr "Costo de Vacuum disponible antes de descansar." -#: utils/misc/guc_tables.c:2547 +#: utils/misc/guc_tables.c:2675 msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "Costo de Vacuum disponible antes de descansar, para autovacuum." -#: utils/misc/guc_tables.c:2557 -msgid "Sets the maximum number of simultaneously open files for each server process." +#: utils/misc/guc_tables.c:2676 +#, 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 +#, 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:2570 +#: utils/misc/guc_tables.c:2698 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:2581 +#: utils/misc/guc_tables.c:2709 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:2582 +#: utils/misc/guc_tables.c:2710 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:2591 +#: utils/misc/guc_tables.c:2719 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:2603 +#: utils/misc/guc_tables.c:2731 msgid "Sets the maximum allowed duration of any statement." msgstr "Define la duración máxima permitida de sentencias." -#: 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 "Un valor de 0 desactiva el máximo." - -#: 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 "Define la duración máxima permitida de cualquier espera por un lock." -#: 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 "Define el tiempo máximo permitido de inactividad entre consultas, cuando están dentro de una transacción." -#: 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 "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:2647 +#: utils/misc/guc_tables.c:2775 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:2658 +#: utils/misc/guc_tables.c:2786 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:2668 +#: utils/misc/guc_tables.c:2796 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:2678 +#: utils/misc/guc_tables.c:2806 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:2688 +#: utils/misc/guc_tables.c:2816 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:2698 +#: utils/misc/guc_tables.c:2826 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:2707 +#: utils/misc/guc_tables.c:2835 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:2720 +#: utils/misc/guc_tables.c:2848 msgid "Sets the maximum number of locks per transaction." msgstr "Cantidad máxima de “locks” por transacción." -#: 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 "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:2732 +#: utils/misc/guc_tables.c:2860 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: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 "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:2744 +#: utils/misc/guc_tables.c:2872 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: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 "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:2755 +#: utils/misc/guc_tables.c:2883 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: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 "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:2766 +#: utils/misc/guc_tables.c:2894 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:2778 +#: utils/misc/guc_tables.c:2906 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:2790 +#: utils/misc/guc_tables.c:2918 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:2800 +#: utils/misc/guc_tables.c:2928 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:2801 +#: utils/misc/guc_tables.c:2929 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:2811 +#: utils/misc/guc_tables.c:2939 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:2822 +#: utils/misc/guc_tables.c:2950 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:2834 +#: utils/misc/guc_tables.c:2962 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:2846 +#: utils/misc/guc_tables.c:2974 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:2857 +#: utils/misc/guc_tables.c:2985 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: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." +#: utils/misc/guc_tables.c:2987 +#, 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: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 "Número de páginas después del cual las escrituras previamente ejecutadas se sincronizan a disco." -#: 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 "" + +#: utils/misc/guc_tables.c:3011 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:2884 -msgid "Specify -1 to have this value determined as a fraction of shared_buffers." +#: utils/misc/guc_tables.c:3012 +#, 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:2894 +#: utils/misc/guc_tables.c:3022 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:2905 +#: utils/misc/guc_tables.c:3033 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:2916 +#: utils/misc/guc_tables.c:3044 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:2927 +#: utils/misc/guc_tables.c:3055 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:2938 +#: utils/misc/guc_tables.c:3066 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:2948 +#: utils/misc/guc_tables.c:3076 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: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." +#: utils/misc/guc_tables.c:3077 +#, 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:2961 +#: utils/misc/guc_tables.c:3089 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:2972 +#: utils/misc/guc_tables.c:3100 +#, 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 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:2984 +#: utils/misc/guc_tables.c:3124 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:2995 +#: utils/misc/guc_tables.c:3135 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: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 "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:3008 -msgid "Sets the minimum execution time above which a sample of statements will be logged. Sampling is determined by log_statement_sample_rate." +#: utils/misc/guc_tables.c:3148 +#, 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:3011 -msgid "Zero logs a sample of all queries. -1 turns this feature off." -msgstr "Cero registra una muestra de todas las consultas. -1 desactiva esta funcionalidad." +#: utils/misc/guc_tables.c:3151 +msgid "-1 disables sampling. 0 means sample all statements." +msgstr "" -#: 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 "Establece el tiempo mínimo de ejecución a partir del cual se registran todas las sentencias." -#: utils/misc/guc_tables.c:3023 -msgid "Zero prints all queries. -1 turns this feature off." -msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad." +#: utils/misc/guc_tables.c:3163 +msgid "-1 disables logging statement durations. 0 means log all statement durations." +msgstr "" -#: 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 "Tiempo mínimo de ejecución a partir del cual se registran las acciones de autovacuum." -#: utils/misc/guc_tables.c:3035 -msgid "Zero prints all actions. -1 turns autovacuum logging off." -msgstr "Cero registra todas las acciones. -1 desactiva el registro de autovacuum." +#: utils/misc/guc_tables.c:3175 +msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." +msgstr "" -#: 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 "Define el largo máximo en bytes de valores de parámetros «bind» enviados al log al registrar sentencias." -#: utils/misc/guc_tables.c:3047 utils/misc/guc_tables.c:3059 -msgid "-1 to print values in full." +#: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 +#, 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: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 "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:3069 +#: utils/misc/guc_tables.c:3209 msgid "Background writer sleep time between rounds." msgstr "Tiempo de descanso entre rondas del background writer" -#: 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 "Número máximo de páginas LRU a escribir en cada ronda del background writer" -#: utils/misc/guc_tables.c:3103 +#: utils/misc/guc_tables.c:3221 +#, fuzzy +#| msgid "-1 disables inlining." +msgid "0 disables background writing." +msgstr "-1 inhabilita el «inlining»." + +#: utils/misc/guc_tables.c:3243 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:3117 +#: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 +msgid "0 disables simultaneous requests." +msgstr "" + +#: utils/misc/guc_tables.c:3257 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:3132 +#: utils/misc/guc_tables.c:3272 +msgid "Server-wide limit that clamps io_combine_limit." +msgstr "" + +#: utils/misc/guc_tables.c:3286 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:3157 +#: utils/misc/guc_tables.c:3300 +msgid "Max number of IOs that one process can execute simultaneously." +msgstr "" + +#: utils/misc/guc_tables.c:3312 +msgid "Number of IO worker processes, for io_method=worker." +msgstr "" + +#: utils/misc/guc_tables.c:3335 msgid "Maximum number of concurrent worker processes." msgstr "Número máximo de procesos ayudantes concurrentes." -#: utils/misc/guc_tables.c:3169 +#: utils/misc/guc_tables.c:3347 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:3181 +#: utils/misc/guc_tables.c:3359 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:3193 +#: utils/misc/guc_tables.c:3371 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:3203 +#: utils/misc/guc_tables.c:3383 +#, 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 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:3215 +#: utils/misc/guc_tables.c:3395 +msgid "0 disables time-based creation of new log files." +msgstr "" + +#: utils/misc/guc_tables.c:3405 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:3227 +#: utils/misc/guc_tables.c:3407 +msgid "0 disables size-based creation of new log files." +msgstr "" + +#: utils/misc/guc_tables.c:3417 msgid "Shows the maximum number of function arguments." msgstr "Muestra la cantidad máxima de argumentos de funciones." -#: utils/misc/guc_tables.c:3238 +#: utils/misc/guc_tables.c:3428 msgid "Shows the maximum number of index keys." msgstr "Muestra la cantidad máxima de claves de índices." -#: utils/misc/guc_tables.c:3249 +#: utils/misc/guc_tables.c:3439 msgid "Shows the maximum identifier length." msgstr "Muestra el largo máximo de identificadores." -#: utils/misc/guc_tables.c:3260 +#: utils/misc/guc_tables.c:3450 msgid "Shows the size of a disk block." msgstr "Muestra el tamaño de un bloque de disco." -#: utils/misc/guc_tables.c:3271 +#: utils/misc/guc_tables.c:3461 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:3282 +#: utils/misc/guc_tables.c:3472 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:3293 +#: utils/misc/guc_tables.c:3483 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:3305 +#: utils/misc/guc_tables.c:3495 msgid "Shows the size of write ahead log segments." msgstr "Muestra el tamaño de los segmentos de WAL." -#: utils/misc/guc_tables.c:3318 +#: utils/misc/guc_tables.c:3508 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:3331 +#: utils/misc/guc_tables.c:3509 +msgid "0 disables automatic summary file deletion." +msgstr "" + +#: utils/misc/guc_tables.c:3521 msgid "Time to sleep between autovacuum runs." msgstr "Tiempo de descanso entre ejecuciones de autovacuum." -#: utils/misc/guc_tables.c:3341 +#: utils/misc/guc_tables.c:3531 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:3350 -msgid "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums." -msgstr "Número mínimo de inserciones de tuplas antes de ejecutar vacuum, o -1 para desactivar vacuums por inserciones." +#: utils/misc/guc_tables.c:3540 +#, 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:3359 +#: utils/misc/guc_tables.c:3541 +#, fuzzy +#| msgid "-1 disables optimization." +msgid "-1 disables the maximum threshold." +msgstr "-1 inhabilita la optimización." + +#: utils/misc/guc_tables.c:3549 +#, 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 +#, fuzzy +#| msgid "-1 disables inlining." +msgid "-1 disables insert vacuums." +msgstr "-1 inhabilita el «inlining»." + +#: utils/misc/guc_tables.c:3558 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:3369 +#: utils/misc/guc_tables.c:3568 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:3381 +#: utils/misc/guc_tables.c:3580 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:3391 +#: utils/misc/guc_tables.c:3590 +#, 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 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:3401 +#: utils/misc/guc_tables.c:3609 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:3411 +#: utils/misc/guc_tables.c:3619 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:3422 +#: utils/misc/guc_tables.c:3630 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:3433 +#: utils/misc/guc_tables.c:3641 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:3444 +#: utils/misc/guc_tables.c:3642 +#, fuzzy +#| msgid "Reduce \"maintenance_work_mem\"." +msgid "-1 means use \"maintenance_work_mem\"." +msgstr "Reduzca «maintenance_work_mem»." + +#: utils/misc/guc_tables.c:3652 msgid "Time between issuing TCP keepalives." msgstr "Tiempo entre cada emisión de TCP keepalive." -#: 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." +#: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 +#: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 +#, 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:3455 +#: utils/misc/guc_tables.c:3663 msgid "Time between TCP keepalive retransmits." msgstr "Tiempo entre retransmisiones 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 "La renegociación SSL ya no está soportada; esto sólo puede ser 0." -#: utils/misc/guc_tables.c:3477 +#: utils/misc/guc_tables.c:3685 msgid "Maximum number of TCP keepalive retransmits." msgstr "Cantidad máxima de retransmisiones 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." +#: utils/misc/guc_tables.c:3686 +#, 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:3489 +#: utils/misc/guc_tables.c:3697 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:3500 +#: utils/misc/guc_tables.c:3698 +#, fuzzy +#| msgid "-1 means no limit." +msgid "0 means no limit." +msgstr "-1 significa sin límite." + +#: utils/misc/guc_tables.c:3707 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: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 "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:3512 +#: utils/misc/guc_tables.c:3719 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: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 "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:3523 +#: utils/misc/guc_tables.c:3730 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: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 "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:3535 +#: utils/misc/guc_tables.c:3742 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:3546 +#: utils/misc/guc_tables.c:3753 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:3547 -msgid "Zero logs all files. The default is -1 (turning this feature off)." -msgstr "Cero registra todos los archivos. El valor por omisión es -1 (lo cual desactiva el registro)." +#: utils/misc/guc_tables.c:3754 +#, 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:3557 +#: utils/misc/guc_tables.c:3764 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:3568 +#: utils/misc/guc_tables.c:3775 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:3579 +#: utils/misc/guc_tables.c:3786 msgid "TCP user timeout." msgstr "Tiempo de expiración de TCP." -#: utils/misc/guc_tables.c:3590 +#: utils/misc/guc_tables.c:3797 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:3601 +#: utils/misc/guc_tables.c:3808 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:3624 +#: utils/misc/guc_tables.c:3809 +msgid "0 means use normal caching behavior." +msgstr "" + +#: utils/misc/guc_tables.c:3831 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:3635 +#: utils/misc/guc_tables.c:3832 +#, fuzzy +#| msgid "Enables SSL connections." +msgid "0 disables connection checks." +msgstr "Permitir conexiones SSL." + +#: utils/misc/guc_tables.c:3842 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:3637 -msgid "0 turns this feature off." -msgstr "Cero desactiva esta característica." +#: utils/misc/guc_tables.c:3844 +msgid "0 disables progress updates." +msgstr "" -#: utils/misc/guc_tables.c:3647 +#: utils/misc/guc_tables.c:3854 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:3667 +#: utils/misc/guc_tables.c:3874 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:3678 +#: utils/misc/guc_tables.c:3885 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:3689 +#: utils/misc/guc_tables.c:3896 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: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 "Estimación del costo de procesar cada fila de índice durante un recorrido de índice." -#: 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 "Estimación del costo de procesar cada operador o llamada a función." -#: 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 "Estimación del costo de pasar cada tupla (fila) desde un proceso ayudante al proceso servidor principal." -#: 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 "Estimación del costo de lanzar procesos ayudantes para consultas en paralelo." -#: utils/misc/guc_tables.c:3745 +#: utils/misc/guc_tables.c:3952 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:3746 +#: utils/misc/guc_tables.c:3953 msgid "-1 disables JIT compilation." msgstr "-1 inhabilita compilación JIT." -#: utils/misc/guc_tables.c:3756 +#: utils/misc/guc_tables.c:3963 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:3757 +#: utils/misc/guc_tables.c:3964 msgid "-1 disables optimization." msgstr "-1 inhabilita la optimización." -#: utils/misc/guc_tables.c:3767 +#: utils/misc/guc_tables.c:3974 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:3768 +#: utils/misc/guc_tables.c:3975 msgid "-1 disables inlining." msgstr "-1 inhabilita el «inlining»." -#: 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 "Estimación de la fracción de filas de un cursor que serán extraídas." -#: 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 "Estimación del tamaño promedio de la tabla de trabajo de una consulta recursiva." -#: utils/misc/guc_tables.c:3802 +#: utils/misc/guc_tables.c:4009 msgid "GEQO: selective pressure within the population." msgstr "GEQO: presión selectiva dentro de la población." -#: utils/misc/guc_tables.c:3813 +#: utils/misc/guc_tables.c:4020 msgid "GEQO: seed for random path selection." msgstr "GEQO: semilla para la selección aleatoria de caminos." -#: utils/misc/guc_tables.c:3824 +#: utils/misc/guc_tables.c:4031 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:3835 +#: utils/misc/guc_tables.c:4042 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:3845 +#: utils/misc/guc_tables.c:4052 msgid "Sets the seed for random-number generation." msgstr "Semilla para la generación de números aleatorios." -#: utils/misc/guc_tables.c:3856 +#: utils/misc/guc_tables.c:4063 msgid "Vacuum cost delay in milliseconds." msgstr "Tiempo de descanso de vacuum en milisegundos." -#: utils/misc/guc_tables.c:3867 +#: utils/misc/guc_tables.c:4074 msgid "Vacuum cost delay in milliseconds, for autovacuum." msgstr "Tiempo de descanso de vacuum en milisegundos, para autovacuum." -#: utils/misc/guc_tables.c:3878 +#: utils/misc/guc_tables.c:4075 +msgid "-1 means use \"vacuum_cost_delay\"." +msgstr "" + +#: utils/misc/guc_tables.c:4085 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:3888 +#: utils/misc/guc_tables.c:4095 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:3898 +#: utils/misc/guc_tables.c:4105 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:3908 +#: utils/misc/guc_tables.c:4115 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:3918 +#: utils/misc/guc_tables.c:4125 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:3919 +#: utils/misc/guc_tables.c:4126 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:3928 +#: utils/misc/guc_tables.c:4135 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: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 "Use un valor entre 0.0 (nunca registrar) y 1.0 (registrar todas las sentencias de todas las transacciones)." -#: 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 "" + +#: 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 "" + +#: utils/misc/guc_tables.c:4165 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:3949 -msgid "This is used only if \"archive_library\" is not set." -msgstr "Esto sólo se utiliza si «archive_library» no está definido." +#: utils/misc/guc_tables.c:4166 +msgid "An empty string means use \"archive_library\"." +msgstr "" -#: 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 "Biblioteca que se invocará para archivar un archivo WAL." -#: utils/misc/guc_tables.c:3959 -msgid "An empty string indicates that \"archive_command\" should be used." +#: utils/misc/guc_tables.c:4176 +#, 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:3968 +#: utils/misc/guc_tables.c:4185 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:3978 +#: utils/misc/guc_tables.c:4195 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:3988 +#: utils/misc/guc_tables.c:4205 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:3998 +#: utils/misc/guc_tables.c:4215 msgid "Specifies the timeline to recover into." msgstr "Especifica la línea de tiempo a la cual recuperar." -#: 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 "Defina a «immediate» para terminar la recuperación en cuando se alcance el estado consistente." -#: utils/misc/guc_tables.c:4017 +#: utils/misc/guc_tables.c:4234 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:4026 +#: utils/misc/guc_tables.c:4243 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:4035 +#: utils/misc/guc_tables.c:4252 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:4044 +#: utils/misc/guc_tables.c:4261 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:4054 +#: utils/misc/guc_tables.c:4271 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:4065 +#: utils/misc/guc_tables.c:4282 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:4075 +#: utils/misc/guc_tables.c:4292 msgid "Sets the client's character set encoding." msgstr "Codificación del juego de caracteres del cliente." -#: utils/misc/guc_tables.c:4086 +#: utils/misc/guc_tables.c:4303 msgid "Controls information prefixed to each log line." msgstr "Controla el prefijo que antecede cada línea registrada." -#: utils/misc/guc_tables.c:4087 -msgid "If blank, no prefix is used." -msgstr "si está en blanco, no se usa prefijo." +#: 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 "Define el huso horario usando en los mensajes registrados." -#: utils/misc/guc_tables.c:4106 +#: utils/misc/guc_tables.c:4323 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:4107 +#: utils/misc/guc_tables.c:4324 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:4118 +#: utils/misc/guc_tables.c:4335 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:4129 +#: utils/misc/guc_tables.c:4346 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:4130 -msgid "An empty string selects the database's default tablespace." +#: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 +#, 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:4140 +#: utils/misc/guc_tables.c:4357 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:4151 +#: utils/misc/guc_tables.c:4368 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: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 "Ruta para módulos dinámicos." -#: 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 "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:4177 +#: utils/misc/guc_tables.c:4394 +#, 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 +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 "Ubicación del archivo de llave del servidor Kerberos." -#: utils/misc/guc_tables.c:4188 +#: utils/misc/guc_tables.c:4417 msgid "Sets the Bonjour service name." msgstr "Nombre del servicio 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 "Idioma en el que se despliegan los mensajes." -#: 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 "Configuración regional para formatos de moneda." -#: utils/misc/guc_tables.c:4218 +#: utils/misc/guc_tables.c:4447 msgid "Sets the locale for formatting numbers." msgstr "Configuración regional para formatos de números." -#: utils/misc/guc_tables.c:4228 +#: utils/misc/guc_tables.c:4457 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:4238 +#: utils/misc/guc_tables.c:4467 msgid "Lists shared libraries to preload into each backend." msgstr "Bibliotecas compartidas a precargar en cada proceso." -#: utils/misc/guc_tables.c:4249 +#: utils/misc/guc_tables.c:4478 msgid "Lists shared libraries to preload into server." msgstr "Bibliotecas compartidas a precargar en el servidor." -#: utils/misc/guc_tables.c:4260 +#: utils/misc/guc_tables.c:4489 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:4271 +#: utils/misc/guc_tables.c:4500 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:4283 +#: utils/misc/guc_tables.c:4512 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:4295 +#: utils/misc/guc_tables.c:4524 msgid "Shows the server version." msgstr "Versión del servidor." -#: utils/misc/guc_tables.c:4307 +#: utils/misc/guc_tables.c:4536 msgid "Sets the current role." msgstr "Define el rol actual." -#: utils/misc/guc_tables.c:4319 +#: utils/misc/guc_tables.c:4548 msgid "Sets the session user name." msgstr "Define el nombre del usuario de sesión." -#: utils/misc/guc_tables.c:4330 +#: utils/misc/guc_tables.c:4559 msgid "Sets the destination for server log output." msgstr "Define el destino de la salida del registro del servidor." -#: 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 "Son aceptables combinaciones de «stderr», «syslog», «csvlog», «jsonlog» y «eventlog», dependendiendo de la plataforma." -#: utils/misc/guc_tables.c:4342 +#: utils/misc/guc_tables.c:4571 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:4343 +#: utils/misc/guc_tables.c:4572 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:4353 +#: utils/misc/guc_tables.c:4582 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:4364 +#: utils/misc/guc_tables.c:4593 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:4375 +#: utils/misc/guc_tables.c:4604 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:4386 +#: utils/misc/guc_tables.c:4615 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:4396 +#: utils/misc/guc_tables.c:4625 msgid "Selects a file of time zone abbreviations." msgstr "Selecciona un archivo de abreviaciones de huso horario." -#: utils/misc/guc_tables.c:4406 +#: utils/misc/guc_tables.c:4635 msgid "Sets the owning group of the Unix-domain socket." msgstr "Grupo dueño del socket de dominio Unix." -#: utils/misc/guc_tables.c:4407 -msgid "The owning user of the socket is always the user that starts the server." +#: utils/misc/guc_tables.c:4636 +#, 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:4417 +#: utils/misc/guc_tables.c:4646 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:4428 +#: utils/misc/guc_tables.c:4657 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:4443 +#: utils/misc/guc_tables.c:4672 msgid "Sets the server's data directory." msgstr "Define la ubicación del directorio de datos." -#: utils/misc/guc_tables.c:4454 +#: utils/misc/guc_tables.c:4683 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:4465 +#: utils/misc/guc_tables.c:4694 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:4476 +#: utils/misc/guc_tables.c:4705 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:4487 +#: utils/misc/guc_tables.c:4716 msgid "Writes the postmaster PID to the specified file." msgstr "Registra el PID de postmaster en el archivo especificado." -#: utils/misc/guc_tables.c:4498 +#: utils/misc/guc_tables.c:4727 msgid "Shows the name of the SSL library." msgstr "Muestra el nombre de la biblioteca SSL." -#: utils/misc/guc_tables.c:4513 +#: utils/misc/guc_tables.c:4742 msgid "Location of the SSL server certificate file." msgstr "Ubicación del archivo de certificado SSL del servidor." -#: utils/misc/guc_tables.c:4523 +#: utils/misc/guc_tables.c:4752 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:4533 +#: utils/misc/guc_tables.c:4762 msgid "Location of the SSL certificate authority file." msgstr "Ubicación del archivo de autoridad certificadora SSL." -#: utils/misc/guc_tables.c:4543 +#: utils/misc/guc_tables.c:4772 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:4553 +#: utils/misc/guc_tables.c:4782 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:4563 +#: utils/misc/guc_tables.c:4792 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:4574 +#: utils/misc/guc_tables.c:4803 msgid "Sets default text search configuration." msgstr "Define la configuración de búsqueda en texto por omisión." -#: utils/misc/guc_tables.c:4584 -msgid "Sets the list of allowed SSL ciphers." +#: utils/misc/guc_tables.c:4813 +#, 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:4599 -msgid "Sets the curve to use for ECDH." -msgstr "Define la curva a usar para ECDH." +#: utils/misc/guc_tables.c:4814 +#, 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 +#, 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 +msgid "Sets the group(s) to use for Diffie-Hellman key exchange." +msgstr "" -#: utils/misc/guc_tables.c:4614 +#: 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 "Ubicación del archivo de parámetros DH para SSL." -#: utils/misc/guc_tables.c:4625 +#: utils/misc/guc_tables.c:4855 +#, 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 msgid "Command to obtain passphrases for SSL." msgstr "Orden para obtener frases clave para 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 "Define el nombre de aplicación a reportarse en estadísticas y logs." -#: 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 "Define el nombre del clúster, el cual se incluye en el título de proceso." -#: 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 "Define los gestores de recursos WAL para los cuales hacer verificaciones de consistencia 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 "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:4669 +#: utils/misc/guc_tables.c:4909 msgid "JIT provider to use." msgstr "Proveedor JIT a usar." -#: utils/misc/guc_tables.c:4680 +#: utils/misc/guc_tables.c:4920 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:4691 +#: utils/misc/guc_tables.c:4931 msgid "Use direct I/O for file access." msgstr "Usar I/O directo para accesos a archivos." -#: 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 "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: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 "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:4716 +#: utils/misc/guc_tables.c:4956 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:4736 +#: utils/misc/guc_tables.c:4967 +msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." +msgstr "" + +#: 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 "Define si «\\'» está permitido en literales de cadena." -#: utils/misc/guc_tables.c:4746 +#: utils/misc/guc_tables.c:5009 msgid "Sets the output format for bytea." msgstr "Formato de salida para 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 "Nivel de mensajes enviados al cliente." -#: 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 "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:4767 +#: utils/misc/guc_tables.c:5030 msgid "Enables in-core computation of query identifiers." msgstr "Habilita el cálculo de identificadores de consulta." -#: utils/misc/guc_tables.c:4777 +#: utils/misc/guc_tables.c:5040 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:4778 +#: utils/misc/guc_tables.c:5041 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:4789 +#: utils/misc/guc_tables.c:5052 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:4800 +#: utils/misc/guc_tables.c:5063 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:4810 +#: utils/misc/guc_tables.c:5073 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:4821 +#: utils/misc/guc_tables.c:5084 msgid "Sets the display format for interval values." msgstr "Formato de salida para valores de intervalos." -#: utils/misc/guc_tables.c:4832 +#: utils/misc/guc_tables.c:5095 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:4842 +#: utils/misc/guc_tables.c:5105 msgid "Sets the verbosity of logged messages." msgstr "Verbosidad de los mensajes registrados." -#: utils/misc/guc_tables.c:4852 +#: utils/misc/guc_tables.c:5115 msgid "Sets the message levels that are logged." msgstr "Nivel de mensajes registrados." -#: 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 "Registrar sentencias que generan error de nivel superior o igual a éste." -#: utils/misc/guc_tables.c:4874 +#: utils/misc/guc_tables.c:5137 msgid "Sets the type of statements logged." msgstr "Define el tipo de sentencias que se registran." -#: utils/misc/guc_tables.c:4884 +#: utils/misc/guc_tables.c:5147 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:4895 +#: utils/misc/guc_tables.c:5158 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:4905 +#: utils/misc/guc_tables.c:5168 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:4915 +#: utils/misc/guc_tables.c:5178 msgid "Allows archiving of WAL files using \"archive_command\"." msgstr "Permite el archivado de WAL usando «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 "Acción a ejecutar al alcanzar el destino de recuperación." -#: utils/misc/guc_tables.c:4935 +#: utils/misc/guc_tables.c:5198 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:4946 +#: utils/misc/guc_tables.c:5209 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:4956 +#: utils/misc/guc_tables.c:5219 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:4966 +#: utils/misc/guc_tables.c:5229 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:4976 +#: utils/misc/guc_tables.c:5239 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:4986 +#: utils/misc/guc_tables.c:5249 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: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 "Selecciona el método usado para forzar escritura de WAL a disco." -#: utils/misc/guc_tables.c:5006 +#: utils/misc/guc_tables.c:5279 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: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 "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:5027 +#: utils/misc/guc_tables.c:5300 msgid "Use of huge pages on Linux or Windows." msgstr "Usar páginas grandes (huge) en Linux o Windows." -#: utils/misc/guc_tables.c:5037 +#: utils/misc/guc_tables.c:5310 msgid "Indicates the status of huge pages." msgstr "Indica el estado de las “huge pages”." -#: utils/misc/guc_tables.c:5048 +#: utils/misc/guc_tables.c:5321 msgid "Prefetch referenced blocks during recovery." msgstr "Pre-cargar bloques referenciados durante la recuperación." -#: 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 "Busca adelantadamente en el WAL para encontrar referencias a datos que no están en cache." -#: utils/misc/guc_tables.c:5058 +#: utils/misc/guc_tables.c:5331 msgid "Forces the planner's use parallel query nodes." msgstr "Fuerza al optimizador a usar planes paralelos." -#: 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 "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:5071 +#: utils/misc/guc_tables.c:5344 msgid "Chooses the algorithm for encrypting passwords." msgstr "Escoge el algoritmo para cifrar contraseñas." -#: utils/misc/guc_tables.c:5081 +#: utils/misc/guc_tables.c:5354 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: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 "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:5094 +#: utils/misc/guc_tables.c:5367 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:5106 +#: utils/misc/guc_tables.c:5379 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:5118 +#: utils/misc/guc_tables.c:5391 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:5127 +#: utils/misc/guc_tables.c:5400 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: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 "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 +#, fuzzy +#| msgid "Selects the method used for forcing WAL updates to disk." +msgid "Selects the method for executing asynchronous I/O." +msgstr "Selecciona el método usado para forzar escritura de WAL a disco." + #: utils/misc/help_config.c:129 #, c-format msgid "internal error: unrecognized run-time parameter type\n" @@ -30320,6 +32266,27 @@ msgstr "la consulta sería afectada por la política de seguridad de registros p msgid "To disable the policy for the table's owner, use ALTER TABLE NO FORCE ROW LEVEL SECURITY." msgstr "Para desactivar la política para el dueño de la tabla, use ALTER TABLE NO FORCE ROW LEVEL SECURITY." +#: utils/misc/stack_depth.c:101 +#, c-format +msgid "stack depth limit exceeded" +msgstr "límite de profundidad de stack alcanzado" + +#: 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 "Incremente el parámetro de configuración «max_stack_depth» (actualmente %dkB), después de asegurarse que el límite de profundidad de stack de la plataforma es adecuado." + +#: utils/misc/stack_depth.c:149 +#, fuzzy, c-format +#| msgid "\"max_stack_depth\" must not exceed %ldkB." +msgid "\"max_stack_depth\" must not exceed %zdkB." +msgstr "«max_stack_depth» no debe exceder %ldkB." + +#: utils/misc/stack_depth.c:151 +#, c-format +msgid "Increase the platform's stack depth limit via \"ulimit -s\" or local equivalent." +msgstr "Incremente el límite de profundidad del stack del sistema usando «ulimit -s» o el equivalente de su sistema." + #: utils/misc/timeout.c:520 #, c-format msgid "cannot add more timeout reasons" @@ -30335,57 +32302,57 @@ msgstr "la abreviación del huso horario «%s» es demasiado larga (máximo %d c msgid "time zone offset %d is out of range in time zone file \"%s\", line %d" msgstr "desplazamiento de huso horario %d está fuera de rango en el archivo de huso horario «%s», línea %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 "falta una abreviación de huso horario en el archivo de huso horario «%s», línea %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 "falta un desplazamiento de huso horario en el archivo de huso horario «%s», línea %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 "número no válido para desplazamiento de huso horario en archivo de huso horario «%s», línea %d" -#: utils/misc/tzparser.c:169 +#: utils/misc/tzparser.c:170 #, c-format msgid "invalid syntax in time zone file \"%s\", line %d" msgstr "sintaxis no válida en archivo de huso horario «%s», línea %d" -#: utils/misc/tzparser.c:237 +#: utils/misc/tzparser.c:238 #, c-format msgid "time zone abbreviation \"%s\" is multiply defined" msgstr "abreviación de huso horario «%s» está definida múltiples veces" -#: 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 "Entrada en archivo de huso horario «%s», línea %d, causa conflictos con entrada en archivo «%s», línea %d." -#: utils/misc/tzparser.c:301 +#: utils/misc/tzparser.c:302 #, c-format msgid "invalid time zone file name \"%s\"" msgstr "nombre de huso horario «%s» no válido" -#: utils/misc/tzparser.c:314 +#: utils/misc/tzparser.c:315 #, c-format msgid "time zone file recursion limit exceeded in file \"%s\"" msgstr "límite de recursión excedido en el archivo «%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 "no se pudo leer archivo de huso horario «%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 "línea demasiado larga en archivo de huso horario «%s», línea %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 sin nombre de archivo en archivo de huso horario «%s», línea %d" @@ -30401,12 +32368,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:1155 +#: utils/mmgr/mcxt.c:1160 #, 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:1299 +#: utils/mmgr/mcxt.c:1304 #, c-format msgid "logging memory contexts of PID %d" msgstr "registrando contextos de memoria del PID %d" @@ -30447,8 +32414,9 @@ msgid "cannot perform transaction commands inside a cursor loop that is not read msgstr "no se pueden ejecutar órdenes de transacción dentro de un bucle de cursor que no es de sólo lectura" #: utils/sort/logtape.c:266 utils/sort/logtape.c:287 -#, c-format -msgid "could not seek to block %lld of temporary file" +#, fuzzy, c-format +#| msgid "could not seek to block %lld of temporary file" +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 @@ -30461,101 +32429,101 @@ msgstr "trozo inesperado en archivo temporal del tuplestore compartido" 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" -#: utils/sort/tuplesort.c:2372 +#: utils/sort/tuplesort.c:2340 #, c-format 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:1552 +#: utils/sort/tuplesortvariants.c:1671 #, c-format msgid "could not create unique index \"%s\"" msgstr "no se pudo crear el índice único «%s»" -#: utils/sort/tuplesortvariants.c:1554 +#: utils/sort/tuplesortvariants.c:1673 #, c-format msgid "Key %s is duplicated." msgstr "La llave %s está duplicada." -#: utils/sort/tuplesortvariants.c:1555 +#: utils/sort/tuplesortvariants.c:1674 #, c-format msgid "Duplicate keys exist." msgstr "Existe una llave duplicada." -#: 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 "no se pudo posicionar (seek) en el archivo temporal del tuplestore" -#: utils/time/snapmgr.c:536 +#: utils/time/snapmgr.c:568 #, c-format msgid "The source transaction is not running anymore." msgstr "La transacción de origen ya no está en ejecución." -#: utils/time/snapmgr.c:1136 +#: utils/time/snapmgr.c:1154 #, c-format msgid "cannot export a snapshot from a subtransaction" msgstr "no se puede exportar snapshots desde una subtransacción" -#: 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 "datos no válidos en archivo de snapshot «%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 debe ser llamado antes de cualquier consulta" -#: 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 "una transacción que importa un snapshot no debe tener nivel de aislación SERIALIZABLE o REPEATABLE READ" -#: utils/time/snapmgr.c:1411 +#: utils/time/snapmgr.c:1429 #, c-format msgid "invalid snapshot identifier: \"%s\"" msgstr "identificador de snapshot no válido: «%s»" -#: utils/time/snapmgr.c:1426 +#: utils/time/snapmgr.c:1444 #, c-format msgid "snapshot \"%s\" does not exist" msgstr "no existe el snapshot «%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 "una transacción serializable no puede importar un snapshot desde una transacción no serializable" -#: 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 "una transacción serializable que no es de sólo lectura no puede importar un snapshot de una transacción de sólo lectura" -#: utils/time/snapmgr.c:1543 +#: utils/time/snapmgr.c:1561 #, c-format msgid "cannot import a snapshot from a different database" msgstr "no se puede importar un snapshot desde una base de datos diferente" -#: gram.y:1231 +#: gram.y:1222 #, c-format msgid "UNENCRYPTED PASSWORD is no longer supported" msgstr "UNENCRYPTED PASSWORD ya no está soportado" -#: gram.y:1232 +#: gram.y:1223 #, c-format msgid "Remove UNENCRYPTED to store the password in encrypted form instead." msgstr "Quite UNENCRYPTED para almacenar la contraseña en su lugar en forma cifrada." -#: 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 no puede incluir elementos de esquema" @@ -30565,403 +32533,414 @@ msgstr "CREATE SCHEMA IF NOT EXISTS no puede incluir elementos de esquema" msgid "current database cannot be changed" msgstr "no se puede cambiar la base de datos activa" -#: gram.y:1860 +#: gram.y:1868 #, c-format msgid "time zone interval must be HOUR or HOUR TO MINUTE" msgstr "el intervalo de huso horario debe ser HOUR o HOUR TO MINUTE" -#: gram.y:2487 +#: gram.y:2500 #, c-format msgid "column number must be in range from 1 to %d" msgstr "el número de columna debe estar en el rango de 1 a %d" -#: gram.y:3083 +#: gram.y:2675 +#, fuzzy, c-format +#| msgid "%s constraints cannot be marked NOT VALID" +msgid "constraints cannot be altered to be NOT VALID" +msgstr "las restricciones %s no pueden ser marcadas NOT VALID" + +#: gram.y:3125 #, c-format msgid "sequence option \"%s\" not supported here" msgstr "la opción de secuencia «%s» no está soportada aquí" -#: gram.y:3122 +#: gram.y:3164 #, c-format msgid "modulus for hash partition provided more than once" msgstr "el módulo para partición de hash fue especificado más de una vez" -#: gram.y:3131 +#: gram.y:3173 #, c-format msgid "remainder for hash partition provided more than once" msgstr "el remanente para partición de hash fue especificado más de una vez" -#: gram.y:3138 +#: gram.y:3180 #, c-format msgid "unrecognized hash partition bound specification \"%s\"" msgstr "especificación de borde de partición hash «%s» no reconocida" -#: gram.y:3146 +#: gram.y:3188 #, c-format msgid "modulus for hash partition must be specified" msgstr "el módulo para una partición hash debe ser especificado" -#: gram.y:3150 +#: gram.y:3193 #, c-format msgid "remainder for hash partition must be specified" msgstr "remanente en partición hash debe ser especificado" -#: gram.y:3358 gram.y:3392 +#: gram.y:3402 gram.y:3436 #, c-format msgid "STDIN/STDOUT not allowed with PROGRAM" msgstr "STDIN/STDOUT no están permitidos con PROGRAM" -#: gram.y:3364 +#: gram.y:3408 #, c-format msgid "WHERE clause not allowed with COPY TO" msgstr "la cláusula WHERE no está permitida con 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 está obsoleto para la creación de tablas temporales" -#: gram.y:3995 +#: gram.y:4045 #, c-format msgid "for a generated column, GENERATED ALWAYS must be specified" msgstr "para una columna generada, GENERATED ALWAYS debe ser especificado" -#: gram.y:4432 +#: gram.y:4546 #, c-format msgid "a column list with %s is only supported for ON DELETE actions" msgstr "una lista de columnas con %s sólo está soportada para acciones ON DELETE" -#: gram.y:5151 +#: gram.y:5265 #, c-format msgid "CREATE EXTENSION ... FROM is no longer supported" msgstr "CREATE EXTENSION ... FROM ya no está soportado" -#: gram.y:5849 +#: gram.y:5963 #, c-format msgid "unrecognized row security option \"%s\"" msgstr "opción de seguridad de registro «%s» no reconocida" -#: gram.y:5850 +#: gram.y:5964 #, c-format msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently." msgstr "sólo se admiten actualmente políticas PERMISSIVE o RESTRICTIVE." -#: gram.y:5935 +#: gram.y:6049 #, c-format msgid "CREATE OR REPLACE CONSTRAINT TRIGGER is not supported" msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER no está soportado" -#: gram.y:5972 +#: gram.y:6087 msgid "duplicate trigger events specified" msgstr "se han especificado “triggers” por eventos duplicados" -#: gram.y:6121 +#: gram.y:6237 #, c-format msgid "conflicting constraint properties" msgstr "propiedades de restricción contradictorias" -#: gram.y:6220 +#: gram.y:6338 #, c-format msgid "CREATE ASSERTION is not yet implemented" msgstr "CREATE ASSERTION no está implementado" -#: gram.y:6537 +#: gram.y:6656 #, c-format msgid "dropping an enum value is not implemented" msgstr "eliminar un valor de enum no está implementado" -#: gram.y:6655 -#, c-format -msgid "RECHECK is no longer required" -msgstr "RECHECK ya no es requerido" - -#: gram.y:6656 -#, c-format -msgid "Update your data type." -msgstr "Actualice su tipo de datos." - -#: gram.y:8529 +#: gram.y:8636 #, c-format msgid "aggregates cannot have output arguments" msgstr "las funciones de agregación no pueden tener argumentos de salida" -#: 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 no está soportado con vistas recursivas" -#: gram.y:13162 +#: gram.y:13315 #, c-format msgid "LIMIT #,# syntax is not supported" msgstr "la sintaxis LIMIT #,# no está soportada" -#: gram.y:13163 +#: gram.y:13316 #, c-format msgid "Use separate LIMIT and OFFSET clauses." msgstr "Use cláusulas LIMIT y OFFSET separadas." -#: gram.y:14038 +#: gram.y:14203 #, c-format msgid "only one DEFAULT value is allowed" msgstr "Sólo se permite un valor DEFAULT" -#: gram.y:14047 +#: gram.y:14212 #, c-format msgid "only one PATH value per column is allowed" msgstr "sólo se permite un valor de PATH por columna" -#: gram.y:14056 +#: gram.y:14221 #, c-format msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\"" msgstr "declaraciones NULL/NOT NULL en conflicto o redundantes para la columna «%s»" -#: gram.y:14065 +#: gram.y:14230 #, c-format msgid "unrecognized column option \"%s\"" msgstr "opción de columna «%s» no reconocida" -#: gram.y:14147 +#: gram.y:14263 +#, fuzzy, c-format +#| msgid "block label \"%s\" cannot be used in CONTINUE" +msgid "option name \"%s\" cannot be used in XMLTABLE" +msgstr "la etiqueta de bloque «%s» no puede usarse en CONTINUE" + +#: gram.y:14319 #, c-format msgid "only string constants are supported in JSON_TABLE path specification" msgstr "sólo cadenas constantes están permitidas en la especificación de ruta JSON_TABLE" -#: gram.y:14469 +#: gram.y:14641 #, c-format msgid "precision for type float must be at least 1 bit" msgstr "la precisión para el tipo float debe ser al menos 1 bit" -#: gram.y:14478 +#: gram.y:14650 #, c-format msgid "precision for type float must be less than 54 bits" msgstr "la precisión para el tipo float debe ser menor de 54 bits" -#: gram.y:14995 +#: gram.y:15167 #, c-format msgid "wrong number of parameters on left side of OVERLAPS expression" msgstr "el número de parámetros es incorrecto al lado izquierdo de la expresión OVERLAPS" -#: gram.y:15000 +#: gram.y:15172 #, c-format msgid "wrong number of parameters on right side of OVERLAPS expression" msgstr "el número de parámetros es incorrecto al lado derecho de la expresión OVERLAPS" -#: gram.y:15177 +#: gram.y:15350 #, c-format msgid "UNIQUE predicate is not yet implemented" msgstr "el predicado UNIQUE no está implementado" -#: gram.y:15591 +#: gram.y:15764 #, c-format msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP" msgstr "no se permiten múltiples cláusulas ORDER BY con WITHIN GROUP" -#: gram.y:15596 +#: gram.y:15769 #, c-format msgid "cannot use DISTINCT with WITHIN GROUP" msgstr "no se permite DISTINCT con WITHIN GROUP" -#: gram.y:15601 +#: gram.y:15774 #, c-format msgid "cannot use VARIADIC with WITHIN GROUP" msgstr "no se permite VARIADIC con WITHIN GROUP" -#: gram.y:16328 gram.y:16352 +#: gram.y:16501 gram.y:16525 #, c-format msgid "frame start cannot be UNBOUNDED FOLLOWING" msgstr "el inicio de «frame» no puede ser UNBOUNDED FOLLOWING" -#: gram.y:16333 +#: gram.y:16506 #, c-format msgid "frame starting from following row cannot end with current row" msgstr "el «frame» que se inicia desde la siguiente fila no puede terminar en la fila actual" -#: gram.y:16357 +#: gram.y:16530 #, c-format msgid "frame end cannot be UNBOUNDED PRECEDING" msgstr "el fin de «frame» no puede ser UNBOUNDED PRECEDING" -#: gram.y:16363 +#: gram.y:16536 #, c-format msgid "frame starting from current row cannot have preceding rows" msgstr "el «frame» que se inicia desde la fila actual no puede tener filas precedentes" -#: gram.y:16370 +#: gram.y:16543 #, c-format msgid "frame starting from following row cannot have preceding rows" msgstr "el «frame» que se inicia desde la fila siguiente no puede tener filas precedentes" -#: gram.y:16919 +#: gram.y:17081 #, c-format msgid "unrecognized JSON encoding: %s" msgstr "no se reconoce la codificación JSON: %s" -#: gram.y:17243 +#: gram.y:17406 #, c-format msgid "type modifier cannot have parameter name" msgstr "el modificador de tipo no puede tener nombre de parámetro" -#: gram.y:17249 +#: gram.y:17412 #, c-format msgid "type modifier cannot have ORDER BY" msgstr "el modificador de tipo no puede tener 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 no puede ser usado como nombre de rol aquí" -#: 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 "la opción WITH TIES no puede ser especificada sin una cláusula ORDER BY" -#: gram.y:18597 gram.y:18772 +#: gram.y:18767 gram.y:18942 msgid "improper use of \"*\"" msgstr "uso impropio de «*»" -#: 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 "una agregación de conjunto-ordenado con un argumento directo VARIADIC debe tener al menos un argumento agregado VARIADIC del mismo tipo de datos" -#: gram.y:18873 +#: gram.y:19043 #, c-format msgid "multiple ORDER BY clauses not allowed" msgstr "no se permiten múltiples cláusulas ORDER BY" -#: gram.y:18884 +#: gram.y:19054 #, c-format msgid "multiple OFFSET clauses not allowed" msgstr "no se permiten múltiples cláusulas OFFSET" -#: gram.y:18893 +#: gram.y:19063 #, c-format msgid "multiple LIMIT clauses not allowed" msgstr "no se permiten múltiples cláusulas LIMIT" -#: gram.y:18902 -#, c-format -msgid "multiple limit options not allowed" -msgstr "no se permiten múltiples opciones limit" - -#: gram.y:18929 +#: gram.y:19099 #, c-format msgid "multiple WITH clauses not allowed" msgstr "no se permiten múltiples cláusulas WITH" -#: gram.y:19122 +#: gram.y:19295 #, c-format msgid "OUT and INOUT arguments aren't allowed in TABLE functions" msgstr "los argumentos OUT e INOUT no están permitidos en funciones TABLE" -#: gram.y:19255 +#: gram.y:19429 #, c-format msgid "multiple COLLATE clauses not allowed" msgstr "no se permiten múltiples cláusulas 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 "las restricciones %s no pueden ser marcadas 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 "las restricciones %s no pueden ser marcadas 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 "las restricciones %s no pueden ser marcadas NO INHERIT" -#: gram.y:19354 +#. translator: %s is CHECK, UNIQUE, or similar +#: gram.y:19521 +#, fuzzy, c-format +#| msgid "%s constraints cannot be marked NOT VALID" +msgid "%s constraints cannot be marked NOT ENFORCED" +msgstr "las restricciones %s no pueden ser marcadas NOT VALID" + +#. translator: %s is CHECK, UNIQUE, or similar +#: gram.y:19543 +#, fuzzy, c-format +#| msgid "%s constraints cannot be marked DEFERRABLE" +msgid "%s constraints cannot be marked ENFORCED" +msgstr "las restricciones %s no pueden ser marcadas DEFERRABLE" + +#: gram.y:19565 #, c-format msgid "unrecognized partitioning strategy \"%s\"" msgstr "estrategia de particionamiento «%s» no reconocida" -#: gram.y:19378 +#: gram.y:19589 #, c-format msgid "invalid publication object list" msgstr "sintaxis de lista de objetos de publicación no válida" -#: 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 "Uno de TABLE o TABLES IN SCHEMA debe ser especificado antes de un nombre de tabla o esquema." -#: gram.y:19395 +#: gram.y:19606 #, c-format msgid "invalid table name" msgstr "nombre de tabla no válido" -#: gram.y:19416 +#: gram.y:19627 #, c-format msgid "WHERE clause not allowed for schema" msgstr "cláusula WHERE no permitida para esquemas" -#: gram.y:19423 +#: gram.y:19634 #, c-format msgid "column specification not allowed for schema" msgstr "especificación de columnas no permitida para esquemas" -#: gram.y:19437 +#: gram.y:19648 #, c-format msgid "invalid schema name" msgstr "nombre de esquema no válido" -#: guc-file.l:192 +#: guc-file.l:193 #, c-format msgid "empty configuration file name: \"%s\"" msgstr "nombre de archivo de configuración vacío: «%s»" -#: guc-file.l:209 +#: guc-file.l:210 #, c-format msgid "could not open configuration file \"%s\": maximum nesting depth exceeded" msgstr "no se pudo abrir el archivo de configuración «%s»: nivel de anidamiento máximo excedido" -#: guc-file.l:229 +#: guc-file.l:230 #, c-format msgid "configuration file recursion in \"%s\"" msgstr "recursión de archivos de configuración en «%s»" -#: guc-file.l:245 +#: guc-file.l:246 #, c-format msgid "could not open configuration file \"%s\": %m" msgstr "no se pudo abrir el archivo de configuración «%s»: %m" -#: guc-file.l:256 +#: guc-file.l:257 #, c-format msgid "skipping missing configuration file \"%s\"" msgstr "omitiendo el archivo de configuración faltante «%s»" -#: guc-file.l:511 +#: guc-file.l:518 #, c-format msgid "syntax error in file \"%s\" line %u, near end of line" msgstr "error de sintaxis en el archivo «%s» línea %u, cerca del fin de línea" -#: guc-file.l:521 +#: guc-file.l:528 #, c-format msgid "syntax error in file \"%s\" line %u, near token \"%s\"" msgstr "error de sintaxis en el archivo «%s» línea %u, cerca de la palabra «%s»" -#: guc-file.l:541 +#: guc-file.l:548 #, c-format msgid "too many syntax errors found, abandoning file \"%s\"" msgstr "se encontraron demasiados errores de sintaxis, abandonando el archivo «%s»" -#: jsonpath_gram.y:267 +#: jsonpath_gram.y:269 #, c-format msgid ".decimal() can only have an optional precision[,scale]." msgstr ".decimal() sólo puede tener un parámetro opcional precisión[,escala]." -#: jsonpath_gram.y:599 +#: jsonpath_gram.y:601 #, c-format msgid "Unrecognized flag character \"%.*s\" in LIKE_REGEX predicate." msgstr "Carácter de bandera «%.*s» no reconocido en predicado LIKE_REGEX." -#: jsonpath_gram.y:677 +#: jsonpath_gram.y:679 #, c-format msgid "XQuery \"x\" flag (expanded regular expressions) is not implemented" msgstr "la opción «x» de XQuery (expresiones regulares expandidas) no está implementada" @@ -30978,168 +32957,428 @@ msgstr "secuencia de caracteres hexadecimales no válido" msgid "unexpected end after backslash" msgstr "fin inesperado después de backslash" -#: 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 "una cadena de caracteres entre comillas está inconclusa" -#: jsonpath_scan.l:228 +#: jsonpath_scan.l:227 msgid "unexpected end of comment" msgstr "fin de comentario inesperado" -#: jsonpath_scan.l:319 +#: jsonpath_scan.l:317 msgid "invalid numeric literal" msgstr "literal numérico no válido" -#: 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 "basura sigue después de un literal numérico" #. 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 al final de la entrada 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 en o cerca de «%s» de la entrada jsonpath" -#: jsonpath_scan.l:568 +#: jsonpath_scan.l:545 msgid "invalid input" msgstr "entrada no válida" -#: jsonpath_scan.l:594 +#: jsonpath_scan.l:571 msgid "invalid hexadecimal digit" msgstr "dígito hexadecimal no válido" -#: jsonpath_scan.l:625 +#: jsonpath_scan.l:602 #, c-format msgid "could not convert Unicode to server encoding" msgstr "no se pudo convertir Unicode a la codificación del servidor" -#: repl_gram.y:318 repl_gram.y:359 +#: repl_gram.y:322 repl_gram.y:363 #, c-format msgid "invalid timeline %u" msgstr "timeline %u no válido" -#: repl_scanner.l:154 +#: repl_scanner.l:160 msgid "invalid streaming start location" msgstr "ubicación de inicio de flujo no válida" -#: scan.l:497 +#: scan.l:483 msgid "unterminated /* comment" msgstr "un comentario /* está inconcluso" -#: scan.l:517 +#: scan.l:503 msgid "unterminated bit string literal" msgstr "una cadena de bits está inconclusa" -#: scan.l:531 +#: scan.l:517 msgid "unterminated hexadecimal string literal" msgstr "una cadena hexadecimal está inconclusa" -#: scan.l:581 +#: scan.l:567 #, c-format msgid "unsafe use of string constant with Unicode escapes" msgstr "uso inseguro de literal de cadena con escapes 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 "Los literales de cadena con escapes Unicode no pueden usarse cuando «standard_conforming_strings» está desactivado." -#: scan.l:643 +#: scan.l:629 msgid "unhandled previous state in xqs" msgstr "estado previo no manejado en xqs" -#: scan.l:717 +#: scan.l:703 #, c-format msgid "Unicode escapes must be \\uXXXX or \\UXXXXXXXX." msgstr "Los escapes Unicode deben ser \\uXXXX o \\UXXXXXXXX." -#: scan.l:728 +#: scan.l:714 #, c-format msgid "unsafe use of \\' in a string literal" msgstr "uso inseguro de \\' en un literal de cadena" -#: scan.l:729 +#: scan.l:715 #, c-format msgid "Use '' to write quotes in strings. \\' is insecure in client-only encodings." msgstr "Use '' para escribir comillas en cadenas. \\' es inseguro en codificaciones de sólo cliente." -#: scan.l:801 +#: scan.l:787 msgid "unterminated dollar-quoted string" msgstr "una cadena separada por $ está inconclusa" -#: scan.l:818 scan.l:828 +#: scan.l:804 scan.l:814 msgid "zero-length delimited identifier" msgstr "un identificador delimitado tiene largo cero" -#: scan.l:839 syncrep_scanner.l:101 +#: scan.l:825 syncrep_scanner.l:114 msgid "unterminated quoted identifier" msgstr "un identificador entre comillas está inconcluso" -#: scan.l:1002 +#: scan.l:988 msgid "operator too long" msgstr "el operador es demasiado largo" -#: scan.l:1015 +#: scan.l:1001 +#, fuzzy +#| msgid "parameter number %d is out of range 0..%d" +msgid "parameter number too large" +msgstr "el número de parámetro %d está fuera del rango 0..%d" + +#: scan.l:1007 msgid "trailing junk after parameter" msgstr "basura sigue después de un parámetro" -#: scan.l:1036 +#: scan.l:1028 msgid "invalid hexadecimal integer" msgstr "entero hexadecimal no válido" -#: scan.l:1040 +#: scan.l:1032 msgid "invalid octal integer" msgstr "entero octal no válido" -#: scan.l:1044 +#: scan.l:1036 msgid "invalid binary integer" msgstr "entero binario no válido" #. 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 al final de la entrada" #. 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 en o cerca de «%s»" -#: scan.l:1439 +#: scan.l:1431 #, c-format msgid "nonstandard use of \\' in a string literal" msgstr "uso no estandar de \\' en un literal de cadena" -#: scan.l:1440 +#: scan.l:1432 #, c-format msgid "Use '' to write quotes in strings, or use the escape string syntax (E'...')." msgstr "Use '' para escribir comillas en cadenas, o use la sintaxis de escape de cadenas (E'...')." -#: scan.l:1449 +#: scan.l:1441 #, c-format msgid "nonstandard use of \\\\ in a string literal" msgstr "uso no estandar de \\\\ en un literal de cadena" -#: scan.l:1450 +#: scan.l:1442 #, c-format msgid "Use the escape string syntax for backslashes, e.g., E'\\\\'." msgstr "Use '' para escribir comillas en cadenas, o use la sintaxis de escape de cadenas (E'\\\\')." -#: scan.l:1464 +#: scan.l:1456 #, c-format msgid "nonstandard use of escape in a string literal" msgstr "uso no estandar de escape en un literal de cadena" -#: scan.l:1465 +#: scan.l:1457 #, 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 "could not look up local user ID %d: %s" +#~ msgstr "no se pudo buscar el usuario local de ID %d: %s" + +#, c-format +#~ msgid "local user with ID %d does not exist" +#~ msgstr "no existe un usuario local con ID %d" + +#, c-format +#~ msgid "%s cannot be executed within a pipeline" +#~ msgstr "%s no puede ser ejecutado en un “pipeline”" + +#, c-format +#~ msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d." +#~ msgstr "Los archivos de base de datos fueron inicializados con CATALOG_VERSION_NO %d, pero el servidor fue compilado con CATALOG_VERSION_NO %d." + +#, c-format +#~ msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d." +#~ msgstr "Los archivos de la base de datos fueron inicializados con MAXALIGN %d, pero el servidor fue compilado con MAXALIGN %d." + +#, c-format +#~ msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d." +#~ msgstr "Los archivos de la base de datos fueron inicializados con RELSEG_SIZE %d, pero el servidor fue compilado con RELSEG_SIZE %d." + +#, c-format +#~ msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d." +#~ msgstr "Los archivos de base de datos fueron inicializados con XLOG_BLCKSZ %d, pero el servidor fue compilado con XLOG_BLCKSZ %d." + +#, c-format +#~ msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d." +#~ msgstr "Los archivos de la base de datos fueron inicializados con NAMEDATALEN %d, pero el servidor fue compilado con NAMEDATALEN %d." + +#, c-format +#~ msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d." +#~ msgstr "Los archivos de la base de datos fueron inicializados con INDEX_MAX_KEYS %d, pero el servidor fue compilado con INDEX_MAX_KEYS %d." + +#, 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 "Los archivos de la base de datos fueron inicializados con TOAST_MAX_CHUNK_SIZE %d, pero el servidor fue compilado con TOAST_MAX_CHUNK_SIZE %d." + +#, c-format +#~ msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d." +#~ msgstr "Los archivos de base de datos fueron inicializados con LOBLKSIZE %d, pero el servidor fue compilado con LOBLKSIZE %d." + +#, c-format +#~ msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" +#~ msgstr "«min_wal_size» debe ser al menos el doble de «wal_segment_size»" + +#, c-format +#~ msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" +#~ msgstr "«max_wal_size» debe ser al menos el doble de «wal_segment_size»" + +#, 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." + +#, 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 "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" + +#, c-format +#~ msgid "%s with OID %u does not exist" +#~ msgstr "%s con el OID %u no existe" + +#, c-format +#~ msgid "end-of-copy marker corrupt" +#~ msgstr "marcador fin-de-copy corrupto" + +#, c-format +#~ msgid "EXPLAIN option TIMING requires ANALYZE" +#~ msgstr "la opción TIMING de EXPLAIN requiere ANALYZE" + +#, c-format +#~ msgid "EXPLAIN option SERIALIZE requires ANALYZE" +#~ msgstr "la opción SERIALIZE de EXPLAIN requiere ANALYZE" + +#, c-format +#~ msgid "Could not open extension control file \"%s\": %m." +#~ msgstr "No se pudo abrir el archivo de control de extensión «%s»: %m." + +#, c-format +#~ msgid "cannot match partition key to an index using access method \"%s\"" +#~ msgstr "no se puede hacer coincidir la llave de partición a un índice usando el método de acceso «%s»" + +#, c-format +#~ msgid "cannot remove constraint from only the partitioned table when partitions exist" +#~ msgstr "no se pueden eliminar restricciones sólo de la tabla particionada cuando existen particiones" + +#, c-format +#~ msgid "column \"%s\" of relation \"%s\" is not a stored generated column" +#~ msgstr "la columna «%s» en la relación «%s» no es una columna generada almacenada" + +#, c-format +#~ msgid "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing relation \"%s\"" +#~ msgstr "no se puede agregar una llave foránea NOT VALID a la tabla particionada «%s» haciendo referencia a la relación «%s»" + +#, c-format +#~ msgid "This feature is not yet supported on partitioned tables." +#~ msgstr "Esta característica no está aún soportada en tablas particionadas." + +#, c-format +#~ msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint" +#~ msgstr "la restricción «%s» de la relación «%s» no es una llave foránea o restricción «check»" + +#, c-format +#~ msgid "\"effective_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." +#~ msgstr "«effective_io_concurrency» debe ser 0 en plataformas que no tienen posix_fadvise()." + +#, c-format +#~ msgid "\"maintenance_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." +#~ msgstr "«maintenance_io_concurrency» debe ser 0 en plataformas que no tienen posix_fadvise()." + +#, c-format +#~ msgid "could not look up local user ID %ld: %s" +#~ msgstr "no se pudo encontrar el ID del usuario local %ld: %s" + +#, c-format +#~ msgid "ECDH: unrecognized curve name: %s" +#~ msgstr "ECDH: nombre de curva no reconocida: %s" + +#, c-format +#~ msgid "ECDH: could not create key" +#~ msgstr "ECDH: no se pudo crear la llave" + +#, c-format +#~ msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter, or ldapurl together with ldapprefix" +#~ msgstr "no se puede usar ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter o ldapurl junto con ldapprefix" + +#, c-format +#~ msgid "LIKE is not supported for creating foreign tables" +#~ msgstr "LIKE no está soportado para la creación de tablas foráneas" + +#~ msgid "server process" +#~ msgstr "proceso de servidor" + +#, c-format +#~ msgid "This slot has been invalidated because it exceeded the maximum reserved size." +#~ msgstr "Este slot ha sido invalidado porque excedió el máximo del tamaño de reserva." + +#, c-format +#~ msgid "This slot has been invalidated because it was conflicting with recovery." +#~ msgstr "Este slot ha sido invalidado porque estaba en conflicto con la recuperación." + +#, c-format +#~ msgid "\"synchronous_standby_names\" parser failed" +#~ msgstr "falló la interpretación de «synchronous_standby_names»" + +#, c-format +#~ msgid "\"debug_io_direct\" is not supported on this platform." +#~ msgstr "«debug_io_direct» no está soportado en esta plataforma." + +#, c-format +#~ msgid "conversion from wchar_t to server encoding failed: %m" +#~ msgstr "conversión desde un wchar_t a la codificación del servidor falló: %m" + +#, c-format +#~ msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" +#~ msgstr "no se pudo cambiar el nombre al archivo temporal de estadísticas de «%s» a «%s»: %m" + +#, c-format +#~ msgid "invalid input string for \"Y,YYY\"" +#~ msgstr "cadena de entrada no válida para «Y,YYY»" + +#, c-format +#~ msgid "\"RN\" not supported for input" +#~ msgstr "«RN» no está soportado en la entrada" + +#, c-format +#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type double precision" +#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo de precisión doble" + +#, c-format +#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type boolean" +#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo booleano" + +#, c-format +#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type numeric" +#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo numeric" + +#, c-format +#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type integer" +#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo integer" + +#, c-format +#~ msgid "nondeterministic collations are not supported for LIKE" +#~ msgstr "los ordenamientos no determinísticos no están soportados para LIKE" + +#, c-format +#~ msgid "index %lld out of valid range, 0..%lld" +#~ msgstr "el índice %lld está fuera de rango, 0..%lld" + +#, c-format +#~ msgid "Server has FUNC_MAX_ARGS = %d, library has %d." +#~ msgstr "El servidor tiene FUNC_MAX_ARGS = %d, la librería tiene %d" + +#, c-format +#~ msgid "Server has INDEX_MAX_KEYS = %d, library has %d." +#~ msgstr "El servidor tiene INDEX_MAX_KEYS = %d, la librería tiene %d" + +#, c-format +#~ msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." +#~ msgstr "El servidor tiene FLOAT8PASSBYVAL = %s, la librería tiene %s" + +#~ msgid "Resource Usage / Asynchronous Behavior" +#~ msgstr "Uso de Recursos / Comportamiento Asíncrono" + +#~ msgid "Logs each successful connection." +#~ msgstr "Registrar cada conexión exitosa." + +#~ msgid "-1 indicates that the value could not be determined." +#~ msgstr "-1 indica que el valor no pudo ser determinado." + +#~ msgid "A value of 0 turns off the timeout." +#~ msgstr "Un valor de 0 desactiva el máximo." + +#~ msgid "Zero logs a sample of all queries. -1 turns this feature off." +#~ msgstr "Cero registra una muestra de todas las consultas. -1 desactiva esta funcionalidad." + +#~ msgid "Zero prints all queries. -1 turns this feature off." +#~ msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad." + +#~ msgid "Zero prints all actions. -1 turns autovacuum logging off." +#~ msgstr "Cero registra todas las acciones. -1 desactiva el registro de autovacuum." + +#~ msgid "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums." +#~ msgstr "Número mínimo de inserciones de tuplas antes de ejecutar vacuum, o -1 para desactivar vacuums por inserciones." + +#~ msgid "Zero logs all files. The default is -1 (turning this feature off)." +#~ msgstr "Cero registra todos los archivos. El valor por omisión es -1 (lo cual desactiva el registro)." + +#~ msgid "0 turns this feature off." +#~ msgstr "Cero desactiva esta característica." + +#~ msgid "This is used only if \"archive_library\" is not set." +#~ msgstr "Esto sólo se utiliza si «archive_library» no está definido." + +#~ msgid "If blank, no prefix is used." +#~ msgstr "si está en blanco, no se usa prefijo." + +#~ msgid "Sets the curve to use for ECDH." +#~ msgstr "Define la curva a usar para ECDH." + +#, c-format +#~ msgid "RECHECK is no longer required" +#~ msgstr "RECHECK ya no es requerido" + +#, c-format +#~ msgid "Update your data type." +#~ msgstr "Actualice su tipo de datos." + +#, c-format +#~ msgid "multiple limit options not allowed" +#~ msgstr "no se permiten múltiples opciones limit" diff --git a/src/backend/po/ko.po b/src/backend/po/ko.po index d71eed4b6c0eb..5d68af6039987 100644 --- a/src/backend/po/ko.po +++ b/src/backend/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: postgres (PostgreSQL) 17\n" +"Project-Id-Version: postgres (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:41+0000\n" -"PO-Revision-Date: 2025-01-20 16:44+0900\n" +"POT-Creation-Date: 2025-09-11 21:41+0000\n" +"PO-Revision-Date: 2025-09-12 11:14+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -81,34 +81,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:3807 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:3477 -#: access/transam/xlog.c:4341 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:5113 -#: 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: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 #, 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:3482 access/transam/xlog.c:4346 -#: 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:2489 +#: replication/slot.c:2530 replication/walsender.c:634 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -118,18 +118,19 @@ msgstr "\"%s\" 파일을 읽을 수 없음: %d 읽음, 전체 %zu" #: ../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:1800 access/transam/xlog.c:3323 -#: access/transam/xlog.c:3517 access/transam/xlog.c:3522 -#: access/transam/xlog.c:3658 access/transam/xlog.c:4311 -#: access/transam/xlog.c:5246 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:5165 -#: 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:2373 replication/slot.c:2537 replication/walsender.c:644 +#: 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" @@ -155,105 +156,107 @@ msgstr "" "현재 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:3230 -#: access/transam/xlog.c:3393 access/transam/xlog.c:3432 -#: access/transam/xlog.c:3625 access/transam/xlog.c:4331 -#: 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:3766 -#: replication/logical/reorderbuffer.c:4320 -#: replication/logical/reorderbuffer.c:5093 -#: 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:1580 utils/init/miscinit.c:1714 -#: utils/init/miscinit.c:1791 utils/misc/guc.c:4777 utils/misc/guc.c:4827 +#: 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/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 #, 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:1773 access/transam/twophase.c:1782 -#: access/transam/xlog.c:9280 access/transam/xlogfuncs.c:698 +#: access/transam/twophase.c:1756 access/transam/twophase.c:1765 +#: 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:4124 -#: 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:1794 -#: access/transam/xlog.c:3316 access/transam/xlog.c:3511 -#: access/transam/xlog.c:4304 access/transam/xlog.c:8655 -#: access/transam/xlog.c:8700 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:1331 storage/smgr/md.c:1376 -#: storage/sync/sync.c:446 utils/misc/guc.c:4530 +#: 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: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 +#: 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: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:852 ../common/psprintf.c:143 -#: ../common/scram-common.c:268 ../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:3558 postmaster/postmaster.c:4018 -#: postmaster/postmaster.c:4380 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:532 -#: utils/adt/pg_locale.c:696 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:4508 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: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/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/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:1159 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 실패" @@ -278,34 +281,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:654 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:782 +#: storage/ipc/waiteventset.c:962 storage/ipc/waiteventset.c:1202 +#: storage/ipc/waiteventset.c:1364 storage/ipc/waiteventset.c:1490 #, 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" @@ -315,51 +318,51 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 중복할 수 없음 (내부 오류)\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:700 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:3796 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:988 +#: replication/slot.c:2245 replication/slot.c:2387 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" @@ -368,87 +371,87 @@ msgstr "\"%s\" 파일을 \"%s\" 파일로 이름을 바꿀 수 없음: %m" 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 값은 text 형으로 변환할 수 없음." -#: ../common/jsonapi.c:2166 +#: ../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "\"\\u\" 표기법은 뒤에 4개의 16진수가 와야 합니다." -#: ../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." @@ -456,39 +459,43 @@ msgstr "" "서버 인코딩이 UTF8이 아닌 경우 007F보다 큰 코드 지점 값에는 유니코드 이스케이" "프 값을 사용할 수 없음" -#: ../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 "유니코드 이스케이프 값을 %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 "유니코드 상위 surrogate(딸림 코드)는 상위 딸림 코드 뒤에 오면 안됨." -#: ../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 "유니코드 상위 surrogate(딸림 코드) 뒤에는 하위 딸림 코드가 있어야 함." -#: ../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 "힌트: " @@ -583,7 +590,7 @@ msgstr "파일 이름을 디코딩할 수 없음" msgid "file size is not an integer" msgstr "파일 크기가 정수가 아님" -#: ../common/parse_manifest.c:699 backup/basebackup.c:870 +#: ../common/parse_manifest.c:699 backup/basebackup.c:872 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "알 수 없는 체크섬 알고리즘: \"%s\"" @@ -652,9 +659,9 @@ 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:4712 utils/misc/guc.c:6931 -#: utils/misc/guc.c:6972 +#: 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\"" @@ -715,22 +722,22 @@ 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:1733 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:4589 -#: 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: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: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" @@ -747,19 +754,24 @@ msgstr "저장 키를 인코드할 수 없음" 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" +"string buffer exceeds maximum allowed length (%zu bytes)\n" "\n" "Cannot enlarge string buffer containing %d bytes by %d more bytes.\n" msgstr "" -"메모리 부족\n" +"문자열 버퍼가 최대치 (%zu 바이트)를 초과했습니다.\n" "\n" "%d 바이트가 포함된 문자열 버퍼를 %d 바이트 더 확장할 수 없습니다.\n" @@ -768,7 +780,7 @@ msgstr "" msgid "could not look up effective user ID %ld: %s" msgstr "%ld UID를 찾을 수 없음: %s" -#: ../common/username.c:45 libpq/auth.c:1888 +#: ../common/username.c:45 msgid "user does not exist" msgstr "사용자 없음" @@ -807,12 +819,12 @@ msgstr "하위 프로그램은 %d 신호에 의해서 종료되었습니다: %s" 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 "" @@ -865,7 +877,7 @@ msgstr "" "바이러스 백신 프로그램, 백업 또는 유사한 소프트웨어가 데이터베이스 시스템을 " "방해할 수 있습니다." -#: ../port/path.c:775 +#: ../port/path.c:853 #, c-format msgid "could not get current working directory: %m\n" msgstr "현재 작업 디렉터리를 알 수 없음: %m\n" @@ -875,16 +887,6 @@ msgstr "현재 작업 디렉터리를 알 수 없음: %m\n" 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 "UID %d에 해당하는 로컬 사용자를 찾을 수 없음: %s" - -#: ../port/user.c:48 ../port/user.c:84 -#, c-format -msgid "local user with ID %d does not exist" -msgstr "%d OID에 해당하는 로컬 사용자가 없음" - #: ../port/win32security.c:62 #, c-format msgid "could not get SID for Administrators group: error code %lu\n" @@ -900,50 +902,52 @@ msgstr "PowerUsers 그룹의 SID를 가져올 수 없음: 오류 코드 %lu\n" 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 "\"%s\" 인덱스에서 BRIN 범위 요약 요청이 기록되지 못함, 해당 페이지: %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:190 statistics/attribute_stats.c:934 +#: 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 @@ -954,7 +958,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\"" @@ -970,9 +974,9 @@ msgstr "BRIN 인덱스 속상: 범위 지도가 연결되지 않음" msgid "unexpected page type 0x%04X in BRIN index \"%s\" block %u" msgstr "예상치 못한 0x%04X 페이지 타입: \"%s\" BRIN 인덱스 %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 " @@ -981,9 +985,9 @@ 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 " @@ -992,9 +996,9 @@ msgstr "" "\"%s\" 연산자 패밀리(접근 방법: %s)에 포함된 %s 함수가 잘못된 signature 지원 " "번호 %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 " @@ -1003,9 +1007,9 @@ 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 " @@ -1014,9 +1018,9 @@ msgstr "" "\"%s\" 연산자 패밀리(접근 방법: %s)에 %s 연산자가 잘못된 ORDER BY 명세를 사용" "합니다." -#: 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 " @@ -1024,8 +1028,8 @@ msgid "" 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 " @@ -1033,7 +1037,7 @@ msgid "" 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) " @@ -1042,38 +1046,40 @@ 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." +msgid "" +"Returned type %s does not match expected type %s in column \"%s\" (position " +"%d)." msgstr "" -"반환 자료형으로 %s 형을 지정했지만, 칼럼은 %s 자료형입니다. 해당 칼럼: %d 번" -"째 칼럼" +"반환 자료형으로 %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 " @@ -1081,12 +1087,12 @@ msgid "" 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)을 초과했습니다" @@ -1096,96 +1102,101 @@ msgstr "칼럼 개수(%d)가 최대값(%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 "인덱스 행(row)은 %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 "유효한 값: \"on\", \"off\", \"auto\"" -#: 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:1214 +#: 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\" enum 옵션 값이 잘못됨: %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 "" @@ -1231,27 +1242,28 @@ msgstr "다른 세션의 임시 인덱스는 접근할 수 없음" msgid "failed to re-find tuple within index \"%s\"" msgstr "\"%s\" 인덱스에서 튜플 재검색 실패" -#: access/gin/ginscan.c:431 +#: 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 +#, 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:2200 -#: 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 " @@ -1260,7 +1272,7 @@ 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 " @@ -1268,18 +1280,18 @@ msgid "" 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 " @@ -1288,8 +1300,8 @@ 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 @@ -1297,7 +1309,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" @@ -1316,19 +1328,19 @@ 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번째 블럭에서 예상치 않은 zero page가 있습니다" -#: 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 " @@ -1337,7 +1349,7 @@ msgstr "" "\"%s\" 연산자 패밀리(접근 방법: %s)에 %s 연산자가 지원하지 않는 ORDER BY 명세" "를 사용합니다." -#: access/gist/gistvalidate.c:213 +#: access/gist/gistvalidate.c:211 #, c-format msgid "" "operator family \"%s\" of access method %s contains incorrect ORDER BY " @@ -1346,19 +1358,20 @@ msgstr "" "\"%s\" 연산자 패밀리(접근 방법: %s)에 %s 연산자가 잘못된 ORDER BY 명세를 사용" "합니다." -#: 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 "문자열 해시 작업에 사용할 정렬규칙(collation)을 결정할 수 없음" -#: 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:2021 commands/tablecmds.c:18178 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: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 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." msgstr "명시적으로 정렬 규칙을 지정하려면 COLLATE 절을 사용하세요." @@ -1369,7 +1382,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 "버퍼 페이지보다 큰 값은 인덱싱할 수 없습니다." @@ -1384,7 +1397,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 "해시 인덱스는 whole-index scan을 지원하지 않음" @@ -1399,52 +1412,52 @@ 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)에 cross-type 연산자가 빠졌음" -#: access/heap/heapam.c:2204 +#: access/heap/heapam.c:2280 #, c-format msgid "cannot insert tuples in a parallel worker" msgstr "병렬 작업자는 튜플을 추가 할 수 없음" -#: access/heap/heapam.c:2723 +#: access/heap/heapam.c:2803 #, c-format msgid "cannot delete tuples during a parallel operation" msgstr "병렬 작업 중에는 튜플을 지울 수 없음" -#: access/heap/heapam.c:2770 +#: access/heap/heapam.c:2850 #, c-format msgid "attempted to delete invisible tuple" msgstr "볼 수 없는 튜플을 삭제 하려고 함" -#: access/heap/heapam.c:3218 access/heap/heapam.c:6454 access/index/genam.c:818 +#: access/heap/heapam.c:3300 access/index/genam.c:829 #, c-format msgid "cannot update tuples during a parallel operation" msgstr "병렬 작업 중에 튜플 갱신은 할 수 없음" -#: access/heap/heapam.c:3350 +#: access/heap/heapam.c:3477 #, c-format msgid "attempted to update invisible tuple" msgstr "볼 수 없는 튜플을 변경하려고 함" -#: access/heap/heapam.c:4861 access/heap/heapam.c:4899 -#: access/heap/heapam.c:5164 access/heap/heapam_handler.c:468 +#: access/heap/heapam.c:4988 access/heap/heapam.c:5026 +#: access/heap/heapam.c:5291 access/heap/heapam_handler.c:470 #, c-format msgid "could not obtain lock on row in relation \"%s\"" msgstr "\"%s\" 릴레이션의 잠금 정보를 구할 수 없음" -#: access/heap/heapam.c:6267 commands/trigger.c:3340 -#: executor/nodeModifyTable.c:2376 executor/nodeModifyTable.c:2467 +#: access/heap/heapam.c:6405 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 " @@ -1452,7 +1465,7 @@ msgid "" msgstr "" "현재 명령으로 실행된 트리거 작업으로 변경해야할 자료가 이미 바뀌었습니다." -#: access/heap/heapam_handler.c:413 +#: access/heap/heapam_handler.c:415 #, c-format msgid "" "tuple to be locked was already moved to another partition due to concurrent " @@ -1471,14 +1484,14 @@ 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:3255 access/transam/xlog.c:3446 -#: access/transam/xlog.c:4283 access/transam/xlog.c:9269 -#: 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:4111 -#: 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: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 +#: 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" @@ -1490,36 +1503,36 @@ 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:3305 access/transam/xlog.c:3502 -#: access/transam/xlog.c:4295 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:1655 -#: utils/init/miscinit.c:1666 utils/init/miscinit.c:1674 utils/misc/guc.c:4491 -#: utils/misc/guc.c:4522 utils/misc/guc.c:5675 utils/misc/guc.c:5693 -#: 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: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: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\": " @@ -1528,7 +1541,7 @@ msgstr "" "트랙젝션 ID 겹침 방지를 위한 적극적인 \"%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: " @@ -1536,90 +1549,108 @@ msgid "" msgstr "" "트랙젝션 ID 겹침 방지를 위한 \"%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" +"tuples: % removed, % remain, % are dead but not yet " +"removable\n" msgstr "" -"튜플: %.lld 삭제됨, %lld 남음, 아직 %lld 개의 튜플을 지워야하지만 못지웠음\n" +"튜플: % 삭제됨, % 남음, 아직 % 개의 튜플을 지워야하지" +"만 못지웠음\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 " +"tuples missed: % dead from %u pages not removed due to cleanup lock " "contention\n" msgstr "" -"놓친 튜플: %lld 개의 죽은 튜플이 %u 개의 페이지 안에 있음: cleanup 잠금 연결 " -"때문\n" +"놓친 튜플: % 개의 죽은 튜플이 %u 개의 페이지 안에 있음: cleanup 잠금 " +"충돌 때문\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, which was %d XIDs old when operation ended\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, which is %d XIDs ahead of previous value\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, which is %d MXIDs ahead of previous value\n" -#: access/heap/vacuumlazy.c:690 +#: access/heap/vacuumlazy.c:1054 #, c-format -msgid "frozen: %u pages from table (%.2f%% of total) had %lld tuples frozen\n" +msgid "" +"frozen: %u pages from table (%.2f%% of total) had % tuples frozen\n" msgstr "" -"영구보관: 테이블의 %u개 페이지(전체의 %.2f%%)에서 %lld 개의 튜플을 영구 보관" -"함\n" +"영구보관: 테이블의 %u개 페이지(전체의 %.2f%%)에서 % 개의 튜플을 영구 " +"보관함\n" + +#: access/heap/vacuumlazy.c:1062 +#, c-format +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 " +"%u pages from table (%.2f%% of total) had % dead item identifiers " "removed\n" msgstr "" -"테이블의 %u개 페이지(전체의 %.2f%%)에서 %lld 개의 죽은 항목 식별자를 지웠음\n" +"테이블의 %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 "failsafe의 의해 인덱스 검사 통과됨: " -#: 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" +msgid "" +"%u pages from table (%.2f%% of total) have % dead item identifiers\n" msgstr "" -"테이블의 %u 개 페이지(전체의 %.2f%%)에서 %lld 개의 죽은 항목 식별자가 있음\n" +"테이블의 %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 " @@ -1628,38 +1659,56 @@ 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 ms\n" + +#: access/heap/vacuumlazy.c:1121 commands/analyze.c:825 #, c-format msgid "I/O timings: read: %.3f ms, write: %.3f ms\n" msgstr "I/O 속도: 읽기: %.3f ms, 쓰기: %.3f ms\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 MB/s, 평균 쓰기 속도: %.3f MB/s\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 "버퍼 사용량: % hits, % reads, % dirtied\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 full page 이미지, %llu 바이트\n" +msgid "" +"WAL usage: % records, % full page images, % bytes, " +"% buffers full\n" +msgstr "" +"WAL 사용량: % 레코드, % full page 이미지, % 바이트, " +"% buffers full\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:2170 +#: access/heap/vacuumlazy.c:1432 #, c-format -msgid "table \"%s\": removed %lld dead item identifiers in %u pages" +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 % dead item identifiers in %u pages" msgstr "" -"\"%s\" 테이블: %lld 개의 죽은 항목 실별자를 %u 개의 페이지에서 삭제했음" +"\"%s\" 테이블: % 개의 죽은 항목 실별자를 %u 개의 페이지에서 삭제했음" -#: access/heap/vacuumlazy.c:2324 +#: access/heap/vacuumlazy.c:2982 #, c-format msgid "" "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after " @@ -1668,12 +1717,12 @@ msgstr "" "\"%s.%s.%s\" 테이블의 불필요한 관리 작업은 통과했음, %d 번의 인덱스 검사로 굳" "이 필요 없음" -#: access/heap/vacuumlazy.c:2327 +#: 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:2328 +#: access/heap/vacuumlazy.c:2986 #, c-format msgid "" "Consider increasing configuration parameter \"maintenance_work_mem\" or " @@ -1686,22 +1735,22 @@ msgstr "" "VACUUM 작업이 트랜잭션 ID가 증가하는 것을 따라 잡을 있는 다른 방법도 해 봐야 " "할 것 같습니다." -#: access/heap/vacuumlazy.c:2590 +#: access/heap/vacuumlazy.c:3248 #, c-format msgid "\"%s\": stopping truncate due to conflicting lock request" msgstr "\"%s\": 잠금 요청 충돌로 자료 비우기 작업을 중지합니다" -#: access/heap/vacuumlazy.c:2660 +#: access/heap/vacuumlazy.c:3318 #, c-format msgid "table \"%s\": truncated %u to %u pages" msgstr "\"%s\" 테이블: %u 에서 %u 페이지로 정리했음" -#: access/heap/vacuumlazy.c:2722 +#: access/heap/vacuumlazy.c:3380 #, c-format msgid "table \"%s\": suspending truncate due to conflicting lock request" msgstr "\"%s\" 테이블: 잠금 요청 충돌로 자료 비우기 작업이 지연되고 있음" -#: access/heap/vacuumlazy.c:2841 +#: access/heap/vacuumlazy.c:3499 #, c-format msgid "" "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary " @@ -1710,47 +1759,47 @@ msgstr "" "\"%s\" 청소 작업에서의 병렬 옵션은 무시함 --- 임시 테이블은 병렬 처리로 청소 " "할 수 없음" -#: access/heap/vacuumlazy.c:3108 +#: access/heap/vacuumlazy.c:3766 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "%u 블록 %u 오프셋 탐색 중 (해당 릴레이션: \"%s.%s\")" -#: access/heap/vacuumlazy.c:3111 +#: access/heap/vacuumlazy.c:3769 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "%u 블록(해당 릴레이션: \"%s.%s\")을 탐색 중" -#: access/heap/vacuumlazy.c:3115 +#: access/heap/vacuumlazy.c:3773 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "\"%s.%s\" 릴레이션을 탐색 중" -#: access/heap/vacuumlazy.c:3123 +#: access/heap/vacuumlazy.c:3781 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "%u 블록 %u 오프셋 청소 중 (해당 릴레이션: \"%s.%s\")" -#: access/heap/vacuumlazy.c:3126 +#: access/heap/vacuumlazy.c:3784 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "%u 블록(해당 릴레이션: \"%s.%s\")을 청소 중" -#: access/heap/vacuumlazy.c:3130 +#: access/heap/vacuumlazy.c:3788 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "\"%s.%s\" 릴레이션 청소 중" -#: access/heap/vacuumlazy.c:3135 commands/vacuumparallel.c:1112 +#: access/heap/vacuumlazy.c:3793 commands/vacuumparallel.c:1126 #, c-format msgid "while vacuuming index \"%s\" of relation \"%s.%s\"" msgstr "\"%s\" 인덱스(해당 릴레이션 \"%s.%s\") 청소 중" -#: access/heap/vacuumlazy.c:3140 commands/vacuumparallel.c:1118 +#: access/heap/vacuumlazy.c:3798 commands/vacuumparallel.c:1132 #, c-format msgid "while cleaning up index \"%s\" of relation \"%s.%s\"" msgstr "\"%s\" 인덱스 (해당 릴레이션 \"%s.%s\")을 정돈(clean up) 중" -#: access/heap/vacuumlazy.c:3146 +#: access/heap/vacuumlazy.c:3804 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "\"%s.%s\" 릴레이션을 %u 블럭으로 줄이는 중" @@ -1765,24 +1814,24 @@ msgstr "\"%s\" 접근 방법은 %s 자료형에는 쓸 수 없음" msgid "index access method \"%s\" does not have a handler" msgstr "\"%s\" 인덱스 접근 방법에 대한 핸들러가 없음" -#: access/index/genam.c:489 +#: access/index/genam.c:498 #, c-format msgid "transaction aborted during system catalog scan" msgstr "시스템 카탈로그 탐색 중 트랜잭션 중지됨" -#: access/index/genam.c:657 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 "reindex 시작할 때는 \"%s\" 인덱스를 접근할 없음" -#: access/index/indexam.c:203 catalog/objectaddress.c:1356 -#: commands/indexcmds.c:2851 commands/tablecmds.c:281 commands/tablecmds.c:305 -#: commands/tablecmds.c:17873 commands/tablecmds.c:19740 +#: 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 #, 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 연산자 클래스는 옵션이 없습니다" @@ -1803,7 +1852,7 @@ msgid "This may be because of a non-immutable index expression." msgstr "이 문제는 non-immutable 인덱스 표현식 때문인듯 합니다." #: 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\" 인덱스는 btree 인덱스가 아닙니다" @@ -1831,7 +1880,7 @@ msgstr "" "이 문제는 9.3 버전 이하 환경에서 VACUUM 작업이 중지되고, 그 상태로 업그레이드" "되었을 가능성이 큽니다. 해당 인덱스를 다시 만드십시오." -#: access/nbtree/nbtutils.c:5108 +#: access/nbtree/nbtutils.c:4196 #, c-format msgid "" "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" @@ -1839,12 +1888,12 @@ msgstr "" "인덱스 행 크기(%zu)가 btree(%u 버전)의 최대값(%zu)을 초과함 (해당 인덱스: " "\"%s\")" -#: access/nbtree/nbtutils.c:5114 +#: access/nbtree/nbtutils.c:4201 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "인덱스 로우가 %u,%u 튜플(해당 릴레이션 \"%s\")을 참조함." -#: access/nbtree/nbtutils.c:5118 +#: access/nbtree/nbtutils.c:4205 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -1854,7 +1903,7 @@ 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 " @@ -1869,23 +1918,23 @@ msgstr "" 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 "%s 형이 SP-GiST 리프 자료형인데, 선언은 %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 " @@ -1894,27 +1943,27 @@ 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:4879 #, 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\" 테이블 접근 방법이 없습니다." @@ -1945,7 +1994,7 @@ msgstr "운영 서버에서 \"%s\" 환경 설정 매개 변수를 설정했는 msgid "Make sure the configuration parameter \"%s\" is set." msgstr "\"%s\" 환경 설정 매개 변수를 지정하세요." -#: access/transam/multixact.c:1091 +#: access/transam/multixact.c:1097 #, c-format msgid "" "database is not accepting commands that assign new MultiXactIds to avoid " @@ -1954,8 +2003,8 @@ msgstr "" "\"%s\" 데이터베이스 자료 손실을 막기 위해 새로운 MultiXactId 만드는 작업을 " "더 이상 할 수 없습니다." -#: access/transam/multixact.c:1093 access/transam/multixact.c:1100 -#: access/transam/multixact.c:1124 access/transam/multixact.c:1133 +#: 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 #, c-format msgid "" @@ -1967,7 +2016,7 @@ msgstr "" "또한 오래된 트랜잭션을 커밋 또는 롤백하거나 잠긴 복제 슬롯을 지울 필요가 있습" "니다." -#: access/transam/multixact.c:1098 +#: access/transam/multixact.c:1104 #, c-format msgid "" "database is not accepting commands that assign new MultiXactIds to avoid " @@ -1976,7 +2025,7 @@ msgstr "" "%u OID 데이터베이스 자료 손실을 막기 위해 새로운 MultiXactId 만드는 작업을 " "더 이상 할 수 없습니다." -#: access/transam/multixact.c:1119 access/transam/multixact.c:2474 +#: access/transam/multixact.c:1125 access/transam/multixact.c:2482 #, c-format msgid "database \"%s\" must be vacuumed before %u more MultiXactId is used" msgid_plural "" @@ -1985,7 +2034,7 @@ msgstr[0] "" "\"%s\" 데이터베이스는 %u번의 트랜잭션이 발생되기 전에 VACUUM 작업을 해야 합니" "다." -#: access/transam/multixact.c:1128 access/transam/multixact.c:2483 +#: access/transam/multixact.c:1134 access/transam/multixact.c:2491 #, c-format msgid "" "database with OID %u must be vacuumed before %u more MultiXactId is used" @@ -1995,12 +2044,12 @@ msgstr[0] "" "%u OID 데이터베이스는 %u번의 트랜잭션이 발생되기 전에 VACUUM 작업을 해야 합니" "다." -#: access/transam/multixact.c:1189 +#: access/transam/multixact.c:1195 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "multixact \"회수\" 초과" -#: access/transam/multixact.c:1190 +#: access/transam/multixact.c:1196 #, c-format msgid "" "This command would create a multixact with %u members, but the remaining " @@ -2011,17 +2060,17 @@ msgid_plural "" msgstr[0] "" "이 명령은 %u 개의 multixact를 써야하는데, 쓸 수 있는 공간은 %u 개 뿐입니다." -#: access/transam/multixact.c:1195 +#: access/transam/multixact.c:1201 #, 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." +"\"vacuum_multixact_freeze_min_age\" and \"vacuum_multixact_freeze_table_age" +"\" settings." msgstr "" "\"vacuum_multixact_freeze_min_age\", \"vacuum_multixact_freeze_table_age\" 값" "을 조정하고, %u OID 데이터베이스 대상으로 VACUUM 작업을 하십시오." -#: access/transam/multixact.c:1226 +#: access/transam/multixact.c:1232 #, c-format msgid "" "database with OID %u must be vacuumed before %d more multixact member is used" @@ -2032,28 +2081,28 @@ msgstr[0] "" "%u OID 데이터베이스는 %d 개의 멀티트랜잭션을 사용하기 전에 vacuum 작업을 해" "야 합니다." -#: access/transam/multixact.c:1231 +#: access/transam/multixact.c:1237 #, 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." +"\"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:1371 +#: access/transam/multixact.c:1377 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "%u번 MultiXactId 더이상 없음 -- 번호 겹침 현상 발생" -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1383 #, c-format msgid "MultiXactId %u has not been created yet -- apparent wraparound" msgstr "%u번 MultiXactId를 만들 수 없음 -- 번호 겹침 현상 발생" -#: access/transam/multixact.c:2479 access/transam/multixact.c:2488 +#: access/transam/multixact.c:2487 access/transam/multixact.c:2496 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in " @@ -2066,7 +2115,7 @@ msgstr "" "또한 오래된 트랜잭션을 커밋 또는 롤백 하거나, 잠긴 복제 슬롯을 지울 필요가 있" "습니다." -#: access/transam/multixact.c:2767 +#: access/transam/multixact.c:2775 #, c-format msgid "" "MultiXact member wraparound protections are disabled because oldest " @@ -2075,19 +2124,19 @@ msgstr "" "가장 오래된 체크포인트 작업이 완료된 %u 멀티 트랜잭션 번호가 디스크에 없기 때" "문에, 멀티 트랜잭션 번호 겹침 방지 기능이 비활성화 되어 있습니다." -#: access/transam/multixact.c:2789 +#: access/transam/multixact.c:2797 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "멀티 트랜잭션 번호 겹침 방지 기능이 활성화 되었음" -#: access/transam/multixact.c:3180 +#: access/transam/multixact.c:3188 #, c-format msgid "" "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" msgstr "" "가장 오래된 멀티 트랜잭션 번호는 %u, 가장 최신 것은 %u, truncate 작업 건너뜀" -#: access/transam/multixact.c:3198 +#: access/transam/multixact.c:3206 #, c-format msgid "" "cannot truncate up to MultiXact %u because it does not exist on disk, " @@ -2096,41 +2145,41 @@ msgstr "" "디스크에 해당 멀티 트랜잭션 번호가 없어, %u 멀티 트랜잭션 번호로 truncate 못" "함, truncate 작업 건너뜀" -#: access/transam/multixact.c:3517 +#: access/transam/multixact.c:3525 #, c-format msgid "invalid MultiXactId: %u" msgstr "잘못된 MultiXactId: %u" -#: access/transam/parallel.c:748 access/transam/parallel.c:867 +#: access/transam/parallel.c:752 access/transam/parallel.c:871 #, c-format msgid "parallel worker failed to initialize" msgstr "병렬 작업자 초기화 실패" -#: access/transam/parallel.c:749 access/transam/parallel.c:868 +#: access/transam/parallel.c:753 access/transam/parallel.c:872 #, c-format msgid "More details may be available in the server log." msgstr "보다 자세한 내용은 서버 로그에 남겨졌을 수 있습니다." -#: access/transam/parallel.c:929 +#: access/transam/parallel.c:933 #, c-format msgid "postmaster exited during a parallel transaction" msgstr "병렬 트랜잭션 처리 중 postmaster 종료됨" -#: access/transam/parallel.c:1116 +#: access/transam/parallel.c:1120 #, c-format msgid "lost connection to parallel worker" msgstr "병렬 처리 작업자 프로세스 연결 끊김" -#: access/transam/parallel.c:1172 access/transam/parallel.c:1174 +#: access/transam/parallel.c:1176 access/transam/parallel.c:1178 msgid "parallel worker" msgstr "병렬 처리 작업자" -#: access/transam/parallel.c:1344 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 #, c-format msgid "could not map dynamic shared memory segment" msgstr "동적 공유 메모리 세그먼트를 할당할 수 없음" -#: access/transam/parallel.c:1349 replication/logical/applyparallelworker.c:896 +#: access/transam/parallel.c:1353 replication/logical/applyparallelworker.c:896 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "동적 공유 메모리 세그먼트에 잘못된 매직 번호가 있음" @@ -2201,63 +2250,63 @@ msgstr "\"%s\" 사용자 정의 자원 관리자가 %d ID로 등록됨" #: access/transam/slru.c:361 #, c-format -msgid "\"%s\" must be a multiple of %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\" 파일 없음, 0으로 읽음" -#: 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\" 파일 fsync 실패: %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\" 디렉터리를 비울 수 없음: 랩어라운드 발생" @@ -2322,12 +2371,12 @@ msgstr "\"max_prepared_transactions\" 설정값을 0이 아닌 값으로 설정 msgid "transaction identifier \"%s\" is already in use" msgstr "\"%s\" 이름의 트랜잭션 식별자가 이미 사용 중입니다" -#: access/transam/twophase.c:404 access/transam/twophase.c:2547 +#: 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:2548 +#: access/transam/twophase.c:405 access/transam/twophase.c:2531 #, c-format msgid "Increase \"max_prepared_transactions\" (currently %d)." msgstr "\"max_prepared_transactions\" 값을 늘려주세요 (현재 %d)." @@ -2363,70 +2412,70 @@ 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" msgstr[0] "\"%s\" 파일 크기가 이상함: %lld 바이트" -#: access/transam/twophase.c:1354 +#: access/transam/twophase.c:1338 #, c-format msgid "incorrect alignment of CRC offset for file \"%s\"" msgstr "\"%s\" 파일의 CRC 값 맞춤 실패" -#: 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:571 +#: postmaster/walsummarizer.c:939 replication/logical/logical.c:213 +#: replication/walsender.c:812 #, c-format msgid "Failed while allocating a WAL reading processor." msgstr "WAL 읽기 프로세서를 할당하는 중에 오류 발생" -#: 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 "two-phase 상태정보을 읽을 수 없음 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 "two-phase 상태정보을 읽을 수 없음 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 "WAL %X/%X 위치에 2단계 커밋 상태 자료가 없습니다" -#: access/transam/twophase.c:1761 +#: access/transam/twophase.c:1744 #, c-format msgid "could not recreate file \"%s\": %m" msgstr "\"%s\" 파일을 다시 만들 수 없음: %m" -#: access/transam/twophase.c:1888 +#: access/transam/twophase.c:1871 #, c-format msgid "" "%u two-phase state file was written for a long-running prepared transaction" @@ -2435,48 +2484,48 @@ msgid_plural "" msgstr[0] "" "긴 실행 미리 준비된 트랜잭션 용 %u 개의 2단계 상태 파일이 저장되었음" -#: access/transam/twophase.c:2123 +#: access/transam/twophase.c:2106 #, c-format msgid "recovering prepared transaction %u from shared memory" msgstr "공유 메모리에서 %u 준비된 트랜잭션을 복구함" -#: access/transam/twophase.c:2216 +#: access/transam/twophase.c:2199 #, c-format msgid "removing stale two-phase state file for transaction %u" msgstr "%u 트랜잭션에서 사용하는 오래된 two-phase 상태정보 파일을 삭제함" -#: access/transam/twophase.c:2223 +#: access/transam/twophase.c:2206 #, c-format msgid "removing stale two-phase state from memory for transaction %u" msgstr "" "%u 트랜잭션에서 사용하는 오래된 two-phase 상태정보를 공유 메모리에서 삭제함" -#: access/transam/twophase.c:2236 +#: access/transam/twophase.c:2219 #, c-format msgid "removing future two-phase state file for transaction %u" msgstr "%u 트랜잭션에서 사용하는 future two-phase 상태정보 파일을 삭제함" -#: access/transam/twophase.c:2243 +#: access/transam/twophase.c:2226 #, c-format msgid "removing future two-phase state from memory for transaction %u" msgstr "%u 트랜잭션에서 사용하는 future two-phase 상태정보를 메모리에서 삭제함" -#: access/transam/twophase.c:2268 +#: access/transam/twophase.c:2251 #, c-format msgid "corrupted two-phase state file for transaction %u" msgstr "%u 트랜잭션에서 사용하는 two-phase 상태정보 파일이 손상되었음" -#: access/transam/twophase.c:2273 +#: access/transam/twophase.c:2256 #, c-format msgid "corrupted two-phase state in memory for transaction %u" msgstr "%u 트랜잭션에서 사용하는 메모리에 있는 two-phase 상태정보가 손상되었음" -#: access/transam/twophase.c:2530 +#: access/transam/twophase.c:2513 #, c-format msgid "could not recover two-phase state file for transaction %u" msgstr "%u 트랜잭션에서 사용하는 two-phase 상태정보 파일을 복구할 없음" -#: access/transam/twophase.c:2532 +#: access/transam/twophase.c:2515 #, c-format msgid "" "Two-phase state file has been found in WAL record %X/%X, but this " @@ -2485,7 +2534,7 @@ msgstr "" "WAL 레코드 %X/%X 에서 2PC 상태 파일을 찾았지만, 그 트랜잭션은 이미 디스크에 " "기록한 상태입니다." -#: access/transam/twophase.c:2540 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" @@ -2544,134 +2593,128 @@ msgstr "" "또한 오래된 트랜잭션을 커밋 또는 롤백 하거나, 잠긴 복제 슬롯을 지울 필요가 있" "습니다." -#: access/transam/xact.c:649 +#: access/transam/xact.c:652 #, c-format msgid "cannot assign transaction IDs during a parallel operation" msgstr "병렬 처리 중에는 트랜잭션 ID를 지정할 수 없음" -#: 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 "데이터베이스 트랜잭션을 commit 할 수 없음" -#: 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 "병렬 작업 중에는 savepoint 지정을 할 수 없음" -#: access/transam/xact.c:4423 +#: access/transam/xact.c:4474 #, c-format msgid "cannot release savepoints during a parallel operation" msgstr "병렬 작업 중에는 savepoint를 지울 수 없음" -#: 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 "병렬 작업 중에는 savepoint 지정 취소 작업을 할 수 없음" -#: 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:1542 +#: 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의 끝을 지난 flush 요청, 요청위치: %X/%X, 현재위치: %X/%X" -#: access/transam/xlog.c:1769 +#: access/transam/xlog.c:1772 #, c-format msgid "" "cannot read past end of generated WAL: requested %X/%X, current position %X/" @@ -2679,67 +2722,62 @@ msgid "" msgstr "" "생성된 WAL의 끝을 지나서 읽을 수 없음: 요청위치: %X/%X, 현재위치: %X/%X" -#: access/transam/xlog.c:2210 access/transam/xlog.c:4501 +#: 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 조각 파일은 1MB부터 1GB 사이 2^n 크기여야 합니다." -#: access/transam/xlog.c:2228 -#, c-format -msgid "\"%s\" must be set to -1 during binary upgrade mode." -msgstr "바이너리 업그레이드 모드 중는 \"%s\" 값은 -1이어야 합니다." - -#: access/transam/xlog.c:2477 +#: 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:3739 access/transam/xlogutils.c:831 -#: replication/walsender.c:3045 +#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 +#: replication/walsender.c:3074 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "요청한 %s WAL 조각 파일은 이미 지워졌음" -#: access/transam/xlog.c:4061 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "\"%s\" 파일의 이름을 바꿀 수 없음: %m" -#: access/transam/xlog.c:4104 access/transam/xlog.c:4115 -#: access/transam/xlog.c:4136 +#: 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:4121 access/transam/xlog.c:4142 +#: 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:4125 access/transam/xlog.c:4145 -#: commands/dbcommands.c:3262 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 +#: commands/dbcommands.c:3301 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "누락된 \"%s\" 디렉터리를 만들 수 없음: %m" -#: access/transam/xlog.c:4212 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "비밀 인증 토큰을 만들 수 없음" -#: access/transam/xlog.c:4363 access/transam/xlog.c:4373 -#: access/transam/xlog.c:4399 access/transam/xlog.c:4407 -#: access/transam/xlog.c:4415 access/transam/xlog.c:4421 -#: access/transam/xlog.c:4429 access/transam/xlog.c:4437 -#: access/transam/xlog.c:4445 access/transam/xlog.c:4453 -#: access/transam/xlog.c:4461 access/transam/xlog.c:4469 -#: access/transam/xlog.c:4479 access/transam/xlog.c:4487 -#: utils/init/miscinit.c:1812 +#: 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:4364 +#: access/transam/xlog.c:4393 #, c-format msgid "" "The database cluster was initialized with PG_CONTROL_VERSION %d (0x%08x), " @@ -2748,7 +2786,7 @@ msgstr "" "데이터베이스 클러스터는 PG_CONTROL_VERSION %d (0x%08x)(으)로 초기화되었지만 " "서버는 PG_CONTROL_VERSION %d (0x%08x)(으)로 컴파일되었습니다." -#: access/transam/xlog.c:4368 +#: access/transam/xlog.c:4397 #, c-format msgid "" "This could be a problem of mismatched byte ordering. It looks like you need " @@ -2756,7 +2794,7 @@ msgid "" msgstr "" "이것은 바이트 순서 불일치 문제일 수 있습니다. initdb 작업이 필요해 보입니다." -#: access/transam/xlog.c:4374 +#: access/transam/xlog.c:4403 #, c-format msgid "" "The database cluster was initialized with PG_CONTROL_VERSION %d, but the " @@ -2765,36 +2803,32 @@ msgstr "" "이 데이터베이스 클러스터는 PG_CONTROL_VERSION %d 버전으로 초기화 되었지만, 서" "버는 PG_CONTROL_VERSION %d 버전으로 컴파일 되어있습니다." -#: access/transam/xlog.c:4377 access/transam/xlog.c:4403 -#: access/transam/xlog.c:4411 access/transam/xlog.c:4417 +#: 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:4389 +#: access/transam/xlog.c:4418 #, c-format msgid "incorrect checksum in control file" msgstr "컨트롤 파일에 잘못된 체크섬 값이 있습니다" -#: access/transam/xlog.c:4400 -#, 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:4408 +#. 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." +"The database cluster was initialized with %s %d, but the server was compiled " +"with %s %d." msgstr "" -"이 데이터베이스 클러스터는 MAXALIGN %d (으)로 초기화 되었지만, 서버는 " -"MAXALIGN %d (으)로 컴파일 되어있습니다." +"이 데이터베이스 클러스터는 %s %d (으)로 초기화 되었지만, 서버는 %s %d (으)로 " +"컴파일 되어있습니다." -#: access/transam/xlog.c:4416 +#: access/transam/xlog.c:4449 #, c-format msgid "" "The database cluster appears to use a different floating-point number format " @@ -2803,81 +2837,18 @@ msgstr "" "데이터베이스 클러스터와 서버 실행 파일이 서로 다른 부동 소수점 숫자 형식을 사" "용하고 있습니다." -#: access/transam/xlog.c:4422 -#, 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:4425 access/transam/xlog.c:4433 -#: access/transam/xlog.c:4441 access/transam/xlog.c:4449 -#: access/transam/xlog.c:4457 access/transam/xlog.c:4465 -#: access/transam/xlog.c:4473 access/transam/xlog.c:4482 -#: access/transam/xlog.c:4490 +#: 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:4430 -#, c-format -msgid "" -"The database cluster was initialized with RELSEG_SIZE %d, but the server was " -"compiled with RELSEG_SIZE %d." -msgstr "" -"이 데이터베이스 클러스터는 RELSEG_SIZE %d (으)로 초기화 되었지만, 서버는 " -"RELSEG_SIZE %d (으)로 컴파일 되어있습니다." - -#: access/transam/xlog.c:4438 -#, 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:4446 -#, 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:4454 -#, 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:4462 -#, 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:4470 -#, 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:4480 +#: access/transam/xlog.c:4527 #, c-format msgid "" "The database cluster was initialized without USE_FLOAT8_BYVAL but the server " @@ -2886,7 +2857,7 @@ msgstr "" "데이터베이스 클러스터는 USE_FLOAT8_BYVAL 없이 초기화되었지만, 서버는 " "USE_FLOAT8_BYVAL을 사용하여 컴파일되었습니다." -#: access/transam/xlog.c:4488 +#: access/transam/xlog.c:4535 #, c-format msgid "" "The database cluster was initialized with USE_FLOAT8_BYVAL but the server " @@ -2895,51 +2866,47 @@ msgstr "" "데이터베이스 클러스터는 USE_FLOAT8_BYVAL을 사용하여 초기화되었지만, 서버는 " "USE_FLOAT8_BYVAL 없이 컴파일되었습니다." -#: access/transam/xlog.c:4497 +#: 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)" msgstr[0] "컨트롤 파일 안 잘못된 WAL 조각 크기 (%d 바이트)" -#: access/transam/xlog.c:4510 -#, c-format -msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" -msgstr "\"min_wal_size\" 값은 \"wal_segment_size\" 값의 최소 2배 이상이어야 함" - -#: access/transam/xlog.c:4514 +#. 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\" 값은 \"wal_segment_size\" 값의 최소 2배 이상이어야 함" +msgid "\"%s\" must be at least twice \"%s\"" +msgstr "\"%s\" 값은 \"%s\"의 배수여야 함" -#: access/transam/xlog.c:4662 catalog/namespace.c:4696 -#: 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: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 #, c-format msgid "List syntax is invalid." msgstr "목록 문법이 틀렸습니다." -#: access/transam/xlog.c:4708 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:2558 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:5129 +#: access/transam/xlog.c:5195 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "bootstrap 트랜잭션 로그 파일을 쓸 수 없음: %m" -#: access/transam/xlog.c:5137 +#: access/transam/xlog.c:5203 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "bootstrap 트랜잭션 로그 파일을 fsync할 수 없음: %m" -#: access/transam/xlog.c:5143 +#: access/transam/xlog.c:5209 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "bootstrap 트랜잭션 로그 파일을 닫을 수 없음: %m" -#: access/transam/xlog.c:5368 +#: access/transam/xlog.c:5434 #, c-format msgid "" "WAL was generated with \"wal_level=minimal\", cannot continue recovering" @@ -2947,7 +2914,7 @@ msgstr "" "WAL 내용이 \"wal_level=minimal\" 설정으로 만들여졌습니다. 복구 작업을 계속 " "할 수 없음" -#: access/transam/xlog.c:5369 +#: access/transam/xlog.c:5435 #, c-format msgid "" "This happens if you temporarily set \"wal_level=minimal\" on the server." @@ -2955,40 +2922,40 @@ msgstr "" "이 문제는 서버가 일시적으로 \"wal_level=minimal\" 설정으로 운영된 적이 있다" "면 발생합니다." -#: access/transam/xlog.c:5370 +#: 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:5435 +#: access/transam/xlog.c:5501 #, c-format msgid "control file contains invalid checkpoint location" msgstr "컨트롤 파일에 잘못된 체크포인트 위치가 있습니다" -#: access/transam/xlog.c:5446 +#: access/transam/xlog.c:5512 #, c-format msgid "database system was shut down at %s" msgstr "데이터베이스 시스템 마지막 가동 중지 시각: %s" -#: access/transam/xlog.c:5452 +#: access/transam/xlog.c:5518 #, c-format msgid "database system was shut down in recovery at %s" msgstr "복구 중 데이터베이스 시스템 마지막 가동 중지 시각: %s" -#: access/transam/xlog.c:5458 +#: access/transam/xlog.c:5524 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "" "데이터베이스 시스템 셧다운 작업이 비정상적으로 종료되었음; 마지막 운영시간: " "%s" -#: access/transam/xlog.c:5464 +#: access/transam/xlog.c:5530 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "데이터베이스 시스템 복구하는 도중 비정상적으로 가동 중지된 시각: %s" -#: access/transam/xlog.c:5466 +#: access/transam/xlog.c:5532 #, c-format msgid "" "This probably means that some data is corrupted and you will have to use the " @@ -2997,12 +2964,12 @@ msgstr "" "이 사태는 몇몇 데이터가 손상되었을 의미할 수도 있습니다. 확인해 보고, 필요하" "다면, 마지막 백업 자료로 복구해서 사용하세요." -#: access/transam/xlog.c:5472 +#: 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:5474 +#: access/transam/xlog.c:5540 #, c-format msgid "" "If this has occurred more than once some data might be corrupted and you " @@ -3011,22 +2978,22 @@ msgstr "" "이 사태로 몇몇 자료가 손상되었을 수도 있는데, 이런 경우라면,확인해 보고, 필요" "하다면, 마지막 백업 자료로 복구해서 사용하세요." -#: access/transam/xlog.c:5480 +#: access/transam/xlog.c:5546 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "데이터베이스 시스템이 비정상적으로 종료되었음; 마지막 운영시간: %s" -#: access/transam/xlog.c:5487 +#: access/transam/xlog.c:5553 #, c-format msgid "control file contains invalid database cluster state" msgstr "컨트롤 파일에 잘못된 데이터베이스 클러스터 상태값이 있습니다" -#: access/transam/xlog.c:5875 +#: access/transam/xlog.c:5941 #, c-format msgid "WAL ends before end of online backup" msgstr "온라인 백업 작업 끝나기전에 WAL 작업 종료됨" -#: access/transam/xlog.c:5876 +#: access/transam/xlog.c:5942 #, c-format msgid "" "All WAL generated while online backup was taken must be available at " @@ -3035,121 +3002,124 @@ msgstr "" "온라인 백업 중 만들어진 WAL 조각 파일은 복구 작업에서 반드시 모두 있어야 합니" "다." -#: access/transam/xlog.c:5880 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL이 일치하는 복구 지점 앞에서 종료됨" -#: access/transam/xlog.c:5926 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "지정한 새 타임라인 ID: %u" -#: access/transam/xlog.c:5959 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "아카이브 복구 완료" -#: access/transam/xlog.c:6612 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "서비스를 멈추고 있습니다" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6651 +#: access/transam/xlog.c:6693 #, c-format msgid "restartpoint starting:%s%s%s%s%s%s%s%s" msgstr "restartpoint 시작:%s%s%s%s%s%s%s%s" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6663 +#: 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:6728 +#: 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" +"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 작업완료: %d개(%.1f%%) 버퍼 씀; %d개 WAL 파일 추가됨, %d개 지웠" -"음, %d개 재활용; 쓰기시간: %ld.%03d s, 동기화시간: %ld.%03d s, 전체시간: %ld." -"%03d s; 동기화 파일 개수: %d, 최장시간: %ld.%03d s, 평균시간: %ld.%03d s; 실" -"제작업량: %d kB, 예상한작업량: %d kB; lsn=%X/%X, redo lsn=%X/%X" +"restartpoint 작업완료: %d개(%.1f%%) 버퍼 씀, %d개 SLRU 버퍼 씀; %d개 WAL 파" +"일 추가됨, %d개 지웠음, %d개 재활용; 쓰기시간: %ld.%03d s, 동기화시간: %ld." +"%03d s, 전체시간: %ld.%03d s; 동기화 파일 개수: %d, 최장시간: %ld.%03d s, 평" +"균시간: %ld.%03d s; 실제작업량: %d kB, 예상한작업량: %d kB; lsn=%X/%X, redo " +"lsn=%X/%X" -#: access/transam/xlog.c:6751 +#: 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" +"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개 WAL 파일 추가됨, %d개 지웠" -"음, %d개 재활용; 쓰기시간: %ld.%03d s, 동기화시간: %ld.%03d s, 전체시간: %ld." -"%03d s; 동기화 파일 개수: %d, 최장시간: %ld.%03d s, 평균시간: %ld.%03d s; 실" -"제작업량: %d kB, 예상한작업량: %d kB; lsn=%X/%X, redo lsn=%X/%X" +"채크포인트 작업완료: %d개(%.1f%%) 버퍼 씀, %d개 SLRU 버퍼 씀; %d개 WAL 파일 " +"추가됨, %d개 지웠음, %d개 재활용; 쓰기시간: %ld.%03d s, 동기화시간: %ld.%03d " +"s, 전체시간: %ld.%03d s; 동기화 파일 개수: %d, 최장시간: %ld.%03d s, 평균시" +"간: %ld.%03d s; 실제작업량: %d kB, 예상한작업량: %d kB; lsn=%X/%X, redo lsn=" +"%X/%X" -#: access/transam/xlog.c:7233 +#: access/transam/xlog.c:7280 #, c-format msgid "" "concurrent write-ahead log activity while database system is shutting down" msgstr "데이터베이스 시스템이 중지되는 동안 동시 트랜잭션 로그가 활성화 되었음" -#: access/transam/xlog.c:7818 +#: access/transam/xlog.c:7871 #, c-format msgid "recovery restart point at %X/%X" msgstr "%X/%X에서 복구 작업 시작함" -#: access/transam/xlog.c:7820 +#: access/transam/xlog.c:7873 #, c-format msgid "Last completed transaction was at log time %s." msgstr "마지막 완료된 트랜잭션 기록 시간은 %s 입니다." -#: access/transam/xlog.c:8082 +#: access/transam/xlog.c:8137 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "\"%s\" 이름의 복구 위치는 %X/%X에 만들었음" -#: access/transam/xlog.c:8289 +#: access/transam/xlog.c:8344 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "온라인 백어이 취소되었음, 복구를 계속 할 수 없음" -#: access/transam/xlog.c:8347 +#: 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:8405 +#: 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:8434 +#: 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:8705 +#: access/transam/xlog.c:8775 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "\"%s\" write-through 파일을 fsync할 수 없음: %m" -#: access/transam/xlog.c:8710 +#: access/transam/xlog.c:8780 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "\"%s\" 파일 fdatasync 실패: %m" -#: access/transam/xlog.c:8797 access/transam/xlog.c:9133 +#: 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:8798 access/transam/xlogfuncs.c:248 +#: 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." @@ -3157,12 +3127,12 @@ msgstr "" "\"wal_level\" 값을 \"replica\" 또는 \"logical\"로 지정하고 서버를 실행하십시" "오." -#: access/transam/xlog.c:8803 +#: access/transam/xlog.c:8863 #, c-format msgid "backup label too long (max %d bytes)" msgstr "백업 라벨 이름이 너무 긺(최대 %d 바이트)" -#: access/transam/xlog.c:8924 +#: access/transam/xlog.c:8984 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed since last " @@ -3171,7 +3141,7 @@ msgstr "" "마지막 재시작 위치부터 재반영된 WAL 내용이 \"full_page_writes=off\" 설정으로 " "만들어진 내용입니다." -#: access/transam/xlog.c:8926 access/transam/xlog.c:9222 +#: 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 " @@ -3182,28 +3152,22 @@ msgstr "" "\"full_page_writes\" 설정을 활성화 하고, 주 서버에서 CHECKPOINT 명령을 실행하" "고, 온라인 백업을 다시 해서 사용하세요." -#: access/transam/xlog.c:9006 backup/basebackup.c:1417 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:9013 backup/basebackup.c:1422 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:9134 -#, c-format -msgid "wal_level must be set to \"replica\" or \"logical\" at server start." -msgstr "" -"wal_level 값을 \"replica\" 또는 \"logical\"로 지정하고 서버를 실행하십시오." - -#: access/transam/xlog.c:9172 backup/basebackup.c:1281 +#: access/transam/xlog.c:9232 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "대기 서버가 온라인 백업 중 주 서버로 전환되었습니다" -#: access/transam/xlog.c:9173 backup/basebackup.c:1282 +#: 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. " @@ -3212,7 +3176,7 @@ msgstr "" "이런 경우, 해당 백업 자료가 손상되었을 가능성이 있습니다. 다른 백업본을 이용" "하세요." -#: access/transam/xlog.c:9220 +#: access/transam/xlog.c:9280 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed during online backup" @@ -3220,14 +3184,14 @@ msgstr "" "온라인 백업 도중 \"full_page_writes=off\" 설정으로 만들어진 WAL 내용이 재반영" "되었습니다." -#: access/transam/xlog.c:9336 +#: 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:9350 +#: access/transam/xlog.c:9410 #, c-format msgid "" "still waiting for all required WAL segments to be archived (%d seconds " @@ -3235,7 +3199,7 @@ msgid "" msgstr "" "필요한 WAL 조각 파일 아카이빙이 완료되기를 계속 기다리고 있음 (%d초 경과)" -#: access/transam/xlog.c:9352 +#: access/transam/xlog.c:9412 #, c-format msgid "" "Check that your \"archive_command\" is executing properly. You can safely " @@ -3245,12 +3209,12 @@ msgstr "" "\"archive_command\" 설정을 살펴보세요. 이 백업 작업은 안전하게 취소 할 수 있" "지만, 데이터베이스 백업은 모든 WAL 조각 없이는 사용될 수 없습니다." -#: access/transam/xlog.c:9359 +#: access/transam/xlog.c:9419 #, c-format msgid "all required WAL segments have been archived" msgstr "모든 필요한 WAL 조각들이 아카이브 되었습니다." -#: access/transam/xlog.c:9363 +#: access/transam/xlog.c:9423 #, c-format msgid "" "WAL archiving is not enabled; you must ensure that all required WAL segments " @@ -3260,7 +3224,7 @@ msgstr "" "모든 WAL 조각 파일들을 직접 찾아서 따로 보관해 두어야 바르게 복구 할 수 있습" "니다." -#: access/transam/xlog.c:9402 +#: access/transam/xlog.c:9462 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "" @@ -3304,35 +3268,35 @@ msgstr "\"%s\" archive status 파일을 만들 수 없습니다: %m" msgid "could not write archive status file \"%s\": %m" msgstr "\"%s\" archive status 파일에 쓸 수 없습니다: %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\"" @@ -3340,140 +3304,140 @@ 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\" 값은 음수나 0을 사용할 수 없음" -#: 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 "postmaster의 예상치 못한 종료로 연결을 종료합니다" -#: 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" msgstr[0] "%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()." +"\"recovery_prefetch\" is not supported on platforms that lack support for " +"issuing read-ahead advice." msgstr "" -"이 OS는 posix_fadvise() 함수를 지원하지 않아, \"recovery_prefetch\" 설정을 지" -"원하지 않습니다." +"이 OS는 미리 읽기 기능을 지원하지 않아, \"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에서 contrecord를 필요로 함" -#: 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 "%X/%X 위치에 contrecord 플래그가 없음" -#: 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, offset %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, offset %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" +"identifier is %, pg_control database system identifier is %" msgstr "" -"WAL 파일이 다른 시스템의 것입니다. WAL 파일의 시스템 식별자는 %llu, " -"pg_control 의 식별자는 %llu" +"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 " @@ -3482,7 +3446,7 @@ 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 " @@ -3491,12 +3455,12 @@ 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 "잘못된 페이지 주소 %X/%X, WAL 조각 파일 %s, LSN %X/%X, offset %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, " @@ -3505,22 +3469,22 @@ msgstr "" "타임라인 범위 벗어남 %u (이전 번호 %u), WAL 조각 파일 %s, LSN %X/%X, offset " "%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 block_id는 범위를 벗어남, 위치 %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 " @@ -3529,19 +3493,19 @@ 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 " @@ -3550,68 +3514,68 @@ 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 "잘못된 block_id %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 "WAL 레코드에서 %d ID의 백업 블록을 찾을 수 없음" -#: 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:623 #, 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:655 #, c-format msgid "" "could not find redo location %X/%X referenced by checkpoint record at %X/%X" msgstr "%X/%X 위치의 redo lsn을 찾을 수 없음: 참조하는 체크포인트 레코드=%X/%X" -#: access/transam/xlogrecovery.c:651 access/transam/xlogrecovery.c:662 +#: access/transam/xlogrecovery.c:657 access/transam/xlogrecovery.c:668 #, c-format msgid "" "If you are restoring from a backup, touch \"%s/recovery.signal\" or \"%s/" @@ -3628,91 +3592,93 @@ msgstr "" "주의: 백업 복원 작업을 하는데, \"%s/backup_label\" 파일을 지운다면, 클러스터" "가 손상 될 수 있습니다." -#: access/transam/xlogrecovery.c:660 +#: access/transam/xlogrecovery.c:666 #, 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:696 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:729 access/transam/xlogrecovery.c:735 #, c-format msgid "ignoring file \"%s\" because no file \"%s\" exists" msgstr "\"%s\" 파일 무시함, \"%s\" 파일 없음" -#: access/transam/xlogrecovery.c:725 +#: access/transam/xlogrecovery.c:731 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "\"%s\" 파일을 \"%s\" 파일로 이름을 바꿨습니다." -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:737 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "\"%s\" 파일을 \"%s\" 파일로 이름을 바꿀 수 없음: %m" -#: access/transam/xlogrecovery.c:770 +#: access/transam/xlogrecovery.c:776 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "\"%X/%X\" redo LSN에서 백업 복구 작업을 다시 시작합니다" -#: access/transam/xlogrecovery.c:795 +#: access/transam/xlogrecovery.c:801 #, 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:812 #, c-format msgid "entering standby mode" msgstr "대기 모드로 전환합니다" -#: access/transam/xlogrecovery.c:809 +#: access/transam/xlogrecovery.c:815 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "%u XID까지 시점 기반 복구 작업을 시작합니다" -#: access/transam/xlogrecovery.c:813 +#: access/transam/xlogrecovery.c:819 #, c-format msgid "starting point-in-time recovery to %s" msgstr "%s 까지 시점 복구 작업을 시작합니다" -#: access/transam/xlogrecovery.c:817 +#: access/transam/xlogrecovery.c:823 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "\"%s\" 복구 대상 이름까지 시점 복구 작업을 시작합니다" -#: access/transam/xlogrecovery.c:821 +#: access/transam/xlogrecovery.c:827 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "\"%X/%X\" 위치(LSN)까지 시점 복구 작업을 시작합니다" -#: access/transam/xlogrecovery.c:825 +#: access/transam/xlogrecovery.c:831 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "동기화 할 수 있는 마지막 지점까지 시점 복구 작업을 시작합니다" -#: access/transam/xlogrecovery.c:828 +#: access/transam/xlogrecovery.c:834 #, c-format msgid "starting archive recovery" msgstr "아카이브 복구 작업을 시작합니다" -#: access/transam/xlogrecovery.c:849 +#: access/transam/xlogrecovery.c:855 #, 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:858 #, 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." +"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 "" -"마지막 체크포인트 위치는 %X/%X (%u 타임라인)입니다. 하지만, 요청받은 타임라" -"인 내역파일에는 그 타임라인 %X/%X 위치에서 분기되었습니다." +"\"%s\" 파일의 마지막 체크포인트 위치는 %X/%X (%u 타임라인)입니다. 하지만, 요" +"청받은 타임라인 내역파일에는 그 타임라인 %X/%X 위치에서 분기되었습니다." -#: access/transam/xlogrecovery.c:865 +#: access/transam/xlogrecovery.c:873 #, c-format msgid "" "requested timeline %u does not contain minimum recovery point %X/%X on " @@ -3720,22 +3686,22 @@ msgid "" msgstr "" "요청한 %u 타임라인은 %X/%X 최소 복구 위치가 없습니다, 기존 타임라인: %u" -#: access/transam/xlogrecovery.c:893 +#: access/transam/xlogrecovery.c:901 #, c-format msgid "invalid next transaction ID" msgstr "잘못된 다음 트랜잭션 ID" -#: access/transam/xlogrecovery.c:898 +#: access/transam/xlogrecovery.c:906 #, c-format msgid "invalid redo in checkpoint record" msgstr "체크포인트 레코드 안에 잘못된 redo 정보가 있음" -#: access/transam/xlogrecovery.c:909 +#: access/transam/xlogrecovery.c:917 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "운영 중지 체크포인트에서 잘못된 재실행 정보 발견" -#: access/transam/xlogrecovery.c:938 +#: access/transam/xlogrecovery.c:946 #, c-format msgid "" "database system was not properly shut down; automatic recovery in progress" @@ -3743,18 +3709,18 @@ msgstr "" "데이터베이스 시스템이 정상적으로 종료되지 못했습니다, 자동 복구 작업을 진행합" "니다" -#: access/transam/xlogrecovery.c:942 +#: access/transam/xlogrecovery.c:950 #, 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:993 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label 파일 안에 컨트롤 파일과 일관성이 맞지 않는 자료가 있음" -#: access/transam/xlogrecovery.c:986 +#: access/transam/xlogrecovery.c:994 #, c-format msgid "" "This means that the backup is corrupted and you will have to use another " @@ -3763,22 +3729,22 @@ msgstr "" "이 문제는 백업 자료 자체가 손상 되었음을 말합니다. 다른 백업본으로 복구 작업" "을 진행해야 합니다." -#: access/transam/xlogrecovery.c:1040 +#: access/transam/xlogrecovery.c:1048 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "\"%s\" 복구 명령 파일을 사용하는 것을 지원하지 않습니다" -#: access/transam/xlogrecovery.c:1105 +#: access/transam/xlogrecovery.c:1113 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "단일 사용자 서버를 대상으로 대기 모드를 사용할 수 없습니다." -#: access/transam/xlogrecovery.c:1122 +#: access/transam/xlogrecovery.c:1130 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "\"primary_conninfo\" 설정도, \"restore_command\" 설정도 없음" -#: access/transam/xlogrecovery.c:1123 +#: access/transam/xlogrecovery.c:1131 #, c-format msgid "" "The database server will regularly poll the pg_wal subdirectory to check for " @@ -3787,97 +3753,97 @@ msgstr "" "데이터베이스 서버는 일반적으로 주 서버에서 발생한 트랜잭션 로그를 반영하기 위" "해 pg_wal 하위 디렉터리를 조사할 것입니다." -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1139 #, c-format msgid "must specify \"restore_command\" when standby mode is not enabled" msgstr "" "대기 모드를 활성화 하지 않았다면(standby_mode = off), \"restore_command\" 설" "정은 반드시 있어야 함" -#: access/transam/xlogrecovery.c:1169 +#: access/transam/xlogrecovery.c:1177 #, 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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "\"%s\" 파일에 유효하지 않은 자료가 있습니다" -#: access/transam/xlogrecovery.c:1319 +#: access/transam/xlogrecovery.c:1327 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "타임라인 ID가 %u 값으로 분석했지만, 기대값은 %u 임" -#: access/transam/xlogrecovery.c:1330 +#: access/transam/xlogrecovery.c:1338 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "이것은 증분 백업 디렉터리로 데이터 디렉터리가 아님" -#: access/transam/xlogrecovery.c:1331 +#: access/transam/xlogrecovery.c:1339 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "" "바른 데이터 디렉터리로 재구축하려면 pg_combinebackup 명령을 이용하세요." -#: access/transam/xlogrecovery.c:1717 +#: access/transam/xlogrecovery.c:1725 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "%X/%X redo 위치에 잘못된 레크드 형태가 발견됨" -#: access/transam/xlogrecovery.c:1740 +#: access/transam/xlogrecovery.c:1748 #, c-format msgid "redo starts at %X/%X" msgstr "%X/%X에서 redo 작업 시작됨" -#: access/transam/xlogrecovery.c:1753 +#: access/transam/xlogrecovery.c:1761 #, 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:1851 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "요청한 복구 중지 지점이 일치하는 복구 지점 앞에 있음" -#: access/transam/xlogrecovery.c:1875 +#: access/transam/xlogrecovery.c:1883 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "%X/%X에서 redo 작업 완료, 시스템 사용량: %s" -#: access/transam/xlogrecovery.c:1881 +#: access/transam/xlogrecovery.c:1889 #, c-format msgid "last completed transaction was at log time %s" msgstr "마지막 완료된 트랜잭션 기록 시간: %s" -#: access/transam/xlogrecovery.c:1890 +#: access/transam/xlogrecovery.c:1898 #, c-format msgid "redo is not required" msgstr "재반영해야 할 트랜잭션이 없음" -#: access/transam/xlogrecovery.c:1901 +#: access/transam/xlogrecovery.c:1910 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "지정한 recovery target 도달 전에 복구 끝남" -#: access/transam/xlogrecovery.c:2095 +#: access/transam/xlogrecovery.c:2104 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "%X/%X에 빠진 contrecord를 건너뜀, %s에 덮어씀" -#: access/transam/xlogrecovery.c:2162 +#: access/transam/xlogrecovery.c:2171 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "잘못된 디렉터리 엔트리 \"%s\", 위치: %s" -#: access/transam/xlogrecovery.c:2164 +#: access/transam/xlogrecovery.c:2173 #, 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:2175 #, c-format msgid "" "Remove those directories, or set \"allow_in_place_tablespaces\" to ON " @@ -3886,23 +3852,23 @@ msgstr "" "그 디렉터리를 지우든가, \"allow_in_place_tablespaces\" 설정을 ON으로 바꿔 임" "시로 복구 작업을 완료하든가 하세요." -#: access/transam/xlogrecovery.c:2217 +#: access/transam/xlogrecovery.c:2227 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "redo LSN %X/%X 부터 end LSN %X/%X 까지 백업 복구 완료" -#: access/transam/xlogrecovery.c:2247 +#: access/transam/xlogrecovery.c:2258 #, 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:2296 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "WAL redo 위치: %X/%X, 대상: %s" -#: access/transam/xlogrecovery.c:2383 +#: access/transam/xlogrecovery.c:2394 #, c-format msgid "" "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint " @@ -3910,12 +3876,12 @@ msgid "" msgstr "" "체크포인트 레코드에 예기치 않은 이전 타임라인ID %u(현재 타임라인ID: %u)" -#: access/transam/xlogrecovery.c:2392 +#: access/transam/xlogrecovery.c:2403 #, 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:2419 #, c-format msgid "" "unexpected timeline ID %u in checkpoint record, before reaching minimum " @@ -3924,113 +3890,113 @@ msgstr "" "체크포인트 내역 안에 %u 타임라인 ID가 기대한 것과 다릅니다. 발생 위치: %X/%X " "(타임라인: %u) 최소 복구 위치 이전" -#: access/transam/xlogrecovery.c:2592 access/transam/xlogrecovery.c:2868 +#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 #, c-format msgid "recovery stopping after reaching consistency" msgstr "일관성을 다 맞추어 복구 작업을 중지합니다." -#: access/transam/xlogrecovery.c:2613 +#: access/transam/xlogrecovery.c:2624 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "복구 중지 위치(LSN): \"%X/%X\" 이전" -#: access/transam/xlogrecovery.c:2703 +#: access/transam/xlogrecovery.c:2714 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "%u 트랜잭션 커밋 전 복구 중지함, 시간 %s" -#: access/transam/xlogrecovery.c:2710 +#: access/transam/xlogrecovery.c:2721 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "%u 트랜잭션 중단 전 복구 중지함, 시간 %s" -#: access/transam/xlogrecovery.c:2763 +#: access/transam/xlogrecovery.c:2774 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "복구 중지함, 복구 위치 \"%s\", 시간 %s" -#: access/transam/xlogrecovery.c:2781 +#: access/transam/xlogrecovery.c:2792 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "복구 중지 위치(LSN): \"%X/%X\" 이후" -#: access/transam/xlogrecovery.c:2848 +#: access/transam/xlogrecovery.c:2859 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "%u 트랜잭션 커밋 후 복구 중지함, 시간 %s" -#: access/transam/xlogrecovery.c:2856 +#: access/transam/xlogrecovery.c:2867 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "%u 트랜잭션 중단 후 복구 중지함, 시간 %s" -#: access/transam/xlogrecovery.c:2937 +#: access/transam/xlogrecovery.c:2948 #, c-format msgid "pausing at the end of recovery" msgstr "복구 끝에 기다리는 중" -#: access/transam/xlogrecovery.c:2938 +#: access/transam/xlogrecovery.c:2949 #, 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:2952 access/transam/xlogrecovery.c:4698 #, c-format msgid "recovery has paused" msgstr "복구 작업이 일시 중지 됨" -#: access/transam/xlogrecovery.c:2942 +#: access/transam/xlogrecovery.c:2953 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "계속 진행하려면, pg_wal_replay_resume() 함수를 호출하세요." -#: access/transam/xlogrecovery.c:3205 +#: access/transam/xlogrecovery.c:3216 #, 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:3432 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: %m" msgstr "%s WAL 조각에서 읽기 실패, LSN %X/%X, offset %u: %m" -#: access/transam/xlogrecovery.c:3420 +#: access/transam/xlogrecovery.c:3439 #, c-format msgid "" "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "%s WAL 조각에서 읽기 실패, LSN %X/%X, offset %u: read %d / %zu" -#: access/transam/xlogrecovery.c:4060 +#: access/transam/xlogrecovery.c:4082 #, c-format msgid "invalid checkpoint location" msgstr "잘못된 checkpoint 위치" -#: access/transam/xlogrecovery.c:4070 +#: access/transam/xlogrecovery.c:4092 #, c-format msgid "invalid checkpoint record" msgstr "잘못된 checkpoint 레코드" -#: access/transam/xlogrecovery.c:4076 +#: access/transam/xlogrecovery.c:4098 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "checkpoint 레코드에서 잘못된 자원 관리자 ID 발견" -#: access/transam/xlogrecovery.c:4084 +#: access/transam/xlogrecovery.c:4106 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "checkpoint 레코드에서 잘못된 xl_info 발견" -#: access/transam/xlogrecovery.c:4090 +#: access/transam/xlogrecovery.c:4112 #, c-format msgid "invalid length of checkpoint record" msgstr "checkpoint 레코드 길이가 잘못되었음" -#: access/transam/xlogrecovery.c:4144 +#: access/transam/xlogrecovery.c:4166 #, 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:4180 #, c-format msgid "" "new timeline %u forked off current database system timeline %u before " @@ -4039,28 +4005,28 @@ msgstr "" "복구 위치까지 복구하기 전에 새 타임라인 %u번으로 분기됨, 기존 데이터베이스 타" "임라인: %u, 기대한 복구 위치 %X/%X" -#: access/transam/xlogrecovery.c:4177 +#: access/transam/xlogrecovery.c:4199 #, c-format msgid "new target timeline is %u" msgstr "새 대상 타임라인: %u" -#: access/transam/xlogrecovery.c:4380 +#: access/transam/xlogrecovery.c:4400 #, c-format msgid "WAL receiver process shutdown requested" msgstr "WAL receiver 프로세스가 중지 요청을 받았습니다." -#: access/transam/xlogrecovery.c:4440 +#: access/transam/xlogrecovery.c:4460 #, c-format msgid "received promote request" msgstr "운영 전환 신호를 받았습니다." -#: access/transam/xlogrecovery.c:4669 +#: access/transam/xlogrecovery.c:4689 #, 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:4690 access/transam/xlogrecovery.c:4717 +#: access/transam/xlogrecovery.c:4747 #, c-format msgid "" "%s = %d is a lower setting than on the primary server, where its value was " @@ -4069,45 +4035,45 @@ msgstr "" "이 서버의 현재 %s = %d 설정은 주 서버의 설정값(%d)보다 낮게 설정 되어 있기 때" "문입니다." -#: access/transam/xlogrecovery.c:4679 +#: access/transam/xlogrecovery.c:4699 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "복구 후 멈춰 있을 수 없으면 서버는 종료될 것입니다." -#: access/transam/xlogrecovery.c:4680 +#: access/transam/xlogrecovery.c:4700 #, 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:4711 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "운영 서버로 전환할 수 없습니다. 설정이 불충분합니다." -#: access/transam/xlogrecovery.c:4701 +#: access/transam/xlogrecovery.c:4721 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "필요한 설정을 바꾸어 서버를 다시 시작하세요." -#: access/transam/xlogrecovery.c:4725 +#: access/transam/xlogrecovery.c:4745 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "복구 작업이 불충분한 설정으로 중지 되었습니다." -#: access/transam/xlogrecovery.c:4731 +#: access/transam/xlogrecovery.c:4751 #, c-format msgid "" "You can restart the server after making the necessary configuration changes." msgstr "필요한 설정을 바꾸어 서버를 다시 시작할 수 있습니다." -#: access/transam/xlogrecovery.c:4773 +#: access/transam/xlogrecovery.c:4792 #, c-format msgid "multiple recovery targets specified" msgstr "복구 대상을 다중 지정했음" -#: access/transam/xlogrecovery.c:4774 +#: access/transam/xlogrecovery.c:4793 #, c-format msgid "" "At most one of \"recovery_target\", \"recovery_target_lsn\", " @@ -4118,28 +4084,27 @@ msgstr "" "\"recovery_target_time\", \"recovery_target_xid\" 이들 중 하나는 지정해야합니" "다." -#: access/transam/xlogrecovery.c:4785 +#: access/transam/xlogrecovery.c:4804 #, 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:4958 #, 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:5003 #, 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 "%s WAL 조각에서 읽기 실패, offset %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 "%s WAL 조각에서 읽기 실패, 위치: %d, %d 읽음(전체: %d)" @@ -4160,7 +4125,7 @@ msgstr "실패한 아카이브 명령: %s" msgid "archive command was terminated by exception 0x%X" msgstr "0x%X 예외로 인해 아카이브 명령이 종료됨" -#: archive/shell_archive.c:109 postmaster/postmaster.c:3093 +#: 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." @@ -4176,133 +4141,133 @@ msgstr "%d번 시그널로 인해 아카이브 명령이 종료됨: %s" 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 "\"%s\" WAL 파일 찾기 실패" -#: 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 "\"%s\" WAL 파일의 크기가 알맞지 않음" -#: backup/basebackup.c:656 +#: backup/basebackup.c:658 #, c-format msgid "%lld total checksum verification failure" msgid_plural "%lld total checksum verification failures" msgstr[0] "%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 "증분 백업은 summarize_wal=on 상태에서만 가능함" -#: 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 "증북 BASE_BACKUP 수행 전에 UPLOAD_MANIFEST 있어야 함" -#: 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 " @@ -4311,13 +4276,13 @@ 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" msgstr[0] "\"%s\" 파일에서 전체 %d 건 체크섬 검사 실패" -#: backup/basebackup.c:1917 +#: backup/basebackup.c:1920 #, c-format msgid "" "checksum verification failed in file \"%s\", block %u: calculated %X but " @@ -4325,7 +4290,7 @@ msgid "" 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" @@ -4333,20 +4298,20 @@ 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\"" +"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" @@ -4361,44 +4326,44 @@ 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 "" -"매니페스트에는 시작 타임라인이 %u번으로 %X/%X에 있다고 해서 그 WAL 파일이 필요한데, " -"그 타임라인은 %X/%X에 있음" +"매니페스트에는 시작 타임라인이 %u번으로 %X/%X에 있다고 해서 그 WAL 파일이 필" +"요한데, 그 타임라인은 %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 "" -"매니페스트에는 연결 타임라인이 %u번으로 %X/%X에 있다고 해서 그 WAL 파일이 필요한데, " -"그 타임라인은 %X/%X에 있음" +"매니페스트에는 연결 타임라인이 %u번으로 %X/%X에 있다고 해서 그 WAL 파일이 필" +"요한데, 그 타임라인은 %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 "" -"매니페스트에는 최종 타임라인이 %u번으로 %X/%X에 있다고 해서 그 WAL 파일이 필요한데, " -"이 백업은 %X/%X에서 시작됨" +"매니페스트에는 최종 타임라인이 %u번으로 %X/%X에 있다고 해서 그 WAL 파일이 필" +"요한데, 이 백업은 %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 " @@ -4407,51 +4372,51 @@ msgstr "" "이 현상은 이전 백업 이후 DB 사용이 거의 없었는데, 대기 서버에서 증분 백업을 " "받는 경우 발생합니다." -#: 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 "" -"매니페스트에는 %u 타임라인을 끝내는 것이 %X/%X에 있어 그 WAL 파일이 필요한데, " -"서버는 %X/%X에서 타임라인이 바뀌었음" +"매니페스트에는 %u 타임라인을 끝내는 것이 %X/%X에 있어 그 WAL 파일이 필요한" +"데, 서버는 %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까지인데, " -"이 타임라인과 범위에 대한 요약을 못 찾음" +"WAL 요약 정보에서는 %u번 타임라인은 %X/%X에서 %X/%X까지인데, 이 타임라인과 범" +"위에 대한 요약을 못 찾음" -#: 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까지인데, " -"이 타임라인과 범위에 대한 요약이 불완전함" +"WAL 요약 정보에서는 %u번 타임라인은 %X/%X에서 %X/%X까지인데, 이 타임라인과 범" +"위에 대한 요약이 불완전함" -#: 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" +"system identifier in backup manifest is %, but database system " +"identifier is %" msgstr "" -"백업 매니페스트에는 시스템 식별자 번호가 %llu인데, 데이터베이스 시스템 식별자는 " -"%llu임" +"백업 매니페스트에는 시스템 식별자 번호가 %인데, 데이터베이스 시스템 " +"식별자는 %임" #: backup/basebackup_lz4.c:67 #, c-format @@ -4475,10 +4440,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:2233 +#: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "\"%s\" 디렉터리를 만들 수 없음: %m" @@ -4488,15 +4453,15 @@ msgstr "\"%s\" 디렉터리를 만들 수 없음: %m" msgid "directory \"%s\" exists but is not empty" msgstr "\"%s\" 디렉터리가 비어있지 않습니다." -#: backup/basebackup_server.c:123 utils/init/postinit.c:1178 +#: 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 "디스크 여유 공간을 확인해 주십시오." @@ -4534,26 +4499,31 @@ msgstr "long-distance 모드를 활성화 할 수 없음: %s" #: 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" @@ -4609,12 +4579,12 @@ msgstr "\"%s\"에 대한 일부 권한을 취소할 수 없음" msgid "grantor must be current user" msgstr "권한 수여자는 현재 사용자여야합니다" -#: catalog/aclchk.c:480 catalog/aclchk.c:1055 +#: 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:1059 +#: catalog/aclchk.c:484 catalog/aclchk.c:1000 #, c-format msgid "invalid privilege type %s for sequence" msgstr "시퀀스의 %s 권한은 잘못된 종류임" @@ -4629,7 +4599,7 @@ msgstr "%s 권한은 데이터베이스에는 사용할 수 없은 권한 형태 msgid "invalid privilege type %s for domain" msgstr "%s 권한은 도메인에서 유효하지 않음" -#: catalog/aclchk.c:496 catalog/aclchk.c:1063 +#: catalog/aclchk.c:496 catalog/aclchk.c:1004 #, c-format msgid "invalid privilege type %s for function" msgstr "%s 권한은 함수에서 사용할 수 없은 권한 형태임" @@ -4639,22 +4609,22 @@ msgstr "%s 권한은 함수에서 사용할 수 없은 권한 형태임" msgid "invalid privilege type %s for language" msgstr "%s 권한은 프로시주얼 언어에서 사용할 수 없은 권한 형태임" -#: catalog/aclchk.c:504 +#: 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:1079 +#: catalog/aclchk.c:508 catalog/aclchk.c:1020 #, c-format msgid "invalid privilege type %s for schema" msgstr "%s 권한은 스키마(schema)에서 사용할 수 없은 권한 형태임" -#: catalog/aclchk.c:512 catalog/aclchk.c:1067 +#: 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:1071 +#: catalog/aclchk.c:516 catalog/aclchk.c:1012 #, c-format msgid "invalid privilege type %s for routine" msgstr "루틴용 %s 권한 종류가 잘못됨" @@ -4664,7 +4634,7 @@ msgstr "루틴용 %s 권한 종류가 잘못됨" msgid "invalid privilege type %s for tablespace" msgstr "%s 권한은 테이블스페이스에서 사용할 수 없은 권한 형태임" -#: catalog/aclchk.c:524 catalog/aclchk.c:1075 +#: catalog/aclchk.c:524 catalog/aclchk.c:1016 #, c-format msgid "invalid privilege type %s for type" msgstr "%s 권한은 자료형에서 사용할 수 없은 권한 형태임" @@ -4689,91 +4659,92 @@ msgstr "잘못된 환경 설정 매개 변수용 권한 형태: %s" msgid "column privileges are only valid for relations" msgstr "칼럼 권한은 릴레이션에서만 유효함" -#: catalog/aclchk.c:738 catalog/aclchk.c:3629 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 large object 없음" - -#: catalog/aclchk.c:1112 +#: catalog/aclchk.c:1057 #, c-format msgid "default privileges cannot be set for columns" msgstr "default privileges 설정은 칼럼 대상으로 할 수 없음" -#: catalog/aclchk.c:1148 +#: catalog/aclchk.c:1093 #, c-format msgid "permission denied to change default privileges" msgstr "default privileges 변경 권한 없음" -#: catalog/aclchk.c:1266 +#: catalog/aclchk.c:1211 #, c-format msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" msgstr "GRANT/REVOKE ON SCHEMAS 구문을 쓸 때는 IN SCHEMA 구문을 쓸 수 없음" -#: catalog/aclchk.c:1617 catalog/catalog.c:659 catalog/objectaddress.c:1523 -#: catalog/pg_publication.c:528 commands/analyze.c:380 commands/copy.c:951 -#: commands/sequence.c:1655 commands/tablecmds.c:7541 commands/tablecmds.c:7695 -#: commands/tablecmds.c:7745 commands/tablecmds.c:7819 -#: commands/tablecmds.c:7889 commands/tablecmds.c:8019 -#: commands/tablecmds.c:8148 commands/tablecmds.c:8242 -#: commands/tablecmds.c:8343 commands/tablecmds.c:8470 -#: commands/tablecmds.c:8500 commands/tablecmds.c:8642 -#: commands/tablecmds.c:8735 commands/tablecmds.c:8869 -#: commands/tablecmds.c:8981 commands/tablecmds.c:12797 -#: commands/tablecmds.c:12989 commands/tablecmds.c:13150 -#: commands/tablecmds.c:14339 commands/tablecmds.c:16966 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:2812 +#: 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: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:3662 +#: parser/parse_utilcmd.c:3702 parser/parse_utilcmd.c:3744 +#: statistics/attribute_stats.c:209 statistics/attribute_stats.c:951 +#: utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "\"%s\" 칼럼은 \"%s\" 릴레이션(relation)에 없음" -#: catalog/aclchk.c:1862 +#: catalog/aclchk.c:1820 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" 개체는 인덱스임" -#: catalog/aclchk.c:1869 commands/tablecmds.c:14496 commands/tablecmds.c:17882 +#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" 개체는 복합 자료형입니다" -#: catalog/aclchk.c:1877 catalog/objectaddress.c:1363 commands/tablecmds.c:263 -#: commands/tablecmds.c:17846 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:1835 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 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\" 시퀀스가 아님" -#: catalog/aclchk.c:1915 +#: catalog/aclchk.c:1873 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "\"%s\" 시퀀스는 USAGE, SELECT 및 UPDATE 권한만 지원함" -#: catalog/aclchk.c:1932 +#: catalog/aclchk.c:1890 #, c-format msgid "invalid privilege type %s for table" msgstr "%s 권한은 테이블에서 사용할 수 없은 권한 형태임" -#: catalog/aclchk.c:2097 +#: catalog/aclchk.c:2055 #, c-format msgid "invalid privilege type %s for column" msgstr "%s 권한 형식은 칼럼에서 유효하지 않음" -#: catalog/aclchk.c:2110 +#: catalog/aclchk.c:2068 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "\"%s\" 시퀀스는 SELECT 열 권한만 지원함" -#: catalog/aclchk.c:2301 +#: catalog/aclchk.c:2259 #, c-format msgid "language \"%s\" is not trusted" msgstr "\"%s\" 프로시주얼 언어는 안전하지 못합니다" -#: catalog/aclchk.c:2303 +#: catalog/aclchk.c:2261 #, c-format msgid "" "GRANT and REVOKE are not allowed on untrusted languages, because only " @@ -4782,448 +4753,446 @@ msgstr "" "안전하지 않은 프로시져 언어에 대해서는 GRANT 또는 REVOKE 작업을 허용하지 않습" "니다, 안전하지 않은 프로시져 언어는 슈퍼유저만 사용할 수 있기 때문입니다." -#: catalog/aclchk.c:2454 +#: catalog/aclchk.c:2412 #, c-format msgid "cannot set privileges of array types" msgstr "배열형 자료형에 권한 설정을 할 수 없음" -#: catalog/aclchk.c:2455 +#: catalog/aclchk.c:2413 #, c-format msgid "Set the privileges of the element type instead." msgstr "그 배열 요소에 해당하는 자료형에 대해서 접근 권한 설정을 하세요." -#: catalog/aclchk.c:2459 +#: catalog/aclchk.c:2417 #, c-format msgid "cannot set privileges of multirange types" msgstr "다중 범위 자료형에 권한 설정을 할 수 없음" -#: catalog/aclchk.c:2460 +#: catalog/aclchk.c:2418 #, c-format msgid "Set the privileges of the range type instead." msgstr "해당하는 범위 자료형에 대해서 접근 권한 설정을 하세요." -#: catalog/aclchk.c:2467 catalog/objectaddress.c:1629 -#, c-format -msgid "\"%s\" is not a domain" -msgstr "\"%s\" 이름의 개체는 도메인이 아닙니다" - -#: catalog/aclchk.c:2653 +#: catalog/aclchk.c:2601 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "알 수 없는 권한 타입 \"%s\"" -#: catalog/aclchk.c:2720 +#: catalog/aclchk.c:2668 #, c-format msgid "permission denied for aggregate %s" msgstr "%s 집계함수에 대한 접근 권한 없음" -#: catalog/aclchk.c:2723 +#: catalog/aclchk.c:2671 #, c-format msgid "permission denied for collation %s" msgstr "%s 정렬정의(collation) 접근 권한 없음" -#: catalog/aclchk.c:2726 +#: catalog/aclchk.c:2674 #, c-format msgid "permission denied for column %s" msgstr "%s 칼럼에 대한 접근 권한 없음" -#: catalog/aclchk.c:2729 +#: catalog/aclchk.c:2677 #, c-format msgid "permission denied for conversion %s" msgstr "%s 문자코드변환규칙(conversion) 접근 권한 없음" -#: catalog/aclchk.c:2732 +#: catalog/aclchk.c:2680 #, c-format msgid "permission denied for database %s" msgstr "%s 데이터베이스 접근 권한 없음" -#: catalog/aclchk.c:2735 +#: catalog/aclchk.c:2683 #, c-format msgid "permission denied for domain %s" msgstr "%s 도메인에 대한 접근 권한 없음" -#: catalog/aclchk.c:2738 +#: catalog/aclchk.c:2686 #, c-format msgid "permission denied for event trigger %s" msgstr "%s 이벤트 트리거 접근 권한 없음" -#: catalog/aclchk.c:2741 +#: catalog/aclchk.c:2689 #, c-format msgid "permission denied for extension %s" msgstr "%s 확장 모듈 접근 권한 없음" -#: catalog/aclchk.c:2744 +#: catalog/aclchk.c:2692 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "%s 외부 데이터 래퍼 접근 권한 없음" -#: catalog/aclchk.c:2747 +#: catalog/aclchk.c:2695 #, c-format msgid "permission denied for foreign server %s" msgstr "%s 외부 서버 접근 권한 없음" -#: catalog/aclchk.c:2750 +#: catalog/aclchk.c:2698 #, c-format msgid "permission denied for foreign table %s" msgstr "%s 외부 테이블 접근 권한 없음" -#: catalog/aclchk.c:2753 +#: catalog/aclchk.c:2701 #, c-format msgid "permission denied for function %s" msgstr "%s 함수 접근 권한 없음" -#: catalog/aclchk.c:2756 +#: catalog/aclchk.c:2704 #, c-format msgid "permission denied for index %s" msgstr "%s 인덱스 접근 권한 없음" -#: catalog/aclchk.c:2759 +#: catalog/aclchk.c:2707 #, c-format msgid "permission denied for language %s" msgstr "%s 프로시주얼 언어 접근 권한 없음" -#: catalog/aclchk.c:2762 +#: catalog/aclchk.c:2710 #, c-format msgid "permission denied for large object %s" msgstr "%s 대형 개체 접근 권한 없음" -#: catalog/aclchk.c:2765 +#: catalog/aclchk.c:2713 #, c-format msgid "permission denied for materialized view %s" msgstr "%s 구체화된 뷰에 대한 접근 권한 없음" -#: catalog/aclchk.c:2768 +#: catalog/aclchk.c:2716 #, c-format msgid "permission denied for operator class %s" msgstr "%s 연산자 클래스 접근 권한 없음" -#: catalog/aclchk.c:2771 +#: catalog/aclchk.c:2719 #, c-format msgid "permission denied for operator %s" msgstr "%s 연산자 접근 권한 없음" -#: catalog/aclchk.c:2774 +#: catalog/aclchk.c:2722 #, c-format msgid "permission denied for operator family %s" msgstr "%s 연산자 패밀리 접근 권한 없음" -#: catalog/aclchk.c:2777 +#: catalog/aclchk.c:2725 #, c-format msgid "permission denied for parameter %s" msgstr "%s 환경 설정 매개 변수 접근 권한 없음" -#: catalog/aclchk.c:2780 +#: catalog/aclchk.c:2728 #, c-format msgid "permission denied for policy %s" msgstr "%s 정책에 대한 접근 권한 없음" -#: catalog/aclchk.c:2783 +#: catalog/aclchk.c:2731 #, c-format msgid "permission denied for procedure %s" msgstr "%s 프로시져에 대한 접근 권한 없음" -#: catalog/aclchk.c:2786 +#: catalog/aclchk.c:2734 #, c-format msgid "permission denied for publication %s" msgstr "%s 발행 접근 권한 없음" -#: catalog/aclchk.c:2789 +#: catalog/aclchk.c:2737 #, c-format msgid "permission denied for routine %s" msgstr "%s 루틴에 대한 접근 권한 없음" -#: catalog/aclchk.c:2792 +#: catalog/aclchk.c:2740 #, c-format msgid "permission denied for schema %s" msgstr "%s 스키마(schema) 접근 권한 없음" -#: catalog/aclchk.c:2795 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2743 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:2798 +#: catalog/aclchk.c:2746 #, c-format msgid "permission denied for statistics object %s" msgstr "%s 개체 통계정보 접근 권한 없음" -#: catalog/aclchk.c:2801 +#: catalog/aclchk.c:2749 #, c-format msgid "permission denied for subscription %s" msgstr "%s 구독 접근 권한 없음" -#: catalog/aclchk.c:2804 +#: catalog/aclchk.c:2752 #, c-format msgid "permission denied for table %s" msgstr "%s 테이블에 대한 접근 권한 없음" -#: catalog/aclchk.c:2807 +#: catalog/aclchk.c:2755 #, c-format msgid "permission denied for tablespace %s" msgstr "%s 테이블스페이스 접근 권한 없음" -#: catalog/aclchk.c:2810 +#: catalog/aclchk.c:2758 #, c-format msgid "permission denied for text search configuration %s" msgstr "%s 전문 검색 구성 접근 권한 없음" -#: catalog/aclchk.c:2813 +#: catalog/aclchk.c:2761 #, c-format msgid "permission denied for text search dictionary %s" msgstr "%s 전문 검색 사전 접근 권한 없음" -#: catalog/aclchk.c:2816 +#: catalog/aclchk.c:2764 #, c-format msgid "permission denied for type %s" msgstr "%s 자료형 접근 권한 없음" -#: catalog/aclchk.c:2819 +#: catalog/aclchk.c:2767 #, c-format msgid "permission denied for view %s" msgstr "%s 뷰에 대한 접근 권한 없음" -#: catalog/aclchk.c:2855 +#: catalog/aclchk.c:2803 #, c-format msgid "must be owner of aggregate %s" msgstr "%s 집계함수의 소유주여야만 합니다" -#: catalog/aclchk.c:2858 +#: catalog/aclchk.c:2806 #, c-format msgid "must be owner of collation %s" msgstr "%s 정렬정의(collation)의 소유주여야만 합니다" -#: catalog/aclchk.c:2861 +#: catalog/aclchk.c:2809 #, c-format msgid "must be owner of conversion %s" msgstr "%s 문자코드변환규칙(conversion)의 소유주여야만 합니다" -#: catalog/aclchk.c:2864 +#: catalog/aclchk.c:2812 #, c-format msgid "must be owner of database %s" msgstr "%s 데이터베이스의 소유주여야만 합니다" -#: catalog/aclchk.c:2867 +#: catalog/aclchk.c:2815 #, c-format msgid "must be owner of domain %s" msgstr "%s 도메인의 소유주여야만 합니다" -#: catalog/aclchk.c:2870 +#: catalog/aclchk.c:2818 #, c-format msgid "must be owner of event trigger %s" msgstr "%s 이벤트 트리거의 소유주여야만 합니다" -#: catalog/aclchk.c:2873 +#: catalog/aclchk.c:2821 #, c-format msgid "must be owner of extension %s" msgstr "%s 확장 모듈의 소유주여야만 합니다" -#: catalog/aclchk.c:2876 +#: catalog/aclchk.c:2824 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "%s 외부 데이터 래퍼의 소유주여야 함" -#: catalog/aclchk.c:2879 +#: catalog/aclchk.c:2827 #, c-format msgid "must be owner of foreign server %s" msgstr "%s 외부 서버의 소유주여야 함" -#: catalog/aclchk.c:2882 +#: catalog/aclchk.c:2830 #, c-format msgid "must be owner of foreign table %s" msgstr "%s 외부 테이블의 소유주여야 함" -#: catalog/aclchk.c:2885 +#: catalog/aclchk.c:2833 #, c-format msgid "must be owner of function %s" msgstr "%s 함수의 소유주여야만 합니다" -#: catalog/aclchk.c:2888 +#: catalog/aclchk.c:2836 #, c-format msgid "must be owner of index %s" msgstr "%s 인덱스의 소유주여야만 합니다" -#: catalog/aclchk.c:2891 +#: catalog/aclchk.c:2839 #, c-format msgid "must be owner of language %s" msgstr "%s 프로시주얼 언어의 소유주여야만 합니다" -#: catalog/aclchk.c:2894 +#: catalog/aclchk.c:2842 #, c-format msgid "must be owner of large object %s" msgstr "%s 대형 개체의 소유주여야만 합니다" -#: catalog/aclchk.c:2897 +#: catalog/aclchk.c:2845 #, c-format msgid "must be owner of materialized view %s" msgstr "%s 구체화된 뷰의 소유주여야만 합니다" -#: catalog/aclchk.c:2900 +#: catalog/aclchk.c:2848 #, c-format msgid "must be owner of operator class %s" msgstr "%s 연산자 클래스의 소유주여야만 합니다" -#: catalog/aclchk.c:2903 +#: catalog/aclchk.c:2851 #, c-format msgid "must be owner of operator %s" msgstr "%s 연산자의 소유주여야만 합니다" -#: catalog/aclchk.c:2906 +#: catalog/aclchk.c:2854 #, c-format msgid "must be owner of operator family %s" msgstr "%s 연산자 패밀리의 소유주여야 함" -#: catalog/aclchk.c:2909 +#: catalog/aclchk.c:2857 #, c-format msgid "must be owner of procedure %s" msgstr "%s 프로시져의 소유주여야만 합니다" -#: catalog/aclchk.c:2912 +#: catalog/aclchk.c:2860 #, c-format msgid "must be owner of publication %s" msgstr "%s 발행의 소유주여야만 합니다" -#: catalog/aclchk.c:2915 +#: catalog/aclchk.c:2863 #, c-format msgid "must be owner of routine %s" msgstr "%s 루틴의 소유주여야만 합니다" -#: catalog/aclchk.c:2918 +#: catalog/aclchk.c:2866 #, c-format msgid "must be owner of sequence %s" msgstr "%s 시퀀스의 소유주여야만 합니다" -#: catalog/aclchk.c:2921 +#: catalog/aclchk.c:2869 #, c-format msgid "must be owner of subscription %s" msgstr "%s 구독의 소유주여야만 합니다" -#: catalog/aclchk.c:2924 +#: catalog/aclchk.c:2872 #, c-format msgid "must be owner of table %s" msgstr "%s 테이블의 소유주여야만 합니다" -#: catalog/aclchk.c:2927 +#: catalog/aclchk.c:2875 #, c-format msgid "must be owner of type %s" msgstr "%s 자료형의 소유주여야만 합니다" -#: catalog/aclchk.c:2930 +#: catalog/aclchk.c:2878 #, c-format msgid "must be owner of view %s" msgstr "%s 뷰의 소유주여야만 합니다" -#: catalog/aclchk.c:2933 +#: catalog/aclchk.c:2881 #, c-format msgid "must be owner of schema %s" msgstr "%s 스키마(schema)의 소유주여야만 합니다" -#: catalog/aclchk.c:2936 +#: catalog/aclchk.c:2884 #, c-format msgid "must be owner of statistics object %s" msgstr "%s 통계정보 개체의 소유주여야만 합니다" -#: catalog/aclchk.c:2939 +#: catalog/aclchk.c:2887 #, c-format msgid "must be owner of tablespace %s" msgstr "%s 테이블스페이스의 소유주여야만 합니다" -#: catalog/aclchk.c:2942 +#: catalog/aclchk.c:2890 #, c-format msgid "must be owner of text search configuration %s" msgstr "%s 전문 검색 구성의 소유주여야 함" -#: catalog/aclchk.c:2945 +#: catalog/aclchk.c:2893 #, c-format msgid "must be owner of text search dictionary %s" msgstr "%s 전문 검색 사전의 소유주여야 함" -#: catalog/aclchk.c:2959 +#: catalog/aclchk.c:2907 #, c-format msgid "must be owner of relation %s" msgstr "%s 릴레이션(relation)의 소유주여야만 합니다" -#: catalog/aclchk.c:3005 +#: catalog/aclchk.c:2953 #, c-format msgid "permission denied for column \"%s\" of relation \"%s\"" msgstr "\"%s\" 칼럼(해당 릴레이션: \"%s\") 접근 권한 없음" -#: catalog/aclchk.c:3162 catalog/aclchk.c:4170 catalog/aclchk.c:4201 -#, c-format -msgid "%s with OID %u does not exist" -msgstr "%s (해당 OID %u) 없음" - -#: catalog/aclchk.c:3245 catalog/aclchk.c:3264 +#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 #, c-format msgid "attribute %d of relation with OID %u does not exist" msgstr "%d번째 속성(해당 릴레이션 OID: %u)이 없음" -#: catalog/aclchk.c:3302 catalog/aclchk.c:3365 catalog/aclchk.c:4004 +#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 #, c-format msgid "relation with OID %u does not exist" msgstr "OID %u 릴레이션(relation) 없음" -#: catalog/aclchk.c:3550 +#: catalog/aclchk.c:3492 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "OID %u 환경 설정 매개 변수 ACL이 없음" -#: catalog/aclchk.c:3723 commands/collationcmds.c:853 -#: commands/publicationcmds.c:1739 +#: 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 +#, c-format +msgid "large object %u does not exist" +msgstr "%u large object 없음" + +#: catalog/aclchk.c:3665 commands/collationcmds.c:849 +#: commands/publicationcmds.c:1846 #, c-format msgid "schema with OID %u does not exist" msgstr "OID %u 스키마 없음" -#: catalog/aclchk.c:3797 catalog/aclchk.c:3824 catalog/aclchk.c:3853 -#: utils/cache/typcache.c:392 utils/cache/typcache.c:447 +#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 +#: 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:477 +#: catalog/catalog.c:504 #, c-format msgid "still searching for an unused OID in relation \"%s\"" msgstr "\"%s\" 릴레이션에서 사용되지 않는 OID를 여전히 찾는 중" -#: catalog/catalog.c:479 +#: catalog/catalog.c:506 #, c-format msgid "" -"OID candidates have been checked %llu time, but no unused OID has been found " -"yet." +"OID candidates have been checked % time, but no unused OID has been " +"found yet." msgid_plural "" -"OID candidates have been checked %llu times, but no unused OID has been " +"OID candidates have been checked % times, but no unused OID has been " "found yet." msgstr[0] "" -"OID 후보를 뽑기 위해 %llu 번 시도했지만, 아직 사용되지 않는 OID를 찾지 못함" +"OID 후보를 뽑기 위해 % 번 시도했지만, 아직 사용되지 않는 OID를 찾지 " +"못함" -#: catalog/catalog.c:504 +#: 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] "\"%s\" 릴레이션의 새 OID를 %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] "\"%s\" 릴레이션의 새 OID를 % 시도 끝에 배정함" -#: catalog/catalog.c:637 catalog/catalog.c:704 +#: catalog/catalog.c:662 catalog/catalog.c:729 #, c-format msgid "must be superuser to call %s()" msgstr "%s() 호출은 슈퍼유저만 할 수 있음" -#: catalog/catalog.c:646 +#: catalog/catalog.c:671 #, c-format msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() 함수는 시스템 카탈로그 대상 전용임" -#: catalog/catalog.c:651 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:668 +#: catalog/catalog.c:693 #, c-format msgid "column \"%s\" is not of type oid" msgstr "\"%s\" 칼럼은 oid 자료형이 아님" -#: catalog/catalog.c:675 +#: catalog/catalog.c:700 #, c-format msgid "index \"%s\" is not the index for column \"%s\"" msgstr "\"%s\" 인덱스는 \"%s\" 칼럼용 인덱스가 아님" @@ -5271,15 +5240,16 @@ 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:1459 -#: commands/tablecmds.c:15088 commands/tablespace.c:460 commands/user.c:1302 -#: commands/vacuum.c:211 commands/view.c:441 executor/execExprInterp.c:4655 -#: executor/execExprInterp.c:4663 libpq/auth.c:324 -#: replication/logical/applyparallelworker.c:1041 replication/syncrep.c:1011 -#: storage/lmgr/deadlock.c:1134 storage/lmgr/proc.c:1432 utils/misc/guc.c:3169 -#: utils/misc/guc.c:3210 utils/misc/guc.c:3285 utils/misc/guc.c:6825 -#: utils/misc/guc.c:6859 utils/misc/guc.c:6893 utils/misc/guc.c:6936 -#: utils/misc/guc.c:6978 +#: 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" @@ -5307,56 +5277,80 @@ msgstr[0] "%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\" transition 테이블은 영구 객체안에서 참조될 수 없음" + +#: 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 #, 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:2495 commands/tablecmds.c:2917 -#: commands/tablecmds.c:7163 +#: 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:7432 +#: 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 의사 자료형(pseudo-type)을 사용합니다" -#: catalog/heap.c:584 +#: catalog/heap.c:580 #, c-format msgid "column \"%s\" has pseudo-type %s" msgstr "\"%s\" 칼럼은 %s 의사 자료형(pseudo-type)을 사용합니다" -#: 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" @@ -5364,27 +5358,27 @@ 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:4171 +#: 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\" 이름의 릴레이션(relation)이 이미 있습니다" -#: 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 " @@ -5393,119 +5387,171 @@ 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 "이진 업그레이드 작업 때, pg_class 자료 OID 값이 지정되지 않았습니다" -#: 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:2130 +#: catalog/heap.c:2202 #, c-format msgid "cannot add NO INHERIT constraint to partitioned table \"%s\"" msgstr "\"%s\" 파티션 테이블에는 NO INHERIT 조건을 사용할 수 없음" -#: catalog/heap.c:2402 +#: catalog/heap.c:2525 #, c-format msgid "check constraint \"%s\" already exists" msgstr "\"%s\" 이름의 체크 제약 조건이 이미 있습니다" -#: catalog/heap.c:2574 catalog/index.c:913 catalog/pg_constraint.c:724 -#: commands/tablecmds.c:9356 +#: catalog/heap.c:2626 catalog/heap.c:2946 +#, c-format +msgid "cannot add not-null constraint on system column \"%s\"" +msgstr "\"%s\" 시스템 칼럼에는 not null 제약 조건을 추가할 수 없음" + +#: 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 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "" "\"%s\" 제약 조건이 이미 \"%s\" 릴레이션(relation)에서 사용되고 있습니다" -#: catalog/heap.c:2581 +#: catalog/heap.c:2786 #, c-format msgid "" "constraint \"%s\" conflicts with non-inherited constraint on relation \"%s\"" msgstr "" "\"%s\" 제약 조건이 비상속 제약 조건과 충돌합니다, 해당 릴레이션: \"%s\"" -#: catalog/heap.c:2592 +#: catalog/heap.c:2797 #, c-format msgid "" "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgstr "\"%s\" 제약 조건이 상속 제약 조건과 충돌합니다, 해당 릴레이션: \"%s\"" -#: catalog/heap.c:2602 +#: 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:2607 +#: 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:2633 catalog/pg_constraint.c:853 commands/tablecmds.c:3074 -#: commands/tablecmds.c:3377 commands/tablecmds.c:7089 -#: commands/tablecmds.c:15907 commands/tablecmds.c:16038 +#: 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 #, c-format msgid "too many inheritance parents" msgstr "너무 많은 상속 부모" -#: catalog/heap.c:2717 +#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#, c-format +msgid "" +"conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" +msgstr "\"%s\" 칼럼 대상 not null 제약 조건과 NO INHERIT 옵션이 충돌함" + +#: 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 "\"%s\" 칼럼 대상 NO INHERIT 옵션이 not null 제약 조건과 충돌함" + +#: 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\" 계산된 칼럼은 칼럼 생성 표현식에서는 사용될 수 없음" +msgstr "\"%s\" 미리 계산된 칼럼은 칼럼 생성식에서는 사용될 수 없음" -#: catalog/heap.c:2719 +#: catalog/heap.c:3203 #, c-format msgid "A generated column cannot reference another generated column." -msgstr "계산된 칼럼은 다른 계산된 칼럼을 참조할 수 없음" +msgstr "미리 계산된 칼럼은 다른 계산된 칼럼을 참조할 수 없음" -#: catalog/heap.c:2725 +#: catalog/heap.c:3209 #, c-format msgid "cannot use whole-row variable in column generation expression" -msgstr "미리 계산된 칼럼 생성 표현식에 row 전체 변수는 사용할 수 없음" +msgstr "미리 계산된 칼럼 생성식에 row 전체 변수는 사용할 수 없음" -#: catalog/heap.c:2726 +#: catalog/heap.c:3210 #, c-format msgid "This would cause the generated column to depend on its own value." msgstr "이 오류는 미리 계산된 칼럼 자체를 그 칼럼 값으로 지정할 때 발생합니다." -#: catalog/heap.c:2781 +#: 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 "미리 계산되는 생성 표현식 결과가 immutable이 아님" +msgstr "미리 계산되는 생성식 결과가 immutable이 아님" -#: catalog/heap.c:2809 rewrite/rewriteHandler.c:1288 +#: catalog/heap.c:3377 rewrite/rewriteHandler.c:1285 #, c-format msgid "column \"%s\" is of type %s but default expression is of type %s" msgstr "" "\"%s\" 칼럼의 자료형은 %s 인데, default 표현식에서는 %s 자료형을 사용했습니다" -#: catalog/heap.c:2814 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:1293 +#: 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 #, c-format msgid "You will need to rewrite or cast the expression." msgstr "다시 정의하거나 형변환자를 사용해보십시오" -#: catalog/heap.c:2861 +#: catalog/heap.c:3429 #, c-format msgid "only table \"%s\" can be referenced in check constraint" msgstr "\"%s\" 테이블만이 체크 제약 조건에서 참조될 수 있습니다" -#: catalog/heap.c:3167 +#: catalog/heap.c:3735 #, c-format msgid "unsupported ON COMMIT and foreign key combination" msgstr "ON COMMIT 및 외래 키 조합이 지원되지 않음" -#: catalog/heap.c:3168 +#: catalog/heap.c:3736 #, c-format msgid "" "Table \"%s\" references \"%s\", but they do not have the same ON COMMIT " @@ -5513,113 +5559,113 @@ msgid "" msgstr "" "\"%s\" 테이블에서 \"%s\" 테이블을 참조하는데 ON COMMIT 설정이 같지 않습니다." -#: catalog/heap.c:3173 +#: catalog/heap.c:3741 #, c-format msgid "cannot truncate a table referenced in a foreign key constraint" msgstr "" "_^_ 테이블 내용을 모두 삭제할 수 없음, 참조키(foreign key) 제약 조건 안에서" -#: catalog/heap.c:3174 +#: catalog/heap.c:3742 #, c-format msgid "Table \"%s\" references \"%s\"." msgstr "\"%s\" 테이블은 \"%s\" 개체를 참조합니다." -#: catalog/heap.c:3176 +#: 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 "기본키(primary key)는 NULLS NOT DISTINCT 인덱스를 사용할 수 없음" -#: catalog/index.c:250 +#: catalog/index.c:251 #, c-format msgid "primary keys cannot be expressions" msgstr "기본키(primary key)를 표현할 수 없음" -#: 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 "exclusion 제약 조건용 잠금 없는 인덱스 만들기는 지원하지 않습니다" -#: 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\" 이름의 릴레이션(relation)이 이미 있습니다, 건너뜀" -#: catalog/index.c:941 +#: catalog/index.c:943 #, c-format msgid "pg_class index OID value not set when in binary upgrade mode" msgstr "이진 업그레이드 작업 때, pg_class 인덱스 OID 값이 지정되지 않았습니다" -#: catalog/index.c:951 utils/cache/relcache.c:3791 +#: 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:3668 +#: catalog/index.c:3729 #, c-format msgid "cannot reindex temporary tables of other sessions" msgstr "임시 테이블의 인덱스 재생성 작업은 다른 세션에서 할 수 없음" -#: catalog/index.c:3679 commands/indexcmds.c:3626 +#: catalog/index.c:3740 commands/indexcmds.c:3791 #, c-format msgid "cannot reindex invalid index on TOAST table" msgstr "TOAST 테이블에 딸린 잘못된 인덱스에 대해 재색인 작업을 할 수 없음" -#: catalog/index.c:3695 commands/indexcmds.c:3504 commands/indexcmds.c:3650 -#: commands/tablecmds.c:3581 +#: 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:3832 +#: catalog/index.c:3893 #, c-format msgid "index \"%s\" was reindexed" msgstr "\"%s\" 인덱스가 다시 만들어졌음" -#: catalog/index.c:3998 +#: catalog/index.c:4059 #, c-format msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "" @@ -5627,7 +5673,7 @@ msgstr "" "음, 건너뜀" #: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 -#: commands/trigger.c:5731 +#: commands/trigger.c:5817 #, c-format msgid "cross-database references are not implemented: \"%s.%s.%s\"" msgstr "서로 다른 데이터베이스간의 참조는 구현되어있지 않습니다: \"%s.%s.%s\"" @@ -5647,19 +5693,20 @@ msgstr "\"%s.%s\" 릴레이션의 잠금 정보를 구할 수 없음" msgid "could not obtain lock on relation \"%s\"" msgstr "\"%s\" 릴레이션의 잠금 정보를 구할 수 없음" -#: catalog/namespace.c:633 parser/parse_relation.c:1430 +#: catalog/namespace.c:633 parser/parse_relation.c:1447 +#: statistics/stat_utils.c:231 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "\"%s.%s\" 이름의 릴레이션(relation)이 없습니다" -#: catalog/namespace.c:638 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\" 이름의 릴레이션(relation)이 없습니다" -#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1607 -#: commands/extension.c:1613 +#: catalog/namespace.c:704 catalog/namespace.c:3522 commands/extension.c:1804 +#: commands/extension.c:1810 #, c-format msgid "no schema has been selected to create in" msgstr "선택된 스키마 없음, 대상:" @@ -5705,13 +5752,13 @@ msgstr "\"%s\" 전문 검색 템플릿이 없음" msgid "text search configuration \"%s\" does not exist" msgstr "\"%s\" 전문 검색 구성이 없음" -#: catalog/namespace.c:3329 parser/parse_expr.c:868 parser/parse_target.c:1259 +#: catalog/namespace.c:3329 parser/parse_expr.c:866 parser/parse_target.c:1262 #, c-format msgid "cross-database references are not implemented: %s" msgstr "서로 다른 데이터베이스간의 참조는 구현되어있지 않습니다: %s" -#: catalog/namespace.c:3335 parser/parse_expr.c:875 parser/parse_target.c:1266 -#: gram.y:19181 gram.y:19221 +#: catalog/namespace.c:3335 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: gram.y:19355 gram.y:19395 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "적당하지 않은 qualified 이름 입니다 (너무 많은 점이 있네요): %s" @@ -5727,7 +5774,7 @@ 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:1404 utils/adt/regproc.c:1688 +#: commands/tablecmds.c:1464 utils/adt/regproc.c:1688 #, c-format msgid "schema \"%s\" does not exist" msgstr "\"%s\" 스키마(schema) 없음" @@ -5763,243 +5810,249 @@ msgstr "복구 작업 중에는 임시 테이블을 만들 수 없음" 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:2327 -#: commands/tablecmds.c:12925 +#: 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 #, c-format msgid "\"%s\" is not a table" msgstr "\"%s\" 개체는 테이블이 아님" -#: catalog/objectaddress.c:1378 commands/tablecmds.c:269 -#: commands/tablecmds.c:17851 commands/view.c:114 +#: catalog/objectaddress.c:1383 commands/tablecmds.c:272 +#: commands/tablecmds.c:19619 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:17856 +#: catalog/objectaddress.c:1390 commands/matview.c:201 commands/tablecmds.c:278 +#: commands/tablecmds.c:19624 #, c-format msgid "\"%s\" is not a materialized view" msgstr "\"%s\" 개체는 구체화된 뷰(materialized view)가 아닙니다" -#: catalog/objectaddress.c:1392 commands/tablecmds.c:293 -#: commands/tablecmds.c:17861 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 +#: commands/tablecmds.c:19629 #, 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 "\"%s\" 사용자용 기본 ACL 없음. (해당 스키마: \"%s\", 해당 개체: %s)" -#: catalog/objectaddress.c:2063 +#: catalog/objectaddress.c:2072 #, c-format msgid "default ACL for user \"%s\" on %s does not exist" msgstr "\"%s\" 사용자용 기본 ACL 없음. (해당 개체: %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는 null 값을 사용할 수 없음" -#: 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:2928 +#: catalog/objectaddress.c:2937 #, c-format msgid "column %s of %s" msgstr " %s 칼럼(%s 의)" -#: catalog/objectaddress.c:2943 +#: catalog/objectaddress.c:2952 #, c-format msgid "function %s" msgstr "%s 함수" -#: catalog/objectaddress.c:2956 +#: catalog/objectaddress.c:2965 #, c-format msgid "type %s" msgstr "%s 자료형" -#: catalog/objectaddress.c:2993 +#: catalog/objectaddress.c:3002 #, c-format msgid "cast from %s to %s" msgstr "%s 자료형을 %s 자료형으로 바꾸는 작업" -#: catalog/objectaddress.c:3026 +#: catalog/objectaddress.c:3035 #, c-format msgid "collation %s" msgstr "collation %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3057 +#: catalog/objectaddress.c:3066 #, c-format msgid "constraint %s on %s" msgstr "%s 제약 조건(해당 개체: %s)" -#: catalog/objectaddress.c:3063 +#: catalog/objectaddress.c:3072 #, c-format msgid "constraint %s" msgstr "%s 제약 조건" -#: catalog/objectaddress.c:3095 +#: catalog/objectaddress.c:3104 #, c-format msgid "conversion %s" msgstr "%s 문자코드변환규칙" #. translator: %s is typically "column %s of table %s" -#: catalog/objectaddress.c:3117 +#: catalog/objectaddress.c:3126 #, c-format msgid "default value for %s" msgstr "%s 용 기본값" -#: catalog/objectaddress.c:3128 +#: catalog/objectaddress.c:3137 #, c-format msgid "language %s" msgstr "프로시주얼 언어 %s" -#: catalog/objectaddress.c:3136 +#: catalog/objectaddress.c:3145 #, c-format msgid "large object %u" msgstr "%u 대형 개체" -#: catalog/objectaddress.c:3149 +#: catalog/objectaddress.c:3158 #, c-format msgid "operator %s" msgstr "%s 연산자" -#: catalog/objectaddress.c:3186 +#: catalog/objectaddress.c:3195 #, c-format msgid "operator class %s for access method %s" msgstr "%s 연산자 클래스, %s 인덱스 액세스 방법" -#: catalog/objectaddress.c:3214 +#: catalog/objectaddress.c:3223 #, c-format msgid "access method %s" msgstr "%s 접근 방법" @@ -6008,7 +6061,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:3269 +#: catalog/objectaddress.c:3278 #, c-format msgid "operator %d (%s, %s) of %s: %s" msgstr "%d (%s, %s) 연산자 (연산자 패밀리: %s): %s" @@ -6017,239 +6070,244 @@ 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:3334 +#: 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:3388 +#: catalog/objectaddress.c:3397 #, c-format msgid "rule %s on %s" msgstr "%s 룰(rule), 해당 테이블: %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3434 +#: catalog/objectaddress.c:3443 #, c-format msgid "trigger %s on %s" msgstr "%s 트리거, 해당 테이블: %s" -#: catalog/objectaddress.c:3454 +#: catalog/objectaddress.c:3463 #, c-format msgid "schema %s" msgstr "%s 스키마" -#: catalog/objectaddress.c:3482 +#: catalog/objectaddress.c:3491 #, c-format msgid "statistics object %s" msgstr "%s 통계정보 개체" -#: catalog/objectaddress.c:3513 +#: catalog/objectaddress.c:3522 #, c-format msgid "text search parser %s" msgstr "%s 전문 검색 파서" -#: catalog/objectaddress.c:3544 +#: catalog/objectaddress.c:3553 #, c-format msgid "text search dictionary %s" msgstr "%s 전문 검색 사전" -#: catalog/objectaddress.c:3575 +#: catalog/objectaddress.c:3584 #, c-format msgid "text search template %s" msgstr "%s 전문 검색 템플릿" -#: catalog/objectaddress.c:3606 +#: catalog/objectaddress.c:3615 #, c-format msgid "text search configuration %s" msgstr "%s 전문 검색 구성" -#: catalog/objectaddress.c:3619 +#: catalog/objectaddress.c:3628 #, c-format msgid "role %s" msgstr "%s 롤" -#: catalog/objectaddress.c:3656 catalog/objectaddress.c:5505 +#: catalog/objectaddress.c:3665 catalog/objectaddress.c:5589 #, c-format msgid "membership of role %s in role %s" msgstr "%s 롤 구성원(해당 롤: %s)" -#: catalog/objectaddress.c:3677 +#: catalog/objectaddress.c:3686 #, c-format msgid "database %s" msgstr "%s 데이터베이스" -#: catalog/objectaddress.c:3693 +#: catalog/objectaddress.c:3702 #, c-format msgid "tablespace %s" msgstr "%s 테이블스페이스" -#: catalog/objectaddress.c:3704 +#: catalog/objectaddress.c:3713 #, c-format msgid "foreign-data wrapper %s" msgstr "%s 외부 데이터 래퍼" -#: catalog/objectaddress.c:3714 +#: catalog/objectaddress.c:3723 #, c-format msgid "server %s" msgstr "%s 서버" -#: catalog/objectaddress.c:3747 +#: catalog/objectaddress.c:3756 #, c-format msgid "user mapping for %s on server %s" msgstr "%s에 대한 사용자 매핑, 해당 서버: %s" -#: catalog/objectaddress.c:3799 +#: 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:3803 +#: catalog/objectaddress.c:3812 #, c-format msgid "default privileges on new relations belonging to role %s" msgstr "%s 롤이 새 테이블을 만들 때 기본적으로 지정할 접근 권한" -#: catalog/objectaddress.c:3809 +#: 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:3813 +#: catalog/objectaddress.c:3822 #, c-format msgid "default privileges on new sequences belonging to role %s" msgstr "%s 롤이 새 시퀀스를 만들 때 기본적으로 지정할 접근 권한" -#: catalog/objectaddress.c:3819 +#: 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:3823 +#: catalog/objectaddress.c:3832 #, c-format msgid "default privileges on new functions belonging to role %s" msgstr "%s 롤이 새 함수를 만들 때 기본적으로 지정할 접근 권한" -#: catalog/objectaddress.c:3829 +#: 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:3833 +#: catalog/objectaddress.c:3842 #, c-format msgid "default privileges on new types belonging to role %s" msgstr "%s 롤이 새 자료형을 만들 때 기본적으로 지정할 접근 권한" -#: catalog/objectaddress.c:3839 +#: catalog/objectaddress.c:3848 #, c-format msgid "default privileges on new schemas belonging to role %s" msgstr "%s 롤이 새 시퀀스를 만들 때 기본적으로 지정할 접근 권한" -#: catalog/objectaddress.c:3846 +#: 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:3850 +#: catalog/objectaddress.c:3865 #, c-format msgid "default privileges belonging to role %s" msgstr "%s 롤의 기본 접근 권한" -#: catalog/objectaddress.c:3872 +#: catalog/objectaddress.c:3887 #, c-format msgid "extension %s" msgstr "%s 확장 모듈" -#: catalog/objectaddress.c:3889 +#: catalog/objectaddress.c:3904 #, c-format msgid "event trigger %s" msgstr "%s 이벤트 트리거" -#: catalog/objectaddress.c:3913 +#: catalog/objectaddress.c:3928 #, c-format msgid "parameter %s" msgstr "매개 변수 %s" #. translator: second %s is, e.g., "table %s" -#: catalog/objectaddress.c:3956 +#: catalog/objectaddress.c:3971 #, c-format msgid "policy %s on %s" msgstr "%s 정책(%s 의)" -#: catalog/objectaddress.c:3970 +#: catalog/objectaddress.c:3985 #, c-format msgid "publication %s" msgstr "%s 발행" -#: catalog/objectaddress.c:3983 +#: 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:4014 +#: catalog/objectaddress.c:4029 #, c-format msgid "publication of %s in publication %s" msgstr "%s 발행 (해당 발행이름: %s)" -#: catalog/objectaddress.c:4027 +#: catalog/objectaddress.c:4042 #, c-format msgid "subscription %s" msgstr "%s 구독" -#: catalog/objectaddress.c:4048 +#: catalog/objectaddress.c:4063 #, c-format msgid "transform for %s language %s" msgstr "%s 형 변환자, 대상언어: %s" -#: catalog/objectaddress.c:4117 +#: catalog/objectaddress.c:4132 #, c-format msgid "table %s" msgstr "%s 테이블" -#: catalog/objectaddress.c:4122 +#: catalog/objectaddress.c:4137 #, c-format msgid "index %s" msgstr "%s 인덱스" -#: catalog/objectaddress.c:4126 +#: catalog/objectaddress.c:4141 #, c-format msgid "sequence %s" msgstr "%s 시퀀스" -#: catalog/objectaddress.c:4130 +#: catalog/objectaddress.c:4145 #, c-format msgid "toast table %s" msgstr "%s 토스트 테이블" -#: catalog/objectaddress.c:4134 +#: catalog/objectaddress.c:4149 #, c-format msgid "view %s" msgstr "%s 뷰" -#: catalog/objectaddress.c:4138 +#: catalog/objectaddress.c:4153 #, c-format msgid "materialized view %s" msgstr "%s 구체화된 뷰" -#: catalog/objectaddress.c:4142 +#: catalog/objectaddress.c:4157 #, c-format msgid "composite type %s" msgstr "%s 복합 자료형" -#: catalog/objectaddress.c:4146 +#: catalog/objectaddress.c:4161 #, c-format msgid "foreign table %s" msgstr "%s 외부 테이블" -#: catalog/objectaddress.c:4151 +#: catalog/objectaddress.c:4166 #, c-format msgid "relation %s" msgstr "%s 릴레이션" -#: catalog/objectaddress.c:4192 +#: catalog/objectaddress.c:4207 #, c-format msgid "operator family %s for access method %s" msgstr "%s 연산자 페밀리, 접근 방법: %s" @@ -6298,7 +6356,7 @@ msgstr "" msgid "return type of inverse transition function %s is not %s" msgstr "%s inverse transition 함수의 반환 자료형이 %s 형이 아닙니다." -#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:2991 +#: catalog/pg_aggregate.c:352 executor/nodeWindowAgg.c:3057 #, c-format msgid "" "strictness of aggregate's forward and inverse transition functions must match" @@ -6314,7 +6372,7 @@ msgstr "부가 인자를 쓰는 마침 함수는 STRICT 옵션이 없어야 함" msgid "return type of combine function %s is not %s" msgstr "%s combine 함수의 반환 자료형이 %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 "" @@ -6330,12 +6388,12 @@ msgstr "%s serialization 함수의 반환 자료형이 %s 형이 아닙니다." msgid "return type of deserialization function %s is not %s" msgstr "%s deserialization 함수의 반환 자료형이 %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 "\"internal\" 의사-자료형의 사용이 안전하지 않습니다" @@ -6354,53 +6412,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\" 개체는 ordinary 집계 함수입니다" -#: 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 "집계 함수의 direct 인자 번호는 바꿀 수 없음" -#: 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 함수는 한 set을 리턴함" -#: 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 함수는 run-time type coercion을 필요로 함" @@ -6480,21 +6538,55 @@ 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 "" +"\"%s\" NOT NULL 제약 조건(해당 테이블: \"%s\")이 있는 경우는 NO INHERIT 속성" +"을 바꿀 수 없음" + +#: catalog/pg_constraint.c:765 commands/tablecmds.c:9559 +#, c-format +msgid "You might need to make the existing constraint inheritable using %s." +msgstr "먼저 %s 명령을 이용해 제약 조건을 상속 가능하게 만들 필요가 있습니다." + +#: catalog/pg_constraint.c:775 +#, c-format +msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" +msgstr "\"%s\" NOT VALID 제약 조건(해당 테이블: \"%s\")이 호환되지 않음" + +#: catalog/pg_constraint.c:777 commands/tablecmds.c:9571 +#, c-format +msgid "You might need to validate it using %s." +msgstr "%s 명령을 이용해 VALID로 바꿀 필요가 있습니다." + +#: 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 "range와 multirange만 지원됩니다." + #: catalog/pg_conversion.c:64 #, c-format msgid "conversion \"%s\" already exists" @@ -6505,22 +6597,22 @@ msgstr "\"%s\" 이름의 변환규칙(conversion)이 이미 있음" msgid "default conversion for %s to %s already exists" msgstr "%s 코드에서 %s 코드로 변환하는 기본 변환규칙(conversion)은 이미 있음" -#: catalog/pg_depend.c:224 commands/extension.c:3397 +#: catalog/pg_depend.c:223 commands/extension.c:3665 #, 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:3705 #, 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 " @@ -6529,7 +6621,7 @@ 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 객체가 시스템 객체이기 때문에 의존성을 없앨 수 없습니다." @@ -6583,8 +6675,8 @@ msgstr "" "이 파티션은 이미 concurrently 옵션을 사용해서 떼기 작업을 했거나, 아직 떼기" "가 안 끝났습니다." -#: catalog/pg_inherits.c:595 commands/tablecmds.c:4800 -#: commands/tablecmds.c:16153 +#: catalog/pg_inherits.c:595 commands/tablecmds.c:4916 +#: commands/tablecmds.c:17866 #, c-format msgid "" "Use ALTER TABLE ... DETACH PARTITION ... FINALIZE to complete the pending " @@ -6693,43 +6785,43 @@ msgstr "%s negator 연산자는 이미 %u 연산자의 negator임" msgid "parameter ACL \"%s\" does not exist" msgstr "\"%s\" 매개 변수 ACL이 없음" -#: 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" msgstr[0] "함수는 %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 "이미 있는 함수의 리턴 자료형은 바꿀 수 없습니다" @@ -6738,110 +6830,111 @@ 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 "\"%s\" SQL 함수" -#: 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" +msgid "cannot use virtual generated column \"%s\" in publication column list" msgstr "" -"\"%s\" 칼럼은 미리 계산된 칼럼으로 발행 칼럼 목록에 포함될 수 없습니다." +"\"%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\" 발행에 포함되어 있습니다" @@ -6923,22 +7016,22 @@ 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\"." +"Table synchronization for relation \"%s\" is in progress and is in state \"%c" +"\"." msgstr "\"%s\" 릴레이션의 동기화 작업은 현재 진행중이고, 상태가 \"%c\" 임." #. 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 " @@ -6973,7 +7066,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 저장방법을 가져야만 합니다" @@ -6992,10 +7085,10 @@ msgstr "" "\"multirange_type_name\" 속성을 사용해서 이 다중 범위 자료형 이름을 직접 지정" "하세요." -#: catalog/storage.c:533 storage/buffer/bufmgr.c:1540 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 #, 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 @@ -7081,7 +7174,7 @@ msgid "" msgstr "" "SERIALFUNC, DESERIALFUNC 함수를 모두 지정하거나 모두 지정하지 않거나 하세요." -#: 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 만 지정할 수 있음" @@ -7091,17 +7184,17 @@ 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:194 #, c-format msgid "event trigger \"%s\" already exists" msgstr "\"%s\" 이름의 이벤트 트리거가 이미 있음" -#: commands/alter.c:86 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:89 commands/foreigncmds.c:884 +#: commands/alter.c:89 commands/foreigncmds.c:895 #, c-format msgid "server \"%s\" already exists" msgstr "\"%s\" 이름의 서버가 이미 있음" @@ -7111,12 +7204,12 @@ msgstr "\"%s\" 이름의 서버가 이미 있음" msgid "language \"%s\" already exists" msgstr "\"%s\" 이름의 프로시주얼 언어가 이미 있습니다" -#: commands/alter.c:95 commands/publicationcmds.c:764 +#: commands/alter.c:95 commands/publicationcmds.c:865 #, c-format msgid "publication \"%s\" already exists" msgstr "\"%s\" 이름의 발행이 이미 있습니다" -#: commands/alter.c:98 commands/subscriptioncmds.c:669 +#: commands/alter.c:98 commands/subscriptioncmds.c:629 #, c-format msgid "subscription \"%s\" already exists" msgstr "\"%s\" 이름의 구독이 이미 있습니다" @@ -7156,16 +7249,16 @@ msgstr "\"%s\" 전문 검색 구성이 \"%s\" 스키마 안에 이미 있음" msgid "must be superuser to rename %s" msgstr "%s 이름 변경 작업은 슈퍼유저만 할 수 있음" -#: commands/alter.c:256 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:257 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 " @@ -7174,7 +7267,7 @@ msgstr "" "구독 옵션으로 password_required 옵션값을 false 지정하거나 변경하는 것은 슈퍼" "유저만 할 수 있습니다." -#: commands/alter.c:735 +#: commands/alter.c:746 #, c-format msgid "must be superuser to set schema of %s" msgstr "%s의 스키마 지정은 슈퍼유져여야 합니다" @@ -7194,7 +7287,7 @@ msgstr "슈퍼유저만 접근 방법을 만들 수 있습니다." msgid "access method \"%s\" already exists" msgstr "\"%s\" 이름의 인덱스 접근 방법이 이미 있습니다." -#: commands/amcmds.c:154 commands/indexcmds.c:224 commands/indexcmds.c:850 +#: 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" @@ -7205,45 +7298,50 @@ 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:203 +#: 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 " @@ -7252,7 +7350,7 @@ 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 " @@ -7261,7 +7359,7 @@ msgstr "" "\"%s.%s\" 상속 나무의 통계 수집 건너뜀 --- 이 상속 나무에는 하위 테이블이 없" "음" -#: commands/analyze.c:1482 +#: commands/analyze.c:1528 #, c-format msgid "" "skipping analyze of \"%s.%s\" inheritance tree --- this inheritance tree " @@ -7317,42 +7415,42 @@ msgid "" msgstr "" "이 프로세스의 현재 트랜잭션을 종료하지 않으면, NOTIFY 큐를 비울 수 없습니다" -#: commands/cluster.c:128 +#: commands/cluster.c:127 #, c-format msgid "unrecognized CLUSTER option \"%s\"" msgstr "알 수 없는 CLUSTER 옵션 \"%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 "다른 세션의 임시 테이블은 cluster 작업을 할 수 없습니다" -#: commands/cluster.c:177 +#: commands/cluster.c:176 #, c-format msgid "there is no previously clustered index for table \"%s\"" msgstr "\"%s\" 테이블을 위한 previously clustered 인덱스가 없음" -#: commands/cluster.c:191 commands/tablecmds.c:14797 commands/tablecmds.c:16729 +#: commands/cluster.c:190 commands/tablecmds.c:16422 commands/tablecmds.c:18488 #, 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 "다른 세션의 임시 테이블은 vacuum 작업을 할 수 없음" -#: commands/cluster.c:513 commands/tablecmds.c:16739 +#: commands/cluster.c:507 commands/tablecmds.c:18498 #, 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 " @@ -7360,38 +7458,38 @@ msgid "" msgstr "" "\"%s\" 인덱스는 자료 액세스 방법이 cluster 작업을 할 수 없는 방법입니다." -#: commands/cluster.c:533 +#: commands/cluster.c:527 #, c-format msgid "cannot cluster on partial index \"%s\"" msgstr "" "\"%s\" 인덱스가 부분인덱스(partial index)라서 cluster 작업을 할 수 없습니다" -#: 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" @@ -7399,7 +7497,7 @@ 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" @@ -7408,7 +7506,7 @@ msgstr "" "%.0f 개의 사용하지 않는 로우 버전을 아직 지우지 못했음.\n" "%s." -#: commands/cluster.c:1744 +#: commands/cluster.c:1751 #, c-format msgid "permission denied to cluster \"%s\", skipping it" msgstr "\"%s\" 클러스터 권한 없음, 건너뜀" @@ -7419,13 +7517,14 @@ msgid "collation attribute \"%s\" not recognized" msgstr "\"%s\" 연산자 속성을 처리할 수 없음" #: commands/collationcmds.c:123 commands/collationcmds.c:129 -#: commands/define.c:388 commands/tablecmds.c:8129 -#: replication/pgoutput/pgoutput.c:314 replication/pgoutput/pgoutput.c:337 -#: replication/pgoutput/pgoutput.c:351 replication/pgoutput/pgoutput.c:361 -#: replication/pgoutput/pgoutput.c:371 replication/pgoutput/pgoutput.c:381 -#: replication/pgoutput/pgoutput.c:393 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: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 #, c-format msgid "conflicting or redundant options" msgstr "상충하거나 중복된 옵션들" @@ -7456,7 +7555,7 @@ msgstr "알 수 없는 정렬규칙 제공자 이름: %s" 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\")" @@ -7466,7 +7565,7 @@ msgstr "\"%s\"에서 표준을 사용함(해당 ICU 로케일: \"%s\")" msgid "nondeterministic collations not supported with this provider" msgstr "이 제공자는 DETERMINISTIC = false 옵션을 지원하지 않음" -#: 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로 지정했을 때만 사용할 수 있습니다." @@ -7476,68 +7575,69 @@ msgstr "ICU 규칙은 로케일 제공자로 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:7905 commands/tablecmds.c:7915 -#: commands/tablecmds.c:7917 commands/tablecmds.c:14499 -#: commands/tablecmds.c:17884 commands/tablecmds.c:17905 -#: 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:16124 +#: commands/tablecmds.c:19652 commands/tablecmds.c:19673 +#: 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:2566 +#: commands/collationcmds.c:476 commands/dbcommands.c:2605 #, c-format msgid "changing version from %s to %s" msgstr "%s에서 %s 버전으로 바꿉니다" -#: commands/collationcmds.c:495 commands/dbcommands.c:2579 +#: commands/collationcmds.c:491 commands/dbcommands.c:2618 #, c-format msgid "version has not changed" msgstr "버전이 바뀌지 않았습니다" -#: commands/collationcmds.c:528 commands/dbcommands.c:2749 +#: commands/collationcmds.c:524 commands/dbcommands.c:2788 +#: 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 "OID %u 정렬정의(collation) 없음" -#: 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:1883 -#: commands/dbcommands.c:1995 commands/dbcommands.c:2193 -#: commands/dbcommands.c:2433 commands/dbcommands.c:2526 -#: commands/dbcommands.c:2650 commands/dbcommands.c:3161 -#: utils/init/postinit.c:1034 utils/init/postinit.c:1098 -#: utils/init/postinit.c:1171 +#: 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 #, c-format msgid "database \"%s\" does not exist" msgstr "\"%s\" 데이터베이스 없음" @@ -7547,12 +7647,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 "AFTER ROW에서 \"%s\" 함수를 실행해야 함" @@ -7650,209 +7750,233 @@ 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:782 commands/copy.c:798 -#: commands/copy.c:815 commands/copy.c:841 commands/copy.c:851 +#: commands/copy.c:402 commands/copy.c:818 commands/copy.c:834 +#: commands/copy.c:851 commands/copy.c:877 commands/copy.c:887 #, 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:416 commands/copy.c:474 #, c-format msgid "COPY %s \"%s\" not recognized" msgstr "COPY %s \"%s\" 구문은 지원하지 않음" -#: commands/copy.c:502 +#: 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 +#, c-format +msgid "%s requires a numeric value" +msgstr "%s 숫자값을 필요로 함" + +#: commands/copy.c:446 +#, c-format +msgid "REJECT_LIMIT (%) must be greater than zero" +msgstr "REJECT_LIMIT (%) 값은 0(zero)보다 커야 합니다" + +#: commands/copy.c:536 #, 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:594 commands/copy.c:609 commands/copy.c:624 +#: commands/copy.c:643 #, c-format msgid "argument to option \"%s\" must be a list of column names" msgstr "\"%s\" 옵션에 대한 인자는 칼럼 이름 목록이어야 합니다." -#: commands/copy.c:621 +#: commands/copy.c:655 #, 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:2381 +#: commands/copy.c:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 #, 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:696 commands/copy.c:701 commands/copy.c:706 +#: commands/copy.c:776 #, c-format msgid "cannot specify %s in BINARY mode" msgstr "BINARY 모드에서는 %s 값을 지정할 수 없음" -#: 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:728 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "COPY 구분자는 1바이트의 단일 문자여야 함" -#: commands/copy.c:699 +#: commands/copy.c:735 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "COPY 명령에서 사용할 칼럼 구분자로 줄바꿈 문자들을 사용할 수 없습니다" -#: commands/copy.c:705 +#: commands/copy.c:741 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "COPY null 표현에서 줄바꿈 또는 캐리지 리턴을 사용할 수 없음" -#: commands/copy.c:715 +#: commands/copy.c:751 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "COPY 기본 동작에서는 줄바꿈 또는 캐리지 리턴을 사용할 수 없음" -#: commands/copy.c:733 +#: commands/copy.c:769 #, 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:791 commands/copy.c:807 +#: commands/copy.c:783 commands/copy.c:800 commands/copy.c:812 +#: commands/copy.c:827 commands/copy.c:843 #, c-format msgid "COPY %s requires CSV mode" msgstr "%s COPY 명령 옵션은 CSV 모드가 필요함" -#: commands/copy.c:752 +#: commands/copy.c:788 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "COPY 따옴표는 1바이트의 단일 문자여야 함" -#: commands/copy.c:757 +#: commands/copy.c:793 #, c-format msgid "COPY delimiter and quote must be different" msgstr "COPY 구분자 및 따옴표는 서로 달라야 함" -#: commands/copy.c:769 +#: commands/copy.c:805 #, 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:823 commands/copy.c:859 +#: commands/copy.c:859 commands/copy.c:895 #, 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:832 commands/copy.c:868 +#: commands/copy.c:868 commands/copy.c:904 #, c-format msgid "CSV quote character must not appear in the %s specification" msgstr "CSV 인용 문자는 %s 정의에 없어야 함" -#: commands/copy.c:877 +#: commands/copy.c:913 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "NULL 지정과 DEFAULT 지정이 같을 수는 없음" -#: commands/copy.c:939 +#: commands/copy.c:919 +#, 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:926 +#, c-format +msgid "COPY %s requires %s to be set to %s" +msgstr "%s COPY 명령 옵션은 %s 설정값을 %s 로 해야함" + +#: commands/copy.c:988 #, c-format msgid "column \"%s\" is a generated column" msgstr "\"%s\" 칼럼은 미리 계산된 칼럼임" -#: commands/copy.c:941 +#: commands/copy.c:990 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "미리 계산된 칼럼은 COPY 작업 대상이 아님" -#: commands/copy.c:956 commands/indexcmds.c:1890 commands/statscmds.c:239 -#: commands/tablecmds.c:2526 commands/tablecmds.c:2997 -#: commands/tablecmds.c:3808 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: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 #, c-format msgid "column \"%s\" does not exist" msgstr "\"%s\" 이름의 칼럼은 없습니다" -#: commands/copy.c:963 commands/tablecmds.c:2552 commands/trigger.c:951 -#: parser/parse_target.c:1083 parser/parse_target.c:1094 +#: commands/copy.c:1012 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 열: null 입력" -#: 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\" 구체화된 뷰(view)에 복사할 수 없음" -#: 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\" 개체는 테이블이 아닌 릴레이션(relation)이기에 복사할 수 없음" -#: 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 " @@ -7861,27 +7985,34 @@ msgstr "" "현재 하위 트랜잭션에서 만들어지거나 비워진 테이블이 아니기 때문에 COPY " "FREEZE 작업을 할 수 없음" -#: commands/copyfrom.c:1313 +#: commands/copyfrom.c:1171 +#, c-format +msgid "" +"skipped more than REJECT_LIMIT (%) rows due to data type " +"incompatibility" +msgstr "REJECT_LIMIT (%) 개의 로우가 자료형이 호환되지 않아 건너뜀" + +#: commands/copyfrom.c:1474 #, 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개의 로우가 자료형이 호환되지 않아 건너뜀" +msgid "% row was skipped due to data type incompatibility" +msgid_plural "% rows were skipped due to data type incompatibility" +msgstr[0] "%개의 로우가 자료형이 호환되지 않아 건너뜀" #. 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:601 +#: 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\" 인코딩으로 변환할 기본 변환규칙(conversion)이 없음" -#: commands/copyfrom.c:1742 +#: commands/copyfrom.c:1882 #, c-format msgid "" "COPY FROM instructs the PostgreSQL server process to read a file. You may " @@ -7891,17 +8022,17 @@ msgstr "" "언트 쪽에 있는 파일을 읽어 처리 하려면, psql의 \\copy 내장 명령어를 사용하세" "요." -#: commands/copyfrom.c:1755 commands/copyto.c:706 +#: 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\" 프로그램 실패" @@ -7942,262 +8073,269 @@ 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:732 replication/walsender.c:758 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:772 +#: commands/copyfromparse.c:294 replication/walsender.c:748 #, c-format msgid "unexpected message type 0x%02X during COPY from stdin" msgstr "" "COPY 명령으로 stdin으로 자료를 가져오는 동안 예상치 않은 메시지 타입 0x%02X " "발견됨" -#: commands/copyfromparse.c:317 replication/walsender.c:803 +#: commands/copyfromparse.c:317 replication/walsender.c:779 #, c-format msgid "COPY from stdin failed: %s" msgstr "COPY 명령에서 stdin으로 자료 가져오기 실패: %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\"" +"헤더 %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\"" +"헤더 줄 %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 " +"skipping row due to data type incompatibility at line % for column " "\"%s\": \"%s\"" msgstr "" -"%llu 줄에서 자료형이 호환되지 않아, 로우를 건너 뜀(해당 칼럼: \"%s\"): \"%s\"" +"%번째 줄에서 자료형이 호환되지 않아, 로우를 건너 뜀(해당 칼럼: \"%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 " +"skipping row due to data type incompatibility at line % for column " "\"%s\": null input" msgstr "" -"%llu 줄에서 자료형이 호환되지 않아, 로우를 건너 뜀(해당 칼럼: \"%s\"): null 입력" +"%번째 줄에서 자료형이 호환되지 않아, 로우를 건너 뜀(해당 칼럼: \"%s" +"\"): null 입력" -#: commands/copyfromparse.c:1044 +#: commands/copyfromparse.c:1122 #, c-format msgid "received copy data after EOF marker" msgstr "EOF 표시 뒤에도 복사 데이터를 받았음" -#: commands/copyfromparse.c:1051 +#: commands/copyfromparse.c:1129 #, c-format msgid "row field count is %d, expected %d" msgstr "행(row) 필드 갯수가 %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 "데이터에 carriage return 값이 잘못되었음" -#: 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 "데이터에 carriage return 값 표기가 잘못 되었음" -#: 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 "carriage return값으로 \"\\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 "" "carriage return 문자를 그대로 적용하려면, quoted CSV 필드를 사용하세요." -#: commands/copyfromparse.c:1369 +#: commands/copyfromparse.c:1427 #, c-format msgid "literal newline found in data" msgstr "데이터에 newline 값이 잘못되었음" -#: commands/copyfromparse.c:1370 +#: commands/copyfromparse.c:1428 #, c-format msgid "unquoted newline found in data" msgstr "데이터에 newline 값이 잘못 되었음" -#: commands/copyfromparse.c:1372 +#: commands/copyfromparse.c:1430 #, c-format msgid "Use \"\\n\" to represent newline." msgstr "newline 값으로 \"\\n\" 문자를 사용하세요" -#: commands/copyfromparse.c:1373 +#: commands/copyfromparse.c:1431 #, c-format msgid "Use quoted CSV field to represent newline." msgstr "newline 문자를 그대로 적용하려면, quoted 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 "end-of-copy 마크는 이전 newline 모양가 틀립니다" -#: 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 "end-of-copy 마크가 잘못되었음" +msgid "end-of-copy marker is not alone on its line" +msgstr "end-of-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\" 칼럼은 DEFAULT 값이 없음." -#: 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 "복사 자료 안에 예상치 않은 EOF 발견" -#: 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\" 이름의 개체는 뷰(view)입니다. 자료를 내보낼 수 없습니다" -#: 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\" unpopulated 구체화된 뷰에서는 copy 할 수 없음" + +#: 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\" 개체는 테이블이 아닌 릴레이션(relation)이기에 자료를 내보낼 수 없습니" "다" -#: commands/copyto.c:460 +#: commands/copyto.c:739 #, c-format msgid "DO INSTEAD NOTHING rules are not supported for COPY" msgstr "DO INSTEAD NOTHING 룰(rule)은 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 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:499 +#: commands/copyto.c:778 #, c-format msgid "COPY query must not be a utility command" msgstr "COPY 쿼리는 DDL, DCL 명령이 아니여야 함" -#: commands/copyto.c:515 +#: commands/copyto.c:794 #, c-format msgid "COPY query must have a RETURNING clause" msgstr "COPY 쿼리는 RETURNING 절이 있어야 함" -#: commands/copyto.c:544 +#: commands/copyto.c:823 #, c-format msgid "relation referenced by COPY statement has changed" msgstr "COPY 문에 의해 참조된 릴레이션이 변경 되었음" -#: commands/copyto.c:671 +#: commands/copyto.c:950 #, c-format msgid "relative path not allowed for COPY to file" msgstr "COPY 명령에 사용할 파일 이름으로 상대경로는 사용할 수 없음" -#: commands/copyto.c:690 +#: commands/copyto.c:969 #, c-format msgid "could not open file \"%s\" for writing: %m" msgstr "\"%s\" 파일 열기 실패: %m" -#: commands/copyto.c:693 +#: commands/copyto.c:972 #, c-format msgid "" "COPY TO instructs the PostgreSQL server process to write a file. You may " @@ -8207,142 +8345,150 @@ msgstr "" "저장된다. 클라이언트 쪽에서 그 결과를 저장하려면, psql \\copy 명령으로 처리" "할 수 있다." -#: 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 "시스템 객체용으로 사용할 미리 예약된 최대 %u OID 보다 작을 수는 없음" -#: 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:2414 commands/user.c:299 +#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:300 #: 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:2444 -#: utils/init/postinit.c:1113 +#: commands/dbcommands.c:1014 commands/dbcommands.c:2483 +#: 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 " @@ -8351,7 +8497,7 @@ msgstr "" "템플릿 데이터베이스와 동일한 인코딩을 사용하거나 template0을 템플릿으로 사용" "하십시오." -#: commands/dbcommands.c:1171 +#: commands/dbcommands.c:1210 #, c-format msgid "" "new collation (%s) is incompatible with the collation of the template " @@ -8360,7 +8506,7 @@ 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 " @@ -8369,14 +8515,14 @@ 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 " @@ -8385,7 +8531,7 @@ 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 " @@ -8393,7 +8539,7 @@ msgid "" 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 " @@ -8402,7 +8548,7 @@ 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 " @@ -8410,7 +8556,7 @@ msgid "" 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 " @@ -8419,7 +8565,7 @@ 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 " @@ -8428,7 +8574,7 @@ 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 " @@ -8437,7 +8583,7 @@ 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 " @@ -8446,12 +8592,12 @@ 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 " @@ -8460,7 +8606,7 @@ 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 " @@ -8471,17 +8617,17 @@ msgstr "" "고, ALTER DATABASE %s REFRESH COLLATION VERSION 명령을 실행하거나, 바른 버전" "의 라이브러리를 사용해서 PostgreSQL 엔진을 다시 만드십시오." -#: commands/dbcommands.c:1298 commands/dbcommands.c:2041 +#: 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 " @@ -8490,107 +8636,107 @@ msgstr "" "\"%s\" 데이터베이스 소속 몇몇 테이블들이 이 테이블스페이스안에 있어서 충돌이 " "일어납니다." -#: commands/dbcommands.c:1356 commands/dbcommands.c:1912 +#: 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 "%u OID 데이터베이스는 이미 \"%s\" 데이터베이스가 쓰고 있음" -#: commands/dbcommands.c:1398 +#: commands/dbcommands.c:1437 #, c-format msgid "data directory with the specified OID %u already exists" msgstr "%u OID에 해당하는 데이터 디렉터리가 이미 있습니다." -#: commands/dbcommands.c:1571 commands/dbcommands.c:1586 -#: utils/adt/pg_locale.c:2588 +#: commands/dbcommands.c:1610 commands/dbcommands.c:1625 +#: utils/adt/pg_locale.c:1518 #, 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." msgstr[0] "%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." msgstr[0] "%d 개의 구독이 있습니다." -#: commands/dbcommands.c:1754 commands/dbcommands.c:1934 -#: commands/dbcommands.c:2063 +#: 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:1894 +#: commands/dbcommands.c:1933 #, c-format msgid "permission denied to rename database" msgstr "데이터베이스 이름을 바꿀 권한이 없습니다" -#: commands/dbcommands.c:1923 +#: commands/dbcommands.c:1962 #, c-format msgid "current database cannot be renamed" msgstr "현재 데이터베이스의 이름을 바꿀 수 없음" -#: commands/dbcommands.c:2019 +#: commands/dbcommands.c:2058 #, c-format msgid "cannot change the tablespace of the currently open database" msgstr "현재 열려 있는 데이터베이스의 테이블스페이스를 바꿀 수 없음" -#: commands/dbcommands.c:2125 +#: commands/dbcommands.c:2164 #, c-format msgid "some relations of database \"%s\" are already in tablespace \"%s\"" msgstr "" "\"%s\" 데이터베이스의 일부 릴레이션들이 \"%s\" 테이블스페이스에 이미 있음" -#: commands/dbcommands.c:2127 +#: commands/dbcommands.c:2166 #, c-format msgid "" "You must move them back to the database's default tablespace before using " @@ -8599,39 +8745,39 @@ msgstr "" "이 명령을 사용하기 전에 데이터베이스의 기본 테이블스페이스로 다시 이동해야 합" "니다." -#: commands/dbcommands.c:2256 commands/dbcommands.c:2999 -#: commands/dbcommands.c:3299 commands/dbcommands.c:3412 +#: commands/dbcommands.c:2295 commands/dbcommands.c:3038 +#: commands/dbcommands.c:3338 commands/dbcommands.c:3451 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "" "불필요한 일부 파일이 이전 데이터베이스 디렉터리 \"%s\"에 남아 있을 수 있음" -#: commands/dbcommands.c:2317 +#: commands/dbcommands.c:2356 #, c-format msgid "unrecognized DROP DATABASE option \"%s\"" msgstr "알 수 없는 DROP DATABASE 옵션: \"%s\"" -#: commands/dbcommands.c:2395 +#: commands/dbcommands.c:2434 #, c-format msgid "option \"%s\" cannot be specified with other options" msgstr "\"%s\" 옵션은 다른 옵션들과 함께 사용할 수 없습니다." -#: commands/dbcommands.c:2443 +#: commands/dbcommands.c:2482 #, c-format msgid "cannot alter invalid database \"%s\"" msgstr "잘못된 \"%s\" 데이터베이스에 대해 변경 작업을 할 수 없음" -#: commands/dbcommands.c:2460 +#: commands/dbcommands.c:2499 #, c-format msgid "cannot disallow connections for current database" msgstr "현재 데이터베이스 연결을 허용하지 않습니다." -#: commands/dbcommands.c:2690 +#: commands/dbcommands.c:2729 #, c-format msgid "permission denied to change owner of database" msgstr "데이터베이스 소유주를 바꿀 권한이 없습니다" -#: commands/dbcommands.c:3105 +#: commands/dbcommands.c:3144 #, c-format msgid "" "There are %d other session(s) and %d prepared transaction(s) using the " @@ -8639,68 +8785,62 @@ msgid "" msgstr "" "데이터베이스를 사용하는 %d개의 다른 세션과 %d개의 준비된 트랜잭션이 있습니다." -#: commands/dbcommands.c:3108 +#: commands/dbcommands.c:3147 #, 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:3113 storage/ipc/procarray.c:3859 +#: commands/dbcommands.c:3152 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:3255 +#: commands/dbcommands.c:3294 #, c-format msgid "missing directory \"%s\"" msgstr "\"%s\" 디렉터리가 빠졌음" -#: commands/dbcommands.c:3313 commands/tablespace.c:184 +#: commands/dbcommands.c:3352 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:2910 +#: commands/dropcmds.c:96 commands/functioncmds.c:1400 +#: utils/adt/ruleutils.c:2956 #, c-format msgid "\"%s\" is an aggregate function" msgstr "\"%s\" 함수는 집계 함수입니다" @@ -8710,19 +8850,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:3892 -#: commands/tablecmds.c:4050 commands/tablecmds.c:4102 -#: commands/tablecmds.c:17161 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:18929 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:1409 +#: commands/dropcmds.c:183 commands/dropcmds.c:282 commands/tablecmds.c:1469 #, c-format msgid "schema \"%s\" does not exist, skipping" msgstr "\"%s\" 스키마(schema) 없음, 건너뜀" -#: 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\" 자료형 없음, 건너뜀" @@ -8742,7 +8882,7 @@ msgstr "\"%s\" 정렬규칙 없음, 건너뜀" msgid "conversion \"%s\" does not exist, skipping" msgstr "\"%s\" 문자코드변환규칙(conversion) 없음, 건너뜀" -#: commands/dropcmds.c:288 commands/statscmds.c:664 +#: commands/dropcmds.c:288 commands/statscmds.c:682 #, c-format msgid "statistics object \"%s\" does not exist, skipping" msgstr "\"%s\" 통계정보 개체 없음, 무시함" @@ -8837,7 +8977,7 @@ msgstr " \"%s\" 룰(rule)이 \"%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\" 서버가 없음, 건너뜀" @@ -8859,238 +8999,239 @@ msgstr "\"%s\" 연산자 패밀리(\"%s\" 접근 방법)가 없음, 건너뜀" msgid "publication \"%s\" does not exist, skipping" msgstr "\"%s\" 발행 없음, 건너뜀" -#: commands/event_trigger.c:137 +#: commands/event_trigger.c:140 #, c-format msgid "permission denied to create event trigger \"%s\"" msgstr "\"%s\" 이벤트 트리거를 만들 권한이 없음" -#: commands/event_trigger.c:139 +#: commands/event_trigger.c:142 #, c-format msgid "Must be superuser to create an event trigger." msgstr "슈퍼유저만 이벤트 트리거를 만들 수 있습니다." -#: commands/event_trigger.c:149 +#: commands/event_trigger.c:152 #, c-format msgid "unrecognized event name \"%s\"" msgstr "알 수 없는 이벤트 이름: \"%s\"" -#: commands/event_trigger.c:166 +#: commands/event_trigger.c:169 #, c-format msgid "unrecognized filter variable \"%s\"" msgstr "알 수 없는 필터 변수: \"%s\"" -#: commands/event_trigger.c:181 +#: commands/event_trigger.c:184 #, c-format msgid "tag filtering is not supported for login event triggers" msgstr "태그 필터링은 로그인 이벤트 트리거용으로 쓸 수 없음" -#: commands/event_trigger.c:224 +#: commands/event_trigger.c:227 #, 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:233 commands/event_trigger.c:255 #, c-format msgid "event triggers are not supported for %s" msgstr "%s 용 이벤트 트리거는 지원하지 않음" -#: commands/event_trigger.c:265 +#: commands/event_trigger.c:268 #, 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:441 commands/event_trigger.c:493 +#: commands/event_trigger.c:587 #, c-format msgid "event trigger \"%s\" does not exist" msgstr "\"%s\" 이벤트 트리거 없음" -#: commands/event_trigger.c:522 +#: commands/event_trigger.c:525 #, c-format msgid "event trigger with OID %u does not exist" msgstr "OID %u 이벤트 트리거가 없음" -#: commands/event_trigger.c:552 +#: commands/event_trigger.c:555 #, c-format msgid "permission denied to change owner of event trigger \"%s\"" msgstr "\"%s\" 이벤트 트리거 소유주를 변경할 권한이 없음" -#: commands/event_trigger.c:554 +#: commands/event_trigger.c:557 #, c-format msgid "The owner of an event trigger must be a superuser." msgstr "이벤트 트리거 소유주는 슈퍼유저여야 합니다." -#: commands/event_trigger.c:1409 +#: commands/event_trigger.c:1451 #, c-format msgid "%s can only be called in a sql_drop event trigger function" msgstr "%s 개체는 sql_drop 이벤트 트리거 함수 안에서만 호출 되어야 합니다." -#: commands/event_trigger.c:1502 commands/event_trigger.c:1523 +#: commands/event_trigger.c:1544 commands/event_trigger.c:1565 #, c-format msgid "%s can only be called in a table_rewrite event trigger function" msgstr "" "%s 개체는 table_rewrite 이벤트 트리거 함수 안에서만 호출 되어야 합니다." -#: commands/event_trigger.c:1936 +#: commands/event_trigger.c:1978 #, c-format msgid "%s can only be called in an event trigger function" msgstr "%s 개체는 이벤트 트리거 함수 안에서만 호출 되어야 합니다." -#: commands/explain.c:241 commands/explain.c:266 +#: commands/explain_state.c:133 commands/explain_state.c:158 #, c-format msgid "unrecognized value for EXPLAIN option \"%s\": \"%s\"" msgstr "\"%s\" EXPLAIN 옵션에서 쓸 수 없는 값: \"%s\"" -#: commands/explain.c:273 +#: commands/explain_state.c:165 #, 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 -#, c-format -msgid "EXPLAIN option TIMING requires ANALYZE" -msgstr "TIMING 옵션은 EXPLAIN ANALYZE에서만 쓸 수 있습니다." - -#: 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 "%s EXPLAIN 옵션은 ANALYZE 옵션을 필요로 함" -#: commands/explain.c:303 +#: commands/explain_state.c:198 #, c-format msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" msgstr "" "EXPLAIN 옵션으로 ANALYZE 옵션과 GENERIC_PLAN 옵션을 함께 사용할 수 없습니다." -#: commands/extension.c:178 commands/extension.c:3031 +#: commands/extension.c:177 commands/extension.c:3299 #, 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 "" "\"relocatable\" 값이 true 인 경우 \"schema\" 매개 변수는 사용할 수 없습니다." -#: 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." @@ -9098,17 +9239,17 @@ 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." @@ -9116,24 +9257,24 @@ 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\"" @@ -9141,96 +9282,96 @@ msgstr "" "\"%s\" 확장 모듈을 \"%s\" 버전에서 \"%s\" 버전으로 업데이트할 방법이 없습니" "다." -#: commands/extension.c:1496 commands/extension.c:3089 +#: commands/extension.c:1693 commands/extension.c:3357 #, 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\"" +"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:2665 #, c-format msgid "%s can only be called from an SQL script executed by CREATE EXTENSION" msgstr "" "%s 함수는 CREATE EXTENSION 명령에서 내부적으로 사용하는 SQL 스크립트 내에서" "만 사용할 수 있습니다." -#: commands/extension.c:2462 +#: commands/extension.c:2677 #, c-format msgid "OID %u does not refer to a table" msgstr "%u OID 자료가 테이블에 없습니다" -#: commands/extension.c:2467 +#: commands/extension.c:2682 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "\"%s\" 테이블은 만들려고 하는 확장 모듈의 구성 요소가 아닙니다." -#: commands/extension.c:2813 +#: commands/extension.c:3081 #, 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:3122 commands/extension.c:3216 #, c-format msgid "extension \"%s\" does not support SET SCHEMA" msgstr "\"%s\" 확장 모듈은 SET SCHEMA 구문을 지원하지 않음" -#: commands/extension.c:2911 +#: commands/extension.c:3179 #, c-format msgid "" "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" @@ -9238,32 +9379,32 @@ msgstr "" "다른 확장 모듈이 해당 스키마를 선점하고 있어, \"%s\" 확장 모듈은 SET SCHEMA " "작업을 할 수 없음." -#: commands/extension.c:2913 +#: commands/extension.c:3181 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "\"%s\" 확장 모듈은 \"%s\" 확장모듈의 위치 변경을 금지합니다." -#: commands/extension.c:2950 +#: commands/extension.c:3218 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "%s 개체가 확장 모듈 스키마인 \"%s\" 안에 없음" -#: commands/extension.c:3011 +#: commands/extension.c:3279 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "중첩된 ALTER EXTENSION 구문을 지원하지 않음" -#: commands/extension.c:3100 +#: commands/extension.c:3368 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "\"%s\" 버전의 \"%s\" 확장 모듈이 이미 설치 되어 있음" -#: commands/extension.c:3311 +#: commands/extension.c:3579 #, c-format msgid "cannot add an object of this type to an extension" msgstr "해당 확장 모듈에 이런 형태의 객체는 추가 할 수 없음" -#: commands/extension.c:3409 +#: commands/extension.c:3677 #, c-format msgid "" "cannot add schema \"%s\" to extension \"%s\" because the schema contains the " @@ -9272,77 +9413,82 @@ msgstr "" "\"%s\" 스키마에 \"%s\" 확장 모듈을 추가할 수 없음, 이미 해당 스키마 안에 포" "함되어 있음" -#: commands/extension.c:3491 commands/typecmds.c:4042 utils/fmgr/funcapi.c:725 +#: commands/extension.c:3759 commands/typecmds.c:4041 utils/fmgr/funcapi.c:725 #, c-format msgid "could not find multirange type for data type %s" msgstr "%s 자료형용 multirange 형을 찾을 수 없음" -#: commands/extension.c:3532 +#: commands/extension.c:3801 #, c-format msgid "file \"%s\" is too large" msgstr "\"%s\" 파일이 너무 큽니다." -#: commands/foreigncmds.c:148 commands/foreigncmds.c:157 +#: commands/extension.c:3894 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 " @@ -9351,7 +9497,7 @@ msgstr "" "외부 자료 랩퍼 핸들러를 바꾸면, 그것을 사용하는 외부 테이블의 내용이 바뀔 수 " "있습니다." -#: commands/foreigncmds.c:745 +#: commands/foreigncmds.c:756 #, c-format msgid "" "changing the foreign-data wrapper validator can cause the options for " @@ -9360,42 +9506,42 @@ 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\" 외부 테이블 가져 오는 중" @@ -9430,199 +9576,199 @@ 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 support 함수는 %s 자료형을 반환해야 함" -#: commands/functioncmds.c:703 +#: commands/functioncmds.c:718 #, c-format msgid "must be superuser to specify a support function" msgstr "support 함수를 지정하려면 슈퍼유져여야 합니다" -#: 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 "함수 본문(body) 부분이 빠졌습니다" -#: commands/functioncmds.c:866 +#: commands/functioncmds.c:881 #, c-format msgid "duplicate function body specified" msgstr "함수 본문(body) 부분을 중복 지정했습니다" -#: commands/functioncmds.c:871 +#: commands/functioncmds.c:886 #, c-format msgid "inline SQL function body only valid for language SQL" msgstr "함수의 language 값이 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 "OUT 매개 변수로 인해 함수 결과 형식은 %s이어야 함" -#: 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 원본 자료형이 의사자료형(pseudo-type) 입니다" -#: commands/functioncmds.c:1552 +#: commands/functioncmds.c:1570 #, c-format msgid "target data type %s is a pseudo-type" msgstr "%s 대상 자료형이 의사자료형(pseudo-type) 입니다" -#: 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 "형변환 함수는 1-3개의 인자만 지정할 수 있습니다" -#: commands/functioncmds.c:1612 +#: commands/functioncmds.c:1630 #, c-format msgid "" "argument of cast function must match or be binary-coercible from source data " @@ -9631,17 +9777,17 @@ 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 " @@ -9650,213 +9796,231 @@ 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 "형변환 함수는 세트(set)를 리턴할 수 없습니다" -#: commands/functioncmds.c:1674 +#: commands/functioncmds.c:1692 #, c-format msgid "must be superuser to create a cast WITHOUT FUNCTION" msgstr "CREATE CAST ... 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 "형변환 함수는 volatile 특성이 없어야 합니다" -#: 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 "형변환 함수는 세트(set)를 리턴할 수 없습니다" -#: commands/functioncmds.c:1801 +#: commands/functioncmds.c:1819 #, c-format msgid "transform function must take one argument" msgstr "형변환 함수는 1개의 인자만 지정할 수 있습니다" -#: 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 자료형은 의사자료형(pseudo-type) 입니다" -#: 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" msgstr[0] "프로시져에 %d개의 인자 이상을 전달할 수 없음" -#: commands/indexcmds.c:656 +#: commands/indexcmds.c:659 #, c-format msgid "must specify at least one column" msgstr "적어도 하나 이상의 칼럼을 지정해 주십시오" -#: commands/indexcmds.c:660 +#: commands/indexcmds.c:663 #, c-format msgid "cannot use more than %d columns in an index" msgstr "하나의 인덱스에서는 %d개보다 많은 칼럼을 사용할 수 없습니다" -#: commands/indexcmds.c:703 +#: commands/indexcmds.c:712 #, c-format msgid "cannot create index on relation \"%s\"" msgstr "\"%s\" 릴레이션 대상으로 인덱스를 만들 수 없음" -#: commands/indexcmds.c:729 +#: commands/indexcmds.c:738 #, c-format msgid "cannot create index on partitioned table \"%s\" concurrently" msgstr "\"%s\" 파티션된 테이블 대상으로 동시에 인덱스를 만들 수 없음" -#: commands/indexcmds.c:739 +#: commands/indexcmds.c:748 #, c-format msgid "cannot create indexes on temporary tables of other sessions" msgstr "다른 세션의 임시 테이블에 인덱스를 만들 수는 없습니다" -#: commands/indexcmds.c:777 commands/tablecmds.c:818 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:809 commands/tablecmds.c:849 commands/tablecmds.c:3588 +#: 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:842 +#: commands/indexcmds.c:851 #, c-format msgid "substituting access method \"gist\" for obsolete method \"rtree\"" msgstr "사용하지 않는 \"rtree\" 방법을 \"gist\" 액세스 방법으로 대체하는 중" -#: commands/indexcmds.c:863 +#: commands/indexcmds.c:872 #, c-format msgid "access method \"%s\" does not support unique indexes" msgstr "\"%s\" 인덱스 접근 방법은 고유 인덱스를 지원하지 않습니다" -#: commands/indexcmds.c:868 +#: commands/indexcmds.c:877 #, c-format msgid "access method \"%s\" does not support included columns" msgstr "\"%s\" 인덱스 접근 방법은 포함된 칼럼을 지원하지 않습니다" -#: commands/indexcmds.c:873 +#: commands/indexcmds.c:882 #, c-format msgid "access method \"%s\" does not support multicolumn indexes" msgstr "\"%s\" 인덱스 접근 방법은 다중 열 인덱스를 지원하지 않습니다" -#: commands/indexcmds.c:878 +#: commands/indexcmds.c:887 #, c-format msgid "access method \"%s\" does not support exclusion constraints" msgstr "\"%s\" 인덱스 접근 방법은 제외 제약 조건을 지원하지 않습니다" -#: commands/indexcmds.c:1007 +#: 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:1017 +#: commands/indexcmds.c:1019 #, c-format msgid "unsupported %s constraint with partition key definition" msgstr "파티션 키 정의에는 %s 제약조건을 지원하지 않음" -#: commands/indexcmds.c:1019 +#: commands/indexcmds.c:1021 #, c-format msgid "%s constraints cannot be used when partition keys include expressions." msgstr "%s 제약조건은 파티션 키 포함 표현식에 사용할 수 없습니다" -#: commands/indexcmds.c:1069 +#: 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 자료형에서 사용할 동등 연산자(equality operator)를 찾을 수 없습니다." + +#: 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 " @@ -9865,13 +10029,13 @@ msgstr "" "\"%s\" 컬럼에서 같지 않음 연산자(\"%s\")를 사용하는데 이것을 파티션 키와 매치" "할 수 없음" -#: commands/indexcmds.c:1085 +#: commands/indexcmds.c:1093 #, c-format msgid "" "unique constraint on partitioned table must include all partitioning columns" msgstr "하위 테이블 용 유니크 제약조건에는 모든 파티션 칼럼이 포함되어야 함" -#: commands/indexcmds.c:1086 +#: commands/indexcmds.c:1094 #, c-format msgid "" "%s constraint on table \"%s\" lacks column \"%s\" which is part of the " @@ -9880,93 +10044,108 @@ msgstr "" "%s 제약조건(해당 테이블: \"%s\")에 기본키의 한 부분인 \"%s\" 칼럼이 빠져있습" "니다." -#: commands/indexcmds.c:1105 commands/indexcmds.c:1124 +#: commands/indexcmds.c:1116 commands/indexcmds.c:1147 #, c-format msgid "index creation on system columns is not supported" msgstr "시스템 카탈로그 테이블에 대한 인덱스 만들기는 지원하지 않습니다" -#: commands/indexcmds.c:1354 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:1356 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:1806 +#: commands/indexcmds.c:1857 #, c-format msgid "functions in index predicate must be marked IMMUTABLE" msgstr "" "인덱스 술어(predicate)에서 사용하는 함수는 IMMUTABLE 특성이 있어야 합니다" -#: commands/indexcmds.c:1885 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:1909 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:1950 +#: commands/indexcmds.c:2019 #, c-format msgid "functions in index expression must be marked IMMUTABLE" msgstr "인덱스 식(expression)에 사용하는 함수는 IMMUTABLE 특성이 있어야 합니다" -#: commands/indexcmds.c:1965 +#: commands/indexcmds.c:2034 #, c-format msgid "including column does not support a collation" msgstr "포함된 칼럼은 문자정렬규칙을 지원하지 않음" -#: commands/indexcmds.c:1969 +#: commands/indexcmds.c:2038 #, c-format msgid "including column does not support an operator class" msgstr "포함된 칼럼은 연산자 클래스를 지원하지 않음" -#: commands/indexcmds.c:1973 +#: commands/indexcmds.c:2042 #, c-format msgid "including column does not support ASC/DESC options" msgstr "포함된 칼럼은 ASC/DESC 옵션을 지원하지 않음" -#: commands/indexcmds.c:1977 +#: commands/indexcmds.c:2046 #, c-format msgid "including column does not support NULLS FIRST/LAST options" msgstr "포함된 칼럼은 NULLS FIRST/LAST 옵션을 지원하지 않음" -#: commands/indexcmds.c:2020 +#: commands/indexcmds.c:2089 #, c-format msgid "could not determine which collation to use for index expression" msgstr "해당 인덱스에서 사용할 정렬규칙(collation)을 결정할 수 없습니다." -#: commands/indexcmds.c:2028 commands/tablecmds.c:18185 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:19959 commands/typecmds.c:812 +#: parser/parse_expr.c:2805 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 자료형은 collation 지원 안함" -#: commands/indexcmds.c:2095 +#: commands/indexcmds.c:2164 #, c-format msgid "operator %s is not commutative" msgstr "%s 연산자는 교환법칙이 성립하지 않습니다" -#: commands/indexcmds.c:2097 +#: commands/indexcmds.c:2166 #, c-format msgid "Only commutative operators can be used in exclusion constraints." msgstr "" "exclude 제약조건용 인덱스를 만들 때는 교환법칙이 성립하는 연산자만 사용할 수 " "있습니다." -#: commands/indexcmds.c:2123 +#: commands/indexcmds.c:2176 #, c-format msgid "operator %s is not a member of operator family \"%s\"" msgstr "%s 연산자는 \"%s\" 연산자 패밀리 구성원이 아닙니다." -#: commands/indexcmds.c:2126 +#: commands/indexcmds.c:2179 #, c-format msgid "" "The exclusion operator must be related to the index operator class for the " @@ -9974,25 +10153,25 @@ msgid "" msgstr "" "제외 연산자는 해당 제약 조건용 인덱스 연산자 클래스의 소속이어야 합니다." -#: commands/indexcmds.c:2161 +#: commands/indexcmds.c:2228 #, c-format msgid "access method \"%s\" does not support ASC/DESC options" msgstr "\"%s\" 접근 방법은 ASC/DESC 옵션을 지원하지 않음" -#: commands/indexcmds.c:2166 +#: 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:2210 commands/tablecmds.c:18210 -#: commands/tablecmds.c:18216 commands/typecmds.c:2311 +#: commands/indexcmds.c:2277 commands/tablecmds.c:19984 +#: commands/tablecmds.c:19990 commands/typecmds.c:2349 #, c-format msgid "data type %s has no default operator class for access method \"%s\"" msgstr "" "%s 자료형은 \"%s\" 인덱스 액세스 방법을 위한 기본 연산자 클래스(operator " "class)가 없습니다. " -#: commands/indexcmds.c:2212 +#: commands/indexcmds.c:2279 #, c-format msgid "" "You must specify an operator class for the index or define a default " @@ -10001,87 +10180,106 @@ msgstr "" "이 인덱스를 위한 연산자 클래스를 지정하거나 먼저 이 자료형을 위한 기본 연산" "자 클래스를 정의해 두어야 합니다" -#: commands/indexcmds.c:2241 commands/indexcmds.c:2249 +#: 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:2263 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:2353 +#: commands/indexcmds.c:2420 #, c-format msgid "there are multiple default operator classes for data type %s" msgstr "%s 자료형을 위한 기본 연산자 클래스가 여러개 있습니다" -#: commands/indexcmds.c:2681 +#: 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 "could not identify a contained-by operator for type %s" +msgstr "%s 자료형용 포함 연산자를 알 수 없음" + +#: commands/indexcmds.c:2472 commands/tablecmds.c:10333 +#, 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:2913 +#: commands/indexcmds.c:3078 #, c-format msgid "table \"%s\" has no indexes that can be reindexed concurrently" msgstr "\"%s\" 테이블에는 잠금 없는 재색인 작업을 할 대상 인덱스가 없음" -#: commands/indexcmds.c:2927 +#: commands/indexcmds.c:3092 #, c-format msgid "table \"%s\" has no indexes to reindex" msgstr "\"%s\" 테이블에는 재색인 작업을 할 인덱스가 없습니다" -#: commands/indexcmds.c:2974 commands/indexcmds.c:3485 -#: commands/indexcmds.c:3615 +#: commands/indexcmds.c:3139 commands/indexcmds.c:3650 +#: commands/indexcmds.c:3780 #, c-format msgid "cannot reindex system catalogs concurrently" msgstr "시스템 카탈로그 테이블 대상으로 잠금 없는 인덱스를 만들 수 없음" -#: commands/indexcmds.c:2998 +#: commands/indexcmds.c:3163 #, c-format msgid "can only reindex the currently open database" msgstr "열려있는 현재 데이터베이스에서만 reindex 명령을 사용할 수 있습니다" -#: commands/indexcmds.c:3090 +#: commands/indexcmds.c:3255 #, c-format msgid "cannot reindex system catalogs concurrently, skipping all" msgstr "" "시스템 카탈로그 테이블 대상으로 잠금 없는 재색인 작업을 할 수 없음, 모두 건너" "뜀" -#: commands/indexcmds.c:3123 +#: commands/indexcmds.c:3288 #, c-format msgid "cannot move system relations, skipping all" msgstr "시스템 릴레이션은 이동할 수 없습니다, 모두 건너뜀" -#: commands/indexcmds.c:3169 +#: commands/indexcmds.c:3334 #, c-format msgid "while reindexing partitioned table \"%s.%s\"" msgstr "\"%s.%s\" 파티션된 테이블 대상으로 인덱스 다시 만드는 중" -#: commands/indexcmds.c:3172 +#: commands/indexcmds.c:3337 #, c-format msgid "while reindexing partitioned index \"%s.%s\"" msgstr "\"%s.%s\" 파티션된 인덱스를 다시 만드는 중" -#: commands/indexcmds.c:3365 commands/indexcmds.c:4241 +#: commands/indexcmds.c:3530 commands/indexcmds.c:4422 #, c-format msgid "table \"%s.%s\" was reindexed" msgstr "\"%s.%s\" 테이블의 인덱스들을 다시 만들었습니다." -#: commands/indexcmds.c:3517 commands/indexcmds.c:3570 +#: commands/indexcmds.c:3682 commands/indexcmds.c:3735 #, c-format msgid "skipping reindex of invalid index \"%s.%s\"" msgstr "\"%s.%s\" 인덱스가 정상적이지 않아 인덱스 다시 만들기를 건너뜀" -#: commands/indexcmds.c:3520 commands/indexcmds.c:3573 +#: 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:3524 +#: commands/indexcmds.c:3689 #, c-format msgid "" "cannot reindex exclusion constraint index \"%s.%s\" concurrently, skipping" @@ -10089,22 +10287,22 @@ msgstr "" "\"%s.%s\" exclusion 제약조건을 대상으로 잠금 없는 재색인 작업을 할 수 없음, " "건너뜀" -#: commands/indexcmds.c:3680 +#: commands/indexcmds.c:3845 #, c-format msgid "cannot reindex this type of relation concurrently" msgstr "해당 개체에 대해서는 잠금 없는 재색인 작업을 할 수 없음" -#: commands/indexcmds.c:3698 +#: commands/indexcmds.c:3863 #, c-format msgid "cannot move non-shared relation to tablespace \"%s\"" msgstr "비공유 릴레이션은 \"%s\" 테이블스페이스로 이동할 수 없습니다" -#: commands/indexcmds.c:4222 commands/indexcmds.c:4234 +#: commands/indexcmds.c:4403 commands/indexcmds.c:4415 #, c-format msgid "index \"%s.%s\" was reindexed" msgstr "\"%s.%s\" 인덱스가 다시 만들어졌음" -#: commands/indexcmds.c:4224 commands/indexcmds.c:4243 +#: commands/indexcmds.c:4405 commands/indexcmds.c:4424 #, c-format msgid "%s." msgstr "%s." @@ -10114,24 +10312,24 @@ 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 " @@ -10140,7 +10338,7 @@ msgstr "" "구체화된 뷰의 하나 또는 하나 이상의 칼럼에 대한 WHERE 절 없는 고유 인덱스를 " "만드세요." -#: commands/matview.c:666 +#: commands/matview.c:682 #, c-format msgid "" "new data for materialized view \"%s\" contains duplicate rows without any " @@ -10149,15 +10347,20 @@ msgstr "" "\"%s\" 구체화된 뷰의 새 자료에 아무런 null 칼럼 없이 중복된 로우를 포함하고 " "있습니다" -#: commands/matview.c:668 +#: commands/matview.c:684 #, c-format msgid "Row: %s" msgstr "로우: %s" +#: 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\"" +msgstr "\"%s\" 연산자 패밀리 없음, 해당 접근 방법: \"%s\"" #: commands/opclasscmds.c:267 #, c-format @@ -10277,119 +10480,135 @@ msgstr "바른 연산자 클래스 옵션 구문 분석 함수는 %s." #: commands/opclasscmds.c:1259 #, c-format -msgid "btree comparison functions must have two arguments" -msgstr "btree 비교 함수는 두 개의 인자가 있어야 함" +msgid "ordering comparison functions must have two arguments" +msgstr "비교 연산용 함수는 두 개의 인자가 있어야 함" #: commands/opclasscmds.c:1263 #, c-format -msgid "btree comparison functions must return integer" -msgstr "btree 비교 함수는 반드시 integer 자료형을 반환해야 함" +msgid "ordering comparison functions must return integer" +msgstr "비교 연산용 함수는 반드시 integer 자료형을 반환해야 함" #: commands/opclasscmds.c:1280 #, c-format -msgid "btree sort support functions must accept type \"internal\"" +msgid "ordering sort support functions must accept type \"internal\"" msgstr "" -"btree 정렬 지원 함수는 반드시 \"internal\" 자료형 입력 인자로 사용해야함" +"정렬 지원 연산용 함수는 반드시 \"internal\" 자료형 입력 인자로 사용해야함" #: commands/opclasscmds.c:1284 #, c-format -msgid "btree sort support functions must return void" -msgstr "btree 정렬 지원 함수는 반드시 void 값을 반환해야 함" +msgid "ordering sort support functions must return void" +msgstr "정렬 지원 연산용 함수는 반드시 void 값을 반환해야 함" #: commands/opclasscmds.c:1295 #, c-format -msgid "btree in_range functions must have five arguments" -msgstr "btree in_range 함수는 다섯개의 인자가 필요합니다" +msgid "ordering in_range functions must have five arguments" +msgstr "in_range 연산용 함수는 다섯개의 인자가 필요합니다" #: commands/opclasscmds.c:1299 #, c-format -msgid "btree in_range functions must return boolean" -msgstr "btree in_range 함수는 불리언 자료형을 반환해야 합니다" +msgid "ordering in_range functions must return boolean" +msgstr "in_range 연산용 함수는 불리언 자료형을 반환해야 합니다" #: commands/opclasscmds.c:1315 #, c-format -msgid "btree equal image functions must have one argument" -msgstr "btree equal image 함수는 한 개의 인자가 필요합니다" +msgid "ordering equal image functions must have one argument" +msgstr "equal image 연산용 함수는 한 개의 인자가 필요합니다" #: commands/opclasscmds.c:1319 #, c-format -msgid "btree equal image functions must return boolean" -msgstr "btree equal image 함수는 불리언 자료형을 반환해야 합니다" +msgid "ordering equal image functions must return boolean" +msgstr "equal image 연산용 함수는 불리언 자료형을 반환해야 합니다" #: commands/opclasscmds.c:1332 #, c-format -msgid "btree equal image functions must not be cross-type" -msgstr "btree equal image 함수는 교차형(cross-type)이 아니여야 합니다" +msgid "ordering equal image functions must not be cross-type" +msgstr "equal image 연산용 함수는 교차형(cross-type)이 아니여야 합니다" + +#: commands/opclasscmds.c:1340 +#, c-format +msgid "btree skip support functions must accept type \"internal\"" +msgstr "" +"btree skip 지원 함수는 반드시 \"internal\" 자료형 입력 인자로 사용해야함" + +#: commands/opclasscmds.c:1344 +#, c-format +msgid "btree skip support functions must return void" +msgstr "btree skip 지원 함수는 반드시 void 값을 반환해야 함" + +#: commands/opclasscmds.c:1357 +#, c-format +msgid "btree skip support functions must not be cross-type" +msgstr "btree skip 지원 함수는 교차형(cross-type)이 아니여야 합니다" -#: commands/opclasscmds.c:1342 +#: commands/opclasscmds.c:1367 #, c-format msgid "hash function 1 must have one argument" msgstr "해시 함수는 1개의 인자만 지정할 수 있습니다" -#: commands/opclasscmds.c:1346 +#: commands/opclasscmds.c:1371 #, c-format msgid "hash function 1 must return integer" msgstr "해시 프로시저는 정수를 반환해야 함" -#: commands/opclasscmds.c:1353 +#: commands/opclasscmds.c:1378 #, c-format msgid "hash function 2 must have two arguments" msgstr "해시 함수 2는 2개의 인자만 지정할 수 있습니다" -#: commands/opclasscmds.c:1357 +#: commands/opclasscmds.c:1382 #, c-format msgid "hash function 2 must return bigint" msgstr "해시 함수 2는 bigint형을 반환해야 함" -#: commands/opclasscmds.c:1382 +#: commands/opclasscmds.c:1407 #, c-format msgid "associated data types must be specified for index support function" msgstr "인덱스 지원 함수에 대해 관련 데이터 형식을 지정해야 함" -#: commands/opclasscmds.c:1407 +#: commands/opclasscmds.c:1432 #, c-format msgid "function number %d for (%s,%s) appears more than once" msgstr "함수 번호 %d이(가) (%s,%s)에 대해 여러 번 표시됨" -#: commands/opclasscmds.c:1414 +#: commands/opclasscmds.c:1439 #, c-format msgid "operator number %d for (%s,%s) appears more than once" msgstr "연산자 번호 %d이(가) (%s,%s)에 대해 여러 번 표시됨" -#: commands/opclasscmds.c:1460 +#: 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:1589 +#: 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:1744 +#: 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:1784 +#: 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:1815 +#: commands/opclasscmds.c:1840 #, c-format msgid "" -"operator class \"%s\" for access method \"%s\" already exists in schema " -"\"%s\"" +"operator class \"%s\" for access method \"%s\" already exists in schema \"%s" +"\"" msgstr "" "\"%s\" 연산자 클래스(\"%s\" 액세스 방법을 사용하는)는 이미 \"%s\" 스키마 안" "에 있습니다" -#: commands/opclasscmds.c:1838 +#: commands/opclasscmds.c:1863 #, c-format msgid "" -"operator family \"%s\" for access method \"%s\" already exists in schema " -"\"%s\"" +"operator family \"%s\" for access method \"%s\" already exists in schema \"%s" +"\"" msgstr "\"%s\" 연산자 패밀리(접근 방법: \"%s\")가 \"%s\" 스키마에 이미 있음" #: commands/operatorcmds.c:113 commands/operatorcmds.c:121 @@ -10460,11 +10679,11 @@ 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:1740 commands/tablecmds.c:2340 -#: commands/tablecmds.c:3702 commands/tablecmds.c:6605 -#: commands/tablecmds.c:9637 commands/tablecmds.c:17772 -#: commands/tablecmds.c:17807 commands/trigger.c:316 commands/trigger.c:1332 -#: commands/trigger.c:1442 rewrite/rewriteDefine.c:268 +#: 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 #, c-format msgid "permission denied: \"%s\" is a system catalog" @@ -10505,54 +10724,54 @@ msgstr "\"%s\" 정책이 \"%s\" 테이블에 없음" msgid "only USING expression allowed for SELECT, DELETE" msgstr "USING 구문만 SELECT, DELETE 작업에 쓸 수 있음" -#: 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 "prepared statement \"%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 "??? parameter $%d of type %s 는 expected type %s 로 강요할 수 없다" -#: commands/prepare.c:411 +#: commands/prepare.c:414 #, c-format msgid "prepared statement \"%s\" already exists" msgstr "\"%s\" 이름의 준비된 명령문(prepared statement)이 이미 있습니다" -#: commands/prepare.c:450 +#: commands/prepare.c:453 #, c-format msgid "prepared statement \"%s\" does not exist" msgstr "\"%s\" 이름의 준비된 명령문(prepared statement) 없음" @@ -10562,37 +10781,38 @@ msgstr "\"%s\" 이름의 준비된 명령문(prepared statement) 없음" 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:1865 +#: 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." @@ -10600,39 +10820,39 @@ 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 "사용자 정의나 내장 함수가 mutable 인 경우 허용하지 않음." -#: 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 "\"%s\" 릴레이션용 구독 WHERE 절은 사용할 수 없음" -#: 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 "%s 값이 false 일때, 파티션 된 테이블에서는 WHERE 절을 사용할 수 없음." -#: 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 " @@ -10641,39 +10861,39 @@ 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 "FOR ALL TABLES 옵션의 발행을 만드려면 슈퍼유저여야만 합니다" -#: 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 " @@ -10682,21 +10902,21 @@ msgstr "" "이 구독은 \"%s\" 파티션 상위테이블 대상 WHERE 절을 포함하고 있습니다. \"%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 때는 이런 사용을 허용하지 않습니다." +"이 구독은 \"%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 " @@ -10705,83 +10925,93 @@ 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\" 발행은 FOR ALL TABLES 옵션으로 정의되어 있습니다." -#: 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 "" "FOR ALL TABLES 발행에 새 테이블을 추가하거나 한 테이블을 뺄 수 없습니다." -#: 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 "\"%s\" 테이블 용 WHERE 절이 충돌나거나, 중복되었음" -#: 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 "FOR ALL TABLES 옵션용 발행의 소유주는 슈퍼유저여야만 합니다" -#: 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 ALL TABLES IN SCHEMA 구독의 소유주는 슈퍼유저여야만 합니다" -#: commands/publicationcmds.c:1993 +#: commands/publicationcmds.c:2100 #, c-format msgid "publication with OID %u does not exist" msgstr "OID %u 발행 없음" +#: 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\"" @@ -10826,13 +11056,13 @@ msgstr "\"%s\" 릴레이션에 보안 라벨을 지정할 수 없음" #: 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 @@ -10846,8 +11076,12 @@ msgstr "이 세션에는 lastval 값이 아직까지 지정되지 않았습니 #: 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 @@ -10871,43 +11105,43 @@ msgstr "INCREMENT 값은 0(zero)이 될 수 없습니다" #: 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 "MAXVALUE (%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) 값은 0(zero)보다 커야 합니다" +msgid "CACHE (%) must be greater than zero" +msgstr "CACHE (%) 값은 0(zero)보다 커야 합니다" #: commands/sequence.c:1610 #, c-format @@ -10939,13 +11173,13 @@ msgstr "시퀀스 및 이 시퀀스가 연결된 테이블이 같은 스키마 msgid "cannot change ownership of identity sequence" msgstr "식별 시퀀스의 소유주는 바꿀 수 없음" -#: commands/sequence.c:1671 commands/tablecmds.c:14486 -#: commands/tablecmds.c:17181 +#: commands/sequence.c:1671 commands/tablecmds.c:16111 +#: commands/tablecmds.c:18949 #, 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 명령에서는 하나의 릴레이션만 사용할 수 있음" @@ -10970,12 +11204,18 @@ msgstr "\"%s\" 이름의 통계정보 개체가 이미 있음" 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:247 commands/statscmds.c:276 commands/statscmds.c:316 #, c-format msgid "statistics creation on system columns is not supported" msgstr "시스템 칼럼에 대한 통계정보 개체 만들기는 지원하지 않습니다" -#: commands/statscmds.c:254 commands/statscmds.c:277 +#: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 +#, c-format +msgid "statistics creation on virtual generated columns is not supported" +msgstr "" +"가상의 미리 계산된 칼럼에 대한 통계정보 개체 만들기는 지원하지 않습니다" + +#: commands/statscmds.c:260 commands/statscmds.c:289 #, c-format msgid "" "column \"%s\" cannot be used in statistics because its type %s has no " @@ -10984,7 +11224,7 @@ msgstr "" "\"%s\" 칼럼은 사용자 통계정보 수집이 불가능합니다. %s 자료형은 기본 btree 연" "산자 클래스를 정의하지 않았습니다" -#: commands/statscmds.c:321 +#: commands/statscmds.c:339 #, c-format msgid "" "expression cannot be used in multivariate statistics because its type %s has " @@ -10993,7 +11233,7 @@ msgstr "" "%s 자료형에는 기본 btree 연산자 클래스가 없어서, 표현식은 다변적인 통계 정보" "에서 사용될 수 없음" -#: commands/statscmds.c:342 +#: commands/statscmds.c:360 #, c-format msgid "" "when building statistics on a single expression, statistics kinds may not be " @@ -11001,109 +11241,108 @@ msgid "" msgstr "" "단일 표현식으로 통계 정보를 만들 때, 통계 정보 종류는 지정할 수 없습니다." -#: commands/statscmds.c:371 +#: commands/statscmds.c:389 #, c-format msgid "unrecognized statistics kind \"%s\"" msgstr "알 수 없는 통계정보 종류 \"%s\"" -#: commands/statscmds.c:400 +#: commands/statscmds.c:418 #, c-format msgid "extended statistics require at least 2 columns" msgstr "확장된 통계정보는 두 개 이상의 칼럼이 필요합니다." -#: commands/statscmds.c:418 +#: commands/statscmds.c:436 #, c-format msgid "duplicate column name in statistics definition" msgstr "통계정보 정의에서 사용하는 칼럼이 중복되었습니다" -#: commands/statscmds.c:453 +#: commands/statscmds.c:471 #, c-format msgid "duplicate expression in statistics definition" msgstr "통계정보 정의에서 표현식이 중복되었습니다" -#: commands/statscmds.c:628 commands/tablecmds.c:8620 +#: commands/statscmds.c:646 commands/tablecmds.c:8914 #, c-format msgid "statistics target %d is too low" msgstr "대상 통계값(%d)이 너무 낮습니다" -#: commands/statscmds.c:636 commands/tablecmds.c:8628 +#: commands/statscmds.c:654 commands/tablecmds.c:8922 #, c-format msgid "lowering statistics target to %d" msgstr "%d 값으로 대상 통계값을 낮춥니다" -#: commands/statscmds.c:660 +#: commands/statscmds.c:678 #, 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:404 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:410 #, 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" msgstr[0] "해당 발행자에게는 \"%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, " @@ -11112,29 +11351,63 @@ 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 "\"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 set option \"%s\" for a subscription that does not have a slot name" -msgstr "슬롯 이름 없이는 구독에 \"%s\" 옵션을 지정할 수 없음" +"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:1279 +#: 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: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" @@ -11142,14 +11415,14 @@ 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 " @@ -11158,7 +11431,7 @@ msgstr "" "two_phase 값이 true인 상태에서는 ALTER SUBSCRIPTION 명령에서 refresh나 " "copy_data 옵션을 사용할 수 없습니다." -#: commands/subscriptioncmds.c:1334 +#: commands/subscriptioncmds.c:1403 #, c-format msgid "" "Use ALTER SUBSCRIPTION ... SET PUBLICATION with refresh = false, or with " @@ -11168,7 +11441,7 @@ msgstr "" "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 " @@ -11177,7 +11450,7 @@ 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" @@ -11185,7 +11458,7 @@ 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 " @@ -11194,7 +11467,7 @@ msgstr "" "two_phase 값이 true인 상태에서는 ALTER SUBSCRIPTION 명령에서 copy_data 옵션" "을 사용할 수 없습니다." -#: commands/subscriptioncmds.c:1438 +#: commands/subscriptioncmds.c:1507 #, c-format msgid "" "Use ALTER SUBSCRIPTION ... REFRESH with copy_data = false, or use DROP/" @@ -11203,38 +11476,38 @@ 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)를 건너뛰려면, 그 값이 원본 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 "OID %u 구독 없음" -#: 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 " @@ -11243,7 +11516,7 @@ msgstr "" "\"%s\" 구독이 copy_data 옵션과 origin = NONE 설정을 요구했지만, copy 자료가 " "다른 오리진 것입니다." -#: commands/subscriptioncmds.c:2114 +#: commands/subscriptioncmds.c:2190 #, c-format msgid "" "The subscription being created subscribes to a publication (%s) that " @@ -11252,9 +11525,10 @@ msgid_plural "" "The subscription being created subscribes to publications (%s) that contain " "tables that are written to by other subscriptions." msgstr[0] "" -"만들어질 구독은 다른 구독에 의해 쓰여진 테이블이 포함된 발행(%s)을 구독합니다." +"만들어질 구독은 다른 구독에 의해 쓰여진 테이블이 포함된 발행(%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 " @@ -11262,8 +11536,8 @@ msgid "" msgstr "" "복사된 초기 자료가 해당 발행의 다른 오리진에서 복사되었는지 확인하세요." -#: commands/subscriptioncmds.c:2223 replication/logical/tablesync.c:906 -#: replication/pgoutput/pgoutput.c:1143 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 +#: replication/pgoutput/pgoutput.c:1162 #, c-format msgid "" "cannot use different column lists for table \"%s.%s\" in different " @@ -11272,15 +11546,15 @@ 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" +"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 " @@ -11289,194 +11563,199 @@ 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\" 뷰(view) 없음" -#: commands/tablecmds.c:268 +#: commands/tablecmds.c:271 #, c-format msgid "view \"%s\" does not exist, skipping" msgstr "\"%s\" 뷰(view) 없음, 무시함" -#: 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:19783 -#: parser/parse_utilcmd.c:2251 +#: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 +#: 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:14325 -#: commands/tablecmds.c:16886 +#: commands/tablecmds.c:294 commands/tablecmds.c:15950 +#: commands/tablecmds.c:18651 #, 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:734 +#: commands/tablecmds.c:802 #, c-format msgid "ON COMMIT can only be used on temporary tables" msgstr "ON COMMIT 옵션은 임시 테이블에서만 사용될 수 있습니다" -#: commands/tablecmds.c:765 +#: commands/tablecmds.c:819 +#, c-format +msgid "partitioned tables cannot be unlogged" +msgstr "파티션된 테이블은 UNLOGGED 설정을 할 수 없음" + +#: commands/tablecmds.c:839 #, c-format msgid "cannot create temporary table within security-restricted operation" msgstr "보안 제한 작업 내에서 임시 테이블을 만들 수 없음" -#: commands/tablecmds.c:801 commands/tablecmds.c:15745 +#: commands/tablecmds.c:875 commands/tablecmds.c:17375 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "\"%s\" 테이블이 여러 번 상속됨" -#: commands/tablecmds.c:1067 +#: commands/tablecmds.c:1133 #, c-format msgid "\"%s\" is not partitioned" msgstr "\"%s\" 파티션 된 테이블 아님" -#: commands/tablecmds.c:1161 +#: commands/tablecmds.c:1227 #, c-format msgid "cannot partition using more than %d columns" msgstr "%d개보다 많은 칼럼을 이용해서 파티션할 수 없음" -#: commands/tablecmds.c:1217 +#: commands/tablecmds.c:1283 #, c-format msgid "cannot create foreign partition of partitioned table \"%s\"" msgstr "\"%s\" 파티션된 테이블의 외부 파티션을 만들 수 없음" -#: commands/tablecmds.c:1219 +#: commands/tablecmds.c:1285 #, c-format msgid "Table \"%s\" contains indexes that are unique." msgstr "\"%s\" 테이블은 유니크 인덱스를 포함 하고 있음." -#: commands/tablecmds.c:1338 commands/tablecmds.c:13341 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 #, c-format msgid "too many array dimensions" msgstr "너무 많은 배열 차수" -#: commands/tablecmds.c:1343 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:1489 +#: commands/tablecmds.c:1549 #, c-format msgid "DROP INDEX CONCURRENTLY does not support dropping multiple objects" msgstr "DROP INDEX CONCURRENTLY 명령은 하나의 인덱스만 지울 수 있습니다" -#: commands/tablecmds.c:1493 +#: commands/tablecmds.c:1553 #, c-format msgid "DROP INDEX CONCURRENTLY does not support CASCADE" msgstr "DROP INDEX CONCURRENTLY 명령에서는 CASCADE 옵션을 사용할 수 없음" -#: commands/tablecmds.c:1597 +#: commands/tablecmds.c:1657 #, c-format msgid "cannot drop partitioned index \"%s\" concurrently" msgstr "" "\"%s\" 파티션된 테이블의 인덱스에 대해서는 CONCURRENTLY 옵션을 사용할 수 없음" -#: commands/tablecmds.c:1885 +#: commands/tablecmds.c:1945 #, c-format msgid "cannot truncate only a partitioned table" msgstr "파티션 된 테이블만 truncate 할 수 없음" -#: commands/tablecmds.c:1886 +#: commands/tablecmds.c:1946 #, c-format msgid "" "Do not specify the ONLY keyword, or use TRUNCATE ONLY on the partitions " @@ -11485,38 +11764,38 @@ msgstr "" "ONLY 옵션을 빼고 사용하거나, 하위 파티션 테이블을 대상으로 직접 TRUNCATE " "ONLY 명령을 사용하세요." -#: commands/tablecmds.c:1959 +#: commands/tablecmds.c:2019 #, c-format msgid "truncate cascades to table \"%s\"" msgstr "\"%s\" 개체의 자료도 함께 삭제됨" -#: commands/tablecmds.c:2320 +#: commands/tablecmds.c:2380 #, c-format msgid "cannot truncate foreign table \"%s\"" msgstr "\"%s\" 외부 테이블에 자료를 비울 수 없음" -#: commands/tablecmds.c:2377 +#: commands/tablecmds.c:2437 #, c-format msgid "cannot truncate temporary tables of other sessions" msgstr "다른 세션의 임시 테이블 자료는 비울(truncate) 수 없습니다" -#: commands/tablecmds.c:2606 commands/tablecmds.c:15642 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17272 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "\"%s\" 파티션 된 테이블로부터 상속할 수 없습니다" -#: commands/tablecmds.c:2611 +#: commands/tablecmds.c:2680 #, c-format msgid "cannot inherit from partition \"%s\"" msgstr "\"%s\" 파티션 테이블입니다, 그래서 상속 대상이 될 수 없습니다" -#: commands/tablecmds.c:2619 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\" 릴레이션(relation)은 테이블도, 외부 테이블도 아닙니다" -#: commands/tablecmds.c:2631 +#: commands/tablecmds.c:2700 #, c-format msgid "" "cannot create a temporary relation as partition of permanent relation \"%s\"" @@ -11524,25 +11803,25 @@ msgstr "" "\"%s\" 테이블은 일반 테이블입니다. 임시 테이블을 이것의 파티션 테이블로 만들 " "수 없습니다" -#: commands/tablecmds.c:2640 commands/tablecmds.c:15621 +#: commands/tablecmds.c:2709 commands/tablecmds.c:17251 #, c-format msgid "cannot inherit from temporary relation \"%s\"" msgstr "\"%s\" 임시 테이블입니다, 그래서 상속 대상이 될 수 없습니다" -#: commands/tablecmds.c:2650 commands/tablecmds.c:15629 +#: commands/tablecmds.c:2719 commands/tablecmds.c:17259 #, c-format msgid "cannot inherit from temporary relation of another session" msgstr "다른 세션의 임시 테이블입니다, 그래서 상속 대상이 될 수 없습니다" -#: commands/tablecmds.c:2791 commands/tablecmds.c:2845 -#: commands/tablecmds.c:13024 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:14610 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:2792 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 " @@ -11551,55 +11830,67 @@ msgstr "" "\"%s\" 칼럼용 미리 계산된 칼럼 생성식에 \"%s\" 테이블 전체 로우 참조가 있습니" "다" -#: commands/tablecmds.c:2846 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:2956 commands/tablecmds.c:3227 +#: 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:2961 commands/tablecmds.c:3232 +#: 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:2969 commands/tablecmds.c:3240 +#: commands/tablecmds.c:3064 commands/tablecmds.c:3358 #, c-format msgid "child column \"%s\" specifies generation expression" msgstr "" "\"%s\" 칼럼은 상속 받은 칼럼임. 미리 계산된 칼럼의 생성식을 사용할 수 없음" -#: commands/tablecmds.c:2971 commands/tablecmds.c:3242 +#: 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:3017 +#: commands/tablecmds.c:3072 commands/tablecmds.c:3366 +#: commands/tablecmds.c:17537 +#, 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 +#, 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:3019 +#: commands/tablecmds.c:3123 #, c-format msgid "To resolve the conflict, specify a generation expression explicitly." msgstr "이 충돌을 피하려면, 명시적으로 미리 계산된 생성식을 지정하십시오." -#: commands/tablecmds.c:3023 +#: commands/tablecmds.c:3127 #, c-format msgid "column \"%s\" inherits conflicting default values" msgstr "상속 받는 \"%s\" 칼럼의 default 값이 충돌함" -#: commands/tablecmds.c:3025 +#: commands/tablecmds.c:3129 #, c-format msgid "To resolve the conflict, specify a default explicitly." msgstr "이 충돌을 피하려면, default 값을 바르게 지정하십시오." -#: commands/tablecmds.c:3080 +#: commands/tablecmds.c:3196 #, c-format msgid "" "check constraint name \"%s\" appears multiple times but with different " @@ -11607,188 +11898,188 @@ msgid "" msgstr "" "\"%s\" 체크 제약 조건 이름이 여러 번 나타나지만, 각각 다른 식으로 되어있음" -#: commands/tablecmds.c:3131 +#: commands/tablecmds.c:3249 #, c-format msgid "merging column \"%s\" with inherited definition" msgstr "\"%s\" 칼럼을 상속된 정의와 병합하는 중" -#: commands/tablecmds.c:3135 +#: commands/tablecmds.c:3253 #, c-format msgid "moving and merging column \"%s\" with inherited definition" msgstr "\"%s\" 칼럼을 상속된 정의와 이동, 병합하는 중" -#: commands/tablecmds.c:3136 +#: commands/tablecmds.c:3254 #, c-format msgid "User-specified column moved to the position of the inherited column." msgstr "사용자 지정 칼럼이 상속된 칼럼의 위치로 이동되었습니다" -#: commands/tablecmds.c:3148 +#: commands/tablecmds.c:3266 #, c-format msgid "column \"%s\" has a type conflict" msgstr "\"%s\" 칼럼의 자료형이 충돌합니다" -#: commands/tablecmds.c:3150 commands/tablecmds.c:3184 -#: commands/tablecmds.c:3200 commands/tablecmds.c:3307 -#: commands/tablecmds.c:3340 commands/tablecmds.c:3356 -#: 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:3162 +#: commands/tablecmds.c:3280 #, c-format msgid "column \"%s\" has a collation conflict" msgstr "\"%s\" 칼럼의 정렬규칙이 충돌합니다" -#: commands/tablecmds.c:3164 commands/tablecmds.c:3326 -#: commands/tablecmds.c:7080 +#: commands/tablecmds.c:3282 commands/tablecmds.c:3448 +#: commands/tablecmds.c:7277 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\" 형과 \"%s\" 형" -#: commands/tablecmds.c:3182 +#: commands/tablecmds.c:3300 #, c-format msgid "column \"%s\" has a storage parameter conflict" msgstr "\"%s\" 칼럼의 스토리지 설정값이 충돌합니다" -#: commands/tablecmds.c:3198 commands/tablecmds.c:3354 +#: commands/tablecmds.c:3316 commands/tablecmds.c:3476 #, c-format msgid "column \"%s\" has a compression method conflict" msgstr "\"%s\" 칼럼의 압축 방법이 충돌합니다" -#: commands/tablecmds.c:3293 +#: commands/tablecmds.c:3420 #, c-format msgid "merging multiple inherited definitions of column \"%s\"" msgstr "\"%s\" 칼럼이 중복되어 상속됩니다." -#: commands/tablecmds.c:3305 +#: commands/tablecmds.c:3432 #, c-format msgid "inherited column \"%s\" has a type conflict" msgstr "상위 테이블에서 지정한 \"%s\" 칼럼의 자료형들이 일치하지 않습니다" -#: commands/tablecmds.c:3324 +#: commands/tablecmds.c:3446 #, c-format msgid "inherited column \"%s\" has a collation conflict" msgstr "상속 받은 \"%s\" 칼럼의 정렬규칙에서 충돌합니다." -#: commands/tablecmds.c:3338 +#: commands/tablecmds.c:3460 #, c-format msgid "inherited column \"%s\" has a storage parameter conflict" msgstr "상속 받은 \"%s\" 칼럼의 스토리지 설정값에서 충돌합니다" -#: commands/tablecmds.c:3366 +#: commands/tablecmds.c:3488 #, c-format msgid "inherited column \"%s\" has a generation conflict" msgstr "상속된 \"%s\" 칼럼에 대한 생성 충돌 발생" -#: commands/tablecmds.c:3597 +#: commands/tablecmds.c:3719 #, c-format msgid "cannot move temporary tables of other sessions" msgstr "다른 세션의 임시 테이블들은 이동할 수 없습니다" -#: commands/tablecmds.c:3670 +#: commands/tablecmds.c:3792 #, c-format msgid "cannot rename column of typed table" msgstr "칼럼 이름을 바꿀 수 없음" -#: commands/tablecmds.c:3689 +#: commands/tablecmds.c:3811 #, c-format msgid "cannot rename columns of relation \"%s\"" msgstr "\"%s\" 릴레이션의 칼럼 이름을 바꿀 수 없음" -#: commands/tablecmds.c:3784 +#: commands/tablecmds.c:3906 #, c-format msgid "inherited column \"%s\" must be renamed in child tables too" msgstr "하위 테이블에서도 상속된 \"%s\" 칼럼의 이름을 바꾸어야 함" -#: commands/tablecmds.c:3816 +#: commands/tablecmds.c:3938 #, c-format msgid "cannot rename system column \"%s\"" msgstr "\"%s\" 이름의 칼럼은 시스템 칼럼입니다, 이름을 바꿀 수 없습니다" -#: commands/tablecmds.c:3831 +#: commands/tablecmds.c:3953 #, c-format msgid "cannot rename inherited column \"%s\"" msgstr "\"%s\" 이름의 칼럼은 상속 받은 칼럼입니다, 이름을 바꿀 수 없습니다" -#: commands/tablecmds.c:3983 +#: commands/tablecmds.c:4108 #, c-format msgid "inherited constraint \"%s\" must be renamed in child tables too" msgstr "" "하위 테이블에서도 상속된 \"%s\" 제약조건은 하위 테이블에서도 이름이 바뀌어야 " "함" -#: commands/tablecmds.c:3990 +#: 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:4290 +#: 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:4299 +#: commands/tablecmds.c:4424 #, c-format msgid "cannot %s \"%s\" because it has pending trigger events" msgstr "보류 중인 트리거 이벤트가 있으므로 %s \"%s\" 작업을 할 수 없음" -#: commands/tablecmds.c:4325 +#: commands/tablecmds.c:4450 #, c-format msgid "cannot alter temporary tables of other sessions" msgstr "다른 세션의 임시 테이블에 대해서는 alter 작업을 할 수 없음" -#: commands/tablecmds.c:4798 +#: commands/tablecmds.c:4914 #, c-format msgid "cannot alter partition \"%s\" with an incomplete detach" msgstr "" "\"%s\" 파티션 테이블은 불완전한 detach 상태이기에 alter 작업을 할 수 없음" -#: commands/tablecmds.c:5002 commands/tablecmds.c:5017 +#: commands/tablecmds.c:5143 #, c-format msgid "cannot change persistence setting twice" msgstr "로그 사용/미사용 옵션을 중복 해서 지정했음" -#: commands/tablecmds.c:5038 +#: commands/tablecmds.c:5160 #, c-format msgid "cannot have multiple SET ACCESS METHOD subcommands" msgstr "다중 SET ACCESS METHOD 구문은 사용할 수 없음" -#: commands/tablecmds.c:5768 +#: commands/tablecmds.c:5894 #, c-format msgid "cannot rewrite system relation \"%s\"" msgstr "\"%s\" 시스템 릴레이션을 다시 쓰기(rewrite) 할 수 없음" -#: commands/tablecmds.c:5774 +#: commands/tablecmds.c:5900 #, c-format msgid "cannot rewrite table \"%s\" used as a catalog table" msgstr "카탈로그 테이블로 사용되어 \"%s\" 테이블을 rewrite 못함" -#: commands/tablecmds.c:5786 +#: commands/tablecmds.c:5912 #, c-format msgid "cannot rewrite temporary tables of other sessions" msgstr "다른 세션의 임시 테이블을 다시 쓰기(rewrite) 할 수 없음" -#: commands/tablecmds.c:6281 +#: 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:6298 +#: commands/tablecmds.c:6485 #, c-format msgid "check constraint \"%s\" of relation \"%s\" is violated by some row" msgstr "" "\"%s\" 체크 제약 조건(해당 릴레이션 \"%s\")을 위반하는 몇몇 자료가 있습니다" -#: commands/tablecmds.c:6317 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 " @@ -11796,173 +12087,164 @@ msgid "" msgstr "" "몇몇 자료가 \"%s\" 기본 파티션용에서 변경된 파티션 제약조건을 위배한 것 같음" -#: commands/tablecmds.c:6323 +#: 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:6588 +#: commands/tablecmds.c:6776 #, c-format msgid "ALTER action %s cannot be performed on relation \"%s\"" msgstr "%s ALTER 작업은 \"%s\" 릴레이션 대상으로 수행할 수 없음" -#: commands/tablecmds.c:6843 commands/tablecmds.c:6850 +#: 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:6857 +#: 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:6864 +#: 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:6920 +#: commands/tablecmds.c:7108 #, c-format msgid "cannot alter type \"%s\" because it is the type of a typed table" msgstr "" "\"%s\" 자료형을 바꿀 수 없음, 이 자료형은 typed 테이블의 자료형이기 때문" -#: commands/tablecmds.c:6922 +#: commands/tablecmds.c:7110 #, c-format msgid "Use ALTER ... CASCADE to alter the typed tables too." msgstr "" "이 개체와 관계된 모든 개체들을 함께 변경하려면 ALTER ... CASCADE 명령을 사용" "하십시오" -#: commands/tablecmds.c:6968 +#: 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:6995 +#: commands/tablecmds.c:7190 #, c-format msgid "cannot add column to typed table" msgstr "typed 테이블에는 칼럼을 추가 할 수 없음" -#: commands/tablecmds.c:7043 +#: commands/tablecmds.c:7240 #, c-format msgid "cannot add column to a partition" msgstr "파티션 테이블에는 칼럼을 추가 할 수 없습니다" -#: commands/tablecmds.c:7072 commands/tablecmds.c:15860 +#: commands/tablecmds.c:7269 commands/tablecmds.c:17493 #, c-format msgid "child table \"%s\" has different type for column \"%s\"" msgstr "" "\"%s\" 상속된 테이블의 \"%s\" 열 자료형이 상위 테이블의 자료형과 틀립니다" -#: commands/tablecmds.c:7078 commands/tablecmds.c:15866 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17499 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "" "\"%s\" 상속된 테이블의 \"%s\" 칼럼 정렬규칙이 상위 테이블의 정렬규칙과 틀립니" "다" -#: commands/tablecmds.c:7096 +#: commands/tablecmds.c:7293 #, c-format msgid "merging definition of column \"%s\" for child \"%s\"" msgstr "\"%s\" 열(\"%s\" 하위)의 정의를 병합하는 중" -#: commands/tablecmds.c:7149 +#: commands/tablecmds.c:7346 #, c-format msgid "cannot recursively add identity column to table that has child tables" msgstr "하위 테이블에 재귀적으로 식별 칼럼을 추가할 수는 없음" -#: commands/tablecmds.c:7362 +#: commands/tablecmds.c:7593 #, c-format msgid "column must be added to child tables too" msgstr "하위 테이블에도 칼럼을 추가해야 함" -#: commands/tablecmds.c:7440 +#: commands/tablecmds.c:7671 #, c-format msgid "column \"%s\" of relation \"%s\" already exists, skipping" msgstr "\"%s\" 이름의 칼럼이 \"%s\" 릴레이션에 이미 있습니다, 건너뜀" -#: commands/tablecmds.c:7447 +#: commands/tablecmds.c:7678 #, c-format msgid "column \"%s\" of relation \"%s\" already exists" msgstr "\"%s\" 이름의 칼럼은 \"%s\" 릴레이션에 이미 있습니다" -#: commands/tablecmds.c:7513 commands/tablecmds.c:12652 -#, c-format -msgid "" -"cannot remove constraint from only the partitioned table when partitions " -"exist" -msgstr "하위 테이블이 있는 경우, 상위 테이블의 제약조건만 지울 수는 없음" - -#: commands/tablecmds.c:7514 commands/tablecmds.c:7828 -#: commands/tablecmds.c:8006 commands/tablecmds.c:8113 -#: commands/tablecmds.c:8230 commands/tablecmds.c:9049 -#: commands/tablecmds.c:12653 -#, c-format -msgid "Do not specify the ONLY keyword." -msgstr "ONLY 옵션을 빼고 사용하세요." - -#: commands/tablecmds.c:7550 commands/tablecmds.c:7754 -#: commands/tablecmds.c:7896 commands/tablecmds.c:8028 -#: commands/tablecmds.c:8157 commands/tablecmds.c:8251 -#: commands/tablecmds.c:8352 commands/tablecmds.c:8509 -#: commands/tablecmds.c:8662 commands/tablecmds.c:8743 -#: commands/tablecmds.c:8877 commands/tablecmds.c:12806 -#: commands/tablecmds.c:14348 commands/tablecmds.c:16975 +#: 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 #, c-format msgid "cannot alter system column \"%s\"" msgstr "\"%s\" 칼럼은 시스템 칼럼입니다. 그래서 바꿀 수 없습니다" -#: commands/tablecmds.c:7556 commands/tablecmds.c:7902 +#: commands/tablecmds.c:7775 commands/tablecmds.c:8143 +#: commands/tablecmds.c:14143 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "\"%s\" 칼럼(해당 테이블: \"%s\")은 식별 칼럼입니다." -#: commands/tablecmds.c:7597 -#, c-format -msgid "column \"%s\" is in a primary key" -msgstr "\"%s\" 칼럼은 기본키 칼럼입니다" - -#: commands/tablecmds.c:7602 -#, c-format -msgid "column \"%s\" is in index used as replica identity" -msgstr "\"%s\" 칼럼 대상 인덱스는 복제 식별자로 사용 됨" - -#: commands/tablecmds.c:7625 +#: commands/tablecmds.c:7792 #, c-format msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "파티션 테이블에서 \"%s\" 칼럼은 NOT NULL 속성으로 되어 있습니다" -#: commands/tablecmds.c:7825 commands/tablecmds.c:9533 +#: commands/tablecmds.c:8014 commands/tablecmds.c:9988 #, c-format msgid "constraint must be added to child tables too" msgstr "하위 테이블에도 제약 조건을 추가해야 함" -#: commands/tablecmds.c:7826 +#: commands/tablecmds.c:8015 commands/tablecmds.c:8246 +#: commands/tablecmds.c:8353 commands/tablecmds.c:8470 +#: commands/tablecmds.c:9354 commands/tablecmds.c:12182 #, 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:7911 +#: commands/tablecmds.c:8152 #, c-format msgid "column \"%s\" of relation \"%s\" is a generated column" msgstr "\"%s\" 칼럼(해당 테이블: \"%s\")은 계산된 칼럼입니다." -#: commands/tablecmds.c:8005 +#: commands/tablecmds.c:8245 #, c-format msgid "cannot add identity to a column of only the partitioned table" msgstr "상위 파티션 테이블 단독으로 식별자 속성의 칼럼을 지정할 수 없음" -#: commands/tablecmds.c:8011 +#: commands/tablecmds.c:8251 #, c-format msgid "cannot add identity to a column of a partition" msgstr "한 하위 테이블에 식별자 속성의 칼럼을 지정할 수는 없음" -#: commands/tablecmds.c:8039 +#: commands/tablecmds.c:8279 #, c-format msgid "" "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity " @@ -11971,120 +12253,151 @@ msgstr "" "식별자 옵션을 사용하려면, \"%s\" 칼럼(해당 릴레이션: \"%s\")에 NOT NULL 옵션" "이 있어야 합니다." -#: commands/tablecmds.c:8045 +#: commands/tablecmds.c:8285 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "\"%s\" 이름의 칼럼(해당 릴레이션: \"%s\")은 이미 식별 칼럼입니다" -#: commands/tablecmds.c:8051 +#: commands/tablecmds.c:8291 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "\"%s\" 이름의 칼럼(해당 릴레이션: \"%s\")은 이미 default 입니다" -#: commands/tablecmds.c:8112 +#: commands/tablecmds.c:8352 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "상위 파티션 테이블만 대상으로 식별자 속성 칼럼을 바꿀 수는 없음" -#: commands/tablecmds.c:8118 +#: commands/tablecmds.c:8358 #, c-format msgid "cannot change identity column of a partition" msgstr "한 하위 파티션 테이블만 대상으로 식별자 속성 칼럼을 바꿀 수는 없음" -#: commands/tablecmds.c:8163 commands/tablecmds.c:8259 +#: commands/tablecmds.c:8403 commands/tablecmds.c:8499 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column" msgstr "\"%s\" 이름의 칼럼(해당 릴레이션: \"%s\")은 식별 칼럼이 아닙니다" -#: commands/tablecmds.c:8229 +#: commands/tablecmds.c:8469 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "상위 파티션 테이블만 대상으로 식별자 속성 칼럼을 삭제할 수는 없음" -#: commands/tablecmds.c:8235 +#: commands/tablecmds.c:8475 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "한 하위 파티션 테이블만 대상으로 식별자 속성 칼럼을 삭제할 수는 없음" -#: commands/tablecmds.c:8264 +#: commands/tablecmds.c:8504 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "\"%s\" 이름의 칼럼(해당 릴레이션: \"%s\")은 식별 칼럼이 아님, 건너뜀" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8601 commands/tablecmds.c:8811 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column" msgstr "\"%s\" 칼럼(해당 테이블: \"%s\")은 계산된 칼럼이 아님" -#: commands/tablecmds.c:8456 +#: commands/tablecmds.c:8612 +#, 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 +#, c-format +msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." +msgstr "\"%s\" 칼럼(해당 테이블: \"%s\")은 가상의 미리 계산된 칼럼입니다." + +#: commands/tablecmds.c:8630 +#, 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 #, c-format msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgstr "ALTER TABLE / DROP EXPRESSION 작업은 하위 테이블에도 적용되어야함" -#: commands/tablecmds.c:8478 +#: commands/tablecmds.c:8759 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "상속 받은 칼럼에서는 미리 계산된 표현식을 못 없앰" -#: commands/tablecmds.c:8517 +#: commands/tablecmds.c:8802 #, 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:8522 +#: commands/tablecmds.c:8816 #, c-format -msgid "" -"column \"%s\" of relation \"%s\" is not a stored generated column, skipping" +msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "\"%s\" 칼럼(해당 릴레이션: \"%s\")은 미리 계산된 칼럼이 아님, 건너뜀" -#: commands/tablecmds.c:8600 +#: commands/tablecmds.c:8894 #, c-format msgid "cannot refer to non-index column by number" msgstr "숫자로 인덱스 사용하지 않는 칼럼을 참조할 수 없음" -#: commands/tablecmds.c:8652 +#: commands/tablecmds.c:8946 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "%d번째 칼럼이 없습니다. 해당 릴레이션: \"%s\"" -#: commands/tablecmds.c:8671 +#: commands/tablecmds.c:8966 +#, c-format +msgid "cannot alter statistics on virtual generated column \"%s\"" +msgstr "\"%s\" 가상의 미리 계산된 칼럼 대상 관련 통계정보를 수정할 수 없음" + +#: commands/tablecmds.c:8975 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "" "\"%s\" 포함된 칼럼 (해당 인덱스: \"%s\") 관련 통계정보를 수정할 수 없음" -#: commands/tablecmds.c:8676 +#: commands/tablecmds.c:8980 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "" "\"%s\" 비표현식 칼럼 (해당 인덱스: \"%s\") 관련 통계정보를 수정할 수 없음" -#: commands/tablecmds.c:8678 +#: commands/tablecmds.c:8982 #, c-format msgid "Alter statistics on table column instead." msgstr "대신에 테이블 칼럼 대상으로 통계정보를 수정하세요." -#: commands/tablecmds.c:8924 +#: commands/tablecmds.c:9228 #, c-format msgid "cannot drop column from typed table" msgstr "typed 테이블에서 칼럼을 삭제할 수 없음" -#: commands/tablecmds.c:8987 +#: commands/tablecmds.c:9292 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "\"%s\" 칼럼은 \"%s\" 릴레이션에 없음, 건너뜀" -#: commands/tablecmds.c:9000 +#: commands/tablecmds.c:9305 #, c-format msgid "cannot drop system column \"%s\"" msgstr "\"%s\" 칼럼은 시스템 칼럼입니다, 삭제될 수 없습니다" -#: commands/tablecmds.c:9010 +#: commands/tablecmds.c:9315 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "\"%s\" 칼럼은 상속받은 칼럼입니다, 삭제될 수 없습니다" -#: commands/tablecmds.c:9023 +#: commands/tablecmds.c:9328 #, c-format msgid "" "cannot drop column \"%s\" because it is part of the partition key of " @@ -12092,14 +12405,34 @@ msgid "" msgstr "" "\"%s\" 칼럼은 \"%s\" 릴레이션의 파티션 키로 사용되고 있어 삭제 될 수 없음" -#: commands/tablecmds.c:9048 +#: commands/tablecmds.c:9353 #, c-format msgid "" "cannot drop column from only the partitioned table when partitions exist" msgstr "" "파티션 테이블이 있는 파티션된 테이블에서 그 테이블만 칼럼을 삭제 할 수 없음" -#: commands/tablecmds.c:9253 +#: commands/tablecmds.c:9518 +#, c-format +msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" +msgstr "\"%s\" 칼럼(해당 테이블: \"%s\")은 NOT NULL 마크가 되어 있지 않음" + +#: commands/tablecmds.c:9554 commands/tablecmds.c:9566 +#, 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 +#, 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:9692 #, c-format msgid "" "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned " @@ -12108,7 +12441,7 @@ msgstr "" "ALTER TABLE / ADD CONSTRAINT USING INDEX 작업은 파티션 된 테이블 대상으로는 " "지원하지 않음" -#: commands/tablecmds.c:9278 +#: commands/tablecmds.c:9717 #, c-format msgid "" "ALTER TABLE / ADD CONSTRAINT USING INDEX will rename index \"%s\" to \"%s\"" @@ -12116,7 +12449,7 @@ msgstr "" "ALTER TABLE / ADD CONSTRAINT USING INDEX 작업은 \"%s\" 인덱스를 \"%s\" 이름으" "로 바꿀 것입니다." -#: commands/tablecmds.c:9615 +#: commands/tablecmds.c:10075 #, c-format msgid "" "cannot use ONLY for foreign key on partitioned table \"%s\" referencing " @@ -12125,31 +12458,17 @@ msgstr "" "\"%s\" 파티션 상위 테이블의 참조키에는 ONLY 옵션을 사용할 수 없음. 이 테이블" "은 \"%s\" 릴레이션을 참조 함" -#: commands/tablecmds.c:9621 -#, c-format -msgid "" -"cannot add NOT VALID foreign key on partitioned table \"%s\" referencing " -"relation \"%s\"" -msgstr "" -"\"%s\" 파타션된 테이블에 NOT VALID 참조키를 추가할 수 없음 (참조 하는 테이" -"블: \"%s\")" - -#: commands/tablecmds.c:9624 -#, c-format -msgid "This feature is not yet supported on partitioned tables." -msgstr "이 기능은 파티션 된 테이블 대상으로는 아직 지원하지 않습니다." - -#: commands/tablecmds.c:9631 commands/tablecmds.c:10092 +#: commands/tablecmds.c:10083 commands/tablecmds.c:10710 #, c-format msgid "referenced relation \"%s\" is not a table" msgstr "참조된 \"%s\" 릴레이션은 테이블이 아닙니다" -#: commands/tablecmds.c:9654 +#: commands/tablecmds.c:10106 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "영구 저장용 테이블의 제약 조건은 영구 저장용 테이블을 참조 합니다." -#: commands/tablecmds.c:9661 +#: commands/tablecmds.c:10113 #, c-format msgid "" "constraints on unlogged tables may reference only permanent or unlogged " @@ -12158,54 +12477,113 @@ msgstr "" "unlogged 테이블의 제약 조건은 영구 저장용 테이블 또는 unlogged 테이블을 참조" "합니다." -#: commands/tablecmds.c:9667 +#: commands/tablecmds.c:10119 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "임시 테이블의 제약 조건은 임시 테이블에 대해서만 참조할 것입니다." -#: commands/tablecmds.c:9671 +#: commands/tablecmds.c:10123 #, c-format msgid "" "constraints on temporary tables must involve temporary tables of this session" msgstr "" "임시 테이블의 제약 조건은 이 세션용 임시 테이블에 대해서만 적용 됩니다." -#: commands/tablecmds.c:9735 commands/tablecmds.c:9741 +#: commands/tablecmds.c:10138 commands/tablecmds.c:10166 +#, c-format +msgid "" +"foreign key uses PERIOD on the referenced table but not the referencing table" +msgstr "" +"외래키가 참조되는 테이블에 대해서 PERIOD 옵션을 사용하고 있지만 참조하는 테이" +"블은 그렇지 않음" + +#: commands/tablecmds.c:10178 +#, c-format +msgid "" +"foreign key uses PERIOD on the referencing table but not the referenced table" +msgstr "" +"외래키가 참조하는 테이블에 대해서 PERIOD 옵션을 사용하고 있지만 참조되는 테이" +"블은 그렇지 않음" + +#: commands/tablecmds.c:10192 +#, c-format +msgid "" +"foreign key must use PERIOD when referencing a primary key using WITHOUT " +"OVERLAPS" +msgstr "" +"WITHOUT OVERLAPS 옵션이 있는 기본키를 참조할 때는 외래키는 PERIOD 옵션을 사용" +"해야 함" + +#: commands/tablecmds.c:10216 commands/tablecmds.c:10222 #, c-format msgid "" "invalid %s action for foreign key constraint containing generated column" msgstr "계산된 칼럼을 포함하는 참조키 제약조건용 %s 액션은 잘못 되었음" -#: commands/tablecmds.c:9757 +#: commands/tablecmds.c:10237 +#, c-format +msgid "foreign key constraints on virtual generated columns are not supported" +msgstr "가상의 미리 계산된 칼럼 대상으로는 외래키 만들기를 지원하지 않음" + +#: commands/tablecmds.c:10251 commands/tablecmds.c:10260 +#, c-format +msgid "unsupported %s action for foreign key constraint using PERIOD" +msgstr "PERIOD 옵션을 사용하는 외래키 대상 %s 액션은 지원하지 않음" + +#: commands/tablecmds.c:10275 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "참조키(foreign key) disagree를 위한 참조하는, 또는 참조되는 열 수" -#: commands/tablecmds.c:9864 +#: commands/tablecmds.c:10331 +#, c-format +msgid "could not identify an overlaps operator for foreign key" +msgstr "외래키를 위한 겹침 연산자를 찾을 수 없음" + +#: commands/tablecmds.c:10332 +#, c-format +msgid "could not identify an equality operator for foreign key" +msgstr "외래키를 위한 동등 연산자를 찾을 수 없음" + +#: commands/tablecmds.c:10397 commands/tablecmds.c:10431 #, c-format msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "\"%s\" 참조키(foreign key) 제약 조건은 구현되어질 수 없습니다" -#: commands/tablecmds.c:9866 +#: commands/tablecmds.c:10399 #, c-format -msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." +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 vs %s" + +#: commands/tablecmds.c:10432 +#, 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 "" -"\"%s\" 열과 \"%s\" 열 인덱스는 함께 사용할 수 없는 자료형입니다: %s and %s." +"참조하는 테이블의 \"%s\" 키 칼럼과 참조되는 테이블의 \"%s\" 칼럼의 문자 정렬 " +"규칙이 호환되지 않음: \"%s\" 및 \"%s\". 두 정렬 규칙 중 하나가 비결정적이면 " +"두 정렬 규칙은 동일해야 합니다." -#: commands/tablecmds.c:10035 +#: commands/tablecmds.c:10638 #, c-format msgid "" "column \"%s\" referenced in ON DELETE SET action must be part of foreign key" msgstr "" "ON DELETE SET 동작을 지정하려는 \"%s\" 칼럼은 참조키의 한 부분이어야 합니다." -#: commands/tablecmds.c:10392 commands/tablecmds.c:10832 -#: parser/parse_utilcmd.c:822 parser/parse_utilcmd.c:945 +#: commands/tablecmds.c:11022 commands/tablecmds.c:11455 +#: 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:10815 +#: commands/tablecmds.c:11438 #, c-format msgid "" "cannot attach table \"%s\" as a partition because it is referenced by " @@ -12214,120 +12592,167 @@ msgstr "" "\"%s\" 테이블은 하위 테이블로 추가 될 수 없음, 이 테이블은 \"%s\" 참조키의 대" "상이기 때문" -#: commands/tablecmds.c:11416 commands/tablecmds.c:11697 -#: commands/tablecmds.c:12609 commands/tablecmds.c:12683 +#: commands/tablecmds.c:11719 +#, c-format +msgid "" +"constraint \"%s\" enforceability conflicts with constraint \"%s\" on " +"relation \"%s\"" +msgstr "" +"\"%s\" 제약 조건의 ENFORCED 속성이 \"%s\" 제약 조건과 충돌합니다, 해당 릴레이" +"션: \"%s\"" + +#: commands/tablecmds.c:12181 +#, 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 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist" msgstr "\"%s\" 제약 조건이 \"%s\" 릴레이션에 없습니다." -#: commands/tablecmds.c:11423 +#: commands/tablecmds.c:12217 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "\"%s\" 제약 조건(해당 테이블: \"%s\")은 참조키 제약조건이 아닙니다." -#: commands/tablecmds.c:11461 +#: commands/tablecmds.c:12222 +#, c-format +msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" +msgstr "\"%s\" 제약 조건(해당 테이블: \"%s\")을 ENFORCED로 바꿀 수 없음" + +#: commands/tablecmds.c:12228 +#, c-format +msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" +msgstr "\"%s\" 제약 조건(해당 테이블: \"%s\")은 not null 제약 조건이 아님" + +#: commands/tablecmds.c:12236 +#, c-format +msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" +msgstr "상속된 \"%s\" 제약 조건(해당 테이블: \"%s\")을 변경 할 수 없음" + +#: commands/tablecmds.c:12276 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "\"%s\" 제약 조건(해당 테이블: \"%s\")을 바꿀 수 없음" -#: commands/tablecmds.c:11464 +#: commands/tablecmds.c:12279 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "" "\"%s\" 제약 조건은 \"%s\" 제약 조건에서 파생되었음, 해당 릴레이션: \"%s\"" -#: commands/tablecmds.c:11466 +#: commands/tablecmds.c:12281 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "대신에, 원 제약 조건을 변경 하세요." -#: commands/tablecmds.c:11705 +#: commands/tablecmds.c:12916 #, c-format -msgid "" -"constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint" -msgstr "" -"\"%s\" 제약 조건(해당 테이블: \"%s\")은 참조키도 체크 제약 조건도 아닙니다." +msgid "cannot validate constraint \"%s\" of relation \"%s\"" +msgstr "\"%s\" 제약 조건(해당 테이블: \"%s\")의 유효성 검사를 할 수 없음" + +#: commands/tablecmds.c:12918 +#, c-format +msgid "This operation is not supported for this type of constraint." +msgstr "이 유형의 제약 조건 검사를 지원하지 않습니다." + +#: commands/tablecmds.c:12923 +#, c-format +msgid "cannot validate NOT ENFORCED constraint" +msgstr "NOT ENFORCED 제약 조건이 유효하지 않음" -#: commands/tablecmds.c:11782 +#: commands/tablecmds.c:13132 commands/tablecmds.c:13232 #, c-format msgid "constraint must be validated on child tables too" msgstr "하위 테이블에도 제약 조건이 유효해야 함" -#: commands/tablecmds.c:11869 +#: commands/tablecmds.c:13309 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "참조키(foreign key) 제약 조건에서 참조하는 \"%s\" 칼럼이 없음" -#: commands/tablecmds.c:11875 +#: commands/tablecmds.c:13315 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "시스템 칼럼은 참조키로 사용될 수 없음" -#: commands/tablecmds.c:11879 +#: commands/tablecmds.c:13319 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "참조키(foreign key)에서 %d 키 개수보다 많이 가질 수 없음" -#: commands/tablecmds.c:11944 +#: commands/tablecmds.c:13387 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "참조되는 \"%s\" 테이블의 지연 가능한 기본키를 사용할 수 없음" -#: commands/tablecmds.c:11961 +#: commands/tablecmds.c:13404 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "참조되는 \"%s\" 테이블에는 기본키(primary key)가 없습니다" -#: commands/tablecmds.c:12029 +#: commands/tablecmds.c:13477 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "참조키의 참조 칼럼 목록에 칼럼이 중복되면 안됩니다" -#: commands/tablecmds.c:12121 +#: commands/tablecmds.c:13580 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "참조되는 \"%s\" 테이블의 지연 가능한 유니크 제약 조건을 사용할 수 없음" -#: commands/tablecmds.c:12126 +#: commands/tablecmds.c:13585 #, c-format msgid "" "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "" "참조되는 \"%s\" 테이블을 위한 주워진 키와 일치하는 고유 제약 조건이 없습니다" -#: commands/tablecmds.c:12565 +#: commands/tablecmds.c:14026 +#, c-format +msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" +msgstr "\"%s\" 제약 조건(해당 테이블: \"%s\")이 없음, 건너뜀" + +#: commands/tablecmds.c:14071 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "상속된 \"%s\" 제약 조건(해당 테이블: \"%s\")을 삭제할 수 없음" -#: commands/tablecmds.c:12615 +#: commands/tablecmds.c:14123 #, 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:12790 +#: commands/tablecmds.c:14131 +#, c-format +msgid "column \"%s\" is in index used as replica identity" +msgstr "\"%s\" 칼럼 대상 인덱스는 복제 식별자로 사용 됨" + +#: commands/tablecmds.c:14364 #, c-format msgid "cannot alter column type of typed table" msgstr "typed 테이블의 칼럼 자료형은 바꿀 수 없음" -#: commands/tablecmds.c:12816 +#: commands/tablecmds.c:14392 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "미리 계산된 칼럼의 자료형을 바꿀 때는 USING 구문을 지정할 수 없음" -#: commands/tablecmds.c:12817 commands/tablecmds.c:18028 -#: commands/tablecmds.c:18118 commands/trigger.c:656 -#: rewrite/rewriteHandler.c:941 rewrite/rewriteHandler.c:976 +#: 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:12827 +#: commands/tablecmds.c:14404 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "\"%s\" 이름의 칼럼은 상속 받은 칼럼입니다, 이름을 바꿀 수 없습니다" -#: commands/tablecmds.c:12836 +#: commands/tablecmds.c:14413 #, c-format msgid "" "cannot alter column \"%s\" because it is part of the partition key of " @@ -12336,7 +12761,7 @@ msgstr "" "\"%s\" 칼럼은 \"%s\" 테이블의 파티션 키 가운데 하나이기 때문에, alter 작업" "을 할 수 없음" -#: commands/tablecmds.c:12886 +#: commands/tablecmds.c:14468 #, c-format msgid "" "result of USING clause for column \"%s\" cannot be cast automatically to " @@ -12344,197 +12769,197 @@ msgid "" msgstr "" "\"%s\" 칼럼에서 쓰인 USING 절의 결과가 %s 자료형으로 자동 형변환을 할 수 없음" -#: commands/tablecmds.c:12889 +#: commands/tablecmds.c:14471 #, c-format msgid "You might need to add an explicit cast." msgstr "명시적 형변환을 해야할 것 같습니다." -#: commands/tablecmds.c:12893 +#: commands/tablecmds.c:14475 #, 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:12897 +#: commands/tablecmds.c:14479 #, c-format msgid "You might need to specify \"USING %s::%s\"." msgstr "\"USING %s::%s\" 구문을 추가해야 할 것 같습니다." -#: commands/tablecmds.c:12996 +#: commands/tablecmds.c:14582 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "" "\"%s\" 칼럼은 \"%s\" 테이블의 상속된 칼럼이기에 alter 작업을 할 수 없음" -#: commands/tablecmds.c:13025 +#: commands/tablecmds.c:14611 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "USING 표현식에서 전체 로우 테이블 참조를 포함하고 있습니다." -#: commands/tablecmds.c:13036 +#: commands/tablecmds.c:14622 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "하위 테이블에서도 상속된 \"%s\" 칼럼의 형식을 바꾸어야 함" -#: commands/tablecmds.c:13161 +#: commands/tablecmds.c:14747 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "\"%s\" 칼럼의 자료형을 중복해서 바꿀 수는 없음" -#: commands/tablecmds.c:13199 +#: commands/tablecmds.c:14785 #, c-format msgid "" "generation expression for column \"%s\" cannot be cast automatically to type " "%s" msgstr "\"%s\" 칼럼의 생성 구문은 %s 형으로 자동 형변환할 수 없음" -#: commands/tablecmds.c:13204 +#: commands/tablecmds.c:14790 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "\"%s\" 칼럼의 기본 값을 %s 형으로 형변환할 수 없음" -#: commands/tablecmds.c:13508 +#: commands/tablecmds.c:15094 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "함수나 프로시져에서 사용하는 칼럼의 자료형 변경은 할 수 없음" -#: commands/tablecmds.c:13509 commands/tablecmds.c:13524 -#: commands/tablecmds.c:13544 commands/tablecmds.c:13563 -#: commands/tablecmds.c:13622 +#: commands/tablecmds.c:15095 commands/tablecmds.c:15110 +#: commands/tablecmds.c:15130 commands/tablecmds.c:15149 +#: commands/tablecmds.c:15208 #, c-format msgid "%s depends on column \"%s\"" msgstr "%s 의존대상 열: \"%s\"" -#: commands/tablecmds.c:13523 +#: commands/tablecmds.c:15109 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "뷰 또는 규칙에서 사용하는 칼럼의 형식을 바꿀 수 없음" -#: commands/tablecmds.c:13543 +#: commands/tablecmds.c:15129 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "트리거 정의에서 사용하는 칼럼의 자료형을 바꿀 수 없음" -#: commands/tablecmds.c:13562 +#: commands/tablecmds.c:15148 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "정책 정의에서 사용하는 칼럼의 자료형을 바꿀 수 없음" -#: commands/tablecmds.c:13593 +#: commands/tablecmds.c:15179 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "미리 계산된 칼럼의 자료형을 바꿀 수 없음" -#: commands/tablecmds.c:13594 +#: commands/tablecmds.c:15180 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "\"%s\" 칼럼은 미리 계산된 칼럼인 \"%s\"에서 사용되고 있음." -#: commands/tablecmds.c:13621 +#: commands/tablecmds.c:15207 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "WHERE절이 있는 발행에서 사용되는 칼럼은 자료형을 바꿀 수 없음" -#: commands/tablecmds.c:14456 commands/tablecmds.c:14468 +#: commands/tablecmds.c:16081 commands/tablecmds.c:16093 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "\"%s\" 인덱스의 소유주를 바꿀 수 없음" -#: commands/tablecmds.c:14458 commands/tablecmds.c:14470 +#: commands/tablecmds.c:16083 commands/tablecmds.c:16095 #, c-format msgid "Change the ownership of the index's table instead." msgstr "대신에 그 인덱스의 해당 테이블 소유자을 변경하세요." -#: commands/tablecmds.c:14484 +#: commands/tablecmds.c:16109 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "\"%s\" 시퀀스의 소유주를 바꿀 수 없음" -#: commands/tablecmds.c:14509 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "\"%s\" 릴레이션의 소유주를 바꿀 수 없음" -#: commands/tablecmds.c:14976 +#: commands/tablecmds.c:16601 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "SET TABLESPACE 구문이 중복 사용되었습니다" -#: commands/tablecmds.c:15053 +#: commands/tablecmds.c:16680 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "\"%s\" 릴레이션용 옵션을 지정할 수 없음" -#: commands/tablecmds.c:15087 commands/view.c:440 +#: commands/tablecmds.c:16714 commands/view.c:440 #, c-format msgid "WITH CHECK OPTION is supported only on automatically updatable views" msgstr "" "WITH CHECK OPTION 옵션은 자동 갱신 가능한 뷰에 대해서만 사용할 수 있습니다" -#: commands/tablecmds.c:15338 +#: commands/tablecmds.c:16967 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "테이블스페이스에 테이블과 인덱스와 구체화된 뷰만 있습니다." -#: commands/tablecmds.c:15350 +#: commands/tablecmds.c:16979 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "" "해당 개체를 pg_global 테이블스페이스로 옮기거나 그 반대로 작업할 수 없음" -#: commands/tablecmds.c:15442 +#: commands/tablecmds.c:17071 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "\"%s.%s\" 릴레이션을 잠글 수 없어 중지 중입니다" -#: commands/tablecmds.c:15458 +#: commands/tablecmds.c:17087 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "검색조건에 일치하는 릴레이션이 \"%s\" 테이블스페이스에 없음" -#: commands/tablecmds.c:15580 +#: commands/tablecmds.c:17209 #, c-format msgid "cannot change inheritance of typed table" msgstr "typed 테이블의 상속 정보는 바꿀 수 없음" -#: commands/tablecmds.c:15585 commands/tablecmds.c:16085 +#: commands/tablecmds.c:17214 commands/tablecmds.c:17798 #, c-format msgid "cannot change inheritance of a partition" msgstr "파티션 테이블의 상속 정보는 바꿀 수 없음" -#: commands/tablecmds.c:15590 +#: commands/tablecmds.c:17219 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "파티션된 테이블의 상속 정보는 바꿀 수 없음" -#: commands/tablecmds.c:15636 +#: commands/tablecmds.c:17266 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "다른 세션의 임시 테이블을 상속할 수 없음" -#: commands/tablecmds.c:15649 +#: commands/tablecmds.c:17279 #, c-format msgid "cannot inherit from a partition" msgstr "파티션 테이블에서 상속 할 수 없음" -#: commands/tablecmds.c:15671 commands/tablecmds.c:18529 +#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 #, c-format msgid "circular inheritance not allowed" msgstr "순환 되는 상속은 허용하지 않습니다" -#: commands/tablecmds.c:15672 commands/tablecmds.c:18530 +#: commands/tablecmds.c:17302 commands/tablecmds.c:20313 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\" 개체는 이미 \"%s\" 개체로부터 상속받은 상태입니다." -#: commands/tablecmds.c:15685 +#: commands/tablecmds.c:17315 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "" "\"%s\" 트리거(해당 테이블 \"%s\")은 하위테이블 상속과 관련되어 보호되고 있습" "니다." -#: commands/tablecmds.c:15687 +#: commands/tablecmds.c:17317 #, c-format msgid "" "ROW triggers with transition tables are not supported in inheritance " @@ -12542,119 +12967,128 @@ msgid "" msgstr "" "transition 테이블의 ROW 트리거들은 계층적 상속 테이블에서는 지원하지 않음" -#: commands/tablecmds.c:15876 +#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 #, 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:15885 +#: commands/tablecmds.c:17528 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "자식 테이블의 \"%s\" 칼럼은 미리 계산된 칼럼이어야 함" -#: commands/tablecmds.c:15889 +#: commands/tablecmds.c:17532 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "자식 테이블의 \"%s\" 칼럼은 미리 계산된 칼럼이 아니여야 합니다." -#: commands/tablecmds.c:15927 +#: commands/tablecmds.c:17578 #, c-format msgid "child table is missing column \"%s\"" msgstr "자식 테이블에는 \"%s\" 칼럼이 없습니다" -#: commands/tablecmds.c:16008 +#: commands/tablecmds.c:17695 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "\"%s\" 하위 테이블에 \"%s\" 체크 제약 조건에 대한 다른 정의가 있음" -#: commands/tablecmds.c:16015 +#: commands/tablecmds.c:17704 #, c-format msgid "" -"constraint \"%s\" conflicts with non-inherited constraint on child table " -"\"%s\"" +"constraint \"%s\" conflicts with non-inherited constraint on child table \"%s" +"\"" msgstr "" "\"%s\" 제약 조건이 \"%s\" 하위 테이블에 있는 비 상속 제약 조건과 충돌합니다" -#: commands/tablecmds.c:16025 +#: commands/tablecmds.c:17715 #, c-format msgid "" "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "" "\"%s\" 제약 조건이 \"%s\" 하위 테이블에 있는 NOT VALID 제약 조건과 충돌합니다" -#: commands/tablecmds.c:16063 +#: commands/tablecmds.c:17726 +#, c-format +msgid "" +"constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s" +"\"" +msgstr "" +"\"%s\" 제약 조건이 \"%s\" 하위 테이블에 있는 NOT ENFORCED 제약 조건과 충돌합" +"니다" + +#: commands/tablecmds.c:17775 #, c-format msgid "child table is missing constraint \"%s\"" -msgstr "자식 테이블에 \"%s\" 제약 조건이 없습니다" +msgstr "하위 테이블에 \"%s\" 제약 조건이 없습니다" -#: commands/tablecmds.c:16149 +#: commands/tablecmds.c:17862 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "" "\"%s\" 하위 파티션과 \"%s.%s\" 상위 파티션 테이블과 분리 작업을 이미 진행, 지" "연 되고 있습니다." -#: commands/tablecmds.c:16178 commands/tablecmds.c:16224 +#: commands/tablecmds.c:17891 commands/tablecmds.c:17939 #, c-format msgid "relation \"%s\" is not a partition of relation \"%s\"" msgstr "\"%s\" 릴레이션은 \"%s\" 릴레이션의 파티션이 아닙니다" -#: commands/tablecmds.c:16230 +#: commands/tablecmds.c:17945 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "\"%s\" 릴레이션은 \"%s\" 릴레이션의 부모가 아닙니다" -#: commands/tablecmds.c:16457 +#: commands/tablecmds.c:18216 #, c-format msgid "typed tables cannot inherit" msgstr "typed 테이블은 상속할 수 없음" -#: commands/tablecmds.c:16487 +#: commands/tablecmds.c:18246 #, c-format msgid "table is missing column \"%s\"" msgstr "테이블에는 \"%s\" 칼럼이 없습니다" -#: commands/tablecmds.c:16498 +#: commands/tablecmds.c:18257 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "\"%s\" 칼럼은 \"%s\" 자료형입니다." -#: commands/tablecmds.c:16507 +#: commands/tablecmds.c:18266 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "\"%s\" 테이블의 \"%s\" 칼럼 자료형 틀립니다" -#: commands/tablecmds.c:16521 +#: commands/tablecmds.c:18280 #, c-format msgid "table has extra column \"%s\"" msgstr "\"%s\" 칼럼은 확장형입니다" -#: commands/tablecmds.c:16573 +#: commands/tablecmds.c:18332 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\" 테이블은 typed 테이블이 아닙니다" -#: commands/tablecmds.c:16747 +#: commands/tablecmds.c:18512 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "\"%s\" 인덱스는 유니크 인덱스가 아니여서, 복제 식별자로 사용할 수 없음" -#: commands/tablecmds.c:16753 +#: commands/tablecmds.c:18518 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "\"%s\" non-immediate 인덱스는 복제 식별자로 사용할 수 없음" -#: commands/tablecmds.c:16759 +#: commands/tablecmds.c:18524 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "\"%s\" 인덱스는 expression 인덱스여서, 복제 식별자로 사용할 수 없음" -#: commands/tablecmds.c:16765 +#: commands/tablecmds.c:18530 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "\"%s\" 인덱스가 부분인덱스여서, 복제 식별자로 사용할 수 없음" -#: commands/tablecmds.c:16782 +#: commands/tablecmds.c:18547 #, c-format msgid "" "index \"%s\" cannot be used as replica identity because column %d is a " @@ -12662,7 +13096,7 @@ msgid "" msgstr "" "\"%s\" 인덱스는 복제 식별자로 사용할 수 없음, %d 번째 칼럼이 시스템 칼럼임" -#: commands/tablecmds.c:16789 +#: commands/tablecmds.c:18554 #, c-format msgid "" "index \"%s\" cannot be used as replica identity because column \"%s\" is " @@ -12671,23 +13105,23 @@ msgstr "" "\"%s\" 인덱스는 복제 식별자로 사용할 수 없음, \"%s\" 칼럼이 null 값 사용가능 " "속성임" -#: commands/tablecmds.c:17041 +#: commands/tablecmds.c:18803 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "\"%s\" 테이블은 임시 테이블이기에, 통계 정보를 변경 할 수 없음" -#: commands/tablecmds.c:17065 +#: commands/tablecmds.c:18827 #, c-format msgid "" "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "\"%s\" 테이블은 발생에 사용하고 있어, unlogged 속성으로 바꿀 수 없음" -#: commands/tablecmds.c:17067 +#: commands/tablecmds.c:18829 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "unlogged 릴레이션 복제할 수 없습니다." -#: commands/tablecmds.c:17112 +#: commands/tablecmds.c:18874 #, c-format msgid "" "could not change table \"%s\" to logged because it references unlogged table " @@ -12696,7 +13130,7 @@ msgstr "" "\"%s\" 테이블이 \"%s\" unlogged 테이블을 참조하고 있어 logged 속성으로 바꿀 " "수 없음" -#: commands/tablecmds.c:17122 +#: commands/tablecmds.c:18884 #, c-format msgid "" "could not change table \"%s\" to unlogged because it references logged table " @@ -12705,87 +13139,87 @@ msgstr "" "\"%s\" 테이블이 \"%s\" logged 테이블을 참조하고 있어 unlogged 속성으로 바꿀 " "수 없음" -#: commands/tablecmds.c:17180 +#: commands/tablecmds.c:18948 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "소유된 시퀀스를 다른 스키마로 이동할 수 없음" -#: commands/tablecmds.c:17288 +#: commands/tablecmds.c:19056 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "\"%s\" 릴레이션이 \"%s\" 스키마에 이미 있습니다" -#: commands/tablecmds.c:17713 +#: commands/tablecmds.c:19481 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\" 개체는 테이블도 구체화된 뷰도 아닙니다" -#: commands/tablecmds.c:17866 +#: commands/tablecmds.c:19634 #, c-format msgid "\"%s\" is not a composite type" msgstr "\"%s\" 개체는 복합 자료형입니다" -#: commands/tablecmds.c:17896 +#: commands/tablecmds.c:19664 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "\"%s\" 인덱스의 스키마를 바꿀 수 없음" -#: commands/tablecmds.c:17898 commands/tablecmds.c:17912 +#: commands/tablecmds.c:19666 commands/tablecmds.c:19680 #, c-format msgid "Change the schema of the table instead." msgstr "대신에 그 인덱스의 해당 테이블 스키마를 변경하세요." -#: commands/tablecmds.c:17902 +#: commands/tablecmds.c:19670 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "\"%s\" 복합 자료형의 스키마를 바꿀 수 없음" -#: commands/tablecmds.c:17910 +#: commands/tablecmds.c:19678 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "\"%s\" TOAST 테이블의 스키마를 바꿀 수 없음" -#: commands/tablecmds.c:17942 +#: commands/tablecmds.c:19710 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "둘 이상의 칼럼을 사용할 \"list\" 파티션은 사용할 수 없습니다" -#: commands/tablecmds.c:18008 +#: commands/tablecmds.c:19776 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "\"%s\" 칼럼이 파티션 키로 사용되고 있지 않습니다" -#: commands/tablecmds.c:18016 +#: commands/tablecmds.c:19784 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "\"%s\" 칼럼은 시스템 칼럼입니다. 그래서 파티션 키로 사용될 수 없습니다" -#: commands/tablecmds.c:18027 commands/tablecmds.c:18117 +#: commands/tablecmds.c:19798 commands/tablecmds.c:19891 #, c-format msgid "cannot use generated column in partition key" msgstr "미리 계산된 칼럼은 파티션 키로 사용할 수 없음" -#: commands/tablecmds.c:18100 +#: commands/tablecmds.c:19871 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "파티션 키 표현식에서는 시스템 칼럼 참조를 포함할 수 없습니다" -#: commands/tablecmds.c:18147 +#: commands/tablecmds.c:19921 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "파티션 키로 사용할 함수는 IMMUTABLE 특성이 있어야 합니다" -#: commands/tablecmds.c:18156 +#: commands/tablecmds.c:19930 #, c-format msgid "cannot use constant expression as partition key" msgstr "파티션 키로 상수는 쓸 수 없습니다" -#: commands/tablecmds.c:18177 +#: commands/tablecmds.c:19951 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "파티션 표현식에 쓸 문자 정렬 규칙을 결정할 수 없습니다" -#: commands/tablecmds.c:18212 +#: commands/tablecmds.c:19986 #, c-format msgid "" "You must specify a hash operator class or define a default hash operator " @@ -12794,7 +13228,7 @@ msgstr "" "해당 자료형을 위한 해시 연산자 클래스를 지정하거나 기본 해시 연산자 클래스를 " "정의해 두어야 합니다" -#: commands/tablecmds.c:18218 +#: commands/tablecmds.c:19992 #, c-format msgid "" "You must specify a btree operator class or define a default btree operator " @@ -12803,134 +13237,134 @@ msgstr "" "해당 자료형을 위한 btree 연산자 클래스를 지정하거나 기본 btree 연산자 클래스" "를 정의해 두어야 합니다" -#: commands/tablecmds.c:18469 +#: commands/tablecmds.c:20252 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\" 이름의 파티션 테이블이 이미 있습니다" -#: commands/tablecmds.c:18475 +#: commands/tablecmds.c:20258 #, c-format msgid "cannot attach a typed table as partition" msgstr "파티션 테이블로 typed 테이블을 추가할 수 없음" -#: commands/tablecmds.c:18491 +#: commands/tablecmds.c:20274 #, c-format msgid "cannot attach inheritance child as partition" msgstr "파티션 테이블로 상속을 이용한 하위 테이블을 추가할 수 없음" -#: commands/tablecmds.c:18505 +#: commands/tablecmds.c:20288 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "파티션 테이블로 상속용 상위 테이블을 추가할 수 없음" -#: commands/tablecmds.c:18539 +#: commands/tablecmds.c:20322 #, c-format msgid "" "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "" "\"%s\" 테이블은 일반 테이블입니다, 임시 파티션 테이블을 추가할 수 없습니다" -#: commands/tablecmds.c:18547 +#: commands/tablecmds.c:20330 #, c-format msgid "" "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "" "\"%s\" 테이블은 임시 테이블입니다, 일반 파티션 테이블을 추가할 수 없습니다" -#: commands/tablecmds.c:18555 +#: commands/tablecmds.c:20338 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "다른 세션의 임시 테이블을 파티션 테이블로 추가할 수 없습니다" -#: commands/tablecmds.c:18562 +#: commands/tablecmds.c:20345 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "다른 세션의 임시 테이블을 파티션 테이블로 추가할 수 없습니다" -#: commands/tablecmds.c:18582 +#: commands/tablecmds.c:20365 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "" "\"%s\" 테이블의 \"%s\" 칼럼에 식별자 속성이 있는데 하위 테이블이 되려고 합니" "다." -#: commands/tablecmds.c:18584 +#: commands/tablecmds.c:20367 #, c-format msgid "The new partition may not contain an identity column." msgstr "" "새로 만들어지는 하위 테이블에는 해당 칼럼에 식별자 속성이 없을 수 있습니다." -#: commands/tablecmds.c:18592 +#: commands/tablecmds.c:20375 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "\"%s\" 테이블의 \"%s\" 칼럼이 상위 테이블인 \"%s\"에 없음" -#: commands/tablecmds.c:18595 +#: commands/tablecmds.c:20378 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "새 파티션 테이블은 상위 테이블의 칼럼과 동일해야 합니다." -#: commands/tablecmds.c:18607 +#: commands/tablecmds.c:20390 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "" "\"%s\" 트리거가 \"%s\" 테이블에 있어 파티션 테이블로 포함 될 수 없습니다" -#: commands/tablecmds.c:18609 +#: commands/tablecmds.c:20392 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "" "transition 테이블의 ROW 트리거들은 파티션 하위 테이블에서는 쓸 수 없습니다." -#: commands/tablecmds.c:18785 +#: commands/tablecmds.c:20574 #, c-format msgid "" "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "\"%s\" 외부 테이블을 파티션된 \"%s\" 테이블의 부분으로 추가 할 수 없음" -#: commands/tablecmds.c:18788 +#: commands/tablecmds.c:20577 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "\"%s\" 파티션 상위 테이블에 유니크 인덱스가 있습니다." -#: commands/tablecmds.c:19110 +#: commands/tablecmds.c:20900 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "기본 하위 파티션이 있을 때는 하위 파티션 테이블 분리 작업을 할 수 없음" -#: commands/tablecmds.c:19219 +#: commands/tablecmds.c:21009 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "\"%s\" 파티션 상위 테이블이 온라인 모드로 삭제 되었음" -#: commands/tablecmds.c:19225 +#: commands/tablecmds.c:21015 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "\"%s\" 파티션 하위 테이블이 온라인 모드로 삭제 되었음" -#: commands/tablecmds.c:19817 commands/tablecmds.c:19837 -#: commands/tablecmds.c:19858 commands/tablecmds.c:19877 -#: commands/tablecmds.c:19919 +#: commands/tablecmds.c:21646 commands/tablecmds.c:21666 +#: commands/tablecmds.c:21687 commands/tablecmds.c:21706 +#: commands/tablecmds.c:21755 #, c-format msgid "cannot attach index \"%s\" as a partition of index \"%s\"" msgstr "\"%s\" 인덱스를 \"%s\" 인덱스의 파티션으로 추가할 수 없음" -#: commands/tablecmds.c:19820 +#: commands/tablecmds.c:21649 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "\"%s\" 인덱스는 이미 다른 인덱스에 추가되어 있음." -#: commands/tablecmds.c:19840 +#: commands/tablecmds.c:21669 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "\"%s\" 인덱스는 \"%s\" 테이블의 하위 파티션 대상 인덱스가 아닙니다." -#: commands/tablecmds.c:19861 +#: commands/tablecmds.c:21690 #, c-format msgid "The index definitions do not match." msgstr "인덱스 정의가 일치하지 않습니다." -#: commands/tablecmds.c:19880 +#: commands/tablecmds.c:21709 #, c-format msgid "" "The index \"%s\" belongs to a constraint in table \"%s\" but no constraint " @@ -12939,27 +13373,37 @@ msgstr "" "\"%s\" 인덱스는 \"%s\" 테이블의 제약조건과 연결되어 있는데, \"%s\" 인덱스를 " "위한 제약조건이 없습니다." -#: commands/tablecmds.c:19922 +#: commands/tablecmds.c:21758 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "\"%s\" 파티션 용으로 다른 인덱스가 추가되어 있습니다." -#: commands/tablecmds.c:20158 +#: commands/tablecmds.c:21881 +#, c-format +msgid "invalid primary key definition" +msgstr "잘못된 기본키 정의" + +#: commands/tablecmds.c:21882 +#, c-format +msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." +msgstr "\"%s\" 칼럼(해당 릴레이션: \"%s\")에는 NOT NULL 마크가 없습니다." + +#: commands/tablecmds.c:22017 #, c-format msgid "column data type %s does not support compression" msgstr "%s 형의 칼럼 자료형은 압축을 지원하지 않음" -#: commands/tablecmds.c:20165 +#: commands/tablecmds.c:22024 #, c-format msgid "invalid compression method \"%s\"" msgstr "잘못된 압축 방법: \"%s\"" -#: commands/tablecmds.c:20191 +#: commands/tablecmds.c:22050 #, c-format msgid "invalid storage type \"%s\"" msgstr "잘못된 STORAGE 값: \"%s\"" -#: commands/tablecmds.c:20201 +#: commands/tablecmds.c:22060 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "%s 자료형의 column의 STORAGE 값은 반드시 PLAIN 이어야 합니다" @@ -13086,246 +13530,246 @@ msgstr "%u OID 테이블스페이스용 디렉터리는 삭제될 수 없음" msgid "You can remove the directories manually if necessary." msgstr "필요하다면 OS 작업으로 그 디레터리를 삭제하세요" -#: 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 "" "transition 테이블의 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 "REFERENCING 절에 ROW 변수 이름 붙이기를 지원하지 않습니다." -#: 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 "INSERT 트리거에서의 WHEN 조건에는 OLD 값을 참조할 수 없음" -#: commands/trigger.c:634 +#: commands/trigger.c:637 #, c-format msgid "DELETE trigger's WHEN condition cannot reference NEW values" msgstr "DELETE 트리거에서의 WHEN 조건에는 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 " @@ -13334,17 +13778,22 @@ 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:3341 executor/nodeModifyTable.c:1541 -#: executor/nodeModifyTable.c:1615 executor/nodeModifyTable.c:2377 -#: executor/nodeModifyTable.c:2468 executor/nodeModifyTable.c:3132 -#: executor/nodeModifyTable.c:3302 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 +#, c-format +msgid "cannot collect transition tuples from child foreign tables" +msgstr "하위 외부 테이블에서 transition 튜플을 모을 수 없음" + +#: 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 #, c-format msgid "" "Consider using an AFTER trigger instead of a BEFORE trigger to propagate " @@ -13353,32 +13802,32 @@ msgstr "" "다른 로우를 변경하는 일을 BEFORE 트리거 대신에 AFTER 트리거 사용을 고려해 보" "십시오" -#: commands/trigger.c:3382 executor/nodeLockRows.c:228 -#: executor/nodeLockRows.c:237 executor/nodeModifyTable.c:314 -#: executor/nodeModifyTable.c:1557 executor/nodeModifyTable.c:2394 -#: executor/nodeModifyTable.c:2618 +#: 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:2485 executor/nodeModifyTable.c:2642 -#: executor/nodeModifyTable.c:3150 +#: 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\" 제약 조건은 DEFERRABLE 속성으로 만들어지지 않았습니다" -#: commands/trigger.c:5805 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "\"%s\" 이름의 제약 조건이 없음" @@ -13492,7 +13941,7 @@ msgstr "" "쉘 타입으로 그 자료형을 만들고, 그것을 쓰기 위한 I/O 함수를 만들고, 끝으로 " "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\" 속성의 자료형" @@ -13512,7 +13961,7 @@ msgstr "배열 요소의 자료형으로 %s 자료형을 사용할 수 없습니 msgid "alignment \"%s\" not recognized" msgstr "잘못된 ALIGNMENT 값: \"%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 "잘못된 STORAGE 값: \"%s\"" @@ -13545,74 +13994,94 @@ 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 "default 표현식 여러개 있음" -#: 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 "exclusion 제약 조건은 도메인에는 사용할 수 없음" -#: commands/typecmds.c:998 commands/typecmds.c:2958 +#: commands/typecmds.c:1017 #, c-format msgid "foreign key constraints not possible for domains" msgstr "참조키(foreign key) 제약 조건은 도메인(domain) 정의에 사용할 수 없음" -#: 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 "specifying GENERATED not supported for domains" +msgstr "도메인에 대해 GENERATED 옵션을 지정할 수 없음" + +#: commands/typecmds.c:1043 +#, c-format +msgid "specifying constraint enforceability not supported for domains" +msgstr "도메인에 대해 ENFORCED 옵션을 지정할 수 없음" + +#: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format msgid "%s is not an enum" msgstr "%s 개체는 나열형이 아님" -#: commands/typecmds.c:1468 +#: 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 "range subtype은 %s 아니여야 함" -#: commands/typecmds.c:1492 +#: commands/typecmds.c:1526 #, c-format msgid "range collation specified but subtype does not support collation" msgstr "" "range 형에 정렬 규칙을 지정했지만, 소속 자료형이 그 정렬 규칙을 지원하지 않습" "니다" -#: commands/typecmds.c:1502 +#: commands/typecmds.c:1536 #, c-format msgid "cannot specify a canonical function without a pre-created shell type" msgstr "미리 만들어진 쉘 타입 없는 canonical 함수를 지정할 수 없음" -#: commands/typecmds.c:1503 +#: commands/typecmds.c:1537 #, c-format msgid "" "Create the type as a shell type, then create its canonicalization function, " @@ -13621,92 +14090,92 @@ msgstr "" "먼저 쉘 타입 자료형을 만들고, canonical 함수를 만든 다음 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 자료형 입력 함수는 volatile 특성이 없어야 합니다" -#: 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 자료형 출력 함수는 volatile 특성이 없어야 합니다" -#: commands/typecmds.c:2073 +#: commands/typecmds.c:2111 #, c-format msgid "type receive function %s has multiple matches" msgstr "%s 자료형 receive 함수가 여러 개 있습니다" -#: commands/typecmds.c:2091 +#: commands/typecmds.c:2129 #, c-format msgid "type receive function %s must return type %s" msgstr "%s 자료형 receive 함수는 %s 자료형을 반환해야 합니다" -#: commands/typecmds.c:2098 +#: commands/typecmds.c:2136 #, c-format msgid "type receive function %s should not be volatile" msgstr "%s 자료형 수신 함수는 volatile 특성이 없어야 합니다" -#: 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 자료형 송신 함수는 volatile 특성이 없어야 합니다" -#: commands/typecmds.c:2160 +#: commands/typecmds.c:2198 #, c-format msgid "typmod_in function %s must return type %s" msgstr "%s typmod_in 함수는 %s 자료형을 반환해야 함" -#: commands/typecmds.c:2167 +#: commands/typecmds.c:2205 #, c-format msgid "type modifier input function %s should not be volatile" msgstr "%s 자료형 형변환 입력 함수는 volatile 특성이 없어야 합니다" -#: commands/typecmds.c:2194 +#: commands/typecmds.c:2232 #, c-format msgid "typmod_out function %s must return type %s" msgstr "%s typmod_out 함수는 %s 자료형을 반환해야 함" -#: commands/typecmds.c:2201 +#: commands/typecmds.c:2239 #, c-format msgid "type modifier output function %s should not be volatile" msgstr "%s 자료형 형변환 출력 함수는 volatile 특성이 없어야 합니다" -#: 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 subscripting 함수의 반환값 자료형은 %s 형이어야 함" -#: commands/typecmds.c:2267 +#: commands/typecmds.c:2305 #, c-format msgid "user-defined types cannot use subscripting function %s" msgstr "사용자 정의 자료형은 %s subscripting 함수에서 쓸 수 없음" -#: 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 " @@ -13715,64 +14184,64 @@ msgstr "" "subtype을 위한 기본 연산자 클래스나 range 자료형을 위한 하나의 연산자 클래스" "를 지정해야 합니다" -#: commands/typecmds.c:2344 +#: commands/typecmds.c:2382 #, c-format msgid "range canonical function %s must return range type" msgstr "%s 범위 기준 함수는 range 자료형을 반환해야 합니다" -#: commands/typecmds.c:2350 +#: commands/typecmds.c:2388 #, c-format msgid "range canonical function %s must be immutable" msgstr "%s 범위 기준 함수는 immutable 속성이어야 합니다" -#: 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 범위 하위 자료 비교 함수는 immutable 속성이어야 합니다" -#: commands/typecmds.c:2420 +#: commands/typecmds.c:2458 #, c-format msgid "pg_type array OID value not set when in binary upgrade mode" msgstr "이진 업그레이드 작업 때 pg_type 배열 OID 값이 지정되지 않았습니다" -#: commands/typecmds.c:2453 +#: commands/typecmds.c:2491 #, c-format msgid "pg_type multirange OID value not set when in binary upgrade mode" msgstr "" "이진 업그레이드 작업 때 pg_type multirange OID 값이 지정되지 않았습니다" -#: 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 "" "이진 업그레이드 작업 때 pg_type multirange 배열 OID 값이 지정되지 않았습니다" -#: 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\")은 check 제약조건이 아님" -#: 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" @@ -13780,119 +14249,119 @@ 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 자료형은 테이블의 행 자료형(row type)입니다" -#: 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\" 개체는 기본 자료형이 아님" -#: commands/user.c:200 +#: commands/user.c:201 #, c-format msgid "SYSID can no longer be specified" msgstr "SYSID는 더 이상 지정할 수 없음" -#: commands/user.c:318 commands/user.c:324 commands/user.c:330 -#: commands/user.c:336 commands/user.c:342 +#: commands/user.c:319 commands/user.c:325 commands/user.c:331 +#: commands/user.c:337 commands/user.c:343 #, c-format msgid "permission denied to create role" msgstr "롤 만들 권한 없음" -#: commands/user.c:319 +#: commands/user.c:320 #, c-format msgid "Only roles with the %s attribute may create roles." msgstr "%s 속성을 가지고 있는 롤만이 롤을 만들 수 있습니다." -#: commands/user.c:325 commands/user.c:331 commands/user.c:337 -#: commands/user.c:343 +#: commands/user.c:326 commands/user.c:332 commands/user.c:338 +#: commands/user.c:344 #, c-format 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 +#: commands/user.c:355 commands/user.c:1386 commands/user.c:1393 +#: 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\" 롤 이름은 내부적으로 사용되고 있습니다" -#: commands/user.c:356 commands/user.c:1388 commands/user.c:1395 +#: commands/user.c:357 commands/user.c:1388 commands/user.c:1395 #, c-format msgid "Role names starting with \"pg_\" are reserved." msgstr "\"pg_\"로 시작하는 롤 이름은 사용할 수 없습니다." -#: commands/user.c:377 commands/user.c:1410 +#: commands/user.c:378 commands/user.c:1410 #, c-format msgid "role \"%s\" already exists" msgstr "\"%s\" 롤 이름이 이미 있습니다" -#: commands/user.c:439 commands/user.c:924 +#: commands/user.c:440 commands/user.c:924 #, c-format msgid "empty string is not a valid password, clearing password" msgstr "비밀번호로 빈 문자열을 사용할 수 없습니다. 비밀번호를 없앱니다" -#: commands/user.c:468 +#: commands/user.c:469 #, c-format msgid "pg_authid OID value not set when in binary upgrade mode" msgstr "이진 업그레이드 작업 때 pg_authid OID 값이 지정되지 않았습니다" @@ -13976,11 +14445,11 @@ msgstr "" msgid "cannot use special role specifier in DROP ROLE" msgstr "DROP ROLE 명령으로 삭제할 수 없는 특별한 롤입니다" -#: commands/user.c:1135 commands/user.c:1357 commands/variable.c:851 -#: commands/variable.c:854 commands/variable.c:971 commands/variable.c:974 -#: 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:799 +#: 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\" 롤(role) 없음" @@ -14052,7 +14521,7 @@ msgstr "" 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\"" @@ -14093,91 +14562,91 @@ 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:2036 #, 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:2137 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "\"%s\" 롤은 명시적 맴버를 가질 수 없음" -#: commands/user.c:2135 commands/user.c:2158 +#: commands/user.c:2148 commands/user.c:2171 #, c-format msgid "permission denied to grant role \"%s\"" msgstr "\"%s\" 롤 권한을 지정할 수 없음" -#: commands/user.c:2137 +#: commands/user.c:2150 #, 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:2155 commands/user.c:2178 #, c-format msgid "permission denied to revoke role \"%s\"" msgstr "\"%s\" 롤 권한 회수할 수 없음" -#: commands/user.c:2144 +#: commands/user.c:2157 #, 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:2173 #, 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:2180 #, 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:2260 commands/user.c:2269 #, c-format msgid "permission denied to grant privileges as role \"%s\"" msgstr "\"%s\" 롤 권한을 부여할 수 없음" -#: commands/user.c:2249 +#: commands/user.c:2262 #, 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:2271 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "권한 부여자는 %s 옵션(해당 롤: \"%s\")이 있어야 함" -#: commands/user.c:2266 +#: commands/user.c:2279 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "\"%s\" 롤이 부여한 권한을 회수 할 수 있는 권한 없음" -#: commands/user.c:2268 +#: commands/user.c:2281 #, c-format msgid "" "Only roles with privileges of role \"%s\" may revoke privileges granted by " @@ -14185,126 +14654,130 @@ msgid "" msgstr "" "\"%s\" 롤 권한이 있는 롤만이 이 롤에 의해 부여한 권한을 회수할 수 있음." -#: commands/user.c:2491 utils/adt/acl.c:1324 +#: commands/user.c:2504 utils/adt/acl.c:1342 #, c-format msgid "dependent privileges exist" msgstr "의존적인 권한이 존재합니다" -#: commands/user.c:2492 utils/adt/acl.c:1325 +#: commands/user.c:2505 utils/adt/acl.c:1343 #, c-format msgid "Use CASCADE to revoke them too." msgstr "그것들을 취소하려면 \"CASCADE\"를 사용하세요." -#: commands/vacuum.c:134 +#: commands/vacuum.c:147 #, c-format -msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" -msgstr "" -"\"vacuum_buffer_usage_limit\" 값은 0 이거나 %d kB에서 %d kB 사이값이여야 함" +msgid "\"%s\" must be 0 or between %d kB and %d kB." +msgstr "\"%s\" 값은 0 이거나 %d kB에서 %d kB 사이값이여야 함" -#: commands/vacuum.c:209 +#: commands/vacuum.c:223 #, 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:219 +#: commands/vacuum.c:233 #, c-format msgid "unrecognized ANALYZE option \"%s\"" msgstr "알 수 없는 ANALYZE 옵션: \"%s\"" -#: commands/vacuum.c:259 +#: commands/vacuum.c:273 #, c-format msgid "parallel option requires a value between 0 and %d" msgstr "병렬 옵션은 0부터 %d까지 값만 사용할 수 있음" -#: commands/vacuum.c:271 +#: commands/vacuum.c:285 #, c-format msgid "parallel workers for vacuum must be between 0 and %d" msgstr "청소용 병렬 작업자수는 0부터 %d까지 값만 사용할 수 있음" -#: commands/vacuum.c:292 +#: commands/vacuum.c:306 #, c-format msgid "unrecognized VACUUM option \"%s\"" msgstr "알 수 없는 VACUUM 옵션 \"%s\"" -#: commands/vacuum.c:318 +#: commands/vacuum.c:332 #, c-format msgid "VACUUM FULL cannot be performed in parallel" msgstr "VACUUM FULL 작업은 병렬로 처리할 수 없음" -#: commands/vacuum.c:329 +#: commands/vacuum.c:343 #, c-format msgid "BUFFER_USAGE_LIMIT cannot be specified for VACUUM FULL" msgstr "VACUUM FULL 작업에서는 BUFFER_USAGE_LIMIT 설정을 지정할 수 없음" -#: commands/vacuum.c:343 +#: commands/vacuum.c:357 #, c-format msgid "ANALYZE option must be specified when a column list is provided" msgstr "ANALYZE 옵션은 칼럼 목록이 제공될 때 사용할 수 있습니다" -#: commands/vacuum.c:355 +#: commands/vacuum.c:369 #, 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:376 #, c-format msgid "PROCESS_TOAST required with VACUUM FULL" msgstr "VACUUM FULL 작업은 PROCESS_TOAST 옵션이 포함되어야 함" -#: commands/vacuum.c:371 +#: commands/vacuum.c:385 #, 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:394 #, c-format msgid "ONLY_DATABASE_STATS cannot be specified with other VACUUM options" msgstr "" "ONLY_DATABASE_STATS 옵션은 다른 VACUUM 옵션들과 함께 사용할 수 없습니다." -#: commands/vacuum.c:515 +#: commands/vacuum.c:534 #, c-format msgid "%s cannot be executed from VACUUM or ANALYZE" msgstr "%s 명령은 VACUUM, ANALYZE 명령에서 실행 될 수 없음" -#: commands/vacuum.c:730 +#: commands/vacuum.c:756 #, c-format msgid "permission denied to vacuum \"%s\", skipping it" msgstr "\"%s\" 청소할 접근 권한 없음, 건너 뜀" -#: commands/vacuum.c:743 +#: commands/vacuum.c:769 #, c-format msgid "permission denied to analyze \"%s\", skipping it" msgstr "\"%s\" 통계정보 수집할 권한 없음, 건너 뜀" -#: commands/vacuum.c:821 commands/vacuum.c:918 +#: commands/vacuum.c:847 commands/vacuum.c:948 #, c-format msgid "skipping vacuum of \"%s\" --- lock not available" msgstr "\"%s\" 개체 vacuum 건너뜀 --- 사용 가능한 잠금이 없음" -#: commands/vacuum.c:826 +#: commands/vacuum.c:852 #, c-format msgid "skipping vacuum of \"%s\" --- relation no longer exists" msgstr "\"%s\" 개체 vacuum 건너뜀 --- 해당 릴레이션 없음" -#: commands/vacuum.c:842 commands/vacuum.c:923 +#: commands/vacuum.c:868 commands/vacuum.c:953 #, c-format msgid "skipping analyze of \"%s\" --- lock not available" msgstr "\"%s\" 분석 건너뜀 --- 잠글 수 없음" -#: commands/vacuum.c:847 +#: commands/vacuum.c:873 #, c-format msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "\"%s\" 분석 건너뜀 --- 릴레이션어 없음" -#: commands/vacuum.c:1139 +#: commands/vacuum.c:989 +#, c-format +msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" +msgstr "\"%s\" 파티션 상위 테이블 대상 VACUUM ONLY 작업은 아무 효과가 없음" + +#: commands/vacuum.c:1180 #, 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:1181 commands/vacuum.c:1186 #, c-format msgid "" "Close open transactions soon to avoid wraparound problems.\n" @@ -14317,41 +14790,41 @@ msgstr "" "합니다." # # search5 부분 -#: commands/vacuum.c:1144 +#: commands/vacuum.c:1185 #, c-format msgid "cutoff for freezing multixacts is far in the past" msgstr "영구 보관 처리할 multixact 값이 너무 옛날 것입니다." -#: commands/vacuum.c:1900 +#: commands/vacuum.c:1947 #, c-format msgid "some databases have not been vacuumed in over 2 billion transactions" msgstr "" "몇몇 데이터베이스가 20억 이상의 트랜잭션을 처리했음에도 불구하고 청소가되지 " "않았습니다" -#: commands/vacuum.c:1901 +#: commands/vacuum.c:1948 #, c-format msgid "You might have already suffered transaction-wraparound data loss." msgstr "이미 트래잭션 ID 겹침 현상으로 자료 손실이 발생했을 수도 있습니다." -#: commands/vacuum.c:2080 +#: commands/vacuum.c:2134 #, c-format msgid "skipping \"%s\" --- cannot vacuum non-tables or special system tables" msgstr "" "\"%s\" 건너뜀 --- 테이블이 아닌 것 또는 특별 시스템 테이블 등은 청소할 수 없" "음" -#: commands/vacuum.c:2512 +#: commands/vacuum.c:2650 #, c-format -msgid "scanned index \"%s\" to remove %lld row versions" -msgstr "\"%s\" 인덱스를 스캔해서 %lld개의 행 버전을 지웠음" +msgid "scanned index \"%s\" to remove % row versions" +msgstr "\"%s\" 인덱스를 스캔해서 %개의 행 버전을 지웠음" -#: commands/vacuum.c:2531 +#: commands/vacuum.c:2669 #, c-format msgid "index \"%s\" now contains %.0f row versions in %u pages" msgstr "\"%s\" 인덱스는 %.0f 행 버전을 %u 페이지에서 포함하고 있습니다." -#: commands/vacuum.c:2535 +#: commands/vacuum.c:2673 #, c-format msgid "" "%.0f index row versions were removed.\n" @@ -14362,14 +14835,14 @@ msgstr "" "%u개 인덱스 페이지를 새롭게 삭제했습니다.\n" "%u개 인덱스 페이지를 현재 삭제해서, %u개 페이지를 다시 사용합니다." -#: commands/vacuumparallel.c:707 +#: 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)" msgstr[0] "인덱스 청소를 위해 %d 개의 병렬 청소 작업자가 실행됨 (예상값: %d)" -#: commands/vacuumparallel.c:713 +#: commands/vacuumparallel.c:715 #, c-format msgid "launched %d parallel vacuum worker for index cleanup (planned: %d)" msgid_plural "" @@ -14379,8 +14852,8 @@ msgstr[0] "" #: commands/variable.c:185 #, c-format -msgid "Conflicting \"datestyle\" specifications." -msgstr "\"datestyle\" 지정이 충돌함" +msgid "Conflicting \"DateStyle\" specifications." +msgstr "\"DateStyle\" 지정이 충돌함" #: commands/variable.c:307 #, c-format @@ -14392,12 +14865,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\" time zone 에서 leap second를 사용합니다" -#: 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에서는 leap second를 지원하지 않습니다" @@ -14407,117 +14880,99 @@ msgstr "PostgreSQL에서는 leap second를 지원하지 않습니다" 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:1685 +#: commands/variable.c:610 storage/lmgr/predicate.c:1695 #, c-format msgid "cannot use serializable mode in a hot standby" msgstr "읽기 전용 보조 서버 상태에서는 serializable 모드를 사용할 수 없음" -#: 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 "\"client_encoding\" 값을 지금은 바꿀 수 없음" -#: commands/variable.c:781 -#, c-format -msgid "cannot change \"client_encoding\" during a parallel operation" -msgstr "병렬 작업 중에는 \"client_encoding\" 설정을 할 수 없음" - -#: commands/variable.c:876 +#: commands/variable.c:889 #, c-format msgid "permission will be denied to set session authorization \"%s\"" msgstr "set session authorization \"%s\" 작업 권한 거부될 것임" -#: commands/variable.c:881 +#: commands/variable.c:894 #, c-format msgid "permission denied to set session authorization \"%s\"" msgstr "set session authorization \"%s\" 작업 권한 없음" -#: commands/variable.c:991 +#: commands/variable.c:1003 #, c-format msgid "permission will be denied to set role \"%s\"" msgstr "set role \"%s\" 작업 권한 거부될 것임" -#: commands/variable.c:996 +#: commands/variable.c:1008 #, c-format msgid "permission denied to set role \"%s\"" msgstr "set role \"%s\" 작업 권한 없음" -#: commands/variable.c:1200 +#: commands/variable.c:1226 #, c-format msgid "Bonjour is not supported by this build" msgstr "Bonjour 기능을 뺀 채로 서버가 만들어졌습니다." -#: commands/variable.c:1228 -#, c-format -msgid "" -"\"effective_io_concurrency\" must be set to 0 on platforms that lack " -"posix_fadvise()." -msgstr "" -"posix_fadvise() 함수에 문제가 있는 플랫폼에서는 \"effective_io_concurrency\" " -"설정값이 0 이어야 합니다." - -#: commands/variable.c:1241 -#, c-format -msgid "" -"\"maintenance_io_concurrency\" must be set to 0 on platforms that lack " -"posix_fadvise()." -msgstr "" -"posix_fadvise() 함수에 문제가 있는 플랫폼에서는 " -"\"maintenance_io_concurrency\" 설정값이 0 이어야 합니다." - #: 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\" 칼럼 자료 처리를 위한 정렬 규칙을 결정할 수 없음" @@ -14611,121 +15066,121 @@ msgstr "\"%s\" 커서가 로우에 놓여 있지 않음" msgid "cursor \"%s\" is not a simply updatable scan of table \"%s\"" msgstr "\"%s\" 커서는 \"%s\" 테이블의 단순 업데이트 가능한 스캔이 아님" -#: executor/execCurrent.c:280 executor/execExprInterp.c:2555 +#: 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:2567 +#: 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:4852 executor/execExprInterp.c:4869 -#: executor/execExprInterp.c:4968 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:4870 -#: 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:843 #, c-format msgid "window function calls cannot be nested" msgstr "윈도우 함수 호출을 중첩할 수 없음" -#: executor/execExpr.c:1649 +#: executor/execExpr.c:1689 #, c-format msgid "target type is not an array" msgstr "대상 자료형이 배열이 아닙니다." -#: executor/execExpr.c:1989 +#: executor/execExpr.c:2033 #, c-format msgid "ROW() column has type %s instead of type %s" msgstr "ROW() 칼럼은 %s 자료형을 가집니다. %s 자료형 대신에" -#: executor/execExpr.c:2653 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" msgid_plural "cannot pass more than %d arguments to a function" msgstr[0] "함수에 최대 %d개의 인자를 전달할 수 있음" -#: executor/execExpr.c:2680 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-values 함수(테이블 리턴 함수)가 set 정의 없이 사용되었습니다 (테이블과 해" "당 열 alias 지정하세요)" -#: executor/execExpr.c:3086 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 "" "이 자료형은 subscript 형을 지원하지 않기 때문에, %s subscript 자료형을 사용" "할 수 없음" -#: executor/execExpr.c:3214 executor/execExpr.c:3236 +#: executor/execExpr.c:3390 executor/execExpr.c:3412 #, c-format msgid "type %s does not support subscripted assignment" msgstr "%s 자료형은 subscript 지정을 지원하지 않음" -#: executor/execExprInterp.c:2019 +#: executor/execExprInterp.c:2415 #, c-format msgid "attribute %d of type %s has been dropped" msgstr "%d 번째 속성(대상 자료형 %s)이 삭제되었음" -#: executor/execExprInterp.c:2025 +#: executor/execExprInterp.c:2421 #, c-format msgid "attribute %d of type %s has wrong type" msgstr "%d 번째 속성(대상 자료형 %s)의 자료형이 잘못되었음" -#: executor/execExprInterp.c:2027 executor/execExprInterp.c:3226 -#: executor/execExprInterp.c:3272 +#: 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:2107 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:2710 +#: executor/execExprInterp.c:3266 #, c-format msgid "WHERE CURRENT OF is not supported for this table type" msgstr "WHERE CURRENT OF 구문은 이 테이블 형 대상으로 지원하지 않습니다." -#: executor/execExprInterp.c:2923 +#: executor/execExprInterp.c:3479 #, c-format msgid "cannot merge incompatible arrays" msgstr "배열 형태가 서로 틀려 병합할 수 없습니다" -#: executor/execExprInterp.c:2924 +#: executor/execExprInterp.c:3480 #, c-format msgid "" "Array with element type %s cannot be included in ARRAY construct with " @@ -14734,79 +15189,79 @@ msgstr "" "%s 자료형의 요소로 구성된 배열은 %s 자료형의 요소로 구성된 ARRAY 구문에 포함" "될 수 없습니다." -#: executor/execExprInterp.c:2945 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:2965 executor/execExprInterp.c:3000 +#: executor/execExprInterp.c:3521 executor/execExprInterp.c:3556 #, c-format msgid "" "multidimensional arrays must have array expressions with matching dimensions" msgstr "다차원 배열에는 일치하는 차원이 포함된 배열 식이 있어야 함" -#: executor/execExprInterp.c:2977 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:3225 executor/execExprInterp.c:3271 +#: executor/execExprInterp.c:3781 executor/execExprInterp.c:3827 #, c-format msgid "attribute %d has wrong type" msgstr "%d 속성의 형식이 잘못됨" -#: executor/execExprInterp.c:3857 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:3872 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:4447 +#: executor/execExprInterp.c:5003 #, c-format msgid "no SQL/JSON item found for specified path of column \"%s\"" msgstr "\"%s\" 칼럼에 지정한 패스에서는 SQL/JSON 아이템을 찾을 수 없음" -#: executor/execExprInterp.c:4452 +#: executor/execExprInterp.c:5008 #, c-format msgid "no SQL/JSON item found for specified path" msgstr "지정한 패스에서는 SQL/JSON 아이템을 찾을 수 없음" #. translator: first %s is a SQL/JSON clause (e.g. ON ERROR) -#: executor/execExprInterp.c:4652 executor/execExprInterp.c:4660 +#: executor/execExprInterp.c:5208 executor/execExprInterp.c:5216 #, c-format msgid "could not coerce %s expression (%s) to the RETURNING type" msgstr "%s 표현식 (%s)은 RETURNING 형식으로 바꿀 수 없음" -#: executor/execExprInterp.c:4853 +#: 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." msgstr[0] "" "테이블 행에는 %d개 속성이 포함되어 있는데 쿼리에는 %d개가 필요합니다." -#: executor/execExprInterp.c:4969 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 " @@ -14815,129 +15270,139 @@ msgstr "" "지연 가능한 고유 제약조건이나 제외 제약 조건은 ON CONFLICT 판별자로 사용할 " "수 없습니다." -#: executor/execIndexing.c:870 +#: executor/execIndexing.c:911 #, c-format msgid "could not create exclusion constraint \"%s\"" msgstr "\"%s\" exclusion 제약 조건을 만들 수 없음" -#: 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\" exclusion 제약 조건에 따라 키 값 충돌이 발생했습니다." -#: 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:1039 +#: executor/execIndexing.c:1172 +#, c-format +msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" +msgstr "\"%s\" 칼럼(해당 테이블: \"%s\")에서 빈 WITHOUT OVERLAPS 값이 발견됨" + +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "\"%s\" 시퀀스를 바꿀 수 없음" -#: executor/execMain.c:1045 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "\"%s\" TOAST 릴레이션을 바꿀 수 없음" -#: executor/execMain.c:1064 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "\"%s\" 구체화된 뷰를 바꿀 수 없음" -#: executor/execMain.c:1076 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "\"%s\" 외부 테이블에 자료를 입력할 수 없음" -#: executor/execMain.c:1082 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "\"%s\" 외부 테이블은 자료 입력을 허용하지 않음" -#: executor/execMain.c:1089 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "\"%s\" 외부 테이블에 자료를 변경 할 수 없음" -#: executor/execMain.c:1095 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "\"%s\" 외부 테이블은 자료 변경을 허용하지 않음" -#: executor/execMain.c:1102 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "\"%s\" 외부 테이블에 자료를 삭제 할 수 없음" -#: executor/execMain.c:1108 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "\"%s\" 외부 테이블은 자료 삭제를 허용하지 않음" -#: executor/execMain.c:1119 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "\"%s\" 릴레이션을 바꿀 수 없음" -#: executor/execMain.c:1146 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "\"%s\" 시퀀스에서 로우를 잠글 수 없음" -#: executor/execMain.c:1153 +#: executor/execMain.c:1199 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "\"%s\" TOAST 릴레이션에서 로우를 잠글 수 없음" -#: executor/execMain.c:1160 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "\"%s\" 뷰에서 로우를 잠글 수 없음" -#: executor/execMain.c:1168 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "\"%s\" 구체화된 뷰에서 로우를 잠글 수 없음" -#: executor/execMain.c:1177 executor/execMain.c:2687 +#: executor/execMain.c:1223 executor/execMain.c:2855 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "\"%s\" 외부 테이블에서 로우를 잠글 수 없음" -#: executor/execMain.c:1183 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "\"%s\" 릴레이션에서 로우를 잠글 수 없음" -#: executor/execMain.c:1901 +#: executor/execMain.c:1952 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "새 자료가 \"%s\" 릴레이션의 파티션 제약 조건을 위반했습니다" -#: executor/execMain.c:1903 executor/execMain.c:1987 executor/execMain.c:2038 -#: executor/execMain.c:2148 +#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 +#: executor/execMain.c:2312 #, c-format msgid "Failing row contains %s." msgstr "실패한 자료: %s" -#: executor/execMain.c:1984 +#: executor/execMain.c:2064 +#, c-format +msgid "new row for relation \"%s\" violates check constraint \"%s\"" +msgstr "새 자료가 \"%s\" 릴레이션의 \"%s\" 체크 제약 조건을 위반했습니다" + +#: executor/execMain.c:2201 #, c-format msgid "" "null value in column \"%s\" of relation \"%s\" violates not-null constraint" @@ -14945,28 +15410,23 @@ msgstr "" "\"%s\" 칼럼(해당 릴레이션 \"%s\")의 null 값이 not null 제약조건을 위반했습니" "다." -#: executor/execMain.c:2036 -#, c-format -msgid "new row for relation \"%s\" violates check constraint \"%s\"" -msgstr "새 자료가 \"%s\" 릴레이션의 \"%s\" 체크 제약 조건을 위반했습니다" - -#: executor/execMain.c:2146 +#: executor/execMain.c:2310 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "새 자료가 \"%s\" 뷰의 체크 제약 조건을 위반했습니다" -#: executor/execMain.c:2156 +#: executor/execMain.c:2320 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "" "새 자료가 \"%s\" 로우 단위 보안 정책을 위반했습니다, 해당 테이블: \"%s\"" -#: executor/execMain.c:2161 +#: executor/execMain.c:2325 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "새 자료가 \"%s\" 테이블의 로우 단위 보안 정책을 위반했습니다." -#: executor/execMain.c:2169 +#: executor/execMain.c:2333 #, c-format msgid "" "target row violates row-level security policy \"%s\" (USING expression) for " @@ -14975,7 +15435,7 @@ msgstr "" "대상 로우가 \"%s\" 로우 단위 보안 정책(USING 절 사용)을 위반했습니다, 해당 테" "이블: \"%s\"" -#: executor/execMain.c:2174 +#: executor/execMain.c:2338 #, c-format msgid "" "target row violates row-level security policy (USING expression) for table " @@ -14984,7 +15444,7 @@ msgstr "" "대상 로우가 \"%s\" 테이블의 로우 단위 보안 정책(USING 절 사용)을 위반했습니" "다." -#: executor/execMain.c:2181 +#: executor/execMain.c:2345 #, c-format msgid "" "new row violates row-level security policy \"%s\" (USING expression) for " @@ -14993,25 +15453,25 @@ msgstr "" "새 자료가 \"%s\" 로우 단위 보안 정책(USING 절 사용)을 위반했습니다, 해당 테이" "블: \"%s\"" -#: executor/execMain.c:2186 +#: executor/execMain.c:2350 #, c-format msgid "" -"new row violates row-level security policy (USING expression) for table " -"\"%s\"" +"new row violates row-level security policy (USING expression) for table \"%s" +"\"" msgstr "" "새 자료가 \"%s\" 테이블의 로우 단위 보안 정책(USING 절 사용)을 위반했습니다." -#: 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 " @@ -15019,50 +15479,47 @@ msgid "" 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 자료형에서 사용할 동등 연산자(equality operator)를 찾을 수 없습니다." - -#: executor/execReplication.c:687 executor/execReplication.c:693 +#: executor/execReplication.c:809 executor/execReplication.c:815 +#: executor/execReplication.c:821 #, c-format msgid "cannot update table \"%s\"" msgstr "\"%s\" 테이블에 자료를 변경 할 수 없음" -#: executor/execReplication.c:689 executor/execReplication.c:701 +#: 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:695 executor/execReplication.c:707 +#: 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:699 executor/execReplication.c:705 +#: 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:725 +#: executor/execReplication.c:859 #, c-format msgid "" "cannot update table \"%s\" because it does not have a replica identity and " @@ -15071,26 +15528,26 @@ msgstr "" "\"%s\" 테이블 업데이트 실패, 이 테이블에는 복제용 식별자를 지정하지 않았거" "나, updates 옵션 없이 발행했습니다" -#: executor/execReplication.c:727 +#: executor/execReplication.c:861 #, c-format msgid "To enable updating the table, set REPLICA IDENTITY using ALTER TABLE." msgstr "" "업데이트를 하려면, ALTER TABLE 명령어에서 REPLICA IDENTITY 옵션을 사용하세요" -#: executor/execReplication.c:731 +#: 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\" 테이블 자료 삭제 실패, 복제 식별자와 deletes 발행을 안함" -#: executor/execReplication.c:733 +#: executor/execReplication.c:867 #, c-format msgid "" "To enable deleting from the table, set REPLICA IDENTITY using ALTER TABLE." msgstr "삭제 하려면, ALTER TABLE 명령어에서 REPLICA IDENTITY 옵션을 사용하세요" -#: executor/execReplication.c:749 +#: executor/execReplication.c:883 #, c-format msgid "cannot use relation \"%s.%s\" as logical replication target" msgstr "\"%s.%s\" 릴레이션은 논리 복제 대상이 될 수 없음" @@ -15141,78 +15598,58 @@ msgstr[0] "" 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 "튜플의 이런 형태에 대한 트랜잭션 정보가 없음" -#: 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 "이 컨텍스트에는 a storage tuple 을 가질 수 없음." -#: 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 to/from 작업을 할 수 없음" #. 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: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 구문은 비휘발성 함수(non-volatile function)에서 허용하지 않습니다" -#: executor/functions.c:1452 -#, c-format -msgid "SQL function \"%s\" statement %d" -msgstr "SQL 함수 \"%s\"의 문 %d" - -#: executor/functions.c:1478 -#, c-format -msgid "SQL function \"%s\" during startup" -msgstr "시작 중 SQL 함수 \"%s\"" - -#: executor/functions.c:1563 -#, c-format -msgid "" -"calling procedures with output arguments is not supported in SQL functions" -msgstr "출력 인자를 포함한 프로시져 호출은 SQL 함수에서 지원하지 않습니다." - -#: 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: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:1700 +#: executor/functions.c:1187 executor/functions.c:2226 #, c-format msgid "" "Function's final statement must be SELECT or INSERT/UPDATE/DELETE/MERGE " @@ -15221,44 +15658,65 @@ msgstr "" "함수 내용의 맨 마지막 구문은 SELECT 또는 INSERT/UPDATE/DELETE/MERGE RETURNING" "이어야 합니다." -#: executor/functions.c:1738 +#: executor/functions.c:1270 utils/cache/plancache.c:860 +#, c-format +msgid "cached plan must not change result type" +msgstr "캐시된 계획에서 결과 형식을 바꾸지 않아야 함" + +#: executor/functions.c:1922 executor/functions.c:1953 +#, c-format +msgid "SQL function \"%s\" during startup" +msgstr "시작 중 SQL 함수 \"%s\"" + +#: executor/functions.c:1950 +#, c-format +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: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 "반환 자료형인 %s 자료형은 SQL 함수에서 지원되지 않음" -#: executor/nodeAgg.c:3936 executor/nodeWindowAgg.c:2975 +#: executor/nodeAgg.c:4039 executor/nodeWindowAgg.c:3041 #, c-format msgid "aggregate %u needs to have compatible input type and transition type" msgstr "%u OID 집계함수에 호환 가능한 입력 형식과 변환 형식이 있어야 함" -#: executor/nodeAgg.c:3966 parser/parse_agg.c:680 parser/parse_agg.c:708 +#: executor/nodeAgg.c:4062 parser/parse_agg.c:685 parser/parse_agg.c:713 #, c-format msgid "aggregate function calls cannot be nested" msgstr "집계 함수는 중첩되어 호출 할 수 없음" @@ -15268,12 +15726,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 distance 함수들은 인덱스 단독 탐색을 지원하지 않음" @@ -15288,41 +15746,46 @@ 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 " @@ -15331,7 +15794,7 @@ 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\"." @@ -15339,19 +15802,19 @@ 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:2596 executor/nodeModifyTable.c:3138 -#: executor/nodeModifyTable.c:3308 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 +#: executor/nodeModifyTable.c:3508 #, c-format msgid "%s command cannot affect row a second time" msgstr "%s 명령은 두번째 작업에는 아무런 영향을 주 않음" -#: executor/nodeModifyTable.c:2598 +#: executor/nodeModifyTable.c:2790 #, c-format msgid "" "Ensure that no rows proposed for insertion within the same command have " @@ -15360,7 +15823,7 @@ msgstr "" "동일한 명령 내에서 삽입하도록 제안된 행에 중복된 제한 값이 없는지 확인하십시" "오." -#: executor/nodeModifyTable.c:3131 executor/nodeModifyTable.c:3301 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 #, c-format msgid "" "tuple to be updated or deleted was already modified by an operation " @@ -15369,12 +15832,12 @@ msgstr "" "현재 명령으로 실행된 트리거 작업으로 변경하거나 지울 자료가 이미 바뀌었습니" "다." -#: executor/nodeModifyTable.c:3140 executor/nodeModifyTable.c:3310 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "둘 이상의 소스 행이 하나의 대상 행과 일치하지 않는지 확인하십시오." -#: executor/nodeModifyTable.c:3209 +#: executor/nodeModifyTable.c:3408 #, c-format msgid "" "tuple to be merged was already moved to another partition due to concurrent " @@ -15391,8 +15854,8 @@ msgstr "TABLESAMPLE 절에는 반드시 부가 옵션값들이 있어야 합니 msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "TABLESAMPLE REPEATABLE 절은 더 이상의 부가 옵션을 쓰면 안됩니다." -#: 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 "표현식에 사용된 서브쿼리 결과가 하나 이상의 행을 리턴했습니다" @@ -15427,27 +15890,27 @@ msgstr "\"%s\" 칼럼은 null 값을 허용하지 않습니다" msgid "moving-aggregate transition function must not return null" msgstr "moving-aggregate transition 함수는 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:2891 +#: executor/nodeWindowAgg.c:2957 #, c-format msgid "aggregate function %s does not support use as a window function" msgstr "%s 집계 함수는 윈도우 함수로 사용될 수 없습니다" @@ -15498,7 +15961,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:2928 +#: executor/spi.c:1719 parser/analyze.c:3076 #, c-format msgid "Scrollable cursors must be READ ONLY." msgstr "스크롤 가능 커서는 READ ONLY여야 합니다." @@ -15516,8 +15979,8 @@ msgstr "%s 쿼리는 집합을 반환할 수 없습니다." #: 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:2992 #, c-format @@ -15534,28 +15997,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:7293 +#: optimizer/util/plancat.c:538 #, c-format msgid "access to non-system foreign table is restricted" msgstr "non-system 외부 테이블을 접근하는 것은 제한되었음" -#: 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 "이 컨텍스트에서 유효한 옵션이 없음." @@ -15566,82 +16029,290 @@ msgstr "이 컨텍스트에서 유효한 옵션이 없음." msgid "Failed on DSA request of size %zu." msgstr "크기가 %zu인 DSA 요청에서 오류가 발생했습니다." -#: 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 "" +"클라이언트는 authorization identity를 사용하지만, 이것을 지원하지 않습니다." + +#: libpq/auth-oauth.c:255 libpq/auth-scram.c:1080 +#, c-format +msgid "Unexpected attribute \"%s\" in client-first-message." +msgstr "client-first-message 안에 \"%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 "메시지에 여러 auth 값이 포함되어 있습니다." + +#: 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 bearer 토큰" + +#: libpq/auth-oauth.c:586 +#, c-format +msgid "Client response indicated a non-Bearer authentication scheme." +msgstr "클라이언트 응답이 non-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 "\"%s\" 사용자에 대한 OAuth bearer 인증을 실패했습니다." + +#: 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\": magic 번호 틀림" + +#: 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 module \"%s\"에서 %s 콜백 함수를 제공해야 함" + +#: libpq/auth-oauth.c:833 +#, c-format +msgid "oauth_validator_libraries must be set for authentication method %s" +msgstr "%s 인증 방법을 이용하려면, oauth_validator_libraries 설정을 해야함" + +#: 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_libraries 설정에서 여러 옵션이 있는 경우, \"oauth\" 인증 방법" +"은 \"validator\" 인자 설정을 해야 함" + +#: 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 "\"%s\" 사용자에 대한 잘못된 SCRAM secret" -#: 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 secret이 없습니다." -#: 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 " @@ -15650,17 +16321,12 @@ 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. " @@ -15669,7 +16335,7 @@ 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 " @@ -15678,153 +16344,137 @@ 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 "" -"클라이언트는 authorization identity를 사용하지만, 이것을 지원하지 않습니다." - -#: libpq/auth-scram.c:1066 -#, c-format -msgid "Unexpected attribute \"%s\" in client-first-message." -msgstr "client-first-message 안에 \"%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 "임의 nonce를 인코드할 수 없음" -#: 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 "client-final-message 안에 예상치 못한 SCRAM 채널 바인딩 속성이 있음" -#: libpq/auth-scram.c:1380 +#: libpq/auth-scram.c:1393 #, c-format msgid "Malformed proof in client-final-message." msgstr "client-final-message 안에 잘못된 증명" -#: libpq/auth-scram.c:1388 +#: libpq/auth-scram.c:1401 #, c-format msgid "Garbage found at the end of client-final-message." msgstr "client-final-message 끝에 추가로 쓸모 없는 값이 있음" -#: 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\"의 password 인증을 실패했습니다" -#: 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 " @@ -15832,25 +16482,25 @@ msgid "" 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" @@ -15859,288 +16509,293 @@ msgstr "" "에 따라 거부됩니다" #. 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" +"pg_hba.conf rejects connection for host \"%s\", user \"%s\", database \"%s" +"\", %s" msgstr "" "호스트 \"%s\", 사용자 \"%s\", 데이터베이스 \"%s\", %s 연결이 pg_hba.conf 파" "일 설정에 따라 거부됩니다" -#: 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\" 클라이언트 호스트 이름을 %s IP 주소로 전환할 수 없음." -#: 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" +"no pg_hba.conf entry for replication connection from host \"%s\", user \"%s" +"\", %s" msgstr "" "호스트 \"%s\", 사용자 \"%s\", %s 연결이 복제용 연결로 pg_hba.conf 파일에 설정" "되어 있지 않습니다" #. 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 "" "호스트 \"%s\", 사용자 \"%s\", 데이터베이스 \"%s\", %s 연결에 대한 설정이 " "pg_hba.conf 파일에 없습니다." -#: libpq/auth.c:656 +#: libpq/auth.c:657 #, c-format msgid "connection authenticated: user=\"%s\" method=%s (%s:%d)" msgstr "연결 인증됨: 사용자=\"%s\" 인증방법=%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 "realm 이름이 너무 긺" -#: libpq/auth.c:1562 +#: libpq/auth.c:1563 #, c-format msgid "translated account name too long" -msgstr "변환된 접속자 이름이 너무 깁니다" +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 "주소 \"%s\", 포트 %s의 Ident 서버에게 연결할 수 없습니다: %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 "주소 \"%s\", 포트 %s의 Ident 서버에게 질의를 보낼 수 없습니다: %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 "주소 \"%s\", 포트 %s의 Ident 서버로부터 응답을 받지 못했습니다: %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 "신뢰성 피어를 얻을 수 없습니다: %m" -#: libpq/auth.c:1886 +#: libpq/auth.c:1888 +#, c-format +msgid "could not look up local user ID %ld: %m" +msgstr "%ld 로컬 사용자 ID를 찾을 수 없음: %m" + +#: libpq/auth.c:1894 #, c-format -msgid "could not look up local user ID %ld: %s" -msgstr "UID %ld 해당하는 사용자를 찾을 수 없음: %s" +msgid "local user with ID %ld does not exist" +msgstr "%ld 로컬 사용자 ID를 찾을 수 없음" -#: libpq/auth.c:1988 +#: 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 conversation %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 인증 실패: %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 "\"%s\"용 LDAP 인증 작업에서 DNS SRV 레코드를 찾을 수 없음" -#: 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 "ldap 인증으로 사용할 수 없는 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\": " @@ -16149,50 +16804,50 @@ msgstr "" "\"%s\" ldapbinddn (해당 서버: \"%s\") 설정에 대한 LDAP 바인드 초기화를 할 수 " "없음: %s" -#: libpq/auth.c:2564 +#: libpq/auth.c:2570 #, c-format msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s" msgstr "\"%s\" 필터로 LDAP 검색 실패함, 대상 서버: \"%s\": %s" -#: libpq/auth.c:2580 +#: libpq/auth.c:2586 #, c-format msgid "LDAP user \"%s\" does not exist" msgstr "\"%s\" LDAP 사용자가 없음" -#: libpq/auth.c:2581 +#: libpq/auth.c:2587 #, c-format msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries." msgstr "\"%s\" 필터로 \"%s\" 서버에서 LDAP 검색을 했으나, 해당 자료가 없음" -#: libpq/auth.c:2585 +#: libpq/auth.c:2591 #, c-format msgid "LDAP user \"%s\" is not unique" msgstr "\"%s\" LDAP 사용자가 유일하지 않습니다" -#: 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." msgstr[0] "\"%s\" 필터로 \"%s\" 서버에서 LDAP 검색 결과 %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 "\"%s\" 첫번째 항목 조회용 dn 값을 \"%s\" 서버에서 찾을 수 없음: %s" -#: libpq/auth.c:2633 +#: libpq/auth.c:2639 #, c-format msgid "LDAP login failed for user \"%s\" on server \"%s\": %s" msgstr "\"%s\" 사용자의 \"%s\" LDAP 서버 로그인 실패: %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 " @@ -16201,14 +16856,14 @@ 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 " @@ -16217,115 +16872,115 @@ msgstr "" "\"%s\" 사용자를 위한 인증서 유효성 검사(clientcert=verify-full)를 실패 함: " "DN 같지 않음" -#: libpq/auth.c:2752 +#: libpq/auth.c:2758 #, c-format msgid "" "certificate validation (clientcert=verify-full) failed for user \"%s\": CN " "mismatch" msgstr "\"%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 "\"%s\" RADIUS 서버 이름을 주소로 바꿀 수 없음: %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" # translator: %s is IPv4, IPv6, or Unix -#: libpq/auth.c:3055 +#: libpq/auth.c:3061 #, c-format msgid "could not create RADIUS socket: %m" msgstr "RADIUS 소켓을 생성할 수 없습니다: %m" # translator: %s is IPv4, IPv6, or Unix -#: 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 "%s 에서 RADIUS 응답 대기 시간 초과" # translator: %s is IPv4, IPv6, or Unix -#: 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 "%s에서 RADIUS 응답이 바르지 않은 포트로부터 보내졌음: %d" -#: libpq/auth.c:3180 +#: libpq/auth.c:3186 #, c-format msgid "RADIUS response from %s too short: %d" msgstr "%s에서 RADIUS 응답이 너무 짧음: %d" -#: libpq/auth.c:3187 +#: libpq/auth.c:3193 #, c-format msgid "RADIUS response from %s has corrupt length: %d (actual length %d)" msgstr "%s에서 RADIUS 응답 길이가 이상함: %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 "%s에서 RADIUS 응답이 요청과 다름: %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 "%s에서 RADIUS 응답의 MD5 값이 이상함" -#: libpq/auth.c:3248 +#: libpq/auth.c:3256 #, c-format msgid "RADIUS response from %s has invalid code (%d) for user \"%s\"" msgstr "%s에서 RADIUS 응답이 바르지 않은 값임 (%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" @@ -16335,7 +16990,7 @@ msgstr "유효하지 않은 대형 개체 설명: %d" 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번 대형 개체 기술자가 쓰기 모드로 열려있지 않습니다" @@ -16350,32 +17005,32 @@ msgstr "%d번 대형 개체 기술자에 대한 lo_lseek 반환값이 범위를 msgid "lo_tell result out of range for large-object descriptor %d" msgstr "%d번 대형 개체 기술자에 대한 lo_tell 반환값이 범위를 벗어남" -#: 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 "요청한 길이는 음수일 수 없음" @@ -16416,58 +17071,53 @@ msgstr "" "(0600) 또는 더 작게 설정하고, root가 소유주라면 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" @@ -16475,102 +17125,107 @@ 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 cipher 목록을 설정할 수 없음 (유효한 cipher가 없음)" + +#: libpq/be-secure-openssl.c:310 #, c-format -msgid "could not set the cipher list (no valid ciphers available)" -msgstr "cipher 목록을 설정할 수 없음 (유요한 cipher가 없음)" +msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" +msgstr "TLSv1.3 cipher 목록을 설정할 수 없음 (유효한 cipher가 없음)" -#: libpq/be-secure-openssl.c:327 +#: libpq/be-secure-openssl.c:331 #, c-format msgid "could not load root certificate file \"%s\": %s" msgstr "root 인증서 파일 \"%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 "\"%s\" SSL 인증서 회수 목록 파일을 불러들일 수 없습니다: %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 "\"%s\" SSL 인증서 회수 목록 디렉터리를 불러들일 수 없습니다: %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" +"could not load SSL certificate revocation list file \"%s\" or directory \"%s" +"\": %s" msgstr "" "\"%s\" SSL 인증서 회수 목록 파일이나 \"%s\" 디렉터리를 불러들일 수 없습니다: " "%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 " @@ -16579,392 +17234,408 @@ msgstr "" "이런 경우는 클라이언트가 %s부터 %s까지 SSL 프로토콜 버전을 지원하지 않는 경우" "에 발생하기도 합니다." -#: 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 "수신된 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 인증서의 일반 이름에 포함된 null이 있음" -#: 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 "\"%s\" DH 매개 변수 파일을 열 수 없습니다: %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 매개 변수값: p는 prime 아님" -#: 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 매개 변수값: 타당한 생성자도 아니고, 안전한 prime도 아님" -#: 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 "" -"데이터 인증 실패 (검증 안됨): subject \"%s\", serial number %s, issuer " -"\"%s\"." +"데이터 인증 실패 (검증 안됨): subject \"%s\", serial number %s, issuer \"%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: 알 수 없는 curve 이름: %s" +msgid "could not set group names specified in ssl_groups: %s" +msgstr "ssl_groups 설정에서 그룹 이름을 세팅할 수 없습니다: %s" -#: libpq/be-secure-openssl.c:1433 +#: libpq/be-secure-openssl.c:1441 +msgid "No valid groups found" +msgstr "올바른 그룹을 못 찾음" + +#: 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 "ASN1_OBJECT 객체용 NID 구할 수 없음" -#: 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 "ASN1_OBJECT 구조체에서 %d NID를 변환할 수 없음" -#: 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 "" +"다음 버전 PostgreSQL에서는 MD5 비밀번호를 더 이상 지원하지 않을 예정입니다." + +#: 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 "SSL 기능이 꺼져있어 hostssl 설정을 사용할 수 없습니다" -#: libpq/hba.c:1381 +#: libpq/hba.c:1387 #, c-format msgid "Set \"ssl = on\" in postgresql.conf." msgstr "postgresql.conf 파일에 \"ssl = on\" 설정을 하세요." -#: libpq/hba.c:1389 +#: libpq/hba.c:1395 #, c-format msgid "hostssl record cannot match because SSL is not supported by this build" msgstr "" "이 서버는 ssl 접속 기능을 지원하지 않아 hostssl 인증을 지원하지 않습니다." -#: libpq/hba.c:1401 +#: libpq/hba.c:1407 #, c-format msgid "" "hostgssenc record cannot match because GSSAPI is not supported by this build" msgstr "" "이 서버는 GSSAPI 접속 기능을 지원하지 않아 hostgssenc 레코드가 적당하지 않음" -#: 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 "\"%s\" 형태는 잘못된 IP 주소 형태입니다: %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 "\"%s\" 주소에 잘못된 CIDR 마스크가 있음" -#: 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 "simple bind와 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" +"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 " @@ -16972,217 +17643,224 @@ msgid "" msgstr "" "RADIUS 비밀번호 개수(%d)는 하나이거나, 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)는 하나이거나, 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)는 하나이거나, 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 "" "\"cert\" 인증을 사용하는 경우 clientcert 값은 \"verify-full\" 만 허용함" -#: 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 "\"%s\" LDAP URL을 분석할 수 없음: %s" -#: libpq/hba.c:2180 +#: libpq/hba.c:2219 #, c-format msgid "unsupported LDAP URL scheme: %s" msgstr "지원하지 않는 LDAP URL 스킴: %s" -#: libpq/hba.c:2204 +#: libpq/hba.c:2243 #, c-format msgid "LDAP URLs not supported on this platform" msgstr "이 플랫폼에서는 LDAP URL 기능을 지원하지 않음." -#: 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\"" # translator: %s is IPv4, IPv6, or Unix -#: 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\"의 backreference에서 요청된 하위 식이 없음" -#: 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 "소켓을 nonblocking 모드로 지정할 수 없음: %m" -#: libpq/pqcomm.c:456 +#: libpq/pqcomm.c:457 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "\"%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 "유닉스" -#: 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 " @@ -17192,89 +17870,89 @@ msgstr "" "를 기다렸다가 다시 시도해보십시오." #. 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" # translator: %s is IPv4, IPv6, or Unix -#: libpq/pqcomm.c:658 +#: libpq/pqcomm.c:659 #, c-format msgid "listening on Unix socket \"%s\"" msgstr "\"%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 idle time 지정하는 것은 지원하지 않음" -#: 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) 지원하지 않음" @@ -17285,7 +17963,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" @@ -17303,12 +17981,12 @@ msgstr "메시지 포맷이 유효하지 않습니다." # # search5 끝 # # advance 부분 -#: main/main.c:236 +#: main/main.c:298 #, c-format msgid "%s: WSAStartup failed: %d\n" msgstr "%s: WSAStartup 작업 실패: %d\n" -#: main/main.c:324 +#: main/main.c:386 #, c-format msgid "" "%s is the PostgreSQL server.\n" @@ -17317,7 +17995,7 @@ msgstr "" "%s 프로그램은 PostgreSQL 서버입니다.\n" "\n" -#: main/main.c:325 +#: main/main.c:387 #, c-format msgid "" "Usage:\n" @@ -17328,107 +18006,107 @@ msgstr "" " %s [옵션]...\n" "\n" -#: main/main.c:326 +#: main/main.c:388 #, c-format msgid "Options:\n" msgstr "옵션들:\n" -#: main/main.c:327 +#: main/main.c:389 #, c-format msgid " -B NBUFFERS number of shared buffers\n" msgstr " -B NBUFFERS 공유 버퍼 개수\n" -#: main/main.c:328 +#: main/main.c:390 #, c-format msgid " -c NAME=VALUE set run-time parameter\n" msgstr " -c NAME=VALUE 실시간 매개 변수 지정\n" -#: main/main.c:329 +#: 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:330 +#: main/main.c:392 #, c-format msgid " -d 1-5 debugging level\n" msgstr " -d 1-5 디버깅 수준\n" -#: main/main.c:331 +#: main/main.c:393 #, c-format msgid " -D DATADIR database directory\n" msgstr " -D DATADIR 데이터 디렉터리\n" -#: main/main.c:332 +#: main/main.c:394 #, c-format msgid " -e use European date input format (DMY)\n" msgstr " -e 날짜 입력 양식이 유럽형(DMY)을 사용함\n" -#: main/main.c:333 +#: main/main.c:395 #, c-format msgid " -F turn fsync off\n" msgstr " -F fsync 기능 끔\n" -#: main/main.c:334 +#: 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:335 +#: main/main.c:397 #, c-format msgid " -i enable TCP/IP connections (deprecated)\n" msgstr " -i TCP/IP 연결 사용함 (옛 버전 호환용)\n" -#: main/main.c:336 +#: main/main.c:398 #, c-format msgid " -k DIRECTORY Unix-domain socket location\n" msgstr " -k DIRECTORY 유닉스 도메인 소켓 위치\n" -#: main/main.c:338 +#: main/main.c:400 #, c-format msgid " -l enable SSL connections\n" msgstr " -l SSL 연결 기능 사용함\n" -#: main/main.c:340 +#: main/main.c:402 #, c-format msgid " -N MAX-CONNECT maximum number of allowed connections\n" msgstr " -N MAX-CONNECT 최대 동시 연결 개수\n" -#: main/main.c:341 +#: main/main.c:403 #, c-format msgid " -p PORT port number to listen on\n" msgstr " -p PORT 서버 포트 번호\n" -#: main/main.c:342 +#: main/main.c:404 #, c-format msgid " -s show statistics after each query\n" msgstr " -s 각 쿼리 뒤에 통계정보를 보여줌\n" -#: main/main.c:343 +#: main/main.c:405 #, c-format msgid " -S WORK-MEM set amount of memory for sorts (in kB)\n" msgstr " -S WORK-MEM 정렬작업에 사용할 메모리 크기(kb 단위)를 지정\n" -#: main/main.c:344 +#: main/main.c:406 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version 버전 정보 보여주고 마침\n" -#: main/main.c:345 +#: main/main.c:407 #, c-format msgid " --NAME=VALUE set run-time parameter\n" msgstr " --NAME=VALUE 실시간 매개 변수 지정\n" -#: main/main.c:346 +#: main/main.c:408 #, c-format msgid " --describe-config describe configuration parameters, then exit\n" msgstr " --describe-config 서버 환경 설정값에 대한 설명을 보여주고 마침\n" -#: main/main.c:347 +#: main/main.c:409 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 보여주고 마침\n" -#: main/main.c:349 +#: main/main.c:411 #, c-format msgid "" "\n" @@ -17437,27 +18115,27 @@ msgstr "" "\n" "개발자 옵션들:\n" -#: main/main.c:350 +#: 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:351 +#: main/main.c:413 #, c-format msgid " -O allow system table structure changes\n" msgstr " -O 시스템 테이블의 구조를 바꿀 수 있도록 함\n" -#: main/main.c:352 +#: main/main.c:414 #, c-format msgid " -P disable system indexes\n" msgstr " -P 시스템 인덱스들을 사용하지 않음\n" -#: main/main.c:353 +#: 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:354 +#: main/main.c:416 #, c-format msgid "" " -T send SIGABRT to all backend processes if one dies\n" @@ -17465,13 +18143,13 @@ msgstr "" " -T 하나의 하위 서버 프로세스가 비정상으로 마치며 모든\n" " 다른 백엔드 프로세스에게 SIGABRT 신호를 보냄\n" -#: main/main.c:355 +#: main/main.c:417 #, c-format msgid " -W NUM wait NUM seconds to allow attach from a debugger\n" msgstr "" " -W NUM 디버그 작업을 위해 지정한 숫자의 초만큼 기다린다\n" -#: main/main.c:357 +#: main/main.c:419 #, c-format msgid "" "\n" @@ -17480,28 +18158,28 @@ msgstr "" "\n" "단일사용자 모드에서 사용할 수 있는 옵션들:\n" -#: main/main.c:358 +#: main/main.c:420 #, c-format msgid "" " --single selects single-user mode (must be first argument)\n" msgstr " --single 단일 사용자 모드 선택 (인자의 첫번째로 와야함)\n" -#: main/main.c:359 +#: main/main.c:421 #, c-format msgid " DBNAME database name (defaults to user name)\n" msgstr " DBNAME 데이터베이스 이름 (초기값: 사용자이름)\n" -#: main/main.c:360 +#: main/main.c:422 #, c-format msgid " -d 0-5 override debugging level\n" msgstr " -d 0-5 디버깅 수준\n" -#: main/main.c:361 +#: main/main.c:423 #, c-format msgid " -E echo statement before execution\n" msgstr " -E 실행하기 전에 작업명령을 출력함\n" -#: main/main.c:362 +#: main/main.c:424 #, c-format msgid "" " -j do not use newline as interactive query delimiter\n" @@ -17509,14 +18187,14 @@ msgstr "" " -j 대화형 쿼리의 명령 실행 구분 문자로 줄바꿈문자를 쓰지 않" "음\n" -#: main/main.c:363 main/main.c:369 +#: 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 쪽으로 보내는 내용을 FILENAME 파일로 저장" "함\n" -#: main/main.c:365 +#: main/main.c:427 #, c-format msgid "" "\n" @@ -17525,25 +18203,25 @@ msgstr "" "\n" "부트스트랩 모드에서 사용할 수 있는 옵션들:\n" -#: main/main.c:366 +#: main/main.c:428 #, c-format msgid "" " --boot selects bootstrapping mode (must be first argument)\n" msgstr " --boot 부트스트랩 모드로 실행 (첫번째 인자로 와야함)\n" -#: main/main.c:367 +#: main/main.c:429 #, c-format msgid " --check selects check mode (must be first argument)\n" msgstr " --check 체크 모드 선택 (첫번째 인자로 와야함)\n" -#: main/main.c:368 +#: main/main.c:430 #, c-format msgid "" " DBNAME database name (mandatory argument in bootstrapping " "mode)\n" msgstr " DBNAME 데이터베이스 이름 (부트스트랩 모드에서 필수)\n" -#: main/main.c:371 +#: main/main.c:433 #, c-format msgid "" "\n" @@ -17560,12 +18238,12 @@ msgstr "" "\n" "문제점 보고 주소: <%s>\n" -#: main/main.c:375 +#: main/main.c:437 #, c-format msgid "%s home page: <%s>\n" msgstr "%s 홈페이지: <%s>\n" -#: main/main.c:386 +#: main/main.c:448 #, c-format msgid "" "\"root\" execution of the PostgreSQL server is not permitted.\n" @@ -17578,12 +18256,12 @@ msgstr "" "반드시 일반 사용자 ID(시스템 관리자 권한이 없는 ID)로 서버를 실행하십시오.\n" "Server를 어떻게 안전하게 기동하는가 하는 것은 문서를 참조하시기 바랍니다.\n" -#: main/main.c:403 +#: main/main.c:465 #, c-format msgid "%s: real and effective user IDs must match\n" msgstr "%s: real 또는 effective user ID 들은 반드시 일치되어야 한다.\n" -#: main/main.c:410 +#: main/main.c:472 #, c-format msgid "" "Execution of PostgreSQL by a user with administrative permissions is not\n" @@ -17607,15 +18285,15 @@ msgstr "\"%s\" 이름의 확장가능한 노드 형이 이미 있습니다" msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "\"%s\" ExtensibleNodeMethods가 등록되어 있지 않음" -#: 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:2120 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 에 대해서는 배열 자료형을 사용할 수 없습니다" @@ -17630,7 +18308,7 @@ 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 " @@ -17639,14 +18317,14 @@ msgstr "" "FULL JOIN 구문은 머지 조인이나, 해시 조인이 가능한 상황에서만 사용할 수 있습" "니다" -#: optimizer/plan/createplan.c:7175 parser/parse_merge.c:203 -#: rewrite/rewriteHandler.c:1702 +#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 +#: rewrite/rewriteHandler.c:1689 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "\"%s\" 릴레이션에서 MERGE 명령을 실행할 수 없음" #. 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 "" @@ -17654,67 +18332,78 @@ msgstr "" "다" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1380 parser/analyze.c:1771 parser/analyze.c:2029 -#: parser/analyze.c:3247 +#: optimizer/plan/planner.c:1495 parser/analyze.c:1815 parser/analyze.c:2074 +#: parser/analyze.c:3395 #, c-format msgid "%s is not allowed with UNION/INTERSECT/EXCEPT" msgstr "%s 구문은 UNION/INTERSECT/EXCEPT 예약어들과 함께 사용할 수 없습니다." -#: optimizer/plan/planner.c:2121 optimizer/plan/planner.c:4108 +#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 #, c-format msgid "could not implement GROUP BY" msgstr "GROUP BY를 구현할 수 없음" -#: optimizer/plan/planner.c:2122 optimizer/plan/planner.c:4109 -#: optimizer/plan/planner.c:4790 optimizer/prep/prepunion.c:1320 +#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 +#: optimizer/plan/planner.c:4806 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:4789 +#: optimizer/plan/planner.c:4805 #, c-format msgid "could not implement DISTINCT" msgstr "DISTINCT를 구현할 수 없음" -#: optimizer/plan/planner.c:6134 +#: optimizer/plan/planner.c:6267 #, c-format msgid "could not implement window PARTITION BY" msgstr "창 PARTITION BY를 구현할 수 없음" -#: optimizer/plan/planner.c:6135 +#: optimizer/plan/planner.c:6268 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "창 분할 칼럼은 정렬 가능한 데이터 형식이어야 합니다." -#: optimizer/plan/planner.c:6139 +#: optimizer/plan/planner.c:6272 #, c-format msgid "could not implement window ORDER BY" msgstr "창 ORDER BY를 구현할 수 없음" -#: optimizer/plan/planner.c:6140 +#: optimizer/plan/planner.c:6273 #, 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:4963 +#: optimizer/util/appendinfo.c:165 +#, c-format +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:4966 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "\"%s\" SQL 함수를 인라인으로 바꾸는 중" @@ -17724,22 +18413,22 @@ msgstr "\"%s\" SQL 함수를 인라인으로 바꾸는 중" msgid "cannot access temporary or unlogged relations during recovery" msgstr "복구 작업 중에는 임시 테이블이나, 언로그드 테이블을 접근할 수 없음" -#: optimizer/util/plancat.c:768 +#: optimizer/util/plancat.c:770 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "전체 로우 유니크 인덱스 인터페이스 규약은 지원하지 않습니다." -#: optimizer/util/plancat.c:785 +#: optimizer/util/plancat.c:787 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "ON CONFLICT 처리를 위해 관련된 인덱스가 없습니다" -#: optimizer/util/plancat.c:835 +#: optimizer/util/plancat.c:837 #, 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:954 #, c-format msgid "" "there is no unique or exclusion constraint matching the ON CONFLICT " @@ -17747,23 +18436,23 @@ msgid "" msgstr "" "ON CONFLICT 절을 사용하는 경우, unique 나 exclude 제약 조건이 있어야 함" -#: 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 구문에 target columns 보다 더 많은 표현식이 존재하고 있다" -#: parser/analyze.c:1045 +#: parser/analyze.c:1089 #, c-format msgid "INSERT has more target columns than expressions" msgstr "" "INSERT 구문에 target columns 보다 더 많은 표현식(expressions)이 존재하고 있다" -#: parser/analyze.c:1049 +#: parser/analyze.c:1093 #, c-format msgid "" "The insertion source is a row expression containing the same number of " @@ -17772,40 +18461,40 @@ 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:3627 #, 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 는 UNION/INTERSECT/EXCEPT 의 첫번째 SELECT 에만 허용된다" -#: parser/analyze.c:2091 +#: parser/analyze.c:2136 #, c-format msgid "" "UNION/INTERSECT/EXCEPT member statement cannot refer to other relations of " @@ -17814,39 +18503,50 @@ 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 query 는 같은 수의 columns 를 가져야 한다." -#: 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" msgstr[0] "지정된 소스가 %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:3026 parser/analyze.c:3034 #, c-format msgid "cannot specify both %s and %s" msgstr "%s, %s 둘다를 명시할 수 없다" -#: parser/analyze.c:2906 +#: parser/analyze.c:3054 #, c-format msgid "DECLARE CURSOR must not contain data-modifying statements in WITH" msgstr "" @@ -17854,331 +18554,331 @@ msgstr "" "다" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:2914 +#: parser/analyze.c:3062 #, c-format msgid "DECLARE CURSOR WITH HOLD ... %s is not supported" msgstr "DECLARE CURSOR WITH HOLD ... %s 구문은 지원되지 않음" -#: parser/analyze.c:2917 +#: parser/analyze.c:3065 #, 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:3073 #, 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:3084 #, c-format msgid "DECLARE INSENSITIVE CURSOR ... %s is not valid" msgstr "DECLARE INSENSITIVE CURSOR ... %s 구문이 잘못됨" -#: parser/analyze.c:2939 +#: parser/analyze.c:3087 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "민감하지 않은 커서는 READ ONLY여야 합니다." -#: parser/analyze.c:3033 +#: parser/analyze.c:3181 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "" "구체화된 뷰 정의에 사용한 WITH 절 안에는 자료 변경 구문이 없어야 합니다" -#: parser/analyze.c:3043 +#: parser/analyze.c:3191 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "구체화된 뷰는 임시 테이블이나 뷰를 사용할 수 없습니다" -#: parser/analyze.c:3053 +#: parser/analyze.c:3201 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "구체화딘 뷰는 바운드 매개 변수를 이용해서 정의할 수 없습니다" -#: parser/analyze.c:3065 +#: parser/analyze.c:3213 #, c-format msgid "materialized views cannot be unlogged" msgstr "구체화된 뷰는 UNLOGGED 옵션을 사용할 수 없습니다." #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3254 +#: parser/analyze.c:3402 #, 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:3409 #, 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:3416 #, 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:3423 #, 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:3430 #, 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:3437 #, 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:3536 #, c-format msgid "%s must specify unqualified relation names" msgstr "%s 절에는 unqualified 릴레이션 이름을 지정해야 합니다." #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3452 +#: parser/analyze.c:3600 #, 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:3609 #, 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:3618 #, 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:3636 #, 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:3645 #, c-format msgid "%s cannot be applied to a named tuplestore" msgstr "%s 절은 named tuplestore에 적용할 수 없음" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: parser/analyze.c:3517 +#: parser/analyze.c:3665 #, 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:215 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:217 #, c-format msgid "Aggregates with DISTINCT must be able to sort their inputs." msgstr "" "DISTINCT와 함께 작업하는 집계 작업은 그 입력 자료가 정렬될 수 있어야 합니다" -#: parser/parse_agg.c:270 +#: parser/parse_agg.c:275 #, c-format msgid "GROUPING must have fewer than 32 arguments" msgstr "GROUPING 인자로는 32개 이내로 지정해야 합니다" -#: parser/parse_agg.c:373 +#: parser/parse_agg.c:378 msgid "aggregate functions are not allowed in JOIN conditions" msgstr "JOIN 조건문에서는 집계 함수가 허용되지 않습니다" -#: parser/parse_agg.c:375 +#: parser/parse_agg.c:380 msgid "grouping operations are not allowed in JOIN conditions" msgstr "JOIN 조건문에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:385 +#: parser/parse_agg.c:390 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:392 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:397 msgid "aggregate functions are not allowed in functions in FROM" msgstr "FROM 절 내의 함수 표현식 내에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:394 +#: parser/parse_agg.c:399 msgid "grouping operations are not allowed in functions in FROM" msgstr "FROM 절 내의 함수 표현식 내에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:402 +#: parser/parse_agg.c:407 msgid "aggregate functions are not allowed in policy expressions" msgstr "정책 표현식에서는 집계 함수 사용을 허용하지 않습니다" -#: parser/parse_agg.c:404 +#: parser/parse_agg.c:409 msgid "grouping operations are not allowed in policy expressions" msgstr "정책 표현식에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:421 +#: parser/parse_agg.c:426 msgid "aggregate functions are not allowed in window RANGE" msgstr "윈도우 RANGE 안에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:423 +#: parser/parse_agg.c:428 msgid "grouping operations are not allowed in window RANGE" msgstr "윈도우 RANGE 안에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:428 +#: parser/parse_agg.c:433 msgid "aggregate functions are not allowed in window ROWS" msgstr "윈도우 ROWS 안에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:430 +#: parser/parse_agg.c:435 msgid "grouping operations are not allowed in window ROWS" msgstr "윈도우 ROWS 안에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:435 +#: parser/parse_agg.c:440 msgid "aggregate functions are not allowed in window GROUPS" msgstr "윈도우 GROUPS 안에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:437 +#: parser/parse_agg.c:442 msgid "grouping operations are not allowed in window GROUPS" msgstr "윈도우 GROUPS 안에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:450 +#: parser/parse_agg.c:455 msgid "aggregate functions are not allowed in MERGE WHEN conditions" msgstr "MERGE WHEN 조건절에 집계 함수가 허용되지 않습니다" -#: parser/parse_agg.c:452 +#: parser/parse_agg.c:457 msgid "grouping operations are not allowed in MERGE WHEN conditions" msgstr "MERGE WHEN 조건절에 그룹핑 작업이 허용되지 않습니다" -#: parser/parse_agg.c:479 +#: parser/parse_agg.c:484 msgid "aggregate functions are not allowed in check constraints" msgstr "체크 제약 조건에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:481 +#: parser/parse_agg.c:486 msgid "grouping operations are not allowed in check constraints" msgstr "체크 제약 조건에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:488 +#: parser/parse_agg.c:493 msgid "aggregate functions are not allowed in DEFAULT expressions" msgstr "DEFAULT 표현식에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:490 +#: parser/parse_agg.c:495 msgid "grouping operations are not allowed in DEFAULT expressions" msgstr "DEFAULT 표현식에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:495 +#: parser/parse_agg.c:500 msgid "aggregate functions are not allowed in index expressions" msgstr "인덱스 표현식에서는 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:497 +#: parser/parse_agg.c:502 msgid "grouping operations are not allowed in index expressions" msgstr "인덱스 표현식에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:502 +#: parser/parse_agg.c:507 msgid "aggregate functions are not allowed in index predicates" msgstr "집계 함수는 함수 기반 인덱스의 함수로 사용할 수 없습니다" -#: parser/parse_agg.c:504 +#: parser/parse_agg.c:509 msgid "grouping operations are not allowed in index predicates" msgstr "그룹핑 작업은 함수 기반 인덱스의 함수로 사용할 수 없습니다" -#: parser/parse_agg.c:509 +#: parser/parse_agg.c:514 msgid "aggregate functions are not allowed in statistics expressions" msgstr "정책 표현식에서는 집계 함수 사용을 허용하지 않습니다" -#: parser/parse_agg.c:511 +#: parser/parse_agg.c:516 msgid "grouping operations are not allowed in statistics expressions" msgstr "통계 정보 표현식에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:516 +#: parser/parse_agg.c:521 msgid "aggregate functions are not allowed in transform expressions" msgstr "transform 식(expression)에 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:518 +#: parser/parse_agg.c:523 msgid "grouping operations are not allowed in transform expressions" msgstr "transform 식(expression)에 그룹핑 작업를 사용할 수 없습니다" -#: parser/parse_agg.c:523 +#: parser/parse_agg.c:528 msgid "aggregate functions are not allowed in EXECUTE parameters" msgstr "EXECUTE 매개 변수로 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:525 +#: parser/parse_agg.c:530 msgid "grouping operations are not allowed in EXECUTE parameters" msgstr "EXECUTE 매개 변수로 그룹핑 작업을 사용할 수 없습니다" -#: parser/parse_agg.c:530 +#: parser/parse_agg.c:535 msgid "aggregate functions are not allowed in trigger WHEN conditions" msgstr "트리거의 WHEN 조건절에 집계 함수가 허용되지 않습니다" -#: parser/parse_agg.c:532 +#: parser/parse_agg.c:537 msgid "grouping operations are not allowed in trigger WHEN conditions" msgstr "트리거의 WHEN 조건절에 그룹핑 작업이 허용되지 않습니다" -#: parser/parse_agg.c:537 +#: parser/parse_agg.c:542 msgid "aggregate functions are not allowed in partition bound" msgstr "파티션 범위 표현식에는 집계 함수가 허용되지 않습니다" -#: parser/parse_agg.c:539 +#: parser/parse_agg.c:544 msgid "grouping operations are not allowed in partition bound" msgstr "파티션 범위 표현식에는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:544 +#: parser/parse_agg.c:549 msgid "aggregate functions are not allowed in partition key expressions" msgstr "파티션 키 표현식에서는 집계 함수가 허용되지 않습니다" -#: parser/parse_agg.c:546 +#: parser/parse_agg.c:551 msgid "grouping operations are not allowed in partition key expressions" msgstr "파티션 키 표현식에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:552 +#: parser/parse_agg.c:557 msgid "aggregate functions are not allowed in column generation expressions" msgstr "미리 계산된 칼럼 표현식에서는 집계 함수 사용을 허용하지 않습니다" -#: parser/parse_agg.c:554 +#: parser/parse_agg.c:559 msgid "grouping operations are not allowed in column generation expressions" msgstr "미리 계산된 칼럼 표현식에서는 그룹핑 연산이 허용되지 않습니다" -#: parser/parse_agg.c:560 +#: parser/parse_agg.c:565 msgid "aggregate functions are not allowed in CALL arguments" msgstr "CALL 매개 변수로 집계 함수를 사용할 수 없습니다" -#: parser/parse_agg.c:562 +#: parser/parse_agg.c:567 msgid "grouping operations are not allowed in CALL arguments" msgstr "CALL 매개 변수로 그룹핑 연산을 사용할 수 없습니다" -#: parser/parse_agg.c:568 +#: parser/parse_agg.c:573 msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" msgstr "COPY FROM WHERE 조건문에서는 집계 함수가 허용되지 않습니다" -#: parser/parse_agg.c:570 +#: parser/parse_agg.c:575 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:602 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:605 #, c-format msgid "grouping operations are not allowed in %s" msgstr "그룹핑 작업은 %s 절에서 사용할 수 없습니다." -#: parser/parse_agg.c:701 +#: parser/parse_agg.c:706 #, c-format msgid "" "outer-level aggregate cannot contain a lower-level variable in its direct " @@ -18186,12 +18886,12 @@ msgid "" msgstr "" "출력 수준 집계는 그 직접적인 인자 안에 저수준 변수를 포함할 수 없습니다." -#: parser/parse_agg.c:779 +#: parser/parse_agg.c:784 #, 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:785 parser/parse_expr.c:1762 parser/parse_expr.c:2255 #: parser/parse_func.c:885 #, c-format msgid "" @@ -18199,106 +18899,106 @@ msgid "" "item." msgstr "집합 반환 함수를 LATERAL FROM 쪽으로 옮겨서 구현할 수도 있습니다." -#: parser/parse_agg.c:785 +#: parser/parse_agg.c:790 #, c-format msgid "aggregate function calls cannot contain window function calls" msgstr "집계 함수 호출은 윈도우 함수 호출을 포함할 수 없음" -#: parser/parse_agg.c:864 +#: parser/parse_agg.c:869 msgid "window functions are not allowed in JOIN conditions" msgstr "윈도우 함수는 JOIN 조건에 사용할 수 없음" -#: parser/parse_agg.c:871 +#: parser/parse_agg.c:876 msgid "window functions are not allowed in functions in FROM" msgstr "윈도우 함수는 FROM 절에 있는 함수로 사용할 수 없음" -#: parser/parse_agg.c:877 +#: parser/parse_agg.c:882 msgid "window functions are not allowed in policy expressions" msgstr "윈도우 함수는 정책 식에 사용할 수 없음" -#: parser/parse_agg.c:890 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in window definitions" msgstr "윈도우 함수는 윈도우 함수 정의에 사용할 수 없음" -#: parser/parse_agg.c:901 +#: parser/parse_agg.c:906 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "윈도우 함수는 MERGE WHEN 조건절에서 사용할 수 없음" -#: parser/parse_agg.c:926 +#: parser/parse_agg.c:931 msgid "window functions are not allowed in check constraints" msgstr "윈도우 함수는 check 제약조건에 사용할 수 없음" -#: parser/parse_agg.c:930 +#: parser/parse_agg.c:935 msgid "window functions are not allowed in DEFAULT expressions" msgstr "윈도우 함수는 DEFAULT 식에서 사용할 수 없음" -#: parser/parse_agg.c:933 +#: parser/parse_agg.c:938 msgid "window functions are not allowed in index expressions" msgstr "윈도우 함수는 인덱스 식에서 사용할 수 없음" -#: parser/parse_agg.c:936 +#: parser/parse_agg.c:941 msgid "window functions are not allowed in statistics expressions" msgstr "윈도우 함수는 통계 정보식에 사용할 수 없음" -#: parser/parse_agg.c:939 +#: parser/parse_agg.c:944 msgid "window functions are not allowed in index predicates" msgstr "윈도우 함수는 함수 기반 인덱스에서 사용할 수 없음" -#: parser/parse_agg.c:942 +#: parser/parse_agg.c:947 msgid "window functions are not allowed in transform expressions" msgstr "윈도우 함수는 transform 식에서 사용할 수 없음" -#: parser/parse_agg.c:945 +#: parser/parse_agg.c:950 msgid "window functions are not allowed in EXECUTE parameters" msgstr "윈도우 함수는 EXECUTE 매개 변수 설정 값으로 사용할 수 없음" -#: parser/parse_agg.c:948 +#: parser/parse_agg.c:953 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "윈도우 함수는 트리거의 WHEN 조건절에서 사용할 수 없음" -#: parser/parse_agg.c:951 +#: parser/parse_agg.c:956 msgid "window functions are not allowed in partition bound" msgstr "윈도우 함수는 파티션 범위 표현식에서 사용할 수 없음" -#: parser/parse_agg.c:954 +#: parser/parse_agg.c:959 msgid "window functions are not allowed in partition key expressions" msgstr "윈도우 함수는 파티션 키 표현식에서 사용할 수 없음" -#: parser/parse_agg.c:957 +#: parser/parse_agg.c:962 msgid "window functions are not allowed in CALL arguments" msgstr "윈도우 함수는 CALL 매개 변수 설정 값으로 사용할 수 없음" -#: parser/parse_agg.c:960 +#: parser/parse_agg.c:965 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "윈도우 함수는 COPY FROM WHERE 조건에 사용할 수 없음" -#: parser/parse_agg.c:963 +#: parser/parse_agg.c:968 msgid "window functions are not allowed in column generation expressions" -msgstr "윈도우 함수는 미리 계산된 칼럼 생성 표현식에 사용할 수 없음" +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:991 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:1025 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "\"%s\" 윈도우 함수가 없음" -#: parser/parse_agg.c:1108 +#: parser/parse_agg.c:1115 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "너무 많은 그룹핑 세트가 있습니다 (최대값 4096)" -#: parser/parse_agg.c:1248 +#: parser/parse_agg.c:1276 #, 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:1499 #, c-format msgid "" "column \"%s.%s\" must appear in the GROUP BY clause or be used in an " @@ -18307,60 +19007,60 @@ msgstr "" "column \"%s.%s\" 는 반드시 GROUP BY 절내에 있어야 하던지 또는 집계 함수 내에" "서 사용되어져야 한다" -#: parser/parse_agg.c:1444 +#: parser/parse_agg.c:1502 #, 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:1507 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "" "subquery 가 outer query 에서 그룹화 되지 않은 열인 \"%s.%s\"를 사용합니다" -#: parser/parse_agg.c:1613 +#: parser/parse_agg.c:1672 #, c-format msgid "" "arguments to GROUPING must be grouping expressions of the associated query " "level" msgstr "GROUPING의 인자는 그 관련 쿼리 수준의 그룹핑 표현식이어야 합니다." -#: 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 " @@ -18368,78 +19068,78 @@ msgid "" msgstr "" "ROWS FROM() 안에 UNNEST() 호출을 분리하고, 각각 칼럼 정의 목록을 추가하세요." -#: 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\" 칼럼은 유일성을 가지지 못합니다(not unique)" -#: parser/parse_clause.c:865 +#: parser/parse_clause.c:863 #, c-format msgid "namespace name \"%s\" is not unique" msgstr "\"%s\" 네임스페이스는 유일성을 가지지 못합니다(not unique)" -#: 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" msgstr[0] "\"%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 "USING 절 내에 열 이름 \"%s\" 가 한번 이상 사용되었습니다" -#: 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 "left table 내에 common column 이름 \"%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 "USING 조건절에서 지정한 \"%s\" 칼럼이 왼쪽 테이블에 없음" -#: 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 "common column name \"%s\"가 right table 에 한번 이상 사용되었다" -#: 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 "USING 조건절에서 지정한 \"%s\" 칼럼이 오른쪽 테이블에 없음" @@ -18591,7 +19291,7 @@ msgid "" msgstr "" "순서 지정 연산자는 btree 연산자 패밀리의 \"<\" or \">\" 멤버여야 합니다." -#: 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" @@ -18599,7 +19299,7 @@ msgstr "" "PRECEDING/FOLLOWING 옵셋과 함께 쓰는 RANGE 구문은 칼럼의 %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 " @@ -18608,12 +19308,12 @@ msgstr "" "PRECEDING/FOLLOWING 옵셋과 함께 쓰는 RANGE 구문은 %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 " @@ -18622,150 +19322,150 @@ msgstr "" "PRECEDING/FOLLOWING 옵셋과 함께 쓰는 RANGE 구문이 %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:2154 parser/parse_expr.c:2774 parser/parse_expr.c:3425 +#: parser/parse_expr.c:3654 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 의 인자는 set(집합) 을 return할수 없습니다." #. 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 이름으로 선언된 인자가 array가 아니고, %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 로 선언된 인자가 range 자료형이 아니고, %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 로 선언된 인자가 multirange 자료형이 아니고, %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 "" "%s 자료형이 anycompatiblerange인데, 해당 %s anycompatible 자료형을 찾을 수 없" "음" -#: parser/parse_coerce.c:2608 +#: parser/parse_coerce.c:2643 #, c-format msgid "anycompatiblemultirange type %s does not match anycompatible type %s" msgstr "" "%s 자료형이 anycompatiblemultirange 형인데, 해당 %s anycompatible 자료형을 찾" "을 수 없음" -#: 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 " @@ -18774,7 +19474,7 @@ 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 " @@ -18783,7 +19483,7 @@ 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, " @@ -18792,7 +19492,7 @@ msgstr "" "%s 형 반환 자료형은 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, " @@ -18803,7 +19503,7 @@ msgstr "" "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 "" "internal 형의 결과는 적어도 하나 이상의 internal 형의 입력 자료형이 필요합니" @@ -18858,23 +19558,23 @@ msgstr "\"%s\" 쿼리에 대한 재귀 참조가 INTERSECT 내에 표시되지 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 "\"%s\" WITH 쿼리 이름이 여러 번 지정됨" -#: 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 " @@ -18883,12 +19583,12 @@ 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 " @@ -18897,42 +19597,42 @@ 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\" search용 칼럼이 WITH 쿼리 칼럼 목록에 없음" -#: parser/parse_cte.c:478 +#: parser/parse_cte.c:479 #, c-format msgid "search column \"%s\" specified more than once" msgstr "\"%s\" search용 칼럼을 하나 이상 지정했음" -#: 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" @@ -18940,154 +19640,154 @@ msgstr "" "\"%s\" 이름의 search sequence 칼럼 이름은 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\" cycle용 칼럼이 WITH 쿼리 칼럼 목록에 없습니다" -#: parser/parse_cte.c:511 +#: parser/parse_cte.c:512 #, c-format msgid "cycle column \"%s\" specified more than once" msgstr "\"%s\" cycle용 칼럼을 하나 이상 지정했음" -#: 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\" cycle mark 칼럼 이름이 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\" cycle path 칼럼 이름이 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 "cycle mark 칼럼 이름과 cycle path 칼럼 이름이 같습니다." -#: 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 "search sequence 칼럼 이름과 cycle mark 칼럼 이름이 같습니다." -#: 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 "search sequence 칼럼 이름과 cycle path 칼럼 이름이 같습니다." -#: 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 "" "\"%s\" WITH 쿼리에는 %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:311 #, 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: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 #, c-format msgid "column %s.%s does not exist" msgstr "%s.%s 칼럼 없음" -#: parser/parse_expr.c:418 +#: parser/parse_expr.c:416 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "\"%s\" 칼럼은 %s 자료형을 찾을 수 없음" -#: parser/parse_expr.c:424 +#: parser/parse_expr.c:422 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "레코드 데이터 형식에서 \"%s\" 칼럼을 식별할 수 없음" -#: parser/parse_expr.c:430 +#: parser/parse_expr.c:428 #, c-format msgid "column notation .%s applied to type %s, which is not a composite type" msgstr "" ".%s 표현이 %s 자료형 사용되었는데, 이는 복소수형 (complex type)이 아닙니다" -#: parser/parse_expr.c:461 parser/parse_target.c:732 +#: parser/parse_expr.c:459 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:582 msgid "cannot use column reference in DEFAULT expression" msgstr "DEFAULT 표현식에서는 열 reference를 사용할 수 없음" -#: parser/parse_expr.c:587 +#: parser/parse_expr.c:585 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:844 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:900 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:1101 parser/parse_expr.c:3085 #, 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:1109 parser/parse_expr.c:3072 +#: parser/parse_expr.c:1107 parser/parse_expr.c:3092 #, c-format msgid "%s must not return a set" msgstr "%s에서는 집합을 반환할 수 없습니다." @@ -19096,8 +19796,7 @@ msgstr "%s에서는 집합을 반환할 수 없습니다." #, c-format msgid "" "MERGE_ACTION() can only be used in the RETURNING list of a MERGE command" -msgstr "" -"MERGE_ACTION()은 MERGE 명령의 RETURNING 목록 안에서만 사용될 수 있음" +msgstr "MERGE_ACTION()은 MERGE 명령의 RETURNING 목록 안에서만 사용될 수 있음" #: parser/parse_expr.c:1519 parser/parse_expr.c:1551 #, c-format @@ -19113,7 +19812,7 @@ msgstr "" "다중 칼럼 UPDATE 요소를 위한 소스는 서브셀렉트나 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:1760 parser/parse_expr.c:2253 parser/parse_func.c:2679 #, c-format msgid "set-returning functions are not allowed in %s" msgstr "%s 안에서는 집합 반환 함수를 사용할 수 없음" @@ -19168,9 +19867,9 @@ msgstr "COPY FROM WHERE 조건절에서는 서브쿼리를 사용할 수 없습 #: parser/parse_expr.c:1861 msgid "cannot use subquery in column generation expression" -msgstr "미리 계산된 칼럼 생성 표현식에 서브쿼리를 사용할 수 없습니다" +msgstr "미리 계산된 칼럼 생성식에 서브쿼리를 사용할 수 없습니다" -#: parser/parse_expr.c:1914 parser/parse_expr.c:3764 +#: parser/parse_expr.c:1914 parser/parse_expr.c:3784 #, c-format msgid "subquery must return only one column" msgstr "subquery는 오로지 한개의 열만을 돌려 주어야 합니다." @@ -19185,210 +19884,210 @@ msgstr "subquery 에가 너무 많은 칼럼을 가집니다" msgid "subquery has too few columns" msgstr "subquery 에 명시된 열 수가 너무 적다" -#: parser/parse_expr.c:2086 +#: parser/parse_expr.c:2094 #, c-format msgid "cannot determine type of empty array" msgstr "빈 배열의 자료형을 확인할 수 없음" -#: parser/parse_expr.c:2087 +#: parser/parse_expr.c:2095 #, 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:2109 #, c-format msgid "could not find element type for data type %s" msgstr "%s 자료형의 요소 자료형을 찾을 수 없음" -#: parser/parse_expr.c:2184 +#: parser/parse_expr.c:2194 #, c-format msgid "ROW expressions can have at most %d entries" msgstr "ROW 표현식은 최대 %d 개의 항목을 지정할 수 있습니다" -#: parser/parse_expr.c:2389 +#: parser/parse_expr.c:2399 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "이름이 지정되지 않은 XML 속성 값은 열 참조여야 함" -#: parser/parse_expr.c:2390 +#: parser/parse_expr.c:2400 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "이름이 지정되지 않은 XML 요소 값은 열 참조여야 함" -#: parser/parse_expr.c:2405 +#: parser/parse_expr.c:2415 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "\"%s\" XML 속성 이름이 여러 번 표시됨" -#: parser/parse_expr.c:2513 +#: parser/parse_expr.c:2523 #, 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:2847 parser/parse_expr.c:3043 #, c-format msgid "unequal number of entries in row expressions" msgstr "행 표현식에서 항목 수가 일치하지 않습니다" -#: parser/parse_expr.c:2837 +#: parser/parse_expr.c:2857 #, c-format msgid "cannot compare rows of zero length" msgstr "길이가 영(0)인 행들은 비교할 수 없습니다" -#: parser/parse_expr.c:2862 +#: parser/parse_expr.c:2882 #, c-format msgid "row comparison operator must yield type boolean, not type %s" msgstr "" "행 비교 연산자는 불리언형을 리턴해야 합니다. %s 자료형을 사용할 수 없습니다" -#: parser/parse_expr.c:2869 +#: parser/parse_expr.c:2889 #, c-format msgid "row comparison operator must not return a set" msgstr "행 비교 연산자는 set을 리턴할 수 없습니다" -#: parser/parse_expr.c:2928 parser/parse_expr.c:2969 +#: parser/parse_expr.c:2948 parser/parse_expr.c:2989 #, c-format msgid "could not determine interpretation of row comparison operator %s" msgstr "%s 행 비교 연산자의 구문을 분석할 수 없습니다" -#: parser/parse_expr.c:2930 +#: parser/parse_expr.c:2950 #, c-format msgid "" "Row comparison operators must be associated with btree operator families." msgstr "로우 비교 연산자를 btree 연산자 패밀리와 연결해야 함" -#: parser/parse_expr.c:2971 +#: parser/parse_expr.c:2991 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "여러 가지 등식들이 성립할 수 있는 가능성이 있습니다" -#: parser/parse_expr.c:3306 +#: parser/parse_expr.c:3326 #, 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:3390 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" msgstr "" "FORMAT JSON 절과 관련된 자료형이 문자열이 아닌 자료형인 경우는 사용할 수 없습" "니다." -#: parser/parse_expr.c:3371 +#: parser/parse_expr.c:3391 #, c-format msgid "cannot use non-string types with explicit FORMAT JSON clause" msgstr "" "FORMAT JSON 절과 관련된 자료형이 문자열이 아닌 자료형인 경우는 사용할 수 없습" "니다." -#: parser/parse_expr.c:3460 +#: parser/parse_expr.c:3480 #, c-format msgid "cannot use JSON format with non-string output types" msgstr "비 문자열 출력 형으로 JSON 포멧을 사용할 수 없음" -#: parser/parse_expr.c:3473 +#: parser/parse_expr.c:3493 #, c-format msgid "cannot set JSON encoding for non-bytea output types" msgstr "이진 자료형이 아닌 출력 자료형을 위한 JSON 인코딩을 지정할 수 없음" -#: parser/parse_expr.c:3478 +#: parser/parse_expr.c:3498 #, c-format msgid "unsupported JSON encoding" msgstr "지원하지 않는 JSON 인코딩" -#: parser/parse_expr.c:3479 +#: parser/parse_expr.c:3499 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "UTF8 JSON 인코딩만 지원합니다." -#: parser/parse_expr.c:3516 +#: parser/parse_expr.c:3536 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "SQL/JSON 함수들은 SETOF 반환 자료형을 지원하지 않음" -#: parser/parse_expr.c:3521 +#: parser/parse_expr.c:3541 #, c-format msgid "returning pseudo-types is not supported in SQL/JSON functions" msgstr "SQL/JSON 함수들은 반환 자료형으로 의사 자료형을 지원하지 않음" -#: parser/parse_expr.c:3849 parser/parse_func.c:866 +#: parser/parse_expr.c:3869 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:4092 #, c-format msgid "cannot use JSON FORMAT ENCODING clause for non-bytea input types" msgstr "" "이진 자료형이 아닌 입력 자료형을 위한 JSON FORMAT ENCODING 구문을 사용할 수 " "없음" -#: parser/parse_expr.c:4092 +#: parser/parse_expr.c:4112 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "IS JSON 술어(predicate)에 %s 자료형을 사용할 수 없음" -#: parser/parse_expr.c:4118 parser/parse_expr.c:4239 +#: parser/parse_expr.c:4138 parser/parse_expr.c:4259 #, c-format msgid "cannot use type %s in RETURNING clause of %s" msgstr "%s 자료형은 %s RETURNING 절에서 사용할 수 없음" -#: parser/parse_expr.c:4120 +#: parser/parse_expr.c:4140 #, c-format msgid "Try returning json or jsonb." msgstr "json 또는 jsonb 형을 반환하세요." -#: parser/parse_expr.c:4168 +#: parser/parse_expr.c:4188 #, c-format msgid "cannot use non-string types with WITH UNIQUE KEYS clause" msgstr "문자열이 아닌 자료형은 WITH UNIQUE KEYS 절과 함께 사용할 수 없음" -#: parser/parse_expr.c:4242 +#: parser/parse_expr.c:4262 #, c-format msgid "Try returning a string type or bytea." msgstr "문자열이나 bytea 자료형을 반환하도록 하세요." -#: parser/parse_expr.c:4307 +#: parser/parse_expr.c:4327 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "%s()의 RETURNING 절안에는 FORMAT JSON 옵션을 지정할 수 없음" -#: parser/parse_expr.c:4320 +#: parser/parse_expr.c:4340 #, 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:4334 parser/parse_expr.c:4363 parser/parse_expr.c:4394 -#: parser/parse_expr.c:4420 parser/parse_expr.c:4446 -#: parser/parse_jsontable.c:94 +#: 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 #, 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:4337 parser/parse_expr.c:4366 +#: parser/parse_expr.c:4357 parser/parse_expr.c:4386 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " "allowed in %s for %s." msgstr "" -"%s 옵션(대상: %s)에는 ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, 또는 " -"DEFAULT 표현식만 쓸 수 있음" +"%s 옵션(대상: %s)에는 ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, 또는 DEFAULT " +"표현식만 쓸 수 있음" #. 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:4344 parser/parse_expr.c:4373 parser/parse_expr.c:4402 -#: parser/parse_expr.c:4430 parser/parse_expr.c:4456 +#: 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 #, 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:4347 parser/parse_expr.c:4376 +#: parser/parse_expr.c:4367 parser/parse_expr.c:4396 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -19397,62 +20096,62 @@ msgstr "" "포멧된 칼럼용 %s 옵션에는 ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, 또는 " "DEFAULT 표현식만 쓸 수 있음" -#: parser/parse_expr.c:4395 +#: parser/parse_expr.c:4415 #, c-format msgid "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for %s." -msgstr "%s 옵션 값으로는 ERROR, TRUE, FALSE, 또는 UNKNOWN 만 쓸 수 있음: 대상=%s" +msgstr "" +"%s 옵션 값으로는 ERROR, TRUE, FALSE, 또는 UNKNOWN 만 쓸 수 있음: 대상=%s" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4405 +#: parser/parse_expr.c:4425 #, c-format msgid "" "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." -msgstr "EXISTS 칼럼용 %s 옵션에는 ERROR, TRUE, FALSE, 또는 UNKNOWN 만 쓸 수 있음." +msgstr "" +"EXISTS 칼럼용 %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:4423 parser/parse_expr.c:4449 +#: parser/parse_expr.c:4443 parser/parse_expr.c:4469 #, c-format msgid "Only ERROR, NULL, or DEFAULT expression is allowed in %s for %s." msgstr "%s 옵션 값으로는 ERROR, NULL, 또는 DEFAULT 만 쓸 수 있음: 대상=%s" #. translator: %s is name of a SQL/JSON clause (eg. ON EMPTY) -#: parser/parse_expr.c:4433 parser/parse_expr.c:4459 +#: parser/parse_expr.c:4453 parser/parse_expr.c:4479 #, 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:4489 +#: parser/parse_expr.c:4509 #, c-format msgid "JSON path expression must be of type %s, not of type %s" msgstr "JSON 패스 표현식은 %s 자료형이어야 함(%s 자료형이 아님)" -#: parser/parse_expr.c:4707 +#: parser/parse_expr.c:4727 #, c-format msgid "" "can only specify a constant, non-aggregate function, or operator expression " "for DEFAULT" -msgstr "" -"DEFAULT로는 상수, 비집계 함수, 또는 연산자 표현식만 쓸 수 있음" +msgstr "DEFAULT로는 상수, 비집계 함수, 또는 연산자 표현식만 쓸 수 있음" -#: parser/parse_expr.c:4712 +#: parser/parse_expr.c:4732 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT 표현식에서는 칼럼 참조를 포함할 수 없습니다" -#: parser/parse_expr.c:4717 +#: parser/parse_expr.c:4737 #, c-format msgid "DEFAULT expression must not return a set" msgstr "DEFAULT 표현식에서는 집합을 반환할 수 없습니다." -#: parser/parse_expr.c:4793 parser/parse_expr.c:4802 +#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "%s 자료형을 %s 자료형으로 형변환할 수 없습니다." -#: parser/parse_expr.c:4796 +#: parser/parse_expr.c:4816 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "%s형으로 변환하는 형변환자를 사용해보십시오" @@ -19829,14 +20528,13 @@ 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 "" -"EMPTY [ ARRAY ] 또는 ERROR는 최상위 수준 ON ERROR 절에서만 쓸 수 있음" +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 "JSON_TABLE 칼럼이나 패스 이름이 중복됨: %s" @@ -19932,38 +20630,33 @@ msgstr "op ANY/ALL (array) 는 불리언을 얻기 위한 연산자가 필요합 msgid "op ANY/ALL (array) requires operator not to return a set" msgstr "op ANY/ALL (array) 는 set 을 return 하지 않는 연산자가 요구 됩니다." -#: parser/parse_param.c:221 +#: parser/parse_param.c:222 #, c-format msgid "inconsistent types deduced for parameter $%d" msgstr "inconsistent types deduced for parameter $%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\" 가 명확하지 않습니다 (ambiguous)." -#: parser/parse_relation.c:265 +#: parser/parse_relation.c:273 #, c-format msgid "table reference %u is ambiguous" msgstr "테이블 참조 %u 가 명확하지 않습니다 (ambiguous)." -#: 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 "\"%s\" 테이블을 사용하는 FROM 절에 대한 참조가 잘못 되었습니다." -#: 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 " @@ -19971,42 +20664,42 @@ msgid "" 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 옵션을 사용할 때는 그 조인 형태가 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\" 시스템 칼럼이 없음" -#: 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 "\"%s\"(이)라는 WITH 항목이 있지만 이 쿼리 부분에서 참조할 수 없습니다." -#: 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." @@ -20014,92 +20707,92 @@ 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 "" "칼럼 정의 목록는 오로지 \"record\" 를 리턴하는 함수 내에서만 허용됩니다." -#: parser/parse_relation.c:1857 +#: parser/parse_relation.c:1874 #, c-format msgid "a column definition list is required for functions returning \"record\"" msgstr "칼럼 정의 목록은 \"record\" 를 리턴하는 함수를 필요로 합니다" -#: 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 "" "FROM 절 내의 함수 \"%s\" 에 지원되지 않는 return 자료형 %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 "\"%s\" WITH 쿼리에 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\" alias를 참조해야 할 것 같습니다." -#: 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 " @@ -20108,12 +20801,12 @@ 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 " @@ -20122,48 +20815,48 @@ 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 " @@ -20172,7 +20865,7 @@ 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 " @@ -20181,7 +20874,7 @@ 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 " @@ -20189,12 +20882,12 @@ msgid "" msgstr "" "\"%s\" subscript 자료형은 %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 * 구문은 유효하지 않습니다." @@ -20216,8 +20909,8 @@ msgstr "" msgid "type reference %s converted to %s" msgstr "ype reference %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\" 는 오로지 shell 에만 있습니다. " @@ -20237,77 +20930,91 @@ 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 "임시 시퀀스의 기록된 상태를 지정할 수 없음" -#: parser/parse_utilcmd.c:611 +#: parser/parse_utilcmd.c:642 #, c-format msgid "array of serial is not implemented" msgstr "serial 배열이 구현되지 않음" -#: 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 선언이 서로 충돌합니다 : column \"%s\" of table \"%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 "" +"\"%s\" 칼럼에 지정된 not null 제약 조건 때문에, NO INHERIT 설정이 충돌남" + +#: 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 "" "식별 칼럼은 타입드 테이블(typed table - 자료형으로써 테이블)에서는 쓸 수 없음" -#: 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\" 테이블)에 대해 여러 개의 식별자 지정이 사용되었음" -#: parser/parse_utilcmd.c:774 +#: parser/parse_utilcmd.c:884 #, c-format msgid "generated columns are not supported on typed tables" msgstr "" "미리 계산된 칼럼은 타입드 테이블(typed table - 자료형으로써 테이블)에서는 쓸 " "수 없음" -#: 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\" 테이블)에 대해 default와 식별자 정의가 함께 있음" -#: parser/parse_utilcmd.c:858 +#: parser/parse_utilcmd.c:979 #, c-format msgid "" "both default and generation expression specified for column \"%s\" of table " @@ -20316,7 +21023,7 @@ msgstr "" "\"%s\" 칼럼(해당 테이블 \"%s\")에 대해 default 정의와 미리 계산된 표현식이 함" "께 있음" -#: parser/parse_utilcmd.c:866 +#: parser/parse_utilcmd.c:987 #, c-format msgid "" "both identity and generation expression specified for column \"%s\" of table " @@ -20325,105 +21032,113 @@ msgstr "" "\"%s\" 칼럼(해당 테이블 \"%s\")에 대해 identity 정의와 미리 계산된 표현식이 " "함께 있음" -#: 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 "" +"WITHOUT OVERLAPS 옵션이 지정된 \"%s\" 칼럼은 range multirage 자료형이 아님" + +#: 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 " @@ -20432,154 +21147,169 @@ msgstr "" "룰에서 지정한 WHERE 조건이 있는 규칙에는 SELECT, INSERT, UPDATE 또는 DELETE " "작업만 포함할 수 있음" -#: parser/parse_utilcmd.c:3136 parser/parse_utilcmd.c:3237 -#: rewrite/rewriteHandler.c:544 rewrite/rewriteManip.c:1095 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 +#: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "conditional 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 "DEFERABLE 절이 잘못 놓여져 있습니다" -#: 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 DEFERABLE 절이 잘못 놓여 있습니다" -#: 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 로 선언된 조건문은 반드시 DEFERABLE 여야만 한다" -#: 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 구문에 명시된 schema (%s) 가 생성된 (%s) 의 것과 다릅니다" -#: parser/parse_utilcmd.c:3954 +#: parser/parse_utilcmd.c:4247 #, c-format msgid "\"%s\" is not a partitioned table" -msgstr "\"%s\" 개체는 파티션된 테이블이 아님" +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 "해시 파티션용 모듈은 영(0)보다 큰 정수 값이어야 함" -#: 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 "해시 파티션용 나머지 처리기는 modulus 보다 작아야 함" -#: parser/parse_utilcmd.c:4051 +#: parser/parse_utilcmd.c:4344 #, c-format msgid "invalid bound specification for a list partition" msgstr "list 파티션을 위한 범위 설정이 잘못됨" -#: parser/parse_utilcmd.c:4104 +#: parser/parse_utilcmd.c:4397 #, c-format msgid "invalid bound specification for a range partition" msgstr "range 파티션을 위한 범위 설정이 잘못됨" -#: 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 "range 범위에는 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\"" @@ -20592,12 +21322,12 @@ msgstr "UESCAPE 표현식은 앞에 한글자만 있어야합니다." msgid "invalid Unicode escape character" msgstr "잘못된 유니코드 이스케이프 문자" -#: parser/parser.c:347 scan.l:1393 +#: parser/parser.c:347 scan.l:1385 #, c-format msgid "invalid Unicode escape value" msgstr "잘못된 유니코드 이스케이프 값" -#: parser/parser.c:494 utils/adt/varlena.c:6640 scan.l:716 +#: parser/parser.c:494 utils/adt/varlena.c:6842 scan.l:702 #, c-format msgid "invalid Unicode escape" msgstr "잘못된 유니코드 이스케이프 값" @@ -20607,8 +21337,8 @@ msgstr "잘못된 유니코드 이스케이프 값" msgid "Unicode escapes must be \\XXXX or \\+XXXXXX." msgstr "유니코드 이스케이프는 \\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:6867 scan.l:663 scan.l:679 +#: scan.l:695 #, c-format msgid "invalid Unicode surrogate pair" msgstr "잘못된 유니코드 대리 쌍" @@ -20636,8 +21366,8 @@ msgid "" "The new modulus %d is not a factor of %d, the modulus of existing partition " "\"%s\"." msgstr "" -"새 해시 파티션 구분값(나머지값) %d 값은 %d의 인수가 아닙니다. 이미 있는 " -"\"%s\" 하위 파티션은 이 값을 구분값으로 사용합니다." +"새 해시 파티션 구분값(나머지값) %d 값은 %d의 인수가 아닙니다. 이미 있는 \"%s" +"\" 하위 파티션은 이 값을 구분값으로 사용합니다." #: partitioning/partbounds.c:2992 #, c-format @@ -20707,7 +21437,7 @@ msgstr "" "\"%s\" 자료형을 사용했습니다." #: port/pg_sema.c:209 port/pg_shmem.c:717 port/posix_sema.c:209 -#: port/sysv_sema.c:329 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" @@ -20784,8 +21514,8 @@ msgid "" msgstr "" "이 오류는 일반적으로 PostgreSQL에서 사용할 공유 메모리를 확보하지 못 했을 때 " "발생합니다(물리 메모리, 스왑, huge page). 현재 요구 크기(%zu 바이트)를 좀 줄" -"여 보십시오. 줄이는 방법은, \"shared_buffers\"나 \"max_connections\" 값" -"을 줄여 보십시오." +"여 보십시오. 줄이는 방법은, \"shared_buffers\"나 \"max_connections\" 값을 줄" +"여 보십시오." #: port/pg_shmem.c:725 port/sysv_shmem.c:725 #, c-format @@ -20798,29 +21528,29 @@ msgid "" "huge pages not supported with the current \"shared_memory_type\" setting" msgstr "현재 \"shared_memory_type\" 설정은 huge page 사용을 지원하지 않습니다." -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1401 +#: 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 ID)이 여전히 사용중입니다" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1403 +#: 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:126 +#: port/sysv_sema.c:135 #, c-format msgid "could not create semaphores: %m" msgstr "세마포어를 만들 수 없음: %m" -#: port/sysv_sema.c:127 +#: 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:131 +#: port/sysv_sema.c:140 #, c-format msgid "" "This error does *not* mean that you have run out of disk space. It occurs " @@ -20837,11 +21567,11 @@ msgstr "" "이 오류는 시스템에서 지정한 최소 세마포어 수(SEMMNI)가 너무 크거나, 최대 세마" "포어 수(SEMMNS)가 너무 적어서 서버를 실행할 수 없을 때 발생합니다. 이에 따" "라, 정상적으로 서버가 실행되려면, 시스템 값들을 조정할 필요가 있습니다. 아니" -"면, 다른 방법으로, PostgreSQL의 환경 설정에서 \"max_connections\" 값을 줄여서 세" -"마포어 사용 수를 줄여보십시오.\n" +"면, 다른 방법으로, PostgreSQL의 환경 설정에서 \"max_connections\" 값을 줄여" +"서 세마포어 사용 수를 줄여보십시오.\n" "보다 자세한 내용은 PostgreSQL 관리자 메뉴얼을 참조 하십시오." -#: port/sysv_sema.c:161 +#: port/sysv_sema.c:170 #, c-format msgid "" "You possibly need to raise your kernel's SEMVMX value to be at least %d. " @@ -20976,52 +21706,68 @@ 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 "autovacuum 작업자가 너무 오래전에 시작되어 중지됨" -#: postmaster/autovacuum.c:2203 +#: postmaster/autovacuum.c:2232 #, c-format msgid "autovacuum: dropping orphan temp table \"%s.%s.%s\"" msgstr "" "autovacuum: 더 이상 사용하지 않는 \"%s.%s.%s\" 임시 테이블을 삭제하는 중" -#: postmaster/autovacuum.c:2439 +#: postmaster/autovacuum.c:2475 #, c-format msgid "automatic vacuum of table \"%s.%s.%s\"" msgstr "\"%s.%s.%s\" 테이블 대상으로 자동 vacuum 작업 함" -#: postmaster/autovacuum.c:2442 +#: postmaster/autovacuum.c:2478 #, c-format msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "\"%s.%s.%s\" 테이블 자동 분석" -#: postmaster/autovacuum.c:2636 +#: postmaster/autovacuum.c:2674 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "\"%s.%s.%s\" 릴레이션 작업 항목 작업 중" -#: postmaster/autovacuum.c:3254 +#: postmaster/autovacuum.c:3345 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "서버 설정 정보가 잘못되어 자동 청소 작업이 실행되지 못했습니다." -#: postmaster/autovacuum.c:3255 +#: postmaster/autovacuum.c:3346 #, c-format msgid "Enable the \"track_counts\" option." msgstr "\"track_counts\" 옵션을 사용하십시오." +#: postmaster/autovacuum.c:3468 +#, 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:3470 +#, 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)" +"inconsistent background worker state (\"max_worker_processes\"=%d, total " +"slots=%d)" msgstr "" -"백그라운드 작업자의 정합성이 맞지 않음 (max_worker_processes=%d, " +"백그라운드 작업자의 정합성이 맞지 않음 (\"max_worker_processes\"=%d, " "total_slots=%d)" -#: postmaster/bgworker.c:651 +#: postmaster/bgworker.c:646 #, c-format msgid "" "background worker \"%s\": background workers without shared memory access " @@ -21030,7 +21776,7 @@ msgstr "" "\"%s\" 백그라운드 작업자: 공유 메모리 접근 않는 백그라운드 작업자를 지원하지 " "않음" -#: postmaster/bgworker.c:662 +#: postmaster/bgworker.c:657 #, c-format msgid "" "background worker \"%s\": cannot request database access if starting at " @@ -21039,31 +21785,43 @@ msgstr "" "\"%s\" 백그라운드 작업자: postmaster 시작 중인 상태라면, 데이터베이스 접근을 " "요청할 수 없음" -#: 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 "" -"\"%s\" 백그라운드 작업자: 먼저 \"shared_preload_libraries\" 설정값으로 등록되어" -"야 합니다." +"\"%s\" 백그라운드 작업자: 먼저 \"shared_preload_libraries\" 설정값으로 등록되" +"어야 합니다." -#: postmaster/bgworker.c:911 +#: postmaster/bgworker.c:989 #, c-format msgid "" "background worker \"%s\": only dynamic background workers can request " @@ -21071,140 +21829,141 @@ msgid "" 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." msgstr[0] "현재 설정으로는 %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 "\"%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)" msgstr[0] "체크포인트가 너무 자주 발생함 (%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 "백엔드 매개 변수 파일의 view를 unmap할 수 없음: 오류 코드 %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 "백엔드 매개 변수 파일을 닫을 수 없음: 오류 코드 %lun" -#: 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 "\"%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 "\"%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 "\"%s\" 백엔드 변수 파일에서 시작 데이터를 읽을 수 없음: %m\n" -#: postmaster/launch_backend.c:924 +#: postmaster/launch_backend.c:944 #, c-format msgid "could not remove file \"%s\": %m\n" 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 "백엔드 변수 파일의 view를 map할 수 없음: 오류 코드 %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 "백엔드 변수 파일의 view를 unmap할 수 없음: 오류 코드 %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 "\"archive_mode\"가 활성화 되었지만 아카이브 관련 세부 설정이 되어있지 않음" +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 " @@ -21213,7 +21972,7 @@ 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 " @@ -21222,168 +21981,169 @@ 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 "\"archive_command\", \"archive_library\" 두 설정 모두 값을 지정했습니다." +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 "\"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\" 설정값이 바뀌어서 archiver 프로세스를 다시 시작 합니다." -#: 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" +"%s: \"superuser_reserved_connections\" (%d) plus \"reserved_connections" +"\" (%d) must be less than \"max_connections\" (%d)\n" msgstr "" -"%s: \"superuser_reserved_connections\" (%d) 값 + \"reserved_connections\" (%d) 값은 " -"\"max_connections\" (%d) 값보다 작아야함\n" +"%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 "\"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\" 이어야 합니다." +"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_level\" 값이 \"minimal\"일 때는 아카이브 작업을 할 수 없습니다." -#: postmaster/postmaster.c:847 +#: postmaster/postmaster.c:864 #, c-format msgid "%s: invalid datetoken tables, please fix\n" msgstr "%s: 잘못된 datetoken 테이블들, 복구하십시오.\n" -#: postmaster/postmaster.c:1004 +#: postmaster/postmaster.c:1025 #, c-format msgid "could not create I/O completion port for child queue" msgstr "하위 대기열에 대해 I/O 완료 포트를 만들 수 없음" -#: 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 "\"%s\" 디렉터리에 유닉스 도메인 소켓을 만들 수 없습니다" -#: postmaster/postmaster.c:1240 +#: postmaster/postmaster.c:1262 #, c-format msgid "could not create any Unix-domain sockets" msgstr "유닉스 도메인 소켓을 만들 수 없습니다" -#: 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: \"%s\" 외부 PID 파일의 접근 권한을 바꿀 수 없음: %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 " @@ -21392,7 +22152,7 @@ msgstr "" "이 문제는 PostgreSQL 설치가 불완전하게 되었거나, \"%s\" 파일이 올바른 위치에 " "있지 않아서 발생했습니다." -#: postmaster/postmaster.c:1497 +#: postmaster/postmaster.c:1525 #, c-format msgid "" "%s: could not find the database system\n" @@ -21404,342 +22164,327 @@ msgstr "" "\"%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:2104 +#: postmaster/postmaster.c:2004 #, c-format msgid "received SIGHUP, reloading configuration files" msgstr "SIGHUP 신호를 받아서, 환경설정파일을 다시 읽고 있습니다." #. translator: %s is a configuration file -#: postmaster/postmaster.c:2132 postmaster/postmaster.c:2136 +#: postmaster/postmaster.c:2012 postmaster/postmaster.c:2016 #, c-format msgid "%s was not reloaded" msgstr "%s 파일을 다시 불러오지 않았음" -#: postmaster/postmaster.c:2146 +#: postmaster/postmaster.c:2026 #, c-format msgid "SSL configuration was not reloaded" msgstr "SSL 설정이 다시 로드되지 않았음" -#: postmaster/postmaster.c:2232 +#: postmaster/postmaster.c:2112 #, c-format msgid "received smart shutdown request" msgstr "smart 중지 요청을 받았습니다." -#: postmaster/postmaster.c:2273 +#: postmaster/postmaster.c:2153 #, c-format msgid "received fast shutdown request" msgstr "fast 중지 요청을 받았습니다." -#: postmaster/postmaster.c:2291 +#: postmaster/postmaster.c:2171 #, c-format msgid "aborting any active transactions" msgstr "모든 활성화 되어있는 트랜잭션을 중지하고 있습니다." -#: postmaster/postmaster.c:2315 +#: postmaster/postmaster.c:2195 #, c-format msgid "received immediate shutdown request" msgstr "immediate 중지 요청을 받았습니다." -#: postmaster/postmaster.c:2387 +#: postmaster/postmaster.c:2270 #, c-format msgid "shutdown at recovery target" msgstr "복구 타겟에서 중지함" -#: postmaster/postmaster.c:2405 postmaster/postmaster.c:2441 +#: postmaster/postmaster.c:2288 postmaster/postmaster.c:2324 msgid "startup process" msgstr "시작 프로세스" -#: postmaster/postmaster.c:2408 +#: postmaster/postmaster.c:2291 #, c-format msgid "aborting startup due to startup process failure" msgstr "시작 프로세스 실패 때문에 서버 시작이 중지 되었습니다" -#: postmaster/postmaster.c:2483 +#: postmaster/postmaster.c:2347 #, c-format msgid "database system is ready to accept connections" msgstr "이제 데이터베이스 서버로 접속할 수 있습니다" -#: postmaster/postmaster.c:2504 +#: postmaster/postmaster.c:2369 msgid "background writer process" msgstr "백그라운드 writer 프로세스" -#: postmaster/postmaster.c:2551 +#: postmaster/postmaster.c:2402 msgid "checkpointer process" msgstr "체크포인트 프로세스" -#: postmaster/postmaster.c:2567 +#: postmaster/postmaster.c:2419 msgid "WAL writer process" msgstr "WAL 쓰기 프로세스" -#: postmaster/postmaster.c:2582 +#: postmaster/postmaster.c:2435 msgid "WAL receiver process" msgstr "WAL 수신 프로세스" -#: postmaster/postmaster.c:2596 +#: postmaster/postmaster.c:2450 msgid "WAL summarizer process" msgstr "WAL 요약 프로세스" -#: postmaster/postmaster.c:2611 +#: postmaster/postmaster.c:2466 msgid "autovacuum launcher process" msgstr "autovacuum 실행기 프로세스" -#: postmaster/postmaster.c:2629 +#: postmaster/postmaster.c:2482 msgid "archiver process" msgstr "archiver 프로세스" -#: postmaster/postmaster.c:2642 +#: postmaster/postmaster.c:2497 msgid "system logger process" msgstr "시스템 로그 프로세스" -#: postmaster/postmaster.c:2659 +#: postmaster/postmaster.c:2515 msgid "slot sync worker process" msgstr "슬롯 동기화 작업 프로세스" -#: postmaster/postmaster.c:2715 +#: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 +msgid "io worker" +msgstr "io worker" + +#: 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:2794 postmaster/postmaster.c:2814 -#: postmaster/postmaster.c:2821 postmaster/postmaster.c:2839 -msgid "server process" -msgstr "서버 프로세스" - -#: postmaster/postmaster.c:2893 +#: 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:3080 +#: postmaster/postmaster.c:2837 #, c-format msgid "%s (PID %d) exited with exit code %d" msgstr "%s (PID %d) 프로그램은 %d 코드로 마쳤습니다" -#: postmaster/postmaster.c:3082 postmaster/postmaster.c:3094 -#: postmaster/postmaster.c:3104 postmaster/postmaster.c:3115 +#: 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:3091 +#: 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:3101 +#: 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:3113 +#: postmaster/postmaster.c:2870 #, c-format msgid "%s (PID %d) exited with unrecognized status %d" msgstr "%s (PID %d) 프로세스가 인식할 수 없는 %d 상태로 종료됨" -#: postmaster/postmaster.c:3329 +#: postmaster/postmaster.c:3161 #, c-format msgid "abnormal database system shutdown" msgstr "비정상적인 데이터베이스 시스템 서비스를 중지" -#: postmaster/postmaster.c:3355 +#: postmaster/postmaster.c:3187 #, c-format msgid "shutting down due to startup process failure" msgstr "시작 작업 실패로 중지합니다." -#: postmaster/postmaster.c:3361 +#: postmaster/postmaster.c:3193 #, c-format msgid "shutting down because \"restart_after_crash\" is off" msgstr "\"restart_after_crash\" 값이 off 로 지정되어 중지합니다." -#: postmaster/postmaster.c:3373 +#: postmaster/postmaster.c:3205 #, c-format msgid "all server processes terminated; reinitializing" msgstr "모든 서버 프로세스가 중지 되었습니다; 재 초기화 중" -#: postmaster/postmaster.c:3572 postmaster/postmaster.c:3982 -#: postmaster/postmaster.c:4371 -#, c-format -msgid "could not generate random cancel key" -msgstr "무작위 취소 키를 만들 수 없음" - -#: postmaster/postmaster.c:3605 +#: postmaster/postmaster.c:3598 #, c-format msgid "could not fork new process for connection: %m" msgstr "연결을 위한 새 프로세스 할당(fork) 실패: %m" -#: postmaster/postmaster.c:3647 +#: postmaster/postmaster.c:3633 msgid "could not fork new process for connection: " msgstr "연결을 위한 새 프로세스 할당(fork) 실패: " -#: postmaster/postmaster.c:3681 +#: postmaster/postmaster.c:3667 #, c-format -msgid "Please report this to <%s>." -msgstr "이 내용을 <%s> 주소로 보고하십시오." +msgid "postmaster became multithreaded" +msgstr "포스트마스터가 시작하면서 멀티쓰레드 환경으로 작동했음" -#: postmaster/postmaster.c:3749 +#: postmaster/postmaster.c:3745 #, c-format msgid "database system is ready to accept read-only connections" msgstr "데이터베이스 시스템이 읽기 전용으로 연결을 수락할 준비가 되었습니다." -#: postmaster/postmaster.c:3932 +#: postmaster/postmaster.c:3846 #, c-format -msgid "could not fork \"%s\" process: %m" -msgstr "\"%s\" 프로세스 할당(fork) 실패: %m" - -#: postmaster/postmaster.c:4170 postmaster/postmaster.c:4204 -#, c-format -msgid "database connection requirement not indicated during registration" -msgstr "" -"백그라운드 프로세스 초기화 중에 데이터베이스 연결 요구 사항이 충족되지 않았습" -"니다." +msgid "WAL was shut down unexpectedly" +msgstr "WAL 작업이 예상치 않게 끝났음" -#: postmaster/postmaster.c:4180 postmaster/postmaster.c:4214 +#: postmaster/postmaster.c:3971 #, c-format -msgid "invalid processing mode in background worker" -msgstr "백그라운드 작업자에서 잘못된 프로세싱 모드가 사용됨" +msgid "no slot available for new autovacuum worker process" +msgstr "새 autovacuum 작업자 프로세스에서 쓸 슬롯이 없음" -#: postmaster/postmaster.c:4274 +#: postmaster/postmaster.c:3986 #, c-format -msgid "could not fork background worker process: %m" -msgstr "백그라운드 작업자 프로세스를 할당(fork)할 수 없습니다: %m" +msgid "could not fork \"%s\" process: %m" +msgstr "\"%s\" 프로세스 할당(fork) 실패: %m" -#: postmaster/postmaster.c:4357 +#: postmaster/postmaster.c:4145 #, c-format msgid "no slot available for new background worker process" msgstr "새 백그라운드 작업자 프로세스에서 쓸 슬롯이 없음" -#: postmaster/postmaster.c:4620 +#: postmaster/postmaster.c:4163 +#, c-format +msgid "could not fork background worker process: %m" +msgstr "백그라운드 작업자 프로세스를 할당(fork)할 수 없습니다: %m" + +#: postmaster/postmaster.c:4496 #, c-format msgid "could not read exit code for process\n" msgstr "프로세스의 종료 코드를 읽을 수 없음\n" -#: postmaster/postmaster.c:4662 +#: 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 "시스템 로거(logger)를 확보하질 못 했습니다: %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 "표준출력을 redirect 하지 못했습니다: %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)를 redirect 하지 못했습니다: %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에서 멈추어 있음" +"요약정보 처리 작업은 %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" -msgstr[0] "" -"%X/%X에서 여전히 %ld초 동안 WAL 요약정보 처리 작업이 멈춰 있음" +msgstr[0] "%X/%X에서 여전히 %ld초 동안 WAL 요약정보 처리 작업이 멈춰 있음" -#: 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 "%u번 타임라인의 %X/%X에서 WAL를 읽을 수 없음: %s" -#: postmaster/walsummarizer.c:1051 +#: postmaster/walsummarizer.c:1054 #, c-format msgid "could not read WAL from timeline %u at %X/%X" msgstr "타임라인 %u, 위치 %X/%X 에서 WAL를 읽을 없음" -#: 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 "정규식 처리에 쓰일 정렬규칙(collation)을 찾을 수 없음" @@ -21749,18 +22494,18 @@ msgstr "정규식 처리에 쓰일 정렬규칙(collation)을 찾을 수 없음" msgid "nondeterministic collations are not supported for regular expressions" msgstr "정규식 처리에 쓰일 비결정 정렬규칙(collation)을 지원하지 않음" -#: 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 " @@ -21769,28 +22514,28 @@ msgstr "" "대상 서버의 인증 방법을 바꾸거나, 또는 구독 속성으로 password_required=false " "로 지정하세요." -#: replication/libpqwalreceiver/libpqwalreceiver.c:285 +#: replication/libpqwalreceiver/libpqwalreceiver.c:249 #, c-format msgid "could not clear search path: %s" msgstr "search path를 지울 수 없음: %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 " @@ -21798,13 +22543,13 @@ msgid "" 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 " @@ -21813,91 +22558,91 @@ 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 "COPY 스트리밍 종료 중 오류 발생: %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 "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 "예기치 않은 파이프라인 모드" @@ -21943,45 +22688,181 @@ 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에 non-existent " +"오리진에서 변경했습니다." + +#: 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 "" +"non-existent 오리진의 %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 "non-existent 오리진의 %u 트랜잭션이 %s에 변경한 로우를 지웁니다." + +# translator: %s is IPv4, IPv6, or Unix +#: 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 full 복제 식별자" + +#: 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 full 복제 식별자" + +#: 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 "" -"대기 서버에서 논리적 디코딩은 주서버 설정이 \"wal_level\" >= \"logical\" 이어야 함" +"대기 서버에서 논리적 디코딩은 주서버 설정이 \"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" +msgid "" +"cannot start logical replication workers when " +"\"max_active_replication_origins\" is 0" msgstr "" -"max_replication_slots = 0 설정 때문에 논리 복제 작업자를 시작 할 수 없습니다" +"\"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:2836 storage/lmgr/lock.c:4221 storage/lmgr/lock.c:4286 -#: storage/lmgr/lock.c:4636 storage/lmgr/predicate.c:2469 -#: storage/lmgr/predicate.c:2484 storage/lmgr/predicate.c:3881 +#. 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 #, 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 " @@ -21990,27 +22871,27 @@ 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:521 #, 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:531 #, 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 " @@ -22018,77 +22899,59 @@ msgid "" msgstr "" "자료 변경 작업이 있는 트랜잭션 안에서는 논리적 복제 슬롯을 만들 수 없음" -#: replication/logical/logical.c:540 +#: replication/logical/logical.c:542 #, 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:544 replication/slot.c:829 +#: replication/slot.c:864 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "이 복제 슬롯은 해당 주 서버로부터 동기화 되었습니다." -#: replication/logical/logical.c:543 +#: replication/logical/logical.c:545 #, 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:611 #, c-format msgid "starting logical decoding for slot \"%s\"" msgstr "\"%s\" 이름의 논리적 복제 슬롯을 만드는 중" -#: replication/logical/logical.c:630 +#: replication/logical/logical.c:613 #, c-format msgid "Streaming transactions committing after %X/%X, reading WAL from %X/%X." msgstr "" "%X/%X 이후 트랜잭션 커밋 정보를 스트리밍 하는 중, %X/%X 위치부터 WAL 읽는 중" -#: replication/logical/logical.c:778 +#: replication/logical/logical.c:761 #, 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:767 #, 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:938 replication/logical/logical.c:983 +#: replication/logical/logical.c:1028 replication/logical/logical.c:1074 #, 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:1306 replication/logical/logical.c:1355 +#: replication/logical/logical.c:1396 replication/logical/logical.c:1482 +#: replication/logical/logical.c:1531 #, c-format msgid "logical streaming requires a %s callback" msgstr "논리적 스트리밍이 %s 콜백을 필요로 합니다" -#: replication/logical/logical.c:1458 +#: replication/logical/logical.c:1441 #, c-format msgid "logical streaming at prepare time requires a %s callback" msgstr "준비 시간에 논리적 스트리밍이 %s 콜백을 필요로 합니다" @@ -22113,7 +22976,7 @@ msgstr "배열은 일차원 배열이어야 합니다" msgid "array must not contain nulls" msgstr "배열에는 null 값을 포함할 수 없습니다" -#: 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" @@ -22128,112 +22991,123 @@ 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" +"cannot query or manipulate replication origin when " +"\"max_active_replication_origins\" is 0" msgstr "" -"\"max_replication_slots\" = 0 상황에서는 복제 오리진을 질의하거나 관리할 수 없음" +"\"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 "비어있는 복제 오리진 OID를 찾을 수 없음" -#: 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 "%d ID의 복제 오리진은 삭제 될 수 없음, %d PID가 사용중임" -#: replication/logical/origin.c:492 +#: replication/logical/origin.c:520 #, c-format msgid "replication origin with ID %d does not exist" msgstr "%d ID의 복제 오리진이 없음" -#: 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\"" +"could not find free replication state, increase " +"\"max_active_replication_origins\"" msgstr "" -"사용 가능한 복제 슬롯이 부족합니다. \"max_replication_slots\" 값을 늘리세요" +"사용 가능한 복제 상태를 찾을 수 없습니다. \"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 "%d ID의 복제 오리진이 %d PID 프로세스가 사용중입니다." -#: 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 "%d ID 복제 오리진을 위한 여유 복제 슬롯을 찾을 수 없음" -#: 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: " @@ -22243,7 +23117,19 @@ msgid_plural "" "%s" msgstr[0] "\"%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" + +#: replication/logical/relation.c:328 #, c-format msgid "" "logical replication target relation \"%s.%s\" uses system columns in REPLICA " @@ -22252,78 +23138,77 @@ 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:3999 +#: replication/logical/reorderbuffer.c:4252 #, c-format msgid "could not write to data file for XID %u: %m" msgstr "%u XID 내용을 데이터 파일에 쓸 수 없음: %m" -#: replication/logical/reorderbuffer.c:4345 -#: replication/logical/reorderbuffer.c:4370 +#: replication/logical/reorderbuffer.c:4598 +#: replication/logical/reorderbuffer.c:4623 #, c-format msgid "could not read from reorderbuffer spill file: %m" msgstr "reorderbuffer 처리용 파일에서 읽기 실패: %m" -#: replication/logical/reorderbuffer.c:4349 -#: replication/logical/reorderbuffer.c:4374 +#: 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 "" "reorderbuffer 처리용 파일에서 읽기 실패: %d 바이트 읽음, 기대값 %u 바이트" -#: replication/logical/reorderbuffer.c:4624 +#: 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:5120 +#: 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." +"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 "" -"원격 슬롯에는 LSN %X/%X, catalog xmin %u 정보가 있지만, " -"로컬 슬롯은 LSN %X/%X, catalog xmin %u 상태입니다." +"동기화 작업에서 자료를 잃을 가능성이 있습니다. 원격 슬롯에는 LSN %X/%X, " +"catalog xmin %u 정보가 필요한데, 대기 서버에서는 LSN %X/%X, catalog 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\" 복제 슬롯을 %u OID 데이터베이스에서 삭제했음" -#: 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 "논리적 디코딩이 로컬 슬롯 %X/%X에서 일관성 위치를 찾지 못함" +"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 위치에서 WAL 디코드하기 위한 일관성 스냅샷으로 " +"구축되지 않았습니다." -#: 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 " @@ -22332,7 +23217,7 @@ 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 " @@ -22340,29 +23225,29 @@ msgid "" msgstr "" "\"%s\" 이름의 슬롯이 대기 서버에도 이미 있어, 슬롯 동기화 작업이 이미 있음" -#: replication/logical/slotsync.c:819 +#: replication/logical/slotsync.c:835 #, c-format msgid "could not fetch failover logical slots info from the primary server: %s" msgstr "주 서버에서 failover 논리 복제 슬롯을 찾지 못했음: %s" -#: replication/logical/slotsync.c:965 +#: replication/logical/slotsync.c:984 #, c-format msgid "" -"could not fetch primary_slot_name \"%s\" info from the primary server: %s" -msgstr "주 서버에서 \"%s\" primary_slot_name을 찾지 못했음: %s" +"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:986 #, 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:1006 #, 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:1015 #, c-format msgid "" "replication slot \"%s\" specified by \"%s\" does not exist on primary server" @@ -22371,153 +23256,149 @@ 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:1048 #, 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:1067 #, 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:1082 replication/logical/slotsync.c:1110 #, 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:1096 #, 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:1148 #, c-format msgid "" "replication slot synchronization worker will shut down because \"%s\" is " "disabled" -msgstr "" -"\"%s\" 설정이 비활성화되어 복제 슬롯 동기화 작업이 중지될 것임" +msgstr "\"%s\" 설정이 비활성화되어 복제 슬롯 동기화 작업이 중지될 것임" -#: replication/logical/slotsync.c:1138 +#: replication/logical/slotsync.c:1157 #, c-format msgid "" "replication slot synchronization worker will restart because of a parameter " "change" -msgstr "" -"매개 변수가 바뀌어서 복제 슬롯 동기화 작업이 중지될 것임" +msgstr "매개 변수가 바뀌어서 복제 슬롯 동기화 작업이 중지될 것임" -#: replication/logical/slotsync.c:1162 +#: replication/logical/slotsync.c:1181 #, c-format msgid "" "replication slot synchronization worker is shutting down on receiving SIGINT" -msgstr "" -"SIGINT 신호를 받아 복제 슬롯 동기화 작업자를 종료함" +msgstr "SIGINT 신호를 받아 복제 슬롯 동기화 작업자를 종료함" -#: replication/logical/slotsync.c:1287 +#: replication/logical/slotsync.c:1306 #, c-format msgid "cannot synchronize replication slots when standby promotion is ongoing" msgstr "대기 서버가 주 서버로 전환 중이여서 복제 슬롯 동기화를 할 수 없음" -#: replication/logical/slotsync.c:1295 +#: replication/logical/slotsync.c:1314 #, c-format msgid "cannot synchronize replication slots concurrently" msgstr "복제 슬롯을 동시에 동기화 할 수 없음" -#: replication/logical/slotsync.c:1403 +#: replication/logical/slotsync.c:1422 #, 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:1484 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" -msgstr[0] "" -"추출된 논리 디코딩 스냅샷: \"%s\" 스냅샷, %u개 트랜잭션 ID" +msgstr[0] "추출된 논리 디코딩 스냅샷: \"%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 "\"%s\" snapbuild 상태 파일의 매직 번호가 이상함: 현재값 %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 "\"%s\" snapbuild 상태 파일의 버전이 이상함: 현재값 %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 "" "\"%s\" snapbuild 상태 파일의 체크섬이 일치하지 않음: 조회값 %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 " @@ -22526,44 +23407,51 @@ msgstr "" "two_phase 활성화를 위해 \"%s\" 구독을 위해 논리 복제 적용 작업자가 다시 시작" "됩니다." -#: 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 "\"%s.%s\" 테이블용 WHERE 절을 구할 수 없습니다, 해당 발행: %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 synchronization worker for subscription \"%s\" could not connect to " +"the publisher: %s" +msgstr "\"%s\" 구독용 테이블 동기화 작업자가 발행 서버에 연결할 수 없음: %s" + +#: replication/logical/tablesync.c:1466 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "발행 서버에서는 테이블 복사 트랜잭션을 시작할 수 없음: %s" -#: replication/logical/tablesync.c:1472 +#: replication/logical/tablesync.c:1509 #, c-format msgid "replication origin \"%s\" already exists" msgstr "\"%s\" 이름의 복제 오리진이 이미 있습니다." -#: replication/logical/tablesync.c:1505 replication/logical/worker.c:2361 +#: replication/logical/tablesync.c:1542 replication/logical/worker.c:2378 #, c-format msgid "" "user \"%s\" cannot replicate into relation with row-level security enabled: " @@ -22572,18 +23460,18 @@ msgstr "" "\"%s\" 사용자는 로우 수준 보안 활성화 상태에서 릴레이션으로 복제할 수 없음: " "\"%s\"" -#: replication/logical/tablesync.c:1518 +#: replication/logical/tablesync.c:1555 #, 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 " @@ -22592,12 +23480,12 @@ 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 " @@ -22606,7 +23494,7 @@ 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 " @@ -22617,22 +23505,22 @@ msgstr "" "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 " @@ -22641,7 +23529,7 @@ 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 " @@ -22650,7 +23538,7 @@ 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 " @@ -22659,7 +23547,7 @@ 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 " @@ -22667,30 +23555,36 @@ msgid "" 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\" 구독용 논리 복제 병렬 반영 " -"작업자가 중지 될 것임" +"구독 소유주의 슈퍼유저 권한이 회수되어 \"%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\" 구독용 논리 복제 병렬 반영 " -"작업자가 재실행 될 것임" +"구독 소유주의 슈퍼유저 권한이 회수되어 \"%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 " @@ -22699,7 +23593,7 @@ 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 " @@ -22707,7 +23601,7 @@ msgid "" msgstr "" "\"%s\" 구독이 시작되는 사이 지워져서 논리 복제 작업자가 작동되지 못했습니다." -#: replication/logical/worker.c:4631 +#: replication/logical/worker.c:4736 #, c-format msgid "" "logical replication table synchronization worker for subscription \"%s\", " @@ -22716,125 +23610,124 @@ 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:4871 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "\"%s\" 구독이 오류로 비활성화 되었습니다." -#: replication/logical/worker.c:4806 +#: replication/logical/worker.c:4919 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "%X/%X LSN 에서 트랜잭션 건너 뛰어 논리 복제를 시작함" -#: replication/logical/worker.c:4820 +#: replication/logical/worker.c:4933 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "논리 복제가 %X/%X LSN까지 트랜잭션을 건너뛰었습니다." -#: replication/logical/worker.c:4902 +#: replication/logical/worker.c:5021 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "\"%s\" 이름의 구독의 LSN 건너뛰기 완료함" -#: replication/logical/worker.c:4903 +#: replication/logical/worker.c:5022 #, c-format msgid "" "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN " "%X/%X." msgstr "원력 트랜잭션 마침 WAL 위치 %X/%X LSN이 skip-LSN %X/%X와 같지 않음" -#: replication/logical/worker.c:4940 +#: replication/logical/worker.c:5050 #, c-format msgid "" -"processing remote data for replication origin \"%s\" during message type " -"\"%s\"" +"processing remote data for replication origin \"%s\" during message type \"%s" +"\"" msgstr "" "\"%s\" 복제 오리진용 원격 데이터를 처리합니다. 해당 메시지 유형: \"%s\"" -#: replication/logical/worker.c:4944 +#: replication/logical/worker.c:5054 #, c-format msgid "" -"processing remote data for replication origin \"%s\" during message type " -"\"%s\" in transaction %u" +"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:5059 #, c-format msgid "" -"processing remote data for replication origin \"%s\" during message type " -"\"%s\" in transaction %u, finished at %X/%X" +"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:5070 #, c-format msgid "" -"processing remote data for replication origin \"%s\" during message type " -"\"%s\" for replication target relation \"%s.%s\" in transaction %u" +"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:5077 #, 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" +"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:5088 #, 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" +"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:5096 #, 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" +"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:322 +#: replication/pgoutput/pgoutput.c:328 #, c-format msgid "invalid proto_version" msgstr "잘못된 proto_version" -#: replication/pgoutput/pgoutput.c:327 +#: replication/pgoutput/pgoutput.c:333 #, c-format msgid "proto_version \"%s\" out of range" msgstr "proto_verson \"%s\" 범위 벗어남" -#: replication/pgoutput/pgoutput.c:344 +#: replication/pgoutput/pgoutput.c:350 #, c-format msgid "invalid publication_names syntax" msgstr "잘못된 publication_names 구문" -#: replication/pgoutput/pgoutput.c:414 replication/pgoutput/pgoutput.c:418 +#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 #, c-format msgid "option \"%s\" missing" msgstr "\"%s\" 옵션 빠졌음" -#: replication/pgoutput/pgoutput.c:478 +#: replication/pgoutput/pgoutput.c:469 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or lower" @@ -22842,7 +23735,7 @@ msgstr "" "클라이언트가 proto_version=%d 값을 보냈지만, %d 버전 또는 그 이하 버전 프로토" "콜만 지원합니다." -#: replication/pgoutput/pgoutput.c:484 +#: replication/pgoutput/pgoutput.c:475 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or higher" @@ -22850,7 +23743,7 @@ msgstr "" "클라이언트가 proto_version=%d 값을 보냈지만, %d 버전 또는 그 이상 버전 프로토" "콜만 지원합니다." -#: replication/pgoutput/pgoutput.c:499 +#: replication/pgoutput/pgoutput.c:490 #, c-format msgid "" "requested proto_version=%d does not support streaming, need %d or higher" @@ -22858,7 +23751,7 @@ msgstr "" "요청한 %d 버전 proto_version은 스트리밍을 지원하지 않습니다. %d 또는 그 이상 " "버전이 필요합니다." -#: replication/pgoutput/pgoutput.c:505 +#: replication/pgoutput/pgoutput.c:496 #, c-format msgid "" "requested proto_version=%d does not support parallel streaming, need %d or " @@ -22867,12 +23760,12 @@ msgstr "" "요청한 proto_version=%d 값은 스트리밍을 지원하지 않습니다. %d 또는 그 이상 버" "전이 필요합니다." -#: replication/pgoutput/pgoutput.c:510 +#: replication/pgoutput/pgoutput.c:501 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "스트리밍을 요청했지만, 출력 플러그인이 지원하지 않습니다." -#: replication/pgoutput/pgoutput.c:524 +#: replication/pgoutput/pgoutput.c:515 #, c-format msgid "" "requested proto_version=%d does not support two-phase commit, need %d or " @@ -22881,27 +23774,51 @@ msgstr "" "요청한 proto_version=%d 값은 2PC를 지원하지 않습니다. %d 또는 그 이상 버전이 " "필요합니다." -#: replication/pgoutput/pgoutput.c:529 +#: replication/pgoutput/pgoutput.c:520 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "2PC를 요청했지만, 출력 플러그인이 지원하지 않습니다." -#: replication/slot.c:260 +#: replication/pgoutput/pgoutput.c:1085 #, c-format -msgid "replication slot name \"%s\" is too short" -msgstr "\"%s\" 복제 슬롯 이름이 너무 짧음" +msgid "" +"cannot use different values of publish_generated_columns for table \"%s.%s\" " +"in different publications" +msgstr "" +"서로 다른 발행에서 \"%s.%s\" 테이블에 대한 publish_generated_columns 의 서로 " +"다른 값을 사용할 수 없음" -#: replication/slot.c:269 +#: replication/pgoutput/pgoutput.c:1792 #, c-format -msgid "replication slot name \"%s\" is too long" -msgstr "\"%s\" 복제 슬롯 이름이 너무 긺" +msgid "skipped loading publication \"%s\"" +msgstr "\"%s\" 발행 불러오기를 건너뜀" -#: replication/slot.c:282 +#: replication/pgoutput/pgoutput.c:1793 #, c-format -msgid "replication slot name \"%s\" contains invalid character" -msgstr "\"%s\" 복제 슬롯 이름에 사용할 수 없는 문자가 있음" +msgid "The publication does not exist at this point in the WAL." +msgstr "해당 발행이 그 WAL 그 위치에 없습니다." -#: replication/slot.c:284 +#: replication/pgoutput/pgoutput.c:1794 +#, c-format +msgid "Create the publication if it does not exist." +msgstr "없다면 해당 발행을 만드세요." + +#: replication/slot.c:275 +#, c-format +msgid "replication slot name \"%s\" is too short" +msgstr "\"%s\" 복제 슬롯 이름이 너무 짧음" + +#: replication/slot.c:284 +#, c-format +msgid "replication slot name \"%s\" is too long" +msgstr "\"%s\" 복제 슬롯 이름이 너무 긺" + +#: replication/slot.c:297 +#, c-format +msgid "replication slot name \"%s\" contains invalid character" +msgstr "\"%s\" 복제 슬롯 이름에 사용할 수 없는 문자가 있음" + +#: replication/slot.c:299 #, c-format msgid "" "Replication slot names may only contain lower case letters, numbers, and the " @@ -22910,314 +23827,372 @@ msgstr "" "복제 슬롯 이름으로 사용할 수 있는 문자는 영문 소문자, 숫자, 밑줄(_) 문자입니" "다." -#: replication/slot.c:333 +#: replication/slot.c:348 #, c-format msgid "cannot enable failover for a replication slot created on the standby" msgstr "대기 서버에서 만들어진 복제 슬롯에는 failover 설정을 활성화 할 수 없음" -#: replication/slot.c:345 replication/slot.c:849 +#: replication/slot.c:360 replication/slot.c:886 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "임시 복제 슬롯에는 failover 설정을 활성화 할 수 없음" -#: replication/slot.c:370 +#: replication/slot.c:385 #, c-format msgid "replication slot \"%s\" already exists" msgstr "\"%s\" 이름의 복제 슬롯이 이미 있습니다." -#: replication/slot.c:380 +#: replication/slot.c:395 #, c-format msgid "all replication slots are in use" msgstr "모든 복제 슬롯이 사용 중입니다." -#: replication/slot.c:381 +#: replication/slot.c:396 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "하나를 비우든지, \"max_replication_slots\" 설정값을 늘리세요." -#: replication/slot.c:560 replication/slot.c:2450 replication/slotfuncs.c:661 -#: utils/activity/pgstat_replslot.c:56 utils/adt/genfile.c:728 +#: replication/slot.c:580 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:635 replication/slot.c:1431 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "\"%s\" 이름의 복제 슬롯을 %d PID 프로세스가 사용중입니다." -#: replication/slot.c:638 +#: replication/slot.c:652 +#, c-format +msgid "can no longer access replication slot \"%s\"" +msgstr "\"%s\" 복제 슬롯에 더 이상 접근할 수 없음" + +#: replication/slot.c:654 +#, c-format +msgid "This replication slot has been invalidated due to \"%s\"." +msgstr "이 복제 슬롯은 바르지 않습니다, 이유: \"%s\"." + +#: replication/slot.c:673 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "\"%s\" 논리 복제 슬롯을 획득함" -#: replication/slot.c:640 +#: replication/slot.c:675 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "\"%s\" 물리 복제 슬롯을 획득함" -#: replication/slot.c:729 +#: replication/slot.c:760 #, c-format msgid "released logical replication slot \"%s\"" msgstr "\"%s\" 논리 복제 슬롯을 반환함" -#: replication/slot.c:731 +#: replication/slot.c:762 #, c-format msgid "released physical replication slot \"%s\"" msgstr "\"%s\" 물리 복제 슬롯을 반환함" -#: replication/slot.c:797 +#: replication/slot.c:828 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "\"%s\" 복제 슬롯을 삭제할 수 없음" -#: replication/slot.c:816 +#: replication/slot.c:851 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "물리 복제 슬롯과 함께 %s 사용할 수 없음" -#: replication/slot.c:828 +#: replication/slot.c:863 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "\"%s\" 복제 슬롯을 변경 할 수 없음" -#: replication/slot.c:838 +#: replication/slot.c:873 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "대기 서버의 복제 슬롯에는 failover 설정을 활성화 할 수 없음" -#: replication/slot.c:969 replication/slot.c:1927 replication/slot.c:2311 +#: replication/slot.c:1021 replication/slot.c:2174 replication/slot.c:2560 #, c-format msgid "could not remove directory \"%s\"" msgstr "\"%s\" 디렉터리를 삭제할 수 없음" -#: replication/slot.c:1372 +#: replication/slot.c:1466 #, 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:1471 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "복제 슬롯은 \"wal_level\" >= \"replica\" 상태에서만 사용할 수 있음" -#: replication/slot.c:1389 +#: replication/slot.c:1483 #, c-format msgid "permission denied to use replication slots" msgstr "복제 슬롯을 사용할 권한 없음" -#: replication/slot.c:1390 +#: replication/slot.c:1484 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "복제 슬롯은 %s 속성을 가진 롤만 사용할 수 있습니다." -#: replication/slot.c:1498 +#: replication/slot.c:1594 #, 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." +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 값은 %llu 바이트로 그 크기를 초과했습니다." +"해당 슬롯 restart_lsn %X/%X 값은 % 바이트로 그 크기를 초과했습니다." -#: replication/slot.c:1506 +#: replication/slot.c:1605 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "해당 슬롯이 xid horizon %u 값으로 충돌합니다." -#: replication/slot.c:1511 +#: replication/slot.c:1610 msgid "" "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the " "primary server." msgstr "" -"대기 서버의 논리적 디코딩 기능은 주서버의 \"wal_level\" >= \"logical\" 설정이 필요합" -"니다." +"대기 서버의 논리적 디코딩 기능은 주서버의 \"wal_level\" >= \"logical\" 설정" +"이 필요합니다." + +#. translator: %s is a GUC variable name +#: replication/slot.c:1616 +#, c-format +msgid "" +"The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." +msgstr "" +"%ld 초의 슬롯 휴지 시간이 \"%s\" 설정값인 %d 초를 초과합니다." -#: replication/slot.c:1519 +#: replication/slot.c:1630 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "%d번 프로세스를 중지합니다. \"%s\" 복제 슬롯이 삭제될 것입니다." -#: replication/slot.c:1521 +#: replication/slot.c:1632 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "\"%s\" 복제 슬롯이 사용되지 않아 삭제될 것입니다." -#: replication/slot.c:2249 +#: replication/slot.c:2498 #, 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:2505 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "\"%s\" 복제 슬롯 파일은 지원하지 않는 %u 버전 파일입니다" -#: replication/slot.c:2263 +#: replication/slot.c:2512 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "\"%s\" 복제 슬롯 파일이 %u 길이로 손상되었습니다." -#: replication/slot.c:2299 +#: replication/slot.c:2548 #, 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:2584 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "\"%s\" 논리 복제 슬롯이 있지만, \"wal_level\" < \"logical\" 설정임" -#: replication/slot.c:2335 +#: replication/slot.c:2586 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "\"wal_level\" 값을 \"logical\" 또는 그 이상으로 지정하세요." -#: replication/slot.c:2339 +#: replication/slot.c:2598 +#, c-format +msgid "" +"logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = " +"\"off\"" +msgstr "" +"대기 서버에 \"%s\" 논리 복제 슬롯이 있지만, \"hot_standby\" = \"off\" 임" + +#: replication/slot.c:2600 +#, c-format +msgid "Change \"hot_standby\" to be \"on\"." +msgstr "\"hot_standby\" 값을 \"on\"으로 바꾸세요." + +#: replication/slot.c:2605 #, c-format msgid "" "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "\"%s\" 물리 복제 슬롯이 있지만, \"wal_level\" < \"replica\" 설정임" -#: replication/slot.c:2341 +#: replication/slot.c:2607 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "\"wal_level\" 값을 \"replica\" 또는 그 이상으로 지정하세요." -#: replication/slot.c:2383 +#: replication/slot.c:2654 #, c-format msgid "too many replication slots active before shutdown" msgstr "서버 중지 전에 너무 많은 복제 슬롯이 활성화 상태입니다" -#: replication/slot.c:2458 +#: replication/slot.c:2655 +#, 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\" 슬롯은 물리 복제 슬롯이 아님" +msgid "\"%s\" is not a physical replication slot." +msgstr "\"%s\" 슬롯은 물리 복제 슬롯이 아닙니다." -#: replication/slot.c:2635 +#: replication/slot.c:2919 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "\"%s\" 복제 슬롯에는 \"%s\" 매개 변수 설정이 없음" -#: replication/slot.c:2637 replication/slot.c:2671 replication/slot.c:2686 +#: replication/slot.c:2921 replication/slot.c:2955 replication/slot.c:2970 #, c-format msgid "" "Logical replication is waiting on the standby associated with replication " "slot \"%s\"." msgstr "논리 복제가 \"%s\" 복제 슬롯과 연결된 대기 서버에서 대기 중" -#: replication/slot.c:2639 +#: replication/slot.c:2923 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "\"%s\" 이름의 복제 슬롯을 만들든가, \"%s\" 설정을 바꾸세요." -#: replication/slot.c:2649 +#: replication/slot.c:2933 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "\"%s\" 논리 복제 슬롯을 \"%s\" 설정에 지정할 수 없음" -#: replication/slot.c:2651 +#: replication/slot.c:2935 #, c-format msgid "" "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "논리 복제가 \"%s\" 복제 슬롯 수정을 기다리고 있습니다." -#: replication/slot.c:2653 +#: replication/slot.c:2937 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "\"%s\" 논리 복제 슬롯을 \"%s\" 설정에서 빼세요." -#: replication/slot.c:2669 +#: replication/slot.c:2953 #, c-format msgid "" "physical replication slot \"%s\" specified in parameter \"%s\" has been " "invalidated" msgstr "\"%s\" 물리 복제 슬롯이 \"%s\" 설정에서 invalid 상태가 되었음" -#: replication/slot.c:2673 +#: replication/slot.c:2957 #, c-format msgid "" "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "\"%s\" 복제 슬롯을 삭제하고 다시 만들거나, \"%s\" 설정을 바꾸세요." -#: replication/slot.c:2684 +#: replication/slot.c:2968 #, c-format msgid "" "replication slot \"%s\" specified in parameter \"%s\" does not have " "active_pid" msgstr "\"%s\" 복제 슬롯(\"%s\" 설정에 지정된)에 대응하는 active_pid가 없음" -#: replication/slot.c:2688 +#: replication/slot.c:2972 #, c-format msgid "" "Start the standby associated with the replication slot \"%s\", or amend " "parameter \"%s\"." -msgstr "\"%s\" 복제 슬롯과 관계된 대기 서버를 시작하거나, \"%s\" 설정을 바꾸세요." +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 " @@ -23225,7 +24200,7 @@ msgid "" 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 " @@ -23234,204 +24209,206 @@ 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 "\"synchronous_standby_names\" 값을 분석할 수 없음" +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)는 0보다 커야 합니다." -#: replication/walreceiver.c:176 +#: replication/walreceiver.c:276 #, c-format -msgid "terminating walreceiver process due to administrator command" -msgstr "관리자 명령으로 인해 WAL 수신기를 종료합니다." +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 "시간 제한으로 wal 수신기를 중지합니다." -#: replication/walreceiver.c:625 +#: replication/walreceiver.c:605 #, c-format msgid "primary server contains no more WAL on requested timeline %u" msgstr "주 서버에는 요청 받은 %u 타임라인의 WAL가 더 이상 없습니다." -#: 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 "%s WAL 조각 파일을 닫을 수 없음: %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 "%s WAL 조각 파일 쓰기 실패: 위치 %d, 길이 %lu: %m" -#: replication/walsender.c:531 +#: replication/walsender.c:505 #, c-format msgid "cannot use %s with a logical replication slot" msgstr "논리 복제 슬롯으로 %s 사용할 수 없음" -#: replication/walsender.c:635 storage/smgr/md.c:1735 +#: replication/walsender.c:609 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:613 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "\"%s\" 파일에서 시작 위치를 찾을 수 없음: %m" -#: replication/walsender.c:853 +#: replication/walsender.c:829 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "물리적 복제에서 논리적 복제 슬롯을 사용할 수 없음" -#: replication/walsender.c:919 +#: replication/walsender.c:895 #, 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:898 #, 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:942 #, c-format msgid "" "requested starting point %X/%X is ahead of the WAL flush position of this " "server %X/%X" msgstr "%X/%X 위치는 서버의 %X/%X 보다 미래의 것입니다." -#: replication/walsender.c:1160 +#: replication/walsender.c:1137 #, c-format msgid "unrecognized value for CREATE_REPLICATION_SLOT option \"%s\": \"%s\"" msgstr "\"%s\" CREATE_REPLICATION_SLOT 옵션에서 쓸 수 없는 값: \"%s\"" #. translator: %s is a CREATE_REPLICATION_SLOT statement -#: replication/walsender.c:1266 +#: replication/walsender.c:1243 #, 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:1253 #, 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:1259 #, 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:1264 #, 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:1270 #, 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:1276 #, c-format msgid "%s must not be called in a subtransaction" msgstr "%s 명령은 서브트랜잭션 블럭안에서 실행할 수 없음" -#: replication/walsender.c:1472 +#: replication/walsender.c:1453 #, c-format msgid "terminating walsender process after promotion" msgstr "운영전환 뒤 wal 송신기 프로세스를 중지합니다." -#: replication/walsender.c:2000 +#: replication/walsender.c:1996 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "WAL 송신기가 중지 중일 때는 새 명령을 실행할 수 없습니다." -#: replication/walsender.c:2035 +#: replication/walsender.c:2050 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "물리적 복제를 위한 WAL 송신기에서 SQL 명령을 실행할 수 없음" -#: replication/walsender.c:2068 +#: replication/walsender.c:2081 #, 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: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 #, c-format msgid "" "current transaction is aborted, commands ignored until end of transaction " @@ -23440,22 +24417,22 @@ msgstr "" "현재 트랜잭션은 중지되어 있습니다. 이 트랜잭션을 종료하기 전까지는 모든 명령" "이 무시될 것입니다" -#: replication/walsender.c:2233 replication/walsender.c:2268 +#: replication/walsender.c:2249 replication/walsender.c:2284 #, c-format msgid "unexpected EOF on standby connection" msgstr "대기 서버 연결에서 예상치 못한 EOF 발견함" -#: replication/walsender.c:2256 +#: replication/walsender.c:2272 #, c-format msgid "invalid standby message type \"%c\"" msgstr "잘못된 대기 서버 메시지 형태 \"%c\"" -#: replication/walsender.c:2345 +#: replication/walsender.c:2361 #, c-format msgid "unexpected message type \"%c\"" msgstr "예상치 못한 메시지 형태: \"%c\"" -#: replication/walsender.c:2759 +#: replication/walsender.c:2775 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "복제 시간 제한으로 wal 송신기 프로세스를 종료합니다." @@ -23641,14 +24618,14 @@ msgstr " \"%s\" 룰(rule)이 \"%s\" 관계(relation)에 지정된 것이 없음 msgid "renaming an ON SELECT rule is not allowed" msgstr "ON SELECT 룰의 이름 바꾸기는 허용하지 않습니다" -#: rewrite/rewriteHandler.c:588 +#: rewrite/rewriteHandler.c:590 #, c-format msgid "" "WITH query name \"%s\" appears in both a rule action and the query being " "rewritten" msgstr "\"%s\" 이름의 WITH 쿼리가 룰 동작과 쿼리 재작성 두 곳 모두에 보입니다." -#: rewrite/rewriteHandler.c:615 +#: rewrite/rewriteHandler.c:617 #, c-format msgid "" "INSERT ... SELECT rule actions are not supported for queries having data-" @@ -23656,117 +24633,117 @@ msgid "" msgstr "" "INSERT...SELECT 룰 액션에는 WITH 절 안에 자료 변경 구문을 지원하지 않습니다." -#: rewrite/rewriteHandler.c:668 +#: rewrite/rewriteHandler.c:671 #, c-format msgid "cannot have RETURNING lists in multiple rules" msgstr "multiple rule에 RETURNING 목록을 지정할 수 없습니다" -#: rewrite/rewriteHandler.c:900 rewrite/rewriteHandler.c:939 +#: rewrite/rewriteHandler.c:908 rewrite/rewriteHandler.c:947 #, c-format msgid "cannot insert a non-DEFAULT value into column \"%s\"" msgstr "\"%s\" 칼럼에 non-DEFAULT 값을 입력할 수 없습니다" -#: rewrite/rewriteHandler.c:902 rewrite/rewriteHandler.c:968 +#: rewrite/rewriteHandler.c:910 rewrite/rewriteHandler.c:976 #, c-format msgid "Column \"%s\" is an identity column defined as GENERATED ALWAYS." msgstr "\"%s\" 칼럼은 GENERATED ALWAYS 속성의 식별자 칼럼입니다." -#: rewrite/rewriteHandler.c:904 +#: rewrite/rewriteHandler.c:912 #, c-format msgid "Use OVERRIDING SYSTEM VALUE to override." msgstr "이 속성을 무시하려면, OVERRIDING SYSTEM VALUE 옵션을 사용하세요." -#: rewrite/rewriteHandler.c:966 rewrite/rewriteHandler.c:974 +#: rewrite/rewriteHandler.c:974 rewrite/rewriteHandler.c:982 #, c-format msgid "column \"%s\" can only be updated to DEFAULT" msgstr "\"%s\" 칼럼은 DEFAULT 로만 업데이트 가능합니다" -#: rewrite/rewriteHandler.c:1121 rewrite/rewriteHandler.c:1139 +#: rewrite/rewriteHandler.c:1118 rewrite/rewriteHandler.c:1136 #, c-format msgid "multiple assignments to same column \"%s\"" msgstr "같은 \"%s\" 열에 지정값(assignment)이 중복되었습니다" -#: rewrite/rewriteHandler.c:1704 +#: rewrite/rewriteHandler.c:1691 #, c-format msgid "MERGE is not supported for relations with rules." msgstr "MERGE 명령은 룰을 사용하는 릴레이션에서 사용할 수 없습니다." -#: rewrite/rewriteHandler.c:1744 rewrite/rewriteHandler.c:3284 +#: rewrite/rewriteHandler.c:1731 rewrite/rewriteHandler.c:3271 #, c-format msgid "access to non-system view \"%s\" is restricted" msgstr "\"%s\"는 non-system 뷰로 접근이 제한됨" -#: rewrite/rewriteHandler.c:2144 rewrite/rewriteHandler.c:4276 +#: rewrite/rewriteHandler.c:2130 rewrite/rewriteHandler.c:4265 #, c-format msgid "infinite recursion detected in rules for relation \"%s\"" msgstr "" "\"%s\" 릴레이션(relation)에서 지정된 룰에서 잘못된 재귀호출이 발견되었습니다" -#: rewrite/rewriteHandler.c:2249 +#: rewrite/rewriteHandler.c:2235 #, c-format msgid "infinite recursion detected in policy for relation \"%s\"" msgstr "\"%s\" 릴레이션의 정책에서 무한 재귀 호출이 발견 됨" -#: rewrite/rewriteHandler.c:2611 +#: rewrite/rewriteHandler.c:2598 msgid "Junk view columns are not updatable." msgstr "정크 뷰 칼럼은 업데이트할 수 없습니다." -#: rewrite/rewriteHandler.c:2616 +#: rewrite/rewriteHandler.c:2603 msgid "" "View columns that are not columns of their base relation are not updatable." msgstr "" "뷰의 바탕이 되는 릴레이션의 칼럼이 아닌 뷰 칼럼은 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2619 +#: rewrite/rewriteHandler.c:2606 msgid "View columns that refer to system columns are not updatable." msgstr "시스템 칼럼이 원본인 뷰 칼럼은 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2622 +#: rewrite/rewriteHandler.c:2609 msgid "View columns that return whole-row references are not updatable." msgstr "로우 전체를 참조하는 뷰 칼럼은 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2683 +#: rewrite/rewriteHandler.c:2670 msgid "Views containing DISTINCT are not automatically updatable." msgstr "DISTINCT 조건이 있는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2686 +#: rewrite/rewriteHandler.c:2673 msgid "Views containing GROUP BY are not automatically updatable." msgstr "GROUP BY 절이 있는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2689 +#: rewrite/rewriteHandler.c:2676 msgid "Views containing HAVING are not automatically updatable." msgstr "HAVING 절이 있는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2692 +#: rewrite/rewriteHandler.c:2679 msgid "" "Views containing UNION, INTERSECT, or EXCEPT are not automatically updatable." msgstr "" "UNION, INTERSECT, EXCEPT를 포함하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2695 +#: rewrite/rewriteHandler.c:2682 msgid "Views containing WITH are not automatically updatable." msgstr "WITH 절을 포함하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2698 +#: rewrite/rewriteHandler.c:2685 msgid "Views containing LIMIT or OFFSET are not automatically updatable." msgstr "" "LIMIT 또는 OFFSET 구문을 포함하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2710 +#: rewrite/rewriteHandler.c:2697 msgid "Views that return aggregate functions are not automatically updatable." msgstr "집계 함수를 반환하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2713 +#: rewrite/rewriteHandler.c:2700 msgid "Views that return window functions are not automatically updatable." msgstr "윈도우 함수를 반환하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2716 +#: rewrite/rewriteHandler.c:2703 msgid "" "Views that return set-returning functions are not automatically updatable." msgstr "집합 반환 함수를 반환하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2723 rewrite/rewriteHandler.c:2727 -#: rewrite/rewriteHandler.c:2735 +#: rewrite/rewriteHandler.c:2710 rewrite/rewriteHandler.c:2714 +#: rewrite/rewriteHandler.c:2722 msgid "" "Views that do not select from a single table or view are not automatically " "updatable." @@ -23774,20 +24751,20 @@ msgstr "" "단일 테이블 또는 단일 뷰를 SELECT 하지 않는 뷰는 자동으로 업데이트 될 수 없습" "니다." -#: rewrite/rewriteHandler.c:2738 +#: rewrite/rewriteHandler.c:2725 msgid "Views containing TABLESAMPLE are not automatically updatable." msgstr "TABLESAMPLE 구문을 포함하는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:2762 +#: rewrite/rewriteHandler.c:2749 msgid "Views that have no updatable columns are not automatically updatable." msgstr "업데이트 가능한 칼럼이 없는 뷰는 자동으로 업데이트 될 수 없습니다." -#: rewrite/rewriteHandler.c:3143 rewrite/rewriteHandler.c:3178 +#: rewrite/rewriteHandler.c:3130 rewrite/rewriteHandler.c:3165 #, c-format msgid "cannot insert into view \"%s\"" msgstr "\"%s\" 뷰에 자료를 입력할 수 없습니다" -#: rewrite/rewriteHandler.c:3146 +#: rewrite/rewriteHandler.c:3133 #, c-format msgid "" "To enable inserting into the view, provide an INSTEAD OF INSERT trigger or " @@ -23796,12 +24773,12 @@ msgstr "" "뷰를 통해 자료를 입력하려면, INSTEAD OF INSERT 트리거나 ON INSERT DO INSTEAD " "룰을 사용하세요" -#: rewrite/rewriteHandler.c:3151 rewrite/rewriteHandler.c:3187 +#: rewrite/rewriteHandler.c:3138 rewrite/rewriteHandler.c:3174 #, c-format msgid "cannot update view \"%s\"" msgstr "\"%s\" 뷰로는 자료를 갱신할 수 없습니다" -#: rewrite/rewriteHandler.c:3154 +#: rewrite/rewriteHandler.c:3141 #, c-format msgid "" "To enable updating the view, provide an INSTEAD OF UPDATE trigger or an " @@ -23810,12 +24787,12 @@ msgstr "" "뷰 자료 갱신 기능은 INSTEAD OF UPDATE 트리거를 사용하거나, ON UPDATE DO " "INSTEAD 속성으로 룰을 만들어서 사용해 보세요." -#: rewrite/rewriteHandler.c:3159 rewrite/rewriteHandler.c:3196 +#: rewrite/rewriteHandler.c:3146 rewrite/rewriteHandler.c:3183 #, c-format msgid "cannot delete from view \"%s\"" msgstr "\"%s\" 뷰로는 자료를 삭제할 수 없습니다" -#: rewrite/rewriteHandler.c:3162 +#: rewrite/rewriteHandler.c:3149 #, c-format msgid "" "To enable deleting from the view, provide an INSTEAD OF DELETE trigger or an " @@ -23824,72 +24801,74 @@ msgstr "" "뷰 자료 삭제 기능은 INSTEAD OF DELETE 트리거를 사용하거나, ON DELETE DO " "INSTEAD 속성으로 룰을 만들어서 사용해 보세요." -#: rewrite/rewriteHandler.c:3181 +#: rewrite/rewriteHandler.c:3168 #, c-format msgid "" "To enable inserting into the view using MERGE, provide an INSTEAD OF INSERT " "trigger." -msgstr "뷰를 통해 자료를 입력하려면, MERGE나 INSTEAD OF INSERT 트리거를 사용하세요" +msgstr "" +"뷰를 통해 자료를 입력하려면, MERGE나 INSTEAD OF INSERT 트리거를 사용하세요" -#: rewrite/rewriteHandler.c:3190 +#: rewrite/rewriteHandler.c:3177 #, c-format msgid "" "To enable updating the view using MERGE, provide an INSTEAD OF UPDATE " "trigger." -msgstr "뷰를 통해 자료를 변경하려면, MERGE나 INSTEAD OF INSERT 트리거를 사용하세요" +msgstr "" +"뷰를 통해 자료를 변경하려면, MERGE나 INSTEAD OF INSERT 트리거를 사용하세요" -#: rewrite/rewriteHandler.c:3199 +#: rewrite/rewriteHandler.c:3186 #, c-format msgid "" "To enable deleting from the view using MERGE, provide an INSTEAD OF DELETE " "trigger." -msgstr "뷰를 통해 자료를 삭제하려면, MERGE나 INSTEAD OF INSERT 트리거를 사용하세요" +msgstr "" +"뷰를 통해 자료를 삭제하려면, MERGE나 INSTEAD OF INSERT 트리거를 사용하세요" -#: rewrite/rewriteHandler.c:3374 +#: rewrite/rewriteHandler.c:3361 #, c-format msgid "cannot insert into column \"%s\" of view \"%s\"" msgstr "\"%s\" 칼럼 (해당 뷰: \"%s\")에 자료를 입력할 수 없습니다" -#: rewrite/rewriteHandler.c:3382 +#: rewrite/rewriteHandler.c:3369 #, c-format msgid "cannot update column \"%s\" of view \"%s\"" msgstr "\"%s\" 칼럼 (해당 뷰: \"%s\")에 자료를 갱신할 수 없습니다" -#: rewrite/rewriteHandler.c:3390 +#: rewrite/rewriteHandler.c:3377 #, c-format msgid "cannot merge into column \"%s\" of view \"%s\"" msgstr "\"%s\" 칼럼 (해당 뷰: \"%s\")에 병합할 수 없음" -#: rewrite/rewriteHandler.c:3418 +#: rewrite/rewriteHandler.c:3405 #, c-format msgid "cannot merge into view \"%s\"" msgstr "\"%s\" 뷰에 병합할 수 없음" -#: rewrite/rewriteHandler.c:3420 +#: rewrite/rewriteHandler.c:3407 #, c-format msgid "" "MERGE is not supported for views with INSTEAD OF triggers for some actions " "but not all." -msgstr "" -"MERGE 명령은 몇몇 action용 INSTEAD OF 트리거가 있는 뷰를 지원하지 않음" +msgstr "MERGE 명령은 몇몇 action용 INSTEAD OF 트리거가 있는 뷰를 지원하지 않음" -#: rewrite/rewriteHandler.c:3421 +#: rewrite/rewriteHandler.c:3408 #, 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 트리거를 삭제하세요" +"뷰에 병합을 활성화하려면 INSTEAD OF 트리거의 전체 세트를 제공하거나 기존 " +"INSTEAD OF 트리거를 삭제하세요" -#: rewrite/rewriteHandler.c:3934 +#: rewrite/rewriteHandler.c:3923 #, c-format msgid "" "DO INSTEAD NOTIFY rules are not supported for data-modifying statements in " "WITH" msgstr "DO INSTEAD NOTIFY 룰에서는 WITH 절 안에 자료 변경 구문이 없어야 합니다" -#: rewrite/rewriteHandler.c:3945 +#: rewrite/rewriteHandler.c:3934 #, c-format msgid "" "DO INSTEAD NOTHING rules are not supported for data-modifying statements in " @@ -23897,19 +24876,19 @@ msgid "" msgstr "" "DO INSTEAD NOTHING 룰에서는 WITH 절 안에 자료 변경 구문이 없어야 합니다" -#: rewrite/rewriteHandler.c:3959 +#: rewrite/rewriteHandler.c:3948 #, c-format msgid "" "conditional DO INSTEAD rules are not supported for data-modifying statements " "in WITH" msgstr "선택적 DO INSTEAD 룰에서는 WITH 절 안에 자료 변경 구문이 없어야 합니다" -#: rewrite/rewriteHandler.c:3963 +#: rewrite/rewriteHandler.c:3952 #, c-format msgid "DO ALSO rules are not supported for data-modifying statements in WITH" msgstr "DO ALSO 룰에서는 WITH 절 안에 자료 변경 구문이 없어야 합니다" -#: rewrite/rewriteHandler.c:3968 +#: rewrite/rewriteHandler.c:3957 #, c-format msgid "" "multi-statement DO INSTEAD rules are not supported for data-modifying " @@ -23918,18 +24897,18 @@ msgstr "" "여러 구문으로 구성된 DO INSTEAD 룰에서는 WITH 절 안에 자료 변경 구문이 없어" "야 합니다" -#: rewrite/rewriteHandler.c:4228 +#: rewrite/rewriteHandler.c:4217 msgid "" "Views with conditional DO INSTEAD rules are not automatically updatable." msgstr "" "선택적 DO INSTEAD 룰을 포함한 뷰는 자동 업데이트 기능을 사용할 수 없습니다." -#: rewrite/rewriteHandler.c:4325 +#: rewrite/rewriteHandler.c:4314 #, c-format msgid "cannot perform INSERT RETURNING on relation \"%s\"" msgstr "\"%s\" 릴레이션에서 INSERT RETURNING 관련을 구성할 수 없음" -#: rewrite/rewriteHandler.c:4327 +#: rewrite/rewriteHandler.c:4316 #, c-format msgid "" "You need an unconditional ON INSERT DO INSTEAD rule with a RETURNING clause." @@ -23937,12 +24916,12 @@ msgstr "" "RETURNING 절에서는 무조건 ON INSERT DO INSTEAD 속성으로 rule이 사용되어야 합" "니다." -#: rewrite/rewriteHandler.c:4332 +#: rewrite/rewriteHandler.c:4321 #, c-format msgid "cannot perform UPDATE RETURNING on relation \"%s\"" msgstr "\"%s\" 릴레이션에서 UPDATE RETURNING 관련을 구성할 수 없습니다." -#: rewrite/rewriteHandler.c:4334 +#: rewrite/rewriteHandler.c:4323 #, c-format msgid "" "You need an unconditional ON UPDATE DO INSTEAD rule with a RETURNING clause." @@ -23950,12 +24929,12 @@ msgstr "" "RETURNING 절에서는 무조건 ON UPDATE DO INSTEAD 속성으로 rule이 사용되어야 합" "니다." -#: rewrite/rewriteHandler.c:4339 +#: rewrite/rewriteHandler.c:4328 #, c-format msgid "cannot perform DELETE RETURNING on relation \"%s\"" msgstr "\"%s\" 릴레이션에서 DELETE RETURNING 관련을 구성할 수 없습니다." -#: rewrite/rewriteHandler.c:4341 +#: rewrite/rewriteHandler.c:4330 #, c-format msgid "" "You need an unconditional ON DELETE DO INSTEAD rule with a RETURNING clause." @@ -23963,7 +24942,7 @@ msgstr "" "TURNING 절에서는 무조건 ON DELETE DO INSTEAD 속성으로 rule이 사용되어야 합니" "다" -#: rewrite/rewriteHandler.c:4359 +#: rewrite/rewriteHandler.c:4348 #, c-format msgid "" "INSERT with ON CONFLICT clause cannot be used with table that has INSERT or " @@ -23972,7 +24951,7 @@ msgstr "" "INSERT 또는 UPDATE 룰이 지정된 테이블을 대상으로 INSERT ... ON CONFLICT 구문" "은 사용할 수 없습니다." -#: rewrite/rewriteHandler.c:4416 +#: rewrite/rewriteHandler.c:4405 #, c-format msgid "" "WITH cannot be used in a query that is rewritten by rules into multiple " @@ -23981,19 +24960,19 @@ msgstr "" "WITH 절은 다중 쿼리 작업을 하는 룰로 재작성되는 쿼리 안에서는 사용할 수 없습" "니다." -#: rewrite/rewriteManip.c:1083 +#: rewrite/rewriteManip.c:1178 #, c-format msgid "conditional utility statements are not implemented" msgstr "" "조건 유틸리티 명령 구문(conditional utility statement)은 구현되어있지 않습니" "다" -#: rewrite/rewriteManip.c:1430 +#: rewrite/rewriteManip.c:1523 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "뷰에 대한 WHERE CURRENT OF 구문이 구현되지 않음" -#: rewrite/rewriteManip.c:1765 +#: rewrite/rewriteManip.c:1926 #, c-format msgid "" "NEW variables in ON UPDATE rules cannot reference columns that are part of a " @@ -24011,33 +24990,90 @@ msgstr "" "재귀 호출을 이용하는 \"%s\" WITH 쿼리를 SEARCH 또는 CYCLE 절과 함께 쓸 때는 " "오른편 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 "\"%s\" 언어 및 \"%s\" 인코딩에 사용 가능한 Snowball stemmer가 없음" -#: 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 "여러 개의 언어 매개 변수가 있음" -#: 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:191 statistics/attribute_stats.c:935 +#: statistics/relation_stats.c:98 +#, c-format +msgid "Statistics cannot be modified during recovery." +msgstr "통계 정보는 복구 중에는 변경될 수 없습니다." + +#: statistics/attribute_stats.c:202 +#, c-format +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "%s, %s 함께 지정할 수 없음" + +#: statistics/attribute_stats.c:228 +#, c-format +msgid "must specify either \"%s\" or \"%s\"" +msgstr "%s, %s 둘 중 하나만 지정해야 함" + +#: statistics/attribute_stats.c:236 +#, c-format +msgid "cannot modify statistics on system column \"%s\"" +msgstr "시스템 열 \"%s\"에 대한 통계 정보는 변경할 수 없음" + +#: statistics/attribute_stats.c:300 +#, c-format +msgid "could not determine element type of column \"%s\"" +msgstr "\"%s\" 칼럼의 자료형을 알수가 없음" + +#: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 +#: statistics/attribute_stats.c:333 +#, c-format +msgid "Cannot set %s or %s." +msgstr "%s 또는 %s 로 설정할 수 없습니다." + +#: statistics/attribute_stats.c:317 +#, c-format +msgid "could not determine less-than operator for column \"%s\"" +msgstr "\"%s\" 칼럼용 작다 연산자를 결정할 수 없음" + +#: statistics/attribute_stats.c:332 +#, c-format +msgid "column \"%s\" is not a range type" +msgstr "\"%s\" 칼럼은 범위 자료형이 아님" + +#: statistics/attribute_stats.c:735 +#, c-format +msgid "\"%s\" array must not contain null values" +msgstr "\"%s\" 배열에는 null 값을 포함할 수 없습니다" + +#: statistics/attribute_stats.c:778 +#, c-format +msgid "maximum number of statistics slots exceeded: %d" +msgstr "통계 슬롯 수가 최대치를 초과함: %d" + +#: statistics/attribute_stats.c:945 +#, 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\"" @@ -24049,60 +25085,229 @@ msgid "" "function returning record called in context that cannot accept type record" msgstr "반환 자료형이 record인데 함수가 그 자료형으로 반환하지 않음" -#: storage/buffer/bufmgr.c:649 storage/buffer/bufmgr.c:805 +#: statistics/relation_stats.c:115 #, 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 이상 커야 함" + +#: statistics/stat_utils.c:44 +#, c-format +msgid "argument \"%s\" must not be null" +msgstr "\"%s\" 인자는 null이면 안됨" + +#: statistics/stat_utils.c:71 +#, c-format +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "\"%s\" 인자는 1차원 배열이어야 함" + +#: statistics/stat_utils.c:80 +#, c-format +msgid "argument \"%s\" array must not contain null values" +msgstr "\"%s\" 인자의 배열에는 null 값을 포함할 수 없습니다" + +#: statistics/stat_utils.c:111 +#, c-format +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "\"%s\" 인자 지정이 필요함, \"%s\" 인자를 지정했기 때문" + +#: statistics/stat_utils.c:178 +#, c-format +msgid "cannot modify statistics for relation \"%s\"" +msgstr "\"%s\" 릴레이션용 통계정보를 바꿀 수 없음" + +#: statistics/stat_utils.c:199 +#, c-format +msgid "cannot modify statistics for shared relation" +msgstr "공용 릴레이션 통계정보를 바꿀 수 없음" -#: storage/buffer/bufmgr.c:1532 +#: statistics/stat_utils.c:252 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" +msgid "unrecognized argument name: \"%s\"" +msgstr "알 수 없는 인자 이름: \"%s\"" + +#: statistics/stat_utils.c:266 +#, c-format +msgid "argument \"%s\" has type %s, expected type %s" +msgstr "\"%s\" 인자는 %s 자료형임(기대 자료형: %s)" + +#: statistics/stat_utils.c:307 +#, c-format +msgid "variadic arguments must be name/value pairs" +msgstr "가변 인자는 이름/값 쌍으로 지정해야 함" + +#: statistics/stat_utils.c:308 +#, c-format +msgid "" +"Provide an even number of variadic arguments that can be divided into pairs." +msgstr "짝수로 나눠지도록 짝지어 지정해 주세요." + +#: statistics/stat_utils.c:322 +#, c-format +msgid "name at variadic position %d is null" +msgstr "%d 번째 가변 인자 이름이 없음" + +#: statistics/stat_utils.c:326 +#, c-format +msgid "name at variadic position %d has type %s, expected type %s" +msgstr "%d 번째 가변 인자의 자료형이 %s임, 기대 자료형: %s" + +#: storage/aio/aio.c:1340 +#, 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 "" -"%u 블록(해당 릴레이션: %s)에 잘못된 페이지 헤더가 있음, 페이지를 삭제하는 중" +"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/buffer/bufmgr.c:2277 storage/buffer/localbuf.c:361 +#: 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 "%d 프로세스 대신해서 I/O 작업을 완료 하는 중" + +#: storage/aio/method_worker.c:382 +#, c-format +msgid "I/O worker executing I/O on behalf of process %d" +msgstr "%d 프로세스를 대신해서 I/O 작업자가 I/O 작업을 하는 중" + +#: 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 "%u 블록(해당 릴레이션: %s)에 EOF 범위를 넘는 예기치 않은 데이터가 있음" +msgid "unexpected data beyond EOF in block %u of relation \"%s\"" +msgstr "" +"%u 블록(해당 릴레이션: \"%s\")에 EOF 범위를 넘는 예기치 않은 데이터가 있음" -#: 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:7313 +#, 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:7316 storage/buffer/bufmgr.c:7344 +#, c-format +msgid "Block %u held the first zeroed page." +msgstr "첫번째로 비운 페이지는 %u 블록입니다." + +#: storage/buffer/bufmgr.c:7318 +#, 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 개의 잘못된 블록 정보는 서버 로그를 참조하십시오." + +#: storage/buffer/bufmgr.c:7335 +#, c-format +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "" +"%u개의 잘못된 페이지가 있음: 해당 블록 범위: %u..%u, 해당 릴레이션: \"%s\"" + +#: storage/buffer/bufmgr.c:7336 +#, c-format +msgid "Block %u held the first invalid page." +msgstr "%u 번째 블록이 잘못된 페이지 가운데 첫페이지입니다." + +#: storage/buffer/bufmgr.c:7337 +#, c-format +msgid "See server log for the other %u invalid block(s)." +msgstr "나머지 %u 개의 잘못된 블록 정보는 서버 로그를 참조하세요." + +#: storage/buffer/bufmgr.c:7342 +#, c-format +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "" +"%u 블록(해당 릴레이션: \"%s\")에 잘못된 페이지가 있음, 페이지를 삭제하는 중" + +#: storage/buffer/bufmgr.c:7343 #, 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/bufmgr.c:7345 +#, c-format +msgid "See server log for the other %u zeroed block(s)." +msgstr "나머지 %u 개의 삭제 처리한 블록에 대한 것은 서버 로그를 참조하세요." + +#: storage/buffer/bufmgr.c:7350 +#, c-format +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "%u 블록(해당 릴레이션: \"%s\")에 잘못된 체크섬을 무시 하는 중" + +#: storage/buffer/bufmgr.c:7351 +#, c-format +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "" +"%u개의 체크섬 무시를 하는 중, 해당 블록 범위: %u..%u, 해당 릴레이션: \"%s\"" -#: storage/buffer/localbuf.c:220 +#: storage/buffer/bufmgr.c:7352 +#, c-format +msgid "Block %u held the first ignored page." +msgstr "무시한 페이지의 첫번째는 %u 블록입니다." + +#: storage/buffer/bufmgr.c:7353 +#, 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 " @@ -24126,43 +25331,48 @@ msgstr "\"%s\" 파일 세트를 읽을 수 없음: %zu 바이트만 읽음 (전 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\" 임시 파일의 크기를 알 수 없음, 버퍼파일: \"%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:1194 +#: 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\" 파일로 clone 작업을 할 수 없음: %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 "dirty 자료를 flush 할 수 없음: %m" -#: storage/file/fd.c:613 +#: storage/file/fd.c:610 #, c-format msgid "could not determine dirty data size: %m" msgstr "dirty 자료 크기를 확인할 수 없음: %m" -#: storage/file/fd.c:665 +#: storage/file/fd.c:662 #, c-format msgid "could not munmap() while flushing data: %m" msgstr "자료 flush 작업 도중 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 "" @@ -24170,86 +25380,86 @@ 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 (%dkB)를 초과했습니다" +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, 현재 경로: %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: " @@ -24257,40 +25467,37 @@ msgid "" msgstr "" "데이터 디렉터리 동기화(pre-fsync), 소요 시간: %ld.%02d s, 현재 경로: %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, 현재 경로: %s" -#: storage/file/fd.c:3950 +#: storage/file/fd.c:4012 #, c-format -msgid "\"debug_io_direct\" is not supported on this platform." -msgstr "\"debug_io_direct\" 설정은 이 플랫폼에서 지원되지 않음" +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 "\"%s\" 매개 변수의 값으로 목록 문법이 잘못됨" +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 "" -"XLOG_BLCKSZ 값이 너무 작은 WAL을 사용하고 있어 \"debug_io_direct\" 기능을 지원하" -"지 않습니다." +msgid "\"%s\" is not supported for WAL because %s is too small." +msgstr "WAL을 위한 \"%s\" 설정을 지원하지 않습니다, 이유: %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 "BLCKSZ 값이 너무 작아 \"debug_io_direct\" 기능을 지원하지 않습니다." +msgid "\"%s\" is not supported for data because %s is too small." +msgstr "" +"데이터를 위한 \"%s\" 설정은 지원하지 않습니다, 이유: %s 값이 너무 적음." #: storage/file/reinit.c:145 #, c-format @@ -24403,24 +25610,25 @@ msgstr "DSM 조각 크기는 0이 아니여야 함" msgid "requested DSM segment size does not match size of existing segment" msgstr "요청된 DSM 조각 크기는 기존 조각 크기와 맞지 않음" -#: storage/ipc/procarray.c:488 storage/lmgr/proc.c:357 -#: 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 " @@ -24428,19 +25636,34 @@ msgid "" 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 "" "%d PID 백엔드 프로세스가 ProcSignalBarrier 작업을 수락하기를 기다리고 있음" +#: 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" @@ -24451,12 +25674,12 @@ msgstr "공유 메모리 큐를 통해 %zu 크기의 메시지를 보낼 수 없 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:2835 storage/lmgr/lock.c:4220 -#: storage/lmgr/lock.c:4285 storage/lmgr/lock.c:4635 -#: storage/lmgr/predicate.c:2468 storage/lmgr/predicate.c:2483 -#: storage/lmgr/predicate.c:3880 storage/lmgr/predicate.c:4927 -#: 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 "공유 메모리 부족" @@ -24490,23 +25713,24 @@ msgstr "\"%s\" 자료 구조체용 공유 메모리가 부족함 (%zu 바이트 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:1453 -#: 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 프로세스로 시스템신호(signal)를 보낼 수 없습니다: %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 " @@ -24514,250 +25738,266 @@ msgid "" 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 "autovacuum 작업자의 작업을 취소하려면, \"%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 "%d PID 백엔드 프로세스의 존재를 확인할 수 없음: %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] "%d PID 백엔드 프로세스를 %lld ms 내에 종료하지 못했음" +msgid "backend with PID %d did not terminate within % millisecond" +msgid_plural "" +"backend with PID %d did not terminate within % milliseconds" +msgstr[0] "%d PID 백엔드 프로세스를 % ms 내에 종료하지 못했음" -#: 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 "" +"autovacuum 작업자의 작업을 끝내려면, \"%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 ms 기다린 뒤에도 여전히 복구 중: %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 ms 기다려서 복구 완료: %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 "" "OID %u (해당 페이지 %d) 를 위한 pg_largeobject 항목의 %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 "deadlock 발생했음" -#: 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 "데이터베이스 %u의 pg_database.datfrozenxid" -#: 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 "user lock [%u,%u,%u]" -#: storage/lmgr/lmgr.c:1303 +#: storage/lmgr/lmgr.c:1319 #, c-format msgid "advisory lock [%u,%u,%u,%u]" msgstr "advisory lock [%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 "알 수 없는 locktag 형태 %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 " @@ -24766,7 +26006,12 @@ msgstr "" "복구 중에는 해당 객체를 RowExclusiveLock 또는 그 보다 낮은 수준의 잠금만 할 " "수 있습니다." -#: storage/lmgr/lock.c:3284 storage/lmgr/lock.c:3352 storage/lmgr/lock.c:3468 +#: 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 " @@ -24785,7 +26030,8 @@ msgstr "읽기/쓰기 충돌을 기록하기 위한 RWConflictPool 안에 충분 msgid "" "You might need to run fewer transactions at a time or increase " "\"max_connections\"." -msgstr "동시 발생하는 트랜잭션 수를 줄이든가, \"max_connections\" 값을 늘리세요." +msgstr "" +"동시 발생하는 트랜잭션 수를 줄이든가, \"max_connections\" 값을 늘리세요." #: storage/lmgr/predicate.c:678 #, c-format @@ -24796,13 +26042,13 @@ msgstr "" "필수적인 읽기/쓰기 충돌을 기록하기 위한 RWConflictPool 안에 충분한 요소가 없" "음" -#: storage/lmgr/predicate.c:1686 +#: storage/lmgr/predicate.c:1696 #, c-format msgid "\"default_transaction_isolation\" is set to \"serializable\"." msgstr "" "\"default_transaction_isolation\" 설정값이 \"serializable\"로 지정되었습니다." -#: storage/lmgr/predicate.c:1687 +#: storage/lmgr/predicate.c:1697 #, c-format msgid "" "You can use \"SET default_transaction_isolation = 'repeatable read'\" to " @@ -24811,50 +26057,50 @@ msgstr "" "이 기본값은 \"SET default_transaction_isolation = 'repeatable read'\" 명령으" "로 바꿀 수 있습니다." -#: storage/lmgr/predicate.c:1738 +#: 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:1817 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:1818 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 "%d PID 소스 프로세스는 더이상 실행 중이지 않습니다." -#: storage/lmgr/predicate.c:3991 storage/lmgr/predicate.c:4027 -#: storage/lmgr/predicate.c:4060 storage/lmgr/predicate.c:4068 -#: storage/lmgr/predicate.c:4107 storage/lmgr/predicate.c:4337 -#: storage/lmgr/predicate.c:4656 storage/lmgr/predicate.c:4668 -#: storage/lmgr/predicate.c:4715 storage/lmgr/predicate.c:4751 +#: 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 "트랜잭션간 읽기/쓰기 의존성 때문에 serialize 접근을 할 수 없음" -#: storage/lmgr/predicate.c:3993 storage/lmgr/predicate.c:4029 -#: storage/lmgr/predicate.c:4062 storage/lmgr/predicate.c:4070 -#: storage/lmgr/predicate.c:4109 storage/lmgr/predicate.c:4339 -#: storage/lmgr/predicate.c:4658 storage/lmgr/predicate.c:4670 -#: storage/lmgr/predicate.c:4717 storage/lmgr/predicate.c:4753 +#: 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:353 +#: storage/lmgr/proc.c:453 #, c-format msgid "" -"number of requested standby connections exceeds \"max_wal_senders\" " -"(currently %d)" +"number of requested standby connections exceeds \"max_wal_senders" +"\" (currently %d)" msgstr "대기 서버 연결 수가 \"max_wal_senders\" 설정값(현재 %d)을 초과했습니다" -#: storage/lmgr/proc.c:1546 +#: storage/lmgr/proc.c:1591 #, c-format msgid "" "process %d avoided deadlock for %s on %s by rearranging queue order after " @@ -24863,211 +26109,244 @@ msgstr "" "%d PID 프로세스는 %s(%s)에 대해 교착 상태가 발생하지 않도록 %ld.%03dms 후에 " "대기열 순서를 다시 조정함" -#: storage/lmgr/proc.c:1561 +#: storage/lmgr/proc.c:1606 #, c-format msgid "" "process %d detected deadlock while waiting for %s on %s after %ld.%03d ms" msgstr "%d PID 프로세스에서 %s(%s) 대기중 %ld.%03dms 후에 교착 상태를 감지함" -#: storage/lmgr/proc.c:1570 +#: storage/lmgr/proc.c:1615 #, c-format msgid "process %d still waiting for %s on %s after %ld.%03d ms" msgstr "%d PID 프로세스에서 여전히 %s(%s) 작업을 기다리고 있음(%ld.%03dms 후)" -#: storage/lmgr/proc.c:1577 +#: storage/lmgr/proc.c:1622 #, c-format msgid "process %d acquired %s on %s after %ld.%03d ms" msgstr "%d PID 프로세스가 %s(%s) 작업을 위해 잠금 취득함(%ld.%03dms 후)" -#: storage/lmgr/proc.c:1594 +#: 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.%03dms 후)" -#: 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 "FileFallocate() 함수로 \"%s\" 파일을 확장할 수 없음: %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:1165 +#: 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:1220 +#: 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:1700 +#: 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:1714 +#: 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 "접속 수락: host=%s port=%s" -#: tcop/backend_startup.c:213 +#: tcop/backend_startup.c:231 #, c-format msgid "connection received: host=%s" msgstr "접속 수락: host=%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 "스냅샷 복구는 아직 hot 대기서버에서 준비되지 않았습니다." -#: 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 "" +"hot 대기서버가 활성화되려면, 주 서버에서 %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 "" -"수신된 직접 SSL 연결은 ALPN 프로토콜 채결 확장 없이 요청되었음" +msgstr "수신된 직접 SSL 연결은 ALPN 프로토콜 채결 확장 없이 요청되었음" -#: tcop/backend_startup.c:420 +#: tcop/backend_startup.c:459 #, c-format msgid "direct SSL connection accepted" msgstr "직접 SSL 연결 수락됨" -#: tcop/backend_startup.c:430 +#: tcop/backend_startup.c:469 #, c-format msgid "direct SSL connection rejected" 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 "SSLRequest 수락됨" -#: tcop/backend_startup.c:576 +#: tcop/backend_startup.c:600 #, c-format msgid "SSLRequest rejected" 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-" @@ -25076,130 +26355,148 @@ msgstr "" "이 현상은 클라이언트 소프트웨어 버그이거나, 중간자 공격으로 발생했을 것입니" "다." -#: tcop/backend_startup.c:627 +#: tcop/backend_startup.c:651 #, c-format msgid "GSSENCRequest accepted" msgstr "GSSENCRequest 수락됨" -#: tcop/backend_startup.c:630 +#: tcop/backend_startup.c:654 #, c-format msgid "GSSENCRequest rejected" 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 "" "지원하지 않는 frontend 프로토콜 %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 "fastpath 인터페이스를 이용한 \"%s\" 함수 호출 실패" -#: 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 ms" -#: tcop/fastpath.c:317 +#: tcop/fastpath.c:316 #, c-format msgid "duration: %s ms fastpath function call: \"%s\" (OID %u)" msgstr "작업시간: %s ms 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 "잘못된 frontend 메시지 형태 %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 ms 명령 구문: %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 ms %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 "이름없는 준비된 명령 구문(unnamed prepared statement) 없음" -#: tcop/postgres.c:1729 +#: tcop/postgres.c:1723 #, c-format msgid "bind message has %d parameter formats but %d parameters" msgstr "바인드 메시지는 %d 매개 변수 형태지만, %d 매개 변수여야함" -#: tcop/postgres.c:1735 +#: tcop/postgres.c:1729 #, c-format msgid "" "bind message supplies %d parameters, but prepared statement \"%s\" requires " @@ -25208,115 +26505,115 @@ msgstr "" "바인드 메시지는 %d개의 매개 변수를 지원하지만, \"%s\" 준비된 명령 구문" "(prepared statement)에서는%d 개의 매개 변수가 필요합니다" -#: tcop/postgres.c:1949 +#: tcop/postgres.c:1943 #, c-format msgid "incorrect binary data format in bind parameter %d" msgstr "바인드 매개 변수 %d 안에 잘못된 바이너리 자료 형태가 있음" -#: tcop/postgres.c:2076 +#: tcop/postgres.c:2082 #, c-format msgid "duration: %s ms bind %s%s%s: %s" msgstr "실행시간: %s ms %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\" portal 없음" -#: 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 ms %s %s%s%s: %s" -#: tcop/postgres.c:2486 +#: tcop/postgres.c:2502 #, c-format msgid "prepare: %s" msgstr "prepare: %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 " @@ -25327,24 +26624,24 @@ 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 "immediate 종료 명령으로 연결을 끝냅니다" -#: 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-" @@ -25353,108 +26650,88 @@ msgstr "" "잘못된 부동소수점 작업이 감지 되었습니다. 이것은 아마도 결과값 범위초과나 0으" "로 나누는 작업과 같은 잘못된 연산 때문에 발생한 것 같습니다" -#: 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 "관리자 명령으로 인해 WAL 수신기를 종료합니다." + +#: 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 "idle-in-transaction 시간 초과로 연결을 끝냅니다" -#: tcop/postgres.c:3461 +#: tcop/postgres.c:3499 #, c-format msgid "terminating connection due to transaction timeout" msgstr "트랜잭션 시간(transaction_timeout) 초과로 연결을 끝냅니다" -#: tcop/postgres.c:3474 +#: tcop/postgres.c:3512 #, c-format msgid "terminating connection due to idle-session timeout" msgstr "idle-session 시간 초과로 연결을 끝냅니다" -#: tcop/postgres.c:3564 -#, c-format -msgid "stack depth limit exceeded" -msgstr "스택 깊이를 초과했습니다" - -#: tcop/postgres.c:3565 +#: tcop/postgres.c:3548 #, c-format -msgid "" -"Increase the configuration parameter \"max_stack_depth\" (currently %dkB), " -"after ensuring the platform's stack depth limit is adequate." +msgid "\"client_connection_check_interval\" must be set to 0 on this platform." msgstr "" -"먼저 OS에서 지원하는 스택 depth 최대값을 확인한 뒤, 허용범위 안에서 " -"\"max_stack_depth\" (현재값: %dkB) 매개 변수 값의 설정치를 증가시키세요." +"이 플랫폼에서는 \"client_connection_check_interval\" 값은 0 이어야 합니다." -#: tcop/postgres.c:3612 +#: tcop/postgres.c:3569 #, c-format -msgid "\"max_stack_depth\" must not exceed %ldkB." -msgstr "\"max_stack_depth\" 값은 %ldkB를 초과할 수 없습니다" +msgid "Cannot enable parameter when \"log_statement_stats\" is true." +msgstr "\"log_statement_stats\" 값이 true 일 때는 이 값을 활성화할 수 없습니다" -#: tcop/postgres.c:3614 -#, c-format -msgid "" -"Increase the platform's stack depth limit via \"ulimit -s\" or local " -"equivalent." -msgstr "OS의 \"ulimit -s\" 명령과 같은 것으로 스택 깊이를 늘려주십시오." - -#: tcop/postgres.c:3637 -#, c-format -msgid "\"client_connection_check_interval\" must be set to 0 on this platform." -msgstr "이 플랫폼에서는 \"client_connection_check_interval\" 값은 0 이어야 합니다." - -#: tcop/postgres.c:3658 -#, 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\", " @@ -25463,67 +26740,79 @@ msgstr "" "\"log_parser_stats\", \"log_planner_stats\", \"log_executor_stats\" 설정값들 " "중 하나가 true 일 때는 \"log_statement_stats\" 설정을 활성화할 수 없습니다" -#: 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 ms, 포크=%.3f ms, 인증=%.3f ms" + +#: 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" +"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" +"연결종료: 세션 시간: %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 "" "바인드 메시지는 %d 결과 포멧을 가지고 있고, 쿼리는 %d 칼럼을 가지고 있습니다" -#: tcop/pquery.c:942 tcop/pquery.c:1696 +#: tcop/pquery.c:940 tcop/pquery.c:1684 #, c-format msgid "cursor can only scan forward" msgstr "이 커서는 앞으로 이동 전용입니다" -#: tcop/pquery.c:943 tcop/pquery.c:1697 +#: tcop/pquery.c:941 tcop/pquery.c:1685 #, c-format msgid "Declare it with SCROLL option to enable backward scan." msgstr "" @@ -25554,68 +26843,81 @@ 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 "cannot create statistics on the specified relation" +msgstr "지정한 릴레이션의 통계 정보를 만들 수 없음" + +#: tcop/utility.c:1887 +#, c-format +msgid "" +"CREATE STATISTICS only supports tables, foreign tables and materialized " +"views." +msgstr "" +"CREATE STATISTICS 작업은 테이블, 외부 테이블, 구체화된 뷰만 지원합니다." + +#: 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 "인식할 수 없는 simple 사전 매개 변수: \"%s\"" -#: tsearch/dict_synonym.c:118 +#: tsearch/dict_synonym.c:120 #, c-format msgid "unrecognized synonym parameter: \"%s\"" msgstr "인식할 수 없는 synonym 매개 변수: \"%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" @@ -25692,92 +26994,87 @@ msgstr "인식할 수 없는 Thesaurus 매개 변수: \"%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 "\"long\" 플래그 값을 포함하는 잘못된 affix 플래그: \"%s\"" -#: 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 "\"%s\" affix 파일을 열 수 없음: %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 "alias 수가 지정한 %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 @@ -25790,12 +27087,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" @@ -25812,60 +27109,114 @@ msgstr "인식할 수 없는 headline 매개 변수: \"%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는 양수여야 함" - -#: tsearch/wparser_def.c:2682 -#, c-format -msgid "ShortWord should be >= 0" -msgstr "ShortWord는 0보다 크거나 같아야 함" +msgid "%s must be positive" +msgstr "%s 값은 양수여야 함" -#: tsearch/wparser_def.c:2686 +#: tsearch/wparser_def.c:2682 tsearch/wparser_def.c:2686 #, c-format -msgid "MaxFragments should be >= 0" -msgstr "MaxFragments는 0보다 크거나 같아야 함" +msgid "%s must be >= 0" +msgstr "%s 값은 >=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:1255 +#: utils/activity/pgstat.c:1426 #, c-format msgid "invalid statistics kind: \"%s\"" msgstr "잘못된 통계정보 종류: \"%s\"" -#: utils/activity/pgstat.c:1335 +#: 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\" 사용자 정의 누적 통계 정보 수집기를 %u ID로 등록할 수 없음" + +#: 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 "%u ID 의 누적 통계 정보 수집기가 같은 이름입니다." + +#: 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:1455 +#: utils/activity/pgstat.c:1718 #, c-format msgid "could not write temporary statistics file \"%s\": %m" msgstr "\"%s\" 임시 통계 파일에 쓰기 실패: %m" -#: utils/activity/pgstat.c:1464 +#: utils/activity/pgstat.c:1727 #, c-format msgid "could not close temporary statistics file \"%s\": %m" msgstr "\"%s\" 임시 통계 파일을 닫을 수 없습니다: %m" -#: utils/activity/pgstat.c:1472 -#, c-format -msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" -msgstr "\"%s\" 임시 통계 파일 이름을 \"%s\" (으)로 바꿀 수 없습니다: %m" - -#: utils/activity/pgstat.c:1521 +#: utils/activity/pgstat.c:1781 #, c-format msgid "could not open statistics file \"%s\": %m" msgstr "\"%s\" 통계 파일을 열 수 없음: %m" -#: utils/activity/pgstat.c:1683 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "\"%s\" 통계 파일이 손상되었음" @@ -25875,203 +27226,208 @@ msgstr "\"%s\" 통계 파일이 손상되었음" msgid "function call to dropped function" msgstr "삭제될 함수를 호출함" -#: utils/activity/pgstat_xact.c:362 +#: utils/activity/pgstat_shmem.c:536 +#, c-format +msgid "Failed while allocating entry %u/%u/%." +msgstr "%u/%u/% 엔트리 할당하는 동안 오류가 발생했습니다." + +#: utils/activity/pgstat_xact.c:366 #, c-format -msgid "resetting existing statistics for kind %s, db=%u, oid=%u" -msgstr "%s 종류의 기존 통계 정보를 초기화합니다, db=%u, oid=%u" +msgid "resetting existing statistics for kind %s, db=%u, oid=%" +msgstr "%s 종류의 기존 통계 정보를 초기화합니다, db=%u, oid=%" -#: utils/activity/wait_event.c:207 utils/activity/wait_event.c:232 +#: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format msgid "wait event \"%s\" already exists in type \"%s\"" msgstr "\"%s\" 대기 이벤트는 이미 \"%s\" 자료형 안에 있음" -#: utils/activity/wait_event.c:246 +#: utils/activity/wait_event.c:245 #, c-format msgid "too many custom wait events" msgstr "너무 많은 사용자 대기 이벤트" # # nonun 부분 begin -#: 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 "식별자(identifier)가 너무 깁니다." -#: 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 "식별자(Identifier)는 %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 사용자 ID에서 기본 권한자로 할당하고 있습니다" -#: 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 "aclremovie 더이상 지원하지 않음" -#: 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:3184 utils/adt/varlena.c:4118 #, 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 "인자는 비어있거나 1차원 배열이어야 합니다." -#: 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 사이여야 함" @@ -26156,7 +27512,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 "다차원 배열에는 일치하는 차원이 포함된 배열 식이 있어야 함" @@ -26167,14 +27523,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" @@ -26190,7 +27546,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 자료형에서 사용할 바이너리 입력 함수가 없습니다." @@ -26201,7 +27557,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 자료형에서 사용할 바이너리 출력 함수가 없습니다." @@ -26213,11 +27569,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 "잘못된 배열 하위 스크립트(1,2...차원 배열 표시 문제)" @@ -26255,90 +27611,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 "threshold 값은 1차원 배열이어야 합니다." -#: utils/adt/arrayfuncs.c:6693 +#: utils/adt/arrayfuncs.c:6707 #, c-format msgid "thresholds array must not contain NULLs" msgstr "threshold 배열에는 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 값을 사용할 수 없습니다" @@ -26369,21 +27725,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\"" @@ -26394,23 +27750,23 @@ msgstr "%s 자료형 대한 잘못된 입력: \"%s\"" msgid "money out of range" msgstr "money 자료형 값 범위를 벗어남" -#: 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 "0으로는 나눌수 없습니다." #: 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 자료형 범위를 초과했습니다" @@ -26425,189 +27781,189 @@ 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 "날짜 필드의 값이 범위를 벗어남: %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 "시간 필드의 값이 범위를 벗어남: %d:%02d:%02g" -#: utils/adt/date.c:2020 +#: utils/adt/date.c:2085 #, c-format msgid "cannot convert infinite interval to time" msgstr "infinite interval 자료형은 time 자료형으로 변환할 수 없음" -#: 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 "infinite interval 자료형 + time 자료형 계산은 할 수 없음" -#: 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 "infinite interval 자료형 - 시간 자료형 계산은 할 수 없음" -#: 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 "윈도우 함수에서 앞에 오거나 뒤에 따라오는 크기가 잘못됨" -#: 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\" 시간대 간격(interval time zone) 값은 유한해야 함" +msgstr "\"%s\" 시간대 간격(interval time zone) 값은 유한해야 함" -#: 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\" 시간대 간격(interval time zone) 값으로 달(month) 또는 일(day)을 포함" "할 수 없습니다" -#: 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 "interval 필드의 값이 범위를 벗어남: \"%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 " @@ -26620,17 +27976,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\"." @@ -26657,40 +28018,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 "잘못된 16진수: \"%.*s\"" -#: utils/adt/encode.c:223 +#: utils/adt/encode.c:244 #, c-format msgid "invalid hexadecimal data: odd number of digits" msgstr "잘못된 16진수 데이터: 데이터의 길이가 홀수 입니다." -#: 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 "base64 자료를 디코딩 하는 중 잘못된 \"%.*s\" 기호 발견" -#: 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 자료형에 대한 잘못된 입력 구문" @@ -26727,355 +28088,367 @@ 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\"는 real 자료형의 범위를 벗어납니다." -#: 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:4093 #, c-format msgid "smallint out of range" msgstr "smallint의 범위를 벗어났습니다." -#: 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 "0의 음수 거듭제곱이 정의되어 있지 않음" -#: 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 "0의 대수를 구할 수 없습니다." -#: 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 "카운트 값은 0 보다 커야 합니다" -#: 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 "잘못된 datetime 양식 구분자: \"%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 함수에서 사용할 정렬규칙(collation)을 결정할 수 없음" -#: 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 "유니코드 대소문자 구분은 서버 인코딩이 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 "" "형식 템플릿에 그레고리오력과 ISO week date 변환을 함께 사용하지 마십시오." -#: 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 "입력 문자열이 datetime 양식용으로는 너무 짧습니다" -#: 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 "datetime 양식이 지역시간대값이 있는데, 시간값이 아님" -#: 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 "연도 정보 없이 몇번째 날(day of year) 인지 계산할 수 없습니다." -#: 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 @@ -27087,9 +28460,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 "요청된 길이가 너무 깁니다" @@ -27104,11 +28477,6 @@ msgstr "\"%s\" 파일에서 seek 작업을 할 수 없음: %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" @@ -27160,8 +28528,8 @@ msgstr "적어도 2개의 point들이 필요합니다." 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 "단계 크기는 0일 수 없음" @@ -27175,9 +28543,9 @@ msgstr "단계 크기는 0일 수 없음" #: 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:4143 #, c-format msgid "bigint out of range" msgstr "bigint의 범위를 벗어났습니다." @@ -27187,50 +28555,50 @@ 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 함수의 인자들은 각각 key, value 쌍으로 있어야 합니다." -#: 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 객체 키 값 중복" @@ -27296,23 +28664,23 @@ msgstr "jsonb object 값을 %s 자료형으로 형 변환 할 수 없음" msgid "cannot cast jsonb array or object to type %s" msgstr "jsonb object나 배열 값을 %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 바이트)" @@ -27347,108 +28715,108 @@ msgstr "배열 서브스크립트는 반드시 문자열이어야합니다." 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 "지원하지 않는 유니코드 이스케이프 조합" -#: 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의 첫번째 인자는 row 형이어야 합니다" #. 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 " @@ -27457,52 +28825,52 @@ msgstr "" "non-null 레코드 인자를 지정하거나, 함수를 호출 할 때 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 모드가 필요합니다만, 이 구문에서는 허용되지 않습니다" -#: 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 "스칼라형에는 path 를 지정할 수 없음" -#: 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\" 이어야 합니다." +"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\"." @@ -27510,7 +28878,7 @@ 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 " @@ -27519,61 +28887,61 @@ 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 "스칼라형에서 path를 지울 수 없음" -#: utils/adt/jsonfuncs.c:5193 +#: utils/adt/jsonfuncs.c:5217 #, c-format msgid "path element at position %d is null" msgstr "%d 위치의 path 요소는 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 "path assumes key는 복합 자료형인데, 스칼라 값이 사용되고 있습니다." -#: 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 번째 위치의 path 요소는 정수가 아님: \"%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 번째 위치의 path 요소는 범위를 벗어남: %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\"." +"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\"" @@ -27588,248 +28956,219 @@ 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 wildcard array accessor는 하나의 배열을 대상으로 합니다." -#: 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 wildcard member accessor는 하나의 객체를 대상으로 합니다." -#: 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 array accessor는 하나의 배열을 대상으로 합니다." -#: 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 member accessor는 하나의 객체를 대상으로 합니다." -#: 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() item method는 하나의 배열을 대상으로 합니다." -#: 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 "" -"\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 double precision형임" +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 "jsonpath item method .%s()용으로 NaN 또는 Infinity는 허용하지 않음" -#: 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 item method .%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 "" -"\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 bigint형임" - -#: 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 "" -"\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 boolean형임" - -#: 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 "jsonpath item method .%s() 대상은 불리언, 문자열이나, 숫자 값만 허용합니다." - -#: 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 "" -"\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 numeric형임" +"jsonpath item method .%s() 대상은 불리언, 문자열이나, 숫자 값만 허용합니다." -#: 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() 의 precision이 정수 범위를 벗어남" +msgstr "jsonpath 아이템 메서드 .%s() 의 precision이 정수 범위를 벗어남" -#: 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() 의 스케일이 정수 범위를 벗어남" - -#: 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 "" -"\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 integer형임" +msgstr "jsonpath 아이템 메서드 .%s() 의 스케일이 정수 범위를 벗어남" -#: 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 "jsonpath item method .%s() 대상은 불리언, 문자열이나, 숫자 값만 허용합니다." +msgstr "" +"jsonpath item method .%s() 대상은 불리언, 문자열이나, 숫자 값만 허용합니다." -#: 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()의 time precision이 정수 범위를 벗어남" +msgstr "jsonpath 아이템 메서드 .%s()의 time precision이 정수 범위를 벗어남" -#: 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 "입력 자료 형식을 지정하는 datetime 템플릿 인자를 사용하세요." -#: 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 "" -"jsonpath 아이템 메서드 .%s() 의 time precision이 잘못됨" -"남" +msgstr "jsonpath 아이템 메서드 .%s() 의 time precision이 잘못됨남" -#: 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 "%s 자료형의 값이 jsonpath 형으로 변환될 수 없음" -#: utils/adt/jsonpath_exec.c:3158 +#: utils/adt/jsonpath_exec.c:3157 #, c-format msgid "could not find jsonpath variable \"%s\"" msgstr "\"%s\" jsonpath 변수 찾기 실패" -#: 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" +"JSON path expression for column \"%s\" must return single item when no " +"wrapper is requested" msgstr "" "\"%s\" 칼럼의 JSON 패스 표현식은 wrapper 없이 단일 아이템을 반환해야 함" -#: 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 "SQL/JSON 아이템을 배열로 만들려면, WITH WRAPPER 절을 사용하세요." -#: 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" +"JSON path expression in JSON_QUERY must return single item when no wrapper " +"is requested" msgstr "" "JSON_QUERY 안 JSON 패스 표현식은 wrapper 없이 단일 아이템을 반환해야 함" -#: 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" +msgid "JSON path expression for column \"%s\" must return single scalar item" msgstr "\"%s\" 칼럼을 위한 JSON 패스 표현식은 단일 스칼라 아이템을 반환해야 함" -#: 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" +msgid "JSON path expression in JSON_VALUE must return single scalar item" msgstr "JSON_VALUE 안 JSON 패스 표현식은 단일 스칼라 아이템을 반환해야 함" #: utils/adt/levenshtein.c:132 @@ -27837,42 +29176,43 @@ msgstr "JSON_VALUE 안 JSON 패스 표현식은 단일 스칼라 아이템을 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 연산에서 사용할 비결정 정렬규칙(collation)은 지원하지 않음" +msgid "could not determine which collation to use for LIKE" +msgstr "LIKE 연산에서 사용할 정렬규칙(collation)을 결정할 수 없음" -#: 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 연산에서 사용할 정렬규칙(collation)을 결정할 수 없음" -#: utils/adt/like.c:200 +#: utils/adt/like.c:202 #, c-format msgid "nondeterministic collations are not supported for ILIKE" msgstr "ILIKE 연산에서 사용할 비결정 정렬규칙(collation)은 지원하지 않음" -#: 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:803 #, 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:804 #, 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 형식에서는 정규식 일치가 지원되지 않음" @@ -27897,7 +29237,7 @@ msgstr "" "macaddr8에서 macaddr 형으로 변환 할 수 있는 값은 왼쪽에서 4번째, 5번째 바이트" "가 FF와 FE 값(예: xx:xx:xx:ff:fe:xx:xx:xx)인 경우일 때만입니다." -#: 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 서버 프로세스가 아닙니다" @@ -28014,8 +29354,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" @@ -28043,157 +29383,157 @@ msgstr "외부 \"%s\" 값의 길이가 잘못 되었음" 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 "서로 크기가 틀린 inet 값들은 AND 연산을 할 수 없습니다." -#: utils/adt/network.c:1925 +#: utils/adt/network.c:1890 #, c-format msgid "cannot OR inet values of different sizes" msgstr "서로 크기가 틀린 inet 값들은 OR 연산을 할 수 없습니다." -#: 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 값에서 서로 크기가 틀리게 부분 추출(subtract)할 수 없음" -#: 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 "값이 수치 형식에 넘처남" -#: 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 "lower bound는 NaN 일 수 없음" -#: utils/adt/numeric.c:4260 +#: utils/adt/numeric.c:4364 #, c-format msgid "lower bound cannot be infinity" msgstr "lower bound는 무한일 수 없음" -#: utils/adt/numeric.c:4267 +#: utils/adt/numeric.c:4371 #, c-format msgid "upper bound cannot be NaN" msgstr "upper bound는 NaN 일 수 없음" -#: utils/adt/numeric.c:4271 +#: utils/adt/numeric.c:4375 #, c-format msgid "upper bound cannot be infinity" msgstr "upper bound는 무한일 수 없음" -#: 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 "수치 필드 오버플로우" -#: 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 " @@ -28202,12 +29542,12 @@ 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" @@ -28218,27 +29558,27 @@ msgstr "lower bound는 upper bound보다 작거나 같아야 함" 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" @@ -28249,54 +29589,22 @@ msgstr "요청한 문자가 인코딩용으로 타당치 않음: %u" msgid "percentile value %g is not between 0 and 1" msgstr "%g 퍼센트 값이 0과 1사이가 아닙니다." -#: utils/adt/pg_locale.c:326 utils/adt/pg_locale.c:358 +#: utils/adt/pg_locale.c:304 utils/adt/pg_locale.c:336 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "\"%s\" 로케일 이름에 사용할 수 없는 문자(non-ASCII)가 있음" -#: utils/adt/pg_locale.c:1507 -#, c-format -msgid "could not open collator for locale \"%s\" with rules \"%s\": %s" -msgstr "\"%s\" 로케일(해당 규칙 \"%s\")용 문자 정렬 규칙 열기 실패: %s" - -#: utils/adt/pg_locale.c:1518 utils/adt/pg_locale.c:2992 -#: utils/adt/pg_locale.c:3065 -#, c-format -msgid "ICU is not supported in this build" -msgstr "ICU 지원 기능을 뺀 채로 서버가 만들어졌습니다." - -#: utils/adt/pg_locale.c:1546 -#, c-format -msgid "could not create locale \"%s\": %m" -msgstr "\"%s\" 로케일을 만들 수 없음: %m" - -#: utils/adt/pg_locale.c:1549 -#, c-format -msgid "" -"The operating system could not find any locale data for the locale name " -"\"%s\"." -msgstr "운영체제에서 \"%s\" 로케일 이름에 대한 로케일 파일을 찾을 수 없습니다." - -#: utils/adt/pg_locale.c:1670 -#, c-format -msgid "" -"collations with different collate and ctype values are not supported on this " -"platform" -msgstr "" -"이 플랫폼에서는 서로 다른 정렬규칙(collation)과 문자집합(ctype)을 함께 쓸 수 " -"없습니다." - -#: utils/adt/pg_locale.c:1717 +#: utils/adt/pg_locale.c:1120 #, c-format msgid "collation \"%s\" has no actual version, but a version was recorded" msgstr "\"%s\" 문자 정렬 규칙은 버전이 없는데 버전을 지정했음" -#: utils/adt/pg_locale.c:1723 +#: utils/adt/pg_locale.c:1126 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "\"%s\" 문자 정렬 규칙은 버전이 맞지 않음" -#: utils/adt/pg_locale.c:1725 +#: utils/adt/pg_locale.c:1128 #, c-format msgid "" "The collation in the database was created using version %s, but the " @@ -28305,7 +29613,7 @@ msgstr "" "데이터베이스를 만들때 %s 버전으로 문자 정렬 규칙을 만들었는데, 현재 OS는 %s " "버전을 제공하고 있습니다." -#: utils/adt/pg_locale.c:1728 +#: utils/adt/pg_locale.c:1131 #, c-format msgid "" "Rebuild all objects affected by this collation and run ALTER COLLATION %s " @@ -28315,94 +29623,131 @@ msgstr "" "VERSION 명령을 실행하거나, 바른 라이브러리 버전을 지정해서, PostgreSQL을 빌드" "하세요." -#: utils/adt/pg_locale.c:1772 utils/adt/pg_locale.c:2556 -#: utils/adt/pg_locale.c:2581 +#: utils/adt/pg_locale.c:1484 utils/adt/pg_locale.c:1511 +#: utils/adt/pg_locale_builtin.c:188 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "내장 제공자용 로케일 이름이 잘못됨: \"%s\"" -#: utils/adt/pg_locale.c:1814 +#: utils/adt/pg_locale.c:1576 #, 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:1839 +#: utils/adt/pg_locale.c:1585 utils/adt/pg_locale.c:1660 +#: 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:1895 utils/adt/pg_locale.c:1908 +#: utils/adt/pg_locale.c:1618 #, 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 "\"%s\" ICU 로케일에서 언어 찾기 실패: %s" -#: utils/adt/pg_locale.c:1920 +#: utils/adt/pg_locale.c:1620 utils/adt/pg_locale.c:1650 #, c-format -msgid "could not compare Unicode strings: %m" -msgstr "유니코드 문자열 비교 실패: %m" +msgid "To disable ICU locale validation, set the parameter \"%s\" to \"%s\"." +msgstr "ICU 로케일 검사를 하지 않으려면, \"%s\" 값을 \"%s\"로 지정하세요." + +#: utils/adt/pg_locale.c:1648 +#, c-format +msgid "ICU locale \"%s\" has unknown language \"%s\"" +msgstr "\"%s\" ICU 로케일은 알 수 없는 \"%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_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.c:2094 +#: utils/adt/pg_locale_icu.c:488 #, c-format msgid "collation failed: %s" msgstr "문자열 정렬: %s" -#: utils/adt/pg_locale.c:2313 utils/adt/pg_locale.c:2345 +#: 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:2635 +#: 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:2656 utils/adt/pg_locale.c:2672 +#: 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:2697 +#: utils/adt/pg_locale_icu.c:851 #, c-format msgid "encoding \"%s\" not supported by ICU" msgstr "\"%s\" 인코딩은 ICU 기능을 지원하지 않음" -#: utils/adt/pg_locale.c:2704 +#: utils/adt/pg_locale_icu.c:858 #, c-format msgid "could not open ICU converter for encoding \"%s\": %s" msgstr "\"%s\" 인코딩용 ICU 변환기 열기 실패: %s" -#: utils/adt/pg_locale.c:2722 utils/adt/pg_locale.c:2741 -#: utils/adt/pg_locale.c:2797 utils/adt/pg_locale.c:2808 +#: 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 "" +"이 플랫폼에서는 서로 다른 정렬규칙(collation)과 문자집합(ctype)을 함께 쓸 수 " +"없습니다." -#: utils/adt/pg_locale.c:2983 +#: 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:3024 +#: utils/adt/pg_locale_libc.c:708 #, c-format -msgid "could not get language from ICU locale \"%s\": %s" -msgstr "\"%s\" ICU 로케일에서 언어 찾기 실패: %s" +msgid "could not get collation version for locale \"%s\": error code %lu" +msgstr "\"%s\" 로케일용 정렬 변환 규칙을 구할 수 없음: 오류 코드 %lu" -#: utils/adt/pg_locale.c:3026 utils/adt/pg_locale.c:3055 +#: 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:3053 +#: utils/adt/pg_locale_libc.c:793 #, c-format -msgid "ICU locale \"%s\" has unknown language \"%s\"" -msgstr "\"%s\" ICU 로케일은 알 수 없는 \"%s\" 언어를 사용합니다." +msgid "could not compare Unicode strings: %m" +msgstr "유니코드 문자열 비교 실패: %m" + +#: utils/adt/pg_locale_libc.c:825 +#, c-format +msgid "could not create locale \"%s\": %m" +msgstr "\"%s\" 로케일을 만들 수 없음: %m" + +#: 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.c:3204 +#: utils/adt/pg_locale_libc.c:1000 #, c-format msgid "invalid multibyte character for locale" msgstr "로케일을 위한 잘못된 멀티바이트 문자" -#: utils/adt/pg_locale.c:3205 +#: utils/adt/pg_locale_libc.c:1001 #, c-format msgid "" "The server's LC_CTYPE locale is probably incompatible with the database " @@ -28419,22 +29764,22 @@ msgstr "NaN 값을 pg_lsn 형으로 변환할 수 없습니다" msgid "cannot subtract NaN from pg_lsn" msgstr "pg_lsn 에서는 NaN 형을 빼낼 수 없습니다" -#: 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\", " @@ -28443,7 +29788,7 @@ 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" @@ -28468,72 +29813,72 @@ msgstr "셸 형태 값은 사용할 수 없음" 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 "range 자료형 구성자 플래그 인자로 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 "range 자료형의 하한값은 상한값과 같거나 작아야 합니다" -#: 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 "잘못된 range 구성 플래그" -#: 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 "비정상적인 range 문자: \"%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:2022 utils/adt/varlena.c:4475 #, c-format msgid "regular expression failed: %s" msgstr "잘못된 정규식: %s" @@ -28552,15 +29897,15 @@ 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:6820 utils/misc/guc.c:6854 +#: 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 #, c-format msgid "invalid value for parameter \"%s\": %d" msgstr "잘못된 \"%s\" 매개 변수의 값: %d" -#: utils/adt/regexp.c:936 +#: utils/adt/regexp.c:939 #, c-format msgid "" "SQL regular expression may not contain more than two escape-double-quote " @@ -28569,19 +29914,19 @@ msgstr "" "SQL 정규 표현식에서는 두 개 이상의 이스케이프 큰 따옴표 구분자를 쓸 수 없음" #. 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: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 #, c-format msgid "%s does not support the \"global\" option" msgstr "%s 함수는 \"global\" 옵션을 지원하지 않음" -#: utils/adt/regexp.c:1312 +#: utils/adt/regexp.c:1338 #, c-format msgid "Use the regexp_matches function instead." msgstr "대신에 regexp_matches 함수를 사용하세요." -#: utils/adt/regexp.c:1500 +#: utils/adt/regexp.c:1526 #, c-format msgid "too many regular expression matches" msgstr "너무 많음 정규식 매치" @@ -28596,18 +29941,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:10509 -#: utils/adt/ruleutils.c:10722 +#: 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 "인자가 너무 많습니다" @@ -28618,7 +29963,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:3481 utils/adt/varlena.c:3486 #, c-format msgid "invalid name syntax" msgstr "잘못된 이름 구문" @@ -28643,40 +29988,40 @@ 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 "" "\"%s\" 테이블에서 자료 추가, 갱신 작업이 \"%s\" 참조키(foreign key) 제약 조건" "을 위배했습니다" -#: 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 "INSERT에 대해 \"%s\" 함수를 실행해야 함" -#: utils/adt/ri_triggers.c:2042 +#: utils/adt/ri_triggers.c:2198 #, c-format msgid "function \"%s\" must be fired for UPDATE" msgstr "UPDATE에 대해 \"%s\" 함수를 실행해야 함" -#: utils/adt/ri_triggers.c:2048 +#: utils/adt/ri_triggers.c:2204 #, c-format msgid "function \"%s\" must be fired for DELETE" msgstr "DELETE에 대해 \"%s\" 함수를 실행해야 함" -#: 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 " @@ -28685,12 +30030,12 @@ 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 " @@ -28699,32 +30044,51 @@ 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\" 참조키(foreign key) 제" +"약 조건 - \"%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 " @@ -28733,7 +30097,7 @@ msgstr "" "\"%s\" 테이블의 자료 갱신, 삭제 작업이 \"%s\" 참조키(foreign key) 제약 조건 " "- \"%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\" 테이블에서 키가 여전히 참조됩니다." @@ -28785,146 +30149,175 @@ msgstr "바이너리 자료형이 %u (%s) 임. 기대 자료형: %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:2694 +#: utils/adt/ruleutils.c:2740 #, c-format msgid "input is a query, not an expression" msgstr "입력값이 expression이 아니라, query 임" -#: utils/adt/ruleutils.c:2706 +#: utils/adt/ruleutils.c:2752 #, c-format msgid "expression contains variables of more than one relation" msgstr "expression이 하나 이상의 릴레이션 변수를 포함하고 있음" -#: utils/adt/ruleutils.c:2713 +#: utils/adt/ruleutils.c:2759 #, c-format msgid "expression contains variables" msgstr "expression이 변수들을 포함하고 있음" -#: utils/adt/ruleutils.c:5246 +#: 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 "\"%s.%s\" 릴레이션용 최신 볼 수 있는 tid를 찾을 수 없음" + +#: 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는 no 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 "간격(%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 "timestamp값은 무한 interval 형으로 바인드할 수 없음" -#: 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 "timestamp값은 월이나 년을 포함하는 interval 형으로 바인드할 수 없음" -#: 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 "stride 값은 0 보다 커야 합니다" -#: 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 "단계 크기는 무한일 수 없음" @@ -29005,32 +30398,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 "" @@ -29111,7 +30504,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 "무작위 값 생성 실패" @@ -29157,9 +30550,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:3102 +#: utils/adt/varlena.c:3180 #, c-format msgid "negative substring length not allowed" msgstr "substring에서 음수 길이는 허용하지 않음" @@ -29184,7 +30577,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:3384 #, c-format msgid "new bit must be 0 or 1" msgstr "새 비트값은 0 또는 1 이어야 합니다" @@ -29199,95 +30592,94 @@ 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:1591 #, c-format msgid "could not determine which collation to use for string comparison" msgstr "문자열 비교 작업에 사용할 정렬규칙(collation)을 결정할 수 없음" -#: utils/adt/varlena.c:1230 utils/adt/varlena.c:1809 +#: utils/adt/varlena.c:1864 #, c-format msgid "nondeterministic collations are not supported for substring searches" msgstr "문자열 검색 작업에 사용할 비결정 정렬규칙(collation)을 지원하지 않음" -#: utils/adt/varlena.c:3221 utils/adt/varlena.c:3288 +#: utils/adt/varlena.c:3268 utils/adt/varlena.c:3335 #, 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:3299 utils/adt/varlena.c:3371 #, 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:4587 #, c-format msgid "field position must not be zero" msgstr "필드 위치 값은 0 이 아니여야 함" -#: utils/adt/varlena.c:5630 +#: utils/adt/varlena.c:5832 #, 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:5833 utils/adt/varlena.c:5967 utils/adt/varlena.c:6088 #, c-format msgid "For a single \"%%\" use \"%%%%\"." msgstr "하나의 \"%%\" 문자를 표시하려면, \"%%%%\" 형태로 사용하세요" -#: utils/adt/varlena.c:5763 utils/adt/varlena.c:5884 +#: utils/adt/varlena.c:5965 utils/adt/varlena.c:6086 #, 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:5978 utils/adt/varlena.c:6035 #, c-format msgid "too few arguments for format()" msgstr "format() 작업을 위한 인자가 너무 적음" -#: utils/adt/varlena.c:5929 utils/adt/varlena.c:6111 +#: utils/adt/varlena.c:6131 utils/adt/varlena.c:6313 #, c-format msgid "number is out of range" msgstr "수치 범위를 벗어남" -#: utils/adt/varlena.c:5992 utils/adt/varlena.c:6020 +#: utils/adt/varlena.c:6194 utils/adt/varlena.c:6222 #, c-format msgid "format specifies argument 0, but arguments are numbered from 1" msgstr "" "format 함수에서 사용할 수 있는 인자 위치 번호는 0이 아니라, 1부터 시작합니다" -#: utils/adt/varlena.c:6013 +#: utils/adt/varlena.c:6215 #, c-format msgid "width argument position must be ended by \"$\"" msgstr "넓이 인자 위치값은 \"$\" 문자로 끝나야 합니다" -#: utils/adt/varlena.c:6058 +#: utils/adt/varlena.c:6260 #, c-format msgid "null values cannot be formatted as an SQL identifier" msgstr "null 값은 SQL 식별자로 포멧될 수 없음" -#: utils/adt/varlena.c:6266 +#: utils/adt/varlena.c:6468 #, c-format msgid "Unicode normalization can only be performed if server encoding is UTF8" msgstr "" "유니코드 normalization 작업은 서버 인코딩이 UTF8 일때만 할 수 있습니다." -#: utils/adt/varlena.c:6279 +#: utils/adt/varlena.c:6481 #, c-format msgid "invalid normalization form: %s" msgstr "잘못된 normalization 형식: %s" -#: utils/adt/varlena.c:6324 +#: utils/adt/varlena.c:6526 #, c-format msgid "Unicode categorization can only be performed if server encoding is UTF8" -msgstr "" -"유니코드 분류 작업은 서버 인코딩이 UTF8 일때만 할 수 있습니다." +msgstr "유니코드 분류 작업은 서버 인코딩이 UTF8 일때만 할 수 있습니다." -#: utils/adt/varlena.c:6541 utils/adt/varlena.c:6576 utils/adt/varlena.c:6611 +#: utils/adt/varlena.c:6743 utils/adt/varlena.c:6778 utils/adt/varlena.c:6813 #, c-format msgid "invalid Unicode code point: %04X" msgstr "잘못된 유니코드 코드 포인트: %04X" -#: utils/adt/varlena.c:6641 +#: utils/adt/varlena.c:6843 #, c-format msgid "Unicode escapes must be \\XXXX, \\+XXXXXX, \\uXXXX, or \\UXXXXXXXX." msgstr "" @@ -29304,12 +30696,12 @@ msgstr "ntile의 인자는 0보다 커야 함" msgid "argument of nth_value must be greater than zero" msgstr "nth_value의 인자는 0보다 커야 함" -#: utils/adt/xid8funcs.c:124 +#: utils/adt/xid8funcs.c:120 #, c-format -msgid "transaction ID %llu is in the future" -msgstr "%llu 트랜잭션 ID는 미래의 것입니다" +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 자료가 잘못됨" @@ -29324,7 +30716,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\" 인코딩 이름이 잘못됨" @@ -29339,45 +30731,45 @@ 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에 호환되지 않는 문자 자료형 있음: sizeof(char)=%zu, " -"sizeof(xmlChar)=%zu" +"libxml2에 호환되지 않는 문자 자료형 있음: 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 " @@ -29386,121 +30778,127 @@ msgstr "" "이 문제는 PostgreSQL 서버를 만들 때 사용한 libxml2 헤더 파일이 호환성이 없는 " "것 같습니다." -#: 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 "독립 실행형은 '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 "\"%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 "" "이 배열은 key, value로 구성된 배열을 요소로 하는 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 "" "이름 \"%s\" 및 URI \"%s\"을(를) 사용하여 XML 네임스페이스를 등록할 수 없음" -#: 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 형으로 바꾸는 형변환 규칙(cast)가 없음" # # nonun 부분 end -#: 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 자료형을 위한 출력 함수가 없습니다" @@ -29514,32 +30912,27 @@ 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:3801 +#: utils/cache/relcache.c:3805 #, c-format msgid "heap relfilenumber value not set when in binary upgrade mode" msgstr "이진 업그레이드 작업 때, 힙 relfilenumber 값이 지정되지 않았습니다" -#: utils/cache/relcache.c:3809 +#: utils/cache/relcache.c:3813 #, c-format msgid "unexpected request for new relfilenumber in binary upgrade mode" msgstr "바이너리 업그레이드 모드 중에 새 relfilenumber 값 요청이 실패" -#: utils/cache/relcache.c:6539 +#: utils/cache/relcache.c:6633 #, c-format msgid "could not create relation-cache initialization file \"%s\": %m" msgstr "\"%s\" 릴레이션-캐시 초기화 파일을 만들 수 없음: %m" -#: utils/cache/relcache.c:6541 +#: utils/cache/relcache.c:6635 #, c-format msgid "Continuing anyway, but there's something wrong." msgstr "어쨌든 계속하는데, 뭔가 잘못 된 것이 있습니다." -#: utils/cache/relcache.c:6871 +#: utils/cache/relcache.c:6965 #, c-format msgid "could not remove cache file \"%s\": %m" msgstr "\"%s\" 캐쉬 파일을 삭제할 수 없음: %m" @@ -29559,7 +30952,7 @@ msgstr "\"%s\" 릴레이션 맵핑 파일에 잘못된 데이터가 있습니다 msgid "relation mapping file \"%s\" contains incorrect checksum" msgstr "\"%s\" 릴레이션 맵핑 파일에 잘못된 checksum 값이 있음" -#: 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 "레코드 형식이 등록되지 않았음" @@ -29574,193 +30967,180 @@ msgstr "TRAP: ExceptionalCondition: %d PID 안에 잘못된 인자\n" 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 "stderr 로 사용하기 위해 \"%s\" 파일 다시 열기 실패: %m" -#: utils/error/elog.c:2147 +#: utils/error/elog.c:2155 #, c-format msgid "could not reopen file \"%s\" as stdout: %m" msgstr "표준출력(stdout)으로 사용하기 위해 \"%s\" 파일 다시 열기 실패: %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 "[알수없음]" -#: 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\" 라이브러리는 사용할 수 없습니다: magic black 없음" -#: 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\", 라이브러리 ABI는 \"%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\" 라이브러리는 사용할 수 없습니다: magic black 틀림" -#: 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 -#, c-format -msgid "invalid macro name in dynamic library path: %s" -msgstr "동적 라이브러리 경로에서 잘못된 매크로 이름: %s" - -#: utils/fmgr/dfmgr.c:541 +#: utils/fmgr/dfmgr.c:554 #, c-format -msgid "zero-length component in parameter \"dynamic_library_path\"" -msgstr "\"dynamic_library_path\" 매개 변수 값으로 길이가 0인 값을 사용했음" +msgid "invalid macro name in path: %s" +msgstr "패스 안에 잘못된 매크로 이름: %s" -#: utils/fmgr/dfmgr.c:560 +#: utils/fmgr/dfmgr.c:606 #, 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\" 매개 변수 값으로 길이가 0인 값을 사용했음" #: utils/fmgr/fmgr.c:236 #, c-format @@ -29822,97 +31202,169 @@ msgstr "열 별칭이 제공되지 않았음" msgid "could not determine row description for function returning record" msgstr "레코드를 리턴하는 함수를 위한 행(row) 구성 정보를 구할 수 없음" -#: utils/init/miscinit.c:353 -#, c-format -msgid "data directory \"%s\" does not exist" -msgstr "\"%s\" 데이터 디렉터리 없음" +#: 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 "archiver" + +#: utils/init/miscinit.c:276 +msgid "autovacuum launcher" +msgstr "autovacuum 관리자" + +#: utils/init/miscinit.c:279 +msgid "autovacuum worker" +msgstr "autovacuum 작업자" + +#: 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 "백그라운드 writer" + +#: 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 "startup" + +#: utils/init/miscinit.c:312 +msgid "walreceiver" +msgstr "walreceiver" + +#: utils/init/miscinit.c:315 +msgid "walsender" +msgstr "walsender" + +#: utils/init/miscinit.c:318 +msgid "walsummarizer" +msgstr "walsummarizer" + +#: utils/init/miscinit.c:321 +msgid "walwriter" +msgstr "walwriter" #: utils/init/miscinit.c:358 #, c-format +msgid "data directory \"%s\" does not exist" +msgstr "\"%s\" 데이터 디렉터리 없음" + +#: utils/init/miscinit.c:363 +#, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "\"%s\" 디렉터리 읽기 권한 없음: %m" -#: utils/init/miscinit.c:366 +#: utils/init/miscinit.c:371 #, c-format msgid "specified data directory \"%s\" is not a directory" msgstr "지정한 \"%s\" 데이터 디렉터리는 디렉터리가 아님" -#: utils/init/miscinit.c:382 +#: utils/init/miscinit.c:387 #, c-format msgid "data directory \"%s\" has wrong ownership" msgstr "\"%s\" 데이터 디렉터리 소유주가 잘못 되었습니다." -#: utils/init/miscinit.c:384 +#: 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:402 +#: utils/init/miscinit.c:407 #, c-format msgid "data directory \"%s\" has invalid permissions" msgstr "\"%s\" 데이터 디렉터리 접근 권한에 문제가 있습니다." -#: utils/init/miscinit.c:404 +#: 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,o=rx (0750) 값이어야 합니다." -#: utils/init/miscinit.c:462 +#: utils/init/miscinit.c:467 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "\"%s\" 이름의 디렉터리로 이동할 수 없습니다: %m" -#: utils/init/miscinit.c:720 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:807 +#: utils/init/miscinit.c:812 #, c-format msgid "role with OID %u does not exist" msgstr "%u OID 롤이 없음" -#: utils/init/miscinit.c:853 +#: utils/init/miscinit.c:858 #, c-format msgid "role \"%s\" is not permitted to log in" msgstr "\"%s\" 롤은 접속을 허용하지 않음" -#: utils/init/miscinit.c:874 +#: utils/init/miscinit.c:879 #, c-format msgid "too many connections for role \"%s\"" msgstr "\"%s\" 롤의 최대 동시 접속수를 초과했습니다" -#: utils/init/miscinit.c:1045 +#: utils/init/miscinit.c:1050 #, c-format msgid "invalid role OID: %u" msgstr "잘못된 롤 OID: %u" -#: utils/init/miscinit.c:1192 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "데이터베이스 시스템 서비스를 중지했습니다" -#: utils/init/miscinit.c:1279 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "\"%s\" 잠금 파일을 만들 수 없음: %m" -#: utils/init/miscinit.c:1293 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "\"%s\" 잠금파일을 열 수 없음: %m" -#: utils/init/miscinit.c:1300 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "\"%s\" 잠금 파일을 읽을 수 없음: %m" -#: utils/init/miscinit.c:1309 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "\"%s\" 잠금 파일이 비었음" -#: utils/init/miscinit.c:1310 +#: utils/init/miscinit.c:1316 #, c-format msgid "" "Either another server is starting, or the lock file is the remnant of a " @@ -29921,43 +31373,43 @@ msgstr "" "다른 서버가 실행 중이거나, 이전 서버 시작 작업을 실패 해서 잠금 파일이 남아 " "있는 경우입니다." -#: utils/init/miscinit.c:1354 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "\"%s\" 잠금 파일이 이미 있음" -#: utils/init/miscinit.c:1358 +#: 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:1360 +#: 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:1363 +#: 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:1365 +#: 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:1416 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "\"%s\" 옛 잠금 파일을 삭제할 수 없음: %m" -#: utils/init/miscinit.c:1418 +#: utils/init/miscinit.c:1424 #, c-format msgid "" "The file seems accidentally left over, but it could not be removed. Please " @@ -29967,48 +31419,48 @@ msgstr "" "셸 명령을 이용해서 파일을 삭제 하고 다시 시도해 보십시오. - 내용 참 거시기 하" "네" -#: utils/init/miscinit.c:1455 utils/init/miscinit.c:1469 -#: utils/init/miscinit.c:1480 +#: 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:1591 utils/init/miscinit.c:1733 utils/misc/guc.c:5765 +#: 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:1721 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "\"%s\" 파일을 열 수 없음: %m; 어째든 계속 진행함" -#: utils/init/miscinit.c:1746 +#: 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:1785 utils/init/miscinit.c:1801 +#: 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:1787 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "\"%s\" 파일이 없습니다." -#: utils/init/miscinit.c:1803 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "\"%s\" 파일에 잘못된 자료가 기록되어 있습니다." -#: utils/init/miscinit.c:1805 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "initdb 명령을 실행해 새 클러스터를 만들어야 할 수도 있습니다." -#: utils/init/miscinit.c:1813 +#: utils/init/miscinit.c:1819 #, c-format msgid "" "The data directory was initialized by PostgreSQL version %s, which is not " @@ -30017,91 +31469,91 @@ msgstr "" "이 데이터 디렉터리는 PostgreSQL %s 버전으로 초기화 되어있는데, 이 서버의 %s " "버전은 이 버전과 호환성이 없습니다." -#: utils/init/postinit.c:259 +#: utils/init/postinit.c:269 #, c-format msgid "replication connection authorized: user=%s" msgstr "복제 연결 인증: user=%s" -#: utils/init/postinit.c:262 +#: utils/init/postinit.c:272 #, c-format msgid "connection authorized: user=%s" msgstr "연결 인증: user=%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 활성화 (protocol=%s, cipher=%s, bits=%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 "no" -#: 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 "yes" -#: 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:389 +#: utils/init/postinit.c:398 #, c-format msgid "too many connections for database \"%s\"" msgstr "\"%s\" 데이터베이스 최대 접속수를 초과했습니다" -#: utils/init/postinit.c:413 utils/init/postinit.c:420 +#: 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:414 +#: utils/init/postinit.c:423 #, c-format msgid "" "The database was initialized with LC_COLLATE \"%s\", which is not " @@ -30110,14 +31562,14 @@ msgstr "" "데이터베이스가 setlocale()에서 인식할 수 없는 LC_COLLATE \"%s\"(으)로 초기화" "되었습니다." -#: utils/init/postinit.c:416 utils/init/postinit.c:423 +#: 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:421 +#: utils/init/postinit.c:430 #, c-format msgid "" "The database was initialized with LC_CTYPE \"%s\", which is not recognized " @@ -30126,12 +31578,12 @@ msgstr "" "setlocale()에서 인식할 수 없는 \"%s\" LC_CTYPE 값으로 데이터베이스가 초기화되" "었습니다." -#: utils/init/postinit.c:493 +#: utils/init/postinit.c:471 #, c-format msgid "database \"%s\" has a collation version mismatch" msgstr "\"%s\" 데이터베이스의 문자 정렬 규칙은 버전이 맞지 않음" -#: utils/init/postinit.c:495 +#: utils/init/postinit.c:473 #, c-format msgid "" "The database was created using collation version %s, but the operating " @@ -30140,7 +31592,7 @@ msgstr "" "데이터베이스를 만들때 %s 버전으로 문자 정렬 규칙을 만들었는데, 현재 OS는 %s " "버전을 제공하고 있습니다." -#: utils/init/postinit.c:498 +#: utils/init/postinit.c:476 #, c-format msgid "" "Rebuild all objects in this database that use the default collation and run " @@ -30151,59 +31603,75 @@ msgstr "" "VERSION 명령을 실행하거나, 바른 라이브러리 버전을 지정해서, PostgreSQL을 빌드" "하세요." -#: utils/init/postinit.c:904 +#: utils/init/postinit.c:566 +#, c-format +msgid "too many server processes configured" +msgstr "너무 많은 서버 프로세스가 구성됨" + +#: utils/init/postinit.c:567 +#, c-format +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:878 #, c-format msgid "no roles are defined in this database system" msgstr "이 데이터베이스에는 어떠한 롤 정의도 없습니다" -#: utils/init/postinit.c:905 +#: 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:942 +#: utils/init/postinit.c:924 #, c-format msgid "must be superuser to connect in binary upgrade mode" msgstr "슈퍼유저만 바이너리 업그레이드 모드 중에 연결 할 수 있음" -#: utils/init/postinit.c:962 +#: 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:968 +#: utils/init/postinit.c:950 #, c-format msgid "" -"remaining connection slots are reserved for roles with privileges of the " -"\"%s\" role" +"remaining connection slots are reserved for roles with privileges of the \"%s" +"\" role" msgstr "남은 연결 슬롯은 \"%s\" 롤 권한이 있는 롤용으로 남겨 놓았음" -#: utils/init/postinit.c:980 +#: utils/init/postinit.c:962 #, c-format msgid "permission denied to start WAL sender" msgstr "WAL 송신기 시작할 권한 없음" -#: utils/init/postinit.c:981 +#: utils/init/postinit.c:963 #, c-format msgid "Only roles with the %s attribute may start a WAL sender process." msgstr "WAL 송시기 시작은 %s 속성이 있는 롤만 할 수 있습니다." -#: utils/init/postinit.c:1099 +#: utils/init/postinit.c:1081 #, c-format msgid "It seems to have just been dropped or renamed." msgstr "삭제되었거나 이름이 바뀐 것 같습니다." -#: utils/init/postinit.c:1103 +#: utils/init/postinit.c:1085 #, c-format msgid "database %u does not exist" msgstr "%u 데이터베이스가 없음" -#: utils/init/postinit.c:1112 +#: utils/init/postinit.c:1094 #, c-format msgid "cannot connect to invalid database \"%s\"" msgstr "잘못된 \"%s\" 데이터베이스로 접속할 수 없음" -#: utils/init/postinit.c:1173 +#: utils/init/postinit.c:1155 #, c-format msgid "The database subdirectory \"%s\" is missing." msgstr "데이터베이스 디렉터리에 \"%s\" 하위 디렉터리가 없습니다" @@ -30218,60 +31686,60 @@ msgstr "\"%s\" 롤은 \"%s\" 롤로 SET ROLE 작업 할 수 없음" 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 문자 집합에 대한 예기치 않은 인코딩 ID임" -#: 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 문자 집합에 대한 예기치 않은 인코딩 ID임" -#: 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 "잘못된 유니코드 코드 포인트" -#: 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 " @@ -30290,13 +31758,13 @@ 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\"." @@ -30304,50 +31772,50 @@ 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:4071 -#: utils/misc/guc.c:4212 +#: 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 " @@ -30356,22 +31824,22 @@ 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" @@ -30379,7 +31847,7 @@ 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" @@ -30391,12 +31859,12 @@ msgstr "" "PGDATA 이름의 환경 변수를 만들고 그 값으로 해당 디렉터리를 지정한 뒤,\n" "이 프로그램을 다시 실행해 보십시오.\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" @@ -30409,7 +31877,7 @@ msgstr "" "PGDATA 이름의 환경 변수를 만들고 그 값으로 해당 디렉터리를 지정한 뒤,\n" "이 프로그램을 다시 실행해 보십시오.\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" @@ -30422,7 +31890,7 @@ msgstr "" "PGDATA 이름의 환경 변수를 만들고 그 값으로 해당 디렉터리를 지정한 뒤,\n" "이 프로그램을 다시 실행해 보십시오.\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" @@ -30435,126 +31903,128 @@ msgstr "" "PGDATA 이름의 환경 변수를 만들고 그 값으로 해당 디렉터리를 지정한 뒤,\n" "이 프로그램을 다시 실행해 보십시오.\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)를 벗어남" +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)를 벗어남" +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:4696 +#: 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:4671 -#: utils/misc/guc.c:6756 +#: 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:4370 utils/misc/guc.c:4418 utils/misc/guc.c:5450 +#: 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:4371 utils/misc/guc.c:4419 utils/misc/guc.c:5451 +#: 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:4629 +#: utils/misc/guc.c:4626 #, c-format msgid "ALTER SYSTEM is not allowed in this environment" msgstr "ALTER SYSTEM 명령은 이 환경에서는 허용하지 않음" -#: utils/misc/guc.c:4661 +#: 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:4740 +#: 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:4785 +#: utils/misc/guc.c:4787 #, c-format msgid "could not parse contents of file \"%s\"" msgstr "\"%s\" 파일의 내용을 분석할 수 없음" -#: utils/misc/guc.c:4967 +#: utils/misc/guc.c:4970 #, c-format msgid "attempt to redefine parameter \"%s\"" msgstr "\"%s\" 매개 변수를 다시 정의하려고 함" -#: utils/misc/guc.c:5306 +#: utils/misc/guc.c:5309 #, c-format msgid "invalid configuration parameter name \"%s\", removing it" msgstr "알 수 없는 환경 매개 변수 이름 \"%s\", 이 설정은 지웁니다." -#: utils/misc/guc.c:5308 +#: utils/misc/guc.c:5311 #, c-format msgid "\"%s\" is now a reserved prefix." msgstr "\"%s\" 이름은 현재 예약된 접두사입니다." -#: utils/misc/guc.c:6179 +#: utils/misc/guc.c:6182 #, c-format msgid "while setting parameter \"%s\" to \"%s\"" msgstr "\"%s\" 매개 변수 값을 \"%s\" (으)로 바꾸는 중" -#: utils/misc/guc.c:6348 +#: utils/misc/guc.c:6351 #, c-format msgid "parameter \"%s\" could not be set" msgstr "\"%s\" 매개 변수는 설정할 수 없음" -#: utils/misc/guc.c:6438 +#: utils/misc/guc.c:6441 #, c-format msgid "could not parse setting for parameter \"%s\"" msgstr "지정한 \"%s\" 매개 변수값의 구문분석을 실패했습니다." -#: utils/misc/guc.c:6888 +#: utils/misc/guc.c:6897 #, c-format msgid "invalid value for parameter \"%s\": %g" msgstr "잘못된 \"%s\" 매개 변수의 값: %g" @@ -30579,263 +32049,275 @@ 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 "자원 사용량 / I/O" + +#: 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 "Write-Ahead 로그 / 설정값" -#: utils/misc/guc_tables.c:689 +#: utils/misc/guc_tables.c:705 msgid "Write-Ahead Log / Checkpoints" msgstr "Write-Ahead 로그 / 체크포인트" -#: utils/misc/guc_tables.c:690 +#: utils/misc/guc_tables.c:706 msgid "Write-Ahead Log / Archiving" msgstr "Write-Ahead 로그 / 아카이브" -#: utils/misc/guc_tables.c:691 +#: utils/misc/guc_tables.c:707 msgid "Write-Ahead Log / Recovery" msgstr "Write-Ahead 로그 / 복구" -#: utils/misc/guc_tables.c:692 +#: utils/misc/guc_tables.c:708 msgid "Write-Ahead Log / Archive Recovery" msgstr "Write-Ahead 로그 / 아카이브 복구" -#: utils/misc/guc_tables.c:693 +#: utils/misc/guc_tables.c:709 msgid "Write-Ahead Log / Recovery Target" msgstr "Write-Ahead 로그 / 복구 대상" -#: utils/misc/guc_tables.c:694 +#: utils/misc/guc_tables.c:710 msgid "Write-Ahead Log / Summarization" msgstr "Write-Ahead 로그 / 요약" -#: 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 "Autovacuum" +#: 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 "실행계획자가 순차적-스캔(sequential-sca) 계획을 사용함" -#: 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 "실행계획기가 bitmap-scan 계획을 사용하도록 함" -#: 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 "실행계획자가 명시 정렬 단계(explicit sort step)를 사용함" -#: utils/misc/guc_tables.c:835 +#: utils/misc/guc_tables.c:854 msgid "Enables the planner's use of incremental sort steps." msgstr "실행계획자가 증분 정렬 단계(incremental sort step)를 사용함" -#: 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 "실행계획자가 materialization 계획을 사용함" -#: utils/misc/guc_tables.c:865 +#: utils/misc/guc_tables.c:884 msgid "Enables the planner's use of memoization." msgstr "실행계획자가 memoization 계획을 사용함" -#: utils/misc/guc_tables.c:875 +#: utils/misc/guc_tables.c:894 msgid "Enables the planner's use of nested-loop join plans." msgstr "실행계획자가 근접순환 조인(nested-loop join) 계획을 사용함" -#: utils/misc/guc_tables.c:885 +#: utils/misc/guc_tables.c:904 msgid "Enables the planner's use of merge join plans." msgstr "실행계획자가 병합 조인(merge join) 계획을 사용함" -#: utils/misc/guc_tables.c:895 +#: utils/misc/guc_tables.c:914 msgid "Enables the planner's use of hash join plans." msgstr "실행계획자가 해시 조인(hash join) 계획을 사용함" -#: utils/misc/guc_tables.c:905 +#: utils/misc/guc_tables.c:924 msgid "Enables the planner's use of gather merge plans." msgstr "실행계획자가 병합 수집(gather merge) 계획을 사용함" -#: utils/misc/guc_tables.c:915 +#: utils/misc/guc_tables.c:934 msgid "Enables partitionwise join." msgstr "partitionwise join 활성화" -#: utils/misc/guc_tables.c:925 +#: utils/misc/guc_tables.c:944 msgid "Enables partitionwise aggregation and grouping." msgstr "partitionwise 집계 및 그룹핑 활성화" -#: 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." @@ -30843,7 +32325,7 @@ 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." @@ -30851,7 +32333,7 @@ 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, " @@ -30861,64 +32343,74 @@ msgstr "" "정렬된 입력을 제공하는 계획을 작성할 수 있습니다. 비활성화하면 쿼리 실행 중" "에 암묵적인 정렬을 항상 합니다." -#: 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 "unique self-join 사용 금지 활성화" + +#: 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 "유전적 쿼리 최적화(GEQO)를 사용함" -#: 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 "다른 방법으로 전역 환경설정 값을 관리하는 환경에서는 off로 설정할 수 있습니다." +msgstr "" +"다른 방법으로 전역 환경설정 값을 관리하는 환경에서는 off로 설정할 수 있습니" +"다." -#: 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 "" -"서버 reload 작업 중 \"ssl_passphrase_command\" 로 지정한 명령을 실행 할 것인지를 " -"제어함." +"서버 reload 작업 중 \"ssl_passphrase_command\" 로 지정한 명령을 실행 할 것인" +"지를 제어함." -#: utils/misc/guc_tables.c:1079 +#: utils/misc/guc_tables.c:1118 msgid "Give priority to server ciphersuite order." msgstr "SSL 인증 알고리즘 우선 순위를 정함" -#: 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 " @@ -30930,11 +32422,11 @@ msgstr "" "스템의 비정상적인 동작이나, 하드웨어에서 오류가 발생되었을 경우에도 자료를 안" "전하게 지킬 수 있도록 도와줄 것입니다." -#: 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 " @@ -30949,11 +32441,11 @@ msgstr "" "니다. 이 설정은 데이터 클러스터에서 체크섬 기능이 활성화 되어 있는 경우에만 " "영향을 받습니다." -#: 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 " @@ -30962,17 +32454,17 @@ msgid "" "the rows on the damaged page." msgstr "" "일반적으로 손상된 페이지 헤더를 발견하게 되면, PostgreSQL에서는 오류를 발생하" -"고, 현재 트랜잭션을 중지합니다. \"zero_damaged_pages\" 값을 true로 지정하면, 이" -"런 손상된 페이지를 발견하면, 경고 메시지를 보여주고, 그 페이지의 크기를 0으" +"고, 현재 트랜잭션을 중지합니다. \"zero_damaged_pages\" 값을 true로 지정하면, " +"이런 손상된 페이지를 발견하면, 경고 메시지를 보여주고, 그 페이지의 크기를 0으" "로 만들고 작업을 계속 진행합니다. 이 기능을 사용한다 함은 손상된 자료를 없애" "겠다는 것을 의미합니다. 이것은 곧 저장되어있는 자료가 삭제 될 수도 있음을 의" "미하기도 합니다." -#: 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. " @@ -30983,17 +32475,17 @@ msgid "" "in standby mode." msgstr "" "PostgreSQL은 WAL 기반 복구 작업에서 해당 페이지가 잘못되어 있으면, PANIC 오류" -"를 내고 복구 작업을 중지하고 멈춥니다. \"ignore_invalid_pages\" 값을 true로 지" -"정하면, 이런 손상된 페이지가 있을 때, 경고 메시지를 보여주고, 복구 작업 계속 " -"진행합니다. 이 기능을 사용하면 서버 비정상 종료나 자료 손실 숨은 손상, 기타 " -"심각한 문제가 일어 날 수 있습니다. 이 설정은 복구 작업 때나 대기 모드 상태에" -"서만 작동합니다." +"를 내고 복구 작업을 중지하고 멈춥니다. \"ignore_invalid_pages\" 값을 true" +"로 지정하면, 이런 손상된 페이지가 있을 때, 경고 메시지를 보여주고, 복구 작업 " +"계속 진행합니다. 이 기능을 사용하면 서버 비정상 종료나 자료 손실 숨은 손상, " +"기타 심각한 문제가 일어 날 수 있습니다. 이 설정은 복구 작업 때나 대기 모드 " +"상태에서만 작동합니다." -#: 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 " @@ -31005,7 +32497,7 @@ 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." @@ -31013,106 +32505,128 @@ msgstr "" "체크포인트 작업 후 자료 페이지에 첫 변경이 있는 경우, 치명적인 변경이 아닐지" "라도 해당 페이지 전체를 기록합니다." -#: utils/misc/guc_tables.c:1172 +#: utils/misc/guc_tables.c:1211 msgid "Writes zeroes to new WAL files before first use." msgstr "처음 사용 되기 전에 WAL 파일을 0으로 채웁니다." -#: 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 "연결 맺기를 위한 사전 인증작업 관련 세부사항을 기록합니다." -#: 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 "서버가 assertion 검사 기능이 활성화 되어 실행되는지 보여 줌" -#: 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 "" "백엔드 비정상 종료 될 때 하위 프로세스에게 SIGQUIT 대신에 SIGABRT 신호를 보냄" -#: utils/misc/guc_tables.c:1287 +#: utils/misc/guc_tables.c:1317 msgid "Send SIGABRT not SIGKILL to stuck child processes." msgstr "멈춘 하위 프로세스에게 SIGKILL 대신에 SIGABRT 신호를 보냄" -#: 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 "" +"이 값을 설정하면 raw_expression_tree_walker()가 DML 명령문의 모든 원시 " +"구문 분석 트리를 검사하여 해당 함수에서 발생하는 오류와 누락을 쉽게 " +"잡을 수 있습니다." + +#: 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트리 작업에 자원(메모리, CPU) 사용 통계를 기록에 남기" -#: 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." @@ -31120,67 +32634,75 @@ 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 "데이터베이스 I/O 활동에 대한 통계를 수집합니다." -#: utils/misc/guc_tables.c:1421 +#: utils/misc/guc_tables.c:1513 msgid "Collects timing statistics for WAL I/O activity." msgstr "WAL I/O 활동에 작업 시간 통계를 수집합니다." -#: 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 " @@ -31191,11 +32713,11 @@ msgstr "" "true로 바꾼다면, 이 IP의 호스트 이름을 구해서 이 이름을 사용합니다 이것의 성" "능은 OS의 IP에서 이름구하기 성능과 관계됩니다." -#: utils/misc/guc_tables.c:1535 +#: utils/misc/guc_tables.c:1636 msgid "Treats \"expr=NULL\" as \"expr IS NULL\"." msgstr "\"표현식=NULL\" 식을 \"표현식 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 " @@ -31206,19 +32728,19 @@ msgstr "" "표현식 = NULL 구문을 표현식 IS NULL 구문으로 바꾸어서 처리하도록 해서 계산에 " "따라 true, false를 반환합니다." -#: 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." @@ -31226,25 +32748,25 @@ msgstr "" "읽기 전용 직렬화 가능한 트랜잭션이 직렬 처리에서 오류가 없을 때까지 그 트랜잭" "션을 지연할 것이지 결정함" -#: utils/misc/guc_tables.c:1587 -msgid "Enable row security." -msgstr "로우 단위 보안 기능을 활성화" +#: 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." +#: 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." @@ -31252,42 +32774,42 @@ msgstr "" "이 값이 on이면 배열 입력 값에 따옴표 없이 입력된 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 구문은 더 이상 지원하지 않음; 이 값은 false만 허용합니다." -#: utils/misc/guc_tables.c:1632 +#: utils/misc/guc_tables.c:1733 msgid "" -"Start a subprocess to capture stderr output and/or csvlogs into log files." +"Start a subprocess to capture stderr, csvlog and/or jsonlog into log files." msgstr "" -"로그 기록 하위 프로세스를 시작하여 stderr 출력 및/또는 csvlog를 로그 파일에 " -"씁니다." +"로그 기록 하위 프로세스를 시작하여 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." +#: 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 "date, time 값을 정수 기반으로 할지를 보여줍니다." -#: 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." @@ -31295,54 +32817,54 @@ 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." +#: 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 "" "읽기 전용 보조 서버가 보내는 쿼리 충돌을 피하기 위한 피드백을 주 서버가 받음" -#: 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." @@ -31350,16 +32872,16 @@ 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." @@ -31367,99 +32889,116 @@ 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 "Gather와 Gather Merge 작업을 서브플랜에서도 할지를 제어함." -#: utils/misc/guc_tables.c:1906 +#: utils/misc/guc_tables.c:2005 msgid "Should gather nodes also run subplans or just gather tuples?" msgstr "서브플랜에서 gather 노드를 실행할지, 단지 튜플만 모을지 지정" -#: 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 컴파일된 함수 등록" -#: utils/misc/guc_tables.c:1944 +#: utils/misc/guc_tables.c:2043 msgid "Write out LLVM bitcode to facilitate JIT debugging." msgstr "LLVM bitcode 출력에 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 "perf 프로파일러용 JIT 컴파일된 함수 등록" -#: utils/misc/guc_tables.c:1983 +#: utils/misc/guc_tables.c:2082 msgid "Allow JIT compilation of tuple deforming." msgstr "튜플 deform에 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 "활성화 되면, 구현 가능한 모든 구문에 대해서 이벤트 트리거가 실행됩니다." +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 "" -"물리 복제 대기 서버가 주 서버로부터 논리 failover 복제 슬롯 동기화 하도록 합니다." +"물리 복제 대기 서버가 주 서버로부터 논리 failover 복제 슬롯 동기화 하도록 합" +"니다." + +#: utils/misc/guc_tables.c:2130 +msgid "Enables deprecation warnings for MD5 passwords." +msgstr "MD5 비밀번호 사용할 때 지원 중단 경고를 보여줍니다." -#: utils/misc/guc_tables.c:2040 +#: 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: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." @@ -31467,12 +33006,12 @@ 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." @@ -31480,12 +33019,12 @@ 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 "" "이 크기를 초과할 경우 JOIN 구문이 결합되지 않는 FROM 목록 크기를 설정합니다." -#: 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." @@ -31493,32 +33032,32 @@ 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 "" "이 임계값을 초과할 경우 GEQO가 사용되는 FROM 항목의 임계값을 설정합니다." -#: 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." +#: 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." @@ -31526,38 +33065,42 @@ msgstr "" "읽기 전용 보조 서버가 아카이브된 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 "" "읽기 전용 보조 서버가 스트림 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 정보를 보내는 서버에게 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 "" "WAL 정보를 보내는 서버로부터 보낸 자료를 받기위해 기다릴 수 있는 최대 허용 시" "간을 설정합니다." -#: 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 "superuser 동시 접속수를 지정합니다." -#: 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." @@ -31565,92 +33108,95 @@ 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, autovacuum 작업용 버퍼 풀 크기를 설정합니다." -#: 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 "서버의 메인 공유 메모리 영역 크기를 보여줌(MB 단위로 근사값처리함)" -#: 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 "메인 공유 메모리 영역용 huge 페이지 개수를 보여줌" -#: 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은 huge page를 지원하지 않습니다." -#: 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 "커밋 시간 캐시용 버퍼 풀 크기 지정" -#: 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 "이 값을 shared_buffers의 일부로 하려면 0을 지정합니다." +#: 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 "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 "MultiXact offset 캐시용 버퍼 풀 크기 지정" -#: 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 "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 "직렬화 가능한 트랜잭션 캐시용 버퍼 풀 크기 지정" -#: 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 "하위트랜잭션 캐시를 위한 버퍼 풀 크기를 지정합니다." -#: 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 "트랜잭션 상태 캐시를 위한 버퍼 풀 크기를 지정합니다." -#: 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 "유닉스 도메인 소켓 파일의 액세스 권한을 지정함" -#: 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 " @@ -31661,11 +33207,11 @@ msgstr "" "수 값은 chmod 및 umask 시스템 호출에서 수락되는 형태의 숫자 모드 지정이어야 " "합니다. (일반적인 8진수 형식을 사용하려면 숫자가 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 " @@ -31675,11 +33221,11 @@ msgstr "" "이어야 합니다. (일반적인 8진수 형식을 사용하려면 숫자가 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 " @@ -31689,11 +33235,11 @@ msgstr "" "이어야 합니다. (일반적인 8진수 형식을 사용하려면 숫자가 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." @@ -31701,136 +33247,137 @@ 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 "스택깊이(KB 단위) 최대값을 지정합니다." -#: 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 +#: utils/misc/guc_tables.c:2676 +msgid "-1 means use \"vacuum_cost_limit\"." +msgstr "-1은 \"vacuum_cost_limit\" 값을 사용합니다." + +#: utils/misc/guc_tables.c:2685 msgid "" -"Sets the maximum number of simultaneously open files for each server process." -msgstr "각각의 서버 프로세스에서 동시에 열릴 수 있는 최대 파일 갯수를 지정함." +"Sets the maximum number of files each server process is allowed to open " +"simultaneously." +msgstr "" +"각각의 서버 프로세스가 각자 동시에 열릴 수 있는 최대 파일 갯수를 지정함." -#: utils/misc/guc_tables.c:2570 +#: 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 "idle-in-transaction 상태로 있을 수 있는 최대 시간 지정" -#: 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 "idle 상태로 있을 수 있는 최대 시간 지정" -#: 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 "" "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 작업에서 트랜잭션ID 겹침 방지를 피하기 위한 freeze 작업을 하는 테이블 " "나이" -#: 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." @@ -31838,40 +33385,40 @@ msgstr "" "VACUUM 작업에서 트랜잭션ID 겹침 방지를 피하기 위한 freeze 작업을 하는 멀티트" "랜잭션 나이" -#: 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 "" "공유 잠금 테이블은 한 번에 잠궈야 할 고유 개체 수가 " -"\"max_locks_per_transaction\" * (\"max_connections\" 또는 미리 준비된 트랜잭션 수)를 " -"넘지 않는다는 가정 하에 크기가 지정됩니다." +"\"max_locks_per_transaction\" * (\"max_connections\" 또는 미리 준비된 트랜잭" +"션 수)를 넘지 않는다는 가정 하에 크기가 지정됩니다." -#: 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 "" "공유 predicate 잠금 테이블은 한 번에 잠궈야 할 고유 개체 수가 " -"\"max_pred_locks_per_transaction\" * (\"max_connections\" 또는 미리 준비된 트랜잭션 " -"수)를 넘지 않는다는 가정 하에 크기가 지정됩니다." +"\"max_pred_locks_per_transaction\" * (\"max_connections\" 또는 미리 준비된 트" +"랜잭션 수)를 넘지 않는다는 가정 하에 크기가 지정됩니다." -#: 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 "릴레이션 당 최대 predicate-lock 페이지와 튜플 수 지정" -#: 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." @@ -31879,11 +33426,11 @@ 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 "페이지당 predicate-lock 튜플 최대 수 지정." -#: 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." @@ -31891,132 +33438,143 @@ 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 +#: 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. Zero " -"turns off the warning." +"WAL segment files happen more frequently than this amount of time. 0 " +"disables the warning." msgstr "" "체크포인트 작업이 지금 지정한 시간(초)보다 자주 체크포인트 세그먼트 파일에 내" "용이 꽉 차는 사태가 발생하면 경고 메시지를 서버 로그에 남깁니다. 이 값을 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은 강제 writeback 비활성화" + +#: 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 "shared_buffers 일부로 지정하려면 -1" +#: utils/misc/guc_tables.c:3012 +msgid "-1 means use a fraction of \"shared_buffers\"." +msgstr "\"shared_buffers\"의 일부를 사용하려면 지정하려면 -1" -#: utils/misc/guc_tables.c:2894 +#: utils/misc/guc_tables.c:3022 msgid "Time between WAL flushes performed in the WAL writer." msgstr "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 쓰기 프로세스가 이 양만큼 쓰고 flush 합니다." -#: 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 "WAL 쓰기 대신해서 fsync할 새 파일의 최소 크기" -#: 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 +#: 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." +"deletion or recycling, if this much space is occupied by WAL on disk. -1 " +"means no maximum." msgstr "" -"디스크에서 WAL이 이 정도의 공간을 차지하면 복제 슬롯은 실패로 표시되고, " -"WAL 조각 파일들은 삭제 또는 재활용 됩니다." +"WAL 파일이 많이 남아 디스크 공간이 부족해 진다면, 복제 슬롯이 문제가 있는 것" +"으로 표시할 것이며, 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 "" "트랜잭션과 트랜잭션 로그의 적용 사이의 간격을 microsecond 단위로 지정함" -#: 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 "\"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 " @@ -32027,28 +33585,30 @@ msgstr "" "은 정수여야 합니다(FLT_DIG or DBL_DIG as appropriate - 무슨 말인지). 음수면 " "그 만큼 소숫점 자리를 더 많이 생략해서 정확도를 떨어뜨립니다." -#: utils/misc/guc_tables.c:3008 +#: 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." +"logged. Sampling is determined by \"log_statement_sample_rate\"." msgstr "" -"log_statement_sample_rate 설정으로 수집할 로그 가운데, 기록할 최소 쿼리 수행 " -"시간" +"\"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." @@ -32056,208 +33616,265 @@ msgstr "" "이 시간을 초과할 경우 자동 청소 작업 로그를 남길 최소 실행 시간을 설정합니" "다." -#: utils/misc/guc_tables.c:3035 -msgid "Zero prints all actions. -1 turns autovacuum logging off." +#: utils/misc/guc_tables.c:3175 +msgid "" +"-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "" -"0을 지정하면 모든 작업을 로깅하고, -1을 지정하면 자동 청소관련 로그를 남기지 " -"않음" +"-1 = autovacuum 작업 로깅 중지, 0 = 모든 autovacuum 작업 로깅" -#: 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." +#: 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 "" -"유지보수 작업에 사용되는 \"effective_io_concurrency\"의 변형입니다." +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 "데이터 읽기 쓰기 크기의 제한을 겁니다." -#: utils/misc/guc_tables.c:3157 +#: utils/misc/guc_tables.c:3300 +msgid "Max number of IOs that one process can execute simultaneously." +msgstr "하나의 프로세스가 동시에 실행할 수 있는 IO의 최대 수" + +#: utils/misc/guc_tables.c:3312 +msgid "Number of IO worker processes, for io_method=worker." +msgstr "io_method=worker 일때 준비할 IO 작업자 프로세스 수" + +#: 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 "미리 쓰기 로그의 블록 크기를 표시합니다." -#: 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 "미리 쓰기 로그 세그먼트당 페이지 크기를 표시합니다." -#: 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은 insert는 vacuum에서 제외" +#: 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 = insert 작업에 대한 청소 비활성화" + +#: 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 겹침 방지를 위해 테이블에 대해 autovacuum 작업을 수행할 테이블 나" "이를 지정합니다." -#: 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 "" "멀티 트랜잭션 ID 겹침 방지를 위해 테이블에 대해 autovacuum 작업을 수행할 트랜" "잭션 나이를 지정합니다." -#: 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 "autovacuum 작업자 용도 미리 할당된 백엔드 슬롯 수 지정" + +#: utils/misc/guc_tables.c:3599 msgid "" "Sets the maximum number of simultaneously running autovacuum worker " "processes." msgstr "동시에 작업할 수 있는 autovacuum 작업자 최대 수 지정" -#: 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 "각 autovacuum 작업자 프로세스가 사용할 메모리 최대치" -#: 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 연결 유지 실행 간격입니다." -#: 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." +#: 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 +#: utils/misc/guc_tables.c:3686 msgid "" "Number of consecutive keepalive retransmits that can be lost before a " -"connection is considered dead. A value of 0 uses the system default." +"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 " @@ -32266,89 +33883,97 @@ msgstr "" "즉, PostgreSQL에서 사용하는 총 캐시 크기입니다(커널 캐시와 공유 버퍼 모두 포" "함). 이 값은 디스크 페이지 단위로 측정되며, 일반적으로 각각 8kB입니다." -#: 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)." +#: utils/misc/guc_tables.c:3754 +msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "" -"0을 지정하면 모든 파일이 기록됩니다. 기본 값은 -1로, 이 기능이 해제됩니다." +"-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 인덱스를 위한 팬딩(pending) 목록의 최대 크기 지정" -#: 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 "요청되는 huge page 크기" -#: 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." @@ -32356,11 +33981,11 @@ 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." @@ -32368,7 +33993,7 @@ 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." @@ -32376,7 +34001,7 @@ 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." @@ -32384,7 +34009,7 @@ 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." @@ -32392,71 +34017,75 @@ 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-컴파일된 함수 최적화 함" -#: 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 "테이블 해시 작업에서 쓸 \"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." @@ -32464,11 +34093,11 @@ msgstr "" "vacuum 작업을 진행할 update, delete 작업량을 전체 자료에 대한 분수값으로 지정" "합니다." -#: 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 "vacuum을 위한 전체 튜플 대비 insert 튜플의 비율" -#: 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." @@ -32476,148 +34105,173 @@ msgstr "" "통계 수집 작업을 진행할 insert, update, delete 작업량을 전체 자료에 대한 분수" "값으로 지정합니다." -#: 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 "체크포인트 반복 주기 안에 작업을 완료할 분수값(1=100%)" -#: 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 "\"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 "" +"릴레이션 청소 작업에서 검사 대상이 되는 페이지 비율." +"0 보다 크게 설정하면, 적극적 검사를 하지 않아 " +"영구 보관 작업이 완전하지 않을 수 있음." + +#: 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 = 적극적 검사 금지, 1 = 100% 적극적 검사, 대상은 릴레이션에 자료가 있는 모든 페이지. " +"청소 작업으로 이들 페이지 대상 영구 보관 작업이 성공한다면, " +"상한은 100%보다 낮습니다. 왜냐하면, 여러 번의 청소 작업으로 " +"영구 보관 작업을 분산하는 것이기 목표이기 때문입니다." + +#: 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 "복구를 끝내는 지점을 가장 최근으로 하려면, \"immediate\"로 지정하세요." -#: utils/misc/guc_tables.c:4017 +#: utils/misc/guc_tables.c:4234 msgid "Sets the transaction ID up to which recovery will proceed." msgstr "복구를 끝낼 마지막 트랜잭션 ID 지정" -#: 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 " @@ -32627,68 +34281,89 @@ 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 "비워두면 OS 설정값을 사용함" + +#: 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." @@ -32696,138 +34371,161 @@ 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 "syslog에서 구분할 PostgreSQL 메시지에 사용될 프로그램 이름을 지정." -#: 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 "시간대(time zone)를 지정함." -#: 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 "유닉스 도메인 소켓의 소유주를 지정" -#: utils/misc/guc_tables.c:4407 +#: utils/misc/guc_tables.c:4636 msgid "" -"The owning user of the socket is always the user that starts the server." -msgstr "소켓 소유자는 항상 서버를 시작하는 사용자입니다." +"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 "유닉스 도메인 소켓을 만들 디렉터리를 지정합니다." -#: 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 "postmaster PID가 기록된 파일의 경로를 지정합니다." -#: 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 "서버 인증서 파일 위치를 지정함" -#: 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 인증 authority 파일 위치" -#: 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:4814 +msgid "An empty string means use the default cipher suites." +msgstr "빈 문자열이면 기본 암호 알고리즘 목록을 사용함." + +#: 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:4599 -msgid "Sets the curve to use for ECDH." -msgstr "ECDH에 사용할 curve 설정" +#: 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:4614 +#: 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." @@ -32835,51 +34533,63 @@ 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 "파일 접근을 위해 직접 I/O를 사용합니다." -#: utils/misc/guc_tables.c:4702 +#: utils/misc/guc_tables.c:4932 +msgid "An empty string disables direct I/O." +msgstr "비워두면 다이렉트 I/O 비활성화" + +#: utils/misc/guc_tables.c:4942 msgid "" "Lists streaming replication standby server replication slot names that " "logical WAL sender processes will wait for." 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 "" -"논리 WAL 송신 프로세스는 지정된 복제 슬롯이 WAL 수신을 확인한 후에만 " -"디코딩된 변경 사항을 출력 플러그인으로 전송합니다." +"논리 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 "지정된 종류의 non-system 릴레이션에 대한 접근을 금지합니다." -#: utils/misc/guc_tables.c:4736 +#: utils/misc/guc_tables.c:4967 +msgid "Lists libraries that may be called to validate OAuth v2 bearer tokens." +msgstr "OAuth v2 bearer 토큰 유효성 검사 때 사용하는 라이브러리 목록" + +#: 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." @@ -32887,114 +34597,118 @@ msgstr "" "각 수준은 이 수준 뒤에 있는 모든 수준이 포함됩니다. 수준이 뒤에 있을수록 전송" "되는 메시지 수가 적습니다." -#: utils/misc/guc_tables.c:4767 +#: utils/misc/guc_tables.c:5030 msgid "Enables in-core computation of query identifiers." msgstr "query_id를 내부적으로 사용함" -#: 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 "현재 트랜잭션 독립성 수준(isolation level)을 지정함." -#: 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 기능을 사용할 때, 사용할 syslog \"facility\" 값을 지정." -#: 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 "현재 트랜잭션 격리 수준(isolation level)을 지정함." -#: utils/misc/guc_tables.c:4915 +#: utils/misc/guc_tables.c:5178 msgid "Allows archiving of WAL files using \"archive_command\"." msgstr "\"archive_command\"를 사용하여 WAL 파일을 따로 보관하도록 설정합니다." -#: 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." @@ -33002,84 +34716,86 @@ msgstr "" "암시적 구문 분석 및 직렬화 작업의 XML 데이터를 문서 또는 내용 조각으로 간주할" "지 여부를 설정합니다." -#: utils/misc/guc_tables.c:5027 +#: utils/misc/guc_tables.c:5300 msgid "Use of huge pages on Linux or Windows." msgstr "리눅스 또는 Windows huge 페이지 사용 여부" -#: utils/misc/guc_tables.c:5037 +#: utils/misc/guc_tables.c:5310 msgid "Indicates the status of huge pages." msgstr "huge page 상태를 보고할지 지정" -#: 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 "" -"충돌 복구 전에 데이터 디렉토리를 동기화하는 방법을 설정합니다." +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 "" -"대량 트랜잭션에서 변경 사항을 강제로 즉시 스트리밍하거나 직렬화합니다." +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 "비동기 I/O 작업 실행을 위한 방법을 선택합니다." #: utils/misc/help_config.c:129 #, c-format @@ -33111,6 +34827,32 @@ 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 "" +"먼저 OS에서 지원하는 스택 depth 최대값을 확인한 뒤, 허용범위 안에서 " +"\"max_stack_depth\" (현재값: %dkB) 매개 변수 값의 설정치를 증가시키세요." + +#: 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 "OS의 \"ulimit -s\" 명령과 같은 것으로 스택 깊이를 늘려주십시오." + #: utils/misc/timeout.c:520 #, c-format msgid "cannot add more timeout reasons" @@ -33132,62 +34874,62 @@ 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\" time zone 파일의 %d번째 줄에 time zone 생략형이 빠졌음" -#: 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\" time zone 파일의 %d번째 줄에 time zone 옵셋이 빠졌음" -#: 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\" time zone 파일의 %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." +"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 "잘못된 time zone 파일 이름: \"%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\" 파일에서 time zone 파일 재귀호출 최대치를 초과했음" -#: 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\" time zone 파일을 읽을 수 없음: %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 "\"%s\" 표준 시간대 파일의 %d번째 줄에 파일 이름이 없는 @INCLUDE가 있음" @@ -33203,12 +34945,12 @@ msgstr "\"%s\" 메모리 컨텍스트를 만드는 동안 오류가 발생했습 msgid "could not attach to dynamic shared area" msgstr "동적 공유 메모리 영역을 할당할 수 없음" -#: utils/mmgr/mcxt.c:1155 +#: utils/mmgr/mcxt.c:1160 #, 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:1304 #, c-format msgid "logging memory contexts of PID %d" msgstr "%d번 PID의 메모리 현황을 로깅함" @@ -33248,13 +34990,12 @@ msgstr "WITH HOLD 옵션으로 커서를 만든 트랜잭션을 PREPARE할 수 msgid "" "cannot perform transaction commands inside a cursor loop that is not read-" "only" -msgstr "" -"읽기 전용이 아닌 커서 루프 내에서 트랜잭션 명령을 수행할 수 없습니다" +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 @@ -33266,61 +35007,61 @@ msgstr "공유된 tuplestore 임시 파일에서 예상치 못한 청크" msgid "could not seek to block %u in shared tuplestore temporary file" msgstr "공유 tuplestore 임시 파일에서 %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 "tuplestore 임시 파일에서 seek 작업을 할 수 없음" -#: 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 SNAPSHOP 명령을 호출해야 함" -#: utils/time/snapmgr.c:1402 +#: utils/time/snapmgr.c:1420 #, c-format msgid "" "a snapshot-importing transaction must have isolation level SERIALIZABLE or " @@ -33329,17 +35070,17 @@ 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 " @@ -33348,7 +35089,7 @@ 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 " @@ -33356,22 +35097,22 @@ msgid "" 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 "" @@ -33382,413 +35123,421 @@ msgstr "" 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 "" "지역시간대 간격(time zone interval) 값은 시(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 "PROGRAM 옵션과 STDIN/STDOUT 옵션은 함께 쓸 수 없습니다" -#: 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 "구현되지 않은 enum 값을 삭제 중" -#: 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 "집계 함수는 output 인자를 지정할 수 없음" -#: 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 "JSON_TABLE 경로 명세에서는 문자열 상수만 지원함" -#: gram.y:14469 +#: gram.y:14641 #, c-format msgid "precision for type float must be at least 1 bit" msgstr "실수형 자료의 정밀도 값으로는 적어도 1 bit 이상을 지정해야 합니다." -#: gram.y:14478 +#: gram.y:14650 #, c-format msgid "precision for type float must be less than 54 bits" msgstr "실수형 자료의 정밀도 값으로 최대 54 bit 까지입니다." -#: 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 "WITHIN GROUP 구문 안에서 중복된 ORDER BY 구문은 허용하지 않습니다" -#: 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 "자료형 한정자는 매개 변수 이름을 사용할 수 없음" -#: gram.y:17249 +#: gram.y:17412 #, c-format msgid "type modifier cannot have ORDER BY" msgstr "자료형 한정자는 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 " -"집계된 인자가 하나 있어야 합니다." +"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 "중복된 limit 옵션은 허용하지 않음" - -#: 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 인자는 TABLE 함수에 사용할 수 없음" -#: 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 중 하나가 독립 테이블이나 스키마 이름 앞에 있어야 합니다." +"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 "LIKE_REGEX 구문에서 알 수 없는 플래그 문자: \"%.*s\"" -#: jsonpath_gram.y:677 +#: jsonpath_gram.y:679 #, c-format msgid "XQuery \"x\" flag (expanded regular expressions) is not implemented" msgstr "XQuery \"x\" 플래그 (확장된 정규 표현식)는 구현되지 않았습니다." @@ -33805,99 +35554,99 @@ msgstr "잘못된 16진수 문자 순차연결" 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, jsonpath 입력 \"%s\" 부근" -#: 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 "잘못된 16진수" -#: 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 "잘못된 스트리밍 시작 위치" # # advance 끝 -#: 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 "마무리 안된 16진수 문자열 문자" -#: scan.l:581 +#: scan.l:567 #, c-format msgid "unsafe use of string constant with Unicode escapes" msgstr "유니코드 이스케이프와 함께 문자열 상수를 사용하는 것은 안전하지 않음" -#: scan.l:582 +#: scan.l:568 #, c-format msgid "" "String constants with Unicode escapes cannot be used when " "\"standard_conforming_strings\" is off." msgstr "" -"\"standard_conforming_strings\" = off 인 경우 문자열 상수 표기에서 유니코드 이스" -"케이프를 사용할 수 없습니다." +"\"standard_conforming_strings\" = off 인 경우 문자열 상수 표기에서 유니코드 " +"이스케이프를 사용할 수 없습니다." -#: 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 "유니코드 이스케이프는 \\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." @@ -33905,92 +35654,399 @@ 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 "길이가 0인 구분 식별자" -#: scan.l:839 syncrep_scanner.l:101 +#: scan.l:825 syncrep_scanner.l:114 msgid "unterminated quoted identifier" msgstr "마무리 안된 따옴표 안의 식별자" # # nonun 부분 begin -#: 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 "잘못된 16진수" -#: scan.l:1040 +#: scan.l:1032 msgid "invalid octal integer" msgstr "잘못된 8진수" -#: 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 "문자열 안에 비표준 escape 문자를 사용하고 있습니다" -#: 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'." -#, c-format +#~ msgid "\"%s\" must be set to -1 during binary upgrade mode." +#~ msgstr "바이너리 업그레이드 모드 중는 \"%s\" 값은 -1이어야 합니다." + +#~ msgid "\"RN\" not supported for input" +#~ msgstr "\"RN\" 입력 양식은 지원되지 않습니다." + +#~ msgid "\"debug_io_direct\" is not supported on this platform." +#~ msgstr "\"debug_io_direct\" 설정은 이 플랫폼에서 지원되지 않음" + +#~ msgid "" +#~ "\"effective_io_concurrency\" must be set to 0 on platforms that lack " +#~ "posix_fadvise()." +#~ msgstr "" +#~ "posix_fadvise() 함수에 문제가 있는 플랫폼에서는 \"effective_io_concurrency" +#~ "\" 설정값이 0 이어야 합니다." + +#~ msgid "" +#~ "\"maintenance_io_concurrency\" must be set to 0 on platforms that lack " +#~ "posix_fadvise()." +#~ msgstr "" +#~ "posix_fadvise() 함수에 문제가 있는 플랫폼에서는 " +#~ "\"maintenance_io_concurrency\" 설정값이 0 이어야 합니다." + +#~ msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" +#~ msgstr "" +#~ "\"max_wal_size\" 값은 \"wal_segment_size\" 값의 최소 2배 이상이어야 함" + +#~ msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" +#~ msgstr "" +#~ "\"min_wal_size\" 값은 \"wal_segment_size\" 값의 최소 2배 이상이어야 함" + +#~ msgid "\"synchronous_standby_names\" parser failed" +#~ msgstr "\"synchronous_standby_names\" 값을 분석할 수 없음" + +#~ msgid "%s cannot be executed within a pipeline" +#~ msgstr "%s 절은 파이프라인에서 실행될 수 없음" + +#~ msgid "%s with OID %u does not exist" +#~ msgstr "%s (해당 OID %u) 없음" + +#~ msgid "-1 indicates that the value could not be determined." +#~ msgstr "-1 은 사용하지 않음을 뜻함" + +#~ msgid "0 turns this feature off." +#~ msgstr "0을 지정하면 이 기능이 해제됩니다." + +#~ msgid "A value of 0 turns off the timeout." +#~ msgstr "이 값이 0이면 이런 제한이 없음." + +#~ msgid "Could not open extension control file \"%s\": %m." +#~ msgstr "\"%s\" 확장 모듈 제어 파일 열기 실패: %m." + +#~ msgid "ECDH: could not create key" +#~ msgstr "ECDH: 키 생성 실패" + +#~ msgid "ECDH: unrecognized curve name: %s" +#~ msgstr "ECDH: 알 수 없는 curve 이름: %s" + +#~ msgid "EXPLAIN option SERIALIZE requires ANALYZE" +#~ msgstr "SERIALIZE 옵션은 EXPLAIN ANALYZE에서만 쓸 수 있습니다." + +#~ msgid "EXPLAIN option TIMING requires ANALYZE" +#~ msgstr "TIMING 옵션은 EXPLAIN ANALYZE에서만 쓸 수 있습니다." + +#~ msgid "If blank, no prefix is used." +#~ msgstr "비워 두면 접두사가 사용되지 않습니다." + +#~ msgid "LIKE is not supported for creating foreign tables" +#~ msgstr "외부 테이블을 만들 때는 LIKE 옵션을 쓸 수 없음" + +#~ msgid "" +#~ "Logical decoding could not find consistent point from local slot's LSN %X/" +#~ "%X." +#~ msgstr "논리적 디코딩이 로컬 슬롯 %X/%X에서 일관성 위치를 찾지 못함" + +#~ msgid "Logs each successful connection." +#~ msgstr "연결 성공한 정보들 모두를 기록함" + +#~ msgid "MaxFragments should be >= 0" +#~ msgstr "MaxFragments는 0보다 크거나 같아야 함" + +#~ msgid "MinWords should be less than MaxWords" +#~ msgstr "MinWords는 MaxWords보다 작아야 함" + +#~ msgid "MinWords should be positive" +#~ msgstr "MinWords는 양수여야 함" + +#~ msgid "" +#~ "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert " +#~ "vacuums." +#~ msgstr "청소를 위한 최소 튜플 삽입 수입니다. -1은 insert는 vacuum에서 제외" + +#~ msgid "Please report this to <%s>." +#~ msgstr "이 내용을 <%s> 주소로 보고하십시오." + +#~ msgid "RECHECK is no longer required" +#~ msgstr "RECHECK는 더 이상 필요하지 않음" + +#~ msgid "Resource Usage / Asynchronous Behavior" +#~ msgstr "자원 사용량 / 비동기 기능" + +#~ msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." +#~ msgstr "" +#~ "서버의 경우 FLOAT8PASSBYVAL = %s인데 라이브러리에 %s이(가) 있습니다." + +#~ msgid "Server has FUNC_MAX_ARGS = %d, library has %d." +#~ msgstr "서버의 경우 FUNC_MAX_ARGS = %d인데 라이브러리에 %d이(가) 있습니다." + +#~ msgid "Server has INDEX_MAX_KEYS = %d, library has %d." +#~ msgstr "서버의 경우 INDEX_MAX_KEYS = %d인데 라이브러리에 %d이(가) 있습니다." + +#~ msgid "Sets the curve to use for ECDH." +#~ msgstr "ECDH에 사용할 curve 설정" + +#~ msgid "ShortWord should be >= 0" +#~ msgstr "ShortWord는 0보다 크거나 같아야 함" + +#~ msgid "" +#~ "The database cluster was initialized with CATALOG_VERSION_NO %d, but the " +#~ "server was compiled with CATALOG_VERSION_NO %d." +#~ msgstr "" +#~ "이 데이터베이스 클러스터는 CATALOG_VERSION_NO %d 버전으로 초기화 되었지" +#~ "만, 서버는 CATALOG_VERSION_NO %d 버전으로 컴파일 되어있습니다." + +#~ msgid "" +#~ "The database cluster was initialized with INDEX_MAX_KEYS %d, but the " +#~ "server was compiled with INDEX_MAX_KEYS %d." +#~ msgstr "" +#~ "이 데이터베이스 클러스터는 INDEX_MAX_KEYS %d (으)로 초기화 되었지만, 서버" +#~ "는 INDEX_MAX_KEYS %d (으)로 컴파일 되어있습니다." + +#~ msgid "" +#~ "The database cluster was initialized with LOBLKSIZE %d, but the server " +#~ "was compiled with LOBLKSIZE %d." +#~ msgstr "" +#~ "이 데이터베이스 클러스터는 LOBLKSIZE %d(으)로 초기화 되었지만, 서버는 " +#~ "LOBLKSIZE %d (으)로 컴파일 되어있습니다." + +#~ 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 NAMEDATALEN %d, but the server " +#~ "was compiled with NAMEDATALEN %d." +#~ msgstr "" +#~ "이 데이터베이스 클러스터는 NAMEDATALEN %d (으)로 초기화 되었지만, 서버는 " +#~ "NAMEDATALEN %d (으)로 컴파일 되어있습니다." + +#~ msgid "" +#~ "The database cluster was initialized with RELSEG_SIZE %d, but the server " +#~ "was compiled with RELSEG_SIZE %d." +#~ msgstr "" +#~ "이 데이터베이스 클러스터는 RELSEG_SIZE %d (으)로 초기화 되었지만, 서버는 " +#~ "RELSEG_SIZE %d (으)로 컴파일 되어있습니다." + +#~ msgid "" +#~ "The database cluster was initialized with TOAST_MAX_CHUNK_SIZE %d, but " +#~ "the server was compiled with TOAST_MAX_CHUNK_SIZE %d." +#~ msgstr "" +#~ "데이터베이스 클러스터는 TOAST_MAX_CHUNK_SIZE %d(으)로 초기화되었지만 서버" +#~ "는 TOAST_MAX_CHUNK_SIZE %d(으)로 컴파일 되었습니다." + +#~ msgid "" +#~ "The database cluster was initialized with XLOG_BLCKSZ %d, but the server " +#~ "was compiled with XLOG_BLCKSZ %d." +#~ msgstr "" +#~ "이 데이터베이스 클러스터는 XLOG_BLCKSZ %d (으)로 초기화 되었지만, 서버는 " +#~ "XLOG_BLCKSZ %d (으)로 컴파일 되어있습니다." + +#~ msgid "This feature is not yet supported on partitioned tables." +#~ msgstr "이 기능은 파티션 된 테이블 대상으로는 아직 지원하지 않습니다." + +#~ msgid "This is used only if \"archive_library\" is not set." +#~ msgstr "이 설정은 \"archive_library\" 설정이 안되어 있을 때만 작동합니다." + +#~ msgid "" +#~ "This slot has been invalidated because it exceeded the maximum reserved " +#~ "size." +#~ msgstr "" +#~ "최대 예약 크기를 초과해서 이 슬롯은 정상적이지 않은 것으로 바꿨습니다." + +#~ msgid "" +#~ "This slot has been invalidated because it was conflicting with recovery." +#~ msgstr "" +#~ "이 슬롯은 복구 작업으로 충돌이 일어나 사용할 수 없는 것으로 처리했습니다." + +#~ msgid "Update your data type." +#~ msgstr "자료형을 업데이트하십시오." + +#~ msgid "Zero logs a sample of all queries. -1 turns this feature off." +#~ msgstr "" +#~ "0을 지정하면 모든 쿼리를 로깅하고, -1을 지정하면 이 기능이 해제됩니다." + +#~ msgid "Zero logs all files. The default is -1 (turning this feature off)." +#~ msgstr "" +#~ "0을 지정하면 모든 파일이 기록됩니다. 기본 값은 -1로, 이 기능이 해제됩니다." + +#~ msgid "Zero prints all actions. -1 turns autovacuum logging off." +#~ msgstr "" +#~ "0을 지정하면 모든 작업을 로깅하고, -1을 지정하면 자동 청소관련 로그를 남기" +#~ "지 않음" + +#~ msgid "Zero prints all queries. -1 turns this feature off." +#~ msgstr "" +#~ "0을 지정하면 모든 쿼리를 로깅하고, -1을 지정하면 이 기능이 해제됩니다." + +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type boolean" +#~ msgstr "" +#~ "\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 boolean형임" + +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type double " +#~ "precision" +#~ msgstr "" +#~ "\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 double " +#~ "precision형임" + +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type integer" +#~ msgstr "" +#~ "\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 integer형임" + +#~ msgid "" +#~ "argument \"%s\" of jsonpath item method .%s() is invalid for type numeric" +#~ msgstr "" +#~ "\"%s\" 인자(대상 jsonpath 아이템 메서드: .%s())는 바르지 않은 numeric형임" + +#~ msgid "" +#~ "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing " +#~ "relation \"%s\"" +#~ msgstr "" +#~ "\"%s\" 파타션된 테이블에 NOT VALID 참조키를 추가할 수 없음 (참조 하는 테이" +#~ "블: \"%s\")" + +#~ msgid "cannot match partition key to an index using access method \"%s\"" +#~ msgstr "\"%s\" 접근 방법을 사용하는 인덱스와 파티션 키가 일치하지 않습니다" + +#~ msgid "" +#~ "cannot remove constraint from only the partitioned table when partitions " +#~ "exist" +#~ msgstr "하위 테이블이 있는 경우, 상위 테이블의 제약조건만 지울 수는 없음" + +#~ msgid "" +#~ "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, " +#~ "ldapsearchfilter, or ldapurl together with ldapprefix" +#~ msgstr "" +#~ "ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, " +#~ "ldapsearchfilter, ldapurl 옵션은 ldapprefix 옵션과 함께 사용할 수 없음" + +#~ msgid "column \"%s\" of relation \"%s\" is not a stored generated column" +#~ msgstr "\"%s\" 칼럼(해당 릴레이션: \"%s\")은 미리 계산된 칼럼이 아님" + +#~ msgid "" +#~ "constraint \"%s\" of relation \"%s\" is not a foreign key or check " +#~ "constraint" +#~ msgstr "" +#~ "\"%s\" 제약 조건(해당 테이블: \"%s\")은 참조키도 체크 제약 조건도 아닙니" +#~ "다." + +#~ msgid "conversion from wchar_t to server encoding failed: %m" +#~ msgstr "wchar_t에서 서버 인코딩으로 변환하지 못함: %m" + +#~ msgid "could not look up local user ID %d: %s" +#~ msgstr "UID %d에 해당하는 로컬 사용자를 찾을 수 없음: %s" + +#~ msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" +#~ msgstr "\"%s\" 임시 통계 파일 이름을 \"%s\" (으)로 바꿀 수 없습니다: %m" + +#~ msgid "" +#~ "could not synchronize replication slot \"%s\" because remote slot " +#~ "precedes local slot" +#~ msgstr "" +#~ "원격 슬롯이 로컬 슬롯 보다 우선이어서 복제 슬롯(\"%s\")을 동기화 할 수 없" +#~ "음" + +#~ msgid "end-of-copy marker corrupt" +#~ msgstr "end-of-copy 마크가 잘못되었음" + +#~ msgid "index %lld out of valid range, 0..%lld" +#~ msgstr "%lld 인덱스의 범위를 벗어남, 0..%lld" + +#~ msgid "invalid input string for \"Y,YYY\"" +#~ msgstr "\"Y,YYY\"에 대한 입력 문자열이 잘못됨" + +#~ msgid "multiple limit options not allowed" +#~ msgstr "중복된 limit 옵션은 허용하지 않음" + +#~ msgid "nondeterministic collations are not supported for LIKE" +#~ msgstr "LIKE 연산에서 사용할 비결정 정렬규칙(collation)은 지원하지 않음" + +#~ msgid "oversize GSSAPI packet sent by the client (%zu > %d)" +#~ msgstr "클라이언트가 너무 큰 GSSAPI 패킷을 보냈습니다(%zu > %d)" + #~ msgid "removing future two-phase state file of epoch %u for transaction %u" #~ msgstr "" #~ "epoch %u의 future two-phase 상태정보 파일을 삭제함, 대상 트랜잭션: %u" -#, c-format #~ msgid "removing past two-phase state file of epoch %u for transaction %u" #~ msgstr "epoch %u의 past two-phase 상태정보 파일을 삭제함, 대상 트랜잭션: %u" -#, c-format #~ msgid "removing past two-phase state from memory for transaction %u" #~ msgstr "" #~ "%u 트랜잭션에서 사용하는 past two-phase 상태정보를 메모리에서 삭제함" + +#~ msgid "server process" +#~ msgstr "서버 프로세스" + +#~ msgid "wal_level must be set to \"replica\" or \"logical\" at server start." +#~ msgstr "" +#~ "wal_level 값을 \"replica\" 또는 \"logical\"로 지정하고 서버를 실행하십시" +#~ "오." diff --git a/src/backend/po/ru.po b/src/backend/po/ru.po index 0e18a5fb5738b..94cdeaaa143d1 100644 --- a/src/backend/po/ru.po +++ b/src/backend/po/ru.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: postgres (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-30 15:58+0300\n" -"PO-Revision-Date: 2025-08-09 07:31+0300\n" +"POT-Creation-Date: 2025-09-19 22:26+0300\n" +"PO-Revision-Date: 2025-09-20 12:20+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -88,7 +88,7 @@ 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 +#: 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" @@ -100,7 +100,7 @@ msgstr "не удалось открыть файл \"%s\" для чтения: #: 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 -#: backup/walsummary.c:283 commands/extension.c:3817 libpq/hba.c:769 +#: 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 @@ -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:9324 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 @@ -206,8 +206,8 @@ msgstr "не удалось записать файл \"%s\": %m" #: 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:8710 -#: access/transam/xlog.c:8754 backup/basebackup_server.c:207 +#: access/transam/xlog.c:4333 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 @@ -235,10 +235,11 @@ msgstr "не удалось синхронизировать с ФС файл \" #: 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:234 utils/hash/dynahash.c:517 utils/hash/dynahash.c:617 +#: 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/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 @@ -332,7 +333,7 @@ msgstr "не удалось синхронизировать с ФС файл \" #: 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/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 @@ -487,9 +488,8 @@ msgid "Unicode low surrogate must follow a high surrogate." msgstr "Младшее слово суррогата Unicode должно следовать за старшим словом." #: ../common/jsonapi.c:2526 -#, fuzzy msgid "out of memory while constructing error description" -msgstr "не удалось выделить память для декодирования записи длины %u" +msgstr "нехватка памяти при составлении описания ошибки" #: ../common/logging.c:279 #, c-format @@ -767,9 +767,9 @@ msgid "could not encode server key" msgstr "не удалось закодировать ключ сервера" #: ../common/stringinfo.c:362 -#, fuzzy, c-format +#, c-format msgid "string buffer exceeds maximum allowed length (%zu bytes)" -msgstr "длина битовой строки превышает предел (%d)" +msgstr "размер строкового буфера превышает предел (%zu Б)" #: ../common/stringinfo.c:363 #, c-format @@ -778,13 +778,13 @@ msgstr "" "Не удалось увеличить строковый буфер (в буфере байт: %d, требовалось ещё %d)." #: ../common/stringinfo.c:367 -#, fuzzy, c-format +#, 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 "" -"нехватка памяти\n" +"размер строкового буфера превышает предел (%zu Б)\n" "\n" "Не удалось увеличить строковый буфер (в буфере байт: %d, требовалось ещё " "%d).\n" @@ -944,9 +944,9 @@ msgid "BRIN control functions cannot be executed during recovery." msgstr "Функции управления BRIN нельзя использовать в процессе восстановления." #: access/brin/brin.c:1403 access/brin/brin.c:1510 -#, fuzzy, c-format +#, c-format msgid "block number out of range: %" -msgstr "номер блока вне диапазона: %lld" +msgstr "номер блока вне диапазона: %" #: access/brin/brin.c:1447 access/brin/brin.c:1536 #, c-format @@ -959,7 +959,7 @@ 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 +#: parser/parse_utilcmd.c:2454 #, c-format msgid "index \"%s\" is not valid" msgstr "индекс \"%s\" - нерабочий" @@ -1081,11 +1081,13 @@ msgid "" msgstr "в классе операторов \"%s\" метода доступа %s нет опорной функции %d" #: access/common/attmap.c:118 -#, fuzzy, c-format +#, c-format msgid "" "Returned type %s does not match expected type %s in column \"%s\" (position " "%d)." -msgstr "Возвращаемый тип %s не соответствует ожидаемому типу %s в столбце %d." +msgstr "" +"Возвращаемый тип %s не соответствует ожидаемому типу %s в столбце " +"\"%s\" (позиция %d)." #: access/common/attmap.c:147 #, c-format @@ -1512,7 +1514,7 @@ 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:9313 +#: access/transam/xlog.c:4312 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 @@ -1591,30 +1593,30 @@ msgstr "" "автоматическая очистка таблицы \"%s.%s.%s\": сканирований индекса: %d\n" #: access/heap/vacuumlazy.c:1015 -#, fuzzy, c-format +#, c-format msgid "" "pages: %u removed, %u remain, %u scanned (%.2f%% of total), %u eagerly " "scanned\n" msgstr "" "страниц удалено: %u, осталось: %u, просканировано: %u (%.2f%% от общего " -"числа)\n" +"числа), инициативно просканировано: %u\n" #: access/heap/vacuumlazy.c:1024 -#, fuzzy, c-format +#, c-format msgid "" "tuples: % removed, % remain, % are dead but not yet " "removable\n" msgstr "" -"версий строк: удалено: %lld, осталось: %lld, «мёртвых», но ещё не подлежащих " -"удалению: %lld\n" +"версий строк: удалено: %, осталось: %, «мёртвых», но ещё не " +"подлежащих удалению: %\n" #: access/heap/vacuumlazy.c:1030 -#, fuzzy, c-format +#, c-format msgid "" "tuples missed: % dead from %u pages not removed due to cleanup lock " "contention\n" msgstr "" -"из-за конфликта блокировки очистки пропущено версий строк: %lld, на " +"из-за конфликта блокировки очистки пропущено версий строк: %, на " "страницах: %u\n" #: access/heap/vacuumlazy.c:1036 @@ -1639,12 +1641,12 @@ msgstr "" "значения на %d MXID\n" #: access/heap/vacuumlazy.c:1054 -#, fuzzy, c-format +#, c-format msgid "" "frozen: %u pages from table (%.2f%% of total) had % tuples frozen\n" msgstr "" "замораживание: на страницах таблицы (%u, %.2f%% от общего числа) заморожено " -"кортежей: %lld\n" +"кортежей: %\n" #: access/heap/vacuumlazy.c:1062 #, c-format @@ -1652,6 +1654,8 @@ 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:1070 msgid "index scan not needed: " @@ -1662,13 +1666,13 @@ msgid "index scan needed: " msgstr "сканирование индекса требуется: " #: access/heap/vacuumlazy.c:1074 -#, fuzzy, c-format +#, c-format msgid "" "%u pages from table (%.2f%% of total) had % dead item identifiers " "removed\n" msgstr "" "на страницах таблицы (%u, %.2f%% от общего числа) удалено мёртвых " -"идентификаторов элементов: %lld\n" +"идентификаторов элементов: %\n" #: access/heap/vacuumlazy.c:1079 msgid "index scan bypassed: " @@ -1679,12 +1683,12 @@ msgid "index scan bypassed by failsafe: " msgstr "сканирование индекса пропущено из-за защиты: " #: access/heap/vacuumlazy.c:1083 -#, fuzzy, c-format +#, c-format msgid "" "%u pages from table (%.2f%% of total) have % dead item identifiers\n" msgstr "" "на страницах таблицы (%u, %.2f%% от общего числа) находится мёртвых " -"идентификаторов элементов: %lld\n" +"идентификаторов элементов: %\n" #: access/heap/vacuumlazy.c:1098 #, c-format @@ -1698,7 +1702,7 @@ msgstr "" #: access/heap/vacuumlazy.c:1113 commands/analyze.c:817 #, c-format msgid "delay time: %.3f ms\n" -msgstr "" +msgstr "время задержки: %.3f ms\n" #: access/heap/vacuumlazy.c:1121 commands/analyze.c:825 #, c-format @@ -1712,19 +1716,20 @@ msgstr "" "средняя скорость чтения: %.3f МБ/с, средняя скорость записи: %.3f МБ/с\n" #: access/heap/vacuumlazy.c:1134 commands/analyze.c:830 -#, fuzzy, c-format +#, c-format msgid "buffer usage: % hits, % reads, % dirtied\n" msgstr "" -"использование буфера: попаданий: %lld, промахов: %lld, «грязных» записей: " -"%lld\n" +"использование буфера: попаданий: %, промахов: %, «грязных» " +"записей: %\n" #: access/heap/vacuumlazy.c:1139 commands/analyze.c:835 -#, fuzzy, c-format +#, c-format msgid "" "WAL usage: % records, % full page images, % bytes, " "% buffers full\n" msgstr "" -"использование WAL: записей: %lld, полных образов страниц: %lld, байт: %llu\n" +"использование WAL: записей: %, полных образов страниц: %, " +"байт: %, полных буферов: %\n" #: access/heap/vacuumlazy.c:1144 commands/analyze.c:840 #, c-format @@ -1737,12 +1742,14 @@ 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 -#, fuzzy, c-format +#, c-format msgid "table \"%s\": removed % dead item identifiers in %u pages" msgstr "" -"таблица \"%s\": удалено мёртвых идентификаторов элементов: %lld, на " +"таблица \"%s\": удалено мёртвых идентификаторов элементов: %, на " "страницах: %u" #: access/heap/vacuumlazy.c:2982 @@ -1890,7 +1897,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:2505 +#: parser/parse_utilcmd.c:2504 #, c-format msgid "index \"%s\" is not a btree" msgstr "индекс \"%s\" не является b-деревом" @@ -1953,7 +1960,7 @@ msgstr "" "типов %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\" нельзя" @@ -2321,67 +2328,67 @@ msgstr "Существующий менеджер ресурсов с ID %d им msgid "registered custom resource manager \"%s\" with ID %d" msgstr "зарегистрирован пользовательский менеджер ресурсов \"%s\" с ID %d" -#: access/transam/slru.c:360 -#, fuzzy, c-format +#: access/transam/slru.c:361 +#, c-format msgid "\"%s\" must be a multiple of %d." -msgstr "значение \"%s\" должно быть кратно %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\": %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\": видимо, произошло зацикливание" @@ -2925,13 +2932,13 @@ msgstr "ошибка контрольной суммы в файле pg_control" #: 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 +#, c-format msgid "" "The database cluster was initialized with %s %d, but the server was compiled " "with %s %d." msgstr "" -"Кластер баз данных был инициализирован с BLCKSZ %d, но сервер скомпилирован " -"с BLCKSZ %d." +"Кластер баз данных был инициализирован с %s %d, но сервер скомпилирован с %s " +"%d." #: access/transam/xlog.c:4449 #, c-format @@ -2979,18 +2986,18 @@ msgstr[2] "управляющий файл содержит неверный р #. translator: both %s are GUC names #: access/transam/xlog.c:4558 access/transam/xlog.c:4564 -#, fuzzy, c-format +#, c-format msgid "\"%s\" must be at least twice \"%s\"" -msgstr "%s должно быть меньше %s" +msgstr "\"%s\" должно быть как минимум вдвое больше \"%s\"" #: access/transam/xlog.c:4726 catalog/namespace.c:4696 -#: commands/tablespace.c:1210 commands/user.c:2542 commands/variable.c:72 +#: 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 #, c-format msgid "List syntax is invalid." msgstr "Ошибка синтаксиса в списке." -#: access/transam/xlog.c:4772 commands/user.c:2558 commands/variable.c:173 +#: 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\"." @@ -3141,33 +3148,33 @@ msgstr "начата контрольная точка:%s%s%s%s%s%s%s%s" # well-spelled: синхр #: access/transam/xlog.c:6770 -#, fuzzy, c-format +#, 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 "" -"точка перезапуска завершена: записано буферов: %d (%.1f%%); добавлено файлов " -"WAL %d, удалено: %d, переработано: %d; запись=%ld.%03d сек., синхр.=%ld.%03d " -"сек., всего=%ld.%03d сек.; синхронизировано_файлов=%d, самая_долгая_синхр." -"=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB; " -"lsn=%X/%X, lsn redo=%X/%X" +"точка перезапуска завершена: записано буферов: %d (%.1f%%), записано SLRU-" +"буферов: %d; добавлено файлов WAL %d, удалено: %d, переработано: %d; " +"запись=%ld.%03d сек., синхр.=%ld.%03d сек., всего=%ld.%03d сек.; " +"синхронизировано_файлов=%d, самая_долгая_синхр.=%ld.%03d сек., средняя=%ld." +"%03d сек.; расстояние=%d КБ, ожидалось=%d КБ; lsn=%X/%X, lsn redo=%X/%X" # well-spelled: синхр #: access/transam/xlog.c:6794 -#, fuzzy, c-format +#, 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 "" -"контрольная точка завершена: записано буферов: %d (%.1f%%); добавлено файлов " -"WAL %d, удалено: %d, переработано: %d; запись=%ld.%03d сек., синхр.=%ld.%03d " -"сек., всего=%ld.%03d сек.; синхронизировано_файлов=%d, самая_долгая_синхр." -"=%ld.%03d сек., средняя=%ld.%03d сек.; расстояние=%d kB, ожидалось=%d kB; " -"lsn=%X/%X, lsn redo=%X/%X" +"контрольная точка завершена: записано буферов: %d (%.1f%%), записано SLRU-" +"буферов: %d; добавлено файлов WAL %d, удалено: %d, переработано: %d; " +"запись=%ld.%03d сек., синхр.=%ld.%03d сек., всего=%ld.%03d сек.; " +"синхронизировано_файлов=%d, самая_долгая_синхр.=%ld.%03d сек., средняя=%ld." +"%03d сек.; расстояние=%d КБ, ожидалось=%d КБ; lsn=%X/%X, lsn redo=%X/%X" #: access/transam/xlog.c:7280 #, c-format @@ -3205,36 +3212,36 @@ msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "" "неожиданный ID линии времени %u (должен быть %u) в записи точки выключения" -#: access/transam/xlog.c:8460 +#: 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:8489 +#: 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:8759 +#: access/transam/xlog.c:8775 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "не удалось синхронизировать с ФС файл сквозной записи %s: %m" -#: access/transam/xlog.c:8764 +#: access/transam/xlog.c:8780 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "не удалось синхронизировать с ФС данные (fdatasync) файла \"%s\": %m" -#: access/transam/xlog.c:8841 access/transam/xlog.c:9177 +#: 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:8842 access/transam/xlog.c:9178 +#: access/transam/xlog.c:8858 access/transam/xlog.c:9194 #: access/transam/xlogfuncs.c:249 #, c-format msgid "" @@ -3243,12 +3250,12 @@ msgstr "" "Параметр \"wal_level\" должен иметь значение \"replica\" или \"logical\" при " "запуске сервера." -#: access/transam/xlog.c:8847 +#: access/transam/xlog.c:8863 #, c-format msgid "backup label too long (max %d bytes)" msgstr "длина метки резервной копии превышает предел (%d байт)" -#: access/transam/xlog.c:8968 +#: access/transam/xlog.c:8984 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed since last " @@ -3257,7 +3264,7 @@ msgstr "" "после последней точки перезапуска был воспроизведён WAL, созданный в режиме " "\"full_page_writes=off\"" -#: access/transam/xlog.c:8970 access/transam/xlog.c:9266 +#: 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 " @@ -3269,23 +3276,23 @@ msgstr "" "CHECKPOINT на ведущем сервере, а затем попробуйте резервное копирование \"на " "ходу\" ещё раз." -#: access/transam/xlog.c:9050 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:9057 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:9216 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:9217 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. " @@ -3294,7 +3301,7 @@ msgstr "" "Это означает, что создаваемая резервная копия испорчена и использовать её не " "следует. Попробуйте резервное копирование \"на ходу\" ещё раз." -#: access/transam/xlog.c:9264 +#: access/transam/xlog.c:9280 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed during online backup" @@ -3302,13 +3309,13 @@ msgstr "" "в процессе резервного копирования \"на ходу\" был воспроизведён WAL, " "созданный в режиме \"full_page_writes=off\"" -#: access/transam/xlog.c:9380 +#: 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:9394 +#: access/transam/xlog.c:9410 #, c-format msgid "" "still waiting for all required WAL segments to be archived (%d seconds " @@ -3316,7 +3323,7 @@ msgid "" msgstr "" "продолжается ожидание архивации всех нужных сегментов WAL (прошло %d сек.)" -#: access/transam/xlog.c:9396 +#: access/transam/xlog.c:9412 #, c-format msgid "" "Check that your \"archive_command\" is executing properly. You can safely " @@ -3327,12 +3334,12 @@ msgstr "" "копирования можно отменить безопасно, но резервная копия базы будет " "непригодна без всех сегментов WAL." -#: access/transam/xlog.c:9403 +#: access/transam/xlog.c:9419 #, c-format msgid "all required WAL segments have been archived" msgstr "все нужные сегменты WAL заархивированы" -#: access/transam/xlog.c:9407 +#: access/transam/xlog.c:9423 #, c-format msgid "" "WAL archiving is not enabled; you must ensure that all required WAL segments " @@ -3341,7 +3348,7 @@ msgstr "" "архивация WAL не настроена; вы должны обеспечить копирование всех требуемых " "сегментов WAL другими средствами для получения резервной копии" -#: access/transam/xlog.c:9446 +#: access/transam/xlog.c:9462 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "" @@ -3495,13 +3502,13 @@ msgstr[1] "повышение сервера не завершилось за %d msgstr[2] "повышение сервера не завершилось за %d секунд" #: access/transam/xlogprefetcher.c:1086 -#, fuzzy, c-format +#, c-format msgid "" "\"recovery_prefetch\" is not supported on platforms that lack support for " "issuing read-ahead advice." msgstr "" "\"recovery_prefetch\" не поддерживается на платформах, где отсутствует " -"posix_fadvise()." +"поддержка рекомендации упреждающего чтения." #: access/transam/xlogreader.c:620 #, c-format @@ -3560,13 +3567,13 @@ msgstr "" "неверные информационные биты %04X в сегменте WAL %s, LSN %X/%X, смещение %u" #: access/transam/xlogreader.c:1285 -#, fuzzy, c-format +#, c-format msgid "" "WAL file is from different database system: WAL file database system " "identifier is %, pg_control database system identifier is %" msgstr "" "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД " -"%llu, а идентификатор системы pg_control: %llu" +"%, а идентификатор системы pg_control: %" #: access/transam/xlogreader.c:1293 #, c-format @@ -3816,14 +3823,14 @@ msgstr "в истории сервера нет ответвления запр #. translator: %s is a backup_label file or a pg_control file #: access/transam/xlogrecovery.c:858 -#, fuzzy, c-format +#, 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 "" -"Последняя контрольная точка: %X/%X на линии времени %u, но в истории " -"запрошенной линии времени сервер ответвился с этой линии в %X/%X." +"Последняя контрольная точка в файле \"%s\": %X/%X на линии времени %u, но в " +"истории запрошенной линии времени сервер ответвился с этой линии в %X/%X." #: access/transam/xlogrecovery.c:873 #, c-format @@ -3995,10 +4002,9 @@ msgid "unexpected directory entry \"%s\" found in %s" msgstr "в %2$s обнаружен недопустимый элемент-каталог \"%1$s\"" #: access/transam/xlogrecovery.c:2173 -#, fuzzy, c-format +#, c-format msgid "All directory entries in %s/ should be symbolic links." -msgstr "" -"Все элементы-каталоги в pg_tblspc/ должны быть символическими ссылками." +msgstr "Все элементы-каталоги в %s/ должны быть символическими ссылками." #: access/transam/xlogrecovery.c:2175 #, c-format @@ -4265,9 +4271,9 @@ msgid "The only allowed value is \"immediate\"." msgstr "Единственное допустимое значение: \"immediate\"." #: access/transam/xlogrecovery.c:4958 -#, fuzzy, c-format +#, c-format msgid "Timestamp out of range: \"%s\"." -msgstr "timestamp вне диапазона: \"%s\"" +msgstr "Timestamp вне диапазона: \"%s\"." #: access/transam/xlogrecovery.c:5003 #, c-format @@ -4597,13 +4603,13 @@ msgstr "" "с версией 1 манифеста копии инкрементальное копирование не поддерживается" #: backup/basebackup_incremental.c:952 -#, fuzzy, c-format +#, c-format msgid "" "system identifier in backup manifest is %, but database system " "identifier is %" msgstr "" -"в манифесте копии указан идентификатор системы: %llu, но идентификатор " -"системы базы данных: %llu" +"в манифесте копии указан идентификатор системы: %, но идентификатор " +"системы базы данных: %" #: backup/basebackup_lz4.c:67 #, c-format @@ -4683,7 +4689,7 @@ msgstr "сжатие zstd не поддерживается в данной сб #: backup/basebackup_zstd.c:117 #, c-format msgid "could not set compression worker count to %d: %s" -msgstr "не удалось установить для zstd число потоков %d: %s" +msgstr "не удалось установить число потоков сжатия %d: %s" #: backup/basebackup_zstd.c:129 #, c-format @@ -4691,14 +4697,14 @@ msgid "could not enable long-distance mode: %s" msgstr "не удалось включить режим большой дистанции: %s" #: backup/walsummaryfuncs.c:95 -#, fuzzy, c-format +#, c-format msgid "invalid timeline %" -msgstr "неверная линия времени %lld" +msgstr "неверная линия времени %" #: bootstrap/bootstrap.c:239 postmaster/postmaster.c:626 tcop/postgres.c:3858 -#, fuzzy, c-format +#, c-format msgid "--%s must be first argument" -msgstr "%s должно быть больше нуля" +msgstr "--%s должно быть первым аргументом" #: bootstrap/bootstrap.c:253 postmaster/postmaster.c:640 tcop/postgres.c:3872 #, c-format @@ -4869,9 +4875,10 @@ msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" msgstr "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON SCHEMAS" #: catalog/aclchk.c:1221 -#, fuzzy, c-format +#, c-format msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON LARGE OBJECTS" -msgstr "предложение IN SCHEMA нельзя использовать в GRANT/REVOKE ON SCHEMAS" +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 @@ -4886,8 +4893,8 @@ msgstr "предложение IN SCHEMA нельзя использовать #: 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 +#: 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 #: utils/adt/acl.c:2938 utils/adt/ruleutils.c:2858 #, c-format @@ -5349,7 +5356,7 @@ msgid "still searching for an unused OID in relation \"%s\"" msgstr "продолжается поиск неиспользованного OID в отношении \"%s\"" #: catalog/catalog.c:506 -#, fuzzy, c-format +#, c-format msgid "" "OID candidates have been checked % time, but no unused OID has been " "found yet." @@ -5357,23 +5364,23 @@ msgid_plural "" "OID candidates have been checked % times, but no unused OID has been " "found yet." msgstr[0] "" -"Потенциальные OID были проверены %llu раз, но неиспользуемые OID ещё не были " -"найдены." -msgstr[1] "" -"Потенциальные OID были проверены %llu раза, но неиспользуемые OID ещё не " +"Потенциальные OID были проверены % раз, но неиспользуемые OID ещё не " "были найдены." +msgstr[1] "" +"Потенциальные OID были проверены % раза, но неиспользуемые OID ещё " +"не были найдены." msgstr[2] "" -"Потенциальные OID были проверены %llu раз, но неиспользуемые OID ещё не были " -"найдены." +"Потенциальные OID были проверены % раз, но неиспользуемые OID ещё не " +"были найдены." #: catalog/catalog.c:531 -#, fuzzy, c-format +#, 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] "новый OID был назначен в отношении \"%s\" после %llu попытки" -msgstr[1] "новый OID был назначен в отношении \"%s\" после %llu попыток" -msgstr[2] "новый OID был назначен в отношении \"%s\" после %llu попыток" +msgstr[0] "новый OID был назначен в отношении \"%s\" после % попытки" +msgstr[1] "новый OID был назначен в отношении \"%s\" после % попыток" +msgstr[2] "новый OID был назначен в отношении \"%s\" после % попыток" #: catalog/catalog.c:662 catalog/catalog.c:729 #, c-format @@ -5385,7 +5392,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\"" @@ -5488,9 +5495,9 @@ msgid "constant of the type %s cannot be used here" msgstr "константу типа %s здесь использовать нельзя" #: catalog/dependency.c:2205 -#, fuzzy, c-format +#, c-format msgid "transition table \"%s\" cannot be referenced in a persistent object" -msgstr "в ограничении-проверке можно ссылаться только на таблицу \"%s\"" +msgstr "на переходную таблицу \"%s\" нельзя ссылаться в постоянном объекте" #: catalog/dependency.c:2390 parser/parse_relation.c:3513 #: parser/parse_relation.c:3523 statistics/attribute_stats.c:221 @@ -5537,11 +5544,9 @@ msgid "column \"%s\" has pseudo-type %s" msgstr "столбец \"%s\" имеет псевдотип %s" #: catalog/heap.c:595 -#, fuzzy, c-format +#, c-format msgid "virtual generated column \"%s\" cannot have a domain type" -msgstr "" -"значение по умолчанию для столбца \"%s\" нельзя автоматически привести к " -"типу %s" +msgstr "виртуальный генерируемый столбец \"%s\" не может иметь доменный тип" #: catalog/heap.c:622 #, c-format @@ -5549,9 +5554,10 @@ msgid "composite type %s cannot be made a member of itself" msgstr "составной тип %s не может содержать себя же" #: catalog/heap.c:673 -#, fuzzy, c-format +#, c-format msgid "virtual generated column \"%s\" cannot have a user-defined type" -msgstr "Генерируемые столбцы нельзя использовать в COPY." +msgstr "" +"виртуальный генерируемый столбец \"%s\" не может иметь пользовательский тип" #: catalog/heap.c:674 catalog/heap.c:3294 #, c-format @@ -5559,6 +5565,8 @@ 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:686 @@ -5627,9 +5635,9 @@ msgid "check constraint \"%s\" already exists" msgstr "ограничение-проверка \"%s\" уже существует" #: catalog/heap.c:2626 catalog/heap.c:2946 -#, fuzzy, c-format +#, c-format msgid "cannot add not-null constraint on system column \"%s\"" -msgstr "присвоить значение системному столбцу \"%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:9796 @@ -5660,12 +5668,12 @@ msgstr "" "таблицы \"%s\"" #: catalog/heap.c:2819 -#, fuzzy, c-format +#, c-format msgid "" "constraint \"%s\" conflicts with NOT ENFORCED constraint on relation \"%s\"" msgstr "" -"ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " -"таблицы \"%s\"" +"ограничение \"%s\" конфликтует с неконтролируемым (NOT ENFORCED) " +"ограничением таблицы \"%s\"" #: catalog/heap.c:2824 #, c-format @@ -5680,27 +5688,29 @@ msgstr "слияние ограничения \"%s\" с унаследованн msgid "too many inheritance parents" msgstr "слишком много родителей в иерархии наследования" -#: catalog/heap.c:2965 parser/parse_utilcmd.c:2656 -#, fuzzy, c-format +#: catalog/heap.c:2965 parser/parse_utilcmd.c:2655 +#, c-format msgid "" "conflicting NO INHERIT declaration for not-null constraint on column \"%s\"" -msgstr "конфликт NULL/NOT NULL в объявлении столбца \"%s\" таблицы \"%s\"" +msgstr "" +"конфликтующее объявление NO INHERIT для ограничения NOT NULL столбца \"%s\"" #: catalog/heap.c:2979 -#, fuzzy, c-format +#, c-format msgid "conflicting not-null constraint names \"%s\" and \"%s\"" -msgstr "изменить ограничение \"%s\" таблицы \"%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 -#, fuzzy, c-format +#, c-format msgid "The column has an inherited not-null constraint." -msgstr "" -"значение NULL в столбце \"%s\" отношения \"%s\" нарушает ограничение NOT NULL" +msgstr "Столбец имеет наследуемое ограничение NOT NULL." #: catalog/heap.c:3201 #, c-format @@ -5728,9 +5738,9 @@ msgstr "" "Это сделало бы генерируемый столбец зависимым от собственного значения." #: catalog/heap.c:3277 -#, fuzzy, c-format +#, c-format msgid "generation expression uses user-defined function" -msgstr "генерирующее выражение не является постоянным" +msgstr "генерирующее выражение использует пользовательскую функцию" #: catalog/heap.c:3278 #, c-format @@ -5738,11 +5748,13 @@ msgid "" "Virtual generated columns that make use of user-defined functions are not " "yet supported." msgstr "" +"Виртуальные генерируемые столбцы, использующие пользовательские функции, на " +"данный момент не поддерживаются." #: catalog/heap.c:3293 -#, fuzzy, c-format +#, c-format msgid "generation expression uses user-defined type" -msgstr "генерирующее выражение не является постоянным" +msgstr "генерирующее выражение использует пользовательский тип" #: catalog/heap.c:3345 #, c-format @@ -5795,7 +5807,7 @@ 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\" не может иметь несколько первичных ключей" @@ -6126,9 +6138,10 @@ msgid "unrecognized default ACL object type \"%c\"" msgstr "нераспознанный тип объекта ACL по умолчанию: \"%c\"" #: catalog/objectaddress.c:2015 -#, fuzzy, c-format +#, c-format msgid "Valid object types are \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." -msgstr "Допустимые типы объектов: \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." +msgstr "" +"Допустимые типы объектов: \"%c\", \"%c\", \"%c\", \"%c\", \"%c\", \"%c\"." #: catalog/objectaddress.c:2067 #, c-format @@ -6430,9 +6443,9 @@ msgid "default privileges on new schemas belonging to role %s" msgstr "права по умолчанию для новых схем, принадлежащих роли %s" #: catalog/objectaddress.c:3854 -#, fuzzy, c-format +#, c-format msgid "default privileges on new large objects belonging to role %s" -msgstr "права по умолчанию для новых отношений, принадлежащих роли %s" +msgstr "права по умолчанию для новых больших объектов, принадлежащих роли %s" #: catalog/objectaddress.c:3861 #, c-format @@ -6782,26 +6795,30 @@ msgid "collation \"%s\" for encoding \"%s\" already exists" msgstr "правило сортировки \"%s\" для кодировки \"%s\" уже существует" #: catalog/pg_constraint.c:763 commands/tablecmds.c:7952 -#, fuzzy, c-format +#, c-format msgid "" "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation " "\"%s\"" -msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" +msgstr "" +"изменить статус NO INHERIT ограничения NOT NULL \"%s\" для отношения \"%s\" " +"нельзя" #: catalog/pg_constraint.c:765 commands/tablecmds.c:9559 #, c-format msgid "You might need to make the existing constraint inheritable using %s." msgstr "" +"Возможно, существующее ограничение нужно сделать наследуемым, выполнив %s." #: catalog/pg_constraint.c:775 -#, fuzzy, c-format +#, c-format msgid "incompatible NOT VALID constraint \"%s\" on relation \"%s\"" -msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" +msgstr "" +"несовместимое непроверенное (NOT VALID) ограничение \"%s\" в отношении \"%s\"" #: catalog/pg_constraint.c:777 commands/tablecmds.c:9571 -#, fuzzy, c-format +#, c-format msgid "You might need to validate it using %s." -msgstr "Возможно, следует увеличить параметр \"%s\"." +msgstr "Возможно, следует проверить его, выполнив %s." #: catalog/pg_constraint.c:1016 #, c-format @@ -6821,12 +6838,12 @@ msgstr "ограничение \"%s\" для домена %s не существ #: catalog/pg_constraint.c:1664 #, c-format msgid "invalid type for PERIOD part of foreign key" -msgstr "" +msgstr "неправильный тип для компонента PERIOD внешнего ключа" #: catalog/pg_constraint.c:1665 -#, fuzzy, c-format +#, c-format msgid "Only range and multirange are supported." -msgstr "нежурналируемые последовательности не поддерживаются" +msgstr "Поддерживаются только диапазоны и мультидиапазоны." #: catalog/pg_conversion.c:64 #, c-format @@ -6838,12 +6855,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\"" @@ -7178,10 +7195,11 @@ msgstr "" "в списке публикуемых столбцов нельзя использовать системный столбец \"%s\"" #: catalog/pg_publication.c:582 -#, fuzzy, c-format +#, c-format msgid "cannot use virtual generated column \"%s\" in publication column list" msgstr "" -"в списке публикуемых столбцов нельзя использовать генерируемый столбец \"%s\"" +"в списке публикуемых столбцов нельзя использовать виртуальный генерируемый " +"столбец \"%s\"" #: catalog/pg_publication.c:588 #, c-format @@ -7350,9 +7368,9 @@ msgstr "" "атрибутом \"multirange_type_name\"." #: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 -#, fuzzy, c-format +#, c-format msgid "invalid page in block %u of relation \"%s\"" -msgstr "неверная страница в блоке %u отношения %s" +msgstr "некорректная страница в блоке %u отношения \"%s\"" #: commands/aggregatecmds.c:167 #, c-format @@ -7452,7 +7470,7 @@ 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\" уже существует" @@ -7566,7 +7584,7 @@ msgstr "метод доступа \"%s\" не существует" msgid "handler function is not specified" msgstr "не указана функция-обработчик" -#: commands/amcmds.c:264 commands/event_trigger.c:200 +#: 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 @@ -7606,9 +7624,9 @@ msgid "automatic analyze of table \"%s.%s.%s\"\n" msgstr "автоматический анализ таблицы \"%s.%s.%s\"\n" #: commands/analyze.c:805 -#, fuzzy, c-format +#, c-format msgid "finished analyzing table \"%s.%s.%s\"\n" -msgstr "автоматический анализ таблицы \"%s.%s.%s\"\n" +msgstr "закончен анализ таблицы \"%s.%s.%s\"\n" #: commands/analyze.c:1346 #, c-format @@ -8053,9 +8071,9 @@ msgid "%s requires a numeric value" msgstr "%s требует числовое значение" #: commands/copy.c:446 -#, fuzzy, c-format +#, c-format msgid "REJECT_LIMIT (%) must be greater than zero" -msgstr "значение CACHE (%lld) должно быть больше нуля" +msgstr "значение REJECT_LIMIT (%) должно быть больше нуля" #: commands/copy.c:536 #, c-format @@ -8162,9 +8180,9 @@ 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 -#, fuzzy, c-format +#, c-format msgid "COPY %s requires %s to be set to %s" -msgstr "для COPY %s требуется режим CSV" +msgstr "для COPY %s требуется установить %s %s" #: commands/copy.c:988 #, c-format @@ -8198,29 +8216,29 @@ msgid "COPY %s" msgstr "COPY %s" #: commands/copyfrom.c:268 -#, fuzzy, c-format +#, c-format msgid "COPY %s, line %, column %s" -msgstr "COPY %s, строка %llu, столбец %s" +msgstr "COPY %s, строка %, столбец %s" #: commands/copyfrom.c:273 commands/copyfrom.c:319 -#, fuzzy, c-format +#, c-format msgid "COPY %s, line %" -msgstr "COPY %s, строка %llu" +msgstr "COPY %s, строка %" #: commands/copyfrom.c:285 -#, fuzzy, c-format +#, c-format msgid "COPY %s, line %, column %s: \"%s\"" -msgstr "COPY %s, строка %llu, столбец %s: \"%s\"" +msgstr "COPY %s, строка %, столбец %s: \"%s\"" #: commands/copyfrom.c:295 -#, fuzzy, c-format +#, c-format msgid "COPY %s, line %, column %s: null input" -msgstr "COPY %s, строка %llu, столбец %s: значение NULL" +msgstr "COPY %s, строка %, столбец %s: значение NULL" #: commands/copyfrom.c:312 -#, fuzzy, c-format +#, c-format msgid "COPY %s, line %: \"%s\"" -msgstr "COPY %s, строка %llu: \"%s\"" +msgstr "COPY %s, строка %: \"%s\"" #: commands/copyfrom.c:823 #, c-format @@ -8255,9 +8273,9 @@ msgid "cannot perform COPY FREEZE on a partitioned table" msgstr "выполнить COPY FREEZE в секционированной таблице нельзя" #: commands/copyfrom.c:886 -#, fuzzy, c-format +#, c-format msgid "cannot perform COPY FREEZE on a foreign table" -msgstr "выполнить COPY FREEZE в секционированной таблице нельзя" +msgstr "выполнить COPY FREEZE в сторонней таблице нельзя" #: commands/copyfrom.c:900 #, c-format @@ -8274,19 +8292,21 @@ msgstr "" "текущей подтранзакции" #: commands/copyfrom.c:1171 -#, fuzzy, c-format +#, c-format msgid "" "skipped more than REJECT_LIMIT (%) rows due to data type " "incompatibility" -msgstr "из-за несовместимости типов данных пропущена %llu строка" +msgstr "" +"из-за несовместимости типов данных пропущено более чем REJECT_LIMIT " +"(%) строк" #: commands/copyfrom.c:1474 -#, fuzzy, c-format +#, c-format msgid "% row was skipped due to data type incompatibility" msgid_plural "% rows were skipped due to data type incompatibility" -msgstr[0] "из-за несовместимости типов данных пропущена %llu строка" -msgstr[1] "из-за несовместимости типов данных пропущены %llu строки" -msgstr[2] "из-за несовместимости типов данных пропущены %llu строк" +msgstr[0] "из-за несовместимости типов данных пропущена % строка" +msgstr[1] "из-за несовместимости типов данных пропущены % строки" +msgstr[2] "из-за несовместимости типов данных пропущены % строк" #. 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 @@ -8412,21 +8432,21 @@ msgid "missing data for column \"%s\"" msgstr "нет данных для столбца \"%s\"" #: commands/copyfromparse.c:1056 -#, fuzzy, c-format +#, c-format msgid "" "skipping row due to data type incompatibility at line % for column " "\"%s\": \"%s\"" msgstr "" -"строка пропускается из-за несовместимости данных в строке %llu, столбце " +"строка пропускается из-за несовместимости данных в строке %, столбце " "\"%s\": \"%s\"" #: commands/copyfromparse.c:1064 -#, fuzzy, c-format +#, c-format msgid "" "skipping row due to data type incompatibility at line % for column " "\"%s\": null input" msgstr "" -"строка пропускается из-за несовместимости данных в строке %llu, столбце " +"строка пропускается из-за несовместимости данных в строке %, столбце " "\"%s\": значение null" #: commands/copyfromparse.c:1122 @@ -8486,9 +8506,9 @@ msgstr "маркер \"конец копии\" не соответствует #: commands/copyfromparse.c:1473 commands/copyfromparse.c:1484 #: commands/copyfromparse.c:1500 -#, fuzzy, c-format +#, c-format msgid "end-of-copy marker is not alone on its line" -msgstr "маркер \"конец копии\" не соответствует предыдущему стилю новой строки" +msgstr "в строке с маркером \"конец копии\" есть лишние данные" #: commands/copyfromparse.c:1773 commands/copyfromparse.c:1988 #, c-format @@ -8541,9 +8561,10 @@ msgid "Try the COPY (SELECT ...) TO variant." msgstr "Попробуйте вариацию COPY (SELECT ...) TO." #: commands/copyto.c:660 -#, fuzzy, c-format +#, c-format msgid "cannot copy from unpopulated materialized view \"%s\"" -msgstr "копировать из материализованного представления \"%s\" нельзя" +msgstr "" +"копировать из ненаполненного материализованного представления \"%s\" нельзя" #: commands/copyto.c:662 executor/execUtils.c:760 #, c-format @@ -8670,7 +8691,7 @@ msgstr "%s не является верным названием кодиров msgid "unrecognized locale provider: %s" msgstr "нераспознанный провайдер локали: %s" -#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:300 +#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -8724,15 +8745,17 @@ msgid "invalid LC_COLLATE locale name: \"%s\"" msgstr "неверное имя локали LC_COLLATE: \"%s\"" #: commands/dbcommands.c:1073 commands/dbcommands.c:1091 -#, fuzzy, c-format +#, c-format msgid "" "If the locale name is specific to the builtin provider, use BUILTIN_LOCALE." -msgstr "Если эта локаль свойственна ICU, используйте ICU_LOCALE." +msgstr "" +"Если эта локаль свойственна встроенному провайдеру, используйте " +"BUILTIN_LOCALE." #: commands/dbcommands.c:1078 commands/dbcommands.c:1096 -#, fuzzy, c-format +#, c-format msgid "If the locale name is specific to the ICU provider, use ICU_LOCALE." -msgstr "Если эта локаль свойственна ICU, используйте ICU_LOCALE." +msgstr "Если эта локаль свойственна провайдеру ICU, используйте ICU_LOCALE." #: commands/dbcommands.c:1090 commands/dbcommands.c:1095 #: commands/dbcommands.c:1100 @@ -9301,79 +9324,79 @@ msgstr "" 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 можно вызывать только в событийной триггерной функции" @@ -9390,9 +9413,9 @@ msgstr "нераспознанный параметр EXPLAIN: \"%s\"" #: commands/explain_state.c:174 commands/explain_state.c:186 #: commands/explain_state.c:192 -#, fuzzy, c-format +#, c-format msgid "EXPLAIN option %s requires ANALYZE" -msgstr "параметр WAL оператора EXPLAIN требует указания ANALYZE" +msgstr "параметр %s оператора EXPLAIN требует указания ANALYZE" #: commands/explain_state.c:198 #, c-format @@ -9401,7 +9424,7 @@ msgstr "" "параметры ANALYZE и GENERIC_PLAN оператора EXPLAIN нельзя использовать " "одновременно" -#: 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\" не существует" @@ -9511,19 +9534,19 @@ msgstr "" "параметр \"schema\" не может быть указан вместе с \"relocatable\" = true" #: commands/extension.c:867 -#, fuzzy, c-format +#, c-format msgid "SQL statement \"%.*s\"" -msgstr "SQL-оператор: \"%s\"" +msgstr "SQL-оператор: \"%.*s\"" #: commands/extension.c:896 -#, fuzzy, c-format +#, c-format msgid "extension script file \"%s\", near line %d" -msgstr "Подключение соответствует строке %2$d в \"%1$s\": \"%3$s\"" +msgstr "файл скрипта расширения \"%s\", в строке %d" #: commands/extension.c:900 -#, fuzzy, c-format +#, c-format msgid "extension script file \"%s\"" -msgstr "специальный файл \"%s\" пропускается" +msgstr "файл скрипта расширения \"%s\"" #: commands/extension.c:1012 #, c-format @@ -9587,7 +9610,7 @@ 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 "нужно указать версию для установки" @@ -9648,24 +9671,24 @@ 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 можно вызывать только из SQL-скрипта, запускаемого командой CREATE " "EXTENSION" -#: 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 " @@ -9674,12 +9697,12 @@ 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 "расширение \"%s\" не поддерживает SET SCHEMA" -#: commands/extension.c:3179 +#: commands/extension.c:3203 #, c-format msgid "" "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" @@ -9687,32 +9710,32 @@ msgstr "" "выполнить SET SCHEMA для расширения \"%s\" нельзя, так как этому " "препятствуют другие расширения" -#: 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 "версия \"%s\" расширения \"%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 " @@ -9721,22 +9744,20 @@ 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:625 -#, fuzzy, c-format +#: commands/extension.c:3918 utils/fmgr/dfmgr.c:625 +#, c-format msgid "component in parameter \"%s\" is not an absolute path" -msgstr "" -"параметр dynamic_library_path содержит компонент, не являющийся абсолютным " -"путём" +msgstr "компонент в параметре \"%s\" не является абсолютным путём" #: commands/foreigncmds.c:159 commands/foreigncmds.c:168 #, c-format @@ -10316,9 +10337,9 @@ msgid "access method \"%s\" does not support exclusion constraints" msgstr "метод доступа \"%s\" не поддерживает ограничения-исключения" #: commands/indexcmds.c:892 -#, fuzzy, c-format +#, c-format msgid "access method \"%s\" does not support WITHOUT OVERLAPS constraints" -msgstr "метод доступа \"%s\" не поддерживает ограничения-исключения" +msgstr "метод доступа \"%s\" не поддерживает ограничения WITHOUT OVERLAPS" #: commands/indexcmds.c:1019 #, c-format @@ -10344,11 +10365,13 @@ msgid "could not identify an equality operator for type %s" msgstr "не удалось найти оператор равенства для типа %s" #: commands/indexcmds.c:1057 commands/indexcmds.c:2491 -#, fuzzy, c-format +#, c-format msgid "" "There is no suitable operator in operator family \"%s\" for access method " "\"%s\"." -msgstr "семейство операторов %s для метода доступа %s" +msgstr "" +"В семействе операторов \"%s\" нет подходящего оператора для метода доступа " +"\"%s\"." #: commands/indexcmds.c:1077 #, c-format @@ -10382,19 +10405,22 @@ msgid "index creation on system columns is not supported" msgstr "создание индекса для системных столбцов не поддерживается" #: commands/indexcmds.c:1123 -#, fuzzy, c-format +#, c-format msgid "primary keys on virtual generated columns are not supported" -msgstr "генерируемые столбцы не поддерживаются с секциями" +msgstr "" +"первичные ключи с виртуальными генерируемыми столбцами не поддерживаются" #: commands/indexcmds.c:1125 commands/indexcmds.c:1164 -#, fuzzy, c-format +#, c-format msgid "unique constraints on virtual generated columns are not supported" -msgstr "создание индекса для системных столбцов не поддерживается" +msgstr "" +"ограничения уникальности с виртуальными генерируемыми столбцами не " +"поддерживаются" #: commands/indexcmds.c:1126 commands/indexcmds.c:1165 -#, fuzzy, c-format +#, c-format msgid "indexes on virtual generated columns are not supported" -msgstr "генерируемые столбцы не поддерживаются с секциями" +msgstr "индексы с виртуальными генерируемыми столбцами не поддерживаются" #: commands/indexcmds.c:1397 tcop/utility.c:1518 #, c-format @@ -10411,13 +10437,13 @@ 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 "выражения во включаемых столбцах не поддерживаются" @@ -10453,7 +10479,7 @@ 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 +#: parser/parse_expr.c:2805 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" @@ -10530,22 +10556,23 @@ msgstr "" "для типа данных %s определено несколько классов операторов по умолчанию" #: commands/indexcmds.c:2470 commands/indexcmds.c:2489 -#, fuzzy, c-format +#, c-format msgid "could not identify an overlaps operator for type %s" -msgstr "для типа %s не удалось найти оператор сортировки" +msgstr "для типа %s не удалось найти оператор пересечения" #: commands/indexcmds.c:2471 commands/indexcmds.c:2490 -#, fuzzy, c-format +#, c-format msgid "could not identify a contained-by operator for type %s" -msgstr "не удалось найти оператор неравенства для типа %s" +msgstr "не удалось найти оператор «содержится в» для типа %s" #: commands/indexcmds.c:2472 commands/tablecmds.c:10333 -#, fuzzy, c-format +#, c-format msgid "" "Could not translate compare type %d for operator family \"%s\" of access " "method \"%s\"." msgstr "" -"Преобразовать имя клиентского компьютера \"%s\" в IP-адрес не удалось: %s." +"Не удалось перевести тип сравнения %d для семейства операторов \"%s\" метода " +"доступа \"%s\"." #: commands/indexcmds.c:2846 #, c-format @@ -10688,9 +10715,11 @@ msgid "Row: %s" msgstr "Строка: %s" #: commands/matview.c:838 -#, fuzzy, c-format +#, c-format msgid "could not find suitable unique index on materialized view \"%s\"" -msgstr "создать уникальный индекс в секционированной таблице \"%s\" нельзя" +msgstr "" +"не удалось найти подходящий уникальный индекс в материализованном " +"представлении \"%s\"" #: commands/opclasscmds.c:124 #, c-format @@ -10818,64 +10847,72 @@ msgstr "" "операторов: '%s'." #: commands/opclasscmds.c:1259 -#, fuzzy, c-format +#, c-format msgid "ordering comparison functions must have two arguments" -msgstr "функции сравнения btree должны иметь два аргумента" +msgstr "функции сравнения для упорядочивания должны иметь два аргумента" #: commands/opclasscmds.c:1263 -#, fuzzy, c-format +#, c-format msgid "ordering comparison functions must return integer" -msgstr "функции сравнения btree должны возвращать целое число" +msgstr "функции сравнения для упорядочивания должны возвращать целое число" #: commands/opclasscmds.c:1280 -#, fuzzy, c-format +#, c-format msgid "ordering sort support functions must accept type \"internal\"" -msgstr "опорные функции сортировки btree должны принимать тип \"internal\"" +msgstr "" +"опорные функции сортировки для упорядочивания должны принимать тип " +"\"internal\"" #: commands/opclasscmds.c:1284 -#, fuzzy, c-format +#, c-format msgid "ordering sort support functions must return void" -msgstr "опорные функции сортировки btree должны возвращать пустое (void)" +msgstr "" +"опорные функции сортировки для упорядочивания должны возвращать пустое (void)" #: commands/opclasscmds.c:1295 -#, fuzzy, c-format +#, c-format msgid "ordering in_range functions must have five arguments" -msgstr "функции in_range для btree должны принимать пять аргументов" +msgstr "функции in_range для упорядочивания должны принимать пять аргументов" #: commands/opclasscmds.c:1299 -#, fuzzy, c-format +#, c-format msgid "ordering in_range functions must return boolean" -msgstr "функции in_range для btree должны возвращать логическое значение" +msgstr "" +"функции in_range для упорядочивания должны возвращать логическое значение" #: commands/opclasscmds.c:1315 -#, fuzzy, c-format +#, c-format msgid "ordering equal image functions must have one argument" -msgstr "функции равенства образов btree должны иметь один аргумент" +msgstr "" +"функции равенства образов для упорядочивания должны иметь один аргумент" #: commands/opclasscmds.c:1319 -#, fuzzy, c-format +#, c-format msgid "ordering equal image functions must return boolean" -msgstr "функции равенства образов должны возвращать логическое значение" +msgstr "" +"функции равенства образов для упорядочивания должны возвращать логическое " +"значение" #: commands/opclasscmds.c:1332 -#, fuzzy, c-format +#, c-format msgid "ordering equal image functions must not be cross-type" -msgstr "функции равенства образов не должны быть межтиповыми" +msgstr "" +"функции равенства образов для упорядочивания не должны быть межтиповыми" #: commands/opclasscmds.c:1340 -#, fuzzy, c-format +#, c-format msgid "btree skip support functions must accept type \"internal\"" -msgstr "опорные функции сортировки btree должны принимать тип \"internal\"" +msgstr "опорные функции пропуска в btree должны принимать тип \"internal\"" #: commands/opclasscmds.c:1344 -#, fuzzy, c-format +#, c-format msgid "btree skip support functions must return void" -msgstr "опорные функции сортировки btree должны возвращать пустое (void)" +msgstr "опорные функции пропуска в btree должны возвращать пустое (void)" #: commands/opclasscmds.c:1357 -#, fuzzy, c-format +#, c-format msgid "btree skip support functions must not be cross-type" -msgstr "функции равенства образов не должны быть межтиповыми" +msgstr "опорные функции пропуска в btree не должны быть межтиповыми" #: commands/opclasscmds.c:1367 #, c-format @@ -11357,14 +11394,14 @@ msgid "publication with OID %u does not exist" msgstr "публикация с OID %u не существует" #: commands/publicationcmds.c:2133 -#, fuzzy, c-format +#, c-format msgid "invalid value for publication parameter \"%s\": \"%s\"" -msgstr "неверное значение для параметра \"%s\": \"%s\"" +msgstr "неверное значение для параметра публикации \"%s\": \"%s\"" #: commands/publicationcmds.c:2134 -#, fuzzy, c-format +#, c-format msgid "Valid values are \"%s\" and \"%s\"." -msgstr "Допускаются значения только от \"%d\" до \"%d\"." +msgstr "Допустимые значения: \"%s\" и \"%s\"." #: commands/schemacmds.c:109 commands/schemacmds.c:289 #, c-format @@ -11410,15 +11447,16 @@ msgid "cannot set security label on relation \"%s\"" msgstr "задать метку безопасности для отношения \"%s\" нельзя" #: commands/sequence.c:748 -#, fuzzy, c-format +#, c-format msgid "nextval: reached maximum value of sequence \"%s\" (%)" msgstr "" -"функция nextval достигла максимума для последовательности \"%s\" (%lld)" +"функция nextval достигла максимума для последовательности \"%s\" (%)" #: commands/sequence.c:767 -#, fuzzy, c-format +#, c-format msgid "nextval: reached minimum value of sequence \"%s\" (%)" -msgstr "функция nextval достигла минимума для последовательности \"%s\" (%lld)" +msgstr "" +"функция nextval достигла минимума для последовательности \"%s\" (%)" #: commands/sequence.c:886 #, c-format @@ -11433,13 +11471,13 @@ msgid "lastval is not yet defined in this session" msgstr "последнее значение (lastval) ещё не определено в этом сеансе" #: commands/sequence.c:991 -#, fuzzy, c-format +#, c-format msgid "" "setval: value % is out of bounds for sequence \"%s\" (%.." "%)" msgstr "" -"функции setval передано значение %lld вне пределов последовательности " -"\"%s\" (%lld..%lld)" +"функции setval передано значение % вне пределов последовательности " +"\"%s\" (%..%)" #: commands/sequence.c:1357 #, c-format @@ -11464,44 +11502,46 @@ msgid "INCREMENT must not be zero" msgstr "INCREMENT не может быть нулевым" #: commands/sequence.c:1466 -#, fuzzy, c-format +#, c-format msgid "MAXVALUE (%) is out of range for sequence data type %s" -msgstr "MAXVALUE (%lld) выходит за пределы типа данных последовательности %s" +msgstr "" +"MAXVALUE (%) выходит за пределы типа данных последовательности %s" #: commands/sequence.c:1498 -#, fuzzy, c-format +#, c-format msgid "MINVALUE (%) is out of range for sequence data type %s" -msgstr "MINVALUE (%lld) выходит за пределы типа данных последовательности %s" +msgstr "" +"MINVALUE (%) выходит за пределы типа данных последовательности %s" #: commands/sequence.c:1506 -#, fuzzy, c-format +#, c-format msgid "MINVALUE (%) must be less than MAXVALUE (%)" -msgstr "MINVALUE (%lld) должно быть меньше MAXVALUE (%lld)" +msgstr "MINVALUE (%) должно быть меньше MAXVALUE (%)" #: commands/sequence.c:1527 -#, fuzzy, c-format +#, c-format msgid "START value (%) cannot be less than MINVALUE (%)" -msgstr "значение START (%lld) не может быть меньше MINVALUE (%lld)" +msgstr "значение START (%) не может быть меньше MINVALUE (%)" #: commands/sequence.c:1533 -#, fuzzy, c-format +#, c-format msgid "START value (%) cannot be greater than MAXVALUE (%)" -msgstr "значение START (%lld) не может быть больше MAXVALUE (%lld)" +msgstr "значение START (%) не может быть больше MAXVALUE (%)" #: commands/sequence.c:1557 -#, fuzzy, c-format +#, c-format msgid "RESTART value (%) cannot be less than MINVALUE (%)" -msgstr "значение RESTART (%lld) не может быть меньше MINVALUE (%lld)" +msgstr "значение RESTART (%) не может быть меньше MINVALUE (%)" #: commands/sequence.c:1563 -#, fuzzy, c-format +#, c-format msgid "RESTART value (%) cannot be greater than MAXVALUE (%)" -msgstr "значение RESTART (%lld) не может быть больше MAXVALUE (%lld)" +msgstr "значение RESTART (%) не может быть больше MAXVALUE (%)" #: commands/sequence.c:1574 -#, fuzzy, c-format +#, c-format msgid "CACHE (%) must be greater than zero" -msgstr "значение CACHE (%lld) должно быть больше нуля" +msgstr "значение CACHE (%) должно быть больше нуля" #: commands/sequence.c:1610 #, c-format @@ -11575,9 +11615,10 @@ msgid "statistics creation on system columns is not supported" msgstr "создание статистики для системных столбцов не поддерживается" #: commands/statscmds.c:253 commands/statscmds.c:282 commands/statscmds.c:322 -#, fuzzy, c-format +#, c-format msgid "statistics creation on virtual generated columns is not supported" -msgstr "создание статистики для системных столбцов не поддерживается" +msgstr "" +"создание статистики для виртуальных генерируемых столбцов не поддерживается" #: commands/statscmds.c:260 commands/statscmds.c:289 #, c-format @@ -11695,9 +11736,9 @@ msgstr "Создавать подписки могут только роли с #: commands/subscriptioncmds.c:718 commands/subscriptioncmds.c:852 #: commands/subscriptioncmds.c:1594 -#, fuzzy, c-format +#, c-format msgid "subscription \"%s\" could not connect to the publisher: %s" -msgstr "не удалось подключиться к серверу публикации: %s" +msgstr "подключить подписку \"%s\" к серверу публикации не удалось: %s" #: commands/subscriptioncmds.c:790 #, c-format @@ -11719,9 +11760,9 @@ msgstr "" "подписку, а затем обновить её." #: commands/subscriptioncmds.c:1070 -#, fuzzy, c-format +#, c-format msgid "cannot set option \"%s\" for enabled subscription" -msgstr "для включённой подписки нельзя задать %s" +msgstr "для включённой подписки нельзя задать параметр \"%s\"" #: commands/subscriptioncmds.c:1084 #, c-format @@ -11744,28 +11785,31 @@ msgstr "для включённой подписки нельзя задать % #: commands/subscriptioncmds.c:1270 #, c-format msgid "\"slot_name\" and \"two_phase\" cannot be altered at the same time" -msgstr "" +msgstr "параметры \"slot_name\" и \"two_phase\" нельзя изменить одновременно" #: commands/subscriptioncmds.c:1286 -#, fuzzy, c-format +#, c-format msgid "" "cannot alter \"two_phase\" when logical replication worker is still running" -msgstr "использовать %s со слотом логической репликации нельзя" +msgstr "" +"изменить параметр \"two_phase\", пока выполняется рабочий процесс логической " +"репликации, нельзя" #: commands/subscriptioncmds.c:1287 #, c-format msgid "Try again after some time." -msgstr "" +msgstr "Повторите попытку позже." #: commands/subscriptioncmds.c:1300 -#, fuzzy, c-format +#, c-format msgid "cannot disable \"two_phase\" when prepared transactions exist" -msgstr "база \"%s\" используется подготовленными транзакциями" +msgstr "" +"отключить \"two_phase\" нельзя, когда существуют подготовленные транзакции" #: commands/subscriptioncmds.c:1301 -#, fuzzy, c-format +#, c-format msgid "Resolve these transactions and try again." -msgstr "Устанавливает режим \"только чтение\" для текущей транзакции." +msgstr "Повторите попытку после завершения этих транзакций." #: commands/subscriptioncmds.c:1348 #, c-format @@ -12018,7 +12062,7 @@ msgstr "" "представления." #: commands/tablecmds.c:282 commands/tablecmds.c:306 commands/tablecmds.c:21612 -#: parser/parse_utilcmd.c:2429 +#: parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" msgstr "индекс \"%s\" не существует" @@ -12062,9 +12106,9 @@ msgid "ON COMMIT can only be used on temporary tables" msgstr "ON COMMIT можно использовать только для временных таблиц" #: commands/tablecmds.c:819 -#, fuzzy, c-format +#, c-format msgid "partitioned tables cannot be unlogged" -msgstr "материализованные представления не могут быть нежурналируемыми" +msgstr "секционированные таблицы не могут быть нежурналируемыми" #: commands/tablecmds.c:839 #, c-format @@ -12163,8 +12207,8 @@ msgstr "наследование от секционированной табл 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 "" @@ -12190,8 +12234,8 @@ 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 +#: 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 "преобразовать ссылку на тип всей строки таблицы нельзя" @@ -12205,7 +12249,7 @@ msgstr "" "Генерирующее выражение столбца \"%s\" ссылается на тип всей строки в таблице " "\"%s\"." -#: 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 "Ограничение \"%s\" ссылается на тип всей строки в таблице \"%s\"." @@ -12238,17 +12282,15 @@ msgstr "" #: commands/tablecmds.c:3072 commands/tablecmds.c:3366 #: commands/tablecmds.c:17537 -#, fuzzy, c-format +#, c-format msgid "column \"%s\" inherits from generated column of different kind" -msgstr "" -"столбец \"%s\" наследуется от генерируемого столбца, но для него задано " -"свойство идентификации" +msgstr "столбец \"%s\" наследуется от генерируемого столбца другого вида" #: commands/tablecmds.c:3074 commands/tablecmds.c:3368 #: commands/tablecmds.c:17538 #, c-format msgid "Parent column is %s, child column is %s." -msgstr "" +msgstr "Родительский столбец: %s, дочерний столбец: %s." #: commands/tablecmds.c:3121 #, c-format @@ -12518,15 +12560,17 @@ msgstr "" "Чтобы изменить также типизированные таблицы, выполните ALTER ... CASCADE." #: commands/tablecmds.c:7156 -#, fuzzy, c-format +#, c-format msgid "type %s is the row type of another table" -msgstr "изменить тип \"%s\", так как это тип типизированной таблицы" +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 @@ -12696,12 +12740,15 @@ 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 -#, fuzzy, c-format +#, c-format msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." -msgstr "столбец \"%s\" отношения \"%s\" является генерируемым" +msgstr "" +"Столбец \"%s\" отношения \"%s\" является виртуальным генерируемым столбцом." #: commands/tablecmds.c:8630 #, c-format @@ -12709,6 +12756,8 @@ 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 #, c-format @@ -12722,18 +12771,19 @@ msgid "cannot drop generation expression from inherited column" msgstr "нельзя удалить генерирующее выражение из наследуемого столбца" #: commands/tablecmds.c:8802 -#, fuzzy, c-format +#, c-format msgid "" "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" msgstr "" -"ALTER TABLE / DROP EXPRESSION нужно применять также к дочерним таблицам" +"ALTER TABLE / DROP EXPRESSION не поддерживается для виртуальных генерируемых " +"столбцов" #: commands/tablecmds.c:8816 -#, fuzzy, c-format +#, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "" "столбец \"%s\" отношения \"%s\" пропускается, так как не является " -"сохранённым генерируемым столбцом" +"генерируемым столбцом" #: commands/tablecmds.c:8894 #, c-format @@ -12746,9 +12796,9 @@ msgid "column number %d of relation \"%s\" does not exist" msgstr "столбец с номером %d отношения \"%s\" не существует" #: commands/tablecmds.c:8966 -#, fuzzy, c-format +#, c-format msgid "cannot alter statistics on virtual generated column \"%s\"" -msgstr "изменить статистику включённого столбца \"%s\" индекса \"%s\" нельзя" +msgstr "изменить статистику виртуального генерируемого столбца \"%s\" нельзя" #: commands/tablecmds.c:8975 #, c-format @@ -12804,14 +12854,14 @@ msgstr "" "нельзя" #: commands/tablecmds.c:9518 -#, fuzzy, c-format +#, c-format msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" -msgstr "Столбец \"%s\" отношения \"%s\" уже имеет свойство NOT NULL." +msgstr "столбец \"%s\" таблицы \"%s\" не помечен как NOT NULL" #: commands/tablecmds.c:9554 commands/tablecmds.c:9566 -#, fuzzy, c-format +#, c-format msgid "cannot create primary key on column \"%s\"" -msgstr "нельзя переименовать системный столбец \"%s\"" +msgstr "создать первичный ключ со столбцом \"%s\" нельзя" #. translator: fourth %s is a constraint characteristic such as NOT VALID #: commands/tablecmds.c:9556 commands/tablecmds.c:9568 @@ -12820,6 +12870,8 @@ 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:9692 #, c-format @@ -12885,13 +12937,13 @@ msgstr "" #, c-format msgid "" "foreign key uses PERIOD on the referenced table but not the referencing table" -msgstr "" +msgstr "внешний ключ использует PERIOD в целевой таблице, но не в ссылающейся" #: commands/tablecmds.c:10178 #, c-format msgid "" "foreign key uses PERIOD on the referencing table but not the referenced table" -msgstr "" +msgstr "внешний ключ использует PERIOD в ссылающейся таблице, но не в целевой" #: commands/tablecmds.c:10192 #, c-format @@ -12899,6 +12951,8 @@ msgid "" "foreign key must use PERIOD when referencing a primary key using WITHOUT " "OVERLAPS" msgstr "" +"внешний ключ должен использовать PERIOD, ссылаясь на первичный ключ, " +"использующий WITHOUT OVERLAPS" #: commands/tablecmds.c:10216 commands/tablecmds.c:10222 #, c-format @@ -12909,16 +12963,18 @@ msgstr "" "генерируемый столбец" #: commands/tablecmds.c:10237 -#, fuzzy, c-format +#, c-format msgid "foreign key constraints on virtual generated columns are not supported" -msgstr "ограничение внешнего ключа \"%s\" в таблице\"%s\" не существует" +msgstr "" +"ограничения внешних ключей с виртуальными генерируемыми столбцами не " +"поддерживаются" #: commands/tablecmds.c:10251 commands/tablecmds.c:10260 -#, fuzzy, c-format +#, c-format msgid "unsupported %s action for foreign key constraint using PERIOD" msgstr "" -"некорректное действие %s для ограничения внешнего ключа, содержащего " -"генерируемый столбец" +"неподдерживаемое действие %s для ограничения внешнего ключа с указанием " +"PERIOD" #: commands/tablecmds.c:10275 #, c-format @@ -12926,14 +12982,14 @@ msgid "number of referencing and referenced columns for foreign key disagree" msgstr "число столбцов в источнике и назначении внешнего ключа не совпадает" #: commands/tablecmds.c:10331 -#, fuzzy, c-format +#, c-format msgid "could not identify an overlaps operator for foreign key" -msgstr "для типа %s не удалось найти оператор сортировки" +msgstr "не удалось найти оператор пересечения для внешнего ключа" #: commands/tablecmds.c:10332 -#, fuzzy, c-format +#, c-format msgid "could not identify an equality operator for foreign key" -msgstr "не удалось найти оператор равенства для типа %s" +msgstr "не удалось найти оператор равенства для внешнего ключа" #: commands/tablecmds.c:10397 commands/tablecmds.c:10431 #, c-format @@ -12941,11 +12997,13 @@ msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "ограничение внешнего ключа \"%s\" нельзя реализовать" #: commands/tablecmds.c:10399 -#, fuzzy, c-format +#, 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." +msgstr "" +"Столбцы ключа \"%s\" ссылающейся таблицы и \"%s\" целевой таблицы имеют " +"несовместимые типы: %s и %s." #: commands/tablecmds.c:10432 #, c-format @@ -12954,6 +13012,10 @@ msgid "" "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:10638 #, c-format @@ -12979,17 +13041,18 @@ msgstr "" "ссылается внешний ключ \"%s\"" #: commands/tablecmds.c:11719 -#, fuzzy, c-format +#, c-format msgid "" "constraint \"%s\" enforceability conflicts with constraint \"%s\" on " "relation \"%s\"" msgstr "" -"ограничение \"%s\" конфликтует с наследуемым ограничением таблицы \"%s\"" +"ограничение \"%s\" имеет свойство контролируемости, отличное от ограничения " +"\"%s\" в отношении \"%s\"" #: commands/tablecmds.c:12181 -#, fuzzy, c-format +#, c-format msgid "constraint must be altered in child tables too" -msgstr "ограничение также должно соблюдаться в дочерних таблицах" +msgstr "ограничение должно быть изменено также и в дочерних таблицах" #: commands/tablecmds.c:12210 commands/tablecmds.c:12907 #: commands/tablecmds.c:14022 commands/tablecmds.c:14251 @@ -13003,19 +13066,20 @@ msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "ограничение \"%s\" в таблице \"%s\" не является внешним ключом" #: commands/tablecmds.c:12222 -#, fuzzy, c-format +#, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" -msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" +msgstr "" +"изменить свойство контролируемости ограничения \"%s\" отношения \"%s\" нельзя" #: commands/tablecmds.c:12228 -#, fuzzy, c-format +#, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" -msgstr "ограничение \"%s\" в таблице \"%s\" не является внешним ключом" +msgstr "ограничение \"%s\" в таблице \"%s\" не является ограничением NOT NULL" #: commands/tablecmds.c:12236 -#, fuzzy, c-format +#, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" -msgstr "удалить наследованное ограничение \"%s\" таблицы \"%s\" нельзя" +msgstr "изменить наследуемое ограничение \"%s\" в отношении \"%s\" нельзя" #: commands/tablecmds.c:12276 #, c-format @@ -13034,19 +13098,19 @@ msgid "You may alter the constraint it derives from instead." msgstr "Вместо этого вы можете изменить родительское ограничение." #: commands/tablecmds.c:12916 -#, fuzzy, c-format +#, c-format msgid "cannot validate constraint \"%s\" of relation \"%s\"" -msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" +msgstr "проверить ограничение \"%s\" отношения \"%s\" нельзя" #: commands/tablecmds.c:12918 -#, fuzzy, c-format +#, c-format msgid "This operation is not supported for this type of constraint." -msgstr "Эта операция не поддерживается для составных типов." +msgstr "Эта операция не поддерживается для ограничений данного типа." #: commands/tablecmds.c:12923 #, c-format msgid "cannot validate NOT ENFORCED constraint" -msgstr "" +msgstr "проверить отношение NOT ENFORCED нельзя" #: commands/tablecmds.c:13132 commands/tablecmds.c:13232 #, c-format @@ -13369,9 +13433,10 @@ msgstr "" "наследования." #: commands/tablecmds.c:17518 commands/tablecmds.c:17767 -#, fuzzy, c-format +#, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" -msgstr "столбец \"%s\" в дочерней таблице должен быть помечен как NOT NULL" +msgstr "" +"столбец \"%s\" в дочерней таблице \"%s\" должен быть помечен как NOT NULL" #: commands/tablecmds.c:17528 #, c-format @@ -13413,13 +13478,13 @@ msgstr "" "дочерней таблицы \"%s\"" #: commands/tablecmds.c:17726 -#, fuzzy, c-format +#, c-format msgid "" "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table " "\"%s\"" msgstr "" -"ограничение \"%s\" конфликтует с непроверенным (NOT VALID) ограничением " -"дочерней таблицы \"%s\"" +"ограничение \"%s\" конфликтует с неконтролируемым (NOT ENFORCED) " +"ограничением дочерней таблицы \"%s\"" #: commands/tablecmds.c:17775 #, c-format @@ -13799,14 +13864,14 @@ msgid "Another index is already attached for partition \"%s\"." msgstr "К секции \"%s\" уже присоединён другой индекс." #: commands/tablecmds.c:21881 -#, fuzzy, c-format +#, c-format msgid "invalid primary key definition" -msgstr "неверная запись первичной контрольной точки" +msgstr "неверная определение первичного ключа" #: commands/tablecmds.c:21882 -#, fuzzy, c-format +#, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." -msgstr "Столбец \"%s\" отношения \"%s\" уже имеет свойство NOT NULL." +msgstr "Столбец \"%s\" отношения \"%s\" не имеет свойства NOT NULL." #: commands/tablecmds.c:22017 #, c-format @@ -14227,7 +14292,7 @@ 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 +#: executor/nodeModifyTable.c:3502 #, c-format msgid "" "Consider using an AFTER trigger instead of a BEFORE trigger to propagate " @@ -14444,21 +14509,19 @@ msgid "conflicting NULL/NOT NULL constraints" msgstr "конфликтующие ограничения NULL/NOT NULL" #: commands/typecmds.c:952 -#, fuzzy, c-format +#, c-format msgid "redundant NOT NULL constraint definition" -msgstr "недостаточно столбцов в определении ограничения %s" +msgstr "избыточное определение ограничения NOT NULL" #: commands/typecmds.c:958 -#, fuzzy, c-format +#, c-format msgid "not-null constraints for domains cannot be marked NO INHERIT" -msgstr "" -"ограничения-проверки для доменов не могут иметь характеристики 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" +msgstr "ограничения-проверки для доменов не могут иметь свойства NO INHERIT" #: commands/typecmds.c:996 #, c-format @@ -14487,16 +14550,17 @@ msgstr "" "возможность определения отложенных ограничений для доменов не поддерживается" #: commands/typecmds.c:1035 -#, fuzzy, c-format +#, c-format msgid "specifying GENERATED not supported for domains" msgstr "" -"возможность определения отложенных ограничений для доменов не поддерживается" +"возможность определения свойства GENERATED для доменов не поддерживается" #: commands/typecmds.c:1043 -#, fuzzy, c-format +#, c-format msgid "specifying constraint enforceability not supported for domains" msgstr "" -"возможность определения отложенных ограничений для доменов не поддерживается" +"возможность определения контролируемости ограничения для доменов не " +"поддерживается" #: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format @@ -14773,51 +14837,51 @@ 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 +#: commands/user.c:354 commands/user.c:1386 commands/user.c:1393 #: 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\" зарезервировано" -#: 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 "значение OID в pg_authid не задано в режиме двоичного обновления" @@ -15048,75 +15112,75 @@ 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 "" "Только роли с привилегией %s для роли \"%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 "" "Только роли с привилегией %s для роли \"%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 " @@ -15124,29 +15188,28 @@ msgid "" 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 -#, fuzzy, c-format +#, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." msgstr "" -"значение \"vacuum_buffer_usage_limit\" должно быть нулевым или лежать в " -"диапазоне от %d kB до %d kB" +"Значение \"%s\" должно быть нулевым или лежать в интервале от %d КБ до %d КБ." #: commands/vacuum.c:223 #, c-format msgid "BUFFER_USAGE_LIMIT option must be 0 or between %d kB and %d kB" msgstr "" "параметр BUFFER_USAGE_LIMIT должен быть нулевым или лежать в диапазоне от %d " -"kB до %d kB" +"КБ до %d КБ" #: commands/vacuum.c:233 #, c-format @@ -15240,9 +15303,9 @@ msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "анализ \"%s\" пропускается --- это отношение более не существует" #: commands/vacuum.c:989 -#, fuzzy, c-format +#, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" -msgstr "секционированная таблица \"%s\" была параллельно удалена" +msgstr "VACUUM ONLY для секционированной таблицы \"%s\" не имеет смысла" #: commands/vacuum.c:1180 #, c-format @@ -15287,9 +15350,9 @@ msgstr "" "нельзя" #: commands/vacuum.c:2650 -#, fuzzy, c-format +#, c-format msgid "scanned index \"%s\" to remove % row versions" -msgstr "просканирован индекс \"%s\", удалено версий строк: %lld" +msgstr "просканирован индекс \"%s\", удалено версий строк: %" #: commands/vacuum.c:2669 #, c-format @@ -15339,9 +15402,9 @@ msgstr[2] "" "(планировалось: %d)" #: commands/variable.c:185 -#, fuzzy, c-format +#, c-format msgid "Conflicting \"DateStyle\" specifications." -msgstr "Конфликтующие спецификации стиля дат." +msgstr "Конфликтующие спецификации \"DateStyle\"." #: commands/variable.c:307 #, c-format @@ -15424,10 +15487,10 @@ msgstr "" "команда SET TRANSACTION [NOT] DEFERRABLE должна выполняться до запросов" #: commands/variable.c:715 -#, fuzzy, c-format +#, c-format msgid "Cannot change \"client_encoding\" during a parallel operation." msgstr "" -"изменить параметр \"client_encoding\" во время параллельной операции нельзя" +"Изменить параметр \"client_encoding\" во время параллельной операции нельзя." #: commands/variable.c:743 #, c-format @@ -15606,7 +15669,7 @@ msgstr "" "В таблице определён тип %s (номер столбца: %d), а в запросе предполагается " "%s." -#: executor/execExpr.c:1157 parser/parse_agg.c:843 +#: executor/execExpr.c:1157 parser/parse_agg.c:869 #, c-format msgid "window function calls cannot be nested" msgstr "вложенные вызовы оконных функций недопустимы" @@ -15812,130 +15875,131 @@ msgstr "Ключ конфликтует с уже существующим." #, c-format msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "" +"в столбце \"%s\" отношения \"%s\" найдено пустое значение WITHOUT OVERLAPS" -#: executor/execMain.c:1066 +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "последовательность \"%s\" изменить нельзя" -#: executor/execMain.c:1072 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "TOAST-отношение \"%s\" изменить нельзя" -#: executor/execMain.c:1091 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "изменить материализованное представление \"%s\" нельзя" -#: executor/execMain.c:1103 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "вставлять данные в стороннюю таблицу \"%s\" нельзя" -#: executor/execMain.c:1109 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "сторонняя таблица \"%s\" не допускает добавления" -#: executor/execMain.c:1116 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "изменять данные в сторонней таблице \"%s\"" -#: executor/execMain.c:1122 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "сторонняя таблица \"%s\" не допускает изменения" -#: executor/execMain.c:1129 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "удалять данные из сторонней таблицы \"%s\" нельзя" -#: executor/execMain.c:1135 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "сторонняя таблица \"%s\" не допускает удаления" -#: executor/execMain.c:1146 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "отношение \"%s\" изменить нельзя" -#: executor/execMain.c:1173 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "блокировать строки в последовательности \"%s\" нельзя" -#: executor/execMain.c:1180 +#: executor/execMain.c:1199 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "блокировать строки в TOAST-отношении \"%s\" нельзя" -#: executor/execMain.c:1187 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "блокировать строки в представлении \"%s\" нельзя" -#: executor/execMain.c:1195 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "блокировать строки в материализованном представлении \"%s\" нельзя" -#: executor/execMain.c:1204 executor/execMain.c:2836 +#: executor/execMain.c:1223 executor/execMain.c:2855 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" msgstr "блокировать строки в сторонней таблице \"%s\" нельзя" -#: executor/execMain.c:1210 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "блокировать строки в отношении \"%s\" нельзя" -#: executor/execMain.c:1933 +#: executor/execMain.c:1952 #, 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:1954 executor/execMain.c:2066 executor/execMain.c:2204 +#: executor/execMain.c:2312 #, c-format msgid "Failing row contains %s." msgstr "Ошибочная строка содержит %s." -#: executor/execMain.c:2045 +#: executor/execMain.c:2064 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "новая строка в отношении \"%s\" нарушает ограничение-проверку \"%s\"" -#: executor/execMain.c:2182 +#: executor/execMain.c:2201 #, c-format msgid "" "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "" "значение NULL в столбце \"%s\" отношения \"%s\" нарушает ограничение NOT NULL" -#: executor/execMain.c:2291 +#: executor/execMain.c:2310 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "новая строка нарушает ограничение-проверку для представления \"%s\"" -#: executor/execMain.c:2301 +#: executor/execMain.c:2320 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" для таблицы " "\"%s\"" -#: executor/execMain.c:2306 +#: executor/execMain.c:2325 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк для таблицы \"%s\"" -#: executor/execMain.c:2314 +#: executor/execMain.c:2333 #, c-format msgid "" "target row violates row-level security policy \"%s\" (USING expression) for " @@ -15944,7 +16008,7 @@ msgstr "" "целевая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2319 +#: executor/execMain.c:2338 #, c-format msgid "" "target row violates row-level security policy (USING expression) for table " @@ -15953,7 +16017,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк (выражение USING) для " "таблицы \"%s\"" -#: executor/execMain.c:2326 +#: executor/execMain.c:2345 #, c-format msgid "" "new row violates row-level security policy \"%s\" (USING expression) for " @@ -15962,7 +16026,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2331 +#: executor/execMain.c:2350 #, c-format msgid "" "new row violates row-level security policy (USING expression) for table " @@ -16027,6 +16091,8 @@ msgstr "" #, c-format msgid "Replica identity must not contain unpublished generated columns." msgstr "" +"Идентификатор реплики не должен содержать неопубликованные генерируемые " +"столбцы." #: executor/execReplication.c:827 executor/execReplication.c:833 #: executor/execReplication.c:839 @@ -16343,7 +16409,7 @@ msgstr "Возможно, имеет смысл перенацелить вне #. translator: %s is a SQL command name #: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 -#: executor/nodeModifyTable.c:3507 +#: executor/nodeModifyTable.c:3508 #, c-format msgid "%s command cannot affect row a second time" msgstr "команда %s не может подействовать на строку дважды" @@ -16357,7 +16423,7 @@ msgstr "" "Проверьте, не содержат ли строки, которые должна добавить команда, " "дублирующиеся значения, подпадающие под ограничения." -#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3500 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 #, c-format msgid "" "tuple to be updated or deleted was already modified by an operation " @@ -16366,7 +16432,7 @@ msgstr "" "кортеж, который должен быть изменён или удалён, уже модифицирован в " "операции, вызванной текущей командой" -#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3509 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "" @@ -16392,8 +16458,8 @@ msgstr "параметр TABLESAMPLE не может быть NULL" msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "параметр TABLESAMPLE REPEATABLE не может быть NULL" -#: 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 "подзапрос в выражении вернул больше одной строки" @@ -16518,9 +16584,9 @@ msgid "%s query does not return tuples" msgstr "запрос %s не возвращает кортежи" #: executor/spi.c:2987 -#, fuzzy, c-format +#, c-format msgid "PL/pgSQL expression \"%s\"" -msgstr "SQL-выражение \"%s\"" +msgstr "выражение PL/pgSQL \"%s\"" #: executor/spi.c:2992 #, c-format @@ -16543,7 +16609,7 @@ 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 +#: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" msgstr "доступ к несистемным сторонним таблицам ограничен" @@ -16580,9 +16646,9 @@ msgstr "клиент выбрал неверный механизм аутент #: 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 -#, fuzzy, c-format +#, c-format msgid "malformed OAUTHBEARER message" -msgstr "неправильное сообщение SCRAM" +msgstr "неправильное сообщение OAUTHBEARER" #: libpq/auth-oauth.c:170 libpq/auth-scram.c:383 #, c-format @@ -16597,16 +16663,16 @@ msgstr "Длина сообщения не соответствует входн #: libpq/auth-oauth.c:193 #, c-format msgid "Client did not send a kvsep response." -msgstr "" +msgstr "Клиент не передал ответ kvsep." #: libpq/auth-oauth.c:221 -#, fuzzy, c-format +#, c-format msgid "" "The server does not support channel binding for OAuth, but the client " "message includes channel binding data." msgstr "" -"Клиент выбрал алгоритм SCRAM-SHA-256 без связывания каналов, но сообщение " -"SCRAM содержит данные связывания каналов." +"Сервер не поддерживает связывание каналов для OAuth, но клиентское сообщение " +"содержит данные связывания." #: libpq/auth-oauth.c:231 libpq/auth-scram.c:1003 libpq/auth-scram.c:1033 #, c-format @@ -16629,134 +16695,139 @@ msgid "Unexpected attribute \"%s\" in client-first-message." msgstr "Неожиданный атрибут \"%s\" в первом сообщении клиента." #: libpq/auth-oauth.c:264 -#, fuzzy, c-format +#, c-format msgid "Key-value separator expected, but found character \"%s\"." -msgstr "Ожидалась запятая, но обнаружен символ \"%s\"." +msgstr "" +"Ожидался разделитель между ключом и значением, но обнаружен символ \"%s\"." #: libpq/auth-oauth.c:273 -#, fuzzy, c-format +#, c-format msgid "Message does not contain an auth value." -msgstr "Файл \"%s\" содержит неприемлемые данные." +msgstr "Сообщение не содержит значение auth." #: libpq/auth-oauth.c:280 #, c-format msgid "Message contains additional data after the final terminator." -msgstr "" +msgstr "Сообщение содержит дополнительные данные после завершения." #: libpq/auth-oauth.c:343 #, c-format msgid "Message contains an empty key name." -msgstr "" +msgstr "Сообщение содержит пустое имя ключа." #: libpq/auth-oauth.c:350 #, c-format msgid "Message contains an invalid key name." -msgstr "" +msgstr "Сообщение содержит некорректное имя ключа." #: libpq/auth-oauth.c:376 -#, fuzzy, c-format +#, c-format msgid "Message contains an invalid value." -msgstr "перечисление %s не содержит значений" +msgstr "Сообщение содержит некорректное значение." #: libpq/auth-oauth.c:421 #, c-format msgid "Message contains an unterminated key/value pair." -msgstr "" +msgstr "Сообщение содержит незавершённую пару ключ/значение." #: libpq/auth-oauth.c:439 #, c-format msgid "Message contains a key without a value." -msgstr "" +msgstr "Сообщение содержит ключ без значения." #: libpq/auth-oauth.c:453 -#, fuzzy, c-format +#, c-format msgid "Message contains multiple auth values." -msgstr "столбец \"%s\" содержит значения NULL" +msgstr "Сообщение содержит несколько значений auth." #: libpq/auth-oauth.c:473 #, c-format msgid "Message did not contain a final terminator." -msgstr "" +msgstr "Сообщение не имеет завершения." #: libpq/auth-oauth.c:499 -#, fuzzy, c-format +#, c-format msgid "OAuth is not properly configured for this user" -msgstr "единица \"%s\" для типа %s не распознана" +msgstr "протокол OAuth не настроен правильно для данного пользователя" #: libpq/auth-oauth.c:500 #, c-format msgid "The issuer and scope parameters must be set in pg_hba.conf." msgstr "" +"В pg_hba.conf должны задаваться параметры, определяющие издателя и область " +"действия." #: libpq/auth-oauth.c:585 libpq/auth-oauth.c:602 libpq/auth-oauth.c:624 -#, fuzzy, c-format +#, c-format msgid "malformed OAuth bearer token" -msgstr "неправильный массив JSON" +msgstr "неправильный токен предъявителя в OAuth" #: libpq/auth-oauth.c:586 -#, fuzzy, c-format +#, c-format msgid "Client response indicated a non-Bearer authentication scheme." -msgstr "клиент выбрал неверный механизм аутентификации SASL" +msgstr "В ответе клиента указана схема аутентификации, отличная от Bearer." #: libpq/auth-oauth.c:603 -#, fuzzy, c-format +#, c-format msgid "Bearer token is empty." -msgstr "Сообщение пустое." +msgstr "Токен предъявителя пустой." #: libpq/auth-oauth.c:625 #, c-format msgid "Bearer token is not in the correct format." -msgstr "" +msgstr "Токен предъявителя имеет некорректный формат." #: libpq/auth-oauth.c:656 #, c-format msgid "validation of OAuth token requested without a validator loaded" -msgstr "" +msgstr "запрошена проверка токена OAuth, но модуль проверки не загружен" #: libpq/auth-oauth.c:665 #, c-format msgid "internal error in OAuth validator module" -msgstr "" +msgstr "внутренняя ошибка в модуле проверки OAuth" #: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:302 -#, fuzzy, c-format +#, c-format msgid "OAuth bearer authentication failed for user \"%s\"" -msgstr "пользователь \"%s\" не прошёл проверку подлинности (Peer)" +msgstr "" +"пользователь \"%s\" не прошёл проверку подлинности предъявителя в OAuth" #: libpq/auth-oauth.c:681 #, c-format msgid "Validator failed to authorize the provided token." -msgstr "" +msgstr "Модуль проверки не смог авторизовать предоставленный токен." #: libpq/auth-oauth.c:705 #, c-format msgid "Validator provided no identity." -msgstr "" +msgstr "Модуль проверки не предоставил удостоверение." #: libpq/auth-oauth.c:760 -#, fuzzy, c-format +#, c-format msgid "%s module \"%s\" must define the symbol %s" -msgstr "в модулях архивирования должен объявляться символ %s" +msgstr "в модуле %s \"%s\" должен быть определён символ %s" #: libpq/auth-oauth.c:773 -#, fuzzy, c-format +#, c-format msgid "%s module \"%s\": magic number mismatch" -msgstr "несовместимая библиотека \"%s\": несоответствие отличительного блока" +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 -#, fuzzy, c-format +#, c-format msgid "%s module \"%s\" must provide a %s callback" -msgstr "модули архивирования должны регистрировать обработчик вызова архивации" +msgstr "модуль %s \"%s\" должен предоставить функцию обратного вызова %s" #: libpq/auth-oauth.c:833 -#, fuzzy, c-format +#, c-format msgid "oauth_validator_libraries must be set for authentication method %s" -msgstr "параметр проверки подлинности \"%s\" допускается только для методов %s" +msgstr "" +"для метода аутентификации %s необходимо задать oauth_validator_libraries" #: 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 @@ -16778,18 +16849,18 @@ msgid "line %d of configuration file \"%s\"" msgstr "строка %d файла конфигурации \"%s\"" #: libpq/auth-oauth.c:867 -#, fuzzy, c-format +#, c-format msgid "" "authentication method \"oauth\" requires argument \"validator\" to be set " "when oauth_validator_libraries contains multiple options" msgstr "" -"для метода проверки подлинности \"ldap\" требуется установить аргументы " -"\"ldapbasedn\" и \"ldapprefix\" или \"ldapsuffix\"" +"для метода проверки подлинности \"oauth\" требуется определить аргумент " +"\"validator\", когда oauth_validator_libraries содержит несколько значений" #: libpq/auth-oauth.c:882 -#, fuzzy, c-format +#, c-format msgid "validator \"%s\" is not permitted by %s" -msgstr "для роли \"%s\" вход запрещён" +msgstr "модуль проверки \"%s\" не разрешён параметром %s" #: libpq/auth-sasl.c:89 #, c-format @@ -17228,14 +17299,14 @@ msgid "could not get peer credentials: %m" msgstr "не удалось получить данные пользователя через механизм peer: %m" #: libpq/auth.c:1888 -#, fuzzy, c-format +#, c-format msgid "could not look up local user ID %ld: %m" -msgstr "найти локального пользователя по идентификатору (%ld) не удалось: %s" +msgstr "найти локального пользователя по идентификатору (%ld) не удалось: %m" #: libpq/auth.c:1894 -#, fuzzy, c-format +#, c-format msgid "local user with ID %ld does not exist" -msgstr "локальный пользователь с ID %d не существует" +msgstr "локальный пользователь с ID %ld не существует" #: libpq/auth.c:1994 #, c-format @@ -17721,14 +17792,16 @@ msgid "\"%s\" cannot be higher than \"%s\"" msgstr "Версия \"%s\" не может быть выше \"%s\"" #: libpq/be-secure-openssl.c:295 -#, fuzzy, c-format +#, c-format msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" -msgstr "не удалось установить список шифров (подходящие шифры отсутствуют)" +msgstr "" +"не удалось установить список шифров TLSv1.2 (подходящие шифры отсутствуют)" #: libpq/be-secure-openssl.c:310 -#, fuzzy, c-format +#, c-format msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" -msgstr "не удалось установить список шифров (подходящие шифры отсутствуют)" +msgstr "" +"не удалось установить комплекты шифров TLSv1.3 (подходящие шифры отсутствуют)" #: libpq/be-secure-openssl.c:331 #, c-format @@ -17878,13 +17951,13 @@ msgid "DH: could not set DH parameters: %s" msgstr "DH: не удалось задать параметры DH: %s" #: libpq/be-secure-openssl.c:1439 -#, fuzzy, c-format +#, c-format msgid "could not set group names specified in ssl_groups: %s" -msgstr "не удалось установить группу для файла \"%s\": %m" +msgstr "не удалось задать имена групп, указанные в ssl_groups: %s" #: libpq/be-secure-openssl.c:1441 msgid "No valid groups found" -msgstr "" +msgstr "Подходящие группы не найдены" #: libpq/be-secure-openssl.c:1442 #, c-format @@ -17892,6 +17965,8 @@ msgid "" "Ensure that each group name is spelled correctly and supported by the " "installed version of OpenSSL." msgstr "" +"Убедитесь в том, что имена всех групп записаны корректно и поддерживаются " +"установленной версией OpenSSL." #: libpq/be-secure-openssl.c:1488 msgid "no SSL error reported" @@ -17933,19 +18008,19 @@ msgid "User \"%s\" has an expired password." msgstr "Срок действия пароля пользователя \"%s\" истёк." #: libpq/crypt.c:174 -#, fuzzy, c-format +#, c-format msgid "encrypted password is too long" -msgstr "слишком длинный пароль" +msgstr "зашифрованный пароль слишком длинный" #: libpq/crypt.c:175 #, c-format msgid "Encrypted passwords must be no longer than %d bytes." -msgstr "" +msgstr "Зашифрованные пароли не должны быть длиннее %d байт." #: libpq/crypt.c:183 #, c-format msgid "setting an MD5-encrypted password" -msgstr "" +msgstr "устанавливается пароль с шифрованием MD5" #: libpq/crypt.c:184 #, c-format @@ -17953,6 +18028,8 @@ 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 @@ -17960,6 +18037,8 @@ msgid "" "Refer to the PostgreSQL documentation for details about migrating to another " "password type." msgstr "" +"Обратитесь к документации PostgreSQL за информацией о том, как перейти к " +"другому типу паролей." #: libpq/crypt.c:216 #, c-format @@ -18177,6 +18256,8 @@ msgstr "параметр проверки подлинности указан н #, c-format msgid "cannot mix options for simple bind and search+bind modes" msgstr "" +"смешивать параметры для режима простого связывания и режима поиск+связывание " +"нельзя" #: libpq/hba.c:1929 #, c-format @@ -18231,14 +18312,13 @@ msgstr "" #. translator: strings are replaced with hba options #: libpq/hba.c:2067 -#, fuzzy, c-format +#, c-format msgid "%s cannot be used in combination with %s" -msgstr "COPY %s нельзя использовать с %s" +msgstr "%s нельзя использовать совместно с %s" #: libpq/hba.c:2105 -#, fuzzy msgid "ident, peer, gssapi, sspi, cert, and oauth" -msgstr "ident, peer, gssapi, sspi и cert" +msgstr "ident, peer, gssapi, sspi, cert и oauth" #: libpq/hba.c:2114 #, c-format @@ -18979,45 +19059,47 @@ msgid "could not implement %s" msgstr "не удалось реализовать %s" #: optimizer/util/appendinfo.c:165 -#, fuzzy, c-format +#, c-format msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" -msgstr "ограничение \"%s\" в таблице \"%s\" не существует" +msgstr "атрибут \"%s\" отношения \"%s\" не соответствует родительскому типу" #: optimizer/util/appendinfo.c:170 -#, fuzzy, c-format +#, c-format msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" -msgstr "ограничение \"%s\" в таблице \"%s\" не существует" +msgstr "" +"атрибут \"%s\" отношения \"%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:771 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "" "указания со ссылкой на всю строку для выбора уникального индекса не " "поддерживаются" -#: optimizer/util/plancat.c:787 +#: optimizer/util/plancat.c:788 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "ограничению в ON CONFLICT не соответствует индекс" -#: optimizer/util/plancat.c:837 +#: optimizer/util/plancat.c:838 #, 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:955 #, c-format msgid "" "there is no unique or exclusion constraint matching the ON CONFLICT " @@ -19107,9 +19189,9 @@ msgstr "К именам целевых столбцов в SET нельзя до #. translator: %s is OLD or NEW #: parser/analyze.c:2668 parser/analyze.c:2678 -#, fuzzy, c-format +#, c-format msgid "%s cannot be specified multiple times" -msgstr "NEW TABLE нельзя задать несколько раз" +msgstr "%s нельзя указывать несколько раз" #: parser/analyze.c:2690 parser/parse_relation.c:473 #, c-format @@ -19509,102 +19591,102 @@ msgstr "" msgid "aggregate function calls cannot contain window function calls" msgstr "вызовы агрегатных функций не могут включать вызовы оконных функции" -#: parser/parse_agg.c:869 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in JOIN conditions" msgstr "оконные функции нельзя применять в условиях JOIN" -#: parser/parse_agg.c:876 +#: parser/parse_agg.c:902 msgid "window functions are not allowed in functions in FROM" msgstr "оконные функции нельзя применять в функциях во FROM" -#: parser/parse_agg.c:882 +#: parser/parse_agg.c:908 msgid "window functions are not allowed in policy expressions" msgstr "оконные функции нельзя применять в выражениях политик" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:921 msgid "window functions are not allowed in window definitions" msgstr "оконные функции нельзя применять в определении окна" -#: parser/parse_agg.c:906 +#: parser/parse_agg.c:932 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "оконные функции нельзя применять в условиях MERGE WHEN" -#: parser/parse_agg.c:931 +#: parser/parse_agg.c:957 msgid "window functions are not allowed in check constraints" msgstr "оконные функции нельзя применять в ограничениях-проверках" -#: parser/parse_agg.c:935 +#: parser/parse_agg.c:961 msgid "window functions are not allowed in DEFAULT expressions" msgstr "оконные функции нельзя применять в выражениях DEFAULT" -#: parser/parse_agg.c:938 +#: parser/parse_agg.c:964 msgid "window functions are not allowed in index expressions" msgstr "оконные функции нельзя применять в выражениях индексов" -#: parser/parse_agg.c:941 +#: parser/parse_agg.c:967 msgid "window functions are not allowed in statistics expressions" msgstr "оконные функции нельзя применять в выражениях статистики" -#: parser/parse_agg.c:944 +#: parser/parse_agg.c:970 msgid "window functions are not allowed in index predicates" msgstr "оконные функции нельзя применять в предикатах индексов" -#: parser/parse_agg.c:947 +#: parser/parse_agg.c:973 msgid "window functions are not allowed in transform expressions" msgstr "оконные функции нельзя применять в выражениях преобразований" -#: parser/parse_agg.c:950 +#: parser/parse_agg.c:976 msgid "window functions are not allowed in EXECUTE parameters" msgstr "оконные функции нельзя применять в параметрах EXECUTE" -#: parser/parse_agg.c:953 +#: parser/parse_agg.c:979 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "оконные функции нельзя применять в условиях WHEN для триггеров" -#: parser/parse_agg.c:956 +#: parser/parse_agg.c:982 msgid "window functions are not allowed in partition bound" msgstr "оконные функции нельзя применять в выражении границы секции" -#: parser/parse_agg.c:959 +#: parser/parse_agg.c:985 msgid "window functions are not allowed in partition key expressions" msgstr "оконные функции нельзя применять в выражениях ключа секционирования" -#: parser/parse_agg.c:962 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in CALL arguments" msgstr "оконные функции нельзя применять в аргументах CALL" -#: parser/parse_agg.c:965 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "оконные функции нельзя применять в условиях COPY FROM WHERE" -#: parser/parse_agg.c:968 +#: parser/parse_agg.c:994 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:1017 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:1051 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "окно \"%s\" не существует" -#: parser/parse_agg.c:1115 +#: parser/parse_agg.c:1141 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "слишком много наборов группирования (при максимуме 4096)" -#: parser/parse_agg.c:1276 +#: parser/parse_agg.c:1302 #, 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:1525 #, c-format msgid "" "column \"%s.%s\" must appear in the GROUP BY clause or be used in an " @@ -19613,7 +19695,7 @@ msgstr "" "столбец \"%s.%s\" должен фигурировать в предложении GROUP BY или " "использоваться в агрегатной функции" -#: parser/parse_agg.c:1502 +#: parser/parse_agg.c:1528 #, c-format msgid "" "Direct arguments of an ordered-set aggregate must use only grouped columns." @@ -19621,13 +19703,13 @@ msgstr "" "Прямые аргументы сортирующей агрегатной функции могут включать только " "группируемые столбцы." -#: parser/parse_agg.c:1507 +#: parser/parse_agg.c:1533 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "" "подзапрос использует негруппированный столбец \"%s.%s\" из внешнего запроса" -#: parser/parse_agg.c:1672 +#: parser/parse_agg.c:1698 #, c-format msgid "" "arguments to GROUPING must be grouping expressions of the associated query " @@ -21647,16 +21729,18 @@ msgid "" msgstr "конфликт NULL/NOT NULL в объявлении столбца \"%s\" таблицы \"%s\"" #: parser/parse_utilcmd.c:759 parser/parse_utilcmd.c:1077 -#, fuzzy, c-format +#, c-format msgid "not-null constraints on partitioned tables cannot be NO INHERIT" msgstr "" -"ограничения-проверки для доменов не могут иметь характеристики NO INHERIT" +"ограничения NOT NULL для секционированных таблиц не могут иметь свойства NO " +"INHERIT" #: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 -#, fuzzy, c-format +#, c-format msgid "" "conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" -msgstr "конфликт NULL/NOT NULL в объявлении столбца \"%s\" таблицы \"%s\"" +msgstr "" +"конфликтующие объявления NO INHERIT для ограничений NOT NULL столбца \"%s\"" #: parser/parse_utilcmd.c:821 #, c-format @@ -21736,83 +21820,86 @@ msgstr "ограничения-исключения для сторонних т msgid "relation \"%s\" is invalid in LIKE clause" msgstr "отношение \"%s\" не подходит для предложения LIKE" -#: 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 "Индекс \"%s\" ссылается на тип всей строки таблицы." -#: 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 "" "в индексе \"%s\" для столбца номер %d не определено поведение сортировки по " "умолчанию" -#: parser/parse_utilcmd.c:2748 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "столбец \"%s\" фигурирует в первичном ключе дважды" -#: parser/parse_utilcmd.c:2754 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "столбец \"%s\" фигурирует в ограничении уникальности дважды" -#: 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 "" +"столбец \"%s\" в WITHOUT OVERLAPS не диапазонного или мультидиапазонного типа" -#: parser/parse_utilcmd.c:2827 +#: parser/parse_utilcmd.c:2826 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" msgstr "" +"для ограничения, использующего WITHOUT OVERLAPS, требуются минимум два " +"столбца" -#: 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" @@ -21820,22 +21907,22 @@ 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 "в условиях WHERE для правил нельзя ссылаться на другие отношения" -#: 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 " @@ -21844,173 +21931,173 @@ msgstr "" "правила с условиями WHERE могут содержать только действия SELECT, INSERT, " "UPDATE или DELETE" -#: parser/parse_utilcmd.c:3389 parser/parse_utilcmd.c:3490 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 #: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 #, 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:3947 parser/parse_utilcmd.c:3973 gram.y:6229 +#: 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 должно быть объявлено как " +"ограничение со свойством INITIALLY DEFERRED должно быть объявлено как " "DEFERRABLE" -#: parser/parse_utilcmd.c:3955 +#: parser/parse_utilcmd.c:3954 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "предложение INITIALLY DEFERRED расположено неправильно" -#: 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 -#, fuzzy, c-format +#: parser/parse_utilcmd.c:3997 +#, c-format msgid "misplaced ENFORCED clause" -msgstr "предложение DEFERRABLE расположено неправильно" +msgstr "предложение ENFORCED расположено неправильно" -#: parser/parse_utilcmd.c:4003 parser/parse_utilcmd.c:4020 -#, fuzzy, c-format +#: parser/parse_utilcmd.c:4002 parser/parse_utilcmd.c:4019 +#, c-format msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" -msgstr "DEFERRABLE/NOT DEFERRABLE можно указать только один раз" +msgstr "ENFORCED/NOT ENFORCED можно указать только один раз" -#: parser/parse_utilcmd.c:4015 -#, fuzzy, c-format +#: parser/parse_utilcmd.c:4014 +#, c-format msgid "misplaced NOT ENFORCED clause" -msgstr "предложение NOT DEFERRABLE расположено неправильно" +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 "в CREATE указана схема (%s), отличная от создаваемой (%s)" -#: 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 "" "во FROM должно указываться ровно одно значение для секционирующего столбца" -#: parser/parse_utilcmd.c:4408 +#: parser/parse_utilcmd.c:4407 #, c-format msgid "TO must specify exactly one value per partitioning column" msgstr "" "в TO должно указываться ровно одно значение для секционирующего столбца" -#: parser/parse_utilcmd.c:4522 +#: parser/parse_utilcmd.c:4521 #, c-format msgid "cannot specify NULL in range bound" msgstr "указать NULL в диапазонном ограничении нельзя" -#: parser/parse_utilcmd.c:4571 +#: parser/parse_utilcmd.c:4570 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "за границей MAXVALUE могут следовать только границы MAXVALUE" -#: parser/parse_utilcmd.c:4578 +#: parser/parse_utilcmd.c:4577 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "за границей MINVALUE могут следовать только границы MINVALUE" -#: parser/parse_utilcmd.c:4621 +#: parser/parse_utilcmd.c:4620 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "указанное значение нельзя привести к типу %s столбца \"%s\"" @@ -22467,6 +22554,8 @@ 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:3470 #, c-format @@ -22474,15 +22563,17 @@ 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 -#, fuzzy, c-format +#, c-format msgid "" "inconsistent background worker state (\"max_worker_processes\"=%d, total " "slots=%d)" msgstr "" "несогласованное состояние фонового рабочего процесса " -"(max_worker_processes=%d, total_slots=%d)" +"(\"max_worker_processes\"=%d, total slots=%d)" #: postmaster/bgworker.c:646 #, c-format @@ -23009,12 +23100,12 @@ msgstr "рабочий процесс синхронизации слотов" #: postmaster/postmaster.c:2523 utils/init/miscinit.c:297 msgid "io worker" -msgstr "" +msgstr "рабочий процесс ввода/вывода" +# well-spelled: неотслеживаемый #: postmaster/postmaster.c:2545 postmaster/postmaster.c:2547 -#, fuzzy msgid "untracked child process" -msgstr "процесс архивации" +msgstr "неотслеживаемый дочерний процесс" #: postmaster/postmaster.c:2580 #, c-format @@ -23100,14 +23191,14 @@ msgid "database system is ready to accept read-only connections" msgstr "система БД готова принимать подключения в режиме \"только чтение\"" #: postmaster/postmaster.c:3846 -#, fuzzy, c-format +#, c-format msgid "WAL was shut down unexpectedly" -msgstr "неожиданный конец манифеста" +msgstr "WAL был неожиданно остановлен" #: postmaster/postmaster.c:3971 -#, fuzzy, c-format +#, c-format msgid "no slot available for new autovacuum worker process" -msgstr "для нового фонового рабочего процесса нет свободного слота" +msgstr "для нового рабочего процесса автоочистки не нашлось слота" #: postmaster/postmaster.c:3986 #, c-format @@ -23444,9 +23535,9 @@ msgstr "" "содержимое удалённой транзакции %u в файл" #: replication/logical/conflict.c:126 -#, fuzzy, c-format +#, c-format msgid "conflict detected on relation \"%s.%s\": conflict=%s" -msgstr "добавить отношение \"%s.%s\" в публикацию нельзя" +msgstr "конфликт выявлен в отношении \"%s.%s\": конфликт=%s" #: replication/logical/conflict.c:223 #, c-format @@ -23454,6 +23545,8 @@ 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 @@ -23461,6 +23554,8 @@ 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 @@ -23468,16 +23563,20 @@ 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 @@ -23485,6 +23584,8 @@ 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 @@ -23492,16 +23593,17 @@ 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 -#, fuzzy msgid "Could not find the row to be updated." -msgstr "не удалось найти запускаемый файл \"%s\"" +msgstr "Не удалось найти строку для изменения." #: replication/logical/conflict.c:270 #, c-format msgid "Deleting the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Удаляется строка, которая была изменена локально в транзакции %u в %s." #: replication/logical/conflict.c:273 #, c-format @@ -23509,6 +23611,8 @@ 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 @@ -23516,56 +23620,57 @@ 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 -#, fuzzy msgid "Could not find the row to be deleted." -msgstr "не удалось найти запускаемый файл \"%s\"" +msgstr "Не удалось найти строку для удаления." #: replication/logical/conflict.c:347 #, c-format msgid "Key %s" -msgstr "" +msgstr "Ключ %s" #: replication/logical/conflict.c:364 -#, fuzzy, c-format +#, c-format msgid "existing local row %s" -msgstr "существующий курсор (\"%s\") закрывается" +msgstr "существующая локальная строка %s" #: replication/logical/conflict.c:369 #, c-format msgid "Existing local row %s" -msgstr "" +msgstr "Существующая локальная строка %s" #: replication/logical/conflict.c:396 #, c-format msgid "remote row %s" -msgstr "" +msgstr "строка на удалённой стороне %s" #: replication/logical/conflict.c:400 #, c-format msgid "Remote row %s" -msgstr "" +msgstr "Строка на удалённой стороне %s" #: replication/logical/conflict.c:434 -#, fuzzy, c-format +#, c-format msgid "replica identity %s" -msgstr "публикация %s" +msgstr "идентификатор реплики %s" #: replication/logical/conflict.c:435 #, c-format msgid "replica identity full %s" -msgstr "" +msgstr "полный идентификатор реплики %s" #: replication/logical/conflict.c:440 -#, fuzzy, c-format +#, c-format msgid "Replica identity %s" -msgstr "публикация %s" +msgstr "Идентификатор реплики %s" #: replication/logical/conflict.c:441 #, c-format msgid "Replica identity full %s" -msgstr "" +msgstr "Полный идентификатор реплики %s" #: replication/logical/decode.c:177 replication/logical/logical.c:143 #, c-format @@ -23577,13 +23682,13 @@ msgstr "" "\"logical\" на ведущем" #: replication/logical/launcher.c:344 -#, fuzzy, c-format +#, c-format msgid "" "cannot start logical replication workers when " "\"max_active_replication_origins\" is 0" msgstr "" "нельзя запустить процессы-обработчики логической репликации при " -"max_replication_slots = 0" +"\"max_active_replication_origins\" = 0" #: replication/logical/launcher.c:437 #, c-format @@ -23745,13 +23850,13 @@ msgstr "" "функция \"%s\" ожидает текстовые" #: replication/logical/origin.c:195 -#, fuzzy, c-format +#, c-format msgid "" "cannot query or manipulate replication origin when " "\"max_active_replication_origins\" is 0" msgstr "" "запрашивать или модифицировать источники репликации при " -"\"max_replication_slots\" = 0 нельзя" +"\"max_active_replication_origins\" = 0 нельзя" #: replication/logical/origin.c:200 #, c-format @@ -23764,14 +23869,14 @@ msgid "replication origin \"%s\" does not exist" msgstr "источник репликации \"%s\" не существует" #: replication/logical/origin.c:275 -#, fuzzy, c-format +#, c-format msgid "replication origin name is too long" -msgstr "имя слота репликации \"%s\" слишком длинное" +msgstr "имя источника репликации слишком длинное" #: replication/logical/origin.c:276 -#, fuzzy, c-format +#, c-format msgid "Replication origin names must be no longer than %d bytes." -msgstr "имя источника репликации \"%s\" зарезервировано" +msgstr "Имена источников репликации не могут быть длиннее %d байт." #: replication/logical/origin.c:359 #, c-format @@ -23797,13 +23902,13 @@ msgstr "" "контрольная точка репликации имеет неправильную сигнатуру (%u вместо %u)" #: replication/logical/origin.c:821 -#, fuzzy, c-format +#, c-format msgid "" "could not find free replication state, increase " "\"max_active_replication_origins\"" msgstr "" "не удалось найти свободную ячейку для состояния репликации, увеличьте " -"\"max_replication_slots\"" +"\"max_active_replication_origins\"" #: replication/logical/origin.c:829 #, c-format @@ -23831,9 +23936,10 @@ msgstr "" "репликации с ID %d" #: replication/logical/origin.c:980 replication/logical/origin.c:1181 -#, fuzzy, c-format +#, c-format msgid "Increase \"max_active_replication_origins\" and try again." -msgstr "Увеличьте параметр \"max_replication_slots\" и повторите попытку." +msgstr "" +"Увеличьте параметр \"max_active_replication_origins\" и повторите попытку." #: replication/logical/origin.c:1137 #, c-format @@ -23861,7 +23967,7 @@ msgstr "" #: replication/logical/relation.c:241 msgid ", " -msgstr "" +msgstr ", " #: replication/logical/relation.c:243 #, c-format @@ -23887,7 +23993,7 @@ msgstr[2] "" "реплицируемые столбцы: %s" #: replication/logical/relation.c:273 -#, fuzzy, c-format +#, c-format msgid "" "logical replication target relation \"%s.%s\" has incompatible generated " "column: %s" @@ -23895,14 +24001,14 @@ msgid_plural "" "logical replication target relation \"%s.%s\" has incompatible generated " "columns: %s" msgstr[0] "" -"в целевом отношении логической репликации (\"%s.%s\") отсутствуют " -"реплицируемые столбцы: %s" +"в целевом отношении логической репликации \"%s.%s\" имеется генерируемый " +"столбец: %s" msgstr[1] "" -"в целевом отношении логической репликации (\"%s.%s\") отсутствуют " -"реплицируемые столбцы: %s" +"в целевом отношении логической репликации \"%s.%s\" имеются генерируемые " +"столбцы: %s" msgstr[2] "" -"в целевом отношении логической репликации (\"%s.%s\") отсутствуют " -"реплицируемые столбцы: %s" +"в целевом отношении логической репликации \"%s.%s\" имеются генерируемые " +"столбцы: %s" #: replication/logical/relation.c:328 #, c-format @@ -23939,10 +24045,9 @@ msgstr "" "%d, требовалось: %u)" #: replication/logical/reorderbuffer.c:4876 -#, fuzzy, c-format +#, c-format msgid "could not remove file \"%s\" during removal of %s/%s/xid*: %m" -msgstr "" -"ошибка при удалении файла \"%s\" в процессе удаления pg_replslot/%s/xid*: %m" +msgstr "ошибка при удалении файла \"%s\" в процессе удаления %s/%s/xid*: %m" #: replication/logical/reorderbuffer.c:5373 #, c-format @@ -24010,16 +24115,16 @@ msgstr "" "сервера: %s" #: replication/logical/slotsync.c:984 -#, fuzzy, c-format +#, 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 -#, fuzzy, c-format +#, c-format msgid "Check if \"primary_slot_name\" is configured correctly." -msgstr "Проверьте правильность настройки primary_slot_name." +msgstr "Проверьте правильность настройки \"primary_slot_name\"." #: replication/logical/slotsync.c:1006 #, c-format @@ -24105,11 +24210,13 @@ msgstr "многопоточная синхронизация слотов ре msgid "slot sync worker started" msgstr "рабочий процесс синхронизации слотов запущен" -#: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 -#, fuzzy, c-format +#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 +#, c-format msgid "" "synchronization worker \"%s\" could not connect to the primary server: %s" -msgstr "не удалось подключиться к главному серверу: %s" +msgstr "" +"рабочий процесс синхронизации \"%s\" не смог подключиться к главному " +"серверу: %s" #: replication/logical/snapbuild.c:514 #, c-format @@ -24242,13 +24349,13 @@ msgstr "" "не удалось начать копирование начального содержимого таблицы \"%s.%s\": %s" #: replication/logical/tablesync.c:1380 -#, fuzzy, c-format +#, c-format msgid "" "table synchronization worker for subscription \"%s\" could not connect to " "the publisher: %s" msgstr "" -"процесс синхронизации таблицы при логической репликации для подписки \"%s\", " -"таблицы \"%s\" закончил обработку" +"процесс синхронизации таблицы для подписки \"%s\" не смог подключиться к " +"серверу публикации: %s" #: replication/logical/tablesync.c:1466 #, c-format @@ -24398,10 +24505,12 @@ msgid "subscription has no replication slot set" msgstr "для подписки не задан слот репликации" #: replication/logical/worker.c:4592 -#, fuzzy, c-format +#, c-format msgid "" "apply worker for subscription \"%s\" could not connect to the publisher: %s" -msgstr "не удалось подключиться к серверу публикации: %s" +msgstr "" +"процесс применения изменений для подписки \"%s\" не смог подключиться к " +"серверу публикации: %s" #: replication/logical/worker.c:4696 #, c-format @@ -24610,28 +24719,28 @@ msgid "two-phase commit requested, but not supported by output plugin" msgstr "запрошена двухфазная фиксация, но она не поддерживается модулем вывода" #: replication/pgoutput/pgoutput.c:1085 -#, fuzzy, c-format +#, c-format msgid "" "cannot use different values of publish_generated_columns for table \"%s.%s\" " "in different publications" msgstr "" -"использовать различные списки столбцов таблицы \"%s.%s\" в разных " -"публикациях нельзя" +"использовать различные значения publish_generated_columns для таблицы \"%s." +"%s\" в разных публикациях нельзя" #: replication/pgoutput/pgoutput.c:1792 -#, fuzzy, c-format +#, c-format msgid "skipped loading publication \"%s\"" -msgstr "%s в публикации %s" +msgstr "пропускается загрузка публикации \"%s\"" #: replication/pgoutput/pgoutput.c:1793 -#, fuzzy, c-format +#, c-format msgid "The publication does not exist at this point in the WAL." -msgstr "публикация %s не существует на публикующем сервере" +msgstr "Публикация не существует в WAL на данный момент." #: replication/pgoutput/pgoutput.c:1794 -#, fuzzy, c-format +#, c-format msgid "Create the publication if it does not exist." -msgstr "публикация \"%s\" не существует" +msgstr "Создайте публикацию, если она ещё не создана." #: replication/slot.c:275 #, c-format @@ -24695,16 +24804,14 @@ msgid "replication slot \"%s\" is active for PID %d" msgstr "слот репликации \"%s\" занят процессом с PID %d" #: replication/slot.c:652 -#, fuzzy, c-format +#, c-format msgid "can no longer access replication slot \"%s\"" -msgstr "из слота репликации \"%s\" больше нельзя получать изменения" +msgstr "слот репликации \"%s\" стал недоступным" #: replication/slot.c:654 -#, fuzzy, c-format +#, c-format msgid "This replication slot has been invalidated due to \"%s\"." -msgstr "" -"Пользователь использовал слот логической репликации, который должен быть " -"аннулирован." +msgstr "Исходный слот репликации был аннулирован по причине \"%s\"." #: replication/slot.c:673 #, c-format @@ -24775,13 +24882,13 @@ msgid "Only roles with the %s attribute may use replication slots." msgstr "Использовать слоты репликации могут только роли с атрибутом %s." #: replication/slot.c:1594 -#, fuzzy, c-format +#, 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 слота превысила предел на %llu Б." -msgstr[1] "Позиция restart_lsn %X/%X слота превысила предел на %llu Б." -msgstr[2] "Позиция restart_lsn %X/%X слота превысила предел на %llu Б." +msgstr[0] "Позиция restart_lsn %X/%X слота превысила предел на % Б." +msgstr[1] "Позиция restart_lsn %X/%X слота превысила предел на % Б." +msgstr[2] "Позиция restart_lsn %X/%X слота превысила предел на % Б." #: replication/slot.c:1605 #, c-format @@ -24802,6 +24909,8 @@ msgstr "" msgid "" "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." msgstr "" +"Время простоя слота %ld сек. превышает настроенную в \"%s\" длительность %d " +"сек." #: replication/slot.c:1630 #, c-format @@ -24883,14 +24992,14 @@ msgid "Increase \"max_replication_slots\" and try again." msgstr "Увеличьте параметр \"max_replication_slots\" и повторите попытку." #: replication/slot.c:2732 -#, fuzzy, c-format +#, c-format msgid "Replication slot \"%s\" does not exist." -msgstr "слот репликации \"%s\" не существует" +msgstr "Слот репликации \"%s\" не существует." #: replication/slot.c:2740 -#, fuzzy, c-format +#, c-format msgid "\"%s\" is not a physical replication slot." -msgstr "\"%s\" не является слотом физической репликации" +msgstr "\"%s\" не является слотом физической репликации." #: replication/slot.c:2919 #, c-format @@ -25090,9 +25199,9 @@ msgstr "" "резервных" #: replication/syncrep.c:1081 -#, fuzzy, c-format +#, c-format msgid "\"%s\" parser failed." -msgstr "\"%s\" — зарезервированный префикс." +msgstr "Разобрать \"%s\" не удалось." #: replication/syncrep.c:1088 #, c-format @@ -25100,11 +25209,13 @@ msgid "number of synchronous standbys (%d) must be greater than zero" msgstr "число синхронных резервных серверов (%d) должно быть больше нуля" #: replication/walreceiver.c:276 -#, fuzzy, c-format +#, c-format msgid "" "streaming replication receiver \"%s\" could not connect to the primary " "server: %s" -msgstr "не удалось подключиться к главному серверу: %s" +msgstr "" +"приёмник потоковой репликации \"%s\" не смог подключиться к главному " +"серверу: %s" #: replication/walreceiver.c:324 #, c-format @@ -25920,61 +26031,60 @@ msgstr "отсутствует параметр Language" #: statistics/attribute_stats.c:191 statistics/attribute_stats.c:935 #: statistics/relation_stats.c:98 -#, fuzzy, c-format +#, c-format msgid "Statistics cannot be modified during recovery." -msgstr "выполнить %s во время восстановления нельзя." +msgstr "Статистика не может меняться в режиме восстановления." #: statistics/attribute_stats.c:202 -#, fuzzy, c-format +#, c-format msgid "cannot specify both \"%s\" and \"%s\"" -msgstr "указать %s и %s одновременно нельзя" +msgstr "указать \"%s\"\" и \"%s\" одновременно нельзя" #: statistics/attribute_stats.c:228 -#, fuzzy, c-format +#, c-format msgid "must specify either \"%s\" or \"%s\"" -msgstr "указать %s и %s одновременно нельзя" +msgstr "необходимо указать \"%s\" или \"%s\"" #: statistics/attribute_stats.c:236 -#, fuzzy, c-format +#, c-format msgid "cannot modify statistics on system column \"%s\"" -msgstr "присвоить значение системному столбцу \"%s\" нельзя" +msgstr "изменить статистику для системного столбца \"%s\" нельзя" #: statistics/attribute_stats.c:300 -#, fuzzy, c-format +#, c-format msgid "could not determine element type of column \"%s\"" -msgstr "не удалось определить тип данных аргумента %d" +msgstr "не удалось определить тип элемента для столбца \"%s\"" #: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 #: statistics/attribute_stats.c:333 -#, fuzzy, c-format +#, c-format msgid "Cannot set %s or %s." -msgstr "привести тип %s к %s нельзя" +msgstr "Задать %s или %s нельзя." #: statistics/attribute_stats.c:317 -#, fuzzy, c-format +#, c-format msgid "could not determine less-than operator for column \"%s\"" -msgstr "" -"не удалось определить правило сортировки для столбца представления \"%s\"" +msgstr "не удалось определить оператор «меньше» для столбца \"%s\"" #: statistics/attribute_stats.c:332 -#, fuzzy, c-format +#, c-format msgid "column \"%s\" is not a range type" -msgstr "столбец \"%s\" имеет не символьный тип" +msgstr "столбец \"%s\" не диапазонного типа" #: statistics/attribute_stats.c:735 -#, fuzzy, c-format +#, c-format msgid "\"%s\" array must not contain null values" -msgstr "Массивы ACL не должны содержать значения null" +msgstr "массив \"%s\" не должен содержать значения NULL" #: statistics/attribute_stats.c:778 -#, fuzzy, c-format +#, c-format msgid "maximum number of statistics slots exceeded: %d" -msgstr "превышен предел числа зафиксированных подтранзакций (%d)" +msgstr "превышен предел числа слотов статистики: %d" #: statistics/attribute_stats.c:945 -#, fuzzy, c-format +#, c-format msgid "cannot clear statistics on system column \"%s\"" -msgstr "присвоить значение системному столбцу \"%s\" нельзя" +msgstr "очистить статистику для системного столбца \"%s\" нельзя" #: statistics/extended_stats.c:175 #, c-format @@ -25991,105 +26101,108 @@ msgstr "" "функция, возвращающая запись, вызвана в контексте, не допускающем этот тип" #: statistics/relation_stats.c:115 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" must not be less than -1.0" -msgstr "%s должно быть меньше %s" +msgstr "аргумент \"%s\" не должен быть меньше -1.0" #: statistics/stat_utils.c:44 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" must not be null" -msgstr "аргумент %d: ключ не может быть NULL" +msgstr "аргумент \"%s\" не должен быть NULL" #: statistics/stat_utils.c:71 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" must not be a multidimensional array" -msgstr "аргумент должен быть одномерным массивом или пустым" +msgstr "аргумент \"%s\" не должен быть многомерным массивом" #: statistics/stat_utils.c:80 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" array must not contain null values" -msgstr "Массивы ACL не должны содержать значения null" +msgstr "массив в аргументе \"%s\" не должен содержать значения NULL" #: statistics/stat_utils.c:111 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" must be specified when argument \"%s\" is specified" -msgstr "в определении агрегата требуется msfunc, если указан mstype" +msgstr "" +"аргумент \"%s\" должен присутствовать, если присутствует аргумент \"%s\"" #: statistics/stat_utils.c:178 -#, fuzzy, c-format +#, c-format msgid "cannot modify statistics for relation \"%s\"" -msgstr "для отношения \"%s\" нельзя определить объект статистики" +msgstr "изменить статистику для отношения \"%s\" нельзя" #: statistics/stat_utils.c:199 -#, fuzzy, c-format +#, c-format msgid "cannot modify statistics for shared relation" -msgstr "для отношения \"%s\" нельзя определить объект статистики" +msgstr "изменить статистику для разделяемой таблицы нельзя" #: statistics/stat_utils.c:252 -#, fuzzy, c-format +#, c-format msgid "unrecognized argument name: \"%s\"" -msgstr "нераспознанное имя события \"%s\"" +msgstr "нераспознанное имя аргумента: \"%s\"" #: statistics/stat_utils.c:266 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" has type %s, expected type %s" -msgstr "аргумент конструкции %s должен иметь тип %s, а не %s" +msgstr "аргумент \"%s\" имеет тип %s, ожидался тип %s" #: statistics/stat_utils.c:307 -#, fuzzy, c-format +#, c-format msgid "variadic arguments must be name/value pairs" -msgstr "" -"неверное число аргументов: объект должен составляться из пар ключ-значение" +msgstr "переменными аргументами должны быть пары ключ/значение" #: statistics/stat_utils.c:308 #, c-format msgid "" "Provide an even number of variadic arguments that can be divided into pairs." msgstr "" +"Передайте чётное количество переменных аргументов, чтобы их можно было " +"разделить на пары." #: statistics/stat_utils.c:322 -#, fuzzy, c-format +#, c-format msgid "name at variadic position %d is null" -msgstr "элемент пути в позиции %d равен NULL" +msgstr "в позиции %d списка аргументов обнаружено имя null" #: statistics/stat_utils.c:326 #, c-format msgid "name at variadic position %d has type %s, expected type %s" -msgstr "" +msgstr "имя в позиции %d имеет тип %s, но ожидался тип %s" #: storage/aio/aio.c:1340 #, c-format msgid "Only -1 or values bigger than 0 are valid." -msgstr "" +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 -#, fuzzy, c-format +#, c-format msgid "Consider increasing \"ulimit -n\" to at least %d." -msgstr "Возможно, стоит увеличить параметр \"%s\"." +msgstr "Возможно, стоит увеличить параметр \"ulimit -n\" как минимум до %d." #: storage/aio/method_io_uring.c:380 -#, fuzzy msgid "The kernel does not support io_uring." -msgstr "Эта операция не поддерживается для индексов." +msgstr "Ядро не поддерживает io_uring." #: storage/aio/method_io_uring.c:388 -#, fuzzy, c-format +#, c-format msgid "could not setup io_uring queue: %m" -msgstr "не удалось задать переменную окружения: %m" +msgstr "не удалось настроить очередь io_uring: %m" #: storage/aio/method_io_uring.c:522 #, c-format msgid "completing I/O on behalf of process %d" -msgstr "" +msgstr "завершение ввода/вывода за процесс %d" #: storage/aio/method_worker.c:382 #, c-format msgid "I/O worker executing I/O on behalf of process %d" -msgstr "" +msgstr "обработчик ввода/вывода, выполняющий ввод/вывод за процесс %d" #: storage/buffer/bufmgr.c:662 storage/buffer/bufmgr.c:818 #, c-format @@ -26102,9 +26215,9 @@ msgid "cannot extend relation %s beyond %u blocks" msgstr "не удалось увеличить отношение \"%s\" до блока %u" #: storage/buffer/bufmgr.c:2774 -#, fuzzy, c-format +#, c-format msgid "unexpected data beyond EOF in block %u of relation \"%s\"" -msgstr "неожиданные данные после EOF в блоке %u отношения %s" +msgstr "неожиданные данные после EOF в блоке %u отношения \"%s\"" #: storage/buffer/bufmgr.c:2777 #, c-format @@ -26126,9 +26239,9 @@ msgid "Multiple failures --- write error might be permanent." msgstr "Множественные сбои - возможно, постоянная ошибка записи." #: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 -#, fuzzy, c-format +#, c-format msgid "writing block %u of relation \"%s\"" -msgstr "запись блока %u отношения %s" +msgstr "запись блока %u отношения \"%s\"" #: storage/buffer/bufmgr.c:7313 #, c-format @@ -26136,69 +26249,80 @@ 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:7344 #, c-format msgid "Block %u held the first zeroed page." -msgstr "" +msgstr "Первую обнулённую страницу содержал блок %u." #: storage/buffer/bufmgr.c:7318 -#, fuzzy, c-format +#, 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] "Смотрите подробности в протоколе сервера." -msgstr[1] "Смотрите подробности в протоколе сервера." -msgstr[2] "Смотрите подробности в протоколе сервера." +msgstr[0] "" +"Подробные сведения о ещё %d некорректном блоке можно найти в протоколе " +"сервера." +msgstr[1] "" +"Подробные сведения о ещё %d некорректных блоках можно найти в протоколе " +"сервера." +msgstr[2] "" +"Подробные сведения о ещё %d некорректных блоках найти в протоколе сервера." #: storage/buffer/bufmgr.c:7335 -#, fuzzy, c-format +#, c-format msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" -msgstr "неверная страница в блоке %u отношения %s" +msgstr "%u некорректных страниц в блоках %u..%u отношения \"%s\"" #: storage/buffer/bufmgr.c:7336 #, c-format msgid "Block %u held the first invalid page." -msgstr "" +msgstr "Первую некорректную страницу содержал блок %u." #: storage/buffer/bufmgr.c:7337 -#, fuzzy, c-format +#, c-format msgid "See server log for the other %u invalid block(s)." -msgstr "Смотрите подробности в протоколе сервера." +msgstr "" +"Сведения об остальных %u некорректных блоках можно найти в протоколе сервера." #: storage/buffer/bufmgr.c:7342 -#, fuzzy, c-format +#, c-format msgid "invalid page in block %u of relation \"%s\"; zeroing out page" -msgstr "неверная страница в блоке %u отношения %s; страница обнуляется" +msgstr "некорректная страница в блоке %u отношения \"%s\"; страница обнуляется" #: storage/buffer/bufmgr.c:7343 -#, fuzzy, c-format +#, c-format msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" -msgstr "неверная страница в блоке %u отношения %s" +msgstr "обнуление %u некорректных страниц в блоках %u..%u отношения \"%s\"" #: storage/buffer/bufmgr.c:7345 -#, fuzzy, c-format +#, c-format msgid "See server log for the other %u zeroed block(s)." -msgstr "Подробности запроса смотрите в протоколе сервера." +msgstr "" +"Сведения об остальных %u обнулённых блоках можно найти в протоколе сервера." #: storage/buffer/bufmgr.c:7350 -#, fuzzy, c-format +#, c-format msgid "ignoring checksum failure in block %u of relation \"%s\"" -msgstr "неверная страница в блоке %u отношения %s" +msgstr "ошибка контрольной суммы в блоке %u отношения \"%s\" игнорируется" #: storage/buffer/bufmgr.c:7351 -#, fuzzy, c-format +#, c-format msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" -msgstr "при очистке блока %u отношения \"%s.%s\"" +msgstr "" +"%u ошибок контрольных сумм в блоках %u..%u отношения \"%s\" игнорируются" #: storage/buffer/bufmgr.c:7352 #, c-format msgid "Block %u held the first ignored page." -msgstr "" +msgstr "Первую игнорируемую некорректную страницу содержал блок %u." #: storage/buffer/bufmgr.c:7353 -#, fuzzy, c-format +#, c-format msgid "See server log for the other %u ignored block(s)." -msgstr "Смотрите подробности в протоколе сервера." +msgstr "" +"Сведения об остальных %u игнорируемых блоках можно найти в протоколе сервера." #: storage/buffer/localbuf.c:272 #, c-format @@ -26255,9 +26379,9 @@ msgid "could not truncate file \"%s\": %m" msgstr "не удалось обрезать файл \"%s\": %m" #: storage/file/copydir.c:244 storage/file/copydir.c:275 -#, fuzzy, c-format +#, c-format msgid "could not clone file \"%s\" to \"%s\": %m" -msgstr "для файла \"%s\" не удалось создать ссылку \"%s\": %m" +msgstr "не удалось клонировать файл \"%s\" в \"%s\": %m" #: storage/file/fd.c:580 storage/file/fd.c:652 storage/file/fd.c:688 #, c-format @@ -26285,9 +26409,11 @@ msgid "insufficient file descriptors available to start server process" msgstr "недостаточно дескрипторов файлов для запуска серверного процесса" #: storage/file/fd.c:1072 -#, fuzzy, c-format +#, c-format msgid "System allows %d, server needs at least %d, %d files are already open." -msgstr "Система может выделить: %d, серверу требуется минимум: %d." +msgstr "" +"Система может выделить: %d, серверу требуется минимум: %d, уже открыто " +"файлов: %d." #: storage/file/fd.c:1161 storage/file/fd.c:2676 storage/file/fd.c:2785 #: storage/file/fd.c:2939 @@ -26331,9 +26457,9 @@ msgid "could not delete file \"%s\": %m" msgstr "ошибка удаления файла \"%s\": %m" #: storage/file/fd.c:2286 -#, fuzzy, c-format +#, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" -msgstr "размер временного файла превышает предел temp_file_limit (%d КБ)" +msgstr "размер временного файла превышает предел \"temp_file_limit\" (%d КБ)" #: storage/file/fd.c:2652 storage/file/fd.c:2711 #, c-format @@ -26383,33 +26509,30 @@ msgstr "" "путь: %s" #: storage/file/fd.c:4012 -#, fuzzy, c-format +#, c-format msgid "\"%s\" is not supported on this platform." -msgstr "URL-адреса LDAP не поддерживаются в этой ОС" +msgstr "\"%s\" не поддерживается на этой платформе." #: storage/file/fd.c:4027 tcop/backend_startup.c:1080 -#, fuzzy, c-format +#, c-format msgid "Invalid list syntax in parameter \"%s\"." msgstr "Неверный формат списка в параметре \"%s\"." #: storage/file/fd.c:4047 tcop/backend_startup.c:1054 -#, fuzzy, c-format +#, c-format msgid "Invalid option \"%s\"." msgstr "Неверный параметр \"%s\"." #: storage/file/fd.c:4060 -#, fuzzy, c-format +#, c-format msgid "\"%s\" is not supported for WAL because %s is too small." -msgstr "" -"режим \"debug_io_direct\" не поддерживается для WAL из-за слишком маленького " -"размера XLOG_BLCKSZ" +msgstr "\"%s\" не поддерживается для WAL из-за слишком маленького значения %s." #: storage/file/fd.c:4068 -#, fuzzy, c-format +#, c-format msgid "\"%s\" is not supported for data because %s is too small." msgstr "" -"режим \"debug_io_direct\" не поддерживается для данных из-за слишком " -"маленького размера BLCKSZ" +"\"%s\" не поддерживается для данных из-за слишком маленького значения %s." #: storage/file/reinit.c:145 #, c-format @@ -26571,9 +26694,9 @@ msgstr "" "процессом с PID %d" #: storage/ipc/procsignal.c:733 -#, fuzzy, c-format +#, c-format msgid "invalid cancel request with PID 0" -msgstr "неверный ID следующей транзакции" +msgstr "неправильный запрос отмены с PID 0" #: storage/ipc/procsignal.c:788 #, c-format @@ -26664,11 +26787,12 @@ msgstr "" "Только роли с атрибутом %s могут отменять запросы ролей с атрибутом %s." #: storage/ipc/signalfuncs.c:151 -#, fuzzy, c-format +#, c-format msgid "" "Only roles with privileges of the \"%s\" role may cancel autovacuum workers." msgstr "" -"Выполнять COPY с записью в файл могут только роли с правами роли \"%s\"." +"Отменять рабочие процессы автоочистки могут только роли с правами роли " +"\"%s\"." #: storage/ipc/signalfuncs.c:158 #, c-format @@ -26686,13 +26810,13 @@ msgstr "" "не удалось проверить существование обслуживающего процесса с PID %d: %m" #: storage/ipc/signalfuncs.c:218 -#, fuzzy, c-format +#, c-format 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 не завершился за %lld мс" -msgstr[1] "обслуживающий процесс с PID %d не завершился за %lld мс" -msgstr[2] "обслуживающий процесс с PID %d не завершился за %lld мс" +msgstr[0] "обслуживающий процесс с PID %d не завершился за % мс" +msgstr[1] "обслуживающий процесс с PID %d не завершился за % мс" +msgstr[2] "обслуживающий процесс с PID %d не завершился за % мс" #: storage/ipc/signalfuncs.c:249 #, c-format @@ -26700,11 +26824,13 @@ msgid "\"timeout\" must not be negative" msgstr "\"timeout\" не может быть отрицательным" #: storage/ipc/signalfuncs.c:264 -#, fuzzy, c-format +#, c-format msgid "" "Only roles with privileges of the \"%s\" role may terminate autovacuum " "workers." -msgstr "Просматривать этот параметр могут только роли с правами роли \"%s\"." +msgstr "" +"Завершать рабочие процессы автоочистки могут только роли с правами роли " +"\"%s\"." #: storage/ipc/signalfuncs.c:313 #, c-format @@ -26939,9 +27065,9 @@ msgstr "" "только блокировка RowExclusiveLock или менее сильная." #: storage/lmgr/lock.c:1185 -#, fuzzy, c-format +#, c-format msgid "process %d could not obtain %s on %s" -msgstr "Процесс %d ожидает в режиме %s блокировку %s." +msgstr "процесс %d не может получить %s для %s" #: storage/lmgr/lock.c:3426 storage/lmgr/lock.c:3494 storage/lmgr/lock.c:3610 #, c-format @@ -27133,9 +27259,9 @@ msgstr "" "не удалось прочитать блоки %u..%u в файле \"%s\" (прочитано байт: %zu из %zu)" #: storage/smgr/md.c:1023 -#, fuzzy, c-format +#, c-format msgid "could not start reading blocks %u..%u in file \"%s\": %m" -msgstr "не удалось прочитать блоки %u..%u в файле \"%s\": %m" +msgstr "не удалось начать чтение блоков %u..%u в файле \"%s\": %m" #: storage/smgr/md.c:1119 #, c-format @@ -27169,19 +27295,19 @@ msgid "could not open file \"%s\" (target block %u): %m" msgstr "не удалось открыть файл file \"%s\" (целевой блок %u): %m" #: storage/smgr/smgr.c:1106 -#, fuzzy, c-format +#, c-format msgid "file \"%s\"" -msgstr "удаляется файл \"%s\"" +msgstr "файл \"%s\"" #: storage/smgr/smgr.c:1108 -#, fuzzy, c-format +#, c-format msgid "block %u in file \"%s\"" -msgstr "время резервного копирования %s в файле \"%s\"" +msgstr "блок %u в файле \"%s\"" #: storage/smgr/smgr.c:1112 -#, fuzzy, c-format +#, c-format msgid "blocks %u..%u in file \"%s\"" -msgstr "не удалось прочитать блоки %u..%u в файле \"%s\": %m" +msgstr "блоки %u..%u в файле \"%s\"" #: tcop/backend_startup.c:104 #, c-format @@ -27221,7 +27347,7 @@ msgstr "система БД ещё не принимает подключени #: tcop/backend_startup.c:321 #, c-format msgid "Recovery snapshot is not yet ready for hot standby." -msgstr "" +msgstr "Снимок восстановления ещё не готов для запуска горячего резерва." #: tcop/backend_startup.c:322 #, c-format @@ -27229,6 +27355,8 @@ msgid "" "To enable hot standby, close write transactions with more than %d " "subtransactions on the primary server." msgstr "" +"Чтобы включить горячий резерв, закройте на главном сервере пишущие " +"транзакции с более чем %d подтранзакциями." #: tcop/backend_startup.c:328 #, c-format @@ -27345,21 +27473,22 @@ msgid "no PostgreSQL user name specified in startup packet" msgstr "в стартовом пакете не указано имя пользователя PostgreSQL" #: tcop/backend_startup.c:884 -#, fuzzy, c-format +#, c-format msgid "invalid length of cancel request packet" -msgstr "неверная длина стартового пакета" +msgstr "неверная длина пакета отмены запроса" #: tcop/backend_startup.c:892 -#, fuzzy, c-format +#, c-format msgid "invalid length of cancel key in cancel request packet" -msgstr "неверная длина стартового пакета" +msgstr "неверная длина ключа отмены в пакете отмены запроса" #: tcop/backend_startup.c:1022 -#, fuzzy, c-format +#, c-format msgid "" "Cannot specify log_connections option \"%s\" in a list with other options." msgstr "" -"слот логической репликации \"%s\" не может быть указан в параметре \"%s\"" +"Параметр log_connections \"%s\" нельзя задавать в списке с другими " +"параметрами." #: tcop/fastpath.c:141 utils/fmgr/fmgr.c:2161 #, c-format @@ -27735,6 +27864,8 @@ msgstr "не удалось сгенерировать случайный клю msgid "" "connection ready: setup total=%.3f ms, fork=%.3f ms, authentication=%.3f ms" msgstr "" +"подключение готово: общее время подготовки=%.3f ms, создание процесса=%.3f " +"ms, аутентификация=%.3f ms" #: tcop/postgres.c:4908 #, c-format @@ -27826,18 +27957,9 @@ msgid "Only roles with privileges of the \"%s\" role may execute this command." msgstr "Выполнять эту команду могут только роли с правами роли \"%s\"." #: tcop/utility.c:1886 -#, fuzzy, c-format -msgid "cannot create statistics on the specified relation" -msgstr "для отношения \"%s\" нельзя определить объект статистики" - -#: tcop/utility.c:1887 -#, fuzzy, c-format -msgid "" -"CREATE STATISTICS only supports tables, foreign tables and materialized " -"views." -msgstr "" -"отношение \"%s\" - это не таблица, не сторонняя таблица и не " -"материализованное представление" +#, 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 @@ -28103,45 +28225,50 @@ msgid "invalid statistics kind: \"%s\"" msgstr "неверный вид статистики: \"%s\"" #: utils/activity/pgstat.c:1471 -#, fuzzy, c-format +#, c-format msgid "custom cumulative statistics name is invalid" -msgstr "неверное имя пользовательского менеджера ресурсов" +msgstr "" +"отсутствует подходящее имя для пользовательской накопительной статистики" #: utils/activity/pgstat.c:1472 -#, fuzzy, c-format +#, c-format msgid "Provide a non-empty name for the custom cumulative statistics." -msgstr "Задайте непустое имя для менеджера ресурсов." +msgstr "Задайте непустое имя для пользовательской накопительной статистики." #: utils/activity/pgstat.c:1475 -#, fuzzy, c-format +#, c-format msgid "custom cumulative statistics ID %u is out of range" -msgstr "идентификатор пользовательского менеджера ресурсов %d вне диапазона" +msgstr "" +"идентификатор пользовательской накопительной статистики %u вне диапазона" #: utils/activity/pgstat.c:1476 -#, fuzzy, c-format +#, c-format msgid "Provide a custom cumulative statistics ID between %u and %u." -msgstr "Задайте идентификатор менеджера ресурсов от %d до %d." +msgstr "" +"Задайте идентификатор пользовательской накопительной статистики между %u и " +"%u." #: utils/activity/pgstat.c:1481 utils/activity/pgstat.c:1508 #: utils/activity/pgstat.c:1521 -#, fuzzy, c-format +#, c-format msgid "failed to register custom cumulative statistics \"%s\" with ID %u" msgstr "" -"не удалось зарегистрировать пользовательский менеджер ресурсов \"%s\" с ID %d" +"зарегистрировать пользовательскую накопительную статистику \"%s\" с ID %u не " +"удалось" #: utils/activity/pgstat.c:1482 -#, fuzzy, c-format +#, c-format msgid "" "Custom cumulative statistics must be registered while initializing modules " "in \"shared_preload_libraries\"." msgstr "" -"Пользовательский менеджер ресурсов должен быть зарегистрирован при " -"инициализации модулей в \"shared_preload_libraries\"." +"Пользовательская накопительная должна регистрироваться при инициализации " +"модулей в \"shared_preload_libraries\"." #: utils/activity/pgstat.c:1491 #, c-format msgid "custom cumulative statistics property is invalid" -msgstr "" +msgstr "неверное свойство пользовательской накопительной статистики" #: utils/activity/pgstat.c:1492 #, c-format @@ -28149,23 +28276,29 @@ msgid "" "Custom cumulative statistics require a shared memory size for fixed-numbered " "objects." msgstr "" +"Для пользовательской накопительной статистики требуется определить размер " +"обшей памяти для объектов с фиксированной нумерацией." #: utils/activity/pgstat.c:1509 -#, fuzzy, c-format +#, c-format msgid "" "Custom cumulative statistics \"%s\" already registered with the same ID." msgstr "" -"Пользовательский менеджер ресурсов \"%s\" уже зарегистрирован с тем же ID." +"Пользовательская накопительная статистика \"%s\" уже зарегистрирована с тем " +"же идентификатором." #: utils/activity/pgstat.c:1522 -#, fuzzy, c-format +#, c-format msgid "Existing cumulative statistics with ID %u has the same name." -msgstr "Существующий менеджер ресурсов с ID %d имеет то же имя." +msgstr "" +"Существующая накопительная статистика с идентификатором %u имеет то же имя." #: utils/activity/pgstat.c:1528 -#, fuzzy, c-format +#, c-format msgid "registered custom cumulative statistics \"%s\" with ID %u" -msgstr "зарегистрирован пользовательский менеджер ресурсов \"%s\" с ID %d" +msgstr "" +"зарегистрирована пользовательская накопительная статистика \"%s\" с " +"идентификатором %u" #: utils/activity/pgstat.c:1597 #, c-format @@ -28187,7 +28320,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\" испорчен" @@ -28197,10 +28330,15 @@ msgstr "файл статистики \"%s\" испорчен" msgid "function call to dropped function" msgstr "вызвана функция, которая была удалена" +#: utils/activity/pgstat_shmem.c:536 +#, c-format +msgid "Failed while allocating entry %u/%u/%." +msgstr "Не удалось выделить память для объекта %u/%u/%." + #: utils/activity/pgstat_xact.c:366 -#, fuzzy, c-format +#, c-format msgid "resetting existing statistics for kind %s, db=%u, oid=%" -msgstr "сбрасывается существующая статистика вида %s, db=%u, oid=%u" +msgstr "сбрасывается существующая статистика вида %s, db=%u, oid=%" #: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format @@ -28919,9 +29057,9 @@ msgid "date/time field value out of range: \"%s\"" msgstr "значение поля типа date/time вне диапазона: \"%s\"" #: utils/adt/datetime.c:4232 -#, fuzzy, c-format +#, c-format msgid "Perhaps you need a different \"DateStyle\" setting." -msgstr "Возможно, вам нужно изменить настройку \"datestyle\"." +msgstr "Возможно, вам нужно изменить настройку \"DateStyle\"." #: utils/adt/datetime.c:4237 #, c-format @@ -29213,9 +29351,9 @@ msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together" msgstr "нельзя использовать \"PR\" вместе с \"S\"/\"PL\"/\"MI\"/\"SG\"" #: utils/adt/formatting.c:1326 -#, fuzzy, c-format +#, c-format msgid "cannot use \"RN\" twice" -msgstr "нельзя использовать \"S\" дважды" +msgstr "нельзя использовать \"RN\" дважды" #: utils/adt/formatting.c:1347 #, c-format @@ -29235,15 +29373,14 @@ msgstr "" "\"EEEE\" может использоваться только с шаблонами цифр и десятичной точки." #: utils/adt/formatting.c:1363 -#, fuzzy, c-format +#, c-format msgid "\"RN\" is incompatible with other formats" -msgstr "\"EEEE\" несовместим с другими форматами" +msgstr "\"RN\" несовместим с другими форматами" #: utils/adt/formatting.c:1364 -#, fuzzy, c-format +#, c-format msgid "\"RN\" may only be used together with \"FM\"." -msgstr "" -"\"EEEE\" может использоваться только с шаблонами цифр и десятичной точки." +msgstr "\"RN\" может использоваться только вместе с \"FM\"." #: utils/adt/formatting.c:1445 #, c-format @@ -29264,10 +29401,11 @@ msgstr "" # well-spelled: категоризацию #: utils/adt/formatting.c:1853 -#, fuzzy, c-format +#, c-format msgid "Unicode case folding can only be performed if server encoding is UTF8" msgstr "" -"категоризацию Unicode можно выполнять, только если кодировка сервера — UTF8" +"сворачивание регистра Unicode можно выполнять, только если кодировка сервера " +"— UTF8" #: utils/adt/formatting.c:2150 #, c-format @@ -29432,9 +29570,9 @@ msgid "\"EEEE\" not supported for input" msgstr "\"EEEE\" не поддерживается при вводе" #: utils/adt/formatting.c:6111 -#, fuzzy, c-format +#, c-format msgid "invalid Roman numeral" -msgstr "неверное имя схемы" +msgstr "неверное римское число" #: utils/adt/genfile.c:84 #, c-format @@ -29999,10 +30137,9 @@ msgstr "метод .%s() в jsonpath может применяться толь #: 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 -#, fuzzy, c-format +#, c-format msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type %s" -msgstr "" -"аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа bigint" +msgstr "аргумент \"%s\" метода элемента jsonpath .%s() не подходит для типа %s" #: utils/adt/jsonpath_exec.c:1170 utils/adt/jsonpath_exec.c:1196 #: utils/adt/jsonpath_exec.c:1413 utils/adt/jsonpath_exec.c:1445 @@ -30202,9 +30339,9 @@ msgid "levenshtein argument exceeds maximum length of %d characters" msgstr "длина аргумента levenshtein() превышает максимум (%d симв.)" #: utils/adt/like.c:162 -#, fuzzy, c-format +#, c-format msgid "could not determine which collation to use for LIKE" -msgstr "не удалось определить, какой порядок сортировки использовать для ILIKE" +msgstr "не удалось определить, какой порядок сортировки использовать для LIKE" #: utils/adt/like.c:193 utils/adt/like_support.c:1019 #, c-format @@ -30222,12 +30359,12 @@ msgstr "недетерминированные правила сортировк msgid "LIKE pattern must not end with escape character" msgstr "шаблон LIKE не должен заканчиваться защитным символом" -#: 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 "Защитный символ должен быть пустым или состоять из одного байта." @@ -30911,7 +31048,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:4475 #, c-format msgid "regular expression failed: %s" msgstr "ошибка в регулярном выражении: %s" @@ -30930,15 +31067,15 @@ msgstr "" "Если вы хотите вызвать regexp_replace() с параметром start, явно приведите " "четвёртый аргумент к целочисленному типу." -#: 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 " @@ -30948,19 +31085,19 @@ 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 "слишком много совпадений для регулярного выражения" @@ -31105,23 +31242,23 @@ msgid "Key is not present in table \"%s\"." msgstr "Ключ отсутствует в таблице \"%s\"." #: utils/adt/ri_triggers.c:2787 -#, fuzzy, c-format +#, c-format msgid "" "update or delete on table \"%s\" violates RESTRICT setting of foreign key " "constraint \"%s\" on table \"%s\"" msgstr "" -"UPDATE или DELETE в таблице \"%s\" нарушает ограничение внешнего ключа " -"\"%s\" таблицы \"%s\"" +"UPDATE или DELETE в таблице \"%s\" нарушает ограничение RESTRICT внешнего " +"ключа \"%s\" таблицы \"%s\"" #: utils/adt/ri_triggers.c:2792 -#, fuzzy, c-format +#, c-format msgid "Key (%s)=(%s) is referenced from table \"%s\"." -msgstr "Ссылки на ключ (%s)=(%s) остаются в таблице \"%s\"." +msgstr "На ключ (%s)=(%s) есть ссылки в таблице \"%s\"." #: utils/adt/ri_triggers.c:2795 -#, fuzzy, c-format +#, c-format msgid "Key is referenced from table \"%s\"." -msgstr "На ключ всё ещё есть ссылки в таблице \"%s\"." +msgstr "На ключ есть ссылки в таблице \"%s\"." #: utils/adt/ri_triggers.c:2801 #, c-format @@ -31219,29 +31356,29 @@ msgid "rule \"%s\" has unsupported event type %d" msgstr "правило \"%s\" имеет неподдерживаемый тип событий %d" #: utils/adt/tid.c:317 -#, fuzzy, c-format +#, c-format msgid "cannot look at latest visible tid for relation \"%s.%s\"" -msgstr "для отношения \"%s\" нельзя определить объект статистики" +msgstr "для отношения \"%s.%s\" нельзя получить последний видимый tid" #: utils/adt/tid.c:356 #, c-format msgid "ctid isn't of type TID" -msgstr "" +msgstr "типом ctid является не TID" #: utils/adt/tid.c:364 #, c-format msgid "currtid cannot handle views with no CTID" -msgstr "" +msgstr "currtid не может работать с представлениями без CTID" #: utils/adt/tid.c:369 #, c-format msgid "the view has no rules" -msgstr "" +msgstr "у представления нет правил" #: utils/adt/tid.c:381 -#, fuzzy, c-format +#, c-format msgid "only one select rule is allowed in views" -msgstr "допускается только одно пространство имён по умолчанию" +msgstr "в представлениях допускается только одно правило select" #: utils/adt/timestamp.c:130 #, c-format @@ -31658,9 +31795,9 @@ msgid "index %d out of valid range, 0..%d" msgstr "индекс %d вне диапазона 0..%d" #: utils/adt/varlena.c:3299 utils/adt/varlena.c:3371 -#, fuzzy, c-format +#, c-format msgid "index % out of valid range, 0..%" -msgstr "индекс %d вне диапазона 0..%d" +msgstr "индекс % вне диапазона 0..%" #: utils/adt/varlena.c:4587 #, c-format @@ -31747,9 +31884,9 @@ msgid "argument of nth_value must be greater than zero" msgstr "аргумент nth_value должен быть больше нуля" #: utils/adt/xid8funcs.c:120 -#, fuzzy, c-format +#, c-format msgid "transaction ID % is in the future" -msgstr "ID транзакции %llu относится к будущему" +msgstr "ID транзакции % относится к будущему" #: utils/adt/xid8funcs.c:522 #, c-format @@ -31926,12 +32063,12 @@ msgid "more than one value returned by column XPath expression" msgstr "выражение XPath, отбирающее столбец, возвратило более одного значения" #: utils/cache/funccache.c:364 -#, fuzzy, c-format +#, c-format msgid "" "could not determine actual argument type for polymorphic function \"%s\"" msgstr "" -"не удалось определить действительный тип результата для функции \"%s\", " -"объявленной как возвращающая тип %s" +"не удалось определить фактический тип аргумента для полиморфной функции " +"\"%s\"" #: utils/cache/lsyscache.c:1109 #, c-format @@ -32038,9 +32175,9 @@ msgid "could not reopen file \"%s\" as stdout: %m" msgstr "открыть файл \"%s\" как stdout не удалось: %m" #: utils/error/elog.c:2191 -#, fuzzy, c-format +#, c-format msgid "Invalid character." -msgstr "Недопустимый символ" +msgstr "Недопустимый символ." #: utils/error/elog.c:2901 utils/error/elog.c:2928 utils/error/elog.c:2944 msgid "[unknown]" @@ -32163,15 +32300,15 @@ msgstr "ABI сервера: \"%s\", библиотеки: \"%s\"." #. 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 -#, fuzzy, c-format +#, c-format msgid "Server has %s = %d, library has %d." -msgstr "В сервере NAMEDATALEN = %d, в библиотеке: %d." +msgstr "В сервере %s = %d, в библиотеке: %d." #. translator: %s is a variable name and %d its values #: utils/fmgr/dfmgr.c:402 -#, fuzzy, c-format +#, c-format msgid "Server has %s = %s, library has %s." -msgstr "ABI сервера: \"%s\", библиотеки: \"%s\"." +msgstr "В сервере %s = %s, в библиотеке: %s." #: utils/fmgr/dfmgr.c:409 msgid "Magic block has unexpected length or padding difference." @@ -32188,14 +32325,14 @@ msgid "access to library \"%s\" is not allowed" msgstr "доступ к библиотеке \"%s\" не разрешён" #: utils/fmgr/dfmgr.c:554 -#, fuzzy, c-format +#, c-format msgid "invalid macro name in path: %s" -msgstr "неправильный макрос в пути динамической библиотеки: %s" +msgstr "неправильный макрос в пути: %s" #: utils/fmgr/dfmgr.c:606 -#, fuzzy, c-format +#, c-format msgid "zero-length component in parameter \"%s\"" -msgstr "параметр dynamic_library_path содержит компонент нулевой длины" +msgstr "компонент нулевой длины в параметре \"%s\"" #: utils/fmgr/fmgr.c:236 #, c-format @@ -32264,86 +32401,76 @@ msgid "could not determine row description for function returning record" msgstr "не удалось определить описание строки для функции, возвращающей запись" #: utils/init/miscinit.c:265 -#, fuzzy msgid "unknown process type" -msgstr "причина неизвестна" +msgstr "неизвестный тип процесса" #: utils/init/miscinit.c:270 -#, fuzzy msgid "not initialized" -msgstr "не удалось инициализировать LDAP: %s" +msgstr "не инициализирован" #: utils/init/miscinit.c:273 -#, fuzzy msgid "archiver" msgstr "процесс архивации" #: utils/init/miscinit.c:276 -#, fuzzy msgid "autovacuum launcher" msgstr "процесс запуска автоочистки" #: utils/init/miscinit.c:279 -#, fuzzy msgid "autovacuum worker" -msgstr "Автоочистка" +msgstr "рабочий процесс автоочистки" #: utils/init/miscinit.c:282 msgid "client backend" -msgstr "" +msgstr "клиентский обслуживающий процесс" #: utils/init/miscinit.c:285 msgid "dead-end client backend" -msgstr "" +msgstr "зависший клиентский процесс" #: utils/init/miscinit.c:288 -#, fuzzy msgid "background worker" -msgstr "фоновый процесс \"%s\"" +msgstr "фоновый рабочий процесс" #: utils/init/miscinit.c:291 -#, fuzzy msgid "background writer" msgstr "процесс фоновой записи" #: utils/init/miscinit.c:294 -#, fuzzy msgid "checkpointer" msgstr "процесс контрольных точек" #: utils/init/miscinit.c:300 msgid "logger" -msgstr "" +msgstr "процесс протоколирования" #: utils/init/miscinit.c:303 -#, fuzzy msgid "slotsync worker" msgstr "рабочий процесс синхронизации слотов" #: utils/init/miscinit.c:306 msgid "standalone backend" -msgstr "" +msgstr "автономный обслуживающий процесс" #: utils/init/miscinit.c:309 -#, fuzzy msgid "startup" msgstr "стартовый процесс" #: utils/init/miscinit.c:312 msgid "walreceiver" -msgstr "" +msgstr "приёмник WAL" #: utils/init/miscinit.c:315 msgid "walsender" -msgstr "" +msgstr "передатчик WAL" #: utils/init/miscinit.c:318 msgid "walsummarizer" -msgstr "" +msgstr "процесс, обобщающий WAL" #: utils/init/miscinit.c:321 msgid "walwriter" -msgstr "" +msgstr "процесс, пишущий WAL" #: utils/init/miscinit.c:358 #, c-format @@ -32677,7 +32804,7 @@ msgstr "" #: utils/init/postinit.c:566 #, c-format msgid "too many server processes configured" -msgstr "" +msgstr "настроено слишком много серверных процессов" #: utils/init/postinit.c:567 #, c-format @@ -32686,6 +32813,9 @@ msgid "" "\"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:878 #, c-format @@ -33163,14 +33293,12 @@ msgid "Resource Usage / Background Writer" msgstr "Использование ресурсов / Фоновая запись" #: utils/misc/guc_tables.c:702 -#, fuzzy msgid "Resource Usage / I/O" -msgstr "Использование ресурсов / Диск" +msgstr "Использование ресурсов / Ввод/вывод" #: utils/misc/guc_tables.c:703 -#, fuzzy msgid "Resource Usage / Worker Processes" -msgstr "Использование ресурсов / Ресурсы ядра" +msgstr "Использование ресурсов / Рабочие процессы" #: utils/misc/guc_tables.c:704 msgid "Write-Ahead Log / Settings" @@ -33258,20 +33386,19 @@ msgstr "Статистика / Накопительная статистика #: utils/misc/guc_tables.c:725 msgid "Vacuuming / Automatic Vacuuming" -msgstr "" +msgstr "Очистка / Автоматическая очистка" #: utils/misc/guc_tables.c:726 -#, fuzzy msgid "Vacuuming / Cost-Based Vacuum Delay" -msgstr "Использование ресурсов / Задержка очистки по стоимости" +msgstr "Очистка / Задержка очистки по стоимости" #: utils/misc/guc_tables.c:727 msgid "Vacuuming / Default Behavior" -msgstr "" +msgstr "Очистка / Поведение по умолчанию" #: utils/misc/guc_tables.c:728 msgid "Vacuuming / Freezing" -msgstr "" +msgstr "Очистка / Заморозка" #: utils/misc/guc_tables.c:729 msgid "Client Connection Defaults / Statement Behavior" @@ -33437,16 +33564,15 @@ msgstr "Разрешает планировщику использовать п #: utils/misc/guc_tables.c:1011 msgid "Enables removal of unique self-joins." -msgstr "" +msgstr "Включает удаление уникальных замкнутых соединений." #: utils/misc/guc_tables.c:1021 msgid "Enables reordering of GROUP BY keys." msgstr "Включает переупорядочивание ключей GROUP BY." #: utils/misc/guc_tables.c:1031 -#, fuzzy msgid "Enables reordering of DISTINCT keys." -msgstr "Включает переупорядочивание ключей GROUP BY." +msgstr "Включает переупорядочивание ключей DISTINCT." #: utils/misc/guc_tables.c:1041 msgid "Enables genetic query optimization." @@ -33656,12 +33782,16 @@ 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 "" @@ -33669,6 +33799,8 @@ msgid "" "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." @@ -33727,9 +33859,8 @@ msgid "Collects statistics on database activity." msgstr "Собирает статистику активности в БД." #: utils/misc/guc_tables.c:1495 -#, fuzzy msgid "Collects timing statistics for cost-based vacuum delay." -msgstr "Собирает статистику по времени активности ввода/вывода." +msgstr "Собирает статистику, связанную с задержкой очистки по стоимости." #: utils/misc/guc_tables.c:1504 msgid "Collects timing statistics for database I/O activity." @@ -33781,9 +33912,8 @@ msgid "Logs long lock waits." msgstr "Протоколировать длительные ожидания в блокировках." #: utils/misc/guc_tables.c:1606 -#, fuzzy msgid "Logs lock failures." -msgstr "Протоколировать длительные ожидания в блокировках." +msgstr "Протоколировать ошибки блокировок." #: utils/misc/guc_tables.c:1615 msgid "Logs standby recovery conflict waits." @@ -33846,7 +33976,6 @@ msgstr "" "момента, когда сбой сериализации будет исключён." #: utils/misc/guc_tables.c:1688 -#, fuzzy msgid "Enables row security." msgstr "Включает защиту на уровне строк." @@ -33862,9 +33991,8 @@ msgstr "" "Проверять тело подпрограмм в момент CREATE FUNCTION и CREATE PROCEDURE." #: utils/misc/guc_tables.c:1706 -#, fuzzy msgid "Enables input of NULL elements in arrays." -msgstr "Разрешать ввод элементов NULL в массивах." +msgstr "Разрешает ввод элементов NULL в массивы." #: utils/misc/guc_tables.c:1707 msgid "" @@ -33900,10 +34028,9 @@ msgid "Generate debugging output for synchronized scanning." msgstr "Выдавать отладочные сообщения для синхронного сканирования." #: utils/misc/guc_tables.c:1780 -#, fuzzy msgid "Enables bounded sorting using heap sort." msgstr "" -"Разрешить ограниченную сортировку с применением пирамидальной сортировки." +"Разрешает ограниченную сортировку с применением пирамидальной сортировки." #: utils/misc/guc_tables.c:1793 msgid "Emit WAL-related debugging output." @@ -33933,9 +34060,8 @@ msgid "Causes '...' strings to treat backslashes literally." msgstr "Включает буквальную обработку символов '\\' в строках '...'." #: utils/misc/guc_tables.c:1857 -#, fuzzy msgid "Enables synchronized sequential scans." -msgstr "Включить синхронизацию последовательного сканирования." +msgstr "Включает синхронизацию последовательного сканирования." #: utils/misc/guc_tables.c:1867 msgid "Sets whether to include or exclude transaction with recovery target." @@ -34088,11 +34214,11 @@ msgstr "" #: utils/misc/guc_tables.c:2130 msgid "Enables deprecation warnings for MD5 passwords." -msgstr "" +msgstr "Включает предупреждения об устаревших паролях в MD5." #: utils/misc/guc_tables.c:2139 msgid "Enables vacuum to truncate empty pages at the end of the table." -msgstr "" +msgstr "Включает отсечение пустых страниц в конце таблицы при очистке." #: utils/misc/guc_tables.c:2157 msgid "" @@ -34105,9 +34231,8 @@ msgstr "" #: 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 -#, fuzzy msgid "0 disables the timeout." -msgstr "-1 отключает оптимизацию." +msgstr "0 отключает тай-аут." #: utils/misc/guc_tables.c:2168 msgid "" @@ -34175,9 +34300,8 @@ msgid "GEQO: number of individuals in the population." msgstr "GEQO: число особей в популяции." #: utils/misc/guc_tables.c:2236 utils/misc/guc_tables.c:2246 -#, fuzzy msgid "0 means use a suitable default value." -msgstr "При нуле выбирается подходящее значение по умолчанию." +msgstr "С 0 выбирается подходящее значение по умолчанию." #: utils/misc/guc_tables.c:2245 msgid "GEQO: number of iterations of the algorithm." @@ -34196,9 +34320,8 @@ msgstr "" "резерва обрабатывает данные WAL из архива." #: utils/misc/guc_tables.c:2269 utils/misc/guc_tables.c:2280 -#, fuzzy msgid "-1 means wait forever." -msgstr "-1 отключает ограничение." +msgstr "-1 означает бесконечное ожидание." #: utils/misc/guc_tables.c:2279 msgid "" @@ -34271,14 +34394,12 @@ msgstr "" "общей памяти." #: utils/misc/guc_tables.c:2404 -#, fuzzy msgid "-1 means huge pages are not supported." -msgstr "для %s событийные триггеры не поддерживаются" +msgstr "-1 означает, что огромные страницы не поддерживаются." #: utils/misc/guc_tables.c:2414 -#, fuzzy msgid "Shows the number of semaphores required for the server." -msgstr "Задаёт количество буферов в разделяемой памяти, используемых сервером." +msgstr "Показывает, сколько семафоров требуется для сервера." #: utils/misc/guc_tables.c:2425 msgid "" @@ -34290,9 +34411,8 @@ msgstr "" #: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 #: utils/misc/guc_tables.c:2492 -#, fuzzy msgid "0 means use a fraction of \"shared_buffers\"." -msgstr "При значении 0 это число определяется как процент от shared_buffers." +msgstr "0 означает — использовать процент от \"shared_buffers\"." #: utils/misc/guc_tables.c:2436 msgid "" @@ -34461,18 +34581,16 @@ msgstr "" "Суммарная стоимость очистки, при которой нужна передышка, для автоочистки." #: utils/misc/guc_tables.c:2676 -#, fuzzy msgid "-1 means use \"vacuum_cost_limit\"." -msgstr "-1 отключает ограничение." +msgstr "-1 означает — использовать \"vacuum_cost_limit\"." #: utils/misc/guc_tables.c:2685 -#, fuzzy 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." @@ -34670,7 +34788,6 @@ msgstr "" "контрольные точки, вызванные активностью WAL, происходят слишком часто." #: utils/misc/guc_tables.c:2987 -#, 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. 0 " @@ -34678,7 +34795,7 @@ msgid "" msgstr "" "В журнал сервера будет записываться сообщение, когда интервал между " "контрольными точками, вызванными заполнением файлов сегментов WAL, меньше " -"заданного значения. Нулевое значение отключает эти предупреждения." +"заданного значения. 0 отключает эти предупреждения." #: utils/misc/guc_tables.c:3000 utils/misc/guc_tables.c:3230 #: utils/misc/guc_tables.c:3322 @@ -34691,16 +34808,15 @@ msgstr "" #: utils/misc/guc_tables.c:3001 utils/misc/guc_tables.c:3231 #: utils/misc/guc_tables.c:3323 msgid "0 disables forced writeback." -msgstr "" +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:3012 -#, fuzzy msgid "-1 means use a fraction of \"shared_buffers\"." -msgstr "При значении -1 это число определяется как процент от shared_buffers." +msgstr "-1 означает — использовать процент от \"shared_buffers\"." #: utils/misc/guc_tables.c:3022 msgid "Time between WAL flushes performed in the WAL writer." @@ -34733,7 +34849,6 @@ msgstr "" "Задаёт максимальный размер WAL, который могут резервировать слоты репликации." #: utils/misc/guc_tables.c:3077 -#, 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. -1 " @@ -34741,20 +34856,19 @@ msgid "" msgstr "" "Если объём WAL на диске достигнет этого значения, слоты репликации будут " "помечены как нерабочие, а сегменты будут освобождены для удаления или " -"переработки." +"переработки. -1 означает отсутствие такого предела." #: utils/misc/guc_tables.c:3089 msgid "Sets the maximum time to wait for WAL replication." msgstr "Задаёт предельное время ожидания репликации WAL." #: utils/misc/guc_tables.c:3100 -#, fuzzy msgid "" "Sets the duration a replication slot can remain idle before it is " "invalidated." msgstr "" -"Пользователь использовал слот логической репликации, который должен быть " -"аннулирован." +"Задаёт время, в течение которого слот репликации может простаивать, прежде " +"чем он аннулируется." #: utils/misc/guc_tables.c:3112 msgid "" @@ -34789,18 +34903,17 @@ msgstr "" "точного вывода." #: utils/misc/guc_tables.c:3148 -#, fuzzy 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." +"\"log_statement_sample_rate\"." #: utils/misc/guc_tables.c:3151 msgid "-1 disables sampling. 0 means sample all statements." -msgstr "" +msgstr "-1 отключает выборку. 0 означает — выбирать все операторы." #: utils/misc/guc_tables.c:3161 msgid "" @@ -34813,6 +34926,8 @@ msgstr "" msgid "" "-1 disables logging statement durations. 0 means log all statement durations." msgstr "" +"-1 отключает вывод продолжительности операторов. С 0 выводится длительность " +"всех операторов." #: utils/misc/guc_tables.c:3173 msgid "" @@ -34826,6 +34941,8 @@ msgstr "" msgid "" "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." msgstr "" +"-1 отключает запись действий автоочистки. С 0 записываются все действия " +"процесса автоочистки." #: utils/misc/guc_tables.c:3185 msgid "" @@ -34836,9 +34953,8 @@ msgstr "" "привязанных параметров при протоколировании операторов." #: utils/misc/guc_tables.c:3187 utils/misc/guc_tables.c:3199 -#, fuzzy msgid "-1 means log values in full." -msgstr "При -1 значения выводятся полностью." +msgstr "-1 означает — выводить значения полностью." #: utils/misc/guc_tables.c:3197 msgid "" @@ -34859,9 +34975,8 @@ msgstr "" "фоновой записи." #: utils/misc/guc_tables.c:3221 -#, fuzzy msgid "0 disables background writing." -msgstr "-1 отключает встраивание кода." +msgstr "0 отключает фоновую запись." #: utils/misc/guc_tables.c:3243 msgid "" @@ -34873,7 +34988,7 @@ msgstr "" #: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 msgid "0 disables simultaneous requests." -msgstr "" +msgstr "0 отключает одновременные запросы." #: utils/misc/guc_tables.c:3257 msgid "" @@ -34884,7 +34999,7 @@ msgstr "" #: utils/misc/guc_tables.c:3272 msgid "Server-wide limit that clamps io_combine_limit." -msgstr "" +msgstr "Глобальный предел сервера, ограничивающий io_combine_limit." #: utils/misc/guc_tables.c:3286 msgid "Limit on the size of data reads and writes." @@ -34893,10 +35008,12 @@ msgstr "Предельный размер для операций чтения #: utils/misc/guc_tables.c:3300 msgid "Max number of IOs that one process can execute simultaneously." msgstr "" +"Максимальное число операций ввода/вывода, которые могут выполняться " +"одновременно одним процессом." #: utils/misc/guc_tables.c:3312 msgid "Number of IO worker processes, for io_method=worker." -msgstr "" +msgstr "Число рабочих процессов ввода/вывода, для io_method=worker." #: utils/misc/guc_tables.c:3335 msgid "Maximum number of concurrent worker processes." @@ -34920,9 +35037,8 @@ msgstr "" "одной подписки." #: utils/misc/guc_tables.c:3383 -#, fuzzy msgid "Sets the maximum number of active replication origins." -msgstr "Задаёт предельное число одновременно существующих слотов репликации." +msgstr "Задаёт предельное число активных источников репликации." #: utils/misc/guc_tables.c:3393 msgid "Sets the amount of time to wait before forcing log file rotation." @@ -34932,7 +35048,7 @@ msgstr "" #: utils/misc/guc_tables.c:3395 msgid "0 disables time-based creation of new log files." -msgstr "" +msgstr "0 отключает создание новых файлов журнала по времени." #: utils/misc/guc_tables.c:3405 msgid "Sets the maximum size a log file can reach before being rotated." @@ -34942,7 +35058,7 @@ msgstr "" #: utils/misc/guc_tables.c:3407 msgid "0 disables size-based creation of new log files." -msgstr "" +msgstr "0 отключает создание новых файлов журнала по размеру." #: utils/misc/guc_tables.c:3417 msgid "Shows the maximum number of function arguments." @@ -34984,7 +35100,7 @@ msgstr "Время, в течение которого должны сохран #: utils/misc/guc_tables.c:3509 msgid "0 disables automatic summary file deletion." -msgstr "" +msgstr "0 отключает автоматическое удаление файлов обобщения." #: utils/misc/guc_tables.c:3521 msgid "Time to sleep between autovacuum runs." @@ -34995,24 +35111,21 @@ msgid "Minimum number of tuple updates or deletes prior to vacuum." msgstr "Минимальное число изменений или удалений кортежей, вызывающее очистку." #: utils/misc/guc_tables.c:3540 -#, fuzzy msgid "Maximum number of tuple updates or deletes prior to vacuum." -msgstr "Минимальное число изменений или удалений кортежей, вызывающее очистку." +msgstr "" +"Максимальное число изменений или удалений кортежей, вызывающее очистку." #: utils/misc/guc_tables.c:3541 -#, fuzzy msgid "-1 disables the maximum threshold." -msgstr "-1 отключает оптимизацию." +msgstr "-1 отключает максимальное ограничение." #: utils/misc/guc_tables.c:3549 -#, fuzzy msgid "Minimum number of tuple inserts prior to vacuum." -msgstr "Минимальное число изменений или удалений кортежей, вызывающее очистку." +msgstr "Минимальное число добавлений кортежей, вызывающее очистку." #: utils/misc/guc_tables.c:3550 -#, fuzzy msgid "-1 disables insert vacuums." -msgstr "-1 отключает встраивание кода." +msgstr "-1 отключает очистку при добавлении." #: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." @@ -35035,10 +35148,10 @@ msgstr "" "предотвращения зацикливания multixact." #: utils/misc/guc_tables.c:3590 -#, fuzzy msgid "Sets the number of backend slots to allocate for autovacuum workers." msgstr "" -"Задаёт предельный объём памяти для каждого рабочего процесса автоочистки." +"Задаёт число слотов обслуживающих процессов, выделяемых для процессов " +"автоочистки." #: utils/misc/guc_tables.c:3599 msgid "" @@ -35072,9 +35185,8 @@ msgstr "" "Задаёт предельный объём памяти для каждого рабочего процесса автоочистки." #: utils/misc/guc_tables.c:3642 -#, fuzzy msgid "-1 means use \"maintenance_work_mem\"." -msgstr "Уменьшите \"maintenance_work_mem\"." +msgstr "-1 означает — использовать \"maintenance_work_mem\"." #: utils/misc/guc_tables.c:3652 msgid "Time between issuing TCP keepalives." @@ -35082,9 +35194,8 @@ msgstr "Интервал между TCP-пакетами пульса (keep-aliv #: utils/misc/guc_tables.c:3653 utils/misc/guc_tables.c:3664 #: utils/misc/guc_tables.c:3787 utils/misc/guc_tables.c:3798 -#, fuzzy msgid "0 means use the system default." -msgstr "При нулевом значении действует системный параметр." +msgstr "0 означает — использовать системное значение по умолчанию." #: utils/misc/guc_tables.c:3663 msgid "Time between TCP keepalive retransmits." @@ -35101,13 +35212,12 @@ msgid "Maximum number of TCP keepalive retransmits." msgstr "Максимальное число повторений TCP-пакетов пульса (keep-alive)." #: utils/misc/guc_tables.c:3686 -#, fuzzy msgid "" "Number of consecutive keepalive retransmits that can be lost before a " "connection is considered dead. 0 means use the system default." msgstr "" "Количество идущих подряд пакетов пульса, которое может быть потеряно, прежде " -"чем соединение будет считаться пропавшим. При нулевом значении действует " +"чем соединение будет считаться пропавшим. 0 означает — использовать " "системный параметр." #: utils/misc/guc_tables.c:3697 @@ -35115,9 +35225,8 @@ msgid "Sets the maximum allowed result for exact search by GIN." msgstr "Ограничивает результат точного поиска с использованием GIN." #: utils/misc/guc_tables.c:3698 -#, fuzzy msgid "0 means no limit." -msgstr "-1 отключает ограничение." +msgstr "При 0 ограничение не действует." #: utils/misc/guc_tables.c:3707 msgid "Sets the planner's assumption about the total size of the data caches." @@ -35171,10 +35280,10 @@ msgstr "" "Фиксирует в протоколе превышение временными файлами заданного размера (в КБ)." #: utils/misc/guc_tables.c:3754 -#, fuzzy msgid "-1 disables logging temporary files. 0 means log all temporary files." msgstr "" -"ограничения во временных таблицах могут ссылаться только на временные таблицы" +"-1 отключает контроль размера временных файлов. 0 означает — фиксировать все " +"временные файлы." #: utils/misc/guc_tables.c:3764 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." @@ -35198,7 +35307,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 "" @@ -35208,9 +35317,8 @@ msgstr "" "Задаёт интервал между проверками подключения во время выполнения запросов." #: utils/misc/guc_tables.c:3832 -#, fuzzy msgid "0 disables connection checks." -msgstr "Разрешает SSL-подключения." +msgstr "0 отключает проверки подключения." #: utils/misc/guc_tables.c:3842 msgid "Time between progress updates for long-running startup operations." @@ -35220,7 +35328,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." @@ -35351,7 +35459,7 @@ msgstr "Задержка очистки для автоочистки (в мил #: utils/misc/guc_tables.c:4075 msgid "-1 means use \"vacuum_cost_delay\"." -msgstr "" +msgstr "-1 означает — использовать \"vacuum_cost_delay\"." #: utils/misc/guc_tables.c:4085 msgid "" @@ -35415,6 +35523,8 @@ 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 msgid "" @@ -35423,6 +35533,11 @@ msgid "" "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 процентов всех видимых страниц в отношении. Если " +"процесс очистки успешно замораживает страницы, максимальный процент их " +"оказывается ниже 100, так как целью является распределение замораживания " +"страниц между несколько операциями очистки." #: utils/misc/guc_tables.c:4165 msgid "Sets the shell command that will be called to archive a WAL file." @@ -35430,18 +35545,15 @@ msgstr "Задаёт команду оболочки, вызываемую дл #: utils/misc/guc_tables.c:4166 msgid "An empty string means use \"archive_library\"." -msgstr "" +msgstr "Пустая строка означает — использовать \"archive_library\"." #: 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:4176 -#, fuzzy msgid "An empty string means use \"archive_command\"." -msgstr "" -"Пустая строка указывает, что должен использоваться параметр " -"\"archive_command\"." +msgstr "Пустая строка означает — использовать \"archive_command\"." #: utils/misc/guc_tables.c:4185 msgid "" @@ -35521,7 +35633,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." @@ -35545,9 +35657,10 @@ msgstr "" "Задаёт табличное пространство по умолчанию для новых таблиц и индексов." #: utils/misc/guc_tables.c:4347 utils/misc/guc_tables.c:4358 -#, fuzzy msgid "An empty string means use the database's default tablespace." -msgstr "При пустом значении используется табличное пространство базы данных." +msgstr "" +"Пустая строка означает — использовать табличное пространство базы по " +"умолчанию." #: utils/misc/guc_tables.c:4357 msgid "Sets the tablespace(s) to use for temporary tables and sort files." @@ -35562,9 +35675,10 @@ msgstr "" "Определяет, будет ли пользователь CREATEROLE автоматически включать себя в " "создаваемую роль и с какими параметрами." +# well-spelled: самоназначение #: utils/misc/guc_tables.c:4370 msgid "An empty string disables automatic self grants." -msgstr "" +msgstr "Пустая строка отключает автоматическое самоназначение роли." #: utils/misc/guc_tables.c:4380 msgid "Sets the path for dynamically loadable modules." @@ -35581,15 +35695,16 @@ msgstr "" "пути." #: utils/misc/guc_tables.c:4394 -#, fuzzy msgid "Sets the path for extension control files." -msgstr "Задаёт права доступа к файлам протоколов." +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." @@ -35601,7 +35716,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." @@ -35610,7 +35725,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." @@ -35711,12 +35826,12 @@ msgid "Sets the owning group of the Unix-domain socket." msgstr "Задаёт группу-владельца Unix-сокета." #: utils/misc/guc_tables.c:4636 -#, fuzzy 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:4646 msgid "Sets the directories where Unix-domain sockets will be created." @@ -35782,36 +35897,37 @@ msgid "Sets default text search configuration." msgstr "Задаёт конфигурацию текстового поиска по умолчанию." #: utils/misc/guc_tables.c:4813 -#, fuzzy msgid "Sets the list of allowed TLSv1.3 cipher suites." -msgstr "Задаёт список допустимых алгоритмов шифрования для SSL." +msgstr "Задаёт список допустимых комплектов шифрования для TLSv1.3." #: utils/misc/guc_tables.c:4814 -#, fuzzy msgid "An empty string means use the default cipher suites." -msgstr "При пустом значении используется табличное пространство базы данных." +msgstr "Пустая строка означает — использовать комплекты шифров по умолчанию." #: utils/misc/guc_tables.c:4824 -#, fuzzy msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." -msgstr "Задаёт список допустимых алгоритмов шифрования для SSL." +msgstr "Задаёт список допустимых шифров для TLSv1.2 (и ниже)." +# well-spelled: Диффи +# well-spelled: Хеллмана #: utils/misc/guc_tables.c:4839 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." msgstr "" +"Задаёт группу или группы, используемые для обмена ключами Диффи-Хеллмана." #: utils/misc/guc_tables.c:4840 msgid "Multiple groups can be specified using a colon-separated list." -msgstr "" +msgstr "Несколько групп можно указать в списке через двоеточие." #: utils/misc/guc_tables.c:4854 msgid "Location of the SSL DH parameters file." msgstr "Размещение файла с параметрами SSL DH." #: utils/misc/guc_tables.c:4855 -#, fuzzy msgid "An empty string means use compiled-in default parameters." -msgstr "При пустом значении используется табличное пространство базы данных." +msgstr "" +"Пустая строка означает — использовать параметры по умолчанию, выбранные при " +"компиляции." #: utils/misc/guc_tables.c:4865 msgid "Command to obtain passphrases for SSL." @@ -35820,6 +35936,7 @@ msgstr "Команда, позволяющая получить пароль д #: 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." @@ -35859,7 +35976,7 @@ msgstr "Использовать прямой ввод/вывод для раб #: utils/misc/guc_tables.c:4932 msgid "An empty string disables direct I/O." -msgstr "" +msgstr "Пустая строка отключает прямой ввод/вывод." #: utils/misc/guc_tables.c:4942 msgid "" @@ -35885,10 +36002,12 @@ 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:4978 msgid "Logs specified aspects of connection establishment and setup." -msgstr "" +msgstr "Выводит выбранные сведения об установлении и подготовке соединения." #: utils/misc/guc_tables.c:4999 msgid "Sets whether \"\\'\" is allowed in string literals." @@ -36019,7 +36138,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." @@ -36122,9 +36241,8 @@ msgstr "" "применить изменения в конце транзакции." #: utils/misc/guc_tables.c:5413 -#, fuzzy msgid "Selects the method for executing asynchronous I/O." -msgstr "Выбирает метод принудительной записи изменений в WAL на диск." +msgstr "Выбирает метод для выполнения асинхронного ввода/вывода." #: utils/misc/help_config.c:129 #, c-format @@ -36177,9 +36295,9 @@ msgstr "" "стека." #: utils/misc/stack_depth.c:149 -#, fuzzy, c-format +#, c-format msgid "\"max_stack_depth\" must not exceed %zdkB." -msgstr "Значение \"max_stack_depth\" не должно превышать %ld КБ." +msgstr "Значение \"max_stack_depth\" не должно превышать %zd КБ." #: utils/misc/stack_depth.c:151 #, c-format @@ -36337,9 +36455,9 @@ msgstr "" "производящим изменения" #: utils/sort/logtape.c:266 utils/sort/logtape.c:287 -#, fuzzy, c-format +#, c-format msgid "could not seek to block % of temporary file" -msgstr "не удалось переместиться к блоку %lld временного файла" +msgstr "не удалось переместиться к блоку % временного файла" #: utils/sort/sharedtuplestore.c:466 #, c-format @@ -36482,9 +36600,9 @@ msgid "column number must be in range from 1 to %d" msgstr "номер столбца должен быть в диапазоне от 1 до %d" #: gram.y:2675 -#, fuzzy, c-format +#, c-format msgid "constraints cannot be altered to be NOT VALID" -msgstr "ограничения %s не могут иметь характеристики NOT VALID" +msgstr "для ограничений нельзя задать свойство NOT VALID" #: gram.y:3125 #, c-format @@ -36569,7 +36687,7 @@ msgstr "события триггера повторяются" #: gram.y:6237 #, c-format msgid "conflicting constraint properties" -msgstr "противоречащие характеристики ограничения" +msgstr "противоречащие свойства ограничения" #: gram.y:6338 #, c-format @@ -36773,31 +36891,31 @@ msgstr "COLLATE можно указать только один раз" #: gram.y:19469 gram.y:19482 #, c-format msgid "%s constraints cannot be marked DEFERRABLE" -msgstr "ограничения %s не могут иметь характеристики DEFERRABLE" +msgstr "ограничения %s не могут иметь свойства DEFERRABLE" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19495 #, c-format msgid "%s constraints cannot be marked NOT VALID" -msgstr "ограничения %s не могут иметь характеристики NOT VALID" +msgstr "ограничения %s не могут иметь свойства NOT VALID" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19508 #, c-format msgid "%s constraints cannot be marked NO INHERIT" -msgstr "ограничения %s не могут иметь характеристики NO INHERIT" +msgstr "ограничения %s не могут иметь свойства NO INHERIT" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19521 -#, fuzzy, c-format +#, c-format msgid "%s constraints cannot be marked NOT ENFORCED" -msgstr "ограничения %s не могут иметь характеристики NOT VALID" +msgstr "ограничения %s не могут иметь свойства NOT ENFORCED" #. translator: %s is CHECK, UNIQUE, or similar #: gram.y:19543 -#, fuzzy, c-format +#, c-format msgid "%s constraints cannot be marked ENFORCED" -msgstr "ограничения %s не могут иметь характеристики DEFERRABLE" +msgstr "ограничения %s не могут иметь свойства ENFORCED" #: gram.y:19565 #, c-format @@ -37028,9 +37146,8 @@ msgid "operator too long" msgstr "слишком длинный оператор" #: scan.l:1001 -#, fuzzy msgid "parameter number too large" -msgstr "номер аргумента вне диапазона" +msgstr "номер параметра слишком большой" #: scan.l:1007 msgid "trailing junk after parameter" @@ -37094,6 +37211,10 @@ msgstr "нестандартное использование спецсимво msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'." msgstr "Используйте для записи спецсимволов синтаксис спецстрок E'\\r\\n'." +#, c-format +#~ msgid "cannot create statistics on the specified relation" +#~ msgstr "создать статистику для указанного отношения нельзя" + #, c-format #~ msgid "could not look up local user ID %d: %s" #~ msgstr "найти локального пользователя по идентификатору (%d) не удалось: %s" diff --git a/src/backend/po/sv.po b/src/backend/po/sv.po index 691517eb0308c..499720d9a97fd 100644 --- a/src/backend/po/sv.po +++ b/src/backend/po/sv.po @@ -23,8 +23,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-17 11:16+0000\n" -"PO-Revision-Date: 2025-08-17 21:16+0200\n" +"POT-Creation-Date: 2025-09-19 13:15+0000\n" +"PO-Revision-Date: 2025-09-19 20:24+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -96,19 +96,19 @@ msgid "not recorded" msgstr "ej sparad" #: ../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 +#: 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 "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:3612 -#: access/transam/xlog.c:4503 access/transam/xlogrecovery.c:1246 +#: 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 -#: backup/walsummary.c:283 commands/extension.c:3817 libpq/hba.c:769 +#: 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 @@ -120,7 +120,7 @@ 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:3617 access/transam/xlog.c:4508 +#: 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:2489 #: replication/slot.c:2530 replication/walsender.c:634 @@ -134,10 +134,10 @@ 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: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 +#: 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 @@ -173,9 +173,9 @@ 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:3348 -#: access/transam/xlog.c:3528 access/transam/xlog.c:3567 -#: access/transam/xlog.c:3760 access/transam/xlog.c:4493 +#: 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/xlogutils.c:825 backup/basebackup.c:549 #: backup/basebackup.c:1600 backup/walsummary.c:220 libpq/hba.c:626 @@ -198,7 +198,7 @@ msgstr "kunde inte öppna fil \"%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 +#: 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 @@ -212,9 +212,9 @@ 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: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 +#: access/transam/xlog.c:3315 access/transam/xlog.c:3513 +#: access/transam/xlog.c:4333 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 @@ -242,10 +242,11 @@ msgstr "kunde inte fsync:a fil \"%s\": %m" #: 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/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/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 @@ -339,7 +340,7 @@ msgstr "kan inte synkronisera filsystemet för fil \"%s\": %m" #: 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/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 @@ -373,7 +374,7 @@ msgstr "kunde inte läsa katalog \"%s\": %m" #: 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 +#: utils/time/snapmgr.c:1273 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "kunde inte döpa om fil \"%s\" till \"%s\": %m" @@ -736,7 +737,7 @@ msgstr "kunde inte hämta statuskod för underprocess: felkod %lu" #: 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 +#: utils/time/snapmgr.c:1609 #, c-format msgid "could not remove file \"%s\": %m" msgstr "kunde inte ta bort fil \"%s\": %m" @@ -913,7 +914,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:931 +#: statistics/attribute_stats.c:190 statistics/attribute_stats.c:934 #: statistics/relation_stats.c:97 #, c-format msgid "recovery is in progress" @@ -940,7 +941,7 @@ msgid "could not open parent table of index \"%s\"" msgstr "kunde inte öppna föräldratabell för index \"%s\"" #: access/brin/brin.c:1472 access/brin/brin.c:1568 access/gin/ginfast.c:1085 -#: parser/parse_utilcmd.c:2455 +#: parser/parse_utilcmd.c:2454 #, c-format msgid "index \"%s\" is not valid" msgstr "index \"%s\" är inte giltigt" @@ -1213,12 +1214,12 @@ msgstr "misslyckades att återfinna tuple i index \"%s\"" msgid "could not identify a comparison function for type %s" msgstr "kunde inte hitta någon jämförelsefunktion för typen %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 "gamla GIN-index stöder inte hela-index-scan eller sökningar efter null" -#: access/gin/ginscan.c:438 +#: access/gin/ginscan.c:481 #, c-format msgid "To fix this, do REINDEX INDEX \"%s\"." msgstr "För att fixa detta, kör REINDEX INDEX \"%s\"." @@ -1414,14 +1415,14 @@ 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:3373 access/transam/xlog.c:3581 -#: access/transam/xlog.c:4445 access/transam/xlog.c:9453 +#: access/transam/xlog.c:3240 access/transam/xlog.c:3448 +#: access/transam/xlog.c:4312 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 -#: storage/file/copydir.c:261 storage/smgr/md.c:252 utils/time/snapmgr.c:1241 +#: 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 "kunde inte skapa fil \"%s\": %m" @@ -1433,8 +1434,8 @@ 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:3434 access/transam/xlog.c:3637 -#: access/transam/xlog.c:4457 commands/dbcommands.c:507 +#: 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 @@ -1442,7 +1443,7 @@ msgstr "kunde inte trunkera fil \"%s\" till %u: %m" #: 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 +#: utils/time/snapmgr.c:1257 utils/time/snapmgr.c:1264 #, c-format msgid "could not write to file \"%s\": %m" msgstr "kunde inte skriva till fil \"%s\": %m" @@ -1574,10 +1575,9 @@ msgid "buffer usage: % hits, % reads, % dirtied\n" msgstr "bufferanvändning: % träffar, % läsningar, % nersmutsade\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 "WAL-användning: %lld poster, %lld hela sidor, %llu bytes\n" +msgstr "WAL-användning: % poster, % hela sidor, % byte, % fulla buffers\n" #: access/heap/vacuumlazy.c:1144 commands/analyze.c:840 #, c-format @@ -1726,7 +1726,7 @@ msgid "This may be because of a non-immutable index expression." msgstr "Det kan bero på ett icke-immutable indexuttryck." #: access/nbtree/nbtpage.c:157 access/nbtree/nbtpage.c:611 -#: parser/parse_utilcmd.c:2505 +#: parser/parse_utilcmd.c:2504 #, c-format msgid "index \"%s\" is not a btree" msgstr "index \"%s\" är inte ett btree" @@ -1772,7 +1772,7 @@ msgid "operator family \"%s\" of access method %s is missing support function fo msgstr "operatorfamilj \"%s\" för accessmetod %s saknar supportfunktioner för typerna %s och %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 "kan inte öppna relationen \"%s\"" @@ -2045,65 +2045,65 @@ msgstr "Det finns redan en resurshanterare med ID %d som har samma namn." msgid "registered custom resource manager \"%s\" with ID %d" msgstr "registrerade egendefinerad resurshanterare \"%s\" med ID %d" -#: access/transam/slru.c:360 +#: access/transam/slru.c:361 #, c-format msgid "\"%s\" must be a multiple of %d." msgstr "\"%s\" måste vara en multiple av %d." -#: access/transam/slru.c:832 +#: access/transam/slru.c:833 #, c-format msgid "file \"%s\" doesn't exist, reading as zeroes" msgstr "filen \"%s\" existerar inte, läses som nollor" -#: 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 "kunde inte läsa status på transaktion %u" -#: access/transam/slru.c:1062 +#: access/transam/slru.c:1063 #, c-format msgid "Could not open file \"%s\": %m." msgstr "Kunde inte öppna fil \"%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 "Kunde inte söka i fil \"%s\" till offset %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 "Kunde inte läsa från fil \"%s\" på offset %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 "Kunde inte läsa från fil \"%s\" på offset %d: läste för få bytes." -#: access/transam/slru.c:1088 +#: access/transam/slru.c:1089 #, c-format msgid "Could not write to file \"%s\" at offset %d: %m." msgstr "Kunde inte skriva till fil \"%s\" på offset %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 "Kunde inte skriva till fil \"%s\" på offset %d: skrev för få bytes." -#: access/transam/slru.c:1100 +#: access/transam/slru.c:1101 #, c-format msgid "Could not fsync file \"%s\": %m." msgstr "Kunde inte fsync:a fil \"%s\": %m." -#: access/transam/slru.c:1107 +#: access/transam/slru.c:1108 #, c-format msgid "Could not close file \"%s\": %m." msgstr "Kunde inte stänga fil \"%s\": %m." -#: access/transam/slru.c:1433 +#: access/transam/slru.c:1434 #, c-format msgid "could not truncate directory \"%s\": apparent wraparound" msgstr "Kunde inte trunkera katalog \"%s\": trolig wraparound" @@ -2324,7 +2324,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: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 "kunde inte komma åt filen \"%s\": %m" @@ -2482,132 +2482,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: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 "förfrågan att flush:a efter slutet av genererad WAL; efterfrågad %X/%X, aktuell position %X/%X" -#: 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 "kan inte läsa efter slutet av genererad WAL; efterfrågad %X/%X, aktuell position %X/%X" -#: 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-segmentstorleken måste vara en tvåpotens mellan 1 MB och 1 GB." -#: 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 "kunde inte skriva till loggfil \"%s\" vid offset %u, längd %zu: %m" -#: access/transam/xlog.c:3874 access/transam/xlogutils.c:820 +#: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 #: replication/walsender.c:3074 #, 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:4196 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "kunde inte byta namn på fil \"%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 "krävd WAL-katalog \"%s\" finns inte" -#: 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 "skapar saknad WAL-katalog \"%s\"" -#: access/transam/xlog.c:4260 access/transam/xlog.c:4280 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 #: commands/dbcommands.c:3301 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "kunde inte skapa saknad katalog \"%s\": %m" -#: access/transam/xlog.c:4347 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "kunde inte generera hemligt auktorisationstoken" -#: 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 +#: 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 "databasfilerna är inkompatibla med servern" -#: 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 "Databasklustret initierades med PG_CONTROL_VERSION %d (0x%08x), men servern kompilerades med 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 "Detta kan orsakas av en felaktig byte-ordning. Du behöver troligen köra 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 "Databasklustret initierades med PG_CONTROL_VERSION %d, men servern kompilerades med 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 "Du behöver troligen köra initdb." -#: access/transam/xlog.c:4551 +#: access/transam/xlog.c:4418 #, 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: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 "Databasklustret initierades med %s %d, men servern kompilerades med %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 "Databasklustret verkar använda en annan flyttalsrepresentation än vad serverprogrammet gör." -#: 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 "Det verkar som om du måste kompilera om eller köra 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 "Databasklustret initierades utan USE_FLOAT8_BYVAL, men servern kompilerades med 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 "Databasklustret initierades med USE_FLOAT8_BYVAL, men servern kompilerades utan 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)" @@ -2615,283 +2615,283 @@ 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: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\" måste vara minst dubbla \"%s\"" -#: access/transam/xlog.c:4859 catalog/namespace.c:4696 -#: commands/tablespace.c:1210 commands/user.c:2542 commands/variable.c:72 +#: access/transam/xlog.c:4726 catalog/namespace.c:4696 +#: 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 #, c-format msgid "List syntax is invalid." msgstr "List-syntaxen är ogiltig." -#: access/transam/xlog.c:4905 commands/user.c:2558 commands/variable.c:173 +#: 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 "Okänt nyckelord: \"%s\"" -#: access/transam/xlog.c:5332 +#: access/transam/xlog.c:5195 #, 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:5340 +#: access/transam/xlog.c:5203 #, 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:5346 +#: access/transam/xlog.c:5209 #, 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:5571 +#: access/transam/xlog.c:5434 #, 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:5572 +#: access/transam/xlog.c:5435 #, 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:5573 +#: access/transam/xlog.c:5436 #, 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:5638 +#: access/transam/xlog.c:5501 #, c-format msgid "control file contains invalid checkpoint location" msgstr "kontrollfil innehåller ogiltig checkpoint-position" -#: access/transam/xlog.c:5649 +#: access/transam/xlog.c:5512 #, c-format msgid "database system was shut down at %s" msgstr "databassystemet stängdes ner vid %s" -#: access/transam/xlog.c:5655 +#: access/transam/xlog.c:5518 #, 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:5661 +#: access/transam/xlog.c:5524 #, 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:5667 +#: access/transam/xlog.c:5530 #, 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: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 "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:5675 +#: access/transam/xlog.c:5538 #, 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: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 "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:5683 +#: access/transam/xlog.c:5546 #, 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:5690 +#: access/transam/xlog.c:5553 #, c-format msgid "control file contains invalid database cluster state" msgstr "kontrollfil innehåller ogiltigt databasklustertillstånd" -#: access/transam/xlog.c:6078 +#: access/transam/xlog.c:5941 #, c-format msgid "WAL ends before end of online backup" msgstr "WAL slutar före sluttiden av online-backup:en" -#: 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 "Alla genererade WAL under tiden online-backup:en togs måste vara tillgängliga vid återställning." -#: access/transam/xlog.c:6083 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WAL avslutas innan konstistent återställningspunkt" -#: access/transam/xlog.c:6129 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "valt nytt tidslinje-ID: %u" -#: access/transam/xlog.c:6162 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "arkivåterställning klar" -#: access/transam/xlog.c:6794 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "stänger ner" #. 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 "restartpoint startar:%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 "checkpoint startar:%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 "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: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 "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:7420 +#: access/transam/xlog.c:7280 #, 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" -#: access/transam/xlog.c:8011 +#: access/transam/xlog.c:7871 #, c-format msgid "recovery restart point at %X/%X" msgstr "återställningens omstartspunkt vid %X/%X" -#: access/transam/xlog.c:8013 +#: access/transam/xlog.c:7873 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Senaste kompletta transaktionen var vid loggtid %s" -#: access/transam/xlog.c:8277 +#: access/transam/xlog.c:8137 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "återställningspunkt \"%s\" skapad vid %X/%X" -#: access/transam/xlog.c:8484 +#: access/transam/xlog.c:8344 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "online-backup avbröts, återställning kan inte fortsätta" -#: access/transam/xlog.c:8542 +#: access/transam/xlog.c:8402 #, c-format msgid "unexpected timeline ID %u (should be %u) in shutdown checkpoint record" msgstr "oväntad tidslinje-ID %u (skall vara %u) i checkpoint-post för nedstängning" -#: access/transam/xlog.c:8600 +#: access/transam/xlog.c:8468 #, c-format msgid "unexpected timeline ID %u (should be %u) in online checkpoint record" msgstr "oväntad tidslinje-ID %u (skall vara %u) i checkpoint-post för online" -#: access/transam/xlog.c:8629 +#: access/transam/xlog.c:8505 #, c-format msgid "unexpected timeline ID %u (should be %u) in end-of-recovery record" msgstr "oväntad tidslinje-ID %u (skall vara %u) i post för slutet av återställning" -#: access/transam/xlog.c:8899 +#: access/transam/xlog.c:8775 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "kunde inte fsync:a skriv-igenom-loggfil \"%s\": %m" -#: access/transam/xlog.c:8904 +#: access/transam/xlog.c:8780 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "kunde inte fdatasync:a fil \"%s\": %m" -#: access/transam/xlog.c:8981 access/transam/xlog.c:9317 +#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 #, c-format msgid "WAL level not sufficient for making an online backup" msgstr "WAL-nivå inte tillräcklig för att kunna skapa en online-backup" -#: access/transam/xlog.c:8982 access/transam/xlog.c:9318 +#: 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\" måste vara satt till \"replica\" eller \"logical\" vid serverstart." -#: access/transam/xlog.c:8987 +#: access/transam/xlog.c:8863 #, c-format msgid "backup label too long (max %d bytes)" msgstr "backup-etikett för lång (max %d byte)" -#: access/transam/xlog.c:9108 +#: access/transam/xlog.c:8984 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "WAL skapad med \"full_page_writes=off\" har återspelats sedan senaste omstartpunkten" -#: access/transam/xlog.c:9110 access/transam/xlog.c:9406 +#: 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 "Det betyder att backup:en som tas på standby:en är trasig och inte skall användas. Slå på \"full_page_writes\" och kör CHECKPOINT på primären och försök sedan ta en ny online-backup igen." -#: access/transam/xlog.c:9190 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 "kan inte läsa symbolisk länk \"%s\": %m" -#: access/transam/xlog.c:9197 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 "mål för symbolisk länk \"%s\" är för lång" -#: access/transam/xlog.c:9356 backup/basebackup.c:1283 +#: access/transam/xlog.c:9232 backup/basebackup.c:1283 #, c-format msgid "the standby was promoted during online backup" msgstr "standby:en befordrades under online-backup" -#: access/transam/xlog.c:9357 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 "Det betyder att backupen som tas är trasig och inte skall användas. Försök ta en ny online-backup." -#: access/transam/xlog.c:9404 +#: access/transam/xlog.c:9280 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "WAL skapad med \"full_page_writes=off\" återspelades under online-backup" -#: access/transam/xlog.c:9520 +#: access/transam/xlog.c:9396 #, c-format msgid "base backup done, waiting for required WAL segments to be archived" msgstr "base_backup klar, väntar på att de WAL-segment som krävs blir arkiverade" -#: access/transam/xlog.c:9534 +#: access/transam/xlog.c:9410 #, c-format msgid "still waiting for all required WAL segments to be archived (%d seconds elapsed)" msgstr "väntar fortfarande på att alla krävda WAL-segments skall bli arkiverade (%d sekunder har gått)" -#: access/transam/xlog.c:9536 +#: 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 "Kontrollera att ditt \"archive_command\" kör som det skall. Du kan avbryta denna backup på ett säkert sätt men databasbackup:en kommer inte vara användbar utan att alla WAL-segment finns." -#: access/transam/xlog.c:9543 +#: access/transam/xlog.c:9419 #, c-format msgid "all required WAL segments have been archived" msgstr "alla krävda WAL-segments har arkiverats" -#: access/transam/xlog.c:9547 +#: 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-arkivering är inte påslagen; du måste se till att alla krävda WAL-segment har kopierats på annat sätt för att backup:en skall vara komplett" -#: access/transam/xlog.c:9586 +#: access/transam/xlog.c:9462 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "avbryter backup på grund av att backend:en stoppades innan pg_backup_stop anropades" @@ -4102,12 +4102,12 @@ msgstr "inte alla rättigheter kunde tas tillbaka från \"%s\"" msgid "grantor must be current user" msgstr "utfärdare måste vara den aktiva användaren" -#: 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 "ogiltig privilegietyp %s för relation" -#: 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 "ogiltig privilegietyp %s för sekvens" @@ -4122,7 +4122,7 @@ msgstr "ogiltig privilegietyp %s för databas" msgid "invalid privilege type %s for domain" msgstr "ogiltig privilegietyp %s för domän" -#: 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 "ogiltig privilegietyp %s för funktion" @@ -4132,22 +4132,22 @@ msgstr "ogiltig privilegietyp %s för funktion" msgid "invalid privilege type %s for language" msgstr "ogiltig privilegietyp %s för språk" -#: 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 "ogiltig privilegietyp %s för stort objekt" -#: 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 "ogiltig privilegietyp %s för schema" -#: 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 "ogiltig rättighetstyp %s för procedur" -#: 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 "ogiltig rättighetstyp %s för rutin" @@ -4157,7 +4157,7 @@ msgstr "ogiltig rättighetstyp %s för rutin" msgid "invalid privilege type %s for tablespace" msgstr "ogiltig privilegietyp %s för tabellutrymme" -#: 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 "ogiltig privilegietyp %s för typ" @@ -4182,27 +4182,27 @@ msgstr "ogiltig privilegietyp %s för parameter" msgid "column privileges are only valid for relations" msgstr "kolumnprivilegier är bara giltiga för relationer" -#: catalog/aclchk.c:1043 +#: catalog/aclchk.c:1057 #, c-format msgid "default privileges cannot be set for columns" msgstr "standardrättigheter kan inte sättas för kolumner" -#: catalog/aclchk.c:1079 +#: catalog/aclchk.c:1093 #, c-format msgid "permission denied to change default privileges" msgstr "rättighet saknas för att ändra standardrättigheter" -#: catalog/aclchk.c:1197 +#: catalog/aclchk.c:1211 #, 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" -#: catalog/aclchk.c:1207 +#: 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:1561 catalog/catalog.c:684 catalog/heap.c:2621 +#: 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 @@ -4215,25 +4215,25 @@ msgstr "kan inte använda IN SCHEMA-klausul samtidigt som GRANT/REVOKE ON LARGE #: 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 +#: 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 #: 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:1806 +#: catalog/aclchk.c:1820 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\" är ett index" -#: catalog/aclchk.c:1813 commands/tablecmds.c:16121 commands/tablecmds.c:19650 +#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 #, c-format msgid "\"%s\" is a composite type" msgstr "\"%s\" är en composite-typ" -#: catalog/aclchk.c:1821 catalog/objectaddress.c:1368 commands/tablecmds.c:266 +#: 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 #: utils/adt/acl.c:2185 utils/adt/acl.c:2221 utils/adt/acl.c:2252 #: utils/adt/acl.c:2283 @@ -4241,426 +4241,426 @@ msgstr "\"%s\" är en composite-typ" msgid "\"%s\" is not a sequence" msgstr "\"%s\" är inte en sekvens" -#: catalog/aclchk.c:1859 +#: catalog/aclchk.c:1873 #, 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:1876 +#: catalog/aclchk.c:1890 #, c-format msgid "invalid privilege type %s for table" msgstr "ogiltig rättighetstyp %s för tabell" -#: catalog/aclchk.c:2041 +#: catalog/aclchk.c:2055 #, c-format msgid "invalid privilege type %s for column" msgstr "ogitligt rättighetstyp %s för kolumn" -#: catalog/aclchk.c:2054 +#: catalog/aclchk.c:2068 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "sekvensen \"%s\" stöder bara kolumnrättigheten SELECT" -#: catalog/aclchk.c:2245 +#: catalog/aclchk.c:2259 #, c-format msgid "language \"%s\" is not trusted" msgstr "språket \"%s\" är inte betrott" -#: catalog/aclchk.c:2247 +#: catalog/aclchk.c:2261 #, 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:2398 +#: catalog/aclchk.c:2412 #, c-format msgid "cannot set privileges of array types" msgstr "kan inte sätta privilegier för array-typer" -#: catalog/aclchk.c:2399 +#: catalog/aclchk.c:2413 #, c-format msgid "Set the privileges of the element type instead." msgstr "Sätt rättigheter för elementtypen istället." -#: catalog/aclchk.c:2403 +#: catalog/aclchk.c:2417 #, c-format msgid "cannot set privileges of multirange types" msgstr "kan inte sätta privilegier för multirange-typer" -#: catalog/aclchk.c:2404 +#: catalog/aclchk.c:2418 #, 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:2587 +#: catalog/aclchk.c:2601 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "okänd privilegietyp \"%s\"" -#: catalog/aclchk.c:2654 +#: catalog/aclchk.c:2668 #, c-format msgid "permission denied for aggregate %s" msgstr "rättighet saknas för aggregat %s" -#: catalog/aclchk.c:2657 +#: catalog/aclchk.c:2671 #, c-format msgid "permission denied for collation %s" msgstr "rättighet saknas för jämförelse %s" -#: catalog/aclchk.c:2660 +#: catalog/aclchk.c:2674 #, c-format msgid "permission denied for column %s" msgstr "rättighet saknas för kolumn %s" -#: catalog/aclchk.c:2663 +#: catalog/aclchk.c:2677 #, c-format msgid "permission denied for conversion %s" msgstr "rättighet saknas för konvertering %s" -#: catalog/aclchk.c:2666 +#: catalog/aclchk.c:2680 #, c-format msgid "permission denied for database %s" msgstr "rättighet saknas för databas %s" -#: catalog/aclchk.c:2669 +#: catalog/aclchk.c:2683 #, c-format msgid "permission denied for domain %s" msgstr "rättighet saknas för domän %s" -#: catalog/aclchk.c:2672 +#: catalog/aclchk.c:2686 #, c-format msgid "permission denied for event trigger %s" msgstr "rättighet saknas för händelsetrigger %s" -#: catalog/aclchk.c:2675 +#: catalog/aclchk.c:2689 #, c-format msgid "permission denied for extension %s" msgstr "rättighet saknas för utökning %s" -#: catalog/aclchk.c:2678 +#: catalog/aclchk.c:2692 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "rättighet saknas för främmande data-omvandlare %s" -#: catalog/aclchk.c:2681 +#: catalog/aclchk.c:2695 #, c-format msgid "permission denied for foreign server %s" msgstr "rättighet saknas för främmande server %s" -#: catalog/aclchk.c:2684 +#: catalog/aclchk.c:2698 #, c-format msgid "permission denied for foreign table %s" msgstr "rättighet saknas för främmande tabell %s" -#: catalog/aclchk.c:2687 +#: catalog/aclchk.c:2701 #, c-format msgid "permission denied for function %s" msgstr "rättighet saknas för funktion %s" -#: catalog/aclchk.c:2690 +#: catalog/aclchk.c:2704 #, c-format msgid "permission denied for index %s" msgstr "rättighet saknas för index %s" -#: catalog/aclchk.c:2693 +#: catalog/aclchk.c:2707 #, c-format msgid "permission denied for language %s" msgstr "rättighet saknas för språk %s" -#: catalog/aclchk.c:2696 +#: catalog/aclchk.c:2710 #, c-format msgid "permission denied for large object %s" msgstr "rättighet saknas för stort objekt %s" -#: catalog/aclchk.c:2699 +#: catalog/aclchk.c:2713 #, c-format msgid "permission denied for materialized view %s" msgstr "rättighet saknas för materialiserad vy %s" -#: catalog/aclchk.c:2702 +#: catalog/aclchk.c:2716 #, c-format msgid "permission denied for operator class %s" msgstr "rättighet saknas för operatorklasss %s" -#: catalog/aclchk.c:2705 +#: catalog/aclchk.c:2719 #, c-format msgid "permission denied for operator %s" msgstr "rättighet saknas för operator %s" -#: catalog/aclchk.c:2708 +#: catalog/aclchk.c:2722 #, c-format msgid "permission denied for operator family %s" msgstr "rättighet saknas för operatorfamilj %s" -#: catalog/aclchk.c:2711 +#: catalog/aclchk.c:2725 #, c-format msgid "permission denied for parameter %s" msgstr "rättighet saknas för parametern %s" -#: catalog/aclchk.c:2714 +#: catalog/aclchk.c:2728 #, c-format msgid "permission denied for policy %s" msgstr "rättighet saknas för policy %s" -#: catalog/aclchk.c:2717 +#: catalog/aclchk.c:2731 #, c-format msgid "permission denied for procedure %s" msgstr "rättighet saknas för procedur %s" -#: catalog/aclchk.c:2720 +#: catalog/aclchk.c:2734 #, c-format msgid "permission denied for publication %s" msgstr "rättighet saknas för publicering %s" -#: catalog/aclchk.c:2723 +#: catalog/aclchk.c:2737 #, c-format msgid "permission denied for routine %s" msgstr "rättighet saknas för rutin %s" -#: catalog/aclchk.c:2726 +#: catalog/aclchk.c:2740 #, c-format msgid "permission denied for schema %s" msgstr "rättighet saknas för schema %s" -#: catalog/aclchk.c:2729 commands/sequence.c:654 commands/sequence.c:880 +#: catalog/aclchk.c:2743 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:2732 +#: catalog/aclchk.c:2746 #, c-format msgid "permission denied for statistics object %s" msgstr "rättighet saknas för statistikobjekt %s" -#: catalog/aclchk.c:2735 +#: catalog/aclchk.c:2749 #, c-format msgid "permission denied for subscription %s" msgstr "rättighet saknas för prenumeration %s" -#: catalog/aclchk.c:2738 +#: catalog/aclchk.c:2752 #, c-format msgid "permission denied for table %s" msgstr "rättighet saknas för tabell %s" -#: catalog/aclchk.c:2741 +#: catalog/aclchk.c:2755 #, c-format msgid "permission denied for tablespace %s" msgstr "rättighet saknas för tabellutrymme %s" -#: catalog/aclchk.c:2744 +#: catalog/aclchk.c:2758 #, c-format msgid "permission denied for text search configuration %s" msgstr "rättighet saknas för textsökkonfigurering %s" -#: catalog/aclchk.c:2747 +#: catalog/aclchk.c:2761 #, c-format msgid "permission denied for text search dictionary %s" msgstr "rättighet saknas för textsökordlista %s" -#: catalog/aclchk.c:2750 +#: catalog/aclchk.c:2764 #, c-format msgid "permission denied for type %s" msgstr "rättighet saknas för typ %s" -#: catalog/aclchk.c:2753 +#: catalog/aclchk.c:2767 #, c-format msgid "permission denied for view %s" msgstr "rättighet saknas för vy %s" -#: catalog/aclchk.c:2789 +#: catalog/aclchk.c:2803 #, c-format msgid "must be owner of aggregate %s" msgstr "måste vara ägaren till aggregatet %s" -#: catalog/aclchk.c:2792 +#: catalog/aclchk.c:2806 #, c-format msgid "must be owner of collation %s" msgstr "måste vara ägaren till jämförelsen %s" -#: catalog/aclchk.c:2795 +#: catalog/aclchk.c:2809 #, c-format msgid "must be owner of conversion %s" msgstr "måste vara ägaren till konverteringen %s" -#: catalog/aclchk.c:2798 +#: catalog/aclchk.c:2812 #, c-format msgid "must be owner of database %s" msgstr "måste vara ägaren till databasen %s" -#: catalog/aclchk.c:2801 +#: catalog/aclchk.c:2815 #, c-format msgid "must be owner of domain %s" msgstr "måste vara ägaren av domänen %s" -#: catalog/aclchk.c:2804 +#: catalog/aclchk.c:2818 #, c-format msgid "must be owner of event trigger %s" msgstr "måste vara ägaren till händelsetrigger %s" -#: catalog/aclchk.c:2807 +#: catalog/aclchk.c:2821 #, c-format msgid "must be owner of extension %s" msgstr "måste vara ägaren till utökningen %s" -#: catalog/aclchk.c:2810 +#: catalog/aclchk.c:2824 #, 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:2813 +#: catalog/aclchk.c:2827 #, c-format msgid "must be owner of foreign server %s" msgstr "måste vara ägaren till främmande servern %s" -#: catalog/aclchk.c:2816 +#: catalog/aclchk.c:2830 #, c-format msgid "must be owner of foreign table %s" msgstr "måste vara ägaren till främmande tabellen %s" -#: catalog/aclchk.c:2819 +#: catalog/aclchk.c:2833 #, c-format msgid "must be owner of function %s" msgstr "måste vara ägaren till funktionen %s" -#: catalog/aclchk.c:2822 +#: catalog/aclchk.c:2836 #, c-format msgid "must be owner of index %s" msgstr "måste vara ägaren till indexet %s" -#: catalog/aclchk.c:2825 +#: catalog/aclchk.c:2839 #, c-format msgid "must be owner of language %s" msgstr "måste vara ägaren till språket %s" -#: catalog/aclchk.c:2828 +#: catalog/aclchk.c:2842 #, c-format msgid "must be owner of large object %s" msgstr "måste vara ägaren till stora objektet %s" -#: catalog/aclchk.c:2831 +#: catalog/aclchk.c:2845 #, c-format msgid "must be owner of materialized view %s" msgstr "måste vara ägaren till den materialiserade vyn %s" -#: catalog/aclchk.c:2834 +#: catalog/aclchk.c:2848 #, c-format msgid "must be owner of operator class %s" msgstr "måste vara ägaren till operatorklassen %s" -#: catalog/aclchk.c:2837 +#: catalog/aclchk.c:2851 #, c-format msgid "must be owner of operator %s" msgstr "måste vara ägaren till operatorn %s" -#: catalog/aclchk.c:2840 +#: catalog/aclchk.c:2854 #, c-format msgid "must be owner of operator family %s" msgstr "måste vara ägaren till operatorfamiljen %s" -#: catalog/aclchk.c:2843 +#: catalog/aclchk.c:2857 #, c-format msgid "must be owner of procedure %s" msgstr "måste vara ägaren till proceduren %s" -#: catalog/aclchk.c:2846 +#: catalog/aclchk.c:2860 #, c-format msgid "must be owner of publication %s" msgstr "måste vara ägaren till publiceringen %s" -#: catalog/aclchk.c:2849 +#: catalog/aclchk.c:2863 #, c-format msgid "must be owner of routine %s" msgstr "måste vara ägaren till rutinen %s" -#: catalog/aclchk.c:2852 +#: catalog/aclchk.c:2866 #, c-format msgid "must be owner of sequence %s" msgstr "måste vara ägaren till sekvensen %s" -#: catalog/aclchk.c:2855 +#: catalog/aclchk.c:2869 #, c-format msgid "must be owner of subscription %s" msgstr "måste vara ägaren till prenumerationen %s" -#: catalog/aclchk.c:2858 +#: catalog/aclchk.c:2872 #, c-format msgid "must be owner of table %s" msgstr "måste vara ägaren till tabellen %s" -#: catalog/aclchk.c:2861 +#: catalog/aclchk.c:2875 #, c-format msgid "must be owner of type %s" msgstr "måste vara ägaren till typen %s" -#: catalog/aclchk.c:2864 +#: catalog/aclchk.c:2878 #, c-format msgid "must be owner of view %s" msgstr "måste vara ägaren till vyn %s" -#: catalog/aclchk.c:2867 +#: catalog/aclchk.c:2881 #, c-format msgid "must be owner of schema %s" msgstr "måste vara ägaren till schemat %s" -#: catalog/aclchk.c:2870 +#: catalog/aclchk.c:2884 #, c-format msgid "must be owner of statistics object %s" msgstr "måste vara ägaren till statistikobjektet %s" -#: catalog/aclchk.c:2873 +#: catalog/aclchk.c:2887 #, c-format msgid "must be owner of tablespace %s" msgstr "måste vara ägaren till tabellutrymmet %s" -#: catalog/aclchk.c:2876 +#: catalog/aclchk.c:2890 #, c-format msgid "must be owner of text search configuration %s" msgstr "måste vara ägaren till textsökkonfigurationen %s" -#: catalog/aclchk.c:2879 +#: catalog/aclchk.c:2893 #, c-format msgid "must be owner of text search dictionary %s" msgstr "måste vara ägaren till textsökordlistan %s" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2907 #, c-format msgid "must be owner of relation %s" msgstr "måste vara ägaren till relationen %s" -#: catalog/aclchk.c:2939 +#: catalog/aclchk.c:2953 #, 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:3173 catalog/aclchk.c:3192 +#: catalog/aclchk.c:3187 catalog/aclchk.c:3206 #, 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:3230 catalog/aclchk.c:3293 catalog/aclchk.c:3932 +#: catalog/aclchk.c:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 #, c-format msgid "relation with OID %u does not exist" msgstr "relation med OID %u existerar inte" -#: catalog/aclchk.c:3478 +#: catalog/aclchk.c:3492 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "parameter ACL med OID %u existerar inte" -#: catalog/aclchk.c:3557 catalog/objectaddress.c:1055 +#: 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 #, c-format msgid "large object %u does not exist" msgstr "stort objekt %u existerar inte" -#: catalog/aclchk.c:3651 commands/collationcmds.c:849 +#: catalog/aclchk.c:3665 commands/collationcmds.c:849 #: commands/publicationcmds.c:1846 #, c-format msgid "schema with OID %u does not exist" msgstr "schema med OID %u existerar inte" -#: catalog/aclchk.c:3725 catalog/aclchk.c:3752 catalog/aclchk.c:3781 +#: catalog/aclchk.c:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 #: utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" @@ -4695,7 +4695,7 @@ msgstr "måste vara en superuser för att anropa %s()" msgid "pg_nextoid() can only be used on system catalogs" msgstr "pg_nextoid() kan bara användas på systemkataloger" -#: 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 "index \"%s\" tillhör inte tabell \"%s\"" @@ -4793,13 +4793,13 @@ msgid "constant of the type %s cannot be used here" msgstr "konstant av typen %s kan inte användas här" #: catalog/dependency.c:2205 -#, fuzzy, c-format -#| msgid "only table \"%s\" can be referenced in check constraint" +#, c-format msgid "transition table \"%s\" cannot be referenced in a persistent object" -msgstr "bara tabell \"%s\" kan refereras i check-villkoret" +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 #, c-format msgid "column %d of relation \"%s\" does not exist" msgstr "kolumn %d i relation \"%s\" finns inte" @@ -4842,10 +4842,9 @@ msgid "column \"%s\" has pseudo-type %s" msgstr "kolumn \"%s\" har pseudo-typ %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 "\"default\" för kolumn \"%s\" kan inte automatiskt typomvandlas till typ \"%s\"" +msgstr "genererad virtuell kolumn \"%s\" kan inte vara en domän-typ" #: catalog/heap.c:622 #, c-format @@ -4853,16 +4852,14 @@ msgid "composite type %s cannot be made a member of itself" msgstr "composite-typ %s kan inte vara en del av sig själv" #: catalog/heap.c:673 -#, 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 user-defined type" -msgstr "\"default\" för kolumn \"%s\" kan inte automatiskt typomvandlas till typ \"%s\"" +msgstr "genererad virtuell kolumn \"%s\" kan inte vara en användardefinierad typ" #: catalog/heap.c:674 catalog/heap.c:3294 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "Virtual generated columns that make use of user-defined types are not yet supported." -msgstr "skapa index för systemkolumner stöds inte" +msgstr "Genererade virtuella kolumner som använder användardefinierade typer stöds inte än." #. translator: first %s is an integer not a name #: catalog/heap.c:686 @@ -4920,10 +4917,9 @@ msgid "check constraint \"%s\" already exists" msgstr "check-villkor \"%s\" finns redan" #: catalog/heap.c:2626 catalog/heap.c:2946 -#, fuzzy, c-format -#| msgid "cannot assign to system column \"%s\"" +#, c-format msgid "cannot add not-null constraint on system column \"%s\"" -msgstr "kan inte skriva till systemkolumn \"%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 @@ -4964,7 +4960,7 @@ msgstr "slår samman villkor \"%s\" med ärvd definition" msgid "too many inheritance parents" msgstr "för många föräldrar i arv" -#: 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 "motstridig NO INHERIT för icke-null-villkor på kolumnen \"%s\"" @@ -5005,15 +5001,14 @@ 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 -#, fuzzy, c-format -#| msgid "reading user-defined functions" +#, c-format msgid "generation expression uses user-defined function" -msgstr "läser användardefinierade funktioner" +msgstr "genereringsuttryck använder användardefinierad funktion" #: catalog/heap.c:3278 #, c-format msgid "Virtual generated columns that make use of user-defined functions are not yet supported." -msgstr "Virtuellt genererade kolumner som använder användardefinierade funktioner stöds inte än." +msgstr "Genererade virtuella kolumner som använder användardefinierade funktioner stöds inte än." #: catalog/heap.c:3293 #, c-format @@ -5067,7 +5062,7 @@ msgstr "Tabell \"%s\" refererar till \"%s\"." msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "Trunkera tabellen \"%s\" samtidigt, eller använd 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 "multipla primärnycklar för tabell \"%s\" tillåts inte" @@ -6009,10 +6004,9 @@ 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 -#, fuzzy, c-format -#| msgid "cannot alter constraint \"%s\" on relation \"%s\"" +#, c-format msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" -msgstr "kan inte ändra villkoret \"%s\" i 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 #, c-format @@ -6064,12 +6058,12 @@ msgstr "konvertering \"%s\" finns redan" msgid "default conversion for %s to %s already exists" msgstr "standardkonvertering från %s till %s finns redan" -#: 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 är redan en medlem i utökningen \"%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 är inte en medlem av utökning \"%s\"" @@ -6379,10 +6373,9 @@ msgid "cannot use system column \"%s\" in publication column list" msgstr "kan inte använda systemkolumn \"%s\" i kolumnlista för publicering" #: catalog/pg_publication.c:582 -#, fuzzy, c-format -#| msgid "cannot use generated column \"%s\" in publication column list" +#, c-format msgid "cannot use virtual generated column \"%s\" in publication column list" -msgstr "kan inte använda genererad kolumn \"%s\" i kolumnlista för publicering" +msgstr "kan inte använda genererad virtuell kolumn \"%s\" i kolumnlista för publicering" #: catalog/pg_publication.c:588 #, c-format @@ -6526,10 +6519,10 @@ 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:7332 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 #, c-format -msgid "invalid page in block %u of relation %s" -msgstr "ogiltig sida i block %u i relation %s" +msgid "invalid page in block %u of relation \"%s\"" +msgstr "ogiltig sida i block %u i relation \"%s\"" #: commands/aggregatecmds.c:167 #, c-format @@ -6621,7 +6614,7 @@ msgstr "parameter \"parallel\" måste vara SAFE, RESTRICTED eller UNSAFE" msgid "parameter \"%s\" must be READ_ONLY, SHAREABLE, or READ_WRITE" msgstr "parameter \"%s\" måste vara READ_ONLY, SHAREABLE eller 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 "händelsetrigger \"%s\" finns redan" @@ -6688,14 +6681,14 @@ msgstr "måste vara en superuser för att döpa om %s" #: commands/alter.c:256 commands/subscriptioncmds.c:608 #: commands/subscriptioncmds.c:1147 commands/subscriptioncmds.c:1231 -#: commands/subscriptioncmds.c:1989 +#: commands/subscriptioncmds.c:1991 #, c-format msgid "password_required=false is superuser-only" msgstr "password_required=false är enbart för superanvändare" #: commands/alter.c:257 commands/subscriptioncmds.c:609 #: commands/subscriptioncmds.c:1148 commands/subscriptioncmds.c:1232 -#: commands/subscriptioncmds.c:1990 +#: 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 "Prenumerationer med password_required-flaggan satt till \"false\" får bara skapas eller ändras av superanvändare." @@ -6731,7 +6724,7 @@ msgstr "accessmetod \"%s\" existerar inte" msgid "handler function is not specified" msgstr "hanterarfunktion ej angiven" -#: commands/amcmds.c:264 commands/event_trigger.c:200 +#: 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 @@ -6769,10 +6762,9 @@ msgid "automatic analyze of table \"%s.%s.%s\"\n" msgstr "automatisk analys av tabell \"%s.%s.%s\"\n" #: commands/analyze.c:805 -#, fuzzy, c-format -#| msgid "heap table \"%s.%s.%s\":\n" +#, c-format msgid "finished analyzing table \"%s.%s.%s\"\n" -msgstr "heap-tabell \"%s.%s.%s\":\n" +msgstr "avslutade analysering av tabell \"%s.%s.%s\"\n" #: commands/analyze.c:1346 #, c-format @@ -7381,20 +7373,16 @@ msgid "cannot perform COPY FREEZE because the table was not created or truncated msgstr "kan inte utföra COPY FREEZE då tabellen inte skapades eller trunkerades i den nuvarande undertransaktionen" #: commands/copyfrom.c:1171 -#, 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 "skipped more than REJECT_LIMIT (%) rows due to data type incompatibility" -msgstr "%llu rad hoppades över på grund av inkompatibla datatyper" +msgstr "hoppade över mer än REJECT_LIMIT (%) rader på grund av inkompatibla datatyper" #: 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 rad hoppades över på grund av inkompatibla datatyper" -msgstr[1] "%llu rader hoppades över på grund av inkompatibla datatyper" +msgstr[0] "% rad hoppades över på grund av inkompatibla datatyper" +msgstr[1] "% rader hoppades över på grund av inkompatibla datatyper" #. 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 @@ -7572,10 +7560,9 @@ msgstr "slut-på-copy-markeringen matchar inte tidigare nyradsmetod" #: commands/copyfromparse.c:1473 commands/copyfromparse.c:1484 #: commands/copyfromparse.c:1500 -#, fuzzy, c-format -#| msgid "end-of-copy marker does not match previous newline style" +#, c-format msgid "end-of-copy marker is not alone on its line" -msgstr "slut-på-copy-markeringen matchar inte tidigare nyradsmetod" +msgstr "slut-på-copy-markeringen är inte ensam på sin rad" #: commands/copyfromparse.c:1773 commands/copyfromparse.c:1988 #, c-format @@ -7628,10 +7615,9 @@ msgid "Try the COPY (SELECT ...) TO variant." msgstr "Försök med varianten COPY (SELECT ...) TO." #: commands/copyto.c:660 -#, fuzzy, c-format -#| msgid "cannot copy from materialized view \"%s\"" +#, c-format msgid "cannot copy from unpopulated materialized view \"%s\"" -msgstr "kan inte kopiera från materialiserad vy \"%s\"" +msgstr "kan inte kopiera från en opopulerad materialiserad vy \"%s\"" #: commands/copyto.c:662 executor/execUtils.c:760 #, c-format @@ -7753,7 +7739,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:300 +#: commands/dbcommands.c:958 commands/dbcommands.c:2453 commands/user.c:299 #: commands/user.c:739 #, c-format msgid "invalid connection limit: %d" @@ -8298,79 +8284,79 @@ msgstr "operatorfamilj \"%s\" finns inte för accessmetod \"%s\", hoppar över" msgid "publication \"%s\" does not exist, skipping" msgstr "publicering \"%s\" finns inte, hoppar över" -#: commands/event_trigger.c:137 +#: commands/event_trigger.c:141 #, c-format msgid "permission denied to create event trigger \"%s\"" msgstr "rättighet saknas för att skapa händelsetrigger \"%s\"" -#: commands/event_trigger.c:139 +#: commands/event_trigger.c:143 #, c-format msgid "Must be superuser to create an event trigger." msgstr "Måste vara superuser för att skapa en händelsetrigger." -#: commands/event_trigger.c:149 +#: commands/event_trigger.c:153 #, c-format msgid "unrecognized event name \"%s\"" msgstr "okänt händelsenamn: \"%s\"" -#: commands/event_trigger.c:166 +#: commands/event_trigger.c:170 #, c-format msgid "unrecognized filter variable \"%s\"" msgstr "okänd filtervariabel \"%s\"" -#: commands/event_trigger.c:181 +#: commands/event_trigger.c:185 #, c-format msgid "tag filtering is not supported for login event triggers" msgstr "tagg-filtrering stöds inte för inloggningars händelsetrigger" -#: commands/event_trigger.c:224 +#: commands/event_trigger.c:228 #, c-format msgid "filter value \"%s\" not recognized for filter variable \"%s\"" msgstr "filtervärde \"%s\" känns inte igen för filtervariabel \"%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 "händelsutösare stöds inte för %s" -#: commands/event_trigger.c:265 +#: commands/event_trigger.c:269 #, c-format msgid "filter variable \"%s\" specified more than once" msgstr "filtervariabel \"%s\" angiven mer än en gång" -#: 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 "händelsetrigger \"%s\" finns inte" -#: commands/event_trigger.c:522 +#: commands/event_trigger.c:526 #, c-format msgid "event trigger with OID %u does not exist" msgstr "händelsetrigger med OID %u existerar inte" -#: commands/event_trigger.c:552 +#: commands/event_trigger.c:556 #, c-format msgid "permission denied to change owner of event trigger \"%s\"" msgstr "rättighet saknas för att byta ägare på händelsetrigger \"%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 "Ägaren för en händelsetrigger måste vara en superuser." -#: 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 kan bara anropas i en sql_drop-händelsetriggerfunktion" -#: 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 kan bara anropas i en tabell_rewrite-händelsetriggerfunktion" -#: 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 kan bara anropas i en händelsetriggerfunktion" @@ -8396,7 +8382,7 @@ msgstr "EXPLAIN-flagga %s kräver ANALYZE" msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" msgstr "EXPLAIN-flaggorna ANALYZE och GENERIC_PLAN kan inte användas ihop" -#: 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 "utökning \"%s\" finns inte" @@ -8505,16 +8491,14 @@ msgid "SQL statement \"%.*s\"" msgstr "SQL-sats: \"%.*s\"" #: commands/extension.c:896 -#, fuzzy, c-format -#| msgid "unrecognized descriptor item \"%s\" on line %d" +#, c-format msgid "extension script file \"%s\", near line %d" -msgstr "okänd deskriptor-post \"%s\" på rad %d" +msgstr "utökningsskriptsfil \"%s\", nära rad %d" #: commands/extension.c:900 -#, fuzzy, c-format -#| msgid "skipping special file \"%s\"" +#, c-format msgid "extension script file \"%s\"" -msgstr "hoppar över specialfil \"%s\"" +msgstr "utökningsskriptsfil \"%s\"" #: commands/extension.c:1012 #, c-format @@ -8566,7 +8550,7 @@ msgstr "ogiltigt tecken i schema för utökning \"%s\": får inte innehålla nå msgid "extension \"%s\" has no update path from version \"%s\" to version \"%s\"" msgstr "utökningen \"%s\" saknar uppdateringsmöjlighet från version \"%s\" till version \"%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 "installationversion måste anges" @@ -8621,81 +8605,80 @@ msgstr "nästlade CREATE EXTENSION stöds inte" msgid "cannot drop extension \"%s\" because it is being modified" msgstr "kan inte ta bort utökning \"%s\" eftersom det håller på att modifieras" -#: 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 kan bara anropas från ett SQL-skript som körs av CREATE EXTENSION" -#: commands/extension.c:2677 +#: commands/extension.c:2701 #, c-format msgid "OID %u does not refer to a table" msgstr "OID %u refererar inte till en tabell" -#: commands/extension.c:2682 +#: commands/extension.c:2706 #, c-format msgid "table \"%s\" is not a member of the extension being created" msgstr "tabell \"%s\" är inte en del av utökningen som skapas" -#: 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 "kan inte flytta utökning \"%s\" till schema \"%s\" eftersom utökningen innehåller schemat" -#: 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 "utökning \"%s\" stöder inte SET SCHEMA" -#: commands/extension.c:3179 +#: commands/extension.c:3203 #, c-format msgid "cannot SET SCHEMA of extension \"%s\" because other extensions prevent it" msgstr "kan inte göra SET SCHEMA på utökning \"%s\" då andra utökningar förhindrar det" -#: commands/extension.c:3181 +#: commands/extension.c:3205 #, c-format msgid "Extension \"%s\" requests no relocation of extension \"%s\"." msgstr "Utökningen \"%s\" begär ingen omlokalisering av utökningen \"%s\"" -#: commands/extension.c:3218 +#: commands/extension.c:3242 #, c-format msgid "%s is not in the extension's schema \"%s\"" msgstr "%s är inte utökningens schema \"%s\"" -#: commands/extension.c:3279 +#: commands/extension.c:3303 #, c-format msgid "nested ALTER EXTENSION is not supported" msgstr "nästlade ALTER EXTENSION stöds inte" -#: commands/extension.c:3368 +#: commands/extension.c:3392 #, c-format msgid "version \"%s\" of extension \"%s\" is already installed" msgstr "version \"%s\" av utökning \"%s\" är redan installerad" -#: commands/extension.c:3579 +#: commands/extension.c:3603 #, c-format msgid "cannot add an object of this type to an extension" msgstr "kan inte lägga till ett objekt av denna typ till en utökning" -#: 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 "kan inte lägga till schema \"%s\" till utökningen \"%s\" eftersom schemat innehåller utökningen" -#: 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 "kunde inte hitta multirange-typ för datatyp %s" -#: commands/extension.c:3801 +#: commands/extension.c:3825 #, c-format msgid "file \"%s\" is too large" msgstr "filen \"%s\" är för stor" -#: commands/extension.c:3894 utils/fmgr/dfmgr.c:618 -#, fuzzy, c-format -#| msgid "component in parameter \"dynamic_library_path\" is not an absolute path" +#: commands/extension.c:3918 utils/fmgr/dfmgr.c:625 +#, c-format msgid "component in parameter \"%s\" is not an absolute path" -msgstr "komponent som inte är en absolut sökväg i parameter \"dynamic_library_path\"" +msgstr "komponent i parametern \"%s\" är inte är en absolut sökväg " #: commands/foreigncmds.c:159 commands/foreigncmds.c:168 #, c-format @@ -9261,10 +9244,9 @@ msgid "could not identify an equality operator for type %s" msgstr "kunde inte hitta en likhetsoperator för typ %s" #: commands/indexcmds.c:1057 commands/indexcmds.c:2491 -#, fuzzy, c-format -#| msgid "operator family %s for access method %s" +#, c-format msgid "There is no suitable operator in operator family \"%s\" for access method \"%s\"." -msgstr "operatorfamilj %s för accessmetod %s" +msgstr "Det finns ingen lämplig operator i operatorfamilj \"%s\" för accessmetod \"%s\"." #: commands/indexcmds.c:1077 #, c-format @@ -9287,22 +9269,19 @@ msgid "index creation on system columns is not supported" msgstr "skapa index för systemkolumner stöds inte" #: commands/indexcmds.c:1123 -#, fuzzy, c-format -#| msgid "generated columns are not supported on typed tables" +#, c-format msgid "primary keys on virtual generated columns are not supported" -msgstr "genererade kolumner stöds inte på typade tabeller" +msgstr "primärnycklar på genererade virtuella kolumner stöds inte" #: commands/indexcmds.c:1125 commands/indexcmds.c:1164 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "unique constraints on virtual generated columns are not supported" -msgstr "skapa index för systemkolumner stöds inte" +msgstr "unikvillkor på genererade virtuella kolumner stöds inte" #: commands/indexcmds.c:1126 commands/indexcmds.c:1165 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "indexes on virtual generated columns are not supported" -msgstr "skapa index för systemkolumner stöds inte" +msgstr "index på genererade virtuella kolumner stöds inte" #: commands/indexcmds.c:1397 tcop/utility.c:1518 #, c-format @@ -9319,13 +9298,13 @@ msgstr "Tabell \"%s\" innehåller partitioner som är främmande tabeller." msgid "functions in index predicate must be marked IMMUTABLE" msgstr "funktioner i indexpredikat måste vara markerade 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 "kolumn \"%s\" angiven i en nyckel existerar inte" -#: 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 "uttryck stöds inte i inkluderade kolumner" @@ -9361,7 +9340,7 @@ 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:4065 +#: parser/parse_expr.c:2805 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" @@ -9425,22 +9404,19 @@ msgid "there are multiple default operator classes for data type %s" msgstr "det finns flera standardoperatorklasser för datatypen %s" #: commands/indexcmds.c:2470 commands/indexcmds.c:2489 -#, fuzzy, c-format -#| msgid "could not identify an ordering operator for type %s" +#, c-format msgid "could not identify an overlaps operator for type %s" -msgstr "kunde inte identifiera en jämförelseoperator för typ %s" +msgstr "kunde inte hitta en överlappningsoperator för typ %s" #: commands/indexcmds.c:2471 commands/indexcmds.c:2490 -#, fuzzy, c-format -#| msgid "could not identify an inequality operator for type %s" +#, c-format msgid "could not identify a contained-by operator for type %s" -msgstr "kunde inte hitta en olikhetsoperator för typ %s" +msgstr "kunde inte hitta en contained-by-operator för typ %s" #: commands/indexcmds.c:2472 commands/tablecmds.c:10333 -#, fuzzy, c-format -#| msgid "operator family %s for access method %s" +#, c-format msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." -msgstr "operatorfamilj %s för accessmetod %s" +msgstr "Kunde inte översätta jämförelsetyp %d för operatorfamilj \"%s\" till accessmetod \"%s\"." #: commands/indexcmds.c:2846 #, c-format @@ -9564,10 +9540,9 @@ msgid "Row: %s" msgstr "Rad: %s" #: commands/matview.c:838 -#, fuzzy, c-format -#| msgid "could not find suitable encoding for locale \"%s\"" +#, c-format msgid "could not find suitable unique index on materialized view \"%s\"" -msgstr "kunde inte välja en lämplig kodning för lokal \"%s\"" +msgstr "kunde inte hitta lämpligt unikt index på materialiserad vy \"%s\"" #: commands/opclasscmds.c:124 #, c-format @@ -9654,7 +9629,7 @@ msgstr "index-operatorer måste vara binära" #: commands/opclasscmds.c:1173 #, c-format msgid "access method \"%s\" does not support ordering operators" -msgstr "accessmetod \"%s\" stöder inte sorteringsoperatorer" +msgstr "accessmetod \"%s\" stöder inte ordningsoperatorer" #: commands/opclasscmds.c:1184 #, c-format @@ -9682,76 +9657,64 @@ msgid "Valid signature of operator class options parsing function is %s." msgstr "Giltig signatud för flaggparsningsfunktion i operatorklass är %s." #: commands/opclasscmds.c:1259 -#, fuzzy, c-format -#| msgid "btree comparison functions must have two arguments" +#, c-format msgid "ordering comparison functions must have two arguments" -msgstr "btree-jämförelsefunktioner måste ha två argument" +msgstr "ordningsjämförelsefunktioner måste ha två argument" #: commands/opclasscmds.c:1263 -#, fuzzy, c-format -#| msgid "btree comparison functions must return integer" +#, c-format msgid "ordering comparison functions must return integer" -msgstr "btree-jämförelsefunktioner måste returnera heltal" +msgstr "ordningsjämförelsefunktioner måste returnera heltal" #: commands/opclasscmds.c:1280 -#, fuzzy, c-format -#| msgid "btree sort support functions must accept type \"internal\"" +#, c-format msgid "ordering sort support functions must accept type \"internal\"" -msgstr "btree-sorteringshjälpfunktioner måste ta typen \"internal\"" +msgstr "supportfunktioner för sorteringsordning måste hantera typen \"internal\"" #: commands/opclasscmds.c:1284 -#, fuzzy, c-format -#| msgid "btree sort support functions must return void" +#, c-format msgid "ordering sort support functions must return void" -msgstr "btree-sorteringshjälpfunktioner måste returnera void" +msgstr "supportfunktioner för sorteringsordning måste returnera void" #: commands/opclasscmds.c:1295 -#, fuzzy, c-format -#| msgid "btree in_range functions must have five arguments" +#, c-format msgid "ordering in_range functions must have five arguments" -msgstr "btree-in_range-funktioner måste ha fem argument" +msgstr "in_range-funktioner för ordning måste ha fem argument" #: commands/opclasscmds.c:1299 -#, fuzzy, c-format -#| msgid "btree in_range functions must return boolean" +#, c-format msgid "ordering in_range functions must return boolean" -msgstr "btree-in_range-funktioner måste returnera en boolean" +msgstr "in_range-funktioner för ordning måste returnera en boolean" #: commands/opclasscmds.c:1315 -#, fuzzy, c-format -#| msgid "btree equal image functions must have one argument" +#, c-format msgid "ordering equal image functions must have one argument" -msgstr "btree-equal-image-funktioner måste ha ett argument" +msgstr "equal-image-funktioner för ordning måste ha ett argument" #: commands/opclasscmds.c:1319 -#, fuzzy, c-format -#| msgid "btree equal image functions must return boolean" +#, c-format msgid "ordering equal image functions must return boolean" -msgstr "btree-equal-image-funktioner måste returnera en boolean" +msgstr "equal-image-funktioner för ordning måste returnera en boolean" #: commands/opclasscmds.c:1332 -#, fuzzy, c-format -#| msgid "btree equal image functions must not be cross-type" +#, c-format msgid "ordering equal image functions must not be cross-type" -msgstr "btree-equal-image-funktioner får inte fungera mellan typer" +msgstr "equal-image-funktioner för ordning får inte fungera mellan olika typer" #: commands/opclasscmds.c:1340 -#, fuzzy, c-format -#| msgid "btree sort support functions must accept type \"internal\"" +#, c-format msgid "btree skip support functions must accept type \"internal\"" -msgstr "btree-sorteringshjälpfunktioner måste ta typen \"internal\"" +msgstr "supportfunktioner för btree-skip måste hantera typen \"internal\"" #: commands/opclasscmds.c:1344 -#, fuzzy, c-format -#| msgid "btree sort support functions must return void" +#, c-format msgid "btree skip support functions must return void" -msgstr "btree-sorteringshjälpfunktioner måste returnera void" +msgstr "supportfunktioner för btree-skip måste returnera void" #: commands/opclasscmds.c:1357 -#, fuzzy, c-format -#| msgid "btree equal image functions must not be cross-type" +#, c-format msgid "btree skip support functions must not be cross-type" -msgstr "btree-equal-image-funktioner får inte fungera mellan typer" +msgstr "supportfunktioner för btree-skip får inte fungera mellan olika typer" #: commands/opclasscmds.c:1367 #, c-format @@ -10032,7 +9995,7 @@ msgstr "Användardefinierade eller inbyggda muterbara funktioner tillåts inte." #: commands/publicationcmds.c:663 msgid "User-defined collations are not allowed." -msgstr "Egendefinierade jämförelser (collation) tillåts inte." +msgstr "Användardefinierade jämförelser (collation) tillåts inte." #: commands/publicationcmds.c:673 #, c-format @@ -10256,7 +10219,7 @@ msgid "lastval is not yet defined in this session" msgstr "lastval är inte definierad ännu i denna session" #: commands/sequence.c:991 -#, fuzzy, c-format +#, c-format msgid "setval: value % is out of bounds for sequence \"%s\" (%..%)" msgstr "setval: värdet % är utanför giltigt intervall för sekvensen \"%s\" (%..%)" @@ -10356,7 +10319,7 @@ msgstr "kan inte byta ägare på identitetssekvens" msgid "Sequence \"%s\" is linked to table \"%s\"." msgstr "Sekvens \"%s\" är länkad till tabell \"%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 "bara en enda relation tillåts i CREATE STATISTICS" @@ -10387,10 +10350,9 @@ 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 -#, fuzzy, c-format -#| msgid "statistics creation on system columns is not supported" +#, c-format msgid "statistics creation on virtual generated columns is not supported" -msgstr "skapa statistik för systemkolumner stöds inte" +msgstr "skapa statistik för genererade virtuella kolumner stöds inte" #: commands/statscmds.c:260 commands/statscmds.c:289 #, c-format @@ -10524,8 +10486,8 @@ msgstr "kan inte sätta flaggan %s för påslagen prenumeration" msgid "cannot set option \"%s\" for a subscription that does not have a slot name" msgstr "kan inte sätta flagga \"%s\" för prenumeration som inte har ett slot-namn" -#: 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 "prenumerationen \"%s\" finns inte" @@ -10536,16 +10498,14 @@ msgid "cannot set %s for enabled subscription" msgstr "kan inte sätta %s för påslagen prenumeration" #: commands/subscriptioncmds.c:1270 -#, fuzzy, c-format -#| msgid "source and target cluster are on the same timeline" +#, c-format msgid "\"slot_name\" and \"two_phase\" cannot be altered at the same time" -msgstr "källa och målkluster är på samma tidslinje" +msgstr "\"slot_name\" och \"two_phase\" kan inte ändras på samma gång" #: commands/subscriptioncmds.c:1286 -#, fuzzy, c-format -#| msgid "cannot use %s with a logical replication slot" +#, c-format msgid "cannot alter \"two_phase\" when logical replication worker is still running" -msgstr "kan inte använda %s med logisk replikeringsslot" +msgstr "kan inte ändra \"two_phase\" när arbetsprocess för logisk replikering kör" #: commands/subscriptioncmds.c:1287 #, c-format @@ -10553,16 +10513,14 @@ msgid "Try again after some time." msgstr "Försök igen efter en stund." #: commands/subscriptioncmds.c:1300 -#, fuzzy, c-format -#| msgid "database \"%s\" is being used by prepared transactions" +#, c-format msgid "cannot disable \"two_phase\" when prepared transactions exist" -msgstr "databasen \"%s\" används av förberedda transationer" +msgstr "kan inte stänga av \"two_phase\" när förberedda transationer existerar" #: commands/subscriptioncmds.c:1301 -#, fuzzy, c-format -#| msgid "Stop the standby server and try again." +#, c-format msgid "Resolve these transactions and try again." -msgstr "Stoppa standby-servern och försök igen." +msgstr "Hantera dessa transaktioner och försök igen." #: commands/subscriptioncmds.c:1348 #, c-format @@ -10615,86 +10573,86 @@ msgstr "Använd ALTER SUBSCRIPTION ... REFRESH med copy_data = false eller anvä msgid "skip WAL location (LSN %X/%X) must be greater than origin LSN %X/%X" msgstr "skip-WAL-position (LSN %X/%X) måste vara större än käll-LSN %X/%X" -#: commands/subscriptioncmds.c:1667 +#: commands/subscriptioncmds.c:1669 #, c-format msgid "subscription \"%s\" does not exist, skipping" msgstr "prenumeration \"%s\" finns inte, hoppar över" -#: commands/subscriptioncmds.c:1934 +#: commands/subscriptioncmds.c:1936 #, c-format msgid "dropped replication slot \"%s\" on publisher" msgstr "slängde replikerings-slot \"%s\" på publicerare" -#: 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 "kunde inte slänga replikeringsslotten \"%s\" på publicerare: %s" -#: commands/subscriptioncmds.c:2076 +#: commands/subscriptioncmds.c:2078 #, c-format msgid "subscription with OID %u does not exist" msgstr "prenumeration med OID %u existerar inte" -#: 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 "kunde inte ta emot lista med replikerade tabeller från publiceraren: %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 "prenumeration \"%s\" begärde copy_data med origin = NONE men kan kopiera data från en annan källa" -#: 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] "Prenumerationen som skapas läser från publlicering (%s) som innehåller tabell som skrivs till från andra prenumerationer." msgstr[1] "Prenumerationen som skapas läser från publliceringar (%s) som innehåller tabell som skrivs till från andra prenumerationer." -#: 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 "Kontrollera att den initiala datan som kopieras från publicerade tabeller inte kom från andra källor." -#: commands/subscriptioncmds.c:2296 replication/logical/tablesync.c:933 +#: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 #: replication/pgoutput/pgoutput.c:1162 #, 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" -#: 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 "kunde inte ansluta till publicerare vid försök att slänga replikeringsslot \"%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 "Använd %s för att stänga av prenumerationen och sedan %s för att dissociera den från slotten." -#: commands/subscriptioncmds.c:2380 +#: commands/subscriptioncmds.c:2382 #, c-format msgid "publication name \"%s\" used more than once" msgstr "publiceringsnamn \"%s\" använt mer än en gång" -#: commands/subscriptioncmds.c:2424 +#: commands/subscriptioncmds.c:2426 #, c-format msgid "publication \"%s\" is already in subscription \"%s\"" msgstr "publicering \"%s\" finns redan i prenumerationen \"%s\"" -#: commands/subscriptioncmds.c:2438 +#: commands/subscriptioncmds.c:2440 #, c-format msgid "publication \"%s\" is not in subscription \"%s\"" msgstr "publicering \"%s\" finns inte i prenumerationen \"%s\"" -#: commands/subscriptioncmds.c:2449 +#: commands/subscriptioncmds.c:2451 #, c-format msgid "cannot drop all the publications from a subscription" msgstr "kan inte slänga alla publiceringar från en prenumeration" -#: commands/subscriptioncmds.c:2506 +#: commands/subscriptioncmds.c:2508 #, c-format msgid "%s requires a Boolean value or \"parallel\"" msgstr "%s kräver ett booleskt värde eller \"parallel\"" @@ -10756,7 +10714,7 @@ 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 -#: parser/parse_utilcmd.c:2429 +#: parser/parse_utilcmd.c:2428 #, c-format msgid "index \"%s\" does not exist" msgstr "index \"%s\" finns inte" @@ -10895,8 +10853,8 @@ msgstr "kan inte ärva från partitionerad tabell \"%s\"" msgid "cannot inherit from partition \"%s\"" msgstr "kan inte ärva från partition \"%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 "ärvd relation \"%s\" är inte en tabell eller främmande tabell" @@ -10918,8 +10876,8 @@ 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 -#: parser/parse_utilcmd.c:1485 parser/parse_utilcmd.c:1917 -#: parser/parse_utilcmd.c:2025 +#: 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 "kan inte konvertera hela-raden-tabellreferens" @@ -10929,7 +10887,7 @@ msgstr "kan inte konvertera hela-raden-tabellreferens" msgid "Generation expression for column \"%s\" contains a whole-row reference to table \"%s\"." msgstr "Genereringsuttryck för kolumn \"%s\" innehåller en hela-raden-referens på tabellen \"%s\"." -#: 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 "Villkor \"%s\" innehåller en hela-raden-referens på tabellen \"%s\"." @@ -10956,10 +10914,9 @@ msgstr "En barntabellkolumn kan inte vara genererad om inte dess förälderkolum #: commands/tablecmds.c:3072 commands/tablecmds.c:3366 #: commands/tablecmds.c:17537 -#, fuzzy, c-format -#| msgid "column \"%s\" inherits from generated column but specifies identity" +#, c-format msgid "column \"%s\" inherits from generated column of different kind" -msgstr "kolumnen \"%s\" ärver från genererad kolumn men har \"identity\"" +msgstr "kolumnen \"%s\" ärver från genererad kolumn av annan typ" #: commands/tablecmds.c:3074 commands/tablecmds.c:3368 #: commands/tablecmds.c:17538 @@ -11210,10 +11167,9 @@ msgid "Use ALTER ... CASCADE to alter the typed tables too." msgstr "Använd ALTER ... CASCADE för att ändra på de typade tabellerna också." #: commands/tablecmds.c:7156 -#, fuzzy, c-format -#| msgid "cannot alter type \"%s\" because it is the type of a typed table" +#, c-format msgid "type %s is the row type of another table" -msgstr "kan inte ändra typ \"%s\" eftersom det är typen för en typad tabell" +msgstr "typ %s är radtyp för en annan tabell" #: commands/tablecmds.c:7158 #, c-format @@ -11370,23 +11326,20 @@ 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 -#, fuzzy, c-format -#| msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" +#, c-format msgid "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns in tables with check constraints" -msgstr "ALTER TABLE / DROP EXPRESSION måste appliceras på barntabellerna också" +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 -#, fuzzy, c-format -#| msgid "column \"%s\" of relation \"%s\" is a generated column" +#, c-format msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." -msgstr "kolumn \"%s\" i relation \"%s\" är en genererad kolumn" +msgstr "Kolumn \"%s\" i relation \"%s\" är en genererad virtuell kolumn" #: commands/tablecmds.c:8630 -#, fuzzy, c-format -#| msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" +#, 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 / DROP EXPRESSION måste appliceras på barntabellerna också" +msgstr "ALTER TABLE / SET EXPRESSION stöds inte på genererade virtuella kolumner i tabeller som är del av en publicering" #: commands/tablecmds.c:8737 #, c-format @@ -11399,16 +11352,14 @@ msgid "cannot drop generation expression from inherited column" msgstr "kan inte slänga genererat uttryck på ärvd kolumn" #: commands/tablecmds.c:8802 -#, fuzzy, c-format -#| msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" +#, c-format msgid "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" -msgstr "ALTER TABLE / DROP EXPRESSION måste appliceras på barntabellerna också" +msgstr "ALTER TABLE / DROP EXPRESSION stöds inte för genererade virtuella kolumner" #: commands/tablecmds.c:8816 -#, fuzzy, c-format -#| msgid "column \"%s\" of relation \"%s\" is not a stored generated column, skipping" +#, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" -msgstr "kolumn \"%s\" i relation \"%s\" är inte en lagrad genererad kolumn, hoppar över" +msgstr "kolumn \"%s\" i relation \"%s\" är inte en genererad kolumn, hoppar över" #: commands/tablecmds.c:8894 #, c-format @@ -11421,10 +11372,9 @@ msgid "column number %d of relation \"%s\" does not exist" msgstr "kolumnnummer %d i relation \"%s\" finns inte" #: commands/tablecmds.c:8966 -#, fuzzy, c-format -#| msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" +#, c-format msgid "cannot alter statistics on virtual generated column \"%s\"" -msgstr "kan inte ändra statistik på inkluderad kolumn \"%s\" i index \"%s\"" +msgstr "kan inte ändra statistik på genererad virtuell kolumn \"%s\"" #: commands/tablecmds.c:8975 #, c-format @@ -11472,16 +11422,14 @@ 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 -#, fuzzy, c-format -#| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." +#, c-format msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" -msgstr "Kolumn \"%s\" i relation \"%s\" är inte redan NOT NULL." +msgstr "kolumn \"%s\" i tabell \"%s\" är inte markerad NOT NULL" #: commands/tablecmds.c:9554 commands/tablecmds.c:9566 -#, fuzzy, c-format -#| msgid "cannot rename system column \"%s\"" +#, c-format msgid "cannot create primary key on column \"%s\"" -msgstr "kan inte ändra döpa om systemkolumn \"%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 @@ -11550,16 +11498,14 @@ 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 -#, fuzzy, c-format -#| msgid "index creation on system columns is not supported" +#, c-format msgid "foreign key constraints on virtual generated columns are not supported" -msgstr "skapa index för systemkolumner stöds inte" +msgstr "främmande nyckel-villkor på genererade virtuella kolumner stöds inte" #: commands/tablecmds.c:10251 commands/tablecmds.c:10260 -#, fuzzy, c-format -#| msgid "invalid %s action for foreign key constraint containing generated column" +#, c-format msgid "unsupported %s action for foreign key constraint using PERIOD" -msgstr "ogiltig %s-aktion för främmande nyckelvillkor som innehåller genererad kolumn" +msgstr "inget stöd för %s-aktion för främmande nyckelvillkor som använder PERIOD" #: commands/tablecmds.c:10275 #, c-format @@ -11567,16 +11513,14 @@ 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 -#, fuzzy, c-format -#| msgid "could not identify an ordering operator for type %s" +#, c-format msgid "could not identify an overlaps operator for foreign key" -msgstr "kunde inte identifiera en jämförelseoperator för typ %s" +msgstr "kunde inte hitta en överlappningsoperator för främmande nyckel" #: commands/tablecmds.c:10332 -#, fuzzy, c-format -#| msgid "could not identify an equality operator for type %s" +#, c-format msgid "could not identify an equality operator for foreign key" -msgstr "kunde inte hitta en likhetsoperator för typ %s" +msgstr "kunde inte hitta en likhetsoperator för främmande nyckel" #: commands/tablecmds.c:10397 commands/tablecmds.c:10431 #, c-format @@ -11584,10 +11528,9 @@ msgid "foreign key constraint \"%s\" cannot be implemented" msgstr "främmande nyckelvillkor \"%s\" kan inte implementeras" #: commands/tablecmds.c:10399 -#, fuzzy, c-format -#| msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." +#, 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\" och \"%s\" har inkompatibla typer %s och %s." +msgstr "Nyckelkolumner \"%s\" i den refererande tabellen och \"%s\" i den refererade tabellen har inkompatibla typer: %s och %s." #: commands/tablecmds.c:10432 #, c-format @@ -11611,16 +11554,14 @@ msgid "cannot attach table \"%s\" as a partition because it is referenced by for msgstr "kan inte ansluta tabell \"%s\" som en partition då den refereras av främmande nyckel \"%s\"" #: commands/tablecmds.c:11719 -#, fuzzy, c-format -#| msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" +#, c-format msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" -msgstr "villkor \"%s\" står i konflikt med ärvt villkor på relation \"%s\"" +msgstr "framtvingandestatus för villkor \"%s\" står i konflikt villkoret \"%s\" i relationen \"%s\"" #: commands/tablecmds.c:12181 -#, fuzzy, c-format -#| msgid "constraint must be validated on child tables too" +#, c-format msgid "constraint must be altered in child tables too" -msgstr "villkoret måste valideras för barntabellerna också" +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 @@ -11634,22 +11575,19 @@ 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 -#, fuzzy, c-format -#| msgid "cannot alter constraint \"%s\" on relation \"%s\"" +#, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" -msgstr "kan inte ändra villkoret \"%s\" i relation \"%s\"" +msgstr "kan inte ändra framtvingande för villkoret \"%s\" i relation \"%s\"" #: commands/tablecmds.c:12228 -#, fuzzy, c-format -#| msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" +#, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" -msgstr "villkor \"%s\" i relation \"%s\" är inte ett främmande nyckelvillkor" +msgstr "villkor \"%s\" i relation \"%s\" är inte ett icke-null-villkor" #: commands/tablecmds.c:12236 -#, fuzzy, c-format -#| msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" +#, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" -msgstr "kan inte ta bort ärvt villkor \"%s\" i relation \"%s\"" +msgstr "kan inte ändra ärvt villkor \"%s\" i relation \"%s\"" #: commands/tablecmds.c:12276 #, c-format @@ -11667,16 +11605,14 @@ 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 -#, fuzzy, c-format -#| msgid "cannot alter constraint \"%s\" on relation \"%s\"" +#, c-format msgid "cannot validate constraint \"%s\" of relation \"%s\"" -msgstr "kan inte ändra villkoret \"%s\" i relation \"%s\"" +msgstr "kan inte validera villkoret \"%s\" i relation \"%s\"" #: commands/tablecmds.c:12918 -#, fuzzy, c-format -#| msgid "This operation is not supported for composite types." +#, c-format msgid "This operation is not supported for this type of constraint." -msgstr "Denna operation stöds inte på composite-typer." +msgstr "Denna operation stöds inte för denna sorts villkor." #: commands/tablecmds.c:12923 #, c-format @@ -11969,10 +11905,9 @@ msgid "ROW triggers with transition tables are not supported in inheritance hier msgstr "ROW-triggrar med övergångstabeller stöds inte i arvshierarkier." #: commands/tablecmds.c:17518 commands/tablecmds.c:17767 -#, fuzzy, c-format -#| msgid "column \"%s\" in child table must be marked NOT NULL" +#, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" -msgstr "kolumn \"%s\" i barntabell måste vara markerad NOT NULL" +msgstr "kolumn \"%s\" i barntabell \"%s\" måste vara markerad NOT NULL" #: commands/tablecmds.c:17528 #, c-format @@ -12005,10 +11940,9 @@ 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 -#, fuzzy, c-format -#| msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" +#, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" -msgstr "villkor \"%s\" står i konflikt med NOT VALID-villkor på barntabell \"%s\"" +msgstr "villkor \"%s\" står i konflikt med NOT ENFORCED-villkor på barntabell \"%s\"" #: commands/tablecmds.c:17775 #, c-format @@ -12333,16 +12267,14 @@ msgid "Another index is already attached for partition \"%s\"." msgstr "Ett annat index är redan anslutet för partition \"%s\"." #: commands/tablecmds.c:21881 -#, fuzzy, c-format -#| msgid "invalid attribute in procedure definition" +#, c-format msgid "invalid primary key definition" -msgstr "ogiltigt attribut i procedurdefinition" +msgstr "ogiltig definition av primärnyckel" #: commands/tablecmds.c:21882 -#, fuzzy, c-format -#| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." +#, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." -msgstr "Kolumn \"%s\" i relation \"%s\" är inte redan NOT NULL." +msgstr "Kolumn \"%s\" i relation \"%s\" är inte markerad NOT NULL." #: commands/tablecmds.c:22017 #, c-format @@ -12735,7 +12667,7 @@ 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:3501 +#: executor/nodeModifyTable.c:3502 #, 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." @@ -12976,16 +12908,14 @@ msgid "specifying constraint deferrability not supported for domains" msgstr "att ange deferrable för integritetsvillkor stöds inte för domäner" #: commands/typecmds.c:1035 -#, fuzzy, c-format -#| msgid "specifying constraint deferrability not supported for domains" +#, c-format msgid "specifying GENERATED not supported for domains" -msgstr "att ange deferrable för integritetsvillkor stöds inte för domäner" +msgstr "ange GENERATED stöds inte för domäner" #: commands/typecmds.c:1043 -#, fuzzy, c-format -#| msgid "specifying constraint deferrability not supported for domains" +#, c-format msgid "specifying constraint enforceability not supported for domains" -msgstr "att ange deferrable för integritetsvillkor stöds inte för domäner" +msgstr "ange framtvingande av villkor stöds inte för domäner" #: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format @@ -13233,50 +13163,50 @@ msgstr "måste vara en superuser för att ändra en typ" msgid "%s is not a base type" msgstr "%s är inte en bastyp" -#: commands/user.c:201 +#: commands/user.c:200 #, c-format msgid "SYSID can no longer be specified" msgstr "SYSID kan inte längre anges" -#: 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 "rättighet saknas för att skapa roll" -#: commands/user.c:320 +#: commands/user.c:319 #, c-format msgid "Only roles with the %s attribute may create roles." msgstr "Bara roller med attributet %s får skapa roller." -#: 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 "Bara roller med attributet %s får skapa roller med attributet %s." -#: commands/user.c:355 commands/user.c:1386 commands/user.c:1393 gram.y:17473 +#: 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 "rollnamnet \"%s\" är reserverat" -#: 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 "Rollnamn som startar med \"pg_\" är reserverade." -#: commands/user.c:378 commands/user.c:1410 +#: commands/user.c:377 commands/user.c:1410 #, c-format msgid "role \"%s\" already exists" msgstr "rollen \"%s\" finns redan" -#: 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 "tom sträng är inte ett giltigt lösenord, nollställer lösenordet" -#: 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-värde är ej satt i binärt uppgraderingsläge" @@ -13478,86 +13408,85 @@ msgstr "flaggan %s kan inte ges tillbaka till den som givit det till dig" msgid "role \"%s\" has already been granted membership in role \"%s\" by role \"%s\"" msgstr "rollen \"%s\" har redan fått medlemskap i rollen \"%s\" av rollen \"%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 "rollen \"%s\" har inte fått medlemskap i rollen \"%s\" av rollen \"%s\"" -#: commands/user.c:2137 +#: commands/user.c:2126 #, c-format msgid "role \"%s\" cannot have explicit members" msgstr "rollen \"%s\" kan inte ha explicita medlemmar" -#: 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 "rättighet saknas för att dela ut rollen \"%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 "Bara roller med attributet %s får dela ut rättigheter med roller som har attributet %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 "rättighet saknas för att ta tillbaka rollen \"%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 "Bara roller med attributet %s får ta tillbaka rättigheter med roller som har attributet %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 "Bara roller med flaggan %s på rollen \"%s\" för dela ut denna roll." -#: 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 "Bara roller med flaggan %s på rollen \"%s\" kan dra tillbaka denna roll." -#: 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 "rättighet saknas att dela ut rättigheter som rollen \"%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 "Bara roller med rättigheter från rollen \"%s\" får dela ut rättigheter för den rollen." -#: commands/user.c:2271 +#: commands/user.c:2260 #, c-format msgid "The grantor must have the %s option on role \"%s\"." msgstr "Utfärdaren måste ha flaggan %s på roll \"%s\"" -#: commands/user.c:2279 +#: commands/user.c:2268 #, c-format msgid "permission denied to revoke privileges granted by role \"%s\"" msgstr "rättighet saknas att ta bort rättighet som utfärdats av roll \"%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 "Bara roller med rättigheter från rollen \"%s\" får ta bort rättigheter som delats ut av den rollen." -#: 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 "det finns beroende privilegier" -#: 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 "Använd CASCADE för att återkalla dem med." #: commands/vacuum.c:147 -#, fuzzy, c-format -#| msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" +#, c-format msgid "\"%s\" must be 0 or between %d kB and %d kB." -msgstr "\"vacuum_buffer_usage_limit\" måste vara 0 eller mellan %d kB och %d kB" +msgstr "\"%s\" måste vara 0 eller mellan %d kB och %d kB" #: commands/vacuum.c:223 #, c-format @@ -13655,10 +13584,9 @@ msgid "skipping analyze of \"%s\" --- relation no longer exists" msgstr "hoppar över analys av \"%s\" --- relationen finns inte längre" #: commands/vacuum.c:989 -#, fuzzy, c-format -#| msgid "partitioned table \"%s\" was removed concurrently" +#, c-format msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" -msgstr "partitionerad tabell \"%s\" togs bort parallellt" +msgstr "VACUUM ONLY för partitionerad tabell \"%s\" har ingen effekt" #: commands/vacuum.c:1180 #, c-format @@ -13695,10 +13623,9 @@ 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 -#, fuzzy, c-format -#| msgid "scanned index \"%s\" to remove %lld row versions" +#, c-format msgid "scanned index \"%s\" to remove % row versions" -msgstr "genomsökte index \"%s\" för att ta bort %lld radversioner" +msgstr "genomsökte index \"%s\" för att ta bort % radversioner" #: commands/vacuum.c:2669 #, c-format @@ -13731,10 +13658,9 @@ msgstr[0] "startade %d parallell städarbetare för indexupprensning (planerat: msgstr[1] "startade %d parallella städarbetare för indexupprensning (planerat: %d)" #: commands/variable.c:185 -#, fuzzy, c-format -#| msgid "Conflicting \"datestyle\" specifications." +#, c-format msgid "Conflicting \"DateStyle\" specifications." -msgstr "Motstridiga \"datestyle\"-angivelser." +msgstr "Motstridiga \"DateStyle\"-angivelser." #: commands/variable.c:307 #, c-format @@ -13807,10 +13733,9 @@ msgid "SET TRANSACTION [NOT] DEFERRABLE must be called before any query" msgstr "SET TRANSACTION [NOT] DEFERRABLE måste anropas innan någon fråga" #: commands/variable.c:715 -#, fuzzy, c-format -#| msgid "cannot change \"client_encoding\" during a parallel operation" +#, c-format msgid "Cannot change \"client_encoding\" during a parallel operation." -msgstr "kan inte ändra \"client_encoding\" under en parallell operation" +msgstr "Kan inte ändra \"client_encoding\" under en parallell operation" #: commands/variable.c:743 #, c-format @@ -13973,7 +13898,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:843 +#: executor/execExpr.c:1157 parser/parse_agg.c:869 #, c-format msgid "window function calls cannot be nested" msgstr "fönsterfunktionanrop kan inte nästlas" @@ -13996,7 +13921,7 @@ msgid_plural "cannot pass more than %d arguments to a function" msgstr[0] "kan inte överföra mer än %d argument till en funktion" msgstr[1] "kan inte överföra mer än %d argument till en funktion" -#: executor/execExpr.c:2756 executor/execSRF.c:738 executor/functions.c:1581 +#: 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" @@ -14162,139 +14087,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:1066 +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "kan inte ändra sekvens \"%s\"" -#: executor/execMain.c:1072 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "kan inte ändra TOAST-relation \"%s\"" -#: executor/execMain.c:1091 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "kan inte ändra materialiserad vy \"%s\"" -#: executor/execMain.c:1103 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "kan inte sätta in i främmande tabell \"%s\"" -#: executor/execMain.c:1109 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "främmande tabell \"%s\" tillåter inte insättningar" -#: executor/execMain.c:1116 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "kan inte uppdatera främmande tabell \"%s\"" -#: executor/execMain.c:1122 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "främmande tabell \"%s\" tillåter inte uppdateringar" -#: executor/execMain.c:1129 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "kan inte radera från främmande tabell \"%s\"" -#: executor/execMain.c:1135 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "främmande tabell \"%s\" tillåter inte radering" -#: executor/execMain.c:1146 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "kan inte ändra relation \"%s\"" -#: executor/execMain.c:1173 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "kan inte låsa rader i sekvens \"%s\"" -#: executor/execMain.c:1180 +#: executor/execMain.c:1199 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "kan inte låsa rader i TOAST-relation \"%s\"" -#: executor/execMain.c:1187 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "kan inte låsa rader i vy \"%s\"" -#: executor/execMain.c:1195 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "kan inte låsa rader i materialiserad vy \"%s\"" -#: executor/execMain.c:1204 executor/execMain.c:2836 +#: executor/execMain.c:1223 executor/execMain.c:2855 #: 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:1210 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "kan inte låsa rader i relation \"%s\"" -#: executor/execMain.c:1933 +#: executor/execMain.c:1952 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "ny rad för relation \"%s\" bryter mot partitionesvillkoret" -#: executor/execMain.c:1935 executor/execMain.c:2047 executor/execMain.c:2185 -#: executor/execMain.c:2293 +#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 +#: executor/execMain.c:2312 #, c-format msgid "Failing row contains %s." msgstr "Misslyckande rad innehåller %s." -#: executor/execMain.c:2045 +#: executor/execMain.c:2064 #, 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:2182 +#: executor/execMain.c:2201 #, 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:2291 +#: executor/execMain.c:2310 #, 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:2301 +#: executor/execMain.c:2320 #, 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:2306 +#: executor/execMain.c:2325 #, 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:2314 +#: executor/execMain.c:2333 #, 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:2319 +#: executor/execMain.c:2338 #, 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:2326 +#: executor/execMain.c:2345 #, 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:2331 +#: executor/execMain.c:2350 #, 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\"" @@ -14439,87 +14364,87 @@ msgstr "har ingen lagringstupel i detta kontext" msgid "materialized view \"%s\" has not been populated" msgstr "materialiserad vy \"%s\" har inte populerats" -#: executor/functions.c:291 +#: executor/functions.c:292 #, c-format msgid "could not determine actual type of argument declared %s" msgstr "kunde inte bestämma den verkliga typen för argument deklarerat som %s" -#: executor/functions.c:714 +#: executor/functions.c:737 #, c-format msgid "cannot COPY to/from client in an SQL function" msgstr "kan inte göra COPY till/från klient i en SQL-funktion" #. 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 är inte tillåtet i en SQL-funktion" #. 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 tillåts inte i en icke-volatile-funktion" -#: 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 "returtypen stämmer inte i funktion deklarerad att returnera %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 "Funktionen sista sats måste vara en SELECT eller 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 "cache:ad plan får inte ändra resultattyp" -#: 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-funktion \"%s\" under uppstart" -#: executor/functions.c:1921 +#: executor/functions.c:1950 #, c-format msgid "SQL function \"%s\" statement %d" msgstr "SQL-funktion \"%s\" sats %d" -#: executor/functions.c:2046 +#: executor/functions.c:2075 #, c-format msgid "calling procedures with output arguments is not supported in SQL functions" msgstr "anropa procedurer med output-argument stöds inte i SQL-funktioner" -#: executor/functions.c:2235 +#: executor/functions.c:2264 #, c-format msgid "Final statement must return exactly one column." msgstr "Sista satsen måste returnera exakt en kolumn." -#: executor/functions.c:2249 +#: executor/functions.c:2278 #, c-format msgid "Actual return type is %s." msgstr "Verklig returtyp är %s." -#: executor/functions.c:2339 +#: executor/functions.c:2368 #, c-format msgid "Final statement returns too many columns." msgstr "Sista satsen returnerar för många kolumner." -#: executor/functions.c:2372 +#: executor/functions.c:2401 #, c-format msgid "Final statement returns %s instead of %s at column %d." msgstr "Sista satsen returnerar %s istället för %s vid column %d." -#: executor/functions.c:2386 +#: executor/functions.c:2415 #, c-format msgid "Final statement returns too few columns." msgstr "Sista satsen returnerar för få kolumner." -#: executor/functions.c:2414 +#: executor/functions.c:2443 #, c-format msgid "return type %s is not supported for SQL functions" msgstr "returtyp %s stöds inte för SQL-funktioner" @@ -14611,7 +14536,7 @@ 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:3507 +#: executor/nodeModifyTable.c:3508 #, c-format msgid "%s command cannot affect row a second time" msgstr "%s-kommandot kan inte påverka raden en andra gång" @@ -14621,12 +14546,12 @@ 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:3500 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 #, 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:3509 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 #, 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." @@ -14646,8 +14571,8 @@ msgstr "parametern TABLESAMPLE kan inte vara null" msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "parametern TABLESAMPLE REPEATABLE kan inte vara null" -#: 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 "mer än en rad returnerades från underfråga som används som uttryck" @@ -14795,7 +14720,7 @@ 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 -#: optimizer/util/plancat.c:538 +#: optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" msgstr "access till icke-system främmande tabell är begränsad" @@ -14934,7 +14859,7 @@ msgstr "CREATE OR REPLACE CONSTRAINT TRIGGER stöds inte" msgid "duplicate trigger events specified" msgstr "multipla triggerhändelser angivna" -#: 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 "villkor deklarerat INITIALLY DEFERRED måste vara DEFERRABLE" @@ -15378,10 +15303,9 @@ msgid "Client did not send a kvsep response." msgstr "Klienten skickade inte kvsep-respons." #: libpq/auth-oauth.c:221 -#, fuzzy, c-format -#| msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data." +#, c-format msgid "The server does not support channel binding for OAuth, but the client message includes channel binding data." -msgstr "Klienten valde SCRAM-SHA-256 utan kanalbindning men SCRAM-meddelandet innehåller kanalbindningsdata." +msgstr "Servern stöder inte kanalbindning för OAuth men klientens meddelande innehåller data för kanalbindning." #: libpq/auth-oauth.c:231 libpq/auth-scram.c:1003 libpq/auth-scram.c:1033 #, c-format @@ -15404,16 +15328,14 @@ msgid "Unexpected attribute \"%s\" in client-first-message." msgstr "Oväntat attribut \"%s\" i klient-först-meddelande." #: libpq/auth-oauth.c:264 -#, fuzzy, c-format -#| msgid "Comma expected, but found character \"%s\"." +#, c-format msgid "Key-value separator expected, but found character \"%s\"." -msgstr "Komma förväntades men hittade tecken \"%s\"." +msgstr "Nyckel-värde-separator förväntades men hitta tecknet \"%s\"." #: libpq/auth-oauth.c:273 -#, fuzzy, c-format -#| msgid "File \"%s\" does not contain valid data." +#, c-format msgid "Message does not contain an auth value." -msgstr "Filen \"%s\" innehåller inte giltig data." +msgstr "Meddelandet innehåller inte ett auth-värde." #: libpq/auth-oauth.c:280 #, c-format @@ -15431,10 +15353,9 @@ msgid "Message contains an invalid key name." msgstr "Meddelandet innehåller ett ogilitgt nyckelnamn." #: libpq/auth-oauth.c:376 -#, fuzzy, c-format -#| msgid "enum %s contains no values" +#, c-format msgid "Message contains an invalid value." -msgstr "enum %s innehåller inga värden" +msgstr "Meddelande innehåller ett ogiltigt värde." #: libpq/auth-oauth.c:421 #, c-format @@ -15512,15 +15433,14 @@ msgid "Validator provided no identity." msgstr "Validatorn gav ingen identitet." #: libpq/auth-oauth.c:760 -#, fuzzy, c-format +#, c-format msgid "%s module \"%s\" must define the symbol %s" msgstr "%s-modul \"%s\" måste definiera symbolen %s" #: libpq/auth-oauth.c:773 -#, fuzzy, c-format -#| msgid "incompatible library \"%s\": magic block mismatch" +#, c-format msgid "%s module \"%s\": magic number mismatch" -msgstr "inkompatibelt bibliotek \"%s\": magiskt block matchar inte" +msgstr "%s modul \"%s\": magiskt block matchar inte" #: libpq/auth-oauth.c:775 #, c-format @@ -15533,10 +15453,9 @@ msgid "%s module \"%s\" must provide a %s callback" msgstr "%s-modul \"%s\" måste ge en %s-callback" #: libpq/auth-oauth.c:833 -#, fuzzy, c-format -#| msgid "authentication option \"%s\" is only valid for authentication methods %s" +#, c-format msgid "oauth_validator_libraries must be set for authentication method %s" -msgstr "autentiseringsflagga \"%s\" är bara giltig för autentiseringsmetoder %s" +msgstr "oauth_validator_libraries måste sättas för autentiseringsmetod %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 @@ -15964,16 +15883,14 @@ msgid "could not get peer credentials: %m" msgstr "kunde inte hämta peer-referenser: %m" #: libpq/auth.c:1888 -#, fuzzy, c-format -#| msgid "could not look up local user ID %ld: %s" +#, c-format msgid "could not look up local user ID %ld: %m" -msgstr "kunde inte slå upp lokalt användar-id %ld: %s" +msgstr "kunde inte slå upp lokalt användar-id %ld: %m" #: libpq/auth.c:1894 -#, fuzzy, c-format -#| msgid "local user with ID %d does not exist" +#, c-format msgid "local user with ID %ld does not exist" -msgstr "lokal användare med ID %d existerar inte" +msgstr "lokal användare med ID %ld existerar inte" #: libpq/auth.c:1994 #, c-format @@ -16417,16 +16334,14 @@ msgid "\"%s\" cannot be higher than \"%s\"" msgstr "\"%s\" får inte vara högre än \"%s\"" #: libpq/be-secure-openssl.c:295 -#, fuzzy, c-format -#| msgid "could not set the cipher list (no valid ciphers available)" +#, c-format msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" -msgstr "kunde inte sätta kryptolistan (inga giltiga krypton är tillgängliga)" +msgstr "kunde inte sätta kryptolistan för TLSv1.2 (inga giltiga krypton är tillgängliga)" #: libpq/be-secure-openssl.c:310 -#, fuzzy, c-format -#| msgid "could not set the cipher list (no valid ciphers available)" +#, c-format msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" -msgstr "kunde inte sätta kryptolistan (inga giltiga krypton är tillgängliga)" +msgstr "kunde inte sätta kryptolistan för TLSv1.3 (inga giltiga krypton är tillgängliga)" #: libpq/be-secure-openssl.c:331 #, c-format @@ -16559,10 +16474,9 @@ msgid "DH: could not set DH parameters: %s" msgstr "DH: kunde inte sätta DH-parametrar: %s" #: libpq/be-secure-openssl.c:1439 -#, fuzzy, c-format -#| msgid "could not set group of file \"%s\": %m" +#, c-format msgid "could not set group names specified in ssl_groups: %s" -msgstr "kunde inte sätta gruppen på filen \"%s\": %m" +msgstr "kunde inte sätta gruppnamn angivna i ssl_groups: %s" #: libpq/be-secure-openssl.c:1441 msgid "No valid groups found" @@ -16613,10 +16527,9 @@ msgid "User \"%s\" has an expired password." msgstr "Användaren \"%s\" har ett utgånget lösenord." #: libpq/crypt.c:174 -#, fuzzy, c-format -#| msgid "directory path for new cluster is too long" +#, c-format msgid "encrypted password is too long" -msgstr "katalogsökväg för nytt kluster är för lång" +msgstr "krypterat lösenord är för långt" #: libpq/crypt.c:175 #, c-format @@ -16842,7 +16755,7 @@ msgstr "autentiseringsflagga et på formatet namn=värde: %s" #: libpq/hba.c:1918 #, c-format msgid "cannot mix options for simple bind and search+bind modes" -msgstr "" +msgstr "kan inte blanda flaggor för lägen \"simple bind\" och \"search+bind\"" #: libpq/hba.c:1929 #, c-format @@ -16881,16 +16794,13 @@ msgstr "antalet RADIUS-identifierare (%d) måste vara 1 eller samma som antalet #. translator: strings are replaced with hba options #: libpq/hba.c:2067 -#, fuzzy, c-format -#| msgid "COPY %s cannot be used with %s" +#, c-format msgid "%s cannot be used in combination with %s" -msgstr "COPY %s kan inte användas med %s" +msgstr "%s kan inte användas ihop med %s" #: libpq/hba.c:2105 -#, fuzzy -#| msgid "ident, peer, gssapi, sspi, and cert" msgid "ident, peer, gssapi, sspi, cert, and oauth" -msgstr "ident, peer, gssapi, sspi och cert" +msgstr "ident, peer, gssapi, sspi, cert och oauth" #: libpq/hba.c:2114 #, c-format @@ -17584,43 +17494,41 @@ msgid "could not implement %s" msgstr "kunde inte implementera %s" #: optimizer/util/appendinfo.c:165 -#, fuzzy, c-format -#| msgid "constraint \"%s\" of relation \"%s\" does not exist" +#, c-format msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" -msgstr "villkor \"%s\" i relation \"%s\" finns inte" +msgstr "attribut \"%s\" i relation \"%s\" matchar inte förälderns typ" #: optimizer/util/appendinfo.c:170 -#, fuzzy, c-format -#| msgid "constraint \"%s\" of relation \"%s\" does not exist" +#, c-format msgid "attribute \"%s\" of relation \"%s\" does not match parent's collation" -msgstr "villkor \"%s\" i relation \"%s\" finns inte" +msgstr "attribut \"%s\" i relation \"%s\" matchar inte föräldens jämförelser (collation)" -#: optimizer/util/clauses.c:4966 +#: optimizer/util/clauses.c:4968 #, c-format msgid "SQL function \"%s\" during inlining" msgstr "SQL-funktion \"%s\" vid inline:ing" -#: optimizer/util/plancat.c:153 +#: optimizer/util/plancat.c:154 #, c-format 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:770 +#: optimizer/util/plancat.c:771 #, 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:787 +#: optimizer/util/plancat.c:788 #, 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:837 +#: optimizer/util/plancat.c:838 #, 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:954 +#: optimizer/util/plancat.c:955 #, 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" @@ -17693,10 +17601,9 @@ msgstr "målkolumner för SET kan inte kvalifiiceras med ett relationsnamn." #. translator: %s is OLD or NEW #: parser/analyze.c:2668 parser/analyze.c:2678 -#, fuzzy, c-format -#| msgid "NEW TABLE cannot be specified multiple times" +#, c-format msgid "%s cannot be specified multiple times" -msgstr "NEW TABLE kan inte anges flera gånger" +msgstr "%s kan inte anges flera gånger" #: parser/analyze.c:2690 parser/parse_relation.c:473 #, c-format @@ -17860,7 +17767,7 @@ msgstr "relationen \"%s\" i %s-klausul hittades inte i FROM-klausul" #: parser/parse_agg.c:215 parser/parse_oper.c:215 #, c-format msgid "could not identify an ordering operator for type %s" -msgstr "kunde inte identifiera en jämförelseoperator för typ %s" +msgstr "kunde inte hitta en ordningsoperator för typ %s" #: parser/parse_agg.c:217 #, c-format @@ -18073,115 +17980,115 @@ msgstr "Du kanske kan flytta den mängdreturnerande funktionen in i en LATERAL F msgid "aggregate function calls cannot contain window function calls" msgstr "aggregatfunktionsanrop kan inte innehålla fönsterfunktionanrop" -#: parser/parse_agg.c:869 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in JOIN conditions" msgstr "fönsterfunktioner tillåts inte i JOIN-villkor" -#: parser/parse_agg.c:876 +#: parser/parse_agg.c:902 msgid "window functions are not allowed in functions in FROM" msgstr "fönsterfunktioner tillåts inte i funktioner i FROM" -#: parser/parse_agg.c:882 +#: parser/parse_agg.c:908 msgid "window functions are not allowed in policy expressions" msgstr "fönsterfunktioner tillåts inte i policy-uttryck" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:921 msgid "window functions are not allowed in window definitions" msgstr "fönsterfunktioner tillåts inte i fönsterdefinitioner" -#: parser/parse_agg.c:906 +#: parser/parse_agg.c:932 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "fönsterfunktioner tillåts inte i MERGE WHEN-villkor" -#: parser/parse_agg.c:931 +#: parser/parse_agg.c:957 msgid "window functions are not allowed in check constraints" msgstr "fönsterfunktioner tillåts inte i check-villkor" -#: parser/parse_agg.c:935 +#: parser/parse_agg.c:961 msgid "window functions are not allowed in DEFAULT expressions" msgstr "fönsterfunktioner tillåts inte i DEFAULT-uttryck" -#: parser/parse_agg.c:938 +#: parser/parse_agg.c:964 msgid "window functions are not allowed in index expressions" msgstr "fönsterfunktioner tillåts inte i indexuttryck" -#: parser/parse_agg.c:941 +#: parser/parse_agg.c:967 msgid "window functions are not allowed in statistics expressions" msgstr "fönsterfunktioner tillåts inte i statistikuttryck" -#: parser/parse_agg.c:944 +#: parser/parse_agg.c:970 msgid "window functions are not allowed in index predicates" msgstr "fönsterfunktioner tillåts inte i indexpredikat" -#: parser/parse_agg.c:947 +#: parser/parse_agg.c:973 msgid "window functions are not allowed in transform expressions" msgstr "fönsterfunktioner tillåts inte i transform-uttrycket" -#: parser/parse_agg.c:950 +#: parser/parse_agg.c:976 msgid "window functions are not allowed in EXECUTE parameters" msgstr "fönsterfunktioner tillåts inte i EXECUTE-parametrar" -#: parser/parse_agg.c:953 +#: parser/parse_agg.c:979 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "fönsterfunktioner tillåts inte i WHEN-villkor" -#: parser/parse_agg.c:956 +#: parser/parse_agg.c:982 msgid "window functions are not allowed in partition bound" msgstr "fönsterfunktioner tillåts inte i partitiongräns" -#: parser/parse_agg.c:959 +#: parser/parse_agg.c:985 msgid "window functions are not allowed in partition key expressions" msgstr "fönsterfunktioner tillåts inte i partitionsnyckeluttryck" -#: parser/parse_agg.c:962 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in CALL arguments" msgstr "fönsterfunktioner tillåts inte i CALL-argument" -#: parser/parse_agg.c:965 +#: parser/parse_agg.c:991 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:968 +#: parser/parse_agg.c:994 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:991 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1017 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:1025 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "fönster \"%s\" finns inte" -#: parser/parse_agg.c:1115 +#: parser/parse_agg.c:1141 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "för många grupperingsmängder (maximalt 4096)" -#: parser/parse_agg.c:1276 +#: parser/parse_agg.c:1302 #, 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:1499 +#: parser/parse_agg.c:1525 #, 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:1502 +#: parser/parse_agg.c:1528 #, 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:1507 +#: parser/parse_agg.c:1533 #, 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:1672 +#: parser/parse_agg.c:1698 #, 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" @@ -18425,12 +18332,12 @@ msgstr "ON CONFLICT stöds inte på tabell \"%s\" som används som katalogtabell #: parser/parse_clause.c:3462 #, c-format msgid "operator %s is not a valid ordering operator" -msgstr "operator %s är inte en giltig sorteringsoperator" +msgstr "operator %s är inte en giltig ordningsoperator" #: parser/parse_clause.c:3464 #, c-format msgid "Ordering operators must be \"<\" or \">\" members of btree operator families." -msgstr "Sorteringsoperationer måste vara \"<\"- eller \">\"-medlemmar i btree-operatorfamiljer." +msgstr "Ordningspperationer måste vara \"<\"- eller \">\"-medlemmar i btree-operatorfamiljer." #: parser/parse_clause.c:3778 #, c-format @@ -19900,16 +19807,14 @@ msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" msgstr "motstridiga NULL/NOT NULL-villkor för kolumnen \"%s\" i tabell \"%s\"" #: parser/parse_utilcmd.c:759 parser/parse_utilcmd.c:1077 -#, fuzzy, c-format -#| msgid "check constraints for domains cannot be marked NO INHERIT" +#, c-format msgid "not-null constraints on partitioned tables cannot be NO INHERIT" -msgstr "check-villkor för domäner kan inte markeras NO INHERIT" +msgstr "icke-null-villkor för partitionerade tabeller kan inte vara NO INHERIT" #: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 -#, fuzzy, c-format -#| msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" +#, c-format msgid "conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" -msgstr "motstridiga NULL/NOT NULL-villkor för kolumnen \"%s\" i tabell \"%s\"" +msgstr "motstridiga NO INHERIT-deklarationer för icke-null-villkor på kolumnen \"%s\"" #: parser/parse_utilcmd.c:821 #, c-format @@ -19976,262 +19881,259 @@ msgstr "uteslutningsvillkor stöds inte på främmande tabeller" msgid "relation \"%s\" is invalid in LIKE clause" msgstr "relationen \"%s\" är ogiltig i LIKE-klausul" -#: 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 "Index \"%s\" innehåller en hela-raden-referens." -#: parser/parse_utilcmd.c:2420 +#: parser/parse_utilcmd.c:2419 #, c-format msgid "cannot use an existing index in CREATE TABLE" msgstr "kan inte använda ett existerande index i CREATE TABLE" -#: parser/parse_utilcmd.c:2440 +#: parser/parse_utilcmd.c:2439 #, c-format msgid "index \"%s\" is already associated with a constraint" msgstr "index \"%s\" är redan associerad med ett villkor" -#: parser/parse_utilcmd.c:2466 +#: parser/parse_utilcmd.c:2465 #, c-format msgid "\"%s\" is not a unique index" msgstr "\"%s\" är inte ett unikt index" -#: 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 "Kan inte skapa en primärnyckel eller ett unikt villkor med hjälp av ett sådant index." -#: parser/parse_utilcmd.c:2473 +#: parser/parse_utilcmd.c:2472 #, c-format msgid "index \"%s\" contains expressions" msgstr "index \"%s\" innehåller uttryck" -#: parser/parse_utilcmd.c:2480 +#: parser/parse_utilcmd.c:2479 #, c-format msgid "\"%s\" is a partial index" msgstr "\"%s\" är ett partiellt index" -#: parser/parse_utilcmd.c:2492 +#: parser/parse_utilcmd.c:2491 #, c-format msgid "\"%s\" is a deferrable index" msgstr "\"%s\" är ett \"deferrable\" index" -#: parser/parse_utilcmd.c:2493 +#: parser/parse_utilcmd.c:2492 #, c-format msgid "Cannot create a non-deferrable constraint using a deferrable index." msgstr "Kan inte skapa ett icke-\"deferrable\" integritetsvillkor från ett \"deferrable\" index." -#: 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 "index \"%s\" kolumn nummer %d har ingen standard för sorteringsbeteende" -#: parser/parse_utilcmd.c:2748 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "kolumn \"%s\" finns med två gånger i primära nyckel-villkoret" -#: parser/parse_utilcmd.c:2754 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "kolumn \"%s\" finns med två gånger i unique-villkoret" -#: 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 "kolumn \"%s\" i WITHOUT OVERLAPS är inte av typen range eller multirange" -#: parser/parse_utilcmd.c:2827 +#: parser/parse_utilcmd.c:2826 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" msgstr "villkor som använder WITHOUT OVERLAPS kräver minst två kolumner" -#: 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 "indexuttryck och predikat kan bara referera till tabellen som indexeras" -#: parser/parse_utilcmd.c:3196 +#: parser/parse_utilcmd.c:3195 #, c-format msgid "statistics expressions can refer only to the table being referenced" msgstr "statistikuttryck kan bara referera till tabellen som är refererad" -#: parser/parse_utilcmd.c:3239 +#: parser/parse_utilcmd.c:3238 #, c-format msgid "rules on materialized views are not supported" msgstr "regler på materialiserade vyer stöds inte" -#: parser/parse_utilcmd.c:3299 +#: parser/parse_utilcmd.c:3298 #, c-format msgid "rule WHERE condition cannot contain references to other relations" msgstr "WHERE-villkor i regel kan inte innehålla referenser till andra relationer" -#: 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 "regler med WHERE-villkor kan bara innehålla SELECT-, INSERT-, UPDATE- eller DELETE-handlingar" -#: parser/parse_utilcmd.c:3389 parser/parse_utilcmd.c:3490 +#: parser/parse_utilcmd.c:3388 parser/parse_utilcmd.c:3489 #: rewrite/rewriteHandler.c:546 rewrite/rewriteManip.c:1190 #, c-format msgid "conditional UNION/INTERSECT/EXCEPT statements are not implemented" msgstr "UNION-/INTERSECT-/EXCEPT-satser med villkor är inte implementerat" -#: parser/parse_utilcmd.c:3407 +#: parser/parse_utilcmd.c:3406 #, c-format msgid "ON SELECT rule cannot use OLD" msgstr "ON SELECT-regel kan inte använda OLD" -#: parser/parse_utilcmd.c:3411 +#: parser/parse_utilcmd.c:3410 #, c-format msgid "ON SELECT rule cannot use NEW" msgstr "ON SELECT-regel kan inte använda NEW" -#: parser/parse_utilcmd.c:3420 +#: parser/parse_utilcmd.c:3419 #, c-format msgid "ON INSERT rule cannot use OLD" msgstr "ON INSERT-regel kan inte använda OLD" -#: parser/parse_utilcmd.c:3426 +#: parser/parse_utilcmd.c:3425 #, c-format msgid "ON DELETE rule cannot use NEW" msgstr "ON DELETE-regel kan inte använda NEW" -#: parser/parse_utilcmd.c:3454 +#: parser/parse_utilcmd.c:3453 #, c-format msgid "cannot refer to OLD within WITH query" msgstr "kan inte referera till OLD i WITH-fråga" -#: parser/parse_utilcmd.c:3461 +#: parser/parse_utilcmd.c:3460 #, c-format msgid "cannot refer to NEW within WITH query" msgstr "kan inte referera till NEW i WITH-fråga" -#: parser/parse_utilcmd.c:3919 +#: parser/parse_utilcmd.c:3918 #, c-format msgid "misplaced DEFERRABLE clause" msgstr "felplacerad DEFERRABLE-klausul" -#: 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 "multipla DEFERRABLE/NOT DEFERRABLE-klausuler tillåts inte" -#: parser/parse_utilcmd.c:3934 +#: parser/parse_utilcmd.c:3933 #, c-format msgid "misplaced NOT DEFERRABLE clause" msgstr "felplacerad NOT DEFERRABLE-klausul" -#: parser/parse_utilcmd.c:3955 +#: parser/parse_utilcmd.c:3954 #, c-format msgid "misplaced INITIALLY DEFERRED clause" msgstr "felplacerad INITIALLY DEFERRED-klausul" -#: 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 "multipla INITIALLY IMMEDIATE/DEFERRED-klausuler tillåts inte" -#: parser/parse_utilcmd.c:3981 +#: parser/parse_utilcmd.c:3980 #, c-format msgid "misplaced INITIALLY IMMEDIATE clause" msgstr "felplacerad klausul INITIALLY IMMEDIATE" -#: parser/parse_utilcmd.c:3998 -#, fuzzy, c-format -#| msgid "misplaced DEFERRABLE clause" +#: parser/parse_utilcmd.c:3997 +#, c-format msgid "misplaced ENFORCED clause" -msgstr "felplacerad DEFERRABLE-klausul" +msgstr "felplacerad ENFORCED-klausul" -#: parser/parse_utilcmd.c:4003 parser/parse_utilcmd.c:4020 -#, fuzzy, c-format -#| msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" +#: parser/parse_utilcmd.c:4002 parser/parse_utilcmd.c:4019 +#, c-format msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" -msgstr "multipla DEFERRABLE/NOT DEFERRABLE-klausuler tillåts inte" +msgstr "multipla ENFORCED/NOT ENFORCED-klausuler tillåts inte" -#: parser/parse_utilcmd.c:4015 -#, fuzzy, c-format -#| msgid "misplaced NOT DEFERRABLE clause" +#: parser/parse_utilcmd.c:4014 +#, c-format msgid "misplaced NOT ENFORCED clause" -msgstr "felplacerad NOT DEFERRABLE-klausul" +msgstr "felplacerad NOT ENFORCED-klausul" -#: 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 "CREATE anger ett schema (%s) som skiljer sig från det som skapas (%s)" -#: parser/parse_utilcmd.c:4248 +#: parser/parse_utilcmd.c:4247 #, c-format msgid "\"%s\" is not a partitioned table" msgstr "\"%s\" är inte en partitionerad tabell" -#: parser/parse_utilcmd.c:4255 +#: parser/parse_utilcmd.c:4254 #, c-format msgid "table \"%s\" is not partitioned" msgstr "tabell \"%s\" är inte partitionerad" -#: parser/parse_utilcmd.c:4262 +#: parser/parse_utilcmd.c:4261 #, c-format msgid "index \"%s\" is not partitioned" msgstr "index \"%s\" är inte partitionerad" -#: parser/parse_utilcmd.c:4302 +#: parser/parse_utilcmd.c:4301 #, c-format msgid "a hash-partitioned table may not have a default partition" msgstr "en hash-partitionerad tabell får inte ha en standardpartition" -#: parser/parse_utilcmd.c:4319 +#: parser/parse_utilcmd.c:4318 #, c-format msgid "invalid bound specification for a hash partition" msgstr "ogiltig gränsangivelse för hash-partition" -#: 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 "modulo för hash-partition vara ett heltalsvärde större än noll" -#: 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 "rest för hash-partition måste vara lägre än modulo" -#: parser/parse_utilcmd.c:4345 +#: parser/parse_utilcmd.c:4344 #, c-format msgid "invalid bound specification for a list partition" msgstr "ogiltig gränsangivelse för listpartition" -#: parser/parse_utilcmd.c:4398 +#: parser/parse_utilcmd.c:4397 #, c-format msgid "invalid bound specification for a range partition" msgstr "ogiltig gränsangivelse för range-partition" -#: parser/parse_utilcmd.c:4404 +#: parser/parse_utilcmd.c:4403 #, c-format msgid "FROM must specify exactly one value per partitioning column" msgstr "FROM måste ge exakt ett värde per partitionerande kolumn" -#: parser/parse_utilcmd.c:4408 +#: parser/parse_utilcmd.c:4407 #, c-format 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:4522 +#: parser/parse_utilcmd.c:4521 #, c-format msgid "cannot specify NULL in range bound" msgstr "kan inte ange NULL i range-gräns" -#: parser/parse_utilcmd.c:4571 +#: parser/parse_utilcmd.c:4570 #, 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:4578 +#: parser/parse_utilcmd.c:4577 #, 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:4621 +#: parser/parse_utilcmd.c:4620 #, 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\"" @@ -20599,13 +20501,12 @@ msgstr "\"autovacuum_max_workers\" (%d) skall vara mindre än eller lika med \"a #: postmaster/autovacuum.c:3470 #, c-format msgid "The server will only start up to \"autovacuum_worker_slots\" (%d) autovacuum workers at a given time." -msgstr "" +msgstr "Servern kommer bara start upp till \"autovacuum_worker_slots\" (%d) autovacuum-arbetare i taget." #: postmaster/bgworker.c:260 -#, fuzzy, c-format -#| msgid "inconsistent background worker state (max_worker_processes=%d, total_slots=%d)" +#, c-format msgid "inconsistent background worker state (\"max_worker_processes\"=%d, total slots=%d)" -msgstr "inkonsistent tillstånd i bakgrundsarbetare (max_worker_processes=%d, total_slots=%d)" +msgstr "inkonsistent tillstånd i bakgrundsarbetare (\"max_worker_processes\"=%d, total_slots=%d)" #: postmaster/bgworker.c:646 #, c-format @@ -21475,45 +21376,44 @@ msgid "logical replication apply worker will serialize the remaining changes of msgstr "logiska replikeringens ändringsapplicerare kommer spara ner återstående ändringarna av fjärrtransaktion %u til en fil" #: replication/logical/conflict.c:126 -#, fuzzy, c-format -#| msgid "cannot use column list for relation \"%s.%s\" in publication \"%s\"" +#, c-format msgid "conflict detected on relation \"%s.%s\": conflict=%s" -msgstr "kan inte använda kolumnlista för relationen \"%s.%s\" i publiceringen \"%s\"" +msgstr "konflikt upptäcktes i relationen \"%s.%s\": konflikt=%s" #: replication/logical/conflict.c:223 #, c-format msgid "Key already exists in unique index \"%s\", modified locally in transaction %u at %s." -msgstr "" +msgstr "Nyckel finns redan i unikindex \"%s\", lokalt modifierat i transaktion %u vid %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 "Nyckel finns redan i unikindex \"%s\", modifierat av origin \"%s\" i transaktion %u vid %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 "Nyckel finns redan i unikindex \"%s\", modifierat av icke-existerande origin i transaktion %u vid %s." #: replication/logical/conflict.c:244 #, c-format msgid "Key already exists in unique index \"%s\", modified in transaction %u." -msgstr "" +msgstr "Nyckel finns redan i unikindex \"%s\", lokalt modifierat i transaktion %u." #: replication/logical/conflict.c:251 #, c-format msgid "Updating the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Uppdaterar raden som var lokalt modifierad i transaktion %u vid %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 "Uppdaterar raden som var modifierad av en annan origin \"%s\" i transaktion %u vid %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 "Uppdaterar raden som var modifierad av en icke-existerande origin i transaktion %u vid %s." #: replication/logical/conflict.c:265 msgid "Could not find the row to be updated." @@ -21522,17 +21422,17 @@ msgstr "Kunde inte hitta raden som skulle uppdateras." #: replication/logical/conflict.c:270 #, c-format msgid "Deleting the row that was modified locally in transaction %u at %s." -msgstr "" +msgstr "Raderar raden som var lokalt modifierad i transaktion %u vid %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 "Raderar raden som var modifierad av en annan origin \"%s\" i transaktion %u vid %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 "Raderar raden som var modifierad av en icke-existerande origin i transaktion %u vid %s." #: replication/logical/conflict.c:284 msgid "Could not find the row to be deleted." @@ -21545,23 +21445,23 @@ msgstr "Nyckel %s" #: replication/logical/conflict.c:364 #, c-format -msgid "existing local tuple %s" -msgstr "" +msgid "existing local row %s" +msgstr "existerande lokal rad \"%s\"" #: replication/logical/conflict.c:369 #, c-format -msgid "Existing local tuple %s" -msgstr "" +msgid "Existing local row %s" +msgstr "Existerande lokal rad %s" #: replication/logical/conflict.c:396 #, c-format -msgid "remote tuple %s" -msgstr "fjärr-tupel %s" +msgid "remote row %s" +msgstr "fjärrad %s" #: replication/logical/conflict.c:400 #, c-format -msgid "Remote tuple %s" -msgstr "Fjärr-tupel %s" +msgid "Remote row %s" +msgstr "Fjärrad %s" #: replication/logical/conflict.c:434 #, c-format @@ -21735,10 +21635,9 @@ msgid "logical decoding output plugin \"%s\" produces binary output, but functio msgstr "utdata-plugin \"%s\" för logisk avkodning producerar binär utdata men funktionen \"%s\" förväntar sig textdata" #: replication/logical/origin.c:195 -#, fuzzy, c-format -#| msgid "cannot query or manipulate replication origin when \"max_replication_slots\" is 0" +#, c-format msgid "cannot query or manipulate replication origin when \"max_active_replication_origins\" is 0" -msgstr "kan inte se eller ändra replikeringskällor när \"max_replication_slots\" är 0" +msgstr "kan inte se eller ändra replikeringskälla när \"max_active_replication_origin\" är 0" #: replication/logical/origin.c:200 #, c-format @@ -21751,16 +21650,14 @@ msgid "replication origin \"%s\" does not exist" msgstr "replikeringskälla \"%s\" finns inte" #: replication/logical/origin.c:275 -#, fuzzy, c-format -#| msgid "replication slot name \"%s\" is too long" +#, c-format msgid "replication origin name is too long" -msgstr "replikeringsslotnamn \"%s\" är för långt" +msgstr "replikeringskällans namn är för långt" #: replication/logical/origin.c:276 -#, fuzzy, c-format -#| msgid "replication origin name \"%s\" is reserved" +#, c-format msgid "Replication origin names must be no longer than %d bytes." -msgstr "replikeringskällnamn \"%s\" är reserverat" +msgstr "Replikeringskällnamns namn får inte vara längre än %d byte" #: replication/logical/origin.c:359 #, c-format @@ -21783,10 +21680,9 @@ msgid "replication checkpoint has wrong magic %u instead of %u" msgstr "replikeringscheckpoint har fel magiskt tal %u istället för %u" #: replication/logical/origin.c:821 -#, fuzzy, c-format -#| msgid "could not find free replication state, increase \"max_replication_slots\"" +#, c-format msgid "could not find free replication state, increase \"max_active_replication_origins\"" -msgstr "kunde inte hitta ledig replikeringsplats, öka \"max_replication_slots\"" +msgstr "kunde inte hitta något ledig replikeringsplats, öka \"max_active_replication_origins\"" #: replication/logical/origin.c:829 #, c-format @@ -21809,10 +21705,9 @@ msgid "could not find free replication state slot for replication origin with ID msgstr "kunde inte hitta ledig replikerings-state-slot för replikerings-origin med ID %d" #: replication/logical/origin.c:980 replication/logical/origin.c:1181 -#, fuzzy, c-format -#| msgid "Increase \"max_replication_slots\" and try again." +#, c-format msgid "Increase \"max_active_replication_origins\" and try again." -msgstr "Öka \"max_replication_slots\" och försök igen." +msgstr "Öka \"max_active_replication_origins\" och försök igen." #: replication/logical/origin.c:1137 #, c-format @@ -21852,13 +21747,11 @@ msgstr[0] "destinationsrelation \"%s.%s\" för logisk replikering saknar en repl msgstr[1] "destinationsrelation \"%s.%s\" för logisk replikering saknar några replikerade kolumner: %s" #: replication/logical/relation.c:273 -#, fuzzy, 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" +#, 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] "destinationsrelation \"%s.%s\" för logisk replikering saknar en replikerad kolumn: %s" -msgstr[1] "destinationsrelation \"%s.%s\" för logisk replikering saknar några replikerade kolumner: %s" +msgstr[0] "målrelation \"%s.%s\" för logisk replikering har inkompatibel genererad kolumn: %s" +msgstr[1] "målrelation \"%s.%s\" för logisk replikering har inkompatibla genererade kolumner: %s" #: replication/logical/relation.c:328 #, c-format @@ -21888,10 +21781,9 @@ msgid "could not read from reorderbuffer spill file: read %d instead of %u bytes msgstr "kunde inte läsa från reorderbuffer spill-fil: läste %d istället för %u byte" #: replication/logical/reorderbuffer.c:4876 -#, fuzzy, c-format -#| msgid "could not remove file \"%s\" during removal of pg_replslot/%s/xid*: %m" +#, c-format msgid "could not remove file \"%s\" during removal of %s/%s/xid*: %m" -msgstr "kunde inte radera fil \"%s\" vid borttagning av pg_replslot/%s/xid*: %m" +msgstr "kunde inte radera fil \"%s\" vid borttagning av %s/%s/xid*: %m" #: replication/logical/reorderbuffer.c:5373 #, c-format @@ -21939,16 +21831,14 @@ 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 -#, fuzzy, c-format -#| msgid "could not fetch primary_slot_name \"%s\" info from the primary server: %s" +#, c-format msgid "could not fetch primary slot name \"%s\" info from the primary server: %s" -msgstr "kan inte hämta info för primary_slot_name \"%s\" från primära servern: %s" +msgstr "kan inte hämta info för primära slotnamnet \"%s\" från primära servern: %s" #: replication/logical/slotsync.c:986 -#, fuzzy, c-format -#| msgid "Check if primary_slot_name is configured correctly." +#, c-format msgid "Check if \"primary_slot_name\" is configured correctly." -msgstr "Kontrollera att primary_slot_name är korrekt konfigurerad." +msgstr "Kontrollera att \"primary_slot_name\" är korrekt konfigurerad." #: replication/logical/slotsync.c:1006 #, c-format @@ -22017,11 +21907,10 @@ msgstr "kan inte synkronisera replikeringsslottar parallellt" msgid "slot sync worker started" msgstr "arbetare för slot-synk startad" -#: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 -#, fuzzy, c-format -#| msgid "could not connect to the primary server: %s" +#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 +#, c-format msgid "synchronization worker \"%s\" could not connect to the primary server: %s" -msgstr "kunde inte ansluta till primärserver: %s" +msgstr "synchroniseringsarbetare \"%s\" kunde inte ansluta till den primära servern: %s" #: replication/logical/snapbuild.c:514 #, c-format @@ -22127,10 +22016,9 @@ msgid "could not start initial contents copy for table \"%s.%s\": %s" msgstr "kunde inte starta initial innehållskopiering för tabell \"%s.%s\": %s" #: replication/logical/tablesync.c:1380 -#, fuzzy, c-format -#| msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished" +#, c-format msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" -msgstr "logisk replikerings tabellsynkroniseringsarbetare för prenumeration \"%s\", tabell \"%s\" är klar" +msgstr "tabellers synkroniseringsarbetare för prenumeration \"%s\" kunde inte ansluta till publiceraren: %s" #: replication/logical/tablesync.c:1466 #, c-format @@ -22228,87 +22116,86 @@ msgid "subscription has no replication slot set" msgstr "prenumeration har ingen replikeringsslot angiven" #: replication/logical/worker.c:4592 -#, fuzzy, c-format -#| msgid "could not connect to the publisher: %s" +#, c-format msgid "apply worker for subscription \"%s\" could not connect to the publisher: %s" -msgstr "kunde inte ansluta till publicerare: %s" +msgstr "arbetare för ändringsapplicering tillhörande prenumeration \"%s\" kunde inte ansluta till publicerare: %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 "logiska replikeringens ändringsapplicerare för prenumeration %u kommer inte att startas då prenumerationen togs bort i uppstarten" -#: 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 "logiska replikeringens ändringsapplicerare för prenumeration \"%s\" kommer inte att startas då prenumerationen stängdes av i uppstarten" -#: 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 "logisk replikerings tabellsynkroniseringsarbetare för prenumeration \"%s\", tabell \"%s\" har startat" -#: replication/logical/worker.c:4734 +#: replication/logical/worker.c:4741 #, c-format msgid "logical replication apply worker for subscription \"%s\" has started" msgstr "logiska replikeringens ändringsapplicerare för prenumeration \"%s\" har startat" -#: replication/logical/worker.c:4864 +#: replication/logical/worker.c:4871 #, 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:4912 +#: replication/logical/worker.c:4919 #, 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:4926 +#: replication/logical/worker.c:4933 #, 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:5014 +#: replication/logical/worker.c:5021 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "överhoppnings-LSN för logiska prenumerationen \"%s\" har nollställts" -#: replication/logical/worker.c:5015 +#: replication/logical/worker.c:5022 #, 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:5043 +#: replication/logical/worker.c:5050 #, 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:5047 +#: replication/logical/worker.c:5054 #, 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:5052 +#: replication/logical/worker.c:5059 #, 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:5063 +#: replication/logical/worker.c:5070 #, 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:5070 +#: replication/logical/worker.c:5077 #, 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:5081 +#: replication/logical/worker.c:5088 #, 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:5089 +#: replication/logical/worker.c:5096 #, 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" @@ -22369,29 +22256,24 @@ 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 -#, fuzzy, c-format -#| msgid "cannot use different column lists for table \"%s.%s\" in different publications" +#, c-format msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" -msgstr "kunde inte ha olika kolumnlistor för tabellen \"%s.%s\" i olika publiceringar" +msgstr "kan inte ha olika värden på publish_generated_columns för tabellen \"%s.%s\" i olika publiceringar" #: replication/pgoutput/pgoutput.c:1792 -#, fuzzy, c-format -#| msgid "reading publications" +#, c-format msgid "skipped loading publication \"%s\"" -msgstr "läser publiceringar" +msgstr "hoppade över inläsning av publicering \"%s\"" #: replication/pgoutput/pgoutput.c:1793 -#, fuzzy, c-format -#| msgid "publication %s does not exist on the publisher" -#| msgid_plural "publications %s do not exist on the publisher" +#, c-format msgid "The publication does not exist at this point in the WAL." -msgstr "publiceringen %s finns inte hos publiceraren" +msgstr "Publiceringen finns inte vid denna tidpunkt i WAL." #: replication/pgoutput/pgoutput.c:1794 -#, fuzzy, c-format -#| msgid "publication \"%s\" does not exist" +#, c-format msgid "Create the publication if it does not exist." -msgstr "publiceringen \"%s\" finns inte" +msgstr "Skapa publiceringen om den inte redan finns." #: replication/slot.c:275 #, c-format @@ -22450,16 +22332,14 @@ msgid "replication slot \"%s\" is active for PID %d" msgstr "replikeringsslot \"%s\" är aktiv för PID %d" #: replication/slot.c:652 -#, fuzzy, c-format -#| msgid "can no longer get changes from replication slot \"%s\"" +#, c-format msgid "can no longer access replication slot \"%s\"" -msgstr "kan inte längre få ändringar från replikeringsslot \"%s\"" +msgstr "kan inte längre accessa replikeringsslot \"%s\"" #: replication/slot.c:654 -#, fuzzy, c-format -#| msgid "User was using a logical replication slot that must be invalidated." +#, c-format msgid "This replication slot has been invalidated due to \"%s\"." -msgstr "Användaren använde en logisk replikeringsslot som måste invalideras." +msgstr "Replikeringsslotten har invaliderats på grund av \"%s\"." #: replication/slot.c:673 #, c-format @@ -22527,13 +22407,11 @@ 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 -#, 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." +#, 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 på %llu byte." -msgstr[1] "Slottens restart_lsn %X/%X överskrider gränsen på %llu 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 #, c-format @@ -22548,7 +22426,7 @@ msgstr "logisk avkodning på standby kräver \"wal_level\" >= \"logical\" på pr #: replication/slot.c:1616 #, c-format msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." -msgstr "" +msgstr "Slottens idle-tid på %lds är mer än den konfigurerade \"%s\"-längden på %ds." #: replication/slot.c:1630 #, c-format @@ -22781,10 +22659,9 @@ msgid "standby \"%s\" is now a candidate for quorum synchronous standby" msgstr "standby \"%s\" är nu en kvorumkandidat för synkron standby" #: replication/syncrep.c:1081 -#, fuzzy, c-format -#| msgid "\"%s\" failed" +#, c-format msgid "\"%s\" parser failed." -msgstr "\"%s\" misslyckades" +msgstr "parser \"%s\" misslyckades" #: replication/syncrep.c:1088 #, c-format @@ -22792,10 +22669,9 @@ msgid "number of synchronous standbys (%d) must be greater than zero" msgstr "antal synkrona standbys (%d) måste vara fler än noll" #: replication/walreceiver.c:276 -#, fuzzy, c-format -#| msgid "could not connect to the primary server: %s" +#, c-format msgid "streaming replication receiver \"%s\" could not connect to the primary server: %s" -msgstr "kunde inte ansluta till primärserver: %s" +msgstr "strömmande replikeringsmottagare \"%s\" kunde inte ansluta till primärserver: %s" #: replication/walreceiver.c:324 #, c-format @@ -23508,10 +23384,8 @@ msgid "operator too long" msgstr "operatorn är för lång" #: scan.l:1001 -#, fuzzy -#| msgid "parameter number %d is out of range 0..%d" msgid "parameter number too large" -msgstr "parameter nummer %d är utanför giltigt intervall 0..%d" +msgstr "parameternummer är för stort" #: scan.l:1007 msgid "trailing junk after parameter" @@ -23597,85 +23471,62 @@ msgstr "okänd Snowball-parameter: \"%s\"" msgid "missing Language parameter" msgstr "saknar parameter \"Language\"" -#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:932 +#: statistics/attribute_stats.c:191 statistics/attribute_stats.c:935 #: statistics/relation_stats.c:98 -#, fuzzy, c-format -#| msgid "%s cannot be executed during recovery." +#, c-format msgid "Statistics cannot be modified during recovery." -msgstr "%s kan inte köras under återställning" +msgstr "Statistik kan inte ändras under återställning." #: statistics/attribute_stats.c:202 -#, fuzzy, c-format -#| msgid "cannot specify both %s and %s" -msgid "cannot specify both attname and attnum" -msgstr "kan inte ange både %s och %s" +#, c-format +msgid "cannot specify both \"%s\" and \"%s\"" +msgstr "kan inte ange både \"%s\" och \"%s\"" #: statistics/attribute_stats.c:228 -#, fuzzy, c-format -#| msgid "must specify at least one column" -msgid "must specify either attname or attnum" -msgstr "måste ange minst en kolumn" +#, c-format +msgid "must specify either \"%s\" or \"%s\"" +msgstr "måste ange antingen \"%s\" eller \"%s\"" #: statistics/attribute_stats.c:236 -#, fuzzy, c-format -#| msgid "cannot assign to system column \"%s\"" +#, c-format msgid "cannot modify statistics on system column \"%s\"" -msgstr "kan inte skriva till systemkolumn \"%s\"" +msgstr "kan inte ändra statistik på systemkolumn \"%s\"" #: statistics/attribute_stats.c:300 -#, fuzzy, c-format -#| msgid "cannot determine element type of \"anyarray\" argument" -msgid "unable to determine element type of attribute \"%s\"" -msgstr "kan inte bestämma elementtypen av \"anyarray\"-argument" - -#: statistics/attribute_stats.c:301 #, c-format -msgid "Cannot set STATISTIC_KIND_MCELEM or STATISTIC_KIND_DECHIST." -msgstr "Kan inte sätta STATISTIC_KIND_MCELEM eller STATISTIC_KIND_DECHIST." +msgid "could not determine element type of column \"%s\"" +msgstr "kan inte bestämma elementtypen på kolumn \"%s\"" -#: statistics/attribute_stats.c:316 -#, fuzzy, c-format -#| msgid "could not determine data type for argument %d" -msgid "could not determine less-than operator for attribute \"%s\"" -msgstr "kunde inte lista ut datatypen för argument %d" +#: statistics/attribute_stats.c:301 statistics/attribute_stats.c:318 +#: statistics/attribute_stats.c:333 +#, c-format +msgid "Cannot set %s or %s." +msgstr "Kan inte sätta %s eller %s." #: statistics/attribute_stats.c:317 #, c-format -msgid "Cannot set STATISTIC_KIND_HISTOGRAM or STATISTIC_KIND_CORRELATION." -msgstr "Kan inte sätta STATISTIC_KIND_HISTOGRAM eller STATISTIC_KIND_CORRELATION." +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:330 +#: statistics/attribute_stats.c:332 #, c-format -msgid "attribute \"%s\" is not a range type" -msgstr "attribut \"%s\" är inte av typen range" +msgid "column \"%s\" is not a range type" +msgstr "kolumnen \"%s\" är inte en range-typ" -#: statistics/attribute_stats.c:331 +#: statistics/attribute_stats.c:735 #, c-format -msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS_HISTOGRAM." -msgstr "Kan inte sätta STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM eller STATISTIC_KIND_BOUNDS_HISTOGRAM." +msgid "\"%s\" array must not contain null values" +msgstr "\"%s\"-array:er får inte innehålla null-värden" -#: statistics/attribute_stats.c:590 statistics/attribute_stats.c:598 +#: statistics/attribute_stats.c:778 #, c-format -msgid "attribute %d of relation \"%s\" does not exist" -msgstr "attribut %d i relation \"%s\" existerar inte" - -#: statistics/attribute_stats.c:732 statistics/stat_utils.c:80 -#, fuzzy, c-format -#| msgid "ACL arrays must not contain null values" -msgid "\"%s\" array cannot contain NULL values" -msgstr "ACL-array:er får inte innehålla null-värden" - -#: statistics/attribute_stats.c:775 -#, fuzzy, c-format -#| msgid "maximum number of committed subtransactions (%d) exceeded" msgid "maximum number of statistics slots exceeded: %d" -msgstr "maximalt antal commit:ade undertransaktioner (%d) överskridet" +msgstr "maximalt antal statistikslottar överskridet: %d" -#: statistics/attribute_stats.c:942 -#, fuzzy, c-format -#| msgid "cannot assign to system column \"%s\"" +#: statistics/attribute_stats.c:945 +#, c-format msgid "cannot clear statistics on system column \"%s\"" -msgstr "kan inte skriva till systemkolumn \"%s\"" +msgstr "kan inte nollställa statistik på systemkolumn \"%s\"" #: statistics/extended_stats.c:175 #, c-format @@ -23688,82 +23539,78 @@ msgid "function returning record called in context that cannot accept type recor msgstr "en funktion med post som värde anropades i sammanhang där poster inte kan godtagas." #: statistics/relation_stats.c:115 -#, fuzzy, c-format -#| msgid "range subtype cannot be %s" -msgid "reltuples cannot be < -1.0" -msgstr "intervall-subtyp kan inte vara %s" +#, 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 #, c-format -msgid "\"%s\" cannot be NULL" -msgstr "\"%s\" får inte vara NULL" +msgid "argument \"%s\" must not be null" +msgstr "argument \"%s\" får inte vara null" #: statistics/stat_utils.c:71 -#, fuzzy, c-format -#| msgid "multiranges cannot be constructed from multidimensional arrays" -msgid "\"%s\" cannot be a multidimensional array" -msgstr "multiranges kan inte skapas från en multidimensionell array" +#, 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 +#, 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 -#, fuzzy, c-format -#| msgid "aggregate msfunc must be specified when mstype is specified" -msgid "\"%s\" must be specified when \"%s\" is specified" -msgstr "aggregatfunktionen msfunc måste specificeras när mstype har angivits" +#, 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 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" +#, c-format msgid "cannot modify statistics for relation \"%s\"" -msgstr "kan inte definiera statistik för relationen \"%s\"" +msgstr "kan inte ändra statistik för relationen \"%s\"" #: statistics/stat_utils.c:199 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" +#, c-format msgid "cannot modify statistics for shared relation" -msgstr "kan inte definiera statistik för relationen \"%s\"" +msgstr "kan inte ändra statistik för delad relation" #: statistics/stat_utils.c:252 -#, fuzzy, c-format -#| msgid "unrecognized event name \"%s\"" +#, c-format msgid "unrecognized argument name: \"%s\"" -msgstr "okänt händelsenamn: \"%s\"" +msgstr "okänt argumentnamn: \"%s\"" #: statistics/stat_utils.c:266 -#, fuzzy, c-format -#| msgid "argument of %s must be type %s, not type %s" -msgid "argument \"%s\" has type \"%s\", expected type \"%s\"" -msgstr "argumentet till %s måste vara av typ %s, inte av typ %s" +#, 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 -#, fuzzy, c-format -#| msgid "argument of %s must be a name" +#, c-format msgid "variadic arguments must be name/value pairs" -msgstr "argumentet till %s måste vara ett namn" +msgstr "variadic-argument måste vara namn/värde-par" #: statistics/stat_utils.c:308 #, c-format msgid "Provide an even number of variadic arguments that can be divided into pairs." -msgstr "" +msgstr "Provide an even number of variadic arguments that can be divided into pairs." #: statistics/stat_utils.c:322 -#, fuzzy, c-format -#| msgid "path element at position %d is null" -msgid "name at variadic position %d is NULL" -msgstr "sökvägselement vid position %d är null" +#, c-format +msgid "name at variadic position %d is null" +msgstr "namnet vid variadic position %d är null" #: statistics/stat_utils.c:326 #, c-format -msgid "name at variadic position %d has type \"%s\", expected type \"%s\"" -msgstr "" +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 #, c-format msgid "Only -1 or values bigger than 0 are valid." -msgstr "" +msgstr "Bara -1 eller värden större än 0 är giltiga." #: storage/aio/method_io_uring.c:369 msgid "Check if io_uring is disabled via /proc/sys/kernel/io_uring_disabled." -msgstr "" +msgstr "Kolla om io_uring är avstängd i /proc/sys/kernel/io_uring_disabled." #: storage/aio/method_io_uring.c:374 #, c-format @@ -23771,24 +23618,23 @@ msgid "Consider increasing \"ulimit -n\" to at least %d." msgstr "Överväg att öka \"ulimit -n\" till minst %d." #: storage/aio/method_io_uring.c:380 -msgid "Kernel does not support io_uring." +msgid "The kernel does not support io_uring." msgstr "Kärnan stöder inte io_uring." #: storage/aio/method_io_uring.c:388 -#, fuzzy, c-format -#| msgid "could not set timer: %m" +#, c-format msgid "could not setup io_uring queue: %m" -msgstr "kunde inte sätta timer: %m" +msgstr "kunde inte sätta io_uring-kö: %m" #: storage/aio/method_io_uring.c:522 #, c-format msgid "completing I/O on behalf of process %d" -msgstr "" +msgstr "gör klart I/O åt process %d" #: storage/aio/method_worker.c:382 #, c-format msgid "I/O worker executing I/O on behalf of process %d" -msgstr "" +msgstr "I/O-arbetare utför I/O åt process %d" #: storage/buffer/bufmgr.c:662 storage/buffer/bufmgr.c:818 #, c-format @@ -23802,8 +23648,8 @@ msgstr "kan inte utöka relation %s utöver %u block" #: storage/buffer/bufmgr.c:2774 #, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" -msgstr "oväntad data efter EOF i block %u för relation %s" +msgid "unexpected data beyond EOF in block %u of relation \"%s\"" +msgstr "oväntad data efter EOF i block %u för relation \"%s\"" #: storage/buffer/bufmgr.c:2777 #, c-format @@ -23822,81 +23668,75 @@ msgstr "Multipla fel --- skrivfelet kan vara permanent." #: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 #, c-format -msgid "writing block %u of relation %s" -msgstr "skriver block %u i relation %s" +msgid "writing block %u of relation \"%s\"" +msgstr "skriver block %u i relation \"%s\"" #: storage/buffer/bufmgr.c:7313 #, 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 "nollställer %u sidor och ignorerar %u kontrollsummefel bland blocken %u..%u i relationen \"%s\"" -#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7342 +#: storage/buffer/bufmgr.c:7316 storage/buffer/bufmgr.c:7344 #, c-format -msgid "Block %u held first zeroed page." -msgstr "" +msgid "Block %u held the first zeroed page." +msgstr "Block %u hade den första nollade sidan." #: storage/buffer/bufmgr.c:7318 -#, fuzzy, c-format -#| msgid "See server log for query details." -msgid "See server log for details about the other %d invalid block(s)." -msgstr "Se server-logg för frågedetaljer." +#, 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:7333 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "%u invalid pages among blocks %u..%u of relation %s" -msgstr "ogiltig sida i block %u i relation %s" +#: storage/buffer/bufmgr.c:7335 +#, 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:7334 +#: storage/buffer/bufmgr.c:7336 #, c-format -msgid "Block %u held first invalid page." -msgstr "" +msgid "Block %u held the first invalid page." +msgstr "Block %u hade den första ogiltiga sidan." -#: storage/buffer/bufmgr.c:7335 -#, fuzzy, c-format -#| msgid "See server log for query details." +#: storage/buffer/bufmgr.c:7337 +#, c-format msgid "See server log for the other %u invalid block(s)." -msgstr "Se server-logg för frågedetaljer." +msgstr "Se server-logg för de andra %u ogiltiga blocken." -#: storage/buffer/bufmgr.c:7340 +#: storage/buffer/bufmgr.c:7342 #, 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:7341 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "zeroing out %u invalid pages among blocks %u..%u of relation %s" -msgstr "ogiltig sida i block %u i relation %s" +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 -#, fuzzy, c-format -#| msgid "See server log for query details." -msgid "See server log for the other %u zeroed block(s)." -msgstr "Se server-logg för frågedetaljer." - -#: storage/buffer/bufmgr.c:7348 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "ignoring checksum failure in block %u of relation %s" -msgstr "ogiltig sida i block %u i relation %s" +#, 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:7349 -#, fuzzy, c-format -#| msgid "invalid page in block %u of relation %s" -msgid "ignoring %u checksum failures among blocks %u..%u of relation %s" -msgstr "ogiltig sida i block %u i relation %s" +#: storage/buffer/bufmgr.c:7345 +#, 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 #, c-format -msgid "Block %u held first ignored page." -msgstr "" +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 -#, fuzzy, c-format -#| msgid "See server log for query details." +#, 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 +#, c-format +msgid "Block %u held the first ignored page." +msgstr "Block %u hade den första ignorerade sidan." + +#: storage/buffer/bufmgr.c:7353 +#, c-format msgid "See server log for the other %u ignored block(s)." -msgstr "Se server-logg för frågedetaljer." +msgstr "Se server-logg för de andra %u ignorerade sidorna." #: storage/buffer/localbuf.c:272 #, c-format @@ -23944,10 +23784,9 @@ msgid "could not truncate file \"%s\": %m" msgstr "kunde inte trunkera fil \"%s\": %m" #: storage/file/copydir.c:244 storage/file/copydir.c:275 -#, fuzzy, c-format -#| msgid "could not copy file \"%s\" to \"%s\": %m" +#, c-format msgid "could not clone file \"%s\" to \"%s\": %m" -msgstr "kunde inte kopiera fil \"%s\" till \"%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 #, c-format @@ -23975,10 +23814,9 @@ 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 -#, fuzzy, c-format -#| msgid "System allows %d, server needs at least %d." +#, 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." +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 @@ -24023,10 +23861,9 @@ msgid "could not delete file \"%s\": %m" msgstr "kunde inte radera fil \"%s\": %m" #: storage/file/fd.c:2286 -#, fuzzy, c-format -#| msgid "temporary file size exceeds temp_file_limit (%dkB)" +#, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" -msgstr "storlek på temporär fil överskrider 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 #, c-format @@ -24064,34 +23901,29 @@ msgid "syncing data directory (fsync), elapsed time: %ld.%02d s, current path: % msgstr "synkroniserar datakatalog (fsync), förbrukad tid: %ld.%02d s, aktuell sökväg: %s" #: storage/file/fd.c:4012 -#, fuzzy, c-format -#| msgid "LDAP URLs not supported on this platform" +#, c-format msgid "\"%s\" is not supported on this platform." -msgstr "LDAP-URL:er stöds inte på denna platform" +msgstr "\"%s\" stöds inte på denna platform" #: storage/file/fd.c:4027 tcop/backend_startup.c:1080 -#, fuzzy, c-format -#| msgid "Invalid list syntax in parameter \"%s\"" +#, c-format msgid "Invalid list syntax in parameter \"%s\"." -msgstr "Ogiltigt listsyntax för parameter \"%s\"" +msgstr "Ogiltigt listsyntax för parameter \"%s\"." #: storage/file/fd.c:4047 tcop/backend_startup.c:1054 -#, fuzzy, c-format -#| msgid "Invalid option \"%s\"" +#, c-format msgid "Invalid option \"%s\"." -msgstr "Ogiltig flagga \"%s\"" +msgstr "Ogiltig flagga \"%s\"." #: storage/file/fd.c:4060 -#, fuzzy, c-format -#| msgid "\"debug_io_direct\" is not supported for WAL because XLOG_BLCKSZ is too small" +#, c-format msgid "\"%s\" is not supported for WAL because %s is too small." -msgstr "\"debug_io_direct\" stöds inte för WAL då XLOG_BLCKSZ är för liten" +msgstr "\"%s\" stöds inte för WAL då %s är för liten." #: storage/file/fd.c:4068 -#, fuzzy, c-format -#| msgid "\"debug_io_direct\" is not supported for data because BLCKSZ is too small" +#, c-format msgid "\"%s\" is not supported for data because %s is too small." -msgstr "\"debug_io_direct\" stöds inte för data då BLCKSZ är för liten" +msgstr "\"%s\" stöds inte för data då %s är för liten." #: storage/file/reinit.c:145 #, c-format @@ -24232,10 +24064,9 @@ msgid "still waiting for backend with PID %d to accept ProcSignalBarrier" msgstr "väntare fortfarande på att backend:en med PID %d skall acceptera ProcSignalBarrier" #: storage/ipc/procsignal.c:733 -#, fuzzy, c-format -#| msgid "invalid length of startup packet" +#, c-format msgid "invalid cancel request with PID 0" -msgstr "ogiltig längd på startuppaket" +msgstr "ogiltig cancel-förfrågan med PID 0" #: storage/ipc/procsignal.c:788 #, c-format @@ -24315,10 +24146,9 @@ msgid "Only roles with the %s attribute may cancel queries of roles with the %s msgstr "Bara roller med attributet %s får avbryta frågor åt roller med attributet %s." #: storage/ipc/signalfuncs.c:151 -#, fuzzy, c-format -#| msgid "Only roles with privileges of the \"%s\" role may COPY to a file." +#, c-format msgid "Only roles with privileges of the \"%s\" role may cancel autovacuum workers." -msgstr "Bara roller med rättigheter från rollen \"%s\" får göra COPY till en fil." +msgstr "Bara roller med rättigheter från rollen \"%s\" får avbryta autovacuum-arbetare." #: storage/ipc/signalfuncs.c:158 #, c-format @@ -24331,13 +24161,11 @@ msgid "could not check the existence of the backend with PID %d: %m" msgstr "kunde inte kontrollera existensen av en backend med PID %d: %m" #: storage/ipc/signalfuncs.c:218 -#, fuzzy, 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" +#, c-format msgid "backend with PID %d did not terminate within % millisecond" msgid_plural "backend with PID %d did not terminate within % milliseconds" -msgstr[0] "backend med PID %d terminerade inte inom %lld millisekund" -msgstr[1] "backend med PID %d terminerade inte inom %lld millisekunder" +msgstr[0] "backend med PID %d terminerade inte inom % millisekund" +msgstr[1] "backend med PID %d terminerade inte inom % millisekunder" #: storage/ipc/signalfuncs.c:249 #, c-format @@ -24345,10 +24173,9 @@ msgid "\"timeout\" must not be negative" msgstr "\"timeout\" kan inte vara negativ" #: storage/ipc/signalfuncs.c:264 -#, fuzzy, c-format -#| msgid "Only roles with privileges of the \"%s\" role may examine this parameter." +#, c-format msgid "Only roles with privileges of the \"%s\" role may terminate autovacuum workers." -msgstr "Bara roller med rättigheter från rollen \"%s\" får se denna parameter." +msgstr "Bara roller med rättigheter från rollen \"%s\" får avsluta autovacuum-arbetare." #: storage/ipc/signalfuncs.c:313 #, c-format @@ -24570,10 +24397,9 @@ msgid "Only RowExclusiveLock or less can be acquired on database objects during msgstr "Bara RowExclusiveLock eller lägre kan tas på databasobjekt under återställning." #: storage/lmgr/lock.c:1185 -#, fuzzy, c-format -#| msgid "could not obtain database OID: %s" +#, c-format msgid "process %d could not obtain %s on %s" -msgstr "kunde inte hämta databas-OID: %s" +msgstr "process %d kunde inte ta %s på %s" #: storage/lmgr/lock.c:3426 storage/lmgr/lock.c:3494 storage/lmgr/lock.c:3610 #, c-format @@ -24610,13 +24436,13 @@ msgstr "Du kan använda \"SET default_transaction_isolation = 'repeatable read'\ msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE" msgstr "en snapshot-importerande transaktion får inte vara READ ONLY DEFERRABLE" -#: 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 "kunde inte importera efterfrågat snapshot" -#: 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 "Källprocessen med PID %d kör inte längre." @@ -24728,10 +24554,9 @@ 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 -#, fuzzy, c-format -#| msgid "could not read blocks %u..%u in file \"%s\": %m" +#, c-format msgid "could not start reading blocks %u..%u in file \"%s\": %m" -msgstr "kunde inte läsa block %u..%u i fil \"%s\": %m" +msgstr "kunde inte börja läsa block %u..%u i fil \"%s\": %m" #: storage/smgr/md.c:1119 #, c-format @@ -24759,22 +24584,19 @@ 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 -#, fuzzy, c-format -#| msgid ", \"%s\"" +#, c-format msgid "file \"%s\"" -msgstr ", \"%s\"" +msgstr "fil \"%s\"" #: storage/smgr/smgr.c:1108 -#, fuzzy, c-format -#| msgid "could not read block %u in file \"%s\": %m" +#, c-format msgid "block %u in file \"%s\"" -msgstr "kunde inte läsa block %u i fil \"%s\": %m" +msgstr "block %u i fil \"%s\"" #: storage/smgr/smgr.c:1112 -#, fuzzy, c-format -#| msgid "could not read blocks %u..%u in file \"%s\": %m" +#, c-format msgid "blocks %u..%u in file \"%s\"" -msgstr "kunde inte läsa block %u..%u i fil \"%s\": %m" +msgstr "block %u..%u i fil \"%s\"" #: tcop/backend_startup.c:104 #, c-format @@ -24814,12 +24636,12 @@ msgstr "databassystemet tar ännu inte emot anslutningar" #: tcop/backend_startup.c:321 #, c-format msgid "Recovery snapshot is not yet ready for hot standby." -msgstr "" +msgstr "Återställnings-snapshot är inte klart än på hot standby." #: tcop/backend_startup.c:322 #, c-format msgid "To enable hot standby, close write transactions with more than %d subtransactions on the primary server." -msgstr "" +msgstr "För att aktivera hot standby, stäng skrivtransaktioner med mer än %d undertransaktioner på primära servern." #: tcop/backend_startup.c:328 #, c-format @@ -24927,22 +24749,19 @@ msgid "no PostgreSQL user name specified in startup packet" msgstr "inget PostgreSQL-användarnamn angivet i startuppaketet" #: tcop/backend_startup.c:884 -#, fuzzy, c-format -#| msgid "invalid length of startup packet" +#, c-format msgid "invalid length of cancel request packet" -msgstr "ogiltig längd på startuppaket" +msgstr "ogiltig längd på paket för cancel-begäran" #: tcop/backend_startup.c:892 -#, fuzzy, c-format -#| msgid "invalid length of startup packet" +#, c-format msgid "invalid length of cancel key in cancel request packet" -msgstr "ogiltig längd på startuppaket" +msgstr "ogiltig längd på cancel-nyckel i paket för cancel-begäran" #: tcop/backend_startup.c:1022 -#, fuzzy, c-format -#| msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" +#, c-format msgid "Cannot specify log_connections option \"%s\" in a list with other options." -msgstr "kan inte ange logisk replikeringsslot \"%s\" i parametern \"%s\"" +msgstr "Kan inte ange flaggan \"%s\" för log_connections i en lista med andra flaggor." #: tcop/fastpath.c:141 utils/fmgr/fmgr.c:2161 #, c-format @@ -25276,7 +25095,7 @@ msgstr "kunde inte skapa slumpad avbrytningsnyckel" #: tcop/postgres.c:4677 #, c-format msgid "connection ready: setup total=%.3f ms, fork=%.3f ms, authentication=%.3f ms" -msgstr "" +msgstr "anslutning redo: uppsättning totalt=%.3f ms, fork=%.3f ms, authentisering=%.3f ms" #: tcop/postgres.c:4908 #, c-format @@ -25359,6 +25178,11 @@ msgstr "rättighet saknas för köra kommandot %s" msgid "Only roles with privileges of the \"%s\" role may execute this command." msgstr "Bara roller med rättigheter från rollen \"%s\" får köra detta kommando." +#: tcop/utility.c:1886 +#, c-format +msgid "CREATE STATISTICS only supports relation names in the FROM clause" +msgstr "CREATE STATISTICS stöder bara relationsnamn i FROM-klausulen" + #: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format msgid "multiple DictFile parameters" @@ -25604,69 +25428,60 @@ msgid "invalid statistics kind: \"%s\"" msgstr "ogiltig statistiktyp \"%s\"" #: utils/activity/pgstat.c:1471 -#, fuzzy, c-format -#| msgid "custom resource manager name is invalid" +#, c-format msgid "custom cumulative statistics name is invalid" -msgstr "namn på egendefinierad resurshanterare är ogiltigt" +msgstr "namn på egendefinierad kumulativ statistik är ogiltigt" #: utils/activity/pgstat.c:1472 -#, fuzzy, c-format -#| msgid "Provide a non-empty name for the custom resource manager." +#, c-format msgid "Provide a non-empty name for the custom cumulative statistics." -msgstr "Ange ett icke-tomt namn för den egendefinierade resurshanteraren." +msgstr "Ange ett icke-tomt namn för den egendefinierade kumulativa statistiken." #: utils/activity/pgstat.c:1475 -#, fuzzy, c-format -#| msgid "custom resource manager ID %d is out of range" +#, c-format msgid "custom cumulative statistics ID %u is out of range" -msgstr "egendefinierat resurshanterar-ID %d är utanför giltigt intervall" +msgstr "ID %u på egendefinierad kumulative statistik är utanför giltigt intervall" #: utils/activity/pgstat.c:1476 -#, fuzzy, c-format -#| msgid "Provide a custom resource manager ID between %d and %d." +#, c-format msgid "Provide a custom cumulative statistics ID between %u and %u." -msgstr "Ange ett egendefinierat resurshanterar-ID mellan %d och %d." +msgstr "Ange ett egendefinierat kumulativt statistik-ID mellan %u och %u." #: utils/activity/pgstat.c:1481 utils/activity/pgstat.c:1508 #: utils/activity/pgstat.c:1521 -#, fuzzy, c-format -#| msgid "failed to register custom resource manager \"%s\" with ID %d" +#, c-format msgid "failed to register custom cumulative statistics \"%s\" with ID %u" -msgstr "misslyckades med att registera en egendefinierad resurshanterare \"%s\" med ID %d" +msgstr "misslyckades med att registera en egendefinierad kumulativ statistikk \"%s\" med ID %u" #: utils/activity/pgstat.c:1482 -#, fuzzy, c-format -#| msgid "Custom resource manager must be registered while initializing modules in \"shared_preload_libraries\"." +#, c-format msgid "Custom cumulative statistics must be registered while initializing modules in \"shared_preload_libraries\"." -msgstr "Egendefinierad resurshanterare måste vara registerad när man initierar moduler i \"shared_preload_libraries\"." +msgstr "Egendefinierad kumulativ statistik måste vara registerad när man initierar moduler i \"shared_preload_libraries\"." #: utils/activity/pgstat.c:1491 #, c-format msgid "custom cumulative statistics property is invalid" -msgstr "" +msgstr "egendefinierad kumulativ statistikvärde är ogiltig" #: utils/activity/pgstat.c:1492 #, c-format msgid "Custom cumulative statistics require a shared memory size for fixed-numbered objects." -msgstr "" +msgstr "Egendefinierad kumulativ statisik kräver plats i delat minnesutrymme för objekt som definierats med ett fast antal." #: utils/activity/pgstat.c:1509 -#, fuzzy, c-format -#| msgid "Custom resource manager \"%s\" already registered with the same ID." +#, c-format msgid "Custom cumulative statistics \"%s\" already registered with the same ID." -msgstr "Egendefinierad resurshanterare \"%s\" är redan registrerade med samma ID." +msgstr "Egendefinierad kumulativ statistik \"%s\" är redan registerad med samma ID." #: utils/activity/pgstat.c:1522 -#, fuzzy, c-format -#| msgid "Existing resource manager with ID %d has the same name." +#, c-format msgid "Existing cumulative statistics with ID %u has the same name." -msgstr "Det finns redan en resurshanterare med ID %d som har samma namn." +msgstr "Existerande kumulativ statistik med ID %u har samma namn." #: utils/activity/pgstat.c:1528 -#, fuzzy, c-format -#| msgid "registered custom resource manager \"%s\" with ID %d" +#, c-format msgid "registered custom cumulative statistics \"%s\" with ID %u" -msgstr "registrerade egendefinerad resurshanterare \"%s\" med ID %d" +msgstr "registrerade egendefinerad kumulativ statistik \"%s\" med ID %u" #: utils/activity/pgstat.c:1597 #, c-format @@ -25688,7 +25503,7 @@ msgstr "kunde inte stänga temporär statistikfil \"%s\": %m" msgid "could not open statistics file \"%s\": %m" msgstr "kunde inte öppna statistikfil \"%s\": %m" -#: utils/activity/pgstat.c:2021 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "korrupt statistikfil \"%s\"" @@ -25698,11 +25513,15 @@ msgstr "korrupt statistikfil \"%s\"" msgid "function call to dropped function" msgstr "funktionsanrop till borttagen funktion" +#: utils/activity/pgstat_shmem.c:536 +#, c-format +msgid "Failed while allocating entry %u/%u/%." +msgstr "Misslyckades vid allokering av post %u/%u/%." + #: 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 "återställer existerande statistik för typ %s, db=%u, oid=%u" +msgstr "återställer existerande statistik för typ %s, db=%u, oid=%" #: utils/activity/wait_event.c:206 utils/activity/wait_event.c:231 #, c-format @@ -26409,10 +26228,9 @@ msgid "date/time field value out of range: \"%s\"" msgstr "datum/tid-värde utanför giltigt område: \"%s\"" #: utils/adt/datetime.c:4232 -#, fuzzy, c-format -#| msgid "Perhaps you need a different \"datestyle\" setting." +#, c-format msgid "Perhaps you need a different \"DateStyle\" setting." -msgstr "Du kanske behöver en annan inställning av variabeln \"datestyle\"." +msgstr "Du kanske behöver en annan inställning av variabeln \"DateStyle\"." #: utils/adt/datetime.c:4237 #, c-format @@ -26687,10 +26505,9 @@ msgid "cannot use \"PR\" and \"S\"/\"PL\"/\"MI\"/\"SG\" together" msgstr "kan inte använda \"PR\" och \"S\"/\"PL\"/\"MI\"/\"SG\" tillsammans." #: utils/adt/formatting.c:1326 -#, fuzzy, c-format -#| msgid "cannot use \"S\" twice" +#, c-format msgid "cannot use \"RN\" twice" -msgstr "kan inte använda \"S\" två gånger" +msgstr "kan inte använda \"RN\" två gånger" #: utils/adt/formatting.c:1347 #, c-format @@ -26708,16 +26525,14 @@ msgid "\"EEEE\" may only be used together with digit and decimal point patterns. msgstr "\"EEEE\" får bara användas tillsammans med siffror- och decimalpunkts-mönster." #: utils/adt/formatting.c:1363 -#, fuzzy, c-format -#| msgid "\"EEEE\" is incompatible with other formats" +#, c-format msgid "\"RN\" is incompatible with other formats" -msgstr "\"EEEE\" är inkompatibel med andra format" +msgstr "\"RN\" är inkompatibel med andra format" #: utils/adt/formatting.c:1364 -#, fuzzy, c-format -#| msgid "\"EEEE\" may only be used together with digit and decimal point patterns." +#, c-format msgid "\"RN\" may only be used together with \"FM\"." -msgstr "\"EEEE\" får bara användas tillsammans med siffror- och decimalpunkts-mönster." +msgstr "\"RN\" får bara användas tillsammans med \"FM\"." #: utils/adt/formatting.c:1445 #, c-format @@ -26736,10 +26551,9 @@ msgid "could not determine which collation to use for %s function" msgstr "kunde inte bestämma jämförelse (collation) för funktionen %s" #: utils/adt/formatting.c:1853 -#, fuzzy, c-format -#| msgid "Unicode categorization can only be performed if server encoding is UTF8" +#, c-format msgid "Unicode case folding can only be performed if server encoding is UTF8" -msgstr "Unicode-kategorisering kan bara utföras om server-kodningen är UTF8" +msgstr "Unicode-skiftlägesnormalisering kan bara utföras om server-kodningen är UTF8" #: utils/adt/formatting.c:2150 #, c-format @@ -26894,10 +26708,9 @@ msgid "\"EEEE\" not supported for input" msgstr "\"EEEE\" stöds inte för indata" #: utils/adt/formatting.c:6111 -#, fuzzy, c-format -#| msgid "invalid schema name" +#, c-format msgid "invalid Roman numeral" -msgstr "ogiltigt schemanamn" +msgstr "ogiltigt romerskt tal" #: utils/adt/genfile.c:84 #, c-format @@ -27425,10 +27238,9 @@ msgstr "jsonpaths elementmetod .%s() kan bara applicerars på en array" #: 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 -#, fuzzy, c-format -#| msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type bigint" +#, c-format msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type %s" -msgstr "argumentet \"%s\" till jsonpaths elementmetod .%s() är ogiltig för typen bigint" +msgstr "argumentet \"%s\" till jsonpaths elementmetod .%s() är ogiltig för typen %s" #: utils/adt/jsonpath_exec.c:1170 utils/adt/jsonpath_exec.c:1196 #: utils/adt/jsonpath_exec.c:1413 utils/adt/jsonpath_exec.c:1445 @@ -27586,10 +27398,9 @@ msgid "levenshtein argument exceeds maximum length of %d characters" msgstr "levenshtein-argument överskrider maximala längden på %d tecken" #: utils/adt/like.c:162 -#, fuzzy, c-format -#| msgid "could not determine which collation to use for ILIKE" +#, c-format msgid "could not determine which collation to use for LIKE" -msgstr "kunde inte bestämma vilken jämförelse (collation) som skall användas för ILIKE" +msgstr "kunde inte härleda vilken sortering (collation) som skall användas för LIKE" #: utils/adt/like.c:193 utils/adt/like_support.c:1019 #, c-format @@ -27607,12 +27418,12 @@ msgstr "ickedeterministiska jämförelser (collation) stöds inte för ILIKE" msgid "LIKE pattern must not end with escape character" msgstr "LIKE-mönster för inte sluta med ett escape-tecken" -#: 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 "ogiltig escape-sträng" -#: 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 "Escape-sträng måste vara tom eller ett tecken." @@ -28258,7 +28069,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:2022 utils/adt/varlena.c:4475 +#: utils/adt/regexp.c:304 utils/adt/regexp.c:2065 utils/adt/varlena.c:4475 #, c-format msgid "regular expression failed: %s" msgstr "reguljärt uttryck misslyckades: %s" @@ -28273,33 +28084,33 @@ msgstr "ogiltigt flagga till reguljärt uttryck: \"%.*s\"" msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly." msgstr "Om du menade att använda regexp_replace() med en startstartparameter så cast:a fjärde argumentet uttryckligen till integer." -#: 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 "ogiltigt värde för parameter \"%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 "Regulart uttryck i SQL får inte innehålla mer än två dubbelcitat-escape-separatorer" #. 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 stöder inte \"global\"-flaggan" -#: utils/adt/regexp.c:1338 +#: utils/adt/regexp.c:1381 #, c-format msgid "Use the regexp_matches function instead." msgstr "Använd regexp_matches-funktionen istället." -#: utils/adt/regexp.c:1526 +#: utils/adt/regexp.c:1569 #, c-format msgid "too many regular expression matches" msgstr "för många reguljära uttryck matchar" @@ -28418,22 +28229,19 @@ msgid "Key is not present in table \"%s\"." msgstr "Nyckeln finns inte i tabellen \"%s\"." #: utils/adt/ri_triggers.c:2787 -#, fuzzy, c-format -#| msgid "update or delete on table \"%s\" violates foreign key constraint \"%s\" on table \"%s\"" +#, c-format msgid "update or delete on table \"%s\" violates RESTRICT setting of foreign key constraint \"%s\" on table \"%s\"" -msgstr "update eller delete på tabell \"%s\" bryter mot främmande nyckel-villkoret \"%s\" för tabell \"%s\"" +msgstr "update eller delete på tabell \"%s\" bryter mot RESTRICT-inställningen för främmande nyckel-villkoret \"%s\" på tabell \"%s\"" #: utils/adt/ri_triggers.c:2792 -#, fuzzy, c-format -#| msgid "Key (%s)=(%s) is still referenced from table \"%s\"." +#, c-format msgid "Key (%s)=(%s) is referenced from table \"%s\"." -msgstr "Nyckeln (%s)=(%s) refereras fortfarande till från tabell \"%s\"." +msgstr "Nyckeln (%s)=(%s) refereras från tabell \"%s\"." #: utils/adt/ri_triggers.c:2795 -#, fuzzy, c-format -#| msgid "Key is still referenced from table \"%s\"." +#, c-format msgid "Key is referenced from table \"%s\"." -msgstr "Nyckel refereras fortfarande till från tabell \"%s\"." +msgstr "Nyckel refereras från tabell \"%s\"." #: utils/adt/ri_triggers.c:2801 #, c-format @@ -28524,31 +28332,29 @@ msgid "rule \"%s\" has unsupported event type %d" msgstr "regel \"%s\" har en icke stödd händelsetyp %d" #: utils/adt/tid.c:317 -#, fuzzy, c-format -#| msgid "cannot define statistics for relation \"%s\"" +#, c-format msgid "cannot look at latest visible tid for relation \"%s.%s\"" -msgstr "kan inte definiera statistik för relationen \"%s\"" +msgstr "kan inte titta på senaste synliga tid för relationen \"%s.%s\"" #: utils/adt/tid.c:356 #, c-format msgid "ctid isn't of type TID" -msgstr "" +msgstr "ctid är inte av typ TID" #: utils/adt/tid.c:364 #, c-format msgid "currtid cannot handle views with no CTID" -msgstr "" +msgstr "currtid kan inte hantera vyer utan CTID" #: utils/adt/tid.c:369 #, c-format msgid "the view has no rules" -msgstr "" +msgstr "vyn har inga regler" #: utils/adt/tid.c:381 -#, fuzzy, c-format -#| msgid "only one default namespace is allowed" +#, c-format msgid "only one select rule is allowed in views" -msgstr "bara ett standard-namespace tillåts" +msgstr "bara en select-regel tillåts på vyer" #: utils/adt/timestamp.c:130 #, c-format @@ -28944,10 +28750,9 @@ 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 -#, fuzzy, c-format -#| msgid "index %d out of valid range, 0..%d" +#, c-format msgid "index % out of valid range, 0..%" -msgstr "index %d utanför giltigt intervall, 0..%d" +msgstr "index % utanför giltigt intervall, 0..%" #: utils/adt/varlena.c:4587 #, c-format @@ -29030,10 +28835,9 @@ msgid "argument of nth_value must be greater than zero" msgstr "argumentet till nth_value måste vara större än noll" #: utils/adt/xid8funcs.c:120 -#, fuzzy, c-format -#| msgid "transaction ID %llu is in the future" +#, c-format msgid "transaction ID % is in the future" -msgstr "transaktions-ID %llu är från framtiden" +msgstr "transaktions-ID % är från framtiden" #: utils/adt/xid8funcs.c:522 #, c-format @@ -29301,10 +29105,9 @@ msgid "could not reopen file \"%s\" as stdout: %m" msgstr "kunde inte återöppna filen \"%s\" som stdout: %m" #: utils/error/elog.c:2191 -#, fuzzy, c-format -#| msgid "Invalid character" +#, c-format msgid "Invalid character." -msgstr "Ogiltigt tecken" +msgstr "Ogiltigt tecken." #: utils/error/elog.c:2901 utils/error/elog.c:2928 utils/error/elog.c:2944 msgid "[unknown]" @@ -29385,85 +29188,81 @@ msgstr "FATALT" msgid "PANIC" msgstr "PANIK" -#: utils/fmgr/dfmgr.c:126 +#: utils/fmgr/dfmgr.c:133 #, c-format msgid "could not find function \"%s\" in file \"%s\"" msgstr "kunde inte hitta funktionen \"%s\" i filen \"%s\"" -#: utils/fmgr/dfmgr.c:245 +#: utils/fmgr/dfmgr.c:252 #, c-format msgid "could not load library \"%s\": %s" msgstr "kunde inte ladda länkbibliotek \"%s\": %s" -#: utils/fmgr/dfmgr.c:282 +#: utils/fmgr/dfmgr.c:289 #, c-format msgid "incompatible library \"%s\": missing magic block" msgstr "inkompatibelt bibliotek \"%s\": saknar magiskt block" -#: 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 "Utökningsbibliotek krävs för att använda macro:t PG_MODULE_MAGIC." -#: utils/fmgr/dfmgr.c:330 +#: utils/fmgr/dfmgr.c:337 #, c-format msgid "incompatible library \"%s\": version mismatch" msgstr "inkompatibelt bibliotek \"%s\": versionen stämmer inte" -#: utils/fmgr/dfmgr.c:332 +#: utils/fmgr/dfmgr.c:339 #, c-format msgid "Server is version %d, library is version %s." msgstr "Servern är version %d, biblioteket är version %s." -#: utils/fmgr/dfmgr.c:344 +#: utils/fmgr/dfmgr.c:351 #, c-format msgid "incompatible library \"%s\": ABI mismatch" msgstr "inkompatibelt bibliotek \"%s\": ABI matchar inte" -#: utils/fmgr/dfmgr.c:346 +#: utils/fmgr/dfmgr.c:353 #, c-format msgid "Server has ABI \"%s\", library has \"%s\"." msgstr "Servern har ABI \"%s\", biblioteket har \"%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 -#, fuzzy, c-format -#| msgid "Server has NAMEDATALEN = %d, library has %d." +#: 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 "Servern har NAMEDATALEN = %d, biblioteket har %d." +msgstr "Servern har %s = %d, biblioteket har %d." #. translator: %s is a variable name and %d its values -#: utils/fmgr/dfmgr.c:395 -#, fuzzy, c-format -#| msgid "Server has ABI \"%s\", library has \"%s\"." +#: utils/fmgr/dfmgr.c:402 +#, c-format msgid "Server has %s = %s, library has %s." -msgstr "Servern har ABI \"%s\", biblioteket har \"%s\"." +msgstr "Servern har %s = %s, biblioteket har %s." -#: utils/fmgr/dfmgr.c:402 +#: utils/fmgr/dfmgr.c:409 msgid "Magic block has unexpected length or padding difference." msgstr "Magiskt block har oväntad längd eller annan paddning." -#: utils/fmgr/dfmgr.c:405 +#: utils/fmgr/dfmgr.c:412 #, c-format msgid "incompatible library \"%s\": magic block mismatch" msgstr "inkompatibelt bibliotek \"%s\": magiskt block matchar inte" -#: utils/fmgr/dfmgr.c:520 +#: utils/fmgr/dfmgr.c:527 #, c-format msgid "access to library \"%s\" is not allowed" msgstr "åtkomst till biblioteket \"%s\" tillåts inte" -#: utils/fmgr/dfmgr.c:547 -#, fuzzy, c-format -#| msgid "invalid macro name in dynamic library path: %s" +#: utils/fmgr/dfmgr.c:554 +#, c-format msgid "invalid macro name in path: %s" -msgstr "ogiltigt macro-namn i dynamisk biblioteksökväg: %s" +msgstr "ogiltigt macro-namn i sökväg: %s" -#: utils/fmgr/dfmgr.c:599 -#, fuzzy, c-format -#| msgid "zero-length component in parameter \"dynamic_library_path\"" +#: utils/fmgr/dfmgr.c:606 +#, c-format msgid "zero-length component in parameter \"%s\"" -msgstr "komponent med längden noll i parameter \"dynamic_library_path\"" +msgstr "komponent med längden noll i parameter \"%s\"" #: utils/fmgr/fmgr.c:236 #, c-format @@ -29521,76 +29320,56 @@ msgid "could not determine row description for function returning record" msgstr "kunde inte få radbeskrivning för funktion som returnerar en record" #: utils/init/miscinit.c:265 -#, fuzzy -#| msgid "unknown reason" msgid "unknown process type" -msgstr "okänt skäl" +msgstr "okänd processtyp" #: utils/init/miscinit.c:270 -#, fuzzy -#| msgid "could not initialize globals" msgid "not initialized" -msgstr "kunde inte initierar globaler" +msgstr "inte initierad" #: utils/init/miscinit.c:273 -#, fuzzy -#| msgid "archiver process" msgid "archiver" -msgstr "arkiveringsprocess" +msgstr "arkiverare" #: utils/init/miscinit.c:276 -#, fuzzy -#| msgid "autovacuum launcher process" msgid "autovacuum launcher" -msgstr "autovacuum-startprocess" +msgstr "autovacuum-startare" #: utils/init/miscinit.c:279 -#, fuzzy -#| msgid "Autovacuum" msgid "autovacuum worker" -msgstr "Autovacuum" +msgstr "autovacuum-arbetare" #: utils/init/miscinit.c:282 msgid "client backend" -msgstr "" +msgstr "klient-backend" #: utils/init/miscinit.c:285 msgid "dead-end client backend" -msgstr "" +msgstr "dead-end klient-backend" #: utils/init/miscinit.c:288 -#, fuzzy -#| msgid "background worker \"%s\"" msgid "background worker" -msgstr "bakgrundsarbetare \"%s\"" +msgstr "bakgrundsarbetare" #: utils/init/miscinit.c:291 -#, fuzzy -#| msgid "background writer process" msgid "background writer" -msgstr "bakgrundsskrivarprocess" +msgstr "bakgrundsskrivare" #: utils/init/miscinit.c:294 -#, fuzzy -#| msgid "checkpointer process" msgid "checkpointer" -msgstr "checkpoint-process" +msgstr "checkpoint:are" #: utils/init/miscinit.c:300 -#, fuzzy -#| msgid "unlogged" msgid "logger" -msgstr "ologgad" +msgstr "loggare" #: utils/init/miscinit.c:303 -#, fuzzy -#| msgid "slot sync worker process" msgid "slotsync worker" -msgstr "arbetarprocess för slotsynkronisering" +msgstr "arbetare för slotsynkronisering" #: utils/init/miscinit.c:306 msgid "standalone backend" -msgstr "" +msgstr "standalone-backend" #: utils/init/miscinit.c:309 msgid "startup" @@ -29903,12 +29682,12 @@ msgstr "Bygg om alla objekt i denna databas som använder standardjämförelse ( #: utils/init/postinit.c:566 #, c-format msgid "too many server processes configured" -msgstr "" +msgstr "för många serverprocesser har konfigurerats" #: utils/init/postinit.c:567 #, c-format 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 "" +msgstr "\"max_connections\" (%d) plus \"autovacuum_worker_slots\" (%d) plus \"max_worker_processes\" (%d) plus \"max_wal_senders\" (%d) måste vara mindre än %d." #: utils/init/postinit.c:878 #, c-format @@ -30433,21 +30212,19 @@ msgstr "Statistik / Ihopsamlad fråge- och index-statistik" #: utils/misc/guc_tables.c:725 msgid "Vacuuming / Automatic Vacuuming" -msgstr "" +msgstr "Vacuum / Automatisk Vacuum" #: utils/misc/guc_tables.c:726 -#, fuzzy -#| msgid "Resource Usage / Cost-Based Vacuum Delay" msgid "Vacuuming / Cost-Based Vacuum Delay" -msgstr "Resursanvändning / Kostnadsbaserad Vacuum-fördröjning" +msgstr "Vacuum / Kostbaserad Vacuum-fördröjning" #: utils/misc/guc_tables.c:727 msgid "Vacuuming / Default Behavior" -msgstr "" +msgstr "Vacuum / Standardbeteende" #: utils/misc/guc_tables.c:728 msgid "Vacuuming / Freezing" -msgstr "" +msgstr "Vacuum / Fryser" #: utils/misc/guc_tables.c:729 msgid "Client Connection Defaults / Statement Behavior" @@ -30587,17 +30364,15 @@ msgstr "Aktiverar planerarens användning av planer med async append." #: utils/misc/guc_tables.c:1011 msgid "Enables removal of unique self-joins." -msgstr "" +msgstr "Aktiverar borttagning av unika join med sig själv." #: utils/misc/guc_tables.c:1021 msgid "Enables reordering of GROUP BY keys." msgstr "Aktiverar omkastning av nycklar i GROUP BY." #: utils/misc/guc_tables.c:1031 -#, fuzzy -#| msgid "Enables reordering of GROUP BY keys." msgid "Enables reordering of DISTINCT keys." -msgstr "Aktiverar omkastning av nycklar i GROUP BY." +msgstr "Aktiverar omkastning av nycklar i DISTINCT." #: utils/misc/guc_tables.c:1041 msgid "Enables genetic query optimization." @@ -30737,15 +30512,15 @@ msgstr "Loggar tiden för varje avslutad SQL-sats." #: 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 "" +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 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 "" +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 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 "" +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 msgid "Logs each query's parse tree." @@ -30796,10 +30571,8 @@ msgid "Collects statistics on database activity." msgstr "Samla in statistik om databasaktivitet." #: utils/misc/guc_tables.c:1495 -#, fuzzy -#| msgid "Collects timing statistics for database I/O activity." msgid "Collects timing statistics for cost-based vacuum delay." -msgstr "Samla in timingstatistik om databasens I/O-aktivitet." +msgstr "Samla in timingstatistik för kostnadsbaserad vacuum-fördröjning." #: utils/misc/guc_tables.c:1504 msgid "Collects timing statistics for database I/O activity." @@ -30846,10 +30619,8 @@ msgid "Logs long lock waits." msgstr "Loggar långa väntetider på lås." #: utils/misc/guc_tables.c:1606 -#, fuzzy -#| msgid "Logs long lock waits." msgid "Logs lock failures." -msgstr "Loggar långa väntetider på lås." +msgstr "Loggar låsfel." #: utils/misc/guc_tables.c:1615 msgid "Logs standby recovery conflict waits." @@ -30900,8 +30671,6 @@ 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 -#, fuzzy -#| msgid "Enable input of NULL elements in arrays." msgid "Enables input of NULL elements in arrays." msgstr "Aktiverar inmatning av NULL-element i arrayer." @@ -31075,13 +30844,11 @@ msgstr "Tillåter att en fysisk standby synkroniserar logiska replikeringsslotta #: utils/misc/guc_tables.c:2130 msgid "Enables deprecation warnings for MD5 passwords." -msgstr "" +msgstr "Aktiverar obsolet-varningar för MD5-lösenord." #: utils/misc/guc_tables.c:2139 -#, 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 trunkera inte tomma sidor i slutet av tabellen\n" +msgstr "Aktiverar så att vacuum trunkerar tomma sidor i slutet på tabellen." #: utils/misc/guc_tables.c:2157 msgid "Sets the amount of time to wait before forcing a switch to the next WAL file." @@ -31091,10 +30858,8 @@ msgstr "Sätter tiden vi väntar innan vi tvingar ett byte till nästa WAL-fil." #: 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 -#, fuzzy -#| msgid "-1 disables optimization." msgid "0 disables the timeout." -msgstr "-1 stänger av optimering." +msgstr "0 stänger av timeout:en." #: utils/misc/guc_tables.c:2168 msgid "Sets the amount of time to wait after authentication on connection startup." @@ -31141,10 +30906,8 @@ 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 -#, fuzzy -#| msgid "Zero selects a suitable default value." msgid "0 means use a suitable default value." -msgstr "Noll väljer ett lämpligt standardvärde." +msgstr "0 betyder att ett lämpligt standardvärde används." #: utils/misc/guc_tables.c:2245 msgid "GEQO: number of iterations of the algorithm." @@ -31211,16 +30974,12 @@ 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 -#, fuzzy -#| msgid "event triggers are not supported for %s" msgid "-1 means huge pages are not supported." -msgstr "händelsutösare stöds inte för %s" +msgstr "-1 betyder att stora sidor inte stöds." #: utils/misc/guc_tables.c:2414 -#, fuzzy -#| msgid "Sets the number of shared memory buffers used by the server." msgid "Shows the number of semaphores required for the server." -msgstr "Sätter antalet delade minnesbuffrar som används av servern." +msgstr "Visar antal semaforer som krävs av servern." #: utils/misc/guc_tables.c:2425 msgid "Sets the size of the dedicated buffer pool used for the commit timestamp cache." @@ -31228,10 +30987,8 @@ msgstr "Sätter storlek på den dedikerade bufferpoolen som används till cache #: utils/misc/guc_tables.c:2426 utils/misc/guc_tables.c:2481 #: utils/misc/guc_tables.c:2492 -#, 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 "Ange 0 för att sätta detta värde till en bråkdel av shared_buffers." +msgstr "0 betyder att en bråkdel av \"shared_buffers\" används." #: utils/misc/guc_tables.c:2436 msgid "Sets the size of the dedicated buffer pool used for the MultiXact member cache." @@ -31346,16 +31103,12 @@ msgid "Vacuum cost amount available before napping, for autovacuum." msgstr "Vacuum-kostnad kvar innan pausande, för autovacuum." #: utils/misc/guc_tables.c:2676 -#, fuzzy -#| msgid "-1 means no limit." msgid "-1 means use \"vacuum_cost_limit\"." -msgstr "-1 betyder ingen gräns." +msgstr "-1 betyder att \"vacuum_cost_limit\" används." #: utils/misc/guc_tables.c:2685 -#, 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 "Sätter det maximala antalet filer som en serverprocess kan ha öppna på en gång." +msgstr "Sätter det maximala antalet filer som en serverprocess tillåts ha öppna på en gång." #: utils/misc/guc_tables.c:2698 msgid "Sets the maximum number of simultaneously prepared transactions." @@ -31490,10 +31243,8 @@ msgid "Sets the maximum time before warning if checkpoints triggered by WAL volu 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 -#, 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 "Skriv ett meddelande i serverloggen om checkpoint:er som orsakas av fulla WAL-segmentfiler händer oftare än denna tid. Noll stänger av varningen." +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 @@ -31503,17 +31254,15 @@ 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 msgid "0 disables forced writeback." -msgstr "" +msgstr "0 stänger av tvingad tillbakaskrivning." #: utils/misc/guc_tables.c:3011 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 -#, 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 "Ange -1 för att sätta detta värde till en bråkdel av shared_buffers." +msgstr "-1 betyder att en bråkdel av \"shared_buffers\" används." #: utils/misc/guc_tables.c:3022 msgid "Time between WAL flushes performed in the WAL writer." @@ -31540,20 +31289,16 @@ 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 -#, 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 "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." +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 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 -#, 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 "Användaren använde en logisk replikeringsslot som måste invalideras." +msgstr "Sätter tiden som en replikeringsslot kan vara oanvänd innan den invalideras." #: utils/misc/guc_tables.c:3112 msgid "Sets the delay in microseconds between transaction commit and flushing WAL to disk." @@ -31572,10 +31317,8 @@ msgid "This affects real, double precision, and geometric data types. A zero or 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 -#, 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 "Sätter minimal körtid där ett urval av långsammare satser kommer loggas. Urvalet bestämms av 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 msgid "-1 disables sampling. 0 means sample all statements." @@ -31587,7 +31330,7 @@ msgstr "Sätter minimal körtid där alla långsammare satser kommer loggas." #: utils/misc/guc_tables.c:3163 msgid "-1 disables logging statement durations. 0 means log all statement durations." -msgstr "" +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 msgid "Sets the minimum execution time above which autovacuum actions will be logged." @@ -31595,17 +31338,15 @@ msgstr "Sätter minimal körtid där långsammare autovacuum-operationer kommer #: utils/misc/guc_tables.c:3175 msgid "-1 disables logging autovacuum actions. 0 means log all autovacuum actions." -msgstr "" +msgstr "-1 stänger av loggning av autovaccum-åtgärder. 0 betyder att logga alla autovacuum-åtgärder." #: utils/misc/guc_tables.c:3185 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 -#, fuzzy -#| msgid "-1 to print values in full." msgid "-1 means log values in full." -msgstr "-1 för att skriva ut hela värden." +msgstr "-1 betyder att logga fullständiga värden." #: 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." @@ -31620,10 +31361,8 @@ 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 -#, fuzzy -#| msgid "-1 disables inlining." msgid "0 disables background writing." -msgstr "-1 stänger av \"inlining\"" +msgstr "0 stänger av bakgrundsskrivning." #: utils/misc/guc_tables.c:3243 msgid "Number of simultaneous requests that can be handled efficiently by the disk subsystem." @@ -31631,7 +31370,7 @@ msgstr "Antal samtidiga förfrågningar som kan effektivt kan hanteras av disksy #: utils/misc/guc_tables.c:3244 utils/misc/guc_tables.c:3258 msgid "0 disables simultaneous requests." -msgstr "" +msgstr "0 stänger av simultana förfrågningar." #: utils/misc/guc_tables.c:3257 msgid "A variant of \"effective_io_concurrency\" that is used for maintenance work." @@ -31639,7 +31378,7 @@ msgstr "En variant av \"effective_io_concurrency\" som används för underhålls #: utils/misc/guc_tables.c:3272 msgid "Server-wide limit that clamps io_combine_limit." -msgstr "" +msgstr "Serversatt gräns som begränsar io_combine_limit." #: utils/misc/guc_tables.c:3286 msgid "Limit on the size of data reads and writes." @@ -31647,11 +31386,11 @@ msgstr "Begränsa storlek på data för läsning och skrivning." #: utils/misc/guc_tables.c:3300 msgid "Max number of IOs that one process can execute simultaneously." -msgstr "" +msgstr "Max antal IO som en process kan köra samtidigt." #: utils/misc/guc_tables.c:3312 msgid "Number of IO worker processes, for io_method=worker." -msgstr "" +msgstr "Antal IO-arbetsprocesser, för io_method=worker." #: utils/misc/guc_tables.c:3335 msgid "Maximum number of concurrent worker processes." @@ -31670,10 +31409,8 @@ 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 -#, fuzzy -#| msgid "Sets the maximum number of simultaneously defined replication slots." msgid "Sets the maximum number of active replication origins." -msgstr "Sätter maximalt antal samtidigt definierade replikeringsslottar." +msgstr "Sätter maximalt antal aktiva replikerings-origin." #: utils/misc/guc_tables.c:3393 msgid "Sets the amount of time to wait before forcing log file rotation." @@ -31681,7 +31418,7 @@ msgstr "Sätter tiden vi väntar innan vi tvingar rotering av loggfil." #: utils/misc/guc_tables.c:3395 msgid "0 disables time-based creation of new log files." -msgstr "" +msgstr "0 stänger av tidsbaserat skapande av nya loggfiler." #: utils/misc/guc_tables.c:3405 msgid "Sets the maximum size a log file can reach before being rotated." @@ -31689,7 +31426,7 @@ msgstr "Sätter maximalt storlek en loggfil kan bli innan vi tvingar rotering." #: utils/misc/guc_tables.c:3407 msgid "0 disables size-based creation of new log files." -msgstr "" +msgstr "0 stänger av storleksbaserat skapande av nya loggfiler." #: utils/misc/guc_tables.c:3417 msgid "Shows the maximum number of function arguments." @@ -31729,7 +31466,7 @@ msgstr "Tid som filer för WAL-summering skall behållas." #: utils/misc/guc_tables.c:3509 msgid "0 disables automatic summary file deletion." -msgstr "" +msgstr "0 stänger av automatisk borttagning av summeringsfil." #: utils/misc/guc_tables.c:3521 msgid "Time to sleep between autovacuum runs." @@ -31737,31 +31474,23 @@ msgstr "Tid att sova mellan körningar av autovacuum." #: utils/misc/guc_tables.c:3531 msgid "Minimum number of tuple updates or deletes prior to vacuum." -msgstr "Minst antal tupel-uppdateringar eller raderingar innan vacuum." +msgstr "Minsta antal tupel-uppdateringar eller raderingar innan vacuum." #: utils/misc/guc_tables.c:3540 -#, fuzzy -#| msgid "Minimum number of tuple updates or deletes prior to vacuum." msgid "Maximum number of tuple updates or deletes prior to vacuum." -msgstr "Minst antal tupel-uppdateringar eller raderingar innan vacuum." +msgstr "Maximalt antal tupel-uppdateringar eller raderingar innan vacuum." #: utils/misc/guc_tables.c:3541 -#, fuzzy -#| msgid "-1 disables optimization." msgid "-1 disables the maximum threshold." -msgstr "-1 stänger av optimering." +msgstr "-1 stänger av maximalgräns." #: utils/misc/guc_tables.c:3549 -#, fuzzy -#| msgid "Minimum number of tuple updates or deletes prior to vacuum." msgid "Minimum number of tuple inserts prior to vacuum." -msgstr "Minst antal tupel-uppdateringar eller raderingar innan vacuum." +msgstr "Minsta antal tupel-insert innan vacuum." #: utils/misc/guc_tables.c:3550 -#, fuzzy -#| msgid "-1 disables inlining." msgid "-1 disables insert vacuums." -msgstr "-1 stänger av \"inlining\"" +msgstr "-1 stänger av insert-vacuum" #: utils/misc/guc_tables.c:3558 msgid "Minimum number of tuple inserts, updates, or deletes prior to analyze." @@ -31776,10 +31505,8 @@ msgid "Multixact age at which to autovacuum a table to prevent multixact wraparo 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 -#, 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 "Sätter maximalt minne som kan användas av varje arbetsprocess för autovacuum." +msgstr "Sätter antal backend-slots som allokerats till autovacuum-arbetare." #: utils/misc/guc_tables.c:3599 msgid "Sets the maximum number of simultaneously running autovacuum worker processes." @@ -31802,10 +31529,8 @@ 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 -#, fuzzy -#| msgid "Reduce \"maintenance_work_mem\"." msgid "-1 means use \"maintenance_work_mem\"." -msgstr "Minska \"maintenance_work_mem\"." +msgstr "-1 betyder att \"maintenance_work_mem\" används." #: utils/misc/guc_tables.c:3652 msgid "Time between issuing TCP keepalives." @@ -31813,10 +31538,8 @@ 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 -#, fuzzy -#| msgid "A value of 0 uses the system default." msgid "0 means use the system default." -msgstr "Värdet 0 anger systemets standardvärde." +msgstr "0 betyder systemets standardvärde." #: utils/misc/guc_tables.c:3663 msgid "Time between TCP keepalive retransmits." @@ -31831,20 +31554,16 @@ msgid "Maximum number of TCP keepalive retransmits." msgstr "Maximalt antal omsändningar av TCP-keepalive." #: utils/misc/guc_tables.c:3686 -#, 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 "Atalet keepalive-omsändingar i rad som kan försvinna innan en anslutning anses vara död. Värdet 0 betyder systemstandardvärdet." +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 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 -#, fuzzy -#| msgid "-1 means no limit." msgid "0 means no limit." -msgstr "-1 betyder ingen gräns." +msgstr "0 betyder ingen gräns." #: utils/misc/guc_tables.c:3707 msgid "Sets the planner's assumption about the total size of the data caches." @@ -31879,10 +31598,8 @@ 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 -#, fuzzy -#| msgid "constraints on temporary tables may reference only temporary tables" msgid "-1 disables logging temporary files. 0 means log all temporary files." -msgstr "villkor på temporära tabeller får bara referera till temporära tabeller" +msgstr "-1 stänger av loggning av temporära filer. 0 betyder att alla temporära filer loggas." #: utils/misc/guc_tables.c:3764 msgid "Sets the size reserved for pg_stat_activity.query, in bytes." @@ -31906,17 +31623,15 @@ msgstr "Flush:a systemcache aggressivt för att förenkla debugging." #: utils/misc/guc_tables.c:3809 msgid "0 means use normal caching behavior." -msgstr "" +msgstr "0 betyder att normalt cache-beteende används." #: utils/misc/guc_tables.c:3831 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 -#, fuzzy -#| msgid "Enables SSL connections." msgid "0 disables connection checks." -msgstr "Tillåter SSL-anslutningar." +msgstr "0 stänger av anslutningskontroller." #: utils/misc/guc_tables.c:3842 msgid "Time between progress updates for long-running startup operations." @@ -31924,7 +31639,7 @@ msgstr "Tid mellan uppdatering av progress för startupoperationer som kör län #: utils/misc/guc_tables.c:3844 msgid "0 disables progress updates." -msgstr "" +msgstr "0 stänger av uppdatering av progress." #: utils/misc/guc_tables.c:3854 msgid "Sets the iteration count for SCRAM secret generation." @@ -32020,7 +31735,7 @@ msgstr "Städkostfördröjning i millisekunder, för autovacuum." #: utils/misc/guc_tables.c:4075 msgid "-1 means use \"vacuum_cost_delay\"." -msgstr "" +msgstr "-1 betyder att \"vacuum_cost_delay\" används." #: utils/misc/guc_tables.c:4085 msgid "Number of tuple updates or deletes prior to vacuum as a fraction of reltuples." @@ -32056,11 +31771,11 @@ msgstr "Använd ett värde mellan 0.0 (logga aldrig) till 1.0 (logga all satser #: 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 "" +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 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 "" +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 msgid "Sets the shell command that will be called to archive a WAL file." @@ -32068,15 +31783,13 @@ msgstr "Sätter shell-kommandot som kommer anropas för att arkivera en WAL-fil. #: utils/misc/guc_tables.c:4166 msgid "An empty string means use \"archive_library\"." -msgstr "" +msgstr "En tom sträng betyder att \"archive_library\" används." #: utils/misc/guc_tables.c:4175 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 -#, fuzzy -#| msgid "An empty string indicates that \"archive_command\" should be used." msgid "An empty string means use \"archive_command\"." msgstr "En tom sträng betyder att \"archive_command\" skall användas." @@ -32134,7 +31847,7 @@ msgstr "Styr information prefixat till varje loggrad." #: utils/misc/guc_tables.c:4304 msgid "An empty string means no prefix." -msgstr "" +msgstr "En tom stäng betyder inget prefix." #: utils/misc/guc_tables.c:4313 msgid "Sets the time zone to use in log messages." @@ -32157,10 +31870,8 @@ 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 -#, fuzzy -#| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use the database's default tablespace." -msgstr "En tom sträng väljer databasens standardtabellutrymme." +msgstr "En tom sträng betyder att databasens standardtabellutrymme används." #: utils/misc/guc_tables.c:4357 msgid "Sets the tablespace(s) to use for temporary tables and sort files." @@ -32172,7 +31883,7 @@ msgstr "Sätter hurvida en CREATEROLE-användare automatiskt får rollen själva #: utils/misc/guc_tables.c:4370 msgid "An empty string disables automatic self grants." -msgstr "" +msgstr "En tom stäng stänger av automatiska grant till sig själv." #: utils/misc/guc_tables.c:4380 msgid "Sets the path for dynamically loadable modules." @@ -32183,14 +31894,12 @@ msgid "If a dynamically loadable module needs to be opened and the specified nam 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 -#, fuzzy -#| msgid "Sets the file permissions for log files." msgid "Sets the path for extension control files." -msgstr "Sätter filrättigheter för loggfiler." +msgstr "Sätter sökvägen till utökningars kontrollfiler." #: 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 "" +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 msgid "Sets the location of the Kerberos server key file." @@ -32202,7 +31911,7 @@ msgstr "Sätter Bonjour-tjänstens namn." #: utils/misc/guc_tables.c:4418 msgid "An empty string means use the computer name." -msgstr "" +msgstr "En tom sträng betyder att datorns namn används." #: utils/misc/guc_tables.c:4427 msgid "Sets the language in which messages are displayed." @@ -32211,7 +31920,7 @@ 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 msgid "An empty string means use the operating system setting." -msgstr "" +msgstr "En tom sträng betyder att operativsystemets inställning används." #: utils/misc/guc_tables.c:4437 msgid "Sets the locale for formatting monetary amounts." @@ -32298,10 +32007,8 @@ 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 -#, 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 "Ägaren av uttaget (socker) är alltid användaren som startar servern." +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 msgid "Sets the directories where Unix-domain sockets will be created." @@ -32364,40 +32071,32 @@ msgid "Sets default text search configuration." msgstr "Ställer in standard textsökkonfiguration." #: utils/misc/guc_tables.c:4813 -#, fuzzy -#| msgid "Sets the list of allowed SSL ciphers." msgid "Sets the list of allowed TLSv1.3 cipher suites." -msgstr "Ställer in listan med tillåtna SSL-krypton." +msgstr "Ställer in listan med tillåtna TLSv1.3-krypton." #: utils/misc/guc_tables.c:4814 -#, fuzzy -#| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use the default cipher suites." -msgstr "En tom sträng väljer databasens standardtabellutrymme." +msgstr "En tom sträng betyder att standardkryptot används." #: utils/misc/guc_tables.c:4824 -#, fuzzy -#| msgid "Sets the list of allowed SSL ciphers." msgid "Sets the list of allowed TLSv1.2 (and lower) ciphers." -msgstr "Ställer in listan med tillåtna SSL-krypton." +msgstr "Ställer in listan med tillåtna TLSv1.2-krypton (och lägre)." #: utils/misc/guc_tables.c:4839 msgid "Sets the group(s) to use for Diffie-Hellman key exchange." -msgstr "" +msgstr "Sätter group(er) som används för Diffie-Hellmans nyckelutbyte." #: utils/misc/guc_tables.c:4840 msgid "Multiple groups can be specified using a colon-separated list." -msgstr "" +msgstr "Multipla grupper kan anges med en kolonseparerad lista." #: utils/misc/guc_tables.c:4854 msgid "Location of the SSL DH parameters file." msgstr "Plats för SSL DH-parameterfil." #: utils/misc/guc_tables.c:4855 -#, fuzzy -#| msgid "An empty string selects the database's default tablespace." msgid "An empty string means use compiled-in default parameters." -msgstr "En tom sträng väljer databasens standardtabellutrymme." +msgstr "En tom sträng betyder att inkompilerade defaultvärden används." #: utils/misc/guc_tables.c:4865 msgid "Command to obtain passphrases for SSL." @@ -32405,7 +32104,7 @@ msgstr "Kommando för att hämta lösenfraser för SSL." #: utils/misc/guc_tables.c:4866 msgid "An empty string means use the built-in prompting mechanism." -msgstr "" +msgstr "En tom sträng betyder att inbyggd befordransmekanism används." #: utils/misc/guc_tables.c:4876 msgid "Sets the application name to be reported in statistics and logs." @@ -32437,7 +32136,7 @@ msgstr "Använd direct-I/O för filaccess." #: utils/misc/guc_tables.c:4932 msgid "An empty string disables direct I/O." -msgstr "" +msgstr "En tom sträng stänger av direkt I/O." #: utils/misc/guc_tables.c:4942 msgid "Lists streaming replication standby server replication slot names that logical WAL sender processes will wait for." @@ -32457,7 +32156,7 @@ msgstr "Listar bibliotek som kan anropas för att validera OAuth v2 bärande tok #: utils/misc/guc_tables.c:4978 msgid "Logs specified aspects of connection establishment and setup." -msgstr "" +msgstr "Loggar angivna egenskaper om anslutningar och uppsättning." #: utils/misc/guc_tables.c:4999 msgid "Sets whether \"\\'\" is allowed in string literals." @@ -32641,10 +32340,8 @@ msgid "On the publisher, it allows streaming or serializing each change in logic 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 -#, fuzzy -#| msgid "Selects the method used for forcing WAL updates to disk." msgid "Selects the method for executing asynchronous I/O." -msgstr "Väljer metod för att tvinga WAL-uppdateringar till disk." +msgstr "Väljer metod för att köra asynkron I/O." #: utils/misc/help_config.c:129 #, c-format @@ -32683,10 +32380,9 @@ msgid "Increase the configuration parameter \"max_stack_depth\" (currently %dkB) msgstr "Öka konfigurationsparametern \"max_stack_depth\" (nu %dkB) efter att ha undersökt att plattformens gräns för stackdjup är tillräcklig." #: utils/misc/stack_depth.c:149 -#, fuzzy, c-format -#| msgid "\"max_stack_depth\" must not exceed %ldkB." +#, c-format msgid "\"max_stack_depth\" must not exceed %zdkB." -msgstr "\"max_stack_depth\" får ej överskrida %ldkB." +msgstr "\"max_stack_depth\" får ej överskrida %zdkB." #: utils/misc/stack_depth.c:151 #, c-format @@ -32820,10 +32516,9 @@ msgid "cannot perform transaction commands inside a cursor loop that is not read msgstr "kan inte utföra transaktionskommandon i en markörloop som inte är read-only" #: utils/sort/logtape.c:266 utils/sort/logtape.c:287 -#, fuzzy, c-format -#| msgid "could not seek to block %lld of temporary file" +#, c-format msgid "could not seek to block % of temporary file" -msgstr "kunde inte söka (seek) till block %lld i temporärfil" +msgstr "kunde inte söka (seek) till block % i temporärfil" #: utils/sort/sharedtuplestore.c:466 #, c-format @@ -32864,57 +32559,57 @@ msgstr "Duplicerade nycklar existerar." msgid "could not seek in tuplestore temporary file" msgstr "kunde inte söka i temporär lagringsfil för tupler" -#: utils/time/snapmgr.c:557 +#: utils/time/snapmgr.c:568 #, c-format msgid "The source transaction is not running anymore." msgstr "Källtransaktionen kör inte längre." -#: utils/time/snapmgr.c:1143 +#: utils/time/snapmgr.c:1154 #, c-format msgid "cannot export a snapshot from a subtransaction" msgstr "kan inte exportera ett snapshot från en undertransaktion" -#: 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 "ogiltig snapshot-data i fil \"%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 måste anropas innan någon fråga" -#: 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 "en snapshot-importerande transaktion måste ha isoleringsnivå SERIALIZABLE eller REPEATABLE READ" -#: utils/time/snapmgr.c:1418 +#: utils/time/snapmgr.c:1429 #, c-format msgid "invalid snapshot identifier: \"%s\"" msgstr "ogiltig snapshot-identifierare: \"%s\"" -#: utils/time/snapmgr.c:1433 +#: utils/time/snapmgr.c:1444 #, c-format msgid "snapshot \"%s\" does not exist" msgstr "snapshot \"%s\" existerar inte" -#: 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 "en serialiserbar transaktion kan inte importera ett snapshot från en icke-serialiserbar transaktion" -#: 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 "en serialiserbar transaktion som inte är read-only kan inte importera en snapshot från en read-only-transaktion." -#: utils/time/snapmgr.c:1550 +#: utils/time/snapmgr.c:1561 #, c-format msgid "cannot import a snapshot from a different database" msgstr "kan inte importera en snapshot från en annan databas" diff --git a/src/bin/initdb/po/es.po b/src/bin/initdb/po/es.po index 1c12d9c641771..88b81e174da3d 100644 --- a/src/bin/initdb/po/es.po +++ b/src/bin/initdb/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: initdb (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:50+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:50+0000\n" +"PO-Revision-Date: 2025-09-21 11:13+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -20,22 +20,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -60,28 +60,28 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "no se pudo resolver la ruta «%s» a forma absoluta: %m" -#: ../../common/exec.c:382 initdb.c:750 +#: ../../common/exec.c:363 initdb.c:753 #, c-format msgid "could not execute command \"%s\": %m" msgstr "no se pudo ejecutar la orden «%s»: %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "no se pudo leer desde la orden «%s»: %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %m" -#: ../../common/exec.c:562 ../../common/exec.c:607 ../../common/exec.c:699 -#: initdb.c:372 initdb.c:408 +#: ../../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 "memoria agotada" @@ -97,46 +97,46 @@ 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: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 "no se pudo abrir el archivo «%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 "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -265,291 +265,291 @@ msgstr "no se pudo definir un junction para «%s»: %s\n" msgid "could not get junction for \"%s\": %s\n" msgstr "no se pudo obtener junction para «%s»: %s\n" -#: initdb.c:369 +#: initdb.c:372 #, c-format msgid "_wsetlocale() failed" msgstr "_wsetlocale() falló" -#: initdb.c:376 +#: initdb.c:379 #, c-format msgid "setlocale() failed" msgstr "setlocale() falló" -#: initdb.c:390 +#: initdb.c:393 #, c-format msgid "failed to restore old locale" msgstr "no se pudo restaurar la configuración regional anterior" -#: initdb.c:393 +#: initdb.c:396 #, c-format msgid "failed to restore old locale \"%s\"" msgstr "no se pudo restaurar la configuración regional anterior «%s»" -#: initdb.c:682 initdb.c:1674 +#: initdb.c:685 initdb.c:1692 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "no se pudo abrir archivo «%s» para lectura: %m" -#: initdb.c:726 initdb.c:1030 initdb.c:1050 +#: initdb.c:729 initdb.c:1035 initdb.c:1055 #, c-format msgid "could not open file \"%s\" for writing: %m" msgstr "no se pudo abrir el archivo «%s» para escritura: %m" -#: initdb.c:730 initdb.c:1033 initdb.c:1052 +#: initdb.c:733 initdb.c:1038 initdb.c:1057 #, c-format msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%s»: %m" -#: initdb.c:734 +#: initdb.c:737 #, c-format msgid "could not close file \"%s\": %m" msgstr "no se pudo cerrar el archivo «%s»: %m" -#: initdb.c:768 +#: initdb.c:771 #, c-format msgid "removing data directory \"%s\"" msgstr "eliminando el directorio de datos «%s»" -#: initdb.c:770 +#: initdb.c:773 #, c-format msgid "failed to remove data directory" msgstr "no se pudo eliminar el directorio de datos" -#: initdb.c:774 +#: initdb.c:777 #, c-format msgid "removing contents of data directory \"%s\"" msgstr "eliminando el contenido del directorio «%s»" -#: initdb.c:777 +#: initdb.c:780 #, c-format msgid "failed to remove contents of data directory" msgstr "no se pudo eliminar el contenido del directorio de datos" -#: initdb.c:782 +#: initdb.c:785 #, c-format msgid "removing WAL directory \"%s\"" msgstr "eliminando el directorio de WAL «%s»" -#: initdb.c:784 +#: initdb.c:787 #, c-format msgid "failed to remove WAL directory" msgstr "no se pudo eliminar el directorio de WAL" -#: initdb.c:788 +#: initdb.c:791 #, c-format msgid "removing contents of WAL directory \"%s\"" msgstr "eliminando el contenido del directorio de WAL «%s»" -#: initdb.c:790 +#: initdb.c:793 #, c-format msgid "failed to remove contents of WAL directory" msgstr "no se pudo eliminar el contenido del directorio de WAL" -#: initdb.c:797 +#: initdb.c:800 #, c-format msgid "data directory \"%s\" not removed at user's request" msgstr "directorio de datos «%s» no eliminado a petición del usuario" -#: initdb.c:801 +#: initdb.c:804 #, c-format msgid "WAL directory \"%s\" not removed at user's request" msgstr "directorio de WAL «%s» no eliminado a petición del usuario" -#: initdb.c:819 +#: initdb.c:822 #, c-format msgid "cannot be run as root" msgstr "no se puede ejecutar como «root»" -#: initdb.c:820 +#: initdb.c:823 #, c-format msgid "Please log in (using, e.g., \"su\") as the (unprivileged) user that will own the server process." msgstr "Por favor conéctese (usando, por ejemplo, «su») con un usuario no privilegiado, quien ejecutará el proceso servidor." -#: initdb.c:852 +#: initdb.c:855 #, c-format msgid "\"%s\" is not a valid server encoding name" msgstr "«%s» no es un nombre válido de codificación" -#: initdb.c:996 +#: initdb.c:1001 #, c-format msgid "file \"%s\" does not exist" msgstr "el archivo «%s» no existe" -#: initdb.c:997 initdb.c:1002 initdb.c:1009 +#: 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 "Esto puede significar que tiene una instalación corrupta o ha identificado el directorio equivocado con la opción -L." -#: initdb.c:1001 +#: initdb.c:1006 #, c-format msgid "could not access file \"%s\": %m" msgstr "no se pudo acceder al archivo «%s»: %m" -#: initdb.c:1008 +#: initdb.c:1013 #, c-format msgid "file \"%s\" is not a regular file" msgstr "el archivo «%s» no es un archivo regular" -#: initdb.c:1141 +#: initdb.c:1157 #, c-format msgid "selecting dynamic shared memory implementation ... " msgstr "seleccionando implementación de memoria compartida dinámica ... " -#: initdb.c:1150 +#: initdb.c:1167 #, c-format msgid "selecting default \"max_connections\" ... " msgstr "seleccionando el valor para «max_connections» ... " -#: initdb.c:1170 +#: initdb.c:1188 #, c-format msgid "selecting default \"shared_buffers\" ... " msgstr "seleccionando el valor para «shared_buffers» ... " -#: initdb.c:1193 +#: initdb.c:1211 #, c-format msgid "selecting default time zone ... " msgstr "seleccionando el huso horario por omisión ... " -#: initdb.c:1272 +#: initdb.c:1291 msgid "creating configuration files ... " msgstr "creando archivos de configuración ... " -#: initdb.c:1425 initdb.c:1439 initdb.c:1506 initdb.c:1517 +#: initdb.c:1443 initdb.c:1457 initdb.c:1524 initdb.c:1535 #, c-format msgid "could not change permissions of \"%s\": %m" msgstr "no se pudo cambiar los permisos de «%s»: %m" -#: initdb.c:1536 +#: initdb.c:1554 #, c-format msgid "running bootstrap script ... " msgstr "ejecutando script de inicio (bootstrap) ... " -#: initdb.c:1548 +#: initdb.c:1566 #, c-format msgid "input file \"%s\" does not belong to PostgreSQL %s" msgstr "el archivo de entrada «%s» no pertenece a PostgreSQL %s" -#: initdb.c:1550 +#: initdb.c:1568 #, c-format msgid "Specify the correct path using the option -L." msgstr "Especifique la ruta correcta usando la opción -L." -#: initdb.c:1652 +#: initdb.c:1670 msgid "Enter new superuser password: " msgstr "Ingrese la nueva contraseña del superusuario: " -#: initdb.c:1653 +#: initdb.c:1671 msgid "Enter it again: " msgstr "Ingrésela nuevamente: " -#: initdb.c:1656 +#: initdb.c:1674 #, c-format msgid "Passwords didn't match.\n" msgstr "Las contraseñas no coinciden.\n" -#: initdb.c:1680 +#: initdb.c:1698 #, c-format msgid "could not read password from file \"%s\": %m" msgstr "no se pudo leer la contraseña desde el archivo «%s»: %m" -#: initdb.c:1683 +#: initdb.c:1701 #, c-format msgid "password file \"%s\" is empty" msgstr "el archivo de contraseña «%s» está vacío" -#: initdb.c:2095 +#: initdb.c:2113 #, c-format msgid "caught signal\n" msgstr "se ha capturado una señal\n" -#: initdb.c:2101 +#: initdb.c:2119 #, c-format msgid "could not write to child process: %s\n" msgstr "no se pudo escribir al proceso hijo: %s\n" -#: initdb.c:2109 +#: initdb.c:2127 #, c-format msgid "ok\n" msgstr "hecho\n" -#: initdb.c:2191 initdb.c:2237 +#: initdb.c:2209 initdb.c:2255 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "el nombre de configuración regional «%s» contiene caracteres no ASCII" -#: initdb.c:2217 +#: initdb.c:2235 #, c-format msgid "invalid locale name \"%s\"" msgstr "nombre de configuración regional «%s» no es válido" -#: initdb.c:2218 +#: initdb.c:2236 #, c-format msgid "If the locale name is specific to ICU, use --icu-locale." msgstr "Si el nombre de configuración regional es específico a ICU, utilice --icu-locale." -#: initdb.c:2231 +#: initdb.c:2249 #, c-format msgid "invalid locale settings; check LANG and LC_* environment variables" msgstr "configuración regional inválida; revise las variables de entorno LANG y LC_*" -#: initdb.c:2262 initdb.c:2286 +#: initdb.c:2280 initdb.c:2304 #, c-format msgid "encoding mismatch" msgstr "codificaciones no coinciden" -#: initdb.c:2263 +#: 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 "La codificación que seleccionó (%s) y la codificación de la configuración regional elegida (%s) no coinciden. Esto llevaría a comportamientos erráticos en ciertas funciones de procesamiento de cadenas de caracteres." -#: initdb.c:2268 initdb.c:2289 +#: 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 "" "Vuelva a ejecutar %s sin escoger explícitamente una codificación, o bien\n" "escoja una combinación coincidente." -#: initdb.c:2287 +#: initdb.c:2305 #, c-format msgid "The encoding you selected (%s) is not supported with the ICU provider." msgstr "La codificación que seleccionó (%s) no está soportada con el proveedor ICU." -#: initdb.c:2338 +#: initdb.c:2356 #, c-format msgid "could not convert locale name \"%s\" to language tag: %s" msgstr "no se pudo convertir el nombre de configuración regional «%s» a etiqueta de lenguaje: %s" -#: initdb.c:2344 initdb.c:2396 initdb.c:2488 +#: initdb.c:2362 initdb.c:2414 initdb.c:2508 #, c-format msgid "ICU is not supported in this build" msgstr "ICU no está soportado en este servidor" -#: initdb.c:2367 +#: initdb.c:2385 #, c-format msgid "could not get language from locale \"%s\": %s" msgstr "no se pudo el lenguaje de la configuración regional «%s»: %s" -#: initdb.c:2393 +#: initdb.c:2411 #, c-format msgid "locale \"%s\" has unknown language \"%s\"" msgstr "la configuración regional «%s» no idioma desconocido «%s»" -#: initdb.c:2454 +#: initdb.c:2472 #, c-format msgid "locale must be specified if provider is %s" msgstr "la configuración regional debe especificarse si el proveedor es %s" -#: initdb.c:2465 +#: initdb.c:2485 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "nombre de configuración regional «%s» no válido para el proveedor builtin" -#: initdb.c:2476 +#: initdb.c:2496 #, c-format msgid "Using language tag \"%s\" for ICU locale \"%s\".\n" msgstr "Usando la etiqueta de idioma «%s» para la configuración regional ICU «%s».\n" -#: initdb.c:2499 +#: initdb.c:2519 #, c-format msgid "" "%s initializes a PostgreSQL database cluster.\n" @@ -558,17 +558,17 @@ msgstr "" "%s inicializa un cluster de base de datos PostgreSQL.\n" "\n" -#: initdb.c:2500 +#: initdb.c:2520 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: initdb.c:2501 +#: initdb.c:2521 #, c-format msgid " %s [OPTION]... [DATADIR]\n" msgstr " %s [OPCIÓN]... [DATADIR]\n" -#: initdb.c:2502 +#: initdb.c:2522 #, c-format msgid "" "\n" @@ -577,69 +577,69 @@ msgstr "" "\n" "Opciones:\n" -#: initdb.c:2503 +#: initdb.c:2523 #, c-format msgid " -A, --auth=METHOD default authentication method for local connections\n" msgstr "" " -A, --auth=MÉTODO método de autentificación por omisión para\n" " conexiones locales\n" -#: initdb.c:2504 +#: initdb.c:2524 #, c-format msgid " --auth-host=METHOD default authentication method for local TCP/IP connections\n" msgstr "" " --auth-host=MÉTODO método de autentificación por omisión para\n" " conexiones locales TCP/IP\n" -#: initdb.c:2505 +#: initdb.c:2525 #, c-format msgid " --auth-local=METHOD default authentication method for local-socket connections\n" msgstr "" " --auth-local=MÉTODO método de autentificación por omisión para\n" " conexiones de socket local\n" -#: initdb.c:2506 +#: initdb.c:2526 #, c-format msgid " [-D, --pgdata=]DATADIR location for this database cluster\n" msgstr " [-D, --pgdata=]DATADIR ubicación para este cluster de bases de datos\n" -#: initdb.c:2507 +#: initdb.c:2527 #, c-format msgid " -E, --encoding=ENCODING set default encoding for new databases\n" msgstr " -E, --encoding=CODIF codificación por omisión para nuevas bases de datos\n" -#: initdb.c:2508 +#: initdb.c:2528 #, c-format msgid " -g, --allow-group-access allow group read/execute on data directory\n" msgstr "" " -g, --allow-group-access dar al grupo permisos de lectura/ejecución sobre\n" " el directorio de datos\n" -#: initdb.c:2509 +#: initdb.c:2529 #, c-format msgid " --icu-locale=LOCALE set ICU locale ID for new databases\n" msgstr "" " --icu-locale=LOCALE definir el ID de configuración regional ICU para\n" " nuevas bases de datos\n" -#: initdb.c:2510 +#: initdb.c:2530 #, c-format msgid " --icu-rules=RULES set additional ICU collation rules for new databases\n" msgstr " --icu-rules=REGLAS reglas de ordenamiento ICU adicionales para nuevas bases de datos\n" -#: initdb.c:2511 +#: initdb.c:2531 #, c-format msgid " -k, --data-checksums use data page checksums\n" msgstr " -k, --data-checksums activar sumas de verificación en páginas de datos\n" -#: initdb.c:2512 +#: initdb.c:2532 #, c-format msgid " --locale=LOCALE set default locale for new databases\n" msgstr "" " --locale=LOCALE configuración regional por omisión para \n" " nuevas bases de datos\n" -#: initdb.c:2513 +#: initdb.c:2533 #, c-format msgid "" " --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n" @@ -653,12 +653,12 @@ msgstr "" " en la categoría respectiva (el valor por omisión\n" " es tomado de variables de ambiente)\n" -#: initdb.c:2517 +#: initdb.c:2537 #, c-format msgid " --no-locale equivalent to --locale=C\n" msgstr " --no-locale equivalente a --locale=C\n" -#: initdb.c:2518 +#: initdb.c:2538 #, c-format msgid "" " --builtin-locale=LOCALE\n" @@ -668,7 +668,7 @@ msgstr "" " define el nombre de configuración regional builtin\n" " para nuevas bases de datos\n" -#: initdb.c:2520 +#: initdb.c:2540 #, c-format msgid "" " --locale-provider={builtin|libc|icu}\n" @@ -678,12 +678,18 @@ msgstr "" " define el proveedor de configuración regional\n" " para nuevas bases de datos\n" -#: initdb.c:2522 +#: initdb.c:2542 +#, c-format +#| msgid " -k, --data-checksums use data page checksums\n" +msgid " --no-data-checksums do not use data page checksums\n" +msgstr " --no-data-checksums no usar sumas de verificación en páginas de datos\n" + +#: initdb.c:2543 #, c-format msgid " --pwfile=FILE read password for the new superuser from file\n" msgstr " --pwfile=ARCHIVO leer contraseña del nuevo superusuario del archivo\n" -#: initdb.c:2523 +#: initdb.c:2544 #, c-format msgid "" " -T, --text-search-config=CFG\n" @@ -692,27 +698,27 @@ msgstr "" " -T, --text-search-config=CONF\n" " configuración de búsqueda en texto por omisión\n" -#: initdb.c:2525 +#: initdb.c:2546 #, c-format msgid " -U, --username=NAME database superuser name\n" msgstr " -U, --username=USUARIO nombre del superusuario del cluster\n" -#: initdb.c:2526 +#: initdb.c:2547 #, c-format msgid " -W, --pwprompt prompt for a password for the new superuser\n" msgstr " -W, --pwprompt pedir una contraseña para el nuevo superusuario\n" -#: initdb.c:2527 +#: initdb.c:2548 #, c-format msgid " -X, --waldir=WALDIR location for the write-ahead log directory\n" msgstr " -X, --waldir=WALDIR ubicación del directorio WAL\n" -#: initdb.c:2528 +#: initdb.c:2549 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=TAMAÑO tamaño de los segmentos de WAL, en megabytes\n" -#: initdb.c:2529 +#: initdb.c:2550 #, c-format msgid "" "\n" @@ -721,57 +727,63 @@ msgstr "" "\n" "Opciones menos usadas:\n" -#: initdb.c:2530 +#: initdb.c:2551 #, c-format msgid " -c, --set NAME=VALUE override default setting for server parameter\n" msgstr " -c, --set VAR=VALOR sobreescribir el valor por omisión del parámetro\n" -#: initdb.c:2531 +#: initdb.c:2552 #, c-format msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug genera mucha salida de depuración\n" -#: initdb.c:2532 +#: initdb.c:2553 #, c-format msgid " --discard-caches set debug_discard_caches=1\n" msgstr " --discard-caches establece debug_discard_caches=1\n" -#: initdb.c:2533 +#: initdb.c:2554 #, c-format msgid " -L DIRECTORY where to find the input files\n" msgstr " -L DIRECTORIO donde encontrar los archivos de entrada\n" -#: initdb.c:2534 +#: initdb.c:2555 #, c-format msgid " -n, --no-clean do not clean up after errors\n" msgstr " -n, --no-clean no limpiar después de errores\n" -#: initdb.c:2535 +#: 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 no esperar que los cambios se sincronicen a disco\n" -#: initdb.c:2536 +#: initdb.c:2557 +#, c-format +#| msgid " --no-estimate-size do not estimate backup size in server side\n" +msgid " --no-sync-data-files do not sync files within database directories\n" +msgstr " --no-sync-data-files no sincronizar archivos en los directorios de datos\n" + +#: initdb.c:2558 #, c-format msgid " --no-instructions do not print instructions for next steps\n" msgstr " --no-instructions no mostrar instrucciones para los siguientes pasos\n" -#: initdb.c:2537 +#: initdb.c:2559 #, c-format msgid " -s, --show show internal settings, then exit\n" msgstr " -s, --show muestra variables internas y salir\n" -#: initdb.c:2538 +#: initdb.c:2560 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=MÉTODO definir método para sincronizar archivos a disco\n" -#: initdb.c:2539 +#: initdb.c:2561 #, c-format msgid " -S, --sync-only only sync database files to disk, then exit\n" msgstr " -S, --sync-only sólo sincronizar el directorio de datos y salir\n" -#: initdb.c:2540 +#: initdb.c:2562 #, c-format msgid "" "\n" @@ -780,17 +792,17 @@ msgstr "" "\n" "Otras opciones:\n" -#: initdb.c:2541 +#: initdb.c:2563 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de version y salir\n" -#: initdb.c:2542 +#: initdb.c:2564 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: initdb.c:2543 +#: initdb.c:2565 #, c-format msgid "" "\n" @@ -801,7 +813,7 @@ msgstr "" "Si el directorio de datos no es especificado, se usa la variable de\n" "ambiente PGDATA.\n" -#: initdb.c:2545 +#: initdb.c:2567 #, c-format msgid "" "\n" @@ -810,72 +822,72 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: initdb.c:2546 +#: initdb.c:2568 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: initdb.c:2570 +#: initdb.c:2592 #, c-format msgid "invalid authentication method \"%s\" for \"%s\" connections" msgstr "método de autentificación «%s» no válido para conexiones «%s»" -#: initdb.c:2584 +#: initdb.c:2606 #, c-format msgid "must specify a password for the superuser to enable password authentication" msgstr "debe especificar una contraseña al superusuario para activar autentificación mediante contraseña" -#: initdb.c:2603 +#: initdb.c:2625 #, c-format msgid "no data directory specified" msgstr "no se especificó un directorio de datos" -#: initdb.c:2604 +#: 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 "Debe especificar el directorio donde residirán los datos para este clúster. Hágalo usando la opción -D o la variable de ambiente PGDATA." -#: initdb.c:2621 +#: initdb.c:2643 #, c-format msgid "could not set environment" msgstr "no se pudo establecer el ambiente" -#: initdb.c:2639 +#: initdb.c:2661 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "el programa «%s» es requerido por %s pero se encontró en el mismo directorio que «%s»" -#: initdb.c:2642 +#: initdb.c:2664 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "El programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s" -#: initdb.c:2657 +#: initdb.c:2679 #, c-format msgid "input file location must be an absolute path" msgstr "la ubicación de archivos de entrada debe ser una ruta absoluta" -#: initdb.c:2674 +#: initdb.c:2696 #, c-format msgid "The database cluster will be initialized with locale \"%s\".\n" msgstr "El cluster será inicializado con configuración regional «%s».\n" -#: initdb.c:2677 +#: initdb.c:2699 #, c-format msgid "The database cluster will be initialized with this locale configuration:\n" msgstr "El cluster será inicializado con esta configuración regional:\n" -#: initdb.c:2678 +#: initdb.c:2700 #, c-format msgid " locale provider: %s\n" msgstr " proveedor de configuración regional: %s\n" -#: initdb.c:2680 +#: initdb.c:2702 #, c-format msgid " default collation: %s\n" msgstr " ordenamiento por omisión: %s\n" -#: initdb.c:2681 +#: initdb.c:2703 #, c-format msgid "" " LC_COLLATE: %s\n" @@ -892,22 +904,22 @@ msgstr "" " LC_NUMERIC: %s\n" " LC_TIME: %s\n" -#: initdb.c:2711 +#: initdb.c:2733 #, c-format msgid "could not find suitable encoding for locale \"%s\"" msgstr "no se pudo encontrar una codificación apropiada para la configuración regional «%s»" -#: initdb.c:2713 +#: initdb.c:2735 #, c-format msgid "Rerun %s with the -E option." msgstr "Ejecute %s nuevamente con la opción -E." -#: initdb.c:2714 initdb.c:3257 initdb.c:3377 initdb.c:3397 +#: initdb.c:2736 initdb.c:3274 initdb.c:3400 initdb.c:3420 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: initdb.c:2726 +#: initdb.c:2748 #, c-format msgid "" "Encoding \"%s\" implied by locale is not allowed as a server-side encoding.\n" @@ -917,114 +929,114 @@ msgstr "" "no puede ser usada como codificación del lado del servidor.\n" "La codificación por omisión será «%s».\n" -#: initdb.c:2731 +#: initdb.c:2753 #, c-format msgid "locale \"%s\" requires unsupported encoding \"%s\"" msgstr "la configuración regional «%s» requiere la codificación no soportada «%s»" -#: initdb.c:2733 +#: initdb.c:2755 #, c-format msgid "Encoding \"%s\" is not allowed as a server-side encoding." msgstr "La codificación «%s» no puede ser usada como codificación del lado del servidor." -#: initdb.c:2735 +#: initdb.c:2757 #, c-format msgid "Rerun %s with a different locale selection." msgstr "Ejecute %s nuevamente con opciones de configuración regional diferente." -#: initdb.c:2743 +#: initdb.c:2765 #, c-format msgid "The default database encoding has accordingly been set to \"%s\".\n" msgstr "La codificación por omisión ha sido por lo tanto definida a «%s».\n" -#: initdb.c:2757 +#: initdb.c:2781 #, c-format msgid "builtin provider locale \"%s\" requires encoding \"%s\"" msgstr "la configuración regional «%s» del proveedor builtin requiere la codificación «%s»" -#: initdb.c:2819 +#: initdb.c:2843 #, c-format msgid "could not find suitable text search configuration for locale \"%s\"" msgstr "" "no se pudo encontrar una configuración para búsqueda en texto apropiada\n" "para la configuración regional «%s»" -#: initdb.c:2830 +#: initdb.c:2854 #, c-format msgid "suitable text search configuration for locale \"%s\" is unknown" msgstr "la configuración de búsqueda en texto apropiada para la configuración regional «%s» es desconocida" -#: initdb.c:2835 +#: initdb.c:2859 #, c-format msgid "specified text search configuration \"%s\" might not match locale \"%s\"" msgstr "la configuración de búsqueda en texto «%s» especificada podría no coincidir con la configuración regional «%s»" -#: initdb.c:2840 +#: initdb.c:2864 #, c-format msgid "The default text search configuration will be set to \"%s\".\n" msgstr "La configuración de búsqueda en texto ha sido definida a «%s».\n" -#: initdb.c:2883 initdb.c:2954 +#: initdb.c:2898 initdb.c:2969 #, c-format msgid "creating directory %s ... " msgstr "creando el directorio %s ... " -#: initdb.c:2888 initdb.c:2959 initdb.c:3007 initdb.c:3064 +#: initdb.c:2903 initdb.c:2974 initdb.c:3022 initdb.c:3079 #, c-format msgid "could not create directory \"%s\": %m" msgstr "no se pudo crear el directorio «%s»: %m" -#: initdb.c:2897 initdb.c:2969 +#: initdb.c:2912 initdb.c:2984 #, c-format msgid "fixing permissions on existing directory %s ... " msgstr "corrigiendo permisos en el directorio existente %s ... " -#: initdb.c:2902 initdb.c:2974 +#: initdb.c:2917 initdb.c:2989 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "no se pudo cambiar los permisos del directorio «%s»: %m" -#: initdb.c:2914 initdb.c:2986 +#: initdb.c:2929 initdb.c:3001 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "el directorio «%s» existe pero no está vacío" -#: initdb.c:2918 +#: 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 "Si quiere crear un nuevo cluster de bases de datos, elimine o vacíe el directorio «%s», o ejecute %s con un argumento distinto de «%s»." -#: initdb.c:2926 initdb.c:2996 initdb.c:3422 +#: initdb.c:2941 initdb.c:3011 initdb.c:3445 #, c-format msgid "could not access directory \"%s\": %m" msgstr "no se pudo acceder al directorio «%s»: %m" -#: initdb.c:2947 +#: initdb.c:2962 #, c-format msgid "WAL directory location must be an absolute path" msgstr "la ubicación del directorio de WAL debe ser una ruta absoluta" -#: initdb.c:2990 +#: initdb.c:3005 #, c-format msgid "If you want to store the WAL there, either remove or empty the directory \"%s\"." msgstr "Si quiere almacenar el WAL ahí, elimine o vacíe el directorio «%s»." -#: initdb.c:3000 +#: initdb.c:3015 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "no se pudo crear el enlace simbólico «%s»: %m" -#: initdb.c:3019 +#: initdb.c:3034 #, c-format msgid "It contains a dot-prefixed/invisible file, perhaps due to it being a mount point." msgstr "Contiene un archivo invisible o que empieza con un punto (.), quizás por ser un punto de montaje." -#: initdb.c:3021 +#: initdb.c:3036 #, c-format msgid "It contains a lost+found directory, perhaps due to it being a mount point." msgstr "Contiene un directorio lost+found, quizás por ser un punto de montaje." -#: initdb.c:3023 +#: initdb.c:3038 #, c-format msgid "" "Using a mount point directly as the data directory is not recommended.\n" @@ -1033,67 +1045,67 @@ msgstr "" "Usar un punto de montaje directamente como directorio de datos no es recomendado.\n" "Cree un subdirectorio bajo el punto de montaje." -#: initdb.c:3050 +#: initdb.c:3065 #, c-format msgid "creating subdirectories ... " msgstr "creando subdirectorios ... " -#: initdb.c:3093 +#: initdb.c:3108 msgid "performing post-bootstrap initialization ... " msgstr "realizando inicialización post-bootstrap ... " -#: initdb.c:3256 +#: initdb.c:3273 #, c-format msgid "-c %s requires a value" msgstr "-c %s requiere un valor" -#: initdb.c:3281 +#: initdb.c:3298 #, c-format msgid "Running in debug mode.\n" msgstr "Ejecutando en modo de depuración.\n" -#: initdb.c:3285 +#: initdb.c:3302 #, c-format msgid "Running in no-clean mode. Mistakes will not be cleaned up.\n" msgstr "Ejecutando en modo no-clean. Los errores no serán limpiados.\n" -#: initdb.c:3358 +#: initdb.c:3375 #, c-format msgid "unrecognized locale provider: %s" msgstr "proveedor de ordenamiento no reconocido: %s" -#: initdb.c:3395 +#: initdb.c:3418 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)" -#: initdb.c:3402 initdb.c:3406 initdb.c:3410 +#: initdb.c:3425 initdb.c:3429 initdb.c:3433 #, c-format msgid "%s cannot be specified unless locale provider \"%s\" is chosen" msgstr "%s no puede especificarse a menos que el proveedor de locale «%s» sea escogido" -#: initdb.c:3424 initdb.c:3487 +#: initdb.c:3447 initdb.c:3510 msgid "syncing data to disk ... " msgstr "sincronizando los datos a disco ... " -#: initdb.c:3432 +#: initdb.c:3455 #, c-format msgid "password prompt and password file cannot be specified together" msgstr "" "la petición de contraseña y el archivo de contraseña no pueden\n" "ser especificados simultáneamente" -#: initdb.c:3443 +#: initdb.c:3466 #, 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" -#: initdb.c:3456 +#: initdb.c:3479 #, c-format msgid "superuser name \"%s\" is disallowed; role names cannot begin with \"pg_\"" msgstr "nombre de superusuario «%s» no permitido; los nombres de rol no pueden comenzar con «pg_»" -#: initdb.c:3458 +#: initdb.c:3481 #, c-format msgid "" "The files belonging to this database system will be owned by user \"%s\".\n" @@ -1104,17 +1116,17 @@ msgstr "" "Este usuario también debe ser quien ejecute el proceso servidor.\n" "\n" -#: initdb.c:3474 +#: initdb.c:3497 #, c-format msgid "Data page checksums are enabled.\n" msgstr "Las sumas de verificación en páginas de datos han sido activadas.\n" -#: initdb.c:3476 +#: initdb.c:3499 #, c-format msgid "Data page checksums are disabled.\n" msgstr "Las sumas de verificación en páginas de datos han sido desactivadas.\n" -#: initdb.c:3493 +#: initdb.c:3516 #, c-format msgid "" "\n" @@ -1126,22 +1138,22 @@ msgstr "" "El directorio de datos podría corromperse si el sistema operativo sufre\n" "una caída.\n" -#: initdb.c:3498 +#: initdb.c:3521 #, c-format msgid "enabling \"trust\" authentication for local connections" msgstr "activando el método de autentificación «trust» para conexiones locales" -#: initdb.c:3499 +#: 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 "Puede cambiar esto editando pg_hba.conf o usando el parámetro -A, o --auth-local y --auth-host la próxima vez que ejecute initdb." #. translator: This is a placeholder in a shell command. -#: initdb.c:3529 +#: initdb.c:3552 msgid "logfile" msgstr "archivo_de_registro" -#: initdb.c:3531 +#: initdb.c:3554 #, c-format msgid "" "\n" diff --git a/src/bin/initdb/po/ko.po b/src/bin/initdb/po/ko.po index cc204fa046df1..6e1b69932a296 100644 --- a/src/bin/initdb/po/ko.po +++ b/src/bin/initdb/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: initdb (PostgreSQL) 17\n" +"Project-Id-Version: initdb (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:51+0000\n" -"PO-Revision-Date: 2025-01-16 11:33+0900\n" +"POT-Creation-Date: 2025-09-11 21:51+0000\n" +"PO-Revision-Date: 2025-09-09 11:33+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -15,22 +15,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 "힌트: " @@ -55,28 +55,28 @@ msgstr "\"%s\" 실행 파일을 찾을 수 없음" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "\"%s\" 경로를 절대 경로로 바꿀 수 없음: %m" -#: ../../common/exec.c:382 initdb.c:750 +#: ../../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:372 initdb.c:408 +#: ../../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 "메모리 부족" @@ -92,46 +92,46 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 중복할 수 없음 (내부 오류)\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\" 파일 fsync 실패: %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 "\"%s\" 파일 fsync 실패: %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" @@ -240,12 +240,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,104 +262,104 @@ msgstr "\"%s\" 파일의 정션을 구할 수 없음: %s\n" # # search5 끝 # # advance 부분 -#: initdb.c:369 +#: initdb.c:372 #, c-format msgid "_wsetlocale() failed" msgstr "_wsetlocale() 실패" # # search5 끝 # # advance 부분 -#: initdb.c:376 +#: initdb.c:379 #, c-format msgid "setlocale() failed" msgstr "setlocale() 실패" -#: initdb.c:390 +#: initdb.c:393 #, c-format msgid "failed to restore old locale" msgstr "옛 로케일을 복원할 수 없음" -#: initdb.c:393 +#: initdb.c:396 #, c-format msgid "failed to restore old locale \"%s\"" msgstr "\"%s\" 옛 로케일을 복원할 수 없음" -#: initdb.c:682 initdb.c:1674 +#: initdb.c:685 initdb.c:1692 #, c-format msgid "could not open file \"%s\" for reading: %m" msgstr "\"%s\" 파일 일기 모드로 열기 실패: %m" -#: initdb.c:726 initdb.c:1030 initdb.c:1050 +#: 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:730 initdb.c:1033 initdb.c:1052 +#: initdb.c:733 initdb.c:1038 initdb.c:1057 #, c-format msgid "could not write file \"%s\": %m" msgstr "\"%s\" 파일 쓰기 실패: %m" -#: initdb.c:734 +#: initdb.c:737 #, c-format msgid "could not close file \"%s\": %m" msgstr "\"%s\" 파일을 닫을 수 없음: %m" -#: initdb.c:768 +#: initdb.c:771 #, c-format msgid "removing data directory \"%s\"" msgstr "\"%s\" 데이터 디렉터리를 지우는 중" -#: initdb.c:770 +#: initdb.c:773 #, c-format msgid "failed to remove data directory" msgstr "데이터 디렉터리를 지우는데 실패" -#: initdb.c:774 +#: initdb.c:777 #, c-format msgid "removing contents of data directory \"%s\"" msgstr "\"%s\" 데이터 디렉터리 안의 내용을 지우는 중" -#: initdb.c:777 +#: initdb.c:780 #, c-format msgid "failed to remove contents of data directory" msgstr "데이터 디렉터리 내용을 지우는데 실패" -#: initdb.c:782 +#: initdb.c:785 #, c-format msgid "removing WAL directory \"%s\"" msgstr "\"%s\" WAL 디렉터리를 지우는 중" -#: initdb.c:784 +#: initdb.c:787 #, c-format msgid "failed to remove WAL directory" msgstr "WAL 디렉터리를 지우는데 실패" -#: initdb.c:788 +#: initdb.c:791 #, c-format msgid "removing contents of WAL directory \"%s\"" msgstr "\"%s\" WAL 디렉터리 안의 내용을 지우는 중" -#: initdb.c:790 +#: initdb.c:793 #, c-format msgid "failed to remove contents of WAL directory" msgstr "WAL 디렉터리 내용을 지우는데 실패" -#: initdb.c:797 +#: initdb.c:800 #, c-format msgid "data directory \"%s\" not removed at user's request" msgstr "\"%s\" 데이터 디렉터리가 사용자의 요청으로 삭제되지 않았음" -#: initdb.c:801 +#: initdb.c:804 #, c-format msgid "WAL directory \"%s\" not removed at user's request" msgstr "\"%s\" WAL 디렉터리가 사용자의 요청으로 삭제되지 않았음" -#: initdb.c:819 +#: initdb.c:822 #, c-format msgid "cannot be run as root" msgstr "root 권한으로 실행할 수 없음" -#: initdb.c:820 +#: initdb.c:823 #, c-format msgid "" "Please log in (using, e.g., \"su\") as the (unprivileged) user that will own " @@ -368,17 +368,17 @@ msgstr "" "시스템관리자 권한이 없는, 서버프로세스의 소유주가 될 일반 사용자로 로그인 해" "서(\"su\" 같은 명령 이용) 실행하십시오." -#: initdb.c:852 +#: initdb.c:855 #, c-format msgid "\"%s\" is not a valid server encoding name" msgstr "\"%s\" 인코딩은 서버 인코딩 이름을 사용할 수 없음" -#: initdb.c:996 +#: initdb.c:1001 #, c-format msgid "file \"%s\" does not exist" msgstr "\"%s\" 파일 없음" -#: initdb.c:997 initdb.c:1002 initdb.c:1009 +#: initdb.c:1002 initdb.c:1007 initdb.c:1014 #, c-format msgid "" "This might mean you have a corrupted installation or identified the wrong " @@ -387,124 +387,124 @@ msgstr "" "설치가 잘못되었거나 -L 호출 옵션으로 지정한 디렉터리가 잘못되었을 수 있습니" "다." -#: initdb.c:1001 +#: initdb.c:1006 #, c-format msgid "could not access file \"%s\": %m" msgstr "\"%s\" 파일에 액세스할 수 없음: %m" -#: initdb.c:1008 +#: initdb.c:1013 #, c-format msgid "file \"%s\" is not a regular file" msgstr "\"%s\" 파일은 일반 파일이 아님" -#: initdb.c:1141 +#: initdb.c:1157 #, c-format msgid "selecting dynamic shared memory implementation ... " msgstr "사용할 동적 공유 메모리 관리방식을 선택하는 중 ... " -#: initdb.c:1150 +#: initdb.c:1167 #, c-format msgid "selecting default \"max_connections\" ... " msgstr "\"max_connections\" 초기값을 선택 중 ..." -#: initdb.c:1170 +#: initdb.c:1188 #, c-format msgid "selecting default \"shared_buffers\" ... " msgstr "\"shared_buffers\" 초기값을 선택 중... " -#: initdb.c:1193 +#: initdb.c:1211 #, c-format msgid "selecting default time zone ... " msgstr "기본 지역 시간대를 선택 중 ... " -#: initdb.c:1272 +#: initdb.c:1291 msgid "creating configuration files ... " msgstr "환경설정 파일을 만드는 중 ..." -#: initdb.c:1425 initdb.c:1439 initdb.c:1506 initdb.c:1517 +#: 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:1536 +#: initdb.c:1554 #, c-format msgid "running bootstrap script ... " msgstr "부트스트랩 스크립트 실행 중 ... " -#: initdb.c:1548 +#: initdb.c:1566 #, c-format msgid "input file \"%s\" does not belong to PostgreSQL %s" msgstr "\"%s\" 입력 파일이 PostgreSQL %s 용이 아님" -#: initdb.c:1550 +#: initdb.c:1568 #, c-format msgid "Specify the correct path using the option -L." msgstr "-L 옵션으로 바른 경로를 지정하십시오." -#: initdb.c:1652 +#: initdb.c:1670 msgid "Enter new superuser password: " msgstr "새 superuser 암호를 입력하십시오:" -#: initdb.c:1653 +#: initdb.c:1671 msgid "Enter it again: " msgstr "암호 확인:" -#: initdb.c:1656 +#: initdb.c:1674 #, c-format msgid "Passwords didn't match.\n" msgstr "암호가 서로 틀립니다.\n" -#: initdb.c:1680 +#: initdb.c:1698 #, c-format msgid "could not read password from file \"%s\": %m" msgstr "\"%s\" 파일에서 암호를 읽을 수 없음: %m" -#: initdb.c:1683 +#: initdb.c:1701 #, c-format msgid "password file \"%s\" is empty" msgstr "\"%s\" 패스워드 파일이 비어있음" -#: initdb.c:2095 +#: initdb.c:2113 #, c-format msgid "caught signal\n" msgstr "시스템의 간섭 신호(signal) 받았음\n" -#: initdb.c:2101 +#: initdb.c:2119 #, c-format msgid "could not write to child process: %s\n" msgstr "하위 프로세스에 쓸 수 없음: %s\n" -#: initdb.c:2109 +#: initdb.c:2127 #, c-format msgid "ok\n" msgstr "완료\n" -#: initdb.c:2191 initdb.c:2237 +#: initdb.c:2209 initdb.c:2255 #, c-format msgid "locale name \"%s\" contains non-ASCII characters" msgstr "\"%s\" 로케일 이름에 ASCII 문자가 아닌 것이 있음" -#: initdb.c:2217 +#: initdb.c:2235 #, c-format msgid "invalid locale name \"%s\"" msgstr "\"%s\" 로케일 이름이 잘못됨" -#: initdb.c:2218 +#: initdb.c:2236 #, c-format msgid "If the locale name is specific to ICU, use --icu-locale." msgstr "ICU 로케일 이름을 사용하려면, --icu-locale 옵션을 사용하세요." -#: initdb.c:2231 +#: initdb.c:2249 #, c-format msgid "invalid locale settings; check LANG and LC_* environment variables" msgstr "잘못된 로케일 설정; LANG 또는 LC_* OS 환경 변수를 확인하세요" -#: initdb.c:2262 initdb.c:2286 +#: initdb.c:2280 initdb.c:2304 #, c-format msgid "encoding mismatch" msgstr "인코딩 불일치" -#: initdb.c:2263 +#: initdb.c:2281 #, c-format msgid "" "The encoding you selected (%s) and the encoding that the selected locale " @@ -514,7 +514,7 @@ msgstr "" "선택한 인코딩(%s)과 선택한 로케일에서 사용하는 인코딩(%s)이 일치하지 않습니" "다. 이로 인해 여러 문자열 처리 함수에 오작동이 발생할 수 있습니다." -#: initdb.c:2268 initdb.c:2289 +#: initdb.c:2286 initdb.c:2307 #, c-format msgid "" "Rerun %s and either do not specify an encoding explicitly, or choose a " @@ -523,47 +523,47 @@ msgstr "" "암묵적으로 지정된 인코딩이 마음에 들지 않으면 지정할 수 있는 인코딩을 지정해" "서 %s 작업을 다시 하세요." -#: initdb.c:2287 +#: initdb.c:2305 #, c-format msgid "The encoding you selected (%s) is not supported with the ICU provider." msgstr "지정한 %s 인코딩을 ICU 제공자가 지원하지 않습니다." -#: initdb.c:2338 +#: initdb.c:2356 #, c-format msgid "could not convert locale name \"%s\" to language tag: %s" msgstr "\"%s\" 로케일 이름을 로케일 태그로 바꿀 수 없음: %s" -#: initdb.c:2344 initdb.c:2396 initdb.c:2488 +#: initdb.c:2362 initdb.c:2414 initdb.c:2508 #, c-format msgid "ICU is not supported in this build" msgstr "ICU 지원 기능을 뺀 채로 서버가 만들어졌습니다." -#: initdb.c:2367 +#: initdb.c:2385 #, c-format msgid "could not get language from locale \"%s\": %s" msgstr "\"%s\" 로케일에서 언어를 찾을 수 없음: %s" -#: initdb.c:2393 +#: initdb.c:2411 #, c-format msgid "locale \"%s\" has unknown language \"%s\"" msgstr "\"%s\" 로케일은 \"%s\" 라는 알 수 없는 언어를 사용함" -#: initdb.c:2454 +#: initdb.c:2472 #, c-format msgid "locale must be specified if provider is %s" msgstr "제공자가 %s 인경우 로케일을 지정해야 함" -#: initdb.c:2465 +#: initdb.c:2485 #, c-format msgid "invalid locale name \"%s\" for builtin provider" msgstr "내장 제공자용 \"%s\" 로케일 이름이 잘못됨" -#: initdb.c:2476 +#: initdb.c:2496 #, c-format msgid "Using language tag \"%s\" for ICU locale \"%s\".\n" msgstr "\"%s\" 로케일 태그를 사용함, 해당 ICU 로케일: \"%s\"\n" -#: initdb.c:2499 +#: initdb.c:2519 #, c-format msgid "" "%s initializes a PostgreSQL database cluster.\n" @@ -572,17 +572,17 @@ msgstr "" "%s PostgreSQL 데이터베이스 클러스터를 초기화 하는 프로그램.\n" "\n" -#: initdb.c:2500 +#: initdb.c:2520 #, c-format msgid "Usage:\n" msgstr "사용법:\n" -#: initdb.c:2501 +#: initdb.c:2521 #, c-format msgid " %s [OPTION]... [DATADIR]\n" msgstr " %s [옵션]... [DATADIR]\n" -#: initdb.c:2502 +#: initdb.c:2522 #, c-format msgid "" "\n" @@ -591,50 +591,50 @@ msgstr "" "\n" "옵션들:\n" -#: initdb.c:2503 +#: initdb.c:2523 #, c-format msgid "" " -A, --auth=METHOD default authentication method for local " "connections\n" msgstr " -A, --auth=METHOD 로컬 연결의 기본 인증 방법\n" -#: initdb.c:2504 +#: initdb.c:2524 #, c-format msgid "" " --auth-host=METHOD default authentication method for local TCP/IP " "connections\n" msgstr " --auth-host=METHOD local TCP/IP 연결에 대한 기본 인증 방법\n" -#: initdb.c:2505 +#: initdb.c:2525 #, c-format msgid "" " --auth-local=METHOD default authentication method for local-socket " "connections\n" msgstr " --auth-local=METHOD local-socket 연결에 대한 기본 인증 방법\n" -#: initdb.c:2506 +#: initdb.c:2526 #, c-format msgid " [-D, --pgdata=]DATADIR location for this database cluster\n" msgstr " [-D, --pgdata=]DATADIR 새 데이터베이스 클러스터를 만들 디렉터리\n" -#: initdb.c:2507 +#: initdb.c:2527 #, c-format msgid " -E, --encoding=ENCODING set default encoding for new databases\n" msgstr " -E, --encoding=ENCODING 새 데이터베이스의 기본 인코딩\n" -#: initdb.c:2508 +#: 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:2509 +#: initdb.c:2529 #, c-format msgid " --icu-locale=LOCALE set ICU locale ID for new databases\n" msgstr " --icu-locale=LOCALE 새 데이터베이스의 ICU 로케일 ID 지정\n" -#: initdb.c:2510 +#: initdb.c:2530 #, c-format msgid "" " --icu-rules=RULES set additional ICU collation rules for new " @@ -643,17 +643,17 @@ msgstr "" " --icu-rules=RULES 새 데이터베이스의 추가 ICU 문자열 정렬 규칙을 지" "정\n" -#: initdb.c:2511 +#: initdb.c:2531 #, c-format msgid " -k, --data-checksums use data page checksums\n" msgstr " -k, --data-checksums 자료 페이지 체크섬 사용\n" -#: initdb.c:2512 +#: initdb.c:2532 #, c-format msgid " --locale=LOCALE set default locale for new databases\n" msgstr " --locale=LOCALE 새 데이터베이스의 기본 로케일 설정\n" -#: initdb.c:2513 +#: initdb.c:2533 #, c-format msgid "" " --lc-collate=, --lc-ctype=, --lc-messages=LOCALE\n" @@ -667,12 +667,12 @@ msgstr "" " 새 데이터베이스의 각 범주에 기본 로케일 설정\n" " (환경에서 가져온 기본 값)\n" -#: initdb.c:2517 +#: initdb.c:2537 #, c-format msgid " --no-locale equivalent to --locale=C\n" msgstr " --no-locale -locale=C와 같음\n" -#: initdb.c:2518 +#: initdb.c:2538 #, c-format msgid "" " --builtin-locale=LOCALE\n" @@ -681,7 +681,7 @@ msgstr "" " --builtin-locale=LOCALE\n" " 새 데이터베이스용 내장 로케일 이름 지정\n" -#: initdb.c:2520 +#: initdb.c:2540 #, c-format msgid "" " --locale-provider={builtin|libc|icu}\n" @@ -690,13 +690,18 @@ msgstr "" " --locale-provider={builtin|libc|icu}\n" " 새 데이터베이스의 로케일 제공자 지정\n" -#: initdb.c:2522 +#: 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 파일에서 새 superuser의 암호 읽기\n" -#: initdb.c:2523 +#: initdb.c:2544 #, c-format msgid "" " -T, --text-search-config=CFG\n" @@ -705,29 +710,29 @@ msgstr "" " -T, --text-search-config=CFG\n" " 기본 텍스트 검색 구성\n" -#: initdb.c:2525 +#: initdb.c:2546 #, c-format msgid " -U, --username=NAME database superuser name\n" msgstr " -U, --username=NAME 데이터베이스 superuser 이름\n" -#: initdb.c:2526 +#: initdb.c:2547 #, c-format msgid "" " -W, --pwprompt prompt for a password for the new superuser\n" msgstr " -W, --pwprompt 새 superuser 암호를 입력 받음\n" -#: initdb.c:2527 +#: initdb.c:2548 #, c-format msgid "" " -X, --waldir=WALDIR location for the write-ahead log directory\n" msgstr " -X, --waldir=WALDIR 트랜잭션 로그 디렉터리 위치\n" -#: initdb.c:2528 +#: initdb.c:2549 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=SIZE WAL 조각 파일 크기, MB단위\n" -#: initdb.c:2529 +#: initdb.c:2550 #, c-format msgid "" "\n" @@ -736,33 +741,33 @@ msgstr "" "\n" "덜 일반적으로 사용되는 옵션들:\n" -#: initdb.c:2530 +#: 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:2531 +#: initdb.c:2552 #, c-format msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug 디버깅에 필요한 정보들도 함께 출력함\n" -#: initdb.c:2532 +#: initdb.c:2553 #, c-format msgid " --discard-caches set debug_discard_caches=1\n" msgstr " --discard-caches debug_discard_caches=1 지정\n" -#: initdb.c:2533 +#: initdb.c:2554 #, c-format msgid " -L DIRECTORY where to find the input files\n" msgstr " -L DIRECTORY 입력파일들이 있는 디렉터리\n" -#: initdb.c:2534 +#: initdb.c:2555 #, c-format msgid " -n, --no-clean do not clean up after errors\n" msgstr " -n, --no-clean 오류가 발생되었을 경우 그대로 둠\n" -#: initdb.c:2535 +#: initdb.c:2556 #, c-format msgid "" " -N, --no-sync do not wait for changes to be written safely to " @@ -770,28 +775,35 @@ msgid "" msgstr "" " -N, --no-sync 작업 완료 뒤 디스크 동기화 작업을 하지 않음\n" -#: initdb.c:2536 +#: initdb.c:2557 +#, c-format +msgid "" +" --no-sync-data-files do not sync files within database directories\n" +msgstr "" +" --no-sync-data-files 데이터베이스 디렉터리 안의 파일들은 sync 안함\n" + +#: initdb.c:2558 #, c-format msgid " --no-instructions do not print instructions for next steps\n" msgstr " --no-instructions 다음 작업을 위해 구성 정보를 출력 안함\n" -#: initdb.c:2537 +#: initdb.c:2559 #, c-format msgid " -s, --show show internal settings, then exit\n" msgstr " -s, --show 내부 설정값들을 보여주고 마침\n" -#: initdb.c:2538 +#: initdb.c:2560 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHOD 파일을 디스크에 동기화 하는 방법 지정\n" -#: initdb.c:2539 +#: 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:2540 +#: initdb.c:2562 #, c-format msgid "" "\n" @@ -800,17 +812,17 @@ msgstr "" "\n" "기타 옵션:\n" -#: initdb.c:2541 +#: initdb.c:2563 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version 버전 정보를 보여주고 마침\n" -#: initdb.c:2542 +#: initdb.c:2564 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 보여주고 마침\n" -#: initdb.c:2543 +#: initdb.c:2565 #, c-format msgid "" "\n" @@ -820,7 +832,7 @@ msgstr "" "\n" "데이터 디렉터리를 지정하지 않으면, PGDATA 환경 변수값을 사용합니다.\n" -#: initdb.c:2545 +#: initdb.c:2567 #, c-format msgid "" "\n" @@ -829,28 +841,28 @@ msgstr "" "\n" "문제점 보고 주소: <%s>\n" -#: initdb.c:2546 +#: initdb.c:2568 #, c-format msgid "%s home page: <%s>\n" msgstr "%s 홈페이지: <%s>\n" -#: initdb.c:2570 +#: initdb.c:2592 #, c-format msgid "invalid authentication method \"%s\" for \"%s\" connections" msgstr "\"%s\" 인증 방법은 \"%s\" 연결에서는 사용할 수 없음" -#: initdb.c:2584 +#: initdb.c:2606 #, c-format msgid "" "must specify a password for the superuser to enable password authentication" msgstr "비밀번호 인증방식을 사용하려면, 반드시 superuser의 암호를 지정해야함" -#: initdb.c:2603 +#: initdb.c:2625 #, c-format msgid "no data directory specified" msgstr "데이터 디렉터리를 지정하지 않았음" -#: initdb.c:2604 +#: initdb.c:2626 #, c-format msgid "" "You must identify the directory where the data for this database system will " @@ -860,12 +872,12 @@ msgstr "" "이 작업을 진행하려면, 반드시 이 데이터 디렉터리를 지정해 주어야합니다. 지정하" "는 방법은 -D 옵션의 값이나, PGDATA 환경 변수값으로 지정해 주면 됩니 다." -#: initdb.c:2621 +#: initdb.c:2643 #, c-format msgid "could not set environment" msgstr "환경 변수를 지정할 수 없음" -#: initdb.c:2639 +#: initdb.c:2661 #, c-format msgid "" "program \"%s\" is needed by %s but was not found in the same directory as " @@ -874,40 +886,40 @@ msgstr "" "\"%s\" 프로그램이 %s 작업에서 필요합니다. 그런데, 이 파일이 \"%s\" 파일이 있" "는 디렉터리안에 없습니다." -#: initdb.c:2642 +#: 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:2657 +#: initdb.c:2679 #, c-format msgid "input file location must be an absolute path" msgstr "입력 파일 위치는 반드시 절대경로여야함" -#: initdb.c:2674 +#: initdb.c:2696 #, c-format msgid "The database cluster will be initialized with locale \"%s\".\n" msgstr "데이터베이스 클러스터는 \"%s\" 로케일으로 초기화될 것입니다.\n" -#: initdb.c:2677 +#: initdb.c:2699 #, c-format msgid "" "The database cluster will be initialized with this locale configuration:\n" msgstr "데이터베이스 클러스터는 아래 로케일 환경으로 초기화될 것입니다:\n" -#: initdb.c:2678 +#: initdb.c:2700 #, c-format msgid " locale provider: %s\n" msgstr " 로케일 제공자: %s\n" -#: initdb.c:2680 +#: initdb.c:2702 #, c-format msgid " default collation: %s\n" msgstr " 기본 문자정렬: %s\n" -#: initdb.c:2681 +#: initdb.c:2703 #, c-format msgid "" " LC_COLLATE: %s\n" @@ -924,22 +936,22 @@ msgstr "" " LC_NUMERIC: %s\n" " LC_TIME: %s\n" -#: initdb.c:2711 +#: initdb.c:2733 #, c-format msgid "could not find suitable encoding for locale \"%s\"" msgstr "\"%s\" 로케일에 알맞은 인코딩을 찾을 수 없음" -#: initdb.c:2713 +#: initdb.c:2735 #, c-format msgid "Rerun %s with the -E option." msgstr "-E 옵션 지정해서 %s 작업을 다시 하세요." -#: initdb.c:2714 initdb.c:3257 initdb.c:3377 initdb.c:3397 +#: 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:2726 +#: initdb.c:2748 #, c-format msgid "" "Encoding \"%s\" implied by locale is not allowed as a server-side encoding.\n" @@ -948,78 +960,78 @@ msgstr "" "\"%s\" 인코딩을 서버측 인코딩으로 사용할 수 없습니다.\n" "기본 데이터베이스는 \"%s\" 인코딩으로 지정됩니다.\n" -#: initdb.c:2731 +#: initdb.c:2753 #, c-format msgid "locale \"%s\" requires unsupported encoding \"%s\"" msgstr "\"%s\" 로케일은 지원하지 않는 \"%s\" 인코딩을 필요로 함" -#: initdb.c:2733 +#: initdb.c:2755 #, c-format msgid "Encoding \"%s\" is not allowed as a server-side encoding." msgstr "\"%s\" 인코딩을 서버측 인코딩으로 사용할 수 없습니다." -#: initdb.c:2735 +#: initdb.c:2757 #, c-format msgid "Rerun %s with a different locale selection." msgstr "다른 로케일을 지정해서 %s 작업을 다시 하세요." -#: initdb.c:2743 +#: initdb.c:2765 #, c-format msgid "The default database encoding has accordingly been set to \"%s\".\n" msgstr "기본 데이터베이스 인코딩은 \"%s\" 인코딩으로 설정되었습니다.\n" -#: initdb.c:2757 +#: initdb.c:2781 #, c-format msgid "builtin provider locale \"%s\" requires encoding \"%s\"" msgstr "\"%s\" 내장 제공자 로케일은 \"%s\" 인코딩을 필요로 함" -#: initdb.c:2819 +#: initdb.c:2843 #, c-format msgid "could not find suitable text search configuration for locale \"%s\"" msgstr "\"%s\" 로케일에 알맞은 전문검색 설정을 찾을 수 없음" -#: initdb.c:2830 +#: initdb.c:2854 #, c-format msgid "suitable text search configuration for locale \"%s\" is unknown" msgstr "\"%s\" 로케일에 알맞은 전문검색 설정을 알 수 없음" -#: initdb.c:2835 +#: initdb.c:2859 #, c-format msgid "" "specified text search configuration \"%s\" might not match locale \"%s\"" msgstr "지정한 \"%s\" 전문검색 설정은 \"%s\" 로케일과 일치하지 않음" -#: initdb.c:2840 +#: initdb.c:2864 #, c-format msgid "The default text search configuration will be set to \"%s\".\n" msgstr "기본 텍스트 검색 구성이 \"%s\"(으)로 설정됩니다.\n" -#: initdb.c:2883 initdb.c:2954 +#: initdb.c:2898 initdb.c:2969 #, c-format msgid "creating directory %s ... " msgstr "%s 디렉터리 만드는 중 ..." -#: initdb.c:2888 initdb.c:2959 initdb.c:3007 initdb.c:3064 +#: 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:2897 initdb.c:2969 +#: initdb.c:2912 initdb.c:2984 #, c-format msgid "fixing permissions on existing directory %s ... " msgstr "이미 있는 %s 디렉터리의 액세스 권한을 고치는 중 ..." -#: initdb.c:2902 initdb.c:2974 +#: initdb.c:2917 initdb.c:2989 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "\"%s\" 디렉터리의 액세스 권한을 바꿀 수 없습니다: %m" -#: initdb.c:2914 initdb.c:2986 +#: initdb.c:2929 initdb.c:3001 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "\"%s\" 디렉터리가 있지만 비어 있지 않음" -#: initdb.c:2918 +#: initdb.c:2933 #, c-format msgid "" "If you want to create a new database system, either remove or empty the " @@ -1028,31 +1040,31 @@ msgstr "" "새로운 데이터베이스 시스템을 만들려면 \"%s\" 디렉터리를 제거하거나 비우십시" "오. 또는 %s 작업을 \"%s\" 디렉터리가 아닌 것으로 지정해서 하세요." -#: initdb.c:2926 initdb.c:2996 initdb.c:3422 +#: initdb.c:2941 initdb.c:3011 initdb.c:3445 #, c-format msgid "could not access directory \"%s\": %m" msgstr "\"%s\" 디렉터리를 액세스할 수 없습니다: %m" -#: initdb.c:2947 +#: initdb.c:2962 #, c-format msgid "WAL directory location must be an absolute path" msgstr "WAL 디렉터리 위치는 절대 경로여야 함" -#: initdb.c:2990 +#: initdb.c:3005 #, c-format msgid "" -"If you want to store the WAL there, either remove or empty the directory " -"\"%s\"." +"If you want to store the WAL there, either remove or empty the directory \"%s" +"\"." msgstr "" "트랜잭션 로그를 해당 위치에 저장하려면 \"%s\" 디렉터리를 제거하거나 비우십시" "오." -#: initdb.c:3000 +#: initdb.c:3015 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "\"%s\" 심벌릭 링크를 만들 수 없음: %m" -#: initdb.c:3019 +#: initdb.c:3034 #, c-format msgid "" "It contains a dot-prefixed/invisible file, perhaps due to it being a mount " @@ -1061,13 +1073,13 @@ msgstr "" "점(.)으로 시작하는 숨은 파일이 포함되어 있습니다. 마운트 최상위 디렉터리 같습" "니다." -#: initdb.c:3021 +#: 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:3023 +#: initdb.c:3038 #, c-format msgid "" "Using a mount point directly as the data directory is not recommended.\n" @@ -1076,61 +1088,61 @@ msgstr "" "마운트 최상위 디렉터리를 데이터 디렉터리로 사용하는 것은 권장하지 않습니다.\n" "하위 디렉터리를 만들어서 그것을 데이터 디렉터리로 사용하세요." -#: initdb.c:3050 +#: initdb.c:3065 #, c-format msgid "creating subdirectories ... " msgstr "하위 디렉터리 만드는 중 ..." -#: initdb.c:3093 +#: initdb.c:3108 msgid "performing post-bootstrap initialization ... " msgstr "부트스트랩 다음 초기화 작업 중 ... " -#: initdb.c:3256 +#: initdb.c:3273 #, c-format msgid "-c %s requires a value" msgstr "-c %s 설정은 값을 필요로 합니다." -#: initdb.c:3281 +#: initdb.c:3298 #, c-format msgid "Running in debug mode.\n" msgstr "디버그 모드로 실행 중.\n" -#: initdb.c:3285 +#: initdb.c:3302 #, c-format msgid "Running in no-clean mode. Mistakes will not be cleaned up.\n" msgstr "지저분 모드로 실행 중. 오류가 발생되어도 뒷정리를 안합니다.\n" -#: initdb.c:3358 +#: initdb.c:3375 #, c-format msgid "unrecognized locale provider: %s" msgstr "알 수 없는 로케일 제공자 이름: %s" -#: initdb.c:3395 +#: initdb.c:3418 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "너무 많은 명령행 인자를 지정했습니다. (처음 \"%s\")" -#: initdb.c:3402 initdb.c:3406 initdb.c:3410 +#: 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:3424 initdb.c:3487 +#: initdb.c:3447 initdb.c:3510 msgid "syncing data to disk ... " msgstr "자료를 디스크에 동기화 하는 중 ... " -#: initdb.c:3432 +#: initdb.c:3455 #, c-format msgid "password prompt and password file cannot be specified together" msgstr "" "암호를 입력받는 옵션과 암호를 파일에서 가져오는 옵션은 동시에 사용될 수 없음" -#: initdb.c:3443 +#: initdb.c:3466 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "%s 옵션값은 1에서 1024사이 2^n 값이여야 함" -#: initdb.c:3456 +#: initdb.c:3479 #, c-format msgid "" "superuser name \"%s\" is disallowed; role names cannot begin with \"pg_\"" @@ -1138,7 +1150,7 @@ msgstr "" "\"%s\" 사용자는 슈퍼유저 이름으로 쓸 수 없습니다. \"pg_\"로 시작하는롤 이름" "은 허용하지 않음" -#: initdb.c:3458 +#: initdb.c:3481 #, c-format msgid "" "The files belonging to this database system will be owned by user \"%s\".\n" @@ -1149,17 +1161,17 @@ msgstr "" "지정될 것입니다. 또한 이 사용자는 서버 프로세스의 소유주가 됩니다.\n" "\n" -#: initdb.c:3474 +#: initdb.c:3497 #, c-format msgid "Data page checksums are enabled.\n" msgstr "자료 페이지 체크섬 기능 사용함.\n" -#: initdb.c:3476 +#: initdb.c:3499 #, c-format msgid "Data page checksums are disabled.\n" msgstr "자료 페이지 체크섬 기능 사용 하지 않음\n" -#: initdb.c:3493 +#: initdb.c:3516 #, c-format msgid "" "\n" @@ -1171,12 +1183,12 @@ msgstr "" "이 상태에서 OS가 갑자기 중지 되면 데이터 디렉토리 안에 있는 자료가 깨질 수 있" "습니다.\n" -#: initdb.c:3498 +#: initdb.c:3521 #, c-format msgid "enabling \"trust\" authentication for local connections" msgstr "로컬 접속용 \"trust\" 인증을 설정 함" -#: initdb.c:3499 +#: initdb.c:3522 #, c-format msgid "" "You can change this by editing pg_hba.conf or using the option -A, or --auth-" @@ -1187,11 +1199,11 @@ msgstr "" "요." #. translator: This is a placeholder in a shell command. -#: initdb.c:3529 +#: initdb.c:3552 msgid "logfile" msgstr "로그파일" -#: initdb.c:3531 +#: initdb.c:3554 #, c-format msgid "" "\n" @@ -1206,22 +1218,17 @@ msgstr "" " %s\n" "\n" -#, c-format #~ msgid " ICU locale: %s\n" #~ msgstr " ICU 로케일: %s\n" -#, c-format -#~ msgid "argument of --wal-segsize must be a number" -#~ msgstr "--wal-segsize 옵션 값은 숫자여야 함" - -#, c-format #~ msgid "Using default ICU locale \"%s\".\n" #~ msgstr "기본 ICU 로케일로 \"%s\" 사용함.\n" -#, c-format +#~ msgid "argument of --wal-segsize must be a number" +#~ msgstr "--wal-segsize 옵션 값은 숫자여야 함" + #~ msgid "could not determine default ICU locale" #~ msgstr "기본 ICU 로케일을 결정할 수 없음" -#, c-format #~ msgid "could not open collator for default locale: %s" #~ msgstr "기본 로케일용 문자열 정렬 규칙을 열 수 없음: %s" diff --git a/src/bin/initdb/po/ru.po b/src/bin/initdb/po/ru.po index 8d2ec2fcb9c8a..d97f5a0d23228 100644 --- a/src/bin/initdb/po/ru.po +++ b/src/bin/initdb/po/ru.po @@ -6,13 +6,13 @@ # Sergey Burladyan , 2009. # Andrey Sudnik , 2010. # Dmitriy Olshevskiy , 2014. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: initdb (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: 2024-11-02 08:27+0300\n" +"PO-Revision-Date: 2025-09-13 16:55+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -706,9 +706,9 @@ msgstr "" " провайдер основной локали для новых баз\n" #: initdb.c:2542 -#, fuzzy, c-format +#, c-format msgid " --no-data-checksums do not use data page checksums\n" -msgstr " -k, --data-checksums включить контроль целостности страниц\n" +msgstr " --no-data-checksums отключить контроль целостности страниц\n" #: initdb.c:2543 #, c-format @@ -797,7 +797,7 @@ msgstr "" #, c-format msgid "" " --no-sync-data-files do not sync files within database directories\n" -msgstr "" +msgstr " --no-sync-data-files не синхронизировать файлы в каталогах БД\n" #: initdb.c:2558 #, c-format diff --git a/src/bin/initdb/po/zh_CN.po b/src/bin/initdb/po/zh_CN.po index 5ffb5e045fe4c..3bce7bc396048 100644 --- a/src/bin/initdb/po/zh_CN.po +++ b/src/bin/initdb/po/zh_CN.po @@ -620,7 +620,7 @@ msgid "" " --builtin-locale=LOCALE\n" " set builtin locale name for new databases\n" msgstr "" -" —builtin-locale=LOCALE\n" +" --builtin-locale=LOCALE\n" " 为新数据库设置内置区域环境名称\n" #: initdb.c:2467 @@ -629,7 +629,7 @@ msgid "" " --locale-provider={builtin|libc|icu}\n" " set default locale provider for new databases\n" msgstr "" -" —locale-provider={builtin|libc|icu}\n" +" --locale-provider={builtin|libc|icu}\n" " 为新数据库设置默认的区域环境支持程序\n" #: initdb.c:2469 diff --git a/src/bin/pg_amcheck/po/es.po b/src/bin/pg_amcheck/po/es.po index 7dc5272b7b76d..3c066bd2e820c 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: 2024-11-16 05:22+0000\n" +"POT-Creation-Date: 2025-09-20 09:52+0000\n" "PO-Revision-Date: 2024-11-16 14:23+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -19,22 +19,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -50,44 +50,44 @@ 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: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 "no se pudo abrir el archivo «%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 "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -160,188 +160,188 @@ msgid "processing of database \"%s\" failed: %s" msgstr "falló el procesamiento de la base de datos «%s»: %s" #: ../../fe_utils/query_utils.c:33 ../../fe_utils/query_utils.c:58 -#: pg_amcheck.c:1693 pg_amcheck.c:2138 +#: pg_amcheck.c:1695 pg_amcheck.c:2155 #, c-format msgid "query failed: %s" msgstr "la consulta falló: %s" #: ../../fe_utils/query_utils.c:34 ../../fe_utils/query_utils.c:59 -#: pg_amcheck.c:578 pg_amcheck.c:1147 pg_amcheck.c:1694 pg_amcheck.c:2139 +#: pg_amcheck.c:579 pg_amcheck.c:1149 pg_amcheck.c:1696 pg_amcheck.c:2156 #, c-format msgid "Query was: %s" msgstr "La consulta era: %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 "el argumento de la orden de shell contiene un salto de línea o retorno de carro: «%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 "el nombre de base de datos contiene un salto de línea o retorno de carro: «%s»\n" -#: pg_amcheck.c:403 +#: pg_amcheck.c:404 #, c-format msgid "invalid argument for option %s" msgstr "argumento no válido para la opción %s" -#: pg_amcheck.c:409 +#: pg_amcheck.c:410 #, c-format msgid "invalid start block" msgstr "bloque de inicio no válido" -#: pg_amcheck.c:411 +#: pg_amcheck.c:412 #, c-format msgid "start block out of bounds" msgstr "bloque de inicio fuera de rango" -#: pg_amcheck.c:418 +#: pg_amcheck.c:419 #, c-format msgid "invalid end block" msgstr "bloque final no válido" -#: pg_amcheck.c:420 +#: pg_amcheck.c:421 #, c-format msgid "end block out of bounds" msgstr "bloque final fuera de rango" -#: pg_amcheck.c:446 pg_amcheck.c:468 +#: pg_amcheck.c:447 pg_amcheck.c:469 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_amcheck.c:452 +#: pg_amcheck.c:453 #, c-format msgid "end block precedes start block" msgstr "bloque final precede al bloque de inicio" -#: pg_amcheck.c:466 +#: pg_amcheck.c:467 #, 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_amcheck.c:486 +#: pg_amcheck.c:487 #, c-format msgid "cannot specify a database name with --all" msgstr "no se puede especificar un nombre de base de datos al usar --all" -#: pg_amcheck.c:492 +#: pg_amcheck.c:493 #, c-format msgid "cannot specify both a database name and database patterns" msgstr "no se puede especificar al mismo tiempo un nombre de base de datos junto con patrones de bases de datos" -#: pg_amcheck.c:520 +#: pg_amcheck.c:521 #, c-format msgid "no databases to check" msgstr "no hay bases de datos para revisar" -#: pg_amcheck.c:576 +#: pg_amcheck.c:577 #, c-format msgid "database \"%s\": %s" msgstr "base de datos «%s»: %s" -#: pg_amcheck.c:587 +#: pg_amcheck.c:588 #, c-format msgid "skipping database \"%s\": amcheck is not installed" msgstr "omitiendo la base de datos «%s»: amcheck no está instalado" -#: pg_amcheck.c:595 +#: pg_amcheck.c:597 #, c-format msgid "in database \"%s\": using amcheck version \"%s\" in schema \"%s\"" msgstr "en base de datos «%s»: usando amcheck versión «%s» en esquema «%s»" -#: pg_amcheck.c:624 +#: pg_amcheck.c:626 #, c-format msgid "option %s is not supported by amcheck version %s" msgstr "la opción %s no está soportada por la versión %s de amcheck" -#: pg_amcheck.c:650 +#: pg_amcheck.c:652 #, c-format msgid "no heap tables to check matching \"%s\"" msgstr "no hay tablas heap para revisar que coincidan con «%s»" -#: pg_amcheck.c:653 +#: pg_amcheck.c:655 #, c-format msgid "no btree indexes to check matching \"%s\"" msgstr "no hay índices btree para revisar que coincidan con «%s»" -#: pg_amcheck.c:656 +#: pg_amcheck.c:658 #, c-format msgid "no relations to check in schemas matching \"%s\"" msgstr "no hay relaciones para revisar en esquemas que coincidan con «%s»" -#: pg_amcheck.c:659 +#: pg_amcheck.c:661 #, c-format msgid "no relations to check matching \"%s\"" msgstr "no hay relaciones para revisar que coincidan con «%s»" -#: pg_amcheck.c:687 +#: pg_amcheck.c:689 #, c-format msgid "no relations to check" msgstr "no hay relaciones para revisar" -#: pg_amcheck.c:770 +#: pg_amcheck.c:772 #, c-format msgid "checking heap table \"%s.%s.%s\"" msgstr "revisando tabla heap «%s.%s.%s»" -#: pg_amcheck.c:786 +#: pg_amcheck.c:788 #, c-format msgid "checking btree index \"%s.%s.%s\"" msgstr "revisando índice btree «%s.%s.%s»" -#: pg_amcheck.c:937 +#: pg_amcheck.c:939 #, c-format msgid "error sending command to database \"%s\": %s" msgstr "error al enviar orden a la base de datos «%s»: %s" -#: pg_amcheck.c:940 +#: pg_amcheck.c:942 #, c-format msgid "Command was: %s" msgstr "La orden era: % s" -#: pg_amcheck.c:1060 +#: pg_amcheck.c:1062 #, c-format msgid "heap table \"%s.%s.%s\", block %s, offset %s, attribute %s:\n" msgstr "tabla heap «%s.%s.%s», bloque %s, posición %s, atributo %s:\n" -#: pg_amcheck.c:1067 +#: pg_amcheck.c:1069 #, c-format msgid "heap table \"%s.%s.%s\", block %s, offset %s:\n" msgstr "tabla heap «%s.%s.%s», bloque %s, posición %s:\n" -#: pg_amcheck.c:1073 +#: pg_amcheck.c:1075 #, c-format msgid "heap table \"%s.%s.%s\", block %s:\n" msgstr "tabla heap «%s.%s.%s», bloque %s:\n" -#: pg_amcheck.c:1078 pg_amcheck.c:1089 +#: pg_amcheck.c:1080 pg_amcheck.c:1091 #, c-format msgid "heap table \"%s.%s.%s\":\n" msgstr "tabla heap «%s.%s.%s»:\n" -#: pg_amcheck.c:1093 pg_amcheck.c:1162 +#: pg_amcheck.c:1095 pg_amcheck.c:1164 #, c-format msgid "query was: %s\n" msgstr "la consulta era: %s\n" -#: pg_amcheck.c:1144 +#: pg_amcheck.c:1146 #, c-format msgid "btree index \"%s.%s.%s\": btree checking function returned unexpected number of rows: %d" msgstr "índice btree «%s.%s.%s»: la función de comprobación de btree devolvió un número inesperado de registros: %d" -#: pg_amcheck.c:1148 +#: pg_amcheck.c:1150 #, c-format msgid "Are %s's and amcheck's versions compatible?" msgstr "¿Son compatibles la versión de %s con la de amcheck?" -#: pg_amcheck.c:1158 +#: pg_amcheck.c:1160 #, c-format msgid "btree index \"%s.%s.%s\":\n" msgstr "índice btree «%s.%s.%s»:\n" -#: pg_amcheck.c:1183 +#: pg_amcheck.c:1185 #, c-format msgid "" "%s checks objects in a PostgreSQL database for corruption.\n" @@ -350,17 +350,17 @@ msgstr "" "%s busca corrupción en objetos de una base de datos PostgreSQL.\n" "\n" -#: pg_amcheck.c:1184 +#: pg_amcheck.c:1186 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_amcheck.c:1185 +#: pg_amcheck.c:1187 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPCIÓN]... [BASE-DE-DATOS]\n" -#: pg_amcheck.c:1186 +#: pg_amcheck.c:1188 #, c-format msgid "" "\n" @@ -369,77 +369,77 @@ msgstr "" "\n" "Opciones de objetivo:\n" -#: pg_amcheck.c:1187 +#: pg_amcheck.c:1189 #, c-format msgid " -a, --all check all databases\n" msgstr " -a, --all revisar todas las bases de datos\n" -#: pg_amcheck.c:1188 +#: pg_amcheck.c:1190 #, c-format msgid " -d, --database=PATTERN check matching database(s)\n" msgstr " -d, --database=PATRÓN revisar la(s) base(s) de datos que coincida(n)\n" -#: pg_amcheck.c:1189 +#: pg_amcheck.c:1191 #, c-format msgid " -D, --exclude-database=PATTERN do NOT check matching database(s)\n" msgstr " -D, --exclude-database=PATRÓN NO revisar la(s) base(s) de datos que coincida(n)\n" -#: pg_amcheck.c:1190 +#: pg_amcheck.c:1192 #, c-format msgid " -i, --index=PATTERN check matching index(es)\n" msgstr " -i, --index=PATRÓN revisar el(los) índice(s) que coincida(n)\n" -#: pg_amcheck.c:1191 +#: pg_amcheck.c:1193 #, c-format msgid " -I, --exclude-index=PATTERN do NOT check matching index(es)\n" msgstr " -I, --exclude-index=PATRÓN NO revisar el(los) índice(s) que coincida(n)\n" -#: pg_amcheck.c:1192 +#: pg_amcheck.c:1194 #, c-format msgid " -r, --relation=PATTERN check matching relation(s)\n" msgstr " -r, --relation=PATRÓN revisar la(s) relación(es) que coincida(n)\n" -#: pg_amcheck.c:1193 +#: pg_amcheck.c:1195 #, c-format msgid " -R, --exclude-relation=PATTERN do NOT check matching relation(s)\n" msgstr " -R, --exclude-relation=PATRÓN NO revisar la(s) relación(es) que coincida(n)\n" -#: pg_amcheck.c:1194 +#: pg_amcheck.c:1196 #, c-format msgid " -s, --schema=PATTERN check matching schema(s)\n" msgstr " -s, --schema=PATRÓN revisar el(los) esquema(s) que coincida(n)\n" -#: pg_amcheck.c:1195 +#: pg_amcheck.c:1197 #, c-format msgid " -S, --exclude-schema=PATTERN do NOT check matching schema(s)\n" msgstr " -S, --exclude-schema=PATRÓN NO revisar el(los) esquema(s) que coincida(n)\n" -#: pg_amcheck.c:1196 +#: pg_amcheck.c:1198 #, c-format msgid " -t, --table=PATTERN check matching table(s)\n" msgstr " -t, --table=PATRÓN revisar la(s) tabla(s) que coincida(n)\n" -#: pg_amcheck.c:1197 +#: pg_amcheck.c:1199 #, c-format msgid " -T, --exclude-table=PATTERN do NOT check matching table(s)\n" msgstr " -T, --exclude-table=PATRÓN NO revisar la(s) tabla(s) que coincida(n)\n" -#: pg_amcheck.c:1198 +#: pg_amcheck.c:1200 #, c-format msgid " --no-dependent-indexes do NOT expand list of relations to include indexes\n" msgstr " --no-dependent-indexes NO expandir la lista de relaciones para incluir índices\n" -#: pg_amcheck.c:1199 +#: pg_amcheck.c:1201 #, c-format msgid " --no-dependent-toast do NOT expand list of relations to include TOAST tables\n" msgstr " --no-dependent-toast NO expandir lista de relaciones para incluir tablas TOAST\n" -#: pg_amcheck.c:1200 +#: pg_amcheck.c:1202 #, c-format msgid " --no-strict-names do NOT require patterns to match objects\n" msgstr " --no-strict-names NO requerir que los patrones coincidan con los objetos\n" -#: pg_amcheck.c:1201 +#: pg_amcheck.c:1203 #, c-format msgid "" "\n" @@ -448,32 +448,32 @@ msgstr "" "\n" "Opciones para revisión de tabla:\n" -#: pg_amcheck.c:1202 +#: pg_amcheck.c:1204 #, c-format msgid " --exclude-toast-pointers do NOT follow relation TOAST pointers\n" msgstr " --exclude-toast-pointers NO seguir punteros TOAST de la relación\n" -#: pg_amcheck.c:1203 +#: pg_amcheck.c:1205 #, c-format msgid " --on-error-stop stop checking at end of first corrupt page\n" msgstr " --on-error-stop detener la revisión al final de la primera página corrupta\n" -#: pg_amcheck.c:1204 +#: pg_amcheck.c:1206 #, c-format msgid " --skip=OPTION do NOT check \"all-frozen\" or \"all-visible\" blocks\n" msgstr " --skip=OPTION NO revisar bloques «all-frozen» u «all-visible»\n" -#: pg_amcheck.c:1205 +#: pg_amcheck.c:1207 #, c-format msgid " --startblock=BLOCK begin checking table(s) at the given block number\n" msgstr " --startblock=BLOQUE empezar la revisión de la(s) tabla(s) en el número de bloque especificado\n" -#: pg_amcheck.c:1206 +#: pg_amcheck.c:1208 #, c-format msgid " --endblock=BLOCK check table(s) only up to the given block number\n" msgstr " --endblock=BLOQUE solo revisar la(s) tabla(s) hasta el número de bloque especificado\n" -#: pg_amcheck.c:1207 +#: pg_amcheck.c:1209 #, c-format msgid "" "\n" @@ -482,27 +482,27 @@ msgstr "" "\n" "Opciones para revisión de índices B-tree:\n" -#: pg_amcheck.c:1208 +#: pg_amcheck.c:1210 #, c-format msgid " --checkunique check unique constraint if index is unique\n" msgstr " --checkunique verificar si restricción de unicidad se cumple en índice\n" -#: pg_amcheck.c:1209 +#: pg_amcheck.c:1211 #, c-format msgid " --heapallindexed check that all heap tuples are found within indexes\n" msgstr " --heapallindexed revisar que todas las tuplas heap se encuentren en los índices\n" -#: pg_amcheck.c:1210 +#: pg_amcheck.c:1212 #, c-format msgid " --parent-check check index parent/child relationships\n" msgstr " --parent-check revisar relaciones padre/hijo de índice\n" -#: pg_amcheck.c:1211 +#: pg_amcheck.c:1213 #, c-format msgid " --rootdescend search from root page to refind tuples\n" msgstr " --rootdescend buscar desde la página raíz para volver a encontrar tuplas\n" -#: pg_amcheck.c:1212 +#: pg_amcheck.c:1214 #, c-format msgid "" "\n" @@ -511,37 +511,37 @@ msgstr "" "\n" "Opciones de conexión:\n" -#: pg_amcheck.c:1213 +#: pg_amcheck.c:1215 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=ANFITRIÓN nombre del servidor o directorio del socket\n" -#: pg_amcheck.c:1214 +#: pg_amcheck.c:1216 #, c-format msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=PUERTO puerto del servidor de base de datos\n" -#: pg_amcheck.c:1215 +#: pg_amcheck.c:1217 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=USUARIO nombre de usuario para la conexión\n" -#: pg_amcheck.c:1216 +#: pg_amcheck.c:1218 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password nunca pedir contraseña\n" -#: pg_amcheck.c:1217 +#: pg_amcheck.c:1219 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password forzar la petición de contraseña\n" -#: pg_amcheck.c:1218 +#: pg_amcheck.c:1220 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=BASE base de datos de mantención alternativa\n" -#: pg_amcheck.c:1219 +#: pg_amcheck.c:1221 #, c-format msgid "" "\n" @@ -550,42 +550,42 @@ msgstr "" "\n" "Otras opciones:\n" -#: pg_amcheck.c:1220 +#: pg_amcheck.c:1222 #, c-format msgid " -e, --echo show the commands being sent to the server\n" msgstr " -e, --echo mostrar las órdenes enviadas al servidor\n" -#: pg_amcheck.c:1221 +#: pg_amcheck.c:1223 #, c-format msgid " -j, --jobs=NUM use this many concurrent connections to the server\n" msgstr " -j, --jobs=NUM usar esta cantidad de conexiones concurrentes hacia el servidor\n" -#: pg_amcheck.c:1222 +#: pg_amcheck.c:1224 #, c-format msgid " -P, --progress show progress information\n" msgstr " -P, --progress mostrar información de progreso\n" -#: pg_amcheck.c:1223 +#: pg_amcheck.c:1225 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose desplegar varios mensajes informativos\n" -#: pg_amcheck.c:1224 +#: pg_amcheck.c:1226 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: pg_amcheck.c:1225 +#: pg_amcheck.c:1227 #, c-format msgid " --install-missing install missing extensions\n" msgstr " --install-missing instalar extensiones faltantes\n" -#: pg_amcheck.c:1226 +#: pg_amcheck.c:1228 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_amcheck.c:1228 +#: pg_amcheck.c:1230 #, c-format msgid "" "\n" @@ -594,52 +594,52 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_amcheck.c:1229 +#: pg_amcheck.c:1231 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_amcheck.c:1282 +#: pg_amcheck.c:1284 #, c-format msgid "%*s/%s relations (%d%%), %*s/%s pages (%d%%) %*s" msgstr "%*s/%s relaciones (%d%%), %*s/%s páginas (%d%%) %*s" -#: pg_amcheck.c:1293 +#: pg_amcheck.c:1295 #, c-format msgid "%*s/%s relations (%d%%), %*s/%s pages (%d%%) (%s%-*.*s)" msgstr "%*s/%s relaciones (%d%%), %*s/%s páginas (%d%%), (%s%-*.*s)" -#: pg_amcheck.c:1308 +#: pg_amcheck.c:1310 #, c-format msgid "%*s/%s relations (%d%%), %*s/%s pages (%d%%)" msgstr "%*s/%s relaciones (%d%%), %*s/%s páginas (%d%%)" -#: pg_amcheck.c:1367 pg_amcheck.c:1400 +#: pg_amcheck.c:1369 pg_amcheck.c:1402 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "el nombre no es válido (demasiados puntos): %s" -#: pg_amcheck.c:1445 +#: pg_amcheck.c:1447 #, 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_amcheck.c:1598 pg_amcheck.c:1737 +#: pg_amcheck.c:1600 pg_amcheck.c:1739 #, c-format msgid "including database \"%s\"" msgstr "incluyendo base de datos «%s»" -#: pg_amcheck.c:1719 +#: pg_amcheck.c:1721 #, c-format msgid "internal error: received unexpected database pattern_id %d" msgstr "error interno: se recibió pattern_id de base de datos inesperado (%d)" -#: pg_amcheck.c:1721 +#: pg_amcheck.c:1723 #, c-format msgid "no connectable databases to check matching \"%s\"" msgstr "no hay bases de datos a las que se pueda conectar que coincidan con «%s»" -#: pg_amcheck.c:2179 +#: pg_amcheck.c:2196 #, c-format msgid "internal error: received unexpected relation pattern_id %d" msgstr "error interno: se recibió pattern_id de relación inesperado (%d)" diff --git a/src/bin/pg_amcheck/po/ko.po b/src/bin/pg_amcheck/po/ko.po index d5e78e4f22c7f..99f297084fb48 100644 --- a/src/bin/pg_amcheck/po/ko.po +++ b/src/bin/pg_amcheck/po/ko.po @@ -221,7 +221,7 @@ msgstr "너무 많은 명령행 인자를 지정했습니다. (처음 \"%s\")" #: pg_amcheck.c:486 #, c-format msgid "cannot specify a database name with --all" -msgstr "데이터베이스 이름을 —all 와 같이 지정할 수 없습니다" +msgstr "데이터베이스 이름을 --all 와 같이 지정할 수 없습니다" #: pg_amcheck.c:492 #, c-format @@ -371,65 +371,65 @@ msgstr "" #: pg_amcheck.c:1187 #, c-format msgid " -a, --all check all databases\n" -msgstr " -a, -—all 모든 데이터베이스를 검사\n" +msgstr " -a, --all 모든 데이터베이스를 검사\n" #: pg_amcheck.c:1188 #, c-format msgid " -d, --database=PATTERN check matching database(s)\n" -msgstr " -d, -—database=PATTERN 일치하는 모든 데이터베이스를 검사\n" +msgstr " -d, --database=PATTERN 일치하는 모든 데이터베이스를 검사\n" #: pg_amcheck.c:1189 #, c-format msgid " -D, --exclude-database=PATTERN do NOT check matching database(s)\n" msgstr "" -" -D, -—exclude-database=PATTERN 일치하는 데이터베이스를 제외 하고 검사\n" +" -D, --exclude-database=PATTERN 일치하는 데이터베이스를 제외 하고 검사\n" #: pg_amcheck.c:1190 #, c-format msgid " -i, --index=PATTERN check matching index(es)\n" -msgstr " -i, -—index=PATTERN 일치하는 인덱스를 검사\n" +msgstr " -i, --index=PATTERN 일치하는 인덱스를 검사\n" #: pg_amcheck.c:1191 #, c-format msgid " -I, --exclude-index=PATTERN do NOT check matching index(es)\n" -msgstr " -I, -—exclude-index=PATTERN 일치하는 인덱스를 제외하고 검사\n" +msgstr " -I, --exclude-index=PATTERN 일치하는 인덱스를 제외하고 검사\n" #: pg_amcheck.c:1192 #, c-format msgid " -r, --relation=PATTERN check matching relation(s)\n" -msgstr " -r, -—relation=PATTERN 일치하는 릴레이션을 검사\n" +msgstr " -r, --relation=PATTERN 일치하는 릴레이션을 검사\n" #: pg_amcheck.c:1193 #, c-format msgid " -R, --exclude-relation=PATTERN do NOT check matching relation(s)\n" -msgstr " -R, -—exclude-relation=PATTERN 일치하는 릴레이션을 제외하고 검사\n" +msgstr " -R, --exclude-relation=PATTERN 일치하는 릴레이션을 제외하고 검사\n" #: pg_amcheck.c:1194 #, c-format msgid " -s, --schema=PATTERN check matching schema(s)\n" -msgstr " -s, -—schema=PATTERN 일치하는 스키마를 검사\n" +msgstr " -s, --schema=PATTERN 일치하는 스키마를 검사\n" #: pg_amcheck.c:1195 #, c-format msgid " -S, --exclude-schema=PATTERN do NOT check matching schema(s)\n" -msgstr " -S, -—exclude-schema=PATTERN 일치하는 스키마를 제외하고 검사\n" +msgstr " -S, --exclude-schema=PATTERN 일치하는 스키마를 제외하고 검사\n" #: pg_amcheck.c:1196 #, c-format msgid " -t, --table=PATTERN check matching table(s)\n" -msgstr " -t, -—table=PATTERN 일치하는 테이블을 검사\n" +msgstr " -t, --table=PATTERN 일치하는 테이블을 검사\n" #: pg_amcheck.c:1197 #, c-format msgid " -T, --exclude-table=PATTERN do NOT check matching table(s)\n" -msgstr " -T, -—exclude-table=PATTERN 일치하는 테이블을 제외하고 검사\n" +msgstr " -T, --exclude-table=PATTERN 일치하는 테이블을 제외하고 검사\n" #: pg_amcheck.c:1198 #, c-format msgid "" " --no-dependent-indexes do NOT expand list of relations to include " "indexes\n" -msgstr " -—no-dependent-indexes 릴레이션에 인덱스를 포함하지 않음 \n" +msgstr " --no-dependent-indexes 릴레이션에 인덱스를 포함하지 않음 \n" #: pg_amcheck.c:1199 #, c-format @@ -437,14 +437,14 @@ msgid "" " --no-dependent-toast do NOT expand list of relations to include " "TOAST tables\n" msgstr "" -" -—no-dependent-toast 릴레이션에 TOAST 테이블을 포함하지 않음\n" +" --no-dependent-toast 릴레이션에 TOAST 테이블을 포함하지 않음\n" #: pg_amcheck.c:1200 #, c-format msgid "" " --no-strict-names do NOT require patterns to match objects\n" msgstr "" -" -—no-strict-names 개체가 패턴과 일치하지 않아도 허용함\n" +" --no-strict-names 개체가 패턴과 일치하지 않아도 허용함\n" #: pg_amcheck.c:1201 #, c-format @@ -459,14 +459,14 @@ msgstr "" #, c-format msgid "" " --exclude-toast-pointers do NOT follow relation TOAST pointers\n" -msgstr " -—exclude-toast-pointers TOAST 포인터를 확인하지 않음\n" +msgstr " --exclude-toast-pointers TOAST 포인터를 확인하지 않음\n" #: pg_amcheck.c:1203 #, c-format msgid "" " --on-error-stop stop checking at end of first corrupt " "page\n" -msgstr " -—on-error-stop 손상된 페이지 끝에서 검사를 멈춤\n" +msgstr " --on-error-stop 손상된 페이지 끝에서 검사를 멈춤\n" #: pg_amcheck.c:1204 #, c-format @@ -474,7 +474,7 @@ msgid "" " --skip=OPTION do NOT check \"all-frozen\" or \"all-" "visible\" blocks\n" msgstr "" -" -—skip=OPTION \"all-frozen\" 또는 \"all-visible\" 블록을 " +" --skip=OPTION \"all-frozen\" 또는 \"all-visible\" 블록을 " "검사하지 않음\n" #: pg_amcheck.c:1205 @@ -483,7 +483,7 @@ msgid "" " --startblock=BLOCK begin checking table(s) at the given block " "number\n" msgstr "" -" -—startblock=BLOCK 지정된 블록 번호부터 테이블 검사를 시작\n" +" --startblock=BLOCK 지정된 블록 번호부터 테이블 검사를 시작\n" #: pg_amcheck.c:1206 #, c-format @@ -491,7 +491,7 @@ msgid "" " --endblock=BLOCK check table(s) only up to the given block " "number\n" msgstr "" -" -—endblock=BLOCK 지정된 블록 번호까지 테이블 검사 마침\n" +" --endblock=BLOCK 지정된 블록 번호까지 테이블 검사 마침\n" #: pg_amcheck.c:1207 #, c-format @@ -516,19 +516,19 @@ msgid "" " --heapallindexed check that all heap tuples are found " "within indexes\n" msgstr "" -" -—heapallindexed 모든 heap 튜플이 인덱스 내에 있는지 검사\n" +" --heapallindexed 모든 heap 튜플이 인덱스 내에 있는지 검사\n" #: pg_amcheck.c:1210 #, c-format msgid "" " --parent-check check index parent/child relationships\n" -msgstr " -—parent-check 인덱스의 부모/자식 관계를 검사\n" +msgstr " --parent-check 인덱스의 부모/자식 관계를 검사\n" #: pg_amcheck.c:1211 #, c-format msgid "" " --rootdescend search from root page to refind tuples\n" -msgstr " —-rootdescend 루트 페이지 부터 튜플을 다시 찾음 \n" +msgstr " --rootdescend 루트 페이지 부터 튜플을 다시 찾음 \n" #: pg_amcheck.c:1212 #, c-format @@ -544,33 +544,33 @@ msgstr "" msgid "" " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" -" -h, -—host=HOSTNAME 데이터베이스 서버 호스트 또는 소켓의 디렉터" +" -h, --host=HOSTNAME 데이터베이스 서버 호스트 또는 소켓의 디렉터" "리\n" #: pg_amcheck.c:1214 #, c-format msgid " -p, --port=PORT database server port\n" -msgstr " -p, -—port=PORT 데이터베이스 서버 포트\n" +msgstr " -p, --port=PORT 데이터베이스 서버 포트\n" #: pg_amcheck.c:1215 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" -msgstr " -U, -—username=USERNAME 연결할 유저 이름\n" +msgstr " -U, --username=USERNAME 연결할 유저 이름\n" #: pg_amcheck.c:1216 #, c-format msgid " -w, --no-password never prompt for password\n" -msgstr " -w, -—no-password 암호 입력 프롬프트가 나타나지 않음\n" +msgstr " -w, --no-password 암호 입력 프롬프트가 나타나지 않음\n" #: pg_amcheck.c:1217 #, c-format msgid " -W, --password force password prompt\n" -msgstr " -W, -—password 암호 입력 프롬프트가 나타남\n" +msgstr " -W, --password 암호 입력 프롬프트가 나타남\n" #: pg_amcheck.c:1218 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" -msgstr " -—maintenance-db=DBNAME 대체 연결 데이터베이스\n" +msgstr " --maintenance-db=DBNAME 대체 연결 데이터베이스\n" #: pg_amcheck.c:1219 #, c-format @@ -593,12 +593,12 @@ msgstr " -e, --echo 서버로 보내는 명령들을 보 msgid "" " -j, --jobs=NUM use this many concurrent connections to " "the server\n" -msgstr " -j, -—jobs=NUM 서버에 동시 연결할 수를 지정\n" +msgstr " -j, --jobs=NUM 서버에 동시 연결할 수를 지정\n" #: pg_amcheck.c:1222 #, c-format msgid " -P, --progress show progress information\n" -msgstr " -P, -—progress 진행 사항 정보를 보여줌\n" +msgstr " -P, --progress 진행 사항 정보를 보여줌\n" #: pg_amcheck.c:1223 #, c-format @@ -614,7 +614,7 @@ msgstr " -V, --version 버전 정보를 보여주고 마침\n #: pg_amcheck.c:1225 #, c-format msgid " --install-missing install missing extensions\n" -msgstr " -—install-missing 누락된 익스텐션을 설치\n" +msgstr " --install-missing 누락된 익스텐션을 설치\n" #: pg_amcheck.c:1226 #, c-format diff --git a/src/bin/pg_archivecleanup/po/es.po b/src/bin/pg_archivecleanup/po/es.po index bac039fa0539b..cf7107a1f81e0 100644 --- a/src/bin/pg_archivecleanup/po/es.po +++ b/src/bin/pg_archivecleanup/po/es.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_archivecleanup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:52+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:52+0000\n" +"PO-Revision-Date: 2025-09-21 11:13+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -18,22 +18,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: BlackCAT 1.0\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -49,43 +49,43 @@ msgstr "memoria agotada\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "no se puede duplicar un puntero nulo (error interno)\n" -#: pg_archivecleanup.c:68 +#: pg_archivecleanup.c:69 #, c-format msgid "archive location \"%s\" does not exist" msgstr "ubicación de archivador «%s» no existe" -#: pg_archivecleanup.c:100 +#: pg_archivecleanup.c:101 #, c-format msgid "could not open archive location \"%s\": %m" msgstr "no se pudo abrir la ubicación del archivador «%s»: %m" -#: pg_archivecleanup.c:164 +#: pg_archivecleanup.c:165 #, c-format msgid "could not remove file \"%s\": %m" msgstr "no se pudo eliminar el archivo «%s»: %m" -#: pg_archivecleanup.c:169 +#: pg_archivecleanup.c:170 #, c-format msgid "could not read archive location \"%s\": %m" msgstr "no se pudo leer la ubicación del archivador «%s»: %m" -#: pg_archivecleanup.c:172 +#: pg_archivecleanup.c:173 #, c-format msgid "could not close archive location \"%s\": %m" msgstr "no se pudo cerrar la ubicación del archivador «%s»: %m" -#: pg_archivecleanup.c:245 +#: pg_archivecleanup.c:246 #, c-format msgid "invalid file name argument" msgstr "el nombre de archivo usado como argumento no es válido" -#: 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 "Pruebe «%s --help» para mayor información." -#: pg_archivecleanup.c:259 +#: pg_archivecleanup.c:260 #, c-format msgid "" "%s removes older WAL files from PostgreSQL archives.\n" @@ -94,17 +94,17 @@ msgstr "" "%s elimina archivos de WAL antiguos del archivador de PostgreSQL.\n" "\n" -#: pg_archivecleanup.c:260 +#: pg_archivecleanup.c:261 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_archivecleanup.c:261 +#: pg_archivecleanup.c:262 #, c-format msgid " %s [OPTION]... ARCHIVELOCATION OLDESTKEPTWALFILE\n" msgstr " %s [OPCIÓN].... UBICACIÓNARCHIVADOR WALMÁSANTIGUOAMANTENER\n" -#: pg_archivecleanup.c:262 +#: pg_archivecleanup.c:263 #, c-format msgid "" "\n" @@ -113,29 +113,29 @@ msgstr "" "\n" "Opciones:\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 " -, --clean-backup-history limpia archivos incluyendo archivos de historia de backup\n" -#: pg_archivecleanup.c:264 +#: pg_archivecleanup.c:265 #, c-format msgid " -d, --debug generate debug output (verbose mode)\n" msgstr " -d, --debug genera salida de depuración (modo verboso)\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 simulacro, muestra el nombre de los archivos que se eliminarían\n" -#: pg_archivecleanup.c:267 +#: pg_archivecleanup.c:268 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar la información de la versión, luego salir\n" -#: pg_archivecleanup.c:268 +#: pg_archivecleanup.c:269 #, c-format msgid "" " -x, --strip-extension=EXT strip this extension before identifying files for\n" @@ -144,27 +144,33 @@ msgstr "" " -x, --strip-extension=EXT quitar esta extensión antes de identificar archivos\n" " a limpiar\n" -#: pg_archivecleanup.c:270 +#: pg_archivecleanup.c:271 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help muestra esta ayuda, luego salir\n" -#: pg_archivecleanup.c:271 +#: pg_archivecleanup.c:272 #, c-format +#| msgid "" +#| "\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" 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" -"Para usar como archive_cleanup_command en postgresql.conf:\n" +"Para usar como «archive_cleanup_command» en postgresql.conf:\n" " archive_cleanup_command = 'pg_archivecleanup [OPCIÓN]... UBICACIÓNARCHIVADOR %%r'\n" "por ej.\n" " archive_cleanup_command = 'pg_archivecleanup /mnt/servidor/directorioarchivador %%r'\n" -#: pg_archivecleanup.c:276 +#: pg_archivecleanup.c:277 #, c-format msgid "" "\n" @@ -177,7 +183,7 @@ msgstr "" "por ej.\n" " pg_archivecleanup /mnt/servidor/directorioarchivador 000000010000000000000010.00000020.backup\n" -#: pg_archivecleanup.c:280 +#: pg_archivecleanup.c:281 #, c-format msgid "" "\n" @@ -186,22 +192,22 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_archivecleanup.c:281 +#: pg_archivecleanup.c:282 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_archivecleanup.c:353 +#: pg_archivecleanup.c:354 #, c-format msgid "must specify archive location" msgstr "debe especificar la ubicación del archivador" -#: pg_archivecleanup.c:365 +#: pg_archivecleanup.c:366 #, c-format msgid "must specify oldest kept WAL file" msgstr "debe especificar el fichero WAL más antiguo a mantener" -#: pg_archivecleanup.c:372 +#: pg_archivecleanup.c:373 #, c-format msgid "too many command-line arguments" msgstr "demasiados argumentos de línea de órdenes" diff --git a/src/bin/pg_archivecleanup/po/ko.po b/src/bin/pg_archivecleanup/po/ko.po index 79fea6d7cf4cd..28a31abe5f083 100644 --- a/src/bin/pg_archivecleanup/po/ko.po +++ b/src/bin/pg_archivecleanup/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_archivecleanup (PostgreSQL) 17\n" +"Project-Id-Version: pg_archivecleanup (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:52+0000\n" -"PO-Revision-Date: 2025-01-16 13:10+0900\n" +"POT-Creation-Date: 2025-09-11 21:52+0000\n" +"PO-Revision-Date: 2025-09-09 12:51+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -17,22 +17,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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,43 +48,43 @@ 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" @@ -94,17 +94,17 @@ msgstr "" "WAL 파일을 지웁니다.\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 [옵션]... 아카이브위치 보관할제일오래된파일\n" -#: pg_archivecleanup.c:262 +#: pg_archivecleanup.c:263 #, c-format msgid "" "\n" @@ -113,18 +113,18 @@ 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 " @@ -132,12 +132,12 @@ msgid "" " removed\n" msgstr " -n, --dry-run 지울 대상만 확인하고 지우지는 않음\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 " @@ -146,28 +146,28 @@ msgid "" msgstr "" " -x, --strip-extension=EXT 지울 파일을 식별하기 전에 해당 확장 모듈 지움\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" -"postgresql.conf 파일에서 archive_cleanup_command 설정 방법:\n" +"postgresql.conf 파일에서 \"archive_cleanup_command\" 설정 방법:\n" " archive_cleanup_command = 'pg_archivecleanup [옵션]... 아카이브위치 %%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" @@ -182,7 +182,7 @@ msgstr "" " pg_archivecleanup /mnt/server/archiverdir " "000000010000000000000010.00000020.backup\n" -#: pg_archivecleanup.c:280 +#: pg_archivecleanup.c:281 #, c-format msgid "" "\n" @@ -191,26 +191,25 @@ 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 "너무 많은 명령행 인자를 지정했음" -#, c-format #~ msgid " -x EXT clean up files if they have this extension\n" #~ msgstr " -x EXT 해당 확장자 파일들을 작업 대상으로 함\n" diff --git a/src/bin/pg_archivecleanup/po/ru.po b/src/bin/pg_archivecleanup/po/ru.po index 8e51fb073041a..ccefe2163c427 100644 --- a/src/bin/pg_archivecleanup/po/ru.po +++ b/src/bin/pg_archivecleanup/po/ru.po @@ -1,13 +1,13 @@ # Russian message translation file for pg_archivecleanup # Copyright (C) 2017 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Alexander Lakhin , 2017, 2019, 2020, 2022, 2024. +# SPDX-FileCopyrightText: 2017, 2019, 2020, 2022, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_archivecleanup (PostgreSQL) 10\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" "POT-Creation-Date: 2025-08-30 15:59+0300\n" -"PO-Revision-Date: 2024-09-07 06:17+0300\n" +"PO-Revision-Date: 2025-09-13 21:08+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -161,7 +161,7 @@ msgid " -?, --help show this help, then exit\n" msgstr " -?, --help показать эту справку и выйти\n" #: pg_archivecleanup.c:272 -#, fuzzy, c-format +#, c-format msgid "" "\n" "For use as \"archive_cleanup_command\" in postgresql.conf:\n" @@ -171,9 +171,9 @@ msgid "" " archive_cleanup_command = 'pg_archivecleanup /mnt/server/archiverdir %%r'\n" msgstr "" "\n" -"Для использования в качестве archive_cleanup_command в postgresql.conf:\n" -" archive_cleanup_command = 'pg_archivecleanup [ПАРАМЕТР]... " -"РАСПОЛОЖЕНИЕ_АРХИВА %%r'\n" +"Для использования в качестве \"archive_cleanup_command\" в postgresql.conf:\n" +" archive_cleanup_command = 'pg_archivecleanup [ПАРАМЕТР]... ПУТЬ_К_АРХИВУ " +"%%r'\n" "например:\n" " archive_cleanup_command = 'pg_archivecleanup /mnt/server/archiverdir %%r'\n" diff --git a/src/bin/pg_basebackup/po/es.po b/src/bin/pg_basebackup/po/es.po index b637026541f0e..e96b135635c3f 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-02-16 19:49+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:49+0000\n" +"PO-Revision-Date: 2025-09-21 11:24+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -21,30 +21,31 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " #: ../../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 "esta instalación no soporta compresión con %s" @@ -98,7 +99,7 @@ msgstr "el algoritmo de compresión «%s» no acepta modo de larga distancia" 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_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" @@ -110,7 +111,7 @@ msgid "could not read file \"%s\": read %d of %zu" msgstr "no se pudo leer el archivo «%s»: leídos %d de %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 "no se pudo cerrar el archivo «%s»: %m" @@ -133,10 +134,10 @@ msgstr "" "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n" "directorio de datos." -#: ../../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 "no se pudo abrir el archivo «%s»: %m" @@ -146,8 +147,8 @@ msgstr "no se pudo abrir el archivo «%s»: %m" msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" @@ -163,36 +164,36 @@ 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:76 +#: ../../common/file_utils.c:75 #, 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" -#: ../../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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -227,191 +228,200 @@ msgstr "no se pudo re-ejecutar con el token restringido: código de error %lu" msgid "could not get exit code from subprocess: error code %lu" msgstr "no se pudo obtener el código de salida del subproceso: código de error %lu" -#: ../../fe_utils/option_utils.c:69 -#, c-format -msgid "invalid value \"%s\" for option %s" -msgstr "el valor «%s» no es válido para la opción «%s»" - -#: ../../fe_utils/option_utils.c:76 -#, c-format -msgid "%s must be in range %d..%d" -msgstr "%s debe estar en el rango %d..%d" - -#: ../../fe_utils/option_utils.c:106 -#, c-format -msgid "unrecognized sync method: %s" -msgstr "método de sync no reconocido: «%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:334 -#, c-format -msgid "out of memory" -msgstr "memoria agotada" - -#: ../../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 "no se pudo escribir a archivo «%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 "no se pudo crear archivo «%s»: %m" -#: ../../fe_utils/string_utils.c:587 -#, c-format -msgid "shell command argument contains a newline or carriage return: \"%s\"\n" -msgstr "el argumento de la orden de shell contiene un salto de línea o retorno de carro: «%s»\n" - -#: ../../fe_utils/string_utils.c:760 +#: ../../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 "el nombre de base de datos contiene un salto de línea o retorno de carro: «%s»\n" +msgid "could not write to file \"%s\": %m" +msgstr "no se pudo escribir a archivo «%s»: %m" -#: bbstreamer_file.c:275 +#: ../../fe_utils/astreamer_file.c:278 #, c-format msgid "unexpected state while extracting archive" msgstr "estado inesperado mientras se extraía el archivo" -#: 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 "no se pudo crear el directorio «%s»: %m" -#: bbstreamer_file.c:326 +#: ../../fe_utils/astreamer_file.c:329 #, c-format msgid "could not set permissions on directory \"%s\": %m" msgstr "no se pudo definir los permisos del directorio «%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 "no se pudo crear un enlace simbólico desde «%s» a «%s»: %m" -#: bbstreamer_file.c:365 +#: ../../fe_utils/astreamer_file.c:368 #, c-format msgid "could not set permissions on file \"%s\": %m" msgstr "no se pudo definir los permisos al archivo «%s»: %m" -#: bbstreamer_gzip.c:95 +#: ../../fe_utils/astreamer_gzip.c:115 #, c-format msgid "could not create compressed file \"%s\": %m" msgstr "no se pudo crear el archivo comprimido «%s»: %m" -#: bbstreamer_gzip.c:103 +#: ../../fe_utils/astreamer_gzip.c:127 #, c-format msgid "could not duplicate stdout: %m" msgstr "no se pudo duplicar stdout: %m" -#: bbstreamer_gzip.c:107 +#: ../../fe_utils/astreamer_gzip.c:131 #, c-format msgid "could not open output file: %m" msgstr "no se pudo abrir el archivo de salida: %m" -#: bbstreamer_gzip.c:111 +#: ../../fe_utils/astreamer_gzip.c:135 #, c-format msgid "could not set compression level %d: %s" msgstr "no se pudo definir el nivel de compresión %d: %s" -#: bbstreamer_gzip.c:143 +#: ../../fe_utils/astreamer_gzip.c:167 #, c-format msgid "could not write to compressed file \"%s\": %s" msgstr "no se pudo escribir al archivo comprimido «%s»: %s" -#: bbstreamer_gzip.c:167 +#: ../../fe_utils/astreamer_gzip.c:191 #, c-format msgid "could not close compressed file \"%s\": %m" msgstr "no se pudo cerrar el archivo comprimido «%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 "no se pudo inicializar la biblioteca de compresión" -#: 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 "no se pudo descomprimir datos: %s" -#: bbstreamer_inject.c:189 -#, c-format -msgid "unexpected state while injecting recovery settings" -msgstr "formato de resultados inesperado mientras se inyectaban los parámetros de recuperación" - -#: bbstreamer_lz4.c:95 +#: ../../fe_utils/astreamer_lz4.c:97 #, c-format msgid "could not create lz4 compression context: %s" msgstr "no se pudo crear un contexto de compresión lz4: %s" -#: bbstreamer_lz4.c:140 +#: ../../fe_utils/astreamer_lz4.c:142 #, c-format msgid "could not write lz4 header: %s" msgstr "no se pudo escribir la cabecera 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 "no se pudo comprimir datos: %s" -#: bbstreamer_lz4.c:241 +#: ../../fe_utils/astreamer_lz4.c:243 #, c-format msgid "could not end lz4 compression: %s" msgstr "no se pudo terminar la compresión lz4: %s" -#: bbstreamer_lz4.c:293 +#: ../../fe_utils/astreamer_lz4.c:295 #, c-format msgid "could not initialize compression library: %s" msgstr "no se pudo inicializar la biblioteca de compresión: %s" -#: bbstreamer_tar.c:244 +#: ../../fe_utils/astreamer_tar.c:244 #, c-format msgid "tar file trailer exceeds 2 blocks" msgstr "la terminación del archivo tar excede de 2 bloques" -#: bbstreamer_tar.c:249 +#: ../../fe_utils/astreamer_tar.c:249 #, c-format msgid "unexpected state while parsing tar archive" msgstr "se encontró un estado inesperado mientras se interpretaba el archivo tar" -#: bbstreamer_tar.c:292 +#: ../../fe_utils/astreamer_tar.c:292 #, c-format msgid "tar member has empty name" msgstr "miembro de tar tiene nombre vacío" -#: bbstreamer_tar.c:326 +#: ../../fe_utils/astreamer_tar.c:326 #, c-format msgid "COPY stream ended before last file was finished" msgstr "el flujo COPY terminó antes que el último archivo estuviera completo" -#: bbstreamer_zstd.c:85 +#: ../../fe_utils/astreamer_zstd.c:89 #, c-format msgid "could not create zstd compression context" msgstr "no se pudo restablecer el contexto de compresión zstd" -#: bbstreamer_zstd.c:91 +#: ../../fe_utils/astreamer_zstd.c:95 #, c-format msgid "could not set zstd compression level to %d: %s" msgstr "no se pudo definir el nivel de compresión zstd a %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 "no se pudo definir la cantidad de procesos ayudantes de compresión a %d: %s" -#: bbstreamer_zstd.c:116 +#: ../../fe_utils/astreamer_zstd.c:120 #, c-format msgid "could not enable long-distance mode: %s" msgstr "no se pudo habilitar el modo de larga distancia: %s" -#: bbstreamer_zstd.c:275 +#: ../../fe_utils/astreamer_zstd.c:279 #, c-format msgid "could not create zstd decompression context" msgstr "no se pudo crear el contexto de descompresión zstd" +#: ../../fe_utils/option_utils.c:69 +#, c-format +msgid "invalid value \"%s\" for option %s" +msgstr "el valor «%s» no es válido para la opción «%s»" + +#: ../../fe_utils/option_utils.c:76 +#, c-format +msgid "%s must be in range %d..%d" +msgstr "%s debe estar en el rango %d..%d" + +#: ../../fe_utils/option_utils.c:106 +#, c-format +msgid "unrecognized sync method: %s" +msgstr "método de sync no reconocido: «%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 "memoria agotada" + +#: ../../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 "el argumento de la orden de shell contiene un salto de línea o retorno de carro: «%s»\n" + +#: ../../fe_utils/string_utils.c:760 +#, c-format +msgid "database name contains a newline or carriage return: \"%s\"\n" +msgstr "el nombre de base de datos contiene un salto de línea o retorno de carro: «%s»\n" + +#: astreamer_inject.c:189 +#, c-format +msgid "unexpected state while injecting recovery settings" +msgstr "formato de resultados inesperado mientras se inyectaban los parámetros de recuperación" + #: pg_basebackup.c:245 #, c-format msgid "removing data directory \"%s\"" @@ -502,14 +512,14 @@ msgstr "" "en ejecución.\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 "Empleo:\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 [OPCIÓN]...\n" @@ -660,12 +670,12 @@ msgstr " -P, --progress mostrar información de progreso\n" msgid " -S, --slot=SLOTNAME replication slot to use\n" msgstr " -S, --slot=NOMBRE slot de replicación a usar\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 desplegar mensajes verbosos\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 mostrar información de versión, luego salir\n" @@ -723,12 +733,12 @@ msgid "" " set method for syncing files to disk\n" msgstr " --sync-method=MÉTODO definir método para sincronizar archivos a disco\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 mostrar esta ayuda, luego salir\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" @@ -742,12 +752,12 @@ msgstr "" msgid " -d, --dbname=CONNSTR connection string\n" msgstr " -d, --dbname=CONSTR cadena de conexión\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=ANFITRIÓN dirección del servidor o directorio del socket\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úmero de port del servidor\n" @@ -761,25 +771,25 @@ msgstr "" " -s, --status-interval=INTERVALO (segundos)\n" " tiempo entre envíos de paquetes de estado al servidor\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=NOMBRE conectarse con el usuario especificado\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 nunca pedir contraseña\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 forzar un prompt para la contraseña\n" " (debería ser automático)\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" @@ -788,8 +798,8 @@ msgstr "" "\n" "Reporte errores a <%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 "Sitio web de %s: <%s>\n" @@ -799,8 +809,8 @@ msgstr "Sitio web de %s: <%s>\n" msgid "could not read from ready pipe: %m" msgstr "no se pudo leer desde la tubería: %m" -#: pg_basebackup.c:491 pg_basebackup.c:633 pg_basebackup.c:2258 -#: streamutil.c:521 +#: 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 "no se pudo interpretar la ubicación del WAL «%s»" @@ -815,512 +825,508 @@ msgstr "no se pudo completar la escritura de archivos WAL: %m" msgid "could not create pipe for background process: %m" msgstr "no se pudo crear la tubería para el proceso en segundo plano: %m" -#: pg_basebackup.c:676 +#: pg_basebackup.c:677 #, c-format msgid "created temporary replication slot \"%s\"" msgstr "se creó slot temporal de replicación «%s»" -#: pg_basebackup.c:679 +#: pg_basebackup.c:680 #, c-format msgid "created replication slot \"%s\"" msgstr "se creó el slot de replicación «%s»" -#: pg_basebackup.c:728 +#: pg_basebackup.c:729 #, c-format msgid "could not create background process: %m" msgstr "no se pudo lanzar el proceso en segundo plano: %m" -#: pg_basebackup.c:737 +#: pg_basebackup.c:738 #, c-format msgid "could not create background thread: %m" msgstr "no se pudo lanzar el hilo en segundo plano: %m" -#: pg_basebackup.c:776 +#: pg_basebackup.c:777 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "el directorio «%s» existe pero no está vacío" -#: 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 "no se pudo acceder al directorio «%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" msgstr[0] "%*s/%s kB (100%%), %d/%d tablespace %*s" msgstr[1] "%*s/%s kB (100%%), %d/%d tablespaces %*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)" msgstr[0] "%*s/%s kB (%d%%), %d/%d tablespace (%s%-*.*s)" msgstr[1] "%*s/%s kB (%d%%), %d/%d tablespaces (%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" msgstr[0] "%*s/%s kB (%d%%), %d/%d tablespace" msgstr[1] "%*s/%s kB (%d%%), %d/%d tablespaces" -#: pg_basebackup.c:910 +#: pg_basebackup.c:911 #, c-format msgid "transfer rate \"%s\" is not a valid value" msgstr "tasa de transferencia «%s» no es un valor válido" -#: pg_basebackup.c:912 +#: pg_basebackup.c:913 #, c-format msgid "invalid transfer rate \"%s\": %m" msgstr "tasa de transferencia «%s» no válida: %m" -#: pg_basebackup.c:919 +#: pg_basebackup.c:920 #, c-format msgid "transfer rate must be greater than zero" msgstr "tasa de transferencia debe ser mayor que cero" -#: pg_basebackup.c:949 +#: pg_basebackup.c:950 #, c-format msgid "invalid --max-rate unit: \"%s\"" msgstr "unidad de --max-rato no válida: «%s»" -#: pg_basebackup.c:953 +#: pg_basebackup.c:954 #, c-format msgid "transfer rate \"%s\" exceeds integer range" msgstr "la tasa de transferencia «%s» excede el rango de enteros" -#: pg_basebackup.c:960 +#: pg_basebackup.c:961 #, c-format msgid "transfer rate \"%s\" is out of range" msgstr "la tasa de transferencia «%s» está fuera de rango" -#: pg_basebackup.c:1022 +#: pg_basebackup.c:1023 #, c-format msgid "could not get COPY data stream: %s" msgstr "no se pudo obtener un flujo de datos 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 "no fue posible leer datos COPY: %s" -#: pg_basebackup.c:1043 +#: pg_basebackup.c:1044 #, c-format msgid "background process terminated unexpectedly" msgstr "un proceso en segundo plano terminó inesperadamente" -#: pg_basebackup.c:1114 +#: pg_basebackup.c:1115 #, c-format msgid "cannot inject manifest into a compressed tar file" msgstr "no se pueden inyectar un manifiesto en un archivo tar comprimido" -#: 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 "Use compresión del lado del cliente, envíe la salida a un directorio en lugar de a salida estándar, o use %s." -#: pg_basebackup.c:1131 +#: pg_basebackup.c:1132 #, c-format msgid "cannot parse archive \"%s\"" msgstr "no se pudo interpretar el archivo «%s»" -#: pg_basebackup.c:1132 +#: pg_basebackup.c:1133 #, c-format msgid "Only tar archives can be parsed." msgstr "Sólo los archivos tar pueden ser interpretados." -#: pg_basebackup.c:1134 +#: pg_basebackup.c:1135 #, c-format msgid "Plain format requires pg_basebackup to parse the archive." msgstr "El formato plano requiere que pg_basebackup interprete el archivo." -#: pg_basebackup.c:1136 +#: pg_basebackup.c:1137 #, c-format msgid "Using - as the output directory requires pg_basebackup to parse the archive." msgstr "Usar - como directorio de salida requiere que pg_basebackup interprete el archivo." -#: pg_basebackup.c:1138 +#: pg_basebackup.c:1139 #, c-format msgid "The -R option requires pg_basebackup to parse the archive." msgstr "La opción -R requiere que pg_basebackup interprete el archivo." -#: pg_basebackup.c:1357 +#: pg_basebackup.c:1358 #, c-format msgid "archives must precede manifest" msgstr "los archivos deben preceder al manifiesto" -#: pg_basebackup.c:1372 +#: pg_basebackup.c:1373 #, c-format msgid "invalid archive name: \"%s\"" msgstr "nombre de archivo no válido: «%s»" -#: pg_basebackup.c:1444 +#: pg_basebackup.c:1445 #, c-format msgid "unexpected payload data" msgstr "datos inesperados" -#: pg_basebackup.c:1587 +#: pg_basebackup.c:1588 #, c-format msgid "empty COPY message" msgstr "mensaje COPY vacío" -#: pg_basebackup.c:1589 +#: pg_basebackup.c:1590 #, c-format msgid "malformed COPY message of type %d, length %zu" msgstr "mensaje COPY mal formado de tipo %d, largo %zu" -#: pg_basebackup.c:1789 +#: pg_basebackup.c:1790 #, c-format msgid "incompatible server version %s" msgstr "versión del servidor %s incompatible" -#: pg_basebackup.c:1805 +#: pg_basebackup.c:1806 #, c-format msgid "Use -X none or -X fetch to disable log streaming." msgstr "Use -X none o -X fetch para deshabilitar el flujo de log." -#: pg_basebackup.c:1841 +#: pg_basebackup.c:1842 #, c-format msgid "server does not support incremental backup" msgstr "el servidor no soporta backup incremental" -#: pg_basebackup.c:1850 pg_basebackup.c:2008 pg_recvlogical.c:272 -#: receivelog.c:543 receivelog.c:582 streamutil.c:367 streamutil.c:441 -#: streamutil.c:493 streamutil.c:581 streamutil.c:733 streamutil.c:778 +#: 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 "no se pudo ejecutar la orden de replicación «%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 "no se pudo cargar el manifiesto: %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 "no se pudo cargar el manifiesto: estado inesperado %s" -#: pg_basebackup.c:1867 +#: pg_basebackup.c:1868 #, c-format msgid "could not send COPY data: %s" msgstr "no fue posible enviar datos COPY: %s" -#: pg_basebackup.c:1877 +#: pg_basebackup.c:1878 #, c-format msgid "could not send end-of-COPY: %s" msgstr "no se pudo enviar fin-de-COPY: %s" -#: pg_basebackup.c:1892 +#: pg_basebackup.c:1893 #, c-format msgid "unexpected extra result while sending manifest" msgstr "conjunto de resultados inesperado mientras se enviaba el manifiesto" -#: pg_basebackup.c:1950 +#: pg_basebackup.c:1951 #, c-format msgid "backup targets are not supported by this server version" msgstr "los destinos de respaldo no están soportados por esta versión de servidor" -#: pg_basebackup.c:1953 +#: pg_basebackup.c:1954 #, c-format msgid "recovery configuration cannot be written when a backup target is used" msgstr "la configuración de recuperación no puede ser escrita cuando se usa un destino de respaldo base" -#: pg_basebackup.c:1980 +#: pg_basebackup.c:1981 #, c-format msgid "server does not support server-side compression" msgstr "el servidor no soporta compresión del lado del servidor" -#: pg_basebackup.c:1990 +#: pg_basebackup.c:1991 #, c-format msgid "initiating base backup, waiting for checkpoint to complete" msgstr "iniciando el respaldo base, esperando que el checkpoint se complete" -#: pg_basebackup.c:1994 +#: pg_basebackup.c:1995 #, c-format msgid "waiting for checkpoint" msgstr "esperando al checkpoint" -#: pg_basebackup.c:2016 +#: pg_basebackup.c:2017 #, c-format msgid "could not initiate base backup: %s" msgstr "no se pudo iniciar el respaldo base: %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 "el servidor envió una respuesta inesperada a la orden BASE_BACKUP; se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos" -#: pg_basebackup.c:2025 +#: pg_basebackup.c:2026 #, c-format msgid "checkpoint completed" msgstr "el checkpoint se ha completado" -#: pg_basebackup.c:2039 +#: pg_basebackup.c:2040 #, c-format msgid "write-ahead log start point: %s on timeline %u" msgstr "punto de inicio del WAL: %s en el timeline %u" -#: pg_basebackup.c:2047 +#: pg_basebackup.c:2048 #, c-format msgid "could not get backup header: %s" msgstr "no se pudo obtener la cabecera de respaldo: %s" -#: pg_basebackup.c:2050 +#: pg_basebackup.c:2051 #, c-format msgid "no data returned from server" msgstr "el servidor no retornó datos" -#: pg_basebackup.c:2093 +#: pg_basebackup.c:2094 #, c-format msgid "can only write single tablespace to stdout, database has %d" msgstr "sólo se puede escribir un tablespace a stdout, la base de datos tiene %d" -#: pg_basebackup.c:2106 +#: pg_basebackup.c:2107 #, c-format msgid "starting background WAL receiver" msgstr "iniciando el receptor de WAL en segundo plano" -#: pg_basebackup.c:2189 +#: pg_basebackup.c:2190 #, c-format msgid "backup failed: %s" msgstr "el respaldo falló: %s" -#: pg_basebackup.c:2192 +#: pg_basebackup.c:2193 #, c-format msgid "no write-ahead log end position returned from server" msgstr "el servidor no retornó la posición final del WAL" -#: pg_basebackup.c:2195 +#: pg_basebackup.c:2196 #, c-format msgid "write-ahead log end point: %s" msgstr "posición final del WAL: %s" -#: pg_basebackup.c:2206 +#: pg_basebackup.c:2207 #, c-format msgid "checksum error occurred" msgstr "ocurrió un error de checksums" -#: pg_basebackup.c:2211 +#: pg_basebackup.c:2212 #, c-format msgid "final receive failed: %s" msgstr "la recepción final falló: %s" -#: pg_basebackup.c:2235 +#: pg_basebackup.c:2236 #, c-format msgid "waiting for background process to finish streaming ..." msgstr "esperando que el proceso en segundo plano complete el flujo..." -#: pg_basebackup.c:2239 +#: pg_basebackup.c:2240 #, c-format msgid "could not send command to background pipe: %m" msgstr "no se pudo enviar una orden a la tubería de segundo plano: %m" -#: pg_basebackup.c:2244 +#: pg_basebackup.c:2245 #, c-format msgid "could not wait for child process: %m" msgstr "no se pudo esperar al proceso hijo: %m" -#: pg_basebackup.c:2246 +#: pg_basebackup.c:2247 #, c-format msgid "child %d died, expected %d" msgstr "el hijo %d murió, pero se esperaba al %d" -#: pg_basebackup.c:2248 streamutil.c:92 streamutil.c:207 streamutil.c:319 -#, 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 "no se pudo esperar el hilo hijo: %m" -#: pg_basebackup.c:2273 +#: pg_basebackup.c:2274 #, c-format msgid "could not get child thread exit status: %m" msgstr "no se pudo obtener la cabecera de respaldo: %m" -#: pg_basebackup.c:2276 +#: pg_basebackup.c:2277 #, c-format msgid "child thread exited with error %u" msgstr "el hilo hijo terminó con error %u" -#: pg_basebackup.c:2305 +#: pg_basebackup.c:2306 #, c-format msgid "syncing data to disk ..." msgstr "sincronizando datos a disco ..." -#: pg_basebackup.c:2330 +#: pg_basebackup.c:2331 #, c-format msgid "renaming backup_manifest.tmp to backup_manifest" msgstr "renombrando backup_manifest.tmp a backup_manifest" -#: pg_basebackup.c:2350 +#: pg_basebackup.c:2351 #, c-format msgid "base backup completed" msgstr "el respaldo base se ha completado" -#: pg_basebackup.c:2436 +#: pg_basebackup.c:2437 #, c-format msgid "invalid checkpoint argument \"%s\", must be \"fast\" or \"spread\"" msgstr "argumento de checkpoint «%s» no válido, debe ser «fast» o «spread»" -#: pg_basebackup.c:2454 +#: pg_basebackup.c:2455 #, c-format msgid "invalid output format \"%s\", must be \"plain\" or \"tar\"" msgstr "formato de salida «%s» no válido, debe ser «plain» o «tar»" -#: pg_basebackup.c:2535 +#: pg_basebackup.c:2536 #, c-format msgid "invalid wal-method option \"%s\", must be \"fetch\", \"stream\", or \"none\"" msgstr "opción de wal-method «%s» no válida, debe ser «fetch», «stream» o «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:2038 pg_createsubscriber.c:2048 -#: pg_createsubscriber.c:2056 pg_createsubscriber.c:2084 -#: pg_createsubscriber.c:2116 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: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_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 "Pruebe «%s --help» para mayor información." -#: pg_basebackup.c:2584 pg_createsubscriber.c:2046 pg_receivewal.c:758 -#: pg_recvlogical.c:863 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2235 pg_receivewal.c:758 +#: pg_recvlogical.c:871 #, 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_basebackup.c:2607 +#: pg_basebackup.c:2608 #, c-format msgid "cannot specify both format and backup target" msgstr "no se puede especificar un formato junto con un destino de respaldo" -#: pg_basebackup.c:2619 +#: pg_basebackup.c:2620 #, c-format msgid "must specify output directory or backup target" msgstr "debe especificar un directorio de salida o destino de respaldo base" -#: pg_basebackup.c:2625 +#: pg_basebackup.c:2626 #, c-format msgid "cannot specify both output directory and backup target" msgstr "no se puede especificar un directorio de salida junto con un destino de respaldo" -#: pg_basebackup.c:2655 pg_receivewal.c:802 +#: pg_basebackup.c:2656 pg_receivewal.c:802 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "algoritmo de compresión no reconocido: «%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 "especificación de compresión no válida: %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 "la compresión del lado del cliente no es posible cuando se especifica un destino del respaldo base" -#: pg_basebackup.c:2688 +#: pg_basebackup.c:2689 #, c-format msgid "only tar mode backups can be compressed" msgstr "sólo los respaldos de modo tar pueden ser comprimidos" -#: pg_basebackup.c:2698 +#: pg_basebackup.c:2699 #, c-format msgid "WAL cannot be streamed when a backup target is specified" msgstr "no se puede enviar WAL cuando se especifica un destino del respaldo base" -#: pg_basebackup.c:2704 +#: pg_basebackup.c:2705 #, c-format msgid "cannot stream write-ahead logs in tar mode to stdout" msgstr "no se puede enviar WALs en modo tar a stdout" -#: pg_basebackup.c:2711 +#: pg_basebackup.c:2712 #, c-format msgid "replication slots can only be used with WAL streaming" msgstr "los slots de replicación sólo pueden usarse con flujo de WAL" -#: pg_basebackup.c:2723 +#: pg_basebackup.c:2724 #, c-format msgid "--no-slot cannot be used with slot name" msgstr "no se puede usar --no-slot junto con nombre de 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 "la opcón %s necesita que se especifique un slot con --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 y %s son opciones incompatibles" -#: pg_basebackup.c:2756 +#: pg_basebackup.c:2757 #, c-format msgid "WAL directory location cannot be specified along with a backup target" msgstr "la ubicación del directorio de WAL no puede especificarse junto con un destino de respaldo" -#: pg_basebackup.c:2762 +#: pg_basebackup.c:2763 #, c-format msgid "WAL directory location can only be specified in plain mode" msgstr "la ubicación del directorio de WAL sólo puede especificarse en modo «plain»" -#: pg_basebackup.c:2771 +#: pg_basebackup.c:2772 #, c-format msgid "WAL directory location must be an absolute path" msgstr "la ubicación del directorio de WAL debe ser una ruta absoluta" -#: pg_basebackup.c:2871 +#: pg_basebackup.c:2872 #, c-format msgid "could not create symbolic link \"%s\": %m" msgstr "no se pudo crear el enlace simbólico «%s»: %m" -#: pg_createsubscriber.c:169 +#: pg_createsubscriber.c:189 #, c-format msgid "failed after the end of recovery" msgstr "falló al final de la recuperación" -#: 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 "El servidor de destino no puede ser usado más como réplica física. Debe volver a crear la réplica física antes de continuar." -#: pg_createsubscriber.c:198 +#: pg_createsubscriber.c:221 #, c-format msgid "publication \"%s\" created in database \"%s\" on primary was left behind" msgstr "la publicación «%s» en la base de datos «%s» en el primaro fue abandonada" -#: pg_createsubscriber.c:200 +#: pg_createsubscriber.c:224 #, c-format msgid "Drop this publication before trying again." msgstr "Borre esta publicación antes de volver a intentar." -#: pg_createsubscriber.c:204 +#: pg_createsubscriber.c:228 #, c-format msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "el slot de replicación «%s» en la base de datos «%s» en el primario fue abandonada" -#: pg_createsubscriber.c:206 pg_createsubscriber.c:1261 +#: pg_createsubscriber.c:231 pg_createsubscriber.c:1314 #, c-format msgid "Drop this replication slot soon to avoid retention of WAL files." msgstr "Elimine este slot de replicación pronto para evitar la retención de archivos WAL." -#: pg_createsubscriber.c:219 +#: pg_createsubscriber.c:244 #, c-format msgid "" "%s creates a new logical replica from a standby server.\n" @@ -1330,7 +1336,7 @@ msgstr "" "servidor standby.\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" @@ -1339,52 +1345,76 @@ msgstr "" "\n" "Opciones:\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 crear suscripciones para todas las bases de datos excepto\n" +" las que no permiten conexiones y las marcadas como patrón\n" + +#: pg_createsubscriber.c:251 #, c-format msgid " -d, --database=DBNAME database in which to create a subscription\n" msgstr " -d, --dbname=BASE-DATOS base de datos en la cual crear una suscripción\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 ubicación del directorio de datos del suscriptor\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 no actualiza, sólo muestra lo que se haría\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=PUERTO número de puerto del suscriptor (def. %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=CONSTR cadena de conexión del publicador\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 directorio de sockets a usar (omisión: dir. actual)\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=SEGS segundos a esperar a que la recuperación termine\n" -#: pg_createsubscriber.c:231 +#: pg_createsubscriber.c:258 +#, c-format +#| msgid " -d, --database=DBNAME database in which to create a subscription\n" +msgid " -T, --enable-two-phase enable two-phase commit for all subscriptions\n" +msgstr " -T, --enable-two-phase activar commit en dos fases a todas las suscripciones\n" + +#: pg_createsubscriber.c:259 #, c-format msgid " -U, --subscriber-username=NAME user name for subscriber connection\n" msgstr " -U, --subscriber-username=USUARIO nombre de usuario para conexión del suscriptor\n" -#: pg_createsubscriber.c:232 +#: pg_createsubscriber.c:260 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose desplegar mensajes verbosos\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=TIPO_OBJETO eliminar todos los objetos del tipo especificado desde las\n" +" bases de datos en el suscriptor; acepta: «%s»\n" + +#: pg_createsubscriber.c:263 #, c-format msgid "" " --config-file=FILENAME use specified main server configuration\n" @@ -1393,555 +1423,615 @@ msgstr "" " --config-file=ARCHIVO utilizar el archivo de configuración del servidor\n" " principal especificado al ejecutar el clúster de destino\n" -#: pg_createsubscriber.c:235 +#: pg_createsubscriber.c:265 #, c-format msgid " --publication=NAME publication name\n" msgstr " --publication=NOMBRE nombre de publicación\n" -#: pg_createsubscriber.c:236 +#: pg_createsubscriber.c:266 #, c-format msgid " --replication-slot=NAME replication slot name\n" msgstr " --replication-slot=NOMBRE nombre de slot de replicación\n" -#: pg_createsubscriber.c:237 +#: pg_createsubscriber.c:267 #, c-format msgid " --subscription=NAME subscription name\n" msgstr " --subscription=NOMBRE nombre de suscripción\n" -#: pg_createsubscriber.c:238 +#: pg_createsubscriber.c:268 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: pg_createsubscriber.c:239 +#: pg_createsubscriber.c:269 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_createsubscriber.c:282 +#: pg_createsubscriber.c:312 #, c-format msgid "could not parse connection string: %s" msgstr "no se pudo interpretar la cadena de conexión: %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 "el programa «%s» es requerido por %s pero se encontró en el mismo directorio que «%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 "El programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s" -#: pg_createsubscriber.c:382 +#: pg_createsubscriber.c:412 #, c-format msgid "checking if directory \"%s\" is a cluster data directory" msgstr "verificando si el directorio «%s» es un directorio de datos de base de datos" -#: pg_createsubscriber.c:388 +#: pg_createsubscriber.c:418 #, c-format msgid "data directory \"%s\" does not exist" msgstr "no existe el directorio de datos «%s»" -#: pg_createsubscriber.c:396 +#: pg_createsubscriber.c:426 #, c-format msgid "directory \"%s\" is not a database cluster directory" msgstr "el directorio «%s» no es un directorio de base de datos" -#: pg_createsubscriber.c:513 +#: pg_createsubscriber.c:544 #, c-format msgid "connection to database failed: %s" msgstr "falló la conexión a la base de datos: %s" -#: pg_createsubscriber.c:526 +#: pg_createsubscriber.c:557 streamutil.c:230 #, c-format -msgid "could not clear search_path: %s" -msgstr "no se pudo limpiar search_path: %s" +msgid "could not clear \"search_path\": %s" +msgstr "no se pudo limpiar «search_path»: %s" -#: pg_createsubscriber.c:566 +#: pg_createsubscriber.c:597 #, c-format msgid "getting system identifier from publisher" msgstr "obteniendo el identificador de sistema del publicador" -#: pg_createsubscriber.c:573 +#: pg_createsubscriber.c:604 #, c-format msgid "could not get system identifier: %s" msgstr "no se pudo obtener el identificador de sistema: %s" -#: pg_createsubscriber.c:579 +#: pg_createsubscriber.c:610 #, c-format msgid "could not get system identifier: got %d rows, expected %d row" msgstr "no se pudo obtener el identificador de sistema: se obtuvieron %d filas, se esperaban %d filas" -#: pg_createsubscriber.c:586 +#: pg_createsubscriber.c:617 #, c-format -msgid "system identifier is %llu on publisher" -msgstr "identificador de sistema es %llu en el publicador" +#| msgid "system identifier is %llu on publisher" +msgid "system identifier is % on publisher" +msgstr "identificador de sistema es % en el publicador" -#: pg_createsubscriber.c:607 +#: pg_createsubscriber.c:637 #, c-format msgid "getting system identifier from subscriber" msgstr "obteniendo identificador de sistema del suscriptor" -#: 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 "el archivo de control parece estar corrupto" -#: pg_createsubscriber.c:615 pg_createsubscriber.c:656 +#: pg_createsubscriber.c:645 pg_createsubscriber.c:685 #, c-format -msgid "system identifier is %llu on subscriber" -msgstr "el identificador de sistema es %llu en suscriptor" +#| msgid "system identifier is %llu on subscriber" +msgid "system identifier is % on subscriber" +msgstr "el identificador de sistema es % en suscriptor" -#: pg_createsubscriber.c:637 +#: pg_createsubscriber.c:666 #, c-format msgid "modifying system identifier of subscriber" msgstr "modificando el identificador de sistema del suscriptor" -#: pg_createsubscriber.c:659 +#: pg_createsubscriber.c:688 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "ejecutando pg_resetwal en el suscriptor" -#: pg_createsubscriber.c:671 +#: pg_createsubscriber.c:700 #, c-format msgid "subscriber successfully changed the system identifier" msgstr "el suscriptor cambió exitosamente el identificador de sistema" -#: pg_createsubscriber.c:673 +#: pg_createsubscriber.c:702 #, c-format msgid "could not change system identifier of subscriber: %s" msgstr "no se pudo cambiar el identificador de sistema del suscriptor: %s" -#: pg_createsubscriber.c:697 +#: pg_createsubscriber.c:726 #, c-format msgid "could not obtain database OID: %s" msgstr "no se pudo obtener el OID de base de datos: %s" -#: pg_createsubscriber.c:704 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "no se pudo obtener el OID de base de datos: se obtuvieron %d filas, se esperaban %d filas" -#: pg_createsubscriber.c:776 +#: pg_createsubscriber.c:805 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "crear el slot de replicación «%s» en el publicador" -#: pg_createsubscriber.c:796 +#: pg_createsubscriber.c:825 #, c-format msgid "could not write an additional WAL record: %s" msgstr "no se pudo escribir un registro WAL adicional: %s" -#: pg_createsubscriber.c:822 +#: pg_createsubscriber.c:851 #, c-format msgid "could not obtain recovery progress: %s" msgstr "no se pudo obtener el progreso de la recuperación: %s" -#: pg_createsubscriber.c:854 +#: pg_createsubscriber.c:884 #, c-format msgid "checking settings on publisher" msgstr "verificando configuración en el publicador" -#: pg_createsubscriber.c:864 +#: pg_createsubscriber.c:894 #, c-format msgid "primary server cannot be in recovery" msgstr "el servidor primario no puede estar en recuperación" -#: pg_createsubscriber.c:888 +#: pg_createsubscriber.c:920 #, c-format msgid "could not obtain publisher settings: %s" msgstr "no se pudo obtener configuraciones del publicador: %s" # FIXME see slot.c:779. See also postmaster.c:835 -#: pg_createsubscriber.c:914 +#: pg_createsubscriber.c:949 #, c-format -msgid "publisher requires wal_level >= \"logical\"" -msgstr "el publicador requiere wal_level >= «logical»" +#| msgid "publisher requires wal_level >= \"logical\"" +msgid "publisher requires \"wal_level\" >= \"logical\"" +msgstr "el publicador requiere «wal_level» >= «logical»" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:955 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "el publicador requiere %d slots de replicación, pero solo quedan %d" -#: pg_createsubscriber.c:922 pg_createsubscriber.c:931 -#: pg_createsubscriber.c:1028 pg_createsubscriber.c:1037 -#: pg_createsubscriber.c:1046 +#: pg_createsubscriber.c:957 pg_createsubscriber.c:966 +#: pg_createsubscriber.c:1076 pg_createsubscriber.c:1085 +#: pg_createsubscriber.c:1094 #, c-format msgid "Increase the configuration parameter \"%s\" to at least %d." msgstr "Aumente el parámetro de configuración «%s» a al menos %d." -#: pg_createsubscriber.c:929 +#: pg_createsubscriber.c:964 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "el publicador requiere %d procesos WAL sender, pero sólo quedan %d" -#: pg_createsubscriber.c:938 +#: pg_createsubscriber.c:973 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "la opción two_phase no será activada en los slots de replicación" -#: pg_createsubscriber.c:939 +#: pg_createsubscriber.c:974 #, c-format msgid "Subscriptions will be created with the two_phase option disabled. Prepared transactions will be replicated at COMMIT PREPARED." msgstr "Las suscripciones serán creadas con la opción two_phase desactivada. Las transacciones preparadas serán replicadas durante COMMIT PREPARED." -#: pg_createsubscriber.c:971 +#: pg_createsubscriber.c:976 +#, c-format +msgid "You can use the command-line option --enable-two-phase to enable two_phase." +msgstr "Puede usar la opción de línea de órdenes --enable-two-phase para activar two_phase." + +#: pg_createsubscriber.c:986 +#, c-format +msgid "required WAL could be removed from the publisher" +msgstr "el WAL requerido podría ser eliminado del publicador" + +#: pg_createsubscriber.c:987 +#, c-format +#| msgid "Make sure the configuration parameter \"%s\" is set on the primary server." +msgid "Set the configuration parameter \"%s\" to -1 to ensure that required WAL files are not prematurely removed." +msgstr "Defina el parámetro de configuración «%s» a -1 para asegurar que los archivos WAL requeridos no sean eliminados prematuramente." + +#: pg_createsubscriber.c:1019 #, c-format msgid "checking settings on subscriber" msgstr "verificando configuraciones en el suscriptor" -#: pg_createsubscriber.c:978 +#: pg_createsubscriber.c:1026 #, c-format msgid "target server must be a standby" msgstr "el servidor de destino debe ser un standby" -#: pg_createsubscriber.c:1002 +#: pg_createsubscriber.c:1050 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "no se pudo obtener la configuración del suscriptor: %s" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1074 #, c-format -msgid "subscriber requires %d replication slots, but only %d remain" -msgstr "el suscriptor requiere %d slots de replicación, pero sólo quedan %d" +#| msgid "subscriber requires %d replication slots, but only %d remain" +msgid "subscriber requires %d active replication origins, but only %d remain" +msgstr "el suscriptor requiere %d slots de replicación activos, pero sólo quedan %d" -#: pg_createsubscriber.c:1035 +#: pg_createsubscriber.c:1083 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "el suscriptor requiere %d procesos de replicación lógica, pero sólo quedan %d" -#: pg_createsubscriber.c:1044 +#: pg_createsubscriber.c:1092 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "el suscriptor requiere %d procesos ayudantes, pero solo quedan %d" -#: pg_createsubscriber.c:1079 +#: pg_createsubscriber.c:1127 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "eliminando suscripción «%s» en base de datos «%s»" -#: pg_createsubscriber.c:1088 +#: pg_createsubscriber.c:1136 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "no se pudo eliminar la suscripción «%s»: %s" -#: pg_createsubscriber.c:1123 +#: pg_createsubscriber.c:1171 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "no se pudo obtener suscripciones pre-existentes: %s" -#: pg_createsubscriber.c:1259 +#: pg_createsubscriber.c:1312 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "no se pudo eliminar el slot de replicación «%s» en el primario" -#: pg_createsubscriber.c:1293 +#: pg_createsubscriber.c:1346 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "no se pudo obtener información de slots de replicación \"failover\": %s" -#: pg_createsubscriber.c:1295 pg_createsubscriber.c:1304 +#: pg_createsubscriber.c:1348 pg_createsubscriber.c:1357 #, c-format msgid "Drop the failover replication slots on subscriber soon to avoid retention of WAL files." msgstr "Elimine los slots de replicación de failover en el suscriptor pronto para evitar retención de archivos WAL." -#: pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not drop failover replication slot" msgstr "no se pudo eliminar el slot de replicación \"failover\"" -#: pg_createsubscriber.c:1325 +#: pg_createsubscriber.c:1378 #, c-format msgid "creating the replication slot \"%s\" in database \"%s\"" msgstr "creando el slot de replicación «%s» en base de datos «%s»" -#: pg_createsubscriber.c:1343 +#: pg_createsubscriber.c:1397 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "no se pudo crear el slot de replicación «%s» en base de datos «%s»: %s" -#: pg_createsubscriber.c:1373 +#: pg_createsubscriber.c:1427 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "eliminando el slot de replicación «%s» en base de datos «%s»" -#: pg_createsubscriber.c:1389 +#: pg_createsubscriber.c:1443 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "no se pudo eliminar el slot de replicación «%s» en base de datos «%s»: %s" -#: pg_createsubscriber.c:1410 +#: pg_createsubscriber.c:1464 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl falló con código de retorno %d" -#: pg_createsubscriber.c:1415 +#: pg_createsubscriber.c:1469 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl fue terminado por una excepción 0x%X" -#: pg_createsubscriber.c:1417 +#: pg_createsubscriber.c:1471 #, c-format msgid "See C include file \"ntstatus.h\" for a description of the hexadecimal value." msgstr "Vea el archivo «ntstatus.h» para una descripción del valor hexadecimal." -#: pg_createsubscriber.c:1419 +#: pg_createsubscriber.c:1473 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl fue terminado por una señal %d: %s" -#: pg_createsubscriber.c:1425 +#: pg_createsubscriber.c:1479 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl terminó con código no reconocido %d" -#: pg_createsubscriber.c:1428 +#: pg_createsubscriber.c:1482 #, c-format msgid "The failed command was: %s" msgstr "La orden fallida era: %s" -#: pg_createsubscriber.c:1474 +#: pg_createsubscriber.c:1532 #, c-format msgid "server was started" msgstr "el servidor fue iniciado" -#: pg_createsubscriber.c:1489 +#: pg_createsubscriber.c:1547 #, c-format msgid "server was stopped" msgstr "el servidor fue detenido" -#: pg_createsubscriber.c:1508 +#: pg_createsubscriber.c:1566 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "esperando que el servidor de destino alcance el estado consistente" -#: pg_createsubscriber.c:1531 +#: pg_createsubscriber.c:1589 #, c-format msgid "recovery timed out" msgstr "la recuperación tomó demasiado tiempo" -#: pg_createsubscriber.c:1544 +#: pg_createsubscriber.c:1602 #, c-format msgid "server did not end recovery" msgstr "el servidor no terminó la recuperación" -#: pg_createsubscriber.c:1546 +#: pg_createsubscriber.c:1604 #, c-format msgid "target server reached the consistent state" msgstr "el servidor de destino alcanzó el estado consistente" -#: pg_createsubscriber.c:1547 +#: pg_createsubscriber.c:1605 #, c-format msgid "If pg_createsubscriber fails after this point, you must recreate the physical replica before continuing." msgstr "Si pg_createsubscriber falla a partir de este punto, deberá re-crear la réplica física antes de continuar." -#: pg_createsubscriber.c:1574 +#: pg_createsubscriber.c:1632 pg_createsubscriber.c:1755 #, c-format msgid "could not obtain publication information: %s" msgstr "no se pudo obtener la información de publicación: %s" -#: pg_createsubscriber.c:1588 +#: pg_createsubscriber.c:1646 #, c-format msgid "publication \"%s\" already exists" msgstr "la publicación «%s» ya existe" -#: pg_createsubscriber.c:1589 +#: pg_createsubscriber.c:1647 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Considere cambiar el nombre de esta publicación antes de continuar." -#: pg_createsubscriber.c:1596 +#: pg_createsubscriber.c:1654 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "creando la publicación «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1609 +#: pg_createsubscriber.c:1667 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "no se pudo crear la publicación «%s» en la base de datos «%s»: %s" -#: pg_createsubscriber.c:1638 +#: pg_createsubscriber.c:1697 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "eliminando la publicación «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1652 +#: pg_createsubscriber.c:1711 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "no se pudo eliminar la publicación «%s» en la base de datos «%s»: %s" -#: pg_createsubscriber.c:1698 +#: pg_createsubscriber.c:1748 +#, c-format +#| msgid "dropping publication \"%s\" in database \"%s\"" +msgid "dropping all existing publications in database \"%s\"" +msgstr "eliminando todas las publicaciones existentes en la base de datos «%s»" + +#: pg_createsubscriber.c:1806 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "creando la suscripción «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1719 +#: pg_createsubscriber.c:1828 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "no se pudo create la suscripción «%s» en la base de datos «%s»: %s" -#: pg_createsubscriber.c:1764 +#: pg_createsubscriber.c:1873 #, c-format msgid "could not obtain subscription OID: %s" msgstr "no se pudo obtener el OID de suscripción: %s" -#: pg_createsubscriber.c:1771 +#: pg_createsubscriber.c:1880 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "no se pudo obtener el OID de suscripción: se obtuvieron %d filas, se esperaban %d filas" -#: pg_createsubscriber.c:1795 +#: pg_createsubscriber.c:1904 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "definiendo progreso de replicación (nombre de nodo «%s», LSN %s) en base de datos «%s»" -#: pg_createsubscriber.c:1810 +#: pg_createsubscriber.c:1919 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "no se pudo establecer el progreso de replicación para la suscripción «%s»: %s" -#: pg_createsubscriber.c:1841 +#: pg_createsubscriber.c:1950 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "activando la suscripción «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1853 +#: pg_createsubscriber.c:1962 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "no se pudo habilitar la suscripción «%s»: %s" -#: pg_createsubscriber.c:1945 +#: pg_createsubscriber.c:2008 +#, c-format +#| msgid "could not obtain database OID: %s" +msgid "could not obtain a list of databases: %s" +msgstr "no se pudo obtener una lista de bases de datos: %s" + +#: pg_createsubscriber.c:2112 #, c-format msgid "cannot be executed by \"root\"" msgstr "no puede ser ejecutado con el usuario «root»" -#: pg_createsubscriber.c:1946 +#: pg_createsubscriber.c:2113 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Debe ejecutar %s con el superusuario de PostgreSQL." -#: pg_createsubscriber.c:1967 +#: pg_createsubscriber.c:2136 #, c-format -msgid "database \"%s\" specified more than once" -msgstr "la base de datos «%s» fue especificado más de una vez" +#| msgid "database \"%s\" specified more than once" +msgid "database \"%s\" specified more than once for -d/--database" +msgstr "la base de datos «%s» fue especificada más de una vez para -d/--database" -#: pg_createsubscriber.c:2008 +#: pg_createsubscriber.c:2177 #, c-format -msgid "publication \"%s\" specified more than once" -msgstr "la publicación «%s» fue especificada más de una vez" +#| msgid "publication \"%s\" specified more than once" +msgid "publication \"%s\" specified more than once for --publication" +msgstr "la publicación «%s» fue especificada más de una vez para --publication" -#: pg_createsubscriber.c:2020 +#: pg_createsubscriber.c:2186 #, c-format -msgid "replication slot \"%s\" specified more than once" -msgstr "el slot de replicación «%s» fue especificado más de una vez" +#| msgid "replication slot \"%s\" specified more than once" +msgid "replication slot \"%s\" specified more than once for --replication-slot" +msgstr "el slot de replicación «%s» fue especificado más de una vez para --replication-slot" -#: pg_createsubscriber.c:2032 +#: pg_createsubscriber.c:2195 #, c-format -msgid "subscription \"%s\" specified more than once" -msgstr "la suscripción «%s» fue especificada más de una vez" +#| msgid "subscription \"%s\" specified more than once" +msgid "subscription \"%s\" specified more than once for --subscription" +msgstr "la suscripción «%s» fue especificada más de una vez para --subscription" -#: pg_createsubscriber.c:2055 +#: pg_createsubscriber.c:2201 +#, c-format +#| msgid "table name \"%s\" specified more than once" +msgid "object type \"%s\" specified more than once for --clean" +msgstr "el tipo de objeto «%s» fue especificado más de una vez para --clean" + +#: pg_createsubscriber.c:2226 +#, c-format +#| msgid "options -c/--clean and -a/--data-only cannot be used together" +msgid "options %s and -a/--all cannot be used together" +msgstr "las opciones %s y -a/--all no pueden usarse juntas" + +#: pg_createsubscriber.c:2244 #, c-format msgid "no subscriber data directory specified" msgstr "no se especificó un directorio de datos de suscripción" -#: pg_createsubscriber.c:2066 +#: pg_createsubscriber.c:2255 #, c-format msgid "could not determine current directory" msgstr "no se pudo determinar el directorio actual" -#: pg_createsubscriber.c:2083 +#: pg_createsubscriber.c:2272 #, c-format msgid "no publisher connection string specified" msgstr "no se especificó un string de conexión de publicador" -#: pg_createsubscriber.c:2087 +#: pg_createsubscriber.c:2276 #, c-format msgid "validating publisher connection string" msgstr "validando string de conexión del publicador" -#: pg_createsubscriber.c:2093 +#: pg_createsubscriber.c:2282 #, c-format msgid "validating subscriber connection string" msgstr "validando string de conexión del suscriptor" -#: pg_createsubscriber.c:2098 +#: pg_createsubscriber.c:2299 #, c-format msgid "no database was specified" msgstr "no se especificó una base de datos" -#: pg_createsubscriber.c:2110 +#: pg_createsubscriber.c:2310 #, 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:2115 +#: pg_createsubscriber.c:2315 #, c-format msgid "no database name specified" msgstr "no se especificó un nombre de base de datos" -#: pg_createsubscriber.c:2125 +#: pg_createsubscriber.c:2325 #, c-format msgid "wrong number of publication names specified" msgstr "una cantidad incorrecta de nombres de publicación fue especificada" -#: pg_createsubscriber.c:2126 +#: pg_createsubscriber.c:2326 #, 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:2132 +#: pg_createsubscriber.c:2332 #, c-format msgid "wrong number of subscription names specified" msgstr "una cantidad incorrecta de nombres de suscripción fue especificada" -#: pg_createsubscriber.c:2133 +#: pg_createsubscriber.c:2333 #, 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:2139 +#: pg_createsubscriber.c:2339 #, 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:2140 +#: pg_createsubscriber.c:2340 #, 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:2169 +#: pg_createsubscriber.c:2352 +#, c-format +#| msgid "invalid output format \"%s\" specified" +msgid "invalid object type \"%s\" specified for --clean" +msgstr "el tipo de objeto «%s» especificado para --clean no es válido" + +#: pg_createsubscriber.c:2353 +#, c-format +#| msgid "invalid %s value: \"%s\"" +msgid "The valid value is: \"%s\"" +msgstr "El valor válido es: «%s»" + +#: pg_createsubscriber.c:2384 #, 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:2182 +#: pg_createsubscriber.c:2397 #, c-format msgid "standby server is running" msgstr "el servidor standby está en ejecución" -#: pg_createsubscriber.c:2183 +#: pg_createsubscriber.c:2398 #, c-format msgid "Stop the standby server and try again." msgstr "Detenga el servidor standby y pruebe otra vez." -#: pg_createsubscriber.c:2192 +#: pg_createsubscriber.c:2407 #, 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:2208 pg_createsubscriber.c:2243 +#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 #, c-format msgid "stopping the subscriber" msgstr "deteniendo el suscriptor" -#: pg_createsubscriber.c:2222 +#: pg_createsubscriber.c:2437 #, c-format msgid "starting the subscriber" msgstr "iniciando el suscriptor" -#: pg_createsubscriber.c:2251 +#: pg_createsubscriber.c:2466 #, c-format msgid "Done!" msgstr "¡Listo!" @@ -1960,17 +2050,17 @@ msgstr "" msgid " -D, --directory=DIR receive write-ahead log files into this directory\n" msgstr " -D, --directory=DIR recibir los archivos de WAL en este directorio\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 salir luego de recibir el LSN especificado\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 no abandonar si el slot ya existe al crear un slot\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 no entrar en bucle al perder la conexión\n" @@ -1980,7 +2070,7 @@ msgstr " -n, --no-loop no entrar en bucle al perder la conexión\n" 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_receivewal.c:87 pg_recvlogical.c:104 +#: pg_receivewal.c:87 pg_recvlogical.c:105 #, c-format msgid "" " -s, --status-interval=SECS\n" @@ -2013,12 +2103,12 @@ msgstr "" "\n" "Acciones optativas:\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 crear un nuevo slot de replicación (para el nombre, vea --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 eliminar un slot de replicación (para el nombre, vea --slot)\n" @@ -2038,7 +2128,7 @@ msgstr "detenido el flujo de log en %X/%X (timeline %u)" msgid "switched to timeline %u at %X/%X" msgstr "cambiado al timeline %u en %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 "se recibió una señal de interrupción, saliendo" @@ -2108,7 +2198,7 @@ msgstr "no se puede verificar el archivo «%s»: la compresión con %s no está msgid "starting log streaming at %X/%X (timeline %u)" msgstr "iniciando el flujo de log en %X/%X (timeline %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 "no se pudo interpretar la posición final «%s»" @@ -2138,28 +2228,28 @@ msgstr "el método de compresión %s no está soportado aún" msgid "replication connection using slot \"%s\" is unexpectedly database specific" msgstr "la conexión de replicación usando el slot «%s» es inesperadamente específica a una base de datos" -#: pg_receivewal.c:878 pg_recvlogical.c:972 +#: pg_receivewal.c:878 pg_recvlogical.c:993 #, c-format msgid "dropping replication slot \"%s\"" msgstr "eliminando el slot de replicación «%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 "creando el slot de replicación «%s»" -#: pg_receivewal.c:918 pg_recvlogical.c:1006 +#: pg_receivewal.c:918 pg_recvlogical.c:1028 #, c-format msgid "disconnected" msgstr "desconectado" #. 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 "desconectado; esperando %d segundos para intentar nuevamente" -#: pg_recvlogical.c:84 +#: pg_recvlogical.c:83 #, c-format msgid "" "%s controls PostgreSQL logical decoding streams.\n" @@ -2168,7 +2258,7 @@ msgstr "" "%s controla flujos de decodificación lógica de PostgreSQL.\n" "\n" -#: pg_recvlogical.c:88 +#: pg_recvlogical.c:87 #, c-format msgid "" "\n" @@ -2177,17 +2267,26 @@ msgstr "" "\n" "Acciones a ejecutar:\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 iniciar flujo en un slot de replicación (para el nombre, vea --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 activar sincronización de slots de replicación a servidores standby\n" +" al crear un slot de replicación\n" + +#: pg_recvlogical.c:95 #, c-format msgid " -f, --file=FILE receive log into this file, - for stdout\n" msgstr " -f, --file=ARCHIVO recibir el log en este archivo, - para stdout\n" -#: pg_recvlogical.c:95 +#: pg_recvlogical.c:96 #, c-format msgid "" " -F --fsync-interval=SECS\n" @@ -2196,12 +2295,12 @@ msgstr "" " -F, --fsync-interval=SEGS\n" " tiempo entre fsyncs del archivo de salida (omisión: %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 dónde en un slot existente debe empezar el flujo\n" -#: pg_recvlogical.c:100 +#: pg_recvlogical.c:101 #, c-format msgid "" " -o, --option=NAME[=VALUE]\n" @@ -2212,371 +2311,374 @@ msgstr "" " pasar opción NOMBRE con valor opcional VALOR al\n" " plugin de salida\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 usar plug-in de salida PLUGIN (omisión: %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=NOMBRE-SLOT nombre del slot de replicación lógica\n" -#: pg_recvlogical.c:107 +#: 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 activa decodificación de transacciones preparadas al crear un slot\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 activa decodificación de transacciones preparadas al crear un slot\n" +#| msgid " --role=ROLE (same as --member-of, deprecated)\n" +msgid " --two-phase (same as --enable-two-phase, deprecated)\n" +msgstr " --two-phase (lo mismo que --enable-two-phase; obsoleto)\n" -#: pg_recvlogical.c:112 +#: pg_recvlogical.c:114 #, c-format msgid " -d, --dbname=DBNAME database to connect to\n" msgstr " -d, --dbname=BASE base de datos a la cual conectarse\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 "confirmando escritura hasta %X/%X, fsync hasta %X/%X (slot %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 "no se pudo enviar el paquete de retroalimentación: %s" -#: pg_recvlogical.c:239 +#: pg_recvlogical.c:241 #, c-format msgid "starting log streaming at %X/%X (slot %s)" msgstr "iniciando el flujo de log en %X/%X (slot %s)" -#: pg_recvlogical.c:281 +#: pg_recvlogical.c:283 #, c-format msgid "streaming initiated" msgstr "flujo iniciado" -#: pg_recvlogical.c:346 +#: pg_recvlogical.c:348 #, c-format msgid "could not open log file \"%s\": %m" msgstr "no se pudo abrir el archivo de registro «%s»: %m" -#: pg_recvlogical.c:375 receivelog.c:882 +#: pg_recvlogical.c:377 receivelog.c:889 #, c-format msgid "invalid socket: %s" msgstr "el socket no es válido: %s" -#: pg_recvlogical.c:428 receivelog.c:910 +#: pg_recvlogical.c:430 receivelog.c:917 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %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 "no se pudo recibir datos desde el flujo de 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 "cabecera de flujo demasiado pequeña: %d" -#: pg_recvlogical.c:512 receivelog.c:843 +#: pg_recvlogical.c:514 receivelog.c:846 #, c-format msgid "unrecognized streaming header: \"%c\"" msgstr "cabecera de flujo no reconocida: «%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 "no se pudo escribir %d bytes al archivo de registro «%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 "término inesperado del flujo de replicación: %s" -#: pg_recvlogical.c:796 +#: pg_recvlogical.c:804 #, c-format msgid "could not parse start position \"%s\"" msgstr "no se pudo interpretar la posición de inicio «%s»" -#: pg_recvlogical.c:874 +#: pg_recvlogical.c:882 #, c-format msgid "no slot specified" msgstr "no se especificó slot" -#: pg_recvlogical.c:881 +#: pg_recvlogical.c:889 #, c-format msgid "no target file specified" msgstr "no se especificó un archivo de destino" -#: pg_recvlogical.c:888 +#: pg_recvlogical.c:896 #, c-format msgid "no database specified" msgstr "no se especificó una base de datos" -#: pg_recvlogical.c:895 +#: pg_recvlogical.c:903 #, c-format msgid "at least one action needs to be specified" msgstr "debe especificarse al menos una operación" -#: pg_recvlogical.c:902 +#: pg_recvlogical.c:910 #, c-format msgid "cannot use --create-slot or --start together with --drop-slot" msgstr "no puede usarse --create-slot o --start junto con --drop-slot" -#: pg_recvlogical.c:909 +#: pg_recvlogical.c:917 #, c-format msgid "cannot use --create-slot or --drop-slot together with --startpos" msgstr "no puede usarse --create-slot o --drop-slot junto con --startpos" -#: pg_recvlogical.c:916 +#: pg_recvlogical.c:924 #, c-format msgid "--endpos may only be specified with --start" msgstr "--endpos sólo se puede utilizar con --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 sólo se puede utilizar con --create-slot" +#| msgid "--two-phase may only be specified with --create-slot" +msgid "%s may only be specified with --create-slot" +msgstr "%s sólo se puede utilizar con --create-slot" -#: pg_recvlogical.c:956 +#: pg_recvlogical.c:977 #, c-format msgid "could not establish database-specific replication connection" msgstr "no se pudo establecer una conexión de replicación específica a una base de datos" -#: pg_recvlogical.c:1056 +#: pg_recvlogical.c:1078 #, c-format msgid "end position %X/%X reached by keepalive" msgstr "ubicación de término %X/%X alcanzado por «keep-alive»" -#: pg_recvlogical.c:1061 +#: pg_recvlogical.c:1083 #, c-format msgid "end position %X/%X reached by WAL record at %X/%X" msgstr "ubicación de término %X/%X alcanzado por registro WAL en %X/%X" -#: receivelog.c:66 +#: receivelog.c:65 #, c-format msgid "could not create archive status file \"%s\": %s" msgstr "no se pudo crear el archivo de estado «%s»: %s" -#: receivelog.c:73 +#: receivelog.c:72 #, c-format msgid "could not close archive status file \"%s\": %s" msgstr "no se pudo cerrar el archivo de estado «%s»: %s" -#: receivelog.c:122 +#: receivelog.c:121 #, c-format msgid "could not get size of write-ahead log file \"%s\": %s" msgstr "no se pudo obtener el tamaño del archivo de WAL «%s»: %s" -#: receivelog.c:133 +#: receivelog.c:132 #, c-format msgid "could not open existing write-ahead log file \"%s\": %s" msgstr "no se pudo abrir el archivo de WAL «%s»: %s" -#: receivelog.c:142 +#: receivelog.c:141 #, c-format msgid "could not fsync existing write-ahead log file \"%s\": %s" msgstr "no se pudo sincronizar (fsync) el archivo de WAL «%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" msgstr[0] "el archivo de WAL «%s» mide %zd byte, debería ser 0 o %d" msgstr[1] "el archivo de WAL «%s» mide %zd bytes, debería ser 0 o %d" -#: receivelog.c:175 +#: receivelog.c:174 #, c-format msgid "could not open write-ahead log file \"%s\": %s" msgstr "no se pudo abrir archivo de WAL «%s»: %s" -#: receivelog.c:216 +#: receivelog.c:215 #, c-format msgid "not renaming \"%s\", segment is not complete" msgstr "no se cambiará el nombre a «%s», el segmento no está completo" -#: 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 "no se pudo cerrar el archivo «%s»: %s" -#: receivelog.c:288 +#: receivelog.c:287 #, c-format msgid "server reported unexpected history file name for timeline %u: %s" msgstr "el servidor reportó un nombre inesperado para el archivo de historia de timeline %u: %s" -#: receivelog.c:297 +#: receivelog.c:296 #, c-format msgid "could not create timeline history file \"%s\": %s" msgstr "no se pudo crear el archivo de historia de timeline «%s»: %s" -#: receivelog.c:304 +#: receivelog.c:303 #, c-format msgid "could not write timeline history file \"%s\": %s" msgstr "no se pudo escribir al archivo de historia de timeline «%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 "versión de servidor %s incompatible; el cliente no soporta flujos de servidores anteriores a la versión %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 "versión de servidor %s incompatible; el cliente no soporta flujos de servidores posteriores a %s" -#: receivelog.c:508 +#: receivelog.c:507 #, c-format msgid "system identifier does not match between base backup and streaming connection" msgstr "el identificador de sistema no coincide entre el respaldo base y la conexión de flujo" -#: receivelog.c:516 +#: receivelog.c:515 #, c-format msgid "starting timeline %u is not present in the server" msgstr "el timeline de inicio %u no está presente en el servidor" -#: 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 "respuesta inesperada a la orden TIMELINE_HISTORY: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos" -#: receivelog.c:626 +#: receivelog.c:625 #, c-format msgid "server reported unexpected next timeline %u, following timeline %u" msgstr "el servidor reportó un timeline siguiente %u inesperado, a continuación del timeline %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 "el servidor paró la transmisión del timeline %u en %X/%X, pero reportó que el siguiente timeline %u comienza en %X/%X" -#: receivelog.c:672 +#: receivelog.c:671 #, c-format msgid "replication stream was terminated before stop point" msgstr "el flujo de replicación terminó antes del punto de término" -#: 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 "respuesta inesperada después del fin-de-timeline: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos" -#: receivelog.c:727 +#: receivelog.c:726 #, c-format msgid "could not parse next timeline's starting point \"%s\"" msgstr "no se pudo interpretar el punto de inicio del siguiente timeline «%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 "no se pudo sincronizar (fsync) archivo «%s»: %s" -#: receivelog.c:1083 +#: receivelog.c:1090 #, c-format msgid "received write-ahead log record for offset %u with no file open" msgstr "se recibió un registro de WAL para el desplazamiento %u sin ningún archivo abierto" -#: receivelog.c:1093 +#: receivelog.c:1100 #, c-format msgid "got WAL data offset %08x, expected %08x" msgstr "se obtuvo desplazamiento de datos WAL %08x, se esperaba %08x" -#: receivelog.c:1128 +#: receivelog.c:1135 #, c-format msgid "could not write %d bytes to WAL file \"%s\": %s" msgstr "no se pudo escribir %d bytes al archivo 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 "no se pudo enviar el paquete copy-end: %s" -#: streamutil.c:165 +#: streamutil.c:162 msgid "Password: " msgstr "Contraseña: " -#: streamutil.c:192 +#: streamutil.c:189 #, c-format msgid "could not connect to server" msgstr "no se pudo conectar al servidor" -#: streamutil.c:233 -#, c-format -msgid "could not clear \"search_path\": %s" -msgstr "no se pudo limpiar «search_path»: %s" - -#: streamutil.c:249 +#: streamutil.c:246 #, c-format msgid "could not determine server setting for \"integer_datetimes\"" msgstr "no se pudo determinar la opción «integer_datetimes» del servidor" -#: streamutil.c:256 +#: streamutil.c:253 #, c-format msgid "\"integer_datetimes\" compile flag does not match server" msgstr "la opción de compilación «integer_datetimes» no coincide con el servidor" -#: streamutil.c:375 +#: 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 "no se pudo obtener el tamaño del segmento de WAL: se obtuvo %d filas y %d campos, se esperaban %d filas y %d o más campos" -#: streamutil.c:385 +#: streamutil.c:314 #, c-format msgid "WAL segment size could not be parsed" msgstr "el tamaño de segmento de WAL no pudo ser analizado" -#: streamutil.c:403 +#: 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)" msgstr[0] "el servidor remoto reportó un tamaño de segmento de WAL no válido (%d byte)" msgstr[1] "el servidor remoto reportó un tamaño de segmento de WAL no válido (%d bytes)" -#: streamutil.c:407 +#: streamutil.c:336 #, 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." -#: streamutil.c:449 +#: 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 "no se pudo obtener el indicador de acceso de grupo: se obtuvo %d filas y %d campos, se esperaban %d filas y %d o más campos" -#: streamutil.c:458 +#: streamutil.c:387 #, c-format msgid "group access flag could not be parsed: %s" msgstr "el indicador de acceso de grupo no pudo ser analizado: %s" -#: streamutil.c:501 streamutil.c:538 +#: 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 "no se pudo identificar al sistema: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d o más campos" -#: streamutil.c:590 +#: 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 "no se pudo leer el slot de replicación «%s»: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos" -#: streamutil.c:602 +#: streamutil.c:531 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "no existe el slot de replicación «%s»" -#: streamutil.c:613 +#: streamutil.c:542 #, c-format msgid "expected a physical replication slot, got type \"%s\" instead" msgstr "se esperaba un slot de replicación físico, en cambio se obtuvo tipo «%s»" -#: streamutil.c:627 +#: streamutil.c:556 #, c-format msgid "could not parse restart_lsn \"%s\" for replication slot \"%s\"" msgstr "no se pudo interpretar restart_lsn de WAL «%s» para el slot de replicación «%s»" -#: streamutil.c:744 +#: 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 "no se pudo create el slot de replicación «%s»: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos" -#: streamutil.c:788 +#: 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 "no se pudo eliminar el slot de replicación «%s»: se obtuvieron %d filas y %d campos, se esperaban %d filas y %d campos" @@ -2608,3 +2710,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 "could not clear search_path: %s" +#~ msgstr "no se pudo limpiar search_path: %s" diff --git a/src/bin/pg_basebackup/po/ko.po b/src/bin/pg_basebackup/po/ko.po index 08861d1022c3e..2d928bbc8646d 100644 --- a/src/bin/pg_basebackup/po/ko.po +++ b/src/bin/pg_basebackup/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_basebackup (PostgreSQL) 17\n" +"Project-Id-Version: pg_basebackup (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:49+0000\n" -"PO-Revision-Date: 2025-01-18 02:23+0900\n" +"POT-Creation-Date: 2025-09-11 21:49+0000\n" +"PO-Revision-Date: 2025-09-09 17:31+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -17,30 +17,31 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 압축 기능을 포함 하지 않고 빌드 되었습니다." @@ -97,7 +98,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" @@ -109,7 +110,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" @@ -133,10 +134,10 @@ msgstr "" "이럴 경우, 출력 결과가 바르지 않을 수 있고,\n" "설치된 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" @@ -146,8 +147,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 "\"%s\" 파일 fsync 실패: %m" @@ -163,36 +164,36 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 복제할 수 없음(내부 오류)\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" @@ -227,191 +228,200 @@ msgstr "제한된 토큰으로 다시 실행할 수 없음: 오류 코드 %lu" 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:334 -#, 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\"" @@ -504,14 +514,14 @@ msgstr "" "다.\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 [옵션]...\n" @@ -664,12 +674,12 @@ msgstr " -P, --progress 진행 과정 보여줌\n" 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" @@ -726,12 +736,12 @@ 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" @@ -745,12 +755,12 @@ msgstr "" msgid " -d, --dbname=CONNSTR connection string\n" msgstr " -d, --dbname=접속문자열 서버 접속 문자열\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=호스트이름 접속할 데이터베이스 서버나 소켓 디렉터리\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=포트 데이터베이스 서버 포트 번호\n" @@ -765,17 +775,17 @@ msgstr "" " -s, --status-interval=초\n" " 초 단위 매번 서버로 상태 패킷을 보냄\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=사용자 접속할 특정 데이터베이스 사용자\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 " @@ -783,8 +793,8 @@ msgid "" 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" @@ -793,8 +803,8 @@ 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" @@ -804,8 +814,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:521 +#: 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\" 분석 실패" @@ -820,106 +830,106 @@ msgstr "WAL 파일 쓰기 마무리 실패: %m" 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" msgstr[0] "%*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)" msgstr[0] "%*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" msgstr[0] "%*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 "전송 속도는 0보다 커야 함" -#: 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 파일에는 manifest를 넣을 수 없습니다." -#: pg_basebackup.c:1115 +#: pg_basebackup.c:1116 #, c-format msgid "" "Use client-side compression, send the output to a directory rather than " @@ -928,137 +938,137 @@ 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.c:1136 +#: pg_basebackup.c:1137 #, c-format msgid "" "Using - as the output directory requires pg_basebackup to parse the archive." msgstr "아카이브를 분석하기 위해 출력 디렉터리 이름으로 - 문자를 사용하세요." -#: 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.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 "비정상 payload 자료" -#: 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 "타입 %d의 잘못된 COPY 메시지, 길이: %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:367 streamutil.c:441 -#: streamutil.c:493 streamutil.c:581 streamutil.c:733 streamutil.c:778 +#: 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 "COPY 종료 정보를 보낼 수 없음: %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 " @@ -1067,129 +1077,124 @@ 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 "" "표준 출력으로는 하나의 테이블스페이스만 쓸 수 있음, 데이터베이스는 %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:92 streamutil.c:207 streamutil.c:319 -#, 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\"" @@ -1197,124 +1202,125 @@ msgstr "" "\"%s\" 값은 잘못된 wal-method 옵션값, \"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: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_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:2235 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 "트랜잭션 로그 디렉터리 위치는 백업 타켓과 함께 지정할 수 없음" -#: pg_basebackup.c:2762 +#: pg_basebackup.c:2763 #, c-format msgid "WAL directory location can only be specified in plain mode" msgstr "트랜잭션 로그 디렉터리 위치는 plain 모드에서만 사용할 수 있음" -#: pg_basebackup.c:2771 +#: pg_basebackup.c:2772 #, c-format msgid "WAL directory location must be an absolute path" msgstr "트랜잭션 로그 디렉터리 위치는 절대 경로여야 함" -#: 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 " @@ -1323,30 +1329,30 @@ 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:1314 #, 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" @@ -1355,7 +1361,7 @@ 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" @@ -1364,39 +1370,51 @@ 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 " @@ -1405,22 +1423,42 @@ msgstr "" " -s, --socketdir=DIR 사용할 소켓 디렉터리 (초기값 current " "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 모든 구독을 위해 two-phase commit 활성화\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" @@ -1429,197 +1467,197 @@ 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 "발행에서 system identifier 가져오는 중" -#: pg_createsubscriber.c:573 +#: pg_createsubscriber.c:604 #, c-format msgid "could not get system identifier: %s" msgstr "system identifier 가져오기 실패: %s" -#: pg_createsubscriber.c:579 +#: pg_createsubscriber.c:610 #, c-format msgid "could not get system identifier: got %d rows, expected %d row" msgstr "system identifier 가져오기 실패: 취득=%d개 로우, 예상=%d개 로우" -#: pg_createsubscriber.c:586 +#: pg_createsubscriber.c:617 #, c-format -msgid "system identifier is %llu on publisher" -msgstr "발행 서버의 system identifier: %llu" +msgid "system identifier is % on publisher" +msgstr "발행 서버의 system identifier: %" -#: pg_createsubscriber.c:607 +#: pg_createsubscriber.c:637 #, c-format msgid "getting system identifier from subscriber" msgstr "구독에서 system identifier 가져오는 중" -#: 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:685 #, c-format -msgid "system identifier is %llu on subscriber" -msgstr "구독 서버의 system identifier: %llu" +msgid "system identifier is % on subscriber" +msgstr "구독 서버의 system identifier: %" -#: pg_createsubscriber.c:637 +#: pg_createsubscriber.c:666 #, c-format msgid "modifying system identifier of subscriber" msgstr "구독 서버의 system identifier 바꾸는 중" -#: pg_createsubscriber.c:659 +#: pg_createsubscriber.c:688 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "구독 서버에서 pg_resetwal 실행 중" -#: pg_createsubscriber.c:671 +#: pg_createsubscriber.c:700 #, c-format msgid "subscriber successfully changed the system identifier" msgstr "구독 서버의 system identifier 바꾸기 끝" -#: pg_createsubscriber.c:673 +#: pg_createsubscriber.c:702 #, c-format msgid "could not change system identifier of subscriber: %s" msgstr "구독 서버의 system identifier 바꾸기 실패: %s" -#: pg_createsubscriber.c:697 +#: pg_createsubscriber.c:726 #, c-format msgid "could not obtain database OID: %s" msgstr "베이스베이스 OID 확인 불가: %s" -#: pg_createsubscriber.c:704 +#: pg_createsubscriber.c:733 #, 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:805 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "발행 서버에서 \"%s\" 이름의 복제 슬롯을 만듦" -#: pg_createsubscriber.c:796 +#: pg_createsubscriber.c:825 #, c-format msgid "could not write an additional WAL record: %s" msgstr "추가 WAL 레코드를 쓸 수 없음: %s" -#: pg_createsubscriber.c:822 +#: pg_createsubscriber.c:851 #, c-format msgid "could not obtain recovery progress: %s" msgstr "복구 작업 과정 확인 불가: %s" -#: pg_createsubscriber.c:854 +#: pg_createsubscriber.c:884 #, c-format msgid "checking settings on publisher" msgstr "발행 서버 설정 검사 중" -#: pg_createsubscriber.c:864 +#: pg_createsubscriber.c:894 #, c-format msgid "primary server cannot be in recovery" msgstr "주 서버는 복구 작업을 할 수 없음" -#: pg_createsubscriber.c:888 +#: pg_createsubscriber.c:920 #, c-format msgid "could not obtain publisher settings: %s" msgstr "발행 서버 설정 확인 불가: %s" -#: pg_createsubscriber.c:914 +#: pg_createsubscriber.c:949 #, 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:955 #, 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:957 pg_createsubscriber.c:966 +#: pg_createsubscriber.c:1076 pg_createsubscriber.c:1085 +#: pg_createsubscriber.c:1094 #, c-format msgid "Increase the configuration parameter \"%s\" to at least %d." msgstr "\"%s\" 환경설정 매개변수 값을 %d 이상으로 늘려주세요." -#: pg_createsubscriber.c:929 +#: pg_createsubscriber.c:964 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "발행서버는 %d개의 WAL 발송 프로세스가 필요하지만, %d개만 남았음" -#: pg_createsubscriber.c:938 +#: pg_createsubscriber.c:973 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "two_phase 옵션은 복제 슬롯을 위해 비활성화 될 예정" -#: pg_createsubscriber.c:939 +#: pg_createsubscriber.c:974 #, c-format msgid "" "Subscriptions will be created with the two_phase option disabled. Prepared " @@ -1628,62 +1666,84 @@ msgstr "" "구독은 two_phase 옵션이 비활성 되어 만들어집니다. 미리 준비된 트랜잭션은 " "COMMIT PREPARED 때 복제될 것입니다." -#: pg_createsubscriber.c:971 +#: pg_createsubscriber.c:976 +#, 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 +#, c-format +msgid "required WAL could be removed from the publisher" +msgstr "필요한 WAL 파일이 발행 서버에서 지워질 수 있음" + +#: pg_createsubscriber.c:987 +#, c-format +msgid "" +"Set the configuration parameter \"%s\" to -1 to ensure that required WAL " +"files are not prematurely removed." +msgstr "" +"필요한 WAL 파일이 지워지지 않도록 하려면, \"%s\" 환경 설정 매개 변수 값을 -1" +"로 지정하세요." + +#: pg_createsubscriber.c:1019 #, c-format msgid "checking settings on subscriber" msgstr "구독 서버 설정 검사 중" -#: pg_createsubscriber.c:978 +#: pg_createsubscriber.c:1026 #, c-format msgid "target server must be a standby" msgstr "대상 서버는 대기 서버여야 함" -#: pg_createsubscriber.c:1002 +#: pg_createsubscriber.c:1050 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "구독 서버 설정 확인 불가: %s" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1074 #, 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:1083 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "구독 서버는 %d개의 논리 복제 작업자가 필요하지만, %d개만 남았음" -#: pg_createsubscriber.c:1044 +#: pg_createsubscriber.c:1092 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "구독 서버는 %d개의 작업자가 필요하지만, %d개만 남았음" -#: pg_createsubscriber.c:1079 +#: pg_createsubscriber.c:1127 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "\"%s\" 이름의 구독을 \"%s\" 데이터베이스에서 삭제 중" -#: pg_createsubscriber.c:1088 +#: pg_createsubscriber.c:1136 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "\"%s\" 구독 삭제 실패: %s" -#: pg_createsubscriber.c:1123 +#: pg_createsubscriber.c:1171 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "이미 있는 구독 정보를 알 수 없음: %s" -#: pg_createsubscriber.c:1258 +#: pg_createsubscriber.c:1312 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "주 서버의 \"%s\" 복제 슬롯을 삭제 수 없음" -#: pg_createsubscriber.c:1292 +#: pg_createsubscriber.c:1346 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "failover 복제 슬롯 정보를 찾을 수 없음: %s" -#: pg_createsubscriber.c:1294 pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1348 pg_createsubscriber.c:1357 #, c-format msgid "" "Drop the failover replication slots on subscriber soon to avoid retention of " @@ -1692,93 +1752,93 @@ msgstr "" "WAL 파일이 비정상적으로 증가는 문제를 막기 위해, 구독 서버에서 failover 복제 " "슬롯을 바로 지우세요." -#: pg_createsubscriber.c:1302 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not drop failover replication slot" msgstr "failover 복제 슬롯을 삭제할 수 없음" -#: pg_createsubscriber.c:1324 +#: pg_createsubscriber.c:1378 #, c-format msgid "creating the replication slot \"%s\" in database \"%s\"" msgstr "\"%s\" 이름의 복제 슬롯을 \"%s\" 데이터베이스에 만드는 중" -#: pg_createsubscriber.c:1342 +#: pg_createsubscriber.c:1397 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "\"%s\" 이름의 복제 슬롯을 \"%s\" 데이터베이스에 만들기 실패: %s" -#: pg_createsubscriber.c:1372 +#: pg_createsubscriber.c:1427 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "\"%s\" 이름의 복제 슬롯을 \"%s\" 데이터베이스에서 삭제 중" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1443 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "\"%s\" 이름의 복제 슬롯을 \"%s\" 데이터베이스에서 삭제 실패: %s" -#: pg_createsubscriber.c:1409 +#: pg_createsubscriber.c:1464 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl 작업 실패: 오류 코드 %d" -#: pg_createsubscriber.c:1414 +#: pg_createsubscriber.c:1469 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl 종료됨: 예외 처리 0x%X" -#: pg_createsubscriber.c:1416 +#: pg_createsubscriber.c:1471 #, c-format msgid "" "See C include file \"ntstatus.h\" for a description of the hexadecimal value." msgstr "윗 16진수 값은 \"ntstatus.h\" 파일을 참조하세요." -#: pg_createsubscriber.c:1418 +#: pg_createsubscriber.c:1473 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl 종료됨: 수신 시그널=%d: %s" -#: pg_createsubscriber.c:1424 +#: pg_createsubscriber.c:1479 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl 종료됨: 알 수 없은 상태 %d" -#: pg_createsubscriber.c:1427 +#: pg_createsubscriber.c:1482 #, c-format msgid "The failed command was: %s" msgstr "실패한 명령: %s" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1532 #, c-format msgid "server was started" msgstr "서버 시작됨" -#: pg_createsubscriber.c:1488 +#: pg_createsubscriber.c:1547 #, c-format msgid "server was stopped" msgstr "서버 멈춤" -#: pg_createsubscriber.c:1507 +#: pg_createsubscriber.c:1566 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "일관성 맞추기 위해 대상 서버 기다리는 중" -#: pg_createsubscriber.c:1530 +#: pg_createsubscriber.c:1589 #, c-format msgid "recovery timed out" msgstr "복구 시간 초과" -#: pg_createsubscriber.c:1543 +#: pg_createsubscriber.c:1602 #, c-format msgid "server did not end recovery" msgstr "서버 복구 실패" -#: pg_createsubscriber.c:1545 +#: pg_createsubscriber.c:1604 #, c-format msgid "target server reached the consistent state" msgstr "대상 서버 일관성 맞추기 완료" -#: pg_createsubscriber.c:1546 +#: pg_createsubscriber.c:1605 #, c-format msgid "" "If pg_createsubscriber fails after this point, you must recreate the " @@ -1787,183 +1847,203 @@ msgstr "" "이 시점에서 pg_createsubscriber 작업을 실패하면, 물리 복제 대기 서버는 다시 " "만들어야 합니다." -#: pg_createsubscriber.c:1573 +#: pg_createsubscriber.c:1632 pg_createsubscriber.c:1755 #, c-format msgid "could not obtain publication information: %s" msgstr "발행 정보를 찾을 수 없음: %s" -#: pg_createsubscriber.c:1587 +#: pg_createsubscriber.c:1646 #, c-format msgid "publication \"%s\" already exists" msgstr "\"%s\" 이름의 발행이 이미 있음" -#: pg_createsubscriber.c:1588 +#: pg_createsubscriber.c:1647 #, c-format msgid "Consider renaming this publication before continuing." msgstr "계속 진행을 위해서는 이 발행 이름을 바꿔보세요." -#: pg_createsubscriber.c:1595 +#: pg_createsubscriber.c:1654 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "\"%s\" 이름의 발행을 \"%s\" 데이터베이스에 만드는 중" -#: pg_createsubscriber.c:1608 +#: pg_createsubscriber.c:1667 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "\"%s\" 이름의 발행을 \"%s\" 데이터베이스에 만들 수 없음: %s" -#: pg_createsubscriber.c:1637 +#: pg_createsubscriber.c:1697 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "\"%s\" 이름의 발행을 \"%s\" 데이터베이스에서 삭제 중" -#: pg_createsubscriber.c:1651 +#: pg_createsubscriber.c:1711 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "\"%s\" 이름의 발행을 \"%s\" 데이터베이스에 지울 수 없음: %s" -#: pg_createsubscriber.c:1697 +#: pg_createsubscriber.c:1748 +#, c-format +msgid "dropping all existing publications in database \"%s\"" +msgstr "\"%s\" 데이터베이스에서 모든 발행을 삭제 중" + +#: pg_createsubscriber.c:1806 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "\"%s\" 이름의 구독을 \"%s\" 데이터베이스에 만드는 중" -#: pg_createsubscriber.c:1718 +#: pg_createsubscriber.c:1828 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "\"%s\" 이름의 구독을 \"%s\" 데이터베이스에 만들 수 없음: %s" -#: pg_createsubscriber.c:1763 +#: pg_createsubscriber.c:1873 #, c-format msgid "could not obtain subscription OID: %s" msgstr "구독 OID 찾지 못함: %s" -#: pg_createsubscriber.c:1770 +#: pg_createsubscriber.c:1880 #, 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:1904 #, c-format msgid "" -"setting the replication progress (node name \"%s\", LSN %s) in database " -"\"%s\"" +"setting the replication progress (node name \"%s\", LSN %s) in database \"%s" +"\"" msgstr "복제 설정 중(노드이름 \"%s\", LSN %s, 데이터베이스 \"%s\")" -#: pg_createsubscriber.c:1809 +#: pg_createsubscriber.c:1919 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "\"%s\" 구독을 위한 복제 설정 실패: %s" -#: pg_createsubscriber.c:1840 +#: pg_createsubscriber.c:1950 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "\"%s\" 구독을 \"%s\" 데이터베이스에서 활성화 시도 중" -#: pg_createsubscriber.c:1852 +#: pg_createsubscriber.c:1962 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "\"%s\" 구독을 활성화 할 수 없음: %s" -#: pg_createsubscriber.c:1944 +#: pg_createsubscriber.c:2008 +#, c-format +msgid "could not obtain a list of databases: %s" +msgstr "데이터베이스 목록을 구할 수 없음: %s" + +#: pg_createsubscriber.c:2112 #, c-format msgid "cannot be executed by \"root\"" msgstr "\"root\" 권한으로 실행할 수 없음" -#: pg_createsubscriber.c:1945 +#: pg_createsubscriber.c:2113 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "PostgreSQL 슈퍼유저 계정으로 %s 프로그램을 실행하세요." -#: pg_createsubscriber.c:1966 +#: pg_createsubscriber.c:2136 +#, c-format +msgid "database \"%s\" specified more than once for -d/--database" +msgstr "\"%s\" 데이터베이스가 -d/--database 옵션으로 중복 지정 되었음" + +#: pg_createsubscriber.c:2177 #, 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:2186 #, 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:2195 #, 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:2201 #, 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:2226 +#, c-format +msgid "options %s and -a/--all cannot be used together" +msgstr "%s 옵션과 -a/--all 옵션은 함께 사용할 수 없음" + +#: pg_createsubscriber.c:2244 #, c-format msgid "no subscriber data directory specified" msgstr "구독 서버용 데이터 디렉터리를 지정하지 않았음" -#: pg_createsubscriber.c:2065 +#: pg_createsubscriber.c:2255 #, c-format msgid "could not determine current directory" msgstr "현재 디렉터리를 확인할 수 없음" -#: pg_createsubscriber.c:2082 +#: pg_createsubscriber.c:2272 #, c-format msgid "no publisher connection string specified" msgstr "발행 서버 연결 문자열을 지정하지 않았음" -#: pg_createsubscriber.c:2086 +#: pg_createsubscriber.c:2276 #, c-format msgid "validating publisher connection string" msgstr "발행 서버 연결 문자열 검사 중" -#: pg_createsubscriber.c:2092 +#: pg_createsubscriber.c:2282 #, c-format msgid "validating subscriber connection string" msgstr "구독 서버 연결 문자열 검사 중" -#: pg_createsubscriber.c:2097 +#: pg_createsubscriber.c:2299 #, c-format msgid "no database was specified" msgstr "데이터베이스를 지정하지 않았음" -#: pg_createsubscriber.c:2109 +#: pg_createsubscriber.c:2310 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "발행 서버 연결 문자열에서 데이터베이스 이름 확인: \"%s\"" -#: pg_createsubscriber.c:2114 +#: pg_createsubscriber.c:2315 #, c-format msgid "no database name specified" msgstr "데이터베이스 이름을 지정하지 않았음" -#: pg_createsubscriber.c:2124 +#: pg_createsubscriber.c:2325 #, c-format msgid "wrong number of publication names specified" msgstr "발행 이름들의 개수가 잘못됨" -#: pg_createsubscriber.c:2125 +#: pg_createsubscriber.c:2326 #, 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:2332 #, c-format msgid "wrong number of subscription names specified" msgstr "구독 이름들의 개수가 잘못됨" -#: pg_createsubscriber.c:2132 +#: pg_createsubscriber.c:2333 #, 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:2339 #, c-format msgid "wrong number of replication slot names specified" msgstr "복제 슬롯 이름들의 개수가 잘못됨" -#: pg_createsubscriber.c:2139 +#: pg_createsubscriber.c:2340 #, c-format msgid "" "The number of specified replication slot names (%d) must match the number of " @@ -1971,37 +2051,47 @@ msgid "" msgstr "" "지정한 복제 슬롯 이름의 수(%d)와 데이터베이스 이름의 수(%d)가 같지 않음" -#: pg_createsubscriber.c:2168 +#: pg_createsubscriber.c:2352 +#, c-format +msgid "invalid object type \"%s\" specified for --clean" +msgstr "--clean 옵션에 지정한 \"%s\" 객체 타입이 잘못되었음" + +#: pg_createsubscriber.c:2353 +#, c-format +msgid "The valid value is: \"%s\"" +msgstr "잘못된 값: \"%s\"" + +#: pg_createsubscriber.c:2384 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "구독 서버의 데이터 디렉터리는 원본 데이터베이스 클러스터의 것이 아님" -#: pg_createsubscriber.c:2181 +#: pg_createsubscriber.c:2397 #, c-format msgid "standby server is running" msgstr "대기 서버가 실행 중입니다." -#: pg_createsubscriber.c:2182 +#: pg_createsubscriber.c:2398 #, c-format msgid "Stop the standby server and try again." msgstr "대기 서버를 중지 하고, 다시 하세요." -#: pg_createsubscriber.c:2191 +#: pg_createsubscriber.c:2407 #, c-format msgid "starting the standby server with command-line options" msgstr "명령행 옵션을 포함해서 대기 서버를 시작 중" -#: pg_createsubscriber.c:2207 pg_createsubscriber.c:2242 +#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 #, c-format msgid "stopping the subscriber" msgstr "구독 서버 중지 중" -#: pg_createsubscriber.c:2221 +#: pg_createsubscriber.c:2437 #, c-format msgid "starting the subscriber" msgstr "구독 서버 실행 중" -#: pg_createsubscriber.c:2250 +#: pg_createsubscriber.c:2466 #, c-format msgid "Done!" msgstr "완료!" @@ -2022,12 +2112,12 @@ msgid "" 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 " @@ -2035,7 +2125,7 @@ msgid "" 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" @@ -2047,7 +2137,7 @@ msgid "" "disk\n" msgstr " --no-sync 디스크 쓰기 뒤 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" @@ -2082,7 +2172,7 @@ 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 " @@ -2091,7 +2181,7 @@ 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 " @@ -2114,7 +2204,7 @@ msgstr "로그 스트리밍 중지된 위치: %X/%X (타임라인 %u)" 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 "인터럽터 시그널을 받음, 종료함" @@ -2187,7 +2277,7 @@ msgstr "\"%s\" 파일 검사 실패: %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\"" @@ -2218,28 +2308,28 @@ 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" @@ -2248,7 +2338,7 @@ msgstr "" "%s 프로그램은 논리 디코딩 스트림을 제어하는 도구입니다.\n" "\n" -#: pg_recvlogical.c:88 +#: pg_recvlogical.c:87 #, c-format msgid "" "\n" @@ -2257,7 +2347,7 @@ msgstr "" "\n" "성능에 관계된 기능들:\n" -#: pg_recvlogical.c:91 +#: pg_recvlogical.c:90 #, c-format msgid "" " --start start streaming in a replication slot (for the " @@ -2266,12 +2356,22 @@ 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" + +#: pg_recvlogical.c:95 #, c-format msgid " -f, --file=FILE receive log into this file, - for stdout\n" msgstr " -f, --file=파일 작업 로그를 해당 파일에 기록, 표준 출력은 -\n" -#: pg_recvlogical.c:95 +#: pg_recvlogical.c:96 #, c-format msgid "" " -F --fsync-interval=SECS\n" @@ -2282,14 +2382,14 @@ msgstr "" " 지정한 초 간격으로 파일 fsync 작업을 함 (초기값: " "%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" @@ -2300,215 +2400,221 @@ msgstr "" " 출력 플러그인에서 사용할 옵션들의 옵션 이름과 그 " "값\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 사용할 출력 플러그인 (초기값: %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=슬롯이름 논리 복제 슬롯 이름\n" -#: pg_recvlogical.c:107 +#: pg_recvlogical.c:108 #, c-format msgid "" -" -t, --two-phase enable decoding of prepared transactions when " +" -t, --enable-two-phase enable decoding of prepared transactions when " "creating a slot\n" msgstr "" -" -t, --two-phase 슬롯을 만들 때 미리 준비된 트랜잭션 디코딩 활성화\n" +" -t, --enable-two-phase 슬롯을 만들 때 미리 준비된 트랜잭션 디코딩을 활성화 " +"함\n" -#: pg_recvlogical.c:112 +#: pg_recvlogical.c:109 +#, c-format +msgid " --two-phase (same as --enable-two-phase, deprecated)\n" +msgstr " --two-phase (--enable-two-phase 와 같음, 미지원예정)\n" + +#: pg_recvlogical.c:114 #, c-format msgid " -d, --dbname=DBNAME database to connect to\n" msgstr " -d, --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 "keepalive에 의해서 %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\" archive status 파일을 만들 수 없습니다: %s" -#: receivelog.c:73 +#: receivelog.c:72 #, c-format msgid "could not close archive status file \"%s\": %s" msgstr "\"%s\" archive status 파일을 닫을 수 없습니다: %s" -#: receivelog.c:122 +#: receivelog.c:121 #, c-format msgid "could not get size of write-ahead log file \"%s\": %s" msgstr "\"%s\" WAL 파일 크기를 알 수 없음: %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 "이미 있는 \"%s\" WAL 파일 fsync 실패: %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" msgstr[0] "" "\"%s\" 트랜잭션 로그파일의 크기가 %zd 바이트임, 0 또는 %d 바이트여야 함" -#: receivelog.c:175 +#: receivelog.c:174 #, c-format msgid "could not open write-ahead log file \"%s\": %s" msgstr "\"%s\" WAL 파일을 열 수 없음: %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 " @@ -2517,7 +2623,7 @@ msgstr "" "%s 서버 버전은 호환되지 않음; 클라이언트는 %s 버전 보다 오래된 서버의 스트리" "밍은 지원하지 않음" -#: receivelog.c:403 +#: receivelog.c:402 #, c-format msgid "" "incompatible server version %s; client does not support streaming from " @@ -2526,18 +2632,18 @@ 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, " @@ -2546,12 +2652,12 @@ 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 " @@ -2560,12 +2666,12 @@ 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, " @@ -2574,61 +2680,56 @@ 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 "\"%s\" 파일 fsync 실패: %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 바이트를 \"%s\" WAL 파일에 쓸 수 없음: %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" -#: streamutil.c:165 +#: streamutil.c:162 msgid "Password: " msgstr "암호: " -#: streamutil.c:192 +#: streamutil.c:189 #, c-format msgid "could not connect to server" msgstr "서버 접속 실패" -#: streamutil.c:233 -#, c-format -msgid "could not clear \"search_path\": %s" -msgstr "\"search_path\"를 지울 수 없음: %s" - -#: streamutil.c:249 +#: streamutil.c:246 #, c-format msgid "could not determine server setting for \"integer_datetimes\"" msgstr "\"integer_datetimes\" 서버 설정을 알 수 없음" -#: streamutil.c:256 +#: streamutil.c:253 #, c-format msgid "\"integer_datetimes\" compile flag does not match server" msgstr "\"integer_datetimes\" 컴파일 플래그가 서버와 일치하지 않음" -#: streamutil.c:375 +#: streamutil.c:304 #, c-format msgid "" "could not fetch WAL segment size: got %d rows and %d fields, expected %d " @@ -2637,23 +2738,23 @@ msgstr "" "WAL 조각 크기 계산 실패: 로우수 %d, 필드수 %d, 예상값: 로우수 %d, 필드수 %d " "이상" -#: streamutil.c:385 +#: streamutil.c:314 #, c-format msgid "WAL segment size could not be parsed" msgstr "WAL 조각 크기 분석 못함" -#: streamutil.c:403 +#: 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)" msgstr[0] "원격 서버가 잘못 WAL 조각 크기를 보고했음 (%d 바이트)" -#: streamutil.c:407 +#: streamutil.c:336 #, c-format msgid "The WAL segment size must be a power of two between 1 MB and 1 GB." msgstr "WAL 조각 파일 크기는 1MB에서 1GB사이 2의 제곱 크기여야 합니다." -#: streamutil.c:449 +#: streamutil.c:378 #, c-format msgid "" "could not fetch group access flag: got %d rows and %d fields, expected %d " @@ -2662,12 +2763,12 @@ msgstr "" "그룹 접근 플래그를 가져올 수 없음: 로우수 %d, 필드수 %d, 예상값: 로우수 %d, " "필드수 %d 이상" -#: streamutil.c:458 +#: streamutil.c:387 #, c-format msgid "group access flag could not be parsed: %s" msgstr "그룹 접근 플래그를 분석 못함: %s" -#: streamutil.c:501 streamutil.c:538 +#: streamutil.c:430 streamutil.c:467 #, c-format msgid "" "could not identify system: got %d rows and %d fields, expected %d rows and " @@ -2676,7 +2777,7 @@ msgstr "" "시스템을 식별할 수 없음: 로우수 %d, 필드수 %d, 예상값: 로우수 %d, 필드수 %d " "이상" -#: streamutil.c:590 +#: streamutil.c:519 #, c-format msgid "" "could not read replication slot \"%s\": got %d rows and %d fields, expected " @@ -2685,22 +2786,22 @@ msgstr "" "\"%s\" 복제 슬롯을 읽을 수 없음: 로우수 %d, 필드수 %d, 기대값 로우수 %d, 필드" "수 %d" -#: streamutil.c:602 +#: streamutil.c:531 #, c-format msgid "replication slot \"%s\" does not exist" msgstr "\"%s\" 이름의 복제 슬롯이 없습니다" -#: streamutil.c:613 +#: streamutil.c:542 #, c-format msgid "expected a physical replication slot, got type \"%s\" instead" msgstr "물리 복제 슬롯을 사용해야 함, \"%s\" 복제 슬롯임" -#: streamutil.c:627 +#: streamutil.c:556 #, c-format msgid "could not parse restart_lsn \"%s\" for replication slot \"%s\"" msgstr "\"%s\" restart_lsn 위치를 해석할 수 없음, 해당 슬롯: \"%s\"" -#: streamutil.c:744 +#: streamutil.c:678 #, c-format msgid "" "could not create replication slot \"%s\": got %d rows and %d fields, " @@ -2709,7 +2810,7 @@ msgstr "" "\"%s\" 복제 슬롯을 만들 수 없음: 로우수 %d, 필드수 %d, 기대값 로우수 %d, 필드" "수 %d" -#: streamutil.c:788 +#: streamutil.c:722 #, c-format msgid "" "could not drop replication slot \"%s\": got %d rows and %d fields, expected " @@ -2745,3 +2846,6 @@ msgstr "압축 상태에서 파일 삭제는 지원하지 않음" #: walmethods.c:1293 msgid "could not close compression stream" msgstr "압축 스트림을 닫을 수 없음" + +#~ msgid "could not clear search_path: %s" +#~ msgstr "search_path를 지울 수 없음: %s" diff --git a/src/bin/pg_basebackup/po/ru.po b/src/bin/pg_basebackup/po/ru.po index 115d26a9111f0..0eafdec2b84ac 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. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 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-08-30 15:59+0300\n" -"PO-Revision-Date: 2024-09-07 11:12+0300\n" +"PO-Revision-Date: 2025-09-13 18:09+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -1422,6 +1422,9 @@ msgid "" " databases and databases that don't allow " "connections\n" msgstr "" +" -a, --all создать подписки для всех баз данных, " +"кроме шаблонов\n" +" и баз данных, не допускающих подключения\n" #: pg_createsubscriber.c:251 #, c-format @@ -1474,12 +1477,13 @@ msgstr "" " -t, --recovery-timeout=СЕК время ожидания окончания восстановления\n" #: pg_createsubscriber.c:258 -#, fuzzy, c-format +#, c-format msgid "" " -T, --enable-two-phase enable two-phase commit for all " "subscriptions\n" msgstr "" -" -d, --database=ИМЯ_БД база, в которой будет создана подписка\n" +" -T, --enable-two-phase включить двухфазную фиксацию для всех " +"подписок\n" #: pg_createsubscriber.c:259 #, c-format @@ -1501,6 +1505,9 @@ msgid "" " databases on the subscriber; accepts: " "\"%s\"\n" msgstr "" +" --clean=ТИП_ОБЪЕКТОВ удалить все объекты указанного типа из " +"указанных\n" +" баз на подписчике; принимает: \"%s\"\n" #: pg_createsubscriber.c:263 #, c-format @@ -1599,9 +1606,9 @@ msgstr "" "не удалось получить идентификатор системы; получено строк: %d, ожидалось: %d" #: pg_createsubscriber.c:617 -#, fuzzy, c-format +#, c-format msgid "system identifier is % on publisher" -msgstr "идентификатор системы на стороне публикации: %llu" +msgstr "идентификатор системы на стороне публикации: %" #: pg_createsubscriber.c:637 #, c-format @@ -1614,9 +1621,9 @@ msgid "control file appears to be corrupt" msgstr "управляющий файл, по-видимому, испорчен" #: pg_createsubscriber.c:645 pg_createsubscriber.c:685 -#, fuzzy, c-format +#, c-format msgid "system identifier is % on subscriber" -msgstr "идентификатор системы на подписчике: %llu" +msgstr "идентификатор системы на подписчике: %" #: pg_createsubscriber.c:666 #, c-format @@ -1679,9 +1686,9 @@ msgid "could not obtain publisher settings: %s" msgstr "не удалось получить параметры с сервера публикации: %s" #: pg_createsubscriber.c:949 -#, fuzzy, c-format +#, c-format msgid "publisher requires \"wal_level\" >= \"logical\"" -msgstr "на стороне публикации требуется значение wal_level >= \"logical\"" +msgstr "на стороне публикации требуется значение \"wal_level\" >= \"logical\"" #: pg_createsubscriber.c:955 #, c-format @@ -1722,11 +1729,13 @@ msgstr "" 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 #, c-format msgid "required WAL could be removed from the publisher" -msgstr "" +msgstr "нужные файлы WAL могли быть удалены с сервера публикации" #: pg_createsubscriber.c:987 #, c-format @@ -1734,6 +1743,8 @@ msgid "" "Set the configuration parameter \"%s\" to -1 to ensure that required WAL " "files are not prematurely removed." msgstr "" +"Чтобы необходимые файлы WAL не были удалены преждевременно, присвойте " +"параметру конфигурации \"%s\" -1." #: pg_createsubscriber.c:1019 #, c-format @@ -1751,9 +1762,10 @@ msgid "could not obtain subscriber settings: %s" msgstr "получить параметры подписчика не удалось: %s" #: pg_createsubscriber.c:1074 -#, fuzzy, c-format +#, c-format msgid "subscriber requires %d active replication origins, but only %d remain" -msgstr "подписчику требуется слотов репликации: %d, но доступно всего %d" +msgstr "" +"подписчику требуется активных слотов репликации: %d, но доступно всего %d" #: pg_createsubscriber.c:1083 #, c-format @@ -1934,9 +1946,9 @@ msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "удалить публикацию \"%s\" в базе \"%s\" не получилось: %s" #: pg_createsubscriber.c:1748 -#, fuzzy, c-format +#, c-format msgid "dropping all existing publications in database \"%s\"" -msgstr "удаляется публикация \"%s\" в базе \"%s\"" +msgstr "удаление всех существующих публикаций в базе \"%s\"" #: pg_createsubscriber.c:1806 #, c-format @@ -1981,9 +1993,9 @@ msgid "could not enable subscription \"%s\": %s" msgstr "включить подписку \"%s\" не удалось: %s" #: pg_createsubscriber.c:2008 -#, fuzzy, c-format +#, c-format msgid "could not obtain a list of databases: %s" -msgstr "получить OID базы данных не удалось: %s" +msgstr "не удалось получить список баз данных: %s" #: pg_createsubscriber.c:2112 #, c-format @@ -1996,34 +2008,34 @@ msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускать %s нужно от имени суперпользователя PostgreSQL." #: pg_createsubscriber.c:2136 -#, fuzzy, c-format +#, c-format msgid "database \"%s\" specified more than once for -d/--database" -msgstr "база \"%s\" указана неоднократно" +msgstr "база \"%s\" указана в -d/--database неоднократно" #: pg_createsubscriber.c:2177 -#, fuzzy, c-format +#, c-format msgid "publication \"%s\" specified more than once for --publication" -msgstr "публикация \"%s\" указана неоднократно" +msgstr "публикация \"%s\" указана в --publication неоднократно" #: pg_createsubscriber.c:2186 -#, fuzzy, c-format +#, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" -msgstr "слот репликации \"%s\" указан неоднократно" +msgstr "слот репликации \"%s\" указан в --replication-slot неоднократно" #: pg_createsubscriber.c:2195 -#, fuzzy, c-format +#, c-format msgid "subscription \"%s\" specified more than once for --subscription" -msgstr "подписка \"%s\" указана неоднократно" +msgstr "подписка \"%s\" указана в --subscription неоднократно" #: pg_createsubscriber.c:2201 -#, fuzzy, c-format +#, c-format msgid "object type \"%s\" specified more than once for --clean" -msgstr "слот репликации \"%s\" указан неоднократно" +msgstr "тип объекта \"%s\" указан в --clean неоднократно" #: pg_createsubscriber.c:2226 #, c-format msgid "options %s and -a/--all cannot be used together" -msgstr "" +msgstr "параметры %s и -a/--all исключают друг друга" #: pg_createsubscriber.c:2244 #, c-format @@ -2110,12 +2122,12 @@ msgstr "" #: pg_createsubscriber.c:2352 #, c-format msgid "invalid object type \"%s\" specified for --clean" -msgstr "" +msgstr "в --clean указан неправильный тип объекта \"%s\"" #: pg_createsubscriber.c:2353 -#, fuzzy, c-format +#, c-format msgid "The valid value is: \"%s\"" -msgstr "неверная единица измерения в --max-rate: \"%s\"" +msgstr "Допустимое значение: \"%s\"" #: pg_createsubscriber.c:2384 #, c-format @@ -2436,6 +2448,9 @@ msgid "" "servers when\n" " creating a replication slot\n" msgstr "" +" --enable-failover включает синхронизацию слота репликации с ведомыми " +"серверами при\n" +" создании слота\n" #: pg_recvlogical.c:95 #, c-format @@ -2488,18 +2503,18 @@ msgid " -S, --slot=SLOTNAME name of the logical replication slot\n" msgstr " -S, --slot=ИМЯ_СЛОТА имя слота логической репликации\n" #: pg_recvlogical.c:108 -#, fuzzy, c-format +#, c-format msgid "" " -t, --enable-two-phase enable decoding of prepared transactions when " "creating a slot\n" msgstr "" -" -t, --two-phase включить декодирование подготовленных транзакций " +" -t, --enable-two-phase включает декодирование подготовленных транзакций " "при создании слота\n" #: pg_recvlogical.c:109 #, c-format msgid " --two-phase (same as --enable-two-phase, deprecated)\n" -msgstr "" +msgstr " --two-phase (то же, что --enable-two-phase, устаревший)\n" #: pg_recvlogical.c:114 #, c-format @@ -2608,9 +2623,9 @@ msgid "--endpos may only be specified with --start" msgstr "--endpos можно задать только вместе с --start" #: pg_recvlogical.c:933 pg_recvlogical.c:940 -#, fuzzy, c-format +#, c-format msgid "%s may only be specified with --create-slot" -msgstr "--two-phase можно задать только вместе с --create-slot" +msgstr "%s можно задать только вместе с --create-slot" #: pg_recvlogical.c:977 #, c-format diff --git a/src/bin/pg_basebackup/po/sv.po b/src/bin/pg_basebackup/po/sv.po index 760d183956cce..1dbd1a951eef5 100644 --- a/src/bin/pg_basebackup/po/sv.po +++ b/src/bin/pg_basebackup/po/sv.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 17\n" +"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-08-15 22:47+0200\n" +"PO-Revision-Date: 2025-09-07 15:44+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" diff --git a/src/bin/pg_checksums/po/es.po b/src/bin/pg_checksums/po/es.po index 4a45c85987bbe..ce774256a935f 100644 --- a/src/bin/pg_checksums/po/es.po +++ b/src/bin/pg_checksums/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_checksums (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:53+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:53+0000\n" +"PO-Revision-Date: 2025-09-21 11:25+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: pgsql-es-ayuda \n" "Language: es\n" @@ -20,22 +20,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.4.2\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -78,9 +78,9 @@ msgstr "" "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n" "directorio de datos." -#: ../../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 "no se pudo abrir el archivo «%s»: %m" @@ -90,8 +90,8 @@ msgstr "no se pudo abrir el archivo «%s»: %m" msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" @@ -107,35 +107,35 @@ 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:76 +#: ../../common/file_utils.c:75 #, 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" -#: ../../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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -155,7 +155,7 @@ msgstr "%s debe estar en el rango %d..%d" msgid "unrecognized sync method: %s" msgstr "método sync no reconocido: %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" @@ -165,17 +165,17 @@ msgstr "" "clúster PostgreSQL.\n" "\n" -#: pg_checksums.c:71 +#: pg_checksums.c:70 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_checksums.c:72 +#: pg_checksums.c:71 #, c-format msgid " %s [OPTION]... [DATADIR]\n" msgstr " %s [OPCIÓN]... [DATADIR]\n" -#: pg_checksums.c:73 +#: pg_checksums.c:72 #, c-format msgid "" "\n" @@ -184,62 +184,62 @@ msgstr "" "\n" "Opciones:\n" -#: pg_checksums.c:74 +#: pg_checksums.c:73 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR directorio de datos\n" -#: pg_checksums.c:75 +#: pg_checksums.c:74 #, c-format msgid " -c, --check check data checksums (default)\n" msgstr " -c, --check verificar checksums (por omisión)\n" -#: pg_checksums.c:76 +#: pg_checksums.c:75 #, c-format msgid " -d, --disable disable data checksums\n" msgstr " -d, --disable desactivar checksums\n" -#: pg_checksums.c:77 +#: pg_checksums.c:76 #, c-format msgid " -e, --enable enable data checksums\n" msgstr " -e, --enable activar checksums\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 verificar sólo la relación con el filenode dado\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 no esperar que los cambios se sincronicen a disco\n" -#: pg_checksums.c:80 +#: pg_checksums.c:79 #, c-format msgid " -P, --progress show progress information\n" msgstr " -P, --progress mostrar información de progreso\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=MÉTODO definir método para sincr. archivos a disco\n" -#: pg_checksums.c:82 +#: pg_checksums.c:81 #, c-format msgid " -v, --verbose output verbose messages\n" msgstr " -v, --verbose desplegar mensajes verbosos\n" -#: pg_checksums.c:83 +#: pg_checksums.c:82 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: pg_checksums.c:84 +#: pg_checksums.c:83 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_checksums.c:85 +#: pg_checksums.c:84 #, c-format msgid "" "\n" @@ -252,177 +252,183 @@ msgstr "" "la variable de entorno PGDATA.\n" "\n" -#: pg_checksums.c:87 +#: pg_checksums.c:86 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Reporte errores a <%s>.\n" -#: pg_checksums.c:88 +#: pg_checksums.c:87 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_checksums.c:145 +#: pg_checksums.c:144 #, c-format -msgid "%lld/%lld MB (%d%%) computed" -msgstr "%lld/%lld MB (%d%%) calculado" +#| msgid "%lld/%lld MB (%d%%) computed" +msgid "%/% MB (%d%%) computed" +msgstr "%/% MB (%d%%) calculado" -#: pg_checksums.c:206 +#: pg_checksums.c:205 #, c-format msgid "could not read block %u in file \"%s\": %m" msgstr "no se pudo leer el bloque %u del archivo «%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 "no se pudo leer bloque %u en archivo «%s»: leídos %d de %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 "verificación de checksums falló en archivo «%s», bloque %u: checksum calculado %X pero bloque contiene %X" -#: pg_checksums.c:255 +#: pg_checksums.c:254 #, c-format msgid "seek failed for block %u in file \"%s\": %m" msgstr "posicionamiento (seek) falló para el bloque %u en archivo «%s»: %m" -#: pg_checksums.c:262 +#: pg_checksums.c:261 #, c-format msgid "could not write block %u in file \"%s\": %m" msgstr "no se pudo escribir el bloque %u en el archivo «%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 "no se pudo escribir el bloque %u en el archivo «%s»: se escribieron %d de %d" -#: pg_checksums.c:277 +#: pg_checksums.c:276 #, c-format msgid "checksums verified in file \"%s\"" msgstr "checksums verificados en archivo «%s»" -#: pg_checksums.c:279 +#: pg_checksums.c:278 #, c-format msgid "checksums enabled in file \"%s\"" msgstr "checksums activados en archivo «%s»" -#: pg_checksums.c:362 +#: pg_checksums.c:361 #, c-format msgid "invalid segment number %d in file name \"%s\"" msgstr "número de segmento %d no válido en nombre de archivo «%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 "Pruebe «%s --help» para mayor información." -#: pg_checksums.c:524 +#: pg_checksums.c:523 #, c-format msgid "no data directory specified" msgstr "no se especificó el directorio de datos" -#: pg_checksums.c:533 +#: pg_checksums.c:532 #, 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_checksums.c:542 +#: pg_checksums.c:541 #, c-format msgid "option -f/--filenode can only be used with --check" msgstr "la opción -f/--filenode sólo puede usarse con --check" -#: pg_checksums.c:550 +#: pg_checksums.c:549 #, c-format msgid "pg_control CRC value is incorrect" msgstr "el valor de CRC de pg_control es incorrecto" -#: pg_checksums.c:553 +#: pg_checksums.c:552 #, c-format msgid "cluster is not compatible with this version of pg_checksums" msgstr "el clúster no es compatible con esta versión de pg_checksums" -#: pg_checksums.c:557 +#: pg_checksums.c:556 #, c-format msgid "database cluster is not compatible" msgstr "el clúster de bases de datos no es compatible" -#: 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 "El clúster fue inicializado con tamaño de bloque %u, pero pg_checksums fue compilado con tamaño de bloques %u." -#: pg_checksums.c:570 +#: pg_checksums.c:569 #, c-format msgid "cluster must be shut down" msgstr "el clúster debe estar apagado" -#: pg_checksums.c:574 +#: pg_checksums.c:573 #, c-format msgid "data checksums are not enabled in cluster" msgstr "los checksums de datos no están activados en el clúster" -#: pg_checksums.c:578 +#: pg_checksums.c:577 #, c-format msgid "data checksums are already disabled in cluster" msgstr "los checksums de datos ya están desactivados en el clúster" -#: pg_checksums.c:582 +#: pg_checksums.c:581 #, c-format msgid "data checksums are already enabled in cluster" msgstr "los checksums de datos ya están activados en el clúster" -#: pg_checksums.c:606 +#: pg_checksums.c:605 #, c-format msgid "Checksum operation completed\n" msgstr "Operación de checksums completa\n" -#: pg_checksums.c:607 +#: pg_checksums.c:606 #, c-format -msgid "Files scanned: %lld\n" -msgstr "Archivos recorridos: %lld\n" +#| msgid "Files scanned: %lld\n" +msgid "Files scanned: %\n" +msgstr "Archivos recorridos: %\n" -#: pg_checksums.c:608 +#: pg_checksums.c:607 #, c-format -msgid "Blocks scanned: %lld\n" -msgstr "Bloques recorridos: %lld\n" +#| msgid "Blocks scanned: %lld\n" +msgid "Blocks scanned: %\n" +msgstr "Bloques recorridos: %\n" -#: pg_checksums.c:611 +#: pg_checksums.c:610 #, c-format -msgid "Bad checksums: %lld\n" -msgstr "Checksums incorrectos: %lld\n" +#| msgid "Bad checksums: %lld\n" +msgid "Bad checksums: %\n" +msgstr "Checksums incorrectos: %\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 "Versión de checksums de datos: %u\n" -#: pg_checksums.c:619 +#: pg_checksums.c:618 #, c-format -msgid "Files written: %lld\n" -msgstr "Archivos escritos: %lld\n" +#| msgid "Files written: %lld\n" +msgid "Files written: %\n" +msgstr "Archivos escritos: %\n" -#: pg_checksums.c:620 +#: pg_checksums.c:619 #, c-format -msgid "Blocks written: %lld\n" -msgstr "Bloques escritos: %lld\n" +#| msgid "Blocks written: %lld\n" +msgid "Blocks written: %\n" +msgstr "Bloques escritos: %\n" -#: pg_checksums.c:636 +#: pg_checksums.c:635 #, c-format msgid "syncing data directory" msgstr "sincronizando directorio de datos" -#: pg_checksums.c:640 +#: pg_checksums.c:639 #, c-format msgid "updating control file" msgstr "actualizando archivo de control" -#: pg_checksums.c:646 +#: pg_checksums.c:645 #, c-format msgid "Checksums enabled in cluster\n" msgstr "Checksums activos en el clúster\n" -#: pg_checksums.c:648 +#: pg_checksums.c:647 #, c-format msgid "Checksums disabled in cluster\n" msgstr "Checksums inactivos en el clúster\n" diff --git a/src/bin/pg_checksums/po/ko.po b/src/bin/pg_checksums/po/ko.po index f8c71ae2ead3a..39f99ebb80e10 100644 --- a/src/bin/pg_checksums/po/ko.po +++ b/src/bin/pg_checksums/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_checksums (PostgreSQL) 17\n" +"Project-Id-Version: pg_checksums (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:54+0000\n" -"PO-Revision-Date: 2025-01-16 15:23+0900\n" +"POT-Creation-Date: 2025-09-11 21:54+0000\n" +"PO-Revision-Date: 2025-09-09 16:48+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: PostgreSQL Korea \n" "Language: ko\n" @@ -16,22 +16,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\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 "힌트: " @@ -75,9 +75,9 @@ msgstr "" "이럴 경우, 출력 결과가 바르지 않을 수 있고,\n" "설치된 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" @@ -87,8 +87,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 "\"%s\" 파일을 fsync 할 수 없음: %m" @@ -104,35 +104,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" @@ -152,7 +152,7 @@ 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 " @@ -163,17 +163,17 @@ msgstr "" "비활성화 또는 유효성 검사를 합니다.\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 [옵션]... [DATADIR]\n" -#: pg_checksums.c:73 +#: pg_checksums.c:72 #, c-format msgid "" "\n" @@ -182,33 +182,33 @@ 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 " @@ -216,32 +216,32 @@ msgid "" 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" @@ -255,32 +255,32 @@ msgstr "" "사용합니다.\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 "%/% MB (%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 " @@ -289,72 +289,72 @@ 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 "pg_control CRC 값이 잘못되었음" -#: 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 " @@ -363,77 +363,77 @@ msgstr "" "이 데이터베이스 클러스터는 %u 블록 크기로 초기화 되었지만, pg_checksum은 %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 "데이터 디렉터리 fsync 중" -#: 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_checksums/po/ru.po b/src/bin/pg_checksums/po/ru.po index 3c1863fe8475b..a0cbfa15d6b7e 100644 --- a/src/bin/pg_checksums/po/ru.po +++ b/src/bin/pg_checksums/po/ru.po @@ -1,10 +1,10 @@ -# Alexander Lakhin , 2019, 2020, 2021, 2022, 2024. +# SPDX-FileCopyrightText: 2019, 2020, 2021, 2022, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_verify_checksums (PostgreSQL) 11\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" "POT-Creation-Date: 2025-08-30 15:59+0300\n" -"PO-Revision-Date: 2024-09-04 13:35+0300\n" +"PO-Revision-Date: 2025-08-31 07:39+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -265,9 +265,9 @@ msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" #: pg_checksums.c:144 -#, fuzzy, c-format +#, c-format msgid "%/% MB (%d%%) computed" -msgstr "%lld/%lld МБ (%d%%) обработано" +msgstr "%/% МБ (%d%%) обработано" #: pg_checksums.c:205 #, c-format @@ -388,19 +388,19 @@ msgid "Checksum operation completed\n" msgstr "Обработка контрольных сумм завершена\n" #: pg_checksums.c:606 -#, fuzzy, c-format +#, c-format msgid "Files scanned: %\n" -msgstr "Просканировано файлов: %lld\n" +msgstr "Просканировано файлов: %\n" #: pg_checksums.c:607 -#, fuzzy, c-format +#, c-format msgid "Blocks scanned: %\n" -msgstr "Просканировано блоков: %lld\n" +msgstr "Просканировано блоков: %\n" #: pg_checksums.c:610 -#, fuzzy, c-format +#, c-format msgid "Bad checksums: %\n" -msgstr "Неверные контрольные суммы: %lld\n" +msgstr "Неверные контрольные суммы: %\n" #: pg_checksums.c:611 pg_checksums.c:643 #, c-format @@ -408,14 +408,14 @@ msgid "Data checksum version: %u\n" msgstr "Версия контрольных сумм данных: %u\n" #: pg_checksums.c:618 -#, fuzzy, c-format +#, c-format msgid "Files written: %\n" -msgstr "Записано файлов: %lld\n" +msgstr "Записано файлов: %\n" #: pg_checksums.c:619 -#, fuzzy, c-format +#, c-format msgid "Blocks written: %\n" -msgstr "Записано блоков: %lld\n" +msgstr "Записано блоков: %\n" #: pg_checksums.c:635 #, c-format diff --git a/src/bin/pg_combinebackup/po/es.po b/src/bin/pg_combinebackup/po/es.po index 850ef3dde2a0e..869d16d340d1b 100644 --- a/src/bin/pg_combinebackup/po/es.po +++ b/src/bin/pg_combinebackup/po/es.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_combinebackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2024-11-16 05:22+0000\n" -"PO-Revision-Date: 2024-11-16 09:07+0100\n" +"POT-Creation-Date: 2025-09-20 09:51+0000\n" +"PO-Revision-Date: 2025-09-21 11:27+0200\n" "Last-Translator: Álvaro Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -20,22 +20,22 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -45,8 +45,8 @@ msgstr "consejo: " msgid "could not open file \"%s\" for reading: %m" msgstr "no se pudo abrir archivo «%s» para lectura: %m" -#: ../../common/controldata_utils.c:110 copy_file.c:150 load_manifest.c:161 -#: load_manifest.c:199 pg_combinebackup.c:1400 reconstruct.c:540 +#: ../../common/controldata_utils.c:110 copy_file.c:164 load_manifest.c:161 +#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:540 #, c-format msgid "could not read file \"%s\": %m" msgstr "no se pudo leer el archivo «%s»: %m" @@ -57,8 +57,8 @@ msgid "could not read file \"%s\": read %d of %zu" msgstr "no se pudo leer el archivo «%s»: leídos %d de %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:369 reconstruct.c:740 +#: backup_label.c:174 copy_file.c:71 pg_combinebackup.c:548 +#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:740 #: write_manifest.c:187 #, c-format msgid "could not close file \"%s\": %m" @@ -82,12 +82,12 @@ msgstr "" "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n" "directorio de datos." -#: ../../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:523 reconstruct.c:638 +#: ../../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:523 reconstruct.c:638 #: write_manifest.c:250 #, c-format msgid "could not open file \"%s\": %m" @@ -99,14 +99,15 @@ msgstr "no se pudo abrir el archivo «%s»: %m" msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%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 "no se pudo sincronizar (fsync) archivo «%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 "memoria agotada" @@ -135,290 +136,295 @@ 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:76 +#: ../../common/file_utils.c:75 #, 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" -#: ../../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:204 +#: ../../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 #, c-format msgid "could not stat file \"%s\": %m" msgstr "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" -#: ../../common/jsonapi.c:2121 +#: ../../common/jsonapi.c:2435 msgid "Recursive descent parser cannot use incremental lexer." msgstr "El parser recursivo descendiente no puede usar el lexer incremental." -#: ../../common/jsonapi.c:2123 +#: ../../common/jsonapi.c:2437 msgid "Incremental parser requires incremental lexer." msgstr "El parser incremental requiere el lexer incremental." -#: ../../common/jsonapi.c:2125 +#: ../../common/jsonapi.c:2439 msgid "JSON nested too deep, maximum permitted depth is 6400." msgstr "JSON anidado demasiado profundamente, profundidad máxima es 6400." -#: ../../common/jsonapi.c:2127 +#: ../../common/jsonapi.c:2441 #, c-format msgid "Escape sequence \"\\%.*s\" is invalid." msgstr "La secuencia de escape «\\%.*s» no es válida." -#: ../../common/jsonapi.c:2131 +#: ../../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Los caracteres con valor 0x%02x deben ser escapados." -#: ../../common/jsonapi.c:2135 +#: ../../common/jsonapi.c:2449 #, c-format msgid "Expected end of input, but found \"%.*s\"." msgstr "Se esperaba el fin de la entrada, se encontró «%.*s»." -#: ../../common/jsonapi.c:2138 +#: ../../common/jsonapi.c:2452 #, c-format msgid "Expected array element or \"]\", but found \"%.*s\"." msgstr "Se esperaba un elemento de array o «]», se encontró «%.*s»." -#: ../../common/jsonapi.c:2141 +#: ../../common/jsonapi.c:2455 #, c-format msgid "Expected \",\" or \"]\", but found \"%.*s\"." msgstr "Se esperaba «,» o «]», se encontró «%.*s»." -#: ../../common/jsonapi.c:2144 +#: ../../common/jsonapi.c:2458 #, c-format msgid "Expected \":\", but found \"%.*s\"." msgstr "Se esperaba «:», se encontró «%.*s»." -#: ../../common/jsonapi.c:2147 +#: ../../common/jsonapi.c:2461 #, c-format msgid "Expected JSON value, but found \"%.*s\"." msgstr "Se esperaba un valor JSON, se encontró «%.*s»." -#: ../../common/jsonapi.c:2150 +#: ../../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "La cadena de entrada terminó inesperadamente." -#: ../../common/jsonapi.c:2152 +#: ../../common/jsonapi.c:2466 #, c-format msgid "Expected string or \"}\", but found \"%.*s\"." msgstr "Se esperaba una cadena o «}», se encontró «%.*s»." -#: ../../common/jsonapi.c:2155 +#: ../../common/jsonapi.c:2469 #, c-format msgid "Expected \",\" or \"}\", but found \"%.*s\"." msgstr "Se esperaba «,» o «}», se encontró «%.*s»." -#: ../../common/jsonapi.c:2158 +#: ../../common/jsonapi.c:2472 #, c-format msgid "Expected string, but found \"%.*s\"." msgstr "Se esperaba una cadena, se encontró «%.*s»." -#: ../../common/jsonapi.c:2161 +#: ../../common/jsonapi.c:2475 #, c-format msgid "Token \"%.*s\" is invalid." msgstr "El elemento «%.*s» no es válido." -#: ../../common/jsonapi.c:2164 +#: ../../common/jsonapi.c:2481 msgid "\\u0000 cannot be converted to text." msgstr "\\u0000 no puede ser convertido a text." -#: ../../common/jsonapi.c:2166 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales." -#: ../../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 "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es 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 "El valor de escape Unicode no pudo ser traducido a la codificación del servidor %s." -#: ../../common/jsonapi.c:2185 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "Un «high-surrogate» Unicode no puede venir después de un «high-surrogate»." -#: ../../common/jsonapi.c:2187 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»." -#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:855 +#: ../../common/jsonapi.c:2526 +#| msgid "out of memory while allocating a WAL reading processor" +msgid "out of memory while constructing error description" +msgstr "memoria agotada mientras se construía una descripción de error" + +#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:854 #, c-format msgid "could not initialize checksum of manifest" msgstr "no se pudo inicializar la suma de verificación del manifiesto" -#: ../../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 "el manifiesto terminó inesperadamente" -#: ../../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 "no se pudo actualizar la suma de verificación del manifiesto" -#: ../../common/parse_manifest.c:302 +#: ../../common/parse_manifest.c:301 msgid "unexpected object start" msgstr "inicio de objeto inesperado" -#: ../../common/parse_manifest.c:337 +#: ../../common/parse_manifest.c:336 msgid "unexpected object end" msgstr "fin de objeto inesperado" -#: ../../common/parse_manifest.c:366 +#: ../../common/parse_manifest.c:365 msgid "unexpected array start" msgstr "inicio de array inesperado" -#: ../../common/parse_manifest.c:391 +#: ../../common/parse_manifest.c:390 msgid "unexpected array end" msgstr "fin de array inesperado" -#: ../../common/parse_manifest.c:418 +#: ../../common/parse_manifest.c:417 msgid "expected version indicator" msgstr "se esperaba indicador de versión" -#: ../../common/parse_manifest.c:454 +#: ../../common/parse_manifest.c:453 msgid "unrecognized top-level field" msgstr "campo de nivel superior no reconocido" -#: ../../common/parse_manifest.c:473 +#: ../../common/parse_manifest.c:472 msgid "unexpected file field" msgstr "campo de archivo inesperado" -#: ../../common/parse_manifest.c:487 +#: ../../common/parse_manifest.c:486 msgid "unexpected WAL range field" msgstr "campo de rango de WAL inesperado" -#: ../../common/parse_manifest.c:493 +#: ../../common/parse_manifest.c:492 msgid "unexpected object field" msgstr "campo de objeto inesperado" -#: ../../common/parse_manifest.c:583 +#: ../../common/parse_manifest.c:582 msgid "unexpected scalar" msgstr "escalar inesperado" -#: ../../common/parse_manifest.c:609 +#: ../../common/parse_manifest.c:608 msgid "manifest version not an integer" msgstr "la versión de manifiesto no es un número entero" -#: ../../common/parse_manifest.c:613 +#: ../../common/parse_manifest.c:612 msgid "unexpected manifest version" msgstr "versión de manifiesto inesperada" -#: ../../common/parse_manifest.c:637 +#: ../../common/parse_manifest.c:636 msgid "system identifier in manifest not an integer" msgstr "el identificador de sistema en el manifiesto no es un número entero" -#: ../../common/parse_manifest.c:662 +#: ../../common/parse_manifest.c:661 msgid "missing path name" msgstr "ruta de archivo faltante" -#: ../../common/parse_manifest.c:665 +#: ../../common/parse_manifest.c:664 msgid "both path name and encoded path name" msgstr "hay ambos ruta de archivo (path name) y ruta codificada (encoded path name)" -#: ../../common/parse_manifest.c:667 +#: ../../common/parse_manifest.c:666 msgid "missing size" msgstr "tamaño faltante" -#: ../../common/parse_manifest.c:670 +#: ../../common/parse_manifest.c:669 msgid "checksum without algorithm" msgstr "suma de comprobación sin algoritmo" -#: ../../common/parse_manifest.c:684 +#: ../../common/parse_manifest.c:683 msgid "could not decode file name" msgstr "no se pudo decodificar el nombre del archivo" -#: ../../common/parse_manifest.c:694 +#: ../../common/parse_manifest.c:693 msgid "file size is not an integer" msgstr "el tamaño del archivo no es un número entero" -#: ../../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 "algoritmo de suma de comprobación no reconocido: \"%s\"" -#: ../../common/parse_manifest.c:719 +#: ../../common/parse_manifest.c:718 #, c-format msgid "invalid checksum for file \"%s\": \"%s\"" msgstr "suma de comprobación no válida para el archivo \"%s\": \"%s\"" -#: ../../common/parse_manifest.c:762 +#: ../../common/parse_manifest.c:761 msgid "missing timeline" msgstr "falta el timeline" -#: ../../common/parse_manifest.c:764 +#: ../../common/parse_manifest.c:763 msgid "missing start LSN" msgstr "falta el LSN de inicio" -#: ../../common/parse_manifest.c:766 +#: ../../common/parse_manifest.c:765 msgid "missing end LSN" msgstr "falta el LSN de término" -#: ../../common/parse_manifest.c:772 +#: ../../common/parse_manifest.c:771 msgid "timeline is not an integer" msgstr "el timeline no es un número entero" -#: ../../common/parse_manifest.c:775 +#: ../../common/parse_manifest.c:774 msgid "could not parse start LSN" msgstr "no se pudo interpretar el LSN de inicio" -#: ../../common/parse_manifest.c:778 +#: ../../common/parse_manifest.c:777 msgid "could not parse end LSN" msgstr "no se pudo interpretar el LSN de término" -#: ../../common/parse_manifest.c:843 +#: ../../common/parse_manifest.c:842 msgid "expected at least 2 lines" msgstr "esperado al menos 2 líneas" -#: ../../common/parse_manifest.c:846 +#: ../../common/parse_manifest.c:845 msgid "last line not newline-terminated" msgstr "última línea no termina en nueva línea" -#: ../../common/parse_manifest.c:865 +#: ../../common/parse_manifest.c:864 #, c-format msgid "could not finalize checksum of manifest" msgstr "no se pudo finalizar la suma de verificación del manifiesto" -#: ../../common/parse_manifest.c:869 +#: ../../common/parse_manifest.c:868 #, c-format msgid "manifest has no checksum" msgstr "el manifiesto no tiene suma de comprobación" -#: ../../common/parse_manifest.c:873 +#: ../../common/parse_manifest.c:872 #, c-format msgid "invalid manifest checksum: \"%s\"" msgstr "suma de comprobación de manifiesto no válida: \"%s\"" -#: ../../common/parse_manifest.c:877 +#: ../../common/parse_manifest.c:876 #, c-format msgid "manifest checksum mismatch" msgstr "discordancia en la suma de comprobación del manifiesto" -#: ../../common/parse_manifest.c:892 +#: ../../common/parse_manifest.c:891 #, c-format msgid "could not parse backup manifest: %s" msgstr "no se pudo analizar el manifiesto de la copia de seguridad: %s" @@ -473,62 +479,68 @@ msgstr "%s: %s requiere %s" msgid "could not write file \"%s\": wrote %d of %d" msgstr "no se pudo escribir al archivo «%s»: se escribió %d de %d" -#: backup_label.c:166 copy_file.c:146 copy_file.c:193 reconstruct.c:721 +#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:721 #: reconstruct.c:767 write_manifest.c:270 #, c-format msgid "could not update checksum of file \"%s\"" msgstr "no se pudo actualizar la suma de verificación para el archivo «%s»" -#: copy_file.c:186 +#: copy_file.c:200 #, c-format msgid "could not write to file \"%s\": %m" msgstr "no se pudo escribir a archivo «%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 "no se pudo escribir al archivo «%s», posición %u: se escribió %d de %d" -#: copy_file.c:199 reconstruct.c:784 +#: copy_file.c:213 reconstruct.c:784 #, c-format msgid "could not read from file \"%s\": %m" msgstr "no se pudo leer el archivo «%s»: %m" -#: copy_file.c:218 +#: copy_file.c:232 #, c-format msgid "error while cloning file \"%s\" to \"%s\": %m" msgstr "error mientras se clonaba el archivo «%s» a «%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 "no se pudo crear archivo «%s»: %m" -#: copy_file.c:237 +#: copy_file.c:251 #, c-format msgid "error while cloning file \"%s\" to \"%s\": %s" msgstr "error mientras se clonaba la relación «%s» a «%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 "el clonado de archivos no está soportado en esta plataforma" -#: copy_file.c:278 reconstruct.c:704 +#: copy_file.c:292 reconstruct.c:704 #, c-format msgid "error while copying file range from \"%s\" to \"%s\": %m" msgstr "error mientras se copiaba un rango de archivo de «%s» a «%s»: %m" -#: copy_file.c:285 pg_combinebackup.c:264 reconstruct.c:724 +#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:724 #, c-format msgid "copy_file_range not supported on this platform" msgstr "copy_file_range no está soportado en esta plataforma" -#: copy_file.c:300 +#: copy_file.c:314 #, c-format msgid "could not copy file \"%s\" to \"%s\": %m" msgstr "no se pudo copiar el archivo de «%s» a «%s»: %m" +#: copy_file.c:333 +#, c-format +#| msgid "could not create symbolic link from \"%s\" to \"%s\": %m" +msgid "could not create link from \"%s\" to \"%s\": %m" +msgstr "no se pudo crear un enlace desde «%s» a «%s»: %m" + #: load_manifest.c:125 #, c-format msgid "file \"%s\" does not exist" @@ -544,147 +556,154 @@ msgstr "no se pudo leer el archivo «%s»: leídos %d de %lld" msgid "could not read file \"%s\": read %lld of %lld" msgstr "no se pudo leer el archivo «%s»: leídos %lld de %lld" -#: load_manifest.c:249 +#: load_manifest.c:248 #, c-format msgid "backup manifest version 1 does not support incremental backup" msgstr "el manifiesto de backup versión 1 no soporta backups incrementales" -#: load_manifest.c:281 +#: load_manifest.c:280 #, c-format msgid "duplicate path name in backup manifest: \"%s\"" msgstr "nombre de ruta duplicado en el manifiesto de la copia de seguridad: \"%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 "Pruebe «%s --help» para mayor información." -#: pg_combinebackup.c:227 +#: pg_combinebackup.c:232 #, c-format msgid "no input directories specified" msgstr "no se especificó un directorio de entrada" -#: pg_combinebackup.c:233 +#: pg_combinebackup.c:238 #, c-format msgid "no output directory specified" msgstr "no se especificó un directorio de salida" -#: pg_combinebackup.c:301 +#: pg_combinebackup.c:306 #, c-format -msgid "%s: manifest system identifier is %llu, but control file has %llu" -msgstr "%s: el identificador de sistema del manifiesto es %llu, pero el archivo de control tiene %llu" +#| msgid "%s: manifest system identifier is %llu, but control file has %llu" +msgid "%s: manifest system identifier is %, but control file has %" +msgstr "%s: el identificador de sistema del manifiesto es %, pero el archivo de control tiene %" -#: 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 "no se puede generar un manifiesto porque no hay un manifiesto disponible para el backup final de entrada" -#: pg_combinebackup.c:387 +#: pg_combinebackup.c:392 #, c-format msgid "could not create symbolic link from \"%s\" to \"%s\": %m" msgstr "no se pudo crear un enlace simbólico desde «%s» a «%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 "no se pudo crear el directorio «%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 "el modo --link fue usado; cualquier modificación en el directorio de salida podría destructivamente modificar los directorios de entrada" + +#: pg_combinebackup.c:464 #, c-format msgid "directory name too long" msgstr "nombre de directorio demasiado largo" -#: pg_combinebackup.c:461 +#: pg_combinebackup.c:471 #, c-format msgid "multiple \"=\" signs in tablespace mapping" msgstr "múltiples signos «=» en mapeo de tablespace" -#: pg_combinebackup.c:469 +#: pg_combinebackup.c:479 #, c-format 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: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 "directorio antiguo no es una ruta absoluta en mapeo de tablespace: %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 "el backup en «%s» es un backup full, pero sólo el primer backup puede ser full" -#: 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 "el backup en «%s» es incremental, pero el primer backup debería ser full" -#: pg_combinebackup.c:559 +#: pg_combinebackup.c:569 #, c-format msgid "backup at \"%s\" starts on timeline %u, but expected %u" msgstr "el backup en «%s» empieza en el timeline %u, pero se esperaba %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 "el backup en «%s» empieza en el LSN %X/%X, pero se esperaba %X/%X" -#: pg_combinebackup.c:614 +#: pg_combinebackup.c:624 #, c-format msgid "%s: CRC is incorrect" msgstr "%s: el valor de CRC es incorrecto" -#: pg_combinebackup.c:618 +#: pg_combinebackup.c:628 #, c-format msgid "%s: unexpected control file version" msgstr "%s: versión de archivo de control inesperado" -#: pg_combinebackup.c:625 +#: pg_combinebackup.c:635 #, c-format -msgid "%s: expected system identifier %llu, but found %llu" -msgstr "%s: se esperaba identificador de sistema %llu, pero se encontró %llu" +#| msgid "%s: expected system identifier %llu, but found %llu" +msgid "%s: expected system identifier %, but found %" +msgstr "%s: se esperaba identificador de sistema %, pero se encontró %" -#: pg_combinebackup.c:657 +#: pg_combinebackup.c:666 #, c-format msgid "only some backups have checksums enabled" msgstr "sólo algunos backups tienen checksums activados" -#: pg_combinebackup.c:658 +#: pg_combinebackup.c:667 #, c-format msgid "Disable, and optionally reenable, checksums on the output directory to avoid failures." msgstr "Desactive (y opcionalmente reactive) los checksums en el directorio de salida para evitar fallos." -#: pg_combinebackup.c:693 +#: pg_combinebackup.c:702 #, c-format msgid "removing output directory \"%s\"" msgstr "eliminando el directorio de salida «%s»" -#: pg_combinebackup.c:695 +#: pg_combinebackup.c:704 #, c-format msgid "failed to remove output directory" msgstr "no se pudo eliminar el directorio de salida" -#: pg_combinebackup.c:699 +#: pg_combinebackup.c:708 #, c-format msgid "removing contents of output directory \"%s\"" msgstr "eliminando el contenido del directorio de salida «%s»" -#: pg_combinebackup.c:702 +#: pg_combinebackup.c:711 #, c-format msgid "failed to remove contents of output directory" msgstr "no se pudo eliminar el contenido del directorio de salida" -#: pg_combinebackup.c:742 +#: pg_combinebackup.c:751 #, c-format msgid "directory \"%s\" exists but is not empty" msgstr "el directorio «%s» existe pero no está vacío" -#: pg_combinebackup.c:745 +#: pg_combinebackup.c:754 #, c-format msgid "could not access directory \"%s\": %m" msgstr "no se pudo acceder al directorio «%s»: %m" -#: pg_combinebackup.c:759 +#: pg_combinebackup.c:768 #, c-format msgid "" "%s reconstructs full backups from incrementals.\n" @@ -693,17 +712,17 @@ msgstr "" "%s reconstruye backups full desde incrementales.\n" "\n" -#: pg_combinebackup.c:760 +#: pg_combinebackup.c:769 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_combinebackup.c:761 +#: pg_combinebackup.c:770 #, c-format msgid " %s [OPTION]... DIRECTORY...\n" msgstr " %s [OPCIÓN]... DIRECTOTIO...\n" -#: pg_combinebackup.c:762 +#: pg_combinebackup.c:771 #, c-format msgid "" "\n" @@ -712,27 +731,33 @@ msgstr "" "\n" "Opciones:\n" -#: pg_combinebackup.c:763 +#: pg_combinebackup.c:772 #, c-format msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug genera mucha salida de depuración\n" -#: pg_combinebackup.c:764 +#: pg_combinebackup.c:773 +#, c-format +#| msgid " --clone clone (reflink) files instead of copying\n" +msgid " -k, --link link files instead of copying\n" +msgstr " -k, --link enlazar (link) archivos en vez de copiarlos\n" + +#: pg_combinebackup.c:774 #, c-format msgid " -n, --dry-run do not actually do anything\n" msgstr " -n, --dry-run no hacer realmente nada\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 no esperar que los cambios se sincronicen a disco\n" -#: pg_combinebackup.c:766 +#: pg_combinebackup.c:776 #, c-format msgid " -o, --output=DIRECTORY output directory\n" msgstr " -o, --output=DIR directorio de salida\n" -#: pg_combinebackup.c:767 +#: pg_combinebackup.c:777 #, c-format msgid "" " -T, --tablespace-mapping=OLDDIR=NEWDIR\n" @@ -741,22 +766,22 @@ msgstr "" " -T, --tablespace-mapping=ANTIGUO=NUEVO\n" " reubicar el tablespace de ANTIGUO a NUEVO\n" -#: pg_combinebackup.c:769 +#: pg_combinebackup.c:779 #, c-format msgid " --clone clone (reflink) files instead of copying\n" msgstr " --clone clonar (reflink) archivos en vez de copiarlos\n" -#: pg_combinebackup.c:770 +#: pg_combinebackup.c:780 #, c-format msgid " --copy copy files (default)\n" msgstr " --copy copiar archivos (por omisión)\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 copiar usando la llamada 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" @@ -765,27 +790,27 @@ msgstr "" " --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n" " usar algoritmo para checksums del manifiesto\n" -#: pg_combinebackup.c:774 +#: pg_combinebackup.c:784 #, c-format msgid " --no-manifest suppress generation of backup manifest\n" msgstr " --no-manifest suprimir generación del manifiesto\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=MÉTODO definir método para sincronizar archivos a disco\n" -#: pg_combinebackup.c:776 +#: pg_combinebackup.c:786 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de version y salir\n" -#: pg_combinebackup.c:777 +#: pg_combinebackup.c:787 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_combinebackup.c:779 +#: pg_combinebackup.c:789 #, c-format msgid "" "\n" @@ -794,72 +819,72 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_combinebackup.c:780 +#: pg_combinebackup.c:790 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_combinebackup.c:995 +#: pg_combinebackup.c:1005 #, c-format msgid "skipping symbolic link \"%s\"" msgstr "omitiendo el link simbólico «%s»" -#: pg_combinebackup.c:997 +#: pg_combinebackup.c:1007 #, c-format msgid "skipping special file \"%s\"" msgstr "omitiendo el archivo especial «%s»" -#: pg_combinebackup.c:1073 reconstruct.c:305 +#: pg_combinebackup.c:1083 reconstruct.c:305 #, c-format msgid "manifest file \"%s\" contains no entry for file \"%s\"" msgstr "el archivo de manifiesto «%s» no contiene una entrada para el archivo «%s»" -#: pg_combinebackup.c:1189 +#: pg_combinebackup.c:1199 #, c-format msgid "%s: server version too old" msgstr "%s: versión de servidor demasiado antigua" -#: pg_combinebackup.c:1190 +#: pg_combinebackup.c:1200 #, c-format msgid "%s: could not parse version number" msgstr "%s: no se pudo interpretar el número de versión" -#: pg_combinebackup.c:1309 +#: pg_combinebackup.c:1319 #, c-format msgid "could not read symbolic link \"%s\": %m" msgstr "no se pudo leer el enlace simbólico «%s»: %m" -#: pg_combinebackup.c:1312 +#: pg_combinebackup.c:1322 #, c-format msgid "target of symbolic link \"%s\" is too long" msgstr "el destino del enlace simbólico «%s» es demasiado largo" -#: pg_combinebackup.c:1315 +#: pg_combinebackup.c:1325 #, c-format msgid "target of symbolic link \"%s\" is relative" msgstr "el destino del enlace simbólico «%s» es relativo" -#: pg_combinebackup.c:1337 +#: pg_combinebackup.c:1347 #, c-format msgid "tablespace at \"%s\" has no tablespace mapping" msgstr "el tablespace en «%s» no tiene mapeo de tablespace" -#: pg_combinebackup.c:1355 +#: pg_combinebackup.c:1365 #, c-format msgid "tablespaces with OIDs %u and %u both point at directory \"%s\"" msgstr "los tablespaces con OIDs %u y %u ambos apuntan al directorio «%s»" -#: pg_combinebackup.c:1364 +#: pg_combinebackup.c:1374 #, c-format msgid "could not close directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" -#: pg_combinebackup.c:1385 +#: pg_combinebackup.c:1395 #, c-format msgid "file \"%s\" is too large" msgstr "el archivo «%s» es demasiado grande" -#: pg_combinebackup.c:1402 +#: pg_combinebackup.c:1412 #, c-format msgid "could not read file \"%s\": read %zd of %lld" msgstr "no se pudo leer el archivo «%s»: leídos %zd de %lld" diff --git a/src/bin/pg_combinebackup/po/ko.po b/src/bin/pg_combinebackup/po/ko.po index e6d9629b170ff..4051074a66dfa 100644 --- a/src/bin/pg_combinebackup/po/ko.po +++ b/src/bin/pg_combinebackup/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_combinebackup (PostgreSQL) 17\n" +"Project-Id-Version: pg_combinebackup (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:52+0000\n" -"PO-Revision-Date: 2025-01-18 00:54+0900\n" +"POT-Creation-Date: 2025-09-11 21:52+0000\n" +"PO-Revision-Date: 2025-09-09 16:53+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean team \n" "Language: ko\n" @@ -16,22 +16,22 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\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 "힌트: " @@ -41,8 +41,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:540 +#: ../../common/controldata_utils.c:110 copy_file.c:164 load_manifest.c:161 +#: load_manifest.c:199 pg_combinebackup.c:1410 reconstruct.c:540 #, c-format msgid "could not read file \"%s\": %m" msgstr "\"%s\" 파일을 읽을 수 없음: %m" @@ -53,8 +53,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:369 reconstruct.c:740 +#: backup_label.c:174 copy_file.c:71 pg_combinebackup.c:548 +#: pg_combinebackup.c:1185 reconstruct.c:369 reconstruct.c:740 #: write_manifest.c:187 #, c-format msgid "could not close file \"%s\": %m" @@ -79,12 +79,12 @@ msgstr "" "지 않으며\n" "현재 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:523 reconstruct.c:638 +#: ../../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:523 reconstruct.c:638 #: write_manifest.c:250 #, c-format msgid "could not open file \"%s\": %m" @@ -96,14 +96,15 @@ 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 "\"%s\" 파일 fsync 실패: %m" #: ../../common/cryptohash.c:261 ../../common/cryptohash_openssl.c:356 -#: ../../common/parse_manifest.c:157 ../../common/parse_manifest.c:852 +#: ../../common/jsonapi.c:2410 ../../common/parse_manifest.c:157 +#: ../../common/parse_manifest.c:852 #, c-format msgid "out of memory" msgstr "메모리 부족" @@ -132,121 +133,121 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 중복할 수 없음 (내부 오류)\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:204 +#: ../../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 #, 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 값은 text 형으로 변환할 수 없음." -#: ../../common/jsonapi.c:2166 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "\"\\u\" 표기법은 뒤에 4개의 16진수가 와야 합니다." -#: ../../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." @@ -254,20 +255,24 @@ msgstr "" "서버 인코딩이 UTF8이 아닌 경우 007F보다 큰 코드 지점 값에는 유니코드 이스케이" "프 값을 사용할 수 없음" -#: ../../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 "유니코드 이스케이프 값을 %s 서버 인코딩으로 변환할 수 없음." -#: ../../common/jsonapi.c:2185 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "유니코드 상위 surrogate(딸림 코드)는 상위 딸림 코드 뒤에 오면 안됨." -#: ../../common/jsonapi.c:2187 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "유니코드 상위 surrogate(딸림 코드) 뒤에는 하위 딸림 코드가 있어야 함." +#: ../../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" @@ -358,7 +363,7 @@ msgstr "파일 이름을 디코딩할 수 없음" msgid "file size is not an integer" msgstr "파일 크기가 정수가 아님" -#: ../../common/parse_manifest.c:699 pg_combinebackup.c:199 +#: ../../common/parse_manifest.c:699 pg_combinebackup.c:204 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" msgstr "알 수 없는 체크섬 알고리즘: \"%s\"" @@ -475,62 +480,67 @@ msgstr "%s: %s은(는) %s을(를) 필요로 함" 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:721 +#: backup_label.c:166 copy_file.c:160 copy_file.c:207 reconstruct.c:721 #: reconstruct.c:767 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:784 +#: copy_file.c:213 reconstruct.c:784 #, 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:704 +#: copy_file.c:292 reconstruct.c:704 #, c-format msgid "error while copying file range from \"%s\" to \"%s\": %m" msgstr "\"%s\" 파일을 \"%s\" 파일로 copy_file_range 기능으로 복사 중 오류: %m" -#: copy_file.c:285 pg_combinebackup.c:264 reconstruct.c:724 +#: copy_file.c:299 pg_combinebackup.c:269 reconstruct.c:724 #, 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" @@ -556,110 +566,121 @@ msgstr "백업 매니페이스 파일 버전이 1인 경우는 증분 백업을 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이지만, 기대 LSN은 %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 " @@ -668,37 +689,37 @@ 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" @@ -707,17 +728,17 @@ 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" @@ -726,17 +747,22 @@ 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 파일 copy 대신 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 " @@ -744,12 +770,12 @@ msgid "" 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" @@ -758,23 +784,23 @@ 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 using 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" @@ -783,27 +809,27 @@ 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" @@ -812,72 +838,72 @@ 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:305 +#: 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 "OIDs %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 만 읽었음" diff --git a/src/bin/pg_combinebackup/po/ru.po b/src/bin/pg_combinebackup/po/ru.po index 052184e886e06..920b276907394 100644 --- a/src/bin/pg_combinebackup/po/ru.po +++ b/src/bin/pg_combinebackup/po/ru.po @@ -1,10 +1,10 @@ -# Alexander Lakhin , 2024. +# SPDX-FileCopyrightText: 2024, 2025 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-08-30 15:59+0300\n" -"PO-Revision-Date: 2024-11-09 08:04+0300\n" +"PO-Revision-Date: 2025-09-13 17:16+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -275,7 +275,7 @@ msgstr "Младшее слово суррогата Unicode должно сле #: ../../common/jsonapi.c:2526 msgid "out of memory while constructing error description" -msgstr "" +msgstr "нехватка памяти при составлении описания ошибки" #: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:854 #, c-format @@ -542,9 +542,9 @@ msgid "could not copy file \"%s\" to \"%s\": %m" msgstr "не удалось скопировать файл \"%s\" в \"%s\": %m" #: copy_file.c:333 -#, fuzzy, c-format +#, c-format msgid "could not create link from \"%s\" to \"%s\": %m" -msgstr "не удалось создать символическую ссылку \"%s\" в \"%s\": %m" +msgstr "не удалось создать ссылку \"%s\" в \"%s\": %m" #: load_manifest.c:125 #, c-format @@ -588,10 +588,12 @@ msgid "no output directory specified" msgstr "выходной каталог не указан" #: pg_combinebackup.c:306 -#, fuzzy, c-format +#, c-format msgid "" "%s: manifest system identifier is %, but control file has %" -msgstr "%s: идентификатор системы в манифесте %llu, а в управляющем файле %llu" +msgstr "" +"%s: идентификатор системы в манифесте %, а в управляющем файле " +"%" #: pg_combinebackup.c:345 #, c-format @@ -618,6 +620,8 @@ msgid "" "--link mode was used; any modifications to the output directory might " "destructively modify input directories" msgstr "" +"был использован режим --link; любые изменения в выходном каталоге могут " +"разрушительно повлиять на входные каталоги" #: pg_combinebackup.c:464 #, c-format @@ -682,9 +686,9 @@ msgid "%s: unexpected control file version" msgstr "%s: неожиданная версия управляющего файла" #: pg_combinebackup.c:635 -#, fuzzy, c-format +#, c-format msgid "%s: expected system identifier %, but found %" -msgstr "%s: ожидался идентификатор системы %llu, но обнаружен %llu" +msgstr "%s: ожидался идентификатор системы %, но обнаружен %" #: pg_combinebackup.c:666 #, c-format @@ -764,12 +768,9 @@ msgid " -d, --debug generate lots of debugging output\n" msgstr " -d, --debug выдавать много отладочных сообщений\n" #: pg_combinebackup.c:773 -#, fuzzy, c-format +#, c-format msgid " -k, --link link files instead of copying\n" -msgstr "" -" --clone клонировать (используя reflink), а не " -"копировать\n" -" файлы\n" +msgstr " -k, --link не копировать файлы, а создавать ссылки\n" #: pg_combinebackup.c:774 #, c-format diff --git a/src/bin/pg_config/po/es.po b/src/bin/pg_config/po/es.po index 2ebb19f2a50c9..5afb8a3f250d8 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-02-16 19:48+0000\n" +"POT-Creation-Date: 2025-09-20 09:48+0000\n" "PO-Revision-Date: 2024-11-16 14:23+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -47,27 +47,27 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "no se pudo resolver la ruta «%s» a forma absoluta: %m" -#: ../../common/exec.c:382 +#: ../../common/exec.c:363 #, c-format msgid "could not execute command \"%s\": %m" msgstr "no se pudo ejecutar la orden «%s»: %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "no se pudo leer desde la orden «%s»: %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %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 "memoria agotada" @@ -82,7 +82,7 @@ msgstr "memoria agotada\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "no se puede duplicar un puntero nulo (error interno)\n" -#: pg_config.c:74 +#: pg_config.c:73 #, c-format msgid "" "\n" @@ -93,12 +93,12 @@ msgstr "" "%s provee información sobre la versión instalada de PostgreSQL.\n" "\n" -#: pg_config.c:75 +#: pg_config.c:74 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_config.c:76 +#: pg_config.c:75 #, c-format msgid "" " %s [OPTION]...\n" @@ -107,27 +107,27 @@ msgstr "" " %s [OPCIÓN]...\n" "\n" -#: pg_config.c:77 +#: pg_config.c:76 #, c-format msgid "Options:\n" msgstr "Opciones:\n" -#: pg_config.c:78 +#: pg_config.c:77 #, c-format msgid " --bindir show location of user executables\n" msgstr " --bindir muestra la ubicación de ejecutables de usuario\n" -#: pg_config.c:79 +#: pg_config.c:78 #, c-format msgid " --docdir show location of documentation files\n" msgstr " --docdir muestra la ubicación de archivos de documentación\n" -#: pg_config.c:80 +#: pg_config.c:79 #, c-format msgid " --htmldir show location of HTML documentation files\n" msgstr " --htmldir muestra la ubicación de archivos de documentación HTML\n" -#: pg_config.c:81 +#: pg_config.c:80 #, c-format msgid "" " --includedir show location of C header files of the client\n" @@ -136,66 +136,66 @@ msgstr "" " --includedir muestra la ubicación de archivos de encabezados C\n" " de las interfaces cliente\n" -#: pg_config.c:83 +#: pg_config.c:82 #, c-format msgid " --pkgincludedir show location of other C header files\n" msgstr "" " --pkgincludedir muestra la ubicación de otros archivos de\n" " encabezados C\n" -#: pg_config.c:84 +#: pg_config.c:83 #, c-format msgid " --includedir-server show location of C header files for the server\n" msgstr "" " --includedir-server muestra la ubicación de archivos de encabezados C\n" " del servidor\n" -#: pg_config.c:85 +#: pg_config.c:84 #, c-format msgid " --libdir show location of object code libraries\n" msgstr "" " --libdir muestra la ubicación de bibliotecas\n" " de código objeto\n" -#: pg_config.c:86 +#: pg_config.c:85 #, c-format msgid " --pkglibdir show location of dynamically loadable modules\n" msgstr " --pkglibdir muestra la ubicación de módulos para carga dinámica\n" -#: pg_config.c:87 +#: pg_config.c:86 #, c-format msgid " --localedir show location of locale support files\n" msgstr "" " --localedir muestra la ubicación de archivos de soporte de\n" " configuraciones locales\n" -#: pg_config.c:88 +#: pg_config.c:87 #, c-format msgid " --mandir show location of manual pages\n" msgstr " --mandir muestra la ubicación de páginas de manual\n" -#: pg_config.c:89 +#: pg_config.c:88 #, c-format msgid " --sharedir show location of architecture-independent support files\n" msgstr "" " --sharedir muestra la ubicación de archivos de soporte\n" " independientes de arquitectura\n" -#: pg_config.c:90 +#: pg_config.c:89 #, c-format msgid " --sysconfdir show location of system-wide configuration files\n" msgstr "" " --sysconfdir muestra la ubicación de archivos de configuración\n" " global del sistema\n" -#: pg_config.c:91 +#: pg_config.c:90 #, c-format msgid " --pgxs show location of extension makefile\n" msgstr "" " --pgxs muestra la ubicación del archivo makefile\n" " para extensiones\n" -#: pg_config.c:92 +#: pg_config.c:91 #, c-format msgid "" " --configure show options given to \"configure\" script when\n" @@ -204,71 +204,71 @@ msgstr "" " --configure muestra las opciones que se dieron a «configure»\n" " cuando PostgreSQL fue construido\n" -#: pg_config.c:94 +#: pg_config.c:93 #, c-format msgid " --cc show CC value used when PostgreSQL was built\n" msgstr " --cc muestra el valor de CC cuando PostgreSQL fue construido\n" -#: pg_config.c:95 +#: pg_config.c:94 #, c-format msgid " --cppflags show CPPFLAGS value used when PostgreSQL was built\n" msgstr "" " --cppflags muestra el valor de CPPFLAGS cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:96 +#: pg_config.c:95 #, c-format msgid " --cflags show CFLAGS value used when PostgreSQL was built\n" msgstr "" " --cflags muestra el valor de CFLAGS cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:97 +#: pg_config.c:96 #, c-format msgid " --cflags_sl show CFLAGS_SL value used when PostgreSQL was built\n" msgstr "" " --cflags_sl muestra el valor de CFLAGS_SL cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:98 +#: pg_config.c:97 #, c-format msgid " --ldflags show LDFLAGS value used when PostgreSQL was built\n" msgstr "" " --ldflags muestra el valor de LDFLAGS cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:99 +#: pg_config.c:98 #, c-format msgid " --ldflags_ex show LDFLAGS_EX value used when PostgreSQL was built\n" msgstr "" " --ldflags_ex muestra el valor de LDFLAGS_EX cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:100 +#: pg_config.c:99 #, c-format msgid " --ldflags_sl show LDFLAGS_SL value used when PostgreSQL was built\n" msgstr "" " --ldflags_sl muestra el valor de LDFLAGS_SL cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:101 +#: pg_config.c:100 #, c-format msgid " --libs show LIBS value used when PostgreSQL was built\n" msgstr "" " --libs muestra el valor de LIBS cuando PostgreSQL fue\n" " construido\n" -#: pg_config.c:102 +#: pg_config.c:101 #, c-format msgid " --version show the PostgreSQL version\n" msgstr " --version muestra la versión de PostgreSQL\n" -#: pg_config.c:103 +#: pg_config.c:102 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help muestra esta ayuda, luego sale\n" -#: pg_config.c:104 +#: pg_config.c:103 #, c-format msgid "" "\n" @@ -279,27 +279,27 @@ msgstr "" "Si no se pasa ningún argumento, se muestra toda la información conocida\n" "\n" -#: pg_config.c:105 +#: pg_config.c:104 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Reporte errores a <%s>.\n" -#: pg_config.c:106 +#: pg_config.c:105 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_config.c:112 +#: pg_config.c:111 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Use «%s --help» para mayor información.\n" -#: pg_config.c:154 +#: pg_config.c:153 #, c-format msgid "%s: could not find own program executable\n" msgstr "%s: no se pudo encontrar el ejecutable propio\n" -#: pg_config.c:181 +#: pg_config.c:180 #, c-format msgid "%s: invalid argument: %s\n" msgstr "%s: el argumento no es válido: %s\n" diff --git a/src/bin/pg_controldata/po/es.po b/src/bin/pg_controldata/po/es.po index 79a931a21b2d1..6c83db53a52c9 100644 --- a/src/bin/pg_controldata/po/es.po +++ b/src/bin/pg_controldata/po/es.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_controldata (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:53+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:52+0000\n" +"PO-Revision-Date: 2025-09-21 11:32+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -247,8 +247,9 @@ msgstr "Número de versión del catálogo: %u\n" #: pg_controldata.c:242 #, c-format -msgid "Database system identifier: %llu\n" -msgstr "Identificador de sistema: %llu\n" +#| msgid "Database system identifier: %llu\n" +msgid "Database system identifier: %\n" +msgstr "Identificador de sistema: %\n" #: pg_controldata.c:244 #, c-format @@ -510,5 +511,20 @@ msgstr "Versión de sumas de verificación de datos: %u\n" #: pg_controldata.c:339 #, c-format +#| msgid "Maximum data alignment: %u\n" +msgid "Default char data signedness: %s\n" +msgstr "Presencia de signo en datos «char»: %s\n" + +#: pg_controldata.c:340 +#| msgid "assignment" +msgid "signed" +msgstr "con signo" + +#: pg_controldata.c:340 +msgid "unsigned" +msgstr "sin signo" + +#: pg_controldata.c:341 +#, c-format msgid "Mock authentication nonce: %s\n" msgstr "Nonce para autentificación simulada: %s\n" diff --git a/src/bin/pg_controldata/po/ko.po b/src/bin/pg_controldata/po/ko.po index b753d7e93c13c..b4e1fdbcb5f04 100644 --- a/src/bin/pg_controldata/po/ko.po +++ b/src/bin/pg_controldata/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_controldata (PostgreSQL) 17\n" +"Project-Id-Version: pg_controldata (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:53+0000\n" -"PO-Revision-Date: 2025-01-16 15:43+0900\n" +"POT-Creation-Date: 2025-09-11 21:53+0000\n" +"PO-Revision-Date: 2025-09-09 16:55+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -183,27 +183,27 @@ 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 " @@ -212,320 +212,314 @@ 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)" msgstr[0] "컨트롤 파일의 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 조각 파일 크기는 1MB에서 1GB사이 2의 제곱값이어야 합니다." -#: 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 "마지막 체크포인트 REDO 위치: %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 "off" -#: 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 "on" -#: 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 "마지막 체크포인트 제일오래된XID: %u\n" -#: pg_controldata.c:260 +#: pg_controldata.c:271 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "마지막 체크포인트 제일오래된XID의 DB: %u\n" -#: pg_controldata.c:262 +#: pg_controldata.c:273 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "마지막 체크포인트 제일오래된ActiveXID:%u\n" -#: pg_controldata.c:264 +#: pg_controldata.c:275 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "마지막 체크포인트 제일오래된MultiXid: %u\n" -#: pg_controldata.c:266 +#: pg_controldata.c:277 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "마지막 체크포인트 제일오래된멀티Xid DB:%u\n" -#: pg_controldata.c:268 +#: pg_controldata.c:279 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "마지막 체크포인트 제일오래된CommitTsXid:%u\n" -#: pg_controldata.c:270 +#: pg_controldata.c:281 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "마지막 체크포인트 최신CommitTsXid: %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_level 설정값: %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 "WAL 블록 크기: %u\n" -#: pg_controldata.c:311 +#: pg_controldata.c:322 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "WAL 세그먼트의 크기(byte): %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 "Mock authentication nonce: %s\n" -msgstr "임시 모의 인증: %s\n" +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 "WARNING: invalid WAL segment size\n" -#~ msgstr "경고: 잘못된 WAL 조각 크기\n" - -#, c-format -#~ msgid "" -#~ "The WAL segment size stored in the file, %d byte, is not a power of two\n" -#~ "between 1 MB and 1 GB. The file is corrupt and the results below are\n" -#~ "untrustworthy.\n" -#~ "\n" -#~ msgid_plural "" -#~ "The WAL segment size stored in the file, %d bytes, is not a power of two\n" -#~ "between 1 MB and 1 GB. The file is corrupt and the results below are\n" -#~ "untrustworthy.\n" -#~ "\n" -#~ msgstr[0] "" -#~ "저장된 WAL 조각 파일의 크기는 %d 바이트입니다. 이 값은 1MB부터 1GB사이\n" -#~ "2^n 값이 아닙니다. 파일이 손상되었으며, 결과 또한 믿을 수 없습니다.\n" -#~ "\n" +msgid "Mock authentication nonce: %s\n" +msgstr "임시 모의 인증: %s\n" diff --git a/src/bin/pg_controldata/po/ru.po b/src/bin/pg_controldata/po/ru.po index 6f4858da86b38..ce97ded1ebaa7 100644 --- a/src/bin/pg_controldata/po/ru.po +++ b/src/bin/pg_controldata/po/ru.po @@ -4,13 +4,13 @@ # Serguei A. Mokhov , 2002-2004. # Oleg Bartunov , 2004. # Andrey Sudnik , 2011. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_controldata (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: 2024-09-04 17:08+0300\n" +"PO-Revision-Date: 2025-09-13 16:58+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -253,9 +253,9 @@ msgid "Catalog version number: %u\n" msgstr "Номер версии каталога: %u\n" #: pg_controldata.c:242 -#, fuzzy, c-format +#, c-format msgid "Database system identifier: %\n" -msgstr "Идентификатор системы баз данных: %llu\n" +msgstr "Идентификатор системы баз данных: %\n" #: pg_controldata.c:244 #, c-format @@ -537,17 +537,17 @@ msgid "Data page checksum version: %u\n" msgstr "Версия контрольных сумм страниц: %u\n" #: pg_controldata.c:339 -#, fuzzy, c-format +#, c-format msgid "Default char data signedness: %s\n" -msgstr "Макс. предел выравнивания данных: %u\n" +msgstr "Знаковость char по умолчанию: %s\n" #: pg_controldata.c:340 msgid "signed" -msgstr "" +msgstr "знаковое" #: pg_controldata.c:340 msgid "unsigned" -msgstr "" +msgstr "беззнаковое" # skip-rule: capital-letter-first #: pg_controldata.c:341 diff --git a/src/bin/pg_ctl/po/es.po b/src/bin/pg_ctl/po/es.po index f57f1217e9586..fbbea6324a39e 100644 --- a/src/bin/pg_ctl/po/es.po +++ b/src/bin/pg_ctl/po/es.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_ctl (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:49+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:48+0000\n" +"PO-Revision-Date: 2025-09-21 11:35+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -45,33 +45,33 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "no se pudo resolver la ruta «%s» a forma absoluta: %m" -#: ../../common/exec.c:382 +#: ../../common/exec.c:363 #, c-format msgid "could not execute command \"%s\": %m" msgstr "no se pudo ejecutar la orden «%s»: %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "no se pudo leer desde la orden «%s»: %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %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 "memoria agotada" #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 -#: ../../port/path.c:830 ../../port/path.c:867 ../../port/path.c:884 +#: ../../port/path.c:831 ../../port/path.c:868 ../../port/path.c:885 #, c-format msgid "out of memory\n" msgstr "memoria agotada\n" @@ -111,125 +111,130 @@ msgstr "el proceso hijo fue terminado por una señal %d: %s" msgid "child process exited with unrecognized status %d" msgstr "el proceso hijo terminó con código no reconocido %d" -#: ../../port/path.c:852 +#: ../../port/path.c:853 #, c-format msgid "could not get current working directory: %m\n" msgstr "no se pudo obtener el directorio de trabajo actual: %m\n" -#: pg_ctl.c:254 +#: pg_ctl.c:255 #, c-format msgid "%s: directory \"%s\" does not exist\n" msgstr "%s: el directorio «%s» no existe\n" -#: pg_ctl.c:257 +#: pg_ctl.c:258 #, c-format msgid "%s: could not access directory \"%s\": %m\n" msgstr "%s: no se pudo acceder al directorio «%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: el directorio «%s» no es un directorio de base de datos\n" -#: pg_ctl.c:283 +#: pg_ctl.c:284 #, c-format msgid "%s: could not open PID file \"%s\": %m\n" msgstr "%s: no se pudo abrir el archivo de 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: el archivo de PID «%s» está vacío\n" -#: pg_ctl.c:295 +#: pg_ctl.c:296 #, c-format msgid "%s: invalid data in PID file \"%s\"\n" msgstr "%s: datos no válidos en archivo de 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: no se pudo iniciar el servidor: %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: no se pudo iniciar el servidor debido a falla en 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: no se pudo abrir el archivo de log «%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: no se pudo iniciar el servidor: código de error %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: no se puede establecer el límite de archivos de volcado;\n" "impedido por un límite duro\n" -#: pg_ctl.c:807 +#: pg_ctl.c:815 #, c-format msgid "%s: could not read file \"%s\"\n" msgstr "%s: no se pudo leer el archivo «%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: archivo de opciones «%s» debe tener exactamente una línea\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: falló la señal de detención (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 "el programa «%s» es requerido por %s, pero no fue encontrado en el mismo directorio que «%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 "El programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s\n" -#: pg_ctl.c:917 +#: pg_ctl.c:925 #, c-format msgid "%s: database system initialization failed\n" msgstr "%s: falló la creación de la base de datos\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: otro servidor puede estar en ejecución; tratando de iniciarlo de todas formas.\n" -#: pg_ctl.c:980 +#: pg_ctl.c:988 msgid "waiting for server to start..." msgstr "esperando que el servidor se inicie..." -#: 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 " listo\n" -#: pg_ctl.c:986 +#: pg_ctl.c:994 msgid "server started\n" msgstr "servidor iniciado\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 " abandonando la espera\n" -#: pg_ctl.c:990 +#: pg_ctl.c:998 #, c-format msgid "%s: server did not start in time\n" msgstr "%s: el servidor no inició a tiempo\n" -#: pg_ctl.c:996 +#: pg_ctl.c:1004 +#| msgid "shutdown at recovery target" +msgid "server shut down because of recovery target settings\n" +msgstr "servidor apagado debido a parámetros de destino de recuperación\n" + +#: pg_ctl.c:1008 #, c-format msgid "" "%s: could not start server\n" @@ -238,42 +243,42 @@ msgstr "" "%s: no se pudo iniciar el servidor.\n" "Examine el registro del servidor.\n" -#: pg_ctl.c:1004 +#: pg_ctl.c:1016 msgid "server starting\n" msgstr "servidor iniciándose\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: el archivo de PID «%s» no existe\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 "¿Está el servidor en ejecución?\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: no se puede detener el servidor; un servidor en modo mono-usuario está en ejecución (PID: %d)\n" -#: pg_ctl.c:1044 +#: pg_ctl.c:1056 msgid "server shutting down\n" msgstr "servidor deteniéndose\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 "esperando que el servidor se detenga..." -#: pg_ctl.c:1053 pg_ctl.c:1114 +#: pg_ctl.c:1065 pg_ctl.c:1126 msgid " failed\n" msgstr " falló\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: el servidor no se detiene\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" @@ -281,237 +286,237 @@ msgstr "" "SUGERENCIA: La opción «-m fast» desconecta las sesiones inmediatamente\n" "en lugar de esperar que cada sesión finalice por sí misma.\n" -#: pg_ctl.c:1063 pg_ctl.c:1124 +#: pg_ctl.c:1075 pg_ctl.c:1136 msgid "server stopped\n" msgstr "servidor detenido\n" -#: pg_ctl.c:1084 +#: pg_ctl.c:1096 msgid "trying to start server anyway\n" msgstr "intentando iniciae el servidor de todas maneras\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: no se puede reiniciar el servidor; un servidor en modo mono-usuario está en ejecución (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 "Por favor termine el servidor mono-usuario e intente nuevamente.\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: el proceso servidor antiguo (PID: %d) parece no estar\n" -#: pg_ctl.c:1130 +#: pg_ctl.c:1142 msgid "starting server anyway\n" msgstr "iniciando el servidor de todas maneras\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: no se puede recargar el servidor; un servidor en modo mono-usuario está en ejecución (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: no se pudo enviar señal de recarga (PID: %d): %m\n" -#: pg_ctl.c:1165 +#: pg_ctl.c:1177 msgid "server signaled\n" msgstr "se ha enviado una señal al servidor\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: no se puede promover el servidor; un servidor en modo mono-usuario está en ejecución (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: no se puede promover el servidor;\n" "el servidor no está en modo «standby»\n" -#: pg_ctl.c:1208 +#: pg_ctl.c:1220 #, c-format msgid "%s: could not create promote signal file \"%s\": %m\n" msgstr "%s: no se pudo crear el archivo de señal de promoción «%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: no se pudo escribir al archivo de señal de promoción «%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: no se pudo enviar la señal de promoción (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: no se pudo eliminar el archivo de señal de promoción «%s»: %m\n" -#: pg_ctl.c:1232 +#: pg_ctl.c:1244 msgid "waiting for server to promote..." msgstr "esperando que el servidor se promueva..." -#: pg_ctl.c:1236 +#: pg_ctl.c:1248 msgid "server promoted\n" msgstr "servidor promovido\n" -#: pg_ctl.c:1241 +#: pg_ctl.c:1253 #, c-format msgid "%s: server did not promote in time\n" msgstr "%s: el servidor no se promovió a tiempo\n" -#: pg_ctl.c:1247 +#: pg_ctl.c:1259 msgid "server promoting\n" msgstr "servidor promoviendo\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: no se puede rotar el archivo de log; un servidor en modo mono-usuario está en ejecución (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: no se pudo crear el archivo de señal de rotación de log «%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: no se pudo escribir al archivo de señal de rotación de log «%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: no se pudo enviar la señal de rotación de log (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: no se pudo eliminar el archivo de señal de rotación de log «%s»: %m\n" -#: pg_ctl.c:1303 +#: pg_ctl.c:1315 msgid "server signaled to rotate log file\n" msgstr "se ha enviado una señal de rotación de log al servidor\n" -#: pg_ctl.c:1350 +#: pg_ctl.c:1362 #, c-format msgid "%s: single-user server is running (PID: %d)\n" msgstr "%s: un servidor en modo mono-usuario está en ejecución (PID: %d)\n" -#: pg_ctl.c:1364 +#: pg_ctl.c:1376 #, c-format msgid "%s: server is running (PID: %d)\n" msgstr "%s: el servidor está en ejecución (PID: %d)\n" -#: pg_ctl.c:1380 +#: pg_ctl.c:1392 #, c-format msgid "%s: no server running\n" msgstr "%s: no hay servidor en ejecución\n" -#: pg_ctl.c:1397 +#: pg_ctl.c:1409 #, c-format msgid "%s: could not send signal %d (PID: %d): %m\n" msgstr "%s: no se pudo enviar la señal %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: no se pudo encontrar el ejecutable propio\n" -#: pg_ctl.c:1438 +#: pg_ctl.c:1450 #, c-format msgid "%s: could not find postgres program executable\n" msgstr "%s: no se pudo encontrar el ejecutable 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: no se pudo abrir el gestor de servicios\n" -#: pg_ctl.c:1514 +#: pg_ctl.c:1526 #, c-format msgid "%s: service \"%s\" already registered\n" msgstr "%s: el servicio «%s» ya está registrado\n" -#: pg_ctl.c:1525 +#: pg_ctl.c:1537 #, c-format msgid "%s: could not register service \"%s\": error code %lu\n" msgstr "%s: no se pudo registrar el servicio «%s»: código de error %lu\n" -#: pg_ctl.c:1548 +#: pg_ctl.c:1560 #, c-format msgid "%s: service \"%s\" not registered\n" msgstr "%s: el servicio «%s» no ha sido registrado\n" -#: pg_ctl.c:1555 +#: pg_ctl.c:1567 #, c-format msgid "%s: could not open service \"%s\": error code %lu\n" msgstr "%s: no se pudo abrir el servicio «%s»: código de error %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: no se pudo dar de baja el servicio «%s»: código de error %lu\n" -#: pg_ctl.c:1651 +#: pg_ctl.c:1663 msgid "Waiting for server startup...\n" msgstr "Esperando que el servidor se inicie...\n" -#: pg_ctl.c:1654 +#: pg_ctl.c:1666 msgid "Timed out waiting for server startup\n" msgstr "Se agotó el tiempo de espera al inicio del servidor\n" -#: pg_ctl.c:1658 +#: pg_ctl.c:1670 msgid "Server started and accepting connections\n" msgstr "Servidor iniciado y aceptando conexiones\n" -#: pg_ctl.c:1713 +#: pg_ctl.c:1725 #, c-format msgid "%s: could not start service \"%s\": error code %lu\n" msgstr "%s: no se pudo iniciar el servicio «%s»: código de error %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: no se pudo abrir el token de proceso: código de error %lu\n" -#: pg_ctl.c:1800 +#: pg_ctl.c:1812 #, c-format msgid "%s: could not allocate SIDs: error code %lu\n" msgstr "%s: no se pudo emplazar los SIDs: código de error %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: no se pudo crear el token restringido: código de error %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: no se pudo obtener LUIDs para privilegios: código de error %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: no se pudo obtener información de token: código de error %lu\n" -#: pg_ctl.c:1925 +#: pg_ctl.c:1937 #, c-format msgid "%s: out of memory\n" msgstr "%s: memoria agotada\n" -#: pg_ctl.c:1955 +#: pg_ctl.c:1967 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Use «%s --help» para obtener más información.\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" @@ -521,17 +526,17 @@ msgstr "" "un servidor PostgreSQL.\n" "\n" -#: pg_ctl.c:1964 +#: pg_ctl.c:1976 #, c-format msgid "Usage:\n" msgstr "Empleo:\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 DATADIR] [-s] [-o OPCIONES]\n" -#: pg_ctl.c:1966 +#: pg_ctl.c:1978 #, c-format msgid "" " %s start [-D DATADIR] [-l FILENAME] [-W] [-t SECS] [-s]\n" @@ -540,12 +545,12 @@ msgstr "" " %s start [-D DATADIR] [-l ARCHIVO] [-W] [-t SEGS] [-s]\n" " [-o OPCIONES] [-p RUTA] [-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 DATADIR] [-m MODO-DETENCIÓN] [-W] [-t SEGS] [-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" @@ -554,32 +559,32 @@ msgstr "" " %s restart [-D DATADIR] [-m MODO-DETENCIÓN] [-W] [-t SEGS] [-s]\n" " [-o OPCIONES]\n" -#: pg_ctl.c:1971 +#: pg_ctl.c:1983 #, c-format msgid " %s reload [-D DATADIR] [-s]\n" msgstr " %s reload [-D DATADIR] [-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 DATADIR] [-W] [-t SEGS] [-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 NOMBRE-SEÑAL ID-DE-PROCESO\n" -#: pg_ctl.c:1977 +#: pg_ctl.c:1989 #, c-format msgid "" " %s register [-D DATADIR] [-N SERVICENAME] [-U USERNAME] [-P PASSWORD]\n" @@ -588,12 +593,12 @@ msgstr "" " %s register [-D DATADIR] [-N SERVICIO] [-U USUARIO] [-P PASSWORD]\n" " [-S TIPO-INICIO] [-e ORIGEN] [-W] [-t SEGS] [-o OPCIONES]\n" -#: pg_ctl.c:1979 +#: pg_ctl.c:1991 #, c-format msgid " %s unregister [-N SERVICENAME]\n" msgstr " %s unregister [-N SERVICIO]\n" -#: pg_ctl.c:1982 +#: pg_ctl.c:1994 #, c-format msgid "" "\n" @@ -602,52 +607,52 @@ msgstr "" "\n" "Opciones comunes:\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 DATADIR ubicación del área de almacenamiento de datos\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 ORIGEN origen para el log de eventos cuando se ejecuta como servicio\n" -#: pg_ctl.c:1987 +#: pg_ctl.c:1999 #, c-format msgid " -s, --silent only print errors, no informational messages\n" msgstr " -s, --silent mostrar sólo errores, no mensajes de información\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=SEGS segundos a esperar cuando se use la opción -w\n" -#: pg_ctl.c:1989 +#: pg_ctl.c:2001 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión, luego salir\n" -#: pg_ctl.c:1990 +#: pg_ctl.c:2002 #, c-format msgid " -w, --wait wait until operation completes (default)\n" msgstr " -w, --wait esperar hasta que la operación se haya completado (por omisión)\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 no esperar hasta que la operación se haya completado\n" -#: pg_ctl.c:1992 +#: pg_ctl.c:2004 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda, luego salir\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 "Si la opción -D es omitida, se usa la variable de ambiente PGDATA.\n" -#: pg_ctl.c:1995 +#: pg_ctl.c:2007 #, c-format msgid "" "\n" @@ -656,24 +661,24 @@ msgstr "" "\n" "Opciones para inicio y reinicio:\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 permite que postgres produzca archivos\n" " de volcado (core)\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 no aplicable en esta plataforma\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=ARCHIVO guardar el registro del servidor en ARCHIVO.\n" -#: pg_ctl.c:2002 +#: pg_ctl.c:2014 #, c-format msgid "" " -o, --options=OPTIONS command line options to pass to postgres\n" @@ -682,12 +687,12 @@ msgstr "" " -o, --options=OPCIONES parámetros de línea de órdenes a pasar a postgres\n" " (ejecutable del servidor de PostgreSQL) o initdb\n" -#: pg_ctl.c:2004 +#: pg_ctl.c:2016 #, c-format msgid " -p PATH-TO-POSTGRES normally not necessary\n" msgstr " -p RUTA-A-POSTGRES normalmente no es necesario\n" -#: pg_ctl.c:2005 +#: pg_ctl.c:2017 #, c-format msgid "" "\n" @@ -696,12 +701,12 @@ msgstr "" "\n" "Opciones para detener o reiniciar:\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=MODO puede ser «smart», «fast» o «immediate»\n" -#: pg_ctl.c:2008 +#: pg_ctl.c:2020 #, c-format msgid "" "\n" @@ -710,24 +715,24 @@ msgstr "" "\n" "Modos de detención son:\n" -#: pg_ctl.c:2009 +#: pg_ctl.c:2021 #, c-format msgid " smart quit after all clients have disconnected\n" msgstr " smart salir después que todos los clientes se hayan desconectado\n" -#: pg_ctl.c:2010 +#: pg_ctl.c:2022 #, c-format msgid " fast quit directly, with proper shutdown (default)\n" msgstr " fast salir directamente, con apagado apropiado (por omisión)\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 salir sin apagado completo; se ejecutará recuperación\n" " en el próximo inicio\n" -#: pg_ctl.c:2013 +#: pg_ctl.c:2025 #, c-format msgid "" "\n" @@ -736,7 +741,7 @@ msgstr "" "\n" "Nombres de señales permitidos para kill:\n" -#: pg_ctl.c:2017 +#: pg_ctl.c:2029 #, c-format msgid "" "\n" @@ -745,35 +750,35 @@ msgstr "" "\n" "Opciones para registrar y dar de baja:\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 SERVICIO nombre de servicio con el cual registrar\n" " el servidor 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 CONTRASEÑA contraseña de la cuenta con la cual registrar\n" " el servidor 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 USUARIO nombre de usuario de la cuenta con la cual\n" " registrar el servidor 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 TIPO-INICIO tipo de inicio de servicio con que registrar\n" " el servidor PostgreSQL\n" -#: pg_ctl.c:2023 +#: pg_ctl.c:2035 #, c-format msgid "" "\n" @@ -782,17 +787,17 @@ msgstr "" "\n" "Tipos de inicio del servicio son:\n" -#: pg_ctl.c:2024 +#: pg_ctl.c:2036 #, c-format msgid " auto start service automatically during system startup (default)\n" msgstr " auto iniciar automáticamente al inicio del sistema (por omisión)\n" -#: pg_ctl.c:2025 +#: pg_ctl.c:2037 #, c-format msgid " demand start service on demand\n" msgstr " demand iniciar el servicio en demanda\n" -#: pg_ctl.c:2028 +#: pg_ctl.c:2040 #, c-format msgid "" "\n" @@ -801,37 +806,37 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_ctl.c:2029 +#: pg_ctl.c:2041 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_ctl.c:2054 +#: pg_ctl.c:2066 #, c-format msgid "%s: unrecognized shutdown mode \"%s\"\n" msgstr "%s: modo de apagado «%s» no reconocido\n" -#: pg_ctl.c:2083 +#: pg_ctl.c:2095 #, c-format msgid "%s: unrecognized signal name \"%s\"\n" msgstr "%s: nombre de señal «%s» no reconocido\n" -#: pg_ctl.c:2100 +#: pg_ctl.c:2112 #, c-format msgid "%s: unrecognized start type \"%s\"\n" msgstr "%s: tipo de inicio «%s» no reconocido\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: no se pudo determinar el directorio de datos usando la orden «%s»\n" -#: pg_ctl.c:2179 +#: pg_ctl.c:2191 #, c-format msgid "%s: control file appears to be corrupt\n" msgstr "%s: el archivo de control parece estar corrupto\n" -#: pg_ctl.c:2247 +#: pg_ctl.c:2259 #, c-format msgid "" "%s: cannot be run as root\n" @@ -842,32 +847,32 @@ msgstr "" "Por favor conéctese (usando, por ejemplo, «su») con un usuario no privilegiado,\n" "quien ejecutará el proceso servidor.\n" -#: pg_ctl.c:2319 +#: pg_ctl.c:2331 #, c-format msgid "%s: -S option not supported on this platform\n" msgstr "%s: la opción -S no está soportada en esta plataforma\n" -#: pg_ctl.c:2375 +#: pg_ctl.c:2387 #, c-format msgid "%s: missing arguments for kill mode\n" msgstr "%s: argumentos faltantes para envío de señal\n" -#: pg_ctl.c:2393 +#: pg_ctl.c:2405 #, c-format msgid "%s: unrecognized operation mode \"%s\"\n" msgstr "%s: modo de operación «%s» no reconocido\n" -#: pg_ctl.c:2402 +#: pg_ctl.c:2414 #, c-format msgid "%s: too many command-line arguments (first is \"%s\")\n" msgstr "%s: demasiados argumentos de línea de órdenes (el primero es «%s»)\n" -#: pg_ctl.c:2409 +#: pg_ctl.c:2421 #, c-format msgid "%s: no operation specified\n" msgstr "%s: no se especificó operación\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: no se especificó directorio de datos y la variable PGDATA no está definida\n" diff --git a/src/bin/pg_ctl/po/ko.po b/src/bin/pg_ctl/po/ko.po index e6f6e8ccb5691..a82ef54bb6654 100644 --- a/src/bin/pg_ctl/po/ko.po +++ b/src/bin/pg_ctl/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_ctl (PostgreSQL) 17\n" +"Project-Id-Version: pg_ctl (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:49+0000\n" -"PO-Revision-Date: 2025-01-16 14:12+0900\n" +"POT-Creation-Date: 2025-09-11 21:49+0000\n" +"PO-Revision-Date: 2025-09-09 12:53+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -39,33 +39,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" @@ -105,84 +105,84 @@ msgstr "하위 프로세스가 종료되었음, 시그널 %d: %s" 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: \"%s\" PID 파일을 열 수 없음: %m\n" -#: pg_ctl.c:292 +#: pg_ctl.c:293 #, c-format msgid "%s: the PID file \"%s\" is empty\n" msgstr "%s: \"%s\" PID 파일에 내용이 없습니다\n" -#: pg_ctl.c:295 +#: pg_ctl.c:296 #, c-format msgid "%s: invalid data in PID file \"%s\"\n" msgstr "%s: \"%s\" PID 파일이 비었음\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: stop 시그널을 보낼 수 없음 (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 " @@ -191,45 +191,49 @@ msgstr "" "\"%s\" 프로그램이 %s 작업에서 필요합니다. 그런데, 이 파일이\n" "\"%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\" 작업 때문에 찾았지만 이 파일은\n" "%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" @@ -238,42 +242,42 @@ 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: \"%s\" PID 파일이 없습니다\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: 서버 중지 실패; 단일 사용자 서버가 실행 중 (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" @@ -281,239 +285,239 @@ msgstr "" "힌트: \"-m fast\" 옵션을 사용하면 접속한 세션들을 즉시 정리합니다.\n" "이 옵션을 사용하지 않으면 접속한 세션들 스스로 끊을 때까지 기다립니다.\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: 서버를 다시 시작 할 수 없음; 단일사용자 서버가 실행 중임 (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: 서버 환경설정을 다시 불러올 수 없음; 단일 사용자 서버가 실행 중임 (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: reload 시그널을 보낼 수 없음 (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: 운영서버 전환 실패; 단일사용자 서버가 실행 중(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: restricted token을 만들 수 없음: 오류 코드 %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: 접근 권한용 LUID를 구할 수 없음: 오류 코드 %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" @@ -522,17 +526,17 @@ 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" @@ -541,12 +545,12 @@ 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" @@ -555,32 +559,32 @@ 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 데이터디렉터리]\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 데이터디렉터리] [-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" @@ -591,12 +595,12 @@ msgstr "" "호]\n" " [-S 시작형태] [-e SOURCE] [-w] [-t 초] [-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" @@ -605,56 +609,56 @@ 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 SOURCE 서비스가 실행 중일때 쌓을 로그를 위한 이벤트 소스\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" @@ -663,22 +667,22 @@ msgstr "" "\n" "start, restart 때 사용할 수 있는 옵션들:\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 코어 덤프 파일을 만듬\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" @@ -687,12 +691,12 @@ msgstr "" " -o, --options=옵션들 PostgreSQL 서버프로그램인 postgres나 initdb\n" " 명령에서 사용할 명령행 옵션들\n" -#: pg_ctl.c:2004 +#: pg_ctl.c:2016 #, c-format msgid " -p PATH-TO-POSTGRES normally not necessary\n" msgstr " -p PATH-TO-POSTGRES 보통은 필요치 않음\n" -#: pg_ctl.c:2005 +#: pg_ctl.c:2017 #, c-format msgid "" "\n" @@ -701,14 +705,14 @@ msgstr "" "\n" "stop, restart 때 사용 할 수 있는 옵션들:\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" @@ -717,18 +721,18 @@ 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 " @@ -736,7 +740,7 @@ msgid "" msgstr "" " immediate 그냥 무조건 중지함; 다시 시작할 때 복구 작업을 할 수도 있음\n" -#: pg_ctl.c:2013 +#: pg_ctl.c:2025 #, c-format msgid "" "\n" @@ -745,7 +749,7 @@ msgstr "" "\n" "사용할 수 있는 중지용(for kill) 시그널 이름:\n" -#: pg_ctl.c:2017 +#: pg_ctl.c:2029 #, c-format msgid "" "\n" @@ -754,28 +758,28 @@ 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 SERVICENAME 서비스 목록에 등록될 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 PASSWORD 이 서비스를 실행할 사용자의 암호\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 USERNAME 이 서비스를 실행할 사용자 이름\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" @@ -784,18 +788,18 @@ 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" @@ -804,37 +808,37 @@ 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" @@ -845,32 +849,32 @@ msgstr "" "시스템관리자 권한이 없는, 서버프로세스의 소유주가 될 일반 사용자로\n" "로그인 해서(\"su\", \"runas\" 같은 명령 이용) 실행하십시오.\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" diff --git a/src/bin/pg_ctl/po/ru.po b/src/bin/pg_ctl/po/ru.po index 37259586e8b29..77ce8b4a9f246 100644 --- a/src/bin/pg_ctl/po/ru.po +++ b/src/bin/pg_ctl/po/ru.po @@ -6,13 +6,13 @@ # Sergey Burladyan , 2009, 2012. # Andrey Sudnik , 2010. # Dmitriy Olshevskiy , 2014. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_ctl (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: 2024-09-07 06:47+0300\n" +"PO-Revision-Date: 2025-09-13 17:07+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -238,7 +238,7 @@ msgstr "%s: сервер не запустился за отведённое в #: pg_ctl.c:1004 msgid "server shut down because of recovery target settings\n" -msgstr "" +msgstr "сервер остановлен согласно заданной цели восстановления\n" #: pg_ctl.c:1008 #, c-format diff --git a/src/bin/pg_dump/po/de.po b/src/bin/pg_dump/po/de.po index 1e2c60fd23960..fafc54fefba36 100644 --- a/src/bin/pg_dump/po/de.po +++ b/src/bin/pg_dump/po/de.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-08-25 17:22+0000\n" -"PO-Revision-Date: 2025-08-25 22:08+0200\n" +"POT-Creation-Date: 2025-09-05 07:52+0000\n" +"PO-Revision-Date: 2025-09-05 14:09+0200\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -38,9 +38,9 @@ msgid "hint: " msgstr "Tipp: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:413 compress_gzip.c:420 -#: compress_io.c:108 compress_lz4.c:780 compress_lz4.c:787 compress_zstd.c:25 -#: compress_zstd.c:31 +#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: 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 "diese Installation unterstützt keine Komprimierung mit %s" @@ -481,7 +481,7 @@ msgstr "konnte Komprimierungsbibliothek nicht initialisieren: %s" msgid "could not close compression stream: %s" msgstr "konnte Komprimierungsstrom nicht schließen: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "konnte Daten nicht komprimieren: %s" @@ -496,75 +496,105 @@ msgstr "konnte Daten nicht dekomprimieren: %s" msgid "could not close compression library: %s" msgstr "konnte Komprimierungsbibliothek nicht schließen: %s" -#: compress_gzip.c:266 compress_lz4.c:608 compress_lz4.c:628 compress_lz4.c:647 +#: compress_gzip.c:277 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:295 compress_none.c:97 compress_none.c:139 -#: compress_zstd.c:375 pg_backup_custom.c:650 +#: compress_gzip.c:294 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_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:297 compress_lz4.c:630 compress_none.c:141 -#: compress_zstd.c:373 pg_backup_custom.c:648 pg_backup_directory.c:538 +#: compress_gzip.c:312 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 "konnte nicht aus Eingabedatei lesen: Dateiende" -#: compress_lz4.c:157 +#: compress_lz4.c:158 #, c-format msgid "could not create LZ4 decompression context: %s" msgstr "konnte LZ4-Dekomprimierungskontext nicht erzeugen: %s" -#: compress_lz4.c:180 +#: compress_lz4.c:181 #, c-format msgid "could not decompress: %s" msgstr "konnte nicht dekomprimieren: %s" -#: compress_lz4.c:193 +#: compress_lz4.c:194 #, c-format msgid "could not free LZ4 decompression context: %s" msgstr "konnte LZ4-Dekomprimierungskontext nicht freigeben: %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 "konnte Komprimierung nicht beenden: %s" -#: compress_lz4.c:301 +#: compress_lz4.c:302 #, c-format msgid "could not initialize LZ4 compression: %s" msgstr "konnte LZ4-Komprimierung nicht initialisieren: %s" -#: compress_lz4.c:697 +#: compress_lz4.c:463 compress_lz4.c:581 +#, c-format +msgid "unable to initialize LZ4 library: %s" +msgstr "konnte LZ4-Bibliothek nicht initialisieren: %s" + +#: compress_lz4.c:593 +#, c-format +msgid "error during writing: %s" +msgstr "Fehler beim Schreiben: %s" + +#: compress_lz4.c:599 +#, c-format +msgid "error during writing: %m" +msgstr "Fehler beim Schreiben: %m" + +#: compress_lz4.c:698 +#, c-format +msgid "could not write to output file: %m" +msgstr "konnte nicht in Ausgabedatei schreiben: %m" + +#: compress_lz4.c:711 #, c-format msgid "could not end decompression: %s" msgstr "konnte Dekomprimierung nicht beenden: %s" -#: compress_zstd.c:66 +#: compress_lz4.c:726 compress_none.c:156 +#, c-format +msgid "could not close file: %m" +msgstr "konnte Datei nicht schließen: %m" + +#: compress_none.c:109 compress_zstd.c:389 +#, c-format +msgid "could not write to file: %m" +msgstr "konnte nicht in Datei schreiben: %m" + +#: compress_zstd.c:67 #, c-format msgid "could not set compression parameter \"%s\": %s" msgstr "konnte Komprimierungsparameter »%s« nicht setzen: %s" -#: compress_zstd.c:78 compress_zstd.c:233 compress_zstd.c:492 -#: compress_zstd.c:500 +#: 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 "konnte Komprimierungsbibliothek nicht initialisieren" -#: compress_zstd.c:196 compress_zstd.c:310 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "konnte Daten nicht dekomprimieren: %s" -#: compress_zstd.c:503 -#, c-format -msgid "unhandled mode \"%s\"" -msgstr "unbehandelter Modus »%s«" - #: connectdb.c:56 connectdb.c:165 pg_backup_db.c:126 msgid "Password: " msgstr "Passwort: " @@ -907,14 +937,14 @@ msgid "could not find entry for ID %d" msgstr "konnte Eintrag für ID %d nicht finden" #: pg_backup_archiver.c:1639 pg_backup_directory.c:187 -#: pg_backup_directory.c:586 +#: pg_backup_directory.c:563 #, c-format msgid "could not close TOC file: %m" 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:573 pg_backup_directory.c:639 -#: pg_backup_directory.c:657 pg_dumpall.c:548 +#: pg_backup_directory.c:550 pg_backup_directory.c:616 +#: pg_backup_directory.c:634 pg_dumpall.c:548 #, c-format msgid "could not open output file \"%s\": %m" msgstr "konnte Ausgabedatei »%s« nicht öffnen: %m" @@ -987,7 +1017,7 @@ msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does msgstr "Verzeichnis »%s« scheint kein gültiges Archiv zu sein (»toc.dat« existiert nicht)" #: pg_backup_archiver.c:2293 pg_backup_custom.c:168 pg_backup_custom.c:813 -#: pg_backup_directory.c:172 pg_backup_directory.c:364 +#: pg_backup_directory.c:172 pg_backup_directory.c:358 #, c-format msgid "could not open input file \"%s\": %m" msgstr "konnte Eingabedatei »%s« nicht öffnen: %m" @@ -1344,58 +1374,47 @@ msgstr "konnte Datenbanktransaktion nicht beenden" msgid "no output directory specified" msgstr "kein Ausgabeverzeichnis angegeben" -#: pg_backup_directory.c:325 pg_backup_directory.c:479 -#: pg_backup_directory.c:517 -#, c-format -msgid "could not write to output file: %s" -msgstr "konnte nicht in Ausgabedatei schreiben: %s" - -#: pg_backup_directory.c:343 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "konnte Datendatei nicht schließen: %m" -#: pg_backup_directory.c:376 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "konnte Datendatei »%s« nicht schließen: %m" -#: pg_backup_directory.c:428 +#: pg_backup_directory.c:422 #, c-format msgid "could not open large object TOC file \"%s\" for input: %m" msgstr "konnte Large-Object-Inhaltsverzeichnisdatei »%s« nicht zur Eingabe öffnen: %m" -#: pg_backup_directory.c:439 +#: pg_backup_directory.c:433 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" msgstr "ungültige Zeile in Large-Object-Inhaltsverzeichnisdatei »%s«: %s" -#: pg_backup_directory.c:448 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "Fehler beim Lesen von Large-Object-Inhaltsverzeichnisdatei »%s«" -#: pg_backup_directory.c:452 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "konnte Large-Object-Inhaltsverzeichnisdatei »%s« nicht schließen: %m" -#: pg_backup_directory.c:675 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" msgstr "konnte LO-Datendatei nicht schließen: %m" -#: pg_backup_directory.c:685 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "konnte nicht in LOs-Inhaltsverzeichnisdatei schreiben: %s" - -#: pg_backup_directory.c:701 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" msgstr "konnte LOs-Inhaltsverzeichnisdatei nicht schließen: %m" -#: pg_backup_directory.c:720 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "Dateiname zu lang: »%s«" diff --git a/src/bin/pg_dump/po/es.po b/src/bin/pg_dump/po/es.po index b40afd89881bb..6b79b0db96b9a 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-02-16 19:51+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:51+0000\n" +"PO-Revision-Date: 2025-09-21 13:44+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -22,30 +22,30 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " #: ../../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:428 compress_gzip.c:435 +#: 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 "esta instalación no soporta compresión con %s" @@ -114,27 +114,27 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "no se pudo resolver la ruta «%s» a forma absoluta: %m" -#: ../../common/exec.c:382 +#: ../../common/exec.c:363 #, c-format msgid "could not execute command \"%s\": %m" msgstr "no se pudo ejecutar la orden «%s»: %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "no se pudo leer desde la orden «%s»: %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../../common/exec.c:424 parallel.c:1609 +#: ../../common/exec.c:405 parallel.c:1611 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %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 "memoria agotada" @@ -149,45 +149,44 @@ 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: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 "no se pudo abrir el archivo «%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 "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%s»" -#: ../../common/file_utils.c:151 ../../common/file_utils.c:281 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 #, c-format msgid "could not open directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -247,232 +246,232 @@ msgstr "el argumento de la orden de shell contiene un salto de línea o retorno msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "el nombre de base de datos contiene un salto de línea o retorno de carro: «%s»\n" -#: common.c:135 +#: common.c:112 #, c-format msgid "reading extensions" msgstr "leyendo las extensiones" -#: common.c:138 +#: common.c:115 #, c-format msgid "identifying extension members" msgstr "identificando miembros de extensión" -#: common.c:141 +#: common.c:118 #, c-format msgid "reading schemas" msgstr "leyendo esquemas" -#: common.c:150 +#: common.c:127 #, c-format msgid "reading user-defined tables" msgstr "leyendo las tablas definidas por el usuario" -#: common.c:155 +#: common.c:132 #, c-format msgid "reading user-defined functions" msgstr "leyendo las funciones definidas por el usuario" -#: common.c:159 +#: common.c:136 #, c-format msgid "reading user-defined types" msgstr "leyendo los tipos definidos por el usuario" -#: common.c:163 +#: common.c:140 #, c-format msgid "reading procedural languages" msgstr "leyendo los lenguajes procedurales" -#: common.c:166 +#: common.c:143 #, c-format msgid "reading user-defined aggregate functions" msgstr "leyendo las funciones de agregación definidas por el usuario" -#: common.c:169 +#: common.c:146 #, c-format msgid "reading user-defined operators" msgstr "leyendo los operadores definidos por el usuario" -#: common.c:172 +#: common.c:149 #, c-format msgid "reading user-defined access methods" msgstr "leyendo los métodos de acceso definidos por el usuario" -#: common.c:175 +#: common.c:152 #, c-format msgid "reading user-defined operator classes" msgstr "leyendo las clases de operadores definidos por el usuario" -#: common.c:178 +#: common.c:155 #, c-format msgid "reading user-defined operator families" msgstr "leyendo las familias de operadores definidas por el usuario" -#: common.c:181 +#: common.c:158 #, c-format msgid "reading user-defined text search parsers" msgstr "leyendo los procesadores (parsers) de búsqueda en texto definidos por el usuario" -#: common.c:184 +#: common.c:161 #, c-format msgid "reading user-defined text search templates" msgstr "leyendo las plantillas de búsqueda en texto definidas por el usuario" -#: common.c:187 +#: common.c:164 #, c-format msgid "reading user-defined text search dictionaries" msgstr "leyendo los diccionarios de búsqueda en texto definidos por el usuario" -#: common.c:190 +#: common.c:167 #, c-format msgid "reading user-defined text search configurations" msgstr "leyendo las configuraciones de búsqueda en texto definidas por el usuario" -#: common.c:193 +#: common.c:170 #, c-format msgid "reading user-defined foreign-data wrappers" msgstr "leyendo los conectores de datos externos definidos por el usuario" -#: common.c:196 +#: common.c:173 #, c-format msgid "reading user-defined foreign servers" msgstr "leyendo los servidores foráneos definidas por el usuario" -#: common.c:199 +#: common.c:176 #, c-format msgid "reading default privileges" msgstr "leyendo los privilegios por omisión" -#: common.c:202 +#: common.c:179 #, c-format msgid "reading user-defined collations" msgstr "leyendo los ordenamientos definidos por el usuario" -#: common.c:205 +#: common.c:182 #, c-format msgid "reading user-defined conversions" msgstr "leyendo las conversiones definidas por el usuario" -#: common.c:208 +#: common.c:185 #, c-format msgid "reading type casts" msgstr "leyendo conversiones de tipo" -#: common.c:211 +#: common.c:188 #, c-format msgid "reading transforms" msgstr "leyendo las transformaciones" -#: common.c:214 +#: common.c:191 #, c-format msgid "reading table inheritance information" msgstr "leyendo la información de herencia de las tablas" -#: common.c:217 +#: common.c:194 #, c-format msgid "reading event triggers" msgstr "leyendo los disparadores por eventos" -#: common.c:221 +#: common.c:198 #, c-format msgid "finding extension tables" msgstr "buscando tablas de extensión" -#: common.c:225 +#: common.c:202 #, c-format msgid "finding inheritance relationships" msgstr "buscando relaciones de herencia" -#: common.c:228 +#: common.c:205 #, c-format msgid "reading column info for interesting tables" msgstr "leyendo la información de columnas para las tablas interesantes" -#: common.c:231 +#: common.c:208 #, c-format msgid "flagging inherited columns in subtables" msgstr "marcando las columnas heredadas en las subtablas" -#: common.c:234 +#: common.c:211 #, c-format msgid "reading partitioning data" msgstr "leyendo datos de particionamiento" -#: common.c:237 +#: common.c:214 #, c-format msgid "reading indexes" msgstr "leyendo los índices" -#: common.c:240 +#: common.c:217 #, c-format msgid "flagging indexes in partitioned tables" msgstr "marcando índices en las tablas particionadas" -#: common.c:243 +#: common.c:220 #, c-format msgid "reading extended statistics" msgstr "leyendo estadísticas extendidas" -#: common.c:246 +#: common.c:223 #, c-format msgid "reading constraints" msgstr "leyendo las restricciones" -#: common.c:249 +#: common.c:226 #, c-format msgid "reading triggers" msgstr "leyendo los disparadores (triggers)" -#: common.c:252 +#: common.c:229 #, c-format msgid "reading rewrite rules" msgstr "leyendo las reglas de reescritura" -#: common.c:255 +#: common.c:232 #, c-format msgid "reading policies" msgstr "leyendo políticas" -#: common.c:258 +#: common.c:235 #, c-format msgid "reading publications" msgstr "leyendo publicaciones" -#: common.c:261 +#: common.c:238 #, c-format msgid "reading publication membership of tables" msgstr "leyendo membresía de tablas en publicaciones" -#: common.c:264 +#: common.c:241 #, c-format msgid "reading publication membership of schemas" msgstr "leyendo membresía de esquemas en publicaciones" -#: common.c:267 +#: common.c:244 #, c-format msgid "reading subscriptions" msgstr "leyendo las suscripciones" -#: common.c:270 +#: common.c:247 #, c-format msgid "reading subscription membership of tables" msgstr "leyendo membresía de tablas en suscripciones" -#: common.c:333 +#: common.c:310 #, c-format msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found" msgstr "falló la revisión de integridad, el OID %u del padre de la tabla «%s» (OID %u) no se encontró" -#: common.c:375 +#: common.c:352 #, c-format msgid "invalid number of parents %d for table \"%s\"" msgstr "número de padres %d para la tabla «%s» no es válido" -#: common.c:1098 +#: common.c:1128 #, c-format msgid "could not parse numeric array \"%s\": too many numbers" msgstr "no se pudo interpretar el arreglo numérico «%s»: demasiados números" -#: common.c:1110 +#: common.c:1140 #, c-format msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "no se pudo interpretar el arreglo numérico «%s»: carácter no válido en número" @@ -487,7 +486,7 @@ msgstr "no se pudo inicializar la biblioteca de compresión: %s" msgid "could not close compression stream: %s" msgstr "no se pudo cerrar el flujo comprimido: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "no se pudo comprimir datos: %s" @@ -502,151 +501,254 @@ msgstr "no se pudo descomprimir datos: %s" msgid "could not close compression library: %s" msgstr "no se pudo cerrar la biblioteca de compresión: %s" -#: compress_gzip.c:266 compress_lz4.c:608 compress_lz4.c:628 compress_lz4.c:647 +#: compress_gzip.c:277 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "no se pudo leer el archivo de entrada: %s" -#: compress_gzip.c:295 compress_none.c:97 compress_none.c:139 -#: compress_zstd.c:374 pg_backup_custom.c:651 +#: compress_gzip.c:294 compress_zstd.c:382 +#, c-format +#| msgid "could not write to file \"%s\": %s" +msgid "could not write to file: %s" +msgstr "no se pudo escribir al archivo: %s" + +#: compress_gzip.c:310 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 "no se pudo leer el archivo de entrada: %m" -#: compress_gzip.c:297 compress_lz4.c:630 compress_none.c:141 -#: compress_zstd.c:372 pg_backup_custom.c:649 pg_backup_directory.c:565 +#: compress_gzip.c:312 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 "no se pudo leer desde el archivo de entrada: fin de archivo" -#: compress_lz4.c:157 +#: compress_lz4.c:158 #, c-format msgid "could not create LZ4 decompression context: %s" msgstr "no se pudo crear un contexto de descompresión LZ4: %s" -#: compress_lz4.c:180 +#: compress_lz4.c:181 #, c-format msgid "could not decompress: %s" msgstr "no se pudo descomprimir: %s" -#: compress_lz4.c:193 +#: compress_lz4.c:194 #, c-format msgid "could not free LZ4 decompression context: %s" msgstr "no se pudo liberar el contexto de descompresión 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 "no se pudo terminar la compresión: %s" -#: compress_lz4.c:301 +#: compress_lz4.c:302 #, c-format msgid "could not initialize LZ4 compression: %s" msgstr "no se pudo inicializar la compresión LZ4: %s" -#: compress_lz4.c:697 +#: compress_lz4.c:463 compress_lz4.c:581 +#, c-format +#| msgid "could not initialize XML library" +msgid "unable to initialize LZ4 library: %s" +msgstr "no se pudo inicializar la biblioteca LZ4: %s" + +#: compress_lz4.c:593 +#, c-format +#| msgid "error during file seek: %m" +msgid "error during writing: %s" +msgstr "error durante escritura: %s" + +#: compress_lz4.c:599 +#, c-format +#| msgid "error during file seek: %m" +msgid "error during writing: %m" +msgstr "error durante escritura: %m" + +#: compress_lz4.c:698 +#, c-format +#| msgid "could not write to output file: %s" +msgid "could not write to output file: %m" +msgstr "no se pudo escribir al archivo de salida: %m" + +#: compress_lz4.c:711 #, c-format msgid "could not end decompression: %s" msgstr "no se pudo terminar la descompresión: %s" -#: compress_zstd.c:66 +#: compress_lz4.c:726 compress_none.c:156 +#, c-format +#| msgid "could not close TOC file: %m" +msgid "could not close file: %m" +msgstr "no se pudo cerrar el archivo: %m" + +#: compress_none.c:109 compress_zstd.c:389 +#, c-format +#| msgid "could not write to COPY file: %m" +msgid "could not write to file: %m" +msgstr "no se pudo escribir al archivo: %m" + +#: compress_zstd.c:67 #, c-format msgid "could not set compression parameter \"%s\": %s" msgstr "no se pudo definir el parámetro de compresión «%s»: %s" -#: compress_zstd.c:78 compress_zstd.c:232 compress_zstd.c:491 -#: compress_zstd.c:499 +#: 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 "no se pudo inicializar la biblioteca de compresión" -#: compress_zstd.c:195 compress_zstd.c:309 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "no se pudo descomprimir datos: %s" -#: compress_zstd.c:502 +#: connectdb.c:56 connectdb.c:165 pg_backup_db.c:126 +msgid "Password: " +msgstr "Contraseña: " + +#: 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 +#, c-format +msgid "%s" +msgstr "%s" + +#: connectdb.c:157 pg_dumpall.c:514 #, c-format -msgid "unhandled mode \"%s\"" -msgstr "modo «%s» sin manejar" +msgid "could not connect to database \"%s\"" +msgstr "no se pudo establecer la conexión a la base de datos «%s»" + +#: connectdb.c:201 +#, c-format +msgid "could not get server version" +msgstr "no se pudo obtener la versión del servidor" + +#: connectdb.c:205 +#, c-format +msgid "could not parse server version \"%s\"" +msgstr "no se pudo interpretar la versión del servidor «%s»" -#: filter.c:49 +#: connectdb.c:222 pg_backup_db.c:52 +#, c-format +msgid "aborting because of server version mismatch" +msgstr "abortando debido a que no coincide la versión del servidor" + +#: connectdb.c:223 pg_backup_db.c:53 +#, c-format +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 +#, c-format +msgid "executing %s" +msgstr "ejecutando %s" + +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#, c-format +msgid "query failed: %s" +msgstr "la consulta falló: %s" + +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#, c-format +msgid "Query was: %s" +msgstr "La consulta era: %s" + +#: dumputils.c:948 +#, c-format +msgid "could not create directory \"%s\": %m" +msgstr "no se pudo crear el directorio «%s»: %m" + +#: dumputils.c:953 +#, 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 +#, c-format +#| msgid "directory \"%s\" exists but is not empty" +msgid "directory \"%s\" is not empty" +msgstr "el directorio «%s» no está vacío" + +#: filter.c:48 #, c-format msgid "could not open filter file \"%s\": %m" msgstr "no se pudo abrir el archivo de filtro «%s»: %m" -#: filter.c:72 +#: filter.c:71 #, c-format msgid "could not close filter file \"%s\": %m" msgstr "no se pudo cerrar el archivo de filtro «%s»: %m" -#: filter.c:165 +#: filter.c:164 #, c-format msgid "invalid format in filter read from standard input on line %d: %s" msgstr "formato inválido en filtro leído desde entrada estándar en línea %d: %s" -#: filter.c:168 +#: filter.c:167 #, c-format msgid "invalid format in filter read from file \"%s\" on line %d: %s" msgstr "sintaxis no válida en filtro leído desde archivo «%s», línea %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 "no se pudo leer el archivo de filtro «%s»: %m" -#: filter.c:244 +#: filter.c:246 msgid "unexpected end of file" msgstr "fin de archivo inesperado" -#: filter.c:311 +#: filter.c:313 msgid "missing object name pattern" msgstr "falta el parámetro de nombre de objeto" -#: filter.c:422 +#: filter.c:424 msgid "no filter command found (expected \"include\" or \"exclude\")" msgstr "no se encontró orden de filtro (se esperaba «include» o «include»)" -#: filter.c:433 +#: filter.c:435 msgid "invalid filter command (expected \"include\" or \"exclude\")" msgstr "orden de filtro no válida (se esperaba «include» o «exclude»)" -#: filter.c:440 +#: filter.c:442 msgid "missing filter object type" msgstr "falta el parámetro de tipo de objeto" -#: filter.c:447 +#: filter.c:449 #, c-format msgid "unsupported filter object type: \"%.*s\"" msgstr "tipo de objeto de filtro «%.*s» no soportado" -#: parallel.c:251 +#: parallel.c:253 #, c-format msgid "%s() failed: error code %d" msgstr "%s() falló: código de error %d" -#: parallel.c:959 +#: parallel.c:961 #, c-format msgid "could not create communication channels: %m" msgstr "no se pudo crear los canales de comunicación: %m" -#: parallel.c:1016 +#: parallel.c:1018 #, c-format msgid "could not create worker process: %m" msgstr "no se pudo crear el proceso hijo: %m" -#: parallel.c:1146 +#: parallel.c:1148 #, c-format msgid "unrecognized command received from leader: \"%s\"" msgstr "orden no reconocida recibida del servidor principal: «%s»" -#: parallel.c:1189 parallel.c:1427 +#: parallel.c:1191 parallel.c:1429 #, c-format msgid "invalid message received from worker: \"%s\"" msgstr "mensaje no válido recibido del proceso hijo: «%s»" -#: parallel.c:1321 +#: parallel.c:1323 #, c-format msgid "" "could not obtain lock on relation \"%s\"\n" @@ -655,727 +757,679 @@ msgstr "" "no se pudo obtener un lock en la relación «%s»\n" "Esto normalmente significa que alguien solicitó un lock ACCESS EXCLUSIVE en la tabla después de que el proceso pg_dump padre había obtenido el lock ACCESS SHARE en la tabla." -#: parallel.c:1410 +#: parallel.c:1412 #, c-format msgid "a worker process died unexpectedly" msgstr "un proceso hijo murió inesperadamente" -#: parallel.c:1532 parallel.c:1650 +#: parallel.c:1534 parallel.c:1652 #, c-format msgid "could not write to the communication channel: %m" msgstr "no se pudo escribir al canal de comunicación: %m" -#: parallel.c:1734 +#: parallel.c:1736 #, c-format msgid "pgpipe: could not create socket: error code %d" msgstr "pgpipe: no se pudo crear el socket: código de error %d" -#: parallel.c:1745 +#: parallel.c:1747 #, c-format msgid "pgpipe: could not bind: error code %d" msgstr "pgpipe: no se pudo enlazar: código de error %d" -#: parallel.c:1752 +#: parallel.c:1754 #, c-format msgid "pgpipe: could not listen: error code %d" msgstr "pgpipe: no se pudo escuchar: código de error %d" -#: parallel.c:1759 +#: parallel.c:1761 #, c-format msgid "pgpipe: %s() failed: error code %d" msgstr "pgpipe: %s() falló: código de error %d" -#: parallel.c:1770 +#: parallel.c:1772 #, c-format msgid "pgpipe: could not create second socket: error code %d" msgstr "pgpipe: no se pudo crear el segundo socket: código de error %d" -#: parallel.c:1779 +#: parallel.c:1781 #, c-format msgid "pgpipe: could not connect socket: error code %d" msgstr "pgpipe: no se pudo conectar el socket: código de error %d" -#: parallel.c:1788 +#: parallel.c:1790 #, c-format msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: no se pudo aceptar la conexión: código de error %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 "no se pudo cerrar el archivo de salida: %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 "elementos del archivo no están en el orden correcto de secciones" -#: pg_backup_archiver.c:315 +#: pg_backup_archiver.c:323 #, c-format msgid "unexpected section code %d" msgstr "código de sección %d inesperado" -#: pg_backup_archiver.c:352 +#: pg_backup_archiver.c:360 #, c-format msgid "parallel restore is not supported with this archive file format" msgstr "la restauración en paralelo no está soportada con este formato de archivo" -#: 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 "la restauración en paralelo no está soportada con archivos construidos con pg_dump anterior a 8.0" -#: pg_backup_archiver.c:377 +#: pg_backup_archiver.c:385 #, c-format msgid "cannot restore from compressed archive (%s)" msgstr "no se puede restaurar del archivo comprimido (%s)" -#: pg_backup_archiver.c:397 +#: pg_backup_archiver.c:405 #, c-format msgid "connecting to database for restore" msgstr "conectando a la base de datos para reestablecimiento" -#: 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 "las conexiones directas a la base de datos no están soportadas en archivadores pre-1.3" -#: pg_backup_archiver.c:442 +#: pg_backup_archiver.c:450 #, c-format -msgid "implied data-only restore" -msgstr "asumiendo reestablecimiento de sólo datos" +#| msgid "implied data-only restore" +msgid "implied no-schema restore" +msgstr "asumiendo reestablecimiento sin “schema”" -#: pg_backup_archiver.c:510 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "eliminando %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 "no se pudo encontrar dónde insertar IF EXISTS en la sentencia «%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 "precaución desde el archivo original: %s" -#: pg_backup_archiver.c:864 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "creando %s «%s.%s»" -#: pg_backup_archiver.c:867 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "creando %s «%s»" -#: pg_backup_archiver.c:917 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "conectando a nueva base de datos «%s»" -#: pg_backup_archiver.c:944 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "procesando %s" -#: pg_backup_archiver.c:966 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "procesando datos de la tabla «%s.%s»" -#: pg_backup_archiver.c:1036 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "ejecutando %s %s" -#: pg_backup_archiver.c:1096 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "deshabilitando disparadores (triggers) para %s" -#: pg_backup_archiver.c:1122 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "habilitando disparadores (triggers) para %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 "error interno -- WriteData no puede ser llamada fuera del contexto de una rutina DataDumper" -#: pg_backup_archiver.c:1379 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "la extracción de objetos grandes no está soportada en el formato seleccionado" -#: pg_backup_archiver.c:1442 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "se reestableció %d objeto grande" msgstr[1] "se reestablecieron %d objetos grandes" -#: 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 "reestableciendo objeto grande con OID %u" -#: pg_backup_archiver.c:1481 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "no se pudo crear el objeto grande %u: %s" -#: pg_backup_archiver.c:1486 pg_dump.c:3889 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "no se pudo abrir el objeto grande %u: %s" -#: pg_backup_archiver.c:1542 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" msgstr "no se pudo abrir el archivo TOC «%s»: %m" -#: pg_backup_archiver.c:1570 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "línea ignorada: %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 "no se pudo encontrar una entrada para el 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 "no se pudo cerrar el archivo 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:548 #, c-format msgid "could not open output file \"%s\": %m" msgstr "no se pudo abrir el archivo de salida «%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 "no se pudo abrir el archivo de salida: %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)" msgstr[0] "se escribió %zu byte de los datos del objeto grande (resultado = %d)" msgstr[1] "se escribieron %zu bytes de los datos del objeto grande (resultado = %d)" -#: pg_backup_archiver.c:1778 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "no se pudo escribir en objeto grande: %s" -#: pg_backup_archiver.c:1868 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" msgstr "durante INICIALIZACIÓN:" -#: pg_backup_archiver.c:1873 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" -msgstr "durante PROCESAMIENTO DE TABLA DE CONTENIDOS:" +msgstr "durante PROCESAMIENTO DE LA TOC:" -#: pg_backup_archiver.c:1878 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" msgstr "durante FINALIZACIÓN:" -#: pg_backup_archiver.c:1883 +#: pg_backup_archiver.c:1922 #, c-format msgid "from TOC entry %d; %u %u %s %s %s" -msgstr "en entrada de la tabla de contenidos %d; %u %u %s %s %s" +msgstr "en entrada de la TOC %d; %u %u %s %s %s" -#: pg_backup_archiver.c:1959 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "dumpId incorrecto" -#: pg_backup_archiver.c:1980 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "dumpId de tabla incorrecto para elemento TABLE DATA" -#: pg_backup_archiver.c:2072 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "bandera de posición inesperada %d" -#: pg_backup_archiver.c:2085 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "el posición en el archivo es demasiado grande" -#: pg_backup_archiver.c:2196 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "nombre de directorio demasiado largo: «%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 "el directorio «%s» no parece ser un archivador válido (no existe «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 "no se pudo abrir el archivo de entrada «%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 "no se pudo abrir el archivo de entrada: %m" -#: pg_backup_archiver.c:2267 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "no se pudo leer el archivo de entrada: %m" -#: pg_backup_archiver.c:2269 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "el archivo de entrada es demasiado corto (leidos %lu, esperados 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 "el archivo de entrada parece ser un volcado de texto. Por favor use 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 "el archivo de entrada no parece ser un archivador válido (¿demasiado corto?)" -#: pg_backup_archiver.c:2313 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "el archivo de entrada no parece ser un archivador válido" -#: pg_backup_archiver.c:2322 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "no se pudo cerrar el archivo de entrada: %m" -#: pg_backup_archiver.c:2401 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "no se pudo abrir stdout para agregar datos: %m" -#: pg_backup_archiver.c:2446 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "formato de archivo no reconocido «%d»" -#: pg_backup_archiver.c:2527 pg_backup_archiver.c:4648 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4797 #, c-format msgid "finished item %d %s %s" msgstr "terminó el elemento %d %s %s" -#: pg_backup_archiver.c:2531 pg_backup_archiver.c:4661 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4810 #, c-format msgid "worker process failed: exit code %d" msgstr "el proceso hijo falló: código de salida %d" -#: pg_backup_archiver.c:2653 +#: pg_backup_archiver.c:2668 +#, c-format +msgid "unexpected TOC entry in WriteToc(): %d %s %s" +msgstr "entrada de TOC inesperada en 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 "error durante el posicionamiento (seek) en el archivo: %m" + +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" -msgstr "la entrada con ID %d está fuera de rango -- tal vez la tabla de contenido está corrupta" +msgstr "la entrada con ID %d está fuera de rango -- tal vez la TOC está corrupta" -#: pg_backup_archiver.c:2736 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "restaurar tablas WITH OIDS ya no está soportado" -#: pg_backup_archiver.c:2818 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "no se reconoce la codificación: «%s»" -#: pg_backup_archiver.c:2824 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" msgstr "elemento ENCODING no válido: %s" -#: pg_backup_archiver.c:2842 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" msgstr "elemento STDSTRINGS no válido: %s" -#: pg_backup_archiver.c:2867 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "esquema «%s» no encontrado" -#: pg_backup_archiver.c:2874 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "tabla «%s» no encontrada" -#: pg_backup_archiver.c:2881 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "índice «%s» no encontrado" -#: pg_backup_archiver.c:2888 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "función «%s» no encontrada" -#: pg_backup_archiver.c:2895 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "disparador «%s» no encontrado" -#: pg_backup_archiver.c:3326 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "no se pudo establecer el usuario de sesión a «%s»: %s" -#: pg_backup_archiver.c:3458 +#: pg_backup_archiver.c:3611 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "no se pudo definir «search_path» a «%s»: %s" -#: pg_backup_archiver.c:3519 +#: pg_backup_archiver.c:3672 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "no se pudo definir «default_tablespace» a %s: %s" -#: pg_backup_archiver.c:3568 +#: pg_backup_archiver.c:3721 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "no se pudo definir «default_table_access_method»: %s" -#: pg_backup_archiver.c:3617 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "no se pudo alterar el método de acceso a tabla: %s" -#: pg_backup_archiver.c:3718 +#: pg_backup_archiver.c:3871 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "no se sabe cómo establecer el dueño para el objeto de tipo «%s»" -#: pg_backup_archiver.c:4005 +#: pg_backup_archiver.c:4006 +#, c-format +msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" +msgstr "entrada de TOC inesperada en _printTocEntry(): %d %s %s" + +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "no se encontró la cadena mágica en el encabezado del archivo" -#: pg_backup_archiver.c:4019 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "versión no soportada (%d.%d) en el encabezado del archivo" -#: pg_backup_archiver.c:4024 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "revisión de integridad en el tamaño del entero (%lu) falló" -#: pg_backup_archiver.c:4028 +#: pg_backup_archiver.c:4177 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "el archivador fue hecho en una máquina con enteros más grandes, algunas operaciones podrían fallar" -#: pg_backup_archiver.c:4038 +#: pg_backup_archiver.c:4187 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "el formato esperado (%d) difiere del formato encontrado en el archivo (%d)" -#: pg_backup_archiver.c:4060 +#: 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 "el archivo está comprimido, pero esta instalación no soporta compresión (%s) -- los datos no estarán disponibles" -#: pg_backup_archiver.c:4096 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "la fecha de creación en el encabezado no es válida" -#: pg_backup_archiver.c:4230 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "procesando el elemento %d %s %s" -#: pg_backup_archiver.c:4315 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "ingresando al bucle paralelo principal" -#: pg_backup_archiver.c:4326 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "saltando el elemento %d %s %s" -#: pg_backup_archiver.c:4335 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "lanzando el elemento %d %s %s" -#: pg_backup_archiver.c:4389 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "terminó el bucle paralelo principal" -#: pg_backup_archiver.c:4425 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "procesando el elemento saltado %d %s %s" -#: pg_backup_archiver.c:4967 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "la tabla «%s» no pudo ser creada, no se recuperarán sus datos" -#: 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 no válido para objeto grande" -#: 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 "error durante el posicionamiento (seek) en el archivo: %m" - -#: pg_backup_custom.c:480 +#: pg_backup_custom.c:479 #, c-format msgid "data block %d has wrong seek position" msgstr "el bloque de datos %d tiene una posición de búsqueda incorrecta" -#: pg_backup_custom.c:497 +#: pg_backup_custom.c:496 #, c-format msgid "unrecognized data block type (%d) while searching archive" msgstr "tipo de bloque de datos (%d) no conocido al buscar en el archivador" -#: 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 "no se pudo encontrar el bloque con ID %d en archivo -- posiblemente debido a una petición de restauración fuera de orden, la que no puede ser completada debido a que en el archivo de entrada no es reposicionable (seekable)" -#: 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 "no se pudo encontrar el bloque con ID %d en archivo -- posiblemente el archivo está corrupto" -#: pg_backup_custom.c:531 +#: pg_backup_custom.c:530 #, c-format msgid "found unexpected block ID (%d) when reading data -- expected %d" msgstr "se encontró un bloque no esperado ID (%d) mientras se leían los datos -- se esperaba %d" -#: pg_backup_custom.c:545 +#: pg_backup_custom.c:544 #, c-format msgid "unrecognized data block type %d while restoring archive" msgstr "se encontró un bloque tipo %d no reconocido al restablecer el archivador" -#: 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 "no se pudo determinar la posición (seek) en el archivo del archivador: %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 "no se pudo cerrar el archivo del archivador: %m" -#: pg_backup_custom.c:790 +#: pg_backup_custom.c:791 #, c-format msgid "can only reopen input archives" msgstr "sólo se pueden reabrir archivos de entrada" -#: pg_backup_custom.c:797 +#: pg_backup_custom.c:798 #, c-format msgid "parallel restore from standard input is not supported" msgstr "la restauración en paralelo desde entrada estándar (stdin) no está soportada" -#: pg_backup_custom.c:799 +#: pg_backup_custom.c:800 #, c-format msgid "parallel restore from non-seekable file is not supported" msgstr "la restauración en paralelo desde un archivo no posicionable no está soportada" -#: pg_backup_custom.c:815 +#: pg_backup_custom.c:816 #, c-format msgid "could not set seek position in archive file: %m" msgstr "no se pudo posicionar (seek) en el archivo del archivador: %m" -#: pg_backup_custom.c:894 +#: pg_backup_custom.c:895 #, c-format msgid "compressor active" msgstr "compresor activo" -#: pg_backup_db.c:42 -#, c-format -msgid "could not get server_version from libpq" -msgstr "no se pudo obtener server_version desde libpq" - -#: pg_backup_db.c:53 pg_dumpall.c:1831 +#: pg_backup_db.c:41 #, c-format -msgid "aborting because of server version mismatch" -msgstr "abortando debido a que no coincide la versión del servidor" +#| msgid "could not get server_version from libpq" +msgid "could not get \"server_version\" from libpq" +msgstr "no se pudo obtener «server_version» desde libpq" -#: pg_backup_db.c:54 pg_dumpall.c:1832 -#, c-format -msgid "server version: %s; %s version: %s" -msgstr "versión del servidor: %s; versión de %s: %s" - -#: pg_backup_db.c:120 +#: pg_backup_db.c:118 #, c-format msgid "already connected to a database" msgstr "ya está conectado a una base de datos" -#: pg_backup_db.c:128 pg_backup_db.c:178 pg_dumpall.c:1678 pg_dumpall.c:1780 -msgid "Password: " -msgstr "Contraseña: " - -#: pg_backup_db.c:170 -#, c-format -msgid "could not connect to database" -msgstr "no se pudo hacer la conexión a la base de datos" - -#: pg_backup_db.c:187 -#, c-format -msgid "reconnection failed: %s" -msgstr "falló la reconexión: %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:1705 pg_dumpall.c:1789 -#, c-format -msgid "%s" -msgstr "%s" - -#: pg_backup_db.c:271 pg_dumpall.c:1894 pg_dumpall.c:1917 -#, c-format -msgid "query failed: %s" -msgstr "la consulta falló: %s" - -#: pg_backup_db.c:273 pg_dumpall.c:1895 pg_dumpall.c:1918 -#, c-format -msgid "Query was: %s" -msgstr "La consulta era: %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" msgstr[0] "la consulta regresó %d fila en lugar de una: %s" msgstr[1] "la consulta regresó %d filas en lugar de una: %s" -#: pg_backup_db.c:351 +#: pg_backup_db.c:290 #, c-format msgid "%s: %sCommand was: %s" msgstr "%s: %sLa orden era: %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 "no se pudo ejecutar la consulta" -#: pg_backup_db.c:460 +#: pg_backup_db.c:399 #, c-format msgid "error returned by PQputCopyData: %s" msgstr "PQputCopyData regresó un error: %s" -#: pg_backup_db.c:509 +#: pg_backup_db.c:448 #, c-format msgid "error returned by PQputCopyEnd: %s" msgstr "PQputCopyEnd regresó un error: %s" -#: pg_backup_db.c:515 +#: pg_backup_db.c:454 #, c-format msgid "COPY failed for table \"%s\": %s" msgstr "COPY falló para la tabla «%s»: %s" -#: pg_backup_db.c:521 pg_dump.c:2284 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "resultados extra inesperados durante el COPY de la tabla «%s»" -#: pg_backup_db.c:533 +#: pg_backup_db.c:472 msgid "could not start database transaction" msgstr "no se pudo iniciar la transacción en la base de datos" -#: pg_backup_db.c:541 +#: pg_backup_db.c:480 msgid "could not commit database transaction" msgstr "no se pudo terminar la transacción a la base de datos" -#: pg_backup_directory.c:153 +#: pg_backup_directory.c:154 #, c-format msgid "no output directory specified" msgstr "no se especificó un directorio de salida" -#: pg_backup_directory.c:186 -#, c-format -msgid "could not close directory \"%s\": %m" -msgstr "no se pudo abrir el directorio «%s»: %m" - -#: pg_backup_directory.c:192 -#, c-format -msgid "could not create directory \"%s\": %m" -msgstr "no se pudo crear el directorio «%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 "no se pudo escribir al archivo de salida: %s" - -#: pg_backup_directory.c:375 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "no se pudo cerrar el archivo de datos: %m" -#: pg_backup_directory.c:408 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "no se pudo cerrar el archivo de datos «%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 "no se pudo abrir el archivo de la tabla de contenidos de objetos grandes «%s» para su lectura: %m" +msgstr "no se pudo abrir el archivo de la TOC de objetos grandes «%s» para su lectura: %m" -#: pg_backup_directory.c:466 +#: pg_backup_directory.c:433 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" -msgstr "línea no válida en el archivo de la tabla de contenido de objetos grandes «%s»: «%s»" +msgstr "línea no válida en el archivo de la TOC de objetos grandes «%s»: «%s»" -#: pg_backup_directory.c:475 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" -msgstr "error al leer el archivo de la tabla de contenidos de objetos grandes «%s»" +msgstr "error al leer el archivo de la TOC de objetos grandes «%s»" -#: pg_backup_directory.c:479 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" -msgstr "no se pudo cerrar el archivo de la tabla de contenido de los objetos grandes «%s»: %m" +msgstr "no se pudo cerrar el archivo de la TOC de objetos grandes «%s»: %m" -#: pg_backup_directory.c:702 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" msgstr "no se pudo cerrar el archivo de datos LO: %m" -#: pg_backup_directory.c:712 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "no se pudo escribir archivo TOC de LOs: %s" - -#: pg_backup_directory.c:728 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" -msgstr "no se pudo cerrar el archivo TOC: %m" +msgstr "no se pudo cerrar el archivo TOC de objetos grandes: %m" -#: pg_backup_directory.c:747 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "nombre de archivo demasiado largo: «%s»" @@ -1388,12 +1442,12 @@ msgstr "no se puede leer este formato" #: pg_backup_tar.c:168 #, c-format msgid "could not open TOC file \"%s\" for output: %m" -msgstr "no se pudo abrir el archivo de tabla de contenido «%s» para escribir: %m" +msgstr "no se pudo abrir el archivo de TOC «%s» para escribir: %m" #: pg_backup_tar.c:175 #, c-format msgid "could not open TOC file for output: %m" -msgstr "no se pudo abrir la tabla de contenido para escribir: %m" +msgstr "no se pudo abrir la TOC para escribir: %m" #: pg_backup_tar.c:194 pg_backup_tar.c:330 pg_backup_tar.c:385 #: pg_backup_tar.c:401 pg_backup_tar.c:906 @@ -1404,12 +1458,12 @@ msgstr "la compresión no está soportada por el formato de salida tar" #: pg_backup_tar.c:202 #, c-format msgid "could not open TOC file \"%s\" for input: %m" -msgstr "no se pudo abrir el archivo de tabla de contenido «%s» para leer: %m" +msgstr "no se pudo abrir el archivo de TOC «%s» para leer: %m" #: pg_backup_tar.c:209 #, c-format msgid "could not open TOC file for input: %m" -msgstr "no se pudo abrir la tabla de contenido para leer: %m" +msgstr "no se pudo abrir la TOC para leer: %m" #: pg_backup_tar.c:318 #, c-format @@ -1463,119 +1517,182 @@ msgstr[1] "se encontró un encabezado incompleto (%lu bytes)" msgid "corrupt tar header found in %s (expected %d, computed %d) file position %llu" msgstr "se encontró un encabezado corrupto en %s (esperado %d, calculado %d) en la posición %llu" -#: pg_backup_utils.c:54 +#: pg_backup_utils.c:56 #, c-format msgid "unrecognized section name: \"%s\"" msgstr "nombre de sección «%s» no reconocido" -#: 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: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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_backup_utils.c:66 +#: pg_backup_utils.c:68 #, c-format msgid "out of on_exit_nicely slots" msgstr "elementos on_exit_nicely agotados" -#: 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 "demasiados argumentos en la línea de órdenes (el primero es «%s»)" -#: pg_dump.c:728 pg_restore.c:344 +#: 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:731 +#: pg_dump.c:828 pg_restore.c:382 +#, c-format +#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +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 +#, fuzzy, c-format +#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +msgid "options -a/--data-only and --statistics-only cannot be used together" +msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" + +#: pg_dump.c:834 pg_restore.c:388 +#, fuzzy, c-format +#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +msgid "options -a/--data-only and --no-data cannot be used together" +msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" + +#: pg_dump.c:836 pg_restore.c:390 +#, fuzzy, c-format +#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +msgid "options -s/--schema-only and --no-schema cannot be used together" +msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" + +#: pg_dump.c:838 pg_restore.c:392 +#, fuzzy, c-format +#| msgid "options -1/--single-transaction and --transaction-size cannot be used together" +msgid "options --statistics-only and --no-statistics cannot be used together" +msgstr "las opciones -1/--single-transaction y --transaction-size no pueden usarse juntas" + +#: pg_dump.c:842 pg_restore.c:396 +#, fuzzy, c-format +#| msgid "options -1/--single-transaction and --transaction-size cannot be used together" +msgid "options --statistics and --no-statistics cannot be used together" +msgstr "las opciones -1/--single-transaction y --transaction-size no pueden usarse juntas" + +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 +#, c-format +#| msgid "options -c/--clean and -a/--data-only cannot be used together" +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:734 +#: 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:737 pg_restore.c:347 +#: pg_dump.c:859 pg_restore.c:407 #, 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" -#: pg_dump.c:740 pg_dumpall.c:408 pg_restore.c:375 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "la opción --if-exists requiere la opción -c/--clean" -#: pg_dump.c:747 +#: pg_dump.c:882 #, 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 la opción --inserts, --rows-per-insert o --column-inserts" +msgstr "la opción --on-conflict-do-nothing requiere una de las opciones --inserts, --rows-per-insert o --column-inserts" -#: pg_dump.c:776 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, c-format +#| msgid "could not generate nonce" +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 +#, c-format +#| msgid "invalid socket" +msgid "invalid restrict key" +msgstr "llave de “restrict” no válida" + +#: pg_dump.c:903 +#, c-format +#| msgid "option -f/--filenode can only be used with --check" +msgid "option --restrict-key can only be used with --format=plain" +msgstr "la opción --restrict-key sólo puede usarse con --format=plain" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "algoritmo de compresión no reconocido: «%s»" -#: pg_dump.c:783 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "especificación de compresión no válida: %s" -#: pg_dump.c:796 +#: pg_dump.c:945 #, 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:808 +#: pg_dump.c:957 #, 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:854 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "el último OID interno es %u" -#: pg_dump.c:863 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "no se encontraron esquemas coincidentes" -#: pg_dump.c:880 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "no se encontraron tablas coincidentes" -#: pg_dump.c:908 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "no se encontraron extensiones coincidentes" -#: pg_dump.c:1092 +#: pg_dump.c:1251 #, c-format +#| msgid "" +#| "%s dumps a database as a text file or to other formats.\n" +#| "\n" msgid "" -"%s dumps a database as a text file or to other formats.\n" +"%s exports a PostgreSQL database as an SQL script or to other formats.\n" "\n" msgstr "" -"%s extrae una base de datos en formato de texto o en otros formatos.\n" +"%s extrae una base de datos como un script SQL o a otros formatos.\n" "\n" -#: pg_dump.c:1093 pg_dumpall.c:636 pg_restore.c:452 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_dump.c:1094 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPCIÓN]... [NOMBREDB]\n" -#: pg_dump.c:1096 pg_dumpall.c:639 pg_restore.c:455 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1584,12 +1701,12 @@ msgstr "" "\n" "Opciones generales:\n" -#: pg_dump.c:1097 +#: pg_dump.c:1256 #, 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:1098 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1598,22 +1715,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:1100 +#: pg_dump.c:1259 #, 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:1101 pg_dumpall.c:641 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose modo verboso\n" -#: pg_dump.c:1102 pg_dumpall.c:642 +#: pg_dump.c:1261 pg_dumpall.c:700 #, 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:1103 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1622,27 +1739,27 @@ msgstr "" " -Z, --compress=MÉTODO[:DETALLE]\n" " comprimir como se indica\n" -#: pg_dump.c:1105 pg_dumpall.c:643 +#: pg_dump.c:1264 pg_dumpall.c:701 #, 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:1106 pg_dumpall.c:671 +#: pg_dump.c:1265 pg_dumpall.c:733 #, 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:1107 +#: pg_dump.c:1266 #, 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:1108 pg_dumpall.c:644 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_dump.c:1110 pg_dumpall.c:645 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1651,64 +1768,65 @@ msgstr "" "\n" "Opciones que controlan el contenido de la salida:\n" -#: pg_dump.c:1111 pg_dumpall.c:646 +#: pg_dump.c:1270 pg_dumpall.c:704 #, c-format -msgid " -a, --data-only dump only the data, not the schema\n" -msgstr " -a, --data-only extrae sólo los datos, no el esquema\n" +#| msgid " -a, --data-only dump only the data, not the schema\n" +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:1112 +#: pg_dump.c:1271 #, 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:1113 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (igual que --large-objects, deprecado)\n" -#: pg_dump.c:1114 +#: pg_dump.c:1273 #, 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:1115 +#: pg_dump.c:1274 #, 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:1116 pg_restore.c:466 +#: pg_dump.c:1275 pg_restore.c:537 #, 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:1117 +#: pg_dump.c:1276 #, 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:1118 +#: pg_dump.c:1277 #, 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:1119 pg_dumpall.c:648 +#: pg_dump.c:1278 pg_dumpall.c:706 #, 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:1120 +#: pg_dump.c:1279 #, 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:1121 +#: pg_dump.c:1280 #, 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:1122 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1717,58 +1835,59 @@ msgstr "" " -O, --no-owner en formato de sólo texto, no reestablece\n" " los dueños de los objetos\n" -#: pg_dump.c:1124 pg_dumpall.c:652 +#: pg_dump.c:1283 pg_dumpall.c:710 #, c-format -msgid " -s, --schema-only dump only the schema, no data\n" -msgstr " -s, --schema-only extrae sólo el esquema, no los datos\n" +#| msgid " -s, --schema-only dump only the schema, no data\n" +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:1125 +#: pg_dump.c:1284 #, 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:1126 +#: pg_dump.c:1285 #, 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:1127 +#: pg_dump.c:1286 #, 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:1128 pg_dumpall.c:655 +#: pg_dump.c:1287 pg_dumpall.c:713 #, 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:1129 pg_dumpall.c:656 +#: pg_dump.c:1288 pg_dumpall.c:714 #, 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:1130 pg_dumpall.c:657 +#: pg_dump.c:1289 pg_dumpall.c:715 #, 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:1131 pg_dumpall.c:658 +#: pg_dump.c:1290 pg_dumpall.c:716 #, 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:1132 pg_dumpall.c:659 pg_restore.c:483 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr "" " --disable-triggers deshabilita los disparadores (triggers) durante el\n" " restablecimiento de la extracción de sólo-datos\n" -#: pg_dump.c:1133 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1777,12 +1896,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:1135 +#: pg_dump.c:1294 #, 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:1136 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1793,12 +1912,12 @@ msgstr "" " NO extrae la o las tablas especificadas,\n" " incluyendo tablas hijas y particiones\n" -#: pg_dump.c:1139 +#: pg_dump.c:1298 #, 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:1140 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1809,12 +1928,12 @@ msgstr "" " NO extrae datos para la o las tablas\n" " especificadas, incluyendo hijas y particiones\n" -#: pg_dump.c:1143 pg_dumpall.c:661 +#: pg_dump.c:1302 pg_dumpall.c:719 #, 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:1144 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1823,12 +1942,12 @@ msgstr "" " --filter=ARCHIVO incluir o excluir objetos y datos basado en\n" " expresiones en ARCHIVO\n" -#: pg_dump.c:1146 pg_dumpall.c:663 pg_restore.c:487 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, 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:1147 +#: pg_dump.c:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1839,93 +1958,141 @@ msgstr "" " incluye datos de tablas foráneas en servidores\n" " que coinciden con PATRÓN\n" -#: pg_dump.c:1150 pg_dumpall.c:664 +#: pg_dump.c:1309 pg_dumpall.c:722 #, 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:1151 pg_dumpall.c:665 +#: pg_dump.c:1310 pg_dumpall.c:723 #, 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:1152 pg_dumpall.c:666 +#: pg_dump.c:1311 pg_dumpall.c:724 +#, c-format +#| msgid " --no-comments do not dump comments\n" +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 +#, c-format +#| msgid " --no-comments do not dump comments\n" +msgid " --no-data do not dump data\n" +msgstr " --no-data no volcar datos\n" + +#: pg_dump.c:1313 pg_dumpall.c:726 #, c-format -msgid " --no-comments do not dump comments\n" -msgstr " --no-comments no volcar los comentarios\n" +#| msgid " --no-comments do not dump comments\n" +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:1153 pg_dumpall.c:667 +#: pg_dump.c:1314 pg_dumpall.c:727 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications no volcar las publicaciones\n" -#: pg_dump.c:1154 pg_dumpall.c:669 +#: pg_dump.c:1315 pg_dumpall.c:729 +#, c-format +#| msgid " --no-comments do not dump comments\n" +msgid " --no-schema do not dump schema\n" +msgstr " --no-schema no volcar el esquema\n" + +#: pg_dump.c:1316 pg_dumpall.c:730 #, 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:1155 pg_dumpall.c:670 +#: pg_dump.c:1317 pg_dumpall.c:731 +#, c-format +#| msgid " --no-subscriptions do not dump subscriptions\n" +msgid " --no-statistics do not dump statistics\n" +msgstr " --no-statistiics no volcar estadísticas\n" + +#: pg_dump.c:1318 pg_dumpall.c:732 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions no volcar las suscripciones\n" -#: pg_dump.c:1156 pg_dumpall.c:672 +#: pg_dump.c:1319 pg_dumpall.c:734 #, 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:1157 pg_dumpall.c:673 +#: pg_dump.c:1320 pg_dumpall.c:735 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces no volcar asignaciones de tablespace\n" -#: pg_dump.c:1158 pg_dumpall.c:674 +#: pg_dump.c:1321 pg_dumpall.c:736 #, 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:1159 pg_dumpall.c:675 +#: pg_dump.c:1322 pg_dumpall.c:737 #, 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:1160 pg_dumpall.c:676 +#: pg_dump.c:1323 pg_dumpall.c:738 #, 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:1161 pg_dumpall.c:677 +#: pg_dump.c:1324 pg_dumpall.c:739 #, 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:1162 pg_dumpall.c:678 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, 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 #, 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:1163 +#: pg_dump.c:1327 #, 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:1164 +#: pg_dump.c:1328 pg_dumpall.c:742 +#, c-format +#| msgid " -C, --create include commands to create database in dump\n" +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 #, 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:1165 +#: pg_dump.c:1330 #, 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:1166 pg_restore.c:497 +#: pg_dump.c:1331 pg_dumpall.c:743 +#, c-format +#| msgid " -z, --analyze update optimizer statistics\n" +msgid " --statistics dump the statistics\n" +msgstr " --statistics extraer las estadísticas\n" + +#: pg_dump.c:1332 pg_dumpall.c:744 +#, c-format +#| msgid " -s, --schema-only dump only the schema, no data\n" +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 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -1934,7 +2101,7 @@ msgstr "" " --strict-names requerir al menos una coincidencia para cada patrón\n" " de nombre de tablas y esquemas\n" -#: pg_dump.c:1168 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -1943,7 +2110,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:1170 pg_dumpall.c:679 pg_restore.c:500 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -1954,7 +2121,7 @@ msgstr "" " usa órdenes SESSION AUTHORIZATION en lugar de\n" " ALTER OWNER para cambiar los dueño de los objetos\n" -#: pg_dump.c:1174 pg_dumpall.c:683 pg_restore.c:504 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -1963,46 +2130,46 @@ msgstr "" "\n" "Opciones de conexión:\n" -#: pg_dump.c:1175 +#: pg_dump.c:1342 #, 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:1176 pg_dumpall.c:685 pg_restore.c:505 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, 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:1177 pg_dumpall.c:687 pg_restore.c:506 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, 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:1178 pg_dumpall.c:688 pg_restore.c:507 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, 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:1179 pg_dumpall.c:689 pg_restore.c:508 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password nunca pedir una contraseña\n" -#: pg_dump.c:1180 pg_dumpall.c:690 pg_restore.c:509 +#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 #, 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:1181 pg_dumpall.c:691 +#: pg_dump.c:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROL ejecuta SET ROLE antes del volcado\n" -#: pg_dump.c:1183 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2015,537 +2182,567 @@ msgstr "" "de la variable de ambiente PGDATABASE.\n" "\n" -#: pg_dump.c:1185 pg_dumpall.c:695 pg_restore.c:516 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Reporte errores a <%s>.\n" -#: pg_dump.c:1186 pg_dumpall.c:696 pg_restore.c:517 +#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: pg_dump.c:1205 pg_dumpall.c:518 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "la codificación de cliente especificada «%s» no es válida" -#: pg_dump.c:1353 +#: pg_dump.c:1520 #, 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:1418 +#: pg_dump.c:1585 #, c-format msgid "invalid output format \"%s\" specified" msgstr "el formato de salida especificado «%s» no es válido" -#: pg_dump.c:1459 pg_dump.c:1515 pg_dump.c:1568 pg_dumpall.c:1468 +#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "el nombre no es válido (demasiados puntos): %s" -#: pg_dump.c:1467 +#: pg_dump.c:1634 #, 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:1520 +#: pg_dump.c:1687 #, 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:1573 +#: pg_dump.c:1740 #, 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:1644 +#: pg_dump.c:1811 #, 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:1666 +#: pg_dump.c:1833 #, 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:1693 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "No está conectado a una base de datos." -#: pg_dump.c:1696 +#: pg_dump.c:1863 #, 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:2155 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "extrayendo el contenido de la tabla «%s.%s»" -#: pg_dump.c:2265 +#: pg_dump.c:2439 #, 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:2266 pg_dump.c:2276 +#: pg_dump.c:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "Mensaje de error del servidor: %s" -#: pg_dump.c:2267 pg_dump.c:2277 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "La orden era: % s" -#: pg_dump.c:2275 +#: pg_dump.c:2449 #, 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:2366 +#: pg_dump.c:2540 #, 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:3068 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "salvando las definiciones de la base de datos" -#: pg_dump.c:3177 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "proveedor de configuración regional no reconocido: %s" -#: pg_dump.c:3538 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "salvando codificaciones = %s" -#: pg_dump.c:3563 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "salvando «standard_conforming_strings = %s»" -#: pg_dump.c:3602 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "no se pudo interpretar la salida de current_schemas()" -#: pg_dump.c:3621 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "salvando «search_path = %s»" -#: pg_dump.c:3657 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "leyendo objetos grandes" -#: pg_dump.c:3878 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "salvando objetos grandes «%s»" -#: pg_dump.c:3899 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "error al leer el objeto grande %u: %s" -#: pg_dump.c:4002 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "leyendo políticas de seguridad a nivel de registros" -#: pg_dump.c:4143 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "tipo de orden inesperada en política: %c" -#: pg_dump.c:4593 pg_dump.c:5151 pg_dump.c:12365 pg_dump.c:18250 -#: pg_dump.c:18252 pg_dump.c:18874 +#: 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 #, c-format msgid "could not parse %s array" msgstr "no se pudo interpretar el arreglo %s" -#: pg_dump.c:4807 +#: pg_dump.c:5002 #, 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:5013 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "no existe la suscripción con OID %u" -#: pg_dump.c:5020 +#: pg_dump.c:5213 #, 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:5583 +#: pg_dump.c:5799 #, 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:5728 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "no existe el esquema con OID %u" -#: pg_dump.c:7210 pg_dump.c:17621 +#: pg_dump.c:6994 +#, c-format +#| msgid "cannot define statistics for relation \"%s\"" +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:18987 #, 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:7355 +#: pg_dump.c:7651 #, 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:7586 pg_dump.c:7860 pg_dump.c:8307 pg_dump.c:8921 pg_dump.c:9043 -#: pg_dump.c:9191 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "OID de tabla %u no reconocido" -#: pg_dump.c:7590 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "datos de índice inesperados para la tabla «%s»" -#: pg_dump.c:8092 +#: pg_dump.c:8459 #, 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:8925 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "información de columnas para la tabla «%s» inesperada" -#: pg_dump.c:8954 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "numeración de columnas no válida en la tabla «%s»" -#: pg_dump.c:9005 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "encontrando expresiones default de tablas" -#: pg_dump.c:9047 +#: pg_dump.c:9460 #, 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:9141 +#: pg_dump.c:9553 +#, c-format +#| msgid "finding table check constraints" +msgid "finding invalid not-null constraints" +msgstr "encontrando restricciones not-null no válidas" + +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "encontrando restricciones CHECK de tablas" -#: pg_dump.c:9195 +#: pg_dump.c:9705 #, 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:9199 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "Los catálogos del sistema podrían estar corruptos." -#: pg_dump.c:9889 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "no existe el rol con OID %u" -#: pg_dump.c:10001 pg_dump.c:10030 +#: pg_dump.c:10626 pg_dump.c:10655 #, 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:10577 +#: pg_dump.c:10951 +#, 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:11092 +#, c-format +#| msgid "unexpected payload data" +msgid "unexpected null attname" +msgstr "se encontró attname inesperadamente nulo" + +#: pg_dump.c:11121 +#, c-format +#| msgid "could not find an aggregate named \"%s\"" +msgid "could not find index attname \"%s\"" +msgstr "no se pudo encontrar el attname de índice «%s»" + +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "metadata faltante para los objetos grandes «%s»" -#: pg_dump.c:10860 +#: pg_dump.c:11893 #, 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:12434 +#: pg_dump.c:13521 #, 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:12484 pg_dump.c:14380 +#: pg_dump.c:13571 pg_dump.c:15467 #, 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:12614 pg_dump.c:12720 pg_dump.c:12727 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, 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:12653 +#: pg_dump.c:13740 #, 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:12656 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "valor no válido en el campo pg_cast.castmethod" -#: pg_dump.c:12746 +#: pg_dump.c:13833 #, 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:12763 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "valor erróneo en el campo pg_transform.trffromsql" -#: pg_dump.c:12784 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "valor erróneo en el campo pg_transform.trftosql" -#: pg_dump.c:12929 +#: pg_dump.c:14016 #, 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:13099 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "no se pudo encontrar el operador con OID %s" -#: pg_dump.c:13167 +#: pg_dump.c:14254 #, 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:13841 pg_dump.c:13909 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "proveedor de ordenamiento no reconocido: %s" -#: pg_dump.c:13850 pg_dump.c:13857 pg_dump.c:13868 pg_dump.c:13878 -#: pg_dump.c:13893 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "ordenamiento \"%s\" no válido" -#: pg_dump.c:14299 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "valor de aggfinalmodify no reconocido para la agregación «%s»" -#: pg_dump.c:14355 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "valor de aggmfinalmodify no reconocido para la agregación «%s»" -#: pg_dump.c:15072 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "tipo de objeto desconocido en privilegios por omisión: %d" -#: pg_dump.c:15088 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "no se pudo interpretar la lista de ACL (%s)" -#: pg_dump.c:15172 +#: pg_dump.c:16262 #, 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:15197 +#: pg_dump.c:16287 #, 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:15740 +#: pg_dump.c:16830 #, 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:15743 +#: pg_dump.c:16833 #, 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:15750 +#: pg_dump.c:16840 #, 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:15835 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS ya no está soportado (tabla «%s»)" -#: pg_dump.c:16822 +#: pg_dump.c:18065 #, 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:16900 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "no se pudieron interpretar columnas de estadísticas de índices" -#: pg_dump.c:16902 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "no se pudieron interpretar valores de estadísticas de índices" -#: pg_dump.c:16904 +#: pg_dump.c:18147 #, 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:17119 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "falta un índice para restricción «%s»" -#: pg_dump.c:17354 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "tipo de restricción inesperado: %c" -#: pg_dump.c:17455 pg_dump.c:17685 +#: pg_dump.c:18698 +#, c-format +msgid "unrecognized sequence type: %s" +msgstr "tipo no reconocido de secuencia: %s" + +#: pg_dump.c:18830 pg_dump.c:19062 #, 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:17487 +#: pg_dump.c:18866 #, c-format -msgid "unrecognized sequence type: %s" -msgstr "tipo no reconocido de secuencia: %s" +#| msgid "unrecognized sequence type: %s" +msgid "unrecognized sequence type: %d" +msgstr "tipo no reconocido de secuencia: %d" -#: pg_dump.c:18002 +#: pg_dump.c:19400 #, 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:18155 +#: pg_dump.c:19553 #, c-format msgid "could not find referenced extension %u" msgstr "no se pudo encontrar la extensión referenciada %u" -#: pg_dump.c:18254 +#: pg_dump.c:19652 #, 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:18386 +#: pg_dump.c:19784 #, c-format msgid "reading dependency data" msgstr "obteniendo datos de dependencias" -#: pg_dump.c:18472 +#: pg_dump.c:19870 #, c-format msgid "no referencing object %u %u" msgstr "no existe el objeto referenciante %u %u" -#: pg_dump.c:18483 +#: pg_dump.c:19881 #, c-format msgid "no referenced object %u %u" msgstr "no existe el objeto referenciado %u %u" -#: pg_dump.c:18908 pg_dump.c:18946 pg_dumpall.c:1963 pg_restore.c:551 -#: pg_restore.c:597 +#: pg_dump.c:20316 pg_dump.c:20354 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "el filtro %s para «%s» no está permitido" -#: pg_dump_sort.c:424 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "dumpId %d no válido" -#: pg_dump_sort.c:430 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "dependencia %d no válida" -#: pg_dump_sort.c:594 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "no se pudo identificar bucle de dependencia" -#: pg_dump_sort.c:1209 +#: pg_dump_sort.c:1462 #, 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:1214 +#: pg_dump_sort.c:1467 #, 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:1215 +#: pg_dump_sort.c:1468 #, 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:1227 +#: pg_dump_sort.c:1480 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "no se pudo resolver el bucle de dependencias entre los siguientes elementos:" -#: 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 "el programa «%s» es requerido por %s, pero no fue encontrado en el mismo directorio que «%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 "el programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s" -#: pg_dumpall.c:387 +#: 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:395 +#: 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" -#: pg_dumpall.c:402 +#: 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:412 +#: 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:474 pg_dumpall.c:1772 -#, c-format -msgid "could not connect to database \"%s\"" -msgstr "no se pudo establecer la conexión a la base de datos «%s»" - -#: pg_dumpall.c:486 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2554,88 +2751,90 @@ 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:635 +#: pg_dumpall.c:693 #, c-format +#| msgid "" +#| "%s extracts a PostgreSQL database cluster into an SQL script file.\n" +#| "\n" msgid "" -"%s extracts a PostgreSQL database cluster into an SQL script file.\n" +"%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" msgstr "" -"%s extrae un cluster de bases de datos de PostgreSQL en un archivo\n" -"guión (script) SQL.\n" +"%s exporta un clúster de bases de datos de PostgreSQL en un guión (script) SQL.\n" "\n" -#: pg_dumpall.c:637 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPCIÓN]...\n" -#: pg_dumpall.c:640 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=ARCHIVO nombre del archivo de salida\n" -#: pg_dumpall.c:647 +#: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean tira (drop) la base de datos antes de crearla\n" -#: pg_dumpall.c:649 +#: pg_dumpall.c:707 #, 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:650 pg_restore.c:475 +#: pg_dumpall.c:708 pg_restore.c:546 #, 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:651 +#: pg_dumpall.c:709 #, 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:653 +#: pg_dumpall.c:711 #, 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:654 +#: pg_dumpall.c:712 #, 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:660 +#: pg_dumpall.c:718 #, 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:662 +#: pg_dumpall.c:720 #, 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:668 +#: pg_dumpall.c:728 #, 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:684 +#: pg_dumpall.c:750 #, 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:686 +#: pg_dumpall.c:752 #, 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:693 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2647,106 +2846,109 @@ msgstr "" "Si no se usa -f/--file, el volcado de SQL será escrito a la salida estándar.\n" "\n" -#: pg_dumpall.c:838 +#: pg_dumpall.c:904 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "omitido nombre de rol que empieza con «pg_» (%s)" -#: pg_dumpall.c:1060 +#. translator: %s represents a numeric role OID +#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#, 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 #, 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:1195 +#: pg_dumpall.c:1309 #, 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:1322 +#: pg_dumpall.c:1436 #, 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:1529 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "excluyendo base de datos «%s»" -#: pg_dumpall.c:1533 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "extrayendo base de datos «%s»" -#: pg_dumpall.c:1564 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "pg_dump falló en la base de datos «%s», saliendo" -#: pg_dumpall.c:1570 +#: pg_dumpall.c:1693 #, 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:1614 +#: pg_dumpall.c:1737 #, c-format msgid "running \"%s\"" msgstr "ejecutando «%s»" -#: pg_dumpall.c:1815 -#, c-format -msgid "could not get server version" -msgstr "no se pudo obtener la versión del servidor" - -#: pg_dumpall.c:1818 -#, c-format -msgid "could not parse server version \"%s\"" -msgstr "no se pudo interpretar la versión del servidor «%s»" - -#: pg_dumpall.c:1888 pg_dumpall.c:1911 -#, c-format -msgid "executing %s" -msgstr "ejecutando %s" - -#: pg_dumpall.c:1983 +#: pg_dumpall.c:1856 msgid "unsupported filter object" msgstr "objeto de filtro no soportado" -#: pg_restore.c:329 +#: pg_restore.c:348 #, c-format 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:336 +#: 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:350 +#: pg_restore.c:361 +#, fuzzy, c-format +#| msgid "options -d/--dbname and -f/--file cannot be used together" +msgid "options -d/--dbname and --restrict-key cannot be used together" +msgstr "las opciones -d/--dbname y -f/--file 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:357 +#: 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:361 +#: pg_restore.c:421 #, 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:399 +#: pg_restore.c:467 +#, c-format +#| msgid "log format \"%s\" is not supported" +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 #, 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:438 +#: pg_restore.c:509 #, c-format msgid "errors ignored on restore: %d" msgstr "errores ignorados durante la recuperación: %d" -#: pg_restore.c:451 +#: pg_restore.c:522 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2756,49 +2958,49 @@ msgstr "" "creado por pg_dump.\n" "\n" -#: pg_restore.c:453 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPCIÓN]... [ARCHIVO]\n" -#: pg_restore.c:456 +#: pg_restore.c:527 #, 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:457 +#: pg_restore.c:528 #, 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:458 +#: pg_restore.c:529 #, 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:459 +#: pg_restore.c:530 #, 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:460 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose modo verboso\n" -#: pg_restore.c:461 +#: pg_restore.c:532 #, 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:462 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_restore.c:464 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -2807,34 +3009,34 @@ msgstr "" "\n" "Opciones que controlan la recuperación:\n" -#: pg_restore.c:465 +#: pg_restore.c:536 #, 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:467 +#: pg_restore.c:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create crea la base de datos de destino\n" -#: pg_restore.c:468 +#: pg_restore.c:539 #, 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:469 +#: pg_restore.c:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NOMBRE reestablece el índice nombrado\n" -#: pg_restore.c:470 +#: pg_restore.c:541 #, 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:471 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2843,59 +3045,59 @@ msgstr "" " -L, --use-list=ARCHIVO usa la tabla de contenido especificada para ordenar\n" " la salida de este archivo\n" -#: pg_restore.c:473 +#: pg_restore.c:544 #, 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:474 +#: pg_restore.c:545 #, 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:476 +#: pg_restore.c:547 #, 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:477 +#: pg_restore.c:548 #, 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:478 +#: pg_restore.c:549 #, 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:479 +#: pg_restore.c:550 #, 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:480 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NOMBRE reestablece el disparador (trigger) nombrado\n" -#: pg_restore.c:481 +#: pg_restore.c:552 #, 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:482 +#: pg_restore.c:553 #, 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:484 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security activa seguridad de filas\n" -#: pg_restore.c:485 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -2904,12 +3106,19 @@ msgstr "" " --filter=ARCHIVO restaurar o ignorar objetos basados en\n" " expresiones en ARCHIVO\n" -#: pg_restore.c:488 +#: pg_restore.c:559 #, c-format -msgid " --no-comments do not restore comments\n" -msgstr " --no-comments no restaurar comentarios\n" +#| msgid " --no-comments do not restore comments\n" +msgid " --no-comments do not restore comment commands\n" +msgstr " --no-comments no restaurar órdenes de comentarios\n" -#: pg_restore.c:489 +#: pg_restore.c:560 +#, c-format +#| msgid " --no-comments do not restore comments\n" +msgid " --no-data do not restore data\n" +msgstr " --no-data no restaurar datos\n" + +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -2918,49 +3127,79 @@ msgstr "" " --no-data-for-failed-tables no reestablece datos de tablas que no pudieron\n" " ser creadas\n" -#: pg_restore.c:491 +#: pg_restore.c:563 +#, c-format +#| msgid " --no-comments do not restore comments\n" +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 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications no restaurar publicaciones\n" -#: pg_restore.c:492 +#: pg_restore.c:565 +#, c-format +#| msgid " --no-comments do not restore comments\n" +msgid " --no-schema do not restore schema\n" +msgstr " --no-schema no restaurar esquemas\n" + +#: pg_restore.c:566 #, 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:493 +#: pg_restore.c:567 +#, c-format +#| msgid " --no-subscriptions do not restore subscriptions\n" +msgid " --no-statistics do not restore statistics\n" +msgstr " --no-statistics no restaurar estadísticas\n" + +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions no restaurar suscripciones\n" -#: pg_restore.c:494 +#: pg_restore.c:569 #, 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:495 +#: pg_restore.c:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces no restaura asignaciones de tablespace\n" -#: pg_restore.c:496 +#: pg_restore.c:572 #, 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:499 +#: pg_restore.c:573 +#, c-format +#| msgid " -C, --create create the target database\n" +msgid " --statistics restore the statistics\n" +msgstr " --statistics restaurar las estadísticas\n" + +#: pg_restore.c:574 +#, c-format +#| msgid " -s, --schema-only restore only the schema, no data\n" +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 #, 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:510 +#: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME hace SET ROLE antes de restaurar\n" -#: pg_restore.c:512 +#: pg_restore.c:590 #, c-format msgid "" "\n" @@ -2971,7 +3210,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:515 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -2981,3 +3220,15 @@ msgstr "" "\n" "Si no se especifica un archivo de entrada, se usa la entrada estándar.\n" "\n" + +#, c-format +#~ msgid "could not connect to database" +#~ msgstr "no se pudo hacer la conexión a la base de datos" + +#, c-format +#~ msgid "reconnection failed: %s" +#~ msgstr "falló la reconexión: %s" + +#, c-format +#~ msgid "could not close directory \"%s\": %m" +#~ msgstr "no se pudo abrir el directorio «%s»: %m" diff --git a/src/bin/pg_dump/po/fr.po b/src/bin/pg_dump/po/fr.po index 489842a31e267..14a80e50445de 100644 --- a/src/bin/pg_dump/po/fr.po +++ b/src/bin/pg_dump/po/fr.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-01 08:52+0000\n" -"PO-Revision-Date: 2025-08-01 11:32+0200\n" +"POT-Creation-Date: 2025-09-20 04:51+0000\n" +"PO-Revision-Date: 2025-09-20 10:58+0200\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -21,7 +21,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.7\n" #: ../../../src/common/logging.c:279 #, c-format @@ -44,9 +44,9 @@ msgid "hint: " msgstr "astuce : " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:413 compress_gzip.c:420 -#: compress_io.c:108 compress_lz4.c:780 compress_lz4.c:787 compress_zstd.c:25 -#: compress_zstd.c:31 +#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: 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 "cette construction ne supporte pas la compression avec %s" @@ -172,7 +172,7 @@ msgstr "n'a pas pu tester le fichier « %s » : %m" msgid "this build does not support sync method \"%s\"" msgstr "cette construction ne supporte pas la méthode de synchronisation « %s »" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:905 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 #, c-format msgid "could not open directory \"%s\": %m" msgstr "n'a pas pu ouvrir le répertoire « %s » : %m" @@ -487,7 +487,7 @@ msgstr "n'a pas pu initialiser la bibliothèque de compression : %s" msgid "could not close compression stream: %s" msgstr "n'a pas pu fermer le flux de compression : %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "n'a pas pu compresser les données : %s" @@ -502,86 +502,116 @@ msgstr "n'a pas pu décompresser les données : %s" msgid "could not close compression library: %s" msgstr "n'a pas pu fermer la bibliothèque de compression : %s" -#: compress_gzip.c:266 compress_lz4.c:608 compress_lz4.c:628 compress_lz4.c:647 +#: compress_gzip.c:277 compress_lz4.c:513 compress_lz4.c:616 compress_lz4.c:633 #, c-format msgid "could not read from input file: %s" msgstr "n'a pas pu lire à partir du fichier en entrée : %s" -#: compress_gzip.c:295 compress_none.c:97 compress_none.c:139 -#: compress_zstd.c:375 pg_backup_custom.c:650 +#: compress_gzip.c:294 compress_zstd.c:382 +#, c-format +msgid "could not write to file: %s" +msgstr "n'a pas pu écrire dans le fichier : %s" + +#: compress_gzip.c:310 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 "n'a pas pu lire à partir du fichier en entrée : %m" -#: compress_gzip.c:297 compress_lz4.c:630 compress_none.c:141 -#: compress_zstd.c:373 pg_backup_custom.c:648 pg_backup_directory.c:538 +#: compress_gzip.c:312 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 "n'a pas pu lire à partir du fichier en entrée : fin du fichier" -#: compress_lz4.c:157 +#: compress_lz4.c:158 #, c-format msgid "could not create LZ4 decompression context: %s" msgstr "n'a pas pu créer le contexte de décompression LZ4 : %s" -#: compress_lz4.c:180 +#: compress_lz4.c:181 #, c-format msgid "could not decompress: %s" msgstr "n'a pas pu décompresser : %s" -#: compress_lz4.c:193 +#: compress_lz4.c:194 #, c-format msgid "could not free LZ4 decompression context: %s" msgstr "n'a pas pu libérer le contexte de décompression 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 "n'a pas pu terminer la compression : %s" -#: compress_lz4.c:301 +#: compress_lz4.c:302 #, c-format msgid "could not initialize LZ4 compression: %s" msgstr "n'a pas pu initialiser la bibliothèque de compression LZ4 : %s" -#: compress_lz4.c:697 +#: compress_lz4.c:463 compress_lz4.c:581 +#, c-format +msgid "unable to initialize LZ4 library: %s" +msgstr "n'a pas pu initialiser la bibliothèque LZ4 : %s" + +#: compress_lz4.c:593 +#, c-format +msgid "error during writing: %s" +msgstr "erreur lors de l'écriture : %s" + +#: compress_lz4.c:599 +#, c-format +msgid "error during writing: %m" +msgstr "erreur lors de l'écriture : %m" + +#: compress_lz4.c:698 +#, c-format +msgid "could not write to output file: %m" +msgstr "n'a pas pu écrire dans le fichier en sortie : %m" + +#: compress_lz4.c:711 #, c-format msgid "could not end decompression: %s" msgstr "n'a pas pu terminer la décompression : %s" -#: compress_zstd.c:66 +#: compress_lz4.c:726 compress_none.c:156 +#, c-format +msgid "could not close file: %m" +msgstr "n'a pas pu fermer le fichier : %m" + +#: compress_none.c:109 compress_zstd.c:389 +#, c-format +msgid "could not write to file: %m" +msgstr "n'a pas pu écrire dans le fichier : %m" + +#: compress_zstd.c:67 #, c-format msgid "could not set compression parameter \"%s\": %s" msgstr "n'a pas pu configurer le paramètre de compression « %s » : %s" -#: compress_zstd.c:78 compress_zstd.c:233 compress_zstd.c:492 -#: compress_zstd.c:500 +#: 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 "n'a pas pu initialiser la bibliothèque de compression" -#: compress_zstd.c:196 compress_zstd.c:310 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "n'a pas pu décompresser les données : %s" -#: compress_zstd.c:503 -#, c-format -msgid "unhandled mode \"%s\"" -msgstr "mode « %s » non géré" - #: connectdb.c:56 connectdb.c:165 pg_backup_db.c:126 msgid "Password: " msgstr "Mot de passe : " -#: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:928 -#: pg_dump_sort.c:1454 pg_dump_sort.c:1474 +#: 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 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:503 +#: connectdb.c:157 pg_dumpall.c:514 #, c-format msgid "could not connect to database \"%s\"" msgstr "n'a pas pu se connecter à la base de données « %s »" @@ -606,32 +636,32 @@ msgstr "annulation à cause de la différence des versions" msgid "server version: %s; %s version: %s" msgstr "version du serveur : %s ; %s version : %s" -#: connectdb.c:282 pg_dumpall.c:1749 +#: connectdb.c:282 pg_dumpall.c:1784 #, c-format msgid "executing %s" msgstr "exécution %s" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1755 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 #, c-format msgid "query failed: %s" msgstr "échec de la requête : %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1756 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 #, c-format msgid "Query was: %s" msgstr "La requête était : %s" -#: dumputils.c:910 +#: dumputils.c:948 #, c-format msgid "could not create directory \"%s\": %m" msgstr "n'a pas pu créer le répertoire « %s » : %m" -#: dumputils.c:915 +#: dumputils.c:953 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "n'a pas pu modifier les droits du répertoire « %s » : %m" -#: dumputils.c:920 +#: dumputils.c:958 #, c-format msgid "directory \"%s\" is not empty" msgstr "le répertoire « %s » n'est pas vide" @@ -656,32 +686,32 @@ msgstr "format invalide dans la lecture du filtre à partir de l'entrée standar msgid "invalid format in filter read from file \"%s\" on line %d: %s" msgstr "format invalide dans le filtre lu du fichier « %s » sur la ligne %d : %s" -#: filter.c:240 filter.c:467 +#: filter.c:243 filter.c:470 #, c-format msgid "could not read from filter file \"%s\": %m" msgstr "n'a pas pu lire à partir du fichier filtre « %s » : %m" -#: filter.c:243 +#: filter.c:246 msgid "unexpected end of file" msgstr "fin de fichier inattendu" -#: filter.c:310 +#: filter.c:313 msgid "missing object name pattern" msgstr "motif de nom d'objet manquant" -#: filter.c:421 +#: filter.c:424 msgid "no filter command found (expected \"include\" or \"exclude\")" msgstr "aucune commande de filtre (attendait « include » ou « exclude »)" -#: filter.c:432 +#: filter.c:435 msgid "invalid filter command (expected \"include\" or \"exclude\")" msgstr "commande de filtre invalide (attendait « include » ou « exclude »)" -#: filter.c:439 +#: filter.c:442 msgid "missing filter object type" msgstr "type d'objet filtre manquant" -#: filter.c:446 +#: filter.c:449 #, c-format msgid "unsupported filter object type: \"%.*s\"" msgstr "type d'objet filtre non supporté : « %.*s »" @@ -765,7 +795,7 @@ msgstr "pgpipe: n'a pas pu se connecter au socket: code d'erreur %d" msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: n'a pas pu accepter de connexion: code d'erreur %d" -#: pg_backup_archiver.c:269 pg_backup_archiver.c:1726 +#: pg_backup_archiver.c:269 pg_backup_archiver.c:1745 #, c-format msgid "could not close output file: %m" msgstr "n'a pas pu fermer le fichier en sortie : %m" @@ -810,412 +840,412 @@ msgstr "les connexions directes à la base de données ne sont pas supportées d msgid "implied no-schema restore" msgstr "a impliqué une restauration sans la structure" -#: pg_backup_archiver.c:518 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "suppression de %s %s" -#: pg_backup_archiver.c:650 +#: pg_backup_archiver.c:661 #, c-format msgid "could not find where to insert IF EXISTS in statement \"%s\"" msgstr "n'a pas pu trouver où insérer IF EXISTS dans l'instruction « %s »" -#: pg_backup_archiver.c:836 pg_backup_archiver.c:838 +#: pg_backup_archiver.c:855 pg_backup_archiver.c:857 #, c-format msgid "warning from original dump file: %s" msgstr "message d'avertissement du fichier de sauvegarde original : %s" -#: pg_backup_archiver.c:872 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "création de %s « %s.%s »" -#: pg_backup_archiver.c:875 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "création de %s « %s »" -#: pg_backup_archiver.c:925 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "connexion à la nouvelle base de données « %s »" -#: pg_backup_archiver.c:952 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "traitement de %s" -#: pg_backup_archiver.c:974 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "traitement des données de la table « %s.%s »" -#: pg_backup_archiver.c:1044 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "exécution de %s %s" -#: pg_backup_archiver.c:1113 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "désactivation des triggers pour %s" -#: pg_backup_archiver.c:1139 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "activation des triggers pour %s" -#: pg_backup_archiver.c:1204 +#: pg_backup_archiver.c:1223 #, c-format msgid "internal error -- WriteData cannot be called outside the context of a DataDumper routine" msgstr "erreur interne -- WriteData ne peut pas être appelé en dehors du contexte de la routine DataDumper" -#: pg_backup_archiver.c:1399 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "la sauvegarde des « Large Objects » n'est pas supportée dans le format choisi" -#: pg_backup_archiver.c:1462 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "restauration de %d « Large Object »" msgstr[1] "restauration de %d « Large Objects »" -#: pg_backup_archiver.c:1489 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 "restauration du « Large Object » d'OID %u" -#: pg_backup_archiver.c:1501 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "n'a pas pu créer le « Large Object » %u : %s" -#: pg_backup_archiver.c:1506 pg_dump.c:4073 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "n'a pas pu ouvrir le « Large Object » %u : %s" -#: pg_backup_archiver.c:1562 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" msgstr "n'a pas pu ouvrir le fichier TOC « %s » : %m" -#: pg_backup_archiver.c:1590 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "ligne ignorée : %s" -#: pg_backup_archiver.c:1597 pg_backup_db.c:548 +#: pg_backup_archiver.c:1616 pg_backup_db.c:548 #, c-format msgid "could not find entry for ID %d" msgstr "n'a pas pu trouver l'entrée pour l'ID %d" -#: pg_backup_archiver.c:1620 pg_backup_directory.c:187 -#: pg_backup_directory.c:586 +#: 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 "n'a pas pu fermer le fichier TOC : %m" -#: pg_backup_archiver.c:1707 pg_backup_custom.c:151 pg_backup_directory.c:301 -#: pg_backup_directory.c:573 pg_backup_directory.c:639 -#: pg_backup_directory.c:657 pg_dumpall.c:537 +#: 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 #, c-format msgid "could not open output file \"%s\": %m" msgstr "n'a pas pu ouvrir le fichier de sauvegarde « %s » : %m" -#: pg_backup_archiver.c:1709 pg_backup_custom.c:157 +#: pg_backup_archiver.c:1728 pg_backup_custom.c:157 #, c-format msgid "could not open output file: %m" msgstr "n'a pas pu ouvrir le fichier de sauvegarde : %m" -#: pg_backup_archiver.c:1792 +#: 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)" msgstr[0] "a écrit %zu octet de données d'un « Large Object » (résultat = %d)" msgstr[1] "a écrit %zu octets de données d'un « Large Object » (résultat = %d)" -#: pg_backup_archiver.c:1798 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "n'a pas pu écrire dans le « Large Object » : %s" -#: pg_backup_archiver.c:1888 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" msgstr "pendant l'initialisation (« INITIALIZING ») :" -#: pg_backup_archiver.c:1893 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" msgstr "pendant le traitement de la TOC (« PROCESSING TOC ») :" -#: pg_backup_archiver.c:1898 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" msgstr "pendant la finalisation (« FINALIZING ») :" -#: pg_backup_archiver.c:1903 +#: pg_backup_archiver.c:1922 #, c-format msgid "from TOC entry %d; %u %u %s %s %s" msgstr "de l'entrée TOC %d ; %u %u %s %s %s" -#: pg_backup_archiver.c:1979 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "mauvais dumpId" -#: pg_backup_archiver.c:2000 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "mauvais dumpId de table pour l'élément TABLE DATA" -#: pg_backup_archiver.c:2092 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "drapeau de décalage de données inattendu %d" -#: pg_backup_archiver.c:2105 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "le décalage dans le fichier de sauvegarde est trop important" -#: pg_backup_archiver.c:2216 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "nom du répertoire trop long : « %s »" -#: pg_backup_archiver.c:2266 +#: pg_backup_archiver.c:2285 #, c-format msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does not exist)" msgstr "le répertoire « %s » ne semble pas être une archive valide (« toc.dat » n'existe pas)" -#: pg_backup_archiver.c:2274 pg_backup_custom.c:168 pg_backup_custom.c:813 -#: pg_backup_directory.c:172 pg_backup_directory.c:364 +#: 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 "n'a pas pu ouvrir le fichier en entrée « %s » : %m" -#: pg_backup_archiver.c:2281 pg_backup_custom.c:174 +#: pg_backup_archiver.c:2300 pg_backup_custom.c:174 #, c-format msgid "could not open input file: %m" msgstr "n'a pas pu ouvrir le fichier en entrée : %m" -#: pg_backup_archiver.c:2287 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "n'a pas pu lire le fichier en entrée : %m" -#: pg_backup_archiver.c:2289 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "le fichier en entrée est trop petit (%lu lus, 5 attendus)" -#: pg_backup_archiver.c:2321 +#: pg_backup_archiver.c:2340 #, c-format msgid "input file appears to be a text format dump. Please use psql." msgstr "Le fichier en entrée semble être une sauvegarde au format texte. Merci d'utiliser psql." -#: pg_backup_archiver.c:2327 +#: pg_backup_archiver.c:2346 #, c-format msgid "input file does not appear to be a valid archive (too short?)" msgstr "le fichier en entrée ne semble pas être une archive valide (trop petit ?)" -#: pg_backup_archiver.c:2333 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "le fichier en entrée ne semble pas être une archive valide" -#: pg_backup_archiver.c:2342 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "n'a pas pu fermer le fichier en entrée : %m" -#: pg_backup_archiver.c:2421 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "n'a pas pu ouvrir stdout pour l'ajout : %m" -#: pg_backup_archiver.c:2466 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "format de fichier « %d » non reconnu" -#: pg_backup_archiver.c:2547 pg_backup_archiver.c:4768 +#: pg_backup_archiver.c:2566 pg_backup_archiver.c:4797 #, c-format msgid "finished item %d %s %s" msgstr "élément terminé %d %s %s" -#: pg_backup_archiver.c:2551 pg_backup_archiver.c:4781 +#: pg_backup_archiver.c:2570 pg_backup_archiver.c:4810 #, c-format msgid "worker process failed: exit code %d" msgstr "échec du processus worker : code de sortie %d" -#: pg_backup_archiver.c:2649 +#: pg_backup_archiver.c:2668 #, c-format msgid "unexpected TOC entry in WriteToc(): %d %s %s" msgstr "entrée TOC inattendu dans WriteToc() : %d %s %s" -#: pg_backup_archiver.c:2653 pg_backup_custom.c:440 pg_backup_custom.c:506 +#: 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 "erreur lors de la recherche dans le fichier : %m" -#: pg_backup_archiver.c:2711 +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "ID %d de l'entrée en dehors de la plage -- peut-être un TOC corrompu" -#: pg_backup_archiver.c:2794 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "la restauration des tables avec WITH OIDS n'est plus supportée" -#: pg_backup_archiver.c:2876 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "encodage « %s » non reconnu" -#: pg_backup_archiver.c:2882 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" msgstr "élément ENCODING invalide : %s" -#: pg_backup_archiver.c:2900 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" msgstr "élément STDSTRINGS invalide : %s" -#: pg_backup_archiver.c:2925 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "schéma « %s » non trouvé" -#: pg_backup_archiver.c:2932 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "table « %s » non trouvée" -#: pg_backup_archiver.c:2939 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "index « %s » non trouvé" -#: pg_backup_archiver.c:2946 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "fonction « %s » non trouvée" -#: pg_backup_archiver.c:2953 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "trigger « %s » non trouvé" -#: pg_backup_archiver.c:3414 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "n'a pas pu initialiser la session utilisateur à « %s »: %s" -#: pg_backup_archiver.c:3546 +#: pg_backup_archiver.c:3611 #, c-format msgid "could not set \"search_path\" to \"%s\": %s" msgstr "n'a pas pu configurer « search_path » à « %s » : %s" -#: pg_backup_archiver.c:3607 +#: pg_backup_archiver.c:3672 #, c-format msgid "could not set \"default_tablespace\" to %s: %s" msgstr "n'a pas pu configurer « default_tablespace » à %s : %s" -#: pg_backup_archiver.c:3656 +#: pg_backup_archiver.c:3721 #, c-format msgid "could not set \"default_table_access_method\": %s" msgstr "n'a pas pu configurer la méthode « default_table_access_method » : %s" -#: pg_backup_archiver.c:3705 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "n'a pas pu modifier la méthode d'accès aux tables : %s" -#: pg_backup_archiver.c:3806 +#: pg_backup_archiver.c:3871 #, c-format msgid "don't know how to set owner for object type \"%s\"" msgstr "ne sait pas comment initialiser le propriétaire du type d'objet « %s »" -#: pg_backup_archiver.c:3941 +#: pg_backup_archiver.c:4006 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "entrée TOC inattendue dans : %d %s %s" -#: pg_backup_archiver.c:4125 +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "n'a pas trouver la chaîne magique dans le fichier d'en-tête" -#: pg_backup_archiver.c:4139 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "version non supportée (%d.%d) dans le fichier d'en-tête" -#: pg_backup_archiver.c:4144 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "échec de la vérification sur la taille de l'entier (%lu)" -#: pg_backup_archiver.c:4148 +#: pg_backup_archiver.c:4177 #, c-format msgid "archive was made on a machine with larger integers, some operations might fail" msgstr "l'archive a été créée sur une machine disposant d'entiers plus larges, certaines opérations peuvent échouer" -#: pg_backup_archiver.c:4158 +#: pg_backup_archiver.c:4187 #, c-format msgid "expected format (%d) differs from format found in file (%d)" msgstr "le format attendu (%d) diffère du format du fichier (%d)" -#: pg_backup_archiver.c:4180 +#: 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 "l'archive est compressée mais cette installation ne supporte pas la compression (%s) -- aucune donnée ne sera disponible" -#: pg_backup_archiver.c:4216 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "date de création invalide dans l'en-tête" -#: pg_backup_archiver.c:4350 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "traitement de l'élément %d %s %s" -#: pg_backup_archiver.c:4435 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "entrée dans la boucle parallèle principale" -#: pg_backup_archiver.c:4446 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "omission de l'élément %d %s %s" -#: pg_backup_archiver.c:4455 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "lancement de l'élément %d %s %s" -#: pg_backup_archiver.c:4509 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "fin de la boucle parallèle principale" -#: pg_backup_archiver.c:4545 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "traitement de l'élément manquant %d %s %s" -#: pg_backup_archiver.c:5087 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "la table « %s » n'a pas pu être créée, ses données ne seront pas restaurées" @@ -1336,7 +1366,7 @@ msgstr "erreur renvoyée par PQputCopyEnd : %s" msgid "COPY failed for table \"%s\": %s" msgstr "COPY échoué pour la table « %s » : %s" -#: pg_backup_db.c:460 pg_dump.c:2449 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "résultats supplémentaires non attendus durant l'exécution de COPY sur la table « %s »" @@ -1354,58 +1384,47 @@ msgstr "n'a pas pu valider la transaction de la base de données" msgid "no output directory specified" msgstr "aucun répertoire cible indiqué" -#: pg_backup_directory.c:325 pg_backup_directory.c:479 -#: pg_backup_directory.c:517 -#, c-format -msgid "could not write to output file: %s" -msgstr "n'a pas pu écrire dans le fichier en sortie : %s" - -#: pg_backup_directory.c:343 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "n'a pas pu fermer le fichier de données : %m" -#: pg_backup_directory.c:376 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "n'a pas pu fermer le fichier de données « %s » : %m" -#: pg_backup_directory.c:428 +#: pg_backup_directory.c:422 #, c-format msgid "could not open large object TOC file \"%s\" for input: %m" msgstr "n'a pas pu ouvrir le fichier TOC « %s » du Large Object en entrée : %m" -#: pg_backup_directory.c:439 +#: pg_backup_directory.c:433 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" msgstr "ligne invalide dans le fichier TOC du Large Object « %s » : « %s »" -#: pg_backup_directory.c:448 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "erreur lors de la lecture du TOC du fichier Large Object « %s »" -#: pg_backup_directory.c:452 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "n'a pas pu fermer le TOC du Large Object « %s » : %m" -#: pg_backup_directory.c:675 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" msgstr "n'a pas pu fermer le fichier de données LO : %m" -#: pg_backup_directory.c:685 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "n'a pas pu écrire dans le fichier TOC des Large Objects : %s" - -#: pg_backup_directory.c:701 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" msgstr "n'a pas pu fermer le fichier TOC des Large Objects : %m" -#: pg_backup_directory.c:720 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "nom du fichier trop long : « %s »" @@ -1498,10 +1517,10 @@ msgstr "en-tête tar corrompu trouvé dans %s (%d attendu, %d calculé ) à la p msgid "unrecognized section name: \"%s\"" msgstr "nom de section non reconnu : « %s »" -#: pg_backup_utils.c:57 pg_dump.c:806 pg_dump.c:823 pg_dumpall.c:380 -#: pg_dumpall.c:390 pg_dumpall.c:398 pg_dumpall.c:406 pg_dumpall.c:413 -#: pg_dumpall.c:423 pg_dumpall.c:519 pg_restore.c:324 pg_restore.c:340 -#: pg_restore.c:354 +#: 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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Essayez « %s --help » pour plus d'informations." @@ -1511,122 +1530,132 @@ msgstr "Essayez « %s --help » pour plus d'informations." msgid "out of on_exit_nicely slots" msgstr "plus d'emplacements on_exit_nicely" -#: pg_dump.c:821 pg_dumpall.c:388 pg_restore.c:338 +#: pg_dump.c:814 pg_dumpall.c:393 pg_restore.c:340 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "trop d'arguments en ligne de commande (le premier étant « %s »)" -#: pg_dump.c:833 pg_restore.c:362 +#: pg_dump.c:826 pg_restore.c:380 #, c-format msgid "options -s/--schema-only and -a/--data-only cannot be used together" msgstr "les options « -s/--schema-only » et « -a/--data-only » ne peuvent pas être utilisées ensemble" -#: pg_dump.c:835 pg_restore.c:364 +#: pg_dump.c:828 pg_restore.c:382 #, c-format msgid "options -s/--schema-only and --statistics-only cannot be used together" msgstr "les options -s/--schema-only et --statistics-only ne peuvent pas être utilisées ensemble" -#: pg_dump.c:837 pg_restore.c:366 +#: pg_dump.c:830 pg_restore.c:384 #, c-format msgid "options -a/--data-only and --statistics-only cannot be used together" msgstr "les options -a/--data-only et --statistics-only ne peuvent pas être utilisées ensemble" -#: pg_dump.c:841 pg_restore.c:370 +#: pg_dump.c:834 pg_restore.c:388 #, c-format msgid "options -a/--data-only and --no-data cannot be used together" msgstr "les options -a/--data-only et --no-data ne peuvent pas être utilisées ensemble" -#: pg_dump.c:843 pg_restore.c:372 +#: pg_dump.c:836 pg_restore.c:390 #, c-format msgid "options -s/--schema-only and --no-schema cannot be used together" msgstr "les options -s/--schema-only et --no-schema ne peuvent pas être utilisées ensemble" -#: pg_dump.c:845 pg_restore.c:374 +#: pg_dump.c:838 pg_restore.c:392 #, c-format msgid "options --statistics-only and --no-statistics cannot be used together" msgstr "les options --statistics-only et --no-statistics ne peuvent pas être utilisées ensemble" -#: pg_dump.c:849 pg_restore.c:378 +#: pg_dump.c:842 pg_restore.c:396 #, c-format -msgid "options --with-data and --no-data cannot be used together" -msgstr "les options --with-data et --no-data ne peuvent pas être utilisées ensemble" +msgid "options --statistics and --no-statistics cannot be used together" +msgstr "les options --statistics et --no-statistics ne peuvent pas être utilisées ensemble" -#: pg_dump.c:851 pg_restore.c:380 +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 #, c-format -msgid "options --with-schema and --no-schema cannot be used together" -msgstr "les options --with-schema et --no-schem ne peuvent pas être utilisées ensemble" +msgid "options %s and %s cannot be used together" +msgstr "les options « %s » et « %s » ne peuvent pas être utilisées ensemble" -#: pg_dump.c:853 pg_restore.c:382 -#, c-format -msgid "options --with-statistics and --no-statistics cannot be used together" -msgstr "les options --with-statistics et --no-statistics ne peuvent pas être utilisées ensemble" - -#: pg_dump.c:856 +#: pg_dump.c:853 #, c-format msgid "options -s/--schema-only and --include-foreign-data cannot be used together" msgstr "les options « -s/--schema-only » et « --include-foreign-data » ne peuvent pas être utilisées ensemble" -#: pg_dump.c:859 +#: pg_dump.c:856 #, c-format msgid "option --include-foreign-data is not supported with parallel backup" msgstr "l'option --include-foreign-data n'est pas supportée avec une sauvegarde parallélisée" -#: pg_dump.c:862 pg_restore.c:385 +#: pg_dump.c:859 pg_restore.c:407 #, c-format msgid "options -c/--clean and -a/--data-only cannot be used together" msgstr "les options « -c/--clean » et « -a/--data-only » ne peuvent pas être utilisées ensemble" -#: pg_dump.c:865 pg_dumpall.c:418 pg_restore.c:428 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "l'option --if-exists nécessite l'option -c/--clean" -#: pg_dump.c:887 +#: pg_dump.c:882 #, c-format msgid "option --on-conflict-do-nothing requires option --inserts, --rows-per-insert, or --column-inserts" msgstr "l'option --on-conflict-do-nothing requiert l'option --inserts, --rows-per-insert, ou --column-inserts" -#: pg_dump.c:916 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, c-format +msgid "could not generate restrict key" +msgstr "n'a pas pu générer la clé de restriction" + +#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#, c-format +msgid "invalid restrict key" +msgstr "clé de restriction invalide" + +#: pg_dump.c:903 +#, c-format +msgid "option --restrict-key can only be used with --format=plain" +msgstr "l'option --restrict-key peut seulement être utilisée avec --format=plain" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "algorithme de compression inconnu : « %s »" -#: pg_dump.c:923 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "spécification de compression invalide : %s" -#: pg_dump.c:936 +#: pg_dump.c:945 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "l'option de compression « %s » n'est pas actuellement supportée par pg_dump" -#: pg_dump.c:948 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "la sauvegarde parallélisée n'est supportée qu'avec le format directory" -#: pg_dump.c:994 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "le dernier OID interne est %u" -#: pg_dump.c:1003 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "aucun schéma correspondant n'a été trouvé" -#: pg_dump.c:1020 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "aucune table correspondante n'a été trouvée" -#: pg_dump.c:1048 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "aucune extension correspondante n'a été trouvée" -#: pg_dump.c:1241 +#: pg_dump.c:1251 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1635,17 +1664,17 @@ msgstr "" "%s exporte une base de données dans un script texte ou dans d'autres formats.\n" "\n" -#: pg_dump.c:1242 pg_dumpall.c:667 pg_restore.c:503 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "Usage :\n" -#: pg_dump.c:1243 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [BASE]\n" -#: pg_dump.c:1245 pg_dumpall.c:670 pg_restore.c:506 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1654,12 +1683,12 @@ msgstr "" "\n" "Options générales :\n" -#: pg_dump.c:1246 +#: pg_dump.c:1256 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=FICHIER nom du fichier ou du répertoire en sortie\n" -#: pg_dump.c:1247 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1668,24 +1697,24 @@ msgstr "" " -F, --format=c|d|t|p format du fichier de sortie (personnalisé,\n" " répertoire, tar, texte (par défaut))\n" -#: pg_dump.c:1249 +#: pg_dump.c:1259 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr "" " -j, --jobs=NOMBRE utilise ce nombre de jobs en parallèle pour la\n" " sauvegarde\n" -#: pg_dump.c:1250 pg_dumpall.c:672 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose mode verbeux\n" -#: pg_dump.c:1251 pg_dumpall.c:673 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version affiche la version puis quitte\n" -#: pg_dump.c:1252 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1694,31 +1723,31 @@ msgstr "" " -Z, --compress=METHODE[:DETAIL]\n" " compresse comme indiqué\n" -#: pg_dump.c:1254 pg_dumpall.c:674 +#: pg_dump.c:1264 pg_dumpall.c:701 #, c-format msgid " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr "" " --lock-wait-timeout=DÉLAI échec après l'attente du DÉLAI pour un verrou de\n" " table\n" -#: pg_dump.c:1255 pg_dumpall.c:706 +#: pg_dump.c:1265 pg_dumpall.c:733 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr "" " --no-sync n'attend pas que les modifications soient\n" " proprement écrites sur disque\n" -#: pg_dump.c:1256 +#: pg_dump.c:1266 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=METHODE configure la méthode pour synchroniser les fichiers sur disque\n" -#: pg_dump.c:1257 pg_dumpall.c:675 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help affiche cette aide puis quitte\n" -#: pg_dump.c:1259 pg_dumpall.c:676 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1727,66 +1756,66 @@ msgstr "" "\n" "Options contrôlant le contenu en sortie :\n" -#: pg_dump.c:1260 pg_dumpall.c:677 +#: pg_dump.c:1270 pg_dumpall.c:704 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only sauvegarde uniquement les données, pas le schéma et les statistiques\n" -#: pg_dump.c:1261 +#: pg_dump.c:1271 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects inclut les « Large Objects » dans la sauvegarde\n" -#: pg_dump.c:1262 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (comme --large-objects, obsolète)\n" -#: pg_dump.c:1263 +#: pg_dump.c:1273 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects exclut les « Large Objects » de la sauvegarde\n" -#: pg_dump.c:1264 +#: pg_dump.c:1274 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr " --no-blobs (comme --no-large-objects, obsolète)\n" -#: pg_dump.c:1265 pg_restore.c:517 +#: pg_dump.c:1275 pg_restore.c:537 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr "" " -c, --clean nettoie/supprime les objets de la base de données\n" " avant de les créer\n" -#: pg_dump.c:1266 +#: pg_dump.c:1276 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr "" " -C, --create inclut les commandes de création de la base\n" " dans la sauvegarde\n" -#: pg_dump.c:1267 +#: pg_dump.c:1277 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=MOTIF sauvegarde uniquement les extensions indiquées\n" -#: pg_dump.c:1268 pg_dumpall.c:679 +#: pg_dump.c:1278 pg_dumpall.c:706 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=ENCODAGE sauvegarde les données dans l'encodage ENCODAGE\n" -#: pg_dump.c:1269 +#: pg_dump.c:1279 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=MOTIF sauvegarde uniquement les schémas indiqués\n" -#: pg_dump.c:1270 +#: pg_dump.c:1280 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=MOTIF ne sauvegarde pas les schémas indiqués\n" -#: pg_dump.c:1271 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1795,48 +1824,48 @@ msgstr "" " -O, --no-owner ne sauvegarde pas les propriétaires des objets\n" " lors de l'utilisation du format texte\n" -#: pg_dump.c:1273 pg_dumpall.c:683 +#: pg_dump.c:1283 pg_dumpall.c:710 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr " -s, --schema-only sauvegarde uniquement le schéma, pas les données et les statistiques\n" -#: pg_dump.c:1274 +#: pg_dump.c:1284 #, c-format msgid " -S, --superuser=NAME superuser user name to use in plain-text format\n" msgstr "" " -S, --superuser=NOM indique le nom du super-utilisateur à utiliser\n" " avec le format texte\n" -#: pg_dump.c:1275 +#: pg_dump.c:1285 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=MOTIF sauvegarde uniquement les tables indiquées\n" -#: pg_dump.c:1276 +#: pg_dump.c:1286 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=MOTIF ne sauvegarde pas les tables indiquées\n" -#: pg_dump.c:1277 pg_dumpall.c:686 +#: pg_dump.c:1287 pg_dumpall.c:713 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges ne sauvegarde pas les droits sur les objets\n" -#: pg_dump.c:1278 pg_dumpall.c:687 +#: pg_dump.c:1288 pg_dumpall.c:714 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr "" " --binary-upgrade à n'utiliser que par les outils de mise à jour\n" " seulement\n" -#: pg_dump.c:1279 pg_dumpall.c:688 +#: pg_dump.c:1289 pg_dumpall.c:715 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr "" " --column-inserts sauvegarde les données avec des commandes INSERT\n" " en précisant les noms des colonnes\n" -#: pg_dump.c:1280 pg_dumpall.c:689 +#: pg_dump.c:1290 pg_dumpall.c:716 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr "" @@ -1844,14 +1873,14 @@ msgstr "" " dans le but de respecter le standard SQL en\n" " matière de guillemets\n" -#: pg_dump.c:1281 pg_dumpall.c:690 pg_restore.c:534 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr "" " --disable-triggers désactive les triggers en mode de restauration\n" " des données seules\n" -#: pg_dump.c:1282 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1861,12 +1890,12 @@ msgstr "" " sauvegarde uniquement le contenu visible par cet\n" " utilisateur)\n" -#: pg_dump.c:1284 +#: pg_dump.c:1294 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=MOTIF ne sauvegarde PAS les extensions indiquées\n" -#: pg_dump.c:1285 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1876,12 +1905,12 @@ msgstr "" " --exclude-table-and-children=MOTIF\n" " ne sauvegarde PAS les tables indiquées, ceci incluant les tables filles et les partitions\n" -#: pg_dump.c:1288 +#: pg_dump.c:1298 #, c-format msgid " --exclude-table-data=PATTERN do NOT dump data for the specified table(s)\n" msgstr " --exclude-table-data=MOTIF ne sauvegarde pas les tables indiquées\n" -#: pg_dump.c:1289 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1891,14 +1920,14 @@ msgstr "" " --exclude-table-data-and-children=MOTIF\n" " ne sauvegarde PAS les données des tables indiquées, ceci incluant les tables filles et les partitions\n" -#: pg_dump.c:1292 pg_dumpall.c:692 +#: pg_dump.c:1302 pg_dumpall.c:719 #, c-format msgid " --extra-float-digits=NUM override default setting for extra_float_digits\n" msgstr "" " --extra-float-digits=NUM surcharge la configuration par défaut de\n" " extra_float_digits\n" -#: pg_dump.c:1293 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1907,14 +1936,14 @@ msgstr "" " --filter=NOMFICHIER inclut ou exclut des objets et des données à partir de la sauvegarde\n" " basée sur les expressions dans NOMFICHIER\n" -#: pg_dump.c:1295 pg_dumpall.c:694 pg_restore.c:538 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr "" " --if-exists utilise IF EXISTS lors de la suppression des\n" " objets\n" -#: pg_dump.c:1296 +#: pg_dump.c:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1924,133 +1953,143 @@ msgstr "" " --include-foreign-data=MOTIF inclut les données des tables externes pour les\n" " serveurs distants correspondant au motif MOTIF\n" -#: pg_dump.c:1299 pg_dumpall.c:695 +#: pg_dump.c:1309 pg_dumpall.c:722 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr "" " --inserts sauvegarde les données avec des instructions\n" " INSERT plutôt que COPY\n" -#: pg_dump.c:1300 pg_dumpall.c:696 +#: pg_dump.c:1310 pg_dumpall.c:723 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root charger les partitions via la table racine\n" -#: pg_dump.c:1301 pg_dumpall.c:697 +#: pg_dump.c:1311 pg_dumpall.c:724 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments ne sauvegarde pas les commandes de commentaires\n" -#: pg_dump.c:1302 pg_dumpall.c:698 +#: pg_dump.c:1312 pg_dumpall.c:725 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data ne sauvegarde pas les données\n" -#: pg_dump.c:1303 pg_dumpall.c:699 +#: pg_dump.c:1313 pg_dumpall.c:726 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies ne sauvegarde pas les politiques de sécurité des données\n" -#: pg_dump.c:1304 pg_dumpall.c:700 +#: pg_dump.c:1314 pg_dumpall.c:727 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications ne sauvegarde pas les publications\n" -#: pg_dump.c:1305 pg_dumpall.c:702 +#: pg_dump.c:1315 pg_dumpall.c:729 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema ne sauvegarde pas le schéma\n" -#: pg_dump.c:1306 pg_dumpall.c:703 +#: pg_dump.c:1316 pg_dumpall.c:730 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr "" " --no-security-labels ne sauvegarde pas les affectations de labels de\n" " sécurité\n" -#: pg_dump.c:1307 pg_dumpall.c:704 +#: pg_dump.c:1317 pg_dumpall.c:731 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics ne sauvegarde pas les statistiques\n" -#: pg_dump.c:1308 pg_dumpall.c:705 +#: pg_dump.c:1318 pg_dumpall.c:732 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions ne sauvegarde pas les souscriptions\n" -#: pg_dump.c:1309 pg_dumpall.c:707 +#: pg_dump.c:1319 pg_dumpall.c:734 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method ne sauvegarde pas les méthodes d'accès aux tables\n" -#: pg_dump.c:1310 pg_dumpall.c:708 +#: pg_dump.c:1320 pg_dumpall.c:735 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces ne sauvegarde pas les affectations de tablespaces\n" -#: pg_dump.c:1311 pg_dumpall.c:709 +#: pg_dump.c:1321 pg_dumpall.c:736 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr "" " --no-toast-compression ne sauvegarde pas les méthodes de compression de\n" " TOAST\n" -#: pg_dump.c:1312 pg_dumpall.c:710 +#: pg_dump.c:1322 pg_dumpall.c:737 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr "" " --no-unlogged-table-data ne sauvegarde pas les données des tables non\n" " journalisées\n" -#: pg_dump.c:1313 pg_dumpall.c:711 +#: pg_dump.c:1323 pg_dumpall.c:738 #, c-format msgid " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT commands\n" msgstr "" " --on-conflict-do-nothing ajoute ON CONFLICT DO NOTHING aux commandes\n" " INSERT\n" -#: pg_dump.c:1314 pg_dumpall.c:712 +#: pg_dump.c:1324 pg_dumpall.c:739 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr "" " --quote-all-identifiers met entre guillemets tous les identifiants même\n" " s'il ne s'agit pas de mots clés\n" -#: pg_dump.c:1315 pg_dumpall.c:713 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, c-format +msgid " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" +msgstr " --restrict-key=CLE utilise la chaîne fournie comme clé pour \\restrict de psql\n" + +#: pg_dump.c:1326 pg_dumpall.c:741 #, c-format msgid " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" msgstr " --rows-per-insert=NROWS nombre de lignes par INSERT ; implique --inserts\n" -#: pg_dump.c:1316 +#: pg_dump.c:1327 #, c-format msgid " --section=SECTION dump named section (pre-data, data, or post-data)\n" msgstr "" " --section=SECTION sauvegarde la section indiquée (pre-data, data\n" " ou post-data)\n" -#: pg_dump.c:1317 pg_dumpall.c:714 +#: pg_dump.c:1328 pg_dumpall.c:742 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data inclut la données de la séquence dans la sauvegarde\n" -#: pg_dump.c:1318 +#: pg_dump.c:1329 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr "" " --serializable-deferrable attend jusqu'à ce que la sauvegarde puisse\n" " s'exécuter sans anomalies\n" -#: pg_dump.c:1319 +#: pg_dump.c:1330 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT utilise l'image donnée pour la sauvegarde\n" -#: pg_dump.c:1320 pg_dumpall.c:715 +#: pg_dump.c:1331 pg_dumpall.c:743 +#, c-format +msgid " --statistics dump the statistics\n" +msgstr " --with-statistics sauvegarde les statistiques\n" + +#: pg_dump.c:1332 pg_dumpall.c:744 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr " --statistics-only sauvegarde uniquement les statistiques, pas le schéma et les données\n" -#: pg_dump.c:1321 pg_restore.c:553 +#: pg_dump.c:1333 pg_restore.c:575 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2059,14 +2098,14 @@ msgstr "" " --strict-names requiert que les motifs des tables et/ou schémas\n" " correspondent à au moins une entité de chaque\n" -#: pg_dump.c:1323 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" " child and partition tables\n" msgstr " --table-and-children=MODÈLE sauvegarde uniquement les tables indiquées, en incluant les tables filles et les partitions\n" -#: pg_dump.c:1325 pg_dumpall.c:716 pg_restore.c:556 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2078,22 +2117,7 @@ msgstr "" " au lieu des commandes ALTER OWNER pour modifier\n" " les propriétaires\n" -#: pg_dump.c:1328 pg_dumpall.c:719 -#, c-format -msgid " --with-data dump the data\n" -msgstr " --with-data sauvegarde les données\n" - -#: pg_dump.c:1329 pg_dumpall.c:720 -#, c-format -msgid " --with-schema dump the schema\n" -msgstr " --with-schema sauvegarde le schéma\n" - -#: pg_dump.c:1330 pg_dumpall.c:721 -#, c-format -msgid " --with-statistics dump the statistics\n" -msgstr " --with-statistics sauvegarde les statistiques\n" - -#: pg_dump.c:1332 pg_dumpall.c:723 pg_restore.c:563 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2102,46 +2126,46 @@ msgstr "" "\n" "Options de connexion :\n" -#: pg_dump.c:1333 +#: pg_dump.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=BASE base de données à sauvegarder\n" -#: pg_dump.c:1334 pg_dumpall.c:725 pg_restore.c:564 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=HÔTE hôte du serveur de bases de données ou\n" " répertoire des sockets\n" -#: pg_dump.c:1335 pg_dumpall.c:727 pg_restore.c:565 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT numéro de port du serveur de bases de données\n" -#: pg_dump.c:1336 pg_dumpall.c:728 pg_restore.c:566 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NOM se connecter avec cet utilisateur\n" -#: pg_dump.c:1337 pg_dumpall.c:729 pg_restore.c:567 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password ne demande jamais un mot de passe\n" -#: pg_dump.c:1338 pg_dumpall.c:730 pg_restore.c:568 +#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr "" " -W, --password force la demande du mot de passe (devrait\n" " survenir automatiquement)\n" -#: pg_dump.c:1339 pg_dumpall.c:731 +#: pg_dump.c:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=NOMROLE exécute SET ROLE avant la sauvegarde\n" -#: pg_dump.c:1341 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2154,562 +2178,562 @@ msgstr "" "d'environnement PGDATABASE est alors utilisée.\n" "\n" -#: pg_dump.c:1343 pg_dumpall.c:735 pg_restore.c:575 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Rapporter les bogues à <%s>.\n" -#: pg_dump.c:1344 pg_dumpall.c:736 pg_restore.c:576 +#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "Page d'accueil de %s : <%s>\n" -#: pg_dump.c:1363 pg_dumpall.c:549 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "encodage client indiqué (« %s ») invalide" -#: pg_dump.c:1511 +#: pg_dump.c:1520 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "les sauvegardes parallélisées sur un serveur standby ne sont pas supportées par cette version du serveur" -#: pg_dump.c:1576 +#: pg_dump.c:1585 #, c-format msgid "invalid output format \"%s\" specified" msgstr "format de sortie « %s » invalide" -#: pg_dump.c:1617 pg_dump.c:1673 pg_dump.c:1726 pg_dumpall.c:1556 +#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "mauvaise qualification du nom (trop de points entre les noms) : %s" -#: pg_dump.c:1625 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "aucun schéma correspondant n'a été trouvé avec le motif « %s »" -#: pg_dump.c:1678 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "aucune extension correspondante n'a été trouvée avec le motif « %s »" -#: pg_dump.c:1731 +#: pg_dump.c:1740 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "aucun serveur distant correspondant n'a été trouvé avec le motif « %s »" -#: pg_dump.c:1802 +#: pg_dump.c:1811 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "nom de relation incorrecte (trop de points entre les noms) : %s" -#: pg_dump.c:1824 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "aucune table correspondante n'a été trouvée avec le motif « %s »" -#: pg_dump.c:1851 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "Vous n'êtes pas connecté à une base de données." -#: pg_dump.c:1854 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "les références entre bases de données ne sont pas implémentées : %s" -#: pg_dump.c:2320 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "sauvegarde du contenu de la table « %s.%s »" -#: pg_dump.c:2430 +#: pg_dump.c:2439 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "Sauvegarde du contenu de la table « %s » échouée : échec de PQgetCopyData()." -#: pg_dump.c:2431 pg_dump.c:2441 +#: pg_dump.c:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "Message d'erreur du serveur : %s" -#: pg_dump.c:2432 pg_dump.c:2442 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "La commande était : %s" -#: pg_dump.c:2440 +#: pg_dump.c:2449 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "Sauvegarde du contenu de la table « %s » échouée : échec de PQgetResult()." -#: pg_dump.c:2531 +#: pg_dump.c:2540 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "mauvais nombre de champs récupérés à partir de la table « %s »" -#: pg_dump.c:3246 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "sauvegarde de la définition de la base de données" -#: pg_dump.c:3361 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "fournisseur de locale non reconnu : %s" -#: pg_dump.c:3722 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "encodage de la sauvegarde = %s" -#: pg_dump.c:3747 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "sauvegarde de « standard_conforming_strings = %s »" -#: pg_dump.c:3786 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "n'a pas pu analyser le résultat de current_schema()" -#: pg_dump.c:3805 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "sauvegarde de « search_path = %s »" -#: pg_dump.c:3841 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "lecture des « Large Objects »" -#: pg_dump.c:4062 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "sauvegarde des « Large Objects » « %s »" -#: pg_dump.c:4083 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "erreur lors de la lecture du « Large Object » %u : %s" -#: pg_dump.c:4191 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "lecture des politiques de sécurité au niveau ligne" -#: pg_dump.c:4332 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "type de commande inattendu pour la politique : %c" -#: pg_dump.c:4774 pg_dump.c:5331 pg_dump.c:7960 pg_dump.c:13438 pg_dump.c:19631 -#: pg_dump.c:19633 pg_dump.c:20265 +#: 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 #, c-format msgid "could not parse %s array" msgstr "n'a pas pu analyser le tableau %s" -#: pg_dump.c:4990 +#: pg_dump.c:5002 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "les souscriptions ne sont pas sauvegardées parce que l'utilisateur courant n'est pas un superutilisateur" -#: pg_dump.c:5194 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "la souscription d'OID %u n'existe pas" -#: pg_dump.c:5201 +#: pg_dump.c:5213 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "vérification de santé échouée, table d'OID %u introuvable" -#: pg_dump.c:5787 +#: pg_dump.c:5799 #, c-format msgid "could not find parent extension for %s %s" msgstr "n'a pas pu trouver l'extension parent pour %s %s" -#: pg_dump.c:5925 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "le schéma d'OID %u n'existe pas" -#: pg_dump.c:6982 +#: pg_dump.c:6994 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "ne peut pas exporter les statistiques pour le type de relation « %c »" -#: pg_dump.c:7494 pg_dump.c:18975 +#: pg_dump.c:7506 pg_dump.c:18987 #, c-format msgid "failed sanity check, parent table with OID %u of sequence with OID %u not found" msgstr "vérification échouée, OID %u de la table parent de l'OID %u de la séquence introuvable" -#: pg_dump.c:7639 +#: pg_dump.c:7651 #, c-format msgid "failed sanity check, table OID %u appearing in pg_partitioned_table not found" msgstr "vérification échouée, OID de table %u apparaissant dans partitioned introuvable" -#: pg_dump.c:7904 pg_dump.c:8197 pg_dump.c:8660 pg_dump.c:9305 pg_dump.c:9444 -#: pg_dump.c:9589 pg_dump.c:9689 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "OID de table %u non reconnu" -#: pg_dump.c:7908 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "données d'index inattendu pour la table « %s »" -#: pg_dump.c:8447 +#: pg_dump.c:8459 #, c-format msgid "failed sanity check, parent table with OID %u of pg_rewrite entry with OID %u not found" msgstr "vérification échouée, OID %u de la table parent de l'OID %u de l'entrée de pg_rewrite introuvable" -#: pg_dump.c:9309 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "données de colonne inattendues pour la table « %s »" -#: pg_dump.c:9341 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "numérotation des colonnes invalide pour la table « %s »" -#: pg_dump.c:9406 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "recherche des expressions par défaut de la table" -#: pg_dump.c:9448 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "valeur adnum %d invalide pour la table « %s »" -#: pg_dump.c:9541 +#: pg_dump.c:9553 #, c-format msgid "finding invalid not-null constraints" msgstr "recherche des contraintes NOT NULL invalides" -#: pg_dump.c:9639 +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "recherche des contraintes CHECK de la table" -#: pg_dump.c:9693 +#: pg_dump.c:9705 #, 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 contrainte de vérification attendue pour la table « %s » mais %d trouvée" msgstr[1] "%d contraintes de vérification attendues pour la table « %s » mais %d trouvée" -#: pg_dump.c:9697 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "Les catalogues système pourraient être corrompus." -#: pg_dump.c:10502 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "le rôle d'OID %u n'existe pas" -#: pg_dump.c:10614 pg_dump.c:10643 +#: pg_dump.c:10626 pg_dump.c:10655 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "entrée pg_init_privs non supportée : %u %u %d" -#: pg_dump.c:10939 +#: pg_dump.c:10951 #, c-format msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" msgstr "statistiques sauvegardées dans le désordre (actuellement : %d %s %s, attendu : %d %s %s)" -#: pg_dump.c:11080 +#: pg_dump.c:11092 #, c-format msgid "unexpected null attname" msgstr "attname null inattendue" -#: pg_dump.c:11109 +#: pg_dump.c:11121 #, c-format msgid "could not find index attname \"%s\"" msgstr "n'a pas pu trouver une colonne d'index « %s »" -#: pg_dump.c:11595 +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "métadonnée manquante pour les Large Object « %s »" -#: pg_dump.c:11881 +#: pg_dump.c:11893 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "la colonne typtype du type de données « %s » semble être invalide" -#: pg_dump.c:13509 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "valeur provolatile non reconnue pour la fonction « %s »" -#: pg_dump.c:13559 pg_dump.c:15455 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "valeur proparallel non reconnue pour la fonction « %s »" -#: pg_dump.c:13689 pg_dump.c:13795 pg_dump.c:13802 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, c-format msgid "could not find function definition for function with OID %u" msgstr "n'a pas pu trouver la définition de la fonction d'OID %u" -#: pg_dump.c:13728 +#: pg_dump.c:13740 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "valeur erronée dans le champ pg_cast.castfunc ou pg_cast.castmethod" -#: pg_dump.c:13731 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "valeur erronée dans pg_cast.castmethod" -#: pg_dump.c:13821 +#: pg_dump.c:13833 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "définition de transformation invalide, au moins un de trffromsql et trftosql ne doit pas valoir 0" -#: pg_dump.c:13838 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "valeur erronée dans pg_transform.trffromsql" -#: pg_dump.c:13859 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "valeur erronée dans pg_transform.trftosql" -#: pg_dump.c:14004 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "les opérateurs postfixes ne sont plus supportés (opérateur « %s »)" -#: pg_dump.c:14174 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "n'a pas pu trouver l'opérateur d'OID %s" -#: pg_dump.c:14242 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "type « %c » invalide de la méthode d'accès « %s »" -#: pg_dump.c:14916 pg_dump.c:14984 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "fournisseur de collationnement non reconnu : %s" -#: pg_dump.c:14925 pg_dump.c:14932 pg_dump.c:14943 pg_dump.c:14953 -#: pg_dump.c:14968 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "collation « %s » invalide" -#: pg_dump.c:15374 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "valeur non reconnue de aggfinalmodify pour l'agrégat « %s »" -#: pg_dump.c:15430 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "valeur non reconnue de aggmfinalmodify pour l'agrégat « %s »" -#: pg_dump.c:16150 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "type d'objet inconnu dans les droits par défaut : %d" -#: pg_dump.c:16166 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "n'a pas pu analyser la liste ACL par défaut (%s)" -#: pg_dump.c:16250 +#: pg_dump.c:16262 #, c-format msgid "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "n'a pas pu analyser la liste ACL initiale (%s) ou par défaut (%s) pour l'objet « %s » (%s)" -#: pg_dump.c:16275 +#: pg_dump.c:16287 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "n'a pas pu analyser la liste ACL (%s) ou par défaut (%s) pour l'objet « %s » (%s)" -#: pg_dump.c:16818 +#: pg_dump.c:16830 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "la requête permettant d'obtenir la définition de la vue « %s » n'a renvoyé aucune donnée" -#: pg_dump.c:16821 +#: pg_dump.c:16833 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "la requête permettant d'obtenir la définition de la vue « %s » a renvoyé plusieurs définitions" -#: pg_dump.c:16828 +#: pg_dump.c:16840 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "la définition de la vue « %s » semble être vide (longueur nulle)" -#: pg_dump.c:16913 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS n'est plus supporté (table « %s »)" -#: pg_dump.c:18053 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "numéro de colonne %d invalide pour la table « %s »" -#: pg_dump.c:18131 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "n'a pas pu analyser les colonnes statistiques de l'index" -#: pg_dump.c:18133 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "n'a pas pu analyser les valeurs statistiques de l'index" -#: pg_dump.c:18135 +#: pg_dump.c:18147 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "nombre de colonnes et de valeurs différentes pour les statistiques des index" -#: pg_dump.c:18364 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "index manquant pour la contrainte « %s »" -#: pg_dump.c:18633 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "type de contrainte inconnu : %c" -#: pg_dump.c:18686 +#: pg_dump.c:18698 #, c-format msgid "unrecognized sequence type: %s" msgstr "type de séquence non reconnu : « %s »" -#: pg_dump.c:18818 pg_dump.c:19050 +#: pg_dump.c:18830 pg_dump.c:19062 #, 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 requête permettant d'obtenir les données de la séquence « %s » a renvoyé %d ligne (une seule attendue)" msgstr[1] "la requête permettant d'obtenir les données de la séquence « %s » a renvoyé %d ligne (une seule attendue)" -#: pg_dump.c:18854 +#: pg_dump.c:18866 #, c-format msgid "unrecognized sequence type: %d" msgstr "type de séquence non reconnu : %d" -#: pg_dump.c:19383 +#: pg_dump.c:19400 #, c-format msgid "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows returned" msgstr "la requête permettant d'obtenir la règle « %s » associée à la table « %s » a échoué : mauvais nombre de lignes renvoyées" -#: pg_dump.c:19536 +#: pg_dump.c:19553 #, c-format msgid "could not find referenced extension %u" msgstr "n'a pas pu trouver l'extension référencée %u" -#: pg_dump.c:19635 +#: pg_dump.c:19652 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "nombre différent de configurations et de conditions pour l'extension" -#: pg_dump.c:19767 +#: pg_dump.c:19784 #, c-format msgid "reading dependency data" msgstr "lecture des données de dépendance" -#: pg_dump.c:19853 +#: pg_dump.c:19870 #, c-format msgid "no referencing object %u %u" msgstr "pas d'objet référant %u %u" -#: pg_dump.c:19864 +#: pg_dump.c:19881 #, c-format msgid "no referenced object %u %u" msgstr "pas d'objet référencé %u %u" -#: pg_dump.c:20299 pg_dump.c:20337 pg_dumpall.c:1801 pg_restore.c:610 -#: pg_restore.c:656 +#: pg_dump.c:20316 pg_dump.c:20354 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "filtre %s pour « %s » n'est pas autorisé" -#: pg_dump_sort.c:636 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "dumpId %d invalide" -#: pg_dump_sort.c:642 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "dépendance invalide %d" -#: pg_dump_sort.c:806 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "n'a pas pu identifier la boucle de dépendance" -#: pg_dump_sort.c:1450 +#: pg_dump_sort.c:1462 #, 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] "NOTE : il existe des contraintes de clés étrangères circulaires sur cette table :" msgstr[1] "NOTE : il existe des contraintes de clés étrangères circulaires sur ces tables :" -#: pg_dump_sort.c:1455 +#: pg_dump_sort.c:1467 #, c-format msgid "You might not be able to restore the dump without using --disable-triggers or temporarily dropping the constraints." msgstr "Il est possible de restaurer la sauvegarde sans utiliser --disable-triggers ou sans supprimer temporairement les contraintes." -#: pg_dump_sort.c:1456 +#: pg_dump_sort.c:1468 #, c-format msgid "Consider using a full dump instead of a --data-only dump to avoid this problem." msgstr "Considérez l'utilisation d'une sauvegarde complète au lieu d'une sauvegarde des données seulement pour éviter ce problème." -#: pg_dump_sort.c:1468 +#: pg_dump_sort.c:1480 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "n'a pas pu résoudre la boucle de dépendances parmi ces éléments :" -#: pg_dumpall.c:241 +#: pg_dumpall.c:240 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "le programme « %s » est nécessaire pour %s, mais n'a pas été trouvé dans le même répertoire que « %s »" -#: pg_dumpall.c:244 +#: pg_dumpall.c:243 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "le programme « %s » a été trouvé par « %s » mais n'est pas de la même version que %s" -#: pg_dumpall.c:397 +#: 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 "l'option --exclude-database ne peut pas être utilisée avec -g/--globals-only, -r/--roles-only ou -t/--tablespaces-only" -#: pg_dumpall.c:405 +#: pg_dumpall.c:410 #, c-format msgid "options -g/--globals-only and -r/--roles-only cannot be used together" msgstr "les options « -g/--globals-only » et « -r/--roles-only » ne peuvent pas être utilisées ensemble" -#: pg_dumpall.c:412 +#: pg_dumpall.c:417 #, c-format msgid "options -g/--globals-only and -t/--tablespaces-only cannot be used together" msgstr "les options « -g/--globals-only » et « -t/--tablespaces-only » ne peuvent pas être utilisées ensemble" -#: pg_dumpall.c:422 +#: pg_dumpall.c:427 #, c-format msgid "options -r/--roles-only and -t/--tablespaces-only cannot be used together" msgstr "les options « -r/--roles-only » et « -t/--tablespaces-only » ne peuvent pas être utilisées ensemble" -#: pg_dumpall.c:517 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2718,7 +2742,7 @@ msgstr "" "n'a pas pu se connecter aux bases « postgres » et « template1 ».\n" "Merci de préciser une autre base de données." -#: pg_dumpall.c:666 +#: pg_dumpall.c:693 #, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" @@ -2728,84 +2752,84 @@ msgstr "" "commandes SQL.\n" "\n" -#: pg_dumpall.c:668 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPTION]...\n" -#: pg_dumpall.c:671 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=FICHIER nom du fichier de sortie\n" -#: pg_dumpall.c:678 +#: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr "" " -c, --clean nettoie (supprime) les bases de données avant de\n" " les créer\n" -#: pg_dumpall.c:680 +#: pg_dumpall.c:707 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr "" " -g, --globals-only sauvegarde uniquement les objets système, pas\n" " le contenu des bases de données\n" -#: pg_dumpall.c:681 pg_restore.c:526 +#: pg_dumpall.c:708 pg_restore.c:546 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner omet la restauration des propriétaires des objets\n" -#: pg_dumpall.c:682 +#: pg_dumpall.c:709 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr "" " -r, --roles-only sauvegarde uniquement les rôles, pas les bases\n" " de données ni les tablespaces\n" -#: pg_dumpall.c:684 +#: pg_dumpall.c:711 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr "" " -S, --superuser=NOM indique le nom du super-utilisateur à utiliser\n" " avec le format texte\n" -#: pg_dumpall.c:685 +#: pg_dumpall.c:712 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr "" " -t, --tablespaces-only sauvegarde uniquement les tablespaces, pas les\n" " bases de données ni les rôles\n" -#: pg_dumpall.c:691 +#: pg_dumpall.c:718 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr "" " --exclude-database=MOTIF exclut les bases de données dont le nom\n" " correspond au motif\n" -#: pg_dumpall.c:693 +#: pg_dumpall.c:720 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " -f, --file=FICHIER exclut les bases indiquées sous forme d'expressions dans FICHIER\n" -#: pg_dumpall.c:701 +#: pg_dumpall.c:728 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords ne sauvegarde pas les mots de passe des rôles\n" -#: pg_dumpall.c:724 +#: pg_dumpall.c:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CHAINE_CONNEX connexion à l'aide de la chaîne de connexion\n" -#: pg_dumpall.c:726 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=BASE indique une autre base par défaut\n" -#: pg_dumpall.c:733 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2818,102 +2842,107 @@ msgstr "" "standard.\n" "\n" -#: pg_dumpall.c:878 +#: pg_dumpall.c:904 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "nom de rôle commençant par « pg_ » ignoré (« %s »)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1095 pg_dumpall.c:1153 pg_dumpall.c:1162 +#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "a trouvé une entrée pg_auth_members orpheline pour le rôle %s" -#: pg_dumpall.c:1128 +#: pg_dumpall.c:1154 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "n'a pas pu trouver un ordre de sauvegarde correct pour les appartenances au rôle « %s »" -#: pg_dumpall.c:1283 +#: pg_dumpall.c:1309 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "n'a pas pu analyser la liste d'ACL (%s) pour le paramètre « %s »" -#: pg_dumpall.c:1410 +#: pg_dumpall.c:1436 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "n'a pas pu analyser la liste d'ACL (%s) pour le tablespace « %s »" -#: pg_dumpall.c:1617 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "exclusion de la base de données « %s »" -#: pg_dumpall.c:1621 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "sauvegarde de la base de données « %s »" -#: pg_dumpall.c:1652 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "échec de pg_dump sur la base de données « %s », quitte" -#: pg_dumpall.c:1658 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "n'a pas pu ré-ouvrir le fichier de sortie « %s » : %m" -#: pg_dumpall.c:1702 +#: pg_dumpall.c:1737 #, c-format msgid "running \"%s\"" msgstr "exécute « %s »" -#: pg_dumpall.c:1821 +#: pg_dumpall.c:1856 msgid "unsupported filter object" msgstr "objet de filtre non supporté" -#: pg_restore.c:346 +#: pg_restore.c:348 #, c-format msgid "one of -d/--dbname and -f/--file must be specified" msgstr "une seule des options -d/--dbname and -f/--file peut être indiquée" -#: pg_restore.c:353 +#: pg_restore.c:355 #, c-format msgid "options -d/--dbname and -f/--file cannot be used together" msgstr "les options « -d/--dbname » et « -f/--file » ne peuvent pas être utilisées ensemble" -#: pg_restore.c:388 +#: pg_restore.c:361 +#, c-format +msgid "options -d/--dbname and --restrict-key cannot be used together" +msgstr "les options « -d/--dbname » et « --restrict-key » ne peuvent pas être utilisées ensemble" + +#: pg_restore.c:410 #, c-format msgid "options -1/--single-transaction and --transaction-size cannot be used together" msgstr "les options -1/--single-transaction » et --transaction-size ne peuvent pas être utilisées ensemble" -#: pg_restore.c:395 +#: pg_restore.c:417 #, c-format msgid "options -C/--create and -1/--single-transaction cannot be used together" msgstr "les options « -C/--create » et « -1/--single-transaction » ne peuvent pas être utilisées ensemble" -#: pg_restore.c:399 +#: pg_restore.c:421 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "ne peut pas spécifier à la fois l'option --single-transaction et demander plusieurs jobs" -#: pg_restore.c:447 +#: pg_restore.c:467 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "le format d'archive « %s » n'est pas supporté ; merci d'utiliser psql" -#: pg_restore.c:451 +#: pg_restore.c:471 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "format d'archive « %s » non reconnu ; merci d'indiquer « c », « d » ou « t »" -#: pg_restore.c:489 +#: pg_restore.c:509 #, c-format msgid "errors ignored on restore: %d" msgstr "erreurs ignorées lors de la restauration : %d" -#: pg_restore.c:502 +#: pg_restore.c:522 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2923,51 +2952,51 @@ msgstr "" "par pg_dump.\n" "\n" -#: pg_restore.c:504 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPTION]... [FICHIER]\n" -#: pg_restore.c:507 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr "" " -d, --dbname=NOM nom de la base de données utilisée pour la\n" " connexion\n" -#: pg_restore.c:508 +#: pg_restore.c:528 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FICHIER nom du fichier de sortie (- pour stdout)\n" -#: pg_restore.c:509 +#: pg_restore.c:529 #, c-format msgid " -F, --format=c|d|t backup file format (should be automatic)\n" msgstr "" " -F, --format=c|d|t format du fichier de sauvegarde (devrait être\n" " automatique)\n" -#: pg_restore.c:510 +#: pg_restore.c:530 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list affiche la table des matières de l'archive (TOC)\n" -#: pg_restore.c:511 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose mode verbeux\n" -#: pg_restore.c:512 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version affiche la version puis quitte\n" -#: pg_restore.c:513 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help affiche cette aide puis quitte\n" -#: pg_restore.c:515 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -2976,34 +3005,34 @@ msgstr "" "\n" "Options contrôlant la restauration :\n" -#: pg_restore.c:516 +#: pg_restore.c:536 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only restaure uniquement les données, pas la structure\n" -#: pg_restore.c:518 +#: pg_restore.c:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create crée la base de données cible\n" -#: pg_restore.c:519 +#: pg_restore.c:539 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error quitte en cas d'erreur, continue par défaut\n" -#: pg_restore.c:520 +#: pg_restore.c:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NOM restaure l'index indiqué\n" -#: pg_restore.c:521 +#: pg_restore.c:541 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr "" " -j, --jobs=NOMBRE utilise ce nombre de jobs en parallèle pour la\n" " restauration\n" -#: pg_restore.c:522 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3012,61 +3041,61 @@ msgstr "" " -L, --use-list=FICHIER utilise la table des matières à partir de ce\n" " fichier pour sélectionner/trier la sortie\n" -#: pg_restore.c:524 +#: pg_restore.c:544 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NOM restaure uniquement les objets de ce schéma\n" -#: pg_restore.c:525 +#: pg_restore.c:545 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=NOM ne restaure pas les objets de ce schéma\n" -#: pg_restore.c:527 +#: pg_restore.c:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NOM(args) restaure la fonction indiquée\n" -#: pg_restore.c:528 +#: pg_restore.c:548 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only restaure uniquement la structure, pas les données\n" -#: pg_restore.c:529 +#: pg_restore.c:549 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr "" " -S, --superuser=NOM indique le nom du super-utilisateur à utiliser\n" " pour désactiver les triggers\n" -#: pg_restore.c:530 +#: pg_restore.c:550 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NOM restaure la relation indiquée (table, vue, etc)\n" -#: pg_restore.c:531 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NOM restaure le trigger indiqué\n" -#: pg_restore.c:532 +#: pg_restore.c:552 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr "" " -x, --no-privileges omet la restauration des droits sur les objets\n" " (grant/revoke)\n" -#: pg_restore.c:533 +#: pg_restore.c:553 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction restaure dans une seule transaction\n" -#: pg_restore.c:535 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security active la sécurité niveau ligne\n" -#: pg_restore.c:536 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3075,17 +3104,17 @@ msgstr "" " --filter=NOMFICHIER restaure ou ignore les objets suivant des expressions\n" " dans NOMFICHIER\n" -#: pg_restore.c:539 +#: pg_restore.c:559 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments ne restaure pas les commandes de commentaires\n" -#: pg_restore.c:540 +#: pg_restore.c:560 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data ne restaure pas les données\n" -#: pg_restore.c:541 +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not be\n" @@ -3094,84 +3123,74 @@ msgstr "" " --no-data-for-failed-tables ne restaure pas les données des tables qui n'ont\n" " pas pu être créées\n" -#: pg_restore.c:543 +#: pg_restore.c:563 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies ne restaure pas les politiques de sécurité des lignes\n" -#: pg_restore.c:544 +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications ne restaure pas les publications\n" -#: pg_restore.c:545 +#: pg_restore.c:565 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema ne restaure pas les schémas\n" -#: pg_restore.c:546 +#: pg_restore.c:566 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels ne restaure pas les labels de sécurité\n" -#: pg_restore.c:547 +#: pg_restore.c:567 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics ne restaure pas les statistiques\n" -#: pg_restore.c:548 +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions ne restaure pas les souscriptions\n" -#: pg_restore.c:549 +#: pg_restore.c:569 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method ne restaure pas les méthodes d'accès aux tables\n" -#: pg_restore.c:550 +#: pg_restore.c:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces ne restaure pas les affectations de tablespaces\n" -#: pg_restore.c:551 +#: pg_restore.c:572 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr "" " --section=SECTION restaure la section indiquée (pre-data, data ou\n" " post-data)\n" -#: pg_restore.c:552 +#: pg_restore.c:573 +#, c-format +msgid " --statistics restore the statistics\n" +msgstr " --with-statistics restaure les statistiques\n" + +#: pg_restore.c:574 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only restaure uniquement les statistiques, pas le schéma et les données\n" -#: pg_restore.c:555 +#: pg_restore.c:577 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N valide après N objets\n" -#: pg_restore.c:559 -#, c-format -msgid " --with-data restore the data\n" -msgstr " --with-data restaure les données\n" - -#: pg_restore.c:560 -#, c-format -msgid " --with-schema restore the schema\n" -msgstr " --with-schema restaure le schéma\n" - -#: pg_restore.c:561 -#, c-format -msgid " --with-statistics restore the statistics\n" -msgstr " --with-statistics restaure les statistiques\n" - -#: pg_restore.c:569 +#: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=RÔLE exécute SET ROLE avant la restauration\n" -#: pg_restore.c:571 +#: pg_restore.c:590 #, c-format msgid "" "\n" @@ -3182,7 +3201,7 @@ msgstr "" "Les options -I, -n, -N, -P, -t, -T et --section peuvent être combinées et indiquées\n" "plusieurs fois pour sélectionner plusieurs objets.\n" -#: pg_restore.c:574 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -3198,6 +3217,22 @@ msgstr "" #~ msgid " --exclude-database=PATTERN do not restore the specified database(s)\n" #~ msgstr " --exclude-database=MOTIF ne restaure pas la base de données indiquée\n" +#, c-format +#~ msgid " --with-data dump the data\n" +#~ msgstr " --with-data sauvegarde les données\n" + +#, c-format +#~ msgid " --with-data restore the data\n" +#~ msgstr " --with-data restaure les données\n" + +#, c-format +#~ msgid " --with-schema dump the schema\n" +#~ msgstr " --with-schema sauvegarde le schéma\n" + +#, c-format +#~ msgid " --with-schema restore the schema\n" +#~ msgstr " --with-schema restaure le schéma\n" + #, c-format #~ msgid " -g, --globals-only restore only global objects, no databases\n" #~ msgstr "" @@ -3228,6 +3263,10 @@ msgstr "" #~ msgid "could not open file: \"%s\"" #~ msgstr "n'a pas pu ouvrir le fichier : « %s »" +#, c-format +#~ msgid "could not write to LOs TOC file: %s" +#~ msgstr "n'a pas pu écrire dans le fichier TOC des Large Objects : %s" + #, c-format #~ msgid "database name \"%s\" matches exclude pattern \"%s\"" #~ msgstr "le nom de base « %s » correspondre au motif d'exclusion « %s »" @@ -3310,6 +3349,18 @@ msgstr "" #~ msgid "option -l/--list cannot be used when restoring an archive created by pg_dumpall" #~ msgstr "l'option -l/--list ne peut pas être utilisée lors de la restauration d'une archive créée par pg_dumpall" +#, c-format +#~ msgid "options --with-data and --no-data cannot be used together" +#~ msgstr "les options --with-data et --no-data ne peuvent pas être utilisées ensemble" + +#, c-format +#~ msgid "options --with-schema and --no-schema cannot be used together" +#~ msgstr "les options --with-schema et --no-schem ne peuvent pas être utilisées ensemble" + +#, c-format +#~ msgid "options --with-statistics and --no-statistics cannot be used together" +#~ msgstr "les options --with-statistics et --no-statistics ne peuvent pas être utilisées ensemble" + #, c-format #~ msgid "reconnection failed: %s" #~ msgstr "échec de la reconnexion : %s" @@ -3322,6 +3373,10 @@ msgstr "" #~ msgid "trying to connect to database \"%s\"" #~ msgstr "tentative de connexion à la base de données « %s »" +#, c-format +#~ msgid "unhandled mode \"%s\"" +#~ msgstr "mode « %s » non géré" + #, c-format #~ msgid "unrecognized output format \"%s\"; please specify \"c\", \"d\", \"p\", or \"t\"" #~ msgstr "format d'archive « %s » non reconnu ; merci d'indiquer « c », « d »; « p » ou « t »" diff --git a/src/bin/pg_dump/po/ko.po b/src/bin/pg_dump/po/ko.po index 296f7e5ff487f..4f4ec2dcee4f4 100644 --- a/src/bin/pg_dump/po/ko.po +++ b/src/bin/pg_dump/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_dump (PostgreSQL) 17\n" +"Project-Id-Version: pg_dump (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:51+0000\n" -"PO-Revision-Date: 2025-01-16 14:55+0900\n" +"POT-Creation-Date: 2025-09-11 21:51+0000\n" +"PO-Revision-Date: 2025-09-10 12:51+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -15,30 +15,30 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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:428 compress_gzip.c:435 +#: 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 압축 미지원 상태로 빌드 되었습니다" @@ -110,27 +110,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 "메모리 부족" @@ -145,45 +145,44 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 중복할 수 없음 (내부 오류)\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:943 #, 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 "\"%s\" 파일을 fsync 할 수 없음: %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" @@ -233,242 +232,242 @@ 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 "사용자 정의 글자 정렬(collation) 읽는 중" -#: 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 "형변환자(type cast)들을 읽는 중" -#: common.c:211 +#: common.c:188 #, c-format msgid "reading transforms" msgstr "변환자(transform) 읽는 중" -#: 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 "재미난 테이블들(interesting tables)을 위해 열 정보를 읽는 중" -#: 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 "룰(rule) 읽는 중" -#: 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\" 숫자 배열을 분석할 수 없음: 숫자안에 이상한 글자가 있음" @@ -483,7 +482,7 @@ msgstr "압축 라이브러리를 초기화 할 수 없음: %s" msgid "could not close compression stream: %s" msgstr "압축 스트림을 닫을 수 없음: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "자료를 압축할 수 없음: %s" @@ -498,151 +497,246 @@ msgstr "자료 압축을 풀 수 없습니다: %s" 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:277 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:374 pg_backup_custom.c:651 +#: compress_gzip.c:294 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_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:372 pg_backup_custom.c:649 pg_backup_directory.c:565 +#: compress_gzip.c:312 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:232 compress_zstd.c:491 -#: compress_zstd.c:499 +#: 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:195 compress_zstd.c:309 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "자료를 압축 해제 할 수 없음: %s" -#: compress_zstd.c:502 +#: 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:937 +#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 +#, c-format +msgid "%s" +msgstr "%s" + +#: connectdb.c:157 pg_dumpall.c:514 +#, 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 "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" + +#: connectdb.c:282 pg_dumpall.c:1784 +#, c-format +msgid "executing %s" +msgstr "실행중: %s" + +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 +#, c-format +msgid "query failed: %s" +msgstr "쿼리 실패: %s" + +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 +#, c-format +msgid "Query was: %s" +msgstr "사용한 쿼리: %s" + +#: dumputils.c:948 +#, c-format +msgid "could not create directory \"%s\": %m" +msgstr "\"%s\" 디렉터리를 만들 수 없음: %m" + +#: dumputils.c:953 +#, c-format +msgid "could not change permissions of directory \"%s\": %m" +msgstr "\"%s\" 디렉터리의 액세스 권한을 바꿀 수 없습니다: %m" + +#: dumputils.c:958 #, c-format -msgid "unhandled mode \"%s\"" -msgstr "\"%s\" 모드는 처리할 수 없음" +msgid "directory \"%s\" is not empty" +msgstr "\"%s\" 디렉터리가 비어있지 않음" -#: filter.c:49 +#: 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" @@ -654,437 +748,454 @@ msgstr "" "이 상황은 일반적으로 다른 세션에서 해당 테이블을 이미 덤프하고 있거나 기타 다" "른 이유로 다른 세션에 의해서 선점 된 경우입니다." -#: 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 "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 "pre-1.3 archive에서 직통 데이터베이스 접속은 지원되지 않음" -#: pg_backup_archiver.c:442 +#: pg_backup_archiver.c:450 #, c-format -msgid "implied data-only restore" -msgstr "암묵적으로 자료만 복원" +msgid "implied no-schema restore" +msgstr "암묵적인 no-schema 복원" -#: 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 "\"%s\" 구문에서 insert IF EXISTS 부분을 찾을 수 없음" -#: 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 "선택한 파일 양식으로는 large-object를 덤프할 수 없음" -#: pg_backup_archiver.c:1442 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "%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 "%u OID large object를 복원중" -#: pg_backup_archiver.c:1481 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "%u large object를 만들 수 없음: %s" -#: pg_backup_archiver.c:1486 pg_dump.c:3888 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "%u large object를 열 수 없음: %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 "%d ID에 대한 항목을 찾지 못했음" -#: 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:548 #, 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)" msgstr[0] "%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 "%d TOC 항목에서; %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 "TABLE DATA 아이템에 대한 잘못된 테이블 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 "추가용 표준출력 파일을 열 수 없음: %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:4761 #, 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:4774 #, 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 "WriteToc() 안에 예상치 못한 TOC 엔트리: %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 "파일 seek 작업하는 도중 오류가 발생했습니다: %m" + +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "%d ID 항목은 범위를 벗어났음 -- TOC 정보가 손상된 듯 합니다" -#: 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 "잘못된 ENCODING 항목: %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:3433 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "\"%s\" 사용자로 세션 사용자를 지정할 수 없음: %s" -#: pg_backup_archiver.c:3457 +#: pg_backup_archiver.c:3575 #, 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:3636 #, 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:3685 #, 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:3734 #, c-format msgid "could not alter table access method: %s" msgstr "alter table access method 실행 할 수 없음: %s" -#: pg_backup_archiver.c:3717 +#: pg_backup_archiver.c:3835 #, 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:3970 +#, c-format +msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" +msgstr "_printTocEntry() 안에 예상치 못한 TOC 엔트리: %d %s %s" + +#: pg_backup_archiver.c:4118 #, c-format msgid "did not find magic string in file header" msgstr "파일 헤더에서 매직 문자열을 찾지 못했습니다" -#: pg_backup_archiver.c:4018 +#: pg_backup_archiver.c:4132 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "파일 헤더에 있는 %d.%d 버전은 지원되지 않습니다" -#: pg_backup_archiver.c:4023 +#: pg_backup_archiver.c:4137 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "정수 크기 (%lu) 안전성 검사 실패" -#: pg_backup_archiver.c:4027 +#: pg_backup_archiver.c:4141 #, c-format msgid "" "archive was made on a machine with larger integers, some operations might " @@ -1093,12 +1204,12 @@ msgstr "" "이 아카이브는 큰 정수를 지원하는 시스템에서 만들어졌습니다. 그래서 몇 동작이 " "실패할 수도 있습니다." -#: pg_backup_archiver.c:4037 +#: pg_backup_archiver.c:4151 #, 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:4173 #, c-format msgid "" "archive is compressed, but this installation does not support compression " @@ -1107,68 +1218,62 @@ msgstr "" "아카이브는 압축되어있지만, 이 프로그램에서는 (%s) 압축기능을 지원하지 못합니" "다 -- 이 안에 있는 자료를 모두 사용할 수 없습니다." -#: pg_backup_archiver.c:4095 +#: pg_backup_archiver.c:4209 #, c-format msgid "invalid creation date in header" msgstr "헤더에 잘못된 생성 날짜가 있음" -#: pg_backup_archiver.c:4229 +#: pg_backup_archiver.c:4343 #, c-format msgid "processing item %d %s %s" msgstr "%d %s %s 항목을 처리하는 중" -#: pg_backup_archiver.c:4314 +#: pg_backup_archiver.c:4428 #, c-format msgid "entering main parallel loop" msgstr "기본 병렬 루프로 시작 중" -#: pg_backup_archiver.c:4325 +#: pg_backup_archiver.c:4439 #, c-format msgid "skipping item %d %s %s" msgstr "%d %s %s 항목을 건너뛰는 중" -#: pg_backup_archiver.c:4334 +#: pg_backup_archiver.c:4448 #, c-format msgid "launching item %d %s %s" msgstr "%d %s %s 항목을 시작하는 중" -#: pg_backup_archiver.c:4388 +#: pg_backup_archiver.c:4502 #, c-format msgid "finished main parallel loop" msgstr "기본 병렬 루프 마침" -#: pg_backup_archiver.c:4424 +#: pg_backup_archiver.c:4538 #, c-format msgid "processing missed item %d %s %s" msgstr "누락된 %d %s %s 항목 처리 중" -#: pg_backup_archiver.c:4966 +#: pg_backup_archiver.c:5080 #, 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 "잘못된 large object용 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 "파일 seek 작업하는 도중 오류가 발생했습니다: %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 " @@ -1177,220 +1282,159 @@ msgstr "" "아카이브에서 블록 ID %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 "" "아카이브에서 블록 ID %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 "자료를 읽는 동안 예상치 못한 ID (%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에서 server_verion 값을 구할 수 없음" - -#: 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 "libpq에서 \"server_verion\" 값을 구할 수 없음" -#: 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" msgstr[0] "쿼리에서 한 개가 아닌 %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\" 테이블을 위한 COPY 실패: %s" -#: pg_backup_db.c:521 pg_dump.c:2283 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "\"%s\" 테이블 COPY 작업 중 잘못된 부가 결과가 있음" -#: 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 "데이터베이스 트랜잭션을 commit 할 수 없음" -#: 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 "입력용 large object 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 "large object TOC 파일(\"%s\")을 닫을 수 없음: \"%s\"" -#: pg_backup_directory.c:475 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "large object 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 "large object 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\"" @@ -1482,57 +1526,92 @@ msgid "" "corrupt tar header found in %s (expected %d, computed %d) file position %llu" msgstr "%s 안에 손상된 tar 헤더 발견 (예상치 %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: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 #, 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_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:731 +#: 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 +#, 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:734 +#: pg_dump.c:856 #, c-format msgid "option --include-foreign-data is not supported with parallel backup" msgstr "--include-foreign-data 옵션은 병렬 백업 작업에서 지원하지 않음" -#: pg_dump.c:737 pg_restore.c:347 +#: 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 옵션은 함께 사용할 수 없음" -#: pg_dump.c:740 pg_dumpall.c:408 pg_restore.c:375 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "--if-exists 옵션은 -c/--clean 옵션과 함께 사용해야 함" -#: pg_dump.c:747 +#: pg_dump.c:882 #, c-format msgid "" "option --on-conflict-do-nothing requires option --inserts, --rows-per-" @@ -1541,67 +1620,82 @@ msgstr "" "--on-conflict-do-nothing 옵션은 --inserts, --rows-per-insert 또는 --column-" "inserts 옵션과 함께 사용해야 함" -#: pg_dump.c:776 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, c-format +msgid "could not generate restrict key" +msgstr "restrict 키를 만들 수 없음" + +#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#, c-format +msgid "invalid restrict key" +msgstr "잘못된 restrict 키" + +#: pg_dump.c:903 +#, c-format +msgid "option --restrict-key can only be used with --format=plain" +msgstr "--restrict-key 옵션은 --format=plain 옵션을 사용할 때만 쓸 수 있음" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "알 수 없는 압축 알고리즘: \"%s\"" -#: pg_dump.c:783 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "잘못된 압축 명세: %s" -#: pg_dump.c:796 +#: pg_dump.c:945 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "\"%s\" 압축 옵션은 pg_dump에서 현재 지원하지 않음" -#: pg_dump.c:808 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "병렬 백업은 디렉터리 기반 출력일 때만 사용할 수 있습니다." -#: pg_dump.c:854 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "마지막 내장 OID는 %u" -#: pg_dump.c:863 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "조건에 맞는 스키마가 없습니다" -#: pg_dump.c:880 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "조건에 맞는 테이블이 없습니다" -#: pg_dump.c:908 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "조건에 맞는 확장 모듈이 없습니다" -#: pg_dump.c:1092 +#: pg_dump.c:1251 #, c-format msgid "" -"%s dumps a database as a text file or to other formats.\n" +"%s exports a PostgreSQL database as an SQL script or to other formats.\n" "\n" msgstr "" -"%s 프로그램은 데이터베이스를 텍스트 파일 또는 기타\n" +"%s 프로그램은 데이터베이스를 SQL 스크립트 파일 또는 기타\n" "다른 형태의 파일로 덤프합니다.\n" "\n" -#: pg_dump.c:1093 pg_dumpall.c:635 pg_restore.c:452 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "사용법:\n" -#: pg_dump.c:1094 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [옵션]... [DB이름]\n" -#: pg_dump.c:1096 pg_dumpall.c:638 pg_restore.c:455 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1610,12 +1704,12 @@ msgstr "" "\n" "일반 옵션들:\n" -#: pg_dump.c:1097 +#: pg_dump.c:1256 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=파일이름 출력 파일 또는 디렉터리 이름\n" -#: pg_dump.c:1098 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1624,22 +1718,22 @@ msgstr "" " -F, --format=c|d|t|p 출력 파일 형식(사용자 지정, 디렉터리, tar,\n" " 일반 텍스트(초기값))\n" -#: pg_dump.c:1100 +#: pg_dump.c:1259 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=개수 덤프 작업을 병렬 처리 함\n" -#: pg_dump.c:1101 pg_dumpall.c:640 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose 작업 내역을 자세히 봄\n" -#: pg_dump.c:1102 pg_dumpall.c:641 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version 버전 정보를 보여주고 마침\n" -#: pg_dump.c:1103 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1648,31 +1742,31 @@ msgstr "" " -Z, --compress=METHOD[:DETAIL]\n" " 압축 지정\n" -#: pg_dump.c:1105 pg_dumpall.c:642 +#: pg_dump.c:1264 pg_dumpall.c:701 #, c-format msgid "" " --lock-wait-timeout=TIMEOUT fail after waiting TIMEOUT for a table lock\n" msgstr "" " --lock-wait-timeout=초 테이블 잠금 시 지정한 초만큼 기다린 후 실패\n" -#: pg_dump.c:1106 pg_dumpall.c:670 +#: pg_dump.c:1265 pg_dumpall.c:733 #, c-format msgid "" " --no-sync do not wait for changes to be written safely " "to disk\n" msgstr " --no-sync fsync 작업 생략\n" -#: pg_dump.c:1107 +#: pg_dump.c:1266 #, 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:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 보여주고 마침\n" -#: pg_dump.c:1110 pg_dumpall.c:644 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1681,34 +1775,36 @@ msgstr "" "\n" "출력 내용을 다루는 옵션들:\n" -#: pg_dump.c:1111 pg_dumpall.c:645 +#: pg_dump.c:1270 pg_dumpall.c:704 #, 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:1271 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr " -b, --large-objects 큰 객체를 덤프에 포함\n" -#: pg_dump.c:1113 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (--large-objects 와 같음, 옛날 옵션)\n" -#: pg_dump.c:1114 +#: pg_dump.c:1273 #, 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:1274 #, 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:1275 pg_restore.c:537 #, c-format msgid "" " -c, --clean clean (drop) database objects before " @@ -1717,34 +1813,34 @@ msgstr "" " -c, --clean 다시 만들기 전에 데이터베이스 개체 지우기(삭" "제)\n" -#: pg_dump.c:1117 +#: pg_dump.c:1276 #, c-format msgid "" " -C, --create include commands to create database in dump\n" msgstr "" " -C, --create 데이터베이스 만드는 명령구문도 포함시킴\n" -#: pg_dump.c:1118 +#: pg_dump.c:1277 #, 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:1278 pg_dumpall.c:706 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=인코딩 지정한 인코딩으로 자료를 덤프 함\n" -#: pg_dump.c:1120 +#: pg_dump.c:1279 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=PATTERN 지정한 SCHEMA들 자료만 덤프\n" -#: pg_dump.c:1121 +#: pg_dump.c:1280 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=PATTERN 지정한 SCHEMA들만 빼고 모두 덤프\n" -#: pg_dump.c:1122 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1753,12 +1849,15 @@ msgstr "" " -O, --no-owner 일반 텍스트 형식에서\n" " 개체 소유권 복원 건너뛰기\n" -#: pg_dump.c:1124 pg_dumpall.c:651 +#: pg_dump.c:1283 pg_dumpall.c:710 #, 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:1284 #, c-format msgid "" " -S, --superuser=NAME superuser user name to use in plain-text " @@ -1767,28 +1866,28 @@ msgstr "" " -S, --superuser=NAME 일반 텍스트 형식에서 사용할 슈퍼유저 사용자 이" "름\n" -#: pg_dump.c:1126 +#: pg_dump.c:1285 #, 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:1286 #, 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:1287 pg_dumpall.c:713 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr "" " -x, --no-privileges 접근 권한 (grant/revoke) 정보는 덤프 안 함\n" -#: pg_dump.c:1129 pg_dumpall.c:655 +#: pg_dump.c:1288 pg_dumpall.c:714 #, 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:1289 pg_dumpall.c:715 #, c-format msgid "" " --column-inserts dump data as INSERT commands with column " @@ -1796,7 +1895,7 @@ msgid "" msgstr "" " --column-inserts 칼럼 이름과 함께 INSERT 명령으로 자료 덤프\n" -#: pg_dump.c:1131 pg_dumpall.c:657 +#: pg_dump.c:1290 pg_dumpall.c:716 #, c-format msgid "" " --disable-dollar-quoting disable dollar quoting, use SQL standard " @@ -1804,13 +1903,13 @@ msgid "" msgstr "" " --disable-dollar-quoting $ 인용 구문 사용안함, SQL 표준 따옴표 사용\n" -#: pg_dump.c:1132 pg_dumpall.c:658 pg_restore.c:483 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, c-format msgid "" " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers 자료만 복원할 때 트리거 사용을 안함\n" -#: pg_dump.c:1133 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user " @@ -1820,12 +1919,12 @@ msgstr "" " --enable-row-security 로우 보안 활성화 (현재 작업자가 접근할 수\n" " 있는 자료만 덤프 함)\n" -#: pg_dump.c:1135 +#: pg_dump.c:1294 #, 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:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1837,13 +1936,13 @@ msgstr "" " 상속 하위, 파티션 하위 테이블을 포함하는\n" " 패턴의 테이블들은 빼고 덤프\n" -#: pg_dump.c:1139 +#: pg_dump.c:1298 #, 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:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1854,14 +1953,14 @@ msgstr "" " 상속 하위, 파티션 하위 테이블을 포함하는\n" " 패턴의 테이블들의 자료는 빼고 덤프\n" -#: pg_dump.c:1143 pg_dumpall.c:660 +#: pg_dump.c:1302 pg_dumpall.c:719 #, 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:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from " @@ -1871,12 +1970,12 @@ msgstr "" " --filter=FILENAME 지정한 파일의 규칙대로 포함하거나 제외할\n" " 객체를 반영하여 덤프\n" -#: pg_dump.c:1146 pg_dumpall.c:662 pg_restore.c:487 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, 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:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1887,60 +1986,80 @@ msgstr "" " 지정한 패턴과 일치하는 외부 서버의 외부\n" " 테이블 자료를 포함\n" -#: pg_dump.c:1150 pg_dumpall.c:663 +#: pg_dump.c:1309 pg_dumpall.c:722 #, c-format msgid "" " --inserts dump data as INSERT commands, rather than " "COPY\n" msgstr " --inserts COPY 대신 INSERT 명령으로 자료 덤프\n" -#: pg_dump.c:1151 pg_dumpall.c:664 +#: pg_dump.c:1310 pg_dumpall.c:723 #, 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:1311 pg_dumpall.c:724 +#, c-format +msgid " --no-comments do not dump comment commands\n" +msgstr " --no-comments 코멘트 명령들은 덤프 안함\n" + +#: pg_dump.c:1312 pg_dumpall.c:725 #, c-format -msgid " --no-comments do not dump comments\n" -msgstr " --no-comments 코멘트는 덤프 안함\n" +msgid " --no-data do not dump data\n" +msgstr " --no-data 데이터는 덤프 안함\n" -#: pg_dump.c:1153 pg_dumpall.c:666 +#: pg_dump.c:1313 pg_dumpall.c:726 +#, c-format +msgid " --no-policies do not dump row security policies\n" +msgstr " --no-policies 행 단위 보안 정책은 덤프 안함\n" + +#: pg_dump.c:1314 pg_dumpall.c:727 #, 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:1315 pg_dumpall.c:729 +#, c-format +msgid " --no-schema do not dump schema\n" +msgstr " --no-schema 스키마는 덤프 안함\n" + +#: pg_dump.c:1316 pg_dumpall.c:730 #, 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:1317 pg_dumpall.c:731 +#, c-format +msgid " --no-statistics do not dump statistics\n" +msgstr " --no-statistics 통계정보는 덤프 안함\n" + +#: pg_dump.c:1318 pg_dumpall.c:732 #, 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:1319 pg_dumpall.c:734 #, 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:1320 pg_dumpall.c:735 #, 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:1321 pg_dumpall.c:736 #, 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:1322 pg_dumpall.c:737 #, 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:1323 pg_dumpall.c:738 #, c-format msgid "" " --on-conflict-do-nothing add ON CONFLICT DO NOTHING to INSERT " @@ -1949,14 +2068,20 @@ msgstr "" " --on-conflict-do-nothing INSERT 구문에 ON CONFLICT DO NOTHING 옵션 추" "가\n" -#: pg_dump.c:1161 pg_dumpall.c:676 +#: pg_dump.c:1324 pg_dumpall.c:739 #, 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:1325 pg_dumpall.c:740 pg_restore.c:571 +#, c-format +msgid "" +" --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" +msgstr " --restrict-key=RESTRICT_KEY psql \\restrict 키 지정\n" + +#: pg_dump.c:1326 pg_dumpall.c:741 #, c-format msgid "" " --rows-per-insert=NROWS number of rows per INSERT; implies --inserts\n" @@ -1964,7 +2089,7 @@ msgstr "" " --rows-per-insert=NROWS 한 INSERT 명령으로 입력할 로우 수; --inserts\n" " 옵션을 사용한 것으로 가정 함\n" -#: pg_dump.c:1163 +#: pg_dump.c:1327 #, c-format msgid "" " --section=SECTION dump named section (pre-data, data, or post-" @@ -1972,7 +2097,12 @@ msgid "" msgstr "" " --section=SECTION 해당 섹션(pre-data, data, post-data)만 덤프\n" -#: pg_dump.c:1164 +#: pg_dump.c:1328 pg_dumpall.c:742 +#, c-format +msgid " --sequence-data include sequence data in dump\n" +msgstr " --sequence-data 덤프 안에 시퀀스 데이터 포함\n" + +#: pg_dump.c:1329 #, c-format msgid "" " --serializable-deferrable wait until the dump can run without " @@ -1981,12 +2111,24 @@ msgstr "" " --serializable-deferrable 자료 정합성을 보장하기 위해 덤프 작업을\n" " 직렬화 가능한 트랜잭션으로 처리 함\n" -#: pg_dump.c:1165 +#: pg_dump.c:1330 #, 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:1331 pg_dumpall.c:743 +#, c-format +msgid " --statistics dump the statistics\n" +msgstr " --statistics 통계정보 덤프\n" + +#: pg_dump.c:1332 pg_dumpall.c:744 +#, 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 #, c-format msgid "" " --strict-names require table and/or schema include patterns " @@ -1997,7 +2139,7 @@ msgstr "" "는\n" " 객체가 적어도 하나 이상 있어야 함\n" -#: pg_dump.c:1168 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2006,7 +2148,7 @@ msgstr "" " --table-and-children=PATTERN 해당 패턴의 상속 하위, 파티션 하위 테이블만\n" " 덤프\n" -#: pg_dump.c:1170 pg_dumpall.c:678 pg_restore.c:500 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2019,7 +2161,7 @@ msgstr "" "명령\n" " 대신 사용하여 소유권 설정\n" -#: pg_dump.c:1174 pg_dumpall.c:682 pg_restore.c:504 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2028,45 +2170,45 @@ msgstr "" "\n" "연결 옵션들:\n" -#: pg_dump.c:1175 +#: pg_dump.c:1342 #, 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:1343 pg_dumpall.c:751 pg_restore.c:583 #, 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:1344 pg_dumpall.c:753 pg_restore.c:584 #, 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:1345 pg_dumpall.c:754 pg_restore.c:585 #, 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:1346 pg_dumpall.c:755 pg_restore.c:586 #, 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:1347 pg_dumpall.c:756 pg_restore.c:587 #, 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:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLENAME 덤프 전에 SET ROLE 수행\n" -#: pg_dump.c:1183 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2079,430 +2221,460 @@ msgstr "" "사용합니다.\n" "\n" -#: pg_dump.c:1185 pg_dumpall.c:694 pg_restore.c:516 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, 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:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "%s 홈페이지: <%s>\n" -#: pg_dump.c:1205 pg_dumpall.c:518 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "클라이언트 인코딩 값이 잘못되었습니다: \"%s\"" -#: pg_dump.c:1352 +#: pg_dump.c:1520 #, c-format msgid "" "parallel dumps from standby servers are not supported by this server version" msgstr "대기 서버에서 병렬 덤프는 이 서버 버전에서 지원하지 않음" -#: pg_dump.c:1417 +#: pg_dump.c:1585 #, 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:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "적당하지 않은 qualified 이름 입니다 (너무 많은 점이 있네요): %s" -#: pg_dump.c:1466 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "\"%s\" 검색 조건에 만족하는 스키마가 없습니다" -#: pg_dump.c:1519 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "\"%s\" 검색 조건에 만족하는 확장 모듈이 없습니다" -#: pg_dump.c:1572 +#: pg_dump.c:1740 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "\"%s\" 검색 조건에 만족하는 외부 서버가 없습니다" -#: pg_dump.c:1643 +#: pg_dump.c:1811 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "" "적당하지 않은 릴레이션(relation) 이름 입니다 (너무 많은 점이 있네요): %s" -#: pg_dump.c:1665 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "\"%s\" 검색 조건에 만족하는 테이블이 없습니다" -#: pg_dump.c:1692 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "현재 데이터베이스에 연결되어있지 않습니다." -#: pg_dump.c:1695 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "서로 다른 데이터베이스간의 참조는 구현되어있지 않습니다: %s" -#: pg_dump.c:2154 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "\"%s.%s\" 테이블의 내용 덤프 중" -#: pg_dump.c:2264 +#: pg_dump.c:2439 #, 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:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "서버에서 보낸 오류 메시지: %s" -#: pg_dump.c:2266 pg_dump.c:2276 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "사용된 명령: %s" -#: pg_dump.c:2274 +#: pg_dump.c:2449 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "\"%s\" 테이블 내용을 덤프하면서 오류 발생: PQgetResult() 실패." -#: pg_dump.c:2365 +#: pg_dump.c:2540 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "\"%s\" 테이블에서 잘못된 필드 수" -#: pg_dump.c:3067 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "데이터베이스 구성정보를 저장 중" -#: pg_dump.c:3176 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "알 수 없는 로케일 제공자 이름: %s" -#: pg_dump.c:3537 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "인코딩 = %s 저장 중" -#: pg_dump.c:3562 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "\"standard_conforming_strings = %s\" 저장 중" -#: pg_dump.c:3601 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "current_schemas() 결과를 분석할 수 없음" -#: pg_dump.c:3620 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "\"search_path = %s\" 저장 중" -#: pg_dump.c:3656 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "large object 읽는 중" -#: pg_dump.c:3877 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "\"%s\" large object들을 저장 중" -#: pg_dump.c:3898 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "%u large object 읽는 중 오류: %s" -#: pg_dump.c:4001 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "로우 단위 보안 정책 읽는 중" -#: pg_dump.c:4142 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "예상치 못한 정책 명령 형태: %c" -#: pg_dump.c:4592 pg_dump.c:5150 pg_dump.c:12364 pg_dump.c:18249 -#: pg_dump.c:18251 pg_dump.c:18873 +#: 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 #, c-format msgid "could not parse %s array" msgstr "%s 배열을 분석할 수 없음" -#: pg_dump.c:4806 +#: pg_dump.c:5002 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "" "현재 사용자가 슈퍼유저가 아니기 때문에 서브스크립션들은 덤프하지 못했음" -#: pg_dump.c:5012 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "%u OID 구독이 없음" -#: pg_dump.c:5019 +#: pg_dump.c:5213 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "안전 검사 실패, OID %u인 테이블 없음" -#: pg_dump.c:5582 +#: pg_dump.c:5799 #, c-format msgid "could not find parent extension for %s %s" msgstr "%s %s 객체와 관련된 상위 확장 기능을 찾을 수 없음" -#: pg_dump.c:5727 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "OID %u 스키마 없음" -#: pg_dump.c:7209 pg_dump.c:17620 +#: pg_dump.c:6994 +#, c-format +msgid "cannot dump statistics for relation kind \"%c\"" +msgstr "\"%c\" 종류의 릴레이션용 통계정보를 덤프할 수 없음" + +#: pg_dump.c:7506 pg_dump.c:18987 #, 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:7354 +#: pg_dump.c:7651 #, 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:7585 pg_dump.c:7859 pg_dump.c:8306 pg_dump.c:8920 pg_dump.c:9042 -#: pg_dump.c:9190 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "알 수 없는 테이블 OID %u" -#: pg_dump.c:7589 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "\"%s\" 테이블의 인덱스 자료를 알 수 없음" -#: pg_dump.c:8091 +#: pg_dump.c:8459 #, 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:8924 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "\"%s\" 테이블의 알 수 없는 칼럼 자료" -#: pg_dump.c:8953 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "\"%s\" 테이블에 매겨져 있는 열 번호가 잘못되었습니다" -#: pg_dump.c:9004 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "default 표현식 찾는 중" -#: pg_dump.c:9046 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "적당하지 않는 adnum 값: %d, 해당 테이블 \"%s\"" -#: pg_dump.c:9140 +#: pg_dump.c:9553 +#, c-format +msgid "finding invalid not-null constraints" +msgstr "잘못된 not-null 제약조건 찾는 중" + +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "테이블 체크 제약조건 찾는 중" -#: pg_dump.c:9194 +#: pg_dump.c:9705 #, 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개를 찾음" -#: pg_dump.c:9198 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "시스템 카탈로그가 손상되었는 것 같습니다." -#: pg_dump.c:9888 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "%u OID 롤이 없음" -#: pg_dump.c:10000 pg_dump.c:10029 +#: pg_dump.c:10626 pg_dump.c:10655 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "지원하지 않는 pg_init_privs 항목: %u %u %d" -#: pg_dump.c:10576 +#: pg_dump.c:10951 +#, c-format +msgid "statistics dumped out of order (current: %d %s %s, expected: %d %s %s)" +msgstr "statistics 덤프 순서가 이상함 (현재: %d %s %s, 기대값: %d %s %s)" + +#: pg_dump.c:11092 +#, c-format +msgid "unexpected null attname" +msgstr "예상치 못한 null attname" + +#: pg_dump.c:11121 +#, c-format +msgid "could not find index attname \"%s\"" +msgstr "인덱스 attname \"%s\" 찾을 수 없음" + +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "\"%s\"large object의 메타정보가 없음" -#: pg_dump.c:10859 +#: pg_dump.c:11893 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "\"%s\" 자료형의 typtype가 잘못 되어 있음" -#: pg_dump.c:12433 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "\"%s\" 함수의 provolatile 값이 잘못 되었습니다" -#: pg_dump.c:12483 pg_dump.c:14379 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "\"%s\" 함수의 proparallel 값이 잘못 되었습니다" -#: pg_dump.c:12613 pg_dump.c:12719 pg_dump.c:12726 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, c-format msgid "could not find function definition for function with OID %u" msgstr "%u OID 함수에 대한 함수 정의를 찾을 수 없음" -#: pg_dump.c:12652 +#: pg_dump.c:13740 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "pg_cast.castfunc 또는 pg_cast.castmethod 필드에 잘못된 값이 있음" -#: pg_dump.c:12655 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "pg_cast.castmethod 필드에 잘못된 값이 있음" -#: pg_dump.c:12745 +#: pg_dump.c:13833 #, c-format msgid "" "bogus transform definition, at least one of trffromsql and trftosql should " "be nonzero" msgstr "잘못된 전송 정의, trffromsql 또는 trftosql 중 하나는 비어 있으면 안됨" -#: pg_dump.c:12762 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "pg_transform.trffromsql 필드에 잘못된 값이 있음" -#: pg_dump.c:12783 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "pg_transform.trftosql 필드에 잘못된 값이 있음" -#: pg_dump.c:12928 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "postfix 연산자는 더이상 지원하지 않습니다.(\"%s\" 연산자)" -#: pg_dump.c:13098 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "%s OID의 연산자를 찾을 수 없음" -#: pg_dump.c:13166 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "\"%c\" 잘못된 자료형, 해당 접근 방법: \"%s\"" -#: pg_dump.c:13840 pg_dump.c:13908 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "알 수 없는 정렬규칙 제공자 이름: %s" -#: pg_dump.c:13849 pg_dump.c:13856 pg_dump.c:13867 pg_dump.c:13877 -#: pg_dump.c:13892 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "잘못된 문자정렬규칙 \"%s\"" -#: pg_dump.c:14298 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "\"%s\" 집계 함수용 aggfinalmodify 값이 이상함" -#: pg_dump.c:14354 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "\"%s\" 집계 함수용 aggmfinalmodify 값이 이상함" -#: pg_dump.c:15071 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "기본 접근 권한에서 알 수 없는 객체형이 있음: %d" -#: pg_dump.c:15087 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "기본 ACL 목록 (%s)을 분석할 수 없음" -#: pg_dump.c:15171 +#: pg_dump.c:16262 #, c-format msgid "" "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "" "초기 ACL 목록 (%s) 또는 default (%s) 분석할 수 없음, 해당 객체: \"%s\" (%s)" -#: pg_dump.c:15196 +#: pg_dump.c:16287 #, c-format msgid "could not parse ACL list (%s) or default (%s) for object \"%s\" (%s)" msgstr "ACL 목록 (%s) 또는 default (%s) 분석할 수 없음, 해당 객체: \"%s\" (%s)" -#: pg_dump.c:15739 +#: pg_dump.c:16830 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "\"%s\" 뷰 정의 정보가 없습니다." -#: pg_dump.c:15742 +#: pg_dump.c:16833 #, c-format msgid "" "query to obtain definition of view \"%s\" returned more than one definition" msgstr "\"%s\" 뷰 정의 정보가 하나 이상 있습니다." -#: pg_dump.c:15749 +#: pg_dump.c:16840 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "\"%s\" 뷰의 정의 내용이 비어있습니다." -#: pg_dump.c:15834 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS 옵션은 더이상 지원하지 않음 (\"%s\" 테이블)" -#: pg_dump.c:16821 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "잘못된 열 번호 %d, 해당 테이블 \"%s\"" -#: pg_dump.c:16899 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "인덱스 통계정보 칼럼 분석 실패" -#: pg_dump.c:16901 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "인덱스 통계정보 값 분석 실패" -#: pg_dump.c:16903 +#: pg_dump.c:18147 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "인덱스 통계정보용 칼럼수와 값수가 일치하지 않음" -#: pg_dump.c:17118 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "\"%s\" 제약 조건을 위한 인덱스가 빠졌습니다" -#: pg_dump.c:17353 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "알 수 없는 제약 조건 종류: %c" -#: pg_dump.c:17454 pg_dump.c:17684 +#: pg_dump.c:18698 +#, c-format +msgid "unrecognized sequence type: %s" +msgstr "알 수 없는 시퀀스 형태: %s" + +#: pg_dump.c:18830 pg_dump.c:19062 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "" @@ -2510,12 +2682,12 @@ msgid_plural "" msgstr[0] "" "\"%s\" 시퀀스의 데이터를 가져오기 위한 쿼리에서 %d개의 행 반환(1개 필요)" -#: pg_dump.c:17486 +#: pg_dump.c:18866 #, c-format -msgid "unrecognized sequence type: %s" -msgstr "알 수 없는 시퀀스 형태: %s" +msgid "unrecognized sequence type: %d" +msgstr "알 수 없는 시퀀스 형태: %d" -#: pg_dump.c:18001 +#: pg_dump.c:19395 #, c-format msgid "" "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows " @@ -2523,59 +2695,59 @@ msgid "" msgstr "" "\"%s\" 규칙(\"%s\" 테이블)을 가져오기 위한 쿼리 실패: 잘못된 행 수 반환" -#: pg_dump.c:18154 +#: pg_dump.c:19548 #, c-format msgid "could not find referenced extension %u" msgstr "%u 확장기능과 관련된 상위 확장 기능을 찾을 수 없음" -#: pg_dump.c:18253 +#: pg_dump.c:19647 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "확장 모듈용 환경설정 매개변수 수와 조건 수가 일치 하지 않음" -#: pg_dump.c:18385 +#: pg_dump.c:19779 #, c-format msgid "reading dependency data" msgstr "의존 관계 자료 읽는 중" -#: pg_dump.c:18471 +#: pg_dump.c:19865 #, c-format msgid "no referencing object %u %u" msgstr "%u %u 개체의 하위 관련 개체가 없음" -#: pg_dump.c:18482 +#: pg_dump.c:19876 #, c-format msgid "no referenced object %u %u" msgstr "%u %u 개체의 상위 관련 개체가 없음" -#: pg_dump.c:18907 pg_dump.c:18945 pg_dumpall.c:1962 pg_restore.c:551 -#: pg_restore.c:597 +#: pg_dump.c:20311 pg_dump.c:20349 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "%s 필터(대상 \"%s\")는 허용하지 않음" -#: pg_dump_sort.c:424 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "잘못된 dumpId %d" -#: pg_dump_sort.c:430 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "잘못된 의존성 %d" -#: pg_dump_sort.c:594 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "의존 관계를 식별 할 수 없음" -#: pg_dump_sort.c:1209 +#: pg_dump_sort.c:1462 #, 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:1214 +#: pg_dump_sort.c:1467 #, c-format msgid "" "You might not be able to restore the dump without using --disable-triggers " @@ -2584,7 +2756,7 @@ msgstr "" "--disable-triggers 옵션으로 복원할 수 있습니다. 또는 임시로 제약 조건을 삭제" "하고 복원하세요." -#: pg_dump_sort.c:1215 +#: pg_dump_sort.c:1468 #, c-format msgid "" "Consider using a full dump instead of a --data-only dump to avoid this " @@ -2592,12 +2764,12 @@ msgid "" msgstr "" "이 문제를 피하려면, --data-only 덤프 대신에 모든 덤프를 사용하길 권합니다." -#: pg_dump_sort.c:1227 +#: pg_dump_sort.c:1480 #, 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 " @@ -2606,46 +2778,41 @@ 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 +#: 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" +"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 +#: 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:402 +#: 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:412 +#: 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:474 pg_dumpall.c:1771 -#, c-format -msgid "could not connect to database \"%s\"" -msgstr "\"%s\" 데이터베이스에 접속할 수 없음" - -#: pg_dumpall.c:486 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2654,45 +2821,45 @@ msgstr "" "\"postgres\" 또는 \"template1\" 데이터베이스에 연결할 수 없습니다.\n" "다른 데이터베이스를 지정하십시오." -#: pg_dumpall.c:634 +#: pg_dumpall.c:693 #, c-format msgid "" -"%s extracts a PostgreSQL database cluster into an SQL script file.\n" +"%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" msgstr "" "%s 프로그램은 PostgreSQL 데이터베이스 클러스터를 SQL 스크립트 파일로\n" "추출하는 프로그램입니다.\n" "\n" -#: pg_dumpall.c:636 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [옵션]...\n" -#: pg_dumpall.c:639 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=파일이름 출력 파일 이름\n" -#: pg_dumpall.c:646 +#: pg_dumpall.c:705 #, c-format msgid "" " -c, --clean clean (drop) databases before recreating\n" msgstr "" " -c, --clean 다시 만들기 전에 데이터베이스 지우기(삭제)\n" -#: pg_dumpall.c:648 +#: pg_dumpall.c:707 #, 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:708 pg_restore.c:546 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner 개체 소유권 복원 건너뛰기\n" -#: pg_dumpall.c:650 +#: pg_dumpall.c:709 #, c-format msgid "" " -r, --roles-only dump only roles, no databases or tablespaces\n" @@ -2700,12 +2867,12 @@ msgstr "" " -r, --roles-only 데이터베이스나 테이블스페이스는 제외하고 역할" "만 덤프\n" -#: pg_dumpall.c:652 +#: pg_dumpall.c:711 #, 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:712 #, c-format msgid "" " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" @@ -2713,36 +2880,36 @@ msgstr "" " -t, --tablespaces-only 데이터베이스나 역할은 제외하고 테이블스페이스" "만 덤프\n" -#: pg_dumpall.c:659 +#: pg_dumpall.c:718 #, 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:720 #, c-format msgid "" " --filter=FILENAME exclude databases based on expressions in " "FILENAME\n" msgstr " --filter=FILENAME 필터 조건이 정의 파일을 사용하여 덤프\n" -#: pg_dumpall.c:667 +#: pg_dumpall.c:728 #, 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:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=접속문자열 서버 접속 문자열\n" -#: pg_dumpall.c:685 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAME 대체용 기본 데이터베이스\n" -#: pg_dumpall.c:692 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2756,81 +2923,77 @@ msgstr "" "출력에 쓰여집니다.\n" "\n" -#: pg_dumpall.c:837 +#: pg_dumpall.c:904 #, 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:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 +#, c-format +msgid "found orphaned pg_auth_members entry for role %s" +msgstr "%s 롤용 pg_auth_members 항목이 없음" + +#: pg_dumpall.c:1154 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "\"%s\" 롤은 덤프할 수 있는 롤을 포함하고 있지 않습니다" -#: pg_dumpall.c:1194 +#: pg_dumpall.c:1309 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "ACL 목록 (%s)을 분석할 수 없음, 해당 매개변수 \"%s\"" -#: pg_dumpall.c:1321 +#: pg_dumpall.c:1436 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "테이블스페이스 용 ACL 목록 (%s)을 분석할 수 없음, 해당개체 \"%s\"" -#: pg_dumpall.c:1528 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "\"%s\" 데이터베이스를 제외하는 중" -#: pg_dumpall.c:1532 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "\"%s\" 데이터베이스 덤프 중" -#: pg_dumpall.c:1563 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "\"%s\" 데이터베이스에서 pg_dump 작업 중에 오류가 발생, 끝냅니다." -#: pg_dumpall.c:1569 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "\"%s\" 출력 파일을 다시 열 수 없음: %m" -#: pg_dumpall.c:1613 +#: pg_dumpall.c:1737 #, 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:1856 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 +#: 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:350 +#: 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 " @@ -2838,29 +3001,34 @@ msgid "" msgstr "" "-1/--single-transaction 옵션과 --transaction-size 옵션은 함께 사용할 수 없음" -#: pg_restore.c:357 +#: pg_restore.c:417 #, c-format msgid "options -C/--create and -1/--single-transaction cannot be used together" msgstr "-C/--clean 옵션과 -1/--single-transaction 옵션은 함께 사용할 수 없음" -#: pg_restore.c:361 +#: pg_restore.c:421 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "--single-transaction 및 병렬 작업을 함께 지정할 수는 없음" -#: pg_restore.c:399 +#: pg_restore.c:467 +#, c-format +msgid "archive format \"%s\" is not supported; please use psql" +msgstr "\"%s\" 아카이브 양식은 지원하지 않습니다; psql을 사용하세요" + +#: pg_restore.c:471 #, 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:509 #, c-format msgid "errors ignored on restore: %d" msgstr "복원작업에서의 오류들이 무시되었음: %d" -#: pg_restore.c:451 +#: pg_restore.c:522 #, c-format msgid "" "%s restores a PostgreSQL database from an archive created by pg_dump.\n" @@ -2870,47 +3038,47 @@ msgstr "" "그 자료를 일괄 입력합니다.\n" "\n" -#: pg_restore.c:453 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [옵션]... [파일]\n" -#: pg_restore.c:456 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAME 접속할 데이터베이스 이름\n" -#: pg_restore.c:457 +#: pg_restore.c:528 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILENAME 출력 파일 이름 (표준 출력: -)\n" -#: pg_restore.c:458 +#: pg_restore.c:529 #, 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:530 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list 자료의 요약된 목차를 보여줌\n" -#: pg_restore.c:460 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose 자세한 정보 보여줌\n" -#: pg_restore.c:461 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version 버전 정보를 보여주고 마침\n" -#: pg_restore.c:462 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 보여주고 마침\n" -#: pg_restore.c:464 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -2919,33 +3087,33 @@ msgstr "" "\n" "리스토어 처리를 위한 옵션들:\n" -#: pg_restore.c:465 +#: pg_restore.c:536 #, 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:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create 작업 대상 데이터베이스를 만듦\n" -#: pg_restore.c:468 +#: pg_restore.c:539 #, 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:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME 지정한 인덱스 만듦\n" -#: pg_restore.c:470 +#: pg_restore.c:541 #, 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:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -2954,27 +3122,27 @@ msgstr "" " -L, --use-list=FILENAME 출력을 선택하고 해당 순서를 지정하기 위해\n" " 이 파일의 목차 사용\n" -#: pg_restore.c:473 +#: pg_restore.c:544 #, 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:545 #, 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:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAME(args) 지정한 함수 만듦\n" -#: pg_restore.c:477 +#: pg_restore.c:548 #, 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:549 #, c-format msgid "" " -S, --superuser=NAME superuser user name to use for disabling " @@ -2983,35 +3151,35 @@ msgstr "" " -S, --superuser=NAME 트리거를 사용하지 않기 위해 사용할 슈퍼유저\n" " 사용자 이름\n" -#: pg_restore.c:479 +#: pg_restore.c:550 #, 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:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME 지정한 트리거 만듦\n" -#: pg_restore.c:481 +#: pg_restore.c:552 #, 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:553 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction 하나의 트랜잭션 작업으로 복원함\n" -#: pg_restore.c:484 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security 로우 보안 활성화\n" -#: pg_restore.c:485 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3019,12 +3187,17 @@ msgid "" msgstr "" " --filter=FILENAME 지정한 파일의 필터 조건으로 객체를 복원함\n" -#: pg_restore.c:488 +#: pg_restore.c:559 #, c-format -msgid " --no-comments do not restore comments\n" -msgstr " --no-comments 코멘트는 복원하지 않음\n" +msgid " --no-comments do not restore comment commands\n" +msgstr " --no-comments 코멘트 명령들은 복원하지 않음\n" -#: pg_restore.c:489 +#: pg_restore.c:560 +#, c-format +msgid " --no-data do not restore data\n" +msgstr " --no-data 데이터는 복원하지 않음\n" + +#: pg_restore.c:561 #, c-format msgid "" " --no-data-for-failed-tables do not restore data of tables that could not " @@ -3034,32 +3207,47 @@ msgstr "" " --no-data-for-failed-tables 만들 수 없는 테이블에 대해서는 자료를 덤프하" "지 않음\n" -#: pg_restore.c:491 +#: pg_restore.c:563 +#, c-format +msgid " --no-policies do not restore row security policies\n" +msgstr " --no-policies 행 단위 보안 정책은 복원하지 않음\n" + +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications 발행 정보는 복원 안함\n" -#: pg_restore.c:492 +#: pg_restore.c:565 +#, c-format +msgid " --no-schema do not restore schema\n" +msgstr " --no-schema 스키마는 복원하지 않음\n" + +#: pg_restore.c:566 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels 보안 라벨을 복원하지 않음\n" -#: pg_restore.c:493 +#: pg_restore.c:567 +#, c-format +msgid " --no-statistics do not restore statistics\n" +msgstr " --no-statistics 통계정보는 복원 안함\n" + +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions 구독 정보는 복원 안함\n" -#: pg_restore.c:494 +#: pg_restore.c:569 #, 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:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces 테이블스페이스 할당을 복원하지 않음\n" -#: pg_restore.c:496 +#: pg_restore.c:572 #, c-format msgid "" " --section=SECTION restore named section (pre-data, data, or " @@ -3068,17 +3256,30 @@ msgstr "" " --section=SECTION 지정한 섹션만 복원함\n" " 섹션 종류: pre-data, data, post-data\n" -#: pg_restore.c:499 +#: pg_restore.c:573 +#, c-format +msgid " --statistics restore the statistics\n" +msgstr " --statistics 통계정보를 복원함\n" + +#: pg_restore.c:574 +#, c-format +msgid "" +" --statistics-only restore only the statistics, not schema or " +"data\n" +msgstr "" +" --statistics-only 스키마나 데이터는 빼고 통계정보만 복원함\n" + +#: pg_restore.c:577 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N N 개의 객체 다음에는 항상 commit\n" -#: pg_restore.c:510 +#: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME 복원 전에 SET ROLE 수행\n" -#: pg_restore.c:512 +#: pg_restore.c:590 #, c-format msgid "" "\n" @@ -3091,7 +3292,7 @@ msgstr "" "기\n" "위해서 여러번 사용할 수 있습니다.\n" -#: pg_restore.c:515 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -3102,7 +3303,21 @@ msgstr "" "사용할 입력 파일을 지정하지 않았다면, 표준 입력(stdin)을 사용합니다.\n" "\n" -#, c-format +#~ msgid " %s" +#~ msgstr " %s" + +#~ msgid "could not close directory \"%s\": %m" +#~ msgstr "\"%s\" 디렉터리를 닫을 수 없음: %m" + +#~ msgid "could not connect to database" +#~ msgstr "데이터베이스 접속을 할 수 없음" + +#~ msgid "could not write to LOs TOC file: %s" +#~ msgstr "LO TOC 파일에 쓸 수 없음: %s" + +#~ msgid "invalid argument string (%s) for trigger \"%s\" on table \"%s\"" +#~ msgstr "잘못된 인수 문자열 (%s), 해당 트리거 \"%s\", 사용되는 테이블 \"%s\"" + #~ msgid "" #~ "query produced null referenced table name for foreign key trigger \"%s\" " #~ "on table \"%s\" (OID of table: %u)" @@ -3110,14 +3325,11 @@ msgstr "" #~ "쿼리가 참조테이블 정보가 없는 \"%s\" 참조키 트리거를 \"%s\" (해당 OID: " #~ "%u) 테이블에서 만들었습니다." -#, c-format +#~ msgid "reconnection failed: %s" +#~ msgstr "재연결 실패: %s" + #~ msgid "unexpected tgtype value: %d" #~ msgstr "기대되지 않은 tgtype 값: %d" -#, c-format -#~ msgid "invalid argument string (%s) for trigger \"%s\" on table \"%s\"" -#~ msgstr "잘못된 인수 문자열 (%s), 해당 트리거 \"%s\", 사용되는 테이블 \"%s\"" - -#, c-format -#~ msgid " %s" -#~ msgstr " %s" +#~ msgid "unhandled mode \"%s\"" +#~ msgstr "\"%s\" 모드는 처리할 수 없음" diff --git a/src/bin/pg_dump/po/ru.po b/src/bin/pg_dump/po/ru.po index d2a28a4075170..f0af5b531cf4a 100644 --- a/src/bin/pg_dump/po/ru.po +++ b/src/bin/pg_dump/po/ru.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_dump (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-05-03 16:33+0300\n" +"POT-Creation-Date: 2025-09-19 22:26+0300\n" +"PO-Revision-Date: 2025-09-04 22:18+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -515,9 +515,9 @@ msgid "could not read from input file: %s" msgstr "не удалось прочитать входной файл: %s" #: compress_gzip.c:294 compress_zstd.c:382 -#, fuzzy, c-format +#, c-format msgid "could not write to file: %s" -msgstr "не удалось записать в выходной файл: %s" +msgstr "не удалось записать в файл: %s" #: compress_gzip.c:310 compress_lz4.c:494 compress_none.c:94 #: compress_none.c:135 compress_zstd.c:315 pg_backup_custom.c:650 @@ -558,24 +558,24 @@ msgid "could not initialize LZ4 compression: %s" msgstr "не удалось инициализировать LZ4: %s" #: compress_lz4.c:463 compress_lz4.c:581 -#, fuzzy, c-format +#, c-format msgid "unable to initialize LZ4 library: %s" -msgstr "не удалось инициализировать библиотеку сжатия: %s" +msgstr "не удалось инициализировать библиотеку LZ4: %s" #: compress_lz4.c:593 -#, fuzzy, c-format +#, c-format msgid "error during writing: %s" -msgstr "ошибка при перемещении в файле: %m" +msgstr "ошибка при записи: %s" #: compress_lz4.c:599 -#, fuzzy, c-format +#, c-format msgid "error during writing: %m" -msgstr "ошибка при перемещении в файле: %m" +msgstr "ошибка при записи: %m" #: compress_lz4.c:698 -#, fuzzy, c-format +#, c-format msgid "could not write to output file: %m" -msgstr "не удалось записать в выходной файл: %s" +msgstr "не удалось записать в выходной файл: %m" #: compress_lz4.c:711 #, c-format @@ -583,14 +583,14 @@ msgid "could not end decompression: %s" msgstr "не удалось завершить распаковку: %s" #: compress_lz4.c:726 compress_none.c:156 -#, fuzzy, c-format +#, c-format msgid "could not close file: %m" -msgstr "не удалось закрыть файл оглавления: %m" +msgstr "не удалось закрыть файл: %m" #: compress_none.c:109 compress_zstd.c:389 -#, fuzzy, c-format +#, c-format msgid "could not write to file: %m" -msgstr "не удалось записать в выходной файл: %s" +msgstr "не удалось записать в файл: %m" #: compress_zstd.c:67 #, c-format @@ -664,14 +664,14 @@ msgid "could not create directory \"%s\": %m" msgstr "не удалось создать каталог \"%s\": %m" #: dumputils.c:953 -#, fuzzy, c-format +#, c-format msgid "could not change permissions of directory \"%s\": %m" -msgstr "не удалось перейти в каталог \"%s\": %m" +msgstr "не удалось поменять права для каталога \"%s\": %m" #: dumputils.c:958 -#, fuzzy, c-format +#, c-format msgid "directory \"%s\" is not empty" -msgstr "фильтр %s для \"%s\" не допускается" +msgstr "каталог \"%s\" не пуст" #: filter.c:48 #, c-format @@ -854,9 +854,9 @@ msgstr "" "прямые подключения к базе данных не поддерживаются в архивах до версии 1.3" #: pg_backup_archiver.c:450 -#, fuzzy, c-format +#, c-format msgid "implied no-schema restore" -msgstr "подразумевается восстановление только данных" +msgstr "подразумевается восстановление без схемы" #: pg_backup_archiver.c:529 #, c-format @@ -1100,20 +1100,20 @@ 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" #: pg_backup_archiver.c:2668 -#, fuzzy, c-format +#, c-format msgid "unexpected TOC entry in WriteToc(): %d %s %s" -msgstr "прочитана запись оглавления %d (ID %d): %s %s\n" +msgstr "неожиданная запись оглавления в 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 @@ -1172,57 +1172,57 @@ 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 "не удалось присвоить \"search_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 "" +msgstr "неожиданная запись оглавления в _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 "несоответствие размера integer (%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 " @@ -1231,12 +1231,12 @@ 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 " @@ -1245,42 +1245,42 @@ 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\" не удалось, её данные не будут восстановлены" @@ -1363,9 +1363,9 @@ msgid "compressor active" msgstr "сжатие активно" #: pg_backup_db.c:41 -#, fuzzy, c-format +#, c-format msgid "could not get \"server_version\" from libpq" -msgstr "не удалось получить версию сервера из libpq" +msgstr "не удалось получить значение \"server_version\" от libpq" #: pg_backup_db.c:118 #, c-format @@ -1590,42 +1590,40 @@ 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 -#, fuzzy, c-format +#, c-format msgid "options -s/--schema-only and --statistics-only cannot be used together" -msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" +msgstr "параметры -s/--schema-only и --statistics-only исключают друг друга" #: pg_dump.c:830 pg_restore.c:384 -#, fuzzy, c-format +#, c-format msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" +msgstr "параметры -a/--data-only и --statistics-only исключают друг друга" #: pg_dump.c:834 pg_restore.c:388 -#, fuzzy, c-format +#, c-format msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" +msgstr "параметры -a/--data-only и --no-data исключают друг друга" #: pg_dump.c:836 pg_restore.c:390 -#, fuzzy, c-format +#, c-format msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "параметры -s/--schema-only и -a/--data-only исключают друг друга" +msgstr "параметры -s/--schema-only и --no-schema исключают друг друга" #: pg_dump.c:838 pg_restore.c:392 -#, fuzzy, c-format +#, c-format msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "" -"параметры -1/--single-transaction и --transaction-size исключают друг друга" +msgstr "параметры --statistics-only и --no-statistics исключают друг друга" #: pg_dump.c:842 pg_restore.c:396 -#, fuzzy, c-format +#, c-format msgid "options --statistics and --no-statistics cannot be used together" -msgstr "" -"параметры -1/--single-transaction и --transaction-size исключают друг друга" +msgstr "параметры --statistics и --no-statistics исключают друг друга" # TO REVEIW #: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 -#, fuzzy, c-format +#, c-format msgid "options %s and %s cannot be used together" -msgstr "параметры -d/--dbname и -f/--file исключают друг друга" +msgstr "параметры %s и %s исключают друг друга" #: pg_dump.c:853 #, c-format @@ -1661,19 +1659,19 @@ msgstr "" "insert или --column-inserts" #: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 -#, fuzzy, c-format +#, c-format msgid "could not generate restrict key" -msgstr "не удалось выполнить запрос" +msgstr "не удалось сгенерировать ограничительный ключ" #: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 #, c-format msgid "invalid restrict key" -msgstr "" +msgstr "неверный ограничительный ключ" #: pg_dump.c:903 #, c-format msgid "option --restrict-key can only be used with --format=plain" -msgstr "" +msgstr "параметр --restrict-key можно использовать только с --format=plain" #: pg_dump.c:925 #, c-format @@ -1718,12 +1716,12 @@ msgid "no matching extensions were found" msgstr "соответствующие расширения не найдены" #: pg_dump.c:1251 -#, fuzzy, c-format +#, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" "\n" msgstr "" -"%s сохраняет резервную копию БД в текстовом файле или другом виде.\n" +"%s выгружает базу данных PostgreSQL в виде скрипта SQL и в других форматах.\n" "\n" #: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 @@ -1825,11 +1823,13 @@ msgstr "" "Параметры, управляющие выводом:\n" #: pg_dump.c:1270 pg_dumpall.c:704 -#, fuzzy, c-format +#, c-format msgid "" " -a, --data-only dump only the data, not the schema or " "statistics\n" -msgstr " -a, --data-only выгрузить только данные, без схемы\n" +msgstr "" +" -a, --data-only выгрузить только данные, без схемы и " +"статистики\n" #: pg_dump.c:1271 #, c-format @@ -1902,10 +1902,12 @@ msgstr "" " при использовании текстового формата\n" #: pg_dump.c:1283 pg_dumpall.c:710 -#, fuzzy, c-format +#, c-format msgid "" " -s, --schema-only dump only the schema, no data or statistics\n" -msgstr " -s, --schema-only выгрузить только схему, без данных\n" +msgstr "" +" -s, --schema-only выгрузить только схему, без данных и " +"статистики\n" #: pg_dump.c:1284 #, c-format @@ -2062,19 +2064,19 @@ msgstr "" " --load-via-partition-root загружать секции через главную таблицу\n" #: pg_dump.c:1311 pg_dumpall.c:724 -#, fuzzy, c-format +#, c-format msgid " --no-comments do not dump comment commands\n" -msgstr " --no-comments не выгружать комментарии\n" +msgstr " --no-comments не выгружать команды комментариев\n" #: pg_dump.c:1312 pg_dumpall.c:725 -#, fuzzy, c-format +#, c-format msgid " --no-data do not dump data\n" -msgstr " --no-comments не выгружать комментарии\n" +msgstr " --no-data не выгружать данные\n" #: pg_dump.c:1313 pg_dumpall.c:726 -#, fuzzy, c-format +#, c-format msgid " --no-policies do not dump row security policies\n" -msgstr " --no-comments не выгружать комментарии\n" +msgstr " --no-policies не выгружать политики защиты строк\n" #: pg_dump.c:1314 pg_dumpall.c:727 #, c-format @@ -2082,9 +2084,9 @@ msgid " --no-publications do not dump publications\n" msgstr " --no-publications не выгружать публикации\n" #: pg_dump.c:1315 pg_dumpall.c:729 -#, fuzzy, c-format +#, c-format msgid " --no-schema do not dump schema\n" -msgstr " --no-comments не выгружать комментарии\n" +msgstr " --no-schema не выгружать схему\n" #: pg_dump.c:1316 pg_dumpall.c:730 #, c-format @@ -2093,9 +2095,9 @@ msgstr "" " --no-security-labels не выгружать назначения меток безопасности\n" #: pg_dump.c:1317 pg_dumpall.c:731 -#, fuzzy, c-format +#, c-format msgid " --no-statistics do not dump statistics\n" -msgstr " --no-subscriptions не выгружать подписки\n" +msgstr " --no-statistics не выгружать статистику\n" #: pg_dump.c:1318 pg_dumpall.c:732 #, c-format @@ -2142,11 +2144,15 @@ msgstr "" " --quote-all-identifiers заключать в кавычки все идентификаторы,\n" " а не только ключевые слова\n" +# well-spelled: ОГР #: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 #, c-format msgid "" " --restrict-key=RESTRICT_KEY use provided string as psql \\restrict key\n" msgstr "" +" --restrict-key=ОГР_КЛЮЧ использовать заданную строку как ключ " +"\\restrict\n" +" в psql\n" #: pg_dump.c:1326 pg_dumpall.c:741 #, c-format @@ -2166,11 +2172,9 @@ msgstr "" " (pre-data, data или post-data)\n" #: pg_dump.c:1328 pg_dumpall.c:742 -#, fuzzy, c-format +#, c-format msgid " --sequence-data include sequence data in dump\n" -msgstr "" -" -C, --create добавить в копию команды создания базы " -"данных\n" +msgstr " --sequence-data выгружать данные последовательностей\n" #: pg_dump.c:1329 #, c-format @@ -2188,17 +2192,17 @@ msgstr "" " --snapshot=СНИМОК использовать при выгрузке заданный снимок\n" #: pg_dump.c:1331 pg_dumpall.c:743 -#, fuzzy, c-format +#, c-format msgid " --statistics dump the statistics\n" -msgstr "" -" --no-tablespaces не выгружать назначения табличных " -"пространств\n" +msgstr " --statistics выгружать статистику\n" #: pg_dump.c:1332 pg_dumpall.c:744 -#, fuzzy, c-format +#, c-format msgid "" " --statistics-only dump only the statistics, not schema or data\n" -msgstr " -s, --schema-only выгрузить только схему, без данных\n" +msgstr "" +" --statistics-only выгрузить только статистику, без схемы и " +"данных\n" #: pg_dump.c:1333 pg_restore.c:575 #, c-format @@ -2451,8 +2455,8 @@ msgstr "чтение политик защиты на уровне строк" 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: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 #, c-format msgid "could not parse %s array" msgstr "не удалось разобрать массив %s" @@ -2486,7 +2490,7 @@ msgstr "схема с OID %u не существует" #: pg_dump.c:6994 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" -msgstr "" +msgstr "для отношения типа \"%c\" нельзя выгрузить статистику" #: pg_dump.c:7506 pg_dump.c:18987 #, c-format @@ -2546,9 +2550,9 @@ msgid "invalid adnum value %d for table \"%s\"" msgstr "неверное значение adnum (%d) в таблице \"%s\"" #: pg_dump.c:9553 -#, fuzzy, c-format +#, c-format msgid "finding invalid not-null constraints" -msgstr "поиск ограничений-проверок для таблиц" +msgstr "поиск некорректных ограничений NOT NULL" #: pg_dump.c:9651 #, c-format @@ -2585,16 +2589,18 @@ msgstr "неподдерживаемая запись в pg_init_privs: %u %u %d #, 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 -#, fuzzy, c-format +#, c-format msgid "unexpected null attname" -msgstr "неожиданный конец файла" +msgstr "неожиданный null в имени атрибута (attname)" #: pg_dump.c:11121 -#, fuzzy, c-format +#, c-format msgid "could not find index attname \"%s\"" -msgstr "не удалось подключиться к базе данных: \"%s\"" +msgstr "не удалось получить для индекса имя атрибута (attname) \"%s\"" #: pg_dump.c:11607 #, c-format @@ -2790,11 +2796,11 @@ msgstr[2] "" "(ожидалась 1)" #: pg_dump.c:18866 -#, fuzzy, c-format +#, c-format msgid "unrecognized sequence type: %d" -msgstr "нераспознанный тип последовательности: %s" +msgstr "нераспознанный тип последовательности: %d" -#: pg_dump.c:19395 +#: pg_dump.c:19400 #, c-format msgid "" "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows " @@ -2803,32 +2809,32 @@ msgstr "" "запрос на получение правила \"%s\" для таблицы \"%s\" возвратил неверное " "число строк" -#: pg_dump.c:19548 +#: pg_dump.c:19553 #, c-format msgid "could not find referenced extension %u" msgstr "не удалось найти упомянутое расширение %u" -#: pg_dump.c:19647 +#: pg_dump.c:19652 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "конфигурации расширения не соответствуют условиям по количеству" -#: pg_dump.c:19779 +#: pg_dump.c:19784 #, c-format msgid "reading dependency data" msgstr "чтение информации о зависимостях" -#: pg_dump.c:19865 +#: pg_dump.c:19870 #, c-format msgid "no referencing object %u %u" msgstr "нет подчинённого объекта %u %u" -#: pg_dump.c:19876 +#: pg_dump.c:19881 #, 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_dump.c:20316 pg_dump.c:20354 pg_dumpall.c:1836 pg_restore.c:629 #: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" @@ -2931,12 +2937,12 @@ msgstr "" "Укажите другую базу данных." #: pg_dumpall.c:693 -#, fuzzy, c-format +#, c-format msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" msgstr "" -"%s экспортирует всё содержимое кластера баз данных PostgreSQL в SQL-скрипт.\n" +"%s выгружает базу данных PostgreSQL в виде скрипта SQL.\n" "\n" #: pg_dumpall.c:695 @@ -3107,9 +3113,9 @@ msgstr "параметры -d/--dbname и -f/--file исключают друг # TO REVEIW #: pg_restore.c:361 -#, fuzzy, c-format +#, c-format msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "параметры -d/--dbname и -f/--file исключают друг друга" +msgstr "параметры -d/--dbname и --restrict-key исключают друг друга" #: pg_restore.c:410 #, c-format @@ -3132,7 +3138,7 @@ msgstr "параметр --single-transaction допускается тольк #: pg_restore.c:467 #, c-format msgid "archive format \"%s\" is not supported; please use psql" -msgstr "" +msgstr "формат архива \"%s\" не поддерживается; используйте psql" #: pg_restore.c:471 #, c-format @@ -3319,14 +3325,14 @@ msgstr "" " в соответствии с выражениями в этом файле\n" #: pg_restore.c:559 -#, fuzzy, c-format +#, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments не восстанавливать комментарии\n" #: pg_restore.c:560 -#, fuzzy, c-format +#, c-format msgid " --no-data do not restore data\n" -msgstr " --no-comments не восстанавливать комментарии\n" +msgstr " --no-data не восстанавливать данные\n" #: pg_restore.c:561 #, c-format @@ -3339,9 +3345,10 @@ msgstr "" " не удалось создать\n" #: pg_restore.c:563 -#, fuzzy, c-format +#, c-format msgid " --no-policies do not restore row security policies\n" -msgstr " --no-comments не восстанавливать комментарии\n" +msgstr "" +" --no-policies не восстанавливать политики защиты строк\n" #: pg_restore.c:564 #, c-format @@ -3349,9 +3356,9 @@ msgid " --no-publications do not restore publications\n" msgstr " --no-publications не восстанавливать публикации\n" #: pg_restore.c:565 -#, fuzzy, c-format +#, c-format msgid " --no-schema do not restore schema\n" -msgstr " --no-comments не восстанавливать комментарии\n" +msgstr " --no-schema не восстанавливать схему\n" #: pg_restore.c:566 #, c-format @@ -3359,9 +3366,9 @@ msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels не восстанавливать метки безопасности\n" #: pg_restore.c:567 -#, fuzzy, c-format +#, c-format msgid " --no-statistics do not restore statistics\n" -msgstr " --no-subscriptions не восстанавливать подписки\n" +msgstr " --no-statistics не восстанавливать статистику\n" #: pg_restore.c:568 #, c-format @@ -3391,16 +3398,18 @@ msgstr "" " (pre-data, data или post-data)\n" #: pg_restore.c:573 -#, fuzzy, c-format +#, c-format msgid " --statistics restore the statistics\n" -msgstr " -C, --create создать целевую базу данных\n" +msgstr " --statistics восстанавливать статистику\n" #: pg_restore.c:574 -#, fuzzy, c-format +#, c-format msgid "" " --statistics-only restore only the statistics, not schema or " "data\n" -msgstr " -s, --schema-only восстановить только схему, без данных\n" +msgstr "" +" --statistics-only восстановить только статистику, без схемы и " +"данных\n" #: pg_restore.c:577 #, c-format diff --git a/src/bin/pg_dump/po/sv.po b/src/bin/pg_dump/po/sv.po index 6d1db160f39d4..d5618af65744c 100644 --- a/src/bin/pg_dump/po/sv.po +++ b/src/bin/pg_dump/po/sv.po @@ -4,10 +4,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 17\n" +"Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-16 15:22+0000\n" -"PO-Revision-Date: 2025-08-17 20:48+0200\n" +"POT-Creation-Date: 2025-09-03 04:21+0000\n" +"PO-Revision-Date: 2025-09-07 15:44+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -37,9 +37,9 @@ msgid "hint: " msgstr "tips: " #: ../../common/compression.c:132 ../../common/compression.c:141 -#: ../../common/compression.c:150 compress_gzip.c:413 compress_gzip.c:420 -#: compress_io.c:108 compress_lz4.c:780 compress_lz4.c:787 compress_zstd.c:25 -#: compress_zstd.c:31 +#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: 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 "detta bygge stöder inte komprimering med %s" @@ -480,7 +480,7 @@ msgstr "kunde inte initiera komprimeringsbibliotek: %s" msgid "could not close compression stream: %s" msgstr "kunde inte stänga komprimeringsströmmen: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "kunde inte komprimera data: %s" @@ -495,81 +495,111 @@ msgstr "kunde inte packa upp data: %s" msgid "could not close compression library: %s" msgstr "kunde inte stänga komprimeringsbiblioteket: %s" -#: compress_gzip.c:266 compress_lz4.c:608 compress_lz4.c:628 compress_lz4.c:647 +#: compress_gzip.c:277 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:295 compress_none.c:97 compress_none.c:139 -#: compress_zstd.c:375 pg_backup_custom.c:650 +#: compress_gzip.c:294 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_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:297 compress_lz4.c:630 compress_none.c:141 -#: compress_zstd.c:373 pg_backup_custom.c:648 pg_backup_directory.c:538 +#: compress_gzip.c:312 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 "kunde inte läsa från infilen: slut på filen" -#: compress_lz4.c:157 +#: compress_lz4.c:158 #, c-format msgid "could not create LZ4 decompression context: %s" msgstr "kunde inte skapa kontext för LZ4-dekomprimering: %s" -#: compress_lz4.c:180 +#: compress_lz4.c:181 #, c-format msgid "could not decompress: %s" msgstr "kunde inte dekomprimera: %s" -#: compress_lz4.c:193 +#: compress_lz4.c:194 #, c-format msgid "could not free LZ4 decompression context: %s" msgstr "kunde inte frigöra kontext för LZ4-dekomprimering: %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 "kunde inte avsluta komprimering: %s" -#: compress_lz4.c:301 +#: compress_lz4.c:302 #, c-format msgid "could not initialize LZ4 compression: %s" msgstr "kunde inte initiera LZ4-komprimering: %s" -#: compress_lz4.c:697 +#: compress_lz4.c:463 compress_lz4.c:581 +#, c-format +msgid "unable to initialize LZ4 library: %s" +msgstr "kunde inte initiera LZ4-bibliotek: %s" + +#: compress_lz4.c:593 +#, c-format +msgid "error during writing: %s" +msgstr "fel vid skrivning: %s" + +#: compress_lz4.c:599 +#, c-format +msgid "error during writing: %m" +msgstr "fel vid skrivning: %m" + +#: compress_lz4.c:698 +#, c-format +msgid "could not write to output file: %m" +msgstr "kunde inte skriva till utdatafil: %m" + +#: compress_lz4.c:711 #, c-format msgid "could not end decompression: %s" msgstr "kunde inte avsluta dekomprimering: %s" -#: compress_zstd.c:66 +#: compress_lz4.c:726 compress_none.c:156 +#, c-format +msgid "could not close file: %m" +msgstr "kunde inte stänga fil: %m" + +#: compress_none.c:109 compress_zstd.c:389 +#, c-format +msgid "could not write to file: %m" +msgstr "kunde inte skriva till fil: %m" + +#: compress_zstd.c:67 #, c-format msgid "could not set compression parameter \"%s\": %s" msgstr "kunde inte sätta komprimeringsparameter \"%s\": %s" -#: compress_zstd.c:78 compress_zstd.c:233 compress_zstd.c:492 -#: compress_zstd.c:500 +#: 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 "kunde inte initierar komprimeringsbibliotek" -#: compress_zstd.c:196 compress_zstd.c:310 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "kunde inte dekomprimera data: %s" -#: compress_zstd.c:503 -#, c-format -msgid "unhandled mode \"%s\"" -msgstr "kan inte hantera läget \"%s\"" - #: connectdb.c:56 connectdb.c:165 pg_backup_db.c:126 msgid "Password: " msgstr "Lösenord: " #: connectdb.c:83 connectdb.c:174 pg_backup_db.c:203 pg_dump.c:937 -#: pg_dump_sort.c:1453 pg_dump_sort.c:1473 +#: pg_dump_sort.c:1466 pg_dump_sort.c:1486 #, c-format msgid "%s" msgstr "%s" @@ -907,14 +937,14 @@ msgid "could not find entry for ID %d" msgstr "kunde inte hitta en post för ID %d" #: pg_backup_archiver.c:1639 pg_backup_directory.c:187 -#: pg_backup_directory.c:586 +#: pg_backup_directory.c:563 #, c-format msgid "could not close TOC file: %m" 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:573 pg_backup_directory.c:639 -#: pg_backup_directory.c:657 pg_dumpall.c:548 +#: pg_backup_directory.c:550 pg_backup_directory.c:616 +#: pg_backup_directory.c:634 pg_dumpall.c:548 #, c-format msgid "could not open output file \"%s\": %m" msgstr "kunde inte öppna utdatafilen \"%s\": %m" @@ -987,7 +1017,7 @@ msgid "directory \"%s\" does not appear to be a valid archive (\"toc.dat\" does msgstr "katalogen \"%s\" verkar inte vara ett giltigt arkiv (\"toc.dat\" finns inte)" #: pg_backup_archiver.c:2293 pg_backup_custom.c:168 pg_backup_custom.c:813 -#: pg_backup_directory.c:172 pg_backup_directory.c:364 +#: pg_backup_directory.c:172 pg_backup_directory.c:358 #, c-format msgid "could not open input file \"%s\": %m" msgstr "kunde inte öppna indatafilen \"%s\": %m" @@ -1344,58 +1374,47 @@ msgstr "kunde inte genomföra databastransaktionen" msgid "no output directory specified" msgstr "ingen utdatakatalog angiven" -#: pg_backup_directory.c:325 pg_backup_directory.c:479 -#: pg_backup_directory.c:517 -#, c-format -msgid "could not write to output file: %s" -msgstr "kunde inte skriva till utdatafil: %s" - -#: pg_backup_directory.c:343 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "kan inte stänga datafil: %m" -#: pg_backup_directory.c:376 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "kan inte stänga datafil \"%s\": %m" -#: pg_backup_directory.c:428 +#: pg_backup_directory.c:422 #, c-format msgid "could not open large object TOC file \"%s\" for input: %m" msgstr "kunde inte öppna stora objekts TOC-fil \"%s\" för läsning: %m" -#: pg_backup_directory.c:439 +#: pg_backup_directory.c:433 #, c-format msgid "invalid line in large object TOC file \"%s\": \"%s\"" msgstr "ogiltig rad i stora objekts TOC-fil \"%s\": \"%s\"" -#: pg_backup_directory.c:448 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "fel vid lösning av stora objekts TOC-fil \"%s\"" -#: pg_backup_directory.c:452 +#: pg_backup_directory.c:446 #, c-format msgid "could not close large object TOC file \"%s\": %m" msgstr "kunde inte stänga stora objekts TOC-fil \"%s\": %m" -#: pg_backup_directory.c:675 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" msgstr "kan inte stänga LO-datafil: %m" -#: pg_backup_directory.c:685 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "kunde inte skriva till TOC-fil för LO: %s" - -#: pg_backup_directory.c:701 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" msgstr "kunde inte stänga TOC-fil för LO: %m" -#: pg_backup_directory.c:720 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "filnamnet är för långt: \"%s\"" @@ -2598,39 +2617,39 @@ msgstr "inget refererat objekt %u %u" msgid "%s filter for \"%s\" is not allowed" msgstr "%s-filter för \"%s\" tillåts inte" -#: pg_dump_sort.c:635 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "ogiltigt dumpId %d" -#: pg_dump_sort.c:641 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "ogiltigt beroende %d" -#: pg_dump_sort.c:805 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "kunde inte fastställa beroendeloop" -#: pg_dump_sort.c:1449 +#: pg_dump_sort.c:1462 #, 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:1454 +#: pg_dump_sort.c:1467 #, 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:1455 +#: pg_dump_sort.c:1468 #, 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:1467 +#: pg_dump_sort.c:1480 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "kunde inte räta ut beroendeloopen för dessa saker:" diff --git a/src/bin/pg_resetwal/po/es.po b/src/bin/pg_resetwal/po/es.po index ed1ed5e5c86e2..8537846e6f4b5 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-02-16 19:50+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:50+0000\n" +"PO-Revision-Date: 2025-09-21 11:38+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -23,33 +23,33 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " -#: ../../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:389 pg_resetwal.c:547 +#: pg_resetwal.c:595 #, 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:534 pg_resetwal.c:588 +#: ../../common/controldata_utils.c:110 pg_resetwal.c:556 pg_resetwal.c:610 #, c-format msgid "could not read file \"%s\": %m" msgstr "no se pudo leer el archivo «%s»: %m" @@ -82,20 +82,20 @@ msgstr "" "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n" "directorio de datos." -#: ../../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:1158 #, 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:1142 pg_resetwal.c:1154 +#: ../../common/controldata_utils.c:249 pg_resetwal.c:1166 pg_resetwal.c:1178 #, c-format msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" @@ -111,35 +111,35 @@ 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:76 +#: ../../common/file_utils.c:75 #, 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" -#: ../../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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 #, c-format msgid "could not open directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%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:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 #, c-format msgid "could not read directory \"%s\": %m" msgstr "no se pudo leer el directorio «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -190,152 +190,152 @@ 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: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: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 #, c-format msgid "invalid argument for option %s" msgstr "argumento no válido para la opción %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: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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_resetwal.c:169 +#: pg_resetwal.c:171 #, 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:182 +#: pg_resetwal.c:184 #, 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:195 +#: pg_resetwal.c:197 #, 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:217 pg_resetwal.c:221 +#: pg_resetwal.c:219 pg_resetwal.c:223 #, 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:234 +#: pg_resetwal.c:236 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) no debe ser cero" -#: pg_resetwal.c:255 +#: 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:262 +#: pg_resetwal.c:264 #, 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:275 +#: pg_resetwal.c:277 #, c-format msgid "multitransaction offset (-O) must not be -1" msgstr "la posición de multitransacción (-O) no debe ser -1" -#: pg_resetwal.c:301 +#: pg_resetwal.c:303 #, 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:318 +#: pg_resetwal.c:337 #, 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:326 +#: pg_resetwal.c:345 #, c-format msgid "no data directory specified" msgstr "directorio de datos no especificado" -#: pg_resetwal.c:340 +#: pg_resetwal.c:359 #, c-format msgid "cannot be executed by \"root\"" msgstr "no puede ser ejecutado con el usuario «root»" -#: pg_resetwal.c:341 +#: pg_resetwal.c:360 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Debe ejecutar %s con el superusuario de PostgreSQL." -#: pg_resetwal.c:351 +#: pg_resetwal.c:370 #, 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:357 +#: pg_resetwal.c:376 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "no se pudo cambiar al directorio «%s»: %m" -#: pg_resetwal.c:375 +#: pg_resetwal.c:394 #, c-format msgid "lock file \"%s\" exists" msgstr "el archivo candado «%s» existe" -#: pg_resetwal.c:376 +#: pg_resetwal.c:395 #, 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:475 +#: pg_resetwal.c:497 #, 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:476 +#: pg_resetwal.c:498 #, 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:485 +#: pg_resetwal.c:507 #, c-format msgid "database server was not shut down cleanly" msgstr "el directorio de destino no fue apagado limpiamente" -#: pg_resetwal.c:486 +#: pg_resetwal.c:508 #, 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:487 +#: pg_resetwal.c:509 #, 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:500 +#: pg_resetwal.c:522 #, c-format msgid "Write-ahead log reset\n" msgstr "\"Write-ahead log\" restablecido\n" -#: pg_resetwal.c:532 +#: pg_resetwal.c:554 #, c-format msgid "unexpected empty file \"%s\"" msgstr "archivo vacío inesperado «%s»" -#: pg_resetwal.c:542 +#: pg_resetwal.c:564 #, c-format msgid "data directory is of wrong version" msgstr "el directorio de datos tiene la versión equivocada" -#: pg_resetwal.c:543 +#: pg_resetwal.c:565 #, 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:576 +#: pg_resetwal.c:598 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -346,24 +346,24 @@ msgstr "" " touch %s\n" "y pruebe de nuevo." -#: pg_resetwal.c:604 +#: pg_resetwal.c:626 #, 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:613 +#: pg_resetwal.c:635 #, 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:624 +#: pg_resetwal.c:646 #, 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:719 +#: pg_resetwal.c:741 #, c-format msgid "" "Guessed pg_control values:\n" @@ -372,7 +372,7 @@ msgstr "" "Valores de pg_control asumidos:\n" "\n" -#: pg_resetwal.c:721 +#: pg_resetwal.c:743 #, c-format msgid "" "Current pg_control values:\n" @@ -381,167 +381,183 @@ msgstr "" "Valores actuales de pg_control:\n" "\n" -#: pg_resetwal.c:723 +#: pg_resetwal.c:745 #, c-format msgid "pg_control version number: %u\n" msgstr "Número de versión de pg_control: %u\n" -#: pg_resetwal.c:725 +#: pg_resetwal.c:747 #, c-format msgid "Catalog version number: %u\n" msgstr "Número de versión de catálogo: %u\n" -#: pg_resetwal.c:727 +#: pg_resetwal.c:749 #, c-format -msgid "Database system identifier: %llu\n" -msgstr "Identificador de sistema: %llu\n" +#| msgid "Database system identifier: %llu\n" +msgid "Database system identifier: %\n" +msgstr "Identificador de sistema: %\n" -#: pg_resetwal.c:729 +#: pg_resetwal.c:751 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "TimeLineID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:731 +#: pg_resetwal.c:753 #, 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:732 +#: pg_resetwal.c:754 msgid "off" msgstr "desactivado" -#: pg_resetwal.c:732 +#: pg_resetwal.c:754 msgid "on" msgstr "activado" -#: pg_resetwal.c:733 +#: pg_resetwal.c:755 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "NextXID del checkpoint más reciente: %u:%u\n" -#: pg_resetwal.c:736 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "NextOID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:738 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "NextMultiXactId del checkpoint más reciente: %u\n" -#: pg_resetwal.c:740 +#: pg_resetwal.c:762 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "NextMultiOffset del checkpoint más reciente: %u\n" -#: pg_resetwal.c:742 +#: pg_resetwal.c:764 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "oldestXID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:744 +#: pg_resetwal.c:766 #, 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:746 +#: pg_resetwal.c:768 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "oldestActiveXID del checkpoint más reciente: %u\n" -#: pg_resetwal.c:748 +#: pg_resetwal.c:770 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "oldestMultiXid del checkpoint más reciente: %u\n" -#: pg_resetwal.c:750 +#: pg_resetwal.c:772 #, 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:752 +#: pg_resetwal.c:774 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "oldestCommitTsXid del último checkpoint: %u\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:776 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "newestCommitTsXid del último checkpoint: %u\n" -#: pg_resetwal.c:756 +#: pg_resetwal.c:778 #, c-format msgid "Maximum data alignment: %u\n" msgstr "Máximo alineamiento de datos: %u\n" -#: pg_resetwal.c:759 +#: pg_resetwal.c:781 #, c-format msgid "Database block size: %u\n" msgstr "Tamaño del bloque de la base de datos: %u\n" -#: pg_resetwal.c:761 +#: pg_resetwal.c:783 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "Bloques por segmento de relación grande: %u\n" -#: pg_resetwal.c:763 +#: pg_resetwal.c:785 #, c-format msgid "WAL block size: %u\n" msgstr "Tamaño del bloque de WAL: %u\n" -#: pg_resetwal.c:765 pg_resetwal.c:851 +#: pg_resetwal.c:787 pg_resetwal.c:875 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "Bytes por segmento WAL: %u\n" -#: pg_resetwal.c:767 +#: pg_resetwal.c:789 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "Longitud máxima de identificadores: %u\n" -#: pg_resetwal.c:769 +#: pg_resetwal.c:791 #, 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:771 +#: pg_resetwal.c:793 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "Longitud máxima de un trozo TOAST: %u\n" -#: pg_resetwal.c:773 +#: pg_resetwal.c:795 #, 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:776 +#: pg_resetwal.c:798 #, c-format msgid "Date/time type storage: %s\n" msgstr "Tipo de almacenamiento hora/fecha: %s\n" -#: pg_resetwal.c:777 +#: pg_resetwal.c:799 msgid "64-bit integers" msgstr "enteros de 64 bits" -#: pg_resetwal.c:778 +#: pg_resetwal.c:800 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Paso de parámetros float8: %s\n" -#: pg_resetwal.c:779 +#: pg_resetwal.c:801 msgid "by reference" msgstr "por referencia" -#: pg_resetwal.c:779 +#: pg_resetwal.c:801 msgid "by value" msgstr "por valor" -#: pg_resetwal.c:780 +#: pg_resetwal.c:802 #, c-format msgid "Data page checksum version: %u\n" msgstr "Versión de suma de verificación de datos: %u\n" -#: pg_resetwal.c:794 +#: pg_resetwal.c:804 +#, c-format +#| msgid "Maximum data alignment: %u\n" +msgid "Default char data signedness: %s\n" +msgstr "Presencia de signo en datos «char»: %s\n" + +#: pg_resetwal.c:805 +#| msgid "assignment" +msgid "signed" +msgstr "con signo" + +#: pg_resetwal.c:805 +msgid "unsigned" +msgstr "sin signo" + +#: pg_resetwal.c:818 #, c-format msgid "" "\n" @@ -554,82 +570,82 @@ msgstr "" "Valores a cambiar:\n" "\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:822 #, c-format msgid "First log segment after reset: %s\n" msgstr "Primer segmento de log después de reiniciar: %s\n" -#: pg_resetwal.c:802 +#: pg_resetwal.c:826 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:828 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:806 +#: pg_resetwal.c:830 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "Base de datos del OldestMulti: %u\n" -#: pg_resetwal.c:812 +#: pg_resetwal.c:836 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:818 +#: pg_resetwal.c:842 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:824 +#: pg_resetwal.c:848 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:850 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:852 #, c-format msgid "OldestXID's DB: %u\n" msgstr "Base de datos del OldestXID: %u\n" -#: pg_resetwal.c:834 +#: pg_resetwal.c:858 #, c-format msgid "NextXID epoch: %u\n" msgstr "Epoch del NextXID: %u\n" -#: pg_resetwal.c:840 +#: pg_resetwal.c:864 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "oldestCommitTsXid: %u\n" -#: pg_resetwal.c:845 +#: pg_resetwal.c:869 #, 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:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 #, c-format msgid "could not close directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" -#: pg_resetwal.c:990 pg_resetwal.c:1028 pg_resetwal.c:1063 +#: pg_resetwal.c:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 #, c-format msgid "could not delete file \"%s\": %m" msgstr "no se pudo borrar el archivo «%s»: %m" -#: pg_resetwal.c:1159 +#: pg_resetwal.c:1183 #, c-format msgid "fsync error: %m" msgstr "error de fsync: %m" -#: pg_resetwal.c:1168 +#: pg_resetwal.c:1192 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -638,17 +654,17 @@ msgstr "" "%s restablece el WAL (\"write-ahead log\") de PostgreSQL.\n" "\n" -#: pg_resetwal.c:1169 +#: pg_resetwal.c:1193 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_resetwal.c:1170 +#: pg_resetwal.c:1194 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [OPCIÓN]... DATADIR\n" -#: pg_resetwal.c:1172 +#: pg_resetwal.c:1196 #, c-format msgid "" "\n" @@ -657,12 +673,12 @@ msgstr "" "\n" "Opciones:\n" -#: pg_resetwal.c:1173 +#: pg_resetwal.c:1197 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR directorio de datos\n" -#: pg_resetwal.c:1174 +#: pg_resetwal.c:1198 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown or\n" @@ -672,22 +688,22 @@ msgstr "" " de un apagado no limpio o si los valores de pg_control\n" " tuvieron que asumirse\n" -#: pg_resetwal.c:1176 +#: pg_resetwal.c:1200 #, 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:1177 +#: pg_resetwal.c:1201 #, 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:1178 +#: pg_resetwal.c:1202 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda, luego salir\n" -#: pg_resetwal.c:1180 +#: pg_resetwal.c:1204 #, c-format msgid "" "\n" @@ -696,7 +712,7 @@ msgstr "" "\n" "Opciones para sobreescribir valores del archivo de control:\n" -#: pg_resetwal.c:1181 +#: pg_resetwal.c:1205 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -708,53 +724,58 @@ msgstr "" " transacciones que llevan timestamp de commit\n" " (cero significa no cambiar)\n" -#: pg_resetwal.c:1184 +#: pg_resetwal.c:1208 #, 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:1185 +#: pg_resetwal.c:1209 #, 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:1186 +#: pg_resetwal.c:1210 #, 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:1187 +#: pg_resetwal.c:1211 #, c-format msgid " -o, --next-oid=OID set next OID\n" msgstr " -o, --next-oid=OID asigna el siguiente OID\n" -#: pg_resetwal.c:1188 +#: pg_resetwal.c:1212 #, 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:1189 +#: pg_resetwal.c:1213 #, 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:1190 +#: pg_resetwal.c:1214 #, 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:1191 +#: pg_resetwal.c:1215 +#, 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 #, 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:1193 +#: pg_resetwal.c:1218 #, c-format msgid "" "\n" @@ -763,7 +784,7 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1219 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" diff --git a/src/bin/pg_resetwal/po/ko.po b/src/bin/pg_resetwal/po/ko.po index c27ba3a26276e..18947296cc2af 100644 --- a/src/bin/pg_resetwal/po/ko.po +++ b/src/bin/pg_resetwal/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_resetwal (PostgreSQL) 17\n" +"Project-Id-Version: pg_resetwal (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:50+0000\n" -"PO-Revision-Date: 2025-01-16 16:15+0900\n" +"POT-Creation-Date: 2025-09-11 21:50+0000\n" +"PO-Revision-Date: 2025-09-10 13:41+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -15,33 +15,33 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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:389 pg_resetwal.c:547 +#: pg_resetwal.c:595 #, 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:556 pg_resetwal.c:610 #, c-format msgid "could not read file \"%s\": %m" msgstr "\"%s\" 파일을 읽을 수 없음: %m" @@ -75,20 +75,20 @@ msgstr "" "이럴 경우, 출력 결과가 바르지 않을 수 있고,\n" "설치된 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:1158 #, 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:1166 pg_resetwal.c:1178 #, 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 "\"%s\" 파일을 fsync 할 수 없음: %m" @@ -104,35 +104,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:952 pg_resetwal.c:1005 pg_resetwal.c:1040 pg_resetwal.c:1078 #, 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:978 pg_resetwal.c:1019 pg_resetwal.c:1057 pg_resetwal.c:1092 #, 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" @@ -183,156 +183,156 @@ 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: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 #, 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: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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "자세한 사항은 \"%s --help\" 명령으로 살펴보세요." -#: pg_resetwal.c:169 +#: pg_resetwal.c:171 #, c-format msgid "transaction ID epoch (-e) must not be -1" msgstr "트랜잭션 ID epoch (-e) 값은 -1이 아니여야함" -#: pg_resetwal.c:182 +#: pg_resetwal.c:184 #, 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:197 #, 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:219 pg_resetwal.c:223 #, c-format msgid "transaction ID (-c) must be either %u or greater than or equal to %u" msgstr "-c 옵션으로 지정한 트랜잭션 ID는 %u이거나 %u이상이어야 함" -#: pg_resetwal.c:234 +#: pg_resetwal.c:236 #, c-format msgid "OID (-o) must not be 0" msgstr "OID (-o) 값은 0이 아니여야함" -#: pg_resetwal.c:255 +#: pg_resetwal.c:257 #, c-format msgid "multitransaction ID (-m) must not be 0" msgstr "멀티트랜잭션 ID (-m) 값은 0이 아니여야함" -#: pg_resetwal.c:262 +#: pg_resetwal.c:264 #, c-format msgid "oldest multitransaction ID (-m) must not be 0" msgstr "제일 오래된 멀티트랜잭션 ID (-m) 값은 0이 아니여야함" -#: pg_resetwal.c:275 +#: pg_resetwal.c:277 #, c-format msgid "multitransaction offset (-O) must not be -1" msgstr "멀티트랜잭션 옵셋 (-O) 값은 -1이 아니여야함" -#: pg_resetwal.c:301 +#: pg_resetwal.c:303 #, c-format msgid "argument of %s must be a power of two between 1 and 1024" msgstr "%s 값은 1부터 1024사이 2^n 값이어야 합니다" -#: pg_resetwal.c:318 +#: pg_resetwal.c:337 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "너무 많은 명령행 인수를 지정했습니다. (처음 \"%s\")" -#: pg_resetwal.c:326 +#: pg_resetwal.c:345 #, c-format msgid "no data directory specified" msgstr "데이터 디렉터리를 지정하지 않았음" -#: pg_resetwal.c:340 +#: pg_resetwal.c:359 #, c-format msgid "cannot be executed by \"root\"" msgstr "\"root\" 계정으로는 실행 할 수 없음" -#: pg_resetwal.c:341 +#: pg_resetwal.c:360 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "PostgreSQL superuser로 %s 프로그램을 실행하십시오." -#: pg_resetwal.c:351 +#: pg_resetwal.c:370 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "\"%s\" 디렉터리 읽기 권한 없음: %m" -#: pg_resetwal.c:357 +#: pg_resetwal.c:376 #, c-format msgid "could not change directory to \"%s\": %m" msgstr "\"%s\" 이름의 디렉터리로 이동할 수 없습니다: %m" -#: pg_resetwal.c:375 +#: pg_resetwal.c:394 #, c-format msgid "lock file \"%s\" exists" msgstr "\"%s\" 잠금 파일이 있음" -#: pg_resetwal.c:376 +#: pg_resetwal.c:395 #, c-format msgid "Is a server running? If not, delete the lock file and try again." msgstr "" "서버가 가동중인가요? 그렇지 않다면, 이 파일을 지우고 다시 시도하십시오." -#: pg_resetwal.c:475 +#: pg_resetwal.c:497 #, c-format msgid "not proceeding because control file values were guessed" msgstr "컨트롤 파일 값들이 추정되었기에 더 이상 진행하지 않습니다." -#: pg_resetwal.c:476 +#: pg_resetwal.c:498 #, c-format msgid "If these values seem acceptable, use -f to force reset." msgstr "" "이 설정값들이 타당하다고 판단되면, 강제로 갱신하려면, -f 옵션을 쓰세요." -#: pg_resetwal.c:485 +#: pg_resetwal.c:507 #, c-format msgid "database server was not shut down cleanly" msgstr "데이터베이스 서버가 깔끔하게 중지 되지 못했습니다." -#: pg_resetwal.c:486 +#: pg_resetwal.c:508 #, c-format msgid "Resetting the write-ahead log might cause data to be lost." msgstr "미리 쓰기 로그를 리셋하면 자료를 잃어버릴 수 있습니다." -#: pg_resetwal.c:487 +#: pg_resetwal.c:509 #, c-format msgid "If you want to proceed anyway, use -f to force reset." msgstr "이 설정값들로 강제로 갱신하려면, -f 옵션을 쓰세요." -#: pg_resetwal.c:500 +#: pg_resetwal.c:522 #, c-format msgid "Write-ahead log reset\n" msgstr "트랜잭션 로그 재설정\n" -#: pg_resetwal.c:532 +#: pg_resetwal.c:554 #, c-format msgid "unexpected empty file \"%s\"" msgstr "\"%s\" 파일은 예상치 않게 비었음" -#: pg_resetwal.c:542 +#: pg_resetwal.c:564 #, c-format msgid "data directory is of wrong version" msgstr "잘못된 버전의 데이터 디렉터리입니다." -#: pg_resetwal.c:543 +#: pg_resetwal.c:565 #, 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:598 #, c-format msgid "" "If you are sure the data directory path is correct, execute\n" @@ -343,12 +343,12 @@ msgstr "" "보십시오.\n" " touch %s" -#: pg_resetwal.c:604 +#: pg_resetwal.c:626 #, c-format msgid "pg_control exists but has invalid CRC; proceed with caution" msgstr "pg_control 파일이 있지만, CRC값이 잘못되었습니다; 경고와 함께 진행함" -#: pg_resetwal.c:613 +#: pg_resetwal.c:635 #, c-format msgid "" "pg_control specifies invalid WAL segment size (%d byte); proceed with caution" @@ -359,12 +359,12 @@ msgstr[0] "" "pg_control 파일에 잘못된 WAL 조각 파일 크기(%d 바이트)가 지정됨; 경고와 함께 " "진행함" -#: pg_resetwal.c:624 +#: pg_resetwal.c:646 #, c-format msgid "pg_control exists but is broken or wrong version; ignoring it" msgstr "pg_control 파일이 있지만, 손상되었거나 버전을 알 수 없음; 무시함" -#: pg_resetwal.c:719 +#: pg_resetwal.c:741 #, c-format msgid "" "Guessed pg_control values:\n" @@ -373,7 +373,7 @@ msgstr "" "추측된 pg_control 설정값들:\n" "\n" -#: pg_resetwal.c:721 +#: pg_resetwal.c:743 #, c-format msgid "" "Current pg_control values:\n" @@ -382,167 +382,180 @@ msgstr "" "현재 pg_control 설정값들:\n" "\n" -#: pg_resetwal.c:723 +#: pg_resetwal.c:745 #, c-format msgid "pg_control version number: %u\n" msgstr "pg_control 버전 번호: %u\n" -#: pg_resetwal.c:725 +#: pg_resetwal.c:747 #, c-format msgid "Catalog version number: %u\n" msgstr "카탈로그 버전 번호: %u\n" -#: pg_resetwal.c:727 +#: pg_resetwal.c:749 #, 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:751 #, c-format msgid "Latest checkpoint's TimeLineID: %u\n" msgstr "마지막 체크포인트 TimeLineID: %u\n" -#: pg_resetwal.c:731 +#: pg_resetwal.c:753 #, c-format msgid "Latest checkpoint's full_page_writes: %s\n" msgstr "마지막 체크포인트 full_page_writes: %s\n" -#: pg_resetwal.c:732 +#: pg_resetwal.c:754 msgid "off" msgstr "off" -#: pg_resetwal.c:732 +#: pg_resetwal.c:754 msgid "on" msgstr "on" -#: pg_resetwal.c:733 +#: pg_resetwal.c:755 #, c-format msgid "Latest checkpoint's NextXID: %u:%u\n" msgstr "마지막 체크포인트 NextXID: %u:%u\n" -#: pg_resetwal.c:736 +#: pg_resetwal.c:758 #, c-format msgid "Latest checkpoint's NextOID: %u\n" msgstr "마지막 체크포인트 NextOID: %u\n" -#: pg_resetwal.c:738 +#: pg_resetwal.c:760 #, c-format msgid "Latest checkpoint's NextMultiXactId: %u\n" msgstr "마지막 체크포인트 NextMultiXactId: %u\n" -#: pg_resetwal.c:740 +#: pg_resetwal.c:762 #, c-format msgid "Latest checkpoint's NextMultiOffset: %u\n" msgstr "마지막 체크포인트 NextMultiOffset: %u\n" -#: pg_resetwal.c:742 +#: pg_resetwal.c:764 #, c-format msgid "Latest checkpoint's oldestXID: %u\n" msgstr "마지막 체크포인트 제일 오래된 XID: %u\n" -#: pg_resetwal.c:744 +#: pg_resetwal.c:766 #, c-format msgid "Latest checkpoint's oldestXID's DB: %u\n" msgstr "마지막 체크포인트 제일 오래된 XID의 DB:%u\n" -#: pg_resetwal.c:746 +#: pg_resetwal.c:768 #, c-format msgid "Latest checkpoint's oldestActiveXID: %u\n" msgstr "마지막 체크포인트 제일 오래된 ActiveXID:%u\n" -#: pg_resetwal.c:748 +#: pg_resetwal.c:770 #, c-format msgid "Latest checkpoint's oldestMultiXid: %u\n" msgstr "마지막 체크포인트 제일 오래된 MultiXid:%u\n" -#: pg_resetwal.c:750 +#: pg_resetwal.c:772 #, c-format msgid "Latest checkpoint's oldestMulti's DB: %u\n" msgstr "마지막 체크포인트 제일 오래된 MultiXid의 DB:%u\n" -#: pg_resetwal.c:752 +#: pg_resetwal.c:774 #, c-format msgid "Latest checkpoint's oldestCommitTsXid:%u\n" msgstr "마지막 체크포인트 제일 오래된 CommitTsXid:%u\n" -#: pg_resetwal.c:754 +#: pg_resetwal.c:776 #, c-format msgid "Latest checkpoint's newestCommitTsXid:%u\n" msgstr "마지막 체크포인트 최신 CommitTsXid: %u\n" -#: pg_resetwal.c:756 +#: pg_resetwal.c:778 #, c-format msgid "Maximum data alignment: %u\n" msgstr "최대 자료 정렬: %u\n" -#: pg_resetwal.c:759 +#: pg_resetwal.c:781 #, c-format msgid "Database block size: %u\n" msgstr "데이터베이스 블록 크기: %u\n" -#: pg_resetwal.c:761 +#: pg_resetwal.c:783 #, c-format msgid "Blocks per segment of large relation: %u\n" msgstr "대형 릴레이션의 세그먼트당 블럭 갯수: %u\n" -#: pg_resetwal.c:763 +#: pg_resetwal.c:785 #, c-format msgid "WAL block size: %u\n" msgstr "WAL 블록 크기: %u\n" -#: pg_resetwal.c:765 pg_resetwal.c:851 +#: pg_resetwal.c:787 pg_resetwal.c:875 #, c-format msgid "Bytes per WAL segment: %u\n" msgstr "WAL 세그먼트의 크기(byte): %u\n" -#: pg_resetwal.c:767 +#: pg_resetwal.c:789 #, c-format msgid "Maximum length of identifiers: %u\n" msgstr "식별자 최대 길이: %u\n" -#: pg_resetwal.c:769 +#: pg_resetwal.c:791 #, c-format msgid "Maximum columns in an index: %u\n" msgstr "인덱스에서 사용하는 최대 열 수: %u\n" -#: pg_resetwal.c:771 +#: pg_resetwal.c:793 #, c-format msgid "Maximum size of a TOAST chunk: %u\n" msgstr "TOAST 청크의 최대 크기: %u\n" -#: pg_resetwal.c:773 +#: pg_resetwal.c:795 #, c-format msgid "Size of a large-object chunk: %u\n" msgstr "대형객체 청크의 최대 크기: %u\n" -#: pg_resetwal.c:776 +#: pg_resetwal.c:798 #, c-format msgid "Date/time type storage: %s\n" msgstr "날짜/시간형 자료의 저장방식: %s\n" -#: pg_resetwal.c:777 +#: pg_resetwal.c:799 msgid "64-bit integers" msgstr "64-비트 정수" -#: pg_resetwal.c:778 +#: pg_resetwal.c:800 #, c-format msgid "Float8 argument passing: %s\n" msgstr "Float8 인수 전달: %s\n" -#: pg_resetwal.c:779 +#: pg_resetwal.c:801 msgid "by reference" msgstr "참조별" -#: pg_resetwal.c:779 +#: pg_resetwal.c:801 msgid "by value" msgstr "값별" -#: pg_resetwal.c:780 +#: pg_resetwal.c:802 #, c-format msgid "Data page checksum version: %u\n" msgstr "데이터 페이지 체크섬 버전: %u\n" -#: pg_resetwal.c:794 +#: pg_resetwal.c:804 +#, c-format +msgid "Default char data signedness: %s\n" +msgstr "기본 문자 자료 부호: %s\n" + +#: pg_resetwal.c:805 +msgid "signed" +msgstr "부호있음" + +#: pg_resetwal.c:805 +msgid "unsigned" +msgstr "부호없음" + +#: pg_resetwal.c:818 #, c-format msgid "" "\n" @@ -555,82 +568,82 @@ msgstr "" "변경될 값:\n" "\n" -#: pg_resetwal.c:798 +#: pg_resetwal.c:822 #, c-format msgid "First log segment after reset: %s\n" msgstr "리셋 뒤 첫 로그 세그먼트: %s\n" -#: pg_resetwal.c:802 +#: pg_resetwal.c:826 #, c-format msgid "NextMultiXactId: %u\n" msgstr "NextMultiXactId: %u\n" -#: pg_resetwal.c:804 +#: pg_resetwal.c:828 #, c-format msgid "OldestMultiXid: %u\n" msgstr "OldestMultiXid: %u\n" -#: pg_resetwal.c:806 +#: pg_resetwal.c:830 #, c-format msgid "OldestMulti's DB: %u\n" msgstr "OldestMultiXid의 DB: %u\n" -#: pg_resetwal.c:812 +#: pg_resetwal.c:836 #, c-format msgid "NextMultiOffset: %u\n" msgstr "NextMultiOffset: %u\n" -#: pg_resetwal.c:818 +#: pg_resetwal.c:842 #, c-format msgid "NextOID: %u\n" msgstr "NextOID: %u\n" -#: pg_resetwal.c:824 +#: pg_resetwal.c:848 #, c-format msgid "NextXID: %u\n" msgstr "NextXID: %u\n" -#: pg_resetwal.c:826 +#: pg_resetwal.c:850 #, c-format msgid "OldestXID: %u\n" msgstr "OldestXID: %u\n" -#: pg_resetwal.c:828 +#: pg_resetwal.c:852 #, c-format msgid "OldestXID's DB: %u\n" msgstr "OldestXID의 DB: %u\n" -#: pg_resetwal.c:834 +#: pg_resetwal.c:858 #, c-format msgid "NextXID epoch: %u\n" msgstr "NextXID epoch: %u\n" -#: pg_resetwal.c:840 +#: pg_resetwal.c:864 #, c-format msgid "oldestCommitTsXid: %u\n" msgstr "제일 오래된 CommitTsXid: %u\n" -#: pg_resetwal.c:845 +#: pg_resetwal.c:869 #, c-format msgid "newestCommitTsXid: %u\n" msgstr "최근 CommitTsXid: %u\n" -#: pg_resetwal.c:957 pg_resetwal.c:998 pg_resetwal.c:1036 pg_resetwal.c:1071 +#: pg_resetwal.c:981 pg_resetwal.c:1022 pg_resetwal.c:1060 pg_resetwal.c:1095 #, 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:1014 pg_resetwal.c:1052 pg_resetwal.c:1087 #, c-format msgid "could not delete file \"%s\": %m" msgstr "\"%s\" 파일을 지울 수 없음: %m" -#: pg_resetwal.c:1159 +#: pg_resetwal.c:1183 #, c-format msgid "fsync error: %m" msgstr "fsync 오류: %m" -#: pg_resetwal.c:1168 +#: pg_resetwal.c:1192 #, c-format msgid "" "%s resets the PostgreSQL write-ahead log.\n" @@ -639,17 +652,17 @@ msgstr "" "%s 프로그램은 PostgreSQL 트랜잭션 로그를 다시 설정합니다.\n" "\n" -#: pg_resetwal.c:1169 +#: pg_resetwal.c:1193 #, c-format msgid "Usage:\n" msgstr "사용법:\n" -#: pg_resetwal.c:1170 +#: pg_resetwal.c:1194 #, c-format msgid " %s [OPTION]... DATADIR\n" msgstr " %s [옵션]... DATADIR\n" -#: pg_resetwal.c:1172 +#: pg_resetwal.c:1196 #, c-format msgid "" "\n" @@ -658,12 +671,12 @@ msgstr "" "\n" "옵션들:\n" -#: pg_resetwal.c:1173 +#: pg_resetwal.c:1197 #, c-format msgid " [-D, --pgdata=]DATADIR data directory\n" msgstr " [-D, --pgdata=]DATADIR 데이터 디렉터리\n" -#: pg_resetwal.c:1174 +#: pg_resetwal.c:1198 #, c-format msgid "" " -f, --force force update to be done even after unclean shutdown " @@ -673,22 +686,22 @@ msgstr "" " -f, --force 비정상적으로 종료되었거나 pg_control 값을 추측해야\n" " 하는 경우에도 강제로 갱신함\n" -#: pg_resetwal.c:1176 +#: pg_resetwal.c:1200 #, 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:1201 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version 버전 정보를 보여주고 마침\n" -#: pg_resetwal.c:1178 +#: pg_resetwal.c:1202 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 표시하고 종료\n" -#: pg_resetwal.c:1180 +#: pg_resetwal.c:1204 #, c-format msgid "" "\n" @@ -697,7 +710,7 @@ msgstr "" "\n" "컨트롤 파일 값을 바꿀 옵션들:\n" -#: pg_resetwal.c:1181 +#: pg_resetwal.c:1205 #, c-format msgid "" " -c, --commit-timestamp-ids=XID,XID\n" @@ -710,12 +723,12 @@ msgstr "" "션\n" " ID 값 (0이면 바꾸지 않음)\n" -#: pg_resetwal.c:1184 +#: pg_resetwal.c:1208 #, c-format msgid " -e, --epoch=XIDEPOCH set next transaction ID epoch\n" msgstr " -e, --epoch=XIDEPOCH 다음 트랙잭션 ID epoch 지정\n" -#: pg_resetwal.c:1185 +#: pg_resetwal.c:1209 #, c-format msgid "" " -l, --next-wal-file=WALFILE set minimum starting location for new " @@ -724,39 +737,48 @@ msgstr "" " -l, --next-wal-file=WALFILE 새 트랜잭션 로그를 위한 WAL 최소 시작 위치" "를 강제로 지정\n" -#: pg_resetwal.c:1186 +#: pg_resetwal.c:1210 #, 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:1211 #, 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:1212 #, 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:1213 #, 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:1214 #, 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:1215 +#, 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 #, c-format msgid " --wal-segsize=SIZE size of WAL segments, in megabytes\n" msgstr " --wal-segsize=SIZE WAL 조각 파일 크기, MB 단위\n" -#: pg_resetwal.c:1193 +#: pg_resetwal.c:1218 #, c-format msgid "" "\n" @@ -765,16 +787,14 @@ msgstr "" "\n" "문제점 보고 주소: <%s>\n" -#: pg_resetwal.c:1194 +#: pg_resetwal.c:1219 #, c-format msgid "%s home page: <%s>\n" msgstr "%s 홈페이지: <%s>\n" -#, c-format -#~ msgid "argument of --wal-segsize must be a number" -#~ msgstr "--wal-segsize 값은 숫자여야 합니다" +#~ msgid " -f, --force force update to be done\n" +#~ msgstr " -f, --force 강제로 갱신함\n" -#, c-format #~ msgid "" #~ "The database server was not shut down cleanly.\n" #~ "Resetting the write-ahead log might cause data to be lost.\n" @@ -784,6 +804,5 @@ msgstr "%s 홈페이지: <%s>\n" #~ "트랜잭션 로그를 다시 설정하는 것은 자료 손실을 야기할 수 있습니다.\n" #~ "그럼에도 불구하고 진행하려면, -f 옵션을 사용해서 강제 설정을 하십시오.\n" -#, c-format -#~ msgid " -f, --force force update to be done\n" -#~ msgstr " -f, --force 강제로 갱신함\n" +#~ msgid "argument of --wal-segsize must be a number" +#~ msgstr "--wal-segsize 값은 숫자여야 합니다" diff --git a/src/bin/pg_resetwal/po/ru.po b/src/bin/pg_resetwal/po/ru.po index 4977535f6fa13..151657affc14a 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. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 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: 2024-09-05 12:19+0300\n" +"PO-Revision-Date: 2025-09-13 17:20+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -414,9 +414,9 @@ msgid "Catalog version number: %u\n" msgstr "Номер версии каталога: %u\n" #: pg_resetwal.c:749 -#, fuzzy, c-format +#, c-format msgid "Database system identifier: %\n" -msgstr "Идентификатор системы баз данных: %llu\n" +msgstr "Идентификатор системы баз данных: %\n" # skip-rule: capital-letter-first #: pg_resetwal.c:751 @@ -578,17 +578,17 @@ msgid "Data page checksum version: %u\n" msgstr "Версия контрольных сумм страниц: %u\n" #: pg_resetwal.c:804 -#, fuzzy, c-format +#, c-format msgid "Default char data signedness: %s\n" -msgstr "Макс. предел выравнивания данных: %u\n" +msgstr "Знаковость char по умолчанию: %s\n" #: pg_resetwal.c:805 msgid "signed" -msgstr "" +msgstr "знаковое" #: pg_resetwal.c:805 msgid "unsigned" -msgstr "" +msgstr "unsigned" #: pg_resetwal.c:818 #, c-format @@ -812,6 +812,8 @@ msgid "" " --char-signedness=OPTION set char signedness to \"signed\" or " "\"unsigned\"\n" msgstr "" +" --char-signedness=ВАРИАНТ установить знаковость char: \"signed\" " +"или \"unsigned\"\n" #: pg_resetwal.c:1216 #, c-format diff --git a/src/bin/pg_rewind/po/es.po b/src/bin/pg_rewind/po/es.po index 794c991edcdc3..c105f14b89b5e 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-02-16 19:52+0000\n" -"PO-Revision-Date: 2024-11-16 14:24+0100\n" +"POT-Creation-Date: 2025-09-20 09:52+0000\n" +"PO-Revision-Date: 2025-09-21 11:39+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -21,22 +21,22 @@ msgstr "" "X-Generator: Poedit 2.4.3\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -46,8 +46,8 @@ msgstr "consejo: " msgid "could not open file \"%s\" for reading: %m" msgstr "no se pudo abrir archivo «%s» para lectura: %m" -#: ../../common/controldata_utils.c:110 file_ops.c:341 local_source.c:104 -#: local_source.c:163 parsexlog.c:371 +#: ../../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 "no se pudo leer el archivo «%s»: %m" @@ -58,7 +58,7 @@ msgid "could not read file \"%s\": read %d of %zu" msgstr "no se pudo leer el archivo «%s»: leídos %d de %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 "no se pudo cerrar el archivo «%s»: %m" @@ -81,9 +81,9 @@ msgstr "" "serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n" "directorio de datos." -#: ../../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 +#: ../../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" @@ -94,8 +94,8 @@ msgstr "no se pudo abrir el archivo «%s»: %m" msgid "could not write file \"%s\": %m" msgstr "no se pudo escribir el archivo «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" @@ -111,34 +111,34 @@ 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:76 +#: ../../common/file_utils.c:75 #, 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" -#: ../../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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -223,23 +223,28 @@ msgstr "%s debe estar en el rango %d..%d" msgid "unrecognized sync method: %s" msgstr "método sync no reconocido: %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 "memoria agotada" -#: ../../fe_utils/recovery_gen.c:143 +#: ../../fe_utils/recovery_gen.c:144 #, c-format msgid "could not write to file \"%s\": %m" msgstr "no se pudo escribir a archivo «%s»: %m" -#: ../../fe_utils/recovery_gen.c:152 +#: ../../fe_utils/recovery_gen.c:153 #, c-format msgid "could not create file \"%s\": %m" msgstr "no se pudo crear archivo «%s»: %m" +#: ../../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" @@ -325,17 +330,17 @@ msgstr "la ruta «%s» del enlace simbólico es demasiado larga" msgid "could not close directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%s»: %m" -#: filemap.c:297 +#: filemap.c:298 #, c-format msgid "data file \"%s\" in source is not a regular file" msgstr "el archivo de datos «%s» en el origen no es un archivo regular" -#: filemap.c:302 filemap.c:335 +#: filemap.c:303 filemap.c:336 #, c-format msgid "duplicate source file \"%s\"" msgstr "archivo origen duplicado «%s»" -#: filemap.c:390 +#: filemap.c:391 #, c-format msgid "unexpected page modification for non-regular file \"%s\"" msgstr "modificación de página inesperada para el archivo no regular «%s»" @@ -355,142 +360,143 @@ msgstr "el archivo «%s» tiene un tipo diferente en el origen y en el destino" msgid "could not decide what to do with file \"%s\"" msgstr "no se pudo decidir qué hacer con el archivo «%s»" -#: libpq_source.c:131 +#: libpq_source.c:130 #, c-format msgid "could not clear \"search_path\": %s" msgstr "no se pudo limpiar «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» debe estar activado en el servidor de origen" -#: libpq_source.c:153 +#: libpq_source.c:152 #, c-format msgid "could not prepare statement to fetch file contents: %s" msgstr "no se pudo preparar sentencia para obtener el contenido del archivo: %s" -#: libpq_source.c:172 +#: libpq_source.c:171 #, c-format msgid "error running query (%s) on source server: %s" msgstr "error ejecutando consulta (%s) en el servidor de origen: %s" -#: libpq_source.c:177 +#: libpq_source.c:176 #, c-format msgid "unexpected result set from query" msgstr "conjunto de resultados inesperados de la consulta" -#: libpq_source.c:199 +#: libpq_source.c:198 #, c-format msgid "error running query (%s) in source server: %s" msgstr "error ejecutando consulta (%s) en el servidor de origen: %s" -#: libpq_source.c:220 +#: libpq_source.c:219 #, c-format msgid "unrecognized result \"%s\" for current WAL insert location" msgstr "resultado «%s» no reconocido para la ubicación de inserción WAL actual" -#: libpq_source.c:271 +#: libpq_source.c:270 #, c-format msgid "could not fetch file list: %s" msgstr "no se pudo obtener el listado de archivos: %s" -#: libpq_source.c:276 +#: libpq_source.c:275 #, c-format msgid "unexpected result set while fetching file list" msgstr "conjunto de resultados inesperado mientras se obtenía el listado de archivos" -#: libpq_source.c:477 +#: libpq_source.c:476 #, c-format msgid "could not send query: %s" msgstr "no se pudo enviar la consulta: %s" -#: libpq_source.c:480 +#: libpq_source.c:479 #, c-format msgid "could not set libpq connection to single row mode" msgstr "no se pudo establecer la coneción libpq a modo «single row»" -#: libpq_source.c:510 +#: libpq_source.c:509 #, c-format msgid "unexpected result while fetching remote files: %s" msgstr "resultados inesperados mientras se obtenían archivos remotos: %s" -#: libpq_source.c:515 +#: libpq_source.c:514 #, c-format msgid "received more data chunks than requested" msgstr "se recibieron más trozos de datos que los solicitados" -#: libpq_source.c:519 +#: libpq_source.c:518 #, c-format msgid "unexpected result set size while fetching remote files" msgstr "tamaño del conjunto de resultados inesperado mientras se obtenían archivos remotos" -#: 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 "tipos de dato inesperados en el conjunto de resultados mientras se obtenían archivos remotos: %u %u %u" -#: libpq_source.c:533 +#: libpq_source.c:532 #, c-format msgid "unexpected result format while fetching remote files" msgstr "formato de resultados inesperado mientras se obtenían archivos remotos" -#: libpq_source.c:539 +#: libpq_source.c:538 #, c-format msgid "unexpected null values in result while fetching remote files" msgstr "valores nulos inesperados en el resultado mientras se obtenían archivos remotos" -#: libpq_source.c:543 +#: libpq_source.c:542 #, c-format msgid "unexpected result length while fetching remote files" msgstr "largo del resultado inesperado mientras se obtenían los archivos remotos" -#: libpq_source.c:576 +#: libpq_source.c:575 #, c-format msgid "received data for file \"%s\", when requested for \"%s\"" msgstr "se recibieron datos para el archivo «%s», cuando se solicitó para «%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 "se recibieron datos en la posición %lld del archivo «%s», cuando se solicitó para la posición %lld" +#| msgid "received data at offset %lld of file \"%s\", when requested for offset %lld" +msgid "received data at offset % of file \"%s\", when requested for offset %lld" +msgstr "se recibieron datos en la posición % del archivo «%s», cuando se solicitó para la posición %lld" -#: libpq_source.c:592 +#: libpq_source.c:591 #, c-format msgid "received more than requested for file \"%s\"" msgstr "se recibió más de lo solicitado para el archivo «%s»" -#: libpq_source.c:605 +#: libpq_source.c:604 #, c-format msgid "unexpected number of data chunks received" msgstr "se recibió un número inesperado de trozos de datos" -#: libpq_source.c:648 +#: libpq_source.c:647 #, c-format msgid "could not fetch remote file \"%s\": %s" msgstr "no se pudo obtener el archivo remoto «%s»: %s" -#: libpq_source.c:653 +#: libpq_source.c:652 #, c-format msgid "unexpected result set while fetching remote file \"%s\"" msgstr "conjunto de resultados inesperado mientras se obtenía el archivo remoto «%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 "no se pudo abrir el archivo de origen «%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 "el tamaño del archivo de origen «%s» cambió concurrentemente: se esperaban %d bytes, se copiaron %d" -#: local_source.c:146 +#: local_source.c:144 #, c-format msgid "could not seek in source file: %m" msgstr "no se pudo posicionar en archivo de origen: %m" -#: local_source.c:165 +#: local_source.c:163 #, c-format msgid "unexpected EOF while reading file \"%s\"" msgstr "EOF inesperado mientras se leía el archivo «%s»" @@ -706,11 +712,6 @@ msgstr "Debe ejecutar %s con el superusuario de PostgreSQL." msgid "could not read permissions of directory \"%s\": %m" msgstr "no se pudo obtener los permisos del directorio «%s»: %m" -#: pg_rewind.c:311 -#, c-format -msgid "%s" -msgstr "%s" - #: pg_rewind.c:314 #, c-format msgid "connected to server" @@ -731,154 +732,155 @@ msgstr "servidores divergieron en la posición de WAL %X/%X en el timeline %u" msgid "no rewind required" msgstr "no se requiere rebobinar" -#: pg_rewind.c:463 +#: pg_rewind.c:464 #, c-format msgid "rewinding from last common checkpoint at %X/%X on timeline %u" msgstr "rebobinando desde el último checkpoint común en %X/%X en el timeline %u" -#: pg_rewind.c:473 +#: pg_rewind.c:474 #, c-format msgid "reading source file list" msgstr "leyendo la lista de archivos de origen" -#: pg_rewind.c:477 +#: pg_rewind.c:478 #, c-format msgid "reading target file list" msgstr "leyendo la lista de archivos de destino" -#: pg_rewind.c:486 +#: pg_rewind.c:487 #, c-format msgid "reading WAL in target" msgstr "leyendo WAL en destino" -#: pg_rewind.c:507 +#: pg_rewind.c:508 #, c-format msgid "need to copy %lu MB (total source directory size is %lu MB)" msgstr "se necesitan copiar %lu MB (tamaño total de directorio de origen es %lu MB)" -#: pg_rewind.c:525 +#: pg_rewind.c:526 #, c-format msgid "syncing target data directory" msgstr "sincronizando directorio de datos de destino" -#: pg_rewind.c:541 +#: pg_rewind.c:543 #, c-format msgid "Done!" msgstr "¡Listo!" -#: pg_rewind.c:621 +#: pg_rewind.c:623 #, c-format msgid "no action decided for file \"%s\"" msgstr "no se decidió una acción para el archivo «%s»" -#: pg_rewind.c:653 +#: pg_rewind.c:655 #, c-format msgid "source system was modified while pg_rewind was running" msgstr "el sistema origen fue modificado mientras pg_rewind estaba en ejecución" -#: pg_rewind.c:657 +#: pg_rewind.c:659 #, c-format msgid "creating backup label and updating control file" msgstr "creando etiqueta de respaldo y actualizando archivo de control" -#: pg_rewind.c:707 +#: pg_rewind.c:709 #, c-format msgid "source system was in unexpected state at end of rewind" msgstr "el sistema origen estaba en un estado inesperado al final del rebobinado" -#: pg_rewind.c:739 +#: pg_rewind.c:741 #, c-format msgid "source and target clusters are from different systems" msgstr "clusters de origen y destino son de sistemas diferentes" -#: pg_rewind.c:747 +#: pg_rewind.c:749 #, c-format msgid "clusters are not compatible with this version of pg_rewind" msgstr "los clusters no son compatibles con esta versión de pg_rewind" -#: pg_rewind.c:757 +#: pg_rewind.c:759 #, c-format msgid "target server needs to use either data checksums or \"wal_log_hints = on\"" msgstr "el servidor de destino necesita tener sumas de verificación de datos o «wal_log_hints» activados" -#: pg_rewind.c:768 +#: pg_rewind.c:770 #, c-format msgid "target server must be shut down cleanly" msgstr "el directorio de destino debe estar apagado limpiamente" -#: pg_rewind.c:778 +#: pg_rewind.c:780 #, c-format msgid "source data directory must be shut down cleanly" msgstr "el directorio de origen debe estar apagado limpiamente" -#: pg_rewind.c:825 +#: pg_rewind.c:827 #, c-format msgid "%*s/%s kB (%d%%) copied" msgstr "%*s/%s kB (%d%%) copiados" -#: pg_rewind.c:951 +#: pg_rewind.c:953 #, c-format msgid "could not find common ancestor of the source and target cluster's timelines" msgstr "no se pudo encontrar un ancestro común en el timeline de los clusters de origen y destino" -#: pg_rewind.c:992 +#: pg_rewind.c:994 #, c-format msgid "backup label buffer too small" msgstr "el búfer del backup label es demasiado pequeño" -#: pg_rewind.c:1015 +#: pg_rewind.c:1017 #, c-format msgid "unexpected control file CRC" msgstr "CRC de archivo de control inesperado" -#: pg_rewind.c:1027 +#: pg_rewind.c:1029 #, c-format msgid "unexpected control file size %d, expected %d" msgstr "tamaño del archivo de control %d inesperado, se esperaba %d" -#: pg_rewind.c:1037 +#: 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)" 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" -#: pg_rewind.c:1041 +#: pg_rewind.c:1043 #, 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." -#: pg_rewind.c:1078 pg_rewind.c:1146 +#: 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 "el programa «%s» es requerido por %s, pero no se encontró en el mismo directorio que «%s»" -#: pg_rewind.c:1081 pg_rewind.c:1149 +#: 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 "el programa «%s» fue encontrado por «%s» pero no es de la misma versión que %s" -#: pg_rewind.c:1110 +#: pg_rewind.c:1112 #, c-format -msgid "could not read restore_command from target cluster" -msgstr "no se pudo leer restore_command en el clúster de destino" +#| msgid "could not read restore_command from target cluster" +msgid "could not read \"restore_command\" from target cluster" +msgstr "no se pudo leer «restore_command» en el clúster de destino" -#: pg_rewind.c:1115 +#: pg_rewind.c:1117 #, c-format msgid "\"restore_command\" is not set in the target cluster" msgstr "«restore_command» no está definido en el clúster de destino" -#: pg_rewind.c:1153 +#: pg_rewind.c:1155 #, c-format msgid "executing \"%s\" for target server to complete crash recovery" msgstr "ejecutando «%s» en el servidor de destino para completar la recuperación de caídas" -#: pg_rewind.c:1191 +#: pg_rewind.c:1193 #, c-format msgid "postgres single-user mode in target cluster failed" msgstr "el modo «single-user» en el servidor de destino falló" -#: pg_rewind.c:1192 +#: pg_rewind.c:1194 #, c-format msgid "Command was: %s" msgstr "La orden era: % s" @@ -918,157 +920,158 @@ msgstr "datos no válidos en archivo de historia" msgid "Timeline IDs must be less than child timeline's ID." msgstr "IDs de timeline deben ser menores que el ID de timeline del hijo." -#: xlogreader.c:619 +#: xlogreader.c:620 #, c-format msgid "invalid record offset at %X/%X: expected at least %u, got %u" msgstr "desplazamiento de registro no válido en %X/%X: se esperaba al menos %u, se obtuvo %u" -#: xlogreader.c:628 +#: xlogreader.c:629 #, c-format msgid "contrecord is requested by %X/%X" msgstr "contrecord solicitado por %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 "largo de registro no válido en %X/%X: se esperaba al menos %u, se obtuvo %u" -#: xlogreader.c:758 +#: xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" msgstr "no hay bandera de contrecord en %X/%X" -#: xlogreader.c:771 +#: xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "largo de contrecord %u no válido (se esperaba %lld) en %X/%X" -#: xlogreader.c:1142 +#: xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "ID de gestor de recursos %u no válido en %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 "registro con prev-link %X/%X incorrecto en %X/%X" -#: xlogreader.c:1209 +#: xlogreader.c:1220 #, c-format msgid "incorrect resource manager data checksum in record at %X/%X" msgstr "suma de verificación de los datos del gestor de recursos incorrecta en el registro en %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 "número mágico %04X no válido en segmento WAL %s, LSN %X/%X, posición %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 "info bits %04X no válidos en segment WAL %s, LSN %X/%X, posición %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 "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" +#| msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" +msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" +msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %, identificador en pg_control es %" -#: xlogreader.c:1282 +#: xlogreader.c:1293 #, c-format msgid "WAL file is from different database system: incorrect segment size in page header" msgstr "archivo WAL es de un sistema de bases de datos distinto: tamaño de segmento incorrecto en cabecera de paǵina" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "archivo WAL es de un sistema de bases de datos distinto: XLOG_BLCKSZ incorrecto en cabecera de paǵina" -#: 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 inesperado en segmento WAL %s, LSN %X/%X, posición %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 de timeline %u fuera de secuencia (después de %u) en segmento WAL %s, LSN %X/%X, posición %u" -#: xlogreader.c:1749 +#: xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "block_id %u fuera de orden en %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 está definido, pero no hay datos en %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 no está definido, pero el largo de los datos es %u en %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 está definido, pero posición del agujero es %u largo %u largo de imagen %u en %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 no está definido, pero posición del agujero es %u largo %u en %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 definido, pero largo de imagen de bloque es %u en %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 "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_COMPRESSED están definidos, pero el largo de imagen de bloque es %u en %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 está definido, pero no hay «rel» anterior en %X/%X " -#: xlogreader.c:1889 +#: xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "block_id %u no válido en %X/%X" -#: xlogreader.c:1956 +#: xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "registro con largo no válido en %X/%X" -#: xlogreader.c:1982 +#: xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "no se pudo localizar un bloque de respaldo con ID %d en el registro WAL" -#: xlogreader.c:2066 +#: xlogreader.c:2086 #, c-format msgid "could not restore image at %X/%X with invalid block %d specified" msgstr "no se pudo restaurar la imagen en %X/%X con bloque especificado %d no válido" -#: xlogreader.c:2073 +#: xlogreader.c:2093 #, c-format msgid "could not restore image at %X/%X with invalid state, block %d" msgstr "no se pudo restaurar la imagen en %X/%X con estado no válido, bloque %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 "no se pudo restaurar la imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %d" -#: xlogreader.c:2126 +#: xlogreader.c:2146 #, c-format msgid "could not restore image at %X/%X compressed with unknown method, block %d" msgstr "no se pudo restaurar la imagen en %X/%X comprimida con un método desconocido, bloque %d" -#: xlogreader.c:2134 +#: xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %d" diff --git a/src/bin/pg_rewind/po/ko.po b/src/bin/pg_rewind/po/ko.po index 459bbd714014e..0525ea26d4849 100644 --- a/src/bin/pg_rewind/po/ko.po +++ b/src/bin/pg_rewind/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_rewind (PostgreSQL) 17\n" +"Project-Id-Version: pg_rewind (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:53+0000\n" -"PO-Revision-Date: 2025-01-16 16:58+0900\n" +"POT-Creation-Date: 2025-09-11 21:53+0000\n" +"PO-Revision-Date: 2025-09-09 16:45+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -17,22 +17,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 file_ops.c:341 local_source.c:104 -#: local_source.c:163 parsexlog.c:371 +#: ../../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" @@ -54,7 +54,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 -#: 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" @@ -78,9 +78,9 @@ msgstr "" "이럴 경우, 출력 결과가 바르지 않을 수 있고,\n" "설치된 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 +#: ../../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" @@ -91,8 +91,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 "\"%s\" 파일을 fsync 할 수 없음: %m" @@ -108,34 +108,34 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 복제할 수 없음(내부 오류)\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" @@ -220,29 +220,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" @@ -322,17 +327,17 @@ msgstr "\"%s\" 심볼릭 링크의 대상이 너무 긺" msgid "could not close directory \"%s\": %m" msgstr "\"%s\" 디렉터리를 닫을 수 없음: %m" -#: filemap.c:297 +#: filemap.c:298 #, c-format msgid "data file \"%s\" in source is not a regular file" msgstr "\"%s\" 자료 파일은 일반 파일이 아님" -#: filemap.c:302 filemap.c:335 +#: filemap.c:303 filemap.c:336 #, c-format msgid "duplicate source file \"%s\"" msgstr "\"%s\" 소스 파일을 두 번 지정했습니다" -#: filemap.c:390 +#: filemap.c:391 #, c-format msgid "unexpected page modification for non-regular file \"%s\"" msgstr "\"%s\" 비일반 파일의 페이지 변경 정보가 잘못됨" @@ -352,146 +357,147 @@ msgstr "\"%s\" 파일 형식이 소스와 타켓이 서로 다름" 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 "현재 WAL 삽입 위치를 위한 결과가 잘못됨 : \"%s\"" -#: 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 "원격 파일을 가져오는 도중 결과안에 null 값이 잘못됨" -#: 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" +"received data at offset % of file \"%s\", when requested for offset " +"%lld" msgstr "" -"%lld 오프셋(해당파일: \"%s\")에 데이터를 받았음, %lld 오프셋 요청 처리용" +"% 오프셋(해당파일: \"%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 "원본 파일에서 seek 작업을 할 수 없음: %m" -#: local_source.c:165 +#: local_source.c:163 #, c-format msgid "unexpected EOF while reading file \"%s\"" msgstr "\"%s\" 파일을 읽는 중 예상치 못한 EOF" @@ -722,11 +728,6 @@ msgstr "PostgreSQL superuser로 %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" @@ -747,72 +748,72 @@ msgstr "서버 분기 WAL 위치: %X/%X, 타임라인 %u" msgid "no rewind required" msgstr "되감을 필요 없음" -#: pg_rewind.c:463 +#: 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:473 +#: pg_rewind.c:474 #, c-format msgid "reading source file list" msgstr "원본 파일 목록 읽는 중" -#: pg_rewind.c:477 +#: pg_rewind.c:478 #, c-format msgid "reading target file list" msgstr "대상 파일 목록 읽는 중" -#: pg_rewind.c:486 +#: pg_rewind.c:487 #, c-format msgid "reading WAL in target" msgstr "대상 서버에서 WAL 읽는 중" -#: pg_rewind.c:507 +#: pg_rewind.c:508 #, c-format msgid "need to copy %lu MB (total source directory size is %lu MB)" msgstr "복사를 위해서 %lu MB 필요함 (원본 디렉토리 전체 크기는 %lu MB)" -#: pg_rewind.c:525 +#: pg_rewind.c:526 #, c-format msgid "syncing target data directory" msgstr "대상 데이터 디렉터리 동기화 중" -#: pg_rewind.c:541 +#: pg_rewind.c:543 #, c-format msgid "Done!" msgstr "완료!" -#: pg_rewind.c:621 +#: pg_rewind.c:623 #, c-format msgid "no action decided for file \"%s\"" msgstr "%s 외부 테이블 접근 권한 없음" -#: pg_rewind.c:653 +#: pg_rewind.c:655 #, c-format msgid "source system was modified while pg_rewind was running" msgstr "pg_rewind 실행 되고 있는 중에 원본 시스템이 변경 되었음" -#: pg_rewind.c:657 +#: pg_rewind.c:659 #, c-format msgid "creating backup label and updating control file" msgstr "백업 라벨을 만들고, 컨트롤 파일을 갱신 중" -#: pg_rewind.c:707 +#: pg_rewind.c:709 #, c-format msgid "source system was in unexpected state at end of rewind" msgstr "rewind 끝에 원본 시스템의 상태가 예상값과 다름" -#: pg_rewind.c:739 +#: pg_rewind.c:741 #, c-format msgid "source and target clusters are from different systems" msgstr "원본과 대상 클러스터가 서로 다른 시스템임" -#: pg_rewind.c:747 +#: pg_rewind.c:749 #, c-format msgid "clusters are not compatible with this version of pg_rewind" msgstr "해당 클러스터는 이 pg_rewind 버전으로 작업할 수 없음" -#: pg_rewind.c:757 +#: pg_rewind.c:759 #, c-format msgid "" "target server needs to use either data checksums or \"wal_log_hints = on\"" @@ -820,54 +821,54 @@ msgstr "" "대상 서버의 데이터 클러스터가 데이터 체크섬 기능을 켰거나, \"wal_log_hints " "= on\" 설정이 되어야 함" -#: pg_rewind.c:768 +#: pg_rewind.c:770 #, c-format msgid "target server must be shut down cleanly" msgstr "대상 서버는 정상 종료되어야 함" -#: pg_rewind.c:778 +#: pg_rewind.c:780 #, c-format msgid "source data directory must be shut down cleanly" msgstr "원본 데이터 디렉토리는 정상적으로 종료되어야 함" -#: pg_rewind.c:825 +#: pg_rewind.c:827 #, c-format msgid "%*s/%s kB (%d%%) copied" msgstr "%*s/%s kB (%d%%) 복사됨" -#: pg_rewind.c:951 +#: pg_rewind.c:953 #, c-format msgid "" "could not find common ancestor of the source and target cluster's timelines" msgstr "원본과 대상 서버의 공통된 상위 타임라인을 찾을 수 없음" -#: pg_rewind.c:992 +#: pg_rewind.c:994 #, c-format msgid "backup label buffer too small" msgstr "백업 라벨 버퍼가 너무 작음" -#: pg_rewind.c:1015 +#: pg_rewind.c:1017 #, c-format msgid "unexpected control file CRC" msgstr "컨트롤 파일 CRC 오류" -#: pg_rewind.c:1027 +#: pg_rewind.c:1029 #, c-format msgid "unexpected control file size %d, expected %d" msgstr "컨트롤 파일의 크기가 %d 로 비정상, 정상값 %d" -#: pg_rewind.c:1037 +#: 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)" msgstr[0] "컨트롤 파일 안에 잘못된 WAL 조각 크기 (%d 바이트)" -#: pg_rewind.c:1041 +#: 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 조각 파일은 1MB부터 1GB 사이 2^n 크기여야 함" -#: pg_rewind.c:1078 pg_rewind.c:1146 +#: 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 " @@ -876,34 +877,34 @@ msgstr "" "\"%s\" 프로그램이 %s 작업에서 필요합니다. 그런데, 이 파일이 \"%s\" 파일이 있" "는 디렉터리안에 없습니다." -#: pg_rewind.c:1081 pg_rewind.c:1149 +#: 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:1110 +#: pg_rewind.c:1112 #, c-format -msgid "could not read restore_command from target cluster" -msgstr "대상 클러스터에 restore_command 설정을 읽을 수 없음" +msgid "could not read \"restore_command\" from target cluster" +msgstr "대상 클러스터에 \"restore_command\" 설정을 읽을 수 없음" -#: pg_rewind.c:1115 +#: pg_rewind.c:1117 #, c-format msgid "\"restore_command\" is not set in the target cluster" msgstr "대상 클러스터에 \"restore_command\" 설정이 없음" -#: pg_rewind.c:1153 +#: pg_rewind.c:1155 #, c-format msgid "executing \"%s\" for target server to complete crash recovery" msgstr "대상 서버에서 비정상 종료 후 복구 작업을 위해 \"%s\" 실행 중" -#: pg_rewind.c:1191 +#: pg_rewind.c:1193 #, c-format msgid "postgres single-user mode in target cluster failed" msgstr "대상 클러스터를 단일 사용자 모드로 postgres 실행 실패" -#: pg_rewind.c:1192 +#: pg_rewind.c:1194 #, c-format msgid "Command was: %s" msgstr "사용된 명령: %s" @@ -943,66 +944,66 @@ msgstr "내역 파일에 잘못된 자료가 있음" msgid "Timeline IDs must be less than child timeline's ID." msgstr "타임라인 ID는 하위 타임라인 ID보다 작아야 합니다." -#: 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에서 contrecord를 필요로 함" -#: 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 "%X/%X 위치에 contrecord 플래그가 없음" -#: 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" +"identifier is %, pg_control database system identifier is %" msgstr "" -"WAL 파일이 다른 시스템의 것입니다. WAL 파일의 시스템 식별자는 %llu, " -"pg_control 의 식별자는 %llu" +"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 " @@ -1011,7 +1012,7 @@ msgstr "" "WAL 파일이 다른 데이터베이스 시스템의 것입니다: 페이지 헤더에 지정된 값이 잘" "못된 조각 크기임" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "" "WAL file is from different database system: incorrect XLOG_BLCKSZ in page " @@ -1020,12 +1021,12 @@ 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 "잘못된 페이지 주소 %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, " @@ -1034,22 +1035,22 @@ msgstr "" "타임라인 범위 벗어남 %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 block_id는 범위를 벗어남, 위치 %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 " @@ -1058,19 +1059,19 @@ 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 " @@ -1079,37 +1080,37 @@ 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 "잘못된 block_id %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 "WAL 레코드에 %d ID 백업 블록이 없음" -#: 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, " @@ -1118,25 +1119,22 @@ 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" -#, c-format #~ msgid "missing contrecord at %X/%X" #~ msgstr "%X/%X 위치에 contrecord 없음" -#, c-format #~ msgid "out of memory while trying to decode a record of length %u" #~ msgstr "%u 길이의 레코드를 디코딩 하는 중 메모리 부족" -#, c-format #~ msgid "record length %u at %X/%X too long" #~ msgstr "너무 긴 길이(%u)의 레코드가 %X/%X에 있음" diff --git a/src/bin/pg_rewind/po/ru.po b/src/bin/pg_rewind/po/ru.po index 5cc933105bb63..d8591efa8a034 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. -# Alexander Lakhin , 2015-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2015-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 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: 2024-09-07 13:07+0300\n" +"PO-Revision-Date: 2025-09-13 18:56+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -459,13 +459,13 @@ msgid "received data for file \"%s\", when requested for \"%s\"" msgstr "получены данные для файла \"%s\", а запрашивались данные для \"%s\"" #: libpq_source.c:579 -#, fuzzy, c-format +#, c-format msgid "" "received data at offset % of file \"%s\", when requested for offset " "%lld" msgstr "" -"получены данные по смещению %lld в файле \"%s\", а запрашивались по смещению " -"%lld" +"получены данные по смещению % в файле \"%s\", а запрашивались по " +"смещению %lld" #: libpq_source.c:591 #, c-format @@ -878,7 +878,7 @@ msgstr "неверная контрольная сумма управляюще #: pg_rewind.c:1029 #, c-format msgid "unexpected control file size %d, expected %d" -msgstr "неверный размер управляющего файла (%d), ожидалось: %d" +msgstr "неверный размер управляющего файла (%d), ожидался: %d" #: pg_rewind.c:1039 #, c-format @@ -909,7 +909,7 @@ msgstr "" "версии %s" #: pg_rewind.c:1112 -#, fuzzy, c-format +#, c-format msgid "could not read \"restore_command\" from target cluster" msgstr "не удалось прочитать параметр \"restore_command\" в целевом кластере" @@ -1029,13 +1029,13 @@ msgstr "" "неверные информационные биты %04X в сегменте WAL %s, LSN %X/%X, смещение %u" #: xlogreader.c:1285 -#, fuzzy, c-format +#, c-format msgid "" "WAL file is from different database system: WAL file database system " "identifier is %, pg_control database system identifier is %" msgstr "" "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД " -"%llu, а идентификатор системы pg_control: %llu" +"%, а идентификатор системы pg_control: %" #: xlogreader.c:1293 #, c-format diff --git a/src/bin/pg_test_fsync/po/es.po b/src/bin/pg_test_fsync/po/es.po index dff84abf1237b..b805b1254f155 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-02-16 19:53+0000\n" +"POT-Creation-Date: 2025-09-20 09:53+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -20,22 +20,22 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Poedit 2.4.3\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -52,87 +52,87 @@ msgid "cannot duplicate null pointer (internal error)\n" msgstr "no se puede duplicar un puntero nulo (error interno)\n" #. translator: maintain alignment with NA_FORMAT -#: pg_test_fsync.c:38 +#: pg_test_fsync.c:37 #, c-format msgid "%13.3f ops/sec %6.0f usecs/op\n" msgstr "%13.3f ops/seg %6.0f usegs/op\n" -#: pg_test_fsync.c:56 +#: pg_test_fsync.c:55 #, c-format msgid "could not create thread for alarm" msgstr "no se pudo crear el thread para la alarma" -#: pg_test_fsync.c:101 +#: pg_test_fsync.c:100 #, c-format msgid "%s: %m" msgstr "%s: %m" -#: pg_test_fsync.c:165 +#: pg_test_fsync.c:163 #, c-format msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" msgstr "Empleo: %s [-f ARCHIVO] [-s SEG-POR-PRUEBA]\n" -#: pg_test_fsync.c:191 +#: pg_test_fsync.c:189 #, c-format msgid "invalid argument for option %s" msgstr "argumento no válido para la opción %s" -#: pg_test_fsync.c:192 pg_test_fsync.c:204 pg_test_fsync.c:213 +#: pg_test_fsync.c:190 pg_test_fsync.c:202 pg_test_fsync.c:211 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_test_fsync.c:198 +#: pg_test_fsync.c:196 #, c-format msgid "%s must be in range %u..%u" msgstr "%s debe estar en el rango %u..%u" -#: pg_test_fsync.c:211 +#: pg_test_fsync.c:209 #, 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_test_fsync.c:217 +#: pg_test_fsync.c:215 #, c-format msgid "%u second per test\n" msgid_plural "%u seconds per test\n" msgstr[0] "%u segundo por prueba\n" msgstr[1] "%u segundos por prueba\n" -#: pg_test_fsync.c:222 +#: pg_test_fsync.c:220 #, c-format msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" msgstr "O_DIRECT tiene soporte en esta plataforma para open_datasync y open_sync.\n" -#: pg_test_fsync.c:224 +#: pg_test_fsync.c:222 #, c-format msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" msgstr "F_NOCACHE tiene soporte en esta plataforma para open_datasync y open_sync.\n" -#: pg_test_fsync.c:226 +#: pg_test_fsync.c:224 #, c-format msgid "Direct I/O is not supported on this platform.\n" msgstr "Direct I/O no está soportado en esta plataforma.\n" -#: pg_test_fsync.c:251 pg_test_fsync.c:341 pg_test_fsync.c:363 -#: pg_test_fsync.c:387 pg_test_fsync.c:531 pg_test_fsync.c:543 -#: pg_test_fsync.c:559 pg_test_fsync.c:565 pg_test_fsync.c:587 +#: pg_test_fsync.c:249 pg_test_fsync.c:339 pg_test_fsync.c:361 +#: pg_test_fsync.c:385 pg_test_fsync.c:529 pg_test_fsync.c:541 +#: pg_test_fsync.c:557 pg_test_fsync.c:563 pg_test_fsync.c:585 msgid "could not open output file" msgstr "no se pudo abrir el archivo de salida" -#: pg_test_fsync.c:255 pg_test_fsync.c:325 pg_test_fsync.c:350 -#: pg_test_fsync.c:372 pg_test_fsync.c:396 pg_test_fsync.c:435 -#: pg_test_fsync.c:494 pg_test_fsync.c:533 pg_test_fsync.c:561 -#: pg_test_fsync.c:592 +#: pg_test_fsync.c:253 pg_test_fsync.c:323 pg_test_fsync.c:348 +#: pg_test_fsync.c:370 pg_test_fsync.c:394 pg_test_fsync.c:433 +#: pg_test_fsync.c:492 pg_test_fsync.c:531 pg_test_fsync.c:559 +#: pg_test_fsync.c:590 msgid "write failed" msgstr "escritura falló" -#: pg_test_fsync.c:259 pg_test_fsync.c:374 pg_test_fsync.c:398 -#: pg_test_fsync.c:535 pg_test_fsync.c:567 +#: pg_test_fsync.c:257 pg_test_fsync.c:372 pg_test_fsync.c:396 +#: pg_test_fsync.c:533 pg_test_fsync.c:565 msgid "fsync failed" msgstr "fsync falló" -#: pg_test_fsync.c:298 +#: pg_test_fsync.c:296 #, c-format msgid "" "\n" @@ -141,7 +141,7 @@ msgstr "" "\n" "Comparar métodos de sincronización de archivos usando una escritura de %dkB:\n" -#: pg_test_fsync.c:300 +#: pg_test_fsync.c:298 #, c-format msgid "" "\n" @@ -150,21 +150,21 @@ msgstr "" "\n" "Comparar métodos de sincronización de archivos usando dos escrituras de %dkB:\n" -#: pg_test_fsync.c:301 +#: pg_test_fsync.c:299 #, c-format msgid "(in \"wal_sync_method\" preference order, except fdatasync is Linux's default)\n" msgstr "(en orden de preferencia de «wal_sync_method», excepto en Linux donde fdatasync es el predeterminado)\n" -#: pg_test_fsync.c:312 pg_test_fsync.c:415 pg_test_fsync.c:482 +#: pg_test_fsync.c:310 pg_test_fsync.c:413 pg_test_fsync.c:480 msgid "n/a*" msgstr "n/a*" -#: pg_test_fsync.c:331 pg_test_fsync.c:403 pg_test_fsync.c:441 -#: pg_test_fsync.c:500 +#: pg_test_fsync.c:329 pg_test_fsync.c:401 pg_test_fsync.c:439 +#: pg_test_fsync.c:498 msgid "n/a" msgstr "n/a" -#: pg_test_fsync.c:446 +#: pg_test_fsync.c:444 #, c-format msgid "" "* This file system and its mount options do not support direct\n" @@ -173,7 +173,7 @@ msgstr "" "* Este sistema de archivos con sus opciones de montaje no soportan\n" " Direct I/O, e.g. ext4 en modo journal.\n" -#: pg_test_fsync.c:454 +#: pg_test_fsync.c:452 #, c-format msgid "" "\n" @@ -182,7 +182,7 @@ msgstr "" "\n" "Comparar open_sync con diferentes tamaños de escritura:\n" -#: pg_test_fsync.c:455 +#: pg_test_fsync.c:453 #, c-format msgid "" "(This is designed to compare the cost of writing 16kB in different write\n" @@ -191,27 +191,27 @@ msgstr "" "(Esto está diseñado para comparar el costo de escribir 16kB en diferentes\n" "tamaños de escrituras open_sync.)\n" -#: pg_test_fsync.c:458 +#: pg_test_fsync.c:456 msgid " 1 * 16kB open_sync write" msgstr " 1 * 16kB escritura open_sync" -#: pg_test_fsync.c:459 +#: pg_test_fsync.c:457 msgid " 2 * 8kB open_sync writes" msgstr " 2 * 8kB escrituras open_sync" -#: pg_test_fsync.c:460 +#: pg_test_fsync.c:458 msgid " 4 * 4kB open_sync writes" msgstr " 4 * 4kB escrituras open_sync" -#: pg_test_fsync.c:461 +#: pg_test_fsync.c:459 msgid " 8 * 2kB open_sync writes" msgstr " 8 * 2kB escrituras open_sync" -#: pg_test_fsync.c:462 +#: pg_test_fsync.c:460 msgid "16 * 1kB open_sync writes" msgstr "16 * 1kB escrituras open_sync" -#: pg_test_fsync.c:516 +#: pg_test_fsync.c:514 #, c-format msgid "" "\n" @@ -220,7 +220,7 @@ msgstr "" "\n" "Probar si se respeta fsync en un descriptor de archivo que no es de escritura:\n" -#: pg_test_fsync.c:517 +#: pg_test_fsync.c:515 #, c-format msgid "" "(If the times are similar, fsync() can sync data written on a different\n" @@ -229,7 +229,7 @@ msgstr "" "(Si los tiempos son similares, fsync() puede sincronizar datos escritos\n" "en un descriptor diferente.)\n" -#: pg_test_fsync.c:582 +#: pg_test_fsync.c:580 #, c-format msgid "" "\n" diff --git a/src/bin/pg_test_timing/po/es.po b/src/bin/pg_test_timing/po/es.po index c8de0f2c870c4..f71f031edd8a1 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-02-16 19:50+0000\n" +"POT-Creation-Date: 2025-09-20 09:50+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_upgrade/po/es.po b/src/bin/pg_upgrade/po/es.po index ea5213cd854ea..6dbe7383eaa23 100644 --- a/src/bin/pg_upgrade/po/es.po +++ b/src/bin/pg_upgrade/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:49+0000\n" -"PO-Revision-Date: 2024-11-16 09:10+0100\n" +"POT-Creation-Date: 2025-09-20 09:49+0000\n" +"PO-Revision-Date: 2025-09-21 12:43+0200\n" "Last-Translator: Álvaro Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -60,11 +60,11 @@ msgstr "el argumento de la orden de shell contiene un salto de línea o retorno msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "el nombre de base de datos contiene un salto de línea o retorno de carro: «%s»\n" -#: check.c:111 +#: check.c:112 msgid "Checking for system-defined composite types in user tables" msgstr "Verificando tipos compuestos definidos por el sistema en tablas de usuario" -#: 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" @@ -76,11 +76,11 @@ msgstr "" "versiones de PostgreSQL, por lo que este clúster no puede ser actualizado.\n" "Puede eliminar las columnas problemáticas y reiniciar la actualización.\n" -#: check.c:132 +#: check.c:133 msgid "Checking for incompatible \"line\" data type" msgstr "Verificando datos de usuario de tipo «line» incompatible" -#: 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" @@ -94,11 +94,11 @@ msgstr "" "actualmente ser actualizado. Puede eliminar las columnas problemáticas y\n" "reiniciar la actualización.\n" -#: check.c:154 +#: check.c:155 msgid "Checking for reg* data types in user tables" msgstr "Verificando tipos de datos reg* en datos de usuario" -#: 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" @@ -110,11 +110,11 @@ msgstr "" "por lo que este clúster no puede ser actualizado.\n" "Puede eliminar las columnas problemáticas y reiniciar la actualización.\n" -#: check.c:193 +#: check.c:194 msgid "Checking for incompatible \"aclitem\" data type" msgstr "Verificando datos de usuario de tipo «aclitem» incompatible" -#: 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" @@ -126,11 +126,11 @@ msgstr "" "por lo que este clúster no puede ser actualizado.\n" "Puede eliminar las columnas problemáticas y reiniciar la actualización.\n" -#: check.c:217 +#: check.c:218 msgid "Checking for invalid \"unknown\" user columns" msgstr "Verificando columnas de usuario del tipo no válido «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" @@ -142,11 +142,11 @@ msgstr "" "por lo que este clúster no puede ser actualizado. Puede\n" "eliminar las columnas problemáticas y reiniciar la actualización.\n" -#: check.c:239 +#: check.c:240 msgid "Checking for invalid \"sql_identifier\" user columns" msgstr "Verificando columnas de usuario del tipo «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" @@ -158,11 +158,11 @@ msgstr "" "este clúster no puede ser actualizado.\n" "Puede eliminar las columnas problemáticas y reiniciar la actualización.\n" -#: check.c:255 +#: check.c:256 msgid "Checking for incompatible \"jsonb\" data type in user tables" msgstr "Verificando datos de usuario de tipo «jsonb» incompatible" -#: 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" @@ -174,11 +174,11 @@ msgstr "" "por lo que este clúster no puede ser actualizado.\n" "Puede eliminar las columnas problemáticas y reiniciar la actualización.\n" -#: check.c:272 +#: check.c:273 msgid "Checking for removed \"abstime\" data type in user tables" msgstr "Verificando tipo de datos «abstime» eliminado en tablas de usuario" -#: 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" @@ -192,11 +192,11 @@ msgstr "" "Puede eliminar las columnas problemáticas, o cambiarlas a otro\n" "tipo de dato, y reiniciar la actualización.\n" -#: check.c:285 +#: check.c:286 msgid "Checking for removed \"reltime\" data type in user tables" msgstr "Verificando tipo de datos «reltime» eliminado en tablas de usuario" -#: 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" @@ -210,11 +210,11 @@ msgstr "" "Puede eliminar las columnas problemáticas, o cambiarlas a otro\n" "tipo de dato, y reiniciar la actualización.\n" -#: check.c:298 +#: check.c:299 msgid "Checking for removed \"tinterval\" data type in user tables" msgstr "Verificando tipo de datos «tinterval» eliminado en tablas de usuario" -#: 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" @@ -228,35 +228,35 @@ msgstr "" "Puede eliminar las columnas problemáticas, o cambiarlas a otro\n" "tipo de dato, y reiniciar la actualización.\n" -#: check.c:345 -#, c-format -msgid "Checking data type usage" -msgstr "Verificando el uso de tipos de datos" - -#: check.c:480 +#: check.c:422 #, c-format msgid "failed check: %s" msgstr "falló la comprobación: %s" -#: check.c:483 +#: check.c:425 msgid "A list of the problem columns is in the file:" msgstr "Una lista de las columnas problemáticas está en el archivo:" -#: 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 "no se pudo abrir el archivo «%s»: %m" +#: check.c:473 +#, c-format +msgid "Checking data type usage" +msgstr "Verificando el uso de tipos de datos" + # FIXME this should probably use plural msgfmt -#: check.c:522 +#: check.c:527 #, c-format msgid "Data type checks failed: %s" msgstr "Verificaciones de tipos de datos fallidas: %s" -#: check.c:563 +#: check.c:576 #, c-format msgid "" "Performing Consistency Checks on Old Live Server\n" @@ -265,7 +265,7 @@ msgstr "" "Verificando Consistencia en Vivo en el Servidor Antiguo\n" "-------------------------------------------------------" -#: check.c:569 +#: check.c:582 #, c-format msgid "" "Performing Consistency Checks\n" @@ -274,7 +274,13 @@ msgstr "" "Verificando Consistencia\n" "------------------------" -#: check.c:718 +#: check.c:754 +#, c-format +#| msgid "This utility can only upgrade from PostgreSQL version %s and later." +msgid "Swap mode can only upgrade clusters from PostgreSQL version %s and later." +msgstr "El modo swap sólo puede actualizar desde PostgreSQL versión %s y posterior." + +#: check.c:777 #, c-format msgid "" "\n" @@ -283,7 +289,7 @@ msgstr "" "\n" "*Los clústers son compatibles*" -#: check.c:726 +#: check.c:785 #, c-format msgid "" "\n" @@ -294,18 +300,24 @@ msgstr "" "Si pg_upgrade falla a partir de este punto, deberá re-ejecutar initdb\n" "en el clúster nuevo antes de continuar." -#: 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" 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" +"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 "" -"Las estadísticas para el optimizador no son transferidas por pg_upgrade.\n" -"Una vez que inicie el servidor nuevo, considere ejecutar:\n" -" %s/vacuumdb %s--all --analyze-in-stages" +"Algunas estadísticas no son transferidas por pg_upgrade.\n" +"Una vez que inicie el servidor nuevo, considere ejecutar estas dos órdenes:\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" @@ -314,7 +326,7 @@ msgstr "" "Ejecutando este script se borrarán los archivos de datos del servidor antiguo:\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" @@ -327,57 +339,63 @@ msgstr "" "o el directorio de datos del servidor nuevo. El contenido del servidor\n" "antiguo debe ser borrado manualmente." -#: check.c:790 +#: check.c:852 #, c-format msgid "Checking cluster versions" msgstr "Verificando las versiones de los clústers" -#: check.c:802 +#: check.c:864 #, c-format msgid "This utility can only upgrade from PostgreSQL version %s and later." msgstr "Este programa sólo puede actualizar desde PostgreSQL versión %s y posterior." -#: check.c:807 +#: check.c:869 #, c-format msgid "This utility can only upgrade to PostgreSQL version %s." msgstr "Este programa sólo puede actualizar a PostgreSQL versión %s." -#: check.c:816 +#: check.c:878 #, c-format msgid "This utility cannot be used to downgrade to older major PostgreSQL versions." msgstr "Este programa no puede usarse para volver a versiones anteriores de PostgreSQL." -#: check.c:821 +#: check.c:883 #, c-format msgid "Old cluster data and binary directories are from different major versions." msgstr "El directorio de datos antiguo y el directorio de binarios antiguo son de versiones diferentes." -#: check.c:824 +#: check.c:886 #, c-format msgid "New cluster data and binary directories are from different major versions." msgstr "El directorio de datos nuevo y el directorio de binarios nuevo son de versiones diferentes." -#: check.c:839 +#: check.c:897 +#, c-format +#| msgid "This utility can only upgrade from PostgreSQL version %s and later." +msgid "The option %s cannot be used for upgrades from PostgreSQL %s and later." +msgstr "La opción %s no puede usarse para actualizar desde PostgreSQL %s y posterior." + +#: check.c:913 #, c-format msgid "When checking a live server, the old and new port numbers must be different." msgstr "Al verificar servidores en caliente, los números de port antiguo y nuevo deben ser diferentes." -#: check.c:859 +#: check.c:933 #, c-format msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\"" msgstr "La base de datos «%s» del clúster nuevo no está vacía: se encontró la relación «%s.%s»" -#: check.c:882 +#: check.c:956 #, c-format msgid "Checking for new cluster tablespace directories" msgstr "Verificando los directorios de tablespaces para el nuevo clúster" -#: check.c:893 +#: check.c:967 #, c-format msgid "new cluster tablespace directory already exists: \"%s\"" msgstr "directorio de tablespace para el nuevo clúster ya existe: «%s»" -#: check.c:926 +#: check.c:1001 #, c-format msgid "" "\n" @@ -387,7 +405,7 @@ msgstr "" "ADVERTENCIA: el directorio de datos nuevo no debería estar dentro del directorio antiguo,\n" "esto es, %s" -#: check.c:950 +#: check.c:1025 #, c-format msgid "" "\n" @@ -396,92 +414,102 @@ msgstr "" "\n" "ADVERTENCIA: las ubicaciones de tablespaces definidos por el usuario no deberían estar dentro del directorio de datos, esto es, %s" -#: check.c:960 +#: check.c:1035 #, c-format msgid "Creating script to delete old cluster" msgstr "Creando un script para borrar el clúster antiguo" -#: check.c:1014 +#: check.c:1063 #, c-format msgid "could not add execute permission to file \"%s\": %m" msgstr "no se pudo agregar permisos de ejecución al archivo «%s»: %m" -#: check.c:1034 +#: check.c:1083 #, c-format msgid "Checking database user is the install user" msgstr "Verificando que el usuario de base de datos es el usuario de instalación" -#: check.c:1050 +#: check.c:1099 #, c-format msgid "database user \"%s\" is not the install user" msgstr "el usuario de base de datos «%s» no es el usuario de instalación" -#: check.c:1061 +#: check.c:1110 #, c-format msgid "could not determine the number of users" msgstr "no se pudo determinar el número de usuarios" -#: check.c:1069 +#: check.c:1118 #, c-format msgid "Only the install user can be defined in the new cluster." msgstr "Sólo el usuario de instalación puede estar definido en el nuevo clúster." -#: check.c:1098 +#: check.c:1148 #, c-format msgid "Checking database connection settings" msgstr "Verificando los parámetros de conexión de bases de datos" -#: 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 no debe permitir conexiones, es decir su pg_database.datallowconn debe ser «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 "fatal" -#: 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" +#| " %s" 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 "" "Todas las bases de datos que no son template0 deben permitir conexiones,\n" -"es decir, pg_database.datallowconn debe ser true. Su instalación contiene\n" -"bases de datos que no son template0 que tienen pg_database.datallowconn\n" -"definido a false. Considere permitir conexiones para todas las bases de\n" -"datos que no son template0 o eliminar las bases de datos que no permiten\n" -"conexión. Un listado de las bases de datos con el problema se encuentra en:\n" +"es decir, pg_database.datallowconn debe ser true y pg_database.datconnlimit\n" +"no debe ser -2. Su instalación contiene bases de datos que no son template0\n" +"a las cuales no se puede conectar. Considere permitir conexiones para todas\n" +"las bases de datos que no son template0 o eliminar las bases de datos que no\n" +"permiten conexión. Un listado de las bases de datos con el problema se\n" +"encuentra en:\n" " %s" -#: check.c:1176 +#: check.c:1229 #, c-format msgid "Checking for prepared transactions" msgstr "Verificando transacciones preparadas" -#: check.c:1185 +#: check.c:1238 #, c-format msgid "The source cluster contains prepared transactions" msgstr "El clúster de origen contiene transacciones preparadas" -#: check.c:1187 +#: check.c:1240 #, c-format msgid "The target cluster contains prepared transactions" msgstr "El clúster de destino contiene transacciones preparadas" -#: check.c:1212 +#: check.c:1300 #, c-format msgid "Checking for contrib/isn with bigint-passing mismatch" msgstr "Verificando contrib/isn con discordancia en mecanismo de paso de bigint" -#: check.c:1271 +#: check.c:1325 #, c-format msgid "" "Your installation contains \"contrib/isn\" functions which rely on the\n" @@ -500,12 +528,12 @@ msgstr "" "Un listado de funciones problemáticas está en el archivo:\n" " %s" -#: check.c:1293 +#: check.c:1405 #, c-format msgid "Checking for user-defined postfix operators" msgstr "Verificando operadores postfix definidos por el usuario" -#: check.c:1368 +#: check.c:1421 #, c-format msgid "" "Your installation contains user-defined postfix operators, which are not\n" @@ -520,12 +548,12 @@ msgstr "" "Una lista de operadores postfix definidos por el usuario aparece en el archivo:\n" " %s" -#: check.c:1392 +#: check.c:1476 #, c-format msgid "Checking for incompatible polymorphic functions" msgstr "Verificando funciones polimórficas incompatibles" -#: check.c:1493 +#: check.c:1549 #, c-format msgid "" "Your installation contains user-defined objects that refer to internal\n" @@ -544,12 +572,12 @@ msgstr "" "«anycompatible». Una lista de los objetos problemáticos está en el archivo:\n" " %s" -#: check.c:1517 +#: check.c:1609 #, c-format msgid "Checking for tables WITH OIDS" msgstr "Verificando tablas WITH OIDS" -#: check.c:1569 +#: check.c:1625 #, c-format msgid "" "Your installation contains tables declared WITH OIDS, which is not\n" @@ -564,12 +592,36 @@ msgstr "" "Una lista de tablas con este problema aparece en el archivo:\n" " %s" -#: check.c:1596 +#: check.c:1684 +#, c-format +#| msgid "Checking for subscription state" +msgid "Checking for not-null constraint inconsistencies" +msgstr "Verificando inconsistencias en restricciones not-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 "" +"Su instalación contiene restricciones NOT NULL inconsistentes. Si las\n" +"columnas padre son NOT NULL, entonces las columnas hijas deben ser también\n" +"NOT NULL, o la actualización fallará. Puede corregir esto ejecutando\n" +" ALTER TABLE tablename ALTER column SET NOT NULL;\n" +"en cada columna listada en el archivo:\n" +" %s" + +#: check.c:1740 #, c-format msgid "Checking for roles starting with \"pg_\"" msgstr "Verificando roles que empiecen con «pg_»" -#: check.c:1627 +#: check.c:1771 #, c-format msgid "" "Your installation contains roles starting with \"pg_\".\n" @@ -584,12 +636,12 @@ msgstr "" "Un listado de los roles que empiezan con «pg_» está en el archivo:\n" " %s" -#: check.c:1647 +#: check.c:1825 #, c-format msgid "Checking for user-defined encoding conversions" msgstr "Verificando conversiones de codificación definidas por el usuario" -#: check.c:1707 +#: check.c:1854 #, c-format msgid "" "Your installation contains user-defined encoding conversions.\n" @@ -606,52 +658,76 @@ msgstr "" "Un listado de las conversiones de codificación definidas por el usuario está en el archivo:\n" " %s" -#: check.c:1746 +#: check.c:1939 +#, c-format +#| msgid "Checking for extension updates" +msgid "Checking for objects affected by Unicode update" +msgstr "Verificando objetos afectados por actualización de Unicode" + +#: check.c:2038 version.c:121 +#, c-format +msgid "warning" +msgstr "atención" + +#: 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 "" +"Su instalación contiene relaciones que podrían ser afectadas por una nueva\n" +"versión de Unicode. Una lista de las relaciones potencialmente afectadas\n" +"está en el archivo:\n" +" %s" + +#: check.c:2075 #, c-format msgid "Checking for new cluster logical replication slots" msgstr "Verificando slots de replicación lógica en el clúster nuevo" -#: check.c:1754 +#: check.c:2083 #, c-format msgid "could not count the number of logical replication slots" msgstr "no se pudo contar el número de slots de replicación lógica" -#: check.c:1759 +#: check.c:2088 #, c-format msgid "expected 0 logical replication slots but found %d" msgstr "se esperaban 0 slots de replicación lógica pero se encontraron %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 "no se pudo determinar el valor de los parámetros en el clúster nuevo" -#: check.c:1774 +#: check.c:2103 #, c-format msgid "\"wal_level\" must be \"logical\" but is set to \"%s\"" msgstr "«wal_level» debe ser «logical», pero está definido a «%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_replicacion_slots» (%d) debe ser mayor o igual al número de slots de replicación lógica en el cluster antiguo (%d)" -#: check.c:1812 +#: check.c:2141 #, c-format msgid "Checking for new cluster configuration for subscriptions" msgstr "Verificando configuraciones del clúster nuevo para suscripciones" -#: 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) debe ser mayor o igual al número de suscripciones en el clúster antiguo (%d)" +#| msgid "\"max_replication_slots\" (%d) must be greater than or equal to the number of subscriptions (%d) on the old cluster" +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) debe ser mayor o igual al número de suscripciones en el clúster antiguo (%d)" -#: check.c:1846 +#: check.c:2175 #, c-format msgid "Checking for valid logical replication slots" msgstr "Verificando los slots de replicación lógica válidos" -#: check.c:1898 +#: check.c:2227 #, c-format msgid "" "Your installation contains logical replication slots that cannot be upgraded.\n" @@ -666,12 +742,12 @@ msgstr "" "Un listado de los slots problemáticos está en el archivo:\n" " %s" -#: check.c:1922 +#: check.c:2287 #, c-format msgid "Checking for subscription state" msgstr "Verificando el estado de suscripción" -#: 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" @@ -684,184 +760,190 @@ msgstr "" "Una lista de las suscripciones problemáticas está en el archivo:\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 "no se pudo obtener datos de control usando %s: %m" -#: controldata.c:139 +#: controldata.c:143 #, c-format msgid "%d: database cluster state problem" msgstr "%d: problema de estado del clúster" -#: 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 "El clúster de origen fue apagado mientras estaba en modo de recuperación. Para actualizarlo, use «rsync» como está documentado, o apáguelo siendo primario." -#: 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 "El clúster de destino fue apagado mientras estaba en modo de recuperación. Para actualizarlo, use «rsync» como está documentado, o apáguelo siendo primario." -#: controldata.c:165 +#: controldata.c:169 #, c-format msgid "The source cluster was not shut down cleanly, state reported as: \"%s\"" msgstr "El clúster de origen no fue apagado limpiamente, el estado fue reportado como: «%s»" -#: controldata.c:167 +#: controldata.c:171 #, c-format msgid "The target cluster was not shut down cleanly, state reported as: \"%s\"" msgstr "El clúster de destino no fue apagado limpiamente, el estado fue reportado como: «%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 "no se pudo obtener datos de control usando %s: %s" -#: controldata.c:181 +#: controldata.c:185 #, c-format msgid "The source cluster lacks cluster state information:" msgstr "Al clúster de origen le falta información de estado:" -#: controldata.c:183 +#: controldata.c:187 #, c-format msgid "The target cluster lacks cluster state information:" msgstr "Al cluster de destino le falta información de estado:" -#: 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: problema en 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: problema de extracción de controldata" -#: controldata.c:578 +#: controldata.c:618 #, c-format msgid "The source cluster lacks some required control information:" msgstr "Al clúster de origen le falta información de control requerida:" -#: controldata.c:581 +#: controldata.c:621 #, c-format msgid "The target cluster lacks some required control information:" msgstr "Al clúster de destino le falta información de control requerida:" -#: controldata.c:584 +#: controldata.c:624 #, c-format msgid " checkpoint next XID" msgstr " siguiente XID del último checkpoint" -#: controldata.c:587 +#: controldata.c:627 #, c-format msgid " latest checkpoint next OID" msgstr " siguiente OID del último checkpoint" -#: controldata.c:590 +#: controldata.c:630 #, c-format msgid " latest checkpoint next MultiXactId" msgstr " siguiente MultiXactId del último checkpoint" -#: controldata.c:594 +#: controldata.c:634 #, c-format msgid " latest checkpoint oldest MultiXactId" msgstr " MultiXactId más antiguo del último checkpoint" -#: controldata.c:597 +#: controldata.c:637 #, c-format msgid " latest checkpoint oldestXID" msgstr " XID más antiguo del último checkpoint" -#: controldata.c:600 +#: controldata.c:640 #, c-format msgid " latest checkpoint next MultiXactOffset" msgstr " siguiente MultiXactOffset del siguiente checkpoint" -#: controldata.c:603 +#: controldata.c:643 #, c-format msgid " first WAL segment after reset" msgstr " primer segmento de WAL después del reinicio" -#: controldata.c:606 +#: controldata.c:646 #, c-format msgid " float8 argument passing method" msgstr " método de paso de argumentos float8" -#: controldata.c:609 +#: controldata.c:649 #, c-format msgid " maximum alignment" msgstr " alineamiento máximo" -#: controldata.c:612 +#: controldata.c:652 #, c-format msgid " block size" msgstr " tamaño de bloques" -#: controldata.c:615 +#: controldata.c:655 #, c-format msgid " large relation segment size" msgstr " tamaño de segmento de relación grande" -#: controldata.c:618 +#: controldata.c:658 #, c-format msgid " WAL block size" msgstr " tamaño de bloque de WAL" -#: controldata.c:621 +#: controldata.c:661 #, c-format msgid " WAL segment size" msgstr " tamaño de segmento de WAL" -#: controldata.c:624 +#: controldata.c:664 #, c-format msgid " maximum identifier length" msgstr " máximo largo de identificadores" -#: controldata.c:627 +#: controldata.c:667 #, c-format msgid " maximum number of indexed columns" msgstr " máximo número de columnas indexadas" -#: controldata.c:630 +#: controldata.c:670 #, c-format msgid " maximum TOAST chunk size" msgstr " tamaño máximo de trozos TOAST" -#: controldata.c:634 +#: controldata.c:674 #, c-format msgid " large-object chunk size" msgstr " tamaño de trozos de objetos grandes" -#: controldata.c:637 +#: controldata.c:677 #, c-format msgid " dates/times are integers?" msgstr " fechas/horas son enteros?" -#: controldata.c:641 +#: controldata.c:681 #, c-format msgid " data checksum version" msgstr " versión del checksum de datos" -#: controldata.c:643 +#: controldata.c:685 +#, c-format +#| msgid "Maximum data alignment: %u\n" +msgid " default char signedness" +msgstr " presencia de signo en datos «char»" + +#: controldata.c:687 #, c-format msgid "Cannot continue without required control information, terminating" msgstr "No se puede continuar sin la información de control requerida. Terminando" -#: controldata.c:658 +#: controldata.c:702 #, c-format msgid "" "old and new pg_controldata alignments are invalid or do not match.\n" @@ -870,91 +952,117 @@ msgstr "" "Alineamientos de pg_controldata antiguo y nuevo no son válidos o no coinciden.\n" "Seguramente un clúster es 32-bit y el otro es 64-bit" -#: controldata.c:662 +#: controldata.c:706 #, c-format msgid "old and new pg_controldata block sizes are invalid or do not match" msgstr "Los tamaños de bloque antiguo y nuevo no son válidos o no coinciden" -#: 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 "El tamaño máximo de segmento de relación antiguo y nuevo no son válidos o no coinciden" -#: controldata.c:668 +#: controldata.c:712 #, c-format msgid "old and new pg_controldata WAL block sizes are invalid or do not match" msgstr "El tamaño de bloques de WAL antiguo y nuevo no son válidos o no coinciden" -#: controldata.c:671 +#: controldata.c:715 #, c-format msgid "old and new pg_controldata WAL segment sizes are invalid or do not match" msgstr "El tamaño de segmentos de WAL antiguo y nuevo no son válidos o no coinciden" -#: controldata.c:674 +#: controldata.c:718 #, c-format msgid "old and new pg_controldata maximum identifier lengths are invalid or do not match" msgstr "Los máximos largos de identificador antiguo y nuevo no son válidos o no coinciden" -#: controldata.c:677 +#: controldata.c:721 #, c-format msgid "old and new pg_controldata maximum indexed columns are invalid or do not match" msgstr "La cantidad máxima de columnas indexadas antigua y nueva no son válidos o no coinciden" -#: 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 "Los máximos de trozos TOAST antiguo y nuevo no son válidos o no coinciden" -#: 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 "Los tamaños de trozos de objetos grandes antiguo y nuevo no son válidos o no coinciden" -#: controldata.c:688 +#: controldata.c:732 #, c-format msgid "old and new pg_controldata date/time storage types do not match" msgstr "Los tipos de almacenamiento de fecha/hora antiguo y nuevo no coinciden" -#: controldata.c:701 +#: controldata.c:745 #, c-format msgid "old cluster does not use data checksums but the new one does" msgstr "El clúster antiguo no usa checksums de datos pero el nuevo sí" -#: controldata.c:704 +#: controldata.c:748 #, c-format msgid "old cluster uses data checksums but the new one does not" msgstr "El clúster antiguo usa checksums de datos pero el nuevo no" -#: controldata.c:706 +#: controldata.c:750 #, c-format msgid "old and new cluster pg_controldata checksum versions do not match" msgstr "Las versiones de checksum de datos antigua y nueva no coinciden" -#: 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 "Agregando el sufijo «.old» a global/pg_control" +#| msgid "Adding \".old\" suffix to old global/pg_control" +msgid "Adding \".old\" suffix to old \"%s\"" +msgstr "Agregando el sufijo «.old» al «%s» antiguo" -#: controldata.c:722 +#: controldata.c:767 relfilenumber.c:393 relfilenumber.c:420 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%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" +#| "Because \"link\" mode was used, the old cluster cannot be safely\n" +#| "started once the new cluster has been started." 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" "Si desea iniciar el clúster antiguo, necesitará eliminar el sufijo\n" -"«.old» de %s/global/pg_control.old.\n" +"«.old» de «%s/%s.old».\n" "Puesto que se usó el modo «link», el clúster antiguo no puede usarse\n" "en forma segura después de que el clúster nuevo haya sido iniciado." +#: controldata.c:780 +#, c-format +msgid "" +"\n" +"Because \"swap\" mode was used, the old cluster can no longer be\n" +"safely started." +msgstr "" +"\n" +"Debido a que se usó el modo «swap», el clúster antiguo no puede ser\n" +"iniciado en forma segura." + +#: controldata.c:784 file.c:455 +#, c-format +#| msgid "unrecognized status code" +msgid "unrecognized transfer mode" +msgstr "modo de transferencia no reconocido" + #: dump.c:20 #, c-format msgid "Creating dump of global objects" @@ -985,7 +1093,7 @@ msgstr "no se pudo obtener la salida de versión de pg_ctl de %s" msgid "command too long" msgstr "orden demasiado larga" -#: 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 "no se pudo abrir el archivo de registro «%s»: %m" @@ -1022,7 +1130,7 @@ msgstr "" "Consulte las últimas líneas de «%s» para saber\n" "la causa probable de la falla." -#: 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 "no se pudo escribir al archivo de log «%s»" @@ -1147,7 +1255,7 @@ msgstr "no se pudo clonar el archivo entre los directorios viejo y nuevo: %m" msgid "copy_file_range not supported on this platform" msgstr "copy_file_range no está soportado en esta plataforma" -#: file.c:447 +#: file.c:449 #, c-format msgid "" "could not create hard link between old and new data directories: %m\n" @@ -1156,22 +1264,34 @@ msgstr "" "No se pudo crear un link duro entre los directorios de datos nuevo y antiguo: %m\n" "En modo link los directorios de dato nuevo y antiguo deben estar en el mismo sistema de archivos." -#: function.c:154 +#: file.c:452 +#, 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." +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 "" +"No se pudo crear un link duro entre los directorios de datos nuevo y antiguo: %m\n" +"En modo swap los directorios de dato nuevo y antiguo deben estar en el mismo sistema de archivos." + +#: function.c:173 #, c-format msgid "Checking for presence of required libraries" msgstr "Verificando la presencia de las bibliotecas requeridas" -#: function.c:190 +#: function.c:209 #, c-format msgid "could not load library \"%s\": %s" msgstr "no se pudo cargar la biblioteca «%s»: %s" -#: function.c:201 +#: function.c:220 #, c-format msgid "In database: %s\n" msgstr "En la base de datos: %s\n" -#: function.c:211 +#: function.c:230 #, c-format msgid "" "Your installation references loadable libraries that are missing from the\n" @@ -1186,51 +1306,51 @@ msgstr "" "de las bibliotecas problemáticas está en el archivo:\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 "Los nombres de relación para OID %u en la base de datos «%s» no coinciden: nombre antiguo «%s.%s», nombre nuevo «%s.%s»" -#: info.c:148 +#: info.c:151 #, c-format msgid "Failed to match up old and new tables in database \"%s\"" msgstr "No hubo coincidencia en las tablas nueva y antigua en la base de datos «%s»" -#: info.c:229 +#: info.c:232 #, c-format msgid " which is an index on \"%s.%s\"" msgstr " que es un índice en «%s.%s»" -#: info.c:239 +#: info.c:242 #, c-format msgid " which is an index on OID %u" msgstr " que es un índice en el OID %u" -#: info.c:251 +#: info.c:254 #, c-format msgid " which is the TOAST table for \"%s.%s\"" msgstr " que es la tabla TOAST para «%s.%s»" -#: info.c:259 +#: info.c:262 #, c-format msgid " which is the TOAST table for OID %u" msgstr " que es la tabla TOAST para el 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 "" "No se encontró equivalente en el clúster antiguo para la relación nueva con OID %u\n" "en la base de datos «%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 "" "No se encontró equivalente en el clúster nuevo para la antigua relación con OID %u\n" "en la base de datos «%s»: %s" -#: info.c:300 +#: info.c:325 #, c-format msgid "" "\n" @@ -1239,7 +1359,7 @@ msgstr "" "\n" "bases de datos de origen:" -#: info.c:302 +#: info.c:327 #, c-format msgid "" "\n" @@ -1248,104 +1368,109 @@ msgstr "" "\n" "bases de datos de destino:" -#: info.c:346 +#: info.c:371 #, c-format msgid "template0 not found" msgstr "template0 no encontrado" -#: info.c:805 +#: info.c:817 #, c-format msgid "Database: \"%s\"" msgstr "Base de datos: «%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 "Slots de replicación lógica en la base de datos:" -#: info.c:838 +#: info.c:850 #, c-format msgid "slot name: \"%s\", output plugin: \"%s\", two_phase: %s" msgstr "nombre de slot: «%s», plugin de salida: «%s», two_phase: %s" -#: option.c:105 +#: option.c:110 #, c-format msgid "%s: cannot be run as root" msgstr "%s: no puede ejecutarse como root" -#: option.c:172 +#: option.c:177 #, c-format msgid "invalid old port number" msgstr "número de puerto antiguo no válido" -#: option.c:177 +#: option.c:182 #, c-format msgid "invalid new port number" msgstr "número de puerto nuevo no válido" -#: option.c:216 +#: option.c:230 +#, c-format +msgid "invalid argument for option %s" +msgstr "argumento no válido para la opción %s" + +#: option.c:238 #, c-format msgid "Try \"%s --help\" for more information.\n" msgstr "Pruebe «%s --help» para mayor información.\n" -#: option.c:223 +#: option.c:245 #, c-format msgid "too many command-line arguments (first is \"%s\")" msgstr "demasiados argumentos en la línea de órdenes (el primero es «%s»)" -#: option.c:229 +#: option.c:251 #, c-format msgid "Running in verbose mode" msgstr "Ejecutando en modo verboso" -#: option.c:247 +#: option.c:269 msgid "old cluster binaries reside" msgstr "residen los binarios del clúster antiguo" -#: option.c:249 +#: option.c:271 msgid "new cluster binaries reside" msgstr "residen los binarios del clúster nuevo" -#: option.c:251 +#: option.c:273 msgid "old cluster data resides" msgstr "residen los datos del clúster antiguo" -#: option.c:253 +#: option.c:275 msgid "new cluster data resides" msgstr "residen los datos del clúster nuevo" -#: option.c:255 +#: option.c:277 msgid "sockets will be created" msgstr "se crearán los sockets" -#: option.c:272 option.c:374 +#: option.c:294 option.c:400 #, c-format msgid "could not determine current directory" msgstr "no se pudo identificar el directorio actual" -#: option.c:275 +#: option.c:297 #, c-format msgid "cannot run pg_upgrade from inside the new cluster data directory on Windows" msgstr "no se puede ejecutar pg_upgrade desde dentro del directorio de datos del clúster nuevo en Windows" -#: 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 actualiza un clúster PostgreSQL a una versión «mayor» diferente.\n" -#: option.c:285 +#: option.c:307 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: option.c:286 +#: option.c:308 #, c-format msgid "" " pg_upgrade [OPTION]...\n" @@ -1354,17 +1479,17 @@ msgstr "" " pg_upgrade [OPCIÓN]...\n" "\n" -#: option.c:287 +#: option.c:309 #, c-format msgid "Options:\n" msgstr "Opciones:\n" -#: option.c:288 +#: option.c:310 #, c-format msgid " -b, --old-bindir=BINDIR old cluster executable directory\n" msgstr " -b, --old-bindir=BINDIR directorio de ejecutables del clúster antiguo\n" -#: option.c:289 +#: option.c:311 #, c-format msgid "" " -B, --new-bindir=BINDIR new cluster executable directory (default\n" @@ -1373,107 +1498,128 @@ msgstr "" " -B, --new-bindir=BINDIR directorio de ejecutables del clúster nuevo\n" " (por omisión el mismo directorio que 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 sólo verificar clústers, no cambiar datos\n" -#: option.c:292 +#: option.c:314 #, c-format msgid " -d, --old-datadir=DATADIR old cluster data directory\n" msgstr " -d, --old-datadir=DATADIR directorio de datos del clúster antiguo\n" -#: option.c:293 +#: option.c:315 #, c-format msgid " -D, --new-datadir=DATADIR new cluster data directory\n" msgstr " -D, --new-datadir=DATADIR directorio de datos del clúster nuevo\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 máximo de procesos paralelos para restaurar\n" -#: option.c:295 +#: option.c:317 #, c-format msgid " -k, --link link instead of copying files to new cluster\n" msgstr " -k, --link enlazar (link) archivos en vez de copiarlos\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 no esperar que los cambios se sincronicen a disco\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=OPCIONES opciones a pasar al servidor antiguo\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=OPCIONES opciones a pasar al servidor nuevo\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=PUERTO número de puerto del clúster antiguo (def. %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=PUERTO número de puerto del clúster nuevo (def. %d)\n" -#: option.c:301 +#: option.c:323 #, c-format msgid " -r, --retain retain SQL and log files after success\n" msgstr " -r, --retain preservar archivos SQL y logs en caso de éxito\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 directorio de sockets a usar (omisión: dir. actual)\n" -#: option.c:303 +#: option.c:325 #, c-format msgid " -U, --username=NAME cluster superuser (default \"%s\")\n" msgstr " -U, --username=NOMBRE superusuario del clúster (def. «%s»)\n" -#: option.c:304 +#: option.c:326 #, c-format msgid " -v, --verbose enable verbose internal logging\n" msgstr " -v, --verbose activar registro interno verboso\n" -#: option.c:305 +#: option.c:327 #, c-format msgid " -V, --version display version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: option.c:306 +#: option.c:328 #, c-format msgid " --clone clone instead of copying files to new cluster\n" msgstr " --clone clonar los archivos en vez de copiarlos\n" -#: option.c:307 +#: option.c:329 #, c-format msgid " --copy copy files to new cluster (default)\n" msgstr " --copy copiar los archivos al clúster nuevo (por omisión)\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 copiar archivos usando copy_file_range\n" -#: option.c:309 +#: option.c:331 +#, c-format +#| msgid " --no-subscriptions do not dump subscriptions\n" +msgid " --no-statistics do not import statistics from old cluster\n" +msgstr " --no-statistics no volcar estadísticas desde el clúster antiguo\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=OPCIÓN define que «char» en la nueva instalación sean\n" +" «signed» o «unsigned»\n" + +#: option.c:334 +#, c-format +#| msgid " --clone clone instead of copying files to new cluster\n" +msgid " --swap move data directories to new cluster\n" +msgstr " --swap mover directorios de datos al cluster nuevo\n" + +#: option.c:335 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr " --sync-method=MÉTODO definir método de sincronizar archivos a disco\n" -#: option.c:310 +#: option.c:336 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: option.c:311 +#: option.c:337 #, c-format msgid "" "\n" @@ -1488,7 +1634,7 @@ msgstr "" " apagar el postmaster que atiende al clúster antiguo\n" " apagar el postmaster que atiende al clúster nuevo\n" -#: option.c:316 +#: option.c:342 #, c-format msgid "" "\n" @@ -1505,7 +1651,7 @@ msgstr "" " el directorio «bin» para la versión antigua (-b BINDIR)\n" " el directorio «bin» para la versión nueva (-B BINDIR)\n" -#: option.c:322 +#: option.c:348 #, c-format msgid "" "\n" @@ -1518,7 +1664,7 @@ msgstr "" " pg_upgrade -d oldCluster/data -D newCluster/data -b oldCluster/bin -B newCluster/bin\n" "o\n" -#: option.c:327 +#: option.c:353 #, c-format msgid "" " $ export PGDATAOLD=oldCluster/data\n" @@ -1533,7 +1679,7 @@ msgstr "" " $ export PGBINNEW=clusterNuevo/bin\n" " $ pg_upgrade\n" -#: option.c:333 +#: option.c:359 #, c-format msgid "" " C:\\> set PGDATAOLD=oldCluster/data\n" @@ -1548,7 +1694,7 @@ msgstr "" " C:\\> set PGBINNEW=clusterNuevo/bin\n" " C:\\> pg_upgrade\n" -#: option.c:339 +#: option.c:365 #, c-format msgid "" "\n" @@ -1557,12 +1703,12 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: option.c:340 +#: option.c:366 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: option.c:380 +#: option.c:406 #, c-format msgid "" "You must identify the directory where the %s.\n" @@ -1571,32 +1717,32 @@ msgstr "" "Debe identificar el directorio donde %s.\n" "Por favor use la opción %s o la variable de ambiente %s." -#: option.c:433 +#: option.c:459 #, c-format msgid "Finding the real data directory for the source cluster" msgstr "Buscando el directorio de datos real para el clúster de origen" -#: option.c:435 +#: option.c:461 #, c-format msgid "Finding the real data directory for the target cluster" msgstr "Buscando el directorio de datos real para el clúster de destino" -#: option.c:448 +#: option.c:474 #, c-format msgid "could not get data directory using %s: %m" msgstr "no se pudo obtener el directorio de datos usando %s: %m" -#: option.c:452 +#: option.c:478 #, c-format msgid "could not get data directory using %s: %s" msgstr "no se pudo obtener el directorio de datos usando %s: %s" -#: option.c:500 +#: option.c:526 #, c-format msgid "could not read line %d from file \"%s\": %m" msgstr "no se pudo leer la línea %d del archivo «%s»: %m" -#: option.c:517 +#: option.c:543 #, c-format msgid "user-supplied old port number %hu corrected to %hu" msgstr "número de port entregado por el usuario %hu corregido a %hu" @@ -1611,7 +1757,7 @@ msgstr "no se pudo crear el proceso hijo: %m" msgid "could not create worker thread: %m" msgstr "no se pudo crear el thread trabajador: %m" -#: parallel.c:294 +#: parallel.c:294 task.c:404 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %m" @@ -1626,12 +1772,12 @@ msgstr "el proceso hijo terminó anormalmente: estado %d" msgid "child worker exited abnormally: %m" msgstr "el hijo trabajador terminó anormalmente: %m" -#: pg_upgrade.c:115 +#: pg_upgrade.c:114 #, c-format msgid "could not read permissions of directory \"%s\": %m" msgstr "no se pudo obtener los permisos del directorio «%s»: %m" -#: pg_upgrade.c:147 +#: pg_upgrade.c:146 #, c-format msgid "" "\n" @@ -1642,17 +1788,17 @@ msgstr "" "Llevando a cabo el Upgrade\n" "--------------------------" -#: pg_upgrade.c:192 +#: pg_upgrade.c:194 #, c-format msgid "Setting next OID for new cluster" msgstr "Seteando siguiente OID para el nuevo clúster" -#: pg_upgrade.c:216 +#: pg_upgrade.c:218 #, c-format msgid "Sync data directory to disk" msgstr "Sincronizando directorio de datos a disco" -#: pg_upgrade.c:230 +#: pg_upgrade.c:234 #, c-format msgid "" "\n" @@ -1663,23 +1809,24 @@ msgstr "" "Actualización Completa\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 "nombre de directorio para el nuevo clúster es demasiado largo" -#: 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 "no se pudo crear el directorio «%s»: %m" -#: pg_upgrade.c:352 +#: pg_upgrade.c:356 #, c-format msgid "%s: could not find own program executable" msgstr "%s: no se pudo encontrar el ejecutable propio" -#: pg_upgrade.c:378 +#: pg_upgrade.c:382 #, c-format msgid "" "There seems to be a postmaster servicing the old cluster.\n" @@ -1688,7 +1835,7 @@ msgstr "" "Parece haber un postmaster sirviendo el clúster antiguo.\n" "Por favor detenga ese postmaster e inténtelo nuevamente." -#: pg_upgrade.c:391 +#: pg_upgrade.c:395 #, c-format msgid "" "There seems to be a postmaster servicing the new cluster.\n" @@ -1697,141 +1844,197 @@ msgstr "" "Parece haber un postmaster sirviendo el clúster nuevo.\n" "Por favor detenga ese postmaster e inténtelo nuevamente." -#: pg_upgrade.c:413 +#: pg_upgrade.c:421 +#, c-format +#| msgid "Setting locale and encoding for new cluster" +msgid "Setting the default char signedness for new cluster" +msgstr "Estableciendo la presencia de signo para el clúster nuevo" + +#: pg_upgrade.c:449 #, c-format msgid "Setting locale and encoding for new cluster" msgstr "Estableciendo la configuración regional y codificación para el nuevo clúster" -#: pg_upgrade.c:489 +#: pg_upgrade.c:527 #, c-format msgid "Analyzing all rows in the new cluster" msgstr "Analizando todas las filas en el clúster nuevo" -#: pg_upgrade.c:502 +#: pg_upgrade.c:540 #, c-format msgid "Freezing all rows in the new cluster" msgstr "Congelando todas las filas en el nuevo clúster" -#: pg_upgrade.c:522 +#: pg_upgrade.c:560 #, c-format msgid "Restoring global objects in the new cluster" msgstr "Restaurando objetos globales en el nuevo clúster" -#: pg_upgrade.c:538 +#: pg_upgrade.c:577 #, c-format msgid "Restoring database schemas in the new cluster" msgstr "Restaurando esquemas de bases de datos en el clúster nuevo" -#: pg_upgrade.c:662 +#: pg_upgrade.c:712 #, c-format msgid "Deleting files from new %s" msgstr "Eliminando archivos del nuevo %s" -#: pg_upgrade.c:666 +#: pg_upgrade.c:716 #, c-format msgid "could not delete directory \"%s\"" msgstr "no se pudo eliminar directorio «%s»" -#: pg_upgrade.c:685 +#: pg_upgrade.c:735 #, c-format msgid "Copying old %s to new server" msgstr "Copiando el %s antiguo al nuevo servidor" -#: pg_upgrade.c:711 +#: pg_upgrade.c:761 #, c-format msgid "Setting oldest XID for new cluster" msgstr "Estableciendo XID más antiguo para el nuevo clúster" -#: pg_upgrade.c:719 +#: pg_upgrade.c:769 #, c-format msgid "Setting next transaction ID and epoch for new cluster" msgstr "Seteando el ID de transacción y «época» siguientes en el nuevo clúster" -#: pg_upgrade.c:749 +#: pg_upgrade.c:799 #, c-format msgid "Setting next multixact ID and offset for new cluster" msgstr "Seteando el multixact ID y offset siguientes en el nuevo clúster" -#: pg_upgrade.c:773 +#: pg_upgrade.c:823 #, c-format msgid "Setting oldest multixact ID in new cluster" msgstr "Seteando el multixact ID más antiguo en el nuevo clúster" -#: pg_upgrade.c:793 +#: pg_upgrade.c:843 #, c-format msgid "Resetting WAL archives" msgstr "Reseteando los archivos de WAL" -#: pg_upgrade.c:836 +#: pg_upgrade.c:886 #, c-format msgid "Setting frozenxid and minmxid counters in new cluster" msgstr "Seteando contadores frozenxid y minmxid en el clúster nuevo" -#: pg_upgrade.c:838 +#: pg_upgrade.c:888 #, c-format msgid "Setting minmxid counter in new cluster" msgstr "Seteando contador minmxid en el clúster nuevo" -#: pg_upgrade.c:929 +#: pg_upgrade.c:979 #, c-format msgid "Restoring logical replication slots in the new cluster" msgstr "Restaurando slots de replicación lógica en el nuevo clúster" -#: relfilenumber.c:35 +#: relfilenumber.c:68 +#, c-format +#| msgid "could not fsync file \"%s\": %m" +msgid "could not synchronize file \"%s\": %m" +msgstr "no se pudo sincronizar el archivo «%s»: %m" + +#: relfilenumber.c:114 #, c-format msgid "Cloning user relation files" msgstr "Clonando archivos de relaciones de usuario" -#: relfilenumber.c:38 +#: relfilenumber.c:117 #, c-format msgid "Copying user relation files" msgstr "Copiando archivos de relaciones de usuario" -#: relfilenumber.c:41 +#: relfilenumber.c:120 #, c-format msgid "Copying user relation files with copy_file_range" msgstr "Copiando archivos de relaciones de usuario con copy_file_range" -#: relfilenumber.c:44 +#: relfilenumber.c:123 #, c-format msgid "Linking user relation files" msgstr "Enlazando archivos de relaciones de usuario" -#: relfilenumber.c:118 +#: relfilenumber.c:126 +#, c-format +#| msgid "syncing data directory" +msgid "Swapping data directories" +msgstr "Intercambiando directorios de datos" + +#: relfilenumber.c:200 #, c-format msgid "old database \"%s\" not found in the new cluster" msgstr "la base de datos «%s» no se encontró en el clúster nuevo" -#: relfilenumber.c:221 +#: relfilenumber.c:287 +#, c-format +msgid "could not stat file \"%s\": %m" +msgstr "no se pudo hacer stat al archivo «%s»: %m" + +#: relfilenumber.c:301 relfilenumber.c:305 +#, c-format +#| msgid "could not rename file \"%s\" to \"%s\": %m" +msgid "could not rename directory \"%s\" to \"%s\": %m" +msgstr "no se pudo renombrar el directorio de «%s» a «%s»: %m" + +#: relfilenumber.c:375 relfilenumber.c:402 +#, c-format +msgid "could not open directory \"%s\": %m" +msgstr "no se pudo abrir el directorio «%s»: %m" + +#: relfilenumber.c:396 relfilenumber.c:434 +#, c-format +msgid "could not read directory \"%s\": %m" +msgstr "no se pudo leer el directorio «%s»: %m" + +#: relfilenumber.c:439 +#, c-format +#| msgid "could not close directory \"%s\": %m" +msgid "could not synchronize directory \"%s\": %m" +msgstr "no se pudo sincronizar el directorio «%s»: %m" + +#: relfilenumber.c:441 +#, c-format +#| msgid "could not create directory \"%s\": %m" +msgid "could not synchronize parent directory of \"%s\": %m" +msgstr "no se pudo sincronizar el directorio padre de «%s»: %m" + +#: relfilenumber.c:598 #, c-format msgid "error while checking for file existence \"%s.%s\" (\"%s\" to \"%s\"): %m" msgstr "error mientras se comprobaba la existencia del archivo «%s.%s» («%s» a «%s»); %m" -#: relfilenumber.c:238 +#: relfilenumber.c:615 #, c-format msgid "rewriting \"%s\" to \"%s\"" msgstr "reescribiendo «%s» a «%s»" -#: relfilenumber.c:246 +#: relfilenumber.c:623 #, c-format msgid "cloning \"%s\" to \"%s\"" msgstr "clonando «%s» a «%s»" -#: relfilenumber.c:251 +#: relfilenumber.c:628 #, c-format msgid "copying \"%s\" to \"%s\"" msgstr "copiando «%s» a «%s»" -#: relfilenumber.c:256 +#: relfilenumber.c:633 #, c-format msgid "copying \"%s\" to \"%s\" with copy_file_range" msgstr "copiando «%s» a «%s» con copy_file_range" -#: relfilenumber.c:261 +#: relfilenumber.c:638 #, c-format msgid "linking \"%s\" to \"%s\"" msgstr "enlazando «%s» a «%s»" +#: relfilenumber.c:644 +#, c-format +msgid "should never happen" +msgstr "nunca debería suceder" + #: server.c:39 server.c:143 util.c:248 util.c:278 #, c-format msgid "Failure, exiting\n" @@ -1863,7 +2066,7 @@ msgstr "no se pudo abrir el archivo de versión «%s»: %m" msgid "could not parse version file \"%s\"" msgstr "no se pudo interpretar el archivo de versión «%s»" -#: server.c:310 +#: server.c:299 #, c-format msgid "" "\n" @@ -1872,7 +2075,7 @@ msgstr "" "\n" "%s" -#: server.c:314 +#: server.c:303 #, c-format msgid "" "could not connect to source postmaster started with the command:\n" @@ -1881,7 +2084,7 @@ msgstr "" "no se pudo conectar al postmaster de origen iniciado con la orden:\n" "%s" -#: server.c:318 +#: server.c:307 #, c-format msgid "" "could not connect to target postmaster started with the command:\n" @@ -1890,22 +2093,22 @@ msgstr "" "no se pudo conectar al postmaster de destino iniciado con la orden:\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 no pudo iniciar el servidor de origen, o la conexión falló" -#: server.c:334 +#: server.c:323 #, c-format msgid "pg_ctl failed to start the target server, or connection failed" msgstr "pg_ctl no pudo iniciar el servidor de destino, o la conexión falló" -#: server.c:379 +#: server.c:368 task.c:195 #, c-format msgid "out of memory" msgstr "memoria agotada" -#: server.c:392 +#: server.c:381 #, c-format msgid "libpq environment variable %s has a non-local server value: %s" msgstr "la variable de ambiente libpq %s tiene un valor de servidor no-local: %s" @@ -1934,6 +2137,17 @@ msgstr "no se pudo hace stat al directorio de tablespace «%s»: %m" msgid "tablespace path \"%s\" is not a directory" msgstr "la ruta de tablespace «%s» no es un directorio" +#: task.c:216 task.c:267 task.c:282 task.c:293 +#, c-format +#| msgid "reconnection failed: %s" +msgid "connection failure: %s" +msgstr "fallo de conexión: %s" + +#: task.c:395 +#, c-format +msgid "invalid socket" +msgstr "socket no válido" + #: util.c:53 util.c:56 util.c:139 util.c:170 util.c:172 #, c-format msgid "%-*s" @@ -1954,11 +2168,6 @@ msgstr "éxito" msgid "Checking for hash indexes" msgstr "Verificando índices hash" -#: version.c:121 -#, c-format -msgid "warning" -msgstr "atención" - #: version.c:123 #, c-format msgid "" @@ -1993,17 +2202,17 @@ msgstr "" "cuando se ejecute en psql con el superusuario de la base de datos recreará\n" "los índices no válidos; hasta entonces, ninguno de esos índices será usado." -#: version.c:153 +#: version.c:187 #, c-format msgid "Checking for extension updates" msgstr "Verificando actualizaciones para extensiones" -#: version.c:200 +#: version.c:201 #, c-format msgid "notice" msgstr "aviso" -#: version.c:201 +#: version.c:202 #, c-format msgid "" "\n" diff --git a/src/bin/pg_upgrade/po/fr.po b/src/bin/pg_upgrade/po/fr.po index e1eb3325e83e8..dcdcf58261cd2 100644 --- a/src/bin/pg_upgrade/po/fr.po +++ b/src/bin/pg_upgrade/po/fr.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-09 13:20+0000\n" -"PO-Revision-Date: 2025-07-09 17:21+0200\n" +"POT-Creation-Date: 2025-09-20 04:49+0000\n" +"PO-Revision-Date: 2025-09-20 11:01+0200\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -19,7 +19,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.7\n" #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 @@ -240,7 +240,7 @@ msgstr "Une liste des colonnes problématiques se trouve dans le fichier :" #: 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:2189 check.c:2208 check.c:2254 check.c:2307 file.c:378 file.c:415 +#: 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" @@ -449,7 +449,7 @@ msgid "template0 must not allow connections, i.e. its pg_database.datallowconn m msgstr "template0 ne doit pas autoriser les connexions, ie pg_database.datallowconn doit valoir false" #: 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:2221 check.c:2363 +#: check.c:1710 check.c:1770 check.c:1853 check.c:2226 check.c:2368 #: function.c:229 #, c-format msgid "fatal" @@ -593,7 +593,7 @@ msgid "" "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" +" ALTER TABLE tablename ALTER column SET NOT NULL;\n" "on each column listed in the file:\n" " %s" msgstr "" @@ -601,7 +601,7 @@ msgstr "" "Si les colonnes parents sont NOT NULL, alors la colonne enfant doit\n" "aussi être marquée NOT NULL, sinon la mise à jour échouera.\n" "Vous pouvez corriger ceci en exécutant\n" -" ALTER TABLE tablename ALTER column SET NOT NULL;\n" +" ALTER TABLE nom_table ALTER nom_colonne SET NOT NULL;\n" "sur chaque colonne listée dans le fichier :\n" " %s" @@ -652,12 +652,12 @@ msgstr "" msgid "Checking for objects affected by Unicode update" msgstr "Vérification des objets affectés par la mise à jour Unicode" -#: check.c:2033 version.c:121 +#: check.c:2038 version.c:121 #, c-format msgid "warning" msgstr "attention" -#: check.c:2034 +#: check.c:2039 #, c-format msgid "" "Your installation contains relations that might be affected by a new version of Unicode.\n" @@ -668,52 +668,52 @@ msgstr "" "Une liste des relations potentiellement affectées se trouve dans le fichier :\n" " %s" -#: check.c:2070 +#: check.c:2075 #, c-format msgid "Checking for new cluster logical replication slots" msgstr "Vérification des slots de réplication logique de la nouvelle instance" -#: check.c:2078 +#: check.c:2083 #, c-format msgid "could not count the number of logical replication slots" msgstr "n'a pas pu compter le nombre de slots de réplication logique" -#: check.c:2083 +#: check.c:2088 #, c-format msgid "expected 0 logical replication slots but found %d" msgstr "attendait 0 slot de réplication logique mais en a trouvé %d" -#: check.c:2093 check.c:2144 +#: check.c:2098 check.c:2149 #, c-format msgid "could not determine parameter settings on new cluster" msgstr "n'a pas pu déterminer la configuration sur la nouvelle instance" -#: check.c:2098 +#: check.c:2103 #, c-format msgid "\"wal_level\" must be \"logical\" but is set to \"%s\"" msgstr "« wal_level » doit être configuré à « logical » mais est configuré à « %s »" -#: check.c:2104 +#: 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) doit être supérieur ou égal au nombre de slots de réplication logique (%d) sur l'ancienne instance" -#: check.c:2136 +#: check.c:2141 #, c-format msgid "Checking for new cluster configuration for subscriptions" msgstr "Vérification de la configuration de la nouvelle instance pour les souscriptions" -#: check.c:2148 +#: check.c:2153 #, c-format 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) doit être supérieur ou égal au nombre de souscriptions (%d) sur l'ancienne instance" -#: check.c:2170 +#: check.c:2175 #, c-format msgid "Checking for valid logical replication slots" msgstr "Vérification des slots de réplication logique valides" -#: check.c:2222 +#: check.c:2227 #, c-format msgid "" "Your installation contains logical replication slots that cannot be upgraded.\n" @@ -728,12 +728,12 @@ msgstr "" "une liste des slots problématiques dans le fichier :\n" " %s" -#: check.c:2282 +#: check.c:2287 #, c-format msgid "Checking for subscription state" msgstr "Vérification de l'état de souscription" -#: check.c:2364 +#: check.c:2369 #, c-format msgid "" "Your installation contains subscriptions without origin or having relations not in i (initialize) or r (ready) state.\n" @@ -2065,7 +2065,7 @@ msgstr "n'a pas pu ouvrir le fichier de version « %s » : %m" msgid "could not parse version file \"%s\"" msgstr "n'a pas pu analyser le fichier de version « %s »" -#: server.c:317 +#: server.c:299 #, c-format msgid "" "\n" @@ -2074,7 +2074,7 @@ msgstr "" "\n" "%s" -#: server.c:321 +#: server.c:303 #, c-format msgid "" "could not connect to source postmaster started with the command:\n" @@ -2083,7 +2083,7 @@ msgstr "" "n'a pas pu se connecter au postmaster source lancé avec la commande :\n" "%s" -#: server.c:325 +#: server.c:307 #, c-format msgid "" "could not connect to target postmaster started with the command:\n" @@ -2092,22 +2092,22 @@ msgstr "" "n'a pas pu se connecter au postmaster cible lancé avec la commande :\n" "%s" -#: server.c:339 +#: server.c:321 #, c-format msgid "pg_ctl failed to start the source server, or connection failed" msgstr "pg_ctl a échoué à démarrer le serveur source ou connexion échouée" -#: server.c:341 +#: server.c:323 #, c-format msgid "pg_ctl failed to start the target server, or connection failed" msgstr "pg_ctl a échoué à démarrer le serveur cible ou connexion échouée" -#: server.c:386 task.c:195 +#: server.c:368 task.c:195 #, c-format msgid "out of memory" msgstr "mémoire épuisée" -#: server.c:399 +#: server.c:381 #, c-format msgid "libpq environment variable %s has a non-local server value: %s" msgstr "la variable d'environnement libpq %s a une valeur serveur non locale : %s" diff --git a/src/bin/pg_upgrade/po/ko.po b/src/bin/pg_upgrade/po/ko.po index 800eb1a2f0fea..402b9e34685ed 100644 --- a/src/bin/pg_upgrade/po/ko.po +++ b/src/bin/pg_upgrade/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_upgrade (PostgreSQL) 17\n" +"Project-Id-Version: pg_upgrade (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:50+0000\n" -"PO-Revision-Date: 2025-01-17 15:47+0900\n" +"POT-Creation-Date: 2025-09-11 21:50+0000\n" +"PO-Revision-Date: 2025-09-10 10:52+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -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" @@ -73,11 +73,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" @@ -89,11 +89,11 @@ msgstr "" "이 자료형의 입출력 방식이 옛 버전과 새 버전에서 서로 호환하지 않습니다.\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" @@ -105,11 +105,11 @@ msgstr "" "있습니다. 그래서 업그레이드 작업을 진행할 수 없습니다.\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" @@ -121,11 +121,11 @@ msgstr "" "그래서, 업그레이드 작업이 불가능합니다.\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" @@ -137,11 +137,11 @@ msgstr "" "이 자료형은 더 이상 사용할 수 없습니다. 이 문제를 옛 버전에서 먼저 정리하고\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" @@ -152,11 +152,11 @@ msgstr "" "있습니다. 이 자료형의 저장 양식이 바뀌었기에, 업그레이드 할 수\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" @@ -168,11 +168,11 @@ msgstr "" "그래서, 업그레이드 작업이 불가능합니다.\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" @@ -186,11 +186,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" @@ -204,11 +204,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" @@ -222,34 +222,34 @@ msgstr "" "해당 칼럼들을 지우거나, 다른 자료형으로 바꾼 뒤,\n" "업그레이드 작업을 진행하세요.\n" -#: check.c:345 -#, c-format -msgid "Checking data type usage" -msgstr "자료형 사용 현황 검사 중" - -#: check.c:480 +#: check.c:422 #, 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" @@ -258,7 +258,7 @@ msgstr "" "옛 운영 서버에서 일관성 검사를 진행합니다.\n" "------------------------------------------" -#: check.c:569 +#: check.c:582 #, c-format msgid "" "Performing Consistency Checks\n" @@ -267,7 +267,13 @@ msgstr "" "일관성 검사 수행중\n" "------------------" -#: check.c:718 +#: check.c:754 +#, c-format +msgid "" +"Swap mode can only upgrade clusters from PostgreSQL version %s and later." +msgstr "Swap 모드는 PostgreSQL %s 과 그 이상 버전에서 사용할 수 있습니다." + +#: check.c:777 #, c-format msgid "" "\n" @@ -276,7 +282,7 @@ msgstr "" "\n" "*클러스터 호환성*" -#: check.c:726 +#: check.c:785 #, c-format msgid "" "\n" @@ -287,18 +293,20 @@ msgstr "" "여기서 pg_upgrade 작업을 실패한다면, 재시도 하기 전에 먼저\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" +"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" +"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" @@ -307,7 +315,7 @@ 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" @@ -319,22 +327,22 @@ 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." @@ -342,52 +350,57 @@ 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" +"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" @@ -398,42 +411,42 @@ msgstr "" "경고: 사용자 정의 테이블스페이스 위치를 데이터 디렉터리 안에 둘 수 없습니다, " "예: %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 " @@ -442,52 +455,54 @@ 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" +"pg_database.datallowconn 값이 true여야하고, pg_database.datconnlimit\n" +"값은 -2여야 합니다. 설치된 데이터베이스\n" "중 pg_database.datallowconn 값이 false로 설정된 template0이 아닌\n" "데이터베이스가 있습니다. template0이 아닌 데이터베이스의 모든 연결을\n" "허용하거나 연결을 허용하지 않는 데이터베이스를 삭제하는 것이 좋습니다.\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 "contrib/isn 모듈의 bigint 처리가 서로 같은지 확인 중" -#: check.c:1271 +#: check.c:1325 #, c-format msgid "" "Your installation contains \"contrib/isn\" functions which rely on the\n" @@ -505,12 +520,12 @@ msgstr "" "복원할 수 있습니다. 문제가 있는 함수는 아래 파일 안에 있습니다:\n" " %s" -#: check.c:1293 +#: check.c:1405 #, c-format msgid "Checking for user-defined postfix operators" msgstr "사용자 정의 postfix 연산자를 검사 중" -#: check.c:1368 +#: check.c:1421 #, c-format msgid "" "Your installation contains user-defined postfix operators, which are not\n" @@ -525,17 +540,17 @@ msgstr "" "관련 사용자 정의 postfix 연산자 목록은 아래 파일 안에 있습니다:\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" +"polymorphic functions with arguments of type \"anyarray\" or \"anyelement" +"\".\n" "These user-defined objects must be dropped before upgrading and restored\n" "afterwards, changing them to refer to the new corresponding functions with\n" "arguments of type \"anycompatiblearray\" and \"anycompatible\".\n" @@ -550,12 +565,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" @@ -571,12 +586,36 @@ msgstr "" "관련 테이블 목록은 아래 파일 안에 있습니다:\n" " %s" -#: check.c:1596 +#: check.c:1684 +#, c-format +msgid "Checking for not-null constraint inconsistencies" +msgstr "not-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 지정을 했다면, 하위 칼럼에도 해야합니다.\n" +"그렇지 않으면 업그레이드를 실패합니다.\n" +"다음 명령으로 이 문제를 해결 할 수 있습니다:\n" +" ALTER TABLE 테이블이름 ALTER 칼럼 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" @@ -591,12 +630,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" @@ -613,32 +652,54 @@ msgstr "" "해당 변환 규칙 목록은 아래 파일 안에 있습니다:\n" " %s" -#: check.c:1746 +#: check.c:1939 +#, c-format +msgid "Checking for objects affected by Unicode update" +msgstr "유니코드 업데이트를 위한 객체 영향도 검사 중" + +#: 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 "" +"새 버전의 유니코드로 업그레이드하면 영향을 받는 릴레이션이 있습니다.\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 "논리 복제 슬롯이 없다고 판단했는데, %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 " @@ -647,26 +708,26 @@ 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" +"\"max_active_replication_origins\" (%d) must be greater than or equal to the " +"number of subscriptions (%d) on the old cluster" msgstr "" -"\"max_replication_slots\" 설정값(%d)이 옛 클러스터 구독 수(%d)와 같거나 커야 " -"함" +"\"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 " @@ -683,12 +744,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 " @@ -704,17 +765,17 @@ 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 " @@ -724,7 +785,7 @@ msgstr "" "다. 업그레이드 하려면, 문서에 언급한 것 처럼 \"rsync\"를 사용하든가, 그 서버" "를 운영 서버 모드로 바꾼 뒤 중지하고 작업하십시오." -#: controldata.c:160 +#: controldata.c:164 #, c-format msgid "" "The target cluster was shut down while in recovery mode. To upgrade, use " @@ -734,164 +795,169 @@ 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 복원 문제" -#: 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 " 마지막 체크포인트 제일 오래된 XID" -#: 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 " 최대 토스트 조각 크기" -#: 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 " date/time 자료형을 정수로?" -#: 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" @@ -900,107 +966,125 @@ 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 "클러스터간 pg_controldata WAL 블록 크기가 서로 다릅니다." -#: controldata.c:671 +#: controldata.c:715 #, c-format msgid "" "old and new pg_controldata WAL segment sizes are invalid or do not match" msgstr "클러스터간 pg_controldata WAL 조각 크기가 서로 다릅니다." -#: 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 "클러스터간 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 date/time 저장 크기가 서로 다릅니다." -#: 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 "옛 global/pg_control 파일에 \".old\" 이름을 덧붙입니다." +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" -"%s/global/pg_control.old 파일의 이름을 \".old\" 빼고 바꾸어\n" +"\".old\"를 \"%s/%s.old\" 파일에서 빼고\n" "사용해야합니다. 업그레이드를 \"link\" 모드로 했기 때문에,\n" "한번이라도 새 버전의 서버가 이 클러스터를 이용해서 실행되었다면,\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 msgid "Creating dump of global objects" @@ -1031,7 +1115,7 @@ msgstr "%s에서 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" @@ -1068,7 +1152,7 @@ msgstr "" "\"%s\" 파일의 마지막 부분을 살펴보면\n" "이 문제를 풀 실마리가 보일 것입니다." -#: 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" @@ -1154,8 +1238,8 @@ msgstr "\"%s.%s\" (\"%s\" / \"%s\") 릴레이션 복사 중 오류: %m" #: file.c:172 #, c-format msgid "" -"error while copying relation \"%s.%s\": could not copy file range from " -"\"%s\" to \"%s\": %m" +"error while copying relation \"%s.%s\": could not copy file range from \"%s" +"\" to \"%s\": %m" msgstr "\"%s.%s\" 릴레이션 복사 중 오류: 실패 복사 범위: \"%s\" - \"%s\": %m" #: file.c:194 @@ -1200,7 +1284,7 @@ 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" @@ -1210,22 +1294,32 @@ 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" +"swap 모드를 사용하려면, 두 디렉터리가 같은 시스템 볼륨 안에 있어야 합니다." + +#: 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" @@ -1239,57 +1333,57 @@ 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\"" +"Relation names for OID %u in database \"%s\" do not match: old name \"%s.%s" +"\", new name \"%s.%s\"" msgstr "" "%u OID에 대한 \"%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 " \"%s.%s\" 객체의 토스트 테이블" -#: info.c:259 +#: info.c:262 #, c-format msgid " which is the TOAST table for OID %u" msgstr " 해당 토스트 베이블의 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" +"No match found in old cluster for new relation with OID %u in database \"%s" +"\": %s" msgstr "" "새 클러스터의 %u OID (해당 데이터베이스: \"%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" +"No match found in new cluster for old relation with OID %u in database \"%s" +"\": %s" msgstr "" "옛 클러스터의 %u OID (해당 데이터베이스: \"%s\")가 새 클러스터에 없음: %s" -#: info.c:300 +#: info.c:325 #, c-format msgid "" "\n" @@ -1298,7 +1392,7 @@ msgstr "" "\n" "원본 데이터베이스:" -#: info.c:302 +#: info.c:327 #, c-format msgid "" "\n" @@ -1307,87 +1401,92 @@ 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" @@ -1395,7 +1494,7 @@ msgstr "" "윈도우즈 환경에서는 pg_upgrade 명령은 새 클러스터 데이터 디렉터리 안에서는 실" "행할 수 없음" -#: option.c:284 +#: option.c:306 #, c-format msgid "" "pg_upgrade upgrades a PostgreSQL cluster to a different major version.\n" @@ -1404,12 +1503,12 @@ 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" @@ -1418,17 +1517,17 @@ msgstr "" " pg_upgrade [옵션]...\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" @@ -1437,23 +1536,23 @@ 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 " @@ -1461,7 +1560,7 @@ msgid "" msgstr "" " -j, --jobs=NUM 동시에 작업할 프로세스 또는 쓰레드 수\n" -#: option.c:295 +#: option.c:317 #, c-format msgid "" " -k, --link link instead of copying files to new " @@ -1469,7 +1568,7 @@ msgid "" 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 " @@ -1477,36 +1576,36 @@ msgid "" 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=옵션 옛 서버에서 사용할 서버 옵션들\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=옵션 새 서버에서 사용할 서버 옵션들\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 " @@ -1515,23 +1614,23 @@ 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=이름 클러스터 슈퍼유저 (기본값 \"%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 " @@ -1539,30 +1638,52 @@ msgid "" 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 옛 클러스터의 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" @@ -1577,7 +1698,7 @@ msgstr "" " 옛 서버를 중지하고\n" " 새 서버도 중지하세요.\n" -#: option.c:316 +#: option.c:342 #, c-format msgid "" "\n" @@ -1594,7 +1715,7 @@ msgstr "" " 옛 버전의 \"bin\" 디렉터리 (-b BINDIR)\n" " 새 버전의 \"bin\" 디렉터리 (-B BINDIR)\n" -#: option.c:322 +#: option.c:348 #, c-format msgid "" "\n" @@ -1609,7 +1730,7 @@ msgstr "" "newCluster/bin\n" "또는\n" -#: option.c:327 +#: option.c:353 #, c-format msgid "" " $ export PGDATAOLD=oldCluster/data\n" @@ -1624,7 +1745,7 @@ msgstr "" " $ export PGBINNEW=newCluster/bin\n" " $ pg_upgrade\n" -#: option.c:333 +#: option.c:359 #, c-format msgid "" " C:\\> set PGDATAOLD=oldCluster/data\n" @@ -1639,7 +1760,7 @@ msgstr "" " C:\\> set PGBINNEW=newCluster/bin\n" " C:\\> pg_upgrade\n" -#: option.c:339 +#: option.c:365 #, c-format msgid "" "\n" @@ -1648,12 +1769,12 @@ 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" @@ -1662,32 +1783,32 @@ 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 번호로 바꿈" @@ -1702,7 +1823,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" @@ -1717,12 +1838,12 @@ msgstr "하위 작업자가 비정상 종료됨: 상태값 %d" 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" @@ -1733,17 +1854,17 @@ msgstr "" "업그레이드 진행 중\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 "데이터 디렉터리 fsync 작업 중" -#: pg_upgrade.c:230 +#: pg_upgrade.c:234 #, c-format msgid "" "\n" @@ -1754,23 +1875,24 @@ msgstr "" "업그레이드 마침\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" @@ -1779,7 +1901,7 @@ msgstr "" "옛 서버가 현재 운영 되고 있습니다.\n" "먼저 서버를 중지하고 진행하세요." -#: pg_upgrade.c:391 +#: pg_upgrade.c:395 #, c-format msgid "" "There seems to be a postmaster servicing the new cluster.\n" @@ -1788,142 +1910,192 @@ msgstr "" "새 서버가 현재 운영 되고 있습니다.\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 "새 클러스터의 모든 로우에 대해서 영구 격리(freeze) 중" -#: 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와 epoch 값 설정 중" -#: 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\" 파일 fsync 실패: %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 "데이터 디렉터리 swap 중" + +#: 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\" 디렉터리를 sync 할 수 없음: %m" + +#: relfilenumber.c:441 +#, c-format +msgid "could not synchronize parent directory of \"%s\": %m" +msgstr "\"%s\" 의 상위 디렉터리를 sync 할 수 없음: %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 "\"%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" @@ -1955,7 +2127,7 @@ msgstr "\"%s\" 버전 파일 열기 실패: %m" msgid "could not parse version file \"%s\"" msgstr "\"%s\" 버전 파일 구문 분석 실패" -#: server.c:310 +#: server.c:299 #, c-format msgid "" "\n" @@ -1964,7 +2136,7 @@ msgstr "" "\n" "%s" -#: server.c:314 +#: server.c:303 #, c-format msgid "" "could not connect to source postmaster started with the command:\n" @@ -1973,7 +2145,7 @@ msgstr "" "다음 명령으로 실행된 원본 서버로 접속할 수 없음:\n" "%s" -#: server.c:318 +#: server.c:307 #, c-format msgid "" "could not connect to target postmaster started with the command:\n" @@ -1982,22 +2154,22 @@ msgstr "" "다음 명령으로 실행된 대상 서버로 접속할 수 없음:\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 "%s libpq 환경 변수가 로컬 서버 값이 아님: %s" @@ -2026,6 +2198,16 @@ msgstr "\"%s\" 테이블스페이스 디렉터리의 상태 정보를 구할 수 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" @@ -2046,11 +2228,6 @@ msgstr "ok" msgid "Checking for hash indexes" msgstr "해쉬 인덱스 확인 중" -#: version.c:121 -#, c-format -msgid "warning" -msgstr "경고" - #: version.c:123 #, c-format msgid "" @@ -2085,17 +2262,17 @@ msgstr "" " %s\n" "이 작업이 있기 전까지는 해당 인덱스는 invalid 상태로 사용할 수 없게 됩니다." -#: 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" @@ -2112,6 +2289,5 @@ msgstr "" "파일 안에 있습니다. 데이터베이스 슈퍼유저로 psql로 접속해서\n" "이 파일 안에 있는 명령을 수행하면 확장 모듈을 업데이트 할 수 있습니다." -#, c-format #~ msgid "Checking for incompatible \"jsonb\" data type" #~ msgstr "\"jsonb\" 자료형 호환성 확인 중" diff --git a/src/bin/pg_upgrade/po/ru.po b/src/bin/pg_upgrade/po/ru.po index a112757e9445d..178a13f7a7896 100644 --- a/src/bin/pg_upgrade/po/ru.po +++ b/src/bin/pg_upgrade/po/ru.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL) 10\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-08-09 07:24+0300\n" +"PO-Revision-Date: 2025-09-13 22:22+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -296,12 +296,11 @@ msgstr "" "-------------------------------" #: check.c:754 -#, fuzzy, c-format +#, c-format msgid "" "Swap mode can only upgrade clusters from PostgreSQL version %s and later." msgstr "" -"Эта утилита может производить обновление только с версии PostgreSQL %s и " -"новее." +"В режиме подмены возможно обновление только с версии PostgreSQL %s и новее." #: check.c:777 #, c-format @@ -325,16 +324,17 @@ msgstr "" "для нового кластера, чтобы продолжить." #: check.c:826 -#, fuzzy, c-format +#, c-format 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" +"Некоторая статистика утилитой pg_upgrade не переносится.\n" +"Запустив новый сервер, имеет смысл выполнить эти две команды:\n" +" %s/vacuumdb %s--all --analyze-in-stages --missing-stats-only\n" +" %s/vacuumdb %s--all --analyze-only" #: check.c:835 #, c-format @@ -400,11 +400,10 @@ msgstr "" "основным версиям." #: check.c:897 -#, fuzzy, c-format +#, c-format msgid "The option %s cannot be used for upgrades from PostgreSQL %s and later." msgstr "" -"Эта утилита может производить обновление только с версии PostgreSQL %s и " -"новее." +"Параметр %s нельзя использовать при обновлении с PostgreSQL %s и новее." #: check.c:913 #, c-format @@ -505,7 +504,7 @@ msgid "fatal" msgstr "сбой" #: check.c:1204 -#, fuzzy, c-format +#, c-format msgid "" "All non-template0 databases must allow connections, i.e. their\n" "pg_database.datallowconn must be true and pg_database.datconnlimit\n" @@ -515,12 +514,15 @@ msgid "" "connections. A list of databases with the problem is in the file:\n" " %s" msgstr "" -"Все базы, кроме template0, должны допускать подключения, то есть их свойство " -"pg_database.datallowconn должно быть true. В вашей инсталляции содержатся\n" -"базы (не считая template0), у которых pg_database.datallowconn — false.\n" -"Имеет смысл разрешить подключения для всех баз данных, кроме template0,\n" -"или удалить базы, к которым нельзя подключаться. Список баз данных\n" -"с этой проблемой содержится в файле:\n" +"Все базы, кроме template0, должны допускать подключения, то есть их " +"свойство\n" +"pg_database.datallowconn должно быть true, а pg_database.datconnlimit\n" +"отлично от -2. В вашей инсталляции имеются базы (кроме template), к которым\n" +"нельзя подключиться. Вы можете разрешить подключения для всех баз данных, " +"кроме\n" +"template0, или удалить базы, к которым нельзя подключаться. Список баз " +"данных\n" +"приведён в файле:\n" " %s" #: check.c:1229 @@ -700,9 +702,9 @@ msgstr "" " %s" #: check.c:1939 -#, fuzzy, c-format +#, c-format msgid "Checking for objects affected by Unicode update" -msgstr "Проверка обновлённых расширений" +msgstr "Проверка объектов, затрагиваемых обновлением Unicode" #: check.c:2038 version.c:121 #, c-format @@ -717,6 +719,10 @@ msgid "" "A list of potentially-affected relations is in the file:\n" " %s" msgstr "" +"В вашей инсталляции содержатся отношения, на которые может повлиять " +"обновление версии Unicode.\n" +"Список потенциально затрагиваемых отношений содержится в файле:\n" +" %s" #: check.c:2075 #, c-format @@ -758,13 +764,13 @@ msgid "Checking for new cluster configuration for subscriptions" msgstr "Проверка конфигурации нового кластера для использования подписок" #: check.c:2153 -#, fuzzy, c-format +#, c-format msgid "" "\"max_active_replication_origins\" (%d) must be greater than or equal to the " "number of subscriptions (%d) on the old cluster" msgstr "" -"значение \"max_replication_slots\" (%d) должно быть больше или равно числу " -"подписок (%d) в старом кластере" +"значение \"max_active_replication_origins\" (%d) должно быть больше или " +"равно числу подписок (%d) в старом кластере" #: check.c:2175 #, c-format @@ -1006,7 +1012,7 @@ msgstr " версия контрольных сумм данных" #: controldata.c:685 #, c-format msgid " default char signedness" -msgstr "" +msgstr " знаковость char по умолчанию" #: controldata.c:687 #, c-format @@ -1115,9 +1121,9 @@ msgstr "" #. translator: %s is the file path of the control file #: controldata.c:762 -#, fuzzy, c-format +#, c-format msgid "Adding \".old\" suffix to old \"%s\"" -msgstr "Добавление расширения \".old\" к старому файлу global/pg_control" +msgstr "Добавление расширения \".old\" к старому файлу \"%s\"" #: controldata.c:767 relfilenumber.c:393 relfilenumber.c:420 #, c-format @@ -1126,7 +1132,7 @@ msgstr "не удалось переименовать файл \"%s\" в \"%s\" #. translator: %s/%s is the file path of the control file #: controldata.c:773 -#, fuzzy, c-format +#, c-format msgid "" "\n" "If you want to start the old cluster, you will need to remove\n" @@ -1136,7 +1142,7 @@ msgid "" msgstr "" "\n" "Если вы захотите запустить старый кластер, вам нужно будет убрать\n" -"расширение \".old\" у файла %s/global/pg_control.old.\n" +"расширение \".old\" у файла \"%s/%s.old\".\n" "Так как применялся режим \"ссылок\", работа старого кластера\n" "после того, как будет запущен новый, не гарантируется." @@ -1147,11 +1153,14 @@ msgid "" "Because \"swap\" mode was used, the old cluster can no longer be\n" "safely started." msgstr "" +"\n" +"Так как использовался режим \"подмены\", старый кластер уже не может быть\n" +"запущен штатно." #: controldata.c:784 file.c:455 #, c-format msgid "unrecognized transfer mode" -msgstr "" +msgstr "нераспознанный режим передачи данных" #: dump.c:20 #, c-format @@ -1386,7 +1395,7 @@ msgstr "" "файловой системе." #: file.c:452 -#, fuzzy, c-format +#, 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 " @@ -1394,7 +1403,7 @@ msgid "" msgstr "" "не удалось создать жёсткую ссылку между старым и новым каталогами данных: " "%m\n" -"В режиме \"ссылок\" старый и новый каталоги данных должны находиться в одной " +"В режиме подмены старый и новый каталоги данных должны находиться в одной " "файловой системе." #: function.c:173 @@ -1540,7 +1549,7 @@ msgstr "неверный новый номер порта" #: option.c:230 #, c-format msgid "invalid argument for option %s" -msgstr "" +msgstr "недопустимый аргумент параметра %s" #: option.c:238 #, c-format @@ -1775,6 +1784,8 @@ msgstr "" msgid "" " --no-statistics do not import statistics from old cluster\n" msgstr "" +" --no-statistics не импортировать статистику из старого " +"кластера\n" #: option.c:332 #, c-format @@ -1783,13 +1794,15 @@ msgid "" "\"signed\" or\n" " \"unsigned\"\n" msgstr "" +" --set-char-signedness=OPTION установить для нового кластера знаковость " +"char\n" +" по умолчанию: \"signed\" или \"unsigned\"\n" #: option.c:334 -#, fuzzy, c-format +#, c-format msgid " --swap move data directories to new cluster\n" msgstr "" -" --clone клонировать, а не копировать файлы в новый " -"кластер\n" +" --swap перенести каталоги данных в новый кластер\n" #: option.c:335 #, c-format @@ -2030,9 +2043,9 @@ msgstr "" "Остановите его и попробуйте ещё раз." #: pg_upgrade.c:421 -#, fuzzy, c-format +#, c-format msgid "Setting the default char signedness for new cluster" -msgstr "Установка локали и кодировки для нового кластера" +msgstr "Установка знаковости char по умолчанию для нового кластера" #: pg_upgrade.c:449 #, c-format @@ -2118,9 +2131,9 @@ msgid "Restoring logical replication slots in the new cluster" msgstr "Восстановление слотов логической репликации в новом кластере" #: relfilenumber.c:68 -#, fuzzy, c-format +#, c-format msgid "could not synchronize file \"%s\": %m" -msgstr "не удалось создать файл \"%s\": %m" +msgstr "не удалось синхронизировать файл \"%s\": %m" #: relfilenumber.c:114 #, c-format @@ -2144,9 +2157,9 @@ msgid "Linking user relation files" msgstr "Подключение файлов пользовательских отношений ссылками" #: relfilenumber.c:126 -#, fuzzy, c-format +#, c-format msgid "Swapping data directories" -msgstr "Синхронизация каталога данных с ФС" +msgstr "Подмена каталогов данных" #: relfilenumber.c:200 #, c-format @@ -2154,34 +2167,34 @@ msgid "old database \"%s\" not found in the new cluster" msgstr "старая база данных \"%s\" не найдена в новом кластере" #: relfilenumber.c:287 -#, fuzzy, c-format +#, c-format msgid "could not stat file \"%s\": %m" -msgstr "не удалось создать файл \"%s\": %m" +msgstr "не удалось получить информацию о файле \"%s\": %m" #: relfilenumber.c:301 relfilenumber.c:305 -#, fuzzy, c-format +#, c-format msgid "could not rename directory \"%s\" to \"%s\": %m" -msgstr "не удалось переименовать файл \"%s\" в \"%s\": %m" +msgstr "не удалось переименовать каталог \"%s\" в \"%s\": %m" #: relfilenumber.c:375 relfilenumber.c:402 -#, fuzzy, c-format +#, c-format msgid "could not open directory \"%s\": %m" -msgstr "не удалось создать каталог \"%s\": %m" +msgstr "не удалось открыть каталог \"%s\": %m" #: relfilenumber.c:396 relfilenumber.c:434 -#, fuzzy, c-format +#, c-format msgid "could not read directory \"%s\": %m" -msgstr "не удалось создать каталог \"%s\": %m" +msgstr "не удалось прочитать каталог \"%s\": %m" #: relfilenumber.c:439 -#, fuzzy, c-format +#, c-format msgid "could not synchronize directory \"%s\": %m" -msgstr "не удалось создать каталог \"%s\": %m" +msgstr "не удалось синхронизировать каталог \"%s\": %m" #: relfilenumber.c:441 -#, fuzzy, c-format +#, c-format msgid "could not synchronize parent directory of \"%s\": %m" -msgstr "не удалось создать каталог \"%s\": %m" +msgstr "не удалось синхронизировать родительский каталог \"%s\": %m" #: relfilenumber.c:598 #, c-format @@ -2219,7 +2232,7 @@ msgstr "создание ссылки на \"%s\" в \"%s\"" #: relfilenumber.c:644 #, c-format msgid "should never happen" -msgstr "" +msgstr "невозможный случай" #: server.c:39 server.c:143 util.c:248 util.c:278 #, c-format @@ -2332,14 +2345,14 @@ msgid "tablespace path \"%s\" is not a directory" msgstr "путь табличного пространства \"%s\" не указывает на каталог" #: task.c:216 task.c:267 task.c:282 task.c:293 -#, fuzzy, c-format +#, c-format msgid "connection failure: %s" -msgstr "не удалось подключиться к базе: %s" +msgstr "ошибка подключения: %s" #: task.c:395 #, c-format msgid "invalid socket" -msgstr "" +msgstr "неверный сокет" #: util.c:53 util.c:56 util.c:139 util.c:170 util.c:172 #, c-format diff --git a/src/bin/pg_verifybackup/po/es.po b/src/bin/pg_verifybackup/po/es.po index 0cb958f34488a..09c31d2161d31 100644 --- a/src/bin/pg_verifybackup/po/es.po +++ b/src/bin/pg_verifybackup/po/es.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_verifybackup (PostgreSQL) 16\n" +"Project-Id-Version: pg_verifybackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2023-05-22 07:17+0000\n" -"PO-Revision-Date: 2023-05-22 12:06+0200\n" +"POT-Creation-Date: 2025-09-20 09:47+0000\n" +"PO-Revision-Date: 2025-09-21 10:28+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-ayuda \n" "Language: es\n" @@ -19,26 +19,102 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 2.4.3\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " +#: ../../common/controldata_utils.c:97 +#, 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_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 "no se pudo leer el archivo «%s»: %m" + +#: ../../common/controldata_utils.c:119 +#, c-format +msgid "could not read file \"%s\": read %d of %zu" +msgstr "no se pudo leer el archivo «%s»: leídos %d de %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 "no se pudo cerrar el archivo «%s»: %m" + +#: ../../common/controldata_utils.c:168 +msgid "byte ordering mismatch" +msgstr "discordancia en orden de bytes" + +#: ../../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 "" +"posible discordancia en orden de bytes\n" +"El ordenamiento de bytes usado para almacenar el archivo pg_control puede no\n" +"coincidir con el usado por este programa. En tal caso los resultados de abajo\n" +"serían erróneos, y la instalación de PostgreSQL sería incompatible con este\n" +"directorio de datos." + +#: ../../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 "no se pudo abrir el archivo «%s»: %m" + +#: ../../common/controldata_utils.c:249 +#, c-format +msgid "could not write file \"%s\": %m" +msgstr "no se pudo escribir el archivo «%s»: %m" + +#: ../../common/controldata_utils.c:268 +#, c-format +msgid "could not fsync file \"%s\": %m" +msgstr "no se pudo sincronizar (fsync) archivo «%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 "memoria agotada" + +#: ../../common/cryptohash.c:266 ../../common/cryptohash.c:272 +#: ../../common/cryptohash_openssl.c:368 ../../common/cryptohash_openssl.c:376 +msgid "success" +msgstr "éxito" + +#: ../../common/cryptohash.c:268 ../../common/cryptohash_openssl.c:370 +msgid "destination buffer too small" +msgstr "el búfer de destino es demasiado pequeño" + +#: ../../common/cryptohash_openssl.c:372 +msgid "OpenSSL failure" +msgstr "falla de openSSL" + #: ../../common/fe_memutils.c:35 ../../common/fe_memutils.c:75 #: ../../common/fe_memutils.c:98 ../../common/fe_memutils.c:161 #, c-format @@ -50,390 +126,603 @@ msgstr "memoria agotada\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "no se puede duplicar un puntero nulo (error interno)\n" -#: ../../common/jsonapi.c:1144 +#: ../../common/jsonapi.c:2435 +msgid "Recursive descent parser cannot use incremental lexer." +msgstr "El parser recursivo descendiente no puede usar el lexer incremental." + +#: ../../common/jsonapi.c:2437 +msgid "Incremental parser requires incremental lexer." +msgstr "El parser incremental requiere el lexer incremental." + +#: ../../common/jsonapi.c:2439 +msgid "JSON nested too deep, maximum permitted depth is 6400." +msgstr "JSON anidado demasiado profundamente, profundidad máxima es 6400." + +#: ../../common/jsonapi.c:2441 #, c-format -msgid "Escape sequence \"\\%s\" is invalid." -msgstr "La secuencia de escape «%s» no es válida." +msgid "Escape sequence \"\\%.*s\" is invalid." +msgstr "La secuencia de escape «\\%.*s» no es válida." -#: ../../common/jsonapi.c:1147 +#: ../../common/jsonapi.c:2445 #, c-format msgid "Character with value 0x%02x must be escaped." msgstr "Los caracteres con valor 0x%02x deben ser escapados." -#: ../../common/jsonapi.c:1150 +#: ../../common/jsonapi.c:2449 #, c-format -msgid "Expected end of input, but found \"%s\"." -msgstr "Se esperaba el fin de la entrada, se encontró «%s»." +msgid "Expected end of input, but found \"%.*s\"." +msgstr "Se esperaba el fin de la entrada, se encontró «%.*s»." -#: ../../common/jsonapi.c:1153 +#: ../../common/jsonapi.c:2452 #, c-format -msgid "Expected array element or \"]\", but found \"%s\"." -msgstr "Se esperaba un elemento de array o «]», se encontró «%s»." +msgid "Expected array element or \"]\", but found \"%.*s\"." +msgstr "Se esperaba un elemento de array o «]», se encontró «%.*s»." -#: ../../common/jsonapi.c:1156 +#: ../../common/jsonapi.c:2455 #, c-format -msgid "Expected \",\" or \"]\", but found \"%s\"." -msgstr "Se esperaba «,» o «]», se encontró «%s»." +msgid "Expected \",\" or \"]\", but found \"%.*s\"." +msgstr "Se esperaba «,» o «]», se encontró «%.*s»." -#: ../../common/jsonapi.c:1159 +#: ../../common/jsonapi.c:2458 #, c-format -msgid "Expected \":\", but found \"%s\"." -msgstr "Se esperaba «:», se encontró «%s»." +msgid "Expected \":\", but found \"%.*s\"." +msgstr "Se esperaba «:», se encontró «%.*s»." -#: ../../common/jsonapi.c:1162 +#: ../../common/jsonapi.c:2461 #, c-format -msgid "Expected JSON value, but found \"%s\"." -msgstr "Se esperaba un valor JSON, se encontró «%s»." +msgid "Expected JSON value, but found \"%.*s\"." +msgstr "Se esperaba un valor JSON, se encontró «%.*s»." -#: ../../common/jsonapi.c:1165 +#: ../../common/jsonapi.c:2464 msgid "The input string ended unexpectedly." msgstr "La cadena de entrada terminó inesperadamente." -#: ../../common/jsonapi.c:1167 +#: ../../common/jsonapi.c:2466 #, c-format -msgid "Expected string or \"}\", but found \"%s\"." -msgstr "Se esperaba una cadena o «}», se encontró «%s»." +msgid "Expected string or \"}\", but found \"%.*s\"." +msgstr "Se esperaba una cadena o «}», se encontró «%.*s»." -#: ../../common/jsonapi.c:1170 +#: ../../common/jsonapi.c:2469 #, c-format -msgid "Expected \",\" or \"}\", but found \"%s\"." -msgstr "Se esperaba «,» o «}», se encontró «%s»." +msgid "Expected \",\" or \"}\", but found \"%.*s\"." +msgstr "Se esperaba «,» o «}», se encontró «%.*s»." -#: ../../common/jsonapi.c:1173 +#: ../../common/jsonapi.c:2472 #, c-format -msgid "Expected string, but found \"%s\"." -msgstr "Se esperaba una cadena, se encontró «%s»." +msgid "Expected string, but found \"%.*s\"." +msgstr "Se esperaba una cadena, se encontró «%.*s»." -#: ../../common/jsonapi.c:1176 +#: ../../common/jsonapi.c:2475 #, c-format -msgid "Token \"%s\" is invalid." -msgstr "El elemento «%s» no es válido." +msgid "Token \"%.*s\" is invalid." +msgstr "El elemento «%.*s» no es válido." -#: ../../common/jsonapi.c:1179 +#: ../../common/jsonapi.c:2481 msgid "\\u0000 cannot be converted to text." msgstr "\\u0000 no puede ser convertido a text." -#: ../../common/jsonapi.c:1181 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "«\\u» debe ser seguido por cuatro dígitos hexadecimales." -#: ../../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 "Los valores de escape Unicode no se pueden utilizar para valores de código superiores a 007F cuando la codificación no es 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 "El valor de escape Unicode no pudo ser traducido a la codificación del servidor %s." -#: ../../common/jsonapi.c:1190 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "Un «high-surrogate» Unicode no puede venir después de un «high-surrogate»." -#: ../../common/jsonapi.c:1192 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»." -# XXX change upstream message -#: parse_manifest.c:150 -msgid "parsing failed" -msgstr "procesamiento falló" +#: ../../common/jsonapi.c:2526 +msgid "out of memory while constructing error description" +msgstr "memoria agotada mientras se construía una descripción de error" + +#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:854 +#, c-format +msgid "could not initialize checksum of manifest" +msgstr "no se pudo inicializar la suma de verificación del manifiesto" -#: parse_manifest.c:152 +#: ../../common/parse_manifest.c:203 ../../common/parse_manifest.c:260 msgid "manifest ended unexpectedly" msgstr "el manifiesto terminó inesperadamente" -#: parse_manifest.c:191 +#: ../../common/parse_manifest.c:209 ../../common/parse_manifest.c:861 +#, c-format +msgid "could not update checksum of manifest" +msgstr "no se pudo actualizar la suma de verificación del manifiesto" + +#: ../../common/parse_manifest.c:301 msgid "unexpected object start" msgstr "inicio de objeto inesperado" -#: parse_manifest.c:226 +#: ../../common/parse_manifest.c:336 msgid "unexpected object end" msgstr "fin de objeto inesperado" -#: parse_manifest.c:255 +#: ../../common/parse_manifest.c:365 msgid "unexpected array start" msgstr "inicio de array inesperado" -#: parse_manifest.c:280 +#: ../../common/parse_manifest.c:390 msgid "unexpected array end" msgstr "fin de array inesperado" -#: parse_manifest.c:307 +#: ../../common/parse_manifest.c:417 msgid "expected version indicator" msgstr "se esperaba indicador de versión" -#: parse_manifest.c:336 +#: ../../common/parse_manifest.c:453 msgid "unrecognized top-level field" msgstr "campo de nivel superior no reconocido" -#: parse_manifest.c:355 +#: ../../common/parse_manifest.c:472 msgid "unexpected file field" msgstr "campo de archivo inesperado" -#: parse_manifest.c:369 +#: ../../common/parse_manifest.c:486 msgid "unexpected WAL range field" msgstr "campo de rango de WAL inesperado" -#: parse_manifest.c:375 +#: ../../common/parse_manifest.c:492 msgid "unexpected object field" msgstr "campo de objeto inesperado" -#: parse_manifest.c:407 +#: ../../common/parse_manifest.c:582 +msgid "unexpected scalar" +msgstr "escalar inesperado" + +#: ../../common/parse_manifest.c:608 +msgid "manifest version not an integer" +msgstr "la versión de manifiesto no es un número entero" + +#: ../../common/parse_manifest.c:612 msgid "unexpected manifest version" msgstr "versión de manifiesto inesperada" -#: parse_manifest.c:458 -msgid "unexpected scalar" -msgstr "escalar inesperado" +#: ../../common/parse_manifest.c:636 +msgid "system identifier in manifest not an integer" +msgstr "el identificador de sistema en el manifiesto no es un número entero" -#: parse_manifest.c:484 +#: ../../common/parse_manifest.c:661 msgid "missing path name" msgstr "ruta de archivo faltante" -#: parse_manifest.c:487 +#: ../../common/parse_manifest.c:664 msgid "both path name and encoded path name" msgstr "hay ambos ruta de archivo (path name) y ruta codificada (encoded path name)" -#: parse_manifest.c:489 +#: ../../common/parse_manifest.c:666 msgid "missing size" msgstr "tamaño faltante" -#: parse_manifest.c:492 +#: ../../common/parse_manifest.c:669 msgid "checksum without algorithm" msgstr "suma de comprobación sin algoritmo" -#: parse_manifest.c:506 +#: ../../common/parse_manifest.c:683 msgid "could not decode file name" msgstr "no se pudo decodificar el nombre del archivo" -#: parse_manifest.c:516 +#: ../../common/parse_manifest.c:693 msgid "file size is not an integer" msgstr "el tamaño del archivo no es un número entero" -#: parse_manifest.c:522 +#: ../../common/parse_manifest.c:699 #, c-format msgid "unrecognized checksum algorithm: \"%s\"" -msgstr "algoritmo de suma de comprobación no reconocido: \"%s\"" +msgstr "algoritmo de suma de comprobación no reconocido: «%s»" -#: parse_manifest.c:541 +#: ../../common/parse_manifest.c:718 #, c-format msgid "invalid checksum for file \"%s\": \"%s\"" -msgstr "suma de comprobación no válida para el archivo \"%s\": \"%s\"" +msgstr "suma de comprobación no válida para el archivo «%s»: «%s»" -#: parse_manifest.c:584 +#: ../../common/parse_manifest.c:761 msgid "missing timeline" msgstr "falta el timeline" -#: parse_manifest.c:586 +#: ../../common/parse_manifest.c:763 msgid "missing start LSN" msgstr "falta el LSN de inicio" -#: parse_manifest.c:588 +#: ../../common/parse_manifest.c:765 msgid "missing end LSN" msgstr "falta el LSN de término" -#: parse_manifest.c:594 +#: ../../common/parse_manifest.c:771 msgid "timeline is not an integer" msgstr "el timeline no es un número entero" -#: parse_manifest.c:597 +#: ../../common/parse_manifest.c:774 msgid "could not parse start LSN" msgstr "no se pudo interpretar el LSN de inicio" -#: parse_manifest.c:600 +#: ../../common/parse_manifest.c:777 msgid "could not parse end LSN" msgstr "no se pudo interpretar el LSN de término" -#: parse_manifest.c:661 +#: ../../common/parse_manifest.c:842 msgid "expected at least 2 lines" msgstr "esperado al menos 2 líneas" -#: parse_manifest.c:664 +#: ../../common/parse_manifest.c:845 msgid "last line not newline-terminated" msgstr "última línea no termina en nueva línea" -#: parse_manifest.c:669 -#, c-format -msgid "out of memory" -msgstr "memoria agotada" - -#: parse_manifest.c:671 -#, c-format -msgid "could not initialize checksum of manifest" -msgstr "no se pudo inicializar la suma de verificación del manifiesto" - -#: parse_manifest.c:673 -#, c-format -msgid "could not update checksum of manifest" -msgstr "no se pudo actualizar la suma de verificación del manifiesto" - -#: parse_manifest.c:676 +#: ../../common/parse_manifest.c:864 #, c-format msgid "could not finalize checksum of manifest" msgstr "no se pudo finalizar la suma de verificación del manifiesto" -#: parse_manifest.c:680 +#: ../../common/parse_manifest.c:868 #, c-format msgid "manifest has no checksum" msgstr "el manifiesto no tiene suma de comprobación" -#: parse_manifest.c:684 +#: ../../common/parse_manifest.c:872 #, c-format msgid "invalid manifest checksum: \"%s\"" -msgstr "suma de comprobación de manifiesto no válida: \"%s\"" +msgstr "suma de comprobación de manifiesto no válida: «%s»" -#: parse_manifest.c:688 +#: ../../common/parse_manifest.c:876 #, c-format msgid "manifest checksum mismatch" msgstr "discordancia en la suma de comprobación del manifiesto" -#: parse_manifest.c:703 +#: ../../common/parse_manifest.c:891 #, c-format msgid "could not parse backup manifest: %s" msgstr "no se pudo analizar el manifiesto de la copia de seguridad: %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 "no se pudo crear el archivo comprimido «%s»: %m" + +#: ../../fe_utils/astreamer_gzip.c:127 +#, c-format +msgid "could not duplicate stdout: %m" +msgstr "no se pudo duplicar stdout: %m" + +#: ../../fe_utils/astreamer_gzip.c:131 +#, c-format +msgid "could not open output file: %m" +msgstr "no se pudo abrir el archivo de salida: %m" + +#: ../../fe_utils/astreamer_gzip.c:135 +#, c-format +msgid "could not set compression level %d: %s" +msgstr "no se pudo definir el nivel de compresión %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 "esta instalación no soporta compresión con %s" + +#: ../../fe_utils/astreamer_gzip.c:167 +#, c-format +msgid "could not write to compressed file \"%s\": %s" +msgstr "no se pudo escribir al archivo comprimido «%s»: %s" + +#: ../../fe_utils/astreamer_gzip.c:191 +#, c-format +msgid "could not close compressed file \"%s\": %m" +msgstr "no se pudo cerrar el archivo comprimido «%s»: %m" + +#: ../../fe_utils/astreamer_gzip.c:269 +#, c-format +msgid "could not initialize compression library" +msgstr "no se pudo inicializar la biblioteca de compresión" + +#: ../../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 "no se pudo descomprimir datos: %s" + +#: ../../fe_utils/astreamer_lz4.c:97 +#, c-format +msgid "could not create lz4 compression context: %s" +msgstr "no se pudo crear un contexto de compresión lz4: %s" + +#: ../../fe_utils/astreamer_lz4.c:142 +#, c-format +msgid "could not write lz4 header: %s" +msgstr "no se pudo escribir la cabecera 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 "no se pudo comprimir datos: %s" + +#: ../../fe_utils/astreamer_lz4.c:243 +#, c-format +msgid "could not end lz4 compression: %s" +msgstr "no se pudo terminar la compresión lz4: %s" + +#: ../../fe_utils/astreamer_lz4.c:295 +#, c-format +msgid "could not initialize compression library: %s" +msgstr "no se pudo inicializar la biblioteca de compresión: %s" + +#: ../../fe_utils/astreamer_tar.c:244 +#, c-format +msgid "tar file trailer exceeds 2 blocks" +msgstr "la terminación del archivo tar excede de 2 bloques" + +#: ../../fe_utils/astreamer_tar.c:249 astreamer_verify.c:130 +#, c-format +msgid "unexpected state while parsing tar archive" +msgstr "se encontró un estado inesperado mientras se interpretaba el archivo tar" + +#: ../../fe_utils/astreamer_tar.c:292 +#, c-format +msgid "tar member has empty name" +msgstr "miembro de tar tiene nombre vacío" + +#: ../../fe_utils/astreamer_tar.c:326 +#, c-format +msgid "COPY stream ended before last file was finished" +msgstr "el flujo COPY terminó antes que el último archivo estuviera completo" + +#: ../../fe_utils/astreamer_zstd.c:89 +#, c-format +msgid "could not create zstd compression context" +msgstr "no se pudo restablecer el contexto de compresión zstd" + +#: ../../fe_utils/astreamer_zstd.c:95 +#, c-format +msgid "could not set zstd compression level to %d: %s" +msgstr "no se pudo definir el nivel de compresión zstd a %d: %s" + +#: ../../fe_utils/astreamer_zstd.c:109 +#, c-format +msgid "could not set compression worker count to %d: %s" +msgstr "no se pudo definir la cantidad de procesos ayudantes de compresión a %d: %s" + +#: ../../fe_utils/astreamer_zstd.c:120 +#, c-format +msgid "could not enable long-distance mode: %s" +msgstr "no se pudo habilitar el modo de larga distancia: %s" + +#: ../../fe_utils/astreamer_zstd.c:279 +#, c-format +msgid "could not create zstd decompression context" +msgstr "no se pudo crear el contexto de descompresión zstd" + +#: astreamer_verify.c:198 +#, c-format +msgid "file \"%s\" is present in archive \"%s\" but not in the manifest" +msgstr "el archivo «%s» está presente en el archivador «%s» pero no en el manifiesto" + +#: astreamer_verify.c:211 +#, c-format +msgid "file \"%s\" has size %llu in archive \"%s\" but size % in the manifest" +msgstr "el archivo «%s» tiene un tamaño %llu en el archivador «%s» pero tamaño % en el manifiesto" + +#: astreamer_verify.c:236 +#, c-format +msgid "%s: could not initialize checksum of file \"%s\"" +msgstr "%s: no se pudo inicializar la suma de verificación para el archivo «%s»" + +#: astreamer_verify.c:274 pg_verifybackup.c:1133 +#, c-format +msgid "could not update checksum of file \"%s\"" +msgstr "no se pudo actualizar la suma de verificación para el archivo «%s»" + +#: astreamer_verify.c:300 +#, c-format +msgid "file \"%s\" in archive \"%s\" should contain % bytes, but % bytes were read" +msgstr "el archivo «%s» en el archivador «%s» debería contener % bytes, pero se leyeron % bytes" + +#: astreamer_verify.c:312 pg_verifybackup.c:1179 +#, c-format +msgid "could not finalize checksum of file \"%s\"" +msgstr "no se pudo finalizar la suma de verificación para el archivo «%s»" + +#: astreamer_verify.c:320 +#, c-format +msgid "file \"%s\" in archive \"%s\" has checksum of length %d, but expected %d" +msgstr "el archivo «%s» en el archivador «%s» tiene una suma de comprobación de longitud %d, pero se esperaba %d" + +#: astreamer_verify.c:325 +#, c-format +msgid "checksum mismatch for file \"%s\" in archive \"%s\"" +msgstr "no coincide la suma de comprobación para el archivo «%s» en el archivador «%s»" + +#: astreamer_verify.c:387 +#, c-format +msgid "unexpected control file size %d, expected %d" +msgstr "tamaño del archivo de control %d inesperado, se esperaba %d" + +#: astreamer_verify.c:399 +#, c-format +msgid "%s: %s: CRC is incorrect" +msgstr "%s: %s: el valor de CRC es incorrecto" + +#: astreamer_verify.c:405 +#, c-format +msgid "%s: %s: unexpected control file version" +msgstr "%s: %s: versión de archivo de control inesperado" + +#: astreamer_verify.c:412 +#, c-format +msgid "%s: %s: manifest system identifier is %, but control file has %" +msgstr "%s: %s: el identificador de sistema del manifiesto es %, pero el archivo de control tiene %" + +#: pg_verifybackup.c:208 +#, c-format +msgid "invalid backup format \"%s\", must be \"plain\" or \"tar\"" +msgstr "formato de respaldo «%s» no válido, debe ser «plain» o «tar»" + +#: pg_verifybackup.c:229 pg_verifybackup.c:238 pg_verifybackup.c:249 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: pg_verifybackup.c:281 +#: pg_verifybackup.c:237 #, c-format msgid "no backup directory specified" msgstr "no fue especificado el directorio de respaldo" -#: pg_verifybackup.c:291 +#: pg_verifybackup.c:247 #, 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_verifybackup.c:299 +#: pg_verifybackup.c:255 #, c-format msgid "cannot specify both %s and %s" msgstr "no se puede especificar %s junto con %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 "el programa «%s» es requerido por %s, pero no pudo encontrarlo en el mismo directorio que «%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 "el programa «%s» fue encontrado por «%s», pero no es de la misma versión que %s" -#: pg_verifybackup.c:378 +#: pg_verifybackup.c:304 pg_verifybackup.c:625 #, c-format -msgid "backup successfully verified\n" -msgstr "copia de seguridad verificada correctamente\n" - -#: pg_verifybackup.c:404 pg_verifybackup.c:748 -#, c-format -msgid "could not open file \"%s\": %m" -msgstr "no se pudo abrir el archivo «%s»: %m" +msgid "could not open directory \"%s\": %m" +msgstr "no se pudo abrir el directorio «%s»: %m" -#: pg_verifybackup.c:408 +#: pg_verifybackup.c:323 pg_verifybackup.c:412 #, c-format msgid "could not stat file \"%s\": %m" msgstr "no se pudo hacer stat al archivo «%s»: %m" -#: pg_verifybackup.c:428 pg_verifybackup.c:779 +#: pg_verifybackup.c:340 #, c-format -msgid "could not read file \"%s\": %m" -msgstr "no se pudo leer el archivo «%s»: %m" +msgid "pg_waldump cannot read tar files" +msgstr "pg_waldump no puede leer archivos tar" + +#: pg_verifybackup.c:341 +#, c-format +msgid "You must use -n/--no-parse-wal when verifying a tar-format backup." +msgstr "Debe usar -n/--no-parse-wal al verificar un respaldo de formato tar." -#: pg_verifybackup.c:431 +#: pg_verifybackup.c:383 +#, c-format +msgid "backup successfully verified\n" +msgstr "copia de seguridad verificada correctamente\n" + +#: pg_verifybackup.c:442 #, c-format msgid "could not read file \"%s\": read %d of %lld" msgstr "no se pudo leer el archivo «%s»: leídos %d de %lld" -#: pg_verifybackup.c:491 +#: pg_verifybackup.c:480 #, c-format -msgid "duplicate path name in backup manifest: \"%s\"" -msgstr "nombre de ruta duplicado en el manifiesto de la copia de seguridad: \"%s\"" +msgid "could not read file \"%s\": read %lld of %lld" +msgstr "no se pudo leer el archivo «%s»: leídos %lld de %lld" -#: pg_verifybackup.c:554 pg_verifybackup.c:561 +#: pg_verifybackup.c:563 #, c-format -msgid "could not open directory \"%s\": %m" -msgstr "no se pudo abrir el directorio «%s»: %m" +msgid "duplicate path name in backup manifest: \"%s\"" +msgstr "nombre de ruta duplicado en el manifiesto de la copia de seguridad: «%s»" -#: pg_verifybackup.c:593 +#: pg_verifybackup.c:657 pg_verifybackup.c:827 #, c-format msgid "could not close directory \"%s\": %m" msgstr "no se pudo abrir el directorio «%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 "no se pudo hacer stat al archivo o directorio «%s»: %m" -#: pg_verifybackup.c:636 +#: pg_verifybackup.c:701 #, c-format -msgid "\"%s\" is not a file or directory" -msgstr "\"%s\" no es un archivo o directorio" +msgid "\"%s\" is not a regular file or directory" +msgstr "«%s» no es un archivo regular o un directorio" -#: pg_verifybackup.c:646 +#: pg_verifybackup.c:711 #, c-format msgid "\"%s\" is present on disk but not in the manifest" -msgstr "\"%s\" está presente en el disco pero no en el manifiesto" +msgstr "«%s» está presente en el disco pero no en el manifiesto" -#: 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\" tiene un tamaño %lld en el disco pero un tamaño %zu en el manifiesto" +msgid "\"%s\" has size %llu on disk but size %llu in the manifest" +msgstr "«%s» tiene un tamaño %llu en el disco pero un tamaño %llu en el manifiesto" -#: pg_verifybackup.c:689 +#: pg_verifybackup.c:765 #, c-format -msgid "\"%s\" is present in the manifest but not on disk" -msgstr "\"%s\" está presente en el manifiesto pero no en el disco" +msgid "%s: CRC is incorrect" +msgstr "%s: el valor de CRC es incorrecto" -#: pg_verifybackup.c:756 +#: pg_verifybackup.c:769 #, c-format -msgid "could not initialize checksum of file \"%s\"" -msgstr "no se pudo inicializar la suma de verificación para el archivo «%s»" +msgid "%s: unexpected control file version" +msgstr "%s: versión de archivo de control inesperado" -#: pg_verifybackup.c:768 +#: pg_verifybackup.c:774 #, c-format -msgid "could not update checksum of file \"%s\"" -msgstr "no se pudo actualizar la suma de verificación para el archivo «%s»" +msgid "%s: manifest system identifier is %, but control file has %" +msgstr "%s: el identificador de sistema del manifiesto es %, pero el archivo de control tiene %" -#: pg_verifybackup.c:785 +#: pg_verifybackup.c:906 #, c-format -msgid "could not close file \"%s\": %m" -msgstr "no se pudo cerrar el archivo «%s»: %m" +msgid "file \"%s\" is not a regular file" +msgstr "el archivo «%s» no es un archivo regular" -#: 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 "el archivo \"%s\" debe contener %zu bytes, pero se leyeron %zu bytes" +msgid "file \"%s\" is not expected in a tar format backup" +msgstr "el archivo «%s» no se esperaba en un respaldo de formato tar" -#: pg_verifybackup.c:814 +#: pg_verifybackup.c:1049 #, c-format -msgid "could not finalize checksum of file \"%s\"" -msgstr "no se pudo finalizar la suma de verificación para el archivo «%s»" +msgid "\"%s\" is present in the manifest but not on disk" +msgstr "«%s» está presente en el manifiesto pero no en el disco" + +#: pg_verifybackup.c:1121 +#, c-format +msgid "could not initialize checksum of file \"%s\"" +msgstr "no se pudo inicializar la suma de verificación para el archivo «%s»" + +#: pg_verifybackup.c:1169 +#, c-format +msgid "file \"%s\" should contain % bytes, but read %" +msgstr "el archivo «%s» debe contener % bytes, pero se leyeron %" -#: pg_verifybackup.c:822 +#: pg_verifybackup.c:1187 #, c-format msgid "file \"%s\" has checksum of length %d, but expected %d" -msgstr "el archivo \"%s\" tiene una suma de comprobación de longitud %d, pero se esperaba %d" +msgstr "el archivo «%s» tiene una suma de comprobación de longitud %d, pero se esperaba %d" -#: pg_verifybackup.c:826 +#: pg_verifybackup.c:1191 #, c-format msgid "checksum mismatch for file \"%s\"" -msgstr "no coincide la suma de comprobación para el archivo \"%s\"" +msgstr "no coincide la suma de comprobación para el archivo «%s»" -#: pg_verifybackup.c:851 +#: pg_verifybackup.c:1217 #, c-format msgid "WAL parsing failed for timeline %u" msgstr "Error al interpretar el WAL para el timeline %u" -#: pg_verifybackup.c:965 +#: pg_verifybackup.c:1351 #, c-format msgid "%*s/%s kB (%d%%) verified" msgstr "%*s/%s kB (%d%%) verificados" -#: pg_verifybackup.c:982 +#: pg_verifybackup.c:1368 #, c-format msgid "" "%s verifies a backup against the backup manifest.\n" @@ -442,7 +731,7 @@ msgstr "" "%s verifica una copia de seguridad con el fichero de manifiesto de la copia de seguridad.\n" "\n" -#: pg_verifybackup.c:983 +#: pg_verifybackup.c:1369 #, c-format msgid "" "Usage:\n" @@ -453,62 +742,67 @@ msgstr "" " %s [OPCIÓN]... BACKUPDIR\n" "\n" -#: pg_verifybackup.c:984 +#: pg_verifybackup.c:1370 #, c-format msgid "Options:\n" msgstr "Opciones:\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 salir inmediatamente en caso de 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 formato de salida (plain, tar)\n" + +#: pg_verifybackup.c:1373 #, c-format msgid " -i, --ignore=RELATIVE_PATH ignore indicated path\n" msgstr " -i, --ignore=RELATIVE_PATH ignorar la ruta indicada\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 usar la ruta especificada para el manifiesto\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 no intentar analizar archivos WAL\n" -#: pg_verifybackup.c:989 +#: pg_verifybackup.c:1376 #, c-format msgid " -P, --progress show progress information\n" msgstr " -P, --progress mostrar información de progreso\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 no escribir ningún mensaje, excepto errores\n" -#: pg_verifybackup.c:991 +#: pg_verifybackup.c:1378 #, c-format msgid " -s, --skip-checksums skip checksum verification\n" msgstr " -s, --skip-checksums omitir la verificación de la suma de comprobación\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 utilizar la ruta especificada para los archivos WAL\n" -#: pg_verifybackup.c:993 +#: pg_verifybackup.c:1380 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar la información de la versión, luego salir\n" -#: pg_verifybackup.c:994 +#: pg_verifybackup.c:1381 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help muestra esta ayuda, luego salir\n" -#: pg_verifybackup.c:995 +#: pg_verifybackup.c:1382 #, c-format msgid "" "\n" @@ -517,7 +811,7 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_verifybackup.c:996 +#: pg_verifybackup.c:1383 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" diff --git a/src/bin/pg_verifybackup/po/ko.po b/src/bin/pg_verifybackup/po/ko.po index acdc3da5e02cb..bf45572f7d599 100644 --- a/src/bin/pg_verifybackup/po/ko.po +++ b/src/bin/pg_verifybackup/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_verifybackup (PostgreSQL) 16\n" +"Project-Id-Version: pg_verifybackup (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2023-09-07 05:47+0000\n" -"PO-Revision-Date: 2023-05-26 13:22+0900\n" +"POT-Creation-Date: 2025-09-11 21:48+0000\n" +"PO-Revision-Date: 2025-09-10 10:25+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: PostgreSQL Korea \n" "Language: ko\n" @@ -16,26 +16,103 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\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 파일을 저장할 때 사용되는데,\n" +"이 파일의 바이트 순서 정보와 이 프로그램에서 사용하는 순서 정보가 다릅니다.\n" +"이럴 경우, 출력 결과가 바르지 않을 수 있고,\n" +"설치된 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 "\"%s\" 파일을 fsync 할 수 없음: %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 @@ -47,74 +124,86 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 중복할 수 없음 (내부 오류)\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 값은 text 형으로 변환할 수 없음." -#: ../../common/jsonapi.c:1181 +#: ../../common/jsonapi.c:2483 msgid "\"\\u\" must be followed by four hexadecimal digits." msgstr "\"\\u\" 표기법은 뒤에 4개의 16진수가 와야합니다." -#: ../../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." @@ -122,199 +211,398 @@ msgstr "" "인코딩은 UTF8이 아닐 때 유니코드 이스케이프 값은 007F 이상 코드 포인트 값으" "로 사용할 수 없음." -#: ../../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 "서버 인코딩이 %s 인 경우 해당 유니코드 이스케이프 값을 변환할 수 없음." -#: ../../common/jsonapi.c:1190 +#: ../../common/jsonapi.c:2502 msgid "Unicode high surrogate must not follow a high surrogate." msgstr "유니코드 상위 surrogate(딸림 코드)는 상위 딸림 코드 뒤에 오면 안됨." -#: ../../common/jsonapi.c:1192 +#: ../../common/jsonapi.c:2504 msgid "Unicode low surrogate must follow a high surrogate." msgstr "유니코드 상위 surrogate(딸림 코드) 뒤에는 하위 딸림 코드가 있어야 함." -#: parse_manifest.c:150 -msgid "parsing failed" -msgstr "구문 분석 실패" +#: ../../common/jsonapi.c:2526 +msgid "out of memory while constructing error description" +msgstr "오류 설명을 작성하는 중 메모리 부족" -#: parse_manifest.c:152 +#: ../../common/parse_manifest.c:159 ../../common/parse_manifest.c:854 +#, c-format +msgid "could not initialize checksum of manifest" +msgstr "메니페스트 체크섬 초기화를 할 수 없음" + +#: ../../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 "매니페이스 안 system identifier가 정수가 아님" -#: 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 "long-distance 모드를 활성화 할 수 없음: %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: manifest system identifier = %, 컨트롤 파일 = %" + +#: 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 " @@ -322,122 +610,138 @@ msgid "" 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 "tar 형식 백업을 검사할 때는 -n/--no-parse-wal 옵션을 사용하세요." + +#: pg_verifybackup.c:383 +#, c-format +msgid "backup successfully verified\n" +msgstr "백업 검사 완료\n" -#: pg_verifybackup.c:431 +#: 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: manifest system identifier = %, 컨트롤 파일 = %" -#: 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 "tar 형식 백업에 \"%s\" 파일이 없습니다" -#: 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:1121 +#, c-format +msgid "could not initialize checksum of file \"%s\"" +msgstr "\"%s\" 파일 체크섬을 초기화 할 수 없음" -#: pg_verifybackup.c:822 +#: 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 "타임라인 %u번의 WAL 분석 오류" -#: pg_verifybackup.c:965 +#: pg_verifybackup.c:1351 #, c-format msgid "%*s/%s kB (%d%%) verified" msgstr "%*s/%s kB (%d%%) 검사됨" -#: pg_verifybackup.c:982 +#: pg_verifybackup.c:1368 #, c-format msgid "" "%s verifies a backup against the backup manifest.\n" @@ -446,7 +750,7 @@ msgstr "" "%s 프로그램은 백업 메니페스트로 백업을 검사합니다.\n" "\n" -#: pg_verifybackup.c:983 +#: pg_verifybackup.c:1369 #, c-format msgid "" "Usage:\n" @@ -457,64 +761,69 @@ msgstr "" " %s [옵션]... 백업디렉터리\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=상대경로 지정한 경로 건너뜀\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=경로 메니페스트 파일 경로 지정\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=경로 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" @@ -523,7 +832,10 @@ msgstr "" "\n" "문제점 보고 주소: <%s>\n" -#: pg_verifybackup.c:996 +#: pg_verifybackup.c:1383 #, c-format msgid "%s home page: <%s>\n" msgstr "%s 홈페이지: <%s>\n" + +#~ msgid "parsing failed" +#~ msgstr "구문 분석 실패" diff --git a/src/bin/pg_verifybackup/po/ru.po b/src/bin/pg_verifybackup/po/ru.po index 64005feedfdce..a4f76ac951896 100644 --- a/src/bin/pg_verifybackup/po/ru.po +++ b/src/bin/pg_verifybackup/po/ru.po @@ -1,10 +1,10 @@ -# Alexander Lakhin , 2020, 2021, 2022, 2023. +# SPDX-FileCopyrightText: 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_verifybackup (PostgreSQL) 13\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2023-08-28 07:59+0300\n" -"PO-Revision-Date: 2023-08-30 12:42+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" +"PO-Revision-Date: 2025-09-13 19:04+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -15,26 +15,102 @@ msgstr "" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" "X-Generator: Lokalize 19.12.3\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 может не соответствовать используемому\n" +"этой программой. В этом случае результаты будут неверными и\n" +"установленный 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 "не удалось синхронизировать с ФС файл \"%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 @@ -46,74 +122,91 @@ 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." @@ -121,327 +214,549 @@ 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 "указание пути задано в обычном виде и в закодированном" +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 "линия времени задаётся не целым числом" +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:431 +#: pg_verifybackup.c:341 +#, c-format +msgid "You must use -n/--no-parse-wal when verifying a tar-format backup." +msgstr "Для проверки копии в tar-формате нужно использовать -n/--no-parse-wal." + +#: 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" +msgid "\"%s\" has size %llu on disk but size %llu in the manifest" msgstr "" -"файл \"%s\" имеет размер на диске: %lld, тогда как размер в манифесте: %zu" +"файл \"%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:1121 +#, c-format +msgid "could not initialize checksum of file \"%s\"" +msgstr "не удалось подготовить контекст контрольной суммы файла \"%s\"" -#: pg_verifybackup.c:822 +#: 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 КБ (%d%%) проверено" -#: pg_verifybackup.c:982 +#: pg_verifybackup.c:1368 #, c-format msgid "" "%s verifies a backup against the backup manifest.\n" @@ -450,7 +765,7 @@ msgstr "" "%s проверяет резервную копию, используя манифест копии.\n" "\n" -#: pg_verifybackup.c:983 +#: pg_verifybackup.c:1369 #, c-format msgid "" "Usage:\n" @@ -461,67 +776,72 @@ msgstr "" " %s [ПАРАМЕТР]... КАТАЛОГ_КОПИИ\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=ОТНОСИТЕЛЬНЫЙ_ПУТЬ\n" " игнорировать заданный путь\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=ПУТЬ использовать заданный файл манифеста\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=ПУТЬ использовать заданный путь к файлам 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" @@ -530,10 +850,13 @@ msgstr "" "\n" "Об ошибках сообщайте по адресу <%s>.\n" -#: pg_verifybackup.c:996 +#: pg_verifybackup.c:1383 #, c-format msgid "%s home page: <%s>\n" msgstr "Домашняя страница %s: <%s>\n" +#~ msgid "parsing failed" +#~ msgstr "ошибка при разборе" + #~ msgid "fatal: " #~ msgstr "важно: " diff --git a/src/bin/pg_waldump/po/es.po b/src/bin/pg_waldump/po/es.po index 18864a7bcd4a6..191b808a44951 100644 --- a/src/bin/pg_waldump/po/es.po +++ b/src/bin/pg_waldump/po/es.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_waldump (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:48+0000\n" -"PO-Revision-Date: 2024-11-16 14:24+0100\n" +"POT-Creation-Date: 2025-09-20 09:48+0000\n" +"PO-Revision-Date: 2025-09-21 11:39+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -20,22 +20,22 @@ msgstr "" "X-Generator: Poedit 2.0.2\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -51,45 +51,45 @@ 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: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 "no se pudo abrir el archivo «%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 "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -454,157 +454,162 @@ msgstr "error en registro de WAL en %X/%X: %s" msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: xlogreader.c:619 +#: xlogreader.c:620 #, c-format msgid "invalid record offset at %X/%X: expected at least %u, got %u" msgstr "desplazamiento de registro no válido en %X/%X: se esperaba al menos %u, se obtuvo %u" -#: xlogreader.c:628 +#: xlogreader.c:629 #, c-format msgid "contrecord is requested by %X/%X" msgstr "contrecord solicitado por %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 "largo de registro no válido en %X/%X: se esperaba al menos %u, se obtuvo %u" -#: xlogreader.c:758 +#: xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" msgstr "no hay bandera de contrecord en %X/%X" -#: xlogreader.c:771 +#: xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "largo de contrecord %u no válido (se esperaba %lld) en %X/%X" -#: xlogreader.c:1142 +#: xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "ID de gestor de recursos %u no válido en %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 "registro con prev-link %X/%X incorrecto en %X/%X" -#: xlogreader.c:1209 +#: xlogreader.c:1220 #, c-format msgid "incorrect resource manager data checksum in record at %X/%X" msgstr "suma de verificación de los datos del gestor de recursos incorrecta en el registro en %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 "número mágico %04X no válido en segmento WAL %s, LSN %X/%X, posición %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 "info bits %04X no válidos en segment WAL %s, LSN %X/%X, posición %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 "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" +#| msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" +msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" +msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %, identificador en pg_control es %" -#: xlogreader.c:1282 +#: xlogreader.c:1293 #, c-format msgid "WAL file is from different database system: incorrect segment size in page header" msgstr "archivo WAL es de un sistema de bases de datos distinto: tamaño de segmento incorrecto en cabecera de paǵina" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "WAL file is from different database system: incorrect XLOG_BLCKSZ in page header" msgstr "archivo WAL es de un sistema de bases de datos distinto: XLOG_BLCKSZ incorrecto en cabecera de paǵina" -#: 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 inesperado en segmento WAL %s, LSN %X/%X, posición %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 de timeline %u fuera de secuencia (después de %u) en segmento WAL %s, LSN %X/%X, posición %u" -#: xlogreader.c:1749 +#: xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "block_id %u fuera de orden en %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 está definido, pero no hay datos en %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 no está definido, pero el largo de los datos es %u en %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 está definido, pero posición del agujero es %u largo %u largo de imagen %u en %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 no está definido, pero posición del agujero es %u largo %u en %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 definido, pero largo de imagen de bloque es %u en %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 "ni BKPIMAGE_HAS_HOLE ni BKPIMAGE_COMPRESSED están definidos, pero el largo de imagen de bloque es %u en %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 está definido, pero no hay «rel» anterior en %X/%X " -#: xlogreader.c:1889 +#: xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "block_id %u no válido en %X/%X" -#: xlogreader.c:1956 +#: xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "registro con largo no válido en %X/%X" -#: xlogreader.c:1982 +#: xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "no se pudo localizar un bloque de respaldo con ID %d en el registro WAL" -#: xlogreader.c:2066 +#: xlogreader.c:2086 #, c-format msgid "could not restore image at %X/%X with invalid block %d specified" msgstr "no se pudo restaurar la imagen en %X/%X con bloque especificado %d no válido" -#: xlogreader.c:2073 +#: xlogreader.c:2093 #, c-format msgid "could not restore image at %X/%X with invalid state, block %d" msgstr "no se pudo restaurar la imagen en %X/%X con estado no válido, bloque %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 "no se pudo restaurar la imagen en %X/%X comprimida con %s que no está soportado por esta instalación, bloque %d" -#: xlogreader.c:2126 +#: xlogreader.c:2146 #, c-format msgid "could not restore image at %X/%X compressed with unknown method, block %d" msgstr "no se pudo restaurar la imagen en %X/%X comprimida con un método desconocido, bloque %d" -#: xlogreader.c:2134 +#: xlogreader.c:2154 #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %d" + +#, 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 "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" diff --git a/src/bin/pg_waldump/po/ko.po b/src/bin/pg_waldump/po/ko.po index 25e4c0cfe2c95..0d23eb5bd92c2 100644 --- a/src/bin/pg_waldump/po/ko.po +++ b/src/bin/pg_waldump/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pg_waldump (PostgreSQL) 17\n" +"Project-Id-Version: pg_waldump (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:48+0000\n" -"PO-Revision-Date: 2025-01-16 14:06+0900\n" +"POT-Creation-Date: 2025-09-11 21:49+0000\n" +"PO-Revision-Date: 2025-09-09 16:43+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -17,22 +17,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 "\"%s\" 파일을 fsync 할 수 없음: %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" @@ -456,66 +456,66 @@ msgstr "%X/%X 위치에서 WAL 레코드 오류: %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에서 contrecord를 필요로 함" -#: 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 "%X/%X 위치에 contrecord 플래그가 없음" -#: 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" +"identifier is %, pg_control database system identifier is %" msgstr "" -"WAL 파일이 다른 시스템의 것입니다. WAL 파일의 시스템 식별자는 %llu, " -"pg_control 의 식별자는 %llu" +"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 " @@ -524,7 +524,7 @@ msgstr "" "WAL 파일이 다른 데이터베이스 시스템의 것입니다: 페이지 헤더에 지정된 값이 잘" "못된 조각 크기임" -#: xlogreader.c:1288 +#: xlogreader.c:1299 #, c-format msgid "" "WAL file is from different database system: incorrect XLOG_BLCKSZ in page " @@ -533,12 +533,12 @@ 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 "잘못된 페이지 주소 %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, " @@ -547,22 +547,22 @@ msgstr "" "타임라인 범위 벗어남 %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 block_id는 범위를 벗어남, 위치 %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 " @@ -571,19 +571,19 @@ 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 " @@ -592,37 +592,37 @@ 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 "잘못된 block_id %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 "WAL 레코드에서 %d ID의 백업 블록 위치를 바르게 잡을 수 없음" -#: 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, " @@ -631,26 +631,23 @@ 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" -#, c-format #~ msgid "missing contrecord at %X/%X" #~ msgstr "%X/%X 위치에 contrecord 없음" -#, c-format #~ msgid "out of memory while trying to decode a record of length %u" #~ msgstr "%u 길이 레코드를 디코드 작업을 위한 메모리가 부족함" -#, c-format #~ msgid "record length %u at %X/%X too long" #~ msgstr "너무 긴 길이(%u)의 레코드가 %X/%X에 있음" diff --git a/src/bin/pg_waldump/po/ru.po b/src/bin/pg_waldump/po/ru.po index 6d27400889797..175ed305c6280 100644 --- a/src/bin/pg_waldump/po/ru.po +++ b/src/bin/pg_waldump/po/ru.po @@ -1,13 +1,13 @@ # Russian message translation file for pg_waldump # Copyright (C) 2017 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Alexander Lakhin , 2017, 2018, 2019, 2020, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2017, 2018, 2019, 2020, 2022, 2023, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pg_waldump (PostgreSQL) 10\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" "POT-Creation-Date: 2025-08-30 15:59+0300\n" -"PO-Revision-Date: 2024-09-07 08:59+0300\n" +"PO-Revision-Date: 2025-08-30 22:30+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -547,13 +547,13 @@ msgstr "" "неверные информационные биты %04X в сегменте WAL %s, LSN %X/%X, смещение %u" #: xlogreader.c:1285 -#, fuzzy, c-format +#, c-format msgid "" "WAL file is from different database system: WAL file database system " "identifier is %, pg_control database system identifier is %" msgstr "" "файл WAL принадлежит другой СУБД: в нём указан идентификатор системы БД " -"%llu, а идентификатор системы pg_control: %llu" +"%, а идентификатор системы pg_control: %" #: xlogreader.c:1293 #, c-format diff --git a/src/bin/pg_walsummary/po/es.po b/src/bin/pg_walsummary/po/es.po index 7584da24ef575..fcde0694da916 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: 2024-11-16 05:23+0000\n" +"POT-Creation-Date: 2025-09-20 09:53+0000\n" "PO-Revision-Date: 2024-08-01 12:41-0400\n" "Last-Translator: Álvaor Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -20,22 +20,22 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Vim\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -51,45 +51,45 @@ 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: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 "no se pudo abrir el archivo «%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 "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -109,22 +109,22 @@ msgstr "%s debe estar en el rango %d..%d" msgid "unrecognized sync method: %s" msgstr "método sync no reconocido: %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 "Pruebe «%s --help» para mayor información." -#: pg_walsummary.c:94 +#: pg_walsummary.c:93 #, c-format msgid "no input files specified" msgstr "no se especificaron archivos de entrada" -#: pg_walsummary.c:252 +#: pg_walsummary.c:251 #, c-format msgid "could not read file \"%s\": %m" msgstr "no se pudo leer el archivo «%s»: %m" -#: pg_walsummary.c:267 +#: pg_walsummary.c:266 #, c-format msgid "" "%s prints the contents of a WAL summary file.\n" @@ -133,17 +133,17 @@ msgstr "" "%s imprime el contenido de un archivo de resumen de WAL.\n" "\n" -#: pg_walsummary.c:268 +#: pg_walsummary.c:267 #, c-format msgid "Usage:\n" msgstr "Empleo:\n" -#: pg_walsummary.c:269 +#: pg_walsummary.c:268 #, c-format msgid " %s [OPTION]... FILE...\n" msgstr " %s [OPCIÓN]... ARCHIVO...\n" -#: pg_walsummary.c:270 +#: pg_walsummary.c:269 #, c-format msgid "" "\n" @@ -152,27 +152,27 @@ msgstr "" "\n" "Opciones:\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 listar números de bloque individualmente, no como rangos\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 no escribir nada, sólo procesar los archivos\n" -#: pg_walsummary.c:273 +#: pg_walsummary.c:272 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de version y salir\n" -#: pg_walsummary.c:274 +#: pg_walsummary.c:273 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: pg_walsummary.c:276 +#: pg_walsummary.c:275 #, c-format msgid "" "\n" @@ -181,7 +181,7 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: pg_walsummary.c:277 +#: pg_walsummary.c:276 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" diff --git a/src/bin/psql/po/es.po b/src/bin/psql/po/es.po index bc110c4dcad6f..17daf56970842 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-02-16 19:47+0000\n" -"PO-Revision-Date: 2024-12-07 09:06+0100\n" +"POT-Creation-Date: 2025-09-20 09:47+0000\n" +"PO-Revision-Date: 2025-09-22 11:36+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -23,22 +23,22 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -63,28 +63,28 @@ msgstr "no se pudo encontrar un «%s» para ejecutar" msgid "could not resolve path \"%s\" to absolute form: %m" msgstr "no se pudo resolver la ruta «%s» a forma absoluta: %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 "no se pudo ejecutar la orden «%s»: %m" -#: ../../common/exec.c:394 +#: ../../common/exec.c:375 #, c-format msgid "could not read from command \"%s\": %m" msgstr "no se pudo leer desde la orden «%s»: %m" -#: ../../common/exec.c:397 +#: ../../common/exec.c:378 #, c-format msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../../common/exec.c:424 +#: ../../common/exec.c:405 #, c-format msgid "%s() failed: %m" msgstr "%s() falló: %m" -#: ../../common/exec.c:562 ../../common/exec.c:607 ../../common/exec.c:699 -#: command.c:1373 command.c:3459 command.c:3508 command.c:3633 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" @@ -106,7 +106,7 @@ msgstr "no se puede duplicar un puntero nulo (error interno)\n" msgid "could not look up effective user ID %ld: %s" msgstr "no se pudo buscar el ID de usuario efectivo %ld: %s" -#: ../../common/username.c:45 command.c:616 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "el usuario no existe" @@ -167,8 +167,9 @@ msgstr "Interrumpido\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 "No se puede imprimir el contenido de la tabla: el número de celdas %lld es igual o mayor al máximo %lld.\n" +#| msgid "Cannot print table contents: number of cells %lld is equal to or exceeds maximum %lld.\n" +msgid "Cannot print table contents: number of cells % is equal to or exceeds maximum %zu.\n" +msgstr "No se puede imprimir el contenido de la tabla: el número de celdas % es igual o mayor al máximo %zu.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -177,15 +178,16 @@ msgstr "No se puede agregar un encabezado al contenido de la tabla: la cantidad #: ../../fe_utils/print.c:3272 #, c-format -msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" -msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de %lld ha sido excedida.\n" +#| msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" +msgid "Cannot add cell to table content: total cell count of % exceeded.\n" +msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de % ha sido excedida.\n" #: ../../fe_utils/print.c:3530 #, c-format msgid "invalid output format (internal error): %d" msgstr "formato de salida no válido (error interno): %d" -#: ../../fe_utils/psqlscan.l:732 +#: ../../fe_utils/psqlscan.l:723 #, c-format msgid "skipping recursive expansion of variable \"%s\"" msgstr "saltando expansión recursiva de la variable «%s»" @@ -200,302 +202,422 @@ msgstr "el argumento de la orden de shell contiene un salto de línea o retorno msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "el nombre de base de datos contiene un salto de línea o retorno de carro: «%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 "no se pudo buscar el usuario local de ID %d: %s" +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "las órdenes backslash están restringidas; sólo se permite \\unrestrict" -#: ../../port/user.c:48 ../../port/user.c:84 -#, c-format -msgid "local user with ID %d does not exist" -msgstr "no existe un usuario local con ID %d" - -#: command.c:235 +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "orden \\%s no válida" -#: command.c:237 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr "Digite \\? para obtener ayuda." -#: command.c:255 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s: argumento extra «%s» ignorado" -#: command.c:307 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "orden \\%s ignorada: use \\endif o Ctrl-C para salir del bloque \\if actual" -#: 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: falta argumento requerido" + +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "no se pudo obtener directorio home para el usuario de ID %ld: %s" -#: command.c:633 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s: no se pudo cambiar directorio a «%s»: %m" -#: command.c:657 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "No está conectado a una base de datos.\n" -#: command.c:667 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" -msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en la dirección «%s» port «%s».\n" +#: command.c:839 +#| msgid "" +#| "\n" +#| "Connection options:\n" +msgid "Connection Information" +msgstr "Información de Conexión" -#: command.c:670 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n" -msgstr "Está conectado a la base de datos «%s» como el usuario «%s» a través del socket en «%s» port «%s».\n" +#: command.c:840 describe.c:4722 +msgid "Parameter" +msgstr "Parámetro" -#: 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 "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» (dirección «%s») port «%s».\n" +#: command.c:841 describe.c:4723 +msgid "Value" +msgstr "Valor" -#: command.c:679 -#, c-format -msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" -msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» port «%s».\n" +#: command.c:844 describe.c:3874 +msgid "Database" +msgstr "Base de Datos" + +#: command.c:848 +msgid "Client User" +msgstr "Usuario Cliente" + +#: command.c:857 command.c:872 +msgid "Host Address" +msgstr "Dirección de Host" + +#: command.c:862 +#| msgid "directory" +msgid "Socket Directory" +msgstr "Directorio de Socket" + +#: command.c:868 +msgid "Host" +msgstr "Host" + +#: command.c:878 +#| msgid "Server" +msgid "Server Port" +msgstr "Puerto del Servidor" + +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 +msgid "Options" +msgstr "Opciones" + +#: command.c:886 +#| msgid "Version" +msgid "Protocol Version" +msgstr "Versión de Protocolo" + +#: command.c:890 +#| msgid "Password: " +msgid "Password Used" +msgstr "Se Usó Contraseña" + +#: command.c:891 command.c:895 command.c:903 command.c:936 +msgid "false" +msgstr "falso" + +#: command.c:891 command.c:895 command.c:903 command.c:936 +msgid "true" +msgstr "verdadero" + +#: command.c:894 +#| msgid "GSSAPI authentication not supported" +msgid "GSSAPI Authenticated" +msgstr "Autenticado con GSSAPI" -#: command.c:1069 command.c:1170 command.c:2676 +#: command.c:898 +msgid "Backend PID" +msgstr "PID de Backend" + +#: command.c:902 +#| msgid "Connection\n" +msgid "SSL Connection" +msgstr "Conexión SSL" + +#: command.c:922 +msgid "SSL Library" +msgstr "Biblioteca 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 "desconocido" + +#: command.c:925 +#| msgid "SSL error code %lu" +msgid "SSL Protocol" +msgstr "Protocolo SSL" + +#: command.c:928 +msgid "SSL Key Bits" +msgstr "Bits de Llave SSL" + +#: command.c:931 +msgid "SSL Cipher" +msgstr "Cifrado de SSL" + +#: command.c:934 +#| msgid "Compression" +msgid "SSL Compression" +msgstr "Compresión SSL" + +#: command.c:938 +msgid "ALPN" +msgstr "ALPN" + +#: command.c:939 command.c:4519 +msgid "none" +msgstr "ninguno" + +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "no hay búfer de consulta" -#: command.c:1102 command.c:5779 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "número de línea no válido: %s" -#: command.c:1248 +#: command.c:1535 msgid "No changes" msgstr "Sin cambios" -#: command.c:1333 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s: nombre de codificación no válido o procedimiento de conversión no encontrado" -#: command.c:1369 command.c:2158 command.c:3455 command.c:3653 command.c:5885 -#: 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:1376 +#: command.c:1663 msgid "There is no previous error." msgstr "No hay error anterior." -#: command.c:1489 +#: command.c:1766 command.c:1973 command.c:1999 command.c:3380 +#, c-format +#| msgid "%s not allowed in pipeline mode" +msgid "\\%s not allowed in pipeline mode" +msgstr "\\%s no se permite en modo pipeline" + +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: falta el paréntesis derecho" -#: command.c:1573 command.c:1692 command.c:1996 command.c:2010 command.c:2029 -#: command.c:2197 command.c:2438 command.c:2643 command.c:2683 +#: command.c:1948 #, c-format -msgid "\\%s: missing required argument" -msgstr "\\%s: falta argumento requerido" +msgid "\\getresults: invalid number of requested results" +msgstr "\\getresults: cantidad de resultados solicitados no válida" -#: command.c:1823 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif: no puede ocurrir después de \\else" -#: command.c:1828 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif: no hay un \\if coincidente" -#: command.c:1892 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else: no puede ocurrir después de \\else" -#: command.c:1897 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else: no hay un \\if coincidente" -#: command.c:1937 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif: no hay un \\if coincidente" -#: command.c:2093 +#: command.c:2497 msgid "Query buffer is empty." msgstr "El búfer de consulta está vacío." -#: command.c:2136 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "Ingrese nueva contraseña para usuario «%s»: " -#: command.c:2140 +#: command.c:2578 msgid "Enter it again: " msgstr "Ingrésela nuevamente: " -#: command.c:2149 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "Las contraseñas no coinciden." -#: command.c:2232 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "%s: no se pudo leer el valor para la variable" -#: command.c:2334 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "El búfer de consulta ha sido reiniciado (limpiado)." -#: command.c:2356 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "Se escribió la historia en el archivo «%s».\n" -#: command.c:2443 +#: command.c:2853 +#, c-format +msgid "\\sendpipeline must be used after \\bind or \\bind_named" +msgstr "\\sendpipeline debe ser usado después de \\bind o \\bind_named" + +#: command.c:2860 +#, c-format +#| msgid "%s not allowed in pipeline mode" +msgid "\\sendpipeline not allowed outside of pipeline mode" +msgstr "\\sendpipeline no se permite fuera del modo pipeline" + +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s: el nombre de variable de ambiente no debe contener «=»" -#: command.c:2491 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "el nombre de la función es requerido" -#: command.c:2493 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "el nombre de la vista es requerido" -#: command.c:2615 +#: command.c:3176 msgid "Timing is on." msgstr "El despliegue de duración está activado." -#: command.c:2617 +#: command.c:3178 msgid "Timing is off." msgstr "El despliegue de duración está desactivado." -#: command.c:2703 command.c:2741 command.c:4166 command.c:4169 command.c:4172 -#: command.c:4178 command.c:4180 command.c:4206 command.c:4216 command.c:4228 -#: command.c:4242 command.c:4269 command.c:4327 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: no se está actualmente en modo restringido" + +#: command.c:3218 +#, c-format +msgid "\\%s: wrong key" +msgstr "\\%s: llave errónea" + +#: 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:2730 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s: %s" -#: command.c:2802 command.c:2868 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch: valor de intervalo ese especifica más de una vez" -#: command.c:2812 command.c:2878 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch: valor de intervalo incorrecto «%s»" -#: command.c:2822 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: cantidad de iteraciones se especifica más de una vez" -#: command.c:2832 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch: cantidad de iteraciones incorrecta «%s»" -#: command.c:2842 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: mínima cantidad de filas se especifica más de una vez" -#: command.c:2852 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: cantidad mínima de filas incorrecta «%s»" -#: command.c:2859 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch: parámetro «%s» no reconocido" -#: command.c:3256 startup.c:243 startup.c:293 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "Contraseña: " -#: command.c:3261 startup.c:290 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "Contraseña para usuario %s: " -#: command.c:3317 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "No proporcione usuario, host o puerto de forma separada al usar una cadena de conexión" -#: command.c:3352 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "No existe una conexión de base de datos para poder reusar sus parámetros" -#: command.c:3659 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "Se ha mantenido la conexión anterior" -#: command.c:3665 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect: %s" -#: command.c:3721 +#: command.c:4340 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" msgstr "Ahora está conectado a la base de datos «%s» como el usuario «%s» en la dirección «%s» port «%s».\n" -#: command.c:3724 +#: 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 "Ahora está conectado a la base de datos «%s» como el usuario «%s» a través del socket en «%s» port «%s».\n" -#: command.c:3730 +#: 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 "Ahora está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» (dirección «%s») port «%s».\n" -#: command.c:3733 +#: command.c:4352 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" msgstr "Ahora está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» port «%s».\n" -#: command.c:3738 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "Ahora está conectado a la base de datos «%s» con el usuario «%s».\n" -#: command.c:3844 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s, servidor %s)\n" -#: command.c:3857 +#: command.c:4476 #, c-format msgid "" "WARNING: %s major version %s, server major version %s.\n" @@ -504,33 +626,25 @@ msgstr "" "ADVERTENCIA: %s versión mayor %s, servidor versión mayor %s.\n" " Algunas características de psql podrían no funcionar.\n" -#: command.c:3896 +#: command.c:4515 #, c-format msgid "SSL connection (protocol: %s, cipher: %s, compression: %s, ALPN: %s)\n" msgstr "Conexión SSL (protocolo: %s, cifrado: %s, compresión: %s, ALPN: %s)\n" -#: command.c:3897 command.c:3898 -msgid "unknown" -msgstr "desconocido" - -#: command.c:3899 help.c:42 +#: command.c:4518 help.c:39 msgid "off" msgstr "desactivado" -#: command.c:3899 help.c:42 +#: command.c:4518 help.c:39 msgid "on" msgstr "activado" -#: command.c:3900 -msgid "none" -msgstr "ninguno" - -#: command.c:3914 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "Conexión Cifrada GSSAPI\n" -#: command.c:3934 +#: command.c:4553 #, c-format msgid "" "WARNING: Console code page (%u) differs from Windows code page (%u)\n" @@ -543,284 +657,284 @@ msgstr "" " Vea la página de referencia de psql «Notes for Windows users»\n" " para obtener más detalles.\n" -#: command.c:4041 +#: command.c:4667 #, c-format msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number" msgstr "la variable de ambiente PSQL_EDITOR_LINENUMBER_SWITCH debe estar definida para poder especificar un número de línea" -#: command.c:4071 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "no se pudo iniciar el editor «%s»" -#: command.c:4073 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "no se pudo iniciar /bin/sh" -#: command.c:4123 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "no se pudo ubicar el directorio temporal: %s" -#: command.c:4150 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "no se pudo abrir archivo temporal «%s»: %m" -#: command.c:4486 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: abreviación ambigua «%s» coincide tanto con «%s» como con «%s»" -#: command.c:4506 +#: command.c:5132 #, c-format msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" msgstr "\\pset: formatos permitidos son aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" -#: command.c:4525 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: estilos de línea permitidos son ascii, old-ascii, unicode" -#: command.c:4540 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset: estilos de línea Unicode de borde permitidos son single, double" -#: command.c:4555 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: estilos de línea Unicode de columna permitidos son single, double" -#: command.c:4570 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset: estilos de línea Unicode de encabezado permitidos son single, double" -#: command.c:4622 +#: 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: los valores permitidos de xheader_width son «%s» (por omisión), «%s», «%s», o un número que indica el ancho exacto" -#: command.c:4639 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsep debe ser un carácter de un solo byte" -#: command.c:4644 +#: command.c:5270 #, c-format msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return" msgstr "\\pset: csv_fieldset ni puede ser una comilla doble, un salto de línea, o un retorno de carro" -#: command.c:4782 command.c:4983 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset: opción desconocida: %s" -#: command.c:4802 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "El estilo de borde es %d.\n" -#: command.c:4808 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "El ancho no está definido.\n" -#: command.c:4810 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "El ancho es %d.\n" -#: command.c:4817 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "Se ha activado el despliegue expandido.\n" -#: command.c:4819 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "El despliegue expandido se usa automáticamente.\n" -#: command.c:4821 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "Se ha desactivado el despliegue expandido.\n" -#: command.c:4828 command.c:4830 command.c:4832 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "El ancho del encabezado expandido es '%s'.\n" -#: command.c:4834 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "El ancho de encabezado expandido es %d.\n" -#: command.c:4840 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "El separador de campos para CSV es «%s».\n" -#: command.c:4848 command.c:4856 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "El separador de campos es el byte cero.\n" -#: command.c:4850 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "El separador de campos es «%s».\n" -#: command.c:4863 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "El pie por omisión está activo.\n" -#: command.c:4865 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "El pie de página por omisión está desactivado.\n" -#: command.c:4871 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "El formato de salida es %s.\n" -#: command.c:4877 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "El estilo de línea es %s.\n" -#: command.c:4884 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "Despliegue de nulos es «%s».\n" -#: command.c:4892 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "La salida numérica ajustada localmente está habilitada.\n" -#: command.c:4894 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "La salida numérica ajustada localmente está deshabilitada.\n" -#: command.c:4901 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "El paginador se usará para salida larga.\n" -#: command.c:4903 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "El paginador se usará siempre.\n" -#: command.c:4905 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "El paginador no se usará.\n" -#: command.c:4911 +#: 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" msgstr[0] "El paginador no se usará para menos de %d línea.\n" msgstr[1] "El paginador no se usará para menos de %d líneas.\n" -#: command.c:4921 command.c:4931 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "El separador de filas es el byte cero.\n" -#: command.c:4923 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "El separador de filas es .\n" -#: command.c:4925 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "El separador de filas es «%s».\n" -#: command.c:4938 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "Los atributos de tabla son «%s».\n" -#: command.c:4941 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "Los atributos de tabla han sido indefinidos.\n" -#: command.c:4948 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "El título es «%s».\n" -#: command.c:4950 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "El título ha sido indefinido.\n" -#: command.c:4957 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "Mostrar sólo filas está activado.\n" -#: command.c:4959 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "Mostrar sólo filas está desactivado.\n" -#: command.c:4965 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "El estilo Unicode de borde es «%s».\n" -#: command.c:4971 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "El estilo de línea Unicode de columna es «%s».\n" -#: command.c:4977 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "El estilo de línea Unicode de encabezado es «%s».\n" -#: command.c:5226 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: falló" -#: command.c:5264 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch no puede ser usado con una consulta vacía" -#: command.c:5296 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "no se pudo establecer un temporizador: %m" -#: command.c:5365 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (cada %gs)\n" -#: command.c:5368 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (cada %gs)\n" -#: command.c:5432 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "no se pudo esperar señales: %m" -#: command.c:5488 command.c:5495 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" @@ -833,107 +947,107 @@ msgstr "" "/************************/\n" "\n" -#: command.c:5674 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "«%s.%s» no es una vista" -#: command.c:5690 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "no se pudo interpretar el array reloptions" -#: common.c:206 +#: common.c:218 #, c-format msgid "cannot escape without active connection" msgstr "no se puede escapar sin una conexión activa" -#: common.c:247 +#: common.c:259 #, c-format msgid "shell command argument contains a newline or carriage return: \"%s\"" msgstr "el argumento de la orden de shell contiene un salto de línea o retorno de carro: «%s»" -#: common.c:351 +#: common.c:363 #, c-format msgid "connection to server was lost" msgstr "se ha perdido la conexión al servidor" -#: common.c:355 +#: common.c:367 #, c-format msgid "The connection to the server was lost. Attempting reset: " msgstr "La conexión al servidor se ha perdido. Intentando reiniciar: " -#: common.c:360 +#: common.c:373 #, c-format msgid "Failed.\n" msgstr "Falló.\n" -#: common.c:377 +#: common.c:390 #, c-format msgid "Succeeded.\n" msgstr "Con éxito.\n" -#: common.c:430 common.c:1061 +#: common.c:445 common.c:1097 #, c-format msgid "unexpected PQresultStatus: %d" msgstr "PQresultStatus no esperado: %d" -#: common.c:571 +#: common.c:606 #, c-format msgid "Time: %.3f ms\n" msgstr "Duración: %.3f ms\n" -#: common.c:586 +#: common.c:621 #, c-format msgid "Time: %.3f ms (%02d:%06.3f)\n" msgstr "Duración: %.3f ms (%02d:%06.3f)\n" -#: common.c:595 +#: common.c:630 #, c-format msgid "Time: %.3f ms (%02d:%02d:%06.3f)\n" msgstr "Duración: %.3f ms (%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 "Duración: %.3f ms (%.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 "No está conectado a una base de datos." -#: common.c:714 +#: common.c:749 #, c-format msgid "Asynchronous notification \"%s\" with payload \"%s\" received from server process with PID %d.\n" msgstr "Notificación asíncrona «%s» con carga «%s» recibida del proceso de servidor con PID %d.\n" -#: common.c:717 +#: common.c:752 #, c-format msgid "Asynchronous notification \"%s\" received from server process with PID %d.\n" msgstr "Notificación asíncrona «%s» recibida del proceso de servidor con PID %d.\n" -#: common.c:748 +#: common.c:783 #, c-format msgid "could not print result table: %m" msgstr "no se pudo mostrar la tabla de resultados: %m" -#: common.c:768 +#: common.c:803 #, c-format msgid "no rows returned for \\gset" msgstr "\\gset no retornó renglón alguno" -#: common.c:773 +#: common.c:808 #, c-format msgid "more than one row returned for \\gset" msgstr "\\gset retornó más de un renglón" -#: common.c:791 +#: common.c:826 #, c-format msgid "attempt to \\gset into specially treated variable \"%s\" ignored" msgstr "se ignoró intentó de hacer \\gset a variable con tratamiento especial «%s»" -#: common.c:1103 +#: common.c:1139 #, c-format msgid "" "/**(Single step mode: verify command)******************************************/\n" @@ -944,37 +1058,53 @@ msgstr "" "%s\n" "/**(presione enter para continuar, o x y enter para cancelar)******************/\n" -#: common.c:1180 +#: common.c:1216 #, c-format msgid "STATEMENT: %s" msgstr "SENTENCIA: %s" -#: common.c:1216 +#: common.c:1252 #, c-format msgid "unexpected transaction status (%d)" msgstr "estado de transacción inesperado (%d)" -#: common.c:1362 describe.c:2025 +#: common.c:1398 describe.c:2064 msgid "Column" msgstr "Columna" -#: 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 "Tipo" -#: common.c:1412 +#: common.c:1448 #, c-format msgid "The command has no result, or the result has no columns.\n" msgstr "La orden no tiene resultado, o el resultado no tiene columnas.\n" -#: common.c:1504 +#: common.c:1670 +#, c-format +msgid "No pending results to get" +msgstr "No hay resultados pendientes que obtener" + +#: common.c:1748 #, c-format msgid "fetching results in chunked mode failed" msgstr "la obtención de resultados en modo trozado falló" +#: common.c:1797 +#, c-format +msgid "Pipeline aborted, command did not run" +msgstr "Pipeline abortado, la orden no se ejecutó" + +#: common.c:1893 +#, c-format +#| msgid "fastpath function calls not supported in a replication connection" +msgid "COPY in a pipeline is not supported, aborting connection" +msgstr "no se soporta COPY en un pipeline, abortando conexión" + #: copy.c:98 #, c-format msgid "\\copy: arguments required" @@ -1027,11 +1157,11 @@ msgstr "" "Ingrese los datos a ser copiados seguidos de un fin de línea.\n" "Termine con un backslash y un punto, o una señal EOF." -#: copy.c:684 +#: copy.c:693 msgid "aborted because of read failure" msgstr "se abortó por un error de lectura" -#: copy.c:718 +#: copy.c:727 msgid "trying to exit copy mode" msgstr "tratando de salir del modo copy" @@ -1078,1164 +1208,1277 @@ msgstr "\\crosstabview: nombre de columna «%s» ambiguo" #: crosstabview.c:679 #, c-format msgid "\\crosstabview: column name not found: \"%s\"" -msgstr "\\crosstabview: nombre de columna «%s» no encontrado" +msgstr "\\crosstabview: nombre de columna no encontrado: «%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 "Esquema" -#: 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 "Nombre" -#: describe.c:89 describe.c:348 describe.c:366 +#: describe.c:96 describe.c:356 describe.c:374 msgid "Result data type" msgstr "Tipo de dato de salida" -#: describe.c:90 describe.c:349 describe.c:367 +#: describe.c:97 describe.c:357 describe.c:375 msgid "Argument data types" msgstr "Tipos de datos de argumentos" -#: 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 "Descripción" -#: describe.c:127 +#: describe.c:134 msgid "List of aggregate functions" msgstr "Listado de funciones de agregación" -#: describe.c:152 +#: describe.c:159 #, c-format msgid "The server (version %s) does not support access methods." msgstr "El servidor (versión %s) no soporta métodos de acceso." -#: describe.c:167 +#: describe.c:174 msgid "Index" msgstr "Indice" -#: 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 "Tabla" -#: describe.c:176 describe.c:5742 +#: describe.c:183 describe.c:5918 msgid "Handler" msgstr "Manejador" -#: describe.c:199 +#: describe.c:206 msgid "List of access methods" -msgstr "Lista de métodos de acceso" +msgstr "Listado de métodos de acceso" -#: 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 "Dueño" -#: describe.c:229 +#: describe.c:236 msgid "Location" msgstr "Ubicación" -#: describe.c:239 describe.c:3517 describe.c:3857 -msgid "Options" -msgstr "Opciones" - -#: 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 "Tamaño" -#: describe.c:263 +#: describe.c:270 msgid "List of tablespaces" msgstr "Listado de tablespaces" -#: describe.c:308 +#: describe.c:316 #, c-format -msgid "\\df only takes [anptwS+] as options" -msgstr "\\df sólo acepta las opciones [antpwS+]" +#| msgid "\\df only takes [anptwS+] as options" +msgid "\\df only takes [%s] as options" +msgstr "\\df sólo acepta las opciones [%s]" -#: describe.c:316 +#: describe.c:324 #, c-format msgid "\\df does not take a \"%c\" option with server version %s" msgstr "\\df no acepta la opción «%c» en un servidor versión %s" #. translator: "agg" is short for "aggregate" -#: describe.c:351 describe.c:369 +#: describe.c:359 describe.c:377 msgid "agg" msgstr "agg" -#: describe.c:352 describe.c:370 +#: describe.c:360 describe.c:378 msgid "window" msgstr "ventana" -#: describe.c:353 +#: describe.c:361 msgid "proc" msgstr "proc" -#: describe.c:354 describe.c:372 +#: describe.c:362 describe.c:380 msgid "func" msgstr "func" -#: describe.c:371 describe.c:1397 +#: describe.c:379 describe.c:1440 msgid "trigger" msgstr "disparador" -#: describe.c:383 +#: describe.c:394 msgid "immutable" msgstr "inmutable" -#: describe.c:384 +#: describe.c:395 msgid "stable" msgstr "estable" -#: describe.c:385 +#: describe.c:396 msgid "volatile" msgstr "volátil" -#: describe.c:386 +#: describe.c:397 msgid "Volatility" msgstr "Volatilidad" -#: describe.c:394 +#: describe.c:408 msgid "restricted" msgstr "restringida" -#: describe.c:395 +#: describe.c:409 msgid "safe" msgstr "segura" -#: describe.c:396 +#: describe.c:410 msgid "unsafe" msgstr "insegura" -#: describe.c:397 +#: describe.c:411 msgid "Parallel" msgstr "Paralelismo" -#: describe.c:402 +#: describe.c:417 msgid "definer" msgstr "definidor" -#: describe.c:403 +#: describe.c:418 msgid "invoker" msgstr "invocador" -#: describe.c:404 +#: describe.c:419 msgid "Security" msgstr "Seguridad" -#: 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 "sí" + +#: 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 "no" + +#: describe.c:422 describe.c:840 describe.c:5004 describe.c:7128 +msgid "Leakproof?" +msgstr "¿Leakproof?" + +#: describe.c:427 msgid "Language" msgstr "Lenguaje" -#: describe.c:412 describe.c:648 +#: describe.c:430 describe.c:672 msgid "Internal name" msgstr "Nombre interno" -#: describe.c:585 +#: describe.c:609 msgid "List of functions" msgstr "Listado de funciones" -#: describe.c:650 +#: describe.c:674 msgid "Elements" msgstr "Elementos" -#: describe.c:701 +#: describe.c:725 msgid "List of data types" msgstr "Listado de tipos de dato" -#: describe.c:804 +#: describe.c:829 msgid "Left arg type" msgstr "Tipo arg izq" -#: describe.c:805 +#: describe.c:830 msgid "Right arg type" msgstr "Tipo arg der" -#: describe.c:806 +#: describe.c:831 msgid "Result type" msgstr "Tipo resultado" -#: 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 "Función" -#: describe.c:891 +#: describe.c:924 msgid "List of operators" msgstr "Listado de operadores" -#: describe.c:926 +#: describe.c:961 msgid "Encoding" msgstr "Codificación" -#: describe.c:930 describe.c:934 +#: describe.c:969 describe.c:973 msgid "Locale Provider" msgstr "Proveedor de locale" -#: describe.c:938 describe.c:4936 +#: describe.c:977 describe.c:5112 msgid "Collate" msgstr "Collate" -#: 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 "Configuración regional" -#: 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 "Reglas ICU:" -#: describe.c:971 +#: describe.c:1010 msgid "Tablespace" msgstr "Tablespace" -#: describe.c:996 +#: describe.c:1035 msgid "List of databases" msgstr "Listado de base de datos" -#: describe.c:1037 describe.c:1192 describe.c:3947 +#: describe.c:1076 describe.c:1233 describe.c:4049 msgid "table" msgstr "tabla" -#: describe.c:1038 describe.c:3948 +#: describe.c:1077 describe.c:4050 msgid "view" msgstr "vista" -#: describe.c:1039 describe.c:3949 +#: describe.c:1078 describe.c:4051 msgid "materialized view" msgstr "vista materializada" -#: describe.c:1040 describe.c:1194 describe.c:3951 +#: describe.c:1079 describe.c:1235 describe.c:4053 msgid "sequence" msgstr "secuencia" -#: describe.c:1041 describe.c:3953 +#: describe.c:1080 describe.c:4055 msgid "foreign table" msgstr "tabla foránea" -#: describe.c:1042 describe.c:3954 describe.c:4165 +#: describe.c:1081 describe.c:4056 describe.c:4320 msgid "partitioned table" msgstr "tabla particionada" -#: describe.c:1058 +#: describe.c:1097 msgid "Column privileges" msgstr "Privilegios de acceso a columnas" -#: describe.c:1089 describe.c:1123 +#: describe.c:1128 describe.c:1162 msgid "Policies" msgstr "Políticas" -#: describe.c:1151 describe.c:4570 describe.c:6667 +#: describe.c:1190 describe.c:4735 describe.c:6884 msgid "Access privileges" msgstr "Privilegios" -#: describe.c:1196 +#: describe.c:1237 msgid "function" msgstr "función" -#: describe.c:1198 +#: describe.c:1239 msgid "type" msgstr "tipo" -#: describe.c:1200 +#: describe.c:1241 msgid "schema" msgstr "esquema" -#: describe.c:1222 +#: describe.c:1243 +#| msgid "large object %u" +msgid "large object" +msgstr "objeto grande" + +#: describe.c:1265 msgid "Default access privileges" msgstr "Privilegios de acceso por omisión" -#: describe.c:1266 +#: describe.c:1309 msgid "Object" msgstr "Objeto" -#: describe.c:1280 +#: describe.c:1323 msgid "table constraint" msgstr "restricción de tabla" -#: describe.c:1304 +#: describe.c:1347 msgid "domain constraint" msgstr "restricción de dominio" -#: describe.c:1328 +#: describe.c:1371 msgid "operator class" msgstr "clase de operadores" -#: describe.c:1352 +#: describe.c:1395 msgid "operator family" msgstr "familia de operadores" -#: describe.c:1375 +#: describe.c:1418 msgid "rule" msgstr "regla" -#: describe.c:1420 +#: describe.c:1463 msgid "Object descriptions" msgstr "Descripciones de objetos" -#: describe.c:1485 describe.c:4072 +#: describe.c:1528 #, c-format msgid "Did not find any relation named \"%s\"." msgstr "No se encontró relación llamada «%s»." -#: describe.c:1488 describe.c:4075 +#: describe.c:1531 describe.c:4207 #, c-format msgid "Did not find any relations." msgstr "No se encontró ninguna relación." -#: describe.c:1684 +#: describe.c:1727 #, c-format msgid "Did not find any relation with OID %s." msgstr "No se encontró relación con OID %s." -#: describe.c:1732 describe.c:1756 +#: describe.c:1775 describe.c:1799 msgid "Start" msgstr "Inicio" -#: describe.c:1733 describe.c:1757 +#: describe.c:1776 describe.c:1800 msgid "Minimum" msgstr "Mínimo" -#: describe.c:1734 describe.c:1758 +#: describe.c:1777 describe.c:1801 msgid "Maximum" msgstr "Máximo" -#: describe.c:1735 describe.c:1759 +#: describe.c:1778 describe.c:1802 msgid "Increment" msgstr "Incremento" -#: 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 "sí" - -#: describe.c:1737 describe.c:1761 describe.c:1890 describe.c:4487 -#: describe.c:4825 describe.c:4964 describe.c:6711 -msgid "no" -msgstr "no" - -#: describe.c:1738 describe.c:1762 +#: describe.c:1781 describe.c:1805 msgid "Cycles?" msgstr "¿Cicla?" -#: describe.c:1739 describe.c:1763 +#: describe.c:1782 describe.c:1806 msgid "Cache" msgstr "Cache" -#: describe.c:1804 +#: describe.c:1847 #, c-format msgid "Owned by: %s" msgstr "Asociada a: %s" -#: describe.c:1808 +#: describe.c:1851 #, c-format msgid "Sequence for identity column: %s" msgstr "Secuencia para columna identidad: %s" -#: describe.c:1816 +#: describe.c:1859 #, c-format msgid "Unlogged sequence \"%s.%s\"" msgstr "Secuencia unlogged «%s.%s»" -#: describe.c:1819 +#: describe.c:1862 #, c-format msgid "Sequence \"%s.%s\"" msgstr "Secuencia «%s.%s»" -#: describe.c:1962 +#: describe.c:2005 #, c-format msgid "Unlogged table \"%s.%s\"" msgstr "Tabla unlogged «%s.%s»" -#: describe.c:1965 +#: describe.c:2008 #, c-format msgid "Table \"%s.%s\"" msgstr "Tabla «%s.%s»" -#: describe.c:1969 +#: describe.c:2012 #, c-format msgid "View \"%s.%s\"" msgstr "Vista «%s.%s»" -#: describe.c:1974 -#, c-format -msgid "Unlogged materialized view \"%s.%s\"" -msgstr "Vista materializada unlogged «%s.%s»" - -#: describe.c:1977 +#: describe.c:2016 #, c-format msgid "Materialized view \"%s.%s\"" msgstr "Vista materializada \"%s.%s\"" -#: describe.c:1982 +#: describe.c:2021 #, c-format msgid "Unlogged index \"%s.%s\"" msgstr "Índice unlogged «%s.%s»" -#: describe.c:1985 +#: describe.c:2024 #, c-format msgid "Index \"%s.%s\"" msgstr "Índice «%s.%s»" -#: describe.c:1990 +#: describe.c:2029 #, c-format msgid "Unlogged partitioned index \"%s.%s\"" msgstr "Índice particionado unlogged «%s.%s»" -#: describe.c:1993 +#: describe.c:2032 #, c-format msgid "Partitioned index \"%s.%s\"" msgstr "Índice particionado «%s.%s»" -#: describe.c:1997 +#: describe.c:2036 #, c-format msgid "TOAST table \"%s.%s\"" msgstr "Tabla TOAST «%s.%s»" -#: describe.c:2001 +#: describe.c:2040 #, c-format msgid "Composite type \"%s.%s\"" msgstr "Tipo compuesto «%s.%s»" -#: describe.c:2005 +#: describe.c:2044 #, c-format msgid "Foreign table \"%s.%s\"" msgstr "Tabla foránea «%s.%s»" -#: describe.c:2010 +#: describe.c:2049 #, c-format msgid "Unlogged partitioned table \"%s.%s\"" msgstr "Tabla unlogged particionada «%s.%s»" -#: describe.c:2013 +#: describe.c:2052 #, c-format msgid "Partitioned table \"%s.%s\"" msgstr "Tabla particionada «%s.%s»" -#: describe.c:2029 describe.c:4405 +#: describe.c:2068 describe.c:4570 msgid "Collation" msgstr "Ordenamiento" -#: describe.c:2030 describe.c:4406 +#: describe.c:2069 describe.c:4571 msgid "Nullable" msgstr "Nulable" -#: describe.c:2031 describe.c:4407 +#: describe.c:2070 describe.c:4572 msgid "Default" msgstr "Por omisión" -#: describe.c:2034 +#: describe.c:2073 msgid "Key?" msgstr "¿Llave?" -#: describe.c:2036 describe.c:4723 describe.c:4734 +#: describe.c:2075 describe.c:4888 describe.c:4899 msgid "Definition" msgstr "Definición" -#: 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 "Opciones de FDW" -#: describe.c:2040 +#: describe.c:2079 msgid "Storage" msgstr "Almacenamiento" -#: describe.c:2042 +#: describe.c:2081 msgid "Compression" msgstr "Compresión" -#: describe.c:2044 +#: describe.c:2083 msgid "Stats target" msgstr "Estadísticas" -#: describe.c:2180 +#: describe.c:2225 #, c-format msgid "Partition of: %s %s%s" msgstr "Partición de: %s %s%s" -#: describe.c:2193 +#: describe.c:2238 msgid "No partition constraint" msgstr "Sin restricción de partición" -#: describe.c:2195 +#: describe.c:2240 #, c-format msgid "Partition constraint: %s" msgstr "Restricción de partición: %s" -#: describe.c:2219 +#: describe.c:2264 #, c-format msgid "Partition key: %s" msgstr "Llave de partición: %s" -#: describe.c:2245 +#: describe.c:2290 #, c-format msgid "Owning table: \"%s.%s\"" msgstr "Tabla dueña: «%s.%s»" -#: describe.c:2314 +#: describe.c:2363 msgid "primary key, " msgstr "llave primaria, " -#: describe.c:2317 +#: describe.c:2366 msgid "unique" msgstr "único" -#: describe.c:2319 +#: describe.c:2368 msgid " nulls not distinct" msgstr " nulls no distintos" -#: describe.c:2320 +#: describe.c:2369 msgid ", " msgstr ", " -#: describe.c:2327 +#: describe.c:2376 #, c-format msgid "for table \"%s.%s\"" msgstr "de tabla «%s.%s»" -#: describe.c:2331 +#: describe.c:2380 #, c-format msgid ", predicate (%s)" msgstr ", predicado (%s)" -#: describe.c:2334 +#: describe.c:2383 msgid ", clustered" msgstr ", clustered" -#: describe.c:2337 +#: describe.c:2386 msgid ", invalid" msgstr ", no válido" -#: describe.c:2340 +#: describe.c:2389 msgid ", deferrable" msgstr ", postergable" -#: describe.c:2343 +#: describe.c:2392 msgid ", initially deferred" msgstr ", inicialmente postergada" -#: describe.c:2346 +#: describe.c:2395 msgid ", replica identity" msgstr ", identidad de replicación" -#: describe.c:2400 +#: describe.c:2456 msgid "Indexes:" msgstr "Índices:" -#: describe.c:2483 +#: describe.c:2544 msgid "Check constraints:" msgstr "Restricciones CHECK:" -#: describe.c:2551 +#: describe.c:2605 msgid "Foreign-key constraints:" msgstr "Restricciones de llave foránea:" -#: describe.c:2614 +#: describe.c:2664 msgid "Referenced by:" msgstr "Referenciada por:" -#: describe.c:2664 +#: describe.c:2713 msgid "Policies:" msgstr "Políticas:" -#: describe.c:2667 +#: describe.c:2716 msgid "Policies (forced row security enabled):" msgstr "Políticas (seguridad de registros forzada):" -#: describe.c:2670 +#: describe.c:2719 msgid "Policies (row security enabled): (none)" msgstr "Políticas (seguridad de filas activa): (ninguna)" -#: describe.c:2673 +#: describe.c:2722 msgid "Policies (forced row security enabled): (none)" msgstr "Políticas (seguridad de filas forzada): (ninguna)" -#: describe.c:2676 +#: describe.c:2725 msgid "Policies (row security disabled):" msgstr "Políticas (seguridad de filas inactiva):" -#: describe.c:2736 describe.c:2841 +#: describe.c:2785 describe.c:2890 msgid "Statistics objects:" msgstr "Objetos de estadísticas:" -#: describe.c:2943 describe.c:3096 +#: describe.c:2992 describe.c:3192 msgid "Rules:" msgstr "Reglas:" -#: describe.c:2946 +#: describe.c:2995 msgid "Disabled rules:" msgstr "Reglas deshabilitadas:" -#: describe.c:2949 +#: describe.c:2998 msgid "Rules firing always:" msgstr "Reglas que se activan siempre:" -#: describe.c:2952 +#: describe.c:3001 msgid "Rules firing on replica only:" msgstr "Reglas que se activan sólo en las réplicas:" -#: describe.c:3031 describe.c:5100 +#: describe.c:3080 describe.c:5276 msgid "Publications:" msgstr "Publicaciones:" -#: describe.c:3079 +#: describe.c:3127 +#| msgid "table constraint" +msgid "Not-null constraints:" +msgstr "Restricción not-null:" + +#: describe.c:3141 +#| msgid "No inheritance" +msgid " (local, inherited)" +msgstr " (local, heredada)" + +#: describe.c:3142 +#| msgid "No inheritance" +msgid " (inherited)" +msgstr " (heredada)" + +#: describe.c:3175 msgid "View definition:" msgstr "Definición de vista:" -#: describe.c:3242 +#: describe.c:3338 msgid "Triggers:" msgstr "Triggers:" -#: describe.c:3245 +#: describe.c:3341 msgid "Disabled user triggers:" msgstr "Disparadores de usuario deshabilitados:" -#: describe.c:3248 +#: describe.c:3344 msgid "Disabled internal triggers:" msgstr "Disparadores internos deshabilitados:" -#: describe.c:3251 +#: describe.c:3347 msgid "Triggers firing always:" msgstr "Disparadores que siempre se ejecutan:" -#: describe.c:3254 +#: describe.c:3350 msgid "Triggers firing on replica only:" msgstr "Disparadores que se ejecutan sólo en las réplicas:" -#: describe.c:3325 +#: describe.c:3421 #, c-format msgid "Server: %s" msgstr "Servidor: %s" -#: describe.c:3333 +#: describe.c:3429 #, c-format msgid "FDW options: (%s)" msgstr "Opciones de FDW: (%s)" -#: describe.c:3354 +#: describe.c:3450 msgid "Inherits" msgstr "Hereda" -#: describe.c:3419 +#: describe.c:3515 #, c-format msgid "Number of partitions: %d" msgstr "Número de particiones: %d" -#: describe.c:3428 +#: describe.c:3524 #, c-format msgid "Number of partitions: %d (Use \\d+ to list them.)" msgstr "Número de particiones: %d (Use \\d+ para listarlas.)" -#: describe.c:3430 +#: describe.c:3526 #, c-format msgid "Number of child tables: %d (Use \\d+ to list them.)" msgstr "Número de tablas hijas: %d (Use \\d+ para listarlas.)" -#: describe.c:3437 +#: describe.c:3533 msgid "Child tables" msgstr "Tablas hijas" -#: describe.c:3437 +#: describe.c:3533 msgid "Partitions" msgstr "Particiones" -#: describe.c:3470 +#: describe.c:3566 #, c-format msgid "Typed table of type: %s" msgstr "Tabla tipada de tipo: %s" -#: describe.c:3486 +#: describe.c:3584 msgid "Replica Identity" msgstr "Identidad de replicación" -#: describe.c:3499 +#: describe.c:3597 msgid "Has OIDs: yes" msgstr "Tiene OIDs: sí" -#: describe.c:3508 +#: describe.c:3606 #, c-format msgid "Access method: %s" msgstr "Método de acceso: %s" -#: describe.c:3585 +#: describe.c:3683 #, c-format msgid "Tablespace: \"%s\"" msgstr "Tablespace: «%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 ", tablespace «%s»" -#: describe.c:3670 +#: describe.c:3768 msgid "List of roles" -msgstr "Lista de roles" +msgstr "Listado de roles" -#: describe.c:3672 describe.c:3840 +#: describe.c:3770 describe.c:3938 msgid "Role name" msgstr "Nombre de rol" -#: describe.c:3673 +#: describe.c:3771 msgid "Attributes" msgstr "Atributos" -#: describe.c:3684 +#: describe.c:3782 msgid "Superuser" msgstr "Superusuario" -#: describe.c:3687 +#: describe.c:3785 msgid "No inheritance" msgstr "Sin herencia" -#: describe.c:3690 +#: describe.c:3788 msgid "Create role" msgstr "Crear rol" -#: describe.c:3693 +#: describe.c:3791 msgid "Create DB" msgstr "Crear BD" -#: describe.c:3696 +#: describe.c:3794 msgid "Cannot login" msgstr "No puede conectarse" -#: describe.c:3699 +#: describe.c:3797 msgid "Replication" msgstr "Replicación" -#: describe.c:3703 +#: describe.c:3801 msgid "Bypass RLS" msgstr "Ignora RLS" -#: describe.c:3712 +#: describe.c:3810 msgid "No connections" msgstr "Ninguna conexión" -#: describe.c:3714 +#: describe.c:3812 #, c-format msgid "%d connection" msgid_plural "%d connections" msgstr[0] "%d conexión" msgstr[1] "%d conexiones" -#: describe.c:3724 +#: describe.c:3822 msgid "Password valid until " msgstr "Constraseña válida hasta " -#: describe.c:3775 +#: describe.c:3873 msgid "Role" msgstr "Nombre de rol" -#: describe.c:3776 -msgid "Database" -msgstr "Base de Datos" - -#: describe.c:3777 +#: describe.c:3875 msgid "Settings" msgstr "Parámetros" -#: describe.c:3801 +#: describe.c:3899 #, c-format msgid "Did not find any settings for role \"%s\" and database \"%s\"." msgstr "No se encontró ningún parámetro para el rol «%s» y la base de datos «%s»." -#: describe.c:3804 +#: describe.c:3902 #, c-format msgid "Did not find any settings for role \"%s\"." msgstr "No se encontró ningún parámetro para el rol «%s»." -#: describe.c:3807 +#: describe.c:3905 #, c-format msgid "Did not find any settings." msgstr "No se encontró ningún parámetro." -#: describe.c:3811 +#: describe.c:3909 msgid "List of settings" msgstr "Listado de parámetros" -#: describe.c:3841 +#: describe.c:3939 msgid "Member of" msgstr "Miembro de" -#: describe.c:3858 +#: describe.c:3956 msgid "Grantor" msgstr "Otorgador" -#: describe.c:3884 +#: describe.c:3982 msgid "List of role grants" -msgstr "Lista de roles otorgados" +msgstr "Listado de roles otorgados" -#: describe.c:3950 +#: describe.c:4052 msgid "index" msgstr "índice" -#: describe.c:3952 +#: describe.c:4054 msgid "TOAST table" msgstr "Tabla TOAST" -#: describe.c:3955 describe.c:4166 +#: describe.c:4057 describe.c:4321 msgid "partitioned index" msgstr "índice particionado" -#: describe.c:3975 +#: describe.c:4081 msgid "permanent" msgstr "permanente" -#: describe.c:3976 +#: describe.c:4082 msgid "temporary" msgstr "temporal" -#: describe.c:3977 +#: describe.c:4083 msgid "unlogged" msgstr "unlogged" -#: describe.c:3978 +#: describe.c:4084 msgid "Persistence" msgstr "Persistencia" -#: describe.c:3994 +#: describe.c:4100 describe.c:4344 msgid "Access method" msgstr "Método de acceso" -#: describe.c:4079 +#: describe.c:4180 +#, c-format +#| msgid "Did not find any relation named \"%s\"." +msgid "Did not find any relations named \"%s\"." +msgstr "No se encontraron relaciones con el nombre «%s»." + +#: describe.c:4183 +#, c-format +#| msgid "Did not find any extension named \"%s\"." +msgid "Did not find any tables named \"%s\"." +msgstr "No se encontraron tablas con el nombre «%s»." + +#: describe.c:4186 +#, c-format +#| msgid "Did not find any extension named \"%s\"." +msgid "Did not find any indexes named \"%s\"." +msgstr "No se encontraron índices con el nombre «%s»." + +#: describe.c:4189 +#, c-format +#| msgid "Did not find any extension named \"%s\"." +msgid "Did not find any views named \"%s\"." +msgstr "No se encontraron vistas con el nombre «%s»." + +#: describe.c:4192 +#, c-format +#| msgid "Did not find any relation named \"%s\"." +msgid "Did not find any materialized views named \"%s\"." +msgstr "No se encontraron vista materializadas con el nombre «%s»." + +#: describe.c:4195 +#, c-format +#| msgid "Did not find any extension named \"%s\"." +msgid "Did not find any sequences named \"%s\"." +msgstr "No se encontraron secuencias con el nombre «%s»." + +#: describe.c:4198 +#, c-format +#| msgid "Did not find any relation named \"%s\"." +msgid "Did not find any foreign tables named \"%s\"." +msgstr "No se encontraron tablas foráneas con el nombre «%s»." + +#: describe.c:4209 +#, c-format +#| msgid "Did not find any extensions." +msgid "Did not find any tables." +msgstr "No se encontraron tablas." + +#: describe.c:4211 +#, c-format +#| msgid "Did not find any extensions." +msgid "Did not find any indexes." +msgstr "No se encontraron índices." + +#: describe.c:4213 +#, c-format +#| msgid "Did not find any settings." +msgid "Did not find any views." +msgstr "No se encontraron vistas." + +#: describe.c:4215 +#, c-format +#| msgid "define a new materialized view" +msgid "Did not find any materialized views." +msgstr "No se encontraron vistas materializadas." + +#: describe.c:4217 +#, c-format +#| msgid "Did not find any settings." +msgid "Did not find any sequences." +msgstr "No se encontraron secuencias." + +#: describe.c:4219 +#, c-format +#| msgid "Did not find any relations." +msgid "Did not find any foreign tables." +msgstr "No se encontraron tablas foráneas." + +#: describe.c:4227 msgid "List of relations" msgstr "Listado de relaciones" -#: describe.c:4127 +#: describe.c:4228 +#| msgid "List of tablespaces" +msgid "List of tables" +msgstr "Listado de tablas" + +#: describe.c:4229 +#| msgid "List of domains" +msgid "List of indexes" +msgstr "Listado de índices" + +#: describe.c:4230 +#| msgid "List of roles" +msgid "List of views" +msgstr "Listado de vistas" + +#: describe.c:4231 +#| msgid "materialized view" +msgid "List of materialized views" +msgstr "Listado de vistas materializadas" + +#: describe.c:4232 +#| msgid "List of schemas" +msgid "List of sequences" +msgstr "Listado de secuencias" + +#: describe.c:4233 describe.c:6163 +msgid "List of foreign tables" +msgstr "Listado de tablas foráneas" + +#: describe.c:4282 #, c-format msgid "The server (version %s) does not support declarative table partitioning." msgstr "El servidor (versión %s) no soporta particionamiento declarativo de tablas." -#: describe.c:4138 +#: describe.c:4293 msgid "List of partitioned indexes" msgstr "Listado de índices particionados" -#: describe.c:4140 +#: describe.c:4295 msgid "List of partitioned tables" msgstr "Listado de tablas particionadas" -#: describe.c:4144 +#: describe.c:4299 msgid "List of partitioned relations" msgstr "Listado de relaciones particionadas" -#: describe.c:4175 +#: describe.c:4330 msgid "Parent name" msgstr "Nombre del padre" -#: describe.c:4188 +#: describe.c:4350 msgid "Leaf partition size" msgstr "Tamaño de particiones hoja" -#: describe.c:4191 describe.c:4197 +#: describe.c:4353 describe.c:4359 msgid "Total size" msgstr "Tamaño total" -#: describe.c:4321 +#: describe.c:4486 msgid "Trusted" msgstr "Confiable" -#: describe.c:4330 +#: describe.c:4495 msgid "Internal language" msgstr "Lenguaje interno" -#: describe.c:4331 +#: describe.c:4496 msgid "Call handler" msgstr "Manejador de llamada" -#: describe.c:4332 describe.c:5743 +#: describe.c:4497 describe.c:5919 msgid "Validator" msgstr "Validador" -#: describe.c:4333 +#: describe.c:4498 msgid "Inline handler" msgstr "Manejador en línea" -#: describe.c:4367 +#: describe.c:4532 msgid "List of languages" -msgstr "Lista de lenguajes" +msgstr "Listado de lenguajes" -#: describe.c:4408 +#: describe.c:4573 msgid "Check" msgstr "Check" -#: describe.c:4451 +#: describe.c:4616 msgid "List of domains" msgstr "Listado de dominios" -#: describe.c:4485 +#: describe.c:4650 msgid "Source" msgstr "Fuente" -#: describe.c:4486 +#: describe.c:4651 msgid "Destination" msgstr "Destino" -#: describe.c:4488 describe.c:6712 +#: describe.c:4653 describe.c:6929 msgid "Default?" msgstr "Por omisión?" -#: describe.c:4529 +#: describe.c:4694 msgid "List of conversions" msgstr "Listado de conversiones" -#: describe.c:4557 -msgid "Parameter" -msgstr "Parámetro" - -#: describe.c:4558 -msgid "Value" -msgstr "Valor" - -#: describe.c:4565 +#: describe.c:4730 msgid "Context" msgstr "Contexto" -#: describe.c:4597 +#: describe.c:4762 msgid "List of configuration parameters" msgstr "Listado de parámetro de configuración" -#: describe.c:4599 +#: describe.c:4764 msgid "List of non-default configuration parameters" msgstr "Listado de parámetros de configuración no-default" -#: describe.c:4626 +#: describe.c:4791 #, c-format msgid "The server (version %s) does not support event triggers." msgstr "El servidor (versión %s) no soporta triggers por eventos." -#: describe.c:4646 +#: describe.c:4811 msgid "Event" msgstr "Evento" -#: describe.c:4648 +#: describe.c:4813 msgid "enabled" msgstr "activo" -#: describe.c:4649 +#: describe.c:4814 msgid "replica" msgstr "réplica" -#: describe.c:4650 +#: describe.c:4815 msgid "always" msgstr "siempre" -#: describe.c:4651 +#: describe.c:4816 msgid "disabled" msgstr "inactivo" -#: describe.c:4652 describe.c:6553 +#: describe.c:4817 describe.c:6770 msgid "Enabled" msgstr "Activo" -#: describe.c:4654 +#: describe.c:4819 msgid "Tags" msgstr "Etiquetas" -#: describe.c:4677 +#: describe.c:4842 msgid "List of event triggers" msgstr "Listado de disparadores por eventos" -#: describe.c:4704 +#: describe.c:4869 #, c-format msgid "The server (version %s) does not support extended statistics." msgstr "El servidor (versión %s) no soporta estadísticas extendidas." -#: describe.c:4741 +#: describe.c:4906 msgid "Ndistinct" msgstr "Ndistinct" -#: describe.c:4742 +#: describe.c:4907 msgid "Dependencies" msgstr "Dependencias" -#: describe.c:4752 +#: describe.c:4917 msgid "MCV" msgstr "MCV" -#: describe.c:4775 +#: describe.c:4940 msgid "List of extended statistics" -msgstr "Lista de estadísticas extendidas" +msgstr "Listado de estadísticas extendidas" -#: describe.c:4802 +#: describe.c:4967 msgid "Source type" msgstr "Tipo fuente" -#: describe.c:4803 +#: describe.c:4968 msgid "Target type" msgstr "Tipo destino" -#: describe.c:4827 +#: describe.c:4992 msgid "in assignment" msgstr "en asignación" -#: describe.c:4829 +#: describe.c:4994 msgid "Implicit?" msgstr "Implícito?" -#: describe.c:4887 +#: describe.c:5058 msgid "List of casts" msgstr "Listado de conversiones de tipo (casts)" -#: describe.c:4927 describe.c:4931 +#: describe.c:5103 describe.c:5107 msgid "Provider" msgstr "Proveedor" -#: describe.c:4965 describe.c:4970 +#: describe.c:5141 describe.c:5146 msgid "Deterministic?" msgstr "¿Determinístico?" -#: describe.c:5009 +#: describe.c:5185 msgid "List of collations" msgstr "Listado de ordenamientos" -#: describe.c:5070 +#: describe.c:5246 msgid "List of schemas" msgstr "Listado de esquemas" -#: describe.c:5186 +#: describe.c:5362 msgid "List of text search parsers" msgstr "Listado de analizadores de búsqueda en texto" -#: describe.c:5236 +#: describe.c:5412 #, c-format msgid "Did not find any text search parser named \"%s\"." msgstr "No se encontró ningún analizador de búsqueda en texto llamado «%s»." -#: describe.c:5239 +#: describe.c:5415 #, c-format msgid "Did not find any text search parsers." msgstr "No se encontró ningún analizador de búsqueda en texto." -#: describe.c:5314 +#: describe.c:5490 msgid "Start parse" msgstr "Inicio de parse" -#: describe.c:5315 +#: describe.c:5491 msgid "Method" msgstr "Método" -#: describe.c:5319 +#: describe.c:5495 msgid "Get next token" msgstr "Obtener siguiente elemento" -#: describe.c:5321 +#: describe.c:5497 msgid "End parse" msgstr "Fin de parse" -#: describe.c:5323 +#: describe.c:5499 msgid "Get headline" msgstr "Obtener encabezado" -#: describe.c:5325 +#: describe.c:5501 msgid "Get token types" msgstr "Obtener tipos de elemento" -#: describe.c:5335 +#: describe.c:5511 #, c-format msgid "Text search parser \"%s.%s\"" msgstr "Analizador de búsqueda en texto «%s.%s»" -#: describe.c:5338 +#: describe.c:5514 #, c-format msgid "Text search parser \"%s\"" msgstr "Analizador de búsqueda en texto «%s»" -#: describe.c:5357 +#: describe.c:5533 msgid "Token name" msgstr "Nombre de elemento" -#: describe.c:5370 +#: describe.c:5546 #, c-format msgid "Token types for parser \"%s.%s\"" msgstr "Tipos de elemento para el analizador «%s.%s»" -#: describe.c:5373 +#: describe.c:5549 #, c-format msgid "Token types for parser \"%s\"" msgstr "Tipos de elemento para el analizador «%s»" -#: describe.c:5417 +#: describe.c:5593 msgid "Template" msgstr "Plantilla" -#: describe.c:5418 +#: describe.c:5594 msgid "Init options" msgstr "Opciones de inicialización" -#: describe.c:5444 +#: describe.c:5620 msgid "List of text search dictionaries" msgstr "Listado de diccionarios de búsqueda en texto" -#: describe.c:5477 +#: describe.c:5653 msgid "Init" msgstr "Inicializador" -#: describe.c:5478 +#: describe.c:5654 msgid "Lexize" msgstr "Fn. análisis léx." -#: describe.c:5509 +#: describe.c:5685 msgid "List of text search templates" msgstr "Listado de plantillas de búsqueda en texto" -#: describe.c:5563 +#: describe.c:5739 msgid "List of text search configurations" msgstr "Listado de configuraciones de búsqueda en texto" -#: describe.c:5614 +#: describe.c:5790 #, c-format msgid "Did not find any text search configuration named \"%s\"." msgstr "No se encontró una configuración de búsqueda en texto llamada «%s»." -#: describe.c:5617 +#: describe.c:5793 #, c-format msgid "Did not find any text search configurations." msgstr "No se encontró una configuración de búsqueda en texto." -#: describe.c:5683 +#: describe.c:5859 msgid "Token" msgstr "Elemento" -#: describe.c:5684 +#: describe.c:5860 msgid "Dictionaries" msgstr "Diccionarios" -#: describe.c:5695 +#: describe.c:5871 #, c-format msgid "Text search configuration \"%s.%s\"" msgstr "Configuración de búsqueda en texto «%s.%s»" -#: describe.c:5698 +#: describe.c:5874 #, c-format msgid "Text search configuration \"%s\"" msgstr "Configuración de búsqueda en texto «%s»" -#: describe.c:5702 +#: describe.c:5878 #, c-format msgid "" "\n" @@ -2244,7 +2487,7 @@ msgstr "" "\n" "Analizador: «%s.%s»" -#: describe.c:5705 +#: describe.c:5881 #, c-format msgid "" "\n" @@ -2253,273 +2496,279 @@ msgstr "" "\n" "Analizador: «%s»" -#: describe.c:5784 +#: describe.c:5960 msgid "List of foreign-data wrappers" msgstr "Listado de conectores de datos externos" -#: describe.c:5812 +#: describe.c:5988 msgid "Foreign-data wrapper" msgstr "Conectores de datos externos" -#: describe.c:5830 describe.c:6017 +#: describe.c:6006 describe.c:6195 msgid "Version" msgstr "Versión" -#: describe.c:5860 +#: describe.c:6036 msgid "List of foreign servers" msgstr "Listado de servidores foráneos" -#: describe.c:5885 describe.c:5943 +#: describe.c:6061 describe.c:6119 msgid "Server" msgstr "Servidor" -#: describe.c:5886 +#: describe.c:6062 msgid "User name" msgstr "Nombre de usuario" -#: describe.c:5915 +#: describe.c:6091 msgid "List of user mappings" msgstr "Listado de mapeos de usuario" -#: describe.c:5987 -msgid "List of foreign tables" -msgstr "Listado de tablas foráneas" +#: describe.c:6196 +#| msgid "Default footer is on.\n" +msgid "Default version" +msgstr "Versión por omisión" -#: describe.c:6038 +#: describe.c:6217 msgid "List of installed extensions" msgstr "Listado de extensiones instaladas" -#: describe.c:6086 +#: describe.c:6265 #, c-format msgid "Did not find any extension named \"%s\"." msgstr "No se encontró extensión llamada «%s»." -#: describe.c:6089 +#: describe.c:6268 #, c-format msgid "Did not find any extensions." msgstr "No se encontró ninguna extensión." -#: describe.c:6133 +#: describe.c:6312 msgid "Object description" msgstr "Descripción de objeto" -#: describe.c:6142 +#: describe.c:6321 #, c-format msgid "Objects in extension \"%s\"" msgstr "Objetos en extensión «%s»" -#: describe.c:6183 +#: describe.c:6362 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "el nombre no es válido (demasiados puntos): %s" -#: describe.c:6197 +#: describe.c:6376 #, c-format msgid "cross-database references are not implemented: %s" msgstr "no están implementadas las referencias entre bases de datos: %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 "El servidor (versión %s) no soporta publicaciones." -#: describe.c:6245 describe.c:6432 +#: describe.c:6424 describe.c:6645 msgid "All tables" msgstr "Todas las tablas" -#: describe.c:6246 describe.c:6433 +#: describe.c:6425 describe.c:6646 msgid "Inserts" msgstr "Inserts" -#: describe.c:6247 describe.c:6434 +#: describe.c:6426 describe.c:6647 msgid "Updates" msgstr "Updates" -#: describe.c:6248 describe.c:6435 +#: describe.c:6427 describe.c:6648 msgid "Deletes" msgstr "Deletes" -#: describe.c:6252 describe.c:6437 +#: describe.c:6431 describe.c:6650 msgid "Truncates" msgstr "Truncates" -#: describe.c:6256 describe.c:6439 +#: describe.c:6440 describe.c:6574 describe.c:6652 +#| msgid "cannot set generated column \"%s\"" +msgid "Generated columns" +msgstr "Columnas generadas" + +#: describe.c:6444 describe.c:6654 msgid "Via root" msgstr "Via root" -#: describe.c:6277 +#: describe.c:6465 msgid "List of publications" msgstr "Listado de publicaciones" -#: describe.c:6401 +#: describe.c:6612 #, c-format msgid "Did not find any publication named \"%s\"." msgstr "No se encontró publicación llamada «%s»." -#: describe.c:6404 +#: describe.c:6615 #, c-format msgid "Did not find any publications." msgstr "No se encontró ninguna publicación." -#: describe.c:6428 +#: describe.c:6641 #, c-format msgid "Publication %s" msgstr "Publicación %s" -#: describe.c:6481 +#: describe.c:6698 msgid "Tables:" msgstr "Tablas:" -#: describe.c:6493 +#: describe.c:6710 msgid "Tables from schemas:" msgstr "Tablas de esquemas:" -#: describe.c:6538 +#: describe.c:6755 #, c-format msgid "The server (version %s) does not support subscriptions." msgstr "El servidor (versión %s) no soporta suscripciones." -#: describe.c:6554 +#: describe.c:6771 msgid "Publication" msgstr "Publicación" -#: describe.c:6563 +#: describe.c:6780 msgid "Binary" msgstr "Binario" -#: describe.c:6572 describe.c:6576 +#: describe.c:6789 describe.c:6793 msgid "Streaming" msgstr "De flujo" -#: describe.c:6584 +#: describe.c:6801 msgid "Two-phase commit" msgstr "Commit 2-fases" -#: describe.c:6585 +#: describe.c:6802 msgid "Disable on error" msgstr "Desactivar en error" -#: describe.c:6592 +#: describe.c:6809 msgid "Origin" msgstr "Origen" -#: describe.c:6593 +#: describe.c:6810 msgid "Password required" msgstr "Contraseña requerida" -#: describe.c:6594 +#: describe.c:6811 msgid "Run as owner?" msgstr "¿Ejec. como dueño?" -#: describe.c:6599 +#: describe.c:6816 msgid "Failover" msgstr "“Failover”" -#: describe.c:6604 +#: describe.c:6821 msgid "Synchronous commit" msgstr "Commit síncrono" -#: describe.c:6605 +#: describe.c:6822 msgid "Conninfo" msgstr "Conninfo" -#: describe.c:6611 +#: describe.c:6828 msgid "Skip LSN" msgstr "Saltar LSN" -#: describe.c:6637 +#: describe.c:6854 msgid "List of subscriptions" msgstr "Listado de suscripciones" -#: describe.c:6666 +#: describe.c:6883 msgid "(none)" msgstr "(ninguno)" -#: 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 "AM" -#: describe.c:6707 +#: describe.c:6924 msgid "Input type" msgstr "Tipo de entrada" -#: describe.c:6708 +#: describe.c:6925 msgid "Storage type" msgstr "Tipo de almacenamiento" -#: describe.c:6709 +#: describe.c:6926 msgid "Operator class" msgstr "Clase de operador" -#: 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 "Familia de operadores" -#: describe.c:6756 +#: describe.c:6973 msgid "List of operator classes" msgstr "Listado de clases de operador" -#: describe.c:6803 +#: describe.c:7020 msgid "Applicable types" msgstr "Tipos aplicables" -#: describe.c:6844 +#: describe.c:7061 msgid "List of operator families" msgstr "Listado de familias de operadores" -#: describe.c:6895 +#: describe.c:7112 msgid "Operator" msgstr "Operador" -#: describe.c:6896 +#: describe.c:7113 msgid "Strategy" msgstr "Estrategia" -#: describe.c:6897 +#: describe.c:7114 msgid "ordering" msgstr "ordenamiento" -#: describe.c:6898 +#: describe.c:7115 msgid "search" msgstr "búsqueda" -#: describe.c:6899 +#: describe.c:7116 msgid "Purpose" msgstr "Propósito" -#: describe.c:6904 +#: describe.c:7125 msgid "Sort opfamily" msgstr "familia de ops de ordenamiento" -#: describe.c:6942 +#: describe.c:7168 msgid "List of operators of operator families" -msgstr "Lista de operadores de familias de operadores" +msgstr "Listado de operadores de familias de operadores" -#: describe.c:6989 +#: describe.c:7215 msgid "Registered left type" msgstr "Tipo de dato izquierdo registrado" -#: describe.c:6990 +#: describe.c:7216 msgid "Registered right type" msgstr "Tipo de dato derecho registrado" -#: describe.c:6991 +#: describe.c:7217 msgid "Number" msgstr "Número" -#: describe.c:7034 +#: describe.c:7260 msgid "List of support functions of operator families" msgstr "Listado de funciones de la familia de operadores %s" -#: describe.c:7065 +#: describe.c:7291 msgid "ID" msgstr "ID" -#: describe.c:7085 +#: describe.c:7311 msgid "Large objects" msgstr "Objetos grandes" -#: help.c:63 +#: help.c:60 msgid "" "psql is the PostgreSQL interactive terminal.\n" "\n" @@ -2527,11 +2776,11 @@ msgstr "" "psql es el terminal interactivo de PostgreSQL.\n" "\n" -#: help.c:64 help.c:372 help.c:456 help.c:502 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "Empleo:\n" -#: help.c:65 +#: help.c:62 msgid "" " psql [OPTION]... [DBNAME [USERNAME]]\n" "\n" @@ -2539,27 +2788,27 @@ msgstr "" " psql [OPCIONES]... [BASE-DE-DATOS [USUARIO]]\n" "\n" -#: help.c:67 +#: help.c:64 msgid "General options:\n" msgstr "Opciones generales:\n" -#: help.c:68 +#: help.c:65 msgid " -c, --command=COMMAND run only single command (SQL or internal) and exit\n" msgstr " -c, --command=ORDEN ejecutar sólo una orden (SQL o interna) y salir\n" -#: help.c:69 +#: help.c:66 msgid " -d, --dbname=DBNAME database name to connect to\n" -msgstr " -d, --dbname=BASE base de datos a la cual conectarse\n" +msgstr " -d, --dbname=BASE base de datos a la cual conectarse\n" -#: help.c:70 +#: help.c:67 msgid " -f, --file=FILENAME execute commands from file, then exit\n" msgstr " -f, --file=ARCHIVO ejecutar órdenes desde archivo, luego salir\n" -#: help.c:71 +#: help.c:68 msgid " -l, --list list available databases, then exit\n" msgstr " -l, --list listar bases de datos, luego salir\n" -#: help.c:72 +#: help.c:69 msgid "" " -v, --set=, --variable=NAME=VALUE\n" " set psql variable NAME to VALUE\n" @@ -2569,15 +2818,15 @@ msgstr "" " definir variable de psql NOMBRE a VALOR\n" " (p.ej. -v ON_ERROR_STOP=1)\n" -#: help.c:75 +#: help.c:72 msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión, luego salir\n" -#: help.c:76 +#: help.c:73 msgid " -X, --no-psqlrc do not read startup file (~/.psqlrc)\n" msgstr " -X, --no-psqlrc no leer archivo de configuración (~/.psqlrc)\n" -#: help.c:77 +#: help.c:74 msgid "" " -1 (\"one\"), --single-transaction\n" " execute as a single transaction (if non-interactive)\n" @@ -2585,19 +2834,19 @@ msgstr "" " -1 («uno»), --single-transaction\n" " ejecuta órdenes en una única transacción\n" -#: help.c:79 +#: help.c:76 msgid " -?, --help[=options] show this help, then exit\n" msgstr " -?, --help[=opcs] mostrar esta ayuda, luego salir\n" -#: help.c:80 +#: help.c:77 msgid " --help=commands list backslash commands, then exit\n" msgstr " --help=commands listar órdenes backslash, luego salir\n" -#: help.c:81 +#: help.c:78 msgid " --help=variables list special variables, then exit\n" msgstr " --help=variables listar variables especiales, luego salir\n" -#: help.c:83 +#: help.c:80 msgid "" "\n" "Input and output options:\n" @@ -2605,47 +2854,47 @@ msgstr "" "\n" "Opciones de entrada y salida:\n" -#: help.c:84 +#: help.c:81 msgid " -a, --echo-all echo all input from script\n" msgstr " -a, --echo-all mostrar las órdenes del script\n" -#: help.c:85 +#: help.c:82 msgid " -b, --echo-errors echo failed commands\n" msgstr " -b, --echo-errors mostrar órdenes fallidas\n" -#: help.c:86 +#: help.c:83 msgid " -e, --echo-queries echo commands sent to server\n" msgstr " -e, --echo-queries mostrar órdenes enviadas al servidor\n" -#: help.c:87 +#: help.c:84 msgid " -E, --echo-hidden display queries that internal commands generate\n" msgstr " -E, --echo-hidden mostrar consultas generadas por órdenes internas\n" -#: help.c:88 +#: help.c:85 msgid " -L, --log-file=FILENAME send session log to file\n" msgstr " -L, --log-file=ARCH envía el registro de la sesión a un archivo\n" -#: help.c:89 +#: help.c:86 msgid " -n, --no-readline disable enhanced command line editing (readline)\n" msgstr " -n, --no-readline deshabilitar edición de línea de órdenes (readline)\n" -#: help.c:90 +#: help.c:87 msgid " -o, --output=FILENAME send query results to file (or |pipe)\n" msgstr " -o, --output=ARCHIVO enviar resultados de consultas a archivo (u |orden)\n" -#: help.c:91 +#: help.c:88 msgid " -q, --quiet run quietly (no messages, only query output)\n" msgstr " -q, --quiet modo silencioso (sin mensajes, sólo resultados)\n" -#: help.c:92 +#: help.c:89 msgid " -s, --single-step single-step mode (confirm each query)\n" msgstr " -s, --single-step modo paso a paso (confirmar cada consulta)\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 modo de líneas (fin de línea termina la orden SQL)\n" -#: help.c:95 +#: help.c:92 msgid "" "\n" "Output format options:\n" @@ -2653,15 +2902,15 @@ msgstr "" "\n" "Opciones de formato de salida:\n" -#: help.c:96 +#: help.c:93 msgid " -A, --no-align unaligned table output mode\n" msgstr " -A, --no-align modo de salida desalineado\n" -#: help.c:97 +#: help.c:94 msgid " --csv CSV (Comma-Separated Values) table output mode\n" msgstr " --csv modo de salida de tabla CSV (valores separados por comas)\n" -#: help.c:98 +#: help.c:95 #, c-format msgid "" " -F, --field-separator=STRING\n" @@ -2670,15 +2919,15 @@ msgstr "" " -F, --field-separator=CADENA separador de campos para salida desalineada\n" " (por omisión: «%s»)\n" -#: help.c:101 +#: help.c:98 msgid " -H, --html HTML table output mode\n" msgstr " -H, --html modo de salida en tablas 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] definir opción de impresión VAR en ARG (ver orden \\pset)\n" -#: help.c:103 +#: help.c:100 msgid "" " -R, --record-separator=STRING\n" " record separator for unaligned output (default: newline)\n" @@ -2686,21 +2935,21 @@ msgstr "" " -R, --record-separator=CADENA separador de registros para salida desalineada\n" " (por omisión: salto de línea)\n" -#: help.c:105 +#: help.c:102 msgid " -t, --tuples-only print rows only\n" msgstr " -t, --tuples-only sólo muestra registros\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=TEXTO\n" " definir atributos de marcas de tabla HTML (ancho, borde)\n" -#: help.c:107 +#: help.c:104 msgid " -x, --expanded turn on expanded table output\n" msgstr " -x, --expanded activar modo expandido de salida de tablas\n" -#: help.c:108 +#: help.c:105 msgid "" " -z, --field-separator-zero\n" " set field separator for unaligned output to zero byte\n" @@ -2708,7 +2957,7 @@ msgstr "" " -z, --field-separator-zero\n" " definir separador de campos para salida desalineada al byte cero\n" -#: help.c:110 +#: help.c:107 msgid "" " -0, --record-separator-zero\n" " set record separator for unaligned output to zero byte\n" @@ -2716,7 +2965,7 @@ msgstr "" " -0, --record-separator-zero\n" " definir separador de filas para salida desalineada al byte cero\n" -#: help.c:113 +#: help.c:110 msgid "" "\n" "Connection options:\n" @@ -2724,31 +2973,31 @@ msgstr "" "\n" "Opciones de conexión:\n" -#: help.c:114 +#: help.c:111 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" +" -h, --host=ANFITRIÓN anfitrión de la base de datos o\n" +" directorio del enchufe (socket)\n" -#: help.c:115 +#: help.c:112 msgid " -p, --port=PORT database server port\n" -msgstr " -p, --port=PUERTO puerto del servidor\n" +msgstr " -p, --port=PUERTO puerto del servidor\n" -#: help.c:116 +#: help.c:113 msgid " -U, --username=USERNAME database user name\n" -msgstr " -U, --username=USUARIO nombre usuario de la base de datos\n" +msgstr " -U, --username=USUARIO nombre usuario de la base de datos\n" -#: help.c:117 +#: help.c:114 msgid " -w, --no-password never prompt for password\n" -msgstr " -w, --no-password nunca pedir contraseña\n" +msgstr " -w, --no-password nunca pedir contraseña\n" -#: help.c:118 +#: help.c:115 msgid " -W, --password force password prompt (should happen automatically)\n" msgstr "" -" -W, --password forzar petición de contraseña\n" -" (debería ser automático)\n" +" -W, --password forzar petición de contraseña\n" +" (debería ser automático)\n" -#: help.c:120 +#: help.c:117 msgid "" "\n" "For more information, type \"\\?\" (for internal commands) or \"\\help\" (for SQL\n" @@ -2762,41 +3011,35 @@ msgstr "" "en la documentación de PostgreSQL.\n" "\n" -#: help.c:123 +#: help.c:120 #, c-format msgid "Report bugs to <%s>.\n" msgstr "Reporte de errores a <%s>.\n" -#: help.c:124 +#: help.c:121 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" -#: help.c:166 +#: help.c:163 msgid "General\n" msgstr "General\n" -#: help.c:167 -msgid " \\bind [PARAM]... set query parameters\n" -msgstr "" -" \\bind [PARAM]...\n" -" definir parámetros de consulta\n" - -#: help.c:168 +#: help.c:164 msgid " \\copyright show PostgreSQL usage and distribution terms\n" msgstr " \\copyright mostrar términos de uso y distribución de PostgreSQL\n" -#: help.c:169 +#: help.c:165 msgid " \\crosstabview [COLUMNS] execute query and display result in crosstab\n" msgstr "" " \\crosstabview [COLUMNAS]\n" " ejecutar la consulta y desplegar en «crosstab»\n" -#: help.c:170 +#: help.c:166 msgid " \\errverbose show most recent error message at maximum verbosity\n" msgstr " \\errverbose mostrar error más reciente en máxima verbosidad\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" @@ -2805,30 +3048,46 @@ msgstr "" " ejecuta la consulta (y envía el resultado a un fichero o |pipe);\n" " \\g sin argumentos es equivalente a un punto y coma\n" -#: help.c:173 +#: help.c:169 msgid " \\gdesc describe result of query, without executing it\n" msgstr " \\gdesc describir resultado de la consulta, sin ejecutarla\n" -#: help.c:174 +#: help.c:170 msgid " \\gexec execute query, then execute each value in its result\n" msgstr " \\gexec ejecutar la consulta, luego ejecuta cada valor del resultado\n" -#: help.c:175 +#: help.c:171 msgid " \\gset [PREFIX] execute query and store result in psql variables\n" msgstr "" " \\gset [PREFIJO] ejecutar la consulta y almacenar el resultado en variables\n" " de psql\n" -#: help.c:176 +#: help.c:172 msgid " \\gx [(OPTIONS)] [FILE] as \\g, but forces expanded output mode\n" msgstr "" " \\gx [(OPTIONS)] [FILE]\n" " como \\g, pero fuerza el modo de salida expandido\n" -#: help.c:177 +#: help.c:173 msgid " \\q quit psql\n" msgstr " \\q salir de psql\n" +#: help.c:174 +msgid "" +" \\restrict RESTRICT_KEY\n" +" enter restricted mode with provided key\n" +msgstr "" +" \\restrict LLAVE_RESTRICT\n" +" iniciar modo restringido con la llave indicada\n" + +#: help.c:176 +msgid "" +" \\unrestrict RESTRICT_KEY\n" +" exit restricted mode if key matches\n" +msgstr "" +" \\unrestrict LLAVE_RESTRICT\n" +" salir de modo restringido si la llave coincide\n" + #: help.c:178 msgid "" " \\watch [[i=]SEC] [c=N] [m=MIN]\n" @@ -2839,8 +3098,8 @@ msgstr "" " ejecutar consulta cada SEG segundos, hasta N veces,\n" " deteniéndose si menos de MIN registros son devueltos\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" @@ -2963,232 +3222,288 @@ msgid "Informational\n" msgstr "Informativo\n" #: help.c:221 -msgid " (options: S = show system objects, + = additional detail)\n" -msgstr " (opciones: S = desplegar objetos de sistema, + = agregar más detalle)\n" +#| msgid " (options: S = show system objects, + = additional detail)\n" +msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" +msgstr " (opciones: S = mostrar objs. de sistema, x = modo expandido, + = más detalle)\n" #: help.c:222 -msgid " \\d[S+] list tables, views, and sequences\n" -msgstr " \\d[S+] listar tablas, vistas y secuencias\n" +#| msgid " \\d[S+] list tables, views, and sequences\n" +msgid " \\d[Sx+] list tables, views, and sequences\n" +msgstr " \\d[Sx+] listar tablas, vistas y secuencias\n" #: help.c:223 -msgid " \\d[S+] NAME describe table, view, sequence, or index\n" -msgstr " \\d[S+] NOMBRE describir tabla, índice, secuencia o vista\n" +msgid " \\d[S+] NAME describe table, view, sequence, or index\n" +msgstr " \\d[S+] NOMBRE describir tabla, índice, secuencia o vista\n" #: help.c:224 -msgid " \\da[S] [PATTERN] list aggregates\n" -msgstr " \\da[S] [PATRÓN] listar funciones de agregación\n" +#| msgid " \\da[S] [PATTERN] list aggregates\n" +msgid " \\da[Sx] [PATTERN] list aggregates\n" +msgstr " \\da[Sx] [PATRÓN] listar funciones de agregación\n" #: help.c:225 -msgid " \\dA[+] [PATTERN] list access methods\n" -msgstr " \\dA[+] [PATRÓN] listar métodos de acceso\n" +#| msgid " \\dA[+] [PATTERN] list access methods\n" +msgid " \\dA[x+] [PATTERN] list access methods\n" +msgstr " \\dA[x+] [PATRÓN] listar métodos de acceso\n" #: help.c:226 -msgid " \\dAc[+] [AMPTRN [TYPEPTRN]] list operator classes\n" -msgstr " \\dAc[+] [AMPTRN [TYPEPTRN]] listar las clases de operadores\n" +#| msgid " \\dAc[+] [AMPTRN [TYPEPTRN]] list operator classes\n" +msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" +msgstr " \\dAc[x+] [AMPTRN [TYPEPTRN]] listar las clases de operadores\n" #: help.c:227 -msgid " \\dAf[+] [AMPTRN [TYPEPTRN]] list operator families\n" -msgstr " \\dAf[+] [AMPTRN [TYPEPTRN]] listar las familias de operadores\n" +#| msgid " \\dAf[+] [AMPTRN [TYPEPTRN]] list operator families\n" +msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" +msgstr " \\dAf[x+] [AMPTRN [TYPEPTRN]] listar las familias de operadores\n" #: help.c:228 -msgid " \\dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families\n" -msgstr " \\dAo[+] [AMPTRN [OPFPTRN]] listar los operadores de la familia de operadores\n" +#| msgid " \\dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families\n" +msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" +msgstr " \\dAo[x+] [AMPTRN [OPFPTRN]] listar los operadores de la familia de operadores\n" #: help.c:229 -msgid " \\dAp[+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" -msgstr " \\dAp[+] [AMPTRN [OPFPTRN]] enumera las funciones de la familia de operadores\n" +#| msgid " \\dAp[+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" +msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" +msgstr " \\dAp[x+] [AMPTRN [OPFPTRN]] enumera las funciones de la familia de operadores\n" #: help.c:230 -msgid " \\db[+] [PATTERN] list tablespaces\n" -msgstr " \\db[+] [PATRÓN] listar tablespaces\n" +#| msgid " \\db[+] [PATTERN] list tablespaces\n" +msgid " \\db[x+] [PATTERN] list tablespaces\n" +msgstr " \\db[x+] [PATRÓN] listar tablespaces\n" #: help.c:231 -msgid " \\dc[S+] [PATTERN] list conversions\n" -msgstr " \\dc[S+] [PATRÓN] listar conversiones\n" +#| msgid " \\dc[S+] [PATTERN] list conversions\n" +msgid " \\dc[Sx+] [PATTERN] list conversions\n" +msgstr " \\dc[Sx+] [PATRÓN] listar conversiones\n" #: help.c:232 -msgid " \\dconfig[+] [PATTERN] list configuration parameters\n" -msgstr " \\dconfig[+] [PATRÓN] listar parámetros de configuración\n" +#| msgid " \\dconfig[+] [PATTERN] list configuration parameters\n" +msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" +msgstr " \\dconfig[x+] [PATRÓN] listar parámetros de configuración\n" #: help.c:233 -msgid " \\dC[+] [PATTERN] list casts\n" -msgstr " \\dC[+] [PATRÓN] listar conversiones de tipo (casts)\n" +#| msgid " \\dC[+] [PATTERN] list casts\n" +msgid " \\dC[x+] [PATTERN] list casts\n" +msgstr " \\dC[x+] [PATRÓN] listar conversiones de tipo (casts)\n" #: help.c:234 -msgid " \\dd[S] [PATTERN] show object descriptions not displayed elsewhere\n" -msgstr " \\dd[S] [PATRÓN] listar comentarios de objetos que no aparecen en otra parte\n" +#| msgid " \\dd[S] [PATTERN] show object descriptions not displayed elsewhere\n" +msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" +msgstr " \\dd[Sx] [PATRÓN] listar comentarios de objetos que no aparecen en otra parte\n" #: help.c:235 -msgid " \\dD[S+] [PATTERN] list domains\n" -msgstr " \\dD[S+] [PATRÓN] listar dominios\n" +#| msgid " \\dD[S+] [PATTERN] list domains\n" +msgid " \\dD[Sx+] [PATTERN] list domains\n" +msgstr " \\dD[Sx+] [PATRÓN] listar dominios\n" #: help.c:236 -msgid " \\ddp [PATTERN] list default privileges\n" -msgstr " \\ddp [PATRÓN] listar privilegios por omisión\n" +#| msgid " \\ddp [PATTERN] list default privileges\n" +msgid " \\ddp[x] [PATTERN] list default privileges\n" +msgstr " \\ddp[x] [PATRÓN] listar privilegios por omisión\n" #: help.c:237 -msgid " \\dE[S+] [PATTERN] list foreign tables\n" -msgstr " \\dE[S+] [PATRÓN] listar tablas foráneas\n" +#| msgid " \\dE[S+] [PATTERN] list foreign tables\n" +msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" +msgstr " \\dE[S+] [PATRÓN] listar tablas foráneas\n" #: help.c:238 -msgid " \\des[+] [PATTERN] list foreign servers\n" -msgstr " \\des[+] [PATRÓN] listar servidores foráneos\n" +#| msgid " \\des[+] [PATTERN] list foreign servers\n" +msgid " \\des[x+] [PATTERN] list foreign servers\n" +msgstr " \\des[x+] [PATRÓN] listar servidores foráneos\n" #: help.c:239 -msgid " \\det[+] [PATTERN] list foreign tables\n" -msgstr " \\det[+] [PATRÓN] listar tablas foráneas\n" +#| msgid " \\det[+] [PATTERN] list foreign tables\n" +msgid " \\det[x+] [PATTERN] list foreign tables\n" +msgstr " \\det[x+] [PATRÓN] listar tablas foráneas\n" #: help.c:240 -msgid " \\deu[+] [PATTERN] list user mappings\n" -msgstr " \\deu[+] [PATRÓN] listar mapeos de usuario\n" +#| msgid " \\deu[+] [PATTERN] list user mappings\n" +msgid " \\deu[x+] [PATTERN] list user mappings\n" +msgstr " \\deu[x+] [PATRÓN] listar mapeos de usuario\n" #: help.c:241 -msgid " \\dew[+] [PATTERN] list foreign-data wrappers\n" -msgstr " \\dew[+] [PATRÓN] listar conectores de datos externos\n" +#| msgid " \\dew[+] [PATTERN] list foreign-data wrappers\n" +msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" +msgstr " \\dew[x+] [PATRÓN] listar conectores de datos externos\n" #: help.c:242 +#| msgid "" +#| " \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" +#| " list [only agg/normal/procedure/trigger/window] functions\n" msgid "" -" \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" +" \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" msgstr "" -" \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" -" listar funciones [sólo ag./normal/proc./trigger/ventana]\n" +" \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" +" listar funciones [sólo ag./normal/proc./trigger/ventana]\n" #: help.c:244 -msgid " \\dF[+] [PATTERN] list text search configurations\n" -msgstr " \\dF[+] [PATRÓN] listar configuraciones de búsqueda en texto\n" +#| msgid " \\dF[+] [PATTERN] list text search configurations\n" +msgid " \\dF[x+] [PATTERN] list text search configurations\n" +msgstr " \\dF[x+] [PATRÓN] listar configuraciones de búsqueda en texto\n" #: help.c:245 -msgid " \\dFd[+] [PATTERN] list text search dictionaries\n" -msgstr " \\dFd[+] [PATRÓN] listar diccionarios de búsqueda en texto\n" +#| msgid " \\dFd[+] [PATTERN] list text search dictionaries\n" +msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" +msgstr " \\dFd[x+] [PATRÓN] listar diccionarios de búsqueda en texto\n" #: help.c:246 -msgid " \\dFp[+] [PATTERN] list text search parsers\n" -msgstr " \\dFp[+] [PATRÓN] listar analizadores (parsers) de búsq. en texto\n" +#| msgid " \\dFp[+] [PATTERN] list text search parsers\n" +msgid " \\dFp[x+] [PATTERN] list text search parsers\n" +msgstr " \\dFp[x+] [PATRÓN] listar analizadores (parsers) de búsq. en texto\n" #: help.c:247 -msgid " \\dFt[+] [PATTERN] list text search templates\n" -msgstr " \\dFt[+] [PATRÓN] listar plantillas de búsqueda en texto\n" +#| msgid " \\dFt[+] [PATTERN] list text search templates\n" +msgid " \\dFt[x+] [PATTERN] list text search templates\n" +msgstr " \\dFt[x+] [PATRÓN] listar plantillas de búsqueda en texto\n" #: help.c:248 -msgid " \\dg[S+] [PATTERN] list roles\n" -msgstr " \\dg[S+] [PATRÓN] listar roles\n" +#| msgid " \\dg[S+] [PATTERN] list roles\n" +msgid " \\dg[Sx+] [PATTERN] list roles\n" +msgstr " \\dg[Sx+] [PATRÓN] listar roles\n" #: help.c:249 -msgid " \\di[S+] [PATTERN] list indexes\n" -msgstr " \\di[S+] [PATRÓN] listar índices\n" +#| msgid " \\di[S+] [PATTERN] list indexes\n" +msgid " \\di[Sx+] [PATTERN] list indexes\n" +msgstr " \\di[Sx+] [PATRÓN] listar índices\n" #: help.c:250 -msgid " \\dl[+] list large objects, same as \\lo_list\n" -msgstr " \\dl[+] listar objetos grandes, lo mismo que \\lo_list\n" +#| msgid " \\dl[+] list large objects, same as \\lo_list\n" +msgid " \\dl[x+] list large objects, same as \\lo_list\n" +msgstr " \\dl[x+] listar objetos grandes, lo mismo que \\lo_list\n" #: help.c:251 -msgid " \\dL[S+] [PATTERN] list procedural languages\n" -msgstr " \\dL[S+] [PATRÓN] listar lenguajes procedurales\n" +#| msgid " \\dL[S+] [PATTERN] list procedural languages\n" +msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" +msgstr " \\dL[Sx+] [PATRÓN] listar lenguajes procedurales\n" #: help.c:252 -msgid " \\dm[S+] [PATTERN] list materialized views\n" -msgstr " \\dm[S+] [PATRÓN] listar vistas materializadas\n" +#| msgid " \\dm[S+] [PATTERN] list materialized views\n" +msgid " \\dm[Sx+] [PATTERN] list materialized views\n" +msgstr " \\dm[Sx+] [PATRÓN] listar vistas materializadas\n" #: help.c:253 -msgid " \\dn[S+] [PATTERN] list schemas\n" -msgstr " \\dn[S+] [PATRÓN] listar esquemas\n" +#| msgid " \\dn[S+] [PATTERN] list schemas\n" +msgid " \\dn[Sx+] [PATTERN] list schemas\n" +msgstr " \\dn[Sx+] [PATRÓN] listar esquemas\n" #: help.c:254 +#| msgid "" +#| " \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" +#| " list operators\n" msgid "" -" \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" +" \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" msgstr "" -" \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" -" listar operadores\n" +" \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]] listar operadores\n" #: help.c:256 -msgid " \\dO[S+] [PATTERN] list collations\n" -msgstr " \\dO[S] [PATRÓN] listar ordenamientos (collations)\n" +#| msgid " \\dO[S+] [PATTERN] list collations\n" +msgid " \\dO[Sx+] [PATTERN] list collations\n" +msgstr " \\dO[Sx+] [PATRÓN] listar ordenamientos (collations)\n" #: help.c:257 -msgid " \\dp[S] [PATTERN] list table, view, and sequence access privileges\n" -msgstr " \\dp[S] [PATRÓN] listar privilegios de acceso a tablas, vistas y secuencias\n" +#| msgid " \\dp[S] [PATTERN] list table, view, and sequence access privileges\n" +msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" +msgstr " \\dp[Sx] [PATRÓN] listar privilegios de acceso a tablas, vistas y secuencias\n" #: help.c:258 -msgid " \\dP[itn+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" -msgstr " \\dP[tin+] [PATRÓN] listar relaciones particionadas (sólo tablas/índices) [n=anidadas]\n" +#| msgid " \\dP[itn+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" +msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" +msgstr " \\dP[itnx+] [PATRN] listar relaciones particionadas (sólo tablas/índices) [n=anidadas]\n" #: help.c:259 -msgid " \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n" +#| msgid " \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n" +msgid "" +" \\drds[x] [ROLEPTRN [DBPTRN]]\n" +" list per-database role settings\n" msgstr "" -" \\drds [PATRÓN_ROL [PATRÓN_BASE]]\n" -" listar parámetros de rol por base de datos\n" - -#: help.c:260 -msgid " \\drg[S] [PATTERN] list role grants\n" -msgstr " \\drg[S] [PATRÓN] listar roles\n" +" \\drds[x] [PATRÓN_ROL [PATRÓN_BASE]]\n" +" listar parámetros de rol por base de datos\n" #: help.c:261 -msgid " \\dRp[+] [PATTERN] list replication publications\n" -msgstr " \\dRp[+] [PATRÓN] listar publicaciones de replicación\n" +#| msgid " \\drg[S] [PATTERN] list role grants\n" +msgid " \\drg[Sx] [PATTERN] list role grants\n" +msgstr " \\drg[Sx] [PATRÓN] listar roles otorgados\n" #: help.c:262 -msgid " \\dRs[+] [PATTERN] list replication subscriptions\n" -msgstr " \\dRs[+] [PATRÓN] listar suscripciones de replicación\n" +#| msgid " \\dRp[+] [PATTERN] list replication publications\n" +msgid " \\dRp[x+] [PATTERN] list replication publications\n" +msgstr " \\dRp[x+] [PATRÓN] listar publicaciones de replicación\n" #: help.c:263 -msgid " \\ds[S+] [PATTERN] list sequences\n" -msgstr " \\ds[S+] [PATRÓN] listar secuencias\n" +#| msgid " \\dRs[+] [PATTERN] list replication subscriptions\n" +msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" +msgstr " \\dRs[x+] [PATRÓN] listar suscripciones de replicación\n" #: help.c:264 -msgid " \\dt[S+] [PATTERN] list tables\n" -msgstr " \\dt[S+] [PATRÓN] listar tablas\n" +#| msgid " \\ds[S+] [PATTERN] list sequences\n" +msgid " \\ds[Sx+] [PATTERN] list sequences\n" +msgstr " \\ds[Sx+] [PATRÓN] listar secuencias\n" #: help.c:265 -msgid " \\dT[S+] [PATTERN] list data types\n" -msgstr " \\dT[S+] [PATRÓN] listar tipos de dato\n" +#| msgid " \\dt[S+] [PATTERN] list tables\n" +msgid " \\dt[Sx+] [PATTERN] list tables\n" +msgstr " \\dt[Sx+] [PATRÓN] listar tablas\n" #: help.c:266 -msgid " \\du[S+] [PATTERN] list roles\n" -msgstr " \\du[S+] [PATRÓN] listar roles\n" +#| msgid " \\dT[S+] [PATTERN] list data types\n" +msgid " \\dT[Sx+] [PATTERN] list data types\n" +msgstr " \\dT[Sx+] [PATRÓN] listar tipos de dato\n" #: help.c:267 -msgid " \\dv[S+] [PATTERN] list views\n" -msgstr " \\dv[S+] [PATRÓN] listar vistas\n" +#| msgid " \\du[S+] [PATTERN] list roles\n" +msgid " \\du[Sx+] [PATTERN] list roles\n" +msgstr " \\du[Sx+] [PATRÓN] listar roles\n" #: help.c:268 -msgid " \\dx[+] [PATTERN] list extensions\n" -msgstr " \\dx[+] [PATRÓN] listar extensiones\n" +#| msgid " \\dv[S+] [PATTERN] list views\n" +msgid " \\dv[Sx+] [PATTERN] list views\n" +msgstr " \\dv[Sx+] [PATRÓN] listar vistas\n" #: help.c:269 -msgid " \\dX [PATTERN] list extended statistics\n" -msgstr " \\dX [PATRÓN] listar estadísticas extendidas\n" +#| msgid " \\dx[+] [PATTERN] list extensions\n" +msgid " \\dx[x+] [PATTERN] list extensions\n" +msgstr " \\dx[x+] [PATRÓN] listar extensiones\n" #: help.c:270 -msgid " \\dy[+] [PATTERN] list event triggers\n" -msgstr " \\dy[+] [PATRÓN] listar disparadores por eventos\n" +#| msgid " \\dX [PATTERN] list extended statistics\n" +msgid " \\dX[x] [PATTERN] list extended statistics\n" +msgstr " \\dX[x] [PATRÓN] listar estadísticas extendidas\n" #: help.c:271 -msgid " \\l[+] [PATTERN] list databases\n" -msgstr " \\l[+] [PATRÓN] listar bases de datos\n" +#| msgid " \\dy[+] [PATTERN] list event triggers\n" +msgid " \\dy[x+] [PATTERN] list event triggers\n" +msgstr " \\dy[x+] [PATRÓN] listar disparadores por eventos\n" #: help.c:272 -msgid " \\sf[+] FUNCNAME show a function's definition\n" -msgstr " \\sf[+] FUNCIÓN mostrar la definición de una función\n" +#| msgid " \\l[+] [PATTERN] list databases\n" +msgid " \\l[x+] [PATTERN] list databases\n" +msgstr " \\l[x+] [PATRÓN] listar bases de datos\n" #: help.c:273 -msgid " \\sv[+] VIEWNAME show a view's definition\n" -msgstr " \\sv[+] VISTA mostrar la definición de una vista\n" +#| msgid " \\sf[+] FUNCNAME show a function's definition\n" +msgid " \\sf[+] FUNCNAME show a function's definition\n" +msgstr " \\sf[+] FUNCIÓN mostrar la definición de una función\n" #: help.c:274 -msgid " \\z[S] [PATTERN] same as \\dp\n" -msgstr " \\z[S] [PATRÓN] lo mismo que \\dp\n" +#| msgid " \\sv[+] VIEWNAME show a view's definition\n" +msgid " \\sv[+] VIEWNAME show a view's definition\n" +msgstr " \\sv[+] VISTA mostrar la definición de una vista\n" -#: help.c:277 +#: help.c:275 +#| msgid " \\z[S] [PATTERN] same as \\dp\n" +msgid " \\z[Sx] [PATTERN] same as \\dp\n" +msgstr " \\z[Sx] [PATRÓN] lo mismo que \\dp\n" + +#: help.c:278 msgid "Large Objects\n" msgstr "Objetos Grandes\n" -#: help.c:278 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr " \\lo_export LOBOID ARCHIVO escribir objeto grande a archivo\n" -#: help.c:279 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3196,38 +3511,39 @@ msgstr "" " \\lo_import ARCHIVO [COMENTARIO]\n" " leer objeto grande desde archivo\n" -#: help.c:281 -msgid " \\lo_list[+] list large objects\n" -msgstr " \\lo_list[+] listar objetos grandes\n" - #: help.c:282 +#| msgid " \\lo_list[+] list large objects\n" +msgid " \\lo_list[x+] list large objects\n" +msgstr " \\lo_list[x+] listar objetos grandes\n" + +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID borrar un objeto grande\n" -#: help.c:285 +#: help.c:286 msgid "Formatting\n" msgstr "Formato\n" -#: help.c:286 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr " \\a cambiar entre modo de salida alineado y sin alinear\n" -#: help.c:287 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr " \\C [CADENA] definir título de tabla, o indefinir si es vacío\n" -#: help.c:288 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr "" " \\f [CADENA] mostrar o definir separador de campos para\n" " modo de salida sin alinear\n" -#: help.c:289 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H cambiar modo de salida HTML (actualmente %s)\n" -#: help.c:291 +#: help.c:292 msgid "" " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" @@ -3244,29 +3560,29 @@ msgstr "" " tuples_only|unicode_border_linestyle|unicode_column_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] mostrar sólo filas (actualmente %s)\n" -#: help.c:300 +#: help.c:301 msgid " \\T [STRING] set HTML
tag attributes, or unset if none\n" msgstr " \\T [CADENA] definir atributos HTML de
, o indefinir si es vacío\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] cambiar modo expandido (actualmente %s)\n" -#: help.c:302 +#: help.c:303 msgid "auto" msgstr "auto" -#: help.c:305 +#: help.c:306 msgid "Connection\n" msgstr "Conexiones\n" -#: help.c:307 +#: help.c:308 #, c-format msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" @@ -3275,7 +3591,7 @@ msgstr "" " \\c[onnect] [BASE-DE-DATOS|- USUARIO|- ANFITRIÓN|- PUERTO|- | conninfo]\n" " conectar a una nueva base de datos (actual: «%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" @@ -3283,84 +3599,144 @@ msgstr "" " \\c[onnect] [BASE-DE-DATOS|- USUARIO|- ANFITRIÓN|- PUERTO|- | conninfo]\n" " conectar a una nueva base de datos (no hay conexión actual)\n" -#: help.c:313 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo despliega la información sobre la conexión actual\n" -#: help.c:314 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr "" " \\encoding [CODIFICACIÓN]\n" " mostrar o definir codificación del cliente\n" -#: help.c:315 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr "" " \\password [USUARIO]\n" " cambiar la contraseña para un usuario en forma segura\n" -#: help.c:318 +#: help.c:319 msgid "Operating System\n" msgstr "Sistema Operativo\n" -#: help.c:319 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [DIR] cambiar el directorio de trabajo actual\n" -#: help.c:320 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv PSQLVAR ENVVAR obtener variable de ambiente\n" -#: help.c:321 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr "" " \\setenv NOMBRE [VALOR]\n" " definir o indefinir variable de ambiente\n" -#: help.c:322 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr "" " \\timing [on|off] mostrar tiempo de ejecución de órdenes\n" " (actualmente %s)\n" -#: help.c:324 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr "" " \\! [ORDEN] ejecutar orden en intérprete de órdenes (shell),\n" " o iniciar intérprete interactivo\n" -#: help.c:327 +#: help.c:328 msgid "Variables\n" msgstr "Variables\n" -#: help.c:328 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr " \\prompt [TEXTO] NOMBRE preguntar al usuario el valor de la variable\n" -#: help.c:329 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr "" " \\set [NOMBRE [VALOR]] definir variables internas,\n" " listar todas si no se dan parámetros\n" -#: help.c:330 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset NOMBRE indefinir (eliminar) variable interna\n" -#: help.c:369 +#: help.c:334 +msgid "Extended Query Protocol\n" +msgstr "Protocolo Extendido de Consultas\n" + +#: help.c:335 +msgid " \\bind [PARAM]... set query parameters\n" +msgstr "" +" \\bind [PARAM]... definir parámetros de consulta\n" + +#: help.c:336 +msgid "" +" \\bind_named STMT_NAME [PARAM]...\n" +" set query parameters for an existing prepared statement\n" +msgstr "" +" \\bind_named NOMBRE_SENTENCIA [PARAM]...\n" +" define parámetros para una sentencia preparada existente\n" + +#: help.c:338 +msgid "" +" \\close_prepared STMT_NAME\n" +" close an existing prepared statement\n" +msgstr "" +" \\close_prepared NOMBRE_SENTENCIA\n" +" cerrar una sentencia preparada existente\n" + +#: help.c:340 +#| msgid "cannot send pipeline when not in pipeline mode" +msgid " \\endpipeline exit pipeline mode\n" +msgstr " \\endpipeline salir de modo pipeline\n" + +#: help.c:341 +#| msgid " -e, --echo show the commands being sent to the server\n" +msgid " \\flush flush output data to the server\n" +msgstr " \\flush enviar datos salientes al servidor\n" + +#: help.c:342 +msgid " \\flushrequest send request to the server to flush its output buffer\n" +msgstr " \\flushrequest solicitar al servidor enviar datos salientes\n" + +#: help.c:343 +msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argument\n" +msgstr " \\getresults [NÚM_RES] leer NÚM_RES resultados pendientes, o todos si no hay argumento\n" + +#: help.c:344 +#| msgid "deallocate a prepared statement" +msgid " \\parse STMT_NAME create a prepared statement\n" +msgstr " \\parse NOM_SENTENCIA crea una sentencia preparada\n" + +#: help.c:345 +msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" +msgstr " \\sendpipeline enviar una consulta extendida a un pipeline en curso\n" + +#: help.c:346 +msgid " \\startpipeline enter pipeline mode\n" +msgstr " \\startpipeline entrar en modo pipeline\n" + +#: help.c:347 +msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" +msgstr " \\syncpipeline agregar punto de sincronización a un pipeline en curso\n" + +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" msgstr "" -"Lista de variables con tratamiento especial\n" +"Listado de variables con tratamiento especial\n" "\n" -#: help.c:371 +#: help.c:388 msgid "psql variables:\n" msgstr "variables psql:\n" -#: help.c:373 +#: help.c:390 msgid "" " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n" @@ -3369,7 +3745,7 @@ msgstr "" " psql --set=NOMBRE=VALOR\n" " o \\set NOMBRE VALOR dentro de psql\n" -#: help.c:375 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3377,7 +3753,7 @@ msgstr "" " AUTOCOMMIT si está definida, órdenes SQL exitosas se comprometen\n" " automáticamente\n" -#: help.c:377 +#: help.c:394 msgid "" " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" @@ -3386,13 +3762,13 @@ msgstr "" " COMP_KEYWORD_CASE determina si usar mayúsculas al completar palabras 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 la base de datos actualmente conectada\n" -#: help.c:382 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3401,7 +3777,7 @@ msgstr "" " ECHO controla qué entrada se escribe a la salida estándar\n" " [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" @@ -3410,13 +3786,13 @@ msgstr "" " ECHO_HIDDEN muestra consultas internas usadas por órdenes backslash\n" " con «noexec» sólo las muestra sin ejecutarlas\n" -#: help.c:388 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" msgstr " ENCODING codificación actual del cliente\n" -#: help.c:390 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3424,7 +3800,7 @@ msgstr "" " ERROR\n" " «true» si la última consulta falló; si no, «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" @@ -3432,7 +3808,7 @@ msgstr "" " FETCH_COUNT número de filas del resultado que extraer y mostrar cada vez\n" " (por omisión: 0=sin límite)\n" -#: help.c:394 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3440,7 +3816,7 @@ msgstr "" " HIDE_TABLEAM\n" " ocultar métodos de acceso de tabla\n" -#: help.c:396 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3448,7 +3824,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " ocultar métodos de compresión\n" -#: help.c:398 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3456,25 +3832,25 @@ msgstr "" " HISTCONTROL controla la lista de historia de órdenes\n" " [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:400 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" msgstr " HISTFILE nombre de archivo para almacenar historia de órdenes\n" -#: help.c:402 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" msgstr " HISTSIZE número de órdenes a guardar en la historia de órdenes\n" -#: help.c:404 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" msgstr " HOST el servidor actualmente conectado\n" -#: help.c:406 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3482,13 +3858,13 @@ msgstr "" " IGNOREEOF si no está definida, enviar un EOF a sesión interactiva\n" " termina la aplicación\n" -#: help.c:408 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" msgstr " LASTOID el valor del último OID afectado\n" -#: help.c:410 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3499,7 +3875,7 @@ msgstr "" " mensaje y SQLSTATE del último error, o cadena vacía y\n" " «00000» si no hubo\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" @@ -3507,25 +3883,25 @@ msgstr "" " ON_ERROR_ROLLBACK si está definido, un error no aborta la transacción\n" " (usa «savepoints» implícitos)\n" -#: help.c:415 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" msgstr " ON_ERROR_STOP detiene ejecución por lotes al ocurrir un error\n" -#: help.c:417 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" msgstr " PORT puerto del servidor de la conexión actual\n" -#: help.c:419 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" msgstr " PROMPT1 especifica el prompt estándar de psql\n" -#: help.c:421 +#: help.c:438 msgid "" " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" @@ -3533,19 +3909,19 @@ msgstr "" " PROMPT2 especifica el prompt usado cuando una sentencia continúa\n" " de una línea anterior\n" -#: help.c:423 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" msgstr " PROMPT3 especifica el prompt usado durante COPY ... FROM STDIN\n" -#: help.c:425 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" msgstr " QUIET ejecuta silenciosamente (igual que -q)\n" -#: help.c:427 +#: help.c:444 msgid "" " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" @@ -3553,7 +3929,7 @@ msgstr "" " ROW_COUNT número de tuplas retornadas o afectadas por última\n" " consulta, o 0\n" -#: help.c:429 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3563,7 +3939,7 @@ msgstr "" " SERVER_VERSION_NUM\n" " versión del servidor (cadena corta o numérica)\n" -#: help.c:432 +#: help.c:449 msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" @@ -3571,7 +3947,7 @@ msgstr "" " SHELL_ERROR\n" " «true» si la última orden de shell falló, «false» si tuvo éxito\n" -#: help.c:434 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3579,7 +3955,7 @@ msgstr "" " SHELL_EXIT_CODE\n" " estado de salida de la última orden de shell\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" @@ -3588,7 +3964,7 @@ msgstr "" " mostrar todos los resultados de una consulta combinada (\\;) en lugar\n" " de sólo mostrar el último\n" -#: help.c:438 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3596,31 +3972,31 @@ msgstr "" " SHOW_CONTEXT controla el despliegue de campos de contexto de mensaje\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 fin de línea termina modo de órdenes SQL (igual que -S)\n" -#: help.c:442 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" msgstr " SINGLESTEP modo paso a paso (igual que -s)\n" -#: help.c:444 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" msgstr " SQLSTATE SQLSTATE de la última consulta, o «00000» si no hubo error\n" -#: help.c:446 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" msgstr " USER el usuario actualmente conectado\n" -#: help.c:448 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3628,7 +4004,7 @@ msgstr "" " VERBOSITY controla la verbosidad de errores [default, verbose,\n" " terse, sqlstate]\n" -#: help.c:450 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3640,7 +4016,16 @@ msgstr "" " VERSION_NUM\n" " versión de psql (cadena verbosa, corta o numérica)\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" +" número de segundos que \\watch espera entre ejecuciones (por omisión %s)\n" + +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3648,7 +4033,7 @@ msgstr "" "\n" "Parámetros de despliegue:\n" -#: help.c:457 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3658,25 +4043,25 @@ msgstr "" " o \\pset NOMBRE [VALOR] dentro de psql\n" "\n" -#: help.c:459 +#: help.c:479 msgid "" " border\n" " border style (number)\n" msgstr " border estilo de borde (número)\n" -#: help.c:461 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" msgstr " columns define el ancho para formato «wrapped»\n" -#: help.c:463 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" msgstr " expanded (o x) salida expandida [on, off, auto]\n" -#: help.c:465 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -3685,37 +4070,37 @@ msgstr "" " fieldsep separador de campos para formato «unaligned»\n" " (por omisión: «%s»)\n" -#: help.c:468 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" msgstr " fieldsep_zero separador de campos en «unaligned» es byte cero\n" -#: help.c:470 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" msgstr " footer activa o desactiva el pie de tabla [on, off]\n" -#: help.c:472 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" msgstr " format define el formato de salida [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:474 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" msgstr " linestyle define el estilo de dibujo de líneas [ascii, old-ascii, unicode]\n" -#: help.c:476 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" msgstr " null define la cadena a imprimirse para valores null\n" -#: help.c:478 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -3723,26 +4108,26 @@ msgstr "" " numericlocale activa despliegue de carácter específico del lenguaje para\n" " separar grupos de dígitos\n" -#: help.c:480 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" msgstr " pager controla cuándo se usará un paginador externo [yes, no, always]\n" -#: help.c:482 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" msgstr " recordsep separador de registros (líneas) para formato «unaligned»\n" -#: help.c:484 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" msgstr " recordsep_zero separador de registros en «unaligned» es byte cero\n" # XXX WTF does this mean? -#: help.c:486 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -3752,19 +4137,19 @@ msgstr "" " o ancho proporcional de columnas alineadas a la izquierda\n" " en formato «latex-longtable»\n" -#: help.c:489 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" msgstr " title define el título de tablas\n" -#: help.c:491 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" msgstr " tuples_only si está definido, sólo los datos de la tabla se muestran\n" -#: help.c:493 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -3776,7 +4161,7 @@ msgstr "" " unicode_header_linestyle\n" " define el estilo de líneas Unicode [single, double]\n" -#: help.c:497 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -3786,7 +4171,7 @@ msgstr "" " define el ancho máximo del encabezado para el formato expandido\n" " [full, column, page, valor entero]\n" -#: help.c:501 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -3794,7 +4179,7 @@ msgstr "" "\n" "Variables de ambiente:\n" -#: help.c:505 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -3803,7 +4188,7 @@ msgstr "" " NOMBRE=VALOR [NOMBRE=VALOR] psql ...\n" " o \\setenv NOMBRE [VALOR] dentro de psql\n" -#: help.c:507 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -3814,55 +4199,55 @@ msgstr "" " psql ...\n" " o \\setenv NOMBRE [VALOR] dentro de psql\n" -#: help.c:510 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" msgstr " COLUMNS número de columnas para formato «wrapped»\n" -#: help.c:512 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" msgstr " PGAPPNAME igual que el parámetro de conexión application_name\n" -#: help.c:514 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" msgstr " PGDATABASE igual que el parámetro de conexión dbname\n" -#: help.c:516 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" msgstr " PGHOST igual que el parámetro de conexión host\n" -#: help.c:518 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" msgstr " PGPASSFILE nombre de archivo de contraseñas\n" -#: help.c:520 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" msgstr " PGPASSWORD contraseña de la conexión (no recomendado)\n" -#: help.c:522 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" msgstr " PGPORT igual que el parámetro de conexión port\n" -#: help.c:524 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" msgstr " PGUSER igual que el parámetro de conexión user\n" -#: help.c:526 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -3870,7 +4255,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor usado por órdenes \\e, \\ef, y \\ev\n" -#: help.c:528 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -3878,47 +4263,47 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARGS\n" " cómo especificar número de línea al invocar al editor\n" -#: help.c:530 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" msgstr " PSQL_HISTORY ubicación alternativa del archivo de historia de órdenes\n" -#: help.c:532 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" msgstr " PSQL_PAGER, PAGER nombre de programa paginador externo\n" -#: help.c:535 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" msgstr " PSQL_WATCH_PAGER paginador externo para usar con \\watch\n" -#: help.c:538 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" msgstr " PSQLRC ubicación alternativa para el archivo .psqlrc del usuario\n" -#: help.c:540 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" msgstr " SHELL intérprete usado por la orden \\!\n" -#: help.c:542 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" msgstr " TMPDIR directorio para archivos temporales\n" -#: help.c:602 +#: help.c:622 msgid "Available help:\n" msgstr "Ayuda disponible:\n" -#: help.c:697 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -3937,7 +4322,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:720 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -4043,12 +4428,12 @@ msgstr "consulta ignorada; use \\endif o Ctrl-C para salir del bloque \\if actua msgid "reached EOF without finding closing \\endif(s)" msgstr "se alcanzó EOF sin encontrar el/los \\endif de cierre" -#: psqlscanslash.l:642 +#: psqlscanslash.l:633 #, c-format msgid "unterminated quoted string" msgstr "una cadena de caracteres entre comillas está inconclusa" -#: psqlscanslash.l:842 +#: psqlscanslash.l:834 #, c-format msgid "%s: out of memory" msgstr "%s: memoria agotada" @@ -4056,2463 +4441,2477 @@ msgstr "%s: memoria agotada" #: 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:245 -#: sql_help.c:247 sql_help.c:248 sql_help.c:250 sql_help.c:252 sql_help.c:255 -#: sql_help.c:257 sql_help.c:259 sql_help.c:261 sql_help.c:276 sql_help.c:277 -#: sql_help.c:278 sql_help.c:280 sql_help.c:329 sql_help.c:331 sql_help.c:333 -#: sql_help.c:335 sql_help.c:404 sql_help.c:409 sql_help.c:411 sql_help.c:453 -#: sql_help.c:455 sql_help.c:458 sql_help.c:460 sql_help.c:529 sql_help.c:534 -#: sql_help.c:539 sql_help.c:544 sql_help.c:549 sql_help.c:603 sql_help.c:605 -#: sql_help.c:607 sql_help.c:609 sql_help.c:611 sql_help.c:614 sql_help.c:616 -#: sql_help.c:619 sql_help.c:630 sql_help.c:632 sql_help.c:676 sql_help.c:678 -#: sql_help.c:680 sql_help.c:683 sql_help.c:685 sql_help.c:687 sql_help.c:728 -#: sql_help.c:732 sql_help.c:736 sql_help.c:757 sql_help.c:760 sql_help.c:763 -#: sql_help.c:792 sql_help.c:804 sql_help.c:812 sql_help.c:815 sql_help.c:818 -#: sql_help.c:833 sql_help.c:836 sql_help.c:865 sql_help.c:870 sql_help.c:875 -#: sql_help.c:880 sql_help.c:885 sql_help.c:912 sql_help.c:914 sql_help.c:916 -#: sql_help.c:918 sql_help.c:921 sql_help.c:923 sql_help.c:970 sql_help.c:1015 -#: sql_help.c:1020 sql_help.c:1025 sql_help.c:1030 sql_help.c:1035 -#: sql_help.c:1054 sql_help.c:1065 sql_help.c:1067 sql_help.c:1087 -#: sql_help.c:1097 sql_help.c:1098 sql_help.c:1100 sql_help.c:1102 -#: sql_help.c:1114 sql_help.c:1118 sql_help.c:1120 sql_help.c:1132 -#: sql_help.c:1134 sql_help.c:1136 sql_help.c:1138 sql_help.c:1157 -#: sql_help.c:1159 sql_help.c:1163 sql_help.c:1167 sql_help.c:1171 -#: sql_help.c:1174 sql_help.c:1175 sql_help.c:1176 sql_help.c:1179 -#: sql_help.c:1182 sql_help.c:1184 sql_help.c:1324 sql_help.c:1326 -#: sql_help.c:1329 sql_help.c:1332 sql_help.c:1334 sql_help.c:1336 -#: sql_help.c:1339 sql_help.c:1342 sql_help.c:1464 sql_help.c:1466 -#: sql_help.c:1468 sql_help.c:1471 sql_help.c:1492 sql_help.c:1495 -#: sql_help.c:1498 sql_help.c:1501 sql_help.c:1505 sql_help.c:1507 -#: sql_help.c:1509 sql_help.c:1511 sql_help.c:1525 sql_help.c:1528 -#: sql_help.c:1530 sql_help.c:1532 sql_help.c:1542 sql_help.c:1544 -#: sql_help.c:1554 sql_help.c:1556 sql_help.c:1566 sql_help.c:1569 -#: sql_help.c:1592 sql_help.c:1594 sql_help.c:1596 sql_help.c:1598 -#: sql_help.c:1601 sql_help.c:1603 sql_help.c:1606 sql_help.c:1609 -#: sql_help.c:1660 sql_help.c:1703 sql_help.c:1706 sql_help.c:1708 -#: sql_help.c:1710 sql_help.c:1713 sql_help.c:1715 sql_help.c:1717 -#: sql_help.c:1720 sql_help.c:1770 sql_help.c:1786 sql_help.c:2019 -#: sql_help.c:2088 sql_help.c:2107 sql_help.c:2120 sql_help.c:2178 -#: sql_help.c:2186 sql_help.c:2196 sql_help.c:2224 sql_help.c:2257 -#: sql_help.c:2275 sql_help.c:2303 sql_help.c:2414 sql_help.c:2460 -#: sql_help.c:2485 sql_help.c:2508 sql_help.c:2512 sql_help.c:2546 -#: sql_help.c:2566 sql_help.c:2588 sql_help.c:2602 sql_help.c:2623 -#: sql_help.c:2652 sql_help.c:2685 sql_help.c:2708 sql_help.c:2755 -#: sql_help.c:3053 sql_help.c:3066 sql_help.c:3083 sql_help.c:3099 -#: sql_help.c:3139 sql_help.c:3193 sql_help.c:3197 sql_help.c:3199 -#: sql_help.c:3206 sql_help.c:3225 sql_help.c:3252 sql_help.c:3287 -#: sql_help.c:3299 sql_help.c:3308 sql_help.c:3352 sql_help.c:3366 -#: sql_help.c:3394 sql_help.c:3402 sql_help.c:3414 sql_help.c:3424 -#: sql_help.c:3432 sql_help.c:3440 sql_help.c:3448 sql_help.c:3456 -#: sql_help.c:3465 sql_help.c:3476 sql_help.c:3484 sql_help.c:3492 -#: sql_help.c:3500 sql_help.c:3508 sql_help.c:3518 sql_help.c:3527 -#: sql_help.c:3536 sql_help.c:3544 sql_help.c:3554 sql_help.c:3565 -#: sql_help.c:3573 sql_help.c:3582 sql_help.c:3593 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:3682 sql_help.c:3699 sql_help.c:3708 -#: sql_help.c:3716 sql_help.c:3733 sql_help.c:3748 sql_help.c:4061 -#: sql_help.c:4182 sql_help.c:4211 sql_help.c:4227 sql_help.c:4229 -#: sql_help.c:4733 sql_help.c:4781 sql_help.c:4940 +#: 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: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 msgid "name" msgstr "nombre" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:340 sql_help.c:1863 -#: sql_help.c:3367 sql_help.c:4500 +#: 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 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:260 -#: sql_help.c:281 sql_help.c:412 sql_help.c:459 sql_help.c:538 sql_help.c:586 -#: sql_help.c:604 sql_help.c:631 sql_help.c:684 sql_help.c:759 sql_help.c:814 -#: sql_help.c:835 sql_help.c:874 sql_help.c:924 sql_help.c:971 sql_help.c:1024 -#: sql_help.c:1056 sql_help.c:1066 sql_help.c:1101 sql_help.c:1121 -#: sql_help.c:1135 sql_help.c:1185 sql_help.c:1333 sql_help.c:1465 -#: sql_help.c:1508 sql_help.c:1529 sql_help.c:1543 sql_help.c:1555 -#: sql_help.c:1568 sql_help.c:1595 sql_help.c:1661 sql_help.c:1714 +#: 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 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:258 -#: sql_help.c:279 sql_help.c:410 sql_help.c:495 sql_help.c:543 sql_help.c:633 -#: sql_help.c:642 sql_help.c:707 sql_help.c:731 sql_help.c:762 sql_help.c:817 -#: sql_help.c:879 sql_help.c:922 sql_help.c:1029 sql_help.c:1068 -#: sql_help.c:1099 sql_help.c:1119 sql_help.c:1133 sql_help.c:1183 -#: sql_help.c:1399 sql_help.c:1467 sql_help.c:1510 sql_help.c:1531 -#: sql_help.c:1593 sql_help.c:1709 sql_help.c:3039 +#: 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 msgid "new_owner" msgstr "nuevo_dueño" -#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:262 sql_help.c:332 -#: sql_help.c:461 sql_help.c:548 sql_help.c:686 sql_help.c:735 sql_help.c:765 -#: sql_help.c:820 sql_help.c:884 sql_help.c:1034 sql_help.c:1103 -#: sql_help.c:1137 sql_help.c:1335 sql_help.c:1512 sql_help.c:1533 -#: sql_help.c:1545 sql_help.c:1557 sql_help.c:1597 sql_help.c:1716 +#: 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 msgid "new_schema" msgstr "nuevo_esquema" -#: sql_help.c:44 sql_help.c:1927 sql_help.c:3368 sql_help.c:4529 +#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 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:350 sql_help.c:363 -#: sql_help.c:367 sql_help.c:383 sql_help.c:386 sql_help.c:389 sql_help.c:530 -#: sql_help.c:535 sql_help.c:540 sql_help.c:545 sql_help.c:550 sql_help.c:866 -#: sql_help.c:871 sql_help.c:876 sql_help.c:881 sql_help.c:886 sql_help.c:1016 -#: sql_help.c:1021 sql_help.c:1026 sql_help.c:1031 sql_help.c:1036 -#: sql_help.c:1881 sql_help.c:1898 sql_help.c:1904 sql_help.c:1928 -#: sql_help.c:1931 sql_help.c:1934 sql_help.c:2089 sql_help.c:2108 -#: sql_help.c:2111 sql_help.c:2415 sql_help.c:2624 sql_help.c:3369 -#: sql_help.c:3372 sql_help.c:3375 sql_help.c:3466 sql_help.c:3555 -#: sql_help.c:3583 sql_help.c:3936 sql_help.c:4399 sql_help.c:4506 -#: sql_help.c:4513 sql_help.c:4519 sql_help.c:4530 sql_help.c:4533 -#: sql_help.c:4536 +#: 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 msgid "argmode" msgstr "modo_arg" -#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:351 sql_help.c:364 -#: sql_help.c:368 sql_help.c:384 sql_help.c:387 sql_help.c:390 sql_help.c:531 -#: sql_help.c:536 sql_help.c:541 sql_help.c:546 sql_help.c:551 sql_help.c:867 -#: sql_help.c:872 sql_help.c:877 sql_help.c:882 sql_help.c:887 sql_help.c:1017 -#: sql_help.c:1022 sql_help.c:1027 sql_help.c:1032 sql_help.c:1037 -#: sql_help.c:1882 sql_help.c:1899 sql_help.c:1905 sql_help.c:1929 -#: sql_help.c:1932 sql_help.c:1935 sql_help.c:2090 sql_help.c:2109 -#: sql_help.c:2112 sql_help.c:2416 sql_help.c:2625 sql_help.c:3370 -#: sql_help.c:3373 sql_help.c:3376 sql_help.c:3467 sql_help.c:3556 -#: sql_help.c:3584 sql_help.c:4507 sql_help.c:4514 sql_help.c:4520 -#: sql_help.c:4531 sql_help.c:4534 sql_help.c:4537 +#: 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 msgid "argname" msgstr "nombre_arg" -#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:352 sql_help.c:365 -#: sql_help.c:369 sql_help.c:385 sql_help.c:388 sql_help.c:391 sql_help.c:532 -#: sql_help.c:537 sql_help.c:542 sql_help.c:547 sql_help.c:552 sql_help.c:868 -#: sql_help.c:873 sql_help.c:878 sql_help.c:883 sql_help.c:888 sql_help.c:1018 -#: sql_help.c:1023 sql_help.c:1028 sql_help.c:1033 sql_help.c:1038 -#: sql_help.c:1883 sql_help.c:1900 sql_help.c:1906 sql_help.c:1930 -#: sql_help.c:1933 sql_help.c:1936 sql_help.c:2417 sql_help.c:2626 -#: sql_help.c:3371 sql_help.c:3374 sql_help.c:3377 sql_help.c:3468 -#: sql_help.c:3557 sql_help.c:3585 sql_help.c:4508 sql_help.c:4515 -#: sql_help.c:4521 sql_help.c:4532 sql_help.c:4535 sql_help.c:4538 +#: 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 msgid "argtype" msgstr "tipo_arg" -#: sql_help.c:114 sql_help.c:407 sql_help.c:484 sql_help.c:496 sql_help.c:965 -#: sql_help.c:1116 sql_help.c:1526 sql_help.c:1655 sql_help.c:1687 -#: sql_help.c:1739 sql_help.c:1798 sql_help.c:1987 sql_help.c:1994 -#: sql_help.c:2306 sql_help.c:2356 sql_help.c:2363 sql_help.c:2372 -#: sql_help.c:2461 sql_help.c:2686 sql_help.c:2777 sql_help.c:3068 -#: sql_help.c:3253 sql_help.c:3275 sql_help.c:3415 sql_help.c:3772 -#: sql_help.c:3980 sql_help.c:4226 sql_help.c:4228 sql_help.c:5006 +#: 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 msgid "option" msgstr "opción" -#: sql_help.c:115 sql_help.c:966 sql_help.c:1656 sql_help.c:2462 -#: sql_help.c:2687 sql_help.c:3254 sql_help.c:3416 +#: 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 msgid "where option can be:" msgstr "donde opción puede ser:" -#: sql_help.c:116 sql_help.c:2238 +#: sql_help.c:116 sql_help.c:2263 msgid "allowconn" msgstr "allowconn" -#: sql_help.c:117 sql_help.c:967 sql_help.c:1657 sql_help.c:2239 -#: sql_help.c:2463 sql_help.c:2688 sql_help.c:3255 +#: 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 msgid "connlimit" msgstr "límite_conexiones" -#: sql_help.c:118 sql_help.c:2240 +#: sql_help.c:118 sql_help.c:2265 msgid "istemplate" msgstr "esplantilla" -#: sql_help.c:124 sql_help.c:621 sql_help.c:689 sql_help.c:703 sql_help.c:1338 -#: sql_help.c:1392 sql_help.c:4232 +#: 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 msgid "new_tablespace" msgstr "nuevo_tablespace" -#: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:558 sql_help.c:560 -#: sql_help.c:561 sql_help.c:891 sql_help.c:893 sql_help.c:894 sql_help.c:974 -#: sql_help.c:978 sql_help.c:981 sql_help.c:1043 sql_help.c:1045 -#: sql_help.c:1046 sql_help.c:1196 sql_help.c:1198 sql_help.c:1664 -#: sql_help.c:1668 sql_help.c:1671 sql_help.c:2427 sql_help.c:2630 -#: sql_help.c:3948 sql_help.c:4250 sql_help.c:4411 sql_help.c:4721 +#: 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 msgid "configuration_parameter" msgstr "parámetro_de_configuración" -#: sql_help.c:128 sql_help.c:408 sql_help.c:479 sql_help.c:485 sql_help.c:497 -#: sql_help.c:559 sql_help.c:613 sql_help.c:695 sql_help.c:705 sql_help.c:892 -#: sql_help.c:920 sql_help.c:975 sql_help.c:1044 sql_help.c:1117 -#: sql_help.c:1162 sql_help.c:1166 sql_help.c:1170 sql_help.c:1173 -#: sql_help.c:1178 sql_help.c:1181 sql_help.c:1197 sql_help.c:1371 -#: sql_help.c:1394 sql_help.c:1442 sql_help.c:1450 sql_help.c:1470 -#: sql_help.c:1527 sql_help.c:1611 sql_help.c:1665 sql_help.c:1688 -#: sql_help.c:2307 sql_help.c:2357 sql_help.c:2364 sql_help.c:2373 -#: sql_help.c:2428 sql_help.c:2429 sql_help.c:2493 sql_help.c:2496 -#: sql_help.c:2530 sql_help.c:2631 sql_help.c:2632 sql_help.c:2655 -#: sql_help.c:2778 sql_help.c:2817 sql_help.c:2927 sql_help.c:2940 -#: sql_help.c:2954 sql_help.c:2995 sql_help.c:3003 sql_help.c:3025 -#: sql_help.c:3042 sql_help.c:3069 sql_help.c:3276 sql_help.c:3981 -#: sql_help.c:4722 sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 +#: 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 msgid "value" msgstr "valor" -#: sql_help.c:202 +#: sql_help.c:214 msgid "target_role" msgstr "rol_destino" -#: sql_help.c:203 sql_help.c:929 sql_help.c:2291 sql_help.c:2660 -#: sql_help.c:2733 sql_help.c:2738 sql_help.c:3911 sql_help.c:3920 -#: sql_help.c:3939 sql_help.c:3951 sql_help.c:4374 sql_help.c:4383 -#: sql_help.c:4402 sql_help.c:4414 +#: 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 msgid "schema_name" msgstr "nombre_de_esquema" -#: sql_help.c:204 +#: sql_help.c:216 msgid "abbreviated_grant_or_revoke" msgstr "grant_o_revoke_abreviado" -#: sql_help.c:205 +#: sql_help.c:217 msgid "where abbreviated_grant_or_revoke is one of:" msgstr "donde grant_o_revoke_abreviado es uno de:" -#: 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:584 sql_help.c:620 sql_help.c:688 sql_help.c:838 sql_help.c:985 -#: sql_help.c:1337 sql_help.c:1675 sql_help.c:2466 sql_help.c:2467 -#: sql_help.c:2468 sql_help.c:2469 sql_help.c:2470 sql_help.c:2604 -#: sql_help.c:2691 sql_help.c:2692 sql_help.c:2693 sql_help.c:3258 -#: sql_help.c:3259 sql_help.c:3260 sql_help.c:3261 sql_help.c:3262 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:4423 sql_help.c:4427 -#: sql_help.c:4743 +#: 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 msgid "role_name" msgstr "nombre_de_rol" -#: sql_help.c:246 sql_help.c:265 sql_help.c:472 sql_help.c:928 sql_help.c:1353 -#: sql_help.c:1355 sql_help.c:1359 sql_help.c:1409 sql_help.c:1421 -#: sql_help.c:1446 sql_help.c:1705 sql_help.c:2260 sql_help.c:2264 -#: sql_help.c:2376 sql_help.c:2381 sql_help.c:2489 sql_help.c:2659 -#: sql_help.c:2794 sql_help.c:2799 sql_help.c:2801 sql_help.c:2922 -#: sql_help.c:2935 sql_help.c:2949 sql_help.c:2958 sql_help.c:2970 -#: sql_help.c:2999 sql_help.c:4012 sql_help.c:4027 sql_help.c:4029 -#: sql_help.c:4125 sql_help.c:4128 sql_help.c:4130 sql_help.c:4593 -#: sql_help.c:4594 sql_help.c:4603 sql_help.c:4650 sql_help.c:4651 -#: sql_help.c:4652 sql_help.c:4653 sql_help.c:4654 sql_help.c:4655 -#: sql_help.c:4696 sql_help.c:4697 sql_help.c:4702 sql_help.c:4707 -#: sql_help.c:4851 sql_help.c:4852 sql_help.c:4861 sql_help.c:4908 -#: sql_help.c:4909 sql_help.c:4910 sql_help.c:4911 sql_help.c:4912 -#: sql_help.c:4913 sql_help.c:4968 sql_help.c:4970 sql_help.c:5036 -#: sql_help.c:5096 sql_help.c:5097 sql_help.c:5106 sql_help.c:5153 -#: sql_help.c:5154 sql_help.c:5155 sql_help.c:5156 sql_help.c:5157 -#: sql_help.c:5158 +#: 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 msgid "expression" msgstr "expresión" -#: sql_help.c:249 sql_help.c:2261 +#: sql_help.c:263 sql_help.c:2286 msgid "domain_constraint" msgstr "restricción_de_dominio" -#: sql_help.c:251 sql_help.c:253 sql_help.c:256 sql_help.c:264 sql_help.c:487 -#: sql_help.c:488 sql_help.c:1330 sql_help.c:1379 sql_help.c:1380 -#: sql_help.c:1381 sql_help.c:1408 sql_help.c:1420 sql_help.c:1437 -#: sql_help.c:1869 sql_help.c:1871 sql_help.c:2263 sql_help.c:2375 -#: sql_help.c:2380 sql_help.c:2957 sql_help.c:2969 sql_help.c:4024 +#: 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 msgid "constraint_name" msgstr "nombre_restricción" -#: sql_help.c:254 sql_help.c:1331 +#: sql_help.c:268 sql_help.c:1348 msgid "new_constraint_name" msgstr "nuevo_nombre_restricción" -#: sql_help.c:263 sql_help.c:2262 +#: sql_help.c:277 sql_help.c:2287 msgid "where domain_constraint is:" msgstr "donde restricción_de_dominio es:" -#: sql_help.c:330 sql_help.c:1115 +#: sql_help.c:344 sql_help.c:1130 msgid "new_version" msgstr "nueva_versión" -#: sql_help.c:334 sql_help.c:336 +#: sql_help.c:348 sql_help.c:350 msgid "member_object" msgstr "objeto_miembro" -#: sql_help.c:337 +#: sql_help.c:351 msgid "where member_object is:" msgstr "dondo objeto_miembro es:" -#: sql_help.c:338 sql_help.c:343 sql_help.c:344 sql_help.c:345 sql_help.c:346 -#: sql_help.c:347 sql_help.c:348 sql_help.c:353 sql_help.c:357 sql_help.c:359 -#: sql_help.c:361 sql_help.c:370 sql_help.c:371 sql_help.c:372 sql_help.c:373 -#: sql_help.c:374 sql_help.c:375 sql_help.c:376 sql_help.c:377 sql_help.c:380 -#: sql_help.c:381 sql_help.c:1861 sql_help.c:1866 sql_help.c:1873 -#: sql_help.c:1874 sql_help.c:1875 sql_help.c:1876 sql_help.c:1877 -#: sql_help.c:1878 sql_help.c:1879 sql_help.c:1884 sql_help.c:1886 -#: sql_help.c:1890 sql_help.c:1892 sql_help.c:1896 sql_help.c:1901 -#: sql_help.c:1902 sql_help.c:1909 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:1917 sql_help.c:1918 sql_help.c:1919 -#: sql_help.c:1924 sql_help.c:1925 sql_help.c:4496 sql_help.c:4501 -#: sql_help.c:4502 sql_help.c:4503 sql_help.c:4504 sql_help.c:4510 -#: sql_help.c:4511 sql_help.c:4516 sql_help.c:4517 sql_help.c:4522 -#: sql_help.c:4523 sql_help.c:4524 sql_help.c:4525 sql_help.c:4526 -#: sql_help.c:4527 +#: 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: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 msgid "object_name" msgstr "nombre_de_objeto" -#: sql_help.c:339 sql_help.c:1862 sql_help.c:4499 +#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 msgid "aggregate_name" msgstr "nombre_función_agregación" -#: sql_help.c:341 sql_help.c:1864 sql_help.c:2154 sql_help.c:2158 -#: sql_help.c:2160 sql_help.c:3385 +#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 +#: sql_help.c:2185 sql_help.c:3432 msgid "source_type" msgstr "tipo_fuente" -#: sql_help.c:342 sql_help.c:1865 sql_help.c:2155 sql_help.c:2159 -#: sql_help.c:2161 sql_help.c:3386 +#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 +#: sql_help.c:2186 sql_help.c:3433 msgid "target_type" msgstr "tipo_destino" -#: sql_help.c:349 sql_help.c:802 sql_help.c:1880 sql_help.c:2156 -#: sql_help.c:2199 sql_help.c:2279 sql_help.c:2547 sql_help.c:2578 -#: sql_help.c:3145 sql_help.c:4398 sql_help.c:4505 sql_help.c:4622 -#: sql_help.c:4626 sql_help.c:4630 sql_help.c:4633 sql_help.c:4880 -#: sql_help.c:4884 sql_help.c:4888 sql_help.c:4891 sql_help.c:5125 -#: sql_help.c:5129 sql_help.c:5133 sql_help.c:5136 +#: 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 msgid "function_name" msgstr "nombre_de_función" -#: sql_help.c:354 sql_help.c:795 sql_help.c:1887 sql_help.c:2571 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 msgid "operator_name" msgstr "nombre_operador" -#: sql_help.c:355 sql_help.c:729 sql_help.c:733 sql_help.c:737 sql_help.c:1888 -#: sql_help.c:2548 sql_help.c:3509 +#: 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 msgid "left_type" msgstr "tipo_izq" -#: sql_help.c:356 sql_help.c:730 sql_help.c:734 sql_help.c:738 sql_help.c:1889 -#: sql_help.c:2549 sql_help.c:3510 +#: 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 msgid "right_type" msgstr "tipo_der" -#: sql_help.c:358 sql_help.c:360 sql_help.c:758 sql_help.c:761 sql_help.c:764 -#: sql_help.c:793 sql_help.c:805 sql_help.c:813 sql_help.c:816 sql_help.c:819 -#: sql_help.c:1426 sql_help.c:1891 sql_help.c:1893 sql_help.c:2568 -#: sql_help.c:2589 sql_help.c:2975 sql_help.c:3519 sql_help.c:3528 +#: 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 msgid "index_method" msgstr "método_de_índice" -#: sql_help.c:362 sql_help.c:1897 sql_help.c:4512 +#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 msgid "procedure_name" msgstr "nombre_de_procedimiento" -#: sql_help.c:366 sql_help.c:1903 sql_help.c:3935 sql_help.c:4518 +#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 msgid "routine_name" msgstr "nombre_de_rutina" -#: sql_help.c:378 sql_help.c:1398 sql_help.c:1920 sql_help.c:2423 -#: sql_help.c:2629 sql_help.c:2930 sql_help.c:3112 sql_help.c:3690 -#: sql_help.c:3957 sql_help.c:4420 +#: 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 msgid "type_name" msgstr "nombre_de_tipo" -#: sql_help.c:379 sql_help.c:1921 sql_help.c:2422 sql_help.c:2628 -#: sql_help.c:3113 sql_help.c:3343 sql_help.c:3691 sql_help.c:3942 -#: sql_help.c:4405 +#: 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 msgid "lang_name" msgstr "nombre_lenguaje" -#: sql_help.c:382 +#: sql_help.c:396 msgid "and aggregate_signature is:" msgstr "y signatura_func_agregación es:" -#: sql_help.c:405 sql_help.c:2021 sql_help.c:2304 +#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 msgid "handler_function" msgstr "función_manejadora" -#: sql_help.c:406 sql_help.c:2305 +#: sql_help.c:420 sql_help.c:2330 msgid "validator_function" msgstr "función_validadora" -#: sql_help.c:454 sql_help.c:533 sql_help.c:677 sql_help.c:869 sql_help.c:1019 -#: sql_help.c:1325 sql_help.c:1602 +#: 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 msgid "action" msgstr "acción" -#: sql_help.c:456 sql_help.c:463 sql_help.c:467 sql_help.c:468 sql_help.c:471 -#: sql_help.c:473 sql_help.c:474 sql_help.c:475 sql_help.c:477 sql_help.c:480 -#: sql_help.c:482 sql_help.c:483 sql_help.c:681 sql_help.c:691 sql_help.c:693 -#: sql_help.c:696 sql_help.c:698 sql_help.c:699 sql_help.c:927 sql_help.c:1096 -#: sql_help.c:1327 sql_help.c:1345 sql_help.c:1349 sql_help.c:1350 -#: sql_help.c:1354 sql_help.c:1356 sql_help.c:1357 sql_help.c:1358 -#: sql_help.c:1360 sql_help.c:1361 sql_help.c:1363 sql_help.c:1366 -#: sql_help.c:1367 sql_help.c:1369 sql_help.c:1372 sql_help.c:1374 -#: sql_help.c:1375 sql_help.c:1422 sql_help.c:1424 sql_help.c:1431 -#: sql_help.c:1440 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1704 sql_help.c:1707 sql_help.c:1711 sql_help.c:1747 -#: sql_help.c:1868 sql_help.c:1984 sql_help.c:1990 sql_help.c:2004 -#: sql_help.c:2005 sql_help.c:2006 sql_help.c:2354 sql_help.c:2367 -#: sql_help.c:2420 sql_help.c:2488 sql_help.c:2494 sql_help.c:2527 -#: sql_help.c:2658 sql_help.c:2763 sql_help.c:2798 sql_help.c:2800 -#: sql_help.c:2912 sql_help.c:2921 sql_help.c:2931 sql_help.c:2934 -#: sql_help.c:2944 sql_help.c:2948 sql_help.c:2971 sql_help.c:2973 -#: sql_help.c:2980 sql_help.c:2993 sql_help.c:2998 sql_help.c:3005 -#: sql_help.c:3006 sql_help.c:3022 sql_help.c:3148 sql_help.c:3288 -#: sql_help.c:3914 sql_help.c:3915 sql_help.c:4011 sql_help.c:4026 -#: sql_help.c:4028 sql_help.c:4030 sql_help.c:4124 sql_help.c:4127 -#: sql_help.c:4129 sql_help.c:4131 sql_help.c:4377 sql_help.c:4378 -#: sql_help.c:4498 sql_help.c:4659 sql_help.c:4666 sql_help.c:4668 -#: sql_help.c:4917 sql_help.c:4924 sql_help.c:4926 sql_help.c:4967 -#: sql_help.c:4969 sql_help.c:4971 sql_help.c:5024 sql_help.c:5162 -#: sql_help.c:5169 sql_help.c:5171 +#: 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 msgid "column_name" msgstr "nombre_de_columna" -#: sql_help.c:457 sql_help.c:682 sql_help.c:1328 sql_help.c:1712 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 msgid "new_column_name" msgstr "nuevo_nombre_de_columna" -#: sql_help.c:462 sql_help.c:554 sql_help.c:690 sql_help.c:890 sql_help.c:1040 -#: sql_help.c:1344 sql_help.c:1612 +#: 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 msgid "where action is one of:" msgstr "donde acción es una de:" -#: sql_help.c:464 sql_help.c:469 sql_help.c:1088 sql_help.c:1346 -#: sql_help.c:1351 sql_help.c:1614 sql_help.c:1618 sql_help.c:2258 -#: sql_help.c:2355 sql_help.c:2567 sql_help.c:2756 sql_help.c:2913 -#: sql_help.c:3195 sql_help.c:4183 +#: 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 msgid "data_type" msgstr "tipo_de_dato" -#: sql_help.c:465 sql_help.c:470 sql_help.c:1347 sql_help.c:1352 -#: sql_help.c:1447 sql_help.c:1615 sql_help.c:1619 sql_help.c:2259 -#: sql_help.c:2358 sql_help.c:2490 sql_help.c:2915 sql_help.c:2923 -#: sql_help.c:2936 sql_help.c:2950 sql_help.c:3000 sql_help.c:3196 -#: sql_help.c:3202 sql_help.c:4021 +#: 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 msgid "collation" msgstr "ordenamiento" -#: sql_help.c:466 sql_help.c:1348 sql_help.c:2359 sql_help.c:2368 -#: sql_help.c:2916 sql_help.c:2932 sql_help.c:2945 +#: 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 msgid "column_constraint" msgstr "restricción_de_columna" -#: sql_help.c:476 sql_help.c:618 sql_help.c:692 sql_help.c:1368 sql_help.c:5018 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 msgid "integer" msgstr "entero" -#: sql_help.c:478 sql_help.c:481 sql_help.c:694 sql_help.c:697 sql_help.c:1370 -#: sql_help.c:1373 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 +#: sql_help.c:1390 msgid "attribute_option" msgstr "opción_de_atributo" -#: sql_help.c:486 sql_help.c:1377 sql_help.c:2360 sql_help.c:2369 -#: sql_help.c:2917 sql_help.c:2933 sql_help.c:2946 +#: 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 msgid "table_constraint" msgstr "restricción_de_tabla" -#: sql_help.c:489 sql_help.c:490 sql_help.c:491 sql_help.c:492 sql_help.c:1382 -#: sql_help.c:1383 sql_help.c:1384 sql_help.c:1385 sql_help.c:1922 +#: 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 msgid "trigger_name" msgstr "nombre_disparador" -#: sql_help.c:493 sql_help.c:494 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:2361 sql_help.c:2366 sql_help.c:2920 sql_help.c:2943 +#: 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 msgid "parent_table" msgstr "tabla_padre" -#: sql_help.c:553 sql_help.c:610 sql_help.c:679 sql_help.c:889 sql_help.c:1039 -#: sql_help.c:1571 sql_help.c:2290 +#: 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 msgid "extension_name" msgstr "nombre_de_extensión" -#: sql_help.c:555 sql_help.c:1041 sql_help.c:2424 +#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 msgid "execution_cost" msgstr "costo_de_ejecución" -#: sql_help.c:556 sql_help.c:1042 sql_help.c:2425 +#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 msgid "result_rows" msgstr "núm_de_filas" -#: sql_help.c:557 sql_help.c:2426 +#: sql_help.c:571 sql_help.c:2463 msgid "support_function" msgstr "función_de_soporte" -#: sql_help.c:579 sql_help.c:581 sql_help.c:964 sql_help.c:972 sql_help.c:976 -#: sql_help.c:979 sql_help.c:982 sql_help.c:1654 sql_help.c:1662 -#: sql_help.c:1666 sql_help.c:1669 sql_help.c:1672 sql_help.c:2734 -#: sql_help.c:2736 sql_help.c:2739 sql_help.c:2740 sql_help.c:3912 -#: sql_help.c:3913 sql_help.c:3917 sql_help.c:3918 sql_help.c:3921 -#: sql_help.c:3922 sql_help.c:3924 sql_help.c:3925 sql_help.c:3927 -#: sql_help.c:3928 sql_help.c:3930 sql_help.c:3931 sql_help.c:3933 -#: sql_help.c:3934 sql_help.c:3940 sql_help.c:3941 sql_help.c:3943 -#: sql_help.c:3944 sql_help.c:3946 sql_help.c:3947 sql_help.c:3949 -#: sql_help.c:3950 sql_help.c:3952 sql_help.c:3953 sql_help.c:3955 -#: sql_help.c:3956 sql_help.c:3958 sql_help.c:3959 sql_help.c:3961 -#: sql_help.c:3962 sql_help.c:4375 sql_help.c:4376 sql_help.c:4380 -#: sql_help.c:4381 sql_help.c:4384 sql_help.c:4385 sql_help.c:4387 -#: sql_help.c:4388 sql_help.c:4390 sql_help.c:4391 sql_help.c:4393 -#: sql_help.c:4394 sql_help.c:4396 sql_help.c:4397 sql_help.c:4403 -#: sql_help.c:4404 sql_help.c:4406 sql_help.c:4407 sql_help.c:4409 -#: sql_help.c:4410 sql_help.c:4412 sql_help.c:4413 sql_help.c:4415 -#: sql_help.c:4416 sql_help.c:4418 sql_help.c:4419 sql_help.c:4421 -#: sql_help.c:4422 sql_help.c:4424 sql_help.c:4425 +#: 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 msgid "role_specification" msgstr "especificación_de_rol" -#: sql_help.c:580 sql_help.c:582 sql_help.c:1685 sql_help.c:2225 -#: sql_help.c:2742 sql_help.c:3273 sql_help.c:3724 sql_help.c:4753 +#: 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 msgid "user_name" msgstr "nombre_de_usuario" -#: sql_help.c:583 sql_help.c:984 sql_help.c:1674 sql_help.c:2741 -#: sql_help.c:3963 sql_help.c:4426 +#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 +#: sql_help.c:4010 sql_help.c:4477 msgid "where role_specification can be:" msgstr "donde especificación_de_rol puede ser:" -#: sql_help.c:585 +#: sql_help.c:599 msgid "group_name" msgstr "nombre_de_grupo" -#: sql_help.c:606 sql_help.c:1443 sql_help.c:2237 sql_help.c:2497 -#: sql_help.c:2531 sql_help.c:2928 sql_help.c:2941 sql_help.c:2955 -#: sql_help.c:2996 sql_help.c:3026 sql_help.c:3038 sql_help.c:3954 -#: sql_help.c:4417 +#: 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 msgid "tablespace_name" msgstr "nombre_de_tablespace" -#: sql_help.c:608 sql_help.c:701 sql_help.c:1390 sql_help.c:1400 -#: sql_help.c:1438 sql_help.c:1800 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 +#: sql_help.c:1461 sql_help.c:1823 msgid "index_name" msgstr "nombre_índice" -#: sql_help.c:612 sql_help.c:615 sql_help.c:704 sql_help.c:706 sql_help.c:1393 -#: sql_help.c:1395 sql_help.c:1441 sql_help.c:2495 sql_help.c:2529 -#: sql_help.c:2926 sql_help.c:2939 sql_help.c:2953 sql_help.c:2994 -#: sql_help.c:3024 +#: 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 msgid "storage_parameter" msgstr "parámetro_de_almacenamiento" -#: sql_help.c:617 +#: sql_help.c:631 msgid "column_number" msgstr "número_de_columna" -#: sql_help.c:641 sql_help.c:1885 sql_help.c:4509 +#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 msgid "large_object_oid" msgstr "oid_de_objeto_grande" -#: sql_help.c:700 sql_help.c:1376 sql_help.c:2914 +#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 msgid "compression_method" msgstr "método_de_compresión" -#: sql_help.c:702 sql_help.c:1391 +#: sql_help.c:716 sql_help.c:1409 msgid "new_access_method" msgstr "nuevo_método_de_acceso" -#: sql_help.c:739 sql_help.c:2552 +#: sql_help.c:753 sql_help.c:2589 msgid "res_proc" msgstr "proc_res" -#: sql_help.c:740 sql_help.c:2553 +#: sql_help.c:754 sql_help.c:2590 msgid "join_proc" msgstr "proc_join" -#: sql_help.c:741 sql_help.c:2550 +#: sql_help.c:755 sql_help.c:2587 msgid "com_op" msgstr "op_conm" -#: sql_help.c:742 sql_help.c:2551 +#: sql_help.c:756 sql_help.c:2588 msgid "neg_op" msgstr "op_neg" -#: sql_help.c:794 sql_help.c:806 sql_help.c:2570 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 msgid "strategy_number" msgstr "número_de_estrategia" -#: sql_help.c:796 sql_help.c:797 sql_help.c:800 sql_help.c:801 sql_help.c:807 -#: sql_help.c:808 sql_help.c:810 sql_help.c:811 sql_help.c:2572 sql_help.c:2573 -#: sql_help.c:2576 sql_help.c:2577 +#: 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 msgid "op_type" msgstr "tipo_op" -#: sql_help.c:798 sql_help.c:2574 +#: sql_help.c:812 sql_help.c:2611 msgid "sort_family_name" msgstr "nombre_familia_ordenamiento" -#: sql_help.c:799 sql_help.c:809 sql_help.c:2575 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 msgid "support_number" msgstr "número_de_soporte" -#: sql_help.c:803 sql_help.c:2157 sql_help.c:2579 sql_help.c:3115 -#: sql_help.c:3117 +#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 +#: sql_help.c:3162 msgid "argument_type" msgstr "tipo_argumento" -#: sql_help.c:834 sql_help.c:837 sql_help.c:926 sql_help.c:1055 sql_help.c:1095 -#: sql_help.c:1567 sql_help.c:1570 sql_help.c:1746 sql_help.c:1799 -#: sql_help.c:1870 sql_help.c:1895 sql_help.c:1908 sql_help.c:1923 -#: sql_help.c:1983 sql_help.c:1989 sql_help.c:2353 sql_help.c:2365 -#: sql_help.c:2486 sql_help.c:2526 sql_help.c:2603 sql_help.c:2657 -#: sql_help.c:2710 sql_help.c:2762 sql_help.c:2795 sql_help.c:2802 -#: sql_help.c:2911 sql_help.c:2929 sql_help.c:2942 sql_help.c:3021 -#: sql_help.c:3141 sql_help.c:3322 sql_help.c:3545 sql_help.c:3594 -#: sql_help.c:3700 sql_help.c:3910 sql_help.c:3916 sql_help.c:3977 -#: sql_help.c:4009 sql_help.c:4373 sql_help.c:4379 sql_help.c:4497 -#: sql_help.c:4610 sql_help.c:4673 sql_help.c:4712 sql_help.c:4868 -#: sql_help.c:4931 sql_help.c:4965 sql_help.c:5023 sql_help.c:5113 -#: sql_help.c:5176 +#: 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 msgid "table_name" msgstr "nombre_de_tabla" -#: sql_help.c:839 sql_help.c:2605 +#: sql_help.c:853 sql_help.c:2642 msgid "using_expression" msgstr "expresión_using" -#: sql_help.c:840 sql_help.c:2606 +#: sql_help.c:854 sql_help.c:2643 msgid "check_expression" msgstr "expresión_check" -#: sql_help.c:913 sql_help.c:915 sql_help.c:917 sql_help.c:2653 +#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 msgid "publication_object" msgstr "objeto_de_publicación" -#: sql_help.c:919 sql_help.c:2654 +#: sql_help.c:933 sql_help.c:2691 msgid "publication_parameter" msgstr "parámetro_de_publicación" -#: sql_help.c:925 sql_help.c:2656 +#: sql_help.c:939 sql_help.c:2693 msgid "where publication_object is one of:" msgstr "donde objeto_de_publicación es uno de:" -#: sql_help.c:968 sql_help.c:1658 sql_help.c:2464 sql_help.c:2689 -#: sql_help.c:3256 +#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 +#: sql_help.c:3301 msgid "password" msgstr "contraseña" -#: sql_help.c:969 sql_help.c:1659 sql_help.c:2465 sql_help.c:2690 -#: sql_help.c:3257 +#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 +#: sql_help.c:3302 msgid "timestamp" msgstr "fecha_hora" -#: sql_help.c:973 sql_help.c:977 sql_help.c:980 sql_help.c:983 sql_help.c:1663 -#: sql_help.c:1667 sql_help.c:1670 sql_help.c:1673 sql_help.c:3923 -#: sql_help.c:4386 +#: 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 msgid "database_name" msgstr "nombre_de_base_de_datos" -#: sql_help.c:1089 sql_help.c:2757 +#: sql_help.c:1104 sql_help.c:2796 msgid "increment" msgstr "incremento" -#: sql_help.c:1090 sql_help.c:2758 +#: sql_help.c:1105 sql_help.c:2797 msgid "minvalue" msgstr "valormin" -#: sql_help.c:1091 sql_help.c:2759 +#: sql_help.c:1106 sql_help.c:2798 msgid "maxvalue" msgstr "valormax" -#: sql_help.c:1092 sql_help.c:2760 sql_help.c:4606 sql_help.c:4710 -#: sql_help.c:4864 sql_help.c:5040 sql_help.c:5109 +#: 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 msgid "start" msgstr "inicio" -#: sql_help.c:1093 sql_help.c:1365 +#: sql_help.c:1108 sql_help.c:1382 msgid "restart" msgstr "reinicio" -#: sql_help.c:1094 sql_help.c:2761 +#: sql_help.c:1109 sql_help.c:2800 msgid "cache" msgstr "cache" -#: sql_help.c:1139 +#: sql_help.c:1154 msgid "new_target" msgstr "nuevo_valor" -#: sql_help.c:1158 sql_help.c:2814 +#: sql_help.c:1173 sql_help.c:2853 msgid "conninfo" msgstr "conninfo" -#: sql_help.c:1160 sql_help.c:1164 sql_help.c:1168 sql_help.c:2815 +#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 msgid "publication_name" msgstr "nombre_de_publicación" -#: sql_help.c:1161 sql_help.c:1165 sql_help.c:1169 +#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 msgid "publication_option" msgstr "opción_de_publicación" -#: sql_help.c:1172 +#: sql_help.c:1187 msgid "refresh_option" msgstr "opción_refresh" -#: sql_help.c:1177 sql_help.c:2816 +#: sql_help.c:1192 sql_help.c:2855 msgid "subscription_parameter" msgstr "parámetro_de_suscripción" -#: sql_help.c:1180 +#: sql_help.c:1195 msgid "skip_option" msgstr "opción_skip" -#: sql_help.c:1340 sql_help.c:1343 +#: sql_help.c:1357 sql_help.c:1360 msgid "partition_name" msgstr "nombre_de_partición" -#: sql_help.c:1341 sql_help.c:2370 sql_help.c:2947 +#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 msgid "partition_bound_spec" msgstr "borde_de_partición" -#: sql_help.c:1362 sql_help.c:1412 sql_help.c:2961 +#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 msgid "sequence_options" msgstr "opciones_de_secuencia" -#: sql_help.c:1364 +#: sql_help.c:1381 msgid "sequence_option" msgstr "opción_de_secuencia" -#: sql_help.c:1378 +#: sql_help.c:1395 msgid "table_constraint_using_index" msgstr "restricción_de_tabla_con_índice" -#: sql_help.c:1386 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 msgid "rewrite_rule_name" msgstr "nombre_regla_de_reescritura" -#: sql_help.c:1401 sql_help.c:2382 sql_help.c:2986 +#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 msgid "and partition_bound_spec is:" msgstr "y borde_de_partición es:" -#: sql_help.c:1402 sql_help.c:1403 sql_help.c:1404 sql_help.c:2383 -#: sql_help.c:2384 sql_help.c:2385 sql_help.c:2987 sql_help.c:2988 -#: sql_help.c:2989 +#: 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 msgid "partition_bound_expr" msgstr "expresión_de_borde_de_partición" -#: sql_help.c:1405 sql_help.c:1406 sql_help.c:2386 sql_help.c:2387 -#: sql_help.c:2990 sql_help.c:2991 +#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 +#: sql_help.c:3035 sql_help.c:3036 msgid "numeric_literal" msgstr "literal_numérico" -#: sql_help.c:1407 +#: sql_help.c:1425 msgid "and column_constraint is:" msgstr "donde restricción_de_columna es:" -#: sql_help.c:1410 sql_help.c:2377 sql_help.c:2418 sql_help.c:2627 -#: sql_help.c:2959 +#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 +#: sql_help.c:2999 msgid "default_expr" msgstr "expr_por_omisión" -#: sql_help.c:1411 sql_help.c:2378 sql_help.c:2960 +#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 msgid "generation_expr" msgstr "expr_de_generación" -#: sql_help.c:1413 sql_help.c:1414 sql_help.c:1423 sql_help.c:1425 -#: sql_help.c:1429 sql_help.c:2962 sql_help.c:2963 sql_help.c:2972 -#: sql_help.c:2974 sql_help.c:2978 +#: 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 msgid "index_parameters" msgstr "parámetros_de_índice" -#: sql_help.c:1415 sql_help.c:1432 sql_help.c:2964 sql_help.c:2981 +#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 msgid "reftable" msgstr "tabla_ref" -#: sql_help.c:1416 sql_help.c:1433 sql_help.c:2965 sql_help.c:2982 +#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 +#: sql_help.c:3026 sql_help.c:3027 msgid "refcolumn" msgstr "columna_ref" -#: sql_help.c:1417 sql_help.c:1418 sql_help.c:1434 sql_help.c:1435 -#: sql_help.c:2966 sql_help.c:2967 sql_help.c:2983 sql_help.c:2984 +#: 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 msgid "referential_action" msgstr "acción_referencial" -#: sql_help.c:1419 sql_help.c:2379 sql_help.c:2968 +#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 msgid "and table_constraint is:" msgstr "y restricción_de_tabla es:" -#: sql_help.c:1427 sql_help.c:2976 +#: sql_help.c:1448 sql_help.c:3019 msgid "exclude_element" msgstr "elemento_de_exclusión" -#: sql_help.c:1428 sql_help.c:2977 sql_help.c:4604 sql_help.c:4708 -#: sql_help.c:4862 sql_help.c:5038 sql_help.c:5107 +#: 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 msgid "operator" msgstr "operador" -#: sql_help.c:1430 sql_help.c:2498 sql_help.c:2979 +#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 msgid "predicate" msgstr "predicado" -#: sql_help.c:1436 +#: sql_help.c:1459 msgid "and table_constraint_using_index is:" msgstr "y restricción_de_tabla_con_índice es:" -#: sql_help.c:1439 sql_help.c:2992 +#: sql_help.c:1462 sql_help.c:3037 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:1444 sql_help.c:2997 +#: sql_help.c:1467 sql_help.c:3042 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "elemento_de_exclusión en una restricción EXCLUDE es:" -#: sql_help.c:1448 sql_help.c:2491 sql_help.c:2924 sql_help.c:2937 -#: sql_help.c:2951 sql_help.c:3001 sql_help.c:4022 +#: 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 msgid "opclass" msgstr "clase_de_ops" -#: sql_help.c:1449 sql_help.c:2492 sql_help.c:3002 +#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 msgid "opclass_parameter" msgstr "parámetro_opclass" -#: sql_help.c:1451 sql_help.c:3004 +#: sql_help.c:1474 sql_help.c:3049 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:1469 sql_help.c:1472 sql_help.c:3041 +#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 msgid "tablespace_option" msgstr "opción_de_tablespace" -#: sql_help.c:1493 sql_help.c:1496 sql_help.c:1502 sql_help.c:1506 +#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 msgid "token_type" msgstr "tipo_de_token" -#: sql_help.c:1494 sql_help.c:1497 +#: sql_help.c:1517 sql_help.c:1520 msgid "dictionary_name" msgstr "nombre_diccionario" -#: sql_help.c:1499 sql_help.c:1503 +#: sql_help.c:1522 sql_help.c:1526 msgid "old_dictionary" msgstr "diccionario_antiguo" -#: sql_help.c:1500 sql_help.c:1504 +#: sql_help.c:1523 sql_help.c:1527 msgid "new_dictionary" msgstr "diccionario_nuevo" -#: sql_help.c:1599 sql_help.c:1613 sql_help.c:1616 sql_help.c:1617 -#: sql_help.c:3194 +#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 +#: sql_help.c:3239 msgid "attribute_name" msgstr "nombre_atributo" -#: sql_help.c:1600 +#: sql_help.c:1623 msgid "new_attribute_name" msgstr "nuevo_nombre_atributo" -#: sql_help.c:1604 sql_help.c:1608 +#: sql_help.c:1627 sql_help.c:1631 msgid "new_enum_value" msgstr "nuevo_valor_enum" -#: sql_help.c:1605 +#: sql_help.c:1628 msgid "neighbor_enum_value" msgstr "valor_enum_vecino" -#: sql_help.c:1607 +#: sql_help.c:1630 msgid "existing_enum_value" msgstr "valor_enum_existente" -#: sql_help.c:1610 +#: sql_help.c:1633 msgid "property" msgstr "propiedad" -#: sql_help.c:1686 sql_help.c:2362 sql_help.c:2371 sql_help.c:2773 -#: sql_help.c:3274 sql_help.c:3725 sql_help.c:3932 sql_help.c:3978 -#: sql_help.c:4395 +#: 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 msgid "server_name" msgstr "nombre_de_servidor" -#: sql_help.c:1718 sql_help.c:1721 sql_help.c:3289 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 msgid "view_option_name" msgstr "nombre_opción_de_vista" -#: sql_help.c:1719 sql_help.c:3290 +#: sql_help.c:1742 sql_help.c:3335 msgid "view_option_value" msgstr "valor_opción_de_vista" -#: sql_help.c:1740 sql_help.c:5007 +#: sql_help.c:1763 sql_help.c:5060 msgid "table_and_columns" msgstr "tabla_y_columnas" -#: sql_help.c:1741 sql_help.c:1801 sql_help.c:1995 sql_help.c:3774 -#: sql_help.c:4230 sql_help.c:5008 +#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 +#: sql_help.c:4281 sql_help.c:5061 msgid "where option can be one of:" msgstr "donde opción puede ser una de:" -#: sql_help.c:1742 sql_help.c:1743 sql_help.c:1802 sql_help.c:1997 -#: sql_help.c:2001 sql_help.c:2183 sql_help.c:3775 sql_help.c:3776 -#: sql_help.c:3777 sql_help.c:3778 sql_help.c:3779 sql_help.c:3780 -#: sql_help.c:3781 sql_help.c:3782 sql_help.c:3783 sql_help.c:3784 -#: sql_help.c:4231 sql_help.c:4233 sql_help.c:5009 sql_help.c:5010 -#: sql_help.c:5011 sql_help.c:5012 sql_help.c:5013 sql_help.c:5014 -#: sql_help.c:5015 sql_help.c:5016 sql_help.c:5017 sql_help.c:5019 -#: sql_help.c:5020 +#: 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 msgid "boolean" msgstr "booleano" -#: sql_help.c:1744 sql_help.c:5021 +#: sql_help.c:1767 sql_help.c:5074 msgid "size" msgstr "tamaño" -#: sql_help.c:1745 sql_help.c:5022 +#: sql_help.c:1768 sql_help.c:5075 msgid "and table_and_columns is:" msgstr "y tabla_y_columnas es:" -#: sql_help.c:1761 sql_help.c:4769 sql_help.c:4771 sql_help.c:4795 +#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 msgid "transaction_mode" msgstr "modo_de_transacción" -#: sql_help.c:1762 sql_help.c:4772 sql_help.c:4796 +#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 msgid "where transaction_mode is one of:" msgstr "donde modo_de_transacción es uno de:" -#: sql_help.c:1771 sql_help.c:4614 sql_help.c:4623 sql_help.c:4627 -#: sql_help.c:4631 sql_help.c:4634 sql_help.c:4872 sql_help.c:4881 -#: sql_help.c:4885 sql_help.c:4889 sql_help.c:4892 sql_help.c:5117 -#: sql_help.c:5126 sql_help.c:5130 sql_help.c:5134 sql_help.c:5137 +#: 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 msgid "argument" msgstr "argumento" -#: sql_help.c:1867 +#: sql_help.c:1890 msgid "relation_name" msgstr "nombre_relación" -#: sql_help.c:1872 sql_help.c:3926 sql_help.c:4389 +#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 msgid "domain_name" msgstr "nombre_de_dominio" -#: sql_help.c:1894 +#: sql_help.c:1917 msgid "policy_name" msgstr "nombre_de_política" -#: sql_help.c:1907 +#: sql_help.c:1930 msgid "rule_name" msgstr "nombre_regla" -#: sql_help.c:1926 sql_help.c:4528 +#: sql_help.c:1949 sql_help.c:4579 msgid "string_literal" msgstr "literal_de_cadena" -#: sql_help.c:1951 sql_help.c:4192 sql_help.c:4442 +#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 msgid "transaction_id" msgstr "id_de_transacción" -#: sql_help.c:1985 sql_help.c:1992 sql_help.c:4048 +#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 msgid "filename" msgstr "nombre_de_archivo" -#: sql_help.c:1986 sql_help.c:1993 sql_help.c:2712 sql_help.c:2713 -#: sql_help.c:2714 +#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 +#: sql_help.c:2751 msgid "command" msgstr "orden" -#: sql_help.c:1988 sql_help.c:2711 sql_help.c:3144 sql_help.c:3325 -#: sql_help.c:4032 sql_help.c:4115 sql_help.c:4118 sql_help.c:4121 -#: 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:4974 sql_help.c:5100 -#: sql_help.c:5102 +#: 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 msgid "condition" msgstr "condición" -#: sql_help.c:1991 sql_help.c:2532 sql_help.c:3027 sql_help.c:3291 -#: sql_help.c:3309 sql_help.c:4013 +#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 +#: sql_help.c:3354 sql_help.c:4061 msgid "query" msgstr "consulta" -#: sql_help.c:1996 +#: sql_help.c:2020 msgid "format_name" msgstr "nombre_de_formato" -#: sql_help.c:1998 +#: sql_help.c:2022 msgid "delimiter_character" msgstr "carácter_delimitador" -#: sql_help.c:1999 +#: sql_help.c:2023 msgid "null_string" msgstr "cadena_null" -#: sql_help.c:2000 +#: sql_help.c:2024 msgid "default_string" msgstr "cadena_por_omisión" -#: sql_help.c:2002 +#: sql_help.c:2026 msgid "quote_character" msgstr "carácter_de_comilla" -#: sql_help.c:2003 +#: sql_help.c:2027 msgid "escape_character" msgstr "carácter_de_escape" -#: sql_help.c:2007 +#: sql_help.c:2031 msgid "error_action" msgstr "acción_en_error" -#: sql_help.c:2008 +#: sql_help.c:2032 +#| msgid "syntax error" +msgid "maxerror" +msgstr "máx.error" + +#: sql_help.c:2033 msgid "encoding_name" msgstr "nombre_codificación" -#: sql_help.c:2009 +#: sql_help.c:2034 msgid "verbosity" msgstr "verbosidad" -#: sql_help.c:2020 +#: sql_help.c:2045 msgid "access_method_type" msgstr "tipo_de_método_de_acceso" -#: sql_help.c:2091 sql_help.c:2110 sql_help.c:2113 +#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 msgid "arg_data_type" msgstr "tipo_de_dato_arg" -#: sql_help.c:2092 sql_help.c:2114 sql_help.c:2122 +#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 msgid "sfunc" msgstr "func_transición" -#: sql_help.c:2093 sql_help.c:2115 sql_help.c:2123 +#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 msgid "state_data_type" msgstr "tipo_de_dato_de_estado" -#: sql_help.c:2094 sql_help.c:2116 sql_help.c:2124 +#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 msgid "state_data_size" msgstr "tamaño_de_dato_de_estado" -#: sql_help.c:2095 sql_help.c:2117 sql_help.c:2125 +#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 msgid "ffunc" msgstr "func_final" -#: sql_help.c:2096 sql_help.c:2126 +#: sql_help.c:2121 sql_help.c:2151 msgid "combinefunc" msgstr "func_combinación" -#: sql_help.c:2097 sql_help.c:2127 +#: sql_help.c:2122 sql_help.c:2152 msgid "serialfunc" msgstr "func_serial" -#: sql_help.c:2098 sql_help.c:2128 +#: sql_help.c:2123 sql_help.c:2153 msgid "deserialfunc" msgstr "func_deserial" -#: sql_help.c:2099 sql_help.c:2118 sql_help.c:2129 +#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 msgid "initial_condition" msgstr "condición_inicial" -#: sql_help.c:2100 sql_help.c:2130 +#: sql_help.c:2125 sql_help.c:2155 msgid "msfunc" msgstr "func_transición_m" -#: sql_help.c:2101 sql_help.c:2131 +#: sql_help.c:2126 sql_help.c:2156 msgid "minvfunc" msgstr "func_inv_m" -#: sql_help.c:2102 sql_help.c:2132 +#: sql_help.c:2127 sql_help.c:2157 msgid "mstate_data_type" msgstr "tipo_de_dato_de_estado_m" -#: sql_help.c:2103 sql_help.c:2133 +#: sql_help.c:2128 sql_help.c:2158 msgid "mstate_data_size" msgstr "tamaño_de_dato_de_estado_m" -#: sql_help.c:2104 sql_help.c:2134 +#: sql_help.c:2129 sql_help.c:2159 msgid "mffunc" msgstr "func_final_m" -#: sql_help.c:2105 sql_help.c:2135 +#: sql_help.c:2130 sql_help.c:2160 msgid "minitial_condition" msgstr "condición_inicial_m" -#: sql_help.c:2106 sql_help.c:2136 +#: sql_help.c:2131 sql_help.c:2161 msgid "sort_operator" msgstr "operador_de_ordenamiento" -#: sql_help.c:2119 +#: sql_help.c:2144 msgid "or the old syntax" msgstr "o la sintaxis antigua" -#: sql_help.c:2121 +#: sql_help.c:2146 msgid "base_type" msgstr "tipo_base" -#: sql_help.c:2179 sql_help.c:2229 +#: sql_help.c:2204 sql_help.c:2254 msgid "locale" msgstr "configuración regional" -#: sql_help.c:2180 sql_help.c:2230 +#: sql_help.c:2205 sql_help.c:2255 msgid "lc_collate" msgstr "lc_collate" -#: sql_help.c:2181 sql_help.c:2231 +#: sql_help.c:2206 sql_help.c:2256 msgid "lc_ctype" msgstr "lc_ctype" -#: sql_help.c:2182 sql_help.c:4495 +#: sql_help.c:2207 sql_help.c:4546 msgid "provider" msgstr "proveedor" -#: sql_help.c:2184 +#: sql_help.c:2209 msgid "rules" msgstr "reglas" -#: sql_help.c:2185 sql_help.c:2292 +#: sql_help.c:2210 sql_help.c:2317 msgid "version" msgstr "versión" -#: sql_help.c:2187 +#: sql_help.c:2212 msgid "existing_collation" msgstr "ordenamiento_existente" -#: sql_help.c:2197 +#: sql_help.c:2222 msgid "source_encoding" msgstr "codificación_origen" -#: sql_help.c:2198 +#: sql_help.c:2223 msgid "dest_encoding" msgstr "codificación_destino" -#: sql_help.c:2226 sql_help.c:3067 +#: sql_help.c:2251 sql_help.c:3112 msgid "template" msgstr "plantilla" -#: sql_help.c:2227 +#: sql_help.c:2252 msgid "encoding" msgstr "codificación" -#: sql_help.c:2228 +#: sql_help.c:2253 msgid "strategy" msgstr "estrategia" -#: sql_help.c:2232 +#: sql_help.c:2257 msgid "builtin_locale" msgstr "locale_builtin" -#: sql_help.c:2233 +#: sql_help.c:2258 msgid "icu_locale" msgstr "locale_icu" -#: sql_help.c:2234 +#: sql_help.c:2259 msgid "icu_rules" msgstr "reglas_icu" -#: sql_help.c:2235 +#: sql_help.c:2260 msgid "locale_provider" msgstr "proveedor_locale" -#: sql_help.c:2236 +#: sql_help.c:2261 msgid "collation_version" msgstr "versión_ordenamiento" -#: sql_help.c:2241 +#: sql_help.c:2266 msgid "oid" msgstr "oid" -#: sql_help.c:2276 sql_help.c:2709 sql_help.c:3140 +#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 msgid "event" msgstr "evento" -#: sql_help.c:2277 +#: sql_help.c:2302 msgid "filter_variable" msgstr "variable_de_filtrado" -#: sql_help.c:2278 +#: sql_help.c:2303 msgid "filter_value" msgstr "valor_de_filtrado" -#: sql_help.c:2374 sql_help.c:2956 +#: sql_help.c:2394 sql_help.c:2958 +msgid "source_table" +msgstr "tabla_origen" + +#: sql_help.c:2395 sql_help.c:2959 +msgid "like_option" +msgstr "opción_de_like" + +#: sql_help.c:2409 sql_help.c:2996 msgid "where column_constraint is:" msgstr "donde restricción_de_columna es:" -#: sql_help.c:2419 +#: sql_help.c:2418 sql_help.c:3030 +msgid "and like_option is:" +msgstr "y opción_de_like es:" + +#: sql_help.c:2456 msgid "rettype" msgstr "tipo_ret" -#: sql_help.c:2421 +#: sql_help.c:2458 msgid "column_type" msgstr "tipo_columna" -#: sql_help.c:2430 sql_help.c:2633 +#: sql_help.c:2467 sql_help.c:2670 msgid "definition" msgstr "definición" -#: sql_help.c:2431 sql_help.c:2634 +#: sql_help.c:2468 sql_help.c:2671 msgid "obj_file" msgstr "archivo_obj" -#: sql_help.c:2432 sql_help.c:2635 +#: sql_help.c:2469 sql_help.c:2672 msgid "link_symbol" msgstr "símbolo_enlace" -#: sql_help.c:2433 sql_help.c:2636 +#: sql_help.c:2470 sql_help.c:2673 msgid "sql_body" msgstr "contenido_sql" -#: sql_help.c:2471 sql_help.c:2694 sql_help.c:3263 +#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 msgid "uid" msgstr "uid" -#: sql_help.c:2487 sql_help.c:2528 sql_help.c:2925 sql_help.c:2938 -#: sql_help.c:2952 sql_help.c:3023 +#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 +#: sql_help.c:2992 sql_help.c:3068 msgid "method" msgstr "método" -#: sql_help.c:2509 +#: sql_help.c:2546 msgid "call_handler" msgstr "manejador_de_llamada" -#: sql_help.c:2510 +#: sql_help.c:2547 msgid "inline_handler" msgstr "manejador_en_línea" -#: sql_help.c:2511 +#: sql_help.c:2548 msgid "valfunction" msgstr "función_val" -#: sql_help.c:2569 +#: sql_help.c:2606 msgid "family_name" msgstr "nombre_familia" -#: sql_help.c:2580 +#: sql_help.c:2617 msgid "storage_type" msgstr "tipo_almacenamiento" -#: sql_help.c:2715 sql_help.c:3147 +#: sql_help.c:2752 sql_help.c:3192 msgid "where event can be one of:" msgstr "donde evento puede ser una de:" -#: sql_help.c:2735 sql_help.c:2737 +#: sql_help.c:2772 sql_help.c:2774 msgid "schema_element" msgstr "elemento_de_esquema" -#: sql_help.c:2774 +#: sql_help.c:2813 msgid "server_type" msgstr "tipo_de_servidor" -#: sql_help.c:2775 +#: sql_help.c:2814 msgid "server_version" msgstr "versión_de_servidor" -#: sql_help.c:2776 sql_help.c:3929 sql_help.c:4392 +#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 msgid "fdw_name" msgstr "nombre_fdw" -#: sql_help.c:2793 sql_help.c:2796 +#: sql_help.c:2832 sql_help.c:2835 msgid "statistics_name" msgstr "nombre_de_estadística" -#: sql_help.c:2797 +#: sql_help.c:2836 msgid "statistics_kind" msgstr "tipo_de_estadística" -#: sql_help.c:2813 +#: sql_help.c:2852 msgid "subscription_name" msgstr "nombre_de_suscripción" -#: sql_help.c:2918 -msgid "source_table" -msgstr "tabla_origen" - -#: sql_help.c:2919 -msgid "like_option" -msgstr "opción_de_like" - -#: sql_help.c:2985 -msgid "and like_option is:" -msgstr "y opción_de_like es:" - -#: sql_help.c:3040 +#: sql_help.c:3085 msgid "directory" msgstr "directorio" -#: sql_help.c:3054 +#: sql_help.c:3099 msgid "parser_name" msgstr "nombre_de_parser" -#: sql_help.c:3055 +#: sql_help.c:3100 msgid "source_config" msgstr "config_origen" -#: sql_help.c:3084 +#: sql_help.c:3129 msgid "start_function" msgstr "función_inicio" -#: sql_help.c:3085 +#: sql_help.c:3130 msgid "gettoken_function" msgstr "función_gettoken" -#: sql_help.c:3086 +#: sql_help.c:3131 msgid "end_function" msgstr "función_fin" -#: sql_help.c:3087 +#: sql_help.c:3132 msgid "lextypes_function" msgstr "función_lextypes" -#: sql_help.c:3088 +#: sql_help.c:3133 msgid "headline_function" msgstr "función_headline" -#: sql_help.c:3100 +#: sql_help.c:3145 msgid "init_function" msgstr "función_init" -#: sql_help.c:3101 +#: sql_help.c:3146 msgid "lexize_function" msgstr "función_lexize" -#: sql_help.c:3114 +#: sql_help.c:3159 msgid "from_sql_function_name" msgstr "nombre_de_función_from" -#: sql_help.c:3116 +#: sql_help.c:3161 msgid "to_sql_function_name" msgstr "nombre_de_función_to" -#: sql_help.c:3142 +#: sql_help.c:3187 msgid "referenced_table_name" msgstr "nombre_tabla_referenciada" -#: sql_help.c:3143 +#: sql_help.c:3188 msgid "transition_relation_name" msgstr "nombre_de_relación_de_transición" -#: sql_help.c:3146 +#: sql_help.c:3191 msgid "arguments" msgstr "argumentos" -#: sql_help.c:3198 +#: sql_help.c:3243 msgid "label" msgstr "etiqueta" -#: sql_help.c:3200 +#: sql_help.c:3245 msgid "subtype" msgstr "subtipo" -#: sql_help.c:3201 +#: sql_help.c:3246 msgid "subtype_operator_class" msgstr "clase_de_operador_del_subtipo" -#: sql_help.c:3203 +#: sql_help.c:3248 msgid "canonical_function" msgstr "función_canónica" -#: sql_help.c:3204 +#: sql_help.c:3249 msgid "subtype_diff_function" msgstr "función_diff_del_subtipo" -#: sql_help.c:3205 +#: sql_help.c:3250 msgid "multirange_type_name" msgstr "nombre_de_tipo_de_multirango" -#: sql_help.c:3207 +#: sql_help.c:3252 msgid "input_function" msgstr "función_entrada" -#: sql_help.c:3208 +#: sql_help.c:3253 msgid "output_function" msgstr "función_salida" -#: sql_help.c:3209 +#: sql_help.c:3254 msgid "receive_function" msgstr "función_receive" -#: sql_help.c:3210 +#: sql_help.c:3255 msgid "send_function" msgstr "función_send" -#: sql_help.c:3211 +#: sql_help.c:3256 msgid "type_modifier_input_function" msgstr "función_entrada_del_modificador_de_tipo" -#: sql_help.c:3212 +#: sql_help.c:3257 msgid "type_modifier_output_function" msgstr "función_salida_del_modificador_de_tipo" -#: sql_help.c:3213 +#: sql_help.c:3258 msgid "analyze_function" msgstr "función_analyze" -#: sql_help.c:3214 +#: sql_help.c:3259 msgid "subscript_function" msgstr "función_de_subíndice" -#: sql_help.c:3215 +#: sql_help.c:3260 msgid "internallength" msgstr "largo_interno" -#: sql_help.c:3216 +#: sql_help.c:3261 msgid "alignment" msgstr "alineamiento" -#: sql_help.c:3217 +#: sql_help.c:3262 msgid "storage" msgstr "almacenamiento" -#: sql_help.c:3218 +#: sql_help.c:3263 msgid "like_type" msgstr "como_tipo" -#: sql_help.c:3219 +#: sql_help.c:3264 msgid "category" msgstr "categoría" -#: sql_help.c:3220 +#: sql_help.c:3265 msgid "preferred" msgstr "preferido" -#: sql_help.c:3221 +#: sql_help.c:3266 msgid "default" msgstr "valor_por_omisión" -#: sql_help.c:3222 +#: sql_help.c:3267 msgid "element" msgstr "elemento" -#: sql_help.c:3223 +#: sql_help.c:3268 msgid "delimiter" msgstr "delimitador" -#: sql_help.c:3224 +#: sql_help.c:3269 msgid "collatable" msgstr "ordenable" -#: sql_help.c:3321 sql_help.c:4008 sql_help.c:4102 sql_help.c:4592 -#: sql_help.c:4695 sql_help.c:4850 sql_help.c:4964 sql_help.c:5095 +#: 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 msgid "with_query" msgstr "consulta_with" -#: sql_help.c:3323 sql_help.c:4010 sql_help.c:4611 sql_help.c:4617 -#: sql_help.c:4620 sql_help.c:4624 sql_help.c:4628 sql_help.c:4636 -#: sql_help.c:4869 sql_help.c:4875 sql_help.c:4878 sql_help.c:4882 -#: sql_help.c:4886 sql_help.c:4894 sql_help.c:4966 sql_help.c:5114 -#: sql_help.c:5120 sql_help.c:5123 sql_help.c:5127 sql_help.c:5131 -#: sql_help.c:5139 +#: 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 msgid "alias" msgstr "alias" -#: sql_help.c:3324 sql_help.c:4596 sql_help.c:4638 sql_help.c:4640 -#: sql_help.c:4644 sql_help.c:4646 sql_help.c:4647 sql_help.c:4648 -#: sql_help.c:4700 sql_help.c:4854 sql_help.c:4896 sql_help.c:4898 -#: sql_help.c:4902 sql_help.c:4904 sql_help.c:4905 sql_help.c:4906 -#: sql_help.c:4973 sql_help.c:5099 sql_help.c:5141 sql_help.c:5143 -#: sql_help.c:5147 sql_help.c:5149 sql_help.c:5150 sql_help.c:5151 +#: 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 msgid "from_item" msgstr "item_de_from" -#: sql_help.c:3326 sql_help.c:3810 sql_help.c:4159 sql_help.c:4975 +#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 msgid "cursor_name" msgstr "nombre_de_cursor" -#: sql_help.c:3327 sql_help.c:4016 sql_help.c:4108 sql_help.c:4976 +#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +#| msgid "output_name" +msgid "output_alias" +msgstr "alias_de_salida" + +#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 msgid "output_expression" msgstr "expresión_de_salida" -#: sql_help.c:3328 sql_help.c:4017 sql_help.c:4109 sql_help.c:4595 -#: sql_help.c:4698 sql_help.c:4853 sql_help.c:4977 sql_help.c:5098 +#: 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 msgid "output_name" msgstr "nombre_de_salida" -#: sql_help.c:3344 +#: sql_help.c:3391 msgid "code" msgstr "código" -#: sql_help.c:3749 +#: sql_help.c:3796 msgid "parameter" msgstr "parámetro" -#: sql_help.c:3773 sql_help.c:4184 +#: sql_help.c:3820 sql_help.c:4235 msgid "statement" msgstr "sentencia" -#: sql_help.c:3809 sql_help.c:4158 +#: sql_help.c:3856 sql_help.c:4209 msgid "direction" msgstr "dirección" -#: sql_help.c:3811 sql_help.c:4160 +#: sql_help.c:3858 sql_help.c:4211 msgid "where direction can be one of:" msgstr "donde dirección puede ser una de:" -#: sql_help.c:3812 sql_help.c:3813 sql_help.c:3814 sql_help.c:3815 -#: sql_help.c:3816 sql_help.c:4161 sql_help.c:4162 sql_help.c:4163 -#: sql_help.c:4164 sql_help.c:4165 sql_help.c:4605 sql_help.c:4607 -#: sql_help.c:4709 sql_help.c:4711 sql_help.c:4863 sql_help.c:4865 -#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5108 sql_help.c:5110 +#: 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 msgid "count" msgstr "cantidad" -#: sql_help.c:3919 sql_help.c:4382 +#: sql_help.c:3966 sql_help.c:4433 msgid "sequence_name" msgstr "nombre_secuencia" -#: sql_help.c:3937 sql_help.c:4400 +#: sql_help.c:3984 sql_help.c:4451 msgid "arg_name" msgstr "nombre_arg" -#: sql_help.c:3938 sql_help.c:4401 +#: sql_help.c:3985 sql_help.c:4452 msgid "arg_type" msgstr "tipo_arg" -#: sql_help.c:3945 sql_help.c:4408 +#: sql_help.c:3992 sql_help.c:4459 msgid "loid" msgstr "loid" -#: sql_help.c:3976 +#: sql_help.c:4023 msgid "remote_schema" msgstr "esquema_remoto" -#: sql_help.c:3979 +#: sql_help.c:4026 msgid "local_schema" msgstr "esquema_local" -#: sql_help.c:4014 +#: sql_help.c:4062 msgid "conflict_target" msgstr "destino_de_conflict" -#: sql_help.c:4015 +#: sql_help.c:4063 msgid "conflict_action" msgstr "acción_de_conflict" -#: sql_help.c:4018 +#: sql_help.c:4067 msgid "where conflict_target can be one of:" msgstr "donde destino_de_conflict puede ser uno de:" -#: sql_help.c:4019 +#: sql_help.c:4068 msgid "index_column_name" msgstr "nombre_de_columna_de_índice" -#: sql_help.c:4020 +#: sql_help.c:4069 msgid "index_expression" msgstr "expresión_de_índice" -#: sql_help.c:4023 +#: sql_help.c:4072 msgid "index_predicate" msgstr "predicado_de_índice" -#: sql_help.c:4025 +#: sql_help.c:4074 msgid "and conflict_action is one of:" msgstr "donde acción_de_conflict es una de:" -#: sql_help.c:4031 sql_help.c:4132 sql_help.c:4972 +#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 msgid "sub-SELECT" msgstr "sub-SELECT" -#: sql_help.c:4040 sql_help.c:4173 sql_help.c:4948 +#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 msgid "channel" msgstr "canal" -#: sql_help.c:4062 +#: sql_help.c:4111 msgid "lockmode" msgstr "modo_bloqueo" -#: sql_help.c:4063 +#: sql_help.c:4112 msgid "where lockmode is one of:" msgstr "donde modo_bloqueo es uno de:" -#: sql_help.c:4103 +#: sql_help.c:4153 msgid "target_table_name" msgstr "nombre_de_tabla_destino" -#: sql_help.c:4104 +#: sql_help.c:4154 msgid "target_alias" msgstr "alias_de_destino" -#: sql_help.c:4105 +#: sql_help.c:4155 msgid "data_source" msgstr "origin_de_datos" -#: sql_help.c:4106 sql_help.c:4641 sql_help.c:4899 sql_help.c:5144 +#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 msgid "join_condition" msgstr "condición_de_join" -#: sql_help.c:4107 +#: sql_help.c:4157 msgid "when_clause" msgstr "cláusula_when" -#: sql_help.c:4110 +#: sql_help.c:4161 msgid "where data_source is:" msgstr "donde origen_de_datos es:" -#: sql_help.c:4111 +#: sql_help.c:4162 msgid "source_table_name" msgstr "nombre_tabla_origen" -#: sql_help.c:4112 +#: sql_help.c:4163 msgid "source_query" msgstr "consulta_origen" -#: sql_help.c:4113 +#: sql_help.c:4164 msgid "source_alias" msgstr "alias_origen" -#: sql_help.c:4114 +#: sql_help.c:4165 msgid "and when_clause is:" msgstr "y cláusula_when es:" -#: sql_help.c:4116 sql_help.c:4119 +#: sql_help.c:4167 sql_help.c:4170 msgid "merge_update" msgstr "update_de_merge" -#: sql_help.c:4117 sql_help.c:4120 +#: sql_help.c:4168 sql_help.c:4171 msgid "merge_delete" msgstr "delete_de_merge" -#: sql_help.c:4122 +#: sql_help.c:4173 msgid "merge_insert" msgstr "insert_de_merge" -#: sql_help.c:4123 +#: sql_help.c:4174 msgid "and merge_insert is:" msgstr "y insert_de_merge es:" -#: sql_help.c:4126 +#: sql_help.c:4177 msgid "and merge_update is:" msgstr "y update_de_merge es:" -#: sql_help.c:4133 +#: sql_help.c:4184 msgid "and merge_delete is:" msgstr "y delete_de_merge es:" -#: sql_help.c:4174 +#: sql_help.c:4225 msgid "payload" msgstr "carga" -#: sql_help.c:4201 +#: sql_help.c:4252 msgid "old_role" msgstr "rol_antiguo" -#: sql_help.c:4202 +#: sql_help.c:4253 msgid "new_role" msgstr "rol_nuevo" -#: sql_help.c:4241 sql_help.c:4450 sql_help.c:4458 +#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 msgid "savepoint_name" msgstr "nombre_de_savepoint" -#: sql_help.c:4598 sql_help.c:4656 sql_help.c:4856 sql_help.c:4914 -#: sql_help.c:5101 sql_help.c:5159 +#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 +#: sql_help.c:5154 sql_help.c:5212 msgid "grouping_element" msgstr "elemento_agrupante" -#: sql_help.c:4600 sql_help.c:4704 sql_help.c:4858 sql_help.c:5103 +#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 msgid "window_name" msgstr "nombre_de_ventana" -#: sql_help.c:4601 sql_help.c:4705 sql_help.c:4859 sql_help.c:5104 +#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 msgid "window_definition" msgstr "definición_de_ventana" -#: sql_help.c:4602 sql_help.c:4616 sql_help.c:4660 sql_help.c:4706 -#: sql_help.c:4860 sql_help.c:4874 sql_help.c:4918 sql_help.c:5105 -#: sql_help.c:5119 sql_help.c:5163 +#: 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 msgid "select" msgstr "select" -#: sql_help.c:4608 sql_help.c:4866 sql_help.c:5111 +#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 msgid "from_reference" msgstr "referencia_en_from" -#: sql_help.c:4609 sql_help.c:4867 sql_help.c:5112 +#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 msgid "where from_item can be one of:" msgstr "donde item_de_from puede ser uno de:" -#: sql_help.c:4612 sql_help.c:4618 sql_help.c:4621 sql_help.c:4625 -#: sql_help.c:4637 sql_help.c:4870 sql_help.c:4876 sql_help.c:4879 -#: sql_help.c:4883 sql_help.c:4895 sql_help.c:5115 sql_help.c:5121 -#: sql_help.c:5124 sql_help.c:5128 sql_help.c:5140 +#: 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 msgid "column_alias" msgstr "alias_de_columna" -#: sql_help.c:4613 sql_help.c:4871 sql_help.c:5116 +#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 msgid "sampling_method" msgstr "método_de_sampleo" -#: sql_help.c:4615 sql_help.c:4873 sql_help.c:5118 +#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 msgid "seed" msgstr "semilla" -#: sql_help.c:4619 sql_help.c:4658 sql_help.c:4877 sql_help.c:4916 -#: sql_help.c:5122 sql_help.c:5161 +#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 +#: sql_help.c:5175 sql_help.c:5214 msgid "with_query_name" msgstr "nombre_consulta_with" -#: sql_help.c:4629 sql_help.c:4632 sql_help.c:4635 sql_help.c:4887 -#: sql_help.c:4890 sql_help.c:4893 sql_help.c:5132 sql_help.c:5135 -#: sql_help.c:5138 +#: 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 msgid "column_definition" msgstr "definición_de_columna" -#: sql_help.c:4639 sql_help.c:4645 sql_help.c:4897 sql_help.c:4903 -#: sql_help.c:5142 sql_help.c:5148 +#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 +#: sql_help.c:5195 sql_help.c:5201 msgid "join_type" msgstr "tipo_de_join" -#: sql_help.c:4642 sql_help.c:4900 sql_help.c:5145 +#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 msgid "join_column" msgstr "columna_de_join" -#: sql_help.c:4643 sql_help.c:4901 sql_help.c:5146 +#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 msgid "join_using_alias" msgstr "join_con_alias" -#: sql_help.c:4649 sql_help.c:4907 sql_help.c:5152 +#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 msgid "and grouping_element can be one of:" msgstr "donde elemento_agrupante puede ser una de:" -#: sql_help.c:4657 sql_help.c:4915 sql_help.c:5160 +#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 msgid "and with_query is:" msgstr "y consulta_with es:" -#: sql_help.c:4661 sql_help.c:4919 sql_help.c:5164 +#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "values" msgstr "valores" -#: sql_help.c:4662 sql_help.c:4920 sql_help.c:5165 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "insert" msgstr "insert" -#: sql_help.c:4663 sql_help.c:4921 sql_help.c:5166 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "update" msgstr "update" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5167 +#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 msgid "delete" msgstr "delete" -#: sql_help.c:4665 sql_help.c:4923 sql_help.c:5168 +#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 msgid "merge" msgstr "merge" -#: sql_help.c:4667 sql_help.c:4925 sql_help.c:5170 +#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 msgid "search_seq_col_name" msgstr "nombre_col_para_sec_de_búsqueda" -#: sql_help.c:4669 sql_help.c:4927 sql_help.c:5172 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "cycle_mark_col_name" msgstr "nombre_col_para_marca_de_ciclo" -#: sql_help.c:4670 sql_help.c:4928 sql_help.c:5173 +#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 msgid "cycle_mark_value" msgstr "valor_marca_de_ciclo" -#: sql_help.c:4671 sql_help.c:4929 sql_help.c:5174 +#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 msgid "cycle_mark_default" msgstr "valor_predet_marca_de_ciclo" -#: sql_help.c:4672 sql_help.c:4930 sql_help.c:5175 +#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 msgid "cycle_path_col_name" msgstr "nombre_col_para_ruta_de_ciclo" -#: sql_help.c:4699 +#: sql_help.c:4750 msgid "new_table" msgstr "nueva_tabla" -#: sql_help.c:4770 +#: sql_help.c:4821 msgid "snapshot_id" msgstr "id_de_snapshot" -#: sql_help.c:5037 +#: sql_help.c:5090 msgid "sort_expression" msgstr "expresión_orden" -#: sql_help.c:5182 sql_help.c:6166 +#: sql_help.c:5235 sql_help.c:6219 msgid "abort the current transaction" msgstr "aborta la transacción en curso" -#: sql_help.c:5188 +#: sql_help.c:5241 msgid "change the definition of an aggregate function" msgstr "cambia la definición de una función de agregación" -#: sql_help.c:5194 +#: sql_help.c:5247 msgid "change the definition of a collation" msgstr "cambia la definición de un ordenamiento" -#: sql_help.c:5200 +#: sql_help.c:5253 msgid "change the definition of a conversion" msgstr "cambia la definición de una conversión" -#: sql_help.c:5206 +#: sql_help.c:5259 msgid "change a database" msgstr "cambia una base de datos" -#: sql_help.c:5212 +#: sql_help.c:5265 msgid "define default access privileges" msgstr "define privilegios de acceso por omisión" -#: sql_help.c:5218 +#: sql_help.c:5271 msgid "change the definition of a domain" msgstr "cambia la definición de un dominio" -#: sql_help.c:5224 +#: sql_help.c:5277 msgid "change the definition of an event trigger" msgstr "cambia la definición de un disparador por evento" -#: sql_help.c:5230 +#: sql_help.c:5283 msgid "change the definition of an extension" msgstr "cambia la definición de una extensión" -#: sql_help.c:5236 +#: sql_help.c:5289 msgid "change the definition of a foreign-data wrapper" msgstr "cambia la definición de un conector de datos externos" -#: sql_help.c:5242 +#: sql_help.c:5295 msgid "change the definition of a foreign table" msgstr "cambia la definición de una tabla foránea" -#: sql_help.c:5248 +#: sql_help.c:5301 msgid "change the definition of a function" msgstr "cambia la definición de una función" -#: sql_help.c:5254 +#: sql_help.c:5307 msgid "change role name or membership" msgstr "cambiar nombre del rol o membresía" -#: sql_help.c:5260 +#: sql_help.c:5313 msgid "change the definition of an index" msgstr "cambia la definición de un índice" -#: sql_help.c:5266 +#: sql_help.c:5319 msgid "change the definition of a procedural language" msgstr "cambia la definición de un lenguaje procedural" -#: sql_help.c:5272 +#: sql_help.c:5325 msgid "change the definition of a large object" msgstr "cambia la definición de un objeto grande" -#: sql_help.c:5278 +#: sql_help.c:5331 msgid "change the definition of a materialized view" msgstr "cambia la definición de una vista materializada" -#: sql_help.c:5284 +#: sql_help.c:5337 msgid "change the definition of an operator" msgstr "cambia la definición de un operador" -#: sql_help.c:5290 +#: sql_help.c:5343 msgid "change the definition of an operator class" msgstr "cambia la definición de una clase de operadores" -#: sql_help.c:5296 +#: sql_help.c:5349 msgid "change the definition of an operator family" msgstr "cambia la definición de una familia de operadores" -#: sql_help.c:5302 +#: sql_help.c:5355 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:5308 +#: sql_help.c:5361 msgid "change the definition of a procedure" msgstr "cambia la definición de un procedimiento" -#: sql_help.c:5314 +#: sql_help.c:5367 msgid "change the definition of a publication" msgstr "cambia la definición de una publicación" -#: sql_help.c:5320 sql_help.c:5422 +#: sql_help.c:5373 sql_help.c:5475 msgid "change a database role" msgstr "cambia un rol de la base de datos" -#: sql_help.c:5326 +#: sql_help.c:5379 msgid "change the definition of a routine" msgstr "cambia la definición de una rutina" -#: sql_help.c:5332 +#: sql_help.c:5385 msgid "change the definition of a rule" msgstr "cambia la definición de una regla" -#: sql_help.c:5338 +#: sql_help.c:5391 msgid "change the definition of a schema" msgstr "cambia la definición de un esquema" -#: sql_help.c:5344 +#: sql_help.c:5397 msgid "change the definition of a sequence generator" msgstr "cambia la definición de un generador secuencial" -#: sql_help.c:5350 +#: sql_help.c:5403 msgid "change the definition of a foreign server" msgstr "cambia la definición de un servidor foráneo" -#: sql_help.c:5356 +#: sql_help.c:5409 msgid "change the definition of an extended statistics object" msgstr "cambia la definición de un objeto de estadísticas extendidas" -#: sql_help.c:5362 +#: sql_help.c:5415 msgid "change the definition of a subscription" msgstr "cambia la definición de una suscripción" -#: sql_help.c:5368 +#: sql_help.c:5421 msgid "change a server configuration parameter" msgstr "cambia un parámetro de configuración del servidor" -#: sql_help.c:5374 +#: sql_help.c:5427 msgid "change the definition of a table" msgstr "cambia la definición de una tabla" -#: sql_help.c:5380 +#: sql_help.c:5433 msgid "change the definition of a tablespace" msgstr "cambia la definición de un tablespace" -#: sql_help.c:5386 +#: sql_help.c:5439 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:5392 +#: sql_help.c:5445 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:5398 +#: sql_help.c:5451 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:5404 +#: sql_help.c:5457 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:5410 +#: sql_help.c:5463 msgid "change the definition of a trigger" msgstr "cambia la definición de un disparador" -#: sql_help.c:5416 +#: sql_help.c:5469 msgid "change the definition of a type" msgstr "cambia la definición de un tipo" -#: sql_help.c:5428 +#: sql_help.c:5481 msgid "change the definition of a user mapping" msgstr "cambia la definición de un mapeo de usuario" -#: sql_help.c:5434 +#: sql_help.c:5487 msgid "change the definition of a view" msgstr "cambia la definición de una vista" -#: sql_help.c:5440 +#: sql_help.c:5493 msgid "collect statistics about a database" msgstr "recolecta estadísticas sobre una base de datos" -#: sql_help.c:5446 sql_help.c:6244 +#: sql_help.c:5499 sql_help.c:6297 msgid "start a transaction block" msgstr "inicia un bloque de transacción" -#: sql_help.c:5452 +#: sql_help.c:5505 msgid "invoke a procedure" msgstr "invocar un procedimiento" -#: sql_help.c:5458 +#: sql_help.c:5511 msgid "force a write-ahead log checkpoint" msgstr "fuerza un checkpoint de wal" -#: sql_help.c:5464 +#: sql_help.c:5517 msgid "close a cursor" msgstr "cierra un cursor" -#: sql_help.c:5470 +#: sql_help.c:5523 msgid "cluster a table according to an index" msgstr "reordena una tabla siguiendo un índice" -#: sql_help.c:5476 +#: sql_help.c:5529 msgid "define or change the comment of an object" msgstr "define o cambia un comentario sobre un objeto" -#: sql_help.c:5482 sql_help.c:6040 +#: sql_help.c:5535 sql_help.c:6093 msgid "commit the current transaction" msgstr "compromete la transacción en curso" -#: sql_help.c:5488 +#: sql_help.c:5541 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:5494 +#: sql_help.c:5547 msgid "copy data between a file and a table" msgstr "copia datos entre un archivo y una tabla" -#: sql_help.c:5500 +#: sql_help.c:5553 msgid "define a new access method" msgstr "define un nuevo método de acceso" -#: sql_help.c:5506 +#: sql_help.c:5559 msgid "define a new aggregate function" msgstr "define una nueva función de agregación" -#: sql_help.c:5512 +#: sql_help.c:5565 msgid "define a new cast" msgstr "define una nueva conversión de tipo" -#: sql_help.c:5518 +#: sql_help.c:5571 msgid "define a new collation" msgstr "define un nuevo ordenamiento" -#: sql_help.c:5524 +#: sql_help.c:5577 msgid "define a new encoding conversion" msgstr "define una nueva conversión de codificación" -#: sql_help.c:5530 +#: sql_help.c:5583 msgid "create a new database" msgstr "crea una nueva base de datos" -#: sql_help.c:5536 +#: sql_help.c:5589 msgid "define a new domain" msgstr "define un nuevo dominio" -#: sql_help.c:5542 +#: sql_help.c:5595 msgid "define a new event trigger" msgstr "define un nuevo disparador por evento" -#: sql_help.c:5548 +#: sql_help.c:5601 msgid "install an extension" msgstr "instala una extensión" -#: sql_help.c:5554 +#: sql_help.c:5607 msgid "define a new foreign-data wrapper" msgstr "define un nuevo conector de datos externos" -#: sql_help.c:5560 +#: sql_help.c:5613 msgid "define a new foreign table" msgstr "define una nueva tabla foránea" -#: sql_help.c:5566 +#: sql_help.c:5619 msgid "define a new function" msgstr "define una nueva función" -#: sql_help.c:5572 sql_help.c:5632 sql_help.c:5734 +#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 msgid "define a new database role" msgstr "define un nuevo rol de la base de datos" -#: sql_help.c:5578 +#: sql_help.c:5631 msgid "define a new index" msgstr "define un nuevo índice" -#: sql_help.c:5584 +#: sql_help.c:5637 msgid "define a new procedural language" msgstr "define un nuevo lenguaje procedural" -#: sql_help.c:5590 +#: sql_help.c:5643 msgid "define a new materialized view" msgstr "define una nueva vista materializada" -#: sql_help.c:5596 +#: sql_help.c:5649 msgid "define a new operator" msgstr "define un nuevo operador" -#: sql_help.c:5602 +#: sql_help.c:5655 msgid "define a new operator class" msgstr "define una nueva clase de operadores" -#: sql_help.c:5608 +#: sql_help.c:5661 msgid "define a new operator family" msgstr "define una nueva familia de operadores" -#: sql_help.c:5614 +#: sql_help.c:5667 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:5620 +#: sql_help.c:5673 msgid "define a new procedure" msgstr "define un nuevo procedimiento" -#: sql_help.c:5626 +#: sql_help.c:5679 msgid "define a new publication" msgstr "define una nueva publicación" -#: sql_help.c:5638 +#: sql_help.c:5691 msgid "define a new rewrite rule" msgstr "define una nueva regla de reescritura" -#: sql_help.c:5644 +#: sql_help.c:5697 msgid "define a new schema" msgstr "define un nuevo esquema" -#: sql_help.c:5650 +#: sql_help.c:5703 msgid "define a new sequence generator" msgstr "define un nuevo generador secuencial" -#: sql_help.c:5656 +#: sql_help.c:5709 msgid "define a new foreign server" msgstr "define un nuevo servidor foráneo" -#: sql_help.c:5662 +#: sql_help.c:5715 msgid "define extended statistics" msgstr "define estadísticas extendidas" -#: sql_help.c:5668 +#: sql_help.c:5721 msgid "define a new subscription" msgstr "define una nueva suscripción" -#: sql_help.c:5674 +#: sql_help.c:5727 msgid "define a new table" msgstr "define una nueva tabla" -#: sql_help.c:5680 sql_help.c:6202 +#: sql_help.c:5733 sql_help.c:6255 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:5686 +#: sql_help.c:5739 msgid "define a new tablespace" msgstr "define un nuevo tablespace" -#: sql_help.c:5692 +#: sql_help.c:5745 msgid "define a new text search configuration" msgstr "define una nueva configuración de búsqueda en texto" -#: sql_help.c:5698 +#: sql_help.c:5751 msgid "define a new text search dictionary" msgstr "define un nuevo diccionario de búsqueda en texto" -#: sql_help.c:5704 +#: sql_help.c:5757 msgid "define a new text search parser" msgstr "define un nuevo analizador de búsqueda en texto" -#: sql_help.c:5710 +#: sql_help.c:5763 msgid "define a new text search template" msgstr "define una nueva plantilla de búsqueda en texto" -#: sql_help.c:5716 +#: sql_help.c:5769 msgid "define a new transform" msgstr "define una nueva transformación" -#: sql_help.c:5722 +#: sql_help.c:5775 msgid "define a new trigger" msgstr "define un nuevo disparador" -#: sql_help.c:5728 +#: sql_help.c:5781 msgid "define a new data type" msgstr "define un nuevo tipo de datos" -#: sql_help.c:5740 +#: sql_help.c:5793 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:5746 +#: sql_help.c:5799 msgid "define a new view" msgstr "define una nueva vista" -#: sql_help.c:5752 +#: sql_help.c:5805 msgid "deallocate a prepared statement" msgstr "elimina una sentencia preparada" -#: sql_help.c:5758 +#: sql_help.c:5811 msgid "define a cursor" msgstr "define un nuevo cursor" -#: sql_help.c:5764 +#: sql_help.c:5817 msgid "delete rows of a table" msgstr "elimina filas de una tabla" -#: sql_help.c:5770 +#: sql_help.c:5823 msgid "discard session state" msgstr "descartar datos de la sesión" -#: sql_help.c:5776 +#: sql_help.c:5829 msgid "execute an anonymous code block" msgstr "ejecutar un bloque anónimo de código" -#: sql_help.c:5782 +#: sql_help.c:5835 msgid "remove an access method" msgstr "elimina un método de acceso" -#: sql_help.c:5788 +#: sql_help.c:5841 msgid "remove an aggregate function" msgstr "elimina una función de agregación" -#: sql_help.c:5794 +#: sql_help.c:5847 msgid "remove a cast" msgstr "elimina una conversión de tipo" -#: sql_help.c:5800 +#: sql_help.c:5853 msgid "remove a collation" msgstr "elimina un ordenamiento" -#: sql_help.c:5806 +#: sql_help.c:5859 msgid "remove a conversion" msgstr "elimina una conversión de codificación" -#: sql_help.c:5812 +#: sql_help.c:5865 msgid "remove a database" msgstr "elimina una base de datos" -#: sql_help.c:5818 +#: sql_help.c:5871 msgid "remove a domain" msgstr "elimina un dominio" -#: sql_help.c:5824 +#: sql_help.c:5877 msgid "remove an event trigger" msgstr "elimina un disparador por evento" -#: sql_help.c:5830 +#: sql_help.c:5883 msgid "remove an extension" msgstr "elimina una extensión" -#: sql_help.c:5836 +#: sql_help.c:5889 msgid "remove a foreign-data wrapper" msgstr "elimina un conector de datos externos" -#: sql_help.c:5842 +#: sql_help.c:5895 msgid "remove a foreign table" msgstr "elimina una tabla foránea" -#: sql_help.c:5848 +#: sql_help.c:5901 msgid "remove a function" msgstr "elimina una función" -#: sql_help.c:5854 sql_help.c:5920 sql_help.c:6022 +#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 msgid "remove a database role" msgstr "elimina un rol de base de datos" -#: sql_help.c:5860 +#: sql_help.c:5913 msgid "remove an index" msgstr "elimina un índice" -#: sql_help.c:5866 +#: sql_help.c:5919 msgid "remove a procedural language" msgstr "elimina un lenguaje procedural" -#: sql_help.c:5872 +#: sql_help.c:5925 msgid "remove a materialized view" msgstr "elimina una vista materializada" -#: sql_help.c:5878 +#: sql_help.c:5931 msgid "remove an operator" msgstr "elimina un operador" -#: sql_help.c:5884 +#: sql_help.c:5937 msgid "remove an operator class" msgstr "elimina una clase de operadores" -#: sql_help.c:5890 +#: sql_help.c:5943 msgid "remove an operator family" msgstr "elimina una familia de operadores" -#: sql_help.c:5896 +#: sql_help.c:5949 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:5902 +#: sql_help.c:5955 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:5908 +#: sql_help.c:5961 msgid "remove a procedure" msgstr "elimina un procedimiento" -#: sql_help.c:5914 +#: sql_help.c:5967 msgid "remove a publication" msgstr "elimina una publicación" -#: sql_help.c:5926 +#: sql_help.c:5979 msgid "remove a routine" msgstr "elimina una rutina" -#: sql_help.c:5932 +#: sql_help.c:5985 msgid "remove a rewrite rule" msgstr "elimina una regla de reescritura" -#: sql_help.c:5938 +#: sql_help.c:5991 msgid "remove a schema" msgstr "elimina un esquema" -#: sql_help.c:5944 +#: sql_help.c:5997 msgid "remove a sequence" msgstr "elimina un generador secuencial" -#: sql_help.c:5950 +#: sql_help.c:6003 msgid "remove a foreign server descriptor" msgstr "elimina un descriptor de servidor foráneo" -#: sql_help.c:5956 +#: sql_help.c:6009 msgid "remove extended statistics" msgstr "elimina estadísticas extendidas" -#: sql_help.c:5962 +#: sql_help.c:6015 msgid "remove a subscription" msgstr "elimina una suscripción" -#: sql_help.c:5968 +#: sql_help.c:6021 msgid "remove a table" msgstr "elimina una tabla" -#: sql_help.c:5974 +#: sql_help.c:6027 msgid "remove a tablespace" msgstr "elimina un tablespace" -#: sql_help.c:5980 +#: sql_help.c:6033 msgid "remove a text search configuration" msgstr "elimina una configuración de búsqueda en texto" -#: sql_help.c:5986 +#: sql_help.c:6039 msgid "remove a text search dictionary" msgstr "elimina un diccionario de búsqueda en texto" -#: sql_help.c:5992 +#: sql_help.c:6045 msgid "remove a text search parser" msgstr "elimina un analizador de búsqueda en texto" -#: sql_help.c:5998 +#: sql_help.c:6051 msgid "remove a text search template" msgstr "elimina una plantilla de búsqueda en texto" -#: sql_help.c:6004 +#: sql_help.c:6057 msgid "remove a transform" msgstr "elimina una transformación" -#: sql_help.c:6010 +#: sql_help.c:6063 msgid "remove a trigger" msgstr "elimina un disparador" -#: sql_help.c:6016 +#: sql_help.c:6069 msgid "remove a data type" msgstr "elimina un tipo de datos" -#: sql_help.c:6028 +#: sql_help.c:6081 msgid "remove a user mapping for a foreign server" msgstr "elimina un mapeo de usuario para un servidor remoto" -#: sql_help.c:6034 +#: sql_help.c:6087 msgid "remove a view" msgstr "elimina una vista" -#: sql_help.c:6046 +#: sql_help.c:6099 msgid "execute a prepared statement" msgstr "ejecuta una sentencia preparada" -#: sql_help.c:6052 +#: sql_help.c:6105 msgid "show the execution plan of a statement" msgstr "muestra el plan de ejecución de una sentencia" -#: sql_help.c:6058 +#: sql_help.c:6111 msgid "retrieve rows from a query using a cursor" msgstr "recupera filas de una consulta usando un cursor" -#: sql_help.c:6064 +#: sql_help.c:6117 msgid "define access privileges" msgstr "define privilegios de acceso" -#: sql_help.c:6070 +#: sql_help.c:6123 msgid "import table definitions from a foreign server" msgstr "importa definiciones de tablas desde un servidor foráneo" -#: sql_help.c:6076 +#: sql_help.c:6129 msgid "create new rows in a table" msgstr "crea nuevas filas en una tabla" -#: sql_help.c:6082 +#: sql_help.c:6135 msgid "listen for a notification" msgstr "escucha notificaciones" -#: sql_help.c:6088 +#: sql_help.c:6141 msgid "load a shared library file" msgstr "carga un archivo de biblioteca compartida" -#: sql_help.c:6094 +#: sql_help.c:6147 msgid "lock a table" msgstr "bloquea una tabla" -#: sql_help.c:6100 +#: sql_help.c:6153 msgid "conditionally insert, update, or delete rows of a table" msgstr "condicionalmente inserta, actualiza o elimina filas de una tabla" -#: sql_help.c:6106 +#: sql_help.c:6159 msgid "position a cursor" msgstr "reposiciona un cursor" -#: sql_help.c:6112 +#: sql_help.c:6165 msgid "generate a notification" msgstr "genera una notificación" -#: sql_help.c:6118 +#: sql_help.c:6171 msgid "prepare a statement for execution" msgstr "prepara una sentencia para ejecución" -#: sql_help.c:6124 +#: sql_help.c:6177 msgid "prepare the current transaction for two-phase commit" msgstr "prepara la transacción actual para two-phase commit" -#: sql_help.c:6130 +#: sql_help.c:6183 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:6136 +#: sql_help.c:6189 msgid "replace the contents of a materialized view" msgstr "reemplaza los contenidos de una vista materializada" -#: sql_help.c:6142 +#: sql_help.c:6195 msgid "rebuild indexes" msgstr "reconstruye índices" -#: sql_help.c:6148 +#: sql_help.c:6201 msgid "release a previously defined savepoint" msgstr "libera un “savepoint” definido previamente" -#: sql_help.c:6154 +#: sql_help.c:6207 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:6160 +#: sql_help.c:6213 msgid "remove access privileges" msgstr "revoca privilegios de acceso" -#: sql_help.c:6172 +#: sql_help.c:6225 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:6178 +#: sql_help.c:6231 msgid "roll back to a savepoint" msgstr "descartar hacia un “savepoint”" -#: sql_help.c:6184 +#: sql_help.c:6237 msgid "define a new savepoint within the current transaction" msgstr "define un nuevo ”savepoint” en la transacción en curso" -#: sql_help.c:6190 +#: sql_help.c:6243 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:6196 sql_help.c:6250 sql_help.c:6286 +#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 msgid "retrieve rows from a table or view" msgstr "recupera filas desde una tabla o vista" -#: sql_help.c:6208 +#: sql_help.c:6261 msgid "change a run-time parameter" msgstr "cambia un parámetro de configuración" -#: sql_help.c:6214 +#: sql_help.c:6267 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:6220 +#: sql_help.c:6273 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:6226 +#: sql_help.c:6279 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:6232 +#: sql_help.c:6285 msgid "set the characteristics of the current transaction" msgstr "define las características de la transacción en curso" -#: sql_help.c:6238 +#: sql_help.c:6291 msgid "show the value of a run-time parameter" msgstr "muestra el valor de un parámetro de configuración" -#: sql_help.c:6256 +#: sql_help.c:6309 msgid "empty a table or set of tables" msgstr "vacía una tabla o conjunto de tablas" -#: sql_help.c:6262 +#: sql_help.c:6315 msgid "stop listening for a notification" msgstr "deja de escuchar una notificación" -#: sql_help.c:6268 +#: sql_help.c:6321 msgid "update rows of a table" msgstr "actualiza filas de una tabla" -#: sql_help.c:6274 +#: sql_help.c:6327 msgid "garbage-collect and optionally analyze a database" msgstr "recolecta basura y opcionalmente estadísticas sobre una base de datos" -#: sql_help.c:6280 +#: sql_help.c:6333 msgid "compute a set of rows" msgstr "calcula un conjunto de registros" -#: startup.c:220 +#: startup.c:225 #, c-format msgid "-1 can only be used in non-interactive mode" msgstr "-1 sólo puede ser usado en modo no interactivo" -#: startup.c:343 +#: startup.c:348 #, c-format msgid "could not open log file \"%s\": %m" msgstr "no se pudo abrir el archivo de registro «%s»: %m" -#: startup.c:460 +#: startup.c:465 #, c-format msgid "" "Type \"help\" for help.\n" @@ -6521,27 +6920,27 @@ msgstr "" "Digite «help» para obtener ayuda.\n" "\n" -#: startup.c:612 +#: startup.c:617 #, c-format msgid "could not set printing parameter \"%s\"" msgstr "no se pudo definir parámetro de impresión «%s»" -#: startup.c:719 +#: startup.c:724 #, c-format msgid "Try \"%s --help\" for more information." msgstr "Pruebe «%s --help» para mayor información." -#: startup.c:735 +#: startup.c:740 #, c-format msgid "extra command-line argument \"%s\" ignored" msgstr "se ignoró argumento extra «%s» en línea de órdenes" -#: startup.c:783 +#: startup.c:788 #, c-format msgid "could not find own program executable" msgstr "no se pudo encontrar el ejecutable propio" -#: tab-complete.c:6216 +#: tab-complete.in.c:6633 #, c-format msgid "" "tab completion query failed: %s\n" @@ -6552,22 +6951,52 @@ msgstr "" "La consulta era:\n" "%s" -#: variables.c:139 +#: variables.c:141 #, c-format msgid "unrecognized value \"%s\" for \"%s\": Boolean expected" msgstr "valor «%s» no reconocido para «%s»: se esperaba booleano" -#: variables.c:176 +#: variables.c:178 #, c-format msgid "invalid value \"%s\" for \"%s\": integer expected" msgstr "valor «%s» no válido para «%s»: se esperaba número entero" -#: variables.c:224 +#: variables.c:207 +#, c-format +#| msgid "invalid input syntax for type %s" +msgid "invalid input syntax for variable \"%s\"" +msgstr "sintaxis de entrada no válida para la variable «%s»" + +#: variables.c:218 +#, c-format +#| msgid "invalid value \"%s\" for \"%s\": integer expected" +msgid "invalid value \"%s\" for variable \"%s\": must be greater than %.2f" +msgstr "valor «%s» no válido para variable «%s»: debe ser mayor que %.2f" + +#: variables.c:225 +#, c-format +#| msgid "invalid value \"%s\" for \"%s\": integer expected" +msgid "invalid value \"%s\" for variable \"%s\": must be less than %.2f" +msgstr "valor «%s» no válido para variable «%s»: debe ser menor que %.2f" + +#: variables.c:241 +#, c-format +#| msgid "value \"%s\" is out of range for type %s" +msgid "value \"%s\" is out of range for variable \"%s\"" +msgstr "el valor «%s» está fuera de rango para la variable «%s»" + +#: variables.c:247 +#, c-format +#| msgid "invalid value \"%s\" for \"%s\"" +msgid "invalid value \"%s\" for variable \"%s\"" +msgstr "el valor «%s» no es válido para la variable «%s»" + +#: variables.c:294 #, c-format msgid "invalid variable name: \"%s\"" msgstr "nombre de variable no válido: «%s»" -#: variables.c:418 +#: variables.c:488 #, c-format msgid "" "unrecognized value \"%s\" for \"%s\"\n" @@ -6575,3 +7004,39 @@ msgid "" msgstr "" "valor «%s» no reconocido para «%s»\n" "Los valores disponibles son: %s." + +#, c-format +#~ msgid "Cannot print table contents: number of cells %lld is equal to or exceeds maximum %lld.\n" +#~ msgstr "No se puede imprimir el contenido de la tabla: el número de celdas %lld es igual o mayor al máximo %lld.\n" + +#, c-format +#~ msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" +#~ msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de %lld ha sido excedida.\n" + +#, c-format +#~ msgid "could not look up local user ID %d: %s" +#~ msgstr "no se pudo buscar el usuario local de ID %d: %s" + +#, c-format +#~ msgid "local user with ID %d does not exist" +#~ msgstr "no existe un usuario local con ID %d" + +#, c-format +#~ msgid "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" +#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en la dirección «%s» port «%s».\n" + +#, c-format +#~ msgid "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n" +#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» a través del socket en «%s» port «%s».\n" + +#, c-format +#~ msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n" +#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» (dirección «%s») port «%s».\n" + +#, c-format +#~ msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" +#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» port «%s».\n" + +#, c-format +#~ msgid "Unlogged materialized view \"%s.%s\"" +#~ msgstr "Vista materializada unlogged «%s.%s»" diff --git a/src/bin/psql/po/fr.po b/src/bin/psql/po/fr.po index 1959a994b20e9..3eb63f7694022 100644 --- a/src/bin/psql/po/fr.po +++ b/src/bin/psql/po/fr.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-20 03:18+0000\n" -"PO-Revision-Date: 2025-07-20 12:04+0200\n" +"POT-Creation-Date: 2025-09-20 04:47+0000\n" +"PO-Revision-Date: 2025-09-20 11:05+0200\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -20,7 +20,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.7\n" #: ../../../src/common/logging.c:279 #, c-format @@ -83,7 +83,7 @@ msgid "%s() failed: %m" msgstr "échec de %s() : %m" #: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 -#: command.c:1639 command.c:3988 command.c:4037 command.c:4162 input.c:225 +#: 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" @@ -105,7 +105,7 @@ msgstr "ne peut pas dupliquer un pointeur nul (erreur interne)\n" msgid "could not look up effective user ID %ld: %s" msgstr "n'a pas pu trouver l'identifiant réel %ld de l'utilisateur : %s" -#: ../../common/username.c:45 command.c:700 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "l'utilisateur n'existe pas" @@ -203,169 +203,174 @@ msgstr "l'argument de la commande shell contient un retour à la ligne ou un ret msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "le nom de la base contient un retour à la ligne ou un retour chariot : « %s »\n" -#: command.c:245 +#: command.c:254 +#, c-format +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "les commandes antislashs sont restreintes ; seule \\unrestrict est autorisée" + +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "commande \\%s invalide" -#: command.c:247 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr "Essayez \\? pour l'aide." -#: command.c:265 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s : argument « %s » supplémentaire ignoré" -#: command.c:317 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "commande \\%s ignorée ; utilisez \\endif ou Ctrl-C pour quitter le bloc \\if courant" -#: command.c:552 command.c:747 command.c:1885 command.c:2053 command.c:2366 -#: command.c:2380 command.c:2412 command.c:2501 command.c:2614 command.c:2892 -#: command.c:3154 command.c:3194 +#: 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 : argument requis manquant" -#: command.c:698 +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "n'a pas pu obtenir le répertoire principal pour l'identifiant d'utilisateur %ld : %s" -#: command.c:717 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s : n'a pas pu accéder au répertoire « %s » : %m" -#: command.c:790 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "Vous n'êtes pas connecté à une base de données.\n" -#: command.c:818 +#: command.c:839 msgid "Connection Information" msgstr "Informations de connexion" -#: command.c:819 describe.c:4722 +#: command.c:840 describe.c:4722 msgid "Parameter" msgstr "Paramètre" -#: command.c:820 describe.c:4723 +#: command.c:841 describe.c:4723 msgid "Value" msgstr "Valeur" -#: command.c:823 describe.c:3874 +#: command.c:844 describe.c:3874 msgid "Database" msgstr "Base de données" -#: command.c:827 +#: command.c:848 msgid "Client User" msgstr "Utilisateur client" -#: command.c:836 command.c:851 +#: command.c:857 command.c:872 msgid "Host Address" msgstr "Adresse hôte" -#: command.c:841 +#: command.c:862 msgid "Socket Directory" msgstr "Répertoire de la socket" -#: command.c:847 +#: command.c:868 msgid "Host" msgstr "Hôte" -#: command.c:857 +#: command.c:878 msgid "Server Port" msgstr "Port du serveur" -#: command.c:861 describe.c:246 describe.c:3615 describe.c:3955 +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 msgid "Options" msgstr "Options" -#: command.c:865 +#: command.c:886 msgid "Protocol Version" msgstr "Version du protocole" -#: command.c:869 +#: command.c:890 msgid "Password Used" msgstr "Mot de passe utilisé" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "false" msgstr "faux" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "true" msgstr "Vrai" -#: command.c:873 +#: command.c:894 msgid "GSSAPI Authenticated" msgstr "GSSAPI authentifié" -#: command.c:877 +#: command.c:898 msgid "Backend PID" msgstr "PID backend" -#: command.c:881 +#: command.c:902 msgid "SSL Connection" msgstr "Connexion SSL" -#: command.c:901 +#: command.c:922 msgid "SSL Library" msgstr "Bibliothèque SSL" -#: command.c:902 command.c:905 command.c:908 command.c:911 command.c:923 -#: command.c:927 command.c:4426 command.c:4427 +#: 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 "inconnu" -#: command.c:904 +#: command.c:925 msgid "SSL Protocol" msgstr "Protocole SSL" -#: command.c:907 +#: command.c:928 msgid "SSL Key Bits" msgstr "Bits de la clé SSL" -#: command.c:910 +#: command.c:931 msgid "SSL Cipher" msgstr "Algorithme SSL" -#: command.c:913 +#: command.c:934 msgid "SSL Compression" msgstr "Compression SSL" -#: command.c:917 +#: command.c:938 msgid "ALPN" msgstr "ALPN" -#: command.c:918 command.c:4429 +#: command.c:939 command.c:4519 msgid "none" msgstr "aucun" -#: command.c:1335 command.c:1436 command.c:3187 +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "aucun tampon de requête" -#: command.c:1368 command.c:6315 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "numéro de ligne invalide : %s" -#: command.c:1514 +#: command.c:1535 msgid "No changes" msgstr "Aucun changement" -#: command.c:1599 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s : nom d'encodage invalide ou procédure de conversion introuvable" -#: command.c:1635 command.c:2575 command.c:3984 command.c:4182 command.c:6421 +#: 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 @@ -374,223 +379,233 @@ msgstr "%s : nom d'encodage invalide ou procédure de conversion introuvable" msgid "%s" msgstr "%s" -#: command.c:1642 +#: command.c:1663 msgid "There is no previous error." msgstr "Il n'y a pas d'erreur précédente." -#: command.c:1745 command.c:1952 command.c:1978 command.c:3290 +#: command.c:1766 command.c:1973 command.c:1999 command.c:3380 #, c-format msgid "\\%s not allowed in pipeline mode" msgstr "\\%s non autorisé dans le mode pipeline" -#: command.c:1801 +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: parenthèse droite manquante" -#: command.c:1927 +#: command.c:1948 #, c-format msgid "\\getresults: invalid number of requested results" msgstr "\\getresults : nombre invalide de résultats demandés" -#: command.c:2184 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif : ne peut pas survenir après \\else" -#: command.c:2189 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif : pas de \\if correspondant" -#: command.c:2253 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else : ne peut pas survenir après \\else" -#: command.c:2258 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else : pas de \\if correspondant" -#: command.c:2298 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif : pas de \\if correspondant" -#: command.c:2476 +#: command.c:2497 msgid "Query buffer is empty." msgstr "Le tampon de requête est vide." -#: command.c:2553 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "Saisir le nouveau mot de passe de l'utilisateur « %s » : " -#: command.c:2557 +#: command.c:2578 msgid "Enter it again: " msgstr "Saisir le mot de passe à nouveau : " -#: command.c:2566 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "Les mots de passe ne sont pas identiques." -#: command.c:2649 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "\\%s : n'a pas pu lire la valeur pour la variable" -#: command.c:2751 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "Le tampon de requête a été effacé." -#: command.c:2773 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "Historique sauvegardé dans le fichier « %s ».\n" -#: command.c:2803 +#: command.c:2853 #, c-format msgid "\\sendpipeline must be used after \\bind or \\bind_named" msgstr "\\sendpipeline doit être utilisé après \\bind ou \\bind_named" -#: command.c:2810 +#: command.c:2860 #, c-format msgid "\\sendpipeline not allowed outside of pipeline mode" msgstr "\\sendpipeline non autorisé en dehors du mode pipeline" -#: command.c:2897 +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s : le nom de la variable d'environnement ne doit pas contenir « = »" -#: command.c:2945 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "le nom de la fonction est requis" -#: command.c:2947 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "le nom de la vue est requis" -#: command.c:3126 +#: command.c:3176 msgid "Timing is on." msgstr "Chronométrage activé." -#: command.c:3128 +#: command.c:3178 msgid "Timing is off." msgstr "Chronométrage désactivé." -#: command.c:3214 command.c:3252 command.c:4702 command.c:4705 command.c:4708 -#: command.c:4714 command.c:4716 command.c:4742 command.c:4752 command.c:4764 -#: command.c:4778 command.c:4805 command.c:4863 common.c:77 copy.c:329 +#: command.c:3208 +#, c-format +msgid "\\%s: not currently in restricted mode" +msgstr "\\%s : n'est pas actuellement en mode restreint" + +#: command.c:3218 +#, c-format +msgid "\\%s: wrong key" +msgstr "\\%s : mauvaise clé" + +#: 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:3241 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s : %s" -#: command.c:3322 command.c:3388 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch : la valeur d'intervalle est spécifiée plus d'une fois" -#: command.c:3332 command.c:3398 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch : valeur d'intervalle incorrecte « %s »" -#: command.c:3342 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: le nombre d'itération est spécifié plus d'une fois" -#: command.c:3352 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch : nombre d'itération incorrect « %s »" -#: command.c:3362 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: nombre de lignes minimum spécifié plus d'une fois" -#: command.c:3372 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch : nombre de lignes minimum incorrect « %s »" -#: command.c:3379 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch : paramètre « %s » non reconnu" -#: command.c:3785 startup.c:248 startup.c:298 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "Mot de passe : " -#: command.c:3790 startup.c:295 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "Mot de passe pour l'utilisateur %s : " -#: command.c:3846 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "Ne pas donner utilisateur, hôte ou port lors de l'utilisation d'une chaîne de connexion" -#: command.c:3881 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "Aucune connexion de base existante pour réutiliser ses paramètres" -#: command.c:4188 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "Connexion précédente conservée" -#: command.c:4194 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect : %s" -#: command.c:4250 +#: command.c:4340 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » à l'adresse « %s » via le port « %s ».\n" -#: command.c:4253 +#: 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 "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » via le socket dans « %s » via le port « %s ».\n" -#: command.c:4259 +#: 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 "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » sur l'hôte « %s » (adresse « %s » ) via le port « %s ».\n" -#: command.c:4262 +#: command.c:4352 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s » sur l'hôte « %s » via le port « %s ».\n" -#: command.c:4267 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "Vous êtes maintenant connecté à la base de données « %s » en tant qu'utilisateur « %s ».\n" -#: command.c:4373 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s, serveur %s)\n" -#: command.c:4386 +#: command.c:4476 #, c-format msgid "" "WARNING: %s major version %s, server major version %s.\n" @@ -599,25 +614,25 @@ msgstr "" "ATTENTION : %s version majeure %s, version majeure du serveur %s.\n" " Certaines fonctionnalités de psql pourraient ne pas fonctionner.\n" -#: command.c:4425 +#: command.c:4515 #, c-format msgid "SSL connection (protocol: %s, cipher: %s, compression: %s, ALPN: %s)\n" msgstr "Connexion SSL (protocole : %s, chiffrement : %s, compression : %s, ALPN : %s)\n" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "off" msgstr "désactivé" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "on" msgstr "activé" -#: command.c:4443 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "connexion chiffrée avec GSSAPI\n" -#: command.c:4463 +#: command.c:4553 #, c-format msgid "" "WARNING: Console code page (%u) differs from Windows code page (%u)\n" @@ -629,284 +644,284 @@ msgstr "" " Voir la section « Notes aux utilisateurs de Windows » de la page\n" " référence de psql pour les détails.\n" -#: command.c:4577 +#: command.c:4667 #, c-format msgid "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a line number" msgstr "la variable d'environnement PSQL_EDITOR_LINENUMBER_ARG doit être définie avec un numéro de ligne" -#: command.c:4607 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "n'a pas pu exécuter l'éditeur « %s »" -#: command.c:4609 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "n'a pas pu exécuter /bin/sh" -#: command.c:4659 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "n'a pas pu localiser le répertoire temporaire : %s" -#: command.c:4686 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "n'a pas pu ouvrir le fichier temporaire « %s » : %m" -#: command.c:5022 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: abréviation ambiguë : « %s » correspond à « %s » comme à « %s »" -#: command.c:5042 +#: command.c:5132 #, c-format msgid "\\pset: allowed formats are aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" msgstr "\\pset : les formats autorisés sont aligned, asciidoc, csv, html, latex, latex-longtable, troff-ms, unaligned, wrapped" -#: command.c:5061 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: les styles de lignes autorisés sont ascii, old-ascii, unicode" -#: command.c:5076 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset : les styles autorisés de ligne de bordure Unicode sont single, double" -#: command.c:5091 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset : les styles autorisés pour la ligne de colonne Unicode sont single, double" -#: command.c:5106 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset : les styles autorisés pour la ligne d'en-tête Unicode sont single, double" -#: command.c:5158 +#: 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: les valeurs acceptées pour xheader_width sont « %s » (par défaut), « %s », « %s » ou un nombre indiquant la largeur exacte" -#: command.c:5175 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsep doit être un unique caractère d'un octet" -#: command.c:5180 +#: command.c:5270 #, c-format msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return" msgstr "\\pset: csv_fieldsep ne peut pas être un guillemet, un retour à la ligne ou un retour chariot" -#: command.c:5318 command.c:5519 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset : option inconnue : %s" -#: command.c:5338 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "Le style de bordure est %d.\n" -#: command.c:5344 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "La largeur cible n'est pas configuré.\n" -#: command.c:5346 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "La largeur cible est %d.\n" -#: command.c:5353 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "Affichage étendu activé.\n" -#: command.c:5355 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "L'affichage étendu est utilisé automatiquement.\n" -#: command.c:5357 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "Affichage étendu désactivé.\n" -#: command.c:5364 command.c:5366 command.c:5368 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "La largeur étendue de l'entête est « %s ».\n" -#: command.c:5370 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "La largeur étendue de l'entête est %d.\n" -#: command.c:5376 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "Le séparateur de champs pour un CSV est « %s ».\n" -#: command.c:5384 command.c:5392 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "Le séparateur de champs est l'octet zéro.\n" -#: command.c:5386 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "Le séparateur de champs est « %s ».\n" -#: command.c:5399 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "Le bas de page pas défaut est activé.\n" -#: command.c:5401 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "Le bas de page par défaut est désactivé.\n" -#: command.c:5407 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "Le format de sortie est %s.\n" -#: command.c:5413 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "Le style de ligne est %s.\n" -#: command.c:5420 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "L'affichage de null est « %s ».\n" -#: command.c:5428 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "L'affichage de la sortie numérique adaptée à la locale est activé.\n" -#: command.c:5430 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "L'affichage de la sortie numérique adaptée à la locale est désactivé.\n" -#: command.c:5437 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "Le paginateur est utilisé pour les affichages longs.\n" -#: command.c:5439 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "Le paginateur est toujours utilisé.\n" -#: command.c:5441 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "L'utilisation du paginateur est désactivé.\n" -#: command.c:5447 +#: 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" msgstr[0] "Le paginateur ne sera pas utilisé pour moins que %d ligne.\n" msgstr[1] "Le paginateur ne sera pas utilisé pour moins que %d lignes.\n" -#: command.c:5457 command.c:5467 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "Le séparateur d'enregistrements est l'octet zéro.\n" -#: command.c:5459 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "Le séparateur d'enregistrement est .\n" -#: command.c:5461 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "Le séparateur d'enregistrements est « %s ».\n" -#: command.c:5474 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "Les attributs de la table sont « %s ».\n" -#: command.c:5477 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "Les attributs de la table ne sont pas définis.\n" -#: command.c:5484 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "Le titre est « %s ».\n" -#: command.c:5486 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "Le titre n'est pas défini.\n" -#: command.c:5493 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "L'affichage des tuples seuls est activé.\n" -#: command.c:5495 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "L'affichage des tuples seuls est désactivé.\n" -#: command.c:5501 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "Le style de bordure Unicode est « %s ».\n" -#: command.c:5507 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "Le style de ligne Unicode est « %s ».\n" -#: command.c:5513 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "Le style d'en-tête Unicode est « %s ».\n" -#: command.c:5762 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\! : échec" -#: command.c:5800 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch ne peut pas être utilisé avec une requête vide" -#: command.c:5832 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "n'a pas pu configurer le chronomètre : %m" -#: command.c:5901 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (chaque %gs)\n" -#: command.c:5904 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (chaque %gs)\n" -#: command.c:5968 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "n'a pas pu attendre le signal : %m" -#: command.c:6024 command.c:6031 common.c:667 common.c:674 common.c:1159 +#: command.c:6114 command.c:6121 common.c:667 common.c:674 common.c:1159 #, c-format msgid "" "/******** QUERY *********/\n" @@ -919,12 +934,12 @@ msgstr "" "**************************\n" "\n" -#: command.c:6210 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "« %s.%s » n'est pas une vue" -#: command.c:6226 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "n'a pas pu analyser le tableau reloptions" @@ -2726,7 +2741,7 @@ msgstr "" "psql est l'interface interactive de PostgreSQL.\n" "\n" -#: help.c:61 help.c:385 help.c:472 help.c:518 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "Usage :\n" @@ -3046,6 +3061,22 @@ msgstr " \\q quitte psql\n" #: help.c:174 msgid "" +" \\restrict RESTRICT_KEY\n" +" enter restricted mode with provided key\n" +msgstr "" +" \\restrict CLE_RESTRICTION\n" +" entre en mode restreint avec la clé fournie\n" + +#: help.c:176 +msgid "" +" \\unrestrict RESTRICT_KEY\n" +" exit restricted mode if key matches\n" +msgstr "" +" \\unrestrict CLE_RESTRICTION\n" +" sort du mode restreint si la clé correspond\n" + +#: help.c:178 +msgid "" " \\watch [[i=]SEC] [c=N] [m=MIN]\n" " execute query every SEC seconds, up to N times,\n" " stop if less than MIN rows are returned\n" @@ -3054,228 +3085,228 @@ msgstr "" " exécute la requête chaque SEC secondes, jusqu'à N fois,\n" " s'arrête si moins de MIN lignes sont renvoyés\n" -#: help.c:177 help.c:185 help.c:197 help.c:207 help.c:214 help.c:272 help.c:280 -#: help.c:300 help.c:313 help.c:322 help.c:328 +#: 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" -#: help.c:179 +#: help.c:183 msgid "Help\n" msgstr "Aide\n" -#: help.c:181 +#: help.c:185 msgid " \\? [commands] show help on backslash commands\n" msgstr " \\? [commandes] affiche l'aide sur les métacommandes\n" -#: help.c:182 +#: help.c:186 msgid " \\? options show help on psql command-line options\n" msgstr " \\? options affiche l'aide sur les options en ligne de commande de psql\n" -#: help.c:183 +#: help.c:187 msgid " \\? variables show help on special variables\n" msgstr " \\? variables affiche l'aide sur les variables spéciales\n" -#: help.c:184 +#: help.c:188 msgid " \\h [NAME] help on syntax of SQL commands, * for all commands\n" msgstr "" " \\h [NOM] aide-mémoire pour les commandes SQL, * pour toutes\n" " les commandes\n" -#: help.c:187 +#: help.c:191 msgid "Query Buffer\n" msgstr "Tampon de requête\n" -#: help.c:188 +#: help.c:192 msgid " \\e [FILE] [LINE] edit the query buffer (or file) with external editor\n" msgstr "" " \\e [FICHIER] [LIGNE] édite le tampon de requête ou le fichier avec un\n" " éditeur externe\n" -#: help.c:189 +#: help.c:193 msgid " \\ef [FUNCNAME [LINE]] edit function definition with external editor\n" msgstr "" " \\ef [FONCTION [LIGNE]] édite la définition de fonction avec un éditeur\n" " externe\n" -#: help.c:190 +#: help.c:194 msgid " \\ev [VIEWNAME [LINE]] edit view definition with external editor\n" msgstr "" " \\ev [VUE [LIGNE]] édite la définition de vue avec un éditeur\n" " externe\n" -#: help.c:191 +#: help.c:195 msgid " \\p show the contents of the query buffer\n" msgstr " \\p affiche le contenu du tampon de requête\n" -#: help.c:192 +#: help.c:196 msgid " \\r reset (clear) the query buffer\n" msgstr " \\r efface le tampon de requêtes\n" -#: help.c:194 +#: help.c:198 msgid " \\s [FILE] display history or save it to file\n" msgstr "" " \\s [FICHIER] affiche l'historique ou le sauvegarde dans un\n" " fichier\n" -#: help.c:196 +#: help.c:200 msgid " \\w FILE write query buffer to file\n" msgstr "" " \\w [FICHIER] écrit le contenu du tampon de requêtes dans un\n" " fichier\n" -#: help.c:199 +#: help.c:203 msgid "Input/Output\n" msgstr "Entrée/Sortie\n" -#: help.c:200 +#: help.c:204 msgid " \\copy ... perform SQL COPY with data stream to the client host\n" msgstr "" " \\copy ... exécute SQL COPY avec le flux de données dirigé vers\n" " l'hôte client\n" -#: help.c:201 +#: help.c:205 msgid " \\echo [-n] [STRING] write string to standard output (-n for no newline)\n" msgstr " \\echo [-n] [TEXTE] écrit le texte sur la sortie standard (-n pour supprimer le retour à la ligne)\n" -#: help.c:202 +#: help.c:206 msgid " \\i FILE execute commands from file\n" msgstr " \\i FICHIER exécute les commandes du fichier\n" -#: help.c:203 +#: help.c:207 msgid " \\ir FILE as \\i, but relative to location of current script\n" msgstr "" " \\ir FICHIER identique à \\i, mais relatif à l'emplacement du script\n" " ou un |tube\n" -#: help.c:204 +#: help.c:208 msgid " \\o [FILE] send all query results to file or |pipe\n" msgstr "" " \\o [FICHIER] envoie les résultats de la requête vers un fichier\n" " ou un |tube\n" -#: help.c:205 +#: help.c:209 msgid " \\qecho [-n] [STRING] write string to \\o output stream (-n for no newline)\n" msgstr "" " \\qecho [-n] [TEXTE] écrit un texte sur la sortie des résultats des\n" " requêtes (\\o) (-n pour supprimer le retour à la ligne)\n" -#: help.c:206 +#: help.c:210 msgid " \\warn [-n] [STRING] write string to standard error (-n for no newline)\n" msgstr " \\warn [-n] [TEXTE] écrit le texte sur la sortie des erreurs (-n pour supprimer le retour à la ligne)\n" -#: help.c:209 +#: help.c:213 msgid "Conditional\n" msgstr "Conditionnel\n" -#: help.c:210 +#: help.c:214 msgid " \\if EXPR begin conditional block\n" msgstr " \\if EXPR début du bloc conditionnel\n" -#: help.c:211 +#: help.c:215 msgid " \\elif EXPR alternative within current conditional block\n" msgstr " \\elif alternative à l'intérieur du bloc conditionnel courant\n" -#: help.c:212 +#: help.c:216 msgid " \\else final alternative within current conditional block\n" msgstr " \\else alternative finale à l'intérieur du bloc conditionnel courant\n" -#: help.c:213 +#: help.c:217 msgid " \\endif end conditional block\n" msgstr " \\endif bloc conditionnel de fin\n" -#: help.c:216 +#: help.c:220 msgid "Informational\n" msgstr "Informations\n" -#: help.c:217 +#: help.c:221 msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" msgstr " (options : S = affiche les objets systèmes, x = mode étendu, + = informations supplémentaires)\n" -#: help.c:218 +#: help.c:222 msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr " \\d[Sx+] affiche la liste des tables, vues et séquences\n" -#: help.c:219 +#: help.c:223 msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr "" " \\d[S+] NOM affiche la description de la table, de la vue,\n" " de la séquence ou de l'index\n" -#: help.c:220 +#: help.c:224 msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[Sx] [MODÈLE] affiche les agrégats\n" -#: help.c:221 +#: help.c:225 msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[x+] [MODÈLE] affiche la liste des méthodes d'accès\n" -#: help.c:222 +#: help.c:226 msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[x+] [AMPTRN [TYPEPTRN]] affiche les classes d'opérateurs\n" -#: help.c:223 +#: help.c:227 msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[x+] [AMPTRN [TYPEPTRN]] affiche les familles d'opérateur\n" -#: help.c:224 +#: help.c:228 msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr " \\dAo[x+] [AMPTRN [OPFPTRN]] affiche les opérateurs des familles d'opérateur\n" -#: help.c:225 +#: help.c:229 msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgstr " \\dAp[x+] [AMPTRN [OPFPTRN]] liste les fonctions de support des familles d'opérateur\n" -#: help.c:226 +#: help.c:230 msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[x+] [MODÈLE] affiche la liste des tablespaces\n" -#: help.c:227 +#: help.c:231 msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[Sx+] [MODÈLE] affiche la liste des conversions\n" -#: help.c:228 +#: help.c:232 msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[x+] [MODÈLE] affiche les paramètres de configuration\n" -#: help.c:229 +#: help.c:233 msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[x+] [MODÈLE] affiche la liste des transtypages\n" -#: help.c:230 +#: help.c:234 msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr "" " \\dd[Sx] [MODÈLE] affiche les commentaires des objets dont le commentaire\n" " n'est affiché nul part ailleurs\n" -#: help.c:231 +#: help.c:235 msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[Sx+] [MODÈLE] affiche la liste des domaines\n" -#: help.c:232 +#: help.c:236 msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp[x] [MODÈLE] affiche les droits par défaut\n" -#: help.c:233 +#: help.c:237 msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[Sx+] [MODÈLE] affiche la liste des tables distantes\n" -#: help.c:234 +#: help.c:238 msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[x+] [MODÈLE] affiche la liste des serveurs distants\n" -#: help.c:235 +#: help.c:239 msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[x+] [MODÈLE] affiche la liste des tables distantes\n" -#: help.c:236 +#: help.c:240 msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[x+] [MODÈLE] affiche la liste des correspondances utilisateurs\n" -#: help.c:237 +#: help.c:241 msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[x+] [MODÈLE] affiche la liste des wrappers de données distantes\n" -#: help.c:238 +#: help.c:242 msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" @@ -3283,55 +3314,55 @@ msgstr "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " affiche la liste des fonctions [seulement agrégat/normal/procédure/trigger/window]\n" -#: help.c:240 +#: help.c:244 msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr "" " \\dF[x+] [MODÈLE] affiche la liste des configurations de la recherche\n" " plein texte\n" -#: help.c:241 +#: help.c:245 msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr "" " \\dFd[x+] [MODÈLE] affiche la liste des dictionnaires de la recherche de\n" " texte\n" -#: help.c:242 +#: help.c:246 msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr "" " \\dFp[x+] [MODÈLE] affiche la liste des analyseurs de la recherche de\n" " texte\n" -#: help.c:243 +#: help.c:247 msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr "" " \\dFt[x+] [MODÈLE] affiche la liste des modèles de la recherche de\n" " texte\n" -#: help.c:244 +#: help.c:248 msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[Sx+] [MODÈLE] affiche la liste des rôles (utilisateurs)\n" -#: help.c:245 +#: help.c:249 msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[Sx+] [MODÈLE] affiche la liste des index\n" -#: help.c:246 +#: help.c:250 msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr " \\dl[x+] liste des « Large Objects », identique à \\lo_list\n" -#: help.c:247 +#: help.c:251 msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[Sx+] [MODÈLE] affiche la liste des langages procéduraux\n" -#: help.c:248 +#: help.c:252 msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[Sx+] [MODÈLE] affiche la liste des vues matérialisées\n" -#: help.c:249 +#: help.c:253 msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[Sx+] [MODÈLE] affiche la liste des schémas\n" -#: help.c:250 +#: help.c:254 msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" @@ -3339,21 +3370,21 @@ msgstr "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " affiche la liste des opérateurs\n" -#: help.c:252 +#: help.c:256 msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[Sx+] [MODÈLE] affiche la liste des collationnements\n" -#: help.c:253 +#: help.c:257 msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr "" " \\dp[Sx] [MODÈLE] affiche la liste des droits d'accès aux tables,\n" " vues, séquences\n" -#: help.c:254 +#: help.c:258 msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgstr " \\dP[itnx+] [PATTERN] affiche les relations partitionnées [seulement index/table] [n=imbriquées]\n" -#: help.c:255 +#: help.c:259 msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" @@ -3361,77 +3392,77 @@ msgstr "" " \\drds[x] [ROLEPTRN [DBPTRN]] liste la configuration utilisateur par base de données\n" "\n" -#: help.c:257 +#: help.c:261 msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\dg[Sx] [MODÈLE] affiche la liste des droits des rôles\n" -#: help.c:258 +#: help.c:262 msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[x+] [MODÈLE] affiche la liste des publications de réplication\n" -#: help.c:259 +#: help.c:263 msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[x+] [MODÈLE] affiche la liste des souscriptions de réplication\n" -#: help.c:260 +#: help.c:264 msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[Sx+] [MODÈLE] affiche la liste des séquences\n" -#: help.c:261 +#: help.c:265 msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[Sx+] [MODÈLE] affiche la liste des tables\n" -#: help.c:262 +#: help.c:266 msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[Sx+] [MODÈLE] affiche la liste des types de données\n" -#: help.c:263 +#: help.c:267 msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[Sx+] [MODÈLE] affiche la liste des rôles (utilisateurs)\n" -#: help.c:264 +#: help.c:268 msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[Sx+] [MODÈLE] affiche la liste des vues\n" -#: help.c:265 +#: help.c:269 msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[x+] [MODÈLE] affiche la liste des extensions\n" -#: help.c:266 +#: help.c:270 msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX[x] [MODÈLE] affiche les statistiques étendues\n" -#: help.c:267 +#: help.c:271 msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[x+] [MODÈLE] affiche les triggers sur évènement\n" -#: help.c:268 +#: help.c:272 msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[x+] [MODÈLE] affiche la liste des bases de données\n" -#: help.c:269 +#: help.c:273 msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] [FONCTION] édite la définition d'une fonction\n" -#: help.c:270 +#: help.c:274 msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] [FONCTION] édite la définition d'une vue\n" -#: help.c:271 +#: help.c:275 msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[Sx] [MODÈLE] identique à \\dp\n" -#: help.c:274 +#: help.c:278 msgid "Large Objects\n" msgstr "« Large objects »\n" -#: help.c:275 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr "" " \\lo_export LOBOID FICHIER\n" " écrit un « Large Object » dans le fichier\n" -#: help.c:276 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3439,42 +3470,42 @@ msgstr "" " \\lo_import FICHIER [COMMENTAIRE]\n" " lit un « Large Object » à partir du fichier\n" -#: help.c:278 +#: help.c:282 msgid " \\lo_list[x+] list large objects\n" msgstr " \\dl[x+] liste des « Large Objects »\n" -#: help.c:279 +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID supprime un « Large Object »\n" -#: help.c:282 +#: help.c:286 msgid "Formatting\n" msgstr "Formatage\n" -#: help.c:283 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr "" " \\a bascule entre les modes de sortie alignée et non\n" " alignée\n" -#: help.c:284 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr "" " \\C [CHAÎNE] initialise le titre d'une table, ou le désactive en\n" " l'absence d'argument\n" -#: help.c:285 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr "" " \\f [CHAÎNE] affiche ou initialise le séparateur de champ pour\n" " une sortie non alignée des requêtes\n" -#: help.c:286 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H bascule le mode de sortie HTML (actuellement %s)\n" -#: help.c:288 +#: help.c:292 msgid "" " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" @@ -3492,31 +3523,31 @@ msgstr "" " unicode_border_linestyle|unicode_column_linestyle|\n" " unicode_header_linestyle|xheader_width)\n" -#: help.c:295 +#: help.c:299 #, c-format msgid " \\t [on|off] show only rows (currently %s)\n" msgstr " \\t affiche uniquement les lignes (actuellement %s)\n" -#: help.c:297 +#: help.c:301 msgid " \\T [STRING] set HTML
tag attributes, or unset if none\n" msgstr "" " \\T [CHAÎNE] initialise les attributs HTML de la balise
,\n" " ou l'annule en l'absence d'argument\n" -#: help.c:298 +#: help.c:302 #, c-format msgid " \\x [on|off|auto] toggle expanded output (currently %s)\n" msgstr " \\x [on|off|auto] bascule l'affichage étendu (actuellement %s)\n" -#: help.c:299 +#: help.c:303 msgid "auto" msgstr "auto" -#: help.c:302 +#: help.c:306 msgid "Connection\n" msgstr "Connexions\n" -#: help.c:304 +#: help.c:308 #, c-format msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" @@ -3526,7 +3557,7 @@ msgstr "" " se connecte à une autre base de données\n" " (actuellement « %s »)\n" -#: help.c:308 +#: help.c:312 msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently no connection)\n" @@ -3535,79 +3566,79 @@ msgstr "" " se connecte à une nouvelle base de données\n" " (aucune connexion actuellement)\n" -#: help.c:310 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo affiche des informations sur la connexion en cours\n" -#: help.c:311 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr " \\encoding [ENCODAGE] affiche ou initialise l'encodage du client\n" -#: help.c:312 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr "" " \\password [UTILISATEUR]\n" " modifie de façon sécurisé le mot de passe d'un\n" " utilisateur\n" -#: help.c:315 +#: help.c:319 msgid "Operating System\n" msgstr "Système d'exploitation\n" -#: help.c:316 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [RÉPERTOIRE] change de répertoire de travail\n" -#: help.c:317 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv PSQLVAR ENVVAR récupère une variable d'environnement\n" -#: help.c:318 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr " \\setenv NOM [VALEUR] (dés)initialise une variable d'environnement\n" -#: help.c:319 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr "" " \\timing [on|off] bascule l'activation du chronométrage des commandes\n" " (actuellement %s)\n" -#: help.c:321 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr "" " \\! [COMMANDE] exécute la commande dans un shell ou exécute un\n" " shell interactif\n" -#: help.c:324 +#: help.c:328 msgid "Variables\n" msgstr "Variables\n" -#: help.c:325 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr "" " \\prompt [TEXTE] NOM demande à l'utilisateur de configurer la variable\n" " interne\n" -#: help.c:326 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr "" " \\set [NOM [VALEUR]] initialise une variable interne ou les affiche\n" " toutes en l'absence de paramètre\n" -#: help.c:327 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset NOM désactive (supprime) la variable interne\n" -#: help.c:330 +#: help.c:334 msgid "Extended Query Protocol\n" msgstr "Protocole de requêtes étendues\n" -#: help.c:331 +#: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" msgstr " \\bind [PARAM]... configure les paramètres de la requête\n" -#: help.c:332 +#: help.c:336 msgid "" " \\bind_named STMT_NAME [PARAM]...\n" " set query parameters for an existing prepared statement\n" @@ -3615,7 +3646,7 @@ msgstr "" " \\bind_named NOM_REQ [PARAM]...\n" " initialise les paramètres de la requête pour une requête préparée existante\n" -#: help.c:334 +#: help.c:338 msgid "" " \\close_prepared STMT_NAME\n" " close an existing prepared statement\n" @@ -3623,41 +3654,41 @@ msgstr "" " \\close_prepared NOM_REQ\n" " ferme une requête préparée existante\n" -#: help.c:336 +#: help.c:340 msgid " \\endpipeline exit pipeline mode\n" msgstr " \\endpipeline quitte le mode pipeline\n" -#: help.c:337 +#: help.c:341 msgid " \\flush flush output data to the server\n" msgstr " \\flush envoie les données en sortie au serveur\n" -#: help.c:338 +#: help.c:342 msgid " \\flushrequest send request to the server to flush its output buffer\n" msgstr " \\flushrequest envoie une demande au serveur de vider son tampon en sortie\n" -#: help.c:339 +#: help.c:343 msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argument\n" msgstr "" " \\getresults [NB_RES]\n" " lit NB_RES résultats en attente ou tous si aucun argument\n" -#: help.c:340 +#: help.c:344 msgid " \\parse STMT_NAME create a prepared statement\n" msgstr " \\parse NOM_REQ crée une requête préparée\n" -#: help.c:341 +#: help.c:345 msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" msgstr " \\sendpipeline envoie une requête étendue vers un pipeline en cours\n" -#: help.c:342 +#: help.c:346 msgid " \\startpipeline enter pipeline mode\n" msgstr " \\startpipeline enter pipeline mode\n" -#: help.c:343 +#: help.c:347 msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" msgstr " \\syncpipeline ajout un point de synchronisation vers un pipeline en cours\n" -#: help.c:382 +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" @@ -3665,11 +3696,11 @@ msgstr "" "Liste des variables traitées spécialement\n" "\n" -#: help.c:384 +#: help.c:388 msgid "psql variables:\n" msgstr "variables psql :\n" -#: help.c:386 +#: help.c:390 msgid "" " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n" @@ -3679,7 +3710,7 @@ msgstr "" " ou \\set NOM VALEUR dans psql\n" "\n" -#: help.c:388 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3687,7 +3718,7 @@ msgstr "" " AUTOCOMMIT\n" " si activé, les commandes SQL réussies sont automatiquement validées\n" -#: help.c:390 +#: help.c:394 msgid "" " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" @@ -3697,7 +3728,7 @@ msgstr "" " détermine la casse utilisée pour compléter les mots clés SQL\n" " [lower, upper, preserve-lower, preserve-upper]\n" -#: help.c:393 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3705,7 +3736,7 @@ msgstr "" " DBNAME\n" " le nom de base de données actuel\n" -#: help.c:395 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3715,7 +3746,7 @@ msgstr "" " contrôle ce qui est envoyé sur la sortie standard\n" " [all, errors, none, queries]\n" -#: help.c:398 +#: help.c:402 msgid "" " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" @@ -3725,7 +3756,7 @@ msgstr "" " si activé, affiche les requêtes internes exécutées par les méta-commandes ;\n" " si configuré à « noexec », affiche les requêtes sans les exécuter\n" -#: help.c:401 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3733,7 +3764,7 @@ msgstr "" " ENCODING\n" " encodage du jeu de caractères client\n" -#: help.c:403 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3741,7 +3772,7 @@ msgstr "" " ERROR\n" " true si la dernière requête a échoué, sinon false\n" -#: help.c:405 +#: help.c:409 msgid "" " FETCH_COUNT\n" " the number of result rows to fetch and display at a time (0 = unlimited)\n" @@ -3750,7 +3781,7 @@ msgstr "" " le nombre de lignes résultats à récupérer et à afficher à la fois\n" " (0 pour illimité)\n" -#: help.c:407 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3758,7 +3789,7 @@ msgstr "" " HIDE_TABLEAM\n" " si activé, les méthodes d'accès ne sont pas affichées\n" -#: help.c:409 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3766,7 +3797,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " si activé, les méthodes de compression methods ne sont pas affichées\n" -#: help.c:411 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3774,7 +3805,7 @@ msgstr "" " HISTCONTROL\n" " contrôle l'historique des commandes [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:413 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3782,7 +3813,7 @@ msgstr "" " HISTFILE\n" " nom du fichier utilisé pour stocker l'historique des commandes\n" -#: help.c:415 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3790,7 +3821,7 @@ msgstr "" " HISTSIZE\n" " nombre maximum de commandes à stocker dans l'historique de commandes\n" -#: help.c:417 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3798,7 +3829,7 @@ msgstr "" " HOST\n" " l'hôte de la base de données\n" -#: help.c:419 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3806,7 +3837,7 @@ msgstr "" " IGNOREEOF\n" " nombre d'EOF nécessaire pour terminer une session interactive\n" -#: help.c:421 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3814,7 +3845,7 @@ msgstr "" " LASTOID\n" " valeur du dernier OID affecté\n" -#: help.c:423 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3824,7 +3855,7 @@ msgstr "" " LAST_ERROR_SQLSTATE\n" " message et SQLSTATE de la dernière erreur ou une chaîne vide et \"00000\" if si aucune erreur\n" -#: help.c:426 +#: help.c:430 msgid "" " ON_ERROR_ROLLBACK\n" " if set, an error doesn't stop a transaction (uses implicit savepoints)\n" @@ -3832,7 +3863,7 @@ msgstr "" " ON_ERROR_ROLLBACK\n" " si activé, une erreur n'arrête pas une transaction (utilise des savepoints implicites)\n" -#: help.c:428 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3840,7 +3871,7 @@ msgstr "" " ON_ERROR_STOP\n" " arrête l'exécution d'un batch après une erreur\n" -#: help.c:430 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3848,7 +3879,7 @@ msgstr "" " PORT\n" " port du serveur pour la connexion actuelle\n" -#: help.c:432 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3856,7 +3887,7 @@ msgstr "" " PROMPT1\n" " spécifie l'invite standard de psql\n" -#: help.c:434 +#: help.c:438 msgid "" " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" @@ -3864,7 +3895,7 @@ msgstr "" " PROMPT2\n" " spécifie l'invite utilisé quand une requête continue après la ligne courante\n" -#: help.c:436 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3872,7 +3903,7 @@ msgstr "" " PROMPT3\n" " spécifie l'invite utilisée lors d'un COPY ... FROM STDIN\n" -#: help.c:438 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3880,7 +3911,7 @@ msgstr "" " QUIET\n" " s'exécute en silence (identique à l'option -q)\n" -#: help.c:440 +#: help.c:444 msgid "" " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" @@ -3888,7 +3919,7 @@ msgstr "" " ROW_COUNT\n" " nombre de lignes renvoyées ou affectées par la dernière requête, ou 0\n" -#: help.c:442 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3898,7 +3929,7 @@ msgstr "" " SERVER_VERSION_NUM\n" " version du serveur (chaîne courte ou format numérique)\n" -#: help.c:445 +#: help.c:449 msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" @@ -3906,7 +3937,7 @@ msgstr "" " SHELL_ERROR\n" " true si la dernière requête a échoué, sinon false\n" -#: help.c:447 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3914,7 +3945,7 @@ msgstr "" " SHELL_EXIT_CODE\n" " code de sortie de la dernière commande shell\n" -#: help.c:449 +#: help.c:453 msgid "" " SHOW_ALL_RESULTS\n" " show all results of a combined query (\\;) instead of only the last\n" @@ -3922,7 +3953,7 @@ msgstr "" " SHOW_ALL_RESULTS\n" " affiche tous les résultats d'une requête combinée (\\;) au lieu du dernier uniquement\n" -#: help.c:451 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3930,7 +3961,7 @@ msgstr "" " SHOW_CONTEXT\n" " contrôle l'affichage des champs de contexte du message [never, errors, always]\n" -#: help.c:453 +#: help.c:457 msgid "" " SINGLELINE\n" " if set, end of line terminates SQL commands (same as -S option)\n" @@ -3938,7 +3969,7 @@ msgstr "" " SINGLELINE\n" " une fin de ligne termine le mode de commande SQL (identique à l'option -S)\n" -#: help.c:455 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3946,7 +3977,7 @@ msgstr "" " SINGLESTEP\n" " mode pas à pas (identique à l'option -s)\n" -#: help.c:457 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3954,7 +3985,7 @@ msgstr "" " SQLSTATE\n" " SQLSTATE de la dernière requête, ou \"00000\" si aucune erreur\n" -#: help.c:459 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3962,7 +3993,7 @@ msgstr "" " USER\n" " l'utilisateur actuellement connecté\n" -#: help.c:461 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3970,7 +4001,7 @@ msgstr "" " VERBOSITY\n" " contrôle la verbosité des rapports d'erreurs [default, verbose, terse, sqlstate]\n" -#: help.c:463 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3982,7 +4013,7 @@ msgstr "" " VERSION_NUM\n" " version de psql (chaîne longue, chaîne courte, ou format numérique)\n" -#: help.c:467 +#: help.c:471 #, c-format msgid "" " WATCH_INTERVAL\n" @@ -3991,7 +4022,7 @@ msgstr "" " WATCH_INTERVAL\n" " nombre de secondes \\watch attend entre chaque exécutions (par défaut %s)\n" -#: help.c:471 +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3999,7 +4030,7 @@ msgstr "" "\n" "Paramètres d'affichage :\n" -#: help.c:473 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -4009,7 +4040,7 @@ msgstr "" " ou \\pset NOM [VALEUR] dans psql\n" "\n" -#: help.c:475 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -4017,7 +4048,7 @@ msgstr "" " border\n" " style de bordure (nombre)\n" -#: help.c:477 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -4025,7 +4056,7 @@ msgstr "" " columns\n" " largeur cible pour le format encadré\n" -#: help.c:479 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -4033,7 +4064,7 @@ msgstr "" " expanded (ou x)\n" " sortie étendue [on, off, auto]\n" -#: help.c:481 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -4042,7 +4073,7 @@ msgstr "" " fieldsep\n" " champ séparateur pour l'affichage non aligné (par défaut « %s »)\n" -#: help.c:484 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -4050,7 +4081,7 @@ msgstr "" " fieldsep_zero\n" " configure le séparateur de champ pour l'affichage non alignée à l'octet zéro\n" -#: help.c:486 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -4058,7 +4089,7 @@ msgstr "" " footer\n" " active ou désactive l'affiche du bas de tableau [on, off]\n" -#: help.c:488 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -4066,7 +4097,7 @@ msgstr "" " format\n" " active le format de sortie [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:490 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -4074,7 +4105,7 @@ msgstr "" " linestyle\n" " configure l'affichage des lignes de bordure [ascii, old-ascii, unicode]\n" -#: help.c:492 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -4082,7 +4113,7 @@ msgstr "" " null\n" " configure la chaîne à afficher à la place d'une valeur NULL\n" -#: help.c:494 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4091,7 +4122,7 @@ msgstr "" " active ou désactive l'affichage d'un caractère spécifique à la locale pour séparer\n" " des groupes de chiffres [on, off]\n" -#: help.c:496 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4099,7 +4130,7 @@ msgstr "" " pager\n" " contrôle quand un paginateur externe est utilisé [yes, no, always]\n" -#: help.c:498 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4107,7 +4138,7 @@ msgstr "" " recordsep\n" " enregistre le séparateur de ligne pour les affichages non alignés\n" -#: help.c:500 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4116,7 +4147,7 @@ msgstr "" " initialise le séparateur d'enregistrements pour un affichage\n" " non aligné à l'octet zéro\n" -#: help.c:502 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4127,7 +4158,7 @@ msgstr "" " proportionnelles de colonnes pour les types de données alignés à gauche dans le\n" " format latex-longtable\n" -#: help.c:505 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4135,7 +4166,7 @@ msgstr "" " title\n" " configure le titre de la table pour toute table affichée\n" -#: help.c:507 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4143,7 +4174,7 @@ msgstr "" " tuples_only\n" " si activé, seules les données de la table sont affichées\n" -#: help.c:509 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4155,7 +4186,7 @@ msgstr "" " unicode_header_linestyle\n" " configure le style d'affichage de ligne Unicode [single, double]\n" -#: help.c:513 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4165,7 +4196,7 @@ msgstr "" " configure la largeur maximale de l'entête dans le format étendu\n" " [full, column, page, valeur entière]\n" -#: help.c:517 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -4173,7 +4204,7 @@ msgstr "" "\n" "Variables d'environnement :\n" -#: help.c:521 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4183,7 +4214,7 @@ msgstr "" " ou \\setenv NOM [VALEUR] dans psql\n" "\n" -#: help.c:523 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4195,7 +4226,7 @@ msgstr "" " ou \\setenv NOM [VALEUR] dans psql\n" "\n" -#: help.c:526 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4203,7 +4234,7 @@ msgstr "" " COLUMNS\n" " nombre de colonnes pour le format encadré\n" -#: help.c:528 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4211,7 +4242,7 @@ msgstr "" " PGAPPNAME\n" " identique au paramètre de connexion application_name\n" -#: help.c:530 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4219,7 +4250,7 @@ msgstr "" " PGDATABASE\n" " identique au paramètre de connexion dbname\n" -#: help.c:532 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4227,7 +4258,7 @@ msgstr "" " PGHOST\n" " identique au paramètre de connexion host\n" -#: help.c:534 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4235,7 +4266,7 @@ msgstr "" " PGPASSFILE\n" " nom du fichier de mot de passe\n" -#: help.c:536 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4243,7 +4274,7 @@ msgstr "" " PGPASSWORD\n" " mot de passe de connexion (non recommendé)\n" -#: help.c:538 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4251,7 +4282,7 @@ msgstr "" " PGPORT\n" " identique au paramètre de connexion port\n" -#: help.c:540 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4259,7 +4290,7 @@ msgstr "" " PGUSER\n" " identique au paramètre de connexion user\n" -#: help.c:542 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4267,7 +4298,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " éditeur utilisé par les commandes \\e, \\ef et \\ev\n" -#: help.c:544 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4275,7 +4306,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " comment spécifier un numéro de ligne lors de l'appel de l'éditeur\n" -#: help.c:546 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4283,7 +4314,7 @@ msgstr "" " PSQL_HISTORY\n" " autre emplacement pour le fichier d'historique des commandes\n" -#: help.c:548 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4291,7 +4322,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " nom du paginateur externe\n" -#: help.c:551 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4299,7 +4330,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " nom du paginateur externe utilisé pour \\watch\n" -#: help.c:554 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4307,7 +4338,7 @@ msgstr "" " PSQLRC\n" " autre emplacement pour le fichier .psqlrc de l'utilisateur\n" -#: help.c:556 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4315,7 +4346,7 @@ msgstr "" " SHELL\n" " shell utilisé par la commande \\!\n" -#: help.c:558 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4323,11 +4354,11 @@ msgstr "" " TMPDIR\n" " répertoire pour les fichiers temporaires\n" -#: help.c:618 +#: help.c:622 msgid "Available help:\n" msgstr "Aide-mémoire disponible :\n" -#: help.c:713 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -4346,7 +4377,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:736 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -6967,7 +6998,7 @@ msgstr "option supplémentaire « %s » ignorée" msgid "could not find own program executable" msgstr "n'a pas pu trouver son propre exécutable" -#: tab-complete.in.c:6627 +#: tab-complete.in.c:6633 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/ka.po b/src/bin/psql/po/ka.po index 03680bfc8572d..49cc506dc4769 100644 --- a/src/bin/psql/po/ka.po +++ b/src/bin/psql/po/ka.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: psql (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-06-27 09:18+0000\n" -"PO-Revision-Date: 2025-06-27 14:55+0200\n" +"POT-Creation-Date: 2025-08-15 21:17+0000\n" +"PO-Revision-Date: 2025-08-16 16:34+0200\n" "Last-Translator: Temuri Doghonadze \n" "Language-Team: Georgian \n" "Language: ka\n" @@ -79,7 +79,7 @@ msgid "%s() failed: %m" msgstr "%s()-ის შეცდომა: %m" #: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 -#: command.c:1639 command.c:3988 command.c:4037 command.c:4162 input.c:225 +#: 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" @@ -101,7 +101,7 @@ msgstr "ნულოვანი მაჩვენებლის დუბლ msgid "could not look up effective user ID %ld: %s" msgstr "მომხმარებლის ეფექტური ID-ის (%ld) ამოხსნა შეუძლებელია: %s" -#: ../../common/username.c:45 command.c:700 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "მომხმარებელი არ არსებობს" @@ -195,169 +195,174 @@ msgstr "გარსის ბრძანების არგუმენტ msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "მონაცემთა ბაზის სახელი ხაზის გადატანას ან კარეტის დაბრუნებას შეიცავს: \"%s\"\n" -#: command.c:245 +#: command.c:254 +#, c-format +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "უკუღმა დახრილი ხაზიანი ბრძანებები შეზღუდულია. დაშვებულია, მხოლოდ, \\unrestrict" + +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "არასწორი ბრძანება \\%s" -#: command.c:247 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr "დახმარებისთვის სცადეთ \\? ." -#: command.c:265 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s: დამატებითი არგუმენტი \"%s\" იგნორირებულია" -#: command.c:317 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "\\%s ბრძანება გნორირებულია; მიმდინარე \\if ბლოკიდან გამოსასვლელად გამოიყენეთ \\endif ან Control-C" -#: command.c:552 command.c:747 command.c:1885 command.c:2053 command.c:2366 -#: command.c:2380 command.c:2412 command.c:2501 command.c:2614 command.c:2892 -#: command.c:3154 command.c:3194 +#: 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:698 +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "მომხმარებლის, ID-ით %ld, საწყის საქაღალდეზე გადასვლის შეცდომა: %s" -#: command.c:717 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s: საქაღალდის \"%s\"-ზე შეცვლის შეცდომა: %m" -#: command.c:790 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "ამჟამად მონაცემთა ბაზასთან მიერთებული არ ბრძანდებით.\n" -#: command.c:818 +#: command.c:839 msgid "Connection Information" msgstr "შეერთების ინფორმაცია" -#: command.c:819 describe.c:4722 +#: command.c:840 describe.c:4722 msgid "Parameter" msgstr "პარამეტრი" -#: command.c:820 describe.c:4723 +#: command.c:841 describe.c:4723 msgid "Value" msgstr "მნიშვნელობა" -#: command.c:823 describe.c:3874 +#: command.c:844 describe.c:3874 msgid "Database" msgstr "მონაცემთა ბაზა" -#: command.c:827 +#: command.c:848 msgid "Client User" msgstr "კლიენტის მომხმარებელი" -#: command.c:836 command.c:851 +#: command.c:857 command.c:872 msgid "Host Address" msgstr "ჰოსტის მისამართი" -#: command.c:841 +#: command.c:862 msgid "Socket Directory" msgstr "სოკეტის საქაღალდე" -#: command.c:847 +#: command.c:868 msgid "Host" msgstr "ჰოსტი" -#: command.c:857 +#: command.c:878 msgid "Server Port" msgstr "სერვერის პორტი" -#: command.c:861 describe.c:246 describe.c:3615 describe.c:3955 +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 msgid "Options" msgstr "პარამეტრები" -#: command.c:865 +#: command.c:886 msgid "Protocol Version" msgstr "პროტოკოლის ვერსია" -#: command.c:869 +#: command.c:890 msgid "Password Used" msgstr "გამოყენებულია პაროლი" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "false" msgstr "ცრუ" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "true" msgstr "ჭეშმარიტი" -#: command.c:873 +#: command.c:894 msgid "GSSAPI Authenticated" msgstr "GSSAPI-ით ავთენტიკაციით" -#: command.c:877 +#: command.c:898 msgid "Backend PID" msgstr "უკანაბოლოს PID" -#: command.c:881 +#: command.c:902 msgid "SSL Connection" msgstr "SSL კავშირი" -#: command.c:901 +#: command.c:922 msgid "SSL Library" msgstr "SSL ბიბლიოთეკა" -#: command.c:902 command.c:905 command.c:908 command.c:911 command.c:923 -#: command.c:927 command.c:4426 command.c:4427 +#: 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:904 +#: command.c:925 msgid "SSL Protocol" msgstr "SSL პროტოკოლი" -#: command.c:907 +#: command.c:928 msgid "SSL Key Bits" msgstr "SSL გასაღების ბიტები" -#: command.c:910 +#: command.c:931 msgid "SSL Cipher" msgstr "SSL შიფრი" -#: command.c:913 +#: command.c:934 msgid "SSL Compression" msgstr "SSL შეკუმშვა" -#: command.c:917 +#: command.c:938 msgid "ALPN" msgstr "ALPN" -#: command.c:918 command.c:4429 +#: command.c:939 command.c:4519 msgid "none" msgstr "არცერთი" -#: command.c:1335 command.c:1436 command.c:3187 +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "მოთხოვნების ბაფერის გარეშე" -#: command.c:1368 command.c:6310 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "ხაზის არასწორი ნომერი: %s" -#: command.c:1514 +#: command.c:1535 msgid "No changes" msgstr "ცვლილებების გარეშე" -#: command.c:1599 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s: კოდირების არასწორი სახელი ან გადაყვანის პროცედურა არ არსებობს" -#: command.c:1635 command.c:2575 command.c:3984 command.c:4182 command.c:6416 +#: 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 @@ -366,223 +371,234 @@ msgstr "%s: კოდირების არასწორი სახელ msgid "%s" msgstr "%s" -#: command.c:1642 +#: command.c:1663 msgid "There is no previous error." msgstr "წინა შეცდომის გარეშე." -#: command.c:1745 command.c:1952 command.c:1978 command.c:3290 +#: 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:1801 +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: აკლია მარჯვენა მრგვალი ფრჩხილი" -#: command.c:1927 +#: command.c:1948 #, c-format msgid "\\getresults: invalid number of requested results" msgstr "\\getresults: მოთხოვნილი შედეგების არასწორი რიცხვი" -#: command.c:2184 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif: არ შეიძლება \\else -ის შემდეგ იყოს" -#: command.c:2189 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif: შესაბამისი \\if -ის გარეშე" -#: command.c:2253 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else: ვერ გაჩნდება \\else -ის შემდეგ" -#: command.c:2258 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else: შესაბამისი \\if -ის გარეშე" -#: command.c:2298 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif: შესაბამისი \\if -ის გარეშე" -#: command.c:2476 +#: command.c:2497 msgid "Query buffer is empty." msgstr "მოთხოვნის ბაფერი ცარიელია." -#: command.c:2553 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "შეიყვანეთ მომხმარებლის (\"%s\") ახალი პაროლი: " -#: command.c:2557 +#: command.c:2578 msgid "Enter it again: " msgstr "შეიყვანეთ კდევ ერთხელ: " -#: command.c:2566 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "პაროლები არ ემთხვევა." -#: command.c:2649 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "\\%s: ცვლადის მნიშვნელობის წაკითხვის შეცდომა" -#: command.c:2751 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "მოთხოვნის ბაფერი ცარიელია(გასუფთავდა)." -#: command.c:2773 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "ისტორია ჩაწერილია ფაილში \"%s\".\n" -#: command.c:2803 +#: command.c:2853 #, c-format msgid "\\sendpipeline must be used after \\bind or \\bind_named" msgstr "\\sendpipeline აუცილებელია, \\bind, ან \\bind_named ბრძანებების შემდეგ გამოიყენოთ" -#: command.c:2810 +#: command.c:2860 #, c-format msgid "\\sendpipeline not allowed outside of pipeline mode" msgstr "\\sendpipeline დაუშვებელია საკომუნიკაციო არხის რეჟიმის გარეთ" -#: command.c:2897 +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s: გარემოს ცვლადის სახელი \"=\" -ს არ შეიძლება შეიცავდეს" -#: command.c:2945 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "ფუნქციის სახელი აუცილებელია" -#: command.c:2947 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "საჭიროა ხედის სახელი" -#: command.c:3126 +#: command.c:3176 msgid "Timing is on." msgstr "დროის დათვლა ჩართულია." -#: command.c:3128 +#: command.c:3178 msgid "Timing is off." msgstr "დროის დათვლა გამორთულია." -#: command.c:3214 command.c:3252 command.c:4697 command.c:4700 command.c:4703 -#: command.c:4709 command.c:4711 command.c:4737 command.c:4747 command.c:4759 -#: command.c:4773 command.c:4800 command.c:4858 common.c:77 copy.c:329 +#: command.c:3208 +#, c-format +#| msgid "\\%s not allowed in pipeline mode" +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:3241 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s: %s" -#: command.c:3322 command.c:3388 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch: ინტერვალის მნიშვნელობა ერთზე მეტჯერაა მითითებული" -#: command.c:3332 command.c:3398 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch: არასწორი ინტერვალის მნიშვნელობა \"%s\"" -#: command.c:3342 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: იტერაციის რაოდენობა ერთზე მეტჯერაა მითითებული" -#: command.c:3352 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch: არასწორი იტერაციების რაოდენობა \"%s\"" -#: command.c:3362 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: მინიმალური მწკრივების რაოდენობა ერთზე მეტჯერაა მითითებული" -#: command.c:3372 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: არასწორი მინიმალური მწკრივების რაოდენობა \"%s\"" -#: command.c:3379 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch: უცნობი პარამეტრი \"%s\"" -#: command.c:3785 startup.c:248 startup.c:298 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "პაროლი: " -#: command.c:3790 startup.c:295 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "პაროლი მომხმარებლისთვის %s: " -#: command.c:3846 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "შეერთების სტრიქონის გამოყენებისას მომხმარებლის, ჰოსტისა და და პორტის არ მითითება" -#: command.c:3881 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "მონაცემთა ბაზის კავშირი პარამეტრების ხელახლა გამოსაყენებლად არ არსებობს" -#: command.c:4188 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "წინა შეერთება ჯერ კიდევ არსებობს" -#: command.c:4194 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect: %s" -#: command.c:4250 +#: 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:4253 +#: 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:4259 +#: 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:4262 +#: 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:4267 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "ახლა მიერთებული ბრძანდებით ბაზასთან \"%s\" როგორც მომხმარებელი \"%s\"\n" -#: command.c:4373 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s, სერვერი %s)\n" -#: command.c:4386 +#: command.c:4476 #, c-format msgid "" "WARNING: %s major version %s, server major version %s.\n" @@ -591,25 +607,25 @@ msgstr "" "გაფრთხილება: %s ძირითადი ვერსია %s, სერვერის ძირითადი ვერსია %s.\n" " psql-ის ზოგიერთმა ფუნქციამ შეიძლება არ იმუშაოს.\n" -#: command.c:4425 +#: 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:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "off" msgstr "გამორთული" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "on" msgstr "ჩართ" -#: command.c:4443 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "GSSAPI-ით დაშიფრული შეერთება\n" -#: command.c:4463 +#: command.c:4553 #, c-format msgid "" "WARNING: Console code page (%u) differs from Windows code page (%u)\n" @@ -620,284 +636,284 @@ msgstr "" " 8-ბიტიანი სიმბოლოებმა შეიძლება სწორად არ იმუშაოს. მეტი დეტალებისთვის\n" " იხილეთ psql-ის დოკუმენტაციის გვერდი გვერდი \"შენიშვნები Windows-ის მომხმარებლებისთვის\".\n" -#: command.c:4572 +#: 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:4602 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "რედაქტორის გაშვების შეცდომა: \"%s\"" -#: command.c:4604 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "/bin/sh-ის გაშვების შეცდომა" -#: command.c:4654 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "დროებითი საქაღალდის მოძებნის შეცდომა: %s" -#: command.c:4681 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "დროებითი ფაილის (\"%s\") გახსნის შეცდომა: %m" -#: command.c:5017 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: \"%s\"-ის არასწორი აბრევიატურა ორივეს, \"%s\"-ს და \"%s-ს ემთხვევა\"" -#: command.c:5037 +#: 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:5056 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: ხაზის ნებადართული სტილებია ascii, old-ascii და unicode" -#: command.c:5071 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset: უნიკოდის საზღვრის ხაზის ნებადართული სტილებია single და double" -#: command.c:5086 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: უნიკოდის სვეტის ხაზის ნებადართული სტილებია single და double" -#: command.c:5101 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset:უნიკოდის თავსართის ხაზების ნებადართულ სტილებია single და double" -#: command.c:5153 +#: 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:5170 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsep ერთი ერთბაიტიანი სიმბოლო უნდა იყოს" -#: command.c:5175 +#: 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:5313 command.c:5514 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset: არასწორი პარამეტრი: %s" -#: command.c:5333 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "საზღვრის სტილი: %d\n" -#: command.c:5339 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "სამიზნის სიგანე დაყენებული არაა.\n" -#: command.c:5341 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "სამიზნის სიგანეა %d.\n" -#: command.c:5348 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "გაფართოებული ეკრანი ჩართულია.\n" -#: command.c:5350 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "გაფართოებული ეკრანი ავტომატურად გამოიყენება.\n" -#: command.c:5352 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "გაფართოებული ეკრანი გამორთულია.\n" -#: command.c:5359 command.c:5361 command.c:5363 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "გაფართოებული თავსართის სიგანეა \"%s\".\n" -#: command.c:5365 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "გაფართოებული თავსართია %d.\n" -#: command.c:5371 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "CSV-ში ველების განმაცალკევებელია \"%s\".\n" -#: command.c:5379 command.c:5387 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "ველების განმაცალკევებელი ნულოვანი ბაიტია.\n" -#: command.c:5381 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "ველების განმაცალკევებელია \"%s\".\n" -#: command.c:5394 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "მდგომარეობის ზოლი ჩართულია.\n" -#: command.c:5396 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "ნაგულისხმევი ქვესართი გამორთულია\n" -#: command.c:5402 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "გამოტანის ფორმატია %s.\n" -#: command.c:5408 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "ხაზის სტილია %s.\n" -#: command.c:5415 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "ნულოვანია ეკრანია \"%s\".\n" -#: command.c:5423 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "რიცხვების ენაზე მორგებული გამოტანა ჩართულია.\n" -#: command.c:5425 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "რიცხვების ენაზე მორგებული გამოტანა გამორთულა.\n" -#: command.c:5432 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "გრძელი გამოტანისას გამოიყენება გვერდების გადამრთველი.\n" -#: command.c:5434 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "გვერდების გადამრთველი ყოველთვის გამოიყენება.\n" -#: command.c:5436 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "გვერდების გადამრთველი გამორთულია.\n" -#: command.c:5442 +#: 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" msgstr[0] "გვერდების გადამრთველი %d-ზე ნაკლებ ხაზზე არ მუშაობს.\n" msgstr[1] "გვერდების გადამრთველი %d-ზე ნაკლებ ხაზზე არ მუშაობს.\n" -#: command.c:5452 command.c:5462 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "ჩანაწერის გამყოფი ნული ბაიტია.\n" -#: command.c:5454 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "ჩანაწერის გამყოფია .\n" -#: command.c:5456 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "ჩანაწერის გამყოფია \"%s\".\n" -#: command.c:5469 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "ცხრილის ატრიბუტებია \"%s\".\n" -#: command.c:5472 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "ცხრილის ატრიბუტები მოხსნილია.\n" -#: command.c:5479 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "სათაურია \"%s\".\n" -#: command.c:5481 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "სათაურის დაყენება გაუქმდა.\n" -#: command.c:5488 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "მხოლოდ სტრუქტურები ჩართულია.\n" -#: command.c:5490 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "მხოლოდ სტრუქტურები გამორთულია.\n" -#: command.c:5496 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "უნიკოდის საზღვრის ხაზის სტილია \"%s\".\n" -#: command.c:5502 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "უნიკოდის სვეტის ხაზის სტილია \"%s\".\n" -#: command.c:5508 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "უნიკოდის თავსართის ხაზის სტილია \"%s\".\n" -#: command.c:5757 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: შეცდომა" -#: command.c:5795 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch ცარიელი მოთხოვნით გამოყენებული ვერ იქნება" -#: command.c:5827 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "დროის აღმრიცხველის დაყენების შეცდომა: %m" -#: command.c:5896 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (ყოველ %g-ში)\n" -#: command.c:5899 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (ყოველ %g-ში)\n" -#: command.c:5963 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "სიგნალებისთვის დალოდება შეუძლებელია: %m" -#: command.c:6019 command.c:6026 common.c:667 common.c:674 common.c:1159 +#: command.c:6114 command.c:6121 common.c:667 common.c:674 common.c:1159 #, c-format msgid "" "/******** QUERY *********/\n" @@ -910,12 +926,12 @@ msgstr "" "**************************\n" "\n" -#: command.c:6205 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "\"%s.%s\" ხედი არაა" -#: command.c:6221 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "reloptions მასივის დამუშავების შეცდომა" @@ -2713,7 +2729,7 @@ msgstr "" "psql PostgreSQL-ის ინტერაქტიური ტერმინალია.\n" "\n" -#: help.c:61 help.c:385 help.c:472 help.c:518 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "გამოყენება:\n" @@ -2997,6 +3013,25 @@ msgid " \\q quit psql\n" msgstr " \\q psql-დან გასვლა\n" #: help.c:174 +#| msgid "" +#| " \\close_prepared STMT_NAME\n" +#| " close an existing prepared statement\n" +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" @@ -3006,204 +3041,204 @@ msgstr "" " მოთხოვნის შესრულება ყოველ SEC წამში ერთხელ, მაქს N-ჯერ\n" " გაჩერება, თუ MIN მწკრივზე ნაკლები დაბრუნდება\n" -#: help.c:177 help.c:185 help.c:197 help.c:207 help.c:214 help.c:272 help.c:280 -#: help.c:300 help.c:313 help.c:322 help.c:328 +#: 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" -#: help.c:179 +#: help.c:183 msgid "Help\n" msgstr "დახმარება\n" -#: help.c:181 +#: help.c:185 msgid " \\? [commands] show help on backslash commands\n" msgstr " \\? [commands] დახმარება \"\\\"-ით დაწყებული ბრძანებების შესახებ\n" -#: help.c:182 +#: help.c:186 msgid " \\? options show help on psql command-line options\n" msgstr " \\? options დახმარება psql-ის ბრძანების სტრიქონის შესახებ\n" -#: help.c:183 +#: help.c:187 msgid " \\? variables show help on special variables\n" msgstr " \\? variables დახმარების ჩვენება განსაკუთრებული ცვლადების შესახებ\n" -#: help.c:184 +#: help.c:188 msgid " \\h [NAME] help on syntax of SQL commands, * for all commands\n" msgstr " \\h [სახელი] SQL ბრძანებების დახმარება, * ყველა ბრძანებისთვის\n" -#: help.c:187 +#: help.c:191 msgid "Query Buffer\n" msgstr "მოთხოვნების ბაფერი\n" -#: help.c:188 +#: help.c:192 msgid " \\e [FILE] [LINE] edit the query buffer (or file) with external editor\n" msgstr " \\e [ფაილი] [ხაზი] მოთხოვნების ბაფერის (ან ფაილის) გარე რედაქტორში გახსნა\n" -#: help.c:189 +#: help.c:193 msgid " \\ef [FUNCNAME [LINE]] edit function definition with external editor\n" msgstr " \\ef [ფუნქცსახელი [ხაზი]] ფუნქციის აღწერის გარე რედაქტორში ჩასწორება\n" -#: help.c:190 +#: help.c:194 msgid " \\ev [VIEWNAME [LINE]] edit view definition with external editor\n" msgstr " \\ev [ხედისსახელი [ხაზი]] ხედის აღწერის გარე რედაქტორით ჩასწორება\n" -#: help.c:191 +#: help.c:195 msgid " \\p show the contents of the query buffer\n" msgstr " \\p მოთხოვნების ბაფერის შემცველობის ჩვენება\n" -#: help.c:192 +#: help.c:196 msgid " \\r reset (clear) the query buffer\n" msgstr " \\r მოთხოვნების ბაფერის გასუფთავება\n" -#: help.c:194 +#: help.c:198 msgid " \\s [FILE] display history or save it to file\n" msgstr " \\s [ფაილი] ისტორიის ჩვენება ან ფაილში შენახვა\n" -#: help.c:196 +#: help.c:200 msgid " \\w FILE write query buffer to file\n" msgstr " \\w FILE მოთხოვნების ბაფერის ფაილში ჩაწერა\n" -#: help.c:199 +#: help.c:203 msgid "Input/Output\n" msgstr "შეტანა/გამოტანა\n" -#: help.c:200 +#: help.c:204 msgid " \\copy ... perform SQL COPY with data stream to the client host\n" msgstr " \\copy ... SQL COPY -ის შესრულება მონაცემების ნაკადით კლიენტის ჰოსტამდე\n" -#: help.c:201 +#: help.c:205 msgid " \\echo [-n] [STRING] write string to standard output (-n for no newline)\n" msgstr " \\echo [-n] [სტრიქონი] სტრიქონის სტანდარტულ გამოტანაზე გაშვება(ხაზის გადატანის გარეშე -n )\n" -#: help.c:202 +#: help.c:206 msgid " \\i FILE execute commands from file\n" msgstr " \\i ბრძანებების ფაილიდან შესრულება\n" -#: help.c:203 +#: help.c:207 msgid " \\ir FILE as \\i, but relative to location of current script\n" msgstr " \\ir ფაილი იგივე, რაც \\i, მაგრამ სკრიპტის მიმდინარე ადგილიდან დამოკიდებულებით\n" -#: help.c:204 +#: help.c:208 msgid " \\o [FILE] send all query results to file or |pipe\n" msgstr " \\o [ფაილი] მოთხოვნის ყველა შედეგის ფაილში ან |ფაიფში გაგზავნა\n" -#: help.c:205 +#: help.c:209 msgid " \\qecho [-n] [STRING] write string to \\o output stream (-n for no newline)\n" msgstr " \\qecho [-n] [striqoni] სტრიქონის \\o გამოტანის ნაკადში ჩაწერა (-n ახალი ხაზების გარეშე)\n" -#: help.c:206 +#: help.c:210 msgid " \\warn [-n] [STRING] write string to standard error (-n for no newline)\n" msgstr " \\warn [-n] [სტრიქონი] სტრიქონის სტანდარტულ შეცდომაზე გადამოტანა (-n გადატანის გარეშე)\n" -#: help.c:209 +#: help.c:213 msgid "Conditional\n" msgstr "პირობითი\n" -#: help.c:210 +#: help.c:214 msgid " \\if EXPR begin conditional block\n" msgstr " \\if EXPR პირობის შემცველი ბლოკის დასაწყისი\n" -#: help.c:211 +#: help.c:215 msgid " \\elif EXPR alternative within current conditional block\n" msgstr " \\elif EXPR ალტერნატიული პირობა მიმდინარე პირობით ბლოკში\n" -#: help.c:212 +#: help.c:216 msgid " \\else final alternative within current conditional block\n" msgstr " \\else პირობის მიმდინარე ბლოკის ალტერნატიული გზა\n" -#: help.c:213 +#: help.c:217 msgid " \\endif end conditional block\n" msgstr " \\endif პირობის შემცველი ბლოკის დასასრული\n" -#: help.c:216 +#: help.c:220 msgid "Informational\n" msgstr "საინფორმაციო\n" -#: help.c:217 +#: help.c:221 msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" msgstr " (პარამეტრები: S = სისტემური ობიექტების ჩვენება, x = გაფართოებული რეჟიმი, + = დამატებითი დეტალები)\n" -#: help.c:218 +#: help.c:222 msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr " \\d[Sx+] ცხრილების, ხედებისა და მიმდევრობების სია\n" -#: help.c:219 +#: help.c:223 msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr " \\d[S+] NAME ცხრილის, ხედის, მიმდევრობის ან ინდექსის აღწერა\n" -#: help.c:220 +#: help.c:224 msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[Sx] [PATTERN] აგრეგატების სია\n" -#: help.c:221 +#: help.c:225 msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[x+] [PATTERN] წვდომის მეთოდების სია\n" -#: help.c:222 +#: help.c:226 msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[x+] [AMPTRN [TYPEPTRN]] ოპერატორის კლასების სია\n" -#: help.c:223 +#: help.c:227 msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[x+] [AMPTRN [TYPEPTRN]] ოპერატორის ოჯახების სია\n" -#: help.c:224 +#: help.c:228 msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr " \\dAo[x+] [AMPTRN [OPFPTRN]] ოპერატორის ოჯახების ოპერატორების სია\n" -#: help.c:225 +#: help.c:229 msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgstr " \\dAp[x+] [AMPTRN [OPFPTRN]] ოპერატორის ოჯახების მხარდაჭერის ფუნქციების სია\n" -#: help.c:226 +#: help.c:230 msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[x+] [PATTERN] ცხრილის სივრცეების სია\n" -#: help.c:227 +#: help.c:231 msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[Sx+] [PATTERN] გადაყვანების სია\n" -#: help.c:228 +#: help.c:232 msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[x+] [PATTERN] კონფიგურაციის პარამეტრების სია\n" -#: help.c:229 +#: help.c:233 msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[x+] [PATTERN] კასტების სია\n" -#: help.c:230 +#: help.c:234 msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr " \\dd[Sx] [შაბლონი] ობიექტის აღწერის ჩვენება, რომელიც სხვაგან არსადაა ნაჩვენები\n" -#: help.c:231 +#: help.c:235 msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[Sx+] [PATTERN] დომენების სია\n" -#: help.c:232 +#: help.c:236 msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp[x] [შაბლონი] ნაგულისხმევი პრივილეგიების სია\n" -#: help.c:233 +#: help.c:237 msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[Sx+] [შაბლონი] გარე ცხრილების სია\n" -#: help.c:234 +#: help.c:238 msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[x+] [შაბლონი] გარე სერვერების სია\n" -#: help.c:235 +#: help.c:239 msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[x+] [შაბლონი] გარე ცხრილების სია\n" -#: help.c:236 +#: help.c:240 msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[x+] [PATTERN] მომხმარებლების მომხმარებლის სია\n" -#: help.c:237 +#: help.c:241 msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[x+] [შაბლონი] გარე მონაცემების გადამტანების სია\n" -#: help.c:238 +#: help.c:242 msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" @@ -3211,47 +3246,47 @@ msgstr "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " ფუნქციების [მხოლოდ agg/normal/procedure/trigger/window] სია\n" -#: help.c:240 +#: help.c:244 msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr " \\dF[x+] [შაბლონი] ტექსტის ძებნის კონფიგურაციების სია\n" -#: help.c:241 +#: help.c:245 msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr " \\dFd[x+] [შაბლონი] ტექსტის ძებნის ლექსიკონების სია\n" -#: help.c:242 +#: help.c:246 msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr " \\dFp[x+] [PATTERN] ტექსტის ძებნის დამმუშავებლების სია\n" -#: help.c:243 +#: help.c:247 msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr " \\dFt[x+] [შაბლონი] ტექსტის ძებნის შაბლონების სია\n" -#: help.c:244 +#: help.c:248 msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[Sx+] [შაბლონი] როლების სია\n" -#: help.c:245 +#: help.c:249 msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[Sx+] [შაბლონი] ინდექსების სია\n" -#: help.c:246 +#: help.c:250 msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr " \\dl[x+] დიდი ობიექტების სია. იგივე, რაც \\lo_list\n" -#: help.c:247 +#: help.c:251 msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[Sx+] [შაბლონი] პროცედურული ენების სია\n" -#: help.c:248 +#: help.c:252 msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[Sx+] [შაბლონი] მატერიალიზებული ხედების სია\n" -#: help.c:249 +#: help.c:253 msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[Sx+] [შაბლონი] სქემების სია\n" -#: help.c:250 +#: help.c:254 msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" @@ -3259,19 +3294,19 @@ msgstr "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " ოპერატორების სია\n" -#: help.c:252 +#: help.c:256 msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[Sx+] [შაბლონი] კოლაციების სია\n" -#: help.c:253 +#: help.c:257 msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr " \\dp[Sx] [შაბლონი] ცხრილის, ხედის და მიმდევრობის წვდომის უფლებების სია\n" -#: help.c:254 +#: help.c:258 msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgstr " \\dP[itn+] [შაბლონი] [მხოლოდ ინდექსი/ცხრილი] დაყოფილი ურთიერთობების სია [n=ჩადგმული]\n" -#: help.c:255 +#: help.c:259 msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" @@ -3279,75 +3314,75 @@ msgstr "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " თითოეული ბაზის როლის პარამეტრების სია\n" -#: help.c:257 +#: help.c:261 msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\dg[Sx] [შაბლონი] როლის მინიჭებების სია\n" -#: help.c:258 +#: help.c:262 msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[x+] [შაბლონი] რეპლიკაციის გამოცემების სია\n" -#: help.c:259 +#: help.c:263 msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[x+] [შაბლონი] რეპლიკაციის გამოწერების სია\n" -#: help.c:260 +#: help.c:264 msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[Sx+] [შაბლონი] მიმდევრობების სია\n" -#: help.c:261 +#: help.c:265 msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[Sx+] [შაბლონი] ცხრილების სია\n" -#: help.c:262 +#: help.c:266 msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[Sx+] [შაბლონი] მონაცემის ტიპების სია\n" -#: help.c:263 +#: help.c:267 msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[Sx+] [შაბლონი] როლების სია\n" -#: help.c:264 +#: help.c:268 msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[Sx+] [შაბლონი] ხედების სია\n" -#: help.c:265 +#: help.c:269 msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[x+] [შაბლონი] გაფართოებების სია\n" -#: help.c:266 +#: help.c:270 msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX[x] [შაბლონი] გაფართოებული სტატისტიკის სია\n" -#: help.c:267 +#: help.c:271 msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[x+] [შაბლონი] მოვლენის ტრიგერების სია\n" -#: help.c:268 +#: help.c:272 msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[x+] [შაბლონი] მონაცემთა ბაზების სია\n" -#: help.c:269 +#: help.c:273 msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] FUNCNAME ფუნქციის აღწერის ჩვენება\n" -#: help.c:270 +#: help.c:274 msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] ხედისსახელი ხედის აღწერის ჩვენება\n" -#: help.c:271 +#: help.c:275 msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[Sx] [შაბლონი] იგივე, რაც \\dp\n" -#: help.c:274 +#: help.c:278 msgid "Large Objects\n" msgstr "დიდი ობიექტები\n" -#: help.c:275 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr " \\lo_export LOBOID FILE დიდი ობიექტის ფაილში ჩაწერა\n" -#: help.c:276 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3355,36 +3390,36 @@ msgstr "" " \\lo_import ფაილი [კომენტარი]\n" " დიდი ობიექტის ფაილიდან წაკითხვა\n" -#: help.c:278 +#: help.c:282 msgid " \\lo_list[x+] list large objects\n" msgstr " \\lo_list[x+] დიდი ობიექტების სია\n" -#: help.c:279 +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID დიდი ობიექტის წაშლა\n" -#: help.c:282 +#: help.c:286 msgid "Formatting\n" msgstr "ფორმატირება\n" -#: help.c:283 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr " \\a სწორებულ და გაუსწორებელ რეჟიმებს შორის გადართვა\n" -#: help.c:284 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr " \\C [სტრიქონი] ცხრილის სათაურის დაყენება. ან წაშლა, თუ მითითებული არაა\n" -#: help.c:285 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr " \\f [სტრიქონი] მოთხოვნის შედეგის დაულაგებელი გამოტანის ველების გამყოფის დაყენება ან ჩვენება\n" -#: help.c:286 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H HTML გამოტანის რეჟიმის გადართვა (მიმდინარე %s)\n" -#: help.c:288 +#: help.c:292 msgid "" " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" @@ -3402,29 +3437,29 @@ msgstr "" " unicode_border_linestyle|unicode_column_linestyle|\n" " unicode_header_linestyle|xheader_width)\n" -#: help.c:295 +#: help.c:299 #, c-format msgid " \\t [on|off] show only rows (currently %s)\n" msgstr " \\t [on|off] მხოლოდ მწკრივების ჩვენება(ამჟამად %s)\n" -#: help.c:297 +#: help.c:301 msgid " \\T [STRING] set HTML
tag attributes, or unset if none\n" msgstr " \\T [STRING] HTML-ის
ჭდის ატრიბუტების დაყენება. ან გასუფთავება, თუ მითითებული არაფერია\n" -#: help.c:298 +#: 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:299 +#: help.c:303 msgid "auto" msgstr "ავტომატური" -#: help.c:302 +#: help.c:306 msgid "Connection\n" msgstr "შეერთება\n" -#: help.c:304 +#: help.c:308 #, c-format msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" @@ -3433,7 +3468,7 @@ msgstr "" " \\c[onnect] {[ბაზისსახელი|- მომხმარებელი|- ჰოსტი|- პორტ|-] | conninfo}\n" " ახალ ბაზასთან მიერთება (მიმდინარე \"%s\")\n" -#: help.c:308 +#: help.c:312 msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently no connection)\n" @@ -3441,68 +3476,68 @@ msgstr "" " \\c[onnect] {[ბაზისსახელი|- მომხმარებელი|- ჰოსტი|- პორტ|-] | conninfo}\n" " ახალ ბაზასთან მიერთება (მიმდინარე შეერთება არ არსებობს)\n" -#: help.c:310 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo მიმდინარე შეერთების შესახებ ინფორმაციის გამოტანა\n" -#: help.c:311 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr " \\encoding [კოდირება] კლიენტის კოდირების ჩვენება ან დაყენება\n" -#: help.c:312 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr " \\password [მომხმარებელი] მომხმარებლის პაროლის უსაფრთხოდ შეცვლა\n" -#: help.c:315 +#: help.c:319 msgid "Operating System\n" msgstr "ოპერაციული სისტემა\n" -#: help.c:316 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [საქ] მიმდინარე საქაღალდის შეცვლა\n" -#: help.c:317 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr " \\getenv PSQLVAR ENVVAR გარემოს ცვლადის გამოთხოვა\n" -#: help.c:318 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr " \\setenv სახელი [მნიშვნელობა] გარემოს ცვლადის დაყენება ან მოხსნა\n" -#: help.c:319 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr " \\timing [on|off] ბრძანებების ტაიმერის გადართვა (ამჟამად %s)\n" -#: help.c:321 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr " \\! [ბრძანება] გარსის ბრძანების შესრულება ან ინტერაქტიური გარსის გაშვება\n" -#: help.c:324 +#: help.c:328 msgid "Variables\n" msgstr "ცვლადები\n" -#: help.c:325 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr " \\prompt [ტექსტი] სახელი მომხმარებლისთვის შიდა ცვლადის დაყენების შეთავაზება\n" -#: help.c:326 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr " \\set [სახელი [მნიშვნელობა]] დააყენებს შიდა ცვლადს, ან, თუ პარამეტრები მითითებული არაა, მათ სიას გამოიტანს\n" -#: help.c:327 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset სახელი შიდა ცვლადის მოხსნა (წაშლა)\n" -#: help.c:330 +#: help.c:334 msgid "Extended Query Protocol\n" msgstr "გაფართოებული მოთხოვნის პროტოკოლი\n" -#: help.c:331 +#: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" msgstr " \\bind [PARAM]... მოთხოვნის პარამეტრების დაყენება\n" -#: help.c:332 +#: help.c:336 msgid "" " \\bind_named STMT_NAME [PARAM]...\n" " set query parameters for an existing prepared statement\n" @@ -3510,7 +3545,7 @@ msgstr "" " \\bind_named STMT_NAME [PARAM]...\n" " მოთხოვნის პარამეტრების დაყენება არსებული მომზადებული ოპერატორისთვის\n" -#: help.c:334 +#: help.c:338 msgid "" " \\close_prepared STMT_NAME\n" " close an existing prepared statement\n" @@ -3518,41 +3553,41 @@ msgstr "" " \\close_prepared STMT_NAME\n" " არსებული მომზადებული ოპერატორის დახურვა\n" -#: help.c:336 +#: help.c:340 msgid " \\endpipeline exit pipeline mode\n" msgstr " \\endpipeline კომუნიკაციის არხის რეჟიმიდან გასვლა\n" -#: help.c:337 +#: help.c:341 msgid " \\flush flush output data to the server\n" msgstr " \\flush გაუგზავნელი მონაცემების გადაგზავნა სერვერზე\n" -#: help.c:338 +#: help.c:342 msgid " \\flushrequest send request to the server to flush its output buffer\n" msgstr " \\flushrequest სერვერისთვის მისი გამოტანის ბუფერის გაგზავნის მოთხოვნის გაგზავნა\n" -#: help.c:339 +#: 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" "\n" -#: help.c:340 +#: help.c:344 msgid " \\parse STMT_NAME create a prepared statement\n" msgstr " \\parse STMT_NAME მომზადებული ოპერატორის შექმნა\n" -#: help.c:341 +#: help.c:345 msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" msgstr " \\sendpipeline გაფართოებული მოთხოვნის გაგზავნა მიმდინარე საკომუნიკაციო არხისთვის\n" -#: help.c:342 +#: help.c:346 msgid " \\startpipeline enter pipeline mode\n" msgstr " \\startpipeline კომუნიკაციის არხის რეჟიმზე გადასვლა\n" -#: help.c:343 +#: help.c:347 msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" msgstr " \\syncpipeline სინქრონიზაციის წერტილის დამატება გამავალი კომუნიკაციის არხისთვის\n" -#: help.c:382 +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" @@ -3560,11 +3595,11 @@ msgstr "" "განსაკუთრებულად მოსაპყრობი ცვლადების სია\n" "\n" -#: help.c:384 +#: help.c:388 msgid "psql variables:\n" msgstr "psql-ის ცვლადები:\n" -#: help.c:386 +#: help.c:390 msgid "" " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n" @@ -3574,7 +3609,7 @@ msgstr "" " ან \\set სახელი მნიშვნელობა psql-ის შიგნით\n" "\n" -#: help.c:388 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3582,7 +3617,7 @@ msgstr "" " AUTOCOMMIT\n" " iთუ დაყენებულია, წარმატებული SQL ბრძანებები ავტომატურად იქნება გადაცემული\n" -#: help.c:390 +#: help.c:394 msgid "" " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" @@ -3592,7 +3627,7 @@ msgstr "" " განსაზღვრავს სიმბოლოების ზომას SQL-ის საკვანძო სიტყვების დასრულებისას\n" " [პატარა (lower), upper (დიდი), პატარის_შენარჩუნება (preserve-lower), დიდის_შენარჩუნება (preserve-upper)]\n" -#: help.c:393 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3600,7 +3635,7 @@ msgstr "" " DBNAME\n" " ბაზის სახელი, რომელთანაც ამჟამად მიერთებული ბრძანდებით\n" -#: help.c:395 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3610,7 +3645,7 @@ msgstr "" " აკონტროლებს, შეყვანილიდან რა გამოჩნდება სტანდარტულ გამოტანაზე\n" " [all(ყველაფერი), errors(შეცდომები), none(არაფერი), queries(მოთხოვნები)]\n" -#: help.c:398 +#: help.c:402 msgid "" " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" @@ -3620,7 +3655,7 @@ msgstr "" " თუ დაყენებულია, \\-ით დაწყებული შიდა მოთხოვნები ნაჩვენები იქნება;\n" " თუ მნიშვნელობაა 'noexe', შიდა ბრძანებები ნაჩვენები იქნება, მაგრამ შესრულებული არა\n" -#: help.c:401 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3628,7 +3663,7 @@ msgstr "" " ENCODING\n" " მიმდინარე კლიენტის სიმბოლოების კოდირება\n" -#: help.c:403 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3636,7 +3671,7 @@ msgstr "" " ERROR\n" " \"true\" თუ ბოლო მოთხოვნა ავარიული იყო. არადა \"false\"\n" -#: help.c:405 +#: help.c:409 msgid "" " FETCH_COUNT\n" " the number of result rows to fetch and display at a time (0 = unlimited)\n" @@ -3644,7 +3679,7 @@ msgstr "" " FETCH_COUNT\n" " შედეგის გამოსათხოვი მწკრივების რაოდენობა ერთი ჩვენებისთვის (0=უსასრულო)\n" -#: help.c:407 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3652,7 +3687,7 @@ msgstr "" " HIDE_TABLEAM\n" " თუ დაყენებულა, ცხრილის წვდომის მეთოდები ნაჩვენები არ იქნება\n" -#: help.c:409 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3660,7 +3695,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " თუ ჩართულია, შეკუმშვის მეთოდები ნაჩვენები არ იქნება\n" -#: help.c:411 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3668,7 +3703,7 @@ msgstr "" " HISTCONTROL\n" " ბრძანებების ისტორიის კონროლი[ignorespace, ignoredups, ignoreboth]\n" -#: help.c:413 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3676,7 +3711,7 @@ msgstr "" " HISTFILE\n" " ბრძანებების ისტორიის შესანახი ფაილის სახელი\n" -#: help.c:415 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3684,7 +3719,7 @@ msgstr "" " HISTSIZE\n" " ისტორიაში შენახული ბრძანებების მაქსიმალური რაოდენობა\n" -#: help.c:417 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3692,7 +3727,7 @@ msgstr "" " HOST\n" " ამჟამად მიერთებული მონაცემთა ბაზის სერვერის ჰოსტი\n" -#: help.c:419 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3700,7 +3735,7 @@ msgstr "" " IGNOREEOF\n" " ინტერაქტიური სესიის დასამთავრებლად საჭირო EOF-ების რაოდენობა\n" -#: help.c:421 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3708,7 +3743,7 @@ msgstr "" " LASTOID\n" " უკანასკნელად შეცვლილი OID-ის მნიშვნელობა\n" -#: help.c:423 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3718,7 +3753,7 @@ msgstr "" " LAST_ERROR_SQLSTATE\n" " უკანასკნელი შეცდომის შეტყობინება და SQLSTATE. თუ შეცდომა არ არსებობს, დაბრუნდება ცარიელი სტრიქონი და \"00000\"\n" -#: help.c:426 +#: help.c:430 msgid "" " ON_ERROR_ROLLBACK\n" " if set, an error doesn't stop a transaction (uses implicit savepoints)\n" @@ -3726,7 +3761,7 @@ msgstr "" " ON_ERROR_ROLLBACK\n" " თუ დაყენებულია, შეცდომა ტრანზაქციას არ გააჩერებს (გამოიყენება არაპირდაპირი შესანახი წერტილები)\n" -#: help.c:428 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3734,7 +3769,7 @@ msgstr "" " ON_ERROR_STOP\n" " ბრძანებების პაკეტის შესრულების შეწყვეტა პირველივე შეცდომის შემდეგ\n" -#: help.c:430 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3742,7 +3777,7 @@ msgstr "" " პორტი\n" " სერვერის პორტი მიმდინარე შეერთებისთვის\n" -#: help.c:432 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3750,7 +3785,7 @@ msgstr "" " PROMPT1\n" " psql-ის ბრძანების სტრიქონის აღწერა\n" -#: help.c:434 +#: help.c:438 msgid "" " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" @@ -3758,7 +3793,7 @@ msgstr "" " PROMPT2\n" " ბრძანების სტრიქონის მითითება, როცა ბრძანება წინა ხაზიდან გრძელდება\n" -#: help.c:436 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3766,7 +3801,7 @@ msgstr "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" -#: help.c:438 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3774,7 +3809,7 @@ msgstr "" " QUIET\n" " ჩუმი ოპერაციები(იგივე, რაც პარამეტრი -q)\n" -#: help.c:440 +#: help.c:444 msgid "" " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" @@ -3782,7 +3817,7 @@ msgstr "" " ROW_COUNT\n" " ბოლო მოთხოვნის მიერ დაბრუნებული ან შეცვლილი მწკრივები. ან 0\n" -#: help.c:442 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3792,7 +3827,7 @@ msgstr "" " SERVER_VERSION_NUM\n" " სერვერის ვერსია(მოკლე სტრიქონის ან რიცხვით ფორმატში)\n" -#: help.c:445 +#: help.c:449 msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" @@ -3800,7 +3835,7 @@ msgstr "" " SHELL_ERROR\n" " \"true\", თუ ბოლო მოთხოვნა ავარიული იყო. არადა \"false\"\n" -#: help.c:447 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3808,7 +3843,7 @@ msgstr "" " SHELL_EXIT_CODE\n" " გარსის ბოლო ბრძანების გამოსვლის სტატუსი\n" -#: help.c:449 +#: help.c:453 msgid "" " SHOW_ALL_RESULTS\n" " show all results of a combined query (\\;) instead of only the last\n" @@ -3816,7 +3851,7 @@ msgstr "" " SHOW_ALL_RESULTS\n" " მხოლოდ ბოლოს მაგიერ კომბინირებული მოთხოვნის ყველა შედეგის ჩვენება (\\;)\n" -#: help.c:451 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3824,7 +3859,7 @@ msgstr "" " SHOW_CONTEXT\n" " შეტყობინების კონტექსტის ველების ჩვენების კონტროლი[never, errors, always]\n" -#: help.c:453 +#: help.c:457 msgid "" " SINGLELINE\n" " if set, end of line terminates SQL commands (same as -S option)\n" @@ -3832,7 +3867,7 @@ msgstr "" " SINGLELINE\n" " iთუ დაყენებულია, ხაზის დაბოლოება SQL-ის ბრძანებასაც დაასრულებს (იგივე, რაც -S პარამეტრი)\n" -#: help.c:455 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3840,7 +3875,7 @@ msgstr "" " SINGLESTEP\n" " ერთნაბიჯიანი რეჟიმი. (იგივე, რაც -s პარამეტრი)\n" -#: help.c:457 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3848,7 +3883,7 @@ msgstr "" " SQLSTATE\n" " უკანასკნელი მოთხოვნის SQLSTATE. \"00000\", თუ შეცდომა არ მომხდარა\n" -#: help.c:459 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3856,7 +3891,7 @@ msgstr "" " USER\n" " ბაზასთან მიერთებული მომხმარებლის სახელი\n" -#: help.c:461 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3864,7 +3899,7 @@ msgstr "" " VERBOSITY\n" " შეცდომის ანგარშების დეტალურობის კონტროლი [default, verbose, terse, sqlstate]\n" -#: help.c:463 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3876,7 +3911,7 @@ msgstr "" " VERSION_NUM\n" " psql-ის ვერსია (სრული ვერსია, მოკლე ვერსია თუ რიცხვითი ფორმატი)\n" -#: help.c:467 +#: help.c:471 #, c-format msgid "" " WATCH_INTERVAL\n" @@ -3885,7 +3920,7 @@ msgstr "" " WATCH_INTERVAL\n" " წამების რაოდენობა, რომელსაც ბრძანება \\watch იცდის გაშვებებს შორის (ნაგულისხმევი %s)\n" -#: help.c:471 +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3893,7 +3928,7 @@ msgstr "" "\n" "ჩვენების პარამეტრები:\n" -#: help.c:473 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3903,7 +3938,7 @@ msgstr "" " ან \\pset სახ [მიშნვნ] psql-ში\n" "\n" -#: help.c:475 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -3911,7 +3946,7 @@ msgstr "" " border\n" " საზღვრის სტილი (რიცხვი)\n" -#: help.c:477 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -3919,7 +3954,7 @@ msgstr "" " columns\n" " სამიზნის სიგანე გადატანილი ფორმატისთვის\n" -#: help.c:479 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3927,7 +3962,7 @@ msgstr "" " expanded (or x)\n" " გაფართოებული გამოტანა [on, off, auto]\n" -#: help.c:481 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -3936,7 +3971,7 @@ msgstr "" " fieldsep\n" " ველების გამყოფი დაულაგების გამოტანისათვის (ნაგულისხმევი \"%s\")\n" -#: help.c:484 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3944,7 +3979,7 @@ msgstr "" " fieldsep_zero\n" " დაულაგებელი გამოტანის ველების გამყოფის ნულოვან ბაიტზე დაყენება\n" -#: help.c:486 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3952,7 +3987,7 @@ msgstr "" " footer\n" " ცხრილის მინაწერების ჩვენების ჩაართ/გამორთ[on, off]\n" -#: help.c:488 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3960,7 +3995,7 @@ msgstr "" " format\n" " გამოტანის ფორმატის დაყენება [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:490 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -3968,7 +4003,7 @@ msgstr "" " linestyle\n" " საზღვრის ხაზის ხატვის სტილი [ascii, old-ascii, unicode]\n" -#: help.c:492 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -3976,7 +4011,7 @@ msgstr "" " null\n" " ნულოვანი ბაიტის მიერ ნაჩვენები სიმბოლო\n" -#: help.c:494 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -3984,7 +4019,7 @@ msgstr "" " numericlocale\n" " ციფრის ჯგუფების გასაყოფად ენის სპეციფიკური სიმბოლოს გამოყენება\n" -#: help.c:496 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -3992,7 +4027,7 @@ msgstr "" " pager\n" " გვერდების გარე გადამრთველის გამოყენება[yes, no, always]\n" -#: help.c:498 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4000,7 +4035,7 @@ msgstr "" " recordsep\n" " დაულაგებელი გამოტანის ჩანაწერების(ხაზების) გამყოფი\n" -#: help.c:500 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4008,7 +4043,7 @@ msgstr "" " recordsep_zero\n" " დაულაგებელი გამოტანის ველების გამყოფის ნულოვან ბაიტზე დაყენება\n" -#: help.c:502 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4018,7 +4053,7 @@ msgstr "" " მიუთითებს HTML ფორმატის table ჭდის ატრიბუტებს ან სვეტების პოპორციულ სიგანეს\n" " მარცხნივ სწორებული მონაცემების ტიპებისთვის latex-longtable ფორმატში\n" -#: help.c:505 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4026,7 +4061,7 @@ msgstr "" " title\n" " ცხრილის სათაურის დაყენება შემდგომ დაბეჭდილი ცხრილებისთვის\n" -#: help.c:507 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4034,7 +4069,7 @@ msgstr "" " tuples_only\n" " თუ დაყენებულია, ნაჩვენები იქნება მხოლოდ მიმდინარე მონაცემები\n" -#: help.c:509 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4046,7 +4081,7 @@ msgstr "" " unicode_header_linestyle\n" " უნიკოდის ხაზის დახატვის სტილი [single, double]\n" -#: help.c:513 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4056,7 +4091,7 @@ msgstr "" " აყენებს თავსართის მაქსიმალურ სიგანეს გაფართოებული გამოტანისთვის\n" " [სრული, სვეტი, გვერდი, მთელი_რიცხვი]\n" -#: help.c:517 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -4064,7 +4099,7 @@ msgstr "" "\n" "გარემოს ცვლადები:\n" -#: help.c:521 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4074,7 +4109,7 @@ msgstr "" " ან \\setenv სახელი[მნიშვნელობა ] psql-ის სიგნით\n" "\n" -#: help.c:523 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4086,7 +4121,7 @@ msgstr "" " ან \\setenv სახელი [მნიშვნელობა] psql-ში\n" "\n" -#: help.c:526 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4094,7 +4129,7 @@ msgstr "" " COLUMNS\n" " გადასატანი ფორმატის სვეტების რაოდენობა\n" -#: help.c:528 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4102,7 +4137,7 @@ msgstr "" " PGAPPNAME\n" " იგივე, რაც შეერთების პარამეტრი აპლიკაციის_სახელი\n" -#: help.c:530 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4110,7 +4145,7 @@ msgstr "" " PGDATABASE\n" " იგივე, რაც შეერთების dbname პარამეტრი\n" -#: help.c:532 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4118,7 +4153,7 @@ msgstr "" " PGHOST\n" " იგივე, რაც ჰოსტი შეერთების პარამეტრებში\n" -#: help.c:534 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4126,7 +4161,7 @@ msgstr "" " PGPASSFILE\n" " პაროლების ფაილის სახელი\n" -#: help.c:536 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4134,7 +4169,7 @@ msgstr "" " PGPASSWORD\n" " შეერთების პაროლი (რეკომენდებული არაა)\n" -#: help.c:538 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4142,7 +4177,7 @@ msgstr "" " PGPORT\n" " იგივე, რაც პორტი შეერთების პარამეტრებში\n" -#: help.c:540 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4150,7 +4185,7 @@ msgstr "" " PGUSER\n" " იგივე, რაც მომხმარებლის სახელი შეერთების პარამეტრებში\n" -#: help.c:542 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4158,7 +4193,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " \\e, \\ef, და \\ev ბრძანების მიერ გამოყენებული რედაქტორი\n" -#: help.c:544 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4166,7 +4201,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " რედაქტორის გამოძახებისას ხაზის ნომრის მითითების ხერხი\n" -#: help.c:546 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4174,7 +4209,7 @@ msgstr "" " PSQL_HISTORY\n" " ბრძანებების ისტორიის ფაილის ალტერნატიული მდებარეობა\n" -#: help.c:548 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4182,7 +4217,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " გვერდების გადამრთველი გარე პროგრამის სახელი\n" -#: help.c:551 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4190,7 +4225,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " \\watch-ისთვის გამოყენებული გვერდების გადამრთველი გარე პროგრამა\n" -#: help.c:554 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4198,7 +4233,7 @@ msgstr "" " PSQLRC\n" " მომხმარებლის .psqlrc ფაილის ალტერნატიული მდებარეობა\n" -#: help.c:556 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4206,7 +4241,7 @@ msgstr "" " SHELL\n" " \\! ბრძანების მიერ გამოყენებული გარსი\n" -#: help.c:558 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4214,11 +4249,11 @@ msgstr "" " TMPDIR\n" " დროებითი ფაილების საქაღალდე\n" -#: help.c:618 +#: help.c:622 msgid "Available help:\n" msgstr "ხელმისაწვდომი დახმარება:\n" -#: help.c:713 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -4237,7 +4272,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:736 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -6851,7 +6886,7 @@ msgstr "ბრძანების სტრიქონის დამატ msgid "could not find own program executable" msgstr "საკუთარი პროგრამის გამშვები ფაილის პოვნა შეუძლებელია" -#: tab-complete.in.c:6613 +#: tab-complete.in.c:6633 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/ko.po b/src/bin/psql/po/ko.po index 6afbc04dd1dd5..91b8b7f8404c6 100644 --- a/src/bin/psql/po/ko.po +++ b/src/bin/psql/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: psql (PostgreSQL) 17\n" +"Project-Id-Version: psql (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:48+0000\n" -"PO-Revision-Date: 2025-01-16 17:32+0900\n" +"POT-Creation-Date: 2025-09-11 21:48+0000\n" +"PO-Revision-Date: 2025-09-10 13:39+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -15,22 +15,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 "힌트: " @@ -55,28 +55,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" @@ -98,7 +98,7 @@ msgstr "null 포인터를 복제할 수 없음(내부 오류)\n" msgid "could not look up effective user ID %ld: %s" msgstr "UID %ld 해당하는 사용자를 찾을 수 없음: %s" -#: ../../common/username.c:45 command.c:616 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "사용자 없음" @@ -159,9 +159,10 @@ 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" +"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 @@ -170,312 +171,408 @@ msgstr "테이블 내용에 헤더를 추가할 수 없음: 열 수가 %d개를 #: ../../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 -#, c-format -msgid "could not look up local user ID %d: %s" -msgstr "UID %d 해당하는 로컬 사용자를 찾을 수 없음: %s" - -#: ../../port/user.c:48 ../../port/user.c:84 +#: command.c:254 #, c-format -msgid "local user with ID %d does not exist" -msgstr "ID %d 로컬 사용자 없음" +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "백슬래시 명령은 제한되었음; \\unrestrict 명령만 허용함" -#: 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 명령은 무시함; 현재 \\if 블록을 중지하려면, \\endif 명령이나 Ctrl-C 키" "를 사용하세요." -#: 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 "UID %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 "false" + +#: command.c:891 command.c:895 command.c:903 command.c:936 +msgid "true" +msgstr "true" + +#: command.c:894 +msgid "GSSAPI Authenticated" +msgstr "GSSAPI 인증됨" -#: command.c:1069 command.c:1170 command.c:2675 +#: 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 "none" + +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "쿼리 버퍼가 없음" -#: command.c:1102 command.c:5776 +#: 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:5882 -#: 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 "명령내역(history)을 \"%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: OS 환경 변수 이름에는 \"=\" 문자가 없어야 함" -#: 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: 최소 row 수 지정을 중복 지정했음" -#: command.c:2851 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: 최소 row 수 값 잘못됨 \"%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 "" "연결 문자열을 사용할 때는 user, host, port 를 따로 따로 지정하지 마세요." -#: 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 "\\연결: %s" -#: command.c:3720 +#: command.c:4340 #, c-format msgid "" "You are now connected to database \"%s\" as user \"%s\" on address \"%s\" at " @@ -483,7 +580,7 @@ msgid "" 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\" " @@ -491,16 +588,16 @@ msgid "" 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" +"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 " @@ -508,17 +605,17 @@ msgid "" 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" @@ -527,33 +624,25 @@ 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 "off" -#: command.c:3898 help.c:42 +#: command.c:4518 help.c:39 msgid "on" msgstr "on" -#: command.c:3899 -msgid "none" -msgstr "none" - -#: 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" @@ -565,7 +654,7 @@ msgstr "" "참조\n" " 페이지 \"Notes for Windows users\"를 참조하십시오.\n" -#: command.c:4038 +#: command.c:4667 #, c-format msgid "" "environment variable PSQL_EDITOR_LINENUMBER_ARG must be set to specify a " @@ -574,32 +663,32 @@ msgstr "" "지정한 줄번호를 사용하기 위해서는 PSQL_EDITOR_LINENUMBER_ARG 이름의 OS 환경변" "수가 설정되어 있어야 합니다." -#: 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-" @@ -608,27 +697,27 @@ 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: 사용할 수 있는 유니코드 테두리 모양은 single, double" -#: command.c:4552 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: 사용할 수 있는 유니코드 칼럼 선 모양은 single, double" -#: command.c:4567 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset: 사용할 수 있는 유니코드 헤더 선 모양은 single, double" -#: command.c:4619 +#: command.c:5248 #, c-format msgid "" "\\pset: allowed xheader_width values are \"%s\" (default), \"%s\", \"%s\", " @@ -637,12 +726,12 @@ 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 문자는 1바이트의 단일 문자여야 함" -#: command.c:4641 +#: command.c:5270 #, c-format msgid "" "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage " @@ -650,213 +739,213 @@ msgid "" msgstr "" "\\pset: csv_fieldsep 문자로 따옴표, 줄바꿈(\\n, \\r) 문자는 사용할 수 없음" -#: 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 "html 테이블의 테두리를 %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 "필드 구분자가 0 바이트입니다.\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" msgstr[0] "%d 줄보다 적은 경우는 페이지 단위 보기가 사용되지 않음\n" -#: command.c:4918 command.c:4928 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "레코드 구분자가 0 바이트임.\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 "유니코드 테두리 선문자: \"%s\".\n" -#: command.c:4968 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "유니코드 칼럼 선문자: \"%s\".\n" -#: command.c:4974 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "유니코드 헤더 선문자: \"%s\".\n" -#: command.c:5223 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: 실패" -#: command.c:5261 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watch 명령으로 수행할 쿼리가 없습니다." -#: command.c:5293 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "타이머 설정 실패: %m" -#: command.c:5362 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (%g초 간격)\n" -#: command.c:5365 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (%g초 간격)\n" -#: command.c:5429 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "신호를 기다릴 수 없었음: %m" -#: command.c:5485 command.c:5492 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" @@ -869,111 +958,111 @@ msgstr "" "**************************\n" "\n" -#: command.c:5671 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "\"%s.%s\" 뷰(view)가 아님" -#: command.c:5687 +#: 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 ms\n" -#: common.c:586 +#: common.c:621 #, c-format msgid "Time: %.3f ms (%02d:%06.3f)\n" msgstr "작업시간: %.3f ms (%02d:%06.3f)\n" -#: common.c:595 +#: common.c:630 #, c-format msgid "Time: %.3f ms (%02d:%02d:%06.3f)\n" msgstr "작업시간: %.3f ms (%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 ms (%.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\", 보낸 프로세스: %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 " @@ -986,37 +1075,52 @@ msgstr "" "%s\n" "***(Enter: 계속 진행, x Enter: 중지)********************\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" @@ -1070,11 +1174,11 @@ msgstr "" "자료입력이 끝나면 backslash 점 (\\.) 마지막 줄 처음에 입력하는 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 "복사 모드를 종료하는 중" @@ -1131,1162 +1235,1252 @@ 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 "proc" -#: 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 "immutable" -#: describe.c:384 +#: describe.c:395 msgid "stable" msgstr "stable" -#: describe.c:385 +#: describe.c:396 msgid "volatile" msgstr "volatile" -#: 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 "safe" -#: describe.c:396 +#: describe.c:410 msgid "unsafe" msgstr "unsafe" -#: describe.c:397 +#: describe.c:411 msgid "Parallel" msgstr "병렬처리" -#: describe.c:402 +#: describe.c:417 msgid "definer" msgstr "definer" -#: describe.c:403 +#: describe.c:418 msgid "invoker" msgstr "invoker" -#: 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 "Leakproof?" + +#: 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 "Collate" -#: 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 "뷰(view)" -#: 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 "type" -#: 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 "룰(rule)" -#: 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\" 이름을 릴레이션(relation) 없음." -#: 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 "%s oid의 어떤 릴레이션(relation)도 찾을 수 없음." -#: 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 "식별 칼럼용 시퀀스: %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\" 뷰(view)" -#: 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 "Materialized 뷰 \"%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 "\"%s.%s\" TOAST 테이블" -#: 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 "NULL허용" -#: describe.c:2031 describe.c:4407 +#: describe.c:2070 describe.c:4572 msgid "Default" msgstr "초기값" -#: describe.c:2034 +#: describe.c:2073 msgid "Key?" msgstr "Key?" -#: 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 not distinct" -#: 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 ", predicate (%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 "룰(rule)들:" -#: 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 "Not-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 "자료형의 typed 테이블: %s" -#: describe.c:3486 +#: describe.c:3584 msgid "Replica Identity" msgstr "복제 식별자" -#: describe.c:3499 +#: describe.c:3597 msgid "Has OIDs: yes" msgstr "OID 사용: yes" -#: 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 "DB 만들기" -#: 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 "RLS 통과" -#: 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" msgstr[0] "%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 "파티션 릴레이션(relation) 목록" -#: 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 "도메인(domain) 목록" -#: 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 "문자코드변환규칙(conversion) 목록" -#: 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 "replica" -#: 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 "Dependencies" -#: 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 "Source 자료형" -#: describe.c:4803 +#: describe.c:4968 msgid "Target type" msgstr "Target 자료형" -#: describe.c:4827 +#: describe.c:4992 msgid "in assignment" msgstr "in assignment" -#: describe.c:4829 +#: describe.c:4994 msgid "Implicit?" msgstr "Implicit?" -#: 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 "Deterministic?" -#: 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 "Lexize" -#: 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" @@ -2295,7 +2489,7 @@ msgstr "" "\n" "파서: \"%s.%s\"" -#: describe.c:5705 +#: describe.c:5881 #, c-format msgid "" "\n" @@ -2304,273 +2498,277 @@ 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 "적당하지 않은 qualified 이름 입니다 (너무 많은 점이 있네요): %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 "Inserts" -#: describe.c:6247 describe.c:6434 +#: describe.c:6426 describe.c:6647 msgid "Updates" msgstr "Updates" -#: describe.c:6248 describe.c:6435 +#: describe.c:6427 describe.c:6648 msgid "Deletes" msgstr "Deletes" -#: describe.c:6252 describe.c:6437 +#: describe.c:6431 describe.c:6650 msgid "Truncates" msgstr "Truncates" -#: 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 "Via 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 "2단계 커밋" -#: 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 "Failover" -#: describe.c:6604 +#: describe.c:6821 msgid "Synchronous commit" msgstr "동기식 커밋" -#: describe.c:6605 +#: describe.c:6822 msgid "Conninfo" msgstr "연결정보" -#: 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 "(none)" -#: 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 "AM" -#: 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 "Applicable types" -#: 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 "ordering" -#: describe.c:6898 +#: describe.c:7115 msgid "search" msgstr "search" -#: describe.c:6899 +#: describe.c:7116 msgid "Purpose" msgstr "Purpose" -#: 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" @@ -2578,11 +2776,11 @@ msgstr "" "psql은 PostgreSQL 대화식 터미널입니다.\n" "\n" -#: help.c:64 help.c:372 help.c:456 help.c:502 +#: help.c:61 help.c:389 help.c:476 help.c:522 msgid "Usage:\n" msgstr "사용법:\n" -#: help.c:65 +#: help.c:62 msgid "" " psql [OPTION]... [DBNAME [USERNAME]]\n" "\n" @@ -2590,31 +2788,31 @@ msgstr "" " psql [OPTION]... [DBNAME [USERNAME]]\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=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" @@ -2624,15 +2822,15 @@ msgstr "" " 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-" @@ -2641,21 +2839,21 @@ msgstr "" " -1 (\"one\"), --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 psql 내장명령어(\\문자로 시작하는)를 표시하고 종" "료\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" @@ -2663,53 +2861,53 @@ 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 한 줄 모드(줄 끝에서 SQL 명령이 종료됨)\n" -#: help.c:95 +#: help.c:92 msgid "" "\n" "Output format options:\n" @@ -2717,16 +2915,16 @@ 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 (쉼표-분리 자료) 테이블 출력 모드\n" -#: help.c:98 +#: help.c:95 #, c-format msgid "" " -F, --field-separator=STRING\n" @@ -2734,21 +2932,21 @@ msgid "" "\"%s\")\n" msgstr "" " -F, --field-separator=STRING\n" -" unaligned 출력용 필드 구분자 설정(기본 값: " -"\"%s\")\n" +" unaligned 출력용 필드 구분자 설정(기본 값: \"%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: " @@ -2758,22 +2956,22 @@ msgstr "" " unaligned 출력용 레코드 구분자 설정\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=TEXT HTML table 태그 속성 설정(예: 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 " @@ -2782,7 +2980,7 @@ msgstr "" " -z, --field-separator-zero\n" " unaligned 출력용 필드 구분자를 0 바이트로 지정\n" -#: help.c:110 +#: help.c:107 msgid "" " -0, --record-separator-zero\n" " set record separator for unaligned output to zero " @@ -2791,7 +2989,7 @@ msgstr "" " -0, --record-separator-zero\n" " unaligned 출력용 레코드 구분자를 0 바이트로 지정\n" -#: help.c:113 +#: help.c:110 msgid "" "\n" "Connection options:\n" @@ -2799,34 +2997,34 @@ 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=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" +"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" "documentation.\n" "\n" @@ -2837,43 +3035,39 @@ msgstr "" "설명서에서 psql 섹션을 참조하십시오.\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 [칼럼들] 쿼리를 실행하고, 피봇 테이블 형태로 자료를 보여줌\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" @@ -2881,32 +3075,48 @@ 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" @@ -2917,8 +3127,8 @@ msgstr "" " 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" @@ -3055,239 +3265,247 @@ 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" +" \\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" +" \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr "" -" \\dd[S] [PATTERN] 다른 곳에서는 볼 수 없는 객체 설명을 보여줌\n" +" \\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 " \\det[+] [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" +" \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] " "functions\n" msgstr "" -" \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" +" \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " [agg/normal/procedure/trigger/window 단일] 함수 목" "록\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] materialized 뷰 목록\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" +" \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" msgstr "" -" \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" +" \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " 연산자 목록\n" #: help.c:256 -msgid " \\dO[S+] [PATTERN] list collations\n" -msgstr " \\dO[S+] [PATTERN] collation 목록\n" +msgid " \\dO[Sx+] [PATTERN] list collations\n" +msgstr " \\dO[Sx+] [PATTERN] collation 목록\n" #: help.c:257 msgid "" -" \\dp[S] [PATTERN] list table, view, and sequence access privileges\n" -msgstr " \\dp[S] [PATTERN] 테이블, 뷰 및 시퀀스 액세스 권한 목록\n" +" \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" +msgstr " \\dpx[S] [PATTERN] 테이블, 뷰 및 시퀀스 액세스 권한 목록\n" #: help.c:258 msgid "" -" \\dP[itn+] [PATTERN] list [only index/table] partitioned relations " +" \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations " "[n=nested]\n" msgstr "" -" \\dP[itn+] [PATTERN] 파티션 릴레이션 목록 [인덱스/테이블만] [n=nested]\n" +" \\dP[itnx+] [PATTERN] 파티션 릴레이션 목록 [인덱스/테이블만] [n=nested]\n" #: help.c:259 -msgid " \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n" -msgstr " \\drds [ROLEPTRN [DBPTRN]] per-database 롤 설정 목록\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[+] 함수이름 함수 정의 보기\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[+] 뷰이름 뷰 정의 보기\n" +msgid " \\sf[+] FUNCNAME show a function's definition\n" +msgstr " \\sf[+] 함수이름 함수 정의 보기\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[+] 뷰이름 뷰 정의 보기\n" -#: help.c:277 +#: help.c:275 +msgid " \\z[Sx] [PATTERN] same as \\dp\n" +msgstr " \\z[Sx] [PATTERN] \\dp 와 같음\n" + +#: 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" @@ -3295,42 +3513,42 @@ 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 정렬되지 않은 출력 모드와 정렬된 출력 모드 전환\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] unaligned 출력에 대해 필드 구분자 표시 또는 설정\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" @@ -3348,32 +3566,32 @@ msgstr "" " unicode_border_linestyle|unicode_column_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" @@ -3382,7 +3600,7 @@ msgstr "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " 새 데이터베이스에 접속 (현재 \"%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" @@ -3390,56 +3608,56 @@ msgstr "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " 새 데이터베이스에 접속 (현재 접속해 있지 않음)\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 ENVVAR 환경 변수값을 psql 변수값으로\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" @@ -3447,21 +3665,88 @@ 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 해당 서버에 출력 자료를 flush함\n" + +#: help.c:342 +msgid "" +" \\flushrequest send request to the server to flush its output " +"buffer\n" +msgstr "" +" \\flushrequest 출력 버퍼를 flush 하기 위해 해당 서버로 요청 보냄\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" -#: 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" @@ -3471,7 +3756,7 @@ msgstr "" " 또는 psql 명령 모드에서는 \\set NAME VALUE\n" "\n" -#: help.c:375 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3479,7 +3764,7 @@ 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" @@ -3489,7 +3774,7 @@ msgstr "" " SQL 키워드 자동완성에서 대소문자 처리\n" " [lower, upper, preserve-lower, preserve-upper]\n" -#: help.c:380 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3497,7 +3782,7 @@ msgstr "" " DBNAME\n" " 현재 접속한 데이터베이스 이름\n" -#: help.c:382 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3507,7 +3792,7 @@ msgstr "" " 입력을 표준 출력으로 보낼 종류\n" " [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" @@ -3517,7 +3802,7 @@ msgstr "" " 지정 되면 psql 내장 명령어의 내부 쿼리를 출력함;\n" " \"noexec\" 값으로 설정하면, 실행되지 않고 쿼리만 보여줌\n" -#: help.c:388 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3525,7 +3810,7 @@ msgstr "" " ENCODING\n" " 현재 클라이언트 인코딩 지정\n" -#: help.c:390 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3533,7 +3818,7 @@ 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 = " @@ -3542,7 +3827,7 @@ 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" @@ -3550,7 +3835,7 @@ msgstr "" " HIDE_TABLEAM\n" " 지정하면 테이블 접근 방법을 보여주지 않음\n" -#: help.c:396 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3558,7 +3843,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " 지정하면 TOAST 압축 종류 보여주지 않음\n" -#: help.c:398 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3566,7 +3851,7 @@ msgstr "" " HISTCONTROL\n" " 명령 내역 처리 방법 [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:400 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3574,7 +3859,7 @@ msgstr "" " HISTFILE\n" " 명령 내역을 저장할 파일 이름\n" -#: help.c:402 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3582,7 +3867,7 @@ msgstr "" " HISTSIZE\n" " 명령 내역 최대 보관 개수\n" -#: help.c:404 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3590,7 +3875,7 @@ msgstr "" " HOST\n" " 현재 접속한 데이터베이스 서버 호스트\n" -#: help.c:406 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3598,7 +3883,7 @@ msgstr "" " IGNOREEOF\n" " 대화형 세션 종료를 위한 EOF 개수\n" -#: help.c:408 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3606,7 +3891,7 @@ msgstr "" " LASTOID\n" " 마지막 영향 받은 OID 값\n" -#: help.c:410 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3617,7 +3902,7 @@ msgstr "" " 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" @@ -3625,7 +3910,7 @@ msgstr "" " ON_ERROR_ROLLBACK\n" " 설정하면 오류 발생시에도 트랜잭션 중지 안함 (savepoint 암묵적 사용)\n" -#: help.c:415 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3633,7 +3918,7 @@ msgstr "" " ON_ERROR_STOP\n" " 배치 작업 시 오류가 발생하면 중지함\n" -#: help.c:417 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3641,7 +3926,7 @@ msgstr "" " PORT\n" " 현재 접속한 서버 포트\n" -#: help.c:419 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3649,7 +3934,7 @@ 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 " @@ -3658,7 +3943,7 @@ msgstr "" " PROMPT2\n" " 아직 구문이 덜 끝난 명령행의 프롬프트\n" -#: help.c:423 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3666,7 +3951,7 @@ msgstr "" " PROMPT3\n" " COPY ... FROM STDIN 작업시 보일 프롬프트\n" -#: help.c:425 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3674,7 +3959,7 @@ 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" @@ -3682,7 +3967,7 @@ msgstr "" " ROW_COUNT\n" " 마지막 쿼리 작업 대상 로우 수, 또는 0\n" -#: help.c:429 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3692,7 +3977,7 @@ msgstr "" " 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" @@ -3700,7 +3985,7 @@ 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" @@ -3708,7 +3993,7 @@ msgstr "" " SHELL_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" @@ -3717,7 +4002,7 @@ msgstr "" " 여러 쿼리가 연속하는 경우(\\;) 모든 쿼리 결과를 출력, off면 마지막 결과" "만\n" -#: help.c:438 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3725,7 +4010,7 @@ 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" @@ -3733,7 +4018,7 @@ msgstr "" " SINGLELINE\n" " 한 줄에 하나의 SQL 명령 실행 (-S 옵션과 같음)\n" -#: help.c:442 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3741,7 +4026,7 @@ msgstr "" " SINGLESTEP\n" " 각 명령을 확인하며 실행 (-s 옵션과 같음)\n" -#: help.c:444 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3749,7 +4034,7 @@ msgstr "" " SQLSTATE\n" " 마지막 쿼리의 SQLSTATE 값, 오류가 없으면 \"00000\"\n" -#: help.c:446 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3757,7 +4042,7 @@ msgstr "" " USER\n" " 현재 접속한 데이터베이스 사용자\n" -#: help.c:448 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3765,7 +4050,7 @@ msgstr "" " VERBOSITY\n" " 오류 출력시 자세히 볼 내용 범위 [default, verbose, terse, sqlstate]\n" -#: help.c:450 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3777,7 +4062,16 @@ msgstr "" " 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" @@ -3785,7 +4079,7 @@ msgstr "" "\n" "출력 설정들:\n" -#: help.c:457 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3795,7 +4089,7 @@ msgstr "" " 또는 psql 명령 모드에서는 \\pset NAME [VALUE]\n" "\n" -#: help.c:459 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -3803,7 +4097,7 @@ msgstr "" " border\n" " 테두리 모양 (숫자)\n" -#: help.c:461 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -3811,7 +4105,7 @@ msgstr "" " columns\n" " 줄바꿈을 위한 너비 지정\n" -#: help.c:463 +#: help.c:483 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3819,7 +4113,7 @@ msgstr "" " expanded (또는 x)\n" " 확장된 출력 전환 [on, off, auto]\n" -#: help.c:465 +#: help.c:485 #, c-format msgid "" " fieldsep\n" @@ -3828,7 +4122,7 @@ msgstr "" " fieldsep\n" " unaligned 출력용 필드 구분자 (초기값 \"%s\"')\n" -#: help.c:468 +#: help.c:488 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3836,7 +4130,7 @@ msgstr "" " fieldsep_zero\n" " unaligned 출력용 필드 구분자를 0 바이트로 지정\n" -#: help.c:470 +#: help.c:490 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3844,7 +4138,7 @@ msgstr "" " footer\n" " 테이블 꼬리말 보이기 전환 [on, off]\n" -#: help.c:472 +#: help.c:492 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3852,7 +4146,7 @@ msgstr "" " format\n" " 출력 양식 지정 [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:474 +#: help.c:494 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -3860,7 +4154,7 @@ msgstr "" " linestyle\n" " 테두리 선 모양 지정 [ascii, old-ascii, unicode]\n" -#: help.c:476 +#: help.c:496 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -3868,7 +4162,7 @@ msgstr "" " null\n" " null 값 출력 방법\n" -#: help.c:478 +#: help.c:498 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of " @@ -3877,7 +4171,7 @@ msgstr "" " numericlocale\n" " 숫자 출력에서 로케일 기반 천자리 분리 문자 활성화 [on, off]\n" -#: help.c:480 +#: help.c:500 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -3885,7 +4179,7 @@ msgstr "" " pager\n" " 외부 페이지 단위 보기 도구 사용 여부 [yes, no, always]\n" -#: help.c:482 +#: help.c:502 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -3893,7 +4187,7 @@ msgstr "" " recordsep\n" " unaligned 출력용 레코드(줄) 구분자\n" -#: help.c:484 +#: help.c:504 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -3901,7 +4195,7 @@ msgstr "" " recordsep_zero\n" " unaligned 출력용 레코드 구분자를 0 바이트로 지정\n" -#: help.c:486 +#: help.c:506 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -3911,7 +4205,7 @@ msgstr "" " html 테이블 태그에 대한 속성이나,\n" " latex-longtable 양식에서 왼쪽 정렬 자료용 칼럼 너비 지정\n" -#: help.c:489 +#: help.c:509 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -3919,7 +4213,7 @@ msgstr "" " title\n" " 테이블 제목 지정\n" -#: help.c:491 +#: help.c:511 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -3927,7 +4221,7 @@ msgstr "" " tuples_only\n" " 지정되면, 자료만 보임\n" -#: help.c:493 +#: help.c:513 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -3939,7 +4233,7 @@ msgstr "" " unicode_header_linestyle\n" " 유니코드 선 종류 [single, double]\n" -#: help.c:497 +#: help.c:517 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -3949,7 +4243,7 @@ msgstr "" " 확장된 출력 화면에서 헤더의 최대 너비 지정\n" " [full, column, page, integer value]\n" -#: help.c:501 +#: help.c:521 msgid "" "\n" "Environment variables:\n" @@ -3957,7 +4251,7 @@ msgstr "" "\n" "OS 환경 변수들:\n" -#: help.c:505 +#: help.c:525 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -3967,7 +4261,7 @@ msgstr "" " 또는 psql 명령 모드에서는 \\setenv NAME [VALUE]\n" "\n" -#: help.c:507 +#: help.c:527 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -3979,7 +4273,7 @@ msgstr "" " 또는 psql 명령 모드에서는 \\setenv NAME [VALUE]\n" "\n" -#: help.c:510 +#: help.c:530 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -3987,7 +4281,7 @@ msgstr "" " COLUMNS\n" " 다음 줄로 넘어갈 칼럼 수\n" -#: help.c:512 +#: help.c:532 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -3995,7 +4289,7 @@ msgstr "" " PGAPPNAME\n" " application_name 변수값으로 사용됨\n" -#: help.c:514 +#: help.c:534 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4003,7 +4297,7 @@ msgstr "" " PGDATABASE\n" " 접속할 데이터베이스 이름\n" -#: help.c:516 +#: help.c:536 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4011,7 +4305,7 @@ msgstr "" " PGHOST\n" " 서버 접속용 호스트 이름\n" -#: help.c:518 +#: help.c:538 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4019,7 +4313,7 @@ msgstr "" " PGPASSFILE\n" " 서버 접속용 비밀번호가 저장된 파일 이름\n" -#: help.c:520 +#: help.c:540 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4027,7 +4321,7 @@ msgstr "" " PGPASSWORD\n" " 서버 접속 비밀번호 (보안에 취약함)\n" -#: help.c:522 +#: help.c:542 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4035,7 +4329,7 @@ msgstr "" " PGPORT\n" " 서버 접속용 포트\n" -#: help.c:524 +#: help.c:544 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4043,7 +4337,7 @@ msgstr "" " PGUSER\n" " 서버 접속용 데이터베이스 사용자 이름\n" -#: help.c:526 +#: help.c:546 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4051,7 +4345,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " \\e, \\ef, \\ev 명령에서 사용할 외부 편집기 경로\n" -#: help.c:528 +#: help.c:548 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4059,7 +4353,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " 외부 편집기 호출 시 사용할 줄번호 선택 옵션\n" -#: help.c:530 +#: help.c:550 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4067,7 +4361,7 @@ msgstr "" " PSQL_HISTORY\n" " 사용자 .psql_history 파일 임의 지정\n" -#: help.c:532 +#: help.c:552 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4075,7 +4369,7 @@ msgstr "" " PAGER\n" " 페이지 단위 보기에서 사용할 프로그램\n" -#: help.c:535 +#: help.c:555 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4083,7 +4377,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " \\watch 명령에서 사용할 외장 페이저 프로그램 이름\n" -#: help.c:538 +#: help.c:558 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4091,7 +4385,7 @@ msgstr "" " PSQLRC\n" " 사용자 .psqlrc 파일의 임의 지정\n" -#: help.c:540 +#: help.c:560 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4099,7 +4393,7 @@ msgstr "" " SHELL\n" " \\! 명령에서 사용할 쉘\n" -#: help.c:542 +#: help.c:562 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4107,11 +4401,11 @@ msgstr "" " TMPDIR\n" " 임시 파일을 사용할 디렉터리\n" -#: help.c:602 +#: help.c:622 msgid "Available help:\n" msgstr "사용 가능한 도움말:\n" -#: help.c:697 +#: help.c:717 #, c-format msgid "" "Command: %s\n" @@ -4129,7 +4423,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:720 +#: help.c:740 #, c-format msgid "" "No help available for \"%s\".\n" @@ -4237,12 +4531,12 @@ msgstr "" msgid "reached EOF without finding closing \\endif(s)" msgstr "\\endif 없이 EOF 도달" -#: 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: 메모리 부족" @@ -4250,2463 +4544,2475 @@ 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:245 -#: sql_help.c:247 sql_help.c:248 sql_help.c:250 sql_help.c:252 sql_help.c:255 -#: sql_help.c:257 sql_help.c:259 sql_help.c:261 sql_help.c:276 sql_help.c:277 -#: sql_help.c:278 sql_help.c:280 sql_help.c:329 sql_help.c:331 sql_help.c:333 -#: sql_help.c:335 sql_help.c:404 sql_help.c:409 sql_help.c:411 sql_help.c:453 -#: sql_help.c:455 sql_help.c:458 sql_help.c:460 sql_help.c:529 sql_help.c:534 -#: sql_help.c:539 sql_help.c:544 sql_help.c:549 sql_help.c:603 sql_help.c:605 -#: sql_help.c:607 sql_help.c:609 sql_help.c:611 sql_help.c:614 sql_help.c:616 -#: sql_help.c:619 sql_help.c:630 sql_help.c:632 sql_help.c:676 sql_help.c:678 -#: sql_help.c:680 sql_help.c:683 sql_help.c:685 sql_help.c:687 sql_help.c:728 -#: sql_help.c:732 sql_help.c:736 sql_help.c:757 sql_help.c:760 sql_help.c:763 -#: sql_help.c:792 sql_help.c:804 sql_help.c:812 sql_help.c:815 sql_help.c:818 -#: sql_help.c:833 sql_help.c:836 sql_help.c:865 sql_help.c:870 sql_help.c:875 -#: sql_help.c:880 sql_help.c:885 sql_help.c:912 sql_help.c:914 sql_help.c:916 -#: sql_help.c:918 sql_help.c:921 sql_help.c:923 sql_help.c:970 sql_help.c:1015 -#: sql_help.c:1020 sql_help.c:1025 sql_help.c:1030 sql_help.c:1035 -#: sql_help.c:1054 sql_help.c:1065 sql_help.c:1067 sql_help.c:1087 -#: sql_help.c:1097 sql_help.c:1098 sql_help.c:1100 sql_help.c:1102 -#: sql_help.c:1114 sql_help.c:1118 sql_help.c:1120 sql_help.c:1132 -#: sql_help.c:1134 sql_help.c:1136 sql_help.c:1138 sql_help.c:1157 -#: sql_help.c:1159 sql_help.c:1163 sql_help.c:1167 sql_help.c:1171 -#: sql_help.c:1174 sql_help.c:1175 sql_help.c:1176 sql_help.c:1179 -#: sql_help.c:1182 sql_help.c:1184 sql_help.c:1324 sql_help.c:1326 -#: sql_help.c:1329 sql_help.c:1332 sql_help.c:1334 sql_help.c:1336 -#: sql_help.c:1339 sql_help.c:1342 sql_help.c:1464 sql_help.c:1466 -#: sql_help.c:1468 sql_help.c:1471 sql_help.c:1492 sql_help.c:1495 -#: sql_help.c:1498 sql_help.c:1501 sql_help.c:1505 sql_help.c:1507 -#: sql_help.c:1509 sql_help.c:1511 sql_help.c:1525 sql_help.c:1528 -#: sql_help.c:1530 sql_help.c:1532 sql_help.c:1542 sql_help.c:1544 -#: sql_help.c:1554 sql_help.c:1556 sql_help.c:1566 sql_help.c:1569 -#: sql_help.c:1592 sql_help.c:1594 sql_help.c:1596 sql_help.c:1598 -#: sql_help.c:1601 sql_help.c:1603 sql_help.c:1606 sql_help.c:1609 -#: sql_help.c:1660 sql_help.c:1703 sql_help.c:1706 sql_help.c:1708 -#: sql_help.c:1710 sql_help.c:1713 sql_help.c:1715 sql_help.c:1717 -#: sql_help.c:1720 sql_help.c:1770 sql_help.c:1786 sql_help.c:2019 -#: sql_help.c:2088 sql_help.c:2107 sql_help.c:2120 sql_help.c:2178 -#: sql_help.c:2186 sql_help.c:2196 sql_help.c:2224 sql_help.c:2257 -#: sql_help.c:2275 sql_help.c:2303 sql_help.c:2414 sql_help.c:2460 -#: sql_help.c:2485 sql_help.c:2508 sql_help.c:2512 sql_help.c:2546 -#: sql_help.c:2566 sql_help.c:2588 sql_help.c:2602 sql_help.c:2623 -#: sql_help.c:2652 sql_help.c:2685 sql_help.c:2708 sql_help.c:2755 -#: sql_help.c:3053 sql_help.c:3066 sql_help.c:3083 sql_help.c:3099 -#: sql_help.c:3139 sql_help.c:3193 sql_help.c:3197 sql_help.c:3199 -#: sql_help.c:3206 sql_help.c:3225 sql_help.c:3252 sql_help.c:3287 -#: sql_help.c:3299 sql_help.c:3308 sql_help.c:3352 sql_help.c:3366 -#: sql_help.c:3394 sql_help.c:3402 sql_help.c:3414 sql_help.c:3424 -#: sql_help.c:3432 sql_help.c:3440 sql_help.c:3448 sql_help.c:3456 -#: sql_help.c:3465 sql_help.c:3476 sql_help.c:3484 sql_help.c:3492 -#: sql_help.c:3500 sql_help.c:3508 sql_help.c:3518 sql_help.c:3527 -#: sql_help.c:3536 sql_help.c:3544 sql_help.c:3554 sql_help.c:3565 -#: sql_help.c:3573 sql_help.c:3582 sql_help.c:3593 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:3682 sql_help.c:3699 sql_help.c:3708 -#: sql_help.c:3716 sql_help.c:3733 sql_help.c:3748 sql_help.c:4061 -#: sql_help.c:4182 sql_help.c:4211 sql_help.c:4227 sql_help.c:4229 -#: sql_help.c:4733 sql_help.c:4781 sql_help.c:4940 +#: 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: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 msgid "name" msgstr "이름" -#: sql_help.c:36 sql_help.c:39 sql_help.c:42 sql_help.c:340 sql_help.c:1863 -#: sql_help.c:3367 sql_help.c:4500 +#: 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 msgid "aggregate_signature" msgstr "집계함수_식별구문" -#: sql_help.c:37 sql_help.c:67 sql_help.c:82 sql_help.c:120 sql_help.c:260 -#: sql_help.c:281 sql_help.c:412 sql_help.c:459 sql_help.c:538 sql_help.c:586 -#: sql_help.c:604 sql_help.c:631 sql_help.c:684 sql_help.c:759 sql_help.c:814 -#: sql_help.c:835 sql_help.c:874 sql_help.c:924 sql_help.c:971 sql_help.c:1024 -#: sql_help.c:1056 sql_help.c:1066 sql_help.c:1101 sql_help.c:1121 -#: sql_help.c:1135 sql_help.c:1185 sql_help.c:1333 sql_help.c:1465 -#: sql_help.c:1508 sql_help.c:1529 sql_help.c:1543 sql_help.c:1555 -#: sql_help.c:1568 sql_help.c:1595 sql_help.c:1661 sql_help.c:1714 +#: 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 msgid "new_name" msgstr "새이름" -#: sql_help.c:40 sql_help.c:69 sql_help.c:84 sql_help.c:122 sql_help.c:258 -#: sql_help.c:279 sql_help.c:410 sql_help.c:495 sql_help.c:543 sql_help.c:633 -#: sql_help.c:642 sql_help.c:707 sql_help.c:731 sql_help.c:762 sql_help.c:817 -#: sql_help.c:879 sql_help.c:922 sql_help.c:1029 sql_help.c:1068 -#: sql_help.c:1099 sql_help.c:1119 sql_help.c:1133 sql_help.c:1183 -#: sql_help.c:1399 sql_help.c:1467 sql_help.c:1510 sql_help.c:1531 -#: sql_help.c:1593 sql_help.c:1709 sql_help.c:3039 +#: 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 msgid "new_owner" msgstr "새사용자" -#: sql_help.c:43 sql_help.c:71 sql_help.c:86 sql_help.c:262 sql_help.c:332 -#: sql_help.c:461 sql_help.c:548 sql_help.c:686 sql_help.c:735 sql_help.c:765 -#: sql_help.c:820 sql_help.c:884 sql_help.c:1034 sql_help.c:1103 -#: sql_help.c:1137 sql_help.c:1335 sql_help.c:1512 sql_help.c:1533 -#: sql_help.c:1545 sql_help.c:1557 sql_help.c:1597 sql_help.c:1716 +#: 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 msgid "new_schema" msgstr "새스키마" -#: sql_help.c:44 sql_help.c:1927 sql_help.c:3368 sql_help.c:4529 +#: sql_help.c:44 sql_help.c:1950 sql_help.c:3415 sql_help.c:4580 msgid "where aggregate_signature is:" msgstr "집계함수_식별구문 사용법:" -#: sql_help.c:45 sql_help.c:48 sql_help.c:51 sql_help.c:350 sql_help.c:363 -#: sql_help.c:367 sql_help.c:383 sql_help.c:386 sql_help.c:389 sql_help.c:530 -#: sql_help.c:535 sql_help.c:540 sql_help.c:545 sql_help.c:550 sql_help.c:866 -#: sql_help.c:871 sql_help.c:876 sql_help.c:881 sql_help.c:886 sql_help.c:1016 -#: sql_help.c:1021 sql_help.c:1026 sql_help.c:1031 sql_help.c:1036 -#: sql_help.c:1881 sql_help.c:1898 sql_help.c:1904 sql_help.c:1928 -#: sql_help.c:1931 sql_help.c:1934 sql_help.c:2089 sql_help.c:2108 -#: sql_help.c:2111 sql_help.c:2415 sql_help.c:2624 sql_help.c:3369 -#: sql_help.c:3372 sql_help.c:3375 sql_help.c:3466 sql_help.c:3555 -#: sql_help.c:3583 sql_help.c:3936 sql_help.c:4399 sql_help.c:4506 -#: sql_help.c:4513 sql_help.c:4519 sql_help.c:4530 sql_help.c:4533 -#: sql_help.c:4536 +#: 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 msgid "argmode" msgstr "인자모드" -#: sql_help.c:46 sql_help.c:49 sql_help.c:52 sql_help.c:351 sql_help.c:364 -#: sql_help.c:368 sql_help.c:384 sql_help.c:387 sql_help.c:390 sql_help.c:531 -#: sql_help.c:536 sql_help.c:541 sql_help.c:546 sql_help.c:551 sql_help.c:867 -#: sql_help.c:872 sql_help.c:877 sql_help.c:882 sql_help.c:887 sql_help.c:1017 -#: sql_help.c:1022 sql_help.c:1027 sql_help.c:1032 sql_help.c:1037 -#: sql_help.c:1882 sql_help.c:1899 sql_help.c:1905 sql_help.c:1929 -#: sql_help.c:1932 sql_help.c:1935 sql_help.c:2090 sql_help.c:2109 -#: sql_help.c:2112 sql_help.c:2416 sql_help.c:2625 sql_help.c:3370 -#: sql_help.c:3373 sql_help.c:3376 sql_help.c:3467 sql_help.c:3556 -#: sql_help.c:3584 sql_help.c:4507 sql_help.c:4514 sql_help.c:4520 -#: sql_help.c:4531 sql_help.c:4534 sql_help.c:4537 +#: 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 msgid "argname" msgstr "인자이름" -#: sql_help.c:47 sql_help.c:50 sql_help.c:53 sql_help.c:352 sql_help.c:365 -#: sql_help.c:369 sql_help.c:385 sql_help.c:388 sql_help.c:391 sql_help.c:532 -#: sql_help.c:537 sql_help.c:542 sql_help.c:547 sql_help.c:552 sql_help.c:868 -#: sql_help.c:873 sql_help.c:878 sql_help.c:883 sql_help.c:888 sql_help.c:1018 -#: sql_help.c:1023 sql_help.c:1028 sql_help.c:1033 sql_help.c:1038 -#: sql_help.c:1883 sql_help.c:1900 sql_help.c:1906 sql_help.c:1930 -#: sql_help.c:1933 sql_help.c:1936 sql_help.c:2417 sql_help.c:2626 -#: sql_help.c:3371 sql_help.c:3374 sql_help.c:3377 sql_help.c:3468 -#: sql_help.c:3557 sql_help.c:3585 sql_help.c:4508 sql_help.c:4515 -#: sql_help.c:4521 sql_help.c:4532 sql_help.c:4535 sql_help.c:4538 +#: 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 msgid "argtype" msgstr "인자자료형" -#: sql_help.c:114 sql_help.c:407 sql_help.c:484 sql_help.c:496 sql_help.c:965 -#: sql_help.c:1116 sql_help.c:1526 sql_help.c:1655 sql_help.c:1687 -#: sql_help.c:1739 sql_help.c:1798 sql_help.c:1987 sql_help.c:1994 -#: sql_help.c:2306 sql_help.c:2356 sql_help.c:2363 sql_help.c:2372 -#: sql_help.c:2461 sql_help.c:2686 sql_help.c:2777 sql_help.c:3068 -#: sql_help.c:3253 sql_help.c:3275 sql_help.c:3415 sql_help.c:3772 -#: sql_help.c:3980 sql_help.c:4226 sql_help.c:4228 sql_help.c:5006 +#: 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 msgid "option" msgstr "옵션" -#: sql_help.c:115 sql_help.c:966 sql_help.c:1656 sql_help.c:2462 -#: sql_help.c:2687 sql_help.c:3254 sql_help.c:3416 +#: 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 msgid "where option can be:" msgstr "옵션 사용법:" -#: sql_help.c:116 sql_help.c:2238 +#: sql_help.c:116 sql_help.c:2263 msgid "allowconn" msgstr "접속허용" -#: sql_help.c:117 sql_help.c:967 sql_help.c:1657 sql_help.c:2239 -#: sql_help.c:2463 sql_help.c:2688 sql_help.c:3255 +#: 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 msgid "connlimit" msgstr "접속제한" -#: sql_help.c:118 sql_help.c:2240 +#: sql_help.c:118 sql_help.c:2265 msgid "istemplate" msgstr "템플릿?" -#: sql_help.c:124 sql_help.c:621 sql_help.c:689 sql_help.c:703 sql_help.c:1338 -#: sql_help.c:1392 sql_help.c:4232 +#: 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 msgid "new_tablespace" msgstr "새테이블스페이스" -#: sql_help.c:127 sql_help.c:130 sql_help.c:132 sql_help.c:558 sql_help.c:560 -#: sql_help.c:561 sql_help.c:891 sql_help.c:893 sql_help.c:894 sql_help.c:974 -#: sql_help.c:978 sql_help.c:981 sql_help.c:1043 sql_help.c:1045 -#: sql_help.c:1046 sql_help.c:1196 sql_help.c:1198 sql_help.c:1664 -#: sql_help.c:1668 sql_help.c:1671 sql_help.c:2427 sql_help.c:2630 -#: sql_help.c:3948 sql_help.c:4250 sql_help.c:4411 sql_help.c:4721 +#: 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 msgid "configuration_parameter" msgstr "환경설정_매개변수" -#: sql_help.c:128 sql_help.c:408 sql_help.c:479 sql_help.c:485 sql_help.c:497 -#: sql_help.c:559 sql_help.c:613 sql_help.c:695 sql_help.c:705 sql_help.c:892 -#: sql_help.c:920 sql_help.c:975 sql_help.c:1044 sql_help.c:1117 -#: sql_help.c:1162 sql_help.c:1166 sql_help.c:1170 sql_help.c:1173 -#: sql_help.c:1178 sql_help.c:1181 sql_help.c:1197 sql_help.c:1371 -#: sql_help.c:1394 sql_help.c:1442 sql_help.c:1450 sql_help.c:1470 -#: sql_help.c:1527 sql_help.c:1611 sql_help.c:1665 sql_help.c:1688 -#: sql_help.c:2307 sql_help.c:2357 sql_help.c:2364 sql_help.c:2373 -#: sql_help.c:2428 sql_help.c:2429 sql_help.c:2493 sql_help.c:2496 -#: sql_help.c:2530 sql_help.c:2631 sql_help.c:2632 sql_help.c:2655 -#: sql_help.c:2778 sql_help.c:2817 sql_help.c:2927 sql_help.c:2940 -#: sql_help.c:2954 sql_help.c:2995 sql_help.c:3003 sql_help.c:3025 -#: sql_help.c:3042 sql_help.c:3069 sql_help.c:3276 sql_help.c:3981 -#: sql_help.c:4722 sql_help.c:4723 sql_help.c:4724 sql_help.c:4725 +#: 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 msgid "value" msgstr "값" -#: sql_help.c:202 +#: sql_help.c:214 msgid "target_role" msgstr "대상롤" -#: sql_help.c:203 sql_help.c:929 sql_help.c:2291 sql_help.c:2660 -#: sql_help.c:2733 sql_help.c:2738 sql_help.c:3911 sql_help.c:3920 -#: sql_help.c:3939 sql_help.c:3951 sql_help.c:4374 sql_help.c:4383 -#: sql_help.c:4402 sql_help.c:4414 +#: 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 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:584 sql_help.c:620 sql_help.c:688 sql_help.c:838 sql_help.c:985 -#: sql_help.c:1337 sql_help.c:1675 sql_help.c:2466 sql_help.c:2467 -#: sql_help.c:2468 sql_help.c:2469 sql_help.c:2470 sql_help.c:2604 -#: sql_help.c:2691 sql_help.c:2692 sql_help.c:2693 sql_help.c:3258 -#: sql_help.c:3259 sql_help.c:3260 sql_help.c:3261 sql_help.c:3262 -#: sql_help.c:3960 sql_help.c:3964 sql_help.c:4423 sql_help.c:4427 -#: sql_help.c:4743 +#: 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 msgid "role_name" msgstr "롤이름" -#: sql_help.c:246 sql_help.c:265 sql_help.c:472 sql_help.c:928 sql_help.c:1353 -#: sql_help.c:1355 sql_help.c:1359 sql_help.c:1409 sql_help.c:1421 -#: sql_help.c:1446 sql_help.c:1705 sql_help.c:2260 sql_help.c:2264 -#: sql_help.c:2376 sql_help.c:2381 sql_help.c:2489 sql_help.c:2659 -#: sql_help.c:2794 sql_help.c:2799 sql_help.c:2801 sql_help.c:2922 -#: sql_help.c:2935 sql_help.c:2949 sql_help.c:2958 sql_help.c:2970 -#: sql_help.c:2999 sql_help.c:4012 sql_help.c:4027 sql_help.c:4029 -#: sql_help.c:4125 sql_help.c:4128 sql_help.c:4130 sql_help.c:4593 -#: sql_help.c:4594 sql_help.c:4603 sql_help.c:4650 sql_help.c:4651 -#: sql_help.c:4652 sql_help.c:4653 sql_help.c:4654 sql_help.c:4655 -#: sql_help.c:4696 sql_help.c:4697 sql_help.c:4702 sql_help.c:4707 -#: sql_help.c:4851 sql_help.c:4852 sql_help.c:4861 sql_help.c:4908 -#: sql_help.c:4909 sql_help.c:4910 sql_help.c:4911 sql_help.c:4912 -#: sql_help.c:4913 sql_help.c:4968 sql_help.c:4970 sql_help.c:5036 -#: sql_help.c:5096 sql_help.c:5097 sql_help.c:5106 sql_help.c:5153 -#: sql_help.c:5154 sql_help.c:5155 sql_help.c:5156 sql_help.c:5157 -#: sql_help.c:5158 +#: 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 msgid "expression" msgstr "표현식" -#: sql_help.c:249 sql_help.c:2261 +#: sql_help.c:263 sql_help.c:2286 msgid "domain_constraint" msgstr "도메인_제약조건" -#: sql_help.c:251 sql_help.c:253 sql_help.c:256 sql_help.c:264 sql_help.c:487 -#: sql_help.c:488 sql_help.c:1330 sql_help.c:1379 sql_help.c:1380 -#: sql_help.c:1381 sql_help.c:1408 sql_help.c:1420 sql_help.c:1437 -#: sql_help.c:1869 sql_help.c:1871 sql_help.c:2263 sql_help.c:2375 -#: sql_help.c:2380 sql_help.c:2957 sql_help.c:2969 sql_help.c:4024 +#: 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 msgid "constraint_name" msgstr "제약조건_이름" -#: sql_help.c:254 sql_help.c:1331 +#: sql_help.c:268 sql_help.c:1348 msgid "new_constraint_name" msgstr "새제약조건_이름" -#: sql_help.c:263 sql_help.c:2262 +#: sql_help.c:277 sql_help.c:2287 msgid "where domain_constraint is:" msgstr "도메인_제약조건 사용법:" -#: sql_help.c:330 sql_help.c:1115 +#: sql_help.c:344 sql_help.c:1130 msgid "new_version" msgstr "새버전" -#: sql_help.c:334 sql_help.c:336 +#: sql_help.c:348 sql_help.c:350 msgid "member_object" msgstr "맴버_객체" -#: sql_help.c:337 +#: sql_help.c:351 msgid "where member_object is:" msgstr "맴버_객체 사용법:" -#: sql_help.c:338 sql_help.c:343 sql_help.c:344 sql_help.c:345 sql_help.c:346 -#: sql_help.c:347 sql_help.c:348 sql_help.c:353 sql_help.c:357 sql_help.c:359 -#: sql_help.c:361 sql_help.c:370 sql_help.c:371 sql_help.c:372 sql_help.c:373 -#: sql_help.c:374 sql_help.c:375 sql_help.c:376 sql_help.c:377 sql_help.c:380 -#: sql_help.c:381 sql_help.c:1861 sql_help.c:1866 sql_help.c:1873 -#: sql_help.c:1874 sql_help.c:1875 sql_help.c:1876 sql_help.c:1877 -#: sql_help.c:1878 sql_help.c:1879 sql_help.c:1884 sql_help.c:1886 -#: sql_help.c:1890 sql_help.c:1892 sql_help.c:1896 sql_help.c:1901 -#: sql_help.c:1902 sql_help.c:1909 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:1917 sql_help.c:1918 sql_help.c:1919 -#: sql_help.c:1924 sql_help.c:1925 sql_help.c:4496 sql_help.c:4501 -#: sql_help.c:4502 sql_help.c:4503 sql_help.c:4504 sql_help.c:4510 -#: sql_help.c:4511 sql_help.c:4516 sql_help.c:4517 sql_help.c:4522 -#: sql_help.c:4523 sql_help.c:4524 sql_help.c:4525 sql_help.c:4526 -#: sql_help.c:4527 +#: 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: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 msgid "object_name" msgstr "객체이름" -#: sql_help.c:339 sql_help.c:1862 sql_help.c:4499 +#: sql_help.c:353 sql_help.c:1885 sql_help.c:4550 msgid "aggregate_name" msgstr "집계함수이름" -#: sql_help.c:341 sql_help.c:1864 sql_help.c:2154 sql_help.c:2158 -#: sql_help.c:2160 sql_help.c:3385 +#: sql_help.c:355 sql_help.c:1887 sql_help.c:2179 sql_help.c:2183 +#: sql_help.c:2185 sql_help.c:3432 msgid "source_type" msgstr "기존자료형" -#: sql_help.c:342 sql_help.c:1865 sql_help.c:2155 sql_help.c:2159 -#: sql_help.c:2161 sql_help.c:3386 +#: sql_help.c:356 sql_help.c:1888 sql_help.c:2180 sql_help.c:2184 +#: sql_help.c:2186 sql_help.c:3433 msgid "target_type" msgstr "대상자료형" -#: sql_help.c:349 sql_help.c:802 sql_help.c:1880 sql_help.c:2156 -#: sql_help.c:2199 sql_help.c:2279 sql_help.c:2547 sql_help.c:2578 -#: sql_help.c:3145 sql_help.c:4398 sql_help.c:4505 sql_help.c:4622 -#: sql_help.c:4626 sql_help.c:4630 sql_help.c:4633 sql_help.c:4880 -#: sql_help.c:4884 sql_help.c:4888 sql_help.c:4891 sql_help.c:5125 -#: sql_help.c:5129 sql_help.c:5133 sql_help.c:5136 +#: 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 msgid "function_name" msgstr "함수이름" -#: sql_help.c:354 sql_help.c:795 sql_help.c:1887 sql_help.c:2571 +#: sql_help.c:368 sql_help.c:809 sql_help.c:1910 sql_help.c:2608 msgid "operator_name" msgstr "연산자이름" -#: sql_help.c:355 sql_help.c:729 sql_help.c:733 sql_help.c:737 sql_help.c:1888 -#: sql_help.c:2548 sql_help.c:3509 +#: 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 msgid "left_type" msgstr "왼쪽인자_자료형" -#: sql_help.c:356 sql_help.c:730 sql_help.c:734 sql_help.c:738 sql_help.c:1889 -#: sql_help.c:2549 sql_help.c:3510 +#: 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 msgid "right_type" msgstr "오른쪽인자_자료형" -#: sql_help.c:358 sql_help.c:360 sql_help.c:758 sql_help.c:761 sql_help.c:764 -#: sql_help.c:793 sql_help.c:805 sql_help.c:813 sql_help.c:816 sql_help.c:819 -#: sql_help.c:1426 sql_help.c:1891 sql_help.c:1893 sql_help.c:2568 -#: sql_help.c:2589 sql_help.c:2975 sql_help.c:3519 sql_help.c:3528 +#: 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 msgid "index_method" msgstr "색인방법" -#: sql_help.c:362 sql_help.c:1897 sql_help.c:4512 +#: sql_help.c:376 sql_help.c:1920 sql_help.c:4563 msgid "procedure_name" msgstr "프로시져_이름" -#: sql_help.c:366 sql_help.c:1903 sql_help.c:3935 sql_help.c:4518 +#: sql_help.c:380 sql_help.c:1926 sql_help.c:3982 sql_help.c:4569 msgid "routine_name" msgstr "루틴_이름" -#: sql_help.c:378 sql_help.c:1398 sql_help.c:1920 sql_help.c:2423 -#: sql_help.c:2629 sql_help.c:2930 sql_help.c:3112 sql_help.c:3690 -#: sql_help.c:3957 sql_help.c:4420 +#: 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 msgid "type_name" msgstr "자료형이름" -#: sql_help.c:379 sql_help.c:1921 sql_help.c:2422 sql_help.c:2628 -#: sql_help.c:3113 sql_help.c:3343 sql_help.c:3691 sql_help.c:3942 -#: sql_help.c:4405 +#: 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 msgid "lang_name" msgstr "언어_이름" -#: sql_help.c:382 +#: sql_help.c:396 msgid "and aggregate_signature is:" msgstr "집계함수_식별구문 사용법:" -#: sql_help.c:405 sql_help.c:2021 sql_help.c:2304 +#: sql_help.c:419 sql_help.c:2046 sql_help.c:2329 msgid "handler_function" msgstr "핸들러_함수" -#: sql_help.c:406 sql_help.c:2305 +#: sql_help.c:420 sql_help.c:2330 msgid "validator_function" msgstr "유효성검사_함수" -#: sql_help.c:454 sql_help.c:533 sql_help.c:677 sql_help.c:869 sql_help.c:1019 -#: sql_help.c:1325 sql_help.c:1602 +#: 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 msgid "action" msgstr "동작" -#: sql_help.c:456 sql_help.c:463 sql_help.c:467 sql_help.c:468 sql_help.c:471 -#: sql_help.c:473 sql_help.c:474 sql_help.c:475 sql_help.c:477 sql_help.c:480 -#: sql_help.c:482 sql_help.c:483 sql_help.c:681 sql_help.c:691 sql_help.c:693 -#: sql_help.c:696 sql_help.c:698 sql_help.c:699 sql_help.c:927 sql_help.c:1096 -#: sql_help.c:1327 sql_help.c:1345 sql_help.c:1349 sql_help.c:1350 -#: sql_help.c:1354 sql_help.c:1356 sql_help.c:1357 sql_help.c:1358 -#: sql_help.c:1360 sql_help.c:1361 sql_help.c:1363 sql_help.c:1366 -#: sql_help.c:1367 sql_help.c:1369 sql_help.c:1372 sql_help.c:1374 -#: sql_help.c:1375 sql_help.c:1422 sql_help.c:1424 sql_help.c:1431 -#: sql_help.c:1440 sql_help.c:1445 sql_help.c:1452 sql_help.c:1453 -#: sql_help.c:1704 sql_help.c:1707 sql_help.c:1711 sql_help.c:1747 -#: sql_help.c:1868 sql_help.c:1984 sql_help.c:1990 sql_help.c:2004 -#: sql_help.c:2005 sql_help.c:2006 sql_help.c:2354 sql_help.c:2367 -#: sql_help.c:2420 sql_help.c:2488 sql_help.c:2494 sql_help.c:2527 -#: sql_help.c:2658 sql_help.c:2763 sql_help.c:2798 sql_help.c:2800 -#: sql_help.c:2912 sql_help.c:2921 sql_help.c:2931 sql_help.c:2934 -#: sql_help.c:2944 sql_help.c:2948 sql_help.c:2971 sql_help.c:2973 -#: sql_help.c:2980 sql_help.c:2993 sql_help.c:2998 sql_help.c:3005 -#: sql_help.c:3006 sql_help.c:3022 sql_help.c:3148 sql_help.c:3288 -#: sql_help.c:3914 sql_help.c:3915 sql_help.c:4011 sql_help.c:4026 -#: sql_help.c:4028 sql_help.c:4030 sql_help.c:4124 sql_help.c:4127 -#: sql_help.c:4129 sql_help.c:4131 sql_help.c:4377 sql_help.c:4378 -#: sql_help.c:4498 sql_help.c:4659 sql_help.c:4666 sql_help.c:4668 -#: sql_help.c:4917 sql_help.c:4924 sql_help.c:4926 sql_help.c:4967 -#: sql_help.c:4969 sql_help.c:4971 sql_help.c:5024 sql_help.c:5162 -#: sql_help.c:5169 sql_help.c:5171 +#: 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 msgid "column_name" msgstr "칼럼이름" -#: sql_help.c:457 sql_help.c:682 sql_help.c:1328 sql_help.c:1712 +#: sql_help.c:471 sql_help.c:696 sql_help.c:1345 sql_help.c:1735 msgid "new_column_name" msgstr "새칼럼이름" -#: sql_help.c:462 sql_help.c:554 sql_help.c:690 sql_help.c:890 sql_help.c:1040 -#: sql_help.c:1344 sql_help.c:1612 +#: 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 msgid "where action is one of:" msgstr "동작 사용법:" -#: sql_help.c:464 sql_help.c:469 sql_help.c:1088 sql_help.c:1346 -#: sql_help.c:1351 sql_help.c:1614 sql_help.c:1618 sql_help.c:2258 -#: sql_help.c:2355 sql_help.c:2567 sql_help.c:2756 sql_help.c:2913 -#: sql_help.c:3195 sql_help.c:4183 +#: 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 msgid "data_type" msgstr "자료형" -#: sql_help.c:465 sql_help.c:470 sql_help.c:1347 sql_help.c:1352 -#: sql_help.c:1447 sql_help.c:1615 sql_help.c:1619 sql_help.c:2259 -#: sql_help.c:2358 sql_help.c:2490 sql_help.c:2915 sql_help.c:2923 -#: sql_help.c:2936 sql_help.c:2950 sql_help.c:3000 sql_help.c:3196 -#: sql_help.c:3202 sql_help.c:4021 +#: 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 msgid "collation" msgstr "collation" -#: sql_help.c:466 sql_help.c:1348 sql_help.c:2359 sql_help.c:2368 -#: sql_help.c:2916 sql_help.c:2932 sql_help.c:2945 +#: 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 msgid "column_constraint" msgstr "칼럼_제약조건" -#: sql_help.c:476 sql_help.c:618 sql_help.c:692 sql_help.c:1368 sql_help.c:5018 +#: sql_help.c:490 sql_help.c:632 sql_help.c:706 sql_help.c:1385 sql_help.c:5071 msgid "integer" msgstr "정수" -#: sql_help.c:478 sql_help.c:481 sql_help.c:694 sql_help.c:697 sql_help.c:1370 -#: sql_help.c:1373 +#: sql_help.c:492 sql_help.c:495 sql_help.c:708 sql_help.c:711 sql_help.c:1387 +#: sql_help.c:1390 msgid "attribute_option" msgstr "속성_옵션" -#: sql_help.c:486 sql_help.c:1377 sql_help.c:2360 sql_help.c:2369 -#: sql_help.c:2917 sql_help.c:2933 sql_help.c:2946 +#: 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 msgid "table_constraint" msgstr "테이블_제약조건" -#: sql_help.c:489 sql_help.c:490 sql_help.c:491 sql_help.c:492 sql_help.c:1382 -#: sql_help.c:1383 sql_help.c:1384 sql_help.c:1385 sql_help.c:1922 +#: 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 msgid "trigger_name" msgstr "트리거이름" -#: sql_help.c:493 sql_help.c:494 sql_help.c:1396 sql_help.c:1397 -#: sql_help.c:2361 sql_help.c:2366 sql_help.c:2920 sql_help.c:2943 +#: 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 msgid "parent_table" msgstr "상위_테이블" -#: sql_help.c:553 sql_help.c:610 sql_help.c:679 sql_help.c:889 sql_help.c:1039 -#: sql_help.c:1571 sql_help.c:2290 +#: 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 msgid "extension_name" msgstr "확장모듈이름" -#: sql_help.c:555 sql_help.c:1041 sql_help.c:2424 +#: sql_help.c:569 sql_help.c:1055 sql_help.c:2461 msgid "execution_cost" msgstr "실행비용" -#: sql_help.c:556 sql_help.c:1042 sql_help.c:2425 +#: sql_help.c:570 sql_help.c:1056 sql_help.c:2462 msgid "result_rows" msgstr "반환자료수" -#: sql_help.c:557 sql_help.c:2426 +#: sql_help.c:571 sql_help.c:2463 msgid "support_function" msgstr "지원_함수" -#: sql_help.c:579 sql_help.c:581 sql_help.c:964 sql_help.c:972 sql_help.c:976 -#: sql_help.c:979 sql_help.c:982 sql_help.c:1654 sql_help.c:1662 -#: sql_help.c:1666 sql_help.c:1669 sql_help.c:1672 sql_help.c:2734 -#: sql_help.c:2736 sql_help.c:2739 sql_help.c:2740 sql_help.c:3912 -#: sql_help.c:3913 sql_help.c:3917 sql_help.c:3918 sql_help.c:3921 -#: sql_help.c:3922 sql_help.c:3924 sql_help.c:3925 sql_help.c:3927 -#: sql_help.c:3928 sql_help.c:3930 sql_help.c:3931 sql_help.c:3933 -#: sql_help.c:3934 sql_help.c:3940 sql_help.c:3941 sql_help.c:3943 -#: sql_help.c:3944 sql_help.c:3946 sql_help.c:3947 sql_help.c:3949 -#: sql_help.c:3950 sql_help.c:3952 sql_help.c:3953 sql_help.c:3955 -#: sql_help.c:3956 sql_help.c:3958 sql_help.c:3959 sql_help.c:3961 -#: sql_help.c:3962 sql_help.c:4375 sql_help.c:4376 sql_help.c:4380 -#: sql_help.c:4381 sql_help.c:4384 sql_help.c:4385 sql_help.c:4387 -#: sql_help.c:4388 sql_help.c:4390 sql_help.c:4391 sql_help.c:4393 -#: sql_help.c:4394 sql_help.c:4396 sql_help.c:4397 sql_help.c:4403 -#: sql_help.c:4404 sql_help.c:4406 sql_help.c:4407 sql_help.c:4409 -#: sql_help.c:4410 sql_help.c:4412 sql_help.c:4413 sql_help.c:4415 -#: sql_help.c:4416 sql_help.c:4418 sql_help.c:4419 sql_help.c:4421 -#: sql_help.c:4422 sql_help.c:4424 sql_help.c:4425 +#: 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 msgid "role_specification" msgstr "롤_명세" -#: sql_help.c:580 sql_help.c:582 sql_help.c:1685 sql_help.c:2225 -#: sql_help.c:2742 sql_help.c:3273 sql_help.c:3724 sql_help.c:4753 +#: 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 msgid "user_name" msgstr "사용자이름" -#: sql_help.c:583 sql_help.c:984 sql_help.c:1674 sql_help.c:2741 -#: sql_help.c:3963 sql_help.c:4426 +#: sql_help.c:597 sql_help.c:998 sql_help.c:1697 sql_help.c:2778 +#: sql_help.c:4010 sql_help.c:4477 msgid "where role_specification can be:" msgstr "롤_명세 사용법:" -#: sql_help.c:585 +#: sql_help.c:599 msgid "group_name" msgstr "그룹이름" -#: sql_help.c:606 sql_help.c:1443 sql_help.c:2237 sql_help.c:2497 -#: sql_help.c:2531 sql_help.c:2928 sql_help.c:2941 sql_help.c:2955 -#: sql_help.c:2996 sql_help.c:3026 sql_help.c:3038 sql_help.c:3954 -#: sql_help.c:4417 +#: 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 msgid "tablespace_name" msgstr "테이블스페이스이름" -#: sql_help.c:608 sql_help.c:701 sql_help.c:1390 sql_help.c:1400 -#: sql_help.c:1438 sql_help.c:1800 +#: sql_help.c:622 sql_help.c:715 sql_help.c:1408 sql_help.c:1418 +#: sql_help.c:1461 sql_help.c:1823 msgid "index_name" msgstr "인덱스이름" -#: sql_help.c:612 sql_help.c:615 sql_help.c:704 sql_help.c:706 sql_help.c:1393 -#: sql_help.c:1395 sql_help.c:1441 sql_help.c:2495 sql_help.c:2529 -#: sql_help.c:2926 sql_help.c:2939 sql_help.c:2953 sql_help.c:2994 -#: sql_help.c:3024 +#: 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 msgid "storage_parameter" msgstr "스토리지_매개변수" -#: sql_help.c:617 +#: sql_help.c:631 msgid "column_number" msgstr "칼럼번호" -#: sql_help.c:641 sql_help.c:1885 sql_help.c:4509 +#: sql_help.c:655 sql_help.c:1908 sql_help.c:4560 msgid "large_object_oid" msgstr "대형_객체_oid" -#: sql_help.c:700 sql_help.c:1376 sql_help.c:2914 +#: sql_help.c:714 sql_help.c:1393 sql_help.c:2954 msgid "compression_method" msgstr "압축_방법" -#: sql_help.c:702 sql_help.c:1391 +#: sql_help.c:716 sql_help.c:1409 msgid "new_access_method" msgstr "새_접근_방법" -#: sql_help.c:739 sql_help.c:2552 +#: sql_help.c:753 sql_help.c:2589 msgid "res_proc" msgstr "res_proc" -#: sql_help.c:740 sql_help.c:2553 +#: sql_help.c:754 sql_help.c:2590 msgid "join_proc" msgstr "join_proc" -#: sql_help.c:741 sql_help.c:2550 +#: sql_help.c:755 sql_help.c:2587 msgid "com_op" msgstr "com_op" -#: sql_help.c:742 sql_help.c:2551 +#: sql_help.c:756 sql_help.c:2588 msgid "neg_op" msgstr "neg_op" -#: sql_help.c:794 sql_help.c:806 sql_help.c:2570 +#: sql_help.c:808 sql_help.c:820 sql_help.c:2607 msgid "strategy_number" msgstr "전략_번호" -#: sql_help.c:796 sql_help.c:797 sql_help.c:800 sql_help.c:801 sql_help.c:807 -#: sql_help.c:808 sql_help.c:810 sql_help.c:811 sql_help.c:2572 sql_help.c:2573 -#: sql_help.c:2576 sql_help.c:2577 +#: 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 msgid "op_type" msgstr "연산자자료형" -#: sql_help.c:798 sql_help.c:2574 +#: sql_help.c:812 sql_help.c:2611 msgid "sort_family_name" msgstr "정렬_가족_이름" -#: sql_help.c:799 sql_help.c:809 sql_help.c:2575 +#: sql_help.c:813 sql_help.c:823 sql_help.c:2612 msgid "support_number" msgstr "지원_번호" -#: sql_help.c:803 sql_help.c:2157 sql_help.c:2579 sql_help.c:3115 -#: sql_help.c:3117 +#: sql_help.c:817 sql_help.c:2182 sql_help.c:2616 sql_help.c:3160 +#: sql_help.c:3162 msgid "argument_type" msgstr "인자자료형" -#: sql_help.c:834 sql_help.c:837 sql_help.c:926 sql_help.c:1055 sql_help.c:1095 -#: sql_help.c:1567 sql_help.c:1570 sql_help.c:1746 sql_help.c:1799 -#: sql_help.c:1870 sql_help.c:1895 sql_help.c:1908 sql_help.c:1923 -#: sql_help.c:1983 sql_help.c:1989 sql_help.c:2353 sql_help.c:2365 -#: sql_help.c:2486 sql_help.c:2526 sql_help.c:2603 sql_help.c:2657 -#: sql_help.c:2710 sql_help.c:2762 sql_help.c:2795 sql_help.c:2802 -#: sql_help.c:2911 sql_help.c:2929 sql_help.c:2942 sql_help.c:3021 -#: sql_help.c:3141 sql_help.c:3322 sql_help.c:3545 sql_help.c:3594 -#: sql_help.c:3700 sql_help.c:3910 sql_help.c:3916 sql_help.c:3977 -#: sql_help.c:4009 sql_help.c:4373 sql_help.c:4379 sql_help.c:4497 -#: sql_help.c:4610 sql_help.c:4673 sql_help.c:4712 sql_help.c:4868 -#: sql_help.c:4931 sql_help.c:4965 sql_help.c:5023 sql_help.c:5113 -#: sql_help.c:5176 +#: 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 msgid "table_name" msgstr "테이블_이름" -#: sql_help.c:839 sql_help.c:2605 +#: sql_help.c:853 sql_help.c:2642 msgid "using_expression" msgstr "using_expression" -#: sql_help.c:840 sql_help.c:2606 +#: sql_help.c:854 sql_help.c:2643 msgid "check_expression" msgstr "체크_표현식" -#: sql_help.c:913 sql_help.c:915 sql_help.c:917 sql_help.c:2653 +#: sql_help.c:927 sql_help.c:929 sql_help.c:931 sql_help.c:2690 msgid "publication_object" msgstr "발행_객체" -#: sql_help.c:919 sql_help.c:2654 +#: sql_help.c:933 sql_help.c:2691 msgid "publication_parameter" msgstr "발행_매개변수" -#: sql_help.c:925 sql_help.c:2656 +#: sql_help.c:939 sql_help.c:2693 msgid "where publication_object is one of:" msgstr "발행_객체 사용법:" -#: sql_help.c:968 sql_help.c:1658 sql_help.c:2464 sql_help.c:2689 -#: sql_help.c:3256 +#: sql_help.c:982 sql_help.c:1681 sql_help.c:2501 sql_help.c:2726 +#: sql_help.c:3301 msgid "password" msgstr "암호" -#: sql_help.c:969 sql_help.c:1659 sql_help.c:2465 sql_help.c:2690 -#: sql_help.c:3257 +#: sql_help.c:983 sql_help.c:1682 sql_help.c:2502 sql_help.c:2727 +#: sql_help.c:3302 msgid "timestamp" msgstr "타임스탬프" -#: sql_help.c:973 sql_help.c:977 sql_help.c:980 sql_help.c:983 sql_help.c:1663 -#: sql_help.c:1667 sql_help.c:1670 sql_help.c:1673 sql_help.c:3923 -#: sql_help.c:4386 +#: 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 msgid "database_name" msgstr "데이터베이스_이름" -#: sql_help.c:1089 sql_help.c:2757 +#: sql_help.c:1104 sql_help.c:2796 msgid "increment" msgstr "증가값" -#: sql_help.c:1090 sql_help.c:2758 +#: sql_help.c:1105 sql_help.c:2797 msgid "minvalue" msgstr "최소값" -#: sql_help.c:1091 sql_help.c:2759 +#: sql_help.c:1106 sql_help.c:2798 msgid "maxvalue" msgstr "최대값" -#: sql_help.c:1092 sql_help.c:2760 sql_help.c:4606 sql_help.c:4710 -#: sql_help.c:4864 sql_help.c:5040 sql_help.c:5109 +#: 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 msgid "start" msgstr "시작" -#: sql_help.c:1093 sql_help.c:1365 +#: sql_help.c:1108 sql_help.c:1382 msgid "restart" msgstr "재시작" -#: sql_help.c:1094 sql_help.c:2761 +#: sql_help.c:1109 sql_help.c:2800 msgid "cache" msgstr "캐쉬" -#: sql_help.c:1139 +#: sql_help.c:1154 msgid "new_target" msgstr "새대상" -#: sql_help.c:1158 sql_help.c:2814 +#: sql_help.c:1173 sql_help.c:2853 msgid "conninfo" msgstr "접속정보" -#: sql_help.c:1160 sql_help.c:1164 sql_help.c:1168 sql_help.c:2815 +#: sql_help.c:1175 sql_help.c:1179 sql_help.c:1183 sql_help.c:2854 msgid "publication_name" msgstr "발행_이름" -#: sql_help.c:1161 sql_help.c:1165 sql_help.c:1169 +#: sql_help.c:1176 sql_help.c:1180 sql_help.c:1184 msgid "publication_option" msgstr "발행_옵션" -#: sql_help.c:1172 +#: sql_help.c:1187 msgid "refresh_option" msgstr "새로고침_옵션" -#: sql_help.c:1177 sql_help.c:2816 +#: sql_help.c:1192 sql_help.c:2855 msgid "subscription_parameter" msgstr "구독_매개변수" -#: sql_help.c:1180 +#: sql_help.c:1195 msgid "skip_option" msgstr "skip_option" -#: sql_help.c:1340 sql_help.c:1343 +#: sql_help.c:1357 sql_help.c:1360 msgid "partition_name" msgstr "파티션_이름" -#: sql_help.c:1341 sql_help.c:2370 sql_help.c:2947 +#: sql_help.c:1358 sql_help.c:2405 sql_help.c:2987 msgid "partition_bound_spec" msgstr "파티션_범위_정의" -#: sql_help.c:1362 sql_help.c:1412 sql_help.c:2961 +#: sql_help.c:1379 sql_help.c:1430 sql_help.c:3001 msgid "sequence_options" msgstr "시퀀스_옵션" -#: sql_help.c:1364 +#: sql_help.c:1381 msgid "sequence_option" msgstr "시퀀스_옵션" -#: sql_help.c:1378 +#: sql_help.c:1395 msgid "table_constraint_using_index" msgstr "색인을_사용하는_테이블_제약조건" -#: sql_help.c:1386 sql_help.c:1387 sql_help.c:1388 sql_help.c:1389 +#: sql_help.c:1404 sql_help.c:1405 sql_help.c:1406 sql_help.c:1407 msgid "rewrite_rule_name" msgstr "rewrite_룰_이름" -#: sql_help.c:1401 sql_help.c:2382 sql_help.c:2986 +#: sql_help.c:1419 sql_help.c:2419 sql_help.c:3031 msgid "and partition_bound_spec is:" msgstr "파티션_범위_정의 사용법:" -#: sql_help.c:1402 sql_help.c:1403 sql_help.c:1404 sql_help.c:2383 -#: sql_help.c:2384 sql_help.c:2385 sql_help.c:2987 sql_help.c:2988 -#: sql_help.c:2989 +#: 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 msgid "partition_bound_expr" msgstr "파티션_범위_표현식" -#: sql_help.c:1405 sql_help.c:1406 sql_help.c:2386 sql_help.c:2387 -#: sql_help.c:2990 sql_help.c:2991 +#: sql_help.c:1423 sql_help.c:1424 sql_help.c:2423 sql_help.c:2424 +#: sql_help.c:3035 sql_help.c:3036 msgid "numeric_literal" msgstr "숫자" -#: sql_help.c:1407 +#: sql_help.c:1425 msgid "and column_constraint is:" msgstr "칼럼_제약조건 사용법:" -#: sql_help.c:1410 sql_help.c:2377 sql_help.c:2418 sql_help.c:2627 -#: sql_help.c:2959 +#: sql_help.c:1428 sql_help.c:2412 sql_help.c:2455 sql_help.c:2664 +#: sql_help.c:2999 msgid "default_expr" msgstr "초기값_표현식" -#: sql_help.c:1411 sql_help.c:2378 sql_help.c:2960 +#: sql_help.c:1429 sql_help.c:2413 sql_help.c:3000 msgid "generation_expr" msgstr "생성_표현식" -#: sql_help.c:1413 sql_help.c:1414 sql_help.c:1423 sql_help.c:1425 -#: sql_help.c:1429 sql_help.c:2962 sql_help.c:2963 sql_help.c:2972 -#: sql_help.c:2974 sql_help.c:2978 +#: 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 msgid "index_parameters" msgstr "색인_매개변수" -#: sql_help.c:1415 sql_help.c:1432 sql_help.c:2964 sql_help.c:2981 +#: sql_help.c:1433 sql_help.c:1454 sql_help.c:3004 sql_help.c:3025 msgid "reftable" msgstr "참조테이블" -#: sql_help.c:1416 sql_help.c:1433 sql_help.c:2965 sql_help.c:2982 +#: sql_help.c:1434 sql_help.c:1455 sql_help.c:1456 sql_help.c:3005 +#: sql_help.c:3026 sql_help.c:3027 msgid "refcolumn" msgstr "참조칼럼" -#: sql_help.c:1417 sql_help.c:1418 sql_help.c:1434 sql_help.c:1435 -#: sql_help.c:2966 sql_help.c:2967 sql_help.c:2983 sql_help.c:2984 +#: 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 msgid "referential_action" msgstr "참조_방식" -#: sql_help.c:1419 sql_help.c:2379 sql_help.c:2968 +#: sql_help.c:1437 sql_help.c:2414 sql_help.c:3008 msgid "and table_constraint is:" msgstr "테이블_제약조건 사용법:" -#: sql_help.c:1427 sql_help.c:2976 +#: sql_help.c:1448 sql_help.c:3019 msgid "exclude_element" msgstr "exclude_요소" -#: sql_help.c:1428 sql_help.c:2977 sql_help.c:4604 sql_help.c:4708 -#: sql_help.c:4862 sql_help.c:5038 sql_help.c:5107 +#: 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 msgid "operator" msgstr "연산자" -#: sql_help.c:1430 sql_help.c:2498 sql_help.c:2979 +#: sql_help.c:1451 sql_help.c:2535 sql_help.c:3022 msgid "predicate" msgstr "범위한정구문" -#: sql_help.c:1436 +#: sql_help.c:1459 msgid "and table_constraint_using_index is:" msgstr "색인을_사용하는_테이블_제약조건 사용법:" -#: sql_help.c:1439 sql_help.c:2992 +#: sql_help.c:1462 sql_help.c:3037 msgid "index_parameters in UNIQUE, PRIMARY KEY, and EXCLUDE constraints are:" msgstr "UNIQUE, PRIMARY KEY, EXCLUDE 제약조건에서 쓰는 색인_매개변수 사용법:" -#: sql_help.c:1444 sql_help.c:2997 +#: sql_help.c:1467 sql_help.c:3042 msgid "exclude_element in an EXCLUDE constraint is:" msgstr "EXCLUDE 제약조건에서 쓰는 exclude_요소 사용법:" -#: sql_help.c:1448 sql_help.c:2491 sql_help.c:2924 sql_help.c:2937 -#: sql_help.c:2951 sql_help.c:3001 sql_help.c:4022 +#: 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 msgid "opclass" msgstr "연산자클래스" -#: sql_help.c:1449 sql_help.c:2492 sql_help.c:3002 +#: sql_help.c:1472 sql_help.c:2529 sql_help.c:3047 msgid "opclass_parameter" msgstr "opclass_매개변수" -#: sql_help.c:1451 sql_help.c:3004 +#: sql_help.c:1474 sql_help.c:3049 msgid "referential_action in a FOREIGN KEY/REFERENCES constraint is:" msgstr "FOREIGN KEY/REFERENCES 제약조건에서 쓰는 참조_방식 사용법:" -#: sql_help.c:1469 sql_help.c:1472 sql_help.c:3041 +#: sql_help.c:1492 sql_help.c:1495 sql_help.c:3086 msgid "tablespace_option" msgstr "테이블스페이스_옵션" -#: sql_help.c:1493 sql_help.c:1496 sql_help.c:1502 sql_help.c:1506 +#: sql_help.c:1516 sql_help.c:1519 sql_help.c:1525 sql_help.c:1529 msgid "token_type" msgstr "토큰_종류" -#: sql_help.c:1494 sql_help.c:1497 +#: sql_help.c:1517 sql_help.c:1520 msgid "dictionary_name" msgstr "사전이름" -#: sql_help.c:1499 sql_help.c:1503 +#: sql_help.c:1522 sql_help.c:1526 msgid "old_dictionary" msgstr "옛사전" -#: sql_help.c:1500 sql_help.c:1504 +#: sql_help.c:1523 sql_help.c:1527 msgid "new_dictionary" msgstr "새사전" -#: sql_help.c:1599 sql_help.c:1613 sql_help.c:1616 sql_help.c:1617 -#: sql_help.c:3194 +#: sql_help.c:1622 sql_help.c:1636 sql_help.c:1639 sql_help.c:1640 +#: sql_help.c:3239 msgid "attribute_name" msgstr "속성이름" -#: sql_help.c:1600 +#: sql_help.c:1623 msgid "new_attribute_name" msgstr "새속성이름" -#: sql_help.c:1604 sql_help.c:1608 +#: sql_help.c:1627 sql_help.c:1631 msgid "new_enum_value" msgstr "새_enum_값" -#: sql_help.c:1605 +#: sql_help.c:1628 msgid "neighbor_enum_value" msgstr "옆_enum_값" -#: sql_help.c:1607 +#: sql_help.c:1630 msgid "existing_enum_value" msgstr "기존_enum_값" -#: sql_help.c:1610 +#: sql_help.c:1633 msgid "property" msgstr "속성" -#: sql_help.c:1686 sql_help.c:2362 sql_help.c:2371 sql_help.c:2773 -#: sql_help.c:3274 sql_help.c:3725 sql_help.c:3932 sql_help.c:3978 -#: sql_help.c:4395 +#: 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 msgid "server_name" msgstr "서버이름" -#: sql_help.c:1718 sql_help.c:1721 sql_help.c:3289 +#: sql_help.c:1741 sql_help.c:1744 sql_help.c:3334 msgid "view_option_name" msgstr "뷰_옵션이름" -#: sql_help.c:1719 sql_help.c:3290 +#: sql_help.c:1742 sql_help.c:3335 msgid "view_option_value" msgstr "뷰_옵션_값" -#: sql_help.c:1740 sql_help.c:5007 +#: sql_help.c:1763 sql_help.c:5060 msgid "table_and_columns" msgstr "테이블과_칼럼" -#: sql_help.c:1741 sql_help.c:1801 sql_help.c:1995 sql_help.c:3774 -#: sql_help.c:4230 sql_help.c:5008 +#: sql_help.c:1764 sql_help.c:1824 sql_help.c:2019 sql_help.c:3821 +#: sql_help.c:4281 sql_help.c:5061 msgid "where option can be one of:" msgstr "옵션 사용법:" -#: sql_help.c:1742 sql_help.c:1743 sql_help.c:1802 sql_help.c:1997 -#: sql_help.c:2001 sql_help.c:2183 sql_help.c:3775 sql_help.c:3776 -#: sql_help.c:3777 sql_help.c:3778 sql_help.c:3779 sql_help.c:3780 -#: sql_help.c:3781 sql_help.c:3782 sql_help.c:3783 sql_help.c:3784 -#: sql_help.c:4231 sql_help.c:4233 sql_help.c:5009 sql_help.c:5010 -#: sql_help.c:5011 sql_help.c:5012 sql_help.c:5013 sql_help.c:5014 -#: sql_help.c:5015 sql_help.c:5016 sql_help.c:5017 sql_help.c:5019 -#: sql_help.c:5020 +#: 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 msgid "boolean" msgstr "불린" -#: sql_help.c:1744 sql_help.c:5021 +#: sql_help.c:1767 sql_help.c:5074 msgid "size" msgstr "크기" -#: sql_help.c:1745 sql_help.c:5022 +#: sql_help.c:1768 sql_help.c:5075 msgid "and table_and_columns is:" msgstr "테이블과_칼럼 사용법:" -#: sql_help.c:1761 sql_help.c:4769 sql_help.c:4771 sql_help.c:4795 +#: sql_help.c:1784 sql_help.c:4820 sql_help.c:4822 sql_help.c:4846 msgid "transaction_mode" msgstr "트랜잭션모드" -#: sql_help.c:1762 sql_help.c:4772 sql_help.c:4796 +#: sql_help.c:1785 sql_help.c:4823 sql_help.c:4847 msgid "where transaction_mode is one of:" msgstr "트랜잭션모드 사용법:" -#: sql_help.c:1771 sql_help.c:4614 sql_help.c:4623 sql_help.c:4627 -#: sql_help.c:4631 sql_help.c:4634 sql_help.c:4872 sql_help.c:4881 -#: sql_help.c:4885 sql_help.c:4889 sql_help.c:4892 sql_help.c:5117 -#: sql_help.c:5126 sql_help.c:5130 sql_help.c:5134 sql_help.c:5137 +#: 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 msgid "argument" msgstr "인자" -#: sql_help.c:1867 +#: sql_help.c:1890 msgid "relation_name" msgstr "릴레이션이름" -#: sql_help.c:1872 sql_help.c:3926 sql_help.c:4389 +#: sql_help.c:1895 sql_help.c:3973 sql_help.c:4440 msgid "domain_name" msgstr "도메인이름" -#: sql_help.c:1894 +#: sql_help.c:1917 msgid "policy_name" msgstr "정책이름" -#: sql_help.c:1907 +#: sql_help.c:1930 msgid "rule_name" msgstr "룰이름" -#: sql_help.c:1926 sql_help.c:4528 +#: sql_help.c:1949 sql_help.c:4579 msgid "string_literal" msgstr "문자열_리터럴" -#: sql_help.c:1951 sql_help.c:4192 sql_help.c:4442 +#: sql_help.c:1974 sql_help.c:4243 sql_help.c:4493 msgid "transaction_id" msgstr "트랜잭션_id" -#: sql_help.c:1985 sql_help.c:1992 sql_help.c:4048 +#: sql_help.c:2009 sql_help.c:2016 sql_help.c:4097 msgid "filename" msgstr "파일이름" -#: sql_help.c:1986 sql_help.c:1993 sql_help.c:2712 sql_help.c:2713 -#: sql_help.c:2714 +#: sql_help.c:2010 sql_help.c:2017 sql_help.c:2749 sql_help.c:2750 +#: sql_help.c:2751 msgid "command" msgstr "명령어" -#: sql_help.c:1988 sql_help.c:2711 sql_help.c:3144 sql_help.c:3325 -#: sql_help.c:4032 sql_help.c:4115 sql_help.c:4118 sql_help.c:4121 -#: 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:4974 sql_help.c:5100 -#: sql_help.c:5102 +#: 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 msgid "condition" msgstr "조건" -#: sql_help.c:1991 sql_help.c:2532 sql_help.c:3027 sql_help.c:3291 -#: sql_help.c:3309 sql_help.c:4013 +#: sql_help.c:2015 sql_help.c:2569 sql_help.c:3072 sql_help.c:3336 +#: sql_help.c:3354 sql_help.c:4061 msgid "query" msgstr "쿼리문" -#: sql_help.c:1996 +#: sql_help.c:2020 msgid "format_name" msgstr "입출력양식이름" -#: sql_help.c:1998 +#: sql_help.c:2022 msgid "delimiter_character" msgstr "구분문자" -#: sql_help.c:1999 +#: sql_help.c:2023 msgid "null_string" msgstr "널문자열" -#: sql_help.c:2000 +#: sql_help.c:2024 msgid "default_string" msgstr "기본_문자열" -#: sql_help.c:2002 +#: sql_help.c:2026 msgid "quote_character" msgstr "인용부호" -#: sql_help.c:2003 +#: sql_help.c:2027 msgid "escape_character" msgstr "이스케이프 문자" -#: sql_help.c:2007 +#: sql_help.c:2031 msgid "error_action" msgstr "오류_동작" -#: sql_help.c:2008 +#: sql_help.c:2032 +msgid "maxerror" +msgstr "최대오류" + +#: sql_help.c:2033 msgid "encoding_name" msgstr "인코딩이름" -#: sql_help.c:2009 +#: sql_help.c:2034 msgid "verbosity" msgstr "로그출력수준" -#: sql_help.c:2020 +#: sql_help.c:2045 msgid "access_method_type" msgstr "접근_방법_종류" -#: sql_help.c:2091 sql_help.c:2110 sql_help.c:2113 +#: sql_help.c:2116 sql_help.c:2135 sql_help.c:2138 msgid "arg_data_type" msgstr "인자자료형" -#: sql_help.c:2092 sql_help.c:2114 sql_help.c:2122 +#: sql_help.c:2117 sql_help.c:2139 sql_help.c:2147 msgid "sfunc" msgstr "sfunc" -#: sql_help.c:2093 sql_help.c:2115 sql_help.c:2123 +#: sql_help.c:2118 sql_help.c:2140 sql_help.c:2148 msgid "state_data_type" msgstr "state_data_type" -#: sql_help.c:2094 sql_help.c:2116 sql_help.c:2124 +#: sql_help.c:2119 sql_help.c:2141 sql_help.c:2149 msgid "state_data_size" msgstr "state_data_size" -#: sql_help.c:2095 sql_help.c:2117 sql_help.c:2125 +#: sql_help.c:2120 sql_help.c:2142 sql_help.c:2150 msgid "ffunc" msgstr "ffunc" -#: sql_help.c:2096 sql_help.c:2126 +#: sql_help.c:2121 sql_help.c:2151 msgid "combinefunc" msgstr "combinefunc" -#: sql_help.c:2097 sql_help.c:2127 +#: sql_help.c:2122 sql_help.c:2152 msgid "serialfunc" msgstr "serialfunc" -#: sql_help.c:2098 sql_help.c:2128 +#: sql_help.c:2123 sql_help.c:2153 msgid "deserialfunc" msgstr "deserialfunc" -#: sql_help.c:2099 sql_help.c:2118 sql_help.c:2129 +#: sql_help.c:2124 sql_help.c:2143 sql_help.c:2154 msgid "initial_condition" msgstr "initial_condition" -#: sql_help.c:2100 sql_help.c:2130 +#: sql_help.c:2125 sql_help.c:2155 msgid "msfunc" msgstr "msfunc" -#: sql_help.c:2101 sql_help.c:2131 +#: sql_help.c:2126 sql_help.c:2156 msgid "minvfunc" msgstr "minvfunc" -#: sql_help.c:2102 sql_help.c:2132 +#: sql_help.c:2127 sql_help.c:2157 msgid "mstate_data_type" msgstr "mstate_data_type" -#: sql_help.c:2103 sql_help.c:2133 +#: sql_help.c:2128 sql_help.c:2158 msgid "mstate_data_size" msgstr "mstate_data_size" -#: sql_help.c:2104 sql_help.c:2134 +#: sql_help.c:2129 sql_help.c:2159 msgid "mffunc" msgstr "mffunc" -#: sql_help.c:2105 sql_help.c:2135 +#: sql_help.c:2130 sql_help.c:2160 msgid "minitial_condition" msgstr "minitial_condition" -#: sql_help.c:2106 sql_help.c:2136 +#: sql_help.c:2131 sql_help.c:2161 msgid "sort_operator" msgstr "정렬연산자" -#: sql_help.c:2119 +#: sql_help.c:2144 msgid "or the old syntax" msgstr "또는 옛날 구문" -#: sql_help.c:2121 +#: sql_help.c:2146 msgid "base_type" msgstr "기본자료형" -#: sql_help.c:2179 sql_help.c:2229 +#: sql_help.c:2204 sql_help.c:2254 msgid "locale" msgstr "로케일" -#: sql_help.c:2180 sql_help.c:2230 +#: sql_help.c:2205 sql_help.c:2255 msgid "lc_collate" msgstr "lc_collate" -#: sql_help.c:2181 sql_help.c:2231 +#: sql_help.c:2206 sql_help.c:2256 msgid "lc_ctype" msgstr "lc_ctype" -#: sql_help.c:2182 sql_help.c:4495 +#: sql_help.c:2207 sql_help.c:4546 msgid "provider" msgstr "제공자" -#: sql_help.c:2184 +#: sql_help.c:2209 msgid "rules" msgstr "룰" -#: sql_help.c:2185 sql_help.c:2292 +#: sql_help.c:2210 sql_help.c:2317 msgid "version" msgstr "버전" -#: sql_help.c:2187 +#: sql_help.c:2212 msgid "existing_collation" msgstr "기존_collation" -#: sql_help.c:2197 +#: sql_help.c:2222 msgid "source_encoding" msgstr "원래인코딩" -#: sql_help.c:2198 +#: sql_help.c:2223 msgid "dest_encoding" msgstr "대상인코딩" -#: sql_help.c:2226 sql_help.c:3067 +#: sql_help.c:2251 sql_help.c:3112 msgid "template" msgstr "템플릿" -#: sql_help.c:2227 +#: sql_help.c:2252 msgid "encoding" msgstr "인코딩" -#: sql_help.c:2228 +#: sql_help.c:2253 msgid "strategy" msgstr "전략번호" -#: sql_help.c:2232 +#: sql_help.c:2257 msgid "builtin_locale" msgstr "내장_로케일" -#: sql_help.c:2233 +#: sql_help.c:2258 msgid "icu_locale" msgstr "icu_로케일" -#: sql_help.c:2234 +#: sql_help.c:2259 msgid "icu_rules" msgstr "icu_룰" -#: sql_help.c:2235 +#: sql_help.c:2260 msgid "locale_provider" msgstr "로케일_제공자" -#: sql_help.c:2236 +#: sql_help.c:2261 msgid "collation_version" msgstr "collation_version" -#: sql_help.c:2241 +#: sql_help.c:2266 msgid "oid" msgstr "oid" -#: sql_help.c:2276 sql_help.c:2709 sql_help.c:3140 +#: sql_help.c:2301 sql_help.c:2746 sql_help.c:3185 msgid "event" msgstr "이벤트" -#: sql_help.c:2277 +#: sql_help.c:2302 msgid "filter_variable" msgstr "필터_변수" -#: sql_help.c:2278 +#: sql_help.c:2303 msgid "filter_value" msgstr "필터_값" -#: sql_help.c:2374 sql_help.c:2956 +#: sql_help.c:2394 sql_help.c:2958 +msgid "source_table" +msgstr "원본테이블" + +#: sql_help.c:2395 sql_help.c:2959 +msgid "like_option" +msgstr "LIKE구문옵션" + +#: sql_help.c:2409 sql_help.c:2996 msgid "where column_constraint is:" msgstr "칼럼_제약조건 사용법:" -#: sql_help.c:2419 +#: sql_help.c:2418 sql_help.c:3030 +msgid "and like_option is:" +msgstr "LIKE구문옵션 사용법:" + +#: sql_help.c:2456 msgid "rettype" msgstr "rettype" -#: sql_help.c:2421 +#: sql_help.c:2458 msgid "column_type" msgstr "칼럼_자료형" -#: sql_help.c:2430 sql_help.c:2633 +#: sql_help.c:2467 sql_help.c:2670 msgid "definition" msgstr "함수정의" -#: sql_help.c:2431 sql_help.c:2634 +#: sql_help.c:2468 sql_help.c:2671 msgid "obj_file" msgstr "오브젝트파일" -#: sql_help.c:2432 sql_help.c:2635 +#: sql_help.c:2469 sql_help.c:2672 msgid "link_symbol" msgstr "연결할_함수명" -#: sql_help.c:2433 sql_help.c:2636 +#: sql_help.c:2470 sql_help.c:2673 msgid "sql_body" msgstr "sql_본문" -#: sql_help.c:2471 sql_help.c:2694 sql_help.c:3263 +#: sql_help.c:2508 sql_help.c:2731 sql_help.c:3308 msgid "uid" msgstr "uid" -#: sql_help.c:2487 sql_help.c:2528 sql_help.c:2925 sql_help.c:2938 -#: sql_help.c:2952 sql_help.c:3023 +#: sql_help.c:2524 sql_help.c:2565 sql_help.c:2965 sql_help.c:2978 +#: sql_help.c:2992 sql_help.c:3068 msgid "method" msgstr "색인방법" -#: sql_help.c:2509 +#: sql_help.c:2546 msgid "call_handler" msgstr "호출_핸들러" -#: sql_help.c:2510 +#: sql_help.c:2547 msgid "inline_handler" msgstr "인라인_핸들러" -#: sql_help.c:2511 +#: sql_help.c:2548 msgid "valfunction" msgstr "구문검사함수" -#: sql_help.c:2569 +#: sql_help.c:2606 msgid "family_name" msgstr "family_name" -#: sql_help.c:2580 +#: sql_help.c:2617 msgid "storage_type" msgstr "스토리지_유형" -#: sql_help.c:2715 sql_help.c:3147 +#: sql_help.c:2752 sql_help.c:3192 msgid "where event can be one of:" msgstr "이벤트 사용법:" -#: sql_help.c:2735 sql_help.c:2737 +#: sql_help.c:2772 sql_help.c:2774 msgid "schema_element" msgstr "스키마_요소" -#: sql_help.c:2774 +#: sql_help.c:2813 msgid "server_type" msgstr "서버_종류" -#: sql_help.c:2775 +#: sql_help.c:2814 msgid "server_version" msgstr "서버_버전" -#: sql_help.c:2776 sql_help.c:3929 sql_help.c:4392 +#: sql_help.c:2815 sql_help.c:3976 sql_help.c:4443 msgid "fdw_name" msgstr "fdw_이름" -#: sql_help.c:2793 sql_help.c:2796 +#: sql_help.c:2832 sql_help.c:2835 msgid "statistics_name" msgstr "통계정보_이름" -#: sql_help.c:2797 +#: sql_help.c:2836 msgid "statistics_kind" msgstr "통계정보_종류" -#: sql_help.c:2813 +#: sql_help.c:2852 msgid "subscription_name" msgstr "구독_이름" -#: sql_help.c:2918 -msgid "source_table" -msgstr "원본테이블" - -#: sql_help.c:2919 -msgid "like_option" -msgstr "LIKE구문옵션" - -#: sql_help.c:2985 -msgid "and like_option is:" -msgstr "LIKE구문옵션 사용법:" - -#: sql_help.c:3040 +#: sql_help.c:3085 msgid "directory" msgstr "디렉터리" -#: sql_help.c:3054 +#: sql_help.c:3099 msgid "parser_name" msgstr "구문분석기_이름" -#: sql_help.c:3055 +#: sql_help.c:3100 msgid "source_config" msgstr "원본_설정" -#: sql_help.c:3084 +#: sql_help.c:3129 msgid "start_function" msgstr "시작_함수" -#: sql_help.c:3085 +#: sql_help.c:3130 msgid "gettoken_function" msgstr "gettoken함수" -#: sql_help.c:3086 +#: sql_help.c:3131 msgid "end_function" msgstr "종료_함수" -#: sql_help.c:3087 +#: sql_help.c:3132 msgid "lextypes_function" msgstr "lextypes함수" -#: sql_help.c:3088 +#: sql_help.c:3133 msgid "headline_function" msgstr "headline함수" -#: sql_help.c:3100 +#: sql_help.c:3145 msgid "init_function" msgstr "init함수" -#: sql_help.c:3101 +#: sql_help.c:3146 msgid "lexize_function" msgstr "lexize함수" -#: sql_help.c:3114 +#: sql_help.c:3159 msgid "from_sql_function_name" msgstr "sql에서_언어로_바꿀때쓸_함수이름" -#: sql_help.c:3116 +#: sql_help.c:3161 msgid "to_sql_function_name" msgstr "언어에서_sql로_바꿀때쓸_함수이름" -#: sql_help.c:3142 +#: sql_help.c:3187 msgid "referenced_table_name" msgstr "참조된_테이블_이름" -#: sql_help.c:3143 +#: sql_help.c:3188 msgid "transition_relation_name" msgstr "전달_릴레이션_이름" -#: sql_help.c:3146 +#: sql_help.c:3191 msgid "arguments" msgstr "인자들" -#: sql_help.c:3198 +#: sql_help.c:3243 msgid "label" msgstr "enum요소" -#: sql_help.c:3200 +#: sql_help.c:3245 msgid "subtype" msgstr "subtype" -#: sql_help.c:3201 +#: sql_help.c:3246 msgid "subtype_operator_class" msgstr "subtype_operator_class" -#: sql_help.c:3203 +#: sql_help.c:3248 msgid "canonical_function" msgstr "canonical_function" -#: sql_help.c:3204 +#: sql_help.c:3249 msgid "subtype_diff_function" msgstr "subtype_diff_function" -#: sql_help.c:3205 +#: sql_help.c:3250 msgid "multirange_type_name" msgstr "다중범위_자료형_이름" -#: sql_help.c:3207 +#: sql_help.c:3252 msgid "input_function" msgstr "입력함수" -#: sql_help.c:3208 +#: sql_help.c:3253 msgid "output_function" msgstr "출력함수" -#: sql_help.c:3209 +#: sql_help.c:3254 msgid "receive_function" msgstr "받는함수" -#: sql_help.c:3210 +#: sql_help.c:3255 msgid "send_function" msgstr "주는함수" -#: sql_help.c:3211 +#: sql_help.c:3256 msgid "type_modifier_input_function" msgstr "type_modifier_input_function" -#: sql_help.c:3212 +#: sql_help.c:3257 msgid "type_modifier_output_function" msgstr "type_modifier_output_function" -#: sql_help.c:3213 +#: sql_help.c:3258 msgid "analyze_function" msgstr "분석함수" -#: sql_help.c:3214 +#: sql_help.c:3259 msgid "subscript_function" msgstr "구독_함수" -#: sql_help.c:3215 +#: sql_help.c:3260 msgid "internallength" msgstr "내부길이" -#: sql_help.c:3216 +#: sql_help.c:3261 msgid "alignment" msgstr "정렬" -#: sql_help.c:3217 +#: sql_help.c:3262 msgid "storage" msgstr "스토리지" -#: sql_help.c:3218 +#: sql_help.c:3263 msgid "like_type" msgstr "like_type" -#: sql_help.c:3219 +#: sql_help.c:3264 msgid "category" msgstr "category" -#: sql_help.c:3220 +#: sql_help.c:3265 msgid "preferred" msgstr "preferred" -#: sql_help.c:3221 +#: sql_help.c:3266 msgid "default" msgstr "기본값" -#: sql_help.c:3222 +#: sql_help.c:3267 msgid "element" msgstr "요소" -#: sql_help.c:3223 +#: sql_help.c:3268 msgid "delimiter" msgstr "구분자" -#: sql_help.c:3224 +#: sql_help.c:3269 msgid "collatable" msgstr "collatable" -#: sql_help.c:3321 sql_help.c:4008 sql_help.c:4102 sql_help.c:4592 -#: sql_help.c:4695 sql_help.c:4850 sql_help.c:4964 sql_help.c:5095 +#: 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 msgid "with_query" msgstr "with절_쿼리" -#: sql_help.c:3323 sql_help.c:4010 sql_help.c:4611 sql_help.c:4617 -#: sql_help.c:4620 sql_help.c:4624 sql_help.c:4628 sql_help.c:4636 -#: sql_help.c:4869 sql_help.c:4875 sql_help.c:4878 sql_help.c:4882 -#: sql_help.c:4886 sql_help.c:4894 sql_help.c:4966 sql_help.c:5114 -#: sql_help.c:5120 sql_help.c:5123 sql_help.c:5127 sql_help.c:5131 -#: sql_help.c:5139 +#: 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 msgid "alias" msgstr "별칭" -#: sql_help.c:3324 sql_help.c:4596 sql_help.c:4638 sql_help.c:4640 -#: sql_help.c:4644 sql_help.c:4646 sql_help.c:4647 sql_help.c:4648 -#: sql_help.c:4700 sql_help.c:4854 sql_help.c:4896 sql_help.c:4898 -#: sql_help.c:4902 sql_help.c:4904 sql_help.c:4905 sql_help.c:4906 -#: sql_help.c:4973 sql_help.c:5099 sql_help.c:5141 sql_help.c:5143 -#: sql_help.c:5147 sql_help.c:5149 sql_help.c:5150 sql_help.c:5151 +#: 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 msgid "from_item" msgstr "from절_항목" -#: sql_help.c:3326 sql_help.c:3810 sql_help.c:4159 sql_help.c:4975 +#: sql_help.c:3372 sql_help.c:3857 sql_help.c:4210 sql_help.c:5027 msgid "cursor_name" msgstr "커서이름" -#: sql_help.c:3327 sql_help.c:4016 sql_help.c:4108 sql_help.c:4976 +#: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 +msgid "output_alias" +msgstr "출력_별칭" + +#: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 msgid "output_expression" msgstr "출력표현식" -#: sql_help.c:3328 sql_help.c:4017 sql_help.c:4109 sql_help.c:4595 -#: sql_help.c:4698 sql_help.c:4853 sql_help.c:4977 sql_help.c:5098 +#: 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 msgid "output_name" msgstr "출력_이름" -#: sql_help.c:3344 +#: sql_help.c:3391 msgid "code" msgstr "코드" -#: sql_help.c:3749 +#: sql_help.c:3796 msgid "parameter" msgstr "매개변수" -#: sql_help.c:3773 sql_help.c:4184 +#: sql_help.c:3820 sql_help.c:4235 msgid "statement" msgstr "명령구문" -#: sql_help.c:3809 sql_help.c:4158 +#: sql_help.c:3856 sql_help.c:4209 msgid "direction" msgstr "방향" -#: sql_help.c:3811 sql_help.c:4160 +#: sql_help.c:3858 sql_help.c:4211 msgid "where direction can be one of:" msgstr "방향 사용법:" -#: sql_help.c:3812 sql_help.c:3813 sql_help.c:3814 sql_help.c:3815 -#: sql_help.c:3816 sql_help.c:4161 sql_help.c:4162 sql_help.c:4163 -#: sql_help.c:4164 sql_help.c:4165 sql_help.c:4605 sql_help.c:4607 -#: sql_help.c:4709 sql_help.c:4711 sql_help.c:4863 sql_help.c:4865 -#: sql_help.c:5039 sql_help.c:5041 sql_help.c:5108 sql_help.c:5110 +#: 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 msgid "count" msgstr "출력개수" -#: sql_help.c:3919 sql_help.c:4382 +#: sql_help.c:3966 sql_help.c:4433 msgid "sequence_name" msgstr "시퀀스이름" -#: sql_help.c:3937 sql_help.c:4400 +#: sql_help.c:3984 sql_help.c:4451 msgid "arg_name" msgstr "인자이름" -#: sql_help.c:3938 sql_help.c:4401 +#: sql_help.c:3985 sql_help.c:4452 msgid "arg_type" msgstr "인자자료형" -#: sql_help.c:3945 sql_help.c:4408 +#: sql_help.c:3992 sql_help.c:4459 msgid "loid" msgstr "큰개체_oid" -#: sql_help.c:3976 +#: sql_help.c:4023 msgid "remote_schema" msgstr "원격_스키마" -#: sql_help.c:3979 +#: sql_help.c:4026 msgid "local_schema" msgstr "로컬_스키마" -#: sql_help.c:4014 +#: sql_help.c:4062 msgid "conflict_target" msgstr "충돌_대상" -#: sql_help.c:4015 +#: sql_help.c:4063 msgid "conflict_action" msgstr "충돌_작업" -#: sql_help.c:4018 +#: sql_help.c:4067 msgid "where conflict_target can be one of:" msgstr "충돌_대상 사용법:" -#: sql_help.c:4019 +#: sql_help.c:4068 msgid "index_column_name" msgstr "인덱스칼럼이름" -#: sql_help.c:4020 +#: sql_help.c:4069 msgid "index_expression" msgstr "인덱스표현식" -#: sql_help.c:4023 +#: sql_help.c:4072 msgid "index_predicate" msgstr "부분인덱스식" -#: sql_help.c:4025 +#: sql_help.c:4074 msgid "and conflict_action is one of:" msgstr "충돌_작업 사용법:" -#: sql_help.c:4031 sql_help.c:4132 sql_help.c:4972 +#: sql_help.c:4080 sql_help.c:4183 sql_help.c:5024 msgid "sub-SELECT" msgstr "서브셀렉트" -#: sql_help.c:4040 sql_help.c:4173 sql_help.c:4948 +#: sql_help.c:4089 sql_help.c:4224 sql_help.c:4999 msgid "channel" msgstr "채널" -#: sql_help.c:4062 +#: sql_help.c:4111 msgid "lockmode" msgstr "잠금모드" -#: sql_help.c:4063 +#: sql_help.c:4112 msgid "where lockmode is one of:" msgstr "잠금모드 사용법:" -#: sql_help.c:4103 +#: sql_help.c:4153 msgid "target_table_name" msgstr "대상_테이블_이름" -#: sql_help.c:4104 +#: sql_help.c:4154 msgid "target_alias" msgstr "대상_별칭" -#: sql_help.c:4105 +#: sql_help.c:4155 msgid "data_source" msgstr "데이터_소스" -#: sql_help.c:4106 sql_help.c:4641 sql_help.c:4899 sql_help.c:5144 +#: sql_help.c:4156 sql_help.c:4692 sql_help.c:4950 sql_help.c:5197 msgid "join_condition" msgstr "조인_조건" -#: sql_help.c:4107 +#: sql_help.c:4157 msgid "when_clause" msgstr "when절" -#: sql_help.c:4110 +#: sql_help.c:4161 msgid "where data_source is:" msgstr "데이터_소스 사용법:" -#: sql_help.c:4111 +#: sql_help.c:4162 msgid "source_table_name" msgstr "원본_테이블_이름" -#: sql_help.c:4112 +#: sql_help.c:4163 msgid "source_query" msgstr "소스_쿼리" -#: sql_help.c:4113 +#: sql_help.c:4164 msgid "source_alias" msgstr "소스_별칭" -#: sql_help.c:4114 +#: sql_help.c:4165 msgid "and when_clause is:" msgstr "when절 사용법:" -#: sql_help.c:4116 sql_help.c:4119 +#: sql_help.c:4167 sql_help.c:4170 msgid "merge_update" msgstr "merge_update" -#: sql_help.c:4117 sql_help.c:4120 +#: sql_help.c:4168 sql_help.c:4171 msgid "merge_delete" msgstr "merge_delete" -#: sql_help.c:4122 +#: sql_help.c:4173 msgid "merge_insert" msgstr "merge_insert" -#: sql_help.c:4123 +#: sql_help.c:4174 msgid "and merge_insert is:" msgstr "merge_insert 사용법:" -#: sql_help.c:4126 +#: sql_help.c:4177 msgid "and merge_update is:" msgstr "merge_update 사용법:" -#: sql_help.c:4133 +#: sql_help.c:4184 msgid "and merge_delete is:" msgstr "merge_delete 사용법:" -#: sql_help.c:4174 +#: sql_help.c:4225 msgid "payload" msgstr "payload" -#: sql_help.c:4201 +#: sql_help.c:4252 msgid "old_role" msgstr "기존롤" -#: sql_help.c:4202 +#: sql_help.c:4253 msgid "new_role" msgstr "새롤" -#: sql_help.c:4241 sql_help.c:4450 sql_help.c:4458 +#: sql_help.c:4292 sql_help.c:4501 sql_help.c:4509 msgid "savepoint_name" msgstr "savepoint_name" -#: sql_help.c:4598 sql_help.c:4656 sql_help.c:4856 sql_help.c:4914 -#: sql_help.c:5101 sql_help.c:5159 +#: sql_help.c:4649 sql_help.c:4707 sql_help.c:4907 sql_help.c:4965 +#: sql_help.c:5154 sql_help.c:5212 msgid "grouping_element" msgstr "grouping_element" -#: sql_help.c:4600 sql_help.c:4704 sql_help.c:4858 sql_help.c:5103 +#: sql_help.c:4651 sql_help.c:4755 sql_help.c:4909 sql_help.c:5156 msgid "window_name" msgstr "윈도우이름" -#: sql_help.c:4601 sql_help.c:4705 sql_help.c:4859 sql_help.c:5104 +#: sql_help.c:4652 sql_help.c:4756 sql_help.c:4910 sql_help.c:5157 msgid "window_definition" msgstr "원도우정의" -#: sql_help.c:4602 sql_help.c:4616 sql_help.c:4660 sql_help.c:4706 -#: sql_help.c:4860 sql_help.c:4874 sql_help.c:4918 sql_help.c:5105 -#: sql_help.c:5119 sql_help.c:5163 +#: 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 msgid "select" msgstr "select" -#: sql_help.c:4608 sql_help.c:4866 sql_help.c:5111 +#: sql_help.c:4659 sql_help.c:4917 sql_help.c:5164 msgid "from_reference" msgstr "from_reference" -#: sql_help.c:4609 sql_help.c:4867 sql_help.c:5112 +#: sql_help.c:4660 sql_help.c:4918 sql_help.c:5165 msgid "where from_item can be one of:" msgstr "from절_항목 사용법:" -#: sql_help.c:4612 sql_help.c:4618 sql_help.c:4621 sql_help.c:4625 -#: sql_help.c:4637 sql_help.c:4870 sql_help.c:4876 sql_help.c:4879 -#: sql_help.c:4883 sql_help.c:4895 sql_help.c:5115 sql_help.c:5121 -#: sql_help.c:5124 sql_help.c:5128 sql_help.c:5140 +#: 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 msgid "column_alias" msgstr "칼럼별칭" -#: sql_help.c:4613 sql_help.c:4871 sql_help.c:5116 +#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5169 msgid "sampling_method" msgstr "표본추출방법" -#: sql_help.c:4615 sql_help.c:4873 sql_help.c:5118 +#: sql_help.c:4666 sql_help.c:4924 sql_help.c:5171 msgid "seed" msgstr "seed" -#: sql_help.c:4619 sql_help.c:4658 sql_help.c:4877 sql_help.c:4916 -#: sql_help.c:5122 sql_help.c:5161 +#: sql_help.c:4670 sql_help.c:4709 sql_help.c:4928 sql_help.c:4967 +#: sql_help.c:5175 sql_help.c:5214 msgid "with_query_name" msgstr "with절_쿼리_이름" -#: sql_help.c:4629 sql_help.c:4632 sql_help.c:4635 sql_help.c:4887 -#: sql_help.c:4890 sql_help.c:4893 sql_help.c:5132 sql_help.c:5135 -#: sql_help.c:5138 +#: 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 msgid "column_definition" msgstr "칼럼정의" -#: sql_help.c:4639 sql_help.c:4645 sql_help.c:4897 sql_help.c:4903 -#: sql_help.c:5142 sql_help.c:5148 +#: sql_help.c:4690 sql_help.c:4696 sql_help.c:4948 sql_help.c:4954 +#: sql_help.c:5195 sql_help.c:5201 msgid "join_type" msgstr "조인_종류" -#: sql_help.c:4642 sql_help.c:4900 sql_help.c:5145 +#: sql_help.c:4693 sql_help.c:4951 sql_help.c:5198 msgid "join_column" msgstr "조인_칼럼" -#: sql_help.c:4643 sql_help.c:4901 sql_help.c:5146 +#: sql_help.c:4694 sql_help.c:4952 sql_help.c:5199 msgid "join_using_alias" msgstr "조인_별칭" -#: sql_help.c:4649 sql_help.c:4907 sql_help.c:5152 +#: sql_help.c:4700 sql_help.c:4958 sql_help.c:5205 msgid "and grouping_element can be one of:" msgstr "grouping_element 사용법:" -#: sql_help.c:4657 sql_help.c:4915 sql_help.c:5160 +#: sql_help.c:4708 sql_help.c:4966 sql_help.c:5213 msgid "and with_query is:" msgstr "with절_쿼리 사용법:" -#: sql_help.c:4661 sql_help.c:4919 sql_help.c:5164 +#: sql_help.c:4712 sql_help.c:4970 sql_help.c:5217 msgid "values" msgstr "값" -#: sql_help.c:4662 sql_help.c:4920 sql_help.c:5165 +#: sql_help.c:4713 sql_help.c:4971 sql_help.c:5218 msgid "insert" msgstr "insert" -#: sql_help.c:4663 sql_help.c:4921 sql_help.c:5166 +#: sql_help.c:4714 sql_help.c:4972 sql_help.c:5219 msgid "update" msgstr "update" -#: sql_help.c:4664 sql_help.c:4922 sql_help.c:5167 +#: sql_help.c:4715 sql_help.c:4973 sql_help.c:5220 msgid "delete" msgstr "delete" -#: sql_help.c:4665 sql_help.c:4923 sql_help.c:5168 +#: sql_help.c:4716 sql_help.c:4974 sql_help.c:5221 msgid "merge" msgstr "merge" -#: sql_help.c:4667 sql_help.c:4925 sql_help.c:5170 +#: sql_help.c:4718 sql_help.c:4976 sql_help.c:5223 msgid "search_seq_col_name" msgstr "search_seq_col_name" -#: sql_help.c:4669 sql_help.c:4927 sql_help.c:5172 +#: sql_help.c:4720 sql_help.c:4978 sql_help.c:5225 msgid "cycle_mark_col_name" msgstr "cycle_mark_col_name" -#: sql_help.c:4670 sql_help.c:4928 sql_help.c:5173 +#: sql_help.c:4721 sql_help.c:4979 sql_help.c:5226 msgid "cycle_mark_value" msgstr "cycle_mark_value" -#: sql_help.c:4671 sql_help.c:4929 sql_help.c:5174 +#: sql_help.c:4722 sql_help.c:4980 sql_help.c:5227 msgid "cycle_mark_default" msgstr "cycle_mark_default" -#: sql_help.c:4672 sql_help.c:4930 sql_help.c:5175 +#: sql_help.c:4723 sql_help.c:4981 sql_help.c:5228 msgid "cycle_path_col_name" msgstr "cycle_path_col_name" -#: sql_help.c:4699 +#: sql_help.c:4750 msgid "new_table" msgstr "새테이블" -#: sql_help.c:4770 +#: sql_help.c:4821 msgid "snapshot_id" msgstr "스냅샷_id" -#: sql_help.c:5037 +#: sql_help.c:5090 msgid "sort_expression" msgstr "정렬_표현식" -#: sql_help.c:5182 sql_help.c:6166 +#: sql_help.c:5235 sql_help.c:6219 msgid "abort the current transaction" msgstr "현재 트랜잭션 중지함" -#: sql_help.c:5188 +#: sql_help.c:5241 msgid "change the definition of an aggregate function" msgstr "집계함수 정보 바꾸기" -#: sql_help.c:5194 +#: sql_help.c:5247 msgid "change the definition of a collation" msgstr "collation 정의 바꾸기" -#: sql_help.c:5200 +#: sql_help.c:5253 msgid "change the definition of a conversion" msgstr "문자코드 변환규칙(conversion) 정보 바꾸기" -#: sql_help.c:5206 +#: sql_help.c:5259 msgid "change a database" msgstr "데이터베이스 변경" -#: sql_help.c:5212 +#: sql_help.c:5265 msgid "define default access privileges" msgstr "기본 접근 권한 정의" -#: sql_help.c:5218 +#: sql_help.c:5271 msgid "change the definition of a domain" msgstr "도메인 정보 바꾸기" -#: sql_help.c:5224 +#: sql_help.c:5277 msgid "change the definition of an event trigger" msgstr "트리거 정보 바꾸기" -#: sql_help.c:5230 +#: sql_help.c:5283 msgid "change the definition of an extension" msgstr "확장모듈 정의 바꾸기" -#: sql_help.c:5236 +#: sql_help.c:5289 msgid "change the definition of a foreign-data wrapper" msgstr "외부 데이터 래퍼 정의 바꾸기" -#: sql_help.c:5242 +#: sql_help.c:5295 msgid "change the definition of a foreign table" msgstr "외부 테이블 정의 바꾸기" -#: sql_help.c:5248 +#: sql_help.c:5301 msgid "change the definition of a function" msgstr "함수 정보 바꾸기" -#: sql_help.c:5254 +#: sql_help.c:5307 msgid "change role name or membership" msgstr "롤 이름이나 맴버쉽 바꾸기" -#: sql_help.c:5260 +#: sql_help.c:5313 msgid "change the definition of an index" msgstr "인덱스 정의 바꾸기" -#: sql_help.c:5266 +#: sql_help.c:5319 msgid "change the definition of a procedural language" msgstr "procedural language 정보 바꾸기" -#: sql_help.c:5272 +#: sql_help.c:5325 msgid "change the definition of a large object" msgstr "대형 객체 정의 바꾸기" -#: sql_help.c:5278 +#: sql_help.c:5331 msgid "change the definition of a materialized view" msgstr "materialized 뷰 정의 바꾸기" -#: sql_help.c:5284 +#: sql_help.c:5337 msgid "change the definition of an operator" msgstr "연산자 정의 바꾸기" -#: sql_help.c:5290 +#: sql_help.c:5343 msgid "change the definition of an operator class" msgstr "연산자 클래스 정보 바꾸기" -#: sql_help.c:5296 +#: sql_help.c:5349 msgid "change the definition of an operator family" msgstr "연산자 부류의 정의 바꾸기" -#: sql_help.c:5302 +#: sql_help.c:5355 msgid "change the definition of a row-level security policy" msgstr "로우 단위 보안 정책의 정의 바꾸기" -#: sql_help.c:5308 +#: sql_help.c:5361 msgid "change the definition of a procedure" msgstr "프로시져 정의 바꾸기" -#: sql_help.c:5314 +#: sql_help.c:5367 msgid "change the definition of a publication" msgstr "발행 정보 바꾸기" -#: sql_help.c:5320 sql_help.c:5422 +#: sql_help.c:5373 sql_help.c:5475 msgid "change a database role" msgstr "데이터베이스 롤 변경" -#: sql_help.c:5326 +#: sql_help.c:5379 msgid "change the definition of a routine" msgstr "루틴 정의 바꾸기" -#: sql_help.c:5332 +#: sql_help.c:5385 msgid "change the definition of a rule" msgstr "룰 정의 바꾸기" -#: sql_help.c:5338 +#: sql_help.c:5391 msgid "change the definition of a schema" msgstr "스키마 이름 바꾸기" -#: sql_help.c:5344 +#: sql_help.c:5397 msgid "change the definition of a sequence generator" msgstr "시퀀스 정보 바꾸기" -#: sql_help.c:5350 +#: sql_help.c:5403 msgid "change the definition of a foreign server" msgstr "외부 서버 정의 바꾸기" -#: sql_help.c:5356 +#: sql_help.c:5409 msgid "change the definition of an extended statistics object" msgstr "확장 통계정보 객체 정의 바꾸기" -#: sql_help.c:5362 +#: sql_help.c:5415 msgid "change the definition of a subscription" msgstr "구독 정보 바꾸기" -#: sql_help.c:5368 +#: sql_help.c:5421 msgid "change a server configuration parameter" msgstr "서버 환경 설정 매개 변수 바꾸기" -#: sql_help.c:5374 +#: sql_help.c:5427 msgid "change the definition of a table" msgstr "테이블 정보 바꾸기" -#: sql_help.c:5380 +#: sql_help.c:5433 msgid "change the definition of a tablespace" msgstr "테이블스페이스 정의 바꾸기" -#: sql_help.c:5386 +#: sql_help.c:5439 msgid "change the definition of a text search configuration" msgstr "텍스트 검색 구성 정의 바꾸기" -#: sql_help.c:5392 +#: sql_help.c:5445 msgid "change the definition of a text search dictionary" msgstr "텍스트 검색 사전 정의 바꾸기" -#: sql_help.c:5398 +#: sql_help.c:5451 msgid "change the definition of a text search parser" msgstr "텍스트 검색 파서 정의 바꾸기" -#: sql_help.c:5404 +#: sql_help.c:5457 msgid "change the definition of a text search template" msgstr "텍스트 검색 템플릿 정의 바꾸기" -#: sql_help.c:5410 +#: sql_help.c:5463 msgid "change the definition of a trigger" msgstr "트리거 정보 바꾸기" -#: sql_help.c:5416 +#: sql_help.c:5469 msgid "change the definition of a type" msgstr "자료형 정의 바꾸기" -#: sql_help.c:5428 +#: sql_help.c:5481 msgid "change the definition of a user mapping" msgstr "사용자 매핑 정의 바꾸기" -#: sql_help.c:5434 +#: sql_help.c:5487 msgid "change the definition of a view" msgstr "뷰 정의 바꾸기" -#: sql_help.c:5440 +#: sql_help.c:5493 msgid "collect statistics about a database" msgstr "데이터베이스 사용 통계 정보를 갱신함" -#: sql_help.c:5446 sql_help.c:6244 +#: sql_help.c:5499 sql_help.c:6297 msgid "start a transaction block" msgstr "트랜잭션 블럭을 시작함" -#: sql_help.c:5452 +#: sql_help.c:5505 msgid "invoke a procedure" msgstr "프로시져 호출" -#: sql_help.c:5458 +#: sql_help.c:5511 msgid "force a write-ahead log checkpoint" msgstr "트랜잭션 로그를 강제로 체크포인트 함" -#: sql_help.c:5464 +#: sql_help.c:5517 msgid "close a cursor" msgstr "커서 닫기" -#: sql_help.c:5470 +#: sql_help.c:5523 msgid "cluster a table according to an index" msgstr "지정한 인덱스 기준으로 테이블 자료를 다시 저장함" -#: sql_help.c:5476 +#: sql_help.c:5529 msgid "define or change the comment of an object" msgstr "해당 개체의 코멘트를 지정하거나 수정함" -#: sql_help.c:5482 sql_help.c:6040 +#: sql_help.c:5535 sql_help.c:6093 msgid "commit the current transaction" msgstr "현재 트랜잭션 commit" -#: sql_help.c:5488 +#: sql_help.c:5541 msgid "commit a transaction that was earlier prepared for two-phase commit" msgstr "two-phase 커밋을 위해 먼저 준비된 트랜잭션을 커밋하세요." -#: sql_help.c:5494 +#: sql_help.c:5547 msgid "copy data between a file and a table" msgstr "테이블과 파일 사이 자료를 복사함" -#: sql_help.c:5500 +#: sql_help.c:5553 msgid "define a new access method" msgstr "새 접속 방법 정의" -#: sql_help.c:5506 +#: sql_help.c:5559 msgid "define a new aggregate function" msgstr "새 집계합수 만들기" -#: sql_help.c:5512 +#: sql_help.c:5565 msgid "define a new cast" msgstr "새 형변환자 만들기" -#: sql_help.c:5518 +#: sql_help.c:5571 msgid "define a new collation" msgstr "새 collation 만들기" -#: sql_help.c:5524 +#: sql_help.c:5577 msgid "define a new encoding conversion" msgstr "새 문자코드변환규칙(conversion) 만들기" -#: sql_help.c:5530 +#: sql_help.c:5583 msgid "create a new database" msgstr "데이터베이스 생성" -#: sql_help.c:5536 +#: sql_help.c:5589 msgid "define a new domain" msgstr "새 도메인 만들기" -#: sql_help.c:5542 +#: sql_help.c:5595 msgid "define a new event trigger" msgstr "새 이벤트 트리거 만들기" -#: sql_help.c:5548 +#: sql_help.c:5601 msgid "install an extension" msgstr "확장 모듈 설치" -#: sql_help.c:5554 +#: sql_help.c:5607 msgid "define a new foreign-data wrapper" msgstr "새 외부 데이터 래퍼 정의" -#: sql_help.c:5560 +#: sql_help.c:5613 msgid "define a new foreign table" msgstr "새 외부 테이블 정의" -#: sql_help.c:5566 +#: sql_help.c:5619 msgid "define a new function" msgstr "새 함수 만들기" -#: sql_help.c:5572 sql_help.c:5632 sql_help.c:5734 +#: sql_help.c:5625 sql_help.c:5685 sql_help.c:5787 msgid "define a new database role" msgstr "새 데이터베이스 롤 만들기" -#: sql_help.c:5578 +#: sql_help.c:5631 msgid "define a new index" msgstr "새 인덱스 만들기" -#: sql_help.c:5584 +#: sql_help.c:5637 msgid "define a new procedural language" msgstr "새 프로시주얼 언어 만들기" -#: sql_help.c:5590 +#: sql_help.c:5643 msgid "define a new materialized view" msgstr "새 materialized 뷰 만들기" -#: sql_help.c:5596 +#: sql_help.c:5649 msgid "define a new operator" msgstr "새 연산자 만들기" -#: sql_help.c:5602 +#: sql_help.c:5655 msgid "define a new operator class" msgstr "새 연잔자 클래스 만들기" -#: sql_help.c:5608 +#: sql_help.c:5661 msgid "define a new operator family" msgstr "새 연산자 부류 만들기" -#: sql_help.c:5614 +#: sql_help.c:5667 msgid "define a new row-level security policy for a table" msgstr "특정 테이블에 로우 단위 보안 정책 정의" -#: sql_help.c:5620 +#: sql_help.c:5673 msgid "define a new procedure" msgstr "새 프로시져 만들기" -#: sql_help.c:5626 +#: sql_help.c:5679 msgid "define a new publication" msgstr "새 발행 만들기" -#: sql_help.c:5638 +#: sql_help.c:5691 msgid "define a new rewrite rule" msgstr "새 룰(rule) 만들기" -#: sql_help.c:5644 +#: sql_help.c:5697 msgid "define a new schema" msgstr "새 스키마(schema) 만들기" -#: sql_help.c:5650 +#: sql_help.c:5703 msgid "define a new sequence generator" msgstr "새 시퀀스 만들기" -#: sql_help.c:5656 +#: sql_help.c:5709 msgid "define a new foreign server" msgstr "새 외부 서버 정의" -#: sql_help.c:5662 +#: sql_help.c:5715 msgid "define extended statistics" msgstr "새 확장 통계정보 만들기" -#: sql_help.c:5668 +#: sql_help.c:5721 msgid "define a new subscription" msgstr "새 구독 만들기" -#: sql_help.c:5674 +#: sql_help.c:5727 msgid "define a new table" msgstr "새 테이블 만들기" -#: sql_help.c:5680 sql_help.c:6202 +#: sql_help.c:5733 sql_help.c:6255 msgid "define a new table from the results of a query" msgstr "쿼리 결과를 새 테이블로 만들기" -#: sql_help.c:5686 +#: sql_help.c:5739 msgid "define a new tablespace" msgstr "새 테이블스페이스 만들기" -#: sql_help.c:5692 +#: sql_help.c:5745 msgid "define a new text search configuration" msgstr "새 텍스트 검색 구성 정의" -#: sql_help.c:5698 +#: sql_help.c:5751 msgid "define a new text search dictionary" msgstr "새 텍스트 검색 사전 정의" -#: sql_help.c:5704 +#: sql_help.c:5757 msgid "define a new text search parser" msgstr "새 텍스트 검색 파서 정의" -#: sql_help.c:5710 +#: sql_help.c:5763 msgid "define a new text search template" msgstr "새 텍스트 검색 템플릿 정의" -#: sql_help.c:5716 +#: sql_help.c:5769 msgid "define a new transform" msgstr "새 transform 만들기" -#: sql_help.c:5722 +#: sql_help.c:5775 msgid "define a new trigger" msgstr "새 트리거 만들기" -#: sql_help.c:5728 +#: sql_help.c:5781 msgid "define a new data type" msgstr "새 자료형 만들기" -#: sql_help.c:5740 +#: sql_help.c:5793 msgid "define a new mapping of a user to a foreign server" msgstr "사용자와 외부 서버 간의 새 매핑 정의" -#: sql_help.c:5746 +#: sql_help.c:5799 msgid "define a new view" msgstr "새 view 만들기" -#: sql_help.c:5752 +#: sql_help.c:5805 msgid "deallocate a prepared statement" msgstr "준비된 구문(prepared statement) 지우기" -#: sql_help.c:5758 +#: sql_help.c:5811 msgid "define a cursor" msgstr "커서 지정" -#: sql_help.c:5764 +#: sql_help.c:5817 msgid "delete rows of a table" msgstr "테이블의 자료 삭제" -#: sql_help.c:5770 +#: sql_help.c:5823 msgid "discard session state" msgstr "세션 상태 삭제" -#: sql_help.c:5776 +#: sql_help.c:5829 msgid "execute an anonymous code block" msgstr "임의 코드 블록 실행" -#: sql_help.c:5782 +#: sql_help.c:5835 msgid "remove an access method" msgstr "접근 방법 삭제" -#: sql_help.c:5788 +#: sql_help.c:5841 msgid "remove an aggregate function" msgstr "집계 함수 삭제" -#: sql_help.c:5794 +#: sql_help.c:5847 msgid "remove a cast" msgstr "형변환자 삭제" -#: sql_help.c:5800 +#: sql_help.c:5853 msgid "remove a collation" msgstr "collation 삭제" -#: sql_help.c:5806 +#: sql_help.c:5859 msgid "remove a conversion" msgstr "문자코드 변환규칙(conversion) 삭제" -#: sql_help.c:5812 +#: sql_help.c:5865 msgid "remove a database" msgstr "데이터베이스 삭제" -#: sql_help.c:5818 +#: sql_help.c:5871 msgid "remove a domain" msgstr "도메인 삭제" -#: sql_help.c:5824 +#: sql_help.c:5877 msgid "remove an event trigger" msgstr "이벤트 트리거 삭제" -#: sql_help.c:5830 +#: sql_help.c:5883 msgid "remove an extension" msgstr "확장 모듈 삭제" -#: sql_help.c:5836 +#: sql_help.c:5889 msgid "remove a foreign-data wrapper" msgstr "외부 데이터 래퍼 제거" -#: sql_help.c:5842 +#: sql_help.c:5895 msgid "remove a foreign table" msgstr "외부 테이블 삭제" -#: sql_help.c:5848 +#: sql_help.c:5901 msgid "remove a function" msgstr "함수 삭제" -#: sql_help.c:5854 sql_help.c:5920 sql_help.c:6022 +#: sql_help.c:5907 sql_help.c:5973 sql_help.c:6075 msgid "remove a database role" msgstr "데이터베이스 롤 삭제" -#: sql_help.c:5860 +#: sql_help.c:5913 msgid "remove an index" msgstr "인덱스 삭제" -#: sql_help.c:5866 +#: sql_help.c:5919 msgid "remove a procedural language" msgstr "프로시주얼 언어 삭제" -#: sql_help.c:5872 +#: sql_help.c:5925 msgid "remove a materialized view" msgstr "materialized 뷰 삭제" -#: sql_help.c:5878 +#: sql_help.c:5931 msgid "remove an operator" msgstr "연산자 삭제" -#: sql_help.c:5884 +#: sql_help.c:5937 msgid "remove an operator class" msgstr "연산자 클래스 삭제" -#: sql_help.c:5890 +#: sql_help.c:5943 msgid "remove an operator family" msgstr "연산자 부류 삭제" -#: sql_help.c:5896 +#: sql_help.c:5949 msgid "remove database objects owned by a database role" msgstr "데이터베이스 롤로 권한이 부여된 데이터베이스 개체들을 삭제하세요" -#: sql_help.c:5902 +#: sql_help.c:5955 msgid "remove a row-level security policy from a table" msgstr "해당 테이블에 정의된 로우 단위 보안 정책 삭제" -#: sql_help.c:5908 +#: sql_help.c:5961 msgid "remove a procedure" msgstr "프로시져 삭제" -#: sql_help.c:5914 +#: sql_help.c:5967 msgid "remove a publication" msgstr "발행 삭제" -#: sql_help.c:5926 +#: sql_help.c:5979 msgid "remove a routine" msgstr "루틴 삭제" -#: sql_help.c:5932 +#: sql_help.c:5985 msgid "remove a rewrite rule" msgstr "룰(rule) 삭제" -#: sql_help.c:5938 +#: sql_help.c:5991 msgid "remove a schema" msgstr "스키마(schema) 삭제" -#: sql_help.c:5944 +#: sql_help.c:5997 msgid "remove a sequence" msgstr "시퀀스 삭제" -#: sql_help.c:5950 +#: sql_help.c:6003 msgid "remove a foreign server descriptor" msgstr "외부 서버 설명자 제거" -#: sql_help.c:5956 +#: sql_help.c:6009 msgid "remove extended statistics" msgstr "확장 통계정보 삭제" -#: sql_help.c:5962 +#: sql_help.c:6015 msgid "remove a subscription" msgstr "구독 삭제" -#: sql_help.c:5968 +#: sql_help.c:6021 msgid "remove a table" msgstr "테이블 삭제" -#: sql_help.c:5974 +#: sql_help.c:6027 msgid "remove a tablespace" msgstr "테이블스페이스 삭제" -#: sql_help.c:5980 +#: sql_help.c:6033 msgid "remove a text search configuration" msgstr "텍스트 검색 구성 제거" -#: sql_help.c:5986 +#: sql_help.c:6039 msgid "remove a text search dictionary" msgstr "텍스트 검색 사전 제거" -#: sql_help.c:5992 +#: sql_help.c:6045 msgid "remove a text search parser" msgstr "텍스트 검색 파서 제거" -#: sql_help.c:5998 +#: sql_help.c:6051 msgid "remove a text search template" msgstr "텍스트 검색 템플릿 제거" -#: sql_help.c:6004 +#: sql_help.c:6057 msgid "remove a transform" msgstr "transform 삭제" -#: sql_help.c:6010 +#: sql_help.c:6063 msgid "remove a trigger" msgstr "트리거 삭제" -#: sql_help.c:6016 +#: sql_help.c:6069 msgid "remove a data type" msgstr "자료형 삭제" -#: sql_help.c:6028 +#: sql_help.c:6081 msgid "remove a user mapping for a foreign server" msgstr "외부 서버에 대한 사용자 매핑 제거" -#: sql_help.c:6034 +#: sql_help.c:6087 msgid "remove a view" msgstr "뷰(view) 삭제" -#: sql_help.c:6046 +#: sql_help.c:6099 msgid "execute a prepared statement" msgstr "준비된 구문(prepared statement) 실행" -#: sql_help.c:6052 +#: sql_help.c:6105 msgid "show the execution plan of a statement" msgstr "쿼리 실행계획 보기" -#: sql_help.c:6058 +#: sql_help.c:6111 msgid "retrieve rows from a query using a cursor" msgstr "해당 커서에서 자료 뽑기" -#: sql_help.c:6064 +#: sql_help.c:6117 msgid "define access privileges" msgstr "액세스 권한 지정하기" -#: sql_help.c:6070 +#: sql_help.c:6123 msgid "import table definitions from a foreign server" msgstr "외부 서버로부터 테이블 정의 가져오기" -#: sql_help.c:6076 +#: sql_help.c:6129 msgid "create new rows in a table" msgstr "테이블 자료 삽입" -#: sql_help.c:6082 +#: sql_help.c:6135 msgid "listen for a notification" msgstr "특정 서버 메시지 수신함" -#: sql_help.c:6088 +#: sql_help.c:6141 msgid "load a shared library file" msgstr "공유 라이브러리 파일 로드" -#: sql_help.c:6094 +#: sql_help.c:6147 msgid "lock a table" msgstr "테이블 잠금" -#: sql_help.c:6100 +#: sql_help.c:6153 msgid "conditionally insert, update, or delete rows of a table" msgstr "조건부 테이블 insert, update, delete" -#: sql_help.c:6106 +#: sql_help.c:6159 msgid "position a cursor" msgstr "커서 위치 옮기기" -#: sql_help.c:6112 +#: sql_help.c:6165 msgid "generate a notification" msgstr "특정 서버 메시지 발생" -#: sql_help.c:6118 +#: sql_help.c:6171 msgid "prepare a statement for execution" msgstr "준비된 구문(prepared statement) 만들기" -#: sql_help.c:6124 +#: sql_help.c:6177 msgid "prepare the current transaction for two-phase commit" msgstr "two-phase 커밋을 위해 현재 트랜잭션을 준비함" -#: sql_help.c:6130 +#: sql_help.c:6183 msgid "change the ownership of database objects owned by a database role" msgstr "데이터베이스 롤로 권한이 부여된 데이터베이스 개체들의 소유주 바꾸기" -#: sql_help.c:6136 +#: sql_help.c:6189 msgid "replace the contents of a materialized view" msgstr "구체화된 뷰의 내용 수정" -#: sql_help.c:6142 +#: sql_help.c:6195 msgid "rebuild indexes" msgstr "인덱스 다시 만들기" -#: sql_help.c:6148 +#: sql_help.c:6201 msgid "release a previously defined savepoint" msgstr "이전 정의된 savepoint를 지움" -#: sql_help.c:6154 +#: sql_help.c:6207 msgid "restore the value of a run-time parameter to the default value" msgstr "실시간 환경 변수값을 초기값으로 다시 지정" -#: sql_help.c:6160 +#: sql_help.c:6213 msgid "remove access privileges" msgstr "액세스 권한 해제하기" -#: sql_help.c:6172 +#: sql_help.c:6225 msgid "cancel a transaction that was earlier prepared for two-phase commit" msgstr "two-phase 커밋을 위해 먼저 준비되었던 트랜잭션 실행취소하기" -#: sql_help.c:6178 +#: sql_help.c:6231 msgid "roll back to a savepoint" msgstr "savepoint 파기하기" -#: sql_help.c:6184 +#: sql_help.c:6237 msgid "define a new savepoint within the current transaction" msgstr "현재 트랜잭션에서 새로운 savepoint 만들기" -#: sql_help.c:6190 +#: sql_help.c:6243 msgid "define or change a security label applied to an object" msgstr "해당 개체에 보안 라벨을 정의하거나 변경" -#: sql_help.c:6196 sql_help.c:6250 sql_help.c:6286 +#: sql_help.c:6249 sql_help.c:6303 sql_help.c:6339 msgid "retrieve rows from a table or view" msgstr "테이블이나 뷰의 자료를 출력" -#: sql_help.c:6208 +#: sql_help.c:6261 msgid "change a run-time parameter" msgstr "실시간 환경 변수값 바꾸기" -#: sql_help.c:6214 +#: sql_help.c:6267 msgid "set constraint check timing for the current transaction" msgstr "현재 트랜잭션에서 제약조건 설정" -#: sql_help.c:6220 +#: sql_help.c:6273 msgid "set the current user identifier of the current session" msgstr "현재 세션의 현재 사용자 식별자를 지정" -#: sql_help.c:6226 +#: sql_help.c:6279 msgid "" "set the session user identifier and the current user identifier of the " "current session" msgstr "현재 세션의 사용자 인증을 지정함 - 사용자 지정" -#: sql_help.c:6232 +#: sql_help.c:6285 msgid "set the characteristics of the current transaction" msgstr "현재 트랜잭션의 성질을 지정함" -#: sql_help.c:6238 +#: sql_help.c:6291 msgid "show the value of a run-time parameter" msgstr "실시간 환경 변수값들을 보여줌" -#: sql_help.c:6256 +#: sql_help.c:6309 msgid "empty a table or set of tables" msgstr "하나 또는 지정한 여러개의 테이블에서 모든 자료 지움" -#: sql_help.c:6262 +#: sql_help.c:6315 msgid "stop listening for a notification" msgstr "특정 서버 메시지 수신 기능 끔" -#: sql_help.c:6268 +#: sql_help.c:6321 msgid "update rows of a table" msgstr "테이블 자료 갱신" -#: sql_help.c:6274 +#: sql_help.c:6327 msgid "garbage-collect and optionally analyze a database" msgstr "물리적인 자료 정리 작업 - 쓰레기값 청소" -#: sql_help.c:6280 +#: sql_help.c:6333 msgid "compute a set of rows" msgstr "compute a set of rows" -#: 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" @@ -6715,27 +7021,27 @@ 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:6633 #, c-format msgid "" "tab completion query failed: %s\n" @@ -6746,22 +7052,47 @@ msgstr "" "사용한 쿼리:\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" @@ -6770,18 +7101,53 @@ msgstr "" "\"%s\" 값은 \"%s\" 변수값으로 사용할 수 없음\n" "사용할 수 있는 변수값: %s" +#~ msgid "" +#~ " \\watch [[i=]SEC] [c=N] execute query every SEC seconds, up to N times\n" +#~ msgstr " \\watch [[i=]SEC] [c=N] SEC초 간격, N번 반복\n" + #~ msgid "ICU Locale" #~ msgstr "ICU 로케일" -#~ msgid "local socket" -#~ msgstr "로컬 소켓" +#~ msgid "Unlogged materialized view \"%s.%s\"" +#~ msgstr "트랜잭션 로그를 남기지 않은 구체화된 뷰 \"%s.%s\"" #~ msgid "" -#~ " \\watch [[i=]SEC] [c=N] execute query every SEC seconds, up to N times\n" -#~ msgstr " \\watch [[i=]SEC] [c=N] SEC초 간격, N번 반복\n" +#~ "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at " +#~ "port \"%s\".\n" +#~ msgstr "" +#~ "접속정보: 데이터베이스=\"%s\", 사용자=\"%s\", 주소=\"%s\", 포트=\"%s\".\n" + +#~ 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" + +#~ msgid "" +#~ "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at " +#~ "port \"%s\".\n" +#~ msgstr "" +#~ "접속정보: 데이터베이스=\"%s\", 사용자=\"%s\", 호스트=\"%s\", 포트=\"%s" +#~ "\".\n" + +#~ msgid "" +#~ "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" " +#~ "at port \"%s\".\n" +#~ msgstr "" +#~ "접속정보: 데이터베이스=\"%s\", 사용자=\"%s\", 소켓=\"%s\", 포트=\"%s\".\n" #~ msgid "constraint" #~ msgstr "제약조건" +#~ msgid "could not look up local user ID %d: %s" +#~ msgstr "UID %d 해당하는 로컬 사용자를 찾을 수 없음: %s" + +#~ msgid "local socket" +#~ msgstr "로컬 소켓" + +#~ msgid "local user with ID %d does not exist" +#~ msgstr "ID %d 로컬 사용자 없음" + #~ msgid "where constraint is:" #~ msgstr "제약조건 사용법:" diff --git a/src/bin/psql/po/ru.po b/src/bin/psql/po/ru.po index fc1ee695a522a..7a4b9b667ade5 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. -# Alexander Lakhin , 2012-2025. +# SPDX-FileCopyrightText: 2012-2025 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-08-30 15:59+0300\n" -"PO-Revision-Date: 2025-02-08 08:33+0200\n" +"PO-Revision-Date: 2025-09-06 14:43+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -165,13 +165,13 @@ msgid "Interrupted\n" msgstr "Прервано\n" #: ../../fe_utils/print.c:3188 -#, fuzzy, c-format +#, c-format msgid "" "Cannot print table contents: number of cells % is equal to or " "exceeds maximum %zu.\n" msgstr "" -"Вывести содержимое таблицы нельзя: число ячеек %lld достигло максимума " -"%lld.\n" +"Вывести содержимое таблицы нельзя: число ячеек % достигло максимума " +"%zu.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -180,11 +180,12 @@ msgstr "" "Ошибка добавления заголовка таблицы: превышен предел числа столбцов (%d).\n" #: ../../fe_utils/print.c:3272 -#, fuzzy, c-format +#, c-format msgid "" "Cannot add cell to table content: total cell count of % exceeded.\n" msgstr "" -"Ошибка добавления ячейки в таблицу: превышен предел числа ячеек (%lld).\n" +"Ошибка добавления ячейки в таблицу: превышен предел числа ячеек " +"(%).\n" #: ../../fe_utils/print.c:3530 #, c-format @@ -213,6 +214,7 @@ msgstr "" #, c-format msgid "backslash commands are restricted; only \\unrestrict is allowed" msgstr "" +"команды с обратной косой чертой отключены; разрешается только \\unrestrict" #: command.c:262 #, c-format @@ -259,11 +261,8 @@ msgid "You are currently not connected to a database.\n" msgstr "В данный момент вы не подключены к базе данных.\n" #: command.c:839 -#, fuzzy msgid "Connection Information" -msgstr "" -"\n" -"Параметры подключения:\n" +msgstr "Информация о подключении" #: command.c:840 describe.c:4722 msgid "Parameter" @@ -279,64 +278,59 @@ msgstr "БД" #: command.c:848 msgid "Client User" -msgstr "" +msgstr "Подключённый пользователь" #: command.c:857 command.c:872 msgid "Host Address" -msgstr "" +msgstr "Адрес узла" #: command.c:862 -#, fuzzy msgid "Socket Directory" -msgstr "каталог" +msgstr "Каталог сокетов" #: command.c:868 msgid "Host" -msgstr "" +msgstr "Узел" #: command.c:878 -#, fuzzy msgid "Server Port" -msgstr "Сервер" +msgstr "Порт сервера" #: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 msgid "Options" msgstr "Параметры" #: command.c:886 -#, fuzzy msgid "Protocol Version" -msgstr "Версия" +msgstr "Версия протокола" #: command.c:890 -#, fuzzy msgid "Password Used" -msgstr "Пароль: " +msgstr "Использован пароль" #: command.c:891 command.c:895 command.c:903 command.c:936 msgid "false" -msgstr "" +msgstr "нет" #: command.c:891 command.c:895 command.c:903 command.c:936 msgid "true" -msgstr "" +msgstr "да" #: command.c:894 msgid "GSSAPI Authenticated" -msgstr "" +msgstr "Аутентификация GSSAPI" #: command.c:898 msgid "Backend PID" -msgstr "" +msgstr "PID обслуживающего процесса" #: command.c:902 -#, fuzzy msgid "SSL Connection" -msgstr "Соединение\n" +msgstr "SSL-подключение" #: command.c:922 msgid "SSL Library" -msgstr "" +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 @@ -345,24 +339,23 @@ msgstr "неизвестно" #: command.c:925 msgid "SSL Protocol" -msgstr "" +msgstr "Протокол SSL" #: command.c:928 msgid "SSL Key Bits" -msgstr "" +msgstr "Бит в ключе SSL" #: command.c:931 msgid "SSL Cipher" -msgstr "" +msgstr "Шифр SSL" #: command.c:934 -#, fuzzy msgid "SSL Compression" -msgstr "Сжатие" +msgstr "Сжатие SSL" #: command.c:938 msgid "ALPN" -msgstr "" +msgstr "ALPN" #: command.c:939 command.c:4519 msgid "none" @@ -405,7 +398,7 @@ msgstr "Ошибки не было." #: command.c:1766 command.c:1973 command.c:1999 command.c:3380 #, c-format msgid "\\%s not allowed in pipeline mode" -msgstr "" +msgstr "\\%s не допускается в конвейерном режиме" #: command.c:1822 #, c-format @@ -415,7 +408,7 @@ msgstr "\\%s: отсутствует правая скобка" #: command.c:1948 #, c-format msgid "\\getresults: invalid number of requested results" -msgstr "" +msgstr "\\getresults: запрошено неверное количество результатов" #: command.c:2205 #, c-format @@ -478,11 +471,12 @@ msgstr "История записана в файл \"%s\".\n" #, 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 "" +msgstr "\\sendpipeline не допускается вне конвейерного режима" #: command.c:2947 #, c-format @@ -510,12 +504,12 @@ msgstr "Секундомер выключен." #: command.c:3208 #, c-format msgid "\\%s: not currently in restricted mode" -msgstr "" +msgstr "\\%s: ограниченный режим не активен" #: command.c:3218 #, c-format msgid "\\%s: wrong key" -msgstr "" +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 @@ -1144,7 +1138,7 @@ msgstr "Команда не выдала результат, либо в рез #: common.c:1670 #, c-format msgid "No pending results to get" -msgstr "" +msgstr "Нет результатов, ожидающих получения" #: common.c:1748 #, c-format @@ -1154,12 +1148,12 @@ msgstr "получить результаты в блочном режиме н #: common.c:1797 #, c-format msgid "Pipeline aborted, command did not run" -msgstr "" +msgstr "Конвейерный режим прерван, команда не была выполнена" #: common.c:1893 #, c-format msgid "COPY in a pipeline is not supported, aborting connection" -msgstr "" +msgstr "COPY в конвейерном режиме не поддерживается, соединение прерывается" #: copy.c:98 #, c-format @@ -1360,9 +1354,9 @@ msgid "List of tablespaces" msgstr "Список табличных пространств" #: describe.c:316 -#, fuzzy, c-format +#, c-format msgid "\\df only takes [%s] as options" -msgstr "\\df принимает в качестве параметров только [anptwS+]" +msgstr "\\df принимает в качестве параметров только [%s]" #: describe.c:324 #, c-format @@ -1450,7 +1444,7 @@ msgstr "нет" #: describe.c:422 describe.c:840 describe.c:5004 describe.c:7128 msgid "Leakproof?" -msgstr "" +msgstr "Герметичная?" #: describe.c:427 msgid "Language" @@ -1575,9 +1569,8 @@ msgid "schema" msgstr "схема" #: describe.c:1243 -#, fuzzy msgid "large object" -msgstr "Большие объекты" +msgstr "большой объект" #: describe.c:1265 msgid "Default access privileges" @@ -1905,19 +1898,16 @@ msgid "Publications:" msgstr "Публикации:" #: describe.c:3127 -#, fuzzy msgid "Not-null constraints:" -msgstr "ограничение таблицы" +msgstr "Ограничения NOT NULL:" #: describe.c:3141 -#, fuzzy msgid " (local, inherited)" -msgstr "Не наследуется" +msgstr " (локальное, не наследуется)" #: describe.c:3142 -#, fuzzy msgid " (inherited)" -msgstr "Не наследуется" +msgstr " (наследуется)" #: describe.c:3175 msgid "View definition:" @@ -2139,98 +2129,93 @@ msgid "Access method" msgstr "Метод доступа" #: describe.c:4180 -#, fuzzy, c-format +#, c-format msgid "Did not find any relations named \"%s\"." -msgstr "Отношение \"%s\" не найдено." +msgstr "Отношения с именем \"%s\" не найдены." #: describe.c:4183 -#, fuzzy, c-format +#, c-format msgid "Did not find any tables named \"%s\"." -msgstr "Расширение \"%s\" не найдено." +msgstr "Таблицы с именем \"%s\" не найдены." #: describe.c:4186 -#, fuzzy, c-format +#, c-format msgid "Did not find any indexes named \"%s\"." -msgstr "Расширение \"%s\" не найдено." +msgstr "Индексы с именем \"%s\" не найдены." #: describe.c:4189 -#, fuzzy, c-format +#, c-format msgid "Did not find any views named \"%s\"." -msgstr "Расширение \"%s\" не найдено." +msgstr "Представления с именем \"%s\" не найдены." #: describe.c:4192 -#, fuzzy, c-format +#, c-format msgid "Did not find any materialized views named \"%s\"." -msgstr "Отношение \"%s\" не найдено." +msgstr "Материализованные представления с именем \"%s\" не найдены." #: describe.c:4195 -#, fuzzy, c-format +#, c-format msgid "Did not find any sequences named \"%s\"." -msgstr "Расширение \"%s\" не найдено." +msgstr "Последовательности с именем \"%s\" не найдены." #: describe.c:4198 -#, fuzzy, c-format +#, c-format msgid "Did not find any foreign tables named \"%s\"." -msgstr "Отношение \"%s\" не найдено." +msgstr "Сторонние таблицы с именем \"%s\" не найдены." #: describe.c:4209 -#, fuzzy, c-format +#, c-format msgid "Did not find any tables." -msgstr "Никакие расширения не найдены." +msgstr "Никакие таблицы не найдены." #: describe.c:4211 -#, fuzzy, c-format +#, c-format msgid "Did not find any indexes." -msgstr "Никакие расширения не найдены." +msgstr "Никакие индексы не найдены." #: describe.c:4213 -#, fuzzy, c-format +#, c-format msgid "Did not find any views." -msgstr "Никакие параметры не найдены." +msgstr "Никакие представления не найдены." #: describe.c:4215 -#, fuzzy, c-format +#, c-format msgid "Did not find any materialized views." -msgstr "создать материализованное представление" +msgstr "Никакие материализованные представления не найдены." #: describe.c:4217 -#, fuzzy, c-format +#, c-format msgid "Did not find any sequences." -msgstr "Никакие параметры не найдены." +msgstr "Никакие последовательности не найдены." #: describe.c:4219 -#, fuzzy, c-format +#, c-format msgid "Did not find any foreign tables." -msgstr "Отношения не найдены." +msgstr "Никакие сторонние таблицы не найдены." #: describe.c:4227 msgid "List of relations" msgstr "Список отношений" #: describe.c:4228 -#, fuzzy msgid "List of tables" -msgstr "Список табличных пространств" +msgstr "Список таблиц" #: describe.c:4229 -#, fuzzy msgid "List of indexes" -msgstr "Список доменов" +msgstr "Список индексов" #: describe.c:4230 -#, fuzzy msgid "List of views" -msgstr "Список ролей" +msgstr "Список представлений" #: describe.c:4231 -#, fuzzy msgid "List of materialized views" -msgstr "материализованное представление" +msgstr "Список материализованных представлений" #: describe.c:4232 -#, fuzzy msgid "List of sequences" -msgstr "Список схем" +msgstr "Список последовательностей" #: describe.c:4233 describe.c:6163 msgid "List of foreign tables" @@ -2586,9 +2571,8 @@ msgid "List of user mappings" msgstr "Список сопоставлений пользователей" #: describe.c:6196 -#, fuzzy msgid "Default version" -msgstr "Строка итогов включена.\n" +msgstr "Версия по умолчанию" #: describe.c:6217 msgid "List of installed extensions" @@ -2649,9 +2633,8 @@ msgid "Truncates" msgstr "Опустошения" #: describe.c:6440 describe.c:6574 describe.c:6652 -#, fuzzy msgid "Generated columns" -msgstr "целевой_столбец" +msgstr "Генерируемые столбцы" #: describe.c:6444 describe.c:6654 msgid "Via root" @@ -3198,12 +3181,16 @@ msgid "" " \\restrict RESTRICT_KEY\n" " enter restricted mode with provided key\n" msgstr "" +" \\restrict ОГРАНИЧИВАЮЩИЙ_КЛЮЧ\n" +" войти в ограниченный режим с указанным ключом\n" #: help.c:176 msgid "" " \\unrestrict RESTRICT_KEY\n" " exit restricted mode if key matches\n" msgstr "" +" \\unrestrict ОГРАНИЧИВАЮЩИЙ_КЛЮЧ\n" +" выйти из ограниченного режима, если ключ совпадает\n" #: help.c:178 msgid "" @@ -3367,307 +3354,257 @@ msgid "Informational\n" msgstr "Информационные\n" #: help.c:221 -#, fuzzy msgid "" " (options: S = show system objects, x = expanded mode, + = additional " "detail)\n" msgstr "" -" (дополнения: S = показывать системные объекты, + = дополнительные " -"подробности)\n" +" (дополнения: S = показывать системные объекты, x = расширенный режим, + = " +"дополнительные подробности)\n" #: help.c:222 -#, fuzzy msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr "" -" \\d[S+] список таблиц, представлений и " +" \\d[Sx+] список таблиц, представлений и " "последовательностей\n" #: help.c:223 -#, fuzzy msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr "" -" \\d[S+] ИМЯ описание таблицы, представления, " +" \\d[S+] ИМЯ описание таблицы, представления, " "последовательности\n" " или индекса\n" #: help.c:224 -#, fuzzy msgid " \\da[Sx] [PATTERN] list aggregates\n" -msgstr " \\da[S] [МАСКА] список агрегатных функций\n" +msgstr " \\da[Sx] [МАСКА] список агрегатных функций\n" #: help.c:225 -#, fuzzy msgid " \\dA[x+] [PATTERN] list access methods\n" -msgstr " \\dA[+] [МАСКА] список методов доступа\n" +msgstr " \\dA[x+] [МАСКА] список методов доступа\n" # well-spelled: МСК #: help.c:226 -#, fuzzy msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" -msgstr " \\dAc[+] [МСК_МД [МСК_ТИПА]] список классов операторов\n" +msgstr " \\dAc[x+] [МСК_МД [МСК_ТИПА]] список классов операторов\n" # well-spelled: МСК #: help.c:227 -#, fuzzy msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" -msgstr " \\dAf[+] [МСК_МД [МСК_ТИПА]] список семейств операторов\n" +msgstr " \\dAf[x+] [МСК_МД [МСК_ТИПА]] список семейств операторов\n" # well-spelled: МСК #: help.c:228 -#, fuzzy msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr "" -" \\dAo[+] [МСК_МД [МСК_СОП]] список операторов из семейств операторов\n" +" \\dAo[x+] [МСК_МД [МСК_СОП]] список операторов из семейств операторов\n" # well-spelled: МСК #: help.c:229 -#, fuzzy msgid "" " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator " "families\n" -msgstr " \\dAp[+] [МСК_МД [МСК_СОП]] список опорных функций из семейств\n" +msgstr " \\dAp[x+] [МСК_МД [МСК_СОП]] список опорных функций из семейств\n" #: help.c:230 -#, fuzzy msgid " \\db[x+] [PATTERN] list tablespaces\n" -msgstr " \\db[+] [МАСКА] список табличных пространств\n" +msgstr " \\db[x+] [МАСКА] список табличных пространств\n" #: help.c:231 -#, fuzzy msgid " \\dc[Sx+] [PATTERN] list conversions\n" -msgstr " \\dc[S+] [МАСКА] список преобразований\n" +msgstr " \\dc[Sx+] [МАСКА] список преобразований\n" #: help.c:232 -#, fuzzy msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" -msgstr " \\dconfig[+] [МАСКА] список параметров конфигурации\n" +msgstr " \\dconfig[x+] [МАСКА] список параметров конфигурации\n" #: help.c:233 -#, fuzzy msgid " \\dC[x+] [PATTERN] list casts\n" -msgstr " \\dC[+] [МАСКА] список приведений типов\n" +msgstr " \\dC[x+] [МАСКА] список приведений типов\n" #: help.c:234 -#, fuzzy msgid "" " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr "" -" \\dd[S] [МАСКА] описания объектов, не выводимые в других режимах\n" +" \\dd[Sx] [МАСКА] описания объектов, не выводимые в других режимах\n" #: help.c:235 -#, fuzzy msgid " \\dD[Sx+] [PATTERN] list domains\n" -msgstr " \\dD[S+] [МАСКА] список доменов\n" +msgstr " \\dD[Sx+] [МАСКА] список доменов\n" #: help.c:236 -#, fuzzy msgid " \\ddp[x] [PATTERN] list default privileges\n" -msgstr " \\ddp [МАСКА] список прав по умолчанию\n" +msgstr " \\ddp[x] [МАСКА] список прав по умолчанию\n" #: help.c:237 -#, fuzzy msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" -msgstr " \\dE[S+] [МАСКА] список сторонних таблиц\n" +msgstr " \\dE[Sx+] [МАСКА] список сторонних таблиц\n" #: help.c:238 -#, fuzzy msgid " \\des[x+] [PATTERN] list foreign servers\n" -msgstr " \\des[+] [МАСКА] список сторонних серверов\n" +msgstr " \\des[x+] [МАСКА] список сторонних серверов\n" #: help.c:239 -#, fuzzy msgid " \\det[x+] [PATTERN] list foreign tables\n" -msgstr " \\det[+] [МАСКА] список сторонних таблиц\n" +msgstr " \\det[x+] [МАСКА] список сторонних таблиц\n" #: help.c:240 -#, fuzzy msgid " \\deu[x+] [PATTERN] list user mappings\n" -msgstr " \\deu[+] [МАСКА] список сопоставлений пользователей\n" +msgstr " \\deu[x+] [МАСКА] список сопоставлений пользователей\n" #: help.c:241 -#, fuzzy msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" -msgstr " \\dew[+] [МАСКА] список обёрток сторонних данных\n" +msgstr " \\dew[x+] [МАСКА] список обёрток сторонних данных\n" # well-spelled: МСК, ФУНК #: help.c:242 -#, fuzzy msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] " "functions\n" msgstr "" -" \\df[anptw][S+] [МСК_ФУНК [МСК_ТИПА ...]]\n" +" \\df[anptw][Sx+] [МСК_ФУНК [МСК_ТИПА ...]]\n" " список функций [только агрегатных/обычных/процедур/" "триггеров/оконных]\n" #: help.c:244 -#, fuzzy msgid " \\dF[x+] [PATTERN] list text search configurations\n" -msgstr " \\dF[+] [МАСКА] список конфигураций текстового поиска\n" +msgstr " \\dF[x+] [МАСКА] список конфигураций текстового поиска\n" #: help.c:245 -#, fuzzy msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" -msgstr " \\dFd[+] [МАСКА] список словарей текстового поиска\n" +msgstr " \\dFd[x+] [МАСКА] список словарей текстового поиска\n" #: help.c:246 -#, fuzzy msgid " \\dFp[x+] [PATTERN] list text search parsers\n" -msgstr " \\dFp[+] [МАСКА] список анализаторов текстового поиска\n" +msgstr " \\dFp[x+] [МАСКА] список анализаторов текстового поиска\n" #: help.c:247 -#, fuzzy msgid " \\dFt[x+] [PATTERN] list text search templates\n" -msgstr " \\dFt[+] [МАСКА] список шаблонов текстового поиска\n" +msgstr " \\dFt[x+] [МАСКА] список шаблонов текстового поиска\n" #: help.c:248 -#, fuzzy msgid " \\dg[Sx+] [PATTERN] list roles\n" -msgstr " \\dg[S+] [МАСКА] список ролей\n" +msgstr " \\dg[Sx+] [МАСКА] список ролей\n" #: help.c:249 -#, fuzzy msgid " \\di[Sx+] [PATTERN] list indexes\n" -msgstr " \\di[S+] [МАСКА] список индексов\n" +msgstr " \\di[Sx+] [МАСКА] список индексов\n" #: help.c:250 -#, fuzzy msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr "" -" \\dl[+] список больших объектов (то же, что и \\lo_list)\n" +" \\dl[x+] список больших объектов (то же, что и \\lo_list)\n" #: help.c:251 -#, fuzzy msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" -msgstr " \\dL[S+] [МАСКА] список языков процедур\n" +msgstr " \\dL[Sx+] [МАСКА] список процедурных языков\n" #: help.c:252 -#, fuzzy msgid " \\dm[Sx+] [PATTERN] list materialized views\n" -msgstr " \\dm[S+] [МАСКА] список материализованных представлений\n" +msgstr " \\dm[Sx+] [МАСКА] список материализованных представлений\n" #: help.c:253 -#, fuzzy msgid " \\dn[Sx+] [PATTERN] list schemas\n" -msgstr " \\dn[S+] [МАСКА] список схем\n" +msgstr " \\dn[Sx+] [МАСКА] список схем\n" # well-spelled: МСК #: help.c:254 -#, fuzzy msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" msgstr "" -" \\do[S+] [МСК_ОП [МСК_ТИПА [МСК_ТИПА]]]\n" +" \\do[Sx+] [МСК_ОП [МСК_ТИПА [МСК_ТИПА]]]\n" " список операторов\n" #: help.c:256 -#, fuzzy msgid " \\dO[Sx+] [PATTERN] list collations\n" -msgstr " \\dO[S+] [МАСКА] список правил сортировки\n" +msgstr " \\dO[Sx+] [МАСКА] список правил сортировки\n" #: help.c:257 -#, fuzzy msgid "" " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr "" -" \\dp[S] [МАСКА] список прав доступа к таблицам, представлениям и\n" +" \\dp[Sx] [МАСКА] список прав доступа к таблицам, представлениям и\n" " последовательностям\n" #: help.c:258 -#, fuzzy msgid "" " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations " "[n=nested]\n" msgstr "" -" \\dP[itn+] [МАСКА] список секционированных отношений\n" +" \\dP[itnx+] [МАСКА] список секционированных отношений\n" " [только индексов (i)/таблиц (t)], с вложенностью " "(n)\n" # well-spelled: МСК #: help.c:259 -#, fuzzy msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" -msgstr " \\drds [МСК_РОЛИ [МСК_БД]] список параметров роли на уровне БД\n" +msgstr "" +" \\drds[x] [МСК_РОЛИ [МСК_БД]]\n" +" список параметров роли на уровне БД\n" #: help.c:261 -#, fuzzy msgid " \\drg[Sx] [PATTERN] list role grants\n" -msgstr " \\drg[S] [МАСКА] список назначений ролей\n" +msgstr " \\drg[Sx] [МАСКА] список назначений ролей\n" #: help.c:262 -#, fuzzy msgid " \\dRp[x+] [PATTERN] list replication publications\n" -msgstr " \\dRp[+] [МАСКА] список публикаций для репликации\n" +msgstr " \\dRp[x+] [МАСКА] список публикаций для репликации\n" #: help.c:263 -#, fuzzy msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" -msgstr " \\dRs[+] [МАСКА] список подписок на репликацию\n" +msgstr " \\dRs[x+] [МАСКА] список подписок на репликацию\n" #: help.c:264 -#, fuzzy msgid " \\ds[Sx+] [PATTERN] list sequences\n" -msgstr " \\ds[S+] [МАСКА] список последовательностей\n" +msgstr " \\ds[Sx+] [МАСКА] список последовательностей\n" #: help.c:265 -#, fuzzy msgid " \\dt[Sx+] [PATTERN] list tables\n" -msgstr " \\dt[S+] [МАСКА] список таблиц\n" +msgstr " \\dt[Sx+] [МАСКА] список таблиц\n" #: help.c:266 -#, fuzzy msgid " \\dT[Sx+] [PATTERN] list data types\n" -msgstr " \\dT[S+] [МАСКА] список типов данных\n" +msgstr " \\dT[Sx+] [МАСКА] список типов данных\n" #: help.c:267 -#, fuzzy msgid " \\du[Sx+] [PATTERN] list roles\n" -msgstr " \\du[S+] [МАСКА] список ролей\n" +msgstr " \\du[Sx+] [МАСКА] список ролей\n" #: help.c:268 -#, fuzzy msgid " \\dv[Sx+] [PATTERN] list views\n" -msgstr " \\dv[S+] [МАСКА] список представлений\n" +msgstr " \\dv[Sx+] [МАСКА] список представлений\n" #: help.c:269 -#, fuzzy msgid " \\dx[x+] [PATTERN] list extensions\n" -msgstr " \\dx[+] [МАСКА] список расширений\n" +msgstr " \\dx[x+] [МАСКА] список расширений\n" #: help.c:270 -#, fuzzy msgid " \\dX[x] [PATTERN] list extended statistics\n" -msgstr " \\dX [МАСКА] список расширенных статистик\n" +msgstr " \\dX[x] [МАСКА] список расширенных статистик\n" #: help.c:271 -#, fuzzy msgid " \\dy[x+] [PATTERN] list event triggers\n" -msgstr " \\dy[+] [МАСКА] список событийных триггеров\n" +msgstr " \\dy[x+] [МАСКА] список событийных триггеров\n" #: help.c:272 -#, fuzzy msgid " \\l[x+] [PATTERN] list databases\n" -msgstr " \\l[+] [МАСКА] список баз данных\n" +msgstr " \\l[x+] [МАСКА] список баз данных\n" #: help.c:273 -#, fuzzy msgid " \\sf[+] FUNCNAME show a function's definition\n" -msgstr " \\sf[+] ИМЯ_ФУНКЦИИ показать определение функции\n" +msgstr " \\sf[+] ИМЯ_ФУНКЦИИ показать определение функции\n" # well-spelled: ПРЕДСТ #: help.c:274 -#, fuzzy msgid " \\sv[+] VIEWNAME show a view's definition\n" -msgstr " \\sv[+] ИМЯ_ПРЕДСТ показать определение представления\n" +msgstr " \\sv[+] ИМЯ_ПРЕДСТ показать определение представления\n" #: help.c:275 -#, fuzzy msgid " \\z[Sx] [PATTERN] same as \\dp\n" -msgstr " \\z[S] [МАСКА] то же, что и \\dp\n" +msgstr " \\z[Sx] [МАСКА] то же, что и \\dp\n" #: help.c:278 msgid "Large Objects\n" @@ -3686,9 +3623,8 @@ msgstr "" " прочитать большой объект из файла\n" #: help.c:282 -#, fuzzy msgid " \\lo_list[x+] list large objects\n" -msgstr " \\lo_list[+] список больших объектов\n" +msgstr " \\lo_list[x+] список больших объектов\n" #: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" @@ -3857,7 +3793,7 @@ msgstr " \\unset ИМЯ сбросить (удалить) внут #: help.c:334 msgid "Extended Query Protocol\n" -msgstr "" +msgstr "Протокол расширенных запросов\n" #: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" @@ -3869,53 +3805,65 @@ msgid "" " set query parameters for an existing prepared " "statement\n" msgstr "" +" \\bind_named ИМЯ_ОПЕР [ПАРАМ]...\n" +" задать параметры запроса для существующего " +"подготовленного\n" +" оператора\n" #: help.c:338 msgid "" " \\close_prepared STMT_NAME\n" " close an existing prepared statement\n" msgstr "" +" \\close_prepared ИМЯ_ОПЕР\n" +" закрыть существующий подготовленный оператор\n" #: help.c:340 msgid " \\endpipeline exit pipeline mode\n" -msgstr "" +msgstr " \\endpipeline выйти из конвейерного режима\n" #: help.c:341 -#, fuzzy msgid " \\flush flush output data to the server\n" -msgstr " \\p вывести содержимое буфера запросов\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 [КОЛ_РЕЗ] прочитать заданное количество результатов либо " +"все,\n" +" если параметр не указан\n" #: help.c:344 -#, fuzzy msgid " \\parse STMT_NAME create a prepared statement\n" -msgstr "освободить подготовленный оператор" +msgstr " \\parse ИМЯ_ОПЕР создать подготовленный оператор\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 "" +msgstr " \\startpipeline перейти в конвейерный режим\n" #: help.c:347 msgid "" " \\syncpipeline add a synchronisation point to an ongoing " "pipeline\n" msgstr "" +" \\syncpipeline добавить точку синхронизации в текущий конвейер\n" #: help.c:386 msgid "" @@ -4266,6 +4214,9 @@ msgid "" " WATCH_INTERVAL\n" " number of seconds \\watch waits between executions (default %s)\n" msgstr "" +" WATCH_INTERVAL\n" +" сколько секунд \\watch будет ждать перед следующим выполнением запроса\n" +" (по умолчанию %s)\n" #: help.c:475 msgid "" @@ -5740,9 +5691,8 @@ msgid "error_action" msgstr "действие_при_ошибке" #: sql_help.c:2032 -#, fuzzy msgid "maxerror" -msgstr "ошибка: " +msgstr "макс_ошибок" #: sql_help.c:2033 msgid "encoding_name" @@ -6063,7 +6013,7 @@ msgstr "имя_функции_в_sql" #: sql_help.c:3187 msgid "referenced_table_name" -msgstr "ссылающаяся_таблица" +msgstr "целевая_таблица" #: sql_help.c:3188 msgid "transition_relation_name" @@ -6197,9 +6147,8 @@ msgid "cursor_name" msgstr "имя_курсора" #: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 -#, fuzzy msgid "output_alias" -msgstr "имя_результата" +msgstr "псевдоним_результата" #: sql_help.c:3374 sql_help.c:4065 sql_help.c:4159 sql_help.c:5029 msgid "output_expression" @@ -7274,29 +7223,33 @@ msgid "invalid value \"%s\" for \"%s\": integer expected" msgstr "неправильное значение \"%s\" для \"%s\": ожидалось целое" #: variables.c:207 -#, fuzzy, c-format +#, c-format msgid "invalid input syntax for variable \"%s\"" -msgstr "не удалось установить переменную \"%s\"\n" +msgstr "неправильный синтаксис значения для переменной \"%s\"" #: variables.c:218 -#, fuzzy, c-format +#, c-format msgid "invalid value \"%s\" for variable \"%s\": must be greater than %.2f" -msgstr "неправильное значение \"%s\" для \"%s\": ожидалось целое" +msgstr "" +"значение \"%s\" не подходит для переменной \"%s\"; оно должно быть больше " +"%.2f" #: variables.c:225 -#, fuzzy, c-format +#, c-format msgid "invalid value \"%s\" for variable \"%s\": must be less than %.2f" -msgstr "неправильное значение \"%s\" для \"%s\": ожидалось целое" +msgstr "" +"значение \"%s\" не подходит для переменной \"%s\"; оно должно быть меньше " +"%.2f" #: variables.c:241 -#, fuzzy, c-format +#, c-format msgid "value \"%s\" is out of range for variable \"%s\"" -msgstr "%s: не удалось установить переменную \"%s\"\n" +msgstr "значение \"%s\" вне диапазона для переменной \"%s\"" #: variables.c:247 -#, fuzzy, c-format +#, c-format msgid "invalid value \"%s\" for variable \"%s\"" -msgstr "неправильное значение \"%s\" для \"%s\": ожидалось целое" +msgstr "неправильное значение \"%s\" для переменной \"%s\"" #: variables.c:294 #, c-format diff --git a/src/bin/psql/po/sv.po b/src/bin/psql/po/sv.po index a778caa83d466..483a2570b97aa 100644 --- a/src/bin/psql/po/sv.po +++ b/src/bin/psql/po/sv.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 17\n" +"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-08-17 09:01+0200\n" +"PO-Revision-Date: 2025-09-07 15:44+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" diff --git a/src/bin/scripts/po/es.po b/src/bin/scripts/po/es.po index 97f4e2e30684e..6d203ee979c4d 100644 --- a/src/bin/scripts/po/es.po +++ b/src/bin/scripts/po/es.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: pgscripts (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:51+0000\n" -"PO-Revision-Date: 2024-11-16 14:24+0100\n" +"POT-Creation-Date: 2025-09-20 09:50+0000\n" +"PO-Revision-Date: 2025-09-21 11:41+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -23,22 +23,22 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: BlackCAT 1.1\n" -#: ../../../src/common/logging.c:276 +#: ../../../src/common/logging.c:279 #, c-format msgid "error: " msgstr "error: " -#: ../../../src/common/logging.c:283 +#: ../../../src/common/logging.c:286 #, c-format msgid "warning: " msgstr "precaución: " -#: ../../../src/common/logging.c:294 +#: ../../../src/common/logging.c:297 #, c-format msgid "detail: " msgstr "detalle: " -#: ../../../src/common/logging.c:301 +#: ../../../src/common/logging.c:304 #, c-format msgid "hint: " msgstr "consejo: " @@ -54,44 +54,44 @@ 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: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 "no se pudo abrir el archivo «%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 "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%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 "esta instalación no soporta el método de sync «%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 "no se pudo abrir el directorio «%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 "no se pudo leer el directorio «%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 "no se pudo sincronizar (fsync) archivo «%s»: %m" -#: ../../common/file_utils.c:498 +#: ../../common/file_utils.c:520 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" @@ -181,8 +181,9 @@ msgstr "Interrumpido\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 "No se puede imprimir el contenido de la tabla: el número de celdas %lld es igual o mayor al máximo %lld.\n" +#| msgid "Cannot print table contents: number of cells %lld is equal to or exceeds maximum %lld.\n" +msgid "Cannot print table contents: number of cells % is equal to or exceeds maximum %zu.\n" +msgstr "No se puede imprimir el contenido de la tabla: el número de celdas % es igual o mayor al máximo %zu.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -191,8 +192,9 @@ msgstr "No se puede agregar un encabezado al contenido de la tabla: la cantidad #: ../../fe_utils/print.c:3272 #, c-format -msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" -msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de %lld ha sido excedida.\n" +#| msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" +msgid "Cannot add cell to table content: total cell count of % exceeded.\n" +msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de % ha sido excedida.\n" #: ../../fe_utils/print.c:3530 #, c-format @@ -219,41 +221,41 @@ msgstr "el argumento de la orden de shell contiene un salto de línea o retorno msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "el nombre de base de datos contiene un salto de línea o retorno de carro: «%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 "Pruebe «%s --help» para mayor información." -#: 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 "demasiados argumentos en la línea de órdenes (el primero es «%s»)" -#: clusterdb.c:149 +#: clusterdb.c:148 #, c-format msgid "cannot cluster all databases and a specific one at the same time" msgstr "no se puede reordenar todas las bases de datos y una de ellas en particular simultáneamente" -#: clusterdb.c:214 +#: clusterdb.c:213 #, c-format msgid "clustering of table \"%s\" in database \"%s\" failed: %s" msgstr "falló el reordenamiento de la tabla «%s» en la base de datos «%s»: %s" -#: clusterdb.c:217 +#: clusterdb.c:216 #, c-format msgid "clustering of database \"%s\" failed: %s" msgstr "falló el reordenamiento de la base de datos «%s»: %s" -#: clusterdb.c:248 +#: clusterdb.c:247 #, c-format msgid "%s: clustering database \"%s\"\n" msgstr "%s: reordenando la base de datos «%s»\n" -#: clusterdb.c:274 +#: clusterdb.c:273 #, c-format msgid "" "%s clusters all previously clustered tables in a database.\n" @@ -263,19 +265,19 @@ msgstr "" "en una base de datos.\n" "\n" -#: clusterdb.c:275 createdb.c:300 createuser.c:417 dropdb.c:171 dropuser.c:171 -#: pg_isready.c:226 reindexdb.c:876 vacuumdb.c:1171 +#: 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 "Empleo:\n" -#: clusterdb.c:276 reindexdb.c:877 vacuumdb.c:1172 +#: clusterdb.c:275 reindexdb.c:899 vacuumdb.c:1338 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPCIÓN]... [BASE-DE-DATOS]\n" -#: clusterdb.c:277 createdb.c:302 createuser.c:419 dropdb.c:173 dropuser.c:173 -#: pg_isready.c:229 reindexdb.c:878 vacuumdb.c:1173 +#: 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" @@ -284,48 +286,48 @@ msgstr "" "\n" "Opciones:\n" -#: clusterdb.c:278 +#: clusterdb.c:277 #, c-format msgid " -a, --all cluster all databases\n" msgstr " -a, --all reordenar todas las bases de datos\n" -#: clusterdb.c:279 +#: clusterdb.c:278 #, c-format msgid " -d, --dbname=DBNAME database to cluster\n" msgstr " -d, --dbname=BASE base de datos a reordenar\n" -#: clusterdb.c:280 createuser.c:425 dropdb.c:174 dropuser.c:174 +#: 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 mostrar las órdenes a medida que se ejecutan\n" -#: clusterdb.c:281 +#: clusterdb.c:280 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet no escribir ningún mensaje\n" -#: clusterdb.c:282 +#: clusterdb.c:281 #, c-format msgid " -t, --table=TABLE cluster specific table(s) only\n" msgstr " -t, --table=TABLA reordenar sólo esta(s) tabla(s)\n" -#: clusterdb.c:283 +#: clusterdb.c:282 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose desplegar varios mensajes informativos\n" -#: clusterdb.c:284 createuser.c:441 dropdb.c:177 dropuser.c:177 +#: 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 mostrar información de versión y salir\n" -#: clusterdb.c:285 createuser.c:449 dropdb.c:179 dropuser.c:179 +#: clusterdb.c:284 createuser.c:449 dropdb.c:179 dropuser.c:179 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: clusterdb.c:286 createdb.c:319 createuser.c:450 dropdb.c:180 dropuser.c:180 -#: pg_isready.c:235 reindexdb.c:893 vacuumdb.c:1202 +#: 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" @@ -334,37 +336,37 @@ msgstr "" "\n" "Opciones de conexión:\n" -#: clusterdb.c:287 createuser.c:451 dropdb.c:181 dropuser.c:181 vacuumdb.c:1203 +#: 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=ANFITRIÓN nombre del servidor o directorio del socket\n" -#: clusterdb.c:288 createuser.c:452 dropdb.c:182 dropuser.c:182 vacuumdb.c:1204 +#: 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=PUERTO puerto del servidor\n" -#: clusterdb.c:289 dropdb.c:183 vacuumdb.c:1205 +#: clusterdb.c:288 dropdb.c:183 vacuumdb.c:1372 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=USUARIO nombre de usuario para la conexión\n" -#: clusterdb.c:290 createuser.c:454 dropdb.c:184 dropuser.c:184 vacuumdb.c:1206 +#: 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 nunca pedir contraseña\n" -#: clusterdb.c:291 createuser.c:455 dropdb.c:185 dropuser.c:185 vacuumdb.c:1207 +#: 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 forzar la petición de contraseña\n" -#: clusterdb.c:292 dropdb.c:186 vacuumdb.c:1208 +#: clusterdb.c:291 dropdb.c:186 vacuumdb.c:1375 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=BASE base de datos de mantención alternativa\n" -#: clusterdb.c:293 +#: clusterdb.c:292 #, c-format msgid "" "\n" @@ -373,8 +375,8 @@ msgstr "" "\n" "Lea la descripción de la orden CLUSTER de SQL para obtener mayores detalles.\n" -#: clusterdb.c:294 createdb.c:327 createuser.c:456 dropdb.c:187 dropuser.c:186 -#: pg_isready.c:240 reindexdb.c:901 vacuumdb.c:1210 +#: 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" @@ -383,13 +385,13 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: clusterdb.c:295 createdb.c:328 createuser.c:457 dropdb.c:188 dropuser.c:187 -#: pg_isready.c:241 reindexdb.c:902 vacuumdb.c:1211 +#: 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 "Sitio web de %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" @@ -397,23 +399,23 @@ msgstr[0] "la consulta retornó %d fila en lugar de una: %s" msgstr[1] "la consulta retornó %d filas en lugar de una: %s" #. translator: abbreviation for "yes" -#: common.c:132 +#: common.c:131 msgid "y" msgstr "s" #. translator: abbreviation for "no" -#: common.c:134 +#: common.c:133 msgid "n" msgstr "n" #. translator: This is a question followed by the translated options for #. "yes" and "no". -#: common.c:144 +#: common.c:143 #, c-format msgid "%s (%s/%s) " msgstr "%s (%s/%s) " -#: common.c:165 +#: common.c:164 #, c-format msgid "Please answer \"%s\" or \"%s\".\n" msgstr "Por favor conteste «%s» o «%s».\n" @@ -452,7 +454,7 @@ msgstr " %s [OPCIÓN]... [NOMBRE] [DESCRIPCIÓN]\n" msgid " -D, --tablespace=TABLESPACE default tablespace for the database\n" msgstr " -D, --tablespace=TBLSPC tablespace por omisión de la base de datos\n" -#: createdb.c:304 reindexdb.c:882 +#: createdb.c:304 reindexdb.c:904 #, c-format msgid " -e, --echo show the commands being sent to the server\n" msgstr " -e, --echo mostrar las órdenes enviadas al servidor\n" @@ -519,42 +521,42 @@ msgstr "" msgid " -T, --template=TEMPLATE template database to copy\n" msgstr " -T, --template=PATRÓN base de datos patrón a copiar\n" -#: createdb.c:317 reindexdb.c:891 +#: createdb.c:317 reindexdb.c:913 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: createdb.c:318 reindexdb.c:892 +#: createdb.c:318 reindexdb.c:914 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: createdb.c:320 reindexdb.c:894 +#: createdb.c:320 reindexdb.c:916 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr " -h, --host=ANFITRIÓN nombre del servidor o directorio del socket\n" -#: createdb.c:321 reindexdb.c:895 +#: createdb.c:321 reindexdb.c:917 #, c-format msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=PUERTO puerto del servidor\n" -#: createdb.c:322 reindexdb.c:896 +#: createdb.c:322 reindexdb.c:918 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=USUARIO nombre de usuario para la conexión\n" -#: createdb.c:323 reindexdb.c:897 +#: createdb.c:323 reindexdb.c:919 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password nunca pedir contraseña\n" -#: createdb.c:324 reindexdb.c:898 +#: createdb.c:324 reindexdb.c:920 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password forzar la petición de contraseña\n" -#: createdb.c:325 reindexdb.c:899 +#: createdb.c:325 reindexdb.c:921 #, c-format msgid " --maintenance-db=DBNAME alternate maintenance database\n" msgstr " --maintenance-db=BASE base de datos de mantención alternativa\n" @@ -944,54 +946,54 @@ msgstr "" msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=USUARIO nombre de usuario para la conexión\n" -#: reindexdb.c:210 +#: reindexdb.c:217 #, c-format msgid "cannot use multiple jobs to reindex system catalogs" msgstr "no se puede usar múltiples procesos para reindexar índices de sistema" -#: reindexdb.c:215 +#: reindexdb.c:222 #, c-format msgid "cannot reindex all databases and a specific one at the same time" msgstr "no se puede reindexar todas las bases de datos y una de ellas en particular simultáneamente" -#: reindexdb.c:296 reindexdb.c:303 vacuumdb.c:514 vacuumdb.c:521 vacuumdb.c:528 -#: vacuumdb.c:535 vacuumdb.c:542 vacuumdb.c:549 vacuumdb.c:556 vacuumdb.c:563 -#: vacuumdb.c:570 vacuumdb.c:577 vacuumdb.c:584 +#: 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 "no se puede usar la opción «%s» cuando con versiones más antiguas que PostgreSQL %s" -#: reindexdb.c:586 +#: reindexdb.c:597 #, c-format msgid "reindexing of database \"%s\" failed: %s" msgstr "falló la reindexación de la base de datos «%s»: %s" -#: reindexdb.c:590 +#: reindexdb.c:601 #, c-format msgid "reindexing of index \"%s\" in database \"%s\" failed: %s" msgstr "falló la reindexación del índice «%s» en la base de datos «%s»: %s" -#: reindexdb.c:594 +#: reindexdb.c:605 #, c-format msgid "reindexing of schema \"%s\" in database \"%s\" failed: %s" msgstr "falló la reindexación del esquema «%s» en la base de datos «%s»: %s" -#: reindexdb.c:598 +#: reindexdb.c:609 #, c-format msgid "reindexing of system catalogs in database \"%s\" failed: %s" msgstr "falló la reindexación de los catálogos de sistema en la base de datos «%s»: %s" -#: reindexdb.c:602 +#: reindexdb.c:613 #, c-format msgid "reindexing of table \"%s\" in database \"%s\" failed: %s" msgstr "falló la reindexación de la tabla «%s» en la base de datos «%s»: %s" -#: reindexdb.c:832 +#: reindexdb.c:854 #, c-format msgid "%s: reindexing database \"%s\"\n" msgstr "%s: reindexando la base de datos «%s»\n" -#: reindexdb.c:875 +#: reindexdb.c:897 #, c-format msgid "" "%s reindexes a PostgreSQL database.\n" @@ -1000,62 +1002,62 @@ msgstr "" "%s reindexa una base de datos PostgreSQL.\n" "\n" -#: reindexdb.c:879 +#: reindexdb.c:901 #, c-format msgid " -a, --all reindex all databases\n" msgstr " -a, --all reindexar todas las bases de datos\n" -#: reindexdb.c:880 +#: reindexdb.c:902 #, c-format msgid " --concurrently reindex concurrently\n" msgstr " --concurrently reindexar en modo concurrente\n" -#: reindexdb.c:881 +#: reindexdb.c:903 #, c-format msgid " -d, --dbname=DBNAME database to reindex\n" msgstr " -d, --dbname=BASE-DATOS base de datos a reindexar\n" -#: reindexdb.c:883 +#: reindexdb.c:905 #, c-format msgid " -i, --index=INDEX recreate specific index(es) only\n" msgstr " -i, --index=ÍNDICE recrear sólo este o estos índice(s)\n" -#: reindexdb.c:884 +#: reindexdb.c:906 #, c-format msgid " -j, --jobs=NUM use this many concurrent connections to reindex\n" msgstr " -j, --jobs=NÚM usar esta cantidad de conexiones concurrentes\n" -#: reindexdb.c:885 +#: reindexdb.c:907 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet no desplegar mensajes\n" -#: reindexdb.c:886 +#: reindexdb.c:908 #, c-format msgid " -s, --system reindex system catalogs only\n" msgstr " -s, --system sólo reindexar los catálogos del sistema\n" -#: reindexdb.c:887 +#: reindexdb.c:909 #, c-format msgid " -S, --schema=SCHEMA reindex specific schema(s) only\n" msgstr " -S, --schema=ESQUEMA reindexar sólo este o estos esquemas\n" -#: reindexdb.c:888 +#: reindexdb.c:910 #, c-format msgid " -t, --table=TABLE reindex specific table(s) only\n" msgstr " -t, --table=TABLA reindexar sólo esta(s) tabla(s)\n" -#: reindexdb.c:889 +#: reindexdb.c:911 #, c-format msgid " --tablespace=TABLESPACE tablespace where indexes are rebuilt\n" msgstr " --tablespace=TABLESPACE tablespace donde se reconstruirán los índices\n" -#: reindexdb.c:890 +#: reindexdb.c:912 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose desplegar varios mensajes informativos\n" -#: reindexdb.c:900 +#: reindexdb.c:922 #, c-format msgid "" "\n" @@ -1064,80 +1066,86 @@ msgstr "" "\n" "Lea la descripción de la orden REINDEX de SQL para obtener mayores detalles.\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 "no se puede usar la opción «%s» cuando se está sólo actualizando estadísticas" -#: vacuumdb.c:346 +#: vacuumdb.c:358 #, c-format msgid "cannot use the \"%s\" option when performing full vacuum" msgstr "no se puede usar la opción «%s» cuando se está ejecutando 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 "no se puede usar la opción «%s» junto con la opción «%s»" -#: vacuumdb.c:432 +#: vacuumdb.c:380 +#, c-format +#| msgid "cannot use the \"%s\" option with the \"%s\" option" +msgid "cannot use the \"%s\" option without \"%s\" or \"%s\"" +msgstr "no se puede usar la opción «%s» junto sin «%s» o «%s»" + +#: vacuumdb.c:454 #, c-format msgid "cannot vacuum all databases and a specific one at the same time" msgstr "no se puede limpiar todas las bases de datos y una de ellas en particular simultáneamente" -#: 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 "no se puede limpiar todas las tablas en esquema(s) y tabla(s) específicas simultáneamente" -#: vacuumdb.c:440 +#: vacuumdb.c:462 #, c-format msgid "cannot vacuum specific table(s) and exclude schema(s) at the same time" msgstr "no es posible limpiar tablas específicas y excluir esquema(s) simultáneamente" -#: 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 "no se puede limpiar todas las tablas en esquema(s) y excluir esquema(s) simultáneamente" -#: vacuumdb.c:457 +#: vacuumdb.c:479 #, c-format msgid "out of memory" msgstr "memoria agotada" -#: vacuumdb.c:501 +#: vacuumdb.c:546 msgid "Generating minimal optimizer statistics (1 target)" msgstr "Generando estadísticas mínimas para el optimizador (tamaño = 1)" -#: vacuumdb.c:502 +#: vacuumdb.c:547 msgid "Generating medium optimizer statistics (10 targets)" msgstr "Generando estadísticas medias para el optimizador (tamaño = 10)" -#: vacuumdb.c:503 +#: vacuumdb.c:548 msgid "Generating default (full) optimizer statistics" msgstr "Generando estadísticas predeterminadas (completas) para el optimizador" -#: vacuumdb.c:594 +#: vacuumdb.c:646 #, c-format msgid "%s: processing database \"%s\": %s\n" msgstr "%s: procesando la base de datos «%s»: %s\n" -#: vacuumdb.c:597 +#: vacuumdb.c:649 #, c-format msgid "%s: vacuuming database \"%s\"\n" msgstr "%s: limpiando la base de datos «%s»\n" -#: vacuumdb.c:1159 +#: vacuumdb.c:1325 #, c-format msgid "vacuuming of table \"%s\" in database \"%s\" failed: %s" msgstr "falló la limpieza de la tabla «%s» en la base de datos «%s»: %s" -#: vacuumdb.c:1162 +#: vacuumdb.c:1328 #, c-format msgid "vacuuming of database \"%s\" failed: %s" msgstr "falló la limpieza de la base de datos «%s»: %s" -#: vacuumdb.c:1170 +#: vacuumdb.c:1336 #, c-format msgid "" "%s cleans and analyzes a PostgreSQL database.\n" @@ -1146,136 +1154,142 @@ msgstr "" "%s limpia (VACUUM) y analiza una base de datos PostgreSQL.\n" "\n" -#: vacuumdb.c:1174 +#: vacuumdb.c:1340 #, c-format msgid " -a, --all vacuum all databases\n" msgstr " -a, --all limpia todas las bases de datos\n" -#: vacuumdb.c:1175 +#: vacuumdb.c:1341 #, c-format msgid " --buffer-usage-limit=SIZE size of ring buffer used for vacuum\n" msgstr " --buffer-usage-limit=SZ tamaño de anillo de búfers a usar para vacuum\n" -#: vacuumdb.c:1176 +#: vacuumdb.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to vacuum\n" msgstr " -d, --dbname=BASE base de datos a limpiar\n" -#: vacuumdb.c:1177 +#: vacuumdb.c:1343 #, c-format msgid " --disable-page-skipping disable all page-skipping behavior\n" msgstr " --disable-page-skipping desactiva todo comportamiento de saltar páginas\n" -#: vacuumdb.c:1178 +#: vacuumdb.c:1344 #, c-format msgid " -e, --echo show the commands being sent to the server\n" msgstr " -e, --echo mostrar las órdenes enviadas al servidor\n" -#: vacuumdb.c:1179 +#: vacuumdb.c:1345 #, c-format msgid " -f, --full do full vacuuming\n" msgstr " -f, --full usar «vacuum full»\n" -#: vacuumdb.c:1180 +#: vacuumdb.c:1346 #, c-format msgid " -F, --freeze freeze row transaction information\n" msgstr " -F, --freeze usar «vacuum freeze»\n" -#: vacuumdb.c:1181 +#: vacuumdb.c:1347 #, c-format msgid " --force-index-cleanup always remove index entries that point to dead tuples\n" msgstr " --force-index-cleanup siempre eliminar entradas de índice que apunten a tuplas muertas\n" -#: vacuumdb.c:1182 +#: vacuumdb.c:1348 #, c-format msgid " -j, --jobs=NUM use this many concurrent connections to vacuum\n" msgstr " -j, --jobs=NUM usar esta cantidad de conexiones concurrentes\n" -#: vacuumdb.c:1183 +#: vacuumdb.c:1349 #, c-format msgid " --min-mxid-age=MXID_AGE minimum multixact ID age of tables to vacuum\n" msgstr " --min-mxid-age=EDAD_MXID edad de multixact ID mínima de tablas a limpiar\n" -#: vacuumdb.c:1184 +#: vacuumdb.c:1350 #, c-format msgid " --min-xid-age=XID_AGE minimum transaction ID age of tables to vacuum\n" msgstr " --min-xid-age=EDAD_XID edad de ID de transacción mínima de tablas a limpiar\n" -#: vacuumdb.c:1185 +#: vacuumdb.c:1351 +#, c-format +#| msgid " --install-missing install missing extensions\n" +msgid " --missing-stats-only only analyze relations with missing statistics\n" +msgstr " --missing-stats-only sólo analizar relaciones sin estadísticas\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 no eliminar entradas de índice que apunten a tuplas muertas\n" -#: vacuumdb.c:1186 +#: vacuumdb.c:1353 #, c-format msgid " --no-process-main skip the main relation\n" msgstr " --no-process-main omitir la relación principal\n" -#: vacuumdb.c:1187 +#: vacuumdb.c:1354 #, c-format msgid " --no-process-toast skip the TOAST table associated with the table to vacuum\n" msgstr " --no-process-toast omitir la tabla TOAST asociada con la tabla a la que se hará vacuum\n" -#: vacuumdb.c:1188 +#: vacuumdb.c:1355 #, c-format msgid " --no-truncate don't truncate empty pages at the end of the table\n" msgstr " --no-truncate no truncar las páginas vacías al final de la tabla\n" -#: vacuumdb.c:1189 +#: vacuumdb.c:1356 #, c-format msgid " -n, --schema=SCHEMA vacuum tables in the specified schema(s) only\n" msgstr " -n, --schema=ESQUEMA limpia sólo tablas en el/los esquemas especificados\n" -#: vacuumdb.c:1190 +#: vacuumdb.c:1357 #, c-format msgid " -N, --exclude-schema=SCHEMA do not vacuum tables in the specified schema(s)\n" msgstr " -N, --exclude-schema=ESQUEMA no limpia tablas en el/los esquemas especificados\n" -#: vacuumdb.c:1191 +#: vacuumdb.c:1358 #, c-format msgid " -P, --parallel=PARALLEL_WORKERS use this many background workers for vacuum, if available\n" msgstr " -P, --parallel=NPROCS usar esta cantidad de procesos para vacuum, si están disponibles\n" -#: vacuumdb.c:1192 +#: vacuumdb.c:1359 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet no desplegar mensajes\n" -#: vacuumdb.c:1193 +#: vacuumdb.c:1360 #, c-format msgid " --skip-locked skip relations that cannot be immediately locked\n" msgstr " --skip-locked ignorar relaciones que no pueden bloquearse inmediatamente\n" -#: vacuumdb.c:1194 +#: vacuumdb.c:1361 #, c-format msgid " -t, --table='TABLE[(COLUMNS)]' vacuum specific table(s) only\n" msgstr "" " -t, --table='TABLA[(COLUMNAS)]'\n" " limpiar sólo esta(s) tabla(s)\n" -#: vacuumdb.c:1195 +#: vacuumdb.c:1362 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose desplegar varios mensajes informativos\n" -#: vacuumdb.c:1196 +#: vacuumdb.c:1363 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version mostrar información de versión y salir\n" -#: vacuumdb.c:1197 +#: vacuumdb.c:1364 #, c-format msgid " -z, --analyze update optimizer statistics\n" msgstr " -z, --analyze actualizar las estadísticas del optimizador\n" -#: vacuumdb.c:1198 +#: vacuumdb.c:1365 #, c-format msgid " -Z, --analyze-only only update optimizer statistics; no vacuum\n" msgstr "" " -Z, --analyze-only sólo actualizar las estadísticas del optimizador;\n" " no hacer vacuum\n" -#: vacuumdb.c:1199 +#: vacuumdb.c:1366 #, c-format msgid "" " --analyze-in-stages only update optimizer statistics, in multiple\n" @@ -1285,12 +1299,12 @@ msgstr "" " en múltiples etapas para resultados más rápidos;\n" " no hacer vacuum\n" -#: vacuumdb.c:1201 +#: vacuumdb.c:1368 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help mostrar esta ayuda y salir\n" -#: vacuumdb.c:1209 +#: vacuumdb.c:1376 #, c-format msgid "" "\n" diff --git a/src/bin/scripts/po/ko.po b/src/bin/scripts/po/ko.po index 5e694f0725165..744067e80ccb6 100644 --- a/src/bin/scripts/po/ko.po +++ b/src/bin/scripts/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pgscripts (PostgreSQL) 17\n" +"Project-Id-Version: pgscripts (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:51+0000\n" -"PO-Revision-Date: 2025-01-16 14:23+0900\n" +"POT-Creation-Date: 2025-09-11 21:51+0000\n" +"PO-Revision-Date: 2025-09-09 16:42+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean \n" "Language: ko\n" @@ -15,22 +15,22 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 "힌트: " @@ -46,44 +46,44 @@ msgstr "메모리 부족\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "null 포인터를 복제할 수 없음(내부 오류)\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 "\"%s\" 파일을 fsync 할 수 없음: %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" @@ -173,10 +173,11 @@ 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" +"Cannot print table contents: number of cells % is equal to or " +"exceeds maximum %zu.\n" msgstr "" -"테이블 내용을 출력할 수 없음: %lld 셀 수가 최대값 %lld 개와 같거나 초과함.\n" +"테이블 내용을 출력할 수 없음: % 셀 수가 최대값 %zu 개와 같거나 초과" +"함.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -185,8 +186,10 @@ msgstr "테이블 내용에 헤더를 추가할 수 없음: 열 수가 %d개를 #: ../../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 @@ -203,51 +206,51 @@ 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 "모든 DB 작업과 특정 DB 작업은 동시에 할 수 없습니다." -#: clusterdb.c:214 +#: clusterdb.c:213 #, c-format msgid "clustering of table \"%s\" in database \"%s\" failed: %s" msgstr "\"%s\" 테이블(해당DB: \"%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" @@ -257,19 +260,19 @@ msgstr "" "다시 클러스터 작업을 합니다.\n" "\n" -#: clusterdb.c:275 createdb.c:298 createuser.c:415 dropdb.c:172 dropuser.c:170 -#: pg_isready.c:226 reindexdb.c:872 vacuumdb.c:1158 +#: 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:873 vacuumdb.c:1159 +#: clusterdb.c:275 reindexdb.c:899 vacuumdb.c:1338 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [옵션]... [DB이름]\n" -#: clusterdb.c:277 createdb.c:300 createuser.c:417 dropdb.c:174 dropuser.c:172 -#: pg_isready.c:229 reindexdb.c:874 vacuumdb.c:1160 +#: 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" @@ -278,49 +281,49 @@ 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=DBNAME 클러스터 작업할 DB\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=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:889 vacuumdb.c:1189 +#: 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" @@ -329,38 +332,38 @@ msgstr "" "\n" "연결 옵션들:\n" -#: clusterdb.c:287 createuser.c:449 dropdb.c:182 dropuser.c:180 vacuumdb.c:1190 +#: 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:1191 +#: 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:1192 +#: clusterdb.c:288 dropdb.c:183 vacuumdb.c:1372 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=USERNAME 접속할 사용자이름\n" -#: clusterdb.c:290 createuser.c:452 dropdb.c:185 dropuser.c:183 vacuumdb.c:1193 +#: 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:1194 +#: 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:1195 +#: 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" @@ -369,8 +372,8 @@ msgstr "" "\n" "보다 자세한 내용은 CLUSTER SQL 명령어 설명서를 참조하십시오.\n" -#: clusterdb.c:294 createdb.c:325 createuser.c:454 dropdb.c:188 dropuser.c:185 -#: pg_isready.c:240 reindexdb.c:897 vacuumdb.c:1197 +#: 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" @@ -379,13 +382,13 @@ 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:898 vacuumdb.c:1198 +#: 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" @@ -418,17 +421,17 @@ 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" @@ -437,60 +440,60 @@ msgstr "" "%s 프로그램은 PostgreSQL 데이터베이스를 만듭니다.\n" "\n" -#: createdb.c:299 +#: createdb.c:301 #, c-format msgid " %s [OPTION]... [DBNAME] [DESCRIPTION]\n" msgstr " %s [옵션]... [DB이름] [설명]\n" -#: createdb.c:301 +#: createdb.c:303 #, c-format msgid " -D, --tablespace=TABLESPACE default tablespace for the database\n" msgstr "" " -D, --tablespace=TABLESPACE 데이터베이스를 위한 기본 테이블스페이스\n" -#: createdb.c:302 reindexdb.c:878 +#: 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=ENCODING 데이터베이스 인코딩\n" -#: createdb.c:304 +#: createdb.c:306 #, c-format msgid " -l, --locale=LOCALE locale settings for the database\n" msgstr " -l, --locale=LOCALE 데이터베이스의 로캘 설정\n" -#: createdb.c:305 +#: createdb.c:307 #, c-format msgid " --lc-collate=LOCALE LC_COLLATE setting for the database\n" msgstr " --lc-collate=LOCALE 데이터베이스의 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=LOCALE 데이터베이스의 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-rules=RULES 데이터베이스 ICU 룰 설정\n" -#: createdb.c:310 +#: createdb.c:312 #, c-format msgid "" " --locale-provider={builtin|libc|icu}\n" @@ -500,12 +503,12 @@ 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, --owner=OWNER 데이터베이스 소유주\n" -#: createdb.c:313 +#: createdb.c:315 #, c-format msgid "" " -S, --strategy=STRATEGY database creation strategy wal_log or " @@ -514,54 +517,54 @@ 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, --template=TEMPLATE 복사할 템플릿 데이터베이스\n" -#: createdb.c:315 reindexdb.c:887 +#: 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:888 +#: createdb.c:318 reindexdb.c:914 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 보여주고 마침\n" -#: createdb.c:318 reindexdb.c:890 +#: createdb.c:320 reindexdb.c:916 #, c-format msgid "" " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=HOSTNAME 데이터베이스 서버 호스트나 소켓 디렉터리\n" -#: createdb.c:319 reindexdb.c:891 +#: createdb.c:321 reindexdb.c:917 #, c-format msgid " -p, --port=PORT database server port\n" msgstr " -p, --port=PORT 데이터베이스 서버 포트\n" -#: createdb.c:320 reindexdb.c:892 +#: createdb.c:322 reindexdb.c:918 #, c-format msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=USERNAME 접속할 사용자\n" -#: createdb.c:321 reindexdb.c:893 +#: 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:894 +#: createdb.c:324 reindexdb.c:920 #, c-format msgid " -W, --password force password prompt\n" msgstr " -W, --password 암호 프롬프트 표시함\n" -#: createdb.c:323 reindexdb.c:895 +#: 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" @@ -600,17 +603,17 @@ 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" @@ -619,12 +622,12 @@ 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 [옵션]... [롤이름]\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" @@ -633,34 +636,34 @@ msgstr "" " -a, --with-admin=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" @@ -669,52 +672,52 @@ 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 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" @@ -723,7 +726,7 @@ msgstr "" " -v, --valid-until=TIMESTAMP\n" " 비밀번호 유효기한 지정\n" -#: createuser.c:440 +#: createuser.c:442 #, c-format msgid "" " --interactive prompt for missing role name and attributes " @@ -733,13 +736,13 @@ msgstr "" " --interactive 롤 이름과 속성을 초기값을 쓰지 않고\n" " 각각 직접 입력 선택 함\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) " @@ -749,18 +752,18 @@ 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" @@ -782,12 +785,12 @@ msgstr "\"%s\" 데이터베이스가 완전히 삭제 될 것입니다.\n" msgid "Are you sure?" msgstr "정말 계속 할까요? (y/n) " -#: 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" @@ -796,24 +799,24 @@ msgstr "" "%s 프로그램은 PostgreSQL 데이터베이스를 삭제합니다.\n" "\n" -#: dropdb.c:173 +#: dropdb.c:172 #, c-format msgid " %s [OPTION]... DBNAME\n" msgstr " %s [옵션]... DB이름\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" @@ -834,12 +837,12 @@ 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" @@ -848,7 +851,7 @@ msgstr "" "%s 프로그램은 PostgreSQL 롤을 삭제합니다.\n" "\n" -#: dropuser.c:174 +#: dropuser.c:175 #, c-format msgid "" " -i, --interactive prompt before deleting anything, and prompt for\n" @@ -857,12 +860,12 @@ 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" @@ -955,57 +958,57 @@ msgstr " -t, --timeout=초 연결 제한 시간, 0 무제한 (초기값 msgid " -U, --username=USERNAME user name to connect as\n" msgstr " -U, --username=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:514 vacuumdb.c:521 vacuumdb.c:528 -#: vacuumdb.c:535 vacuumdb.c:542 vacuumdb.c:549 vacuumdb.c:556 vacuumdb.c:561 -#: vacuumdb.c:565 vacuumdb.c:569 vacuumdb.c:573 +#: 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\" 인덱스(해당DB: \"%s\") 재색인 작업 실패: %s" -#: reindexdb.c:592 +#: reindexdb.c:605 #, c-format msgid "reindexing of schema \"%s\" in database \"%s\" failed: %s" msgstr "\"%s\" 스키마(해당DB: \"%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\" 테이블(해당DB: \"%s\") 재색인 작업 실패: %s" -#: reindexdb.c:828 +#: reindexdb.c:854 #, c-format msgid "%s: reindexing database \"%s\"\n" msgstr "%s: \"%s\" 데이터베이스 재색인 작업 중\n" -#: reindexdb.c:871 +#: reindexdb.c:897 #, c-format msgid "" "%s reindexes a PostgreSQL database.\n" @@ -1014,27 +1017,27 @@ msgstr "" "%s 프로그램은 PostgreSQL 데이터베이스 재색인 작업을 합니다.\n" "\n" -#: reindexdb.c:875 +#: reindexdb.c:901 #, c-format msgid " -a, --all reindex all databases\n" msgstr " -a, --all 모든 데이터베이스 재색인\n" -#: reindexdb.c:876 +#: reindexdb.c:902 #, c-format msgid " --concurrently reindex concurrently\n" msgstr " --concurrently 테이블 잠그지 않는 재색인\n" -#: reindexdb.c:877 +#: reindexdb.c:903 #, c-format msgid " -d, --dbname=DBNAME database to reindex\n" msgstr " -d, --dbname=DBNAME 지정한 데이터베이스의 재색인 작업\n" -#: reindexdb.c:879 +#: reindexdb.c:905 #, c-format msgid " -i, --index=INDEX recreate specific index(es) only\n" msgstr " -i, --index=INDEX 지정한 인덱스들만 다시 만듬\n" -#: reindexdb.c:880 +#: reindexdb.c:906 #, c-format msgid "" " -j, --jobs=NUM use this many concurrent connections to " @@ -1042,38 +1045,38 @@ msgid "" msgstr "" " -j, --jobs=NUM 재색인 작업을 여러개의 연결로 동시에 작업함\n" -#: reindexdb.c:881 +#: reindexdb.c:907 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet 어떠한 메시지도 보여주지 않음\n" -#: reindexdb.c:882 +#: reindexdb.c:908 #, c-format msgid " -s, --system reindex system catalogs only\n" msgstr " -s, --system 시스템 카탈로그 재색인\n" -#: reindexdb.c:883 +#: reindexdb.c:909 #, c-format msgid " -S, --schema=SCHEMA reindex specific schema(s) only\n" msgstr " -S, --schema=SCHEMA 지정한 스키마들 자료만 덤프\n" -#: reindexdb.c:884 +#: reindexdb.c:910 #, c-format msgid " -t, --table=TABLE reindex specific table(s) only\n" msgstr " -t, --table=TABLE 지정한 테이블들만 재색인 작업\n" -#: reindexdb.c:885 +#: reindexdb.c:911 #, c-format msgid " --tablespace=TABLESPACE tablespace where indexes are rebuilt\n" msgstr "" " --tablespace=TABLESPACE 데이터베이스를 위한 기본 테이블스페이스\n" -#: reindexdb.c:886 +#: reindexdb.c:912 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose 작업내역의 자세한 출력\n" -#: reindexdb.c:896 +#: reindexdb.c:922 #, c-format msgid "" "\n" @@ -1082,29 +1085,34 @@ msgstr "" "\n" "보다 자세한 내용은 REINDEX SQL 명령어 설명서를 참조하십시오.\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 "full vacuum 작업에서는 \"%s\" 옵션을 사용할 수 없음" -#: 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 "" "-a 옵션이 있을 경우는 한 데이터베이스를 대상으로 작업을 진행할 수 없습니다." -#: vacuumdb.c:436 +#: vacuumdb.c:458 #, c-format msgid "" "cannot vacuum all tables in schema(s) and specific table(s) at the same time" @@ -1112,12 +1120,12 @@ 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" @@ -1125,44 +1133,44 @@ msgstr "" "스키마 안 모든 테이블만 청소하는 것과 스키마를 제외하는 것은 동시에 할 수 없" "음" -#: vacuumdb.c:457 +#: vacuumdb.c:479 #, c-format msgid "out of memory" msgstr "메모리 부족" -#: vacuumdb.c:501 +#: vacuumdb.c:546 msgid "Generating minimal optimizer statistics (1 target)" msgstr "최소 최적화 통계 수집 수행 중 (1% 대상)" -#: vacuumdb.c:502 +#: vacuumdb.c:547 msgid "Generating medium optimizer statistics (10 targets)" msgstr "일반 최적화 통계 수집 수행 중 (10% 대상)" -#: vacuumdb.c:503 +#: vacuumdb.c:548 msgid "Generating default (full) optimizer statistics" msgstr "최대 최적화 통계 수집 수행중 (모든 자료 대상)" -#: vacuumdb.c:582 +#: vacuumdb.c:646 #, c-format msgid "%s: processing database \"%s\": %s\n" msgstr "%s: \"%s\" 데이터베이스 작업 중: %s\n" -#: vacuumdb.c:585 +#: vacuumdb.c:649 #, c-format msgid "%s: vacuuming database \"%s\"\n" msgstr "%s: \"%s\" 데이터베이스를 청소 중\n" -#: vacuumdb.c:1146 +#: vacuumdb.c:1325 #, c-format msgid "vacuuming of table \"%s\" in database \"%s\" failed: %s" msgstr "\"%s\" 테이블 (해당 DB: \"%s\") 청소하기 실패: %s" -#: vacuumdb.c:1149 +#: vacuumdb.c:1328 #, c-format msgid "vacuuming of database \"%s\" failed: %s" msgstr "\"%s\" 데이터베이스 청소하기 실패: %s" -#: vacuumdb.c:1157 +#: vacuumdb.c:1336 #, c-format msgid "" "%s cleans and analyzes a PostgreSQL database.\n" @@ -1172,44 +1180,44 @@ msgstr "" "퀴리 최적화기의 참고 자료를 갱신합니다.\n" "\n" -#: vacuumdb.c:1161 +#: vacuumdb.c:1340 #, c-format msgid " -a, --all vacuum all databases\n" msgstr " -a, --all 모든 데이터베이스 청소\n" -#: vacuumdb.c:1162 +#: 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:1163 +#: vacuumdb.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to vacuum\n" msgstr " -d, --dbname=DBNAME DBNAME 데이터베이스 청소\n" -#: vacuumdb.c:1164 +#: vacuumdb.c:1343 #, c-format msgid " --disable-page-skipping disable all page-skipping behavior\n" msgstr " --disable-page-skipping 모든 page-skipping 기능 비활성화\n" -#: vacuumdb.c:1165 +#: vacuumdb.c:1344 #, c-format msgid "" " -e, --echo show the commands being sent to the " "server\n" msgstr " -e, --echo 서버로 보내는 명령들을 보여줌\n" -#: vacuumdb.c:1166 +#: vacuumdb.c:1345 #, c-format msgid " -f, --full do full vacuuming\n" msgstr " -f, --full 대청소\n" -#: vacuumdb.c:1167 +#: vacuumdb.c:1346 #, c-format msgid " -F, --freeze freeze row transaction information\n" msgstr " -F, --freeze 행 트랜잭션 정보 동결\n" -#: vacuumdb.c:1168 +#: vacuumdb.c:1347 #, c-format msgid "" " --force-index-cleanup always remove index entries that point to " @@ -1217,7 +1225,7 @@ msgid "" msgstr "" " --force-index-cleanup 삭제된 튜플 대상 인덱스 항목 항상 삭제\n" -#: vacuumdb.c:1169 +#: vacuumdb.c:1348 #, c-format msgid "" " -j, --jobs=NUM use this many concurrent connections to " @@ -1225,7 +1233,7 @@ msgid "" msgstr "" " -j, --jobs=NUM 청소 작업을 여러개의 연결로 동시에 작업함\n" -#: vacuumdb.c:1170 +#: vacuumdb.c:1349 #, c-format msgid "" " --min-mxid-age=MXID_AGE minimum multixact ID age of tables to " @@ -1233,7 +1241,7 @@ msgid "" msgstr "" " --min-mxid-age=MXID_AGE 청소할 테이블의 최소 multixact ID 나이\n" -#: vacuumdb.c:1171 +#: vacuumdb.c:1350 #, c-format msgid "" " --min-xid-age=XID_AGE minimum transaction ID age of tables to " @@ -1241,7 +1249,14 @@ msgid "" msgstr "" " --min-xid-age=XID_AGE 청소할 테이블의 최소 트랜잭션 ID 나이\n" -#: vacuumdb.c:1172 +#: vacuumdb.c:1351 +#, c-format +msgid "" +" --missing-stats-only only analyze relations with missing " +"statistics\n" +msgstr " --missing-stats-only statistics 갱신 없이 analyze만 함\n" + +#: vacuumdb.c:1352 #, c-format msgid "" " --no-index-cleanup don't remove index entries that point to " @@ -1249,12 +1264,12 @@ msgid "" msgstr "" " --no-index-cleanup 삭제된 튜플 대상 인덱스 항목 지우지 않음\n" -#: vacuumdb.c:1173 +#: vacuumdb.c:1353 #, c-format msgid " --no-process-main skip the main relation\n" msgstr " --no-process-main 메인 릴레이션 건너뜀\n" -#: vacuumdb.c:1174 +#: vacuumdb.c:1354 #, c-format msgid "" " --no-process-toast skip the TOAST table associated with the " @@ -1263,7 +1278,7 @@ msgstr "" " --no-process-toast vacuum 대상 테이블과 관련된 TOAST 테이블 건" "너뜀\n" -#: vacuumdb.c:1175 +#: vacuumdb.c:1355 #, c-format msgid "" " --no-truncate don't truncate empty pages at the end of " @@ -1271,7 +1286,7 @@ msgid "" msgstr "" " --no-truncate 테이블 끝에 있는 빈 페이지를 지우지 않음\n" -#: vacuumdb.c:1176 +#: vacuumdb.c:1356 #, c-format msgid "" " -n, --schema=SCHEMA vacuum tables in the specified schema(s) " @@ -1279,7 +1294,7 @@ msgid "" msgstr "" " -n, --schema=SCHEMA 지정한 스키마 안에 있는 테이블만 청소함\n" -#: vacuumdb.c:1177 +#: vacuumdb.c:1357 #, c-format msgid "" " -N, --exclude-schema=SCHEMA do not vacuum tables in the specified " @@ -1287,7 +1302,7 @@ msgid "" msgstr "" " -N, --exclude-schema=SCHEMA 지정한 스키마 안에 있는 테이블만 청소안함\n" -#: vacuumdb.c:1178 +#: vacuumdb.c:1358 #, c-format msgid "" " -P, --parallel=PARALLEL_WORKERS use this many background workers for " @@ -1296,12 +1311,12 @@ msgstr "" " -P, --parallel=병렬작업수 vacuum 작업을 병렬로 처리 할 수 있는 경우\n" " 백그라운드 작업 프로세스 수\n" -#: vacuumdb.c:1179 +#: vacuumdb.c:1359 #, c-format msgid " -q, --quiet don't write any messages\n" msgstr " -q, --quiet 어떠한 메시지도 보여주지 않음\n" -#: vacuumdb.c:1180 +#: vacuumdb.c:1360 #, c-format msgid "" " --skip-locked skip relations that cannot be immediately " @@ -1309,28 +1324,28 @@ msgid "" msgstr "" " --skip-locked 즉시 잠글 수 없는 릴레이션은 건너 뜀\n" -#: vacuumdb.c:1181 +#: vacuumdb.c:1361 #, c-format msgid " -t, --table='TABLE[(COLUMNS)]' vacuum specific table(s) only\n" msgstr " -t, --table='TABLE[(COLUMNS)]' 지정한 특정 테이블들만 청소\n" -#: vacuumdb.c:1182 +#: vacuumdb.c:1362 #, c-format msgid " -v, --verbose write a lot of output\n" msgstr " -v, --verbose 작업내역의 자세한 출력\n" -#: vacuumdb.c:1183 +#: vacuumdb.c:1363 #, c-format msgid "" " -V, --version output version information, then exit\n" msgstr " -V, --version 버전 정보를 보여주고 마침\n" -#: vacuumdb.c:1184 +#: vacuumdb.c:1364 #, c-format msgid " -z, --analyze update optimizer statistics\n" msgstr " -z, --analyze 쿼리최적화 통계 정보를 갱신함\n" -#: vacuumdb.c:1185 +#: vacuumdb.c:1365 #, c-format msgid "" " -Z, --analyze-only only update optimizer statistics; no " @@ -1339,7 +1354,7 @@ msgstr "" " -Z, --analyze-only 청소 작업 없이 쿼리최적화 통계 정보만 갱신" "함\n" -#: vacuumdb.c:1186 +#: vacuumdb.c:1366 #, c-format msgid "" " --analyze-in-stages only update optimizer statistics, in " @@ -1349,12 +1364,12 @@ msgstr "" " --analyze-in-stages 보다 빠른 결과를 위해 다중 스테이지에서\n" " 최적화 통계치만 갱신함;청소 안함\n" -#: vacuumdb.c:1188 +#: vacuumdb.c:1368 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help 이 도움말을 표시하고 종료\n" -#: vacuumdb.c:1196 +#: vacuumdb.c:1376 #, c-format msgid "" "\n" @@ -1363,64 +1378,52 @@ msgstr "" "\n" "보다 자세한 내용은 VACUUM SQL 명령어 설명서를 참조하십시오.\n" -#, c-format #~ msgid "cannot cluster specific table(s) in all databases" #~ msgstr "모든 DB를 대상으로 특정 테이블들을 클러스터할 수 없음" -#, c-format +#~ msgid "cannot exclude specific schema(s) in all databases" +#~ msgstr "모든 데이터베이스를 대상으로는 특정 스키마를 제외할 수 없음" + #~ msgid "cannot reindex all databases and system catalogs at the same time" #~ msgstr "" #~ "모든 데이터베이스 재색인 작업과 시스템 카탈로그 재색인 작업은 동시에 진행" #~ "할 수 없습니다" -#, c-format -#~ msgid "cannot reindex specific schema(s) in all databases" -#~ msgstr "" -#~ "모든 데이터베이스 재색인 작업에서 특정 스키마들의 재색인 작업을 지정할 수 " -#~ "없습니다" - -#, c-format -#~ msgid "cannot reindex specific table(s) in all databases" +#~ msgid "" +#~ "cannot reindex specific index(es) and system catalogs at the same time" #~ msgstr "" -#~ "모든 데이터베이스 재색인 작업에서 특정 테이블의 재색인 작업을 지정할 수 없" -#~ "습니다" +#~ "특정 인덱스와 시스템 카탈로그 재색인 작업은 동시에 진행할 수 없습니다" -#, c-format #~ msgid "cannot reindex specific index(es) in all databases" #~ msgstr "" #~ "모든 데이터베이스 재색인 작업에서 특정 인덱스 재색인 작업을 지정할 수 없습" #~ "니다" -#, c-format #~ msgid "" #~ "cannot reindex specific schema(s) and system catalogs at the same time" #~ msgstr "" #~ "특정 스키마와 시스템 카탈로그 재색인 작업은 동시에 진행할 수 없습니다" -#, c-format +#~ msgid "cannot reindex specific schema(s) in all databases" +#~ msgstr "" +#~ "모든 데이터베이스 재색인 작업에서 특정 스키마들의 재색인 작업을 지정할 수 " +#~ "없습니다" + #~ msgid "" #~ "cannot reindex specific table(s) and system catalogs at the same time" #~ msgstr "" #~ "특정 테이블과 시스템 카탈로그 재색인 작업은 동시에 진행할 수 없습니다" -#, c-format -#~ msgid "" -#~ "cannot reindex specific index(es) and system catalogs at the same time" +#~ msgid "cannot reindex specific table(s) in all databases" #~ msgstr "" -#~ "특정 인덱스와 시스템 카탈로그 재색인 작업은 동시에 진행할 수 없습니다" +#~ "모든 데이터베이스 재색인 작업에서 특정 테이블의 재색인 작업을 지정할 수 없" +#~ "습니다" -#, c-format #~ msgid "cannot use multiple jobs to reindex indexes" #~ msgstr "인덱스 다시 만들기에서는 다중 작업을 사용할 수 없음" -#, c-format -#~ msgid "cannot vacuum specific table(s) in all databases" -#~ msgstr "모든 데이터베이스를 대상으로는 특정 테이블들을 청소할 수는 없음" - -#, c-format #~ msgid "cannot vacuum specific schema(s) in all databases" #~ msgstr "모든 데이터베이스를 대상으로는 특정 스키마들을 청소할 수는 없음" -#, c-format -#~ msgid "cannot exclude specific schema(s) in all databases" -#~ msgstr "모든 데이터베이스를 대상으로는 특정 스키마를 제외할 수 없음" +#~ msgid "cannot vacuum specific table(s) in all databases" +#~ msgstr "모든 데이터베이스를 대상으로는 특정 테이블들을 청소할 수는 없음" diff --git a/src/bin/scripts/po/ru.po b/src/bin/scripts/po/ru.po index 52c7155062286..df18f6fb5186d 100644 --- a/src/bin/scripts/po/ru.po +++ b/src/bin/scripts/po/ru.po @@ -3,13 +3,13 @@ # This file is distributed under the same license as the PostgreSQL package. # Serguei A. Mokhov, , 2003-2004. # Oleg Bartunov , 2004. -# Alexander Lakhin , 2012-2017, 2019, 2020, 2021, 2022, 2023, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2019, 2020, 2021, 2022, 2023, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pgscripts (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: 2024-09-05 08:25+0300\n" +"PO-Revision-Date: 2025-09-13 17:25+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -177,13 +177,13 @@ msgid "Interrupted\n" msgstr "Прервано\n" #: ../../fe_utils/print.c:3188 -#, fuzzy, c-format +#, c-format msgid "" "Cannot print table contents: number of cells % is equal to or " "exceeds maximum %zu.\n" msgstr "" -"Вывести содержимое таблицы нельзя: число ячеек %lld достигло максимума " -"%lld.\n" +"Вывести содержимое таблицы нельзя: число ячеек % достигло максимума " +"%zu.\n" #: ../../fe_utils/print.c:3229 #, c-format @@ -192,11 +192,12 @@ msgstr "" "Ошибка добавления заголовка таблицы: превышен предел числа столбцов (%d).\n" #: ../../fe_utils/print.c:3272 -#, fuzzy, c-format +#, c-format msgid "" "Cannot add cell to table content: total cell count of % exceeded.\n" msgstr "" -"Ошибка добавления ячейки в таблицу: превышен предел числа ячеек (%lld).\n" +"Ошибка добавления ячейки в таблицу: превышен предел числа ячеек " +"(%).\n" #: ../../fe_utils/print.c:3530 #, c-format @@ -1158,9 +1159,9 @@ msgid "cannot use the \"%s\" option with the \"%s\" option" msgstr "параметр \"%s\" нельзя использовать совместно с \"%s\"" #: vacuumdb.c:380 -#, fuzzy, c-format +#, c-format msgid "cannot use the \"%s\" option without \"%s\" or \"%s\"" -msgstr "параметр \"%s\" нельзя использовать совместно с \"%s\"" +msgstr "параметр \"%s\" нельзя использовать без \"%s\" или \"%s\"" #: vacuumdb.c:454 #, c-format @@ -1322,6 +1323,8 @@ msgid "" " --missing-stats-only only analyze relations with missing " "statistics\n" msgstr "" +" --missing-stats-only анализировать только отношения без " +"статистики\n" #: vacuumdb.c:1352 #, c-format diff --git a/src/interfaces/ecpg/ecpglib/po/es.po b/src/interfaces/ecpg/ecpglib/po/es.po index 0a957e220c5ab..c904804ebea32 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-02-16 19:40+0000\n" +"POT-Creation-Date: 2025-09-20 09:39+0000\n" "PO-Revision-Date: 2024-11-16 14:23+0100\n" "Last-Translator: Emanuel Calvo Franco \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -18,11 +18,11 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: connect.c:221 +#: connect.c:226 msgid "empty message text" msgstr "mensaje de texto vacío" -#: connect.c:386 connect.c:645 +#: connect.c:391 connect.c:653 msgid "" msgstr "" @@ -195,6 +195,6 @@ msgstr "se ha perdido la conexión al servidor" msgid "SQL error: %s\n" msgstr "error SQL: %s\n" -#: execute.c:2186 execute.c:2193 +#: execute.c:2189 execute.c:2196 msgid "" msgstr "" diff --git a/src/interfaces/ecpg/preproc/po/es.po b/src/interfaces/ecpg/preproc/po/es.po index f8e3c4a34ecc1..344b2cd4ef8f6 100644 --- a/src/interfaces/ecpg/preproc/po/es.po +++ b/src/interfaces/ecpg/preproc/po/es.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: ecpg (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:40+0000\n" -"PO-Revision-Date: 2024-11-16 14:23+0100\n" +"POT-Creation-Date: 2025-09-20 09:40+0000\n" +"PO-Revision-Date: 2025-09-21 11:11+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -23,47 +23,47 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\n" -#: descriptor.c:64 +#: descriptor.c:63 #, c-format msgid "variable \"%s\" must have a numeric type" msgstr "la variable «%s» debe tener tipo numérico" -#: 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 "el descriptor %s vinculado a la conexión %s no existe" -#: 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 "el descriptor %s vinculado a la conexión predeterminada no existe" -#: descriptor.c:172 descriptor.c:224 +#: descriptor.c:166 descriptor.c:218 #, c-format msgid "descriptor header item \"%d\" does not exist" msgstr "no existe el descriptor del elemento de cabecera «%d»" -#: descriptor.c:194 +#: descriptor.c:188 #, c-format msgid "nullable is always 1" msgstr "nullable es siempre 1" -#: descriptor.c:197 +#: descriptor.c:191 #, c-format msgid "key_member is always 0" msgstr "key_member es siempre 0" -#: descriptor.c:291 +#: descriptor.c:285 #, c-format msgid "descriptor item \"%s\" is not implemented" msgstr "elemento del descriptor «%s» no está implementado" -#: descriptor.c:301 +#: descriptor.c:295 #, c-format msgid "descriptor item \"%s\" cannot be set" msgstr "no se puede establecer el elemento del descriptor «%s»" -#: ecpg.c:36 +#: ecpg.c:37 #, c-format msgid "" "%s is the PostgreSQL embedded SQL preprocessor for C programs.\n" @@ -72,7 +72,7 @@ msgstr "" "%s es el preprocesador de SQL incrustado para programas en C de PostgreSQL.\n" "\n" -#: ecpg.c:38 +#: ecpg.c:39 #, c-format msgid "" "Usage:\n" @@ -83,12 +83,12 @@ msgstr "" " %s [OPCIÓN]... ARCHIVO...\n" "\n" -#: ecpg.c:41 +#: ecpg.c:42 #, c-format msgid "Options:\n" msgstr "Opciones:\n" -#: ecpg.c:42 +#: ecpg.c:43 #, c-format msgid "" " -c automatically generate C code from embedded SQL code;\n" @@ -97,7 +97,7 @@ msgstr "" " -c genera automáticamente código en C desde código SQL\n" " incrustado; esto afecta EXEC SQL TYPE\n" -#: ecpg.c:44 +#: ecpg.c:45 #, c-format msgid "" " -C MODE set compatibility mode; MODE can be one of\n" @@ -106,37 +106,37 @@ msgstr "" " -C MODO establece el modo de compatibilidad;\n" " MODO puede ser \"INFORMIX\", \"INFORMIX_SE\", \"ORACLE\"\n" -#: ecpg.c:47 +#: ecpg.c:48 #, c-format msgid " -d generate parser debug output\n" msgstr " -d genera salida depurada del analizador\n" -#: ecpg.c:49 +#: ecpg.c:50 #, c-format msgid " -D SYMBOL define SYMBOL\n" msgstr " -D SYMBOL define SYMBOL\n" -#: ecpg.c:50 +#: ecpg.c:51 #, c-format msgid " -h parse a header file, this option includes option \"-c\"\n" msgstr " -h analiza un archivo de cabecera; esto incluye «-c»\n" -#: ecpg.c:51 +#: ecpg.c:52 #, c-format msgid " -i parse system include files as well\n" msgstr " -i analiza además los archivos de inclusión de sistema\n" -#: ecpg.c:52 +#: ecpg.c:53 #, c-format msgid " -I DIRECTORY search DIRECTORY for include files\n" msgstr " -I DIRECTORIO busca los archivos de inclusión en DIRECTORIO\n" -#: ecpg.c:53 +#: ecpg.c:54 #, c-format msgid " -o OUTFILE write result to OUTFILE\n" msgstr " -o ARCHIVO escribe la salida en ARCHIVO\n" -#: ecpg.c:54 +#: ecpg.c:55 #, c-format msgid "" " -r OPTION specify run-time behavior; OPTION can be:\n" @@ -146,27 +146,27 @@ msgstr "" " OPCIÓN puede ser: «no_indicator», «prepare»,\n" " «questionmarks»\n" -#: ecpg.c:56 +#: ecpg.c:57 #, c-format msgid " --regression run in regression testing mode\n" msgstr " --regression ejecuta en modo de prueba de regresión\n" -#: ecpg.c:57 +#: ecpg.c:58 #, c-format msgid " -t turn on autocommit of transactions\n" msgstr " -t activa el compromiso (commit) automático de transacciones\n" -#: ecpg.c:58 +#: ecpg.c:59 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version muestra información de la versión, luego sale\n" -#: ecpg.c:59 +#: ecpg.c:60 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help muestra esta ayuda, luego sale\n" -#: ecpg.c:60 +#: ecpg.c:61 #, c-format msgid "" "\n" @@ -177,7 +177,7 @@ msgstr "" "Si no se especifica un archivo de salida, el nombre se forma agregando .c al\n" "archivo de entrada, luego de quitar .pgc si está presente.\n" -#: ecpg.c:62 +#: ecpg.c:63 #, c-format msgid "" "\n" @@ -186,7 +186,7 @@ msgstr "" "\n" "Reporte errores a <%s>.\n" -#: ecpg.c:63 +#: ecpg.c:64 #, c-format msgid "%s home page: <%s>\n" msgstr "Sitio web de %s: <%s>\n" @@ -236,7 +236,7 @@ msgstr "%s: no se especificaron archivos de entrada\n" msgid "cursor \"%s\" has been declared but not opened" msgstr "el cursor «%s» fue declarado pero no abierto" -#: ecpg.c:504 preproc.y:130 +#: ecpg.c:504 util.c:75 #, c-format msgid "could not remove output file \"%s\"\n" msgstr "no se pudo eliminar el archivo de salida «%s»\n" @@ -246,413 +246,419 @@ msgstr "no se pudo eliminar el archivo de salida «%s»\n" msgid "unterminated /* comment" msgstr "comentario /* no cerrado" -#: pgc.l:559 +#: pgc.l:560 #, c-format msgid "unterminated bit string literal" msgstr "una cadena de bits está inconclusa" -#: pgc.l:567 +#: pgc.l:570 #, c-format msgid "unterminated hexadecimal string literal" msgstr "una cadena hexadecimal está inconclusa" -#: pgc.l:642 +#: pgc.l:644 #, c-format msgid "invalid bit string literal" msgstr "cadena de bits no válida" -#: pgc.l:647 +#: pgc.l:649 #, c-format msgid "invalid hexadecimal string literal" msgstr "cadena hexadecimal no válida" -#: pgc.l:665 +#: pgc.l:667 #, c-format msgid "unhandled previous state in xqs\n" msgstr "estado previo no manejado en xqs\n" -#: pgc.l:691 pgc.l:800 +#: pgc.l:700 pgc.l:820 #, c-format msgid "unterminated quoted string" msgstr "una cadena en comillas está inconclusa" -#: pgc.l:742 +#: pgc.l:753 #, c-format msgid "unterminated dollar-quoted string" msgstr "una cadena separada por $ está inconclusa" -#: pgc.l:760 pgc.l:780 +#: pgc.l:772 pgc.l:793 #, c-format msgid "zero-length delimited identifier" msgstr "identificador delimitado de longitud cero" -#: pgc.l:791 +#: pgc.l:809 #, c-format msgid "unterminated quoted identifier" msgstr "un identificador en comillas está inconcluso" -#: pgc.l:960 +#: pgc.l:985 +#, c-format +#| msgid "parameter number %d is out of range 0..%d" +msgid "parameter number too large" +msgstr "el número de parámetro es demasiado grande" + +#: pgc.l:990 #, c-format msgid "trailing junk after parameter" msgstr "basura sigue después de un parámetro" -#: 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 "basura sigue después de un literal numérico" -#: pgc.l:1141 +#: pgc.l:1177 #, c-format msgid "nested /* ... */ comments" msgstr "comentarios /* ... */ anidados" -#: pgc.l:1240 +#: pgc.l:1279 #, c-format msgid "missing identifier in EXEC SQL UNDEF command" msgstr "falta un identificador en la orden 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 "demasiadas condiciones EXEC SQL IFDEF anidadas" -#: 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 "falta el «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 "falta el «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 "hay más de un 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 sin coincidencia" -#: pgc.l:1464 +#: pgc.l:1507 #, c-format msgid "missing identifier in EXEC SQL IFDEF command" msgstr "identificador faltante en la orden EXEC SQL IFDEF" -#: pgc.l:1473 +#: pgc.l:1516 #, c-format msgid "missing identifier in EXEC SQL DEFINE command" msgstr "identificador faltante en la orden EXEC SQL DEFINE" -#: pgc.l:1511 +#: pgc.l:1554 #, c-format msgid "syntax error in EXEC SQL INCLUDE command" msgstr "error de sintaxis en orden EXEC SQL INCLUDE" -#: pgc.l:1566 +#: pgc.l:1609 #, c-format msgid "internal error: unreachable state; please report this to <%s>" msgstr "error interno: estado no esperado; por favor reporte a <%s>" -#: pgc.l:1718 +#: pgc.l:1766 #, c-format msgid "Error: include path \"%s/%s\" is too long on line %d, skipping\n" msgstr "Error: ruta de inclusión «%s/%s» es demasiada larga en la línea %d, omitiendo\n" -#: pgc.l:1741 +#: pgc.l:1793 #, c-format msgid "could not open include file \"%s\" on line %d" msgstr "no se pudo abrir el archivo a incluir «%s» en la línea %d" -#: preproc.y:31 +#: preproc.y:28 msgid "syntax error" msgstr "error de sintaxis" -#: preproc.y:84 -#, c-format -msgid "WARNING: " -msgstr "ATENCIÓN: " - -#: preproc.y:87 -#, c-format -msgid "ERROR: " -msgstr "ERROR: " - -#: preproc.y:514 +#: preproc.y:467 #, c-format msgid "cursor \"%s\" does not exist" msgstr "no existe el cursor «%s»" -#: preproc.y:543 +#: preproc.y:503 #, c-format msgid "initializer not allowed in type definition" msgstr "inicializador no permitido en definición de tipo" -#: preproc.y:545 +#: preproc.y:505 #, c-format msgid "type name \"string\" is reserved in Informix mode" msgstr "el nombre de tipo «string» está reservado en modo Informix" -#: preproc.y:552 preproc.y:19034 +#: preproc.y:512 preproc.y:8818 #, c-format msgid "type \"%s\" is already defined" msgstr "el tipo «%s» ya está definido" -#: preproc.y:577 preproc.y:19669 preproc.y:19991 variable.c:624 +#: 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 "los arrays multidimensionales para tipos de datos simples no están soportados" -#: preproc.y:599 +#: preproc.y:562 #, c-format msgid "connection %s is overwritten with %s by DECLARE statement %s" msgstr "la conexión %s es sobrescrita con %s por la sentencia DECLARE %s" -#: preproc.y:1831 +#: preproc.y:932 #, c-format msgid "AT option not allowed in CLOSE DATABASE statement" msgstr "la opción AT no está permitida en la sentencia CLOSE DATABASE" -#: preproc.y:2081 +#: preproc.y:1184 #, c-format msgid "AT option not allowed in CONNECT statement" msgstr "la opción AT no está permitida en la sentencia CONNECT" -#: preproc.y:2121 +#: preproc.y:1221 #, c-format msgid "AT option not allowed in DISCONNECT statement" msgstr "la opción AT no está permitida en la sentencia DISCONNECT" -#: preproc.y:2176 +#: preproc.y:1274 #, c-format msgid "AT option not allowed in SET CONNECTION statement" msgstr "la opción AT no está permitida en la sentencia SET CONNECTION" -#: preproc.y:2198 +#: preproc.y:1292 #, c-format msgid "AT option not allowed in TYPE statement" msgstr "la opción AT no está permitida en la sentencia TYPE" -#: preproc.y:2207 +#: preproc.y:1300 #, c-format msgid "AT option not allowed in VAR statement" msgstr "la opción AT no está permitida en la sentencia VAR" -#: preproc.y:2214 +#: preproc.y:1307 #, c-format msgid "AT option not allowed in WHENEVER statement" msgstr "la opción AT no está permitida en la sentencia 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 "característica no soportada será pasada al servidor" -#: preproc.y:2884 +#: preproc.y:1610 #, c-format msgid "SHOW ALL is not implemented" msgstr "SHOW ALL no está implementado" -#: preproc.y:3596 +#: preproc.y:1895 #, c-format msgid "COPY FROM STDIN is not implemented" msgstr "COPY FROM STDIN no está implementado" -#: 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 "no se puede usar «database» como nombre de cursor en modo 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 "el uso de la variable «%s» en diferentes sentencias declare no está soportado" -#: preproc.y:10453 preproc.y:18515 +#: preproc.y:5155 preproc.y:8281 #, c-format msgid "cursor \"%s\" is already defined" msgstr "el cursor «%s» ya está definido" -#: preproc.y:10927 +#: preproc.y:5402 #, c-format msgid "no longer supported LIMIT #,# syntax passed to server" msgstr "la sintaxis LIMIT #,# que ya no está soportada ha sido pasada al servidor" -#: 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 no puede especificar INTO" -#: preproc.y:18238 +#: preproc.y:7970 #, c-format msgid "expected \"@\", found \"%s\"" msgstr "se esperaba «@», se encontró «%s»" -#: preproc.y:18250 +#: preproc.y:7982 #, c-format msgid "only protocols \"tcp\" and \"unix\" and database type \"postgresql\" are supported" msgstr "sólo los protocolos «tcp» y «unix» y tipo de bases de datos «postgresql» están soportados" -#: preproc.y:18253 +#: preproc.y:7985 #, c-format msgid "expected \"://\", found \"%s\"" msgstr "se esperaba «://», se encontró «%s»" -#: preproc.y:18258 +#: preproc.y:7990 #, c-format msgid "Unix-domain sockets only work on \"localhost\" but not on \"%s\"" msgstr "los sockets de dominio unix sólo trabajan en «localhost» pero no en «%s»" -#: preproc.y:18284 +#: preproc.y:8017 #, c-format msgid "expected \"postgresql\", found \"%s\"" msgstr "se esperaba «postgresql», se encontró «%s»" -#: preproc.y:18287 +#: preproc.y:8020 #, c-format msgid "invalid connection type: %s" msgstr "tipo de conexión no válido: %s" -#: preproc.y:18296 +#: preproc.y:8029 #, c-format msgid "expected \"@\" or \"://\", found \"%s\"" msgstr "se esperaba «@» o «://», se encontró «%s»" -#: preproc.y:18371 preproc.y:18389 +#: preproc.y:8127 preproc.y:8145 #, c-format msgid "invalid data type" msgstr "tipo de dato no válido" -#: preproc.y:18400 preproc.y:18417 +#: preproc.y:8156 preproc.y:8173 #, c-format msgid "incomplete statement" msgstr "sentencia incompleta" -#: preproc.y:18403 preproc.y:18420 +#: preproc.y:8159 preproc.y:8176 #, c-format msgid "unrecognized token \"%s\"" msgstr "elemento «%s» no reconocido" -#: preproc.y:18465 +#: preproc.y:8231 #, c-format msgid "name \"%s\" is already declared" msgstr "el nombre «%s» ya está declarado" -#: preproc.y:18754 +#: preproc.y:8534 #, c-format msgid "only data types numeric and decimal have precision/scale argument" msgstr "sólo los tipos de dato numeric y decimal tienen argumento de precisión/escala" -#: preproc.y:18853 +#: preproc.y:8633 #, c-format msgid "interval specification not allowed here" msgstr "la especificación de intervalo no está permitida aquí" -#: preproc.y:19009 preproc.y:19061 +#: preproc.y:8789 preproc.y:8847 #, c-format msgid "too many levels in nested structure/union definition" msgstr "demasiados niveles en la definición anidada de estructura/unión" -#: preproc.y:19184 +#: preproc.y:8982 #, c-format msgid "pointers to varchar are not implemented" msgstr "los punteros a varchar no están implementados" -#: preproc.y:19635 +#: preproc.y:9497 #, c-format msgid "initializer not allowed in EXEC SQL VAR command" msgstr "inicializador no permitido en la orden EXEC SQL VAR" -#: preproc.y:19949 +#: preproc.y:9820 #, c-format msgid "arrays of indicators are not allowed on input" msgstr "no se permiten los arrays de indicadores en la entrada" -#: preproc.y:20136 +#: preproc.y:10054 #, c-format msgid "operator not allowed in variable definition" msgstr "operador no permitido en definición de variable" #. 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 en o cerca de «%s»" -#: type.c:18 type.c:30 -#, c-format -msgid "out of memory" -msgstr "memoria agotada" - -#: type.c:214 type.c:685 +#: type.c:191 type.c:661 #, c-format msgid "unrecognized variable type code %d" msgstr "código de tipo de variable %d no reconocido" -#: type.c:263 +#: type.c:240 #, c-format msgid "variable \"%s\" is hidden by a local variable of a different type" msgstr "la variable «%s» está escondida por una variable local de tipo diferente" -#: type.c:265 +#: type.c:242 #, c-format msgid "variable \"%s\" is hidden by a local variable" msgstr "la variable «%s» está escondida por una variable local" -#: type.c:277 +#: type.c:254 #, c-format msgid "indicator variable \"%s\" is hidden by a local variable of a different type" msgstr "la variable de indicador «%s» está escondida por una variable local de tipo diferente" -#: type.c:279 +#: type.c:256 #, c-format msgid "indicator variable \"%s\" is hidden by a local variable" msgstr "variable de indicador «%s» está escondida por una variable local" -#: type.c:287 +#: type.c:264 #, c-format msgid "indicator for array/pointer has to be array/pointer" msgstr "indicador para array/puntero debe ser array/puntero" -#: type.c:291 +#: type.c:268 #, c-format msgid "nested arrays are not supported (except strings)" msgstr "no se permiten arrays anidados (excepto cadenas de caracteres)" -#: type.c:333 +#: type.c:310 #, c-format msgid "indicator for struct has to be a struct" msgstr "el indicador para struct debe ser struct" -#: 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 "el indicador para tipo dato simple debe ser simple" -#: type.c:625 +#: type.c:602 #, c-format msgid "indicator struct \"%s\" has too few members" msgstr "struct para indicador «%s» no tiene suficientes miembros" -#: type.c:633 +#: type.c:610 #, c-format msgid "indicator struct \"%s\" has too many members" msgstr "struct para indicador «%s» tiene demasiados miembros" -#: type.c:744 +#: type.c:723 #, c-format msgid "unrecognized descriptor item code %d" msgstr "código de descriptor de elemento %d no reconocido" +#: util.c:26 +#, c-format +msgid "WARNING: " +msgstr "ATENCIÓN: " + +#: util.c:29 +#, c-format +msgid "ERROR: " +msgstr "ERROR: " + +#: util.c:90 util.c:102 +#, c-format +msgid "out of memory" +msgstr "memoria agotada" + #: variable.c:89 variable.c:115 #, c-format msgid "incorrectly formed variable \"%s\"" msgstr "variable formada incorrectamente «%s»" -#: variable.c:138 +#: variable.c:138 variable.c:237 #, c-format msgid "variable \"%s\" is not a pointer" msgstr "la variable «%s» no es un puntero" @@ -672,39 +678,45 @@ msgstr "la variable «%s» no es una estructura ni una unión" msgid "variable \"%s\" is not an array" msgstr "la variable «%s» no es un array" -#: variable.c:232 variable.c:254 +#: variable.c:220 +#, c-format +#| msgid "unmatched format character \"%s\"" +msgid "unmatched bracket in variable \"%s\"" +msgstr "corchete sin emparejar en la variable «%s»" + +#: variable.c:235 variable.c:258 #, c-format msgid "variable \"%s\" is not declared" msgstr "la variable «%s» no está declarada" -#: variable.c:492 +#: variable.c:517 #, c-format msgid "indicator variable must have an integer type" msgstr "la variable de un indicador debe ser de algún tipo numérico entero" -#: variable.c:509 +#: variable.c:534 #, c-format msgid "unrecognized data type name \"%s\"" msgstr "nombre de tipo de datos «%s» no reconocido" -#: variable.c:520 variable.c:528 variable.c:545 variable.c:548 +#: variable.c:548 variable.c:556 variable.c:573 variable.c:576 #, c-format msgid "multidimensional arrays are not supported" msgstr "los arrays multidimensionales no están soportados" -#: variable.c:537 +#: 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" msgstr[0] "no se soportan los punteros multinivel (más de 2); se encontró 1 nivel" msgstr[1] "no se soportan los punteros multinivel (más de 2); se encontraron %d niveles" -#: variable.c:542 +#: variable.c:570 #, c-format msgid "pointer to pointer is not supported for this data type" msgstr "los punteros a puntero no están soportados para este tipo de dato" -#: variable.c:562 +#: variable.c:590 #, c-format msgid "multidimensional arrays for structures are not supported" msgstr "los arrays multidimensionales para estructuras no están soportados" diff --git a/src/interfaces/ecpg/preproc/po/ko.po b/src/interfaces/ecpg/preproc/po/ko.po index 77d4029a5866b..53359692dea37 100644 --- a/src/interfaces/ecpg/preproc/po/ko.po +++ b/src/interfaces/ecpg/preproc/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: ecpg (PostgreSQL) 17\n" +"Project-Id-Version: ecpg (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:40+0000\n" -"PO-Revision-Date: 2025-01-16 10:32+0900\n" +"POT-Creation-Date: 2025-09-11 21:40+0000\n" +"PO-Revision-Date: 2025-09-09 11:30+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -17,47 +17,47 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\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 "null 허용 여부는 항상 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" @@ -66,7 +66,7 @@ msgstr "" "%s은(는) C 프로그램용 PostgreSQL 포함 SQL 전처리기입니다.\n" "\n" -#: ecpg.c:38 +#: ecpg.c:39 #, c-format msgid "" "Usage:\n" @@ -77,12 +77,12 @@ msgstr "" " %s [OPTION]... 파일...\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" @@ -91,7 +91,7 @@ msgstr "" " -c 포함된 SQL 코드에서 자동으로 C 코드를 생성합니다.\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" @@ -101,38 +101,38 @@ msgstr "" "다.\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 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 시스템 포함 파일도 구문 분석\n" -#: ecpg.c:52 +#: ecpg.c:53 #, c-format msgid " -I DIRECTORY search DIRECTORY for include files\n" msgstr " -I DIRECTORY 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" @@ -142,27 +142,27 @@ msgstr "" "다.\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" @@ -173,7 +173,7 @@ msgstr "" "출력 파일 이름을 지정하지 않으면 입력 파일 이름에 .pgc가 있을 경우 제거하고\n" ".c를 추가하여 이름이 지정됩니다.\n" -#: ecpg.c:62 +#: ecpg.c:63 #, c-format msgid "" "\n" @@ -182,7 +182,7 @@ msgstr "" "\n" "문제점 보고 주소: <%s>\n" -#: ecpg.c:63 +#: ecpg.c:64 #, c-format msgid "%s home page: <%s>\n" msgstr "%s 홈페이지: <%s>\n" @@ -232,7 +232,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" @@ -242,253 +242,248 @@ 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 "마무리 안된 16진수 문자열 문자" -#: 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 "잘못된 16진수 문자열 문자" -#: 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 "길이가 0인 구분 식별자" -#: 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\" 자료형 이름은 인포믹스 모드에서 예약어로 쓰입니다" -#: 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:624 +#: 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 "CLOSE DATABASE 문에 AT 옵션이 허용되지 않음" -#: preproc.y:2081 +#: preproc.y:1184 #, c-format msgid "AT option not allowed in CONNECT statement" msgstr "CONNECT 문에 AT 옵션이 허용되지 않음" -#: preproc.y:2121 +#: preproc.y:1221 #, c-format msgid "AT option not allowed in DISCONNECT statement" msgstr "DISCONNECT 문에 AT 옵션이 허용되지 않음" -#: preproc.y:2176 +#: preproc.y:1274 #, c-format msgid "AT option not allowed in SET CONNECTION statement" msgstr "SET CONNECTION 문에 AT 옵션이 허용되지 않음" -#: preproc.y:2198 +#: preproc.y:1292 #, c-format msgid "AT option not allowed in TYPE statement" msgstr "TYPE 문에 AT 옵션이 허용되지 않음" -#: preproc.y:2207 +#: preproc.y:1300 #, c-format msgid "AT option not allowed in VAR statement" msgstr "VAR 문에 AT 옵션이 허용되지 않음" -#: preproc.y:2214 +#: preproc.y:1307 #, c-format msgid "AT option not allowed in WHENEVER statement" msgstr "WHENEVER 문에 AT 옵션이 허용되지 않음" -#: 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 "INFORMIX 모드에서는 \"database\"를 커서 이름으로 사용할 수 없음" -#: 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\" 변수 사용은 지원하지 않습니다" -#: 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 " @@ -496,165 +491,175 @@ msgid "" 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-domain 소켓은 \"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 "숫자 및 10진수 데이터 형식에만 전체 자릿수/소수 자릿수 인수 포함" -#: 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 "중첩된 구조/union 정의에 수준이 너무 많음" -#: 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\" 변수가 포인터가 아님" @@ -674,27 +679,32 @@ msgstr "\"%s\" 변수가 구조나 union이 아님" 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:492 +#: variable.c:517 #, c-format msgid "indicator variable must have an integer type" msgstr "표시기 변수에 정수 형식이 있어야 함" -#: variable.c:509 +#: variable.c:534 #, c-format msgid "unrecognized data type name \"%s\"" msgstr "인식할 수 없는 데이터 형식 이름 \"%s\"" -#: variable.c:520 variable.c:528 variable.c:545 variable.c:548 +#: variable.c:548 variable.c:556 variable.c:573 variable.c:576 #, c-format msgid "multidimensional arrays are not supported" msgstr "다차원 배열이 지원되지 않음" -#: variable.c:537 +#: variable.c:565 #, c-format msgid "" "multilevel pointers (more than 2 levels) are not supported; found %d level" @@ -702,12 +712,12 @@ msgid_plural "" "multilevel pointers (more than 2 levels) are not supported; found %d levels" msgstr[0] "다중단계 포인터(2단계 이상)는 지원하지 않음; 발견된 레벨: %d" -#: variable.c:542 +#: variable.c:570 #, c-format msgid "pointer to pointer is not supported for this data type" msgstr "이 데이터 형식에는 포인터에 대한 포인터가 지원되지 않음" -#: variable.c:562 +#: variable.c:590 #, c-format msgid "multidimensional arrays for structures are not supported" msgstr "구조에는 다차원 배열이 지원되지 않음" diff --git a/src/interfaces/ecpg/preproc/po/ru.po b/src/interfaces/ecpg/preproc/po/ru.po index b4da548eb4a48..e2c3683b46d49 100644 --- a/src/interfaces/ecpg/preproc/po/ru.po +++ b/src/interfaces/ecpg/preproc/po/ru.po @@ -1,13 +1,13 @@ # Russian message translation file for ecpg # Copyright (C) 2012-2016 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: ecpg (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: 2024-09-04 07:22+0300\n" +"PO-Revision-Date: 2025-08-30 22:23+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -291,7 +291,7 @@ msgstr "незавершённый идентификатор в кавычка #: pgc.l:985 #, c-format msgid "parameter number too large" -msgstr "" +msgstr "номер параметра слишком большой" #: pgc.l:990 #, c-format @@ -685,9 +685,9 @@ msgid "variable \"%s\" is not an array" msgstr "переменная \"%s\" - не массив" #: variable.c:220 -#, fuzzy, c-format +#, c-format msgid "unmatched bracket in variable \"%s\"" -msgstr "неправильно оформленная переменная \"%s\"" +msgstr "непарная квадратная скобка в переменной \"%s\"" #: variable.c:235 variable.c:258 #, c-format diff --git a/src/interfaces/libpq/po/es.po b/src/interfaces/libpq/po/es.po index 98349a8ad1f06..ae1e34d5a69b8 100644 --- a/src/interfaces/libpq/po/es.po +++ b/src/interfaces/libpq/po/es.po @@ -10,10 +10,10 @@ # msgid "" msgstr "" -"Project-Id-Version: libpq (PostgreSQL) 16\n" +"Project-Id-Version: libpq (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2023-10-03 07:10+0000\n" -"PO-Revision-Date: 2023-10-06 13:28+0200\n" +"POT-Creation-Date: 2025-09-20 09:40+0000\n" +"PO-Revision-Date: 2025-09-21 11:07+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -23,921 +23,1375 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\n" -#: ../../port/thread.c:50 ../../port/thread.c:86 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 +#, fuzzy, c-format +#| msgid "database removal failed: %s" +msgid "libcurl easy handle removal failed: %s" +msgstr "falló la eliminación de la base de datos: %s" + +#: ../libpq-oauth/oauth-curl.c:327 +#, fuzzy, c-format +#| msgid "creation of new role failed: %s" +msgid "libcurl multi handle cleanup failed: %s" +msgstr "falló la creación del nuevo rol: %s" + +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#, c-format +#| msgid "could not establish SSL connection: %s" +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 +#, c-format +#| msgid "failed to send SSL negotiation response: %m" +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 +#, c-format +msgid "JSON is too deeply nested" +msgstr "JSON está anidado demasiado profundamente" + +#: ../libpq-oauth/oauth-curl.c:540 +#, c-format +msgid "internal error: started field '%s' before field '%s' was finished" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:567 +#, c-format +#| msgid "Key %s is duplicated." +msgid "field \"%s\" is duplicated" +msgstr "el campo %s está duplicado" + +#: ../libpq-oauth/oauth-curl.c:592 +#, c-format +msgid "internal error: field '%s' still active at end of object" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 +#, c-format +#| msgid "cannot extract elements from an object" +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: received unexpected database pattern_id %d" +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 "" + +#: ../libpq-oauth/oauth-curl.c:713 +#, c-format +msgid "internal error: scalar field '%s' would be assigned twice" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:735 +#, c-format +msgid "internal error: array member found at nesting level %d" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:770 +#, c-format +#| msgid "no column alias was provided" +msgid "no content type was provided" +msgstr "no se entregó un tipo de contenido" + +#: ../libpq-oauth/oauth-curl.c:809 +#, c-format +#| msgid "unexpected message type \"%c\"" +msgid "unexpected content type: \"%s\"" +msgstr "tipo de contenido inesperado: «%s»" + +#: ../libpq-oauth/oauth-curl.c:834 +#, c-format +#| msgid "SSL certificate's name contains embedded null" +msgid "response contains embedded NULLs" +msgstr "la respuesta contiene caracteres NULL" + +#: ../libpq-oauth/oauth-curl.c:844 +#, c-format +#| msgid "index \"%s\" is not valid" +msgid "response is not valid UTF-8" +msgstr "la respuesta no es UTF-8 válido" + +#: ../libpq-oauth/oauth-curl.c:884 +#, c-format +#| msgid "File \"%s\" is missing." +msgid "field \"%s\" is missing" +msgstr "falta el campo «%s»" + +#: ../libpq-oauth/oauth-curl.c:1118 +#, c-format +msgid "provider rejected the oauth_client_secret" +msgstr "el proveedor rechazó el oauth_client_secret" + +#: ../libpq-oauth/oauth-curl.c:1182 +#, fuzzy, c-format +#| msgid "failed to restore old locale \"%s\"" +msgid "failed to create epoll set: %m" +msgstr "no se pudo restaurar la configuración regional anterior «%s»" + +#: ../libpq-oauth/oauth-curl.c:1189 +#, fuzzy, c-format +#| msgid "failed to send signal to postmaster: %m" +msgid "failed to create timerfd: %m" +msgstr "no se pudo enviar señal a postmaster: %m" + +#: ../libpq-oauth/oauth-curl.c:1195 +#, fuzzy, c-format +#| msgid "failed to send signal to postmaster: %m" +msgid "failed to add timerfd to epoll set: %m" +msgstr "no se pudo enviar señal a postmaster: %m" + +#. translator: the term "kqueue" (kernel queue) should not be translated +#: ../libpq-oauth/oauth-curl.c:1205 +#, fuzzy, c-format +#| msgid "could not create socket: %s" +msgid "failed to create kqueue: %m" +msgstr "no se pudo crear el socket: %s" + +#: ../libpq-oauth/oauth-curl.c:1218 +#, fuzzy, c-format +#| msgid "failed to send signal to postmaster: %m" +msgid "failed to create timer kqueue: %m" +msgstr "no se pudo enviar señal a postmaster: %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 +#, fuzzy, c-format +#| msgid "could not send data to client: %m" +msgid "could not add to epoll set: %m" +msgstr "no se pudo enviar datos al cliente: %m" + +#: ../libpq-oauth/oauth-curl.c:1283 +#, fuzzy, c-format +#| msgid "could not delete file \"%s\": %m" +msgid "could not delete from epoll set: %m" +msgstr "no se pudo borrar el archivo «%s»: %m" + +#: ../libpq-oauth/oauth-curl.c:1287 +#, fuzzy, c-format +#| msgid "could not duplicate stdout: %m" +msgid "could not update epoll set: %m" +msgstr "no se pudo duplicar stdout: %m" + +#: ../libpq-oauth/oauth-curl.c:1347 +#, fuzzy, c-format +#| msgid "could not open output file: %m" +msgid "could not modify kqueue: %m" +msgstr "no se pudo abrir el archivo de salida: %m" + +#: ../libpq-oauth/oauth-curl.c:1371 +#, fuzzy, c-format +#| msgid "could not delete file \"%s\": %m" +msgid "could not delete from kqueue: %m" +msgstr "no se pudo borrar el archivo «%s»: %m" + +#: ../libpq-oauth/oauth-curl.c:1374 +#, fuzzy, c-format +#| msgid "could not read input file: %m" +msgid "could not add to kqueue: %m" +msgstr "no se pudo leer el archivo de entrada: %m" + +#: ../libpq-oauth/oauth-curl.c:1423 +#, fuzzy, c-format +#| msgid "could not close TOC file: %m" +msgid "could not comb kqueue: %m" +msgstr "no se pudo cerrar el archivo TOC: %m" + +#: ../libpq-oauth/oauth-curl.c:1473 +#, c-format +msgid "setting timerfd to %ld: %m" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:1503 +#, c-format +msgid "deleting kqueue timer: %m" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:1510 +#, c-format +msgid "removing kqueue timer from multiplexer: %m" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:1521 +#, c-format +msgid "setting kqueue timer to %ld: %m" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:1528 +#, c-format +msgid "adding kqueue timer to multiplexer: %m" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:1553 +#, c-format +#| msgid "Checking cluster versions" +msgid "checking timer expiration: %m" +msgstr "verificando la expiración del temporizador: %m" + +#: ../libpq-oauth/oauth-curl.c:1715 +#, fuzzy, c-format +#| msgid "failed to restore old locale" +msgid "failed to create libcurl multi handle" +msgstr "no se pudo restaurar la configuración regional anterior" + +#: ../libpq-oauth/oauth-curl.c:1735 +#, fuzzy, c-format +#| msgid "failed to restore old locale" +msgid "failed to create libcurl handle" +msgstr "no se pudo restaurar la configuración regional anterior" + +#: ../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 +#: 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-secure-openssl.c:1135 +#, c-format +msgid "out of memory" +msgstr "memoria agotada" + +#: ../libpq-oauth/oauth-curl.c:1847 +#, c-format +#| msgid "tsquery is too large" +msgid "response is too large" +msgstr "la respuesta es demasiado grande" + +#: ../libpq-oauth/oauth-curl.c:1889 +#, 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 +#, fuzzy, c-format +#| msgid "checkpoint request failed" +msgid "asynchronous HTTP request failed: %s" +msgstr "falló la petición de checkpoint" + +#: ../libpq-oauth/oauth-curl.c:2011 +#, fuzzy, c-format +msgid "no result was retrieved for the finished handle" +msgstr "no se obtuvo un resultado desde el “handle” terminado" + +#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 +#: ../libpq-oauth/oauth-curl.c:2529 +#, fuzzy, c-format +#| msgid "unexpected section code %d" +msgid "unexpected response code %ld" +msgstr "código de sección %d inesperado" + +#: ../libpq-oauth/oauth-curl.c:2216 +#, fuzzy, c-format +#| msgid "server certificate for \"%s\" does not match host name \"%s\"" +msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" +msgstr "el certificado de servidor para «%s» no coincide con el nombre de servidor «%s»" + +#: ../libpq-oauth/oauth-curl.c:2243 +#, 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 +#, 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 +#, c-format +msgid "token endpoint \"%s\" must use HTTPS" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:2587 +#, c-format +msgid "slow_down interval overflow" +msgstr "" + +#. 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 +#, c-format +msgid "Visit %s and enter the code: %s\n" +msgstr "Visit %s en ingrese el código: %s\n" + +#: ../libpq-oauth/oauth-curl.c:2628 +#, c-format +msgid "device prompt failed" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:2684 +#, c-format +msgid "curl_global_init previously failed during OAuth setup" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:2703 #, c-format -msgid "could not look up local user ID %d: %s" -msgstr "no se pudo buscar el usuario local de ID %d: %s" +msgid "curl_global_init failed during OAuth setup" +msgstr "" -#: ../../port/thread.c:55 ../../port/thread.c:91 +#: ../libpq-oauth/oauth-curl.c:2724 #, c-format -msgid "local user with ID %d does not exist" -msgstr "no existe un usuario local con ID %d" +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 ya no es thread-seguro\n" +"\tLa inicialización de Curl se reportó thread-segura cuando libpq\n" +"\tfue compilado, pero la versión actualmente instalada de libcurl\n" +"\treporta que no lo es. Recompile libpq contra la versión instalada\n" +"\tde libcurl." -#: fe-auth-scram.c:227 +#: fe-auth-scram.c:228 #, c-format msgid "malformed SCRAM message (empty message)" msgstr "mensaje SCRAM mal formado (mensaje vacío)" -#: fe-auth-scram.c:232 +#: fe-auth-scram.c:233 #, c-format msgid "malformed SCRAM message (length mismatch)" msgstr "mensaje SCRAM mal formado (longitud no coincide)" -#: fe-auth-scram.c:275 +#: fe-auth-scram.c:277 #, c-format msgid "could not verify server signature: %s" msgstr "no se pudo verificar la signatura del servidor: %s" -#: fe-auth-scram.c:281 +#: fe-auth-scram.c:283 #, c-format msgid "incorrect server signature" msgstr "signatura de servidor incorrecta" -#: fe-auth-scram.c:290 +#: fe-auth-scram.c:292 #, c-format msgid "invalid SCRAM exchange state" msgstr "estado de intercambio SCRAM no es válido" -#: fe-auth-scram.c:317 +#: fe-auth-scram.c:316 #, c-format msgid "malformed SCRAM message (attribute \"%c\" expected)" msgstr "mensaje SCRAM mal formado (se esperaba atributo «%c»)" -#: fe-auth-scram.c:326 +#: fe-auth-scram.c:325 #, c-format msgid "malformed SCRAM message (expected character \"=\" for attribute \"%c\")" msgstr "mensaje SCRAM mal formado (se esperaba el carácter «=» para el atributo «%c»)" -#: fe-auth-scram.c:366 +#: fe-auth-scram.c:365 #, c-format msgid "could not generate nonce" msgstr "no se pudo generar nonce" -#: 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:1321 -#: fe-exec.c:3111 fe-exec.c:4071 fe-exec.c:4235 fe-gssapi-common.c:109 -#: fe-lobj.c:870 fe-protocol3.c:204 fe-protocol3.c:228 fe-protocol3.c:256 -#: fe-protocol3.c:273 fe-protocol3.c:353 fe-protocol3.c:720 fe-protocol3.c:959 -#: fe-protocol3.c:1770 fe-protocol3.c:2170 fe-secure-common.c:110 -#: fe-secure-gssapi.c:500 fe-secure-openssl.c:434 fe-secure-openssl.c:1285 -#, c-format -msgid "out of memory" -msgstr "memoria agotada" - -#: fe-auth-scram.c:382 +#: fe-auth-scram.c:381 #, c-format msgid "could not encode nonce" msgstr "no se pudo codificar nonce" -#: fe-auth-scram.c:570 +#: fe-auth-scram.c:569 #, c-format msgid "could not calculate client proof: %s" msgstr "no se pudo calcular la prueba del cliente: %s" -#: fe-auth-scram.c:585 +#: fe-auth-scram.c:584 #, c-format msgid "could not encode client proof" msgstr "no se pudo codificar la prueba del cliente" -#: fe-auth-scram.c:637 +#: fe-auth-scram.c:636 #, c-format msgid "invalid SCRAM response (nonce mismatch)" msgstr "respuesta SCRAM no es válida (nonce no coincide)" -#: fe-auth-scram.c:667 +#: fe-auth-scram.c:666 #, c-format msgid "malformed SCRAM message (invalid salt)" msgstr "mensaje SCRAM mal formado (sal no válida)" -#: fe-auth-scram.c:680 +#: fe-auth-scram.c:679 #, c-format msgid "malformed SCRAM message (invalid iteration count)" msgstr "mensaje SCRAM mal formado (el conteo de iteración no es válido)" -#: fe-auth-scram.c:685 +#: fe-auth-scram.c:684 #, c-format msgid "malformed SCRAM message (garbage at end of server-first-message)" msgstr "mensaje SCRAM mal formado (se encontró basura al final de server-first-message)" -#: fe-auth-scram.c:719 +#: fe-auth-scram.c:718 #, c-format msgid "error received from server in SCRAM exchange: %s" msgstr "se recibió un error desde el servidor durante el intercambio 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 "mensaje SCRAM mal formado (se encontró basura al final de server-final-message)" -#: fe-auth-scram.c:751 +#: fe-auth-scram.c:750 #, c-format msgid "malformed SCRAM message (invalid server signature)" msgstr "mensaje SCRAM mal formado (la signatura del servidor no es válida)" -#: fe-auth-scram.c:923 +#: fe-auth-scram.c:940 msgid "could not generate random salt" msgstr "no se pudo generar una sal aleatoria" -#: fe-auth.c:77 +#: fe-auth.c:80 #, c-format msgid "out of memory allocating GSSAPI buffer (%d)" msgstr "memoria agotada creando el búfer GSSAPI (%d)" -#: fe-auth.c:138 +#: fe-auth.c:146 msgid "GSSAPI continuation error" msgstr "error en continuación de 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 "el nombre de servidor debe ser especificado" -#: fe-auth.c:174 +#: fe-auth.c:182 #, c-format msgid "duplicate GSS authentication request" msgstr "petición de autentificación GSS duplicada" -#: fe-auth.c:238 +#: fe-auth.c:246 #, c-format msgid "out of memory allocating SSPI buffer (%d)" msgstr "memoria agotada creando el búfer SSPI (%d)" -#: fe-auth.c:285 +#: fe-auth.c:297 msgid "SSPI continuation error" msgstr "error en continuación de SSPI" -#: fe-auth.c:359 +#: fe-auth.c:372 #, c-format msgid "duplicate SSPI authentication request" msgstr "petición de autentificación SSPI duplicada" -#: fe-auth.c:384 +#: fe-auth.c:397 msgid "could not acquire SSPI credentials" msgstr "no se pudo obtener las credenciales SSPI" -#: fe-auth.c:437 +#: fe-auth.c:449 #, c-format msgid "channel binding required, but SSL not in use" msgstr "se requiere enlazado de canal (channel binding), pero no se está usando SSL" -#: fe-auth.c:443 +#: fe-auth.c:455 #, c-format msgid "duplicate SASL authentication request" msgstr "petición de autentificación SASL duplicada" -#: fe-auth.c:501 +#: fe-auth.c:513 #, c-format msgid "channel binding is required, but client does not support it" msgstr "se requiere enlazado de canal (channel binding), pero no está soportado en el cliente" -#: fe-auth.c:517 +#: fe-auth.c:529 #, c-format msgid "server offered SCRAM-SHA-256-PLUS authentication over a non-SSL connection" msgstr "el servidor ofreció autenticación SCRAM-SHA-256-PLUS sobre una conexión no-SSL" -#: fe-auth.c:531 +#: fe-auth.c:551 #, c-format msgid "none of the server's SASL authentication mechanisms are supported" msgstr "ningún método de autentificación SASL del servidor está soportado" -#: fe-auth.c:538 +#: fe-auth.c:571 +#, c-format +#| msgid "authentication method requirement \"%s\" failed: %s" +msgid "authentication method requirement \"%s\" failed: server requested %s authentication" +msgstr "el método de autentificación «%s» requerido falló: el servidor solicitó autenticación %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 "se requiere enlazado de canal (channel binding), pero el servidor no ofrece un método de autenticación que lo soporte" -#: fe-auth.c:641 +#: fe-auth.c:716 #, c-format msgid "out of memory allocating SASL buffer (%d)" msgstr "memoria agotada creando el búfer SASL (%d)" -#: fe-auth.c:665 +#: fe-auth.c:758 #, c-format msgid "AuthenticationSASLFinal received from server, but SASL authentication was not completed" msgstr "Se recibió AuthenticationSASLFinal desde el servidor, pero la autentificación SASL no se completó" -#: fe-auth.c:675 +#: fe-auth.c:768 #, c-format msgid "no client response found after SASL exchange success" msgstr "no se encontró respuesta del cliente luego del intercambio SASL exitoso" -#: 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 "no se pudo cifrar contraseña: %s" -#: fe-auth.c:773 +#: fe-auth.c:873 msgid "server requested a cleartext password" -msgstr "el servidor solicitó una contraseña en texto claro" +msgstr "el servidor solicitó clave en texto plano" -#: fe-auth.c:775 +#: fe-auth.c:875 msgid "server requested a hashed password" -msgstr "el servidor solicitó una contraseña cifrada" +msgstr "el servidor solicitó una clave digerida (hashed)" -#: fe-auth.c:778 +#: fe-auth.c:878 msgid "server requested GSSAPI authentication" msgstr "el servidor solicitó autentificación GSSAPI" -#: fe-auth.c:780 +#: fe-auth.c:880 msgid "server requested SSPI authentication" msgstr "el servidor solicitó autentificación SSPI" -#: fe-auth.c:784 +#: fe-auth.c:884 msgid "server requested SASL authentication" msgstr "el servidor solicitó autentificación SASL" -#: fe-auth.c:787 +#: fe-auth.c:887 msgid "server requested an unknown authentication type" msgstr "múltiples valores especificados para el tipo de autentificación" -#: fe-auth.c:820 +#: fe-auth.c:920 #, c-format msgid "server did not request an SSL certificate" msgstr "el servidor no solicitó un certificado SSL" -#: fe-auth.c:825 +#: fe-auth.c:925 #, c-format msgid "server accepted connection without a valid SSL certificate" msgstr "el servidor aceptó la conexión sin un certificado SSL válido" -#: fe-auth.c:879 +#: fe-auth.c:979 msgid "server did not complete authentication" msgstr "el servidor no completó la autentificación" -#: fe-auth.c:913 +#: fe-auth.c:1013 #, c-format msgid "authentication method requirement \"%s\" failed: %s" msgstr "el método de autentificación «%s» requerido falló: %s" -#: fe-auth.c:936 +#: fe-auth.c:1036 #, c-format msgid "channel binding required, but server authenticated client without channel binding" msgstr "se requiere enlazado de canal (channel binding), pero el servidor autenticó al cliente sin enlazado de canal" -#: fe-auth.c:941 +#: fe-auth.c:1041 #, c-format msgid "channel binding required but not supported by server's authentication request" msgstr "se requiere enlazado de canal (channel binding), pero no es compatible con la solicitud de autenticación del servidor" -#: fe-auth.c:975 +#: fe-auth.c:1081 #, c-format msgid "Kerberos 4 authentication not supported" msgstr "el método de autentificación Kerberos 4 no está soportado" -#: fe-auth.c:979 +#: fe-auth.c:1085 #, c-format msgid "Kerberos 5 authentication not supported" msgstr "el método de autentificación Kerberos 5 no está soportado" -#: fe-auth.c:1049 +#: fe-auth.c:1155 #, c-format msgid "GSSAPI authentication not supported" msgstr "el método de autentificación GSSAPI no está soportado" -#: fe-auth.c:1080 +#: fe-auth.c:1186 #, c-format msgid "SSPI authentication not supported" msgstr "el método de autentificación SSPI no está soportado" -#: fe-auth.c:1087 +#: fe-auth.c:1193 #, c-format msgid "Crypt authentication not supported" msgstr "el método de autentificación Crypt no está soportado" -#: fe-auth.c:1151 +#: fe-auth.c:1267 #, c-format msgid "authentication method %u not supported" msgstr "el método de autentificación %u no está soportado" -#: fe-auth.c:1197 +#: fe-auth.c:1307 #, c-format msgid "user name lookup failure: error code %lu" msgstr "fallo en la búsqueda de nombre de usuario: código de error %lu" -#: fe-auth.c:1321 +#: fe-auth.c:1315 +#, c-format +msgid "could not look up local user ID %ld: %m" +msgstr "no se pudo encontrar el ID del usuario local %ld: %m" + +#: fe-auth.c:1320 +#, c-format +#| msgid "local user with ID %d does not exist" +msgid "local user with ID %ld does not exist" +msgstr "no existe un usuario local con ID %ld" + +#: fe-auth.c:1439 #, c-format msgid "unexpected shape of result set returned for SHOW" msgstr "SHOW retornó un conjunto de resultados con estructura inesperada" -#: fe-auth.c:1329 +#: fe-auth.c:1447 #, c-format -msgid "password_encryption value too long" -msgstr "el valor para password_encryption es demasiado largo" +msgid "\"password_encryption\" value too long" +msgstr "el valor de «password_encryption» es demasiado largo" -#: fe-auth.c:1379 +#: fe-auth.c:1497 #, c-format msgid "unrecognized password encryption algorithm \"%s\"" msgstr "algoritmo para cifrado de contraseña «%s» desconocido" -#: fe-connect.c:1132 +#: fe-cancel.c:79 +#, c-format +msgid "connection pointer is NULL" +msgstr "el puntero de conexión es NULL" + +#: fe-cancel.c:85 fe-misc.c:613 +#, c-format +msgid "connection not open" +msgstr "la conexión no está abierta" + +#: fe-cancel.c:92 +#, c-format +msgid "no cancellation key received" +msgstr "no se recibió clave de cancelación" + +#: fe-cancel.c:212 +#, c-format +msgid "cancel request is already being sent on this connection" +msgstr "petición de cancelación ya fue enviada en esta conexión" + +#: fe-cancel.c:282 +#, c-format +msgid "unexpected response from server" +msgstr "respuesta inesperada del servidor" + +#: fe-connect.c:1308 #, 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:1212 +#: fe-connect.c:1388 #, 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:1337 +#: fe-connect.c:1516 #, c-format msgid "negative require_auth method \"%s\" cannot be mixed with non-negative methods" -msgstr "el método require_auth negativo «%s» no puede ser mezclado con métodos no-negativos" +msgstr "el método negativo require_auth «%s» no puede mezclarse con métodos no negativos" -#: fe-connect.c:1350 +#: fe-connect.c:1529 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" -msgstr "el método require_auth «%s» no puede ser mezclado con métodos negativos" +msgstr "el método require_auth «%s» no puede mezclarse con métodos negativos" -#: 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: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 #, c-format msgid "invalid %s value: \"%s\"" msgstr "valor %s no válido: «%s»" -#: fe-connect.c:1443 +#: fe-connect.c:1647 +#, c-format +msgid "internal error: no space in allowed_sasl_mechs" +msgstr "" + +#: fe-connect.c:1686 #, 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:1484 fe-connect.c:1523 fe-connect.c:1606 +#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 #, 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:1546 +#: fe-connect.c:1848 +#, 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 #, c-format msgid "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-full\")" -msgstr "el sslmode débil «%s» no puede ser usado con sslrootcert=system (use «verify-full»)" +msgstr "el sslmode «%s» débil no puede usarse con sslrootcert=system (use «verify-full»)" -#: fe-connect.c:1584 +#: fe-connect.c:1883 fe-connect.c:1891 +#, c-format +msgid "invalid \"%s\" value: \"%s\"" +msgstr "valor «%s» no válido: «%s»" + +#: fe-connect.c:1908 #, c-format msgid "invalid SSL protocol version range" msgstr "rango de versión de protocolo SSL no válido " -#: fe-connect.c:1621 +#: fe-connect.c:1945 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" -msgstr "el valor «%2$s» de %1$s no está soportado (verifique la versión de OpenSSL)" +msgstr "el valor «%s» de %s no está soportado (verifique la versión de OpenSSL)" -#: fe-connect.c:1651 +#: fe-connect.c:1975 #, 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:1944 +#: fe-connect.c:2029 +#, c-format +#| msgid "invalid SCRAM response" +msgid "invalid SCRAM client key" +msgstr "llave de cliente SCRAM no válida" + +#: fe-connect.c:2034 +#, c-format +#| msgid "invalid mask length: %d" +msgid "invalid SCRAM client key length: %d" +msgstr "largo de llave de cliente SCRAM no válido: %d" + +#: fe-connect.c:2052 +#, c-format +#| msgid "invalid SCRAM response" +msgid "invalid SCRAM server key" +msgstr "llave de servidor SCRAM no válida" + +#: fe-connect.c:2057 +#, fuzzy, c-format +#| msgid "invalid mask length: %d" +msgid "invalid SCRAM server key length: %d" +msgstr "largo de llave de servidor SCRAM no válido: %d" + +#: fe-connect.c:2144 +#, fuzzy, c-format +#| msgid "\"%s\" cannot be higher than \"%s\"" +msgid "\"%s\" is greater than \"%s\"" +msgstr "«%s» no puede ser más alto que «%s»" + +#: fe-connect.c:2356 #, 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:2003 +#: fe-connect.c:2415 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "falló la conexión al servidor en el socket «%s»: " -#: fe-connect.c:2029 +#: fe-connect.c:2441 #, 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:2034 +#: fe-connect.c:2446 #, 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:2057 +#: fe-connect.c:2469 #, 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:2059 +#: fe-connect.c:2471 #, 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:2122 -#, 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-connect.c:2151 fe-connect.c:2185 fe-connect.c:2220 fe-connect.c:2318 -#: fe-connect.c:2973 +#: fe-connect.c:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 +#: fe-connect.c:3410 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) falló: %s" -#: fe-connect.c:2284 +#: fe-connect.c:2650 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) falló: código de error %d" -#: fe-connect.c:2597 +#: fe-connect.c:2962 #, 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:2676 +#: fe-connect.c:3045 #, c-format msgid "invalid port number: \"%s\"" msgstr "número de puerto no válido: «%s»" -#: fe-connect.c:2690 +#: fe-connect.c:3059 #, 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:2702 +#: fe-connect.c:3071 #, 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:2713 +#: fe-connect.c:3082 #, 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:2727 +#: fe-connect.c:3096 #, 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:2901 +#: fe-connect.c:3262 fe-connect.c:4709 +#, 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 +#, c-format +msgid "GSSAPI encryption required but no credential cache" +msgstr "cifrado GSSAPI requerido pero no hay caché de credenciales" + +#: fe-connect.c:3338 #, c-format msgid "could not create socket: %s" msgstr "no se pudo crear el socket: %s" -#: fe-connect.c:2932 +#: fe-connect.c:3369 #, 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:2943 +#: fe-connect.c:3380 #, 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:2961 -#, c-format -msgid "keepalives parameter must be an integer" -msgstr "el parámetro de keepalives debe ser un entero" - -#: fe-connect.c:3100 +#: fe-connect.c:3537 #, 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:3127 +#: fe-connect.c:3564 #, 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:3165 +#: fe-connect.c:3590 #, 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:3167 +#: fe-connect.c:3592 #, c-format msgid "could not get peer credentials: %s" msgstr "no se pudo obtener credenciales de la contraparte: %s" -#: fe-connect.c:3180 +#: fe-connect.c:3605 #, 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:3221 +#: fe-connect.c:3643 #, 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:3233 -#, c-format -msgid "GSSAPI encryption required but was impossible (possibly no credential cache, no server support, or using a local socket)" -msgstr "cifrado GSSAPI requerido, pero fue imposible (posiblemente no hay cache de credenciales, no hay soporte de servidor, o se está usando un socket local)" - -#: fe-connect.c:3274 +#: fe-connect.c:3682 #, 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:3303 +#: fe-connect.c:3708 +#, c-format +msgid "could not send cancel packet: %s" +msgstr "no se pudo enviar el paquete de cancelación: %s" + +#: fe-connect.c:3738 #, c-format msgid "could not send startup packet: %s" msgstr "no se pudo enviar el paquete de inicio: %s" -#: fe-connect.c:3378 -#, c-format +#: fe-connect.c:3811 msgid "server does not support SSL, but SSL was required" msgstr "el servidor no soporta SSL, pero SSL es requerida" -#: fe-connect.c:3404 +#: fe-connect.c:3821 +#, 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 #, 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:3424 +#: fe-connect.c:3846 #, c-format msgid "received unencrypted data after SSL response" msgstr "se recibieron datos no cifrados después de la respuesta SSL" -#: fe-connect.c:3504 +#: fe-connect.c:3909 #, 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 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "el servidor no soporta cifrado GSSAPI, pero es requerida" -#: fe-connect.c:3515 +#: fe-connect.c:3931 #, 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:3533 +#: fe-connect.c:3953 #, 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:3598 +#: fe-connect.c:4014 #, 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:3625 fe-connect.c:3794 +#: fe-connect.c:4042 fe-connect.c:4174 #, c-format msgid "received invalid authentication request" msgstr "se recibió una solicitud de autentificación no válida" -#: fe-connect.c:3630 fe-connect.c:3779 +#: fe-connect.c:4048 #, c-format msgid "received invalid protocol negotiation message" msgstr "se recibió un mensaje de negociación de protocolo no válido" -#: fe-connect.c:3648 fe-connect.c:3702 +#: fe-connect.c:4067 fe-connect.c:4121 #, c-format msgid "received invalid error message" msgstr "se recibió un mensaje de error no válido" -#: fe-connect.c:3865 +#: fe-connect.c:4151 +#, fuzzy, c-format +#| msgid "received invalid protocol negotiation message" +msgid "received duplicate protocol negotiation message" +msgstr "se recibió un mensaje de negociación de protocolo no válido" + +#: fe-connect.c:4253 +#, c-format +msgid "internal error: async authentication has no handler" +msgstr "" + +#: fe-connect.c:4278 +#, c-format +msgid "internal error: async cleanup did not release polling socket" +msgstr "" + +#: fe-connect.c:4301 +#, c-format +msgid "internal error: async authentication did not set a socket for polling" +msgstr "" + +#: fe-connect.c:4334 #, c-format msgid "unexpected message from server during startup" msgstr "se ha recibido un mensaje inesperado del servidor durante el inicio" -#: fe-connect.c:3956 +#: fe-connect.c:4425 #, c-format msgid "session is read-only" msgstr "la sesión es de solo lectura" -#: fe-connect.c:3958 +#: fe-connect.c:4427 #, c-format msgid "session is not read-only" msgstr "la sesión no es de solo lectura" -#: fe-connect.c:4011 +#: fe-connect.c:4480 #, c-format msgid "server is in hot standby mode" msgstr "el servidor está en modo hot standby" -#: fe-connect.c:4013 +#: fe-connect.c:4482 #, c-format msgid "server is not in hot standby mode" msgstr "el servidor no está en modo hot standby" -#: fe-connect.c:4129 fe-connect.c:4179 +#: fe-connect.c:4607 fe-connect.c:4657 #, c-format msgid "\"%s\" failed" msgstr "«%s» falló" -#: fe-connect.c:4193 +#: fe-connect.c:4671 #, 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:5174 +#: fe-connect.c:5508 #, 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:5189 +#: fe-connect.c:5523 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "URL LDAP no válida «%s»: distinguished name faltante" -#: fe-connect.c:5201 fe-connect.c:5259 +#: fe-connect.c:5535 fe-connect.c:5593 #, 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:5213 fe-connect.c:5275 +#: fe-connect.c:5547 fe-connect.c:5609 #, 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:5225 +#: fe-connect.c:5559 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "URL LDAP no válida «%s»: no tiene filtro" -#: fe-connect.c:5247 +#: fe-connect.c:5581 #, 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:5284 +#: fe-connect.c:5618 #, c-format msgid "could not create LDAP structure" msgstr "no se pudo crear estructura LDAP" -#: fe-connect.c:5359 +#: fe-connect.c:5693 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "búsqueda en servidor LDAP falló: %s" -#: fe-connect.c:5369 +#: fe-connect.c:5703 #, 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:5371 fe-connect.c:5382 +#: fe-connect.c:5705 fe-connect.c:5716 #, c-format msgid "no entry found on LDAP lookup" msgstr "no se encontró ninguna entrada en búsqueda LDAP" -#: fe-connect.c:5392 fe-connect.c:5404 +#: fe-connect.c:5726 fe-connect.c:5738 #, c-format msgid "attribute has no values on LDAP lookup" msgstr "la búsqueda LDAP entregó atributo sin valores" -#: fe-connect.c:5455 fe-connect.c:5474 fe-connect.c:5998 +#: fe-connect.c:5789 fe-connect.c:5808 fe-connect.c:6332 #, 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:5545 fe-connect.c:6181 fe-connect.c:6979 +#: fe-connect.c:5879 fe-connect.c:6515 fe-connect.c:7345 #, c-format msgid "invalid connection option \"%s\"" msgstr "opción de conexión no válida «%s»" -#: fe-connect.c:5560 fe-connect.c:6046 +#: fe-connect.c:5894 fe-connect.c:6380 #, 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:5640 +#: fe-connect.c:5974 #, c-format msgid "definition of service \"%s\" not found" msgstr "la definición de servicio «%s» no fue encontrada" -#: fe-connect.c:5666 +#: fe-connect.c:6000 #, c-format msgid "service file \"%s\" not found" msgstr "el archivo de servicio «%s» no fue encontrado" -#: fe-connect.c:5679 +#: fe-connect.c:6013 #, 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:5750 fe-connect.c:5793 +#: fe-connect.c:6084 fe-connect.c:6127 #, 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:5761 +#: fe-connect.c:6095 #, 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:6500 +#: fe-connect.c:6834 #, 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:6577 +#: fe-connect.c:6911 #, 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:6584 +#: fe-connect.c:6918 #, 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:6599 +#: fe-connect.c:6933 #, 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:6728 +#: fe-connect.c:7062 #, 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:6748 +#: fe-connect.c:7082 #, 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:6800 +#: fe-connect.c:7134 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "parámetro de URI no válido: «%s»" -#: fe-connect.c:6874 +#: fe-connect.c:7218 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "elemento escapado con %% no válido: «%s»" -#: fe-connect.c:6884 +#: fe-connect.c:7228 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "valor no permitido %%00 en valor escapado con %%: «%s»" -#: fe-connect.c:7248 +#: fe-connect.c:7250 +#, 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 msgid "connection pointer is NULL\n" msgstr "el puntero de conexión es NULL\n" -#: fe-connect.c:7256 fe-exec.c:710 fe-exec.c:970 fe-exec.c:3292 -#: fe-protocol3.c:974 fe-protocol3.c:1007 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "memoria agotada\n" -#: fe-connect.c:7547 +#: fe-connect.c:7936 #, 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:7556 +#: fe-connect.c:7946 #, 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:7663 +#: fe-connect.c:8050 #, c-format msgid "password retrieved from file \"%s\"" msgstr "contraseña obtenida desde el archivo «%s»" -#: fe-exec.c:466 fe-exec.c:3366 +#: fe-connect.c:8216 +#, 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 #, 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:528 fe-protocol3.c:1976 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:831 +#: fe-exec.c:834 #, c-format msgid "write to server failed" msgstr "falló escritura al servidor" -#: fe-exec.c:869 +#: fe-exec.c:874 #, c-format msgid "no error text available" msgstr "no hay mensaje de error disponible" -#: fe-exec.c:958 +#: fe-exec.c:963 msgid "NOTICE" msgstr "AVISO" -#: fe-exec.c:1016 +#: fe-exec.c:1021 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:1028 +#: fe-exec.c:1033 msgid "size_t overflow" msgstr "desbordamiento de size_t" -#: fe-exec.c:1444 fe-exec.c:1513 fe-exec.c:1559 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "la cadena de orden es un puntero nulo" -#: fe-exec.c:1450 fe-exec.c:2888 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "no se permite %s en modo pipeline" -#: fe-exec.c:1518 fe-exec.c:1564 fe-exec.c:1658 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, 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:1554 fe-exec.c:1653 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "el nombre de sentencia es un puntero nulo" -#: fe-exec.c:1695 fe-exec.c:3220 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "no hay conexión con el servidor" -#: fe-exec.c:1703 fe-exec.c:3228 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "hay otra orden en ejecución" -#: fe-exec.c:1733 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "no se puede agregar órdenes a la cola mientras se hace COPY" -#: fe-exec.c:1850 +#: fe-exec.c:1857 #, c-format msgid "length must be given for binary parameter" msgstr "el largo debe ser especificado para un parámetro binario" -#: fe-exec.c:2171 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "asyncStatus no esperado: %d" -#: fe-exec.c:2327 +#: fe-exec.c:2372 #, 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:2344 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "COPY terminado por un nuevo PQexec" -#: fe-exec.c:2360 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec no está permitido durante COPY BOTH" -#: fe-exec.c:2586 fe-exec.c:2641 fe-exec.c:2709 fe-protocol3.c:1907 +#: fe-exec.c:2641 +#, 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 #, c-format msgid "no COPY in progress" msgstr "no hay COPY alguno en ejecución" -#: fe-exec.c:2895 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "la conexión está en un estado incorrecto" -#: fe-exec.c:2938 +#: fe-exec.c:3064 #, 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:2974 fe-exec.c:2995 +#: fe-exec.c:3100 fe-exec.c:3121 #, 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:2978 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "no se puede salir de modo pipeline mientras haya actividad" -#: fe-exec.c:2989 +#: fe-exec.c:3115 #, 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:3154 +#: fe-exec.c:3314 #, 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:3255 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "el código de ExecStatusType no es válido" -#: fe-exec.c:3282 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresult no es un resultado de error\n" -#: fe-exec.c:3350 fe-exec.c:3373 +#: fe-exec.c:3528 fe-exec.c:3551 #, 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:3388 +#: fe-exec.c:3566 #, 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:3699 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "no se pudo interpretar el resultado del servidor: %s" -#: fe-exec.c:3964 fe-exec.c:4054 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "carácter multibyte incompleto" +#: fe-exec.c:4154 fe-exec.c:4285 +#, c-format +msgid "invalid multibyte character" +msgstr "carácter multibyte no válido" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "error de importación de nombre de GSSAPI" @@ -984,23 +1438,18 @@ msgstr "no se pudo escribir a archivo «%s»: %s" msgid "query to initialize large object functions did not return data" msgstr "la consulta para inicializar las funciones de objetos grandes no devuelve datos" -#: fe-misc.c:240 +#: fe-misc.c:239 #, c-format msgid "integer of size %lu not supported by pqGetInt" msgstr "el entero de tamaño %lu no está soportado por pqGetInt" -#: fe-misc.c:273 +#: fe-misc.c:272 #, c-format msgid "integer of size %lu not supported by pqPutInt" msgstr "el entero de tamaño %lu no está soportado por pqPutInt" -#: fe-misc.c:573 -#, c-format -msgid "connection not open" -msgstr "la conexión no está abierta" - -#: fe-misc.c:751 fe-secure-openssl.c:215 fe-secure-openssl.c:315 -#: fe-secure.c:257 fe-secure.c:419 +#: 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" @@ -1011,172 +1460,220 @@ msgstr "" "\tProbablemente se debe a que el servidor terminó de manera anormal\n" "\tantes o durante el procesamiento de la petición." -#: fe-misc.c:818 +#: fe-misc.c:858 msgid "connection not open\n" msgstr "la conexión no está abierta\n" -#: fe-misc.c:1003 +#: fe-misc.c:1046 #, c-format msgid "timeout expired" msgstr "tiempo de espera agotado" -#: fe-misc.c:1047 +#: fe-misc.c:1098 #, c-format msgid "invalid socket" msgstr "socket no válido" -#: fe-misc.c:1069 +#: fe-misc.c:1121 #, c-format msgid "%s() failed: %s" msgstr "%s() falló: %s" -#: fe-protocol3.c:182 +#: fe-protocol3.c:189 #, 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:385 +#: fe-protocol3.c:402 #, 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:427 +#: fe-protocol3.c:444 #, 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:450 +#: fe-protocol3.c:468 #, 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:468 +#: fe-protocol3.c:503 #, 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:520 fe-protocol3.c:560 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "datos insuficientes en el mensaje «T»" -#: fe-protocol3.c:631 fe-protocol3.c:837 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "no hay suficiente memoria para el resultado de la consulta" -#: fe-protocol3.c:700 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "datos insuficientes en el mensaje «t»" -#: fe-protocol3.c:759 fe-protocol3.c:791 fe-protocol3.c:809 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "datos insuficientes en el mensaje «D»" -#: fe-protocol3.c:765 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "cantidad de campos inesperada en mensaje «D»" -#: fe-protocol3.c:1020 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "no hay mensaje de error disponible\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1068 fe-protocol3.c:1087 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " en el carácter %s" -#: fe-protocol3.c:1100 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "DETALLE: %s\n" -#: fe-protocol3.c:1103 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "SUGERENCIA: %s\n" -#: fe-protocol3.c:1106 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "CONSULTA: %s\n" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "CONTEXTO: %s\n" -#: fe-protocol3.c:1122 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "NOMBRE DE ESQUEMA: %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "NOMBRE DE TABLA: %s\n" -#: fe-protocol3.c:1130 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "NOMBRE DE COLUMNA: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "NOMBRE TIPO DE DATO: %s\n" -#: fe-protocol3.c:1138 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "NOMBRE DE RESTRICCIÓN: %s\n" -#: fe-protocol3.c:1150 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "UBICACIÓN: " -#: fe-protocol3.c:1152 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1154 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1349 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "LÍNEA %d: " -#: fe-protocol3.c:1423 +#: fe-protocol3.c:1442 +#, fuzzy, c-format +#| msgid "received invalid protocol negotiation message" +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" + +#: fe-protocol3.c:1448 +#, fuzzy, c-format +#| msgid "received invalid protocol negotiation message" +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" + +#: fe-protocol3.c:1455 +#, 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ó un “downgrade” a la versión de protocolo inexistente 3.1" + +#: fe-protocol3.c:1461 +#, fuzzy, c-format +#| msgid "received invalid protocol negotiation message" +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" + +#: fe-protocol3.c:1467 +#, fuzzy, c-format +#| msgid "received invalid protocol negotiation message" +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" + +#: fe-protocol3.c:1473 #, c-format -msgid "protocol version not supported by server: client uses %u.%u, server supports up to %u.%u" -msgstr "versión de protocolo no soportada por el servidor: cliente usa %u.%u, servidor soporta hasta %u.%u" +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:1429 +#: fe-protocol3.c:1498 #, c-format -msgid "protocol extension not supported by server: %s" -msgid_plural "protocol extensions not supported by server: %s" -msgstr[0] "extensión del protocolo no soportada por el servidor: %s" -msgstr[1] "extensiones del protocolo no soportadas por el servidor: %s" +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:1437 +#: fe-protocol3.c:1501 #, c-format -msgid "invalid %s message" -msgstr "mensaje %s no válido" +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:1802 +#: fe-protocol3.c:1508 +#, fuzzy, c-format +#| msgid "received invalid protocol negotiation message" +msgid "received invalid protocol negotiation message: message too short" +msgstr "se recibió un mensaje de negociación de protocolo no válido" + +#: fe-protocol3.c:1574 +#, 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 +#, 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 +#, 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 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: no se está haciendo COPY OUT de texto" -#: fe-protocol3.c:2176 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "error de protocolo: no hay resultado de función" -#: fe-protocol3.c:2187 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "error de protocolo: id=0x%x" @@ -1227,123 +1724,131 @@ msgstr "error de «wrap» de GSSAPI" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "mensaje saliente GSSAPI no proveería confidencialidad" -#: fe-secure-gssapi.c:215 +#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:723 #, c-format msgid "client tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "el cliente intentó enviar un paquete GSSAPI demasiado grande (%zu > %zu)" -#: fe-secure-gssapi.c:351 fe-secure-gssapi.c:593 +#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:599 #, c-format msgid "oversize GSSAPI packet sent by the server (%zu > %zu)" msgstr "paquete GSSAPI demasiado grande enviado por el servidor (%zu > %zu)" -#: fe-secure-gssapi.c:390 +#: fe-secure-gssapi.c:393 msgid "GSSAPI unwrap error" msgstr "error de «unwrap» de GSSAPI" -#: fe-secure-gssapi.c:399 +#: fe-secure-gssapi.c:402 #, c-format msgid "incoming GSSAPI message did not use confidentiality" msgstr "mensaje GSSAPI entrante no usó confidencialidad" -#: fe-secure-gssapi.c:656 +#: fe-secure-gssapi.c:662 msgid "could not initiate GSSAPI security context" msgstr "no se pudo iniciar un contexto de seguridad GSSAPI" -#: fe-secure-gssapi.c:685 +#: fe-secure-gssapi.c:712 msgid "GSSAPI size check error" msgstr "error de verificación de tamaño GSSAPI" -#: fe-secure-gssapi.c:696 -msgid "GSSAPI context establishment error" -msgstr "error de establecimiento de contexto de GSSAPI" - -#: fe-secure-openssl.c:219 fe-secure-openssl.c:319 fe-secure-openssl.c:1531 +#: fe-secure-openssl.c:185 fe-secure-openssl.c:291 fe-secure-openssl.c:1382 #, c-format msgid "SSL SYSCALL error: %s" msgstr "ERROR en llamada SSL: %s" -#: fe-secure-openssl.c:225 fe-secure-openssl.c:325 fe-secure-openssl.c:1534 +#: fe-secure-openssl.c:191 fe-secure-openssl.c:297 fe-secure-openssl.c:1385 #, c-format msgid "SSL SYSCALL error: EOF detected" msgstr "ERROR en llamada SSL: detectado fin de archivo" -#: fe-secure-openssl.c:235 fe-secure-openssl.c:335 fe-secure-openssl.c:1542 +#: fe-secure-openssl.c:201 fe-secure-openssl.c:307 fe-secure-openssl.c:1393 #, c-format msgid "SSL error: %s" msgstr "error de SSL: %s" -#: fe-secure-openssl.c:249 fe-secure-openssl.c:349 +#: fe-secure-openssl.c:215 fe-secure-openssl.c:321 #, c-format msgid "SSL connection has been closed unexpectedly" msgstr "la conexión SSL se ha cerrado inesperadamente" -#: fe-secure-openssl.c:254 fe-secure-openssl.c:354 fe-secure-openssl.c:1589 +#: fe-secure-openssl.c:220 fe-secure-openssl.c:326 fe-secure-openssl.c:1440 #, c-format msgid "unrecognized SSL error code: %d" msgstr "código de error SSL no reconocido: %d" -#: fe-secure-openssl.c:397 +#: fe-secure-openssl.c:368 #, c-format msgid "could not determine server certificate signature algorithm" msgstr "no se pudo determinar el algoritmo de firma del certificado del servidor" -#: fe-secure-openssl.c:417 +#: fe-secure-openssl.c:388 #, c-format msgid "could not find digest for NID %s" msgstr "no se pudo encontrar «digest» para el NID %s" -#: fe-secure-openssl.c:426 +#: fe-secure-openssl.c:397 #, c-format msgid "could not generate peer certificate hash" msgstr "no se pudo generar hash de certificado de la contraparte" -#: fe-secure-openssl.c:509 +#: fe-secure-openssl.c:479 #, c-format msgid "SSL certificate's name entry is missing" msgstr "falta el elemento de nombre en el certificado SSL" -#: fe-secure-openssl.c:543 +#: fe-secure-openssl.c:509 #, c-format msgid "SSL certificate's address entry is missing" msgstr "falta el elemento de dirección en el certificado SSL" -#: fe-secure-openssl.c:960 +#: fe-secure-openssl.c:715 +#, fuzzy, c-format +#| msgid "%s: could not open log file \"%s\": %m\n" +msgid "WARNING: could not open SSL key logging file \"%s\": %m\n" +msgstr "%s: no se pudo abrir el archivo de log «%s»: %m\n" + +#: fe-secure-openssl.c:723 +#, fuzzy, c-format +#| msgid "could not write to log file \"%s\": %m" +msgid "WARNING: could not write to SSL key logging file \"%s\": %m\n" +msgstr "no se pudo escribir al archivo de log «%s»" + +#: fe-secure-openssl.c:776 #, c-format msgid "could not create SSL context: %s" msgstr "no se pudo crear un contexto SSL: %s" -#: fe-secure-openssl.c:1002 +#: fe-secure-openssl.c:818 #, c-format msgid "invalid value \"%s\" for minimum SSL protocol version" msgstr "valor entero «%s» no válido para la versión mínima del protocolo SSL" -#: fe-secure-openssl.c:1012 +#: fe-secure-openssl.c:828 #, c-format msgid "could not set minimum SSL protocol version: %s" msgstr "no se pudo definir la versión mínima de protocolo SSL: %s" -#: fe-secure-openssl.c:1028 +#: fe-secure-openssl.c:844 #, c-format msgid "invalid value \"%s\" for maximum SSL protocol version" msgstr "valor entero «%s» no válido para la versión máxima del protocolo SSL" -#: fe-secure-openssl.c:1038 +#: fe-secure-openssl.c:854 #, c-format msgid "could not set maximum SSL protocol version: %s" msgstr "no se pudo definir la versión máxima de protocolo SSL: %s" -#: fe-secure-openssl.c:1076 +#: fe-secure-openssl.c:892 #, c-format msgid "could not load system root certificate paths: %s" msgstr "no se pudo cargar las rutas de los certificados raíz del sistema: %s" -#: fe-secure-openssl.c:1093 +#: fe-secure-openssl.c:909 #, c-format msgid "could not read root certificate file \"%s\": %s" msgstr "no se pudo leer la lista de certificado raíz «%s»: %s" -#: fe-secure-openssl.c:1145 +#: fe-secure-openssl.c:961 #, c-format msgid "" "could not get home directory to locate root certificate file\n" @@ -1352,7 +1857,7 @@ msgstr "" "no se pudo obtener el directorio «home» para ubicar el archivo del certificado raíz\n" "Debe ya sea entregar este archivo, usar las raíces confiadas por el sistema con sslrootcert=system, o bien cambiar sslmode para inhabilitarla verificación de certificados del servidor." -#: fe-secure-openssl.c:1148 +#: fe-secure-openssl.c:964 #, c-format msgid "" "root certificate file \"%s\" does not exist\n" @@ -1361,112 +1866,137 @@ msgstr "" "el archivo de certificado raíz «%s» no existe\n" "Debe ya sea entregar este archivo, usar las raíces confiadas por el sistema con sslrootcert=system, o bien cambiar sslmode para inhabilitar la verificación de certificados del servidor." -#: fe-secure-openssl.c:1183 +#: fe-secure-openssl.c:999 #, c-format msgid "could not open certificate file \"%s\": %s" msgstr "no se pudo abrir el archivo de certificado «%s»: %s" -#: fe-secure-openssl.c:1201 +#: fe-secure-openssl.c:1017 #, c-format msgid "could not read certificate file \"%s\": %s" msgstr "no se pudo leer el archivo de certificado «%s»: %s" -#: fe-secure-openssl.c:1225 +#: fe-secure-openssl.c:1041 #, c-format msgid "could not establish SSL connection: %s" msgstr "no se pudo establecer conexión SSL: %s" -#: fe-secure-openssl.c:1257 +#: fe-secure-openssl.c:1058 +#, c-format +msgid "WARNING: sslkeylogfile support requires OpenSSL\n" +msgstr "ATENCIÓN: el soporte de sslkeylogfile requiere OpenSSL\n" + +#: fe-secure-openssl.c:1060 +#, c-format +msgid "WARNING: libpq was not built with sslkeylogfile support\n" +msgstr "ATENCIÓN: libpq no fue construido con soporte para sslkeylogfile\n" + +#: fe-secure-openssl.c:1090 #, c-format msgid "could not set SSL Server Name Indication (SNI): %s" msgstr "no se pudo establecer el Indicador de Nombre del Servidor (SNI) de SSL: %s" -#: fe-secure-openssl.c:1300 +#: fe-secure-openssl.c:1107 +#, c-format +msgid "could not set SSL ALPN extension: %s" +msgstr "no se pudo definir la extensión ALPN de SSL: %s" + +#: fe-secure-openssl.c:1150 #, c-format msgid "could not load SSL engine \"%s\": %s" msgstr "no se pudo cargar el motor SSL «%s»: %s" -#: fe-secure-openssl.c:1311 +#: fe-secure-openssl.c:1161 #, c-format msgid "could not initialize SSL engine \"%s\": %s" msgstr "no se pudo inicializar el motor SSL «%s»: %s" -#: fe-secure-openssl.c:1326 +#: fe-secure-openssl.c:1176 #, c-format msgid "could not read private SSL key \"%s\" from engine \"%s\": %s" msgstr "no se pudo leer el archivo de la llave privada SSL «%s» desde el motor «%s»: %s" -#: fe-secure-openssl.c:1339 +#: fe-secure-openssl.c:1189 #, c-format msgid "could not load private SSL key \"%s\" from engine \"%s\": %s" msgstr "no se pudo leer la llave privada SSL «%s» desde el motor «%s»: %s" -#: fe-secure-openssl.c:1376 +#: fe-secure-openssl.c:1226 #, c-format msgid "certificate present, but not private key file \"%s\"" msgstr "el certificado está presente, pero no la llave privada «%s»" -#: fe-secure-openssl.c:1379 +#: fe-secure-openssl.c:1229 #, c-format msgid "could not stat private key file \"%s\": %m" msgstr "no se pudo hacer stat del archivo de la llave privada «%s»: %m" -#: fe-secure-openssl.c:1387 +#: fe-secure-openssl.c:1237 #, c-format msgid "private key file \"%s\" is not a regular file" msgstr "el archivo de llave privada «%s» no es un archivo regular" -#: fe-secure-openssl.c:1420 +#: 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 "el archivo de llave privada «%s» tiene acceso de grupo o para todos; debe tener permisos u=rw (0600) o menos si es de propiedad del usuario de base de datos, o permisos u=rw,g=r (0640) o menos si es de root" -#: fe-secure-openssl.c:1444 +#: fe-secure-openssl.c:1294 #, c-format msgid "could not load private key file \"%s\": %s" msgstr "no se pudo cargar el archivo de la llave privada «%s»: %s" -#: fe-secure-openssl.c:1460 +#: fe-secure-openssl.c:1310 #, c-format msgid "certificate does not match private key file \"%s\": %s" msgstr "el certificado no coincide con la llave privada «%s»: %s" -#: fe-secure-openssl.c:1528 +#: fe-secure-openssl.c:1379 #, c-format msgid "SSL error: certificate verify failed: %s" msgstr "error SSL: falló la verificación de certificado: %s" -#: fe-secure-openssl.c:1573 +#: 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 "Esto puede indicar que el servidor no soporta ninguna versión del protocolo SSL entre %s y %s." -#: fe-secure-openssl.c:1606 +#: fe-secure-openssl.c:1456 +#, c-format +msgid "direct SSL connection was established without ALPN protocol negotiation extension" +msgstr "conexión SSL directa fue establecida sin extensión de negociación de protocolo ALPN" + +#: fe-secure-openssl.c:1468 +#, c-format +msgid "SSL connection was established with unexpected ALPN protocol" +msgstr "la conexión SSL fue establecida con protocolo ALPN inesperado" + +#: fe-secure-openssl.c:1485 #, c-format msgid "certificate could not be obtained: %s" msgstr "el certificado no pudo ser obtenido: %s" -#: fe-secure-openssl.c:1711 +#: fe-secure-openssl.c:1564 #, c-format msgid "no SSL error reported" msgstr "código de error SSL no reportado" -#: fe-secure-openssl.c:1720 +#: fe-secure-openssl.c:1607 #, c-format msgid "SSL error code %lu" msgstr "código de error SSL %lu" -#: fe-secure-openssl.c:1986 +#: fe-secure-openssl.c:1909 #, c-format msgid "WARNING: sslpassword truncated\n" msgstr "ADVERTENCIA: sslpassword truncada\n" -#: fe-secure.c:263 +#: fe-secure.c:233 #, c-format msgid "could not receive data from server: %s" msgstr "no se pudo recibir datos del servidor: %s" -#: fe-secure.c:434 +#: fe-secure.c:404 #, c-format msgid "could not send data to server: %s" msgstr "no se pudo enviar datos al servidor: %s" @@ -1475,3 +2005,21 @@ 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 "could not look up local user ID %d: %s" +#~ msgstr "no se pudo buscar el usuario local de ID %d: %s" + +#, c-format +#~ msgid "protocol version not supported by server: client uses %u.%u, server supports up to %u.%u" +#~ msgstr "versión de protocolo no soportada por el servidor: cliente usa %u.%u, servidor soporta hasta %u.%u" + +#, c-format +#~ msgid "protocol extension not supported by server: %s" +#~ msgid_plural "protocol extensions not supported by server: %s" +#~ msgstr[0] "extensión del protocolo no soportada por el servidor: %s" +#~ msgstr[1] "extensiones del protocolo no soportadas por el servidor: %s" + +#, c-format +#~ msgid "invalid %s message" +#~ msgstr "mensaje %s no válido" diff --git a/src/interfaces/libpq/po/fr.po b/src/interfaces/libpq/po/fr.po index 880594147d010..1640fd9abe9c4 100644 --- a/src/interfaces/libpq/po/fr.po +++ b/src/interfaces/libpq/po/fr.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-01 08:40+0000\n" -"PO-Revision-Date: 2025-08-01 11:36+0200\n" +"POT-Creation-Date: 2025-09-20 04:40+0000\n" +"PO-Revision-Date: 2025-09-20 11:08+0200\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -21,213 +21,213 @@ 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.7\n" -#: ../libpq-oauth/oauth-curl.c:306 ../libpq-oauth/oauth-curl.c:1936 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "la suppression du « easy handle » de libcurl a échoué : %s" -#: ../libpq-oauth/oauth-curl.c:326 +#: ../libpq-oauth/oauth-curl.c:327 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "le nettoyage du « multi handle » de libcurl a échoué : %s" -#: ../libpq-oauth/oauth-curl.c:389 ../libpq-oauth/oauth-curl.c:400 +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "n'a pas pu configurer %s sur la connexion OAuth : %s" -#: ../libpq-oauth/oauth-curl.c:411 +#: ../libpq-oauth/oauth-curl.c:412 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "échec lors de la réception de %s à partir de la réponse OAuth : %s" -#: ../libpq-oauth/oauth-curl.c:514 ../libpq-oauth/oauth-curl.c:624 +#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 #, c-format msgid "JSON is too deeply nested" msgstr "JSON a trop de profondeur" -#: ../libpq-oauth/oauth-curl.c:539 +#: ../libpq-oauth/oauth-curl.c:540 #, c-format msgid "internal error: started field '%s' before field '%s' was finished" msgstr "erreur interne : le champ « %s » a commencé avant que le champ « %s » n'ait terminé" -#: ../libpq-oauth/oauth-curl.c:566 +#: ../libpq-oauth/oauth-curl.c:567 #, c-format msgid "field \"%s\" is duplicated" msgstr "le champ « %s » est dupliqué" -#: ../libpq-oauth/oauth-curl.c:591 +#: ../libpq-oauth/oauth-curl.c:592 #, c-format msgid "internal error: field '%s' still active at end of object" msgstr "erreur interne : champ « %s » toujours actif à la fin de l'objet" -#: ../libpq-oauth/oauth-curl.c:606 ../libpq-oauth/oauth-curl.c:666 +#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 #, c-format msgid "top-level element must be an object" msgstr "l'élément haut-niveau doit être un objet" -#: ../libpq-oauth/oauth-curl.c:647 +#: ../libpq-oauth/oauth-curl.c:648 #, c-format msgid "internal error: found unexpected array end while parsing field '%s'" msgstr "erreur interne : a reçu une fin de tableau inattendu lors de l'analyse du champ « %s »" -#: ../libpq-oauth/oauth-curl.c:702 +#: ../libpq-oauth/oauth-curl.c:703 #, c-format msgid "internal error: scalar target found at nesting level %d" msgstr "erreur interne : cible scalaire trouvée au niveau d'imbrication %d" -#: ../libpq-oauth/oauth-curl.c:712 +#: ../libpq-oauth/oauth-curl.c:713 #, c-format msgid "internal error: scalar field '%s' would be assigned twice" msgstr "erreur interne : le champ scalaire '%s' serait affecté deux fois" -#: ../libpq-oauth/oauth-curl.c:734 +#: ../libpq-oauth/oauth-curl.c:735 #, c-format msgid "internal error: array member found at nesting level %d" msgstr "erreur interne : membre du tableau trouvé au niveau d'imbrication %d" -#: ../libpq-oauth/oauth-curl.c:769 +#: ../libpq-oauth/oauth-curl.c:770 #, c-format msgid "no content type was provided" msgstr "aucun type de contenu n'a été fourni" -#: ../libpq-oauth/oauth-curl.c:808 +#: ../libpq-oauth/oauth-curl.c:809 #, c-format msgid "unexpected content type: \"%s\"" msgstr "type de contenu inattendu : « %s »" -#: ../libpq-oauth/oauth-curl.c:833 +#: ../libpq-oauth/oauth-curl.c:834 #, c-format msgid "response contains embedded NULLs" msgstr "la réponse contient des NULL" -#: ../libpq-oauth/oauth-curl.c:843 +#: ../libpq-oauth/oauth-curl.c:844 #, c-format msgid "response is not valid UTF-8" msgstr "la réponse n'est pas de l'UTF-8 valide" -#: ../libpq-oauth/oauth-curl.c:883 +#: ../libpq-oauth/oauth-curl.c:884 #, c-format msgid "field \"%s\" is missing" msgstr "le champ « %s » est manquant" -#: ../libpq-oauth/oauth-curl.c:1117 +#: ../libpq-oauth/oauth-curl.c:1118 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "le fournisseur a rejeté oauth_client_secret" -#: ../libpq-oauth/oauth-curl.c:1181 +#: ../libpq-oauth/oauth-curl.c:1182 #, c-format msgid "failed to create epoll set: %m" msgstr "a échoué à créer « epoll set » : %m" -#: ../libpq-oauth/oauth-curl.c:1188 +#: ../libpq-oauth/oauth-curl.c:1189 #, c-format msgid "failed to create timerfd: %m" msgstr "a échoué à créer timerfd : %m" -#: ../libpq-oauth/oauth-curl.c:1194 +#: ../libpq-oauth/oauth-curl.c:1195 #, c-format msgid "failed to add timerfd to epoll set: %m" msgstr "a échoué à ajouer timerfd à « epoll set » : %m" #. translator: the term "kqueue" (kernel queue) should not be translated -#: ../libpq-oauth/oauth-curl.c:1204 +#: ../libpq-oauth/oauth-curl.c:1205 #, c-format msgid "failed to create kqueue: %m" msgstr "a échoué à créer kqueue : %m" -#: ../libpq-oauth/oauth-curl.c:1217 +#: ../libpq-oauth/oauth-curl.c:1218 #, c-format msgid "failed to create timer kqueue: %m" msgstr "a échoué à créer une chronomètre pour « epoll set » : %m" -#: ../libpq-oauth/oauth-curl.c:1261 ../libpq-oauth/oauth-curl.c:1333 +#: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 #, c-format msgid "unknown libcurl socket operation: %d" msgstr "opération inconnue par socket libcurl : %d" -#: ../libpq-oauth/oauth-curl.c:1278 +#: ../libpq-oauth/oauth-curl.c:1279 #, c-format msgid "could not add to epoll set: %m" msgstr "n'a pas pu ajouter à « epoll set » : %m" -#: ../libpq-oauth/oauth-curl.c:1282 +#: ../libpq-oauth/oauth-curl.c:1283 #, c-format msgid "could not delete from epoll set: %m" msgstr "n'a pas pu supprimer de « epoll set » : %m" -#: ../libpq-oauth/oauth-curl.c:1286 +#: ../libpq-oauth/oauth-curl.c:1287 #, c-format msgid "could not update epoll set: %m" msgstr "n'a pas pu modifier « epoll set » : %m" -#: ../libpq-oauth/oauth-curl.c:1340 +#: ../libpq-oauth/oauth-curl.c:1347 #, c-format msgid "could not modify kqueue: %m" msgstr "n'a pas pu modifier dans kqueue : %m" -#: ../libpq-oauth/oauth-curl.c:1364 +#: ../libpq-oauth/oauth-curl.c:1371 #, c-format msgid "could not delete from kqueue: %m" msgstr "n'a pas pu supprimer de kqueue : %m" -#: ../libpq-oauth/oauth-curl.c:1367 +#: ../libpq-oauth/oauth-curl.c:1374 #, c-format msgid "could not add to kqueue: %m" msgstr "n'a pas pu ajouter à kqueue : %m" -#: ../libpq-oauth/oauth-curl.c:1419 +#: ../libpq-oauth/oauth-curl.c:1423 +#, c-format +msgid "could not comb kqueue: %m" +msgstr "" + +#: ../libpq-oauth/oauth-curl.c:1473 #, c-format msgid "setting timerfd to %ld: %m" msgstr "configuration de timerfd à %ld : %m" -#: ../libpq-oauth/oauth-curl.c:1449 +#: ../libpq-oauth/oauth-curl.c:1503 #, c-format msgid "deleting kqueue timer: %m" msgstr "suppression du chronomètre kqueue : %m" -#: ../libpq-oauth/oauth-curl.c:1456 +#: ../libpq-oauth/oauth-curl.c:1510 #, c-format msgid "removing kqueue timer from multiplexer: %m" msgstr "suppression du chronomètre kqueue du multiplexeur : %m" -#: ../libpq-oauth/oauth-curl.c:1467 +#: ../libpq-oauth/oauth-curl.c:1521 #, c-format msgid "setting kqueue timer to %ld: %m" msgstr "configuration du chronomètre kqueue à %ld : %m" -#: ../libpq-oauth/oauth-curl.c:1474 +#: ../libpq-oauth/oauth-curl.c:1528 #, c-format msgid "adding kqueue timer to multiplexer: %m" msgstr "ajout du chronomètre kqueue au multiplexeur : %m" -#: ../libpq-oauth/oauth-curl.c:1497 -#, c-format -msgid "getting timerfd value: %m" -msgstr "récupération de la valeur de timerfd : %m" - -#: ../libpq-oauth/oauth-curl.c:1519 +#: ../libpq-oauth/oauth-curl.c:1553 #, c-format -msgid "checking kqueue for timeout: %m" -msgstr "vérification de kqueue pour un dépassement de temps : %m" +msgid "checking timer expiration: %m" +msgstr "vérification de l'expiration du délai : %m" -#: ../libpq-oauth/oauth-curl.c:1651 +#: ../libpq-oauth/oauth-curl.c:1715 #, c-format msgid "failed to create libcurl multi handle" msgstr "a échoué pour créer le « multi handle » de libcurl" -#: ../libpq-oauth/oauth-curl.c:1671 +#: ../libpq-oauth/oauth-curl.c:1735 #, c-format msgid "failed to create libcurl handle" msgstr "a échoué pour créer la poignée libcurl" -#: ../libpq-oauth/oauth-curl.c:1755 ../libpq-oauth/oauth-curl.c:1796 -#: ../libpq-oauth/oauth-curl.c:2109 ../libpq-oauth/oauth-curl.c:2270 -#: ../libpq-oauth/oauth-curl.c:2331 ../libpq-oauth/oauth-curl.c:2420 -#: ../libpq-oauth/oauth-curl.c:2714 ../libpq-oauth/oauth-curl.c:2905 +#: ../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 #: 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 @@ -238,64 +238,65 @@ msgstr "a échoué pour créer la poignée libcurl" #: 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:1315 fe-exec.c:3254 fe-exec.c:4293 fe-exec.c:4459 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:210 fe-protocol3.c:233 -#: fe-protocol3.c:256 fe-protocol3.c:273 fe-protocol3.c:294 fe-protocol3.c:368 -#: fe-protocol3.c:732 fe-protocol3.c:972 fe-protocol3.c:1553 -#: fe-protocol3.c:1862 fe-protocol3.c:2263 fe-secure-common.c:110 +#: 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-secure-openssl.c:1135 #, c-format msgid "out of memory" msgstr "mémoire épuisée" -#: ../libpq-oauth/oauth-curl.c:1783 +#: ../libpq-oauth/oauth-curl.c:1847 #, c-format msgid "response is too large" msgstr "la réponse est trop large" -#: ../libpq-oauth/oauth-curl.c:1825 +#: ../libpq-oauth/oauth-curl.c:1889 #, c-format msgid "failed to queue HTTP request: %s" msgstr "a échoué pour mettre en queue la requête HTTP : %s" -#: ../libpq-oauth/oauth-curl.c:1842 ../libpq-oauth/oauth-curl.c:1895 +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "échec de la requête HTTP asynchrone : %s" -#: ../libpq-oauth/oauth-curl.c:1947 +#: ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "no result was retrieved for the finished handle" msgstr "aucun résultat n'a été récupéré pour la poignée terminée" -#: ../libpq-oauth/oauth-curl.c:2080 ../libpq-oauth/oauth-curl.c:2386 -#: ../libpq-oauth/oauth-curl.c:2465 +#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 +#: ../libpq-oauth/oauth-curl.c:2529 #, c-format msgid "unexpected response code %ld" msgstr "code de réponse inattendu %ld" -#: ../libpq-oauth/oauth-curl.c:2152 +#: ../libpq-oauth/oauth-curl.c:2216 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "l'identifiant du demandeur (%s) ne correspond pas à oauth_issuer (« %s »)" -#: ../libpq-oauth/oauth-curl.c:2179 +#: ../libpq-oauth/oauth-curl.c:2243 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "le demandeur « %s » n'a pas fourni un endpoint d'autorisation de périphérique" -#: ../libpq-oauth/oauth-curl.c:2205 +#: ../libpq-oauth/oauth-curl.c:2269 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "le endpoint d'autorisation du périphérique « %s » doit utiliser HTTPS" -#: ../libpq-oauth/oauth-curl.c:2214 +#: ../libpq-oauth/oauth-curl.c:2278 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "le endpoint « %s » du jeton doit utiliser HTTPS" -#: ../libpq-oauth/oauth-curl.c:2523 +#: ../libpq-oauth/oauth-curl.c:2587 #, c-format msgid "slow_down interval overflow" msgstr "dépassement de l'intervalle slow_down" @@ -303,27 +304,27 @@ msgstr "dépassement de l'intervalle 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:2559 +#: ../libpq-oauth/oauth-curl.c:2623 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "Allez sur %s et saisissez le code : %s\n" -#: ../libpq-oauth/oauth-curl.c:2564 +#: ../libpq-oauth/oauth-curl.c:2628 #, c-format msgid "device prompt failed" msgstr "échec de l'invite du périphérique" -#: ../libpq-oauth/oauth-curl.c:2620 +#: ../libpq-oauth/oauth-curl.c:2684 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init a échoué précédemment lors de la configuration de OAuth" -#: ../libpq-oauth/oauth-curl.c:2639 +#: ../libpq-oauth/oauth-curl.c:2703 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init a échoué lors de la configuration de OAuth" -#: ../libpq-oauth/oauth-curl.c:2660 +#: ../libpq-oauth/oauth-curl.c:2724 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -1164,8 +1165,8 @@ msgstr "espaces inattendus trouvés dans « %s », utilisez des espaces encodés msgid "connection pointer is NULL\n" msgstr "le pointeur de connexion est NULL\n" -#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3459 -#: fe-protocol3.c:987 fe-protocol3.c:1020 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "mémoire épuisée\n" @@ -1192,12 +1193,12 @@ msgstr "mot de passe récupéré dans le fichier « %s »" msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "valeur entière « %s » invalide pour l'option de connexion « %s »" -#: fe-exec.c:469 fe-exec.c:3533 +#: fe-exec.c:469 fe-exec.c:3544 #, c-format msgid "row number %d is out of range 0..%d" msgstr "le numéro de ligne %d est en dehors des limites 0..%d" -#: fe-exec.c:531 fe-protocol3.c:2068 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" @@ -1224,134 +1225,134 @@ msgstr "PGresult ne supporte pas plus de INT_MAX lignes" msgid "size_t overflow" msgstr "saturation de size_t" -#: fe-exec.c:1438 fe-exec.c:1507 fe-exec.c:1553 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "la chaîne de commande est un pointeur nul" -#: fe-exec.c:1444 fe-exec.c:3003 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s non autorisé dans le mode pipeline" -#: fe-exec.c:1512 fe-exec.c:1558 fe-exec.c:1652 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "le nombre de paramètres doit être compris entre 0 et %d" -#: fe-exec.c:1548 fe-exec.c:1647 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "le nom de l'instruction est un pointeur nul" -#: fe-exec.c:1689 fe-exec.c:3379 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "aucune connexion au serveur" -#: fe-exec.c:1697 fe-exec.c:3387 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "une autre commande est déjà en cours" -#: fe-exec.c:1727 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "ne peut pas mettre en queue les commandes lors du COPY" -#: fe-exec.c:1846 +#: fe-exec.c:1857 #, c-format msgid "length must be given for binary parameter" msgstr "la longueur doit être indiquée pour les paramètres binaires" -#: fe-exec.c:2205 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "asyncStatus inattendu : %d" -#: fe-exec.c:2361 +#: fe-exec.c:2372 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "les fonctions d'exécution de commande synchrone ne sont pas autorisées en mode pipeline" -#: fe-exec.c:2378 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "COPY terminé par un nouveau PQexec" -#: fe-exec.c:2394 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec non autorisé pendant COPY BOTH" -#: fe-exec.c:2630 +#: fe-exec.c:2641 #, c-format msgid "unrecognized message type \"%c\"" msgstr "type de message « %c » non reconnu" -#: fe-exec.c:2702 fe-exec.c:2756 fe-exec.c:2824 fe-protocol3.c:1999 +#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 #, c-format msgid "no COPY in progress" msgstr "aucun COPY en cours" -#: fe-exec.c:3010 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "connexion dans un état erroné" -#: fe-exec.c:3053 +#: fe-exec.c:3064 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "ne peut pas entrer dans le mode pipeline, connexion active" -#: fe-exec.c:3089 fe-exec.c:3110 +#: fe-exec.c:3100 fe-exec.c:3121 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "ne peut pas sortir du mode pipeline avec des résultats non récupérés" -#: fe-exec.c:3093 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "ne peut pas sortir du mode pipeline alors qu'il est occupé" -#: fe-exec.c:3104 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "ne peut pas sortir du mode pipeline pendant un COPY" -#: fe-exec.c:3303 +#: fe-exec.c:3314 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "ne peut pas envoyer le pipeline lorsqu'il n'est pas en mode pipeline" -#: fe-exec.c:3422 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "code ExecStatusType invalide" -#: fe-exec.c:3449 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresult n'est pas un résultat d'erreur\n" -#: fe-exec.c:3517 fe-exec.c:3540 +#: fe-exec.c:3528 fe-exec.c:3551 #, c-format msgid "column number %d is out of range 0..%d" msgstr "le numéro de colonne %d est en dehors des limites 0..%d" -#: fe-exec.c:3555 +#: fe-exec.c:3566 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "le numéro de paramètre %d est en dehors des limites 0..%d" -#: fe-exec.c:3866 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "n'a pas pu interpréter la réponse du serveur : %s" -#: fe-exec.c:4141 fe-exec.c:4255 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "caractère multi-octet incomplet" -#: fe-exec.c:4143 fe-exec.c:4274 +#: fe-exec.c:4154 fe-exec.c:4285 #, c-format msgid "invalid multibyte character" msgstr "caractère multi-octets invalide" @@ -1443,183 +1444,198 @@ msgstr "socket invalide" msgid "%s() failed: %s" msgstr "échec de %s() : %s" -#: fe-protocol3.c:188 +#: fe-protocol3.c:189 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "le message de type 0x%02x est arrivé alors que le serveur était en attente" -#: fe-protocol3.c:401 +#: fe-protocol3.c:402 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "" "le serveur a envoyé des données (message « D ») sans description préalable\n" "de la ligne (message « T »)" -#: fe-protocol3.c:443 +#: fe-protocol3.c:444 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "réponse inattendue du serveur, le premier caractère reçu étant « %c »" -#: fe-protocol3.c:462 +#: fe-protocol3.c:468 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "le contenu du message ne correspond pas avec la longueur du type de message « %c »" -#: fe-protocol3.c:480 +#: fe-protocol3.c:503 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "synchronisation perdue avec le serveur : a reçu le type de message « %c », longueur %d" -#: fe-protocol3.c:532 fe-protocol3.c:572 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "données insuffisantes dans le message « T »" -#: fe-protocol3.c:643 fe-protocol3.c:849 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "mémoire épuisée pour le résultat de la requête" -#: fe-protocol3.c:712 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "données insuffisantes dans le message « t »" -#: fe-protocol3.c:771 fe-protocol3.c:803 fe-protocol3.c:821 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "données insuffisantes dans le message « D »" -#: fe-protocol3.c:777 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "nombre de champs inattendu dans le message « D »" -#: fe-protocol3.c:1033 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "aucun message d'erreur disponible\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1081 fe-protocol3.c:1100 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " au caractère %s" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "DÉTAIL : %s\n" -#: fe-protocol3.c:1116 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "ASTUCE : %s\n" -#: fe-protocol3.c:1119 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "REQUÊTE : %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "CONTEXTE : %s\n" -#: fe-protocol3.c:1135 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "NOM DE SCHÉMA : %s\n" -#: fe-protocol3.c:1139 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "NOM DE TABLE : %s\n" -#: fe-protocol3.c:1143 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "NOM DE COLONNE : %s\n" -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "NOM DU TYPE DE DONNÉES : %s\n" -#: fe-protocol3.c:1151 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "NOM DE CONTRAINTE : %s\n" -#: fe-protocol3.c:1163 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "EMPLACEMENT : " -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1167 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s : %s" -#: fe-protocol3.c:1362 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "LIGNE %d : " -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1442 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "a reçu un message invalide pour la négociation du protocole : le serveur a demandé de passer sur une version du protocole postérieure" -#: fe-protocol3.c:1430 +#: fe-protocol3.c:1448 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "a reçu un message invalide pour la négociation du protocole : le serveur a demandé de passer sur une version du protocole antérieure à la 3.0" -#: fe-protocol3.c:1437 +#: fe-protocol3.c:1455 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "a reçu un message invalide de négociation du protocole : le serveur a réclamé le retour à une version inexistante du protocole (3.1)" -#: fe-protocol3.c:1443 +#: fe-protocol3.c:1461 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "a reçu un message invalide pour la négociation du protocole : le serveur a renvoyé un nombre négatif de paramètres non pris en compte" -#: fe-protocol3.c:1449 +#: fe-protocol3.c:1467 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "a reçu un message invalide pour la négociation du protocole : le serveur a négocié mais n'a demandé aucun changement" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1473 #, c-format msgid "server only supports protocol version %d.%d, but \"%s\" was set to %d.%d" msgstr "le serveur accepte seulement la version %d.%d du protocole mais « %s » a été configuré à %d.%d" -#: fe-protocol3.c:1480 +#: fe-protocol3.c:1498 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "a reçu un message invalide de négociation du protocole : le serveur a rapporté un nom de paramètre non supporté avec un préfixe « %s » (« %s »)" -#: fe-protocol3.c:1483 +#: fe-protocol3.c:1501 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "a reçu un message invalide de négociation du protocole : le serveur a rapporté un paramètre non supporté qui n'était pas demandé (« %s »)" -#: fe-protocol3.c:1490 +#: fe-protocol3.c:1508 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "a reçu un message invalide pour la négociation du protocole : message trop court" -#: fe-protocol3.c:1894 +#: fe-protocol3.c:1574 +#, c-format +msgid "received invalid BackendKeyData message: cancel key with length %d not allowed in protocol version 3.0 (must be 4 bytes)" +msgstr "a reçu un message BackendKeyData invalide : la clé d'annulation de longueur %d n'est pas autorisée dans la version 3.0 du protocole (doit être de 4 octets)" + +#: fe-protocol3.c:1581 +#, c-format +msgid "received invalid BackendKeyData message: cancel key with length %d is too short (minimum 4 bytes)" +msgstr "a reçu un message BackendKeyData invalide : la clé d'annulation de longueur %d est trop courte (minimum 4 octets)" + +#: fe-protocol3.c:1588 +#, c-format +msgid "received invalid BackendKeyData message: cancel key with length %d is too long (maximum 256 bytes)" +msgstr "a reçu un message BackendKeyData invalide : la clé d'annulation de longueur %d est trop longue (maximum 256 octets)" + +#: fe-protocol3.c:1952 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline : ne va pas réaliser un COPY OUT au format texte" -#: fe-protocol3.c:2269 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "erreur de protocole : aucun résultat de fonction" -#: fe-protocol3.c:2281 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "erreur de protocole : id=0x%x" @@ -1959,6 +1975,10 @@ msgstr "erreur de socket non reconnue : 0x%08X/%d" #~ msgid "could not look up local user ID %d: %s" #~ msgstr "n'a pas pu rechercher l'identifiant de l'utilisateur local %d : %s" +#, c-format +#~ msgid "getting timerfd value: %m" +#~ msgstr "récupération de la valeur de timerfd : %m" + #, c-format #~ msgid "invalid %s message" #~ msgstr "message %s invalide" diff --git a/src/interfaces/libpq/po/ko.po b/src/interfaces/libpq/po/ko.po index e2cdc4e86e31e..e2db44992748b 100644 --- a/src/interfaces/libpq/po/ko.po +++ b/src/interfaces/libpq/po/ko.po @@ -3,10 +3,10 @@ # msgid "" msgstr "" -"Project-Id-Version: libpq (PostgreSQL) 16\n" +"Project-Id-Version: libpq (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2023-09-07 05:40+0000\n" -"PO-Revision-Date: 2023-07-05 11:21+0900\n" +"POT-Creation-Date: 2025-09-11 21:40+0000\n" +"PO-Revision-Date: 2025-09-09 16:37+0900\n" "Last-Translator: YOUR NAME \n" "Language-Team: Korean \n" "Language: ko\n" @@ -15,196 +15,489 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: ../../port/thread.c:50 ../../port/thread.c:86 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format -msgid "could not look up local user ID %d: %s" -msgstr "UID %d 해당하는 로컬 사용자를 찾을 수 없음: %s" +msgid "libcurl easy handle removal failed: %s" +msgstr "libcurl easy handle 삭제 실패: %s" -#: ../../port/thread.c:55 ../../port/thread.c:91 +#: ../libpq-oauth/oauth-curl.c:327 #, c-format -msgid "local user with ID %d does not exist" -msgstr "ID %d 로컬 사용자 없음" +msgid "libcurl multi handle cleanup failed: %s" +msgstr "libcurl multi handle 정리 실패: %s" -#: fe-auth-scram.c:227 +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#, c-format +msgid "failed to set %s on OAuth connection: %s" +msgstr "OAuth 연결에서 %s 설정 실패: %s" + +#: ../libpq-oauth/oauth-curl.c:412 +#, 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 +#, 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\" 필드 중복됨" + +#: ../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 "최상위 레벨은 오브젝트형이어야 함" + +#: ../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에서 스칼라 타겟을 발견했음" + +#: ../libpq-oauth/oauth-curl.c:713 +#, c-format +msgid "internal error: scalar field '%s' would be assigned twice" +msgstr "내부 오류: '%s' 스칼라 필드가 두 번 지정되었음" + +#: ../libpq-oauth/oauth-curl.c:735 +#, c-format +msgid "internal error: array member found at nesting level %d" +msgstr "내부 오류: 중첩 수준 %d에서 배열 요소를 발견했음" + +#: ../libpq-oauth/oauth-curl.c:770 +#, c-format +msgid "no content type was provided" +msgstr "content type이 제공되지 않았음" + +#: ../libpq-oauth/oauth-curl.c:809 +#, c-format +msgid "unexpected content type: \"%s\"" +msgstr "예상치 못한 content type: \"%s\"" + +#: ../libpq-oauth/oauth-curl.c:834 +#, c-format +msgid "response contains embedded NULLs" +msgstr "응답에 임베디드 NULL이 포함되었음" + +#: ../libpq-oauth/oauth-curl.c:844 +#, c-format +msgid "response is not valid UTF-8" +msgstr "응답이 정상 UTF-8 인코딩이 아님" + +#: ../libpq-oauth/oauth-curl.c:884 +#, c-format +msgid "field \"%s\" is missing" +msgstr "\"%s\" 필드가 없습니다." + +#: ../libpq-oauth/oauth-curl.c:1118 +#, 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 "timer 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 처리(comb) 실패: %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 +#, c-format +msgid "deleting kqueue timer: %m" +msgstr "kqueue timer 삭제 중: %m" + +#: ../libpq-oauth/oauth-curl.c:1510 +#, c-format +msgid "removing kqueue timer from multiplexer: %m" +msgstr "multiplexer에서 kqueue timer 삭제 중: %m" + +#: ../libpq-oauth/oauth-curl.c:1521 +#, c-format +msgid "setting kqueue timer to %ld: %m" +msgstr "kqueue timer를 %ld로 설정 중: %m" + +#: ../libpq-oauth/oauth-curl.c:1528 +#, c-format +msgid "adding kqueue timer to multiplexer: %m" +msgstr "kqueue timer를 multiplexer에 추가 중: %m" + +#: ../libpq-oauth/oauth-curl.c:1553 +#, c-format +msgid "checking timer expiration: %m" +msgstr "timer 제한시간 검사 중: %m" + +#: ../libpq-oauth/oauth-curl.c:1715 +#, c-format +msgid "failed to create libcurl multi handle" +msgstr "libcurl 멀티 핸들러 만들기 실패" + +#: ../libpq-oauth/oauth-curl.c:1735 +#, 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 +#: 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-secure-openssl.c:1135 +#, c-format +msgid "out of memory" +msgstr "메모리 부족" + +#: ../libpq-oauth/oauth-curl.c:1847 +#, c-format +msgid "response is too large" +msgstr "응답 길이가 너무 깁니다" + +#: ../libpq-oauth/oauth-curl.c:1889 +#, c-format +msgid "failed to queue HTTP request: %s" +msgstr "HTTP 요청 큐 처리 실패: %s" + +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#, c-format +msgid "asynchronous HTTP request failed: %s" +msgstr "비동기 HTTP 요청 실패: %s" + +#: ../libpq-oauth/oauth-curl.c:2011 +#, 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 +#, c-format +msgid "unexpected response code %ld" +msgstr "예상치 못한 응답 코드 %ld" + +#: ../libpq-oauth/oauth-curl.c:2216 +#, c-format +msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" +msgstr "이슈 식별자 (%s)와, oauth_issuer (%s) 가 매칭되지 않음" + +#: ../libpq-oauth/oauth-curl.c:2243 +#, c-format +msgid "issuer \"%s\" does not provide a device authorization endpoint" +msgstr "\"%s\" issuer가 장치 인가 엔드포인트를 제공하지 않음" + +#: ../libpq-oauth/oauth-curl.c:2269 +#, c-format +msgid "device authorization endpoint \"%s\" must use HTTPS" +msgstr "\"%s\" 장치 인가 엔드포인트는 HTTPS를 사용해야함" + +#: ../libpq-oauth/oauth-curl.c:2278 +#, c-format +msgid "token endpoint \"%s\" must use HTTPS" +msgstr "\"%s\" 토큰 엔드포인트는 HTTPS를 사용해야함" + +#: ../libpq-oauth/oauth-curl.c:2587 +#, 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:2623 +#, c-format +msgid "Visit %s and enter the code: %s\n" +msgstr "%s 방문해서 다음 코드를 입력하세요: %s\n" + +#: ../libpq-oauth/oauth-curl.c:2628 +#, c-format +msgid "device prompt failed" +msgstr "장치 프롬프트 실패" + +#: ../libpq-oauth/oauth-curl.c:2684 +#, c-format +msgid "curl_global_init previously failed during OAuth setup" +msgstr "OAuth 설정 중 앞서 curl_global_init 실패" + +#: ../libpq-oauth/oauth-curl.c:2703 +#, c-format +msgid "curl_global_init failed during OAuth setup" +msgstr "OAuth 설정 중 curl_global_init 실패" + +#: ../libpq-oauth/oauth-curl.c:2724 +#, 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" +"\tlibpq가 컴파일될 때 Curl 초기화가 스레드에 안전하다고 \t보고되었지만, 현재 " +"설치된 libcurl 버전에서는 그렇지 않습니다.\t 설치된 libcurl 버전에 맞춰 libpq" +"를 다시 컴파일하세요." + +#: 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 "암호화 토큰(nonce)을 만들 수 없음" -#: 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:1321 -#: fe-exec.c:3111 fe-exec.c:4071 fe-exec.c:4235 fe-gssapi-common.c:109 -#: fe-lobj.c:870 fe-protocol3.c:204 fe-protocol3.c:228 fe-protocol3.c:256 -#: fe-protocol3.c:273 fe-protocol3.c:353 fe-protocol3.c:720 fe-protocol3.c:959 -#: fe-protocol3.c:1770 fe-protocol3.c:2170 fe-secure-common.c:110 -#: fe-secure-gssapi.c:500 fe-secure-openssl.c:434 fe-secure-openssl.c:1285 -#, 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 "암호화 토큰(nonce)을 인코딩할 수 없음" -#: fe-auth-scram.c:570 +#: fe-auth-scram.c:569 #, c-format msgid "could not calculate client proof: %s" msgstr "클라이언트 프루프(proof)를 계산할 수 없음: %s" -#: fe-auth-scram.c:585 +#: fe-auth-scram.c:584 #, c-format msgid "could not encode client proof" msgstr "클라이언트 프루프(proof)를 인코딩할 수 없음" -#: 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 메시지 (잘못된 소금 salt)" -#: 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 "서버는 non-SSL 접속으로 SCRAM-SHA-256-PLUS 인증을 제공함" -#: 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 " @@ -212,12 +505,12 @@ msgid "" 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 " @@ -225,164 +518,213 @@ msgid "" 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 "로컬 사용자 ID %ld 해당하는 사용자를 찾을 수 없음: %m" + +#: fe-auth.c:1320 +#, c-format +msgid "local user with ID %ld does not exist" +msgstr "ID %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 "연결 포인터가 NULL" + +#: 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:1308 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "호스트 이름은 %d개인데, 호스트 주소는 %d개임" -#: fe-connect.c:1212 +#: fe-connect.c:1388 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "포트 번호는 %d개인데, 호스트는 %d개입니다." -#: fe-connect.c:1337 +#: fe-connect.c:1516 #, c-format msgid "" "negative require_auth method \"%s\" cannot be mixed with non-negative methods" msgstr "" "\"%s\" negative require_auth 방법은 non-negative 방법과 함께 쓸 수 없음" -#: fe-connect.c:1350 +#: fe-connect.c:1529 #, c-format msgid "require_auth method \"%s\" cannot be mixed with negative methods" msgstr "\"%s\" require_auth 방법은 negative 방법과 함께 쓸 수 없음" -#: 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: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 #, c-format msgid "invalid %s value: \"%s\"" msgstr "잘못된 %s 값: \"%s\"" -#: fe-connect.c:1443 +#: fe-connect.c:1647 +#, c-format +msgid "internal error: no space in allowed_sasl_mechs" +msgstr "내부 오류: allowed_sasl_mechs 안에 여유 공간 없음" + +#: fe-connect.c:1686 #, c-format msgid "require_auth method \"%s\" is specified more than once" msgstr "\"%s\" require_auth 방법을 한 번 이상 지정했음" -#: fe-connect.c:1484 fe-connect.c:1523 fe-connect.c:1606 +#: fe-connect.c:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 #, c-format msgid "%s value \"%s\" invalid when SSL support is not compiled in" msgstr "" "SSL 연결 기능을 지원하지 않고 컴파일 된 경우는 %s 값으로 \"%s\" 값은 타당치 " "않습니다." -#: fe-connect.c:1546 +#: fe-connect.c:1848 +#, c-format +msgid "" +"weak sslmode \"%s\" may not be used with sslnegotiation=direct (use \"require" +"\", \"verify-ca\", or \"verify-full\")" +msgstr "" +"\"%s\" 엄격하지 않은 sslmode 설정일 때는 sslnegotiation=direct 설정을 할 수 " +"없음 (\"require\", \"verify-ca\", 또는 \"verify-full\" 설정을 사용하세요)" + +#: fe-connect.c:1870 #, c-format msgid "" "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-" @@ -391,358 +733,412 @@ msgstr "" "\"%s\" 엄격하지 않은 sslmode 설정일 때는 sslrootcert=system 설정을 할 수 없" "음 (\"verify-full\" 설정을 사용하세요)" -#: fe-connect.c:1584 +#: fe-connect.c:1883 fe-connect.c:1891 +#, c-format +msgid "invalid \"%s\" value: \"%s\"" +msgstr "잘못된 \"%s\" 값: \"%s\"" + +#: fe-connect.c:1908 #, c-format msgid "invalid SSL protocol version range" msgstr "잘못된 SSL 프로토콜 버전 범위" -#: fe-connect.c:1621 +#: fe-connect.c:1945 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "%s 설정 \"%s\" 값은 지원하지 않음 (OpenSSL 버전을 확인하세요)" -#: fe-connect.c:1651 +#: fe-connect.c:1975 #, c-format msgid "gssencmode value \"%s\" invalid when GSSAPI support is not compiled in" msgstr "" "GSSAPI 접속을 지원하지 않는 서버에서는 gssencmode 값(\"%s\")이 적당하지 않음" -#: fe-connect.c:1944 +#: fe-connect.c:2029 +#, c-format +msgid "invalid SCRAM client key" +msgstr "잘못된 SCRAM 클라이언트 키" + +#: fe-connect.c:2034 +#, c-format +msgid "invalid SCRAM client key length: %d" +msgstr "잘못된 SCRAM 클라이언트 키 길이: %d" + +#: fe-connect.c:2052 +#, c-format +msgid "invalid SCRAM server key" +msgstr "잘못된 SCRAM 서버 키" + +#: fe-connect.c:2057 +#, c-format +msgid "invalid SCRAM server key length: %d" +msgstr "잘못된 SCRAM 서버 키 길이: %d" + +#: fe-connect.c:2144 +#, c-format +msgid "\"%s\" is greater than \"%s\"" +msgstr "\"%s\" 값은 \"%s\" 보다 큽니다" + +#: fe-connect.c:2356 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "소켓을 TCP에 no delay 모드로 지정할 수 없음: %s" -#: fe-connect.c:2003 +#: fe-connect.c:2415 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "\"%s\" 소켓으로 서버 접속 할 수 없음: " -#: fe-connect.c:2029 +#: fe-connect.c:2441 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "\"%s\" (%s), %s 포트로 서버 접속 할 수 없음: " -#: fe-connect.c:2034 +#: fe-connect.c:2446 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "\"%s\" 포트 %s 서버에 접속 할 수 없음: " -#: fe-connect.c:2057 +#: fe-connect.c:2469 #, c-format msgid "" "\tIs the server running locally and accepting connections on that socket?" msgstr "" "\t로컬 연결을 시도 중이고, 유닉스 도메인 소켓 접속을 허용하는지 확인하세요." -#: fe-connect.c:2059 +#: fe-connect.c:2471 #, 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:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 +#: fe-connect.c:3410 #, c-format msgid "%s(%s) failed: %s" msgstr "%s(%s) 실패: %s" -#: fe-connect.c:2284 +#: fe-connect.c:2650 #, c-format msgid "%s(%s) failed: error code %d" msgstr "%s(%s) 실패: 오류 코드 %d" -#: fe-connect.c:2597 +#: fe-connect.c:2962 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "잘못된 연결 상태, 메모리 손상일 가능성이 큼" -#: fe-connect.c:2676 +#: fe-connect.c:3045 #, c-format msgid "invalid port number: \"%s\"" msgstr "잘못된 포트 번호: \"%s\"" -#: fe-connect.c:2690 +#: fe-connect.c:3059 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "\"%s\" 호스트 이름 IP 주소로 바꿀 수 없음: %s" -#: fe-connect.c:2702 +#: fe-connect.c:3071 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "\"%s\" 네트워크 주소를 해석할 수 없음: %s" -#: fe-connect.c:2713 +#: fe-connect.c:3082 #, c-format msgid "Unix-domain socket path \"%s\" is too long (maximum %d bytes)" msgstr "\"%s\" 유닉스 도메인 소켓 경로가 너무 깁니다 (최대 %d 바이트)" -#: fe-connect.c:2727 +#: fe-connect.c:3096 #, c-format msgid "could not translate Unix-domain socket path \"%s\" to address: %s" msgstr "\"%s\" 유닉스 도메인 소켓 경로를 주소로 바꿀 수 없음: %s" -#: fe-connect.c:2901 +#: fe-connect.c:3262 fe-connect.c:4709 +#, 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 +#, c-format +msgid "GSSAPI encryption required but no credential cache" +msgstr "GSSAPI 암호화가 필요한데 자격 증명 캐시가 없음" + +#: fe-connect.c:3338 #, c-format msgid "could not create socket: %s" msgstr "소켓을 만들 수 없음: %s" -#: fe-connect.c:2932 +#: fe-connect.c:3369 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "소켓을 nonblocking 모드로 지정할 수 없음: %s" -#: fe-connect.c:2943 +#: fe-connect.c:3380 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "소켓을 close-on-exec 모드로 지정할 수 없음: %s" -#: fe-connect.c:2961 -#, c-format -msgid "keepalives parameter must be an integer" -msgstr "keepalives 매개변수값은 정수여야 합니다." - -#: fe-connect.c:3100 +#: fe-connect.c:3537 #, c-format msgid "could not get socket error status: %s" msgstr "소켓 오류 상태를 구할 수 없음: %s" -#: fe-connect.c:3127 +#: fe-connect.c:3564 #, c-format msgid "could not get client address from socket: %s" msgstr "소켓에서 클라이언트 주소를 구할 수 없음: %s" -#: fe-connect.c:3165 +#: fe-connect.c:3590 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "requirepeer 매개변수는 이 운영체제에서 지원하지 않음" -#: fe-connect.c:3167 +#: fe-connect.c:3592 #, c-format msgid "could not get peer credentials: %s" msgstr "신뢰성 피어를 얻을 수 없습니다: %s" -#: fe-connect.c:3180 +#: fe-connect.c:3605 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "" "\"%s\" 이름으로 requirepeer를 지정했지만, 실재 사용자 이름은 \"%s\" 입니다." -#: fe-connect.c:3221 +#: fe-connect.c:3643 #, 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:3682 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "SSL 교섭 패킷을 보낼 수 없음: %s" -#: fe-connect.c:3303 +#: fe-connect.c:3708 +#, c-format +msgid "could not send cancel packet: %s" +msgstr "취소 패킷을 보낼 수 없음: %s" + +#: fe-connect.c:3738 #, c-format msgid "could not send startup packet: %s" msgstr "시작 패킷을 보낼 수 없음: %s" -#: fe-connect.c:3378 -#, c-format +#: fe-connect.c:3811 msgid "server does not support SSL, but SSL was required" msgstr "서버가 SSL 기능을 지원하지 않는데, SSL 기능을 요구했음" -#: fe-connect.c:3404 +#: fe-connect.c:3821 +#, c-format +msgid "server sent an error response during SSL exchange" +msgstr "SSL 교환 중에 서버가 오류 응답을 보냈음" + +#: fe-connect.c:3826 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "SSL 교섭에 대한 잘못된 응답을 감지했음: %c" -#: fe-connect.c:3424 +#: fe-connect.c:3846 #, c-format msgid "received unencrypted data after SSL response" msgstr "SSL 응답 후에 비암호화 데이터를 받았음" -#: fe-connect.c:3504 +#: fe-connect.c:3909 #, c-format +msgid "server sent an error response during GSS encryption exchange" +msgstr "GSS 암호화 교환 중에 서버가 오류 응답을 보냈음" + +#: fe-connect.c:3927 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "서버가 GSSAPI 암호화 기능을 지원하지 않는데, 이것이 필요함" -#: fe-connect.c:3515 +#: fe-connect.c:3931 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "GSSAPI 교섭에 대한 잘못된 응답을 감지했음: %c" -#: fe-connect.c:3533 +#: fe-connect.c:3953 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "GSSAPI 암호화 응답 후 비암호화 데이터 받았음" -#: fe-connect.c:3598 +#: fe-connect.c:4014 #, c-format msgid "expected authentication request from server, but received %c" msgstr "서버가 인증을 요구했지만, %c 받았음" -#: fe-connect.c:3625 fe-connect.c:3794 +#: fe-connect.c:4042 fe-connect.c:4174 #, c-format msgid "received invalid authentication request" msgstr "잘못된 인증 요청을 받았음" -#: fe-connect.c:3630 fe-connect.c:3779 +#: fe-connect.c:4048 #, c-format msgid "received invalid protocol negotiation message" msgstr "잘못된 프로토콜 교섭 메시지를 받았음" -#: fe-connect.c:3648 fe-connect.c:3702 +#: fe-connect.c:4067 fe-connect.c:4121 #, c-format msgid "received invalid error message" msgstr "잘못된 오류 메시지를 받았음" -#: fe-connect.c:3865 +#: fe-connect.c:4151 +#, c-format +msgid "received duplicate protocol negotiation message" +msgstr "프로토콜 교섭 메시지를 중복해서 받았음" + +#: fe-connect.c:4253 +#, c-format +msgid "internal error: async authentication has no handler" +msgstr "내부 오류: async 인증용 핸들러가 없음" + +#: fe-connect.c:4278 +#, c-format +msgid "internal error: async cleanup did not release polling socket" +msgstr "내부 오류: async cleanup 작업이 polling 소켓을 반환하지 않았음" + +#: fe-connect.c:4301 +#, c-format +msgid "internal error: async authentication did not set a socket for polling" +msgstr "내부 오류: async 인증이 polling을 위해 소켓 지정되지 않았음" + +#: fe-connect.c:4334 #, c-format msgid "unexpected message from server during startup" msgstr "시작하는 동안 서버로부터 기대되지 않는 메시지" -#: fe-connect.c:3956 +#: fe-connect.c:4425 #, c-format msgid "session is read-only" msgstr "세션이 읽기 전용임" -#: fe-connect.c:3958 +#: fe-connect.c:4427 #, c-format msgid "session is not read-only" msgstr "세션이 읽기 전용이 아님" -#: fe-connect.c:4011 +#: fe-connect.c:4480 #, c-format msgid "server is in hot standby mode" msgstr "서버가 hot standby 모드 상태임" -#: fe-connect.c:4013 +#: fe-connect.c:4482 #, c-format msgid "server is not in hot standby mode" msgstr "서버가 hot standby 모드 상태가 아님" -#: fe-connect.c:4129 fe-connect.c:4179 +#: fe-connect.c:4607 fe-connect.c:4657 #, c-format msgid "\"%s\" failed" msgstr "\"%s\" 실패" -#: fe-connect.c:4193 +#: fe-connect.c:4671 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "잘못된 연결 상태 %d, 메모리 손상일 가능성이 큼" -#: fe-connect.c:5174 +#: fe-connect.c:5508 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "잘못된 LDAP URL \"%s\": 스키마는 ldap:// 여야함" -#: fe-connect.c:5189 +#: fe-connect.c:5523 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "잘못된 LDAP URL \"%s\": 식별자 이름이 빠졌음" -#: fe-connect.c:5201 fe-connect.c:5259 +#: fe-connect.c:5535 fe-connect.c:5593 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "잘못된 LDAP URL \"%s\": 단 하나의 속성만 가져야함" -#: fe-connect.c:5213 fe-connect.c:5275 +#: fe-connect.c:5547 fe-connect.c:5609 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "잘못된 LDAP URL \"%s\": 검색범위(base/one/sub)를 지정해야함" -#: fe-connect.c:5225 +#: fe-connect.c:5559 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "잘못된 LDAP URL \"%s\": 필터 없음" -#: fe-connect.c:5247 +#: fe-connect.c:5581 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "잘못된 LDAP URL \"%s\": 포트번호가 잘못됨" -#: fe-connect.c:5284 +#: fe-connect.c:5618 #, c-format msgid "could not create LDAP structure" msgstr "LDAP 구조를 만들 수 없음" -#: fe-connect.c:5359 +#: fe-connect.c:5693 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "LDAP 서버를 찾을 수 없음: %s" -#: fe-connect.c:5369 +#: fe-connect.c:5703 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "LDAP 검색에서 하나 이상의 엔트리가 발견되었음" -#: fe-connect.c:5371 fe-connect.c:5382 +#: fe-connect.c:5705 fe-connect.c:5716 #, c-format msgid "no entry found on LDAP lookup" msgstr "LDAP 검색에서 해당 항목 없음" -#: fe-connect.c:5392 fe-connect.c:5404 +#: fe-connect.c:5726 fe-connect.c:5738 #, 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:5789 fe-connect.c:5808 fe-connect.c:6332 #, 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:5879 fe-connect.c:6515 fe-connect.c:7345 #, c-format msgid "invalid connection option \"%s\"" msgstr "잘못된 연결 옵션 \"%s\"" -#: fe-connect.c:5560 fe-connect.c:6046 +#: fe-connect.c:5894 fe-connect.c:6380 #, c-format msgid "unterminated quoted string in connection info string" msgstr "연결문자열에서 완성되지 못한 따옴표문자열이 있음" -#: fe-connect.c:5640 +#: fe-connect.c:5974 #, c-format msgid "definition of service \"%s\" not found" msgstr "\"%s\" 서비스 정의를 찾을 수 없음" -#: fe-connect.c:5666 +#: fe-connect.c:6000 #, c-format msgid "service file \"%s\" not found" msgstr "\"%s\" 서비스 파일을 찾을 수 없음" -#: fe-connect.c:5679 +#: fe-connect.c:6013 #, 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:6084 fe-connect.c:6127 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "\"%s\" 서비스 파일의 %d번째 줄에 구문 오류 있음" -#: fe-connect.c:5761 +#: fe-connect.c:6095 #, c-format msgid "" "nested service specifications not supported in service file \"%s\", line %d" msgstr "\"%s\" 서비스 파일의 %d번째 줄에 설정을 지원하지 않음" -#: fe-connect.c:6500 +#: fe-connect.c:6834 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "URI 구문 분석을 할 수 없음: \"%s\"" -#: fe-connect.c:6577 +#: fe-connect.c:6911 #, c-format msgid "" "end of string reached when looking for matching \"]\" in IPv6 host address " @@ -750,12 +1146,12 @@ msgid "" msgstr "" "URI의 IPv6 호스트 주소에서 \"]\" 매칭 검색을 실패했습니다, 해당 URI: \"%s\"" -#: fe-connect.c:6584 +#: fe-connect.c:6918 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "IPv6 호스트 주소가 없습니다, 해당 URI: \"%s\"" -#: fe-connect.c:6599 +#: fe-connect.c:6933 #, c-format msgid "" "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): " @@ -764,47 +1160,55 @@ msgstr "" "잘못된 \"%c\" 문자가 URI 문자열 가운데 %d 번째 있습니다(\":\" 또는 \"/\" 문자" "가 있어야 함): \"%s\"" -#: fe-connect.c:6728 +#: fe-connect.c:7062 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "" "키/밸류 구분자 \"=\" 문자가 필요 이상 더 있음, 해당 URI 쿼리 매개변수: \"%s\"" -#: fe-connect.c:6748 +#: fe-connect.c:7082 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "키/밸류 구분자 \"=\" 문자가 필요함, 해당 URI 쿼리 매개변수: \"%s\"" -#: fe-connect.c:6800 +#: fe-connect.c:7134 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "잘못된 URL 쿼리 매개변수값: \"%s\"" -#: fe-connect.c:6874 +#: fe-connect.c:7218 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "잘못된 퍼센트 인코드 토큰: \"%s\"" -#: fe-connect.c:6884 +#: fe-connect.c:7228 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "퍼센트 인코드 값에 %%00 숨김 값이 있음: \"%s\"" -#: fe-connect.c:7248 +#: fe-connect.c:7250 +#, c-format +msgid "" +"unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" +msgstr "" +"\"%s\" 안에 예상치 못한 공백 발견, 퍼센트 기호를 사용한 공백(%%20)을 사용하세" +"요" + +#: fe-connect.c:7626 msgid "connection pointer is NULL\n" msgstr "연결 포인터가 NULL\n" -#: fe-connect.c:7256 fe-exec.c:710 fe-exec.c:970 fe-exec.c:3292 -#: fe-protocol3.c:974 fe-protocol3.c:1007 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "메모리 부족\n" -#: fe-connect.c:7547 +#: fe-connect.c:7936 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "경고: \"%s\" 패스워드 파일이 plain 파일이 아님\n" -#: fe-connect.c:7556 +#: fe-connect.c:7946 #, c-format msgid "" "WARNING: password file \"%s\" has group or world access; permissions should " @@ -813,166 +1217,181 @@ msgstr "" "경고: 패스워드 파일 \"%s\"에 그룹 또는 범용 액세스 권한이 있습니다. 권한은 " "u=rw(0600) 이하여야 합니다.\n" -#: fe-connect.c:7663 +#: fe-connect.c:8050 #, c-format msgid "password retrieved from file \"%s\"" msgstr "\"%s\" 파일에서 암호를 찾을 수 없음" -#: fe-exec.c:466 fe-exec.c:3366 +#: fe-connect.c:8216 +#, c-format +msgid "invalid integer value \"%s\" for connection option \"%s\"" +msgstr "잘못된 정수값: \"%s\", 해당 연결 옵션: \"%s\"" + +#: fe-exec.c:469 fe-exec.c:3544 #, c-format msgid "row number %d is out of range 0..%d" msgstr "%d 번째 행(row)은 0..%d 범위를 벗어났음" -#: fe-exec.c:528 fe-protocol3.c:1976 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:831 +#: fe-exec.c:834 #, c-format msgid "write to server failed" msgstr "서버에 쓰기 실패" -#: fe-exec.c:869 +#: fe-exec.c:874 #, c-format msgid "no error text available" msgstr "보여줄 오류 메시지가 없음" -#: fe-exec.c:958 +#: fe-exec.c:963 msgid "NOTICE" msgstr "알림" -#: fe-exec.c:1016 +#: fe-exec.c:1021 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult 함수는 INT_MAX 튜플보다 많은 경우를 지원하지 않음" -#: fe-exec.c:1028 +#: fe-exec.c:1033 msgid "size_t overflow" msgstr "size_t 초과" -#: fe-exec.c:1444 fe-exec.c:1513 fe-exec.c:1559 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "명령 문자열이 null 포인터" -#: fe-exec.c:1450 fe-exec.c:2888 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "파이프라인 모드에서는 %s 사용할 수 없음" -#: fe-exec.c:1518 fe-exec.c:1564 fe-exec.c:1658 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "매개변수값으로 숫자는 0에서 %d까지만 쓸 수 있음" -#: fe-exec.c:1554 fe-exec.c:1653 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "실행 구문 이름이 null 포인트(값이 없음)입니다" -#: fe-exec.c:1695 fe-exec.c:3220 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "서버에 대한 연결이 없음" -#: fe-exec.c:1703 fe-exec.c:3228 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "처리 중에 이미 다른 명령이 존재함" -#: fe-exec.c:1733 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "COPY 작업 중 명령들을 큐에 담을 수 없음" -#: fe-exec.c:1850 +#: fe-exec.c:1857 #, c-format msgid "length must be given for binary parameter" msgstr "바이너리 자료 매개 변수를 사용할 때는 그 길이를 지정해야 함" -#: fe-exec.c:2171 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "기대되지 않은 asyncStatus: %d" -#: fe-exec.c:2327 +#: fe-exec.c:2372 #, c-format msgid "" "synchronous command execution functions are not allowed in pipeline mode" msgstr "파이프라인 모드에서는 동기식 명령 실행 함수는 사용할 수 없음" -#: fe-exec.c:2344 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "새 PQexec 호출로 COPY 작업이 중지 되었습니다" -#: fe-exec.c:2360 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "COPY BOTH 작업 중에는 PQexec 사용할 수 없음" -#: fe-exec.c:2586 fe-exec.c:2641 fe-exec.c:2709 fe-protocol3.c:1907 +#: fe-exec.c:2641 +#, 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 #, c-format msgid "no COPY in progress" msgstr "처리 가운데 COPY가 없음" -#: fe-exec.c:2895 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "잘못된 상태의 연결" -#: fe-exec.c:2938 +#: fe-exec.c:3064 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "파이프라인 모드로 바꿀 수 없음, 연결이 idle 상태가 아님" -#: fe-exec.c:2974 fe-exec.c:2995 +#: fe-exec.c:3100 fe-exec.c:3121 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "수집할 수 없는 결과로 파이프라인 모드를 종료할 수 없음" -#: fe-exec.c:2978 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "바빠서 파이프라인 모드를 종료할 수 없음" -#: fe-exec.c:2989 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "COPY 하고 있어 파이프라인 모드를 종료할 수 없음" -#: fe-exec.c:3154 +#: fe-exec.c:3314 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "파이프라인 모드 상태가 아닐 때는 파이프라인을 보낼 수 없음" -#: fe-exec.c:3255 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "잘못된 ExecStatusType 코드" -#: fe-exec.c:3282 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresult가 오류 결과가 아님\n" -#: fe-exec.c:3350 fe-exec.c:3373 +#: fe-exec.c:3528 fe-exec.c:3551 #, c-format msgid "column number %d is out of range 0..%d" msgstr "%d 번째 열은 0..%d 범위를 벗어났음" -#: fe-exec.c:3388 +#: fe-exec.c:3566 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "%d개의 매개 변수는 0..%d 범위를 벗어났음" -#: fe-exec.c:3699 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "서버로부터 결과처리를 중지 시킬 수 없음: %s" -#: fe-exec.c:3964 fe-exec.c:4054 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "완성되지 않은 멀티바이트 문자" +#: fe-exec.c:4154 fe-exec.c:4285 +#, c-format +msgid "invalid multibyte character" +msgstr "잘못된 멀티바이트 문자" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "GSSAPI 이름 가져오기 오류" @@ -1019,23 +1438,18 @@ msgstr "\"%s\" 파일을 쓸 수 없음: %s" msgid "query to initialize large object functions did not return data" msgstr "large object function을 초기화 하는 쿼리가 데이터를 리턴하지 않았음" -#: fe-misc.c:240 +#: fe-misc.c:239 #, c-format msgid "integer of size %lu not supported by pqGetInt" msgstr "%lu 정수형 크기는 pqGetInt 함수에서 지원하지 않음" -#: fe-misc.c:273 +#: fe-misc.c:272 #, c-format msgid "integer of size %lu not supported by pqPutInt" msgstr "%lu 정수형 크기는 pqPutInt 함수에서 지원하지 않음" -#: fe-misc.c:573 -#, c-format -msgid "connection not open" -msgstr "연결 열기 실패" - -#: fe-misc.c:751 fe-secure-openssl.c:215 fe-secure-openssl.c:315 -#: fe-secure.c:257 fe-secure.c:419 +#: 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" @@ -1046,31 +1460,31 @@ msgstr "" "\t이런 처리는 클라이언트의 요구를 처리하는 동안이나\n" "\t처리하기 전에 서버가 갑자기 종료되었음을 의미함." -#: 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:189 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "휴지(idle)동안 서버로 부터 0x%02x 형태 메시지를 받았음" -#: fe-protocol3.c:385 +#: fe-protocol3.c:402 #, c-format msgid "" "server sent data (\"D\" message) without prior row description (\"T\" " @@ -1078,145 +1492,229 @@ msgid "" msgstr "" "서버에서 먼저 행(row) 설명(\"T\" 메시지) 없이 자료(\"D\" 메시지)를 보냈음" -#: fe-protocol3.c:427 +#: fe-protocol3.c:444 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "서버로부터 예상치 못한 응답을 받았음; \"%c\" 문자를 첫문자로 받았음" -#: fe-protocol3.c:450 +#: fe-protocol3.c:468 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "메시지 내용이 \"%c\" 메시지 형태의 길이를 허락하지 않음" -#: fe-protocol3.c:468 +#: fe-protocol3.c:503 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "서버와의 동기화가 끊김: \"%c\" 형태 길이 %d 메시지 받음" -#: fe-protocol3.c:520 fe-protocol3.c:560 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "\"T\" 메시지 안에 부족자 데이터" -#: fe-protocol3.c:631 fe-protocol3.c:837 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "쿼리 결과 처리를 위한 메모리 부족" -#: fe-protocol3.c:700 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "\"t\" 메시지 안에 데이터가 충분하지 않음" -#: fe-protocol3.c:759 fe-protocol3.c:791 fe-protocol3.c:809 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "\"D\" 메시지 안에 불충분한 데이터" -#: fe-protocol3.c:765 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "\"D\" 메시지 안에 예상치 못한 필드 수" -#: fe-protocol3.c:1020 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "보여줄 오류 메시지가 없음\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1068 fe-protocol3.c:1087 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " 위치: %s" -#: fe-protocol3.c:1100 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "상세정보: %s\n" -#: fe-protocol3.c:1103 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "힌트: %s\n" -#: fe-protocol3.c:1106 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "쿼리: %s\n" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "구문: %s\n" -#: fe-protocol3.c:1122 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "스키마 이름: %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "테이블 이름: %s\n" -#: fe-protocol3.c:1130 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "칼럼 이름: %s\n" -#: fe-protocol3.c:1134 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "자료형 이름: %s\n" -#: fe-protocol3.c:1138 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "제약조건 이름: %s\n" -#: fe-protocol3.c:1150 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "위치: " -#: fe-protocol3.c:1152 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1154 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1349 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "줄 %d: " -#: fe-protocol3.c:1423 +#: fe-protocol3.c:1442 +#, c-format +msgid "" +"received invalid protocol negotiation message: server requested downgrade to " +"a higher-numbered version" +msgstr "" +"잘못된 프로토콜 교섭 메시지를 받았음: 서버에서 더 높은 번호의 버전으로 다운그" +"레이드를 요청했음" + +#: fe-protocol3.c:1448 +#, c-format +msgid "" +"received invalid protocol negotiation message: server requested downgrade to " +"pre-3.0 protocol version" +msgstr "" +"잘못된 프로토콜 교섭 메시지를 받았음: 서버가 3.0 이전 프로토콜 버전으로 다운" +"그레이드를 요청했습니다." + +#: fe-protocol3.c:1455 +#, 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 +#, c-format +msgid "" +"received invalid protocol negotiation message: server reported negative " +"number of unsupported parameters" +msgstr "" +"잘못된 프로토콜 교섭 메시지를 받았음: 서버에서 지원되지 않는 매개변수의 값이 " +"음수라고 보고했음" + +#: fe-protocol3.c:1467 +#, c-format +msgid "" +"received invalid protocol negotiation message: server negotiated but asks " +"for no changes" +msgstr "" +"잘못된 프로토콜 교섭 메시지를 받았음: 서버는 협상했지만 변경 사항을 요구하지 " +"않음" + +#: fe-protocol3.c:1473 +#, 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 +#, 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 +#, c-format +msgid "" +"received invalid protocol negotiation message: server reported an " +"unsupported parameter that was not requested (\"%s\")" +msgstr "" +"잘못된 프로토콜 교섭 메시지를 받았음: 서버가 지원하지 않는 매개 변수 이름을 " +"보고함: 요청되지 않은 매개 변수 (\"%s\")" + +#: fe-protocol3.c:1508 +#, c-format +msgid "received invalid protocol negotiation message: message too short" +msgstr "잘못된 프로토콜 교섭 메시지를 받았음: 메시지가 너무 짧음" + +#: fe-protocol3.c:1574 #, c-format msgid "" -"protocol version not supported by server: client uses %u.%u, server supports " -"up to %u.%u" +"received invalid BackendKeyData message: cancel key with length %d not " +"allowed in protocol version 3.0 (must be 4 bytes)" msgstr "" -"서버가 해당 프로토콜 버전을 지원하지 않음: 클라이언트=%u.%u, 서버=%u.%u" +"잘못된 BackendKeyData 메시지 받았음: 길이가 %d인 중지 키는 3.0 버전 프로토콜" +"에서 허용하지 않음 (4 바이트여야 함)" -#: fe-protocol3.c:1429 +#: fe-protocol3.c:1581 #, c-format -msgid "protocol extension not supported by server: %s" -msgid_plural "protocol extensions not supported by server: %s" -msgstr[0] "서버가 해당 프로토콜 확장을 지원하지 않음: %s" +msgid "" +"received invalid BackendKeyData message: cancel key with length %d is too " +"short (minimum 4 bytes)" +msgstr "" +"잘못된 BackendKeyData 메시지 받았음: 길이가 %d인 중지 키는 길이가 너무 짧음" +"(최소 4 바이트여야 함)" -#: fe-protocol3.c:1437 +#: fe-protocol3.c:1588 #, 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:1802 +#: fe-protocol3.c:1952 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: text COPY OUT 작업을 할 수 없음" -#: fe-protocol3.c:2176 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "프로토콜 오류: 함수 결과 없음" -#: fe-protocol3.c:2187 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "프로토콜 오류: id=0x%x" @@ -1271,123 +1769,129 @@ msgstr "GSSAPI 감싸기 오류" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "GSSAPI 송출 메시지는 기밀성을 사용하지 말아야함" -#: fe-secure-gssapi.c:215 +#: fe-secure-gssapi.c:215 fe-secure-gssapi.c:723 #, c-format msgid "client tried to send oversize GSSAPI packet (%zu > %zu)" msgstr "클라이언트의 GSSAPI 패킷이 너무 큼 (%zu > %zu)" -#: fe-secure-gssapi.c:351 fe-secure-gssapi.c:593 +#: fe-secure-gssapi.c:354 fe-secure-gssapi.c:599 #, c-format msgid "oversize GSSAPI packet sent by the server (%zu > %zu)" msgstr "서버의 GSSAPI 패킷이 너무 큼 (%zu > %zu)" -#: fe-secure-gssapi.c:390 +#: fe-secure-gssapi.c:393 msgid "GSSAPI unwrap error" msgstr "GSSAPI 벗기기 오류" -#: fe-secure-gssapi.c:399 +#: fe-secure-gssapi.c:402 #, c-format msgid "incoming GSSAPI message did not use confidentiality" msgstr "GSSAPI 수신 메시지는 기밀성을 사용하지 말아야 함" -#: fe-secure-gssapi.c:656 +#: fe-secure-gssapi.c:662 msgid "could not initiate GSSAPI security context" msgstr "GSSAPI 보안 context 초기화 실패" -#: fe-secure-gssapi.c:685 +#: fe-secure-gssapi.c:712 msgid "GSSAPI size check error" msgstr "GSSAPI 크기 검사 오류" -#: fe-secure-gssapi.c:696 -msgid "GSSAPI context establishment error" -msgstr "GSSAPI context 설정 오류" - -#: fe-secure-openssl.c:219 fe-secure-openssl.c:319 fe-secure-openssl.c:1531 +#: 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:225 fe-secure-openssl.c:325 fe-secure-openssl.c:1534 +#: 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:235 fe-secure-openssl.c:335 fe-secure-openssl.c:1542 +#: 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:249 fe-secure-openssl.c:349 +#: 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:254 fe-secure-openssl.c:354 fe-secure-openssl.c:1589 +#: 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:397 +#: fe-secure-openssl.c:368 #, c-format msgid "could not determine server certificate signature algorithm" msgstr "서버 인증서 서명 알고리즘을 알 수 없음" -#: fe-secure-openssl.c:417 +#: fe-secure-openssl.c:388 #, c-format msgid "could not find digest for NID %s" msgstr "%s NID용 다이제스트를 찾을 수 없음" -#: fe-secure-openssl.c:426 +#: fe-secure-openssl.c:397 #, c-format msgid "could not generate peer certificate hash" msgstr "피어 인증 해시 값을 만들 수 없음" -#: fe-secure-openssl.c:509 +#: fe-secure-openssl.c:479 #, c-format msgid "SSL certificate's name entry is missing" msgstr "SSL 인증서의 이름 항목이 잘못됨" -#: fe-secure-openssl.c:543 +#: fe-secure-openssl.c:509 #, c-format msgid "SSL certificate's address entry is missing" msgstr "SSL 인증서의 주소 항목이 빠졌음" -#: fe-secure-openssl.c:960 +#: fe-secure-openssl.c:715 +#, c-format +msgid "WARNING: could not open SSL key logging file \"%s\": %m\n" +msgstr "경고: \"%s\" SSL 키 로그 파일을 열 수 없음: %m\n" + +#: fe-secure-openssl.c:723 +#, c-format +msgid "WARNING: could not write to SSL key logging file \"%s\": %m\n" +msgstr "경고: \"%s\" SSL 키 로그 파일을 쓸 수 없음: %m\n" + +#: fe-secure-openssl.c:776 #, c-format msgid "could not create SSL context: %s" msgstr "SSL context를 만들 수 없음: %s" -#: fe-secure-openssl.c:1002 +#: fe-secure-openssl.c:818 #, c-format msgid "invalid value \"%s\" for minimum SSL protocol version" msgstr "잘못된 값: \"%s\", 대상: 최소 SSL 프로토콜 버전" -#: fe-secure-openssl.c:1012 +#: fe-secure-openssl.c:828 #, c-format msgid "could not set minimum SSL protocol version: %s" msgstr "최소 SSL 프로토콜 버전을 지정할 수 없음: %s" -#: fe-secure-openssl.c:1028 +#: fe-secure-openssl.c:844 #, c-format msgid "invalid value \"%s\" for maximum SSL protocol version" msgstr "잘못된 값: \"%s\", 대상: 최대 SSL 프로토콜 버전" -#: fe-secure-openssl.c:1038 +#: fe-secure-openssl.c:854 #, c-format msgid "could not set maximum SSL protocol version: %s" msgstr "최대 SSL 프로토콜 버전을 지정할 수 없음: %s" -#: fe-secure-openssl.c:1076 +#: fe-secure-openssl.c:892 #, c-format msgid "could not load system root certificate paths: %s" msgstr "시스템 루트 인증서 경로 불러오기 실패: %s" -#: fe-secure-openssl.c:1093 +#: fe-secure-openssl.c:909 #, c-format msgid "could not read root certificate file \"%s\": %s" msgstr "\"%s\" 루트 인증서 파일을 읽을 수 없음: %s" -#: fe-secure-openssl.c:1145 +#: fe-secure-openssl.c:961 #, c-format msgid "" "could not get home directory to locate root certificate file\n" @@ -1400,7 +1904,7 @@ msgstr "" "트 인증서를 사용하거나, 서버 인증서 확인을 사용하지 않도록 sslmode를 변경하십" "시오." -#: fe-secure-openssl.c:1148 +#: fe-secure-openssl.c:964 #, c-format msgid "" "root certificate file \"%s\" does not exist\n" @@ -1413,62 +1917,77 @@ msgstr "" "트 인증서를 사용하거나, 서버 인증서 확인을 사용하지 않도록 sslmode를 변경하십" "시오." -#: fe-secure-openssl.c:1183 +#: fe-secure-openssl.c:999 #, c-format msgid "could not open certificate file \"%s\": %s" msgstr "\"%s\" 인증서 파일을 열수 없음: %s" -#: fe-secure-openssl.c:1201 +#: fe-secure-openssl.c:1017 #, c-format msgid "could not read certificate file \"%s\": %s" msgstr "\"%s\" 인증서 파일을 읽을 수 없음: %s" -#: fe-secure-openssl.c:1225 +#: fe-secure-openssl.c:1041 #, c-format msgid "could not establish SSL connection: %s" msgstr "SSL 연결을 확립할 수 없음: %s" -#: fe-secure-openssl.c:1257 +#: 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 "서버 이름 표시(SNI)를 설정할 수 없음: %s" -#: fe-secure-openssl.c:1300 +#: 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:1311 +#: fe-secure-openssl.c:1161 #, c-format msgid "could not initialize SSL engine \"%s\": %s" msgstr "SSL 엔진 \"%s\"을(를) 초기화할 수 없음: %s" -#: fe-secure-openssl.c:1326 +#: 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:1339 +#: 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:1376 +#: fe-secure-openssl.c:1226 #, c-format msgid "certificate present, but not private key file \"%s\"" msgstr "인증서가 있지만, \"%s\" 개인키가 아닙니다." -#: fe-secure-openssl.c:1379 +#: fe-secure-openssl.c:1229 #, c-format msgid "could not stat private key file \"%s\": %m" msgstr "\"%s\" 개인키 파일 상태를 알 수 없음: %m" -#: fe-secure-openssl.c:1387 +#: fe-secure-openssl.c:1237 #, c-format msgid "private key file \"%s\" is not a regular file" msgstr "\"%s\" 개인키 파일은 일반 파일이 아님" -#: fe-secure-openssl.c:1420 +#: fe-secure-openssl.c:1270 #, c-format msgid "" "private key file \"%s\" has group or world access; file must have " @@ -1479,54 +1998,66 @@ msgstr "" "유주가 현재 사용자라면, 접근권한을 u=rw (0600) 또는 더 작게 설정하고, root가 " "소유주라면 u=rw,g=r (0640) 권한으로 지정하세요." -#: fe-secure-openssl.c:1444 +#: fe-secure-openssl.c:1294 #, c-format msgid "could not load private key file \"%s\": %s" msgstr "\"%s\" 개인키 파일을 불러들일 수 없습니다: %s" -#: fe-secure-openssl.c:1460 +#: fe-secure-openssl.c:1310 #, c-format msgid "certificate does not match private key file \"%s\": %s" msgstr "인증서가 \"%s\" 개인키 파일과 맞지 않습니다: %s" -#: fe-secure-openssl.c:1528 +#: fe-secure-openssl.c:1379 #, c-format msgid "SSL error: certificate verify failed: %s" msgstr "SSL 오류: 인증서 유효성 검사 실패: %s" -#: fe-secure-openssl.c:1573 +#: 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:1606 +#: fe-secure-openssl.c:1456 +#, c-format +msgid "" +"direct SSL connection was established without ALPN protocol negotiation " +"extension" +msgstr "ALPN 프로토콜 협상 확장 없이 직접 SSL 연결이 수립되었습니다." + +#: fe-secure-openssl.c:1468 +#, c-format +msgid "SSL connection was established with unexpected ALPN protocol" +msgstr "예상치 못한 ALPN 프로토콜로 SSL 연결이 수립되었습니다." + +#: fe-secure-openssl.c:1485 #, c-format msgid "certificate could not be obtained: %s" msgstr "인증서를 구하질 못했습니다: %s" -#: fe-secure-openssl.c:1711 +#: fe-secure-openssl.c:1564 #, c-format msgid "no SSL error reported" msgstr "SSL 오류 없음이 보고됨" -#: fe-secure-openssl.c:1720 +#: fe-secure-openssl.c:1607 #, c-format msgid "SSL error code %lu" msgstr "SSL 오류 번호 %lu" -#: fe-secure-openssl.c:1986 +#: fe-secure-openssl.c:1909 #, c-format msgid "WARNING: sslpassword truncated\n" msgstr "경고: sslpassword 삭제됨\n" -#: fe-secure.c:263 +#: fe-secure.c:233 #, c-format msgid "could not receive data from server: %s" msgstr "서버로부터 데이터를 받지 못했음: %s" -#: fe-secure.c:434 +#: fe-secure.c:404 #, c-format msgid "could not send data to server: %s" msgstr "서버에 데이터를 보낼 수 없음: %s" @@ -1535,3 +2066,25 @@ msgstr "서버에 데이터를 보낼 수 없음: %s" #, c-format msgid "unrecognized socket error: 0x%08X/%d" msgstr "알 수 없는 소켓오류: 0x%08X/%d" + +#~ msgid "GSSAPI context establishment error" +#~ msgstr "GSSAPI context 설정 오류" + +#~ msgid "could not look up local user ID %d: %s" +#~ msgstr "UID %d 해당하는 로컬 사용자를 찾을 수 없음: %s" + +#~ msgid "invalid %s message" +#~ msgstr "잘못된 %s 메시지" + +#~ msgid "keepalives parameter must be an integer" +#~ msgstr "keepalives 매개변수값은 정수여야 합니다." + +#~ msgid "protocol extension not supported by server: %s" +#~ msgid_plural "protocol extensions not supported by server: %s" +#~ msgstr[0] "서버가 해당 프로토콜 확장을 지원하지 않음: %s" + +#~ msgid "" +#~ "protocol version not supported by server: client uses %u.%u, server " +#~ "supports up to %u.%u" +#~ msgstr "" +#~ "서버가 해당 프로토콜 버전을 지원하지 않음: 클라이언트=%u.%u, 서버=%u.%u" diff --git a/src/interfaces/libpq/po/ru.po b/src/interfaces/libpq/po/ru.po index d1032596ecae8..abfd9f7c78d6b 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. -# Alexander Lakhin , 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023. +# SPDX-FileCopyrightText: 2012-2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024, 2025 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: 2024-05-04 10:36+0300\n" -"PO-Revision-Date: 2023-08-30 15:09+0300\n" +"POT-Creation-Date: 2025-08-30 15:59+0300\n" +"PO-Revision-Date: 2025-09-03 08:20+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -21,185 +21,475 @@ 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" -#: ../../port/thread.c:50 ../../port/thread.c:86 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format -msgid "could not look up local user ID %d: %s" -msgstr "найти локального пользователя по идентификатору (%d) не удалось: %s" +msgid "libcurl easy handle removal failed: %s" +msgstr "ошибка при удалении простого указателя libcurl: %s" -#: ../../port/thread.c:55 ../../port/thread.c:91 +#: ../libpq-oauth/oauth-curl.c:327 #, c-format -msgid "local user with ID %d does not exist" -msgstr "локальный пользователь с ID %d не существует" +msgid "libcurl multi handle cleanup failed: %s" +msgstr "ошибка при очистке множественного указателя libcurl: %s" -#: fe-auth-scram.c:227 +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 +#, c-format +msgid "failed to set %s on OAuth connection: %s" +msgstr "не удалось задать %s для подключения OAuth: %s" + +#: ../libpq-oauth/oauth-curl.c:412 +#, 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 +#, 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\" дублируется" + +#: ../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 "элементом верхнего уровня должен быть объект" + +#: ../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" + +#: ../libpq-oauth/oauth-curl.c:713 +#, c-format +msgid "internal error: scalar field '%s' would be assigned twice" +msgstr "внутренняя ошибка: попытка двойного присвоения скалярному полю '%s'" + +#: ../libpq-oauth/oauth-curl.c:735 +#, c-format +msgid "internal error: array member found at nesting level %d" +msgstr "внутренняя ошибка: элемент массива найден на уровне вложенности %d" + +#: ../libpq-oauth/oauth-curl.c:770 +#, c-format +msgid "no content type was provided" +msgstr "тип содержимого не передан" + +#: ../libpq-oauth/oauth-curl.c:809 +#, c-format +msgid "unexpected content type: \"%s\"" +msgstr "неожиданный тип содержимого: \"%s\"" + +#: ../libpq-oauth/oauth-curl.c:834 +#, c-format +msgid "response contains embedded NULLs" +msgstr "ответ содержит в себе NUL" + +#: ../libpq-oauth/oauth-curl.c:844 +#, c-format +msgid "response is not valid UTF-8" +msgstr "ответ не является текстом в кодировке UTF-8" + +#: ../libpq-oauth/oauth-curl.c:884 +#, c-format +msgid "field \"%s\" is missing" +msgstr "поле \"%s\" отсутствует" + +#: ../libpq-oauth/oauth-curl.c:1118 +#, 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 +#, 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 +#, c-format +msgid "checking timer expiration: %m" +msgstr "проверка состояния таймера: %m" + +#: ../libpq-oauth/oauth-curl.c:1715 +#, c-format +msgid "failed to create libcurl multi handle" +msgstr "не удалось создать множественный указатель libcurl" + +#: ../libpq-oauth/oauth-curl.c:1735 +#, 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 +#: 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-secure-openssl.c:1135 +#, c-format +msgid "out of memory" +msgstr "нехватка памяти" + +#: ../libpq-oauth/oauth-curl.c:1847 +#, c-format +msgid "response is too large" +msgstr "ответ слишком большой" + +#: ../libpq-oauth/oauth-curl.c:1889 +#, c-format +msgid "failed to queue HTTP request: %s" +msgstr "добавить HTTP-запрос в очередь не удалось: %s" + +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 +#, c-format +msgid "asynchronous HTTP request failed: %s" +msgstr "ошибка асинхронного HTTP-запроса: %s" + +#: ../libpq-oauth/oauth-curl.c:2011 +#, 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 +#, c-format +msgid "unexpected response code %ld" +msgstr "неожиданный код ответа %ld" + +#: ../libpq-oauth/oauth-curl.c:2216 +#, c-format +msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" +msgstr "идентификатор издателя (%s) не совпадает с oauth_issuer (%s)" + +#: ../libpq-oauth/oauth-curl.c:2243 +#, c-format +msgid "issuer \"%s\" does not provide a device authorization endpoint" +msgstr "издатель \"%s\" не передал конечную точку авторизации устройств" + +#: ../libpq-oauth/oauth-curl.c:2269 +#, c-format +msgid "device authorization endpoint \"%s\" must use HTTPS" +msgstr "конечная точка авторизации устройств \"%s\" должна использовать HTTPS" + +# well-spelled: токенов +#: ../libpq-oauth/oauth-curl.c:2278 +#, c-format +msgid "token endpoint \"%s\" must use HTTPS" +msgstr "конечная точка токенов \"%s\" должна использовать HTTPS" + +#: ../libpq-oauth/oauth-curl.c:2587 +#, 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:2623 +#, c-format +msgid "Visit %s and enter the code: %s\n" +msgstr "Посетите %s и введите код: %s\n" + +#: ../libpq-oauth/oauth-curl.c:2628 +#, c-format +msgid "device prompt failed" +msgstr "ошибка при запросе устройства" + +#: ../libpq-oauth/oauth-curl.c:2684 +#, c-format +msgid "curl_global_init previously failed during OAuth setup" +msgstr "в curl_global_init ранее возникла ошибка при настройке OAuth" + +#: ../libpq-oauth/oauth-curl.c:2703 +#, c-format +msgid "curl_global_init failed during OAuth setup" +msgstr "в curl_global_init возникла ошибка при настройке OAuth" + +#: ../libpq-oauth/oauth-curl.c:2724 +#, 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" +"\tlibcurl сообщает, что таковой не является. Перекомпилируйте\n" +"\tlibpq с установленной версией libcurl." + +#: 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" @@ -207,12 +497,21 @@ 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 " @@ -221,12 +520,12 @@ 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 " @@ -235,60 +534,60 @@ msgstr "" "c сервера получено сообщение 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 " @@ -296,7 +595,7 @@ msgid "" msgstr "" "требуется привязка каналов, но сервер аутентифицировал клиента без привязки" -#: fe-auth.c:941 +#: fe-auth.c:1041 #, c-format msgid "" "channel binding required but not supported by server's authentication request" @@ -304,67 +603,102 @@ 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 "локальный пользователь с ID %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:1308 #, c-format msgid "could not match %d host names to %d hostaddr values" msgstr "не удалось сопоставить имена узлов (%d) со значениями hostaddr (%d)" -#: fe-connect.c:1212 +#: fe-connect.c:1388 #, c-format msgid "could not match %d port numbers to %d hosts" msgstr "не удалось сопоставить номера портов (%d) с узлами (%d)" -#: fe-connect.c:1337 +#: fe-connect.c:1516 #, c-format msgid "" "negative require_auth method \"%s\" cannot be mixed with non-negative methods" @@ -372,30 +706,44 @@ msgstr "" "отрицательный метод require_auth \"%s\" не может совмещаться с " "неотрицательными методами" -#: fe-connect.c:1350 +#: fe-connect.c:1529 #, 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: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 #, c-format msgid "invalid %s value: \"%s\"" msgstr "неверное значение %s: \"%s\"" -#: fe-connect.c:1443 +#: fe-connect.c:1647 +#, c-format +msgid "internal error: no space in allowed_sasl_mechs" +msgstr "внутренняя ошибка: в allowed_sasl_mechs нет места" + +#: fe-connect.c:1686 #, 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:1757 fe-connect.c:1796 fe-connect.c:1828 fe-connect.c:1930 #, 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:1848 +#, 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 #, c-format msgid "" "weak sslmode \"%s\" may not be used with sslrootcert=system (use \"verify-" @@ -404,42 +752,72 @@ msgstr "" "слабый режим sslmode \"%s\" не может использоваться с sslrootcert=system " "(используйте режим \"verify-full\")" -#: fe-connect.c:1584 +#: fe-connect.c:1883 fe-connect.c:1891 +#, c-format +msgid "invalid \"%s\" value: \"%s\"" +msgstr "неверное значение \"%s\": \"%s\"" + +#: fe-connect.c:1908 #, c-format msgid "invalid SSL protocol version range" msgstr "неверный диапазон версий протокола SSL" -#: fe-connect.c:1621 +#: fe-connect.c:1945 #, c-format msgid "%s value \"%s\" is not supported (check OpenSSL version)" msgstr "значение %s \"%s\" не поддерживается (проверьте версию OpenSSL)" -#: fe-connect.c:1651 +#: fe-connect.c:1975 #, 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:2029 +#, c-format +msgid "invalid SCRAM client key" +msgstr "неправильный клиентский ключ SCRAM" + +#: fe-connect.c:2034 +#, c-format +msgid "invalid SCRAM client key length: %d" +msgstr "некорректная длина клиентского ключа SCRAM: %d" + +#: fe-connect.c:2052 +#, c-format +msgid "invalid SCRAM server key" +msgstr "неправильный серверный ключ SCRAM" + +#: fe-connect.c:2057 +#, c-format +msgid "invalid SCRAM server key length: %d" +msgstr "некорректная длина серверного ключа SCRAM: %d" + +#: fe-connect.c:2144 +#, c-format +msgid "\"%s\" is greater than \"%s\"" +msgstr "\"%s\" больше чем \"%s\"" + +#: fe-connect.c:2356 #, c-format msgid "could not set socket to TCP no delay mode: %s" msgstr "не удалось перевести сокет в режим TCP-передачи без задержки: %s" -#: fe-connect.c:2003 +#: fe-connect.c:2415 #, c-format msgid "connection to server on socket \"%s\" failed: " msgstr "подключиться к серверу через сокет \"%s\" не удалось: " -#: fe-connect.c:2029 +#: fe-connect.c:2441 #, c-format msgid "connection to server at \"%s\" (%s), port %s failed: " msgstr "подключиться к серверу \"%s\" (%s), порту %s не удалось: " -#: fe-connect.c:2034 +#: fe-connect.c:2446 #, c-format msgid "connection to server at \"%s\", port %s failed: " msgstr "подключиться к серверу \"%s\", порту %s не удалось: " -#: fe-connect.c:2057 +#: fe-connect.c:2469 #, c-format msgid "" "\tIs the server running locally and accepting connections on that socket?" @@ -447,310 +825,338 @@ msgstr "" "\tСервер действительно работает локально и принимает подключения через этот " "сокет?" -#: fe-connect.c:2059 +#: fe-connect.c:2471 #, c-format msgid "\tIs the server running on that host and accepting TCP/IP connections?" msgstr "" "\tСервер действительно работает по данному адресу и принимает TCP-соединения?" -#: 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:2517 fe-connect.c:2551 fe-connect.c:2586 fe-connect.c:2684 +#: fe-connect.c:3410 #, c-format msgid "%s(%s) failed: %s" msgstr "ошибка в %s(%s): %s" -#: fe-connect.c:2284 +#: fe-connect.c:2650 #, c-format msgid "%s(%s) failed: error code %d" msgstr "ошибка в %s(%s): код ошибки %d" -#: fe-connect.c:2597 +#: fe-connect.c:2962 #, c-format msgid "invalid connection state, probably indicative of memory corruption" msgstr "неверное состояние соединения - возможно разрушение памяти" -#: fe-connect.c:2676 +#: fe-connect.c:3045 #, c-format msgid "invalid port number: \"%s\"" msgstr "неверный номер порта: \"%s\"" -#: fe-connect.c:2690 +#: fe-connect.c:3059 #, c-format msgid "could not translate host name \"%s\" to address: %s" msgstr "преобразовать имя \"%s\" в адрес не удалось: %s" -#: fe-connect.c:2702 +#: fe-connect.c:3071 #, c-format msgid "could not parse network address \"%s\": %s" msgstr "не удалось разобрать сетевой адрес \"%s\": %s" -#: fe-connect.c:2713 +#: fe-connect.c:3082 #, 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:3096 #, 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:3262 fe-connect.c:4709 +#, 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 +#, c-format +msgid "GSSAPI encryption required but no credential cache" +msgstr "шифрование GSSAPI затребовано в отсутствие кеша учётных данных" + +#: fe-connect.c:3338 #, c-format msgid "could not create socket: %s" msgstr "не удалось создать сокет: %s" -#: fe-connect.c:2932 +#: fe-connect.c:3369 #, c-format msgid "could not set socket to nonblocking mode: %s" msgstr "не удалось перевести сокет в неблокирующий режим: %s" -#: fe-connect.c:2943 +#: fe-connect.c:3380 #, c-format msgid "could not set socket to close-on-exec mode: %s" msgstr "" "не удалось перевести сокет в режим закрытия при выполнении (close-on-exec): " "%s" -#: fe-connect.c:2961 -#, c-format -msgid "keepalives parameter must be an integer" -msgstr "параметр keepalives должен быть целым числом" - -#: fe-connect.c:3100 +#: fe-connect.c:3537 #, c-format msgid "could not get socket error status: %s" msgstr "не удалось получить статус ошибки сокета: %s" -#: fe-connect.c:3127 +#: fe-connect.c:3564 #, c-format msgid "could not get client address from socket: %s" msgstr "не удалось получить адрес клиента из сокета: %s" -#: fe-connect.c:3165 +#: fe-connect.c:3590 #, c-format msgid "requirepeer parameter is not supported on this platform" msgstr "параметр requirepeer не поддерживается в этой ОС" -#: fe-connect.c:3167 +#: fe-connect.c:3592 #, c-format msgid "could not get peer credentials: %s" msgstr "не удалось получить учётные данные сервера: %s" -#: fe-connect.c:3180 +#: fe-connect.c:3605 #, c-format msgid "requirepeer specifies \"%s\", but actual peer user name is \"%s\"" msgstr "" "requirepeer допускает подключение только к \"%s\", но сервер работает под " "именем \"%s\"" -#: fe-connect.c:3221 +#: fe-connect.c:3643 #, 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:3682 #, c-format msgid "could not send SSL negotiation packet: %s" msgstr "не удалось отправить пакет согласования SSL: %s" -#: fe-connect.c:3303 +#: fe-connect.c:3708 +#, c-format +msgid "could not send cancel packet: %s" +msgstr "не удалось отправить пакет отмены: %s" + +#: fe-connect.c:3738 #, c-format msgid "could not send startup packet: %s" msgstr "не удалось отправить стартовый пакет: %s" -#: fe-connect.c:3378 -#, c-format +#: fe-connect.c:3811 msgid "server does not support SSL, but SSL was required" msgstr "затребовано подключение через SSL, но сервер не поддерживает SSL" -#: fe-connect.c:3404 +#: fe-connect.c:3821 +#, c-format +msgid "server sent an error response during SSL exchange" +msgstr "сервер передал ошибочный ответ во время обмена сообщениями SSL" + +#: fe-connect.c:3826 #, c-format msgid "received invalid response to SSL negotiation: %c" msgstr "получен неверный ответ при согласовании SSL: %c" -#: fe-connect.c:3424 +#: fe-connect.c:3846 #, c-format msgid "received unencrypted data after SSL response" msgstr "после ответа SSL получены незашифрованные данные" -#: fe-connect.c:3504 +#: fe-connect.c:3909 #, c-format +msgid "server sent an error response during GSS encryption exchange" +msgstr "сервер передал ошибочный ответ во время шифрования GSS" + +#: fe-connect.c:3927 msgid "server doesn't support GSSAPI encryption, but it was required" msgstr "затребовано шифрование GSSAPI, но сервер его не поддерживает" -#: fe-connect.c:3515 +#: fe-connect.c:3931 #, c-format msgid "received invalid response to GSSAPI negotiation: %c" msgstr "получен неверный ответ при согласовании GSSAPI: %c" -#: fe-connect.c:3533 +#: fe-connect.c:3953 #, c-format msgid "received unencrypted data after GSSAPI encryption response" msgstr "" "после ответа на запрос шифрования GSSAPI получены незашифрованные данные" -#: fe-connect.c:3598 +#: fe-connect.c:4014 #, c-format msgid "expected authentication request from server, but received %c" msgstr "ожидался запрос аутентификации от сервера, но получено: %c" -#: fe-connect.c:3625 fe-connect.c:3794 +#: fe-connect.c:4042 fe-connect.c:4174 #, c-format msgid "received invalid authentication request" msgstr "получен некорректный запрос аутентификации" -#: fe-connect.c:3630 fe-connect.c:3779 +#: fe-connect.c:4048 #, c-format msgid "received invalid protocol negotiation message" msgstr "получено некорректное сообщение согласования протокола" -#: fe-connect.c:3648 fe-connect.c:3702 +#: fe-connect.c:4067 fe-connect.c:4121 #, c-format msgid "received invalid error message" msgstr "получено некорректное сообщение об ошибке" -#: fe-connect.c:3865 +#: fe-connect.c:4151 +#, c-format +msgid "received duplicate protocol negotiation message" +msgstr "получено повторное сообщение согласования протокола" + +#: fe-connect.c:4253 +#, c-format +msgid "internal error: async authentication has no handler" +msgstr "внутренняя ошибка: нет обработчика для асинхронной аутентификации" + +#: fe-connect.c:4278 +#, c-format +msgid "internal error: async cleanup did not release polling socket" +msgstr "" +"внутренняя ошибка: при асинхронной очистке не был освобождён опрашивающий " +"сокет" + +#: fe-connect.c:4301 +#, c-format +msgid "internal error: async authentication did not set a socket for polling" +msgstr "" +"внутренняя ошибка: при асинхронной аутентификации не был настроен сокет для " +"опроса" + +#: fe-connect.c:4334 #, c-format msgid "unexpected message from server during startup" msgstr "неожиданное сообщение от сервера в начале работы" -#: fe-connect.c:3956 +#: fe-connect.c:4425 #, c-format msgid "session is read-only" msgstr "сеанс не допускает запись" -#: fe-connect.c:3958 +#: fe-connect.c:4427 #, c-format msgid "session is not read-only" msgstr "сеанс допускает запись" -#: fe-connect.c:4011 +#: fe-connect.c:4480 #, c-format msgid "server is in hot standby mode" msgstr "сервер работает в режиме горячего резерва" -#: fe-connect.c:4013 +#: fe-connect.c:4482 #, c-format msgid "server is not in hot standby mode" msgstr "сервер работает не в режиме горячего резерва" -#: fe-connect.c:4129 fe-connect.c:4179 +#: fe-connect.c:4607 fe-connect.c:4657 #, c-format msgid "\"%s\" failed" msgstr "выполнить \"%s\" не удалось" -#: fe-connect.c:4193 +#: fe-connect.c:4671 #, c-format msgid "invalid connection state %d, probably indicative of memory corruption" msgstr "неверное состояние соединения %d - возможно разрушение памяти" -#: fe-connect.c:5174 +#: fe-connect.c:5508 #, c-format msgid "invalid LDAP URL \"%s\": scheme must be ldap://" msgstr "некорректный адрес LDAP \"%s\": схема должна быть ldap://" -#: fe-connect.c:5189 +#: fe-connect.c:5523 #, c-format msgid "invalid LDAP URL \"%s\": missing distinguished name" msgstr "некорректный адрес LDAP \"%s\": отсутствует уникальное имя" -#: fe-connect.c:5201 fe-connect.c:5259 +#: fe-connect.c:5535 fe-connect.c:5593 #, c-format msgid "invalid LDAP URL \"%s\": must have exactly one attribute" msgstr "некорректный адрес LDAP \"%s\": должен быть только один атрибут" -#: fe-connect.c:5213 fe-connect.c:5275 +#: fe-connect.c:5547 fe-connect.c:5609 #, c-format msgid "invalid LDAP URL \"%s\": must have search scope (base/one/sub)" msgstr "" "некорректный адрес LDAP \"%s\": не указана область поиска (base/one/sub)" -#: fe-connect.c:5225 +#: fe-connect.c:5559 #, c-format msgid "invalid LDAP URL \"%s\": no filter" msgstr "некорректный адрес LDAP \"%s\": нет фильтра" -#: fe-connect.c:5247 +#: fe-connect.c:5581 #, c-format msgid "invalid LDAP URL \"%s\": invalid port number" msgstr "некорректный адрес LDAP \"%s\": неверный номер порта" -#: fe-connect.c:5284 +#: fe-connect.c:5618 #, c-format msgid "could not create LDAP structure" msgstr "не удалось создать структуру LDAP" -#: fe-connect.c:5359 +#: fe-connect.c:5693 #, c-format msgid "lookup on LDAP server failed: %s" msgstr "ошибка поиска на сервере LDAP: %s" -#: fe-connect.c:5369 +#: fe-connect.c:5703 #, c-format msgid "more than one entry found on LDAP lookup" msgstr "при поиске LDAP найдено более одного вхождения" -#: fe-connect.c:5371 fe-connect.c:5382 +#: fe-connect.c:5705 fe-connect.c:5716 #, c-format msgid "no entry found on LDAP lookup" msgstr "при поиске LDAP ничего не найдено" -#: fe-connect.c:5392 fe-connect.c:5404 +#: fe-connect.c:5726 fe-connect.c:5738 #, 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:5789 fe-connect.c:5808 fe-connect.c:6332 #, 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:5879 fe-connect.c:6515 fe-connect.c:7345 #, c-format msgid "invalid connection option \"%s\"" msgstr "неверный параметр соединения \"%s\"" -#: fe-connect.c:5560 fe-connect.c:6046 +#: fe-connect.c:5894 fe-connect.c:6380 #, c-format msgid "unterminated quoted string in connection info string" msgstr "в строке соединения не хватает закрывающей кавычки" -#: fe-connect.c:5640 +#: fe-connect.c:5974 #, c-format msgid "definition of service \"%s\" not found" msgstr "определение службы \"%s\" не найдено" -#: fe-connect.c:5666 +#: fe-connect.c:6000 #, c-format msgid "service file \"%s\" not found" msgstr "файл определений служб \"%s\" не найден" -#: fe-connect.c:5679 +#: fe-connect.c:6013 #, 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:6084 fe-connect.c:6127 #, c-format msgid "syntax error in service file \"%s\", line %d" msgstr "синтаксическая ошибка в файле определения служб \"%s\" (строка %d)" -#: fe-connect.c:5761 +#: fe-connect.c:6095 #, c-format msgid "" "nested service specifications not supported in service file \"%s\", line %d" @@ -758,24 +1164,24 @@ msgstr "" "рекурсивные определения служб не поддерживаются (файл определения служб " "\"%s\", строка %d)" -#: fe-connect.c:6500 +#: fe-connect.c:6834 #, c-format msgid "invalid URI propagated to internal parser routine: \"%s\"" msgstr "во внутреннюю процедуру разбора строки передан ошибочный URI: \"%s\"" -#: fe-connect.c:6577 +#: fe-connect.c:6911 #, 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:6584 +#: fe-connect.c:6918 #, c-format msgid "IPv6 host address may not be empty in URI: \"%s\"" msgstr "IPv6, содержащийся в URI, не может быть пустым: \"%s\"" -#: fe-connect.c:6599 +#: fe-connect.c:6933 #, c-format msgid "" "unexpected character \"%c\" at position %d in URI (expected \":\" or \"/\"): " @@ -784,46 +1190,53 @@ msgstr "" "неожиданный символ \"%c\" в позиции %d в URI (ожидалось \":\" или \"/\"): " "\"%s\"" -#: fe-connect.c:6728 +#: fe-connect.c:7062 #, c-format msgid "extra key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "лишний разделитель ключа/значения \"=\" в параметрах URI: \"%s\"" -#: fe-connect.c:6748 +#: fe-connect.c:7082 #, c-format msgid "missing key/value separator \"=\" in URI query parameter: \"%s\"" msgstr "в параметрах URI не хватает разделителя ключа/значения \"=\": \"%s\"" -#: fe-connect.c:6800 +#: fe-connect.c:7134 #, c-format msgid "invalid URI query parameter: \"%s\"" msgstr "неверный параметр в URI: \"%s\"" -#: fe-connect.c:6874 +#: fe-connect.c:7218 #, c-format msgid "invalid percent-encoded token: \"%s\"" msgstr "неверный символ, закодированный с %%: \"%s\"" -#: fe-connect.c:6884 +#: fe-connect.c:7228 #, c-format msgid "forbidden value %%00 in percent-encoded value: \"%s\"" msgstr "недопустимое значение %%00 для символа, закодированного с %%: \"%s\"" -#: fe-connect.c:7248 +#: fe-connect.c:7250 +#, c-format +msgid "" +"unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" +msgstr "" +"в \"%s\" обнаружены недопустимые пробелы, замените их закодированными (%%20)" + +#: fe-connect.c:7626 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:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "нехватка памяти\n" -#: fe-connect.c:7547 +#: fe-connect.c:7936 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "ПРЕДУПРЕЖДЕНИЕ: файл паролей \"%s\" - не обычный файл\n" -#: fe-connect.c:7556 +#: fe-connect.c:7946 #, c-format msgid "" "WARNING: password file \"%s\" has group or world access; permissions should " @@ -832,167 +1245,182 @@ msgstr "" "ПРЕДУПРЕЖДЕНИЕ: к файлу паролей \"%s\" имеют доступ все или группа; права " "должны быть u=rw (0600) или более ограниченные\n" -#: fe-connect.c:7663 +#: fe-connect.c:8050 #, c-format msgid "password retrieved from file \"%s\"" msgstr "пароль получен из файла \"%s\"" -#: fe-exec.c:466 fe-exec.c:3395 +#: fe-connect.c:8216 +#, c-format +msgid "invalid integer value \"%s\" for connection option \"%s\"" +msgstr "неверное целочисленное значение \"%s\" для параметра соединения \"%s\"" + +#: fe-exec.c:469 fe-exec.c:3544 #, 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:2126 #, c-format msgid "%s" msgstr "%s" -#: fe-exec.c:831 +#: fe-exec.c:834 #, c-format msgid "write to server failed" msgstr "ошибка при передаче данных серверу" -#: fe-exec.c:871 +#: fe-exec.c:874 #, c-format msgid "no error text available" msgstr "текст ошибки отсутствует" -#: fe-exec.c:960 +#: fe-exec.c:963 msgid "NOTICE" msgstr "ЗАМЕЧАНИЕ" -#: fe-exec.c:1018 +#: fe-exec.c:1021 msgid "PGresult cannot support more than INT_MAX tuples" msgstr "PGresult не может вместить больше чем INT_MAX кортежей" -#: fe-exec.c:1030 +#: fe-exec.c:1033 msgid "size_t overflow" msgstr "переполнение size_t" -#: fe-exec.c:1446 fe-exec.c:1515 fe-exec.c:1561 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "указатель на командную строку нулевой" -#: fe-exec.c:1452 fe-exec.c:2883 +#: fe-exec.c:1455 fe-exec.c:3014 #, 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:1523 fe-exec.c:1569 fe-exec.c:1663 #, 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:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "указатель на имя оператора нулевой" -#: fe-exec.c:1697 fe-exec.c:3241 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "нет соединения с сервером" -#: fe-exec.c:1705 fe-exec.c:3249 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "уже выполняется другая команда" -#: fe-exec.c:1735 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "во время COPY нельзя добавлять команды в очередь" -#: fe-exec.c:1852 +#: fe-exec.c:1857 #, c-format msgid "length must be given for binary parameter" msgstr "для двоичного параметра должна быть указана длина" -#: fe-exec.c:2166 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "неожиданный asyncStatus: %d" -#: fe-exec.c:2322 +#: fe-exec.c:2372 #, c-format msgid "" "synchronous command execution functions are not allowed in pipeline mode" msgstr "" "функции синхронного выполнения команд не допускаются в конвейерном режиме" -#: fe-exec.c:2339 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "операция COPY прервана вызовом PQexec" -#: fe-exec.c:2355 +#: fe-exec.c:2405 #, 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:2641 +#, 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 #, c-format msgid "no COPY in progress" msgstr "операция COPY не выполняется" -#: fe-exec.c:2890 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "соединение в неправильном состоянии" -#: fe-exec.c:2933 +#: fe-exec.c:3064 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "перейти в конвейерный режиме нельзя, соединение не простаивает" -#: fe-exec.c:2969 fe-exec.c:2990 +#: fe-exec.c:3100 fe-exec.c:3121 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "выйти из конвейерного режима нельзя, не собрав все результаты" -#: fe-exec.c:2973 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "выйти из конвейерного режима в занятом состоянии нельзя" -#: fe-exec.c:2984 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "выйти из конвейерного режима во время COPY нельзя" -#: fe-exec.c:3175 +#: fe-exec.c:3314 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "отправить конвейер, не перейдя в конвейерный режим, нельзя" -#: fe-exec.c:3284 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "неверный код ExecStatusType" -#: fe-exec.c:3311 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "В PGresult не передан результат ошибки\n" -#: fe-exec.c:3379 fe-exec.c:3402 +#: fe-exec.c:3528 fe-exec.c:3551 #, c-format msgid "column number %d is out of range 0..%d" msgstr "номер столбца %d вне диапазона 0..%d" -#: fe-exec.c:3417 +#: fe-exec.c:3566 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "номер параметра %d вне диапазона 0..%d" -#: fe-exec.c:3728 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "не удалось интерпретировать ответ сервера: %s" -#: fe-exec.c:3993 fe-exec.c:4083 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "неполный многобайтный символ" +#: fe-exec.c:4154 fe-exec.c:4285 +#, c-format +msgid "invalid multibyte character" +msgstr "неверный многобайтный символ" + #: fe-gssapi-common.c:122 msgid "GSSAPI name import error" msgstr "ошибка импорта имени в GSSAPI" @@ -1039,23 +1467,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 не поддерживает integer размером %lu байт" -#: fe-misc.c:273 +#: fe-misc.c:272 #, c-format msgid "integer of size %lu not supported by pqPutInt" msgstr "функция pqPutInt не поддерживает integer размером %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" @@ -1066,31 +1489,31 @@ msgstr "" "\tСкорее всего сервер прекратил работу из-за сбоя\n" "\tдо или в процессе выполнения запроса." -#: 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:189 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "от сервера во время простоя получено сообщение типа 0x%02x" -#: fe-protocol3.c:380 +#: fe-protocol3.c:402 #, c-format msgid "" "server sent data (\"D\" message) without prior row description (\"T\" " @@ -1099,149 +1522,232 @@ msgstr "" "сервер отправил данные (сообщение \"D\") без предварительного описания " "строки (сообщение \"T\")" -#: fe-protocol3.c:422 +#: fe-protocol3.c:444 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "неожиданный ответ сервера; первый полученный символ: \"%c\"" -#: fe-protocol3.c:445 +#: fe-protocol3.c:468 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "содержимое не соответствует длине в сообщении типа \"%c\"" -#: fe-protocol3.c:463 +#: fe-protocol3.c:503 #, 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:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "недостаточно данных в сообщении \"T\"" -#: fe-protocol3.c:626 fe-protocol3.c:832 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "недостаточно памяти для результата запроса" -#: fe-protocol3.c:695 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "недостаточно данных в сообщении \"t\"" -#: fe-protocol3.c:754 fe-protocol3.c:786 fe-protocol3.c:804 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "недостаточно данных в сообщении \"D\"" -#: fe-protocol3.c:760 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "неверное число полей в сообщении \"D\"" -#: fe-protocol3.c:1015 +#: fe-protocol3.c:1051 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:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " символ %s" -#: fe-protocol3.c:1095 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "ПОДРОБНОСТИ: %s\n" -#: fe-protocol3.c:1098 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "ПОДСКАЗКА: %s\n" -#: fe-protocol3.c:1101 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "ЗАПРОС: %s\n" -#: fe-protocol3.c:1108 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "КОНТЕКСТ: %s\n" -#: fe-protocol3.c:1117 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "СХЕМА: %s\n" -#: fe-protocol3.c:1121 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "ТАБЛИЦА: %s\n" -#: fe-protocol3.c:1125 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "СТОЛБЕЦ: %s\n" -#: fe-protocol3.c:1129 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "ТИП ДАННЫХ: %s\n" -#: fe-protocol3.c:1133 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "ОГРАНИЧЕНИЕ: %s\n" -#: fe-protocol3.c:1145 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "ПОЛОЖЕНИЕ: " -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1149 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1344 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "СТРОКА %d: " -#: fe-protocol3.c:1418 +#: fe-protocol3.c:1442 +#, c-format +msgid "" +"received invalid protocol negotiation message: server requested downgrade to " +"a higher-numbered version" +msgstr "" +"получено некорректное сообщение согласования протокола: сервер запросил " +"понижение версии на версию выше" + +#: fe-protocol3.c:1448 +#, c-format +msgid "" +"received invalid protocol negotiation message: server requested downgrade to " +"pre-3.0 protocol version" +msgstr "" +"получено некорректное сообщение согласования протокола: сервер запросил " +"понижение на версию протокола, предшествующую 3.0" + +#: fe-protocol3.c:1455 +#, 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 +#, c-format +msgid "" +"received invalid protocol negotiation message: server reported negative " +"number of unsupported parameters" +msgstr "" +"получено некорректное сообщение согласования протокола: сервер передал " +"отрицательное число неподдерживаемых параметров" + +#: fe-protocol3.c:1467 +#, c-format +msgid "" +"received invalid protocol negotiation message: server negotiated but asks " +"for no changes" +msgstr "" +"получено некорректное сообщение согласования протокола: сервер согласовал " +"версию и не требует никаких изменений" + +#: fe-protocol3.c:1473 +#, 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 +#, 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 +#, c-format +msgid "" +"received invalid protocol negotiation message: server reported an " +"unsupported parameter that was not requested (\"%s\")" +msgstr "" +"получено некорректное сообщение согласования протокола: сервер выдал " +"неподдерживаемый параметр, который не был запрошен (\"%s\")" + +#: fe-protocol3.c:1508 +#, c-format +msgid "received invalid protocol negotiation message: message too short" +msgstr "" +"получено некорректное сообщение согласования протокола: сообщение слишком " +"короткое" + +#: fe-protocol3.c:1574 #, c-format msgid "" -"protocol version not supported by server: client uses %u.%u, server supports " -"up to %u.%u" +"received invalid BackendKeyData message: cancel key with length %d not " +"allowed in protocol version 3.0 (must be 4 bytes)" msgstr "" -"сервер не поддерживает нужную версию протокола: клиент использует %u.%u, " -"сервер поддерживает версии до %u.%u" +"получено некорректное сообщение согласования протокола: ключ отмены длиной " +"%d в протоколе версии 3.0 не допускается (длина должна быть 4 байта)" -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1581 #, 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" +msgid "" +"received invalid BackendKeyData message: cancel key with length %d is too " +"short (minimum 4 bytes)" +msgstr "" +"получено некорректное сообщение согласования протокола: ключ отмены длиной " +"%d слишком короткий (минимальная длина 4 байта)" -#: fe-protocol3.c:1432 +#: fe-protocol3.c:1588 #, 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 "" +"получено некорректное сообщение согласования протокола: ключ отмены длиной " +"%d слишком длинный (максимальная длина 256 байт)" -#: fe-protocol3.c:1797 +#: fe-protocol3.c:1952 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline можно вызывать только во время COPY OUT с текстом" -#: fe-protocol3.c:2171 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "ошибка протокола: нет результата функции" -#: fe-protocol3.c:2182 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "ошибка протокола: id=0x%x" @@ -1294,132 +1800,142 @@ 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:723 #, 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:599 #, 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:662 msgid "could not initiate GSSAPI security context" msgstr "не удалось инициализировать контекст безопасности GSSAPI" -#: fe-secure-gssapi.c:681 +#: fe-secure-gssapi.c:712 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:945 +#: 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:987 +#: fe-secure-openssl.c:818 #, c-format msgid "invalid value \"%s\" for minimum SSL protocol version" msgstr "неверное значение \"%s\" для минимальной версии протокола SSL" -#: fe-secure-openssl.c:997 +#: fe-secure-openssl.c:828 #, c-format msgid "could not set minimum SSL protocol version: %s" msgstr "не удалось задать минимальную версию протокола SSL: %s" -#: fe-secure-openssl.c:1013 +#: fe-secure-openssl.c:844 #, c-format msgid "invalid value \"%s\" for maximum SSL protocol version" msgstr "неверное значение \"%s\" для максимальной версии протокола SSL" -#: fe-secure-openssl.c:1023 +#: fe-secure-openssl.c:854 #, c-format msgid "could not set maximum SSL protocol version: %s" msgstr "не удалось задать максимальную версию протокола SSL: %s" -#: fe-secure-openssl.c:1061 +#: fe-secure-openssl.c:892 #, c-format msgid "could not load system root certificate paths: %s" msgstr "не удалось выбрать системные пути для корневых сертификатов: %s" -#: fe-secure-openssl.c:1078 +#: fe-secure-openssl.c:909 #, c-format msgid "could not read root certificate file \"%s\": %s" msgstr "не удалось прочитать файл корневых сертификатов \"%s\": %s" -#: fe-secure-openssl.c:1130 +#: fe-secure-openssl.c:961 #, c-format msgid "" "could not get home directory to locate root certificate file\n" @@ -1432,7 +1948,7 @@ msgstr "" "(sslrootcert=system) или отключите проверку сертификата сервера, изменив " "sslmode." -#: fe-secure-openssl.c:1133 +#: fe-secure-openssl.c:964 #, c-format msgid "" "root certificate file \"%s\" does not exist\n" @@ -1445,62 +1961,78 @@ msgstr "" "(sslrootcert=system) или отключите проверку сертификата сервера, изменив " "sslmode." -#: fe-secure-openssl.c:1168 +#: fe-secure-openssl.c:999 #, c-format msgid "could not open certificate file \"%s\": %s" msgstr "не удалось открыть файл сертификата \"%s\": %s" -#: fe-secure-openssl.c:1186 +#: fe-secure-openssl.c:1017 #, c-format msgid "could not read certificate file \"%s\": %s" msgstr "не удалось прочитать файл сертификата \"%s\": %s" -#: fe-secure-openssl.c:1210 +#: fe-secure-openssl.c:1041 #, c-format msgid "could not establish SSL connection: %s" msgstr "не удалось установить SSL-соединение: %s" -#: fe-secure-openssl.c:1242 +#: 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 "не удалось задать SNI (Server Name Indication) для SSL-подключения: %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 ENGINE \"%s\": %s" -#: fe-secure-openssl.c:1297 +#: fe-secure-openssl.c:1161 #, c-format msgid "could not initialize SSL engine \"%s\": %s" msgstr "не удалось инициализировать модуль SSL ENGINE \"%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 " @@ -1512,22 +2044,22 @@ msgstr "" "текущему пользователю, либо 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 " @@ -1536,32 +2068,44 @@ 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:1699 +#: fe-secure-openssl.c:1564 #, c-format msgid "no SSL error reported" msgstr "нет сообщения об ошибке SSL" -#: fe-secure-openssl.c:1724 +#: fe-secure-openssl.c:1607 #, c-format msgid "SSL error code %lu" msgstr "код ошибки SSL: %lu" -#: fe-secure-openssl.c:2014 +#: 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" @@ -1571,6 +2115,32 @@ msgstr "не удалось передать данные серверу: %s" msgid "unrecognized socket error: 0x%08X/%d" msgstr "нераспознанная ошибка сокета: 0x%08X/%d" +#, c-format +#~ 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 "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" + +#, c-format +#~ msgid "invalid %s message" +#~ msgstr "неверное сообщение %s" + +#~ msgid "GSSAPI context establishment error" +#~ msgstr "ошибка установления контекста в GSSAPI" + +#, c-format +#~ msgid "keepalives parameter must be an integer" +#~ msgstr "параметр keepalives должен быть целым числом" + #~ msgid "SCM_CRED authentication method not supported\n" #~ msgstr "аутентификация SCM_CRED не поддерживается\n" @@ -1719,9 +2289,6 @@ msgstr "нераспознанная ошибка сокета: 0x%08X/%d" #~ msgid "setsockopt(SO_KEEPALIVE) failed: %s\n" #~ msgstr "ошибка в setsockopt(SO_KEEPALIVE): %s\n" -#~ msgid "could not acquire mutex: %s\n" -#~ msgstr "не удалось заблокировать семафор: %s\n" - #~ msgid "socket not open\n" #~ msgstr "сокет не открыт\n" diff --git a/src/interfaces/libpq/po/sv.po b/src/interfaces/libpq/po/sv.po index 5dcd1eed11405..7ade5216cb978 100644 --- a/src/interfaces/libpq/po/sv.po +++ b/src/interfaces/libpq/po/sv.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: PostgreSQL 17\n" +"Project-Id-Version: PostgreSQL 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-15 19:10+0000\n" -"PO-Revision-Date: 2025-08-15 22:39+0200\n" +"POT-Creation-Date: 2025-09-04 11:10+0000\n" +"PO-Revision-Date: 2025-09-07 15:43+0200\n" "Last-Translator: Dennis Björklund \n" "Language-Team: Swedish \n" "Language: sv\n" @@ -233,11 +233,12 @@ msgstr "misslyckades med att skapa handle för libcurl" #: 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:1315 fe-exec.c:3254 fe-exec.c:4293 fe-exec.c:4459 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:210 fe-protocol3.c:233 -#: fe-protocol3.c:256 fe-protocol3.c:273 fe-protocol3.c:294 fe-protocol3.c:368 -#: fe-protocol3.c:732 fe-protocol3.c:972 fe-protocol3.c:1553 -#: fe-protocol3.c:1862 fe-protocol3.c:2263 fe-secure-common.c:110 +#: 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-secure-openssl.c:1135 #, c-format @@ -1158,8 +1159,8 @@ msgstr "oväntade mellanslag hittade i \"%s\", använd procent-kodade mellanslag 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:3459 -#: fe-protocol3.c:987 fe-protocol3.c:1020 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "slut på minne\n" @@ -1183,12 +1184,12 @@ msgstr "lösenord hämtat från fil \"%s\"" 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:3533 +#: fe-exec.c:469 fe-exec.c:3544 #, 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:2068 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" @@ -1215,134 +1216,134 @@ msgstr "PGresult stöder inte mer än INT_MAX tupler" msgid "size_t overflow" msgstr "size_t-överspill" -#: fe-exec.c:1438 fe-exec.c:1507 fe-exec.c:1553 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "kommandosträngen är en null-pekare" -#: fe-exec.c:1444 fe-exec.c:3003 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%s tillåts inte i pipeline-läge" -#: fe-exec.c:1512 fe-exec.c:1558 fe-exec.c:1652 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, 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:1548 fe-exec.c:1647 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "satsens namn är en null-pekare" -#: fe-exec.c:1689 fe-exec.c:3379 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "inte ansluten till servern" -#: fe-exec.c:1697 fe-exec.c:3387 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "ett annat kommando körs redan" -#: fe-exec.c:1727 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "kan inte köa kommandon när COPY körs" -#: fe-exec.c:1846 +#: fe-exec.c:1857 #, 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:2205 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "oväntad asyncStatus: %d" -#: fe-exec.c:2361 +#: fe-exec.c:2372 #, 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:2378 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "COPY terminerad av ny PQexec" -#: fe-exec.c:2394 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "PQexec tillåts inte under COPY BOTH" -#: fe-exec.c:2630 +#: fe-exec.c:2641 #, c-format msgid "unrecognized message type \"%c\"" msgstr "okänd meddelandetyp \"%c\"" -#: fe-exec.c:2702 fe-exec.c:2756 fe-exec.c:2824 fe-protocol3.c:1999 +#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 #, c-format msgid "no COPY in progress" msgstr "ingen COPY körs" -#: fe-exec.c:3010 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "anslutning i felaktigt tillstånd" -#: fe-exec.c:3053 +#: fe-exec.c:3064 #, 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:3089 fe-exec.c:3110 +#: fe-exec.c:3100 fe-exec.c:3121 #, 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:3093 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "är upptagen och kan inte avsluta pipeline-läge" -#: fe-exec.c:3104 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "kan inte avsluta pipeline-läge inne i en COPY" -#: fe-exec.c:3303 +#: fe-exec.c:3314 #, 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:3422 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "ogiltig ExecStatusType-kod" -#: fe-exec.c:3449 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresult är inte ett felresultat\n" -#: fe-exec.c:3517 fe-exec.c:3540 +#: fe-exec.c:3528 fe-exec.c:3551 #, 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:3555 +#: fe-exec.c:3566 #, 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:3866 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "kunde inte tolka svaret från servern: %s" -#: fe-exec.c:4141 fe-exec.c:4255 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "ofullständigt multibyte-tecken" -#: fe-exec.c:4143 fe-exec.c:4274 +#: fe-exec.c:4154 fe-exec.c:4285 #, c-format msgid "invalid multibyte character" msgstr "ogiltigt multibyte-tecken" @@ -1434,181 +1435,196 @@ msgstr "ogiltig socket" msgid "%s() failed: %s" msgstr "%s() misslyckades: %s" -#: fe-protocol3.c:188 +#: fe-protocol3.c:189 #, 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:401 +#: fe-protocol3.c:402 #, 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:443 +#: fe-protocol3.c:444 #, 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:462 +#: fe-protocol3.c:468 #, 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:480 +#: fe-protocol3.c:503 #, 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:532 fe-protocol3.c:572 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "otillräckligt med data i \"T\"-meddelande" -#: fe-protocol3.c:643 fe-protocol3.c:849 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "slut på minnet för frågeresultat" -#: fe-protocol3.c:712 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "otillräckligt med data i \"t\"-meddelande" -#: fe-protocol3.c:771 fe-protocol3.c:803 fe-protocol3.c:821 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "otillräckligt med data i \"D\"-meddelande" -#: fe-protocol3.c:777 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "oväntat fältantal i \"D\"-meddelande" -#: fe-protocol3.c:1033 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "inget felmeddelande finns tillgängligt\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1081 fe-protocol3.c:1100 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr " vid tecken %s" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "DETALJ: %s\n" -#: fe-protocol3.c:1116 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "TIPS: %s\n" -#: fe-protocol3.c:1119 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "FRÅGA: %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "KONTEXT: %s\n" -#: fe-protocol3.c:1135 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "SCHEMANAMN: %s\n" -#: fe-protocol3.c:1139 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "TABELLNAMN: %s\n" -#: fe-protocol3.c:1143 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "KOLUMNNAMN: %s\n" -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "DATATYPNAMN: %s\n" -#: fe-protocol3.c:1151 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "VILLKORSNAMN: %s\n" -#: fe-protocol3.c:1163 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "PLATS: " -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1167 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1362 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "RAD %d: " -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1442 #, 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:1430 +#: fe-protocol3.c:1448 #, 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:1437 +#: fe-protocol3.c:1455 #, 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:1443 +#: fe-protocol3.c:1461 #, 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:1449 +#: fe-protocol3.c:1467 #, 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:1455 +#: fe-protocol3.c:1473 #, 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:1480 +#: fe-protocol3.c:1498 #, 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:1483 +#: fe-protocol3.c:1501 #, 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:1490 +#: fe-protocol3.c:1508 #, 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:1894 +#: fe-protocol3.c:1574 +#, 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 +#, 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 +#, 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 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: utför inte text-COPY OUT" -#: fe-protocol3.c:2269 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "protokollfel: inget funktionsresultat" -#: fe-protocol3.c:2281 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "protokollfel: id=0x%x" diff --git a/src/pl/plperl/po/es.po b/src/pl/plperl/po/es.po index 4846603c139c7..5a1b862e4e3b4 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-02-16 19:39+0000\n" +"POT-Creation-Date: 2025-09-20 09:39+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -20,150 +20,150 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 1.8.7\n" -#: plperl.c:405 +#: plperl.c:407 msgid "If true, trusted and untrusted Perl code will be compiled in strict mode." msgstr "Si es verdadero, se compilará código Perl confiable y no confiable en modo «strict»." -#: plperl.c:419 +#: plperl.c:421 msgid "Perl initialization code to execute when a Perl interpreter is initialized." msgstr "Código Perl de inicialización a ejecutar cuando un intérprete Perl es inicializado." -#: plperl.c:441 +#: plperl.c:443 msgid "Perl initialization code to execute once when plperl is first used." msgstr "Código Perl de inicialización a ejecutar cuando plperl se usa por primera vez." -#: plperl.c:449 +#: plperl.c:451 msgid "Perl initialization code to execute once when plperlu is first used." msgstr "Código Perl de inicialización a ejecutar cuando plperlu se usa por primera vez." -#: plperl.c:643 +#: plperl.c:645 #, c-format msgid "cannot allocate multiple Perl interpreters on this platform" msgstr "no se pueden instanciar múltiples intérpretes Perl en esta plataforma" -#: 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 "mientras se ejecutaba PostgreSQL::InServer::SPI::bootstrap" -#: plperl.c:851 +#: plperl.c:853 #, c-format msgid "while parsing Perl initialization" msgstr "mientras se interpretaba la inicialización de Perl" -#: plperl.c:857 +#: plperl.c:859 #, c-format msgid "while running Perl initialization" msgstr "mientras se ejecutaba la inicialización de Perl" -#: plperl.c:974 +#: plperl.c:976 #, c-format msgid "while executing PLC_TRUSTED" msgstr "mientras se ejecutaba PLC_TRUSTED" -#: plperl.c:986 +#: plperl.c:988 #, c-format msgid "while executing utf8fix" msgstr "mientras se ejecutaba utf8fix" -#: plperl.c:1029 +#: plperl.c:1031 #, c-format msgid "while executing plperl.on_plperl_init" msgstr "mientras se ejecutaba plperl.on_plperl_init" -#: plperl.c:1052 +#: plperl.c:1054 #, c-format msgid "while executing plperl.on_plperlu_init" msgstr "mientras se ejecutaba 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 "el hash de Perl contiene el columna inexistente «%s»" -#: plperl.c:1103 plperl.c:1809 +#: plperl.c:1105 plperl.c:1811 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "no se puede definir el atributo de sistema «%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 "los arrays multidimensionales deben tener expresiones de arrays con dimensiones coincidentes" -#: plperl.c:1204 +#: plperl.c:1206 #, c-format msgid "number of array dimensions exceeds the maximum allowed (%d)" msgstr "el número de dimensiones del array excede el máximo permitido (%d)" -#: plperl.c:1274 +#: plperl.c:1276 #, c-format msgid "cannot convert Perl array to non-array type %s" msgstr "no se puede convertir un array de Perl al tipo no-array %s" -#: plperl.c:1375 +#: plperl.c:1377 #, c-format msgid "cannot convert Perl hash to non-composite type %s" msgstr "no se puede convertir un hash de Perl al tipo no compuesto %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 "se llamó una función que retorna un registro en un contexto que no puede aceptarlo" -#: plperl.c:1458 +#: plperl.c:1460 #, c-format msgid "lookup failed for type %s" msgstr "búsqueda del tipo %s falló" -#: plperl.c:1779 +#: plperl.c:1781 #, c-format msgid "$_TD->{new} does not exist" msgstr "$_TD->{new} no existe" -#: plperl.c:1783 +#: plperl.c:1785 #, c-format msgid "$_TD->{new} is not a hash reference" msgstr "$_TD->{new} no es una referencia a un hash" -#: plperl.c:1814 +#: plperl.c:1816 #, c-format msgid "cannot set generated column \"%s\"" msgstr "no se puede definir la columna generada «%s»" -#: plperl.c:2026 plperl.c:2867 +#: plperl.c:2027 plperl.c:2865 #, c-format msgid "PL/Perl functions cannot return type %s" msgstr "las funciones en PL/Perl no pueden retornar el tipo %s" -#: plperl.c:2039 plperl.c:2906 +#: plperl.c:2040 plperl.c:2904 #, c-format msgid "PL/Perl functions cannot accept type %s" msgstr "funciones de PL/Perl no pueden aceptar el tipo %s" -#: plperl.c:2156 +#: plperl.c:2157 #, c-format msgid "didn't get a CODE reference from compiling function \"%s\"" msgstr "no se obtuvo una referencia CODE en la compilación de la función «%s»" -#: plperl.c:2247 +#: plperl.c:2248 #, c-format msgid "didn't get a return item from function" msgstr "no se obtuvo un elemento de retorno desde la función" -#: plperl.c:2291 plperl.c:2358 +#: plperl.c:2292 plperl.c:2359 #, c-format msgid "couldn't fetch $_TD" msgstr "no se pudo obtener $_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 "no se obtuvo un elemento de retorno desde la función de disparador" @@ -183,47 +183,47 @@ msgstr "se requiere un nodo «materialize», pero no está permitido en este con msgid "set-returning PL/Perl function must return reference to array or use return_next" msgstr "una función PL/Perl que retorna un conjunto debe retornar una referencia a un array o usar return_next" -#: plperl.c:2606 +#: plperl.c:2605 #, c-format msgid "ignoring modified row in DELETE trigger" msgstr "ignorando la tupla modificada en el disparador DELETE" -#: plperl.c:2614 +#: plperl.c:2613 #, c-format msgid "result of PL/Perl trigger function must be undef, \"SKIP\", or \"MODIFY\"" msgstr "el resultado de la función disparadora en PL/Perl debe ser undef, «SKIP» o «MODIFY»" -#: plperl.c:2862 +#: plperl.c:2860 #, c-format msgid "trigger functions can only be called as triggers" msgstr "las funciones disparadoras sólo pueden ser llamadas como disparadores" -#: plperl.c:3220 +#: plperl.c:3221 #, c-format msgid "query result has too many rows to fit in a Perl array" msgstr "el resultado de la consulta tiene demasiados registros y no entran en un array de Perl" -#: plperl.c:3292 +#: plperl.c:3293 #, c-format msgid "cannot use return_next in a non-SETOF function" msgstr "no se puede utilizar return_next en una función sin SETOF" -#: plperl.c:3366 +#: plperl.c:3367 #, c-format msgid "SETOF-composite-returning PL/Perl function must call return_next with reference to hash" msgstr "una función Perl que retorna SETOF de un tipo compuesto debe invocar return_next con una referencia a un hash" -#: plperl.c:4148 +#: plperl.c:4149 #, c-format msgid "PL/Perl function \"%s\"" msgstr "función PL/Perl «%s»" -#: plperl.c:4160 +#: plperl.c:4161 #, c-format msgid "compilation of PL/Perl function \"%s\"" msgstr "compilación de la función PL/Perl «%s»" -#: plperl.c:4169 +#: plperl.c:4170 #, c-format msgid "PL/Perl anonymous code block" msgstr "bloque de código anónimo de PL/Perl" diff --git a/src/pl/plpgsql/src/po/es.po b/src/pl/plpgsql/src/po/es.po index c045415aa326c..7079c6a1b0e3a 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-02-16 19:39+0000\n" +"POT-Creation-Date: 2025-09-20 09:39+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -23,174 +23,169 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: BlackCAT 1.1\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 "las funciones PL/pgSQL no pueden aceptar el tipo %s" -#: pl_comp.c:526 +#: pl_comp.c:421 #, c-format msgid "could not determine actual return type for polymorphic function \"%s\"" msgstr "no se pudo determinar el verdadero tipo de resultado para la función polimórfica «%s»" -#: pl_comp.c:556 +#: pl_comp.c:451 #, c-format msgid "trigger functions can only be called as triggers" msgstr "las funciones de disparador sólo pueden ser invocadas como disparadores" -#: 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 "las funciones PL/pgSQL no pueden retornar el tipo %s" -#: pl_comp.c:600 +#: pl_comp.c:495 #, c-format msgid "trigger functions cannot have declared arguments" msgstr "las funciones de disparador no pueden tener argumentos declarados" -#: 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 "Los argumentos del disparador pueden accederse usando TG_NARGS y TG_ARGV." -#: pl_comp.c:734 +#: pl_comp.c:629 #, c-format msgid "event trigger functions cannot have declared arguments" msgstr "las funciones de disparador por eventos no pueden tener argumentos declarados" -#: pl_comp.c:998 +#: pl_comp.c:906 #, c-format msgid "compilation of PL/pgSQL function \"%s\" near line %d" msgstr "compilación de la función PL/pgSQL «%s» cerca de la línea %d" -#: pl_comp.c:1021 +#: pl_comp.c:929 #, c-format msgid "parameter name \"%s\" used more than once" msgstr "el nombre de parámetro «%s» fue usado más de una vez" -#: pl_comp.c:1135 +#: pl_comp.c:1043 #, c-format msgid "column reference \"%s\" is ambiguous" msgstr "la referencia a la columna «%s» es ambigua" -#: 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 "Podría referirse tanto a una variable PL/pgSQL como a una columna de una tabla." -#: 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 "el registro «%s» no tiene un campo «%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 "no existe la variable «%s»" -#: pl_comp.c:1722 +#: pl_comp.c:1630 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist" msgstr "no existe la columna «%s» en la relación «%s»" -#: pl_comp.c:1775 +#: pl_comp.c:1683 #, c-format msgid "relation \"%s\" does not exist" msgstr "no existe la relación «%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 "la relación «%s» no contiene un tipo compuesto" -#: pl_comp.c:1886 +#: pl_comp.c:1794 #, c-format msgid "variable \"%s\" has pseudo-type %s" msgstr "la variable «%s» tiene pseudotipo %s" -#: pl_comp.c:2075 +#: pl_comp.c:1983 #, c-format msgid "type \"%s\" is only a shell" msgstr "el tipo «%s» está inconcluso" -#: 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 "el tipo %s no es compuesto" -#: pl_comp.c:2193 +#: pl_comp.c:2101 #, c-format msgid "could not find array type for data type %s" msgstr "no se pudo encontrar un tipo de array para el tipo de dato %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 "no se reconoce la condición de excepción «%s»" -#: pl_comp.c:2514 -#, c-format -msgid "could not determine actual argument type for polymorphic function \"%s\"" -msgstr "no se pudo determinar el verdadero tipo de argumento para la función polimórfica «%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 "durante la inicialización del estado de ejecución" -#: pl_exec.c:518 +#: pl_exec.c:529 msgid "while storing call arguments into local variables" msgstr "mientras se almacenaban los argumentos de invocación en variables locales" -#: pl_exec.c:606 pl_exec.c:1024 +#: pl_exec.c:618 pl_exec.c:1036 msgid "during function entry" msgstr "durante el ingreso a la función" -#: pl_exec.c:629 +#: pl_exec.c:641 #, c-format msgid "control reached end of function without RETURN" msgstr "la ejecución alcanzó el fin de la función sin encontrar RETURN" -#: pl_exec.c:635 +#: pl_exec.c:647 msgid "while casting return value to function's return type" msgstr "mientras se hacía la conversión del valor de retorno al tipo de retorno de la función" -#: 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 "se llamó una función que retorna un conjunto en un contexto que no puede aceptarlo" -#: 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 "se requiere un nodo «materialize», pero no está permitido en este contexto" -#: 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 "durante la salida de la función" -#: 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 "el tipo de registro retornado no coincide con el tipo de registro esperado" -#: 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 "la ejecución alcanzó el fin del procedimiento disparador sin encontrar RETURN" -#: pl_exec.c:1055 +#: pl_exec.c:1067 #, c-format msgid "trigger procedure cannot return a set" msgstr "los procedimientos disparadores no pueden retornar conjuntos" -#: 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 "la estructura de fila retornada no coincide con la estructura de la tabla que generó el evento de disparador" #. 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 "función PL/pgSQL %s en la línea %d %s" @@ -198,336 +193,336 @@ msgstr "función PL/pgSQL %s en la línea %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 "función 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 "función PL/pgSQL %s en la línea %d en %s" -#: pl_exec.c:1288 +#: pl_exec.c:1300 #, c-format msgid "PL/pgSQL function %s" msgstr "función PL/pgSQL %s" -#: pl_exec.c:1659 +#: pl_exec.c:1671 msgid "during statement block local variable initialization" msgstr "durante inicialización de variables locales en el bloque de sentencias" -#: pl_exec.c:1764 +#: pl_exec.c:1776 msgid "during statement block entry" msgstr "durante la entrada al bloque de sentencias" -#: pl_exec.c:1796 +#: pl_exec.c:1808 msgid "during statement block exit" msgstr "durante la salida del bloque de sentencias" -#: pl_exec.c:1834 +#: pl_exec.c:1846 msgid "during exception cleanup" msgstr "durante la finalización por excepción" -#: 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 "el parámetro de procedimiento «%s» es un parámetro de salida pero el argumento correspondiente no es escribible" -#: 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 "el parámetro de procedimiento %d es un parámetro de salida pero el argumento correspondiente no es escribible" -#: 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 no puede ser usado fuera de un manejador de excepción" -#: pl_exec.c:2617 +#: pl_exec.c:2629 #, c-format msgid "case not found" msgstr "caso no encontrado" -#: pl_exec.c:2618 +#: pl_exec.c:2630 #, c-format msgid "CASE statement is missing ELSE part." msgstr "A la sentencia CASE le falta la parte ELSE." -#: pl_exec.c:2711 +#: pl_exec.c:2723 #, c-format msgid "lower bound of FOR loop cannot be null" msgstr "el límite inferior de un ciclo FOR no puede ser null" -#: pl_exec.c:2727 +#: pl_exec.c:2739 #, c-format msgid "upper bound of FOR loop cannot be null" msgstr "el límite superior de un ciclo FOR no puede ser null" -#: pl_exec.c:2745 +#: pl_exec.c:2757 #, c-format msgid "BY value of FOR loop cannot be null" msgstr "el valor BY de un ciclo FOR no puede ser null" -#: pl_exec.c:2751 +#: pl_exec.c:2763 #, c-format msgid "BY value of FOR loop must be greater than zero" msgstr "el valor BY de un ciclo FOR debe ser mayor que cero" -#: 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 "el cursor «%s» ya está en uso" -#: 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 "se dieron argumentos a un cursor sin argumentos" -#: pl_exec.c:2927 pl_exec.c:4782 +#: pl_exec.c:2939 pl_exec.c:4788 #, c-format msgid "arguments required for cursor" msgstr "se requieren argumentos para el cursor" -#: pl_exec.c:3018 +#: pl_exec.c:3030 #, c-format msgid "FOREACH expression must not be null" msgstr "la expresión FOREACH no debe ser nula" -#: pl_exec.c:3033 +#: pl_exec.c:3045 #, c-format msgid "FOREACH expression must yield an array, not type %s" msgstr "una expresión FOREACH debe retornar un array, no tipo %s" -#: pl_exec.c:3050 +#: pl_exec.c:3062 #, c-format msgid "slice dimension (%d) is out of the valid range 0..%d" msgstr "la dimensión del slice (%d) está fuera de rango 0..%d" -#: pl_exec.c:3077 +#: pl_exec.c:3089 #, c-format msgid "FOREACH ... SLICE loop variable must be of an array type" msgstr "las variables de bucles FOREACH ... SLICE deben ser de un tipo array" -#: pl_exec.c:3081 +#: pl_exec.c:3093 #, c-format msgid "FOREACH loop variable must not be of an array type" msgstr "la variable de bucle FOREACH no debe ser de tipo array" -#: 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 "no se puede retornar un valor no-compuesto desde una función que retorne tipos compuestos" -#: 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 "no se puede usar RETURN NEXT en una función que no es SETOF" -#: 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 "se pasó un tipo incorrecto de resultado a 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 "se pasó un tipo de registro incorrecto a RETURN NEXT" -#: pl_exec.c:3531 +#: pl_exec.c:3543 #, c-format msgid "RETURN NEXT must have a parameter" msgstr "RETURN NEXT debe tener un parámetro" -#: 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 "no se puede usar RETURN QUERY en una función que no ha sido declarada SETOF" -#: pl_exec.c:3577 +#: pl_exec.c:3589 msgid "structure of query does not match function result type" msgstr "la estructura de la consulta no coincide con el tipo del resultado de la función" -#: 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 "el argumento de consulta a ejecutar en EXECUTE es 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 "la opción de RAISE ya se especificó: %s" -#: pl_exec.c:3751 +#: pl_exec.c:3763 #, c-format msgid "RAISE without parameters cannot be used outside an exception handler" msgstr "RAISE sin parámetros no puede ser usado fuera de un manejador de excepción" -#: pl_exec.c:3845 +#: pl_exec.c:3857 #, c-format msgid "RAISE statement option cannot be null" msgstr "la opción de sentencia en RAISE no puede ser 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 "aseveración falló" -#: 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 "no se puede ejecutar COPY desde/a un cliente en PL/pgSQL" -#: pl_exec.c:4348 +#: pl_exec.c:4354 #, c-format msgid "unsupported transaction command in PL/pgSQL" msgstr "orden de transacción no soportada en 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 es utilizado con una orden que no puede retornar datos" -#: pl_exec.c:4394 pl_exec.c:4584 +#: pl_exec.c:4400 pl_exec.c:4590 #, c-format msgid "query returned no rows" msgstr "la consulta no regresó filas" -#: 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 "la consulta regresó más de una fila" -#: pl_exec.c:4418 +#: pl_exec.c:4424 #, c-format msgid "Make sure the query returns a single row, or use LIMIT 1." msgstr "Asegúrese que la consulta retorne una única fila, o use LIMIT 1." -#: pl_exec.c:4434 +#: pl_exec.c:4440 #, c-format msgid "query has no destination for result data" msgstr "la consulta no tiene un destino para los datos de resultado" -#: 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 "Si quiere descartar los resultados de un SELECT, utilice PERFORM." -#: pl_exec.c:4524 +#: pl_exec.c:4530 #, c-format msgid "EXECUTE of SELECT ... INTO is not implemented" msgstr "no está implementado EXECUTE de un 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 "Puede desear usar EXECUTE ... INTO o EXECUTE CREATE TABLE ... AS en su lugar." -#: pl_exec.c:4538 +#: pl_exec.c:4544 #, c-format msgid "EXECUTE of transaction commands is not implemented" msgstr "no está implementado EXECUTE de órdenes de transacción" -#: 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 "variable cursor «%s» es 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 "no existe el cursor «%s»" -#: pl_exec.c:4872 +#: pl_exec.c:4878 #, c-format msgid "relative or absolute cursor position is null" msgstr "la posición relativa o absoluta del cursor es 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 "no puede asignarse un valor null a la variable «%s» que fue declarada NOT NULL" -#: pl_exec.c:5186 +#: pl_exec.c:5178 #, c-format msgid "cannot assign non-composite value to a row variable" msgstr "no se puede asignar un valor no compuesto a una variable de tipo row" -#: pl_exec.c:5218 +#: pl_exec.c:5210 #, c-format msgid "cannot assign non-composite value to a record variable" msgstr "no se puede asignar un valor no compuesto a una variable de tipo record" -#: pl_exec.c:5269 +#: pl_exec.c:5261 #, c-format msgid "cannot assign to system column \"%s\"" msgstr "no se puede asignar a la columna de sistema «%s»" -#: pl_exec.c:5718 +#: pl_exec.c:5710 #, c-format msgid "query did not return data" msgstr "la consulta no retornó datos" -#: 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 "consulta: %s" -#: pl_exec.c:5727 +#: pl_exec.c:5719 #, c-format msgid "query returned %d column" msgid_plural "query returned %d columns" msgstr[0] "la consulta retornó %d columna" msgstr[1] "la consulta retornó %d columnas" -#: pl_exec.c:5831 +#: pl_exec.c:5827 #, c-format msgid "query is SELECT INTO, but it should be plain SELECT" msgstr "la consulta es SELECT INTO, pero debería ser un SELECT simple" -#: pl_exec.c:5836 +#: pl_exec.c:5832 #, c-format msgid "query is not a SELECT" msgstr "la consulta no es un 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 "el tipo del parámetro %d (%s) no coincide aquel con que fue preparado el plan (%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 "no coincide el número de campos de origen y destino en la asignación" #. 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 "El chequeo %s de %s está activo." -#: 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 "Asegúrese que la consulta retorna la lista exacta de columnas." -#: pl_exec.c:7668 +#: pl_exec.c:7832 #, c-format msgid "record \"%s\" is not assigned yet" msgstr "el registro «%s» no ha sido asignado aún" -#: pl_exec.c:7669 +#: pl_exec.c:7833 #, c-format msgid "The tuple structure of a not-yet-assigned record is indeterminate." msgstr "La estructura de fila de un registro aún no asignado no está determinado." -#: 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 "la variable «%s» esta declarada como CONSTANT" @@ -564,306 +559,310 @@ msgstr "sentencia SQL" msgid "FOR over EXECUTE statement" msgstr "bucle FOR en torno a una sentencia EXECUTE" -#: pl_gram.y:485 +#: pl_gram.y:501 #, c-format msgid "block label must be placed before DECLARE, not after" msgstr "etiqueta de bloque debe estar antes de DECLARE, no después" -#: pl_gram.y:505 +#: pl_gram.y:521 #, c-format msgid "collations are not supported by type %s" msgstr "los ordenamientos (collation) no están soportados por el tipo %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 "la variable «%s» debe tener valor por omisión, puesto que está declarado NOT NULL" -#: pl_gram.y:704 pl_gram.y:732 +#: pl_gram.y:724 pl_gram.y:752 msgid "duplicate declaration" msgstr "declaración duplicada" -#: 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 "la variable «%s» oculta una variable definida anteriormente" -#: pl_gram.y:1017 +#: pl_gram.y:1040 #, c-format msgid "diagnostics item %s is not allowed in GET STACKED DIAGNOSTICS" msgstr "elemento de diagnóstico %s no se permite en GET STACKED DIAGNOSTICS" -#: pl_gram.y:1035 +#: pl_gram.y:1058 #, c-format msgid "diagnostics item %s is not allowed in GET CURRENT DIAGNOSTICS" msgstr "elemento de diagnóstico %s no se permite en GET STACKED DIAGNOSTICS" -#: pl_gram.y:1133 +#: pl_gram.y:1156 msgid "unrecognized GET DIAGNOSTICS item" msgstr "elemento de GET DIAGNOSTICS no reconocido" -#: 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» no es una variable escalar" -#: 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 "la variable de bucle de un bucle sobre filas debe ser una variable de tipo record o una lista de variables escalares" -#: pl_gram.y:1414 +#: pl_gram.y:1437 #, c-format msgid "cursor FOR loop must have only one target variable" msgstr "un bucle FOR de un cursor debe tener sólo una variable de destino" -#: pl_gram.y:1421 +#: pl_gram.y:1444 #, c-format msgid "cursor FOR loop must use a bound cursor variable" msgstr "un bucle FOR en torno a un cursor debe usar un cursor enlazado (bound)" -#: pl_gram.y:1511 +#: pl_gram.y:1534 #, c-format msgid "integer FOR loop must have only one target variable" msgstr "un bucle FOR de un número entero debe tener sólo una variable de destino" -#: pl_gram.y:1545 +#: pl_gram.y:1568 #, c-format msgid "cannot specify REVERSE in query FOR loop" msgstr "no se puede especificar REVERSE en un bucle FOR de una consulta" -#: 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 "la variable de bucle de FOREACH debe ser una variable conocida o una lista de variables conocidas" -#: 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 "ningún bloque o bucle que contenga esta sentencia tiene una etiqueta «%s»" -#: pl_gram.y:1725 +#: pl_gram.y:1750 #, c-format msgid "block label \"%s\" cannot be used in CONTINUE" msgstr "la etiqueta de bloque «%s» no puede usarse en 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 no puede usarse fuera de un bucle, a menos que tenga una etiqueta" -#: pl_gram.y:1741 +#: pl_gram.y:1766 #, c-format msgid "CONTINUE cannot be used outside a loop" msgstr "CONTINUE no puede usarse fuera de un bucle" -#: 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 "fin inesperado de la definición de la función" -#: 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 "error de sintaxis" -#: 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 "código SQLSTATE no válido" -#: pl_gram.y:2107 +#: pl_gram.y:2135 msgid "syntax error, expected \"FOR\"" msgstr "error de sintaxis, se esperaba «FOR»" -#: pl_gram.y:2168 +#: pl_gram.y:2196 #, c-format msgid "FETCH statement cannot return multiple rows" msgstr "la sentencia FETCH no puede retornar múltiples filas" -#: pl_gram.y:2265 +#: pl_gram.y:2293 #, c-format msgid "cursor variable must be a simple variable" msgstr "variable de cursor debe ser una variable simple" -#: pl_gram.y:2271 +#: pl_gram.y:2299 #, c-format msgid "variable \"%s\" must be of type cursor or refcursor" msgstr "la variable «%s» debe ser de tipo cursor o 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» no es una variable conocida" -#: 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 "no coinciden los paréntesis" -#: pl_gram.y:2733 +#: pl_gram.y:2814 #, c-format msgid "missing \"%s\" at end of SQL expression" msgstr "falta «%s» al final de la expresión SQL" -#: pl_gram.y:2739 +#: pl_gram.y:2820 #, c-format msgid "missing \"%s\" at end of SQL statement" msgstr "falta «%s» al final de la sentencia SQL" -#: pl_gram.y:2758 +#: pl_gram.y:2839 msgid "missing expression" msgstr "expresión faltante" -#: pl_gram.y:2760 +#: pl_gram.y:2841 msgid "missing SQL statement" msgstr "sentencia SQL faltante" -#: pl_gram.y:2889 +#: pl_gram.y:2964 msgid "syntax error, expected \"]\"" msgstr "error de sintaxis, se esperaba «]»" -#: pl_gram.y:2913 +#: pl_gram.y:2988 msgid "incomplete data type declaration" msgstr "declaración de tipo de dato incompleta" -#: pl_gram.y:2936 +#: pl_gram.y:3011 msgid "missing data type declaration" msgstr "declaración de tipo de dato faltante" -#: pl_gram.y:3071 +#: pl_gram.y:3146 msgid "INTO specified more than once" msgstr "INTO fue especificado más de una vez" -#: pl_gram.y:3241 +#: pl_gram.y:3310 msgid "expected FROM or IN" msgstr "se espera FROM o IN" -#: pl_gram.y:3302 +#: pl_gram.y:3371 #, c-format msgid "RETURN cannot have a parameter in function returning set" msgstr "RETURN no puede tener un parámetro en una función que retorna un conjunto" -#: pl_gram.y:3303 +#: pl_gram.y:3372 #, c-format msgid "Use RETURN NEXT or RETURN QUERY." msgstr "Use RETURN NEXT o RETURN QUERY." -#: pl_gram.y:3313 +#: pl_gram.y:3382 #, c-format msgid "RETURN cannot have a parameter in a procedure" msgstr "RETURN no puede tener un parámetro un procedimiento" -#: pl_gram.y:3318 +#: pl_gram.y:3387 #, c-format msgid "RETURN cannot have a parameter in function returning void" msgstr "RETURN no puede tener parámetro en una función que retorna void" -#: pl_gram.y:3327 +#: pl_gram.y:3396 #, c-format msgid "RETURN cannot have a parameter in function with OUT parameters" msgstr "RETURN no puede tener parámetros en una función con parámetros OUT" -#: pl_gram.y:3390 +#: pl_gram.y:3459 #, c-format msgid "RETURN NEXT cannot have a parameter in function with OUT parameters" msgstr "RETURN NEXT no puede tener parámetros en una función con parámetros OUT" -#: pl_gram.y:3556 +#: pl_gram.y:3625 #, c-format msgid "record variable cannot be part of multiple-item INTO list" msgstr "una variable de tipo record no puede ser parte de una lista INTO de múltiples elementos" -#: pl_gram.y:3602 +#: pl_gram.y:3673 #, c-format msgid "too many INTO variables specified" msgstr "se especificaron demasiadas variables INTO" -#: pl_gram.y:3810 +#: pl_gram.y:3884 #, c-format msgid "end label \"%s\" specified for unlabeled block" msgstr "etiqueta de término «%s» especificada para un bloque sin etiqueta" -#: pl_gram.y:3817 +#: pl_gram.y:3891 #, c-format msgid "end label \"%s\" differs from block's label \"%s\"" msgstr "etiqueta de término «%s» difiere de la etiqueta de bloque «%s»" -#: pl_gram.y:3851 +#: pl_gram.y:3925 #, c-format msgid "cursor \"%s\" has no arguments" msgstr "el cursor «%s» no tiene argumentos" -#: pl_gram.y:3865 +#: pl_gram.y:3939 #, c-format msgid "cursor \"%s\" has arguments" msgstr "el cursor «%s» tiene argumentos" -#: pl_gram.y:3907 +#: pl_gram.y:3984 #, c-format msgid "cursor \"%s\" has no argument named \"%s\"" msgstr "el cursor «%s» no tiene un argumento llamado «%s»" -#: pl_gram.y:3927 +#: pl_gram.y:4004 #, c-format msgid "value for parameter \"%s\" of cursor \"%s\" specified more than once" msgstr "el valor para el parámetro «%s» del cursor «%s» fue especificado más de una vez" -#: pl_gram.y:3948 +#: pl_gram.y:4026 #, c-format msgid "not enough arguments for cursor \"%s\"" msgstr "no hay suficientes argumentos para el cursor «%s»" -#: pl_gram.y:3955 +#: pl_gram.y:4033 #, c-format msgid "too many arguments for cursor \"%s\"" msgstr "demasiados argumentos para el cursor «%s»" -#: pl_gram.y:4041 +#: pl_gram.y:4113 msgid "unrecognized RAISE statement option" msgstr "no se reconoce la opción de sentencia RAISE" -#: pl_gram.y:4045 +#: pl_gram.y:4117 msgid "syntax error, expected \"=\"" msgstr "error de sintaxis, se esperaba «=»" -#: pl_gram.y:4086 +#: pl_gram.y:4158 #, c-format msgid "too many parameters specified for RAISE" msgstr "se especificaron demasiados parámetros a RAISE" -#: pl_gram.y:4090 +#: pl_gram.y:4162 #, c-format msgid "too few parameters specified for RAISE" msgstr "se especificaron muy pocos parámetros a RAISE" -#: pl_handler.c:156 +#: pl_handler.c:159 msgid "Sets handling of conflicts between PL/pgSQL variable names and table column names." msgstr "Determina el manejo de conflictos entre nombres de variables PL/pgSQL y nombres de columnas de tablas." -#: 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 "Imprimir información de parámetros en la parte DETALLE de los mensajes de error generados por fallos en INTO ... STRICT." -#: pl_handler.c:173 +#: pl_handler.c:176 msgid "Perform checks given in ASSERT statements." msgstr "Ejecuta las verificaciones en sentencias ASSERT." -#: pl_handler.c:181 +#: pl_handler.c:184 msgid "List of programming constructs that should produce a warning." msgstr "Listado de estructuras de programación que deben dar una advertencia." -#: pl_handler.c:191 +#: pl_handler.c:194 msgid "List of programming constructs that should produce an error." msgstr "Listado de estructuras de programación que deben dar un error." #. 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 al final de la entrada" #. 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 en o cerca de «%s»" + +#, c-format +#~ msgid "could not determine actual argument type for polymorphic function \"%s\"" +#~ msgstr "no se pudo determinar el verdadero tipo de argumento para la función polimórfica «%s»" diff --git a/src/pl/plpython/po/es.po b/src/pl/plpython/po/es.po index bae86f7219b13..30f207fa726da 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-02-16 19:39+0000\n" +"POT-Creation-Date: 2025-09-20 09:38+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -21,269 +21,269 @@ msgstr "" "Plural-Forms: nplurals=2; plural=n != 1;\n" "X-Generator: Poedit 2.0.2\n" -#: plpy_cursorobject.c:72 +#: plpy_cursorobject.c:91 #, c-format msgid "plpy.cursor expected a query or a plan" msgstr "plpy.cursor espera una consulta o un plan" -#: plpy_cursorobject.c:154 +#: plpy_cursorobject.c:177 #, c-format msgid "plpy.cursor takes a sequence as its second argument" msgstr "plpy.cursor lleva una secuencia como segundo argumento" -#: plpy_cursorobject.c:170 plpy_spi.c:204 +#: plpy_cursorobject.c:193 plpy_spi.c:200 #, c-format msgid "could not execute plan" msgstr "no se pudo ejecutar el plan" -#: plpy_cursorobject.c:173 plpy_spi.c:207 +#: 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" msgstr[0] "Se esperaba una secuencia de %d argumento, se obtuvo %d: %s" msgstr[1] "Se esperaba una secuencia de %d argumentos, se obtuvo %d: %s" -#: plpy_cursorobject.c:317 +#: plpy_cursorobject.c:349 #, c-format msgid "iterating a closed cursor" msgstr "iterando un cursor cerrado" -#: plpy_cursorobject.c:325 plpy_cursorobject.c:391 +#: plpy_cursorobject.c:357 plpy_cursorobject.c:423 #, c-format msgid "iterating a cursor in an aborted subtransaction" msgstr "iterando un cursor en una subtransacción abortada" -#: plpy_cursorobject.c:383 +#: plpy_cursorobject.c:415 #, c-format msgid "fetch from a closed cursor" msgstr "haciendo «fetch» en un cursor cerrado" -#: plpy_cursorobject.c:426 plpy_spi.c:393 +#: plpy_cursorobject.c:458 plpy_spi.c:389 #, c-format msgid "query result has too many rows to fit in a Python list" msgstr "el resultado de la consulta tiene demasiados registros y no entran en una lista de Python" -#: plpy_cursorobject.c:478 +#: plpy_cursorobject.c:510 #, c-format msgid "closing a cursor in an aborted subtransaction" msgstr "cerrando un cursor en una subtransacción abortada" -#: 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 "modo de retorno de conjunto de función no soportado" -#: plpy_exec.c:140 +#: plpy_exec.c:138 #, c-format msgid "PL/Python set-returning functions only support returning one value per call." msgstr "Las funciones PL/Python que retornan conjuntos sólo permiten retornar un valor por invocación." -#: plpy_exec.c:153 +#: plpy_exec.c:151 #, c-format msgid "returned object cannot be iterated" msgstr "objeto retornado no puede ser iterado" -#: plpy_exec.c:154 +#: plpy_exec.c:152 #, c-format msgid "PL/Python set-returning functions must return an iterable object." msgstr "Los funciones PL/Python que retornan conjuntos deben retornar un objeto iterable." -#: plpy_exec.c:168 +#: plpy_exec.c:166 #, c-format msgid "error fetching next item from iterator" msgstr "error extrayendo el próximo elemento del iterador" -#: plpy_exec.c:211 +#: plpy_exec.c:209 #, c-format msgid "PL/Python procedure did not return None" msgstr "procedimiento PL/Python no returnó None" -#: plpy_exec.c:215 +#: plpy_exec.c:213 #, c-format msgid "PL/Python function with return type \"void\" did not return None" msgstr "función PL/Python con tipo de retorno «void» no retorna None" -#: plpy_exec.c:246 +#: plpy_exec.c:244 #, c-format msgid "function returning record called in context that cannot accept type record" msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo" -#: 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 "valor de retorno no esperado desde el procedimiento disparador" -#: plpy_exec.c:393 +#: plpy_exec.c:391 #, c-format msgid "Expected None or a string." msgstr "Se esperaba None o una cadena." -#: plpy_exec.c:406 +#: plpy_exec.c:404 #, c-format msgid "PL/Python trigger function returned \"MODIFY\" in a DELETE trigger -- ignored" msgstr "función de disparador de PL/Python retorno «MODIFY» en un disparador de tipo DELETE -- ignorado" -#: plpy_exec.c:417 +#: plpy_exec.c:415 #, c-format msgid "Expected None, \"OK\", \"SKIP\", or \"MODIFY\"." msgstr "Se esperaba None, «OK», «SKIP» o «MODIFY»." -#: plpy_exec.c:468 +#: plpy_exec.c:466 #, c-format msgid "PyList_SetItem() failed, while setting up arguments" msgstr "PyList_SetItem() falló, mientras se inicializaban los argumentos" -#: plpy_exec.c:472 +#: plpy_exec.c:470 #, c-format msgid "PyDict_SetItemString() failed, while setting up arguments" msgstr "PyDict_SetItemString() falló, mientras se inicializaban los argumentos" -#: plpy_exec.c:701 +#: plpy_exec.c:699 #, c-format msgid "while creating return value" msgstr "mientras se creaba el valor de retorno" -#: plpy_exec.c:952 +#: plpy_exec.c:950 #, c-format msgid "TD[\"new\"] deleted, cannot modify row" msgstr "TD[\"new\"] borrado, no se puede modicar el registro" -#: plpy_exec.c:957 +#: plpy_exec.c:955 #, c-format msgid "TD[\"new\"] is not a dictionary" msgstr "TD[\"new\"] no es un diccionario" -#: plpy_exec.c:982 +#: plpy_exec.c:980 #, c-format msgid "TD[\"new\"] dictionary key at ordinal position %d is not a string" msgstr "el nombre del atributo de TD[\"new\"] en la posición %d no es una cadena" -#: 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 "la llave «%s» en TD[\"new\"] no existe como columna en la fila disparadora" -#: plpy_exec.c:994 +#: plpy_exec.c:992 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "no se puede definir el atributo de sistema «%s»" -#: plpy_exec.c:999 +#: plpy_exec.c:997 #, c-format msgid "cannot set generated column \"%s\"" msgstr "no se puede definir el atributo generado «%s»" -#: plpy_exec.c:1057 +#: plpy_exec.c:1055 #, c-format msgid "while modifying trigger row" msgstr "mientras se modificaba la fila de disparador" # FIXME not very happy with this -#: plpy_exec.c:1115 +#: plpy_exec.c:1107 #, c-format msgid "forcibly aborting a subtransaction that has not been exited" msgstr "abortando una subtransacción que no se ha cerrado" -#: plpy_main.c:109 +#: plpy_main.c:112 #, c-format msgid "multiple Python libraries are present in session" msgstr "hay múltiples librerías de Python presentes en esta sesión" -#: plpy_main.c:110 +#: plpy_main.c:113 #, c-format msgid "Only one Python major version can be used in one session." msgstr "Sólo se puede usar una versión mayor de Python en cada sesión." -#: plpy_main.c:122 +#: plpy_main.c:125 #, c-format msgid "untrapped error in initialization" msgstr "error no capturado en la inicialización" -#: plpy_main.c:145 +#: plpy_main.c:148 #, c-format msgid "could not import \"__main__\" module" msgstr "no se pudo importar el módulo «__main__»" -#: plpy_main.c:154 +#: plpy_main.c:157 #, c-format msgid "could not initialize globals" msgstr "no se pudo inicializar las globales" -#: plpy_main.c:352 +#: plpy_main.c:353 #, c-format msgid "PL/Python procedure \"%s\"" msgstr "procedimiento PL/Python «%s»" -#: plpy_main.c:355 +#: plpy_main.c:356 #, c-format msgid "PL/Python function \"%s\"" msgstr "función PL/Python «%s»" -#: plpy_main.c:363 +#: plpy_main.c:364 #, c-format msgid "PL/Python anonymous code block" msgstr "bloque de código anónimo de 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 "no se pudo importar el módulo «plpy»" -#: plpy_plpymodule.c:182 +#: plpy_plpymodule.c:179 #, c-format msgid "could not create the spiexceptions module" msgstr "no se pudo crear el módulo spiexceptions" -#: plpy_plpymodule.c:190 +#: plpy_plpymodule.c:187 #, c-format msgid "could not add the spiexceptions module" msgstr "no se pudo importar el módulo spiexceptions" -#: plpy_plpymodule.c:257 +#: plpy_plpymodule.c:254 #, c-format msgid "could not generate SPI exceptions" msgstr "no se pudo generar excepciones SPI" -#: plpy_plpymodule.c:425 +#: plpy_plpymodule.c:422 #, c-format msgid "could not unpack arguments in plpy.elog" msgstr "no se pudo desempaquetar los argumentos de plpy.elog" -#: plpy_plpymodule.c:434 +#: plpy_plpymodule.c:431 msgid "could not parse error message in plpy.elog" msgstr "no se pudo analizar el mensaje de error de plpy.elog" -#: plpy_plpymodule.c:451 +#: plpy_plpymodule.c:448 #, c-format msgid "argument 'message' given by name and position" msgstr "el argumento 'message' fue pasado por nombre y posición" -#: plpy_plpymodule.c:478 +#: plpy_plpymodule.c:475 #, c-format msgid "'%s' is an invalid keyword argument for this function" msgstr "«%s» no es un argumento válido para esta función" -#: plpy_plpymodule.c:489 plpy_plpymodule.c:495 +#: plpy_plpymodule.c:486 plpy_plpymodule.c:492 #, c-format msgid "invalid SQLSTATE code" msgstr "código SQLSTATE no válido" -#: plpy_procedure.c:226 +#: plpy_procedure.c:223 #, c-format msgid "trigger functions can only be called as triggers" msgstr "las funciones disparadoras sólo pueden ser llamadas como disparadores" -#: plpy_procedure.c:230 +#: plpy_procedure.c:227 #, c-format msgid "PL/Python functions cannot return type %s" msgstr "las funciones PL/Python no pueden retornar el tipo %s" -#: plpy_procedure.c:308 +#: plpy_procedure.c:305 #, c-format msgid "PL/Python functions cannot accept type %s" msgstr "la funciones PL/Python no pueden aceptar el tipo %s" @@ -298,57 +298,57 @@ msgstr "no se pudo compilar la función PL/Python «%s»" msgid "could not compile anonymous PL/Python code block" msgstr "no se pudo compilar el bloque anónimo 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 "la orden no produjo un conjunto de resultados" -#: plpy_spi.c:56 +#: plpy_spi.c:53 #, c-format msgid "second argument of plpy.prepare must be a sequence" msgstr "el segundo argumento de plpy.prepare debe ser una secuencia" -#: 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: el nombre de tipo en la posición %d no es una cadena" -#: plpy_spi.c:170 +#: plpy_spi.c:166 #, c-format msgid "plpy.execute expected a query or a plan" msgstr "plpy.execute espera una consulta o un plan" -#: plpy_spi.c:188 +#: plpy_spi.c:184 #, c-format msgid "plpy.execute takes a sequence as its second argument" msgstr "plpy.execute lleva una secuencia como segundo argumento" -#: plpy_spi.c:289 +#: plpy_spi.c:285 #, c-format msgid "SPI_execute_plan failed: %s" msgstr "falló SPI_execute_plan: %s" -#: plpy_spi.c:331 +#: plpy_spi.c:327 #, c-format msgid "SPI_execute failed: %s" msgstr "falló SPI_execute: %s" -#: plpy_subxactobject.c:92 +#: plpy_subxactobject.c:102 #, c-format msgid "this subtransaction has already been entered" msgstr "ya se ha entrado en esta subtransacción" -#: 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 "ya se ha salido de esta subtransacción" -#: plpy_subxactobject.c:150 +#: plpy_subxactobject.c:160 #, c-format msgid "this subtransaction has not been entered" msgstr "no se ha entrado en esta subtransacción" -#: plpy_subxactobject.c:162 +#: plpy_subxactobject.c:172 #, c-format msgid "there is no subtransaction to exit from" msgstr "no hay una subtransacción de la cual salir" @@ -368,87 +368,87 @@ msgstr "no se encontró atributo Decimal en el módulo" msgid "conversion from numeric to Decimal failed" msgstr "falló la conversión de numeric a Decimal" -#: plpy_typeio.c:912 +#: plpy_typeio.c:915 #, c-format msgid "could not create bytes representation of Python object" msgstr "no se pudo crear la representación de cadena de bytes de Python" -#: plpy_typeio.c:1049 +#: plpy_typeio.c:1052 #, c-format msgid "could not create string representation of Python object" msgstr "no se pudo crear la representación de cadena de texto del objeto de 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 "no se pudo convertir el objeto Python a un cstring: la representación de cadena Python parece tener bytes nulos (\\0)" -#: 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 "el valor de retorno de la función con tipo de retorno array no es una secuencia Python" -#: plpy_typeio.c:1202 +#: plpy_typeio.c:1205 #, c-format msgid "could not determine sequence length for function return value" msgstr "no se pudo determinar el largo de secuencia del retorno de valor de la función" -#: 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 "los arrays multidimensionales deben tener expresiones de arrays con dimensiones coincidentes" -#: plpy_typeio.c:1227 +#: plpy_typeio.c:1230 #, c-format msgid "number of array dimensions exceeds the maximum allowed (%d)" msgstr "el número de dimensiones del array excede el máximo permitido (%d)" -#: plpy_typeio.c:1329 +#: plpy_typeio.c:1332 #, c-format msgid "malformed record literal: \"%s\"" msgstr "literal de record no es válido: «%s»" -#: plpy_typeio.c:1330 +#: plpy_typeio.c:1333 #, c-format msgid "Missing left parenthesis." msgstr "Falta paréntesis izquierdo." -#: 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 "Para retornar un tipo compuesto en un array, retorne el tipo compuesto como una tupla de Python, e.g., «[('foo',)]»." -#: plpy_typeio.c:1378 +#: plpy_typeio.c:1381 #, c-format msgid "key \"%s\" not found in mapping" msgstr "la llave «%s» no fue encontrada en el mapa" -#: 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 "Para retornar null en una columna, agregue el valor None al mapa, con llave llamada igual que la columna." -#: plpy_typeio.c:1432 +#: plpy_typeio.c:1435 #, c-format msgid "length of returned sequence did not match number of columns in row" msgstr "el tamaño de la secuencia retornada no concuerda con el número de columnas de la fila" -#: plpy_typeio.c:1530 +#: plpy_typeio.c:1533 #, c-format msgid "attribute \"%s\" does not exist in Python object" msgstr "el atributo «%s» no existe en el objeto 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 "Para retornar null en una columna, haga que el objeto retornado tenga un atributo llamado igual que la columna, con valor None." -#: plpy_util.c:31 +#: plpy_util.c:29 #, c-format msgid "could not convert Python Unicode object to bytes" msgstr "no se pudo convertir el objeto Unicode de Python a bytes" -#: plpy_util.c:37 +#: plpy_util.c:35 #, c-format msgid "could not extract bytes from encoded string" msgstr "no se pudo extraer bytes desde la cadena codificada" diff --git a/src/pl/tcl/po/es.po b/src/pl/tcl/po/es.po index 5020e4ffb189a..6553c9175d667 100644 --- a/src/pl/tcl/po/es.po +++ b/src/pl/tcl/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pltcl (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-02-16 19:38+0000\n" -"PO-Revision-Date: 2024-11-16 14:24+0100\n" +"POT-Creation-Date: 2025-09-20 09:38+0000\n" +"PO-Revision-Date: 2025-09-21 11:42+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -20,105 +20,108 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Poedit 2.0.2\n" -#: pltcl.c:466 +#: pltcl.c:470 msgid "PL/Tcl function to call once when pltcl is first used." msgstr "función PL/Tcl a ejecutar cuando se use pltcl por primera vez." -#: pltcl.c:473 +#: pltcl.c:477 msgid "PL/TclU function to call once when pltclu is first used." msgstr "función PL/TclU a ejecutar cuando se use pltclu por primera vez." -#: pltcl.c:640 +#: pltcl.c:644 #, c-format msgid "function \"%s\" is in the wrong language" msgstr "la función «%s» está en el lenguaje equivocado" -#: pltcl.c:651 +#: pltcl.c:655 #, c-format msgid "function \"%s\" must not be SECURITY DEFINER" msgstr "la función «%s» no debe ser SECURITY DEFINER" #. translator: %s is "pltcl.start_proc" or "pltclu.start_proc" -#: pltcl.c:685 +#: pltcl.c:689 #, c-format msgid "processing %s parameter" msgstr "procesando el parámetro %s" -#: pltcl.c:838 +#: pltcl.c:841 #, c-format 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" -#: pltcl.c:843 +#: pltcl.c:846 #, c-format msgid "materialize mode required, but it is not allowed in this context" msgstr "se requiere un nodo «materialize», pero no está permitido en este contexto" -#: pltcl.c:1016 +#: pltcl.c:1019 #, c-format msgid "function returning record called in context that cannot accept type record" msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo" -#: pltcl.c:1035 +#: pltcl.c:1038 #, c-format msgid "could not parse function return value: %s" msgstr "no se pudo interpretar el valor de retorno de la función: %s" -#: pltcl.c:1302 +#: pltcl.c:1304 #, c-format msgid "could not parse trigger return value: %s" msgstr "no se pudo interpretar el valor de retorno del trigger: «%s»" -#: pltcl.c:1387 pltcl.c:1814 +#: pltcl.c:1404 pltcl.c:1898 #, c-format msgid "%s" msgstr "%s" -#: pltcl.c:1388 +#: pltcl.c:1405 #, c-format +#| msgid "" +#| "%s\n" +#| "in PL/Tcl function \"%s\"" msgid "" "%s\n" -"in PL/Tcl function \"%s\"" +"in PL/Tcl function %s" msgstr "" "%s\n" -"en función PL/Tcl \"%s\"" +"en función PL/Tcl %s" -#: pltcl.c:1551 +#: pltcl.c:1633 #, c-format msgid "trigger functions can only be called as triggers" msgstr "las funciones disparadoras sólo pueden ser invocadas como disparadores" -#: pltcl.c:1555 +#: pltcl.c:1637 #, c-format msgid "PL/Tcl functions cannot return type %s" msgstr "las funciones PL/Tcl no pueden retornar tipo %s" -#: pltcl.c:1594 +#: pltcl.c:1676 #, c-format msgid "PL/Tcl functions cannot accept type %s" msgstr "las funciones PL/Tcl no pueden aceptar el tipog%s" -#: pltcl.c:1706 +#: pltcl.c:1788 #, c-format msgid "could not create internal procedure \"%s\": %s" msgstr "no se pudo crear procedimiento interno «%s»: %s" -#: pltcl.c:3211 +#: pltcl.c:3298 #, c-format msgid "column name/value list must have even number of elements" msgstr "la lista de nombres de columnas y valores debe tener un número par de elementos" -#: pltcl.c:3229 +#: pltcl.c:3316 #, c-format msgid "column name/value list contains nonexistent column name \"%s\"" msgstr "la lista de nombres de columnas y valores contiene el nombre de columna no existente «%s»" -#: pltcl.c:3236 +#: pltcl.c:3323 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "no se puede definir el atributo de sistema «%s»" -#: pltcl.c:3242 +#: pltcl.c:3329 #, c-format msgid "cannot set generated column \"%s\"" msgstr "no se puede definir el atributo generado «%s»" diff --git a/src/pl/tcl/po/ko.po b/src/pl/tcl/po/ko.po index 63d744f6c2113..f383be2bb9810 100644 --- a/src/pl/tcl/po/ko.po +++ b/src/pl/tcl/po/ko.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: pltcl (PostgreSQL) 17\n" +"Project-Id-Version: pltcl (PostgreSQL) 18\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-01-17 04:38+0000\n" -"PO-Revision-Date: 2025-01-16 11:03+0900\n" +"POT-Creation-Date: 2025-09-11 21:38+0000\n" +"PO-Revision-Date: 2025-09-09 12:55+0900\n" "Last-Translator: Ioseph Kim \n" "Language-Team: Korean Team \n" "Language: ko\n" @@ -17,111 +17,110 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: pltcl.c:466 +#: pltcl.c:470 msgid "PL/Tcl function to call once when pltcl is first used." msgstr "pltcl 언어가 처음 사용될 때 한번 호출 될 PL/Tcl 함수" -#: pltcl.c:473 +#: pltcl.c:477 msgid "PL/TclU function to call once when pltclu is first used." msgstr "pltclu 언어가 처음 사용될 때 한번 호출 될 PL/Tcl 함수" -#: pltcl.c:640 +#: pltcl.c:644 #, c-format msgid "function \"%s\" is in the wrong language" msgstr "\"%s\" 함수에 잘못된 언어가 있음" -#: pltcl.c:651 +#: 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:685 +#: pltcl.c:689 #, c-format msgid "processing %s parameter" msgstr "%s 매개 변수 처리 중" -#: pltcl.c:838 +#: pltcl.c:841 #, c-format msgid "set-valued function called in context that cannot accept a set" msgstr "집합이 값이 함수가 집합을 사용할 수 없는 구문에서 호출 되었음" -#: pltcl.c:843 +#: pltcl.c:846 #, c-format msgid "materialize mode required, but it is not allowed in this context" msgstr "materialize 모드가 필요합니다만, 이 구문에서는 허용되지 않습니다" -#: pltcl.c:1016 +#: pltcl.c:1019 #, c-format msgid "" "function returning record called in context that cannot accept type record" msgstr "" "레코드를 반환하는 함수가 레코드 형을 사용할 수 없는 구문에서 호출 되었음" -#: pltcl.c:1035 +#: pltcl.c:1038 #, c-format msgid "could not parse function return value: %s" msgstr "함수 반환값을 분석할 수 없음: %s" -#: pltcl.c:1302 +#: pltcl.c:1304 #, c-format msgid "could not parse trigger return value: %s" msgstr "트리거 반환값을 분석할 수 없음: %s" -#: pltcl.c:1387 pltcl.c:1814 +#: pltcl.c:1404 pltcl.c:1898 #, c-format msgid "%s" msgstr "%s" -#: pltcl.c:1388 +#: 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:1551 +#: pltcl.c:1633 #, c-format msgid "trigger functions can only be called as triggers" msgstr "트리거 함수는 트리거로만 호출될 수 있음" -#: pltcl.c:1555 +#: pltcl.c:1637 #, c-format msgid "PL/Tcl functions cannot return type %s" msgstr "PL/Tcl 함수는 %s 자료형을 반환할 수 없음" -#: pltcl.c:1594 +#: pltcl.c:1676 #, c-format msgid "PL/Tcl functions cannot accept type %s" msgstr "PL/Tcl 함수는 %s 자료형을 사용할 수 없음" -#: pltcl.c:1706 +#: pltcl.c:1788 #, c-format msgid "could not create internal procedure \"%s\": %s" msgstr "\"%s\" 내부 프로시져를 만들 수 없음: %s" -#: pltcl.c:3211 +#: pltcl.c:3298 #, c-format msgid "column name/value list must have even number of elements" msgstr "칼럼 이름/값 목록은 그 요소의 개수가 짝수여야 함" -#: pltcl.c:3229 +#: pltcl.c:3316 #, c-format msgid "column name/value list contains nonexistent column name \"%s\"" msgstr "칼럼 이름/값 목록에 \"%s\" 칼럼에 대한 값이 없음" -#: pltcl.c:3236 +#: pltcl.c:3323 #, c-format msgid "cannot set system attribute \"%s\"" msgstr "\"%s\" 시스템 속성을 지정할 수 없음" -#: pltcl.c:3242 +#: pltcl.c:3329 #, c-format msgid "cannot set generated column \"%s\"" msgstr "\"%s\" 계산된 칼럼을 지정할 수 없음" -#, c-format #~ msgid "could not split return value from trigger: %s" #~ msgstr "트리거에서 반환값을 분리할 수 없음: %s" diff --git a/src/pl/tcl/po/ru.po b/src/pl/tcl/po/ru.po index acb9132534dbc..7832ff809ce59 100644 --- a/src/pl/tcl/po/ru.po +++ b/src/pl/tcl/po/ru.po @@ -1,13 +1,13 @@ # Russian message translation file for pltcl # Copyright (C) 2012-2016 PostgreSQL Global Development Group # This file is distributed under the same license as the PostgreSQL package. -# Alexander Lakhin , 2012-2017, 2019, 2022, 2024. +# SPDX-FileCopyrightText: 2012-2017, 2019, 2022, 2024, 2025 Alexander Lakhin msgid "" msgstr "" "Project-Id-Version: pltcl (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: 2024-08-01 13:03+0300\n" +"PO-Revision-Date: 2025-09-13 17:22+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -75,13 +75,13 @@ msgid "%s" msgstr "%s" #: pltcl.c:1405 -#, fuzzy, c-format +#, c-format msgid "" "%s\n" "in PL/Tcl function %s" msgstr "" "%s\n" -"в функции PL/Tcl \"%s\"" +"в функции PL/Tcl %s" #: pltcl.c:1633 #, c-format From 3d6a828938a5fa0444275d3d2f67b64ec3199eb7 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 22 Sep 2025 16:11:33 -0400 Subject: [PATCH 270/457] Stamp 18.0. --- configure | 18 +++++++++--------- configure.ac | 2 +- meson.build | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/configure b/configure index 4ffd27f12bff9..4a44fe4cceaf2 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 18rc1. +# Generated by GNU Autoconf 2.69 for PostgreSQL 18.0. # # Report bugs to . # @@ -582,8 +582,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='PostgreSQL' PACKAGE_TARNAME='postgresql' -PACKAGE_VERSION='18rc1' -PACKAGE_STRING='PostgreSQL 18rc1' +PACKAGE_VERSION='18.0' +PACKAGE_STRING='PostgreSQL 18.0' PACKAGE_BUGREPORT='pgsql-bugs@lists.postgresql.org' PACKAGE_URL='https://www.postgresql.org/' @@ -1468,7 +1468,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 18rc1 to adapt to many kinds of systems. +\`configure' configures PostgreSQL 18.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1533,7 +1533,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of PostgreSQL 18rc1:";; + short | recursive ) echo "Configuration of PostgreSQL 18.0:";; esac cat <<\_ACEOF @@ -1724,7 +1724,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -PostgreSQL configure 18rc1 +PostgreSQL configure 18.0 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2477,7 +2477,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 18rc1, which was +It was created by PostgreSQL $as_me 18.0, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -20089,7 +20089,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 18rc1, which was +This file was extended by PostgreSQL $as_me 18.0, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -20160,7 +20160,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 18rc1 +PostgreSQL config.status 18.0 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/configure.ac b/configure.ac index d13de054c8c6b..dd954eb6a54d4 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], [18rc1], [pgsql-bugs@lists.postgresql.org], [], [https://www.postgresql.org/]) +AC_INIT([PostgreSQL], [18.0], [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/meson.build b/meson.build index 973e8890bbd59..363bd7a9a1812 100644 --- a/meson.build +++ b/meson.build @@ -8,7 +8,7 @@ project('postgresql', ['c'], - version: '18rc1', + version: '18.0', license: 'PostgreSQL', # We want < 0.56 for python 3.5 compatibility on old platforms. EPEL for From 178bbf403cc51d912b50f8ad8ea318e42cc29f42 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Mon, 22 Sep 2025 08:03:25 +0900 Subject: [PATCH 271/457] Fix meson build with -Duuid=ossp when using version older than 0.60 The package for the UUID library may be named "uuid" or "ossp-uuid", and meson.build has been using a single call of dependency() with multiple names, something only supported since meson 0.60.0. The minimum version of meson supported by Postgres is 0.57.2 on HEAD, since f039c2244110, and 0.54 on stable branches down to 16. Author: Oreo Yang Reviewed-by: Nazir Bilal Yavuz Discussion: https://postgr.es/m/OS3P301MB01656E6F91539770682B1E77E711A@OS3P301MB0165.JPNP301.PROD.OUTLOOK.COM Backpatch-through: 16 --- meson.build | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/meson.build b/meson.build index 363bd7a9a1812..d19de28dfce74 100644 --- a/meson.build +++ b/meson.build @@ -1579,7 +1579,10 @@ if uuidopt != 'none' elif uuidopt == 'ossp' # In upstream, the package and library is called just 'uuid', but many # distros change it to 'ossp-uuid'. - uuid = dependency('ossp-uuid', 'uuid', required: false) + uuid = dependency('ossp-uuid', required: false) + if not uuid.found() + uuid = dependency('uuid', required: false) + endif uuidfunc = 'uuid_export' uuidheader = 'uuid.h' From 37fc5de438b423f34ba8551a9902a52963be98f5 Mon Sep 17 00:00:00 2001 From: Amit Kapila Date: Wed, 24 Sep 2025 04:00:15 +0000 Subject: [PATCH 272/457] Fix LOCK_TIMEOUT handling during parallel apply. Previously, the parallel apply worker used SIGINT to receive a graceful shutdown signal from the leader apply worker. However, SIGINT is also used by the LOCK_TIMEOUT handler to trigger a query-cancel interrupt. This overlap caused the parallel apply worker to miss LOCK_TIMEOUT signals, leading to incorrect behavior during lock wait/contention. This patch resolves the conflict by switching the graceful shutdown signal from SIGINT to SIGUSR2. Reported-by: Zane Duffield Diagnosed-by: Zhijie Hou Author: Hayato Kuroda Reviewed-by: Amit Kapila Backpatch-through: 16, where it was introduced Discussion: https://postgr.es/m/CACMiCkXyC4au74kvE2g6Y=mCEF8X6r-Ne_ty4r7qWkUjRE4+oQ@mail.gmail.com --- src/backend/postmaster/interrupt.c | 5 ++--- .../replication/logical/applyparallelworker.c | 17 ++++++++++++----- src/backend/replication/logical/launcher.c | 4 ++-- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/backend/postmaster/interrupt.c b/src/backend/postmaster/interrupt.c index 0ae9bf906ec18..ba63b84dfc535 100644 --- a/src/backend/postmaster/interrupt.c +++ b/src/backend/postmaster/interrupt.c @@ -94,9 +94,8 @@ SignalHandlerForCrashExit(SIGNAL_ARGS) * shut down and exit. * * Typically, this handler would be used for SIGTERM, but some processes use - * other signals. In particular, the checkpointer exits on SIGUSR2, and the WAL - * writer and the logical replication parallel apply worker exits on either - * SIGINT or SIGTERM. + * other signals. In particular, the checkpointer and parallel apply worker + * exit on SIGUSR2, and the WAL writer exits on either SIGINT or SIGTERM. * * ShutdownRequestPending should be checked at a convenient place within the * main loop, or else the main loop should call ProcessMainLoopInterrupts. diff --git a/src/backend/replication/logical/applyparallelworker.c b/src/backend/replication/logical/applyparallelworker.c index d25085d351535..2d140e262c111 100644 --- a/src/backend/replication/logical/applyparallelworker.c +++ b/src/backend/replication/logical/applyparallelworker.c @@ -869,10 +869,17 @@ ParallelApplyWorkerMain(Datum main_arg) InitializingApplyWorker = true; - /* Setup signal handling. */ + /* + * Setup signal handling. + * + * Note: We intentionally used SIGUSR2 to trigger a graceful shutdown + * initiated by the leader apply worker. This helps to differentiate it + * from the case where we abort the current transaction and exit on + * receiving SIGTERM. + */ pqsignal(SIGHUP, SignalHandlerForConfigReload); - pqsignal(SIGINT, SignalHandlerForShutdownRequest); pqsignal(SIGTERM, die); + pqsignal(SIGUSR2, SignalHandlerForShutdownRequest); BackgroundWorkerUnblockSignals(); /* @@ -971,9 +978,9 @@ ParallelApplyWorkerMain(Datum main_arg) /* * The parallel apply worker must not get here because the parallel apply - * worker will only stop when it receives a SIGTERM or SIGINT from the - * leader, or when there is an error. None of these cases will allow the - * code to reach here. + * worker will only stop when it receives a SIGTERM or SIGUSR2 from the + * leader, or SIGINT from itself, or when there is an error. None of these + * cases will allow the code to reach here. */ Assert(false); } diff --git a/src/backend/replication/logical/launcher.c b/src/backend/replication/logical/launcher.c index 4aed0dfcebb24..d70cfb7acf267 100644 --- a/src/backend/replication/logical/launcher.c +++ b/src/backend/replication/logical/launcher.c @@ -636,7 +636,7 @@ logicalrep_worker_stop(Oid subid, Oid relid) /* * Stop the given logical replication parallel apply worker. * - * Node that the function sends SIGINT instead of SIGTERM to the parallel apply + * Node that the function sends SIGUSR2 instead of SIGTERM to the parallel apply * worker so that the worker exits cleanly. */ void @@ -674,7 +674,7 @@ logicalrep_pa_worker_stop(ParallelApplyWorkerInfo *winfo) * Only stop the worker if the generation matches and the worker is alive. */ if (worker->generation == generation && worker->proc) - logicalrep_worker_stop_internal(worker, SIGINT); + logicalrep_worker_stop_internal(worker, SIGUSR2); LWLockRelease(LogicalRepWorkerLock); } From e5393fc2e4539bfd50e62ad4959c2712cb6505ce Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Wed, 24 Sep 2025 14:58:18 +0200 Subject: [PATCH 273/457] Fix incorrect option name in usage screen The usage screen incorrectly refered to the --docs option as --sgml. Backpatch down to v17 where this script was introduced. Author: Daniel Gustafsson Discussion: https://postgr.es/m/20250729.135638.1148639539103758555.horikyota.ntt@gmail.com Backpatch-through: 17 --- src/backend/utils/activity/generate-wait_event_types.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/activity/generate-wait_event_types.pl b/src/backend/utils/activity/generate-wait_event_types.pl index 424ad9f115d34..0564e04a84cc4 100644 --- a/src/backend/utils/activity/generate-wait_event_types.pl +++ b/src/backend/utils/activity/generate-wait_event_types.pl @@ -334,12 +334,12 @@ sub usage { die <] [--code ] [ --sgml ] input_file +Usage: perl [--output ] [--code ] [ --docs ] input_file Options: --outdir Output directory (default '.') --code Generate C and header files. - --sgml Generate wait_event_types.sgml. + --docs Generate wait_event_types.sgml. generate-wait_event_types.pl generates the SGML documentation and code related to wait events. This should use wait_event_names.txt in input, or From 937741cbe506bcd59363008fa6a9038a981665cd Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Wed, 24 Sep 2025 21:39:38 +0200 Subject: [PATCH 274/457] doc: Remove trailing whitespace in xref Remove stray whitespace in xref tag. This was found due to a regression in xmllint 2.15.0 which flagged this as an error, and at the time of this commit no fix for xmllint has shipped. Author: Erik Wienhold Discussion: https://postgr.es/m/f4c4661b-4e60-4c10-9336-768b7b55c084@ewie.name Backpatch-through: 17 --- doc/src/sgml/ref/pg_combinebackup.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/ref/pg_combinebackup.sgml b/doc/src/sgml/ref/pg_combinebackup.sgml index 330a598f7013e..9a6d201e0b8e3 100644 --- a/doc/src/sgml/ref/pg_combinebackup.sgml +++ b/doc/src/sgml/ref/pg_combinebackup.sgml @@ -314,7 +314,7 @@ PostgreSQL documentation To avoid this problem, taking a new full backup after changing the checksum - state of the cluster using is + state of the cluster using is recommended. Otherwise, you can disable and then optionally reenable checksums on the directory produced by pg_combinebackup in order to correct the problem. From 47da1745244b25ba8b9396326d7f36e4ed1fb701 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Thu, 25 Sep 2025 14:45:08 +0200 Subject: [PATCH 275/457] Don't include execnodes.h in replication/conflict.h ... which silently propagates a lot of headers into many places via pgstat.h, as evidenced by the variety of headers that this patch needs to add to seemingly random places. Add a minimum of typedefs to conflict.h to be able to remove execnodes.h, and fix the fallout. Backpatch to 18, where conflict.h first appeared. Discussion: https://postgr.es/m/202509191927.uj2ijwmho7nv@alvherre.pgsql --- src/backend/access/transam/multixact.c | 1 + src/backend/access/transam/xlogrecovery.c | 1 + src/backend/storage/ipc/waiteventset.c | 1 + src/backend/utils/activity/pgstat_backend.c | 1 + src/include/pgstat.h | 1 + src/include/replication/conflict.h | 24 ++++++++++++++------- 6 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/backend/access/transam/multixact.c b/src/backend/access/transam/multixact.c index 3c06ac45532f8..f94445bdd07d0 100644 --- a/src/backend/access/transam/multixact.c +++ b/src/backend/access/transam/multixact.c @@ -84,6 +84,7 @@ #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" diff --git a/src/backend/access/transam/xlogrecovery.c b/src/backend/access/transam/xlogrecovery.c index 6ce979f2d8bc4..efbe77a574779 100644 --- a/src/backend/access/transam/xlogrecovery.c +++ b/src/backend/access/transam/xlogrecovery.c @@ -45,6 +45,7 @@ #include "commands/tablespace.h" #include "common/file_utils.h" #include "miscadmin.h" +#include "nodes/miscnodes.h" #include "pgstat.h" #include "postmaster/bgwriter.h" #include "postmaster/startup.h" diff --git a/src/backend/storage/ipc/waiteventset.c b/src/backend/storage/ipc/waiteventset.c index 7c0e66900f98d..b0746521ae425 100644 --- a/src/backend/storage/ipc/waiteventset.c +++ b/src/backend/storage/ipc/waiteventset.c @@ -67,6 +67,7 @@ #include "libpq/pqsignal.h" #include "miscadmin.h" #include "pgstat.h" +#include "port/atomics.h" #include "portability/instr_time.h" #include "postmaster/postmaster.h" #include "storage/fd.h" diff --git a/src/backend/utils/activity/pgstat_backend.c b/src/backend/utils/activity/pgstat_backend.c index 07a1116671b18..a864ae8e6a608 100644 --- a/src/backend/utils/activity/pgstat_backend.c +++ b/src/backend/utils/activity/pgstat_backend.c @@ -25,6 +25,7 @@ #include "postgres.h" #include "access/xlog.h" +#include "executor/instrument.h" #include "storage/bufmgr.h" #include "storage/proc.h" #include "storage/procarray.h" diff --git a/src/include/pgstat.h b/src/include/pgstat.h index 378f2f2c2ba24..3a302c2cab022 100644 --- a/src/include/pgstat.h +++ b/src/include/pgstat.h @@ -11,6 +11,7 @@ #ifndef PGSTAT_H #define PGSTAT_H +#include "access/transam.h" /* for FullTransactionId */ #include "datatype/timestamp.h" #include "portability/instr_time.h" #include "postmaster/pgarch.h" /* for MAX_XFN_CHARS */ diff --git a/src/include/replication/conflict.h b/src/include/replication/conflict.h index f6448ce4ada75..4d4e817b0f2cd 100644 --- a/src/include/replication/conflict.h +++ b/src/include/replication/conflict.h @@ -9,9 +9,16 @@ #ifndef CONFLICT_H #define CONFLICT_H -#include "nodes/execnodes.h" +#include "access/xlogdefs.h" +#include "nodes/pg_list.h" #include "utils/timestamp.h" +/* Avoid including execnodes.h here */ +struct EState; +struct ResultRelInfo; +struct TupleTableSlot; + + /* * Conflict types that could occur while applying remote changes. * @@ -58,8 +65,8 @@ typedef enum */ typedef struct ConflictTupleInfo { - TupleTableSlot *slot; /* tuple slot holding the conflicting local - * tuple */ + struct TupleTableSlot *slot; /* tuple slot holding the conflicting + * local tuple */ Oid indexoid; /* OID of the index where the conflict * occurred */ TransactionId xmin; /* transaction ID of the modification causing @@ -69,14 +76,15 @@ typedef struct ConflictTupleInfo * conflicting local row occurred */ } ConflictTupleInfo; -extern bool GetTupleTransactionInfo(TupleTableSlot *localslot, +extern bool GetTupleTransactionInfo(struct TupleTableSlot *localslot, TransactionId *xmin, RepOriginId *localorigin, TimestampTz *localts); -extern void ReportApplyConflict(EState *estate, ResultRelInfo *relinfo, +extern void ReportApplyConflict(struct EState *estate, struct ResultRelInfo *relinfo, int elevel, ConflictType type, - TupleTableSlot *searchslot, - TupleTableSlot *remoteslot, + struct TupleTableSlot *searchslot, + struct TupleTableSlot *remoteslot, List *conflicttuples); -extern void InitConflictIndexes(ResultRelInfo *relInfo); +extern void InitConflictIndexes(struct ResultRelInfo *relInfo); + #endif From efc26d17a7d40e58fa60f7f39dac892eb7f82cbb Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Thu, 25 Sep 2025 15:27:33 +0200 Subject: [PATCH 276/457] Remove preprocessor guards from injection points When defining an injection point there is no need to wrap the definition with USE_INJECTION_POINT guards, the INJECTION_POINT macro is available in all builds. Remove to make the code consistent. Author: Hayato Kuroda Reviewed-by: Michael Paquier Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/OSCPR01MB14966C8015DEB05ABEF2CE077F51FA@OSCPR01MB14966.jpnprd01.prod.outlook.com Backpatch-through: 17 --- src/backend/access/transam/xlog.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 15b09ac9770d4..37edd30f32d87 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -7349,9 +7349,7 @@ CreateCheckPoint(int flags) if (PriorRedoPtr != InvalidXLogRecPtr) UpdateCheckPointDistanceEstimate(RedoRecPtr - PriorRedoPtr); -#ifdef USE_INJECTION_POINTS INJECTION_POINT("checkpoint-before-old-wal-removal", NULL); -#endif /* * Delete old log files, those no longer needed for last checkpoint to From cbfcb7b466052518e3ddcc784946aa1cfa3f3460 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 25 Sep 2025 11:23:27 -0400 Subject: [PATCH 277/457] Doc: clean up documentation for new UUID functions. Fix assorted failures to conform to our normal style for function documentation, such as lack of parentheses and incorrect markup. Author: Marcos Pegoraro Co-authored-by: Tom Lane Discussion: https://postgr.es/m/CAB-JLwbocrFjKfGHoKY43pHTf49Ca2O0j3WVebC8z-eQBMPJyw@mail.gmail.com Backpatch-through: 18 --- doc/src/sgml/func.sgml | 75 +++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 42 deletions(-) diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index 8a347bec62c13..d2b6b01777ee9 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -14419,8 +14419,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple - - + Function @@ -14428,24 +14427,22 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple Example(s) - - + - - - gen_random_uuid + + gen_random_uuid ( ) uuid - uuidv4 + uuidv4 ( ) uuid - Generate a version 4 (random) UUID. + Generates a version 4 (random) UUID gen_random_uuid() @@ -14454,26 +14451,25 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple uuidv4() b42410ee-132f-42ee-9e4f-09a6485c95b8 - - + - - - uuidv7 + + uuidv7 ( shift interval ) uuid - Generate a version 7 (time-ordered) UUID. The timestamp is computed using UNIX timestamp - with millisecond precision + sub-millisecond timestamp + random. The optional parameter - shift will shift the computed timestamp by the given interval. + Generates a version 7 (time-ordered) UUID. The timestamp is + computed using UNIX timestamp with millisecond precision + + sub-millisecond timestamp + random. The optional + parameter shift will shift the computed + timestamp by the given interval. uuidv7() 019535d9-3df7-79fb-b466-fa907fa17f9e - - + @@ -14496,8 +14492,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple - - + Function @@ -14505,44 +14500,41 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple Example(s) - - + - - - uuid_extract_timestamp + + uuid_extract_timestamp ( uuid ) timestamp with time zone - Extracts a timestamp with time zone from UUID - version 1 and 7. For other versions, this function returns null. Note that - the extracted timestamp is not necessarily exactly equal to the time the - UUID was generated; this depends on the implementation that generated the - UUID. + Extracts a timestamp with time zone from a UUID of + version 1 or 7. For other versions, this function returns null. + Note that the extracted timestamp is not necessarily exactly equal + to the time the UUID was generated; this depends on the + implementation that generated the UUID. uuid_extract_timestamp('019535d9-3df7-79fb-b466-&zwsp;fa907fa17f9e'::uuid) 2025-02-23 21:46:24.503-05 - - + - - - uuid_extract_version + + uuid_extract_version ( uuid ) smallint - Extracts the version from a UUID of the variant described by - RFC 9562. For - other variants, this function returns null. For example, for a UUID - generated by gen_random_uuid, this function will + Extracts the version from a UUID of one of the variants described by + RFC + 9562. For other variants, this function returns null. + For example, for a UUID generated + by gen_random_uuid(), this function will return 4. @@ -14552,8 +14544,7 @@ CREATE TYPE rainbow AS ENUM ('red', 'orange', 'yellow', 'green', 'blue', 'purple uuid_extract_version('019535d9-3df7-79fb-b466-&zwsp;fa907fa17f9e'::uuid) 7 - - + From 694057d236b114f8c750b996b9ca5b8a07424650 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Thu, 25 Sep 2025 11:43:52 -0400 Subject: [PATCH 278/457] Fix array allocation bugs in SetExplainExtensionState. If we already have an extension_state array but see a new extension_id much larger than the highest the extension_id we've previously seen, the old code might have failed to expand the array to a large enough size, leading to disaster. Also, if we don't have an extension array at all and need to create one, we should make sure that it's big enough that we don't have to resize it instantly. Reported-by: Tom Lane Reviewed-by: Tom Lane Discussion: http://postgr.es/m/2949591.1758570711@sss.pgh.pa.us Backpatch-through: 18 --- src/backend/commands/explain_state.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/explain_state.c b/src/backend/commands/explain_state.c index 60d98d63a62e2..9fdeeab6436fd 100644 --- a/src/backend/commands/explain_state.c +++ b/src/backend/commands/explain_state.c @@ -281,7 +281,8 @@ SetExplainExtensionState(ExplainState *es, int extension_id, void *opaque) /* If there is no array yet, create one. */ if (es->extension_state == NULL) { - es->extension_state_allocated = 16; + es->extension_state_allocated = + Max(16, pg_nextpower2_32(extension_id + 1)); es->extension_state = palloc0(es->extension_state_allocated * sizeof(void *)); } @@ -291,7 +292,7 @@ SetExplainExtensionState(ExplainState *es, int extension_id, void *opaque) { int i; - i = pg_nextpower2_32(es->extension_state_allocated + 1); + i = pg_nextpower2_32(extension_id + 1); es->extension_state = (void **) repalloc0(es->extension_state, es->extension_state_allocated * sizeof(void *), From ef18eeeeaea7f64aadf198875670f9d6e56b52df Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 25 Sep 2025 13:29:02 -0400 Subject: [PATCH 279/457] Add minimal sleep to stats isolation test functions. The functions test_stat_func() and test_stat_func2() had empty function bodies, so that they took very little time to run. This made it possible that on machines with relatively low timer resolution the functions could return before the clock advanced, making the test fail (as seen on buildfarm members fruitcrow and hamerkop). To avoid that, pg_sleep for 10us during the functions. As far as we can tell, all current hardware has clock resolution much less than that. (The current implementation of pg_sleep will round it up to 1ms anyway, but someday that might get improved.) Author: Michael Banck Reviewed-by: Tom Lane Discussion: https://postgr.es/m/68d413a3.a70a0220.24c74c.8be9@mx.google.com Backpatch-through: 15 --- src/test/isolation/specs/stats.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/test/isolation/specs/stats.spec b/src/test/isolation/specs/stats.spec index 1d98ac785b816..e6d297499156a 100644 --- a/src/test/isolation/specs/stats.spec +++ b/src/test/isolation/specs/stats.spec @@ -6,10 +6,13 @@ setup INSERT INTO test_stat_tab(key, value) VALUES('k0', 1); INSERT INTO test_stat_oid(name, oid) VALUES('test_stat_tab', 'test_stat_tab'::regclass); - CREATE FUNCTION test_stat_func() RETURNS VOID LANGUAGE plpgsql AS $$BEGIN END;$$; + -- include 10us sleep to ensure that runtime measures as more than zero + CREATE FUNCTION test_stat_func() RETURNS VOID LANGUAGE plpgsql AS + $$BEGIN PERFORM pg_sleep(10e-6); END;$$; INSERT INTO test_stat_oid(name, oid) VALUES('test_stat_func', 'test_stat_func'::regproc); - CREATE FUNCTION test_stat_func2() RETURNS VOID LANGUAGE plpgsql AS $$BEGIN END;$$; + CREATE FUNCTION test_stat_func2() RETURNS VOID LANGUAGE plpgsql AS + $$BEGIN PERFORM pg_sleep(10e-6); END;$$; INSERT INTO test_stat_oid(name, oid) VALUES('test_stat_func2', 'test_stat_func2'::regproc); CREATE TABLE test_slru_stats(slru TEXT, stat TEXT, value INT); From c736808e03b77052f2e08f43210ba64517ff64d6 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Fri, 26 Sep 2025 21:23:43 +0900 Subject: [PATCH 280/457] pgbench: Fix assertion failure with retriable errors in pipeline mode. When running pgbench with --verbose-errors option and a custom script that triggered retriable errors (e.g., serialization errors) in pipeline mode, an assertion failure could occur: Assertion failed: (sql_script[st->use_file].commands[st->command]->type == 1), function commandError, file pgbench.c, line 3062. The failure happened because pgbench assumed these errors would only occur during SQL commands, but in pipeline mode they can also happen during \endpipeline meta command. This commit fixes the assertion failure by adjusting the assertion check to allow such errors during either SQL commands or \endpipeline. Backpatch to v15, where the assertion check was introduced. Author: Yugo Nagata Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/CAHGQGwGWQMOzNkQs-LmpDHdNC0h8dmAuUMRvZrEntQi5a-b=Kg@mail.gmail.com --- src/bin/pgbench/pgbench.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c index 125f3c7bbbe5b..031939b29ebd3 100644 --- a/src/bin/pgbench/pgbench.c +++ b/src/bin/pgbench/pgbench.c @@ -3059,7 +3059,14 @@ commandFailed(CState *st, const char *cmd, const char *message) static void commandError(CState *st, const char *message) { - Assert(sql_script[st->use_file].commands[st->command]->type == SQL_COMMAND); + /* + * Errors should only be detected during an SQL command or the + * \endpipeline meta command. Any other case triggers an assertion + * failure. + */ + Assert(sql_script[st->use_file].commands[st->command]->type == SQL_COMMAND || + sql_script[st->use_file].commands[st->command]->meta == META_ENDPIPELINE); + pg_log_info("client %d got an error in command %d (SQL) of script %d; %s", st->id, st->command, st->use_file, message); } From 78a284b0b8d4add8457325b74144bd762156cb0e Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 27 Sep 2025 14:29:41 -0400 Subject: [PATCH 281/457] Fix missed copying of groupDistinct in transformPLAssignStmt. Because we failed to do this, DISTINCT in GROUP BY DISTINCT would be ignored in PL/pgSQL assignment statements. It's not surprising that no one noticed, since such statements will throw an error if the query produces more than one row. That eliminates most scenarios where advanced forms of GROUP BY could be useful, and indeed makes it hard even to find a simple test case. Nonetheless it's wrong. This is directly the fault of be45be9c3 which added the groupDistinct field, but I think much of the blame has to fall on c9d529848, in which I incautiously supposed that we'd manage to keep two copies of a big chunk of parse-analysis logic in sync. As a follow-up, I plan to refactor so that there's only one copy. But that seems useful only in master, so let's use this one-line fix for the back branches. Author: Tom Lane Discussion: https://postgr.es/m/31027.1758919078@sss.pgh.pa.us Backpatch-through: 14 --- src/backend/parser/analyze.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backend/parser/analyze.c b/src/backend/parser/analyze.c index 34f7c17f576ef..0bcdeabd9ab72 100644 --- a/src/backend/parser/analyze.c +++ b/src/backend/parser/analyze.c @@ -2938,6 +2938,7 @@ transformPLAssignStmt(ParseState *pstate, PLAssignStmt *stmt) qry->sortClause, EXPR_KIND_GROUP_BY, false /* allow SQL92 rules */ ); + qry->groupDistinct = sstmt->groupDistinct; if (sstmt->distinctClause == NIL) { From d024160fffc8065b9b007c6be1b5f907eb2122c9 Mon Sep 17 00:00:00 2001 From: Noah Misch Date: Mon, 29 Sep 2025 11:15:44 -0700 Subject: [PATCH 282/457] Fix StatisticsObjIsVisibleExt() for pg_temp. Neighbor get_statistics_object_oid() ignores objects in pg_temp, as has been the standard for non-relation, non-type namespace searches since CVE-2007-2138. Hence, most operations that name a statistics object correctly decline to map an unqualified name to a statistics object in pg_temp. StatisticsObjIsVisibleExt() did not. Consequently, pg_statistics_obj_is_visible() wrongly returned true for such objects, psql \dX wrongly listed them, and getObjectDescription()-based ereport() and pg_describe_object() wrongly omitted namespace qualification. Any malfunction beyond that would depend on how a human or application acts on those wrong indications. Commit d99d58cdc8c0b5b50ee92995e8575c100b1a458a introduced this. Back-patch to v13 (all supported versions). Reviewed-by: Nathan Bossart Discussion: https://postgr.es/m/20250920162116.2e.nmisch@google.com Backpatch-through: 13 --- src/backend/catalog/namespace.c | 3 +++ src/test/regress/expected/stats_ext.out | 14 ++++++++++++++ src/test/regress/sql/stats_ext.sql | 8 ++++++++ 3 files changed, 25 insertions(+) diff --git a/src/backend/catalog/namespace.c b/src/backend/catalog/namespace.c index d97d632a7ef55..dd5d241dfe2a4 100644 --- a/src/backend/catalog/namespace.c +++ b/src/backend/catalog/namespace.c @@ -2686,6 +2686,9 @@ StatisticsObjIsVisibleExt(Oid stxid, bool *is_missing) { Oid namespaceId = lfirst_oid(l); + if (namespaceId == myTempNamespace) + continue; /* do not look in temp namespace */ + if (namespaceId == stxnamespace) { /* Found it first in path */ diff --git a/src/test/regress/expected/stats_ext.out b/src/test/regress/expected/stats_ext.out index fdc0aa130bdb8..d225c0d0c3ff4 100644 --- a/src/test/regress/expected/stats_ext.out +++ b/src/test/regress/expected/stats_ext.out @@ -122,6 +122,20 @@ ALTER STATISTICS ab1_a_b_stats RENAME TO ab1_a_b_stats_new; ERROR: must be owner of statistics object ab1_a_b_stats RESET SESSION AUTHORIZATION; DROP ROLE regress_stats_ext; +CREATE STATISTICS pg_temp.stats_ext_temp ON a, b FROM ab1; +SELECT regexp_replace(pg_describe_object(tableoid, oid, 0), + 'pg_temp_[0-9]*', 'pg_temp_REDACTED') AS descr, + pg_statistics_obj_is_visible(oid) AS visible + FROM pg_statistic_ext + WHERE stxname = 'stats_ext_temp'; + descr | visible +---------------------------------------------------+--------- + statistics object pg_temp_REDACTED.stats_ext_temp | f +(1 row) + +DROP STATISTICS stats_ext_temp; -- shall fail +ERROR: statistics object "stats_ext_temp" does not exist +DROP STATISTICS pg_temp.stats_ext_temp; CREATE STATISTICS IF NOT EXISTS ab1_a_b_stats ON a, b FROM ab1; NOTICE: statistics object "ab1_a_b_stats" already exists, skipping DROP STATISTICS ab1_a_b_stats; diff --git a/src/test/regress/sql/stats_ext.sql b/src/test/regress/sql/stats_ext.sql index 823c7db9dab49..acbb4f93941be 100644 --- a/src/test/regress/sql/stats_ext.sql +++ b/src/test/regress/sql/stats_ext.sql @@ -83,6 +83,14 @@ DROP STATISTICS ab1_a_b_stats; ALTER STATISTICS ab1_a_b_stats RENAME TO ab1_a_b_stats_new; RESET SESSION AUTHORIZATION; DROP ROLE regress_stats_ext; +CREATE STATISTICS pg_temp.stats_ext_temp ON a, b FROM ab1; +SELECT regexp_replace(pg_describe_object(tableoid, oid, 0), + 'pg_temp_[0-9]*', 'pg_temp_REDACTED') AS descr, + pg_statistics_obj_is_visible(oid) AS visible + FROM pg_statistic_ext + WHERE stxname = 'stats_ext_temp'; +DROP STATISTICS stats_ext_temp; -- shall fail +DROP STATISTICS pg_temp.stats_ext_temp; CREATE STATISTICS IF NOT EXISTS ab1_a_b_stats ON a, b FROM ab1; DROP STATISTICS ab1_a_b_stats; From b5f898944d1226f8daeb0bda58098f645582c80f Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 30 Sep 2025 09:02:35 +0900 Subject: [PATCH 283/457] injection_points: Add proper locking when reporting fixed-variable stats Contrary to its siblings for the archiver, the bgwriter and the checkpointer stats, pgstat_report_inj_fixed() can be called concurrently. This was causing an assertion failure, while messing up with the stats. This code is aimed at being a template for extension developers, so it is not a critical issue, but let's be correct. This module has also been useful for some benchmarking, at least for me, and that was how I have discovered this issue. Oversight in f68cd847fa40. Author: Michael Paquier Reviewed-by: Bertrand Drouvot Reviewed-by: Chao Li Reviewed-by: wenhui qiu Discussion: https://postgr.es/m/aNnXbAXHPFUWPIz2@paquier.xyz Backpatch-through: 18 --- src/test/modules/injection_points/injection_stats_fixed.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/test/modules/injection_points/injection_stats_fixed.c b/src/test/modules/injection_points/injection_stats_fixed.c index bc54c79d190b9..74c35fcbfa711 100644 --- a/src/test/modules/injection_points/injection_stats_fixed.c +++ b/src/test/modules/injection_points/injection_stats_fixed.c @@ -152,6 +152,8 @@ pgstat_report_inj_fixed(uint32 numattach, stats_shmem = pgstat_get_custom_shmem_data(PGSTAT_KIND_INJECTION_FIXED); + LWLockAcquire(&stats_shmem->lock, LW_EXCLUSIVE); + pgstat_begin_changecount_write(&stats_shmem->changecount); stats_shmem->stats.numattach += numattach; stats_shmem->stats.numdetach += numdetach; @@ -159,6 +161,8 @@ pgstat_report_inj_fixed(uint32 numattach, stats_shmem->stats.numcached += numcached; stats_shmem->stats.numloaded += numloaded; pgstat_end_changecount_write(&stats_shmem->changecount); + + LWLockRelease(&stats_shmem->lock); } /* From 29aabbc432693b3fcda287b953c832d62dda7946 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Tue, 30 Sep 2025 23:52:28 +0900 Subject: [PATCH 284/457] pgbench: Fix error reporting in readCommandResponse(). pgbench uses readCommandResponse() to process server responses. When readCommandResponse() encounters an error during a call to PQgetResult() to fetch the current result, it attempts to report it with an additional error message from PQerrorMessage(). However, previously, this extra error message could be lost or become incorrect. The cause was that after fetching the current result (and detecting an error), readCommandResponse() called PQgetResult() again to peek at the next result. This second call could overwrite the libpq connection's error message before the original error was reported, causing the error message retrieved from PQerrorMessage() to be lost or overwritten. This commit fixes the issue by updating readCommandResponse() to use PQresultErrorMessage() instead of PQerrorMessage() to retrieve the error message generated when the PQgetResult() for the current result causes an error, ensuring the correct message is reported. Backpatch to all supported versions. Author: Yugo Nagata Reviewed-by: Chao Li Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/20250925110940.ebacc31725758ec47d5432c6@sraoss.co.jp Backpatch-through: 13 --- src/bin/pgbench/pgbench.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c index 031939b29ebd3..fa15c84ba8d2a 100644 --- a/src/bin/pgbench/pgbench.c +++ b/src/bin/pgbench/pgbench.c @@ -3356,7 +3356,7 @@ readCommandResponse(CState *st, MetaCommand meta, char *varprefix) st->num_syncs--; if (st->num_syncs == 0 && PQexitPipelineMode(st->con) != 1) pg_log_error("client %d failed to exit pipeline mode: %s", st->id, - PQerrorMessage(st->con)); + PQresultErrorMessage(res)); break; case PGRES_NONFATAL_ERROR: @@ -3366,7 +3366,7 @@ readCommandResponse(CState *st, MetaCommand meta, char *varprefix) if (canRetryError(st->estatus)) { if (verbose_errors) - commandError(st, PQerrorMessage(st->con)); + commandError(st, PQresultErrorMessage(res)); goto error; } /* fall through */ @@ -3375,7 +3375,7 @@ readCommandResponse(CState *st, MetaCommand meta, char *varprefix) /* anything else is unexpected */ pg_log_error("client %d script %d aborted in command %d query %d: %s", st->id, st->use_file, st->command, qrynum, - PQerrorMessage(st->con)); + PQresultErrorMessage(res)); goto error; } From 8474a3a15056e06ed797530db5419fee8bfd053a Mon Sep 17 00:00:00 2001 From: Jacob Champion Date: Wed, 1 Oct 2025 08:14:23 -0700 Subject: [PATCH 285/457] test_json_parser: Speed up 002_inline.pl Some macOS machines are having trouble with 002_inline, which executes the JSON parser test executables hundreds of times in a nested loop. Both developer machines and buildfarm critters have shown excessive test durations, upwards of 20 seconds. Push the innermost loop of 002_inline, which iterates through differing chunk sizes, down into the test executable. (I'd eventually like to push all of the JSON unit tests down into C, but this is an easy win in the short term.) Testers have reported a speedup between 4-9x. Reported-by: Robert Haas Suggested-by: Andres Freund Tested-by: Andrew Dunstan Tested-by: Tom Lane Tested-by: Robert Haas Discussion: https://postgr.es/m/CA%2BTgmobKoG%2BgKzH9qB7uE4MFo-z1hn7UngqAe9b0UqNbn3_XGQ%40mail.gmail.com Backpatch-through: 17 --- src/test/modules/test_json_parser/README | 10 +- .../modules/test_json_parser/t/002_inline.pl | 26 +++- .../test_json_parser_incremental.c | 127 +++++++++++------- 3 files changed, 106 insertions(+), 57 deletions(-) diff --git a/src/test/modules/test_json_parser/README b/src/test/modules/test_json_parser/README index ceccd499f4358..61e7c78d588a9 100644 --- a/src/test/modules/test_json_parser/README +++ b/src/test/modules/test_json_parser/README @@ -6,10 +6,12 @@ This module contains two programs for testing the json parsers. - `test_json_parser_incremental` is for testing the incremental parser, It reads in a file and passes it in very small chunks (default is 60 bytes at a time) to the incremental parser. It's not meant to be a speed test but to - test the accuracy of the incremental parser. There are two option arguments, - "-c nn" specifies an alternative chunk size, and "-s" specifies using - semantic routines. The semantic routines re-output the json, although not in - a very pretty form. The required non-option argument is the input file name. + test the accuracy of the incremental parser. The option "-c nn" specifies an + alternative chunk size, "-r nn" runs a range of chunk sizes down to one byte + on the same input (with output separated by null bytes), and "-s" specifies + using semantic routines. The semantic routines re-output the json, although + not in a very pretty form. The required non-option argument is the input file + name. - `test_json_parser_perf` is for speed testing both the standard recursive descent parser and the non-recursive incremental parser. If given the `-i` flag it uses the non-recursive parser, diff --git a/src/test/modules/test_json_parser/t/002_inline.pl b/src/test/modules/test_json_parser/t/002_inline.pl index 7c8b64977ec7d..3dd16731e9047 100644 --- a/src/test/modules/test_json_parser/t/002_inline.pl +++ b/src/test/modules/test_json_parser/t/002_inline.pl @@ -33,23 +33,37 @@ sub test print $fh "$json"; close($fh); + # The -r mode runs the parser in a loop, with output separated by nulls. + # Unpack that as a list of null-terminated ASCII strings (Z*) and check that + # each run produces the same result. + my ($all_stdout, $all_stderr) = + run_command([ @exe, "-r", $chunk, $fname ]); + + my @stdout = unpack("(Z*)*", $all_stdout); + my @stderr = unpack("(Z*)*", $all_stderr); + + is(scalar @stdout, $chunk, "$name: stdout has correct number of entries"); + is(scalar @stderr, $chunk, "$name: stderr has correct number of entries"); + + my $i = 0; + foreach my $size (reverse(1 .. $chunk)) { - my ($stdout, $stderr) = run_command([ @exe, "-c", $size, $fname ]); - if (defined($params{error})) { - unlike($stdout, qr/SUCCESS/, + unlike($stdout[$i], qr/SUCCESS/, "$name, chunk size $size: test fails"); - like($stderr, $params{error}, + like($stderr[$i], $params{error}, "$name, chunk size $size: correct error output"); } else { - like($stdout, qr/SUCCESS/, + like($stdout[$i], qr/SUCCESS/, "$name, chunk size $size: test succeeds"); - is($stderr, "", "$name, chunk size $size: no error output"); + is($stderr[$i], "", "$name, chunk size $size: no error output"); } + + $i++; } } diff --git a/src/test/modules/test_json_parser/test_json_parser_incremental.c b/src/test/modules/test_json_parser/test_json_parser_incremental.c index d1e3e4ab4ea59..8c78061ee4692 100644 --- a/src/test/modules/test_json_parser/test_json_parser_incremental.c +++ b/src/test/modules/test_json_parser/test_json_parser_incremental.c @@ -12,9 +12,14 @@ * the parser in very small chunks. In practice you would normally use * much larger chunks, but doing this makes it more likely that the * full range of increment handling, especially in the lexer, is exercised. + * * If the "-c SIZE" option is provided, that chunk size is used instead * of the default of 60. * + * If the "-r SIZE" option is provided, a range of chunk sizes from SIZE down to + * 1 are run sequentially. A null byte is printed to the streams after each + * iteration. + * * If the -s flag is given, the program does semantic processing. This should * just mirror back the json, albeit with white space changes. * @@ -88,8 +93,8 @@ main(int argc, char **argv) StringInfoData json; int n_read; size_t chunk_size = DEFAULT_CHUNK_SIZE; + bool run_chunk_ranges = false; struct stat statbuf; - off_t bytes_left; const JsonSemAction *testsem = &nullSemAction; char *testfile; int c; @@ -102,11 +107,14 @@ main(int argc, char **argv) if (!lex) pg_fatal("out of memory"); - while ((c = getopt(argc, argv, "c:os")) != -1) + while ((c = getopt(argc, argv, "r:c:os")) != -1) { switch (c) { - case 'c': /* chunksize */ + case 'r': /* chunk range */ + run_chunk_ranges = true; + /* fall through */ + case 'c': /* chunk size */ chunk_size = strtou64(optarg, NULL, 10); if (chunk_size > BUFSIZE) pg_fatal("chunk size cannot exceed %d", BUFSIZE); @@ -135,8 +143,6 @@ main(int argc, char **argv) exit(1); } - makeJsonLexContextIncremental(lex, PG_UTF8, need_strings); - setJsonLexContextOwnsTokens(lex, lex_owns_tokens); initStringInfo(&json); if ((json_file = fopen(testfile, PG_BINARY_R)) == NULL) @@ -145,61 +151,88 @@ main(int argc, char **argv) if (fstat(fileno(json_file), &statbuf) != 0) pg_fatal("error statting input: %m"); - bytes_left = statbuf.st_size; - - for (;;) + do { - /* We will break when there's nothing left to read */ - - if (bytes_left < chunk_size) - chunk_size = bytes_left; + /* + * This outer loop only repeats in -r mode. Reset the parse state and + * our position in the input file for the inner loop, which performs + * the incremental parsing. + */ + off_t bytes_left = statbuf.st_size; + size_t to_read = chunk_size; - n_read = fread(buff, 1, chunk_size, json_file); - if (n_read < chunk_size) - pg_fatal("error reading input file: %d", ferror(json_file)); + makeJsonLexContextIncremental(lex, PG_UTF8, need_strings); + setJsonLexContextOwnsTokens(lex, lex_owns_tokens); - appendBinaryStringInfo(&json, buff, n_read); + rewind(json_file); + resetStringInfo(&json); - /* - * Append some trailing junk to the buffer passed to the parser. This - * helps us ensure that the parser does the right thing even if the - * chunk isn't terminated with a '\0'. - */ - appendStringInfoString(&json, "1+23 trailing junk"); - bytes_left -= n_read; - if (bytes_left > 0) + for (;;) { - result = pg_parse_json_incremental(lex, testsem, - json.data, n_read, - false); - if (result != JSON_INCOMPLETE) + /* We will break when there's nothing left to read */ + + if (bytes_left < to_read) + to_read = bytes_left; + + n_read = fread(buff, 1, to_read, json_file); + if (n_read < to_read) + pg_fatal("error reading input file: %d", ferror(json_file)); + + appendBinaryStringInfo(&json, buff, n_read); + + /* + * Append some trailing junk to the buffer passed to the parser. + * This helps us ensure that the parser does the right thing even + * if the chunk isn't terminated with a '\0'. + */ + appendStringInfoString(&json, "1+23 trailing junk"); + bytes_left -= n_read; + if (bytes_left > 0) { - fprintf(stderr, "%s\n", json_errdetail(result, lex)); - ret = 1; - goto cleanup; + result = pg_parse_json_incremental(lex, testsem, + json.data, n_read, + false); + if (result != JSON_INCOMPLETE) + { + fprintf(stderr, "%s\n", json_errdetail(result, lex)); + ret = 1; + goto cleanup; + } + resetStringInfo(&json); } - resetStringInfo(&json); - } - else - { - result = pg_parse_json_incremental(lex, testsem, - json.data, n_read, - true); - if (result != JSON_SUCCESS) + else { - fprintf(stderr, "%s\n", json_errdetail(result, lex)); - ret = 1; - goto cleanup; + result = pg_parse_json_incremental(lex, testsem, + json.data, n_read, + true); + if (result != JSON_SUCCESS) + { + fprintf(stderr, "%s\n", json_errdetail(result, lex)); + ret = 1; + goto cleanup; + } + if (!need_strings) + printf("SUCCESS!\n"); + break; } - if (!need_strings) - printf("SUCCESS!\n"); - break; } - } cleanup: + freeJsonLexContext(lex); + + /* + * In -r mode, separate output with nulls so that the calling test can + * split it up, decrement the chunk size, and loop back to the top. + * All other modes immediately fall out of the loop and exit. + */ + if (run_chunk_ranges) + { + fputc('\0', stdout); + fputc('\0', stderr); + } + } while (run_chunk_ranges && (--chunk_size > 0)); + fclose(json_file); - freeJsonLexContext(lex); free(json.data); free(lex); From fc295beb7b74d1f216a53cab61d22027121a763e Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 2 Oct 2025 11:09:10 +0900 Subject: [PATCH 286/457] pgstattuple: Improve reports generated for indexes (hash, gist, btree) pgstattuple checks the state of the pages retrieved for gist and hash using some check functions from each index AM, respectively gistcheckpage() and _hash_checkpage(). When these are called, they would fail when bumping on data that is found as incorrect (like opaque area size not matching, or empty pages), contrary to btree that simply discards these cases and continues to aggregate data. Zero pages can happen after a crash, with these AMs being able to do an internal cleanup when these are seen. Also, sporadic failures are annoying when doing for example a large-scale diagnostic query based on pgstattuple with a join of pg_class, as it forces one to use tricks like quals to discard hash or gist indexes, or use a PL wrapper able to catch errors. This commit changes the reports generated for btree, gist and hash to be more user-friendly; - When seeing an empty page, report it as free space. This new rule applies to gist and hash, and already applied to btree. - For btree, a check based on the size of BTPageOpaqueData is added. - For gist indexes, gistcheckpage() is not called anymore, replaced by a check based on the size of GISTPageOpaqueData. - For hash indexes, instead of _hash_getbuf_with_strategy(), use a direct call to ReadBufferExtended(), coupled with a check based on HashPageOpaqueData. The opaque area size check was already used. - Pages that do not match these criterias are discarded from the stats reports generated. There have been a couple of bug reports over the years that complained about the current behavior for hash and gist, as being not that useful, with nothing being done about it. Hence this change is backpatched down to v13. Reported-by: Noah Misch Author: Nitin Motiani Reviewed-by: Dilip Kumar Discussion: https://postgr.es/m/CAH5HC95gT1J3dRYK4qEnaywG8RqjbwDdt04wuj8p39R=HukayA@mail.gmail.com Backpatch-through: 13 --- contrib/pgstattuple/pgstattuple.c | 32 +++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/contrib/pgstattuple/pgstattuple.c b/contrib/pgstattuple/pgstattuple.c index 0d9c2b0b65369..dbe7a190aaf6d 100644 --- a/contrib/pgstattuple/pgstattuple.c +++ b/contrib/pgstattuple/pgstattuple.c @@ -424,7 +424,7 @@ pgstat_btree_page(pgstattuple_type *stat, Relation rel, BlockNumber blkno, /* fully empty page */ stat->free_space += BLCKSZ; } - else + else if (PageGetSpecialSize(page) == MAXALIGN(sizeof(BTPageOpaqueData))) { BTPageOpaque opaque; @@ -458,10 +458,16 @@ pgstat_hash_page(pgstattuple_type *stat, Relation rel, BlockNumber blkno, Buffer buf; Page page; - buf = _hash_getbuf_with_strategy(rel, blkno, HASH_READ, 0, bstrategy); + buf = ReadBufferExtended(rel, MAIN_FORKNUM, blkno, RBM_NORMAL, bstrategy); + LockBuffer(buf, HASH_READ); page = BufferGetPage(buf); - if (PageGetSpecialSize(page) == MAXALIGN(sizeof(HashPageOpaqueData))) + if (PageIsNew(page)) + { + /* fully empty page */ + stat->free_space += BLCKSZ; + } + else if (PageGetSpecialSize(page) == MAXALIGN(sizeof(HashPageOpaqueData))) { HashPageOpaque opaque; @@ -502,17 +508,23 @@ pgstat_gist_page(pgstattuple_type *stat, Relation rel, BlockNumber blkno, buf = ReadBufferExtended(rel, MAIN_FORKNUM, blkno, RBM_NORMAL, bstrategy); LockBuffer(buf, GIST_SHARE); - gistcheckpage(rel, buf); page = BufferGetPage(buf); - - if (GistPageIsLeaf(page)) + if (PageIsNew(page)) { - pgstat_index_page(stat, page, FirstOffsetNumber, - PageGetMaxOffsetNumber(page)); + /* fully empty page */ + stat->free_space += BLCKSZ; } - else + else if (PageGetSpecialSize(page) == MAXALIGN(sizeof(GISTPageOpaqueData))) { - /* root or node */ + if (GistPageIsLeaf(page)) + { + pgstat_index_page(stat, page, FirstOffsetNumber, + PageGetMaxOffsetNumber(page)); + } + else + { + /* root or node */ + } } UnlockReleaseBuffer(buf); From c00637b5fdbf756d48021db82f1f9a877429e2a7 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 3 Oct 2025 14:04:00 +0900 Subject: [PATCH 287/457] pgbench: Fail cleanly when finding a COPY result state Currently, pgbench aborts when a COPY response is received in readCommandResponse(). However, as PQgetResult() returns an empty result when there is no asynchronous result, through getCopyResult(), the logic done at the end of readCommandResponse() for the error path leads to an infinite loop. This commit forcefully exits the COPY state with PQendcopy() before moving to the error handler when fiding a COPY state, avoiding the infinite loop. The COPY protocol is not supported by pgbench anyway, as an error is assumed in this case, so giving up is better than having the tool be stuck forever. pgbench was interruptible in this state. A TAP test is added to check that an error happens if trying to use COPY. Author: Anthonin Bonnefoy Discussion: https://postgr.es/m/CAO6_XqpHyF2m73ifV5a=5jhXxH2chk=XrgefY+eWWPe2Eft3=A@mail.gmail.com Backpatch-through: 13 --- src/bin/pgbench/pgbench.c | 14 ++++++++++++++ src/bin/pgbench/t/001_pgbench_with_server.pl | 11 +++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/bin/pgbench/pgbench.c b/src/bin/pgbench/pgbench.c index fa15c84ba8d2a..afe3ce65fb73a 100644 --- a/src/bin/pgbench/pgbench.c +++ b/src/bin/pgbench/pgbench.c @@ -3359,6 +3359,20 @@ readCommandResponse(CState *st, MetaCommand meta, char *varprefix) PQresultErrorMessage(res)); break; + case PGRES_COPY_IN: + case PGRES_COPY_OUT: + case PGRES_COPY_BOTH: + pg_log_error("COPY is not supported in pgbench, aborting"); + + /* + * We need to exit the copy state. Otherwise, PQgetResult() + * will always return an empty PGresult as an effect of + * getCopyResult(), leading to an infinite loop in the error + * cleanup done below. + */ + PQendcopy(st->con); + goto error; + case PGRES_NONFATAL_ERROR: case PGRES_FATAL_ERROR: st->estatus = getSQLErrorStatus(PQresultErrorField(res, diff --git a/src/bin/pgbench/t/001_pgbench_with_server.pl b/src/bin/pgbench/t/001_pgbench_with_server.pl index 7dd7894030032..f61dcf682341b 100644 --- a/src/bin/pgbench/t/001_pgbench_with_server.pl +++ b/src/bin/pgbench/t/001_pgbench_with_server.pl @@ -1810,6 +1810,17 @@ BEGIN } }); +# Test copy in pgbench +$node->pgbench( + '-t 10', + 2, + [], + [ qr{COPY is not supported in pgbench, aborting} ], + 'Test copy in script', + { + '001_copy' => q{ COPY pgbench_accounts FROM stdin } + }); + # Clean up $node->safe_psql('postgres', 'DROP TABLE counter;'); From 76613b539ac5d87d26f8026ec1e2cd11d0583b3d Mon Sep 17 00:00:00 2001 From: John Naylor Date: Fri, 3 Oct 2025 16:05:37 +0700 Subject: [PATCH 288/457] Fix reuse-after-free hazard in dead_items_reset In similar vein to commit ccc8194e427, a reset instance of a shared memory TID store happened to occupy the same private memory as the old one for the entry point, since the chunk freed after the last round of index vacuuming was put on the context's freelist. The failure to update the vacrel->dead_items pointer was evident by nudging the system to allocate memory in a different area. This was not discovered at the time of the earlier commit since our regression tests didn't cover multiple index passes with parallel vacuum. Backpatch to v17, when TidStore came in. Author: Kevin Oommen Anish Reviewed-by: Richard Guo Tested-by: Richard Guo Discussion: https://postgr.es/m/199a07cbdfc.7a1c4aac25838.1675074408277594551%40zohocorp.com Backpatch-through: 17 --- src/backend/access/heap/vacuumlazy.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/backend/access/heap/vacuumlazy.c b/src/backend/access/heap/vacuumlazy.c index 0fef8e49e2b64..8fbaf12675647 100644 --- a/src/backend/access/heap/vacuumlazy.c +++ b/src/backend/access/heap/vacuumlazy.c @@ -3562,6 +3562,8 @@ dead_items_reset(LVRelState *vacrel) if (ParallelVacuumIsActive(vacrel)) { parallel_vacuum_reset_dead_items(vacrel->pvs); + vacrel->dead_items = parallel_vacuum_get_dead_items(vacrel->pvs, + &vacrel->dead_items_info); return; } From d83879a32b481f0e23cd8a14f7849cff3f8898b5 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 5 Oct 2025 16:27:47 -0400 Subject: [PATCH 289/457] Use SOCK_ERRNO[_SET] in fe-secure-gssapi.c. On Windows, this code did not handle error conditions correctly at all, since it looked at "errno" which is not used for socket-related errors on that platform. This resulted, for example, in failure to connect to a PostgreSQL server with GSSAPI enabled. We have a convention for dealing with this within libpq, which is to use SOCK_ERRNO and SOCK_ERRNO_SET rather than touching errno directly; but the GSSAPI code is a relative latecomer and did not get that memo. (The equivalent backend code continues to use errno, because the backend does this differently. Maybe libpq's approach should be rethought someday.) Apparently nobody tries to build libpq with GSSAPI support on Windows, or we'd have heard about this before, because it's been broken all along. Back-patch to all supported branches. Author: Ning Wu Co-authored-by: Tom Lane Discussion: https://postgr.es/m/CAFGqpvg-pRw=cdsUpKYfwY6D3d-m9tw8WMcAEE7HHWfm-oYWvw@mail.gmail.com Backpatch-through: 13 --- src/interfaces/libpq/fe-secure-gssapi.c | 27 ++++++++++++++----------- 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/interfaces/libpq/fe-secure-gssapi.c b/src/interfaces/libpq/fe-secure-gssapi.c index bc9e1ce06fa4d..843b31e175fec 100644 --- a/src/interfaces/libpq/fe-secure-gssapi.c +++ b/src/interfaces/libpq/fe-secure-gssapi.c @@ -121,7 +121,7 @@ pg_GSS_write(PGconn *conn, const void *ptr, size_t len) { appendPQExpBufferStr(&conn->errorMessage, "GSSAPI caller failed to retransmit all data needing to be retried\n"); - errno = EINVAL; + SOCK_ERRNO_SET(EINVAL); return -1; } @@ -199,14 +199,14 @@ pg_GSS_write(PGconn *conn, const void *ptr, size_t len) if (major != GSS_S_COMPLETE) { pg_GSS_error(libpq_gettext("GSSAPI wrap error"), conn, major, minor); - errno = EIO; /* for lack of a better idea */ + SOCK_ERRNO_SET(EIO); /* for lack of a better idea */ goto cleanup; } if (conf_state == 0) { libpq_append_conn_error(conn, "outgoing GSSAPI message would not use confidentiality"); - errno = EIO; /* for lack of a better idea */ + SOCK_ERRNO_SET(EIO); /* for lack of a better idea */ goto cleanup; } @@ -215,7 +215,7 @@ pg_GSS_write(PGconn *conn, const void *ptr, size_t len) libpq_append_conn_error(conn, "client tried to send oversize GSSAPI packet (%zu > %zu)", (size_t) output.length, PQ_GSS_MAX_PACKET_SIZE - sizeof(uint32)); - errno = EIO; /* for lack of a better idea */ + SOCK_ERRNO_SET(EIO); /* for lack of a better idea */ goto cleanup; } @@ -341,7 +341,7 @@ pg_GSS_read(PGconn *conn, void *ptr, size_t len) /* If we still haven't got the length, return to the caller */ if (PqGSSRecvLength < sizeof(uint32)) { - errno = EWOULDBLOCK; + SOCK_ERRNO_SET(EWOULDBLOCK); return -1; } } @@ -354,7 +354,7 @@ pg_GSS_read(PGconn *conn, void *ptr, size_t len) libpq_append_conn_error(conn, "oversize GSSAPI packet sent by the server (%zu > %zu)", (size_t) input.length, PQ_GSS_MAX_PACKET_SIZE - sizeof(uint32)); - errno = EIO; /* for lack of a better idea */ + SOCK_ERRNO_SET(EIO); /* for lack of a better idea */ return -1; } @@ -373,7 +373,7 @@ pg_GSS_read(PGconn *conn, void *ptr, size_t len) /* If we don't yet have the whole packet, return to the caller */ if (PqGSSRecvLength - sizeof(uint32) < input.length) { - errno = EWOULDBLOCK; + SOCK_ERRNO_SET(EWOULDBLOCK); return -1; } @@ -393,7 +393,7 @@ pg_GSS_read(PGconn *conn, void *ptr, size_t len) pg_GSS_error(libpq_gettext("GSSAPI unwrap error"), conn, major, minor); ret = -1; - errno = EIO; /* for lack of a better idea */ + SOCK_ERRNO_SET(EIO); /* for lack of a better idea */ goto cleanup; } @@ -401,7 +401,7 @@ pg_GSS_read(PGconn *conn, void *ptr, size_t len) { libpq_append_conn_error(conn, "incoming GSSAPI message did not use confidentiality"); ret = -1; - errno = EIO; /* for lack of a better idea */ + SOCK_ERRNO_SET(EIO); /* for lack of a better idea */ goto cleanup; } @@ -437,7 +437,8 @@ gss_read(PGconn *conn, void *recv_buffer, size_t length, ssize_t *ret) *ret = pqsecure_raw_read(conn, recv_buffer, length); if (*ret < 0) { - if (errno == EAGAIN || errno == EWOULDBLOCK || errno == EINTR) + if (SOCK_ERRNO == EAGAIN || SOCK_ERRNO == EWOULDBLOCK || + SOCK_ERRNO == EINTR) return PGRES_POLLING_READING; else return PGRES_POLLING_FAILED; @@ -457,7 +458,8 @@ gss_read(PGconn *conn, void *recv_buffer, size_t length, ssize_t *ret) *ret = pqsecure_raw_read(conn, recv_buffer, length); if (*ret < 0) { - if (errno == EAGAIN || errno == EWOULDBLOCK || errno == EINTR) + if (SOCK_ERRNO == EAGAIN || SOCK_ERRNO == EWOULDBLOCK || + SOCK_ERRNO == EINTR) return PGRES_POLLING_READING; else return PGRES_POLLING_FAILED; @@ -520,7 +522,8 @@ pqsecure_open_gss(PGconn *conn) ret = pqsecure_raw_write(conn, PqGSSSendBuffer + PqGSSSendNext, amount); if (ret < 0) { - if (errno == EAGAIN || errno == EWOULDBLOCK || errno == EINTR) + if (SOCK_ERRNO == EAGAIN || SOCK_ERRNO == EWOULDBLOCK || + SOCK_ERRNO == EINTR) return PGRES_POLLING_WRITING; else return PGRES_POLLING_FAILED; From 9ea4a2b4f1cccba37935522920a933c67421476b Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Tue, 7 Oct 2025 15:02:20 +0200 Subject: [PATCH 290/457] doc: Add missing parenthesis in pg_stat_progress_analyze docs Author: Shinya Kato Discussion: https://postgr.es/m/CAOzEurRgpAh9dsbEM88FPOhNaV_PkdL6p_9MJatcrNf9wXw1nw@mail.gmail.com Backpatch-through: 18 --- doc/src/sgml/monitoring.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index 823afe1b30b22..5ac0e54688cb4 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -5651,7 +5651,7 @@ FROM pg_stat_get_backend_idset() AS backendid; Total time spent sleeping due to cost-based delay (see - , in milliseconds + ), in milliseconds (if is enabled, otherwise zero). From dc9125111b4a0b955c8a4a44ce2bbac72479e11f Mon Sep 17 00:00:00 2001 From: Amit Langote Date: Thu, 9 Oct 2025 01:07:52 -0400 Subject: [PATCH 291/457] Fix internal error from CollateExpr in SQL/JSON DEFAULT expressions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit SQL/JSON functions such as JSON_VALUE could fail with "unrecognized node type" errors when a DEFAULT clause contained an explicit COLLATE expression. That happened because assign_collations_walker() could invoke exprSetCollation() on a JsonBehavior expression whose DEFAULT still contained a CollateExpr, which exprSetCollation() does not handle. For example: SELECT JSON_VALUE('{"a":1}', '$.c' RETURNING text DEFAULT 'A' COLLATE "C" ON EMPTY); Fix by validating in transformJsonBehavior() that the DEFAULT expression's collation matches the enclosing JSON expression’s collation. In exprSetCollation(), replace the recursive call on the JsonBehavior expression with an assertion that its collation already matches the target, since the parser now enforces that condition. Reported-by: Jian He Author: Jian He Reviewed-by: Amit Langote Discussion: https://postgr.es/m/CACJufxHVwYYSyiVQ6o+PsRX6zQ7rAFinh_fv1kCfTsT1xG4Zeg@mail.gmail.com Backpatch-through: 17 --- src/backend/nodes/nodeFuncs.c | 8 +-- src/backend/parser/parse_expr.c | 57 ++++++++++++++++--- .../regress/expected/collate.icu.utf8.out | 49 ++++++++++++++++ src/test/regress/sql/collate.icu.utf8.sql | 13 +++++ 4 files changed, 113 insertions(+), 14 deletions(-) diff --git a/src/backend/nodes/nodeFuncs.c b/src/backend/nodes/nodeFuncs.c index 7bc823507f1b3..ede838cd40c46 100644 --- a/src/backend/nodes/nodeFuncs.c +++ b/src/backend/nodes/nodeFuncs.c @@ -1274,12 +1274,8 @@ exprSetCollation(Node *expr, Oid collation) } break; case T_JsonBehavior: - { - JsonBehavior *behavior = (JsonBehavior *) expr; - - if (behavior->expr) - exprSetCollation(behavior->expr, collation); - } + Assert(((JsonBehavior *) expr)->expr == NULL || + exprCollation(((JsonBehavior *) expr)->expr) == collation); break; case T_NullTest: /* NullTest's result is boolean ... */ diff --git a/src/backend/parser/parse_expr.c b/src/backend/parser/parse_expr.c index d66276801c67b..4acffd906b9dd 100644 --- a/src/backend/parser/parse_expr.c +++ b/src/backend/parser/parse_expr.c @@ -94,7 +94,8 @@ static Node *transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func); static void transformJsonPassingArgs(ParseState *pstate, const char *constructName, JsonFormatType format, List *args, List **passing_values, List **passing_names); -static JsonBehavior *transformJsonBehavior(ParseState *pstate, JsonBehavior *behavior, +static JsonBehavior *transformJsonBehavior(ParseState *pstate, JsonExpr *jsexpr, + JsonBehavior *behavior, JsonBehaviorType default_behavior, JsonReturning *returning); static Node *GetJsonBehaviorConst(JsonBehaviorType btype, int location); @@ -4529,13 +4530,16 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) { jsexpr->returning->typid = BOOLOID; jsexpr->returning->typmod = -1; + jsexpr->collation = InvalidOid; } /* JSON_TABLE() COLUMNS can specify a non-boolean type. */ if (jsexpr->returning->typid != BOOLOID) jsexpr->use_json_coercion = true; - jsexpr->on_error = transformJsonBehavior(pstate, func->on_error, + jsexpr->on_error = transformJsonBehavior(pstate, + jsexpr, + func->on_error, JSON_BEHAVIOR_FALSE, jsexpr->returning); break; @@ -4550,6 +4554,8 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) ret->typmod = -1; } + jsexpr->collation = get_typcollation(jsexpr->returning->typid); + /* * Keep quotes on scalar strings by default, omitting them only if * OMIT QUOTES is specified. @@ -4566,11 +4572,15 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) jsexpr->use_json_coercion = true; /* Assume NULL ON EMPTY when ON EMPTY is not specified. */ - jsexpr->on_empty = transformJsonBehavior(pstate, func->on_empty, + jsexpr->on_empty = transformJsonBehavior(pstate, + jsexpr, + func->on_empty, JSON_BEHAVIOR_NULL, jsexpr->returning); /* Assume NULL ON ERROR when ON ERROR is not specified. */ - jsexpr->on_error = transformJsonBehavior(pstate, func->on_error, + jsexpr->on_error = transformJsonBehavior(pstate, + jsexpr, + func->on_error, JSON_BEHAVIOR_NULL, jsexpr->returning); break; @@ -4582,6 +4592,7 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) jsexpr->returning->typid = TEXTOID; jsexpr->returning->typmod = -1; } + jsexpr->collation = get_typcollation(jsexpr->returning->typid); /* * Override whatever transformJsonOutput() set these to, which @@ -4607,11 +4618,15 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) } /* Assume NULL ON EMPTY when ON EMPTY is not specified. */ - jsexpr->on_empty = transformJsonBehavior(pstate, func->on_empty, + jsexpr->on_empty = transformJsonBehavior(pstate, + jsexpr, + func->on_empty, JSON_BEHAVIOR_NULL, jsexpr->returning); /* Assume NULL ON ERROR when ON ERROR is not specified. */ - jsexpr->on_error = transformJsonBehavior(pstate, func->on_error, + jsexpr->on_error = transformJsonBehavior(pstate, + jsexpr, + func->on_error, JSON_BEHAVIOR_NULL, jsexpr->returning); break; @@ -4622,6 +4637,7 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) jsexpr->returning->typid = exprType(jsexpr->formatted_expr); jsexpr->returning->typmod = -1; } + jsexpr->collation = get_typcollation(jsexpr->returning->typid); /* * Assume EMPTY ARRAY ON ERROR when ON ERROR is not specified. @@ -4629,7 +4645,9 @@ transformJsonFuncExpr(ParseState *pstate, JsonFuncExpr *func) * ON EMPTY cannot be specified at the top level but it can be for * the individual columns. */ - jsexpr->on_error = transformJsonBehavior(pstate, func->on_error, + jsexpr->on_error = transformJsonBehavior(pstate, + jsexpr, + func->on_error, JSON_BEHAVIOR_EMPTY_ARRAY, jsexpr->returning); break; @@ -4705,7 +4723,8 @@ ValidJsonBehaviorDefaultExpr(Node *expr, void *context) * Transform a JSON BEHAVIOR clause. */ static JsonBehavior * -transformJsonBehavior(ParseState *pstate, JsonBehavior *behavior, +transformJsonBehavior(ParseState *pstate, JsonExpr *jsexpr, + JsonBehavior *behavior, JsonBehaviorType default_behavior, JsonReturning *returning) { @@ -4720,7 +4739,11 @@ transformJsonBehavior(ParseState *pstate, JsonBehavior *behavior, location = behavior->location; if (btype == JSON_BEHAVIOR_DEFAULT) { + Oid targetcoll = jsexpr->collation; + Oid exprcoll; + expr = transformExprRecurse(pstate, behavior->expr); + if (!ValidJsonBehaviorDefaultExpr(expr, NULL)) ereport(ERROR, (errcode(ERRCODE_DATATYPE_MISMATCH), @@ -4736,6 +4759,24 @@ transformJsonBehavior(ParseState *pstate, JsonBehavior *behavior, (errcode(ERRCODE_DATATYPE_MISMATCH), errmsg("DEFAULT expression must not return a set"), parser_errposition(pstate, exprLocation(expr)))); + + /* + * Reject a DEFAULT expression whose collation differs from the + * enclosing JSON expression's result collation + * (jsexpr->collation), as chosen by the RETURNING clause. + */ + exprcoll = exprCollation(expr); + if (!OidIsValid(exprcoll)) + exprcoll = get_typcollation(exprType(expr)); + if (OidIsValid(targetcoll) && OidIsValid(exprcoll) && + targetcoll != exprcoll) + ereport(ERROR, + errcode(ERRCODE_COLLATION_MISMATCH), + errmsg("the collation of DEFAULT expression conflicts with RETURNING clause"), + errdetail("\"%s\" versus \"%s\"", + get_collation_name(exprcoll), + get_collation_name(targetcoll)), + parser_errposition(pstate, exprLocation(expr))); } } diff --git a/src/test/regress/expected/collate.icu.utf8.out b/src/test/regress/expected/collate.icu.utf8.out index 69805d4b9ec53..d385668afaff7 100644 --- a/src/test/regress/expected/collate.icu.utf8.out +++ b/src/test/regress/expected/collate.icu.utf8.out @@ -2690,6 +2690,55 @@ SELECT * FROM t5 ORDER BY c ASC, a ASC; 3 | d1 | d1 (3 rows) +-- Check that DEFAULT expressions in SQL/JSON functions use the same collation +-- as the RETURNING type. Mismatched collations should raise an error. +CREATE DOMAIN d1 AS text COLLATE case_insensitive; +CREATE DOMAIN d2 AS text COLLATE "C"; +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT ('C' COLLATE "C") COLLATE case_insensitive ON EMPTY) = 'a'; -- true + ?column? +---------- + t +(1 row) + +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C' ON EMPTY) = 'a'; -- true + ?column? +---------- + t +(1 row) + +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C'::d2 ON EMPTY) = 'a'; -- error +ERROR: the collation of DEFAULT expression conflicts with RETURNING clause +LINE 1: ...ON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C'::d2 ON... + ^ +DETAIL: "C" versus "case_insensitive" +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C' COLLATE "C" ON EMPTY) = 'a'; -- error +ERROR: the collation of DEFAULT expression conflicts with RETURNING clause +LINE 1: ...ON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C' COLLAT... + ^ +DETAIL: "C" versus "case_insensitive" +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' ON EMPTY) = 'a'; -- true + ?column? +---------- + t +(1 row) + +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' COLLATE case_insensitive ON EMPTY) = 'a'; -- true + ?column? +---------- + t +(1 row) + +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A'::d2 ON EMPTY) = 'a'; -- error +ERROR: the collation of DEFAULT expression conflicts with RETURNING clause +LINE 1: ...ON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A'::d2 ON... + ^ +DETAIL: "C" versus "case_insensitive" +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' COLLATE "C" ON EMPTY) = 'a'; -- error +ERROR: the collation of DEFAULT expression conflicts with RETURNING clause +LINE 1: ...ON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' COLLAT... + ^ +DETAIL: "C" versus "case_insensitive" +DROP DOMAIN d1, d2; -- cleanup RESET search_path; SET client_min_messages TO warning; diff --git a/src/test/regress/sql/collate.icu.utf8.sql b/src/test/regress/sql/collate.icu.utf8.sql index dbc190227d022..6f5abac0dc040 100644 --- a/src/test/regress/sql/collate.icu.utf8.sql +++ b/src/test/regress/sql/collate.icu.utf8.sql @@ -997,6 +997,19 @@ INSERT INTO t5 (a, b) values (1, 'D1'), (2, 'D2'), (3, 'd1'); -- rewriting.) SELECT * FROM t5 ORDER BY c ASC, a ASC; +-- Check that DEFAULT expressions in SQL/JSON functions use the same collation +-- as the RETURNING type. Mismatched collations should raise an error. +CREATE DOMAIN d1 AS text COLLATE case_insensitive; +CREATE DOMAIN d2 AS text COLLATE "C"; +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT ('C' COLLATE "C") COLLATE case_insensitive ON EMPTY) = 'a'; -- true +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C' ON EMPTY) = 'a'; -- true +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C'::d2 ON EMPTY) = 'a'; -- error +SELECT JSON_VALUE('{"a": "A"}', '$.a' RETURNING d1 DEFAULT 'C' COLLATE "C" ON EMPTY) = 'a'; -- error +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' ON EMPTY) = 'a'; -- true +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' COLLATE case_insensitive ON EMPTY) = 'a'; -- true +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A'::d2 ON EMPTY) = 'a'; -- error +SELECT JSON_VALUE('{"a": "A"}', '$.c' RETURNING d1 DEFAULT 'A' COLLATE "C" ON EMPTY) = 'a'; -- error +DROP DOMAIN d1, d2; -- cleanup RESET search_path; From 32b95fc71b5825ad1722b821ae2508657970ce79 Mon Sep 17 00:00:00 2001 From: Masahiko Sawada Date: Thu, 9 Oct 2025 10:59:29 -0700 Subject: [PATCH 292/457] Fix access-to-already-freed-memory issue in pgoutput. While pgoutput caches relation synchronization information in RelationSyncCache that resides in CacheMemoryContext, each entry's information (such as row filter expressions and column lists) is stored in the entry's private memory context (entry_cxt in RelationSyncEntry), which is a descendant memory context of the decoding context. If a logical decoding invoked via SQL functions like pg_logical_slot_get_binary_changes fails with an error, subsequent logical decoding executions could access already-freed memory of the entry's cache, resulting in a crash. With this change, it's ensured that RelationSyncCache is cleaned up even in error cases by using a memory context reset callback function. Backpatch to 15, where entry_cxt was introduced for column filtering and row filtering. While the backbranches v13 and v14 have a similar issue where RelationSyncCache persists even after an error when pgoutput is used via SQL API, we decided not to backport this fix. This decision was made because v13 is approaching its final minor release, and we won't have an chance to fix any new issues that might arise. Additionally, since using pgoutput via SQL API is not a common use case, the risk outwights the benefit. If we receive bug reports, we can consider backporting the fixes then. Author: vignesh C Co-authored-by: Masahiko Sawada Reviewed-by: Zhijie Hou Reviewed-by: Euler Taveira Discussion: https://postgr.es/m/CALDaNm0x-aCehgt8Bevs2cm=uhmwS28MvbYq1=s2Ekf0aDPkOA@mail.gmail.com Backpatch-through: 15 --- src/backend/replication/pgoutput/pgoutput.c | 29 +++++++++++++++++---- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/src/backend/replication/pgoutput/pgoutput.c b/src/backend/replication/pgoutput/pgoutput.c index 082b4d9d32798..693ac28de3c93 100644 --- a/src/backend/replication/pgoutput/pgoutput.c +++ b/src/backend/replication/pgoutput/pgoutput.c @@ -235,6 +235,7 @@ static bool get_schema_sent_in_streamed_txn(RelationSyncEntry *entry, TransactionId xid); static void init_tuple_slot(PGOutputData *data, Relation relation, RelationSyncEntry *entry); +static void pgoutput_memory_context_reset(void *arg); /* row filter routines */ static EState *create_estate_for_relation(Relation rel); @@ -424,6 +425,19 @@ parse_output_parameters(List *options, PGOutputData *data) errmsg("option \"%s\" missing", "publication_names")); } +/* + * Memory context reset callback of PGOutputData->context. + */ +static void +pgoutput_memory_context_reset(void *arg) +{ + if (RelationSyncCache) + { + hash_destroy(RelationSyncCache); + RelationSyncCache = NULL; + } +} + /* * Initialize this plugin */ @@ -433,6 +447,7 @@ pgoutput_startup(LogicalDecodingContext *ctx, OutputPluginOptions *opt, { PGOutputData *data = palloc0(sizeof(PGOutputData)); static bool publication_callback_registered = false; + MemoryContextCallback *mcallback; /* Create our memory context for private allocations. */ data->context = AllocSetContextCreate(ctx->context, @@ -447,6 +462,14 @@ pgoutput_startup(LogicalDecodingContext *ctx, OutputPluginOptions *opt, "logical replication publication list context", ALLOCSET_SMALL_SIZES); + /* + * Ensure to cleanup RelationSyncCache even when logical decoding invoked + * via SQL interface ends up with an error. + */ + mcallback = palloc0(sizeof(MemoryContextCallback)); + mcallback->func = pgoutput_memory_context_reset; + MemoryContextRegisterResetCallback(ctx->context, mcallback); + ctx->output_plugin_private = data; /* This plugin uses binary protocol. */ @@ -1758,11 +1781,7 @@ pgoutput_origin_filter(LogicalDecodingContext *ctx, static void pgoutput_shutdown(LogicalDecodingContext *ctx) { - if (RelationSyncCache) - { - hash_destroy(RelationSyncCache); - RelationSyncCache = NULL; - } + pgoutput_memory_context_reset(NULL); } /* From 9a6ea00ac8c09fc73a8f725517ad7aea7664b1bc Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 10 Oct 2025 09:24:48 +0900 Subject: [PATCH 293/457] Remove state.tmp when failing to save a replication slot An error happening while a slot data is saved on disk in SaveSlotToPath() could cause a state.tmp file (temporary file holding the slot state data, renamed to its permanent name at the end of the function) to remain around after it has been created. This temporary file is created with O_EXCL, meaning that if an existing state.tmp is found, its creation would fail. This would prevent the slot data to be saved, requiring a manual intervention to remove state.tmp before being able to save again a slot. Possible scenarios where this temporary file could remain on disk is for example a ENOSPC case (no disk space) while writing, syncing or renaming it. The bug reports point to a write failure as the principal cause of the problems. Using O_TRUNC has been argued back in 2019 as a potential solution to discard any temporary file that could exist. This solution was rejected as O_EXCL can also act as a safety measure when saving the slot state, crash recovery offering cleanup guarantees post-crash. This commit uses the alternative approach that has been suggested by Andres Freund back in 2019. When the temporary state file cannot be written, synced, closed or renamed (note: not when created!), an unlink() is used to remove the temporary state file while holding the in-progress I/O LWLock, so as any follow-up attempts to save a slot's data would not choke on an existing file that remained around because of a previous failure. This problem has been reported a few times across the years, going back to 2019, but for some reason I have never come back to do something about it and it has been forgotten. A recent report has reminded me that this was still a problem. Reported-by: Kevin K Biju Reported-by: Sergei Kornilov Reported-by: Grigory Smolkin Discussion: https://postgr.es/m/CAM45KeHa32soKL_G8Vk38CWvTBeOOXcsxAPAs7Jt7yPRf2mbVA@mail.gmail.com Discussion: https://postgr.es/m/3559061693910326@qy4q4a6esb2lebnz.sas.yp-c.yandex.net Discussion: https://postgr.es/m/08bbfab1-a61d-3750-fc18-4ab2c1aa7f09@postgrespro.ru Backpatch-through: 13 --- src/backend/replication/slot.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/backend/replication/slot.c b/src/backend/replication/slot.c index 90fbe4fb837fb..23c616b1d7d76 100644 --- a/src/backend/replication/slot.c +++ b/src/backend/replication/slot.c @@ -2332,6 +2332,7 @@ SaveSlotToPath(ReplicationSlot *slot, const char *dir, int elevel) pgstat_report_wait_end(); CloseTransientFile(fd); + unlink(tmppath); LWLockRelease(&slot->io_in_progress_lock); /* if write didn't set errno, assume problem is no disk space */ @@ -2352,7 +2353,9 @@ SaveSlotToPath(ReplicationSlot *slot, const char *dir, int elevel) pgstat_report_wait_end(); CloseTransientFile(fd); + unlink(tmppath); LWLockRelease(&slot->io_in_progress_lock); + errno = save_errno; ereport(elevel, (errcode_for_file_access(), @@ -2366,7 +2369,9 @@ SaveSlotToPath(ReplicationSlot *slot, const char *dir, int elevel) { int save_errno = errno; + unlink(tmppath); LWLockRelease(&slot->io_in_progress_lock); + errno = save_errno; ereport(elevel, (errcode_for_file_access(), @@ -2380,7 +2385,9 @@ SaveSlotToPath(ReplicationSlot *slot, const char *dir, int elevel) { int save_errno = errno; + unlink(tmppath); LWLockRelease(&slot->io_in_progress_lock); + errno = save_errno; ereport(elevel, (errcode_for_file_access(), From ed047ce0a881e628a17e0a3fe6a19c0faa155563 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 10 Oct 2025 11:51:50 +0900 Subject: [PATCH 294/457] Fix two typos in xlogstats.h and xlogstats.c Issue found while browsing this area of the code, introduced and copy-pasted around by 2258e76f90bf. Backpatch-through: 15 --- src/backend/access/transam/xlogstats.c | 2 +- src/include/access/xlogstats.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/access/transam/xlogstats.c b/src/backend/access/transam/xlogstats.c index f92d9e13b174e..85963a6ac29e7 100644 --- a/src/backend/access/transam/xlogstats.c +++ b/src/backend/access/transam/xlogstats.c @@ -1,7 +1,7 @@ /*------------------------------------------------------------------------- * * xlogstats.c - * Functions for WAL Statitstics + * Functions for WAL Statistics * * Copyright (c) 2022-2025, PostgreSQL Global Development Group * diff --git a/src/include/access/xlogstats.h b/src/include/access/xlogstats.h index 528a640524a27..6ec6670d44cf1 100644 --- a/src/include/access/xlogstats.h +++ b/src/include/access/xlogstats.h @@ -1,7 +1,7 @@ /*------------------------------------------------------------------------- * * xlogstats.h - * Definitions for WAL Statitstics + * Definitions for WAL Statistics * * Copyright (c) 2022-2025, PostgreSQL Global Development Group * From 61de81a496dcd50187e8de765f4c3ed0267764ef Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Fri, 10 Oct 2025 14:52:23 -0400 Subject: [PATCH 295/457] Remove overzealous _bt_killitems assertion. An assertion in _bt_killitems expected the scan's currPos state to contain a valid LSN, saved from when currPos's page was initially read. The assertion failed to account for the fact that even logged relations can have leaf pages with an invalid LSN when built with wal_level set to "minimal". Remove the faulty assertion. Oversight in commit e6eed40e (though note that the assertion was backpatched to stable branches before 18 by commit 7c319f54). Author: Peter Geoghegan Reported-By: Matthijs van der Vleuten Bug: #19082 Discussion: https://postgr.es/m/19082-628e62160dbbc1c1@postgresql.org Backpatch-through: 13 --- src/backend/access/nbtree/nbtutils.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/backend/access/nbtree/nbtutils.c b/src/backend/access/nbtree/nbtutils.c index 9aed207995f52..80887df14928c 100644 --- a/src/backend/access/nbtree/nbtutils.c +++ b/src/backend/access/nbtree/nbtutils.c @@ -3292,7 +3292,6 @@ _bt_killitems(IndexScanDesc scan) buf = _bt_getbuf(rel, so->currPos.currPage, BT_READ); latestlsn = BufferGetLSNAtomic(buf); - Assert(!XLogRecPtrIsInvalid(so->currPos.lsn)); Assert(so->currPos.lsn <= latestlsn); if (so->currPos.lsn != latestlsn) { From 33e7b4a7c7da6db40c57a224a7cf9b2ebac28861 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Sat, 11 Oct 2025 16:39:22 +0200 Subject: [PATCH 296/457] dbase_redo: Fix Valgrind-reported memory leak MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Introduced by my (Álvaro's) commit 9e4f914b5eba, which was itself backpatched to pg10, though only pg15 and up contain the problem because of commit 9c08aea6a309. This isn't a particularly significant leak, but given the fix is trivial, we might as well backpatch to all branches where it applies, so do that. Author: Nathan Bossart Reported-by: Andres Freund Discussion: https://postgr.es/m/x4odfdlrwvsjawscnqsqjpofvauxslw7b4oyvxgt5owoyf4ysn@heafjusodrz7 --- src/backend/commands/dbcommands.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/backend/commands/dbcommands.c b/src/backend/commands/dbcommands.c index ef99375d72b34..5a46002c60ba2 100644 --- a/src/backend/commands/dbcommands.c +++ b/src/backend/commands/dbcommands.c @@ -3398,6 +3398,7 @@ dbase_redo(XLogReaderState *record) parent_path = pstrdup(dbpath); get_parent_directory(parent_path); recovery_create_dbdir(parent_path, true); + pfree(parent_path); /* Create the database directory with the version file. */ CreateDirAndVersionFile(dbpath, xlrec->db_id, xlrec->tablespace_id, From 08c037dff96103f607d30c487d11d3bf43a531ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Sat, 11 Oct 2025 20:30:12 +0200 Subject: [PATCH 297/457] Stop creating constraints during DETACH CONCURRENTLY Commit 71f4c8c6f74b (which implemented DETACH CONCURRENTLY) added code to create a separate table constraint when a table is detached concurrently, identical to the partition constraint, on the theory that such a constraint was needed in case the optimizer had constructed any query plans that depended on the constraint being there. However, that theory was apparently bogus because any such plans would be invalidated. For hash partitioning, those constraints are problematic, because their expressions reference the OID of the parent partitioned table, to which the detached table is no longer related; this causes all sorts of problems (such as inability of restoring a pg_dump of that table, and the table no longer working properly if the partitioned table is later dropped). We'd like to get rid of all those constraints. In fact, for branch master, do that -- no longer create any substitute constraints. However, out of fear that some users might somehow depend on these constraints for other partitioning strategies, for stable branches (back to 14, which added DETACH CONCURRENTLY), only do it for hash partitioning. (If you repeatedly DETACH CONCURRENTLY and then ATTACH a partition, then with this constraint addition you don't need to scan the table in the ATTACH step, which presumably is good. But if users really valued this feature, they would have requested that it worked for non-concurrent DETACH also.) Author: Haiyang Li Reported-by: Fei Changhong Reported-by: Haiyang Li Backpatch-through: 14 Discussion: https://postgr.es/m/18371-7fef49f63de13f02@postgresql.org Discussion: https://postgr.es/m/19070-781326347ade7c57@postgresql.org --- src/backend/commands/tablecmds.c | 14 +++++++++----- src/test/regress/expected/alter_table.out | 8 ++++++++ src/test/regress/sql/alter_table.sql | 9 +++++++++ 3 files changed, 26 insertions(+), 5 deletions(-) diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index 011bb4acddb64..d8352f6327352 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -20870,13 +20870,14 @@ ATExecDetachPartition(List **wqueue, AlteredTableInfo *tab, Relation rel, Relation partRel; ObjectAddress address; Oid defaultPartOid; + PartitionDesc partdesc; /* * We must lock the default partition, because detaching this partition * will change its partition constraint. */ - defaultPartOid = - get_default_oid_from_partdesc(RelationGetPartitionDesc(rel, true)); + partdesc = RelationGetPartitionDesc(rel, true); + defaultPartOid = get_default_oid_from_partdesc(partdesc); if (OidIsValid(defaultPartOid)) { /* @@ -20943,10 +20944,13 @@ ATExecDetachPartition(List **wqueue, AlteredTableInfo *tab, Relation rel, char *partrelname; /* - * Add a new constraint to the partition being detached, which - * supplants the partition constraint (unless there is one already). + * For strategies other than hash, add a constraint to the partition + * being detached which supplants the partition constraint. For hash + * we cannot do that, because the constraint would reference the + * partitioned table OID, possibly causing problems later. */ - DetachAddConstraintIfNeeded(wqueue, partRel); + if (partdesc->boundinfo->strategy != PARTITION_STRATEGY_HASH) + DetachAddConstraintIfNeeded(wqueue, partRel); /* * We're almost done now; the only traces that remain are the diff --git a/src/test/regress/expected/alter_table.out b/src/test/regress/expected/alter_table.out index b33e06a0d3d51..11dbb0426f185 100644 --- a/src/test/regress/expected/alter_table.out +++ b/src/test/regress/expected/alter_table.out @@ -4490,6 +4490,14 @@ Check constraints: "part_rp100_a_check" CHECK (a >= 123 AND a < 133 AND a IS NOT NULL) DROP TABLE range_parted2; +-- Test that hash partitions continue to work after they're concurrently +-- detached (bugs #18371, #19070) +CREATE TABLE hash_parted2 (a int) PARTITION BY HASH(a); +CREATE TABLE part_hp PARTITION OF hash_parted2 FOR VALUES WITH (MODULUS 2, REMAINDER 0); +ALTER TABLE hash_parted2 DETACH PARTITION part_hp CONCURRENTLY; +DROP TABLE hash_parted2; +INSERT INTO part_hp VALUES (1); +DROP TABLE part_hp; -- Check ALTER TABLE commands for partitioned tables and partitions -- cannot add/drop column to/from *only* the parent ALTER TABLE ONLY list_parted2 ADD COLUMN c int; diff --git a/src/test/regress/sql/alter_table.sql b/src/test/regress/sql/alter_table.sql index 90bf5c1768238..f1a7d776013bf 100644 --- a/src/test/regress/sql/alter_table.sql +++ b/src/test/regress/sql/alter_table.sql @@ -2834,6 +2834,15 @@ ALTER TABLE range_parted2 DETACH PARTITION part_rp100 CONCURRENTLY; \d part_rp100 DROP TABLE range_parted2; +-- Test that hash partitions continue to work after they're concurrently +-- detached (bugs #18371, #19070) +CREATE TABLE hash_parted2 (a int) PARTITION BY HASH(a); +CREATE TABLE part_hp PARTITION OF hash_parted2 FOR VALUES WITH (MODULUS 2, REMAINDER 0); +ALTER TABLE hash_parted2 DETACH PARTITION part_hp CONCURRENTLY; +DROP TABLE hash_parted2; +INSERT INTO part_hp VALUES (1); +DROP TABLE part_hp; + -- Check ALTER TABLE commands for partitioned tables and partitions -- cannot add/drop column to/from *only* the parent From 661b320ed4e0abf7063fc51597803cf3fdb13a85 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 11 Oct 2025 16:33:55 -0400 Subject: [PATCH 298/457] Restore test coverage of LZ4Stream_gets(). In commit a45c78e32 I removed the only regression test case that reaches this function, because it turns out that we only use it if reading an LZ4-compressed blobs.toc file in a directory dump, and that is a state that has to be created manually. That seems like a bad thing to not test, not so much for LZ4Stream_gets() itself as because it means the squirrely eol_flag logic in LZ4Stream_read_internal() is not tested. The reason for the change was that I thought the lz4 program did not have any way to perform compression without explicit specification of the output file name. However, it turns out that the syntax synopsis in its man page is a lie, and if you read enough of the man page you find out that with "-m" it will do what's needful. So restore the manual compression step in that test case. Noted while testing some proposed changes in pg_dump's compression logic. Author: Tom Lane Discussion: https://postgr.es/m/3515357.1760128017@sss.pgh.pa.us Backpatch-through: 17 --- src/bin/pg_dump/t/002_pg_dump.pl | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/bin/pg_dump/t/002_pg_dump.pl b/src/bin/pg_dump/t/002_pg_dump.pl index e5e55e9a21c44..db610cbacfdec 100644 --- a/src/bin/pg_dump/t/002_pg_dump.pl +++ b/src/bin/pg_dump/t/002_pg_dump.pl @@ -201,6 +201,15 @@ '--statistics', 'postgres', ], + # Give coverage for manually compressed blobs.toc files during + # restore. + compress_cmd => { + program => $ENV{'LZ4'}, + args => [ + '-z', '-f', '-m', '--rm', + "$tempdir/compression_lz4_dir/blobs_*.toc", + ], + }, # Verify that data files were compressed glob_patterns => [ "$tempdir/compression_lz4_dir/toc.dat", From 9de72704e060720c58f75a715e3f217ad8635276 Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Sun, 12 Oct 2025 14:04:06 -0400 Subject: [PATCH 299/457] Remove unused nbtree array advancement variable. Remove a variable that is no longer in use following commit 9a2e2a28. It's not immediately clear why there were no compiler warnings about this oversight. Author: Peter Geoghegan Backpatch-through: 18 --- src/backend/access/nbtree/nbtutils.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/backend/access/nbtree/nbtutils.c b/src/backend/access/nbtree/nbtutils.c index 80887df14928c..f1db8d429cf1f 100644 --- a/src/backend/access/nbtree/nbtutils.c +++ b/src/backend/access/nbtree/nbtutils.c @@ -1445,7 +1445,6 @@ _bt_advance_array_keys(IndexScanDesc scan, BTReadPageState *pstate, BTArrayKeyInfo *array = NULL; Datum tupdatum; bool required = false, - required_opposite_direction_only = false, tupnull; int32 result; int set_elem = 0; @@ -1469,8 +1468,7 @@ _bt_advance_array_keys(IndexScanDesc scan, BTReadPageState *pstate, (cur->sk_flags & (SK_BT_REQBKWD))) || (ScanDirectionIsBackward(dir) && (cur->sk_flags & (SK_BT_REQFWD))))) - has_required_opposite_direction_only = - required_opposite_direction_only = true; + has_required_opposite_direction_only = true; } /* Optimization: skip over known-satisfied scan keys */ From 656736402f54f840a90acfae7db826c53d0a8b1d Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Mon, 13 Oct 2025 15:28:20 +0200 Subject: [PATCH 300/457] Remove extra semicolon in example Reported-By: Pavel Luzanov Discussion: https://postgr.es/m/175976566145.768.4645962241073007347@wrigleys.postgresql.org Backpatch-through: 18 --- doc/src/sgml/func.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml index d2b6b01777ee9..6fd18fd6731c8 100644 --- a/doc/src/sgml/func.sgml +++ b/doc/src/sgml/func.sgml @@ -17440,7 +17440,7 @@ ERROR: value too long for type character(2) [{"f1":1},2,null,3] - jsonb_strip_nulls('[1,2,null,3,4]', true); + jsonb_strip_nulls('[1,2,null,3,4]', true) [1,2,3,4] From de2b62f4758786ae353baf161acb4a43dd9e0c8c Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Mon, 13 Oct 2025 15:31:25 +0200 Subject: [PATCH 301/457] docs: Fix protocol version 3.2 message format of CancelRequest Since protocol version 3.2 the CancelRequest does not have a fixed size length anymore. The protocol docs still listed the length field to be a constant number though. This fixes that. Author: Jelte Fennema-Nio Reported-by: Dmitry Igrishin Backpatch-through: 18 --- doc/src/sgml/protocol.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index d336ee38f58e1..f0b29ed8cab9f 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -4354,7 +4354,7 @@ psql "dbname=postgres replication=database" -c "IDENTIFY_SYSTEM;" - Int32(16) + Int32 Length of message contents in bytes, including self. From 6a4009747c3687bf1fdfef5f0b75c33681f37a10 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 13 Oct 2025 12:44:20 -0400 Subject: [PATCH 302/457] Fix issue with reading zero bytes in Gzip_read. pg_dump expects a read request of zero bytes to be a no-op; see for example ReadStr(). Gzip_read got this wrong and falsely supposed that the resulting gzret == 0 indicated an error. We could complicate that error-checking logic some more, but it seems best to just fall out immediately when passed size == 0. This bug breaks the nominally-supported case of manually gzip'ing the toc.dat file within a directory-style dump, so back-patch to v16 where this code came in. (Prior branches already have a short-circuit for size == 0 before their only gzread call.) Author: Tom Lane Reviewed-by: Chao Li Discussion: https://postgr.es/m/3515357.1760128017@sss.pgh.pa.us Backpatch-through: 16 --- src/bin/pg_dump/compress_gzip.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/bin/pg_dump/compress_gzip.c b/src/bin/pg_dump/compress_gzip.c index 4a067e1402c3b..ad3b64860272e 100644 --- a/src/bin/pg_dump/compress_gzip.c +++ b/src/bin/pg_dump/compress_gzip.c @@ -257,6 +257,10 @@ Gzip_read(void *ptr, size_t size, CompressFileHandle *CFH) gzFile gzfp = (gzFile) CFH->private_data; int gzret; + /* Reading zero bytes must be a no-op */ + if (size == 0) + return 0; + gzret = gzread(gzfp, ptr, size); /* From f691e72585a3811a05e37d27e898b1d816ff9ff9 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Tue, 14 Oct 2025 09:25:34 +1300 Subject: [PATCH 303/457] Doc: clarify n_distinct_inherited setting There was some confusion around how to adjust the n_distinct estimates for partitioned tables. Here we try and clarify that n_distinct_inherited needs to be adjusted rather than n_distinct. Also fix some slightly misleading text which was talking about table size rather than table rows, fix a grammatical error, and adjust some text which indicated that ANALYZE was performing calculations based on the n_distinct settings. Really it's the query planner that does this and ANALYZE only stores the overridden n_distinct estimate value in pg_statistic. Author: David Rowley Reviewed-by: David G. Johnston Reviewed-by: Chao Li Backpatch-through: 13 Discussion: https://postgr.es/m/CAApHDvrL7a-ZytM1SP8Uk9nEw9bR2CPzVb+uP+bcNj=_q-ZmVw@mail.gmail.com --- doc/src/sgml/ref/alter_table.sgml | 34 +++++++++++++++---------------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/doc/src/sgml/ref/alter_table.sgml b/doc/src/sgml/ref/alter_table.sgml index 76af7a6f54d55..2a7d4b84f83c6 100644 --- a/doc/src/sgml/ref/alter_table.sgml +++ b/doc/src/sgml/ref/alter_table.sgml @@ -376,24 +376,22 @@ WITH ( MODULUS numeric_literal, REM n_distinct_inherited, which override the number-of-distinct-values estimates made by subsequent ANALYZE - operations. n_distinct affects the statistics for the table - itself, while n_distinct_inherited affects the statistics - gathered for the table plus its inheritance children. When set to a - positive value, ANALYZE will assume that the column contains - exactly the specified number of distinct nonnull values. When set to a - negative value, which must be greater - than or equal to -1, ANALYZE will assume that the number of - distinct nonnull values in the column is linear in the size of the - table; the exact count is to be computed by multiplying the estimated - table size by the absolute value of the given number. For example, - a value of -1 implies that all values in the column are distinct, while - a value of -0.5 implies that each value appears twice on the average. - This can be useful when the size of the table changes over time, since - the multiplication by the number of rows in the table is not performed - until query planning time. Specify a value of 0 to revert to estimating - the number of distinct values normally. For more information on the use - of statistics by the PostgreSQL query - planner, refer to . + operations. n_distinct affects the statistics for the + table itself, while n_distinct_inherited affects the + statistics gathered for the table plus its inheritance children, and for + the statistics gathered for partitioned tables. When the value + specified is a positive value, the query planner will assume that the + column contains exactly the specified number of distinct nonnull values. + Fractional values may also be specified by using values below 0 and + above or equal to -1. This instructs the query planner to estimate the + number of distinct values by multiplying the absolute value of the + specified number by the estimated number of rows in the table. For + example, a value of -1 implies that all values in the column are + distinct, while a value of -0.5 implies that each value appears twice on + average. This can be useful when the size of the table changes over + time. For more information on the use of statistics by the + PostgreSQL query planner, refer to + . Changing per-attribute options acquires a From b48ae226e6c31f5e1801e626d7602be7969f0fbd Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 13 Oct 2025 17:56:45 -0400 Subject: [PATCH 304/457] Fix incorrect message-printing in win32security.c. log_error() would probably fail completely if used, and would certainly print garbage for anything that needed to be interpolated into the message, because it was failing to use the correct printing subroutine for a va_list argument. This bug likely went undetected because the error cases this code is used for are rarely exercised - they only occur when Windows security API calls fail catastrophically (out of memory, security subsystem corruption, etc). The FRONTEND variant can be fixed just by calling vfprintf() instead of fprintf(). However, there was no va_list variant of write_stderr(), so create one by refactoring that function. Following the usual naming convention for such things, call it vwrite_stderr(). Author: Bryan Green Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CAF+pBj8goe4fRmZ0V3Cs6eyWzYLvK+HvFLYEYWG=TzaM+tWPnw@mail.gmail.com Backpatch-through: 13 --- src/backend/utils/error/elog.c | 16 +++++++++++++--- src/include/utils/elog.h | 1 + src/port/win32security.c | 4 ++-- 3 files changed, 16 insertions(+), 5 deletions(-) diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index dc0b74dc30b5e..d78f3ab8a30dd 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -3783,13 +3783,24 @@ write_stderr(const char *fmt,...) { va_list ap; + va_start(ap, fmt); + vwrite_stderr(fmt, ap); + va_end(ap); +} + + +/* + * Write errors to stderr (or by equal means when stderr is + * not available) - va_list version + */ +void +vwrite_stderr(const char *fmt, va_list ap) +{ #ifdef WIN32 char errbuf[2048]; /* Arbitrary size? */ #endif fmt = _(fmt); - - va_start(ap, fmt); #ifndef WIN32 /* On Unix, we just fprintf to stderr */ vfprintf(stderr, fmt, ap); @@ -3812,5 +3823,4 @@ write_stderr(const char *fmt,...) fflush(stderr); } #endif - va_end(ap); } diff --git a/src/include/utils/elog.h b/src/include/utils/elog.h index 675f4f5f4694d..581b39091e0c6 100644 --- a/src/include/utils/elog.h +++ b/src/include/utils/elog.h @@ -527,5 +527,6 @@ extern void write_jsonlog(ErrorData *edata); * safely (memory context, GUC load etc) */ extern void write_stderr(const char *fmt,...) pg_attribute_printf(1, 2); +extern void vwrite_stderr(const char *fmt, va_list ap) pg_attribute_printf(1, 0); #endif /* ELOG_H */ diff --git a/src/port/win32security.c b/src/port/win32security.c index a46b82dd0482b..b7608ab170622 100644 --- a/src/port/win32security.c +++ b/src/port/win32security.c @@ -31,9 +31,9 @@ log_error(const char *fmt,...) va_start(ap, fmt); #ifndef FRONTEND - write_stderr(fmt, ap); + vwrite_stderr(fmt, ap); #else - fprintf(stderr, fmt, ap); + vfprintf(stderr, fmt, ap); #endif va_end(ap); } From a6598aac5295fcb169bd251cbc9fe125fa019a2d Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 14 Oct 2025 08:31:24 +0900 Subject: [PATCH 305/457] Fix version number calculation for data folder flush in pg_combinebackup The version number calculated by read_pg_version_file() is multiplied once by 10000, to be able to do comparisons based on PG_VERSION_NUM or equivalents with a minor version included. However, the version number given sync_pgdata() was multiplied by 10000 a second time, leading to an overestimated number. This issue was harmless (still incorrect) as pg_combinebackup does not support versions of Postgres older than v10, and sync_pgdata() only includes a version check due to the rename of pg_xlog/ to pg_wal/. This folder rename happened in the development cycle of v10. This would become a problem if in the future sync_pgdata() is changed to have more version-specific checks. Oversight in dc212340058b, so backpatch down to v17. Reviewed-by: Chao Li Discussion: https://postgr.es/m/aOil5d0y87ZM_wsZ@paquier.xyz Backpatch-through: 17 --- src/bin/pg_combinebackup/pg_combinebackup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bin/pg_combinebackup/pg_combinebackup.c b/src/bin/pg_combinebackup/pg_combinebackup.c index 28e58cd8ef458..82644d55d2e24 100644 --- a/src/bin/pg_combinebackup/pg_combinebackup.c +++ b/src/bin/pg_combinebackup/pg_combinebackup.c @@ -425,7 +425,7 @@ main(int argc, char *argv[]) else { pg_log_debug("recursively fsyncing \"%s\"", opt.output); - sync_pgdata(opt.output, version * 10000, opt.sync_method, true); + sync_pgdata(opt.output, version, opt.sync_method, true); } } From b141443259845de6901be70e8eaa090a483ab68f Mon Sep 17 00:00:00 2001 From: Etsuro Fujita Date: Wed, 15 Oct 2025 17:15:01 +0900 Subject: [PATCH 306/457] Fix EvalPlanQual handling of foreign/custom joins in ExecScanFetch. If inside an EPQ recheck, ExecScanFetch would run the recheck method function for foreign/custom joins even if they aren't descendant nodes in the EPQ recheck plan tree, which is problematic at least in the foreign-join case, because such a foreign join isn't guaranteed to have an alternative local-join plan required for running the recheck method function; in the postgres_fdw case this could lead to a segmentation fault or an assert failure in an assert-enabled build when running the recheck method function. Even if inside an EPQ recheck, any scan nodes that aren't descendant ones in the EPQ recheck plan tree should be normally processed by using the access method function; fix by modifying ExecScanFetch so that if inside an EPQ recheck, it runs the recheck method function for foreign/custom joins that are descendant nodes in the EPQ recheck plan tree as before and runs the access method function for foreign/custom joins that aren't. This fix also adds to postgres_fdw an isolation test for an EPQ recheck that caused issues stated above. Oversight in commit 385f337c9. Reported-by: Kristian Lejao Author: Masahiko Sawada Co-authored-by: Etsuro Fujita Reviewed-by: Michael Paquier Reviewed-by: Etsuro Fujita Discussion: https://postgr.es/m/CAD21AoBpo6Gx55FBOW+9s5X=nUw3Xpq64v35fpDEKsTERnc4TQ@mail.gmail.com Backpatch-through: 13 --- contrib/postgres_fdw/.gitignore | 2 + contrib/postgres_fdw/Makefile | 2 + .../postgres_fdw/expected/eval_plan_qual.out | 37 +++++++++++++ contrib/postgres_fdw/meson.build | 6 ++ .../postgres_fdw/specs/eval_plan_qual.spec | 55 +++++++++++++++++++ src/include/executor/execScan.h | 22 +++++--- 6 files changed, 117 insertions(+), 7 deletions(-) create mode 100644 contrib/postgres_fdw/expected/eval_plan_qual.out create mode 100644 contrib/postgres_fdw/specs/eval_plan_qual.spec diff --git a/contrib/postgres_fdw/.gitignore b/contrib/postgres_fdw/.gitignore index 5dcb3ff972350..b4903eba657fa 100644 --- a/contrib/postgres_fdw/.gitignore +++ b/contrib/postgres_fdw/.gitignore @@ -1,4 +1,6 @@ # Generated subdirectories /log/ /results/ +/output_iso/ /tmp_check/ +/tmp_check_iso/ diff --git a/contrib/postgres_fdw/Makefile b/contrib/postgres_fdw/Makefile index adfbd2ef758e0..8eaf4d263b688 100644 --- a/contrib/postgres_fdw/Makefile +++ b/contrib/postgres_fdw/Makefile @@ -17,6 +17,8 @@ EXTENSION = postgres_fdw DATA = postgres_fdw--1.0.sql postgres_fdw--1.0--1.1.sql postgres_fdw--1.1--1.2.sql REGRESS = postgres_fdw query_cancel +ISOLATION = eval_plan_qual +ISOLATION_OPTS = --load-extension=postgres_fdw TAP_TESTS = 1 ifdef USE_PGXS diff --git a/contrib/postgres_fdw/expected/eval_plan_qual.out b/contrib/postgres_fdw/expected/eval_plan_qual.out new file mode 100644 index 0000000000000..7f55c97ab4aa5 --- /dev/null +++ b/contrib/postgres_fdw/expected/eval_plan_qual.out @@ -0,0 +1,37 @@ +Parsed test spec with 2 sessions + +starting permutation: s0_begin s0_update s1_begin s1_tuplock s0_commit s1_commit +step s0_begin: BEGIN ISOLATION LEVEL READ COMMITTED; +step s0_update: UPDATE a SET i = i + 1; +step s1_begin: BEGIN ISOLATION LEVEL READ COMMITTED; +step s1_tuplock: + -- Verify if the sub-select has a foreign-join plan + EXPLAIN (VERBOSE, COSTS OFF) + SELECT a.i, + (SELECT 1 FROM fb, fc WHERE a.i = fb.i AND fb.i = fc.i) + FROM a FOR UPDATE; + SELECT a.i, + (SELECT 1 FROM fb, fc WHERE a.i = fb.i AND fb.i = fc.i) + FROM a FOR UPDATE; + +step s0_commit: COMMIT; +step s1_tuplock: <... completed> +QUERY PLAN +---------------------------------------------------------------------------------------------------------------------------------------- +LockRows + Output: a.i, ((SubPlan 1)), a.ctid + -> Seq Scan on public.a + Output: a.i, (SubPlan 1), a.ctid + SubPlan 1 + -> Foreign Scan + Output: 1 + Relations: (public.fb) INNER JOIN (public.fc) + Remote SQL: SELECT NULL FROM (public.b r1 INNER JOIN public.c r2 ON (((r2.i = $1::integer)) AND ((r1.i = $1::integer)))) +(9 rows) + +i|?column? +-+-------- +2| +(1 row) + +step s1_commit: COMMIT; diff --git a/contrib/postgres_fdw/meson.build b/contrib/postgres_fdw/meson.build index 8b29be24deeb7..c96030ca08984 100644 --- a/contrib/postgres_fdw/meson.build +++ b/contrib/postgres_fdw/meson.build @@ -41,6 +41,12 @@ tests += { ], 'regress_args': ['--dlpath', meson.build_root() / 'src/test/regress'], }, + 'isolation': { + 'specs': [ + 'eval_plan_qual', + ], + 'regress_args': ['--load-extension=postgres_fdw'], + }, 'tap': { 'tests': [ 't/001_auth_scram.pl', diff --git a/contrib/postgres_fdw/specs/eval_plan_qual.spec b/contrib/postgres_fdw/specs/eval_plan_qual.spec new file mode 100644 index 0000000000000..30a83e0405896 --- /dev/null +++ b/contrib/postgres_fdw/specs/eval_plan_qual.spec @@ -0,0 +1,55 @@ +# Tests for the EvalPlanQual mechanism involving foreign tables + +setup +{ + DO $d$ + BEGIN + EXECUTE $$CREATE SERVER loopback FOREIGN DATA WRAPPER postgres_fdw + OPTIONS (dbname '$$||current_database()||$$', + port '$$||current_setting('port')||$$' + )$$; + END; + $d$; + CREATE USER MAPPING FOR PUBLIC SERVER loopback; + + CREATE TABLE a (i int); + CREATE TABLE b (i int); + CREATE TABLE c (i int); + CREATE FOREIGN TABLE fb (i int) SERVER loopback OPTIONS (table_name 'b'); + CREATE FOREIGN TABLE fc (i int) SERVER loopback OPTIONS (table_name 'c'); + + INSERT INTO a VALUES (1); + INSERT INTO b VALUES (1); + INSERT INTO c VALUES (1); +} + +teardown +{ + DROP TABLE a; + DROP TABLE b; + DROP TABLE c; + DROP SERVER loopback CASCADE; +} + +session s0 +step s0_begin { BEGIN ISOLATION LEVEL READ COMMITTED; } +step s0_update { UPDATE a SET i = i + 1; } +step s0_commit { COMMIT; } + +session s1 +step s1_begin { BEGIN ISOLATION LEVEL READ COMMITTED; } +step s1_tuplock { + -- Verify if the sub-select has a foreign-join plan + EXPLAIN (VERBOSE, COSTS OFF) + SELECT a.i, + (SELECT 1 FROM fb, fc WHERE a.i = fb.i AND fb.i = fc.i) + FROM a FOR UPDATE; + SELECT a.i, + (SELECT 1 FROM fb, fc WHERE a.i = fb.i AND fb.i = fc.i) + FROM a FOR UPDATE; +} +step s1_commit { COMMIT; } + +# This test exercises EvalPlanQual with a SubLink sub-select (which should +# be unaffected by any EPQ recheck behavior in the outer query). +permutation s0_begin s0_update s1_begin s1_tuplock s0_commit s1_commit diff --git a/src/include/executor/execScan.h b/src/include/executor/execScan.h index 837ea7785bb4c..2003cbc7ed562 100644 --- a/src/include/executor/execScan.h +++ b/src/include/executor/execScan.h @@ -49,16 +49,24 @@ ExecScanFetch(ScanState *node, { /* * This is a ForeignScan or CustomScan which has pushed down a - * join to the remote side. The recheck method is responsible not - * only for rechecking the scan/join quals but also for storing - * the correct tuple in the slot. + * join to the remote side. If it is a descendant node in the EPQ + * recheck plan tree, run the recheck method function. Otherwise, + * run the access method function below. */ + if (bms_is_member(epqstate->epqParam, node->ps.plan->extParam)) + { + /* + * The recheck method is responsible not only for rechecking + * the scan/join quals but also for storing the correct tuple + * in the slot. + */ - TupleTableSlot *slot = node->ss_ScanTupleSlot; + TupleTableSlot *slot = node->ss_ScanTupleSlot; - if (!(*recheckMtd) (node, slot)) - ExecClearTuple(slot); /* would not be returned by scan */ - return slot; + if (!(*recheckMtd) (node, slot)) + ExecClearTuple(slot); /* would not be returned by scan */ + return slot; + } } else if (epqstate->relsubs_done[scanrelid - 1]) { From c8af5019bee5c57502db830f8005a01cba60fee0 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Wed, 15 Oct 2025 12:47:33 -0500 Subject: [PATCH 307/457] Fix lookups in pg_{clear,restore}_{attribute,relation}_stats(). Presently, these functions look up the relation's OID, lock it, and then check privileges. Not only does this approach provide no guarantee that the locked relation matches the arguments of the lookup, but it also allows users to briefly lock relations for which they do not have privileges, which might enable denial-of-service attacks. This commit adjusts these functions to use RangeVarGetRelidExtended(), which is purpose-built to avoid both of these issues. The new RangeVarGetRelidCallback function is somewhat complicated because it must handle both tables and indexes, and for indexes, we must check privileges on the parent table and lock it first. Also, it needs to handle a couple of extremely unlikely race conditions involving concurrent OID reuse. A downside of this change is that the coding doesn't allow for locking indexes in AccessShare mode anymore; everything is locked in ShareUpdateExclusive mode. Per discussion, the original choice of lock levels was intended for a now defunct implementation that used in-place updates, so we believe this change is okay. Reviewed-by: Jeff Davis Discussion: https://postgr.es/m/Z8zwVmGzXyDdkAXj%40nathan Backpatch-through: 18 --- src/backend/statistics/attribute_stats.c | 16 ++- src/backend/statistics/relation_stats.c | 8 +- src/backend/statistics/stat_utils.c | 152 +++++++++++---------- src/include/statistics/stat_utils.h | 8 +- src/test/regress/expected/stats_import.out | 6 +- 5 files changed, 103 insertions(+), 87 deletions(-) diff --git a/src/backend/statistics/attribute_stats.c b/src/backend/statistics/attribute_stats.c index 1412aab2986dc..38cedaa326399 100644 --- a/src/backend/statistics/attribute_stats.c +++ b/src/backend/statistics/attribute_stats.c @@ -19,8 +19,10 @@ #include "access/heapam.h" #include "catalog/indexing.h" +#include "catalog/namespace.h" #include "catalog/pg_collation.h" #include "catalog/pg_operator.h" +#include "nodes/makefuncs.h" #include "nodes/nodeFuncs.h" #include "statistics/statistics.h" #include "statistics/stat_utils.h" @@ -143,6 +145,7 @@ attribute_statistics_update(FunctionCallInfo fcinfo) char *attname; AttrNumber attnum; bool inherited; + Oid locked_table = InvalidOid; Relation starel; HeapTuple statup; @@ -182,8 +185,6 @@ attribute_statistics_update(FunctionCallInfo fcinfo) nspname = TextDatumGetCString(PG_GETARG_DATUM(ATTRELSCHEMA_ARG)); relname = TextDatumGetCString(PG_GETARG_DATUM(ATTRELNAME_ARG)); - reloid = stats_lookup_relid(nspname, relname); - if (RecoveryInProgress()) ereport(ERROR, (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE), @@ -191,7 +192,9 @@ attribute_statistics_update(FunctionCallInfo fcinfo) errhint("Statistics cannot be modified during recovery."))); /* lock before looking up attribute */ - stats_lock_check_privileges(reloid); + reloid = RangeVarGetRelidExtended(makeRangeVar(nspname, relname, -1), + ShareUpdateExclusiveLock, 0, + RangeVarCallbackForStats, &locked_table); /* user can specify either attname or attnum, but not both */ if (!PG_ARGISNULL(ATTNAME_ARG)) @@ -917,6 +920,7 @@ pg_clear_attribute_stats(PG_FUNCTION_ARGS) char *attname; AttrNumber attnum; bool inherited; + Oid locked_table = InvalidOid; stats_check_required_arg(fcinfo, cleararginfo, C_ATTRELSCHEMA_ARG); stats_check_required_arg(fcinfo, cleararginfo, C_ATTRELNAME_ARG); @@ -926,15 +930,15 @@ pg_clear_attribute_stats(PG_FUNCTION_ARGS) nspname = TextDatumGetCString(PG_GETARG_DATUM(C_ATTRELSCHEMA_ARG)); relname = TextDatumGetCString(PG_GETARG_DATUM(C_ATTRELNAME_ARG)); - reloid = stats_lookup_relid(nspname, relname); - if (RecoveryInProgress()) ereport(ERROR, (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE), errmsg("recovery is in progress"), errhint("Statistics cannot be modified during recovery."))); - stats_lock_check_privileges(reloid); + reloid = RangeVarGetRelidExtended(makeRangeVar(nspname, relname, -1), + ShareUpdateExclusiveLock, 0, + RangeVarCallbackForStats, &locked_table); attname = TextDatumGetCString(PG_GETARG_DATUM(C_ATTNAME_ARG)); attnum = get_attnum(reloid, attname); diff --git a/src/backend/statistics/relation_stats.c b/src/backend/statistics/relation_stats.c index a59f0c519a474..174da7d93a505 100644 --- a/src/backend/statistics/relation_stats.c +++ b/src/backend/statistics/relation_stats.c @@ -20,6 +20,7 @@ #include "access/heapam.h" #include "catalog/indexing.h" #include "catalog/namespace.h" +#include "nodes/makefuncs.h" #include "statistics/stat_utils.h" #include "utils/builtins.h" #include "utils/fmgroids.h" @@ -82,6 +83,7 @@ relation_statistics_update(FunctionCallInfo fcinfo) Datum values[4] = {0}; bool nulls[4] = {0}; int nreplaces = 0; + Oid locked_table = InvalidOid; stats_check_required_arg(fcinfo, relarginfo, RELSCHEMA_ARG); stats_check_required_arg(fcinfo, relarginfo, RELNAME_ARG); @@ -89,15 +91,15 @@ relation_statistics_update(FunctionCallInfo fcinfo) nspname = TextDatumGetCString(PG_GETARG_DATUM(RELSCHEMA_ARG)); relname = TextDatumGetCString(PG_GETARG_DATUM(RELNAME_ARG)); - reloid = stats_lookup_relid(nspname, relname); - if (RecoveryInProgress()) ereport(ERROR, (errcode(ERRCODE_OBJECT_NOT_IN_PREREQUISITE_STATE), errmsg("recovery is in progress"), errhint("Statistics cannot be modified during recovery."))); - stats_lock_check_privileges(reloid); + reloid = RangeVarGetRelidExtended(makeRangeVar(nspname, relname, -1), + ShareUpdateExclusiveLock, 0, + RangeVarCallbackForStats, &locked_table); if (!PG_ARGISNULL(RELPAGES_ARG)) { diff --git a/src/backend/statistics/stat_utils.c b/src/backend/statistics/stat_utils.c index ef7e5168bed40..0c139bf43a7b9 100644 --- a/src/backend/statistics/stat_utils.c +++ b/src/backend/statistics/stat_utils.c @@ -16,9 +16,11 @@ #include "postgres.h" +#include "access/htup_details.h" #include "access/relation.h" #include "catalog/index.h" #include "catalog/namespace.h" +#include "catalog/pg_class.h" #include "catalog/pg_database.h" #include "funcapi.h" #include "miscadmin.h" @@ -29,6 +31,7 @@ #include "utils/builtins.h" #include "utils/lsyscache.h" #include "utils/rel.h" +#include "utils/syscache.h" /* * Ensure that a given argument is not null. @@ -119,53 +122,84 @@ stats_check_arg_pair(FunctionCallInfo fcinfo, } /* - * Lock relation in ShareUpdateExclusive mode, check privileges, and close the - * relation (but retain the lock). - * * A role has privileges to set statistics on the relation if any of the * following are true: * - the role owns the current database and the relation is not shared * - the role has the MAINTAIN privilege on the relation */ void -stats_lock_check_privileges(Oid reloid) +RangeVarCallbackForStats(const RangeVar *relation, + Oid relId, Oid oldRelId, void *arg) { - Relation table; - Oid table_oid = reloid; - Oid index_oid = InvalidOid; - LOCKMODE index_lockmode = NoLock; + Oid *locked_oid = (Oid *) arg; + Oid table_oid = relId; + HeapTuple tuple; + Form_pg_class form; + char relkind; /* - * For indexes, we follow the locking behavior in do_analyze_rel() and - * check_lock_if_inplace_updateable_rel(), which is to lock the table - * first in ShareUpdateExclusive mode and then the index in AccessShare - * mode. - * - * Partitioned indexes are treated differently than normal indexes in - * check_lock_if_inplace_updateable_rel(), so we take a - * ShareUpdateExclusive lock on both the partitioned table and the - * partitioned index. + * If we previously locked some other index's heap, and the name we're + * looking up no longer refers to that relation, release the now-useless + * lock. */ - switch (get_rel_relkind(reloid)) + if (relId != oldRelId && OidIsValid(*locked_oid)) { - case RELKIND_INDEX: - index_oid = reloid; - table_oid = IndexGetRelation(index_oid, false); - index_lockmode = AccessShareLock; - break; - case RELKIND_PARTITIONED_INDEX: - index_oid = reloid; - table_oid = IndexGetRelation(index_oid, false); - index_lockmode = ShareUpdateExclusiveLock; - break; - default: - break; + UnlockRelationOid(*locked_oid, ShareUpdateExclusiveLock); + *locked_oid = InvalidOid; + } + + /* If the relation does not exist, there's nothing more to do. */ + if (!OidIsValid(relId)) + return; + + /* If the relation does exist, check whether it's an index. */ + relkind = get_rel_relkind(relId); + if (relkind == RELKIND_INDEX || + relkind == RELKIND_PARTITIONED_INDEX) + table_oid = IndexGetRelation(relId, false); + + /* + * If retrying yields the same OID, there are a couple of extremely + * unlikely scenarios we need to handle. + */ + if (relId == oldRelId) + { + /* + * If a previous lookup found an index, but the current lookup did + * not, the index was dropped and the OID was reused for something + * else between lookups. In theory, we could simply drop our lock on + * the index's parent table and proceed, but in the interest of + * avoiding complexity, we just error. + */ + if (table_oid == relId && OidIsValid(*locked_oid)) + ereport(ERROR, + (errcode(ERRCODE_UNDEFINED_OBJECT), + errmsg("index \"%s\" was concurrently dropped", + relation->relname))); + + /* + * If the current lookup found an index but a previous lookup either + * did not find an index or found one with a different parent + * relation, the relation was dropped and the OID was reused for an + * index between lookups. RangeVarGetRelidExtended() will have + * already locked the index at this point, so we can't just lock the + * newly discovered parent table OID without risking deadlock. As + * above, we just error in this case. + */ + if (table_oid != relId && table_oid != *locked_oid) + ereport(ERROR, + (errcode(ERRCODE_UNDEFINED_OBJECT), + errmsg("index \"%s\" was concurrently created", + relation->relname))); } - table = relation_open(table_oid, ShareUpdateExclusiveLock); + tuple = SearchSysCache1(RELOID, ObjectIdGetDatum(table_oid)); + if (!HeapTupleIsValid(tuple)) + elog(ERROR, "cache lookup failed for OID %u", table_oid); + form = (Form_pg_class) GETSTRUCT(tuple); /* the relkinds that can be used with ANALYZE */ - switch (table->rd_rel->relkind) + switch (form->relkind) { case RELKIND_RELATION: case RELKIND_MATVIEW: @@ -176,62 +210,36 @@ stats_lock_check_privileges(Oid reloid) ereport(ERROR, (errcode(ERRCODE_WRONG_OBJECT_TYPE), errmsg("cannot modify statistics for relation \"%s\"", - RelationGetRelationName(table)), - errdetail_relkind_not_supported(table->rd_rel->relkind))); + NameStr(form->relname)), + errdetail_relkind_not_supported(form->relkind))); } - if (OidIsValid(index_oid)) - { - Relation index; - - Assert(index_lockmode != NoLock); - index = relation_open(index_oid, index_lockmode); - - Assert(index->rd_index && index->rd_index->indrelid == table_oid); - - /* retain lock on index */ - relation_close(index, NoLock); - } - - if (table->rd_rel->relisshared) + if (form->relisshared) ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("cannot modify statistics for shared relation"))); + /* Check permissions */ if (!object_ownercheck(DatabaseRelationId, MyDatabaseId, GetUserId())) { - AclResult aclresult = pg_class_aclcheck(RelationGetRelid(table), + AclResult aclresult = pg_class_aclcheck(table_oid, GetUserId(), ACL_MAINTAIN); if (aclresult != ACLCHECK_OK) aclcheck_error(aclresult, - get_relkind_objtype(table->rd_rel->relkind), - NameStr(table->rd_rel->relname)); + get_relkind_objtype(form->relkind), + NameStr(form->relname)); } - /* retain lock on table */ - relation_close(table, NoLock); -} + ReleaseSysCache(tuple); -/* - * Lookup relation oid from schema and relation name. - */ -Oid -stats_lookup_relid(const char *nspname, const char *relname) -{ - Oid nspoid; - Oid reloid; - - nspoid = LookupExplicitNamespace(nspname, false); - reloid = get_relname_relid(relname, nspoid); - if (!OidIsValid(reloid)) - ereport(ERROR, - (errcode(ERRCODE_UNDEFINED_TABLE), - errmsg("relation \"%s.%s\" does not exist", - nspname, relname))); - - return reloid; + /* Lock heap before index to avoid deadlock. */ + if (relId != oldRelId && table_oid != relId) + { + LockRelationOid(table_oid, ShareUpdateExclusiveLock); + *locked_oid = table_oid; + } } diff --git a/src/include/statistics/stat_utils.h b/src/include/statistics/stat_utils.h index 512eb776e0e04..f41b181d4d3a3 100644 --- a/src/include/statistics/stat_utils.h +++ b/src/include/statistics/stat_utils.h @@ -15,6 +15,9 @@ #include "fmgr.h" +/* avoid including primnodes.h here */ +typedef struct RangeVar RangeVar; + struct StatsArgInfo { const char *argname; @@ -30,9 +33,8 @@ extern bool stats_check_arg_pair(FunctionCallInfo fcinfo, struct StatsArgInfo *arginfo, int argnum1, int argnum2); -extern void stats_lock_check_privileges(Oid reloid); - -extern Oid stats_lookup_relid(const char *nspname, const char *relname); +extern void RangeVarCallbackForStats(const RangeVar *relation, + Oid relId, Oid oldRelid, void *arg); extern bool stats_fill_fcinfo_from_arg_pairs(FunctionCallInfo pairs_fcinfo, FunctionCallInfo positional_fcinfo, diff --git a/src/test/regress/expected/stats_import.out b/src/test/regress/expected/stats_import.out index 9e615ccd0af97..98ce7dc284102 100644 --- a/src/test/regress/expected/stats_import.out +++ b/src/test/regress/expected/stats_import.out @@ -120,9 +120,9 @@ WHERE relation = 'stats_import.test'::regclass AND SELECT mode FROM pg_locks WHERE relation = 'stats_import.test_i'::regclass AND pid = pg_backend_pid() AND granted; - mode ------------------ - AccessShareLock + mode +-------------------------- + ShareUpdateExclusiveLock (1 row) COMMIT; From 15d7dded0e930b5781b2c0e591c1b45eb078a248 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Wed, 15 Oct 2025 13:14:00 -0500 Subject: [PATCH 308/457] Fix redefinition of typedef RangeVar. Commit c8af5019be added a forward declaration for this typedef that caused redefinitions, which are not valid in C99. Per buildfarm members longfin and sifaka. Discussion: https://postgr.es/m/aO_fzfnKVXMd_RUM%40nathan Backpatch-through: 18 only --- src/include/statistics/stat_utils.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/include/statistics/stat_utils.h b/src/include/statistics/stat_utils.h index f41b181d4d3a3..4283d2c4053c0 100644 --- a/src/include/statistics/stat_utils.h +++ b/src/include/statistics/stat_utils.h @@ -16,7 +16,7 @@ #include "fmgr.h" /* avoid including primnodes.h here */ -typedef struct RangeVar RangeVar; +struct RangeVar; struct StatsArgInfo { @@ -33,7 +33,7 @@ extern bool stats_check_arg_pair(FunctionCallInfo fcinfo, struct StatsArgInfo *arginfo, int argnum1, int argnum2); -extern void RangeVarCallbackForStats(const RangeVar *relation, +extern void RangeVarCallbackForStats(const struct RangeVar *relation, Oid relId, Oid oldRelid, void *arg); extern bool stats_fill_fcinfo_from_arg_pairs(FunctionCallInfo pairs_fcinfo, From 1296dcf18b1cf3a064e5981c1655d133f0b1206f Mon Sep 17 00:00:00 2001 From: Amit Langote Date: Thu, 16 Oct 2025 14:01:50 +0900 Subject: [PATCH 309/457] Fix EPQ crash from missing partition directory in EState EvalPlanQualStart() failed to propagate es_partition_directory into the child EState used for EPQ rechecks. When execution time partition pruning ran during the EPQ scan, executor code dereferenced a NULL partition directory and crashed. Previously, propagating es_partition_directory into the EPQ EState was unnecessary because CreatePartitionPruneState(), which sets it on demand, also initialized the exec-pruning context. After commit d47cbf474, CreatePartitionPruneState() now initializes only the init- time pruning context, leaving exec-pruning context initialization to ExecInitNode(). Since EvalPlanQualStart() runs only ExecInitNode() and not CreatePartitionPruneState(), it can encounter a NULL es_partition_directory. Other executor fields initialized during CreatePartitionPruneState() are already copied into the child EState thanks to commit 8741e48e5d, but es_partition_directory was missed. Fix by borrowing the parent estate's es_partition_directory in EvalPlanQualStart(), and by clearing that field in EvalPlanQualEnd() so the parent remains responsible for freeing the directory. Add an isolation test permutation that triggers EPQ with execution- time partition pruning, the case that reproduces this crash. Bug: #19078 Reported-by: Yuri Zamyatin Diagnosed-by: David Rowley Author: David Rowley Co-authored-by: Amit Langote Discussion: https://postgr.es/m/19078-dfd62f840a2c0766@postgresql.org Backpatch-through: 18 --- src/backend/executor/execMain.c | 10 ++++++++++ src/test/isolation/expected/eval-plan-qual.out | 7 +++++++ src/test/isolation/specs/eval-plan-qual.spec | 2 ++ 3 files changed, 19 insertions(+) diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index 831c55ce78740..713e926329c38 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -3093,6 +3093,9 @@ EvalPlanQualStart(EPQState *epqstate, Plan *planTree) rcestate->es_part_prune_states = parentestate->es_part_prune_states; rcestate->es_part_prune_results = parentestate->es_part_prune_results; + /* We'll also borrow the es_partition_directory from the parent state */ + rcestate->es_partition_directory = parentestate->es_partition_directory; + /* * Initialize private state information for each SubPlan. We must do this * before running ExecInitNode on the main query tree, since @@ -3210,6 +3213,13 @@ EvalPlanQualEnd(EPQState *epqstate) MemoryContextSwitchTo(oldcontext); + /* + * NULLify the partition directory before freeing the executor state. + * Since EvalPlanQualStart() just borrowed the parent EState's directory, + * we'd better leave it up to the parent to delete it. + */ + estate->es_partition_directory = NULL; + FreeExecutorState(estate); /* Mark EPQState idle */ diff --git a/src/test/isolation/expected/eval-plan-qual.out b/src/test/isolation/expected/eval-plan-qual.out index 60eca44b4e37c..05fffe0d5708f 100644 --- a/src/test/isolation/expected/eval-plan-qual.out +++ b/src/test/isolation/expected/eval-plan-qual.out @@ -1466,3 +1466,10 @@ step s2pp3: EXECUTE epd(1); step c1: COMMIT; step s2pp3: <... completed> step c2: COMMIT; + +starting permutation: s1pp1 s2pp4 c1 c2 +step s1pp1: UPDATE another_parttbl SET b = b + 1 WHERE a = 1; +step s2pp4: DELETE FROM another_parttbl WHERE a = (SELECT 1); +step c1: COMMIT; +step s2pp4: <... completed> +step c2: COMMIT; diff --git a/src/test/isolation/specs/eval-plan-qual.spec b/src/test/isolation/specs/eval-plan-qual.spec index 64afffb1d83b1..80e1e6bb307b3 100644 --- a/src/test/isolation/specs/eval-plan-qual.spec +++ b/src/test/isolation/specs/eval-plan-qual.spec @@ -316,6 +316,7 @@ step r2 { ROLLBACK; } step s2pp1 { SET plan_cache_mode TO force_generic_plan; } 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); } session s3 setup { BEGIN ISOLATION LEVEL READ COMMITTED; } @@ -423,3 +424,4 @@ 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 From 6aa04a60cbf5d7460c5444822b3127f5bdbc7930 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Thu, 16 Oct 2025 20:21:05 +0200 Subject: [PATCH 310/457] Fix update-po for the PGXS case The original formulation failed to take into account the fact that for the PGXS case, the source dir is not $(top_srcdir), so it ended up not doing anything. Handle it explicitly. Author: Ryo Matsumura Reviewed-by: Bryan Green Backpatch-through: 13 Discussion: https://postgr.es/m/TYCPR01MB113164770FB0B0BE6ED21E68EE8DCA@TYCPR01MB11316.jpnprd01.prod.outlook.com --- src/nls-global.mk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/nls-global.mk b/src/nls-global.mk index dfff472cb3f48..73a6db10a1da2 100644 --- a/src/nls-global.mk +++ b/src/nls-global.mk @@ -142,8 +142,13 @@ init-po: po/$(CATALOG_NAME).pot # For performance reasons, only calculate these when the user actually # requested update-po or a specific file. ifneq (,$(filter update-po %.po.new,$(MAKECMDGOALS))) +ifdef PGXS +ALL_LANGUAGES := $(shell find . -name '*.po' -print | sed 's,^.*/\([^/]*\).po$$,\1,' | LC_ALL=C sort -u) +all_compendia := $(shell find . -name '*.po' -print | LC_ALL=C sort) +else ALL_LANGUAGES := $(shell find $(top_srcdir) -name '*.po' -print | sed 's,^.*/\([^/]*\).po$$,\1,' | LC_ALL=C sort -u) all_compendia := $(shell find $(top_srcdir) -name '*.po' -print | LC_ALL=C sort) +endif else ALL_LANGUAGES = $(AVAIL_LANGUAGES) all_compendia = FORCE From 39e22b3adaa7738da4d7ff536a2ab5e303e7c890 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 17 Oct 2025 13:01:17 +0900 Subject: [PATCH 311/457] pg_createsubscriber: Fix matching check in TAP test 040_pg_createsubscriber has been calling safe_psql(), that returns the result of a SQL query, with ok() without checking the result generated (in this case 't', for a number of publications). The outcome of the tests is currently not impacted by this change. However, it could be possible that the test fails to detect future issues if the query results become different. The test is rewritten so as the number of publications is checked. This is not the fix suggested originally by the author, but this is more reliable in the long run. Oversight in e5aeed4b8020. Author: Sadhuprasad Patro Discussion: https://postgr.es/m/CAFF0-CHhwNx_Cv2uy7tKjODUbeOgPrJpW4Rpf1jqB16_1bU2sg@mail.gmail.com Backpatch-through: 18 --- src/bin/pg_basebackup/t/040_pg_createsubscriber.pl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bin/pg_basebackup/t/040_pg_createsubscriber.pl b/src/bin/pg_basebackup/t/040_pg_createsubscriber.pl index 229fef5b3b52b..7018dd6f74d48 100644 --- a/src/bin/pg_basebackup/t/040_pg_createsubscriber.pl +++ b/src/bin/pg_basebackup/t/040_pg_createsubscriber.pl @@ -341,8 +341,8 @@ sub generate_db $node_p->wait_for_replay_catchup($node_s); -ok($node_s->safe_psql($db1, "SELECT COUNT(*) = 2 FROM pg_publication"), - 'two pre-existing publications on subscriber'); +is($node_s->safe_psql($db1, "SELECT COUNT(*) FROM pg_publication"), + '2', 'two pre-existing publications on subscriber'); $node_s->stop; From 3a7225ed37fc0819f689e17435dc590fd2b8980d Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Fri, 17 Oct 2025 13:06:09 +0900 Subject: [PATCH 312/457] Fix matching check in recovery test 042_low_level_backup 042_low_level_backup compared the result of a query two times with a comparison operator based on an integer, while the result should be compared with a string. The outcome of the tests is currently not impacted by this change. However, it could be possible that the tests fail to detect future issues if the query results become different, for some reason. Oversight in 99b4a63bef94. Author: Sadhuprasad Patro Discussion: https://postgr.es/m/CAFF0-CHhwNx_Cv2uy7tKjODUbeOgPrJpW4Rpf1jqB16_1bU2sg@mail.gmail.com Backpatch-through: 17 --- src/test/recovery/t/042_low_level_backup.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/test/recovery/t/042_low_level_backup.pl b/src/test/recovery/t/042_low_level_backup.pl index 5749a1df53303..20b1abf89994e 100644 --- a/src/test/recovery/t/042_low_level_backup.pl +++ b/src/test/recovery/t/042_low_level_backup.pl @@ -105,8 +105,8 @@ $node_replica->start; -ok($node_replica->safe_psql('postgres', $canary_query) == 0, - 'canary is missing'); +is($node_replica->safe_psql('postgres', $canary_query), + '0', 'canary is missing'); # Check log to ensure that crash recovery was used as there is no # backup_label. @@ -134,8 +134,8 @@ has_restoring => 1); $node_replica->start; -ok($node_replica->safe_psql('postgres', $canary_query) == 1, - 'canary is present'); +is($node_replica->safe_psql('postgres', $canary_query), + '1', 'canary is present'); # Check log to ensure that backup_label was used for recovery. ok($node_replica->log_contains('starting backup recovery with redo LSN'), From 150a1b328778b1594f543057b6d3fbb78178f8b2 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Fri, 17 Oct 2025 14:21:26 +0200 Subject: [PATCH 313/457] Avoid warnings in tests when openssl binary isn't available The SSL tests for pg_stat_ssl tries to exactly match the serial from the certificate by extracting it with the openssl binary. If that fails due to the binary not being available, a fallback match is used, but the attempt to execute a missing binary adds a warning to the output which can confuse readers for a failure in the test. Fix by only attempting if the openssl binary was found by autoconf/meson. Backpatch down to v16 where commit c8e4030d1bdd made the test use the OPENSSL variable from autoconf/meson instead of a hard- coded value. Author: Daniel Gustafsson Reported-by: Christoph Berg Discussion: https://postgr.es/m/aNPSp1-RIAs3skZm@msg.df7cb.de Backpatch-through: 16 --- src/test/ssl/t/001_ssltests.pl | 42 +++++++++++++++------------------- 1 file changed, 19 insertions(+), 23 deletions(-) diff --git a/src/test/ssl/t/001_ssltests.pl b/src/test/ssl/t/001_ssltests.pl index b2eb18d3e815e..eaee88d027e83 100644 --- a/src/test/ssl/t/001_ssltests.pl +++ b/src/test/ssl/t/001_ssltests.pl @@ -748,33 +748,29 @@ sub switch_server_cert # pg_stat_ssl -my $serialno = `$ENV{OPENSSL} x509 -serial -noout -in ssl/client.crt`; -if ($? == 0) -{ - # OpenSSL prints serial numbers in hexadecimal and converting the serial - # from hex requires a 64-bit capable Perl as the serialnumber is based on - # the current timestamp. On 32-bit fall back to checking for it being an - # integer like how we do when grabbing the serial fails. - if ($Config{ivsize} == 8) - { - no warnings qw(portable); +# If the openssl program isn't available, or fails to run, fall back to a +# generic integer match rather than skipping the test. +my $serialno = '\d+'; - $serialno =~ s/^serial=//; - $serialno =~ s/\s+//g; - $serialno = hex($serialno); - } - else +if ($ENV{OPENSSL} ne '') +{ + $serialno = `$ENV{OPENSSL} x509 -serial -noout -in ssl/client.crt`; + if ($? == 0) { - $serialno = '\d+'; + # OpenSSL prints serial numbers in hexadecimal and converting the serial + # from hex requires a 64-bit capable Perl as the serialnumber is based on + # the current timestamp. On 32-bit fall back to checking for it being an + # integer like how we do when grabbing the serial fails. + if ($Config{ivsize} == 8) + { + no warnings qw(portable); + + $serialno =~ s/^serial=//; + $serialno =~ s/\s+//g; + $serialno = hex($serialno); + } } } -else -{ - # OpenSSL isn't functioning on the user's PATH. This probably isn't worth - # skipping the test over, so just fall back to a generic integer match. - warn "couldn't run \"$ENV{OPENSSL} x509\" to get client cert serialno"; - $serialno = '\d+'; -} command_like( [ From 3ccf8e9ac96e87c9ec4693d437f3c5531eafa1b6 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Fri, 17 Oct 2025 11:36:50 -0500 Subject: [PATCH 314/457] Fix privilege checks for pg_prewarm() on indexes. pg_prewarm() currently checks for SELECT privileges on the target relation. However, indexes do not have access rights of their own, so a role may be denied permission to prewarm an index despite having the SELECT privilege on its parent table. This commit fixes this by locking the parent table before the index (to avoid deadlocks) and checking for SELECT on the parent table. Note that the code is largely borrowed from amcheck_lock_relation_and_check(). An obvious downside of this change is the extra AccessShareLock on the parent table during prewarming, but that isn't expected to cause too much trouble in practice. Author: Ayush Vatsa Co-authored-by: Nathan Bossart Reviewed-by: Tom Lane Reviewed-by: Jeff Davis Discussion: https://postgr.es/m/CACX%2BKaMz2ZoOojh0nQ6QNBYx8Ak1Dkoko%3DD4FSb80BYW%2Bo8CHQ%40mail.gmail.com Backpatch-through: 13 --- contrib/pg_prewarm/pg_prewarm.c | 47 +++++++++++++++++++++++++++++-- contrib/pg_prewarm/t/001_basic.pl | 29 ++++++++++++++++++- 2 files changed, 72 insertions(+), 4 deletions(-) diff --git a/contrib/pg_prewarm/pg_prewarm.c b/contrib/pg_prewarm/pg_prewarm.c index b968933ea8b6c..5b519a2c85422 100644 --- a/contrib/pg_prewarm/pg_prewarm.c +++ b/contrib/pg_prewarm/pg_prewarm.c @@ -16,9 +16,11 @@ #include #include "access/relation.h" +#include "catalog/index.h" #include "fmgr.h" #include "miscadmin.h" #include "storage/bufmgr.h" +#include "storage/lmgr.h" #include "storage/read_stream.h" #include "storage/smgr.h" #include "utils/acl.h" @@ -71,6 +73,8 @@ pg_prewarm(PG_FUNCTION_ARGS) char *ttype; PrewarmType ptype; AclResult aclresult; + char relkind; + Oid privOid; /* Basic sanity checking. */ if (PG_ARGISNULL(0)) @@ -106,9 +110,43 @@ pg_prewarm(PG_FUNCTION_ARGS) forkString = text_to_cstring(forkName); forkNumber = forkname_to_number(forkString); - /* Open relation and check privileges. */ + /* + * Open relation and check privileges. If the relation is an index, we + * must check the privileges on its parent table instead. + */ + relkind = get_rel_relkind(relOid); + if (relkind == RELKIND_INDEX || + relkind == RELKIND_PARTITIONED_INDEX) + { + privOid = IndexGetRelation(relOid, true); + + /* Lock table before index to avoid deadlock. */ + if (OidIsValid(privOid)) + LockRelationOid(privOid, AccessShareLock); + } + else + privOid = relOid; + rel = relation_open(relOid, AccessShareLock); - aclresult = pg_class_aclcheck(relOid, GetUserId(), ACL_SELECT); + + /* + * It's possible that the relation with OID "privOid" was dropped and the + * OID was reused before we locked it. If that happens, we could be left + * with the wrong parent table OID, in which case we must ERROR. It's + * possible that such a race would change the outcome of + * get_rel_relkind(), too, but the worst case scenario there is that we'll + * check privileges on the index instead of its parent table, which isn't + * too terrible. + */ + if (!OidIsValid(privOid) || + (privOid != relOid && + privOid != IndexGetRelation(relOid, true))) + ereport(ERROR, + (errcode(ERRCODE_UNDEFINED_TABLE), + errmsg("could not find parent table of index \"%s\"", + RelationGetRelationName(rel)))); + + aclresult = pg_class_aclcheck(privOid, GetUserId(), ACL_SELECT); if (aclresult != ACLCHECK_OK) aclcheck_error(aclresult, get_relkind_objtype(rel->rd_rel->relkind), get_rel_name(relOid)); @@ -233,8 +271,11 @@ pg_prewarm(PG_FUNCTION_ARGS) read_stream_end(stream); } - /* Close relation, release lock. */ + /* Close relation, release locks. */ relation_close(rel, AccessShareLock); + if (privOid != relOid) + UnlockRelationOid(privOid, AccessShareLock); + PG_RETURN_INT64(blocks_done); } diff --git a/contrib/pg_prewarm/t/001_basic.pl b/contrib/pg_prewarm/t/001_basic.pl index 0a8259d367854..a77ab67d29e83 100644 --- a/contrib/pg_prewarm/t/001_basic.pl +++ b/contrib/pg_prewarm/t/001_basic.pl @@ -23,7 +23,9 @@ $node->safe_psql("postgres", "CREATE EXTENSION pg_prewarm;\n" . "CREATE TABLE test(c1 int);\n" - . "INSERT INTO test SELECT generate_series(1, 100);"); + . "INSERT INTO test SELECT generate_series(1, 100);\n" + . "CREATE INDEX test_idx ON test(c1);\n" + . "CREATE ROLE test_user LOGIN;"); # test read mode my $result = @@ -42,6 +44,31 @@ or $stderr =~ qr/prefetch is not supported by this build/), 'prefetch mode succeeded'); +# test_user should be unable to prewarm table/index without privileges +($cmdret, $stdout, $stderr) = + $node->psql( + "postgres", "SELECT pg_prewarm('test');", + extra_params => [ '--username' => 'test_user' ]); +ok($stderr =~ /permission denied for table test/, 'pg_prewarm failed as expected'); +($cmdret, $stdout, $stderr) = + $node->psql( + "postgres", "SELECT pg_prewarm('test_idx');", + extra_params => [ '--username' => 'test_user' ]); +ok($stderr =~ /permission denied for index test_idx/, 'pg_prewarm failed as expected'); + +# test_user should be able to prewarm table/index with privileges +$node->safe_psql("postgres", "GRANT SELECT ON test TO test_user;"); +$result = + $node->safe_psql( + "postgres", "SELECT pg_prewarm('test');", + extra_params => [ '--username' => 'test_user' ]); +like($result, qr/^[1-9][0-9]*$/, 'pg_prewarm succeeded as expected'); +$result = + $node->safe_psql( + "postgres", "SELECT pg_prewarm('test_idx');", + extra_params => [ '--username' => 'test_user' ]); +like($result, qr/^[1-9][0-9]*$/, 'pg_prewarm succeeded as expected'); + # test autoprewarm_dump_now() $result = $node->safe_psql("postgres", "SELECT autoprewarm_dump_now();"); like($result, qr/^[1-9][0-9]*$/, 'autoprewarm_dump_now succeeded'); From aa151022ec13f6a24f70c30dbfb9a5747db620e8 Mon Sep 17 00:00:00 2001 From: Tomas Vondra Date: Fri, 17 Oct 2025 21:44:42 +0200 Subject: [PATCH 315/457] Fix hashjoin memory balancing logic Commit a1b4f289beec improved the hashjoin sizing to also consider the memory used by BufFiles for batches. The code however had multiple issues, making it ineffective or not working as expected in some cases. * The amount of memory needed by buffers was calculated using uint32, so it would overflow for nbatch >= 262144. If this happened the loop would exit prematurely and the memory usage would not be reduced. The nbatch overflow is fixed by reworking the condition to not use a multiplication at all, so there's no risk of overflow. An explicit cast was added to a similar calculation in ExecHashIncreaseBatchSize. * The loop adjusting the nbatch value used hash_table_bytes to calculate the old/new size, but then updated only space_allowed. The consequence is the total memory usage was not reduced, but all the memory saved by reducing the number of batches was used for the internal hash table. This was fixed by using only space_allowed. This is also more correct, because hash_table_bytes does not account for skew buckets. * The code was also doubling multiple parameters (e.g. the number of buckets for hash table), but was missing overflow protections. The loop now checks for overflow, and terminates if needed. It'd be possible to cap the value and continue the loop, but it's not worth the complexity. And the overflow implies the in-memory hash table is already very large anyway. While at it, rework the comment explaining how the memory balancing works, to make it more concise and easier to understand. The initial nbatch overflow issue was reported by Vaibhav Jain. The other issues were noticed by me and Melanie Plageman. Fix by me, with a lot of review and feedback by Melanie. Backpatch to 18, where the hashjoin memory balancing was introduced. Reported-by: Vaibhav Jain Reviewed-by: Melanie Plageman Backpatch-through: 18 Discussion: https://postgr.es/m/CABa-Az174YvfFq7rLS+VNKaQyg7inA2exvPWmPWqnEn6Ditr_Q@mail.gmail.com --- src/backend/executor/nodeHash.c | 122 +++++++++++++++++--------------- 1 file changed, 64 insertions(+), 58 deletions(-) diff --git a/src/backend/executor/nodeHash.c b/src/backend/executor/nodeHash.c index 8d2201ab67fa5..7e0c93247a676 100644 --- a/src/backend/executor/nodeHash.c +++ b/src/backend/executor/nodeHash.c @@ -851,85 +851,91 @@ ExecChooseHashTableSize(double ntuples, int tupwidth, bool useskew, /* * Optimize the total amount of memory consumed by the hash node. * - * The nbatch calculation above focuses on the size of the in-memory hash - * table, assuming no per-batch overhead. Now adjust the number of batches - * and the size of the hash table to minimize total memory consumed by the - * hash node. - * - * Each batch file has a BLCKSZ buffer, and we may need two files per - * batch (inner and outer side). So with enough batches this can be - * significantly more memory than the hashtable itself. + * The nbatch calculation above focuses on the in-memory hash table, + * assuming no per-batch overhead. But each batch may have two files, each + * with a BLCKSZ buffer. For large nbatch values these buffers may use + * significantly more memory than the hash table. * * The total memory usage may be expressed by this formula: * - * (inner_rel_bytes / nbatch) + (2 * nbatch * BLCKSZ) <= hash_table_bytes + * (inner_rel_bytes / nbatch) + (2 * nbatch * BLCKSZ) * * where (inner_rel_bytes / nbatch) is the size of the in-memory hash * table and (2 * nbatch * BLCKSZ) is the amount of memory used by file - * buffers. But for sufficiently large values of inner_rel_bytes value - * there may not be a nbatch value that would make both parts fit into - * hash_table_bytes. - * - * In this case we can't enforce the memory limit - we're going to exceed - * it. We can however minimize the impact and use as little memory as - * possible. (We haven't really enforced it before either, as we simply - * ignored the batch files.) + * buffers. * - * The formula for total memory usage says that given an inner relation of - * size inner_rel_bytes, we may divide it into an arbitrary number of - * batches. This determines both the size of the in-memory hash table and - * the amount of memory needed for batch files. These two terms work in - * opposite ways - when one decreases, the other increases. + * The nbatch calculation however ignores the second part. And for very + * large inner_rel_bytes, there may be no nbatch that keeps total memory + * usage under the budget (work_mem * hash_mem_multiplier). To deal with + * that, we will adjust nbatch to minimize total memory consumption across + * both the hashtable and file buffers. * - * For low nbatch values, the hash table takes most of the memory, but at - * some point the batch files start to dominate. If you combine these two - * terms, the memory consumption (for a fixed size of the inner relation) - * has a u-shape, with a minimum at some nbatch value. + * As we increase the size of the hashtable, the number of batches + * decreases, and the total memory usage follows a U-shaped curve. We find + * the minimum nbatch by "walking back" -- checking if halving nbatch + * would lower the total memory usage. We stop when it no longer helps. * - * Our goal is to find this nbatch value, minimizing the memory usage. We - * calculate the memory usage with half the batches (i.e. nbatch/2), and - * if it's lower than the current memory usage we know it's better to use - * fewer batches. We repeat this until reducing the number of batches does - * not reduce the memory usage - we found the optimum. We know the optimum - * exists, thanks to the u-shape. + * We only reduce the number of batches. Adding batches reduces memory + * usage only when most of the memory is used by the hash table, with + * total memory usage within the limit or not far from it. We don't want + * to start batching when not needed, even if that would reduce memory + * usage. * - * We only want to do this when exceeding the memory limit, not every - * time. The goal is not to minimize memory usage in every case, but to - * minimize the memory usage when we can't stay within the memory limit. + * While growing the hashtable, we also adjust the number of buckets to + * maintain a load factor of NTUP_PER_BUCKET while squeezing tuples back + * from batches into the hashtable. * - * For this reason we only consider reducing the number of batches. We - * could try the opposite direction too, but that would save memory only - * when most of the memory is used by the hash table. And the hash table - * was used for the initial sizing, so we shouldn't be exceeding the - * memory limit too much. We might save memory by using more batches, but - * it would result in spilling more batch files, which does not seem like - * a great trade off. + * Note that we can only change nbuckets during initial hashtable sizing. + * Once we start building the hash, nbuckets is fixed (we may still grow + * the hash table). * - * While growing the hashtable, we also adjust the number of buckets, to - * not have more than one tuple per bucket (load factor 1). We can only do - * this during the initial sizing - once we start building the hash, - * nbucket is fixed. + * We double several parameters (space_allowed, nbuckets, num_skew_mcvs), + * which introduces a risk of overflow. We avoid this by exiting the loop. + * We could do something smarter (e.g. capping nbuckets and continue), but + * the complexity is not worth it. Such cases are extremely rare, and this + * is a best-effort attempt to reduce memory usage. */ - while (nbatch > 0) + while (nbatch > 1) { - /* how much memory are we using with current nbatch value */ - size_t current_space = hash_table_bytes + (2 * nbatch * BLCKSZ); + /* Check that buckets wont't overflow MaxAllocSize */ + if (nbuckets > (MaxAllocSize / sizeof(HashJoinTuple) / 2)) + break; + + /* num_skew_mcvs should be less than nbuckets */ + Assert((*num_skew_mcvs) < (INT_MAX / 2)); - /* how much memory would we use with half the batches */ - size_t new_space = hash_table_bytes * 2 + (nbatch * BLCKSZ); + /* + * Check that space_allowed won't overlow 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. + */ + if ((*space_allowed) > (SIZE_MAX / 2)) + break; - /* If the memory usage would not decrease, we found the optimum. */ - if (current_space < new_space) + /* + * Will halving the number of batches and doubling the size of the + * hashtable reduce overall memory usage? + * + * This is the same as (S = space_allowed): + * + * (S + 2 * nbatch * BLCKSZ) < (S * 2 + nbatch * BLCKSZ) + * + * but avoiding intermediate overflow. + */ + if (nbatch < (*space_allowed) / BLCKSZ) break; /* - * It's better to use half the batches, so do that and adjust the - * nbucket in the opposite direction, and double the allowance. + * MaxAllocSize is sufficiently small that we are not worried about + * overflowing nbuckets. */ - nbatch /= 2; nbuckets *= 2; + *num_skew_mcvs = (*num_skew_mcvs) * 2; *space_allowed = (*space_allowed) * 2; + + nbatch /= 2; } Assert(nbuckets > 0); @@ -995,14 +1001,14 @@ ExecHashIncreaseBatchSize(HashJoinTable hashtable) * How much additional memory would doubling nbatch use? Each batch may * require two buffered files (inner/outer), with a BLCKSZ buffer. */ - size_t batchSpace = (hashtable->nbatch * 2 * BLCKSZ); + size_t batchSpace = (hashtable->nbatch * 2 * (size_t) BLCKSZ); /* * Compare the new space needed for doubling nbatch and for enlarging the * in-memory hash table. If doubling the hash table needs less memory, * just do that. Otherwise, continue with doubling the nbatch. * - * We're either doubling spaceAllowed of batchSpace, so which of those + * We're either doubling spaceAllowed or batchSpace, so which of those * increases the memory usage the least is the same as comparing the * values directly. */ From 0b6a02f0355c8950ffe22b52eac86f6261e19caf Mon Sep 17 00:00:00 2001 From: David Rowley Date: Sat, 18 Oct 2025 16:07:41 +1300 Subject: [PATCH 316/457] Fix reset of incorrect hash iterator in GROUPING SETS queries This fixes an unlikely issue when fetching GROUPING SET results from their internally stored hash tables. It was possible in rare cases that the hash iterator would be set up incorrectly which could result in a crash. This was introduced in 4d143509c, so backpatch to v18. Many thanks to Yuri Zamyatin for reporting and helping to debug this issue. Bug: #19078 Reported-by: Yuri Zamyatin Author: David Rowley Reviewed-by: Jeff Davis Discussion: https://postgr.es/m/19078-dfd62f840a2c0766@postgresql.org Backpatch-through: 18 --- src/backend/executor/nodeAgg.c | 2 +- src/include/lib/simplehash.h | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/backend/executor/nodeAgg.c b/src/backend/executor/nodeAgg.c index 377e016d73225..c50fdef6b38f0 100644 --- a/src/backend/executor/nodeAgg.c +++ b/src/backend/executor/nodeAgg.c @@ -2912,7 +2912,7 @@ agg_retrieve_hash_table_in_memory(AggState *aggstate) perhash = &aggstate->perhash[aggstate->current_set]; - ResetTupleHashIterator(hashtable, &perhash->hashiter); + ResetTupleHashIterator(perhash->hashtable, &perhash->hashiter); continue; } diff --git a/src/include/lib/simplehash.h b/src/include/lib/simplehash.h index 327274c2340bf..9622131ede681 100644 --- a/src/include/lib/simplehash.h +++ b/src/include/lib/simplehash.h @@ -1044,6 +1044,10 @@ SH_START_ITERATE_AT(SH_TYPE * tb, SH_ITERATOR * iter, uint32 at) SH_SCOPE SH_ELEMENT_TYPE * SH_ITERATE(SH_TYPE * tb, SH_ITERATOR * iter) { + /* validate sanity of the given iterator */ + Assert(iter->cur < tb->size); + Assert(iter->end < tb->size); + while (!iter->done) { SH_ELEMENT_TYPE *elem; From 162e70ea06eb31dfe8f75bf508afde323eb0b077 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Sat, 18 Oct 2025 17:50:10 +0200 Subject: [PATCH 317/457] Fix pg_dump sorting of foreign key constraints MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Apparently, commit 04bc2c42f765 failed to notice that DO_FK_CONSTRAINT objects require identical handling as DO_CONSTRAINT ones, which causes some pg_upgrade tests in debug builds to fail spuriously. Add that. Author: Álvaro Herrera Backpatch-through: 13 Discussion: https://postgr.es/m/202510181201.k6y75v2tpf5r@alvherre.pgsql --- src/bin/pg_dump/pg_dump_sort.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/bin/pg_dump/pg_dump_sort.c b/src/bin/pg_dump/pg_dump_sort.c index 61a0f69ff3a53..edd7139ebfebd 100644 --- a/src/bin/pg_dump/pg_dump_sort.c +++ b/src/bin/pg_dump/pg_dump_sort.c @@ -385,7 +385,8 @@ DOTypeNameCompare(const void *p1, const void *p2) if (cmpval != 0) return cmpval; } - else if (obj1->objType == DO_CONSTRAINT) + else if (obj1->objType == DO_CONSTRAINT || + obj1->objType == DO_FK_CONSTRAINT) { ConstraintInfo *robj1 = *(ConstraintInfo *const *) p1; ConstraintInfo *robj2 = *(ConstraintInfo *const *) p2; From 0fe07fa115f520a67b9a9180cea703e91d8c7ac4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Sat, 18 Oct 2025 18:18:19 +0200 Subject: [PATCH 318/457] Fix determination of not-null constraint "locality" for inherited columns It is possible to have a non-inherited not-null constraint on an inherited column, but we were failing to preserve such constraints during pg_upgrade where the source is 17 or older, because of a bug in the pg_dump query for it. Oversight in commit 14e87ffa5c54. Fix that query. In passing, touch-up a bogus nearby comment introduced by the same commit. In version 17, make the regression tests leave a table in this situation, so that this scenario is tested in the cross-version upgrade tests of 18 and up. Author: Dilip Kumar Reported-by: Andrew Bille Bug: #19074 Backpatch-through: 18 Discussion: https://postgr.es/m/19074-ae2548458cf0195c@postgresql.org --- src/bin/pg_dump/pg_dump.c | 8 +++++--- src/test/regress/expected/constraints.out | 4 ++++ src/test/regress/sql/constraints.sql | 5 +++++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index dd7d5b514f3c8..35e7581d66da9 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -9179,8 +9179,7 @@ getTableAttrs(Archive *fout, TableInfo *tblinfo, int numTables) * * We track in notnull_islocal whether the constraint was defined directly * in this table or via an ancestor, for binary upgrade. flagInhAttrs - * might modify this later; that routine is also in charge of determining - * the correct inhcount. + * might modify this later. */ if (fout->remoteVersion >= 180000) appendPQExpBufferStr(q, @@ -9197,7 +9196,10 @@ getTableAttrs(Archive *fout, TableInfo *tblinfo, int numTables) "NULL AS notnull_comment,\n" "NULL AS notnull_invalidoid,\n" "false AS notnull_noinherit,\n" - "a.attislocal AS notnull_islocal,\n"); + "CASE WHEN a.attislocal THEN true\n" + " WHEN a.attnotnull AND NOT a.attislocal THEN true\n" + " ELSE false\n" + "END AS notnull_islocal,\n"); if (fout->remoteVersion >= 140000) appendPQExpBufferStr(q, diff --git a/src/test/regress/expected/constraints.out b/src/test/regress/expected/constraints.out index 3590d3274f05a..dda67798cb331 100644 --- a/src/test/regress/expected/constraints.out +++ b/src/test/regress/expected/constraints.out @@ -1705,3 +1705,7 @@ DROP ROLE regress_constraint_comments_noaccess; CREATE DOMAIN constraint_comments_dom AS int; ALTER DOMAIN constraint_comments_dom ADD CONSTRAINT inv_ck CHECK (value > 0) NOT VALID; COMMENT ON CONSTRAINT inv_ck ON DOMAIN constraint_comments_dom IS 'comment on invalid constraint'; +-- Create a table that exercises pg_upgrade +CREATE TABLE regress_notnull1 (a integer); +CREATE TABLE regress_notnull2 () INHERITS (regress_notnull1); +ALTER TABLE ONLY regress_notnull2 ALTER COLUMN a SET NOT NULL; diff --git a/src/test/regress/sql/constraints.sql b/src/test/regress/sql/constraints.sql index 1f6dc8fd69f6d..0a6290bc57167 100644 --- a/src/test/regress/sql/constraints.sql +++ b/src/test/regress/sql/constraints.sql @@ -1049,3 +1049,8 @@ CREATE DOMAIN constraint_comments_dom AS int; ALTER DOMAIN constraint_comments_dom ADD CONSTRAINT inv_ck CHECK (value > 0) NOT VALID; COMMENT ON CONSTRAINT inv_ck ON DOMAIN constraint_comments_dom IS 'comment on invalid constraint'; + +-- Create a table that exercises pg_upgrade +CREATE TABLE regress_notnull1 (a integer); +CREATE TABLE regress_notnull2 () INHERITS (regress_notnull1); +ALTER TABLE ONLY regress_notnull2 ALTER COLUMN a SET NOT NULL; From c29d32d27bd3ef09fd7c4c372d2be18f4b8ad195 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 18 Oct 2025 18:36:21 -0400 Subject: [PATCH 319/457] Allow role created by new test to log in on Windows. We must tell init about each role name we plan to connect as, else SSPI auth fails. Similar to previous patches such as 14793f471, 973542866. Oversight in 208927e65, per buildfarm member drongo. (Although that was back-patched to v13, the test script only exists in v16 and up.) --- contrib/pg_prewarm/t/001_basic.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contrib/pg_prewarm/t/001_basic.pl b/contrib/pg_prewarm/t/001_basic.pl index a77ab67d29e83..ed70ceb4fca03 100644 --- a/contrib/pg_prewarm/t/001_basic.pl +++ b/contrib/pg_prewarm/t/001_basic.pl @@ -11,7 +11,7 @@ my $node = PostgreSQL::Test::Cluster->new('main'); -$node->init; +$node->init('auth_extra' => [ '--create-role', 'test_user' ]); $node->append_conf( 'postgresql.conf', qq{shared_preload_libraries = 'pg_prewarm' From aa1fcd087e5f709505aa0b9e15c1f3a0ce8b826c Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 19 Oct 2025 14:36:58 -0400 Subject: [PATCH 320/457] Don't rely on zlib's gzgetc() macro. It emerges that zlib's configuration logic is not robust enough to guarantee that the macro will have the same ideas about struct field layout as the library itself does, leading to corruption of zlib's state struct followed by unintelligible failure messages. This hazard has existed for a long time, but we'd not noticed for several reasons: (1) We only use gzgetc() when trying to read a manually-compressed TOC file within a directory-format dump, which is a rarely-used scenario that we weren't even testing before 20ec99589. (2) No corruption actually occurs unless sizeof(long) is different from sizeof(off_t) and the platform is big-endian. (3) Some platforms have already fixed the configuration instability, at least sufficiently for their environments. Despite (3), it seems foolish to assume that the problem isn't going to be present in some environments for a long time to come. Hence, avoid relying on this macro. We can just #undef it and fall back on the underlying function of the same name. Author: Tom Lane Discussion: https://postgr.es/m/2122679.1760846783@sss.pgh.pa.us Backpatch-through: 13 --- src/bin/pg_dump/compress_gzip.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/bin/pg_dump/compress_gzip.c b/src/bin/pg_dump/compress_gzip.c index ad3b64860272e..be31209f8116a 100644 --- a/src/bin/pg_dump/compress_gzip.c +++ b/src/bin/pg_dump/compress_gzip.c @@ -20,6 +20,15 @@ #ifdef HAVE_LIBZ #include +/* + * We don't use the gzgetc() macro, because zlib's configuration logic is not + * robust enough to guarantee that the macro will have the same ideas about + * struct field layout as the library itself does; see for example + * https://gnats.netbsd.org/cgi-bin/query-pr-single.pl?number=59711 + * Instead, #undef the macro and fall back to the underlying function. + */ +#undef gzgetc + /*---------------------- * Compressor API *---------------------- From 399a9e04e5491f8a76ffb482f4a86b9acb6f91fb Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 20 Oct 2025 08:45:57 -0400 Subject: [PATCH 321/457] Fix thinko in commit 7d129ba54. The revised logic in 001_ssltests.pl would fail if openssl doesn't work or if Perl is a 32-bit build, because it had already overwritten $serialno with something inappropriate to use in the eventual match. We could go back to the previous code layout, but it seems best to introduce a separate variable for the output of openssl. Per failure on buildfarm member mamba, which has a 32-bit Perl. --- src/test/ssl/t/001_ssltests.pl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/test/ssl/t/001_ssltests.pl b/src/test/ssl/t/001_ssltests.pl index eaee88d027e83..310d70a4c08e7 100644 --- a/src/test/ssl/t/001_ssltests.pl +++ b/src/test/ssl/t/001_ssltests.pl @@ -754,7 +754,7 @@ sub switch_server_cert if ($ENV{OPENSSL} ne '') { - $serialno = `$ENV{OPENSSL} x509 -serial -noout -in ssl/client.crt`; + my $serialstr = `$ENV{OPENSSL} x509 -serial -noout -in ssl/client.crt`; if ($? == 0) { # OpenSSL prints serial numbers in hexadecimal and converting the serial @@ -765,9 +765,9 @@ sub switch_server_cert { no warnings qw(portable); - $serialno =~ s/^serial=//; - $serialno =~ s/\s+//g; - $serialno = hex($serialno); + $serialstr =~ s/^serial=//; + $serialstr =~ s/\s+//g; + $serialno = hex($serialstr); } } } From a72f7d97bea9fe74e8b0eb6ab3d9ab422d02ce4f Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 20 Oct 2025 10:36:41 -0400 Subject: [PATCH 322/457] Add .abi-compliance-history to v18 branch. This is just a quick commit to verify that the buildfarm ABI checker responds to this control file. Once we've tested that, we will update the file to point at c8af5019b. There's documentation mop-up yet to do, too. Discussion: https://postgr.es/m/aPJ03E2itovDBcKX@nathan Backpatch-through: 18 only --- .abi-compliance-history | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 .abi-compliance-history diff --git a/.abi-compliance-history b/.abi-compliance-history new file mode 100644 index 0000000000000..3d0d26aff909a --- /dev/null +++ b/.abi-compliance-history @@ -0,0 +1,7 @@ +# Reference point for ABI compliance checks +# Add new entries by adding the output of the following to the top of the file: +# $ git log --pretty=format:"%H # %cd%n# %s" $ABIBREAKGITHASH -1 --date=iso +# +# Initial entry would normally point to a commit slightly before the .0 stamp. +9bbcec6030a2744d83311370ec92213fbd76e514 # 2025-09-22 14:18:56 +0200 +# Translation updates From 52b05b068615ca13bc9aab6bd316c9a81c2e4d9a Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 21 Oct 2025 08:08:25 +0900 Subject: [PATCH 323/457] Fix POSIX compliance in pgwin32_unsetenv() for "name" argument pgwin32_unsetenv() (compatibility routine of unsetenv() on Windows) lacks the input validation that its sibling pgwin32_setenv() has. Without these checks, calling unsetenv() with incorrect names crashes on WIN32. However, invalid names should be handled, failing on EINVAL. This commit adds the same checks as setenv() to fail with EINVAL for a "name" set to NULL, an empty string, or if '=' is included in the value, per POSIX requirements. Like 7ca37fb0406b, backpatch down to v14. pgwin32_unsetenv() is defined on REL_13_STABLE, but with the branch going EOL soon and the lack of setenv() there for WIN32, nothing is done for v13. Author: Bryan Green Discussion: https://postgr.es/m/b6a1e52b-d808-4df7-87f7-2ff48d15003e@gmail.com Backpatch-through: 14 --- src/port/win32env.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/port/win32env.c b/src/port/win32env.c index b22fbafde4012..e1cee683dbf9d 100644 --- a/src/port/win32env.c +++ b/src/port/win32env.c @@ -152,6 +152,13 @@ pgwin32_unsetenv(const char *name) int res; char *envbuf; + /* Error conditions, per POSIX */ + if (name == NULL || name[0] == '\0' || strchr(name, '=') != NULL) + { + errno = EINVAL; + return -1; + } + envbuf = (char *) malloc(strlen(name) + 2); if (!envbuf) return -1; From 40c2428307b82d590f0caf73c93a5cdaf721e8b8 Mon Sep 17 00:00:00 2001 From: Richard Guo Date: Tue, 21 Oct 2025 12:35:36 +0900 Subject: [PATCH 324/457] Fix pushdown of degenerate HAVING clauses 67a54b9e8 taught the planner to push down HAVING clauses even when grouping sets are present, as long as the clause does not reference any columns that are nullable by the grouping sets. However, there was an oversight: if any empty grouping sets are present, the aggregation node can produce a row that did not come from the input, and pushing down a HAVING clause in this case may cause us to fail to filter out that row. Currently, non-degenerate HAVING clauses are not pushed down when empty grouping sets are present, since the empty grouping sets would nullify the vars they reference. However, degenerate (variable-free) HAVING clauses are not subject to this restriction and may be incorrectly pushed down. To fix, explicitly check for the presence of empty grouping sets and retain degenerate clauses in HAVING when they are present. This ensures that we don't emit a bogus aggregated row. A copy of each such clause is also put in WHERE so that query_planner() can use it in a gating Result node. To facilitate this check, this patch expands the groupingSets tree of the query to a flat list of grouping sets before applying the HAVING pushdown optimization. This does not add any additional planning overhead, since we need to do this expansion anyway. In passing, make a small tweak to preprocess_grouping_sets() by reordering its initial operations a bit. Backpatch to v18, where this issue was introduced. Reported-by: Yuhang Qiu Author: Richard Guo Author: Tom Lane Discussion: https://postgr.es/m/0879D9C9-7FE2-4A20-9593-B23F7A0B5290@gmail.com Backpatch-through: 18 --- src/backend/optimizer/plan/planner.c | 67 +++++++++++------- src/test/regress/expected/groupingsets.out | 82 +++++++++++++++++++++- src/test/regress/sql/groupingsets.sql | 20 +++++- 3 files changed, 143 insertions(+), 26 deletions(-) diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index 0bd62d1e69477..b8d622d88ca67 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -1097,15 +1097,28 @@ subquery_planner(PlannerGlobal *glob, Query *parse, PlannerInfo *parent_root, if (parse->hasTargetSRFs) parse->hasTargetSRFs = expression_returns_set((Node *) parse->targetList); + /* + * If we have grouping sets, expand the groupingSets tree of this query to + * a flat list of grouping sets. We need to do this before optimizing + * HAVING, since we can't easily tell if there's an empty grouping set + * until we have this representation. + */ + if (parse->groupingSets) + { + parse->groupingSets = + expand_grouping_sets(parse->groupingSets, parse->groupDistinct, -1); + } + /* * In some cases we may want to transfer a HAVING clause into WHERE. We * cannot do so if the HAVING clause contains aggregates (obviously) or * volatile functions (since a HAVING clause is supposed to be executed - * only once per group). We also can't do this if there are any nonempty - * grouping sets and the clause references any columns that are nullable - * by the grouping sets; moving such a clause into WHERE would potentially - * change the results. (If there are only empty grouping sets, then the - * HAVING clause must be degenerate as discussed below.) + * only once per group). We also can't do this if there are any grouping + * sets and the clause references any columns that are nullable by the + * grouping sets; the nulled values of those columns are not available + * before the grouping step. (The test on groupClause might seem wrong, + * but it's okay: it's just an optimization to avoid running pull_varnos + * when there cannot be any Vars in the HAVING clause.) * * Also, it may be that the clause is so expensive to execute that we're * better off doing it only once per group, despite the loss of @@ -1115,19 +1128,19 @@ subquery_planner(PlannerGlobal *glob, Query *parse, PlannerInfo *parent_root, * clause into WHERE, in hopes of eliminating tuples before aggregation * instead of after. * - * If the query has explicit grouping then we can simply move such a + * If the query has no empty grouping set then we can simply move such a * clause into WHERE; any group that fails the clause will not be in the * output because none of its tuples will reach the grouping or - * aggregation stage. Otherwise we must have a degenerate (variable-free) - * HAVING clause, which we put in WHERE so that query_planner() can use it - * in a gating Result node, but also keep in HAVING to ensure that we - * don't emit a bogus aggregated row. (This could be done better, but it - * seems not worth optimizing.) + * aggregation stage. Otherwise we have to keep the clause in HAVING to + * ensure that we don't emit a bogus aggregated row. But then the HAVING + * clause must be degenerate (variable-free), so we can copy it into WHERE + * so that query_planner() can use it in a gating Result node. (This could + * be done better, but it seems not worth optimizing.) * * Note that a HAVING clause may contain expressions that are not fully * preprocessed. This can happen if these expressions are part of * grouping items. In such cases, they are replaced with GROUP Vars in - * the parser and then replaced back after we've done with expression + * the parser and then replaced back after we're done with expression * preprocessing on havingQual. This is not an issue if the clause * remains in HAVING, because these expressions will be matched to lower * target items in setrefs.c. However, if the clause is moved or copied @@ -1152,8 +1165,11 @@ subquery_planner(PlannerGlobal *glob, Query *parse, PlannerInfo *parent_root, /* keep it in HAVING */ newHaving = lappend(newHaving, havingclause); } - else if (parse->groupClause) + else if (parse->groupClause && + (parse->groupingSets == NIL || + (List *) linitial(parse->groupingSets) != NIL)) { + /* There is GROUP BY, but no empty grouping set */ Node *whereclause; /* Preprocess the HAVING clause fully */ @@ -1166,6 +1182,7 @@ subquery_planner(PlannerGlobal *glob, Query *parse, PlannerInfo *parent_root, } else { + /* There is an empty grouping set (perhaps implicitly) */ Node *whereclause; /* Preprocess the HAVING clause fully */ @@ -2152,10 +2169,13 @@ grouping_planner(PlannerInfo *root, double tuple_fraction, } /* - * Do preprocessing for groupingSets clause and related data. This handles the - * preliminary steps of expanding the grouping sets, organizing them into lists - * of rollups, and preparing annotations which will later be filled in with - * size estimates. + * Do preprocessing for groupingSets clause and related data. + * + * We expect that parse->groupingSets has already been expanded into a flat + * list of grouping sets (that is, just integer Lists of ressortgroupref + * numbers) by expand_grouping_sets(). This function handles the preliminary + * steps of organizing the grouping sets into lists of rollups, and preparing + * annotations which will later be filled in with size estimates. */ static grouping_sets_data * preprocess_grouping_sets(PlannerInfo *root) @@ -2166,19 +2186,18 @@ preprocess_grouping_sets(PlannerInfo *root) ListCell *lc_set; grouping_sets_data *gd = palloc0(sizeof(grouping_sets_data)); - parse->groupingSets = expand_grouping_sets(parse->groupingSets, parse->groupDistinct, -1); - - gd->any_hashable = false; - gd->unhashable_refs = NULL; - gd->unsortable_refs = NULL; - gd->unsortable_sets = NIL; - /* * We don't currently make any attempt to optimize the groupClause when * there are grouping sets, so just duplicate it in processed_groupClause. */ root->processed_groupClause = parse->groupClause; + /* Detect unhashable and unsortable grouping expressions */ + gd->any_hashable = false; + gd->unhashable_refs = NULL; + gd->unsortable_refs = NULL; + gd->unsortable_sets = NIL; + if (parse->groupClause) { ListCell *lc; diff --git a/src/test/regress/expected/groupingsets.out b/src/test/regress/expected/groupingsets.out index 35e4cb47ebed5..09b09ab03470c 100644 --- a/src/test/regress/expected/groupingsets.out +++ b/src/test/regress/expected/groupingsets.out @@ -889,7 +889,8 @@ explain (costs off) -> Seq Scan on gstest2 (10 rows) --- test pushdown of HAVING clause that does not reference any columns that are nullable by grouping sets +-- test pushdown of non-degenerate HAVING clause that does not reference any +-- columns that are nullable by grouping sets explain (costs off) select a, b, count(*) from gstest2 group by grouping sets ((a, b), (a)) having a > 1 and b > 1; QUERY PLAN @@ -910,6 +911,85 @@ select a, b, count(*) from gstest2 group by grouping sets ((a, b), (a)) having a 2 | 2 | 1 (1 row) +explain (costs off) +select a, b, count(*) from gstest2 group by rollup(a), b having b > 1; + QUERY PLAN +--------------------------------- + GroupAggregate + Group Key: b, a + Group Key: b + -> Sort + Sort Key: b, a + -> Seq Scan on gstest2 + Filter: (b > 1) +(7 rows) + +select a, b, count(*) from gstest2 group by rollup(a), b having b > 1; + a | b | count +---+---+------- + 1 | 2 | 1 + 2 | 2 | 1 + | 2 | 2 +(3 rows) + +-- test pushdown of degenerate HAVING clause +explain (costs off) +select count(*) from gstest2 group by grouping sets (()) having false; + QUERY PLAN +----------------------------------- + Aggregate + Group Key: () + Filter: false + -> Result + Replaces: Scan on gstest2 + One-Time Filter: false +(6 rows) + +select count(*) from gstest2 group by grouping sets (()) having false; + count +------- +(0 rows) + +explain (costs off) +select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; + QUERY PLAN +----------------------------------------- + GroupAggregate + Group Key: a + Group Key: () + Filter: false + -> Sort + Sort Key: a + -> Result + Replaces: Scan on gstest2 + One-Time Filter: false +(9 rows) + +select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; + a | count +---+------- +(0 rows) + +explain (costs off) +select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having false; + QUERY PLAN +----------------------------------------- + GroupAggregate + Group Key: a + Sort Key: b + Group Key: b + -> Sort + Sort Key: a + -> Result + Replaces: Scan on gstest2 + One-Time Filter: false +(9 rows) + +select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having false; + a | b | count +---+---+------- +(0 rows) + -- HAVING with GROUPING queries select ten, grouping(ten) from onek group by grouping sets(ten) having grouping(ten) >= 0 diff --git a/src/test/regress/sql/groupingsets.sql b/src/test/regress/sql/groupingsets.sql index 38d3cdd0fd89a..6d875475fae1e 100644 --- a/src/test/regress/sql/groupingsets.sql +++ b/src/test/regress/sql/groupingsets.sql @@ -290,11 +290,29 @@ explain (costs off) select v.c, (select count(*) from gstest2 group by () having v.c) from (values (false),(true)) v(c) order by v.c; --- test pushdown of HAVING clause that does not reference any columns that are nullable by grouping sets +-- test pushdown of non-degenerate HAVING clause that does not reference any +-- columns that are nullable by grouping sets explain (costs off) select a, b, count(*) from gstest2 group by grouping sets ((a, b), (a)) having a > 1 and b > 1; select a, b, count(*) from gstest2 group by grouping sets ((a, b), (a)) having a > 1 and b > 1; +explain (costs off) +select a, b, count(*) from gstest2 group by rollup(a), b having b > 1; +select a, b, count(*) from gstest2 group by rollup(a), b having b > 1; + +-- test pushdown of degenerate HAVING clause +explain (costs off) +select count(*) from gstest2 group by grouping sets (()) having false; +select count(*) from gstest2 group by grouping sets (()) having false; + +explain (costs off) +select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; +select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; + +explain (costs off) +select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having false; +select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having false; + -- HAVING with GROUPING queries select ten, grouping(ten) from onek group by grouping sets(ten) having grouping(ten) >= 0 From ee49f2cf447ab3191164aec82410dc52f7960c6f Mon Sep 17 00:00:00 2001 From: Richard Guo Date: Tue, 21 Oct 2025 14:12:13 +0900 Subject: [PATCH 325/457] Fix test case from 40c242830 I mistakenly included the "Replaces" lines describing the origin of Result nodes in groupingsets.out, which actually come from a feature not available in v18. Mea culpa. Per buildfarm. Discussion: https://postgr.es/m/CAMbWs4_VxjdM-nBvt8YE=84rE4OLBES27Wz1P0=9Z6KgwPqzEA@mail.gmail.com --- src/test/regress/expected/groupingsets.out | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/test/regress/expected/groupingsets.out b/src/test/regress/expected/groupingsets.out index 09b09ab03470c..4c9b439f1c78d 100644 --- a/src/test/regress/expected/groupingsets.out +++ b/src/test/regress/expected/groupingsets.out @@ -935,15 +935,14 @@ select a, b, count(*) from gstest2 group by rollup(a), b having b > 1; -- test pushdown of degenerate HAVING clause explain (costs off) select count(*) from gstest2 group by grouping sets (()) having false; - QUERY PLAN ------------------------------------ + QUERY PLAN +-------------------------------- Aggregate Group Key: () Filter: false -> Result - Replaces: Scan on gstest2 One-Time Filter: false -(6 rows) +(5 rows) select count(*) from gstest2 group by grouping sets (()) having false; count @@ -952,8 +951,8 @@ select count(*) from gstest2 group by grouping sets (()) having false; explain (costs off) select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; - QUERY PLAN ------------------------------------------ + QUERY PLAN +-------------------------------------- GroupAggregate Group Key: a Group Key: () @@ -961,9 +960,8 @@ select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; -> Sort Sort Key: a -> Result - Replaces: Scan on gstest2 One-Time Filter: false -(9 rows) +(8 rows) select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; a | count @@ -972,8 +970,8 @@ select a, count(*) from gstest2 group by grouping sets ((a), ()) having false; explain (costs off) select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having false; - QUERY PLAN ------------------------------------------ + QUERY PLAN +-------------------------------------- GroupAggregate Group Key: a Sort Key: b @@ -981,9 +979,8 @@ select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having fals -> Sort Sort Key: a -> Result - Replaces: Scan on gstest2 One-Time Filter: false -(9 rows) +(8 rows) select a, b, count(*) from gstest2 group by grouping sets ((a), (b)) having false; a | b | count From b2abcfa33a7c2184d96fe62029195773bb8a4032 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Tue, 21 Oct 2025 16:12:34 +0900 Subject: [PATCH 326/457] Fix comment in pg_get_shmem_allocations_numa() The comment fixed in this commit described the function as dealing with database blocks, but in reality it processes shared memory allocations. Author: Bertrand Drouvot Discussion: https://postgr.es/m/aH4DDhdiG9Gi0rG7@ip-10-97-1-34.eu-west-3.compute.internal Backpatch-through: 18 --- src/backend/storage/ipc/shmem.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/backend/storage/ipc/shmem.c b/src/backend/storage/ipc/shmem.c index ca3656fc76f43..ff3a738c19cb7 100644 --- a/src/backend/storage/ipc/shmem.c +++ b/src/backend/storage/ipc/shmem.c @@ -606,16 +606,13 @@ pg_get_shmem_allocations_numa(PG_FUNCTION_ARGS) nodes = palloc(sizeof(Size) * (max_nodes + 1)); /* - * Different database block sizes (4kB, 8kB, ..., 32kB) can be used, while - * the OS may have different memory page sizes. + * Shared memory allocations can vary in size and may not align with OS + * memory page boundaries, while NUMA queries work on pages. * - * To correctly map between them, we need to: 1. Determine the OS memory - * page size 2. Calculate how many OS pages are used by all buffer blocks - * 3. Calculate how many OS pages are contained within each database - * block. - * - * This information is needed before calling move_pages() for NUMA memory - * node inquiry. + * To correctly map each allocation to NUMA nodes, we need to: 1. + * Determine the OS memory page size. 2. Align each allocation's start/end + * addresses to page boundaries. 3. Query NUMA node information for all + * pages spanning the allocation. */ os_page_size = pg_get_shmem_pagesize(); From 715983a81ac85a2d78ba1e2a7fe00bcf62f4ad3c Mon Sep 17 00:00:00 2001 From: David Rowley Date: Tue, 21 Oct 2025 20:46:49 +1300 Subject: [PATCH 327/457] Fix BRIN 32-bit counter wrap issue with huge tables A BlockNumber (32-bit) might not be large enough to add bo_pagesPerRange to when the table contains close to 2^32 pages. At worst, this could result in a cancellable infinite loop during the BRIN index scan with power-of-2 pagesPerRange, and slow (inefficient) BRIN index scans and scanning of unneeded heap blocks for non power-of-2 pagesPerRange. Backpatch to all supported versions. Author: sunil s Reviewed-by: David Rowley Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/CAOG6S4-tGksTQhVzJM19NzLYAHusXsK2HmADPZzGQcfZABsvpA@mail.gmail.com Backpatch-through: 13 --- src/backend/access/brin/brin.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/backend/access/brin/brin.c b/src/backend/access/brin/brin.c index 4204088fa0d7d..57e8465e91f1e 100644 --- a/src/backend/access/brin/brin.c +++ b/src/backend/access/brin/brin.c @@ -573,7 +573,6 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm) Relation heapRel; BrinOpaque *opaque; BlockNumber nblocks; - BlockNumber heapBlk; int64 totalpages = 0; FmgrInfo *consistentFn; MemoryContext oldcxt; @@ -735,9 +734,10 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm) /* * Now scan the revmap. We start by querying for heap page 0, * incrementing by the number of pages per range; this gives us a full - * view of the table. + * view of the table. We make use of uint64 for heapBlk as a BlockNumber + * could wrap for tables with close to 2^32 pages. */ - for (heapBlk = 0; heapBlk < nblocks; heapBlk += opaque->bo_pagesPerRange) + for (uint64 heapBlk = 0; heapBlk < nblocks; heapBlk += opaque->bo_pagesPerRange) { bool addrange; bool gottuple = false; @@ -749,7 +749,7 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm) MemoryContextReset(perRangeCxt); - tup = brinGetTupleForHeapBlock(opaque->bo_rmAccess, heapBlk, &buf, + tup = brinGetTupleForHeapBlock(opaque->bo_rmAccess, (BlockNumber ) heapBlk, &buf, &off, &size, BUFFER_LOCK_SHARE); if (tup) { @@ -924,7 +924,7 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm) /* add the pages in the range to the output bitmap, if needed */ if (addrange) { - BlockNumber pageno; + uint64 pageno; for (pageno = heapBlk; pageno <= Min(nblocks, heapBlk + opaque->bo_pagesPerRange) - 1; From 2795f5a5428fd292996fd155f16a57b0db3df8f4 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Tue, 21 Oct 2025 09:56:26 -0500 Subject: [PATCH 328/457] Re-pgindent brin.c. Backpatch-through: 13 --- src/backend/access/brin/brin.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/access/brin/brin.c b/src/backend/access/brin/brin.c index 57e8465e91f1e..6afd5367c592a 100644 --- a/src/backend/access/brin/brin.c +++ b/src/backend/access/brin/brin.c @@ -749,7 +749,7 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm) MemoryContextReset(perRangeCxt); - tup = brinGetTupleForHeapBlock(opaque->bo_rmAccess, (BlockNumber ) heapBlk, &buf, + tup = brinGetTupleForHeapBlock(opaque->bo_rmAccess, (BlockNumber) heapBlk, &buf, &off, &size, BUFFER_LOCK_SHARE); if (tup) { @@ -924,7 +924,7 @@ bringetbitmap(IndexScanDesc scan, TIDBitmap *tbm) /* add the pages in the range to the output bitmap, if needed */ if (addrange) { - uint64 pageno; + uint64 pageno; for (pageno = heapBlk; pageno <= Min(nblocks, heapBlk + opaque->bo_pagesPerRange) - 1; From b797c2854964cc1a940a8ea2bb7ce2dc04401129 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Tue, 21 Oct 2025 10:02:19 -0500 Subject: [PATCH 329/457] Add previous commit to .git-blame-ignore-revs. Backpatch-through: 13 --- .git-blame-ignore-revs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.git-blame-ignore-revs b/.git-blame-ignore-revs index 9c59931bf3eb9..88aa34ab4b220 100644 --- a/.git-blame-ignore-revs +++ b/.git-blame-ignore-revs @@ -14,6 +14,9 @@ # # $ git log --pretty=format:"%H # %cd%n# %s" $PGINDENTGITHASH -1 --date=iso +2795f5a5428fd292996fd155f16a57b0db3df8f4 # 2025-10-21 09:56:26 -0500 +# Re-pgindent brin.c. + 17a5ca58eb119a33e81e57b72618236538932167 # 2025-09-13 14:50:02 -0500 # Re-pgindent nbtpreprocesskeys.c after commit 796962922e. From 93fb76ca4e69e53ac0b4d3ed0575dffdb609bb30 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Tue, 21 Oct 2025 12:23:23 -0500 Subject: [PATCH 330/457] Update .abi-compliance-history file. As foretold by commit a72f7d97be, this commit moves the baseline point for ABI compatibility for v18 to commit c8af5019be. While at it, add some more commentary and adjust the format of the entries to improve both human and machine readability. There's a good chance we'll add an .abi-compliance-history file to the other back-branches, but for now this effort is limited to v18. Reviewed-by: Tom Lane Reviewed-by: Peter Geoghegan Reviewed-by: David E. Wheeler Reviewed-by: Mankirat Singh Discussion: https://postgr.es/m/aPJ03E2itovDBcKX%40nathan Backpatch-through: 18 only --- .abi-compliance-history | 35 ++++++++++++++++++++++++++++++++--- 1 file changed, 32 insertions(+), 3 deletions(-) diff --git a/.abi-compliance-history b/.abi-compliance-history index 3d0d26aff909a..68f8b3bcfc131 100644 --- a/.abi-compliance-history +++ b/.abi-compliance-history @@ -1,7 +1,36 @@ # Reference point for ABI compliance checks +# +# This file lists commits on the current branch that break ABI compatibility in +# ways that have been deemed acceptable (e.g., removing an extern function with +# no third-party uses). The primary intent of this file is to control the ABI +# compliance checks on the buildfarm, but it also serves as a central location +# to document the justification for each. +# +# In general, entries should be added reactively after an abi-compliance-check +# buildfarm failure. It is important to verify the details of the breakage +# match expectations, as the first entry listed will become the updated ABI +# baseline point. +# # Add new entries by adding the output of the following to the top of the file: -# $ git log --pretty=format:"%H # %cd%n# %s" $ABIBREAKGITHASH -1 --date=iso # -# Initial entry would normally point to a commit slightly before the .0 stamp. -9bbcec6030a2744d83311370ec92213fbd76e514 # 2025-09-22 14:18:56 +0200 +# $ git log --pretty=format:"%H%n#%n# %s%n# %cd%n#%n# " $ABIBREAKGITHASH -1 --date=iso +# +# Be sure to replace "" with details of your change and +# why it is deemed acceptable. + +c8af5019bee5c57502db830f8005a01cba60fee0 +# +# Fix lookups in pg_{clear,restore}_{attribute,relation}_stats(). +# 2025-10-15 12:47:33 -0500 +# +# This commit replaced two functions related to lookups/privilege checks for +# the new stats stuff in v18 with RangeVarGetRelidExtended(). These functions +# were not intended for use elsewhere, exist in exactly one release (18.0), and +# do not have any known third-party callers. + +9bbcec6030a2744d83311370ec92213fbd76e514 +# # Translation updates +# 2025-09-22 14:18:56 +0200 +# +# This is the original ABI baseline point for REL_18_STABLE. From 9670032cc51f502e39b4b99eba72dd14573d3776 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Wed, 22 Oct 2025 11:27:15 +0900 Subject: [PATCH 331/457] Fix stalled lag columns in pg_stat_replication when replay LSN stops advancing. Previously, when the replay LSN reported in feedback messages from a standby stopped advancing, for example, due to a recovery conflict, the write_lag and flush_lag columns in pg_stat_replication would initially update but then stop progressing. This prevented users from correctly monitoring replication lag. The problem occurred because when any LSN stopped updating, the lag tracker's cyclic buffer became full (the write head reached the slowest read head). In that state, the lag tracker could no longer compute round-trip lag values correctly. This commit fixes the issue by handling the slowest read entry (the one causing the buffer to fill) as a separate overflow entry and freeing space so the write and other read heads can continue advancing in the buffer. As a result, write_lag and flush_lag now continue updating even if the reported replay LSN remains stalled. Backpatch to all supported versions. Author: Fujii Masao Reviewed-by: Chao Li Reviewed-by: Shinya Kato Reviewed-by: Xuneng Zhou Discussion: https://postgr.es/m/CAHGQGwGdGQ=1-X-71Caee-LREBUXSzyohkoQJd4yZZCMt24C0g@mail.gmail.com Backpatch-through: 13 --- src/backend/replication/walsender.c | 50 +++++++++++++++++++---------- 1 file changed, 33 insertions(+), 17 deletions(-) diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c index f2c33250e8b2f..014f8e6387046 100644 --- a/src/backend/replication/walsender.c +++ b/src/backend/replication/walsender.c @@ -230,6 +230,7 @@ typedef struct int write_head; int read_heads[NUM_SYNC_REP_WAIT_MODE]; WalTimeSample last_read[NUM_SYNC_REP_WAIT_MODE]; + WalTimeSample overflowed[NUM_SYNC_REP_WAIT_MODE]; } LagTracker; static LagTracker *lag_tracker; @@ -4131,7 +4132,6 @@ WalSndKeepaliveIfNecessary(void) static void LagTrackerWrite(XLogRecPtr lsn, TimestampTz local_flush_time) { - bool buffer_full; int new_write_head; int i; @@ -4153,25 +4153,19 @@ LagTrackerWrite(XLogRecPtr lsn, TimestampTz local_flush_time) * of space. */ new_write_head = (lag_tracker->write_head + 1) % LAG_TRACKER_BUFFER_SIZE; - buffer_full = false; for (i = 0; i < NUM_SYNC_REP_WAIT_MODE; ++i) { + /* + * If the buffer is full, move the slowest reader to a separate + * overflow entry and free its space in the buffer so the write head + * can advance. + */ if (new_write_head == lag_tracker->read_heads[i]) - buffer_full = true; - } - - /* - * If the buffer is full, for now we just rewind by one slot and overwrite - * the last sample, as a simple (if somewhat uneven) way to lower the - * sampling rate. There may be better adaptive compaction algorithms. - */ - if (buffer_full) - { - new_write_head = lag_tracker->write_head; - if (lag_tracker->write_head > 0) - lag_tracker->write_head--; - else - lag_tracker->write_head = LAG_TRACKER_BUFFER_SIZE - 1; + { + lag_tracker->overflowed[i] = + lag_tracker->buffer[lag_tracker->read_heads[i]]; + lag_tracker->read_heads[i] = -1; + } } /* Store a sample at the current write head position. */ @@ -4198,6 +4192,28 @@ LagTrackerRead(int head, XLogRecPtr lsn, TimestampTz now) { TimestampTz time = 0; + /* + * If 'lsn' has not passed the WAL position stored in the overflow entry, + * return the elapsed time (in microseconds) since the saved local flush + * time. If the flush time is in the future (due to clock drift), return + * -1 to treat as no valid sample. + * + * Otherwise, switch back to using the buffer to control the read head and + * compute the elapsed time. The read head is then reset to point to the + * oldest entry in the buffer. + */ + if (lag_tracker->read_heads[head] == -1) + { + if (lag_tracker->overflowed[head].lsn > lsn) + return (now >= lag_tracker->overflowed[head].time) ? + now - lag_tracker->overflowed[head].time : -1; + + time = lag_tracker->overflowed[head].time; + lag_tracker->last_read[head] = lag_tracker->overflowed[head]; + lag_tracker->read_heads[head] = + (lag_tracker->write_head + 1) % LAG_TRACKER_BUFFER_SIZE; + } + /* Read all unread samples up to this LSN or end of buffer. */ while (lag_tracker->read_heads[head] != lag_tracker->write_head && lag_tracker->buffer[lag_tracker->read_heads[head]].lsn <= lsn) From 6ff7ba9fe525fd64cdafb242867d8d22486b88d9 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Wed, 22 Oct 2025 20:10:58 +0900 Subject: [PATCH 332/457] Make invalid primary_slot_name follow standard GUC error reporting. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previously, if primary_slot_name was set to an invalid slot name and the configuration file was reloaded, both the postmaster and all other backend processes reported a WARNING. With many processes running, this could produce a flood of duplicate messages. The problem was that the GUC check hook for primary_slot_name reported errors at WARNING level via ereport(). This commit changes the check hook to use GUC_check_errdetail() and GUC_check_errhint() for error reporting. As with other GUC parameters, this causes non-postmaster processes to log the message at DEBUG3, so by default, only the postmaster's message appears in the log file. Backpatch to all supported versions. Author: Fujii Masao Reviewed-by: Chao Li Reviewed-by: Amit Kapila Reviewed-by: Álvaro Herrera Reviewed-by: Hayato Kuroda Discussion: https://postgr.es/m/CAHGQGwFud-cvthCTfusBfKHBS6Jj6kdAPTdLWKvP2qjUX6L_wA@mail.gmail.com Backpatch-through: 13 --- src/backend/access/transam/xlogrecovery.c | 13 ++++- src/backend/replication/slot.c | 65 +++++++++++++++++------ src/include/replication/slot.h | 2 + 3 files changed, 64 insertions(+), 16 deletions(-) diff --git a/src/backend/access/transam/xlogrecovery.c b/src/backend/access/transam/xlogrecovery.c index efbe77a574779..262c010fc3cd7 100644 --- a/src/backend/access/transam/xlogrecovery.c +++ b/src/backend/access/transam/xlogrecovery.c @@ -4760,9 +4760,20 @@ RecoveryRequiresIntParameter(const char *param_name, int currValue, int minValue bool check_primary_slot_name(char **newval, void **extra, GucSource source) { + int err_code; + char *err_msg = NULL; + char *err_hint = NULL; + if (*newval && strcmp(*newval, "") != 0 && - !ReplicationSlotValidateName(*newval, WARNING)) + !ReplicationSlotValidateNameInternal(*newval, &err_code, &err_msg, + &err_hint)) + { + GUC_check_errcode(err_code); + GUC_check_errdetail("%s", err_msg); + if (err_hint != NULL) + GUC_check_errhint("%s", err_hint); return false; + } return true; } diff --git a/src/backend/replication/slot.c b/src/backend/replication/slot.c index 23c616b1d7d76..ac910f6a74a0f 100644 --- a/src/backend/replication/slot.c +++ b/src/backend/replication/slot.c @@ -258,31 +258,68 @@ ReplicationSlotShmemExit(int code, Datum arg) /* * Check whether the passed slot name is valid and report errors at elevel. * + * See comments for ReplicationSlotValidateNameInternal(). + */ +bool +ReplicationSlotValidateName(const char *name, int elevel) +{ + int err_code; + char *err_msg = NULL; + char *err_hint = NULL; + + if (!ReplicationSlotValidateNameInternal(name, &err_code, &err_msg, + &err_hint)) + { + /* + * Use errmsg_internal() and errhint_internal() instead of errmsg() + * and errhint(), since the messages from + * ReplicationSlotValidateNameInternal() are already translated. This + * avoids double translation. + */ + ereport(elevel, + errcode(err_code), + errmsg_internal("%s", err_msg), + (err_hint != NULL) ? errhint_internal("%s", err_hint) : 0); + + pfree(err_msg); + if (err_hint != NULL) + pfree(err_hint); + return false; + } + + return true; +} + +/* + * Check whether the passed slot name is valid. + * * Slot names may consist out of [a-z0-9_]{1,NAMEDATALEN-1} which should allow * the name to be used as a directory name on every supported OS. * - * Returns whether the directory name is valid or not if elevel < ERROR. + * Returns true if the slot name is valid. Otherwise, returns false and stores + * the error code, error message, and optional hint in err_code, err_msg, and + * err_hint, respectively. The caller is responsible for freeing err_msg and + * err_hint, which are palloc'd. */ bool -ReplicationSlotValidateName(const char *name, int elevel) +ReplicationSlotValidateNameInternal(const char *name, int *err_code, + char **err_msg, char **err_hint) { const char *cp; if (strlen(name) == 0) { - ereport(elevel, - (errcode(ERRCODE_INVALID_NAME), - errmsg("replication slot name \"%s\" is too short", - name))); + *err_code = ERRCODE_INVALID_NAME; + *err_msg = psprintf(_("replication slot name \"%s\" is too short"), name); + *err_hint = NULL; return false; } if (strlen(name) >= NAMEDATALEN) { - ereport(elevel, - (errcode(ERRCODE_NAME_TOO_LONG), - errmsg("replication slot name \"%s\" is too long", - name))); + *err_code = ERRCODE_NAME_TOO_LONG; + *err_msg = psprintf(_("replication slot name \"%s\" is too long"), name); + *err_hint = NULL; return false; } @@ -292,11 +329,9 @@ ReplicationSlotValidateName(const char *name, int elevel) || (*cp >= '0' && *cp <= '9') || (*cp == '_'))) { - ereport(elevel, - (errcode(ERRCODE_INVALID_NAME), - errmsg("replication slot name \"%s\" contains invalid character", - name), - errhint("Replication slot names may only contain lower case letters, numbers, and the underscore character."))); + *err_code = ERRCODE_INVALID_NAME; + *err_msg = psprintf(_("replication slot name \"%s\" contains invalid character"), name); + *err_hint = psprintf(_("Replication slot names may only contain lower case letters, numbers, and the underscore character.")); return false; } } diff --git a/src/include/replication/slot.h b/src/include/replication/slot.h index 76aeeb92242e9..d9aab934048be 100644 --- a/src/include/replication/slot.h +++ b/src/include/replication/slot.h @@ -293,6 +293,8 @@ extern void ReplicationSlotMarkDirty(void); /* misc stuff */ extern void ReplicationSlotInitialize(void); extern bool ReplicationSlotValidateName(const char *name, int elevel); +extern bool ReplicationSlotValidateNameInternal(const char *name, + int *err_code, char **err_msg, char **err_hint); extern void ReplicationSlotReserveWal(void); extern void ReplicationSlotsComputeRequiredXmin(bool already_locked); extern void ReplicationSlotsComputeRequiredLSN(void); From e2072b47b9abc7d298d242217919d3d0d9415fca Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 22 Oct 2025 13:38:37 -0400 Subject: [PATCH 333/457] Fix memory leaks in pg_combinebackup/reconstruct.c. One code path forgot to free the separately-malloc'd filename part of a struct rfile. Another place freed the filename but forgot the struct rfile itself. These seem worth fixing because with a large backup we could be dealing with many files. Coverity found the bug in make_rfile(). I found the other one by manual inspection. --- src/bin/pg_combinebackup/reconstruct.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/bin/pg_combinebackup/reconstruct.c b/src/bin/pg_combinebackup/reconstruct.c index 8acaa54ff38b4..38d8e8a2dc9af 100644 --- a/src/bin/pg_combinebackup/reconstruct.c +++ b/src/bin/pg_combinebackup/reconstruct.c @@ -370,6 +370,7 @@ reconstruct_from_incremental_file(char *input_filename, if (s->relative_block_numbers != NULL) pfree(s->relative_block_numbers); pg_free(s->filename); + pg_free(s); } pfree(sourcemap); pfree(offsetmap); @@ -517,6 +518,7 @@ make_rfile(char *filename, bool missing_ok) { if (missing_ok && errno == ENOENT) { + pg_free(rf->filename); pg_free(rf); return NULL; } From ceb51d09b46b5f75a8fa94c169e570b02a370461 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Thu, 23 Oct 2025 13:12:03 +1300 Subject: [PATCH 334/457] Fix incorrect zero extension of Datum in JIT tuple deform code When JIT deformed tuples (controlled via the jit_tuple_deforming GUC), types narrower than sizeof(Datum) would be zero-extended up to Datum width. This wasn't the same as what fetch_att() does in the standard tuple deforming code. Logically the values are the same when fetching via the DatumGet*() marcos, but negative numbers are not the same in binary form. In the report, the problem was manifesting itself with: ERROR: could not find memoization table entry in a query which had a "Cache Mode: binary" Memoize node. However, it's currently unclear what else is affected. Anything that uses datum_image_eq() or datum_image_hash() on a Datum from a tuple deformed by JIT could be affected, but it may not be limited to that. The fix for this is simple: use signed extension instead of zero extension. Many thanks to Emmanuel Touzery for reporting this issue and providing steps and backup which allowed the problem to easily be recreated. Reported-by: Emmanuel Touzery Author: David Rowley Discussion: https://postgr.es/m/DB8P194MB08532256D5BAF894F241C06393F3A@DB8P194MB0853.EURP194.PROD.OUTLOOK.COM Backpatch-through: 13 --- src/backend/jit/llvm/llvmjit_deform.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/jit/llvm/llvmjit_deform.c b/src/backend/jit/llvm/llvmjit_deform.c index c562edd094bb2..798c1ce4ed2f9 100644 --- a/src/backend/jit/llvm/llvmjit_deform.c +++ b/src/backend/jit/llvm/llvmjit_deform.c @@ -663,7 +663,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc desc, v_tmp_loaddata = LLVMBuildPointerCast(b, v_attdatap, vartypep, ""); v_tmp_loaddata = l_load(b, vartype, v_tmp_loaddata, "attr_byval"); - v_tmp_loaddata = LLVMBuildZExt(b, v_tmp_loaddata, TypeSizeT, ""); + v_tmp_loaddata = LLVMBuildSExt(b, v_tmp_loaddata, TypeSizeT, ""); LLVMBuildStore(b, v_tmp_loaddata, v_resultp); } From 2bc01eff37a2fc856eb701c2036f6a186749d681 Mon Sep 17 00:00:00 2001 From: Masahiko Sawada Date: Wed, 22 Oct 2025 17:17:46 -0700 Subject: [PATCH 335/457] Add copyright notice to vacuum_horizon_floor.pl test. Fix oversight in commit 303ba0573, which was backpatched through 14. Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/CAD21AoBeFdTJcwUfUYPcEgONab3TS6i1PB9S5cSXcBAmdAdQKw%40mail.gmail.com Backpatch-through: 14 --- src/test/recovery/t/048_vacuum_horizon_floor.pl | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/test/recovery/t/048_vacuum_horizon_floor.pl b/src/test/recovery/t/048_vacuum_horizon_floor.pl index e56fce59d58ea..668eedd71b221 100644 --- a/src/test/recovery/t/048_vacuum_horizon_floor.pl +++ b/src/test/recovery/t/048_vacuum_horizon_floor.pl @@ -1,8 +1,5 @@ -use strict; -use warnings; -use PostgreSQL::Test::Cluster; -use Test::More; - +# Copyright (c) 2025, PostgreSQL Global Development Group +# # Test that vacuum prunes away all dead tuples killed before OldestXmin # # This test creates a table on a primary, updates the table to generate dead @@ -10,6 +7,11 @@ # GlobalVisState->maybe_needed on the primary to move backwards and precede # the value of OldestXmin set at the beginning of vacuuming the table. +use strict; +use warnings; +use PostgreSQL::Test::Cluster; +use Test::More; + # Set up nodes my $node_primary = PostgreSQL::Test::Cluster->new('primary'); $node_primary->init(allows_streaming => 'physical'); From 5f88da5de3f23f74b5cc0958a0b2033801a86220 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Thu, 23 Oct 2025 13:24:56 +0900 Subject: [PATCH 336/457] Add comments explaining overflow entries in the replication lag tracker. Commit 883a95646a8 introduced overflow entries in the replication lag tracker to fix an issue where lag columns in pg_stat_replication could stall when the replay LSN stopped advancing. This commit adds comments clarifying the purpose and behavior of overflow entries to improve code readability and understanding. Since commit 883a95646a8 was recently applied and backpatched to all supported branches, this follow-up commit is also backpatched accordingly. Author: Xuneng Zhou Reviewed-by: Fujii Masao Discussion: https://postgr.es/m/CABPTF7VxqQA_DePxyZ7Y8V+ErYyXkmwJ1P6NC+YC+cvxMipWKw@mail.gmail.com Backpatch-through: 13 --- src/backend/replication/walsender.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/backend/replication/walsender.c b/src/backend/replication/walsender.c index 014f8e6387046..45b4e9eb15367 100644 --- a/src/backend/replication/walsender.c +++ b/src/backend/replication/walsender.c @@ -230,6 +230,19 @@ typedef struct int write_head; int read_heads[NUM_SYNC_REP_WAIT_MODE]; WalTimeSample last_read[NUM_SYNC_REP_WAIT_MODE]; + + /* + * Overflow entries for read heads that collide with the write head. + * + * When the cyclic buffer fills (write head is about to collide with a + * read head), we save that read head's current sample here and mark it as + * using overflow (read_heads[i] = -1). This allows the write head to + * continue advancing while the overflowed mode continues lag computation + * using the saved sample. + * + * Once the standby's reported LSN advances past the overflow entry's LSN, + * we transition back to normal buffer-based tracking. + */ WalTimeSample overflowed[NUM_SYNC_REP_WAIT_MODE]; } LagTracker; From 447a794f6473f86457279f4a21673042271724d0 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 23 Oct 2025 11:47:46 -0400 Subject: [PATCH 337/457] Fix resource leaks in PL/Python error reporting, redux. Commit c6f7f11d8 intended to prevent leaking any PyObject reference counts in edge cases (such as out-of-memory during string construction), but actually it introduced a leak in the normal case. Repeating an error-trapping operation often enough would lead to session-lifespan memory bloat. The problem is that I failed to think about the fact that PyObject_GetAttrString() increments the refcount of the returned PyObject, so that simply walking down the list of error frame objects causes all but the first one to have their refcount incremented. I experimented with several more-or-less-complex ways around that, and eventually concluded that the right fix is simply to drop the newly-obtained refcount as soon as we walk to the next frame object in PLy_traceback. This sounds unsafe, but it's perfectly okay because the caller holds a refcount on the first frame object and each frame object holds a refcount on the next one; so the current frame object can't disappear underneath us. By the same token, we can simplify the caller's cleanup back to simply dropping its refcount on the first object. Cleanup of each frame object will lead in turn to the refcount of the next one going to zero. I also added a couple of comments explaining why PLy_elog_impl() doesn't try to free the strings acquired from PLy_get_spi_error_data() or PLy_get_error_data(). That's because I got here by looking at a Coverity complaint about how those strings might get leaked. They are not leaked, but in testing that I discovered this other leak. Back-patch, as c6f7f11d8 was. It's a bit nervous-making to be putting such a fix into v13, which is only a couple weeks from its final release; but I can't see that leaving a recently-introduced leak in place is a better idea. Author: Tom Lane Discussion: https://postgr.es/m/1203918.1761184159@sss.pgh.pa.us Backpatch-through: 13 --- src/pl/plpython/plpy_elog.c | 29 +++++++++++++++++++++-------- 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/src/pl/plpython/plpy_elog.c b/src/pl/plpython/plpy_elog.c index f6d10045e5cea..27689edb3fd05 100644 --- a/src/pl/plpython/plpy_elog.c +++ b/src/pl/plpython/plpy_elog.c @@ -143,14 +143,7 @@ PLy_elog_impl(int elevel, const char *fmt,...) { Py_XDECREF(exc); Py_XDECREF(val); - /* Must release all the objects in the traceback stack */ - while (tb != NULL && tb != Py_None) - { - PyObject *tb_prev = tb; - - tb = PyObject_GetAttrString(tb, "tb_next"); - Py_DECREF(tb_prev); - } + Py_XDECREF(tb); /* For neatness' sake, also release our string buffers */ if (fmt) pfree(emsg.data); @@ -343,6 +336,17 @@ PLy_traceback(PyObject *e, PyObject *v, PyObject *tb, tb = PyObject_GetAttrString(tb, "tb_next"); if (tb == NULL) elog(ERROR, "could not traverse Python traceback"); + + /* + * Release the refcount that PyObject_GetAttrString acquired on the + * next frame object. We don't need it, because our caller has a + * refcount on the first frame object and the frame objects each have + * a refcount on the next one. If we tried to hold this refcount + * longer, it would greatly complicate cleanup in the event of a + * failure in the above PG_TRY block. + */ + Py_DECREF(tb); + (*tb_depth)++; } @@ -376,6 +380,10 @@ PLy_get_sqlerrcode(PyObject *exc, int *sqlerrcode) /* * Extract the error data from a SPIError + * + * Note: the returned string values are pointers into the given PyObject. + * They must not be free()'d, and are not guaranteed to be valid once + * we stop holding a reference on the PyObject. */ static void PLy_get_spi_error_data(PyObject *exc, int *sqlerrcode, char **detail, @@ -412,6 +420,11 @@ PLy_get_spi_error_data(PyObject *exc, int *sqlerrcode, char **detail, * * Note: position and query attributes are never set for Error so, unlike * PLy_get_spi_error_data, this function doesn't return them. + * + * Note: the returned string values are palloc'd in the current context. + * While our caller could pfree them later, there's no real need to do so, + * and it would be complicated to handle both this convention and that of + * PLy_get_spi_error_data. */ static void PLy_get_error_data(PyObject *exc, int *sqlerrcode, char **detail, char **hint, From e7a3fae39e338c21b7c9ba8307775b410b4bd057 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 23 Oct 2025 12:32:06 -0400 Subject: [PATCH 338/457] Fix off-by-one Asserts in FreePageBtreeInsertInternal/Leaf. These two functions expect there to be room to insert another item in the FreePageBtree's array, but their assertions were too weak to guarantee that. This has little practical effect granting that the callers are not buggy, but it seems to be misleading late-model Coverity into complaining about possible array overrun. Author: Tom Lane Discussion: https://postgr.es/m/799984.1761150474@sss.pgh.pa.us Backpatch-through: 13 --- src/backend/utils/mmgr/freepage.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/backend/utils/mmgr/freepage.c b/src/backend/utils/mmgr/freepage.c index 52fa78dc58612..27d3e6e100c10 100644 --- a/src/backend/utils/mmgr/freepage.c +++ b/src/backend/utils/mmgr/freepage.c @@ -894,14 +894,14 @@ FreePageBtreeGetRecycled(FreePageManager *fpm) } /* - * Insert an item into an internal page. + * Insert an item into an internal page (there must be room). */ static void FreePageBtreeInsertInternal(char *base, FreePageBtree *btp, Size index, Size first_page, FreePageBtree *child) { Assert(btp->hdr.magic == FREE_PAGE_INTERNAL_MAGIC); - Assert(btp->hdr.nused <= FPM_ITEMS_PER_INTERNAL_PAGE); + Assert(btp->hdr.nused < FPM_ITEMS_PER_INTERNAL_PAGE); Assert(index <= btp->hdr.nused); memmove(&btp->u.internal_key[index + 1], &btp->u.internal_key[index], sizeof(FreePageBtreeInternalKey) * (btp->hdr.nused - index)); @@ -911,14 +911,14 @@ FreePageBtreeInsertInternal(char *base, FreePageBtree *btp, Size index, } /* - * Insert an item into a leaf page. + * Insert an item into a leaf page (there must be room). */ static void FreePageBtreeInsertLeaf(FreePageBtree *btp, Size index, Size first_page, Size npages) { Assert(btp->hdr.magic == FREE_PAGE_LEAF_MAGIC); - Assert(btp->hdr.nused <= FPM_ITEMS_PER_LEAF_PAGE); + Assert(btp->hdr.nused < FPM_ITEMS_PER_LEAF_PAGE); Assert(index <= btp->hdr.nused); memmove(&btp->u.leaf_key[index + 1], &btp->u.leaf_key[index], sizeof(FreePageBtreeLeafKey) * (btp->hdr.nused - index)); From 172f217e825c63878b7b7c875ee04c7a90427303 Mon Sep 17 00:00:00 2001 From: Daniel Gustafsson Date: Thu, 23 Oct 2025 21:26:15 +0200 Subject: [PATCH 339/457] doc: Remove mention of Git protocol support The project Git server hasn't supported cloning with the Git protocol in a very long time, but the documentation never got the memo. Remove the mention of using the Git protocol, and while there wrap a mention of Git in tags. Backpatch down to all supported versions. Author: Daniel Gustafsson Reported-by: Gurjeet Singh Reviewed-by: Nathan Bossart Reviewed-by: Jacob Champion Reviewed-by: Gurjeet Singh Reviewed-by: Tom Lane Discussion: https://postgr.es/m/CABwTF4WMiMb-KT2NRcib5W0C8TQF6URMb+HK9a_=rnZnY8Q42w@mail.gmail.com Backpatch-through: 13 --- doc/src/sgml/sourcerepo.sgml | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/doc/src/sgml/sourcerepo.sgml b/doc/src/sgml/sourcerepo.sgml index 6c13c5a30cde6..f4368e83ab39d 100644 --- a/doc/src/sgml/sourcerepo.sgml +++ b/doc/src/sgml/sourcerepo.sgml @@ -40,7 +40,7 @@ - To begin using the Git repository, make a clone of the official mirror: + To begin using the Git repository, make a clone of the official mirror: git clone https://git.postgresql.org/git/postgresql.git @@ -51,16 +51,6 @@ git clone https://git.postgresql.org/git/postgresql.git The files will be placed in a new subdirectory postgresql of your current directory. - - - The Git mirror can also be reached via the Git protocol. Just change the URL - prefix to git, as in: - - -git clone git://git.postgresql.org/git/postgresql.git - - - From 67ef5575ccb07d2dd5322aef33e01b3c2a4b9047 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 23 Oct 2025 17:46:57 -0400 Subject: [PATCH 340/457] Update expected output for contrib/sepgsql's regression tests. Commit 65281391a caused some additional error context lines to appear in the output of one test case. That's fine, but we missed updating the expected output. Do it now. While here, add some missing test-output subdirectories to contrib/sepgsql/.gitignore, so that we don't get git warnings after running the tests. Author: Tom Lane Discussion: https://postgr.es/m/1613232.1761255361@sss.pgh.pa.us Backpatch-through: 18 --- contrib/sepgsql/.gitignore | 4 +++- contrib/sepgsql/expected/ddl.out | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/contrib/sepgsql/.gitignore b/contrib/sepgsql/.gitignore index b1778d05bbd0b..7e240e44c3692 100644 --- a/contrib/sepgsql/.gitignore +++ b/contrib/sepgsql/.gitignore @@ -3,5 +3,7 @@ /sepgsql-regtest.if /sepgsql-regtest.pp /tmp -# Generated by test suite +# Generated subdirectories +/log/ +/results/ /tmp_check/ diff --git a/contrib/sepgsql/expected/ddl.out b/contrib/sepgsql/expected/ddl.out index 7e8deae4f9320..accb903f5cefc 100644 --- a/contrib/sepgsql/expected/ddl.out +++ b/contrib/sepgsql/expected/ddl.out @@ -304,6 +304,8 @@ ALTER TABLE regtest_table_4 ALTER COLUMN y TYPE float; LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=unconfined_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="regtest_schema" permissive=0 LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="public" permissive=0 LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="pg_catalog" permissive=0 +LINE 1: ALTER TABLE regtest_table_4 ALTER COLUMN y TYPE float; + ^ LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="pg_catalog" permissive=0 LOG: SELinux: allowed { setattr } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=unconfined_u:object_r:sepgsql_table_t:s0 tclass=db_column name="regtest_schema.regtest_table_4.y" permissive=0 LOG: SELinux: allowed { execute } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_proc_exec_t:s0 tclass=db_procedure name="pg_catalog.float8(integer)" permissive=0 @@ -388,7 +390,11 @@ ALTER TABLE regtest_ptable_4 ALTER COLUMN y TYPE float; LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=unconfined_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="regtest_schema" permissive=0 LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="public" permissive=0 LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="pg_catalog" permissive=0 +LINE 1: ALTER TABLE regtest_ptable_4 ALTER COLUMN y TYPE float; + ^ LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="pg_catalog" permissive=0 +LINE 1: ALTER TABLE regtest_ptable_4 ALTER COLUMN y TYPE float; + ^ LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="pg_catalog" permissive=0 LOG: SELinux: allowed { setattr } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=unconfined_u:object_r:sepgsql_table_t:s0 tclass=db_column name="regtest_schema.regtest_ptable_4.y" permissive=0 LOG: SELinux: allowed { search } scontext=unconfined_u:unconfined_r:sepgsql_regtest_superuser_t:s0 tcontext=system_u:object_r:sepgsql_schema_t:s0 tclass=db_schema name="pg_catalog" permissive=0 From a2387c32f2f8a1643c7d71b951587e6bcb2d4744 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Sun, 26 Oct 2025 11:01:32 +1300 Subject: [PATCH 341/457] Fix incorrect logic for caching ResultRelInfos for triggers When dealing with ResultRelInfos for partitions, there are cases where there are mixed requirements for the ri_RootResultRelInfo. There are cases when the partition itself requires a NULL ri_RootResultRelInfo and in the same query, the same partition may require a ResultRelInfo with its parent set in ri_RootResultRelInfo. This could cause the column mapping between the partitioned table and the partition not to be done which could result in crashes if the column attnums didn't match exactly. The fix is simple. We now check that the ri_RootResultRelInfo matches what the caller passed to ExecGetTriggerResultRel() and only return a cached ResultRelInfo when the ri_RootResultRelInfo matches what the caller wants, otherwise we'll make a new one. Author: David Rowley Author: Amit Langote Reported-by: Dmitry Fomin Discussion: https://postgr.es/m/7DCE78D7-0520-4207-822B-92F60AEA14B4@gmail.com Backpatch-through: 15 --- src/backend/executor/execMain.c | 24 +++++++---- src/test/regress/expected/foreign_key.out | 51 +++++++++++++++++++++++ src/test/regress/sql/foreign_key.sql | 48 +++++++++++++++++++++ 3 files changed, 116 insertions(+), 7 deletions(-) diff --git a/src/backend/executor/execMain.c b/src/backend/executor/execMain.c index 713e926329c38..27c9eec697b18 100644 --- a/src/backend/executor/execMain.c +++ b/src/backend/executor/execMain.c @@ -1326,10 +1326,9 @@ InitResultRelInfo(ResultRelInfo *resultRelInfo, * Get a ResultRelInfo for a trigger target relation. * * Most of the time, triggers are fired on one of the result relations of the - * query, and so we can just return a member of the es_result_relations array, - * or the es_tuple_routing_result_relations list (if any). (Note: in self-join - * situations there might be multiple members with the same OID; if so it - * doesn't matter which one we pick.) + * query, and so we can just return a suitable one we already made and stored + * in the es_opened_result_relations or es_tuple_routing_result_relations + * Lists. * * However, it is sometimes necessary to fire triggers on other relations; * this happens mainly when an RI update trigger queues additional triggers @@ -1349,11 +1348,20 @@ ExecGetTriggerResultRel(EState *estate, Oid relid, Relation rel; MemoryContext oldcontext; + /* + * Before creating a new ResultRelInfo, check if we've already made and + * cached one for this relation. We must ensure that the given + * 'rootRelInfo' matches the one stored in the cached ResultRelInfo as + * trigger handling for partitions can result in mixed requirements for + * what ri_RootResultRelInfo is set to. + */ + /* Search through the query result relations */ foreach(l, estate->es_opened_result_relations) { rInfo = lfirst(l); - if (RelationGetRelid(rInfo->ri_RelationDesc) == relid) + if (RelationGetRelid(rInfo->ri_RelationDesc) == relid && + rInfo->ri_RootResultRelInfo == rootRelInfo) return rInfo; } @@ -1364,7 +1372,8 @@ ExecGetTriggerResultRel(EState *estate, Oid relid, foreach(l, estate->es_tuple_routing_result_relations) { rInfo = (ResultRelInfo *) lfirst(l); - if (RelationGetRelid(rInfo->ri_RelationDesc) == relid) + if (RelationGetRelid(rInfo->ri_RelationDesc) == relid && + rInfo->ri_RootResultRelInfo == rootRelInfo) return rInfo; } @@ -1372,7 +1381,8 @@ ExecGetTriggerResultRel(EState *estate, Oid relid, foreach(l, estate->es_trig_target_relations) { rInfo = (ResultRelInfo *) lfirst(l); - if (RelationGetRelid(rInfo->ri_RelationDesc) == relid) + if (RelationGetRelid(rInfo->ri_RelationDesc) == relid && + rInfo->ri_RootResultRelInfo == rootRelInfo) return rInfo; } /* Nope, so we need a new one */ diff --git a/src/test/regress/expected/foreign_key.out b/src/test/regress/expected/foreign_key.out index dc541d61adfa5..7f9e0ebb82d65 100644 --- a/src/test/regress/expected/foreign_key.out +++ b/src/test/regress/expected/foreign_key.out @@ -3406,3 +3406,54 @@ SET client_min_messages TO warning; DROP SCHEMA fkpart12 CASCADE; RESET client_min_messages; RESET search_path; +-- Exercise the column mapping code with foreign keys. In this test we'll +-- create a partitioned table which has a partition with a dropped column and +-- check to ensure that an UPDATE cascades the changes correctly to the +-- partitioned table. +CREATE SCHEMA fkpart13; +SET search_path TO fkpart13; +CREATE TABLE fkpart13_t1 (a int PRIMARY KEY); +CREATE TABLE fkpart13_t2 ( + part_id int PRIMARY KEY, + column_to_drop int, + FOREIGN KEY (part_id) REFERENCES fkpart13_t1 ON UPDATE CASCADE ON DELETE CASCADE +) PARTITION BY LIST (part_id); +CREATE TABLE fkpart13_t2_p1 PARTITION OF fkpart13_t2 FOR VALUES IN (1); +-- drop the column +ALTER TABLE fkpart13_t2 DROP COLUMN column_to_drop; +-- create a new partition without the dropped column +CREATE TABLE fkpart13_t2_p2 PARTITION OF fkpart13_t2 FOR VALUES IN (2); +CREATE TABLE fkpart13_t3 ( + a int NOT NULL, + FOREIGN KEY (a) + REFERENCES fkpart13_t2 + ON UPDATE CASCADE ON DELETE CASCADE +); +INSERT INTO fkpart13_t1 (a) VALUES (1); +INSERT INTO fkpart13_t2 (part_id) VALUES (1); +INSERT INTO fkpart13_t3 (a) VALUES (1); +-- Test a cascading update works correctly with with the dropped column +UPDATE fkpart13_t1 SET a = 2 WHERE a = 1; +SELECT tableoid::regclass,* FROM fkpart13_t2; + tableoid | part_id +----------------+--------- + fkpart13_t2_p2 | 2 +(1 row) + +SELECT tableoid::regclass,* FROM fkpart13_t3; + tableoid | a +-------------+--- + fkpart13_t3 | 2 +(1 row) + +-- Exercise code in ExecGetTriggerResultRel() as there's been previous issues +-- with ResultRelInfos being returned with the incorrect ri_RootResultRelInfo +WITH cte AS ( + UPDATE fkpart13_t2_p1 SET part_id = part_id +) UPDATE fkpart13_t1 SET a = 2 WHERE a = 1; +DROP SCHEMA fkpart13 CASCADE; +NOTICE: drop cascades to 3 other objects +DETAIL: drop cascades to table fkpart13_t1 +drop cascades to table fkpart13_t2 +drop cascades to table fkpart13_t3 +RESET search_path; diff --git a/src/test/regress/sql/foreign_key.sql b/src/test/regress/sql/foreign_key.sql index 39174ad1eb9a0..4a6172b8e56d8 100644 --- a/src/test/regress/sql/foreign_key.sql +++ b/src/test/regress/sql/foreign_key.sql @@ -2386,3 +2386,51 @@ SET client_min_messages TO warning; DROP SCHEMA fkpart12 CASCADE; RESET client_min_messages; RESET search_path; + +-- Exercise the column mapping code with foreign keys. In this test we'll +-- create a partitioned table which has a partition with a dropped column and +-- check to ensure that an UPDATE cascades the changes correctly to the +-- partitioned table. +CREATE SCHEMA fkpart13; +SET search_path TO fkpart13; + +CREATE TABLE fkpart13_t1 (a int PRIMARY KEY); + +CREATE TABLE fkpart13_t2 ( + part_id int PRIMARY KEY, + column_to_drop int, + FOREIGN KEY (part_id) REFERENCES fkpart13_t1 ON UPDATE CASCADE ON DELETE CASCADE +) PARTITION BY LIST (part_id); + +CREATE TABLE fkpart13_t2_p1 PARTITION OF fkpart13_t2 FOR VALUES IN (1); + +-- drop the column +ALTER TABLE fkpart13_t2 DROP COLUMN column_to_drop; + +-- create a new partition without the dropped column +CREATE TABLE fkpart13_t2_p2 PARTITION OF fkpart13_t2 FOR VALUES IN (2); + +CREATE TABLE fkpart13_t3 ( + a int NOT NULL, + FOREIGN KEY (a) + REFERENCES fkpart13_t2 + ON UPDATE CASCADE ON DELETE CASCADE +); + +INSERT INTO fkpart13_t1 (a) VALUES (1); +INSERT INTO fkpart13_t2 (part_id) VALUES (1); +INSERT INTO fkpart13_t3 (a) VALUES (1); + +-- Test a cascading update works correctly with with the dropped column +UPDATE fkpart13_t1 SET a = 2 WHERE a = 1; +SELECT tableoid::regclass,* FROM fkpart13_t2; +SELECT tableoid::regclass,* FROM fkpart13_t3; + +-- Exercise code in ExecGetTriggerResultRel() as there's been previous issues +-- with ResultRelInfos being returned with the incorrect ri_RootResultRelInfo +WITH cte AS ( + UPDATE fkpart13_t2_p1 SET part_id = part_id +) UPDATE fkpart13_t1 SET a = 2 WHERE a = 1; + +DROP SCHEMA fkpart13 CASCADE; +RESET search_path; From b45a8d7d8b306b43f31a002f1b3f1dddc8defeaf Mon Sep 17 00:00:00 2001 From: Amit Kapila Date: Mon, 27 Oct 2025 06:37:35 +0000 Subject: [PATCH 342/457] Fix GUC check_hook validation for synchronized_standby_slots. Previously, the check_hook for synchronized_standby_slots attempted to validate that each specified slot existed and was physical. However, these checks were not performed during server startup. As a result, if users configured non-existent slots before startup, the misconfiguration would go undetected initially. This could later cause parallel query failures, as newly launched workers would detect the issue and raise an ERROR. This patch improves the check_hook by validating the syntax and format of slot names. Validation of slot existence and type is deferred to the WAL sender process, aligning with the behavior of the check_hook for primary_slot_name. Reported-by: Fabrice Chapuis Author: Shlok Kyal Reviewed-by: Hayato Kuroda Reviewed-by: Amit Kapila Reviewed-by: Ashutosh Sharma Reviewed-by: Rahila Syed Backpatch-through: 17, where it was introduced Discussion: https://postgr.es/m/CAA5-nLCeO4MQzWipCXH58qf0arruiw0OeUc1+Q=Z=4GM+=v1NQ@mail.gmail.com --- src/backend/replication/slot.c | 59 +++++-------------- .../unsafe_tests/expected/guc_privs.out | 10 ++++ .../modules/unsafe_tests/sql/guc_privs.sql | 8 +++ 3 files changed, 34 insertions(+), 43 deletions(-) diff --git a/src/backend/replication/slot.c b/src/backend/replication/slot.c index ac910f6a74a0f..101157ed8c914 100644 --- a/src/backend/replication/slot.c +++ b/src/backend/replication/slot.c @@ -2743,53 +2743,32 @@ GetSlotInvalidationCauseName(ReplicationSlotInvalidationCause cause) static bool validate_sync_standby_slots(char *rawname, List **elemlist) { - bool ok; - /* Verify syntax and parse string into a list of identifiers */ - ok = SplitIdentifierString(rawname, ',', elemlist); - - if (!ok) + if (!SplitIdentifierString(rawname, ',', elemlist)) { GUC_check_errdetail("List syntax is invalid."); + return false; } - else if (MyProc) + + /* Iterate the list to validate each slot name */ + foreach_ptr(char, name, *elemlist) { - /* - * Check that each specified slot exist and is physical. - * - * Because we need an LWLock, we cannot do this on processes without a - * PGPROC, so we skip it there; but see comments in - * StandbySlotsHaveCaughtup() as to why that's not a problem. - */ - LWLockAcquire(ReplicationSlotControlLock, LW_SHARED); + int err_code; + char *err_msg = NULL; + char *err_hint = NULL; - foreach_ptr(char, name, *elemlist) + if (!ReplicationSlotValidateNameInternal(name, &err_code, &err_msg, + &err_hint)) { - ReplicationSlot *slot; - - slot = SearchNamedReplicationSlot(name, false); - - if (!slot) - { - GUC_check_errdetail("Replication slot \"%s\" does not exist.", - name); - ok = false; - break; - } - - if (!SlotIsPhysical(slot)) - { - GUC_check_errdetail("\"%s\" is not a physical replication slot.", - name); - ok = false; - break; - } + GUC_check_errcode(err_code); + GUC_check_errdetail("%s", err_msg); + if (err_hint != NULL) + GUC_check_errhint("%s", err_hint); + return false; } - - LWLockRelease(ReplicationSlotControlLock); } - return ok; + return true; } /* @@ -2947,12 +2926,6 @@ StandbySlotsHaveCaughtup(XLogRecPtr wait_for_lsn, int elevel) /* * If a slot name provided in synchronized_standby_slots does not * exist, report a message and exit the loop. - * - * Though validate_sync_standby_slots (the GUC check_hook) tries to - * avoid this, it can nonetheless happen because the user can specify - * a nonexistent slot name before server startup. That function cannot - * validate such a slot during startup, as ReplicationSlotCtl is not - * initialized by then. Also, the user might have dropped one slot. */ if (!slot) { diff --git a/src/test/modules/unsafe_tests/expected/guc_privs.out b/src/test/modules/unsafe_tests/expected/guc_privs.out index 6c0ad898341ff..7f76b675c8ca1 100644 --- a/src/test/modules/unsafe_tests/expected/guc_privs.out +++ b/src/test/modules/unsafe_tests/expected/guc_privs.out @@ -581,6 +581,16 @@ DROP ROLE regress_host_resource_newadmin; -- ok, nothing was transferred -- Use "drop owned by" so we can drop the role DROP OWNED BY regress_host_resource_admin; -- ok DROP ROLE regress_host_resource_admin; -- ok +-- Test for GUC synchronized standby slots +-- Cannot set synchronized_standby_slots to an invalid slot name +ALTER SYSTEM SET synchronized_standby_slots='invalid*'; +ERROR: invalid value for parameter "synchronized_standby_slots": "invalid*" +DETAIL: replication slot name "invalid*" contains invalid character +HINT: Replication slot names may only contain lower case letters, numbers, and the underscore character. +-- Can set synchronized_standby_slots to a non-existent slot name +ALTER SYSTEM SET synchronized_standby_slots='missing'; +-- Reset the GUC +ALTER SYSTEM RESET synchronized_standby_slots; -- Clean up RESET SESSION AUTHORIZATION; DROP ROLE regress_admin; -- ok diff --git a/src/test/modules/unsafe_tests/sql/guc_privs.sql b/src/test/modules/unsafe_tests/sql/guc_privs.sql index 9bcbbfa9040cf..ccbff5a53583d 100644 --- a/src/test/modules/unsafe_tests/sql/guc_privs.sql +++ b/src/test/modules/unsafe_tests/sql/guc_privs.sql @@ -262,6 +262,14 @@ DROP ROLE regress_host_resource_newadmin; -- ok, nothing was transferred DROP OWNED BY regress_host_resource_admin; -- ok DROP ROLE regress_host_resource_admin; -- ok +-- Test for GUC synchronized standby slots +-- Cannot set synchronized_standby_slots to an invalid slot name +ALTER SYSTEM SET synchronized_standby_slots='invalid*'; +-- Can set synchronized_standby_slots to a non-existent slot name +ALTER SYSTEM SET synchronized_standby_slots='missing'; +-- Reset the GUC +ALTER SYSTEM RESET synchronized_standby_slots; + -- Clean up RESET SESSION AUTHORIZATION; DROP ROLE regress_admin; -- ok From 74197bdc842a280befe834e5cb4be700af9f8198 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 28 Oct 2025 10:06:03 +0100 Subject: [PATCH 343/457] Check that index can return in get_actual_variable_range() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Some recent changes were made to remove the explicit dependency on btree indexes in some parts of the code. One of these changes was made in commit 9ef1851685b, which allows non-btree indexes to be used in get_actual_variable_range(). A follow-up commit ee1ae8b99f9 fixes the cases where an index doesn’t have a sortopfamily as this is a prerequisite to be used in get_actual_variable_range(). However, it was found that indexes that have amcanorder = true but do not allow index-only-scans (amcanreturn returns false or is NULL) will pass all of the conditions, while they should be rejected since get_actual_variable_range() uses the index-only-scan machinery in get_actual_variable_endpoint(). Such an index might cause errors like ERROR: no data returned for index-only scan during query planning. The fix is to add a check in get_actual_variable_range() to reject indexes that do not allow index-only scans. Author: Maxime Schoemans Discussion: https://www.postgresql.org/message-id/flat/20ED852A-C2D9-41EB-8671-8C8B9D418BE9%40enterprisedb.com --- src/backend/utils/adt/selfuncs.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/backend/utils/adt/selfuncs.c b/src/backend/utils/adt/selfuncs.c index 65ae682e29866..c82bacd7c15a6 100644 --- a/src/backend/utils/adt/selfuncs.c +++ b/src/backend/utils/adt/selfuncs.c @@ -6554,6 +6554,13 @@ get_actual_variable_range(PlannerInfo *root, VariableStatData *vardata, if (index->hypothetical) continue; + /* + * get_actual_variable_endpoint uses the index-only-scan machinery, so + * ignore indexes that can't use it on their first column. + */ + if (!index->canreturn[0]) + continue; + /* * The first index column must match the desired variable, sortop, and * collation --- but we can use a descending-order index. From a92bbffbc3a7157b0998f0423cf2304c81626822 Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Wed, 29 Oct 2025 09:55:48 +0900 Subject: [PATCH 344/457] Simplify newline handling in libpq TAP test CRLF translation is already handled by the text mode, so there should be no need for any specific logic. See also 1c6d4629394d, msys perl being one case where the translation mattered. Note: An equivalent has been first applied on HEAD with 8767b449a3a1. The same change is backpatched to v18 as all the Windows buildfarm members have reported green. Author: Jacob Champion Co-authored-by: Michael Paquier Reviewed-by: Daniel Gustafsson Discussion: https://postgr.es/m/aPsh39bxwYKvUlAf@paquier.xyz Backpatch-through: 18 --- src/interfaces/libpq/t/006_service.pl | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/interfaces/libpq/t/006_service.pl b/src/interfaces/libpq/t/006_service.pl index 4fe5adc5c2acd..3ccd9a06e630a 100644 --- a/src/interfaces/libpq/t/006_service.pl +++ b/src/interfaces/libpq/t/006_service.pl @@ -22,18 +22,14 @@ my $td = PostgreSQL::Test::Utils::tempdir; -# Windows vs non-Windows: CRLF vs LF for the file's newline, relying on -# the fact that libpq uses fgets() when reading the lines of a service file. -my $newline = $windows_os ? "\r\n" : "\n"; - # Create the set of service files used in the tests. # File that includes a valid service name, and uses a decomposed connection # string for its contents, split on spaces. my $srvfile_valid = "$td/pg_service_valid.conf"; -append_to_file($srvfile_valid, "[my_srv]" . $newline); +append_to_file($srvfile_valid, "[my_srv]\n"); foreach my $param (split(/\s+/, $node->connstr)) { - append_to_file($srvfile_valid, $param . $newline); + append_to_file($srvfile_valid, $param . "\n"); } # File defined with no contents, used as default value for PGSERVICEFILE, From b1635c166698a2b70aa3f397d0f7ca6844872dce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Herrera?= Date: Wed, 29 Oct 2025 12:35:02 +0100 Subject: [PATCH 345/457] pg_stat_statements: Fix handling of duplicate constant locations Two or more constants can have the same location. We handled this correctly for non squashed constants, but failed to do it if squashed (resulting in out-of-bounds memory access), because the code structure became broken by commit 0f65f3eec478: we failed to update 'last_loc' correctly when skipping these squashed constants. The simplest fix seems to be to get rid of 'last_loc' altogether -- in hindsight, it's quite pointless. Also, when ignoring a constant because of this, make sure to fulfill fill_in_constant_lengths's duty of setting its length to -1. Lastly, we can use == instead of <= because the locations have been sorted beforehand, so the < case cannot arise. Co-authored-by: Sami Imseih Co-authored-by: Dmitry Dolgov <9erthalion6@gmail.com> Reported-by: Konstantin Knizhnik Backpatch-through: 18 Discussion: https://www.postgresql.org/message-id/2b91e358-0d99-43f7-be44-d2d4dbce37b3%40garret.ru --- .../pg_stat_statements/expected/squashing.out | 80 +++++++++++++++++++ .../pg_stat_statements/pg_stat_statements.c | 33 ++++---- contrib/pg_stat_statements/sql/squashing.sql | 26 ++++++ 3 files changed, 123 insertions(+), 16 deletions(-) diff --git a/contrib/pg_stat_statements/expected/squashing.out b/contrib/pg_stat_statements/expected/squashing.out index f952f47ef7be1..d5bb67c7222fa 100644 --- a/contrib/pg_stat_statements/expected/squashing.out +++ b/contrib/pg_stat_statements/expected/squashing.out @@ -809,6 +809,84 @@ SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; select where $1 IN ($2 /*, ... */) | 2 (2 rows) +-- composite function with row expansion +create table test_composite(x integer); +CREATE FUNCTION composite_f(a integer[], out x integer, out y integer) returns +record as $$ begin + x = a[1]; + y = a[2]; + end; +$$ language plpgsql; +SELECT pg_stat_statements_reset() IS NOT NULL AS t; + t +--- + t +(1 row) + +SELECT ((composite_f(array[1, 2]))).* FROM test_composite; + x | y +---+--- +(0 rows) + +SELECT ((composite_f(array[1, 2, 3]))).* FROM test_composite; + x | y +---+--- +(0 rows) + +SELECT ((composite_f(array[1, 2, 3]))).*, 1, 2, 3, ((composite_f(array[1, 2, 3]))).*, 1, 2 +FROM test_composite +WHERE x IN (1, 2, 3); + x | y | ?column? | ?column? | ?column? | x | y | ?column? | ?column? +---+---+----------+----------+----------+---+---+----------+---------- +(0 rows) + +SELECT ((composite_f(array[1, $1, 3]))).*, 1 FROM test_composite \bind 1 +; + x | y | ?column? +---+---+---------- +(0 rows) + +-- ROW() expression with row expansion +SELECT (ROW(ARRAY[1,2])).*; + f1 +------- + {1,2} +(1 row) + +SELECT (ROW(ARRAY[1, 2], ARRAY[1, 2, 3])).*; + f1 | f2 +-------+--------- + {1,2} | {1,2,3} +(1 row) + +SELECT 1, 2, (ROW(ARRAY[1, 2], ARRAY[1, 2, 3])).*, 3, 4; + ?column? | ?column? | f1 | f2 | ?column? | ?column? +----------+----------+-------+---------+----------+---------- + 1 | 2 | {1,2} | {1,2,3} | 3 | 4 +(1 row) + +SELECT (ROW(ARRAY[1, 2], ARRAY[1, $1, 3])).*, 1 \bind 1 +; + f1 | f2 | ?column? +-------+---------+---------- + {1,2} | {1,1,3} | 1 +(1 row) + +SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; + query | calls +-------------------------------------------------------------------------------------------------------------+------- + SELECT $1, $2, (ROW(ARRAY[$3 /*, ... */], ARRAY[$4 /*, ... */])).*, $5, $6 | 1 + SELECT ((composite_f(array[$1 /*, ... */]))).* FROM test_composite | 2 + SELECT ((composite_f(array[$1 /*, ... */]))).*, $2 FROM test_composite | 1 + SELECT ((composite_f(array[$1 /*, ... */]))).*, $2, $3, $4, ((composite_f(array[$5 /*, ... */]))).*, $6, $7+| 1 + FROM test_composite +| + WHERE x IN ($8 /*, ... */) | + SELECT (ROW(ARRAY[$1 /*, ... */])).* | 1 + SELECT (ROW(ARRAY[$1 /*, ... */], ARRAY[$2 /*, ... */])).* | 1 + SELECT (ROW(ARRAY[$1 /*, ... */], ARRAY[$2 /*, ... */])).*, $3 | 1 + SELECT pg_stat_statements_reset() IS NOT NULL AS t | 1 +(8 rows) + -- -- cleanup -- @@ -818,3 +896,5 @@ DROP TABLE test_squash_numeric; DROP TABLE test_squash_bigint; DROP TABLE test_squash_cast CASCADE; DROP TABLE test_squash_jsonb; +DROP TABLE test_composite; +DROP FUNCTION composite_f; diff --git a/contrib/pg_stat_statements/pg_stat_statements.c b/contrib/pg_stat_statements/pg_stat_statements.c index e7857f81ec057..9b3a33118f468 100644 --- a/contrib/pg_stat_statements/pg_stat_statements.c +++ b/contrib/pg_stat_statements/pg_stat_statements.c @@ -2915,9 +2915,8 @@ generate_normalized_query(JumbleState *jstate, const char *query, * have originated from within the authoritative parser, this should not be * a problem. * - * Duplicate constant pointers are possible, and will have their lengths - * marked as '-1', so that they are later ignored. (Actually, we assume the - * lengths were initialized as -1 to start with, and don't change them here.) + * Multiple constants can have the same location. We reset lengths of those + * past the first to -1 so that they can later be ignored. * * If query_loc > 0, then "query" has been advanced by that much compared to * the original string start, so we need to translate the provided locations @@ -2937,8 +2936,6 @@ fill_in_constant_lengths(JumbleState *jstate, const char *query, core_yy_extra_type yyextra; core_YYSTYPE yylval; YYLTYPE yylloc; - int last_loc = -1; - int i; /* * Sort the records by location so that we can process them in order while @@ -2959,23 +2956,29 @@ fill_in_constant_lengths(JumbleState *jstate, const char *query, yyextra.escape_string_warning = false; /* Search for each constant, in sequence */ - for (i = 0; i < jstate->clocations_count; i++) + for (int i = 0; i < jstate->clocations_count; i++) { - int loc = locs[i].location; + int loc; int tok; - /* Adjust recorded location if we're dealing with partial string */ - loc -= query_loc; - - Assert(loc >= 0); + /* Ignore constants after the first one in the same location */ + if (i > 0 && locs[i].location == locs[i - 1].location) + { + locs[i].length = -1; + continue; + } if (locs[i].squashed) continue; /* squashable list, ignore */ - if (loc <= last_loc) - continue; /* Duplicate constant, ignore */ + /* Adjust recorded location if we're dealing with partial string */ + loc = locs[i].location - query_loc; + Assert(loc >= 0); - /* Lex tokens until we find the desired constant */ + /* + * We have a valid location for a constant that's not a dupe. Lex + * tokens until we find the desired constant. + */ for (;;) { tok = core_yylex(&yylval, &yylloc, yyscanner); @@ -3021,8 +3024,6 @@ fill_in_constant_lengths(JumbleState *jstate, const char *query, /* If we hit end-of-string, give up, leaving remaining lengths -1 */ if (tok == 0) break; - - last_loc = loc; } scanner_finish(yyscanner); diff --git a/contrib/pg_stat_statements/sql/squashing.sql b/contrib/pg_stat_statements/sql/squashing.sql index 53138d125a92c..03b0515f87285 100644 --- a/contrib/pg_stat_statements/sql/squashing.sql +++ b/contrib/pg_stat_statements/sql/squashing.sql @@ -291,6 +291,30 @@ select where '1' IN ('1'::int::text, '2'::int::text); select where '1' = ANY (array['1'::int::text, '2'::int::text]); SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; +-- composite function with row expansion +create table test_composite(x integer); +CREATE FUNCTION composite_f(a integer[], out x integer, out y integer) returns +record as $$ begin + x = a[1]; + y = a[2]; + end; +$$ language plpgsql; +SELECT pg_stat_statements_reset() IS NOT NULL AS t; +SELECT ((composite_f(array[1, 2]))).* FROM test_composite; +SELECT ((composite_f(array[1, 2, 3]))).* FROM test_composite; +SELECT ((composite_f(array[1, 2, 3]))).*, 1, 2, 3, ((composite_f(array[1, 2, 3]))).*, 1, 2 +FROM test_composite +WHERE x IN (1, 2, 3); +SELECT ((composite_f(array[1, $1, 3]))).*, 1 FROM test_composite \bind 1 +; +-- ROW() expression with row expansion +SELECT (ROW(ARRAY[1,2])).*; +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 +; +SELECT query, calls FROM pg_stat_statements ORDER BY query COLLATE "C"; + -- -- cleanup -- @@ -300,3 +324,5 @@ DROP TABLE test_squash_numeric; DROP TABLE test_squash_bigint; DROP TABLE test_squash_cast CASCADE; DROP TABLE test_squash_jsonb; +DROP TABLE test_composite; +DROP FUNCTION composite_f; From af3a79e0837d23fa536f859fc927b1379855ae24 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Thu, 30 Oct 2025 14:49:07 +1300 Subject: [PATCH 346/457] Fix bogus use of "long" in AllocSetCheck() Because long is 32-bit on 64-bit Windows, it isn't a good datatype to store the difference between 2 pointers. The under-sized type could overflow and lead to scary warnings in MEMORY_CONTEXT_CHECKING builds, such as: WARNING: problem in alloc set ExecutorState: bad single-chunk %p in block %p However, the problem lies only in the code running the check, not from an actual memory accounting bug. Fix by using "Size" instead of "long". This means using an unsigned type rather than the previous signed type. If the block's freeptr was corrupted, we'd still catch that if the unsigned type wrapped. Unsigned allows us to avoid further needless complexities around comparing signed and unsigned types. Author: David Rowley Reviewed-by: Michael Paquier Reviewed-by: Tom Lane Backpatch-through: 13 Discussion: https://postgr.es/m/CAApHDvo-RmiT4s33J=aC9C_-wPZjOXQ232V-EZFgKftSsNRi4w@mail.gmail.com --- src/backend/utils/mmgr/aset.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/backend/utils/mmgr/aset.c b/src/backend/utils/mmgr/aset.c index 666ecd8f78d0e..bcb55296c43c1 100644 --- a/src/backend/utils/mmgr/aset.c +++ b/src/backend/utils/mmgr/aset.c @@ -1609,9 +1609,9 @@ AllocSetCheck(MemoryContext context) prevblock = block, block = block->next) { char *bpoz = ((char *) block) + ALLOC_BLOCKHDRSZ; - long blk_used = block->freeptr - bpoz; - long blk_data = 0; - long nchunks = 0; + Size blk_used = block->freeptr - bpoz; + Size blk_data = 0; + Size nchunks = 0; bool has_external_chunk = false; if (IsKeeperBlock(set, block)) From ef6168bafe9be1a5781b2c471ffa4650f31f9a77 Mon Sep 17 00:00:00 2001 From: Richard Guo Date: Thu, 30 Oct 2025 12:03:15 +0900 Subject: [PATCH 347/457] Disable parallel plans for RIGHT_SEMI joins RIGHT_SEMI joins rely on the HEAP_TUPLE_HAS_MATCH flag to guarantee that only the first match for each inner tuple is considered. However, in a parallel hash join, the inner relation is stored in a shared global hash table that can be probed by multiple workers concurrently. This allows different workers to inspect and set the match flags of the same inner tuples at the same time. If two workers probe the same inner tuple concurrently, both may see the match flag as unset and emit the same tuple, leading to duplicate output rows and violating RIGHT_SEMI join semantics. For now, we disable parallel plans for RIGHT_SEMI joins. In the long term, it may be possible to support parallel execution by performing atomic operations on the match flag, for example using a CAS or similar mechanism. Backpatch to v18, where RIGHT_SEMI join was introduced. Bug: #19094 Reported-by: Lori Corbani Diagnosed-by: Tom Lane Author: Richard Guo Reviewed-by: Tom Lane Discussion: https://postgr.es/m/19094-6ed410eb5b256abd@postgresql.org Backpatch-through: 18 --- src/backend/optimizer/path/joinpath.c | 27 +++++++++++++++++++-------- src/test/regress/expected/join.out | 27 +++++++++++++++++++++++++++ src/test/regress/sql/join.sql | 20 ++++++++++++++++++++ 3 files changed, 66 insertions(+), 8 deletions(-) diff --git a/src/backend/optimizer/path/joinpath.c b/src/backend/optimizer/path/joinpath.c index 7aa8f5d799cac..af5aa8aea845b 100644 --- a/src/backend/optimizer/path/joinpath.c +++ b/src/backend/optimizer/path/joinpath.c @@ -2399,13 +2399,25 @@ hash_inner_and_outer(PlannerInfo *root, /* * If the joinrel is parallel-safe, we may be able to consider a - * partial hash join. However, we can't handle JOIN_UNIQUE_OUTER, - * because the outer path will be partial, and therefore we won't be - * able to properly guarantee uniqueness. Also, the resulting path - * must not be parameterized. + * partial hash join. + * + * However, we can't handle JOIN_UNIQUE_OUTER, because the outer path + * will be partial, and therefore we won't be able to properly + * guarantee uniqueness. + * + * Similarly, we can't handle JOIN_RIGHT_SEMI, because the hash table + * is either a shared hash table or a private hash table per backend. + * In the shared case, there is no concurrency protection for the + * match flags, so multiple workers could inspect and set the flags + * concurrently, potentially producing incorrect results. In the + * private case, each worker has its own copy of the hash table, so no + * single process has all the match flags. + * + * Also, the resulting path must not be parameterized. */ if (joinrel->consider_parallel && save_jointype != JOIN_UNIQUE_OUTER && + save_jointype != JOIN_RIGHT_SEMI && outerrel->partial_pathlist != NIL && bms_is_empty(joinrel->lateral_relids)) { @@ -2439,13 +2451,12 @@ hash_inner_and_outer(PlannerInfo *root, * total inner path will also be parallel-safe, but if not, we'll * have to search for the cheapest safe, unparameterized inner * path. If doing JOIN_UNIQUE_INNER, we can't use any alternative - * inner path. If full, right, right-semi or right-anti join, we - * can't use parallelism (building the hash table in each backend) - * because no one process has all the match bits. + * inner path. If full, right, or right-anti join, we can't use + * parallelism (building the hash table in each backend) because + * no one process has all the match bits. */ if (save_jointype == JOIN_FULL || save_jointype == JOIN_RIGHT || - save_jointype == JOIN_RIGHT_SEMI || save_jointype == JOIN_RIGHT_ANTI) cheapest_safe_inner = NULL; else if (cheapest_total_inner->parallel_safe) diff --git a/src/test/regress/expected/join.out b/src/test/regress/expected/join.out index f3de6971c2ece..6738ba316e684 100644 --- a/src/test/regress/expected/join.out +++ b/src/test/regress/expected/join.out @@ -3075,6 +3075,33 @@ select * from tbl_rs t1 join 3 | 3 | 4 | 4 (6 rows) +-- +-- regression test for bug with parallel-hash-right-semi join +-- +begin; +-- encourage use of parallel plans +set local parallel_setup_cost=0; +set local parallel_tuple_cost=0; +set local min_parallel_table_scan_size=0; +set local max_parallel_workers_per_gather=4; +-- ensure we don't get parallel hash right semi join +explain (costs off) +select * from tenk1 t1 +where exists (select 1 from tenk1 t2 where fivethous = t1.fivethous) +and t1.fivethous < 5; + QUERY PLAN +-------------------------------------------------- + Gather + Workers Planned: 4 + -> Parallel Hash Semi Join + Hash Cond: (t1.fivethous = t2.fivethous) + -> Parallel Seq Scan on tenk1 t1 + Filter: (fivethous < 5) + -> Parallel Hash + -> Parallel Seq Scan on tenk1 t2 +(8 rows) + +rollback; -- -- regression test for bug #13908 (hash join with skew tuples & nbatch increase) -- diff --git a/src/test/regress/sql/join.sql b/src/test/regress/sql/join.sql index 3533fd3600c8a..87865041e34ed 100644 --- a/src/test/regress/sql/join.sql +++ b/src/test/regress/sql/join.sql @@ -759,6 +759,26 @@ select * from tbl_rs t1 join (select t1.a+t3.a from tbl_rs t3) and t2.a < 5) on true; +-- +-- regression test for bug with parallel-hash-right-semi join +-- + +begin; + +-- encourage use of parallel plans +set local parallel_setup_cost=0; +set local parallel_tuple_cost=0; +set local min_parallel_table_scan_size=0; +set local max_parallel_workers_per_gather=4; + +-- ensure we don't get parallel hash right semi join +explain (costs off) +select * from tenk1 t1 +where exists (select 1 from tenk1 t2 where fivethous = t1.fivethous) +and t1.fivethous < 5; + +rollback; + -- -- regression test for bug #13908 (hash join with skew tuples & nbatch increase) -- From bf3dba508ee1c812b790e3f3f059659c69f74cdf Mon Sep 17 00:00:00 2001 From: Michael Paquier Date: Thu, 30 Oct 2025 13:13:31 +0900 Subject: [PATCH 348/457] Fix regression with slot invalidation checks This commit reverts 818fefd8fd4, that has been introduced to address a an instability in some of the TAP tests due to the presence of random standby snapshot WAL records, when slots are invalidated by InvalidatePossiblyObsoleteSlot(). Anyway, this commit had also the consequence of introducing a behavior regression. After 818fefd8fd4, the code may determine that a slot needs to be invalidated while it may not require one: the slot may have moved from a conflicting state to a non-conflicting state between the moment when the mutex is released and the moment when we recheck the slot, in InvalidatePossiblyObsoleteSlot(). Hence, the invalidations may be more aggressive than they actually have to. 105b2cb3361 has tackled the test instability in a way that should be hopefully sufficient for the buildfarm, even for slow members: - In v18, the test relies on an injection point that bypasses the creation of the random records generated for standby snapshots, eliminating the random factor that impacted the test. This option was not available when 818fefd8fd4 was discussed. - In v16 and v17, the problem was bypassed by disallowing a slot to become active in some of the scenarios tested. While on it, this commit adds a comment to document that it is fine for a recheck to use xmin and LSN values stored in the slot, without storing and reusing them across multiple checks. Reported-by: "suyu.cmj" Author: Bertrand Drouvot Reviewed-by: Masahiko Sawada Reviewed-by: Amit Kapila Discussion: https://postgr.es/m/f492465f-657e-49af-8317-987460cb68b0.mengjuan.cmj@alibaba-inc.com Backpatch-through: 16 --- src/backend/replication/slot.c | 70 ++++++++++++---------------------- 1 file changed, 24 insertions(+), 46 deletions(-) diff --git a/src/backend/replication/slot.c b/src/backend/replication/slot.c index 101157ed8c914..90f9e8068a665 100644 --- a/src/backend/replication/slot.c +++ b/src/backend/replication/slot.c @@ -1705,17 +1705,16 @@ static ReplicationSlotInvalidationCause DetermineSlotInvalidationCause(uint32 possible_causes, ReplicationSlot *s, XLogRecPtr oldestLSN, Oid dboid, TransactionId snapshotConflictHorizon, - TransactionId initial_effective_xmin, - TransactionId initial_catalog_effective_xmin, - XLogRecPtr initial_restart_lsn, TimestampTz *inactive_since, TimestampTz now) { Assert(possible_causes != RS_INVAL_NONE); if (possible_causes & RS_INVAL_WAL_REMOVED) { - if (initial_restart_lsn != InvalidXLogRecPtr && - initial_restart_lsn < oldestLSN) + XLogRecPtr restart_lsn = s->data.restart_lsn; + + if (restart_lsn != InvalidXLogRecPtr && + restart_lsn < oldestLSN) return RS_INVAL_WAL_REMOVED; } @@ -1725,12 +1724,15 @@ DetermineSlotInvalidationCause(uint32 possible_causes, ReplicationSlot *s, if (SlotIsLogical(s) && (dboid == InvalidOid || dboid == s->data.database)) { - if (TransactionIdIsValid(initial_effective_xmin) && - TransactionIdPrecedesOrEquals(initial_effective_xmin, + TransactionId effective_xmin = s->effective_xmin; + TransactionId catalog_effective_xmin = s->effective_catalog_xmin; + + if (TransactionIdIsValid(effective_xmin) && + TransactionIdPrecedesOrEquals(effective_xmin, snapshotConflictHorizon)) return RS_INVAL_HORIZON; - else if (TransactionIdIsValid(initial_catalog_effective_xmin) && - TransactionIdPrecedesOrEquals(initial_catalog_effective_xmin, + else if (TransactionIdIsValid(catalog_effective_xmin) && + TransactionIdPrecedesOrEquals(catalog_effective_xmin, snapshotConflictHorizon)) return RS_INVAL_HORIZON; } @@ -1799,11 +1801,6 @@ InvalidatePossiblyObsoleteSlot(uint32 possible_causes, { int last_signaled_pid = 0; bool released_lock = false; - bool terminated = false; - TransactionId initial_effective_xmin = InvalidTransactionId; - TransactionId initial_catalog_effective_xmin = InvalidTransactionId; - XLogRecPtr initial_restart_lsn = InvalidXLogRecPtr; - ReplicationSlotInvalidationCause invalidation_cause_prev PG_USED_FOR_ASSERTS_ONLY = RS_INVAL_NONE; TimestampTz inactive_since = 0; for (;;) @@ -1846,42 +1843,12 @@ InvalidatePossiblyObsoleteSlot(uint32 possible_causes, /* we do nothing if the slot is already invalid */ if (s->data.invalidated == RS_INVAL_NONE) - { - /* - * The slot's mutex will be released soon, and it is possible that - * those values change since the process holding the slot has been - * terminated (if any), so record them here to ensure that we - * would report the correct invalidation cause. - * - * Unlike other slot attributes, slot's inactive_since can't be - * changed until the acquired slot is released or the owning - * process is terminated. So, the inactive slot can only be - * invalidated immediately without being terminated. - */ - if (!terminated) - { - initial_restart_lsn = s->data.restart_lsn; - initial_effective_xmin = s->effective_xmin; - initial_catalog_effective_xmin = s->effective_catalog_xmin; - } - invalidation_cause = DetermineSlotInvalidationCause(possible_causes, s, oldestLSN, dboid, snapshotConflictHorizon, - initial_effective_xmin, - initial_catalog_effective_xmin, - initial_restart_lsn, &inactive_since, now); - } - - /* - * The invalidation cause recorded previously should not change while - * the process owning the slot (if any) has been terminated. - */ - Assert(!(invalidation_cause_prev != RS_INVAL_NONE && terminated && - invalidation_cause_prev != invalidation_cause)); /* if there's no invalidation, we're done */ if (invalidation_cause == RS_INVAL_NONE) @@ -1899,6 +1866,11 @@ InvalidatePossiblyObsoleteSlot(uint32 possible_causes, * If the slot can be acquired, do so and mark it invalidated * immediately. Otherwise we'll signal the owning process, below, and * retry. + * + * Note: Unlike other slot attributes, slot's inactive_since can't be + * changed until the acquired slot is released or the owning process + * is terminated. So, the inactive slot can only be invalidated + * immediately without being terminated. */ if (active_pid == 0) { @@ -1973,8 +1945,6 @@ InvalidatePossiblyObsoleteSlot(uint32 possible_causes, (void) kill(active_pid, SIGTERM); last_signaled_pid = active_pid; - terminated = true; - invalidation_cause_prev = invalidation_cause; } /* Wait until the slot is released. */ @@ -1985,6 +1955,14 @@ InvalidatePossiblyObsoleteSlot(uint32 possible_causes, * Re-acquire lock and start over; we expect to invalidate the * slot next time (unless another process acquires the slot in the * meantime). + * + * Note: It is possible for a slot to advance its restart_lsn or + * xmin values sufficiently between when we release the mutex and + * when we recheck, moving from a conflicting state to a non + * conflicting state. This is intentional and safe: if the slot + * has caught up while we're busy here, the resources we were + * concerned about (WAL segments or tuples) have not yet been + * removed, and there's no reason to invalidate the slot. */ LWLockAcquire(ReplicationSlotControlLock, LW_SHARED); continue; From fa78e5bea53a3096d1df7d1b2d7cbd58d15a9b7a Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Thu, 30 Oct 2025 10:59:56 +0100 Subject: [PATCH 349/457] docs: Link to the correct protocol version inspection function The docs for max_protocol_version suggested PQprotocolVersion() instead of PQfullProtocolVersion() to find out the exact protocol version. Since PQprotocolVersion() only returns the major protocol version, that is bad advice. Author: Jelte Fennema-Nio Reviewed-by: Shinya Kato Discussion: https://www.postgresql.org/message-id/flat/CAGECzQSKFxQsYAgr11PhdOr-RtPZEdAXZnHx6U3avLuk3xQaTQ%40mail.gmail.com --- doc/src/sgml/libpq.sgml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml index b2c2cf9eac831..cbb29b6ed40ac 100644 --- a/doc/src/sgml/libpq.sgml +++ b/doc/src/sgml/libpq.sgml @@ -2220,7 +2220,7 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname server does not support the protocol version requested by the client, the connection is automatically downgraded to a lower minor protocol version that the server supports. After the connection attempt has - completed you can use to + completed you can use to find out which exact protocol version was negotiated. From 3287bf62c9ea63763ea03bf8508e24ba3b73a8f3 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Thu, 30 Oct 2025 13:07:01 -0400 Subject: [PATCH 350/457] ci: Fix Windows and MinGW task names They use Windows Server 2022, not 2019. Author: Nazir Bilal Yavuz Discussion: https://postgr.es/m/flat/CAN55FZ1OsaM+852BMQDJ+Kgfg+07knJ6dM3PjbGbtYaK4qwfqA@mail.gmail.com --- .cirrus.tasks.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.tasks.yml b/.cirrus.tasks.yml index d84875168bb64..d44d388d5cacd 100644 --- a/.cirrus.tasks.yml +++ b/.cirrus.tasks.yml @@ -704,7 +704,7 @@ WINDOWS_ENVIRONMENT_BASE: &WINDOWS_ENVIRONMENT_BASE task: - name: Windows - Server 2019, VS 2019 - Meson & ninja + name: Windows - Server 2022, VS 2019 - Meson & ninja << : *WINDOWS_ENVIRONMENT_BASE env: @@ -755,7 +755,7 @@ task: task: << : *WINDOWS_ENVIRONMENT_BASE - name: Windows - Server 2019, MinGW64 - Meson + name: Windows - Server 2022, MinGW64 - Meson # See REPO_CI_AUTOMATIC_TRIGGER_TASKS in .cirrus.star. trigger_type: $CI_TRIGGER_TYPE_MINGW From a7e7bcac67f69b402332dea48c7710b95f6fd574 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Thu, 30 Oct 2025 16:08:43 -0400 Subject: [PATCH 351/457] ci: macos: Upgrade to Sequoia Author: Nazir Bilal Yavuz Discussion: https://postgr.es/m/CAN55FZ3kO4vLq56PWrfJ7Fw6Wz8DhEN9j9GX3aScx%2BWOirtK-g%40mail.gmail.com Backpatch: 15-, where CI support was added --- .cirrus.tasks.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.cirrus.tasks.yml b/.cirrus.tasks.yml index d44d388d5cacd..2251859c033b2 100644 --- a/.cirrus.tasks.yml +++ b/.cirrus.tasks.yml @@ -576,7 +576,7 @@ task: # SPECIAL: # - Enables --clone for pg_upgrade and pg_combinebackup task: - name: macOS - Sonoma - Meson + name: macOS - Sequoia - Meson env: CPUS: 4 # always get that much for cirrusci macOS instances @@ -585,7 +585,7 @@ task: # work OK. See # https://postgr.es/m/20220927040208.l3shfcidovpzqxfh%40awork3.anarazel.de TEST_JOBS: 8 - IMAGE: ghcr.io/cirruslabs/macos-runner:sonoma + IMAGE: ghcr.io/cirruslabs/macos-runner:sequoia CIRRUS_WORKING_DIR: ${HOME}/pgsql/ CCACHE_DIR: ${HOME}/ccache From 0941188056934cb6ae6de391bc57837620f16c26 Mon Sep 17 00:00:00 2001 From: Bruce Momjian Date: Thu, 30 Oct 2025 19:11:53 -0400 Subject: [PATCH 352/457] doc: rewrite random_page_cost description This removes some of the specifics of how the default was set, and adds a mention of latency as a reason the value is lower than the storage hardware might suggest. It still mentions caching. Discussion: https://postgr.es/m/CAKAnmmK_nSPYr53LobUwQD59a-8U9GEC3XGJ43oaTYJq5nAOkw@mail.gmail.com Backpatch-through: 13 --- doc/src/sgml/config.sgml | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 5aea6cc2fe8fc..8edf8c88f03ae 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -5907,24 +5907,24 @@ ANY num_sync ( @@ -2300,6 +2302,7 @@ include_dir 'conf.d' however, it may be useful for debugging, when the pg_dynshmem directory is stored on a RAM disk, or when other shared memory facilities are not available. + This parameter can only be set at server start. @@ -2413,6 +2416,7 @@ include_dir 'conf.d' / queue. The default value is 1048576. For 8 KB pages it allows to consume up to 8 GB of disk space. + This parameter can only be set at server start. @@ -2694,9 +2698,7 @@ include_dir 'conf.d' Controls the largest I/O size in operations that combine I/O, and silently limits the user-settable parameter io_combine_limit. - This parameter can only be set in - the postgresql.conf file or on the server - command line. + This parameter can only be set at server start. If this value is specified without units, it is taken as blocks, that is BLCKSZ bytes, typically 8kB. The maximum possible size depends on the operating system and block @@ -3967,6 +3969,7 @@ include_dir 'conf.d' blocks to prefetch. If this value is specified without units, it is taken as bytes. The default is 512kB. + This parameter can only be set at server start. @@ -4692,9 +4695,9 @@ restore_command = 'copy "C:\\server\\archivedir\\%f" "%p"' # Windows - Record commit time of transactions. This parameter - can only be set in postgresql.conf file or on the server - command line. The default value is off. + Record commit time of transactions. + This parameter can only be set at server start. + The default value is off. @@ -7010,8 +7013,7 @@ local0.* /var/log/postgresql determines the program name used to identify PostgreSQL messages in the log. The default is PostgreSQL. - This parameter can only be set in the postgresql.conf - file or on the server command line. + This parameter can only be set at server start. @@ -12207,6 +12209,7 @@ dynamic_library_path = '/usr/local/lib/postgresql:$libdir' main data files, wal for WAL files, and wal_init for WAL files when being initially allocated. + This parameter can only be set at server start. Some operating systems and file systems do not support direct I/O, so From 7889889e4ea81e4e93a7b3e0d138f831e9dbd48b Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 7 Nov 2025 14:56:36 -0500 Subject: [PATCH 386/457] First-draft release notes for 18.1. As usual, the release notes for other branches will be made by cutting these down, but put them up for community review first. Also as usual for a .1 release, there are some entries here that are not really relevant for v18 because they already appeared in 18.0. Those'll be removed later. --- doc/src/sgml/release-18.sgml | 1714 ++++++++++++++++++++++++++++++++++ 1 file changed, 1714 insertions(+) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 8811a6a1f33f1..1a5672258315a 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -1,6 +1,1720 @@ + + Release 18.1 + + + Release date: + 2025-11-13 + + + + This release contains a variety of fixes from 18.0. + For information about new features in major release 18, see + . + + + + Migration to Version 18.1 + + + A dump/restore is not required for those running 18.X. + + + + + Changes + + + + + + + Prevent unrecognized node type errors when a SQL/JSON + function such as JSON_VALUE has + a DEFAULT clause containing + a COLLATE expression (Jian He) + § + § + + + + + + + Correctly treat JSON constructor expressions, such + as JSON_OBJECT(), as non-strict (Tender Wang, + Richard Guo) + § + + + + In some cases these expressions can yield a non-null result despite + having one or more null inputs, making them non-strict. The planner + incorrectly classified them as strict and could perform incorrect + query transformations as a result. + + + + + + + Further fix processing of character classes within SIMILAR + TO regular expressions (Laurenz Albe) + § + + + + The previous fix for translating SIMILAR TO + pattern matching expressions to POSIX-style regular expressions + broke a corner case that formerly worked: if there is an escape + character right after the opening bracket and then a closing bracket + right after the escape sequence (for + example [\w]), the closing bracket was no longer + seen as terminating the character class. + + + + + + + Fix parsing of aggregate functions whose arguments contain a + sub-select with a FROM reference to a CTE outside + the aggregate function (Tom Lane) + § + + + + Such a CTE reference must act like a outer-level column reference + when determining the aggregate's semantic level; but it was not + being accounted for, leading to obscure planner or executor errors. + + + + + + + Avoid incorrect optimization of + variable-free HAVING clauses with grouping sets + (Richard Guo) + § + § + + + + + + + Do not use parallelism in hash right semi joins (Richard Guo) + § + + + + The case does not work reliably due to a race condition in updating + the join's shared hash table. + + + + + + + Avoid possible division-by-zero when creating ordered-append plans + (Richard Guo) + § + + + + This mistake could result in incorrect selection of the cheapest + path, or in an assertion failure in debug builds. + + + + + + + Fix no relation entry for relid errors in corner + cases while estimating SubPlan costs (Richard Guo) + § + + + + + + + Avoid unlikely use-after-free in planner's expansion of partitioned + tables (Bernd Reiß) + § + + + + There was a hazard only when the last live partition was + concurrently dropped. + + + + + + + Fix planner failure with index types that can do ordered access but + not index-only scans (Maxime Schoemans) + § + + + + This oversight resulted in errors like no data returned for + index-only scan. The case does not arise with any in-core + index type, but some extensions encountered the problem. + + + + + + + Remove faulty assertion in btree index cleanup (Peter Geoghegan) + § + + + + + + + Avoid possible out-of-memory or invalid memory alloc request + size failures during parallel GIN index build (Tomas Vondra) + § + + + + + + + Fix possible infinite loop in GIN index scans with multiple scan + conditions (Tom Lane) + § + + + + GIN can handle scan conditions that can reject non-matching entries + but are not useful for searching for relevant entries, for example + a tsquery clause like !term. But + such a condition must not be first in the array of scan conditions. + The code failed to ensure that in all cases, with the result that a + query having a mix of such conditions with normal conditions might + work or not depending on the order in which the conditions were + given in the query. + + + + + + + Ensure that GIN index scans can be canceled (Tom Lane) + § + + + + Some code paths were capable of running for a long time without + checking for interrupts. + + + + + + + Ensure that BRIN autosummarization provides a snapshot for index + expressions that need one (Álvaro Herrera) + § + § + + + + Previously, autosummarization would fail for such indexes, and then + leave placeholder index tuples behind, causing the index to bloat + over time. + + + + + + + Fix integer-overflow hazard in BRIN index scans when the table + contains close to 232 pages (Sunil S) + § + + + + This oversight could result in an infinite loop or scanning of + unneeded table pages. + + + + + + + Fix incorrect zero-extension of stored values in JIT-generated tuple + deforming code (David Rowley) + § + + + + When not using JIT, the equivalent code does sign-extension not + zero-extension, leading to a different Datum representation of small + integer data types. This inconsistency was masked in most cases, + but it is known to lead to could not find memoization table + entry errors when using Memoize plan nodes, and there might + be other symptoms. + + + + + + + Fix rare crash when processing hashed GROUPING + SETS queries (David Rowley) + § + + + + + + + Repair faulty hash-table-size-choosing logic in hash joins + (Tomas Vondra) + § + + + + Hash joins sometimes used more memory than intended, or failed to + divide it in an efficient way. + + + + + + + Improve relation lookup logic in statistics manipulation functions + (Nathan Bossart) + § + § + + + + Fix pg_restore_relation_stats(), + pg_clear_relation_stats(), + pg_restore_attribute_stats(), and + pg_clear_attribute_stats() to check + privileges before acquiring lock on the target relation + rather than after. + + + + + + + Fix incorrect logic for caching result-relation information for + triggers (David Rowley, Amit Langote) + § + + + + In cases where partitions' column sets aren't physically identical + to their parent partitioned tables' column sets, this oversight + could lead to crashes. + + + + + + + Add missing EvalPlanQual rechecks for TID Scan and TID Range Scan + plan nodes (Sophie Alpert, David Rowley) + § + § + + + + This omission led to possibly not rechecking a condition + on ctid during concurrent-update + situations, causing the update's behavior to vary depending on which + plan type had been selected. + + + + + + + Fix crash during EvalPlanQual rechecks on partitioned tables (David + Rowley, Amit Langote) + § + + + + + + + Fix EvalPlanQual handling of foreign or custom joins that do not + have an alternative local-join plan prepared for EPQ (Masahiko + Sawada, Etsuro Fujita) + § + + + + In such cases the foreign or custom access method should be invoked + normally, but that did not happen, typically leading to a crash. + + + + + + + Avoid duplicating hash partition constraints during DETACH + CONCURRENTLY (Haiyang Li) + § + + + + ALTER TABLE DETACH PARTITION CONCURRENTLY was + written to add a copy of the partitioning constraint to the + now-detached partition. This was misguided, partially because + non-concurrent DETACH doesn't do that, but mostly + because in the case of hash partitioning the constraint expression + contains references to the parent table's OID. That causes problems + during dump/restore, or if the parent table is dropped + after DETACH. In v19 and later, we'll no longer + create any such copied constraints at all. In released branches, to + minimize the risk of unforeseen consequences, only skip adding a + copied constraint if it is for hash partitioning. + + + + + + + Disallow generated columns in partition keys + (Jian He, Ashutosh Bapat) + § + + + + This was already not allowed, but the check missed some cases, such + as where the column reference is implicit in a whole-row reference. + + + + + + + Disallow generated columns in COPY ... FROM + ... WHERE clauses (Peter Eisentraut, Jian He) + § + + + + Previously, incorrect behavior or an obscure error message resulted + from attempting to reference such a column, since generated columns + have not yet been computed at the point + where WHERE filtering is done. + + + + + + + Prevent setting a column as identity if it has a not-null constraint + but the constraint is marked as invalid (Jian He) + § + + + + Identity columns must be not-null, but the check for that missed + this edge case. + + + + + + + Avoid potential use-after-free in parallel vacuum (Kevin Oommen + Anish) + § + + + + This bug seems to have no consequences in standard builds, but it's + theoretically a hazard. + + + + + + + Fix visibility checking for statistics objects + in pg_temp (Noah Misch) + § + + + + A statistics object located in a temporary schema cannot be named + without schema qualification, + but pg_statistics_obj_is_visible() missed that + memo and could return true regardless. In turn, + functions such as pg_describe_object() could + fail to schema-qualify the object's name as expected. + + + + + + + Fix pg_event_trigger_dropped_objects()'s + reporting of temporary status (Antoine Violin, Tom Lane) + § + § + + + + If a dropped column default, trigger, or RLS policy belongs to a + temporary table, report it with is_temporary + true. + + + + + + + Fix memory leakage in hashed subplans (Haiyang Li) + § + + + + Any memory consumed by the hash functions used for hashing tuples + constituted a query-lifespan memory leak. One way that could happen + is if the values being hashed require de-toasting. + + + + + + + Avoid leaking SMgrRelation objects in the + startup process (Jingtang Zhang) + § + + + + In a long-running standby server, the hashtable holding these + objects could bloat substantially, because there was no mechanism + for freeing no-longer-interesting entries. + + + + + + + Fix minor memory leak during WAL replay of database creation + (Nathan Bossart) + § + + + + + + + Fix corruption of the shared statistics table after out-of-memory + failures (Mikhail Kot) + § + + + + Previously, an out-of-memory failure partway through creating a new + hash table entry left a broken entry behind, potentially causing + errors in other sessions later. + + + + + + + Fix concurrent update issue in MERGE + (Yugo Nagata) + § + + + + When executing a MERGE UPDATE action, if there is + more than one concurrent update of the target row, the + lock-and-retry code would sometimes incorrectly identify the latest + version of the target tuple, leading to incorrect results. + + + + + + + Add missing replica identity checks in MERGE and + INSERT ... ON CONFLICT DO UPDATE + (Zhijie Hou) + § + § + + + + If MERGE may require update or delete actions, + and the target table publishes updates or deletes, insist that it + have a REPLICA IDENTITY defined. Failing to + require this can silently break replication. + Likewise, INSERT with + an UPDATE option must require REPLICA + IDENTITY if the target table publishes either inserts or + updates. + + + + + + + Avoid deadlock during DROP SUBSCRIPTION when + publisher is on the same server as subscriber (Dilip Kumar) + § + + + + + + + Fix incorrect reporting of replication lag + in pg_stat_replication view (Fujii Masao) + § + + + + If any standby server's replay LSN stopped advancing, + the write_lag + and flush_lag columns would eventually + stop updating. + + + + + + + Avoid duplicative log messages about + invalid primary_slot_name settings (Fujii Masao) + § + + + + + + + Avoid failures when synchronized_standby_slots + references nonexistent replication slots (Shlok Kyal) + § + + + + + + + Remove the unfinished slot state file after failing to write a + replication slot's state to disk (Michael Paquier) + § + + + + Previously, a failure such as out-of-disk-space resulted in leaving + a temporary state.tmp file behind. That's + problematic because it would block all subsequent attempts to + write the state, requiring manual intervention to clean up. + + + + + + + Fix mishandling of lock timeout signals in parallel apply workers + for logical replication (Hayato Kuroda) + § + + + + The same signal number was being used for both worker shutdown and + lock timeout, leading to confusion. + + + + + + + Avoid unwanted WAL receiver shutdown when switching from streaming + to archive WAL source (Xuneng Zhou) + § + + + + During a timeline change, a standby server's WAL receiver should + remain alive, waiting for a new WAL streaming start point. Instead + it was repeatedly shutting down and immediately getting restarted, + which could confuse status monitoring code. + + + + + + + Avoid failures in logical replication due to chance collisions of + file numbers between regular and temporary tables (Vignesh C) + § + + + + This low-probability problem manifested as transient errors + like unexpected duplicate for + tablespace X, + relfilenode Y. + contrib/autoprewarm was also affected. + A side-effect of the fix is that the SQL + function pg_filenode_relation() will now ignore + temporary tables. + + + + + + + Fix use-after-free issue in the relation synchronization cache + maintained by the pgoutput logical + decoding plugin (Vignesh C, Masahiko Sawada) + § + + + + An error during logical decoding could result in crashes in + subsequent logical decoding attempts in the same session. + The case is only reachable when pgoutput + is invoked via SQL functions. + + + + + + + Avoid unnecessary invalidation of logical replication slots + (Bertrand Drouvot) + § + + + + + + + Avoid assertion failure when trying to release a replication slot in + single-user mode (Hayato Kuroda) + § + + + + + + + Re-establish special case for C collation in + locale setup (Jeff Davis) + § + + + + This fixes a regression in access to shared catalogs early in + backend startup, before a database has been selected. It is not + known to be a problem for any + core PostgreSQL code, but some extensions + were broken. + + + + + + + Fix incorrect printing of messages about failures in checking + whether the user has Windows administrator privilege (Bryan Green) + § + + + + This code would have crashed or at least printed garbage. + No such cases have been reported though, indicating that failure of + these system calls is extremely rare. + + + + + + + Avoid startup failure on macOS and BSD platforms when there is a + collision with a pre-existing semaphore set (Tom Lane) + § + + + + If the pre-existing set has fewer semaphores than we asked for, + these platforms return EINVAL + not EEXIST as our code expected, resulting + in failure to start the database. + + + + + + + Avoid crash when attempting to + test PostgreSQL with certain libsanitizer + options (Emmanuel Sibi, Jacob Champion) + § + + + + + + + Fix false memory-context-checking warnings in debug builds + on 64-bit Windows (David Rowley) + § + + + + + + + Correctly handle GROUP BY DISTINCT in PL/pgSQL + assignment statements (Tom Lane) + § + + + + The parser failed to record the DISTINCT option + in this context, so that the command would act as if it were + plain GROUP BY. + + + + + + + Avoid leaking memory when handling a SQL error within PL/Python + (Tom Lane) + § + + + + This fixes a session-lifespan memory leak introduced in our previous + minor releases. + + + + + + + Fix libpq's trace output of characters + with the high bit set (Ran Benita) + § + + + + On platforms where char is considered signed, the + output included unsightly \xffffff decoration. + + + + + + + Fix libpq's handling of socket-related + errors on Windows within its GSSAPI logic (Ning Wu, Tom Lane) + § + + + + The code for encrypting/decrypting transmitted data using GSSAPI did + not correctly recognize error conditions on the connection socket, + since Windows reports those differently than other platforms. This + led to failure to make such connections on Windows. + + + + + + + Fix dumping of non-inherited not-null constraints on inherited table + columns (Dilip Kumar) + § + + + + pg_dump failed to preserve such + constraints when dumping from a pre-v18 server. + + + + + + + In pg_dump, dump security labels on + subscriptions and event triggers (Jian He, Fujii Masao) + § + + + + Labels on these types of objects were previously missed. + + + + + + + Fix pg_dump's sorting of default ACLs and + foreign key constraints (Kirill Reshke, Álvaro Herrera) + § + § + § + + + + Ensure consistent ordering of these database object types, as was + already done for other object types. + + + + + + + In pg_dump, label comments for + separately-dumped domain constraints with the proper dependency + (Noah Misch) + § + + + + This error could lead to + parallel pg_restore attempting to create + the comment before the constraint itself has been restored. + + + + + + + In pg_restore, skip comments and security + labels for publications and subscriptions that are not being + restored (Jian He, Fujii Masao) + § + § + + + + Do not emit COMMENT or SECURITY + LABEL commands for these objects + when + or is specified. + + + + + + + Fix assorted errors in the data compression logic + in pg_dump + and pg_restore + (Daniel Gustafsson, Tom Lane) + § + § + § + + + + Error checking was missing or incorrect in several places, and there + were also portability issues that would manifest on big-endian + hardware. These problems had been missed because this code is only + used to read compressed TOC files within directory-format + dumps. pg_dump never produces such a + dump; the case can be reached only by manually compressing the TOC + file after the fact, which is a supported thing to do but very + uncommon. + + + + + + + Fix pgbench to error out cleanly if + a COPY operation is started (Anthonin Bonnefoy) + § + + + + pgbench doesn't intend to support this + case, but previously it went into an infinite loop. + + + + + + + Fix pgbench's reporting of multiple + errors (Yugo Nagata) + § + + + + In cases where two successive PQgetResult calls + both fail, pgbench might report the wrong + error message. + + + + + + + In pgbench, fix faulty assertion about + errors in pipeline mode (Yugo Nagata) + § + + + + + + + Fix per-file memory leakage + in pg_combinebackup (Tom Lane) + § + + + + + + + Ensure that contrib/pg_buffercache functions + can be canceled (Satyanarayana Narlapuram, Yuhang Qiu) + § + § + + + + Some code paths were capable of running for a long time without + checking for interrupts. + + + + + + + Fix contrib/pg_prewarm's privilege checks for + indexes (Ayush Vatsa, Nathan Bossart) + § + § + + + + pg_prewarm() requires SELECT + privilege on relations to be prewarmed. However, since indexes have + no SQL privileges of their own, this resulted in non-superusers + being unable to prewarm indexes. Instead, check + for SELECT privilege on the index's table. + + + + + + + In contrib/pg_stat_statements, avoid + crash when two or more constants are marked as having the same + location in the SQL statement text (Sami Imseih, Dmitry Dolgov) + § + + + + + + + Make contrib/pgstattuple more robust about + empty or invalid index pages (Nitin Motiani) + § + + + + Count all-zero pages as free space, and ignore pages that are + invalid according to a check of the page's special-space size. + The code for btree indexes already counted all-zero pages as free, + but the hash and gist code would error out, which has been found to + be much less user-friendly. Similarly, make all three cases agree + on ignoring corrupted pages rather than throwing errors. + + + + + + + Fix building with LLVM version 21 and later (Holger Hoffstätte) + § + + + + + + + When building with meson, apply the same special optimization flags + for numeric.c + and checksum.c as the makefile build does + (Nathan Bossart, Jeff Davis) + § + § + + + + Use for both files, as well + as + for checksum.c, to match what the makefiles + have long done. + + + + + + + Fix PGXS build infrastructure to support building + NLS po files for extensions (Ryo Matsumura) + § + + + + + + + + Release 18 From f8ccab0e9701117a80385bf134ad2ce5c1dc68e8 Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Sat, 8 Nov 2025 12:25:45 +1300 Subject: [PATCH 387/457] Fix generic read and write barriers for Clang. generic-gcc.h maps our read and write barriers to C11 acquire and release fences using compiler builtins, for platforms where we don't have our own hand-rolled assembler. This is apparently enough for GCC, but the C11 memory model is only defined in terms of atomic accesses, and our barriers for non-atomic, non-volatile accesses were not always respected under Clang's stricter interpretation of the standard. This explains the occasional breakage observed on new RISC-V + Clang animal greenfly in lock-free PgAioHandle manipulation code containing a repeating pattern of loads and read barriers. The problem can also be observed in code generated for MIPS and LoongAarch, though we aren't currently testing those with Clang, and on x86, though we use our own assembler there. The scariest aspect is that we use the generic version on very common ARM systems, but it doesn't seem to reorder the relevant code there (or we'd have debugged this long ago). Fix by inserting an explicit compiler barrier. It expands to an empty assembler block declared to have memory side-effects, so registers are flushed and reordering is prevented. In those respects this is like the architecture-specific assembler versions, but the compiler is still in charge of generating the appropriate fence instruction. Done for write barriers on principle, though concrete problems have only been observed with read barriers. Reported-by: Alexander Lakhin Tested-by: Alexander Lakhin Discussion: https://postgr.es/m/d79691be-22bd-457d-9d90-18033b78c40a%40gmail.com Backpatch-through: 13 --- src/include/port/atomics/generic-gcc.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/include/port/atomics/generic-gcc.h b/src/include/port/atomics/generic-gcc.h index d8f04c89ccac2..1143c841580ed 100644 --- a/src/include/port/atomics/generic-gcc.h +++ b/src/include/port/atomics/generic-gcc.h @@ -44,12 +44,20 @@ #if !defined(pg_read_barrier_impl) && defined(HAVE_GCC__ATOMIC_INT32_CAS) /* acquire semantics include read barrier semantics */ -# define pg_read_barrier_impl() __atomic_thread_fence(__ATOMIC_ACQUIRE) +# define pg_read_barrier_impl() do \ +{ \ + pg_compiler_barrier_impl(); \ + __atomic_thread_fence(__ATOMIC_ACQUIRE); \ +} while (0) #endif #if !defined(pg_write_barrier_impl) && defined(HAVE_GCC__ATOMIC_INT32_CAS) /* release semantics include write barrier semantics */ -# define pg_write_barrier_impl() __atomic_thread_fence(__ATOMIC_RELEASE) +# define pg_write_barrier_impl() do \ +{ \ + pg_compiler_barrier_impl(); \ + __atomic_thread_fence(__ATOMIC_RELEASE); \ +} while (0) #endif From 5632d2f5deca271af7dd26a8e2a4a28f45f003dd Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 9 Nov 2025 12:30:08 -0500 Subject: [PATCH 388/457] Release notes for 18.1, 17.7, 16.11, 15.15, 14.20, 13.23. --- doc/src/sgml/release-18.sgml | 624 ++--------------------------------- 1 file changed, 19 insertions(+), 605 deletions(-) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 1a5672258315a..7b04859d32f31 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -52,82 +52,6 @@ Branch: REL_17_STABLE [1e6dfdaa0] 2025-11-04 12:25:20 +0100 - - Correctly treat JSON constructor expressions, such - as JSON_OBJECT(), as non-strict (Tender Wang, - Richard Guo) - § - - - - In some cases these expressions can yield a non-null result despite - having one or more null inputs, making them non-strict. The planner - incorrectly classified them as strict and could perform incorrect - query transformations as a result. - - - - - - - Further fix processing of character classes within SIMILAR - TO regular expressions (Laurenz Albe) - § - - - - The previous fix for translating SIMILAR TO - pattern matching expressions to POSIX-style regular expressions - broke a corner case that formerly worked: if there is an escape - character right after the opening bracket and then a closing bracket - right after the escape sequence (for - example [\w]), the closing bracket was no longer - seen as terminating the character class. - - - - - - - Fix parsing of aggregate functions whose arguments contain a - sub-select with a FROM reference to a CTE outside - the aggregate function (Tom Lane) - § - - - - Such a CTE reference must act like a outer-level column reference - when determining the aggregate's semantic level; but it was not - being accounted for, leading to obscure planner or executor errors. - - - - - - - Fix no relation entry for relid errors in corner - cases while estimating SubPlan costs (Richard Guo) - § - - - - - - - Avoid unlikely use-after-free in planner's expansion of partitioned - tables (Bernd Reiß) - § - - - - There was a hazard only when the last live partition was - concurrently dropped. - - - - - - - Fix possible infinite loop in GIN index scans with multiple scan - conditions (Tom Lane) - § - - - - GIN can handle scan conditions that can reject non-matching entries - but are not useful for searching for relevant entries, for example - a tsquery clause like !term. But - such a condition must not be first in the array of scan conditions. - The code failed to ensure that in all cases, with the result that a - query having a mix of such conditions with normal conditions might - work or not depending on the order in which the conditions were - given in the query. - - - - - - - Ensure that GIN index scans can be canceled (Tom Lane) - § - - - - Some code paths were capable of running for a long time without - checking for interrupts. - - - - - - - Add missing EvalPlanQual rechecks for TID Scan and TID Range Scan - plan nodes (Sophie Alpert, David Rowley) - § - § - - - - This omission led to possibly not rechecking a condition - on ctid during concurrent-update - situations, causing the update's behavior to vary depending on which - plan type had been selected. - - - - - - - Fix pg_event_trigger_dropped_objects()'s - reporting of temporary status (Antoine Violin, Tom Lane) - § - § - - - - If a dropped column default, trigger, or RLS policy belongs to a - temporary table, report it with is_temporary - true. - - - - - - - Fix memory leakage in hashed subplans (Haiyang Li) - § - - - - Any memory consumed by the hash functions used for hashing tuples - constituted a query-lifespan memory leak. One way that could happen - is if the values being hashed require de-toasting. - - - - - - - Avoid leaking SMgrRelation objects in the - startup process (Jingtang Zhang) - § - - - - In a long-running standby server, the hashtable holding these - objects could bloat substantially, because there was no mechanism - for freeing no-longer-interesting entries. - - - - - - - Fix corruption of the shared statistics table after out-of-memory - failures (Mikhail Kot) - § - - - - Previously, an out-of-memory failure partway through creating a new - hash table entry left a broken entry behind, potentially causing - errors in other sessions later. - - - - - - - Fix concurrent update issue in MERGE - (Yugo Nagata) - § - - - - When executing a MERGE UPDATE action, if there is - more than one concurrent update of the target row, the - lock-and-retry code would sometimes incorrectly identify the latest - version of the target tuple, leading to incorrect results. - - - - - - - Add missing replica identity checks in MERGE and - INSERT ... ON CONFLICT DO UPDATE - (Zhijie Hou) - § - § - - - - If MERGE may require update or delete actions, - and the target table publishes updates or deletes, insist that it - have a REPLICA IDENTITY defined. Failing to - require this can silently break replication. - Likewise, INSERT with - an UPDATE option must require REPLICA - IDENTITY if the target table publishes either inserts or - updates. - - - - - - - Avoid deadlock during DROP SUBSCRIPTION when - publisher is on the same server as subscriber (Dilip Kumar) - § - - - - - - - Avoid failures in logical replication due to chance collisions of - file numbers between regular and temporary tables (Vignesh C) - § - - - - This low-probability problem manifested as transient errors - like unexpected duplicate for - tablespace X, - relfilenode Y. - contrib/autoprewarm was also affected. - A side-effect of the fix is that the SQL - function pg_filenode_relation() will now ignore - temporary tables. - - - - - - - Avoid assertion failure when trying to release a replication slot in - single-user mode (Hayato Kuroda) - § - - - - - - - Avoid startup failure on macOS and BSD platforms when there is a - collision with a pre-existing semaphore set (Tom Lane) - § - - - - If the pre-existing set has fewer semaphores than we asked for, - these platforms return EINVAL - not EEXIST as our code expected, resulting - in failure to start the database. - - - - - - - Fix libpq's trace output of characters - with the high bit set (Ran Benita) - § - - - - On platforms where char is considered signed, the - output included unsightly \xffffff decoration. - - - - - - - In pg_dump, dump security labels on - subscriptions and event triggers (Jian He, Fujii Masao) - § - - - - Labels on these types of objects were previously missed. - - - - - - Fix pg_dump's sorting of default ACLs and - foreign key constraints (Kirill Reshke, Álvaro Herrera) - § - § + Fix pg_dump's sorting of + foreign key constraints (Álvaro Herrera) § - Ensure consistent ordering of these database object types, as was + Ensure consistent ordering of these database objects, as was already done for other object types. - - In pg_dump, label comments for - separately-dumped domain constraints with the proper dependency - (Noah Misch) - § - - - - This error could lead to - parallel pg_restore attempting to create - the comment before the constraint itself has been restored. - - - - - - - In pg_restore, skip comments and security - labels for publications and subscriptions that are not being - restored (Jian He, Fujii Masao) - § - § - - - - Do not emit COMMENT or SECURITY - LABEL commands for these objects - when - or is specified. - - - - - - - Fix building with LLVM version 21 and later (Holger Hoffstätte) - § - - - - - - When building with meson, apply the same special optimization flags - for numeric.c - and checksum.c as the makefile build does - (Nathan Bossart, Jeff Davis) - § - § + Harden our read and write barrier macros to satisfy Clang + (Thomas Munro) + § - Use for both files, as well - as - for checksum.c, to match what the makefiles - have long done. + We supposed that __atomic_thread_fence() is a + sufficient barrier to prevent the C compiler from re-ordering memory + accesses around it, but it appears that that's not true for Clang, + allowing it to generate incorrect code for at least RISC-V, MIPS, + and LoongArch machines. Add explicit compiler barriers to fix that. From 292b81a0be84e5e5c0a57dc0c48404eca74646f8 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 10 Nov 2025 12:58:04 +0100 Subject: [PATCH 389/457] Translation updates Source-Git-URL: https://git.postgresql.org/git/pgtranslation/messages.git Source-Git-Hash: 3de351860d82ccc17ca814f59f9013691d751125 --- src/backend/po/de.po | 1790 ++++++------ src/backend/po/es.po | 2106 +++++++-------- src/backend/po/ja.po | 3749 +++++++++++++------------- src/backend/po/ko.po | 7 +- src/backend/po/ru.po | 1745 ++++++------ src/bin/initdb/po/es.po | 4 +- src/bin/pg_amcheck/po/es.po | 2 +- src/bin/pg_archivecleanup/po/es.po | 26 +- src/bin/pg_basebackup/po/de.po | 278 +- src/bin/pg_basebackup/po/es.po | 309 ++- src/bin/pg_basebackup/po/fr.po | 288 +- src/bin/pg_basebackup/po/ja.po | 283 +- src/bin/pg_basebackup/po/ru.po | 302 ++- src/bin/pg_checksums/po/es.po | 8 +- src/bin/pg_combinebackup/po/es.po | 47 +- src/bin/pg_combinebackup/po/ru.po | 36 +- src/bin/pg_config/po/es.po | 2 +- src/bin/pg_controldata/po/es.po | 5 +- src/bin/pg_ctl/po/es.po | 3 +- src/bin/pg_dump/po/es.po | 306 +-- src/bin/pg_dump/po/ja.po | 1368 +++++----- src/bin/pg_dump/po/ru.po | 158 +- src/bin/pg_resetwal/po/es.po | 5 +- src/bin/pg_resetwal/po/ru.po | 4 +- src/bin/pg_rewind/po/es.po | 5 +- src/bin/pg_test_fsync/po/es.po | 2 +- src/bin/pg_test_timing/po/es.po | 2 +- src/bin/pg_upgrade/po/es.po | 44 +- src/bin/pg_upgrade/po/ja.po | 223 +- src/bin/pg_verifybackup/po/es.po | 2 +- src/bin/pg_waldump/po/es.po | 7 +- src/bin/pg_walsummary/po/es.po | 2 +- src/bin/psql/po/de.po | 89 +- src/bin/psql/po/es.po | 268 +- src/bin/psql/po/fr.po | 91 +- src/bin/psql/po/ja.po | 766 +++--- src/bin/psql/po/ru.po | 89 +- src/bin/scripts/po/es.po | 17 +- src/interfaces/ecpg/ecpglib/po/es.po | 2 +- src/interfaces/ecpg/preproc/po/es.po | 4 +- src/interfaces/libpq/po/es.po | 238 +- src/interfaces/libpq/po/fr.po | 18 +- src/interfaces/libpq/po/ja.po | 419 +-- src/interfaces/libpq/po/ru.po | 12 +- src/pl/plperl/po/es.po | 2 +- src/pl/plpgsql/src/po/es.po | 6 +- src/pl/plpython/po/es.po | 2 +- src/pl/tcl/po/es.po | 5 +- 48 files changed, 7471 insertions(+), 7675 deletions(-) diff --git a/src/backend/po/de.po b/src/backend/po/de.po index e580fa5eb731c..6e156e98dbbe0 100644 --- a/src/backend/po/de.po +++ b/src/backend/po/de.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-09-17 01:41+0000\n" -"PO-Revision-Date: 2025-09-17 06:58+0200\n" +"POT-Creation-Date: 2025-11-07 06:11+0000\n" +"PO-Revision-Date: 2025-11-07 08:38+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -89,14 +89,14 @@ 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:1246 -#: access/transam/xlogrecovery.c:1344 access/transam/xlogrecovery.c:1381 -#: access/transam/xlogrecovery.c:1448 backup/basebackup.c:2128 +#: 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:2485 -#: replication/slot.c:2526 replication/walsender.c:629 +#: 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 #, c-format @@ -106,8 +106,8 @@ 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 #: 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:2509 +#: replication/slot.c:2550 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -126,7 +126,7 @@ msgstr "konnte Datei »%s« nicht lesen: %d von %zu gelesen" #: 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:2391 replication/slot.c:2557 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 @@ -161,7 +161,7 @@ msgstr "" #: 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/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 @@ -169,8 +169,8 @@ 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 +#: 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 @@ -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:9340 access/transam/xlogfuncs.c:699 +#: 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 @@ -198,10 +198,10 @@ msgstr "konnte Datei »%s« nicht schreiben: %m" #: 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:8770 backup/basebackup_server.c:207 +#: 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:2359 replication/slot.c:2467 storage/file/fd.c:817 +#: 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 #, c-format @@ -216,19 +216,19 @@ msgstr "konnte Datei »%s« nicht fsyncen: %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 +#: 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: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 @@ -294,9 +294,9 @@ msgstr "konnte nicht von Befehl »%s« lesen: %m" msgid "no data was returned by command \"%s\"" msgstr "Befehl »%s« gab keine Daten zurück" -#: ../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() fehlgeschlagen: %m" @@ -357,8 +357,8 @@ 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:988 -#: replication/slot.c:2245 replication/slot.c:2387 storage/file/fd.c:835 +#: 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 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -719,7 +719,7 @@ msgstr "konnte Statuscode des Subprozesses nicht ermitteln: Fehlercode %lu" #: 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 +#: 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 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 @@ -899,7 +899,7 @@ msgstr "Aufforderung für BRIN-Range-Summarization für Index »%s« Seite %u wu #: 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" @@ -1191,7 +1191,7 @@ msgstr "auf temporäre Indexe anderer Sitzungen kann nicht zugegriffen werden" msgid "failed to re-find tuple within index \"%s\"" msgstr "konnte Tupel mit Index »%s« nicht erneut finden" -#: 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 @@ -1290,7 +1290,7 @@ msgstr "konnte die für das Zeichenketten-Hashing zu verwendende Sortierfolge ni #: 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 @@ -1401,12 +1401,12 @@ 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:9329 +#: 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:2306 storage/file/copydir.c:173 +#: replication/slot.c:2319 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" @@ -1424,7 +1424,7 @@ msgstr "konnte Datei »%s« nicht auf %u kürzen: %m" #: 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:2355 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 @@ -1618,47 +1618,47 @@ msgstr "Tabelle »%s«: Truncate wird ausgesetzt wegen Sperrkonflikt" msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "Paralleloption für Vacuum von »%s« wird deaktiviert --- Vacuum in temporären Tabellen kann nicht parallel ausgeführt werden" -#: access/heap/vacuumlazy.c:3766 +#: access/heap/vacuumlazy.c:3768 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "beim Scannen von Block %u Offset %u von 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 "beim Scannen von Block %u von Relation »%s.%s«" -#: access/heap/vacuumlazy.c:3773 +#: access/heap/vacuumlazy.c:3775 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "beim Scannen von 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 "beim Vacuum von Block %u Offset %u von 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 "beim Vacuum von Block %u von Relation »%s.%s«" -#: access/heap/vacuumlazy.c:3788 +#: access/heap/vacuumlazy.c:3790 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "beim Vacuum von 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 "beim Vacuum von Index »%s« von 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 "beim Säubern von Index »%s« von 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 "beim Trunkieren von Relation »%s.%s« auf %u Blöcke" @@ -1685,7 +1685,7 @@ msgstr "auf Index »%s« kann nicht zugegriffen werden, während er reindiziert #: 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« ist kein Index" @@ -1731,17 +1731,17 @@ msgstr "Index »%s« enthält eine halbtote interne Seite" msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it." msgstr "Die Ursache kann ein unterbrochenes VACUUM in Version 9.3 oder älter vor dem Upgrade sein. Bitte REINDEX durchführen." -#: 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 "Größe %zu der Indexzeile überschreitet 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 "Indexzeile verweist auf Tupel (%u,%u) in 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" @@ -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:4879 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4902 #, 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:1097 +#: access/transam/multixact.c:1098 #, 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:1099 access/transam/multixact.c:1106 -#: access/transam/multixact.c:1130 access/transam/multixact.c:1139 +#: 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 #, c-format msgid "" @@ -1847,65 +1847,65 @@ 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:1104 +#: access/transam/multixact.c:1105 #, 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:1125 access/transam/multixact.c:2482 +#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 #, 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:1134 access/transam/multixact.c:2491 +#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 #, 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:1195 +#: access/transam/multixact.c:1196 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "Grenzwert für Multixact-»Members« überschritten" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1197 #, 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:1201 +#: access/transam/multixact.c:1202 #, 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:1232 +#: access/transam/multixact.c:1233 #, 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:1237 +#: access/transam/multixact.c:1238 #, 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:1377 +#: access/transam/multixact.c:1378 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u existiert nicht mehr -- anscheinender Überlauf" -#: access/transam/multixact.c:1383 +#: access/transam/multixact.c:1384 #, 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:2487 access/transam/multixact.c:2496 +#: access/transam/multixact.c:2488 access/transam/multixact.c:2497 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1914,27 +1914,27 @@ 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:2775 +#: access/transam/multixact.c:2776 #, 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:2797 +#: access/transam/multixact.c:2798 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "MultiXact-Member-Wraparound-Schutz ist jetzt aktiviert" -#: access/transam/multixact.c:3188 +#: access/transam/multixact.c:3189 #, 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:3206 +#: access/transam/multixact.c:3207 #, 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:3525 +#: access/transam/multixact.c:3526 #, c-format msgid "invalid MultiXactId: %u" msgstr "ungültige MultiXactId: %u" @@ -1963,12 +1963,12 @@ msgstr "Verbindung mit parallelem Arbeitsprozess verloren" msgid "parallel worker" msgstr "paralleler Arbeitsprozess" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 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:896 +#: access/transam/parallel.c:1353 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" @@ -2229,9 +2229,9 @@ msgstr "ungültige Größe in Datei »%s« gespeichert" msgid "calculated CRC checksum does not match value stored in file \"%s\"" msgstr "berechnete CRC-Prüfsumme stimmt nicht mit dem Wert in Datei »%s« überein" -#: 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 "Fehlgeschlagen beim Anlegen eines WAL-Leseprozessors." @@ -2487,7 +2487,7 @@ 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 -#: replication/walsender.c:3074 +#: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "das angeforderte WAL-Segment %s wurde schon entfernt" @@ -2604,9 +2604,9 @@ msgstr[1] "ungültige WAL-Segmentgröße in Kontrolldatei (%d Bytes)" 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:4696 +#: access/transam/xlog.c:4726 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:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "Die Listensyntax ist ungültig." @@ -2754,128 +2754,128 @@ msgstr "Checkpoint komplett: %d Puffer geschrieben (%.1f%%), %d SLRU-Puffer gesc 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:7871 +#: access/transam/xlog.c:7869 #, c-format msgid "recovery restart point at %X/%X" msgstr "Recovery-Restart-Punkt bei %X/%X" -#: access/transam/xlog.c:7873 +#: access/transam/xlog.c:7871 #, 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:8137 +#: access/transam/xlog.c:8135 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "Restore-Punkt »%s« erzeugt bei %X/%X" -#: access/transam/xlog.c:8344 +#: access/transam/xlog.c:8342 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "Online-Sicherung wurde storniert, Wiederherstellung kann nicht fortgesetzt werden" -#: access/transam/xlog.c:8402 +#: access/transam/xlog.c:8400 #, 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:8468 +#: access/transam/xlog.c:8466 #, 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:8505 +#: access/transam/xlog.c:8503 #, 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:8775 +#: access/transam/xlog.c:8773 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "konnte Write-Through-Logdatei »%s« nicht fsyncen: %m" -#: access/transam/xlog.c:8780 +#: access/transam/xlog.c:8778 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "konnte Datei »%s« nicht fdatasyncen: %m" -#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 +#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 #, 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:8858 access/transam/xlog.c:9194 +#: 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« muss beim Serverstart auf »replica« oder »logical« gesetzt werden." -#: access/transam/xlog.c:8863 +#: access/transam/xlog.c:8861 #, c-format msgid "backup label too long (max %d bytes)" msgstr "Backup-Label zu lang (maximal %d Bytes)" -#: access/transam/xlog.c:8984 +#: access/transam/xlog.c:8982 #, 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:8986 access/transam/xlog.c:9282 +#: 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 "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:9066 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 "konnte symbolische Verknüpfung »%s« nicht lesen: %m" -#: access/transam/xlog.c:9073 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 "Ziel für symbolische Verknüpfung »%s« ist zu lang" -#: access/transam/xlog.c:9232 backup/basebackup.c:1283 +#: access/transam/xlog.c:9230 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:9233 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 "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:9280 +#: access/transam/xlog.c:9278 #, 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:9396 +#: access/transam/xlog.c:9394 #, 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:9410 +#: access/transam/xlog.c:9408 #, 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:9412 +#: 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 "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:9419 +#: access/transam/xlog.c:9417 #, c-format msgid "all required WAL segments have been archived" msgstr "alle benötigten WAL-Segmente wurden archiviert" -#: access/transam/xlog.c:9423 +#: 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-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:9462 +#: access/transam/xlog.c:9460 #, 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" @@ -3177,17 +3177,17 @@ msgstr "konnte Abbild bei %X/%X nicht wiederherstellen, komprimiert mit unbekann msgid "could not decompress image at %X/%X, block %d" msgstr "konnte Abbild bei %X/%X nicht dekomprimieren, 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 "starte Wiederherstellung aus Backup mit Redo-LSN %X/%X, Checkpoint-LSN %X/%X, auf Zeitleisten-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 "konnte die Redo-Position %X/%X, die vom Checkpoint-Datensatz bei %X/%X referenziert wird, nicht finden" -#: 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" @@ -3198,457 +3198,473 @@ msgstr "" "Wenn Sie gerade kein Backup wiederherstellen, dann versuchen Sie, die Datei »%s/backup_label« zu entfernen.\n" "Vorsicht: Wenn ein Backup wiederhergestellt wird und »%s/backup_label« gelöscht wird, dann wird das den Cluster verfälschen." -#: access/transam/xlogrecovery.c:666 +#: access/transam/xlogrecovery.c:667 #, c-format msgid "could not locate required checkpoint record at %X/%X" msgstr "konnte den nötigen Checkpoint-Datensatz bei %X/%X nicht finden" -#: 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 "konnte symbolische Verknüpfung »%s« nicht erstellen: %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 "ignoriere Datei »%s«, weil keine Datei »%s« existiert" -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:732 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "Datei »%s« wurde in »%s« umbenannt." -#: access/transam/xlogrecovery.c:737 +#: access/transam/xlogrecovery.c:738 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "Konnte Datei »%s« nicht in »%s« umbenennen: %m." -#: access/transam/xlogrecovery.c:776 +#: access/transam/xlogrecovery.c:777 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "starte Wiederherstellung aus Backup neu mit 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 "konnte keinen gültigen Checkpoint-Datensatz bei %X/%X finden" -#: access/transam/xlogrecovery.c:812 +#: access/transam/xlogrecovery.c:813 #, c-format msgid "entering standby mode" msgstr "Standby-Modus eingeschaltet" -#: access/transam/xlogrecovery.c:815 +#: access/transam/xlogrecovery.c:816 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "starte Point-in-Time-Recovery bis XID %u" -#: access/transam/xlogrecovery.c:819 +#: access/transam/xlogrecovery.c:820 #, c-format msgid "starting point-in-time recovery to %s" msgstr "starte Point-in-Time-Recovery bis %s" -#: access/transam/xlogrecovery.c:823 +#: access/transam/xlogrecovery.c:824 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "starte Point-in-Time-Recovery bis »%s«" -#: access/transam/xlogrecovery.c:827 +#: access/transam/xlogrecovery.c:828 #, 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:831 +#: access/transam/xlogrecovery.c:832 #, 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:834 +#: access/transam/xlogrecovery.c:835 #, c-format msgid "starting archive recovery" msgstr "starte Wiederherstellung aus Archiv" -#: access/transam/xlogrecovery.c:855 +#: access/transam/xlogrecovery.c:856 #, 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:858 +#: access/transam/xlogrecovery.c:859 #, 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:873 +#: access/transam/xlogrecovery.c:874 #, 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:901 +#: access/transam/xlogrecovery.c:902 #, c-format msgid "invalid next transaction ID" msgstr "ungültige nächste Transaktions-ID" -#: access/transam/xlogrecovery.c:906 +#: access/transam/xlogrecovery.c:907 #, c-format msgid "invalid redo in checkpoint record" msgstr "ungültiges Redo im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:917 +#: access/transam/xlogrecovery.c:918 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "ungültiger Redo-Datensatz im Shutdown-Checkpoint" -#: access/transam/xlogrecovery.c:946 +#: access/transam/xlogrecovery.c:947 #, 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:950 +#: access/transam/xlogrecovery.c:951 #, 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:993 +#: access/transam/xlogrecovery.c:994 #, 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:994 +#: access/transam/xlogrecovery.c:995 #, 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:1048 +#: access/transam/xlogrecovery.c:1049 #, 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:1113 +#: access/transam/xlogrecovery.c:1114 #, 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:1130 +#: access/transam/xlogrecovery.c:1131 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "weder »primary_conninfo« noch »restore_command« angegeben" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1132 #, 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:1139 +#: access/transam/xlogrecovery.c:1140 #, 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:1177 +#: access/transam/xlogrecovery.c:1178 #, c-format msgid "recovery target timeline %u does not exist" msgstr "recovery_target_timeline %u existiert nicht" -#: 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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "ungültige Daten in Datei »%s«" -#: access/transam/xlogrecovery.c:1327 +#: access/transam/xlogrecovery.c:1328 #, 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:1338 +#: access/transam/xlogrecovery.c:1339 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "dies ist ein inkrementelles Backup, kein Datenverzeichnis" -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1340 #, 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:1725 +#: access/transam/xlogrecovery.c:1726 #, 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:1748 +#: access/transam/xlogrecovery.c:1749 #, c-format msgid "redo starts at %X/%X" msgstr "Redo beginnt bei %X/%X" -#: access/transam/xlogrecovery.c:1761 +#: access/transam/xlogrecovery.c:1762 #, 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:1851 +#: access/transam/xlogrecovery.c:1852 #, 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:1883 +#: access/transam/xlogrecovery.c:1884 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "Redo fertig bei %X/%X Systembenutzung: %s" -#: access/transam/xlogrecovery.c:1889 +#: access/transam/xlogrecovery.c:1890 #, c-format msgid "last completed transaction was at log time %s" msgstr "letzte vollständige Transaktion war bei Logzeit %s" -#: access/transam/xlogrecovery.c:1898 +#: access/transam/xlogrecovery.c:1899 #, c-format msgid "redo is not required" msgstr "Redo nicht nötig" -#: access/transam/xlogrecovery.c:1910 +#: access/transam/xlogrecovery.c:1911 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "Wiederherstellung endete bevor das konfigurierte Wiederherstellungsziel erreicht wurde" -#: access/transam/xlogrecovery.c:2104 +#: access/transam/xlogrecovery.c:2105 #, 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:2171 +#: access/transam/xlogrecovery.c:2172 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "unerwarteter Verzeichniseintrag »%s« in %s gefunden" -#: access/transam/xlogrecovery.c:2173 +#: access/transam/xlogrecovery.c:2174 #, 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:2175 +#: access/transam/xlogrecovery.c:2176 #, 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:2227 +#: access/transam/xlogrecovery.c:2228 #, 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:2258 +#: access/transam/xlogrecovery.c:2259 #, 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:2296 +#: access/transam/xlogrecovery.c:2297 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "WAL-Redo bei %X/%X für %s" -#: access/transam/xlogrecovery.c:2394 +#: access/transam/xlogrecovery.c:2395 #, 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:2403 +#: access/transam/xlogrecovery.c:2404 #, 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:2419 +#: access/transam/xlogrecovery.c:2420 #, 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:2603 access/transam/xlogrecovery.c:2879 +#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 #, c-format msgid "recovery stopping after reaching consistency" msgstr "Wiederherstellung beendet nachdem Konsistenz erreicht wurde" -#: access/transam/xlogrecovery.c:2624 +#: access/transam/xlogrecovery.c:2625 #, c-format msgid "recovery stopping before WAL location (LSN) \"%X/%X\"" msgstr "Wiederherstellung beendet vor WAL-Position (LSN) »%X/%X«" -#: access/transam/xlogrecovery.c:2714 +#: access/transam/xlogrecovery.c:2715 #, 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:2721 +#: access/transam/xlogrecovery.c:2722 #, 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:2774 +#: access/transam/xlogrecovery.c:2775 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "Wiederherstellung beendet bei Restore-Punkt »%s«, Zeit %s" -#: access/transam/xlogrecovery.c:2792 +#: access/transam/xlogrecovery.c:2793 #, c-format msgid "recovery stopping after WAL location (LSN) \"%X/%X\"" msgstr "Wiederherstellung beendet nach WAL-Position (LSN) »%X/%X«" -#: access/transam/xlogrecovery.c:2859 +#: access/transam/xlogrecovery.c:2860 #, 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:2867 +#: access/transam/xlogrecovery.c:2868 #, 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:2948 +#: access/transam/xlogrecovery.c:2949 #, c-format msgid "pausing at the end of recovery" msgstr "pausiere am Ende der Wiederherstellung" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2950 #, 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:2952 access/transam/xlogrecovery.c:4698 +#: access/transam/xlogrecovery.c:2953 access/transam/xlogrecovery.c:4710 #, c-format msgid "recovery has paused" msgstr "Wiederherstellung wurde pausiert" -#: access/transam/xlogrecovery.c:2953 +#: access/transam/xlogrecovery.c:2954 #, 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:3216 +#: access/transam/xlogrecovery.c:3217 #, 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:3432 +#: access/transam/xlogrecovery.c:3433 #, 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:3439 +#: access/transam/xlogrecovery.c:3440 #, 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:4082 +#: access/transam/xlogrecovery.c:4094 #, c-format msgid "invalid checkpoint location" msgstr "ungültige Checkpoint-Position" -#: access/transam/xlogrecovery.c:4092 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint record" msgstr "ungültiger Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:4098 +#: access/transam/xlogrecovery.c:4110 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "ungültige Resource-Manager-ID im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:4106 +#: access/transam/xlogrecovery.c:4118 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "ungültige xl_info im Checkpoint-Datensatz" -#: access/transam/xlogrecovery.c:4112 +#: access/transam/xlogrecovery.c:4124 #, c-format msgid "invalid length of checkpoint record" msgstr "ungültige Länge des Checkpoint-Datensatzes" -#: access/transam/xlogrecovery.c:4166 +#: access/transam/xlogrecovery.c:4178 #, 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:4180 +#: access/transam/xlogrecovery.c:4192 #, 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:4199 +#: access/transam/xlogrecovery.c:4211 #, c-format msgid "new target timeline is %u" msgstr "neue Zielzeitleiste ist %u" -#: access/transam/xlogrecovery.c:4400 +#: access/transam/xlogrecovery.c:4412 #, c-format msgid "WAL receiver process shutdown requested" msgstr "Herunterfahren des WAL-Receiver-Prozesses verlangt" -#: access/transam/xlogrecovery.c:4460 +#: access/transam/xlogrecovery.c:4472 #, c-format msgid "received promote request" msgstr "Anforderung zum Befördern empfangen" -#: access/transam/xlogrecovery.c:4689 +#: access/transam/xlogrecovery.c:4701 #, 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:4690 access/transam/xlogrecovery.c:4717 -#: access/transam/xlogrecovery.c:4747 +#: access/transam/xlogrecovery.c:4702 access/transam/xlogrecovery.c:4729 +#: access/transam/xlogrecovery.c:4759 #, 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:4699 +#: access/transam/xlogrecovery.c:4711 #, 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:4700 +#: access/transam/xlogrecovery.c:4712 #, 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:4711 +#: access/transam/xlogrecovery.c:4723 #, 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:4721 +#: access/transam/xlogrecovery.c:4733 #, 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:4745 +#: access/transam/xlogrecovery.c:4757 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "Wiederherstellung abgebrochen wegen unzureichender Parametereinstellungen" -#: access/transam/xlogrecovery.c:4751 +#: access/transam/xlogrecovery.c:4763 #, 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:4792 +#: 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 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4815 #, c-format msgid "multiple recovery targets specified" msgstr "mehrere Wiederherstellungsziele angegeben" -#: access/transam/xlogrecovery.c:4793 +#: access/transam/xlogrecovery.c:4816 #, 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:4804 +#: access/transam/xlogrecovery.c:4827 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Der einzige erlaubte Wert ist »immediate«." -#: access/transam/xlogrecovery.c:4958 +#: access/transam/xlogrecovery.c:4981 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "Timestamp ist außerhalb des gültigen Bereichs: »%s«." -#: access/transam/xlogrecovery.c:5003 +#: access/transam/xlogrecovery.c:5026 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "»recovery_target_timeline« ist keine gültige Zahl." @@ -3949,7 +3965,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:2233 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -4187,20 +4203,20 @@ msgstr "Klausel IN SCHEMA kann nicht verwendet werden, wenn GRANT/REVOKE ON LARG #: 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/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" @@ -4211,13 +4227,13 @@ msgstr "Spalte »%s« von Relation »%s« existiert nicht" msgid "\"%s\" is an index" msgstr "»%s« ist ein Index" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 +#: catalog/aclchk.c:1827 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 -#: commands/tablecmds.c:19614 utils/adt/acl.c:2122 utils/adt/acl.c:2152 +#: 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 @@ -4738,21 +4754,6 @@ msgstr[1] "" msgid "cannot drop %s because other objects depend on it" msgstr "kann %s nicht löschen, weil andere Objekte davon abhängen" -#: 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." @@ -4781,8 +4782,8 @@ msgid "transition table \"%s\" cannot be referenced in a persistent object" msgstr "auf Übergangstabelle »%s« kann in einem persistenten Objekt nicht verwiesen werden" #: 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 "Spalte %d von Relation »%s« existiert nicht" @@ -4905,7 +4906,7 @@ 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:9796 +#: catalog/index.c:915 catalog/pg_constraint.c:1008 commands/tablecmds.c:9821 #, c-format msgid "constraint \"%s\" for relation \"%s\" already exists" msgstr "Constraint »%s« existiert bereits für Relation »%s«" @@ -4938,7 +4939,7 @@ msgstr "Constraint »%s« wird mit geerbter Definition zusammengeführt" #: 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 +#: commands/tablecmds.c:17583 commands/tablecmds.c:17765 #, c-format msgid "too many inheritance parents" msgstr "zu viele Elterntabellen" @@ -5159,7 +5160,6 @@ msgid "could not obtain lock on relation \"%s\"" msgstr "konnte Sperre für Relation »%s« nicht setzen" #: catalog/namespace.c:633 parser/parse_relation.c:1447 -#: statistics/stat_utils.c:231 #, c-format msgid "relation \"%s.%s\" does not exist" msgstr "Relation »%s.%s« existiert nicht" @@ -5170,7 +5170,7 @@ msgstr "Relation »%s.%s« existiert nicht" msgid "relation \"%s\" does not exist" msgstr "Relation »%s« existiert nicht" -#: 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" @@ -5196,105 +5196,105 @@ msgstr "nur temporäre Relationen können in temporären Schemas erzeugt werden" msgid "statistics object \"%s\" does not exist" msgstr "Statistikobjekt »%s« existiert nicht" -#: catalog/namespace.c:2761 +#: catalog/namespace.c:2764 #, c-format msgid "text search parser \"%s\" does not exist" msgstr "Textsucheparser »%s« existiert nicht" -#: 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 "Textsuchewörterbuch »%s« existiert nicht" -#: catalog/namespace.c:3052 +#: catalog/namespace.c:3055 #, c-format msgid "text search template \"%s\" does not exist" msgstr "Textsuchevorlage »%s« existiert nicht" -#: 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 "Textsuchekonfiguration »%s« existiert nicht" -#: 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 "Verweise auf andere Datenbanken sind nicht implementiert: %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 "falscher qualifizierter Name (zu viele Namensteile): %s" -#: catalog/namespace.c:3465 +#: catalog/namespace.c:3468 #, c-format msgid "cannot move objects into or out of temporary schemas" msgstr "Objekte können nicht in oder aus temporären Schemas verschoben werden" -#: catalog/namespace.c:3471 +#: catalog/namespace.c:3474 #, c-format msgid "cannot move objects into or out of TOAST schema" msgstr "Objekte können nicht in oder aus TOAST-Schemas verschoben werden" -#: 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« existiert nicht" -#: catalog/namespace.c:3575 +#: catalog/namespace.c:3578 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "falscher Relationsname (zu viele Namensteile): %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 "Sortierfolge »%s« für Kodierung »%s« existiert nicht" -#: catalog/namespace.c:4071 +#: catalog/namespace.c:4074 #, c-format msgid "conversion \"%s\" does not exist" msgstr "Konversion »%s« existiert nicht" -#: catalog/namespace.c:4412 +#: catalog/namespace.c:4415 #, c-format msgid "permission denied to create temporary tables in database \"%s\"" msgstr "keine Berechtigung, um temporäre Tabellen in Datenbank »%s« zu erzeugen" -#: catalog/namespace.c:4428 +#: catalog/namespace.c:4431 #, c-format msgid "cannot create temporary tables during recovery" msgstr "während der Wiederherstellung können keine temporären Tabellen erzeugt werden" -#: catalog/namespace.c:4434 +#: catalog/namespace.c:4437 #, c-format msgid "cannot create temporary tables during a parallel operation" msgstr "während einer parallelen Operation können keine temporären Tabellen erzeugt werden" #: 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« ist keine Tabelle" #: 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« ist keine Sicht" #: 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« ist keine materialisierte Sicht" #: 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« ist keine Fremdtabelle" @@ -5991,17 +5991,18 @@ msgstr "Sortierfolge »%s« für Kodierung »%s« existiert bereits" 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: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 "Sie müssen möglicherweise den bestehenden Constraint mit %s vererbbar machen." -#: 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 "inkompatibler NOT-VALID-Constraint »%s« für Relation »%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 "Sie müssen ihn möglicherweise mit %s validieren." @@ -6112,7 +6113,7 @@ msgid "The partition is being detached concurrently or has an unfinished detach. msgstr "Die Partition wird nebenläufig abgetrennt oder hat eine unfertige Abtrennoperation." #: 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 "Verwendet Sie ALTER TABLE ... DETACH PARTITION ... FINALIZE, um die unerledigte Abtrennoperation abzuschließen." @@ -6502,7 +6503,7 @@ msgstr "Fehler während der Erzeugung eines Multirange-Typs für Typ »%s«." msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute." msgstr "Sie können einen Multirange-Typnamen manuell angeben, mit dem Attribut »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 "ungültige Seite in Block %u von Relation »%s«" @@ -6819,7 +6820,7 @@ msgstr "kann temporäre Tabellen anderer Sitzungen nicht clustern" msgid "there is no previously clustered index for table \"%s\"" msgstr "es gibt keinen bereits geclusterten Index für Tabelle »%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 Tabelle »%s« existiert nicht" @@ -6834,7 +6835,7 @@ msgstr "globaler Katalog kann nicht geclustert werden" msgid "cannot vacuum temporary tables of other sessions" msgstr "temporäre Tabellen anderer Sitzungen können nicht gevacuumt werden" -#: 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« ist kein Index für Tabelle »%s«" @@ -6899,14 +6900,14 @@ msgid "collation attribute \"%s\" not recognized" msgstr "Attribut »%s« für Sortierfolge unbekannt" #: 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: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 "widersprüchliche oder überflüssige Optionen" @@ -6976,8 +6977,8 @@ msgstr "Version der Standardsortierfolge kann nicht aufgefrischt werden" #. 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." @@ -7104,167 +7105,179 @@ msgstr "keine Berechtigung für COPY in eine Datei" msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgstr "Nur Rollen mit den Privilegien der Rolle »%s« können mit COPY in eine Datei schreiben." -#: commands/copy.c:193 +#: commands/copy.c:182 +#, c-format +msgid "generated columns are not supported in COPY FROM WHERE conditions" +msgstr "generierte Spalten werden in COPY-FROM-WHERE-Bedingungen nicht unterstützt" + +#: 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 +#, c-format +msgid "Column \"%s\" is a generated column." +msgstr "Spalte »%s« ist eine generierte Spalte." + +#: commands/copy.c:232 #, c-format msgid "COPY FROM not supported with row-level security" msgstr "COPY FROM wird nicht unterstützt mit Sicherheit auf Zeilenebene" -#: commands/copy.c:194 +#: commands/copy.c:233 #, c-format msgid "Use INSERT statements instead." msgstr "Verwenden Sie stattdessen INSERT-Anweisungen." -#: commands/copy.c:375 +#: commands/copy.c:414 #, c-format msgid "cannot use \"%s\" with HEADER in COPY TO" msgstr "»%s« kann nicht mit HEADER in COPY TO verwendet werden" -#: commands/copy.c:384 +#: commands/copy.c:423 #, c-format msgid "%s requires a Boolean value or \"match\"" msgstr "%s erfordert einen Boole’schen Wert oder »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 kann nicht mit %s verwendet werden" #. 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« nicht erkannt" -#: 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 erfordert einen numerischen Wert" -#: commands/copy.c:446 +#: commands/copy.c:485 #, c-format msgid "REJECT_LIMIT (%) must be greater than zero" msgstr "REJECT_LIMIT (%) muss größer als null sein" -#: commands/copy.c:536 +#: commands/copy.c:575 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "COPY-Format »%s« nicht erkannt" -#: 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 "Argument von Option »%s« muss eine Liste aus Spaltennamen sein" -#: commands/copy.c:655 +#: commands/copy.c:694 #, c-format 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:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2420 #, c-format msgid "option \"%s\" not recognized" msgstr "Option »%s« nicht erkannt" #. 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 "%s kann nicht im BINARY-Modus angegeben werden" -#: commands/copy.c:728 +#: commands/copy.c:767 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "DELIMITER für COPY muss ein einzelnes Ein-Byte-Zeichen sein" -#: commands/copy.c:735 +#: commands/copy.c:774 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "COPY-Trennzeichen kann nicht Newline oder Carriage Return sein" -#: commands/copy.c:741 +#: commands/copy.c:780 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "COPY NULL-Darstellung kann nicht Newline oder Carriage Return enthalten" -#: commands/copy.c:751 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "COPY DEFAULT-Darstellung kann nicht Newline oder Carriage Return enthalten" -#: commands/copy.c:769 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "DELIMITER für COPY darf nicht »%s« sein" #. 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 benötigt CSV-Modus" -#: commands/copy.c:788 +#: commands/copy.c:827 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "Quote-Zeichen für COPY muss ein einzelnes Ein-Byte-Zeichen sein" -#: commands/copy.c:793 +#: commands/copy.c:832 #, c-format msgid "COPY delimiter and quote must be different" msgstr "DELIMITER und QUOTE für COPY müssen verschieden sein" -#: commands/copy.c:805 +#: commands/copy.c:844 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "Escape-Zeichen für COPY muss ein einzelnes Ein-Byte-Zeichen sein" #. 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 "Trennzeichen für COPY darf nicht in der %s-Darstellung erscheinen" #. 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-Quote-Zeichen darf nicht in der %s-Darstellung erscheinen" -#: commands/copy.c:913 +#: commands/copy.c:952 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "NULL-Darstellung und DEFAULT-Darstellung können nicht gleich sein" -#: commands/copy.c:919 +#: commands/copy.c:958 #, c-format msgid "only ON_ERROR STOP is allowed in BINARY mode" msgstr "nur ON_ERROR STOP ist im BINARY-Modus erlaubt" #. 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 erfordert, dass %s auf %s gesetzt ist" -#: commands/copy.c:988 +#: commands/copy.c:1027 #, c-format msgid "column \"%s\" is a generated column" msgstr "Spalte »%s« ist eine generierte Spalte" -#: commands/copy.c:990 +#: commands/copy.c:1029 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "Generierte Spalten können nicht in COPY verwendet werden." -#: commands/copy.c:1005 commands/indexcmds.c:1959 commands/statscmds.c:239 +#: commands/copy.c:1044 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 @@ -7274,7 +7287,7 @@ msgstr "Generierte Spalten können nicht in COPY verwendet werden." msgid "column \"%s\" does not exist" msgstr "Spalte »%s« existiert nicht" -#: 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" @@ -7435,17 +7448,17 @@ msgid "could not read from COPY file: %m" msgstr "konnte nicht aus COPY-Datei lesen: %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 "unerwartetes EOF auf Client-Verbindung mit einer offenen 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 "unerwarteter Messagetyp 0x%02X während COPY FROM 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 FROM STDIN fehlgeschlagen: %s" @@ -7932,7 +7945,7 @@ msgid "data directory with the specified OID %u already exists" msgstr "Datenverzeichnis mit der angegebenen OID %u existiert bereits" #: 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 "Kodierung »%s« stimmt nicht mit Locale »%s« überein" @@ -8018,7 +8031,7 @@ msgid "You must move them back to the database's default tablespace before using 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:3451 +#: commands/dbcommands.c:3338 commands/dbcommands.c:3452 #, 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" @@ -8122,7 +8135,7 @@ msgstr "Verwenden Sie DROP AGGREGATE, um Aggregatfunktionen zu löschen." #: 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« existiert nicht, wird übersprungen" @@ -9322,8 +9335,8 @@ msgstr "inkludierte Spalte unterstützt die Optionen NULLS FIRST/LAST nicht" 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: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: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" @@ -9359,8 +9372,8 @@ msgstr "Zugriffsmethode »%s« unterstützt die Optionen ASC/DESC nicht" msgid "access method \"%s\" does not support NULLS FIRST/LAST options" msgstr "Zugriffsmethode »%s« unterstützt die Optionen NULLS FIRST/LAST nicht" -#: 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 "Datentyp %s hat keine Standardoperatorklasse für Zugriffsmethode »%s«" @@ -9396,7 +9409,7 @@ msgstr "konnte keinen Überlappungsoperator für Typ %s ermitteln" msgid "could not identify a contained-by operator for type %s" msgstr "konnte keinen Contained-By-Operator für Typ %s ermitteln" -#: 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 "Konnte Vergleichstyp %d für Operatorfamilie »%s« von Zugriffsmethode »%s« nicht übersetzen." @@ -9834,8 +9847,8 @@ msgstr "Operator-Attribut »%s« kann nicht geändert werden, wenn es schon gese #: 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/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 @@ -10296,8 +10309,8 @@ msgstr "Sequenz muss im selben Schema wie die verknüpfte Tabelle sein" msgid "cannot change ownership of identity sequence" msgstr "kann Eigentümer einer Identitätssequenz nicht ändern" -#: 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 "Sequenz »%s« ist mit Tabelle »%s« verknüpft." @@ -10372,12 +10385,12 @@ msgstr "doppelter Spaltenname in Statistikdefinition" msgid "duplicate expression in statistics definition" msgstr "doppelter Ausdruck in Statistikdefinition" -#: commands/statscmds.c:646 commands/tablecmds.c:8914 +#: commands/statscmds.c:646 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:8922 +#: commands/statscmds.c:654 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "setze Statistikziel auf %d herab" @@ -10387,7 +10400,7 @@ msgstr "setze Statistikziel auf %d herab" 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:410 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:411 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "unbekannter Origin-Wert: »%s«" @@ -10599,7 +10612,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:1162 +#: replication/pgoutput/pgoutput.c:1185 #, 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" @@ -10696,7 +10709,7 @@ msgstr "materialisierte Sicht »%s« existiert nicht, wird übersprungen" msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "Verwenden Sie DROP MATERIALIZED VIEW, um eine materialisierte Sicht zu löschen." -#: 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" @@ -10720,8 +10733,8 @@ msgstr "»%s« ist kein Typ" msgid "Use DROP TYPE to remove a type." msgstr "Verwenden Sie DROP TYPE, um einen Typen zu löschen." -#: 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 "Fremdtabelle »%s« existiert nicht" @@ -10750,7 +10763,7 @@ msgstr "partitionierte Tabellen können nicht ungeloggt sein" msgid "cannot create temporary table within security-restricted operation" msgstr "kann temporäre Tabelle nicht in einer sicherheitsbeschränkten Operation erzeugen" -#: 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 "von der Relation »%s« würde mehrmals geerbt werden" @@ -10775,7 +10788,7 @@ msgstr "kann keine Fremdpartition der partitionierten Tabelle »%s« erzeugen" msgid "Table \"%s\" contains indexes that are unique." msgstr "Tabelle »%s« enthält Unique Indexe." -#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14952 #, c-format msgid "too many array dimensions" msgstr "zu viele Array-Dimensionen" @@ -10826,7 +10839,7 @@ msgstr "kann Fremdtabelle »%s« nicht leeren" msgid "cannot truncate temporary tables of other sessions" msgstr "kann temporäre Tabellen anderer Sitzungen nicht leeren" -#: 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 "von partitionierter Tabelle »%s« kann nicht geerbt werden" @@ -10847,18 +10860,18 @@ msgstr "geerbte Relation »%s« ist keine Tabelle oder Fremdtabelle" msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "eine temporäre Relation kann nicht als Partition der permanenten Relation »%s« erzeugt werden" -#: 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 "von temporärer Relation »%s« kann nicht geerbt werden" -#: 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 "von temporärer Relation einer anderen Sitzung kann nicht geerbt werden" #: 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 @@ -10896,13 +10909,13 @@ msgid "A child table column cannot be generated unless its parent column is." msgstr "Eine Spalte einer abgeleiteten Tabelle kann nur generiert sein, wenn die Spalte in der Elterntabelle es auch ist." #: 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 "Spalte »%s« erbt von einer generierten Spalte einer anderen Art" #: 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 "Spalte in Elterntabelle ist %s, Spalte in abgeleiteter Tabelle ist %s." @@ -10971,7 +10984,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 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4776 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "»%s« gegen »%s«" @@ -11174,12 +11187,12 @@ msgstr "zu einer getypten Tabelle kann keine Spalte hinzugefügt werden" msgid "cannot add column to a partition" msgstr "zu einer Partition kann keine Spalte hinzugefügt werden" -#: 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 "abgeleitete Tabelle »%s« hat unterschiedlichen Typ für Spalte »%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 "abgeleitete Tabelle »%s« hat unterschiedliche Sortierfolge für Spalte »%s«" @@ -11211,17 +11224,17 @@ msgstr "Spalte »%s« von Relation »%s« existiert bereits" #: 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 "Systemspalte »%s« kann nicht geändert werden" #: 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 "Spalte »%s« von Relation »%s« ist eine Identitätsspalte" @@ -11231,14 +11244,14 @@ msgstr "Spalte »%s« von Relation »%s« ist eine Identitätsspalte" msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "Spalte »%s« ist in Elterntabelle als NOT NULL markiert" -#: 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 "Constraint muss ebenso in den abgeleiteten Tabellen hinzugefügt werden" #: 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 "Lassen Sie das Schlüsselwort ONLY weg." @@ -11263,1018 +11276,1011 @@ msgstr "zu einer Spalte einer Partition kann keine Identität hinzugefügt werde msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added" msgstr "Spalte »%s« von Relation »%s« muss als NOT NULL deklariert werden, bevor Sie Identitätsspalte werden kann" -#: commands/tablecmds.c:8285 +#: commands/tablecmds.c:8310 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "Spalte »%s« von Relation »%s« ist bereits eine Identitätsspalte" -#: commands/tablecmds.c:8291 +#: commands/tablecmds.c:8316 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "Spalte »%s« von Relation »%s« hat bereits einen Vorgabewert" -#: commands/tablecmds.c:8352 +#: commands/tablecmds.c:8377 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "Identitätsspalte kann nicht nur in der partitionierten Tabelle geändert werden" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8383 #, c-format msgid "cannot change identity column of a partition" msgstr "Identitätsspalte einer Partition kann nicht geändert werden" -#: 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 "Spalte »%s« von Relation »%s« ist keine Identitätsspalte" -#: commands/tablecmds.c:8469 +#: commands/tablecmds.c:8494 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "Identität kann nicht von einer Spalte nur in der partitionierten Tabelle gelöscht werden" -#: commands/tablecmds.c:8475 +#: commands/tablecmds.c:8500 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "Identität kann nicht von einer Spalte einer Partition gelöscht werden" -#: commands/tablecmds.c:8504 +#: commands/tablecmds.c:8529 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "Spalte »%s« von Relation »%s« ist keine Identitätsspalte, wird übersprungen" -#: 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 "Spalte »%s« von Relation »%s« ist keine generierte Spalte" -#: 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 wird nicht unterstützt für virtuelle generierte Spalten in Tabellen mit Check-Constraints" -#: 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 "Spalte »%s« von Relation »%s« ist eine virtuelle generierte Spalte." -#: 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 wird nicht unterstützt für virtuelle generierte Spalten in Tabellen, die Teil einer Publikation sind" -#: 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 muss auch auf abgeleitete Tabellen angewendet werden" -#: commands/tablecmds.c:8759 +#: commands/tablecmds.c:8784 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "Generierungsausdruck von vererbter Spalte kann nicht gelöscht werden" -#: 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 wird für virtuelle generierte Spalten nicht unterstützt" -#: commands/tablecmds.c:8816 +#: commands/tablecmds.c:8841 #, c-format msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "Spalte »%s« von Relation »%s« ist keine generierte Spalte, wird übersprungen" -#: commands/tablecmds.c:8894 +#: commands/tablecmds.c:8919 #, c-format msgid "cannot refer to non-index column by number" msgstr "auf eine Nicht-Index-Spalte kann nicht per Nummer verwiesen werden" -#: commands/tablecmds.c:8946 +#: commands/tablecmds.c:8971 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "Spalte Nummer %d von Relation »%s« existiert nicht" -#: commands/tablecmds.c:8966 +#: commands/tablecmds.c:8991 #, c-format msgid "cannot alter statistics on virtual generated column \"%s\"" msgstr "Statistiken von virtueller generierter Spalte »%s« können nicht geändert werden" -#: commands/tablecmds.c:8975 +#: commands/tablecmds.c:9000 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "Statistiken von eingeschlossener Spalte »%s« von Index »%s« können nicht geändert werden" -#: commands/tablecmds.c:8980 +#: commands/tablecmds.c:9005 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "kann Statistiken von Spalte »%s« von Index »%s«, welche kein Ausdruck ist, nicht ändern" -#: commands/tablecmds.c:8982 +#: commands/tablecmds.c:9007 #, c-format msgid "Alter statistics on table column instead." msgstr "Ändern Sie stattdessen die Statistiken für die Tabellenspalte." -#: commands/tablecmds.c:9228 +#: commands/tablecmds.c:9253 #, c-format msgid "cannot drop column from typed table" msgstr "aus einer getypten Tabelle können keine Spalten gelöscht werden" -#: commands/tablecmds.c:9292 +#: commands/tablecmds.c:9317 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "Spalte »%s« von Relation »%s« existiert nicht, wird übersprungen" -#: commands/tablecmds.c:9305 +#: commands/tablecmds.c:9330 #, c-format msgid "cannot drop system column \"%s\"" msgstr "Systemspalte »%s« kann nicht gelöscht werden" -#: commands/tablecmds.c:9315 +#: commands/tablecmds.c:9340 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "geerbte Spalte »%s« kann nicht gelöscht werden" -#: 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 "Spalte »%s« kann nicht gelöscht werden, weil sie Teil des Partitionierungsschlüssels von Relation »%s« ist" -#: commands/tablecmds.c:9353 +#: commands/tablecmds.c:9378 #, c-format msgid "cannot drop column from only the partitioned table when partitions exist" msgstr "Spalte kann nicht nur aus der partitionierten Tabelle gelöscht werden, wenn Partitionen existieren" -#: commands/tablecmds.c:9518 +#: commands/tablecmds.c:9543 #, c-format msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" msgstr "Spalte »%s« von Tabelle »%s« ist nicht als NOT NULL markiert" -#: 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 "kann keinen Primärschlüssel über Spalte »%s« erzeugen" #. 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 "Der Constraint »%s« für Spalte »%s« von Tabelle »%s«, markiert als %s, ist inkompatibel mit einem Primärschlüssel." -#: 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 wird für partitionierte Tabellen nicht unterstützt" -#: 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 benennt Index »%s« um in »%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 "ONLY nicht möglich für Fremdschlüssel für partitionierte Tabelle »%s« verweisend auf Relation »%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 "Relation »%s«, auf die verwiesen wird, ist keine Tabelle" -#: commands/tablecmds.c:10106 +#: commands/tablecmds.c:10131 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "Constraints für permanente Tabellen dürfen nur auf permanente Tabellen verweisen" -#: commands/tablecmds.c:10113 +#: commands/tablecmds.c:10138 #, c-format msgid "constraints on unlogged tables may reference only permanent or unlogged tables" msgstr "Constraints für ungeloggte Tabellen dürfen nur auf permanente oder ungeloggte Tabellen verweisen" -#: commands/tablecmds.c:10119 +#: commands/tablecmds.c:10144 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "Constraints für temporäre Tabellen dürfen nur auf temporäre Tabellen verweisen" -#: commands/tablecmds.c:10123 +#: commands/tablecmds.c:10148 #, c-format msgid "constraints on temporary tables must involve temporary tables of this session" msgstr "Constraints für temporäre Tabellen müssen temporäre Tabellen dieser Sitzung beinhalten" -#: 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 "Fremdschlüssel verwendet PERIOD für die Tabelle, auf die verwiesen wird, aber nicht für die verweisende Tabelle" -#: 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 "Fremdschlüssel verwendet PERIOD für die verweisende Tabelle, aber nicht für die Tabelle, auf die verwiesen wird" -#: 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 "Fremdschlüssel muss PERIOD verwenden, wenn auf einen Primärschlüssel verwiesen wird, der WITHOUT OVERLAPS verwendet" -#: 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 "ungültige %s-Aktion für Fremdschlüssel-Constraint, der eine generierte Spalte enthält" -#: commands/tablecmds.c:10237 +#: commands/tablecmds.c:10262 #, c-format msgid "foreign key constraints on virtual generated columns are not supported" msgstr "Fremdschlüssel-Constraints für virtuelle generierte Spalten werden nicht unterstützt" -#: 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 "nicht unterstützte %s-Aktion für Fremdschlüssel-Constraint, der PERIOD verwendet" -#: commands/tablecmds.c:10275 +#: commands/tablecmds.c:10300 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "Anzahl der Quell- und Zielspalten im Fremdschlüssel stimmt nicht überein" -#: commands/tablecmds.c:10331 +#: commands/tablecmds.c:10356 #, c-format msgid "could not identify an overlaps operator for foreign key" msgstr "konnte keinen Überlappungsoperator für den Fremdschlüssel ermitteln" -#: commands/tablecmds.c:10332 +#: commands/tablecmds.c:10357 #, c-format msgid "could not identify an equality operator for foreign key" msgstr "konnte keinen Ist-Gleich-Operator für den Fremdschlüssel ermitteln" -#: 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 "Fremdschlüssel-Constraint »%s« kann nicht implementiert werden" -#: 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 "Schlüsselspalten »%s« der referenzierenden Tabelle und »%s« der referenzierten Tabelle haben inkompatible Typen: %s und %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 "Schlüsselspalten »%s« der referenzierenden Tabelle und »%s« der referenzierten Tabelle haben inkompatible Sortierfolgen: »%s« und »%s«. Wenn eine der Sortierfolgen nichtdeterministisch ist, dann müssen beide Sortierfolgen die selbe sein." -#: 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 "Spalte »%s«, auf die in der ON-DELETE-SET-Aktion verwiesen wird, muss Teil des Fremdschlüssels sein" -#: 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 "Fremdschlüssel-Constraints auf Fremdtabellen werden nicht unterstützt" -#: 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 "kann Tabelle »%s« nicht als Partition anfügen, weil auf sie von Fremdschlüssel »%s« verwiesen wird" -#: commands/tablecmds.c:11719 +#: commands/tablecmds.c:11744 #, c-format msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" msgstr "ENFORCED-Einstellung von Constraint »%s« kollidiert mit Constraint »%s« für Relation »%s«" -#: commands/tablecmds.c:12181 +#: commands/tablecmds.c:12206 #, c-format msgid "constraint must be altered in child tables too" msgstr "Constraint muss ebenso in den abgeleiteten Tabellen geändert werden" -#: 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 "Constraint »%s« von Relation »%s« existiert nicht" -#: commands/tablecmds.c:12217 +#: commands/tablecmds.c:12242 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "Constraint »%s« von Relation »%s« ist kein Fremdschlüssel-Constraint" -#: commands/tablecmds.c:12222 +#: commands/tablecmds.c:12247 #, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" msgstr "ENFORCED-Einstellung des Constraints »%s« von Relation »%s« kann nicht geändert werden" -#: commands/tablecmds.c:12228 +#: commands/tablecmds.c:12253 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" msgstr "Constraint »%s« von Relation »%s« ist kein Not-Null-Constraint" -#: commands/tablecmds.c:12236 +#: commands/tablecmds.c:12261 #, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" msgstr "geerbter Constraint »%s« von Relation »%s« kann nicht geändert werden" -#: commands/tablecmds.c:12276 +#: commands/tablecmds.c:12301 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "Constraint »%s« von Relation »%s« kann nicht geändert werden" -#: commands/tablecmds.c:12279 +#: commands/tablecmds.c:12304 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "Constraint »%s« ist von Constraint »%s« von Relation »%s« abgeleitet." -#: commands/tablecmds.c:12281 +#: commands/tablecmds.c:12306 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "Sie können stattdessen den Constraint, von dem er abgeleitet ist, ändern." -#: commands/tablecmds.c:12916 +#: commands/tablecmds.c:12941 #, c-format msgid "cannot validate constraint \"%s\" of relation \"%s\"" msgstr "Constraint »%s« von Relation »%s« kann nicht validiert werden" -#: commands/tablecmds.c:12918 +#: commands/tablecmds.c:12943 #, c-format msgid "This operation is not supported for this type of constraint." msgstr "Diese Operation wird für diese Art von Constraint nicht unterstützt." -#: commands/tablecmds.c:12923 +#: commands/tablecmds.c:12948 #, c-format msgid "cannot validate NOT ENFORCED constraint" msgstr "auf NOT ENFORCED gesetzter Constraint kann nicht validiert werden" -#: 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 "Constraint muss ebenso in den abgeleiteten Tabellen validiert werden" -#: commands/tablecmds.c:13309 +#: commands/tablecmds.c:13334 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "Spalte »%s«, die im Fremdschlüssel verwendet wird, existiert nicht" -#: commands/tablecmds.c:13315 +#: commands/tablecmds.c:13340 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "Systemspalten können nicht in Fremdschlüsseln verwendet werden" -#: commands/tablecmds.c:13319 +#: commands/tablecmds.c:13344 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "Fremdschlüssel kann nicht mehr als %d Schlüssel haben" -#: commands/tablecmds.c:13387 +#: commands/tablecmds.c:13412 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "aufschiebbarer Primärschlüssel kann nicht für Tabelle »%s«, auf die verwiesen wird, verwendet werden" -#: commands/tablecmds.c:13404 +#: commands/tablecmds.c:13429 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "in Tabelle »%s«, auf die verwiesen wird, gibt es keinen Primärschlüssel" -#: commands/tablecmds.c:13477 +#: commands/tablecmds.c:13502 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "die Liste der Spalten, auf die ein Fremdschlüssel verweist, darf keine doppelten Einträge enthalten" -#: commands/tablecmds.c:13580 +#: commands/tablecmds.c:13605 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "aufschiebbarer Unique-Constraint kann nicht für Tabelle »%s«, auf die verwiesen wird, verwendet werden" -#: commands/tablecmds.c:13585 +#: commands/tablecmds.c:13610 #, c-format msgid "there is no unique constraint matching given keys for referenced table \"%s\"" msgstr "in Tabelle »%s«, auf die verwiesen wird, gibt es keinen Unique-Constraint, der auf die angegebenen Schlüssel passt" -#: commands/tablecmds.c:14026 +#: commands/tablecmds.c:14051 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" msgstr "Constraint »%s« von Relation »%s« existiert nicht, wird übersprungen" -#: commands/tablecmds.c:14071 +#: commands/tablecmds.c:14096 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "geerbter Constraint »%s« von Relation »%s« kann nicht gelöscht werden" -#: commands/tablecmds.c:14123 +#: commands/tablecmds.c:14148 #, c-format msgid "column \"%s\" is in a primary key" msgstr "Spalte »%s« ist in einem Primärschlüssel" -#: commands/tablecmds.c:14131 +#: commands/tablecmds.c:14156 #, c-format msgid "column \"%s\" is in index used as replica identity" msgstr "Spalte »%s« ist in einem Index, der als Replik-Identität verwendet wird" -#: commands/tablecmds.c:14364 +#: commands/tablecmds.c:14389 #, c-format msgid "cannot alter column type of typed table" msgstr "Spaltentyp einer getypten Tabelle kann nicht geändert werden" -#: commands/tablecmds.c:14392 +#: commands/tablecmds.c:14417 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "USING kann nicht angegeben werden, wenn der Typ einer generierten Spalte geändert wird" -#: 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 "Spalte »%s« ist eine generierte Spalte." - -#: commands/tablecmds.c:14404 +#: commands/tablecmds.c:14429 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "kann vererbte Spalte »%s« nicht ändern" -#: 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 "Spalte »%s« kann nicht geändert werden, weil sie Teil des Partitionierungsschlüssels von Relation »%s« ist" -#: 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 "Ergebnis der USING-Klausel für Spalte »%s« kann nicht automatisch in Typ %s umgewandelt werden" -#: commands/tablecmds.c:14471 +#: commands/tablecmds.c:14496 #, c-format msgid "You might need to add an explicit cast." msgstr "Sie müssen möglicherweise eine ausdrückliche Typumwandlung hinzufügen." -#: commands/tablecmds.c:14475 +#: commands/tablecmds.c:14500 #, c-format msgid "column \"%s\" cannot be cast automatically to type %s" msgstr "Spalte »%s« kann nicht automatisch in Typ %s umgewandelt werden" #. 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 "Sie müssen möglicherweise »USING %s::%s« angeben." -#: commands/tablecmds.c:14582 +#: commands/tablecmds.c:14607 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "geerbte Spalte »%s« von Relation »%s« kann nicht geändert werden" -#: commands/tablecmds.c:14611 +#: commands/tablecmds.c:14636 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "USING-Ausdruck enthält einen Verweis auf die ganze Zeile der Tabelle." -#: commands/tablecmds.c:14622 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "Typ der vererbten Spalte »%s« muss ebenso in den abgeleiteten Tabellen geändert werden" -#: commands/tablecmds.c:14747 +#: commands/tablecmds.c:14772 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "Typ der Spalte »%s« kann nicht zweimal geändert werden" -#: commands/tablecmds.c:14785 +#: commands/tablecmds.c:14810 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "Generierungsausdruck der Spalte »%s« kann nicht automatisch in Typ %s umgewandelt werden" -#: commands/tablecmds.c:14790 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "Vorgabewert der Spalte »%s« kann nicht automatisch in Typ %s umgewandelt werden" -#: commands/tablecmds.c:15094 +#: commands/tablecmds.c:15119 #, c-format msgid "cannot alter type of a column used by a function or procedure" msgstr "Typ einer Spalte, die von einer Funktion oder Prozedur verwendet wird, kann nicht geändert werden" -#: 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 hängt von Spalte »%s« ab" -#: commands/tablecmds.c:15109 +#: commands/tablecmds.c:15134 #, c-format msgid "cannot alter type of a column used by a view or rule" msgstr "Typ einer Spalte, die von einer Sicht oder Regel verwendet wird, kann nicht geändert werden" -#: commands/tablecmds.c:15129 +#: commands/tablecmds.c:15154 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "Typ einer Spalte, die in einer Trigger-Definition verwendet wird, kann nicht geändert werden" -#: commands/tablecmds.c:15148 +#: commands/tablecmds.c:15173 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "Typ einer Spalte, die in einer Policy-Definition verwendet wird, kann nicht geändert werden" -#: commands/tablecmds.c:15179 +#: commands/tablecmds.c:15204 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "Typ einer Spalte, die von einer generierten Spalte verwendet wird, kann nicht geändert werden" -#: commands/tablecmds.c:15180 +#: commands/tablecmds.c:15205 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "Spalte »%s« wird von generierter Spalte »%s« verwendet." -#: commands/tablecmds.c:15207 +#: commands/tablecmds.c:15232 #, c-format msgid "cannot alter type of a column used by a publication WHERE clause" msgstr "Typ einer Spalte, die in der WHERE-Klausel einer Publikation verwendet wird, kann nicht geändert werden" -#: 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 "kann Eigentümer des Index »%s« nicht ändern" -#: 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 "Ändern Sie stattdessen den Eigentümer der Tabelle des Index." -#: commands/tablecmds.c:16109 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "kann Eigentümer der Sequenz »%s« nicht ändern" -#: commands/tablecmds.c:16134 +#: commands/tablecmds.c:16159 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "kann Eigentümer der Relation »%s« nicht ändern" -#: commands/tablecmds.c:16601 +#: commands/tablecmds.c:16626 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "mehrere SET TABLESPACE Unterbefehle sind ungültig" -#: commands/tablecmds.c:16680 +#: commands/tablecmds.c:16705 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "für Relation »%s« können keine Optionen gesetzt werden" -#: 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 wird nur für automatisch aktualisierbare Sichten unterstützt" -#: commands/tablecmds.c:16967 +#: commands/tablecmds.c:16992 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "nur Tabellen, Indexe und materialisierte Sichten existieren in Tablespaces" -#: commands/tablecmds.c:16979 +#: commands/tablecmds.c:17004 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "Relationen können nicht in den oder aus dem Tablespace »pg_global« verschoben werden" -#: commands/tablecmds.c:17071 +#: commands/tablecmds.c:17096 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "Abbruch weil Sperre für Relation »%s.%s« nicht verfügbar ist" -#: commands/tablecmds.c:17087 +#: commands/tablecmds.c:17112 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "keine passenden Relationen in Tablespace »%s« gefunden" -#: commands/tablecmds.c:17209 +#: commands/tablecmds.c:17234 #, c-format msgid "cannot change inheritance of typed table" msgstr "Vererbung einer getypten Tabelle kann nicht geändert werden" -#: 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 "Vererbung einer Partition kann nicht geändert werden" -#: commands/tablecmds.c:17219 +#: commands/tablecmds.c:17244 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "Vererbung einer partitionierten Tabelle kann nicht geändert werden" -#: commands/tablecmds.c:17266 +#: commands/tablecmds.c:17291 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "an temporäre Relation einer anderen Sitzung kann nicht vererbt werden" -#: commands/tablecmds.c:17279 +#: commands/tablecmds.c:17304 #, c-format msgid "cannot inherit from a partition" msgstr "von einer Partition kann nicht geerbt werden" -#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 +#: commands/tablecmds.c:17326 commands/tablecmds.c:20347 #, c-format msgid "circular inheritance not allowed" msgstr "zirkuläre Vererbung ist nicht erlaubt" -#: 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« ist schon von »%s« abgeleitet." -#: commands/tablecmds.c:17315 +#: commands/tablecmds.c:17340 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "Trigger »%s« verhindert, dass Tabelle »%s« ein Vererbungskind werden kann" -#: commands/tablecmds.c:17317 +#: commands/tablecmds.c:17342 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "ROW-Trigger mit Übergangstabellen werden in Vererbungshierarchien nicht unterstützt." -#: 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 "Spalte »%s« in abgeleiteter Tabelle »%s« muss als NOT NULL markiert sein" -#: commands/tablecmds.c:17528 +#: commands/tablecmds.c:17553 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "Spalte »%s« in abgeleiteter Tabelle muss eine generierte Spalte sein" -#: commands/tablecmds.c:17532 +#: commands/tablecmds.c:17557 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "Spalte »%s« in abgeleiteter Tabelle darf keine generierte Spalte sein" -#: commands/tablecmds.c:17578 +#: commands/tablecmds.c:17603 #, c-format msgid "child table is missing column \"%s\"" msgstr "Spalte »%s« fehlt in abgeleiteter Tabelle" -#: commands/tablecmds.c:17695 +#: commands/tablecmds.c:17720 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "abgeleitete Tabelle »%s« hat unterschiedliche Definition für Check-Constraint »%s«" -#: commands/tablecmds.c:17704 +#: commands/tablecmds.c:17729 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "Constraint »%s« kollidiert mit nicht vererbtem Constraint für abgeleitete Tabelle »%s«" -#: commands/tablecmds.c:17715 +#: commands/tablecmds.c:17740 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "Constraint »%s« kollidiert mit NOT-VALID-Constraint für abgeleitete Tabelle »%s«" -#: commands/tablecmds.c:17726 +#: commands/tablecmds.c:17751 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" msgstr "Constraint »%s« kollidiert mit NOT-ENFORCED-Constraint für abgeleitete Tabelle »%s«" -#: commands/tablecmds.c:17775 +#: commands/tablecmds.c:17800 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "Constraint »%s« fehlt in abgeleiteter Tabelle" -#: commands/tablecmds.c:17862 +#: commands/tablecmds.c:17887 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "Partition »%s« hat schon eine unerledigte Abtrennoperation in der partitionierten Tabelle »%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 "Relation »%s« ist keine Partition von Relation »%s«" -#: commands/tablecmds.c:17945 +#: commands/tablecmds.c:17970 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "Relation »%s« ist keine Basisrelation von Relation »%s«" -#: commands/tablecmds.c:18216 +#: commands/tablecmds.c:18241 #, c-format msgid "typed tables cannot inherit" msgstr "getypte Tabellen können nicht erben" -#: commands/tablecmds.c:18246 +#: commands/tablecmds.c:18271 #, c-format msgid "table is missing column \"%s\"" msgstr "Spalte »%s« fehlt in Tabelle" -#: commands/tablecmds.c:18257 +#: commands/tablecmds.c:18282 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "Tabelle hat Spalte »%s«, aber Typ benötigt »%s«" -#: commands/tablecmds.c:18266 +#: commands/tablecmds.c:18291 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "Tabelle »%s« hat unterschiedlichen Typ für Spalte »%s«" -#: commands/tablecmds.c:18280 +#: commands/tablecmds.c:18305 #, c-format msgid "table has extra column \"%s\"" msgstr "Tabelle hat zusätzliche Spalte »%s«" -#: commands/tablecmds.c:18332 +#: commands/tablecmds.c:18357 #, c-format msgid "\"%s\" is not a typed table" msgstr "»%s« ist keine getypte Tabelle" -#: commands/tablecmds.c:18512 +#: commands/tablecmds.c:18537 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "nicht eindeutiger Index »%s« kann nicht als Replik-Identität verwendet werden" -#: commands/tablecmds.c:18518 +#: commands/tablecmds.c:18543 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "Index »%s« kann nicht als Replik-Identität verwendet werden, weil er nicht IMMEDIATE ist" -#: commands/tablecmds.c:18524 +#: commands/tablecmds.c:18549 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "Ausdrucksindex »%s« kann nicht als Replik-Identität verwendet werden" -#: commands/tablecmds.c:18530 +#: commands/tablecmds.c:18555 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "partieller Index »%s« kann nicht als Replik-Identität verwendet werden" -#: 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« kann nicht als Replik-Identität verwendet werden, weil Spalte %d eine Systemspalte ist" -#: 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« kann nicht als Replik-Identität verwendet werden, weil Spalte »%s« NULL-Werte akzeptiert" -#: commands/tablecmds.c:18803 +#: commands/tablecmds.c:18828 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "kann den geloggten Status der Tabelle »%s« nicht ändern, weil sie temporär ist" -#: 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 "kann Tabelle »%s« nicht in ungeloggt ändern, weil sie Teil einer Publikation ist" -#: commands/tablecmds.c:18829 +#: commands/tablecmds.c:18854 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "Ungeloggte Relationen können nicht repliziert werden." -#: 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 "konnte Tabelle »%s« nicht in geloggt ändern, weil sie auf die ungeloggte Tabelle »%s« verweist" -#: 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 "konnte Tabelle »%s« nicht in ungeloggt ändern, weil sie auf die geloggte Tabelle »%s« verweist" -#: commands/tablecmds.c:18948 +#: commands/tablecmds.c:18973 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "einer Tabelle zugeordnete Sequenz kann nicht in ein anderes Schema verschoben werden" -#: commands/tablecmds.c:19056 +#: commands/tablecmds.c:19081 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "Relation »%s« existiert bereits in Schema »%s«" -#: commands/tablecmds.c:19481 +#: commands/tablecmds.c:19506 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "»%s« ist keine Tabelle oder materialisierte Sicht" -#: commands/tablecmds.c:19634 +#: commands/tablecmds.c:19659 #, c-format msgid "\"%s\" is not a composite type" msgstr "»%s« ist kein zusammengesetzter Typ" -#: commands/tablecmds.c:19664 +#: commands/tablecmds.c:19689 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "kann Schema des Index »%s« nicht ändern" -#: 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 "Ändern Sie stattdessen das Schema der Tabelle." -#: commands/tablecmds.c:19670 +#: commands/tablecmds.c:19695 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "kann Schema des zusammengesetzten Typs »%s« nicht ändern" -#: commands/tablecmds.c:19678 +#: commands/tablecmds.c:19703 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "kann Schema der TOAST-Tabelle »%s« nicht ändern" -#: commands/tablecmds.c:19710 +#: commands/tablecmds.c:19735 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "Partitionierungsstrategie »list« kann nicht mit mehr als einer Spalte verwendet werden" -#: commands/tablecmds.c:19776 +#: commands/tablecmds.c:19801 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "Spalte »%s«, die im Partitionierungsschlüssel verwendet wird, existiert nicht" -#: commands/tablecmds.c:19784 +#: commands/tablecmds.c:19809 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "Systemspalte »%s« kann nicht im Partitionierungsschlüssel verwendet werden" -#: 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 "generierte Spalte kann nicht im Partitionierungsschlüssel verwendet werden" -#: commands/tablecmds.c:19871 +#: commands/tablecmds.c:19892 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "Partitionierungsschlüsselausdruck kann nicht auf Systemspalten verweisen" -#: commands/tablecmds.c:19921 +#: commands/tablecmds.c:19956 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "Funktionen im Partitionierungsschlüsselausdruck müssen als IMMUTABLE markiert sein" -#: commands/tablecmds.c:19930 +#: commands/tablecmds.c:19965 #, c-format msgid "cannot use constant expression as partition key" msgstr "Partitionierungsschlüssel kann kein konstanter Ausdruck sein" -#: commands/tablecmds.c:19951 +#: commands/tablecmds.c:19986 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "konnte die für den Partitionierungsausdruck zu verwendende Sortierfolge nicht bestimmen" -#: 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 "Sie müssen eine hash-Operatorklasse angeben oder eine hash-Standardoperatorklasse für den Datentyp definieren." -#: 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 "Sie müssen eine btree-Operatorklasse angeben oder eine btree-Standardoperatorklasse für den Datentyp definieren." -#: commands/tablecmds.c:20252 +#: commands/tablecmds.c:20287 #, c-format msgid "\"%s\" is already a partition" msgstr "»%s« ist bereits eine Partition" -#: commands/tablecmds.c:20258 +#: commands/tablecmds.c:20293 #, c-format msgid "cannot attach a typed table as partition" msgstr "eine getypte Tabelle kann nicht als Partition angefügt werden" -#: commands/tablecmds.c:20274 +#: commands/tablecmds.c:20309 #, c-format msgid "cannot attach inheritance child as partition" msgstr "ein Vererbungskind kann nicht als Partition angefügt werden" -#: commands/tablecmds.c:20288 +#: commands/tablecmds.c:20323 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "eine Tabelle mit abgeleiteten Tabellen kann nicht als Partition angefügt werden" -#: commands/tablecmds.c:20322 +#: commands/tablecmds.c:20357 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "eine temporäre Relation kann nicht als Partition an permanente Relation »%s« angefügt werden" -#: commands/tablecmds.c:20330 +#: commands/tablecmds.c:20365 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "eine permanente Relation kann nicht als Partition an temporäre Relation »%s« angefügt werden" -#: commands/tablecmds.c:20338 +#: commands/tablecmds.c:20373 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "kann nicht als Partition an temporäre Relation einer anderen Sitzung anfügen" -#: commands/tablecmds.c:20345 +#: commands/tablecmds.c:20380 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "temporäre Relation einer anderen Sitzung kann nicht als Partition angefügt werden" -#: commands/tablecmds.c:20365 +#: commands/tablecmds.c:20400 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "anzufügende Tabelle »%s« enthält eine Identitätsspalte »%s«" -#: commands/tablecmds.c:20367 +#: commands/tablecmds.c:20402 #, c-format msgid "The new partition may not contain an identity column." msgstr "Die neue Partition darf keine Identitätsspalte enthalten." -#: commands/tablecmds.c:20375 +#: commands/tablecmds.c:20410 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "Tabelle »%s« enthält Spalte »%s«, die nicht in der Elterntabelle »%s« gefunden wurde" -#: commands/tablecmds.c:20378 +#: commands/tablecmds.c:20413 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "Die neue Partition darf nur Spalten enthalten, die auch die Elterntabelle hat." -#: commands/tablecmds.c:20390 +#: commands/tablecmds.c:20425 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "Trigger »%s« verhindert, dass Tabelle »%s« eine Partition werden kann" -#: commands/tablecmds.c:20392 +#: commands/tablecmds.c:20427 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "ROW-Trigger mit Übergangstabellen werden für Partitionen nicht unterstützt." -#: commands/tablecmds.c:20574 +#: commands/tablecmds.c:20609 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "kann Fremdtabelle »%s« nicht als Partition an partitionierte Tabelle »%s« anfügen" -#: commands/tablecmds.c:20577 +#: commands/tablecmds.c:20612 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "Partitionierte Tabelle »%s« enthält Unique-Indexe." -#: commands/tablecmds.c:20900 +#: commands/tablecmds.c:20936 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "nebenläufiges Abtrennen einer Partition ist nicht möglich, wenn eine Standardpartition existiert" -#: commands/tablecmds.c:21009 +#: commands/tablecmds.c:21048 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "partitionierte Tabelle »%s« wurde nebenläufig entfernt" -#: commands/tablecmds.c:21015 +#: commands/tablecmds.c:21054 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "Partition »%s« wurde nebenläufig entfernt" -#: 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 "kann Index »%s« nicht als Partition an Index »%s« anfügen" -#: commands/tablecmds.c:21649 +#: commands/tablecmds.c:21688 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "Index »%s« ist bereits an einen anderen Index angefügt." -#: 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« ist kein Index irgendeiner Partition von Tabelle »%s«." -#: commands/tablecmds.c:21690 +#: commands/tablecmds.c:21729 #, c-format msgid "The index definitions do not match." msgstr "Die Indexdefinitionen stimmen nicht überein." -#: 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 "Der Index »%s« gehört zu einem Constraint in Tabelle »%s«, aber kein Constraint existiert für Index »%s«." -#: commands/tablecmds.c:21758 +#: commands/tablecmds.c:21797 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "Ein anderer Index ist bereits für Partition »%s« angefügt." -#: commands/tablecmds.c:21881 +#: commands/tablecmds.c:21920 #, c-format msgid "invalid primary key definition" msgstr "ungültige Primärschlüsseldefinition" -#: commands/tablecmds.c:21882 +#: commands/tablecmds.c:21921 #, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." msgstr "Spalte »%s« von Relation »%s« ist nicht als NOT NULL markiert." -#: commands/tablecmds.c:22017 +#: commands/tablecmds.c:22056 #, c-format msgid "column data type %s does not support compression" msgstr "Spaltendatentyp %s unterstützt keine Komprimierung" -#: commands/tablecmds.c:22024 +#: commands/tablecmds.c:22063 #, c-format msgid "invalid compression method \"%s\"" msgstr "ungültige Komprimierungsmethode »%s«" -#: commands/tablecmds.c:22050 +#: commands/tablecmds.c:22089 #, c-format msgid "invalid storage type \"%s\"" msgstr "ungültiger Storage-Typ »%s«" -#: commands/tablecmds.c:22060 +#: commands/tablecmds.c:22099 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "Spaltendatentyp %s kann nur Storage-Typ PLAIN" @@ -13881,7 +13887,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:843 +#: executor/execExpr.c:1157 parser/parse_agg.c:869 #, c-format msgid "window function calls cannot be nested" msgstr "Aufrufe von Fensterfunktionen können nicht geschachtelt werden" @@ -14140,7 +14146,7 @@ msgstr "kann Zeilen in Sicht »%s« nicht sperren" msgid "cannot lock rows in materialized view \"%s\"" msgstr "kann Zeilen in materialisierter Sicht »%s« nicht sperren" -#: executor/execMain.c:1223 executor/execMain.c:2855 +#: executor/execMain.c:1223 executor/execMain.c:2865 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" @@ -14151,58 +14157,58 @@ msgstr "kann Zeilen in Fremdtabelle »%s« nicht sperren" msgid "cannot lock rows in relation \"%s\"" msgstr "kann Zeilen in Relation »%s« nicht sperren" -#: executor/execMain.c:1952 +#: executor/execMain.c:1962 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "neue Zeile für Relation »%s« verletzt Partitions-Constraint" -#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 -#: executor/execMain.c:2312 +#: executor/execMain.c:1964 executor/execMain.c:2076 executor/execMain.c:2214 +#: executor/execMain.c:2322 #, c-format msgid "Failing row contains %s." msgstr "Fehlgeschlagene Zeile enthält %s." -#: executor/execMain.c:2064 +#: executor/execMain.c:2074 #, 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:2201 +#: executor/execMain.c:2211 #, 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:2310 +#: executor/execMain.c:2320 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "neue Zeile verletzt Check-Option für Sicht »%s«" -#: executor/execMain.c:2320 +#: executor/execMain.c:2330 #, 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:2325 +#: executor/execMain.c:2335 #, 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:2333 +#: executor/execMain.c:2343 #, 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:2338 +#: executor/execMain.c:2348 #, 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:2345 +#: executor/execMain.c:2355 #, 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:2350 +#: executor/execMain.c:2360 #, 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«" @@ -14661,7 +14667,7 @@ msgstr "%s kann nicht als Cursor geöffnet werden" msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported" msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE wird nicht unterstützt" -#: 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 "Scrollbare Cursor müssen READ ONLY sein." @@ -17388,7 +17394,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:2120 parser/parse_func.c:710 parser/parse_oper.c:869 +#: 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" @@ -17422,44 +17428,44 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "%s kann nicht auf die nullbare Seite eines äußeren Verbundes angewendet werden" #. 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 ist nicht in UNION/INTERSECT/EXCEPT erlaubt" -#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 +#: optimizer/plan/planner.c:2257 optimizer/plan/planner.c:4143 #, c-format msgid "could not implement GROUP BY" msgstr "konnte GROUP BY nicht implementieren" -#: optimizer/plan/planner.c:2239 optimizer/plan/planner.c:4125 -#: optimizer/plan/planner.c:4806 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 +#: optimizer/plan/planner.c:4825 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:4805 +#: optimizer/plan/planner.c:4824 #, c-format msgid "could not implement DISTINCT" msgstr "konnte DISTINCT nicht implementieren" -#: optimizer/plan/planner.c:6267 +#: optimizer/plan/planner.c:6286 #, c-format msgid "could not implement window PARTITION BY" msgstr "konnte PARTITION BY für Fenster nicht implementieren" -#: optimizer/plan/planner.c:6268 +#: optimizer/plan/planner.c:6287 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Fensterpartitionierungsspalten müssen sortierbare Datentypen haben." -#: optimizer/plan/planner.c:6272 +#: optimizer/plan/planner.c:6291 #, c-format msgid "could not implement window ORDER BY" msgstr "konnte ORDER BY für Fenster nicht implementieren" -#: optimizer/plan/planner.c:6273 +#: optimizer/plan/planner.c:6292 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Fenstersortierspalten müssen sortierbare Datentypen haben." @@ -17500,22 +17506,22 @@ msgstr "SQL-Funktion »%s« beim Inlining" msgid "cannot access temporary or unlogged relations during recovery" msgstr "während der Wiederherstellung kann nicht auf temporäre oder ungeloggte Tabellen zugegriffen werden" -#: optimizer/util/plancat.c:771 +#: optimizer/util/plancat.c:776 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "Inferenzangaben mit Unique-Index über die gesamte Zeile werden nicht unterstützt" -#: optimizer/util/plancat.c:788 +#: optimizer/util/plancat.c:793 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "Constraint in der ON-CONFLICT-Klausel hat keinen zugehörigen 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 nicht unterstützt mit Exclusion-Constraints" -#: 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 "es gibt keinen Unique-Constraint oder Exclusion-Constraint, der auf die ON-CONFLICT-Angabe passt" @@ -17546,7 +17552,7 @@ msgid "SELECT ... INTO is not allowed here" msgstr "SELECT ... INTO ist hier nicht erlaubt" #. 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 kann nicht auf VALUES angewendet werden" @@ -17615,138 +17621,138 @@ msgid "variable \"%s\" is of type %s but expression is of type %s" msgstr "Variable »%s« hat Typ %s, aber der Ausdruck hat 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 "%s und %s können nicht beide angegeben werden" -#: parser/analyze.c:3054 +#: parser/analyze.c:3055 #, c-format msgid "DECLARE CURSOR must not contain data-modifying statements in WITH" msgstr "DECLARE CURSOR darf keine datenmodifizierenden Anweisungen in WITH enthalten" #. 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 wird nicht unterstützt" -#: parser/analyze.c:3065 +#: parser/analyze.c:3066 #, c-format msgid "Holdable cursors must be READ ONLY." msgstr "Haltbare Cursor müssen READ ONLY sein." #. 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 wird nicht unterstützt" #. 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 ist nicht gültig" -#: parser/analyze.c:3087 +#: parser/analyze.c:3088 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "Insensitive Cursor müssen READ ONLY sein." -#: parser/analyze.c:3181 +#: parser/analyze.c:3182 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "materialisierte Sichten dürfen keine datenmodifizierenden Anweisungen in WITH verwenden" -#: parser/analyze.c:3191 +#: parser/analyze.c:3192 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "materialisierte Sichten dürfen keine temporären Tabellen oder Sichten verwenden" -#: parser/analyze.c:3201 +#: parser/analyze.c:3202 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "materialisierte Sichten können nicht unter Verwendung von gebundenen Parametern definiert werden" -#: parser/analyze.c:3213 +#: parser/analyze.c:3214 #, c-format msgid "materialized views cannot be unlogged" msgstr "materialisierte Sichten können nicht ungeloggt sein" #. 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 ist nicht mit DISTINCT-Klausel erlaubt" #. 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 ist nicht mit GROUP-BY-Klausel erlaubt" #. 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 ist nicht mit HAVING-Klausel erlaubt" #. 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 ist nicht mit Aggregatfunktionen erlaubt" #. 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 ist nicht mit Fensterfunktionen erlaubt" #. 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 ist nicht mit Funktionen mit Ergebnismenge in der Targetliste erlaubt" #. 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 muss unqualifizierte Relationsnamen angeben" #. 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 kann nicht auf einen Verbund angewendet werden" #. 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 kann nicht auf eine Funktion angewendet werden" #. 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 kann nicht auf eine Tabellenfunktion angewendet werden" #. 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 kann nicht auf eine WITH-Anfrage angewendet werden" #. 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 kann nicht auf einen benannten Tupelstore angewendet werden" #. 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 "Relation »%s« in %s nicht in der FROM-Klausel gefunden" @@ -17956,7 +17962,7 @@ msgstr "Aggregatfunktion auf äußerer Ebene kann keine Variable einer unteren E 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:1762 parser/parse_expr.c:2255 +#: parser/parse_agg.c:785 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." @@ -17967,115 +17973,115 @@ msgstr "Sie können möglicherweise die Funktion mit Ergebnismenge in ein LATERA msgid "aggregate function calls cannot contain window function calls" msgstr "Aufrufe von Aggregatfunktionen können keine Aufrufe von Fensterfunktionen enthalten" -#: parser/parse_agg.c:869 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in JOIN conditions" msgstr "Fensterfunktionen sind in JOIN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:876 +#: parser/parse_agg.c:902 msgid "window functions are not allowed in functions in FROM" msgstr "Fensterfunktionen sind in Funktionen in FROM nicht erlaubt" -#: parser/parse_agg.c:882 +#: parser/parse_agg.c:908 msgid "window functions are not allowed in policy expressions" msgstr "Fensterfunktionen sind in Policy-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:921 msgid "window functions are not allowed in window definitions" msgstr "Fensterfunktionen sind in Fensterdefinitionen nicht erlaubt" -#: parser/parse_agg.c:906 +#: parser/parse_agg.c:932 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "Fensterfunktionen sind in MERGE-WHEN-Bedingungen nicht erlaubt" -#: parser/parse_agg.c:931 +#: parser/parse_agg.c:957 msgid "window functions are not allowed in check constraints" msgstr "Fensterfunktionen sind in Check-Constraints nicht erlaubt" -#: parser/parse_agg.c:935 +#: parser/parse_agg.c:961 msgid "window functions are not allowed in DEFAULT expressions" msgstr "Fensterfunktionen sind in DEFAULT-Ausdrücken nicht erlaubt" -#: parser/parse_agg.c:938 +#: parser/parse_agg.c:964 msgid "window functions are not allowed in index expressions" msgstr "Fensterfunktionen sind in Indexausdrücken nicht erlaubt" -#: parser/parse_agg.c:941 +#: parser/parse_agg.c:967 msgid "window functions are not allowed in statistics expressions" msgstr "Fensterfunktionen sind in Statistikausdrücken nicht erlaubt" -#: parser/parse_agg.c:944 +#: parser/parse_agg.c:970 msgid "window functions are not allowed in index predicates" msgstr "Fensterfunktionen sind in Indexprädikaten nicht erlaubt" -#: parser/parse_agg.c:947 +#: parser/parse_agg.c:973 msgid "window functions are not allowed in transform expressions" msgstr "Fensterfunktionen sind in Umwandlungsausdrücken nicht erlaubt" -#: parser/parse_agg.c:950 +#: parser/parse_agg.c:976 msgid "window functions are not allowed in EXECUTE parameters" msgstr "Fensterfunktionen sind in EXECUTE-Parametern nicht erlaubt" -#: parser/parse_agg.c:953 +#: parser/parse_agg.c:979 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:956 +#: parser/parse_agg.c:982 msgid "window functions are not allowed in partition bound" msgstr "Fensterfunktionen sind in Partitionsbegrenzungen nicht erlaubt" -#: parser/parse_agg.c:959 +#: parser/parse_agg.c:985 msgid "window functions are not allowed in partition key expressions" msgstr "Fensterfunktionen sind in Partitionierungsschlüsselausdrücken nicht erlaubt" -#: parser/parse_agg.c:962 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in CALL arguments" msgstr "Fensterfunktionen sind in CALL-Argumenten nicht erlaubt" -#: parser/parse_agg.c:965 +#: parser/parse_agg.c:991 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:968 +#: parser/parse_agg.c:994 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:991 parser/parse_clause.c:1971 +#: parser/parse_agg.c:1017 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:1025 parser/parse_clause.c:2804 +#: parser/parse_agg.c:1051 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "Fenster »%s« existiert nicht" -#: parser/parse_agg.c:1115 +#: parser/parse_agg.c:1141 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "zu viele Grouping-Sets vorhanden (maximal 4096)" -#: parser/parse_agg.c:1276 +#: parser/parse_agg.c:1302 #, 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:1499 +#: parser/parse_agg.c:1525 #, 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:1502 +#: parser/parse_agg.c:1528 #, 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:1507 +#: parser/parse_agg.c:1533 #, 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:1672 +#: parser/parse_agg.c:1698 #, 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" @@ -18353,8 +18359,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: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: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 "kann Typ %s nicht in Typ %s umwandeln" @@ -18694,326 +18700,326 @@ msgstr "FOR UPDATE/SHARE in einer rekursiven Anfrage ist nicht implementiert" msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "rekursiver Verweis auf Anfrage »%s« darf nicht mehrmals erscheinen" -#: parser/parse_expr.c:311 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "DEFAULT ist in diesem Zusammenhang nicht erlaubt" -#: 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 "Spalte %s.%s existiert nicht" -#: parser/parse_expr.c:416 +#: parser/parse_expr.c:417 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "Spalte »%s« nicht gefunden im Datentyp %s" -#: parser/parse_expr.c:422 +#: parser/parse_expr.c:423 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "konnte Spalte »%s« im Record-Datentyp nicht identifizieren" -#: 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 "Spaltenschreibweise .%s mit Typ %s verwendet, der kein zusammengesetzter Typ ist" -#: 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 "Zeilenexpansion mit »*« wird hier nicht unterstützt" -#: parser/parse_expr.c:582 +#: parser/parse_expr.c:583 msgid "cannot use column reference in DEFAULT expression" msgstr "Spaltenverweise können nicht in DEFAULT-Ausdrücken verwendet werden" -#: parser/parse_expr.c:585 +#: parser/parse_expr.c:586 msgid "cannot use column reference in partition bound expression" msgstr "Spaltenverweise können nicht in Partitionsbegrenzungsausdrücken verwendet werden" -#: 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 "Spaltenverweis »%s« ist nicht eindeutig" -#: 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 "es gibt keinen 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:3086 #, 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: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 darf keine Ergebnismenge zurückgeben" -#: 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 "MERGE_ACTION() kann nur in der RETURNING-Liste eines MERGE-Befehls verwendet werden" -#: 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 "Anzahl der Spalten stimmt nicht mit der Anzahl der Werte überein" -#: 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 "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: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 "Funktionen mit Ergebnismenge sind in %s nicht erlaubt" -#: parser/parse_expr.c:1824 +#: parser/parse_expr.c:1825 msgid "cannot use subquery in check constraint" msgstr "Unteranfragen können nicht in Check-Constraints verwendet werden" -#: parser/parse_expr.c:1828 +#: parser/parse_expr.c:1829 msgid "cannot use subquery in DEFAULT expression" msgstr "Unteranfragen können nicht in DEFAULT-Ausdrücken verwendet werden" -#: parser/parse_expr.c:1831 +#: parser/parse_expr.c:1832 msgid "cannot use subquery in index expression" msgstr "Unteranfragen können nicht in Indexausdrücken verwendet werden" -#: parser/parse_expr.c:1834 +#: parser/parse_expr.c:1835 msgid "cannot use subquery in index predicate" msgstr "Unteranfragen können nicht im Indexprädikat verwendet werden" -#: parser/parse_expr.c:1837 +#: parser/parse_expr.c:1838 msgid "cannot use subquery in statistics expression" msgstr "Unteranfragen können nicht in Statistikausdrücken verwendet werden" -#: parser/parse_expr.c:1840 +#: parser/parse_expr.c:1841 msgid "cannot use subquery in transform expression" msgstr "Unteranfragen können in Umwandlungsausdrücken nicht verwendet werden" -#: parser/parse_expr.c:1843 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in EXECUTE parameter" msgstr "Unteranfragen können nicht in EXECUTE-Parameter verwendet werden" -#: parser/parse_expr.c:1846 +#: parser/parse_expr.c:1847 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:1849 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in partition bound" msgstr "Unteranfragen können nicht in Partitionsbegrenzungen verwendet werden" -#: parser/parse_expr.c:1852 +#: parser/parse_expr.c:1853 msgid "cannot use subquery in partition key expression" msgstr "Unteranfragen können nicht in Partitionierungsschlüsselausdrücken verwendet werden" -#: parser/parse_expr.c:1855 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in CALL argument" msgstr "Unteranfragen können nicht in CALL-Argument verwendet werden" -#: parser/parse_expr.c:1858 +#: parser/parse_expr.c:1859 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:1861 +#: parser/parse_expr.c:1862 msgid "cannot use subquery in column generation expression" msgstr "Unteranfragen können nicht in Spaltengenerierungsausdrücken verwendet werden" -#: 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 "Unteranfrage darf nur eine Spalte zurückgeben" -#: parser/parse_expr.c:1985 +#: parser/parse_expr.c:1986 #, c-format msgid "subquery has too many columns" msgstr "Unteranfrage hat zu viele Spalten" -#: parser/parse_expr.c:1990 +#: parser/parse_expr.c:1991 #, c-format msgid "subquery has too few columns" msgstr "Unteranfrage hat zu wenige Spalten" -#: parser/parse_expr.c:2094 +#: parser/parse_expr.c:2095 #, c-format msgid "cannot determine type of empty array" msgstr "kann Typ eines leeren Arrays nicht bestimmen" -#: parser/parse_expr.c:2095 +#: parser/parse_expr.c:2096 #, 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:2109 +#: parser/parse_expr.c:2110 #, 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:2194 +#: parser/parse_expr.c:2195 #, 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:2399 +#: parser/parse_expr.c:2400 #, c-format msgid "unnamed XML attribute value must be a column reference" msgstr "unbenannter XML-Attributwert muss ein Spaltenverweis sein" -#: parser/parse_expr.c:2400 +#: parser/parse_expr.c:2401 #, c-format msgid "unnamed XML element value must be a column reference" msgstr "unbenannter XML-Elementwert muss ein Spaltenverweis sein" -#: parser/parse_expr.c:2415 +#: parser/parse_expr.c:2416 #, c-format msgid "XML attribute name \"%s\" appears more than once" msgstr "XML-Attributname »%s« einscheint mehrmals" -#: parser/parse_expr.c:2523 +#: parser/parse_expr.c:2524 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "kann das Ergebnis von XMLSERIALIZE nicht in Typ %s umwandeln" -#: 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 "ungleiche Anzahl Einträge in Zeilenausdrücken" -#: parser/parse_expr.c:2857 +#: parser/parse_expr.c:2858 #, c-format msgid "cannot compare rows of zero length" msgstr "kann Zeilen mit Länge null nicht vergleichen" -#: parser/parse_expr.c:2882 +#: parser/parse_expr.c:2883 #, 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:2889 +#: parser/parse_expr.c:2890 #, c-format msgid "row comparison operator must not return a set" msgstr "Zeilenvergleichsoperator darf keine Ergebnismenge zurückgeben" -#: 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 "konnte Interpretation des Zeilenvergleichsoperators %s nicht bestimmen" -#: parser/parse_expr.c:2950 +#: parser/parse_expr.c:2951 #, 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:2991 +#: parser/parse_expr.c:2992 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Es gibt mehrere gleichermaßen plausible Kandidaten." -#: parser/parse_expr.c:3326 +#: parser/parse_expr.c:3327 #, 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:3390 +#: parser/parse_expr.c:3391 #, 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:3391 +#: parser/parse_expr.c:3392 #, 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:3480 +#: parser/parse_expr.c:3481 #, 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:3493 +#: parser/parse_expr.c:3494 #, 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:3498 +#: parser/parse_expr.c:3499 #, c-format msgid "unsupported JSON encoding" msgstr "nicht unterstützte JSON-Kodierung" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3500 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Nur die JSON-Kodierung UTF8 wird unterstützt." -#: parser/parse_expr.c:3536 +#: parser/parse_expr.c:3537 #, 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:3541 +#: parser/parse_expr.c:3542 #, 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: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 in Aggregatfunktion ist für Fensterfunktionen nicht implementiert" -#: 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 "JSON-FORMAT-ENCODING-Klausel kann nur für Eingabetyp bytea verwendet werden" -#: parser/parse_expr.c:4112 +#: parser/parse_expr.c:4113 #, 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: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 "Typ %s kann nicht in der RETURNING-Klausel von %s verwendet werden" -#: parser/parse_expr.c:4140 +#: parser/parse_expr.c:4141 #, c-format msgid "Try returning json or jsonb." msgstr "Versuchen Sie json oder jsonb zurückzugeben." -#: parser/parse_expr.c:4188 +#: parser/parse_expr.c:4189 #, 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:4262 +#: parser/parse_expr.c:4263 #, c-format msgid "Try returning a string type or bytea." msgstr "Versuchen Sie einen Zeichenkettentyp oder bytea zurückzugeben." -#: parser/parse_expr.c:4327 +#: parser/parse_expr.c:4328 #, 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:4340 +#: parser/parse_expr.c:4341 #, 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: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: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 #, c-format msgid "invalid %s behavior" @@ -19021,7 +19027,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:4357 parser/parse_expr.c:4386 +#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 #, 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." @@ -19029,68 +19035,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: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:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 +#: parser/parse_expr.c:4451 parser/parse_expr.c:4477 #, 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:4367 parser/parse_expr.c:4396 +#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 #, 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:4415 +#: parser/parse_expr.c:4416 #, 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:4425 +#: parser/parse_expr.c:4426 #, 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:4443 parser/parse_expr.c:4469 +#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 #, 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:4453 parser/parse_expr.c:4479 +#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, 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:4509 +#: parser/parse_expr.c:4510 #, 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:4727 +#: parser/parse_expr.c:4750 #, 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:4732 +#: parser/parse_expr.c:4755 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT-Ausdruck darf keine Spaltenverweise enthalten" -#: parser/parse_expr.c:4737 +#: parser/parse_expr.c:4760 #, c-format msgid "DEFAULT expression must not return a set" msgstr "DEFAULT-Ausdruck darf keine Ergebnismenge zurückgeben" -#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 +#: parser/parse_expr.c:4775 +#, 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 #, 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:4816 +#: parser/parse_expr.c:4857 #, 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." @@ -19965,7 +19976,7 @@ msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELE msgstr "Regeln mit WHERE-Bedingungen können als Aktion nur SELECT, INSERT, UPDATE oder DELETE haben" #: 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/INTERSECTION/EXCEPT mit Bedingung sind nicht implementiert" @@ -20467,27 +20478,27 @@ msgstr "automatisches Vacuum der Tabelle »%s.%s.%s«" msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "automatisches Analysieren der Tabelle »%s.%s.%s«" -#: postmaster/autovacuum.c:2674 +#: postmaster/autovacuum.c:2677 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "verarbeite Arbeitseintrag 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 wegen Fehlkonfiguration nicht gestartet" -#: postmaster/autovacuum.c:3346 +#: postmaster/autovacuum.c:3349 #, c-format msgid "Enable the \"track_counts\" option." msgstr "Schalten Sie die Option »track_counts« ein." -#: 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) sollte kleiner oder gleich »autovacuum_worker_slots« (%d) sein" -#: 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 "Der Server wird nur bis zu »autovacuum_worker_slots« (%d) Autovacuum-Arbeitsprozesse gleichzeitig starten." @@ -21338,28 +21349,28 @@ msgstr "Parallel-Apply-Worker für logische Replikation für Subskription »%s« msgid "lost connection to the logical replication apply worker" msgstr "Verbindung mit dem Apply-Worker für logische Replikation verloren" -#: 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 "Parallel-Apply-Worker für logische Replikation" -#: replication/logical/applyparallelworker.c:1040 +#: replication/logical/applyparallelworker.c:1047 #, c-format msgid "logical replication parallel apply worker exited due to error" msgstr "Parallel-Apply-Worker für logische Replikation beendete wegen eines Fehlers" -#: 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 "Verbindung mit dem Parallel-Apply-Worker für logische Replikation verloren" -#: replication/logical/applyparallelworker.c:1180 +#: replication/logical/applyparallelworker.c:1187 #, c-format msgid "could not send data to shared-memory queue" msgstr "konnte Daten nicht an Shared-Memory-Queue senden" -#: 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 "Apply-Worker für logische Replikation wird die restlichen Änderungen der Remote-Transaktion %u in eine Datei serialisieren" @@ -21489,7 +21500,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:1600 replication/slot.c:1620 storage/lmgr/lock.c:1042 +#: 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 @@ -21543,8 +21554,8 @@ msgstr "logischer Replikations-Slot kann nicht in einer Transaktion erzeugt werd 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:829 -#: replication/slot.c:864 +#: replication/logical/logical.c:544 replication/slot.c:864 +#: replication/slot.c:899 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Dieser Replikations-Slot wird vom Primärserver synchronisiert." @@ -22189,360 +22200,349 @@ msgstr "Verarbeiten empfangener Daten für Replication-Origin »%s« bei Nachric 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" -#: replication/pgoutput/pgoutput.c:328 +#: replication/pgoutput/pgoutput.c:329 #, c-format msgid "invalid proto_version" msgstr "ungültige 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« ist außerhalb des gültigen Bereichs" -#: replication/pgoutput/pgoutput.c:350 +#: replication/pgoutput/pgoutput.c:351 #, c-format msgid "invalid publication_names syntax" msgstr "ungültige Syntax für publication_names" -#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 +#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 #, c-format msgid "option \"%s\" missing" msgstr "Option »%s« fehlt" -#: replication/pgoutput/pgoutput.c:469 +#: replication/pgoutput/pgoutput.c:492 #, 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:475 +#: replication/pgoutput/pgoutput.c:498 #, 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:490 +#: replication/pgoutput/pgoutput.c:513 #, 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:496 +#: replication/pgoutput/pgoutput.c:519 #, 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:501 +#: replication/pgoutput/pgoutput.c:524 #, 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:515 +#: replication/pgoutput/pgoutput.c:538 #, 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:520 +#: replication/pgoutput/pgoutput.c:543 #, 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:1085 +#: replication/pgoutput/pgoutput.c:1108 #, 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:1792 +#: replication/pgoutput/pgoutput.c:1811 #, c-format msgid "skipped loading publication \"%s\"" msgstr "Laden der Publikation »%s« übersprungen" -#: replication/pgoutput/pgoutput.c:1793 +#: replication/pgoutput/pgoutput.c:1812 #, 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:1794 +#: replication/pgoutput/pgoutput.c:1813 #, c-format msgid "Create the publication if it does not exist." msgstr "Erzeugen Sie die Publikation, wenn sie nicht existiert." -#: replication/slot.c:275 +#: replication/slot.c:313 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "Replikations-Slot-Name »%s« ist zu kurz" -#: replication/slot.c:284 +#: replication/slot.c:321 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "Replikations-Slot-Name »%s« ist zu lang" -#: replication/slot.c:297 +#: replication/slot.c:333 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "Replikations-Slot-Name »%s« enthält ungültiges Zeichen" -#: 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 "Replikations-Slot-Namen dürfen nur Kleinbuchstaben, Zahlen und Unterstriche enthalten." -#: replication/slot.c:348 +#: replication/slot.c:383 #, 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:360 replication/slot.c:886 +#: replication/slot.c:395 replication/slot.c:921 #, 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:385 +#: replication/slot.c:420 #, c-format msgid "replication slot \"%s\" already exists" msgstr "Replikations-Slot »%s« existiert bereits" -#: replication/slot.c:395 +#: replication/slot.c:430 #, c-format msgid "all replication slots are in use" msgstr "alle Replikations-Slots sind in Benutzung" -#: replication/slot.c:396 +#: replication/slot.c:431 #, 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:580 replication/slotfuncs.c:664 +#: 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 "Replikations-Slot »%s« existiert nicht" -#: replication/slot.c:635 replication/slot.c:1431 +#: replication/slot.c:670 replication/slot.c:1466 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "Replikations-Slot »%s« ist aktiv für PID %d" -#: replication/slot.c:652 +#: replication/slot.c:687 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "auf Replikations-Slot »%s« kann nicht mehr zugegriffen werden" -#: replication/slot.c:654 +#: replication/slot.c:689 #, 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:673 +#: replication/slot.c:708 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "logischer Replikations-Slot »%s« wurde akquiriert" -#: replication/slot.c:675 +#: replication/slot.c:710 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "physischer Replikations-Slot »%s« wurde akquiriert" -#: replication/slot.c:760 +#: replication/slot.c:795 #, c-format msgid "released logical replication slot \"%s\"" msgstr "logischer Replikations-Slot »%s« wurde freigegeben" -#: replication/slot.c:762 +#: replication/slot.c:797 #, c-format msgid "released physical replication slot \"%s\"" msgstr "physischer Replikations-Slot »%s« wurde freigegeben" -#: replication/slot.c:828 +#: replication/slot.c:863 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "kann Replikations-Slot »%s« nicht löschen" -#: replication/slot.c:851 +#: replication/slot.c:886 #, 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:863 +#: replication/slot.c:898 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "Replikations-Slot »%s« kann nicht geändert werden" -#: replication/slot.c:873 +#: replication/slot.c:908 #, 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:1021 replication/slot.c:2174 replication/slot.c:2560 +#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 #, c-format msgid "could not remove directory \"%s\"" msgstr "konnte Verzeichnis »%s« nicht löschen" -#: replication/slot.c:1466 +#: replication/slot.c:1501 #, 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:1471 +#: replication/slot.c:1506 #, 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:1483 +#: replication/slot.c:1518 #, c-format msgid "permission denied to use replication slots" msgstr "keine Berechtigung, um Replikations-Slots zu verwenden" -#: replication/slot.c:1484 +#: replication/slot.c:1519 #, 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:1594 +#: replication/slot.c:1629 #, 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:1605 +#: replication/slot.c:1640 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Der Slot kollidierte mit dem xid-Horizont %u." -#: replication/slot.c:1610 +#: replication/slot.c:1645 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:1616 +#: replication/slot.c:1651 #, 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:1630 +#: replication/slot.c:1665 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "Prozess %d wird beendet, um Replikations-Slot »%s« freizugeben" -#: replication/slot.c:1632 +#: replication/slot.c:1667 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "obsoleter Replikations-Slot »%s« wird ungültig gemacht" -#: replication/slot.c:2498 +#: replication/slot.c:2518 #, 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:2505 +#: replication/slot.c:2525 #, 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:2512 +#: replication/slot.c:2532 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "Replikations-Slot-Datei »%s« hat falsche Länge %u" -#: replication/slot.c:2548 +#: replication/slot.c:2568 #, 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:2584 +#: replication/slot.c:2604 #, 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:2586 +#: replication/slot.c:2606 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Ändern Sie »wal_level« in »logical« oder höher." -#: replication/slot.c:2598 +#: replication/slot.c:2618 #, 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:2600 +#: replication/slot.c:2620 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "Ändern Sie »hot_standby« auf »on«." -#: replication/slot.c:2605 +#: replication/slot.c:2625 #, 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:2607 +#: replication/slot.c:2627 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Ändern Sie »wal_level« in »replica« oder höher." -#: replication/slot.c:2654 +#: replication/slot.c:2674 #, c-format msgid "too many replication slots active before shutdown" msgstr "zu viele aktive Replikations-Slots vor dem Herunterfahren" -#: replication/slot.c:2655 +#: replication/slot.c:2675 #, 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:2732 -#, c-format -msgid "Replication slot \"%s\" does not exist." -msgstr "Replikations-Slot »%s« existiert nicht." - -#: replication/slot.c:2740 -#, c-format -msgid "\"%s\" is not a physical replication slot." -msgstr "»%s« ist kein physischer Replikations-Slot." - -#: replication/slot.c:2919 +#: replication/slot.c:2912 #, 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:2921 replication/slot.c:2955 replication/slot.c:2970 +#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 #, 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:2923 +#: replication/slot.c:2916 #, 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:2933 +#: replication/slot.c:2926 #, 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:2935 +#: replication/slot.c:2928 #, 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:2937 +#: replication/slot.c:2930 #, 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:2953 +#: replication/slot.c:2946 #, 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:2957 +#: replication/slot.c:2950 #, 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:2968 +#: replication/slot.c:2961 #, 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:2972 +#: replication/slot.c:2965 #, 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«." @@ -22727,125 +22727,125 @@ msgstr "hole Zeitleisten-History-Datei für Zeitleiste %u vom Primärserver" msgid "could not write to WAL segment %s at offset %d, length %lu: %m" msgstr "konnte nicht in WAL-Segment %s bei Position %d, Länge %lu schreiben: %m" -#: replication/walsender.c:505 +#: replication/walsender.c:519 #, c-format msgid "cannot use %s with a logical replication slot" msgstr "%s kann nicht mit einem logischem Replikations-Slot verwendet werden" -#: replication/walsender.c:609 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1867 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "konnte Positionszeiger nicht ans Ende der Datei »%s« setzen: %m" -#: replication/walsender.c:613 +#: replication/walsender.c:627 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "konnte Positionszeiger nicht den Anfang der Datei »%s« setzen: %m" -#: replication/walsender.c:829 +#: replication/walsender.c:843 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "logischer Replikations-Slot kann nicht für physische Replikation verwendet werden" -#: 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 "angeforderter Startpunkt %X/%X auf Zeitleiste %u ist nicht in der History dieses Servers" -#: replication/walsender.c:898 +#: replication/walsender.c:912 #, c-format msgid "This server's history forked from timeline %u at %X/%X." msgstr "Die History dieses Servers zweigte von Zeitleiste %u bei %X/%X ab." -#: 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 "angeforderter Startpunkt %X/%X ist vor der WAL-Flush-Position dieses Servers %X/%X" -#: replication/walsender.c:1137 +#: 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:1243 +#: replication/walsender.c:1257 #, c-format msgid "%s must not be called inside a transaction" msgstr "%s darf nicht in einer Transaktion aufgerufen werden" #. 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 muss in einer Transaktion aufgerufen werden" #. 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 muss in einer Transaktion im Isolationsmodus REPEATABLE READ aufgerufen werden" #. 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 muss in einer Read-Only-Transaktion aufgerufen werden" #. 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 muss vor allen Anfragen aufgerufen werden" #. 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 darf nicht in einer Subtransaktion aufgerufen werden" -#: replication/walsender.c:1453 +#: replication/walsender.c:1467 #, c-format msgid "terminating walsender process after promotion" msgstr "WAL-Sender-Prozess wird nach Beförderung abgebrochen" -#: replication/walsender.c:1996 +#: replication/walsender.c:2010 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "während der WAL-Sender im Stoppmodus ist können keine neuen Befehle ausgeführt werden" -#: replication/walsender.c:2050 +#: replication/walsender.c:2064 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "im WAL-Sender für physische Replikation können keine SQL-Befehle ausgeführt werden" -#: replication/walsender.c:2081 +#: replication/walsender.c:2095 #, c-format msgid "received replication command: %s" msgstr "Replikationsbefehl empfangen: %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 "aktuelle Transaktion wurde abgebrochen, Befehle werden bis zum Ende der Transaktion ignoriert" -#: 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 "unerwartetes EOF auf Standby-Verbindung" -#: replication/walsender.c:2272 +#: replication/walsender.c:2286 #, c-format msgid "invalid standby message type \"%c\"" msgstr "ungültiger Standby-Message-Typ »%c«" -#: replication/walsender.c:2361 +#: replication/walsender.c:2375 #, c-format msgid "unexpected message type \"%c\"" msgstr "unerwarteter Message-Typ »%c«" -#: replication/walsender.c:2775 +#: replication/walsender.c:2789 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "WAL-Sender-Prozess wird abgebrochen wegen Zeitüberschreitung bei der Replikation" @@ -23295,17 +23295,17 @@ msgstr "INSERT mit ON-CONFLICT-Klausel kann nicht mit Tabelle verwendet werden, 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" -#: rewrite/rewriteManip.c:1178 +#: rewrite/rewriteManip.c:1175 #, c-format msgid "conditional utility statements are not implemented" msgstr "Utility-Anweisungen mit Bedingung sind nicht implementiert" -#: rewrite/rewriteManip.c:1523 +#: rewrite/rewriteManip.c:1520 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "WHERE CURRENT OF mit einer Sicht ist nicht implementiert" -#: 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-Variablen in ON UPDATE-Regeln können nicht auf Spalten verweisen, die Teil einer Mehrfachzuweisung in dem UPDATE-Befehl sind" @@ -23460,59 +23460,59 @@ msgstr "unbekannter Snowball-Parameter: »%s«" msgid "missing Language parameter" msgstr "Parameter »Language« fehlt" -#: 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 "Statistiken können nicht während der Wiederherstellung geändert werden." -#: statistics/attribute_stats.c:202 +#: statistics/attribute_stats.c:205 #, c-format msgid "cannot specify both \"%s\" and \"%s\"" msgstr "»%s« und »%s« können nicht beide angegeben werden" -#: statistics/attribute_stats.c:228 +#: statistics/attribute_stats.c:231 #, c-format msgid "must specify either \"%s\" or \"%s\"" msgstr "entweder »%s« oder »%s« muss angegeben werden" -#: statistics/attribute_stats.c:236 +#: statistics/attribute_stats.c:239 #, c-format msgid "cannot modify statistics on system column \"%s\"" msgstr "Statistiken für Systemspalte »%s« können nicht modifiziert werden" -#: statistics/attribute_stats.c:300 +#: statistics/attribute_stats.c:303 #, c-format msgid "could not determine element type of column \"%s\"" msgstr "konnte Elementtyp von Spalte »%s« nicht bestimmen" -#: 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 "Kann %s oder %s nicht setzen." -#: statistics/attribute_stats.c:317 +#: statistics/attribute_stats.c:320 #, c-format msgid "could not determine less-than operator for column \"%s\"" msgstr "konnte Kleiner-Als-Operator für Spalte »%s« nicht bestimmen" -#: statistics/attribute_stats.c:332 +#: statistics/attribute_stats.c:335 #, c-format msgid "column \"%s\" is not a range type" msgstr "Spalte »%s« ist kein 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 darf keine NULL-Werte enthalten" -#: statistics/attribute_stats.c:778 +#: statistics/attribute_stats.c:781 #, c-format msgid "maximum number of statistics slots exceeded: %d" msgstr "maximale Anzahl Statistik-Slots überschritten: %d" -#: statistics/attribute_stats.c:945 +#: statistics/attribute_stats.c:949 #, c-format msgid "cannot clear statistics on system column \"%s\"" msgstr "Statistiken für Systemspalte »%s« können nicht geleert werden" @@ -23527,72 +23527,82 @@ msgstr "Statistikobjekt »%s.%s« konnte für Relation »%s.%s« nicht berechnet msgid "function returning record called in context that cannot accept type record" msgstr "Funktion, die einen Record zurückgibt, in einem Zusammenhang aufgerufen, der Typ record nicht verarbeiten kann" -#: 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« darf nicht kleiner als -1.0 sein" -#: statistics/stat_utils.c:44 +#: statistics/stat_utils.c:47 #, c-format msgid "argument \"%s\" must not be null" msgstr "Argument »%s« darf nicht NULL sein" -#: statistics/stat_utils.c:71 +#: statistics/stat_utils.c:74 #, c-format msgid "argument \"%s\" must not be a multidimensional array" msgstr "Argument »%s« darf kein mehrdimensionales Array sein" -#: statistics/stat_utils.c:80 +#: statistics/stat_utils.c:83 #, c-format msgid "argument \"%s\" array must not contain null values" msgstr "Array für Argument »%s« darf keine NULL-Werte enthalten" -#: 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« muss angegeben werden, wenn Argument »%s« angegeben ist" -#: statistics/stat_utils.c:178 +#: statistics/stat_utils.c:177 +#, c-format +msgid "index \"%s\" was concurrently dropped" +msgstr "Index »%s« wurde gleichzeitig gelöscht" + +#: statistics/stat_utils.c:192 +#, c-format +msgid "index \"%s\" was concurrently created" +msgstr "Index »%s« wurde gleichzeitig erzeugt" + +#: statistics/stat_utils.c:212 #, c-format msgid "cannot modify statistics for relation \"%s\"" msgstr "Statistiken für Relation »%s« können nicht modifiziert werden" -#: statistics/stat_utils.c:199 +#: statistics/stat_utils.c:220 #, c-format msgid "cannot modify statistics for shared relation" msgstr "Statistiken für geteilte Relation können nicht modifiziert werden" -#: statistics/stat_utils.c:252 +#: statistics/stat_utils.c:260 #, c-format msgid "unrecognized argument name: \"%s\"" msgstr "unbekannter Argumentname »%s«" -#: statistics/stat_utils.c:266 +#: statistics/stat_utils.c:274 #, c-format msgid "argument \"%s\" has type %s, expected type %s" msgstr "Argument »%s« hat Typ %s, erwarteter Typ %s" -#: statistics/stat_utils.c:307 +#: statistics/stat_utils.c:315 #, c-format msgid "variadic arguments must be name/value pairs" msgstr "variadische Argumente müssen Name/Wert-Paare sein" -#: 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 "Geben Sie eine gerade Anzahl variadischer Argumente an, die in Paare aufgeteilt werden können." -#: statistics/stat_utils.c:322 +#: statistics/stat_utils.c:330 #, c-format msgid "name at variadic position %d is null" msgstr "Name auf variadischer Position %d ist 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 "Name auf variadischer Position %d hat Typ %s, erwarteter 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 "Nur -1 oder Werte größer als 0 sind gültig." @@ -23660,69 +23670,69 @@ msgstr "Mehrere Fehlschläge --- Schreibfehler ist möglicherweise dauerhaft." msgid "writing block %u of relation \"%s\"" msgstr "schreibe Block %u von 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 "%u Seite(n) werden mit Nullen gefüllt und %u Prüfsummenfehler werden ignoriert in den Blöcken %u..%u von Relation »%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 enthielt die erste mit Nullen gefüllte Seite." -#: 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] "Details zu dem anderen %d ungültigen Block finden Sie im Serverlog." msgstr[1] "Details zu den anderen %d ungültigen Blöcken finden Sie im Serverlog." -#: 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 ungültige Seiten in den Blöcken %u..%u von Relation »%s«" -#: storage/buffer/bufmgr.c:7336 +#: storage/buffer/bufmgr.c:7340 #, c-format msgid "Block %u held the first invalid page." msgstr "Block %u enthielt die erste ungültige Seite." -#: storage/buffer/bufmgr.c:7337 +#: storage/buffer/bufmgr.c:7341 #, c-format msgid "See server log for the other %u invalid block(s)." msgstr "Die anderen %u ungültigen Blöcke finden Sie im Serverlog." -#: 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 "ungültige Seite in Block %u von Relation »%s«; fülle Seite mit Nullen" -#: 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 "%u ungültige Seiten werden mit Nullen gefüllt in den Blöcken %u..%u von Relation »%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 "Die anderen %u mit Nullen gefüllten Blöcke finden Sie im Serverlog." -#: storage/buffer/bufmgr.c:7350 +#: storage/buffer/bufmgr.c:7354 #, c-format msgid "ignoring checksum failure in block %u of relation \"%s\"" msgstr "Prüfsummenfehler wird ignoriert in Block %u von Relation »%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 "%u Prüfsummenfehler werden ignoriert in den Blöcken %u..%u von Relation »%s«" -#: storage/buffer/bufmgr.c:7352 +#: storage/buffer/bufmgr.c:7356 #, c-format msgid "Block %u held the first ignored page." msgstr "Block %u enthielt die erste ignorierte Seite." -#: storage/buffer/bufmgr.c:7353 +#: storage/buffer/bufmgr.c:7357 #, c-format msgid "See server log for the other %u ignored block(s)." msgstr "Die anderen %u ignorierten Blöcke finden Sie im Serverlog." @@ -27789,59 +27799,59 @@ msgstr "gewünschtes Zeichen ist nicht gültig für die Kodierung: %u" msgid "percentile value %g is not between 0 and 1" msgstr "Perzentilwert %g ist nicht zwischen 0 und 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 "Locale-Name »%s« enthält Nicht-ASCII-Zeichen" -#: 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 "Sortierfolge »%s« hat keine tatsächliche Version, aber eine Version wurde aufgezeichnet" -#: utils/adt/pg_locale.c:1126 +#: utils/adt/pg_locale.c:1133 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "Version von Sortierfolge »%s« stimmt nicht überein" -#: 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 "Die Sortierfolge in der Datenbank wurde mit Version %s erzeugt, aber das Betriebssystem hat 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 "Bauen Sie alle von dieser Sortierfolge beinflussten Objekte neu und führen Sie ALTER COLLATION %s REFRESH VERSION aus, oder bauen Sie PostgreSQL mit der richtigen Bibliotheksversion." -#: 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 "ungültiger Locale-Name »%s« für Provider »builtin«" -#: 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 "konnte Locale-Namen »%s« nicht in Sprach-Tag umwandeln: %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 wird in dieser Installation nicht unterstützt" -#: 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 "konnte Sprache nicht aus ICU-Locale »%s« ermitteln: %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 "Um die Validierung von ICU-Locales auszuschalten, setzen Sie den Parameter »%s« auf »%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-Locale »%s« hat unbekannte Sprache »%s«" diff --git a/src/backend/po/es.po b/src/backend/po/es.po index 8a10392f4c6d0..5e04960ac5797 100644 --- a/src/backend/po/es.po +++ b/src/backend/po/es.po @@ -64,7 +64,7 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL server 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:41+0000\n" +"POT-Creation-Date: 2025-11-08 00:10+0000\n" "PO-Revision-Date: 2025-09-22 11:54+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -147,14 +147,14 @@ 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:1246 -#: access/transam/xlogrecovery.c:1344 access/transam/xlogrecovery.c:1381 -#: access/transam/xlogrecovery.c:1448 backup/basebackup.c:2128 +#: 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:2485 -#: replication/slot.c:2526 replication/walsender.c:629 +#: 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 #, c-format @@ -164,8 +164,8 @@ 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 #: 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:2509 +#: replication/slot.c:2550 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -184,7 +184,7 @@ msgstr "no se pudo leer el archivo «%s»: leídos %d de %zu" #: 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:2391 replication/slot.c:2557 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 @@ -219,7 +219,7 @@ msgstr "" #: 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/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 @@ -227,8 +227,8 @@ 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 +#: 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 @@ -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:9340 access/transam/xlogfuncs.c:699 +#: 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 @@ -256,10 +256,10 @@ msgstr "no se pudo escribir el archivo «%s»: %m" #: 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:8770 backup/basebackup_server.c:207 +#: 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:2359 replication/slot.c:2467 storage/file/fd.c:817 +#: 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 #, c-format @@ -274,19 +274,19 @@ msgstr "no se pudo sincronizar (fsync) archivo «%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 +#: 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: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 @@ -352,9 +352,9 @@ msgstr "no se pudo leer desde la orden «%s»: %m" msgid "no data was returned by command \"%s\"" msgstr "la orden «%s» no retornó datos" -#: ../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() falló: %m" @@ -415,8 +415,8 @@ 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:988 -#: replication/slot.c:2245 replication/slot.c:2387 storage/file/fd.c:835 +#: 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 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -527,10 +527,8 @@ msgid "Unicode low surrogate must follow a high surrogate." msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»." #: ../common/jsonapi.c:2526 -#, fuzzy -#| msgid "out of memory while allocating a WAL reading processor" msgid "out of memory while constructing error description" -msgstr "memoria agotada mientras se emplazaba un procesador de lectura de WAL" +msgstr "memoria agotada mientras se construía una descripción de error" #: ../common/logging.c:279 #, c-format @@ -779,7 +777,7 @@ msgstr "no se pudo obtener el código de salida del subproceso»: código de err #: 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 +#: 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 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 @@ -964,7 +962,7 @@ msgstr "petición para sumarización BRIN de rango para el índice «%s» págin #: 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" @@ -1259,7 +1257,7 @@ msgstr "no se pueden acceder índices temporales de otras sesiones" msgid "failed to re-find tuple within index \"%s\"" msgstr "no se pudo volver a encontrar la tupla dentro del índice «%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 @@ -1358,7 +1356,7 @@ msgstr "no se pudo determinar qué ordenamiento usar para el hashing de cadenas" #: 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 @@ -1469,12 +1467,12 @@ 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:9329 +#: 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:2306 storage/file/copydir.c:173 +#: replication/slot.c:2319 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" @@ -1492,7 +1490,7 @@ msgstr "no se pudo truncar el archivo «%s» a %u: %m" #: 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:2355 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 @@ -1578,7 +1576,7 @@ msgstr "congelado: %u páginas de la tabla (%.2f%% del total) tuvieron %lld tupl #: access/heap/vacuumlazy.c:1062 #, c-format msgid "visibility map: %u pages set all-visible, %u pages set all-frozen (%u were all-visible)\n" -msgstr "" +msgstr "mapa de visibilidad: %u páginas definidas “all-visible”, %u páginas definidas “all-frozen” (%u eran “all-visible”)\n" #: access/heap/vacuumlazy.c:1070 msgid "index scan not needed: " @@ -1696,47 +1694,47 @@ msgstr "tabla «%s»: suspendiendo el truncado debido a una petición de bloqueo msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "desactivando el comportamiento paralelo de vacuum en «%s» --- no se puede hacer vacuum de tablas temporales en paralelo" -#: access/heap/vacuumlazy.c:3766 +#: access/heap/vacuumlazy.c:3768 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "recorriendo el bloque %u posición %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3769 +#: access/heap/vacuumlazy.c:3771 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "recorriendo el bloque %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3773 +#: access/heap/vacuumlazy.c:3775 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "recorriendo la relación «%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 "haciendo «vacuum» al bloque %u posición %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3784 +#: access/heap/vacuumlazy.c:3786 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "haciendo «vacuum» al bloque %u de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3788 +#: access/heap/vacuumlazy.c:3790 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "mientras se hacía «vacuum» a la relación «%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 "mientras se hacía «vacuum» al índice «%s» de la relación «%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 "mientras se limpiaba el índice «%s» de la relación «%s.%s»" -#: access/heap/vacuumlazy.c:3804 +#: access/heap/vacuumlazy.c:3806 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "error mientras se truncaba la relación «%s.%s» a %u bloques" @@ -1763,7 +1761,7 @@ msgstr "no se puede acceder el índice «%s» mientras está siendo reindexado" #: 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» no es un índice" @@ -1809,17 +1807,17 @@ msgstr "el índice «%s» contiene una página interna parcialmente muerta" msgid "This can be caused by an interrupted VACUUM in version 9.3 or older, before upgrade. Please REINDEX it." msgstr "Esto puede ser causado por la interrupción de un VACUUM en la versión 9.3 o anteriores, antes de actualizar. Ejecute REINDEX por favor." -#: 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 "el tamaño de fila de índice %1$zu excede el máximo %3$zu para btree versión %2$u para el índice «%4$s»" -#: access/nbtree/nbtutils.c:4201 +#: access/nbtree/nbtutils.c:4238 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "La tupla de índice hace referencia a la tupla (%u,%u) en la relación «%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" @@ -1869,7 +1867,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:4879 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4902 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "«%s» es demasiado largo (máximo %d caracteres)." @@ -1909,13 +1907,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:1097 +#: access/transam/multixact.c:1098 #, 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:1099 access/transam/multixact.c:1106 -#: access/transam/multixact.c:1130 access/transam/multixact.c:1139 +#: 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 #, c-format msgid "" @@ -1925,65 +1923,65 @@ 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:1104 +#: access/transam/multixact.c:1105 #, 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:1125 access/transam/multixact.c:2482 +#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 #, 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:1134 access/transam/multixact.c:2491 +#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 #, 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:1195 +#: access/transam/multixact.c:1196 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "límite de miembros de multixact alcanzado" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1197 #, 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:1201 +#: access/transam/multixact.c:1202 #, 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:1232 +#: access/transam/multixact.c:1233 #, 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:1237 +#: access/transam/multixact.c:1238 #, 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:1377 +#: access/transam/multixact.c:1378 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "el MultiXactId %u ya no existe -- “wraparound” aparente" -#: access/transam/multixact.c:1383 +#: access/transam/multixact.c:1384 #, 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:2487 access/transam/multixact.c:2496 +#: access/transam/multixact.c:2488 access/transam/multixact.c:2497 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1992,27 +1990,27 @@ 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:2775 +#: access/transam/multixact.c:2776 #, 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:2797 +#: access/transam/multixact.c:2798 #, 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:3188 +#: access/transam/multixact.c:3189 #, 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:3206 +#: access/transam/multixact.c:3207 #, 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:3525 +#: access/transam/multixact.c:3526 #, c-format msgid "invalid MultiXactId: %u" msgstr "el MultiXactId no es válido: %u" @@ -2041,12 +2039,12 @@ msgstr "se ha perdido la conexión al ayudante paralelo" msgid "parallel worker" msgstr "ayudante paralelo" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 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:896 +#: access/transam/parallel.c:1353 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" @@ -2308,9 +2306,9 @@ msgstr "tamaño no válido en archivo «%s»" msgid "calculated CRC checksum does not match value stored in file \"%s\"" msgstr "la suma de verificación calculada no coincide con el valor almacenado en el archivo «%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 "Falló mientras se emplazaba un procesador de lectura de WAL." @@ -2566,7 +2564,7 @@ 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 -#: replication/walsender.c:3074 +#: 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" @@ -2685,9 +2683,9 @@ msgstr[1] "tamaño de segmento de WAL no válido (%d bytes) en archivo de contro msgid "\"%s\" must be at least twice \"%s\"" msgstr "%s debe ser menor que %s" -#: access/transam/xlog.c:4726 catalog/namespace.c:4696 +#: access/transam/xlog.c:4726 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:2727 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." @@ -2837,128 +2835,128 @@ msgstr "checkpoint completo: escritos %d búfers (%.1f%%); %d archivos WAL añad 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:7871 +#: access/transam/xlog.c:7869 #, c-format msgid "recovery restart point at %X/%X" msgstr "restartpoint de recuperación en %X/%X" -#: access/transam/xlog.c:7873 +#: access/transam/xlog.c:7871 #, 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:8137 +#: access/transam/xlog.c:8135 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "punto de recuperación «%s» creado en %X/%X" -#: access/transam/xlog.c:8344 +#: access/transam/xlog.c:8342 #, 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:8402 +#: access/transam/xlog.c:8400 #, 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:8468 +#: access/transam/xlog.c:8466 #, 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:8505 +#: access/transam/xlog.c:8503 #, 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:8775 +#: access/transam/xlog.c:8773 #, 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:8780 +#: access/transam/xlog.c:8778 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "no se pudo sincronizar (fdatasync) archivo «%s»: %m" -#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 +#: access/transam/xlog.c:8855 access/transam/xlog.c:9191 #, 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:8858 access/transam/xlog.c:9194 +#: 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» debe ser definido a «replica» o «logical» al inicio del servidor." -#: access/transam/xlog.c:8863 +#: access/transam/xlog.c:8861 #, 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:8984 +#: access/transam/xlog.c:8982 #, 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:8986 access/transam/xlog.c:9282 +#: 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 "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:9066 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 "no se pudo leer el enlace simbólico «%s»: %m" -#: access/transam/xlog.c:9073 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 "la ruta «%s» del enlace simbólico es demasiado larga" -#: access/transam/xlog.c:9232 backup/basebackup.c:1283 +#: access/transam/xlog.c:9230 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:9233 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 "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:9280 +#: access/transam/xlog.c:9278 #, 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:9396 +#: access/transam/xlog.c:9394 #, 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:9410 +#: access/transam/xlog.c:9408 #, 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:9412 +#: 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 "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:9419 +#: access/transam/xlog.c:9417 #, c-format msgid "all required WAL segments have been archived" msgstr "todos los segmentos de WAL requeridos han sido archivados" -#: access/transam/xlog.c:9423 +#: 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 "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:9462 +#: access/transam/xlog.c:9460 #, 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" @@ -3157,10 +3155,9 @@ msgid "invalid info bits %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "info bits %04X no válidos en segment WAL %s, LSN %X/%X, posición %u" #: access/transam/xlogreader.c:1285 -#, fuzzy, c-format -#| msgid "WAL file is from different database system: WAL file database system identifier is %llu, pg_control database system identifier is %llu" +#, c-format msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" -msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" +msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %, identificador en pg_control es %" #: access/transam/xlogreader.c:1293 #, c-format @@ -3262,18 +3259,18 @@ msgstr "no se pudo restaurar la imagen en %X/%X comprimida con un método descon msgid "could not decompress image at %X/%X, block %d" msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %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 "iniciando recuperación de backup con LSN de redo %X/%X, LSN de checkpoint %X/%X, en timeline %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 "no se pudo encontrar la ubicación de redo %X/%X referida por el registro de checkpoint en %X/%X" # Purposefully deviate from quoting convention here, since argument is a shell command. -#: 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" @@ -3284,460 +3281,476 @@ msgstr "" "Si no está restaurando de un respaldo, intente eliminar el archivo \"%s/backup_label\".\n" "Tenga cuidado: eliminar \"%s/backup_label\" resultará en un clúster corrupto si está restaurando de un respaldo." -#: access/transam/xlogrecovery.c:666 +#: access/transam/xlogrecovery.c:667 #, c-format msgid "could not locate required checkpoint record at %X/%X" msgstr "no se pudo localizar el registro de checkpoint requerido en %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 "no se pudo crear el enlace simbólico «%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 "ignorando el archivo «%s» porque no existe un archivo «%s»" -#: access/transam/xlogrecovery.c:731 +#: access/transam/xlogrecovery.c:732 #, c-format msgid "File \"%s\" was renamed to \"%s\"." msgstr "El archivo «%s» fue renombrado a «%s»." -#: access/transam/xlogrecovery.c:737 +#: access/transam/xlogrecovery.c:738 #, c-format msgid "Could not rename file \"%s\" to \"%s\": %m." msgstr "No se pudo renombrar el archivo de «%s» a «%s»: %m." -#: access/transam/xlogrecovery.c:776 +#: access/transam/xlogrecovery.c:777 #, c-format msgid "restarting backup recovery with redo LSN %X/%X" msgstr "reiniciando recuperación del backup con LSN de redo «%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 "no se pudo localizar un registro de válido en %X/%X" -#: access/transam/xlogrecovery.c:812 +#: access/transam/xlogrecovery.c:813 #, c-format msgid "entering standby mode" msgstr "entrando al modo standby" -#: access/transam/xlogrecovery.c:815 +#: access/transam/xlogrecovery.c:816 #, 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:819 +#: access/transam/xlogrecovery.c:820 #, c-format msgid "starting point-in-time recovery to %s" msgstr "comenzando el proceso de recuperación hasta %s" -#: access/transam/xlogrecovery.c:823 +#: access/transam/xlogrecovery.c:824 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "comenzando el proceso de recuperación hasta «%s»" -#: access/transam/xlogrecovery.c:827 +#: access/transam/xlogrecovery.c:828 #, 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:831 +#: access/transam/xlogrecovery.c:832 #, 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:834 +#: access/transam/xlogrecovery.c:835 #, c-format msgid "starting archive recovery" msgstr "comenzando proceso de recuperación" -#: access/transam/xlogrecovery.c:855 +#: access/transam/xlogrecovery.c:856 #, 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:858 +#: 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." 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." -#: access/transam/xlogrecovery.c:873 +#: access/transam/xlogrecovery.c:874 #, 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:901 +#: access/transam/xlogrecovery.c:902 #, c-format msgid "invalid next transaction ID" msgstr "el siguiente ID de transacción no es válido" -#: access/transam/xlogrecovery.c:906 +#: access/transam/xlogrecovery.c:907 #, c-format msgid "invalid redo in checkpoint record" msgstr "redo no es válido en el registro de checkpoint" -#: access/transam/xlogrecovery.c:917 +#: access/transam/xlogrecovery.c:918 #, 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:946 +#: access/transam/xlogrecovery.c:947 #, 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:950 +#: access/transam/xlogrecovery.c:951 #, 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:993 +#: access/transam/xlogrecovery.c:994 #, 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:994 +#: access/transam/xlogrecovery.c:995 #, 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:1048 +#: access/transam/xlogrecovery.c:1049 #, 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:1113 +#: access/transam/xlogrecovery.c:1114 #, 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:1130 +#: access/transam/xlogrecovery.c:1131 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "no se especifica «primary_conninfo» ni «restore_command»" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1132 #, 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:1139 +#: access/transam/xlogrecovery.c:1140 #, 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:1177 +#: access/transam/xlogrecovery.c:1178 #, 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: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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "datos no válidos en archivo «%s»" -#: access/transam/xlogrecovery.c:1327 +#: access/transam/xlogrecovery.c:1328 #, 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:1338 +#: access/transam/xlogrecovery.c:1339 #, 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:1339 +#: access/transam/xlogrecovery.c:1340 #, 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:1725 +#: access/transam/xlogrecovery.c:1726 #, 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:1748 +#: access/transam/xlogrecovery.c:1749 #, c-format msgid "redo starts at %X/%X" msgstr "redo comienza en %X/%X" -#: access/transam/xlogrecovery.c:1761 +#: access/transam/xlogrecovery.c:1762 #, 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:1851 +#: access/transam/xlogrecovery.c:1852 #, 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:1883 +#: access/transam/xlogrecovery.c:1884 #, 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:1889 +#: access/transam/xlogrecovery.c:1890 #, 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:1898 +#: access/transam/xlogrecovery.c:1899 #, c-format msgid "redo is not required" msgstr "no se requiere redo" -#: access/transam/xlogrecovery.c:1910 +#: access/transam/xlogrecovery.c:1911 #, 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:2104 +#: access/transam/xlogrecovery.c:2105 #, 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:2171 +#: access/transam/xlogrecovery.c:2172 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "entrada de directorio inesperada «%s» fue encontrada en %s" -#: access/transam/xlogrecovery.c:2173 +#: access/transam/xlogrecovery.c:2174 #, fuzzy, c-format #| msgid "All directory entries in pg_tblspc/ should be symbolic links." 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" -#: access/transam/xlogrecovery.c:2175 +#: access/transam/xlogrecovery.c:2176 #, 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:2227 +#: access/transam/xlogrecovery.c:2228 #, 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:2258 +#: access/transam/xlogrecovery.c:2259 #, 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:2296 +#: access/transam/xlogrecovery.c:2297 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "redo WAL en %X/%X para %s" -#: access/transam/xlogrecovery.c:2394 +#: access/transam/xlogrecovery.c:2395 #, 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:2403 +#: access/transam/xlogrecovery.c:2404 #, 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:2419 +#: access/transam/xlogrecovery.c:2420 #, 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:2603 access/transam/xlogrecovery.c:2879 +#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 #, c-format msgid "recovery stopping after reaching consistency" msgstr "deteniendo recuperación al alcanzar un estado consistente" -#: access/transam/xlogrecovery.c:2624 +#: access/transam/xlogrecovery.c:2625 #, 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:2714 +#: access/transam/xlogrecovery.c:2715 #, 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:2721 +#: access/transam/xlogrecovery.c:2722 #, 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:2774 +#: access/transam/xlogrecovery.c:2775 #, 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:2792 +#: access/transam/xlogrecovery.c:2793 #, 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:2859 +#: access/transam/xlogrecovery.c:2860 #, 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:2867 +#: access/transam/xlogrecovery.c:2868 #, 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:2948 +#: access/transam/xlogrecovery.c:2949 #, c-format msgid "pausing at the end of recovery" msgstr "pausando al final de la recuperación" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2950 #, c-format msgid "Execute pg_wal_replay_resume() to promote." msgstr "Ejecute pg_wal_replay_resume() para promover." -#: access/transam/xlogrecovery.c:2952 access/transam/xlogrecovery.c:4698 +#: access/transam/xlogrecovery.c:2953 access/transam/xlogrecovery.c:4710 #, c-format msgid "recovery has paused" msgstr "la recuperación está en pausa" -#: access/transam/xlogrecovery.c:2953 +#: access/transam/xlogrecovery.c:2954 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Ejecute pg_wal_replay_resume() para continuar." -#: access/transam/xlogrecovery.c:3216 +#: access/transam/xlogrecovery.c:3217 #, 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:3432 +#: access/transam/xlogrecovery.c:3433 #, 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:3439 +#: access/transam/xlogrecovery.c:3440 #, 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:4082 +#: access/transam/xlogrecovery.c:4094 #, c-format msgid "invalid checkpoint location" msgstr "ubicación de checkpoint no válida" -#: access/transam/xlogrecovery.c:4092 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint record" msgstr "el registro del checkpoint no es válido" -#: access/transam/xlogrecovery.c:4098 +#: access/transam/xlogrecovery.c:4110 #, 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:4106 +#: access/transam/xlogrecovery.c:4118 #, 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:4112 +#: access/transam/xlogrecovery.c:4124 #, c-format msgid "invalid length of checkpoint record" msgstr "la longitud del registro de checkpoint no es válida" -#: access/transam/xlogrecovery.c:4166 +#: access/transam/xlogrecovery.c:4178 #, 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:4180 +#: access/transam/xlogrecovery.c:4192 #, 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:4199 +#: access/transam/xlogrecovery.c:4211 #, c-format msgid "new target timeline is %u" msgstr "el nuevo timeline destino es %u" -#: access/transam/xlogrecovery.c:4400 +#: access/transam/xlogrecovery.c:4412 #, 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:4460 +#: access/transam/xlogrecovery.c:4472 #, c-format msgid "received promote request" msgstr "se recibió petición de promoción" -#: access/transam/xlogrecovery.c:4689 +#: access/transam/xlogrecovery.c:4701 #, 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:4690 access/transam/xlogrecovery.c:4717 -#: access/transam/xlogrecovery.c:4747 +#: access/transam/xlogrecovery.c:4702 access/transam/xlogrecovery.c:4729 +#: access/transam/xlogrecovery.c:4759 #, 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:4699 +#: access/transam/xlogrecovery.c:4711 #, 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:4700 +#: access/transam/xlogrecovery.c:4712 #, 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:4711 +#: access/transam/xlogrecovery.c:4723 #, 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:4721 +#: access/transam/xlogrecovery.c:4733 #, 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:4745 +#: access/transam/xlogrecovery.c:4757 #, 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:4751 +#: access/transam/xlogrecovery.c:4763 #, 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:4792 +#: 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 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4815 #, c-format msgid "multiple recovery targets specified" msgstr "múltiples valores de destino de recuperación especificados" -#: access/transam/xlogrecovery.c:4793 +#: access/transam/xlogrecovery.c:4816 #, 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:4804 +#: access/transam/xlogrecovery.c:4827 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "El único valor permitido es «immediate»." -#: access/transam/xlogrecovery.c:4958 +#: access/transam/xlogrecovery.c:4981 #, fuzzy, c-format #| msgid "timestamp out of range: \"%s\"" msgid "Timestamp out of range: \"%s\"." msgstr "timestamp fuera de rango: «%s»" -#: access/transam/xlogrecovery.c:5003 +#: access/transam/xlogrecovery.c:5026 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "«recovery_target_timeline» no es un número válido." @@ -4039,7 +4052,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:2233 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -4280,20 +4293,20 @@ msgstr "No puede utilizar la cláusula IN SCHEMA cuando se utiliza GRANT / REVOK #: 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/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" @@ -4304,13 +4317,13 @@ msgstr "no existe la columna «%s» en la relación «%s»" msgid "\"%s\" is an index" msgstr "«%s» es un índice" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 +#: catalog/aclchk.c:1827 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 -#: commands/tablecmds.c:19614 utils/adt/acl.c:2122 utils/adt/acl.c:2152 +#: 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 @@ -4835,21 +4848,6 @@ msgstr[1] "" msgid "cannot drop %s because other objects depend on it" msgstr "no se puede eliminar %s porque otros objetos dependen de él" -#: 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." @@ -4873,14 +4871,14 @@ msgid "constant of the type %s cannot be used here" msgstr "no se puede usar una constante de tipo %s aquí" #: catalog/dependency.c:2205 -#, fuzzy, c-format +#, c-format #| msgid "only table \"%s\" can be referenced in check constraint" msgid "transition table \"%s\" cannot be referenced in a persistent object" -msgstr "sólo la tabla «%s» puede ser referenciada en una restricción «check»" +msgstr "la tabla de transición «%s» no puede ser referida en un objeto persistente" #: 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 "no existe la columna %d en la relación «%s»" @@ -4942,7 +4940,7 @@ msgstr "Las columnas generadas no pueden usarse en COPY." #: 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 "" +msgstr "Las columnas virtuales generadas que usan tipos de datos definidos por el usuario no están soportados aún." #. translator: first %s is an integer not a name #: catalog/heap.c:686 @@ -5006,7 +5004,7 @@ 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:9796 +#: catalog/index.c:915 catalog/pg_constraint.c:1008 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" @@ -5040,7 +5038,7 @@ 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 #: 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 "demasiados padres de herencia" @@ -5060,13 +5058,13 @@ msgstr "no se puede modificar la restricción «%s» en la relación «%s»" #: catalog/heap.c:3009 #, c-format msgid "cannot define not-null constraint with NO INHERIT on column \"%s\"" -msgstr "" +msgstr "no se puede definir una restricción “not-null” con NO INHERIT en la columna «%s»" #: catalog/heap.c:3011 -#, fuzzy, c-format +#, c-format #| msgid "finding table check constraints" msgid "The column has an inherited not-null constraint." -msgstr "encontrando restricciones CHECK de tablas" +msgstr "La columna tiene una restricción “not-null” heredada." #: catalog/heap.c:3201 #, c-format @@ -5097,7 +5095,7 @@ msgstr "leyendo las funciones definidas por el usuario" #: catalog/heap.c:3278 #, c-format msgid "Virtual generated columns that make use of user-defined functions are not yet supported." -msgstr "" +msgstr "Las columnas generadas virtuales que usan tipos de datos definidos por el usuario no están soportadas aún." #: catalog/heap.c:3293 #, fuzzy, c-format @@ -5266,7 +5264,6 @@ msgid "could not obtain lock on relation \"%s\"" msgstr "no se pudo bloquear un “lock” en la relación «%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 "no existe la relación «%s.%s»" @@ -5277,7 +5274,7 @@ msgstr "no existe la relación «%s.%s»" msgid "relation \"%s\" does not exist" msgstr "no existe la relación «%s»" -#: 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" @@ -5303,105 +5300,105 @@ msgstr "sólo relaciones temporales pueden ser creadas en los esquemas temporale msgid "statistics object \"%s\" does not exist" msgstr "no existe el objeto de estadísticas «%s»" -#: catalog/namespace.c:2761 +#: catalog/namespace.c:2764 #, c-format msgid "text search parser \"%s\" does not exist" msgstr "no existe el analizador de búsqueda en texto «%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 "no existe el diccionario de búsqueda en texto «%s»" -#: catalog/namespace.c:3052 +#: catalog/namespace.c:3055 #, c-format msgid "text search template \"%s\" does not exist" msgstr "no existe la plantilla de búsqueda en texto «%s»" -#: 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 "no existe la configuración de búsqueda en texto «%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 "no están implementadas las referencias entre bases de datos: %s" -#: catalog/namespace.c:3335 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: 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 "el nombre no es válido (demasiados puntos): %s" -#: catalog/namespace.c:3465 +#: catalog/namespace.c:3468 #, c-format msgid "cannot move objects into or out of temporary schemas" msgstr "no se puede mover objetos hacia o desde esquemas temporales" -#: catalog/namespace.c:3471 +#: catalog/namespace.c:3474 #, c-format msgid "cannot move objects into or out of TOAST schema" msgstr "no se puede mover objetos hacia o desde el esquema TOAST" -#: 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 "no existe el esquema «%s»" -#: catalog/namespace.c:3575 +#: catalog/namespace.c:3578 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "el nombre de relación no es válido (demasiados puntos): %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 "no existe el ordenamiento (collation) «%s» para la codificación «%s»" -#: catalog/namespace.c:4071 +#: catalog/namespace.c:4074 #, c-format msgid "conversion \"%s\" does not exist" msgstr "no existe la conversión «%s»" -#: catalog/namespace.c:4412 +#: catalog/namespace.c:4415 #, c-format msgid "permission denied to create temporary tables in database \"%s\"" msgstr "se ha denegado el permiso para crear tablas temporales en la base de datos «%s»" -#: catalog/namespace.c:4428 +#: catalog/namespace.c:4431 #, c-format msgid "cannot create temporary tables during recovery" msgstr "no se pueden crear tablas temporales durante la recuperación" -#: catalog/namespace.c:4434 +#: catalog/namespace.c:4437 #, c-format msgid "cannot create temporary tables during a parallel operation" msgstr "no se pueden crear tablas temporales durante una operación paralela" #: 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» no es una tabla" #: 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» no es una vista" #: 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» no es una vista materializada" #: 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» no es una tabla foránea" @@ -6101,18 +6098,19 @@ msgstr "la codificación «%2$s» ya tiene un ordenamiento llamado «%1$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: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 "" +msgstr "Puede que sea necesario hacer heredable la restricción existente usando %s." -#: catalog/pg_constraint.c:775 +#: catalog/pg_constraint.c:775 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:9571 +#: catalog/pg_constraint.c:777 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." @@ -6136,12 +6134,12 @@ msgstr "no existe la restricción «%s» para el dominio %s" #: catalog/pg_constraint.c:1664 #, c-format msgid "invalid type for PERIOD part of foreign key" -msgstr "" +msgstr "tipo no válido para la parte PERIOD de la llave foránea" #: catalog/pg_constraint.c:1665 #, c-format msgid "Only range and multirange are supported." -msgstr "" +msgstr "Sólo de admiten rangos y multirangos." #: catalog/pg_conversion.c:64 #, c-format @@ -6224,7 +6222,7 @@ msgid "The partition is being detached concurrently or has an unfinished detach. msgstr "La partición está siendo desprendida de forma concurrente o tiene un desprendimiento sin terminar." #: 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 "Utilice ALTER TABLE ... DETACH PARTITION ... FINALIZE para completar la operación de desprendimiento pendiente." @@ -6615,7 +6613,7 @@ msgstr "Falla al crear un tipo de multirango para el tipo «%s»." msgid "You can manually specify a multirange type name using the \"multirange_type_name\" attribute." msgstr "Puede especificar manualmente un nombre para el tipo de multirango usando el atributo «multirange_type_name»." -#: catalog/storage.c:549 storage/buffer/bufmgr.c:7334 +#: catalog/storage.c:549 storage/buffer/bufmgr.c:7338 #, fuzzy, c-format #| msgid "invalid page in block %u of relation %s" msgid "invalid page in block %u of relation \"%s\"" @@ -6934,7 +6932,7 @@ msgstr "no se pueden reordenar tablas temporales de otras sesiones" msgid "there is no previously clustered index for table \"%s\"" msgstr "no hay un índice de ordenamiento definido para la tabla «%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 "no existe el índice «%s» en la tabla «%s»" @@ -6949,7 +6947,7 @@ msgstr "no se puede reordenar un catálogo compartido" msgid "cannot vacuum temporary tables of other sessions" msgstr "no se puede hacer vacuum a tablas temporales de otras sesiones" -#: 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» no es un índice de la tabla «%s»" @@ -7014,14 +7012,14 @@ msgid "collation attribute \"%s\" not recognized" 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: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: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 "opciones contradictorias o redundantes" @@ -7091,8 +7089,8 @@ msgstr "no se puede refrescar la versión del ordenamiento por omisión" #. 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." @@ -7219,169 +7217,182 @@ msgstr "se ha denegado el permiso para hacer COPY a un archivo" 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:193 +#: commands/copy.c:182 +#, fuzzy, c-format +#| msgid "aggregate functions are not allowed in COPY FROM WHERE conditions" +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" + +#: 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 +#, c-format +msgid "Column \"%s\" is a generated column." +msgstr "La columna «%s» es una columna generada." + +#: commands/copy.c:232 #, c-format msgid "COPY FROM not supported with row-level security" msgstr "COPY FROM no está soportado con seguridad a nivel de registros" -#: commands/copy.c:194 +#: commands/copy.c:233 #, c-format msgid "Use INSERT statements instead." msgstr "Use sentencias INSERT en su lugar." -#: commands/copy.c:375 +#: commands/copy.c:414 #, c-format msgid "cannot use \"%s\" with HEADER in COPY TO" msgstr "no se puede usar «%s» con HEADER en COPY TO" -#: commands/copy.c:384 +#: commands/copy.c:423 #, c-format msgid "%s requires a Boolean value or \"match\"" msgstr "«%s» requiere un valor lógico (booleano) o «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 no puede usarse con %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 "no se reconoce el valor «%2$s» para COPY %1$s" -#: 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 requiere un valor numérico" -#: commands/copy.c:446 +#: commands/copy.c:485 #, fuzzy, c-format #| msgid "CACHE (%lld) must be greater than zero" msgid "REJECT_LIMIT (%) must be greater than zero" msgstr "el CACHE (%lld) debe ser mayor que cero" -#: commands/copy.c:536 +#: commands/copy.c:575 #, c-format msgid "COPY format \"%s\" not recognized" msgstr "el formato de COPY «%s» no es reconocido" -#: 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 "el argumento de la opción «%s» debe ser una lista de nombres de columna" -#: commands/copy.c:655 +#: commands/copy.c:694 #, c-format 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:683 commands/dbcommands.c:880 commands/dbcommands.c:2420 +#: commands/copy.c:722 commands/dbcommands.c:880 commands/dbcommands.c:2420 #, c-format msgid "option \"%s\" not recognized" msgstr "no se reconoce la opción «%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 "no se puede especificar %s en modo BINARY" -#: commands/copy.c:728 +#: commands/copy.c:767 #, c-format msgid "COPY delimiter must be a single one-byte character" msgstr "el delimitador de COPY debe ser un solo carácter de un byte" -#: commands/copy.c:735 +#: commands/copy.c:774 #, c-format msgid "COPY delimiter cannot be newline or carriage return" msgstr "el delimitador de COPY no puede ser el carácter de nueva línea ni el de retorno de carro" -#: commands/copy.c:741 +#: commands/copy.c:780 #, c-format msgid "COPY null representation cannot use newline or carriage return" msgstr "la representación de null de COPY no puede usar el carácter de nueva línea ni el de retorno de carro" -#: commands/copy.c:751 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "la representación de default de COPY no puede usar el carácter de nueva línea ni el de retorno de carro" -#: commands/copy.c:769 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "el delimitador de COPY no puede ser «%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 requiere modo CSV" -#: commands/copy.c:788 +#: commands/copy.c:827 #, c-format msgid "COPY quote must be a single one-byte character" msgstr "la comilla («quote») de COPY debe ser un solo carácter de un byte" -#: commands/copy.c:793 +#: commands/copy.c:832 #, c-format msgid "COPY delimiter and quote must be different" msgstr "el delimitador de COPY y la comilla («quote») deben ser diferentes" -#: commands/copy.c:805 +#: commands/copy.c:844 #, c-format msgid "COPY escape must be a single one-byte character" msgstr "el escape de COPY debe ser un sólo carácter de un byte" #. 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 "el carácter delimitador de COPY no debe aparecer en la especificación %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 "el carácter de «quote» de CSV no debe aparecer en la especificación %s" -#: commands/copy.c:913 +#: commands/copy.c:952 #, c-format msgid "NULL specification and DEFAULT specification cannot be the same" msgstr "las especificaciones NULL y DEFAULT no pueden ser la misma" -#: commands/copy.c:919 +#: commands/copy.c:958 #, c-format msgid "only ON_ERROR STOP is allowed in BINARY mode" msgstr "sólo ON ERROR STOP es permitido en modo 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 #, fuzzy, c-format #| msgid "COPY %s requires CSV mode" msgid "COPY %s requires %s to be set to %s" msgstr "COPY %s requiere modo CSV" -#: commands/copy.c:988 +#: commands/copy.c:1027 #, c-format msgid "column \"%s\" is a generated column" msgstr "la columna «%s» es una columna generada" -#: commands/copy.c:990 +#: commands/copy.c:1029 #, c-format msgid "Generated columns cannot be used in COPY." msgstr "Las columnas generadas no pueden usarse en COPY." -#: commands/copy.c:1005 commands/indexcmds.c:1959 commands/statscmds.c:239 +#: commands/copy.c:1044 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 @@ -7391,7 +7402,7 @@ msgstr "Las columnas generadas no pueden usarse en COPY." msgid "column \"%s\" does not exist" msgstr "no existe la columna «%s»" -#: 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" @@ -7562,17 +7573,17 @@ msgid "could not read from COPY file: %m" msgstr "no se pudo leer desde archivo COPY: %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 "se encontró fin de archivo inesperado en una conexión con una transacción abierta" -#: 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 "se recibió un mensaje de tipo 0x%02X inesperado durante COPY desde la entrada estándar" -#: 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 "falló COPY desde la entrada estándar: %s" @@ -8065,7 +8076,7 @@ msgid "data directory with the specified OID %u already exists" msgstr "el directorio de datos con el OID %u especificado ya existe" #: 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 "la codificación «%s» no coincide con la configuración regional «%s»" @@ -8151,7 +8162,7 @@ msgid "You must move them back to the database's default tablespace before using 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:3451 +#: commands/dbcommands.c:3338 commands/dbcommands.c:3452 #, 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\"" @@ -8255,7 +8266,7 @@ msgstr "Use DROP AGGREGATE para eliminar funciones de agregación." #: 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 "no existe la relación «%s», omitiendo" @@ -9465,8 +9476,8 @@ msgstr "la columna incluida no permite las opciones NULLS FIRST/LAST" 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: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: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" @@ -9502,8 +9513,8 @@ msgstr "el método de acceso «%s» no soporta las opciones ASC/DESC" msgid "access method \"%s\" does not support NULLS FIRST/LAST options" msgstr "el método de acceso «%s» no soporta las opciones 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 "el tipo de dato %s no tiene una clase de operadores por omisión para el método de acceso «%s»" @@ -9541,7 +9552,7 @@ msgstr "no se pudo identificar un operador de ordenamiento para el tipo %s" msgid "could not identify a contained-by operator for type %s" msgstr "no se pudo identificar un operador de desigualdad para el tipo %s" -#: commands/indexcmds.c:2472 commands/tablecmds.c:10333 +#: commands/indexcmds.c:2472 commands/tablecmds.c:10358 #, fuzzy, c-format #| msgid "Could not translate client host name \"%s\" to IP address: %s." msgid "Could not translate compare type %d for operator family \"%s\" of access method \"%s\"." @@ -9993,8 +10004,8 @@ msgstr "el atributo de operador «%s» no puede ser cambiado si ya se ha estable #: 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/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 @@ -10468,8 +10479,8 @@ msgstr "la secuencia debe estar en el mismo esquema que la tabla a la que está msgid "cannot change ownership of identity sequence" msgstr "no se puede cambiar el dueño de la secuencia de identidad" -#: 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 "La secuencia «%s» está enlazada a la tabla «%s»." @@ -10545,12 +10556,12 @@ msgstr "nombre de columna duplicado en definición de estadísticas" msgid "duplicate expression in statistics definition" msgstr "expresión duplicada en definición de estadísticas" -#: commands/statscmds.c:646 commands/tablecmds.c:8914 +#: commands/statscmds.c:646 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:8922 +#: commands/statscmds.c:654 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "bajando el valor de estadísticas a %d" @@ -10560,7 +10571,7 @@ msgstr "bajando el valor de estadísticas a %d" 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:410 +#: commands/subscriptioncmds.c:331 replication/pgoutput/pgoutput.c:411 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "valor de origen no reconocido: «%s»" @@ -10670,7 +10681,7 @@ msgstr "no se puede usar %s con un slot de replicación lógica" #: commands/subscriptioncmds.c:1287 #, c-format msgid "Try again after some time." -msgstr "" +msgstr "Intente nuevamente después de algún tiempo." #: commands/subscriptioncmds.c:1300 #, fuzzy, c-format @@ -10778,7 +10789,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:1162 +#: replication/pgoutput/pgoutput.c:1185 #, 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" @@ -10875,7 +10886,7 @@ msgstr "la vista materializada «%s» no existe, omitiendo" msgid "Use DROP MATERIALIZED VIEW to remove a materialized view." msgstr "Use DROP MATERIALIZED VIEW para eliminar una vista materializada." -#: 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" @@ -10899,8 +10910,8 @@ msgstr "«%s» no es un tipo" msgid "Use DROP TYPE to remove a type." msgstr "Use DROP TYPE para eliminar un tipo." -#: 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 "no existe la tabla foránea «%s»" @@ -10930,7 +10941,7 @@ msgstr "las vistas materializadas no pueden ser «unlogged»" msgid "cannot create temporary table within security-restricted operation" msgstr "no se puede crear una tabla temporal dentro una operación restringida por seguridad" -#: 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 "se heredaría de la relación «%s» más de una vez" @@ -10955,7 +10966,7 @@ msgstr "no se puede crear una partición foránea en la tabla particionada «%s msgid "Table \"%s\" contains indexes that are unique." msgstr "La tabla «%s» contiene índices que son únicos." -#: commands/tablecmds.c:1415 commands/tablecmds.c:14927 +#: commands/tablecmds.c:1415 commands/tablecmds.c:14952 #, c-format msgid "too many array dimensions" msgstr "demasiadas dimensiones de array" @@ -11006,7 +11017,7 @@ msgstr "no se puede truncar la tabla foránea «%s»" msgid "cannot truncate temporary tables of other sessions" msgstr "no se pueden truncar tablas temporales de otras sesiones" -#: 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 "no se puede heredar de la tabla particionada «%s»" @@ -11027,18 +11038,18 @@ msgstr "la relación heredada «%s» no es una tabla o tabla foránea" msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "no se puede crear una relación temporal como partición de la relación permanente «%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 "no se puede heredar de la tabla temporal «%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 "no se puede heredar de una tabla temporal de otra sesión" #: 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 @@ -11076,17 +11087,17 @@ msgid "A child table column cannot be generated unless its parent column is." msgstr "Una columna de tabla hija no puede ser generada a menos que su columna padre lo sea." #: commands/tablecmds.c:3072 commands/tablecmds.c:3366 -#: commands/tablecmds.c:17537 +#: commands/tablecmds.c:17562 #, fuzzy, c-format #| msgid "column \"%s\" inherits from generated column but specifies identity" msgid "column \"%s\" inherits from generated column of different kind" msgstr "la columna «%s» hereda de una columna generada pero especifica una identidad" #: 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 "" +msgstr "La columna padre es %s, la columna hija es %s." #: commands/tablecmds.c:3121 #, c-format @@ -11152,7 +11163,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 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4776 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "«%s» versus «%s»" @@ -11339,7 +11350,7 @@ msgstr "no se puede cambiar el tipo «%s» porque es el tipo de una tabla tipada #: commands/tablecmds.c:7158 #, c-format msgid "A typed table must use a stand-alone composite type created with CREATE TYPE." -msgstr "" +msgstr "Una tabla tipada debe usar un tipo de dato “stand-alone” creado con CREATE TYPE." #: commands/tablecmds.c:7163 #, c-format @@ -11356,12 +11367,12 @@ msgstr "no se puede agregar una columna a una tabla tipada" msgid "cannot add column to a partition" msgstr "no se puede agregar una columna a una partición" -#: 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 "la tabla hija «%s» tiene un tipo diferente para la columna «%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 "la tabla hija «%s» tiene un ordenamiento (collation) diferente para la columna «%s»" @@ -11393,17 +11404,17 @@ msgstr "ya existe la columna «%s» en la relación «%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: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 "no se puede alterar columna de sistema «%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 "la columna «%s» en la relación «%s» es una columna de identidad" @@ -11413,14 +11424,14 @@ msgstr "la columna «%s» en la relación «%s» es una columna de identidad" msgid "column \"%s\" is marked NOT NULL in parent table" msgstr "columna «%s» está marcada NOT NULL en la tabla padre" -#: 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 "la restricción debe ser agregada a las tablas hijas también" #: 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 "No especifique la opción ONLY." @@ -11445,1040 +11456,1029 @@ msgstr "no se puede agregar identidad a una columna de una partición" msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added" msgstr "la columna «%s» en la relación «%s» debe ser declarada NOT NULL antes de que una identidad pueda agregarse" -#: commands/tablecmds.c:8285 +#: commands/tablecmds.c:8310 #, c-format msgid "column \"%s\" of relation \"%s\" is already an identity column" msgstr "la columna «%s» en la relación «%s» ya es una columna de identidad" -#: commands/tablecmds.c:8291 +#: commands/tablecmds.c:8316 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "la columna «%s» en la relación «%s» ya tiene un valor por omisión" -#: commands/tablecmds.c:8352 +#: commands/tablecmds.c:8377 #, c-format msgid "cannot change identity column of only the partitioned table" msgstr "no se puede cambiar la columna de identidad de una tabla particionada" -#: commands/tablecmds.c:8358 +#: commands/tablecmds.c:8383 #, c-format msgid "cannot change identity column of a partition" msgstr "no puede cambiar la columna de identidad de una partición" -#: 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 "la columna «%s» en la relación «%s» no es una columna identidad" -#: commands/tablecmds.c:8469 +#: commands/tablecmds.c:8494 #, c-format msgid "cannot drop identity from a column of only the partitioned table" msgstr "no se pueden eliminar la identidad de la columna de sólo una tabla particionada" -#: commands/tablecmds.c:8475 +#: commands/tablecmds.c:8500 #, c-format msgid "cannot drop identity from a column of a partition" msgstr "no se puede eliminar la identidad de la columna de una partición" -#: commands/tablecmds.c:8504 +#: commands/tablecmds.c:8529 #, c-format msgid "column \"%s\" of relation \"%s\" is not an identity column, skipping" msgstr "la columna «%s» de la relación «%s» no es una columna identidad, omitiendo" -#: 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 "la columna «%s» en la relación «%s» no es una columna generada" -#: 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 "" +msgstr "ALTER TABLE / SET EXPRESSION no está soportado para columnas virtuales generadas en tablas con restricciones “check”" -#: commands/tablecmds.c:8613 commands/tablecmds.c:8631 -#: commands/tablecmds.c:8803 +#: commands/tablecmds.c:8638 commands/tablecmds.c:8656 +#: commands/tablecmds.c:8828 #, fuzzy, c-format #| msgid "column \"%s\" of relation \"%s\" is a generated column" msgid "Column \"%s\" of relation \"%s\" is a virtual generated column." msgstr "la columna «%s» en la relación «%s» es una columna generada" -#: 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 "" +msgstr "ALTER TABLE / SET EXPRESSION no está soportado para columnas virtuales generadas en tablas que son parte de una publicación" -#: 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 se debe aplicar a las tablas hijas también" -#: commands/tablecmds.c:8759 +#: commands/tablecmds.c:8784 #, c-format msgid "cannot drop generation expression from inherited column" msgstr "no se puede eliminar la expresión de generación de una columna heredada" -#: commands/tablecmds.c:8802 +#: commands/tablecmds.c:8827 #, fuzzy, c-format #| msgid "ALTER TABLE / DROP EXPRESSION must be applied to child tables too" msgid "ALTER TABLE / DROP EXPRESSION is not supported for virtual generated columns" msgstr "ALTER TABLE / DROP EXPRESSION se debe aplicar a las tablas hijas también" -#: commands/tablecmds.c:8816 +#: commands/tablecmds.c:8841 #, fuzzy, c-format #| msgid "column \"%s\" of relation \"%s\" is not a stored generated column, skipping" msgid "column \"%s\" of relation \"%s\" is not a generated column, skipping" msgstr "la columna «%s» de la relación «%s» no es una columna generada almacenada, omitiendo" -#: commands/tablecmds.c:8894 +#: commands/tablecmds.c:8919 #, c-format msgid "cannot refer to non-index column by number" msgstr "no se puede referir a columnas que no son de índice por número" -#: commands/tablecmds.c:8946 +#: commands/tablecmds.c:8971 #, c-format msgid "column number %d of relation \"%s\" does not exist" msgstr "no existe la columna número %d en la relación «%s»" -#: commands/tablecmds.c:8966 +#: commands/tablecmds.c:8991 #, fuzzy, c-format #| msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgid "cannot alter statistics on virtual generated column \"%s\"" msgstr "no se puede alterar estadísticas en la columna incluida «%s» del índice «%s»" -#: commands/tablecmds.c:8975 +#: commands/tablecmds.c:9000 #, c-format msgid "cannot alter statistics on included column \"%s\" of index \"%s\"" msgstr "no se puede alterar estadísticas en la columna incluida «%s» del índice «%s»" -#: commands/tablecmds.c:8980 +#: commands/tablecmds.c:9005 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "no se puede alterar estadísticas en la columna no-de-expresión «%s» del índice «%s»" -#: commands/tablecmds.c:8982 +#: commands/tablecmds.c:9007 #, c-format msgid "Alter statistics on table column instead." msgstr "Altere las estadísticas en la columna de la tabla en su lugar." -#: commands/tablecmds.c:9228 +#: commands/tablecmds.c:9253 #, c-format msgid "cannot drop column from typed table" msgstr "no se pueden eliminar columnas de una tabla tipada" -#: commands/tablecmds.c:9292 +#: commands/tablecmds.c:9317 #, c-format msgid "column \"%s\" of relation \"%s\" does not exist, skipping" msgstr "no existe la columna «%s» en la relación «%s», omitiendo" -#: commands/tablecmds.c:9305 +#: commands/tablecmds.c:9330 #, c-format msgid "cannot drop system column \"%s\"" msgstr "no se puede eliminar la columna de sistema «%s»" -#: commands/tablecmds.c:9315 +#: commands/tablecmds.c:9340 #, c-format msgid "cannot drop inherited column \"%s\"" msgstr "no se puede eliminar la columna heredada «%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 "no se puede eliminar la columna «%s» porque es parte de la llave de partición de la relación «%s»" -#: commands/tablecmds.c:9353 +#: commands/tablecmds.c:9378 #, c-format msgid "cannot drop column from only the partitioned table when partitions exist" msgstr "no se pueden eliminar columnas sólo de una tabla particionada cuando existe particiones" -#: commands/tablecmds.c:9518 +#: commands/tablecmds.c:9543 #, fuzzy, c-format #| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." msgid "column \"%s\" of table \"%s\" is not marked NOT NULL" msgstr "La columna «%s» de la relación «%s» no está previamente marcada NOT NULL." -#: commands/tablecmds.c:9554 commands/tablecmds.c:9566 +#: commands/tablecmds.c:9579 commands/tablecmds.c:9591 #, fuzzy, c-format #| msgid "cannot rename system column \"%s\"" msgid "cannot create primary key on column \"%s\"" msgstr "no se puede cambiar el nombre a la columna de sistema «%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 "" +msgstr "La restricción «%s» en la columna «%s» de la tabla «%s», marcada %s, es incompatible con una llave primaria." -#: 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 no está soportado en tablas particionadas" -#: 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 renombrará el índice «%s» a «%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 "no se puede usar ONLY para una llave foránea en la tabla particionada «%s» haciendo referencia a la relación «%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 "la relación referida «%s» no es una tabla" -#: commands/tablecmds.c:10106 +#: commands/tablecmds.c:10131 #, c-format msgid "constraints on permanent tables may reference only permanent tables" msgstr "las restricciones en tablas permanentes sólo pueden hacer referencia a tablas permanentes" -#: commands/tablecmds.c:10113 +#: commands/tablecmds.c:10138 #, c-format msgid "constraints on unlogged tables may reference only permanent or unlogged tables" msgstr "las restricciones en tablas «unlogged» sólo pueden hacer referencia a tablas permanentes o «unlogged»" -#: commands/tablecmds.c:10119 +#: commands/tablecmds.c:10144 #, c-format msgid "constraints on temporary tables may reference only temporary tables" msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales" -#: commands/tablecmds.c:10123 +#: commands/tablecmds.c:10148 #, c-format msgid "constraints on temporary tables must involve temporary tables of this session" msgstr "las restricciones en tablas temporales sólo pueden hacer referencia a tablas temporales de esta sesión" -#: 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 "" +msgstr "la llave foránea usa PERIOD en la tabla referenciada pero no en la tabla referente" -#: 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 "" +msgstr "la llave foránea usa PERIOD en la tabla referente pero no en la tabla referenciada" -#: 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 "acción %s no válida para restricción de llave foránea que contiene columnas generadas" -#: commands/tablecmds.c:10237 +#: commands/tablecmds.c:10262 #, fuzzy, c-format #| msgid "index creation on system columns is not supported" msgid "foreign key constraints on virtual generated columns are not supported" msgstr "la creación de índices en columnas de sistema no está soportada" -#: commands/tablecmds.c:10251 commands/tablecmds.c:10260 +#: commands/tablecmds.c:10276 commands/tablecmds.c:10285 #, fuzzy, c-format #| msgid "invalid %s action for foreign key constraint containing generated column" msgid "unsupported %s action for foreign key constraint using PERIOD" msgstr "acción %s no válida para restricción de llave foránea que contiene columnas generadas" -#: commands/tablecmds.c:10275 +#: commands/tablecmds.c:10300 #, c-format msgid "number of referencing and referenced columns for foreign key disagree" msgstr "el número de columnas referidas en la llave foránea no coincide con el número de columnas de referencia" -#: commands/tablecmds.c:10331 +#: commands/tablecmds.c:10356 #, fuzzy, c-format #| msgid "could not identify an ordering operator for type %s" msgid "could not identify an overlaps operator for foreign key" msgstr "no se pudo identificar un operador de ordenamiento para el tipo %s" -#: commands/tablecmds.c:10332 +#: commands/tablecmds.c:10357 #, fuzzy, c-format #| msgid "could not identify an equality operator for type %s" msgid "could not identify an equality operator for foreign key" msgstr "no se pudo identificar un operador de igualdad para el tipo %s" -#: 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 "la restricción de llave foránea «%s» no puede ser implementada" -#: commands/tablecmds.c:10399 +#: commands/tablecmds.c:10424 #, fuzzy, c-format #| msgid "Key columns \"%s\" and \"%s\" are of incompatible types: %s and %s." msgid "Key columns \"%s\" of the referencing table and \"%s\" of the referenced table are of incompatible types: %s and %s." msgstr "Las columnas llave «%s» y «%s» son de tipos incompatibles: %s y %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 "la columna «%s» referenciada en la acción ON DELETE SET debe ser parte de la llave foránea" -#: 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 "las restricciones de llave foránea no están soportadas en tablas foráneas" -#: 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 "no se puede adjuntar la tabla foránea «%s» como partición porque es referenciada por la llave foránea «%s»" -#: commands/tablecmds.c:11719 +#: commands/tablecmds.c:11744 #, fuzzy, c-format #| msgid "constraint \"%s\" conflicts with inherited constraint on relation \"%s\"" msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción heredada de la relación «%s»" -#: commands/tablecmds.c:12181 +#: commands/tablecmds.c:12206 #, fuzzy, c-format #| msgid "constraint must be validated on child tables too" msgid "constraint must be altered in child tables too" msgstr "la restricción debe ser validada en las tablas hijas también" -#: 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 "no existe la restricción «%s» en la relación «%s»" -#: commands/tablecmds.c:12217 +#: commands/tablecmds.c:12242 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "la restricción «%s» de la relación «%s» no es una restricción de llave foránea" -#: commands/tablecmds.c:12222 +#: commands/tablecmds.c:12247 #, fuzzy, c-format #| msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: commands/tablecmds.c:12228 +#: commands/tablecmds.c:12253 #, fuzzy, c-format #| msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" msgstr "la restricción «%s» de la relación «%s» no es una restricción de llave foránea" -#: commands/tablecmds.c:12236 +#: commands/tablecmds.c:12261 #, fuzzy, c-format #| msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" msgstr "no se puede eliminar la restricción «%s» heredada de la relación «%s»" -#: commands/tablecmds.c:12276 +#: commands/tablecmds.c:12301 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: commands/tablecmds.c:12279 +#: commands/tablecmds.c:12304 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "La restricción «%s» deriva de la restricción «%s» de la relación «%s»." -#: commands/tablecmds.c:12281 +#: commands/tablecmds.c:12306 #, c-format msgid "You may alter the constraint it derives from instead." msgstr "En su lugar, puede modificar la restricción de la cual deriva." -#: commands/tablecmds.c:12916 +#: commands/tablecmds.c:12941 #, fuzzy, c-format #| msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgid "cannot validate constraint \"%s\" of relation \"%s\"" msgstr "no se puede modificar la restricción «%s» en la relación «%s»" -#: commands/tablecmds.c:12918 +#: commands/tablecmds.c:12943 #, fuzzy, c-format #| msgid "This operation is not supported for composite types." msgid "This operation is not supported for this type of constraint." msgstr "Esta operación no está soportada en tipos compuestos." -#: commands/tablecmds.c:12923 +#: commands/tablecmds.c:12948 #, c-format msgid "cannot validate NOT ENFORCED constraint" -msgstr "" +msgstr "no se puede validar una restricción 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 "la restricción debe ser validada en las tablas hijas también" -#: commands/tablecmds.c:13309 +#: commands/tablecmds.c:13334 #, c-format msgid "column \"%s\" referenced in foreign key constraint does not exist" msgstr "no existe la columna «%s» referida en la llave foránea" -#: commands/tablecmds.c:13315 +#: commands/tablecmds.c:13340 #, c-format msgid "system columns cannot be used in foreign keys" msgstr "las columnas de sistema no pueden usarse en llaves foráneas" -#: commands/tablecmds.c:13319 +#: commands/tablecmds.c:13344 #, c-format msgid "cannot have more than %d keys in a foreign key" msgstr "no se puede tener más de %d columnas en una llave foránea" -#: commands/tablecmds.c:13387 +#: commands/tablecmds.c:13412 #, c-format msgid "cannot use a deferrable primary key for referenced table \"%s\"" msgstr "no se puede usar una llave primaria postergable para la tabla referenciada «%s»" -#: commands/tablecmds.c:13404 +#: commands/tablecmds.c:13429 #, c-format msgid "there is no primary key for referenced table \"%s\"" msgstr "no hay llave primaria para la tabla referida «%s»" -#: commands/tablecmds.c:13477 +#: commands/tablecmds.c:13502 #, c-format msgid "foreign key referenced-columns list must not contain duplicates" msgstr "la lista de columnas referidas en una llave foránea no debe contener duplicados" -#: commands/tablecmds.c:13580 +#: commands/tablecmds.c:13605 #, c-format msgid "cannot use a deferrable unique constraint for referenced table \"%s\"" msgstr "no se puede usar una restricción unique postergable para la tabla referenciada «%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 "no hay restricción unique que coincida con las columnas dadas en la tabla referida «%s»" -#: commands/tablecmds.c:14026 +#: commands/tablecmds.c:14051 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" msgstr "no existe la restricción «%s» en la relación «%s», omitiendo" -#: commands/tablecmds.c:14071 +#: commands/tablecmds.c:14096 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "no se puede eliminar la restricción «%s» heredada de la relación «%s»" -#: commands/tablecmds.c:14123 +#: commands/tablecmds.c:14148 #, c-format msgid "column \"%s\" is in a primary key" msgstr "la columna «%s» está en la llave primaria" -#: commands/tablecmds.c:14131 +#: commands/tablecmds.c:14156 #, c-format msgid "column \"%s\" is in index used as replica identity" msgstr "la columna «%s» se encuentra en un índice utilizado como identidad de réplica" -#: commands/tablecmds.c:14364 +#: commands/tablecmds.c:14389 #, c-format msgid "cannot alter column type of typed table" msgstr "no se puede cambiar el tipo de una columna de una tabla tipada" -#: commands/tablecmds.c:14392 +#: commands/tablecmds.c:14417 #, c-format msgid "cannot specify USING when altering type of generated column" msgstr "no se puede especificar USING al alterar el tipo de una columna generada" -#: 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 "La columna «%s» es una columna generada." - -#: commands/tablecmds.c:14404 +#: commands/tablecmds.c:14429 #, c-format msgid "cannot alter inherited column \"%s\"" msgstr "no se puede alterar la columna heredada «%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 "no se puede alterar la columna «%s» porque es parte de la llave de partición de la relación «%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 "el resultado de la cláusula USING para la columna «%s» no puede ser convertido automáticamente al tipo %s" -#: commands/tablecmds.c:14471 +#: commands/tablecmds.c:14496 #, c-format msgid "You might need to add an explicit cast." msgstr "Puede ser necesario agregar un cast explícito." -#: commands/tablecmds.c:14475 +#: commands/tablecmds.c:14500 #, c-format msgid "column \"%s\" cannot be cast automatically to type %s" msgstr "la columna «%s» no puede convertirse automáticamente al tipo %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 "Puede ser necesario especificar «USING %s::%s»." -#: commands/tablecmds.c:14582 +#: commands/tablecmds.c:14607 #, c-format msgid "cannot alter inherited column \"%s\" of relation \"%s\"" msgstr "no se puede alterar la columna heredada «%s» de la relación «%s»" -#: commands/tablecmds.c:14611 +#: commands/tablecmds.c:14636 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "La expresión USING contiene una referencia a la fila completa (whole-row)." -#: commands/tablecmds.c:14622 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "debe cambiar el tipo a la columna heredada «%s» en las tablas hijas también" -#: commands/tablecmds.c:14747 +#: commands/tablecmds.c:14772 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "no se puede alterar el tipo de la columna «%s» dos veces" -#: commands/tablecmds.c:14785 +#: commands/tablecmds.c:14810 #, c-format msgid "generation expression for column \"%s\" cannot be cast automatically to type %s" msgstr "la expresión de generación para la columna «%s» no puede ser convertido automáticamente al tipo %s" -#: commands/tablecmds.c:14790 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "el valor por omisión para la columna «%s» no puede ser convertido automáticamente al tipo %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 "no se puede alterar el tipo de una columna usada en una función o procedimiento" -#: 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 depende de la columna «%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 "no se puede alterar el tipo de una columna usada en una regla o vista" -#: commands/tablecmds.c:15129 +#: commands/tablecmds.c:15154 #, c-format msgid "cannot alter type of a column used in a trigger definition" msgstr "no se puede alterar el tipo de una columna usada en una definición de trigger" -#: commands/tablecmds.c:15148 +#: commands/tablecmds.c:15173 #, c-format msgid "cannot alter type of a column used in a policy definition" msgstr "no se puede alterar el tipo de una columna usada en una definición de política" -#: commands/tablecmds.c:15179 +#: commands/tablecmds.c:15204 #, c-format msgid "cannot alter type of a column used by a generated column" msgstr "no se puede alterar el tipo de una columna usada por una columna generada" -#: commands/tablecmds.c:15180 +#: commands/tablecmds.c:15205 #, c-format msgid "Column \"%s\" is used by generated column \"%s\"." msgstr "La columna «%s» es usada por la columna generada «%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 "no se puede alterar el tipo de una columna usada en una cláusula WHERE de publicación" -#: 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 "no se puede cambiar el dueño del índice «%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 "Cambie el dueño de la tabla del índice en su lugar." -#: commands/tablecmds.c:16109 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "no se puede cambiar el dueño de la secuencia «%s»" -#: commands/tablecmds.c:16134 +#: commands/tablecmds.c:16159 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "no se puede cambiar el dueño de la relación «%s»" -#: commands/tablecmds.c:16601 +#: commands/tablecmds.c:16626 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "no se pueden tener múltiples subórdenes SET TABLESPACE" -#: commands/tablecmds.c:16680 +#: commands/tablecmds.c:16705 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "no se puede definir opciones para la relación «%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 sólo puede usarse en vistas automáticamente actualizables" -#: commands/tablecmds.c:16967 +#: commands/tablecmds.c:16992 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "solamente tablas, índices y vistas materializadas existen en tablespaces" -#: commands/tablecmds.c:16979 +#: commands/tablecmds.c:17004 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "no se puede mover objetos hacia o desde el 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 "cancelando porque el lock en la relación «%s.%s» no está disponible" -#: commands/tablecmds.c:17087 +#: commands/tablecmds.c:17112 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "no se encontraron relaciones coincidentes en el tablespace «%s»" -#: commands/tablecmds.c:17209 +#: commands/tablecmds.c:17234 #, c-format msgid "cannot change inheritance of typed table" msgstr "no se puede cambiar la herencia de una tabla tipada" -#: 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 "no puede cambiar la herencia de una partición" -#: commands/tablecmds.c:17219 +#: commands/tablecmds.c:17244 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "no se puede cambiar la herencia de una tabla particionada" -#: commands/tablecmds.c:17266 +#: commands/tablecmds.c:17291 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "no se puede agregar herencia a tablas temporales de otra sesión" -#: commands/tablecmds.c:17279 +#: commands/tablecmds.c:17304 #, c-format msgid "cannot inherit from a partition" msgstr "no se puede heredar de una partición" -#: commands/tablecmds.c:17301 commands/tablecmds.c:20312 +#: commands/tablecmds.c:17326 commands/tablecmds.c:20347 #, c-format msgid "circular inheritance not allowed" msgstr "la herencia circular no está permitida" -#: 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» ya es un hijo de «%s»." -#: commands/tablecmds.c:17315 +#: commands/tablecmds.c:17340 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "el trigger «%s» impide a la tabla «%s» convertirse en hija de herencia" -#: commands/tablecmds.c:17317 +#: commands/tablecmds.c:17342 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "Los triggers ROW con tablas de transición no están permitidos en jerarquías de herencia." -#: commands/tablecmds.c:17518 commands/tablecmds.c:17767 +#: commands/tablecmds.c:17543 commands/tablecmds.c:17792 #, c-format -#| msgid "column \"%s\" in child table must be marked NOT NULL" msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" msgstr "columna «%s» en tabla hija «%s» debe marcarse como NOT NULL" -#: commands/tablecmds.c:17528 +#: commands/tablecmds.c:17553 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "columna «%s» en tabla hija debe ser una columna generada" -#: commands/tablecmds.c:17532 +#: commands/tablecmds.c:17557 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "columna «%s» en tabla hija no puede ser una columna generada" -#: commands/tablecmds.c:17578 +#: commands/tablecmds.c:17603 #, c-format msgid "child table is missing column \"%s\"" msgstr "tabla hija no tiene la columna «%s»" -#: commands/tablecmds.c:17695 +#: commands/tablecmds.c:17720 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "la tabla hija «%s» tiene una definición diferente para la restricción «check» «%s»" -#: commands/tablecmds.c:17704 +#: commands/tablecmds.c:17729 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción no heredada en la tabla hija «%s»" -#: commands/tablecmds.c:17715 +#: commands/tablecmds.c:17740 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción NOT VALID en la tabla hija «%s»" -#: commands/tablecmds.c:17726 +#: commands/tablecmds.c:17751 #, c-format -#| msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" msgstr "la restricción «%s» está en conflicto con la restricción NOT ENFORCED en la tabla hija «%s»" -#: commands/tablecmds.c:17775 +#: commands/tablecmds.c:17800 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "tabla hija no tiene la restricción «%s»" -#: commands/tablecmds.c:17862 +#: commands/tablecmds.c:17887 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "la partición «%s» ya tiene un desprendimiento pendiente en la tabla particionada «%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 "relación «%s» no es una partición de la relación «%s»" -#: commands/tablecmds.c:17945 +#: commands/tablecmds.c:17970 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "relación «%s» no es un padre de la relación «%s»" -#: commands/tablecmds.c:18216 +#: commands/tablecmds.c:18241 #, c-format msgid "typed tables cannot inherit" msgstr "las tablas tipadas no pueden heredar" -#: commands/tablecmds.c:18246 +#: commands/tablecmds.c:18271 #, c-format msgid "table is missing column \"%s\"" msgstr "la tabla no tiene la columna «%s»" -#: commands/tablecmds.c:18257 +#: commands/tablecmds.c:18282 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "la tabla tiene columna «%s» en la posición en que el tipo requiere «%s»." -#: commands/tablecmds.c:18266 +#: commands/tablecmds.c:18291 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "la tabla «%s» tiene un tipo diferente para la columna «%s»" -#: commands/tablecmds.c:18280 +#: commands/tablecmds.c:18305 #, c-format msgid "table has extra column \"%s\"" msgstr "tabla tiene la columna extra «%s»" -#: commands/tablecmds.c:18332 +#: commands/tablecmds.c:18357 #, c-format msgid "\"%s\" is not a typed table" msgstr "«%s» no es una tabla tipada" -#: commands/tablecmds.c:18512 +#: commands/tablecmds.c:18537 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "no se puede usar el índice no-único «%s» como identidad de réplica" -#: commands/tablecmds.c:18518 +#: commands/tablecmds.c:18543 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "no puede usar el índice no-inmediato «%s» como identidad de réplica" -#: commands/tablecmds.c:18524 +#: commands/tablecmds.c:18549 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "no se puede usar el índice funcional «%s» como identidad de réplica" -#: commands/tablecmds.c:18530 +#: commands/tablecmds.c:18555 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "no se puede usar el índice parcial «%s» como identidad de réplica" -#: 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 "el índice «%s» no puede usarse como identidad de réplica porque la column %d es una columna de sistema" -#: 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 "el índice «%s» no puede usarse como identidad de réplica porque la column «%s» acepta valores nulos" -#: commands/tablecmds.c:18803 +#: commands/tablecmds.c:18828 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "no se puede cambiar el estado «logged» de la tabla «%s» porque es temporal" -#: 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 "no se pudo cambiar la tabla «%s» a «unlogged» porque es parte de una publicación" -#: commands/tablecmds.c:18829 +#: commands/tablecmds.c:18854 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "Las tablas «unlogged» no pueden replicarse." -#: 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 "no se pudo cambiar la tabla «%s» a «logged» porque hace referencia a la tabla «unlogged» «%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 "no se pudo cambiar la tabla «%s» a «unlogged» porque hace referencia a la tabla «logged» «%s»" -#: commands/tablecmds.c:18948 +#: commands/tablecmds.c:18973 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "no se puede mover una secuencia enlazada a una tabla hacia otro esquema" -#: commands/tablecmds.c:19056 +#: commands/tablecmds.c:19081 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "ya existe una relación llamada «%s» en el esquema «%s»" -#: commands/tablecmds.c:19481 +#: commands/tablecmds.c:19506 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "«%s» no es una tabla o vista materializada" -#: commands/tablecmds.c:19634 +#: commands/tablecmds.c:19659 #, c-format msgid "\"%s\" is not a composite type" msgstr "«%s» no es un tipo compuesto" -#: commands/tablecmds.c:19664 +#: commands/tablecmds.c:19689 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "no se puede cambiar el esquema del índice «%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 "Cambie el esquema de la tabla en su lugar." -#: commands/tablecmds.c:19670 +#: commands/tablecmds.c:19695 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "no se puede cambiar el esquema del tipo compuesto «%s»" -#: commands/tablecmds.c:19678 +#: commands/tablecmds.c:19703 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "no se puede cambiar el esquema de la relación TOAST «%s»" -#: commands/tablecmds.c:19710 +#: commands/tablecmds.c:19735 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "no se puede usar la estrategia de particionamiento «list» con más de una columna" -#: commands/tablecmds.c:19776 +#: commands/tablecmds.c:19801 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "la columna «%s» nombrada en llave de particionamiento no existe" -#: commands/tablecmds.c:19784 +#: commands/tablecmds.c:19809 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "no se puede usar la columna de sistema «%s» en llave de particionamiento" -#: 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 "no se puede usar una columna generada en llave de particionamiento" -#: commands/tablecmds.c:19871 +#: commands/tablecmds.c:19892 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "las expresiones en la llave de particionamiento no pueden contener referencias a columnas de sistema" -#: commands/tablecmds.c:19921 +#: commands/tablecmds.c:19956 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "las funciones utilizadas en expresiones de la llave de particionamiento deben estar marcadas IMMUTABLE" -#: commands/tablecmds.c:19930 +#: commands/tablecmds.c:19965 #, c-format msgid "cannot use constant expression as partition key" msgstr "no se pueden usar expresiones constantes como llave de particionamiento" -#: commands/tablecmds.c:19951 +#: commands/tablecmds.c:19986 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "no se pudo determinar qué ordenamiento (collation) usar para la expresión de particionamiento" -#: 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 "Debe especificar una clase de operadores hash, o definir una clase de operadores por omisión para hash para el tipo de datos." -#: 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 "Debe especificar una clase de operadores btree, o definir una clase de operadores por omisión para btree para el tipo de datos." -#: commands/tablecmds.c:20252 +#: commands/tablecmds.c:20287 #, c-format msgid "\"%s\" is already a partition" msgstr "«%s» ya es una partición" -#: commands/tablecmds.c:20258 +#: commands/tablecmds.c:20293 #, c-format msgid "cannot attach a typed table as partition" msgstr "no puede adjuntar tabla tipada como partición" -#: commands/tablecmds.c:20274 +#: commands/tablecmds.c:20309 #, c-format msgid "cannot attach inheritance child as partition" msgstr "no puede adjuntar hija de herencia como partición" -#: commands/tablecmds.c:20288 +#: commands/tablecmds.c:20323 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "no puede adjuntar ancestro de herencia como partición" -#: commands/tablecmds.c:20322 +#: commands/tablecmds.c:20357 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "no se puede adjuntar una relación temporal como partición de la relación permanente «%s»" -#: commands/tablecmds.c:20330 +#: commands/tablecmds.c:20365 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "no se puede adjuntar una relación permanente como partición de la relación temporal «%s»" -#: commands/tablecmds.c:20338 +#: commands/tablecmds.c:20373 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "no se puede adjuntar como partición de una relación temporal de otra sesión" -#: commands/tablecmds.c:20345 +#: commands/tablecmds.c:20380 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "no se adjuntar una relación temporal de otra sesión como partición" -#: commands/tablecmds.c:20365 +#: commands/tablecmds.c:20400 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "la tabla «%s» siendo adjuntada contiene la columna de identidad «%s»" -#: commands/tablecmds.c:20367 +#: commands/tablecmds.c:20402 #, c-format msgid "The new partition may not contain an identity column." msgstr "La nueva partición no puede contener una columna de identidad." -#: commands/tablecmds.c:20375 +#: commands/tablecmds.c:20410 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "la tabla «%s» contiene la columna «%s» no encontrada en el padre «%s»" -#: commands/tablecmds.c:20378 +#: commands/tablecmds.c:20413 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "La nueva partición sólo puede contener las columnas presentes en el padre." -#: commands/tablecmds.c:20390 +#: commands/tablecmds.c:20425 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "el trigger «%s» impide a la tabla «%s» devenir partición" -#: commands/tablecmds.c:20392 +#: commands/tablecmds.c:20427 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "Los triggers ROW con tablas de transición no están soportados en particiones." -#: commands/tablecmds.c:20574 +#: commands/tablecmds.c:20609 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "no se puede adjuntar la tabla foránea «%s» como partición de la tabla particionada «%s»" -#: commands/tablecmds.c:20577 +#: commands/tablecmds.c:20612 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "La tabla particionada «%s» contiene índices únicos." -#: commands/tablecmds.c:20900 +#: commands/tablecmds.c:20936 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "no se puede desprender particiones concurrentemente cuando existe una partición por omisión" -#: commands/tablecmds.c:21009 +#: commands/tablecmds.c:21048 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "la tabla particionada «%s» fue eliminada concurrentemente" -#: commands/tablecmds.c:21015 +#: commands/tablecmds.c:21054 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "la partición «%s» fue eliminada concurrentemente" -#: 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 "no se puede adjuntar el índice «%s» como partición del índice «%s»" -#: commands/tablecmds.c:21649 +#: commands/tablecmds.c:21688 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "El índice «%s» ya está adjunto a otro índice." -#: commands/tablecmds.c:21669 +#: commands/tablecmds.c:21708 #, c-format msgid "Index \"%s\" is not an index on any partition of table \"%s\"." msgstr "El índice «%s» no es un índice en una partición de la tabla «%s»." -#: commands/tablecmds.c:21690 +#: commands/tablecmds.c:21729 #, c-format msgid "The index definitions do not match." msgstr "Las definiciones de los índices no coinciden." -#: 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 "El índice «%s» pertenece a una restricción en la tabla «%s», pero no existe una restricción para el índice «%s»." -#: commands/tablecmds.c:21758 +#: commands/tablecmds.c:21797 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "Otro índice ya está adjunto para la partición «%s»." -#: commands/tablecmds.c:21881 +#: commands/tablecmds.c:21920 #, c-format -#| msgid "invalid attribute in procedure definition" msgid "invalid primary key definition" msgstr "definición de llave primaria no válida" -#: commands/tablecmds.c:21882 +#: commands/tablecmds.c:21921 #, c-format -#| msgid "Column \"%s\" of relation \"%s\" is not already NOT NULL." msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." msgstr "La columna «%s» de la relación «%s» no está marcada NOT NULL." -#: commands/tablecmds.c:22017 +#: commands/tablecmds.c:22056 #, c-format msgid "column data type %s does not support compression" msgstr "el tipo de dato de columna %s no soporta compresión" -#: commands/tablecmds.c:22024 +#: commands/tablecmds.c:22063 #, c-format msgid "invalid compression method \"%s\"" msgstr "método de compresión «%s» no válido" -#: commands/tablecmds.c:22050 +#: commands/tablecmds.c:22089 #, c-format msgid "invalid storage type \"%s\"" msgstr "tipo de almacenamiento no válido «%s»" -#: commands/tablecmds.c:22060 +#: commands/tablecmds.c:22099 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "el tipo de datos %s de la columna sólo puede tener almacenamiento PLAIN" @@ -12848,7 +12848,6 @@ msgstr "Antes de ejecutar el trigger «%s», la fila iba a estar en la partició #: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 #, c-format -#| msgid "cannot delete from foreign table \"%s\"" msgid "cannot collect transition tuples from child foreign tables" msgstr "no se puede recolectar tuplas de transición desde tablas foráneas hijas" @@ -13058,11 +13057,10 @@ msgstr "las restricciones NULL/NOT NULL no coinciden" #: commands/typecmds.c:952 #, c-format msgid "redundant NOT NULL constraint definition" -msgstr "" +msgstr "definición redundante de restricción NOT NULL" #: commands/typecmds.c:958 #, c-format -#| msgid "check constraints for domains cannot be marked NO INHERIT" msgid "not-null constraints for domains cannot be marked NO INHERIT" msgstr "las restricciones «not-null» en dominios no pueden ser marcadas NO INHERIT" @@ -13098,7 +13096,6 @@ msgstr "no se puede especificar la postergabilidad de las restricciones a un dom #: commands/typecmds.c:1035 #, c-format -#| msgid "specifying constraint deferrability not supported for domains" msgid "specifying GENERATED not supported for domains" msgstr "no se puede especificar GENERATED para dominios" @@ -13676,7 +13673,6 @@ msgstr "Use CASCADE para revocarlos también." #: commands/vacuum.c:147 #, c-format -#| msgid "\"vacuum_buffer_usage_limit\" must be 0 or between %d kB and %d kB" 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." @@ -13777,7 +13773,6 @@ msgstr "omitiendo analyze de «%s» --- la relación ya no existe" #: commands/vacuum.c:989 #, c-format -#| msgid "partitioned table \"%s\" was removed concurrently" msgid "VACUUM ONLY of partitioned table \"%s\" has no effect" msgstr "VACUUM ONLY de la tabla particionada «%s» no tiene efecto" @@ -13817,7 +13812,6 @@ msgstr "omitiendo «%s»: no se puede aplicar VACUUM a objetos que no son tablas #: commands/vacuum.c:2650 #, c-format -#| msgid "scanned index \"%s\" to remove %lld row versions" msgid "scanned index \"%s\" to remove % row versions" msgstr "se recorrió el índice «%s» para eliminar % versiones de filas" @@ -13853,7 +13847,6 @@ msgstr[1] "se lanzaron %d procesos asistentes para «cleanup» de índices (plan #: commands/variable.c:185 #, c-format -#| msgid "Conflicting \"datestyle\" specifications." msgid "Conflicting \"DateStyle\" specifications." msgstr "Especificaciones contradictorias de «DateStyle»." @@ -13929,7 +13922,6 @@ msgstr "SET TRANSACTION [NOT] DEFERRABLE debe ser llamado antes de cualquier con #: commands/variable.c:715 #, c-format -#| msgid "cannot change \"client_encoding\" during a parallel operation" msgid "Cannot change \"client_encoding\" during a parallel operation." msgstr "No se puede cambiar «client_encoding» durante una operación paralela." @@ -14281,7 +14273,7 @@ msgstr "La llave está en conflicto con una llave existente." #: executor/execIndexing.c:1172 #, c-format msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" -msgstr "" +msgstr "valor vacío WITH OVERLAPS encontrado en la columna «%s» de relación «%s»" #: executor/execMain.c:1085 #, c-format @@ -14353,7 +14345,7 @@ msgstr "no se puede bloquear registros en la vista «%s»" 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:2855 +#: executor/execMain.c:1223 executor/execMain.c:2865 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" @@ -14364,58 +14356,58 @@ msgstr "no se puede bloquear registros en la tabla foránea «%s»" msgid "cannot lock rows in relation \"%s\"" msgstr "no se puede bloquear registros en la tabla «%s»" -#: executor/execMain.c:1952 +#: executor/execMain.c:1962 #, 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:1954 executor/execMain.c:2066 executor/execMain.c:2204 -#: executor/execMain.c:2312 +#: executor/execMain.c:1964 executor/execMain.c:2076 executor/execMain.c:2214 +#: executor/execMain.c:2322 #, c-format msgid "Failing row contains %s." msgstr "La fila que falla contiene %s." -#: executor/execMain.c:2064 +#: executor/execMain.c:2074 #, 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:2201 +#: executor/execMain.c:2211 #, 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 de no nulo" +msgstr "el valor nulo en la columna «%s» de la relación «%s» viola la restricción “not-null”" -#: executor/execMain.c:2310 +#: executor/execMain.c:2320 #, 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:2320 +#: executor/execMain.c:2330 #, 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:2325 +#: executor/execMain.c:2335 #, 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:2333 +#: executor/execMain.c:2343 #, 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:2338 +#: executor/execMain.c:2348 #, 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:2345 +#: executor/execMain.c:2355 #, 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:2350 +#: executor/execMain.c:2360 #, 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»" @@ -14464,7 +14456,7 @@ msgstr "La lista de columnas usada por la publicación no incluye la identidad d #: executor/execReplication.c:823 executor/execReplication.c:841 #, c-format msgid "Replica identity must not contain unpublished generated columns." -msgstr "" +msgstr "La identidad de réplica no debe contener columnas generadas no publicadas." #: executor/execReplication.c:827 executor/execReplication.c:833 #: executor/execReplication.c:839 @@ -14692,7 +14684,6 @@ msgstr "FULL JOIN sólo está soportado con condiciones que se pueden usar con m #: executor/nodeModifyTable.c:248 #, c-format -#| msgid "Query provides a value for a dropped column at ordinal position %d." msgid "Query provides a value for a generated column at ordinal position %d." msgstr "La consulta entrega un valor para una columna generada en la posición %d." @@ -14875,7 +14866,7 @@ msgstr "no se puede abrir consulta %s como cursor" msgid "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE is not supported" msgstr "DECLARE SCROLL CURSOR ... FOR UPDATE/SHARE no está soportado" -#: 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 "Los cursores declarados SCROLL deben ser READ ONLY." @@ -14893,7 +14884,6 @@ msgstr "la consulta «%s» no retorna tuplas" #: executor/spi.c:2987 #, c-format -#| msgid "SQL expression \"%s\"" msgid "PL/pgSQL expression \"%s\"" msgstr "expresión PL/pgSQL «%s»" @@ -14956,7 +14946,6 @@ msgstr "cliente eligió un mecanismo de autentificación SASL no válido" #: 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 SCRAM message" msgid "malformed OAUTHBEARER message" msgstr "mensaje OAUTHBEARER mal formado" @@ -14973,11 +14962,10 @@ msgstr "El largo del mensaje no coincide con el largo de entrada." #: libpq/auth-oauth.c:193 #, c-format msgid "Client did not send a kvsep response." -msgstr "" +msgstr "El cliente no envió una respuesta kvsep." #: libpq/auth-oauth.c:221 #, c-format -#| msgid "The client selected SCRAM-SHA-256 without channel binding, but the SCRAM message includes channel binding data." msgid "The server does not support channel binding for OAuth, but the client message includes channel binding data." msgstr "El servidor no soporta enlazado de canal (channel binding) para OAuth, pero el mensaje del cliente incluye datos de enlazado de canal." @@ -15016,17 +15004,17 @@ msgstr "El archivo «%s» no contiene datos válidos." #: libpq/auth-oauth.c:280 #, c-format msgid "Message contains additional data after the final terminator." -msgstr "" +msgstr "El mensaje contiene datos adicionales después del terminador final." #: libpq/auth-oauth.c:343 #, c-format msgid "Message contains an empty key name." -msgstr "" +msgstr "El mensaje contiene un nombre de llave vacío." #: libpq/auth-oauth.c:350 #, c-format msgid "Message contains an invalid key name." -msgstr "" +msgstr "El mensaje contiene un nombre de llave no válido." #: libpq/auth-oauth.c:376 #, fuzzy, c-format @@ -15037,7 +15025,7 @@ msgstr "el enum %s no contiene valores" #: libpq/auth-oauth.c:421 #, c-format msgid "Message contains an unterminated key/value pair." -msgstr "" +msgstr "El mensaje contiene un par llave/valor sin terminar." #: libpq/auth-oauth.c:439 #, c-format @@ -15572,13 +15560,11 @@ msgstr "no se pudo recibir credenciales: %m" #: libpq/auth.c:1888 #, c-format -#| msgid "could not look up local user ID %ld: %s" msgid "could not look up local user ID %ld: %m" msgstr "no se pudo encontrar el ID del usuario local %ld: %m" #: libpq/auth.c:1894 #, c-format -#| msgid "local user with ID %d does not exist" msgid "local user with ID %ld does not exist" msgstr "no existe un usuario local con ID %ld" @@ -16025,13 +16011,11 @@ msgstr "«%s» no puede ser más alto que «%s»" #: libpq/be-secure-openssl.c:295 #, c-format -#| msgid "could not set the cipher list (no valid ciphers available)" msgid "could not set the TLSv1.2 cipher list (no valid ciphers available)" msgstr "no se pudo establecer la lista de cifrado TLSv1.2 (no hay cifradores disponibles)" #: libpq/be-secure-openssl.c:310 #, c-format -#| msgid "could not set the cipher list (no valid ciphers available)" msgid "could not set the TLSv1.3 cipher suites (no valid ciphers available)" msgstr "no se pudo establecer los suites de cifrado TLSv1.3 (no hay cifradores disponibles)" @@ -16167,7 +16151,6 @@ msgstr "DH: no se pudo definir los parámetros DH: %s" #: libpq/be-secure-openssl.c:1439 #, c-format -#| msgid "could not set group of file \"%s\": %m" msgid "could not set group names specified in ssl_groups: %s" msgstr "no se pudo definir los nombres de grupo especificados en ssl_groups: %s" @@ -16490,12 +16473,10 @@ msgstr "el número de identificadores RADIUS (%d) debe ser 1 o igual al número #. translator: strings are replaced with hba options #: libpq/hba.c:2067 #, c-format -#| msgid "COPY %s cannot be used with %s" msgid "%s cannot be used in combination with %s" msgstr "%s no puede usarse en combinación con %s" #: libpq/hba.c:2105 -#| msgid "ident, peer, gssapi, sspi, and cert" msgid "ident, peer, gssapi, sspi, cert, and oauth" msgstr "ident, peer, gssapi, sspi, cert y oauth" @@ -17102,7 +17083,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:2120 parser/parse_func.c:710 parser/parse_oper.c:869 +#: 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" @@ -17136,44 +17117,44 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "%s no puede ser aplicado al lado nulable de un 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 no está permitido con UNION/INTERSECT/EXCEPT" -#: optimizer/plan/planner.c:2238 optimizer/plan/planner.c:4124 +#: optimizer/plan/planner.c:2257 optimizer/plan/planner.c:4143 #, c-format msgid "could not implement GROUP BY" msgstr "no se pudo implementar 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:2258 optimizer/plan/planner.c:4144 +#: optimizer/plan/planner.c:4825 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:4805 +#: optimizer/plan/planner.c:4824 #, c-format msgid "could not implement DISTINCT" msgstr "no se pudo implementar DISTINCT" -#: optimizer/plan/planner.c:6267 +#: optimizer/plan/planner.c:6286 #, c-format msgid "could not implement window PARTITION BY" msgstr "No se pudo implementar PARTITION BY de ventana" -#: optimizer/plan/planner.c:6268 +#: optimizer/plan/planner.c:6287 #, 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:6272 +#: optimizer/plan/planner.c:6291 #, c-format msgid "could not implement window ORDER BY" msgstr "no se pudo implementar ORDER BY de ventana" -#: optimizer/plan/planner.c:6273 +#: optimizer/plan/planner.c:6292 #, 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." @@ -17196,13 +17177,11 @@ msgstr "no se pudo implementar %s" #: optimizer/util/appendinfo.c:165 #, c-format -#| msgid "constraint \"%s\" of relation \"%s\" does not exist" msgid "attribute \"%s\" of relation \"%s\" does not match parent's type" msgstr "el atributo «%s» de la relación «%s» no coincide con el tipo del padre" #: optimizer/util/appendinfo.c:170 #, c-format -#| msgid "constraint \"%s\" of relation \"%s\" does not exist" 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" @@ -17216,22 +17195,22 @@ msgstr "función SQL «%s», durante expansión en línea" msgid "cannot access temporary or unlogged relations during recovery" msgstr "no se puede acceder a tablas temporales o «unlogged» durante la recuperación" -#: optimizer/util/plancat.c:771 +#: optimizer/util/plancat.c:776 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "no están soportadas las especificaciones de inferencia de índice único de registro completo" -#: optimizer/util/plancat.c:788 +#: optimizer/util/plancat.c:793 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "la restricción en la cláusula ON CONFLICT no tiene un índice asociado" -#: 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 no está soportado con restricciones de exclusión" -#: 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 "no hay restricción única o de exclusión que coincida con la especificación ON CONFLICT" @@ -17262,7 +17241,7 @@ msgid "SELECT ... INTO is not allowed here" msgstr "SELECT ... INTO no está permitido aquí" #. 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 no puede ser aplicado a VALUES" @@ -17305,7 +17284,6 @@ msgstr "Las columnas de destino SET no pueden ser calificadas con el nombre de r #. translator: %s is OLD or NEW #: parser/analyze.c:2668 parser/analyze.c:2678 #, c-format -#| msgid "NEW TABLE cannot be specified multiple times" msgid "%s cannot be specified multiple times" msgstr "%s no se puede especificar varias veces" @@ -17332,138 +17310,138 @@ msgid "variable \"%s\" is of type %s but expression is of type %s" msgstr "la variable «%s» es de tipo %s pero la expresión es de tipo %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 "no se puede especificar %s junto con %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 no debe contener sentencias que modifiquen datos en 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 no está soportado" -#: parser/analyze.c:3065 +#: parser/analyze.c:3066 #, c-format msgid "Holdable cursors must be READ ONLY." msgstr "Los cursores declarados HOLD deben ser 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 no está soportado" #. 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 no es válido" -#: parser/analyze.c:3087 +#: parser/analyze.c:3088 #, c-format msgid "Insensitive cursors must be READ ONLY." msgstr "Los cursores insensitivos deben ser READ ONLY." -#: parser/analyze.c:3181 +#: parser/analyze.c:3182 #, c-format msgid "materialized views must not use data-modifying statements in WITH" msgstr "las vistas materializadas no deben usar sentencias que modifiquen datos en WITH" -#: parser/analyze.c:3191 +#: parser/analyze.c:3192 #, c-format msgid "materialized views must not use temporary tables or views" msgstr "las vistas materializadas no deben usar tablas temporales o vistas" -#: parser/analyze.c:3201 +#: parser/analyze.c:3202 #, c-format msgid "materialized views may not be defined using bound parameters" msgstr "las vistas materializadas no pueden definirse usando parámetros enlazados" -#: parser/analyze.c:3213 +#: parser/analyze.c:3214 #, c-format msgid "materialized views cannot be unlogged" msgstr "las vistas materializadas no pueden ser «unlogged»" #. 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 no está permitido con cláusulas 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 no está permitido con cláusulas 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 no está permitido con cláusulas 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 no está permitido con funciones de agregación" #. 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 no está permitido con funciones de ventana deslizante" #. 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 no está permitido con funciones que retornan conjuntos en la lista de resultados" #. 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 debe especificar nombres de relaciones sin calificar" #. 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 no puede ser aplicado a un 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 no puede ser aplicado a una función" #. 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 no puede ser aplicado a una función de tabla" #. 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 no puede ser aplicado a una consulta 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 "%s no puede ser aplicado a un «tuplestore» con nombre" #. 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 "la relación «%s» en la cláusula %s no fue encontrada en la cláusula FROM" @@ -17673,7 +17651,7 @@ msgstr "una función de agregación de nivel exterior no puede contener una vari 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:1762 parser/parse_expr.c:2255 +#: parser/parse_agg.c:785 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." @@ -18070,8 +18048,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: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: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 "no se puede convertir el tipo %s a %s" @@ -18411,326 +18389,326 @@ msgstr "FOR UPDATE/SHARE no está implementado en una consulta recursiva" msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "la referencia recursiva a la consulta «%s» no debe aparecer más de una vez" -#: parser/parse_expr.c:311 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "DEFAULT no está permitido en este contexto" -#: 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 "no existe la columna %s.%s" -#: parser/parse_expr.c:416 +#: parser/parse_expr.c:417 #, c-format msgid "column \"%s\" not found in data type %s" msgstr "la columna «%s» no fue encontrado en el tipo %s" -#: parser/parse_expr.c:422 +#: parser/parse_expr.c:423 #, c-format msgid "could not identify column \"%s\" in record data type" msgstr "no se pudo identificar la columna «%s» en el tipo de dato record" -#: 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 "la notación de columna .%s fue aplicada al tipo %s, que no es un tipo compuesto" -#: 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 "la expansión de filas a través de «*» no está soportado aquí" -#: parser/parse_expr.c:582 +#: parser/parse_expr.c:583 msgid "cannot use column reference in DEFAULT expression" msgstr "no se pueden usar referencias a columnas en una cláusula DEFAULT" -#: parser/parse_expr.c:585 +#: parser/parse_expr.c:586 msgid "cannot use column reference in partition bound expression" msgstr "no se pueden usar referencias a columnas en expresión de borde de partición" -#: 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 "la referencia a la columna «%s» es ambigua" -#: 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 "no hay parámetro $%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 requiere que el operador = retorne 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:3093 #, c-format msgid "%s must not return a set" msgstr "%s no debe retornar un conjunto" -#: 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 "MERGE_ACTION() sólo puede usarse en la lista RETURNING de una orden 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 "el número de columnas no coincide con el número de valores" -#: 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 "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: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 "no se permiten funciones que retornan conjuntos en %s" -#: parser/parse_expr.c:1824 +#: parser/parse_expr.c:1825 msgid "cannot use subquery in check constraint" msgstr "no se pueden usar subconsultas en una restricción «check»" -#: parser/parse_expr.c:1828 +#: parser/parse_expr.c:1829 msgid "cannot use subquery in DEFAULT expression" msgstr "no se puede usar una subconsulta en una expresión DEFAULT" -#: parser/parse_expr.c:1831 +#: parser/parse_expr.c:1832 msgid "cannot use subquery in index expression" msgstr "no se puede usar una subconsulta en una expresión de índice" -#: parser/parse_expr.c:1834 +#: parser/parse_expr.c:1835 msgid "cannot use subquery in index predicate" msgstr "no se puede usar una subconsulta en un predicado de índice" -#: parser/parse_expr.c:1837 +#: parser/parse_expr.c:1838 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:1840 +#: parser/parse_expr.c:1841 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:1843 +#: parser/parse_expr.c:1844 msgid "cannot use subquery in EXECUTE parameter" msgstr "no se puede usar una subconsulta en un parámetro a EXECUTE" -#: parser/parse_expr.c:1846 +#: parser/parse_expr.c:1847 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:1849 +#: parser/parse_expr.c:1850 msgid "cannot use subquery in partition bound" msgstr "no se puede usar una subconsulta en un borde de partición" -#: parser/parse_expr.c:1852 +#: parser/parse_expr.c:1853 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:1855 +#: parser/parse_expr.c:1856 msgid "cannot use subquery in CALL argument" msgstr "no se puede usar una subconsulta en un argumento a CALL" -#: parser/parse_expr.c:1858 +#: parser/parse_expr.c:1859 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:1861 +#: parser/parse_expr.c:1862 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: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 "la subconsulta debe retornar sólo una columna" -#: parser/parse_expr.c:1985 +#: parser/parse_expr.c:1986 #, c-format msgid "subquery has too many columns" msgstr "la subconsulta tiene demasiadas columnas" -#: parser/parse_expr.c:1990 +#: parser/parse_expr.c:1991 #, c-format msgid "subquery has too few columns" msgstr "la subconsulta tiene muy pocas columnas" -#: parser/parse_expr.c:2094 +#: parser/parse_expr.c:2095 #, 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:2095 +#: parser/parse_expr.c:2096 #, 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:2109 +#: parser/parse_expr.c:2110 #, 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:2194 +#: parser/parse_expr.c:2195 #, 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:2399 +#: parser/parse_expr.c:2400 #, 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:2400 +#: parser/parse_expr.c:2401 #, 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:2415 +#: parser/parse_expr.c:2416 #, 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:2523 +#: parser/parse_expr.c:2524 #, c-format msgid "cannot cast XMLSERIALIZE result to %s" msgstr "no se puede convertir el resultado de XMLSERIALIZE a %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 "número desigual de entradas en expresiones de registro" -#: parser/parse_expr.c:2857 +#: parser/parse_expr.c:2858 #, c-format msgid "cannot compare rows of zero length" msgstr "no se pueden comparar registros de largo cero" -#: parser/parse_expr.c:2882 +#: parser/parse_expr.c:2883 #, 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:2889 +#: parser/parse_expr.c:2890 #, 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: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 "no se pudo determinar la interpretación del operador de comparación de registros %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 "Los operadores de comparación de registros deben estar asociados a una familia de operadores btree." -#: parser/parse_expr.c:2991 +#: parser/parse_expr.c:2992 #, c-format msgid "There are multiple equally-plausible candidates." msgstr "Hay múltiples candidatos igualmente plausibles." -#: parser/parse_expr.c:3326 +#: parser/parse_expr.c:3327 #, 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:3390 +#: parser/parse_expr.c:3391 #, 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:3391 +#: parser/parse_expr.c:3392 #, 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:3480 +#: parser/parse_expr.c:3481 #, 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:3493 +#: parser/parse_expr.c:3494 #, 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:3498 +#: parser/parse_expr.c:3499 #, c-format msgid "unsupported JSON encoding" msgstr "codificación JSON no soportada" -#: parser/parse_expr.c:3499 +#: parser/parse_expr.c:3500 #, c-format msgid "Only UTF8 JSON encoding is supported." msgstr "Sólo la codificación JSON UTF8 está soportada." -#: parser/parse_expr.c:3536 +#: parser/parse_expr.c:3537 #, 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:3541 +#: parser/parse_expr.c:3542 #, 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: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 "el ORDER BY de funciones de agregación no está implementado para funciones de ventana deslizante" -#: 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 "no se puede usar la cláusula FORMAT ENCODING de JSON para tipos de entrada que no son bytea" -#: parser/parse_expr.c:4112 +#: parser/parse_expr.c:4113 #, 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: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 "no se puede usar el tipo %s en la cláusula RETURNING de %s" -#: parser/parse_expr.c:4140 +#: parser/parse_expr.c:4141 #, c-format msgid "Try returning json or jsonb." msgstr "Intente retornando tipo json o 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 "no se puede usar tipos que no sean strings con cláusula WITH UNIQUE KEYS" -#: parser/parse_expr.c:4262 +#: parser/parse_expr.c:4263 #, c-format msgid "Try returning a string type or bytea." msgstr "Intente retornando un tipo de string o bytea." -#: parser/parse_expr.c:4327 +#: parser/parse_expr.c:4328 #, 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:4340 +#: parser/parse_expr.c:4341 #, 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: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: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 #, c-format msgid "invalid %s behavior" @@ -18738,7 +18716,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:4357 parser/parse_expr.c:4386 +#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 #, 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." @@ -18746,68 +18724,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: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:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 +#: parser/parse_expr.c:4451 parser/parse_expr.c:4477 #, 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:4367 parser/parse_expr.c:4396 +#: parser/parse_expr.c:4368 parser/parse_expr.c:4397 #, 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:4415 +#: parser/parse_expr.c:4416 #, 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:4425 +#: parser/parse_expr.c:4426 #, 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:4443 parser/parse_expr.c:4469 +#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 #, 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:4453 parser/parse_expr.c:4479 +#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, 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:4509 +#: parser/parse_expr.c:4510 #, 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:4727 +#: parser/parse_expr.c:4750 #, 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:4732 +#: parser/parse_expr.c:4755 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "las expresiones DEFAULT no pueden contener referencias a columnas" -#: parser/parse_expr.c:4737 +#: parser/parse_expr.c:4760 #, c-format msgid "DEFAULT expression must not return a set" msgstr "las expresiones DEFAULT no deben retornar un conjunto" -#: parser/parse_expr.c:4813 parser/parse_expr.c:4822 +#: parser/parse_expr.c:4775 +#, c-format +msgid "collation of DEFAULT expression conflicts with RETURNING clause" +msgstr "" + +#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 #, 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:4816 +#: parser/parse_expr.c:4857 #, 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." @@ -19512,15 +19495,13 @@ msgstr "las declaraciones NULL/NOT NULL no son coincidentes para la columna «%s #: parser/parse_utilcmd.c:759 parser/parse_utilcmd.c:1077 #, c-format -#| msgid "check constraints for domains cannot be marked NO INHERIT" msgid "not-null constraints on partitioned tables cannot be NO INHERIT" -msgstr "las restricciones «not-null» en tablas particionadas no pueden ser marcadas NO INHERIT" +msgstr "las restricciones “not-null” en tablas particionadas no pueden ser marcadas NO INHERIT" #: parser/parse_utilcmd.c:773 parser/parse_utilcmd.c:808 #, c-format -#| msgid "conflicting NULL/NOT NULL declarations for column \"%s\" of table \"%s\"" msgid "conflicting NO INHERIT declarations for not-null constraints on column \"%s\"" -msgstr "declaraciones NO INHERIT no coincidentes para las restricciones not-null en la columna «%s»" +msgstr "declaraciones NO INHERIT no coincidentes para las restricciones “not-null” en la columna «%s»" #: parser/parse_utilcmd.c:821 #, c-format @@ -19684,7 +19665,7 @@ msgid "rules with WHERE conditions can only have SELECT, INSERT, UPDATE, or DELE msgstr "las reglas con condiciones WHERE sólo pueden tener acciones SELECT, INSERT, UPDATE o DELETE" #: 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 "las sentencias UNION/INTERSECT/EXCEPT condicionales no están implementadas" @@ -19756,19 +19737,16 @@ msgstr "la cláusula INITIALLY IMMEDIATE está mal puesta" #: parser/parse_utilcmd.c:3997 #, c-format -#| msgid "misplaced DEFERRABLE clause" msgid "misplaced ENFORCED clause" msgstr "cláusula ENFORCED mal puesta" #: parser/parse_utilcmd.c:4002 parser/parse_utilcmd.c:4019 #, c-format -#| msgid "multiple DEFERRABLE/NOT DEFERRABLE clauses not allowed" msgid "multiple ENFORCED/NOT ENFORCED clauses not allowed" msgstr "no se permiten múltiples cláusulas ENFORCED/NOT ENFORCED" #: parser/parse_utilcmd.c:4014 #, c-format -#| msgid "misplaced NOT DEFERRABLE clause" msgid "misplaced NOT ENFORCED clause" msgstr "la cláusula NOT ENFORCED está mal puesta" @@ -20195,34 +20173,33 @@ msgstr "vacuum automático de la tabla «%s.%s.%s»" msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "análisis automático de la tabla «%s.%s.%s»" -#: postmaster/autovacuum.c:2674 +#: postmaster/autovacuum.c:2677 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "procesando elemento de tarea de la tabla «%s.%s.%s»" -#: postmaster/autovacuum.c:3345 +#: postmaster/autovacuum.c:3348 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "autovacuum no fue iniciado debido a un error de configuración" -#: postmaster/autovacuum.c:3346 +#: postmaster/autovacuum.c:3349 #, c-format msgid "Enable the \"track_counts\" option." msgstr "Active la opción «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 "" #: postmaster/bgworker.c:260 #, c-format -#| msgid "inconsistent background worker state (max_worker_processes=%d, total_slots=%d)" msgid "inconsistent background worker state (\"max_worker_processes\"=%d, total slots=%d)" msgstr "estado inconsistente de proceso ayudante («max_worker_processes»=%d, total_slots=%d)" @@ -20777,13 +20754,11 @@ msgstr "el sistema de bases de datos está listo para aceptar conexiones de sól #: postmaster/postmaster.c:3846 #, c-format -#| msgid "manifest ended unexpectedly" msgid "WAL was shut down unexpectedly" msgstr "WAL fue terminado inesperadamente" #: postmaster/postmaster.c:3971 #, c-format -#| msgid "no slot available for new background worker process" msgid "no slot available for new autovacuum worker process" msgstr "no hay slot disponible para un nuevo «autovacuum worker»" @@ -21060,28 +21035,28 @@ msgstr "el ayudante paralelo «apply» de replicación lógica para la suscripci msgid "lost connection to the logical replication apply worker" msgstr "se ha perdido la conexión al ayudante paralelo “apply” de replicación" -#: 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 "ayudante paralelo “apply” de replicación lógica" -#: replication/logical/applyparallelworker.c:1040 +#: replication/logical/applyparallelworker.c:1047 #, c-format msgid "logical replication parallel apply worker exited due to error" msgstr "el ayudante paralelo “apply” de replicación lógica terminó debido a un error" -#: 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 "se perdió la conexión al ayudante paralelo “apply” de replicación lógica" -#: replication/logical/applyparallelworker.c:1180 +#: replication/logical/applyparallelworker.c:1187 #, c-format msgid "could not send data to shared-memory queue" msgstr "no se pudo enviar datos a la cola en memoria compartida" -#: 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 "el ayudante paralelo «apply» de replicación lógica serializará los cambios restantes de la transacción remota %u a un archivo" @@ -21223,7 +21198,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:1600 replication/slot.c:1620 storage/lmgr/lock.c:1042 +#: 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 @@ -21278,8 +21253,8 @@ msgstr "no se puede crear un slot de replicación lógica en una transacción qu 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:829 -#: replication/slot.c:864 +#: replication/logical/logical.c:544 replication/slot.c:864 +#: replication/slot.c:899 #, 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." @@ -21943,221 +21918,220 @@ msgstr "procesando datos remotos de origen de replicación «%s» durante el men 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" -#: replication/pgoutput/pgoutput.c:328 +#: replication/pgoutput/pgoutput.c:329 #, c-format msgid "invalid proto_version" msgstr "proto_version no válido" -#: replication/pgoutput/pgoutput.c:333 +#: replication/pgoutput/pgoutput.c:334 #, c-format msgid "proto_version \"%s\" out of range" msgstr "proto_version «%s» fuera de rango" -#: replication/pgoutput/pgoutput.c:350 +#: replication/pgoutput/pgoutput.c:351 #, c-format msgid "invalid publication_names syntax" msgstr "sintaxis de publication_names no válida" -#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 +#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 #, c-format msgid "option \"%s\" missing" msgstr "falta la opción «%s»" -#: replication/pgoutput/pgoutput.c:469 +#: replication/pgoutput/pgoutput.c:492 #, 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:475 +#: replication/pgoutput/pgoutput.c:498 #, 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:490 +#: replication/pgoutput/pgoutput.c:513 #, 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:496 +#: replication/pgoutput/pgoutput.c:519 #, 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:501 +#: replication/pgoutput/pgoutput.c:524 #, 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:515 +#: replication/pgoutput/pgoutput.c:538 #, 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:520 +#: replication/pgoutput/pgoutput.c:543 #, 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:1085 +#: replication/pgoutput/pgoutput.c:1108 #, 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:1792 +#: replication/pgoutput/pgoutput.c:1811 #, fuzzy, c-format #| msgid "reading publications" msgid "skipped loading publication \"%s\"" msgstr "leyendo publicaciones" -#: replication/pgoutput/pgoutput.c:1793 +#: replication/pgoutput/pgoutput.c:1812 #, 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:1794 +#: replication/pgoutput/pgoutput.c:1813 #, fuzzy, c-format #| msgid "publication \"%s\" does not exist" msgid "Create the publication if it does not exist." msgstr "no existe la publicación «%s»" -#: replication/slot.c:275 +#: replication/slot.c:313 #, c-format msgid "replication slot name \"%s\" is too short" msgstr "el nombre de slot de replicación «%s» es demasiado corto" -#: replication/slot.c:284 +#: replication/slot.c:321 #, c-format msgid "replication slot name \"%s\" is too long" msgstr "el nombre de slot de replicación «%s» es demasiado largo" -#: replication/slot.c:297 +#: replication/slot.c:333 #, c-format msgid "replication slot name \"%s\" contains invalid character" msgstr "el nombre de slot de replicación «%s» contiene caracteres no válidos" -#: 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 "Los nombres de slots de replicación sólo pueden contener letras minúsculas, números y el carácter «_»." -#: replication/slot.c:348 +#: replication/slot.c:383 #, 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:360 replication/slot.c:886 +#: replication/slot.c:395 replication/slot.c:921 #, 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:385 +#: replication/slot.c:420 #, c-format msgid "replication slot \"%s\" already exists" msgstr "el slot de replicación «%s» ya existe" -#: replication/slot.c:395 +#: replication/slot.c:430 #, c-format msgid "all replication slots are in use" msgstr "todos los slots de replicación están en uso" -#: replication/slot.c:396 +#: replication/slot.c:431 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Libere uno o incremente «max_replication_slots»." -#: replication/slot.c:580 replication/slotfuncs.c:664 +#: 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 "no existe el slot de replicación «%s»" -#: replication/slot.c:635 replication/slot.c:1431 +#: replication/slot.c:670 replication/slot.c:1466 #, 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:652 +#: replication/slot.c:687 #, 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:654 +#: replication/slot.c:689 #, 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:673 +#: replication/slot.c:708 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "se adquirió el slot de replicación lógica «%s»" -#: replication/slot.c:675 +#: replication/slot.c:710 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "se adquirió el slot de replicación física «%s»" -#: replication/slot.c:760 +#: replication/slot.c:795 #, c-format msgid "released logical replication slot \"%s\"" msgstr "se liberó el slot de replicación lógica «%s»" -#: replication/slot.c:762 +#: replication/slot.c:797 #, c-format msgid "released physical replication slot \"%s\"" msgstr "se liberó el slot de replicación física «%s»" -#: replication/slot.c:828 +#: replication/slot.c:863 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "no se puede eliminar el slot de replicación «%s»" -#: replication/slot.c:851 +#: replication/slot.c:886 #, 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:863 +#: replication/slot.c:898 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "no se puede alterar el slot de replicación «%s»" -#: replication/slot.c:873 +#: replication/slot.c:908 #, 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:1021 replication/slot.c:2174 replication/slot.c:2560 +#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 #, c-format msgid "could not remove directory \"%s\"" msgstr "no se pudo eliminar el directorio «%s»" -#: replication/slot.c:1466 +#: replication/slot.c:1501 #, 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:1471 +#: replication/slot.c:1506 #, 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:1483 +#: replication/slot.c:1518 #, c-format msgid "permission denied to use replication slots" msgstr "permiso denegado a usar slots de replicación" -#: replication/slot.c:1484 +#: replication/slot.c:1519 #, 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:1594 +#: 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." @@ -22166,155 +22140,143 @@ 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." -#: replication/slot.c:1605 +#: replication/slot.c:1640 #, 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:1610 +#: replication/slot.c:1645 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:1616 +#: replication/slot.c:1651 #, 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:1665 #, 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:1632 +#: replication/slot.c:1667 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "invalidando el slot de replicación obsoleto «%s»" -#: replication/slot.c:2498 +#: replication/slot.c:2518 #, 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:2505 +#: replication/slot.c:2525 #, 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:2512 +#: replication/slot.c:2532 #, 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:2548 +#: replication/slot.c:2568 #, 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:2584 +#: replication/slot.c:2604 #, 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:2586 +#: replication/slot.c:2606 #, 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:2598 +#: replication/slot.c:2618 #, fuzzy, c-format #| msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" 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»" -#: replication/slot.c:2600 +#: replication/slot.c:2620 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "" # FIXME see slot.c:779. See also postmaster.c:835 -#: replication/slot.c:2605 +#: replication/slot.c:2625 #, 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:2607 +#: replication/slot.c:2627 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Cambie «wal_level» a «replica» o superior." -#: replication/slot.c:2654 +#: replication/slot.c:2674 #, c-format msgid "too many replication slots active before shutdown" msgstr "demasiados slots de replicación activos antes del apagado" -#: replication/slot.c:2655 +#: replication/slot.c:2675 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "Aumente «max_replication_slots» y reintente." -#: replication/slot.c:2732 -#, fuzzy, c-format -#| msgid "replication slot \"%s\" does not exist" -msgid "Replication slot \"%s\" does not exist." -msgstr "no existe el slot de replicación «%s»" - -#: replication/slot.c:2740 -#, fuzzy, c-format -#| msgid "\"%s\" is not a physical replication slot" -msgid "\"%s\" is not a physical replication slot." -msgstr "«%s» no es un slot de replicación física" - -#: replication/slot.c:2919 +#: replication/slot.c:2912 #, 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:2921 replication/slot.c:2955 replication/slot.c:2970 +#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 #, 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:2923 +#: replication/slot.c:2916 #, 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:2933 +#: replication/slot.c:2926 #, 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:2935 +#: replication/slot.c:2928 #, 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:2937 +#: replication/slot.c:2930 #, 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:2953 +#: replication/slot.c:2946 #, 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:2957 +#: replication/slot.c:2950 #, 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:2968 +#: replication/slot.c:2961 #, 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:2972 +#: replication/slot.c:2965 #, 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»." @@ -22505,125 +22467,125 @@ msgstr "trayendo el archivo de historia del timeline para el timeline %u desde e msgid "could not write to WAL segment %s at offset %d, length %lu: %m" msgstr "no se pudo escribir al segmento de WAL %s en la posición %d, largo %lu: %m" -#: replication/walsender.c:505 +#: replication/walsender.c:519 #, c-format 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:609 storage/smgr/md.c:1867 +#: replication/walsender.c:623 storage/smgr/md.c:1867 #, c-format msgid "could not seek to end of file \"%s\": %m" msgstr "no se pudo posicionar (seek) al fin del archivo «%s»: %m" -#: replication/walsender.c:613 +#: replication/walsender.c:627 #, c-format msgid "could not seek to beginning of file \"%s\": %m" msgstr "no se pudo posicionar (seek) al comienzo del archivo «%s»: %m" -#: replication/walsender.c:829 +#: replication/walsender.c:843 #, c-format msgid "cannot use a logical replication slot for physical replication" msgstr "no se puede usar un slot de replicación lógica para replicación física" -#: 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 "el punto de inicio solicitado %X/%X del timeline %u no está en la historia de este servidor" -#: replication/walsender.c:898 +#: replication/walsender.c:912 #, c-format msgid "This server's history forked from timeline %u at %X/%X." msgstr "La historia de este servidor bifurcó desde el timeline %u en %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 "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:1137 +#: 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:1243 +#: replication/walsender.c:1257 #, c-format msgid "%s must not be called inside a transaction" msgstr "%s no debe ser ejecutado dentro de una transacción" #. 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 no debe ser ejecutado dentro de una transacción" #. 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 debe llamarse en una transacción de modo de aislamiento REPEATABLE READ" #. 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 debe ser ejecutado en una transacción de sólo lectura" #. 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 debe ser llamado antes de cualquier consulta" #. 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 no está permitido en una subtransacción" -#: replication/walsender.c:1453 +#: replication/walsender.c:1467 #, c-format msgid "terminating walsender process after promotion" msgstr "terminando el proceso walsender luego de la promoción" -#: replication/walsender.c:1996 +#: replication/walsender.c:2010 #, c-format msgid "cannot execute new commands while WAL sender is in stopping mode" msgstr "no puede ejecutar nuevas órdenes mientras el “WAL sender” está en modo de apagarse" -#: replication/walsender.c:2050 +#: replication/walsender.c:2064 #, c-format msgid "cannot execute SQL commands in WAL sender for physical replication" msgstr "no puede ejecutar órdenes SQL en el “WAL sender” para replicación física" -#: replication/walsender.c:2081 +#: replication/walsender.c:2095 #, c-format msgid "received replication command: %s" msgstr "se recibió orden de replicación: %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 "transacción abortada, las órdenes serán ignoradas hasta el fin de bloque de transacción" -#: 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 "se encontró fin de archivo inesperado en la conexión standby" -#: replication/walsender.c:2272 +#: replication/walsender.c:2286 #, c-format msgid "invalid standby message type \"%c\"" msgstr "el tipo «%c» de mensaje del standby no es válido" -#: replication/walsender.c:2361 +#: replication/walsender.c:2375 #, c-format msgid "unexpected message type \"%c\"" msgstr "mensaje de tipo «%c» inesperado" -#: replication/walsender.c:2775 +#: replication/walsender.c:2789 #, c-format msgid "terminating walsender process due to replication timeout" msgstr "terminando el proceso walsender debido a que se agotó el tiempo de espera de replicación" @@ -23075,17 +23037,17 @@ msgstr "INSERT con una cláusula ON CONFLICT no puede usarse con una tabla que t 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" -#: rewrite/rewriteManip.c:1178 +#: rewrite/rewriteManip.c:1175 #, c-format msgid "conditional utility statements are not implemented" msgstr "las sentencias condicionales de utilidad no están implementadas" -#: rewrite/rewriteManip.c:1523 +#: rewrite/rewriteManip.c:1520 #, c-format msgid "WHERE CURRENT OF on a view is not implemented" msgstr "WHERE CURRENT OF no está implementado en una vista" -#: 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 "las variables NEW en reglas ON UPDATE no pueden referenciar columnas que son parte de una asignación múltiple en la orden UPDATE" @@ -23121,69 +23083,69 @@ msgstr "parámetro Snowball no reconocido: «%s»" msgid "missing Language parameter" msgstr "falta un parámetro 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 #, fuzzy, c-format #| msgid "%s cannot be executed during recovery." msgid "Statistics cannot be modified during recovery." msgstr "No se puede ejecutar %s durante la recuperación." -#: statistics/attribute_stats.c:202 +#: statistics/attribute_stats.c:205 #, fuzzy, c-format #| msgid "cannot specify both %s and %s" msgid "cannot specify both \"%s\" and \"%s\"" msgstr "no se puede especificar %s junto con %s" -#: statistics/attribute_stats.c:228 +#: statistics/attribute_stats.c:231 #, fuzzy, c-format #| msgid "cannot specify both %s and %s" msgid "must specify either \"%s\" or \"%s\"" msgstr "no se puede especificar %s junto con %s" -#: statistics/attribute_stats.c:236 +#: statistics/attribute_stats.c:239 #, fuzzy, c-format #| msgid "cannot assign to system column \"%s\"" msgid "cannot modify statistics on system column \"%s\"" msgstr "no se puede asignar a la columna de sistema «%s»" -#: statistics/attribute_stats.c:300 +#: statistics/attribute_stats.c:303 #, fuzzy, c-format #| msgid "could not determine data type for argument %d" msgid "could not determine element type of column \"%s\"" msgstr "no se pudo determinar el tipo de dato para el argumento %d" -#: 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 #, fuzzy, c-format #| msgid "cannot cast type %s to %s" msgid "Cannot set %s or %s." msgstr "no se puede convertir el tipo %s a %s" -#: statistics/attribute_stats.c:317 +#: statistics/attribute_stats.c:320 #, fuzzy, c-format #| msgid "could not determine which collation to use for view column \"%s\"" msgid "could not determine less-than operator for column \"%s\"" msgstr "no se pudo determinar el ordenamiento (collation) a usar para la columna «%s» de vista" -#: statistics/attribute_stats.c:332 +#: statistics/attribute_stats.c:335 #, fuzzy, c-format #| msgid "column \"%s\" is not of a character type" msgid "column \"%s\" is not a range type" msgstr "la columna «%s» no es de un tipo textual" -#: statistics/attribute_stats.c:735 +#: statistics/attribute_stats.c:738 #, fuzzy, c-format #| msgid "ACL arrays must not contain null values" msgid "\"%s\" array must not contain null values" msgstr "los arrays de ACL no pueden contener valores nulos" -#: statistics/attribute_stats.c:778 +#: statistics/attribute_stats.c:781 #, fuzzy, c-format #| msgid "maximum number of committed subtransactions (%d) exceeded" msgid "maximum number of statistics slots exceeded: %d" msgstr "se superó el número máximo de subtransacciones comprometidas (%d)" -#: statistics/attribute_stats.c:945 +#: statistics/attribute_stats.c:949 #, fuzzy, c-format #| msgid "cannot assign to system column \"%s\"" msgid "cannot clear statistics on system column \"%s\"" @@ -23199,83 +23161,95 @@ msgstr "el objeto de estadísticas «%s.%s» no pudo ser calculado para la relac msgid "function returning record called in context that cannot accept type record" msgstr "se llamó una función que retorna un registro en un contexto que no puede aceptarlo" -#: statistics/relation_stats.c:115 +#: statistics/relation_stats.c:117 #, fuzzy, c-format #| msgid "%s must be less than %s" msgid "argument \"%s\" must not be less than -1.0" msgstr "%s debe ser menor que %s" -#: statistics/stat_utils.c:44 +#: statistics/stat_utils.c:47 #, fuzzy, c-format #| msgid "argument %d: key must not be null" msgid "argument \"%s\" must not be null" msgstr "argumento %d: la llave no puede ser null" -#: statistics/stat_utils.c:71 +#: statistics/stat_utils.c:74 #, fuzzy, c-format #| msgid "argument must be empty or one-dimensional array" msgid "argument \"%s\" must not be a multidimensional array" msgstr "el argumento debe ser vacío o un array unidimensional" -#: statistics/stat_utils.c:80 +#: statistics/stat_utils.c:83 #, fuzzy, c-format #| msgid "ACL arrays must not contain null values" msgid "argument \"%s\" array must not contain null values" msgstr "los arrays de ACL no pueden contener valores nulos" -#: statistics/stat_utils.c:111 +#: statistics/stat_utils.c:114 #, fuzzy, c-format #| msgid "aggregate msfunc must be specified when mstype is specified" msgid "argument \"%s\" must be specified when argument \"%s\" is specified" msgstr "debe especificarse la función de transición msfunc cuando se especifica mstype" -#: statistics/stat_utils.c:178 +#: statistics/stat_utils.c:177 +#, fuzzy, c-format +#| msgid "role %u was concurrently dropped" +msgid "index \"%s\" was concurrently dropped" +msgstr "el rol %u fue eliminado por una transacción concurrente" + +#: statistics/stat_utils.c:192 +#, fuzzy, c-format +#| msgid "role %u was concurrently dropped" +msgid "index \"%s\" was concurrently created" +msgstr "el rol %u fue eliminado por una transacción concurrente" + +#: statistics/stat_utils.c:212 #, fuzzy, c-format #| msgid "cannot define statistics for relation \"%s\"" msgid "cannot modify statistics for relation \"%s\"" msgstr "no se puede definir estadísticas para la relación «%s»" -#: statistics/stat_utils.c:199 +#: statistics/stat_utils.c:220 #, fuzzy, c-format #| msgid "cannot define statistics for relation \"%s\"" msgid "cannot modify statistics for shared relation" msgstr "no se puede definir estadísticas para la relación «%s»" -#: statistics/stat_utils.c:252 +#: statistics/stat_utils.c:260 #, fuzzy, c-format #| msgid "unrecognized event name \"%s\"" msgid "unrecognized argument name: \"%s\"" msgstr "nommre de evento «%s» no reconocido" -#: statistics/stat_utils.c:266 +#: statistics/stat_utils.c:274 #, fuzzy, c-format #| msgid "argument of %s must be type %s, not type %s" msgid "argument \"%s\" has type %s, expected type %s" msgstr "el argumento de %s debe ser de tipo %s, no tipo %s" -#: statistics/stat_utils.c:307 +#: statistics/stat_utils.c:315 #, fuzzy, c-format #| msgid "argument of %s must be a name" msgid "variadic arguments must be name/value pairs" msgstr "el argumento de %s debe ser un nombre" -#: 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 #, fuzzy, c-format #| msgid "path element at position %d is null" msgid "name at variadic position %d is null" msgstr "el elemento en la posición %d de la ruta es 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 "" -#: storage/aio/aio.c:1340 +#: storage/aio/aio.c:1343 #, c-format msgid "Only -1 or values bigger than 0 are valid." msgstr "" @@ -23349,17 +23323,17 @@ msgstr "Múltiples fallas --- el error de escritura puede ser permanente." msgid "writing block %u of relation \"%s\"" msgstr "escribiendo el bloque %u de la relación %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 "" -#: 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 "" -#: storage/buffer/bufmgr.c:7318 +#: storage/buffer/bufmgr.c:7322 #, fuzzy, c-format #| msgid "See server log for query details." msgid "See server log for details about the other %d invalid block." @@ -23367,59 +23341,59 @@ msgid_plural "See server log for details about the other %d invalid blocks." msgstr[0] "Vea el registro del servidor para obtener detalles de las consultas." msgstr[1] "Vea el registro del servidor para obtener detalles de las consultas." -#: storage/buffer/bufmgr.c:7335 +#: storage/buffer/bufmgr.c:7339 #, fuzzy, c-format #| msgid "invalid page in block %u of relation %s" msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" msgstr "la página no es válida en el bloque %u de la relación %s" -#: storage/buffer/bufmgr.c:7336 +#: storage/buffer/bufmgr.c:7340 #, c-format msgid "Block %u held the first invalid page." msgstr "" -#: storage/buffer/bufmgr.c:7337 +#: storage/buffer/bufmgr.c:7341 #, fuzzy, c-format #| msgid "See server log for query details." msgid "See server log for the other %u invalid block(s)." msgstr "Vea el registro del servidor para obtener detalles de las consultas." -#: storage/buffer/bufmgr.c:7342 +#: storage/buffer/bufmgr.c:7346 #, fuzzy, c-format #| msgid "invalid page in block %u of relation %s; zeroing out page" msgid "invalid page in block %u of relation \"%s\"; zeroing out page" msgstr "la página no es válida en el bloque %u de la relación «%s»; reinicializando la página" -#: storage/buffer/bufmgr.c:7343 +#: storage/buffer/bufmgr.c:7347 #, fuzzy, c-format #| msgid "invalid page in block %u of relation %s" msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" msgstr "la página no es válida en el bloque %u de la relación %s" -#: storage/buffer/bufmgr.c:7345 +#: storage/buffer/bufmgr.c:7349 #, fuzzy, c-format #| msgid "See server log for query details." msgid "See server log for the other %u zeroed block(s)." msgstr "Vea el registro del servidor para obtener detalles de las consultas." -#: storage/buffer/bufmgr.c:7350 +#: storage/buffer/bufmgr.c:7354 #, fuzzy, c-format #| msgid "invalid page in block %u of relation %s" msgid "ignoring checksum failure in block %u of relation \"%s\"" msgstr "la página no es válida en el bloque %u de la relación %s" -#: storage/buffer/bufmgr.c:7351 +#: storage/buffer/bufmgr.c:7355 #, fuzzy, c-format #| msgid "while vacuuming block %u of relation \"%s.%s\"" msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" msgstr "haciendo «vacuum» al bloque %u de la relación «%s.%s»" -#: storage/buffer/bufmgr.c:7352 +#: storage/buffer/bufmgr.c:7356 #, c-format msgid "Block %u held the first ignored page." msgstr "" -#: storage/buffer/bufmgr.c:7353 +#: storage/buffer/bufmgr.c:7357 #, fuzzy, c-format #| msgid "See server log for query details." msgid "See server log for the other %u ignored block(s)." @@ -23842,7 +23816,6 @@ msgstr "Sólo roles con el atributo %s pueden cancelar consultas de roles con el #: storage/ipc/signalfuncs.c:151 #, c-format -#| msgid "Only roles with privileges of the \"%s\" role may COPY to a file." msgid "Only roles with privileges of the \"%s\" role may cancel autovacuum workers." msgstr "Sólo los roles con privilegios del rol «%s» pueden cancelar «autovacuum workers»." @@ -23858,8 +23831,6 @@ msgstr "no se pudo comprobar la existencia del proceso de servidor con PID %d: % #: 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" msgid "backend with PID %d did not terminate within % millisecond" msgid_plural "backend with PID %d did not terminate within % milliseconds" msgstr[0] "el proceso de servidor con PID %d no terminó dentro de % milisegundo" @@ -23872,7 +23843,6 @@ msgstr "\"timeout\" no debe ser negativo" #: storage/ipc/signalfuncs.c:264 #, c-format -#| msgid "Only roles with privileges of the \"%s\" role may examine this parameter." msgid "Only roles with privileges of the \"%s\" role may terminate autovacuum workers." msgstr "Sólo roles con privilegios del rol «%s» pueden terminar «autovacuum workers»." @@ -27555,59 +27525,59 @@ msgstr "el carácter pedido no es válido para el encoding: %u" msgid "percentile value %g is not between 0 and 1" msgstr "el valor de percentil %g no está entre 0 y 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 "el nombre de configuración regional «%s» contiene caracteres no 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 "la “collation” «%s» no tiene versión actual, pero una versión fue registrada" -#: utils/adt/pg_locale.c:1126 +#: utils/adt/pg_locale.c:1133 #, c-format msgid "collation \"%s\" has version mismatch" msgstr "el ordenamiento (collation) «%s» tiene una discordancia de versión" -#: 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 "El ordenamiento en la base de datos fue creado usando la versión %s, pero el sistema operativo provee la versión %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 "Reconstruya todos los objetos afectados por este ordenamiento y ejecute ALTER COLLATION %s REFRESH VERSION, o construya PostgreSQL con la versión correcta de la biblioteca." -#: 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 "nombre de configuración regional «%s» no válido para el proveedor builtin" -#: 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 "no se pudo convertir el nombre de configuración regional «%s» a etiqueta de lenguaje: %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 no está soportado en este servidor" -#: 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 "no se pudo obtener el lenguaje de la configuración regional 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 "Par desactivar la validación ICU de configuración regional, defina «%s» a «%s»." -#: utils/adt/pg_locale.c:1648 +#: utils/adt/pg_locale.c:1662 #, c-format msgid "ICU locale \"%s\" has unknown language \"%s\"" msgstr "el locale ICU «%s» tiene lenguaje desconocido «%s»" @@ -33066,10 +33036,8 @@ msgid "operator too long" msgstr "el operador es demasiado largo" #: scan.l:1001 -#, fuzzy -#| msgid "parameter number %d is out of range 0..%d" msgid "parameter number too large" -msgstr "el número de parámetro %d está fuera del rango 0..%d" +msgstr "el número de parámetro es demasiado grande" #: scan.l:1007 msgid "trailing junk after parameter" @@ -33128,257 +33096,3 @@ 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 "could not look up local user ID %d: %s" -#~ msgstr "no se pudo buscar el usuario local de ID %d: %s" - -#, c-format -#~ msgid "local user with ID %d does not exist" -#~ msgstr "no existe un usuario local con ID %d" - -#, c-format -#~ msgid "%s cannot be executed within a pipeline" -#~ msgstr "%s no puede ser ejecutado en un “pipeline”" - -#, c-format -#~ msgid "The database cluster was initialized with CATALOG_VERSION_NO %d, but the server was compiled with CATALOG_VERSION_NO %d." -#~ msgstr "Los archivos de base de datos fueron inicializados con CATALOG_VERSION_NO %d, pero el servidor fue compilado con CATALOG_VERSION_NO %d." - -#, c-format -#~ msgid "The database cluster was initialized with MAXALIGN %d, but the server was compiled with MAXALIGN %d." -#~ msgstr "Los archivos de la base de datos fueron inicializados con MAXALIGN %d, pero el servidor fue compilado con MAXALIGN %d." - -#, c-format -#~ msgid "The database cluster was initialized with RELSEG_SIZE %d, but the server was compiled with RELSEG_SIZE %d." -#~ msgstr "Los archivos de la base de datos fueron inicializados con RELSEG_SIZE %d, pero el servidor fue compilado con RELSEG_SIZE %d." - -#, c-format -#~ msgid "The database cluster was initialized with XLOG_BLCKSZ %d, but the server was compiled with XLOG_BLCKSZ %d." -#~ msgstr "Los archivos de base de datos fueron inicializados con XLOG_BLCKSZ %d, pero el servidor fue compilado con XLOG_BLCKSZ %d." - -#, c-format -#~ msgid "The database cluster was initialized with NAMEDATALEN %d, but the server was compiled with NAMEDATALEN %d." -#~ msgstr "Los archivos de la base de datos fueron inicializados con NAMEDATALEN %d, pero el servidor fue compilado con NAMEDATALEN %d." - -#, c-format -#~ msgid "The database cluster was initialized with INDEX_MAX_KEYS %d, but the server was compiled with INDEX_MAX_KEYS %d." -#~ msgstr "Los archivos de la base de datos fueron inicializados con INDEX_MAX_KEYS %d, pero el servidor fue compilado con INDEX_MAX_KEYS %d." - -#, 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 "Los archivos de la base de datos fueron inicializados con TOAST_MAX_CHUNK_SIZE %d, pero el servidor fue compilado con TOAST_MAX_CHUNK_SIZE %d." - -#, c-format -#~ msgid "The database cluster was initialized with LOBLKSIZE %d, but the server was compiled with LOBLKSIZE %d." -#~ msgstr "Los archivos de base de datos fueron inicializados con LOBLKSIZE %d, pero el servidor fue compilado con LOBLKSIZE %d." - -#, c-format -#~ msgid "\"min_wal_size\" must be at least twice \"wal_segment_size\"" -#~ msgstr "«min_wal_size» debe ser al menos el doble de «wal_segment_size»" - -#, c-format -#~ msgid "\"max_wal_size\" must be at least twice \"wal_segment_size\"" -#~ msgstr "«max_wal_size» debe ser al menos el doble de «wal_segment_size»" - -#, 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." - -#, 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 "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" - -#, c-format -#~ msgid "%s with OID %u does not exist" -#~ msgstr "%s con el OID %u no existe" - -#, c-format -#~ msgid "end-of-copy marker corrupt" -#~ msgstr "marcador fin-de-copy corrupto" - -#, c-format -#~ msgid "EXPLAIN option TIMING requires ANALYZE" -#~ msgstr "la opción TIMING de EXPLAIN requiere ANALYZE" - -#, c-format -#~ msgid "EXPLAIN option SERIALIZE requires ANALYZE" -#~ msgstr "la opción SERIALIZE de EXPLAIN requiere ANALYZE" - -#, c-format -#~ msgid "Could not open extension control file \"%s\": %m." -#~ msgstr "No se pudo abrir el archivo de control de extensión «%s»: %m." - -#, c-format -#~ msgid "cannot match partition key to an index using access method \"%s\"" -#~ msgstr "no se puede hacer coincidir la llave de partición a un índice usando el método de acceso «%s»" - -#, c-format -#~ msgid "cannot remove constraint from only the partitioned table when partitions exist" -#~ msgstr "no se pueden eliminar restricciones sólo de la tabla particionada cuando existen particiones" - -#, c-format -#~ msgid "column \"%s\" of relation \"%s\" is not a stored generated column" -#~ msgstr "la columna «%s» en la relación «%s» no es una columna generada almacenada" - -#, c-format -#~ msgid "cannot add NOT VALID foreign key on partitioned table \"%s\" referencing relation \"%s\"" -#~ msgstr "no se puede agregar una llave foránea NOT VALID a la tabla particionada «%s» haciendo referencia a la relación «%s»" - -#, c-format -#~ msgid "This feature is not yet supported on partitioned tables." -#~ msgstr "Esta característica no está aún soportada en tablas particionadas." - -#, c-format -#~ msgid "constraint \"%s\" of relation \"%s\" is not a foreign key or check constraint" -#~ msgstr "la restricción «%s» de la relación «%s» no es una llave foránea o restricción «check»" - -#, c-format -#~ msgid "\"effective_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." -#~ msgstr "«effective_io_concurrency» debe ser 0 en plataformas que no tienen posix_fadvise()." - -#, c-format -#~ msgid "\"maintenance_io_concurrency\" must be set to 0 on platforms that lack posix_fadvise()." -#~ msgstr "«maintenance_io_concurrency» debe ser 0 en plataformas que no tienen posix_fadvise()." - -#, c-format -#~ msgid "could not look up local user ID %ld: %s" -#~ msgstr "no se pudo encontrar el ID del usuario local %ld: %s" - -#, c-format -#~ msgid "ECDH: unrecognized curve name: %s" -#~ msgstr "ECDH: nombre de curva no reconocida: %s" - -#, c-format -#~ msgid "ECDH: could not create key" -#~ msgstr "ECDH: no se pudo crear la llave" - -#, c-format -#~ msgid "cannot use ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter, or ldapurl together with ldapprefix" -#~ msgstr "no se puede usar ldapbasedn, ldapbinddn, ldapbindpasswd, ldapsearchattribute, ldapsearchfilter o ldapurl junto con ldapprefix" - -#, c-format -#~ msgid "LIKE is not supported for creating foreign tables" -#~ msgstr "LIKE no está soportado para la creación de tablas foráneas" - -#~ msgid "server process" -#~ msgstr "proceso de servidor" - -#, c-format -#~ msgid "This slot has been invalidated because it exceeded the maximum reserved size." -#~ msgstr "Este slot ha sido invalidado porque excedió el máximo del tamaño de reserva." - -#, c-format -#~ msgid "This slot has been invalidated because it was conflicting with recovery." -#~ msgstr "Este slot ha sido invalidado porque estaba en conflicto con la recuperación." - -#, c-format -#~ msgid "\"synchronous_standby_names\" parser failed" -#~ msgstr "falló la interpretación de «synchronous_standby_names»" - -#, c-format -#~ msgid "\"debug_io_direct\" is not supported on this platform." -#~ msgstr "«debug_io_direct» no está soportado en esta plataforma." - -#, c-format -#~ msgid "conversion from wchar_t to server encoding failed: %m" -#~ msgstr "conversión desde un wchar_t a la codificación del servidor falló: %m" - -#, c-format -#~ msgid "could not rename temporary statistics file \"%s\" to \"%s\": %m" -#~ msgstr "no se pudo cambiar el nombre al archivo temporal de estadísticas de «%s» a «%s»: %m" - -#, c-format -#~ msgid "invalid input string for \"Y,YYY\"" -#~ msgstr "cadena de entrada no válida para «Y,YYY»" - -#, c-format -#~ msgid "\"RN\" not supported for input" -#~ msgstr "«RN» no está soportado en la entrada" - -#, c-format -#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type double precision" -#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo de precisión doble" - -#, c-format -#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type boolean" -#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo booleano" - -#, c-format -#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type numeric" -#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo numeric" - -#, c-format -#~ msgid "argument \"%s\" of jsonpath item method .%s() is invalid for type integer" -#~ msgstr "el argumento «%s» del método de item jsonpath .%s() no es válido para el tipo integer" - -#, c-format -#~ msgid "nondeterministic collations are not supported for LIKE" -#~ msgstr "los ordenamientos no determinísticos no están soportados para LIKE" - -#, c-format -#~ msgid "index %lld out of valid range, 0..%lld" -#~ msgstr "el índice %lld está fuera de rango, 0..%lld" - -#, c-format -#~ msgid "Server has FUNC_MAX_ARGS = %d, library has %d." -#~ msgstr "El servidor tiene FUNC_MAX_ARGS = %d, la librería tiene %d" - -#, c-format -#~ msgid "Server has INDEX_MAX_KEYS = %d, library has %d." -#~ msgstr "El servidor tiene INDEX_MAX_KEYS = %d, la librería tiene %d" - -#, c-format -#~ msgid "Server has FLOAT8PASSBYVAL = %s, library has %s." -#~ msgstr "El servidor tiene FLOAT8PASSBYVAL = %s, la librería tiene %s" - -#~ msgid "Resource Usage / Asynchronous Behavior" -#~ msgstr "Uso de Recursos / Comportamiento Asíncrono" - -#~ msgid "Logs each successful connection." -#~ msgstr "Registrar cada conexión exitosa." - -#~ msgid "-1 indicates that the value could not be determined." -#~ msgstr "-1 indica que el valor no pudo ser determinado." - -#~ msgid "A value of 0 turns off the timeout." -#~ msgstr "Un valor de 0 desactiva el máximo." - -#~ msgid "Zero logs a sample of all queries. -1 turns this feature off." -#~ msgstr "Cero registra una muestra de todas las consultas. -1 desactiva esta funcionalidad." - -#~ msgid "Zero prints all queries. -1 turns this feature off." -#~ msgstr "Cero imprime todas las consultas. -1 desactiva esta funcionalidad." - -#~ msgid "Zero prints all actions. -1 turns autovacuum logging off." -#~ msgstr "Cero registra todas las acciones. -1 desactiva el registro de autovacuum." - -#~ msgid "Minimum number of tuple inserts prior to vacuum, or -1 to disable insert vacuums." -#~ msgstr "Número mínimo de inserciones de tuplas antes de ejecutar vacuum, o -1 para desactivar vacuums por inserciones." - -#~ msgid "Zero logs all files. The default is -1 (turning this feature off)." -#~ msgstr "Cero registra todos los archivos. El valor por omisión es -1 (lo cual desactiva el registro)." - -#~ msgid "0 turns this feature off." -#~ msgstr "Cero desactiva esta característica." - -#~ msgid "This is used only if \"archive_library\" is not set." -#~ msgstr "Esto sólo se utiliza si «archive_library» no está definido." - -#~ msgid "If blank, no prefix is used." -#~ msgstr "si está en blanco, no se usa prefijo." - -#~ msgid "Sets the curve to use for ECDH." -#~ msgstr "Define la curva a usar para ECDH." - -#, c-format -#~ msgid "RECHECK is no longer required" -#~ msgstr "RECHECK ya no es requerido" - -#, c-format -#~ msgid "Update your data type." -#~ msgstr "Actualice su tipo de datos." - -#, c-format -#~ msgid "multiple limit options not allowed" -#~ msgstr "no se permiten múltiples opciones limit" diff --git a/src/backend/po/ja.po b/src/backend/po/ja.po index 8d3fba9f3ac0d..d94dc1ea5050a 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-07-03 13:13+0900\n" -"PO-Revision-Date: 2025-08-20 15:40+0900\n" +"POT-Creation-Date: 2025-11-05 10:30+0900\n" +"PO-Revision-Date: 2025-11-05 11:21+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: jpug-doc \n" "Language: ja\n" @@ -82,25 +82,25 @@ msgstr "圧縮アルゴリズム\"%s\"は長距離モードをサポートしま 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:3621 access/transam/xlog.c:4512 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:2493 replication/slot.c:2534 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: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 #, 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:3626 access/transam/xlog.c:4517 replication/logical/origin.c:773 replication/logical/origin.c:812 replication/logical/snapbuild.c:1956 replication/slot.c:2497 replication/slot.c:2538 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:2509 replication/slot.c:2550 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:3467 access/transam/xlog.c:3661 access/transam/xlog.c:3666 access/transam/xlog.c:3802 -#: access/transam/xlog.c:4482 access/transam/xlog.c:5458 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:2381 replication/slot.c:2545 replication/walsender.c:644 storage/file/copydir.c:224 storage/file/copydir.c:229 -#: 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 +#: ../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 +#: 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" msgstr "ファイル\"%s\"をクローズできませんでした: %m" @@ -122,28 +122,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:3357 access/transam/xlog.c:3537 access/transam/xlog.c:3576 access/transam/xlog.c:3769 access/transam/xlog.c:4502 -#: 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:2465 replication/walsender.c:602 replication/walsender.c:3080 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:675 utils/cache/relmapper.c:818 utils/cache/relmapper.c:935 utils/error/elog.c:2132 utils/init/miscinit.c:1585 utils/init/miscinit.c:1719 utils/init/miscinit.c:1796 utils/misc/guc.c:4774 utils/misc/guc.c:4824 +#: ../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 #, 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:9471 access/transam/xlogfuncs.c:699 backup/basebackup_server.c:173 backup/basebackup_server.c:266 backup/walsummary.c:304 postmaster/postmaster.c:4098 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:3457 access/transam/xlog.c:3655 access/transam/xlog.c:4475 access/transam/xlog.c:8857 access/transam/xlog.c:8901 -#: backup/basebackup_server.c:207 commands/dbcommands.c:515 replication/logical/snapbuild.c:1689 replication/slot.c:2367 replication/slot.c:2475 storage/file/fd.c:820 storage/file/fd.c:3916 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: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 #, 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:1345 libpq/auth.c:1389 libpq/auth.c:1951 libpq/be-secure-gssapi.c:537 libpq/be-secure-gssapi.c:717 postmaster/bgworker.c:355 postmaster/bgworker.c:1022 postmaster/postmaster.c:3568 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: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/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: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:1159 utils/mmgr/slab.c:370 #, c-format msgid "out of memory" msgstr "メモリ不足です" @@ -195,7 +196,7 @@ msgstr "コマンド\"%s\"から読み取れませんでした: %m" 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" @@ -210,13 +211,13 @@ msgstr "メモリ不足です\n" msgid "cannot duplicate null pointer (internal error)\n" msgstr "nullポインタは複製できません(内部エラー)\n" -#: ../common/file_utils.c:75 storage/file/fd.c:3581 +#: ../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: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 -#: replication/logical/snapbuild.c:1546 replication/logical/snapbuild.c:2073 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 +#: ../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" msgstr "ファイル\"%s\"のstatに失敗しました: %m" @@ -226,17 +227,17 @@ msgstr "ファイル\"%s\"のstatに失敗しました: %m" msgid "this build does not support sync method \"%s\"" msgstr "このビルドでは同期方式\"%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:2997 storage/file/reinit.c:126 utils/adt/misc.c:256 utils/misc/tzparser.c:340 +#: ../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 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:3009 +#: ../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: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:2253 replication/slot.c:2395 storage/file/fd.c:838 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:1023 replication/slot.c:2258 replication/slot.c:2407 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" @@ -525,7 +526,7 @@ msgstr "目録チェックサムの不一致" 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: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:6929 utils/misc/guc.c:6970 +#: ../common/percentrepl.c:79 ../common/percentrepl.c:85 ../common/percentrepl.c:118 ../common/percentrepl.c:124 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\"" @@ -585,13 +586,13 @@ 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:2449 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: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: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 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:3435 storage/file/fd.c:3844 +#: ../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 #, c-format msgid "could not remove directory \"%s\": %m" msgstr "ディレクトリ\"%s\"を削除できませんでした: %m" @@ -756,7 +757,7 @@ msgstr "アクセストークンのメンバーシップを確認できません msgid "request for BRIN range summarization for index \"%s\" page %u was not recorded" msgstr "インデックス\"%s\" ページ%uのBRIN範囲要約のリクエストは登録されていません" -#: 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 "リカバリは現在進行中です" @@ -781,7 +782,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\"は有効ではありません" @@ -1024,17 +1025,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インデックスはインデックス全体のスキャンやnullの検索をサポートしていません" -#: access/gin/ginscan.c:438 +#: access/gin/ginscan.c:481 #, c-format msgid "To fix this, do REINDEX INDEX \"%s\"." msgstr "これを修復するには REINDEX INDEX \"%s\" をおこなってください。" @@ -1109,7 +1110,7 @@ msgstr "アクセスメソッド\"%2$s\"の演算子族\"%1$s\"は演算子%3$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:19930 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 +#: 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 #, c-format msgid "Use the COLLATE clause to set the collation explicitly." @@ -1190,7 +1191,7 @@ msgstr "不可視のタプルを更新しようとしました" msgid "could not obtain lock on row in relation \"%s\"" msgstr "リレーション\"%s\"の行ロックを取得できませんでした" -#: access/heap/heapam.c:6405 commands/trigger.c:3350 executor/nodeModifyTable.c:2566 executor/nodeModifyTable.c:2656 +#: access/heap/heapam.c:6405 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 "更新対象のタプルはすでに現在のコマンドによって起動された操作によって変更されています" @@ -1210,8 +1211,8 @@ msgstr "行が大きすぎます: サイズは%zu、上限は%zu" 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:3382 access/transam/xlog.c:3590 access/transam/xlog.c:4454 access/transam/xlog.c:9460 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:4085 postmaster/walsummarizer.c:1215 -#: replication/logical/origin.c:626 replication/slot.c:2314 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:2319 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" @@ -1221,8 +1222,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:3443 access/transam/xlog.c:3646 access/transam/xlog.c:4466 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:2349 -#: storage/file/buffile.c:545 storage/file/copydir.c:213 utils/init/miscinit.c:1660 utils/init/miscinit.c:1671 utils/init/miscinit.c:1679 utils/misc/guc.c:4488 utils/misc/guc.c:4519 utils/misc/guc.c:5673 utils/misc/guc.c:5691 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:2355 +#: 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" @@ -1365,27 +1366,27 @@ msgstr "WAL使用量: %のレコード, %の全ページイメ msgid "system usage: %s" msgstr "システム使用状況: %s" -#: access/heap/vacuumlazy.c:1431 +#: access/heap/vacuumlazy.c:1432 #, c-format msgid "disabling eager scanning after freezing %u eagerly scanned blocks of relation \"%s.%s.%s\"" msgstr "リレーション\"%2$s.%3$s.%4$s\"を貪欲スキャンにより%1$uブロックを凍結したため、貪欲スキャンを無効にしました" -#: access/heap/vacuumlazy.c:2816 +#: access/heap/vacuumlazy.c:2821 #, c-format msgid "table \"%s\": removed % dead item identifiers in %u pages" msgstr "テーブル\"%1$s\": %3$uページ内の%2$の削除済み行識別子を除去" -#: access/heap/vacuumlazy.c:2977 +#: access/heap/vacuumlazy.c:2982 #, c-format msgid "bypassing nonessential maintenance of table \"%s.%s.%s\" as a failsafe after %d index scans" msgstr "%4$d回のインデックススキャンののち、フェイルセーフとしてテーブル\"%1$s.%2$s.%3$s\"の必須ではないメンテナンスをスキップします" -#: access/heap/vacuumlazy.c:2980 +#: 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:2981 +#: access/heap/vacuumlazy.c:2986 #, c-format msgid "" "Consider increasing configuration parameter \"maintenance_work_mem\" or \"autovacuum_work_mem\".\n" @@ -1394,67 +1395,67 @@ msgstr "" "設定パラメータ\"maintenance_work_mem\"または\"autovacuum_work_mem\"を増やすことを検討してください。\n" "VACUUMがトランザクションIDの割り当てに追従できるようにする他の方法を検討する必要があるかもしれません。" -#: access/heap/vacuumlazy.c:3243 +#: access/heap/vacuumlazy.c:3248 #, c-format msgid "\"%s\": stopping truncate due to conflicting lock request" msgstr "\"%s\":競合するロックが存在するため切り詰めを中断します" -#: access/heap/vacuumlazy.c:3313 +#: access/heap/vacuumlazy.c:3318 #, c-format msgid "table \"%s\": truncated %u to %u pages" msgstr "テーブル\"%s\": %uページから%uページに切り詰め" -#: access/heap/vacuumlazy.c:3375 +#: access/heap/vacuumlazy.c:3380 #, c-format msgid "table \"%s\": suspending truncate due to conflicting lock request" msgstr "テーブル\"%s\": 競合するロック要求が存在するため、切り詰めを保留します" -#: access/heap/vacuumlazy.c:3494 +#: access/heap/vacuumlazy.c:3499 #, c-format msgid "disabling parallel option of vacuum on \"%s\" --- cannot vacuum temporary tables in parallel" msgstr "\"%s\"のVACUUMに対するパラレルオプションを無効化します --- 一時テーブルは並列にVACUUMできません" -#: access/heap/vacuumlazy.c:3761 +#: access/heap/vacuumlazy.c:3768 #, c-format msgid "while scanning block %u offset %u of relation \"%s.%s\"" msgstr "リレーション\"%3$s.%4$s\"のブロック%1$u、オフセット%2$uのスキャン中" -#: access/heap/vacuumlazy.c:3764 +#: access/heap/vacuumlazy.c:3771 #, c-format msgid "while scanning block %u of relation \"%s.%s\"" msgstr "リレーション\\\"%2$s.%3$s\\\"のブロック%1$uのスキャン中" -#: access/heap/vacuumlazy.c:3768 +#: access/heap/vacuumlazy.c:3775 #, c-format msgid "while scanning relation \"%s.%s\"" msgstr "リレーション\"%s.%s\"のスキャン中" -#: access/heap/vacuumlazy.c:3776 +#: access/heap/vacuumlazy.c:3783 #, c-format msgid "while vacuuming block %u offset %u of relation \"%s.%s\"" msgstr "リレーション\"%3$s.%4$s\"のブロック%1$u、オフセット%2$uのVACUUM処理中" -#: access/heap/vacuumlazy.c:3779 +#: access/heap/vacuumlazy.c:3786 #, c-format msgid "while vacuuming block %u of relation \"%s.%s\"" msgstr "リレーション\\\"%2$s.%3$s\\\"のブロック%1$uのVACUUM処理中" -#: access/heap/vacuumlazy.c:3783 +#: access/heap/vacuumlazy.c:3790 #, c-format msgid "while vacuuming relation \"%s.%s\"" msgstr "リレーション\"%s.%s\"のVACUUM処理中" -#: access/heap/vacuumlazy.c:3788 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 "リレーション\\\"%2$s.%3$s\\\"のインデックス%1$sのVACUUM処理中" -#: access/heap/vacuumlazy.c:3793 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 "リレーション\\\"%2$s.%3$s\\\"のインデックス%1$sのクリーンアップ処理中" -#: access/heap/vacuumlazy.c:3799 +#: access/heap/vacuumlazy.c:3806 #, c-format msgid "while truncating relation \"%s.%s\" to %u blocks" msgstr "リレーション \"%s.%s\"を%uブロックに切り詰め中" @@ -1479,7 +1480,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:19619 commands/tablecmds.c:21547 +#: 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\"はインデックスではありません" @@ -1504,7 +1505,7 @@ msgstr "キー %s はすでに存在します。" 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: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\"はbtreeではありません" @@ -1524,17 +1525,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かそれ以前のバージョンで、アップグレード前にVACUUMが中断された際に起きた可能性があります。REINDEXしてください。" -#: access/nbtree/nbtutils.c:4295 +#: access/nbtree/nbtutils.c:4233 #, c-format msgid "index row size %zu exceeds btree version %u maximum %zu for index \"%s\"" msgstr "インデックス行サイズ%1$zuはインデックス\"%4$s\"でのbtreeバージョン %2$u の最大値%3$zuを超えています" -#: access/nbtree/nbtutils.c:4300 +#: access/nbtree/nbtutils.c:4238 #, c-format msgid "Index row references tuple (%u,%u) in relation \"%s\"." msgstr "インデックス行はリレーション\"%3$s\"のタプル(%1$u,%2$u)を参照しています。" -#: access/nbtree/nbtutils.c:4304 +#: access/nbtree/nbtutils.c:4242 #, c-format msgid "" "Values larger than 1/3 of a buffer page cannot be indexed.\n" @@ -1548,7 +1549,7 @@ msgstr "" msgid "operator family \"%s\" of access method %s is missing support function for types %s and %s" msgstr "アクセスメソッド\"%2$s\"の演算子族\"%1$s\"は型%3$sと%4$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\"はopenできません" @@ -1583,7 +1584,7 @@ msgstr "tid (%u, %u) はリレーション\"%s\"に対して妥当ではあり 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:4902 #, c-format msgid "\"%s\" is too long (maximum %d characters)." msgstr "\"%s\"が長過ぎます(最大%d文字)。" @@ -1623,12 +1624,12 @@ msgstr "プライマリサーバーで設定パラメータ\"%s\"がonに設定 msgid "Make sure the configuration parameter \"%s\" is set." msgstr "設定パラメータ\"%s\"が設定されていることを確認してください。" -#: access/transam/multixact.c:1097 +#: access/transam/multixact.c:1098 #, 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: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: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 #, c-format msgid "" "Execute a database-wide VACUUM in that database.\n" @@ -1637,61 +1638,61 @@ msgstr "" "そのデータベース全体の VACUUM を実行してください。\n" "古い準備済みトランザクションのコミットまたはロールバック、もしくは古いレプリケーションスロットの削除も必要かもしれません。" -#: access/transam/multixact.c:1104 +#: access/transam/multixact.c:1105 #, 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:1125 access/transam/multixact.c:2482 +#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 #, 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:1134 access/transam/multixact.c:2491 +#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 #, 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:1195 +#: access/transam/multixact.c:1196 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "マルチトランザクションの\"メンバ\"が制限を超えました" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1197 #, 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:1201 +#: access/transam/multixact.c:1202 #, 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:1232 +#: access/transam/multixact.c:1233 #, 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:1237 +#: access/transam/multixact.c:1238 #, 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:1377 +#: access/transam/multixact.c:1378 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %uはもう存在しません: 周回しているようです" -#: access/transam/multixact.c:1383 +#: access/transam/multixact.c:1384 #, 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:2488 access/transam/multixact.c:2497 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in that database.\n" @@ -1700,27 +1701,27 @@ msgstr "" "MultiXactIdの割り当て失敗を防ぐために、このデータベースでデータベース全体に対するVACUUMを実行してください。\n" "古い準備済みトランザクションのコミットまたはロールバック、もしくは古いレプリケーションスロットの削除も必要かもしれません。" -#: access/transam/multixact.c:2775 +#: access/transam/multixact.c:2776 #, 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:2798 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "マルチトランザクションメンバーの周回防止機能が有効になりました" -#: access/transam/multixact.c:3188 +#: access/transam/multixact.c:3189 #, 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:3207 #, 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:3526 #, c-format msgid "invalid MultiXactId: %u" msgstr "不正なMultiXactId: %u" @@ -1749,12 +1750,12 @@ msgstr "パラレルワーカーへの接続を失いました" msgid "parallel worker" msgstr "パラレルワーカー" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 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:1353 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "動的共有メモリセグメントのマジックナンバーが不正です" @@ -1814,62 +1815,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\"を切り詰めできませんでした: 明らかに周回しています" @@ -2010,7 +2011,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リーダの割り当てに中に失敗しました。" @@ -2086,7 +2087,7 @@ msgstr "トランザクション%uの2相状態ファイルを復元できませ 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:2523 storage/file/fd.c:514 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" @@ -2238,397 +2239,392 @@ msgstr "パラレル処理中にセーブポイントのロールバックはで msgid "cannot have more than 2^32-1 subtransactions in a transaction" msgstr "1トランザクション内には 2^32-1 個より多くのサブトランザクションを作成できません" -#: access/transam/xlog.c:1552 +#: 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:1779 +#: 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:2342 access/transam/xlog.c:4690 +#: 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セグメントサイズは1MBから1GBまでの間の2の累乗でなければなりません。" -#: access/transam/xlog.c:2360 -#, c-format -msgid "\"%s\" must be set to -1 during binary upgrade mode." -msgstr "バイナリアップグレードモード中は\"%s\"は-1に設定されている必要があります。" - -#: access/transam/xlog.c:2597 +#: 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:3883 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:4205 +#: access/transam/xlog.c:4063 #, c-format msgid "could not rename file \"%s\": %m" msgstr "ファイル\"%s\"の名前を変更できませんでした: %m" -#: access/transam/xlog.c:4248 access/transam/xlog.c:4259 access/transam/xlog.c:4280 +#: 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:4265 access/transam/xlog.c:4286 +#: 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:4269 access/transam/xlog.c:4289 commands/dbcommands.c:3301 +#: access/transam/xlog.c:4127 access/transam/xlog.c:4147 commands/dbcommands.c:3301 #, c-format msgid "could not create missing directory \"%s\": %m" msgstr "なかったディレクトリ\"%s\"の作成に失敗しました: %m" -#: access/transam/xlog.c:4356 +#: access/transam/xlog.c:4214 #, c-format msgid "could not generate secret authorization token" msgstr "秘密の認証トークンを生成できませんでした" -#: access/transam/xlog.c:4534 access/transam/xlog.c:4544 access/transam/xlog.c:4570 access/transam/xlog.c:4580 access/transam/xlog.c:4590 access/transam/xlog.c:4596 access/transam/xlog.c:4606 access/transam/xlog.c:4616 access/transam/xlog.c:4626 access/transam/xlog.c:4636 access/transam/xlog.c:4646 access/transam/xlog.c:4656 access/transam/xlog.c:4668 access/transam/xlog.c:4676 utils/init/miscinit.c:1817 +#: 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:4535 +#: 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:4539 +#: 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:4545 +#: 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:4548 access/transam/xlog.c:4576 access/transam/xlog.c:4586 access/transam/xlog.c:4592 +#: 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:4560 +#: access/transam/xlog.c:4418 #, c-format msgid "incorrect checksum in control file" msgstr "制御ファイル内のチェックサムが不正です" #. translator: %s is a variable name and %d is its value -#: access/transam/xlog.c:4572 access/transam/xlog.c:4582 access/transam/xlog.c:4598 access/transam/xlog.c:4608 access/transam/xlog.c:4618 access/transam/xlog.c:4628 access/transam/xlog.c:4638 access/transam/xlog.c:4648 access/transam/xlog.c:4658 +#: 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:4591 +#: 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:4602 access/transam/xlog.c:4612 access/transam/xlog.c:4622 access/transam/xlog.c:4632 access/transam/xlog.c:4642 access/transam/xlog.c:4652 access/transam/xlog.c:4662 access/transam/xlog.c:4671 access/transam/xlog.c:4679 +#: 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:4669 +#: 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:4677 +#: 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:4686 +#: 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)" msgstr[0] "制御ファイル中の不正なWALセグメントサイズ (%dバイト)" #. translator: both %s are GUC names -#: access/transam/xlog.c:4700 access/transam/xlog.c:4706 +#: access/transam/xlog.c:4558 access/transam/xlog.c:4564 #, c-format msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\"は\"%s\"の2倍以上でなければなりません" -#: access/transam/xlog.c:4868 catalog/namespace.c:4696 commands/tablespace.c:1210 commands/user.c:2542 commands/variable.c:72 replication/slot.c:2719 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:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "リスト文法が無効です" -#: access/transam/xlog.c:4914 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:5341 +#: access/transam/xlog.c:5195 #, c-format msgid "could not write bootstrap write-ahead log file: %m" msgstr "ブートストラップの先行書き込みログファイルに書き込めませんでした: %m" -#: access/transam/xlog.c:5349 +#: access/transam/xlog.c:5203 #, c-format msgid "could not fsync bootstrap write-ahead log file: %m" msgstr "ブートストラップの先行書き込みログファイルをfsyncできませんでした: %m" -#: access/transam/xlog.c:5355 +#: access/transam/xlog.c:5209 #, c-format msgid "could not close bootstrap write-ahead log file: %m" msgstr "ブートストラップの先行書き込みログファイルをクローズできませんでした: %m" -#: access/transam/xlog.c:5580 +#: access/transam/xlog.c:5434 #, c-format msgid "WAL was generated with \"wal_level=minimal\", cannot continue recovering" msgstr "\"wal_level=minimal\"でWALが生成されました、リカバリは続行不可です" -#: access/transam/xlog.c:5581 +#: 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:5582 +#: 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:5647 +#: access/transam/xlog.c:5501 #, c-format msgid "control file contains invalid checkpoint location" msgstr "制御ファイル内のチェックポイント位置が不正です" -#: access/transam/xlog.c:5658 +#: access/transam/xlog.c:5512 #, c-format msgid "database system was shut down at %s" msgstr "データベースシステムは %s にシャットダウンしました" -#: access/transam/xlog.c:5664 +#: access/transam/xlog.c:5518 #, c-format msgid "database system was shut down in recovery at %s" msgstr "データベースシステムはリカバリ中 %s にシャットダウンしました" -#: access/transam/xlog.c:5670 +#: access/transam/xlog.c:5524 #, c-format msgid "database system shutdown was interrupted; last known up at %s" msgstr "データベースシステムはシャットダウン中に中断されました; %s まで動作していたことは確認できます" -#: access/transam/xlog.c:5676 +#: access/transam/xlog.c:5530 #, c-format msgid "database system was interrupted while in recovery at %s" msgstr "データベースシステムはリカバリ中 %s に中断されました" -#: access/transam/xlog.c:5678 +#: 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:5684 +#: 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:5686 +#: 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 "これが1回以上起きた場合はデータが破損している可能性があるため、より以前のリカバリ目標を選ぶ必要があるかもしれません。" -#: access/transam/xlog.c:5692 +#: access/transam/xlog.c:5546 #, c-format msgid "database system was interrupted; last known up at %s" msgstr "データベースシステムは中断されました: %s まで動作していたことは確認できます" -#: access/transam/xlog.c:5699 +#: access/transam/xlog.c:5553 #, c-format msgid "control file contains invalid database cluster state" msgstr "制御ファイル内のデータベース・クラスタ状態が不正です" -#: access/transam/xlog.c:6087 +#: access/transam/xlog.c:5941 #, c-format msgid "WAL ends before end of online backup" msgstr "オンラインバックアップの終了より前にWALが終了しました" -#: access/transam/xlog.c:6088 +#: 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:6092 +#: access/transam/xlog.c:5946 #, c-format msgid "WAL ends before consistent recovery point" msgstr "WALが一貫性があるリカバリポイントより前で終了しました" -#: access/transam/xlog.c:6138 +#: access/transam/xlog.c:5992 #, c-format msgid "selected new timeline ID: %u" msgstr "新しいタイムラインIDを選択: %u" -#: access/transam/xlog.c:6171 +#: access/transam/xlog.c:6025 #, c-format msgid "archive recovery complete" msgstr "アーカイブリカバリが完了しました" -#: access/transam/xlog.c:6803 +#: access/transam/xlog.c:6654 #, c-format msgid "shutting down" msgstr "シャットダウンしています" #. translator: the placeholders show checkpoint options -#: access/transam/xlog.c:6842 +#: 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:6854 +#: 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:6919 +#: 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 "リスタートポイント完了: %d個のバッファを出力 (%.1f%%), %d個のSLRUバッファを出力; %d個のWALファイルを追加、%d個を削除、%d個を再利用; 書き出し=%ld.%03d秒, 同期=%ld.%03d秒, 全体=%ld.%03d秒; 同期したファイル=%d, 最長=%ld.%03d秒, 平均=%ld.%03d秒; 距離=%d kB, 予測=%d kB; lsn=%X/%X, 再生lsn=%X/%X" -#: access/transam/xlog.c:6943 +#: 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 "チェックポイント完了: %d個のバッファを出力 (%.1f%%), %d個のSLRUバッファを出力; %d個のWALファイルを追加、%d個を削除、%d個を再利用; 書き出し=%ld.%03d秒, 同期=%ld.%03d秒, 全体=%ld.%03d秒; 同期したファイル=%d, 最長=%ld.%03d秒, 平均=%ld.%03d秒; 距離=%d kB, 予測=%d kB; lsn=%X/%X, 再生lsn=%X/%X" -#: access/transam/xlog.c:7429 +#: access/transam/xlog.c:7280 #, c-format msgid "concurrent write-ahead log activity while database system is shutting down" msgstr "データベースのシャットダウンに並行して、先行書き込みログが発生しました" -#: access/transam/xlog.c:8020 +#: access/transam/xlog.c:7869 #, c-format msgid "recovery restart point at %X/%X" msgstr "リカバリ再開ポイントは%X/%Xです" -#: access/transam/xlog.c:8022 +#: access/transam/xlog.c:7871 #, c-format msgid "Last completed transaction was at log time %s." msgstr "最後に完了したトランザクションはログ時刻 %s のものです" -#: access/transam/xlog.c:8284 +#: access/transam/xlog.c:8135 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "復帰ポイント\"%s\"が%X/%Xに作成されました" -#: access/transam/xlog.c:8491 +#: access/transam/xlog.c:8342 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "オンラインバックアップはキャンセルされ、リカバリを継続できません" -#: access/transam/xlog.c:8549 +#: 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:8607 +#: 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:8636 +#: 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:8906 +#: access/transam/xlog.c:8773 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "ライトスルーファイル\"%s\"をfsyncできませんでした: %m" -#: access/transam/xlog.c:8911 +#: access/transam/xlog.c:8778 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "ファイル\"%s\"をfdatasyncできませんでした: %m" -#: access/transam/xlog.c:8988 access/transam/xlog.c:9324 +#: 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:8989 access/transam/xlog.c:9325 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:8994 +#: access/transam/xlog.c:8861 #, c-format msgid "backup label too long (max %d bytes)" msgstr "バックアップラベルが長すぎます (最大%dバイト)" -#: access/transam/xlog.c:9115 +#: access/transam/xlog.c:8982 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed since last restartpoint" msgstr "\"full_page_writes=off\"で生成されたWALが最終リスタートポイント以降に再生されました" -#: access/transam/xlog.c:9117 access/transam/xlog.c:9413 +#: 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:9197 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:9204 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:9363 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:9364 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:9411 +#: access/transam/xlog.c:9278 #, c-format msgid "WAL generated with \"full_page_writes=off\" was replayed during online backup" msgstr "\"full_page_writes=off\"で生成されたWALがオンラインバックアップ中に再生されました" -#: access/transam/xlog.c:9527 +#: 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:9541 +#: 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:9543 +#: 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:9550 +#: access/transam/xlog.c:9417 #, c-format msgid "all required WAL segments have been archived" msgstr "必要なすべての WAL セグメントがアーカイブされました" -#: access/transam/xlog.c:9554 +#: 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:9593 +#: access/transam/xlog.c:9460 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "バックエンドがpg_backup_stopの呼び出し前に終了したため、バックアップは異常終了しました" @@ -2777,162 +2773,162 @@ msgstr "%X/%Xのレコードオフセットが不正です:最低でも%uを期 msgid "contrecord is requested by %X/%X" msgstr "%X/%Xでは継続レコードが必要です" -#: access/transam/xlogreader.c:670 access/transam/xlogreader.c:1135 +#: 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:759 +#: access/transam/xlogreader.c:760 #, c-format msgid "there is no contrecord flag at %X/%X" msgstr "%X/%Xでcontrecordフラグがありません" -#: access/transam/xlogreader.c:772 +#: access/transam/xlogreader.c:773 #, c-format msgid "invalid contrecord length %u (expected %lld) at %X/%X" msgstr "%3$X/%4$Xの継続レコードの長さ%1$u(正しくは%2$lld)は不正です" -#: access/transam/xlogreader.c:1143 +#: access/transam/xlogreader.c:1153 #, c-format msgid "invalid resource manager ID %u at %X/%X" msgstr "%2$X/%3$XのリソースマネージャID %1$uは不正です" -#: access/transam/xlogreader.c:1156 access/transam/xlogreader.c:1172 +#: access/transam/xlogreader.c:1166 access/transam/xlogreader.c:1182 #, c-format msgid "record with incorrect prev-link %X/%X at %X/%X" msgstr "%3$X/%4$Xのレコードの後方リンク%1$X/%2$Xが不正です" -#: access/transam/xlogreader.c:1210 +#: 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:1244 +#: access/transam/xlogreader.c:1254 #, c-format msgid "invalid magic number %04X in WAL segment %s, LSN %X/%X, offset %u" msgstr "WALセグメント%2$s、LSN %3$X/%4$X、オフセット%5$uで不正なマジックナンバー%1$04X" -#: access/transam/xlogreader.c:1259 access/transam/xlogreader.c:1301 +#: 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 "WALセグメント %2$s、LSN %3$X/%4$X、オフセット%5$uで不正な情報ビット列%1$04X" -#: access/transam/xlogreader.c:1275 +#: access/transam/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ファイルは異なるデータベースシステム由来のものです: WALファイルのデータベースシステム識別子は %で、pg_control におけるデータベースシステム識別子は %です" -#: access/transam/xlogreader.c:1283 +#: 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:1289 +#: 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:1321 +#: access/transam/xlogreader.c:1331 #, c-format msgid "unexpected pageaddr %X/%X in WAL segment %s, LSN %X/%X, offset %u" msgstr "WALセグメント%3$s、LSN %4$X/%5$X、オフセット%6$uで想定外のページアドレス%1$X/%2$X" -#: access/transam/xlogreader.c:1347 +#: 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 "WALセグメント%3$s、LSN %4$X/%5$X、オフセット%6$uで異常な順序のタイムラインID %1$u(%2$uの後)" -#: access/transam/xlogreader.c:1759 +#: access/transam/xlogreader.c:1769 #, c-format msgid "out-of-order block_id %u at %X/%X" msgstr "block_id %uが%X/%Xで不正です" -#: access/transam/xlogreader.c:1783 +#: 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:1790 +#: 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が設定されていませんが、%2$X/%3$Xのデータ長は%1$uです" -#: access/transam/xlogreader.c:1826 +#: 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が設定されていますが、%4$X/%5$Xでホールオフセット%1$u、長さ%2$u、ブロックイメージ長%3$uです" -#: access/transam/xlogreader.c:1842 +#: 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が設定されていませんが、%3$X/%4$Xにおけるホールオフセット%1$uの長さが%2$uです" -#: access/transam/xlogreader.c:1856 +#: access/transam/xlogreader.c:1866 #, c-format msgid "BKPIMAGE_COMPRESSED set, but block image length %u at %X/%X" msgstr "BKPIMAGE_COMPRESSEDが設定されていますが、%2$X/%3$Xにおいてブロックイメージ長が%1$uです" -#: access/transam/xlogreader.c:1871 +#: 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も設定されていませんが、%2$X/%3$Xにおいてブロックイメージ長が%1$uです" -#: access/transam/xlogreader.c:1887 +#: 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:1899 +#: access/transam/xlogreader.c:1909 #, c-format msgid "invalid block_id %u at %X/%X" msgstr "%2$X/%3$Xにおけるblock_id %1$uが不正です" -#: access/transam/xlogreader.c:1966 +#: access/transam/xlogreader.c:1976 #, c-format msgid "record with invalid length at %X/%X" msgstr "%X/%Xのレコードのサイズが不正です" -#: access/transam/xlogreader.c:1992 +#: access/transam/xlogreader.c:2002 #, c-format msgid "could not locate backup block with ID %d in WAL record" msgstr "WALレコード中ID %dのバックアップブロックを特定できませんでした" -#: access/transam/xlogreader.c:2076 +#: 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:2083 +#: 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:2110 access/transam/xlogreader.c:2127 +#: 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 "%1$X/%2$Xで、ブロック%4$dがこのビルドでサポートされない圧縮方式%3$sで圧縮されているため復元できませんでした" -#: access/transam/xlogreader.c:2136 +#: 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:2144 +#: 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: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 "タイムラインID %5$u上でREDO LSN %1$X/%2$X、チェックポイントLSN %3$X/%4$Xからのバックアップ・リカバリを開始しました" -#: 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 "%3$X/%4$Xのチェックポイントレコードが参照しているredo位置%1$X/%2$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" @@ -2944,454 +2940,460 @@ msgstr "" " バックアップからの復旧でなければ、\"%s/backup_label\"の削除を試みてください。.\n" "バックアップからの復旧で\"%s/backup_label\"を削除すると、クラスタが破壊されることに注意してください。" -#: 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 "ファイル\"%2$s\"が存在しないためファイル\"%1$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 "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 "%X/%Xには有効なチェックポイントレコードがありませんでした" -#: access/transam/xlogrecovery.c:812 +#: access/transam/xlogrecovery.c:813 #, c-format msgid "entering standby mode" msgstr "スタンバイモードに入ります" -#: access/transam/xlogrecovery.c:815 +#: access/transam/xlogrecovery.c:816 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "XID%uまでのポイントインタイムリカバリを開始します" -#: access/transam/xlogrecovery.c:819 +#: access/transam/xlogrecovery.c:820 #, c-format msgid "starting point-in-time recovery to %s" msgstr "%sまでのポイントインタイムリカバリを開始します" -#: access/transam/xlogrecovery.c:823 +#: access/transam/xlogrecovery.c:824 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "\"%s\"までのポイントインタイムリカバリを開始します" -#: access/transam/xlogrecovery.c:827 +#: access/transam/xlogrecovery.c:828 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "WAL位置(LSN) \"%X/%X\"までのポイントインタイムリカバリを開始します" -#: access/transam/xlogrecovery.c:831 +#: access/transam/xlogrecovery.c:832 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "最も古い一貫性確保点までのポイントインタイムリカバリを開始します" -#: access/transam/xlogrecovery.c:834 +#: access/transam/xlogrecovery.c:835 #, c-format msgid "starting archive recovery" msgstr "アーカイブリカバリを開始しています" -#: access/transam/xlogrecovery.c:855 +#: access/transam/xlogrecovery.c:856 #, 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:859 #, 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 "ファイル\"%1$s\"での最終チェックポイントはタイムライン%4$uの%2$X/%3$Xですが、要求されたタイムラインの履歴上、サーバーはそのタイムラインから%5$X/%6$Xで分岐しています。" -#: access/transam/xlogrecovery.c:873 +#: access/transam/xlogrecovery.c:874 #, c-format msgid "requested timeline %u does not contain minimum recovery point %X/%X on timeline %u" msgstr "要求されたタイムライン%1$uはタイムライン%4$uの最小リカバリポイント%2$X/%3$Xを含みません" -#: access/transam/xlogrecovery.c:901 +#: access/transam/xlogrecovery.c:902 #, c-format msgid "invalid next transaction ID" msgstr "次のトランザクションIDが不正です" -#: access/transam/xlogrecovery.c:906 +#: access/transam/xlogrecovery.c:907 #, c-format msgid "invalid redo in checkpoint record" msgstr "チェックポイントレコード内の不正なREDO" -#: access/transam/xlogrecovery.c:917 +#: access/transam/xlogrecovery.c:918 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "シャットダウン・チェックポイントにおける不正なREDOレコード" -#: access/transam/xlogrecovery.c:946 +#: access/transam/xlogrecovery.c:947 #, c-format msgid "database system was not properly shut down; automatic recovery in progress" msgstr "データベースシステムは正しくシャットダウンされていません; 自動リカバリを実行中" -#: access/transam/xlogrecovery.c:950 +#: access/transam/xlogrecovery.c:951 #, 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:994 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_labelに制御ファイルと整合しないデータが含まれます" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:995 #, 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:1049 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "リカバリコマンドファイル \"%s\"の使用はサポートされません" -#: access/transam/xlogrecovery.c:1113 +#: access/transam/xlogrecovery.c:1114 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "スタンバイモードはシングルユーザーサーバーではサポートされません" -#: access/transam/xlogrecovery.c:1130 +#: access/transam/xlogrecovery.c:1131 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "\"primary_conninfo\"と\"restore_command\"のどちらも指定されていません" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1132 #, 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:1139 +#: access/transam/xlogrecovery.c:1140 #, 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:1178 #, 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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "ファイル\"%s\"内の不正なデータ" -#: access/transam/xlogrecovery.c:1327 +#: access/transam/xlogrecovery.c:1328 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "読み取られたタイムラインIDは%uでしたが、%uであるはずです。" -#: access/transam/xlogrecovery.c:1338 +#: access/transam/xlogrecovery.c:1339 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "これはデータディレクトリではなく、差分バックアップです" -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1340 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "有効なデータディレクトリを再構築するにはpg_combinebackupを使ってください。" -#: access/transam/xlogrecovery.c:1725 +#: access/transam/xlogrecovery.c:1726 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "REDOポイント%X/%Xで想定外のレコードタイプが見つかりました" -#: access/transam/xlogrecovery.c:1748 +#: access/transam/xlogrecovery.c:1749 #, c-format msgid "redo starts at %X/%X" msgstr "REDOを%X/%Xから開始します" -#: access/transam/xlogrecovery.c:1761 +#: access/transam/xlogrecovery.c:1762 #, c-format msgid "redo in progress, elapsed time: %ld.%02d s, current LSN: %X/%X" msgstr "REDO進行中、経過時間 %ld.%02d秒, 現在のLSN: %X/%X" -#: access/transam/xlogrecovery.c:1851 +#: access/transam/xlogrecovery.c:1852 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "要求されたリカバリ停止ポイントは、一貫性があるリカバリポイントより前にあります" -#: access/transam/xlogrecovery.c:1883 +#: access/transam/xlogrecovery.c:1884 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "REDOが%X/%Xで終了しました、システム使用状況: %s" -#: access/transam/xlogrecovery.c:1889 +#: access/transam/xlogrecovery.c:1890 #, c-format msgid "last completed transaction was at log time %s" msgstr "最後に完了したトランザクションのログ時刻は%sでした" -#: access/transam/xlogrecovery.c:1898 +#: access/transam/xlogrecovery.c:1899 #, c-format msgid "redo is not required" msgstr "REDOは必要ありません" -#: access/transam/xlogrecovery.c:1910 +#: access/transam/xlogrecovery.c:1911 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "指定したリカバリターゲットに到達する前にリカバリが終了しました" -#: access/transam/xlogrecovery.c:2104 +#: access/transam/xlogrecovery.c:2105 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "%X/%Xで%sに上書きされて失われた継続行を正常にスキップしました" -#: access/transam/xlogrecovery.c:2171 +#: access/transam/xlogrecovery.c:2172 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "%2$s で想定外のディレクトリエントリ\"%1$s\"が見つかりました" -#: access/transam/xlogrecovery.c:2173 +#: access/transam/xlogrecovery.c:2174 #, c-format msgid "All directory entries in %s/ should be symbolic links." msgstr "%s 内のすべてのディレクトリエントリは、シンボリックリンクである必要があります。" -#: access/transam/xlogrecovery.c:2175 +#: access/transam/xlogrecovery.c:2176 #, 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:2227 +#: access/transam/xlogrecovery.c:2228 #, c-format msgid "completed backup recovery with redo LSN %X/%X and end LSN %X/%X" msgstr "REDO LSN%X/%X、終了LSN %X/%Xのバックアップ・リカバリが完了しました" -#: access/transam/xlogrecovery.c:2258 +#: access/transam/xlogrecovery.c:2259 #, 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:2297 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "%X/%Xにある%sのWAL再生" -#: access/transam/xlogrecovery.c:2394 +#: access/transam/xlogrecovery.c:2395 #, 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:2404 #, 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:2420 #, c-format msgid "unexpected timeline ID %u in checkpoint record, before reaching minimum recovery point %X/%X on timeline %u" msgstr "タイムライン%4$uの最小リカバリポイント%2$X/%3$Xに達する前のチェックポイントレコード内の想定外のタイムラインID%1$u。" -#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 +#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 #, c-format msgid "recovery stopping after reaching consistency" msgstr "リカバリ処理は一貫性確保後に停止します" -#: access/transam/xlogrecovery.c:2624 +#: access/transam/xlogrecovery.c:2625 #, 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:2715 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "リカバリ処理はトランザクション%uのコミット、時刻%sの前に停止します" -#: access/transam/xlogrecovery.c:2721 +#: access/transam/xlogrecovery.c:2722 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "リカバリ処理はトランザクション%uのアボート、時刻%sの前に停止します" -#: access/transam/xlogrecovery.c:2774 +#: access/transam/xlogrecovery.c:2775 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "リカバリ処理は復元ポイント\"%s\"、時刻%s に停止します" -#: access/transam/xlogrecovery.c:2792 +#: access/transam/xlogrecovery.c:2793 #, 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:2860 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "リカバリ処理はトランザクション%uのコミット、時刻%sの後に停止します" -#: access/transam/xlogrecovery.c:2867 +#: access/transam/xlogrecovery.c:2868 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "リカバリ処理はトランザクション%uのアボート、時刻%sの後に停止します" -#: access/transam/xlogrecovery.c:2948 +#: access/transam/xlogrecovery.c:2949 #, c-format msgid "pausing at the end of recovery" msgstr "リカバリ完了位置で一時停止しています" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2950 #, 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:2953 access/transam/xlogrecovery.c:4710 #, c-format msgid "recovery has paused" msgstr "リカバリは一時停止中です" -#: access/transam/xlogrecovery.c:2953 +#: access/transam/xlogrecovery.c:2954 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "再開するには pg_xlog_replay_resume() を実行してください" -#: access/transam/xlogrecovery.c:3216 +#: access/transam/xlogrecovery.c:3217 #, c-format msgid "unexpected timeline ID %u in WAL segment %s, LSN %X/%X, offset %u" msgstr "WALセグメント%2$s、LSN %3$X/%4$X、オフセット%5$uで想定外のタイムラインID%1$u" -#: access/transam/xlogrecovery.c:3432 +#: access/transam/xlogrecovery.c:3433 #, 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:3439 +#: access/transam/xlogrecovery.c:3440 #, c-format msgid "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" msgstr "WALセグメント%1$s、LSN %2$X/%3$X、オフセット%4$uを読み取れませんでした: %6$zu 中 %5$d の読み込み" -#: access/transam/xlogrecovery.c:4082 +#: access/transam/xlogrecovery.c:4094 #, c-format msgid "invalid checkpoint location" msgstr "不正なチェックポイント位置" -#: access/transam/xlogrecovery.c:4092 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint record" msgstr "チェックポイントレコードが不正です" -#: access/transam/xlogrecovery.c:4098 +#: access/transam/xlogrecovery.c:4110 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "チェックポイントレコード内のリソースマネージャIDがで不正です" -#: access/transam/xlogrecovery.c:4106 +#: access/transam/xlogrecovery.c:4118 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "チェックポイントレコード内のxl_infoが不正です" -#: access/transam/xlogrecovery.c:4112 +#: access/transam/xlogrecovery.c:4124 #, c-format msgid "invalid length of checkpoint record" msgstr "チェックポイントレコード長が不正です" -#: access/transam/xlogrecovery.c:4166 +#: access/transam/xlogrecovery.c:4178 #, 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:4192 #, 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:4199 +#: access/transam/xlogrecovery.c:4211 #, c-format msgid "new target timeline is %u" msgstr "新しい目標タイムラインは%uです" -#: access/transam/xlogrecovery.c:4400 +#: access/transam/xlogrecovery.c:4412 #, c-format msgid "WAL receiver process shutdown requested" msgstr "wal receiverプロセスのシャットダウンが要求されました" -#: access/transam/xlogrecovery.c:4460 +#: access/transam/xlogrecovery.c:4472 #, c-format msgid "received promote request" msgstr "昇格要求を受信しました" -#: access/transam/xlogrecovery.c:4689 +#: access/transam/xlogrecovery.c:4701 #, 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:4702 access/transam/xlogrecovery.c:4729 access/transam/xlogrecovery.c:4759 #, 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:4711 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "リカバリの一時停止を解除すると、サーバーはシャットダウンします。" -#: access/transam/xlogrecovery.c:4700 +#: access/transam/xlogrecovery.c:4712 #, 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:4723 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "不十分なパラメータ設定のため、昇格できません" -#: access/transam/xlogrecovery.c:4721 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "必要な設定変更を行ったのち、サーバーを再起動してください。" -#: access/transam/xlogrecovery.c:4745 +#: access/transam/xlogrecovery.c:4757 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "不十分なパラメータ設定値のためリカバリが停止しました" -#: access/transam/xlogrecovery.c:4751 +#: access/transam/xlogrecovery.c:4763 #, c-format msgid "You can restart the server after making the necessary configuration changes." msgstr "必要な設定変更を行うことでサーバーを再起動できます。" -#: access/transam/xlogrecovery.c:4792 +#: 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 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4815 #, c-format msgid "multiple recovery targets specified" msgstr "複数のリカバリ目標が指定されています" -#: access/transam/xlogrecovery.c:4793 +#: access/transam/xlogrecovery.c:4816 #, 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\" はこの中の1つまで設定可能です。" -#: access/transam/xlogrecovery.c:4804 +#: access/transam/xlogrecovery.c:4827 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "\"immediate\"のみが指定可能です。" -#: access/transam/xlogrecovery.c:4958 +#: access/transam/xlogrecovery.c:4981 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "timestampが範囲外です: \"%s\"。" -#: access/transam/xlogrecovery.c:5003 +#: access/transam/xlogrecovery.c:5026 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "\"recovery_target_timeline\"が数値として妥当ではありません。" @@ -3421,7 +3423,7 @@ msgstr "失敗したアーカイブコマンドは次のとおりです: %s" msgid "archive command was terminated by exception 0x%X" msgstr "アーカイブコマンドが例外0x%Xで終了しました" -#: archive/shell_archive.c:109 postmaster/postmaster.c:2843 +#: 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 "16進値の説明についてはC インクルードファイル\"ntstatus.h\"を参照してください。" @@ -3683,7 +3685,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:2241 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:2246 storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" msgstr "ディレクトリ\"%s\"を作成できませんでした: %m" @@ -3813,12 +3815,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" @@ -3833,7 +3835,7 @@ msgstr "データベースに対する不正な権限タイプ %s" 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" @@ -3843,22 +3845,22 @@ msgstr "関数に対する不正な権限タイプ %s" 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" @@ -3868,7 +3870,7 @@ msgstr "ルーチンに対する不正な権限のタイプ %s" 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" @@ -3893,464 +3895,464 @@ msgstr "パラメータに対する不正な権限タイプ %s" 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 +#: catalog/aclchk.c:1211 #, c-format msgid "cannot use IN SCHEMA clause when using GRANT/REVOKE ON SCHEMAS" msgstr "GRANT/REVOKE ON SCHEMAS を使っている時には IN SCHEMA 句は指定できません" -#: catalog/aclchk.c:1207 +#: 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: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:15942 commands/tablecmds.c:18709 commands/trigger.c:947 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:2921 utils/adt/ruleutils.c:2858 +#: 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 +#: 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:1806 +#: catalog/aclchk.c:1820 #, c-format msgid "\"%s\" is an index" msgstr "\"%s\"はインデックスです" -#: catalog/aclchk.c:1813 commands/tablecmds.c:16099 commands/tablecmds.c:19628 +#: catalog/aclchk.c:1827 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:19592 utils/adt/acl.c:2105 utils/adt/acl.c:2135 utils/adt/acl.c:2168 utils/adt/acl.c:2204 utils/adt/acl.c:2235 utils/adt/acl.c:2266 +#: 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 #, c-format msgid "\"%s\" is not a sequence" msgstr "\"%s\"はシーケンスではありません" -#: catalog/aclchk.c:1859 +#: catalog/aclchk.c:1873 #, c-format msgid "sequence \"%s\" only supports USAGE, SELECT, and UPDATE privileges" msgstr "シーケンス \"%s\"では USAGE, SELECT, UPDATE 権限のみをサポートします" -#: catalog/aclchk.c:1876 +#: catalog/aclchk.c:1890 #, c-format msgid "invalid privilege type %s for table" msgstr "テーブルに対する権限タイプ%sは不正です" -#: catalog/aclchk.c:2041 +#: catalog/aclchk.c:2055 #, c-format msgid "invalid privilege type %s for column" msgstr "列では権限タイプ %s は無効です" -#: catalog/aclchk.c:2054 +#: catalog/aclchk.c:2068 #, c-format msgid "sequence \"%s\" only supports SELECT column privileges" msgstr "シーケンス \"%s\"では USAGE, SELECT, UPDATE のみをサポートします" -#: catalog/aclchk.c:2245 +#: catalog/aclchk.c:2259 #, c-format msgid "language \"%s\" is not trusted" msgstr "言語\"%s\"は信頼されていません" -#: catalog/aclchk.c:2247 +#: catalog/aclchk.c:2261 #, 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:2412 #, c-format msgid "cannot set privileges of array types" msgstr "配列型の権限を設定できません" -#: catalog/aclchk.c:2399 +#: catalog/aclchk.c:2413 #, c-format msgid "Set the privileges of the element type instead." msgstr "代わりに要素型の権限を設定してください。" -#: catalog/aclchk.c:2403 +#: catalog/aclchk.c:2417 #, c-format msgid "cannot set privileges of multirange types" msgstr "複範囲型の権限を設定できません" -#: catalog/aclchk.c:2404 +#: catalog/aclchk.c:2418 #, c-format msgid "Set the privileges of the range type instead." msgstr "代わりに範囲型の権限を設定してください。" -#: catalog/aclchk.c:2587 +#: catalog/aclchk.c:2601 #, c-format msgid "unrecognized privilege type \"%s\"" msgstr "認識できない権限タイプ\"%s\"" -#: catalog/aclchk.c:2654 +#: catalog/aclchk.c:2668 #, c-format msgid "permission denied for aggregate %s" msgstr "集約 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2657 +#: catalog/aclchk.c:2671 #, c-format msgid "permission denied for collation %s" msgstr "照合順序 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2660 +#: catalog/aclchk.c:2674 #, c-format msgid "permission denied for column %s" msgstr "列 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2663 +#: catalog/aclchk.c:2677 #, c-format msgid "permission denied for conversion %s" msgstr "変換 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2666 +#: catalog/aclchk.c:2680 #, c-format msgid "permission denied for database %s" msgstr "データベース %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2669 +#: catalog/aclchk.c:2683 #, c-format msgid "permission denied for domain %s" msgstr "ドメイン %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2672 +#: catalog/aclchk.c:2686 #, c-format msgid "permission denied for event trigger %s" msgstr "イベントトリガ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2675 +#: catalog/aclchk.c:2689 #, c-format msgid "permission denied for extension %s" msgstr "機能拡張 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2678 +#: catalog/aclchk.c:2692 #, c-format msgid "permission denied for foreign-data wrapper %s" msgstr "外部データラッパ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2681 +#: catalog/aclchk.c:2695 #, c-format msgid "permission denied for foreign server %s" msgstr "外部サーバー %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2684 +#: catalog/aclchk.c:2698 #, c-format msgid "permission denied for foreign table %s" msgstr "外部テーブル %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2687 +#: catalog/aclchk.c:2701 #, c-format msgid "permission denied for function %s" msgstr "関数 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2690 +#: catalog/aclchk.c:2704 #, c-format msgid "permission denied for index %s" msgstr "インデックス %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2693 +#: catalog/aclchk.c:2707 #, c-format msgid "permission denied for language %s" msgstr "言語 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2696 +#: catalog/aclchk.c:2710 #, c-format msgid "permission denied for large object %s" msgstr "ラージオブジェクト %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2699 +#: catalog/aclchk.c:2713 #, c-format msgid "permission denied for materialized view %s" msgstr "実体化ビュー %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2702 +#: catalog/aclchk.c:2716 #, c-format msgid "permission denied for operator class %s" msgstr "演算子クラス %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2705 +#: catalog/aclchk.c:2719 #, c-format msgid "permission denied for operator %s" msgstr "演算子 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2708 +#: catalog/aclchk.c:2722 #, c-format msgid "permission denied for operator family %s" msgstr "演算子族 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2711 +#: catalog/aclchk.c:2725 #, c-format msgid "permission denied for parameter %s" msgstr "パラメータ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2714 +#: catalog/aclchk.c:2728 #, c-format msgid "permission denied for policy %s" msgstr "ポリシ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2717 +#: catalog/aclchk.c:2731 #, c-format msgid "permission denied for procedure %s" msgstr "プロシージャ %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2720 +#: catalog/aclchk.c:2734 #, c-format msgid "permission denied for publication %s" msgstr "パブリケーション%sへのアクセスが拒否されました" -#: catalog/aclchk.c:2723 +#: catalog/aclchk.c:2737 #, c-format msgid "permission denied for routine %s" msgstr "ルーチン %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2726 +#: catalog/aclchk.c:2740 #, 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:2743 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:2746 #, c-format msgid "permission denied for statistics object %s" msgstr "統計情報オブジェクト %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2735 +#: catalog/aclchk.c:2749 #, c-format msgid "permission denied for subscription %s" msgstr "サブスクリプション %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2738 +#: catalog/aclchk.c:2752 #, c-format msgid "permission denied for table %s" msgstr "テーブル %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2741 +#: catalog/aclchk.c:2755 #, c-format msgid "permission denied for tablespace %s" msgstr "テーブル空間 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2744 +#: catalog/aclchk.c:2758 #, c-format msgid "permission denied for text search configuration %s" msgstr "テキスト検索設定 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2747 +#: catalog/aclchk.c:2761 #, c-format msgid "permission denied for text search dictionary %s" msgstr "テキスト検索辞書 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2750 +#: catalog/aclchk.c:2764 #, c-format msgid "permission denied for type %s" msgstr "型 %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2753 +#: catalog/aclchk.c:2767 #, c-format msgid "permission denied for view %s" msgstr "ビュー %s へのアクセスが拒否されました" -#: catalog/aclchk.c:2789 +#: catalog/aclchk.c:2803 #, c-format msgid "must be owner of aggregate %s" msgstr "集約 %s の所有者である必要があります" -#: catalog/aclchk.c:2792 +#: catalog/aclchk.c:2806 #, c-format msgid "must be owner of collation %s" msgstr "照合順序 %s の所有者である必要があります" -#: catalog/aclchk.c:2795 +#: catalog/aclchk.c:2809 #, c-format msgid "must be owner of conversion %s" msgstr "変換 %s の所有者である必要があります" -#: catalog/aclchk.c:2798 +#: catalog/aclchk.c:2812 #, c-format msgid "must be owner of database %s" msgstr "データベース %s の所有者である必要があります" -#: catalog/aclchk.c:2801 +#: catalog/aclchk.c:2815 #, c-format msgid "must be owner of domain %s" msgstr "ドメイン %s の所有者である必要があります" -#: catalog/aclchk.c:2804 +#: catalog/aclchk.c:2818 #, c-format msgid "must be owner of event trigger %s" msgstr "イベントトリガ %s の所有者である必要があります" -#: catalog/aclchk.c:2807 +#: catalog/aclchk.c:2821 #, c-format msgid "must be owner of extension %s" msgstr "機能拡張 %s の所有者である必要があります" -#: catalog/aclchk.c:2810 +#: catalog/aclchk.c:2824 #, c-format msgid "must be owner of foreign-data wrapper %s" msgstr "外部データラッパー %s の所有者である必要があります" -#: catalog/aclchk.c:2813 +#: catalog/aclchk.c:2827 #, c-format msgid "must be owner of foreign server %s" msgstr "外部サーバー %s の所有者である必要があります" -#: catalog/aclchk.c:2816 +#: catalog/aclchk.c:2830 #, c-format msgid "must be owner of foreign table %s" msgstr "外部テーブル %s の所有者である必要があります" -#: catalog/aclchk.c:2819 +#: catalog/aclchk.c:2833 #, c-format msgid "must be owner of function %s" msgstr "関数 %s の所有者である必要があります" -#: catalog/aclchk.c:2822 +#: catalog/aclchk.c:2836 #, c-format msgid "must be owner of index %s" msgstr "インデックス %s の所有者である必要があります" -#: catalog/aclchk.c:2825 +#: catalog/aclchk.c:2839 #, c-format msgid "must be owner of language %s" msgstr "言語 %s の所有者である必要があります" -#: catalog/aclchk.c:2828 +#: catalog/aclchk.c:2842 #, c-format msgid "must be owner of large object %s" msgstr "ラージオブジェクト %s の所有者である必要があります" -#: catalog/aclchk.c:2831 +#: catalog/aclchk.c:2845 #, c-format msgid "must be owner of materialized view %s" msgstr "実体化ビュー %s の所有者である必要があります" -#: catalog/aclchk.c:2834 +#: catalog/aclchk.c:2848 #, c-format msgid "must be owner of operator class %s" msgstr "演算子クラス %s の所有者である必要があります" -#: catalog/aclchk.c:2837 +#: catalog/aclchk.c:2851 #, c-format msgid "must be owner of operator %s" msgstr "演算子 %s の所有者である必要があります" -#: catalog/aclchk.c:2840 +#: catalog/aclchk.c:2854 #, c-format msgid "must be owner of operator family %s" msgstr "演算子族 %s の所有者である必要があります" -#: catalog/aclchk.c:2843 +#: catalog/aclchk.c:2857 #, c-format msgid "must be owner of procedure %s" msgstr "プロシージャ %s の所有者である必要があります" -#: catalog/aclchk.c:2846 +#: catalog/aclchk.c:2860 #, c-format msgid "must be owner of publication %s" msgstr "パブリケーション %s の所有者である必要があります" -#: catalog/aclchk.c:2849 +#: catalog/aclchk.c:2863 #, c-format msgid "must be owner of routine %s" msgstr "ルーチン %s の所有者である必要があります" -#: catalog/aclchk.c:2852 +#: catalog/aclchk.c:2866 #, c-format msgid "must be owner of sequence %s" msgstr "シーケンス %s の所有者である必要があります" -#: catalog/aclchk.c:2855 +#: catalog/aclchk.c:2869 #, c-format msgid "must be owner of subscription %s" msgstr "サブスクリプション %s の所有者である必要があります" -#: catalog/aclchk.c:2858 +#: catalog/aclchk.c:2872 #, c-format msgid "must be owner of table %s" msgstr "テーブル %s の所有者である必要があります" -#: catalog/aclchk.c:2861 +#: catalog/aclchk.c:2875 #, c-format msgid "must be owner of type %s" msgstr "型 %s の所有者である必要があります" -#: catalog/aclchk.c:2864 +#: catalog/aclchk.c:2878 #, c-format msgid "must be owner of view %s" msgstr "ビュー %s の所有者である必要があります" -#: catalog/aclchk.c:2867 +#: catalog/aclchk.c:2881 #, c-format msgid "must be owner of schema %s" msgstr "スキーマ %s の所有者である必要があります" -#: catalog/aclchk.c:2870 +#: catalog/aclchk.c:2884 #, c-format msgid "must be owner of statistics object %s" msgstr "統計情報オブジェクト %s の所有者である必要があります" -#: catalog/aclchk.c:2873 +#: catalog/aclchk.c:2887 #, c-format msgid "must be owner of tablespace %s" msgstr "テーブル空間 %s の所有者である必要があります" -#: catalog/aclchk.c:2876 +#: catalog/aclchk.c:2890 #, c-format msgid "must be owner of text search configuration %s" msgstr "テキスト検索設定 %s の所有者である必要があります" -#: catalog/aclchk.c:2879 +#: catalog/aclchk.c:2893 #, c-format msgid "must be owner of text search dictionary %s" msgstr "テキスト検索辞書 %s の所有者である必要があります" -#: catalog/aclchk.c:2893 +#: catalog/aclchk.c:2907 #, c-format msgid "must be owner of relation %s" msgstr "リレーション %s の所有者である必要があります" -#: catalog/aclchk.c:2939 +#: catalog/aclchk.c:2953 #, 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:3187 catalog/aclchk.c:3206 #, 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:3244 catalog/aclchk.c:3307 catalog/aclchk.c:3946 #, c-format msgid "relation with OID %u does not exist" msgstr "OID %uのリレーションは存在しません" -#: catalog/aclchk.c:3478 +#: catalog/aclchk.c:3492 #, c-format msgid "parameter ACL with OID %u does not exist" msgstr "OID %uのパラメータACLは存在しません" -#: 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:3571 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:3665 commands/collationcmds.c:849 commands/publicationcmds.c:1846 #, 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:3739 catalog/aclchk.c:3766 catalog/aclchk.c:3795 utils/cache/typcache.c:473 utils/cache/typcache.c:528 #, c-format msgid "type with OID %u does not exist" msgstr "OID %uの型は存在しません" @@ -4382,7 +4384,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\"には属していません" @@ -4439,12 +4441,6 @@ msgstr[0] "" 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:16693 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:312 replication/logical/applyparallelworker.c:1041 replication/slot.c:1638 replication/syncrep.c:1079 storage/aio/method_io_uring.c:191 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:6823 utils/misc/guc.c:6857 utils/misc/guc.c:6891 utils/misc/guc.c:6934 utils/misc/guc.c:6976 -#, 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." @@ -4471,7 +4467,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 "リレーション\"%2$s\"の列\"%1$d\"は存在しません" @@ -4548,7 +4544,7 @@ msgstr "照合可能な型 %2$s を持つ列\"%1$s\"のための照合順序を msgid "relation \"%s\" already exists" msgstr "リレーション\"%s\"はすでに存在します" -#: 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:1205 commands/typecmds.c:1431 commands/typecmds.c:1611 commands/typecmds.c:2586 +#: 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:1213 commands/typecmds.c:1439 commands/typecmds.c:1619 commands/typecmds.c:2594 #, c-format msgid "type \"%s\" already exists" msgstr "型\"%s\"はすでに存在します" @@ -4588,7 +4584,7 @@ msgstr "検査制約\"%s\"はすでに存在します" msgid "cannot add not-null constraint on system column \"%s\"" msgstr "システム列\"%s\"に対して非NULL制約を追加することはできません" -#: 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\"に存在します" @@ -4618,12 +4614,12 @@ msgstr "制約\"%s\"は、リレーション\"%s\"上の \\NOT ENFORCED制約と 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:17536 commands/tablecmds.c:17718 +#: 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 "列\"%s\"に対する非NULL制約にNO INHERIT宣言が競合しています" @@ -4723,7 +4719,7 @@ msgstr "テーブル\"%s\"は\"%s\"を参照します。" msgid "Truncate table \"%s\" at the same time, or use TRUNCATE ... CASCADE." msgstr "同時にテーブル\"%s\"がtruncateされました。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\"に複数のプライマリキーを持たせることはできません" @@ -4813,7 +4809,7 @@ msgstr "インデックス\"%s\"のインデックス再構築が完了しまし msgid "cannot reindex invalid index \"%s.%s\" on TOAST table, skipping" msgstr "TOASTテーブルの無効なインデックス \"%s.%s\"の再作成はできません、スキップします " -#: catalog/namespace.c:462 catalog/namespace.c:666 catalog/namespace.c:758 commands/trigger.c:5765 +#: 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 "データベース間の参照は実装されていません: \"%s.%s.%s\"" @@ -4833,7 +4829,7 @@ msgstr "リレーション\"%s.%s\"のロックを取得できませんでした 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\"は存在しません" @@ -4843,7 +4839,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 "作成先のスキーマが選択されていません" @@ -4868,97 +4864,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:19349 gram.y:19389 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スキーマへ、または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 "エンコーディング\"%2$s\"の照合順序\"%1$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:19597 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:19602 +#: 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:19607 +#: catalog/objectaddress.c:1397 commands/tablecmds.c:296 commands/tablecmds.c:19654 #, c-format msgid "\"%s\" is not a foreign table" msgstr "\"%s\"は外部テーブルではありません" @@ -4978,7 +4974,7 @@ msgstr "列名を修飾する必要があります" msgid "default value for column \"%s\" of relation \"%s\" does not exist" msgstr "リレーション\"%2$s\"の列\"%1$s\"に対するデフォルト値が存在しません" -#: catalog/objectaddress.c:1623 commands/functioncmds.c:132 commands/tablecmds.c:288 commands/typecmds.c:278 commands/typecmds.c:3834 parser/parse_type.c:243 parser/parse_type.c:272 parser/parse_type.c:801 utils/adt/acl.c:4558 +#: 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:4575 #, c-format msgid "type \"%s\" does not exist" msgstr "型\"%s\"は存在しません" @@ -5539,7 +5535,7 @@ msgstr "\"%s\"は仮説集合集約です。" msgid "cannot change number of direct arguments of an aggregate function" msgstr "集約関数の直接引数の数は変更できません" -#: catalog/pg_aggregate.c:859 commands/functioncmds.c:701 commands/typecmds.c:2015 commands/typecmds.c:2061 commands/typecmds.c:2113 commands/typecmds.c:2150 commands/typecmds.c:2184 commands/typecmds.c:2218 commands/typecmds.c:2252 commands/typecmds.c:2281 commands/typecmds.c:2368 commands/typecmds.c:2410 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 +#: 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" @@ -5640,17 +5636,17 @@ msgstr "エンコーディング\"%2$s\"の照合順序\"%1$s\"はすでに存 msgid "cannot change NO INHERIT status of NOT NULL constraint \"%s\" on relation \"%s\"" msgstr "リレーション\"%2$s\"の非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 "%s を用いて既存の制約を継承可能にする必要があるかもしれません。" -#: 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 "リレーション\"%2$s\"上の NOT VALID 制約\"%1$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 を用いてこの制約を検証する必要があるかもしれません。" @@ -5690,12 +5686,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\"のメンバではありません" @@ -5760,7 +5756,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:17844 +#: 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 を実行して保留中の取り外し処理を完了させてください。" @@ -6084,12 +6080,12 @@ msgstr "データベースシステムが必要としているため%sが所有 msgid "cannot reassign ownership of objects owned by %s because they are required by the database system" msgstr "データベースシステムが必要としているため%sが所有するオブジェクトの所有者を再割り当てできません" -#: catalog/pg_subscription.c:469 +#: catalog/pg_subscription.c:484 #, c-format msgid "could not drop relation mapping for subscription \"%s\"" msgstr "サブスクリプション\"%s\"に対するリレーションマッピングを削除できませんでした" -#: catalog/pg_subscription.c:471 +#: catalog/pg_subscription.c:486 #, c-format msgid "Table synchronization for relation \"%s\" is in progress and is in state \"%c\"." msgstr "リレーション\\\"%s\\\"のテーブル同期が進行中で、状態は\\\"%c\\\"です。" @@ -6097,7 +6093,7 @@ msgstr "リレーション\\\"%s\\\"のテーブル同期が進行中で、状 #. translator: first %s is a SQL ALTER command and second %s is a #. SQL DROP command #. -#: catalog/pg_subscription.c:478 +#: 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を実行してこのサブスクリプションを削除してください。" @@ -6127,7 +6123,7 @@ msgstr "値渡し型の場合、内部サイズ%dは不正です" msgid "alignment \"%c\" is invalid for variable-length type" msgstr "可変長型の場合、アラインメント\"%c\"は不正です" -#: catalog/pg_type.c:325 commands/typecmds.c:4354 +#: catalog/pg_type.c:325 commands/typecmds.c:4362 #, c-format msgid "fixed-size types must have storage PLAIN" msgstr "固定長型の場合はPLAIN格納方式でなければなりません" @@ -6142,10 +6138,10 @@ msgstr "\"%s\"の複範囲型の作成中に失敗しました。" 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:7337 +#: 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 "リレーション\"%2$s\"のブロック%1$uに不正なページ" #: commands/aggregatecmds.c:167 #, c-format @@ -6237,7 +6233,7 @@ msgstr "パラメータ\"parallel\"はSAVE、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\"はすでに存在します" @@ -6302,12 +6298,12 @@ msgstr "テキスト検索設定\"%s\"はすでにスキーマ\"%s\"存在しま 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はスーパーユーザーのみ可能です" -#: 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オプションがfalseに設定されたサブスクリプションはスーパーユーザのみ作成と変更が可能です。" @@ -6342,7 +6338,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:705 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を返さなければなりません" @@ -6452,7 +6448,7 @@ msgstr "他のセッションの一時テーブルをクラスタ化できませ msgid "there is no previously clustered index for table \"%s\"" msgstr "テーブル\"%s\"には事前にクラスタ化されたインデックスはありません" -#: commands/cluster.c:190 commands/tablecmds.c:16400 commands/tablecmds.c:18466 +#: commands/cluster.c:190 commands/tablecmds.c:16447 commands/tablecmds.c:18513 #, c-format msgid "index \"%s\" for table \"%s\" does not exist" msgstr "テーブル\"%2$s\"にはインデックス\"%1$s\"は存在しません" @@ -6467,7 +6463,7 @@ msgstr "共有カタログをクラスタ化できません" msgid "cannot vacuum temporary tables of other sessions" msgstr "他のセッションの一時テーブルに対してはVACUUMを実行できません" -#: commands/cluster.c:507 commands/tablecmds.c:18476 +#: commands/cluster.c:507 commands/tablecmds.c:18523 #, c-format msgid "\"%s\" is not an index for table \"%s\"" msgstr "\"%s\"はテーブル\"%s\"のインデックスではありません" @@ -6531,8 +6527,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: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 "競合するオプション、あるいは余計なオプションがあります" @@ -6601,7 +6597,7 @@ 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:16102 commands/tablecmds.c:19630 commands/tablecmds.c:19651 commands/typecmds.c:3778 commands/typecmds.c:3863 commands/typecmds.c:4217 +#: 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を使用してください" @@ -6880,7 +6876,7 @@ msgstr "生成カラムはCOPYでは使えません。" msgid "column \"%s\" does not exist" msgstr "列\"%s\"は存在しません" -#: commands/copy.c:1012 commands/tablecmds.c:2619 commands/trigger.c:956 parser/parse_target.c:1086 parser/parse_target.c:1097 +#: commands/copy.c:1012 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\"が複数指定されました" @@ -7038,17 +7034,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 "標準入力からの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が失敗しました: %s" @@ -7323,7 +7319,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:2453 commands/user.c:299 commands/user.c:739 #, c-format msgid "invalid connection limit: %d" msgstr "不正な接続数制限: %d" @@ -7528,7 +7524,7 @@ msgstr "データベースOID %uはすでにデータベース\"%s\"で使用さ 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\"に合いません" @@ -7610,7 +7606,7 @@ 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:3038 commands/dbcommands.c:3338 commands/dbcommands.c:3452 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "元のデータベースのディレクトリ\"%s\"に不要なファイルが残っているかもしれません" @@ -7707,7 +7703,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:18907 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\"は存在しません、スキップします" @@ -7852,78 +7848,78 @@ msgstr "アクセスメソッド\"%2$s\"に対する演算子族\"%1$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はイベントトリガ関数でのみ呼び出すことができます" @@ -7948,7 +7944,7 @@ msgstr "EXPLAINのオプション %s には ANALYZE 指定が必要です" msgid "EXPLAIN options ANALYZE and GENERIC_PLAN cannot be used together" msgstr "EXPLAINのオプションANALYZEとGENERIC_PLANは同時に使用できません" -#: 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\"は存在しません" @@ -8113,7 +8109,7 @@ msgstr "機能拡張\"%s\"のスキーマ名に不正な文字: \"%s\"のいず 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 "インストールするバージョンを指定してください" @@ -8168,77 +8164,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 "機能拡張\"%s\"は SET SCHEMA をサポートしていません" -#: 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 "機能拡張のスキーマ\"%2$s\"に%1$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:4033 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\"に絶対パスではない要素が含まれています" @@ -8854,12 +8850,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 "包含列では式はサポートされません" @@ -8894,7 +8890,7 @@ msgstr "包含列は NULLS FIRST/LAST オプションをサポートしません msgid "could not determine which collation to use for index expression" msgstr "インデックス式で使用する照合順序を特定できませんでした" -#: commands/indexcmds.c:2097 commands/tablecmds.c:19937 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 型では照合順序はサポートされません" @@ -8929,7 +8925,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:19962 commands/tablecmds.c:19968 commands/typecmds.c:2341 +#: 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 "アクセスメソッド\"%2$s\"にはデータ型%1$s用のデフォルトの演算子クラスがありません" @@ -8944,7 +8940,7 @@ msgstr "このインデックスの演算子クラスを指定するか、ある msgid "operator class \"%s\" does not exist for access method \"%s\"" msgstr "アクセスメソッド\"%2$s\"用の演算子クラス\"%1$s\"は存在しません" -#: commands/indexcmds.c:2330 commands/typecmds.c:2329 +#: commands/indexcmds.c:2330 commands/typecmds.c:2337 #, c-format msgid "operator class \"%s\" does not accept data type %s" msgstr "演算子クラス\"%s\"はデータ型%sを受け付けません" @@ -8964,7 +8960,7 @@ msgstr "型%sの重複検出演算子を特定できませんでした" msgid "could not identify a contained-by operator for type %s" msgstr "型%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 "アクセスメソッド\"%3$s\"の演算子ファミリー\"%2$s\"の比較方式%1$dを変換できませんでした。" @@ -9064,7 +9060,7 @@ msgstr "リレーション\"%s\"はロックできません" msgid "CONCURRENTLY cannot be used when the materialized view is not populated" msgstr "実体化ビューにデータが投入されていない場合はCONCURRENTLYを使用することはできません" -#: commands/matview.c:214 gram.y:19081 +#: commands/matview.c:214 gram.y:19087 #, c-format msgid "%s and %s options cannot be used together" msgstr "%sオプションと%sオプションとを同時に使用することはできません" @@ -9394,7 +9390,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:10089 commands/tablecmds.c:19518 commands/tablecmds.c:19553 commands/trigger.c:318 commands/trigger.c:1337 commands/trigger.c:1447 rewrite/rewriteDefine.c:268 rewrite/rewriteDefine.c:779 rewrite/rewriteRemove.c:74 +#: 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 #, c-format msgid "permission denied: \"%s\" is a system catalog" msgstr "権限がありません: \"%s\"はシステムカタログです" @@ -9444,7 +9440,7 @@ msgstr "カーソル名が不正です: 空ではいけません" msgid "cannot create a cursor WITH HOLD within security-restricted operation" msgstr "セキュリティー制限操作中は、WITH HOLD指定のカーソルを作成できません" -#: commands/portalcmds.c:199 commands/portalcmds.c:252 executor/execCurrent.c:70 utils/adt/xml.c:2949 utils/adt/xml.c:3119 +#: 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\"は存在しません" @@ -9489,7 +9485,7 @@ 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:1870 +#: 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\"のリスト構文が不正です" @@ -9849,12 +9845,12 @@ msgstr "シーケンスは関連するテーブルと同じスキーマでなけ msgid "cannot change ownership of identity sequence" msgstr "識別シーケンスの所有者は変更できません" -#: commands/sequence.c:1671 commands/tablecmds.c:16089 commands/tablecmds.c:18927 +#: 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で指定可能なリレーションは一つのみです" @@ -9924,12 +9920,12 @@ msgstr "定形情報定義中の列名が重複しています" msgid "duplicate expression in statistics definition" msgstr "統計情報定義内に重複した式" -#: commands/statscmds.c:646 commands/tablecmds.c:8914 +#: commands/statscmds.c:646 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:654 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "統計情報目標を%dに減らします" @@ -9939,7 +9935,7 @@ msgstr "統計情報目標を%dに減らします" 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:411 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "識別できないoriginの値: \"%s\"" @@ -10017,7 +10013,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\"は存在しません" @@ -10103,84 +10099,84 @@ msgstr "ALTER SUBSCRIPTION ... REFRESH を copy_data = false を指定して実 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 "サブスクリプション\"%s\"がcopy_dataをorigin = NONEで要求しましたが、異なる基点を持つデータをコピーする可能性があります" -#: 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] "作成中のサブスクリプションは他のサブスクリプションによって書き込まれるテーブルを含むパブリケーション(%s)をサブスクライブします" -#: 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:909 replication/pgoutput/pgoutput.c:1162 +#: 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: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\"が2回以上使われています" -#: 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\"はBoolean値または\"parallel\"のみを取ります" @@ -10241,7 +10237,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:21590 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\"は存在しません" @@ -10264,7 +10260,7 @@ msgstr "\"%s\"は型ではありません" msgid "Use DROP TYPE to remove a type." msgstr "型を削除するにはDROP TYPEを使用してください" -#: commands/tablecmds.c:294 commands/tablecmds.c:15928 commands/tablecmds.c:18629 +#: commands/tablecmds.c:294 commands/tablecmds.c:15975 commands/tablecmds.c:18676 #, c-format msgid "foreign table \"%s\" does not exist" msgstr "外部テーブル\"%s\"は存在しません" @@ -10293,7 +10289,7 @@ msgstr "パーティションテーブルはログ非取得にはできません msgid "cannot create temporary table within security-restricted operation" msgstr "セキュリティー制限操作中は、一時テーブルを作成できません" -#: commands/tablecmds.c:875 commands/tablecmds.c:17353 +#: commands/tablecmds.c:875 commands/tablecmds.c:17400 #, c-format msgid "relation \"%s\" would be inherited from more than once" msgstr "リレーション\"%s\"が複数回継承されました" @@ -10318,7 +10314,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 "配列の次元多すぎます" @@ -10368,7 +10364,7 @@ msgstr "外部テーブル\"%s\"の切り詰めはできません" msgid "cannot truncate temporary tables of other sessions" msgstr "他のセッションの一時テーブルを削除できません" -#: commands/tablecmds.c:2675 commands/tablecmds.c:17250 +#: commands/tablecmds.c:2675 commands/tablecmds.c:17297 #, c-format msgid "cannot inherit from partitioned table \"%s\"" msgstr "パーティション親テーブル\"%s\"からの継承はできません" @@ -10378,7 +10374,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\"はテーブルまたは外部テーブルではありません" @@ -10388,17 +10384,17 @@ msgstr "継承しようとしたリレーション\"%s\"はテーブルまたは msgid "cannot create a temporary relation as partition of permanent relation \"%s\"" msgstr "一時リレーションを永続リレーション\"%s\"のパーティション子テーブルとして作ることはできません" -#: commands/tablecmds.c:2709 commands/tablecmds.c:17229 +#: 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:17237 +#: 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 "行全体テーブル参照を変換できません" @@ -10408,7 +10404,7 @@ msgstr "行全体テーブル参照を変換できません" msgid "Generation expression for column \"%s\" contains a whole-row reference to table \"%s\"." msgstr "制約\"%s\"はテーブル\"%s\"への行全体参照を含みます。" -#: 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 "制約\"%s\"はテーブル\"%s\"への行全体参照を含みます。" @@ -10433,12 +10429,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:17515 +#: 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:17516 +#: 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 です。" @@ -10498,7 +10494,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:4776 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\"対\"%s\"" @@ -10701,12 +10697,12 @@ msgstr "型付けされたテーブルに列を追加できません" msgid "cannot add column to a partition" msgstr "パーティションに列は追加できません" -#: commands/tablecmds.c:7269 commands/tablecmds.c:17471 +#: 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:17477 +#: commands/tablecmds.c:7275 commands/tablecmds.c:17524 #, c-format msgid "child table \"%s\" has different collation for column \"%s\"" msgstr "子テーブル\"%s\"に異なる照合順序の列\"%s\"があります" @@ -10736,12 +10732,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:15951 commands/tablecmds.c:18718 +#: 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\"は識別列です" @@ -10751,12 +10747,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キーワードを指定しないでください。" @@ -10781,1009 +10777,1009 @@ msgstr "パーティション子テーブルの列を識別列とすることは msgid "column \"%s\" of relation \"%s\" must be declared NOT NULL before identity can be added" msgstr "識別列を追加するにはリレーション\"%s\"の列\"%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 "インデックス \"%2$s\"の非式列\"%1$s\"の統計情報の変更はできません" -#: 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 "リレーション\"%2$s\"の列\"%1$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 "列\"%s\"はリレーション\"%s\"のパーティションキーの一部であるため、削除できません" -#: 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\"は非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 " %4$s とマークされているテーブル \"%3$s\"の列 \"%2$s\" への制約 \"%1$s\" は、主キーの要件を満たしていません。" -#: 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 "パーティションテーブル\"%s\"上のリレーション\"%s\"を参照する外部キー定義ではONLY指定はできません " -#: 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 "UNLOGGEDテーブルに対する制約は、永続テーブルまたはUNLOGGEDテーブルだけを参照する場合があります" -#: 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 "外部キーが参照先テーブル上ではPERIODを使用していますが、参照元テーブルでは使用していません" -#: 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 "外部キーが参照元テーブル上ではPERIODを使用していますが、参照先テーブルでは使用していません" -#: 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 "主キーがWITHOUT OVERLAPSを使用している場合は外部キーはPERIODを使用する必要があります" -#: 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 "PERIODを使用する外部キー制約に対するサポートされない %s 処理" -#: 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 "キー列である参照元テーブルの\"%1$s\"と参照先テーブルの\"%2$s\"の型に互換性がありません: %3$sと%4$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 "キー列である参照元テーブルの\"%1$s\"と参照先テーブルの\"%2$s\"の照合順序に互換性がありません: %3$sと%4$s。いずれかの照合順序が非決定的である場合は両方の照合順序が同一である必要があります。" -#: 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 "ON DELETE SETアクションで参照されている列\"%s\"は外部キーの一部である必要があります" -#: 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 "外部キー\"%2$s\"で参照されているため、テーブル\"%1$s\"を子テーブルとしてアタッチすることはできません" -#: commands/tablecmds.c:11719 +#: commands/tablecmds.c:11744 #, c-format msgid "constraint \"%s\" enforceability conflicts with constraint \"%s\" on relation \"%s\"" msgstr "制約\"%1$s\"の強制性が、リレーション\"%3$s\"上の制約\"%2$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\"は非NULL制約ではありません" -#: 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 "リレーション\"%2$s\"の制約\"%1$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 "被参照テーブル\"%s\"には遅延可能プライマリキーは使用できません" -#: 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 "被参照テーブル\"%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 "被参照テーブル\"%s\"に、指定したキーに一致する一意性制約がありません" -#: 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:19777 commands/tablecmds.c:19870 commands/trigger.c:659 rewrite/rewriteHandler.c:949 rewrite/rewriteHandler.c:984 +#: 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: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 "列\"%s\"に対するUSING句の結果は自動的に%s型に型変換できません" -#: 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 "USING式が行全体テーブル参照を含んでいます。" -#: commands/tablecmds.c:14622 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "継承される列\"%s\"の型を子テーブルで変更しなければなりません" -#: commands/tablecmds.c:14747 +#: commands/tablecmds.c:14772 #, c-format msgid "cannot alter type of column \"%s\" twice" msgstr "列\"%s\"の型を2回変更することはできません" -#: commands/tablecmds.c:14785 +#: 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:14790 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "列\"%s\"のデフォルト値を自動的に%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 "関数またはプロシージャで使用される列の型は変更できません" -#: 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:16059 commands/tablecmds.c:16071 +#: commands/tablecmds.c:16106 commands/tablecmds.c:16118 #, c-format msgid "cannot change owner of index \"%s\"" msgstr "インデックス\"%s\"の所有者を変更できません" -#: commands/tablecmds.c:16061 commands/tablecmds.c:16073 +#: commands/tablecmds.c:16108 commands/tablecmds.c:16120 #, c-format msgid "Change the ownership of the index's table instead." msgstr "代わりにインデックスのテーブルの所有者を変更してください。" -#: commands/tablecmds.c:16087 +#: commands/tablecmds.c:16134 #, c-format msgid "cannot change owner of sequence \"%s\"" msgstr "シーケンス\"%s\"の所有者を変更できません" -#: commands/tablecmds.c:16112 +#: commands/tablecmds.c:16159 #, c-format msgid "cannot change owner of relation \"%s\"" msgstr "リレーション\"%s\"の所有者を変更できません" -#: commands/tablecmds.c:16579 +#: commands/tablecmds.c:16626 #, c-format msgid "cannot have multiple SET TABLESPACE subcommands" msgstr "SET TABLESPACEサブコマンドを複数指定できません" -#: commands/tablecmds.c:16658 +#: commands/tablecmds.c:16705 #, c-format msgid "cannot set options for relation \"%s\"" msgstr "リレーション\"%s\"のオプションは設定できません" -#: commands/tablecmds.c:16692 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:16945 +#: commands/tablecmds.c:16992 #, c-format msgid "only tables, indexes, and materialized views exist in tablespaces" msgstr "テーブルスペースにはテーブル、インデックスおよび実体化ビューしかありません" -#: commands/tablecmds.c:16957 +#: commands/tablecmds.c:17004 #, c-format msgid "cannot move relations in to or out of pg_global tablespace" msgstr "pg_globalテーブルスペースとの間のリレーションの移動はできません" -#: commands/tablecmds.c:17049 +#: commands/tablecmds.c:17096 #, c-format msgid "aborting because lock on relation \"%s.%s\" is not available" msgstr "リレーション\"%s.%s\"のロックが獲得できなかったため中断します" -#: commands/tablecmds.c:17065 +#: commands/tablecmds.c:17112 #, c-format msgid "no matching relations in tablespace \"%s\" found" msgstr "テーブルスペース\"%s\"には合致するリレーションはありませんでした" -#: commands/tablecmds.c:17187 +#: commands/tablecmds.c:17234 #, c-format msgid "cannot change inheritance of typed table" msgstr "型付けされたテーブルの継承を変更できません" -#: commands/tablecmds.c:17192 commands/tablecmds.c:17776 +#: commands/tablecmds.c:17239 commands/tablecmds.c:17823 #, c-format msgid "cannot change inheritance of a partition" msgstr "パーティションの継承は変更できません" -#: commands/tablecmds.c:17197 +#: commands/tablecmds.c:17244 #, c-format msgid "cannot change inheritance of partitioned table" msgstr "パーティションテーブルの継承は変更できません" -#: commands/tablecmds.c:17244 +#: commands/tablecmds.c:17291 #, c-format msgid "cannot inherit to temporary relation of another session" msgstr "他のセッションの一時テーブルを継承できません" -#: commands/tablecmds.c:17257 +#: commands/tablecmds.c:17304 #, c-format msgid "cannot inherit from a partition" msgstr "パーティションからの継承はできません" -#: commands/tablecmds.c:17279 commands/tablecmds.c:20290 +#: commands/tablecmds.c:17326 commands/tablecmds.c:20347 #, c-format msgid "circular inheritance not allowed" msgstr "循環継承を行うことはできません" -#: commands/tablecmds.c:17280 commands/tablecmds.c:20291 +#: commands/tablecmds.c:17327 commands/tablecmds.c:20348 #, c-format msgid "\"%s\" is already a child of \"%s\"." msgstr "\"%s\"はすでに\"%s\"の子です" -#: commands/tablecmds.c:17293 +#: commands/tablecmds.c:17340 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming an inheritance child" msgstr "トリガ\"%s\"によってテーブル\"%s\"が継承子テーブルになることができません" -#: commands/tablecmds.c:17295 +#: commands/tablecmds.c:17342 #, c-format msgid "ROW triggers with transition tables are not supported in inheritance hierarchies." msgstr "遷移テーブルを使用したROWトリガは継承関係ではサポートされていません。" -#: commands/tablecmds.c:17496 commands/tablecmds.c:17745 +#: commands/tablecmds.c:17543 commands/tablecmds.c:17792 #, c-format msgid "column \"%s\" in child table \"%s\" must be marked NOT NULL" msgstr "子テーブル\"%2$s\"の列\"%1$s\"は非NULLに設定されていません" -#: commands/tablecmds.c:17506 +#: commands/tablecmds.c:17553 #, c-format msgid "column \"%s\" in child table must be a generated column" msgstr "子テーブルの列\"%s\"は生成列である必要があります" -#: commands/tablecmds.c:17510 +#: commands/tablecmds.c:17557 #, c-format msgid "column \"%s\" in child table must not be a generated column" msgstr "子テーブルの列\"%s\"は生成列であってはなりません" -#: commands/tablecmds.c:17556 +#: commands/tablecmds.c:17603 #, c-format msgid "child table is missing column \"%s\"" msgstr "子テーブルには列\"%s\"がありません" -#: commands/tablecmds.c:17673 +#: commands/tablecmds.c:17720 #, c-format msgid "child table \"%s\" has different definition for check constraint \"%s\"" msgstr "子テーブル\"%s\"では検査制約\"%s\"に異なった定義がされています" -#: commands/tablecmds.c:17682 +#: commands/tablecmds.c:17729 #, c-format msgid "constraint \"%s\" conflicts with non-inherited constraint on child table \"%s\"" msgstr "制約\"%s\"は子テーブル\"%s\"上の継承されない制約と競合します" -#: commands/tablecmds.c:17693 +#: commands/tablecmds.c:17740 #, c-format msgid "constraint \"%s\" conflicts with NOT VALID constraint on child table \"%s\"" msgstr "制約\"%s\"は子テーブル\"%s\"のNOT VALID制約と衝突しています" -#: commands/tablecmds.c:17704 +#: commands/tablecmds.c:17751 #, c-format msgid "constraint \"%s\" conflicts with NOT ENFORCED constraint on child table \"%s\"" msgstr "制約\"%s\"は子テーブル\"%s\"のNOT ENFORCED制約と衝突しています" -#: commands/tablecmds.c:17753 +#: commands/tablecmds.c:17800 #, c-format msgid "child table is missing constraint \"%s\"" msgstr "子テーブルには制約\"%s\"がありません" -#: commands/tablecmds.c:17840 +#: commands/tablecmds.c:17887 #, c-format msgid "partition \"%s\" already pending detach in partitioned table \"%s.%s\"" msgstr "パーティション\"%s\"はすでにパーティションテーブル\"%s.%s\"からの取り外し保留中です" -#: commands/tablecmds.c:17869 commands/tablecmds.c:17917 +#: 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:17923 +#: commands/tablecmds.c:17970 #, c-format msgid "relation \"%s\" is not a parent of relation \"%s\"" msgstr "リレーション\"%s\"はリレーション\"%s\"の親ではありません" -#: commands/tablecmds.c:18194 +#: commands/tablecmds.c:18241 #, c-format msgid "typed tables cannot inherit" msgstr "型付けされたテーブルは継承できません" -#: commands/tablecmds.c:18224 +#: commands/tablecmds.c:18271 #, c-format msgid "table is missing column \"%s\"" msgstr "テーブルには列\"%s\"がありません" -#: commands/tablecmds.c:18235 +#: commands/tablecmds.c:18282 #, c-format msgid "table has column \"%s\" where type requires \"%s\"" msgstr "テーブルには列\"%s\"がありますが型は\"%s\"を必要としています" -#: commands/tablecmds.c:18244 +#: commands/tablecmds.c:18291 #, c-format msgid "table \"%s\" has different type for column \"%s\"" msgstr "テーブル\"%s\"では列\"%s\"の型が異なっています" -#: commands/tablecmds.c:18258 +#: commands/tablecmds.c:18305 #, c-format msgid "table has extra column \"%s\"" msgstr "テーブルに余分な列\"%s\"があります" -#: commands/tablecmds.c:18310 +#: commands/tablecmds.c:18357 #, c-format msgid "\"%s\" is not a typed table" msgstr "\"%s\"は型付けされたテーブルではありません" -#: commands/tablecmds.c:18490 +#: commands/tablecmds.c:18537 #, c-format msgid "cannot use non-unique index \"%s\" as replica identity" msgstr "非ユニークインデックス\"%s\"は複製識別としては使用できません" -#: commands/tablecmds.c:18496 +#: commands/tablecmds.c:18543 #, c-format msgid "cannot use non-immediate index \"%s\" as replica identity" msgstr "一意性を即時検査しないインデックス\"%s\"は複製識別には使用できません" -#: commands/tablecmds.c:18502 +#: commands/tablecmds.c:18549 #, c-format msgid "cannot use expression index \"%s\" as replica identity" msgstr "式インデックス\"%s\"は複製識別としては使用できません" -#: commands/tablecmds.c:18508 +#: commands/tablecmds.c:18555 #, c-format msgid "cannot use partial index \"%s\" as replica identity" msgstr "部分インデックス\"%s\"を複製識別としては使用できません" -#: commands/tablecmds.c:18525 +#: commands/tablecmds.c:18572 #, c-format msgid "index \"%s\" cannot be used as replica identity because column %d is a system column" msgstr "列%2$dはシステム列であるためインデックス\"%1$s\"は複製識別には使えません" -#: commands/tablecmds.c:18532 +#: commands/tablecmds.c:18579 #, c-format msgid "index \"%s\" cannot be used as replica identity because column \"%s\" is nullable" msgstr "列\"%2$s\"はnull可であるためインデックス\"%1$s\"は複製識別には使えません" -#: commands/tablecmds.c:18781 +#: commands/tablecmds.c:18828 #, c-format msgid "cannot change logged status of table \"%s\" because it is temporary" msgstr "テーブル\"%s\"は一時テーブルであるため、ログ出力設定を変更できません" -#: commands/tablecmds.c:18805 +#: commands/tablecmds.c:18852 #, c-format msgid "cannot change table \"%s\" to unlogged because it is part of a publication" msgstr "テーブル\"%s\"はパブリケーションの一部であるため、UNLOGGEDに変更できません" -#: commands/tablecmds.c:18807 +#: commands/tablecmds.c:18854 #, c-format msgid "Unlogged relations cannot be replicated." msgstr "UNLOGGEDリレーションはレプリケーションできません。" -#: commands/tablecmds.c:18852 +#: commands/tablecmds.c:18899 #, c-format msgid "could not change table \"%s\" to logged because it references unlogged table \"%s\"" msgstr "テーブル\"%s\"はUNLOGGEDテーブル\"%s\"を参照しているためLOGGEDには設定できません" -#: commands/tablecmds.c:18862 +#: commands/tablecmds.c:18909 #, c-format msgid "could not change table \"%s\" to unlogged because it references logged table \"%s\"" msgstr "テーブル\"%s\"はLOGGEDテーブル\"%s\"を参照しているためUNLOGGEDには設定できません" -#: commands/tablecmds.c:18926 +#: commands/tablecmds.c:18973 #, c-format msgid "cannot move an owned sequence into another schema" msgstr "所有するシーケンスを他のスキーマに移動することができません" -#: commands/tablecmds.c:19034 +#: commands/tablecmds.c:19081 #, c-format msgid "relation \"%s\" already exists in schema \"%s\"" msgstr "リレーション\"%s\"はスキーマ\"%s\"内にすでに存在します" -#: commands/tablecmds.c:19459 +#: commands/tablecmds.c:19506 #, c-format msgid "\"%s\" is not a table or materialized view" msgstr "\"%s\"はテーブルや実体化ビューではありません" -#: commands/tablecmds.c:19612 +#: commands/tablecmds.c:19659 #, c-format msgid "\"%s\" is not a composite type" msgstr "\"%s\"は複合型ではありません" -#: commands/tablecmds.c:19642 +#: commands/tablecmds.c:19689 #, c-format msgid "cannot change schema of index \"%s\"" msgstr "インデックス\"%s\"のスキーマを変更できません" -#: commands/tablecmds.c:19644 commands/tablecmds.c:19658 +#: commands/tablecmds.c:19691 commands/tablecmds.c:19705 #, c-format msgid "Change the schema of the table instead." msgstr "代わりにこのテーブルのスキーマを変更してください。" -#: commands/tablecmds.c:19648 +#: commands/tablecmds.c:19695 #, c-format msgid "cannot change schema of composite type \"%s\"" msgstr "複合型%sのスキーマは変更できません" -#: commands/tablecmds.c:19656 +#: commands/tablecmds.c:19703 #, c-format msgid "cannot change schema of TOAST table \"%s\"" msgstr "TOASTテーブル\"%s\"のスキーマは変更できません" -#: commands/tablecmds.c:19688 +#: commands/tablecmds.c:19735 #, c-format msgid "cannot use \"list\" partition strategy with more than one column" msgstr "\"list\"パーティションストラテジは2つ以上の列に対しては使えません" -#: commands/tablecmds.c:19754 +#: commands/tablecmds.c:19801 #, c-format msgid "column \"%s\" named in partition key does not exist" msgstr "パーティションキーに指定されている列\"%s\"は存在しません" -#: commands/tablecmds.c:19762 +#: commands/tablecmds.c:19809 #, c-format msgid "cannot use system column \"%s\" in partition key" msgstr "パーティションキーでシステム列\"%s\"は使用できません" -#: commands/tablecmds.c:19776 commands/tablecmds.c:19869 +#: commands/tablecmds.c:19823 commands/tablecmds.c:19905 #, c-format msgid "cannot use generated column in partition key" msgstr "パーティションキーで生成カラムは使用できません" -#: commands/tablecmds.c:19849 +#: commands/tablecmds.c:19892 #, c-format msgid "partition key expressions cannot contain system column references" msgstr "パーティションキー式はシステム列への参照を含むことができません" -#: commands/tablecmds.c:19899 +#: commands/tablecmds.c:19956 #, c-format msgid "functions in partition key expression must be marked IMMUTABLE" msgstr "パーティションキー式で使われる関数はIMMUTABLE指定されている必要があります" -#: commands/tablecmds.c:19908 +#: commands/tablecmds.c:19965 #, c-format msgid "cannot use constant expression as partition key" msgstr "定数式をパーティションキーとして使うことはできません" -#: commands/tablecmds.c:19929 +#: commands/tablecmds.c:19986 #, c-format msgid "could not determine which collation to use for partition expression" msgstr "パーティション式で使用する照合順序を特定できませんでした" -#: commands/tablecmds.c:19964 +#: 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:19970 +#: 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:20230 +#: commands/tablecmds.c:20287 #, c-format msgid "\"%s\" is already a partition" msgstr "\"%s\"はすでパーティションです" -#: commands/tablecmds.c:20236 +#: commands/tablecmds.c:20293 #, c-format msgid "cannot attach a typed table as partition" msgstr "型付けされたテーブルをパーティションにアタッチすることはできません" -#: commands/tablecmds.c:20252 +#: commands/tablecmds.c:20309 #, c-format msgid "cannot attach inheritance child as partition" msgstr "継承子テーブルをパーティションにアタッチすることはできません" -#: commands/tablecmds.c:20266 +#: commands/tablecmds.c:20323 #, c-format msgid "cannot attach inheritance parent as partition" msgstr "継承親テーブルをパーティションにアタッチすることはできません" -#: commands/tablecmds.c:20300 +#: commands/tablecmds.c:20357 #, c-format msgid "cannot attach a temporary relation as partition of permanent relation \"%s\"" msgstr "一時リレーションを永続リレーション \"%s\" のパーティション子テーブルとしてアタッチすることはできません" -#: commands/tablecmds.c:20308 +#: commands/tablecmds.c:20365 #, c-format msgid "cannot attach a permanent relation as partition of temporary relation \"%s\"" msgstr "永続リレーションを一時リレーション\"%s\"のパーティション子テーブルとしてアタッチすることはできません" -#: commands/tablecmds.c:20316 +#: commands/tablecmds.c:20373 #, c-format msgid "cannot attach as partition of temporary relation of another session" msgstr "他セッションの一時リレーションのパーティション子テーブルとしてアタッチすることはできません" -#: commands/tablecmds.c:20323 +#: commands/tablecmds.c:20380 #, c-format msgid "cannot attach temporary relation of another session as partition" msgstr "他セッションの一時リレーションにパーティション子テーブルとしてアタッチすることはできません" -#: commands/tablecmds.c:20343 +#: commands/tablecmds.c:20400 #, c-format msgid "table \"%s\" being attached contains an identity column \"%s\"" msgstr "アタッチ対象のテーブル\"%s\"には識別列\"%s\"が含まれています" -#: commands/tablecmds.c:20345 +#: commands/tablecmds.c:20402 #, c-format msgid "The new partition may not contain an identity column." msgstr "新しいパーティションは識別列を含むことはできません" -#: commands/tablecmds.c:20353 +#: commands/tablecmds.c:20410 #, c-format msgid "table \"%s\" contains column \"%s\" not found in parent \"%s\"" msgstr "テーブル\"%1$s\"は親テーブル\"%3$s\"にない列\"%2$s\"を含んでいます" -#: commands/tablecmds.c:20356 +#: commands/tablecmds.c:20413 #, c-format msgid "The new partition may contain only the columns present in parent." msgstr "新しいパーティションは親に存在する列のみを含むことができます。" -#: commands/tablecmds.c:20368 +#: commands/tablecmds.c:20425 #, c-format msgid "trigger \"%s\" prevents table \"%s\" from becoming a partition" msgstr "トリガ\"%s\"のため、テーブル\"%s\"はパーティション子テーブルにはなれません" -#: commands/tablecmds.c:20370 +#: commands/tablecmds.c:20427 #, c-format msgid "ROW triggers with transition tables are not supported on partitions." msgstr "遷移テーブルを使用するROWトリガはパーティションではサポートされません。" -#: commands/tablecmds.c:20552 +#: commands/tablecmds.c:20609 #, c-format msgid "cannot attach foreign table \"%s\" as partition of partitioned table \"%s\"" msgstr "外部テーブル\"%s\"はパーティションテーブル\"%s\"の子テーブルとしてアタッチすることはできません" -#: commands/tablecmds.c:20555 +#: commands/tablecmds.c:20612 #, c-format msgid "Partitioned table \"%s\" contains unique indexes." msgstr "パーティション親テーブル\"%s\"はユニークインデックスを持っています。" -#: commands/tablecmds.c:20878 +#: commands/tablecmds.c:20936 #, c-format msgid "cannot detach partitions concurrently when a default partition exists" msgstr "デフォルトパーティションを持つパーティションは並列的に取り外しはできません" -#: commands/tablecmds.c:20987 +#: commands/tablecmds.c:21048 #, c-format msgid "partitioned table \"%s\" was removed concurrently" msgstr "パーティション親テーブル\"%s\"には CREATE INDEX CONCURRENTLY は実行できません" -#: commands/tablecmds.c:20993 +#: commands/tablecmds.c:21054 #, c-format msgid "partition \"%s\" was removed concurrently" msgstr "パーティション子テーブル\\\"%s\\\"は同時に削除されました" -#: commands/tablecmds.c:21624 commands/tablecmds.c:21644 commands/tablecmds.c:21665 commands/tablecmds.c:21684 commands/tablecmds.c:21733 +#: 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:21627 +#: commands/tablecmds.c:21688 #, c-format msgid "Index \"%s\" is already attached to another index." msgstr "インデックス\"%s\"はすでに別のインデックスにアタッチされています。" -#: commands/tablecmds.c:21647 +#: 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:21668 +#: commands/tablecmds.c:21729 #, c-format msgid "The index definitions do not match." msgstr "インデックス定義が合致しません。" -#: commands/tablecmds.c:21687 +#: 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:21736 +#: commands/tablecmds.c:21797 #, c-format msgid "Another index is already attached for partition \"%s\"." msgstr "子テーブル\"%s\"にはすでに他のインデックスがアタッチされています。" -#: commands/tablecmds.c:21859 +#: commands/tablecmds.c:21920 #, c-format msgid "invalid primary key definition" msgstr "不正な主キー定義" -#: commands/tablecmds.c:21860 +#: commands/tablecmds.c:21921 #, c-format msgid "Column \"%s\" of relation \"%s\" is not marked NOT NULL." msgstr "リレーション\"%2$s\"の列\"%1$s\"は非NULLに設定されていません。" -#: commands/tablecmds.c:21995 +#: commands/tablecmds.c:22056 #, c-format msgid "column data type %s does not support compression" msgstr "列データ型%sは圧縮をサポートしていません" -#: commands/tablecmds.c:22002 +#: commands/tablecmds.c:22063 #, c-format msgid "invalid compression method \"%s\"" msgstr "無効な圧縮方式\"%s\"" -#: commands/tablecmds.c:22028 +#: commands/tablecmds.c:22089 #, c-format msgid "invalid storage type \"%s\"" msgstr "不正な格納タイプ\"%s\"" -#: commands/tablecmds.c:22038 +#: commands/tablecmds.c:22099 #, c-format msgid "column data type %s can only have storage PLAIN" msgstr "列のデータ型%sは格納タイプPLAINしか取ることができません" @@ -11908,272 +11904,277 @@ msgstr "テーブル空間%u用のディレクトリを削除することがで msgid "You can remove the directories manually if necessary." msgstr "必要ならば手作業でこのディレクトリを削除することができます" -#: commands/trigger.c:227 commands/trigger.c:238 +#: commands/trigger.c:228 commands/trigger.c:239 #, c-format msgid "\"%s\" is a table" msgstr "\"%s\"はテーブルです" -#: commands/trigger.c:229 commands/trigger.c:240 +#: commands/trigger.c:230 commands/trigger.c:241 #, c-format msgid "Tables cannot have INSTEAD OF triggers." msgstr "テーブルは INSTEAD OF トリガーを持つことができません" -#: commands/trigger.c:261 +#: commands/trigger.c:262 #, c-format msgid "\"%s\" is a partitioned table" msgstr "\"%s\"はパーティション親テーブルです" -#: commands/trigger.c:263 +#: commands/trigger.c:264 #, c-format msgid "ROW triggers with transition tables are not supported on partitioned tables." msgstr "遷移テーブルを使用するROWトリガはパーティション親テーブルではサポートされません。" -#: commands/trigger.c:275 commands/trigger.c:282 commands/trigger.c:446 +#: commands/trigger.c:276 commands/trigger.c:283 commands/trigger.c:447 #, c-format msgid "\"%s\" is a view" msgstr "\"%s\"はビューです" -#: commands/trigger.c:277 +#: commands/trigger.c:278 #, c-format msgid "Views cannot have row-level BEFORE or AFTER triggers." msgstr "ビューは行レベルの BEFORE / AFTER トリガーを持つことができません" -#: commands/trigger.c:284 +#: commands/trigger.c:285 #, c-format msgid "Views cannot have TRUNCATE triggers." msgstr "ビューは TRUNCATE トリガーを持つことができません" -#: commands/trigger.c:292 commands/trigger.c:304 commands/trigger.c:439 +#: 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:294 +#: commands/trigger.c:295 #, c-format msgid "Foreign tables cannot have INSTEAD OF triggers." msgstr "外部テーブルは INSTEAD OF トリガを持つことができません。" -#: commands/trigger.c:306 +#: commands/trigger.c:307 #, c-format msgid "Foreign tables cannot have constraint triggers." msgstr "外部テーブルは制約トリガを持つことができません。" -#: commands/trigger.c:311 commands/trigger.c:1330 commands/trigger.c:1437 +#: 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:382 +#: commands/trigger.c:383 #, c-format msgid "TRUNCATE FOR EACH ROW triggers are not supported" msgstr "TRUNCATE FOR EACH ROW トリガはサポートされていません" -#: commands/trigger.c:390 +#: commands/trigger.c:391 #, c-format msgid "INSTEAD OF triggers must be FOR EACH ROW" msgstr "INSTEAD OF トリガーは FOR EACH ROW でなければなりません" -#: commands/trigger.c:394 +#: commands/trigger.c:395 #, c-format msgid "INSTEAD OF triggers cannot have WHEN conditions" msgstr "INSTEAD OF トリガーは WHEN 条件を持つことができません" -#: commands/trigger.c:398 +#: commands/trigger.c:399 #, c-format msgid "INSTEAD OF triggers cannot have column lists" msgstr "INSTEAD OF トリガーは列リストを持つことができません" -#: commands/trigger.c:427 +#: commands/trigger.c:428 #, c-format msgid "ROW variable naming in the REFERENCING clause is not supported" msgstr "REFERENCING句でのROW変数の命名はサポートされていません" -#: commands/trigger.c:428 +#: 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:441 +#: commands/trigger.c:442 #, c-format msgid "Triggers on foreign tables cannot have transition tables." msgstr "外部テーブルに対するトリガは遷移テーブルを持てません。" -#: commands/trigger.c:448 +#: commands/trigger.c:449 #, c-format msgid "Triggers on views cannot have transition tables." msgstr "ビューに対するトリガは遷移テーブルを持てません。" -#: commands/trigger.c:464 +#: commands/trigger.c:465 #, c-format msgid "ROW triggers with transition tables are not supported on partitions" msgstr "遷移テーブルを使用するROWトリガはパーティションではサポートされません" -#: commands/trigger.c:468 +#: commands/trigger.c:469 #, c-format msgid "ROW triggers with transition tables are not supported on inheritance children" msgstr "遷移テーブルをもったROWトリガは継承子テーブルではサポートされません" -#: commands/trigger.c:474 +#: commands/trigger.c:475 #, c-format msgid "transition table name can only be specified for an AFTER trigger" msgstr "遷移テーブル名はAFTERトリガでの指定可能です" -#: commands/trigger.c:479 +#: commands/trigger.c:480 #, c-format msgid "TRUNCATE triggers with transition tables are not supported" msgstr "遷移テーブルを使用するTRUNCATEトリガはサポートされていません" -#: commands/trigger.c:496 +#: commands/trigger.c:497 #, c-format msgid "transition tables cannot be specified for triggers with more than one event" msgstr "2つ以上のイベントに対するトリガには遷移テーブルは指定できません" -#: commands/trigger.c:507 +#: commands/trigger.c:508 #, c-format msgid "transition tables cannot be specified for triggers with column lists" msgstr "列リストを指定したトリガに対しては遷移テーブルは指定できません" -#: commands/trigger.c:524 +#: 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:529 +#: commands/trigger.c:530 #, c-format msgid "NEW TABLE cannot be specified multiple times" msgstr "NEW TABLE は複数回指定できません" -#: commands/trigger.c:539 +#: 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:544 +#: commands/trigger.c:545 #, c-format msgid "OLD TABLE cannot be specified multiple times" msgstr "OLD TABLE は複数回指定できません" -#: commands/trigger.c:554 +#: 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:618 commands/trigger.c:631 +#: 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:623 +#: commands/trigger.c:624 #, c-format msgid "INSERT trigger's WHEN condition cannot reference OLD values" msgstr "INSERT トリガーの WHEN 条件では OLD 値を参照できません" -#: commands/trigger.c:636 +#: commands/trigger.c:637 #, c-format msgid "DELETE trigger's WHEN condition cannot reference NEW values" msgstr "DELETE トリガーの WHEN 条件では NEW 値を参照できません" -#: commands/trigger.c:641 +#: commands/trigger.c:642 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW system columns" msgstr "BEFORE トリガーの WHEN 条件では NEW システム列を参照できません" -#: commands/trigger.c:650 commands/trigger.c:658 +#: commands/trigger.c:651 commands/trigger.c:659 #, c-format msgid "BEFORE trigger's WHEN condition cannot reference NEW generated columns" msgstr "BEFORE トリガーの WHEN 条件では NEW の生成列を参照できません" -#: commands/trigger.c:651 +#: commands/trigger.c:652 #, c-format msgid "A whole-row reference is used and the table contains generated columns." msgstr "行全体参照が使われていてかつ、このテーブルは生成カラムを含んでいます。" -#: commands/trigger.c:766 commands/trigger.c:1613 +#: commands/trigger.c:767 commands/trigger.c:1614 #, c-format msgid "trigger \"%s\" for relation \"%s\" already exists" msgstr "リレーション\"%2$s\"用のトリガ\"%1$s\"はすでに存在します" -#: commands/trigger.c:779 +#: commands/trigger.c:780 #, c-format msgid "trigger \"%s\" for relation \"%s\" is an internal or a child trigger" msgstr "リレーション\"%2$s\"のトリガー\"%1$s\"は内部トリガーまたは子トリガーです" -#: commands/trigger.c:798 +#: commands/trigger.c:799 #, c-format msgid "trigger \"%s\" for relation \"%s\" is a constraint trigger" msgstr "リレーション\"%2$s\"のトリガー\"%1$s\"は制約トリガーです" -#: commands/trigger.c:1402 commands/trigger.c:1556 commands/trigger.c:1837 +#: commands/trigger.c:1403 commands/trigger.c:1557 commands/trigger.c:1838 #, c-format msgid "trigger \"%s\" for table \"%s\" does not exist" msgstr "テーブル\"%2$s\"のトリガ\"%1$s\"は存在しません" -#: commands/trigger.c:1528 +#: commands/trigger.c:1529 #, c-format msgid "cannot rename trigger \"%s\" on table \"%s\"" msgstr "テーブル\"%2$s\"のトリガー\"%1$s\"の名前は変更できません" -#: commands/trigger.c:1530 +#: commands/trigger.c:1531 #, c-format msgid "Rename the trigger on the partitioned table \"%s\" instead." msgstr "代わりにパーティション親テーブル\"%s\"でこのトリガーの名前を変更してください。" -#: commands/trigger.c:1630 +#: commands/trigger.c:1631 #, c-format msgid "renamed trigger \"%s\" on relation \"%s\"" msgstr "リレーション\"%2$s\"のトリガー\"%1$s\"の名前を変更しました" -#: commands/trigger.c:1776 +#: commands/trigger.c:1777 #, c-format msgid "permission denied: \"%s\" is a system trigger" msgstr "権限がありません: \"%s\"はシステムトリガです" -#: commands/trigger.c:2385 +#: commands/trigger.c:2388 #, c-format msgid "trigger function %u returned null value" msgstr "トリガ関数%uはNULL値を返しました" -#: commands/trigger.c:2445 commands/trigger.c:2665 commands/trigger.c:2918 commands/trigger.c:3273 +#: 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:2523 +#: 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:2524 +#: 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:3351 executor/nodeModifyTable.c:1686 executor/nodeModifyTable.c:1760 executor/nodeModifyTable.c:2567 executor/nodeModifyTable.c:2657 executor/nodeModifyTable.c:3329 executor/nodeModifyTable.c:3499 +#: commands/trigger.c:2556 commands/trigger.c:2817 commands/trigger.c:3164 +#, c-format +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 #, c-format msgid "Consider using an AFTER trigger instead of a BEFORE trigger to propagate changes to other rows." msgstr "他の行への変更を伝搬させるためにBEFOREトリガではなくAFTERトリガの使用を検討してください" -#: commands/trigger.c:3392 executor/nodeLockRows.c:228 executor/nodeLockRows.c:237 executor/nodeModifyTable.c:389 executor/nodeModifyTable.c:1702 executor/nodeModifyTable.c:2583 executor/nodeModifyTable.c:2808 +#: 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:3400 executor/nodeModifyTable.c:1792 executor/nodeModifyTable.c:2674 executor/nodeModifyTable.c:2832 executor/nodeModifyTable.c:3347 +#: 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:4635 +#: commands/trigger.c:4687 #, c-format msgid "cannot fire deferred trigger within security-restricted operation" msgstr "セキュリティー制限操作中は、遅延トリガーは発火させられません" -#: commands/trigger.c:5816 +#: commands/trigger.c:5868 #, c-format msgid "constraint \"%s\" is not deferrable" msgstr "制約\"%s\"は遅延可能ではありません" -#: commands/trigger.c:5839 +#: commands/trigger.c:5891 #, c-format msgid "constraint \"%s\" does not exist" msgstr "制約\"%s\"は存在しません" @@ -12283,7 +12284,7 @@ msgstr "基本型を作成するにはスーパーユーザーである必要が msgid "Create the type as a shell type, then create its I/O functions, then do a full CREATE TYPE." msgstr "最初に型をシェル型として生成して、続いてI/O関数を生成した後に完全な CREATE TYPE を実行してください。" -#: commands/typecmds.c:331 commands/typecmds.c:1486 commands/typecmds.c:4471 +#: commands/typecmds.c:331 commands/typecmds.c:1494 commands/typecmds.c:4479 #, c-format msgid "type attribute \"%s\" not recognized" msgstr "型の属性\"%s\"は不明です" @@ -12303,7 +12304,7 @@ msgstr "%sを配列要素の型にすることはできません" msgid "alignment \"%s\" not recognized" msgstr "アライメント\"%s\"は不明です" -#: commands/typecmds.c:454 commands/typecmds.c:4345 +#: commands/typecmds.c:454 commands/typecmds.c:4353 #, c-format msgid "storage \"%s\" not recognized" msgstr "格納方式\"%s\"は不明です" @@ -12338,342 +12339,347 @@ msgstr "\"%s\"はドメインの基本型として無効です" msgid "multiple default expressions" msgstr "デフォルト式が複数あります" -#: commands/typecmds.c:945 commands/typecmds.c:960 +#: commands/typecmds.c:947 commands/typecmds.c:968 #, c-format msgid "conflicting NULL/NOT NULL constraints" msgstr "NULL制約とNOT NULL制約が競合しています" -#: commands/typecmds.c:950 +#: commands/typecmds.c:952 +#, c-format +msgid "redundant NOT NULL constraint definition" +msgstr "重複した非NULL制約定義" + +#: commands/typecmds.c:958 #, c-format msgid "not-null constraints for domains cannot be marked NO INHERIT" msgstr "ドメインに対する非NULL制約はNO INHERIT指定できません" -#: commands/typecmds.c:977 +#: commands/typecmds.c:985 #, c-format msgid "check constraints for domains cannot be marked NO INHERIT" msgstr "ドメインに対する検査制約はNO INHERITとマークすることができません" -#: commands/typecmds.c:988 +#: commands/typecmds.c:996 #, c-format msgid "unique constraints not possible for domains" msgstr "ドメインでは一意性制約は使用できません" -#: commands/typecmds.c:995 +#: commands/typecmds.c:1003 #, c-format msgid "primary key constraints not possible for domains" msgstr "ドメインではプライマリキー制約はできません" -#: commands/typecmds.c:1002 +#: commands/typecmds.c:1010 #, c-format msgid "exclusion constraints not possible for domains" msgstr "ドメインでは排除制約は使用できません" -#: commands/typecmds.c:1009 +#: commands/typecmds.c:1017 #, c-format msgid "foreign key constraints not possible for domains" msgstr "ドメイン用の外部キー制約はできません" -#: commands/typecmds.c:1019 +#: commands/typecmds.c:1027 #, c-format msgid "specifying constraint deferrability not supported for domains" msgstr "ドメインでは制約遅延の指定はサポートしていません" -#: commands/typecmds.c:1027 +#: commands/typecmds.c:1035 #, c-format msgid "specifying GENERATED not supported for domains" msgstr "ドメインではGENERATEDの指定はサポートしていません" -#: commands/typecmds.c:1035 +#: commands/typecmds.c:1043 #, c-format msgid "specifying constraint enforceability not supported for domains" msgstr "ドメインでは制約の強制性指定はサポートしていません" -#: commands/typecmds.c:1353 utils/cache/typcache.c:2757 +#: commands/typecmds.c:1361 utils/cache/typcache.c:2757 #, c-format msgid "%s is not an enum" msgstr "%s は数値ではありません" -#: commands/typecmds.c:1494 +#: commands/typecmds.c:1502 #, c-format msgid "type attribute \"subtype\" is required" msgstr "型の属性\"subtype\"が必要です" -#: commands/typecmds.c:1499 +#: commands/typecmds.c:1507 #, c-format msgid "range subtype cannot be %s" msgstr "範囲の派生元型を%sにすることはできません" -#: commands/typecmds.c:1518 +#: commands/typecmds.c:1526 #, c-format msgid "range collation specified but subtype does not support collation" msgstr "範囲の照合順序が指定されましたが、派生もと型が照合順序をサポートしていません" -#: commands/typecmds.c:1528 +#: commands/typecmds.c:1536 #, c-format msgid "cannot specify a canonical function without a pre-created shell type" msgstr "事前にシェル型を生成せずに正規化関数を指定することはできません" -#: commands/typecmds.c:1529 +#: 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:2005 +#: commands/typecmds.c:2013 #, c-format msgid "type input function %s has multiple matches" msgstr "型の入力関数%sが複数合致します" -#: commands/typecmds.c:2023 +#: commands/typecmds.c:2031 #, c-format msgid "type input function %s must return type %s" msgstr "型の入力関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2039 +#: commands/typecmds.c:2047 #, c-format msgid "type input function %s should not be volatile" msgstr "型の入力関数%sはvolatileであってはなりません" -#: commands/typecmds.c:2067 +#: commands/typecmds.c:2075 #, c-format msgid "type output function %s must return type %s" msgstr "型の出力関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2074 +#: commands/typecmds.c:2082 #, c-format msgid "type output function %s should not be volatile" msgstr "型の出力関数%sはvolatileであってはなりません" -#: commands/typecmds.c:2103 +#: commands/typecmds.c:2111 #, c-format msgid "type receive function %s has multiple matches" msgstr "型の受信関数 %s が複数合致しました" -#: commands/typecmds.c:2121 +#: commands/typecmds.c:2129 #, c-format msgid "type receive function %s must return type %s" msgstr "型の受信関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2128 +#: commands/typecmds.c:2136 #, c-format msgid "type receive function %s should not be volatile" msgstr "型の受信関数%sはvolatileであってはなりません" -#: commands/typecmds.c:2156 +#: commands/typecmds.c:2164 #, c-format msgid "type send function %s must return type %s" msgstr "型の送信関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2163 +#: commands/typecmds.c:2171 #, c-format msgid "type send function %s should not be volatile" msgstr "型の送信関数%sはvolatileであってはなりません" -#: commands/typecmds.c:2190 +#: commands/typecmds.c:2198 #, c-format msgid "typmod_in function %s must return type %s" msgstr "typmod_in関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2197 +#: commands/typecmds.c:2205 #, c-format msgid "type modifier input function %s should not be volatile" msgstr "型修正子の入力関数%sはvolatileであってはなりません" -#: commands/typecmds.c:2224 +#: commands/typecmds.c:2232 #, c-format msgid "typmod_out function %s must return type %s" msgstr "typmod_out関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2231 +#: commands/typecmds.c:2239 #, c-format msgid "type modifier output function %s should not be volatile" msgstr "型修正子の出力関数%sはvolatileであってはなりません" -#: commands/typecmds.c:2258 +#: commands/typecmds.c:2266 #, c-format msgid "type analyze function %s must return type %s" msgstr "型のANALYZE関数%sは%s型を返す必要があります" -#: commands/typecmds.c:2287 +#: commands/typecmds.c:2295 #, c-format msgid "type subscripting function %s must return type %s" msgstr "型の添字処理関数%sは型%sを返す必要があります" -#: commands/typecmds.c:2297 +#: commands/typecmds.c:2305 #, c-format msgid "user-defined types cannot use subscripting function %s" msgstr "ユーザー定義型は添字処理関数%sを使用できません" -#: commands/typecmds.c:2343 +#: 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:2374 +#: commands/typecmds.c:2382 #, c-format msgid "range canonical function %s must return range type" msgstr "範囲の正規化関数 %s は範囲型を返す必要があります" -#: commands/typecmds.c:2380 +#: commands/typecmds.c:2388 #, c-format msgid "range canonical function %s must be immutable" msgstr "範囲の正規化関数 %s は不変関数でなければなりません" -#: commands/typecmds.c:2416 +#: commands/typecmds.c:2424 #, c-format msgid "range subtype diff function %s must return type %s" msgstr "範囲の派生元の型の差分関数 %s は %s型を返す必要があります" -#: commands/typecmds.c:2423 +#: commands/typecmds.c:2431 #, c-format msgid "range subtype diff function %s must be immutable" msgstr "範囲の派生元の型の差分関数 %s は不変関数である必要があります" -#: commands/typecmds.c:2450 +#: commands/typecmds.c:2458 #, c-format msgid "pg_type array OID value not set when in binary upgrade mode" msgstr "バイナリアップグレードモード中にpg_typeの配列型OIDが設定されていません" -#: commands/typecmds.c:2483 +#: commands/typecmds.c:2491 #, c-format msgid "pg_type multirange OID value not set when in binary upgrade mode" msgstr "バイナリアップグレードモード中にpg_typeの複範囲型OIDの値が設定されていません" -#: commands/typecmds.c:2516 +#: commands/typecmds.c:2524 #, c-format msgid "pg_type multirange array OID value not set when in binary upgrade mode" msgstr "バイナリアップグレードモード中にpg_typeの複範囲配列型OIDの値が設定されていません" -#: commands/typecmds.c:2898 commands/typecmds.c:3080 +#: commands/typecmds.c:2906 commands/typecmds.c:3088 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist" msgstr "ドメイン\"%2$s\"の制約\"%1$s\"は存在しません" -#: commands/typecmds.c:2902 +#: commands/typecmds.c:2910 #, c-format msgid "constraint \"%s\" of domain \"%s\" does not exist, skipping" msgstr "ドメイン\"%2$s\"の制約\"%1$s\"は存在しません、スキップします" -#: commands/typecmds.c:3087 +#: commands/typecmds.c:3095 #, c-format msgid "constraint \"%s\" of domain \"%s\" is not a check constraint" msgstr "ドメイン\"%2$s\"の制約\"%1$s\"は検査制約ではありません" -#: commands/typecmds.c:3167 +#: commands/typecmds.c:3175 #, c-format msgid "column \"%s\" of table \"%s\" contains null values" msgstr "テーブル\"%2$s\"の列\"%1$s\"にNULL値があります" -#: commands/typecmds.c:3256 +#: commands/typecmds.c:3264 #, c-format msgid "column \"%s\" of table \"%s\" contains values that violate the new constraint" msgstr "テーブル\"%2$s\"の列\"%1$s\"に新しい制約に違反する値があります" -#: commands/typecmds.c:3485 commands/typecmds.c:3763 commands/typecmds.c:3848 commands/typecmds.c:4064 +#: 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:3519 commands/typecmds.c:3675 +#: commands/typecmds.c:3527 commands/typecmds.c:3683 #, c-format msgid "constraint \"%s\" for domain \"%s\" already exists" msgstr "ドメイン\"%2$s\"の制約\"%1$s\"はすでに存在します" -#: commands/typecmds.c:3570 +#: commands/typecmds.c:3578 #, c-format msgid "cannot use table references in domain check constraint" msgstr "ドメインの検査制約ではテーブル参照を使用できません" -#: commands/typecmds.c:3775 commands/typecmds.c:3860 commands/typecmds.c:4214 +#: 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:3785 commands/typecmds.c:3870 commands/typecmds.c:4112 +#: 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:3787 commands/typecmds.c:3872 commands/typecmds.c:4114 +#: 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:3883 +#: commands/typecmds.c:3891 #, c-format msgid "cannot alter multirange type %s" msgstr "複範囲型%sを変更できません" -#: commands/typecmds.c:3886 +#: 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:4193 +#: commands/typecmds.c:4201 #, c-format msgid "type \"%s\" already exists in schema \"%s\"" msgstr "型\"%s\"はスキーマ\"%s\"内にすでに存在します" -#: commands/typecmds.c:4373 +#: commands/typecmds.c:4381 #, c-format msgid "cannot change type's storage to PLAIN" msgstr "型の格納方式をPLAINには変更できません" -#: commands/typecmds.c:4466 +#: commands/typecmds.c:4474 #, c-format msgid "type attribute \"%s\" cannot be changed" msgstr "型の属性\"%s\"は変更できません" -#: commands/typecmds.c:4484 +#: commands/typecmds.c:4492 #, c-format msgid "must be superuser to alter a type" msgstr "型の変更を行うにはスーパーユーザーである必要があります" -#: commands/typecmds.c:4505 commands/typecmds.c:4514 +#: commands/typecmds.c:4513 commands/typecmds.c:4522 #, c-format 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:17467 gram.y:17513 utils/adt/acl.c:5690 utils/adt/acl.c:5696 +#: 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が設定されていません" @@ -12742,7 +12748,7 @@ 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:864 commands/variable.c:867 commands/variable.c:983 commands/variable.c:986 utils/adt/acl.c:366 utils/adt/acl.c:386 utils/adt/acl.c:5545 utils/adt/acl.c:5593 utils/adt/acl.c:5621 utils/adt/acl.c:5640 utils/adt/regproc.c:1571 utils/init/miscinit.c:804 +#: 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\"は存在しません" @@ -12867,77 +12873,77 @@ 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:1325 +#: commands/user.c:2493 utils/adt/acl.c:1342 #, c-format msgid "dependent privileges exist" msgstr "依存する権限が存在します" -#: commands/user.c:2505 utils/adt/acl.c:1326 +#: commands/user.c:2494 utils/adt/acl.c:1343 #, c-format msgid "Use CASCADE to revoke them too." msgstr "これらも剥奪するにはCASCADEを使用してください" @@ -13329,7 +13335,7 @@ msgstr "パラメータの型%d(%s)が実行計画(%s)を準備する時点と msgid "no value found for parameter %d" msgstr "パラメータ%dの値がありません" -#: executor/execExpr.c:667 executor/execExpr.c:674 executor/execExpr.c:680 executor/execExprInterp.c:5440 executor/execExprInterp.c:5457 executor/execExprInterp.c:5556 executor/nodeModifyTable.c:211 executor/nodeModifyTable.c:230 executor/nodeModifyTable.c:247 executor/nodeModifyTable.c:257 executor/nodeModifyTable.c:267 +#: 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 "テーブルの行型と問い合わせで指定した行型が一致しません" @@ -13344,12 +13350,12 @@ msgstr "問い合わせの列が多すぎます" msgid "Query provides a value for a dropped column at ordinal position %d." msgstr "問い合わせで %d 番目に削除される列の値を指定しています。" -#: executor/execExpr.c:681 executor/execExprInterp.c:5458 executor/nodeModifyTable.c:258 +#: 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 "テーブルでは %2$d 番目の型は %1$s ですが、問い合わせでは %3$s を想定しています。" -#: executor/execExpr.c:1157 parser/parse_agg.c:843 +#: executor/execExpr.c:1157 parser/parse_agg.c:869 #, c-format msgid "window function calls cannot be nested" msgstr "ウィンドウ関数の呼び出しを入れ子にすることはできません" @@ -13370,7 +13376,7 @@ msgid "cannot pass more than %d argument to a function" msgid_plural "cannot pass more than %d arguments to a function" msgstr[0] "関数に%dを超える引数を渡せません" -#: executor/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 "このコンテキストで集合値の関数は集合を受け付けられません" @@ -13467,13 +13473,13 @@ msgstr "指定されたパスに対応するSQL/JSON項目が見つかりませ msgid "could not coerce %s expression (%s) to the RETURNING type" msgstr "%s式(%s)をRETURNING型に強制変換できませんでした" -#: executor/execExprInterp.c:5441 +#: 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." msgstr[0] "テーブル行には%d属性ありますが、問い合わせでは%dを想定しています。" -#: executor/execExprInterp.c:5557 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の削除された属性における物理格納形式が一致しません。" @@ -13518,137 +13524,137 @@ msgstr "キーが既存のキーと衝突しています" msgid "empty WITHOUT OVERLAPS value found in column \"%s\" in relation \"%s\"" msgstr "リレーション\"%2$s\"の列\"%1$s\"に空のWITHOUT OVERLAPS値が見つかりました" -#: executor/execMain.c:1067 +#: executor/execMain.c:1085 #, c-format msgid "cannot change sequence \"%s\"" msgstr "シーケンス\"%s\"を変更できません" -#: executor/execMain.c:1073 +#: executor/execMain.c:1091 #, c-format msgid "cannot change TOAST relation \"%s\"" msgstr "TOASTリレーション\"%s\"を変更できません" -#: executor/execMain.c:1092 +#: executor/execMain.c:1110 #, c-format msgid "cannot change materialized view \"%s\"" msgstr "実体化ビュー\"%s\"を変更できません" -#: executor/execMain.c:1104 +#: executor/execMain.c:1122 #, c-format msgid "cannot insert into foreign table \"%s\"" msgstr "外部テーブル\"%s\"への挿入ができません" -#: executor/execMain.c:1110 +#: executor/execMain.c:1128 #, c-format msgid "foreign table \"%s\" does not allow inserts" msgstr "外部テーブル\"%s\"は挿入を許しません" -#: executor/execMain.c:1117 +#: executor/execMain.c:1135 #, c-format msgid "cannot update foreign table \"%s\"" msgstr "外部テーブル \"%s\"の更新ができません" -#: executor/execMain.c:1123 +#: executor/execMain.c:1141 #, c-format msgid "foreign table \"%s\" does not allow updates" msgstr "外部テーブル\"%s\"は更新を許しません" -#: executor/execMain.c:1130 +#: executor/execMain.c:1148 #, c-format msgid "cannot delete from foreign table \"%s\"" msgstr "外部テーブル\"%s\"からの削除ができません" -#: executor/execMain.c:1136 +#: executor/execMain.c:1154 #, c-format msgid "foreign table \"%s\" does not allow deletes" msgstr "外部テーブル\"%s\"は削除を許しません" -#: executor/execMain.c:1147 +#: executor/execMain.c:1165 #, c-format msgid "cannot change relation \"%s\"" msgstr "リレーション\"%s\"を変更できません" -#: executor/execMain.c:1174 +#: executor/execMain.c:1192 #, c-format msgid "cannot lock rows in sequence \"%s\"" msgstr "シーケンス\"%s\"では行のロックはできません" -#: executor/execMain.c:1181 +#: executor/execMain.c:1199 #, c-format msgid "cannot lock rows in TOAST relation \"%s\"" msgstr "TOAST リレーション\"%s\"では行のロックはできません" -#: executor/execMain.c:1188 +#: executor/execMain.c:1206 #, c-format msgid "cannot lock rows in view \"%s\"" msgstr "ビュー\"%s\"では行のロックはできません" -#: executor/execMain.c:1196 +#: executor/execMain.c:1214 #, c-format msgid "cannot lock rows in materialized view \"%s\"" msgstr "実体化ビュー\"%s\"では行のロックはできません" -#: executor/execMain.c:1205 executor/execMain.c:2837 executor/nodeLockRows.c:135 +#: 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:1211 +#: executor/execMain.c:1229 #, c-format msgid "cannot lock rows in relation \"%s\"" msgstr "リレーション\"%s\"では行のロックはできません" -#: executor/execMain.c:1934 +#: executor/execMain.c:1962 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "リレーション\"%s\"の新しい行はパーティション制約に違反しています" -#: executor/execMain.c:1936 executor/execMain.c:2048 executor/execMain.c:2186 executor/execMain.c:2294 +#: 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:2046 +#: executor/execMain.c:2074 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "リレーション\"%s\"の新しい行は検査制約\"%s\"に違反しています" -#: executor/execMain.c:2183 +#: executor/execMain.c:2211 #, c-format msgid "null value in column \"%s\" of relation \"%s\" violates not-null constraint" msgstr "リレーション\"%2$s\"の列\"%1$s\"のNULL値が非NULL制約に違反しています" -#: executor/execMain.c:2292 +#: executor/execMain.c:2320 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "新しい行はビュー\"%s\"のチェックオプションに違反しています" -#: executor/execMain.c:2302 +#: executor/execMain.c:2330 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "新しい行はテーブル\"%2$s\"行レベルセキュリティポリシ\"%1$s\"に違反しています" -#: executor/execMain.c:2307 +#: executor/execMain.c:2335 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "新しい行はテーブル\"%s\"の行レベルセキュリティポリシに違反しています" -#: executor/execMain.c:2315 +#: executor/execMain.c:2343 #, c-format msgid "target row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "ターゲットの行はテーブル\"%s\"の行レベルセキュリティポリシ\"%s\"(USING式)に違反しています" -#: executor/execMain.c:2320 +#: executor/execMain.c:2348 #, c-format msgid "target row violates row-level security policy (USING expression) for table \"%s\"" msgstr "ターゲットの行はテーブル\"%s\"の行レベルセキュリティポリシ(USING式)に違反しています" -#: executor/execMain.c:2327 +#: executor/execMain.c:2355 #, c-format msgid "new row violates row-level security policy \"%s\" (USING expression) for table \"%s\"" msgstr "新しい行はテーブル\"%1$s\"の行レベルセキュリティポリシ\"%2$s\"(USING式)に違反しています" -#: executor/execMain.c:2332 +#: executor/execMain.c:2360 #, c-format msgid "new row violates row-level security policy (USING expression) for table \"%s\"" msgstr "新しい行はテーブル\"%s\"の行レベルセキュリティポリシ(USING式)に違反しています" @@ -13789,84 +13795,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 "SQL関数では%sは使用不可です" #. 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 "volatile関数以外では%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 "最後のステートメントはちょうど1列を返さなければなりません。" -#: 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 "最後のステートメントが列%3$dで%2$sではなく%1$sを返しました。" -#: 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関数でサポートされていません" @@ -13926,58 +13932,58 @@ msgstr "問い合わせで %d 番目に生成列の値を指定しています msgid "Query has too few columns." msgstr "問い合わせの列が少なすぎます。" -#: executor/nodeModifyTable.c:1685 executor/nodeModifyTable.c:1759 +#: 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:1958 +#: executor/nodeModifyTable.c:1959 #, c-format msgid "invalid ON UPDATE specification" msgstr "不正な ON UPDATE 指定です" -#: executor/nodeModifyTable.c:1959 +#: executor/nodeModifyTable.c:1960 #, c-format msgid "The result tuple would appear in a different partition than the original tuple." msgstr "結果タプルをもとのパーティションではなく異なるパーティションに追加しようとしました。" -#: executor/nodeModifyTable.c:2415 +#: 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:2416 +#: executor/nodeModifyTable.c:2418 #, c-format msgid "A foreign key points to ancestor \"%s\" but not the root ancestor \"%s\"." msgstr "外部キーがパーティションルートテーブル\"%2$s\"ではなくパーティション親テーブル\"%1$s\"を指しています。" -#: executor/nodeModifyTable.c:2419 +#: 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:2786 executor/nodeModifyTable.c:3335 executor/nodeModifyTable.c:3505 +#: executor/nodeModifyTable.c:2788 executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3508 #, c-format msgid "%s command cannot affect row a second time" msgstr "%sコマンドは単一の行に2度は適用できません" -#: executor/nodeModifyTable.c:2788 +#: 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:3328 executor/nodeModifyTable.c:3498 +#: executor/nodeModifyTable.c:3330 executor/nodeModifyTable.c:3501 #, c-format msgid "tuple to be updated or deleted was already modified by an operation triggered by the current command" msgstr "更新または削除対象のタプルは、現在のコマンドによって発火した操作トリガーによってすでに更新されています" -#: executor/nodeModifyTable.c:3337 executor/nodeModifyTable.c:3507 +#: executor/nodeModifyTable.c:3339 executor/nodeModifyTable.c:3510 #, c-format msgid "Ensure that not more than one source row matches any one target row." msgstr "ソース行が2行以上ターゲット行に合致しないようにしてください。" -#: executor/nodeModifyTable.c:3406 +#: executor/nodeModifyTable.c:3408 #, c-format msgid "tuple to be merged was already moved to another partition due to concurrent update" msgstr "マージ対象のタプルは同時に行われた更新によってすでに他の子テーブルに移動されています" @@ -13992,7 +13998,7 @@ msgstr "TABLESAMPLEパラメータにnullは指定できません" msgid "TABLESAMPLE REPEATABLE parameter cannot be null" msgstr "TABLESAMPLE REPEATABLE パラメータにnullは指定できません" -#: 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 "式として使用された副問い合わせが2行以上の行を返しました" @@ -14098,7 +14104,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 "スクロール可能カーソルは読み取り専用である必要があります。" @@ -14139,7 +14145,7 @@ msgstr "共有メモリキューにタプルを送出できませんでした" msgid "user mapping not found for user \"%s\", server \"%s\"" msgstr "ユーザー\"%s\"、サーバー\"%s\"に対するユーザーマッピングが見つかりません" -#: foreign/foreign.c:337 optimizer/plan/createplan.c:7291 optimizer/util/plancat.c:538 +#: foreign/foreign.c:337 optimizer/plan/createplan.c:7293 optimizer/util/plancat.c:539 #, c-format msgid "access to non-system foreign table is restricted" msgstr "非システムの外部テーブルへのアクセスは制限されています" @@ -14189,365 +14195,370 @@ msgstr "タイムゾーンの間隔はHOURまたはHOUR TO MINUTEでなければ msgid "column number must be in range from 1 to %d" msgstr "列番号は1から%dまでの範囲でなければなりません" -#: gram.y:3119 +#: 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:3158 +#: gram.y:3164 #, c-format msgid "modulus for hash partition provided more than once" msgstr "ハッシュパーティションで法(除数)が2回以上指定されています" -#: gram.y:3167 +#: gram.y:3173 #, c-format msgid "remainder for hash partition provided more than once" msgstr "ハッシュパーティションで剰余が2回以上指定されています" -#: gram.y:3174 +#: gram.y:3180 #, c-format msgid "unrecognized hash partition bound specification \"%s\"" msgstr "ハッシュパーティションの境界条件\"%s\"が認識できません" -#: gram.y:3182 +#: gram.y:3188 #, c-format msgid "modulus for hash partition must be specified" msgstr "ハッシュパーティションでは法(除数)の指定が必要です" -#: gram.y:3187 +#: gram.y:3193 #, c-format msgid "remainder for hash partition must be specified" msgstr "ハッシュパーティションでは剰余の指定が必要です" -#: gram.y:3396 gram.y:3430 +#: gram.y:3402 gram.y:3436 #, c-format msgid "STDIN/STDOUT not allowed with PROGRAM" msgstr "STDIN/STDOUTはPROGRAMと同時に使用できません" -#: gram.y:3402 +#: gram.y:3408 #, c-format msgid "WHERE clause not allowed with COPY TO" msgstr "COPY TO で WHERE 句は使用できません" -#: gram.y:3750 gram.y:3757 gram.y:13162 gram.y:13170 +#: 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:4039 +#: gram.y:4045 #, c-format msgid "for a generated column, GENERATED ALWAYS must be specified" msgstr "生成カラムに対しては GENERATED ALWAYS の指定が必須です" -#: gram.y:4448 utils/adt/ri_triggers.c:2259 +#: gram.y:4454 utils/adt/ri_triggers.c:2259 #, c-format msgid "MATCH PARTIAL not yet implemented" msgstr "MMATCH PARTIAL はまだ実装されていません" -#: gram.y:4540 +#: gram.y:4546 #, c-format msgid "a column list with %s is only supported for ON DELETE actions" msgstr "%sが指定された列リストはON DELETEのアクションに対してのみサポートされます" -#: gram.y:5259 +#: gram.y:5265 #, c-format msgid "CREATE EXTENSION ... FROM is no longer supported" msgstr "CREATE EXTENSION ... FROM はすでにサポートされていません" -#: gram.y:5957 +#: gram.y:5963 #, c-format msgid "unrecognized row security option \"%s\"" msgstr "認識できない行セキュリティオプション \"%s\"" -#: gram.y:5958 +#: gram.y:5964 #, c-format msgid "Only PERMISSIVE or RESTRICTIVE policies are supported currently." msgstr "現時点ではPERMISSIVEもしくはRESTRICTIVEポリシのみがサポートされています" -#: gram.y:6043 +#: gram.y:6049 #, c-format msgid "CREATE OR REPLACE CONSTRAINT TRIGGER is not supported" msgstr "CREATE OR REPLACE CONSTRAINT TRIGGERはサポートされません" -#: gram.y:6081 +#: gram.y:6087 msgid "duplicate trigger events specified" msgstr "重複したトリガーイベントが指定されました" -#: gram.y:6223 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でなければなりません" -#: gram.y:6231 +#: gram.y:6237 #, c-format msgid "conflicting constraint properties" msgstr "制約属性の競合" -#: gram.y:6332 +#: gram.y:6338 #, c-format msgid "CREATE ASSERTION is not yet implemented" msgstr "CREATE ASSERTIONはまだ実装されていません" -#: gram.y:6650 +#: gram.y:6656 #, c-format msgid "dropping an enum value is not implemented" msgstr "列挙型の値の削除は実装されていません" -#: gram.y:8630 +#: gram.y:8636 #, c-format msgid "aggregates cannot have output arguments" msgstr "集約は出力の引数を持つことができません" -#: gram.y:9094 utils/adt/regproc.c:670 +#: gram.y:9100 utils/adt/regproc.c:670 #, c-format msgid "missing argument" msgstr "引数が足りません" -#: gram.y:9095 utils/adt/regproc.c:671 +#: gram.y:9101 utils/adt/regproc.c:671 #, c-format msgid "Use NONE to denote the missing argument of a unary operator." msgstr "単項演算子の存在しない引数を表すにはNONEを使用してください。" -#: gram.y:11323 gram.y:11342 +#: gram.y:11329 gram.y:11348 #, c-format msgid "WITH CHECK OPTION not supported on recursive views" msgstr "WITH CHECK OPTIONは再帰ビューではサポートされていません" -#: gram.y:13309 +#: gram.y:13315 #, c-format msgid "LIMIT #,# syntax is not supported" msgstr "LIMIT #,#構文は実装されていません" -#: gram.y:13310 +#: gram.y:13316 #, c-format msgid "Use separate LIMIT and OFFSET clauses." msgstr "分割してLIMITとOFFSET句を使用してください" -#: gram.y:14197 +#: gram.y:14203 #, c-format msgid "only one DEFAULT value is allowed" msgstr "DEFAULT値は一つだけ指定可能です" -#: gram.y:14206 +#: gram.y:14212 #, c-format msgid "only one PATH value per column is allowed" msgstr "列一つにつきPATH値は一つだけ指定可能です" -#: gram.y:14215 +#: gram.y:14221 #, c-format msgid "conflicting or redundant NULL / NOT NULL declarations for column \"%s\"" msgstr "列\"%s\"でNULL / NOT NULL宣言が衝突しているか重複しています" -#: gram.y:14224 +#: gram.y:14230 #, c-format msgid "unrecognized column option \"%s\"" msgstr "認識できない列オプション \"%s\"" -#: gram.y:14257 +#: gram.y:14263 #, c-format msgid "option name \"%s\" cannot be used in XMLTABLE" msgstr "オプション名 \"%s\" は XMLTABLE の中では使用できません" -#: gram.y:14313 +#: gram.y:14319 #, c-format msgid "only string constants are supported in JSON_TABLE path specification" msgstr "JSON_TABLEパス指定では文字列定数のみがサポートされます" -#: gram.y:14635 +#: gram.y:14641 #, c-format msgid "precision for type float must be at least 1 bit" msgstr "浮動小数点数の型の精度は最低でも1ビット必要です" -#: gram.y:14644 +#: gram.y:14650 #, c-format msgid "precision for type float must be less than 54 bits" msgstr "浮動小数点型の精度は54ビットより低くなければなりません" -#: gram.y:15161 +#: gram.y:15167 #, c-format msgid "wrong number of parameters on left side of OVERLAPS expression" msgstr "OVERLAPS式の左辺のパラメータ数が間違っています" -#: gram.y:15166 +#: gram.y:15172 #, c-format msgid "wrong number of parameters on right side of OVERLAPS expression" msgstr "OVERLAPS式の右辺のパラメータ数が間違っています" -#: gram.y:15344 +#: gram.y:15350 #, c-format msgid "UNIQUE predicate is not yet implemented" msgstr "UNIQUE 述部はまだ実装されていません" -#: gram.y:15758 +#: gram.y:15764 #, c-format msgid "cannot use multiple ORDER BY clauses with WITHIN GROUP" msgstr "複数のORDER BY句はWITHIN GROUPと一緒には使用できません" -#: gram.y:15763 +#: gram.y:15769 #, c-format msgid "cannot use DISTINCT with WITHIN GROUP" msgstr "DISTINCT は WITHIN GROUP と同時には使えません" -#: gram.y:15768 +#: gram.y:15774 #, c-format msgid "cannot use VARIADIC with WITHIN GROUP" msgstr "VARIADIC は WITHIN GROUP と同時には使えません" -#: gram.y:16495 gram.y:16519 +#: gram.y:16501 gram.y:16525 #, c-format msgid "frame start cannot be UNBOUNDED FOLLOWING" msgstr "フレームの開始は UNBOUNDED FOLLOWING であってはなりません" -#: gram.y:16500 +#: gram.y:16506 #, c-format msgid "frame starting from following row cannot end with current row" msgstr "次の行から始まるフレームは、現在行では終了できません" -#: gram.y:16524 +#: gram.y:16530 #, c-format msgid "frame end cannot be UNBOUNDED PRECEDING" msgstr "フレームの終了は UNBOUNDED PRECEDING であってはなりません" -#: gram.y:16530 +#: gram.y:16536 #, c-format msgid "frame starting from current row cannot have preceding rows" msgstr "現在行から始まるフレームは、先行する行を含むことができません" -#: gram.y:16537 +#: gram.y:16543 #, c-format msgid "frame starting from following row cannot have preceding rows" msgstr "次の行から始まるフレームは、先行する行を含むことができません" -#: gram.y:17075 +#: gram.y:17081 #, c-format msgid "unrecognized JSON encoding: %s" msgstr "不明なJSON符号化方式: \"%s\"" -#: gram.y:17400 +#: gram.y:17406 #, c-format msgid "type modifier cannot have parameter name" msgstr "型修正子はパラメータ名を持つことはできません" -#: gram.y:17406 +#: gram.y:17412 #, c-format msgid "type modifier cannot have ORDER BY" msgstr "型修正子はORDER BYを持つことはできません" -#: gram.y:17474 gram.y:17481 gram.y:17488 +#: 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:17578 gram.y:19068 +#: 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:18761 gram.y:18936 +#: gram.y:18767 gram.y:18942 msgid "improper use of \"*\"" msgstr "\"*\"の使い方が不適切です" -#: gram.y:18899 gram.y:18916 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 tsearch/spell.c:965 tsearch/spell.c:982 tsearch/spell.c:999 tsearch/spell.c:1016 tsearch/spell.c:1082 #, c-format msgid "syntax error" msgstr "構文エラー" -#: gram.y:19000 +#: 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:19037 +#: gram.y:19043 #, c-format msgid "multiple ORDER BY clauses not allowed" msgstr "複数のORDER BY句は使用できません" -#: gram.y:19048 +#: gram.y:19054 #, c-format msgid "multiple OFFSET clauses not allowed" msgstr "複数のOFFSET句は使用できません" -#: gram.y:19057 +#: gram.y:19063 #, c-format msgid "multiple LIMIT clauses not allowed" msgstr "複数のLIMIT句は使用できません" -#: gram.y:19093 +#: gram.y:19099 #, c-format msgid "multiple WITH clauses not allowed" msgstr "複数の WITH 句は使用できません" -#: gram.y:19289 +#: gram.y:19295 #, c-format msgid "OUT and INOUT arguments aren't allowed in TABLE functions" msgstr "テーブル関数では OUT と INOUT 引数は使用できません" -#: gram.y:19423 +#: gram.y:19429 #, c-format msgid "multiple COLLATE clauses not allowed" msgstr "複数の COLLATE 句は使用できません" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19463 gram.y:19476 +#: gram.y:19469 gram.y:19482 #, c-format msgid "%s constraints cannot be marked DEFERRABLE" msgstr "%s制約は遅延可能にはできません" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19489 +#: 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:19502 +#: gram.y:19508 #, c-format msgid "%s constraints cannot be marked NO INHERIT" msgstr "%s制約をNO INHERITをマークすることはできません" #. translator: %s is CHECK, UNIQUE, or similar -#: gram.y:19515 +#: 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:19537 +#: gram.y:19543 #, c-format msgid "%s constraints cannot be marked ENFORCED" msgstr "%s制約をENFORCEDとマークすることはできません" -#: gram.y:19559 +#: gram.y:19565 #, c-format msgid "unrecognized partitioning strategy \"%s\"" msgstr "識別できないパーティションストラテジ \"%s\"" -#: gram.y:19583 +#: gram.y:19589 #, c-format msgid "invalid publication object list" msgstr "不正なパブリケーションオブジェクトリスト" -#: gram.y:19584 +#: 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:19600 +#: gram.y:19606 #, c-format msgid "invalid table name" msgstr "不正なテーブル名" -#: gram.y:19621 +#: gram.y:19627 #, c-format msgid "WHERE clause not allowed for schema" msgstr "WHERE句はスキーマに対しては使用できません" -#: gram.y:19628 +#: gram.y:19634 #, c-format msgid "column specification not allowed for schema" msgstr "列指定はスキーマに対しては使用できません" -#: gram.y:19642 +#: gram.y:19648 #, c-format msgid "invalid schema name" msgstr "不正なスキーマ名" @@ -14820,7 +14831,7 @@ msgstr "バリデータがロードされていない状態で、OAuthトーク msgid "internal error in OAuth validator module" msgstr "OAuthバリデータの内部エラー" -#: libpq/auth-oauth.c:679 libpq/auth-oauth.c:703 libpq/auth.c:294 +#: 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 "ユーザー \"%s\" の OAuth Bearer 認証に失敗しました" @@ -14997,549 +15008,549 @@ msgstr "client-final-message 中の proof の形式が不正です" msgid "Garbage found at the end of client-final-message." msgstr "client-final-message の終端に不要なデータがあります。" -#: libpq/auth.c:254 +#: libpq/auth.c:262 #, c-format msgid "authentication failed for user \"%s\": host rejected" msgstr "ユーザー\"%s\"の認証に失敗しました: ホストを拒絶しました" -#: libpq/auth.c:257 +#: libpq/auth.c:265 #, c-format msgid "\"trust\" authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"の\"trust\"認証に失敗しました" -#: libpq/auth.c:260 +#: libpq/auth.c:268 #, c-format msgid "Ident authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のIdent認証に失敗しました" -#: libpq/auth.c:263 +#: libpq/auth.c:271 #, c-format msgid "Peer authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"で対向(peer)認証に失敗しました" -#: libpq/auth.c:268 +#: libpq/auth.c:276 #, c-format msgid "password authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のパスワード認証に失敗しました" -#: libpq/auth.c:273 +#: libpq/auth.c:281 #, c-format msgid "GSSAPI authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のGSSAPI認証に失敗しました" -#: libpq/auth.c:276 +#: libpq/auth.c:284 #, c-format msgid "SSPI authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のSSPI認証に失敗しました" -#: libpq/auth.c:279 +#: libpq/auth.c:287 #, c-format msgid "PAM authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のPAM認証に失敗しました" -#: libpq/auth.c:282 +#: libpq/auth.c:290 #, c-format msgid "BSD authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のBSD認証に失敗しました" -#: libpq/auth.c:285 +#: libpq/auth.c:293 #, c-format msgid "LDAP authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"のLDAP認証に失敗しました" -#: libpq/auth.c:288 +#: libpq/auth.c:296 #, c-format msgid "certificate authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"の証明書認証に失敗しました" -#: libpq/auth.c:291 +#: libpq/auth.c:299 #, c-format msgid "RADIUS authentication failed for user \"%s\"" msgstr "ユーザー\"%s\"の RADIUS 認証に失敗しました" -#: libpq/auth.c:297 +#: libpq/auth.c:305 #, c-format msgid "authentication failed for user \"%s\": invalid authentication method" msgstr "ユーザー\"%s\"の認証に失敗しました: 認証方式が不正です" -#: libpq/auth.c:301 +#: libpq/auth.c:309 #, c-format msgid "Connection matched file \"%s\" line %d: \"%s\"" msgstr "接続はファイル%sの行%dに一致しました: \"%s\"" -#: libpq/auth.c:346 +#: libpq/auth.c:354 #, c-format msgid "authentication identifier set more than once" msgstr "認証識別子が2度以上設定されました" -#: libpq/auth.c:347 +#: libpq/auth.c:355 #, c-format msgid "previous identifier: \"%s\"; new identifier: \"%s\"" msgstr "以前の識別子: \"%s\"; 新しい識別子: \"%s\"" -#: libpq/auth.c:357 +#: libpq/auth.c:365 #, c-format msgid "connection authenticated: identity=\"%s\" method=%s (%s:%d)" msgstr "接続認証完了: 識別名=\"%s\" 方式=%s (%s:%d)" -#: libpq/auth.c:397 +#: libpq/auth.c:405 #, c-format msgid "client certificates can only be checked if a root certificate store is available" msgstr "クライアント証明書はルート証明書ストアが利用できる場合にのみ検証されます" -#: libpq/auth.c:408 +#: libpq/auth.c:416 #, c-format msgid "connection requires a valid client certificate" msgstr "この接続には有効なクライアント証明が必要です" -#: libpq/auth.c:439 libpq/auth.c:485 +#: libpq/auth.c:447 libpq/auth.c:493 msgid "GSS encryption" msgstr "GSS暗号化" -#: libpq/auth.c:442 libpq/auth.c:488 +#: libpq/auth.c:450 libpq/auth.c:496 msgid "SSL encryption" msgstr "SSL暗号化" -#: libpq/auth.c:444 libpq/auth.c:490 +#: libpq/auth.c:452 libpq/auth.c:498 msgid "no encryption" msgstr "暗号化なし" #. translator: last %s describes encryption state -#: libpq/auth.c:450 +#: 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:457 +#: 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:495 +#: libpq/auth.c:503 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup matches." msgstr "クライアントIPアドレスは\"%s\"に解決され、前方検索と一致しました。" -#: libpq/auth.c:498 +#: libpq/auth.c:506 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup not checked." msgstr "クライアントIPアドレスは\"%s\"に解決されました。前方検索は検査されません。" -#: libpq/auth.c:501 +#: libpq/auth.c:509 #, c-format msgid "Client IP address resolved to \"%s\", forward lookup does not match." msgstr "クライアントIPアドレスは\"%s\"に解決され、前方検索と一致しませんでした。" -#: libpq/auth.c:504 +#: 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:509 +#: 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:517 +#: 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:525 +#: 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:649 +#: libpq/auth.c:657 #, c-format msgid "connection authenticated: user=\"%s\" method=%s (%s:%d)" msgstr "接続認証完了: ユーザー=\"%s\" 方式=%s (%s:%d)" -#: libpq/auth.c:718 +#: libpq/auth.c:726 #, c-format msgid "expected password response, got message type %d" msgstr "パスワード応答を想定しましたが、メッセージタイプ%dを受け取りました" -#: libpq/auth.c:739 +#: libpq/auth.c:747 #, c-format msgid "invalid password packet size" msgstr "パスワードパケットのサイズが不正です" -#: libpq/auth.c:757 +#: libpq/auth.c:765 #, c-format msgid "empty password returned by client" msgstr "クライアントから空のパスワードが返されました" -#: libpq/auth.c:885 +#: libpq/auth.c:893 #, c-format msgid "could not generate random MD5 salt" msgstr "ランダムなMD5ソルトの生成に失敗しました" -#: libpq/auth.c:936 libpq/be-secure-gssapi.c:553 +#: libpq/auth.c:944 libpq/be-secure-gssapi.c:553 #, c-format msgid "could not set environment: %m" msgstr "環境を設定できません: %m" -#: libpq/auth.c:975 +#: libpq/auth.c:983 #, c-format msgid "expected GSS response, got message type %d" msgstr "GSS応答を想定しましたが、メッセージタイプ %d を受け取りました" -#: libpq/auth.c:1041 +#: libpq/auth.c:1049 msgid "accepting GSS security context failed" msgstr "GSSセキュリティコンテキストの受け付けに失敗しました" -#: libpq/auth.c:1082 +#: libpq/auth.c:1090 msgid "retrieving GSS user name failed" msgstr "GSSユーザー名の受信に失敗しました" -#: libpq/auth.c:1228 +#: libpq/auth.c:1236 msgid "could not acquire SSPI credentials" msgstr "SSPIの資格ハンドルを入手できませんでした" -#: libpq/auth.c:1253 +#: libpq/auth.c:1261 #, c-format msgid "expected SSPI response, got message type %d" msgstr "SSPI応答を想定しましたが、メッセージタイプ%dを受け取りました" -#: libpq/auth.c:1331 +#: libpq/auth.c:1339 msgid "could not accept SSPI security context" msgstr "SSPIセキュリティコンテキストを受け付けられませんでした" -#: libpq/auth.c:1372 +#: libpq/auth.c:1380 msgid "could not get token from SSPI security context" msgstr "SSPIセキュリティコンテキストからトークンを入手できませんでした" -#: libpq/auth.c:1508 libpq/auth.c:1527 +#: libpq/auth.c:1516 libpq/auth.c:1535 #, c-format msgid "could not translate name" msgstr "名前の変換ができませんでした" -#: libpq/auth.c:1540 +#: libpq/auth.c:1548 #, c-format msgid "realm name too long" msgstr "realm名が長すぎます" -#: libpq/auth.c:1555 +#: libpq/auth.c:1563 #, c-format msgid "translated account name too long" msgstr "変換後のアカウント名が長すぎます" -#: libpq/auth.c:1734 +#: libpq/auth.c:1742 #, c-format msgid "could not create socket for Ident connection: %m" msgstr "Ident接続用のソケットを作成できませんでした: %m" -#: libpq/auth.c:1749 +#: libpq/auth.c:1757 #, c-format msgid "could not bind to local address \"%s\": %m" msgstr "ローカルアドレス\"%s\"にバインドできませんでした: %m" -#: libpq/auth.c:1761 +#: libpq/auth.c:1769 #, c-format msgid "could not connect to Ident server at address \"%s\", port %s: %m" msgstr "アドレス\"%s\"、ポート%sのIdentサーバーに接続できませんでした: %m" -#: libpq/auth.c:1783 +#: libpq/auth.c:1791 #, c-format msgid "could not send query to Ident server at address \"%s\", port %s: %m" msgstr "アドレス\"%s\"、ポート%sのIdentサーバーに問い合わせを送信できませんでした: %m" -#: libpq/auth.c:1800 +#: libpq/auth.c:1808 #, c-format msgid "could not receive response from Ident server at address \"%s\", port %s: %m" msgstr "アドレス\"%s\"、ポート%sのIdentサーバーからの応答を受信できませんでした: %m" -#: libpq/auth.c:1810 +#: libpq/auth.c:1818 #, c-format msgid "invalidly formatted response from Ident server: \"%s\"" msgstr "Identサーバーからの応答の書式が不正です: \"%s\"" -#: libpq/auth.c:1866 +#: libpq/auth.c:1874 #, c-format msgid "peer authentication is not supported on this platform" msgstr "このプラットフォームでは対向(peer)認証はサポートされていません" -#: libpq/auth.c:1870 +#: libpq/auth.c:1878 #, c-format msgid "could not get peer credentials: %m" msgstr "ピアの資格証明を入手できませんでした: %m" -#: libpq/auth.c:1880 +#: libpq/auth.c:1888 #, c-format msgid "could not look up local user ID %ld: %m" msgstr "ローカルユーザーID %ldの参照に失敗しました: %m" -#: libpq/auth.c:1886 +#: libpq/auth.c:1894 #, c-format msgid "local user with ID %ld does not exist" msgstr "ID %ld を持つローカルユーザーは存在しません" -#: libpq/auth.c:1986 +#: libpq/auth.c:1994 #, c-format msgid "error from underlying PAM layer: %s" msgstr "背後のPAM層でエラーがありました: %s" -#: libpq/auth.c:1997 +#: libpq/auth.c:2005 #, c-format msgid "unsupported PAM conversation %d/\"%s\"" msgstr "非サポートのPAM変換%d/\"%s\"" -#: libpq/auth.c:2054 +#: libpq/auth.c:2062 #, c-format msgid "could not create PAM authenticator: %s" msgstr "PAM authenticatorを作成できませんでした: %s" -#: libpq/auth.c:2065 +#: libpq/auth.c:2073 #, c-format msgid "pam_set_item(PAM_USER) failed: %s" msgstr "pam_set_item(PAM_USER)が失敗しました: %s" -#: libpq/auth.c:2097 +#: libpq/auth.c:2105 #, c-format msgid "pam_set_item(PAM_RHOST) failed: %s" msgstr "pam_set_item(PAM_RHOST)が失敗しました: %s" -#: libpq/auth.c:2109 +#: libpq/auth.c:2117 #, c-format msgid "pam_set_item(PAM_CONV) failed: %s" msgstr "\"pam_set_item(PAM_CONV)が失敗しました: %s" -#: libpq/auth.c:2122 +#: libpq/auth.c:2130 #, c-format msgid "pam_authenticate failed: %s" msgstr "\"pam_authenticateが失敗しました: %s" -#: libpq/auth.c:2135 +#: libpq/auth.c:2143 #, c-format msgid "pam_acct_mgmt failed: %s" msgstr "pam_acct_mgmtが失敗しました: %s" -#: libpq/auth.c:2146 +#: libpq/auth.c:2154 #, c-format msgid "could not release PAM authenticator: %s" msgstr "PAM authenticatorを解放できませんでした: %s" -#: libpq/auth.c:2226 +#: libpq/auth.c:2234 #, c-format msgid "could not initialize LDAP: error code %d" msgstr "LDAPを初期化できませんでした: %d" -#: libpq/auth.c:2263 +#: libpq/auth.c:2271 #, c-format msgid "could not extract domain name from ldapbasedn" msgstr "ldapbasedn からドメイン名を抽出できませんでした" -#: libpq/auth.c:2271 +#: libpq/auth.c:2279 #, c-format msgid "LDAP authentication could not find DNS SRV records for \"%s\"" msgstr "LDAP認証で\"%s\"に対する DNS SRV レコードが見つかりませんでした" -#: libpq/auth.c:2273 +#: libpq/auth.c:2281 #, c-format msgid "Set an LDAP server name explicitly." msgstr "LDAPサーバー名を明示的に指定してください。" -#: libpq/auth.c:2325 +#: libpq/auth.c:2333 #, c-format msgid "could not initialize LDAP: %s" msgstr "LDAPを初期化できませんでした: %s" -#: libpq/auth.c:2335 +#: libpq/auth.c:2343 #, c-format msgid "ldaps not supported with this LDAP library" msgstr "この LDAP ライブラリでは ldaps はサポートされていません" -#: libpq/auth.c:2343 +#: libpq/auth.c:2351 #, c-format msgid "could not initialize LDAP: %m" msgstr "LDAPを初期化できませんでした: %m" -#: libpq/auth.c:2353 +#: libpq/auth.c:2361 #, c-format msgid "could not set LDAP protocol version: %s" msgstr "LDAPプロトコルバージョンを設定できませんでした: %s" -#: libpq/auth.c:2369 +#: libpq/auth.c:2377 #, c-format msgid "could not start LDAP TLS session: %s" msgstr "LDAP TLSセッションを開始できませんでした: %s" -#: libpq/auth.c:2446 +#: libpq/auth.c:2454 #, c-format msgid "LDAP server not specified, and no ldapbasedn" msgstr "LDAP サーバーも ldapbasedn も指定されていません" -#: libpq/auth.c:2453 +#: libpq/auth.c:2461 #, c-format msgid "LDAP server not specified" msgstr "LDAP サーバーの指定がありません" -#: libpq/auth.c:2515 +#: libpq/auth.c:2523 #, c-format msgid "invalid character in user name for LDAP authentication" msgstr "LDAP 認証でユーザー名の中に不正な文字があります" -#: libpq/auth.c:2532 +#: libpq/auth.c:2540 #, c-format msgid "could not perform initial LDAP bind for ldapbinddn \"%s\" on server \"%s\": %s" msgstr "サーバー\"%2$s\"で、ldapbinddn \"%1$s\"によるLDAPバインドを実行できませんでした: %3$s" -#: libpq/auth.c:2562 +#: libpq/auth.c:2570 #, c-format msgid "could not search LDAP for filter \"%s\" on server \"%s\": %s" msgstr "サーバー\"%2$s\"で、フィルタ\"%1$s\"によるLDAP検索ができませんでした: %3$s" -#: libpq/auth.c:2578 +#: libpq/auth.c:2586 #, c-format msgid "LDAP user \"%s\" does not exist" msgstr "LDAPサーバー\"%s\"は存在しません" -#: libpq/auth.c:2579 +#: libpq/auth.c:2587 #, c-format msgid "LDAP search for filter \"%s\" on server \"%s\" returned no entries." msgstr "サーバー\"%2$s\"で、フィルタ\"%1$s\"によるLDAP検索が何も返しませんでした。" -#: libpq/auth.c:2583 +#: libpq/auth.c:2591 #, c-format msgid "LDAP user \"%s\" is not unique" msgstr "LDAPユーザー\"%s\"は一意ではありません" -#: libpq/auth.c:2584 +#: 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." msgstr[0] "サーバー\"%2$s\"で、フィルタ\"%1$s\"によるLDAP検索が%3$d項目返しました。" -#: libpq/auth.c:2604 +#: libpq/auth.c:2612 #, c-format msgid "could not get dn for the first entry matching \"%s\" on server \"%s\": %s" msgstr "サーバー\"%2$s\"で\"%1$s\"にマッチする最初のエントリの dn を取得できません: %3$s" -#: libpq/auth.c:2631 +#: libpq/auth.c:2639 #, c-format msgid "LDAP login failed for user \"%s\" on server \"%s\": %s" msgstr "サーバー\"%2$s\"でユーザー\"%1$s\"のLDAPログインが失敗しました: %3$s" -#: libpq/auth.c:2663 +#: libpq/auth.c:2671 #, c-format msgid "LDAP diagnostics: %s" msgstr "LDAP診断: %s" -#: libpq/auth.c:2701 +#: libpq/auth.c:2709 #, c-format msgid "certificate authentication failed for user \"%s\": client certificate contains no user name" msgstr "ユーザー \"%s\" の証明書認証に失敗しました: クライアント証明書にユーザー名が含まれていません" -#: libpq/auth.c:2722 +#: libpq/auth.c:2730 #, c-format msgid "certificate authentication failed for user \"%s\": unable to retrieve subject DN" msgstr "ユーザー\"%s\"の証明書認証に失敗しました: サブジェクト識別名(DN)が取得できません" -#: libpq/auth.c:2745 +#: libpq/auth.c:2753 #, c-format msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": DN mismatch" msgstr "ユーザー\"%s\"に対する証明書の検証(clientcert=verify-full) に失敗しました: DN 不一致" -#: libpq/auth.c:2750 +#: libpq/auth.c:2758 #, c-format msgid "certificate validation (clientcert=verify-full) failed for user \"%s\": CN mismatch" msgstr "ユーザー\"%s\"に対する証明書の検証(clientcert=verify-full) に失敗しました: CN 不一致" -#: libpq/auth.c:2852 +#: libpq/auth.c:2860 #, c-format msgid "RADIUS server not specified" msgstr "RADIUS サーバーが指定されていません" -#: libpq/auth.c:2859 +#: libpq/auth.c:2867 #, c-format msgid "RADIUS secret not specified" msgstr "RADIUS secret が指定されていません" -#: libpq/auth.c:2873 +#: libpq/auth.c:2881 #, c-format msgid "RADIUS authentication does not support passwords longer than %d characters" msgstr "RADIUS認証では%d文字より長いパスワードはサポートしていません" -#: libpq/auth.c:2975 libpq/hba.c:2391 +#: 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:2989 +#: libpq/auth.c:2997 #, c-format msgid "could not generate random encryption vector" msgstr "ランダムな暗号化ベクトルを生成できませんでした" -#: libpq/auth.c:3026 +#: libpq/auth.c:3034 #, c-format msgid "could not perform MD5 encryption of password: %s" msgstr "パスワードのMD5暗号化に失敗しました: %s" -#: libpq/auth.c:3053 +#: libpq/auth.c:3061 #, c-format msgid "could not create RADIUS socket: %m" msgstr "RADIUSのソケットを作成できませんでした: %m" -#: libpq/auth.c:3069 +#: libpq/auth.c:3077 #, c-format msgid "could not bind local RADIUS socket: %m" msgstr "ローカルの RADIUS ソケットをバインドできませんでした: %m" -#: libpq/auth.c:3079 +#: libpq/auth.c:3087 #, c-format msgid "could not send RADIUS packet: %m" msgstr "RADIUS パケットを送信できませんでした: %m" -#: libpq/auth.c:3113 libpq/auth.c:3139 +#: libpq/auth.c:3121 libpq/auth.c:3147 #, c-format msgid "timeout waiting for RADIUS response from %s" msgstr "%sからのRADIUSの応答待ちがタイムアウトしました" -#: libpq/auth.c:3132 +#: libpq/auth.c:3140 #, c-format msgid "could not check status on RADIUS socket: %m" msgstr "RADIUSソケットの状態をチェックできませんでした: %m" -#: libpq/auth.c:3162 +#: libpq/auth.c:3170 #, c-format msgid "could not read RADIUS response: %m" msgstr "RADIUS応答を読めませんでした: %m" -#: libpq/auth.c:3170 +#: libpq/auth.c:3178 #, c-format msgid "RADIUS response from %s was sent from incorrect port: %d" msgstr "%sからのRADIUS応答が誤ったポートから送られてきました: %d" -#: libpq/auth.c:3178 +#: libpq/auth.c:3186 #, c-format msgid "RADIUS response from %s too short: %d" msgstr "%sからのRADIUS応答が短すぎます: %d" -#: libpq/auth.c:3185 +#: libpq/auth.c:3193 #, c-format msgid "RADIUS response from %s has corrupt length: %d (actual length %d)" msgstr "%sからのRADIUS応答が間違った長さを保持しています: %d(実際の長さは%d)" -#: libpq/auth.c:3193 +#: libpq/auth.c:3201 #, c-format msgid "RADIUS response from %s is to a different request: %d (should be %d)" msgstr "%sからのRADIUS応答は異なるリクエストに対するものです: %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 "%sからのRADIUS応答が間違ったMD5シグネチャを保持しています" -#: libpq/auth.c:3248 +#: libpq/auth.c:3256 #, c-format msgid "RADIUS response from %s has invalid code (%d) for user \"%s\"" msgstr "%1$sからのRADIUS応答がユーザー\"%3$s\"にとって不正なコード(%2$d)を保持しています" @@ -16776,12 +16787,12 @@ msgstr "拡張可能ノードタイプ\"%s\"はすでに存在します" msgid "ExtensibleNodeMethods \"%s\" was not registered" msgstr "ExtensibleNodeMethods \"%s\"は登録されていません" -#: nodes/makefuncs.c:154 nodes/makefuncs.c:180 statistics/extended_stats.c:2306 +#: 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: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の配列型がありませんでした" @@ -16801,7 +16812,7 @@ msgstr "パラメータを持つ無名ポータル: %s" msgid "FULL JOIN is only supported with merge-joinable or hash-joinable join conditions" msgstr "FULL JOIN はマージ結合可能もしくはハッシュ結合可能な場合のみサポートされています" -#: optimizer/plan/createplan.c:7313 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1689 +#: optimizer/plan/createplan.c:7315 parser/parse_merge.c:203 rewrite/rewriteHandler.c:1689 #, c-format msgid "cannot execute MERGE on relation \"%s\"" msgstr "リレーション\"%s\"に対してMERGEは実行できません" @@ -16813,42 +16824,42 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "外部結合のNULL可な側では%sを適用できません" #. translator: %s is a SQL row locking clause such as FOR UPDATE -#: optimizer/plan/planner.c:1462 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 "UNION/INTERSECT/EXCEPTでは%sを使用できません" -#: optimizer/plan/planner.c:2205 optimizer/plan/planner.c:4091 +#: optimizer/plan/planner.c:2257 optimizer/plan/planner.c:4143 #, c-format msgid "could not implement GROUP BY" msgstr "GROUP BY を実行できませんでした" -#: optimizer/plan/planner.c:2206 optimizer/plan/planner.c:4092 optimizer/plan/planner.c:4773 optimizer/prep/prepunion.c:1073 +#: optimizer/plan/planner.c:2258 optimizer/plan/planner.c:4144 optimizer/plan/planner.c:4825 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:4772 +#: optimizer/plan/planner.c:4824 #, c-format msgid "could not implement DISTINCT" msgstr "DISTINCTを実行できませんでした" -#: optimizer/plan/planner.c:6234 +#: optimizer/plan/planner.c:6286 #, c-format msgid "could not implement window PARTITION BY" msgstr "ウィンドウの PARTITION BY を実行できませんでした" -#: optimizer/plan/planner.c:6235 +#: optimizer/plan/planner.c:6287 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "ウィンドウ分割に使用する列は、ソート可能なデータ型でなければなりません。" -#: optimizer/plan/planner.c:6239 +#: optimizer/plan/planner.c:6291 #, c-format msgid "could not implement window ORDER BY" msgstr "ウィンドウの ORDER BY を実行できませんでした" -#: optimizer/plan/planner.c:6240 +#: optimizer/plan/planner.c:6292 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "ウィンドウの順序付けをする列は、ソート可能なデータ型でなければなりません。" @@ -16879,32 +16890,32 @@ msgstr "リレーション\"%2$s\"の属性\"%1$s\"は親での型と一致し 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 "リカバリ中は一時テーブルやUNLOGGEDテーブルにはアクセスできません" -#: 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 指定に合致するユニーク制約または排除制約がありません" @@ -16935,7 +16946,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に使用できません" @@ -17003,138 +17014,138 @@ 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 "保持可能カーソルは読み取り専用である必要があります。" #. 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 "INSENSITIVEカーソルは読み取り専用である必要があります。" -#: 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 "DISTINCT句では%sを使用できません" #. 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 "GROUP BY句で%sを使用できません" #. 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 "HAVING 句では%sを使用できません" #. 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 "%sでは非修飾のリレーション名を指定してください" #. 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を結合に使用できません" #. 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 "%sは名前付きタプルストアには適用できません" #. 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 "%2$s句のリレーション\"%1$s\"はFROM句にありません" @@ -17344,7 +17355,7 @@ msgstr "アウタレベルの集約は直接引数に低位の変数を含むこ 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:785 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項目に移動できるかもしれません。" @@ -17354,115 +17365,115 @@ msgstr "この集合返却関数をLATERAL FROM項目に移動できるかもし msgid "aggregate function calls cannot contain window function calls" msgstr "集約関数の呼び出しにウィンドウ関数の呼び出しを含むことはできません" -#: parser/parse_agg.c:869 +#: parser/parse_agg.c:895 msgid "window functions are not allowed in JOIN conditions" msgstr "JOIN条件ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:876 +#: parser/parse_agg.c:902 msgid "window functions are not allowed in functions in FROM" msgstr "FROM句内の関数ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:882 +#: parser/parse_agg.c:908 msgid "window functions are not allowed in policy expressions" msgstr "ポリシ式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:895 +#: parser/parse_agg.c:921 msgid "window functions are not allowed in window definitions" msgstr "ウィンドウ定義ではウィンドウ関数は使用できません" -#: parser/parse_agg.c:906 +#: parser/parse_agg.c:932 msgid "window functions are not allowed in MERGE WHEN conditions" msgstr "MERGE WHEN条件ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:931 +#: parser/parse_agg.c:957 msgid "window functions are not allowed in check constraints" msgstr "検査制約の中ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:935 +#: parser/parse_agg.c:961 msgid "window functions are not allowed in DEFAULT expressions" msgstr "DEFAULT式の中ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:938 +#: parser/parse_agg.c:964 msgid "window functions are not allowed in index expressions" msgstr "インデックス式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:941 +#: parser/parse_agg.c:967 msgid "window functions are not allowed in statistics expressions" msgstr "統計情報式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:944 +#: parser/parse_agg.c:970 msgid "window functions are not allowed in index predicates" msgstr "インデックス述語ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:947 +#: parser/parse_agg.c:973 msgid "window functions are not allowed in transform expressions" msgstr "変換式ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:950 +#: parser/parse_agg.c:976 msgid "window functions are not allowed in EXECUTE parameters" msgstr "EXECUTEパラメータではウィンドウ関数を使用できません" -#: parser/parse_agg.c:953 +#: parser/parse_agg.c:979 msgid "window functions are not allowed in trigger WHEN conditions" msgstr "トリガのWHEN条件ではウィンドウ関数を使用できません" -#: parser/parse_agg.c:956 +#: parser/parse_agg.c:982 msgid "window functions are not allowed in partition bound" msgstr "ウィンドウ関数はパーティション境界では使用できません" -#: parser/parse_agg.c:959 +#: parser/parse_agg.c:985 msgid "window functions are not allowed in partition key expressions" msgstr "パーティションキー式ではウィンドウ関数は使用できません" -#: parser/parse_agg.c:962 +#: parser/parse_agg.c:988 msgid "window functions are not allowed in CALL arguments" msgstr "CALLの引数ではウィンドウ関数は使用できません" -#: parser/parse_agg.c:965 +#: parser/parse_agg.c:991 msgid "window functions are not allowed in COPY FROM WHERE conditions" msgstr "ウィンドウ関数は COPY FROM の WHERE 条件では使用できません" -#: parser/parse_agg.c:968 +#: parser/parse_agg.c:994 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:1017 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:1051 parser/parse_clause.c:2804 #, c-format msgid "window \"%s\" does not exist" msgstr "ウィンドウ\"%s\"は存在しません" -#: parser/parse_agg.c:1115 +#: parser/parse_agg.c:1141 #, c-format msgid "too many grouping sets present (maximum 4096)" msgstr "グルーピングセットの数が多すぎます (最大4096)" -#: parser/parse_agg.c:1276 +#: parser/parse_agg.c:1302 #, 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:1525 #, 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:1502 +#: parser/parse_agg.c:1528 #, 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:1533 #, c-format msgid "subquery uses ungrouped column \"%s.%s\" from outer query" msgstr "外部問い合わせから副問い合わせがグループ化されていない列\"%s.%s\"を使用しています" -#: parser/parse_agg.c:1672 +#: parser/parse_agg.c:1698 #, c-format msgid "arguments to GROUPING must be grouping expressions of the associated query level" msgstr "GROUPINGの引数は関連するクエリレベルのグルーピング式でなければなりません" @@ -17737,7 +17748,7 @@ msgstr "offset PRECEDING/FOLLOWING を伴った RANGE は列型 %s とオフセ 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への型変換ができません" @@ -18067,328 +18078,328 @@ msgstr "再帰問い合わせ内の FOR UPDATE/SHARE は実装されていませ msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "問い合わせ\"%s\"への再帰参照が2回以上現れてはなりません" -#: parser/parse_expr.c:311 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "この文脈ではDEFAULTは使えません" -#: 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 "データ型%2$sの列\"%1$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 "列記法 .%sが型%sに使用されましたが、この型は複合型ではありません" -#: 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 "列参照はDEFAULT式では使用できません" -#: 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 "MERGE_ACTION()はMERGEコマンドのRETURNINGリストの中でのみ使用可能です" -#: 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 "列の数がVALUESの数と一致しません" -#: 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項目のソースは副問合せまたはROW()式でなければなりません" #. 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 "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:3784 +#: parser/parse_expr.c:1915 parser/parse_expr.c:3785 #, c-format msgid "subquery must return only one column" msgstr "副問い合わせは1列のみを返さなければなりません" -#: 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 "必要な型に明示的にキャストしてください。例: ARRAY[]::integer[]" -#: parser/parse_expr.c:2109 +#: parser/parse_expr.c:2110 #, c-format msgid "could not find element type for data type %s" 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 "長さ0の行を比較できません" -#: 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ではなくbooleanを返さなければなりません" -#: 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 "行比較演算子はbtree演算子族と関連付けされなければなりません。" -#: 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 "JSON ENCODING句は入力型がbyteaの場合にのみ使用可能です" -#: parser/parse_expr.c:3390 +#: parser/parse_expr.c:3391 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" 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 "非文字列型は明示的な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 "bytrea以外の出力型に対してはJSON符号化方式は設定できません" -#: 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 "JSON符号化方式ではUTF8のみがサポートされています。" -#: parser/parse_expr.c:3536 +#: parser/parse_expr.c:3537 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "SQL/JSON関数ではSETOF型の返却はサポートされていません" -#: 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 "bytrea以外の入力型に対しては JSON FORMAT ENCODING句は使用できません" -#: parser/parse_expr.c:4112 +#: parser/parse_expr.c:4113 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "JSON述語では型%sを使用できません" -#: 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()のRETURNING節では型%sは指定できません" -#: parser/parse_expr.c:4140 +#: parser/parse_expr.c:4141 #, c-format msgid "Try returning json or jsonb." 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 "非文字列型はWITH UNIQUE KEYS句とともには使用できません" -#: parser/parse_expr.c:4262 +#: parser/parse_expr.c:4263 #, c-format msgid "Try returning a string type or bytea." msgstr "文字列型またはBYTEA型での返却を試してください。" -#: parser/parse_expr.c:4327 +#: parser/parse_expr.c:4328 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "%s()のRETURNING節ではFORMAT JSONは指定できません" -#: parser/parse_expr.c:4340 +#: parser/parse_expr.c:4341 #, 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: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: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 #, 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:4358 parser/parse_expr.c:4387 #, 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式のみが使用可能です。" @@ -18396,67 +18407,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: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:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 parser/parse_expr.c:4451 parser/parse_expr.c:4477 #, 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:4368 parser/parse_expr.c:4397 #, 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:4415 +#: parser/parse_expr.c:4416 #, 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:4425 +#: parser/parse_expr.c:4426 #, 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:4443 parser/parse_expr.c:4469 +#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 #, 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:4453 parser/parse_expr.c:4479 +#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, 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:4509 +#: parser/parse_expr.c:4510 #, 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:4727 +#: parser/parse_expr.c:4750 #, c-format msgid "can only specify a constant, non-aggregate function, or operator expression for DEFAULT" msgstr "DEFAULTには定数、非集約関数、および演算子式のみ指定可能です" -#: parser/parse_expr.c:4732 +#: parser/parse_expr.c:4755 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "DEFAULT式は列参照を含むことができません" -#: parser/parse_expr.c:4737 +#: parser/parse_expr.c:4760 #, 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:4775 +#, c-format +msgid "collation of DEFAULT expression conflicts with RETURNING clause" +msgstr "DEFAULT式の照合順序がRETURNING句と競合しています" + +#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "型%sの挙動式の%sへの型変換はできません" -#: parser/parse_expr.c:4816 +#: parser/parse_expr.c:4857 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "式を%s型に明示的にキャストする必要があります。" @@ -19227,257 +19243,257 @@ 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 "インデックス\"%s\"には行全体テーブル参照が含まれます" -#: 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\"はすでに1つの制約に割り当てられています" -#: 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 "インデックス\"%s\"の列番号%dにはデフォルトのソート動作がありません" -#: parser/parse_utilcmd.c:2748 +#: parser/parse_utilcmd.c:2747 #, c-format msgid "column \"%s\" appears twice in primary key constraint" msgstr "列\"%s\"がプライマリキー制約内に2回出現します" -#: parser/parse_utilcmd.c:2754 +#: parser/parse_utilcmd.c:2753 #, c-format msgid "column \"%s\" appears twice in unique constraint" msgstr "列\"%s\"が一意性制約内に2回出現します" -#: 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 "WITHOUT OVERLAPS中の列\"%s\"は範囲型でも副範囲型でもありません" -#: parser/parse_utilcmd.c:2827 +#: parser/parse_utilcmd.c:2826 #, c-format msgid "constraint using WITHOUT OVERLAPS needs at least two columns" msgstr "WITHOUT OVERLAPSを使用する制約では少なくとも2つの列が必要です" -#: 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 "ルールのWHERE条件に他のリレーションへの参照を持たせられません" -#: 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 "ルールのWHERE条件はSELECT、INSERT、UPDATE、DELETE動作のみを持つことができます" -#: 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:1190 #, 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 DEFERRED句の場所が間違っています<" -#: 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 "CREATEで指定したスキーマ(%s)が作成先のスキーマ(%s)と異なります" -#: 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 "ハッシュパーティションの法は0より大きい整数にする必要があります" -#: 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 "FROMは全てのパーティション列ごとに一つの値を指定しなければなりません" -#: parser/parse_utilcmd.c:4408 +#: parser/parse_utilcmd.c:4407 #, c-format msgid "TO must specify exactly one value per partitioning column" msgstr "TOは全てのパーティション列ごとに一つの値を指定しなければなりません" -#: parser/parse_utilcmd.c:4522 +#: parser/parse_utilcmd.c:4521 #, c-format msgid "cannot specify NULL in range bound" msgstr "範囲境界でNULLは使用できません" -#: parser/parse_utilcmd.c:4571 +#: parser/parse_utilcmd.c:4570 #, c-format msgid "every bound following MAXVALUE must also be MAXVALUE" msgstr "MAXVALUEに続く境界値はMAXVALUEでなければなりません" -#: parser/parse_utilcmd.c:4578 +#: parser/parse_utilcmd.c:4577 #, c-format msgid "every bound following MINVALUE must also be MINVALUE" msgstr "MINVALUEに続く境界値はMINVALUEでなければなりません" -#: parser/parse_utilcmd.c:4621 +#: parser/parse_utilcmd.c:4620 #, c-format msgid "specified value cannot be cast to type %s for column \"%s\"" msgstr "指定した値は列\"%s\"の%s型に変換できません" @@ -19580,7 +19596,7 @@ msgstr "パーティションキーの列%dは%s型です、しかし与えら msgid "column %d of the partition key has type \"%s\", but supplied value is of type \"%s\"" 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/pg_sema.c:209 port/pg_shmem.c:717 port/posix_sema.c:209 port/sysv_sema.c:343 port/sysv_shmem.c:717 #, c-format msgid "could not stat data directory \"%s\": %m" msgstr "データディレクトリ\"%s\"のstatに失敗しました: %m" @@ -19647,27 +19663,27 @@ msgstr "このプラットフォームではヒュージページをサポート msgid "huge pages not supported with the current \"shared_memory_type\" setting" msgstr "ヒュージページは現在の\"shared_memory_type\"の設定ではサポートされません" -#: port/pg_shmem.c:798 port/sysv_shmem.c:798 utils/init/miscinit.c:1406 +#: 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、ID %lu)がまだ使用中です" -#: port/pg_shmem.c:801 port/sysv_shmem.c:801 utils/init/miscinit.c:1408 +#: 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" @@ -19676,7 +19692,7 @@ 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 "" @@ -19820,27 +19836,27 @@ msgstr "テーブル\"%s.%s.%s\"に対する自動VACUUM" msgid "automatic analyze of table \"%s.%s.%s\"" msgstr "テーブル\"%s.%s.%s\"に対する自動ANALYZE" -#: postmaster/autovacuum.c:2674 +#: postmaster/autovacuum.c:2677 #, c-format msgid "processing work entry for relation \"%s.%s.%s\"" msgstr "リレーション\"%s.%s.%s\"の作業エントリを処理しています" -#: postmaster/autovacuum.c:3345 +#: postmaster/autovacuum.c:3348 #, c-format msgid "autovacuum not started because of misconfiguration" msgstr "誤設定のため自動VACUUMが起動できません" -#: 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 "\"autovacuum_max_workers\" (%d) は \"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 "このサーバーは、同時に最大 \"autovacuum_worker_slots\" (%d) プロセスの自動バキュームワーカーを起動します。" @@ -19850,79 +19866,79 @@ msgstr "このサーバーは、同時に最大 \"autovacuum_worker_slots\" (%d) msgid "inconsistent background worker state (\"max_worker_processes\"=%d, total slots=%d)" msgstr "バックグラウンドワーカー状態の不整合 (\"max_worker_processes\"=%d, スロット総数=%d)" -#: postmaster/bgworker.c:645 +#: postmaster/bgworker.c:646 #, c-format msgid "background worker \"%s\": background workers without shared memory access are not supported" msgstr "バックグラウンドワーカー\"%s\": 共有メモリアクセスを伴わないバックグラウンドワーカーはサポートされません" -#: postmaster/bgworker.c:656 +#: postmaster/bgworker.c:657 #, c-format msgid "background worker \"%s\": cannot request database access if starting at postmaster start" msgstr "バックグラウンドワーカー\"%s\": postmaster起動中に起動している場合にはデータベースアクセスを要求することはできません" -#: postmaster/bgworker.c:670 +#: postmaster/bgworker.c:671 #, c-format msgid "background worker \"%s\": invalid restart interval" msgstr "バックグラウンドワーカー\"%s\": 不正な再起動間隔" -#: postmaster/bgworker.c:685 +#: postmaster/bgworker.c:686 #, c-format msgid "background worker \"%s\": parallel workers may not be configured for restart" msgstr "バックグラウンドワーカー\"%s\": パラレルワーカーは再起動するように設定してはいけません" -#: postmaster/bgworker.c:709 tcop/postgres.c:3343 +#: postmaster/bgworker.c:710 tcop/postgres.c:3343 #, c-format msgid "terminating background worker \"%s\" due to administrator command" msgstr "管理者コマンドによりバックグラウンドワーカー\"%s\"を終了しています" -#: postmaster/bgworker.c:868 postmaster/bgworker.c:902 +#: postmaster/bgworker.c:869 postmaster/bgworker.c:903 #, c-format msgid "database connection requirement not indicated during registration" msgstr "登録時にデータベース接続の必要性が示されていません" -#: postmaster/bgworker.c:878 postmaster/bgworker.c:912 +#: postmaster/bgworker.c:879 postmaster/bgworker.c:913 #, c-format msgid "invalid processing mode in background worker" msgstr "バックグラウンドワーカー内の不正な処理モード" -#: postmaster/bgworker.c:965 +#: postmaster/bgworker.c:966 #, c-format msgid "background worker \"%s\": must be registered in \"shared_preload_libraries\"" msgstr "バックグラウンドワーカー\"%s\": \"shared_preload_libraries\"に登録されていなければなりません" -#: postmaster/bgworker.c:988 +#: postmaster/bgworker.c:989 #, c-format msgid "background worker \"%s\": only dynamic background workers can request notification" msgstr "バックグラウンドワーカー\"%s\": 動的バックグラウンドワーカーのみが通知を要求できます" -#: postmaster/bgworker.c:1003 +#: postmaster/bgworker.c:1004 #, c-format msgid "too many background workers" msgstr "バックグラウンドワーカーが多すぎます" -#: postmaster/bgworker.c:1004 +#: 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." msgstr[0] "現在の設定では最大%dのバックグラウンドワーカーを登録することができます。" -#: postmaster/bgworker.c:1008 postmaster/checkpointer.c:459 +#: postmaster/bgworker.c:1009 postmaster/checkpointer.c:462 #, c-format msgid "Consider increasing the configuration parameter \"%s\"." msgstr "設定パラメータ\"%s\"を増やすことを検討してください。" -#: postmaster/checkpointer.c:455 +#: 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)" msgstr[0] "チェックポイントの発生周期が短すぎます(%d秒間隔)" -#: postmaster/checkpointer.c:1121 +#: postmaster/checkpointer.c:1127 #, c-format msgid "checkpoint request failed" msgstr "チェックポイント要求が失敗しました" -#: postmaster/checkpointer.c:1122 +#: postmaster/checkpointer.c:1128 #, c-format msgid "Consult recent messages in the server log for details." msgstr "詳細はサーバーログの最近のメッセージを調査してください" @@ -20173,7 +20189,7 @@ msgstr "%s\"をロードできませんでした" msgid "postmaster became multithreaded during startup" msgstr "postmasterは起動処理中はマルチスレッドで動作します" -#: postmaster/postmaster.c:1365 postmaster/postmaster.c:3661 +#: postmaster/postmaster.c:1365 postmaster/postmaster.c:3668 #, c-format msgid "Set the LC_ALL environment variable to a valid locale." msgstr "LC_ALL環境変数を使用可能なロケールに設定してください。" @@ -20319,114 +20335,114 @@ msgstr "追跡されていない子プロセス" msgid "background worker \"%s\"" msgstr "バックグラウンドワーカー\"%s\"" -#: postmaster/postmaster.c:2797 +#: 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:2830 +#: postmaster/postmaster.c:2837 #, c-format msgid "%s (PID %d) exited with exit code %d" msgstr "%s (PID %d)は終了コード%dで終了しました" -#: postmaster/postmaster.c:2832 postmaster/postmaster.c:2844 postmaster/postmaster.c:2854 postmaster/postmaster.c:2865 +#: 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:2841 +#: postmaster/postmaster.c:2848 #, c-format msgid "%s (PID %d) was terminated by exception 0x%X" msgstr "%s (PID %d)は例外%Xで終了しました" #. translator: %s is a noun phrase describing a child process, such as #. "server process" -#: postmaster/postmaster.c:2851 +#: 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:2863 +#: postmaster/postmaster.c:2870 #, c-format msgid "%s (PID %d) exited with unrecognized status %d" msgstr "%s (PID %d)は認識できないステータス%dで終了しました" -#: postmaster/postmaster.c:3154 +#: postmaster/postmaster.c:3161 #, c-format msgid "abnormal database system shutdown" msgstr "データベースシステムは異常にシャットダウンしました" -#: postmaster/postmaster.c:3180 +#: postmaster/postmaster.c:3187 #, c-format msgid "shutting down due to startup process failure" msgstr "起動プロセスの失敗のためシャットダウンしています" -#: postmaster/postmaster.c:3186 +#: postmaster/postmaster.c:3193 #, c-format msgid "shutting down because \"restart_after_crash\" is off" msgstr "\"restart_after_crash\"がoffであるためシャットダウンします" -#: postmaster/postmaster.c:3198 +#: postmaster/postmaster.c:3205 #, c-format msgid "all server processes terminated; reinitializing" msgstr "全てのサーバープロセスが終了しました: 再初期化しています" -#: postmaster/postmaster.c:3591 +#: postmaster/postmaster.c:3598 #, c-format msgid "could not fork new process for connection: %m" msgstr "接続用の新しいプロセスをforkできませんでした: %m" -#: postmaster/postmaster.c:3626 +#: postmaster/postmaster.c:3633 msgid "could not fork new process for connection: " msgstr "接続用の新しいプロセスをforkできませんでした" -#: postmaster/postmaster.c:3660 +#: postmaster/postmaster.c:3667 #, c-format msgid "postmaster became multithreaded" msgstr "postmasterがマルチスレッド動作になっています" -#: postmaster/postmaster.c:3738 +#: postmaster/postmaster.c:3745 #, c-format msgid "database system is ready to accept read-only connections" msgstr "データベースシステムはリードオンリー接続の受け付け準備ができました" -#: postmaster/postmaster.c:3839 +#: postmaster/postmaster.c:3846 #, c-format msgid "WAL was shut down unexpectedly" msgstr "WALが予期せずシャットダウンされました。" -#: postmaster/postmaster.c:3964 +#: postmaster/postmaster.c:3971 #, c-format msgid "no slot available for new autovacuum worker process" msgstr "新しい自動VACUUMワーカープロセスに割り当て可能なスロットがありません" -#: postmaster/postmaster.c:3979 +#: postmaster/postmaster.c:3986 #, c-format msgid "could not fork \"%s\" process: %m" msgstr "\"%s\"プロセスをforkできませんでした: %m" -#: postmaster/postmaster.c:4138 +#: postmaster/postmaster.c:4145 #, c-format msgid "no slot available for new background worker process" msgstr "新しいバックグラウンドワーカープロセスに割り当て可能なスロットがありません" -#: postmaster/postmaster.c:4156 +#: postmaster/postmaster.c:4163 #, c-format msgid "could not fork background worker process: %m" msgstr "バックグランドワーカープロセスをforkできませんでした: %m" -#: postmaster/postmaster.c:4489 +#: postmaster/postmaster.c:4496 #, c-format msgid "could not read exit code for process\n" msgstr "子プロセスの終了コードの読み込みができませんでした\n" -#: postmaster/postmaster.c:4531 +#: postmaster/postmaster.c:4538 #, c-format msgid "could not post child completion status\n" msgstr "個プロセスの終了コードを投稿できませんでした\n" @@ -20679,26 +20695,26 @@ msgstr "サブスクリプション\"%s\"に対応する論理レプリケーシ 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 "論理レプリケーションt起用ワーカーはリモートトランザクション%uの残りの変更をシリアライズしてファイルに格納します" @@ -20773,23 +20789,23 @@ msgstr "キー %s" #: replication/logical/conflict.c:364 #, c-format -msgid "existing local tuple %s" -msgstr "存在するローカルタプル %s" +msgid "existing local row %s" +msgstr "存在するローカル行 %s" #: replication/logical/conflict.c:369 #, c-format -msgid "Existing local tuple %s" -msgstr "存在するローカルタプル %s" +msgid "Existing local row %s" +msgstr "存在するローカル行 %s" #: 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 @@ -20827,7 +20843,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:1623 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: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 #, c-format msgid "You might need to increase \"%s\"." msgstr "\"%s\"を大きくする必要があるかもしれません。" @@ -20877,7 +20893,7 @@ msgstr "論理レプリケーションスロットは書き込みを行ったト 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:544 replication/slot.c:864 replication/slot.c:899 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "このレプリケーションスロットはプライマリサーバーからの同期中です。" @@ -21172,7 +21188,7 @@ msgstr "%2$sで指定されたレプリケーションスロット\"%1$s\"はプ msgid "replication slot synchronization requires \"%s\" to be specified in \"%s\"" msgstr "レプリケーションスロットの同期を行う際は\"%2$s\"で\"%1$s\"が指定されている必要があります" -#: replication/logical/slotsync.c:1069 +#: replication/logical/slotsync.c:1067 #, c-format msgid "replication slot synchronization requires \"wal_level\" >= \"logical\"" msgstr "レプリケーションスロットの同期を行う際は\"wal_level\" >= \"logical\" である必要があります" @@ -21220,7 +21236,7 @@ msgstr "複数のレプリケーションスロットの並行同期はできま msgid "slot sync worker started" msgstr "スロット同期ワーカーが起動しました" -#: replication/logical/slotsync.c:1485 replication/slotfuncs.c:929 +#: replication/logical/slotsync.c:1484 replication/slotfuncs.c:928 #, c-format msgid "synchronization worker \"%s\" could not connect to the primary server: %s" msgstr "同期ワーカー\"%s\"はプライマリ・サーバーに接続できませんでした: %s" @@ -21296,57 +21312,57 @@ msgstr "ファイル名\"%s\"をパースできませんでした" msgid "logical replication table synchronization worker for subscription \"%s\", table \"%s\" has finished" msgstr "サブスクリプション\"%s\"、テーブル\"%s\"に対する論理レプリケーションテーブル同期ワーカーが終了しました" -#: replication/logical/tablesync.c:645 +#: 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 "two_phaseを有効化可能にするため、サブスクリプション\"%s\"に対応する論理レプリケーション適用ワーカーを再起動します" -#: replication/logical/tablesync.c:835 replication/logical/tablesync.c:976 +#: 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:842 +#: replication/logical/tablesync.c:866 #, c-format msgid "table \"%s.%s\" not found on publisher" msgstr "テーブル\"%s.%s\"がパブリッシャ上で見つかりませんでした" -#: replication/logical/tablesync.c:895 +#: 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:1074 +#: replication/logical/tablesync.c:1098 #, c-format msgid "could not fetch table WHERE clause info for table \"%s.%s\" from publisher: %s" msgstr "パブリッシャからテーブル\"%s.%s\"のテーブルのテーブルWHERE句を取得できませんでした: %s" -#: replication/logical/tablesync.c:1241 +#: 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:1356 +#: replication/logical/tablesync.c:1380 #, c-format msgid "table synchronization worker for subscription \"%s\" could not connect to the publisher: %s" msgstr "サブスクリプション\"%s\"のテーブル同期ワーカーがパブリッシャに接続できませんでした: %s" -#: replication/logical/tablesync.c:1441 +#: replication/logical/tablesync.c:1466 #, c-format msgid "table copy could not start transaction on publisher: %s" msgstr "テーブルコピー中にパブリッシャ上でのトランザクション開始に失敗しました: %s" -#: replication/logical/tablesync.c:1484 +#: replication/logical/tablesync.c:1509 #, c-format msgid "replication origin \"%s\" already exists" msgstr "レプリケーション基点\"%s\"はすでに存在します" -#: replication/logical/tablesync.c:1517 replication/logical/worker.c:2378 +#: replication/logical/tablesync.c:1542 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:1530 +#: replication/logical/tablesync.c:1555 #, c-format msgid "table copy could not finish transaction on publisher: %s" msgstr "テーブルコピー中にパブリッシャ上でのトランザクション終了に失敗しました: %s" @@ -21431,447 +21447,431 @@ 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 "サブスクリプション%uが起動中に削除されたため、このサブスクリプションに対応する論理レプリケーションワーカーは起動しません" -#: 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 "サブスクリプション\"%s\"が起動中に無効化されたため、このサブスクリプションに対応する論理レプリケーションワーカーは起動しません" -#: 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 "サブスクリプション\"%s\"、テーブル\"%s\"に対応する論理レプリケーションテーブル同期ワーカーが起動しました" -#: 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:4871 #, c-format msgid "subscription \"%s\" has been disabled because of an error" msgstr "サブスクリプション\"%s\"はエラーのため無効化されました" -#: replication/logical/worker.c:4912 +#: replication/logical/worker.c:4919 #, c-format msgid "logical replication starts skipping transaction at LSN %X/%X" msgstr "論理レプリケーションは%X/%Xででトランザクションのスキップを開始します" -#: replication/logical/worker.c:4926 +#: replication/logical/worker.c:4933 #, c-format msgid "logical replication completed skipping transaction at LSN %X/%X" msgstr "論理レプリケーションは%X/%Xでトランザクションのスキップを完了しました" -#: replication/logical/worker.c:5014 +#: replication/logical/worker.c:5021 #, c-format msgid "skip-LSN of subscription \"%s\" cleared" msgstr "サブスクリプションの\"%s\"スキップLSNをクリアしました" -#: replication/logical/worker.c:5015 +#: replication/logical/worker.c:5022 #, c-format msgid "Remote transaction's finish WAL location (LSN) %X/%X did not match skip-LSN %X/%X." msgstr "リモートトランザクションの完了WAL位置(LSN) %X/%XがスキップLSN %X/%X と一致しません。" -#: replication/logical/worker.c:5043 +#: replication/logical/worker.c:5050 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\"" msgstr "メッセージタイプ \"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中" -#: replication/logical/worker.c:5047 +#: replication/logical/worker.c:5054 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u" msgstr "トランザクション%3$u中、メッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中" -#: replication/logical/worker.c:5052 +#: replication/logical/worker.c:5059 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" in transaction %u, finished at %X/%X" msgstr "%4$X/%5$Xで終了したトランザクション%3$u中、メッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中" -#: replication/logical/worker.c:5063 +#: replication/logical/worker.c:5070 #, c-format msgid "processing remote data for replication origin \"%s\" during message type \"%s\" for replication target relation \"%s.%s\" in transaction %u" msgstr "レプリケーション起点\"%1$s\"のリモートデータ処理中、トランザクション%5$uのレプリケーション対象リレーション\"%3$s.%4$s\"に対するメッセージタイプ\"%2$s\"内" -#: replication/logical/worker.c:5070 +#: replication/logical/worker.c:5077 #, 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 "%6$X/%7$Xで終了したトランザクション%5$u中、レプリケーション先リレーション\"%3$s.%4$s\"に対するメッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中" -#: replication/logical/worker.c:5081 +#: replication/logical/worker.c:5088 #, 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 "レプリケーション起点\"%1$s\"のリモートデータ処理中、トランザクション%6$uのレプリケーション対象リレーション\"%3$s.%4$s\"、列\"%5$s\"に対するメッセージタイプ\"%2$s\"内" -#: replication/logical/worker.c:5089 +#: replication/logical/worker.c:5096 #, 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 "%7$X/%8$Xで終了したトランザクション%6$u中、レプリケーション先リレーション\"%3$s.%4$s\"、列\"%5$s\"に対するメッセージタイプ\"%2$s\"でレプリケーション基点\"%1$s\"のリモートからのデータを処理中" -#: 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:351 #, c-format msgid "invalid publication_names syntax" msgstr "publication_namesの構文が不正です" -#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 +#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 #, c-format msgid "option \"%s\" missing" msgstr "オプション\"%s\"が指定されていません" -#: replication/pgoutput/pgoutput.c:469 +#: 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:475 +#: 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:490 +#: 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:496 +#: 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:501 +#: replication/pgoutput/pgoutput.c:524 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "ストリーミングが要求されましたが、出力プラグインでサポートされていません" -#: replication/pgoutput/pgoutput.c:515 +#: 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は2相コミットをサポートしていません、%d以上が必要です" -#: replication/pgoutput/pgoutput.c:520 +#: replication/pgoutput/pgoutput.c:543 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "2相コミットが要求されました、しかし出力プラグインではサポートされていません" -#: replication/pgoutput/pgoutput.c:1085 +#: replication/pgoutput/pgoutput.c:1108 #, c-format msgid "cannot use different values of publish_generated_columns for table \"%s.%s\" in different publications" msgstr "異なるパブリケーションでテーブル\"%s.%s\"に対してpublish_generated_columnsの値を異なる設定にすることはできません" -#: replication/pgoutput/pgoutput.c:1792 +#: replication/pgoutput/pgoutput.c:1811 #, c-format msgid "skipped loading publication \"%s\"" msgstr "パブリケーションの読み込みをスキップしました\"%s\"" -#: replication/pgoutput/pgoutput.c:1793 +#: 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:1794 +#: replication/pgoutput/pgoutput.c:1813 #, 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:383 #, 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:395 replication/slot.c:921 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "一時レプリケーションスロットのフェイルオーバーを有効にすることはできません" -#: replication/slot.c:385 +#: replication/slot.c:420 #, c-format msgid "replication slot \"%s\" already exists" msgstr "レプリケーションスロット\"%s\"はすでに存在します" -#: replication/slot.c:395 +#: replication/slot.c:430 #, c-format msgid "all replication slots are in use" msgstr "レプリケーションスロットは全て使用中です" -#: replication/slot.c:396 +#: replication/slot.c:431 #, 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: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:635 replication/slot.c:1431 +#: replication/slot.c:670 replication/slot.c:1466 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "レプリケーションスロット\"%s\"はPID%dで使用中です" -#: replication/slot.c:652 +#: replication/slot.c:687 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "レプリケーションスロット\"%s\"にはすでにアクセスできなくなっています" -#: replication/slot.c:654 +#: replication/slot.c:689 #, c-format msgid "This replication slot has been invalidated due to \"%s\"." msgstr "このレプリケーションスロットは\"%s\"によって無効化されています。" -#: replication/slot.c:673 +#: replication/slot.c:708 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "論理レプリケーションスロット\"%s\"を取得しました" -#: replication/slot.c:675 +#: replication/slot.c:710 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "物理レプリケーションスロット\"%s\"を取得しました" -#: replication/slot.c:760 +#: replication/slot.c:795 #, c-format msgid "released logical replication slot \"%s\"" msgstr "論理レプリケーションスロット\"%s\"を解放しました" -#: replication/slot.c:762 +#: replication/slot.c:797 #, c-format msgid "released physical replication slot \"%s\"" msgstr "物理レプリケーションスロット\"%s\"を解放しました" -#: replication/slot.c:828 +#: replication/slot.c:863 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "レプリケーションスロット\"%s\"を削除できませんでした" -#: replication/slot.c:851 +#: replication/slot.c:886 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "%sは物理レプリケーションスロットでは使用できません" -#: replication/slot.c:863 +#: replication/slot.c:898 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "レプリケーションスロット\"%s\"を変更できませんでした" -#: replication/slot.c:873 +#: replication/slot.c:908 #, c-format msgid "cannot enable failover for a replication slot on the standby" msgstr "スタンバイ上ではレプリケーションスロットのフェイルオーバーを有効にすることはできません" -#: replication/slot.c:1021 replication/slot.c:2182 replication/slot.c:2568 +#: replication/slot.c:1056 replication/slot.c:2187 replication/slot.c:2580 #, c-format msgid "could not remove directory \"%s\"" msgstr "ディレクトリ\"%s\"を削除できませんでした" -#: replication/slot.c:1466 +#: replication/slot.c:1501 #, 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:1506 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "レプリケーションスロットは\"wal_level\" >= \"replica\" のときだけ使用できます" -#: replication/slot.c:1483 +#: replication/slot.c:1518 #, c-format msgid "permission denied to use replication slots" msgstr "レプリケーションスロットを使用する権限がありません" -#: replication/slot.c:1484 +#: replication/slot.c:1519 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "%s属性を持つロールのみがレプリケーションスロットを使用できます。" -#: replication/slot.c:1594 +#: replication/slot.c:1629 #, 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:1605 +#: replication/slot.c:1640 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "このスロットはXID地平線%uと競合しました。" -#: replication/slot.c:1610 +#: replication/slot.c:1645 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:1619 +#: replication/slot.c:1651 #, c-format -msgid "The slot's idle time of %dmin %02ds exceeds the configured \"%s\" duration of %dmin." -msgstr "このスロットのアイドル時間 %d分%02d秒が、\"%s\"で設定された %d分を超えています。" +msgid "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." +msgstr "このスロットのアイドル時間 %ld秒が、\"%s\"で設定された %d秒を超えています。" -#: replication/slot.c:1633 +#: replication/slot.c:1665 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "プロセス%dを終了してレプリケーションスロット\"%s\"を解放します" -#: replication/slot.c:1635 +#: replication/slot.c:1667 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "使用不能のレプリケーションスロット\"%s\"を無効化します" -#: replication/slot.c:2506 +#: replication/slot.c:2518 #, 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:2513 +#: replication/slot.c:2525 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "レプリケーションスロットファイル\"%s\"はサポート外のバージョン%uです" -#: replication/slot.c:2520 +#: replication/slot.c:2532 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "レプリケーションスロットファイル\"%s\"のサイズ%uは異常です" -#: replication/slot.c:2556 +#: replication/slot.c:2568 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "レプリケーションスロットファイル\"%s\"のチェックサムが一致しません: %uですが、%uであるべきです" -#: replication/slot.c:2592 +#: replication/slot.c:2604 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "論理レプリケーションスロット\"%s\"がありますが、\"wal_level\" < \"logical\" です" -#: replication/slot.c:2594 +#: replication/slot.c:2606 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "\"wal_level\"を\"logical\"もしくはそれより上位の設定にしてください。" -#: replication/slot.c:2606 +#: replication/slot.c:2618 #, c-format msgid "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = \"off\"" msgstr "論理レプリケーションスロット\"%s\"がありますが、\"hot_standby\" = \"off\" です" -#: replication/slot.c:2608 +#: replication/slot.c:2620 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "\"hot_standby\" を \"on\" に変更してください。" -#: replication/slot.c:2613 +#: replication/slot.c:2625 #, c-format msgid "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "物理レプリケーションスロット\"%s\"がありますが、\"wal_level\" < \"replica\" です" -#: replication/slot.c:2615 +#: replication/slot.c:2627 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "\"wal_level\"を\"replica\"もしくはそれより上位の設定にしてください。" -#: replication/slot.c:2662 +#: replication/slot.c:2674 #, c-format msgid "too many replication slots active before shutdown" msgstr "シャットダウン前のアクティブなレプリケーションスロットの数が多すぎます" -#: replication/slot.c:2663 +#: replication/slot.c:2675 #, c-format msgid "Increase \"max_replication_slots\" and try again." msgstr "\"max_replication_slots\"を増やして再度試してください" -#: replication/slot.c:2740 -#, c-format -msgid "Replication slot \"%s\" does not exist." -msgstr "レプリケーションスロット\"%s\"は存在しません。" - -#: replication/slot.c:2748 -#, c-format -msgid "\"%s\" is not a physical replication slot." -msgstr "\"%s\"は物理レプリケーションスロットではありません。" - -#: replication/slot.c:2927 +#: replication/slot.c:2912 #, c-format msgid "replication slot \"%s\" specified in parameter \"%s\" does not exist" msgstr "パラメータ\"%2$s\"で指定されているレプリケーションスロット\"%1$s\"は存在しません" -#: replication/slot.c:2929 replication/slot.c:2963 replication/slot.c:2978 +#: replication/slot.c:2914 replication/slot.c:2948 replication/slot.c:2963 #, c-format msgid "Logical replication is waiting on the standby associated with replication slot \"%s\"." msgstr "論理レプリケーションはレプリケーションスロット”%s\"に対応するスタンバイを待っています。 " -#: replication/slot.c:2931 +#: replication/slot.c:2916 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "レプリケーションスロット\"%s\"を作成するか、パラメータ\"%s\"を修正してください。" -#: replication/slot.c:2941 +#: replication/slot.c:2926 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "パラメータ\"%2$s\"では論理レプリケーションスロット\"%1$s\"は指定できません" -#: replication/slot.c:2943 +#: replication/slot.c:2928 #, c-format msgid "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "論理レプリケーションはレプリケーションスロット\"%s\"が修正されるのを待っています。" -#: replication/slot.c:2945 +#: replication/slot.c:2930 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "論理レプリケーションスロット\"%s\"をパラメータ\"%s\"から削除してください。" -#: replication/slot.c:2961 +#: replication/slot.c:2946 #, c-format msgid "physical replication slot \"%s\" specified in parameter \"%s\" has been invalidated" msgstr "パラメータ\"%2$s\"で指定された物理レプリケーションスロット\"%1$s\"は無効化されています" -#: replication/slot.c:2965 +#: replication/slot.c:2950 #, c-format msgid "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "レプリケーションスロット\"%s\"を削除して再作成するか、パラメータ\"%s\"を修正してください。" -#: replication/slot.c:2976 +#: replication/slot.c:2961 #, 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:2980 +#: replication/slot.c:2965 #, c-format msgid "Start the standby associated with the replication slot \"%s\", or amend parameter \"%s\"." msgstr "レプリケーションスロット\"%s\"に関連付けられているスタンバイを起動するか、パラメータ%sを修正してください。" -#: replication/slot.c:3072 -#, c-format -msgid "\"%s\" must be set to 0 during binary upgrade mode." -msgstr "バイナリアップグレードモード中は\"%s\"は0に設定されている必要があります。" - #: replication/slotfuncs.c:529 #, c-format msgid "invalid target WAL LSN" @@ -22053,123 +22053,123 @@ msgstr "プライマリサーバーからライムライン%u用のタイムラ 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:1867 #, 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 "タイムライン%3$u上の要求された開始ポイント%1$X/%2$Xはサーバーの履歴にありません" -#: replication/walsender.c:898 +#: 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: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 "要求された開始ポイント%X/%XはサーバーのWALフラッシュ位置%X/%Xより進んでいます" -#: replication/walsender.c:1137 +#: 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: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 "%s は REPEATABLE READ 分離レベルのトランザクションで呼び出されなければなりません" #. 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 "昇格後にWAL送信プロセスを終了します" -#: 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 "レプリケーションタイムアウトにより WAL 送信プロセスを終了しています" @@ -22781,72 +22781,57 @@ msgstr "認識できないSnowballパラメータ: \"%s\"" 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 +#: statistics/attribute_stats.c:303 #, c-format -msgid "unable to determine element type of attribute \"%s\"" -msgstr "属性 \"%s\" の要素型を特定できません" +msgid "could not determine element type of column \"%s\"" +msgstr "列\"%s\"の要素型を特定できません" -#: statistics/attribute_stats.c:301 +#: statistics/attribute_stats.c:304 statistics/attribute_stats.c:321 statistics/attribute_stats.c:336 #, c-format -msgid "Cannot set STATISTIC_KIND_MCELEM or STATISTIC_KIND_DECHIST." -msgstr "STATISTIC_KIND_MCELEM および STATISTIC_KIND_DECHIST は設定できません。" +msgid "Cannot set %s or %s." +msgstr "%s と %s はいずれも設定できません。" -#: statistics/attribute_stats.c:316 +#: statistics/attribute_stats.c:320 #, c-format -msgid "could not determine less-than operator for attribute \"%s\"" -msgstr "属性 \"%s\" の小なり演算子(<)を特定できませんでした" +msgid "could not determine less-than operator for column \"%s\"" +msgstr "列\"%s\"に対する小なり演算子(<)を特定できませんでした" -#: statistics/attribute_stats.c:317 +#: statistics/attribute_stats.c:335 #, c-format -msgid "Cannot set STATISTIC_KIND_HISTOGRAM or STATISTIC_KIND_CORRELATION." -msgstr "STATISTIC_KIND_HISTOGRAM および STATISTIC_KIND_CORRELATION は設定できません。" +msgid "column \"%s\" is not a range type" +msgstr "列\"%s\"は範囲型ではありません" -#: statistics/attribute_stats.c:330 +#: statistics/attribute_stats.c:738 #, c-format -msgid "attribute \"%s\" is not a range type" -msgstr "属性 \"%s\" は範囲型ではありません" +msgid "\"%s\" array must not contain null values" +msgstr "\"%s\"配列にはNULL値を含められません" -#: statistics/attribute_stats.c:331 -#, c-format -msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS_HISTOGRAM." -msgstr "STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM および STATISTIC_KIND_BOUNDS_HISTOGRAM は設定できません。" - -#: statistics/attribute_stats.c:590 statistics/attribute_stats.c:598 -#, c-format -msgid "attribute %d of relation \"%s\" does not exist" -msgstr "リレーション \"%2$s\" の属性%1$dは存在しません" - -#: 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,95 +22846,110 @@ msgstr "統計オブジェクト\"%s.%s\"がリレーション\"%s.%s\"に対し 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 "argument \"%s\" must not be less than -1.0" +msgstr "引数\"%s\"は -1.0 以上でなければなりません" + +#: statistics/stat_utils.c:47 +#, c-format +msgid "argument \"%s\" must not be null" +msgstr "引数\"%s\"はnullであってはなりません" + +#: statistics/stat_utils.c:74 #, c-format -msgid "reltuples cannot be < -1.0" -msgstr "reltuplesは-1.0未満にはできません" +msgid "argument \"%s\" must not be a multidimensional array" +msgstr "引数\"%s\"は多次元配列であってはなりません" -#: statistics/stat_utils.c:44 +#: statistics/stat_utils.c:83 #, c-format -msgid "\"%s\" cannot be NULL" -msgstr "\"%s\"はNULLにはできません" +msgid "argument \"%s\" array must not contain null values" +msgstr "引数\"%s\"配列にはNULL値を含んでいてはなりません" -#: statistics/stat_utils.c:71 +#: statistics/stat_utils.c:114 #, c-format -msgid "\"%s\" cannot be a multidimensional array" -msgstr "\"%s\"は多次元配列にはなれません" +msgid "argument \"%s\" must be specified when argument \"%s\" is specified" +msgstr "引数\"%s\"は、引数\"%s\"が指定される際には必ず指定される必要があります" -#: statistics/stat_utils.c:111 +#: statistics/stat_utils.c:177 #, c-format -msgid "\"%s\" must be specified when \"%s\" is specified" -msgstr "\"%s” は、\"%s\"が指定される際には必ず指定される必要があります" +msgid "index \"%s\" was concurrently dropped" +msgstr "インデックス\"%s\"の削除が同時に行われました" -#: statistics/stat_utils.c:178 +#: 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 "可変長引数は名前/値のペアである必要があります" -#: 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 "2つ組に分割できるよう、偶数個の可変長引数を指定してください。" -#: statistics/stat_utils.c:322 +#: statistics/stat_utils.c:330 #, c-format -msgid "name at variadic position %d is NULL" -msgstr "可変長引数の位置%dの名前がNULLです" +msgid "name at variadic position %d is null" +msgstr "可変長引数の位置%dの名前が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 "可変長引数の位置%dの名前の型が\"%s\"ですが、期待される型は\"%s\"です" +msgid "name at variadic position %d has type %s, expected type %s" +msgstr "可変長引数の位置%dの名前の型が %s ですが、期待される型は %s です" -#: storage/aio/aio.c:1340 +#: 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:171 +#: 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:176 +#: 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:182 -msgid "Kernel does not support io_uring." +#: storage/aio/method_io_uring.c:380 +msgid "The kernel does not support io_uring." msgstr "カーネルはio_uringをサポートしていません。" -#: storage/aio/method_io_uring.c:190 +#: 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:324 +#: storage/aio/method_io_uring.c:522 #, c-format msgid "completing I/O on behalf of process %d" msgstr "プロセス %d に代わってI/O完了させています" -#: storage/aio/method_worker.c:380 +#: storage/aio/method_worker.c:382 #, c-format msgid "I/O worker executing I/O on behalf of process %d" msgstr "I/Oワーカーがプロセス %d に代わってI/Oを実行中" @@ -22959,98 +22959,99 @@ msgstr "I/Oワーカーがプロセス %d に代わってI/Oを実行中" msgid "cannot access temporary tables of other sessions" msgstr "他のセッションの一時テーブルにはアクセスできません" -#: storage/buffer/bufmgr.c:2708 storage/buffer/localbuf.c:393 +#: 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:2779 +#: storage/buffer/bufmgr.c:2774 #, c-format -msgid "unexpected data beyond EOF in block %u of relation %s" -msgstr "リレーション %2$s の %1$u ブロック目で、EOF の先に想定外のデータを検出しました" +msgid "unexpected data beyond EOF in block %u of relation \"%s\"" +msgstr "リレーション\"%2$s\"の%1$uブロック目で、EOF の先に想定外のデータを検出しました" -#: storage/buffer/bufmgr.c:2782 +#: 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:6183 +#: storage/buffer/bufmgr.c:6178 #, c-format msgid "could not write block %u of %s" msgstr "%u ブロックを %s に書き出せませんでした" -#: storage/buffer/bufmgr.c:6187 +#: storage/buffer/bufmgr.c:6182 #, c-format msgid "Multiple failures --- write error might be permanent." msgstr "複数回失敗しました ---ずっと書き込みエラーが続くかもしれません。" -#: storage/buffer/bufmgr.c:6204 storage/buffer/bufmgr.c:6219 +#: storage/buffer/bufmgr.c:6199 storage/buffer/bufmgr.c:6214 #, c-format -msgid "writing block %u of relation %s" -msgstr "ブロック %u を リレーション %s に書き込んでいます" +msgid "writing block %u of relation \"%s\"" +msgstr "リレーション\"%2$s\"のブロック%1$uの書き込み中" -#: storage/buffer/bufmgr.c:7318 +#: 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 "リレーション %5$s のブロック %3$u..%4$u の間で%1$uページをゼロクリアして、%2$u件のチェックサムエラーを無視しています" +msgid "zeroing %u page(s) and ignoring %u checksum failure(s) among blocks %u..%u of relation \"%s\"" +msgstr "リレーション\"%5$s\"のブロック%3$u..%4$uの間の%1$uページをゼロクリアし、%2$u件のチェックサムエラーを無視します" -#: storage/buffer/bufmgr.c:7321 storage/buffer/bufmgr.c:7347 +#: storage/buffer/bufmgr.c:7320 storage/buffer/bufmgr.c:7348 #, c-format -msgid "Block %u held first zeroed page." -msgstr "ゼロクリアした最初のページはブロック %u にありました。" +msgid "Block %u held the first zeroed page." +msgstr "ゼロクリアした最初のページはブロック%uにありました。" -#: storage/buffer/bufmgr.c:7323 +#: storage/buffer/bufmgr.c:7322 #, c-format -msgid "See server log for details about the other %d invalid block(s)." -msgstr "他の%d個の不正なブロックの詳細については、サーバーログを参照してください。" - -#: storage/buffer/bufmgr.c:7338 -#, c-format -msgid "%u invalid pages among blocks %u..%u of relation %s" -msgstr "リレーション%4$sのブロック%2$u..%3$uに%1$uの不正なページ" +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個の不正なブロックの詳細については、サーバーログを参照してください。" #: storage/buffer/bufmgr.c:7339 #, c-format -msgid "Block %u held first invalid page." -msgstr "最初の不正なページはブロック %u にありました。" +msgid "%u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "リレーション\"%4$s\"のブロック%2$u..%3$uで%1$uの不正なページ" #: 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:7345 +#: storage/buffer/bufmgr.c:7346 #, c-format -msgid "invalid page in block %u of relation %s; zeroing out page" -msgstr "リレーション %2$s の %1$u ブロック目のページが不正です: ページをゼロで埋めました" +msgid "invalid page in block %u of relation \"%s\"; zeroing out page" +msgstr "リレーション\"%2$s\"の%1$uブロック目のページが不正です: ページをゼロクリアします" -#: storage/buffer/bufmgr.c:7346 +#: storage/buffer/bufmgr.c:7347 #, c-format -msgid "zeroing out %u invalid pages among blocks %u..%u of relation %s" -msgstr "リレーション %4$s のブロック%2$u~%3$uにある%1$u個の不正なページをゼロクリアします" +msgid "zeroing out %u invalid pages among blocks %u..%u of relation \"%s\"" +msgstr "リレーション\"%4$s\"のブロック%2$u..%3$u間の%1$u個の不正なページをゼロクリアします" -#: storage/buffer/bufmgr.c:7348 +#: storage/buffer/bufmgr.c:7349 #, c-format msgid "See server log for the other %u zeroed block(s)." msgstr "他の%u個の0クリアしたブロックについてはサーバーログを参照してください。" -#: storage/buffer/bufmgr.c:7353 -#, c-format -msgid "ignoring checksum failure in block %u of relation %s" -msgstr "リレーション%2$sでのブロック%1$uのチェックサムエラーを無視します" - #: storage/buffer/bufmgr.c:7354 #, c-format -msgid "ignoring %u checksum failures among blocks %u..%u of relation %s" -msgstr "リレーション%4$sでのブロック%2$u..%3$uの%1$u件のチェックサムエラーを無視します" +msgid "ignoring checksum failure in block %u of relation \"%s\"" +msgstr "リレーション\"%2$s\"のブロック%1$uでのチェックサムエラーを無視します" #: storage/buffer/bufmgr.c:7355 #, c-format -msgid "Block %u held first ignored page." -msgstr "無視した最初のページはブロック %u にありました。" +msgid "ignoring %u checksum failures among blocks %u..%u of relation \"%s\"" +msgstr "リレーション\"%4$s\"のブロック%2$u..%3$uでの%1$u件のチェックサムエラーを無視します" #: 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個のエラーを無視したブロックについてはサーバーログを参照してください。" @@ -23104,137 +23105,137 @@ msgstr "ファイル\"%s\"の切り詰め処理ができませんでした: %m" msgid "could not clone file \"%s\" to \"%s\": %m" msgstr "ファイル\"%s\"を\"%s\"にクローニングできませんでした: %m" -#: storage/file/fd.c:583 storage/file/fd.c:655 storage/file/fd.c:691 +#: 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:1074 +#: storage/file/fd.c:1071 #, c-format msgid "insufficient file descriptors available to start server process" msgstr "サーバープロセスを起動させるために利用できるファイル記述子が不足しています" -#: storage/file/fd.c:1075 +#: storage/file/fd.c:1072 #, c-format msgid "System allows %d, server needs at least %d, %d files are already open." msgstr "システムでは%d個のファイルを使用できますが、サーバーでは少なくとも%d個必要で、すでに%d個がオープンされています。" -#: storage/file/fd.c:1164 storage/file/fd.c:2679 storage/file/fd.c:2788 storage/file/fd.c:2942 +#: 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:1540 +#: storage/file/fd.c:1537 #, c-format msgid "temporary file: path \"%s\", size %lu" msgstr "一時ファイル: パス \"%s\"、サイズ %lu" -#: storage/file/fd.c:1679 +#: storage/file/fd.c:1676 #, c-format msgid "cannot create temporary directory \"%s\": %m" msgstr "一時ディレクトリ\"%s\"を作成できませんでした: %m" -#: storage/file/fd.c:1686 +#: storage/file/fd.c:1683 #, c-format msgid "cannot create temporary subdirectory \"%s\": %m" msgstr "一時サブディレクトリ\"%s\"を作成できませんでした: %m" -#: storage/file/fd.c:1883 +#: storage/file/fd.c:1880 #, c-format msgid "could not create temporary file \"%s\": %m" msgstr "一時ファイル\"%s\"を作成できませんでした: %m" -#: storage/file/fd.c:1919 +#: storage/file/fd.c:1916 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "一時ファイル\"%s\"をオープンできませんでした: %m" -#: storage/file/fd.c:1960 +#: storage/file/fd.c:1957 #, c-format msgid "could not unlink temporary file \"%s\": %m" msgstr "一時ファイル\"%s\"を unlink できませんでした: %m" -#: storage/file/fd.c:2050 +#: storage/file/fd.c:2047 #, c-format msgid "could not delete file \"%s\": %m" msgstr "ファイル\"%s\"を削除できませんでした: %m" -#: storage/file/fd.c:2289 +#: storage/file/fd.c:2286 #, c-format msgid "temporary file size exceeds \"temp_file_limit\" (%dkB)" msgstr "一時ファイルのサイズが\"temp_file_limit\" (%dkB)を超えています" -#: storage/file/fd.c:2655 storage/file/fd.c:2714 +#: storage/file/fd.c:2652 storage/file/fd.c:2711 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open file \"%s\"" msgstr "ファイル\"%2$s\"をオープンしようとした時にmaxAllocatedDescs(%1$d)を超えました" -#: storage/file/fd.c:2759 +#: storage/file/fd.c:2756 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to execute command \"%s\"" msgstr "コマンド\"%2$s\"を実行しようとした時にmaxAllocatedDescs(%1$d)を超えました" -#: storage/file/fd.c:2918 +#: storage/file/fd.c:2915 #, c-format msgid "exceeded maxAllocatedDescs (%d) while trying to open directory \"%s\"" msgstr "ディレクトリ\"%2$s\"をオープンしようとした時にmaxAllocatedDescs(%1$d)を超えました" -#: storage/file/fd.c:3449 +#: storage/file/fd.c:3446 #, c-format msgid "unexpected file found in temporary-files directory: \"%s\"" msgstr "一時ファイル用ディレクトリに想定外のファイルがありました: \"%s\"" -#: storage/file/fd.c:3567 +#: 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:3794 +#: storage/file/fd.c:3791 #, c-format msgid "syncing data directory (pre-fsync), elapsed time: %ld.%02d s, current path: %s" msgstr "データディレクトリを同期しています(pre-syncfs)、経過時間: %ld.%02d秒, 現在のパス: %s" -#: storage/file/fd.c:3826 +#: 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:4015 +#: storage/file/fd.c:4012 #, c-format msgid "\"%s\" is not supported on this platform." msgstr "このプラットフォームでは\"%s\"をサポートしていません。" -#: storage/file/fd.c:4030 tcop/backend_startup.c:1080 +#: storage/file/fd.c:4027 tcop/backend_startup.c:1080 #, c-format msgid "Invalid list syntax in parameter \"%s\"." msgstr "パラメータ\"%s\"のリスト構文が不正です。" -#: storage/file/fd.c:4050 tcop/backend_startup.c:1054 +#: storage/file/fd.c:4047 tcop/backend_startup.c:1054 #, c-format msgid "Invalid option \"%s\"." msgstr "不正なオプション\"%s\"。" -#: storage/file/fd.c:4063 +#: storage/file/fd.c:4060 #, c-format msgid "\"%s\" is not supported for WAL because %s is too small." msgstr "%2$sが小さすぎるため\"%1$s\"はWALに対してはサポートされません。" -#: storage/file/fd.c:4071 +#: storage/file/fd.c:4068 #, c-format msgid "\"%s\" is not supported for data because %s is too small." msgstr "%2$sが小さすぎるため\"%1$s\"はデータに対してはサポートされません。" @@ -23369,12 +23370,17 @@ msgstr "終了させようとしているプロセスに接続しているロー msgid "still waiting for backend with PID %d to accept ProcSignalBarrier" msgstr "PID %dのバックエンドがProcSignalBarrierを受け付けるのを待っています" -#: storage/ipc/procsignal.c:784 +#: 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:793 +#: storage/ipc/procsignal.c:797 #, c-format msgid "PID %d in cancel request did not match any process" msgstr "キャンセル要求内のPID %dがどのプロセスにも一致しません" @@ -23727,12 +23733,12 @@ msgstr "このデフォルトを変更するためには\"SET default_transactio msgid "a snapshot-importing transaction must not be READ ONLY DEFERRABLE" msgstr "スナップショットをインポートするトランザクションはREAD ONLY DEFERRABLEではいけません" -#: 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であるソースプロセスは既に実行中ではありません。" @@ -24408,12 +24414,12 @@ msgstr "接続を切断: セッション時間: %d:%02d:%02d.%03d ユーザー=% msgid "bind message has %d result formats but query has %d columns" msgstr "バインドメッセージは%dの結果書式がありましたが、問い合わせは%d列でした" -#: tcop/pquery.c:940 tcop/pquery.c:1693 +#: tcop/pquery.c:940 tcop/pquery.c:1684 #, c-format msgid "cursor can only scan forward" msgstr "カーゾルは前方へのスキャンしかできません" -#: tcop/pquery.c:941 tcop/pquery.c:1694 +#: tcop/pquery.c:941 tcop/pquery.c:1685 #, c-format msgid "Declare it with SCROLL option to enable backward scan." msgstr "後方スキャンを有効にするためにはSCROLLオプションを付けて宣言してください。" @@ -24459,6 +24465,11 @@ msgstr "%sコマンドを実行する権限がありません" 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 "CREATE STATISTICS はFROM句にあるリレーション名のみをサポートしています" + #: tsearch/dict_ispell.c:53 tsearch/dict_thesaurus.c:616 #, c-format msgid "multiple DictFile parameters" @@ -24689,92 +24700,92 @@ msgstr "%sは正数でなければなりまsん" msgid "%s must be >= 0" msgstr "%sは0以上でなければなりません" -#: utils/activity/pgstat.c:533 +#: utils/activity/pgstat.c:534 #, c-format msgid "could not unlink permanent statistics file \"%s\": %m" msgstr "永続統計情報ファイル\"%s\"をunlinkできませんでした: %m" -#: utils/activity/pgstat.c:1440 +#: utils/activity/pgstat.c:1426 #, c-format msgid "invalid statistics kind: \"%s\"" msgstr "不正な統計情報種別: \"%s\"" -#: utils/activity/pgstat.c:1485 +#: utils/activity/pgstat.c:1471 #, c-format msgid "custom cumulative statistics name is invalid" msgstr "独自集積統計情報の名前が不正です" -#: utils/activity/pgstat.c:1486 +#: utils/activity/pgstat.c:1472 #, c-format msgid "Provide a non-empty name for the custom cumulative statistics." msgstr "独自集積統計情報の名前には空ではない文字列を設定してください。" -#: utils/activity/pgstat.c:1489 +#: utils/activity/pgstat.c:1475 #, c-format msgid "custom cumulative statistics ID %u is out of range" msgstr "独自集積統計情報のID %uは範囲外です" -#: utils/activity/pgstat.c:1490 +#: 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:1495 utils/activity/pgstat.c:1522 utils/activity/pgstat.c:1535 +#: 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:1496 +#: 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:1505 +#: utils/activity/pgstat.c:1491 #, c-format msgid "custom cumulative statistics property is invalid" msgstr "独自集積統計情報の特性が不正です" -#: utils/activity/pgstat.c:1506 +#: 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:1523 +#: 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:1536 +#: 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:1542 +#: utils/activity/pgstat.c:1528 #, c-format msgid "registered custom cumulative statistics \"%s\" with ID %u" msgstr "独自集積統計情報\"%s\"をID %uで登録しました" -#: utils/activity/pgstat.c:1611 +#: utils/activity/pgstat.c:1597 #, c-format msgid "could not open temporary statistics file \"%s\": %m" msgstr "一時統計情報ファイル\"%s\"をオープンできませんでした: %m" -#: utils/activity/pgstat.c:1732 +#: utils/activity/pgstat.c:1718 #, c-format msgid "could not write temporary statistics file \"%s\": %m" msgstr "一時統計情報ファイル\"%s\"に書き込みできませんでした: %m" -#: utils/activity/pgstat.c:1741 +#: utils/activity/pgstat.c:1727 #, c-format msgid "could not close temporary statistics file \"%s\": %m" msgstr "一時統計情報ファイル\"%s\"をクローズできませんでした: %m" -#: utils/activity/pgstat.c:1795 +#: utils/activity/pgstat.c:1781 #, c-format msgid "could not open statistics file \"%s\": %m" msgstr "統計情報ファイル\"%s\"をオープンできませんでした: %m" -#: utils/activity/pgstat.c:2035 +#: utils/activity/pgstat.c:2032 #, c-format msgid "corrupted statistics file \"%s\"" msgstr "統計情報ファイル\"%s\"が破損しています" @@ -24784,6 +24795,11 @@ msgstr "統計情報ファイル\"%s\"が破損しています" msgid "function call to dropped function" msgstr "削除された関数の呼び出し" +#: utils/activity/pgstat_shmem.c:536 +#, c-format +msgid "Failed while allocating entry %u/%u/%." +msgstr "エントリ %u/%u/% の割り当て中に失敗しました。" + #: utils/activity/pgstat_xact.c:366 #, c-format msgid "resetting existing statistics for kind %s, db=%u, oid=%" @@ -24799,102 +24815,102 @@ msgstr "待機イベント\"%s\"は待機イベントタイプ\"%s\"内にすで msgid "too many custom wait events" msgstr "独自待機イベントの数が多すぎます" -#: utils/adt/acl.c:187 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:188 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:276 +#: utils/adt/acl.c:293 #, c-format msgid "unrecognized key word: \"%s\"" msgstr "キーワードが不明です: \"%s\"" -#: utils/adt/acl.c:277 +#: utils/adt/acl.c:294 #, c-format msgid "ACL key word must be \"group\" or \"user\"." msgstr "ACLキーワードは\"group\"または\"user\"でなければなりません。" -#: utils/adt/acl.c:285 +#: utils/adt/acl.c:302 #, c-format msgid "missing name" msgstr "名前がありません" -#: utils/adt/acl.c:286 +#: 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:292 +#: utils/adt/acl.c:309 #, c-format msgid "missing \"=\" sign" msgstr "\"=\"記号がありません" -#: utils/adt/acl.c:351 +#: utils/adt/acl.c:368 #, c-format msgid "invalid mode character: must be one of \"%s\"" msgstr "不正なモード文字: \"%s\"の一つでなければなりません" -#: utils/adt/acl.c:381 +#: utils/adt/acl.c:398 #, c-format msgid "a name must follow the \"/\" sign" msgstr "\"/\"記号の後には名前が必要です" -#: utils/adt/acl.c:393 +#: utils/adt/acl.c:410 #, c-format msgid "defaulting grantor to user ID %u" msgstr "権限付与者をデフォルトのユーザーID %uにしています" -#: utils/adt/acl.c:579 +#: utils/adt/acl.c:596 #, c-format msgid "ACL array contains wrong data type" msgstr "ACL配列に不正なデータ型があります。" -#: utils/adt/acl.c:583 +#: utils/adt/acl.c:600 #, c-format msgid "ACL arrays must be one-dimensional" msgstr "ACL配列は1次元の配列でなければなりません" -#: utils/adt/acl.c:587 +#: utils/adt/acl.c:604 #, c-format msgid "ACL arrays must not contain null values" msgstr "ACL配列にはNULL値を含めてはいけません" -#: utils/adt/acl.c:616 +#: utils/adt/acl.c:633 #, c-format msgid "extra garbage at the end of the ACL specification" msgstr "ACL指定の後に余計なごみがあります" -#: utils/adt/acl.c:1264 +#: utils/adt/acl.c:1281 #, c-format msgid "grant options cannot be granted back to your own grantor" msgstr "グラントオプションでその権限付与者に権限を付与し返すことはできません" -#: utils/adt/acl.c:1580 +#: utils/adt/acl.c:1597 #, c-format msgid "aclinsert is no longer supported" msgstr "aclinsertはもうサポートされていません" -#: utils/adt/acl.c:1590 +#: 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:3548 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:5330 +#: utils/adt/acl.c:5347 #, c-format msgid "must be able to SET ROLE \"%s\"" msgstr "SET ROLE\"%s\"ができなければなりません" @@ -25284,7 +25300,7 @@ msgstr "TIME(%d)%sの位取りを許容最大値%dまで減らしました" msgid "date out of range: \"%s\"" msgstr "日付が範囲外です: \"%s\"" -#: 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:2565 +#: 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 "日付が範囲外です" @@ -25322,7 +25338,7 @@ msgstr "単位\"%s\"は型%sに対しては認識できません" #: 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:2587 utils/adt/xml.c:2594 utils/adt/xml.c:2614 utils/adt/xml.c:2621 +#: 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 "timestampの範囲外です" @@ -25979,7 +25995,7 @@ msgstr "配列は最低でも2つの列が必要です" msgid "mismatched array dimensions" msgstr "配列の次元が合っていません" -#: utils/adt/json.c:1850 utils/adt/jsonb_util.c:1963 +#: utils/adt/json.c:1850 utils/adt/jsonb_util.c:1969 #, c-format msgid "duplicate JSON object key value" msgstr "JSONオブジェクトキー値の重複" @@ -26044,22 +26060,22 @@ msgstr "jsonbオブジェクトは%s型へはキャストできません" msgid "cannot cast jsonb array or object to type %s" msgstr "jsonbの配列またはオブジェクトは%s型へはキャストできません" -#: utils/adt/jsonb_util.c:763 +#: 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:804 +#: 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:1678 utils/adt/jsonb_util.c:1698 +#: 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:1759 utils/adt/jsonb_util.c:1794 utils/adt/jsonb_util.c:1814 +#: 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を超えています" @@ -26521,12 +26537,12 @@ msgstr "非決定的照合順序はILIKEではサポートされません" msgid "LIKE pattern must not end with escape character" msgstr "LIKE パターンはエスケープ文字で終わってはなりません" -#: 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 "エスケープ文字は空か1文字でなければなりません。" @@ -26893,57 +26909,57 @@ msgstr "要求された文字は符号化方式に対して不正です: %u" msgid "percentile value %g is not between 0 and 1" msgstr "百分位数の値%gが0と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 "ロケール名\"%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 "照合順序\"%s\"には実際のバージョンがありませんが、バージョンが記録されています" -#: 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 "データベース中の照合順序はバージョン%sで作成されていますが、オペレーティングシステムはバージョン%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 "この照合順序の影響を受ける全てのオブジェクトを再構築して、ALTER COLLATION %s REFRESH VERSIONを実行するか、正しいバージョンのライブラリを用いてPostgreSQLをビルドしてください。" -#: 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\"が含まれています" @@ -27153,7 +27169,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:4475 #, c-format msgid "regular expression failed: %s" msgstr "正規表現が失敗しました: %s" @@ -27168,28 +27184,28 @@ msgstr "不正な正規表現オプション: \"%.*s\"" msgid "If you meant to use regexp_replace() with a start parameter, cast the fourth argument to integer explicitly." msgstr "regexp_replace()でパラメータstartを指定したいのであれば、4番目のパラメータを明示的に整数にキャストしてください。" -#: 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:6818 utils/misc/guc.c:6852 +#: 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 "SQL正規表現はエスケープされたダブルクオートを2つより多く含むことはできません" #. 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 "正規表現のマッチが多過ぎます" @@ -27925,136 +27941,136 @@ msgstr "無効なXMLコメント" msgid "not an XML document" msgstr "XML文書ではありません" -#: utils/adt/xml.c:1015 utils/adt/xml.c:1038 +#: utils/adt/xml.c:1020 utils/adt/xml.c:1043 #, c-format msgid "invalid XML processing instruction" msgstr "無効なXML処理命令です" -#: utils/adt/xml.c:1016 +#: utils/adt/xml.c:1021 #, c-format msgid "XML processing instruction target name cannot be \"%s\"." msgstr "XML処理命令の対象名を\"%s\"とすることができませんでした。" -#: utils/adt/xml.c:1039 +#: utils/adt/xml.c:1044 #, c-format msgid "XML processing instruction cannot contain \"?>\"." msgstr "XML処理命令には\"?>\"を含めることはできません。" -#: utils/adt/xml.c:1118 +#: utils/adt/xml.c:1123 #, c-format msgid "xmlvalidate is not implemented" msgstr "XML の妥当性検査は実装されていません" -#: utils/adt/xml.c:1174 +#: utils/adt/xml.c:1179 #, c-format msgid "could not initialize XML library" msgstr "XMLライブラリを初期化できませんでした" -#: utils/adt/xml.c:1175 +#: utils/adt/xml.c:1180 #, c-format msgid "libxml2 has incompatible char type: sizeof(char)=%zu, sizeof(xmlChar)=%zu." msgstr "libxml2が互換性がない文字型を持ちます: sizeof(char)=%zu、sizeof(xmlChar)=%zu" -#: utils/adt/xml.c:1261 +#: utils/adt/xml.c:1266 #, c-format msgid "could not set up XML error handler" msgstr "XMLエラーハンドラを設定できませんでした" -#: utils/adt/xml.c:1262 +#: 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のバージョンがPostgreSQLを構築する時に使用したlibxml2ヘッダと互換性がないことを示します。" -#: utils/adt/xml.c:2294 +#: utils/adt/xml.c:2283 msgid "Invalid character value." msgstr "文字の値が有効ではありません" -#: utils/adt/xml.c:2297 +#: utils/adt/xml.c:2286 msgid "Space required." msgstr "スペースをあけてください。" -#: utils/adt/xml.c:2300 +#: utils/adt/xml.c:2289 msgid "standalone accepts only 'yes' or 'no'." msgstr "standalone には 'yes' か 'no' だけが有効です。" -#: utils/adt/xml.c:2303 +#: utils/adt/xml.c:2292 msgid "Malformed declaration: missing version." msgstr "不正な形式の宣言: バージョンがありません。" -#: utils/adt/xml.c:2306 +#: utils/adt/xml.c:2295 msgid "Missing encoding in text declaration." msgstr "テキスト宣言にエンコーディングの指定がありません。" -#: utils/adt/xml.c:2309 +#: utils/adt/xml.c:2298 msgid "Parsing XML declaration: '?>' expected." msgstr "XML 宣言のパース中: '>?' が必要です。" -#: utils/adt/xml.c:2312 +#: utils/adt/xml.c:2301 #, c-format msgid "Unrecognized libxml error code: %d." msgstr "認識できないlibxml のエラーコード: %d" -#: utils/adt/xml.c:2566 +#: utils/adt/xml.c:2555 #, c-format msgid "XML does not support infinite date values." msgstr "XMLはデータ値として無限をサポートしません。" -#: utils/adt/xml.c:2588 utils/adt/xml.c:2615 +#: 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:3031 +#: utils/adt/xml.c:3020 #, c-format msgid "invalid query" msgstr "不正な無効な問い合わせ" -#: utils/adt/xml.c:3123 +#: utils/adt/xml.c:3112 #, c-format msgid "portal \"%s\" does not return tuples" msgstr "ポータル\"%s\"はタプルを返却しません" -#: utils/adt/xml.c:4375 +#: utils/adt/xml.c:4364 #, c-format msgid "invalid array for XML namespace mapping" msgstr "XML名前空間マッピングに対する不正な配列" -#: utils/adt/xml.c:4376 +#: 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軸の長さが2である2次元配列でなければなりません。" -#: utils/adt/xml.c:4400 +#: utils/adt/xml.c:4389 #, c-format msgid "empty XPath expression" msgstr "空のXPath式" -#: utils/adt/xml.c:4452 +#: utils/adt/xml.c:4441 #, c-format msgid "neither namespace name nor URI may be null" msgstr "名前空間名もURIもnullにはできません" -#: utils/adt/xml.c:4459 +#: utils/adt/xml.c:4448 #, c-format msgid "could not register XML namespace with name \"%s\" and URI \"%s\"" msgstr "\"%s\"という名前のXML名前空間およびURI\"%s\"を登録できませんでした" -#: utils/adt/xml.c:4808 +#: utils/adt/xml.c:4797 #, c-format msgid "DEFAULT namespace is not supported" msgstr "デフォルト名前空間は実装されていません" -#: utils/adt/xml.c:4837 +#: utils/adt/xml.c:4826 #, c-format msgid "row path filter must not be empty string" msgstr "行パスフィルタは空文字列であってはなりません" -#: utils/adt/xml.c:4871 +#: utils/adt/xml.c:4860 #, c-format msgid "column path filter must not be empty string" msgstr "列パスフィルタ空文字列であってはなりません" -#: utils/adt/xml.c:5018 +#: utils/adt/xml.c:5007 #, c-format msgid "more than one value returned by column XPath expression" msgstr "列XPath式が2つ以上の値を返却しました" @@ -28243,78 +28259,78 @@ msgstr "FATAL" msgid "PANIC" msgstr "PANIC" -#: utils/fmgr/dfmgr.c:126 +#: utils/fmgr/dfmgr.c:133 #, c-format msgid "could not find function \"%s\" in file \"%s\"" msgstr "ファイル\"%2$s\"内に関数\"%1$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\"に長さ0の構成要素があります" @@ -28511,112 +28527,112 @@ msgstr "ロール\"%s\"からの接続が多すぎます" msgid "invalid role OID: %u" msgstr "不正なロールID: %u" -#: utils/init/miscinit.c:1197 +#: utils/init/miscinit.c:1198 #, c-format msgid "database system is shut down" msgstr "データベースシステムはシャットダウンしました" -#: utils/init/miscinit.c:1284 +#: utils/init/miscinit.c:1285 #, c-format msgid "could not create lock file \"%s\": %m" msgstr "ロックファイル\"%s\"を作成できませんでした: %m" -#: utils/init/miscinit.c:1298 +#: utils/init/miscinit.c:1299 #, c-format msgid "could not open lock file \"%s\": %m" msgstr "ロックファイル\"%s\"をオープンできませんでした: %m" -#: utils/init/miscinit.c:1305 +#: utils/init/miscinit.c:1306 #, c-format msgid "could not read lock file \"%s\": %m" msgstr "ロックファイル\"%s\"を読み取れませんでした: %m" -#: utils/init/miscinit.c:1314 +#: utils/init/miscinit.c:1315 #, c-format msgid "lock file \"%s\" is empty" msgstr "ロックファイル\"%s\"が空です" -#: utils/init/miscinit.c:1315 +#: 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:1359 +#: utils/init/miscinit.c:1360 #, c-format msgid "lock file \"%s\" already exists" msgstr "ロックファイル\"%s\"はすでに存在します" -#: utils/init/miscinit.c:1363 +#: 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:1365 +#: 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:1368 +#: 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:1370 +#: 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:1421 +#: utils/init/miscinit.c:1422 #, c-format msgid "could not remove old lock file \"%s\": %m" msgstr "古いロックファイル\"%s\"を削除できませんでした: %m" -#: utils/init/miscinit.c:1423 +#: 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:1460 utils/init/miscinit.c:1474 utils/init/miscinit.c:1485 +#: 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:1596 utils/init/miscinit.c:1738 utils/misc/guc.c:5763 +#: 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:1726 +#: utils/init/miscinit.c:1727 #, c-format msgid "could not open file \"%s\": %m; continuing anyway" msgstr "ファイル\"%s\"をオープンできませんでした: %m; とりあえず続けます" -#: utils/init/miscinit.c:1751 +#: 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:1790 utils/init/miscinit.c:1806 +#: 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:1792 +#: utils/init/miscinit.c:1793 #, c-format msgid "File \"%s\" is missing." msgstr "ファイル\"%s\"が存在しません" -#: utils/init/miscinit.c:1808 +#: utils/init/miscinit.c:1809 #, c-format msgid "File \"%s\" does not contain valid data." msgstr "ファイル\"%s\"に有効なデータがありません。" -#: utils/init/miscinit.c:1810 +#: utils/init/miscinit.c:1811 #, c-format msgid "You might need to initdb." msgstr "initdbする必要があるかもしれません" -#: utils/init/miscinit.c:1818 +#: 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とは互換性がありません" @@ -29016,7 +29032,7 @@ msgstr "パラメータ\"%s\"を変更できません" msgid "parameter \"%s\" cannot be changed now" msgstr "現在パラメータ\"%s\"を変更できません" -#: utils/misc/guc.c:3538 utils/misc/guc.c:3600 utils/misc/guc.c:4668 utils/misc/guc.c:6754 +#: 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\"を設定する権限がありません" @@ -29041,12 +29057,12 @@ msgstr "パラメータ\"%s\"は設定できません" msgid "parameter \"%s\" cannot be set locally in functions" msgstr "パラメータ\"%s\"は関数内では変更できません" -#: utils/misc/guc.c:4367 utils/misc/guc.c:4415 utils/misc/guc.c:5448 +#: 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:4368 utils/misc/guc.c:4416 utils/misc/guc.c:5449 +#: 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\"ロールの権限を持つロールのみがこのパラメータを参照することができます。" @@ -29061,47 +29077,47 @@ msgstr "ALTER SYSTEMはこの環境では許可されていません" msgid "permission denied to perform ALTER SYSTEM RESET ALL" msgstr "ALTER SYSTEM RESET ALLを行う権限がありません" -#: utils/misc/guc.c:4737 +#: 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:4782 +#: utils/misc/guc.c:4787 #, c-format msgid "could not parse contents of file \"%s\"" msgstr "ファイル\"%s\"の内容をパースできませんでした" -#: utils/misc/guc.c:4965 +#: utils/misc/guc.c:4970 #, c-format msgid "attempt to redefine parameter \"%s\"" msgstr "パラメータ\"%s\"を再定義しようとしています" -#: utils/misc/guc.c:5304 +#: utils/misc/guc.c:5309 #, c-format msgid "invalid configuration parameter name \"%s\", removing it" msgstr "設定パラメータ名\"%s\"は不正です、削除します" -#: utils/misc/guc.c:5306 +#: utils/misc/guc.c:5311 #, c-format msgid "\"%s\" is now a reserved prefix." msgstr "\"%s\" は予約された接頭辞になりました。" -#: utils/misc/guc.c:6177 +#: utils/misc/guc.c:6182 #, c-format msgid "while setting parameter \"%s\" to \"%s\"" msgstr "パラメータ\"%s\"の\"%s\"への変更中" -#: utils/misc/guc.c:6346 +#: utils/misc/guc.c:6351 #, c-format msgid "parameter \"%s\" could not be set" msgstr "パラメータ\"%s\"を設定できません" -#: utils/misc/guc.c:6436 +#: utils/misc/guc.c:6441 #, c-format msgid "could not parse setting for parameter \"%s\"" msgstr "パラメータ\"%s\"の設定をパースできません" -#: utils/misc/guc.c:6886 +#: utils/misc/guc.c:6897 #, c-format msgid "invalid value for parameter \"%s\": %g" msgstr "パラメータ\"%s\"の値が無効です: %g" @@ -31597,52 +31613,91 @@ 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 "スナップショットをインポートするトランザクションはSERIALIZABLEまたはREPEATABLE READ分離レベルでなければなりません" -#: 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 "異なるデータベースからのスナップショットを読み込むことはできません" + +#~ msgid "\"%s\" array cannot contain NULL values" +#~ msgstr "\"%s\" の配列はNULL値を格納できません" + +#~ msgid "\"%s\" cannot be NULL" +#~ msgstr "\"%s\"はNULLにはできません" + +#~ msgid "\"%s\" is not a physical replication slot." +#~ msgstr "\"%s\"は物理レプリケーションスロットではありません。" + +#~ msgid "\"%s\" must be set to -1 during binary upgrade mode." +#~ msgstr "バイナリアップグレードモード中は\"%s\"は-1に設定されている必要があります。" + +#~ msgid "\"%s\" must be set to 0 during binary upgrade mode." +#~ msgstr "バイナリアップグレードモード中は\"%s\"は0に設定されている必要があります。" + +#~ msgid "Cannot set STATISTIC_KIND_HISTOGRAM or STATISTIC_KIND_CORRELATION." +#~ msgstr "STATISTIC_KIND_HISTOGRAM および STATISTIC_KIND_CORRELATION は設定できません。" + +#~ msgid "Cannot set STATISTIC_KIND_MCELEM or STATISTIC_KIND_DECHIST." +#~ msgstr "STATISTIC_KIND_MCELEM および STATISTIC_KIND_DECHIST は設定できません。" + +#~ msgid "Cannot set STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM or STATISTIC_KIND_BOUNDS_HISTOGRAM." +#~ msgstr "STATISTIC_KIND_RANGE_LENGTH_HISTOGRAM および STATISTIC_KIND_BOUNDS_HISTOGRAM は設定できません。" + +#~ msgid "Replication slot \"%s\" does not exist." +#~ msgstr "レプリケーションスロット\"%s\"は存在しません。" + +#~ msgid "attribute \"%s\" is not a range type" +#~ msgstr "属性 \"%s\" は範囲型ではありません" + +#~ msgid "attribute %d of relation \"%s\" does not exist" +#~ msgstr "リレーション \"%2$s\" の属性%1$dは存在しません" + +#~ msgid "cannot specify both attname and attnum" +#~ msgstr "attname と attnum の両方を指定することはできません" + +#~ msgid "reltuples cannot be < -1.0" +#~ msgstr "reltuplesは-1.0未満にはできません" diff --git a/src/backend/po/ko.po b/src/backend/po/ko.po index 5d68af6039987..7729b52ff0030 100644 --- a/src/backend/po/ko.po +++ b/src/backend/po/ko.po @@ -3055,12 +3055,7 @@ msgid "" "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 s, 동기화시간: %ld.%03d " -"s, 전체시간: %ld.%03d s; 동기화 파일 개수: %d, 최장시간: %ld.%03d s, 평균시" -"간: %ld.%03d s; 실제작업량: %d kB, 예상한작업량: %d kB; lsn=%X/%X, redo lsn=" -"%X/%X" +msgstr "체크포인트 작업완료: %d개(%.1f%%) 버퍼 씀, %d개 SLRU 버퍼 씀; %d개 WAL 파일 추가됨, %d개 지웠음, %d개 재활용; 쓰기시간: %ld.%03d s, 동기화시간: %ld.%03d s, 전체시간: %ld.%03d s; 동기화 파일 개수: %d, 최장시간: %ld.%03d s, 평균시간: %ld.%03d s; 실제작업량: %d kB, 예상한작업량: %d kB; lsn=%X/%X, redo lsn=%X/%X" #: access/transam/xlog.c:7280 #, c-format diff --git a/src/backend/po/ru.po b/src/backend/po/ru.po index 94cdeaaa143d1..f0be745c440f4 100644 --- a/src/backend/po/ru.po +++ b/src/backend/po/ru.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: postgres (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-19 22:26+0300\n" -"PO-Revision-Date: 2025-09-20 12:20+0300\n" +"POT-Creation-Date: 2025-11-09 06:28+0200\n" +"PO-Revision-Date: 2025-11-09 08:27+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -97,14 +97,14 @@ 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:1246 -#: access/transam/xlogrecovery.c:1344 access/transam/xlogrecovery.c:1381 -#: access/transam/xlogrecovery.c:1448 backup/basebackup.c:2128 +#: 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:2485 -#: replication/slot.c:2526 replication/walsender.c:629 +#: 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 #, c-format @@ -114,8 +114,8 @@ 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:2489 -#: replication/slot.c:2530 replication/walsender.c:634 +#: replication/logical/snapbuild.c:1956 replication/slot.c:2509 +#: replication/slot.c:2550 replication/walsender.c:648 #: utils/cache/relmapper.c:833 #, c-format msgid "could not read file \"%s\": read %d of %zu" @@ -134,7 +134,7 @@ msgstr "не удалось прочитать файл \"%s\" (прочитан #: 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:2391 replication/slot.c:2557 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 @@ -169,7 +169,7 @@ msgstr "" #: 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/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 @@ -177,8 +177,8 @@ 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 +#: 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 @@ -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:9340 access/transam/xlogfuncs.c:699 +#: 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 @@ -206,10 +206,10 @@ msgstr "не удалось записать файл \"%s\": %m" #: 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:8770 backup/basebackup_server.c:207 +#: 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:2359 replication/slot.c:2467 storage/file/fd.c:817 +#: 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 #, c-format @@ -224,19 +224,19 @@ msgstr "не удалось синхронизировать с ФС файл \" #: ../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 +#: 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: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 @@ -302,9 +302,9 @@ 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" @@ -365,8 +365,8 @@ 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 +#: 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 #, c-format msgid "could not rename file \"%s\" to \"%s\": %m" @@ -739,7 +739,7 @@ msgstr "не удалось получить код выхода от подпр #: 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 +#: 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 #: storage/smgr/md.c:401 storage/smgr/md.c:460 storage/sync/sync.c:243 #: utils/time/snapmgr.c:1609 @@ -932,7 +932,7 @@ msgstr "" #: 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" @@ -1263,7 +1263,7 @@ msgstr "обращаться к временным индексам других msgid "failed to re-find tuple within index \"%s\"" msgstr "не удалось повторно найти кортеж в индексе \"%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 @@ -1389,7 +1389,7 @@ 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 +#: 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 @@ -1514,12 +1514,12 @@ 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:9329 +#: 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:2306 storage/file/copydir.c:173 +#: replication/slot.c:2319 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" @@ -1537,7 +1537,7 @@ msgstr "не удалось обрезать файл \"%s\" до нужного #: 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:2355 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 @@ -1804,47 +1804,47 @@ 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 "при сканировании блока %u (смещение %u) отношения \"%s.%s\"" -#: 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 блок." @@ -1871,7 +1871,7 @@ 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 +#: commands/tablecmds.c:19666 commands/tablecmds.c:21608 #, c-format msgid "\"%s\" is not an index" msgstr "\"%s\" - это не индекс" @@ -1925,7 +1925,7 @@ msgstr "" "Причиной тому могло быть прерывание операции VACUUM в версии 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\"" @@ -1933,12 +1933,12 @@ 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" @@ -2005,7 +2005,7 @@ msgid "\"%s\" cannot be empty." msgstr "Значение \"%s\" не может быть пустым." # well-spelled: симв -#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4879 +#: access/table/tableamapi.c:113 access/transam/xlogrecovery.c:4902 #, 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:1097 +#: access/transam/multixact.c:1098 #, 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:1099 access/transam/multixact.c:1106 -#: access/transam/multixact.c:1130 access/transam/multixact.c:1139 +#: 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 #, c-format msgid "" @@ -2069,7 +2069,7 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: access/transam/multixact.c:1104 +#: access/transam/multixact.c:1105 #, 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:1125 access/transam/multixact.c:2482 +#: access/transam/multixact.c:1126 access/transam/multixact.c:2483 #, 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:1134 access/transam/multixact.c:2491 +#: access/transam/multixact.c:1135 access/transam/multixact.c:2492 #, 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:1195 +#: access/transam/multixact.c:1196 #, c-format msgid "multixact \"members\" limit exceeded" msgstr "слишком много членов мультитранзакции" -#: access/transam/multixact.c:1196 +#: access/transam/multixact.c:1197 #, 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:1201 +#: access/transam/multixact.c:1202 #, 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:1232 +#: access/transam/multixact.c:1233 #, 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:1237 +#: access/transam/multixact.c:1238 #, c-format msgid "" "Execute a database-wide VACUUM in that database with reduced " @@ -2169,17 +2169,17 @@ msgstr "" "Выполните очистку (VACUUM) всей этой базы данных, уменьшив значения " "\"vacuum_multixact_freeze_min_age\" и \"vacuum_multixact_freeze_table_age\"." -#: access/transam/multixact.c:1377 +#: access/transam/multixact.c:1378 #, c-format msgid "MultiXactId %u does no longer exist -- apparent wraparound" msgstr "MultiXactId %u прекратил существование: видимо, произошло зацикливание" -#: access/transam/multixact.c:1383 +#: access/transam/multixact.c:1384 #, 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:2488 access/transam/multixact.c:2497 #, c-format msgid "" "To avoid MultiXactId assignment failures, execute a database-wide VACUUM in " @@ -2192,7 +2192,7 @@ msgstr "" "Возможно, вам также придётся зафиксировать или откатить старые " "подготовленные транзакции и удалить неиспользуемые слоты репликации." -#: access/transam/multixact.c:2775 +#: access/transam/multixact.c:2776 #, c-format msgid "" "MultiXact member wraparound protections are disabled because oldest " @@ -2201,12 +2201,12 @@ msgstr "" "Защита от зацикливания членов мультитранзакций отключена, так как старейшая " "отмеченная мультитранзакция %u не найдена на диске" -#: access/transam/multixact.c:2797 +#: access/transam/multixact.c:2798 #, c-format msgid "MultiXact member wraparound protections are now enabled" msgstr "Защита от зацикливания мультитранзакций сейчас включена" -#: access/transam/multixact.c:3188 +#: access/transam/multixact.c:3189 #, c-format msgid "" "oldest MultiXact %u not found, earliest MultiXact %u, skipping truncation" @@ -2214,7 +2214,7 @@ msgstr "" "старейшая мультитранзакция %u не найдена, новейшая мультитранзакция: %u, " "усечение пропускается" -#: access/transam/multixact.c:3206 +#: access/transam/multixact.c:3207 #, c-format msgid "" "cannot truncate up to MultiXact %u because it does not exist on disk, " @@ -2223,7 +2223,7 @@ msgstr "" "выполнить усечение до мультитранзакции %u нельзя ввиду её отсутствия на " "диске, усечение пропускается" -#: access/transam/multixact.c:3525 +#: access/transam/multixact.c:3526 #, c-format msgid "invalid MultiXactId: %u" msgstr "неверный MultiXactId: %u" @@ -2252,12 +2252,12 @@ msgstr "потеряно подключение к параллельному и msgid "parallel worker" msgstr "параллельный исполнитель" -#: access/transam/parallel.c:1348 replication/logical/applyparallelworker.c:890 +#: access/transam/parallel.c:1348 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:1353 replication/logical/applyparallelworker.c:903 #, c-format msgid "invalid magic number in dynamic shared memory segment" msgstr "неверное магическое число в динамическом сегменте разделяемой памяти" @@ -2541,9 +2541,9 @@ msgstr "" "вычисленная контрольная сумма (CRC) не соответствует значению, сохранённому " "в файле \"%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 "Не удалось разместить обработчик журнала транзакций." @@ -2844,7 +2844,7 @@ msgstr "" "не удалось записать в файл журнала \"%s\" (смещение: %u, длина: %zu): %m" #: access/transam/xlog.c:3741 access/transam/xlogutils.c:820 -#: replication/walsender.c:3074 +#: replication/walsender.c:3088 #, c-format msgid "requested WAL segment %s has already been removed" msgstr "запрошенный сегмент WAL %s уже удалён" @@ -2990,9 +2990,9 @@ msgstr[2] "управляющий файл содержит неверный р msgid "\"%s\" must be at least twice \"%s\"" msgstr "\"%s\" должно быть как минимум вдвое больше \"%s\"" -#: access/transam/xlog.c:4726 catalog/namespace.c:4696 +#: access/transam/xlog.c:4726 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:2727 tcop/postgres.c:3626 utils/error/elog.c:2257 #, c-format msgid "List syntax is invalid." msgstr "Ошибка синтаксиса в списке." @@ -3184,64 +3184,64 @@ msgstr "" "во время выключения системы баз данных отмечена активность в журнале " "предзаписи" -#: access/transam/xlog.c:7871 +#: access/transam/xlog.c:7869 #, c-format msgid "recovery restart point at %X/%X" msgstr "точка перезапуска восстановления в позиции %X/%X" -#: access/transam/xlog.c:7873 +#: access/transam/xlog.c:7871 #, c-format msgid "Last completed transaction was at log time %s." msgstr "Последняя завершённая транзакция была выполнена в %s." -#: access/transam/xlog.c:8137 +#: access/transam/xlog.c:8135 #, c-format msgid "restore point \"%s\" created at %X/%X" msgstr "точка восстановления \"%s\" создана в позиции %X/%X" -#: access/transam/xlog.c:8344 +#: access/transam/xlog.c:8342 #, c-format msgid "online backup was canceled, recovery cannot continue" msgstr "" "резервное копирование \"на ходу\" было отменено, продолжить восстановление " "нельзя" -#: access/transam/xlog.c:8402 +#: 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:8468 +#: 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:8505 +#: 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:8775 +#: access/transam/xlog.c:8773 #, c-format msgid "could not fsync write-through file \"%s\": %m" msgstr "не удалось синхронизировать с ФС файл сквозной записи %s: %m" -#: access/transam/xlog.c:8780 +#: access/transam/xlog.c:8778 #, c-format msgid "could not fdatasync file \"%s\": %m" msgstr "не удалось синхронизировать с ФС данные (fdatasync) файла \"%s\": %m" -#: access/transam/xlog.c:8857 access/transam/xlog.c:9193 +#: 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:8858 access/transam/xlog.c:9194 +#: access/transam/xlog.c:8856 access/transam/xlog.c:9192 #: access/transam/xlogfuncs.c:249 #, c-format msgid "" @@ -3250,12 +3250,12 @@ msgstr "" "Параметр \"wal_level\" должен иметь значение \"replica\" или \"logical\" при " "запуске сервера." -#: access/transam/xlog.c:8863 +#: access/transam/xlog.c:8861 #, c-format msgid "backup label too long (max %d bytes)" msgstr "длина метки резервной копии превышает предел (%d байт)" -#: access/transam/xlog.c:8984 +#: access/transam/xlog.c:8982 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed since last " @@ -3264,7 +3264,7 @@ msgstr "" "после последней точки перезапуска был воспроизведён WAL, созданный в режиме " "\"full_page_writes=off\"" -#: access/transam/xlog.c:8986 access/transam/xlog.c:9282 +#: 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 " @@ -3276,23 +3276,23 @@ msgstr "" "CHECKPOINT на ведущем сервере, а затем попробуйте резервное копирование \"на " "ходу\" ещё раз." -#: access/transam/xlog.c:9066 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:9073 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:9232 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:9233 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. " @@ -3301,7 +3301,7 @@ msgstr "" "Это означает, что создаваемая резервная копия испорчена и использовать её не " "следует. Попробуйте резервное копирование \"на ходу\" ещё раз." -#: access/transam/xlog.c:9280 +#: access/transam/xlog.c:9278 #, c-format msgid "" "WAL generated with \"full_page_writes=off\" was replayed during online backup" @@ -3309,13 +3309,13 @@ msgstr "" "в процессе резервного копирования \"на ходу\" был воспроизведён WAL, " "созданный в режиме \"full_page_writes=off\"" -#: access/transam/xlog.c:9396 +#: 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:9410 +#: access/transam/xlog.c:9408 #, c-format msgid "" "still waiting for all required WAL segments to be archived (%d seconds " @@ -3323,7 +3323,7 @@ msgid "" msgstr "" "продолжается ожидание архивации всех нужных сегментов WAL (прошло %d сек.)" -#: access/transam/xlog.c:9412 +#: access/transam/xlog.c:9410 #, c-format msgid "" "Check that your \"archive_command\" is executing properly. You can safely " @@ -3334,12 +3334,12 @@ msgstr "" "копирования можно отменить безопасно, но резервная копия базы будет " "непригодна без всех сегментов WAL." -#: access/transam/xlog.c:9419 +#: access/transam/xlog.c:9417 #, c-format msgid "all required WAL segments have been archived" msgstr "все нужные сегменты WAL заархивированы" -#: access/transam/xlog.c:9423 +#: access/transam/xlog.c:9421 #, c-format msgid "" "WAL archiving is not enabled; you must ensure that all required WAL segments " @@ -3348,7 +3348,7 @@ msgstr "" "архивация WAL не настроена; вы должны обеспечить копирование всех требуемых " "сегментов WAL другими средствами для получения резервной копии" -#: access/transam/xlog.c:9462 +#: access/transam/xlog.c:9460 #, c-format msgid "aborting backup due to backend exiting before pg_backup_stop was called" msgstr "" @@ -3711,7 +3711,7 @@ 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 " @@ -3720,7 +3720,7 @@ msgstr "" "начинается восстановление копии с LSN redo %X/%X, LSN контрольной точки %X/" "%X, на линии времени %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" @@ -3728,7 +3728,7 @@ msgstr "" "не удалось найти положение REDO %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/" @@ -3744,85 +3744,85 @@ msgstr "" "Будьте осторожны: при восстановлении резервной копии удаление \"%s/" "backup_label\" приведёт к повреждению кластера." -#: 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 redo %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:813 #, c-format msgid "entering standby mode" msgstr "переход в режим резервного сервера" -#: access/transam/xlogrecovery.c:815 +#: access/transam/xlogrecovery.c:816 #, c-format msgid "starting point-in-time recovery to XID %u" msgstr "начинается восстановление точки во времени до XID %u" -#: access/transam/xlogrecovery.c:819 +#: access/transam/xlogrecovery.c:820 #, c-format msgid "starting point-in-time recovery to %s" msgstr "начинается восстановление точки во времени до %s" -#: access/transam/xlogrecovery.c:823 +#: access/transam/xlogrecovery.c:824 #, c-format msgid "starting point-in-time recovery to \"%s\"" msgstr "начинается восстановление точки во времени до \"%s\"" -#: access/transam/xlogrecovery.c:827 +#: access/transam/xlogrecovery.c:828 #, c-format msgid "starting point-in-time recovery to WAL location (LSN) \"%X/%X\"" msgstr "" "начинается восстановление точки во времени до позиции в WAL (LSN) \"%X/%X\"" -#: access/transam/xlogrecovery.c:831 +#: access/transam/xlogrecovery.c:832 #, c-format msgid "starting point-in-time recovery to earliest consistent point" msgstr "" "начинается восстановление точки во времени до первой точки согласованности" -#: access/transam/xlogrecovery.c:834 +#: access/transam/xlogrecovery.c:835 #, c-format msgid "starting archive recovery" msgstr "начинается восстановление архива" -#: access/transam/xlogrecovery.c:855 +#: access/transam/xlogrecovery.c:856 #, 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:859 #, c-format msgid "" "Latest checkpoint in file \"%s\" is at %X/%X on timeline %u, but in the " @@ -3832,7 +3832,7 @@ msgstr "" "Последняя контрольная точка в файле \"%s\": %X/%X на линии времени %u, но в " "истории запрошенной линии времени сервер ответвился с этой линии в %X/%X." -#: access/transam/xlogrecovery.c:873 +#: access/transam/xlogrecovery.c:874 #, c-format msgid "" "requested timeline %u does not contain minimum recovery point %X/%X on " @@ -3841,22 +3841,22 @@ msgstr "" "запрошенная линия времени %u не содержит минимальную точку восстановления %X/" "%X на линии времени %u" -#: access/transam/xlogrecovery.c:901 +#: access/transam/xlogrecovery.c:902 #, c-format msgid "invalid next transaction ID" msgstr "неверный ID следующей транзакции" -#: access/transam/xlogrecovery.c:906 +#: access/transam/xlogrecovery.c:907 #, c-format msgid "invalid redo in checkpoint record" msgstr "неверная запись REDO в контрольной точке" -#: access/transam/xlogrecovery.c:917 +#: access/transam/xlogrecovery.c:918 #, c-format msgid "invalid redo record in shutdown checkpoint" msgstr "неверная запись REDO в контрольной точке выключения" -#: access/transam/xlogrecovery.c:946 +#: access/transam/xlogrecovery.c:947 #, c-format msgid "" "database system was not properly shut down; automatic recovery in progress" @@ -3864,19 +3864,19 @@ msgstr "" "система БД была остановлена нештатно; производится автоматическое " "восстановление" -#: access/transam/xlogrecovery.c:950 +#: access/transam/xlogrecovery.c:951 #, 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:994 #, c-format msgid "backup_label contains data inconsistent with control file" msgstr "backup_label содержит данные, не согласованные с файлом pg_control" -#: access/transam/xlogrecovery.c:994 +#: access/transam/xlogrecovery.c:995 #, c-format msgid "" "This means that the backup is corrupted and you will have to use another " @@ -3885,24 +3885,24 @@ msgstr "" "Это означает, что резервная копия повреждена и для восстановления БД " "придётся использовать другую копию." -#: access/transam/xlogrecovery.c:1048 +#: access/transam/xlogrecovery.c:1049 #, c-format msgid "using recovery command file \"%s\" is not supported" msgstr "" "использование файла с конфигурацией восстановления \"%s\" не поддерживается" -#: access/transam/xlogrecovery.c:1113 +#: access/transam/xlogrecovery.c:1114 #, c-format msgid "standby mode is not supported by single-user servers" msgstr "" "режим резервного сервера не поддерживается однопользовательским сервером" -#: access/transam/xlogrecovery.c:1130 +#: access/transam/xlogrecovery.c:1131 #, c-format msgid "specified neither \"primary_conninfo\" nor \"restore_command\"" msgstr "не указано ни \"primary_conninfo\", ни \"restore_command\"" -#: access/transam/xlogrecovery.c:1131 +#: access/transam/xlogrecovery.c:1132 #, c-format msgid "" "The database server will regularly poll the pg_wal subdirectory to check for " @@ -3911,102 +3911,102 @@ msgstr "" "Сервер БД будет регулярно опрашивать подкаталог pg_wal и проверять " "содержащиеся в нём файлы." -#: access/transam/xlogrecovery.c:1139 +#: access/transam/xlogrecovery.c:1140 #, 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:1178 #, 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: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 #, c-format msgid "invalid data in file \"%s\"" msgstr "неверные данные в файле \"%s\"" -#: access/transam/xlogrecovery.c:1327 +#: access/transam/xlogrecovery.c:1328 #, c-format msgid "Timeline ID parsed is %u, but expected %u." msgstr "Получен идентификатор линии времени %u, но ожидался %u." -#: access/transam/xlogrecovery.c:1338 +#: access/transam/xlogrecovery.c:1339 #, c-format msgid "this is an incremental backup, not a data directory" msgstr "это каталог инкрементальной копии, не каталог данных" -#: access/transam/xlogrecovery.c:1339 +#: access/transam/xlogrecovery.c:1340 #, c-format msgid "Use pg_combinebackup to reconstruct a valid data directory." msgstr "" "Реконструируйте полноценный каталог данных, используя pg_combinebackup." -#: access/transam/xlogrecovery.c:1725 +#: access/transam/xlogrecovery.c:1726 #, c-format msgid "unexpected record type found at redo point %X/%X" msgstr "в точке redo %X/%X обнаружена запись неожиданного типа" -#: access/transam/xlogrecovery.c:1748 +#: access/transam/xlogrecovery.c:1749 #, c-format msgid "redo starts at %X/%X" msgstr "запись REDO начинается со смещения %X/%X" -#: access/transam/xlogrecovery.c:1761 +#: access/transam/xlogrecovery.c:1762 #, 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:1852 #, c-format msgid "requested recovery stop point is before consistent recovery point" msgstr "" "запрошенная точка остановки восстановления предшествует согласованной точке " "восстановления" -#: access/transam/xlogrecovery.c:1883 +#: access/transam/xlogrecovery.c:1884 #, c-format msgid "redo done at %X/%X system usage: %s" msgstr "записи REDO обработаны до смещения %X/%X, нагрузка системы: %s" -#: access/transam/xlogrecovery.c:1889 +#: access/transam/xlogrecovery.c:1890 #, c-format msgid "last completed transaction was at log time %s" msgstr "последняя завершённая транзакция была выполнена в %s" -#: access/transam/xlogrecovery.c:1898 +#: access/transam/xlogrecovery.c:1899 #, c-format msgid "redo is not required" msgstr "данные REDO не требуются" -#: access/transam/xlogrecovery.c:1910 +#: access/transam/xlogrecovery.c:1911 #, c-format msgid "recovery ended before configured recovery target was reached" msgstr "восстановление окончилось до достижения заданной цели восстановления" -#: access/transam/xlogrecovery.c:2104 +#: access/transam/xlogrecovery.c:2105 #, c-format msgid "successfully skipped missing contrecord at %X/%X, overwritten at %s" msgstr "" "успешно пропущена отсутствующая запись contrecord в %X/%X, перезаписанная в " "%s" -#: access/transam/xlogrecovery.c:2171 +#: access/transam/xlogrecovery.c:2172 #, c-format msgid "unexpected directory entry \"%s\" found in %s" msgstr "в %2$s обнаружен недопустимый элемент-каталог \"%1$s\"" -#: access/transam/xlogrecovery.c:2173 +#: access/transam/xlogrecovery.c:2174 #, c-format msgid "All directory entries in %s/ should be symbolic links." msgstr "Все элементы-каталоги в %s/ должны быть символическими ссылками." -#: access/transam/xlogrecovery.c:2175 +#: access/transam/xlogrecovery.c:2176 #, c-format msgid "" "Remove those directories, or set \"allow_in_place_tablespaces\" to ON " @@ -4015,23 +4015,23 @@ msgstr "" "Удалите эти каталоги или на время установите в " "\"allow_in_place_tablespaces\" значение ON, чтобы восстановление завершилось." -#: access/transam/xlogrecovery.c:2227 +#: access/transam/xlogrecovery.c:2228 #, 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:2258 +#: access/transam/xlogrecovery.c:2259 #, 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:2297 #, c-format msgid "WAL redo at %X/%X for %s" msgstr "запись REDO в WAL в позиции %X/%X для %s" -#: access/transam/xlogrecovery.c:2394 +#: access/transam/xlogrecovery.c:2395 #, c-format msgid "" "unexpected previous timeline ID %u (current timeline ID %u) in checkpoint " @@ -4040,13 +4040,13 @@ msgstr "" "неожиданный ID предыдущей линии времени %u (ID текущей линии времени %u) в " "записи контрольной точки" -#: access/transam/xlogrecovery.c:2403 +#: access/transam/xlogrecovery.c:2404 #, 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:2419 +#: access/transam/xlogrecovery.c:2420 #, c-format msgid "" "unexpected timeline ID %u in checkpoint record, before reaching minimum " @@ -4055,83 +4055,83 @@ msgstr "" "неожиданный ID линии времени %u в записи контрольной точки, до достижения " "минимальной к. т. %X/%X на линии времени %u" -#: access/transam/xlogrecovery.c:2603 access/transam/xlogrecovery.c:2879 +#: access/transam/xlogrecovery.c:2604 access/transam/xlogrecovery.c:2880 #, c-format msgid "recovery stopping after reaching consistency" msgstr "" "восстановление останавливается после достижения согласованного состояния" -#: access/transam/xlogrecovery.c:2624 +#: access/transam/xlogrecovery.c:2625 #, 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:2715 #, c-format msgid "recovery stopping before commit of transaction %u, time %s" msgstr "" "восстановление останавливается перед фиксированием транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2721 +#: access/transam/xlogrecovery.c:2722 #, c-format msgid "recovery stopping before abort of transaction %u, time %s" msgstr "" "восстановление останавливается перед прерыванием транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2774 +#: access/transam/xlogrecovery.c:2775 #, c-format msgid "recovery stopping at restore point \"%s\", time %s" msgstr "восстановление останавливается в точке восстановления \"%s\", время %s" -#: access/transam/xlogrecovery.c:2792 +#: access/transam/xlogrecovery.c:2793 #, 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:2860 #, c-format msgid "recovery stopping after commit of transaction %u, time %s" msgstr "" "восстановление останавливается после фиксирования транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2867 +#: access/transam/xlogrecovery.c:2868 #, c-format msgid "recovery stopping after abort of transaction %u, time %s" msgstr "" "восстановление останавливается после прерывания транзакции %u, время %s" -#: access/transam/xlogrecovery.c:2948 +#: access/transam/xlogrecovery.c:2949 #, c-format msgid "pausing at the end of recovery" msgstr "остановка в конце восстановления" -#: access/transam/xlogrecovery.c:2949 +#: access/transam/xlogrecovery.c:2950 #, 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:2953 access/transam/xlogrecovery.c:4710 #, c-format msgid "recovery has paused" msgstr "восстановление приостановлено" -#: access/transam/xlogrecovery.c:2953 +#: access/transam/xlogrecovery.c:2954 #, c-format msgid "Execute pg_wal_replay_resume() to continue." msgstr "Выполните pg_wal_replay_resume() для продолжения." -#: access/transam/xlogrecovery.c:3216 +#: access/transam/xlogrecovery.c:3217 #, 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:3433 #, 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:3439 +#: access/transam/xlogrecovery.c:3440 #, c-format msgid "" "could not read from WAL segment %s, LSN %X/%X, offset %u: read %d of %zu" @@ -4139,38 +4139,38 @@ msgstr "" "не удалось прочитать сегмент WAL %s, LSN %X/%X, смещение %u (прочитано байт: " "%d из %zu)" -#: access/transam/xlogrecovery.c:4082 +#: access/transam/xlogrecovery.c:4094 #, c-format msgid "invalid checkpoint location" msgstr "неверное положение контрольной точки" -#: access/transam/xlogrecovery.c:4092 +#: access/transam/xlogrecovery.c:4104 #, c-format msgid "invalid checkpoint record" msgstr "неверная запись контрольной точки" -#: access/transam/xlogrecovery.c:4098 +#: access/transam/xlogrecovery.c:4110 #, c-format msgid "invalid resource manager ID in checkpoint record" msgstr "неверный ID менеджера ресурсов в записи контрольной точки" -#: access/transam/xlogrecovery.c:4106 +#: access/transam/xlogrecovery.c:4118 #, c-format msgid "invalid xl_info in checkpoint record" msgstr "неверные флаги xl_info в записи контрольной точки" -#: access/transam/xlogrecovery.c:4112 +#: access/transam/xlogrecovery.c:4124 #, c-format msgid "invalid length of checkpoint record" msgstr "неверная длина записи контрольной точки" -#: access/transam/xlogrecovery.c:4166 +#: access/transam/xlogrecovery.c:4178 #, 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:4192 #, c-format msgid "" "new timeline %u forked off current database system timeline %u before " @@ -4179,30 +4179,30 @@ msgstr "" "новая линия времени %u ответвилась от текущей линии времени базы данных %u " "до текущей точки восстановления %X/%X" -#: access/transam/xlogrecovery.c:4199 +#: access/transam/xlogrecovery.c:4211 #, c-format msgid "new target timeline is %u" msgstr "новая целевая линия времени %u" -#: access/transam/xlogrecovery.c:4400 +#: access/transam/xlogrecovery.c:4412 #, c-format msgid "WAL receiver process shutdown requested" msgstr "получен запрос на выключение процесса приёмника WAL" -#: access/transam/xlogrecovery.c:4460 +#: access/transam/xlogrecovery.c:4472 #, c-format msgid "received promote request" msgstr "получен запрос повышения статуса" -#: access/transam/xlogrecovery.c:4689 +#: access/transam/xlogrecovery.c:4701 #, 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:4702 access/transam/xlogrecovery.c:4729 +#: access/transam/xlogrecovery.c:4759 #, c-format msgid "" "%s = %d is a lower setting than on the primary server, where its value was " @@ -4210,12 +4210,12 @@ msgid "" msgstr "" "Параметр %s = %d меньше, чем на ведущем сервере, где его значение было %d." -#: access/transam/xlogrecovery.c:4699 +#: access/transam/xlogrecovery.c:4711 #, c-format msgid "If recovery is unpaused, the server will shut down." msgstr "В случае возобновления восстановления сервер отключится." -#: access/transam/xlogrecovery.c:4700 +#: access/transam/xlogrecovery.c:4712 #, c-format msgid "" "You can then restart the server after making the necessary configuration " @@ -4224,24 +4224,24 @@ msgstr "" "Затем вы можете перезапустить сервер после внесения необходимых изменений " "конфигурации." -#: access/transam/xlogrecovery.c:4711 +#: access/transam/xlogrecovery.c:4723 #, c-format msgid "promotion is not possible because of insufficient parameter settings" msgstr "повышение невозможно из-за отсутствия достаточных значений параметров" -#: access/transam/xlogrecovery.c:4721 +#: access/transam/xlogrecovery.c:4733 #, c-format msgid "Restart the server after making the necessary configuration changes." msgstr "" "Перезапустите сервер после внесения необходимых изменений конфигурации." -#: access/transam/xlogrecovery.c:4745 +#: access/transam/xlogrecovery.c:4757 #, c-format msgid "recovery aborted because of insufficient parameter settings" msgstr "" "восстановление прервано из-за отсутствия достаточных значений параметров" -#: access/transam/xlogrecovery.c:4751 +#: access/transam/xlogrecovery.c:4763 #, c-format msgid "" "You can restart the server after making the necessary configuration changes." @@ -4249,12 +4249,28 @@ msgstr "" "Вы можете перезапустить сервер после внесения необходимых изменений " "конфигурации." -#: access/transam/xlogrecovery.c:4792 +#: 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 +#, c-format +msgid "%s" +msgstr "%s" + +#: access/transam/xlogrecovery.c:4815 #, c-format msgid "multiple recovery targets specified" msgstr "указано несколько целей восстановления" -#: access/transam/xlogrecovery.c:4793 +#: access/transam/xlogrecovery.c:4816 #, c-format msgid "" "At most one of \"recovery_target\", \"recovery_target_lsn\", " @@ -4265,17 +4281,17 @@ msgstr "" "\"recovery_target_lsn\", \"recovery_target_name\", \"recovery_target_time\", " "\"recovery_target_xid\"." -#: access/transam/xlogrecovery.c:4804 +#: access/transam/xlogrecovery.c:4827 #, c-format msgid "The only allowed value is \"immediate\"." msgstr "Единственное допустимое значение: \"immediate\"." -#: access/transam/xlogrecovery.c:4958 +#: access/transam/xlogrecovery.c:4981 #, c-format msgid "Timestamp out of range: \"%s\"." msgstr "Timestamp вне диапазона: \"%s\"." -#: access/transam/xlogrecovery.c:5003 +#: access/transam/xlogrecovery.c:5026 #, c-format msgid "\"recovery_target_timeline\" is not a valid number." msgstr "Значение \"recovery_target_timeline\" не является допустимым числом." @@ -4639,7 +4655,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:2233 +#: commands/tablespace.c:593 commands/tablespace.c:638 replication/slot.c:2246 #: storage/file/copydir.c:58 #, c-format msgid "could not create directory \"%s\": %m" @@ -4882,20 +4898,20 @@ msgstr "" #: 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/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" @@ -4906,13 +4922,13 @@ msgstr "столбец \"%s\" в таблице \"%s\" не существует msgid "\"%s\" is an index" msgstr "\"%s\" - это индекс" -#: catalog/aclchk.c:1827 commands/tablecmds.c:16121 commands/tablecmds.c:19650 +#: catalog/aclchk.c:1827 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:19614 utils/adt/acl.c:2122 utils/adt/acl.c:2152 +#: 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 @@ -5455,21 +5471,6 @@ msgstr[2] "" 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." @@ -5500,8 +5501,8 @@ 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 -#: 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 "столбец %d отношения \"%s\" не существует" @@ -5640,7 +5641,7 @@ 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:9796 +#: 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\" уже существует" @@ -5683,7 +5684,7 @@ 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 +#: commands/tablecmds.c:17583 commands/tablecmds.c:17765 #, c-format msgid "too many inheritance parents" msgstr "слишком много родителей в иерархии наследования" @@ -5931,7 +5932,6 @@ msgid "could not obtain lock on relation \"%s\"" msgstr "не удалось получить блокировку таблицы \"%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 "отношение \"%s.%s\" не существует" @@ -5942,7 +5942,7 @@ msgstr "отношение \"%s.%s\" не существует" msgid "relation \"%s\" does not exist" msgstr "отношение \"%s\" не существует" -#: 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" @@ -5968,105 +5968,105 @@ 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 +#: 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 parser/parse_expr.c:873 parser/parse_target.c:1269 +#: 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: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 +#: 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 +#: 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 +#: 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 +#: 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 +#: commands/tablecmds.c:19654 #, c-format msgid "\"%s\" is not a foreign table" msgstr "\"%s\" - это не сторонняя таблица" @@ -6803,19 +6803,20 @@ msgstr "" "изменить статус NO INHERIT ограничения NOT NULL \"%s\" для отношения \"%s\" " "нельзя" -#: 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 "" "Возможно, существующее ограничение нужно сделать наследуемым, выполнив %s." -#: 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." @@ -6937,7 +6938,7 @@ msgstr "" "отсоединения." #: 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 " @@ -7367,7 +7368,7 @@ msgstr "" "Имя мультидиапазонного типа можно указать вручную, воспользовавшись " "атрибутом \"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 "некорректная страница в блоке %u отношения \"%s\"" @@ -7721,7 +7722,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\" не существует" @@ -7736,7 +7737,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\"" @@ -7808,14 +7809,14 @@ msgid "collation attribute \"%s\" not recognized" msgstr "атрибут COLLATION \"%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/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 "конфликтующие или избыточные параметры" @@ -7887,8 +7888,8 @@ msgstr "нельзя обновить версию правила сортиро #. 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." @@ -8029,172 +8030,184 @@ 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:949 rewrite/rewriteHandler.c:984 +#, 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 требует логическое значение или \"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/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 "формат \"%s\" для COPY не распознан" -#: 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:2420 #, 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 "" "представление NULL для COPY не может включать символ новой строки или " "возврата каретки" -#: commands/copy.c:751 +#: commands/copy.c:790 #, c-format msgid "COPY default representation cannot use newline or carriage return" msgstr "" "представление DEFAULT для COPY не может включать символ новой строки или " "возврата каретки" -#: commands/copy.c:769 +#: commands/copy.c:808 #, c-format msgid "COPY delimiter cannot be \"%s\"" msgstr "\"%s\" не может быть разделителем для COPY" #. 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 "в режиме 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/copy.c:1044 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 @@ -8204,7 +8217,7 @@ msgstr "Генерируемые столбцы нельзя использов msgid "column \"%s\" does not exist" msgstr "столбец \"%s\" не существует" -#: 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" @@ -8383,17 +8396,17 @@ 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 +#: 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:748 +#: 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:779 +#: commands/copyfromparse.c:317 replication/walsender.c:793 #, c-format msgid "COPY from stdin failed: %s" msgstr "ошибка при вводе данных COPY из stdin: %s" @@ -8970,7 +8983,7 @@ 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 +#: utils/adt/pg_locale.c:1532 #, c-format msgid "encoding \"%s\" does not match locale \"%s\"" msgstr "кодировка \"%s\" не соответствует локали \"%s\"" @@ -9065,7 +9078,7 @@ msgstr "" "пространство по умолчанию для этой базы данных." #: commands/dbcommands.c:2295 commands/dbcommands.c:3038 -#: commands/dbcommands.c:3338 commands/dbcommands.c:3451 +#: commands/dbcommands.c:3338 commands/dbcommands.c:3452 #, c-format msgid "some useless files may be left behind in old database directory \"%s\"" msgstr "в старом каталоге базы данных \"%s\" могли остаться ненужные файлы" @@ -9175,7 +9188,7 @@ 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/tablecmds.c:18954 tcop/utility.c:1328 #, c-format msgid "relation \"%s\" does not exist, skipping" msgstr "отношение \"%s\" не существует, пропускается" @@ -10478,8 +10491,8 @@ msgstr "включаемые столбцы не поддерживают ука 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:4064 +#: 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" @@ -10521,8 +10534,8 @@ msgstr "метод доступа \"%s\" не поддерживает сорт 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 "" @@ -10565,7 +10578,7 @@ msgstr "для типа %s не удалось найти оператор пе msgid "could not identify a contained-by operator for type %s" msgstr "не удалось найти оператор «содержится в» для типа %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 " @@ -11057,8 +11070,8 @@ 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/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 @@ -11578,8 +11591,8 @@ 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\"." @@ -11667,12 +11680,12 @@ msgstr "повторяющееся имя столбца в определени msgid "duplicate expression in statistics definition" msgstr "повторяющееся выражение в определении статистики" -#: commands/statscmds.c:646 commands/tablecmds.c:8914 +#: commands/statscmds.c:646 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:654 commands/tablecmds.c:8947 #, c-format msgid "lowering statistics target to %d" msgstr "ориентир статистики снижается до %d" @@ -11682,7 +11695,7 @@ msgstr "ориентир статистики снижается до %d" 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:411 #, c-format msgid "unrecognized origin value: \"%s\"" msgstr "нераспознанное значение origin: \"%s\"" @@ -11950,7 +11963,7 @@ msgstr "" "поступили не из других источников." #: commands/subscriptioncmds.c:2298 replication/logical/tablesync.c:933 -#: replication/pgoutput/pgoutput.c:1162 +#: replication/pgoutput/pgoutput.c:1185 #, c-format msgid "" "cannot use different column lists for table \"%s.%s\" in different " @@ -12061,7 +12074,7 @@ msgstr "" "Выполните DROP MATERIALIZED VIEW для удаления материализованного " "представления." -#: 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" @@ -12085,8 +12098,8 @@ 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\" не существует" @@ -12117,7 +12130,7 @@ 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\" наследуется неоднократно" @@ -12142,7 +12155,7 @@ msgstr "создать стороннюю секцию для секционир 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 "слишком много размерностей массива" @@ -12197,7 +12210,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\" не допускается" @@ -12222,18 +12235,18 @@ 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 +#: 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 @@ -12281,13 +12294,13 @@ msgstr "" "является таковым." #: 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 "столбец \"%s\" наследуется от генерируемого столбца другого вида" #: 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 "Родительский столбец: %s, дочерний столбец: %s." @@ -12361,7 +12374,7 @@ msgid "column \"%s\" has a collation conflict" msgstr "конфликт правил сортировки в столбце \"%s\"" #: commands/tablecmds.c:3282 commands/tablecmds.c:3448 -#: commands/tablecmds.c:7277 +#: commands/tablecmds.c:7277 parser/parse_expr.c:4776 #, c-format msgid "\"%s\" versus \"%s\"" msgstr "\"%s\" и \"%s\"" @@ -12587,12 +12600,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 "" @@ -12626,17 +12639,17 @@ msgstr "столбец \"%s\" отношения \"%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: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:14168 #, c-format msgid "column \"%s\" of relation \"%s\" is an identity column" msgstr "столбец \"%s\" отношения \"%s\" является столбцом идентификации" @@ -12646,14 +12659,14 @@ msgstr "столбец \"%s\" отношения \"%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:8378 commands/tablecmds.c:8495 +#: commands/tablecmds.c:9379 commands/tablecmds.c:12207 #, c-format msgid "Do not specify the ONLY keyword." msgstr "Не указывайте ключевое слово ONLY." @@ -12684,57 +12697,57 @@ msgstr "" "столбец \"%s\" отношения \"%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 "столбец \"%s\" отношения \"%s\" уже является столбцом идентификации" -#: commands/tablecmds.c:8291 +#: commands/tablecmds.c:8316 #, c-format msgid "column \"%s\" of relation \"%s\" already has a default value" msgstr "столбец \"%s\" отношения \"%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 "столбец \"%s\" отношения \"%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 "" "столбец \"%s\" отношения \"%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 "столбец \"%s\" отношения \"%s\" не является генерируемым столбцом" -#: commands/tablecmds.c:8612 +#: commands/tablecmds.c:8637 #, c-format msgid "" "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns " @@ -12743,14 +12756,14 @@ 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 "" "Столбец \"%s\" отношения \"%s\" является виртуальным генерируемым столбцом." -#: commands/tablecmds.c:8630 +#: commands/tablecmds.c:8655 #, c-format msgid "" "ALTER TABLE / SET EXPRESSION is not supported for virtual generated columns " @@ -12759,18 +12772,18 @@ 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" @@ -12778,65 +12791,65 @@ 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 "" "столбец \"%s\" отношения \"%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 "столбец с номером %d отношения \"%s\" не существует" -#: 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 "изменить статистику включённого столбца \"%s\" индекса \"%s\" нельзя" -#: commands/tablecmds.c:8980 +#: commands/tablecmds.c:9005 #, c-format msgid "cannot alter statistics on non-expression column \"%s\" of index \"%s\"" msgstr "" "изменить статистику столбца \"%s\" (не выражения) индекса \"%s\" нельзя" -#: 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 " @@ -12845,7 +12858,7 @@ msgstr "" "удалить столбец \"%s\" нельзя, так как он входит в ключ разбиения отношения " "\"%s\"" -#: commands/tablecmds.c:9353 +#: commands/tablecmds.c:9378 #, c-format msgid "" "cannot drop column from only the partitioned table when partitions exist" @@ -12853,18 +12866,18 @@ msgstr "" "удалить столбец только из секционированной таблицы, когда существуют секции, " "нельзя" -#: commands/tablecmds.c:9518 +#: 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: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 " @@ -12873,7 +12886,7 @@ msgstr "" "Ограничение \"%s\" для столбца \"%s\" таблицы \"%s\", помеченное %s, " "несовместимо с первичным ключом." -#: commands/tablecmds.c:9692 +#: commands/tablecmds.c:9717 #, c-format msgid "" "ALTER TABLE / ADD CONSTRAINT USING INDEX is not supported on partitioned " @@ -12882,14 +12895,14 @@ 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 " @@ -12898,19 +12911,19 @@ msgstr "" "нельзя использовать ONLY для стороннего ключа в секционированной таблице " "\"%s\", ссылающегося на отношение \"%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 "указанный объект \"%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 " @@ -12919,13 +12932,13 @@ 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" @@ -12933,19 +12946,19 @@ 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 "внешний ключ использует PERIOD в целевой таблице, но не в ссылающейся" -#: 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 "внешний ключ использует PERIOD в ссылающейся таблице, но не в целевой" -#: commands/tablecmds.c:10192 +#: commands/tablecmds.c:10217 #, c-format msgid "" "foreign key must use PERIOD when referencing a primary key using WITHOUT " @@ -12954,7 +12967,7 @@ msgstr "" "внешний ключ должен использовать PERIOD, ссылаясь на первичный ключ, " "использующий 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" @@ -12962,41 +12975,41 @@ 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 " @@ -13005,7 +13018,7 @@ 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 " @@ -13017,7 +13030,7 @@ 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" @@ -13025,13 +13038,13 @@ msgstr "" "столбец \"%s\", фигурирующий в действии ON DELETE SET, должен входить во " "внешний ключ" -#: 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 "ограничения внешнего ключа для сторонних таблиц не поддерживаются" -#: commands/tablecmds.c:11438 +#: commands/tablecmds.c:11463 #, c-format msgid "" "cannot attach table \"%s\" as a partition because it is referenced by " @@ -13040,7 +13053,7 @@ msgstr "" "присоединить таблицу \"%s\" в качестве секции нельзя, так как на неё " "ссылается внешний ключ \"%s\"" -#: commands/tablecmds.c:11719 +#: commands/tablecmds.c:11744 #, c-format msgid "" "constraint \"%s\" enforceability conflicts with constraint \"%s\" on " @@ -13049,114 +13062,114 @@ 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 "ограничение \"%s\" в таблице \"%s\" не существует" -#: commands/tablecmds.c:12217 +#: commands/tablecmds.c:12242 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a foreign key constraint" msgstr "ограничение \"%s\" в таблице \"%s\" не является внешним ключом" -#: commands/tablecmds.c:12222 +#: commands/tablecmds.c:12247 #, c-format msgid "cannot alter enforceability of constraint \"%s\" of relation \"%s\"" msgstr "" "изменить свойство контролируемости ограничения \"%s\" отношения \"%s\" нельзя" -#: commands/tablecmds.c:12228 +#: commands/tablecmds.c:12253 #, c-format msgid "constraint \"%s\" of relation \"%s\" is not a not-null constraint" msgstr "ограничение \"%s\" в таблице \"%s\" не является ограничением NOT NULL" -#: commands/tablecmds.c:12236 +#: commands/tablecmds.c:12261 #, c-format msgid "cannot alter inherited constraint \"%s\" on relation \"%s\"" msgstr "изменить наследуемое ограничение \"%s\" в отношении \"%s\" нельзя" -#: commands/tablecmds.c:12276 +#: commands/tablecmds.c:12301 #, c-format msgid "cannot alter constraint \"%s\" on relation \"%s\"" msgstr "изменить ограничение \"%s\" таблицы \"%s\" нельзя" -#: commands/tablecmds.c:12279 +#: commands/tablecmds.c:12304 #, c-format msgid "Constraint \"%s\" is derived from constraint \"%s\" of relation \"%s\"." msgstr "" "Ограничение \"%s\" является производным от ограничения \"%s\" таблицы \"%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 "" "использовать откладываемый первичный ключ в целевой внешней таблице \"%s\" " "нельзя" -#: 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 "" "использовать откладываемое ограничение уникальности в целевой внешней " "таблице \"%s\" нельзя" -#: commands/tablecmds.c:13585 +#: commands/tablecmds.c:13610 #, c-format msgid "" "there is no unique constraint matching given keys for referenced table \"%s\"" @@ -13164,49 +13177,42 @@ msgstr "" "в целевой внешней таблице \"%s\" нет ограничения уникальности, " "соответствующего данным ключам" -#: commands/tablecmds.c:14026 +#: commands/tablecmds.c:14051 #, c-format msgid "constraint \"%s\" of relation \"%s\" does not exist, skipping" msgstr "ограничение \"%s\" в таблице \"%s\" не существует, пропускается" -#: commands/tablecmds.c:14071 +#: commands/tablecmds.c:14096 #, c-format msgid "cannot drop inherited constraint \"%s\" of relation \"%s\"" msgstr "удалить наследованное ограничение \"%s\" таблицы \"%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 " @@ -13215,7 +13221,7 @@ 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 " @@ -13223,45 +13229,45 @@ msgid "" msgstr "" "результат USING для столбца \"%s\" нельзя автоматически привести к типу %s" -#: 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" # skip-rule: double-colons #. 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 "изменить наследованный столбец \"%s\" отношения \"%s\" нельзя" -#: commands/tablecmds.c:14611 +#: commands/tablecmds.c:14636 #, c-format msgid "USING expression contains a whole-row table reference." msgstr "Выражение USING ссылается на тип всей строки таблицы." -#: commands/tablecmds.c:14622 +#: commands/tablecmds.c:14647 #, c-format msgid "type of inherited column \"%s\" must be changed in child tables too" msgstr "" "тип наследованного столбца \"%s\" должен быть изменён и в дочерних таблицах" -#: 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 " @@ -13270,160 +13276,160 @@ msgstr "" "генерирующее выражение для столбца \"%s\" нельзя автоматически привести к " "типу %s" -#: commands/tablecmds.c:14790 +#: commands/tablecmds.c:14815 #, c-format msgid "default for column \"%s\" cannot be cast automatically to type %s" msgstr "" "значение по умолчанию для столбца \"%s\" нельзя автоматически привести к " "типу %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 "изменить тип столбца, задействованного в функции или процедуре, нельзя" -#: 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_global нельзя" -#: 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 " @@ -13432,35 +13438,35 @@ 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 " @@ -13469,7 +13475,7 @@ 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\"" @@ -13477,7 +13483,7 @@ 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 " @@ -13486,82 +13492,82 @@ 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 " @@ -13570,7 +13576,7 @@ 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 " @@ -13579,13 +13585,13 @@ msgstr "" "индекс \"%s\" нельзя использовать для идентификации реплики, так как столбец " "\"%s\" допускает NULL" -#: 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" @@ -13593,12 +13599,12 @@ msgstr "" "таблицу \"%s\" нельзя сделать нежурналируемой, так как она включена в " "публикацию" -#: 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 " @@ -13607,7 +13613,7 @@ msgstr "" "не удалось сделать таблицу \"%s\" журналируемой, так как она ссылается на " "нежурналируемую таблицу \"%s\"" -#: commands/tablecmds.c:18884 +#: commands/tablecmds.c:18909 #, c-format msgid "" "could not change table \"%s\" to unlogged because it references logged table " @@ -13616,91 +13622,91 @@ msgstr "" "не удалось сделать таблицу \"%s\" нежурналируемой, так как она ссылается на " "журналируемую таблицу \"%s\"" -#: 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 "отношение \"%s\" уже существует в схеме \"%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 "стратегия секционирования по списку не поддерживает несколько столбцов" -#: 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 " @@ -13709,7 +13715,7 @@ 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 " @@ -13718,27 +13724,27 @@ msgstr "" "Вы должны указать класс операторов B-дерева или определить класс операторов " "B-дерева по умолчанию для этого типа данных." -#: 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\"" @@ -13746,7 +13752,7 @@ msgstr "" "подключить временное отношение в качестве секции постоянного отношения " "\"%s\" нельзя" -#: commands/tablecmds.c:20330 +#: commands/tablecmds.c:20365 #, c-format msgid "" "cannot attach a permanent relation as partition of temporary relation \"%s\"" @@ -13754,102 +13760,102 @@ 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 "Триггеры ROW с переходными таблицами для секций не поддерживаются." -#: 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 "" "секции нельзя отсоединять в режиме CONCURRENTLY, когда существует секция по " "умолчанию" -#: 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 " @@ -13858,37 +13864,37 @@ msgstr "" "Индекс \"%s\" принадлежит ограничению в таблице \"%s\", но для индекса " "\"%s\" ограничения нет." -#: 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 "Столбец \"%s\" отношения \"%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" @@ -15947,7 +15953,7 @@ msgstr "блокировать строки в представлении \"%s\" msgid "cannot lock rows in materialized view \"%s\"" msgstr "блокировать строки в материализованном представлении \"%s\" нельзя" -#: executor/execMain.c:1223 executor/execMain.c:2855 +#: executor/execMain.c:1223 executor/execMain.c:2865 #: executor/nodeLockRows.c:135 #, c-format msgid "cannot lock rows in foreign table \"%s\"" @@ -15958,48 +15964,48 @@ msgstr "блокировать строки в сторонней таблице msgid "cannot lock rows in relation \"%s\"" msgstr "блокировать строки в отношении \"%s\" нельзя" -#: executor/execMain.c:1952 +#: executor/execMain.c:1962 #, c-format msgid "new row for relation \"%s\" violates partition constraint" msgstr "новая строка в отношении \"%s\" нарушает ограничение секции" -#: executor/execMain.c:1954 executor/execMain.c:2066 executor/execMain.c:2204 -#: executor/execMain.c:2312 +#: 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:2064 +#: executor/execMain.c:2074 #, c-format msgid "new row for relation \"%s\" violates check constraint \"%s\"" msgstr "новая строка в отношении \"%s\" нарушает ограничение-проверку \"%s\"" -#: executor/execMain.c:2201 +#: 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:2310 +#: executor/execMain.c:2320 #, c-format msgid "new row violates check option for view \"%s\"" msgstr "новая строка нарушает ограничение-проверку для представления \"%s\"" -#: executor/execMain.c:2320 +#: executor/execMain.c:2330 #, c-format msgid "new row violates row-level security policy \"%s\" for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" для таблицы " "\"%s\"" -#: executor/execMain.c:2325 +#: executor/execMain.c:2335 #, c-format msgid "new row violates row-level security policy for table \"%s\"" msgstr "" "новая строка нарушает политику защиты на уровне строк для таблицы \"%s\"" -#: executor/execMain.c:2333 +#: executor/execMain.c:2343 #, c-format msgid "" "target row violates row-level security policy \"%s\" (USING expression) for " @@ -16008,7 +16014,7 @@ msgstr "" "целевая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2338 +#: executor/execMain.c:2348 #, c-format msgid "" "target row violates row-level security policy (USING expression) for table " @@ -16017,7 +16023,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк (выражение USING) для " "таблицы \"%s\"" -#: executor/execMain.c:2345 +#: executor/execMain.c:2355 #, c-format msgid "" "new row violates row-level security policy \"%s\" (USING expression) for " @@ -16026,7 +16032,7 @@ msgstr "" "новая строка нарушает политику защиты на уровне строк \"%s\" (выражение " "USING) для таблицы \"%s\"" -#: executor/execMain.c:2350 +#: executor/execMain.c:2360 #, c-format msgid "" "new row violates row-level security policy (USING expression) for table " @@ -16567,7 +16573,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." @@ -18958,7 +18964,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:2120 parser/parse_func.c:710 parser/parse_oper.c:869 +#: 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" @@ -18996,19 +19002,19 @@ msgid "%s cannot be applied to the nullable side of an outer join" msgstr "%s не может применяться к NULL-содержащей стороне внешнего соединения" #. 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:2257 optimizer/plan/planner.c:4143 #, 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:2258 optimizer/plan/planner.c:4144 +#: optimizer/plan/planner.c:4825 optimizer/prep/prepunion.c:1073 #, c-format msgid "" "Some of the datatypes only support hashing, while others only support " @@ -19017,27 +19023,27 @@ msgstr "" "Одни типы данных поддерживают только хеширование, а другие - только " "сортировку." -#: optimizer/plan/planner.c:4805 +#: optimizer/plan/planner.c:4824 #, c-format msgid "could not implement DISTINCT" msgstr "не удалось реализовать DISTINCT" -#: optimizer/plan/planner.c:6267 +#: optimizer/plan/planner.c:6286 #, c-format msgid "could not implement window PARTITION BY" msgstr "не удалось реализовать PARTITION BY для окна" -#: optimizer/plan/planner.c:6268 +#: optimizer/plan/planner.c:6287 #, c-format msgid "Window partitioning columns must be of sortable datatypes." msgstr "Столбцы, разбивающие окна, должны иметь сортируемые типы данных." -#: optimizer/plan/planner.c:6272 +#: optimizer/plan/planner.c:6291 #, c-format msgid "could not implement window ORDER BY" msgstr "не удалось реализовать ORDER BY для окна" -#: optimizer/plan/planner.c:6273 +#: optimizer/plan/planner.c:6292 #, c-format msgid "Window ordering columns must be of sortable datatypes." msgstr "Столбцы, сортирующие окна, должны иметь сортируемые типы данных." @@ -19082,24 +19088,24 @@ msgstr "" "обращаться к временным или нежурналируемым отношениям в процессе " "восстановления нельзя" -#: optimizer/util/plancat.c:771 +#: optimizer/util/plancat.c:776 #, c-format msgid "whole row unique index inference specifications are not supported" msgstr "" "указания со ссылкой на всю строку для выбора уникального индекса не " "поддерживаются" -#: optimizer/util/plancat.c:788 +#: optimizer/util/plancat.c:793 #, c-format msgid "constraint in ON CONFLICT clause has no associated index" msgstr "ограничению в ON CONFLICT не соответствует индекс" -#: 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 не поддерживается с ограничениями-исключениями" -#: optimizer/util/plancat.c:955 +#: optimizer/util/plancat.c:960 #, c-format msgid "" "there is no unique or exclusion constraint matching the ON CONFLICT " @@ -19138,7 +19144,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" @@ -19217,144 +19223,144 @@ 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 "для %s нужно указывать неполные имена отношений" #. 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 нельзя применить к соединению" #. 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 "%s нельзя применить к именованному хранилищу кортежей" #. 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 "отношение \"%s\" в определении %s отсутствует в предложении FROM" @@ -19576,7 +19582,7 @@ msgstr "" "вызовы агрегатных функций не могут включать вызовы функций, возвращающих " "множества" -#: parser/parse_agg.c:785 parser/parse_expr.c:1762 parser/parse_expr.c:2255 +#: parser/parse_agg.c:785 parser/parse_expr.c:1763 parser/parse_expr.c:2256 #: parser/parse_func.c:885 #, c-format msgid "" @@ -20037,8 +20043,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: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: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 нельзя" @@ -20451,85 +20457,85 @@ msgstr "FOR UPDATE/SHARE в рекурсивном запросе не подд msgid "recursive reference to query \"%s\" must not appear more than once" msgstr "рекурсивная ссылка на запрос \"%s\" указана неоднократно" -#: parser/parse_expr.c:311 +#: parser/parse_expr.c:312 #, c-format msgid "DEFAULT is not allowed in this context" msgstr "DEFAULT не допускается в данном контексте" -#: 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 "столбец %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\" в типе записи" # skip-rule: space-before-period -#: 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 "" "запись имени столбца .%s применена к типу %s, который не является составным" -#: 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 "в выражении DEFAULT (по умолчанию) нельзя ссылаться на столбцы" -#: 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_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_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 "" "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() " @@ -20539,250 +20545,250 @@ msgstr "" "SELECT или выражение ROW()" #. 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 "в выражении 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: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 "" "Приведите его к желаемому типу явным образом, например ARRAY[]::integer[]." -#: parser/parse_expr.c:2109 +#: parser/parse_expr.c:2110 #, c-format msgid "could not find element type for data type %s" 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 "" "Операторы сравнения строк должны быть связаны с семейством операторов btree." -#: 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 "" "предложение JSON ENCODING можно добавить только для входного типа bytea" -#: parser/parse_expr.c:3390 +#: parser/parse_expr.c:3391 #, c-format msgid "cannot use non-string types with implicit FORMAT JSON clause" 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 "" "с явным предложением 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 "" "кодировку JSON можно использовать, только если возвращаемый тип — bytea" -#: 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 "Для JSON поддерживается только кодировка UTF-8." -#: parser/parse_expr.c:3536 +#: parser/parse_expr.c:3537 #, c-format msgid "returning SETOF types is not supported in SQL/JSON functions" msgstr "функции SQL/JSON не могут возвращать типы SETOF" -#: 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 "" "предложение JSON FORMAT ENCODING можно использовать только с типом bytea" -#: parser/parse_expr.c:4112 +#: parser/parse_expr.c:4113 #, c-format msgid "cannot use type %s in IS JSON predicate" msgstr "в предикате IS JSON нельзя использовать тип %s" -#: 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 нельзя использовать в предложении RETURNING функции %s" -#: parser/parse_expr.c:4140 +#: parser/parse_expr.c:4141 #, c-format msgid "Try returning json or jsonb." 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 "" "с предложением WITH UNIQUE KEYS можно использовать только строковые типы " "данных" -#: parser/parse_expr.c:4262 +#: parser/parse_expr.c:4263 #, c-format msgid "Try returning a string type or bytea." msgstr "Попробуйте возвратить строковый тип или bytea." -#: parser/parse_expr.c:4327 +#: parser/parse_expr.c:4328 #, c-format msgid "cannot specify FORMAT JSON in RETURNING clause of %s()" msgstr "FORMAT JSON не может указываться в предложении RETURNING %s()" -#: parser/parse_expr.c:4340 +#: parser/parse_expr.c:4341 #, c-format msgid "" "SQL/JSON QUOTES behavior must not be specified when WITH WRAPPER is used" @@ -20790,8 +20796,8 @@ msgstr "" "когда используется WITH WRAPPER, поведение QUOTES в SQL/JSON задать нельзя" #. 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: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 #, c-format msgid "invalid %s behavior" @@ -20799,7 +20805,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:4357 parser/parse_expr.c:4386 +#: parser/parse_expr.c:4358 parser/parse_expr.c:4387 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -20811,14 +20817,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: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:4365 parser/parse_expr.c:4394 parser/parse_expr.c:4423 +#: parser/parse_expr.c:4451 parser/parse_expr.c:4477 #, 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:4368 parser/parse_expr.c:4397 #, c-format msgid "" "Only ERROR, NULL, EMPTY ARRAY, EMPTY OBJECT, or DEFAULT expression is " @@ -20827,13 +20833,13 @@ msgstr "" "В %s для форматируемых столбцов допускается только ERROR, NULL, EMPTY ARRAY, " "EMPTY OBJECT или выражение DEFAULT." -#: parser/parse_expr.c:4415 +#: parser/parse_expr.c:4416 #, 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:4425 +#: parser/parse_expr.c:4426 #, c-format msgid "" "Only ERROR, TRUE, FALSE, or UNKNOWN is allowed in %s for EXISTS columns." @@ -20842,13 +20848,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:4443 parser/parse_expr.c:4469 +#: parser/parse_expr.c:4444 parser/parse_expr.c:4470 #, 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:4453 parser/parse_expr.c:4479 +#: parser/parse_expr.c:4454 parser/parse_expr.c:4480 #, c-format msgid "" "Only ERROR, NULL, or DEFAULT expression is allowed in %s for scalar columns." @@ -20856,12 +20862,12 @@ msgstr "" "В %s для скалярных столбцов допускается только ERROR, NULL или выражение " "DEFAULT." -#: parser/parse_expr.c:4509 +#: parser/parse_expr.c:4510 #, 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:4750 #, c-format msgid "" "can only specify a constant, non-aggregate function, or operator expression " @@ -20870,22 +20876,28 @@ msgstr "" "в DEFAULT может задаваться только константа, вызов не агрегатной функции или " "выражение с оператором" -#: parser/parse_expr.c:4732 +#: parser/parse_expr.c:4755 #, c-format msgid "DEFAULT expression must not contain column references" msgstr "выражения в DEFAULT не могут содержать ссылки на столбцы" -#: parser/parse_expr.c:4737 +#: parser/parse_expr.c:4760 #, 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:4775 +#, c-format +msgid "collation of DEFAULT expression conflicts with RETURNING clause" +msgstr "" +"правило сортировки выражения DEFAULT конфликтует с предложением RETURNING" + +#: parser/parse_expr.c:4854 parser/parse_expr.c:4863 #, c-format msgid "cannot cast behavior expression of type %s to %s" msgstr "привести выражение поведения, имеющее тип %s, к типу %s нельзя" -#: parser/parse_expr.c:4816 +#: parser/parse_expr.c:4857 #, c-format msgid "You will need to explicitly cast the expression to type %s." msgstr "Приведите выражение к типу %s явно." @@ -21932,7 +21944,7 @@ msgstr "" "UPDATE или DELETE" #: 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 не реализованы" @@ -22533,22 +22545,22 @@ msgstr "автоматическая очистка таблицы \"%s.%s.%s\"" 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 "обработка рабочей записи для отношения \"%s.%s.%s\"" -#: 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 " @@ -22557,7 +22569,7 @@ msgstr "" "значение \"autovacuum_max_workers\" (%d) должно быть меньше или равно " "\"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 " @@ -23502,30 +23514,30 @@ 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 " @@ -23697,7 +23709,7 @@ 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 +#: 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 @@ -23761,8 +23773,8 @@ 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:544 replication/slot.c:864 +#: replication/slot.c:899 #, c-format msgid "This replication slot is being synchronized from the primary server." msgstr "Этот слот репликации синхронизируется с ведущего сервера." @@ -24646,27 +24658,27 @@ msgstr "" "сообщения типа \"%s\" для целевого отношения репликации \"%s.%s\", столбца " "\"%s\", в транзакции %u, конечная позиция %X/%X" -#: 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_verson \"%s\" вне диапазона" -#: replication/pgoutput/pgoutput.c:350 +#: replication/pgoutput/pgoutput.c:351 #, c-format msgid "invalid publication_names syntax" msgstr "неверный синтаксис publication_names" -#: replication/pgoutput/pgoutput.c:420 replication/pgoutput/pgoutput.c:424 +#: replication/pgoutput/pgoutput.c:421 replication/pgoutput/pgoutput.c:425 #, c-format msgid "option \"%s\" missing" msgstr "параметр \"%s\" отсутствует" -#: replication/pgoutput/pgoutput.c:469 +#: replication/pgoutput/pgoutput.c:492 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or lower" @@ -24674,7 +24686,7 @@ msgstr "" "клиент передал proto_version=%d, но сервер поддерживает только протокол %d и " "ниже" -#: replication/pgoutput/pgoutput.c:475 +#: replication/pgoutput/pgoutput.c:498 #, c-format msgid "" "client sent proto_version=%d but server only supports protocol %d or higher" @@ -24682,7 +24694,7 @@ msgstr "" "клиент передал proto_version=%d, но сервер поддерживает только протокол %d и " "выше" -#: replication/pgoutput/pgoutput.c:490 +#: replication/pgoutput/pgoutput.c:513 #, c-format msgid "" "requested proto_version=%d does not support streaming, need %d or higher" @@ -24690,7 +24702,7 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает потоковую передачу, " "требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:496 +#: replication/pgoutput/pgoutput.c:519 #, c-format msgid "" "requested proto_version=%d does not support parallel streaming, need %d or " @@ -24699,12 +24711,12 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает параллельную потоковую " "передачу, требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:501 +#: replication/pgoutput/pgoutput.c:524 #, c-format msgid "streaming requested, but not supported by output plugin" msgstr "запрошена потоковая передача, но она не поддерживается модулем вывода" -#: replication/pgoutput/pgoutput.c:515 +#: replication/pgoutput/pgoutput.c:538 #, c-format msgid "" "requested proto_version=%d does not support two-phase commit, need %d or " @@ -24713,12 +24725,12 @@ msgstr "" "запрошенная версия proto_version=%d не поддерживает двухфазную фиксацию, " "требуется версия %d или выше" -#: replication/pgoutput/pgoutput.c:520 +#: replication/pgoutput/pgoutput.c:543 #, c-format msgid "two-phase commit requested, but not supported by output plugin" msgstr "запрошена двухфазная фиксация, но она не поддерживается модулем вывода" -#: replication/pgoutput/pgoutput.c:1085 +#: replication/pgoutput/pgoutput.c:1108 #, c-format msgid "" "cannot use different values of publish_generated_columns for table \"%s.%s\" " @@ -24727,38 +24739,37 @@ msgstr "" "использовать различные значения publish_generated_columns для таблицы \"%s." "%s\" в разных публикациях нельзя" -#: replication/pgoutput/pgoutput.c:1792 +#: replication/pgoutput/pgoutput.c:1811 #, c-format msgid "skipped loading publication \"%s\"" msgstr "пропускается загрузка публикации \"%s\"" -#: replication/pgoutput/pgoutput.c:1793 +#: 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:1794 +#: replication/pgoutput/pgoutput.c:1813 #, 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." @@ -24766,122 +24777,122 @@ msgstr "" "Имя слота репликации может содержать только буквы в нижнем регистре, цифры и " "знак подчёркивания." -#: replication/slot.c:348 +#: replication/slot.c:383 #, 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:395 replication/slot.c:921 #, c-format msgid "cannot enable failover for a temporary replication slot" msgstr "временный слот репликации не может быть переносимым" -#: replication/slot.c:385 +#: replication/slot.c:420 #, c-format msgid "replication slot \"%s\" already exists" msgstr "слот репликации \"%s\" уже существует" -#: replication/slot.c:395 +#: replication/slot.c:430 #, c-format msgid "all replication slots are in use" msgstr "используются все слоты репликации" -#: replication/slot.c:396 +#: replication/slot.c:431 #, c-format msgid "Free one or increase \"max_replication_slots\"." msgstr "Освободите ненужный или увеличьте параметр \"max_replication_slots\"." -#: replication/slot.c:580 replication/slotfuncs.c:664 +#: 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:635 replication/slot.c:1431 +#: replication/slot.c:670 replication/slot.c:1466 #, c-format msgid "replication slot \"%s\" is active for PID %d" msgstr "слот репликации \"%s\" занят процессом с PID %d" -#: replication/slot.c:652 +#: replication/slot.c:687 #, c-format msgid "can no longer access replication slot \"%s\"" msgstr "слот репликации \"%s\" стал недоступным" -#: replication/slot.c:654 +#: replication/slot.c:689 #, c-format msgid "This replication slot has been invalidated due to \"%s\"." msgstr "Исходный слот репликации был аннулирован по причине \"%s\"." -#: replication/slot.c:673 +#: replication/slot.c:708 #, c-format msgid "acquired logical replication slot \"%s\"" msgstr "получен слот логической репликации \"%s\"" -#: replication/slot.c:675 +#: replication/slot.c:710 #, c-format msgid "acquired physical replication slot \"%s\"" msgstr "получен слот физической репликации \"%s\"" -#: replication/slot.c:760 +#: replication/slot.c:795 #, c-format msgid "released logical replication slot \"%s\"" msgstr "освобождён слот логической репликации \"%s\"" -#: replication/slot.c:762 +#: replication/slot.c:797 #, c-format msgid "released physical replication slot \"%s\"" msgstr "освобождён слот физической репликации \"%s\"" -#: replication/slot.c:828 +#: replication/slot.c:863 #, c-format msgid "cannot drop replication slot \"%s\"" msgstr "удалить слот репликации \"%s\" нельзя" -#: replication/slot.c:851 +#: replication/slot.c:886 #, c-format msgid "cannot use %s with a physical replication slot" msgstr "выполнить %s со слотом физической репликации нельзя" -#: replication/slot.c:863 +#: replication/slot.c:898 #, c-format msgid "cannot alter replication slot \"%s\"" msgstr "изменить слот репликации \"%s\" нельзя" -#: replication/slot.c:873 +#: replication/slot.c:908 #, 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:1056 replication/slot.c:2187 replication/slot.c:2580 #, c-format msgid "could not remove directory \"%s\"" msgstr "ошибка при удалении каталога \"%s\"" -#: replication/slot.c:1466 +#: replication/slot.c:1501 #, 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:1506 #, c-format msgid "replication slots can only be used if \"wal_level\" >= \"replica\"" msgstr "" "слоты репликации можно использовать, только если \"wal_level\" >= \"replica\"" -#: replication/slot.c:1483 +#: replication/slot.c:1518 #, c-format msgid "permission denied to use replication slots" msgstr "нет прав для использования слотов репликации" -#: replication/slot.c:1484 +#: replication/slot.c:1519 #, c-format msgid "Only roles with the %s attribute may use replication slots." msgstr "Использовать слоты репликации могут только роли с атрибутом %s." -#: replication/slot.c:1594 +#: replication/slot.c:1629 #, c-format msgid "The slot's restart_lsn %X/%X exceeds the limit by % byte." msgid_plural "" @@ -24890,12 +24901,12 @@ msgstr[0] "Позиция restart_lsn %X/%X слота превысила пре msgstr[1] "Позиция restart_lsn %X/%X слота превысила предел на % Б." msgstr[2] "Позиция restart_lsn %X/%X слота превысила предел на % Б." -#: replication/slot.c:1605 +#: replication/slot.c:1640 #, c-format msgid "The slot conflicted with xid horizon %u." msgstr "Слот конфликтует с горизонтом xid %u." -#: replication/slot.c:1610 +#: replication/slot.c:1645 msgid "" "Logical decoding on standby requires \"wal_level\" >= \"logical\" on the " "primary server." @@ -24904,7 +24915,7 @@ msgstr "" "\"logical\" на ведущем." #. translator: %s is a GUC variable name -#: replication/slot.c:1616 +#: replication/slot.c:1651 #, c-format msgid "" "The slot's idle time of %lds exceeds the configured \"%s\" duration of %ds." @@ -24912,50 +24923,50 @@ msgstr "" "Время простоя слота %ld сек. превышает настроенную в \"%s\" длительность %d " "сек." -#: replication/slot.c:1630 +#: replication/slot.c:1665 #, c-format msgid "terminating process %d to release replication slot \"%s\"" msgstr "завершение процесса %d для освобождения слота репликации \"%s\"" -#: replication/slot.c:1632 +#: replication/slot.c:1667 #, c-format msgid "invalidating obsolete replication slot \"%s\"" msgstr "аннулирование устаревшего слота репликации \"%s\"" -#: replication/slot.c:2498 +#: replication/slot.c:2518 #, 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:2525 #, c-format msgid "replication slot file \"%s\" has unsupported version %u" msgstr "файл состояния snapbuild \"%s\" имеет неподдерживаемую версию %u" -#: replication/slot.c:2512 +#: replication/slot.c:2532 #, c-format msgid "replication slot file \"%s\" has corrupted length %u" msgstr "у файла слота репликации \"%s\" неверная длина: %u" -#: replication/slot.c:2548 +#: replication/slot.c:2568 #, c-format msgid "checksum mismatch for replication slot file \"%s\": is %u, should be %u" msgstr "" "в файле слота репликации \"%s\" неверная контрольная сумма (%u вместо %u)" -#: replication/slot.c:2584 +#: replication/slot.c:2604 #, c-format msgid "logical replication slot \"%s\" exists, but \"wal_level\" < \"logical\"" msgstr "" "существует слот логической репликации \"%s\", но \"wal_level\" < \"logical\"" -#: replication/slot.c:2586 +#: replication/slot.c:2606 #, c-format msgid "Change \"wal_level\" to be \"logical\" or higher." msgstr "Смените \"wal_level\" на \"logical\" или более высокий уровень." -#: replication/slot.c:2598 +#: replication/slot.c:2618 #, c-format msgid "" "logical replication slot \"%s\" exists on the standby, but \"hot_standby\" = " @@ -24964,49 +24975,39 @@ msgstr "" "на ведомом сервере существует слот логической репликации \"%s\", но " "\"hot_standby\" = \"off\"" -#: replication/slot.c:2600 +#: replication/slot.c:2620 #, c-format msgid "Change \"hot_standby\" to be \"on\"." msgstr "Смените значение \"hot_standby\" на \"on\"." -#: replication/slot.c:2605 +#: replication/slot.c:2625 #, c-format msgid "" "physical replication slot \"%s\" exists, but \"wal_level\" < \"replica\"" msgstr "" "существует слот физической репликации \"%s\", но \"wal_level\" < \"replica\"" -#: replication/slot.c:2607 +#: replication/slot.c:2627 #, c-format msgid "Change \"wal_level\" to be \"replica\" or higher." msgstr "Смените \"wal_level\" на \"replica\" или более высокий уровень." -#: replication/slot.c:2654 +#: replication/slot.c:2674 #, c-format msgid "too many replication slots active before shutdown" msgstr "перед завершением активно слишком много слотов репликации" -#: replication/slot.c:2655 +#: replication/slot.c:2675 #, 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:2912 #, 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:2914 replication/slot.c:2948 replication/slot.c:2963 #, c-format msgid "" "Logical replication is waiting on the standby associated with replication " @@ -25015,30 +25016,30 @@ msgstr "" "Логическая репликация ожидает резервного сервера, связанного со слотом " "репликации \"%s\"." -#: replication/slot.c:2923 +#: replication/slot.c:2916 #, c-format msgid "Create the replication slot \"%s\" or amend parameter \"%s\"." msgstr "Создайте слот репликации \"%s\" или опустите параметр \"%s\"." -#: replication/slot.c:2933 +#: replication/slot.c:2926 #, c-format msgid "cannot specify logical replication slot \"%s\" in parameter \"%s\"" msgstr "" "слот логической репликации \"%s\" не может быть указан в параметре \"%s\"" -#: replication/slot.c:2935 +#: replication/slot.c:2928 #, c-format msgid "" "Logical replication is waiting for correction on replication slot \"%s\"." msgstr "Логическая репликация ожидает исправления слота репликации \"%s\"." -#: replication/slot.c:2937 +#: replication/slot.c:2930 #, c-format msgid "Remove the logical replication slot \"%s\" from parameter \"%s\"." msgstr "" "Удалите указание слота логической репликации \"%s\" из параметра \"%s\"." -#: replication/slot.c:2953 +#: replication/slot.c:2946 #, c-format msgid "" "physical replication slot \"%s\" specified in parameter \"%s\" has been " @@ -25047,14 +25048,14 @@ msgstr "" "слот физической репликации \"%s\", указанный в параметре \"%s\", был " "аннулирован" -#: replication/slot.c:2957 +#: replication/slot.c:2950 #, c-format msgid "" "Drop and recreate the replication slot \"%s\", or amend parameter \"%s\"." msgstr "" "Удалите и пересоздайте слот репликации \"%s\" или опустите параметр \"%s\"." -#: replication/slot.c:2968 +#: replication/slot.c:2961 #, c-format msgid "" "replication slot \"%s\" specified in parameter \"%s\" does not have " @@ -25063,7 +25064,7 @@ msgstr "" "у слота репликации \"%s\", указанного в параметре \"%s\", нулевое значение " "active_pid" -#: replication/slot.c:2972 +#: replication/slot.c:2965 #, c-format msgid "" "Start the standby associated with the replication slot \"%s\", or amend " @@ -25287,40 +25288,40 @@ 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:1867 #, 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 "" "в истории сервера нет запрошенной начальной точки %X/%X на линии времени %u" -#: replication/walsender.c:898 +#: 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:942 +#: replication/walsender.c:956 #, c-format msgid "" "requested starting point %X/%X is ahead of the WAL flush position of this " @@ -25329,73 +25330,73 @@ msgstr "" "запрошенная начальная точка %X/%X впереди позиции сброшенных данных журнала " "на этом сервере (%X/%X)" -#: replication/walsender.c:1137 +#: 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: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 "%s требуется выполнять в транзакции уровня изоляции REPEATABLE READ" #. 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 "завершение процесса передачи журнала после повышения" -#: 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 "" "нельзя выполнять команды SQL в процессе, передающем WAL для физической " "репликации" -#: 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 +#: 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 @@ -25405,22 +25406,22 @@ msgid "" 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 "неожиданный обрыв соединения с резервным сервером" -#: 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 "завершение процесса передачи журнала из-за тайм-аута репликации" @@ -25975,17 +25976,17 @@ 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 " @@ -26029,59 +26030,59 @@ msgstr "нераспознанный параметр Snowball: \"%s\"" msgid "missing Language parameter" msgstr "отсутствует параметр 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 "Статистика не может меняться в режиме восстановления." -#: statistics/attribute_stats.c:202 +#: statistics/attribute_stats.c:205 #, c-format 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 \"%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 +#: statistics/attribute_stats.c:303 #, c-format msgid "could not determine element type of column \"%s\"" msgstr "не удалось определить тип элемента для столбца \"%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 "Задать %s или %s нельзя." -#: statistics/attribute_stats.c:317 +#: statistics/attribute_stats.c:320 #, c-format msgid "could not determine less-than operator for column \"%s\"" msgstr "не удалось определить оператор «меньше» для столбца \"%s\"" -#: statistics/attribute_stats.c:332 +#: statistics/attribute_stats.c:335 #, c-format msgid "column \"%s\" is not a range type" msgstr "столбец \"%s\" не диапазонного типа" -#: statistics/attribute_stats.c:735 +#: statistics/attribute_stats.c:738 #, c-format msgid "\"%s\" array must not contain null values" msgstr "массив \"%s\" не должен содержать значения NULL" -#: statistics/attribute_stats.c:778 +#: statistics/attribute_stats.c:781 #, c-format msgid "maximum number of statistics slots exceeded: %d" msgstr "превышен предел числа слотов статистики: %d" -#: statistics/attribute_stats.c:945 +#: statistics/attribute_stats.c:949 #, c-format msgid "cannot clear statistics on system column \"%s\"" msgstr "очистить статистику для системного столбца \"%s\" нельзя" @@ -26100,58 +26101,68 @@ msgid "" msgstr "" "функция, возвращающая запись, вызвана в контексте, не допускающем этот тип" -#: statistics/relation_stats.c:115 +#: statistics/relation_stats.c:117 #, c-format 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 "argument \"%s\" must not be null" msgstr "аргумент \"%s\" не должен быть NULL" -#: statistics/stat_utils.c:71 +#: statistics/stat_utils.c:74 #, c-format msgid "argument \"%s\" must not be a multidimensional array" msgstr "аргумент \"%s\" не должен быть многомерным массивом" -#: statistics/stat_utils.c:80 +#: statistics/stat_utils.c:83 #, c-format msgid "argument \"%s\" array must not contain null values" msgstr "массив в аргументе \"%s\" не должен содержать значения NULL" -#: statistics/stat_utils.c:111 +#: 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:178 +#: 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" -#: statistics/stat_utils.c:307 +#: statistics/stat_utils.c:315 #, c-format msgid "variadic arguments must be name/value pairs" msgstr "переменными аргументами должны быть пары ключ/значение" -#: 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." @@ -26159,17 +26170,17 @@ msgstr "" "Передайте чётное количество переменных аргументов, чтобы их можно было " "разделить на пары." -#: statistics/stat_utils.c:322 +#: statistics/stat_utils.c:330 #, c-format msgid "name at variadic position %d is null" msgstr "в позиции %d списка аргументов обнаружено имя 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 "имя в позиции %d имеет тип %s, но ожидался тип %s" -#: storage/aio/aio.c:1340 +#: storage/aio/aio.c:1343 #, c-format msgid "Only -1 or values bigger than 0 are valid." msgstr "Допускается только значение -1 или большее 0." @@ -26243,7 +26254,7 @@ 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 " @@ -26252,12 +26263,12 @@ msgstr "" "обнуление %u страниц без реакции на ошибки контрольных сумм (%u) в блоках " "%u..%u отношения \"%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 "Первую обнулённую страницу содержал блок %u." -#: 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." @@ -26270,55 +26281,55 @@ msgstr[1] "" msgstr[2] "" "Подробные сведения о ещё %d некорректных блоках найти в протоколе сервера." -#: 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 некорректных страниц в блоках %u..%u отношения \"%s\"" -#: storage/buffer/bufmgr.c:7336 +#: storage/buffer/bufmgr.c:7340 #, c-format msgid "Block %u held the first invalid page." msgstr "Первую некорректную страницу содержал блок %u." -#: storage/buffer/bufmgr.c:7337 +#: storage/buffer/bufmgr.c:7341 #, c-format msgid "See server log for the other %u invalid block(s)." msgstr "" "Сведения об остальных %u некорректных блоках можно найти в протоколе сервера." -#: 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 "некорректная страница в блоке %u отношения \"%s\"; страница обнуляется" -#: 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 "обнуление %u некорректных страниц в блоках %u..%u отношения \"%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 "" "Сведения об остальных %u обнулённых блоках можно найти в протоколе сервера." -#: storage/buffer/bufmgr.c:7350 +#: storage/buffer/bufmgr.c:7354 #, c-format msgid "ignoring checksum failure in block %u of relation \"%s\"" msgstr "ошибка контрольной суммы в блоке %u отношения \"%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 "" "%u ошибок контрольных сумм в блоках %u..%u отношения \"%s\" игнорируются" -#: storage/buffer/bufmgr.c:7352 +#: storage/buffer/bufmgr.c:7356 #, c-format msgid "Block %u held the first ignored page." msgstr "Первую игнорируемую некорректную страницу содержал блок %u." -#: storage/buffer/bufmgr.c:7353 +#: storage/buffer/bufmgr.c:7357 #, c-format msgid "See server log for the other %u ignored block(s)." msgstr "" @@ -30752,22 +30763,22 @@ msgstr "запрошенный символ не подходит для код msgid "percentile value %g is not between 0 and 1" msgstr "значение перцентиля %g лежит не в диапазоне 0..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 "имя локали \"%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 "для правила сортировки \"%s\", лишённого версии, была записана версия" -#: 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 " @@ -30776,7 +30787,7 @@ msgstr "" "Правило сортировки в базе данных было создано с версией %s, но операционная " "система предоставляет версию %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 " @@ -30786,36 +30797,36 @@ msgstr "" "ALTER COLLATION %s REFRESH VERSION либо соберите PostgreSQL с правильной " "версией библиотеки." -#: 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 "неверное имя локали \"%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.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\"" @@ -37211,6 +37222,14 @@ msgstr "нестандартное использование спецсимво msgid "Use the escape string syntax for escapes, e.g., E'\\r\\n'." msgstr "Используйте для записи спецсимволов синтаксис спецстрок E'\\r\\n'." +#, c-format +#~ msgid "Replication slot \"%s\" does not exist." +#~ msgstr "Слот репликации \"%s\" не существует." + +#, c-format +#~ msgid "\"%s\" is not a physical replication slot." +#~ msgstr "\"%s\" не является слотом физической репликации." + #, c-format #~ msgid "cannot create statistics on the specified relation" #~ msgstr "создать статистику для указанного отношения нельзя" diff --git a/src/bin/initdb/po/es.po b/src/bin/initdb/po/es.po index 88b81e174da3d..f5fd9007ce6dc 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-09-20 09:50+0000\n" +"POT-Creation-Date: 2025-11-08 00:20+0000\n" "PO-Revision-Date: 2025-09-21 11:13+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -680,7 +680,6 @@ msgstr "" #: initdb.c:2542 #, c-format -#| msgid " -k, --data-checksums use data page checksums\n" msgid " --no-data-checksums do not use data page checksums\n" msgstr " --no-data-checksums no usar sumas de verificación en páginas de datos\n" @@ -759,7 +758,6 @@ msgstr " -N, --no-sync no esperar que los cambios se sincronicen a #: initdb.c:2557 #, c-format -#| msgid " --no-estimate-size do not estimate backup size in server side\n" msgid " --no-sync-data-files do not sync files within database directories\n" msgstr " --no-sync-data-files no sincronizar archivos en los directorios de datos\n" diff --git a/src/bin/pg_amcheck/po/es.po b/src/bin/pg_amcheck/po/es.po index 3c066bd2e820c..98f21b089cf88 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-09-20 09:52+0000\n" +"POT-Creation-Date: 2025-11-08 00:22+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 cf7107a1f81e0..59cb0111134cd 100644 --- a/src/bin/pg_archivecleanup/po/es.po +++ b/src/bin/pg_archivecleanup/po/es.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_archivecleanup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:52+0000\n" -"PO-Revision-Date: 2025-09-21 11:13+0200\n" +"POT-Creation-Date: 2025-11-08 00:22+0000\n" +"PO-Revision-Date: 2025-11-08 18:41+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -102,7 +102,7 @@ msgstr "Empleo:\n" #: pg_archivecleanup.c:262 #, c-format msgid " %s [OPTION]... ARCHIVELOCATION OLDESTKEPTWALFILE\n" -msgstr " %s [OPCIÓN].... UBICACIÓNARCHIVADOR WALMÁSANTIGUOAMANTENER\n" +msgstr " %s [OPCIÓN].... UBICACIÓN_ARCHIVADOR WAL_MÁS_ANTIGUO_A_MANTENER\n" #: pg_archivecleanup.c:263 #, c-format @@ -116,19 +116,19 @@ msgstr "" #: pg_archivecleanup.c:264 #, c-format msgid " -b, --clean-backup-history clean up files including backup history files\n" -msgstr " -, --clean-backup-history limpia archivos incluyendo archivos de historia de backup\n" +msgstr " -b, --clean-backup-history limpia archivos incluyendo archivos de historia de backup\n" #: pg_archivecleanup.c:265 #, c-format msgid " -d, --debug generate debug output (verbose mode)\n" -msgstr " -d, --debug genera salida de depuración (modo verboso)\n" +msgstr " -d, --debug genera salida de depuración (modo verboso)\n" #: 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 simulacro, muestra el nombre de los archivos que se eliminarían\n" +msgstr " -n, --dry-run simulacro, muestra el nombre de los archivos que se eliminarían\n" #: pg_archivecleanup.c:268 #, c-format @@ -141,8 +141,8 @@ msgid "" " -x, --strip-extension=EXT strip this extension before identifying files for\n" " clean up\n" msgstr "" -" -x, --strip-extension=EXT quitar esta extensión antes de identificar archivos\n" -" a limpiar\n" +" -x, --strip-extension=EXT quitar esta extensión antes de identificar archivos\n" +" a limpiar\n" #: pg_archivecleanup.c:271 #, c-format @@ -151,12 +151,6 @@ msgstr " -?, --help muestra esta ayuda, luego salir\n" #: pg_archivecleanup.c:272 #, c-format -#| msgid "" -#| "\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" msgid "" "\n" "For use as \"archive_cleanup_command\" in postgresql.conf:\n" @@ -166,9 +160,9 @@ msgid "" msgstr "" "\n" "Para usar como «archive_cleanup_command» en postgresql.conf:\n" -" archive_cleanup_command = 'pg_archivecleanup [OPCIÓN]... UBICACIÓNARCHIVADOR %%r'\n" +" archive_cleanup_command = 'pg_archivecleanup [OPCIÓN]... UBICACIÓN_ARCHIVADOR %%r'\n" "por ej.\n" -" archive_cleanup_command = 'pg_archivecleanup /mnt/servidor/directorioarchivador %%r'\n" +" archive_cleanup_command = 'pg_archivecleanup /mnt/servidor/dir_archivador %%r'\n" #: pg_archivecleanup.c:277 #, c-format diff --git a/src/bin/pg_basebackup/po/de.po b/src/bin/pg_basebackup/po/de.po index dfcaf2d8a4c68..9e58474afac71 100644 --- a/src/bin/pg_basebackup/po/de.po +++ b/src/bin/pg_basebackup/po/de.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-08 06:20+0000\n" -"PO-Revision-Date: 2025-08-08 10:59+0200\n" +"POT-Creation-Date: 2025-11-06 10:19+0000\n" +"PO-Revision-Date: 2025-11-06 13:27+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: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:2260 +#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 +#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 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:2235 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1316,7 +1316,7 @@ msgstr "Löschen Sie diese Publikation, bevor Sie erneut versuchen." msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "Replikations-Slot »%s« erzeugt in Datenbank »%s« auf dem Primärserver wurde zurückgelassen" -#: 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 "Löschen Sie diesen Replikations-Slot bald, um Zurückhalten von WAL-Datein zu vermeiden." @@ -1513,7 +1513,7 @@ msgstr "hole Systemidentifikator vom Subskriptionsserver" msgid "control file appears to be corrupt" msgstr "Kontrolldatei scheint kaputt zu sein" -#: 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 "Systemidentifikator ist % auf dem Subskriptionsserver" @@ -1523,494 +1523,544 @@ msgstr "Systemidentifikator ist % auf dem Subskriptionsserver" msgid "modifying system identifier of subscriber" msgstr "ändere Systemidentifikator auf dem Subskriptionsserver" -#: pg_createsubscriber.c:688 +#: pg_createsubscriber.c:683 +#, c-format +msgid "dry-run: would set system identifier to % on subscriber" +msgstr "Probelauf: Systemidentifikator würde auf dem Subskriptionsserver auf % gesetzt werden" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "Probelauf: würde pg_resetwal auf dem Subskriptionsserver ausführen" + +#: pg_createsubscriber.c:695 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "führe pg_resetwal auf dem Subskriptionsserver aus" -#: pg_createsubscriber.c:700 +#: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully changed the system identifier" -msgstr "Subskriptionsserver hat Systemidentifikator erfolgreich geändert" +msgid "successfully reset WAL on the subscriber" +msgstr "WAL auf dem Subskriptionsserver erfolgreich zurückgesetzt" -#: pg_createsubscriber.c:702 +#: pg_createsubscriber.c:709 #, c-format -msgid "could not change system identifier of subscriber: %s" -msgstr "konnte Systemidentifikator des Subskriptionsservers nicht ändern: %s" +msgid "could not reset WAL on subscriber: %s" +msgstr "konnte WAL auf dem Subskriptionsserver nicht zurücksetzen: %s" -#: pg_createsubscriber.c:726 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: %s" msgstr "konnte Datenbank-OID nicht ermitteln: %s" -#: pg_createsubscriber.c:733 +#: pg_createsubscriber.c:740 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "konnte Datenbank-OID nicht ermitteln: %d Zeilen erhalten, %d Zeile erwartet" -#: pg_createsubscriber.c:805 +#: pg_createsubscriber.c:812 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "erzeuge Replikations-Slot »%s« auf dem Publikationsserver" -#: pg_createsubscriber.c:825 +#: pg_createsubscriber.c:832 #, c-format msgid "could not write an additional WAL record: %s" msgstr "konnte zusätzlichen WAL-Datensatz nicht schreiben: %s" -#: pg_createsubscriber.c:851 +#: pg_createsubscriber.c:858 #, c-format msgid "could not obtain recovery progress: %s" msgstr "konnte Recovery-Fortschritt nicht ermitteln: %s" -#: pg_createsubscriber.c:884 +#: pg_createsubscriber.c:891 #, c-format msgid "checking settings on publisher" msgstr "prüfe Einstellungen auf dem Publikationsserver" -#: pg_createsubscriber.c:894 +#: pg_createsubscriber.c:901 #, c-format msgid "primary server cannot be in recovery" msgstr "Primärserver kann nicht im Wiederherstellungsmodus sein" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:927 #, c-format msgid "could not obtain publisher settings: %s" msgstr "konnte Einstellungen des Publikationsservers nicht ermitteln: %s" -#: pg_createsubscriber.c:949 +#: pg_createsubscriber.c:956 #, c-format msgid "publisher requires \"wal_level\" >= \"logical\"" msgstr "Publikationsserver benötigt »wal_level« >= »logical«" -#: pg_createsubscriber.c:955 +#: pg_createsubscriber.c:962 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "Publikationsserver benötigt %d Replikations-Slots, aber nur %d verbleiben" -#: 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 "Erhöhen Sie den Konfigurationsparameter »%s« auf mindestens %d." -#: pg_createsubscriber.c:964 +#: pg_createsubscriber.c:971 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "Publikationsserver benötigt %d WAL-Sender-Prozesse, aber nur %d verbleiben" -#: pg_createsubscriber.c:973 +#: pg_createsubscriber.c:980 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "Option »two_phase« wird für Replikations-Slots nicht aktiviert" -#: 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 "Subskriptionen werden mit der Option »two_phase« ausgeschaltet erzeugt. Vorbereitete Transaktionen werden bei COMMIT PREPARED repliziert werden." -#: 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 "Sie können die Kommandozeilenoption --enable-two-phase verwenden, um two_phase einzuschalten." -#: pg_createsubscriber.c:986 +#: pg_createsubscriber.c:993 #, c-format msgid "required WAL could be removed from the publisher" msgstr "benötigtes WAL könnte vom Publikationsserver entfernt werden" -#: 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 "Setzen Sie den Konfigurationsparameter »%s« auf -1, um sicherzustellen, dass die benötigten WAL-Dateien nicht vorzeitig entfernt werden." -#: pg_createsubscriber.c:1019 +#: pg_createsubscriber.c:1026 #, c-format msgid "checking settings on subscriber" msgstr "prüfe Einstellungen auf Subskriptionsserver" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1033 #, c-format msgid "target server must be a standby" msgstr "Zielserver muss ein Standby sein" -#: pg_createsubscriber.c:1050 +#: pg_createsubscriber.c:1057 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "konnte Einstellungen des Subskriptionsservers nicht ermitteln: %s" -#: pg_createsubscriber.c:1074 +#: pg_createsubscriber.c:1081 #, c-format msgid "subscriber requires %d active replication origins, but only %d remain" msgstr "Subskriptionsserver benötigt %d Slots für aktive Replication-Origins, aber nur %d verbleiben" -#: pg_createsubscriber.c:1083 +#: pg_createsubscriber.c:1090 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "Subskriptionsserver benötigt %d Arbeitsprozesse für logische Replikation, aber nur %d verbleiben" -#: pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1099 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "Subskriptionsserver benötigt %d Arbeitsprozesse, aber nur %d verbleiben" -#: pg_createsubscriber.c:1127 +#: pg_createsubscriber.c:1135 +#, c-format +msgid "dry-run: would drop subscription \"%s\" in database \"%s\"" +msgstr "Probelauf: würde Subskription »%s« in Datenbank »%s« löschen" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "lösche Subskription »%s« in Datenbank »%s«" -#: pg_createsubscriber.c:1136 +#: pg_createsubscriber.c:1146 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "konnte Subskription »%s« nicht löschen: %s" -#: pg_createsubscriber.c:1171 +#: pg_createsubscriber.c:1181 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "konnte bereits existierende Subskriptionen nicht ermitteln: %s" -#: pg_createsubscriber.c:1312 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "konnte Replikations-Slot »%s« auf dem Primärserver nicht löschen" -#: pg_createsubscriber.c:1346 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "konnte Failover-Replikations-Slot-Informationen nicht ermitteln: %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 "Löschen Sie die Failover-Replikations-Slots auf dem Subskriptionsserver bald, um Zurückhalten von WAL-Dateien zu vermeiden." -#: pg_createsubscriber.c:1356 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "konnte Failover-Replikations-Slot nicht löschen" -#: 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 "Probelauf: würde Replikations-Slot »%s« in Datenbank »%s« auf dem Publikationsserver erzeugen" + +#: pg_createsubscriber.c:1392 #, c-format -msgid "creating the replication slot \"%s\" in database \"%s\"" -msgstr "erzeuge Replikations-Slot »%s« in Datenbank »%s«" +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "erzeuge Replikations-Slot »%s« in Datenbank »%s« auf dem Publikationsserver" -#: pg_createsubscriber.c:1397 +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "konnte Replikations-Slot »%s« in Datenbank »%s« nicht erzeugen: %s" -#: pg_createsubscriber.c:1427 +#: pg_createsubscriber.c:1442 +#, c-format +msgid "dry-run: would drop the replication slot \"%s\" in database \"%s\"" +msgstr "Probelauf: würde Replikations-Slot »%s« in Datenbank »%s« löschen" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "lösche Replikations-Slot »%s« in Datenbank »%s«" -#: pg_createsubscriber.c:1443 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "konnte Replikations-Slot »%s« in Datenbank »%s« nicht löschen: %s" -#: pg_createsubscriber.c:1464 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl ist fehlgeschlagen mit Statuscode %d" -#: pg_createsubscriber.c:1469 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl wurde durch Ausnahme 0x%X beendet" -#: 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 "Sehen Sie die Beschreibung des Hexadezimalwerts in der C-Include-Datei »ntstatus.h« nach." -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl wurde durch Signal %d beendet: %s" -#: pg_createsubscriber.c:1479 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl hat mit unbekanntem Status %d beendet" -#: pg_createsubscriber.c:1482 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "Der fehlgeschlagene Befehl war: %s" -#: pg_createsubscriber.c:1532 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "Server wurde gestartet" -#: pg_createsubscriber.c:1547 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "Server wurde angehalten" -#: pg_createsubscriber.c:1566 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "warte, dass der Zielserver einen konsistenten Zustand erreicht" -#: pg_createsubscriber.c:1589 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "Zeitüberschreitung bei der Wiederherstellung" -#: pg_createsubscriber.c:1602 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "Server hat Recovery-Zustand nicht beendet" -#: pg_createsubscriber.c:1604 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "Zielserver hat einen konsistenten Zustand erreicht" -#: 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 "Wenn pg_createsubscriber ab diesem Punkt fehlschlägt, dann müssen Sie die physikalische Replik neu erzeugen, bevor fortgesetzt werden kann." -#: 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 "konnte Publikationsinformationen nicht ermitteln: %s" -#: pg_createsubscriber.c:1646 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "Publikation »%s« existiert bereits" -#: pg_createsubscriber.c:1647 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Nennen Sie diese Publikation eventuell um bevor Sie fortsetzen." -#: pg_createsubscriber.c:1654 +#: pg_createsubscriber.c:1668 +#, c-format +msgid "dry-run: would create publication \"%s\" in database \"%s\"" +msgstr "Probelauf: würde Publikation »%s« in Datenbank »%s« erzeugen" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "erzeuge Publikation »%s« in Datenbank »%s«" -#: pg_createsubscriber.c:1667 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "konnte Publikation »%s« in Datenbank »%s« nicht erzeugen: %s" -#: pg_createsubscriber.c:1697 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "Probelauf: würde Publikation »%s« in Datenbank »%s« löschen" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "lösche Publikation »%s« in Datenbank »%s«" -#: pg_createsubscriber.c:1711 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "konnte Publikation »%s« in Datenbank »%s« nicht löschen: %s" -#: pg_createsubscriber.c:1748 +#: pg_createsubscriber.c:1769 #, c-format msgid "dropping all existing publications in database \"%s\"" msgstr "lösche alle bestehenden Publikationen in Datenbank »%s«" -#: pg_createsubscriber.c:1806 +#: pg_createsubscriber.c:1828 +#, c-format +msgid "dry-run: would create subscription \"%s\" in database \"%s\"" +msgstr "Probelauf: würde Subskription »%s« in Datenbank »%s« erzeugen" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "erzeuge Subskription »%s« in Datenbank »%s«" -#: pg_createsubscriber.c:1828 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "konnte Subskription »%s« in Datenbank »%s« nicht erzeugen: %s" -#: pg_createsubscriber.c:1873 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "konnte Subskriptions-OID nicht ermitteln: %s" -#: pg_createsubscriber.c:1880 +#: pg_createsubscriber.c:1905 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "konnte Subskriptions-OID nicht ermitteln: %d Zeilen erhalten, %d Zeile erwartet" -#: 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 "Problelauf: würde Replikationsfortschritt (Knotenname »%s«, LSN %s) in Datenbank »%s« setzen" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "setze Replikationsfortschritt (Knotenname »%s«, LSN %s) in Datenbank »%s«" -#: pg_createsubscriber.c:1919 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "konnte Replikationsfortschritt für Subskription »%s« nicht setzen: %s" -#: pg_createsubscriber.c:1950 +#: pg_createsubscriber.c:1980 +#, c-format +msgid "dry-run: would enable subscription \"%s\" in database \"%s\"" +msgstr "Probelauf: würde Subskription »%s« in Datenbank »%s« aktivieren" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "aktiviere Subskription »%s« in Datenbank »%s«" -#: pg_createsubscriber.c:1962 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "konnte Subskription »%s« nicht aktivieren: %s" -#: pg_createsubscriber.c:2008 +#: pg_createsubscriber.c:2041 #, c-format msgid "could not obtain a list of databases: %s" msgstr "konnte Liste der Datenbanken nicht ermitteln: %s" -#: pg_createsubscriber.c:2112 +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "kann nicht von »root« ausgeführt werden" -#: pg_createsubscriber.c:2113 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Sie müssen %s als PostgreSQL-Superuser ausführen." -#: pg_createsubscriber.c:2136 +#: pg_createsubscriber.c:2169 #, c-format msgid "database \"%s\" specified more than once for -d/--database" msgstr "Datenbank »%s« mehrmals für -d/--database angegeben" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2210 #, c-format msgid "publication \"%s\" specified more than once for --publication" msgstr "Publikation »%s« mehrmals für --publication angegeben" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2219 #, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "Replikations-Slot »%s« mehrmals für --replication-slot angegeben" -#: pg_createsubscriber.c:2195 +#: pg_createsubscriber.c:2228 #, c-format msgid "subscription \"%s\" specified more than once for --subscription" msgstr "Subskription »%s« mehrmals für --subscription angegeben" -#: pg_createsubscriber.c:2201 +#: pg_createsubscriber.c:2234 #, c-format msgid "object type \"%s\" specified more than once for --clean" msgstr "Objekttyp »%s« mehrmals für --clean angegeben" -#: pg_createsubscriber.c:2226 +#: 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" -#: pg_createsubscriber.c:2244 +#: pg_createsubscriber.c:2277 #, c-format msgid "no subscriber data directory specified" msgstr "kein Datenverzeichnis für Subskriptionsserver angegeben" -#: pg_createsubscriber.c:2255 +#: pg_createsubscriber.c:2288 #, c-format msgid "could not determine current directory" msgstr "konnte aktuelles Verzeichnis nicht ermitteln" -#: pg_createsubscriber.c:2272 +#: pg_createsubscriber.c:2305 #, c-format msgid "no publisher connection string specified" msgstr "keine Verbindungsparameter für Publikationsserver angegeben" -#: pg_createsubscriber.c:2276 +#: pg_createsubscriber.c:2309 #, c-format msgid "validating publisher connection string" msgstr "validiere Verbindungsparameter für Publikationsserver" -#: pg_createsubscriber.c:2282 +#: pg_createsubscriber.c:2315 #, c-format msgid "validating subscriber connection string" msgstr "validiere Verbindungsparameter für Subskriptionsserver" -#: pg_createsubscriber.c:2299 +#: pg_createsubscriber.c:2332 #, c-format msgid "no database was specified" msgstr "keine Datenbank wurde angegeben" -#: pg_createsubscriber.c:2310 +#: pg_createsubscriber.c:2343 #, 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:2315 +#: pg_createsubscriber.c:2348 #, c-format msgid "no database name specified" msgstr "kein Datenbankname angegeben" -#: pg_createsubscriber.c:2325 +#: pg_createsubscriber.c:2358 #, c-format msgid "wrong number of publication names specified" msgstr "falsche Anzahl Publikationsnamen angegeben" -#: pg_createsubscriber.c:2326 +#: pg_createsubscriber.c:2359 #, 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:2332 +#: pg_createsubscriber.c:2365 #, c-format msgid "wrong number of subscription names specified" msgstr "falsche Anzahl Subskriptionsnamen angegeben" -#: pg_createsubscriber.c:2333 +#: pg_createsubscriber.c:2366 #, 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:2339 +#: pg_createsubscriber.c:2372 #, c-format msgid "wrong number of replication slot names specified" msgstr "falsche Anzahl Replikations-Slot-Namen angegeben" -#: pg_createsubscriber.c:2340 +#: pg_createsubscriber.c:2373 #, 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:2352 +#: pg_createsubscriber.c:2385 #, c-format msgid "invalid object type \"%s\" specified for --clean" msgstr "ungültiger Objekttyp »%s« für --clean angegeben" -#: pg_createsubscriber.c:2353 +#: pg_createsubscriber.c:2386 #, c-format msgid "The valid value is: \"%s\"" msgstr "Der gültige Wert ist: »%s«" -#: pg_createsubscriber.c:2384 +#: pg_createsubscriber.c:2417 #, 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:2397 +#: pg_createsubscriber.c:2430 #, c-format msgid "standby server is running" msgstr "Standby-Server läuft" -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2431 #, c-format msgid "Stop the standby server and try again." msgstr "Halten Sie den Standby-Server an und versuchen Sie erneut." -#: pg_createsubscriber.c:2407 +#: pg_createsubscriber.c:2440 #, c-format msgid "starting the standby server with command-line options" msgstr "starte den Standby-Server mit Kommandozeilenoptionen" -#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 +#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 #, c-format msgid "stopping the subscriber" msgstr "stoppe den Subskriptionsserver" -#: pg_createsubscriber.c:2437 +#: pg_createsubscriber.c:2470 #, c-format msgid "starting the subscriber" msgstr "starte den Subskriptionsserver" -#: pg_createsubscriber.c:2466 +#: pg_createsubscriber.c:2499 #, 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 e96b135635c3f..55b804d68a86e 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-09-20 09:49+0000\n" -"PO-Revision-Date: 2025-09-21 11:24+0200\n" +"POT-Creation-Date: 2025-11-08 00:19+0000\n" +"PO-Revision-Date: 2025-11-08 19:02+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: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:2260 +#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 +#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 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:2235 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1321,7 +1321,7 @@ msgstr "Borre esta publicación antes de volver a intentar." msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "el slot de replicación «%s» en la base de datos «%s» en el primario fue abandonada" -#: 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 "Elimine este slot de replicación pronto para evitar la retención de archivos WAL." @@ -1351,8 +1351,8 @@ msgid "" " -a, --all create subscriptions for all databases except template\n" " databases and databases that don't allow connections\n" msgstr "" -" -a, --all crear suscripciones para todas las bases de datos excepto\n" -" las que no permiten conexiones y las marcadas como patrón\n" +" -a, --all crear suscripciones para todas las bases de datos excepto\n" +" las que no permiten conexiones y las marcadas como patrón\n" #: pg_createsubscriber.c:251 #, c-format @@ -1391,7 +1391,6 @@ msgstr " -t, --recovery-timeout=SEGS segundos a esperar a que la recuperaci #: pg_createsubscriber.c:258 #, c-format -#| msgid " -d, --database=DBNAME database in which to create a subscription\n" msgid " -T, --enable-two-phase enable two-phase commit for all subscriptions\n" msgstr " -T, --enable-two-phase activar commit en dos fases a todas las suscripciones\n" @@ -1411,8 +1410,8 @@ msgid "" " --clean=OBJECTTYPE drop all objects of the specified type from specified\n" " databases on the subscriber; accepts: \"%s\"\n" msgstr "" -" --clean=TIPO_OBJETO eliminar todos los objetos del tipo especificado desde las\n" -" bases de datos en el suscriptor; acepta: «%s»\n" +" --clean=TIPO_OBJETO eliminar todos los objetos del tipo especificado desde las\n" +" bases de datos en el suscriptor; acepta: «%s»\n" #: pg_createsubscriber.c:263 #, c-format @@ -1505,7 +1504,6 @@ msgstr "no se pudo obtener el identificador de sistema: se obtuvieron %d filas, #: pg_createsubscriber.c:617 #, c-format -#| msgid "system identifier is %llu on publisher" msgid "system identifier is % on publisher" msgstr "identificador de sistema es % en el publicador" @@ -1519,9 +1517,8 @@ msgstr "obteniendo identificador de sistema del suscriptor" msgid "control file appears to be corrupt" msgstr "el archivo de control parece estar corrupto" -#: pg_createsubscriber.c:645 pg_createsubscriber.c:685 +#: pg_createsubscriber.c:645 pg_createsubscriber.c:688 #, c-format -#| msgid "system identifier is %llu on subscriber" msgid "system identifier is % on subscriber" msgstr "el identificador de sistema es % en suscriptor" @@ -1530,508 +1527,545 @@ msgstr "el identificador de sistema es % en suscriptor" msgid "modifying system identifier of subscriber" msgstr "modificando el identificador de sistema del suscriptor" -#: pg_createsubscriber.c:688 +#: pg_createsubscriber.c:683 +#, c-format +msgid "dry-run: would set system identifier to % on subscriber" +msgstr "modo de prueba: el identificador de sistema sería % en suscriptor" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "modo de prueba: ejecutaría pg_resetwal en el suscriptor" + +#: pg_createsubscriber.c:695 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "ejecutando pg_resetwal en el suscriptor" -#: pg_createsubscriber.c:700 +#: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully changed the system identifier" -msgstr "el suscriptor cambió exitosamente el identificador de sistema" +msgid "successfully reset WAL on the subscriber" +msgstr "se reinició WAL exitosamente en el suscriptor" -#: pg_createsubscriber.c:702 +#: pg_createsubscriber.c:709 #, c-format -msgid "could not change system identifier of subscriber: %s" -msgstr "no se pudo cambiar el identificador de sistema del suscriptor: %s" +msgid "could not reset WAL on subscriber: %s" +msgstr "no se pudo reiniciar WAL en el suscriptor: %s" -#: pg_createsubscriber.c:726 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: %s" msgstr "no se pudo obtener el OID de base de datos: %s" -#: pg_createsubscriber.c:733 +#: pg_createsubscriber.c:740 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "no se pudo obtener el OID de base de datos: se obtuvieron %d filas, se esperaban %d filas" -#: pg_createsubscriber.c:805 +#: pg_createsubscriber.c:812 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "crear el slot de replicación «%s» en el publicador" -#: pg_createsubscriber.c:825 +#: pg_createsubscriber.c:832 #, c-format msgid "could not write an additional WAL record: %s" msgstr "no se pudo escribir un registro WAL adicional: %s" -#: pg_createsubscriber.c:851 +#: pg_createsubscriber.c:858 #, c-format msgid "could not obtain recovery progress: %s" msgstr "no se pudo obtener el progreso de la recuperación: %s" -#: pg_createsubscriber.c:884 +#: pg_createsubscriber.c:891 #, c-format msgid "checking settings on publisher" msgstr "verificando configuración en el publicador" -#: pg_createsubscriber.c:894 +#: pg_createsubscriber.c:901 #, c-format msgid "primary server cannot be in recovery" msgstr "el servidor primario no puede estar en recuperación" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:927 #, c-format msgid "could not obtain publisher settings: %s" msgstr "no se pudo obtener configuraciones del publicador: %s" # FIXME see slot.c:779. See also postmaster.c:835 -#: pg_createsubscriber.c:949 +#: pg_createsubscriber.c:956 #, c-format -#| msgid "publisher requires wal_level >= \"logical\"" msgid "publisher requires \"wal_level\" >= \"logical\"" msgstr "el publicador requiere «wal_level» >= «logical»" -#: pg_createsubscriber.c:955 +#: pg_createsubscriber.c:962 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "el publicador requiere %d slots de replicación, pero solo quedan %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 "Aumente el parámetro de configuración «%s» a al menos %d." -#: pg_createsubscriber.c:964 +#: pg_createsubscriber.c:971 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "el publicador requiere %d procesos WAL sender, pero sólo quedan %d" -#: pg_createsubscriber.c:973 +#: pg_createsubscriber.c:980 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "la opción two_phase no será activada en los slots de replicación" -#: 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 "Las suscripciones serán creadas con la opción two_phase desactivada. Las transacciones preparadas serán replicadas durante 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 "Puede usar la opción de línea de órdenes --enable-two-phase para activar two_phase." -#: pg_createsubscriber.c:986 +#: pg_createsubscriber.c:993 #, c-format msgid "required WAL could be removed from the publisher" msgstr "el WAL requerido podría ser eliminado del publicador" -#: pg_createsubscriber.c:987 +#: pg_createsubscriber.c:994 #, c-format -#| msgid "Make sure the configuration parameter \"%s\" is set on the primary server." msgid "Set the configuration parameter \"%s\" to -1 to ensure that required WAL files are not prematurely removed." msgstr "Defina el parámetro de configuración «%s» a -1 para asegurar que los archivos WAL requeridos no sean eliminados prematuramente." -#: pg_createsubscriber.c:1019 +#: pg_createsubscriber.c:1026 #, c-format msgid "checking settings on subscriber" msgstr "verificando configuraciones en el suscriptor" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1033 #, c-format msgid "target server must be a standby" msgstr "el servidor de destino debe ser un standby" -#: pg_createsubscriber.c:1050 +#: pg_createsubscriber.c:1057 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "no se pudo obtener la configuración del suscriptor: %s" -#: pg_createsubscriber.c:1074 +#: pg_createsubscriber.c:1081 #, c-format -#| msgid "subscriber requires %d replication slots, but only %d remain" msgid "subscriber requires %d active replication origins, but only %d remain" msgstr "el suscriptor requiere %d slots de replicación activos, pero sólo quedan %d" -#: pg_createsubscriber.c:1083 +#: pg_createsubscriber.c:1090 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "el suscriptor requiere %d procesos de replicación lógica, pero sólo quedan %d" -#: pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1099 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "el suscriptor requiere %d procesos ayudantes, pero solo quedan %d" -#: pg_createsubscriber.c:1127 +#: pg_createsubscriber.c:1135 +#, c-format +msgid "dry-run: would drop subscription \"%s\" in database \"%s\"" +msgstr "moo de prueba: se eliminaría la suscripción «%s» en base de datos «%s»" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "eliminando suscripción «%s» en base de datos «%s»" -#: pg_createsubscriber.c:1136 +#: pg_createsubscriber.c:1146 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "no se pudo eliminar la suscripción «%s»: %s" -#: pg_createsubscriber.c:1171 +#: pg_createsubscriber.c:1181 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "no se pudo obtener suscripciones pre-existentes: %s" -#: pg_createsubscriber.c:1312 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "no se pudo eliminar el slot de replicación «%s» en el primario" -#: pg_createsubscriber.c:1346 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "no se pudo obtener información de slots de replicación \"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 "Elimine los slots de replicación de failover en el suscriptor pronto para evitar retención de archivos WAL." -#: pg_createsubscriber.c:1356 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "no se pudo eliminar el slot de replicación \"failover\"" -#: pg_createsubscriber.c:1378 +#: pg_createsubscriber.c:1389 #, c-format -msgid "creating the replication slot \"%s\" in database \"%s\"" -msgstr "creando el slot de replicación «%s» en base de datos «%s»" +msgid "dry-run: would create the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "modo de prueba: se crearía el slot de replicación «%s» en base de datos «%s» en el publicador" -#: pg_createsubscriber.c:1397 +#: pg_createsubscriber.c:1392 +#, c-format +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "creando el slot de replicación «%s» en base de datos «%s» en el publicador" + +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "no se pudo crear el slot de replicación «%s» en base de datos «%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 "modo de prueba: se eliminaría el slot de replicación «%s» en base de datos «%s»" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "eliminando el slot de replicación «%s» en base de datos «%s»" -#: pg_createsubscriber.c:1443 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "no se pudo eliminar el slot de replicación «%s» en base de datos «%s»: %s" -#: pg_createsubscriber.c:1464 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "pg_ctl falló con código de retorno %d" -#: pg_createsubscriber.c:1469 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl fue terminado por una excepción 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 "Vea el archivo «ntstatus.h» para una descripción del valor hexadecimal." -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl fue terminado por una señal %d: %s" -#: pg_createsubscriber.c:1479 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl terminó con código no reconocido %d" -#: pg_createsubscriber.c:1482 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "La orden fallida era: %s" -#: pg_createsubscriber.c:1532 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "el servidor fue iniciado" -#: pg_createsubscriber.c:1547 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "el servidor fue detenido" -#: pg_createsubscriber.c:1566 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "esperando que el servidor de destino alcance el estado consistente" -#: pg_createsubscriber.c:1589 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "la recuperación tomó demasiado tiempo" -#: pg_createsubscriber.c:1602 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "el servidor no terminó la recuperación" -#: pg_createsubscriber.c:1604 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "el servidor de destino alcanzó el estado consistente" -#: 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 "Si pg_createsubscriber falla a partir de este punto, deberá re-crear la réplica física antes de continuar." -#: 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 "no se pudo obtener la información de publicación: %s" -#: pg_createsubscriber.c:1646 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "la publicación «%s» ya existe" -#: pg_createsubscriber.c:1647 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Considere cambiar el nombre de esta publicación antes de continuar." -#: pg_createsubscriber.c:1654 +#: pg_createsubscriber.c:1668 +#, c-format +msgid "dry-run: would create publication \"%s\" in database \"%s\"" +msgstr "modo de prueba: se crearía la publicación «%s» en la base de datos «%s»" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "creando la publicación «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1667 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "no se pudo crear la publicación «%s» en la base de datos «%s»: %s" -#: pg_createsubscriber.c:1697 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "modo de prueba: se eliminaría la publicación «%s» en la base de datos «%s»" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "eliminando la publicación «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1711 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "no se pudo eliminar la publicación «%s» en la base de datos «%s»: %s" -#: pg_createsubscriber.c:1748 +#: pg_createsubscriber.c:1769 #, c-format -#| msgid "dropping publication \"%s\" in database \"%s\"" msgid "dropping all existing publications in database \"%s\"" msgstr "eliminando todas las publicaciones existentes en la base de datos «%s»" -#: pg_createsubscriber.c:1806 +#: pg_createsubscriber.c:1828 +#, c-format +msgid "dry-run: would create subscription \"%s\" in database \"%s\"" +msgstr "modo de prueba: se crearía la suscripción «%s» en la base de datos «%s»" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "creando la suscripción «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1828 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "no se pudo create la suscripción «%s» en la base de datos «%s»: %s" -#: pg_createsubscriber.c:1873 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "no se pudo obtener el OID de suscripción: %s" -#: pg_createsubscriber.c:1880 +#: pg_createsubscriber.c:1905 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "no se pudo obtener el OID de suscripción: se obtuvieron %d filas, se esperaban %d filas" -#: 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 "modo de prueba: se definiría el progreso de replicación (nombre de nodo «%s», LSN %s) en base de datos «%s»" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "definiendo progreso de replicación (nombre de nodo «%s», LSN %s) en base de datos «%s»" -#: pg_createsubscriber.c:1919 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "no se pudo establecer el progreso de replicación para la suscripción «%s»: %s" -#: pg_createsubscriber.c:1950 +#: pg_createsubscriber.c:1980 +#, c-format +msgid "dry-run: would enable subscription \"%s\" in database \"%s\"" +msgstr "modo de prueba: se activaría la suscripción «%s» en la base de datos «%s»" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "activando la suscripción «%s» en la base de datos «%s»" -#: pg_createsubscriber.c:1962 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "no se pudo habilitar la suscripción «%s»: %s" -#: pg_createsubscriber.c:2008 +#: pg_createsubscriber.c:2041 #, c-format -#| msgid "could not obtain database OID: %s" msgid "could not obtain a list of databases: %s" msgstr "no se pudo obtener una lista de bases de datos: %s" -#: pg_createsubscriber.c:2112 +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "no puede ser ejecutado con el usuario «root»" -#: pg_createsubscriber.c:2113 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Debe ejecutar %s con el superusuario de PostgreSQL." -#: pg_createsubscriber.c:2136 +#: pg_createsubscriber.c:2169 #, c-format -#| msgid "database \"%s\" specified more than once" msgid "database \"%s\" specified more than once for -d/--database" msgstr "la base de datos «%s» fue especificada más de una vez para -d/--database" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2210 #, c-format -#| msgid "publication \"%s\" specified more than once" msgid "publication \"%s\" specified more than once for --publication" msgstr "la publicación «%s» fue especificada más de una vez para --publication" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2219 #, c-format -#| msgid "replication slot \"%s\" specified more than once" msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "el slot de replicación «%s» fue especificado más de una vez para --replication-slot" -#: pg_createsubscriber.c:2195 +#: pg_createsubscriber.c:2228 #, c-format -#| msgid "subscription \"%s\" specified more than once" msgid "subscription \"%s\" specified more than once for --subscription" msgstr "la suscripción «%s» fue especificada más de una vez para --subscription" -#: pg_createsubscriber.c:2201 +#: pg_createsubscriber.c:2234 #, c-format -#| msgid "table name \"%s\" specified more than once" msgid "object type \"%s\" specified more than once for --clean" msgstr "el tipo de objeto «%s» fue especificado más de una vez para --clean" -#: pg_createsubscriber.c:2226 +#: pg_createsubscriber.c:2259 #, c-format -#| msgid "options -c/--clean and -a/--data-only cannot be used together" msgid "options %s and -a/--all cannot be used together" msgstr "las opciones %s y -a/--all no pueden usarse juntas" -#: pg_createsubscriber.c:2244 +#: pg_createsubscriber.c:2277 #, c-format msgid "no subscriber data directory specified" msgstr "no se especificó un directorio de datos de suscripción" -#: pg_createsubscriber.c:2255 +#: pg_createsubscriber.c:2288 #, c-format msgid "could not determine current directory" msgstr "no se pudo determinar el directorio actual" -#: pg_createsubscriber.c:2272 +#: pg_createsubscriber.c:2305 #, c-format msgid "no publisher connection string specified" msgstr "no se especificó un string de conexión de publicador" -#: pg_createsubscriber.c:2276 +#: pg_createsubscriber.c:2309 #, c-format msgid "validating publisher connection string" msgstr "validando string de conexión del publicador" -#: pg_createsubscriber.c:2282 +#: pg_createsubscriber.c:2315 #, c-format msgid "validating subscriber connection string" msgstr "validando string de conexión del suscriptor" -#: pg_createsubscriber.c:2299 +#: pg_createsubscriber.c:2332 #, c-format msgid "no database was specified" msgstr "no se especificó una base de datos" -#: pg_createsubscriber.c:2310 +#: pg_createsubscriber.c:2343 #, 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:2315 +#: pg_createsubscriber.c:2348 #, c-format msgid "no database name specified" msgstr "no se especificó un nombre de base de datos" -#: pg_createsubscriber.c:2325 +#: pg_createsubscriber.c:2358 #, c-format msgid "wrong number of publication names specified" msgstr "una cantidad incorrecta de nombres de publicación fue especificada" -#: pg_createsubscriber.c:2326 +#: pg_createsubscriber.c:2359 #, 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:2332 +#: pg_createsubscriber.c:2365 #, c-format msgid "wrong number of subscription names specified" msgstr "una cantidad incorrecta de nombres de suscripción fue especificada" -#: pg_createsubscriber.c:2333 +#: pg_createsubscriber.c:2366 #, 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:2339 +#: pg_createsubscriber.c:2372 #, 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:2340 +#: pg_createsubscriber.c:2373 #, 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:2352 +#: pg_createsubscriber.c:2385 #, c-format -#| msgid "invalid output format \"%s\" specified" msgid "invalid object type \"%s\" specified for --clean" msgstr "el tipo de objeto «%s» especificado para --clean no es válido" -#: pg_createsubscriber.c:2353 +#: pg_createsubscriber.c:2386 #, c-format -#| msgid "invalid %s value: \"%s\"" msgid "The valid value is: \"%s\"" msgstr "El valor válido es: «%s»" -#: pg_createsubscriber.c:2384 +#: pg_createsubscriber.c:2417 #, 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:2397 +#: pg_createsubscriber.c:2430 #, c-format msgid "standby server is running" msgstr "el servidor standby está en ejecución" -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2431 #, c-format msgid "Stop the standby server and try again." msgstr "Detenga el servidor standby y pruebe otra vez." -#: pg_createsubscriber.c:2407 +#: pg_createsubscriber.c:2440 #, 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:2423 pg_createsubscriber.c:2458 +#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 #, c-format msgid "stopping the subscriber" msgstr "deteniendo el suscriptor" -#: pg_createsubscriber.c:2437 +#: pg_createsubscriber.c:2470 #, c-format msgid "starting the subscriber" msgstr "iniciando el suscriptor" -#: pg_createsubscriber.c:2466 +#: pg_createsubscriber.c:2499 #, c-format msgid "Done!" msgstr "¡Listo!" @@ -2323,13 +2357,11 @@ msgstr " -S, --slot=NOMBRE-SLOT nombre del slot de replicación lógica\n" #: 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 activa decodificación de transacciones preparadas al crear un slot\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 (lo mismo que --enable-two-phase; obsoleto)\n" @@ -2441,7 +2473,6 @@ msgstr "--endpos sólo se puede utilizar con --start" #: pg_recvlogical.c:933 pg_recvlogical.c:940 #, c-format -#| msgid "--two-phase may only be specified with --create-slot" msgid "%s may only be specified with --create-slot" msgstr "%s sólo se puede utilizar con --create-slot" @@ -2710,7 +2741,3 @@ 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 "could not clear search_path: %s" -#~ msgstr "no se pudo limpiar search_path: %s" diff --git a/src/bin/pg_basebackup/po/fr.po b/src/bin/pg_basebackup/po/fr.po index 14e8d1e8e17f5..e5322c0b6af7c 100644 --- a/src/bin/pg_basebackup/po/fr.po +++ b/src/bin/pg_basebackup/po/fr.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-07-09 13:20+0000\n" -"PO-Revision-Date: 2025-07-09 17:06+0200\n" +"POT-Creation-Date: 2025-11-08 09:19+0000\n" +"PO-Revision-Date: 2025-11-08 11:46+0100\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -19,7 +19,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 @@ -1192,9 +1192,9 @@ msgstr "option wal-method « %s » invalide, doit être soit « fetch » soit « #: 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:2260 +#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 +#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 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 @@ -1205,7 +1205,7 @@ msgstr "option wal-method « %s » invalide, doit être soit « fetch » soit « msgid "Try \"%s --help\" for more information." msgstr "Essayez « %s --help » pour plus d'informations." -#: pg_basebackup.c:2585 pg_createsubscriber.c:2226 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1323,7 +1323,7 @@ msgstr "Supprimez cette publication avant de tenter de nouveau." msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "le slot de réplication « %s » dans la base « %s » sur le primaire pourrait être laissé derrière" -#: 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 "Supprimez rapidement ce slot de réplication pour éviter la rétention des fichiers WAL." @@ -1521,7 +1521,7 @@ msgstr "recherche l'identifieur système sur l'abonné" msgid "control file appears to be corrupt" msgstr "le fichier de contrôle semble corrompu" -#: 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 "l'identifieur système est % sur l'abonné" @@ -1531,496 +1531,546 @@ msgstr "l'identifieur système est % sur l'abonné" msgid "modifying system identifier of subscriber" msgstr "modification de l'identifieur système sur l'abonné" -#: pg_createsubscriber.c:688 +#: pg_createsubscriber.c:683 +#, c-format +msgid "dry-run: would set system identifier to % on subscriber" +msgstr "exécution simulée : aurait initialisé l'identifieur système à % sur l'abonné" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "exécution simulée : aurait exécuté pg_resetwal sur l'abonné" + +#: pg_createsubscriber.c:695 #, c-format msgid "running pg_resetwal on the subscriber" msgstr "exécution de pg_resetwal sur l'abonné" -#: pg_createsubscriber.c:700 +#: pg_createsubscriber.c:707 #, c-format -msgid "subscriber successfully changed the system identifier" -msgstr "l'abonné a modifié avec succès l'identifieur système" +msgid "successfully reset WAL on the subscriber" +msgstr "a réinitialisé les WAL sur l'abonné avec succès" -#: pg_createsubscriber.c:702 +#: pg_createsubscriber.c:709 #, c-format -msgid "could not change system identifier of subscriber: %s" -msgstr "n'a pas pu modifier l'identifiant du système abonné : %s" +msgid "could not reset WAL on subscriber: %s" +msgstr "n'a pas pu réinitialiser les WAL sur l'abonné : %s" -#: pg_createsubscriber.c:726 +#: pg_createsubscriber.c:733 #, c-format msgid "could not obtain database OID: %s" msgstr "n'a pas pu obtenir l'OID de la base : %s" -#: pg_createsubscriber.c:733 +#: pg_createsubscriber.c:740 #, c-format msgid "could not obtain database OID: got %d rows, expected %d row" msgstr "n'a pas pu obtenir l'OID de la base de données : %d lignes attendues, %d ligne reçue" -#: pg_createsubscriber.c:805 +#: pg_createsubscriber.c:812 #, c-format msgid "create replication slot \"%s\" on publisher" msgstr "création du slot de réplication « %s » sur le publieur" -#: pg_createsubscriber.c:825 +#: pg_createsubscriber.c:832 #, c-format msgid "could not write an additional WAL record: %s" msgstr "n'a pas pu écrire un enregistrement WAL supplémentaire : %s" -#: pg_createsubscriber.c:851 +#: pg_createsubscriber.c:858 #, c-format msgid "could not obtain recovery progress: %s" msgstr "n'a pas pu obtenir la progression de la restauration : %s" -#: pg_createsubscriber.c:884 +#: pg_createsubscriber.c:891 #, c-format msgid "checking settings on publisher" msgstr "vérification de la configuration du publieur" -#: pg_createsubscriber.c:894 +#: pg_createsubscriber.c:901 #, c-format msgid "primary server cannot be in recovery" msgstr "le serveur primaire ne peut pas être en restauration" -#: pg_createsubscriber.c:920 +#: pg_createsubscriber.c:927 #, c-format msgid "could not obtain publisher settings: %s" msgstr "n'a pas pu obtenir la configuration du publieur : %s" -#: pg_createsubscriber.c:949 +#: pg_createsubscriber.c:956 #, c-format msgid "publisher requires \"wal_level\" >= \"logical\"" msgstr "le publieur requiert « wal_level » >= « logical »" -#: pg_createsubscriber.c:955 +#: pg_createsubscriber.c:962 #, c-format msgid "publisher requires %d replication slots, but only %d remain" msgstr "le publieur requiert %d slots de réplication, mais seuls %d restent" -#: 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 "Augmentez le paramètre de configuration « %s » à au moins %d." -#: pg_createsubscriber.c:964 +#: pg_createsubscriber.c:971 #, c-format msgid "publisher requires %d WAL sender processes, but only %d remain" msgstr "le publieur requiert %d processus wal sender, mais seuls %d restent" -#: pg_createsubscriber.c:973 +#: pg_createsubscriber.c:980 #, c-format msgid "two_phase option will not be enabled for replication slots" msgstr "l'option two_phase ne sera pas activée pour les slots de réplication" -#: 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 "Les souscriptions seront créées avec l'option two_phase désactivé. Les transactions préparées seront répliquées au 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 "Vous pouvez utiliser l'option en ligne de commande --enable-two-phase pour activer two_phase." -#: pg_createsubscriber.c:986 +#: pg_createsubscriber.c:993 #, c-format msgid "required WAL could be removed from the publisher" msgstr "les fichiers WAL requis ont put être supprimés du publieur" -#: 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 "Configure le paramètre de configuration « %s » à -1 pour s'assurer que les fichiers WAL requis ne soient pas prématurément supprimés." -#: pg_createsubscriber.c:1019 +#: pg_createsubscriber.c:1026 #, c-format msgid "checking settings on subscriber" msgstr "vérification de la configuration sur l'abonné" -#: pg_createsubscriber.c:1026 +#: pg_createsubscriber.c:1033 #, c-format msgid "target server must be a standby" msgstr "le serveur cible doit être un secondaire" -#: pg_createsubscriber.c:1050 +#: pg_createsubscriber.c:1057 #, c-format msgid "could not obtain subscriber settings: %s" msgstr "n'a pas pu obtenir la configuration de l'abonné : %s" -#: pg_createsubscriber.c:1074 +#: pg_createsubscriber.c:1081 #, c-format msgid "subscriber requires %d active replication origins, but only %d remain" msgstr "l'abonné requiert %d origines de réplication actives, mais seules %d restent" -#: pg_createsubscriber.c:1083 +#: pg_createsubscriber.c:1090 #, c-format msgid "subscriber requires %d logical replication workers, but only %d remain" msgstr "l'abonné requiert %d processus worker de réplication logique, mais seuls %d restent" -#: pg_createsubscriber.c:1092 +#: pg_createsubscriber.c:1099 #, c-format msgid "subscriber requires %d worker processes, but only %d remain" msgstr "l'abonné requiert %d processus worker, mais seuls %d restent" -#: pg_createsubscriber.c:1127 +#: pg_createsubscriber.c:1135 +#, c-format +msgid "dry-run: would drop subscription \"%s\" in database \"%s\"" +msgstr "exécution simulée : aurait supprimé la souscription « %s » dans la base de données « %s »" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "suppression de la souscription « %s » dans la base de données « %s »" -#: pg_createsubscriber.c:1136 +#: pg_createsubscriber.c:1146 #, c-format msgid "could not drop subscription \"%s\": %s" msgstr "n'a pas pu supprimer la souscription « %s » : %s" -#: pg_createsubscriber.c:1171 +#: pg_createsubscriber.c:1181 #, c-format msgid "could not obtain pre-existing subscriptions: %s" msgstr "n'a pas pu obtenir les souscriptions pré-existantes : %s" -#: pg_createsubscriber.c:1303 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "n'a pas pu supprimer le slot de réplication « %s » sur le primaire" -#: pg_createsubscriber.c:1337 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "n'a pas pu obtenir l'information de slot de réplication failover : %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 "Supprimez rapidement les slots de réplication failover sur l'abonnée pour éviter la rétention des fichiers WAL." -#: pg_createsubscriber.c:1347 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "n'a pas pu supprimer le slot de réplication failover" -#: pg_createsubscriber.c:1369 +#: pg_createsubscriber.c:1389 +#, c-format +msgid "dry-run: would create the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "exécution simulée : aurait créé le slot de réplication « %s » dans la base « %s » sur le publieur" + +#: pg_createsubscriber.c:1392 #, c-format -msgid "creating the replication slot \"%s\" in database \"%s\"" -msgstr "création du slot de réplication « %s » dans la base « %s »" +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "création du slot de réplication « %s » dans la base « %s » sur le publieur" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "n'a pas pu créer le slot de réplication « %s » dans la base « %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 "exécution simulée : aurait supprimer le slot de réplication « %s » dans la base « %s »" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "suppression du slot de réplication « %s » dans la base « %s »" -#: pg_createsubscriber.c:1434 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "n'a pas pu supprimer le slot de réplication « %s » dans la base « %s » : %s" -#: pg_createsubscriber.c:1455 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "échec de pg_ctl avec un code de retour %d" -#: pg_createsubscriber.c:1460 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "pg_ctl a été terminé par l'exception 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 "" "Voir le fichier d'en-tête C « ntstatus.h » pour une description de la valeur\n" "hexadécimale." -#: pg_createsubscriber.c:1464 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "pg_ctl a été terminé par le signal %d : %s" -#: pg_createsubscriber.c:1470 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "pg_ctl a quitté avec un statut %d non reconnu" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "La commande échouée était : %s" -#: pg_createsubscriber.c:1523 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "le serveur a été démarré" -#: pg_createsubscriber.c:1538 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "le serveur a été arrêté" -#: pg_createsubscriber.c:1557 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "en attente de l'atteinte de l'état de cohérence sur le serveur cible" -#: pg_createsubscriber.c:1580 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "délai de restauration atteint" -#: pg_createsubscriber.c:1593 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "le serveur n'a pas terminé la restauration" -#: pg_createsubscriber.c:1595 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "le serveur cible a atteint l'état de cohérence" -#: 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 "Si pg_createsubscriber échoue après cela, vous devez recréer le réplicat physique avant de continuer." -#: 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 "n'a pas pu obtenir une information sur la publication : %s" -#: pg_createsubscriber.c:1637 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "la publication « %s » existe déjà" -#: pg_createsubscriber.c:1638 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Pensez à renommer cette publication avant de continuer." -#: pg_createsubscriber.c:1645 +#: pg_createsubscriber.c:1668 +#, c-format +msgid "dry-run: would create publication \"%s\" in database \"%s\"" +msgstr "exécution simulée : aurait créer la publication « %s » dans la base de données « %s »" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "création de la publication « %s » dans la base de données « %s »" -#: pg_createsubscriber.c:1658 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "n'a pas pu créer la publication « %s » dans la base de données « %s » : %s" -#: pg_createsubscriber.c:1688 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "exécution simulée : aurait supprimer la publication « %s » dans la base de données « %s »" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "suppression de la publication « %s » dans la base de données « %s »" -#: pg_createsubscriber.c:1702 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "n'a pas pu supprimer la publication « %s » dans la base de données « %s » : %s" -#: pg_createsubscriber.c:1739 +#: pg_createsubscriber.c:1769 #, c-format msgid "dropping all existing publications in database \"%s\"" msgstr "suppression de toutes les publications existantes dans la base de données « %s »" -#: pg_createsubscriber.c:1797 +#: pg_createsubscriber.c:1828 +#, c-format +msgid "dry-run: would create subscription \"%s\" in database \"%s\"" +msgstr "exécution simulée : aurait créer la souscription « %s » dans la base de données « %s »" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "création de la souscription « %s » dans la base de données « %s »" -#: pg_createsubscriber.c:1819 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "n'a pas pu créer la souscription « %s » dans la base « %s » : %s" -#: pg_createsubscriber.c:1864 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "n'a pas pu obtenir l'OID de la souscription : %s" -#: pg_createsubscriber.c:1871 +#: pg_createsubscriber.c:1905 #, c-format msgid "could not obtain subscription OID: got %d rows, expected %d row" msgstr "n'a pas pu obtenir l'OID de la souscription : attendait %d lignes, a reçu %d ligne" -#: 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 "exécution simulée : aurait mis en place la progression de la réplication (nom du noeud « %s » , LSN %s) dans la base de données « %s »" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "configuration de la progression de la réplication (nom du noeud « %s » , LSN %s) dans la base de données « %s »" -#: pg_createsubscriber.c:1910 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "n'a pas pu configurer la progression de la réplication pour la souscription « %s » : %s" -#: pg_createsubscriber.c:1941 +#: pg_createsubscriber.c:1980 +#, c-format +msgid "dry-run: would enable subscription \"%s\" in database \"%s\"" +msgstr "exécution simulée : aurait activer la souscription « %s » dans la base de données « %s »" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "activation de la souscription « %s » dans la base de données « %s »" -#: pg_createsubscriber.c:1953 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "n'a pas pu activer la souscription « %s » : %s" -#: pg_createsubscriber.c:1999 +#: pg_createsubscriber.c:2041 #, c-format msgid "could not obtain a list of databases: %s" msgstr "n'a pas pu obtenir la liste des bases : %s" -#: pg_createsubscriber.c:2103 +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "ne peut pas être exécuté par « root »" -#: pg_createsubscriber.c:2104 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Vous devez exécuter %s en tant que super-utilisateur PostgreSQL." -#: pg_createsubscriber.c:2127 +#: pg_createsubscriber.c:2169 #, c-format msgid "database \"%s\" specified more than once for -d/--database" msgstr "la base de données « %s » est spécifiée plus d'une fois pour -d/--database" -#: pg_createsubscriber.c:2168 +#: pg_createsubscriber.c:2210 #, c-format msgid "publication \"%s\" specified more than once for --publication" msgstr "la publication « %s » est spécifiée plus d'une fois pour --publication" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2219 #, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "le slot de réplication « %s » est spécifié plus d'une fois pour --replication-slot" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2228 #, c-format msgid "subscription \"%s\" specified more than once for --subscription" msgstr "la souscription « %s » est spécifiée plus d'une fois pour --subscription" -#: pg_createsubscriber.c:2192 +#: pg_createsubscriber.c:2234 #, c-format msgid "object type \"%s\" specified more than once for --clean" msgstr "le type d'objet « %s » est spécifié plus d'une fois pour --clean" -#: pg_createsubscriber.c:2217 +#: pg_createsubscriber.c:2259 #, c-format msgid "options %s and -a/--all cannot be used together" msgstr "les options « %s » et « -a/--all » ne peuvent pas être utilisées ensemble" -#: pg_createsubscriber.c:2235 +#: pg_createsubscriber.c:2277 #, c-format msgid "no subscriber data directory specified" msgstr "aucune chaîne de connexion de l'abonné indiquée" -#: pg_createsubscriber.c:2246 +#: pg_createsubscriber.c:2288 #, c-format msgid "could not determine current directory" msgstr "n'a pas pu déterminer le répertoire courant" -#: pg_createsubscriber.c:2263 +#: pg_createsubscriber.c:2305 #, c-format msgid "no publisher connection string specified" msgstr "aucune chaîne de connexion du publieur indiquée" -#: pg_createsubscriber.c:2267 +#: pg_createsubscriber.c:2309 #, c-format msgid "validating publisher connection string" msgstr "validation de la chaîne de connexion du publieur" -#: pg_createsubscriber.c:2273 +#: pg_createsubscriber.c:2315 #, c-format msgid "validating subscriber connection string" msgstr "validation de la chaîne de connexion de l'abonné" -#: pg_createsubscriber.c:2290 +#: pg_createsubscriber.c:2332 #, c-format msgid "no database was specified" msgstr "aucune base de données n'a été indiquée" -#: pg_createsubscriber.c:2301 +#: pg_createsubscriber.c:2343 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "le nom de la base de données « %s » a été extrait de la chaîne de connexion du publieur" -#: pg_createsubscriber.c:2306 +#: pg_createsubscriber.c:2348 #, c-format msgid "no database name specified" msgstr "aucun nom de base de données indiqué" -#: pg_createsubscriber.c:2316 +#: pg_createsubscriber.c:2358 #, c-format msgid "wrong number of publication names specified" msgstr "mauvais nombre de noms de publication indiqués" -#: pg_createsubscriber.c:2317 +#: pg_createsubscriber.c:2359 #, c-format msgid "The number of specified publication names (%d) must match the number of specified database names (%d)." msgstr "Le nombre de noms de publication indiqués (%d) doit correspondre au nombre de noms de bases de données indiqués (%d)" -#: pg_createsubscriber.c:2323 +#: pg_createsubscriber.c:2365 #, c-format msgid "wrong number of subscription names specified" msgstr "mauvais nombre de noms de souscription indiqués" -#: pg_createsubscriber.c:2324 +#: pg_createsubscriber.c:2366 #, c-format msgid "The number of specified subscription names (%d) must match the number of specified database names (%d)." msgstr "Le nombre de noms de souscriptions indiqués (%d) doit correspondre au nombre de noms de bases de données indiqués (%d)" -#: pg_createsubscriber.c:2330 +#: pg_createsubscriber.c:2372 #, c-format msgid "wrong number of replication slot names specified" msgstr "mauvais nombre de noms de slots de réplication indiqués" -#: pg_createsubscriber.c:2331 +#: pg_createsubscriber.c:2373 #, c-format msgid "The number of specified replication slot names (%d) must match the number of specified database names (%d)." msgstr "Le nombre de noms de slots de réplication indiqués (%d) doit correspondre au nombre de noms de bases de données indiqués (%d)" -#: pg_createsubscriber.c:2343 +#: pg_createsubscriber.c:2385 #, c-format msgid "invalid object type \"%s\" specified for --clean" msgstr "type d'objet « %s » invalide indiqué pour --clean" -#: pg_createsubscriber.c:2344 +#: pg_createsubscriber.c:2386 #, c-format msgid "The valid value is: \"%s\"" msgstr "La valeur valide est « %s »" -#: pg_createsubscriber.c:2375 +#: pg_createsubscriber.c:2417 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "le répertoire de données de l'abonné n'est pas une copie de l'instance source" -#: pg_createsubscriber.c:2388 +#: pg_createsubscriber.c:2430 #, c-format msgid "standby server is running" msgstr "le serveur secondaire est en cours d'exécution" -#: pg_createsubscriber.c:2389 +#: pg_createsubscriber.c:2431 #, c-format msgid "Stop the standby server and try again." msgstr "Arrêtez le secondaire et tentez de nouveau." -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2440 #, c-format msgid "starting the standby server with command-line options" msgstr "lancement du serveur secondaire avec les options en ligne de commande" -#: pg_createsubscriber.c:2414 pg_createsubscriber.c:2449 +#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 #, c-format msgid "stopping the subscriber" msgstr "arrêt de l'abonné" -#: pg_createsubscriber.c:2428 +#: pg_createsubscriber.c:2470 #, c-format msgid "starting the subscriber" msgstr "lancement de l'abonné" -#: pg_createsubscriber.c:2457 +#: pg_createsubscriber.c:2499 #, c-format msgid "Done!" msgstr "Terminé !" @@ -2715,6 +2765,14 @@ msgstr "suppression non supportée avec la compression" msgid "could not close compression stream" msgstr "n'a pas pu fermer le flux de compression" +#, c-format +#~ msgid "could not change system identifier of subscriber: %s" +#~ msgstr "n'a pas pu modifier l'identifiant du système abonné : %s" + #, c-format #~ msgid "could not clear search_path: %s" #~ msgstr "n'a pas pu effacer search_path : %s" + +#, c-format +#~ msgid "subscriber successfully changed the system identifier" +#~ msgstr "l'abonné a modifié avec succès l'identifieur système" diff --git a/src/bin/pg_basebackup/po/ja.po b/src/bin/pg_basebackup/po/ja.po index 3bb3c8bcbd639..04531edac5e7e 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-06-30 09:50+0900\n" -"PO-Revision-Date: 2025-06-30 13:10+0900\n" +"POT-Creation-Date: 2025-11-04 11:47+0900\n" +"PO-Revision-Date: 2025-11-05 11:49+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: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:2260 +#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 +#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 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:2226 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1313,7 +1313,7 @@ msgstr "再試行の前にこのパブリケーションを削除してくださ msgid "replication slot \"%s\" created in database \"%s\" on primary was left behind" msgstr "プライマリ上のデータベース\"%2$s\"で作成されたレプリケーションスロット\"%1$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ファイルの増加を避けるためにこのレプリケーションスロットを直ちに削除してください。" @@ -1514,7 +1514,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 "サブスクライバのシステム識別子は%です" @@ -1524,494 +1524,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 "subscriber 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 senderプロセスを必要としますが、%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 "コマンドラインオプション --enable-two-phase で 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 "ドライラン: データベース\"%2$s\"のサブスクリプション\"%1$s\"が削除されます" + +#: pg_createsubscriber.c:1139 #, c-format msgid "dropping subscription \"%s\" in database \"%s\"" msgstr "データベース\"%2$s\"のサブスクリプション\"%1$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 "データベース\"%2$s\"でレプリケーションスロット\"%1$s:を作成します" +msgid "dry-run: would create the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "ドライラン: パブリッシャ上でデータベース\"%2$s\"にレプリケーションスロット\"%1$s\"が作成されます" -#: pg_createsubscriber.c:1388 +#: pg_createsubscriber.c:1392 +#, c-format +msgid "creating the replication slot \"%s\" in database \"%s\" on publisher" +msgstr "パブリッシャ上でデータベース\"%2$s\"にレプリケーションスロット\"%1$s\"を作成します" + +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "データベース\"%2$s\"でレプリケーションスロット\"%1$s\"を作成できませんでした: %3$s" -#: pg_createsubscriber.c:1418 +#: pg_createsubscriber.c:1442 +#, c-format +msgid "dry-run: would drop the replication slot \"%s\" in database \"%s\"" +msgstr "ドライラン: データベース\"%2$s\"のレプリケーションスロット\"%1$s\"が削除されます" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" -msgstr "データベース\"%2$s\"のレプリケーションスロット\"%1$s:を削除します" +msgstr "データベース\"%2$s\"のレプリケーションスロット\"%1$s\"を削除します" -#: pg_createsubscriber.c:1434 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "データベース\"%2$s\"のレプリケーションスロット\"%1$s\"を削除できませんでした: %3$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 "16進値の説明については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 "ドライラン: データベース\"%2$s\"にパブリケーション\"%1$s\"が作成されます" + +#: pg_createsubscriber.c:1671 #, c-format msgid "creating publication \"%s\" in database \"%s\"" msgstr "データベース\"%2$s\"でパブリケーション\"%1$s\"を作成します" -#: pg_createsubscriber.c:1658 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "データベース\"%2$s\"でパブリケーション\"%1$s\"を作成できませんでした: %3$s" -#: pg_createsubscriber.c:1688 +#: pg_createsubscriber.c:1715 +#, c-format +msgid "dry-run: would drop publication \"%s\" in database \"%s\"" +msgstr "ドライラン: データベース\"%2$s\"のパブリケーション\"%1$s\"が削除されます" + +#: pg_createsubscriber.c:1718 #, c-format msgid "dropping publication \"%s\" in database \"%s\"" msgstr "データベース\"%2$s\"のパブリケーション\"%1$s\"を削除します" -#: pg_createsubscriber.c:1702 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "データベース\"%2$s\"のパブリケーション\"%1$s\"が削除できませんでした: %3$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 "ドライラン: データベース\"%2$s\"にサブスクリプション\"%1$s\"が作成されます" + +#: pg_createsubscriber.c:1831 #, c-format msgid "creating subscription \"%s\" in database \"%s\"" msgstr "データベース\"%2$s\"でサブスクリプション\"%1$s\"を作成します" -#: pg_createsubscriber.c:1819 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "データベース\"%2$s\"でサブスクリプション\"%1$s\"を作成できませんでした: %3$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 "ドライラン: データベース\"%3$s\"のレプリケーション進捗が設定されます(ノード名\"%1$s\", LSN %2$s)" + +#: pg_createsubscriber.c:1933 #, c-format msgid "setting the replication progress (node name \"%s\", LSN %s) in database \"%s\"" msgstr "データベース\"%3$s\"でのレプリケーションの進捗を設定しています(ノード名\"%1$s\", LSN %2$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 "ドライラン: データベース\"%2$s\"のサブスクリプション\"%1$s\"が有効にされます" + +#: pg_createsubscriber.c:1983 #, c-format msgid "enabling subscription \"%s\" in database \"%s\"" msgstr "データベース\"%2$s\"のサブスクリプション\"%1$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 "PostgreSQLのスーパーユーザーで%sを実行しなければなりません" -#: pg_createsubscriber.c:2127 +#: pg_createsubscriber.c:2169 #, c-format msgid "database \"%s\" specified more than once for -d/--database" msgstr "-d/--database に対してデータベース\"%s\"が複数回指定されました" -#: pg_createsubscriber.c:2168 +#: pg_createsubscriber.c:2210 #, c-format msgid "publication \"%s\" specified more than once for --publication" msgstr "--publication に対してパブリケーション\"%s\"が複数回指定されました" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2219 #, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "--replication-slot に対してレプリケーションスロット\"%s\"が複数回指定されました" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2228 #, c-format msgid "subscription \"%s\" specified more than once for --subscription" msgstr "--subscription に対してブスクリプション\"%s\"が複数回指定されました" -#: 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 は同時には使用できません" -#: pg_createsubscriber.c:2235 +#: pg_createsubscriber.c:2277 #, c-format msgid "no subscriber data directory specified" msgstr "サブスクライバのデータディレクトリが指定されていません" -#: pg_createsubscriber.c:2246 +#: pg_createsubscriber.c:2288 #, c-format msgid "could not determine current directory" msgstr "カレントディレクトリを特定できませんでした" -#: pg_createsubscriber.c:2263 +#: pg_createsubscriber.c:2305 #, c-format msgid "no publisher connection string specified" msgstr "パブリッシャの接続文字列が指定されていません" -#: pg_createsubscriber.c:2267 +#: pg_createsubscriber.c:2309 #, c-format msgid "validating publisher connection string" msgstr "パブリッシャの接続文字列の検証中" -#: pg_createsubscriber.c:2273 +#: pg_createsubscriber.c:2315 #, c-format msgid "validating subscriber connection string" msgstr "サブスクライバの接続文字列の検証中" -#: pg_createsubscriber.c:2290 +#: pg_createsubscriber.c:2332 #, c-format msgid "no database was specified" msgstr "データベースが指定されていません" -#: pg_createsubscriber.c:2301 +#: pg_createsubscriber.c:2343 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "データベース名\"%s\"がパブリッシャの接続文字列から抽出されました" -#: pg_createsubscriber.c:2306 +#: pg_createsubscriber.c:2348 #, c-format msgid "no database name specified" msgstr "データベース名が指定されていません" -#: pg_createsubscriber.c:2316 +#: pg_createsubscriber.c:2358 #, c-format msgid "wrong number of publication names specified" msgstr "指定されたパブリケーション名の数が間違っています" -#: pg_createsubscriber.c:2317 +#: pg_createsubscriber.c:2359 #, 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:2365 #, c-format msgid "wrong number of subscription names specified" msgstr "指定されたサブスクリプション名の数が間違っています" -#: pg_createsubscriber.c:2324 +#: pg_createsubscriber.c:2366 #, 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:2372 #, c-format msgid "wrong number of replication slot names specified" msgstr "指定されたレプリケーションスロット名の数が間違っています" -#: pg_createsubscriber.c:2331 +#: pg_createsubscriber.c:2373 #, 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:2385 #, c-format msgid "invalid object type \"%s\" specified for --clean" msgstr "--clean に対して指定された不正なオブジェクト種別\"%s\"" -#: pg_createsubscriber.c:2344 +#: pg_createsubscriber.c:2386 #, c-format msgid "The valid value is: \"%s\"" msgstr "指定可能な値は: \"%s\"" -#: pg_createsubscriber.c:2375 +#: pg_createsubscriber.c:2417 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "サブスクライバのデータディレクトリは元データベースクラスタのコピーではありません" -#: pg_createsubscriber.c:2388 +#: pg_createsubscriber.c:2430 #, c-format msgid "standby server is running" msgstr "スタンバイサーバーが稼働中です" -#: pg_createsubscriber.c:2389 +#: pg_createsubscriber.c:2431 #, c-format msgid "Stop the standby server and try again." msgstr "このスタンバイサーバーを停止してから再試行してください。" -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2440 #, c-format msgid "starting the standby server with command-line options" msgstr "コマンドラインオプションを指定してスタンバイサーバーを起動しています" -#: pg_createsubscriber.c:2414 pg_createsubscriber.c:2449 +#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 #, c-format msgid "stopping the subscriber" msgstr "サブスクライバを起動しています" -#: pg_createsubscriber.c:2428 +#: pg_createsubscriber.c:2470 #, c-format msgid "starting the subscriber" msgstr "サブスクライバを起動しています" -#: pg_createsubscriber.c:2457 +#: pg_createsubscriber.c:2499 #, c-format msgid "Done!" msgstr "完了!" @@ -2693,3 +2743,6 @@ msgstr "圧縮時のunlinkはサポートされていません" #: walmethods.c:1293 msgid "could not close compression stream" msgstr "圧縮ストリームをクローズできませんでした" + +#~ msgid "could not change system identifier of subscriber: %s" +#~ msgstr "サブスクライバーのシステム識別子を変更できませんでした: %s" diff --git a/src/bin/pg_basebackup/po/ru.po b/src/bin/pg_basebackup/po/ru.po index 0eafdec2b84ac..97d1be92f1f88 100644 --- a/src/bin/pg_basebackup/po/ru.po +++ b/src/bin/pg_basebackup/po/ru.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_basebackup (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:09+0300\n" +"POT-Creation-Date: 2025-11-09 06:28+0200\n" +"PO-Revision-Date: 2025-11-09 08:45+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -366,7 +366,7 @@ msgstr "не удалось установить для zstd уровень сж #: ../../fe_utils/astreamer_zstd.c:109 #, c-format msgid "could not set compression worker count to %d: %s" -msgstr "не удалось установить для zstd число потоков %d: %s" +msgstr "не удалось установить число потоков сжатия %d: %s" #: ../../fe_utils/astreamer_zstd.c:120 #, c-format @@ -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: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:2260 +#: pg_createsubscriber.c:2270 pg_createsubscriber.c:2278 +#: pg_createsubscriber.c:2306 pg_createsubscriber.c:2349 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:2235 pg_receivewal.c:758 +#: pg_basebackup.c:2585 pg_createsubscriber.c:2268 pg_receivewal.c:758 #: pg_recvlogical.c:871 #, c-format msgid "too many command-line arguments (first is \"%s\")" @@ -1389,7 +1389,7 @@ msgid "" msgstr "" "на главном сервере остался слот репликации \"%s\", созданный в базе \"%s\"" -#: 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 "" @@ -1447,8 +1447,8 @@ msgstr "" msgid "" " -n, --dry-run dry run, just show what would be done\n" msgstr "" -" -n, --dry-run показать, какие действия будут выполнены,\n" -" но не выполнять их\n" +" -n, --dry-run холостой запуск — только показать, какие\n" +" действия будут выполнены\n" #: pg_createsubscriber.c:254 #, c-format @@ -1620,7 +1620,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 "идентификатор системы на подписчике: %" @@ -1630,92 +1630,104 @@ msgstr "идентификатор системы на подписчике: %

on subscriber" +msgstr "" +"холостой запуск: на подписчике будет установлен идентификатор системы " +"%" + +#: pg_createsubscriber.c:693 +#, c-format +msgid "dry-run: would run pg_resetwal on the subscriber" +msgstr "холостой запуск: будет выполнен сброс WAL (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 "" "на стороне публикации требуется процессов-передатчиков WAL: %d, но доступно " "всего %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 " @@ -1724,7 +1736,7 @@ 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." @@ -1732,12 +1744,12 @@ 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 " @@ -1746,65 +1758,70 @@ msgstr "" "Чтобы необходимые файлы WAL не были удалены преждевременно, присвойте " "параметру конфигурации \"%s\" -1." -#: 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:1312 +#: pg_createsubscriber.c:1322 #, c-format msgid "could not drop replication slot \"%s\" on primary" msgstr "удалить слот репликации \"%s\" на главном сервере не получилось" -#: pg_createsubscriber.c:1346 +#: pg_createsubscriber.c:1356 #, c-format msgid "could not obtain failover replication slot information: %s" msgstr "получить информацию о переносимом слоте репликации не удалось: %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 " @@ -1813,42 +1830,56 @@ msgstr "" "Удалите переносимые слоты репликации на подписчике незамедлительно во " "избежание накопления файлов WAL." -#: pg_createsubscriber.c:1356 +#: pg_createsubscriber.c:1366 #, c-format msgid "could not drop failover replication slot" msgstr "удалить переносимый слот репликации не получилось" -#: 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 "" +"холостой запуск: будет создан слот репликации \"%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:1397 +#: pg_createsubscriber.c:1411 #, c-format msgid "could not create replication slot \"%s\" in database \"%s\": %s" msgstr "создать слот репликации \"%s\" в базе \"%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 "холостой запуск: будет удалён слот репликации \"%s\" в базе \"%s\"" + +#: pg_createsubscriber.c:1445 #, c-format msgid "dropping the replication slot \"%s\" in database \"%s\"" msgstr "удаление слота репликации \"%s\" в базе \"%s\"" -#: pg_createsubscriber.c:1443 +#: pg_createsubscriber.c:1461 #, c-format msgid "could not drop replication slot \"%s\" in database \"%s\": %s" msgstr "удалить слот репликации \"%s\" в базе \"%s\" не получилось: %s" -#: pg_createsubscriber.c:1464 +#: pg_createsubscriber.c:1482 #, c-format msgid "pg_ctl failed with exit code %d" msgstr "команда pg_ctl завершилась с кодом ошибки %d" -#: pg_createsubscriber.c:1469 +#: pg_createsubscriber.c:1487 #, c-format msgid "pg_ctl was terminated by exception 0x%X" msgstr "команда pg_ctl была прервана исключением 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." @@ -1856,52 +1887,52 @@ msgstr "" "Описание этого шестнадцатеричного значения ищите во включаемом C-файле " "\"ntstatus.h\"" -#: pg_createsubscriber.c:1473 +#: pg_createsubscriber.c:1491 #, c-format msgid "pg_ctl was terminated by signal %d: %s" msgstr "команда pg_ctl была завершена сигналом %d: %s" -#: pg_createsubscriber.c:1479 +#: pg_createsubscriber.c:1497 #, c-format msgid "pg_ctl exited with unrecognized status %d" msgstr "команда pg_ctl завершилась с нераспознанным кодом состояния %d" -#: pg_createsubscriber.c:1482 +#: pg_createsubscriber.c:1500 #, c-format msgid "The failed command was: %s" msgstr "Ошибку вызвала команда: %s" -#: pg_createsubscriber.c:1532 +#: pg_createsubscriber.c:1550 #, c-format msgid "server was started" msgstr "сервер был запущен" -#: pg_createsubscriber.c:1547 +#: pg_createsubscriber.c:1565 #, c-format msgid "server was stopped" msgstr "сервер был остановлен" -#: pg_createsubscriber.c:1566 +#: pg_createsubscriber.c:1584 #, c-format msgid "waiting for the target server to reach the consistent state" msgstr "ожидание достижения целевым сервером согласованного состояния" -#: pg_createsubscriber.c:1589 +#: pg_createsubscriber.c:1602 #, c-format msgid "recovery timed out" msgstr "тайм-аут при восстановлении" -#: pg_createsubscriber.c:1602 +#: pg_createsubscriber.c:1615 #, c-format msgid "server did not end recovery" msgstr "сервер не завершил восстановление" -#: pg_createsubscriber.c:1604 +#: pg_createsubscriber.c:1617 #, c-format msgid "target server reached the consistent state" msgstr "целевой сервер достиг согласованного состояния" -#: pg_createsubscriber.c:1605 +#: pg_createsubscriber.c:1618 #, c-format msgid "" "If pg_createsubscriber fails after this point, you must recreate the " @@ -1910,179 +1941,208 @@ msgstr "" "Если в работе pg_createsubscriber произойдёт сбой после этого момента, " "продолжение возможно только после пересоздания физической реплики." -#: 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 "получить информацию о публикации не удалось: %s" -#: pg_createsubscriber.c:1646 +#: pg_createsubscriber.c:1659 #, c-format msgid "publication \"%s\" already exists" msgstr "публикация \"%s\" уже существует" -#: pg_createsubscriber.c:1647 +#: pg_createsubscriber.c:1660 #, c-format msgid "Consider renaming this publication before continuing." msgstr "Чтобы продолжить, её можно переименовать." -#: pg_createsubscriber.c:1654 +#: 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:1667 +#: pg_createsubscriber.c:1684 #, c-format msgid "could not create publication \"%s\" in database \"%s\": %s" msgstr "создать публикацию \"%s\" в базе \"%s\" не удалось: %s" -#: pg_createsubscriber.c:1697 +#: 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:1711 +#: pg_createsubscriber.c:1732 #, c-format msgid "could not drop publication \"%s\" in database \"%s\": %s" msgstr "удалить публикацию \"%s\" в базе \"%s\" не получилось: %s" -#: pg_createsubscriber.c:1748 +#: pg_createsubscriber.c:1769 #, c-format msgid "dropping all existing publications in database \"%s\"" msgstr "удаление всех существующих публикаций в базе \"%s\"" -#: pg_createsubscriber.c:1806 +#: 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:1828 +#: pg_createsubscriber.c:1853 #, c-format msgid "could not create subscription \"%s\" in database \"%s\": %s" msgstr "создать подписку \"%s\" в базе \"%s\" не удалось: %s" -#: pg_createsubscriber.c:1873 +#: pg_createsubscriber.c:1898 #, c-format msgid "could not obtain subscription OID: %s" msgstr "получить 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 "получить OID подписки не удалось; получено строк: %d, ожидалось: %d" -#: 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 "" +"холостой запуск: будет установлено состояние репликации (имя узла \"%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:1919 +#: pg_createsubscriber.c:1948 #, c-format msgid "could not set replication progress for subscription \"%s\": %s" msgstr "не удалось передать состояние репликации для подписки \"%s\": %s" -#: pg_createsubscriber.c:1950 +#: 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:1962 +#: pg_createsubscriber.c:1995 #, c-format msgid "could not enable subscription \"%s\": %s" msgstr "включить подписку \"%s\" не удалось: %s" -#: pg_createsubscriber.c:2008 +#: pg_createsubscriber.c:2041 #, c-format msgid "could not obtain a list of databases: %s" msgstr "не удалось получить список баз данных: %s" -#: pg_createsubscriber.c:2112 +#: pg_createsubscriber.c:2145 #, c-format msgid "cannot be executed by \"root\"" msgstr "программу не должен запускать root" -#: pg_createsubscriber.c:2113 +#: pg_createsubscriber.c:2146 #, c-format msgid "You must run %s as the PostgreSQL superuser." msgstr "Запускать %s нужно от имени суперпользователя PostgreSQL." -#: pg_createsubscriber.c:2136 +#: pg_createsubscriber.c:2169 #, c-format msgid "database \"%s\" specified more than once for -d/--database" msgstr "база \"%s\" указана в -d/--database неоднократно" -#: pg_createsubscriber.c:2177 +#: pg_createsubscriber.c:2210 #, c-format msgid "publication \"%s\" specified more than once for --publication" msgstr "публикация \"%s\" указана в --publication неоднократно" -#: pg_createsubscriber.c:2186 +#: pg_createsubscriber.c:2219 #, c-format msgid "replication slot \"%s\" specified more than once for --replication-slot" msgstr "слот репликации \"%s\" указан в --replication-slot неоднократно" -#: pg_createsubscriber.c:2195 +#: pg_createsubscriber.c:2228 #, c-format msgid "subscription \"%s\" specified more than once for --subscription" msgstr "подписка \"%s\" указана в --subscription неоднократно" -#: pg_createsubscriber.c:2201 +#: pg_createsubscriber.c:2234 #, c-format msgid "object type \"%s\" specified more than once for --clean" msgstr "тип объекта \"%s\" указан в --clean неоднократно" -#: pg_createsubscriber.c:2226 +#: pg_createsubscriber.c:2259 #, c-format msgid "options %s and -a/--all cannot be used together" msgstr "параметры %s и -a/--all исключают друг друга" -#: pg_createsubscriber.c:2244 +#: pg_createsubscriber.c:2277 #, c-format msgid "no subscriber data directory specified" msgstr "каталог данных подписчика не указан" -#: pg_createsubscriber.c:2255 +#: pg_createsubscriber.c:2288 #, c-format msgid "could not determine current directory" msgstr "не удалось определить текущий каталог" -#: pg_createsubscriber.c:2272 +#: pg_createsubscriber.c:2305 #, c-format msgid "no publisher connection string specified" msgstr "строка подключения к серверу публикации не указана" -#: pg_createsubscriber.c:2276 +#: pg_createsubscriber.c:2309 #, c-format msgid "validating publisher connection string" msgstr "проверяется строка подключения к серверу публикации" -#: pg_createsubscriber.c:2282 +#: pg_createsubscriber.c:2315 #, c-format msgid "validating subscriber connection string" msgstr "проверяется строка подключения к подписчику" -#: pg_createsubscriber.c:2299 +#: pg_createsubscriber.c:2332 #, c-format msgid "no database was specified" msgstr "база данных не указана" -#: pg_createsubscriber.c:2310 +#: pg_createsubscriber.c:2343 #, c-format msgid "database name \"%s\" was extracted from the publisher connection string" msgstr "имя базы \"%s\" извлечено из строки подключения к серверу публикации" -#: pg_createsubscriber.c:2315 +#: pg_createsubscriber.c:2348 #, c-format msgid "no database name specified" msgstr "имя базы данных не указано" -#: pg_createsubscriber.c:2325 +#: pg_createsubscriber.c:2358 #, c-format msgid "wrong number of publication names specified" msgstr "указано неверное количество имён публикаций" -#: pg_createsubscriber.c:2326 +#: pg_createsubscriber.c:2359 #, c-format msgid "" "The number of specified publication names (%d) must match the number of " @@ -2091,12 +2151,12 @@ msgstr "" "Количество указанных имён публикаций (%d) должно совпадать с количеством " "указанных имён баз (%d)." -#: pg_createsubscriber.c:2332 +#: pg_createsubscriber.c:2365 #, c-format msgid "wrong number of subscription names specified" msgstr "указано неверное количество имён подписок" -#: pg_createsubscriber.c:2333 +#: pg_createsubscriber.c:2366 #, c-format msgid "" "The number of specified subscription names (%d) must match the number of " @@ -2105,12 +2165,12 @@ msgstr "" "Количество указанных имён подписок (%d) должно совпадать с количеством " "указанных имён баз (%d)." -#: pg_createsubscriber.c:2339 +#: pg_createsubscriber.c:2372 #, c-format msgid "wrong number of replication slot names specified" msgstr "указано неверное количество имён слотов репликации" -#: pg_createsubscriber.c:2340 +#: pg_createsubscriber.c:2373 #, c-format msgid "" "The number of specified replication slot names (%d) must match the number of " @@ -2119,48 +2179,48 @@ msgstr "" "Количество указанных имён слотов репликации (%d) должно совпадать с " "количеством указанных имён баз (%d)." -#: pg_createsubscriber.c:2352 +#: pg_createsubscriber.c:2385 #, c-format msgid "invalid object type \"%s\" specified for --clean" msgstr "в --clean указан неправильный тип объекта \"%s\"" -#: pg_createsubscriber.c:2353 +#: pg_createsubscriber.c:2386 #, c-format msgid "The valid value is: \"%s\"" msgstr "Допустимое значение: \"%s\"" -#: pg_createsubscriber.c:2384 +#: pg_createsubscriber.c:2417 #, c-format msgid "subscriber data directory is not a copy of the source database cluster" msgstr "" "каталог данных подписчика не является копией исходного кластера баз данных" -#: pg_createsubscriber.c:2397 +#: pg_createsubscriber.c:2430 #, c-format msgid "standby server is running" msgstr "резервный сервер запущен" -#: pg_createsubscriber.c:2398 +#: pg_createsubscriber.c:2431 #, c-format msgid "Stop the standby server and try again." msgstr "Остановите резервный сервер и повторите попытку." -#: pg_createsubscriber.c:2407 +#: pg_createsubscriber.c:2440 #, c-format msgid "starting the standby server with command-line options" msgstr "резервный сервер запускается с параметрами командной строки" -#: pg_createsubscriber.c:2423 pg_createsubscriber.c:2458 +#: pg_createsubscriber.c:2456 pg_createsubscriber.c:2491 #, c-format msgid "stopping the subscriber" msgstr "подписчик останавливается" -#: pg_createsubscriber.c:2437 +#: pg_createsubscriber.c:2470 #, c-format msgid "starting the subscriber" msgstr "подписчик запускается" -#: pg_createsubscriber.c:2466 +#: pg_createsubscriber.c:2499 #, c-format msgid "Done!" msgstr "Готово!" @@ -2951,6 +3011,14 @@ msgstr "со сжатием закрытие файла с удалением н msgid "could not close compression stream" msgstr "не удалось закрыть поток сжатых данных" +#, c-format +#~ msgid "subscriber successfully changed the system identifier" +#~ msgstr "идентификатор системы на подписчике успешно изменён" + +#, c-format +#~ msgid "could not change system identifier of subscriber: %s" +#~ msgstr "изменить идентификатор системы на подписчике не удалось: %s" + #, c-format #~ msgid "could not clear search_path: %s" #~ msgstr "не удалось очистить search_path: %s" diff --git a/src/bin/pg_checksums/po/es.po b/src/bin/pg_checksums/po/es.po index ce774256a935f..210ab63982b5c 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-09-20 09:53+0000\n" +"POT-Creation-Date: 2025-11-08 00:24+0000\n" "PO-Revision-Date: 2025-09-21 11:25+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: pgsql-es-ayuda \n" @@ -264,7 +264,6 @@ msgstr "Sitio web de %s: <%s>\n" #: pg_checksums.c:144 #, c-format -#| msgid "%lld/%lld MB (%d%%) computed" msgid "%/% MB (%d%%) computed" msgstr "%/% MB (%d%%) calculado" @@ -380,19 +379,16 @@ msgstr "Operación de checksums completa\n" #: pg_checksums.c:606 #, c-format -#| msgid "Files scanned: %lld\n" msgid "Files scanned: %\n" msgstr "Archivos recorridos: %\n" #: pg_checksums.c:607 #, c-format -#| msgid "Blocks scanned: %lld\n" msgid "Blocks scanned: %\n" msgstr "Bloques recorridos: %\n" #: pg_checksums.c:610 #, c-format -#| msgid "Bad checksums: %lld\n" msgid "Bad checksums: %\n" msgstr "Checksums incorrectos: %\n" @@ -403,13 +399,11 @@ msgstr "Versión de checksums de datos: %u\n" #: pg_checksums.c:618 #, c-format -#| msgid "Files written: %lld\n" msgid "Files written: %\n" msgstr "Archivos escritos: %\n" #: pg_checksums.c:619 #, c-format -#| msgid "Blocks written: %lld\n" msgid "Blocks written: %\n" msgstr "Bloques escritos: %\n" diff --git a/src/bin/pg_combinebackup/po/es.po b/src/bin/pg_combinebackup/po/es.po index 869d16d340d1b..c74d50c871afc 100644 --- a/src/bin/pg_combinebackup/po/es.po +++ b/src/bin/pg_combinebackup/po/es.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_combinebackup (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:51+0000\n" -"PO-Revision-Date: 2025-09-21 11:27+0200\n" +"POT-Creation-Date: 2025-11-08 00:22+0000\n" +"PO-Revision-Date: 2025-11-08 19:01+0100\n" "Last-Translator: Álvaro Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -46,7 +46,7 @@ msgid "could not open file \"%s\" for reading: %m" msgstr "no se pudo abrir archivo «%s» para lectura: %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 "no se pudo leer el archivo «%s»: %m" @@ -58,7 +58,7 @@ msgstr "no se pudo leer el archivo «%s»: leídos %d de %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" @@ -87,13 +87,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 "no se pudo abrir el archivo «%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" @@ -144,7 +144,7 @@ msgstr "no se pudo sincronizar el sistema de archivos para el archivo «%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 "no se pudo hacer stat al archivo «%s»: %m" @@ -268,7 +268,6 @@ msgid "Unicode low surrogate must follow a high surrogate." msgstr "Un «low-surrogate» Unicode debe seguir a un «high-surrogate»." #: ../../common/jsonapi.c:2526 -#| msgid "out of memory while allocating a WAL reading processor" msgid "out of memory while constructing error description" msgstr "memoria agotada mientras se construía una descripción de error" @@ -474,13 +473,13 @@ msgstr "%s: no se pudo encontrar %s" msgid "%s: %s requires %s" msgstr "%s: %s requiere %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 "no se pudo escribir al archivo «%s»: se escribió %d de %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 "no se pudo actualizar la suma de verificación para el archivo «%s»" @@ -495,7 +494,7 @@ msgstr "no se pudo escribir a archivo «%s»: %m" msgid "could not write to file \"%s\", offset %u: wrote %d of %d" msgstr "no se pudo escribir al archivo «%s», posición %u: se escribió %d de %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 "no se pudo leer el archivo «%s»: %m" @@ -520,12 +519,12 @@ msgstr "error mientras se clonaba la relación «%s» a «%s»: %s" msgid "file cloning not supported on this platform" msgstr "el clonado de archivos no está soportado en esta plataforma" -#: 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 "error mientras se copiaba un rango de archivo de «%s» a «%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 no está soportado en esta plataforma" @@ -537,7 +536,6 @@ msgstr "no se pudo copiar el archivo de «%s» a «%s»: %m" #: copy_file.c:333 #, c-format -#| msgid "could not create symbolic link from \"%s\" to \"%s\": %m" msgid "could not create link from \"%s\" to \"%s\": %m" msgstr "no se pudo crear un enlace desde «%s» a «%s»: %m" @@ -583,7 +581,6 @@ msgstr "no se especificó un directorio de salida" #: pg_combinebackup.c:306 #, c-format -#| msgid "%s: manifest system identifier is %llu, but control file has %llu" msgid "%s: manifest system identifier is %, but control file has %" msgstr "%s: el identificador de sistema del manifiesto es %, pero el archivo de control tiene %" @@ -659,7 +656,6 @@ msgstr "%s: versión de archivo de control inesperado" #: pg_combinebackup.c:635 #, c-format -#| msgid "%s: expected system identifier %llu, but found %llu" msgid "%s: expected system identifier %, but found %" msgstr "%s: se esperaba identificador de sistema %, pero se encontró %" @@ -738,7 +734,6 @@ msgstr " -d, --debug genera mucha salida de depuración\n" #: pg_combinebackup.c:773 #, c-format -#| msgid " --clone clone (reflink) files instead of copying\n" msgid " -k, --link link files instead of copying\n" msgstr " -k, --link enlazar (link) archivos en vez de copiarlos\n" @@ -764,7 +759,7 @@ msgid "" " relocate tablespace in OLDDIR to NEWDIR\n" msgstr "" " -T, --tablespace-mapping=ANTIGUO=NUEVO\n" -" reubicar el tablespace de ANTIGUO a NUEVO\n" +" reubicar el tablespace de ANTIGUO a NUEVO\n" #: pg_combinebackup.c:779 #, c-format @@ -788,7 +783,7 @@ msgid "" " use algorithm for manifest checksums\n" msgstr "" " --manifest-checksums=SHA{224,256,384,512}|CRC32C|NONE\n" -" usar algoritmo para checksums del manifiesto\n" +" usar algoritmo para checksums del manifiesto\n" #: pg_combinebackup.c:784 #, c-format @@ -894,32 +889,32 @@ msgstr "no se pudo leer el archivo «%s»: leídos %zd de %lld" msgid "full backup contains unexpected incremental file \"%s\"" msgstr "backup «full» contiene archivo incremental «%s» inesperado" -#: reconstruct.c:423 +#: reconstruct.c:424 #, c-format msgid "file \"%s\" is too short: expected %llu, found %llu" msgstr "el archivo «%s» es demasiado corto: se esperaban %llu, se encontraron %llu" -#: reconstruct.c:465 +#: reconstruct.c:466 #, c-format msgid "file \"%s\" has bad incremental magic number (0x%x, expected 0x%x)" msgstr "el archivo «%s» tiene número mágico incremental erróneo (0x%x, se esperaba 0x%x)" -#: reconstruct.c:471 +#: reconstruct.c:472 #, c-format msgid "file \"%s\" has block count %u in excess of segment size %u" msgstr "el archivo «%s» tiene una cantidad de bloques %u más allá del tamaño de bloque %u" -#: reconstruct.c:478 +#: reconstruct.c:479 #, c-format msgid "file \"%s\" has truncation block length %u in excess of segment size %u" msgstr "el archivo «%s» tiene una longitud de truncado de bloque %u en exceso del tamaño de segmento %u" -#: reconstruct.c:542 +#: reconstruct.c:544 #, c-format msgid "could not read file \"%s\": read %d of %u" msgstr "no se pudo leer el archivo «%s»: leídos %d de %u" -#: reconstruct.c:786 +#: reconstruct.c:788 #, c-format msgid "could not read from file \"%s\", offset %llu: read %d of %d" msgstr "no se pudo leer del archivo \"%s\", posición %llu: leídos %d de %d" diff --git a/src/bin/pg_combinebackup/po/ru.po b/src/bin/pg_combinebackup/po/ru.po index 920b276907394..6fba5c874c609 100644 --- a/src/bin/pg_combinebackup/po/ru.po +++ b/src/bin/pg_combinebackup/po/ru.po @@ -3,7 +3,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-08-30 15:59+0300\n" +"POT-Creation-Date: 2025-11-09 06:28+0200\n" "PO-Revision-Date: 2025-09-13 17:16+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -41,7 +41,7 @@ msgid "could not open file \"%s\" for reading: %m" msgstr "не удалось открыть файл \"%s\" для чтения: %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 "не удалось прочитать файл \"%s\": %m" @@ -53,7 +53,7 @@ msgstr "не удалось прочитать файл \"%s\" (прочитан #: ../../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 "не удалось открыть файл \"%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" @@ -139,7 +139,7 @@ msgstr "не удалось синхронизировать с ФС файл \" #: ../../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 "не удалось получить информацию о файле \"%s\": %m" @@ -479,13 +479,13 @@ msgstr "%s: не удалось найти %s" msgid "%s: %s requires %s" msgstr "%s: %s требует %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 "не удалось записать файл \"%s\" (записано байт: %d из %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 "не удалось изменить контекст контрольной суммы файла \"%s\"" @@ -501,7 +501,7 @@ msgid "could not write to file \"%s\", offset %u: wrote %d of %d" msgstr "" "не удалось записать в файл \"%s\" (смещение %u, записано байт: %d из %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 "не удалось прочитать файл \"%s\": %m" @@ -526,12 +526,12 @@ msgstr "ошибка при клонировании файла \"%s\" в \"%s\" msgid "file cloning not supported on this platform" msgstr "клонирование файлов не поддерживается в этой ОС" -#: 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 "ошибка при копировании фрагмента файла \"%s\" в \"%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 не поддерживается в этой ОС" @@ -936,35 +936,35 @@ msgstr "не удалось прочитать файл \"%s\" (прочитан msgid "full backup contains unexpected incremental file \"%s\"" msgstr "полная копия содержит неожиданный инкрементальный файл \"%s\"" -#: reconstruct.c:423 +#: reconstruct.c:424 #, c-format msgid "file \"%s\" is too short: expected %llu, found %llu" msgstr "файл \"%s\" слишком мал (ожидалось байт: %llu, фактически: %llu)" -#: reconstruct.c:465 +#: 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:471 +#: reconstruct.c:472 #, c-format msgid "file \"%s\" has block count %u in excess of segment size %u" msgstr "в файле \"%s\" количество блоков %u превышает размер сегмента %u" -#: reconstruct.c:478 +#: 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:542 +#: reconstruct.c:544 #, c-format msgid "could not read file \"%s\": read %d of %u" msgstr "не удалось прочитать файл \"%s\" (прочитано байт: %d из %u)" -#: reconstruct.c:786 +#: reconstruct.c:788 #, c-format msgid "could not read from file \"%s\", offset %llu: read %d of %d" msgstr "" diff --git a/src/bin/pg_config/po/es.po b/src/bin/pg_config/po/es.po index 5afb8a3f250d8..cf6e5345f26ff 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-09-20 09:48+0000\n" +"POT-Creation-Date: 2025-11-08 00: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 6c83db53a52c9..2d08d84a6ad94 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-09-20 09:52+0000\n" +"POT-Creation-Date: 2025-11-08 00:23+0000\n" "PO-Revision-Date: 2025-09-21 11:32+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -247,7 +247,6 @@ msgstr "Número de versión del catálogo: %u\n" #: pg_controldata.c:242 #, c-format -#| msgid "Database system identifier: %llu\n" msgid "Database system identifier: %\n" msgstr "Identificador de sistema: %\n" @@ -511,12 +510,10 @@ msgstr "Versión de sumas de verificación de datos: %u\n" #: pg_controldata.c:339 #, c-format -#| msgid "Maximum data alignment: %u\n" msgid "Default char data signedness: %s\n" msgstr "Presencia de signo en datos «char»: %s\n" #: pg_controldata.c:340 -#| msgid "assignment" msgid "signed" msgstr "con signo" diff --git a/src/bin/pg_ctl/po/es.po b/src/bin/pg_ctl/po/es.po index fbbea6324a39e..fc272fae5c9d5 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-09-20 09:48+0000\n" +"POT-Creation-Date: 2025-11-08 00:19+0000\n" "PO-Revision-Date: 2025-09-21 11:35+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -230,7 +230,6 @@ msgid "%s: server did not start in time\n" msgstr "%s: el servidor no inició a tiempo\n" #: pg_ctl.c:1004 -#| msgid "shutdown at recovery target" msgid "server shut down because of recovery target settings\n" msgstr "servidor apagado debido a parámetros de destino de recuperación\n" diff --git a/src/bin/pg_dump/po/es.po b/src/bin/pg_dump/po/es.po index 6b79b0db96b9a..2cbec18c441a5 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-09-20 09:51+0000\n" -"PO-Revision-Date: 2025-09-21 13:44+0200\n" +"POT-Creation-Date: 2025-11-08 00:21+0000\n" +"PO-Revision-Date: 2025-11-08 19:05+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -43,7 +43,7 @@ msgid "hint: " msgstr "consejo: " #: ../../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,49 +476,48 @@ msgstr "no se pudo interpretar el arreglo numérico «%s»: demasiados números" msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "no se pudo interpretar el arreglo numérico «%s»: carácter no válido en número" -#: 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 "no se pudo inicializar la biblioteca de compresión: %s" -#: compress_gzip.c:93 +#: compress_gzip.c:102 #, c-format msgid "could not close compression stream: %s" msgstr "no se pudo cerrar el flujo comprimido: %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 "no se pudo comprimir datos: %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 "no se pudo descomprimir datos: %s" -#: compress_gzip.c:221 +#: compress_gzip.c:230 #, c-format msgid "could not close compression library: %s" msgstr "no se pudo cerrar la biblioteca de compresión: %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 "no se pudo leer el archivo de entrada: %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\": %s" msgid "could not write to file: %s" msgstr "no se pudo escribir al archivo: %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 "no se pudo leer el archivo de entrada: %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 @@ -552,25 +551,21 @@ msgstr "no se pudo inicializar la compresión LZ4: %s" #: compress_lz4.c:463 compress_lz4.c:581 #, c-format -#| msgid "could not initialize XML library" msgid "unable to initialize LZ4 library: %s" msgstr "no se pudo inicializar la biblioteca LZ4: %s" #: compress_lz4.c:593 #, c-format -#| msgid "error during file seek: %m" msgid "error during writing: %s" msgstr "error durante escritura: %s" #: compress_lz4.c:599 #, c-format -#| msgid "error during file seek: %m" msgid "error during writing: %m" msgstr "error durante escritura: %m" #: compress_lz4.c:698 #, c-format -#| msgid "could not write to output file: %s" msgid "could not write to output file: %m" msgstr "no se pudo escribir al archivo de salida: %m" @@ -581,13 +576,11 @@ msgstr "no se pudo terminar la descompresión: %s" #: compress_lz4.c:726 compress_none.c:156 #, c-format -#| msgid "could not close TOC file: %m" msgid "could not close file: %m" msgstr "no se pudo cerrar el archivo: %m" #: compress_none.c:109 compress_zstd.c:389 #, c-format -#| msgid "could not write to COPY file: %m" msgid "could not write to file: %m" msgstr "no se pudo escribir al archivo: %m" @@ -612,7 +605,7 @@ msgid "Password: " msgstr "Contraseña: " #: 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 +#: pg_dump_sort.c:1467 pg_dump_sort.c:1487 #, c-format msgid "%s" msgstr "%s" @@ -669,7 +662,6 @@ msgstr "no se pudo cambiar los permisos del directorio «%s»: %m" #: dumputils.c:958 #, c-format -#| msgid "directory \"%s\" exists but is not empty" msgid "directory \"%s\" is not empty" msgstr "el directorio «%s» no está vacío" @@ -844,7 +836,6 @@ msgstr "las conexiones directas a la base de datos no están soportadas en archi #: pg_backup_archiver.c:450 #, c-format -#| msgid "implied data-only restore" msgid "implied no-schema restore" msgstr "asumiendo reestablecimiento sin “schema”" @@ -1331,7 +1322,6 @@ msgstr "compresor activo" #: pg_backup_db.c:41 #, c-format -#| msgid "could not get server_version from libpq" msgid "could not get \"server_version\" from libpq" msgstr "no se pudo obtener «server_version» desde libpq" @@ -1547,43 +1537,36 @@ 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 -a/--data-only cannot be used together" 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 -#, fuzzy, c-format -#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#, c-format msgid "options -a/--data-only and --statistics-only cannot be used together" -msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" +msgstr "las opciones -a/--data-only y /--statistics-only no pueden usarse juntas" #: pg_dump.c:834 pg_restore.c:388 -#, fuzzy, c-format -#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#, c-format msgid "options -a/--data-only and --no-data cannot be used together" -msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" +msgstr "las opciones -a/--data-only y --no-data no pueden usarse juntas" #: pg_dump.c:836 pg_restore.c:390 -#, fuzzy, c-format -#| msgid "options -s/--schema-only and -a/--data-only cannot be used together" +#, c-format msgid "options -s/--schema-only and --no-schema cannot be used together" -msgstr "las opciones -s/--schema-only y -a/--data-only no pueden usarse juntas" +msgstr "las opciones -s/--schema-only y --no-data no pueden usarse juntas" #: pg_dump.c:838 pg_restore.c:392 -#, fuzzy, c-format -#| msgid "options -1/--single-transaction and --transaction-size cannot be used together" +#, c-format msgid "options --statistics-only and --no-statistics cannot be used together" -msgstr "las opciones -1/--single-transaction y --transaction-size no pueden usarse juntas" +msgstr "las opciones --statistics-only y --no-statistics no pueden usarse juntas" #: pg_dump.c:842 pg_restore.c:396 -#, fuzzy, c-format -#| msgid "options -1/--single-transaction and --transaction-size cannot be used together" +#, c-format msgid "options --statistics and --no-statistics cannot be used together" -msgstr "las opciones -1/--single-transaction y --transaction-size no pueden usarse juntas" +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 #, c-format -#| msgid "options -c/--clean and -a/--data-only cannot be used together" msgid "options %s and %s cannot be used together" msgstr "las opciones %s y %s no pueden usarse juntas" @@ -1614,19 +1597,16 @@ msgstr "la opción --on-conflict-do-nothing requiere una de las opciones --inser #: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 #, c-format -#| msgid "could not generate nonce" 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 #, c-format -#| msgid "invalid socket" msgid "invalid restrict key" msgstr "llave de “restrict” no válida" #: pg_dump.c:903 #, c-format -#| msgid "option -f/--filenode can only be used with --check" msgid "option --restrict-key can only be used with --format=plain" msgstr "la opción --restrict-key sólo puede usarse con --format=plain" @@ -1672,9 +1652,6 @@ msgstr "no se encontraron extensiones coincidentes" #: pg_dump.c:1251 #, c-format -#| msgid "" -#| "%s dumps a database as a text file or to other formats.\n" -#| "\n" msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" "\n" @@ -1704,7 +1681,7 @@ msgstr "" #: pg_dump.c:1256 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" -msgstr " -f, --file=ARCHIVO nombre del archivo o directorio de salida\n" +msgstr " -f, --file=ARCHIVO nombre del archivo o directorio de salida\n" #: pg_dump.c:1257 #, c-format @@ -1712,23 +1689,23 @@ 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 Formato del archivo de salida (c=personalizado, \n" -" d=directorio, t=tar, p=texto (por omisión))\n" +" -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 #, 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" +msgstr " -j, --jobs=NUM máximo de procesos paralelos para volcar\n" #: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" -msgstr " -v, --verbose modo verboso\n" +msgstr " -v, --verbose modo verboso\n" #: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" -msgstr " -V, --version mostrar información de version y salir\n" +msgstr " -V, --version mostrar información de version y salir\n" #: pg_dump.c:1262 #, c-format @@ -1737,27 +1714,27 @@ msgid "" " compress as specified\n" msgstr "" " -Z, --compress=MÉTODO[:DETALLE]\n" -" comprimir como se indica\n" +" comprimir como se indica\n" #: pg_dump.c:1264 pg_dumpall.c:701 #, 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" +msgstr " --lock-wait-timeout=SEGS espera a lo más SEGS segundos obtener un lock\n" #: pg_dump.c:1265 pg_dumpall.c:733 #, 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" +msgstr " --no-sync no esperar que los cambios se sincronicen a disco\n" #: pg_dump.c:1266 #, 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" +msgstr " --sync-method=MÉTODO definir método para sincr. archivos a disco\n" #: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" -msgstr " -?, --help mostrar esta ayuda y salir\n" +msgstr " -?, --help mostrar esta ayuda y salir\n" #: pg_dump.c:1269 pg_dumpall.c:703 #, c-format @@ -1770,7 +1747,6 @@ msgstr "" #: pg_dump.c:1270 pg_dumpall.c:704 #, c-format -#| msgid " -a, --data-only dump only the data, not the schema\n" 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" @@ -1837,7 +1813,6 @@ msgstr "" #: pg_dump.c:1283 pg_dumpall.c:710 #, c-format -#| msgid " -s, --schema-only dump only the schema, no data\n" 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" @@ -1884,8 +1859,8 @@ msgstr "" #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr "" -" --disable-triggers deshabilita los disparadores (triggers) durante el\n" -" restablecimiento de la extracción de sólo-datos\n" +" --disable-triggers deshabilita “triggers” durante la\n" +" restauración de sólo datos\n" #: pg_dump.c:1292 #, c-format @@ -1899,7 +1874,7 @@ msgstr "" #: pg_dump.c:1294 #, 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" +msgstr " --exclude-extension=PATRÓN NO volcar la o las extensiones indicadas\n" #: pg_dump.c:1295 #, c-format @@ -1939,8 +1914,8 @@ msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" " based on expressions in FILENAME\n" msgstr "" -" --filter=ARCHIVO incluir o excluir objetos y datos basado en\n" -" expresiones en ARCHIVO\n" +" --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 #, c-format @@ -1970,19 +1945,16 @@ msgstr " --load-via-partition-root cargar particiones a través de tabla ra #: pg_dump.c:1311 pg_dumpall.c:724 #, c-format -#| msgid " --no-comments do not dump comments\n" 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 #, c-format -#| msgid " --no-comments do not dump comments\n" msgid " --no-data do not dump data\n" msgstr " --no-data no volcar datos\n" #: pg_dump.c:1313 pg_dumpall.c:726 #, c-format -#| msgid " --no-comments do not dump comments\n" msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies no volcar políticas de seguridad por registros\n" @@ -1993,7 +1965,6 @@ msgstr " --no-publications no volcar las publicaciones\n" #: pg_dump.c:1315 pg_dumpall.c:729 #, c-format -#| msgid " --no-comments do not dump comments\n" msgid " --no-schema do not dump schema\n" msgstr " --no-schema no volcar el esquema\n" @@ -2004,7 +1975,6 @@ msgstr " --no-security-labels no volcar asignaciones de etiquetas de se #: pg_dump.c:1317 pg_dumpall.c:731 #, c-format -#| msgid " --no-subscriptions do not dump subscriptions\n" msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistiics no volcar estadísticas\n" @@ -2064,7 +2034,6 @@ msgstr "" #: pg_dump.c:1328 pg_dumpall.c:742 #, c-format -#| msgid " -C, --create include commands to create database in dump\n" msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data incluir datos de secuencias en la extracción\n" @@ -2082,13 +2051,11 @@ msgstr " --snapshot=SNAPSHOT use el snapshot dado para la extracción\ #: pg_dump.c:1331 pg_dumpall.c:743 #, c-format -#| msgid " -z, --analyze update optimizer statistics\n" msgid " --statistics dump the statistics\n" msgstr " --statistics extraer las estadísticas\n" #: pg_dump.c:1332 pg_dumpall.c:744 #, c-format -#| msgid " -s, --schema-only dump only the schema, no data\n" 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" @@ -2332,8 +2299,8 @@ msgstr "leyendo políticas de seguridad a nivel de registros" 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:13450 pg_dump.c:19648 -#: pg_dump.c:19650 pg_dump.c:20282 +#: 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 #, c-format msgid "could not parse %s array" msgstr "no se pudo interpretar el arreglo %s" @@ -2365,11 +2332,10 @@ msgstr "no existe el esquema con OID %u" #: pg_dump.c:6994 #, c-format -#| msgid "cannot define statistics for relation \"%s\"" 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:18987 +#: pg_dump.c:7506 pg_dump.c:18989 #, 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" @@ -2379,8 +2345,8 @@ msgstr "falló la revisión de integridad, no se encontró la tabla padre con OI 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:9317 pg_dump.c:9456 -#: pg_dump.c:9601 pg_dump.c:9701 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "OID de tabla %u no reconocido" @@ -2395,319 +2361,315 @@ msgstr "datos de índice inesperados para la tabla «%s»" 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:9321 +#: pg_dump.c:9323 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "información de columnas para la tabla «%s» inesperada" -#: pg_dump.c:9353 +#: pg_dump.c:9355 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "numeración de columnas no válida en la tabla «%s»" -#: pg_dump.c:9418 +#: pg_dump.c:9420 #, c-format msgid "finding table default expressions" msgstr "encontrando expresiones default de tablas" -#: pg_dump.c:9460 +#: pg_dump.c:9462 #, 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:9553 +#: pg_dump.c:9555 #, c-format -#| msgid "finding table check constraints" msgid "finding invalid not-null constraints" msgstr "encontrando restricciones not-null no válidas" -#: pg_dump.c:9651 +#: pg_dump.c:9653 #, c-format msgid "finding table check constraints" msgstr "encontrando restricciones CHECK de tablas" -#: pg_dump.c:9705 +#: pg_dump.c:9707 #, 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:9709 +#: pg_dump.c:9711 #, c-format msgid "The system catalogs might be corrupted." msgstr "Los catálogos del sistema podrían estar corruptos." -#: pg_dump.c:10514 +#: pg_dump.c:10516 #, c-format msgid "role with OID %u does not exist" msgstr "no existe el rol con OID %u" -#: pg_dump.c:10626 pg_dump.c:10655 +#: pg_dump.c:10628 pg_dump.c:10657 #, 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:10951 +#: pg_dump.c:10953 #, 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:11092 +#: pg_dump.c:11094 #, c-format -#| msgid "unexpected payload data" msgid "unexpected null attname" msgstr "se encontró attname inesperadamente nulo" -#: pg_dump.c:11121 +#: pg_dump.c:11123 #, c-format -#| msgid "could not find an aggregate named \"%s\"" msgid "could not find index attname \"%s\"" msgstr "no se pudo encontrar el attname de índice «%s»" -#: pg_dump.c:11607 +#: pg_dump.c:11609 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "metadata faltante para los objetos grandes «%s»" -#: pg_dump.c:11893 +#: pg_dump.c:11895 #, 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:13521 +#: pg_dump.c:13523 #, 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:13571 pg_dump.c:15467 +#: pg_dump.c:13573 pg_dump.c:15469 #, 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:13701 pg_dump.c:13807 pg_dump.c:13814 +#: pg_dump.c:13703 pg_dump.c:13809 pg_dump.c:13816 #, 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:13740 +#: pg_dump.c:13742 #, 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:13743 +#: pg_dump.c:13745 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "valor no válido en el campo pg_cast.castmethod" -#: pg_dump.c:13833 +#: pg_dump.c:13835 #, 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:13850 +#: pg_dump.c:13852 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "valor erróneo en el campo pg_transform.trffromsql" -#: pg_dump.c:13871 +#: pg_dump.c:13873 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "valor erróneo en el campo pg_transform.trftosql" -#: pg_dump.c:14016 +#: pg_dump.c:14018 #, 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:14186 +#: pg_dump.c:14188 #, c-format msgid "could not find operator with OID %s" msgstr "no se pudo encontrar el operador con OID %s" -#: pg_dump.c:14254 +#: pg_dump.c:14256 #, 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:14928 pg_dump.c:14996 +#: pg_dump.c:14930 pg_dump.c:14998 #, c-format msgid "unrecognized collation provider: %s" msgstr "proveedor de ordenamiento no reconocido: %s" -#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 -#: pg_dump.c:14980 +#: pg_dump.c:14939 pg_dump.c:14946 pg_dump.c:14957 pg_dump.c:14967 +#: pg_dump.c:14982 #, c-format msgid "invalid collation \"%s\"" msgstr "ordenamiento \"%s\" no válido" -#: pg_dump.c:15386 +#: pg_dump.c:15388 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "valor de aggfinalmodify no reconocido para la agregación «%s»" -#: pg_dump.c:15442 +#: pg_dump.c:15444 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "valor de aggmfinalmodify no reconocido para la agregación «%s»" -#: pg_dump.c:16162 +#: pg_dump.c:16164 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "tipo de objeto desconocido en privilegios por omisión: %d" -#: pg_dump.c:16178 +#: pg_dump.c:16180 #, c-format msgid "could not parse default ACL list (%s)" msgstr "no se pudo interpretar la lista de ACL (%s)" -#: pg_dump.c:16262 +#: pg_dump.c:16264 #, 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:16287 +#: pg_dump.c:16289 #, 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:16830 +#: pg_dump.c:16832 #, 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:16833 +#: pg_dump.c:16835 #, 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:16840 +#: pg_dump.c:16842 #, 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:16925 +#: pg_dump.c:16927 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDS ya no está soportado (tabla «%s»)" -#: pg_dump.c:18065 +#: pg_dump.c:18067 #, 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:18143 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic columns" msgstr "no se pudieron interpretar columnas de estadísticas de índices" -#: pg_dump.c:18145 +#: pg_dump.c:18147 #, c-format msgid "could not parse index statistic values" msgstr "no se pudieron interpretar valores de estadísticas de índices" -#: pg_dump.c:18147 +#: pg_dump.c:18149 #, 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:18376 +#: pg_dump.c:18378 #, c-format msgid "missing index for constraint \"%s\"" msgstr "falta un índice para restricción «%s»" -#: pg_dump.c:18645 +#: pg_dump.c:18647 #, c-format msgid "unrecognized constraint type: %c" msgstr "tipo de restricción inesperado: %c" -#: pg_dump.c:18698 +#: pg_dump.c:18700 #, c-format msgid "unrecognized sequence type: %s" msgstr "tipo no reconocido de secuencia: %s" -#: pg_dump.c:18830 pg_dump.c:19062 +#: pg_dump.c:18832 pg_dump.c:19064 #, 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:18866 +#: pg_dump.c:18868 #, c-format -#| msgid "unrecognized sequence type: %s" msgid "unrecognized sequence type: %d" msgstr "tipo no reconocido de secuencia: %d" -#: pg_dump.c:19400 +#: pg_dump.c:19402 #, 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:19553 +#: pg_dump.c:19555 #, c-format msgid "could not find referenced extension %u" msgstr "no se pudo encontrar la extensión referenciada %u" -#: pg_dump.c:19652 +#: pg_dump.c:19654 #, 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:19784 +#: pg_dump.c:19786 #, c-format msgid "reading dependency data" msgstr "obteniendo datos de dependencias" -#: pg_dump.c:19870 +#: pg_dump.c:19872 #, c-format msgid "no referencing object %u %u" msgstr "no existe el objeto referenciante %u %u" -#: pg_dump.c:19881 +#: pg_dump.c:19883 #, c-format msgid "no referenced object %u %u" msgstr "no existe el objeto referenciado %u %u" -#: pg_dump.c:20316 pg_dump.c:20354 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_dump.c:20318 pg_dump.c:20356 pg_dumpall.c:1836 pg_restore.c:629 #: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "el filtro %s para «%s» no está permitido" -#: pg_dump_sort.c:648 +#: pg_dump_sort.c:649 #, c-format msgid "invalid dumpId %d" msgstr "dumpId %d no válido" -#: pg_dump_sort.c:654 +#: pg_dump_sort.c:655 #, c-format msgid "invalid dependency %d" msgstr "dependencia %d no válida" -#: pg_dump_sort.c:818 +#: pg_dump_sort.c:819 #, c-format msgid "could not identify dependency loop" msgstr "no se pudo identificar bucle de dependencia" -#: 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] "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: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 "Puede no ser capaz de restaurar el respaldo sin usar --disable-triggers o temporalmente eliminar las restricciones." -#: 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 "Considere usar un volcado completo en lugar de --data-only para evitar este problema." -#: pg_dump_sort.c:1480 +#: pg_dump_sort.c:1481 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "no se pudo resolver el bucle de dependencias entre los siguientes elementos:" @@ -2753,9 +2715,6 @@ msgstr "" #: pg_dumpall.c:693 #, c-format -#| msgid "" -#| "%s extracts a PostgreSQL database cluster into an SQL script file.\n" -#| "\n" msgid "" "%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" @@ -2771,58 +2730,58 @@ msgstr " %s [OPCIÓN]...\n" #: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" -msgstr " -f, --file=ARCHIVO nombre del archivo de salida\n" +msgstr " -f, --file=ARCHIVO nombre del archivo de salida\n" #: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" -msgstr " -c, --clean tira (drop) la base de datos antes de crearla\n" +msgstr " -c, --clean elimina la base de datos antes de crearla\n" #: pg_dumpall.c:707 #, 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" +msgstr " -g, --globals-only extrae sólo los objetos globales, no bases de datos\n" #: pg_dumpall.c:708 pg_restore.c:546 #, 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" +msgstr " -O, --no-owner no reestablece los dueños de los objetos\n" #: pg_dumpall.c:709 #, 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" +" -r, --roles-only extrae sólo los roles, no bases de datos\n" +" ni tablespaces\n" #: pg_dumpall.c:711 #, 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" +" -S, --superuser=NAME especifica el nombre del superusuario a usar en\n" +" el volcado\n" #: pg_dumpall.c:712 #, 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" +" -t, --tablespaces-only extrae sólo los tablespaces, no bases de datos\n" +" ni roles\n" #: pg_dumpall.c:718 #, 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" +msgstr " --exclude-database=PATRÓN excluir bases de datos cuyos nombres coinciden con el patrón\n" #: pg_dumpall.c:720 #, 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" +msgstr " --filter=ARCHIVO excluir bases de datos basado en expresiones en ARCHIVO\n" #: pg_dumpall.c:728 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" -msgstr " --no-role-passwords no extraer contraseñas para roles\n" +msgstr " --no-role-passwords no extraer contraseñas para roles\n" #: pg_dumpall.c:750 #, c-format @@ -2912,10 +2871,9 @@ 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 -#, fuzzy, c-format -#| msgid "options -d/--dbname and -f/--file cannot be used together" +#, c-format msgid "options -d/--dbname and --restrict-key cannot be used together" -msgstr "las opciones -d/--dbname y -f/--file no pueden usarse juntas" +msgstr "las opciones -d/--dbname y --restrict-key no pueden usarse juntas" #: pg_restore.c:410 #, c-format @@ -2934,7 +2892,6 @@ msgstr "no se puede especificar --single-transaction junto con múltiples tareas #: pg_restore.c:467 #, c-format -#| msgid "log format \"%s\" is not supported" msgid "archive format \"%s\" is not supported; please use psql" msgstr "el formato de archivador «%s» no está soportado; por favor use psql" @@ -3108,13 +3065,11 @@ msgstr "" #: pg_restore.c:559 #, c-format -#| msgid " --no-comments do not restore comments\n" msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments no restaurar órdenes de comentarios\n" #: pg_restore.c:560 #, c-format -#| msgid " --no-comments do not restore comments\n" msgid " --no-data do not restore data\n" msgstr " --no-data no restaurar datos\n" @@ -3129,7 +3084,6 @@ msgstr "" #: pg_restore.c:563 #, c-format -#| msgid " --no-comments do not restore comments\n" msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies no restaurar políticas de seguridad por registros\n" @@ -3140,7 +3094,6 @@ msgstr " --no-publications no restaurar publicaciones\n" #: pg_restore.c:565 #, c-format -#| msgid " --no-comments do not restore comments\n" msgid " --no-schema do not restore schema\n" msgstr " --no-schema no restaurar esquemas\n" @@ -3151,7 +3104,6 @@ msgstr " --no-security-labels no restaura etiquetas de seguridad\n" #: pg_restore.c:567 #, c-format -#| msgid " --no-subscriptions do not restore subscriptions\n" msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics no restaurar estadísticas\n" @@ -3179,13 +3131,11 @@ msgstr "" #: pg_restore.c:573 #, c-format -#| msgid " -C, --create create the target database\n" msgid " --statistics restore the statistics\n" msgstr " --statistics restaurar las estadísticas\n" #: pg_restore.c:574 #, c-format -#| msgid " -s, --schema-only restore only the schema, no data\n" 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" @@ -3197,7 +3147,7 @@ msgstr " --transaction-size=N comprometer transacción cada N objetos\n #: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" -msgstr " --role=ROLENAME hace SET ROLE antes de restaurar\n" +msgstr " --role=ROLENAME hacer SET ROLE antes de restaurar\n" #: pg_restore.c:590 #, c-format @@ -3220,15 +3170,3 @@ msgstr "" "\n" "Si no se especifica un archivo de entrada, se usa la entrada estándar.\n" "\n" - -#, c-format -#~ msgid "could not connect to database" -#~ msgstr "no se pudo hacer la conexión a la base de datos" - -#, c-format -#~ msgid "reconnection failed: %s" -#~ msgstr "falló la reconexión: %s" - -#, c-format -#~ msgid "could not close directory \"%s\": %m" -#~ msgstr "no se pudo abrir el directorio «%s»: %m" diff --git a/src/bin/pg_dump/po/ja.po b/src/bin/pg_dump/po/ja.po index 1e327fc7d473d..22df05aaf5f18 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-06-20 13:22+0900\n" -"PO-Revision-Date: 2025-06-20 14:05+0900\n" +"POT-Creation-Date: 2025-10-10 15:48+0900\n" +"PO-Revision-Date: 2025-10-10 16:05+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -43,9 +43,9 @@ 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:108 compress_lz4.c:780 compress_lz4.c:787 compress_zstd.c:25 -#: compress_zstd.c:31 +#: ../../common/compression.c:150 compress_gzip.c:428 compress_gzip.c:435 +#: 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による圧縮をサポートしていません" @@ -129,7 +129,7 @@ msgstr "コマンド\"%s\"から読み取れませんでした: %m" msgid "no data was returned by command \"%s\"" msgstr "コマンド\"%s\"がデータを返却しませんでした" -#: ../../common/exec.c:405 parallel.c:1621 +#: ../../common/exec.c:405 parallel.c:1611 #, c-format msgid "%s() failed: %m" msgstr "%s() が失敗しました: %m" @@ -150,8 +150,7 @@ msgid "cannot duplicate null pointer (internal error)\n" msgstr "null ポインタを複製できません(内部エラー)。\n" #: ../../common/file_utils.c:69 ../../common/file_utils.c:370 -#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 pg_dumpall.c:528 -#: pg_dumpall.c:1669 pg_restore.c:1061 pg_restore.c:1322 +#: ../../common/file_utils.c:428 ../../common/file_utils.c:502 #, c-format msgid "could not open file \"%s\": %m" msgstr "ファイル\"%s\"をオープンできませんでした: %m" @@ -172,7 +171,7 @@ msgstr "ファイル\"%s\"のstatに失敗しました: %m" msgid "this build does not support sync method \"%s\"" msgstr "このビルドでは同期方式\"%s\"をサポートしていません" -#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:905 +#: ../../common/file_utils.c:156 ../../common/file_utils.c:304 dumputils.c:943 #, c-format msgid "could not open directory \"%s\": %m" msgstr "ディレクトリ\"%s\"をオープンできませんでした: %m" @@ -247,232 +246,232 @@ msgstr "シェルコマンドの引数に改行(LF)または復帰(CR)が含ま msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "データベース名に改行(LF)または復帰(CR)が含まれています: \"%s\"\n" -#: common.c:111 +#: common.c:112 #, c-format msgid "reading extensions" msgstr "機能拡張を読み込んでいます" -#: common.c:114 +#: common.c:115 #, c-format msgid "identifying extension members" msgstr "機能拡張の構成要素を特定しています" -#: common.c:117 +#: common.c:118 #, c-format msgid "reading schemas" msgstr "スキーマを読み込んでいます" -#: common.c:126 +#: common.c:127 #, c-format msgid "reading user-defined tables" msgstr "ユーザー定義テーブルを読み込んでいます" -#: common.c:131 +#: common.c:132 #, c-format msgid "reading user-defined functions" msgstr "ユーザー定義関数を読み込んでいます" -#: common.c:135 +#: common.c:136 #, c-format msgid "reading user-defined types" msgstr "ユーザー定義型を読み込んでいます" -#: common.c:139 +#: common.c:140 #, c-format msgid "reading procedural languages" msgstr "手続き言語を読み込んでいます" -#: common.c:142 +#: common.c:143 #, c-format msgid "reading user-defined aggregate functions" msgstr "ユーザー定義集約関数を読み込んでいます" -#: common.c:145 +#: common.c:146 #, c-format msgid "reading user-defined operators" msgstr "ユーザー定義演算子を読み込んでいます" -#: common.c:148 +#: common.c:149 #, c-format msgid "reading user-defined access methods" msgstr "ユーザー定義アクセスメソッドを読み込んでいます" -#: common.c:151 +#: common.c:152 #, c-format msgid "reading user-defined operator classes" msgstr "ユーザー定義演算子クラスを読み込んでいます" -#: common.c:154 +#: common.c:155 #, c-format msgid "reading user-defined operator families" msgstr "ユーザー定義演算子族を読み込んでいます" -#: common.c:157 +#: common.c:158 #, c-format msgid "reading user-defined text search parsers" msgstr "ユーザー定義のテキスト検索パーサを読み込んでいます" -#: common.c:160 +#: common.c:161 #, c-format msgid "reading user-defined text search templates" msgstr "ユーザー定義のテキスト検索テンプレートを読み込んでいます" -#: common.c:163 +#: common.c:164 #, c-format msgid "reading user-defined text search dictionaries" msgstr "ユーザー定義のテキスト検索辞書を読み込んでいます" -#: common.c:166 +#: common.c:167 #, c-format msgid "reading user-defined text search configurations" msgstr "ユーザー定義のテキスト検索設定を読み込んでいます" -#: common.c:169 +#: common.c:170 #, c-format msgid "reading user-defined foreign-data wrappers" msgstr "ユーザー定義の外部データラッパーを読み込んでいます" -#: common.c:172 +#: common.c:173 #, c-format msgid "reading user-defined foreign servers" msgstr "ユーザー定義の外部サーバーを読み込んでいます" -#: common.c:175 +#: common.c:176 #, c-format msgid "reading default privileges" msgstr "デフォルト権限設定を読み込んでいます" -#: common.c:178 +#: common.c:179 #, c-format msgid "reading user-defined collations" msgstr "ユーザー定義の照合順序を読み込んでいます" -#: common.c:181 +#: common.c:182 #, c-format msgid "reading user-defined conversions" msgstr "ユーザー定義の変換を読み込んでいます" -#: common.c:184 +#: common.c:185 #, c-format msgid "reading type casts" msgstr "型キャストを読み込んでいます" -#: common.c:187 +#: common.c:188 #, c-format msgid "reading transforms" msgstr "変換を読み込んでいます" -#: common.c:190 +#: common.c:191 #, c-format msgid "reading table inheritance information" msgstr "テーブル継承情報を読み込んでいます" -#: common.c:193 +#: common.c:194 #, c-format msgid "reading event triggers" msgstr "イベントトリガを読み込んでいます" -#: common.c:197 +#: common.c:198 #, c-format msgid "finding extension tables" msgstr "機能拡張構成テーブルを探しています" -#: common.c:201 +#: common.c:202 #, c-format msgid "finding inheritance relationships" msgstr "継承関係を検索しています" -#: common.c:204 +#: common.c:205 #, c-format msgid "reading column info for interesting tables" msgstr "対象テーブルの列情報を読み込んでいます" -#: common.c:207 +#: common.c:208 #, c-format msgid "flagging inherited columns in subtables" msgstr "子テーブルの継承列にフラグを設定しています" -#: common.c:210 +#: common.c:211 #, c-format msgid "reading partitioning data" msgstr "パーティション情報を読み込んでいます" -#: common.c:213 +#: common.c:214 #, c-format msgid "reading indexes" msgstr "インデックスを読み込んでいます" -#: common.c:216 +#: common.c:217 #, c-format msgid "flagging indexes in partitioned tables" msgstr "パーティション親テーブルのインデックスにフラグを設定しています" -#: common.c:219 +#: common.c:220 #, c-format msgid "reading extended statistics" msgstr "拡張統計情報を読み込んでいます" -#: common.c:222 +#: common.c:223 #, c-format msgid "reading constraints" msgstr "制約を読み込んでいます" -#: common.c:225 +#: common.c:226 #, c-format msgid "reading triggers" msgstr "トリガを読み込んでいます" -#: common.c:228 +#: common.c:229 #, c-format msgid "reading rewrite rules" msgstr "書き換えルールを読み込んでいます" -#: common.c:231 +#: common.c:232 #, c-format msgid "reading policies" msgstr "ポリシを読み込んでいます" -#: common.c:234 +#: common.c:235 #, c-format msgid "reading publications" msgstr "パブリケーションを読み込んでいます" -#: common.c:237 +#: common.c:238 #, c-format msgid "reading publication membership of tables" msgstr "テーブルのパブリケーションへの所属を読み取っています" -#: common.c:240 +#: common.c:241 #, c-format msgid "reading publication membership of schemas" msgstr "スキーマのパブリケーションへの所属を読み取っています" -#: common.c:243 +#: common.c:244 #, c-format msgid "reading subscriptions" msgstr "サブスクリプションを読み込んでいます" -#: common.c:246 +#: common.c:247 #, c-format msgid "reading subscription membership of tables" msgstr "テーブルのサブスクリプションへの所属を読み取っています" -#: common.c:309 +#: common.c:310 #, c-format msgid "failed sanity check, parent OID %u of table \"%s\" (OID %u) not found" msgstr "健全性検査に失敗しました、テーブル\"%2$s\"(OID %3$u)の親のOID %1$uがありません" -#: common.c:351 +#: common.c:352 #, c-format msgid "invalid number of parents %d for table \"%s\"" msgstr "テーブル\"%2$s\"用の親テーブルの数%1$dが不正です" -#: common.c:1109 +#: common.c:1128 #, c-format msgid "could not parse numeric array \"%s\": too many numbers" msgstr "数値配列\"%s\"のパースに失敗しました: 要素が多すぎます" -#: common.c:1121 +#: common.c:1140 #, c-format msgid "could not parse numeric array \"%s\": invalid character in number" msgstr "数値配列\"%s\"のパースに失敗しました: 数値に不正な文字が含まれています" @@ -487,7 +486,7 @@ msgstr "圧縮ライブラリを初期化できませんでした: %s" msgid "could not close compression stream: %s" msgstr "圧縮ストリームをクローズできませんでした: %s" -#: compress_gzip.c:113 compress_lz4.c:227 compress_zstd.c:109 +#: compress_gzip.c:113 compress_lz4.c:228 compress_zstd.c:110 #, c-format msgid "could not compress data: %s" msgstr "データを圧縮できませんでした: %s" @@ -502,86 +501,116 @@ msgstr "データを伸張できませんでした: %s" 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:277 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:375 pg_backup_custom.c:650 +#: compress_gzip.c:294 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_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:373 pg_backup_custom.c:648 pg_backup_directory.c:538 +#: compress_gzip.c:312 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:233 compress_zstd.c:492 -#: compress_zstd.c:500 +#: 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:196 compress_zstd.c:310 +#: compress_zstd.c:197 compress_zstd.c:336 #, c-format msgid "could not decompress data: %s" msgstr "データを伸張できませんでした: %s" -#: compress_zstd.c:503 -#, c-format -msgid "unhandled mode \"%s\"" -msgstr "処理されないモード \"%s\"" - #: 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:925 -#: pg_dump_sort.c:1251 pg_dump_sort.c:1271 +#: 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 #, c-format msgid "%s" msgstr "%s" -#: connectdb.c:157 pg_dumpall.c:552 pg_restore.c:544 +#: connectdb.c:157 pg_dumpall.c:514 #, c-format msgid "could not connect to database \"%s\"" msgstr "データベース\"%s\"へ接続できませんでした" @@ -606,32 +635,32 @@ msgstr "サーバーバージョンの不一致のため処理を中断します msgid "server version: %s; %s version: %s" msgstr "サーバーバージョン: %s、%s バージョン: %s" -#: connectdb.c:282 pg_dumpall.c:1864 +#: connectdb.c:282 pg_dumpall.c:1784 #, c-format msgid "executing %s" msgstr "%s を実行しています" -#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1870 +#: connectdb.c:288 pg_backup_db.c:210 pg_dumpall.c:1790 #, c-format msgid "query failed: %s" msgstr "問い合わせが失敗しました: %s" -#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1871 +#: connectdb.c:289 pg_backup_db.c:212 pg_dumpall.c:1791 #, c-format msgid "Query was: %s" msgstr "問い合わせ: %s" -#: dumputils.c:910 pg_dumpall.c:1662 +#: dumputils.c:948 #, c-format msgid "could not create directory \"%s\": %m" msgstr "ディレクトリ\"%s\"を作成できませんでした: %m" -#: dumputils.c:915 +#: dumputils.c:953 #, c-format msgid "could not change permissions of directory \"%s\": %m" msgstr "ディレクトリ\"%s\"の権限を変更できませんでした: %m" -#: dumputils.c:920 +#: dumputils.c:958 #, c-format msgid "directory \"%s\" is not empty" msgstr "ディレクトリ\"%s\"は空です" @@ -656,32 +685,32 @@ msgstr "標準入力からのフィルターの読み取り中%d行目に無効 msgid "invalid format in filter read from file \"%s\" on line %d: %s" msgstr "ファイル\"%s\"からのフィルターの読み取り中%d行目に無効なフォーマット: %s" -#: filter.c:240 filter.c:467 +#: filter.c:243 filter.c:470 #, c-format msgid "could not read from filter file \"%s\": %m" msgstr "フィルターファイル\"%s\"から読み取れませんでした: %m" -#: filter.c:243 +#: filter.c:246 msgid "unexpected end of file" msgstr "想定外のファイル終端です" -#: filter.c:310 +#: filter.c:313 msgid "missing object name pattern" msgstr "オブジェクト名のパターンが指定されていません" -#: filter.c:421 +#: filter.c:424 msgid "no filter command found (expected \"include\" or \"exclude\")" msgstr "フィルタコマンドが見つかりません (\"include\" または\"exclude\"が指定可能です)" -#: filter.c:432 +#: filter.c:435 msgid "invalid filter command (expected \"include\" or \"exclude\")" msgstr "不正なフィルターコマンド (\"include\"または\"exclude\"が指定可能です)" -#: filter.c:439 +#: filter.c:442 msgid "missing filter object type" msgstr "フィルターオブジェクトのタイプが指定されてません" -#: filter.c:446 +#: filter.c:449 #, c-format msgid "unsupported filter object type: \"%.*s\"" msgstr "サポートされないフィルターオブジェクトタイプ: \"%.*s\"" @@ -691,27 +720,27 @@ msgstr "サポートされないフィルターオブジェクトタイプ: \"%. msgid "%s() failed: error code %d" msgstr "%s()が失敗しました: エラーコード %d" -#: parallel.c:971 +#: parallel.c:961 #, c-format msgid "could not create communication channels: %m" msgstr "通信チャンネルを作成できませんでした: %m" -#: parallel.c:1028 +#: parallel.c:1018 #, c-format msgid "could not create worker process: %m" msgstr "ワーカープロセスを作成できませんでした: %m" -#: parallel.c:1158 +#: parallel.c:1148 #, c-format msgid "unrecognized command received from leader: \"%s\"" msgstr "リーダーから認識不能のコマンドを受信しました: \"%s\"" -#: parallel.c:1201 parallel.c:1439 +#: parallel.c:1191 parallel.c:1429 #, c-format msgid "invalid message received from worker: \"%s\"" msgstr "ワーカーから不正なメッセージを受信しました: \"%s\"" -#: parallel.c:1333 +#: parallel.c:1323 #, c-format msgid "" "could not obtain lock on relation \"%s\"\n" @@ -720,52 +749,52 @@ msgstr "" "リレーション\"%s\"のロックを獲得できませんでした。\n" "通常これは、pg_dumpの親プロセスが初期のACCESS SHAREロックを獲得した後にだれかがテーブルに対してACCESS EXCLUSIVEロックを要求したことを意味しています。" -#: parallel.c:1422 +#: parallel.c:1412 #, c-format msgid "a worker process died unexpectedly" msgstr "ワーカープロセスが突然終了しました" -#: parallel.c:1544 parallel.c:1662 +#: parallel.c:1534 parallel.c:1652 #, c-format msgid "could not write to the communication channel: %m" msgstr "通信チャンネルに書き込めませんでした: %m" -#: parallel.c:1746 +#: parallel.c:1736 #, c-format msgid "pgpipe: could not create socket: error code %d" msgstr "pgpipe: ソケットを作成できませんでした: エラーコード %d" -#: parallel.c:1757 +#: parallel.c:1747 #, c-format msgid "pgpipe: could not bind: error code %d" msgstr "pgpipe: バインドできませんでした: エラーコード %d" -#: parallel.c:1764 +#: parallel.c:1754 #, c-format msgid "pgpipe: could not listen: error code %d" msgstr "pgpipe: リッスンできませんでした: エラーコード %d" -#: parallel.c:1771 +#: parallel.c:1761 #, c-format msgid "pgpipe: %s() failed: error code %d" msgstr "pgpipe: %s()が失敗しました: エラーコード %d" -#: parallel.c:1782 +#: parallel.c:1772 #, c-format msgid "pgpipe: could not create second socket: error code %d" msgstr "pgpipe: 第二ソケットを作成できませんでした: エラーコード %d" -#: parallel.c:1791 +#: parallel.c:1781 #, c-format msgid "pgpipe: could not connect socket: error code %d" msgstr "pgpipe: ソケットを接続できませんでした: エラーコード %d" -#: parallel.c:1800 +#: parallel.c:1790 #, c-format msgid "pgpipe: could not accept connection: error code %d" msgstr "pgpipe: 接続を受け付けられませんでした: エラーコード %d" -#: pg_backup_archiver.c:269 pg_backup_archiver.c:1732 +#: pg_backup_archiver.c:269 pg_backup_archiver.c:1745 #, c-format msgid "could not close output file: %m" msgstr "出力ファイルをクローズできませんでした: %m" @@ -780,440 +809,440 @@ msgstr "アーカイブ項目が正しいセクション順ではありません msgid "unexpected section code %d" msgstr "想定外のセクションコード %d" -#: pg_backup_archiver.c:365 +#: pg_backup_archiver.c:360 #, c-format msgid "parallel restore is not supported with this archive file format" msgstr "このアーカイブファイル形式での並列はサポートしていません" -#: pg_backup_archiver.c:369 +#: pg_backup_archiver.c:364 #, c-format msgid "parallel restore is not supported with archives made by pre-8.0 pg_dump" msgstr "8.0 より古い pg_dump で作られたアーカイブでの並列リストアはサポートしていません" -#: pg_backup_archiver.c:390 +#: pg_backup_archiver.c:385 #, c-format msgid "cannot restore from compressed archive (%s)" msgstr "圧縮アーカイブから復元できませんでした(%s)" -#: pg_backup_archiver.c:410 +#: pg_backup_archiver.c:405 #, c-format msgid "connecting to database for restore" msgstr "リストアのためデータベースに接続しています" -#: pg_backup_archiver.c:412 +#: 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:455 +#: pg_backup_archiver.c:450 #, c-format msgid "implied no-schema restore" msgstr "暗黙的にスキーマなしのリストアを行います" -#: pg_backup_archiver.c:523 +#: pg_backup_archiver.c:529 #, c-format msgid "dropping %s %s" msgstr "%s %sを削除しています" -#: pg_backup_archiver.c:655 +#: pg_backup_archiver.c:661 #, c-format msgid "could not find where to insert IF EXISTS in statement \"%s\"" msgstr "文\"%s\"中に IF EXISTS を挿入すべき場所が見つかりませでした" -#: pg_backup_archiver.c:841 pg_backup_archiver.c:843 +#: 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:877 +#: pg_backup_archiver.c:891 #, c-format msgid "creating %s \"%s.%s\"" msgstr "%s \"%s.%s\"を作成しています" -#: pg_backup_archiver.c:880 +#: pg_backup_archiver.c:894 #, c-format msgid "creating %s \"%s\"" msgstr "%s \"%s\"を作成しています" -#: pg_backup_archiver.c:930 +#: pg_backup_archiver.c:944 #, c-format msgid "connecting to new database \"%s\"" msgstr "新しいデータベース\"%s\"に接続しています" -#: pg_backup_archiver.c:957 +#: pg_backup_archiver.c:971 #, c-format msgid "processing %s" msgstr "%sを処理しています" -#: pg_backup_archiver.c:979 +#: pg_backup_archiver.c:993 #, c-format msgid "processing data for table \"%s.%s\"" msgstr "テーブル\"%s.%s\"のデータを処理しています" -#: pg_backup_archiver.c:1049 +#: pg_backup_archiver.c:1063 #, c-format msgid "executing %s %s" msgstr "%s %sを実行しています" -#: pg_backup_archiver.c:1118 +#: pg_backup_archiver.c:1132 #, c-format msgid "disabling triggers for %s" msgstr "%sのトリガを無効にしています" -#: pg_backup_archiver.c:1144 +#: pg_backup_archiver.c:1158 #, c-format msgid "enabling triggers for %s" msgstr "%sのトリガを有効にしています" -#: pg_backup_archiver.c:1209 +#: 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:1404 +#: pg_backup_archiver.c:1418 #, c-format msgid "large-object output not supported in chosen format" msgstr "選択した形式ではラージオブジェクト出力をサポートしていません" -#: pg_backup_archiver.c:1467 +#: pg_backup_archiver.c:1481 #, c-format msgid "restored %d large object" msgid_plural "restored %d large objects" msgstr[0] "%d個のラージオブジェクトを復元しました" -#: pg_backup_archiver.c:1494 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:1506 +#: pg_backup_archiver.c:1520 #, c-format msgid "could not create large object %u: %s" msgstr "ラージオブジェクト %u を作成できませんでした: %s" -#: pg_backup_archiver.c:1511 pg_dump.c:4063 +#: pg_backup_archiver.c:1525 pg_dump.c:4085 #, c-format msgid "could not open large object %u: %s" msgstr "ラージオブジェクト %u をオープンできませんでした: %s" -#: pg_backup_archiver.c:1567 +#: pg_backup_archiver.c:1581 #, c-format msgid "could not open TOC file \"%s\": %m" msgstr "TOCファイル\"%s\"をオープンできませんでした: %m" -#: pg_backup_archiver.c:1595 +#: pg_backup_archiver.c:1609 #, c-format msgid "line ignored: %s" msgstr "行を無視しました: %s" -#: pg_backup_archiver.c:1602 pg_backup_db.c:548 +#: 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:1625 pg_backup_directory.c:187 -#: pg_backup_directory.c:586 +#: 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:1713 pg_backup_custom.c:151 pg_backup_directory.c:301 -#: pg_backup_directory.c:573 pg_backup_directory.c:639 -#: pg_backup_directory.c:657 pg_dumpall.c:534 +#: 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 #, c-format msgid "could not open output file \"%s\": %m" msgstr "出力ファイル\"%s\"をオープンできませんでした: %m" -#: pg_backup_archiver.c:1715 pg_backup_custom.c:157 +#: 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:1798 +#: 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)" msgstr[0] "ラージオブジェクトデータを%zuバイト書き出しました(結果は%d)" -#: pg_backup_archiver.c:1804 +#: pg_backup_archiver.c:1817 #, c-format msgid "could not write to large object: %s" msgstr "ラージオブジェクトに書き込めませんでした: %s" -#: pg_backup_archiver.c:1894 +#: pg_backup_archiver.c:1907 #, c-format msgid "while INITIALIZING:" msgstr "初期化中:" -#: pg_backup_archiver.c:1899 +#: pg_backup_archiver.c:1912 #, c-format msgid "while PROCESSING TOC:" msgstr "TOC処理中:" -#: pg_backup_archiver.c:1904 +#: pg_backup_archiver.c:1917 #, c-format msgid "while FINALIZING:" msgstr "終了処理中:" -#: pg_backup_archiver.c:1909 +#: 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:1985 +#: pg_backup_archiver.c:1998 #, c-format msgid "bad dumpId" msgstr "不正なdumpId" -#: pg_backup_archiver.c:2006 +#: pg_backup_archiver.c:2019 #, c-format msgid "bad table dumpId for TABLE DATA item" msgstr "TABLE DATA項目に対する不正なテーブルdumpId" -#: pg_backup_archiver.c:2098 +#: pg_backup_archiver.c:2111 #, c-format msgid "unexpected data offset flag %d" msgstr "想定外のデータオフセットフラグ %d" -#: pg_backup_archiver.c:2111 +#: pg_backup_archiver.c:2124 #, c-format msgid "file offset in dump file is too large" msgstr "ダンプファイルのファイルオフセットが大きすぎます" -#: pg_backup_archiver.c:2222 pg_restore.c:847 +#: pg_backup_archiver.c:2235 #, c-format msgid "directory name too long: \"%s\"" msgstr "ディレクトリ名が長すぎます: \"%s\"" -#: pg_backup_archiver.c:2272 +#: 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:2280 pg_backup_custom.c:168 pg_backup_custom.c:813 -#: pg_backup_directory.c:172 pg_backup_directory.c:364 +#: 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:2287 pg_backup_custom.c:174 +#: 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:2293 +#: pg_backup_archiver.c:2306 #, c-format msgid "could not read input file: %m" msgstr "入力ファイルを読み込めませんでした: %m" -#: pg_backup_archiver.c:2295 +#: pg_backup_archiver.c:2308 #, c-format msgid "input file is too short (read %lu, expected 5)" msgstr "入力ファイルが小さすぎます(読み取り%lu、想定は 5)" -#: pg_backup_archiver.c:2327 +#: 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:2333 +#: 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:2339 +#: pg_backup_archiver.c:2352 #, c-format msgid "input file does not appear to be a valid archive" msgstr "入力ファイルが有効なアーカイブではないようです" -#: pg_backup_archiver.c:2348 +#: pg_backup_archiver.c:2361 #, c-format msgid "could not close input file: %m" msgstr "入力ファイルをクローズできませんでした: %m" -#: pg_backup_archiver.c:2427 +#: pg_backup_archiver.c:2440 #, c-format msgid "could not open stdout for appending: %m" msgstr "標準出力を追記用にオープンできませんでした: %m" -#: pg_backup_archiver.c:2472 +#: pg_backup_archiver.c:2485 #, c-format msgid "unrecognized file format \"%d\"" msgstr "認識不能のファイル形式\"%d\"" -#: pg_backup_archiver.c:2553 pg_backup_archiver.c:4774 +#: 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:2557 pg_backup_archiver.c:4787 +#: 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:2655 +#: pg_backup_archiver.c:2668 #, c-format msgid "unexpected TOC entry in WriteToc(): %d %s %s" msgstr "WriteToc()で想定外のTOCエントリ: %d %s %s" -#: pg_backup_archiver.c:2659 pg_backup_custom.c:440 pg_backup_custom.c:506 +#: 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 "ファイルシーク中にエラーがありました: %m" -#: pg_backup_archiver.c:2717 +#: pg_backup_archiver.c:2730 #, c-format msgid "entry ID %d out of range -- perhaps a corrupt TOC" msgstr "エントリID%dは範囲外です -- おそらくTOCの破損です" -#: pg_backup_archiver.c:2800 +#: pg_backup_archiver.c:2813 #, c-format msgid "restoring tables WITH OIDS is not supported anymore" msgstr "WITH OIDSと定義されたテーブルのリストアは今後サポートされません" -#: pg_backup_archiver.c:2882 +#: pg_backup_archiver.c:2895 #, c-format msgid "unrecognized encoding \"%s\"" msgstr "認識不能のエンコーディング\"%s\"" -#: pg_backup_archiver.c:2888 +#: pg_backup_archiver.c:2901 #, c-format msgid "invalid ENCODING item: %s" msgstr "不正なENCODING項目: %s" -#: pg_backup_archiver.c:2906 +#: pg_backup_archiver.c:2919 #, c-format msgid "invalid STDSTRINGS item: %s" msgstr "不正なSTDSTRINGS項目: %s" -#: pg_backup_archiver.c:2931 +#: pg_backup_archiver.c:2944 #, c-format msgid "schema \"%s\" not found" msgstr "スキーマ \"%s\"が見つかりません" -#: pg_backup_archiver.c:2938 +#: pg_backup_archiver.c:2951 #, c-format msgid "table \"%s\" not found" msgstr "テーブル\"%s\"が見つかりません" -#: pg_backup_archiver.c:2945 +#: pg_backup_archiver.c:2958 #, c-format msgid "index \"%s\" not found" msgstr "インデックス\"%s\"が見つかりません" -#: pg_backup_archiver.c:2952 +#: pg_backup_archiver.c:2965 #, c-format msgid "function \"%s\" not found" msgstr "関数\"%s\"が見つかりません" -#: pg_backup_archiver.c:2959 +#: pg_backup_archiver.c:2972 #, c-format msgid "trigger \"%s\" not found" msgstr "トリガ\"%s\"が見つかりません" -#: pg_backup_archiver.c:3420 +#: pg_backup_archiver.c:3469 #, c-format msgid "could not set session user to \"%s\": %s" msgstr "セッションユーザーを\"%s\"に設定できませんでした: %s" -#: pg_backup_archiver.c:3552 +#: 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:3613 +#: 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:3662 +#: 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:3711 +#: pg_backup_archiver.c:3770 #, c-format msgid "could not alter table access method: %s" msgstr "テーブルアクセスメソッドを変更できませんでした: %s" -#: pg_backup_archiver.c:3812 +#: 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:3947 +#: pg_backup_archiver.c:4006 #, c-format msgid "unexpected TOC entry in _printTocEntry(): %d %s %s" msgstr "_printTocEntry()で想定外のTOCエントリ: %d %s %s" -#: pg_backup_archiver.c:4131 +#: pg_backup_archiver.c:4154 #, c-format msgid "did not find magic string in file header" msgstr "ファイルヘッダにマジック文字列がありませんでした" -#: pg_backup_archiver.c:4145 +#: pg_backup_archiver.c:4168 #, c-format msgid "unsupported version (%d.%d) in file header" msgstr "ファイルヘッダ内のバージョン(%d.%d)はサポートされていません" -#: pg_backup_archiver.c:4150 +#: pg_backup_archiver.c:4173 #, c-format msgid "sanity check on integer size (%lu) failed" msgstr "整数のサイズ(%lu)に関する健全性検査が失敗しました" -#: pg_backup_archiver.c:4154 +#: 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:4164 +#: 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:4186 +#: 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:4222 +#: pg_backup_archiver.c:4245 #, c-format msgid "invalid creation date in header" msgstr "ヘッダ内の作成日付が不正です" -#: pg_backup_archiver.c:4356 +#: pg_backup_archiver.c:4379 #, c-format msgid "processing item %d %s %s" msgstr "項目 %d %s %s を処理しています" -#: pg_backup_archiver.c:4441 +#: pg_backup_archiver.c:4464 #, c-format msgid "entering main parallel loop" msgstr "メインの並列ループに入ります" -#: pg_backup_archiver.c:4452 +#: pg_backup_archiver.c:4475 #, c-format msgid "skipping item %d %s %s" msgstr "項目 %d %s %s をスキップしています" -#: pg_backup_archiver.c:4461 +#: pg_backup_archiver.c:4484 #, c-format msgid "launching item %d %s %s" msgstr "項目 %d %s %s に着手します" -#: pg_backup_archiver.c:4515 +#: pg_backup_archiver.c:4538 #, c-format msgid "finished main parallel loop" msgstr "メインの並列ループが終了しました" -#: pg_backup_archiver.c:4551 +#: pg_backup_archiver.c:4574 #, c-format msgid "processing missed item %d %s %s" msgstr "やり残し項目 %d %s %s を処理しています" -#: pg_backup_archiver.c:5093 +#: pg_backup_archiver.c:5116 #, c-format msgid "table \"%s\" could not be created, will not restore its data" msgstr "テーブル\"%s\"を作成できませんでした、このテーブルのデータは復元されません" @@ -1329,7 +1358,7 @@ msgstr "PQputCopyEnd からエラーが返されました: %s" msgid "COPY failed for table \"%s\": %s" msgstr "テーブル\"%s\"へのコピーに失敗しました: %s" -#: pg_backup_db.c:460 pg_dump.c:2439 +#: pg_backup_db.c:460 pg_dump.c:2458 #, c-format msgid "unexpected extra results during COPY of table \"%s\"" msgstr "ファイル\"%s\"をCOPY中に想定していない余分な結果がありました" @@ -1347,58 +1376,47 @@ msgstr "データベーストランザクションをコミットできません msgid "no output directory specified" msgstr "出力ディレクトリが指定されていません" -#: pg_backup_directory.c:325 pg_backup_directory.c:479 -#: pg_backup_directory.c:517 -#, c-format -msgid "could not write to output file: %s" -msgstr "出力ファイルに書き込めませんでした: %s" - -#: pg_backup_directory.c:343 +#: pg_backup_directory.c:337 #, c-format msgid "could not close data file: %m" msgstr "データファイルをクローズできませんでした: %m" -#: pg_backup_directory.c:376 +#: pg_backup_directory.c:370 #, c-format msgid "could not close data file \"%s\": %m" msgstr "データファイル\"%s\"をクローズできませんでした: %m" -#: pg_backup_directory.c:428 +#: 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:439 +#: 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:448 +#: pg_backup_directory.c:442 #, c-format msgid "error reading large object TOC file \"%s\"" msgstr "ラージオブジェクトTOCファイル\"%s\"の読み取り中にエラーがありました" -#: pg_backup_directory.c:452 +#: 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:675 +#: pg_backup_directory.c:652 #, c-format msgid "could not close LO data file: %m" msgstr "ラージオブジェクトのデータファイルをクローズできませんでした: %m" -#: pg_backup_directory.c:685 -#, c-format -msgid "could not write to LOs TOC file: %s" -msgstr "ラージオブジェクトのTOCファイルに書き出せませんでした: %s" - -#: pg_backup_directory.c:701 +#: pg_backup_directory.c:671 #, c-format msgid "could not close LOs TOC file: %m" msgstr "ラージオブジェクトのTOCファイルをクローズできませんでした: %m" -#: pg_backup_directory.c:720 +#: pg_backup_directory.c:690 #, c-format msgid "file name too long: \"%s\"" msgstr "ファイル名が長すぎます: \"%s\"" @@ -1490,10 +1508,10 @@ msgstr "破損したtarヘッダが%sにありました(想定 %d、算出結果 msgid "unrecognized section name: \"%s\"" msgstr "認識不可のセクション名: \"%s\"" -#: pg_backup_utils.c:57 pg_dump.c:803 pg_dump.c:820 pg_dumpall.c:387 -#: pg_dumpall.c:397 pg_dumpall.c:405 pg_dumpall.c:413 pg_dumpall.c:420 -#: pg_dumpall.c:430 pg_dumpall.c:445 pg_dumpall.c:568 pg_restore.c:361 -#: pg_restore.c:377 pg_restore.c:388 pg_restore.c:398 pg_restore.c:527 +#: 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 #, c-format msgid "Try \"%s --help\" for more information." msgstr "詳細は\"%s --help\"を実行してください。" @@ -1503,55 +1521,50 @@ msgstr "詳細は\"%s --help\"を実行してください。" msgid "out of on_exit_nicely slots" msgstr "on_exit_nicelyスロットが足りません" -#: pg_dump.c:818 pg_dumpall.c:395 pg_restore.c:375 +#: 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:830 pg_restore.c:406 +#: 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:832 pg_restore.c:408 +#: 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:834 pg_restore.c:410 +#: 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:838 pg_restore.c:414 +#: 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:840 pg_restore.c:416 +#: 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:842 pg_restore.c:418 +#: 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:846 pg_restore.c:422 +#: pg_dump.c:842 pg_restore.c:396 #, c-format -msgid "options --with-data and --no-data cannot be used together" -msgstr "--with-data と --no-data オプションは同時には使用できません" +msgid "options --statistics and --no-statistics cannot be used together" +msgstr "オプション --statistics と --no-statistics とは同時には使用できません" -#: pg_dump.c:848 pg_restore.c:424 +#: pg_dump.c:846 pg_dump.c:849 pg_restore.c:400 pg_restore.c:403 #, c-format -msgid "options --with-schema and --no-schema cannot be used together" -msgstr "--with-schema と --no-schema オプションは同時には使用できません" - -#: pg_dump.c:850 pg_restore.c:426 -#, c-format -msgid "options --with-statistics and --no-statistics cannot be used together" -msgstr "オプション --with-statistics と --no-statistics とは同時には使用できません" +msgid "options %s and %s cannot be used together" +msgstr "オプション %s と %s は同時には使用できません" #: pg_dump.c:853 #, c-format @@ -1563,62 +1576,77 @@ msgstr "-s/--schema-only と --include-foreign-data オプションは同時に msgid "option --include-foreign-data is not supported with parallel backup" msgstr "オプション --include-foreign-data はパラレルバックアップではサポートされません" -#: pg_dump.c:859 pg_restore.c:429 +#: 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 オプションは同時には使用できません" -#: pg_dump.c:862 pg_dumpall.c:425 pg_restore.c:472 +#: pg_dump.c:862 pg_dumpall.c:423 pg_restore.c:448 #, c-format msgid "option --if-exists requires option -c/--clean" msgstr "--if-existsは -c/--clean の指定が必要です" -#: pg_dump.c:884 +#: 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:913 +#: pg_dump.c:898 pg_dumpall.c:498 pg_restore.c:373 +#, c-format +msgid "could not generate restrict key" +msgstr "制限キーを生成できませんでした" + +#: pg_dump.c:900 pg_dumpall.c:500 pg_restore.c:375 +#, c-format +msgid "invalid restrict key" +msgstr "不正な制限キー" + +#: pg_dump.c:903 +#, c-format +msgid "option --restrict-key can only be used with --format=plain" +msgstr "オプション --restrict-key は --format=plain を指定したときのみ指定可能です" + +#: pg_dump.c:925 #, c-format msgid "unrecognized compression algorithm: \"%s\"" msgstr "認識できない圧縮アルゴリズム: \"%s\"" -#: pg_dump.c:920 +#: pg_dump.c:932 #, c-format msgid "invalid compression specification: %s" msgstr "不正な圧縮指定: %s" -#: pg_dump.c:933 +#: pg_dump.c:945 #, c-format msgid "compression option \"%s\" is not currently supported by pg_dump" msgstr "圧縮オプション\"%s\"は現時点ではpg_dumpではサポートされていません" -#: pg_dump.c:945 +#: pg_dump.c:957 #, c-format msgid "parallel backup only supported by the directory format" msgstr "並列バックアップはディレクトリ形式でのみサポートされます" -#: pg_dump.c:991 +#: pg_dump.c:1003 #, c-format msgid "last built-in OID is %u" msgstr "最後の組み込みOIDは%u" -#: pg_dump.c:1000 +#: pg_dump.c:1012 #, c-format msgid "no matching schemas were found" msgstr "マッチするスキーマが見つかりません" -#: pg_dump.c:1017 +#: pg_dump.c:1029 #, c-format msgid "no matching tables were found" msgstr "マッチするテーブルが見つかりません" -#: pg_dump.c:1045 +#: pg_dump.c:1057 #, c-format msgid "no matching extensions were found" msgstr "合致する機能拡張が見つかりません" -#: pg_dump.c:1238 +#: pg_dump.c:1251 #, c-format msgid "" "%s exports a PostgreSQL database as an SQL script or to other formats.\n" @@ -1627,17 +1655,17 @@ msgstr "" "%sは、ひとつのPostgreSQLデータベースをSQLスクリプトまたは他の形式でエクスポートします。\n" "\n" -#: pg_dump.c:1239 pg_dumpall.c:703 pg_restore.c:657 +#: pg_dump.c:1252 pg_dumpall.c:694 pg_restore.c:523 #, c-format msgid "Usage:\n" msgstr "使用方法:\n" -#: pg_dump.c:1240 +#: pg_dump.c:1253 #, c-format msgid " %s [OPTION]... [DBNAME]\n" msgstr " %s [OPTION]... [DBNAME]\n" -#: pg_dump.c:1242 pg_dumpall.c:706 pg_restore.c:660 +#: pg_dump.c:1255 pg_dumpall.c:697 pg_restore.c:526 #, c-format msgid "" "\n" @@ -1646,12 +1674,12 @@ msgstr "" "\n" "一般的なオプション;\n" -#: pg_dump.c:1243 +#: pg_dump.c:1256 #, c-format msgid " -f, --file=FILENAME output file or directory name\n" msgstr " -f, --file=ファイル名 出力ファイルまたはディレクトリの名前\n" -#: pg_dump.c:1244 pg_dumpall.c:708 +#: pg_dump.c:1257 #, c-format msgid "" " -F, --format=c|d|t|p output file format (custom, directory, tar,\n" @@ -1660,22 +1688,22 @@ msgstr "" " -F, --format=c|d|t|p 出力ファイルの形式(custom, directory, tar, \n" " plain text(デフォルト))\n" -#: pg_dump.c:1246 +#: pg_dump.c:1259 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to dump\n" msgstr " -j, --jobs=NUM ダンプ時に指定した数の並列ジョブを使用\n" -#: pg_dump.c:1247 pg_dumpall.c:710 +#: pg_dump.c:1260 pg_dumpall.c:699 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose 冗長モード\n" -#: pg_dump.c:1248 pg_dumpall.c:711 +#: pg_dump.c:1261 pg_dumpall.c:700 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version バージョン情報を表示して終了\n" -#: pg_dump.c:1249 +#: pg_dump.c:1262 #, c-format msgid "" " -Z, --compress=METHOD[:DETAIL]\n" @@ -1684,29 +1712,29 @@ msgstr "" " -Z, --compress=方式[:詳細]\n" " 指定のとおり圧縮\n" -#: pg_dump.c:1251 pg_dumpall.c:712 +#: pg_dump.c:1264 pg_dumpall.c:701 #, 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:1252 pg_dumpall.c:744 +#: pg_dump.c:1265 pg_dumpall.c:733 #, c-format msgid " --no-sync do not wait for changes to be written safely to disk\n" msgstr " --no-sync 変更のディスクへの安全な書き出しを待機しない\n" -#: pg_dump.c:1253 +#: pg_dump.c:1266 #, c-format msgid " --sync-method=METHOD set method for syncing files to disk\n" msgstr "" " --sync-method=METHOD ファイルをディスクに同期させる方法を指定\n" "\n" -#: pg_dump.c:1254 pg_dumpall.c:713 +#: pg_dump.c:1267 pg_dumpall.c:702 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help このヘルプを表示して終了\n" -#: pg_dump.c:1256 pg_dumpall.c:714 +#: pg_dump.c:1269 pg_dumpall.c:703 #, c-format msgid "" "\n" @@ -1715,66 +1743,66 @@ msgstr "" "\n" "出力内容を制御するためのオプション:\n" -#: pg_dump.c:1257 pg_dumpall.c:715 +#: pg_dump.c:1270 pg_dumpall.c:704 #, c-format msgid " -a, --data-only dump only the data, not the schema or statistics\n" msgstr " -a, --data-only データのみをダンプし、スキーマまたは統計情報をダンプしない\n" -#: pg_dump.c:1258 +#: pg_dump.c:1271 #, c-format msgid " -b, --large-objects include large objects in dump\n" msgstr "" " -b, --large-objects ダンプにラージオブジェクトを含める\n" "\n" -#: pg_dump.c:1259 +#: pg_dump.c:1272 #, c-format msgid " --blobs (same as --large-objects, deprecated)\n" msgstr " --blobs (--large-objectsに同じ、非推奨)\n" -#: pg_dump.c:1260 +#: pg_dump.c:1273 #, c-format msgid " -B, --no-large-objects exclude large objects in dump\n" msgstr " -B, --no-large-objects ダンプにラージオブジェクトを含めない\n" -#: pg_dump.c:1261 +#: pg_dump.c:1274 #, c-format msgid " --no-blobs (same as --no-large-objects, deprecated)\n" msgstr "" " --no-blobs (--no-large-objectsに同じ、非推奨)\n" "\n" -#: pg_dump.c:1262 pg_restore.c:671 +#: pg_dump.c:1275 pg_restore.c:537 #, c-format msgid " -c, --clean clean (drop) database objects before recreating\n" msgstr " -c, --clean 再作成前にデータベースオブジェクトを整理(削除)\n" -#: pg_dump.c:1263 +#: pg_dump.c:1276 #, c-format msgid " -C, --create include commands to create database in dump\n" msgstr " -C, --create ダンプにデータベース生成用コマンドを含める\n" -#: pg_dump.c:1264 +#: pg_dump.c:1277 #, c-format msgid " -e, --extension=PATTERN dump the specified extension(s) only\n" msgstr " -e, --extension=PATTERN 指定した機能拡張(群)のみをダンプ\n" -#: pg_dump.c:1265 pg_dumpall.c:717 +#: pg_dump.c:1278 pg_dumpall.c:706 #, c-format msgid " -E, --encoding=ENCODING dump the data in encoding ENCODING\n" msgstr " -E, --encoding=ENCODING 指定した符号化方式でデータをダンプ\n" -#: pg_dump.c:1266 +#: pg_dump.c:1279 #, c-format msgid " -n, --schema=PATTERN dump the specified schema(s) only\n" msgstr " -n, --schema=SCHEMA 指定したスキーマ(群)のみをダンプ\n" -#: pg_dump.c:1267 +#: pg_dump.c:1280 #, c-format msgid " -N, --exclude-schema=PATTERN do NOT dump the specified schema(s)\n" msgstr " -N, --exclude-schema=SCHEMA 指定したスキーマ(群)をダンプしない\n" -#: pg_dump.c:1268 +#: pg_dump.c:1281 #, c-format msgid "" " -O, --no-owner skip restoration of object ownership in\n" @@ -1783,58 +1811,58 @@ msgstr "" " -O, --no-owner プレインテキスト形式で、オブジェクト所有権の\n" " 復元を行わない\n" -#: pg_dump.c:1270 pg_dumpall.c:721 +#: pg_dump.c:1283 pg_dumpall.c:710 #, c-format msgid " -s, --schema-only dump only the schema, no data or statistics\n" msgstr "" " -s, --schema-only スキーマのみをダンプし、データまたは統計情報を\n" " ダンプしない\n" -#: pg_dump.c:1271 +#: pg_dump.c:1284 #, 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:1272 +#: pg_dump.c:1285 #, c-format msgid " -t, --table=PATTERN dump only the specified table(s)\n" msgstr " -t, --table=PATTERN 指定したテーブル(群)のみをダンプ\n" -#: pg_dump.c:1273 +#: pg_dump.c:1286 #, c-format msgid " -T, --exclude-table=PATTERN do NOT dump the specified table(s)\n" msgstr " -T, --exclude-table=PATTERN 指定したテーブル(群)をダンプしない\n" -#: pg_dump.c:1274 pg_dumpall.c:724 +#: pg_dump.c:1287 pg_dumpall.c:713 #, c-format msgid " -x, --no-privileges do not dump privileges (grant/revoke)\n" msgstr " -x, --no-privileges 権限(grant/revoke)をダンプしない\n" -#: pg_dump.c:1275 pg_dumpall.c:725 +#: pg_dump.c:1288 pg_dumpall.c:714 #, c-format msgid " --binary-upgrade for use by upgrade utilities only\n" msgstr " --binary-upgrade アップグレードユーティリティ専用\n" -#: pg_dump.c:1276 pg_dumpall.c:726 +#: pg_dump.c:1289 pg_dumpall.c:715 #, c-format msgid " --column-inserts dump data as INSERT commands with column names\n" msgstr " --column-inserts 列名指定のINSERTコマンドでデータをダンプ\n" -#: pg_dump.c:1277 pg_dumpall.c:727 +#: pg_dump.c:1290 pg_dumpall.c:716 #, c-format msgid " --disable-dollar-quoting disable dollar quoting, use SQL standard quoting\n" msgstr "" " --disable-dollar-quoting ドル記号による引用符付けを禁止、SQL標準の引用符\n" " 付けを使用\n" -#: pg_dump.c:1278 pg_dumpall.c:728 pg_restore.c:689 +#: pg_dump.c:1291 pg_dumpall.c:717 pg_restore.c:554 #, c-format msgid " --disable-triggers disable triggers during data-only restore\n" msgstr " --disable-triggers データのみの復元の際にトリガを無効化\n" -#: pg_dump.c:1279 +#: pg_dump.c:1292 #, c-format msgid "" " --enable-row-security enable row security (dump only content user has\n" @@ -1843,12 +1871,12 @@ msgstr "" " --enable-row-security 行セキュリティを有効化(ユーザーがアクセス可能な\n" " 内容のみをダンプ)\n" -#: pg_dump.c:1281 +#: pg_dump.c:1294 #, c-format msgid " --exclude-extension=PATTERN do NOT dump the specified extension(s)\n" msgstr " --exclude-extension=PATTERN 指定した機能拡張(群)をダンプしない\n" -#: pg_dump.c:1282 +#: pg_dump.c:1295 #, c-format msgid "" " --exclude-table-and-children=PATTERN\n" @@ -1859,12 +1887,12 @@ msgstr "" " 指定したテーブル(群)を子テーブルを含めて\n" " ダンプしない\n" -#: pg_dump.c:1285 +#: pg_dump.c:1298 #, 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:1286 +#: pg_dump.c:1299 #, c-format msgid "" " --exclude-table-data-and-children=PATTERN\n" @@ -1875,12 +1903,12 @@ msgstr "" " 指定したテーブル(群)のデータを子テーブルを含めて\n" " ダンプしない\n" -#: pg_dump.c:1289 pg_dumpall.c:730 +#: pg_dump.c:1302 pg_dumpall.c:719 #, 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:1290 +#: pg_dump.c:1303 #, c-format msgid "" " --filter=FILENAME include or exclude objects and data from dump\n" @@ -1889,12 +1917,12 @@ msgstr "" " --filter=FILENAME オブジェクトやデータの指定や除外を\n" " FILENAMEに記述された式をもとに行う\n" -#: pg_dump.c:1292 pg_dumpall.c:732 pg_restore.c:694 +#: pg_dump.c:1305 pg_dumpall.c:721 pg_restore.c:558 #, c-format msgid " --if-exists use IF EXISTS when dropping objects\n" msgstr " --if-exists オブジェクト削除の際に IF EXISTS を使用\n" -#: pg_dump.c:1293 +#: pg_dump.c:1306 #, c-format msgid "" " --include-foreign-data=PATTERN\n" @@ -1905,123 +1933,133 @@ msgstr "" " PATTERNに合致する外部サーバー上の外部テーブルの\n" " データを含める\n" -#: pg_dump.c:1296 pg_dumpall.c:733 +#: pg_dump.c:1309 pg_dumpall.c:722 #, c-format msgid " --inserts dump data as INSERT commands, rather than COPY\n" msgstr " --inserts COPYではなくINSERTコマンドでデータをダンプ\n" -#: pg_dump.c:1297 pg_dumpall.c:734 +#: pg_dump.c:1310 pg_dumpall.c:723 #, c-format msgid " --load-via-partition-root load partitions via the root table\n" msgstr " --load-via-partition-root 子テーブルをルートテーブル経由でロードする\n" -#: pg_dump.c:1298 pg_dumpall.c:735 +#: pg_dump.c:1311 pg_dumpall.c:724 #, c-format msgid " --no-comments do not dump comment commands\n" msgstr " --no-comments コメントコマンドをダンプしない\n" -#: pg_dump.c:1299 pg_dumpall.c:736 +#: pg_dump.c:1312 pg_dumpall.c:725 #, c-format msgid " --no-data do not dump data\n" msgstr " --no-data データをダンプしない\n" -#: pg_dump.c:1300 pg_dumpall.c:737 +#: pg_dump.c:1313 pg_dumpall.c:726 #, c-format msgid " --no-policies do not dump row security policies\n" msgstr " --no-policies 行セキュリティポリシーをダンプしない\n" -#: pg_dump.c:1301 pg_dumpall.c:738 +#: pg_dump.c:1314 pg_dumpall.c:727 #, c-format msgid " --no-publications do not dump publications\n" msgstr " --no-publications パブリケーションをダンプしない\n" -#: pg_dump.c:1302 pg_dumpall.c:740 +#: pg_dump.c:1315 pg_dumpall.c:729 #, c-format msgid " --no-schema do not dump schema\n" msgstr " --no-schema スキーマをダンプしない\n" -#: pg_dump.c:1303 pg_dumpall.c:741 +#: pg_dump.c:1316 pg_dumpall.c:730 #, c-format msgid " --no-security-labels do not dump security label assignments\n" msgstr " --no-security-labels セキュリティラベルの割り当てをダンプしない\n" -#: pg_dump.c:1304 pg_dumpall.c:742 +#: pg_dump.c:1317 pg_dumpall.c:731 #, c-format msgid " --no-statistics do not dump statistics\n" msgstr " --no-statistics 統計情報をダンプしない\n" -#: pg_dump.c:1305 pg_dumpall.c:743 +#: pg_dump.c:1318 pg_dumpall.c:732 #, c-format msgid " --no-subscriptions do not dump subscriptions\n" msgstr " --no-subscriptions サブスクリプションをダンプしない\n" -#: pg_dump.c:1306 pg_dumpall.c:745 +#: pg_dump.c:1319 pg_dumpall.c:734 #, c-format msgid " --no-table-access-method do not dump table access methods\n" msgstr " --no-table-access-method テーブルアクセスメソッドをダンプしない\n" -#: pg_dump.c:1307 pg_dumpall.c:746 +#: pg_dump.c:1320 pg_dumpall.c:735 #, c-format msgid " --no-tablespaces do not dump tablespace assignments\n" msgstr " --no-tablespaces テーブルスペースの割り当てをダンプしない\n" -#: pg_dump.c:1308 pg_dumpall.c:747 +#: pg_dump.c:1321 pg_dumpall.c:736 #, c-format msgid " --no-toast-compression do not dump TOAST compression methods\n" msgstr " --no-toast-compression TOAST圧縮方式をダンプしない\n" -#: pg_dump.c:1309 pg_dumpall.c:748 +#: pg_dump.c:1322 pg_dumpall.c:737 #, c-format msgid " --no-unlogged-table-data do not dump unlogged table data\n" msgstr " --no-unlogged-table-data 非ログテーブルのデータをダンプしない\n" -#: pg_dump.c:1310 pg_dumpall.c:749 +#: pg_dump.c:1323 pg_dumpall.c:738 #, 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:1311 pg_dumpall.c:750 +#: pg_dump.c:1324 pg_dumpall.c:739 #, c-format msgid " --quote-all-identifiers quote all identifiers, even if not key words\n" msgstr "" " --quote-all-identifiers すべての識別子をキーワードでなかったとしても\n" " 引用符で囲む\n" -#: pg_dump.c:1312 pg_dumpall.c:751 +#: pg_dump.c:1325 pg_dumpall.c:740 pg_restore.c:571 +#, 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 #, 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:1313 +#: pg_dump.c:1327 #, 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:1314 pg_dumpall.c:752 +#: pg_dump.c:1328 pg_dumpall.c:742 #, c-format msgid " --sequence-data include sequence data in dump\n" msgstr " --sequence-data ダンプにシーケンスデータを含める\n" -#: pg_dump.c:1315 +#: pg_dump.c:1329 #, c-format msgid " --serializable-deferrable wait until the dump can run without anomalies\n" msgstr " --serializable-deferrable ダンプを異常なく実行できるようになるまで待機\n" -#: pg_dump.c:1316 +#: pg_dump.c:1330 #, c-format msgid " --snapshot=SNAPSHOT use given snapshot for the dump\n" msgstr " --snapshot=SNAPSHOT ダンプに指定のスナップショットを使用する\n" -#: pg_dump.c:1317 pg_dumpall.c:753 +#: pg_dump.c:1331 pg_dumpall.c:743 +#, c-format +msgid " --statistics dump the statistics\n" +msgstr " --statistics 統計情報をダンプする\n" + +#: pg_dump.c:1332 pg_dumpall.c:744 #, c-format msgid " --statistics-only dump only the statistics, not schema or data\n" msgstr "" " --statistics-only 統計情報のみをダンプし、スキーマまたはデータを\n" " ダンプしない\n" -#: pg_dump.c:1318 pg_restore.c:709 +#: pg_dump.c:1333 pg_restore.c:575 #, c-format msgid "" " --strict-names require table and/or schema include patterns to\n" @@ -2030,7 +2068,7 @@ msgstr "" " --strict-names テーブル/スキーマの対象パターンが最低でも\n" " 一つの実体にマッチすることを必須とする\n" -#: pg_dump.c:1320 +#: pg_dump.c:1335 #, c-format msgid "" " --table-and-children=PATTERN dump only the specified table(s), including\n" @@ -2039,7 +2077,7 @@ msgstr "" " --table-and-children=PATTERN 指定したテーブル(群)のみを子テーブル\n" " を含めてダンプ\n" -#: pg_dump.c:1322 pg_dumpall.c:754 pg_restore.c:712 +#: pg_dump.c:1337 pg_dumpall.c:745 pg_restore.c:578 #, c-format msgid "" " --use-set-session-authorization\n" @@ -2050,22 +2088,7 @@ msgstr "" " 所有者をセットする際、ALTER OWNERコマンドの代わり\n" " にSET SESSION AUTHORIZATIONコマンドを使用する\n" -#: pg_dump.c:1325 pg_dumpall.c:757 -#, c-format -msgid " --with-data dump the data\n" -msgstr " --with-data データをダンプする\n" - -#: pg_dump.c:1326 pg_dumpall.c:758 -#, c-format -msgid " --with-schema dump the schema\n" -msgstr " --with-schema スキーマをダンプする\n" - -#: pg_dump.c:1327 pg_dumpall.c:759 -#, c-format -msgid " --with-statistics dump the statistics\n" -msgstr " --with-statistics 統計情報をダンプする\n" - -#: pg_dump.c:1329 pg_dumpall.c:761 pg_restore.c:719 +#: pg_dump.c:1341 pg_dumpall.c:749 pg_restore.c:582 #, c-format msgid "" "\n" @@ -2074,46 +2097,46 @@ msgstr "" "\n" "接続オプション:\n" -#: pg_dump.c:1330 +#: pg_dump.c:1342 #, c-format msgid " -d, --dbname=DBNAME database to dump\n" msgstr " -d, --dbname=DBNAME ダンプするデータベース\n" -#: pg_dump.c:1331 pg_dumpall.c:763 pg_restore.c:720 +#: pg_dump.c:1343 pg_dumpall.c:751 pg_restore.c:583 #, c-format msgid " -h, --host=HOSTNAME database server host or socket directory\n" msgstr "" " -h, --host=HOSTNAME データベースサーバーのホストまたはソケット\n" " ディレクトリ\n" -#: pg_dump.c:1332 pg_dumpall.c:765 pg_restore.c:721 +#: pg_dump.c:1344 pg_dumpall.c:753 pg_restore.c:584 #, c-format msgid " -p, --port=PORT database server port number\n" msgstr " -p, --port=PORT データベースサーバーのポート番号\n" -#: pg_dump.c:1333 pg_dumpall.c:766 pg_restore.c:722 +#: pg_dump.c:1345 pg_dumpall.c:754 pg_restore.c:585 #, c-format msgid " -U, --username=NAME connect as specified database user\n" msgstr " -U, --username=NAME 指定したデータベースユーザーで接続\n" -#: pg_dump.c:1334 pg_dumpall.c:767 pg_restore.c:723 +#: pg_dump.c:1346 pg_dumpall.c:755 pg_restore.c:586 #, c-format msgid " -w, --no-password never prompt for password\n" msgstr " -w, --no-password パスワード入力を要求しない\n" -#: pg_dump.c:1335 pg_dumpall.c:768 pg_restore.c:724 +#: pg_dump.c:1347 pg_dumpall.c:756 pg_restore.c:587 #, c-format msgid " -W, --password force password prompt (should happen automatically)\n" msgstr "" " -W, --password パスワードプロンプトを強制表示\n" " (自動的に表示されるはず)\n" -#: pg_dump.c:1336 pg_dumpall.c:769 +#: pg_dump.c:1348 pg_dumpall.c:757 #, c-format msgid " --role=ROLENAME do SET ROLE before dump\n" msgstr " --role=ROLENAME ダンプの前に SET ROLE を行う\n" -#: pg_dump.c:1338 +#: pg_dump.c:1350 #, c-format msgid "" "\n" @@ -2125,565 +2148,559 @@ msgstr "" "データベース名が指定されなかった場合、環境変数PGDATABASEが使用されます\n" "\n" -#: pg_dump.c:1340 pg_dumpall.c:773 pg_restore.c:731 +#: pg_dump.c:1352 pg_dumpall.c:761 pg_restore.c:594 #, c-format msgid "Report bugs to <%s>.\n" msgstr "バグは<%s>に報告してください。\n" -#: pg_dump.c:1341 pg_dumpall.c:774 pg_restore.c:732 +#: pg_dump.c:1353 pg_dumpall.c:762 pg_restore.c:595 #, c-format msgid "%s home page: <%s>\n" msgstr "%s ホームページ: <%s>\n" -#: pg_dump.c:1360 pg_dumpall.c:585 +#: pg_dump.c:1372 pg_dumpall.c:560 #, c-format msgid "invalid client encoding \"%s\" specified" msgstr "不正なクライアントエンコーディング\"%s\"が指定されました" -#: pg_dump.c:1508 +#: pg_dump.c:1520 #, c-format msgid "parallel dumps from standby servers are not supported by this server version" msgstr "スタンバイサーバーからの並列ダンプはこのサーバーバージョンではサポートされません" -#: pg_dump.c:1573 +#: pg_dump.c:1585 #, c-format msgid "invalid output format \"%s\" specified" msgstr "不正な出力形式\"%s\"が指定されました" -#: pg_dump.c:1614 pg_dump.c:1670 pg_dump.c:1723 pg_dumpall.c:1598 -#: pg_restore.c:984 +#: pg_dump.c:1626 pg_dump.c:1682 pg_dump.c:1735 pg_dumpall.c:1588 #, c-format msgid "improper qualified name (too many dotted names): %s" msgstr "修飾名が不適切です(ドット区切りの名前が多すぎます): %s" -#: pg_dump.c:1622 +#: pg_dump.c:1634 #, c-format msgid "no matching schemas were found for pattern \"%s\"" msgstr "パターン\"%s\"にマッチするスキーマが見つかりません" -#: pg_dump.c:1675 +#: pg_dump.c:1687 #, c-format msgid "no matching extensions were found for pattern \"%s\"" msgstr "パターン\"%s\"に合致する機能拡張が見つかりません" -#: pg_dump.c:1728 +#: pg_dump.c:1740 #, c-format msgid "no matching foreign servers were found for pattern \"%s\"" msgstr "パターン\"%s\"にマッチする外部サーバーが見つかりません" -#: pg_dump.c:1799 +#: pg_dump.c:1811 #, c-format msgid "improper relation name (too many dotted names): %s" msgstr "リレーション名が不適切です(ドット区切りの名前が多すぎます): %s" -#: pg_dump.c:1821 +#: pg_dump.c:1833 #, c-format msgid "no matching tables were found for pattern \"%s\"" msgstr "パターン \"%s\"にマッチするテーブルが見つかりません" -#: pg_dump.c:1848 +#: pg_dump.c:1860 #, c-format msgid "You are currently not connected to a database." msgstr "現在データベースに接続していません。" -#: pg_dump.c:1851 +#: pg_dump.c:1863 #, c-format msgid "cross-database references are not implemented: %s" msgstr "データベース間の参照は実装されていません: %s" -#: pg_dump.c:2310 +#: pg_dump.c:2329 #, c-format msgid "dumping contents of table \"%s.%s\"" msgstr "テーブル \"%s.%s\"の内容をダンプしています" -#: pg_dump.c:2420 +#: pg_dump.c:2439 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetCopyData() failed." msgstr "テーブル\"%s\"の内容のダンプに失敗: PQgetCopyData()が失敗しました。" -#: pg_dump.c:2421 pg_dump.c:2431 +#: pg_dump.c:2440 pg_dump.c:2450 #, c-format msgid "Error message from server: %s" msgstr "サーバーのエラーメッセージ: %s" -#: pg_dump.c:2422 pg_dump.c:2432 pg_restore.c:1363 +#: pg_dump.c:2441 pg_dump.c:2451 #, c-format msgid "Command was: %s" msgstr "コマンド: %s" -#: pg_dump.c:2430 +#: pg_dump.c:2449 #, c-format msgid "Dumping the contents of table \"%s\" failed: PQgetResult() failed." msgstr "テーブル\"%s\"の内容のダンプに失敗: PQgetResult()が失敗しました。" -#: pg_dump.c:2521 +#: pg_dump.c:2540 #, c-format msgid "wrong number of fields retrieved from table \"%s\"" msgstr "テーブル\"%s\"から取得したフィールドの数が間違っています" -#: pg_dump.c:3236 +#: pg_dump.c:3258 #, c-format msgid "saving database definition" msgstr "データベース定義を保存しています" -#: pg_dump.c:3351 +#: pg_dump.c:3373 #, c-format msgid "unrecognized locale provider: %s" msgstr "認識できない照合順序プロバイダ: %s" -#: pg_dump.c:3712 +#: pg_dump.c:3734 #, c-format msgid "saving encoding = %s" msgstr "encoding = %s を保存しています" -#: pg_dump.c:3737 +#: pg_dump.c:3759 #, c-format msgid "saving \"standard_conforming_strings = %s\"" msgstr "\"standard_conforming_strings = %s\" を保存しています" -#: pg_dump.c:3776 +#: pg_dump.c:3798 #, c-format msgid "could not parse result of current_schemas()" msgstr "current_schemas()の結果をパースできませんでした" -#: pg_dump.c:3795 +#: pg_dump.c:3817 #, c-format msgid "saving \"search_path = %s\"" msgstr "\"search_path = %s\" を保存しています" -#: pg_dump.c:3831 +#: pg_dump.c:3853 #, c-format msgid "reading large objects" msgstr "ラージオブジェクトを読み込んでいます" -#: pg_dump.c:4052 +#: pg_dump.c:4074 #, c-format msgid "saving large objects \"%s\"" msgstr "ラージオブジェクト\"%s\"を保存しています" -#: pg_dump.c:4073 +#: pg_dump.c:4095 #, c-format msgid "error reading large object %u: %s" msgstr "ラージオブジェクト %u を読み取り中にエラーがありました: %s" -#: pg_dump.c:4181 +#: pg_dump.c:4203 #, c-format msgid "reading row-level security policies" msgstr "行レベルセキュリティポリシーを読み取ります" -#: pg_dump.c:4322 +#: pg_dump.c:4344 #, c-format msgid "unexpected policy command type: %c" msgstr "想定外のポリシコマンドタイプ: \"%c\"" -#: pg_dump.c:4764 pg_dump.c:5321 pg_dump.c:7919 pg_dump.c:13307 pg_dump.c:19425 -#: pg_dump.c:19427 pg_dump.c:20059 +#: 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 #, c-format msgid "could not parse %s array" msgstr "%s配列をパースできませんでした" -#: pg_dump.c:4980 +#: pg_dump.c:5002 #, c-format msgid "subscriptions not dumped because current user is not a superuser" msgstr "現在のユーザーがスーパーユーザーではないため、サブスクリプションはダンプされません" -#: pg_dump.c:5184 +#: pg_dump.c:5206 #, c-format msgid "subscription with OID %u does not exist" msgstr "OID %uのサブスクリプションは存在しません" -#: pg_dump.c:5191 +#: pg_dump.c:5213 #, c-format msgid "failed sanity check, table with OID %u not found" msgstr "健全性検査に失敗しました、OID %uのテーブルがありません" -#: pg_dump.c:5777 +#: pg_dump.c:5799 #, c-format msgid "could not find parent extension for %s %s" msgstr "%s %sの親となる機能拡張がありませんでした" -#: pg_dump.c:5915 +#: pg_dump.c:5937 #, c-format msgid "schema with OID %u does not exist" msgstr "OID %uのスキーマは存在しません" -#: pg_dump.c:6941 +#: pg_dump.c:6994 #, c-format msgid "cannot dump statistics for relation kind \"%c\"" msgstr "リレーション種別 '%c' の統計情報はダンプできません" -#: pg_dump.c:7453 pg_dump.c:18769 +#: pg_dump.c:7506 pg_dump.c:18987 #, 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:7598 +#: pg_dump.c:7651 #, 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:7863 pg_dump.c:8156 pg_dump.c:8597 pg_dump.c:9234 pg_dump.c:9369 -#: pg_dump.c:9514 pg_dump.c:9614 +#: 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 #, c-format msgid "unrecognized table OID %u" msgstr "認識できないテーブルOID %u" -#: pg_dump.c:7867 +#: pg_dump.c:7920 #, c-format msgid "unexpected index data for table \"%s\"" msgstr "テーブル\"%s\"に対する想定外のインデックスデータ" -#: pg_dump.c:8384 +#: pg_dump.c:8459 #, 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:9238 +#: pg_dump.c:9321 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "テーブル\"%s\"に対する想定外の列データ" -#: pg_dump.c:9269 +#: pg_dump.c:9353 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "テーブル\"%s\"の列番号が不正です" -#: pg_dump.c:9331 +#: pg_dump.c:9418 #, c-format msgid "finding table default expressions" msgstr "テーブルのデフォルト式を探しています" -#: pg_dump.c:9373 +#: pg_dump.c:9460 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "テーブル\"%2$s\"用のadnumの値%1$dが不正です" -#: pg_dump.c:9466 +#: pg_dump.c:9553 #, c-format msgid "finding invalid not-null constraints" msgstr "未検証の非NULL制約を探しています" -#: pg_dump.c:9564 +#: pg_dump.c:9651 #, c-format msgid "finding table check constraints" msgstr "テーブルのチェック制約を探しています" -#: pg_dump.c:9618 +#: pg_dump.c:9705 #, 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:9622 +#: pg_dump.c:9709 #, c-format msgid "The system catalogs might be corrupted." msgstr "システムカタログが破損している可能性があります。" -#: pg_dump.c:10423 +#: pg_dump.c:10514 #, c-format msgid "role with OID %u does not exist" msgstr "OID が %u であるロールは存在しません" -#: pg_dump.c:10535 pg_dump.c:10564 +#: pg_dump.c:10626 pg_dump.c:10655 #, c-format msgid "unsupported pg_init_privs entry: %u %u %d" msgstr "非サポートのpg_init_privsエントリ: %u %u %d" -#: pg_dump.c:10860 +#: pg_dump.c:10951 #, 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:11001 +#: pg_dump.c:11092 #, c-format msgid "unexpected null attname" msgstr "attname が NULL です" -#: pg_dump.c:11030 +#: pg_dump.c:11121 #, c-format msgid "could not find index attname \"%s\"" msgstr "\"%s\" というインデックスのattnameは見つかりませんでした" -#: pg_dump.c:11516 +#: pg_dump.c:11607 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "ラージオブジェクト\"%s\"のメタデータがありません" -#: pg_dump.c:11802 +#: pg_dump.c:11893 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "データ型\"%s\"のtyptypeが不正なようです" -#: pg_dump.c:13378 +#: pg_dump.c:13521 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "関数\"%s\"のprovolatileの値が認識できません" -#: pg_dump.c:13428 pg_dump.c:15324 +#: pg_dump.c:13571 pg_dump.c:15467 #, c-format msgid "unrecognized proparallel value for function \"%s\"" msgstr "関数\"%s\"のproparallel値が認識できません" -#: pg_dump.c:13558 pg_dump.c:13664 pg_dump.c:13671 +#: pg_dump.c:13701 pg_dump.c:13807 pg_dump.c:13814 #, c-format msgid "could not find function definition for function with OID %u" msgstr "OID %uの関数の関数定義が見つかりませんでした" -#: pg_dump.c:13597 +#: pg_dump.c:13740 #, c-format msgid "bogus value in pg_cast.castfunc or pg_cast.castmethod field" msgstr "pg_cast.castfuncまたはpg_cast.castmethodフィールドの値がおかしいです" -#: pg_dump.c:13600 +#: pg_dump.c:13743 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "pg_cast.castmethod フィールドの値がおかしいです" -#: pg_dump.c:13690 +#: pg_dump.c:13833 #, c-format msgid "bogus transform definition, at least one of trffromsql and trftosql should be nonzero" msgstr "おかしな変換定義、trffromsql か trftosql の少なくとも一方は非ゼロであるはずです" -#: pg_dump.c:13707 +#: pg_dump.c:13850 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "pg_cast.castmethod フィールドの値がおかしいです" -#: pg_dump.c:13728 +#: pg_dump.c:13871 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "pg_cast.castmethod フィールドの値がおかしいです" -#: pg_dump.c:13873 +#: pg_dump.c:14016 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "後置演算子は今後サポートされません(演算子\"%s\")" -#: pg_dump.c:14043 +#: pg_dump.c:14186 #, c-format msgid "could not find operator with OID %s" msgstr "OID %sの演算子がありませんでした" -#: pg_dump.c:14111 +#: pg_dump.c:14254 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "アクセスメソッド\"%2$s\"の不正なタイプ\"%1$c\"" -#: pg_dump.c:14785 pg_dump.c:14853 +#: pg_dump.c:14928 pg_dump.c:14996 #, c-format msgid "unrecognized collation provider: %s" msgstr "認識できないの照合順序プロバイダ: %s" -#: pg_dump.c:14794 pg_dump.c:14801 pg_dump.c:14812 pg_dump.c:14822 -#: pg_dump.c:14837 +#: pg_dump.c:14937 pg_dump.c:14944 pg_dump.c:14955 pg_dump.c:14965 +#: pg_dump.c:14980 #, c-format msgid "invalid collation \"%s\"" msgstr "不正な照合順序\"%s\"" -#: pg_dump.c:15243 +#: pg_dump.c:15386 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "集約\"%s\"のaggfinalmodifyの値が識別できません" -#: pg_dump.c:15299 +#: pg_dump.c:15442 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "集約\"%s\"のaggmfinalmodifyの値が識別できません" -#: pg_dump.c:16019 +#: pg_dump.c:16162 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "デフォルト権限設定中の認識できないオブジェクト型: %d" -#: pg_dump.c:16035 +#: pg_dump.c:16178 #, c-format msgid "could not parse default ACL list (%s)" msgstr "デフォルトの ACL リスト(%s)をパースできませんでした" -#: pg_dump.c:16119 +#: pg_dump.c:16262 #, 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:16144 +#: pg_dump.c:16287 #, 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:16687 +#: pg_dump.c:16830 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "ビュー\"%s\"の定義を取り出すための問い合わせがデータを返却しませんでした" -#: pg_dump.c:16690 +#: pg_dump.c:16833 #, c-format msgid "query to obtain definition of view \"%s\" returned more than one definition" msgstr "ビュー\"%s\"の定義を取り出すための問い合わせが2つ以上の定義を返却しました" -#: pg_dump.c:16697 +#: pg_dump.c:16840 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "ビュー\"%s\"の定義が空のようです(長さが0)" -#: pg_dump.c:16782 +#: pg_dump.c:16925 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "WITH OIDSは今後サポートされません(テーブル\"%s\")" -#: pg_dump.c:17872 +#: pg_dump.c:18065 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "テーブル\"%2$s\"の列番号%1$dは不正です" -#: pg_dump.c:17950 +#: pg_dump.c:18143 #, c-format msgid "could not parse index statistic columns" msgstr "インデックス統計列をパースできませんでした" -#: pg_dump.c:17952 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic values" msgstr "インデックス統計値をパースできませんでした" -#: pg_dump.c:17954 +#: pg_dump.c:18147 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "インデックス統計に対して列と値の数が合致しません" -#: pg_dump.c:18183 +#: pg_dump.c:18376 #, c-format msgid "missing index for constraint \"%s\"" msgstr "制約\"%s\"のインデックスが見つかりません" -#: pg_dump.c:18427 +#: pg_dump.c:18645 #, c-format msgid "unrecognized constraint type: %c" msgstr "制約のタイプが識別できません: %c" -#: pg_dump.c:18480 +#: pg_dump.c:18698 #, c-format msgid "unrecognized sequence type: %s" msgstr "認識されないシーケンスの型\"%s\"" -#: pg_dump.c:18612 pg_dump.c:18844 +#: pg_dump.c:18830 pg_dump.c:19062 #, 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:18648 +#: pg_dump.c:18866 #, c-format msgid "unrecognized sequence type: %d" msgstr "認識されないシーケンスの型: %d" -#: pg_dump.c:19177 +#: pg_dump.c:19400 #, 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:19330 +#: pg_dump.c:19553 #, c-format msgid "could not find referenced extension %u" msgstr "親の機能拡張%uが見つかりません" -#: pg_dump.c:19429 +#: pg_dump.c:19652 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "機能拡張に対して設定と条件の数が一致しません" -#: pg_dump.c:19561 +#: pg_dump.c:19784 #, c-format msgid "reading dependency data" msgstr "データの依存データを読み込んでいます" -#: pg_dump.c:19647 +#: pg_dump.c:19870 #, c-format msgid "no referencing object %u %u" msgstr "参照元オブジェクト%u %uがありません" -#: pg_dump.c:19658 +#: pg_dump.c:19881 #, c-format msgid "no referenced object %u %u" msgstr "参照先オブジェクト%u %uがありません" -#: pg_dump.c:20093 pg_dump.c:20131 pg_dumpall.c:1916 pg_restore.c:766 -#: pg_restore.c:812 +#: pg_dump.c:20316 pg_dump.c:20354 pg_dumpall.c:1836 pg_restore.c:629 +#: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "\"%2$s\"に対しては%1$sフィルターを指定できません" -#: pg_dump_sort.c:436 +#: pg_dump_sort.c:648 #, c-format msgid "invalid dumpId %d" msgstr "不正なdumpId %d" -#: pg_dump_sort.c:442 +#: pg_dump_sort.c:654 #, c-format msgid "invalid dependency %d" msgstr "不正な依存関係 %d" -#: pg_dump_sort.c:606 +#: pg_dump_sort.c:818 #, c-format msgid "could not identify dependency loop" msgstr "依存関係のループが見つかりませんでした" -#: pg_dump_sort.c:1247 +#: pg_dump_sort.c:1462 #, 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:1252 +#: pg_dump_sort.c:1467 #, 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:1253 +#: pg_dump_sort.c:1468 #, 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:1265 +#: pg_dump_sort.c:1480 #, c-format msgid "could not resolve dependency loop among these items:" msgstr "以下の項目の間の依存関係のループを解決できませんでした:" -#: pg_dumpall.c:246 +#: pg_dumpall.c:240 #, c-format msgid "program \"%s\" is needed by %s but was not found in the same directory as \"%s\"" msgstr "%2$sには\"%1$s\"プログラムが必要ですが、\"%3$s\"と同じディレクトリにありませんでした。" -#: pg_dumpall.c:249 +#: pg_dumpall.c:243 #, c-format msgid "program \"%s\" was found by \"%s\" but was not the same version as %s" msgstr "\"%2$s\"がプログラム\"%1$s\"を見つけましたが、これは%3$sと同じバージョンではありませんでした。" -#: pg_dumpall.c:404 +#: 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:412 +#: 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:419 +#: 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:429 +#: 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:444 -#, c-format -msgid "option -F/--format=d|c|t requires option -f/--file" -msgstr "オプション -F/--format=d|c|t はオプション -f/--file の指定が必要です" - -#: pg_dumpall.c:566 +#: pg_dumpall.c:528 #, c-format msgid "" "could not connect to databases \"postgres\" or \"template1\"\n" @@ -2692,89 +2709,89 @@ msgstr "" "\"postgres\"または\"template1\"データベースに接続できませんでした\n" "代わりのデータベースを指定してください。" -#: pg_dumpall.c:702 +#: pg_dumpall.c:693 #, c-format msgid "" -"%s exports a PostgreSQL database cluster as an SQL script or to other formats.\n" +"%s exports a PostgreSQL database cluster as an SQL script.\n" "\n" msgstr "" -"%sは、PostgreSQLデータベースクラスタをSQLスクリプトまたは他の形式でエクスポートします。\n" +"%sは、PostgreSQLデータベースクラスタをSQLスクリプト形式でエクスポートします。\n" "\n" -#: pg_dumpall.c:704 +#: pg_dumpall.c:695 #, c-format msgid " %s [OPTION]...\n" msgstr " %s [OPTION]...\n" -#: pg_dumpall.c:707 +#: pg_dumpall.c:698 #, c-format msgid " -f, --file=FILENAME output file name\n" msgstr " -f, --file=ファイル名 出力ファイル名\n" -#: pg_dumpall.c:716 +#: pg_dumpall.c:705 #, c-format msgid " -c, --clean clean (drop) databases before recreating\n" msgstr " -c, --clean 再作成前にデータベースを整理(削除)\n" -#: pg_dumpall.c:718 +#: pg_dumpall.c:707 #, c-format msgid " -g, --globals-only dump only global objects, no databases\n" msgstr "" " -g, --globals-only グローバルオブジェクトのみをダンプし、\n" " データベースをダンプしない\n" -#: pg_dumpall.c:719 pg_restore.c:681 +#: pg_dumpall.c:708 pg_restore.c:546 #, c-format msgid " -O, --no-owner skip restoration of object ownership\n" msgstr " -O, --no-owner オブジェクトの所有権の復元を省略\n" -#: pg_dumpall.c:720 +#: pg_dumpall.c:709 #, c-format msgid " -r, --roles-only dump only roles, no databases or tablespaces\n" msgstr "" " -r, --roles-only ロールのみをダンプ。\n" " データベースとテーブル空間をダンプしない\n" -#: pg_dumpall.c:722 +#: pg_dumpall.c:711 #, c-format msgid " -S, --superuser=NAME superuser user name to use in the dump\n" msgstr "" " -S, --superuser=NAME ダンプで使用するスーパーユーザーのユーザー名を\n" " 指定\n" -#: pg_dumpall.c:723 +#: pg_dumpall.c:712 #, c-format msgid " -t, --tablespaces-only dump only tablespaces, no databases or roles\n" msgstr "" " -t, --tablespaces-only テーブル空間のみをダンプ。データベースとロールを\n" " ダンプしない\n" -#: pg_dumpall.c:729 +#: pg_dumpall.c:718 #, c-format msgid " --exclude-database=PATTERN exclude databases whose name matches PATTERN\n" msgstr " --exclude-database=PATTERN PATTERNに合致する名前のデータベースを除外\n" -#: pg_dumpall.c:731 +#: pg_dumpall.c:720 #, c-format msgid " --filter=FILENAME exclude databases based on expressions in FILENAME\n" msgstr " --filter=FILENAME FILENAMEで指定された式に基づいてデータベースを除外する\n" -#: pg_dumpall.c:739 +#: pg_dumpall.c:728 #, c-format msgid " --no-role-passwords do not dump passwords for roles\n" msgstr " --no-role-passwords ロールのパスワードをダンプしない\n" -#: pg_dumpall.c:762 +#: pg_dumpall.c:750 #, c-format msgid " -d, --dbname=CONNSTR connect using connection string\n" msgstr " -d, --dbname=CONSTR 接続文字列を用いた接続\n" -#: pg_dumpall.c:764 +#: pg_dumpall.c:752 #, c-format msgid " -l, --database=DBNAME alternative default database\n" msgstr " -l, --database=DBNAME 代替のデフォルトデータベースを指定\n" -#: pg_dumpall.c:771 +#: pg_dumpall.c:759 #, c-format msgid "" "\n" @@ -2786,198 +2803,158 @@ msgstr "" "-f/--file が指定されない場合、SQLスクリプトは標準出力に書き出されます。\n" "\n" -#: pg_dumpall.c:916 +#: pg_dumpall.c:904 #, c-format msgid "role name starting with \"pg_\" skipped (%s)" msgstr "\"pg_\"で始まるロール名はスキップされました(%s)" #. translator: %s represents a numeric role OID -#: pg_dumpall.c:1130 pg_dumpall.c:1188 pg_dumpall.c:1197 +#: pg_dumpall.c:1121 pg_dumpall.c:1179 pg_dumpall.c:1188 #, c-format msgid "found orphaned pg_auth_members entry for role %s" msgstr "ロール %s に対する pg_auth_members エントリがありましたが、このロールは存在しません" -#: pg_dumpall.c:1163 +#: pg_dumpall.c:1154 #, c-format msgid "could not find a legal dump ordering for memberships in role \"%s\"" msgstr "ロール\"%s\"のメンバーシップに対して正当なダンプ順序が見つかりませんでした" -#: pg_dumpall.c:1318 +#: pg_dumpall.c:1309 #, c-format msgid "could not parse ACL list (%s) for parameter \"%s\"" msgstr "パラメータ\"%2$s\"のACLリスト(%1$s)をパースできませんでした" -#: pg_dumpall.c:1445 +#: pg_dumpall.c:1436 #, c-format msgid "could not parse ACL list (%s) for tablespace \"%s\"" msgstr "テーブル空間\"%2$s\"のACLリスト(%1$s)をパースできませんでした" -#: pg_dumpall.c:1686 pg_restore.c:1014 +#: pg_dumpall.c:1650 #, c-format msgid "excluding database \"%s\"" msgstr "データベース\"%s\"を除外します" -#: pg_dumpall.c:1707 +#: pg_dumpall.c:1654 #, c-format msgid "dumping database \"%s\"" msgstr "データベース\"%s\"をダンプしています" -#: pg_dumpall.c:1736 +#: pg_dumpall.c:1687 #, c-format msgid "pg_dump failed on database \"%s\", exiting" msgstr "データベース\"%s\"のダンプが失敗しました、終了します" -#: pg_dumpall.c:1749 +#: pg_dumpall.c:1693 #, c-format msgid "could not re-open the output file \"%s\": %m" msgstr "出力ファイル\"%s\"を再オープンできませんでした: %m" -#: pg_dumpall.c:1817 +#: pg_dumpall.c:1737 #, c-format msgid "running \"%s\"" msgstr "\"%s\"を実行しています" -#: pg_dumpall.c:1936 +#: pg_dumpall.c:1856 msgid "unsupported filter object" msgstr "サポートされていないフィルターオブジェクト" -#: pg_dumpall.c:1979 -#, c-format -msgid "unrecognized output format \"%s\"; please specify \"c\", \"d\", \"p\", or \"t\"" -msgstr "認識不能の出力形式\"%s\"; \"c\"、\"d\"、\"p\" または\"t\"を指定してください" - -#: pg_restore.c:383 +#: 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:387 -#, c-format -msgid "option --exclude-database cannot be used together with -g/--globals-only" -msgstr "オプション --exclude-database は -g/--globals-only と一緒には使用できません" - -#: pg_restore.c:397 +#: 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:432 +#: 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:439 +#: 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:443 +#: pg_restore.c:421 #, c-format msgid "cannot specify both --single-transaction and multiple jobs" msgstr "--single-transaction と複数ジョブは同時には指定できません" -#: pg_restore.c:491 +#: pg_restore.c:467 #, c-format msgid "archive format \"%s\" is not supported; please use psql" msgstr "アーカイブ形式\"%s\"はサポートされていません、psqlを使ってください" -#: pg_restore.c:495 +#: pg_restore.c:471 #, c-format msgid "unrecognized archive format \"%s\"; please specify \"c\", \"d\", or \"t\"" msgstr "アーカイブ形式\"%s\"が認識できません; \"c\"、\"d\"または\"t\"を指定してください" -#: pg_restore.c:516 -#, c-format -msgid "option -l/--list cannot be used when restoring an archive created by pg_dumpall" -msgstr "オプション -l/--list はpg_dumpallで作成されたアーカイブの復元では使用できません" - -#: pg_restore.c:518 -#, c-format -msgid "option -L/--use-list cannot be used when restoring an archive created by pg_dumpall" -msgstr "オプション-L/--use-list はpg_dumpallで作成されたアーカイブの復元では使用できません" - -#: pg_restore.c:526 -#, c-format -msgid "option -C/--create must be specified when restoring an archive created by pg_dumpall" -msgstr "pg_dumpallで作成されたアーカイブを復元する際には、-C/--create オプションの指定が必須です" - -#: pg_restore.c:528 -#, c-format -msgid "Individual databases can be restored using their specific archives." -msgstr "各々のデータベースは対応するアーカイブを使って復元できます。" - -#: pg_restore.c:560 -#, c-format -msgid "database restoring skipped because option -g/--globals-only was specified" -msgstr "-g/--globals-only オプションが指定されているため、データベースの復元はスキップされました" - -#: pg_restore.c:575 -#, c-format -msgid "option --exclude-database can be used only when restoring an archive created by pg_dumpall" -msgstr "オプション --exclude-database はpg_dumpallで作成したアーカイブの復元時のみ使用できます" - -#: pg_restore.c:578 -#, c-format -msgid "option -g/--globals-only can be used only when restoring an archive created by pg_dumpall" -msgstr "オプション -g/--globals-only はpg_dumpallで作成したアーカイブの復元時のみ使用できます" - -#: pg_restore.c:586 +#: pg_restore.c:509 #, c-format msgid "errors ignored on restore: %d" msgstr "リストア中に無視されたエラー数: %d" -#: pg_restore.c:656 +#: pg_restore.c:522 #, c-format msgid "" -"%s restores PostgreSQL databases from archives created by pg_dump or pg_dumpall.\n" +"%s restores a PostgreSQL database from an archive created by pg_dump.\n" "\n" msgstr "" -"%sはpg_dumpまたはpg_dumpallで作成したアーカイブからPostgreSQLデータベースを復元します。\n" +"%sはpg_dumpで作成したアーカイブからPostgreSQLデータベースを復元します。\n" "\n" -#: pg_restore.c:658 +#: pg_restore.c:524 #, c-format msgid " %s [OPTION]... [FILE]\n" msgstr " %s [OPTION]... [FILE]\n" -#: pg_restore.c:661 +#: pg_restore.c:527 #, c-format msgid " -d, --dbname=NAME connect to database name\n" msgstr " -d, --dbname=NAME 接続するデータベース名\n" -#: pg_restore.c:662 +#: pg_restore.c:528 #, c-format msgid " -f, --file=FILENAME output file name (- for stdout)\n" msgstr " -f, --file=FILENAME 出力ファイル名(- で標準出力)\n" -#: pg_restore.c:663 +#: pg_restore.c:529 #, 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:664 +#: pg_restore.c:530 #, c-format msgid " -l, --list print summarized TOC of the archive\n" msgstr " -l, --list アーカイブのTOCの要約を表示\n" -#: pg_restore.c:665 +#: pg_restore.c:531 #, c-format msgid " -v, --verbose verbose mode\n" msgstr " -v, --verbose 冗長モード\n" -#: pg_restore.c:666 +#: pg_restore.c:532 #, c-format msgid " -V, --version output version information, then exit\n" msgstr " -V, --version バージョン情報を表示し、終了します\n" -#: pg_restore.c:667 +#: pg_restore.c:533 #, c-format msgid " -?, --help show this help, then exit\n" msgstr " -?, --help このヘルプを表示し、終了します\n" -#: pg_restore.c:669 +#: pg_restore.c:535 #, c-format msgid "" "\n" @@ -2986,39 +2963,32 @@ msgstr "" "\n" "リストア制御用のオプション:\n" -#: pg_restore.c:670 +#: pg_restore.c:536 #, c-format msgid " -a, --data-only restore only the data, no schema\n" msgstr " -a, --data-only データのみを復元。スキーマを復元しない\n" -#: pg_restore.c:672 +#: pg_restore.c:538 #, c-format msgid " -C, --create create the target database\n" msgstr " -C, --create 対象のデータベースを作成\n" -#: pg_restore.c:673 +#: pg_restore.c:539 #, c-format msgid " -e, --exit-on-error exit on error, default is to continue\n" msgstr " -e, --exit-on-error エラー時に終了。デフォルトは継続\n" -#: pg_restore.c:674 -#, c-format -msgid " -g, --globals-only restore only global objects, no databases\n" -msgstr "" -" -g, --globals-only グローバルオブジェクトのみを復元し、\n" -" データベースを復元しない\n" - -#: pg_restore.c:675 +#: pg_restore.c:540 #, c-format msgid " -I, --index=NAME restore named index\n" msgstr " -I, --index=NAME 指名したインデックスを復元n\n" -#: pg_restore.c:676 +#: pg_restore.c:541 #, c-format msgid " -j, --jobs=NUM use this many parallel jobs to restore\n" msgstr " -j, --jobs=NUM リストア時に指定した数の並列ジョブを使用\n" -#: pg_restore.c:677 +#: pg_restore.c:542 #, c-format msgid "" " -L, --use-list=FILENAME use table of contents from this file for\n" @@ -3027,62 +2997,57 @@ msgstr "" " -L, --use-list=FILENAME このファイルの内容に従って SELECT や\n" " 出力のソートを行います\n" -#: pg_restore.c:679 +#: pg_restore.c:544 #, c-format msgid " -n, --schema=NAME restore only objects in this schema\n" msgstr " -n, --schema=NAME 指定したスキーマのオブジェクトのみを復元\n" -#: pg_restore.c:680 +#: pg_restore.c:545 #, c-format msgid " -N, --exclude-schema=NAME do not restore objects in this schema\n" msgstr " -N, --exclude-schema=NAME 指定したスキーマのオブジェクトは復元しない\n" -#: pg_restore.c:682 +#: pg_restore.c:547 #, c-format msgid " -P, --function=NAME(args) restore named function\n" msgstr " -P, --function=NAME(args) 指名された関数を復元\n" -#: pg_restore.c:683 +#: pg_restore.c:548 #, c-format msgid " -s, --schema-only restore only the schema, no data\n" msgstr " -s, --schema-only スキーマのみを復元。データを復元しない\n" -#: pg_restore.c:684 +#: pg_restore.c:549 #, c-format msgid " -S, --superuser=NAME superuser user name to use for disabling triggers\n" msgstr " -S, --superuser=NAME トリガを無効にするためのスーパーユーザーの名前\n" -#: pg_restore.c:685 +#: pg_restore.c:550 #, c-format msgid " -t, --table=NAME restore named relation (table, view, etc.)\n" msgstr " -t, --table=NAME 指名したリレーション(テーブル、ビューなど)を復元\n" -#: pg_restore.c:686 +#: pg_restore.c:551 #, c-format msgid " -T, --trigger=NAME restore named trigger\n" msgstr " -T, --trigger=NAME 指名したトリガを復元\n" -#: pg_restore.c:687 +#: pg_restore.c:552 #, c-format msgid " -x, --no-privileges skip restoration of access privileges (grant/revoke)\n" msgstr " -x, --no-privileges アクセス権限(grant/revoke)の復元を省略\n" -#: pg_restore.c:688 +#: pg_restore.c:553 #, c-format msgid " -1, --single-transaction restore as a single transaction\n" msgstr " -1, --single-transaction リストアを単一トランザクションで実行\n" -#: pg_restore.c:690 +#: pg_restore.c:555 #, c-format msgid " --enable-row-security enable row security\n" msgstr " --enable-row-security 行セキュリティを有効にします\n" -#: pg_restore.c:691 -#, c-format -msgid " --exclude-database=PATTERN do not restore the specified database(s)\n" -msgstr " --exclude-database=PATTERN 指定したデータベース(群)を復元しない\n" - -#: pg_restore.c:692 +#: pg_restore.c:556 #, c-format msgid "" " --filter=FILENAME restore or skip objects based on expressions\n" @@ -3091,110 +3056,100 @@ msgstr "" " --filter=FILENAME オブジェクトの復元またはスキップをFILENAMEに\n" " 記述されている式を元に行う\n" -#: pg_restore.c:695 +#: pg_restore.c:559 #, c-format msgid " --no-comments do not restore comment commands\n" msgstr " --no-comments コメントコマンドを復元しない\n" -#: pg_restore.c:696 +#: pg_restore.c:560 #, c-format msgid " --no-data do not restore data\n" msgstr " --no-data データを復元しない\n" -#: pg_restore.c:697 +#: pg_restore.c:561 #, 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:699 +#: pg_restore.c:563 #, c-format msgid " --no-policies do not restore row security policies\n" msgstr " --no-policies 行セキュリティポリシーを復元しない\n" -#: pg_restore.c:700 +#: pg_restore.c:564 #, c-format msgid " --no-publications do not restore publications\n" msgstr " --no-publications パブリケーションを復元しない\n" -#: pg_restore.c:701 +#: pg_restore.c:565 #, c-format msgid " --no-schema do not restore schema\n" msgstr " --no-schema スキーマを復元しない\n" -#: pg_restore.c:702 +#: pg_restore.c:566 #, c-format msgid " --no-security-labels do not restore security labels\n" msgstr " --no-security-labels セキュリティラベルを復元しない\n" -#: pg_restore.c:703 +#: pg_restore.c:567 #, c-format msgid " --no-statistics do not restore statistics\n" msgstr " --no-statistics 統計情報を復元しない\n" -#: pg_restore.c:704 +#: pg_restore.c:568 #, c-format msgid " --no-subscriptions do not restore subscriptions\n" msgstr " --no-subscriptions サブスクリプションを復元しない\n" -#: pg_restore.c:705 +#: pg_restore.c:569 #, c-format msgid " --no-table-access-method do not restore table access methods\n" msgstr " --no-table-access-method テーブルアクセスメソッドを復元しない\n" -#: pg_restore.c:706 +#: pg_restore.c:570 #, c-format msgid " --no-tablespaces do not restore tablespace assignments\n" msgstr " --no-tablespaces テーブル空間の割り当てを復元しない\n" -#: pg_restore.c:707 +#: pg_restore.c:572 #, c-format msgid " --section=SECTION restore named section (pre-data, data, or post-data)\n" msgstr " --section=SECTION 指定されたセクション(データ前部、データ、データ後部)を復元\n" -#: pg_restore.c:708 +#: pg_restore.c:573 +#, c-format +msgid " --statistics restore the statistics\n" +msgstr " --statistics 統計情報を復元する\n" + +#: pg_restore.c:574 #, c-format msgid " --statistics-only restore only the statistics, not schema or data\n" msgstr " --statistics-only 統計情報のみを復元、スキーマやデータを復元しない\n" -#: pg_restore.c:711 +#: pg_restore.c:577 #, c-format msgid " --transaction-size=N commit after every N objects\n" msgstr " --transaction-size=N Nオブジェクトごとにコミットします\n" -#: pg_restore.c:715 -#, c-format -msgid " --with-data restore the data\n" -msgstr " --with-data データを復元する\n" - -#: pg_restore.c:716 -#, c-format -msgid " --with-schema restore the schema\n" -msgstr " --with-schema スキーマを復元する\n" - -#: pg_restore.c:717 -#, c-format -msgid " --with-statistics restore the statistics\n" -msgstr " --with-statistics 統計情報を復元する\n" - -#: pg_restore.c:725 +#: pg_restore.c:588 #, c-format msgid " --role=ROLENAME do SET ROLE before restore\n" msgstr " --role=ROLENAME リストアに先立って SET ROLE します\n" -#: pg_restore.c:727 +#: pg_restore.c:590 #, c-format msgid "" "\n" -"The options -I, -n, -N, -P, -t, -T, --section, and --exclude-database can be\n" -"combined and specified multiple times to select multiple objects.\n" +"The options -I, -n, -N, -P, -t, -T, and --section can be combined and specified\n" +"multiple times to select multiple objects.\n" msgstr "" "\n" -"オプション -I、-n、-N、-P、-t、-T、--section および --exclude-databaseを組み\n" -"合わせて複数回指定することで複数のオブジェクトを指定できます。\n" +"オプション -I、-n、-N、-P、-t、-T および --section を組み合わせて複数回\n" +"指定することで複数のオブジェクトを指定できます。\n" -#: pg_restore.c:730 +#: pg_restore.c:593 #, c-format msgid "" "\n" @@ -3205,85 +3160,118 @@ msgstr "" "入力ファイル名が指定されない場合、標準入力が使用されます。\n" "\n" -#: pg_restore.c:949 -#, c-format -msgid "considering PATTERN as NAME for --exclude-database option as no database connection while doing pg_restore" -msgstr "pg_restoreの実行中にデータベース接続がないため、--exclude-database オプションの<パターン>は<名前>とみなします。" +#~ msgid " --exclude-database=PATTERN do not restore the specified database(s)\n" +#~ msgstr " --exclude-database=PATTERN 指定したデータベース(群)を復元しない\n" -#: pg_restore.c:995 -#, c-format -msgid "database name \"%s\" matches exclude pattern \"%s\"" -msgstr "データベース名\"%s\"は除外パターン\"%s\"に合致します" +#~ msgid " --with-data dump the data\n" +#~ msgstr " --with-data データをダンプする\n" -#: pg_restore.c:1051 -#, c-format -msgid "database restoring is skipped because file \"%s\" does not exist in directory \"%s\"" -msgstr "ディレクトリ \"%2$s\" 内にファイル \"%1$s\" がないため、データベースの復元をスキップします" +#~ msgid " --with-data restore the data\n" +#~ msgstr " --with-data データを復元する\n" -#: pg_restore.c:1089 -#, c-format -msgid "invalid entry in file \"%s\" on line %d" -msgstr "ファイル\"%s\"の%d行目に不正なエントリ" +#~ msgid " --with-schema dump the schema\n" +#~ msgstr " --with-schema スキーマをダンプする\n" -#: pg_restore.c:1092 -#, c-format -msgid "found database \"%s\" (OID: %u) in file \"%s\"" -msgstr "ファイル \"%3$s\" 内でデータベース \"%1$s\" (OID: %2$u) を検出しました。" +#~ msgid " --with-schema restore the schema\n" +#~ msgstr " --with-schema スキーマを復元する\n" -#: pg_restore.c:1145 -#, c-format -msgid "found %d database name in \"%s\"" -msgid_plural "found %d database names in \"%s\"" -msgstr[0] "\"%2$s\" 内に %1$d 個のデータベース名を検出しました" +#~ msgid " -g, --globals-only restore only global objects, no databases\n" +#~ msgstr "" +#~ " -g, --globals-only グローバルオブジェクトのみを復元し、\n" +#~ " データベースを復元しない\n" -#: pg_restore.c:1152 pg_restore.c:1161 -#, c-format -msgid "trying to connect to database \"%s\"" -msgstr "データベース\"%s\"に接続を試みています" +#~ msgid "Individual databases can be restored using their specific archives." +#~ msgstr "各々のデータベースは対応するアーカイブを使って復元できます。" -#: pg_restore.c:1185 -#, c-format -msgid "no database needs restoring out of %d database" -msgid_plural "no database needs restoring out of %d databases" -msgstr[0] "%d 個のデータベースの中で復元が必要なものはありません" +#~ msgid "considering PATTERN as NAME for --exclude-database option as no database connection while doing pg_restore" +#~ msgstr "pg_restoreの実行中にデータベース接続がないため、--exclude-database オプションの<パターン>は<名前>とみなします。" -#: pg_restore.c:1191 -#, c-format -msgid "need to restore %d databases out of %d databases" -msgstr "%2$d 個のうち %1$d 個のデータベースの復元が必要です" +#~ msgid "could not execute query: %s" +#~ msgstr "問い合わせを実行できませんでした: %s" -#: pg_restore.c:1240 -#, c-format -msgid "restoring database \"%s\"" -msgstr "データベース\"%s\"の復元中" +#~ msgid "could not open file: \"%s\"" +#~ msgstr "ファイルを開くことができませんでした: \"%s\"" -#: pg_restore.c:1281 -#, c-format -msgid "errors ignored on database \"%s\" restore: %d" -msgstr "データベース\"%s\"の復元中に無視されたエラー数: %d" +#~ msgid "could not write to LOs TOC file: %s" +#~ msgstr "ラージオブジェクトのTOCファイルに書き出せませんでした: %s" -#: pg_restore.c:1288 -#, c-format -msgid "number of restored databases is %d" -msgstr "復元されたデータベースの数は %d です" +#~ msgid "database name \"%s\" matches exclude pattern \"%s\"" +#~ msgstr "データベース名\"%s\"は除外パターン\"%s\"に合致します" -#: pg_restore.c:1351 -#, c-format -msgid "executing query: %s" -msgstr "実行クエリ: %s" +#~ msgid "database restoring is skipped because file \"%s\" does not exist in directory \"%s\"" +#~ msgstr "ディレクトリ \"%2$s\" 内にファイル \"%1$s\" がないため、データベースの復元をスキップします" -#: pg_restore.c:1362 -#, c-format -msgid "could not execute query: %s" -msgstr "問い合わせを実行できませんでした: %s" +#~ msgid "database restoring skipped because option -g/--globals-only was specified" +#~ msgstr "-g/--globals-only オプションが指定されているため、データベースの復元はスキップされました" -#: pg_restore.c:1370 -#, c-format -msgid "ignored %d error in file \"%s\"" -msgid_plural "ignored %d errors in file \"%s\"" -msgstr[0] "ファイル \"%2$s\" 内のエラー%1$d件を無視しました" +#~ msgid "errors ignored on database \"%s\" restore: %d" +#~ msgstr "データベース\"%s\"の復元中に無視されたエラー数: %d" -#: pg_restore.c:1402 -#, c-format -msgid "could not open file: \"%s\"" -msgstr "ファイルを開くことができませんでした: \"%s\"" +#~ msgid "executing query: %s" +#~ msgstr "実行クエリ: %s" + +#~ msgid "found %d database name in \"%s\"" +#~ msgid_plural "found %d database names in \"%s\"" +#~ msgstr[0] "\"%2$s\" 内に %1$d 個のデータベース名を検出しました" + +#~ msgid "found database \"%s\" (OID: %u) in file \"%s\"" +#~ msgstr "ファイル \"%3$s\" 内でデータベース \"%1$s\" (OID: %2$u) を検出しました。" + +#~ msgid "ignored %d error in file \"%s\"" +#~ msgid_plural "ignored %d errors in file \"%s\"" +#~ msgstr[0] "ファイル \"%2$s\" 内のエラー%1$d件を無視しました" + +#~ msgid "invalid entry in file \"%s\" on line %d" +#~ msgstr "ファイル\"%s\"の%d行目に不正なエントリ" + +#~ msgid "need to restore %d databases out of %d databases" +#~ msgstr "%2$d 個のうち %1$d 個のデータベースの復元が必要です" + +#~ msgid "no database needs restoring out of %d database" +#~ msgid_plural "no database needs restoring out of %d databases" +#~ msgstr[0] "%d 個のデータベースの中で復元が必要なものはありません" + +#~ msgid "number of restored databases is %d" +#~ msgstr "復元されたデータベースの数は %d です" + +#~ msgid "option --exclude-database can be used only when restoring an archive created by pg_dumpall" +#~ msgstr "オプション --exclude-database はpg_dumpallで作成したアーカイブの復元時のみ使用できます" + +#~ msgid "option --exclude-database cannot be used together with -g/--globals-only" +#~ msgstr "オプション --exclude-database は -g/--globals-only と一緒には使用できません" + +#~ msgid "option -C/--create must be specified when restoring an archive created by pg_dumpall" +#~ msgstr "pg_dumpallで作成されたアーカイブを復元する際には、-C/--create オプションの指定が必須です" + +#~ msgid "option -F/--format=d|c|t requires option -f/--file" +#~ msgstr "オプション -F/--format=d|c|t はオプション -f/--file の指定が必要です" + +#~ msgid "option -L/--use-list cannot be used when restoring an archive created by pg_dumpall" +#~ msgstr "オプション-L/--use-list はpg_dumpallで作成されたアーカイブの復元では使用できません" + +#~ msgid "option -g/--globals-only can be used only when restoring an archive created by pg_dumpall" +#~ msgstr "オプション -g/--globals-only はpg_dumpallで作成したアーカイブの復元時のみ使用できます" + +#~ msgid "option -l/--list cannot be used when restoring an archive created by pg_dumpall" +#~ msgstr "オプション -l/--list はpg_dumpallで作成されたアーカイブの復元では使用できません" + +#~ msgid "options --with-data and --no-data cannot be used together" +#~ msgstr "--with-data と --no-data オプションは同時には使用できません" + +#~ msgid "options --with-schema and --no-schema cannot be used together" +#~ msgstr "--with-schema と --no-schema オプションは同時には使用できません" + +#~ msgid "options --with-statistics and --no-statistics cannot be used together" +#~ msgstr "オプション --with-statistics と --no-statistics とは同時には使用できません" + +#~ msgid "restoring database \"%s\"" +#~ msgstr "データベース\"%s\"の復元中" + +#~ msgid "trying to connect to database \"%s\"" +#~ msgstr "データベース\"%s\"に接続を試みています" + +#~ msgid "unhandled mode \"%s\"" +#~ msgstr "処理されないモード \"%s\"" + +#~ msgid "unrecognized output format \"%s\"; please specify \"c\", \"d\", \"p\", or \"t\"" +#~ msgstr "認識不能の出力形式\"%s\"; \"c\"、\"d\"、\"p\" または\"t\"を指定してください" diff --git a/src/bin/pg_dump/po/ru.po b/src/bin/pg_dump/po/ru.po index f0af5b531cf4a..bda1ebc6c362d 100644 --- a/src/bin/pg_dump/po/ru.po +++ b/src/bin/pg_dump/po/ru.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_dump (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-19 22:26+0300\n" +"POT-Creation-Date: 2025-11-09 06:28+0200\n" "PO-Revision-Date: 2025-09-04 22:18+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -42,7 +42,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 @@ -484,48 +484,48 @@ msgstr "не удалось разобрать числовой массив \"% 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 @@ -613,7 +613,7 @@ 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 +#: pg_dump_sort.c:1467 pg_dump_sort.c:1487 #, c-format msgid "%s" msgstr "%s" @@ -2455,8 +2455,8 @@ msgstr "чтение политик защиты на уровне строк" 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: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 #, c-format msgid "could not parse %s array" msgstr "не удалось разобрать массив %s" @@ -2492,7 +2492,7 @@ msgstr "схема с OID %u не существует" msgid "cannot dump statistics for relation kind \"%c\"" msgstr "для отношения типа \"%c\" нельзя выгрузить статистику" -#: pg_dump.c:7506 pg_dump.c:18987 +#: pg_dump.c:7506 pg_dump.c:18989 #, c-format msgid "" "failed sanity check, parent table with OID %u of sequence with OID %u not " @@ -2509,8 +2509,8 @@ msgstr "" "нарушение целостности: таблица с OID %u, фигурирующим в " "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: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 #, c-format msgid "unrecognized table OID %u" msgstr "нераспознанный OID таблицы %u" @@ -2529,37 +2529,37 @@ msgstr "" "нарушение целостности: по OID %u не удалось найти родительскую таблицу для " "записи pg_rewrite с OID %u" -#: pg_dump.c:9321 +#: pg_dump.c:9323 #, c-format msgid "unexpected column data for table \"%s\"" msgstr "неожиданно получены данные столбцов для таблицы \"%s\"" -#: pg_dump.c:9353 +#: pg_dump.c:9355 #, c-format msgid "invalid column numbering in table \"%s\"" msgstr "неверная нумерация столбцов в таблице \"%s\"" -#: pg_dump.c:9418 +#: pg_dump.c:9420 #, c-format msgid "finding table default expressions" msgstr "поиск выражений по умолчанию для таблиц" -#: pg_dump.c:9460 +#: pg_dump.c:9462 #, c-format msgid "invalid adnum value %d for table \"%s\"" msgstr "неверное значение adnum (%d) в таблице \"%s\"" -#: pg_dump.c:9553 +#: pg_dump.c:9555 #, c-format msgid "finding invalid not-null constraints" msgstr "поиск некорректных ограничений NOT NULL" -#: pg_dump.c:9651 +#: pg_dump.c:9653 #, c-format msgid "finding table check constraints" msgstr "поиск ограничений-проверок для таблиц" -#: pg_dump.c:9705 +#: pg_dump.c:9707 #, 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 +2570,76 @@ msgstr[1] "" msgstr[2] "" "ожидалось %d ограничений-проверок для таблицы \"%s\", но найдено: %d" -#: pg_dump.c:9709 +#: pg_dump.c:9711 #, c-format msgid "The system catalogs might be corrupted." msgstr "Возможно, повреждены системные каталоги." -#: pg_dump.c:10514 +#: pg_dump.c:10516 #, c-format msgid "role with OID %u does not exist" msgstr "роль с OID %u не существует" -#: pg_dump.c:10626 pg_dump.c:10655 +#: pg_dump.c:10628 pg_dump.c:10657 #, 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:10953 #, 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:11094 #, c-format msgid "unexpected null attname" msgstr "неожиданный null в имени атрибута (attname)" -#: pg_dump.c:11121 +#: pg_dump.c:11123 #, c-format msgid "could not find index attname \"%s\"" msgstr "не удалось получить для индекса имя атрибута (attname) \"%s\"" -#: pg_dump.c:11607 +#: pg_dump.c:11609 #, c-format msgid "missing metadata for large objects \"%s\"" msgstr "отсутствуют метаданные о больших объектах \"%s\"" -#: pg_dump.c:11893 +#: pg_dump.c:11895 #, c-format msgid "typtype of data type \"%s\" appears to be invalid" msgstr "у типа данных \"%s\" по-видимому неправильный тип типа" # TO REVEIW -#: pg_dump.c:13521 +#: pg_dump.c:13523 #, c-format msgid "unrecognized provolatile value for function \"%s\"" msgstr "недопустимое значение provolatile для функции \"%s\"" # TO REVEIW -#: pg_dump.c:13571 pg_dump.c:15467 +#: pg_dump.c:13573 pg_dump.c:15469 #, 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:13703 pg_dump.c:13809 pg_dump.c:13816 #, c-format msgid "could not find function definition for function with OID %u" msgstr "не удалось найти определение функции для функции с OID %u" -#: pg_dump.c:13740 +#: pg_dump.c:13742 #, 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:13745 #, c-format msgid "bogus value in pg_cast.castmethod field" msgstr "неприемлемое значение в поле pg_cast.castmethod" -#: pg_dump.c:13833 +#: pg_dump.c:13835 #, c-format msgid "" "bogus transform definition, at least one of trffromsql and trftosql should " @@ -2648,63 +2648,63 @@ msgstr "" "неприемлемое определение преобразования (trffromsql или trftosql должно быть " "ненулевым)" -#: pg_dump.c:13850 +#: pg_dump.c:13852 #, c-format msgid "bogus value in pg_transform.trffromsql field" msgstr "неприемлемое значение в поле pg_transform.trffromsql" -#: pg_dump.c:13871 +#: pg_dump.c:13873 #, c-format msgid "bogus value in pg_transform.trftosql field" msgstr "неприемлемое значение в поле pg_transform.trftosql" -#: pg_dump.c:14016 +#: pg_dump.c:14018 #, c-format msgid "postfix operators are not supported anymore (operator \"%s\")" msgstr "постфиксные операторы больше не поддерживаются (оператор \"%s\")" -#: pg_dump.c:14186 +#: pg_dump.c:14188 #, c-format msgid "could not find operator with OID %s" msgstr "оператор с OID %s не найден" -#: pg_dump.c:14254 +#: pg_dump.c:14256 #, c-format msgid "invalid type \"%c\" of access method \"%s\"" msgstr "неверный тип \"%c\" метода доступа \"%s\"" -#: pg_dump.c:14928 pg_dump.c:14996 +#: pg_dump.c:14930 pg_dump.c:14998 #, 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:14939 pg_dump.c:14946 pg_dump.c:14957 pg_dump.c:14967 +#: pg_dump.c:14982 #, c-format msgid "invalid collation \"%s\"" msgstr "неверное правило сортировки \"%s\"" -#: pg_dump.c:15386 +#: pg_dump.c:15388 #, c-format msgid "unrecognized aggfinalmodify value for aggregate \"%s\"" msgstr "нераспознанное значение aggfinalmodify для агрегата \"%s\"" -#: pg_dump.c:15442 +#: pg_dump.c:15444 #, c-format msgid "unrecognized aggmfinalmodify value for aggregate \"%s\"" msgstr "нераспознанное значение aggmfinalmodify для агрегата \"%s\"" -#: pg_dump.c:16162 +#: pg_dump.c:16164 #, c-format msgid "unrecognized object type in default privileges: %d" msgstr "нераспознанный тип объекта в определении прав по умолчанию: %d" -#: pg_dump.c:16178 +#: pg_dump.c:16180 #, c-format msgid "could not parse default ACL list (%s)" msgstr "не удалось разобрать список прав по умолчанию (%s)" -#: pg_dump.c:16262 +#: pg_dump.c:16264 #, c-format msgid "" "could not parse initial ACL list (%s) or default (%s) for object \"%s\" (%s)" @@ -2712,20 +2712,20 @@ msgstr "" "не удалось разобрать изначальный список ACL (%s) или ACL по умолчанию (%s) " "для объекта \"%s\" (%s)" -#: pg_dump.c:16287 +#: pg_dump.c:16289 #, 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:16830 +#: pg_dump.c:16832 #, c-format msgid "query to obtain definition of view \"%s\" returned no data" msgstr "" "запрос на получение определения представления \"%s\" не возвратил данные" -#: pg_dump.c:16833 +#: pg_dump.c:16835 #, c-format msgid "" "query to obtain definition of view \"%s\" returned more than one definition" @@ -2733,54 +2733,54 @@ msgstr "" "запрос на получение определения представления \"%s\" возвратил несколько " "определений" -#: pg_dump.c:16840 +#: pg_dump.c:16842 #, c-format msgid "definition of view \"%s\" appears to be empty (length zero)" msgstr "определение представления \"%s\" пустое (длина равна нулю)" -#: pg_dump.c:16925 +#: pg_dump.c:16927 #, c-format msgid "WITH OIDS is not supported anymore (table \"%s\")" msgstr "свойство WITH OIDS больше не поддерживается (таблица \"%s\")" -#: pg_dump.c:18065 +#: pg_dump.c:18067 #, c-format msgid "invalid column number %d for table \"%s\"" msgstr "неверный номер столбца %d для таблицы \"%s\"" -#: pg_dump.c:18143 +#: pg_dump.c:18145 #, c-format msgid "could not parse index statistic columns" msgstr "не удалось разобрать столбцы статистики в индексе" -#: pg_dump.c:18145 +#: pg_dump.c:18147 #, c-format msgid "could not parse index statistic values" msgstr "не удалось разобрать значения статистики в индексе" -#: pg_dump.c:18147 +#: pg_dump.c:18149 #, c-format msgid "mismatched number of columns and values for index statistics" msgstr "" "столбцы, задающие статистику индекса, не соответствуют значениям по " "количеству" -#: pg_dump.c:18376 +#: pg_dump.c:18378 #, c-format msgid "missing index for constraint \"%s\"" msgstr "отсутствует индекс для ограничения \"%s\"" -#: pg_dump.c:18645 +#: pg_dump.c:18647 #, c-format msgid "unrecognized constraint type: %c" msgstr "нераспознанный тип ограничения: %c" -#: pg_dump.c:18698 +#: pg_dump.c:18700 #, c-format msgid "unrecognized sequence type: %s" msgstr "нераспознанный тип последовательности: %s" -#: pg_dump.c:18830 pg_dump.c:19062 +#: pg_dump.c:18832 pg_dump.c:19064 #, c-format msgid "query to get data of sequence \"%s\" returned %d row (expected 1)" msgid_plural "" @@ -2795,12 +2795,12 @@ msgstr[2] "" "запрос на получение данных последовательности \"%s\" вернул %d строк " "(ожидалась 1)" -#: pg_dump.c:18866 +#: pg_dump.c:18868 #, c-format msgid "unrecognized sequence type: %d" msgstr "нераспознанный тип последовательности: %d" -#: pg_dump.c:19400 +#: pg_dump.c:19402 #, c-format msgid "" "query to get rule \"%s\" for table \"%s\" failed: wrong number of rows " @@ -2809,53 +2809,53 @@ msgstr "" "запрос на получение правила \"%s\" для таблицы \"%s\" возвратил неверное " "число строк" -#: pg_dump.c:19553 +#: pg_dump.c:19555 #, c-format msgid "could not find referenced extension %u" msgstr "не удалось найти упомянутое расширение %u" -#: pg_dump.c:19652 +#: pg_dump.c:19654 #, c-format msgid "mismatched number of configurations and conditions for extension" msgstr "конфигурации расширения не соответствуют условиям по количеству" -#: pg_dump.c:19784 +#: pg_dump.c:19786 #, c-format msgid "reading dependency data" msgstr "чтение информации о зависимостях" -#: pg_dump.c:19870 +#: pg_dump.c:19872 #, c-format msgid "no referencing object %u %u" msgstr "нет подчинённого объекта %u %u" -#: pg_dump.c:19881 +#: pg_dump.c:19883 #, 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_dump.c:20318 pg_dump.c:20356 pg_dumpall.c:1836 pg_restore.c:629 #: pg_restore.c:675 #, c-format msgid "%s filter for \"%s\" is not allowed" msgstr "фильтр %s для \"%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:" @@ -2863,7 +2863,7 @@ msgstr[0] "в следующей таблице зациклены ограни msgstr[1] "в следующих таблицах зациклены ограничения внешних ключей:" msgstr[2] "в следующих таблицах зациклены ограничения внешних ключей:" -#: 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 " @@ -2872,7 +2872,7 @@ 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 " @@ -2881,7 +2881,7 @@ 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 "не удалось разрешить цикл зависимостей для следующих объектов:" diff --git a/src/bin/pg_resetwal/po/es.po b/src/bin/pg_resetwal/po/es.po index 8537846e6f4b5..f325330ca2bc5 100644 --- a/src/bin/pg_resetwal/po/es.po +++ b/src/bin/pg_resetwal/po/es.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_resetwal (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:50+0000\n" +"POT-Creation-Date: 2025-11-08 00:20+0000\n" "PO-Revision-Date: 2025-09-21 11:38+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -393,7 +393,6 @@ msgstr "Número de versión de catálogo: %u\n" #: pg_resetwal.c:749 #, c-format -#| msgid "Database system identifier: %llu\n" msgid "Database system identifier: %\n" msgstr "Identificador de sistema: %\n" @@ -544,12 +543,10 @@ msgstr "Versión de suma de verificación de datos: %u\n" #: pg_resetwal.c:804 #, c-format -#| msgid "Maximum data alignment: %u\n" msgid "Default char data signedness: %s\n" msgstr "Presencia de signo en datos «char»: %s\n" #: pg_resetwal.c:805 -#| msgid "assignment" msgid "signed" msgstr "con signo" diff --git a/src/bin/pg_resetwal/po/ru.po b/src/bin/pg_resetwal/po/ru.po index 151657affc14a..b8faadb4eb93f 100644 --- a/src/bin/pg_resetwal/po/ru.po +++ b/src/bin/pg_resetwal/po/ru.po @@ -11,7 +11,7 @@ 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-09-13 17:20+0300\n" +"PO-Revision-Date: 2025-11-09 08:46+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -588,7 +588,7 @@ msgstr "знаковое" #: pg_resetwal.c:805 msgid "unsigned" -msgstr "unsigned" +msgstr "беззнаковое" #: pg_resetwal.c:818 #, c-format diff --git a/src/bin/pg_rewind/po/es.po b/src/bin/pg_rewind/po/es.po index c105f14b89b5e..77d731c1b8f2f 100644 --- a/src/bin/pg_rewind/po/es.po +++ b/src/bin/pg_rewind/po/es.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: pg_rewind (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:52+0000\n" +"POT-Creation-Date: 2025-11-08 00:22+0000\n" "PO-Revision-Date: 2025-09-21 11:39+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -457,7 +457,6 @@ msgstr "se recibieron datos para el archivo «%s», cuando se solicitó para «% #: libpq_source.c:579 #, c-format -#| msgid "received data at offset %lld of file \"%s\", when requested for offset %lld" msgid "received data at offset % of file \"%s\", when requested for offset %lld" msgstr "se recibieron datos en la posición % del archivo «%s», cuando se solicitó para la posición %lld" @@ -861,7 +860,6 @@ msgstr "el programa «%s» fue encontrado por «%s» pero no es de la misma vers #: 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 "no se pudo leer «restore_command» en el clúster de destino" @@ -972,7 +970,6 @@ msgstr "info bits %04X no válidos en segment WAL %s, LSN %X/%X, posición %u" #: 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" msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %, identificador en pg_control es %" diff --git a/src/bin/pg_test_fsync/po/es.po b/src/bin/pg_test_fsync/po/es.po index b805b1254f155..5c22d6a67aa3c 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-09-20 09:53+0000\n" +"POT-Creation-Date: 2025-11-08 00:23+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 f71f031edd8a1..fbab389ceff2a 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-09-20 09:50+0000\n" +"POT-Creation-Date: 2025-11-08 00:20+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_upgrade/po/es.po b/src/bin/pg_upgrade/po/es.po index 6dbe7383eaa23..9239dc2a8339a 100644 --- a/src/bin/pg_upgrade/po/es.po +++ b/src/bin/pg_upgrade/po/es.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:49+0000\n" -"PO-Revision-Date: 2025-09-21 12:43+0200\n" +"POT-Creation-Date: 2025-11-08 00:20+0000\n" +"PO-Revision-Date: 2025-11-08 19:07+0100\n" "Last-Translator: Álvaro Herrera \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -276,7 +276,6 @@ msgstr "" #: check.c:754 #, c-format -#| msgid "This utility can only upgrade from PostgreSQL version %s and later." msgid "Swap mode can only upgrade clusters from PostgreSQL version %s and later." msgstr "El modo swap sólo puede actualizar desde PostgreSQL versión %s y posterior." @@ -302,10 +301,6 @@ msgstr "" #: 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" msgid "" "Some statistics are not transferred by pg_upgrade.\n" "Once you start the new server, consider running these two commands:\n" @@ -371,7 +366,6 @@ msgstr "El directorio de datos nuevo y el directorio de binarios nuevo son de ve #: check.c:897 #, c-format -#| msgid "This utility can only upgrade from PostgreSQL version %s and later." msgid "The option %s cannot be used for upgrades from PostgreSQL %s and later." msgstr "La opción %s no puede usarse para actualizar desde PostgreSQL %s y posterior." @@ -463,14 +457,6 @@ msgstr "fatal" #: 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" -#| " %s" msgid "" "All non-template0 databases must allow connections, i.e. their\n" "pg_database.datallowconn must be true and pg_database.datconnlimit\n" @@ -594,7 +580,6 @@ msgstr "" #: check.c:1684 #, c-format -#| msgid "Checking for subscription state" msgid "Checking for not-null constraint inconsistencies" msgstr "Verificando inconsistencias en restricciones not-null" @@ -660,7 +645,6 @@ msgstr "" #: check.c:1939 #, c-format -#| msgid "Checking for extension updates" msgid "Checking for objects affected by Unicode update" msgstr "Verificando objetos afectados por actualización de Unicode" @@ -718,7 +702,6 @@ msgstr "Verificando configuraciones del clúster nuevo para suscripciones" #: 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" 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) debe ser mayor o igual al número de suscripciones en el clúster antiguo (%d)" @@ -934,7 +917,6 @@ msgstr " versión del checksum de datos" #: controldata.c:685 #, c-format -#| msgid "Maximum data alignment: %u\n" msgid " default char signedness" msgstr " presencia de signo en datos «char»" @@ -1015,7 +997,6 @@ msgstr "Las versiones de checksum de datos antigua y nueva no coinciden" #. translator: %s is the file path of the control file #: controldata.c:762 #, c-format -#| msgid "Adding \".old\" suffix to old global/pg_control" msgid "Adding \".old\" suffix to old \"%s\"" msgstr "Agregando el sufijo «.old» al «%s» antiguo" @@ -1027,12 +1008,6 @@ msgstr "no se pudo renombrar el archivo de «%s» a «%s»: %m" #. 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" -#| "Because \"link\" mode was used, the old cluster cannot be safely\n" -#| "started once the new cluster has been started." msgid "" "\n" "If you want to start the old cluster, you will need to remove\n" @@ -1059,7 +1034,6 @@ msgstr "" #: controldata.c:784 file.c:455 #, c-format -#| msgid "unrecognized status code" msgid "unrecognized transfer mode" msgstr "modo de transferencia no reconocido" @@ -1266,9 +1240,6 @@ msgstr "" #: file.c:452 #, 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." 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." @@ -1590,9 +1561,8 @@ msgstr " --copy-file-range copiar archivos usando copy_file_range\n #: option.c:331 #, c-format -#| msgid " --no-subscriptions do not dump subscriptions\n" msgid " --no-statistics do not import statistics from old cluster\n" -msgstr " --no-statistics no volcar estadísticas desde el clúster antiguo\n" +msgstr " --no-statistics no volcar estadísticas desde el clúster antiguo\n" #: option.c:332 #, c-format @@ -1605,7 +1575,6 @@ msgstr "" #: option.c:334 #, c-format -#| msgid " --clone clone instead of copying files to new cluster\n" msgid " --swap move data directories to new cluster\n" msgstr " --swap mover directorios de datos al cluster nuevo\n" @@ -1846,7 +1815,6 @@ msgstr "" #: pg_upgrade.c:421 #, c-format -#| msgid "Setting locale and encoding for new cluster" msgid "Setting the default char signedness for new cluster" msgstr "Estableciendo la presencia de signo para el clúster nuevo" @@ -1932,7 +1900,6 @@ msgstr "Restaurando slots de replicación lógica en el nuevo clúster" #: relfilenumber.c:68 #, c-format -#| msgid "could not fsync file \"%s\": %m" msgid "could not synchronize file \"%s\": %m" msgstr "no se pudo sincronizar el archivo «%s»: %m" @@ -1958,7 +1925,6 @@ msgstr "Enlazando archivos de relaciones de usuario" #: relfilenumber.c:126 #, c-format -#| msgid "syncing data directory" msgid "Swapping data directories" msgstr "Intercambiando directorios de datos" @@ -1974,7 +1940,6 @@ msgstr "no se pudo hacer stat al archivo «%s»: %m" #: relfilenumber.c:301 relfilenumber.c:305 #, c-format -#| msgid "could not rename file \"%s\" to \"%s\": %m" msgid "could not rename directory \"%s\" to \"%s\": %m" msgstr "no se pudo renombrar el directorio de «%s» a «%s»: %m" @@ -1990,13 +1955,11 @@ msgstr "no se pudo leer el directorio «%s»: %m" #: relfilenumber.c:439 #, c-format -#| msgid "could not close directory \"%s\": %m" msgid "could not synchronize directory \"%s\": %m" msgstr "no se pudo sincronizar el directorio «%s»: %m" #: relfilenumber.c:441 #, c-format -#| msgid "could not create directory \"%s\": %m" msgid "could not synchronize parent directory of \"%s\": %m" msgstr "no se pudo sincronizar el directorio padre de «%s»: %m" @@ -2139,7 +2102,6 @@ msgstr "la ruta de tablespace «%s» no es un directorio" #: task.c:216 task.c:267 task.c:282 task.c:293 #, c-format -#| msgid "reconnection failed: %s" msgid "connection failure: %s" msgstr "fallo de conexión: %s" diff --git a/src/bin/pg_upgrade/po/ja.po b/src/bin/pg_upgrade/po/ja.po index 5faed8d59d37d..9cb007f13fd87 100644 --- a/src/bin/pg_upgrade/po/ja.po +++ b/src/bin/pg_upgrade/po/ja.po @@ -9,8 +9,8 @@ msgid "" msgstr "" "Project-Id-Version: pg_upgrade (PostgreSQL 18)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-06-17 09:30+0900\n" -"PO-Revision-Date: 2025-07-08 10:27+0900\n" +"POT-Creation-Date: 2025-10-10 15:48+0900\n" +"PO-Revision-Date: 2025-10-10 16:07+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -60,11 +60,11 @@ msgstr "シェルコマンドの引数に改行(LF)または復帰(CR)が含ま msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "データベース名に改行(LF)または復帰(CR)が含まれています: \"%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" @@ -76,11 +76,11 @@ msgstr "" "このクラスタは現時点ではアップグレードできません。問題の列を削除したのちに\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" @@ -93,11 +93,11 @@ msgstr "" "変更されているため、このクラスタは現時点ではアップグレードできません。\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" @@ -109,11 +109,11 @@ msgstr "" "保存されないため、現時点ではこのクラスタをアップグレードすることはできません。\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" @@ -125,11 +125,11 @@ msgstr "" "現時点ではこのクラスタをアップグレードすることはできません。\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" @@ -141,11 +141,11 @@ msgstr "" "ではアップグレードできません。問題の列を削除したのち、アップグレードを\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" @@ -157,11 +157,11 @@ msgstr "" "アップグレードできません。問題のある列を削除した後にアップグレードを再実行する\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" @@ -173,11 +173,11 @@ msgstr "" "クラスタをアップグレードすることはできません。 問題の列を削除したのち、\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" @@ -191,11 +191,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" @@ -208,11 +208,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" @@ -225,34 +225,34 @@ msgstr "" "このクラスタは現時点ではアップグレードできません。問題の列を削除するか、\n" "他のデータ型に変更した後にアップグレードを再実行できます。\n" -#: check.c:421 +#: check.c:422 #, c-format msgid "failed check: %s" msgstr "問題を検出した項目: %s" -#: check.c:424 +#: check.c:425 msgid "A list of the problem columns is in the file:" msgstr "問題の列の一覧は以下のファイルにあります:" -#: check.c:430 check.c:1029 check.c:1180 check.c:1263 check.c:1352 check.c:1443 -#: check.c:1575 check.c:1660 check.c:1707 check.c:1787 check.c:2092 -#: check.c:2111 check.c:2157 check.c:2210 file.c:378 file.c:415 function.c:208 -#: option.c:519 version.c:79 version.c:162 +#: 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:472 +#: check.c:473 #, c-format msgid "Checking data type usage" msgstr "データ型の使用を確認しています" -#: check.c:526 +#: check.c:527 #, c-format msgid "Data type checks failed: %s" msgstr "問題を検出したデータ型確認項目: %s" -#: check.c:575 +#: check.c:576 #, c-format msgid "" "Performing Consistency Checks on Old Live Server\n" @@ -261,7 +261,7 @@ msgstr "" "元の実行中サーバーの一貫性チェックを実行しています。\n" "--------------------------------------------------" -#: check.c:581 +#: check.c:582 #, c-format msgid "" "Performing Consistency Checks\n" @@ -270,12 +270,12 @@ msgstr "" "整合性チェックを実行しています。\n" "-----------------------------" -#: check.c:745 +#: check.c:754 #, c-format msgid "Swap mode can only upgrade clusters from PostgreSQL version %s and later." msgstr "スワップモードはPostgreSQL %s以降のバージョンからのアップグレードのみ可能です。" -#: check.c:768 +#: check.c:777 #, c-format msgid "" "\n" @@ -284,7 +284,7 @@ msgstr "" "\n" "* クラスタは互換性があります *" -#: check.c:776 +#: check.c:785 #, c-format msgid "" "\n" @@ -295,7 +295,7 @@ msgstr "" "この後pg_upgradeが失敗した場合は、続ける前に新しいクラスタを\n" "initdbで再作成する必要があります。" -#: check.c:817 +#: check.c:826 #, c-format msgid "" "Some statistics are not transferred by pg_upgrade.\n" @@ -308,7 +308,7 @@ msgstr "" " %s/vacuumdb %s--all --analyze-in-stages --missing-stats-only\n" " %s/vacuumdb %s--all --analyze-only" -#: check.c:826 +#: check.c:835 #, c-format msgid "" "Running this script will delete the old cluster's data files:\n" @@ -317,7 +317,7 @@ msgstr "" "このスクリプトを実行すると、旧クラスタのデータファイルが削除されます:\n" " %s" -#: check.c:831 +#: check.c:840 #, c-format msgid "" "Could not create a script to delete the old cluster's data files\n" @@ -330,62 +330,62 @@ msgstr "" "ファイルを削除するためのスクリプトを作成できませんでした。 古い\n" "クラスタの内容は手動で削除する必要があります。" -#: check.c:843 +#: check.c:852 #, c-format msgid "Checking cluster versions" msgstr "クラスタのバージョンを確認しています" -#: check.c:855 +#: check.c:864 #, c-format msgid "This utility can only upgrade from PostgreSQL version %s and later." msgstr "このユーティリティではPostgreSQLバージョン%s以降のバージョンからのみアップグレードできます。" -#: check.c:860 +#: check.c:869 #, c-format msgid "This utility can only upgrade to PostgreSQL version %s." msgstr "このユーティリティは、PostgreSQLバージョン%sにのみアップグレードできます。" -#: check.c:869 +#: check.c:878 #, c-format msgid "This utility cannot be used to downgrade to older major PostgreSQL versions." msgstr "このユーティリティは PostgreSQL の過去のメジャーバージョンにダウングレードする用途では使用できません。" -#: check.c:874 +#: check.c:883 #, c-format msgid "Old cluster data and binary directories are from different major versions." msgstr "旧クラスタのデータとバイナリのディレクトリは異なるメジャーバージョンのものです。" -#: check.c:877 +#: check.c:886 #, c-format msgid "New cluster data and binary directories are from different major versions." msgstr "新クラスタのデータとバイナリのディレクトリは異なるメジャーバージョンのものです。" -#: check.c:888 +#: check.c:897 #, c-format msgid "The option %s cannot be used for upgrades from PostgreSQL %s and later." msgstr "PostgreSQL %2$s以降からのアップグレードでは %1$s オプションは使用できません。" -#: check.c:904 +#: check.c:913 #, c-format msgid "When checking a live server, the old and new port numbers must be different." msgstr "稼働中のサーバーをチェックする場合、新旧のポート番号が異なっている必要があります。" -#: check.c:924 +#: check.c:933 #, c-format msgid "New cluster database \"%s\" is not empty: found relation \"%s.%s\"" msgstr "新クラスタのデータベース\"%s\"が空ではありません: リレーション\"%s.%s\"が見つかりました" -#: check.c:947 +#: check.c:956 #, c-format msgid "Checking for new cluster tablespace directories" msgstr "新しいクラスタのテーブル空間ディレクトリを確認しています" -#: check.c:958 +#: check.c:967 #, c-format msgid "new cluster tablespace directory already exists: \"%s\"" msgstr "新しいクラスタのテーブル空間ディレクトリはすでに存在します: \"%s\"" -#: check.c:992 +#: check.c:1001 #, c-format msgid "" "\n" @@ -394,7 +394,7 @@ msgstr "" "\n" "警告: 新データディレクトリが旧データディレクトリ、つまり %sの中にあってはなりません" -#: check.c:1016 +#: check.c:1025 #, c-format msgid "" "\n" @@ -403,53 +403,54 @@ msgstr "" "\n" "警告: ユーザー定義テーブル空間の場所がデータディレクトリ、つまり %s の中にあってはなりません。" -#: check.c:1026 +#: check.c:1035 #, c-format msgid "Creating script to delete old cluster" msgstr "旧クラスタを削除するスクリプトを作成しています" -#: check.c:1054 +#: check.c:1063 #, c-format msgid "could not add execute permission to file \"%s\": %m" msgstr "ファイル\"%s\"に実行権限を追加できませんでした: %m" -#: check.c:1074 +#: check.c:1083 #, c-format msgid "Checking database user is the install user" msgstr "データベースユーザーがインストールユーザーかどうかをチェックしています" -#: check.c:1090 +#: check.c:1099 #, c-format msgid "database user \"%s\" is not the install user" msgstr "データベースユーザー\"%s\"がインストールユーザーではありません" -#: check.c:1101 +#: check.c:1110 #, c-format msgid "could not determine the number of users" msgstr "ユーザー数を特定できませんでした" -#: check.c:1109 +#: check.c:1118 #, c-format msgid "Only the install user can be defined in the new cluster." msgstr "新クラスタ内で定義できるのはインストールユーザーのみです。" -#: check.c:1139 +#: check.c:1148 #, c-format msgid "Checking database connection settings" msgstr "データベース接続の設定を確認しています" -#: check.c:1167 +#: 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:1194 check.c:1315 check.c:1411 check.c:1539 check.c:1615 -#: check.c:1673 check.c:1756 check.c:2124 check.c:2266 function.c:229 +#: 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:1195 +#: check.c:1204 #, c-format msgid "" "All non-template0 databases must allow connections, i.e. their\n" @@ -468,27 +469,27 @@ msgstr "" "一覧が以下のファイルにあります:\n" " %s" -#: check.c:1220 +#: check.c:1229 #, c-format msgid "Checking for prepared transactions" msgstr "準備済みトランザクションをチェックしています" -#: check.c:1229 +#: check.c:1238 #, c-format msgid "The source cluster contains prepared transactions" msgstr "移行元クラスタに準備済みトランザクションがあります" -#: check.c:1231 +#: check.c:1240 #, c-format msgid "The target cluster contains prepared transactions" msgstr "移行先クラスタに準備済みトランザクションがあります" -#: check.c:1291 +#: check.c:1300 #, c-format msgid "Checking for contrib/isn with bigint-passing mismatch" msgstr "bigint を渡す際にミスマッチが発生する contrib/isn をチェックしています" -#: check.c:1316 +#: check.c:1325 #, c-format msgid "" "Your installation contains \"contrib/isn\" functions which rely on the\n" @@ -508,12 +509,12 @@ msgstr "" "問題のある関数の一覧は以下のファイルにあります:\n" " %s" -#: check.c:1396 +#: check.c:1405 #, c-format msgid "Checking for user-defined postfix operators" msgstr "ユーザー定義の後置演算子を確認しています" -#: check.c:1412 +#: check.c:1421 #, c-format msgid "" "Your installation contains user-defined postfix operators, which are not\n" @@ -528,12 +529,12 @@ msgstr "" "以下のファイルにユーザー定義後置演算子の一覧があります:\n" " %s" -#: check.c:1467 +#: check.c:1476 #, c-format msgid "Checking for incompatible polymorphic functions" msgstr "非互換の多態関数を確認しています" -#: check.c:1540 +#: check.c:1549 #, c-format msgid "" "Your installation contains user-defined objects that refer to internal\n" @@ -551,12 +552,12 @@ msgstr "" "問題となるオブジェクトの一覧は以下のファイルにあります:\n" " %s" -#: check.c:1600 +#: check.c:1609 #, c-format msgid "Checking for tables WITH OIDS" msgstr "WITH OIDS宣言されたテーブルをチェックしています" -#: check.c:1616 +#: check.c:1625 #, c-format msgid "" "Your installation contains tables declared WITH OIDS, which is not\n" @@ -571,12 +572,36 @@ msgstr "" "以下のファイルにこの問題を抱えるテーブルの一覧があります:\n" " %s" -#: check.c:1643 +#: 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" +"この状態は、次のコマンドを\n" +" ALTER TABLE テーブル名 ALTER 列名 SET NOT NULL;\n" +"以下のファイルにリストされている各列に対して実行することで解消できます:\n" +" %s" + +#: check.c:1740 #, c-format msgid "Checking for roles starting with \"pg_\"" msgstr "'pg_' で始まるロールをチェックしています" -#: check.c:1674 +#: check.c:1771 #, c-format msgid "" "Your installation contains roles starting with \"pg_\".\n" @@ -592,12 +617,12 @@ msgstr "" "\"pg_\"で始まるロールの一覧は以下のファイルにあります:\n" " %s" -#: check.c:1728 +#: check.c:1825 #, c-format msgid "Checking for user-defined encoding conversions" msgstr "ユーザー定義のエンコーディング変換を確認しています" -#: check.c:1757 +#: check.c:1854 #, c-format msgid "" "Your installation contains user-defined encoding conversions.\n" @@ -615,17 +640,17 @@ msgstr "" "ユーザー定義のエンコーディング変換の一覧は以下のファイルにあります:\n" " %s" -#: check.c:1842 +#: check.c:1939 #, c-format msgid "Checking for objects affected by Unicode update" msgstr "Unicodeの更新によって影響を受けるオブジェクトを確認しています" -#: check.c:1936 version.c:121 +#: check.c:2038 version.c:121 #, c-format msgid "warning" msgstr "警告" -#: check.c:1937 +#: check.c:2039 #, c-format msgid "" "Your installation contains relations that might be affected by a new version of Unicode.\n" @@ -636,52 +661,52 @@ msgstr "" "影響を受ける可能性があるリレーションの一覧は以下のファイルにあります:\n" " %s" -#: check.c:1973 +#: check.c:2075 #, c-format msgid "Checking for new cluster logical replication slots" msgstr "新しいクラスタの論理レプリケーションスロットを確認しています" -#: check.c:1981 +#: check.c:2083 #, c-format msgid "could not count the number of logical replication slots" msgstr "論理レプリケーションスロットの数を数えられませんでした" -#: check.c:1986 +#: check.c:2088 #, c-format msgid "expected 0 logical replication slots but found %d" msgstr "論理レプリケーションスロット数は0であることを期待していましたが、%d個ありました" -#: check.c:1996 check.c:2047 +#: check.c:2098 check.c:2149 #, c-format msgid "could not determine parameter settings on new cluster" msgstr "新クラスタ上のパラメータ設定を決定できませんでした" -#: check.c:2001 +#: check.c:2103 #, c-format msgid "\"wal_level\" must be \"logical\" but is set to \"%s\"" msgstr "\"wal_level\"は\"logical\"でなければなりませんが\"%s\"に設定されています" -#: check.c:2007 +#: 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:2039 +#: check.c:2141 #, c-format msgid "Checking for new cluster configuration for subscriptions" msgstr "新しいクラスタの構成のサブスクリプションを確認しています" -#: check.c:2051 +#: check.c:2153 #, c-format 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:2073 +#: check.c:2175 #, c-format msgid "Checking for valid logical replication slots" msgstr "有効な論理レプリケーションスロットを確認しています" -#: check.c:2125 +#: check.c:2227 #, c-format msgid "" "Your installation contains logical replication slots that cannot be upgraded.\n" @@ -696,12 +721,12 @@ msgstr "" "問題のある列の一覧は、以下のファイルにあります: \n" " %s" -#: check.c:2185 +#: check.c:2287 #, c-format msgid "Checking for subscription state" msgstr "サブスクリプション状態を確認しています" -#: check.c:2267 +#: check.c:2369 #, c-format msgid "" "Your installation contains subscriptions without origin or having relations not in i (initialize) or r (ready) state.\n" @@ -2007,7 +2032,7 @@ msgstr "バージョンファイル\"%s\"をオープンできませんでした msgid "could not parse version file \"%s\"" msgstr "バージョンファイル\"%s\"をパースできませんでした" -#: server.c:317 +#: server.c:299 #, c-format msgid "" "\n" @@ -2016,7 +2041,7 @@ msgstr "" "\n" "%s" -#: server.c:321 +#: server.c:303 #, c-format msgid "" "could not connect to source postmaster started with the command:\n" @@ -2025,7 +2050,7 @@ msgstr "" "以下のコマンドで起動した移行元postmasterに接続できませんでした:\n" "%s" -#: server.c:325 +#: server.c:307 #, c-format msgid "" "could not connect to target postmaster started with the command:\n" @@ -2034,22 +2059,22 @@ msgstr "" "以下のコマンドで起動した移行先postmasterに接続できませんでした:\n" "%s" -#: server.c:339 +#: server.c:321 #, c-format msgid "pg_ctl failed to start the source server, or connection failed" msgstr "pg_ctl が移行元サーバーの起動に失敗した、あるいは接続に失敗しました" -#: server.c:341 +#: server.c:323 #, c-format msgid "pg_ctl failed to start the target server, or connection failed" msgstr "pg_ctl が移行先サーバーの起動に失敗した、あるいは接続に失敗しました" -#: server.c:386 task.c:195 +#: server.c:368 task.c:195 #, c-format msgid "out of memory" msgstr "メモリ不足です" -#: server.c:399 +#: server.c:381 #, c-format msgid "libpq environment variable %s has a non-local server value: %s" msgstr "libpq の環境変数 %s で、ローカルでないサーバー値が設定されています: %s" diff --git a/src/bin/pg_verifybackup/po/es.po b/src/bin/pg_verifybackup/po/es.po index 09c31d2161d31..36596cccba87a 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-09-20 09:47+0000\n" +"POT-Creation-Date: 2025-11-08 00: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_waldump/po/es.po b/src/bin/pg_waldump/po/es.po index 191b808a44951..3509e55c8d1e1 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-09-20 09:48+0000\n" +"POT-Creation-Date: 2025-11-08 00:19+0000\n" "PO-Revision-Date: 2025-09-21 11:39+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -506,7 +506,6 @@ msgstr "info bits %04X no válidos en segment WAL %s, LSN %X/%X, posición %u" #: 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" msgid "WAL file is from different database system: WAL file database system identifier is %, pg_control database system identifier is %" msgstr "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %, identificador en pg_control es %" @@ -609,7 +608,3 @@ msgstr "no se pudo restaurar la imagen en %X/%X comprimida con un método descon #, c-format msgid "could not decompress image at %X/%X, block %d" msgstr "no se pudo descomprimir la imagen en %X/%X, bloque %d" - -#, 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 "archivo WAL es de un sistema de bases de datos distinto: identificador de sistema en archivo WAL es %llu, identificador en pg_control es %llu" diff --git a/src/bin/pg_walsummary/po/es.po b/src/bin/pg_walsummary/po/es.po index fcde0694da916..f73f6eb25bee3 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-09-20 09:53+0000\n" +"POT-Creation-Date: 2025-11-08 00:23+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/psql/po/de.po b/src/bin/psql/po/de.po index 6f2cfc6f215b7..10c0351a6ff4c 100644 --- a/src/bin/psql/po/de.po +++ b/src/bin/psql/po/de.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-08-25 17:18+0000\n" -"PO-Revision-Date: 2025-08-25 22:20+0200\n" +"POT-Creation-Date: 2025-11-06 08:48+0000\n" +"PO-Revision-Date: 2025-11-06 10:13+0100\n" "Last-Translator: Peter Eisentraut \n" "Language-Team: German \n" "Language: de\n" @@ -2728,7 +2728,7 @@ msgstr "" "psql ist das interaktive PostgreSQL-Terminal.\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 "Aufruf:\n" @@ -3986,6 +3986,15 @@ msgstr "" " Zielbreite für das Format »wrapped«\n" #: help.c:483 +#, c-format +msgid "" +" csv_fieldsep\n" +" field separator for CSV output format (default \"%c\")\n" +msgstr "" +" csv_fieldsep\n" +" Feldtrennzeichen für CSV-Ausgabeformat (Standard »%c«)\n" + +#: help.c:486 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -3993,7 +4002,7 @@ msgstr "" " expanded (oder x)\n" " erweiterte Ausgabe [on, off, auto]\n" -#: help.c:485 +#: help.c:488 #, c-format msgid "" " fieldsep\n" @@ -4002,7 +4011,7 @@ msgstr "" " fieldsep\n" " Feldtrennzeichen für unausgerichteten Ausgabemodus (Standard »%s«)\n" -#: help.c:488 +#: help.c:491 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -4010,7 +4019,7 @@ msgstr "" " fieldsep_zero\n" " Feldtrennzeichen für unausgerichteten Ausgabemodus auf Null-Byte setzen\n" -#: help.c:490 +#: help.c:493 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -4018,7 +4027,7 @@ msgstr "" " footer\n" " Tabellenfußzeile ein- oder auschalten [on, off]\n" -#: help.c:492 +#: help.c:495 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -4026,7 +4035,7 @@ msgstr "" " format\n" " Ausgabeformat setzen [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" @@ -4034,7 +4043,7 @@ msgstr "" " linestyle\n" " Rahmenlinienstil setzen [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" @@ -4042,7 +4051,7 @@ msgstr "" " null\n" " setzt die Zeichenkette, die anstelle eines NULL-Wertes ausgegeben wird\n" -#: help.c:498 +#: help.c:501 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4051,7 +4060,7 @@ msgstr "" " Verwendung eines Locale-spezifischen Zeichens zur Trennung von Zifferngruppen\n" " einschalten [on, off]\n" -#: help.c:500 +#: help.c:503 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4059,7 +4068,7 @@ msgstr "" " pager\n" " kontrolliert Verwendung eines externen Pager-Programms [yes, no, always]\n" -#: help.c:502 +#: help.c:505 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4067,7 +4076,7 @@ msgstr "" " recordsep\n" " Satztrennzeichen für unausgerichteten Ausgabemodus\n" -#: help.c:504 +#: help.c:507 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4075,7 +4084,7 @@ msgstr "" " recordsep_zero\n" " Satztrennzeichen für unausgerichteten Ausgabemodus auf Null-Byte setzen\n" -#: help.c:506 +#: help.c:509 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4085,7 +4094,7 @@ msgstr "" " Attribute für das »table«-Tag im Format »html« oder proportionale\n" " Spaltenbreite für links ausgerichtete Datentypen im Format »latex-longtable«\n" -#: help.c:509 +#: help.c:512 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4093,7 +4102,7 @@ msgstr "" " title\n" " setzt den Titel darauffolgend ausgegebener Tabellen\n" -#: help.c:511 +#: help.c:514 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4101,7 +4110,7 @@ msgstr "" " tuples_only\n" " wenn gesetzt werden nur die eigentlichen Tabellendaten gezeigt\n" -#: help.c:513 +#: help.c:516 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4113,7 +4122,7 @@ msgstr "" " unicode_header_linestyle\n" " setzt den Stil für Unicode-Linien [single, double]\n" -#: help.c:517 +#: help.c:520 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4123,7 +4132,7 @@ msgstr "" " setzt die maximale Breite der Kopfzeile für die erweiterte Ausgabe\n" " [full, column, page, ganze Zahl]\n" -#: help.c:521 +#: help.c:524 msgid "" "\n" "Environment variables:\n" @@ -4131,7 +4140,7 @@ msgstr "" "\n" "Umgebungsvariablen:\n" -#: help.c:525 +#: help.c:528 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4141,7 +4150,7 @@ msgstr "" " oder \\setenv NAME [WERT] innerhalb von psql\n" "\n" -#: help.c:527 +#: help.c:530 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4153,7 +4162,7 @@ msgstr "" " oder \\setenv NAME [WERT] innerhalb von psql\n" "\n" -#: help.c:530 +#: help.c:533 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4161,7 +4170,7 @@ msgstr "" " COLUMNS\n" " Anzahl Spalten im Format »wrapped«\n" -#: help.c:532 +#: help.c:535 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4169,7 +4178,7 @@ msgstr "" " PGAPPNAME\n" " wie Verbindungsparameter »application_name«\n" -#: help.c:534 +#: help.c:537 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4177,7 +4186,7 @@ msgstr "" " PGDATABASE\n" " wie Verbindungsparameter »dbname«\n" -#: help.c:536 +#: help.c:539 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4185,7 +4194,7 @@ msgstr "" " PGHOST\n" " wie Verbindungsparameter »host«\n" -#: help.c:538 +#: help.c:541 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4193,7 +4202,7 @@ msgstr "" " PGPASSFILE\n" " Name der Passwortdatei\n" -#: help.c:540 +#: help.c:543 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4201,7 +4210,7 @@ msgstr "" " PGPASSWORD\n" " Verbindungspasswort (nicht empfohlen)\n" -#: help.c:542 +#: help.c:545 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4209,7 +4218,7 @@ msgstr "" " PGPORT\n" " wie Verbindungsparameter »port«\n" -#: help.c:544 +#: help.c:547 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4217,7 +4226,7 @@ msgstr "" " PGUSER\n" " wie Verbindungsparameter »user«\n" -#: help.c:546 +#: help.c:549 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4225,7 +4234,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " Editor für Befehle \\e, \\ef und \\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" @@ -4233,7 +4242,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " wie die Zeilennummer beim Aufruf des Editors angegeben wird\n" -#: help.c:550 +#: help.c:553 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4241,7 +4250,7 @@ msgstr "" " PSQL_HISTORY\n" " alternativer Pfad für History-Datei\n" -#: help.c:552 +#: help.c:555 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4249,7 +4258,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " Name des externen Pager-Programms\n" -#: help.c:555 +#: help.c:558 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4257,7 +4266,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " Name des externen Pager-Programms für \\watch\n" -#: help.c:558 +#: help.c:561 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4265,7 +4274,7 @@ msgstr "" " PSQLRC\n" " alternativer Pfad für .psqlrc-Datei des Benutzers\n" -#: help.c:560 +#: help.c:563 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4273,7 +4282,7 @@ msgstr "" " SHELL\n" " Shell für den Befehl \\!\n" -#: help.c:562 +#: help.c:565 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4281,11 +4290,11 @@ msgstr "" " TMPDIR\n" " Verzeichnis für temporäre Dateien\n" -#: help.c:622 +#: help.c:625 msgid "Available help:\n" msgstr "Verfügbare Hilfe:\n" -#: help.c:717 +#: help.c:720 #, c-format msgid "" "Command: %s\n" @@ -4304,7 +4313,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:740 +#: help.c:743 #, c-format msgid "" "No help available for \"%s\".\n" diff --git a/src/bin/psql/po/es.po b/src/bin/psql/po/es.po index 17daf56970842..f446e64d7e10c 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-09-20 09:47+0000\n" -"PO-Revision-Date: 2025-09-22 11:36+0200\n" +"POT-Creation-Date: 2025-11-08 00:18+0000\n" +"PO-Revision-Date: 2025-11-08 19:28+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -167,7 +167,6 @@ msgstr "Interrumpido\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" msgid "Cannot print table contents: number of cells % is equal to or exceeds maximum %zu.\n" msgstr "No se puede imprimir el contenido de la tabla: el número de celdas % es igual o mayor al máximo %zu.\n" @@ -178,7 +177,6 @@ msgstr "No se puede agregar un encabezado al contenido de la tabla: la cantidad #: ../../fe_utils/print.c:3272 #, c-format -#| msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" msgid "Cannot add cell to table content: total cell count of % exceeded.\n" msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de % ha sido excedida.\n" @@ -250,9 +248,6 @@ msgid "You are currently not connected to a database.\n" msgstr "No está conectado a una base de datos.\n" #: command.c:839 -#| msgid "" -#| "\n" -#| "Connection options:\n" msgid "Connection Information" msgstr "Información de Conexión" @@ -277,7 +272,6 @@ msgid "Host Address" msgstr "Dirección de Host" #: command.c:862 -#| msgid "directory" msgid "Socket Directory" msgstr "Directorio de Socket" @@ -286,7 +280,6 @@ msgid "Host" msgstr "Host" #: command.c:878 -#| msgid "Server" msgid "Server Port" msgstr "Puerto del Servidor" @@ -295,12 +288,10 @@ msgid "Options" msgstr "Opciones" #: command.c:886 -#| msgid "Version" msgid "Protocol Version" msgstr "Versión de Protocolo" #: command.c:890 -#| msgid "Password: " msgid "Password Used" msgstr "Se Usó Contraseña" @@ -313,7 +304,6 @@ msgid "true" msgstr "verdadero" #: command.c:894 -#| msgid "GSSAPI authentication not supported" msgid "GSSAPI Authenticated" msgstr "Autenticado con GSSAPI" @@ -322,7 +312,6 @@ msgid "Backend PID" msgstr "PID de Backend" #: command.c:902 -#| msgid "Connection\n" msgid "SSL Connection" msgstr "Conexión SSL" @@ -336,7 +325,6 @@ msgid "unknown" msgstr "desconocido" #: command.c:925 -#| msgid "SSL error code %lu" msgid "SSL Protocol" msgstr "Protocolo SSL" @@ -349,7 +337,6 @@ msgid "SSL Cipher" msgstr "Cifrado de SSL" #: command.c:934 -#| msgid "Compression" msgid "SSL Compression" msgstr "Compresión SSL" @@ -395,7 +382,6 @@ msgstr "No hay error anterior." #: command.c:1766 command.c:1973 command.c:1999 command.c:3380 #, c-format -#| msgid "%s not allowed in pipeline mode" msgid "\\%s not allowed in pipeline mode" msgstr "\\%s no se permite en modo pipeline" @@ -473,7 +459,6 @@ msgstr "\\sendpipeline debe ser usado después de \\bind o \\bind_named" #: command.c:2860 #, c-format -#| msgid "%s not allowed in pipeline mode" msgid "\\sendpipeline not allowed outside of pipeline mode" msgstr "\\sendpipeline no se permite fuera del modo pipeline" @@ -1101,7 +1086,6 @@ msgstr "Pipeline abortado, la orden no se ejecutó" #: common.c:1893 #, c-format -#| msgid "fastpath function calls not supported in a replication connection" msgid "COPY in a pipeline is not supported, aborting connection" msgstr "no se soporta COPY en un pipeline, abortando conexión" @@ -1294,7 +1278,6 @@ msgstr "Listado de tablespaces" #: describe.c:316 #, c-format -#| msgid "\\df only takes [anptwS+] as options" msgid "\\df only takes [%s] as options" msgstr "\\df sólo acepta las opciones [%s]" @@ -1507,7 +1490,6 @@ msgid "schema" msgstr "esquema" #: describe.c:1243 -#| msgid "large object %u" msgid "large object" msgstr "objeto grande" @@ -1835,17 +1817,14 @@ msgid "Publications:" msgstr "Publicaciones:" #: describe.c:3127 -#| msgid "table constraint" msgid "Not-null constraints:" msgstr "Restricción not-null:" #: describe.c:3141 -#| msgid "No inheritance" msgid " (local, inherited)" msgstr " (local, heredada)" #: describe.c:3142 -#| msgid "No inheritance" msgid " (inherited)" msgstr " (heredada)" @@ -2068,79 +2047,66 @@ msgstr "Método de acceso" #: describe.c:4180 #, c-format -#| msgid "Did not find any relation named \"%s\"." msgid "Did not find any relations named \"%s\"." msgstr "No se encontraron relaciones con el nombre «%s»." #: describe.c:4183 #, c-format -#| msgid "Did not find any extension named \"%s\"." msgid "Did not find any tables named \"%s\"." msgstr "No se encontraron tablas con el nombre «%s»." #: describe.c:4186 #, c-format -#| msgid "Did not find any extension named \"%s\"." msgid "Did not find any indexes named \"%s\"." msgstr "No se encontraron índices con el nombre «%s»." #: describe.c:4189 #, c-format -#| msgid "Did not find any extension named \"%s\"." msgid "Did not find any views named \"%s\"." msgstr "No se encontraron vistas con el nombre «%s»." #: describe.c:4192 #, c-format -#| msgid "Did not find any relation named \"%s\"." msgid "Did not find any materialized views named \"%s\"." msgstr "No se encontraron vista materializadas con el nombre «%s»." #: describe.c:4195 #, c-format -#| msgid "Did not find any extension named \"%s\"." msgid "Did not find any sequences named \"%s\"." msgstr "No se encontraron secuencias con el nombre «%s»." #: describe.c:4198 #, c-format -#| msgid "Did not find any relation named \"%s\"." msgid "Did not find any foreign tables named \"%s\"." msgstr "No se encontraron tablas foráneas con el nombre «%s»." #: describe.c:4209 #, c-format -#| msgid "Did not find any extensions." msgid "Did not find any tables." msgstr "No se encontraron tablas." #: describe.c:4211 #, c-format -#| msgid "Did not find any extensions." msgid "Did not find any indexes." msgstr "No se encontraron índices." #: describe.c:4213 #, c-format -#| msgid "Did not find any settings." msgid "Did not find any views." msgstr "No se encontraron vistas." #: describe.c:4215 #, c-format -#| msgid "define a new materialized view" msgid "Did not find any materialized views." msgstr "No se encontraron vistas materializadas." #: describe.c:4217 #, c-format -#| msgid "Did not find any settings." msgid "Did not find any sequences." msgstr "No se encontraron secuencias." #: describe.c:4219 #, c-format -#| msgid "Did not find any relations." msgid "Did not find any foreign tables." msgstr "No se encontraron tablas foráneas." @@ -2149,27 +2115,22 @@ msgid "List of relations" msgstr "Listado de relaciones" #: describe.c:4228 -#| msgid "List of tablespaces" msgid "List of tables" msgstr "Listado de tablas" #: describe.c:4229 -#| msgid "List of domains" msgid "List of indexes" msgstr "Listado de índices" #: describe.c:4230 -#| msgid "List of roles" msgid "List of views" msgstr "Listado de vistas" #: describe.c:4231 -#| msgid "materialized view" msgid "List of materialized views" msgstr "Listado de vistas materializadas" #: describe.c:4232 -#| msgid "List of schemas" msgid "List of sequences" msgstr "Listado de secuencias" @@ -2525,7 +2486,6 @@ msgid "List of user mappings" msgstr "Listado de mapeos de usuario" #: describe.c:6196 -#| msgid "Default footer is on.\n" msgid "Default version" msgstr "Versión por omisión" @@ -2588,7 +2548,6 @@ msgid "Truncates" msgstr "Truncates" #: describe.c:6440 describe.c:6574 describe.c:6652 -#| msgid "cannot set generated column \"%s\"" msgid "Generated columns" msgstr "Columnas generadas" @@ -2776,7 +2735,7 @@ msgstr "" "psql es el terminal interactivo de PostgreSQL.\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 "Empleo:\n" @@ -3222,12 +3181,10 @@ msgid "Informational\n" msgstr "Informativo\n" #: help.c:221 -#| msgid " (options: S = show system objects, + = additional detail)\n" msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" msgstr " (opciones: S = mostrar objs. de sistema, x = modo expandido, + = más detalle)\n" #: help.c:222 -#| msgid " \\d[S+] list tables, views, and sequences\n" msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr " \\d[Sx+] listar tablas, vistas y secuencias\n" @@ -3236,99 +3193,78 @@ msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr " \\d[S+] NOMBRE describir tabla, índice, secuencia o vista\n" #: help.c:224 -#| msgid " \\da[S] [PATTERN] list aggregates\n" msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[Sx] [PATRÓN] listar funciones de agregación\n" #: help.c:225 -#| msgid " \\dA[+] [PATTERN] list access methods\n" msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[x+] [PATRÓN] listar métodos de acceso\n" #: help.c:226 -#| msgid " \\dAc[+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[x+] [AMPTRN [TYPEPTRN]] listar las clases de operadores\n" #: help.c:227 -#| msgid " \\dAf[+] [AMPTRN [TYPEPTRN]] list operator families\n" msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[x+] [AMPTRN [TYPEPTRN]] listar las familias de operadores\n" #: help.c:228 -#| msgid " \\dAo[+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr " \\dAo[x+] [AMPTRN [OPFPTRN]] listar los operadores de la familia de operadores\n" #: help.c:229 -#| msgid " \\dAp[+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgstr " \\dAp[x+] [AMPTRN [OPFPTRN]] enumera las funciones de la familia de operadores\n" #: help.c:230 -#| msgid " \\db[+] [PATTERN] list tablespaces\n" msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[x+] [PATRÓN] listar tablespaces\n" #: help.c:231 -#| msgid " \\dc[S+] [PATTERN] list conversions\n" msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[Sx+] [PATRÓN] listar conversiones\n" #: help.c:232 -#| msgid " \\dconfig[+] [PATTERN] list configuration parameters\n" msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[x+] [PATRÓN] listar parámetros de configuración\n" #: help.c:233 -#| msgid " \\dC[+] [PATTERN] list casts\n" msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[x+] [PATRÓN] listar conversiones de tipo (casts)\n" #: help.c:234 -#| msgid " \\dd[S] [PATTERN] show object descriptions not displayed elsewhere\n" msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr " \\dd[Sx] [PATRÓN] listar comentarios de objetos que no aparecen en otra parte\n" #: help.c:235 -#| msgid " \\dD[S+] [PATTERN] list domains\n" msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[Sx+] [PATRÓN] listar dominios\n" #: help.c:236 -#| msgid " \\ddp [PATTERN] list default privileges\n" msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp[x] [PATRÓN] listar privilegios por omisión\n" #: help.c:237 -#| msgid " \\dE[S+] [PATTERN] list foreign tables\n" msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[S+] [PATRÓN] listar tablas foráneas\n" #: help.c:238 -#| msgid " \\des[+] [PATTERN] list foreign servers\n" msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[x+] [PATRÓN] listar servidores foráneos\n" #: help.c:239 -#| msgid " \\det[+] [PATTERN] list foreign tables\n" msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[x+] [PATRÓN] listar tablas foráneas\n" #: help.c:240 -#| msgid " \\deu[+] [PATTERN] list user mappings\n" msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[x+] [PATRÓN] listar mapeos de usuario\n" #: help.c:241 -#| msgid " \\dew[+] [PATTERN] list foreign-data wrappers\n" msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[x+] [PATRÓN] listar conectores de datos externos\n" #: help.c:242 -#| msgid "" -#| " \\df[anptw][S+] [FUNCPTRN [TYPEPTRN ...]]\n" -#| " list [only agg/normal/procedure/trigger/window] functions\n" msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" @@ -3337,82 +3273,64 @@ msgstr "" " listar funciones [sólo ag./normal/proc./trigger/ventana]\n" #: help.c:244 -#| msgid " \\dF[+] [PATTERN] list text search configurations\n" msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr " \\dF[x+] [PATRÓN] listar configuraciones de búsqueda en texto\n" #: help.c:245 -#| msgid " \\dFd[+] [PATTERN] list text search dictionaries\n" msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr " \\dFd[x+] [PATRÓN] listar diccionarios de búsqueda en texto\n" #: help.c:246 -#| msgid " \\dFp[+] [PATTERN] list text search parsers\n" msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr " \\dFp[x+] [PATRÓN] listar analizadores (parsers) de búsq. en texto\n" #: help.c:247 -#| msgid " \\dFt[+] [PATTERN] list text search templates\n" msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr " \\dFt[x+] [PATRÓN] listar plantillas de búsqueda en texto\n" #: help.c:248 -#| msgid " \\dg[S+] [PATTERN] list roles\n" msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[Sx+] [PATRÓN] listar roles\n" #: help.c:249 -#| msgid " \\di[S+] [PATTERN] list indexes\n" msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[Sx+] [PATRÓN] listar índices\n" #: help.c:250 -#| msgid " \\dl[+] list large objects, same as \\lo_list\n" msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr " \\dl[x+] listar objetos grandes, lo mismo que \\lo_list\n" #: help.c:251 -#| msgid " \\dL[S+] [PATTERN] list procedural languages\n" msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[Sx+] [PATRÓN] listar lenguajes procedurales\n" #: help.c:252 -#| msgid " \\dm[S+] [PATTERN] list materialized views\n" msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[Sx+] [PATRÓN] listar vistas materializadas\n" #: help.c:253 -#| msgid " \\dn[S+] [PATTERN] list schemas\n" msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[Sx+] [PATRÓN] listar esquemas\n" #: help.c:254 -#| msgid "" -#| " \\do[S+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" -#| " list operators\n" msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" -msgstr "" -" \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]] listar operadores\n" +msgstr " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]] listar operadores\n" #: help.c:256 -#| msgid " \\dO[S+] [PATTERN] list collations\n" msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[Sx+] [PATRÓN] listar ordenamientos (collations)\n" #: help.c:257 -#| msgid " \\dp[S] [PATTERN] list table, view, and sequence access privileges\n" msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr " \\dp[Sx] [PATRÓN] listar privilegios de acceso a tablas, vistas y secuencias\n" #: help.c:258 -#| msgid " \\dP[itn+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgstr " \\dP[itnx+] [PATRN] listar relaciones particionadas (sólo tablas/índices) [n=anidadas]\n" #: help.c:259 -#| msgid " \\drds [ROLEPTRN [DBPTRN]] list per-database role settings\n" msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" @@ -3421,77 +3339,62 @@ msgstr "" " listar parámetros de rol por base de datos\n" #: help.c:261 -#| msgid " \\drg[S] [PATTERN] list role grants\n" msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\drg[Sx] [PATRÓN] listar roles otorgados\n" #: help.c:262 -#| msgid " \\dRp[+] [PATTERN] list replication publications\n" msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[x+] [PATRÓN] listar publicaciones de replicación\n" #: help.c:263 -#| msgid " \\dRs[+] [PATTERN] list replication subscriptions\n" msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[x+] [PATRÓN] listar suscripciones de replicación\n" #: help.c:264 -#| msgid " \\ds[S+] [PATTERN] list sequences\n" msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[Sx+] [PATRÓN] listar secuencias\n" #: help.c:265 -#| msgid " \\dt[S+] [PATTERN] list tables\n" msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[Sx+] [PATRÓN] listar tablas\n" #: help.c:266 -#| msgid " \\dT[S+] [PATTERN] list data types\n" msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[Sx+] [PATRÓN] listar tipos de dato\n" #: help.c:267 -#| msgid " \\du[S+] [PATTERN] list roles\n" msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[Sx+] [PATRÓN] listar roles\n" #: help.c:268 -#| msgid " \\dv[S+] [PATTERN] list views\n" msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[Sx+] [PATRÓN] listar vistas\n" #: help.c:269 -#| msgid " \\dx[+] [PATTERN] list extensions\n" msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[x+] [PATRÓN] listar extensiones\n" #: help.c:270 -#| msgid " \\dX [PATTERN] list extended statistics\n" msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX[x] [PATRÓN] listar estadísticas extendidas\n" #: help.c:271 -#| msgid " \\dy[+] [PATTERN] list event triggers\n" msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[x+] [PATRÓN] listar disparadores por eventos\n" #: help.c:272 -#| msgid " \\l[+] [PATTERN] list databases\n" msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[x+] [PATRÓN] listar bases de datos\n" #: help.c:273 -#| msgid " \\sf[+] FUNCNAME show a function's definition\n" msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] FUNCIÓN mostrar la definición de una función\n" #: help.c:274 -#| msgid " \\sv[+] VIEWNAME show a view's definition\n" msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] VISTA mostrar la definición de una vista\n" #: help.c:275 -#| msgid " \\z[S] [PATTERN] same as \\dp\n" msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[Sx] [PATRÓN] lo mismo que \\dp\n" @@ -3501,7 +3404,9 @@ msgstr "Objetos Grandes\n" #: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" -msgstr " \\lo_export LOBOID ARCHIVO escribir objeto grande a archivo\n" +msgstr "" +" \\lo_export LOBOID ARCHIVO\n" +" escribir objeto grande a archivo\n" #: help.c:280 msgid "" @@ -3509,16 +3414,15 @@ msgid "" " read large object from file\n" msgstr "" " \\lo_import ARCHIVO [COMENTARIO]\n" -" leer objeto grande desde archivo\n" +" leer objeto grande desde archivo\n" #: help.c:282 -#| msgid " \\lo_list[+] list large objects\n" msgid " \\lo_list[x+] list large objects\n" msgstr " \\lo_list[x+] listar objetos grandes\n" #: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" -msgstr " \\lo_unlink LOBOID borrar un objeto grande\n" +msgstr " \\lo_unlink LOBOID borrar un objeto grande\n" #: help.c:286 msgid "Formatting\n" @@ -3670,8 +3574,7 @@ msgstr "Protocolo Extendido de Consultas\n" #: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" -msgstr "" -" \\bind [PARAM]... definir parámetros de consulta\n" +msgstr " \\bind [PARAM]... definir parámetros de consulta\n" #: help.c:336 msgid "" @@ -3690,12 +3593,10 @@ msgstr "" " cerrar una sentencia preparada existente\n" #: help.c:340 -#| msgid "cannot send pipeline when not in pipeline mode" msgid " \\endpipeline exit pipeline mode\n" msgstr " \\endpipeline salir de modo pipeline\n" #: help.c:341 -#| msgid " -e, --echo show the commands being sent to the server\n" msgid " \\flush flush output data to the server\n" msgstr " \\flush enviar datos salientes al servidor\n" @@ -3708,7 +3609,6 @@ msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argu msgstr " \\getresults [NÚM_RES] leer NÚM_RES resultados pendientes, o todos si no hay argumento\n" #: help.c:344 -#| msgid "deallocate a prepared statement" msgid " \\parse STMT_NAME create a prepared statement\n" msgstr " \\parse NOM_SENTENCIA crea una sentencia preparada\n" @@ -3812,9 +3712,7 @@ msgstr "" msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" -msgstr "" -" HIDE_TABLEAM\n" -" ocultar métodos de acceso de tabla\n" +msgstr " HIDE_TABLEAM ocultar métodos de acceso de tabla\n" #: help.c:413 msgid "" @@ -3944,25 +3842,22 @@ msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" msgstr "" -" SHELL_ERROR\n" -" «true» si la última orden de shell falló, «false» si tuvo éxito\n" +" 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\n" -" estado de salida de la última orden de shell\n" +" SHELL_EXIT_CODE estado de salida de la última orden de shell\n" #: 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" -" mostrar todos los resultados de una consulta combinada (\\;) en lugar\n" -" de sólo mostrar el último\n" +" SHOW_ALL_RESULTS mostrar todos los resultados de una consulta\n" +" combinada (\\;) en lugar de sólo mostrar el último\n" #: help.c:455 msgid "" @@ -4022,8 +3917,8 @@ msgid "" " WATCH_INTERVAL\n" " number of seconds \\watch waits between executions (default %s)\n" msgstr "" -" WATCH_INTERVAL\n" -" número de segundos que \\watch espera entre ejecuciones (por omisión %s)\n" +" WATCH_INTERVAL número de segundos que \\watch espera entre ejecuciones\n" +" (por omisión %s)\n" #: help.c:475 msgid "" @@ -4056,12 +3951,19 @@ msgid "" msgstr " columns define el ancho para formato «wrapped»\n" #: help.c:483 +#, c-format +msgid "" +" csv_fieldsep\n" +" field separator for CSV output format (default \"%c\")\n" +msgstr " csv_fieldsep separador de campos para CSV (por omisión: «%c»)\n" + +#: help.c:486 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" msgstr " expanded (o x) salida expandida [on, off, auto]\n" -#: help.c:485 +#: help.c:488 #, c-format msgid "" " fieldsep\n" @@ -4070,37 +3972,37 @@ msgstr "" " fieldsep separador de campos para formato «unaligned»\n" " (por omisión: «%s»)\n" -#: help.c:488 +#: help.c:491 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" msgstr " fieldsep_zero separador de campos en «unaligned» es byte cero\n" -#: help.c:490 +#: help.c:493 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" msgstr " footer activa o desactiva el pie de tabla [on, off]\n" -#: help.c:492 +#: help.c:495 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" msgstr " format define el formato de salida [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" msgstr " linestyle define el estilo de dibujo de líneas [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" msgstr " null define la cadena a imprimirse para valores null\n" -#: help.c:498 +#: help.c:501 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4108,26 +4010,26 @@ msgstr "" " numericlocale activa despliegue de carácter específico del lenguaje para\n" " separar grupos de dígitos\n" -#: help.c:500 +#: help.c:503 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" msgstr " pager controla cuándo se usará un paginador externo [yes, no, always]\n" -#: help.c:502 +#: help.c:505 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" msgstr " recordsep separador de registros (líneas) para formato «unaligned»\n" -#: help.c:504 +#: help.c:507 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" msgstr " recordsep_zero separador de registros en «unaligned» es byte cero\n" # XXX WTF does this mean? -#: help.c:506 +#: help.c:509 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4137,19 +4039,19 @@ msgstr "" " o ancho proporcional de columnas alineadas a la izquierda\n" " en formato «latex-longtable»\n" -#: help.c:509 +#: help.c:512 msgid "" " title\n" " set the table title for subsequently printed tables\n" msgstr " title define el título de tablas\n" -#: help.c:511 +#: help.c:514 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" msgstr " tuples_only si está definido, sólo los datos de la tabla se muestran\n" -#: help.c:513 +#: help.c:516 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4161,17 +4063,16 @@ msgstr "" " unicode_header_linestyle\n" " define el estilo de líneas Unicode [single, double]\n" -#: help.c:517 +#: 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" -" define el ancho máximo del encabezado para el formato expandido\n" -" [full, column, page, valor entero]\n" +" xheader_width define el ancho máximo del encabezado para el formato\n" +" expandido [full, column, page, valor entero]\n" -#: help.c:521 +#: help.c:524 msgid "" "\n" "Environment variables:\n" @@ -4179,7 +4080,7 @@ msgstr "" "\n" "Variables de ambiente:\n" -#: help.c:525 +#: help.c:528 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4188,7 +4089,7 @@ msgstr "" " NOMBRE=VALOR [NOMBRE=VALOR] psql ...\n" " o \\setenv NOMBRE [VALOR] dentro de psql\n" -#: help.c:527 +#: help.c:530 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4199,55 +4100,55 @@ msgstr "" " psql ...\n" " o \\setenv NOMBRE [VALOR] dentro de psql\n" -#: help.c:530 +#: help.c:533 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" msgstr " COLUMNS número de columnas para formato «wrapped»\n" -#: help.c:532 +#: help.c:535 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" msgstr " PGAPPNAME igual que el parámetro de conexión application_name\n" -#: help.c:534 +#: help.c:537 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" msgstr " PGDATABASE igual que el parámetro de conexión dbname\n" -#: help.c:536 +#: help.c:539 msgid "" " PGHOST\n" " same as the host connection parameter\n" msgstr " PGHOST igual que el parámetro de conexión host\n" -#: help.c:538 +#: help.c:541 msgid "" " PGPASSFILE\n" " password file name\n" msgstr " PGPASSFILE nombre de archivo de contraseñas\n" -#: help.c:540 +#: help.c:543 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" msgstr " PGPASSWORD contraseña de la conexión (no recomendado)\n" -#: help.c:542 +#: help.c:545 msgid "" " PGPORT\n" " same as the port connection parameter\n" msgstr " PGPORT igual que el parámetro de conexión port\n" -#: help.c:544 +#: help.c:547 msgid "" " PGUSER\n" " same as the user connection parameter\n" msgstr " PGUSER igual que el parámetro de conexión user\n" -#: help.c:546 +#: help.c:549 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4255,7 +4156,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor usado por órdenes \\e, \\ef, y \\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" @@ -4263,47 +4164,47 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARGS\n" " cómo especificar número de línea al invocar al editor\n" -#: help.c:550 +#: help.c:553 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" msgstr " PSQL_HISTORY ubicación alternativa del archivo de historia de órdenes\n" -#: help.c:552 +#: help.c:555 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" msgstr " PSQL_PAGER, PAGER nombre de programa paginador externo\n" -#: help.c:555 +#: help.c:558 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" msgstr " PSQL_WATCH_PAGER paginador externo para usar con \\watch\n" -#: help.c:558 +#: help.c:561 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" msgstr " PSQLRC ubicación alternativa para el archivo .psqlrc del usuario\n" -#: help.c:560 +#: help.c:563 msgid "" " SHELL\n" " shell used by the \\! command\n" msgstr " SHELL intérprete usado por la orden \\!\n" -#: help.c:562 +#: help.c:565 msgid "" " TMPDIR\n" " directory for temporary files\n" msgstr " TMPDIR directorio para archivos temporales\n" -#: help.c:622 +#: help.c:625 msgid "Available help:\n" msgstr "Ayuda disponible:\n" -#: help.c:717 +#: help.c:720 #, c-format msgid "" "Command: %s\n" @@ -4322,7 +4223,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:740 +#: help.c:743 #, c-format msgid "" "No help available for \"%s\".\n" @@ -5431,7 +5332,6 @@ msgid "error_action" msgstr "acción_en_error" #: sql_help.c:2032 -#| msgid "syntax error" msgid "maxerror" msgstr "máx.error" @@ -5888,7 +5788,6 @@ msgid "cursor_name" msgstr "nombre_de_cursor" #: sql_help.c:3373 sql_help.c:4064 sql_help.c:4158 sql_help.c:5028 -#| msgid "output_name" msgid "output_alias" msgstr "alias_de_salida" @@ -6963,31 +6862,26 @@ msgstr "valor «%s» no válido para «%s»: se esperaba número entero" #: variables.c:207 #, c-format -#| msgid "invalid input syntax for type %s" msgid "invalid input syntax for variable \"%s\"" msgstr "sintaxis de entrada no válida para la variable «%s»" #: variables.c:218 #, c-format -#| msgid "invalid value \"%s\" for \"%s\": integer expected" msgid "invalid value \"%s\" for variable \"%s\": must be greater than %.2f" msgstr "valor «%s» no válido para variable «%s»: debe ser mayor que %.2f" #: variables.c:225 #, c-format -#| msgid "invalid value \"%s\" for \"%s\": integer expected" msgid "invalid value \"%s\" for variable \"%s\": must be less than %.2f" msgstr "valor «%s» no válido para variable «%s»: debe ser menor que %.2f" #: variables.c:241 #, c-format -#| msgid "value \"%s\" is out of range for type %s" msgid "value \"%s\" is out of range for variable \"%s\"" msgstr "el valor «%s» está fuera de rango para la variable «%s»" #: variables.c:247 #, c-format -#| msgid "invalid value \"%s\" for \"%s\"" msgid "invalid value \"%s\" for variable \"%s\"" msgstr "el valor «%s» no es válido para la variable «%s»" @@ -7004,39 +6898,3 @@ msgid "" msgstr "" "valor «%s» no reconocido para «%s»\n" "Los valores disponibles son: %s." - -#, c-format -#~ msgid "Cannot print table contents: number of cells %lld is equal to or exceeds maximum %lld.\n" -#~ msgstr "No se puede imprimir el contenido de la tabla: el número de celdas %lld es igual o mayor al máximo %lld.\n" - -#, c-format -#~ msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" -#~ msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de %lld ha sido excedida.\n" - -#, c-format -#~ msgid "could not look up local user ID %d: %s" -#~ msgstr "no se pudo buscar el usuario local de ID %d: %s" - -#, c-format -#~ msgid "local user with ID %d does not exist" -#~ msgstr "no existe un usuario local con ID %d" - -#, c-format -#~ msgid "You are connected to database \"%s\" as user \"%s\" on address \"%s\" at port \"%s\".\n" -#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en la dirección «%s» port «%s».\n" - -#, c-format -#~ msgid "You are connected to database \"%s\" as user \"%s\" via socket in \"%s\" at port \"%s\".\n" -#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» a través del socket en «%s» port «%s».\n" - -#, c-format -#~ msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" (address \"%s\") at port \"%s\".\n" -#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» (dirección «%s») port «%s».\n" - -#, c-format -#~ msgid "You are connected to database \"%s\" as user \"%s\" on host \"%s\" at port \"%s\".\n" -#~ msgstr "Está conectado a la base de datos «%s» como el usuario «%s» en el servidor «%s» port «%s».\n" - -#, c-format -#~ msgid "Unlogged materialized view \"%s.%s\"" -#~ msgstr "Vista materializada unlogged «%s.%s»" diff --git a/src/bin/psql/po/fr.po b/src/bin/psql/po/fr.po index 3eb63f7694022..14e677ab964c6 100644 --- a/src/bin/psql/po/fr.po +++ b/src/bin/psql/po/fr.po @@ -11,8 +11,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 04:47+0000\n" -"PO-Revision-Date: 2025-09-20 11:05+0200\n" +"POT-Creation-Date: 2025-11-08 09:18+0000\n" +"PO-Revision-Date: 2025-11-08 11:47+0100\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -20,7 +20,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 @@ -2741,7 +2741,7 @@ msgstr "" "psql est l'interface interactive de PostgreSQL.\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 "Usage :\n" @@ -4057,6 +4057,15 @@ msgstr "" " largeur cible pour le format encadré\n" #: help.c:483 +#, c-format +msgid "" +" csv_fieldsep\n" +" field separator for CSV output format (default \"%c\")\n" +msgstr "" +" csv_fieldsep\n" +" champ séparateur pour le format de sortie CSV (par défaut « %c »)\n" + +#: help.c:486 msgid "" " expanded (or x)\n" " expanded output [on, off, auto]\n" @@ -4064,7 +4073,7 @@ msgstr "" " expanded (ou x)\n" " sortie étendue [on, off, auto]\n" -#: help.c:485 +#: help.c:488 #, c-format msgid "" " fieldsep\n" @@ -4073,7 +4082,7 @@ msgstr "" " fieldsep\n" " champ séparateur pour l'affichage non aligné (par défaut « %s »)\n" -#: help.c:488 +#: help.c:491 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -4081,7 +4090,7 @@ msgstr "" " fieldsep_zero\n" " configure le séparateur de champ pour l'affichage non alignée à l'octet zéro\n" -#: help.c:490 +#: help.c:493 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -4089,7 +4098,7 @@ msgstr "" " footer\n" " active ou désactive l'affiche du bas de tableau [on, off]\n" -#: help.c:492 +#: help.c:495 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -4097,7 +4106,7 @@ msgstr "" " format\n" " active le format de sortie [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" @@ -4105,7 +4114,7 @@ msgstr "" " linestyle\n" " configure l'affichage des lignes de bordure [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" @@ -4113,7 +4122,7 @@ msgstr "" " null\n" " configure la chaîne à afficher à la place d'une valeur NULL\n" -#: help.c:498 +#: help.c:501 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4122,7 +4131,7 @@ msgstr "" " active ou désactive l'affichage d'un caractère spécifique à la locale pour séparer\n" " des groupes de chiffres [on, off]\n" -#: help.c:500 +#: help.c:503 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4130,7 +4139,7 @@ msgstr "" " pager\n" " contrôle quand un paginateur externe est utilisé [yes, no, always]\n" -#: help.c:502 +#: help.c:505 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4138,7 +4147,7 @@ msgstr "" " recordsep\n" " enregistre le séparateur de ligne pour les affichages non alignés\n" -#: help.c:504 +#: help.c:507 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4147,7 +4156,7 @@ msgstr "" " initialise le séparateur d'enregistrements pour un affichage\n" " non aligné à l'octet zéro\n" -#: help.c:506 +#: help.c:509 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4158,7 +4167,7 @@ msgstr "" " proportionnelles de colonnes pour les types de données alignés à gauche dans le\n" " format latex-longtable\n" -#: help.c:509 +#: help.c:512 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4166,7 +4175,7 @@ msgstr "" " title\n" " configure le titre de la table pour toute table affichée\n" -#: help.c:511 +#: help.c:514 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4174,7 +4183,7 @@ msgstr "" " tuples_only\n" " si activé, seules les données de la table sont affichées\n" -#: help.c:513 +#: help.c:516 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4186,7 +4195,7 @@ msgstr "" " unicode_header_linestyle\n" " configure le style d'affichage de ligne Unicode [single, double]\n" -#: help.c:517 +#: help.c:520 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4196,7 +4205,7 @@ msgstr "" " configure la largeur maximale de l'entête dans le format étendu\n" " [full, column, page, valeur entière]\n" -#: help.c:521 +#: help.c:524 msgid "" "\n" "Environment variables:\n" @@ -4204,7 +4213,7 @@ msgstr "" "\n" "Variables d'environnement :\n" -#: help.c:525 +#: help.c:528 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4214,7 +4223,7 @@ msgstr "" " ou \\setenv NOM [VALEUR] dans psql\n" "\n" -#: help.c:527 +#: help.c:530 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4226,7 +4235,7 @@ msgstr "" " ou \\setenv NOM [VALEUR] dans psql\n" "\n" -#: help.c:530 +#: help.c:533 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4234,7 +4243,7 @@ msgstr "" " COLUMNS\n" " nombre de colonnes pour le format encadré\n" -#: help.c:532 +#: help.c:535 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4242,7 +4251,7 @@ msgstr "" " PGAPPNAME\n" " identique au paramètre de connexion application_name\n" -#: help.c:534 +#: help.c:537 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4250,7 +4259,7 @@ msgstr "" " PGDATABASE\n" " identique au paramètre de connexion dbname\n" -#: help.c:536 +#: help.c:539 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4258,7 +4267,7 @@ msgstr "" " PGHOST\n" " identique au paramètre de connexion host\n" -#: help.c:538 +#: help.c:541 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4266,7 +4275,7 @@ msgstr "" " PGPASSFILE\n" " nom du fichier de mot de passe\n" -#: help.c:540 +#: help.c:543 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4274,7 +4283,7 @@ msgstr "" " PGPASSWORD\n" " mot de passe de connexion (non recommendé)\n" -#: help.c:542 +#: help.c:545 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4282,7 +4291,7 @@ msgstr "" " PGPORT\n" " identique au paramètre de connexion port\n" -#: help.c:544 +#: help.c:547 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4290,7 +4299,7 @@ msgstr "" " PGUSER\n" " identique au paramètre de connexion user\n" -#: help.c:546 +#: help.c:549 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4298,7 +4307,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " éditeur utilisé par les commandes \\e, \\ef et \\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" @@ -4306,7 +4315,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " comment spécifier un numéro de ligne lors de l'appel de l'éditeur\n" -#: help.c:550 +#: help.c:553 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4314,7 +4323,7 @@ msgstr "" " PSQL_HISTORY\n" " autre emplacement pour le fichier d'historique des commandes\n" -#: help.c:552 +#: help.c:555 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4322,7 +4331,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " nom du paginateur externe\n" -#: help.c:555 +#: help.c:558 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4330,7 +4339,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " nom du paginateur externe utilisé pour \\watch\n" -#: help.c:558 +#: help.c:561 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4338,7 +4347,7 @@ msgstr "" " PSQLRC\n" " autre emplacement pour le fichier .psqlrc de l'utilisateur\n" -#: help.c:560 +#: help.c:563 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4346,7 +4355,7 @@ msgstr "" " SHELL\n" " shell utilisé par la commande \\!\n" -#: help.c:562 +#: help.c:565 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4354,11 +4363,11 @@ msgstr "" " TMPDIR\n" " répertoire pour les fichiers temporaires\n" -#: help.c:622 +#: help.c:625 msgid "Available help:\n" msgstr "Aide-mémoire disponible :\n" -#: help.c:717 +#: help.c:720 #, c-format msgid "" "Command: %s\n" @@ -4377,7 +4386,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:740 +#: help.c:743 #, c-format msgid "" "No help available for \"%s\".\n" diff --git a/src/bin/psql/po/ja.po b/src/bin/psql/po/ja.po index 517c3ce7a433d..7cccdf0841084 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-06-25 13:03+0900\n" -"PO-Revision-Date: 2025-06-25 13:09+0900\n" +"POT-Creation-Date: 2025-11-05 10:32+0900\n" +"PO-Revision-Date: 2025-11-05 11:18+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -83,7 +83,7 @@ msgid "%s() failed: %m" msgstr "%s() が失敗しました: %m" #: ../../common/exec.c:543 ../../common/exec.c:588 ../../common/exec.c:680 -#: command.c:1639 command.c:3988 command.c:4037 command.c:4162 input.c:225 +#: 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" @@ -105,7 +105,7 @@ msgstr "null ポインターを複製することはできません(内部エラ msgid "could not look up effective user ID %ld: %s" msgstr "実効ユーザーID %ld が見つかりませんでした: %s" -#: ../../common/username.c:45 command.c:700 +#: ../../common/username.c:45 command.c:721 msgid "user does not exist" msgstr "ユーザーが存在しません" @@ -198,169 +198,174 @@ msgstr "シェルコマンドの引数に改行(LF)または復帰(CR)が含ま msgid "database name contains a newline or carriage return: \"%s\"\n" msgstr "データベース名に改行(LF)または復帰(CR)が含まれています: \"%s\"\n" -#: command.c:245 +#: command.c:254 +#, c-format +msgid "backslash commands are restricted; only \\unrestrict is allowed" +msgstr "バックスラッシュコマンドは制限されています; \\unrestrict のみ実行可能です" + +#: command.c:262 #, c-format msgid "invalid command \\%s" msgstr "不正なコマンド \\%s " -#: command.c:247 +#: command.c:264 #, c-format msgid "Try \\? for help." msgstr " \\? でヘルプを表示します。" -#: command.c:265 +#: command.c:282 #, c-format msgid "\\%s: extra argument \"%s\" ignored" msgstr "\\%s: 余分な引数\"%s\"は無視されました" -#: command.c:317 +#: command.c:334 #, c-format msgid "\\%s command ignored; use \\endif or Ctrl-C to exit current \\if block" msgstr "\\%s コマンドは無視されます; 現在の\\ifブロックを抜けるには\\endifまたはCtrl-Cを使用します" -#: command.c:552 command.c:747 command.c:1885 command.c:2053 command.c:2366 -#: command.c:2380 command.c:2412 command.c:2501 command.c:2614 command.c:2892 -#: command.c:3154 command.c:3194 +#: 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:698 +#: command.c:719 #, c-format msgid "could not get home directory for user ID %ld: %s" msgstr "ユーザーID %ldのホームディレクトリを取得できませんでした : %s" -#: command.c:717 +#: command.c:738 #, c-format msgid "\\%s: could not change directory to \"%s\": %m" msgstr "\\%s: ディレクトリを\"%s\"に変更できませんでした: %m" -#: command.c:790 +#: command.c:811 #, c-format msgid "You are currently not connected to a database.\n" msgstr "現在データベースに接続していません。\n" -#: command.c:818 +#: command.c:839 msgid "Connection Information" msgstr "接続情報" -#: command.c:819 describe.c:4722 +#: command.c:840 describe.c:4722 msgid "Parameter" msgstr "パラメータ" -#: command.c:820 describe.c:4723 +#: command.c:841 describe.c:4723 msgid "Value" msgstr "値" -#: command.c:823 describe.c:3874 +#: command.c:844 describe.c:3874 msgid "Database" msgstr "データベース" -#: command.c:827 +#: command.c:848 msgid "Client User" msgstr "クライアントユーザー" -#: command.c:836 command.c:851 +#: command.c:857 command.c:872 msgid "Host Address" msgstr "ソケットディレクトリ" -#: command.c:841 +#: command.c:862 msgid "Socket Directory" msgstr "ソケットディレクトリ" -#: command.c:847 +#: command.c:868 msgid "Host" msgstr "ホスト" -#: command.c:857 +#: command.c:878 msgid "Server Port" msgstr "サーバーポート" -#: command.c:861 describe.c:246 describe.c:3615 describe.c:3955 +#: command.c:882 describe.c:246 describe.c:3615 describe.c:3955 msgid "Options" msgstr "オプション" -#: command.c:865 +#: command.c:886 msgid "Protocol Version" msgstr "プロトコルバージョン" -#: command.c:869 +#: command.c:890 msgid "Password Used" msgstr "パスワード使用" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "false" msgstr "false" -#: command.c:870 command.c:874 command.c:882 command.c:915 +#: command.c:891 command.c:895 command.c:903 command.c:936 msgid "true" msgstr "true" -#: command.c:873 +#: command.c:894 msgid "GSSAPI Authenticated" msgstr "GSSAPI認証" -#: command.c:877 +#: command.c:898 msgid "Backend PID" msgstr "バックエンドPID" -#: command.c:881 +#: command.c:902 msgid "SSL Connection" msgstr "SSL接続" -#: command.c:901 +#: command.c:922 msgid "SSL Library" msgstr "SSLライブラリ" -#: command.c:902 command.c:905 command.c:908 command.c:911 command.c:923 -#: command.c:927 command.c:4426 command.c:4427 +#: 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:904 +#: command.c:925 msgid "SSL Protocol" msgstr "SSLプロトコル" -#: command.c:907 +#: command.c:928 msgid "SSL Key Bits" msgstr "SSLキービット数" -#: command.c:910 +#: command.c:931 msgid "SSL Cipher" msgstr "SSL暗号化方式" -#: command.c:913 +#: command.c:934 msgid "SSL Compression" msgstr "SSL圧縮" -#: command.c:917 +#: command.c:938 msgid "ALPN" msgstr "ALPN" -#: command.c:918 command.c:4429 +#: command.c:939 command.c:4519 msgid "none" msgstr "なし" -#: command.c:1335 command.c:1436 command.c:3187 +#: command.c:1356 command.c:1457 command.c:3277 #, c-format msgid "no query buffer" msgstr "問い合わせバッファがありません" -#: command.c:1368 command.c:6310 +#: command.c:1389 command.c:6405 #, c-format msgid "invalid line number: %s" msgstr "不正な行番号です: %s" -#: command.c:1514 +#: command.c:1535 msgid "No changes" msgstr "変更されていません" -#: command.c:1599 +#: command.c:1620 #, c-format msgid "%s: invalid encoding name or conversion procedure not found" msgstr "%s: エンコーディング名が不正であるか、または変換プロシージャが見つかりません。" -#: command.c:1635 command.c:2575 command.c:3984 command.c:4182 command.c:6416 +#: 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 @@ -369,223 +374,233 @@ msgstr "%s: エンコーディング名が不正であるか、または変換 msgid "%s" msgstr "%s" -#: command.c:1642 +#: command.c:1663 msgid "There is no previous error." msgstr "直前のエラーはありません。" -#: command.c:1745 command.c:1952 command.c:1978 command.c:3290 +#: 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:1801 +#: command.c:1822 #, c-format msgid "\\%s: missing right parenthesis" msgstr "\\%s: 右括弧がありません" -#: command.c:1927 +#: command.c:1948 #, c-format msgid "\\getresults: invalid number of requested results" msgstr "\\getresults: 要求された結果の数が不正" -#: command.c:2184 +#: command.c:2205 #, c-format msgid "\\elif: cannot occur after \\else" msgstr "\\elif: \\else の後には置けません" -#: command.c:2189 +#: command.c:2210 #, c-format msgid "\\elif: no matching \\if" msgstr "\\elif: 対応する \\if がありません" -#: command.c:2253 +#: command.c:2274 #, c-format msgid "\\else: cannot occur after \\else" msgstr "\\else: \\else の後には置けません" -#: command.c:2258 +#: command.c:2279 #, c-format msgid "\\else: no matching \\if" msgstr "\\else: 対応する \\if がありません" -#: command.c:2298 +#: command.c:2319 #, c-format msgid "\\endif: no matching \\if" msgstr "\\endif: 対応する \\if がありません" -#: command.c:2476 +#: command.c:2497 msgid "Query buffer is empty." msgstr "問い合わせバッファは空です。" -#: command.c:2553 +#: command.c:2574 #, c-format msgid "Enter new password for user \"%s\": " msgstr "ユーザー\"%s\"の新しいパスワードを入力してください: " -#: command.c:2557 +#: command.c:2578 msgid "Enter it again: " msgstr "もう一度入力してください: " -#: command.c:2566 +#: command.c:2587 #, c-format msgid "Passwords didn't match." msgstr "パスワードが一致しませんでした。" -#: command.c:2649 +#: command.c:2670 #, c-format msgid "\\%s: could not read value for variable" msgstr "\\%s: 変数の値を読み取ることができませんでした" -#: command.c:2751 +#: command.c:2772 msgid "Query buffer reset (cleared)." msgstr "問い合わせバッファがリセット(クリア)されました。" -#: command.c:2773 +#: command.c:2823 #, c-format msgid "Wrote history to file \"%s\".\n" msgstr "ファイル\"%s\"にヒストリーを出力しました。\n" -#: command.c:2803 +#: command.c:2853 #, c-format msgid "\\sendpipeline must be used after \\bind or \\bind_named" msgstr "\\sendpipeline は \\bind または \\bind_named の後で使用する必要があります" -#: command.c:2810 +#: command.c:2860 #, c-format msgid "\\sendpipeline not allowed outside of pipeline mode" msgstr "\\sendpipeline はパイプラインモード以外では使用できません" -#: command.c:2897 +#: command.c:2947 #, c-format msgid "\\%s: environment variable name must not contain \"=\"" msgstr "\\%s: 環境変数名に\"=\"を含めることはできません" -#: command.c:2945 +#: command.c:2995 #, c-format msgid "function name is required" msgstr "関数名が必要です" -#: command.c:2947 +#: command.c:2997 #, c-format msgid "view name is required" msgstr "ビュー名が必要です" -#: command.c:3126 +#: command.c:3176 msgid "Timing is on." msgstr "タイミングは on です。" -#: command.c:3128 +#: command.c:3178 msgid "Timing is off." msgstr "タイミングは off です。" -#: command.c:3214 command.c:3252 command.c:4697 command.c:4700 command.c:4703 -#: command.c:4709 command.c:4711 command.c:4737 command.c:4747 command.c:4759 -#: command.c:4773 command.c:4800 command.c:4858 common.c:77 copy.c:329 +#: 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:3241 copy.c:388 +#: command.c:3331 copy.c:388 #, c-format msgid "%s: %s" msgstr "%s: %s" -#: command.c:3322 command.c:3388 +#: command.c:3412 command.c:3478 #, c-format msgid "\\watch: interval value is specified more than once" msgstr "\\watch: インターバル値が2回以上指定されました" -#: command.c:3332 command.c:3398 +#: command.c:3422 command.c:3488 #, c-format msgid "\\watch: incorrect interval value \"%s\"" msgstr "\\watch: 不正なインターバル値 \"%s\"" -#: command.c:3342 +#: command.c:3432 #, c-format msgid "\\watch: iteration count is specified more than once" msgstr "\\watch: 反復回数が2回以上指定されました" -#: command.c:3352 +#: command.c:3442 #, c-format msgid "\\watch: incorrect iteration count \"%s\"" msgstr "\\watch: 不正な反復回数 '%s'" -#: command.c:3362 +#: command.c:3452 #, c-format msgid "\\watch: minimum row count specified more than once" msgstr "\\watch: 詐称行数が2回以上指定されました" -#: command.c:3372 +#: command.c:3462 #, c-format msgid "\\watch: incorrect minimum row count \"%s\"" msgstr "\\watch: 不正な最小行数 \"%s\"" -#: command.c:3379 +#: command.c:3469 #, c-format msgid "\\watch: unrecognized parameter \"%s\"" msgstr "\\watch: 認識できないパラーメータ \"%s\"" -#: command.c:3785 startup.c:248 startup.c:298 +#: command.c:3875 startup.c:248 startup.c:298 msgid "Password: " msgstr "パスワード: " -#: command.c:3790 startup.c:295 +#: command.c:3880 startup.c:295 #, c-format msgid "Password for user %s: " msgstr "ユーザー %s のパスワード: " -#: command.c:3846 +#: command.c:3936 #, c-format msgid "Do not give user, host, or port separately when using a connection string" msgstr "接続文字列使用時はユーザー、ホストおよびポートは個別に指定しないでください" -#: command.c:3881 +#: command.c:3971 #, c-format msgid "No database connection exists to re-use parameters from" msgstr "パラメータ再利用に使用可能なデータベース接続がありません" -#: command.c:4188 +#: command.c:4278 #, c-format msgid "Previous connection kept" msgstr "以前の接続は保持されています" -#: command.c:4194 +#: command.c:4284 #, c-format msgid "\\connect: %s" msgstr "\\connect: %s" -#: command.c:4250 +#: 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:4253 +#: 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:4259 +#: 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:4262 +#: 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:4267 +#: command.c:4357 #, c-format msgid "You are now connected to database \"%s\" as user \"%s\".\n" msgstr "データベース\"%s\"にユーザー\"%s\"として接続しました。\n" -#: command.c:4373 +#: command.c:4463 #, c-format msgid "%s (%s, server %s)\n" msgstr "%s (%s、サーバー %s)\n" -#: command.c:4386 +#: command.c:4476 #, c-format msgid "" "WARNING: %s major version %s, server major version %s.\n" @@ -594,25 +609,25 @@ msgstr "" "警告: %s のメジャーバージョンは %s ですが、サーバーのメジャーバージョンは %s です。\n" " psql の機能の中で、動作しないものがあるかもしれません。\n" -#: command.c:4425 +#: 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:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "off" msgstr "オフ" -#: command.c:4428 help.c:39 +#: command.c:4518 help.c:39 msgid "on" msgstr "オン" -#: command.c:4443 +#: command.c:4533 #, c-format msgid "GSSAPI-encrypted connection\n" msgstr "GSSAPI暗号化接続\n" -#: command.c:4463 +#: command.c:4553 #, c-format msgid "" "WARNING: Console code page (%u) differs from Windows code page (%u)\n" @@ -623,283 +638,283 @@ msgstr "" " 8ビット文字が正しく表示されない可能性があります。詳細はpsqlリファレンスマニュアルの\n" " \"Windowsユーザー向けの注意\" (Notes for Windows users)を参照してください。\n" -#: command.c:4572 +#: 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:4602 +#: command.c:4697 #, c-format msgid "could not start editor \"%s\"" msgstr "エディタ\"%s\"を起動できませんでした" -#: command.c:4604 +#: command.c:4699 #, c-format msgid "could not start /bin/sh" msgstr "/bin/shを起動できませんでした" -#: command.c:4654 +#: command.c:4749 #, c-format msgid "could not locate temporary directory: %s" msgstr "一時ディレクトリが見つかりませんでした: %s" -#: command.c:4681 +#: command.c:4776 #, c-format msgid "could not open temporary file \"%s\": %m" msgstr "一時ファイル\"%s\"をオープンできませんでした: %m" -#: command.c:5017 +#: command.c:5112 #, c-format msgid "\\pset: ambiguous abbreviation \"%s\" matches both \"%s\" and \"%s\"" msgstr "\\pset: 曖昧な短縮形\"%s\"が\"%s\"と\"%s\"のどちらにも合致します" -#: command.c:5037 +#: 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:5056 +#: command.c:5151 #, c-format msgid "\\pset: allowed line styles are ascii, old-ascii, unicode" msgstr "\\pset: 有効な線のスタイルは ascii, old-ascii, unicode" -#: command.c:5071 +#: command.c:5166 #, c-format msgid "\\pset: allowed Unicode border line styles are single, double" msgstr "\\pset: 有効な Unicode 罫線のスタイルは single, double" -#: command.c:5086 +#: command.c:5181 #, c-format msgid "\\pset: allowed Unicode column line styles are single, double" msgstr "\\pset: 有効な Unicode 列罫線のスタイルは single, double" -#: command.c:5101 +#: command.c:5196 #, c-format msgid "\\pset: allowed Unicode header line styles are single, double" msgstr "\\pset: 有効な Unicode ヘッダー罫線のスタイルは single, double" -#: command.c:5153 +#: 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\" (default)、\"%s\"、\"%s\"、または幅そのものを指定する数値です" -#: command.c:5170 +#: command.c:5265 #, c-format msgid "\\pset: csv_fieldsep must be a single one-byte character" msgstr "\\pset: csv_fieldsepは単一の1バイト文字でなければなりません" -#: command.c:5175 +#: command.c:5270 #, c-format msgid "\\pset: csv_fieldsep cannot be a double quote, a newline, or a carriage return" msgstr "\\pset: csv_fieldsepはダブルクォート、改行(LF)または復帰(CR)にはできません" -#: command.c:5313 command.c:5514 +#: command.c:5408 command.c:5609 #, c-format msgid "\\pset: unknown option: %s" msgstr "\\pset: 未定義のオプション:%s" -#: command.c:5333 +#: command.c:5428 #, c-format msgid "Border style is %d.\n" msgstr "罫線スタイルは %d です。\n" -#: command.c:5339 +#: command.c:5434 #, c-format msgid "Target width is unset.\n" msgstr "ターゲットの幅が設定されていません。\n" -#: command.c:5341 +#: command.c:5436 #, c-format msgid "Target width is %d.\n" msgstr "ターゲットの幅は %d です。\n" -#: command.c:5348 +#: command.c:5443 #, c-format msgid "Expanded display is on.\n" msgstr "拡張表示は on です。\n" -#: command.c:5350 +#: command.c:5445 #, c-format msgid "Expanded display is used automatically.\n" msgstr "拡張表示が自動的に使われます。\n" -#: command.c:5352 +#: command.c:5447 #, c-format msgid "Expanded display is off.\n" msgstr "拡張表示は off です。\n" -#: command.c:5359 command.c:5361 command.c:5363 +#: command.c:5454 command.c:5456 command.c:5458 #, c-format msgid "Expanded header width is \"%s\".\n" msgstr "拡張表示ヘッダ幅は\"%s\"です。\n" -#: command.c:5365 +#: command.c:5460 #, c-format msgid "Expanded header width is %d.\n" msgstr "拡張表示ヘッダ幅は%dです。\n" -#: command.c:5371 +#: command.c:5466 #, c-format msgid "Field separator for CSV is \"%s\".\n" msgstr "CSVのフィールド区切り文字は\"%s\"です。\n" -#: command.c:5379 command.c:5387 +#: command.c:5474 command.c:5482 #, c-format msgid "Field separator is zero byte.\n" msgstr "フィールド区切り文字はゼロバイトです。\n" -#: command.c:5381 +#: command.c:5476 #, c-format msgid "Field separator is \"%s\".\n" msgstr "フィールド区切り文字は\"%s\"です。\n" -#: command.c:5394 +#: command.c:5489 #, c-format msgid "Default footer is on.\n" msgstr "デフォルトフッター(行数の表示)は on です。\n" -#: command.c:5396 +#: command.c:5491 #, c-format msgid "Default footer is off.\n" msgstr "デフォルトフッター(行数の表示)は off です。\n" -#: command.c:5402 +#: command.c:5497 #, c-format msgid "Output format is %s.\n" msgstr "出力形式は %s です。\n" -#: command.c:5408 +#: command.c:5503 #, c-format msgid "Line style is %s.\n" msgstr "線のスタイルは %s です。\n" -#: command.c:5415 +#: command.c:5510 #, c-format msgid "Null display is \"%s\".\n" msgstr "Null表示は\"%s\"です。\n" -#: command.c:5423 +#: command.c:5518 #, c-format msgid "Locale-adjusted numeric output is on.\n" msgstr "『数値出力時のロケール調整』は on です。\n" -#: command.c:5425 +#: command.c:5520 #, c-format msgid "Locale-adjusted numeric output is off.\n" msgstr "『数値出力時のロケール調整』は off です。\n" -#: command.c:5432 +#: command.c:5527 #, c-format msgid "Pager is used for long output.\n" msgstr "表示が縦に長くなる場合はページャーを使います。\n" -#: command.c:5434 +#: command.c:5529 #, c-format msgid "Pager is always used.\n" msgstr "常にページャーを使います。\n" -#: command.c:5436 +#: command.c:5531 #, c-format msgid "Pager usage is off.\n" msgstr "「ページャーを使う」は off です。\n" -#: command.c:5442 +#: 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" msgstr[0] "%d 行未満の場合、ページャーは使われません。\n" -#: command.c:5452 command.c:5462 +#: command.c:5547 command.c:5557 #, c-format msgid "Record separator is zero byte.\n" msgstr "レコードの区切り文字はゼロバイトです\n" -#: command.c:5454 +#: command.c:5549 #, c-format msgid "Record separator is .\n" msgstr "レコード区切り文字はです。\n" -#: command.c:5456 +#: command.c:5551 #, c-format msgid "Record separator is \"%s\".\n" msgstr "レコード区切り記号は\"%s\"です。\n" -#: command.c:5469 +#: command.c:5564 #, c-format msgid "Table attributes are \"%s\".\n" msgstr "テーブル属性は\"%s\"です。\n" -#: command.c:5472 +#: command.c:5567 #, c-format msgid "Table attributes unset.\n" msgstr "テーブル属性は設定されていません。\n" -#: command.c:5479 +#: command.c:5574 #, c-format msgid "Title is \"%s\".\n" msgstr "タイトルは\"%s\"です。\n" -#: command.c:5481 +#: command.c:5576 #, c-format msgid "Title is unset.\n" msgstr "タイトルは設定されていません。\n" -#: command.c:5488 +#: command.c:5583 #, c-format msgid "Tuples only is on.\n" msgstr "「タプルのみ表示」は on です。\n" -#: command.c:5490 +#: command.c:5585 #, c-format msgid "Tuples only is off.\n" msgstr "「タプルのみ表示」は off です。\n" -#: command.c:5496 +#: command.c:5591 #, c-format msgid "Unicode border line style is \"%s\".\n" msgstr "Unicode の罫線スタイルは\"%s\"です。\n" -#: command.c:5502 +#: command.c:5597 #, c-format msgid "Unicode column line style is \"%s\".\n" msgstr "Unicode 行罫線のスタイルは\"%s\"です。\n" -#: command.c:5508 +#: command.c:5603 #, c-format msgid "Unicode header line style is \"%s\".\n" msgstr "Unicodeヘッダー行のスタイルは\"%s\"です。\n" -#: command.c:5757 +#: command.c:5852 #, c-format msgid "\\!: failed" msgstr "\\!: 失敗" -#: command.c:5795 +#: command.c:5890 #, c-format msgid "\\watch cannot be used with an empty query" msgstr "\\watchは空の問い合わせでは使えません" -#: command.c:5827 +#: command.c:5922 #, c-format msgid "could not set timer: %m" msgstr "タイマーを設定できません: %m" -#: command.c:5896 +#: command.c:5991 #, c-format msgid "%s\t%s (every %gs)\n" msgstr "%s\t%s (%g 秒毎)\n" -#: command.c:5899 +#: command.c:5994 #, c-format msgid "%s (every %gs)\n" msgstr "%s (%g 秒毎)\n" -#: command.c:5963 +#: command.c:6058 #, c-format msgid "could not wait for signals: %m" msgstr "シグナルを待機できませんでした: %m" -#: command.c:6019 command.c:6026 common.c:667 common.c:674 common.c:1159 +#: command.c:6114 command.c:6121 common.c:667 common.c:674 common.c:1159 #, c-format msgid "" "/******** QUERY *********/\n" @@ -912,12 +927,12 @@ msgstr "" "/************************/\n" "\n" -#: command.c:6205 +#: command.c:6300 #, c-format msgid "\"%s.%s\" is not a view" msgstr "\"%s.%s\"はビューではありません" -#: command.c:6221 +#: command.c:6316 #, c-format msgid "could not parse reloptions array" msgstr "reloptions配列をパースできませんでした" @@ -2714,7 +2729,7 @@ msgstr "" "psql は PostgreSQL の対話型ターミナルです。\n" "\n" -#: help.c:61 help.c:385 help.c:472 help.c:518 +#: help.c:61 help.c:389 help.c:476 help.c:525 msgid "Usage:\n" msgstr "使い方:\n" @@ -3004,6 +3019,22 @@ 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" " stop if less than MIN rows are returned\n" @@ -3012,214 +3043,214 @@ msgstr "" " SEC秒ごとに最大N回まで分を実行。返却行数がMIN行より\n" " 少ない場合には停止する\n" -#: help.c:177 help.c:185 help.c:197 help.c:207 help.c:214 help.c:272 help.c:280 -#: help.c:300 help.c:313 help.c:322 help.c:328 +#: 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" -#: help.c:179 +#: help.c:183 msgid "Help\n" msgstr "ヘルプ\n" -#: help.c:181 +#: help.c:185 msgid " \\? [commands] show help on backslash commands\n" msgstr " \\? [コマンド] バックスラッシュコマンドのヘルプを表示\n" -#: help.c:182 +#: help.c:186 msgid " \\? options show help on psql command-line options\n" msgstr " \\? オプション psql のコマンドライン・オプションのヘルプを表示\n" -#: help.c:183 +#: help.c:187 msgid " \\? variables show help on special variables\n" msgstr " \\? 変数名 特殊変数のヘルプを表示\n" -#: help.c:184 +#: help.c:188 msgid " \\h [NAME] help on syntax of SQL commands, * for all commands\n" msgstr " \\h [名前] SQLコマンドの文法ヘルプの表示。* で全コマンドを表示\n" -#: help.c:187 +#: help.c:191 msgid "Query Buffer\n" msgstr "問い合わせバッファ\n" -#: help.c:188 +#: help.c:192 msgid " \\e [FILE] [LINE] edit the query buffer (or file) with external editor\n" msgstr "" " \\e [ファイル] [行番号] 現在の問い合わせバッファ(やファイル)を外部エディタで\n" " 編集\n" -#: help.c:189 +#: help.c:193 msgid " \\ef [FUNCNAME [LINE]] edit function definition with external editor\n" msgstr " \\ef [関数名 [行番号]] 関数定義を外部エディタで編集\n" -#: help.c:190 +#: help.c:194 msgid " \\ev [VIEWNAME [LINE]] edit view definition with external editor\n" msgstr " \\ev [ビュー名 [行番号]] ビュー定義を外部エディタで編集\n" -#: help.c:191 +#: help.c:195 msgid " \\p show the contents of the query buffer\n" msgstr " \\p 問い合わせバッファの内容を表示\n" -#: help.c:192 +#: help.c:196 msgid " \\r reset (clear) the query buffer\n" msgstr " \\r 問い合わせバッファをリセット(クリア)\n" -#: help.c:194 +#: help.c:198 msgid " \\s [FILE] display history or save it to file\n" msgstr " \\s [ファイル] ヒストリを表示またはファイルに保存\n" -#: help.c:196 +#: help.c:200 msgid " \\w FILE write query buffer to file\n" msgstr " \\w ファイル 問い合わせバッファの内容をファイルに保存\n" -#: help.c:199 +#: help.c:203 msgid "Input/Output\n" msgstr "入出力\n" -#: help.c:200 +#: help.c:204 msgid " \\copy ... perform SQL COPY with data stream to the client host\n" msgstr "" " \\copy ... クライアントホストに対し、データストリームを使って\n" " SQL COPYを実行\n" -#: help.c:201 +#: help.c:205 msgid " \\echo [-n] [STRING] write string to standard output (-n for no newline)\n" msgstr " \\echo [-n] [文字列] 文字列を標準出力に書き込む (-n で改行しない)\n" -#: help.c:202 +#: help.c:206 msgid " \\i FILE execute commands from file\n" msgstr " \\i ファイル ファイルからコマンドを読み込んで実行\n" -#: help.c:203 +#: help.c:207 msgid " \\ir FILE as \\i, but relative to location of current script\n" msgstr "" " \\ir ファイル \\i と同じ。ただし現在のスクリプトの場所からの相対パス\n" " で指定\n" -#: help.c:204 +#: help.c:208 msgid " \\o [FILE] send all query results to file or |pipe\n" msgstr " \\o [ファイル] 問い合わせ結果をすべてファイルまたは |パイプ へ送出\n" -#: help.c:205 +#: help.c:209 msgid " \\qecho [-n] [STRING] write string to \\o output stream (-n for no newline)\n" msgstr "" " \\qecho [-n] [文字列] 文字列を\\oで指定した出力ストリームに書き込む(-n で改行\n" " しない)\n" -#: help.c:206 +#: help.c:210 msgid " \\warn [-n] [STRING] write string to standard error (-n for no newline)\n" msgstr " \\warn [-n] [文字列] 文字列を標準エラー出力に書き込む (-n で改行しない)\n" -#: help.c:209 +#: help.c:213 msgid "Conditional\n" msgstr "条件分岐\n" -#: help.c:210 +#: help.c:214 msgid " \\if EXPR begin conditional block\n" msgstr " \\if EXPR 条件分岐ブロックの開始\n" -#: help.c:211 +#: help.c:215 msgid " \\elif EXPR alternative within current conditional block\n" msgstr " \\elif EXPR 現在の条件分岐ブロック内の選択肢\n" -#: help.c:212 +#: help.c:216 msgid " \\else final alternative within current conditional block\n" msgstr " \\else 現在の条件分岐ブロックにおける最後の選択肢\n" -#: help.c:213 +#: help.c:217 msgid " \\endif end conditional block\n" msgstr " \\endif 条件分岐ブロックの終了\n" -#: help.c:216 +#: help.c:220 msgid "Informational\n" msgstr "情報表示\n" -#: help.c:217 +#: help.c:221 msgid " (options: S = show system objects, x = expanded mode, + = additional detail)\n" msgstr " (オプション:S = システムオブジェクトを表示、x = 拡張モード、+ = 詳細表示)\n" -#: help.c:218 +#: help.c:222 msgid " \\d[Sx+] list tables, views, and sequences\n" msgstr " \\d[Sx+] テーブル、ビュー、およびシーケンスの一覧を表示\n" -#: help.c:219 +#: help.c:223 msgid " \\d[S+] NAME describe table, view, sequence, or index\n" msgstr "" " \\d[S+] 名前 テーブル、ビュー、シーケンス、またはインデックスの\n" " 説明を表示\n" -#: help.c:220 +#: help.c:224 msgid " \\da[Sx] [PATTERN] list aggregates\n" msgstr " \\da[Sx] [パターン] 集約関数の一覧を表示\n" -#: help.c:221 +#: help.c:225 msgid " \\dA[x+] [PATTERN] list access methods\n" msgstr " \\dA[x+] [パターン] アクセスメソッドの一覧を表示\n" -#: help.c:222 +#: help.c:226 msgid " \\dAc[x+] [AMPTRN [TYPEPTRN]] list operator classes\n" msgstr " \\dAc[x+] [AMパターン [型パターン]] 演算子クラスの一覧を表示\n" -#: help.c:223 +#: help.c:227 msgid " \\dAf[x+] [AMPTRN [TYPEPTRN]] list operator families\n" msgstr " \\dAf[x+] [AMパターン [型パターン]] 演算子族の一覧を表示\n" -#: help.c:224 +#: help.c:228 msgid " \\dAo[x+] [AMPTRN [OPFPTRN]] list operators of operator families\n" msgstr " \\dAo[x+] [AMパターン [型パターン]] 演算子族の演算子の一覧を表示\n" -#: help.c:225 +#: help.c:229 msgid " \\dAp[x+] [AMPTRN [OPFPTRN]] list support functions of operator families\n" msgstr " \\dAp[x+] [AMパターン [型パターン]] 演算子族のサポート関数の一覧を表示\n" -#: help.c:226 +#: help.c:230 msgid " \\db[x+] [PATTERN] list tablespaces\n" msgstr " \\db[x+] [パターン] テーブル空間の一覧を表示\n" -#: help.c:227 +#: help.c:231 msgid " \\dc[Sx+] [PATTERN] list conversions\n" msgstr " \\dc[Sx+] [パターン] 符号化方式間の変換の一覧を表示\n" -#: help.c:228 +#: help.c:232 msgid " \\dconfig[x+] [PATTERN] list configuration parameters\n" msgstr " \\dconfig[x+] [パターン] 設定パラメータの一覧を表示\n" -#: help.c:229 +#: help.c:233 msgid " \\dC[x+] [PATTERN] list casts\n" msgstr " \\dC[x+] [パターン] キャストの一覧を表示します。\n" -#: help.c:230 +#: help.c:234 msgid " \\dd[Sx] [PATTERN] show object descriptions not displayed elsewhere\n" msgstr " \\dd[Sx] [パターン] 他では表示されないオブジェクトの説明を表示\n" -#: help.c:231 +#: help.c:235 msgid " \\dD[Sx+] [PATTERN] list domains\n" msgstr " \\dD[Sx+] [パターン] ドメインの一覧を表示\n" -#: help.c:232 +#: help.c:236 msgid " \\ddp[x] [PATTERN] list default privileges\n" msgstr " \\ddp[x] [パターン] デフォルト権限の一覧を表示\n" -#: help.c:233 +#: help.c:237 msgid " \\dE[Sx+] [PATTERN] list foreign tables\n" msgstr " \\dE[Sx+] [パターン] 外部テーブルの一覧を表示\n" -#: help.c:234 +#: help.c:238 msgid " \\des[x+] [PATTERN] list foreign servers\n" msgstr " \\des[x+] [パターン] 外部サーバーの一覧を表示\n" -#: help.c:235 +#: help.c:239 msgid " \\det[x+] [PATTERN] list foreign tables\n" msgstr " \\det[x+] [パターン] 外部テーブルの一覧を表示\n" -#: help.c:236 +#: help.c:240 msgid " \\deu[x+] [PATTERN] list user mappings\n" msgstr " \\deu[x+] [パターン] ユーザーマッピングの一覧を表示\n" -#: help.c:237 +#: help.c:241 msgid " \\dew[x+] [PATTERN] list foreign-data wrappers\n" msgstr " \\dew[x+] [パターン] 外部データラッパの一覧を表示\n" -#: help.c:238 +#: help.c:242 msgid "" " \\df[anptw][Sx+] [FUNCPTRN [TYPEPTRN ...]]\n" " list [only agg/normal/procedure/trigger/window] functions\n" @@ -3228,47 +3259,47 @@ msgstr "" " [集約/通常/プロシージャ/トリガー/ウィンドウ]\n" " 関数のみの一覧を表示\n" -#: help.c:240 +#: help.c:244 msgid " \\dF[x+] [PATTERN] list text search configurations\n" msgstr " \\dF[x+] [パターン] テキスト検索設定の一覧を表示\n" -#: help.c:241 +#: help.c:245 msgid " \\dFd[x+] [PATTERN] list text search dictionaries\n" msgstr " \\dFd[x+] [パターン] テキスト検索辞書の一覧を表示\n" -#: help.c:242 +#: help.c:246 msgid " \\dFp[x+] [PATTERN] list text search parsers\n" msgstr " \\dFp[x+] [パターン] テキスト検索パーサの一覧を表示\n" -#: help.c:243 +#: help.c:247 msgid " \\dFt[x+] [PATTERN] list text search templates\n" msgstr " \\dFt[x+] [パターン] テキスト検索テンプレートの一覧を表示\n" -#: help.c:244 +#: help.c:248 msgid " \\dg[Sx+] [PATTERN] list roles\n" msgstr " \\dg[Sx+] [パターン] ロールの一覧を表示\n" -#: help.c:245 +#: help.c:249 msgid " \\di[Sx+] [PATTERN] list indexes\n" msgstr " \\di[Sx+] [パターン] インデックスの一覧を表示\n" -#: help.c:246 +#: help.c:250 msgid " \\dl[x+] list large objects, same as \\lo_list\n" msgstr " \\dl[x+] ラージオブジェクトの一覧を表示、\\lo_list と同じ\n" -#: help.c:247 +#: help.c:251 msgid " \\dL[Sx+] [PATTERN] list procedural languages\n" msgstr " \\dL[Sx+] [パターン] 手続き言語の一覧を表示\n" -#: help.c:248 +#: help.c:252 msgid " \\dm[Sx+] [PATTERN] list materialized views\n" msgstr " \\dm[Sx+] [パターン] 実体化ビューの一覧を表示\n" -#: help.c:249 +#: help.c:253 msgid " \\dn[Sx+] [PATTERN] list schemas\n" msgstr " \\dn[Sx+] [パターン] スキーマの一覧を表示\n" -#: help.c:250 +#: help.c:254 msgid "" " \\do[Sx+] [OPPTRN [TYPEPTRN [TYPEPTRN]]]\n" " list operators\n" @@ -3276,22 +3307,22 @@ msgstr "" " \\do[Sx+] [演算子パターン [型パターン [型パターン]]]\n" " 演算子の一覧を表示\n" -#: help.c:252 +#: help.c:256 msgid " \\dO[Sx+] [PATTERN] list collations\n" msgstr " \\dO[Sx+] [パターン] 照合順序の一覧を表示\n" -#: help.c:253 +#: help.c:257 msgid " \\dp[Sx] [PATTERN] list table, view, and sequence access privileges\n" msgstr " \\dp[Sx] [パターン] テーブル、ビュー、シーケンスのアクセス権の一覧を表示\n" -#: help.c:254 +#: help.c:258 msgid " \\dP[itnx+] [PATTERN] list [only index/table] partitioned relations [n=nested]\n" msgstr "" " \\dP[itnx+] [パターン] パーティションリレーション[テーブル/インデックスのみ]\n" " の一覧を表示 [n=入れ子]\n" " \n" -#: help.c:255 +#: help.c:259 msgid "" " \\drds[x] [ROLEPTRN [DBPTRN]]\n" " list per-database role settings\n" @@ -3299,77 +3330,77 @@ msgstr "" " \\drds[x] [ロールパターン [DBパターン]]\n" " データベース毎のロール設定の一覧を表示\n" -#: help.c:257 +#: help.c:261 msgid " \\drg[Sx] [PATTERN] list role grants\n" msgstr " \\drg[Sx] [パターン] ロール権限付与の一覧を表示\n" -#: help.c:258 +#: help.c:262 msgid " \\dRp[x+] [PATTERN] list replication publications\n" msgstr " \\dRp[x+] [パターン] レプリケーションのパブリケーションの一覧を表示\n" -#: help.c:259 +#: help.c:263 msgid " \\dRs[x+] [PATTERN] list replication subscriptions\n" msgstr " \\dRs[x+] [パターン] レプリケーションのサブスクリプションの一覧を表示\n" -#: help.c:260 +#: help.c:264 msgid " \\ds[Sx+] [PATTERN] list sequences\n" msgstr " \\ds[Sx+] [パターン] シーケンスの一覧を表示\n" -#: help.c:261 +#: help.c:265 msgid " \\dt[Sx+] [PATTERN] list tables\n" msgstr " \\dt[Sx+] [パターン] テーブルの一覧を表示\n" -#: help.c:262 +#: help.c:266 msgid " \\dT[Sx+] [PATTERN] list data types\n" msgstr " \\dT[Sx+] [パターン] データ型の一覧を表示\n" -#: help.c:263 +#: help.c:267 msgid " \\du[Sx+] [PATTERN] list roles\n" msgstr " \\du[Sx+] [パターン] ロールの一覧を表示\n" -#: help.c:264 +#: help.c:268 msgid " \\dv[Sx+] [PATTERN] list views\n" msgstr " \\dv[Sx+] [パターン] ビューの一覧を表示\n" -#: help.c:265 +#: help.c:269 msgid " \\dx[x+] [PATTERN] list extensions\n" msgstr " \\dx[x+] [パターン] 機能拡張の一覧を表示\n" -#: help.c:266 +#: help.c:270 msgid " \\dX[x] [PATTERN] list extended statistics\n" msgstr " \\dX[x] [パターン] 拡張統計情報の一覧を表示\n" -#: help.c:267 +#: help.c:271 msgid " \\dy[x+] [PATTERN] list event triggers\n" msgstr " \\dy[x+] [パターン] イベントトリガーの一覧を表示\n" -#: help.c:268 +#: help.c:272 msgid " \\l[x+] [PATTERN] list databases\n" msgstr " \\l[x+] [パターン] データベースの一覧を表示\n" -#: help.c:269 +#: help.c:273 msgid " \\sf[+] FUNCNAME show a function's definition\n" msgstr " \\sf[+] 関数名 関数の定義を表示\n" -#: help.c:270 +#: help.c:274 msgid " \\sv[+] VIEWNAME show a view's definition\n" msgstr " \\sv[+] ビュー名 ビューの定義を表示\n" -#: help.c:271 +#: help.c:275 msgid " \\z[Sx] [PATTERN] same as \\dp\n" msgstr " \\z[Sx] [パターン] \\dp と同じ\n" -#: help.c:274 +#: help.c:278 msgid "Large Objects\n" msgstr "ラージ・オブジェクト\n" -#: help.c:275 +#: help.c:279 msgid " \\lo_export LOBOID FILE write large object to file\n" msgstr "" " \\lo_export LOBOID ファイル名\n" " ラージ・オブエジェクトをファイルに書き込む\n" -#: help.c:276 +#: help.c:280 msgid "" " \\lo_import FILE [COMMENT]\n" " read large object from file\n" @@ -3377,38 +3408,38 @@ msgstr "" " \\lo_import ファイル名 [コメント]\n" " ラージ・オブジェクトをファイルから読み込む\n" -#: help.c:278 +#: help.c:282 msgid " \\lo_list[x+] list large objects\n" msgstr " \\lo_list[x+] ラージ・オブジェクトの一覧を表示\n" -#: help.c:279 +#: help.c:283 msgid " \\lo_unlink LOBOID delete a large object\n" msgstr " \\lo_unlink LOBOID ラージ・オブジェクトを削除\n" -#: help.c:282 +#: help.c:286 msgid "Formatting\n" msgstr "書式設定\n" -#: help.c:283 +#: help.c:287 msgid " \\a toggle between unaligned and aligned output mode\n" msgstr " \\a 非整列と整列間の出力モードの切り替え\n" -#: help.c:284 +#: help.c:288 msgid " \\C [STRING] set table title, or unset if none\n" msgstr " \\C [文字列] テーブルのタイトルを設定、値がなければ削除\n" -#: help.c:285 +#: help.c:289 msgid " \\f [STRING] show or set field separator for unaligned query output\n" msgstr "" " \\f [文字列] 問い合わせ結果の非整列出力時のフィールド区切り文字を\n" " 表示または設定\n" -#: help.c:286 +#: help.c:290 #, c-format msgid " \\H toggle HTML output mode (currently %s)\n" msgstr " \\H HTML出力モードの切り替え (現在値: %s)\n" -#: help.c:288 +#: help.c:292 msgid "" " \\pset [NAME [VALUE]] set table output option\n" " (border|columns|csv_fieldsep|expanded|fieldsep|\n" @@ -3426,29 +3457,29 @@ msgstr "" " unicode_border_linestyle|unicode_column_linestyle|\n" " unicode_header_linestyle|xheader_width)\n" -#: help.c:295 +#: help.c:299 #, c-format msgid " \\t [on|off] show only rows (currently %s)\n" msgstr " \\t [on|off] 結果行のみ表示 (現在値: %s)\n" -#: help.c:297 +#: help.c:301 msgid " \\T [STRING] set HTML

tag attributes, or unset if none\n" msgstr " \\T [文字列] HTMLの
タグ属性の設定、値がなければ解除\n" -#: help.c:298 +#: 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:299 +#: help.c:303 msgid "auto" msgstr "自動(auto)" -#: help.c:302 +#: help.c:306 msgid "Connection\n" msgstr "接続\n" -#: help.c:304 +#: help.c:308 #, c-format msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" @@ -3457,7 +3488,7 @@ msgstr "" " \\c[onnect] {[DB名|- ユーザー名|- ホスト名|- ポート番号|-] | 接続文字列}\n" " 新しいデータベースに接続 (現在: \"%s\")\n" -#: help.c:308 +#: help.c:312 msgid "" " \\c[onnect] {[DBNAME|- USER|- HOST|- PORT|-] | conninfo}\n" " connect to new database (currently no connection)\n" @@ -3465,72 +3496,72 @@ msgstr "" " \\c[onnect] {[DB名|- ユーザー名|- ホスト名|- ポート番号|-] | 接続文字列}\n" " 新しいデータベースに接続 (現在: 未接続)\n" -#: help.c:310 +#: help.c:314 msgid " \\conninfo display information about current connection\n" msgstr " \\conninfo 現在の接続に関する情報を表示\n" -#: help.c:311 +#: help.c:315 msgid " \\encoding [ENCODING] show or set client encoding\n" msgstr " \\encoding [エンコーディング] クライアントのエンコーディングを表示または設定\n" -#: help.c:312 +#: help.c:316 msgid " \\password [USERNAME] securely change the password for a user\n" msgstr " \\password [ユーザー名] ユーザーのパスワードを安全に変更\n" -#: help.c:315 +#: help.c:319 msgid "Operating System\n" msgstr "オペレーティングシステム\n" -#: help.c:316 +#: help.c:320 msgid " \\cd [DIR] change the current working directory\n" msgstr " \\cd [DIR] カレントディレクトリを変更\n" -#: help.c:317 +#: help.c:321 msgid " \\getenv PSQLVAR ENVVAR fetch environment variable\n" msgstr "" " \\getenv psql変数 環境変数\n" " 環境変数を取得\n" -#: help.c:318 +#: help.c:322 msgid " \\setenv NAME [VALUE] set or unset environment variable\n" msgstr " \\setenv 名前 [値] 環境変数を設定または解除\n" -#: help.c:319 +#: help.c:323 #, c-format msgid " \\timing [on|off] toggle timing of commands (currently %s)\n" msgstr " \\timing [on|off] コマンドの実行時間表示の切り替え (現在値: %s)\n" -#: help.c:321 +#: help.c:325 msgid " \\! [COMMAND] execute command in shell or start interactive shell\n" msgstr "" " \\! [コマンド] シェルでコマンドを実行するか、もしくは対話型シェルを\n" " 起動します。\n" -#: help.c:324 +#: help.c:328 msgid "Variables\n" msgstr "変数\n" -#: help.c:325 +#: help.c:329 msgid " \\prompt [TEXT] NAME prompt user to set internal variable\n" msgstr " \\prompt [テキスト] 変数名 ユーザーに対して内部変数の設定を要求します\n" -#: help.c:326 +#: help.c:330 msgid " \\set [NAME [VALUE]] set internal variable, or list all if no parameters\n" msgstr " \\set [変数名 [値]] 内部変数の値を設定、パラメータがなければ一覧を表示\n" -#: help.c:327 +#: help.c:331 msgid " \\unset NAME unset (delete) internal variable\n" msgstr " \\unset 変数名 内部変数を削除\n" -#: help.c:330 +#: help.c:334 msgid "Extended Query Protocol\n" msgstr "拡張問い合わせプロトコル\n" -#: help.c:331 +#: help.c:335 msgid " \\bind [PARAM]... set query parameters\n" msgstr " \\bind [PARAM]... 問い合わせパラメータを設定\n" -#: help.c:332 +#: help.c:336 msgid "" " \\bind_named STMT_NAME [PARAM]...\n" " set query parameters for an existing prepared statement\n" @@ -3538,7 +3569,7 @@ msgstr "" " \\bind_named STMT_NAME [PARAM]...\n" " 既存の準備済みの文にパラメータを設定する\n" -#: help.c:334 +#: help.c:338 msgid "" " \\close_prepared STMT_NAME\n" " close an existing prepared statement\n" @@ -3546,41 +3577,41 @@ msgstr "" " \\close_prepared ステートメント名\n" " 既存の準備済みの文をクローズする\n" -#: help.c:336 +#: help.c:340 msgid " \\endpipeline exit pipeline mode\n" msgstr " \\endpipeline パイプラインモードを終了\n" -#: help.c:337 +#: help.c:341 msgid " \\flush flush output data to the server\n" msgstr " \\flush 出力データをサーバーへ送信\n" -#: help.c:338 +#: help.c:342 msgid " \\flushrequest send request to the server to flush its output buffer\n" msgstr " \\flushrequest サーバーに出力バッファ内容の送信を要求する\n" -#: help.c:339 +#: help.c:343 msgid " \\getresults [NUM_RES] read NUM_RES pending results, or all if no argument\n" msgstr "" " \\getresults [結果数] 指定した \"結果数\" 行の未取得の結果を読み取る。\n" " 引数なしの場合、未取得の結果をすべて読み取る\n" -#: help.c:340 +#: help.c:344 msgid " \\parse STMT_NAME create a prepared statement\n" msgstr " \\parse STMT_NAME 準備済みの文を作成\n" -#: help.c:341 +#: help.c:345 msgid " \\sendpipeline send an extended query to an ongoing pipeline\n" msgstr " \\sendpipeline 実行中のパイプラインに拡張問い合わせを送出\n" -#: help.c:342 +#: help.c:346 msgid " \\startpipeline enter pipeline mode\n" msgstr " \\startpipeline パイプラインモードを開始\n" -#: help.c:343 +#: help.c:347 msgid " \\syncpipeline add a synchronisation point to an ongoing pipeline\n" msgstr " \\syncpipeline 実行中のパイプラインに同期ポイントを追加\n" -#: help.c:382 +#: help.c:386 msgid "" "List of specially treated variables\n" "\n" @@ -3588,11 +3619,11 @@ msgstr "" "特別に扱われる変数の一覧\n" "\n" -#: help.c:384 +#: help.c:388 msgid "psql variables:\n" msgstr "psql変数:\n" -#: help.c:386 +#: help.c:390 msgid "" " psql --set=NAME=VALUE\n" " or \\set NAME VALUE inside psql\n" @@ -3602,7 +3633,7 @@ msgstr "" " またはpsql内で \\set 名前 値\n" "\n" -#: help.c:388 +#: help.c:392 msgid "" " AUTOCOMMIT\n" " if set, successful SQL commands are automatically committed\n" @@ -3610,7 +3641,7 @@ msgstr "" " AUTOCOMMIT\n" " セットされている場合、SQLコマンドが成功した際に自動的にコミット\n" -#: help.c:390 +#: help.c:394 msgid "" " COMP_KEYWORD_CASE\n" " determines the case used to complete SQL key words\n" @@ -3620,7 +3651,7 @@ msgstr "" " SQLキーワードの補完に使う文字ケースを指定\n" " [lower, upper, preserve-lower, preserve-upper]\n" -#: help.c:393 +#: help.c:397 msgid "" " DBNAME\n" " the currently connected database name\n" @@ -3628,7 +3659,7 @@ msgstr "" " DBNAME\n" " 現在接続中のデータベース名\n" -#: help.c:395 +#: help.c:399 msgid "" " ECHO\n" " controls what input is written to standard output\n" @@ -3638,7 +3669,7 @@ msgstr "" " どの入力を標準出力への出力対象とするかを設定\n" " [all, errors, none, queries]\n" -#: help.c:398 +#: help.c:402 msgid "" " ECHO_HIDDEN\n" " if set, display internal queries executed by backslash commands;\n" @@ -3648,7 +3679,7 @@ msgstr "" " セットされていれば、バックスラッシュコマンドで実行される内部問い合わせを\n" " 表示; \"noexec\"を設定した場合は実行せずに表示のみ\n" -#: help.c:401 +#: help.c:405 msgid "" " ENCODING\n" " current client character set encoding\n" @@ -3656,7 +3687,7 @@ msgstr "" " ENCODING\n" " 現在のクライアント側の文字セットのエンコーディング\n" -#: help.c:403 +#: help.c:407 msgid "" " ERROR\n" " \"true\" if last query failed, else \"false\"\n" @@ -3664,7 +3695,7 @@ msgstr "" " ERROR\n" " 最後の問い合わせが失敗であれば\"true\"、そうでなければ\"false\"\n" -#: help.c:405 +#: help.c:409 msgid "" " FETCH_COUNT\n" " the number of result rows to fetch and display at a time (0 = unlimited)\n" @@ -3672,7 +3703,7 @@ msgstr "" " FETCH_COUNT\n" " 一度に取得および表示する結果の行数 (0 = 無制限)\n" -#: help.c:407 +#: help.c:411 msgid "" " HIDE_TABLEAM\n" " if set, table access methods are not displayed\n" @@ -3680,7 +3711,7 @@ msgstr "" " HIDE_TABLEAM\n" " 設定すると、テーブルアクセスメソッドは表示されない\n" -#: help.c:409 +#: help.c:413 msgid "" " HIDE_TOAST_COMPRESSION\n" " if set, compression methods are not displayed\n" @@ -3688,7 +3719,7 @@ msgstr "" " HIDE_TOAST_COMPRESSION\n" " 設定すると、圧縮方式は表示されない\n" -#: help.c:411 +#: help.c:415 msgid "" " HISTCONTROL\n" " controls command history [ignorespace, ignoredups, ignoreboth]\n" @@ -3696,7 +3727,7 @@ msgstr "" " HISTCONTROL\n" " コマンド履歴の制御 [ignorespace, ignoredups, ignoreboth]\n" -#: help.c:413 +#: help.c:417 msgid "" " HISTFILE\n" " file name used to store the command history\n" @@ -3704,7 +3735,7 @@ msgstr "" " HISTFILE\n" " コマンド履歴を保存するファイルの名前\n" -#: help.c:415 +#: help.c:419 msgid "" " HISTSIZE\n" " maximum number of commands to store in the command history\n" @@ -3712,7 +3743,7 @@ msgstr "" " HISTSIZE\n" " コマンド履歴で保存するコマンド数の上限\n" -#: help.c:417 +#: help.c:421 msgid "" " HOST\n" " the currently connected database server host\n" @@ -3720,7 +3751,7 @@ msgstr "" " HOST\n" " 現在接続中のデータベースサーバーホスト\n" -#: help.c:419 +#: help.c:423 msgid "" " IGNOREEOF\n" " number of EOFs needed to terminate an interactive session\n" @@ -3728,7 +3759,7 @@ msgstr "" " IGNOREEOF\n" " 対話形セッションを終わらせるのに必要なEOFの数\n" -#: help.c:421 +#: help.c:425 msgid "" " LASTOID\n" " value of the last affected OID\n" @@ -3736,7 +3767,7 @@ msgstr "" " LASTOID\n" " 最後の変更の影響を受けたOID\n" -#: help.c:423 +#: help.c:427 msgid "" " LAST_ERROR_MESSAGE\n" " LAST_ERROR_SQLSTATE\n" @@ -3747,7 +3778,7 @@ msgstr "" " 最後のエラーのメッセージおよび SQLSTATE、\n" " なにもなければ空の文字列および\"00000\"\n" -#: help.c:426 +#: help.c:430 msgid "" " ON_ERROR_ROLLBACK\n" " if set, an error doesn't stop a transaction (uses implicit savepoints)\n" @@ -3756,7 +3787,7 @@ msgstr "" " セットされている場合、エラーでトランザクションを停止しない (暗黙のセーブ\n" " ポイントを使用)\n" -#: help.c:428 +#: help.c:432 msgid "" " ON_ERROR_STOP\n" " stop batch execution after error\n" @@ -3764,7 +3795,7 @@ msgstr "" " ON_ERROR_STOP\n" " エラー発生後にバッチ実行を停止\n" -#: help.c:430 +#: help.c:434 msgid "" " PORT\n" " server port of the current connection\n" @@ -3772,7 +3803,7 @@ msgstr "" " PORT\n" " 現在の接続のサーバーポート\n" -#: help.c:432 +#: help.c:436 msgid "" " PROMPT1\n" " specifies the standard psql prompt\n" @@ -3780,7 +3811,7 @@ msgstr "" " PROMPT1\n" " psql の標準のプロンプトを指定\n" -#: help.c:434 +#: help.c:438 msgid "" " PROMPT2\n" " specifies the prompt used when a statement continues from a previous line\n" @@ -3788,7 +3819,7 @@ msgstr "" " PROMPT2\n" " 文が前行から継続する場合のプロンプトを指定\n" -#: help.c:436 +#: help.c:440 msgid "" " PROMPT3\n" " specifies the prompt used during COPY ... FROM STDIN\n" @@ -3796,7 +3827,7 @@ msgstr "" " PROMPT3\n" " COPY ... FROM STDIN の最中に使われるプロンプトを指定\n" -#: help.c:438 +#: help.c:442 msgid "" " QUIET\n" " run quietly (same as -q option)\n" @@ -3804,7 +3835,7 @@ msgstr "" " QUIET\n" " メッセージを表示しない (-q オプションと同じ)\n" -#: help.c:440 +#: help.c:444 msgid "" " ROW_COUNT\n" " number of rows returned or affected by last query, or 0\n" @@ -3812,7 +3843,7 @@ msgstr "" " ROW_COUNT\n" " 最後の問い合わせで返却した、または影響を与えた行の数、または0\n" -#: help.c:442 +#: help.c:446 msgid "" " SERVER_VERSION_NAME\n" " SERVER_VERSION_NUM\n" @@ -3822,7 +3853,7 @@ msgstr "" " SERVER_VERSION_NUM\n" " サーバーのバージョン(短い文字列または数値)\n" -#: help.c:445 +#: help.c:449 msgid "" " SHELL_ERROR\n" " \"true\" if the last shell command failed, \"false\" if it succeeded\n" @@ -3830,7 +3861,7 @@ msgstr "" " SHELL_ERROR\n" " 最後のシェルコマンドが失敗であれば\"true\"、成功であれば\"false\"\n" -#: help.c:447 +#: help.c:451 msgid "" " SHELL_EXIT_CODE\n" " exit status of the last shell command\n" @@ -3838,7 +3869,7 @@ msgstr "" " SHELL_EXIT_CODE\n" " 最後に実行したシェルコマンドの終了ステータス\n" -#: help.c:449 +#: help.c:453 msgid "" " SHOW_ALL_RESULTS\n" " show all results of a combined query (\\;) instead of only the last\n" @@ -3846,7 +3877,7 @@ msgstr "" " SHOW_ALL_RESULTS\n" " 複合問い合わせ(\\;)の最後の結果のみではなくすべてを表示する\n" -#: help.c:451 +#: help.c:455 msgid "" " SHOW_CONTEXT\n" " controls display of message context fields [never, errors, always]\n" @@ -3854,7 +3885,7 @@ msgstr "" " SHOW_CONTEXT\n" " メッセージコンテキストフィールドの表示を制御 [never, errors, always]\n" -#: help.c:453 +#: help.c:457 msgid "" " SINGLELINE\n" " if set, end of line terminates SQL commands (same as -S option)\n" @@ -3862,7 +3893,7 @@ msgstr "" " SINGLELINE\n" " セットした場合、改行はSQLコマンドを終端する (-S オプションと同じ)\n" -#: help.c:455 +#: help.c:459 msgid "" " SINGLESTEP\n" " single-step mode (same as -s option)\n" @@ -3870,7 +3901,7 @@ msgstr "" " SINGLESTEP\n" " シングルステップモード (-s オプションと同じ)\n" -#: help.c:457 +#: help.c:461 msgid "" " SQLSTATE\n" " SQLSTATE of last query, or \"00000\" if no error\n" @@ -3878,7 +3909,7 @@ msgstr "" " SQLSTATE\n" " 最後の問い合わせの SQLSTATE、またはエラーでなければ\"00000\"\n" -#: help.c:459 +#: help.c:463 msgid "" " USER\n" " the currently connected database user\n" @@ -3886,7 +3917,7 @@ msgstr "" " USER\n" " 現在接続中のデータベースユーザー\n" -#: help.c:461 +#: help.c:465 msgid "" " VERBOSITY\n" " controls verbosity of error reports [default, verbose, terse, sqlstate]\n" @@ -3894,7 +3925,7 @@ msgstr "" " VERBOSITY\n" " エラー報告の詳細度を制御 [default, verbose, terse, sqlstate]\n" -#: help.c:463 +#: help.c:467 msgid "" " VERSION\n" " VERSION_NAME\n" @@ -3906,7 +3937,7 @@ msgstr "" " VERSION_NUM\n" " psql のバージョン(長い文字列、短い文字列または数値)\n" -#: help.c:467 +#: help.c:471 #, c-format msgid "" " WATCH_INTERVAL\n" @@ -3915,7 +3946,7 @@ msgstr "" " WATCH_INTERVAL\n" " 実行間の待機秒数 (デフォルト %s)\n" -#: help.c:471 +#: help.c:475 msgid "" "\n" "Display settings:\n" @@ -3923,7 +3954,7 @@ msgstr "" "\n" "表示設定:\n" -#: help.c:473 +#: help.c:477 msgid "" " psql --pset=NAME[=VALUE]\n" " or \\pset NAME [VALUE] inside psql\n" @@ -3933,7 +3964,7 @@ msgstr "" " またはpsql内で \\pset 名前 [値]\n" "\n" -#: help.c:475 +#: help.c:479 msgid "" " border\n" " border style (number)\n" @@ -3941,7 +3972,7 @@ msgstr "" " border\n" " 境界線のスタイル (番号)\n" -#: help.c:477 +#: help.c:481 msgid "" " columns\n" " target width for the wrapped format\n" @@ -3949,7 +3980,16 @@ msgstr "" " columns\n" " 折り返し形式で目標とする横幅\n" -#: help.c:479 +#: 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" @@ -3957,7 +3997,7 @@ msgstr "" " expanded (or x)\n" " 拡張出力 [on, off, auto]\n" -#: help.c:481 +#: help.c:488 #, c-format msgid "" " fieldsep\n" @@ -3966,7 +4006,7 @@ msgstr "" " fieldsep\n" " 非整列出力でのフィールド区切り文字(デフォルトは \"%s\")\n" -#: help.c:484 +#: help.c:491 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -3974,7 +4014,7 @@ msgstr "" " fieldsep_zero\n" " 非整列出力でのフィールド区切り文字をバイト値の0に設定\n" -#: help.c:486 +#: help.c:493 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -3982,7 +4022,7 @@ msgstr "" " footer\n" " テーブルフッター出力の要否を設定 [on, off]\n" -#: help.c:488 +#: help.c:495 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -3990,7 +4030,7 @@ msgstr "" " format\n" " 出力フォーマットを設定 [unaligned, aligned, wrapped, html, asciidoc, ...]\n" -#: help.c:490 +#: help.c:497 msgid "" " linestyle\n" " set the border line drawing style [ascii, old-ascii, unicode]\n" @@ -3998,7 +4038,7 @@ msgstr "" " linestyle\n" " 境界線の描画スタイルを設定 [ascii, old-ascii, unicode]\n" -#: help.c:492 +#: help.c:499 msgid "" " null\n" " set the string to be printed in place of a null value\n" @@ -4006,7 +4046,7 @@ msgstr "" " null\n" " null 値の代わりに表示する文字列を設定\n" -#: help.c:494 +#: help.c:501 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of digits\n" @@ -4014,7 +4054,7 @@ msgstr "" " numericlocale\n" " ロケール固有文字での桁区切りを表示するかどうかを指定\n" -#: help.c:496 +#: help.c:503 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4022,7 +4062,7 @@ msgstr "" " pager\n" " いつ外部ページャーを使うかを制御 [yes, no, always]\n" -#: help.c:498 +#: help.c:505 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4030,7 +4070,7 @@ msgstr "" " recordsep\n" " 非整列出力でのレコード(行)区切り\n" -#: help.c:500 +#: help.c:507 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4038,7 +4078,7 @@ msgstr "" " recordsep_zero\n" " 非整列出力でレコード区切りにバイト値の0に設定\n" -#: help.c:502 +#: help.c:509 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4048,7 +4088,7 @@ msgstr "" " HTMLフォーマット時のtableタグの属性、もしくは latex-longtable\n" " フォーマット時に左寄せするデータ型の相対カラム幅を指定\n" -#: help.c:505 +#: help.c:512 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4056,7 +4096,7 @@ msgstr "" " title\n" " 以降に表示される表のタイトルを設定\n" -#: help.c:507 +#: help.c:514 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4064,7 +4104,7 @@ msgstr "" " tuples_only\n" " セットされた場合、実際のテーブルデータのみを表示\n" -#: help.c:509 +#: help.c:516 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4076,7 +4116,7 @@ msgstr "" " unicode_header_linestyle\n" " Unicode による線描画時のスタイルを設定 [single, double]\n" -#: help.c:513 +#: help.c:520 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4086,7 +4126,7 @@ msgstr "" " 拡張出力のヘッダの最大幅を指定します\n" " [full, column, page, 整数値]\n" -#: help.c:517 +#: help.c:524 msgid "" "\n" "Environment variables:\n" @@ -4094,7 +4134,7 @@ msgstr "" "\n" "環境変数:\n" -#: help.c:521 +#: help.c:528 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4104,7 +4144,7 @@ msgstr "" " またはpsql内で \\setenv 名前 [値]\n" "\n" -#: help.c:523 +#: help.c:530 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4116,7 +4156,7 @@ msgstr "" " またはpsq内で \\setenv 名前 [値]\n" "\n" -#: help.c:526 +#: help.c:533 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4124,7 +4164,7 @@ msgstr "" " COLUMNS\n" " 折り返し書式におけるカラム数\n" -#: help.c:528 +#: help.c:535 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4132,7 +4172,7 @@ msgstr "" " PGAPPNAME\n" " application_name 接続パラメータと同じ\n" -#: help.c:530 +#: help.c:537 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4140,7 +4180,7 @@ msgstr "" " PGDATABASE\n" " dbname 接続パラメータと同じ\n" -#: help.c:532 +#: help.c:539 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4148,7 +4188,7 @@ msgstr "" " PGHOST\n" " host 接続パラメータと同じ\n" -#: help.c:534 +#: help.c:541 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4156,7 +4196,7 @@ msgstr "" " PGPASSFILE\n" " パスワードファイル名\n" -#: help.c:536 +#: help.c:543 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4164,7 +4204,7 @@ msgstr "" " PGPASSWORD\n" " 接続用パスワード (推奨されません)\n" -#: help.c:538 +#: help.c:545 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4172,7 +4212,7 @@ msgstr "" " PGPORT\n" " port 接続パラメータと同じ\n" -#: help.c:540 +#: help.c:547 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4180,7 +4220,7 @@ msgstr "" " PGUSER\n" " user 接続パラメータと同じ\n" -#: help.c:542 +#: help.c:549 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4188,7 +4228,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " \\e, \\ef, \\ev コマンドで使われるエディタ\n" -#: help.c:544 +#: help.c:551 msgid "" " PSQL_EDITOR_LINENUMBER_ARG\n" " how to specify a line number when invoking the editor\n" @@ -4196,7 +4236,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " エディタの起動時に行番号を指定する方法\n" -#: help.c:546 +#: help.c:553 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4204,7 +4244,7 @@ msgstr "" " PSQL_HISTORY\n" " コマンドライン履歴ファイルの代替の場所\n" -#: help.c:548 +#: help.c:555 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4212,7 +4252,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " 外部ページャープログラムの名前\n" -#: help.c:551 +#: help.c:558 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4220,7 +4260,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " \\watchで使用する外部ページャープログラムの名前\n" -#: help.c:554 +#: help.c:561 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4228,7 +4268,7 @@ msgstr "" " PSQLRC\n" " ユーザーの .psqlrc ファイルの代替の場所\n" -#: help.c:556 +#: help.c:563 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4236,7 +4276,7 @@ msgstr "" " SHELL\n" " \\! コマンドで使われるシェル\n" -#: help.c:558 +#: help.c:565 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4244,11 +4284,11 @@ msgstr "" " TMPDIR\n" " テンポラリファイル用ディレクトリ\n" -#: help.c:618 +#: help.c:625 msgid "Available help:\n" msgstr "利用可能なヘルプ:\n" -#: help.c:713 +#: help.c:720 #, c-format msgid "" "Command: %s\n" @@ -4267,7 +4307,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:736 +#: help.c:743 #, c-format msgid "" "No help available for \"%s\".\n" @@ -6881,7 +6921,7 @@ msgstr "余分なコマンドライン引数\"%s\"は無視されました" msgid "could not find own program executable" msgstr "実行可能ファイルが見つかりませんでした" -#: tab-complete.in.c:6613 +#: tab-complete.in.c:6633 #, c-format msgid "" "tab completion query failed: %s\n" diff --git a/src/bin/psql/po/ru.po b/src/bin/psql/po/ru.po index 7a4b9b667ade5..cdcc99f984c2d 100644 --- a/src/bin/psql/po/ru.po +++ b/src/bin/psql/po/ru.po @@ -10,8 +10,8 @@ msgid "" msgstr "" "Project-Id-Version: psql (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-06 14:43+0300\n" +"POT-Creation-Date: 2025-11-09 06:28+0200\n" +"PO-Revision-Date: 2025-11-09 08:23+0200\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" "Language: ru\n" @@ -2820,7 +2820,7 @@ msgstr "" "psql - это интерактивный терминал PostgreSQL.\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 "Использование:\n" @@ -4253,6 +4253,15 @@ msgstr "" " целевая ширина для формата с переносом\n" #: 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" @@ -4260,7 +4269,7 @@ msgstr "" " expanded (или x)\n" " развёрнутый вывод [on (вкл.), off (выкл.), auto (авто)]\n" -#: help.c:485 +#: help.c:488 #, c-format msgid "" " fieldsep\n" @@ -4269,7 +4278,7 @@ msgstr "" " fieldsep\n" " разделитель полей для неформатированного вывода (по умолчанию \"%s\")\n" -#: help.c:488 +#: help.c:491 msgid "" " fieldsep_zero\n" " set field separator for unaligned output to a zero byte\n" @@ -4277,7 +4286,7 @@ msgstr "" " fieldsep_zero\n" " устанавливает ноль разделителем полей при неформатированном выводе\n" -#: help.c:490 +#: help.c:493 msgid "" " footer\n" " enable or disable display of the table footer [on, off]\n" @@ -4285,7 +4294,7 @@ msgstr "" " footer\n" " включает или выключает вывод подписей таблицы [on (вкл.), off (выкл.)]\n" -#: help.c:492 +#: help.c:495 msgid "" " format\n" " set output format [unaligned, aligned, wrapped, html, asciidoc, ...]\n" @@ -4295,7 +4304,7 @@ msgstr "" "\n" " 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" @@ -4303,7 +4312,7 @@ msgstr "" " linestyle\n" " задаёт стиль рисования линий границы [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" @@ -4311,7 +4320,7 @@ msgstr "" " null\n" " устанавливает строку, выводимую вместо значения NULL\n" -#: help.c:498 +#: help.c:501 msgid "" " numericlocale\n" " enable display of a locale-specific character to separate groups of " @@ -4320,7 +4329,7 @@ msgstr "" " numericlocale\n" " отключает вывод заданного локалью разделителя группы цифр\n" -#: help.c:500 +#: help.c:503 msgid "" " pager\n" " control when an external pager is used [yes, no, always]\n" @@ -4329,7 +4338,7 @@ msgstr "" " определяет, используется ли внешний постраничник\n" " [yes (да), no (нет), always (всегда)]\n" -#: help.c:502 +#: help.c:505 msgid "" " recordsep\n" " record (line) separator for unaligned output\n" @@ -4337,7 +4346,7 @@ msgstr "" " recordsep\n" " разделитель записей (строк) при неформатированном выводе\n" -#: help.c:504 +#: help.c:507 msgid "" " recordsep_zero\n" " set record separator for unaligned output to a zero byte\n" @@ -4345,7 +4354,7 @@ msgstr "" " recordsep_zero\n" " устанавливает ноль разделителем записей при неформатированном выводе\n" -#: help.c:506 +#: help.c:509 msgid "" " tableattr (or T)\n" " specify attributes for table tag in html format, or proportional\n" @@ -4355,7 +4364,7 @@ msgstr "" " задаёт атрибуты для тега table в формате html или пропорциональные\n" " ширины столбцов для выровненных влево данных, в формате latex-longtable\n" -#: help.c:509 +#: help.c:512 msgid "" " title\n" " set the table title for subsequently printed tables\n" @@ -4363,7 +4372,7 @@ msgstr "" " title\n" " задаёт заголовок таблицы для последовательно печатаемых таблиц\n" -#: help.c:511 +#: help.c:514 msgid "" " tuples_only\n" " if set, only actual table data is shown\n" @@ -4371,7 +4380,7 @@ msgstr "" " tuples_only\n" " если установлено, выводятся только непосредственно табличные данные\n" -#: help.c:513 +#: help.c:516 msgid "" " unicode_border_linestyle\n" " unicode_column_linestyle\n" @@ -4384,7 +4393,7 @@ msgstr "" " задаёт стиль рисуемых линий Unicode [single (одинарные), double " "(двойные)]\n" -#: help.c:517 +#: help.c:520 msgid "" " xheader_width\n" " set the maximum width of the header for expanded output\n" @@ -4394,7 +4403,7 @@ msgstr "" " задаёт максимальную ширину заголовка для развёрнутого вывода\n" " [full (полностью), column (столбец), page (страница), целое значение]\n" -#: help.c:521 +#: help.c:524 msgid "" "\n" "Environment variables:\n" @@ -4402,7 +4411,7 @@ msgstr "" "\n" "Переменные окружения:\n" -#: help.c:525 +#: help.c:528 msgid "" " NAME=VALUE [NAME=VALUE] psql ...\n" " or \\setenv NAME [VALUE] inside psql\n" @@ -4412,7 +4421,7 @@ msgstr "" " или \\setenv ИМЯ [ЗНАЧЕНИЕ] в приглашении psql\n" "\n" -#: help.c:527 +#: help.c:530 msgid "" " set NAME=VALUE\n" " psql ...\n" @@ -4424,7 +4433,7 @@ msgstr "" " или \\setenv ИМЯ ЗНАЧЕНИЕ в приглашении psql\n" "\n" -#: help.c:530 +#: help.c:533 msgid "" " COLUMNS\n" " number of columns for wrapped format\n" @@ -4432,7 +4441,7 @@ msgstr "" " COLUMNS\n" " число столбцов для форматирования с переносом\n" -#: help.c:532 +#: help.c:535 msgid "" " PGAPPNAME\n" " same as the application_name connection parameter\n" @@ -4440,7 +4449,7 @@ msgstr "" " PGAPPNAME\n" " синоним параметра подключения application_name\n" -#: help.c:534 +#: help.c:537 msgid "" " PGDATABASE\n" " same as the dbname connection parameter\n" @@ -4448,7 +4457,7 @@ msgstr "" " PGDATABASE\n" " синоним параметра подключения dbname\n" -#: help.c:536 +#: help.c:539 msgid "" " PGHOST\n" " same as the host connection parameter\n" @@ -4456,7 +4465,7 @@ msgstr "" " PGHOST\n" " синоним параметра подключения host\n" -#: help.c:538 +#: help.c:541 msgid "" " PGPASSFILE\n" " password file name\n" @@ -4464,7 +4473,7 @@ msgstr "" " PGPASSFILE\n" " имя файла с паролем\n" -#: help.c:540 +#: help.c:543 msgid "" " PGPASSWORD\n" " connection password (not recommended)\n" @@ -4472,7 +4481,7 @@ msgstr "" " PGPASSWORD\n" " пароль для подключения (использовать не рекомендуется)\n" -#: help.c:542 +#: help.c:545 msgid "" " PGPORT\n" " same as the port connection parameter\n" @@ -4480,7 +4489,7 @@ msgstr "" " PGPORT\n" " синоним параметра подключения port\n" -#: help.c:544 +#: help.c:547 msgid "" " PGUSER\n" " same as the user connection parameter\n" @@ -4488,7 +4497,7 @@ msgstr "" " PGUSER\n" " синоним параметра подключения user\n" -#: help.c:546 +#: help.c:549 msgid "" " PSQL_EDITOR, EDITOR, VISUAL\n" " editor used by the \\e, \\ef, and \\ev commands\n" @@ -4496,7 +4505,7 @@ msgstr "" " PSQL_EDITOR, EDITOR, VISUAL\n" " редактор, вызываемый командами \\e, \\ef и \\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" @@ -4504,7 +4513,7 @@ msgstr "" " PSQL_EDITOR_LINENUMBER_ARG\n" " определяет способ передачи номера строки при вызове редактора\n" -#: help.c:550 +#: help.c:553 msgid "" " PSQL_HISTORY\n" " alternative location for the command history file\n" @@ -4512,7 +4521,7 @@ msgstr "" " PSQL_HISTORY\n" " альтернативное размещение файла с историей команд\n" -#: help.c:552 +#: help.c:555 msgid "" " PSQL_PAGER, PAGER\n" " name of external pager program\n" @@ -4520,7 +4529,7 @@ msgstr "" " PSQL_PAGER, PAGER\n" " имя программы внешнего постраничника\n" -#: help.c:555 +#: help.c:558 msgid "" " PSQL_WATCH_PAGER\n" " name of external pager program used for \\watch\n" @@ -4528,7 +4537,7 @@ msgstr "" " PSQL_WATCH_PAGER\n" " имя программы внешнего постраничника для \\watch\n" -#: help.c:558 +#: help.c:561 msgid "" " PSQLRC\n" " alternative location for the user's .psqlrc file\n" @@ -4536,7 +4545,7 @@ msgstr "" " PSQLRC\n" " альтернативное размещение пользовательского файла .psqlrc\n" -#: help.c:560 +#: help.c:563 msgid "" " SHELL\n" " shell used by the \\! command\n" @@ -4544,7 +4553,7 @@ msgstr "" " SHELL\n" " оболочка, вызываемая командой \\!\n" -#: help.c:562 +#: help.c:565 msgid "" " TMPDIR\n" " directory for temporary files\n" @@ -4552,11 +4561,11 @@ msgstr "" " TMPDIR\n" " каталог для временных файлов\n" -#: help.c:622 +#: help.c:625 msgid "Available help:\n" msgstr "Имеющаяся справка:\n" -#: help.c:717 +#: help.c:720 #, c-format msgid "" "Command: %s\n" @@ -4575,7 +4584,7 @@ msgstr "" "URL: %s\n" "\n" -#: help.c:740 +#: help.c:743 #, c-format msgid "" "No help available for \"%s\".\n" diff --git a/src/bin/scripts/po/es.po b/src/bin/scripts/po/es.po index 6d203ee979c4d..6871acf87e8de 100644 --- a/src/bin/scripts/po/es.po +++ b/src/bin/scripts/po/es.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: pgscripts (PostgreSQL) 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 09:50+0000\n" -"PO-Revision-Date: 2025-09-21 11:41+0200\n" +"POT-Creation-Date: 2025-11-08 00:21+0000\n" +"PO-Revision-Date: 2025-11-08 19:08+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -181,7 +181,6 @@ msgstr "Interrumpido\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" msgid "Cannot print table contents: number of cells % is equal to or exceeds maximum %zu.\n" msgstr "No se puede imprimir el contenido de la tabla: el número de celdas % es igual o mayor al máximo %zu.\n" @@ -192,7 +191,6 @@ msgstr "No se puede agregar un encabezado al contenido de la tabla: la cantidad #: ../../fe_utils/print.c:3272 #, c-format -#| msgid "Cannot add cell to table content: total cell count of %lld exceeded.\n" msgid "Cannot add cell to table content: total cell count of % exceeded.\n" msgstr "No se puede agregar una celda al contenido de la tabla: la cantidad de celdas de % ha sido excedida.\n" @@ -718,8 +716,7 @@ msgid "" " -v, --valid-until=TIMESTAMP\n" " password expiration date and time for role\n" msgstr "" -" -v, --valid-until=TIEMPO\n" -" fecha/hora de expiración de contraseña para el rol\n" +" -v, --valid-until=TIEMPO fecha/hora de expiración de contraseña para el rol\n" #: createuser.c:442 #, c-format @@ -1050,7 +1047,9 @@ msgstr " -t, --table=TABLA reindexar sólo esta(s) tabla(s)\n" #: reindexdb.c:911 #, c-format msgid " --tablespace=TABLESPACE tablespace where indexes are rebuilt\n" -msgstr " --tablespace=TABLESPACE tablespace donde se reconstruirán los índices\n" +msgstr "" +" --tablespace=TABLESPACE\n" +" tablespace donde se reconstruirán los índices\n" #: reindexdb.c:912 #, c-format @@ -1084,7 +1083,6 @@ msgstr "no se puede usar la opción «%s» junto con la opción «%s»" #: vacuumdb.c:380 #, c-format -#| msgid "cannot use the \"%s\" option with the \"%s\" option" msgid "cannot use the \"%s\" option without \"%s\" or \"%s\"" msgstr "no se puede usar la opción «%s» junto sin «%s» o «%s»" @@ -1211,9 +1209,8 @@ msgstr " --min-xid-age=EDAD_XID edad de ID de transacción mínima de tab #: vacuumdb.c:1351 #, c-format -#| msgid " --install-missing install missing extensions\n" msgid " --missing-stats-only only analyze relations with missing statistics\n" -msgstr " --missing-stats-only sólo analizar relaciones sin estadísticas\n" +msgstr " --missing-stats-only sólo analizar relaciones sin estadísticas\n" #: vacuumdb.c:1352 #, c-format diff --git a/src/interfaces/ecpg/ecpglib/po/es.po b/src/interfaces/ecpg/ecpglib/po/es.po index c904804ebea32..a8bead07d89e8 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-09-20 09:39+0000\n" +"POT-Creation-Date: 2025-11-08 00: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 344b2cd4ef8f6..a3804271c5488 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-09-20 09:40+0000\n" +"POT-Creation-Date: 2025-11-08 00:10+0000\n" "PO-Revision-Date: 2025-09-21 11:11+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -293,7 +293,6 @@ msgstr "un identificador en comillas está inconcluso" #: pgc.l:985 #, c-format -#| msgid "parameter number %d is out of range 0..%d" msgid "parameter number too large" msgstr "el número de parámetro es demasiado grande" @@ -680,7 +679,6 @@ msgstr "la variable «%s» no es un array" #: variable.c:220 #, c-format -#| msgid "unmatched format character \"%s\"" msgid "unmatched bracket in variable \"%s\"" msgstr "corchete sin emparejar en la variable «%s»" diff --git a/src/interfaces/libpq/po/es.po b/src/interfaces/libpq/po/es.po index ae1e34d5a69b8..fe45399938757 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-09-20 09:40+0000\n" -"PO-Revision-Date: 2025-09-21 11:07+0200\n" +"POT-Creation-Date: 2025-11-08 00:10+0000\n" +"PO-Revision-Date: 2025-11-08 09:42+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" "Language: es\n" @@ -24,26 +24,22 @@ msgstr "" "X-Generator: BlackCAT 1.1\n" #: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 -#, fuzzy, c-format -#| msgid "database removal failed: %s" +#, c-format msgid "libcurl easy handle removal failed: %s" -msgstr "falló la eliminación de la base de datos: %s" +msgstr "falló la eliminación del “easy handle” de libcurl: %s" #: ../libpq-oauth/oauth-curl.c:327 -#, fuzzy, c-format -#| msgid "creation of new role failed: %s" +#, c-format msgid "libcurl multi handle cleanup failed: %s" -msgstr "falló la creación del nuevo rol: %s" +msgstr "falló la limpieza del “multi handle” de libcurl: %s" #: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 #, c-format -#| msgid "could not establish SSL connection: %s" 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 #, c-format -#| msgid "failed to send SSL negotiation response: %m" msgid "failed to get %s from OAuth response: %s" msgstr "no se pudo obtener %s de la respuesta OAuth: %s" @@ -55,73 +51,65 @@ msgstr "JSON está anidado demasiado profundamente" #: ../libpq-oauth/oauth-curl.c:540 #, c-format msgid "internal error: started field '%s' before field '%s' was finished" -msgstr "" +msgstr "error interno: se inició el campo '%s' antes de terminar el campo '%s'" #: ../libpq-oauth/oauth-curl.c:567 #, c-format -#| msgid "Key %s is duplicated." msgid "field \"%s\" is duplicated" msgstr "el campo %s está duplicado" #: ../libpq-oauth/oauth-curl.c:592 #, c-format msgid "internal error: field '%s' still active at end of object" -msgstr "" +msgstr "error interno: el campo '%s' sigue activo al final del objeto" #: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 #, c-format -#| msgid "cannot extract elements from an object" 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: received unexpected database pattern_id %d" 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 "" +msgstr "error interno: se encontró destino escalar en el nivel de anidamiento %d" #: ../libpq-oauth/oauth-curl.c:713 #, c-format msgid "internal error: scalar field '%s' would be assigned twice" -msgstr "" +msgstr "error interno: el campo escalar '%s' sería asignado dos veces" #: ../libpq-oauth/oauth-curl.c:735 #, c-format msgid "internal error: array member found at nesting level %d" -msgstr "" +msgstr "error interno: miembro de array encontrado en el nivel de anidamiento %d" #: ../libpq-oauth/oauth-curl.c:770 #, c-format -#| msgid "no column alias was provided" msgid "no content type was provided" msgstr "no se entregó un tipo de contenido" #: ../libpq-oauth/oauth-curl.c:809 #, c-format -#| msgid "unexpected message type \"%c\"" msgid "unexpected content type: \"%s\"" msgstr "tipo de contenido inesperado: «%s»" #: ../libpq-oauth/oauth-curl.c:834 #, c-format -#| msgid "SSL certificate's name contains embedded null" msgid "response contains embedded NULLs" msgstr "la respuesta contiene caracteres NULL" #: ../libpq-oauth/oauth-curl.c:844 #, c-format -#| msgid "index \"%s\" is not valid" msgid "response is not valid UTF-8" msgstr "la respuesta no es UTF-8 válido" #: ../libpq-oauth/oauth-curl.c:884 #, c-format -#| msgid "File \"%s\" is missing." msgid "field \"%s\" is missing" msgstr "falta el campo «%s»" @@ -131,35 +119,30 @@ msgid "provider rejected the oauth_client_secret" msgstr "el proveedor rechazó el oauth_client_secret" #: ../libpq-oauth/oauth-curl.c:1182 -#, fuzzy, c-format -#| msgid "failed to restore old locale \"%s\"" +#, c-format msgid "failed to create epoll set: %m" -msgstr "no se pudo restaurar la configuración regional anterior «%s»" +msgstr "no se pudo crear el grupo de “epoll”: %m" #: ../libpq-oauth/oauth-curl.c:1189 -#, fuzzy, c-format -#| msgid "failed to send signal to postmaster: %m" +#, c-format msgid "failed to create timerfd: %m" -msgstr "no se pudo enviar señal a postmaster: %m" +msgstr "no se pudo crear el “timerfd”: %m" #: ../libpq-oauth/oauth-curl.c:1195 -#, fuzzy, c-format -#| msgid "failed to send signal to postmaster: %m" +#, c-format msgid "failed to add timerfd to epoll set: %m" -msgstr "no se pudo enviar señal a postmaster: %m" +msgstr "no se pudo agregar el “timerfd” al grupo de “epoll”: %m" #. translator: the term "kqueue" (kernel queue) should not be translated #: ../libpq-oauth/oauth-curl.c:1205 -#, fuzzy, c-format -#| msgid "could not create socket: %s" +#, c-format msgid "failed to create kqueue: %m" -msgstr "no se pudo crear el socket: %s" +msgstr "no se pudo crear el “kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1218 -#, fuzzy, c-format -#| msgid "failed to send signal to postmaster: %m" +#, c-format msgid "failed to create timer kqueue: %m" -msgstr "no se pudo enviar señal a postmaster: %m" +msgstr "no se pudo crear el temporizador ”kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1262 ../libpq-oauth/oauth-curl.c:1337 #, c-format @@ -167,89 +150,79 @@ msgid "unknown libcurl socket operation: %d" msgstr "operación de socket libcurl desconocida: %d" #: ../libpq-oauth/oauth-curl.c:1279 -#, fuzzy, c-format -#| msgid "could not send data to client: %m" +#, c-format msgid "could not add to epoll set: %m" -msgstr "no se pudo enviar datos al cliente: %m" +msgstr "no se pudo agregar al grupo de ”epoll”: %m" #: ../libpq-oauth/oauth-curl.c:1283 -#, fuzzy, c-format -#| msgid "could not delete file \"%s\": %m" +#, c-format msgid "could not delete from epoll set: %m" -msgstr "no se pudo borrar el archivo «%s»: %m" +msgstr "no se pudo borrar el grupo de “epoll”: %m" #: ../libpq-oauth/oauth-curl.c:1287 -#, fuzzy, c-format -#| msgid "could not duplicate stdout: %m" +#, c-format msgid "could not update epoll set: %m" -msgstr "no se pudo duplicar stdout: %m" +msgstr "no se pudo actualizar el grupo de “epoll”: %m" #: ../libpq-oauth/oauth-curl.c:1347 -#, fuzzy, c-format -#| msgid "could not open output file: %m" +#, c-format msgid "could not modify kqueue: %m" -msgstr "no se pudo abrir el archivo de salida: %m" +msgstr "no se pudo modificar el “kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1371 -#, fuzzy, c-format -#| msgid "could not delete file \"%s\": %m" +#, c-format msgid "could not delete from kqueue: %m" -msgstr "no se pudo borrar el archivo «%s»: %m" +msgstr "no se pudo borrar del “kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1374 -#, fuzzy, c-format -#| msgid "could not read input file: %m" +#, c-format msgid "could not add to kqueue: %m" -msgstr "no se pudo leer el archivo de entrada: %m" +msgstr "no se pudo agregar al “kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1423 -#, fuzzy, c-format -#| msgid "could not close TOC file: %m" +#, c-format msgid "could not comb kqueue: %m" -msgstr "no se pudo cerrar el archivo TOC: %m" +msgstr "no se pudo “rastrear” el “kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1473 #, c-format msgid "setting timerfd to %ld: %m" -msgstr "" +msgstr "definiendo “timerfd” a %ld: %m" #: ../libpq-oauth/oauth-curl.c:1503 #, c-format msgid "deleting kqueue timer: %m" -msgstr "" +msgstr "eliminando el temporizador “kqueue”: %m" #: ../libpq-oauth/oauth-curl.c:1510 #, c-format msgid "removing kqueue timer from multiplexer: %m" -msgstr "" +msgstr "eliminando el temporizador “kqueue” del multiplexor: %m" #: ../libpq-oauth/oauth-curl.c:1521 #, c-format msgid "setting kqueue timer to %ld: %m" -msgstr "" +msgstr "definiendo el temporizador “kqueue” a %ld: %m" #: ../libpq-oauth/oauth-curl.c:1528 #, c-format msgid "adding kqueue timer to multiplexer: %m" -msgstr "" +msgstr "agregando el temporizador ”kqueue” al multiplexor: %m" #: ../libpq-oauth/oauth-curl.c:1553 #, c-format -#| msgid "Checking cluster versions" msgid "checking timer expiration: %m" msgstr "verificando la expiración del temporizador: %m" #: ../libpq-oauth/oauth-curl.c:1715 -#, fuzzy, c-format -#| msgid "failed to restore old locale" +#, c-format msgid "failed to create libcurl multi handle" -msgstr "no se pudo restaurar la configuración regional anterior" +msgstr "no se pudo crear el “multi handle” de libcurl" #: ../libpq-oauth/oauth-curl.c:1735 -#, fuzzy, c-format -#| msgid "failed to restore old locale" +#, c-format msgid "failed to create libcurl handle" -msgstr "no se pudo restaurar la configuración regional anterior" +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 @@ -271,7 +244,7 @@ msgstr "no se pudo restaurar la configuración regional anterior" #: 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-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" @@ -279,7 +252,6 @@ msgstr "memoria agotada" #: ../libpq-oauth/oauth-curl.c:1847 #, c-format -#| msgid "tsquery is too large" msgid "response is too large" msgstr "la respuesta es demasiado grande" @@ -289,28 +261,25 @@ 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 -#, fuzzy, c-format -#| msgid "checkpoint request failed" +#, c-format msgid "asynchronous HTTP request failed: %s" -msgstr "falló la petición de checkpoint" +msgstr "petición HTTP asíncrona falló: %s" #: ../libpq-oauth/oauth-curl.c:2011 -#, fuzzy, c-format +#, c-format msgid "no result was retrieved for the finished handle" -msgstr "no se obtuvo un resultado desde el “handle” terminado" +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 -#, fuzzy, c-format -#| msgid "unexpected section code %d" +#, c-format msgid "unexpected response code %ld" -msgstr "código de sección %d inesperado" +msgstr "código de respuesta %ld inesperado" #: ../libpq-oauth/oauth-curl.c:2216 -#, fuzzy, c-format -#| msgid "server certificate for \"%s\" does not match host name \"%s\"" +#, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" -msgstr "el certificado de servidor para «%s» no coincide con el nombre de servidor «%s»" +msgstr "el identificador del emisor (%s) no coincide con oauth_issuer «%s»" #: ../libpq-oauth/oauth-curl.c:2243 #, c-format @@ -325,12 +294,12 @@ msgstr "el “endpoint” de autorización de dispositivo «%s» debe usar HTTPS #: ../libpq-oauth/oauth-curl.c:2278 #, c-format msgid "token endpoint \"%s\" must use HTTPS" -msgstr "" +msgstr "el punto de término de token «%s» debe usar HTTPS" #: ../libpq-oauth/oauth-curl.c:2587 #, c-format msgid "slow_down interval overflow" -msgstr "" +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. @@ -338,22 +307,22 @@ msgstr "" #: ../libpq-oauth/oauth-curl.c:2623 #, c-format msgid "Visit %s and enter the code: %s\n" -msgstr "Visit %s en ingrese el código: %s\n" +msgstr "Visit %s e ingrese el código: %s\n" #: ../libpq-oauth/oauth-curl.c:2628 #, c-format msgid "device prompt failed" -msgstr "" +msgstr "la petición en el dispositivo falló" #: ../libpq-oauth/oauth-curl.c:2684 #, c-format msgid "curl_global_init previously failed during OAuth setup" -msgstr "" +msgstr "curl_global_init falló anteriormente mientras se establecía OAuth" #: ../libpq-oauth/oauth-curl.c:2703 #, c-format msgid "curl_global_init failed during OAuth setup" -msgstr "" +msgstr "curl_global_init falló mientras se establecía OAuth" #: ../libpq-oauth/oauth-curl.c:2724 #, c-format @@ -529,7 +498,6 @@ msgstr "ningún método de autentificación SASL del servidor está soportado" #: fe-auth.c:571 #, c-format -#| msgid "authentication method requirement \"%s\" failed: %s" msgid "authentication method requirement \"%s\" failed: server requested %s authentication" msgstr "el método de autentificación «%s» requerido falló: el servidor solicitó autenticación %s" @@ -653,7 +621,6 @@ msgstr "no se pudo encontrar el ID del usuario local %ld: %m" #: fe-auth.c:1320 #, c-format -#| msgid "local user with ID %d does not exist" msgid "local user with ID %ld does not exist" msgstr "no existe un usuario local con ID %ld" @@ -727,7 +694,7 @@ msgstr "valor %s no válido: «%s»" #: fe-connect.c:1647 #, c-format msgid "internal error: no space in allowed_sasl_mechs" -msgstr "" +msgstr "error interno: no hay espacio en allowed_sasl_mechs" #: fe-connect.c:1686 #, c-format @@ -771,33 +738,28 @@ msgstr "el valor gssencmode «%s» no es válido cuando no se ha compilado con s #: fe-connect.c:2029 #, c-format -#| msgid "invalid SCRAM response" msgid "invalid SCRAM client key" msgstr "llave de cliente SCRAM no válida" #: fe-connect.c:2034 #, c-format -#| msgid "invalid mask length: %d" msgid "invalid SCRAM client key length: %d" msgstr "largo de llave de cliente SCRAM no válido: %d" #: fe-connect.c:2052 #, c-format -#| msgid "invalid SCRAM response" msgid "invalid SCRAM server key" msgstr "llave de servidor SCRAM no válida" #: fe-connect.c:2057 -#, fuzzy, c-format -#| msgid "invalid mask length: %d" +#, c-format msgid "invalid SCRAM server key length: %d" msgstr "largo de llave de servidor SCRAM no válido: %d" #: fe-connect.c:2144 -#, fuzzy, c-format -#| msgid "\"%s\" cannot be higher than \"%s\"" +#, c-format msgid "\"%s\" is greater than \"%s\"" -msgstr "«%s» no puede ser más alto que «%s»" +msgstr "«%s» es mayor que «%s»" #: fe-connect.c:2356 #, c-format @@ -999,25 +961,24 @@ msgid "received invalid error message" msgstr "se recibió un mensaje de error no válido" #: fe-connect.c:4151 -#, fuzzy, c-format -#| msgid "received invalid protocol negotiation message" +#, c-format msgid "received duplicate protocol negotiation message" -msgstr "se recibió un mensaje de negociación de protocolo no válido" +msgstr "se recibió un mensaje de negociación de protocolo duplicado" #: fe-connect.c:4253 #, c-format msgid "internal error: async authentication has no handler" -msgstr "" +msgstr "error interno: la autentificación async no tiene manejador" #: fe-connect.c:4278 #, c-format msgid "internal error: async cleanup did not release polling socket" -msgstr "" +msgstr "error interno: la limpieza async no liberó el socket de polling" #: fe-connect.c:4301 #, c-format msgid "internal error: async authentication did not set a socket for polling" -msgstr "" +msgstr "error interno: la autentificación async no definió un socket para polling" #: fe-connect.c:4334 #, c-format @@ -1599,33 +1560,29 @@ msgid "LINE %d: " msgstr "LÍNEA %d: " #: fe-protocol3.c:1442 -#, fuzzy, c-format -#| msgid "received invalid protocol negotiation message" +#, 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" +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 -#, fuzzy, c-format -#| msgid "received invalid protocol negotiation message" +#, 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" +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 #, 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ó un “downgrade” a la versión de protocolo inexistente 3.1" +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 -#, fuzzy, c-format -#| msgid "received invalid protocol negotiation message" +#, 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" +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 -#, fuzzy, c-format -#| msgid "received invalid protocol negotiation message" +#, 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" +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 #, c-format @@ -1643,10 +1600,9 @@ msgid "received invalid protocol negotiation message: server reported an unsuppo 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 -#, fuzzy, c-format -#| msgid "received invalid protocol negotiation message" +#, c-format msgid "received invalid protocol negotiation message: message too short" -msgstr "se recibió un mensaje de negociación de protocolo no válido" +msgstr "se recibió un mensaje de negociación de protocolo no válido: mensaje demasiado corto" #: fe-protocol3.c:1574 #, c-format @@ -1724,12 +1680,12 @@ msgstr "error de «wrap» de GSSAPI" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "mensaje saliente GSSAPI no proveería confidencialidad" -#: 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 "el cliente intentó enviar un paquete GSSAPI demasiado grande (%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 "paquete GSSAPI demasiado grande enviado por el servidor (%zu > %zu)" @@ -1743,11 +1699,11 @@ msgstr "error de «unwrap» de GSSAPI" msgid "incoming GSSAPI message did not use confidentiality" msgstr "mensaje GSSAPI entrante no usó confidencialidad" -#: fe-secure-gssapi.c:662 +#: fe-secure-gssapi.c:665 msgid "could not initiate GSSAPI security context" msgstr "no se pudo iniciar un contexto de seguridad GSSAPI" -#: fe-secure-gssapi.c:712 +#: fe-secure-gssapi.c:715 msgid "GSSAPI size check error" msgstr "error de verificación de tamaño GSSAPI" @@ -1802,16 +1758,14 @@ msgid "SSL certificate's address entry is missing" msgstr "falta el elemento de dirección en el certificado SSL" #: fe-secure-openssl.c:715 -#, fuzzy, c-format -#| msgid "%s: could not open log file \"%s\": %m\n" +#, c-format msgid "WARNING: could not open SSL key logging file \"%s\": %m\n" -msgstr "%s: no se pudo abrir el archivo de log «%s»: %m\n" +msgstr "ATENCIÓN: no se pudo abrir el archivo de registro de llaves SSL «%s»: %m\n" #: fe-secure-openssl.c:723 -#, fuzzy, c-format -#| msgid "could not write to log file \"%s\": %m" +#, c-format msgid "WARNING: could not write to SSL key logging file \"%s\": %m\n" -msgstr "no se pudo escribir al archivo de log «%s»" +msgstr "ATENCIÓN: no se pudo escribir al archivo de registro de llaves SSL «%s»: %m\n" #: fe-secure-openssl.c:776 #, c-format @@ -2005,21 +1959,3 @@ 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 "could not look up local user ID %d: %s" -#~ msgstr "no se pudo buscar el usuario local de ID %d: %s" - -#, c-format -#~ msgid "protocol version not supported by server: client uses %u.%u, server supports up to %u.%u" -#~ msgstr "versión de protocolo no soportada por el servidor: cliente usa %u.%u, servidor soporta hasta %u.%u" - -#, c-format -#~ msgid "protocol extension not supported by server: %s" -#~ msgid_plural "protocol extensions not supported by server: %s" -#~ msgstr[0] "extensión del protocolo no soportada por el servidor: %s" -#~ msgstr[1] "extensiones del protocolo no soportadas por el servidor: %s" - -#, c-format -#~ msgid "invalid %s message" -#~ msgstr "mensaje %s no válido" diff --git a/src/interfaces/libpq/po/fr.po b/src/interfaces/libpq/po/fr.po index 1640fd9abe9c4..d860f858e9b8b 100644 --- a/src/interfaces/libpq/po/fr.po +++ b/src/interfaces/libpq/po/fr.po @@ -12,8 +12,8 @@ msgid "" msgstr "" "Project-Id-Version: PostgreSQL 17\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-09-20 04:40+0000\n" -"PO-Revision-Date: 2025-09-20 11:08+0200\n" +"POT-Creation-Date: 2025-11-08 09:10+0000\n" +"PO-Revision-Date: 2025-11-08 11:45+0100\n" "Last-Translator: Guillaume Lelarge \n" "Language-Team: French \n" "Language: fr\n" @@ -21,7 +21,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" #: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format @@ -182,7 +182,7 @@ msgstr "n'a pas pu ajouter à kqueue : %m" #: ../libpq-oauth/oauth-curl.c:1423 #, c-format msgid "could not comb kqueue: %m" -msgstr "" +msgstr "n'a pas pu passer dans kqueue : %m" #: ../libpq-oauth/oauth-curl.c:1473 #, c-format @@ -244,7 +244,7 @@ msgstr "a échoué pour créer la poignée libcurl" #: 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-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" @@ -1686,12 +1686,12 @@ msgstr "erreur d'emballage GSSAPI" msgid "outgoing GSSAPI message would not use confidentiality" msgstr "le message sortant GSSAPI n'utiliserait pas la confidentialité" -#: 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 "le client a essayé d'envoyer un paquet GSSAPI trop gros (%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 "paquet GSSAPI trop gros envoyé par le serveur (%zu > %zu)" @@ -1705,11 +1705,11 @@ msgstr "erreur de dépaquetage GSSAPI" msgid "incoming GSSAPI message did not use confidentiality" msgstr "le message entrant GSSAPI n'a pas utilisé la confidentialité" -#: fe-secure-gssapi.c:662 +#: fe-secure-gssapi.c:665 msgid "could not initiate GSSAPI security context" msgstr "n'a pas pu initier le contexte de sécurité GSSAPI" -#: fe-secure-gssapi.c:712 +#: fe-secure-gssapi.c:715 msgid "GSSAPI size check error" msgstr "erreur de vérification de la taille GSSAPI" diff --git a/src/interfaces/libpq/po/ja.po b/src/interfaces/libpq/po/ja.po index 70060a27ab5ee..70105dc627f51 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-06-27 18:25+0900\n" -"PO-Revision-Date: 2025-06-30 13:15+0900\n" +"POT-Creation-Date: 2025-10-10 15:47+0900\n" +"PO-Revision-Date: 2025-10-10 16:10+0900\n" "Last-Translator: Kyotaro Horiguchi \n" "Language-Team: Japan PostgreSQL Users Group \n" "Language: ja\n" @@ -20,279 +20,280 @@ msgstr "" "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 1.8.13\n" -#: ../libpq-oauth/oauth-curl.c:306 ../libpq-oauth/oauth-curl.c:1936 +#: ../libpq-oauth/oauth-curl.c:307 ../libpq-oauth/oauth-curl.c:2000 #, c-format msgid "libcurl easy handle removal failed: %s" msgstr "libcurl簡易ハンドルの削除に失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:326 +#: ../libpq-oauth/oauth-curl.c:327 #, c-format msgid "libcurl multi handle cleanup failed: %s" msgstr "libcurlマルチハンドルのクリーンアップに失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:389 ../libpq-oauth/oauth-curl.c:400 +#: ../libpq-oauth/oauth-curl.c:390 ../libpq-oauth/oauth-curl.c:401 #, c-format msgid "failed to set %s on OAuth connection: %s" msgstr "OAuth接続での%sの設定に失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:411 +#: ../libpq-oauth/oauth-curl.c:412 #, c-format msgid "failed to get %s from OAuth response: %s" msgstr "OAuth応答からの%sの取得に失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:514 ../libpq-oauth/oauth-curl.c:624 +#: ../libpq-oauth/oauth-curl.c:515 ../libpq-oauth/oauth-curl.c:625 #, c-format msgid "JSON is too deeply nested" msgstr "JSONのネストが深すぎます" -#: ../libpq-oauth/oauth-curl.c:539 +#: ../libpq-oauth/oauth-curl.c:540 #, c-format msgid "internal error: started field '%s' before field '%s' was finished" msgstr "内部エラー: フィールド '%2$s' の終了前にフィールド '%1$s' が開始されました" -#: ../libpq-oauth/oauth-curl.c:566 +#: ../libpq-oauth/oauth-curl.c:567 #, c-format msgid "field \"%s\" is duplicated" msgstr "フィールド\"%s\"は重複しています。" -#: ../libpq-oauth/oauth-curl.c:591 +#: ../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:606 ../libpq-oauth/oauth-curl.c:666 +#: ../libpq-oauth/oauth-curl.c:607 ../libpq-oauth/oauth-curl.c:667 #, c-format msgid "top-level element must be an object" msgstr "最上位要素はオブジェクトでなければなりません" -#: ../libpq-oauth/oauth-curl.c:647 +#: ../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:702 +#: ../libpq-oauth/oauth-curl.c:703 #, c-format msgid "internal error: scalar target found at nesting level %d" msgstr "内部エラー: ネストレベル%dにーターゲットがありました" -#: ../libpq-oauth/oauth-curl.c:712 +#: ../libpq-oauth/oauth-curl.c:713 #, c-format msgid "internal error: scalar field '%s' would be assigned twice" msgstr "内部エラー: フィールド '%s' に2回代入されます" -#: ../libpq-oauth/oauth-curl.c:734 +#: ../libpq-oauth/oauth-curl.c:735 #, c-format msgid "internal error: array member found at nesting level %d" msgstr "内部エラー: ネストレベル%dに配列の要素がありました" -#: ../libpq-oauth/oauth-curl.c:769 +#: ../libpq-oauth/oauth-curl.c:770 #, c-format msgid "no content type was provided" msgstr "Content-Typeヘッダーがありませんでした" -#: ../libpq-oauth/oauth-curl.c:808 +#: ../libpq-oauth/oauth-curl.c:809 #, c-format msgid "unexpected content type: \"%s\"" msgstr "想定しないContent-Typeヘッダーの値: \"%s\"" -#: ../libpq-oauth/oauth-curl.c:833 +#: ../libpq-oauth/oauth-curl.c:834 #, c-format msgid "response contains embedded NULLs" msgstr "応答の途中にnullが含まれています" -#: ../libpq-oauth/oauth-curl.c:843 +#: ../libpq-oauth/oauth-curl.c:844 #, c-format msgid "response is not valid UTF-8" msgstr "応答は有効なUTF-8ではありません" -#: ../libpq-oauth/oauth-curl.c:883 +#: ../libpq-oauth/oauth-curl.c:884 #, c-format msgid "field \"%s\" is missing" msgstr "フィールド\"%s\"が存在しません" -#: ../libpq-oauth/oauth-curl.c:1117 +#: ../libpq-oauth/oauth-curl.c:1118 #, c-format msgid "provider rejected the oauth_client_secret" msgstr "プロバイダがoauth_client_secretを拒否しました" -#: ../libpq-oauth/oauth-curl.c:1181 +#: ../libpq-oauth/oauth-curl.c:1182 #, c-format msgid "failed to create epoll set: %m" msgstr "epollセットの作成に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1188 +#: ../libpq-oauth/oauth-curl.c:1189 #, c-format msgid "failed to create timerfd: %m" msgstr "timerfd の作成に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1194 +#: ../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:1204 +#: ../libpq-oauth/oauth-curl.c:1205 #, c-format msgid "failed to create kqueue: %m" msgstr "kqueueの作成に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1217 +#: ../libpq-oauth/oauth-curl.c:1218 #, c-format msgid "failed to create timer kqueue: %m" msgstr "タイマーkqueueの作成に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1261 ../libpq-oauth/oauth-curl.c:1333 +#: ../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:1278 +#: ../libpq-oauth/oauth-curl.c:1279 #, c-format msgid "could not add to epoll set: %m" msgstr "epollセットに追加できませんでした: %m" -#: ../libpq-oauth/oauth-curl.c:1282 +#: ../libpq-oauth/oauth-curl.c:1283 #, c-format msgid "could not delete from epoll set: %m" msgstr "epollセットから削除できませんでした: %m" -#: ../libpq-oauth/oauth-curl.c:1286 +#: ../libpq-oauth/oauth-curl.c:1287 #, c-format msgid "could not update epoll set: %m" msgstr "epollセットの設定変更に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1340 +#: ../libpq-oauth/oauth-curl.c:1347 #, c-format msgid "could not modify kqueue: %m" msgstr "kqueueの設定変更に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1364 +#: ../libpq-oauth/oauth-curl.c:1371 #, c-format msgid "could not delete from kqueue: %m" msgstr "kqueueからの削除に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1367 +#: ../libpq-oauth/oauth-curl.c:1374 #, c-format msgid "could not add to kqueue: %m" msgstr "kqueueへの追加に失敗しました: %m" -#: ../libpq-oauth/oauth-curl.c:1419 +#: ../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:1449 +#: ../libpq-oauth/oauth-curl.c:1503 #, c-format msgid "deleting kqueue timer: %m" msgstr "kqueue タイマー削除中にエラー: %m" -#: ../libpq-oauth/oauth-curl.c:1456 +#: ../libpq-oauth/oauth-curl.c:1510 #, c-format msgid "removing kqueue timer from multiplexer: %m" msgstr "マルチプレクサからのkqueueタイマー削除中にエラー: %m" -#: ../libpq-oauth/oauth-curl.c:1467 +#: ../libpq-oauth/oauth-curl.c:1521 #, c-format msgid "setting kqueue timer to %ld: %m" msgstr "kqueueタイマーの%ldへの設定中にエラー: %m" -#: ../libpq-oauth/oauth-curl.c:1474 +#: ../libpq-oauth/oauth-curl.c:1528 #, c-format msgid "adding kqueue timer to multiplexer: %m" msgstr "マルチプレクサへのkqueueタイマー追加中にエラー: %m" -#: ../libpq-oauth/oauth-curl.c:1497 +#: ../libpq-oauth/oauth-curl.c:1553 #, c-format -msgid "getting timerfd value: %m" -msgstr "timerfdの値の取得中にエラー: %m" +msgid "checking timer expiration: %m" +msgstr "タイマー満了確認中: %m" -#: ../libpq-oauth/oauth-curl.c:1519 -#, c-format -msgid "checking kqueue for timeout: %m" -msgstr "kqueueのタイムアウトチェック中にエラー: %m" - -#: ../libpq-oauth/oauth-curl.c:1651 +#: ../libpq-oauth/oauth-curl.c:1715 #, c-format msgid "failed to create libcurl multi handle" msgstr "libcurl のマルチハンドルの作成に失敗しました" -#: ../libpq-oauth/oauth-curl.c:1671 +#: ../libpq-oauth/oauth-curl.c:1735 #, c-format msgid "failed to create libcurl handle" msgstr "libcurl ハンドルの作成に失敗しました" -#: ../libpq-oauth/oauth-curl.c:1755 ../libpq-oauth/oauth-curl.c:1796 -#: ../libpq-oauth/oauth-curl.c:2109 ../libpq-oauth/oauth-curl.c:2270 -#: ../libpq-oauth/oauth-curl.c:2331 ../libpq-oauth/oauth-curl.c:2420 -#: ../libpq-oauth/oauth-curl.c:2714 ../libpq-oauth/oauth-curl.c:2905 +#: ../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 #: 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:177 fe-connect.c:1011 fe-connect.c:1051 +#: 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:1315 fe-exec.c:3254 fe-exec.c:4293 fe-exec.c:4459 -#: fe-gssapi-common.c:109 fe-lobj.c:870 fe-protocol3.c:210 fe-protocol3.c:233 -#: fe-protocol3.c:256 fe-protocol3.c:273 fe-protocol3.c:294 fe-protocol3.c:368 -#: fe-protocol3.c:732 fe-protocol3.c:972 fe-protocol3.c:1553 -#: fe-protocol3.c:1862 fe-protocol3.c:2263 fe-secure-common.c:110 -#: fe-secure-gssapi.c:506 fe-secure-gssapi.c:696 fe-secure-openssl.c:405 -#: fe-secure-openssl.c:1131 +#: 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: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:1783 +#: ../libpq-oauth/oauth-curl.c:1847 #, c-format msgid "response is too large" msgstr "応答が大きすぎます" -#: ../libpq-oauth/oauth-curl.c:1825 +#: ../libpq-oauth/oauth-curl.c:1889 #, c-format msgid "failed to queue HTTP request: %s" msgstr "HTTPリクエストのキューイングに失敗: %s" -#: ../libpq-oauth/oauth-curl.c:1842 ../libpq-oauth/oauth-curl.c:1895 +#: ../libpq-oauth/oauth-curl.c:1906 ../libpq-oauth/oauth-curl.c:1959 #, c-format msgid "asynchronous HTTP request failed: %s" msgstr "非同期HTTPリクエストが失敗しました: %s" -#: ../libpq-oauth/oauth-curl.c:1947 +#: ../libpq-oauth/oauth-curl.c:2011 #, c-format msgid "no result was retrieved for the finished handle" msgstr "終了済みのハンドルから結果が得られませんでした" -#: ../libpq-oauth/oauth-curl.c:2080 ../libpq-oauth/oauth-curl.c:2386 -#: ../libpq-oauth/oauth-curl.c:2465 +#: ../libpq-oauth/oauth-curl.c:2144 ../libpq-oauth/oauth-curl.c:2450 +#: ../libpq-oauth/oauth-curl.c:2529 #, c-format msgid "unexpected response code %ld" msgstr "想定外のレスポンスコード %ld" -#: ../libpq-oauth/oauth-curl.c:2152 +#: ../libpq-oauth/oauth-curl.c:2216 #, c-format msgid "the issuer identifier (%s) does not match oauth_issuer (%s)" msgstr "issuer識別子(%s)がoauth_issuer (%s)と一致しません" -#: ../libpq-oauth/oauth-curl.c:2179 +#: ../libpq-oauth/oauth-curl.c:2243 #, c-format msgid "issuer \"%s\" does not provide a device authorization endpoint" msgstr "issuer\"%s\"はデバイス認証エンドポイントを提供していません" -#: ../libpq-oauth/oauth-curl.c:2205 +#: ../libpq-oauth/oauth-curl.c:2269 #, c-format msgid "device authorization endpoint \"%s\" must use HTTPS" msgstr "デバイス認証エンドポイント\"%s\"はHTTPSを使用しなければなりません" -#: ../libpq-oauth/oauth-curl.c:2214 +#: ../libpq-oauth/oauth-curl.c:2278 #, c-format msgid "token endpoint \"%s\" must use HTTPS" msgstr "トークン・エンドポイント \"%s\" はHTTPSを使用しなければなりません" -#: ../libpq-oauth/oauth-curl.c:2523 +#: ../libpq-oauth/oauth-curl.c:2587 #, c-format msgid "slow_down interval overflow" msgstr "slow_down間隔のオーバーフロー" @@ -300,27 +301,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:2559 +#: ../libpq-oauth/oauth-curl.c:2623 #, c-format msgid "Visit %s and enter the code: %s\n" msgstr "%sにアクセスしてコードを入力してください: %s\n" -#: ../libpq-oauth/oauth-curl.c:2564 +#: ../libpq-oauth/oauth-curl.c:2628 #, c-format msgid "device prompt failed" msgstr "デバイス認証の開始に失敗しました" -#: ../libpq-oauth/oauth-curl.c:2620 +#: ../libpq-oauth/oauth-curl.c:2684 #, c-format msgid "curl_global_init previously failed during OAuth setup" msgstr "curl_global_init は過去の OAuth セットアップ中に失敗しています" -#: ../libpq-oauth/oauth-curl.c:2639 +#: ../libpq-oauth/oauth-curl.c:2703 #, c-format msgid "curl_global_init failed during OAuth setup" msgstr "curl_global_init が OAuth セットアップ中に失敗しました" -#: ../libpq-oauth/oauth-curl.c:2660 +#: ../libpq-oauth/oauth-curl.c:2724 #, c-format msgid "" "libcurl is no longer thread-safe\n" @@ -649,12 +650,12 @@ msgstr "接続はオープンされていません" msgid "no cancellation key received" msgstr "キャンセルキーを受信していません" -#: fe-cancel.c:211 +#: fe-cancel.c:212 #, c-format msgid "cancel request is already being sent on this connection" msgstr "このセッションではすでにキャンセル要求を送出済みです" -#: fe-cancel.c:281 +#: fe-cancel.c:282 #, c-format msgid "unexpected response from server" msgstr "サーバーからの想定外の応答" @@ -681,7 +682,7 @@ 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:8254 +#: fe-connect.c:8248 #, c-format msgid "invalid %s value: \"%s\"" msgstr "%s の値が不正: \"%s\"" @@ -1155,41 +1156,41 @@ msgstr "パーセント符号化された値では値%%00は許されません: msgid "unexpected spaces found in \"%s\", use percent-encoded spaces (%%20) instead" msgstr "\"%s\"に予期しない空白文字があります、代わりにパーセントエンコードされた空白文字(%%20)を使用してください" -#: fe-connect.c:7632 +#: fe-connect.c:7626 msgid "connection pointer is NULL\n" msgstr "接続ポインタはNULLです\n" -#: fe-connect.c:7640 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3459 -#: fe-protocol3.c:987 fe-protocol3.c:1020 +#: fe-connect.c:7634 fe-exec.c:713 fe-exec.c:975 fe-exec.c:3470 +#: fe-protocol3.c:1005 fe-protocol3.c:1038 msgid "out of memory\n" msgstr "メモリ不足\n" -#: fe-connect.c:7942 +#: fe-connect.c:7936 #, c-format msgid "WARNING: password file \"%s\" is not a plain file\n" msgstr "WARNING: パスワードファイル\"%s\"がテキストファイルではありません\n" -#: fe-connect.c:7952 +#: fe-connect.c:7946 #, 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:8056 +#: fe-connect.c:8050 #, c-format msgid "password retrieved from file \"%s\"" msgstr "パスワードはファイル\"%s\"から取り出しました" -#: fe-connect.c:8222 +#: fe-connect.c:8216 #, c-format msgid "invalid integer value \"%s\" for connection option \"%s\"" msgstr "接続オプション\"%2$s\"に対する不正な整数値\"%1$s\"" -#: fe-exec.c:469 fe-exec.c:3533 +#: fe-exec.c:469 fe-exec.c:3544 #, c-format msgid "row number %d is out of range 0..%d" msgstr "行番号%dは0..%dの範囲を超えています" -#: fe-exec.c:531 fe-protocol3.c:2068 +#: fe-exec.c:531 fe-protocol3.c:2126 #, c-format msgid "%s" msgstr "%s" @@ -1216,134 +1217,134 @@ msgstr "PGresultはINT_MAX個以上のタプルを扱えません" msgid "size_t overflow" msgstr "size_t オーバーフロー" -#: fe-exec.c:1438 fe-exec.c:1507 fe-exec.c:1553 +#: fe-exec.c:1449 fe-exec.c:1518 fe-exec.c:1564 #, c-format msgid "command string is a null pointer" msgstr "コマンド文字列がヌルポインタです" -#: fe-exec.c:1444 fe-exec.c:3003 +#: fe-exec.c:1455 fe-exec.c:3014 #, c-format msgid "%s not allowed in pipeline mode" msgstr "%sはパイプラインモードでは使用できません" -#: fe-exec.c:1512 fe-exec.c:1558 fe-exec.c:1652 +#: fe-exec.c:1523 fe-exec.c:1569 fe-exec.c:1663 #, c-format msgid "number of parameters must be between 0 and %d" msgstr "パラメータ数は0から%dまでの間でなければなりません" -#: fe-exec.c:1548 fe-exec.c:1647 +#: fe-exec.c:1559 fe-exec.c:1658 #, c-format msgid "statement name is a null pointer" msgstr "文の名前がヌルポインタです" -#: fe-exec.c:1689 fe-exec.c:3379 +#: fe-exec.c:1700 fe-exec.c:3390 #, c-format msgid "no connection to the server" msgstr "サーバーへの接続がありません" -#: fe-exec.c:1697 fe-exec.c:3387 +#: fe-exec.c:1708 fe-exec.c:3398 #, c-format msgid "another command is already in progress" msgstr "他のコマンドがすでに処理中です" -#: fe-exec.c:1727 +#: fe-exec.c:1738 #, c-format msgid "cannot queue commands during COPY" msgstr "COPY中はコマンドのキューイングはできません" -#: fe-exec.c:1846 +#: fe-exec.c:1857 #, c-format msgid "length must be given for binary parameter" msgstr "バイナリパラメータには長さを指定する必要があります" -#: fe-exec.c:2205 +#: fe-exec.c:2216 #, c-format msgid "unexpected asyncStatus: %d" msgstr "想定外のasyncStatus: %d" -#: fe-exec.c:2361 +#: fe-exec.c:2372 #, c-format msgid "synchronous command execution functions are not allowed in pipeline mode" msgstr "同期的にコマンドを実行する関数はパイプラインモード中は実行できません" -#: fe-exec.c:2378 +#: fe-exec.c:2389 msgid "COPY terminated by new PQexec" msgstr "新たなPQexec\"によりCOPYが終了しました" -#: fe-exec.c:2394 +#: fe-exec.c:2405 #, c-format msgid "PQexec not allowed during COPY BOTH" msgstr "COPY BOTH 実行中の PQexec は許可されていません" -#: fe-exec.c:2630 +#: fe-exec.c:2641 #, c-format msgid "unrecognized message type \"%c\"" msgstr "認識できないメッセージタイプ\"%c\"" -#: fe-exec.c:2702 fe-exec.c:2756 fe-exec.c:2824 fe-protocol3.c:1999 +#: fe-exec.c:2713 fe-exec.c:2767 fe-exec.c:2835 fe-protocol3.c:2057 #, c-format msgid "no COPY in progress" msgstr "実行中のCOPYはありません" -#: fe-exec.c:3010 +#: fe-exec.c:3021 #, c-format msgid "connection in wrong state" msgstr "接続状態が異常です" -#: fe-exec.c:3053 +#: fe-exec.c:3064 #, c-format msgid "cannot enter pipeline mode, connection not idle" msgstr "パイプラインモードに入れません、接続がアイドル状態ではありません" -#: fe-exec.c:3089 fe-exec.c:3110 +#: fe-exec.c:3100 fe-exec.c:3121 #, c-format msgid "cannot exit pipeline mode with uncollected results" msgstr "未回収の結果が残っている状態でパイプラインモードを抜けることはできません" -#: fe-exec.c:3093 +#: fe-exec.c:3104 #, c-format msgid "cannot exit pipeline mode while busy" msgstr "ビジー状態でパイプラインモードを抜けることはできません" -#: fe-exec.c:3104 +#: fe-exec.c:3115 #, c-format msgid "cannot exit pipeline mode while in COPY" msgstr "COPY実行中にパイプラインモードを抜けることはできません" -#: fe-exec.c:3303 +#: fe-exec.c:3314 #, c-format msgid "cannot send pipeline when not in pipeline mode" msgstr "パイプラインモード外でパイプライン送出はできません" -#: fe-exec.c:3422 +#: fe-exec.c:3433 msgid "invalid ExecStatusType code" msgstr "ExecStatusTypeコードが不正です" -#: fe-exec.c:3449 +#: fe-exec.c:3460 msgid "PGresult is not an error result\n" msgstr "PGresutがエラー結果ではありません\n" -#: fe-exec.c:3517 fe-exec.c:3540 +#: fe-exec.c:3528 fe-exec.c:3551 #, c-format msgid "column number %d is out of range 0..%d" msgstr "列番号%dは0..%dの範囲を超えています" -#: fe-exec.c:3555 +#: fe-exec.c:3566 #, c-format msgid "parameter number %d is out of range 0..%d" msgstr "パラメータ%dは0..%dの範囲を超えています" -#: fe-exec.c:3866 +#: fe-exec.c:3877 #, c-format msgid "could not interpret result from server: %s" msgstr "サーバーからの結果を解釈できませんでした: %s" -#: fe-exec.c:4141 fe-exec.c:4255 +#: fe-exec.c:4152 fe-exec.c:4266 #, c-format msgid "incomplete multibyte character" msgstr "不完全なマルチバイト文字" -#: fe-exec.c:4143 fe-exec.c:4274 +#: fe-exec.c:4154 fe-exec.c:4285 #, c-format msgid "invalid multibyte character" msgstr "不正なマルチバイト文字" @@ -1435,181 +1436,196 @@ msgstr "不正なソケットです" msgid "%s() failed: %s" msgstr "%s() が失敗しました: %s" -#: fe-protocol3.c:188 +#: fe-protocol3.c:189 #, c-format msgid "message type 0x%02x arrived from server while idle" msgstr "待機中にサーバーからメッセージ種類0x%02xが届きました" -#: fe-protocol3.c:401 +#: fe-protocol3.c:402 #, c-format msgid "server sent data (\"D\" message) without prior row description (\"T\" message)" msgstr "サーバーが先行の行記述(\"T\"メッセージ)なしでデータ(\"D\"メッセージ)を送信しました" -#: fe-protocol3.c:443 +#: fe-protocol3.c:444 #, c-format msgid "unexpected response from server; first received character was \"%c\"" msgstr "サーバーから想定外の応答がありました。受け付けた先頭文字は\"%c\"です" -#: fe-protocol3.c:462 +#: fe-protocol3.c:468 #, c-format msgid "message contents do not agree with length in message type \"%c\"" msgstr "メッセージの内容がメッセージタイプ\"%c\"での長さと合っていません" -#: fe-protocol3.c:480 +#: fe-protocol3.c:503 #, c-format msgid "lost synchronization with server: got message type \"%c\", length %d" msgstr "サーバーとの同期が失われました。受信したメッセージタイプは\"%c\"、長さは%d" -#: fe-protocol3.c:532 fe-protocol3.c:572 +#: fe-protocol3.c:550 fe-protocol3.c:590 msgid "insufficient data in \"T\" message" msgstr "\"T\"メッセージ内のデータが不十分です" -#: fe-protocol3.c:643 fe-protocol3.c:849 +#: fe-protocol3.c:661 fe-protocol3.c:867 msgid "out of memory for query result" msgstr "問い合わせ結果用のメモリが不足しています" -#: fe-protocol3.c:712 +#: fe-protocol3.c:730 msgid "insufficient data in \"t\" message" msgstr "\"t\"メッセージ内のデータが足りません" -#: fe-protocol3.c:771 fe-protocol3.c:803 fe-protocol3.c:821 +#: fe-protocol3.c:789 fe-protocol3.c:821 fe-protocol3.c:839 msgid "insufficient data in \"D\" message" msgstr "\"D\"\"メッセージ内のデータが不十分です" -#: fe-protocol3.c:777 +#: fe-protocol3.c:795 msgid "unexpected field count in \"D\" message" msgstr "\"D\"メッセージ内のフィールド数が想定外です。" -#: fe-protocol3.c:1033 +#: fe-protocol3.c:1051 msgid "no error message available\n" msgstr "エラーメッセージがありません\n" #. translator: %s represents a digit string -#: fe-protocol3.c:1081 fe-protocol3.c:1100 +#: fe-protocol3.c:1099 fe-protocol3.c:1118 #, c-format msgid " at character %s" msgstr "(文字位置: %s)" -#: fe-protocol3.c:1113 +#: fe-protocol3.c:1131 #, c-format msgid "DETAIL: %s\n" msgstr "DETAIL: %s\n" -#: fe-protocol3.c:1116 +#: fe-protocol3.c:1134 #, c-format msgid "HINT: %s\n" msgstr "HINT: %s\n" -#: fe-protocol3.c:1119 +#: fe-protocol3.c:1137 #, c-format msgid "QUERY: %s\n" msgstr "QUERY: %s\n" -#: fe-protocol3.c:1126 +#: fe-protocol3.c:1144 #, c-format msgid "CONTEXT: %s\n" msgstr "CONTEXT: %s\n" -#: fe-protocol3.c:1135 +#: fe-protocol3.c:1153 #, c-format msgid "SCHEMA NAME: %s\n" msgstr "SCHEMA NAME: %s\n" -#: fe-protocol3.c:1139 +#: fe-protocol3.c:1157 #, c-format msgid "TABLE NAME: %s\n" msgstr "TABLE NAME: %s\n" -#: fe-protocol3.c:1143 +#: fe-protocol3.c:1161 #, c-format msgid "COLUMN NAME: %s\n" msgstr "COLUMN NAME: %s\n" -#: fe-protocol3.c:1147 +#: fe-protocol3.c:1165 #, c-format msgid "DATATYPE NAME: %s\n" msgstr "DATATYPE NAME: %s\n" -#: fe-protocol3.c:1151 +#: fe-protocol3.c:1169 #, c-format msgid "CONSTRAINT NAME: %s\n" msgstr "CONSTRAINT NAME: %s\n" -#: fe-protocol3.c:1163 +#: fe-protocol3.c:1181 msgid "LOCATION: " msgstr "LOCATION: " -#: fe-protocol3.c:1165 +#: fe-protocol3.c:1183 #, c-format msgid "%s, " msgstr "%s, " -#: fe-protocol3.c:1167 +#: fe-protocol3.c:1185 #, c-format msgid "%s:%s" msgstr "%s:%s" -#: fe-protocol3.c:1362 +#: fe-protocol3.c:1380 #, c-format msgid "LINE %d: " msgstr "行 %d: " -#: fe-protocol3.c:1424 +#: fe-protocol3.c:1442 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to a higher-numbered version" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーがより大きなバージョン番号へのダウングレードを要求しました" -#: fe-protocol3.c:1430 +#: fe-protocol3.c:1448 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to pre-3.0 protocol version" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが3.0より前のプロトコルバージョンへのダウングレードを要求しました" -#: fe-protocol3.c:1437 +#: fe-protocol3.c:1455 #, c-format msgid "received invalid protocol negotiation message: server requested downgrade to non-existent 3.1 protocol version" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが、存在しない 3.1 プロトコルバージョンへのダウングレードを要求しました" -#: fe-protocol3.c:1443 +#: fe-protocol3.c:1461 #, c-format msgid "received invalid protocol negotiation message: server reported negative number of unsupported parameters" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーがサポート外パラメータの数として負数を通知しました" -#: fe-protocol3.c:1449 +#: fe-protocol3.c:1467 #, c-format msgid "received invalid protocol negotiation message: server negotiated but asks for no changes" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーがネゴシエーションを行いましたが、変更要求がありませんでした" -#: fe-protocol3.c:1455 +#: fe-protocol3.c:1473 #, 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:1480 +#: fe-protocol3.c:1498 #, c-format msgid "received invalid protocol negotiation message: server reported unsupported parameter name without a \"%s\" prefix (\"%s\")" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが\"%s\"プレフィクスのないサポートされていないパラメータ名(\"%s\")を報告しました" -#: fe-protocol3.c:1483 +#: fe-protocol3.c:1501 #, c-format msgid "received invalid protocol negotiation message: server reported an unsupported parameter that was not requested (\"%s\")" msgstr "不正なプロトコルネゴシエーションメッセージを受信: サーバーが要求されていないサポート外のパラメータ(\"%s\")を通知しました" -#: fe-protocol3.c:1490 +#: fe-protocol3.c:1508 #, c-format msgid "received invalid protocol negotiation message: message too short" msgstr "不正なプロトコルネゴシエーションメッセージを受信: メッセージが短すぎます" -#: fe-protocol3.c:1894 +#: fe-protocol3.c:1574 +#, 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 +#, 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 +#, 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 #, c-format msgid "PQgetline: not doing text COPY OUT" msgstr "PQgetline: テキストのCOPY OUTを行っていません" -#: fe-protocol3.c:2269 +#: fe-protocol3.c:2327 #, c-format msgid "protocol error: no function result" msgstr "プロトコルエラー: 関数の結果がありません" -#: fe-protocol3.c:2281 +#: fe-protocol3.c:2339 #, c-format msgid "protocol error: id=0x%x" msgstr "プロトコルエラー: id=0x%x" @@ -1659,12 +1675,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)" @@ -1678,25 +1694,25 @@ 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サイズチェックエラー" -#: fe-secure-openssl.c:185 fe-secure-openssl.c:291 fe-secure-openssl.c:1378 +#: 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:191 fe-secure-openssl.c:297 fe-secure-openssl.c:1381 +#: 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:201 fe-secure-openssl.c:307 fe-secure-openssl.c:1389 +#: fe-secure-openssl.c:201 fe-secure-openssl.c:307 fe-secure-openssl.c:1393 #, c-format msgid "SSL error: %s" msgstr "SSLエラー: %s" @@ -1706,7 +1722,7 @@ msgstr "SSLエラー: %s" msgid "SSL connection has been closed unexpectedly" msgstr "SSL接続が意図せずにクローズされました" -#: fe-secure-openssl.c:220 fe-secure-openssl.c:326 fe-secure-openssl.c:1436 +#: 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" @@ -1736,52 +1752,52 @@ msgstr "SSL証明書に名前のエントリがありません" msgid "SSL certificate's address entry is missing" msgstr "SSL証明書のアドレスのエントリがありません" -#: fe-secure-openssl.c:714 +#: fe-secure-openssl.c:715 #, c-format -msgid "could not open SSL key logging file \"%s\": %s" -msgstr "SSLキー記録ファイル\"%s\"をオープンできませんでした: %s" +msgid "WARNING: could not open SSL key logging file \"%s\": %m\n" +msgstr "警告: SSLキー記録ファイル\"%s\"をオープンできませんでした: %m\n" -#: fe-secure-openssl.c:722 +#: fe-secure-openssl.c:723 #, c-format -msgid "could not write to SSL key logging file \"%s\": %s" -msgstr "SSLキー記録ファイル\"%s\"に書き込めませんでした: %s" +msgid "WARNING: could not write to SSL key logging file \"%s\": %m\n" +msgstr "警告: SSLキー記録ファイル\"%s\"に書き込めませんでした: %m\n" -#: fe-secure-openssl.c:775 +#: fe-secure-openssl.c:776 #, c-format msgid "could not create SSL context: %s" msgstr "SSLコンテキストを作成できませんでした: %s" -#: fe-secure-openssl.c:817 +#: fe-secure-openssl.c:818 #, c-format msgid "invalid value \"%s\" for minimum SSL protocol version" msgstr "SSLプロトコル最小バージョンに対する不正な値\"%s\"" -#: fe-secure-openssl.c:827 +#: fe-secure-openssl.c:828 #, c-format msgid "could not set minimum SSL protocol version: %s" msgstr "SSLプロトコル最小バージョンを設定できませんでした: %s" -#: fe-secure-openssl.c:843 +#: fe-secure-openssl.c:844 #, c-format msgid "invalid value \"%s\" for maximum SSL protocol version" msgstr "SSLプロトコル最大バージョンに対する不正な値\"%s\"" -#: fe-secure-openssl.c:853 +#: fe-secure-openssl.c:854 #, c-format msgid "could not set maximum SSL protocol version: %s" msgstr "SSLプロトコル最大バージョンを設定できませんでした: %s" -#: fe-secure-openssl.c:891 +#: fe-secure-openssl.c:892 #, c-format msgid "could not load system root certificate paths: %s" msgstr "システムルート証明書パスをロードできませんでした: %s" -#: fe-secure-openssl.c:908 +#: fe-secure-openssl.c:909 #, c-format msgid "could not read root certificate file \"%s\": %s" msgstr "ルート証明書ファイル\"%s\"を読み取れませんでした: %s" -#: fe-secure-openssl.c:960 +#: fe-secure-openssl.c:961 #, c-format msgid "" "could not get home directory to locate root certificate file\n" @@ -1790,7 +1806,7 @@ msgstr "" "ルート証明書ファイルを特定するためのホームディレクトリが取得できませんでした\n" "ファイルを用意する、 sslrootcert=systemでシステムの信頼済みルート証明書を使用する、または sslmode を変更してサーバー証明書の検証を無効にしてください。" -#: fe-secure-openssl.c:963 +#: fe-secure-openssl.c:964 #, c-format msgid "" "root certificate file \"%s\" does not exist\n" @@ -1799,127 +1815,127 @@ msgstr "" "ルート証明書ファイル\"%s\"が存在しません\n" "ファイルを用意する、sslrootcert=systemでシステムの信頼済みルート証明書を使用する、またはsslmodeを変更してサーバー証明書の検証を無効にしてください。" -#: fe-secure-openssl.c:998 +#: fe-secure-openssl.c:999 #, c-format msgid "could not open certificate file \"%s\": %s" msgstr "証明書ファイル\"%s\"をオープンできませんでした: %s" -#: fe-secure-openssl.c:1016 +#: fe-secure-openssl.c:1017 #, c-format msgid "could not read certificate file \"%s\": %s" msgstr "証明書ファイル\"%s\"を読み込めませんでした: %s" -#: fe-secure-openssl.c:1040 +#: fe-secure-openssl.c:1041 #, c-format msgid "could not establish SSL connection: %s" msgstr "SSL接続を確立できませんでした: %s" -#: fe-secure-openssl.c:1053 +#: fe-secure-openssl.c:1058 #, c-format msgid "WARNING: sslkeylogfile support requires OpenSSL\n" msgstr "警告: sslkeylogfile をサポートするにはOpenSSLが必要です\n" -#: fe-secure-openssl.c:1055 +#: 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:1086 +#: 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:1103 +#: fe-secure-openssl.c:1107 #, c-format msgid "could not set SSL ALPN extension: %s" msgstr "SSL ALPN拡張を設定できませんでした: %s" -#: fe-secure-openssl.c:1146 +#: fe-secure-openssl.c:1150 #, c-format msgid "could not load SSL engine \"%s\": %s" msgstr "SSLエンジン\"%s\"を読み込みできませんでした: %s" -#: fe-secure-openssl.c:1157 +#: fe-secure-openssl.c:1161 #, c-format msgid "could not initialize SSL engine \"%s\": %s" msgstr "SSLエンジン\"%s\"を初期化できませんでした: %s" -#: fe-secure-openssl.c:1172 +#: 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:1185 +#: 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:1222 +#: fe-secure-openssl.c:1226 #, c-format msgid "certificate present, but not private key file \"%s\"" msgstr "証明書はありますが、秘密鍵ファイル\"%s\"はありません" -#: fe-secure-openssl.c:1225 +#: fe-secure-openssl.c:1229 #, c-format msgid "could not stat private key file \"%s\": %m" msgstr "秘密鍵ファイル\"%s\"をstatできませんでした: %m" -#: fe-secure-openssl.c:1233 +#: fe-secure-openssl.c:1237 #, c-format msgid "private key file \"%s\" is not a regular file" msgstr "秘密鍵ファイル\"%s\"は通常のファイルではありません" -#: fe-secure-openssl.c:1266 +#: 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) かそれよりも狭い必要があります、rootが所有している場合は u=rw,g=r (0640) かそれよりも狭い必要があります" -#: fe-secure-openssl.c:1290 +#: fe-secure-openssl.c:1294 #, c-format msgid "could not load private key file \"%s\": %s" msgstr "秘密鍵ファイル\"%s\"をロードできませんでした: %s" -#: fe-secure-openssl.c:1306 +#: fe-secure-openssl.c:1310 #, c-format msgid "certificate does not match private key file \"%s\": %s" msgstr "証明書と秘密鍵ファイル\"%s\"が一致しません: %s" -#: fe-secure-openssl.c:1375 +#: fe-secure-openssl.c:1379 #, c-format msgid "SSL error: certificate verify failed: %s" msgstr "SSLエラー: 証明書の検証に失敗しました: %s" -#: fe-secure-openssl.c:1420 +#: 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:1452 +#: 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:1464 +#: fe-secure-openssl.c:1468 #, c-format msgid "SSL connection was established with unexpected ALPN protocol" msgstr "SSL接続が想定外のALPNプロトコルで確立されました" -#: fe-secure-openssl.c:1481 +#: fe-secure-openssl.c:1485 #, c-format msgid "certificate could not be obtained: %s" msgstr "証明書を取得できませんでした: %s" -#: fe-secure-openssl.c:1560 +#: fe-secure-openssl.c:1564 #, c-format msgid "no SSL error reported" msgstr "SSLエラーはありませんでした" -#: fe-secure-openssl.c:1603 +#: fe-secure-openssl.c:1607 #, c-format msgid "SSL error code %lu" msgstr "SSLエラーコード: %lu" -#: fe-secure-openssl.c:1905 +#: fe-secure-openssl.c:1909 #, c-format msgid "WARNING: sslpassword truncated\n" msgstr "警告: sslpasswordが切り詰められました\n" @@ -1938,3 +1954,6 @@ msgstr "サーバーにデータを送信できませんでした: %s" #, c-format msgid "unrecognized socket error: 0x%08X/%d" msgstr "不明なソケットエラー 0x%08X/%d" + +#~ msgid "getting timerfd value: %m" +#~ msgstr "timerfdの値の取得中にエラー: %m" diff --git a/src/interfaces/libpq/po/ru.po b/src/interfaces/libpq/po/ru.po index abfd9f7c78d6b..f24c3ba740384 100644 --- a/src/interfaces/libpq/po/ru.po +++ b/src/interfaces/libpq/po/ru.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: libpq (PostgreSQL current)\n" "Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" -"POT-Creation-Date: 2025-08-30 15:59+0300\n" +"POT-Creation-Date: 2025-11-09 06:28+0200\n" "PO-Revision-Date: 2025-09-03 08:20+0300\n" "Last-Translator: Alexander Lakhin \n" "Language-Team: Russian \n" @@ -244,7 +244,7 @@ msgstr "не удалось создать указатель libcurl" #: 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-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" @@ -1809,12 +1809,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)" @@ -1828,11 +1828,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" diff --git a/src/pl/plperl/po/es.po b/src/pl/plperl/po/es.po index 5a1b862e4e3b4..b547051a17cbd 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-09-20 09:39+0000\n" +"POT-Creation-Date: 2025-11-08 00: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/es.po b/src/pl/plpgsql/src/po/es.po index 7079c6a1b0e3a..bf986f7642d47 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-09-20 09:39+0000\n" +"POT-Creation-Date: 2025-11-08 00:09+0000\n" "PO-Revision-Date: 2024-11-16 14:24+0100\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -862,7 +862,3 @@ msgstr "%s al final de la entrada" #, c-format msgid "%s at or near \"%s\"" msgstr "%s en o cerca de «%s»" - -#, c-format -#~ msgid "could not determine actual argument type for polymorphic function \"%s\"" -#~ msgstr "no se pudo determinar el verdadero tipo de argumento para la función polimórfica «%s»" diff --git a/src/pl/plpython/po/es.po b/src/pl/plpython/po/es.po index 30f207fa726da..08b01d6909ef5 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-09-20 09:38+0000\n" +"POT-Creation-Date: 2025-11-08 00: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/tcl/po/es.po b/src/pl/tcl/po/es.po index 6553c9175d667..ef58502550676 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-09-20 09:38+0000\n" +"POT-Creation-Date: 2025-11-08 00:08+0000\n" "PO-Revision-Date: 2025-09-21 11:42+0200\n" "Last-Translator: Carlos Chapi \n" "Language-Team: PgSQL-es-Ayuda \n" @@ -76,9 +76,6 @@ msgstr "%s" #: pltcl.c:1405 #, c-format -#| msgid "" -#| "%s\n" -#| "in PL/Tcl function \"%s\"" msgid "" "%s\n" "in PL/Tcl function %s" From 7eb8fcad860e9a0548191dab7a87a5bead5f8e91 Mon Sep 17 00:00:00 2001 From: Jacob Champion Date: Mon, 10 Nov 2025 06:03:01 -0800 Subject: [PATCH 390/457] libpq: Prevent some overflows of int/size_t MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Several functions could overflow their size calculations, when presented with very large inputs from remote and/or untrusted locations, and then allocate buffers that were too small to hold the intended contents. Switch from int to size_t where appropriate, and check for overflow conditions when the inputs could have plausibly originated outside of the libpq trust boundary. (Overflows from within the trust boundary are still possible, but these will be fixed separately.) A version of add_size() is ported from the backend to assist with code that performs more complicated concatenation. Reported-by: Aleksey Solovev (Positive Technologies) Reviewed-by: Noah Misch Reviewed-by: Álvaro Herrera Security: CVE-2025-12818 Backpatch-through: 13 --- src/interfaces/libpq/fe-connect.c | 17 ++++- src/interfaces/libpq/fe-exec.c | 101 +++++++++++++++++++++++----- src/interfaces/libpq/fe-print.c | 61 +++++++++++++++-- src/interfaces/libpq/fe-protocol3.c | 67 +++++++++++++++--- src/interfaces/libpq/libpq-int.h | 11 ++- 5 files changed, 224 insertions(+), 33 deletions(-) diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index d9e3da0495851..e7770da3a58ef 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -18,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -1135,7 +1136,7 @@ parse_comma_separated_list(char **startptr, bool *more) char *p; char *s = *startptr; char *e; - int len; + size_t len; /* * Search for the end of the current element; a comma or end-of-string @@ -5744,7 +5745,21 @@ ldapServiceLookup(const char *purl, PQconninfoOption *options, /* concatenate values into a single string with newline terminators */ size = 1; /* for the trailing null */ for (i = 0; values[i] != NULL; i++) + { + if (values[i]->bv_len >= INT_MAX || + size > (INT_MAX - (values[i]->bv_len + 1))) + { + libpq_append_error(errorMessage, + "connection info string size exceeds the maximum allowed (%d)", + INT_MAX); + ldap_value_free_len(values); + ldap_unbind(ld); + return 3; + } + size += values[i]->bv_len + 1; + } + if ((result = malloc(size)) == NULL) { libpq_append_error(errorMessage, "out of memory"); diff --git a/src/interfaces/libpq/fe-exec.c b/src/interfaces/libpq/fe-exec.c index 0b1e37ec30bbc..dcc8a447d66f9 100644 --- a/src/interfaces/libpq/fe-exec.c +++ b/src/interfaces/libpq/fe-exec.c @@ -511,7 +511,7 @@ PQsetvalue(PGresult *res, int tup_num, int field_num, char *value, int len) } else { - attval->value = (char *) pqResultAlloc(res, len + 1, true); + attval->value = (char *) pqResultAlloc(res, (size_t) len + 1, true); if (!attval->value) goto fail; attval->len = len; @@ -603,8 +603,13 @@ pqResultAlloc(PGresult *res, size_t nBytes, bool isBinary) */ if (nBytes >= PGRESULT_SEP_ALLOC_THRESHOLD) { - size_t alloc_size = nBytes + PGRESULT_BLOCK_OVERHEAD; + size_t alloc_size; + /* Don't wrap around with overly large requests. */ + if (nBytes > SIZE_MAX - PGRESULT_BLOCK_OVERHEAD) + return NULL; + + alloc_size = nBytes + PGRESULT_BLOCK_OVERHEAD; block = (PGresult_data *) malloc(alloc_size); if (!block) return NULL; @@ -1274,7 +1279,7 @@ pqRowProcessor(PGconn *conn, const char **errmsgp) bool isbinary = (res->attDescs[i].format != 0); char *val; - val = (char *) pqResultAlloc(res, clen + 1, isbinary); + val = (char *) pqResultAlloc(res, (size_t) clen + 1, isbinary); if (val == NULL) return 0; @@ -4215,6 +4220,27 @@ PQescapeString(char *to, const char *from, size_t length) } +/* + * Frontend version of the backend's add_size(), intended to be API-compatible + * with the pg_add_*_overflow() helpers. Stores the result into *dst on success. + * Returns true instead if the addition overflows. + * + * TODO: move to common/int.h + */ +static bool +add_size_overflow(size_t s1, size_t s2, size_t *dst) +{ + size_t result; + + result = s1 + s2; + if (result < s1 || result < s2) + return true; + + *dst = result; + return false; +} + + /* * Escape arbitrary strings. If as_ident is true, we escape the result * as an identifier; if false, as a literal. The result is returned in @@ -4227,8 +4253,8 @@ PQescapeInternal(PGconn *conn, const char *str, size_t len, bool as_ident) const char *s; char *result; char *rp; - int num_quotes = 0; /* single or double, depending on as_ident */ - int num_backslashes = 0; + size_t num_quotes = 0; /* single or double, depending on as_ident */ + size_t num_backslashes = 0; size_t input_len = strnlen(str, len); size_t result_size; char quote_char = as_ident ? '"' : '\''; @@ -4294,10 +4320,21 @@ PQescapeInternal(PGconn *conn, const char *str, size_t len, bool as_ident) } } - /* Allocate output buffer. */ - result_size = input_len + num_quotes + 3; /* two quotes, plus a NUL */ + /* + * Allocate output buffer. Protect against overflow, in case the caller + * has allocated a large fraction of the available size_t. + */ + if (add_size_overflow(input_len, num_quotes, &result_size) || + add_size_overflow(result_size, 3, &result_size)) /* two quotes plus a NUL */ + goto overflow; + if (!as_ident && num_backslashes > 0) - result_size += num_backslashes + 2; + { + if (add_size_overflow(result_size, num_backslashes, &result_size) || + add_size_overflow(result_size, 2, &result_size)) /* for " E" prefix */ + goto overflow; + } + result = rp = (char *) malloc(result_size); if (rp == NULL) { @@ -4370,6 +4407,12 @@ PQescapeInternal(PGconn *conn, const char *str, size_t len, bool as_ident) *rp = '\0'; return result; + +overflow: + libpq_append_conn_error(conn, + "escaped string size exceeds the maximum allowed (%zu)", + SIZE_MAX); + return NULL; } char * @@ -4435,16 +4478,25 @@ PQescapeByteaInternal(PGconn *conn, unsigned char *result; size_t i; size_t len; - size_t bslash_len = (std_strings ? 1 : 2); + const size_t bslash_len = (std_strings ? 1 : 2); /* - * empty string has 1 char ('\0') + * Calculate the escaped length, watching for overflow as we do with + * PQescapeInternal(). The following code relies on a small constant + * bslash_len so that small additions and multiplications don't need their + * own overflow checks. + * + * Start with the empty string, which has 1 char ('\0'). */ len = 1; if (use_hex) { - len += bslash_len + 1 + 2 * from_length; + /* We prepend "\x" and double each input character. */ + if (add_size_overflow(len, bslash_len + 1, &len) || + add_size_overflow(len, from_length, &len) || + add_size_overflow(len, from_length, &len)) + goto overflow; } else { @@ -4452,13 +4504,25 @@ PQescapeByteaInternal(PGconn *conn, for (i = from_length; i > 0; i--, vp++) { if (*vp < 0x20 || *vp > 0x7e) - len += bslash_len + 3; + { + if (add_size_overflow(len, bslash_len + 3, &len)) /* octal "\ooo" */ + goto overflow; + } else if (*vp == '\'') - len += 2; + { + if (add_size_overflow(len, 2, &len)) /* double each quote */ + goto overflow; + } else if (*vp == '\\') - len += bslash_len + bslash_len; + { + if (add_size_overflow(len, bslash_len * 2, &len)) /* double each backslash */ + goto overflow; + } else - len++; + { + if (add_size_overflow(len, 1, &len)) + goto overflow; + } } } @@ -4519,6 +4583,13 @@ PQescapeByteaInternal(PGconn *conn, *rp = '\0'; return result; + +overflow: + if (conn) + libpq_append_conn_error(conn, + "escaped bytea size exceeds the maximum allowed (%zu)", + SIZE_MAX); + return NULL; } unsigned char * diff --git a/src/interfaces/libpq/fe-print.c b/src/interfaces/libpq/fe-print.c index 6a4de16fe4e9e..cc667c9bac971 100644 --- a/src/interfaces/libpq/fe-print.c +++ b/src/interfaces/libpq/fe-print.c @@ -104,6 +104,16 @@ PQprint(FILE *fout, const PGresult *res, const PQprintOpt *po) } screen_size; #endif + /* + * Quick sanity check on po->fieldSep, since we make heavy use of int + * math throughout. + */ + if (fs_len < strlen(po->fieldSep)) + { + fprintf(stderr, libpq_gettext("overlong field separator\n")); + goto exit; + } + nTups = PQntuples(res); fieldNames = (const char **) calloc(nFields, sizeof(char *)); fieldNotNum = (unsigned char *) calloc(nFields, 1); @@ -391,7 +401,7 @@ do_field(const PQprintOpt *po, const PGresult *res, { if (plen > fieldMax[j]) fieldMax[j] = plen; - if (!(fields[i * nFields + j] = (char *) malloc(plen + 1))) + if (!(fields[i * nFields + j] = (char *) malloc((size_t) plen + 1))) { fprintf(stderr, libpq_gettext("out of memory\n")); return false; @@ -441,6 +451,27 @@ do_field(const PQprintOpt *po, const PGresult *res, } +/* + * Frontend version of the backend's add_size(), intended to be API-compatible + * with the pg_add_*_overflow() helpers. Stores the result into *dst on success. + * Returns true instead if the addition overflows. + * + * TODO: move to common/int.h + */ +static bool +add_size_overflow(size_t s1, size_t s2, size_t *dst) +{ + size_t result; + + result = s1 + s2; + if (result < s1 || result < s2) + return true; + + *dst = result; + return false; +} + + static char * do_header(FILE *fout, const PQprintOpt *po, const int nFields, int *fieldMax, const char **fieldNames, unsigned char *fieldNotNum, @@ -453,15 +484,31 @@ do_header(FILE *fout, const PQprintOpt *po, const int nFields, int *fieldMax, fputs("", fout); else { - int tot = 0; + size_t tot = 0; int n = 0; char *p = NULL; + /* Calculate the border size, checking for overflow. */ for (; n < nFields; n++) - tot += fieldMax[n] + fs_len + (po->standard ? 2 : 0); + { + /* Field plus separator, plus 2 extra '-' in standard format. */ + if (add_size_overflow(tot, fieldMax[n], &tot) || + add_size_overflow(tot, fs_len, &tot) || + (po->standard && add_size_overflow(tot, 2, &tot))) + goto overflow; + } if (po->standard) - tot += fs_len * 2 + 2; - border = malloc(tot + 1); + { + /* An extra separator at the front and back. */ + if (add_size_overflow(tot, fs_len, &tot) || + add_size_overflow(tot, fs_len, &tot) || + add_size_overflow(tot, 2, &tot)) + goto overflow; + } + if (add_size_overflow(tot, 1, &tot)) /* terminator */ + goto overflow; + + border = malloc(tot); if (!border) { fprintf(stderr, libpq_gettext("out of memory\n")); @@ -524,6 +571,10 @@ do_header(FILE *fout, const PQprintOpt *po, const int nFields, int *fieldMax, else fprintf(fout, "\n%s\n", border); return border; + +overflow: + fprintf(stderr, libpq_gettext("header size exceeds the maximum allowed\n")); + return NULL; } diff --git a/src/interfaces/libpq/fe-protocol3.c b/src/interfaces/libpq/fe-protocol3.c index 43ad672abce95..38d01cbc024f4 100644 --- a/src/interfaces/libpq/fe-protocol3.c +++ b/src/interfaces/libpq/fe-protocol3.c @@ -16,6 +16,7 @@ #include #include +#include #ifdef WIN32 #include "win32.h" @@ -55,8 +56,8 @@ static int getCopyStart(PGconn *conn, ExecStatusType copytype); static int getReadyForQuery(PGconn *conn); static void reportErrorPosition(PQExpBuffer msg, const char *query, int loc, int encoding); -static int build_startup_packet(const PGconn *conn, char *packet, - const PQEnvironmentOption *options); +static size_t build_startup_packet(const PGconn *conn, char *packet, + const PQEnvironmentOption *options); /* @@ -1234,8 +1235,21 @@ reportErrorPosition(PQExpBuffer msg, const char *query, int loc, int encoding) * scridx[] respectively. */ - /* we need a safe allocation size... */ + /* + * We need a safe allocation size. + * + * The only caller of reportErrorPosition() is pqBuildErrorMessage3(); it + * gets its query from either a PQresultErrorField() or a PGcmdQueueEntry, + * both of which must have fit into conn->inBuffer/outBuffer. So slen fits + * inside an int, but we can't assume that (slen * sizeof(int)) fits + * inside a size_t. + */ slen = strlen(wquery) + 1; + if (slen > SIZE_MAX / sizeof(int)) + { + free(wquery); + return; + } qidx = (int *) malloc(slen * sizeof(int)); if (qidx == NULL) @@ -2373,15 +2387,43 @@ pqBuildStartupPacket3(PGconn *conn, int *packetlen, const PQEnvironmentOption *options) { char *startpacket; + size_t len; + + len = build_startup_packet(conn, NULL, options); + if (len == 0 || len > INT_MAX) + return NULL; - *packetlen = build_startup_packet(conn, NULL, options); + *packetlen = len; startpacket = (char *) malloc(*packetlen); if (!startpacket) return NULL; - *packetlen = build_startup_packet(conn, startpacket, options); + + len = build_startup_packet(conn, startpacket, options); + Assert(*packetlen == len); + return startpacket; } +/* + * Frontend version of the backend's add_size(), intended to be API-compatible + * with the pg_add_*_overflow() helpers. Stores the result into *dst on success. + * Returns true instead if the addition overflows. + * + * TODO: move to common/int.h + */ +static bool +add_size_overflow(size_t s1, size_t s2, size_t *dst) +{ + size_t result; + + result = s1 + s2; + if (result < s1 || result < s2) + return true; + + *dst = result; + return false; +} + /* * Build a startup packet given a filled-in PGconn structure. * @@ -2389,13 +2431,13 @@ pqBuildStartupPacket3(PGconn *conn, int *packetlen, * To avoid duplicate logic, this routine is called twice: the first time * (with packet == NULL) just counts the space needed, the second time * (with packet == allocated space) fills it in. Return value is the number - * of bytes used. + * of bytes used, or zero in the unlikely event of size_t overflow. */ -static int +static size_t build_startup_packet(const PGconn *conn, char *packet, const PQEnvironmentOption *options) { - int packet_len = 0; + size_t packet_len = 0; const PQEnvironmentOption *next_eo; const char *val; @@ -2414,10 +2456,12 @@ build_startup_packet(const PGconn *conn, char *packet, do { \ if (packet) \ strcpy(packet + packet_len, optname); \ - packet_len += strlen(optname) + 1; \ + if (add_size_overflow(packet_len, strlen(optname) + 1, &packet_len)) \ + return 0; \ if (packet) \ strcpy(packet + packet_len, optval); \ - packet_len += strlen(optval) + 1; \ + if (add_size_overflow(packet_len, strlen(optval) + 1, &packet_len)) \ + return 0; \ } while(0) if (conn->pguser && conn->pguser[0]) @@ -2452,7 +2496,8 @@ build_startup_packet(const PGconn *conn, char *packet, /* Add trailing terminator */ if (packet) packet[packet_len] = '\0'; - packet_len++; + if (add_size_overflow(packet_len, 1, &packet_len)) + return 0; return packet_len; } diff --git a/src/interfaces/libpq/libpq-int.h b/src/interfaces/libpq/libpq-int.h index 92502b166a923..decc09103aa68 100644 --- a/src/interfaces/libpq/libpq-int.h +++ b/src/interfaces/libpq/libpq-int.h @@ -561,7 +561,16 @@ struct pg_conn pg_prng_state prng_state; /* prng state for load balancing connections */ - /* Buffer for data received from backend and not yet processed */ + /* + * Buffer for data received from backend and not yet processed. + * + * NB: We rely on a maximum inBufSize/outBufSize of INT_MAX (and therefore + * an INT_MAX upper bound on the size of any and all packet contents) to + * avoid overflow; for example in reportErrorPosition(). Changing the type + * would require not only an adjustment to the overflow protection in + * pqCheck{In,Out}BufferSpace(), but also a careful audit of all libpq + * code that uses ints during size calculations. + */ char *inBuffer; /* currently allocated buffer */ int inBufSize; /* allocated size of buffer */ int inStart; /* offset to first unconsumed data in buffer */ From 00eb646ea43410e5df77fed96f4a981e66811796 Mon Sep 17 00:00:00 2001 From: Nathan Bossart Date: Mon, 10 Nov 2025 09:00:00 -0600 Subject: [PATCH 391/457] Check for CREATE privilege on the schema in CREATE STATISTICS. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This omission allowed table owners to create statistics in any schema, potentially leading to unexpected naming conflicts. For ALTER TABLE commands that require re-creating statistics objects, skip this check in case the user has since lost CREATE on the schema. The addition of a second parameter to CreateStatistics() breaks ABI compatibility, but we are unaware of any impacted third-party code. Reported-by: Jelte Fennema-Nio Author: Jelte Fennema-Nio Co-authored-by: Nathan Bossart Reviewed-by: Noah Misch Reviewed-by: Álvaro Herrera Security: CVE-2025-12817 Backpatch-through: 13 --- src/backend/commands/statscmds.c | 17 +++++++++++- src/backend/commands/tablecmds.c | 2 +- src/backend/tcop/utility.c | 2 +- src/include/commands/defrem.h | 2 +- src/test/regress/expected/stats_ext.out | 37 +++++++++++++++++++++++++ src/test/regress/sql/stats_ext.sql | 34 +++++++++++++++++++++++ 6 files changed, 90 insertions(+), 4 deletions(-) diff --git a/src/backend/commands/statscmds.c b/src/backend/commands/statscmds.c index e24d540cd45ba..2b89aa06788d9 100644 --- a/src/backend/commands/statscmds.c +++ b/src/backend/commands/statscmds.c @@ -59,7 +59,7 @@ compare_int16(const void *a, const void *b) * CREATE STATISTICS */ ObjectAddress -CreateStatistics(CreateStatsStmt *stmt) +CreateStatistics(CreateStatsStmt *stmt, bool check_rights) { int16 attnums[STATS_MAX_DIMENSIONS]; int nattnums = 0; @@ -169,6 +169,21 @@ CreateStatistics(CreateStatsStmt *stmt) } namestrcpy(&stxname, namestr); + /* + * Check we have creation rights in target namespace. Skip check if + * caller doesn't want it. + */ + if (check_rights) + { + AclResult aclresult; + + aclresult = object_aclcheck(NamespaceRelationId, namespaceId, + GetUserId(), ACL_CREATE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, OBJECT_SCHEMA, + get_namespace_name(namespaceId)); + } + /* * Deal with the possibility that the statistics object already exists. */ diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c index 8974f3d53714d..3241060bd556d 100644 --- a/src/backend/commands/tablecmds.c +++ b/src/backend/commands/tablecmds.c @@ -9680,7 +9680,7 @@ ATExecAddStatistics(AlteredTableInfo *tab, Relation rel, /* The CreateStatsStmt has already been through transformStatsStmt */ Assert(stmt->transformed); - address = CreateStatistics(stmt); + address = CreateStatistics(stmt, !is_rebuild); return address; } diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c index 5c42d6302bead..4b8d877842b7f 100644 --- a/src/backend/tcop/utility.c +++ b/src/backend/tcop/utility.c @@ -1901,7 +1901,7 @@ ProcessUtilitySlow(ParseState *pstate, /* Run parse analysis ... */ stmt = transformStatsStmt(relid, stmt, queryString); - address = CreateStatistics(stmt); + address = CreateStatistics(stmt, true); } break; diff --git a/src/include/commands/defrem.h b/src/include/commands/defrem.h index dd22b5efdfd91..f3432b4b6a15b 100644 --- a/src/include/commands/defrem.h +++ b/src/include/commands/defrem.h @@ -85,7 +85,7 @@ extern void RemoveOperatorById(Oid operOid); extern ObjectAddress AlterOperator(AlterOperatorStmt *stmt); /* commands/statscmds.c */ -extern ObjectAddress CreateStatistics(CreateStatsStmt *stmt); +extern ObjectAddress CreateStatistics(CreateStatsStmt *stmt, bool check_rights); extern ObjectAddress AlterStatistics(AlterStatsStmt *stmt); extern void RemoveStatisticsById(Oid statsOid); extern void RemoveStatisticsDataById(Oid statsOid, bool inh); diff --git a/src/test/regress/expected/stats_ext.out b/src/test/regress/expected/stats_ext.out index d225c0d0c3ff4..c2f2604a52b25 100644 --- a/src/test/regress/expected/stats_ext.out +++ b/src/test/regress/expected/stats_ext.out @@ -3451,6 +3451,41 @@ SELECT statistics_name, most_common_vals FROM pg_stats_ext_exprs x s_expr | {1} (2 rows) +-- CREATE STATISTICS checks for CREATE on the schema +RESET SESSION AUTHORIZATION; +CREATE SCHEMA sts_sch1 CREATE TABLE sts_sch1.tbl (a INT, b INT, c INT GENERATED ALWAYS AS (b * 2) STORED); +CREATE SCHEMA sts_sch2; +GRANT USAGE ON SCHEMA sts_sch1, sts_sch2 TO regress_stats_user1; +ALTER TABLE sts_sch1.tbl OWNER TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +ERROR: permission denied for schema sts_sch1 +CREATE STATISTICS sts_sch2.fail ON a, b, c FROM sts_sch1.tbl; +ERROR: permission denied for schema sts_sch2 +RESET SESSION AUTHORIZATION; +GRANT CREATE ON SCHEMA sts_sch1 TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +CREATE STATISTICS sts_sch2.fail ON a, b, c FROM sts_sch1.tbl; +ERROR: permission denied for schema sts_sch2 +RESET SESSION AUTHORIZATION; +REVOKE CREATE ON SCHEMA sts_sch1 FROM regress_stats_user1; +GRANT CREATE ON SCHEMA sts_sch2 TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +ERROR: permission denied for schema sts_sch1 +CREATE STATISTICS sts_sch2.pass1 ON a, b, c FROM sts_sch1.tbl; +RESET SESSION AUTHORIZATION; +GRANT CREATE ON SCHEMA sts_sch1, sts_sch2 TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +CREATE STATISTICS sts_sch2.pass2 ON a, b, c FROM sts_sch1.tbl; +-- re-creating statistics via ALTER TABLE bypasses checks for CREATE on schema +RESET SESSION AUTHORIZATION; +REVOKE CREATE ON SCHEMA sts_sch1, sts_sch2 FROM regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +ALTER TABLE sts_sch1.tbl ALTER COLUMN a TYPE SMALLINT; +ALTER TABLE sts_sch1.tbl ALTER COLUMN c SET EXPRESSION AS (a * 3); -- Tidy up DROP OPERATOR <<< (int, int); DROP FUNCTION op_leak(int, int); @@ -3463,6 +3498,8 @@ NOTICE: drop cascades to 3 other objects DETAIL: drop cascades to table tststats.priv_test_parent_tbl drop cascades to table tststats.priv_test_tbl drop cascades to view tststats.priv_test_view +DROP SCHEMA sts_sch1, sts_sch2 CASCADE; +NOTICE: drop cascades to table sts_sch1.tbl DROP USER regress_stats_user1; CREATE TABLE grouping_unique (x integer); INSERT INTO grouping_unique (x) SELECT gs FROM generate_series(1,1000) AS gs; diff --git a/src/test/regress/sql/stats_ext.sql b/src/test/regress/sql/stats_ext.sql index acbb4f93941be..7272f9d876484 100644 --- a/src/test/regress/sql/stats_ext.sql +++ b/src/test/regress/sql/stats_ext.sql @@ -1759,6 +1759,39 @@ SELECT statistics_name, most_common_vals FROM pg_stats_ext x SELECT statistics_name, most_common_vals FROM pg_stats_ext_exprs x WHERE tablename = 'stats_ext_tbl' ORDER BY ROW(x.*); +-- CREATE STATISTICS checks for CREATE on the schema +RESET SESSION AUTHORIZATION; +CREATE SCHEMA sts_sch1 CREATE TABLE sts_sch1.tbl (a INT, b INT, c INT GENERATED ALWAYS AS (b * 2) STORED); +CREATE SCHEMA sts_sch2; +GRANT USAGE ON SCHEMA sts_sch1, sts_sch2 TO regress_stats_user1; +ALTER TABLE sts_sch1.tbl OWNER TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +CREATE STATISTICS sts_sch2.fail ON a, b, c FROM sts_sch1.tbl; +RESET SESSION AUTHORIZATION; +GRANT CREATE ON SCHEMA sts_sch1 TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +CREATE STATISTICS sts_sch2.fail ON a, b, c FROM sts_sch1.tbl; +RESET SESSION AUTHORIZATION; +REVOKE CREATE ON SCHEMA sts_sch1 FROM regress_stats_user1; +GRANT CREATE ON SCHEMA sts_sch2 TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +CREATE STATISTICS sts_sch2.pass1 ON a, b, c FROM sts_sch1.tbl; +RESET SESSION AUTHORIZATION; +GRANT CREATE ON SCHEMA sts_sch1, sts_sch2 TO regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +CREATE STATISTICS ON a, b, c FROM sts_sch1.tbl; +CREATE STATISTICS sts_sch2.pass2 ON a, b, c FROM sts_sch1.tbl; + +-- re-creating statistics via ALTER TABLE bypasses checks for CREATE on schema +RESET SESSION AUTHORIZATION; +REVOKE CREATE ON SCHEMA sts_sch1, sts_sch2 FROM regress_stats_user1; +SET SESSION AUTHORIZATION regress_stats_user1; +ALTER TABLE sts_sch1.tbl ALTER COLUMN a TYPE SMALLINT; +ALTER TABLE sts_sch1.tbl ALTER COLUMN c SET EXPRESSION AS (a * 3); + -- Tidy up DROP OPERATOR <<< (int, int); DROP FUNCTION op_leak(int, int); @@ -1767,6 +1800,7 @@ DROP FUNCTION op_leak(record, record); RESET SESSION AUTHORIZATION; DROP TABLE stats_ext_tbl; DROP SCHEMA tststats CASCADE; +DROP SCHEMA sts_sch1, sts_sch2 CASCADE; DROP USER regress_stats_user1; CREATE TABLE grouping_unique (x integer); From 91d070c7bb1480247cb834c36c89b15a7db5f82d Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 10 Nov 2025 13:36:13 -0500 Subject: [PATCH 392/457] Last-minute updates for release notes. Security: CVE-2025-12817, CVE-2025-12818 --- doc/src/sgml/release-18.sgml | 61 ++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/doc/src/sgml/release-18.sgml b/doc/src/sgml/release-18.sgml index 7b04859d32f31..f35082861e0c3 100644 --- a/doc/src/sgml/release-18.sgml +++ b/doc/src/sgml/release-18.sgml @@ -30,6 +30,67 @@ + + Check for CREATE privileges on the schema + in CREATE STATISTICS (Jelte Fennema-Nio) + § + + + + This omission allowed table owners to create statistics in any + schema, potentially leading to unexpected naming conflicts. + + + + The PostgreSQL Project thanks + Jelte Fennema-Nio for reporting this problem. + (CVE-2025-12817) + + + + + + + Avoid integer overflow in allocation-size calculations + within libpq (Jacob Champion) + § + + + + Several places in libpq were not + sufficiently careful about computing the required size of a memory + allocation. Sufficiently large inputs could cause integer overflow, + resulting in an undersized buffer, which would then lead to writing + past the end of the buffer. + + + + The PostgreSQL Project thanks Aleksey + Solovev of Positive Technologies for reporting this problem. + (CVE-2025-12818) + + + + +