diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 13:44:03 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-13 13:44:03 +0000 |
commit | 293913568e6a7a86fd1479e1cff8e2ecb58d6568 (patch) | |
tree | fc3b469a3ec5ab71b36ea97cc7aaddb838423a0c /src/bin/pg_test_fsync | |
parent | Initial commit. (diff) | |
download | postgresql-16-293913568e6a7a86fd1479e1cff8e2ecb58d6568.tar.xz postgresql-16-293913568e6a7a86fd1479e1cff8e2ecb58d6568.zip |
Adding upstream version 16.2.upstream/16.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/bin/pg_test_fsync')
26 files changed, 4685 insertions, 0 deletions
diff --git a/src/bin/pg_test_fsync/.gitignore b/src/bin/pg_test_fsync/.gitignore new file mode 100644 index 0000000..5eb5085 --- /dev/null +++ b/src/bin/pg_test_fsync/.gitignore @@ -0,0 +1,3 @@ +/pg_test_fsync + +/tmp_check/ diff --git a/src/bin/pg_test_fsync/Makefile b/src/bin/pg_test_fsync/Makefile new file mode 100644 index 0000000..631d0f3 --- /dev/null +++ b/src/bin/pg_test_fsync/Makefile @@ -0,0 +1,36 @@ +# src/bin/pg_test_fsync/Makefile + +PGFILEDESC = "pg_test_fsync - test various disk sync methods" +PGAPPICON = win32 + +subdir = src/bin/pg_test_fsync +top_builddir = ../../.. +include $(top_builddir)/src/Makefile.global + +OBJS = \ + $(WIN32RES) \ + pg_test_fsync.o + +all: pg_test_fsync + +pg_test_fsync: $(OBJS) | submake-libpgport + $(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X) + +install: all installdirs + $(INSTALL_PROGRAM) pg_test_fsync$(X) '$(DESTDIR)$(bindir)/pg_test_fsync$(X)' + +installdirs: + $(MKDIR_P) '$(DESTDIR)$(bindir)' + +check: + $(prove_check) + +installcheck: + $(prove_installcheck) + +uninstall: + rm -f '$(DESTDIR)$(bindir)/pg_test_fsync$(X)' + +clean distclean maintainer-clean: + rm -f pg_test_fsync$(X) $(OBJS) + rm -rf tmp_check diff --git a/src/bin/pg_test_fsync/meson.build b/src/bin/pg_test_fsync/meson.build new file mode 100644 index 0000000..aaf65c3 --- /dev/null +++ b/src/bin/pg_test_fsync/meson.build @@ -0,0 +1,31 @@ +# Copyright (c) 2022-2023, PostgreSQL Global Development Group + +test_fsync_sources = files( + 'pg_test_fsync.c', +) + +if host_system == 'windows' + test_fsync_sources += rc_bin_gen.process(win32ver_rc, extra_args: [ + '--NAME', 'pg_test_fsync', + '--FILEDESC', 'pg_test_fsync - test various disk sync methods']) +endif + +pg_test_fsync = executable('pg_test_fsync', + test_fsync_sources, + dependencies: [frontend_code], + kwargs: default_bin_args, +) +bin_targets += pg_test_fsync + +tests += { + 'name': 'pg_test_fsync', + 'sd': meson.current_source_dir(), + 'bd': meson.current_build_dir(), + 'tap': { + 'tests': [ + 't/001_basic.pl', + ], + }, +} + +subdir('po', if_found: libintl) diff --git a/src/bin/pg_test_fsync/nls.mk b/src/bin/pg_test_fsync/nls.mk new file mode 100644 index 0000000..a507820 --- /dev/null +++ b/src/bin/pg_test_fsync/nls.mk @@ -0,0 +1,5 @@ +# src/bin/pg_test_fsync/nls.mk +CATALOG_NAME = pg_test_fsync +GETTEXT_FILES = $(FRONTEND_COMMON_GETTEXT_FILES) pg_test_fsync.c +GETTEXT_TRIGGERS = $(FRONTEND_COMMON_GETTEXT_TRIGGERS) die +GETTEXT_FLAGS = $(FRONTEND_COMMON_GETTEXT_FLAGS) diff --git a/src/bin/pg_test_fsync/pg_test_fsync.c b/src/bin/pg_test_fsync/pg_test_fsync.c new file mode 100644 index 0000000..435df8d --- /dev/null +++ b/src/bin/pg_test_fsync/pg_test_fsync.c @@ -0,0 +1,648 @@ +/* + * pg_test_fsync.c + * tests all supported fsync() methods + */ + +#include "postgres_fe.h" + +#include <limits.h> +#include <sys/stat.h> +#include <sys/time.h> +#include <fcntl.h> +#include <time.h> +#include <unistd.h> +#include <signal.h> + +#include "access/xlogdefs.h" +#include "common/logging.h" +#include "common/pg_prng.h" +#include "getopt_long.h" + +/* + * put the temp files in the local directory + * unless the user specifies otherwise + */ +#define FSYNC_FILENAME "./pg_test_fsync.out" + +#define XLOG_BLCKSZ_K (XLOG_BLCKSZ / 1024) + +#define LABEL_FORMAT " %-30s" +#define NA_FORMAT "%21s\n" +/* translator: maintain alignment with NA_FORMAT */ +#define OPS_FORMAT gettext_noop("%13.3f ops/sec %6.0f usecs/op\n") +#define USECS_SEC 1000000 + +/* These are macros to avoid timing the function call overhead. */ +#ifndef WIN32 +#define START_TIMER \ +do { \ + alarm_triggered = false; \ + alarm(secs_per_test); \ + gettimeofday(&start_t, NULL); \ +} while (0) +#else +/* WIN32 doesn't support alarm, so we create a thread and sleep there */ +#define START_TIMER \ +do { \ + alarm_triggered = false; \ + if (CreateThread(NULL, 0, process_alarm, NULL, 0, NULL) == \ + INVALID_HANDLE_VALUE) \ + pg_fatal("could not create thread for alarm"); \ + gettimeofday(&start_t, NULL); \ +} while (0) +#endif + +#define STOP_TIMER \ +do { \ + gettimeofday(&stop_t, NULL); \ + print_elapse(start_t, stop_t, ops); \ +} while (0) + + +static const char *progname; + +static unsigned int secs_per_test = 5; +static int needs_unlink = 0; +static char full_buf[DEFAULT_XLOG_SEG_SIZE], + *buf, + *filename = FSYNC_FILENAME; +static struct timeval start_t, + stop_t; +static sig_atomic_t alarm_triggered = false; + + +static void handle_args(int argc, char *argv[]); +static void prepare_buf(void); +static void test_open(void); +static void test_non_sync(void); +static void test_sync(int writes_per_op); +static void test_open_syncs(void); +static void test_open_sync(const char *msg, int writes_size); +static void test_file_descriptor_sync(void); + +#ifndef WIN32 +static void process_alarm(SIGNAL_ARGS); +#else +static DWORD WINAPI process_alarm(LPVOID param); +#endif +static void signal_cleanup(SIGNAL_ARGS); + +#ifdef HAVE_FSYNC_WRITETHROUGH +static int pg_fsync_writethrough(int fd); +#endif +static void print_elapse(struct timeval start_t, struct timeval stop_t, int ops); + +#define die(msg) pg_fatal("%s: %m", _(msg)) + + +int +main(int argc, char *argv[]) +{ + pg_logging_init(argv[0]); + set_pglocale_pgservice(argv[0], PG_TEXTDOMAIN("pg_test_fsync")); + progname = get_progname(argv[0]); + + handle_args(argc, argv); + + /* Prevent leaving behind the test file */ + pqsignal(SIGINT, signal_cleanup); + pqsignal(SIGTERM, signal_cleanup); +#ifndef WIN32 + pqsignal(SIGALRM, process_alarm); +#endif +#ifdef SIGHUP + /* Not defined on win32 */ + pqsignal(SIGHUP, signal_cleanup); +#endif + + pg_prng_seed(&pg_global_prng_state, (uint64) time(NULL)); + + prepare_buf(); + + test_open(); + + /* Test using 1 XLOG_BLCKSZ write */ + test_sync(1); + + /* Test using 2 XLOG_BLCKSZ writes */ + test_sync(2); + + test_open_syncs(); + + test_file_descriptor_sync(); + + test_non_sync(); + + unlink(filename); + + return 0; +} + +static void +handle_args(int argc, char *argv[]) +{ + static struct option long_options[] = { + {"filename", required_argument, NULL, 'f'}, + {"secs-per-test", required_argument, NULL, 's'}, + {NULL, 0, NULL, 0} + }; + + int option; /* Command line option */ + int optindex = 0; /* used by getopt_long */ + unsigned long optval; /* used for option parsing */ + char *endptr; + + if (argc > 1) + { + if (strcmp(argv[1], "--help") == 0 || strcmp(argv[1], "-?") == 0) + { + printf(_("Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n"), progname); + exit(0); + } + if (strcmp(argv[1], "--version") == 0 || strcmp(argv[1], "-V") == 0) + { + puts("pg_test_fsync (PostgreSQL) " PG_VERSION); + exit(0); + } + } + + while ((option = getopt_long(argc, argv, "f:s:", + long_options, &optindex)) != -1) + { + switch (option) + { + case 'f': + filename = pg_strdup(optarg); + break; + + case 's': + errno = 0; + optval = strtoul(optarg, &endptr, 10); + + if (endptr == optarg || *endptr != '\0' || + errno != 0 || optval != (unsigned int) optval) + { + pg_log_error("invalid argument for option %s", "--secs-per-test"); + pg_log_error_hint("Try \"%s --help\" for more information.", progname); + exit(1); + } + + secs_per_test = (unsigned int) optval; + if (secs_per_test == 0) + pg_fatal("%s must be in range %u..%u", + "--secs-per-test", 1, UINT_MAX); + break; + + default: + /* getopt_long already emitted a complaint */ + pg_log_error_hint("Try \"%s --help\" for more information.", progname); + exit(1); + } + } + + if (argc > optind) + { + pg_log_error("too many command-line arguments (first is \"%s\")", + argv[optind]); + pg_log_error_hint("Try \"%s --help\" for more information.", progname); + exit(1); + } + + printf(ngettext("%u second per test\n", + "%u seconds per test\n", + secs_per_test), + secs_per_test); +#if defined(O_DIRECT) + printf(_("O_DIRECT supported on this platform for open_datasync and open_sync.\n")); +#elif defined(F_NOCACHE) + printf(_("F_NOCACHE supported on this platform for open_datasync and open_sync.\n")); +#else + printf(_("Direct I/O is not supported on this platform.\n")); +#endif +} + +static void +prepare_buf(void) +{ + int ops; + + /* write random data into buffer */ + for (ops = 0; ops < DEFAULT_XLOG_SEG_SIZE; ops++) + full_buf[ops] = (char) pg_prng_int32(&pg_global_prng_state); + + buf = (char *) TYPEALIGN(XLOG_BLCKSZ, full_buf); +} + +static void +test_open(void) +{ + int tmpfile; + + /* + * test if we can open the target file + */ + if ((tmpfile = open(filename, O_RDWR | O_CREAT | PG_BINARY, S_IRUSR | S_IWUSR)) == -1) + die("could not open output file"); + needs_unlink = 1; + if (write(tmpfile, full_buf, DEFAULT_XLOG_SEG_SIZE) != + DEFAULT_XLOG_SEG_SIZE) + die("write failed"); + + /* fsync now so that dirty buffers don't skew later tests */ + if (fsync(tmpfile) != 0) + die("fsync failed"); + + close(tmpfile); +} + +static int +open_direct(const char *path, int flags, mode_t mode) +{ + int fd; + +#ifdef O_DIRECT + flags |= O_DIRECT; +#endif + + fd = open(path, flags, mode); + +#if !defined(O_DIRECT) && defined(F_NOCACHE) + if (fd >= 0 && fcntl(fd, F_NOCACHE, 1) < 0) + { + int save_errno = errno; + + close(fd); + errno = save_errno; + return -1; + } +#endif + + return fd; +} + +static void +test_sync(int writes_per_op) +{ + int tmpfile, + ops, + writes; + bool fs_warning = false; + + if (writes_per_op == 1) + printf(_("\nCompare file sync methods using one %dkB write:\n"), XLOG_BLCKSZ_K); + else + printf(_("\nCompare file sync methods using two %dkB writes:\n"), XLOG_BLCKSZ_K); + printf(_("(in wal_sync_method preference order, except fdatasync is Linux's default)\n")); + + /* + * Test open_datasync if available + */ + printf(LABEL_FORMAT, "open_datasync"); + fflush(stdout); + +#ifdef O_DSYNC + if ((tmpfile = open_direct(filename, O_RDWR | O_DSYNC | PG_BINARY, 0)) == -1) + { + printf(NA_FORMAT, _("n/a*")); + fs_warning = true; + } + else + { + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + for (writes = 0; writes < writes_per_op; writes++) + if (pg_pwrite(tmpfile, + buf, + XLOG_BLCKSZ, + writes * XLOG_BLCKSZ) != XLOG_BLCKSZ) + die("write failed"); + } + STOP_TIMER; + close(tmpfile); + } +#else + printf(NA_FORMAT, _("n/a")); +#endif + +/* + * Test fdatasync if available + */ + printf(LABEL_FORMAT, "fdatasync"); + fflush(stdout); + + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + for (writes = 0; writes < writes_per_op; writes++) + if (pg_pwrite(tmpfile, + buf, + XLOG_BLCKSZ, + writes * XLOG_BLCKSZ) != XLOG_BLCKSZ) + die("write failed"); + fdatasync(tmpfile); + } + STOP_TIMER; + close(tmpfile); + +/* + * Test fsync + */ + printf(LABEL_FORMAT, "fsync"); + fflush(stdout); + + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + for (writes = 0; writes < writes_per_op; writes++) + if (pg_pwrite(tmpfile, + buf, + XLOG_BLCKSZ, + writes * XLOG_BLCKSZ) != XLOG_BLCKSZ) + die("write failed"); + if (fsync(tmpfile) != 0) + die("fsync failed"); + } + STOP_TIMER; + close(tmpfile); + +/* + * If fsync_writethrough is available, test as well + */ + printf(LABEL_FORMAT, "fsync_writethrough"); + fflush(stdout); + +#ifdef HAVE_FSYNC_WRITETHROUGH + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + for (writes = 0; writes < writes_per_op; writes++) + if (pg_pwrite(tmpfile, + buf, + XLOG_BLCKSZ, + writes * XLOG_BLCKSZ) != XLOG_BLCKSZ) + die("write failed"); + if (pg_fsync_writethrough(tmpfile) != 0) + die("fsync failed"); + } + STOP_TIMER; + close(tmpfile); +#else + printf(NA_FORMAT, _("n/a")); +#endif + +/* + * Test open_sync if available + */ + printf(LABEL_FORMAT, "open_sync"); + fflush(stdout); + +#ifdef O_SYNC + if ((tmpfile = open_direct(filename, O_RDWR | O_SYNC | PG_BINARY, 0)) == -1) + { + printf(NA_FORMAT, _("n/a*")); + fs_warning = true; + } + else + { + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + for (writes = 0; writes < writes_per_op; writes++) + if (pg_pwrite(tmpfile, + buf, + XLOG_BLCKSZ, + writes * XLOG_BLCKSZ) != XLOG_BLCKSZ) + + /* + * This can generate write failures if the filesystem has + * a large block size, e.g. 4k, and there is no support + * for O_DIRECT writes smaller than the file system block + * size, e.g. XFS. + */ + die("write failed"); + } + STOP_TIMER; + close(tmpfile); + } +#else + printf(NA_FORMAT, _("n/a")); +#endif + + if (fs_warning) + { + printf(_("* This file system and its mount options do not support direct\n" + " I/O, e.g. ext4 in journaled mode.\n")); + } +} + +static void +test_open_syncs(void) +{ + printf(_("\nCompare open_sync with different write sizes:\n")); + printf(_("(This is designed to compare the cost of writing 16kB in different write\n" + "open_sync sizes.)\n")); + + test_open_sync(_(" 1 * 16kB open_sync write"), 16); + test_open_sync(_(" 2 * 8kB open_sync writes"), 8); + test_open_sync(_(" 4 * 4kB open_sync writes"), 4); + test_open_sync(_(" 8 * 2kB open_sync writes"), 2); + test_open_sync(_("16 * 1kB open_sync writes"), 1); +} + +/* + * Test open_sync with different size files + */ +static void +test_open_sync(const char *msg, int writes_size) +{ +#ifdef O_SYNC + int tmpfile, + ops, + writes; +#endif + + printf(LABEL_FORMAT, msg); + fflush(stdout); + +#ifdef O_SYNC + if ((tmpfile = open_direct(filename, O_RDWR | O_SYNC | PG_BINARY, 0)) == -1) + printf(NA_FORMAT, _("n/a*")); + else + { + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + for (writes = 0; writes < 16 / writes_size; writes++) + if (pg_pwrite(tmpfile, + buf, + writes_size * 1024, + writes * writes_size * 1024) != + writes_size * 1024) + die("write failed"); + } + STOP_TIMER; + close(tmpfile); + } +#else + printf(NA_FORMAT, _("n/a")); +#endif +} + +static void +test_file_descriptor_sync(void) +{ + int tmpfile, + ops; + + /* + * Test whether fsync can sync data written on a different descriptor for + * the same file. This checks the efficiency of multi-process fsyncs + * against the same file. Possibly this should be done with writethrough + * on platforms which support it. + */ + printf(_("\nTest if fsync on non-write file descriptor is honored:\n")); + printf(_("(If the times are similar, fsync() can sync data written on a different\n" + "descriptor.)\n")); + + /* + * first write, fsync and close, which is the normal behavior without + * multiple descriptors + */ + printf(LABEL_FORMAT, "write, fsync, close"); + fflush(stdout); + + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + if (write(tmpfile, buf, XLOG_BLCKSZ) != XLOG_BLCKSZ) + die("write failed"); + if (fsync(tmpfile) != 0) + die("fsync failed"); + close(tmpfile); + + /* + * open and close the file again to be consistent with the following + * test + */ + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + close(tmpfile); + } + STOP_TIMER; + + /* + * Now open, write, close, open again and fsync This simulates processes + * fsyncing each other's writes. + */ + printf(LABEL_FORMAT, "write, close, fsync"); + fflush(stdout); + + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + if (write(tmpfile, buf, XLOG_BLCKSZ) != XLOG_BLCKSZ) + die("write failed"); + close(tmpfile); + /* reopen file */ + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + if (fsync(tmpfile) != 0) + die("fsync failed"); + close(tmpfile); + } + STOP_TIMER; +} + +static void +test_non_sync(void) +{ + int tmpfile, + ops; + + /* + * Test a simple write without fsync + */ + printf(_("\nNon-sync'ed %dkB writes:\n"), XLOG_BLCKSZ_K); + printf(LABEL_FORMAT, "write"); + fflush(stdout); + + if ((tmpfile = open(filename, O_RDWR | PG_BINARY, 0)) == -1) + die("could not open output file"); + START_TIMER; + for (ops = 0; alarm_triggered == false; ops++) + { + if (pg_pwrite(tmpfile, buf, XLOG_BLCKSZ, 0) != XLOG_BLCKSZ) + die("write failed"); + } + STOP_TIMER; + close(tmpfile); +} + +static void +signal_cleanup(SIGNAL_ARGS) +{ + /* Delete the file if it exists. Ignore errors */ + if (needs_unlink) + unlink(filename); + /* Finish incomplete line on stdout */ + puts(""); + exit(1); +} + +#ifdef HAVE_FSYNC_WRITETHROUGH + +static int +pg_fsync_writethrough(int fd) +{ +#ifdef WIN32 + return _commit(fd); +#elif defined(F_FULLFSYNC) + return (fcntl(fd, F_FULLFSYNC, 0) == -1) ? -1 : 0; +#else + errno = ENOSYS; + return -1; +#endif +} +#endif + +/* + * print out the writes per second for tests + */ +static void +print_elapse(struct timeval start_t, struct timeval stop_t, int ops) +{ + double total_time = (stop_t.tv_sec - start_t.tv_sec) + + (stop_t.tv_usec - start_t.tv_usec) * 0.000001; + double per_second = ops / total_time; + double avg_op_time_us = (total_time / ops) * USECS_SEC; + + printf(_(OPS_FORMAT), per_second, avg_op_time_us); +} + +#ifndef WIN32 +static void +process_alarm(SIGNAL_ARGS) +{ + alarm_triggered = true; +} +#else +static DWORD WINAPI +process_alarm(LPVOID param) +{ + /* WIN32 doesn't support alarm, so we create a thread and sleep here */ + Sleep(secs_per_test * 1000); + alarm_triggered = true; + ExitThread(0); +} +#endif diff --git a/src/bin/pg_test_fsync/po/LINGUAS b/src/bin/pg_test_fsync/po/LINGUAS new file mode 100644 index 0000000..4cc8bed --- /dev/null +++ b/src/bin/pg_test_fsync/po/LINGUAS @@ -0,0 +1 @@ +cs de el es fr it ja ka ko pl pt_BR ru sv tr uk vi zh_CN zh_TW diff --git a/src/bin/pg_test_fsync/po/cs.po b/src/bin/pg_test_fsync/po/cs.po new file mode 100644 index 0000000..a654745 --- /dev/null +++ b/src/bin/pg_test_fsync/po/cs.po @@ -0,0 +1,210 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2018 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 11\n" +"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n" +"POT-Creation-Date: 2018-07-13 19:47+0000\n" +"PO-Revision-Date: 2018-07-13 23:50+0200\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : " +"2;\n" +"X-Generator: Poedit 2.0.7\n" + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:30 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:49 +#, c-format +msgid "Could not create thread for alarm\n" +msgstr "Nelze vytvořit thread pro alarm\n" + +#: pg_test_fsync.c:154 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Použití: %s [-f SOUBOR] [-s SECS-PER-TEST]\n" + +#: pg_test_fsync.c:178 pg_test_fsync.c:190 +#, c-format +msgid "Try \"%s --help\" for more information.\n" +msgstr "Zkuste \"%s --help\" pro více informací.\n" + +#: pg_test_fsync.c:188 +#, c-format +msgid "%s: too many command-line arguments (first is \"%s\")\n" +msgstr "" +"%s: příliš mnoho argumentů v příkazové řádce (první je \"%s\")\n" + +#: pg_test_fsync.c:195 +#, c-format +msgid "%d second per test\n" +msgid_plural "%d seconds per test\n" +msgstr[0] "%d sekund per test\n" +msgstr[1] "%d seconds per test\n" +msgstr[2] "%d seconds per test\n" + +#: pg_test_fsync.c:200 +#, c-format +msgid "" +"O_DIRECT supported on this platform for open_datasync and " +"open_sync.\n" +msgstr "" +"O_DIRECT podporováno na této platformě pro open_datasync a " +"open_sync.\n" + +#: pg_test_fsync.c:202 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Direct I/O není na této platformě podporováno.\n" + +#: pg_test_fsync.c:227 pg_test_fsync.c:292 pg_test_fsync.c:316 +#: pg_test_fsync.c:339 pg_test_fsync.c:480 pg_test_fsync.c:492 +#: pg_test_fsync.c:508 pg_test_fsync.c:514 pg_test_fsync.c:539 +msgid "could not open output file" +msgstr "nelze otevřít výstupní soubor" + +#: pg_test_fsync.c:231 pg_test_fsync.c:273 pg_test_fsync.c:298 +#: pg_test_fsync.c:322 pg_test_fsync.c:345 pg_test_fsync.c:383 +#: pg_test_fsync.c:441 pg_test_fsync.c:482 pg_test_fsync.c:510 +#: pg_test_fsync.c:541 +msgid "write failed" +msgstr "zápis selhal" + +#: pg_test_fsync.c:235 pg_test_fsync.c:324 pg_test_fsync.c:347 +#: pg_test_fsync.c:484 pg_test_fsync.c:516 +msgid "fsync failed" +msgstr "fsync selhal" + +#: pg_test_fsync.c:249 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Srovnání sync metod souboru pomocí jednoho %dkB zápisu:\n" + +#: pg_test_fsync.c:251 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Srovnání sync metod souboru pomocí dvou %dkB zápisů:\n" + +#: pg_test_fsync.c:252 +#, c-format +msgid "" +"(in wal_sync_method preference order, except fdatasync is Linux's " +"default)\n" +msgstr "" +"(v pořadí dle wal_sync_method, s výjimkou že fdatasync je výchozí na " +"Linuxu)\n" + +#: pg_test_fsync.c:263 pg_test_fsync.c:366 pg_test_fsync.c:432 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:275 pg_test_fsync.c:301 pg_test_fsync.c:326 +#: pg_test_fsync.c:349 pg_test_fsync.c:385 pg_test_fsync.c:443 +msgid "seek failed" +msgstr "nastavení pozice (seek) selhalo" + +#: pg_test_fsync.c:281 pg_test_fsync.c:306 pg_test_fsync.c:354 +#: pg_test_fsync.c:391 pg_test_fsync.c:449 +msgid "n/a" +msgstr "n/a" + +#: pg_test_fsync.c:396 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Tento souborový systém a jeho mount volby nepodporují direct\n" +" I/O, e.g. ext4 v journaled módu.\n" + +#: pg_test_fsync.c:404 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Srovnání open_sync s různými velikostmi zápisů:\n" + +#: pg_test_fsync.c:405 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different " +"write\n" +"open_sync sizes.)\n" +msgstr "" +"(Toto je navrženo pro srovnání ceny zápisu 16kB s různými " +"velikostmi\n" +"zápisů open_sync.)\n" + +#: pg_test_fsync.c:408 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync write" + +#: pg_test_fsync.c:409 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync writes" + +#: pg_test_fsync.c:410 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync writes" + +#: pg_test_fsync.c:411 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync writes" + +#: pg_test_fsync.c:412 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync writes" + +#: pg_test_fsync.c:465 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Testuje zda fsync funguje na non-write file descriptoru:\n" + +#: pg_test_fsync.c:466 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a " +"different\n" +"descriptor.)\n" +msgstr "" +"(Pokud jsou výsledky podobné, fsync() může synchronizovat data\n" +"zapsaná na různých descriptorech.)\n" + +#: pg_test_fsync.c:531 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Non-sync'ed %dkB writes:\n" + +#: pg_test_fsync.c:608 +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" diff --git a/src/bin/pg_test_fsync/po/de.po b/src/bin/pg_test_fsync/po/de.po new file mode 100644 index 0000000..906080e --- /dev/null +++ b/src/bin/pg_test_fsync/po/de.po @@ -0,0 +1,224 @@ +# German message translation file for pg_test_fsync +# Copyright (C) 2017-2022 PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 15\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-05-11 15:51+0000\n" +"PO-Revision-Date: 2022-05-11 22:41+0200\n" +"Last-Translator: Peter Eisentraut <peter@eisentraut.org>\n" +"Language-Team: German <pgsql-translators@postgresql.org>\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#: ../../../src/common/logging.c:277 +#, c-format +msgid "error: " +msgstr "Fehler: " + +#: ../../../src/common/logging.c:284 +#, c-format +msgid "warning: " +msgstr "Warnung: " + +#: ../../../src/common/logging.c:295 +#, c-format +msgid "detail: " +msgstr "Detail: " + +#: ../../../src/common/logging.c:302 +#, c-format +msgid "hint: " +msgstr "Tipp: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr " %13.3f Op./s %6.0f µs/Op.\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "konnte Thread für Alarm nicht erzeugen" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Aufruf: %s [-f DATEINAME] [-s SEK-PRO-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "ungültiges Argument für Option %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Versuchen Sie »%s --help« für weitere Informationen." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s muss im Bereich %u..%u sein" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "zu viele Kommandozeilenargumente (das erste ist »%s«)" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u Sekunde pro Test\n" +msgstr[1] "%u Sekunden pro Test\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT wird auf dieser Plattform für open_datasync und open_sync unterstützt.\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "F_NOCACHE wird auf dieser Plattform für open_datasync und open_sync unterstützt.\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Direct-I/O wird auf dieser Plattform nicht unterstützt.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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 "konnte Ausgabedatei nicht öffnen" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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 "Schreiben fehlgeschlagen" + +#: pg_test_fsync.c:253 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 fehlgeschlagen" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Vergleich von Datei-Sync-Methoden bei einem Schreibvorgang aus %dkB:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Vergleich von Datei-Sync-Methoden bei zwei Schreibvorgängen aus je %dkB:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(in Rangordnung von wal_sync_method, außer dass fdatasync auf Linux Standard ist)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "entf.*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 pg_test_fsync.c:401 +#: pg_test_fsync.c:439 pg_test_fsync.c:498 +msgid "n/a" +msgstr "entf." + +#: pg_test_fsync.c:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Dieses Dateisystem und die Mount-Optionen unterstützen kein Direct-I/O,\n" +" z.B. ext4 im Journaled-Modus.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Vergleich von open_sync mit verschiedenen Schreibgrößen:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Damit werden die Kosten für das Schreiben von 16kB in verschieden Größen mit\n" +"open_sync verglichen.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync schreiben" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync schreiben" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync schreiben" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync schreiben" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync schreiben" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Probe ob fsync auf einem anderen Dateideskriptor funktioniert:\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Wenn die Zeiten ähnlich sind, dann kann fsync() auf einem anderen Deskriptor\n" +"geschriebene Daten syncen.)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Nicht gesynctes Schreiben von %dkB:\n" diff --git a/src/bin/pg_test_fsync/po/el.po b/src/bin/pg_test_fsync/po/el.po new file mode 100644 index 0000000..4cd3771 --- /dev/null +++ b/src/bin/pg_test_fsync/po/el.po @@ -0,0 +1,228 @@ +# Greek message translation file for pg_test_fsync +# Copyright (C) 2021 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# Georgios Kokolatos <gkokolatos@pm.me>, 2021 +# +# +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 15\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2023-04-14 09:21+0000\n" +"PO-Revision-Date: 2023-04-14 14:41+0200\n" +"Last-Translator: Georgios Kokolatos <gkokolatos@pm.me>\n" +"Language-Team: \n" +"Language: el\n" +"MIME-Version: 1.0\n" +"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.2.2\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "σφάλμα: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "προειδοποίηση: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "λεπτομέρεια: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "υπόδειξη: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "δεν ήταν δυνατή η δημιουργία νήματος για ειδοποίηση" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Χρήση: %s [-f FILENAME] [-s SECS-PER-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "μη έγκυρη παράμετρος για την επιλογή %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Δοκιμάστε «%s --help» για περισσότερες πληροφορίες." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s πρέπει να βρίσκεται εντός εύρους %u..%u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "πάρα πολλές παράμετροι εισόδου από την γραμμή εντολών (η πρώτη είναι η «%s»)" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u δευτερόλεπτο ανά τεστ\n" +msgstr[1] "%u δευτερόλεπτα ανά τεστ\n" + +#: pg_test_fsync.c:216 +#, 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:218 +#, 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:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Άμεσο I/O δεν υποστηρίζεται σε αυτήν την πλατφόρμα.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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:253 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 απέτυχε" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Συγκρίνετε τις μεθόδους συγχρονισμού αρχείων χρησιμοποιώντας μία εγγραφή %dkB:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Συγκρίνετε τις μεθόδους συγχρονισμού αρχείων χρησιμοποιώντας δύο εγγραφές %dkB:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(με wal_sync_method σειρά προτίμησης, εκτός από fdatasync είναι η προεπιλογή σε Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 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:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Αυτό το σύστημα αρχείων και οι επιλογές προσάρτησής του δεν υποστηρίζουν\n" +" άμεσο I/O, π.χ. ext4 σε λειτουργία journal.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Συγκρίνετε open_sync με διαφορετικά μεγέθη εγγραφής:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Αυτό έχει σχεδιαστεί για να συγκρίνει το κόστος της γραφής 16kB σε διαφορετικά\n" +"μεγέθη open_sync.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync εγγραφή" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync εγγραφές" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync εγγραφές" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync εγγραφές" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync εγγραφές" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Ελέγξτε εάν τηρείται το fsync σε μη-εγγράψιμο περιγραφέα αρχείων:\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Εάν οι χρόνοι είναι παρόμοιοι, το fsync() μπορεί να συγχρονίσει δεδομένα εγγεγραμμένα\n" +"σε διαφορετικό περιγραφέα.)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Μη-συγχρονισμένες %dkB εγγραφές:\n" diff --git a/src/bin/pg_test_fsync/po/es.po b/src/bin/pg_test_fsync/po/es.po new file mode 100644 index 0000000..b522bdd --- /dev/null +++ b/src/bin/pg_test_fsync/po/es.po @@ -0,0 +1,228 @@ +# Spanish message translation file for pg_test_fsync +# +# Copyright (c) 2017-2021, PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# +# Carlos Chapi <carloswaldo@babelruins.org>, 2017, 2021. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 16\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2023-05-22 07:22+0000\n" +"PO-Revision-Date: 2023-05-22 12:06+0200\n" +"Last-Translator: Carlos Chapi <carloswaldo@babelruins.org>\n" +"Language-Team: PgSQL-es-Ayuda <pgsql-es-ayuda@lists.postgresql.org>\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Poedit 2.4.3\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "error: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "precaución: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "detalle: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "consejo: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, 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:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "no se pudo crear el thread para la alarma" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, 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:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "argumento no válido para la opción %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Pruebe «%s --help» para mayor información." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s debe estar en el rango %u..%u" + +#: pg_test_fsync.c:205 +#, 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:211 +#, 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:216 +#, 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:218 +#, 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:220 +#, 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:245 pg_test_fsync.c:335 pg_test_fsync.c:357 +#: pg_test_fsync.c:381 pg_test_fsync.c:525 pg_test_fsync.c:537 +#: pg_test_fsync.c:553 pg_test_fsync.c:559 pg_test_fsync.c:581 +msgid "could not open output file" +msgstr "no se pudo abrir el archivo de salida" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:344 +#: pg_test_fsync.c:366 pg_test_fsync.c:390 pg_test_fsync.c:429 +#: pg_test_fsync.c:488 pg_test_fsync.c:527 pg_test_fsync.c:555 +#: pg_test_fsync.c:586 +msgid "write failed" +msgstr "escritura falló" + +#: pg_test_fsync.c:253 pg_test_fsync.c:368 pg_test_fsync.c:392 +#: pg_test_fsync.c:529 pg_test_fsync.c:561 +msgid "fsync failed" +msgstr "fsync falló" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Comparar métodos de sincronización de archivos usando una escritura de %dkB:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Comparar métodos de sincronización de archivos usando dos escrituras de %dkB:\n" + +#: pg_test_fsync.c:295 +#, 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:306 pg_test_fsync.c:409 pg_test_fsync.c:476 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:397 pg_test_fsync.c:435 +#: pg_test_fsync.c:494 +msgid "n/a" +msgstr "n/a" + +#: pg_test_fsync.c:440 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +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:448 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Comparar open_sync con diferentes tamaños de escritura:\n" + +#: pg_test_fsync.c:449 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +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:452 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB escritura open_sync" + +#: pg_test_fsync.c:453 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB escrituras open_sync" + +#: pg_test_fsync.c:454 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB escrituras open_sync" + +#: pg_test_fsync.c:455 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB escrituras open_sync" + +#: pg_test_fsync.c:456 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB escrituras open_sync" + +#: pg_test_fsync.c:510 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Probar si se respeta fsync en un descriptor de archivo que no es de escritura:\n" + +#: pg_test_fsync.c:511 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Si los tiempos son similares, fsync() puede sincronizar datos escritos\n" +"en un descriptor diferente.)\n" + +#: pg_test_fsync.c:576 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Escrituras de %dkB no sincronizadas:\n" diff --git a/src/bin/pg_test_fsync/po/fr.po b/src/bin/pg_test_fsync/po/fr.po new file mode 100644 index 0000000..dfedfe8 --- /dev/null +++ b/src/bin/pg_test_fsync/po/fr.po @@ -0,0 +1,242 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2017-2022 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# +# Use these quotes: « %s » +# +# Guillaume Lelarge <guillaume@lelarge.info>, 2017-2022. +# +msgid "" +msgstr "" +"Project-Id-Version: PostgreSQL 15\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-05-14 10:20+0000\n" +"PO-Revision-Date: 2022-05-14 17:17+0200\n" +"Last-Translator: Guillaume Lelarge <guillaume@lelarge.info>\n" +"Language-Team: French <guillaume@lelarge.info>\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"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.0.1\n" + +#: ../../../src/common/logging.c:277 +#, c-format +msgid "error: " +msgstr "erreur : " + +#: ../../../src/common/logging.c:284 +#, c-format +msgid "warning: " +msgstr "attention : " + +#: ../../../src/common/logging.c:295 +#, c-format +msgid "detail: " +msgstr "détail : " + +#: ../../../src/common/logging.c:302 +#, c-format +msgid "hint: " +msgstr "astuce : " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "n'a pas pu créer un thread pour l'alarme" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s : %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Usage: %s [-f NOMFICHIER] [-s SECS-PAR-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "argument invalide pour l'option %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Essayez « %s --help » pour plus d'informations." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s doit être compris entre %u et %u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "trop d'arguments en ligne de commande (le premier étant « %s »)" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u seconde par test\n" +msgstr[1] "%u secondes par test\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT supporté sur cette plateforme pour open_datasync et open_sync.\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "F_NOCACHE supporté sur cette plateforme pour open_datasync et open_sync.\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Direct I/O n'est pas supporté sur cette plateforme.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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 "n'a pas pu ouvrir le fichier en sortie" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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 "échec en écriture" + +#: pg_test_fsync.c:253 pg_test_fsync.c:372 pg_test_fsync.c:396 +#: pg_test_fsync.c:533 pg_test_fsync.c:565 +msgid "fsync failed" +msgstr "échec de la synchronisation (fsync)" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Comparer les méthodes de synchronisation de fichier en utilisant une écriture de %d Ko :\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Comparer les méthodes de synchronisation de fichier sur disque en utilisant deux écritures de %d Ko :\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(dans l'ordre de préférence de wal_sync_method, sauf fdatasync qui est la valeur par défaut sous Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 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:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Ce système de fichiers et ses options de montage ne supportent pas les\n" +" I/O directes, par exemple ext4 en journalisé.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Comparer open_sync avec différentes tailles d'écriture :\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Ceci est conçu pour comparer le coût d'écriture de 16 Ko dans différentes tailles\n" +"d'écritures open_sync.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16 Ko, écriture avec open_sync" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8 Ko, écriture avec open_sync" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4 Ko, écriture avec open_sync" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2 Ko, écriture avec open_sync" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr " 16 * 1 Ko, écriture avec open_sync" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Teste si fsync est honoré sur un descripteur de fichiers sans écriture :\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Si les temps sont similaires, fsync() peut synchroniser sur disque les données écrites sur\n" +"un descripteur différent.)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"%d Ko d'écritures non synchronisées :\n" + +#~ msgid "%s: %s\n" +#~ msgstr "%s : %s\n" + +#~ msgid "%s: too many command-line arguments (first is \"%s\")\n" +#~ msgstr "%s : trop d'arguments en ligne de commande (le premier étant « %s »)\n" + +#, c-format +#~ msgid "Try \"%s --help\" for more information.\n" +#~ msgstr "Essayez « %s --help » pour plus d'informations.\n" + +#~ msgid "seek failed" +#~ msgstr "seek échoué" diff --git a/src/bin/pg_test_fsync/po/it.po b/src/bin/pg_test_fsync/po/it.po new file mode 100644 index 0000000..c381e27 --- /dev/null +++ b/src/bin/pg_test_fsync/po/it.po @@ -0,0 +1,226 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2022 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 15\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-09-26 08:21+0000\n" +"PO-Revision-Date: 2022-09-30 14:56+0200\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"Last-Translator: Domenico Sgarbossa <sgarbossa.domenico@gmail.com>\n" +"Language-Team: \n" +"X-Generator: Poedit 2.3\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "errore:" + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "avvertimento: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "dettaglio: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "suggerimento: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f operazioni/sec %6.0f operazioni/sec\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "non è stato possibile creare thread per l'allarme" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Utilizzo: %s [-f FILENAME] [-s SECS-PER-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "argomento non valido per l'opzione %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Prova \"%s --help\" per maggiori informazioni." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s deve essere compreso nell'intervallo %u..%u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "troppi argomenti della riga di comando (il primo è \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u secondo per test\n" +msgstr[1] "%u secondi per test\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT supportato su questa piattaforma per open_datasync e open_sync.\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "F_NOCACHE supportato su questa piattaforma per open_datasync e open_sync.\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "L'I/O diretto non è supportato su questa piattaforma.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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 "impossibile aprire il file di output" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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 "scrittura fallita" + +#: pg_test_fsync.c:253 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 non è riuscito" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Confronta i metodi di sincronizzazione dei file utilizzando una scrittura di %dkB:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Confronta i metodi di sincronizzazione dei file utilizzando due scritture %dkB:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(nell'ordine di preferenza wal_sync_method, tranne che fdatasync è l'impostazione predefinita di Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 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:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Questo file system e le sue opzioni di montaggio non supportano Direct\n" +" I/O, ad es. ext4 in modalità journal.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Confronta open_sync con diverse dimensioni di scrittura:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Questo è progettato per confrontare il costo di scrittura di 16kB in diverse scritture\n" +"dimensioni open_sync.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16 kB di scrittura open_sync" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8 kB di scritture open_sync" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB di scrittura open_sync" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB di scritture open_sync" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB di scrittura open_sync" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Verifica se fsync sul descrittore di file non di scrittura è rispettato:\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Se i tempi sono simili, fsync() può sincronizzare i dati scritti su un altro\n" +"descrittore.)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"%dkB non sincronizzato scrive:\n" diff --git a/src/bin/pg_test_fsync/po/ja.po b/src/bin/pg_test_fsync/po/ja.po new file mode 100644 index 0000000..b775b3b --- /dev/null +++ b/src/bin/pg_test_fsync/po/ja.po @@ -0,0 +1,237 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2022 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL 16)\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-07-14 10:48+0900\n" +"PO-Revision-Date: 2022-05-10 15:25+0900\n" +"Last-Translator: Michihide Hotta <hotta@net-newbie.com>\n" +"Language-Team: \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 1.8.13\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "エラー: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "警告: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "詳細: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "ヒント: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f 操作/秒 %6.0f マイクロ秒/操作\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "アラーム用のスレッドを生成できませんでした" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "使用法: %s [-f ファイル名] [-s テストあたりの秒数]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "オプション%sの引数が不正です" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "詳細は\"%s --help\"を実行してください。" + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%sは%u..%uの範囲でなければなりません" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "コマンドライン引数が多すぎます。(先頭は\"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "テスト1件あたり %u秒\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "このプラットフォームでは open_datasync と open_sync について O_DIRECT がサポートされています。\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "このプラットフォームでは open_datasync と open_sync について F_NOCACHE がサポートされています。\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "このプラットフォームではダイレクト I/O がサポートされていません。\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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:253 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 に失敗" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"1個の %dkB write を使ってファイル同期メソッドを比較します:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"2個の %dkB write を使ってファイル同期メソッドを比較します:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(wal_sync_method の指定順の中で、Linux のデフォルトである fdatasync は除きます)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "利用不可*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 pg_test_fsync.c:401 +#: pg_test_fsync.c:439 pg_test_fsync.c:498 +msgid "n/a" +msgstr "利用不可" + +#: pg_test_fsync.c:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* このファイルシステムとそのマウントオプションではダイレクト I/O をサポート\n" +" していません。例)ジャーナルモードの ext4。\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"open_sync を異なった write サイズで比較します:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(これは open_sync の write サイズを変えながら、16kB write のコストを\n" +"比較するよう指定されています。)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync write" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync writes" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync writes" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync writes" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync writes" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"書き込みなしのファイルディスクリプタ上の fsync の方が優れているかをテストします:\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(もし実行時間が同等であれば、fsync() は異なったファイルディスクリプタ上で\n" +"データを sync できることになります。)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"%dkB の sync なし write:\n" + +#~ msgid "Try \"%s --help\" for more information.\n" +#~ msgstr "\"%s --help\" で詳細を確認してください。\n" + +#~ msgid "%s: too many command-line arguments (first is \"%s\")\n" +#~ msgstr "%s: コマンドライン引数が多すぎます(先頭は \"%s\")\n" + +#~ msgid "seek failed" +#~ msgstr "seek 失敗" + +#~ msgid "%s: %s\n" +#~ msgstr "%s: %s\n" diff --git a/src/bin/pg_test_fsync/po/ka.po b/src/bin/pg_test_fsync/po/ka.po new file mode 100644 index 0000000..b151f70 --- /dev/null +++ b/src/bin/pg_test_fsync/po/ka.po @@ -0,0 +1,226 @@ +# Georgian message translation file for pg_test_fsync +# Copyright (C) 2022 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# Temuri Doghonadze <temuri.doghonadze@gmail.com>, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 15\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-07-02 04:51+0000\n" +"PO-Revision-Date: 2022-07-05 05:20+0200\n" +"Last-Translator: Temuri Doghonadze <temuri.doghonadze@gmail.com>\n" +"Language-Team: Georgian <nothing>\n" +"Language: ka\n" +"MIME-Version: 1.0\n" +"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.1\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "შეცდომა: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "გაფრთხილება: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "დეტალები: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "მინიშნება: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ოპ/წმ %6.0f მკწმ/ოპ\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "გაფრთხილების ძაფის შექმნა შეუძლებელია" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "გამოყენება: %s [-f ფაილისსახელი] [-s წამიტესტი]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "არასწორი არგუმენტი პარამეტრისთვის: %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "მეტი ინფორმაციისთვის სცადეთ '%s --help'." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s- %u-დან %u-მდე დიაპაზონში უნდა იყოს" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "მეტისმეტად ბევრი ბრძანების-სტრიქონის არგუმენტი (პირველია \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u second per test\n" +msgstr[1] "%u seconds per test\n" + +#: pg_test_fsync.c:216 +#, 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:218 +#, 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:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "DIRECT I/O ამ პლატფორმაზე მხარდაჭერილი არაა.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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:253 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-ის შეცდომა" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"სინქრნიზაციის მეთოდების შედარება ერთი %dკბ ჩაწერით:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"სინქრნიზაციის მეთოდების შედარება ორი %dკბ ჩაწერით:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(wal_sync_method -ის რჩეული მიმდევრობით, fdatasync-ის გარდა, რომელიც ლინუქსზე ნაგულისხმებია)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 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:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* ამ ფაილურ სისტემას და მის მიმაგრების პარამეტრებს პირდაპირი შეტანა/გამოტანის\n" +"მხარდაჭერა არ გააჩნიათ. მაგ: ext4 ჟურნალის მხარდაჭერით.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"open_sync-ის შედარება ჩაწერის სხვაფასხვა ზომებით:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(განკუთვნილია 16კბ-ის ჩაწერის ფასის გასარკვევად \n" +"open_sync-ის სხვადსხვა ზომების დროს.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16კბ open_sync ჩაწერა" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8კბ open_sync ჩაწერა" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4კბ open_sync ჩაწერა" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2კბ open_sync ჩაწერა" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1კბ open_sync ჩაწერა" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"შემოწმება, ხდება თუ არა fsync ფაილის მითითებით, რომელიც კთხვისთვისაა გახსნილი.\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(თუ დროები ჰგვანან, fsync()-ს შეუძლია მონაცემების სინქრონიზაცია,\n" +"რომელიც სხვა დესკრიპტორით ჩაიწერა)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"არასინქრონიზებული %dკბ ჩაწერები:\n" diff --git a/src/bin/pg_test_fsync/po/ko.po b/src/bin/pg_test_fsync/po/ko.po new file mode 100644 index 0000000..d26cbae --- /dev/null +++ b/src/bin/pg_test_fsync/po/ko.po @@ -0,0 +1,228 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2017 PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# Ioseph Kim <ioseph@uri.sarang.net>, 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 16\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2023-09-07 05:52+0000\n" +"PO-Revision-Date: 2023-05-30 12:39+0900\n" +"Last-Translator: Ioseph Kim <ioseph@uri.sarang.net>\n" +"Language-Team: Korean <pgsql-kr@postgresql.kr>\n" +"Language: ko\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "오류: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "경고: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "상세정보: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "힌트: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "알람용 쓰레드를 만들 수 없음" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "사용법: %s [-f 파일이름] [-s 검사초]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "%s 옵션의 잘못된 인자" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "자세한 사항은 \"%s --help\" 명령으로 살펴보세요." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s 값은 %u부터 %u까지 지정할 수 있습니다." + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "너무 많은 명령행 인자를 지정했습니다. (처음 \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "검사 간격: %u초\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "" +"이 플랫폼에서는 open_datasync, open_sync 에서 O_DIRECT 옵션을 지원함.\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "" +"이 플랫폼에서는 open_datasync, open_sync 에서 F_NOCACHE 옵션을 지원함.\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "이 플랫폼은 direct I/O 기능을 지원하지 않음.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:335 pg_test_fsync.c:357 +#: pg_test_fsync.c:381 pg_test_fsync.c:525 pg_test_fsync.c:537 +#: pg_test_fsync.c:553 pg_test_fsync.c:559 pg_test_fsync.c:581 +msgid "could not open output file" +msgstr "출력 파일을 열 수 없음" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:344 +#: pg_test_fsync.c:366 pg_test_fsync.c:390 pg_test_fsync.c:429 +#: pg_test_fsync.c:488 pg_test_fsync.c:527 pg_test_fsync.c:555 +#: pg_test_fsync.c:586 +msgid "write failed" +msgstr "쓰기 실패" + +#: pg_test_fsync.c:253 pg_test_fsync.c:368 pg_test_fsync.c:392 +#: pg_test_fsync.c:529 pg_test_fsync.c:561 +msgid "fsync failed" +msgstr "fsync 실패" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"하나의 %dkB 쓰기에 대한 파일 싱크 방법 비교:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"두개의 %dkB 쓰기에 대한 파일 싱크 방법 비교:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "" +"(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "" +"(fdatasync가 리눅스 기본값이기에 제외하고, wal_sync_method 우선으로 처리 " +"함)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:409 pg_test_fsync.c:476 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:397 pg_test_fsync.c:435 +#: pg_test_fsync.c:494 +msgid "n/a" +msgstr "n/a" + +#: pg_test_fsync.c:440 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* 이 파일 시스템과 마운트 옵션이 direct I/O 기능을 지원하지 않음\n" +" 예: journaled mode에서 ext4\n" + +#: pg_test_fsync.c:448 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"서로 다른 쓰기량으로 open_sync 비교:\n" + +#: pg_test_fsync.c:449 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(서로 다른 크기로 16kB를 쓰는데, open_sync 옵션을 사용할 때의 비용 비교)\n" + +#: pg_test_fsync.c:452 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync 쓰기" + +#: pg_test_fsync.c:453 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync 쓰기" + +#: pg_test_fsync.c:454 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync 쓰기" + +#: pg_test_fsync.c:455 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync 쓰기" + +#: pg_test_fsync.c:456 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync 쓰기" + +#: pg_test_fsync.c:510 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"쓰기 방지 파일에서 fsync 작동 여부 검사:\n" + +#: pg_test_fsync.c:511 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(이 값이 비슷하다면, fsync() 호출로 여러 파일 상태에 대해서 sync를 사용\n" +"할 수 있음.)\n" + +#: pg_test_fsync.c:576 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Non-sync %dkB 쓰기:\n" diff --git a/src/bin/pg_test_fsync/po/meson.build b/src/bin/pg_test_fsync/po/meson.build new file mode 100644 index 0000000..46d0ac5 --- /dev/null +++ b/src/bin/pg_test_fsync/po/meson.build @@ -0,0 +1,3 @@ +# Copyright (c) 2022-2023, PostgreSQL Global Development Group + +nls_targets += [i18n.gettext('pg_test_fsync-' + pg_version_major.to_string())] diff --git a/src/bin/pg_test_fsync/po/pl.po b/src/bin/pg_test_fsync/po/pl.po new file mode 100644 index 0000000..1554043 --- /dev/null +++ b/src/bin/pg_test_fsync/po/pl.po @@ -0,0 +1,189 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2017 PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# grzegorz <begina.felicysym@wp.eu>, 2017. +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 10\n" +"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n" +"POT-Creation-Date: 2017-03-14 17:46+0000\n" +"PO-Revision-Date: 2017-03-14 19:29+0200\n" +"Last-Translator: grzegorz <begina.felicysym@wp.eu>\n" +"Language-Team: begina.felicysym@wp.eu\n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" +"X-Generator: Virtaal 0.7.1\n" + +#: pg_test_fsync.c:47 +#, c-format +msgid "Cannot create thread for alarm\n" +msgstr "Nie da się utworzyć wątku dla alarmu\n" + +#: pg_test_fsync.c:152 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Składnia: %s [-f NAZWAPLIKU] [-s SEK-NA-TEST]\n" + +#: pg_test_fsync.c:176 pg_test_fsync.c:188 +#, c-format +msgid "Try \"%s --help\" for more information.\n" +msgstr "Użyj \"%s --help\" aby uzyskać więcej informacji.\n" + +#: pg_test_fsync.c:186 +#, c-format +msgid "%s: too many command-line arguments (first is \"%s\")\n" +msgstr "%s: za duża ilość parametrów (pierwszy to \"%s\")\n" + +#: pg_test_fsync.c:193 +#, c-format +msgid "%d seconds per test\n" +msgstr "%d sekund na test\n" + +#: pg_test_fsync.c:195 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT wspierane na tej platformie dla open_datasync i open_sync.\n" + +#: pg_test_fsync.c:197 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Bezpośrednie We/Wy nie jest wspierane na tej platformie.\n" + +#: pg_test_fsync.c:222 pg_test_fsync.c:286 pg_test_fsync.c:310 +#: pg_test_fsync.c:333 pg_test_fsync.c:474 pg_test_fsync.c:486 +#: pg_test_fsync.c:502 pg_test_fsync.c:508 pg_test_fsync.c:533 +msgid "could not open output file" +msgstr "nie można otworzyć pliku wyjścia" + +#: pg_test_fsync.c:225 pg_test_fsync.c:267 pg_test_fsync.c:292 +#: pg_test_fsync.c:316 pg_test_fsync.c:339 pg_test_fsync.c:377 +#: pg_test_fsync.c:435 pg_test_fsync.c:476 pg_test_fsync.c:504 +#: pg_test_fsync.c:535 +msgid "write failed" +msgstr "niepowodzenie zapisu" + +#: pg_test_fsync.c:229 pg_test_fsync.c:318 pg_test_fsync.c:341 +#: pg_test_fsync.c:478 pg_test_fsync.c:510 +msgid "fsync failed" +msgstr "niepowodzenie fsync" + +#: pg_test_fsync.c:243 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Porównanie metod sync plików używając jednego zapisu %dkB:\n" + +#: pg_test_fsync.c:245 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Porównanie metod sync plików używając dwóch zapisów %dkB:\n" + +#: pg_test_fsync.c:246 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(w porząsku preferencji wal_sync_method, poza fdatasync domyślną na " +"Linuksie)\n" + +#: pg_test_fsync.c:257 pg_test_fsync.c:360 pg_test_fsync.c:426 +msgid "n/a*\n" +msgstr "nd.*\n" + +#: pg_test_fsync.c:269 pg_test_fsync.c:295 pg_test_fsync.c:320 +#: pg_test_fsync.c:343 pg_test_fsync.c:379 pg_test_fsync.c:437 +msgid "seek failed" +msgstr "niepowodzenie pozycjonowania" + +#: pg_test_fsync.c:275 pg_test_fsync.c:300 pg_test_fsync.c:348 +#: pg_test_fsync.c:385 pg_test_fsync.c:443 +msgid "n/a\n" +msgstr "nd.\n" + +#: pg_test_fsync.c:390 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Ten system plików i jego opcje systemowe mount nie obsługują\n" +" bezpośredniego We/Wy, np. ext4 trybie dziennikowym.\n" + +#: pg_test_fsync.c:398 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Porównanie open_sync z różnymi długościami zapisu:\n" + +#: pg_test_fsync.c:399 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Zaprojektowano to dla porównanie kosztów zapisu 16kB w różnych \n" +"długościach zapisu open_sync.)\n" + +#: pg_test_fsync.c:402 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB zapis open_sync" + +#: pg_test_fsync.c:403 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB zapis open_sync" + +#: pg_test_fsync.c:404 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB zapis open_sync" + +#: pg_test_fsync.c:405 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB zapis open_sync" + +#: pg_test_fsync.c:406 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB zapis open_sync" + +#: pg_test_fsync.c:459 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Test czy jest honorowany fsync na niezapisywalnym deskryptorze pliku:\n" + +#: pg_test_fsync.c:460 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Jeśli czasy są podobne, fsync() może sync dane zapisane na innym\n" +"deskryptorze.)\n" + +#: pg_test_fsync.c:525 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Nie-syncowane zapisy %dkB:\n" + +#: pg_test_fsync.c:602 +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" diff --git a/src/bin/pg_test_fsync/po/pt_BR.po b/src/bin/pg_test_fsync/po/pt_BR.po new file mode 100644 index 0000000..e75dcd2 --- /dev/null +++ b/src/bin/pg_test_fsync/po/pt_BR.po @@ -0,0 +1,227 @@ +# Brazilian Portuguese message translation file for pg_test_fsync +# +# Copyright (C) 2023 PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# +# Euler Taveira <euler@eulerto.com>, 2023-2024. +# +msgid "" +msgstr "" +"Project-Id-Version: PostgreSQL 16\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2024-01-02 13:02-0300\n" +"PO-Revision-Date: 2023-09-27 18:50-0300\n" +"Last-Translator: Euler Taveira <euler@eulerto.com>\n" +"Language-Team: Brazilian Portuguese <pgsql-translators@postgresql.org>\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n>1);\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "erro: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "aviso: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "detalhe: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "dica: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/seg %6.0f usecs/op\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "não pôde criar thread para alarme" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Uso: %s [-f ARQUIVO] [-s SEGS-POR-TESTE]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "argumento inválido para opção %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Tente \"%s --help\" para obter informações adicionais." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s deve estar no intervalo de %u..%u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "muitos argumentos de linha de comando (primeiro é \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u segundo por teste\n" +msgstr[1] "%u segundos por teste\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT suportado nesta plataforma para open_datasync e open_sync.\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "F_NOCACHE suportado nesta plataforma para open_datasync e open_sync.\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Direct I/O não é suportado nesta plataforma.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:335 pg_test_fsync.c:357 +#: pg_test_fsync.c:381 pg_test_fsync.c:525 pg_test_fsync.c:537 +#: pg_test_fsync.c:553 pg_test_fsync.c:559 pg_test_fsync.c:581 +msgid "could not open output file" +msgstr "não pôde abrir arquivo de saída" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:344 +#: pg_test_fsync.c:366 pg_test_fsync.c:390 pg_test_fsync.c:429 +#: pg_test_fsync.c:488 pg_test_fsync.c:527 pg_test_fsync.c:555 +#: pg_test_fsync.c:586 +msgid "write failed" +msgstr "escrita falhou" + +#: pg_test_fsync.c:253 pg_test_fsync.c:368 pg_test_fsync.c:392 +#: pg_test_fsync.c:529 pg_test_fsync.c:561 +msgid "fsync failed" +msgstr "fsync falhou" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Compara métodos de sincronização de arquivos utilizando uma escrita de %dkB:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Compara métodos de sincronização de arquivos utilizando duas escritas de %dkB:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(em ordem de preferência do wal_sync_method, exceto fdatasync que é o padrão do Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:409 pg_test_fsync.c:476 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:397 pg_test_fsync.c:435 +#: pg_test_fsync.c:494 +msgid "n/a" +msgstr "n/a" + +#: pg_test_fsync.c:440 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Este sistema de arquivos e suas opções de montagem não suportam\n" +" direct I/O, e.g. ext4 em modo journal.\n" + +#: pg_test_fsync.c:448 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Compara open_sync com diferentes tamanhos de escrita:\n" + +#: pg_test_fsync.c:449 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Isso é projetado para comparar o custo de escrita de 16jB em diferentes tamanhos\n" +"de escrita com open_sync.)\n" + +#: pg_test_fsync.c:452 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * escrita de 16kB open_sync" + +#: pg_test_fsync.c:453 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * escritas de 8kB open_sync" + +#: pg_test_fsync.c:454 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * escritas de 4kB open_sync" + +#: pg_test_fsync.c:455 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * escritas de 2kB open_sync" + +#: pg_test_fsync.c:456 +msgid "16 * 1kB open_sync writes" +msgstr "16 * escritas de 1kB open_sync" + +#: pg_test_fsync.c:510 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Testar se o fsync em um descritor de arquivo sem escrita é respeitado:\n" + +#: pg_test_fsync.c:511 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Se os tempos são similares, fsync() pode sincronizar dados escritos em um\n" +"descritor diferente.)\n" + +#: pg_test_fsync.c:576 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Escritas de %dkB não sincronizadas:\n" diff --git a/src/bin/pg_test_fsync/po/ru.po b/src/bin/pg_test_fsync/po/ru.po new file mode 100644 index 0000000..3ee354d --- /dev/null +++ b/src/bin/pg_test_fsync/po/ru.po @@ -0,0 +1,238 @@ +# Russian message translation file for pg_test_fsync +# Copyright (C) 2017 PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# Alexander Lakhin <a.lakhin@postgrespro.ru>, 2017, 2021, 2022. +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 10\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2023-08-28 07:59+0300\n" +"PO-Revision-Date: 2022-09-05 13:36+0300\n" +"Last-Translator: Alexander Lakhin <exclusion@gmail.com>\n" +"Language-Team: Russian <pgsql-ru-general@postgresql.org>\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"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 +#, c-format +msgid "error: " +msgstr "ошибка: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "предупреждение: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "подробности: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "подсказка: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f оп/с %6.0f мкс/оп\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "не удалось создать поток для обработки сигналов" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Использование: %s [-f ИМЯ_ФАЙЛА ] [-s ТЕСТ_СЕК]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "недопустимый аргумент параметра %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Для дополнительной информации попробуйте \"%s --help\"." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "значение %s должно быть в диапазоне %u..%u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "слишком много аргументов командной строки (первый: \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "на тест отводится %u сек.\n" +msgstr[1] "на тест отводится %u сек.\n" +msgstr[2] "на тест отводится %u сек.\n" + +#: pg_test_fsync.c:216 +#, 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:218 +#, 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:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Прямой ввод/вывод не поддерживается на этой платформе.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:335 pg_test_fsync.c:357 +#: pg_test_fsync.c:381 pg_test_fsync.c:525 pg_test_fsync.c:537 +#: pg_test_fsync.c:553 pg_test_fsync.c:559 pg_test_fsync.c:581 +msgid "could not open output file" +msgstr "не удалось открыть выходной файл" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:344 +#: pg_test_fsync.c:366 pg_test_fsync.c:390 pg_test_fsync.c:429 +#: pg_test_fsync.c:488 pg_test_fsync.c:527 pg_test_fsync.c:555 +#: pg_test_fsync.c:586 +msgid "write failed" +msgstr "ошибка записи" + +#: pg_test_fsync.c:253 pg_test_fsync.c:368 pg_test_fsync.c:392 +#: pg_test_fsync.c:529 pg_test_fsync.c:561 +msgid "fsync failed" +msgstr "ошибка синхронизации с ФС" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Сравнение методов синхронизации файлов при однократной записи %d КБ:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Сравнение методов синхронизации файлов при двухкратной записи %d КБ:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "" +"(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "" +"(в порядке предпочтения для wal_sync_method, без учёта наибольшего " +"предпочтения fdatasync в Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:409 pg_test_fsync.c:476 +msgid "n/a*" +msgstr "н/д*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:397 pg_test_fsync.c:435 +#: pg_test_fsync.c:494 +msgid "n/a" +msgstr "н/д" + +#: pg_test_fsync.c:440 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Эта файловая система с текущими параметрами монтирования не поддерживает\n" +" прямой ввод/вывод, как например, ext4 в режиме журналирования.\n" + +#: pg_test_fsync.c:448 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Сравнение open_sync при различных объёмах записываемых данных:\n" + +#: pg_test_fsync.c:449 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Этот тест предназначен для сравнения стоимости записи 16 КБ при разных " +"размерах\n" +"записи с open_sync.)\n" + +# skip-rule: double-space +#: pg_test_fsync.c:452 +msgid " 1 * 16kB open_sync write" +msgstr "запись с open_sync 1 * 16 КБ" + +#: pg_test_fsync.c:453 +msgid " 2 * 8kB open_sync writes" +msgstr "запись с open_sync 2 * 8 КБ" + +#: pg_test_fsync.c:454 +msgid " 4 * 4kB open_sync writes" +msgstr "запись с open_sync 4 * 4 КБ" + +#: pg_test_fsync.c:455 +msgid " 8 * 2kB open_sync writes" +msgstr "запись с open_sync 8 * 2 КБ" + +#: pg_test_fsync.c:456 +msgid "16 * 1kB open_sync writes" +msgstr "запись с open_sync 16 * 1 КБ" + +#: pg_test_fsync.c:510 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Проверка, производится ли fsync с указателем файла, открытого не для " +"записи:\n" + +#: pg_test_fsync.c:511 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Если длительность примерно одинаковая, fsync() может синхронизировать " +"данные,\n" +"записанные через другой дескриптор.)\n" + +#: pg_test_fsync.c:576 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Несинхронизированная запись %d КБ:\n" + +#~ msgid "seek failed" +#~ msgstr "ошибка позиционирования" diff --git a/src/bin/pg_test_fsync/po/sv.po b/src/bin/pg_test_fsync/po/sv.po new file mode 100644 index 0000000..45f059e --- /dev/null +++ b/src/bin/pg_test_fsync/po/sv.po @@ -0,0 +1,229 @@ +# Swedish message translation file for pg_test_fsync +# Copyright (C) 2017 PostgreSQL Global Development Group +# This file is distributed under the same license as the PostgreSQL package. +# Dennis Björklund <db@zigo.dhs.org>, 2017, 2018, 2019, 2020, 2021, 2022. +# +msgid "" +msgstr "" +"Project-Id-Version: PostgreSQL 15\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-05-09 18:51+0000\n" +"PO-Revision-Date: 2022-05-09 21:44+0200\n" +"Last-Translator: Dennis Björklund <db@zigo.dhs.org>\n" +"Language-Team: Swedish <pgsql-translators@postgresql.org>\n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../../src/common/logging.c:277 +#, c-format +msgid "error: " +msgstr "fel: " + +#: ../../../src/common/logging.c:284 +#, c-format +msgid "warning: " +msgstr "varning: " + +#: ../../../src/common/logging.c:295 +#, c-format +msgid "detail: " +msgstr "detalj: " + +#: ../../../src/common/logging.c:302 +#, c-format +msgid "hint: " +msgstr "tips: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sek %6.0f useks/op\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "kunde inte skapa alarmtråd" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Användning: %s [-f FILENAMN] [-s SEK-PER-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "ogiltigt argument för flaggan %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Försök med \"%s --help\" för mer information." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s måste vara i intervallet %u..%u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "för många kommandoradsargument (första är \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u sekund per test\n" +msgstr[1] "%u sekunder per test\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT stöds på denna plattform för open_datasync och open_sync.\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "F_NOCACHE stöds på denna plattform för open_datasync och open_sync.\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Direkt I/O stöds inte på denna plattform.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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 "kunde inte öppna utdatafil" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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 "skrivning misslyckades" + +#: pg_test_fsync.c:253 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 misslyckades" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Jämför filsynkningsmetoder genom att använda en %dkB-skrivning:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Jämför filsynkningsmetoder genom att använda två %dkB-skrivningar:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(i wal_sync_method inställningsordning, förutom att fdatasync är standard i Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "ej tillämpbar*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 pg_test_fsync.c:401 +#: pg_test_fsync.c:439 pg_test_fsync.c:498 +msgid "n/a" +msgstr "ej tillämpbar" + +#: pg_test_fsync.c:444 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Detta filsystem och dess monteringsflaffor stöder inte\n" +" direkt I/O, t.ex. ext4 i journalläge.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"Jämför open_sync med olika skrivstorlekar:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Detta är gjort för att jämföra kostnaden att skriva 16kB med olika\n" +"open_sync skrivstorlekar.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync skrivning" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync skrivningar" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync skrivningar" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync skrivningar" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync skrivningar" + +#: pg_test_fsync.c:514 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Testa om fsync på en icke skrivbar fildeskriptor respekteras:\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Om tiderna är liknande, så kan fsync() synka data skriven på\n" +"olika deskriptorer.)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Icke-synkade %dkB-skrivningar:\n" + +#, c-format +#~ msgid "Try \"%s --help\" for more information.\n" +#~ msgstr "Försök med \"%s --help\" för mer information.\n" diff --git a/src/bin/pg_test_fsync/po/tr.po b/src/bin/pg_test_fsync/po/tr.po new file mode 100644 index 0000000..12f0e28 --- /dev/null +++ b/src/bin/pg_test_fsync/po/tr.po @@ -0,0 +1,194 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2017 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2017. +# Abdullah GÜLNER <agulner@gmail.com>, 2017, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 10\n" +"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n" +"POT-Creation-Date: 2018-11-28 12:46+0000\n" +"PO-Revision-Date: 2018-11-28 17:01+0300\n" +"Last-Translator: Abdullah Gülner\n" +"Language-Team: Turkish <ceviri@postgresql.org.tr>\n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 1.8.7.1\n" + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:30 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:49 +#, c-format +msgid "Could not create thread for alarm\n" +msgstr "Alarm için thread oluşturulamadı\n" + +#: pg_test_fsync.c:154 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Kullanımı: %s [-f DOSYAADI] [-s TEST-BASINA-SANIYE]\n" + +#: pg_test_fsync.c:178 pg_test_fsync.c:190 +#, c-format +msgid "Try \"%s --help\" for more information.\n" +msgstr "Daha fazla bilgi için \"%s --help\" yazın\n" + +#: pg_test_fsync.c:188 +#, c-format +msgid "%s: too many command-line arguments (first is \"%s\")\n" +msgstr "%s: Çok fazla komut satırı girdisi var (ilki \"%s\")\n" + +#: pg_test_fsync.c:195 +#, c-format +msgid "%d second per test\n" +msgid_plural "%d seconds per test\n" +msgstr[0] "test başına %d saniye\n" + +#: pg_test_fsync.c:200 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "Bu platformda open_datasync ve open_sync için O_DIRECT destekleniyor.\n" + +#: pg_test_fsync.c:202 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Doğrudan I/O bu platformda desteklenmiyor.\n" + +#: pg_test_fsync.c:227 pg_test_fsync.c:292 pg_test_fsync.c:316 +#: pg_test_fsync.c:339 pg_test_fsync.c:480 pg_test_fsync.c:492 +#: pg_test_fsync.c:508 pg_test_fsync.c:514 pg_test_fsync.c:539 +msgid "could not open output file" +msgstr "çıktı dosyası açılamadı" + +#: pg_test_fsync.c:231 pg_test_fsync.c:273 pg_test_fsync.c:298 +#: pg_test_fsync.c:322 pg_test_fsync.c:345 pg_test_fsync.c:383 +#: pg_test_fsync.c:441 pg_test_fsync.c:482 pg_test_fsync.c:510 +#: pg_test_fsync.c:541 +msgid "write failed" +msgstr "yazma başarısız oldu" + +#: pg_test_fsync.c:235 pg_test_fsync.c:324 pg_test_fsync.c:347 +#: pg_test_fsync.c:484 pg_test_fsync.c:516 +msgid "fsync failed" +msgstr "fsync başarısız oldu" + +#: pg_test_fsync.c:249 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"Dosya sync yöntemlerini bir %dkB yazma kullanarak karşılaştır\n" + +#: pg_test_fsync.c:251 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"Dosya sync yöntemlerini iki %dkB yazma kullanarak karşılaştır\n" + +#: pg_test_fsync.c:252 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(wal_sync_method tercih sırasında, fdatadync'in Linux'un varsayılanı olması dışında)\n" + +#: pg_test_fsync.c:263 pg_test_fsync.c:366 pg_test_fsync.c:432 +msgid "n/a*" +msgstr "n/a* (uygulanamaz)" + +#: pg_test_fsync.c:275 pg_test_fsync.c:301 pg_test_fsync.c:326 +#: pg_test_fsync.c:349 pg_test_fsync.c:385 pg_test_fsync.c:443 +msgid "seek failed" +msgstr "arama başarıız oldu" + +#: pg_test_fsync.c:281 pg_test_fsync.c:306 pg_test_fsync.c:354 +#: pg_test_fsync.c:391 pg_test_fsync.c:449 +msgid "n/a" +msgstr "n/a (uygulanamaz)" + +#: pg_test_fsync.c:396 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Bu dosya sistemi ve bağlama (mount) seçenekleri doğrudan I/O\n" +" desteklemiyor, örn: günlüklü modda ext4.\n" + +#: pg_test_fsync.c:404 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"open_sync ile farklı yazma boyutlarını kıyaslayın\n" + +#: pg_test_fsync.c:405 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Bu, farklı write open-sync boyutlarında 16kB yazma maliyetini karşılaştırmak\n" +"için tasarlanmıştır.)\n" + +#: pg_test_fsync.c:408 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync yazma" + +#: pg_test_fsync.c:409 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync yazma" + +#: pg_test_fsync.c:410 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync yazma" + +#: pg_test_fsync.c:411 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync yazma" + +#: pg_test_fsync.c:412 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync yazma" + +#: pg_test_fsync.c:465 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" + +#: pg_test_fsync.c:466 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Zamanlar benzerse, fsync() farklı bir tanımlayıcıda (descriptor) yazılmış veriyi\n" +"senkronize edebilir.)\n" + +#: pg_test_fsync.c:531 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"sync edilmemiş %dkB yazma:\n" + +#: pg_test_fsync.c:608 +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" diff --git a/src/bin/pg_test_fsync/po/uk.po b/src/bin/pg_test_fsync/po/uk.po new file mode 100644 index 0000000..00a789b --- /dev/null +++ b/src/bin/pg_test_fsync/po/uk.po @@ -0,0 +1,211 @@ +msgid "" +msgstr "" +"Project-Id-Version: postgresql\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2022-08-12 10:51+0000\n" +"PO-Revision-Date: 2022-09-13 11:52\n" +"Last-Translator: \n" +"Language-Team: Ukrainian\n" +"Language: uk_UA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=((n%10==1 && n%100!=11) ? 0 : ((n%10 >= 2 && n%10 <=4 && (n%100 < 12 || n%100 > 14)) ? 1 : ((n%10 == 0 || (n%10 >= 5 && n%10 <=9)) || (n%100 >= 11 && n%100 <= 14)) ? 2 : 3));\n" +"X-Crowdin-Project: postgresql\n" +"X-Crowdin-Project-ID: 324573\n" +"X-Crowdin-Language: uk\n" +"X-Crowdin-File: /REL_15_STABLE/pg_test_fsync.pot\n" +"X-Crowdin-File-ID: 886\n" + +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "помилка: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "попередження: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "деталі: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "підказка: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f оп/с %6.0f мкс/оп\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "не вдалося створити потік для сигналізації" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Використання: %s [-f FILENAME] [-s SECS-PER-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "неприпустимий аргумент для параметру %s" + +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "Спробуйте \"%s --help\" для додаткової інформації." + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s має бути в діапазоні %u..%u" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "забагато аргументів у командному рядку (перший \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "%u секунда на тест\n" +msgstr[1] "%u секунди на тест\n" +msgstr[2] "%u секунд на тест\n" +msgstr[3] "%u секунд на тест\n" + +#: pg_test_fsync.c:216 +#, 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:218 +#, 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:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "Пряме введення/виведення не підтримується на цій платформі.\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:336 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:249 pg_test_fsync.c:319 pg_test_fsync.c:345 +#: 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:253 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" + +#: pg_test_fsync.c:292 +#, c-format +msgid "\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "\n" +"Порівнювання методів синхронізації файлу, використовуючи один запис %dkB:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "\n" +"Порівнювання методів синхронізації файлу, використовуючи два записи %dkB: \n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(в порядку переваги для wal_sync_method, окрім переваги fdatasync в Linux)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:413 pg_test_fsync.c:480 +msgid "n/a*" +msgstr "н/д*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:351 pg_test_fsync.c:401 +#: pg_test_fsync.c:439 pg_test_fsync.c:498 +msgid "n/a" +msgstr "н/д" + +#: pg_test_fsync.c:444 +#, c-format +msgid "* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "* Ця файлова система з поточними параметрами монтування не підтримує\n" +" пряме введення/виведення, наприклад, ext4 в режимі журналювання.\n" + +#: pg_test_fsync.c:452 +#, c-format +msgid "\n" +"Compare open_sync with different write sizes:\n" +msgstr "\n" +"Порівняння open_sync з різними розмірами записування:\n" + +#: pg_test_fsync.c:453 +#, c-format +msgid "(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "(Це створено для порівняння вартості запису 16 КБ з різними розмірами\n" +"записування open_sync.)\n" + +#: pg_test_fsync.c:456 +msgid " 1 * 16kB open_sync write" +msgstr " запис з open_sync 1 * 16 КБ" + +#: pg_test_fsync.c:457 +msgid " 2 * 8kB open_sync writes" +msgstr " запис з open_sync 2 * 8 КБ" + +#: pg_test_fsync.c:458 +msgid " 4 * 4kB open_sync writes" +msgstr " запис з open_sync 4 * 4 КБ" + +#: pg_test_fsync.c:459 +msgid " 8 * 2kB open_sync writes" +msgstr " запис з open_sync 8 * 2 КБ" + +#: pg_test_fsync.c:460 +msgid "16 * 1kB open_sync writes" +msgstr "запис з open_sync 16 * 1 КБ" + +#: pg_test_fsync.c:514 +#, c-format +msgid "\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "\n" +"Перевірка, чи здійснюється fsync з дескриптором файлу, відкритого не для запису:\n" + +#: pg_test_fsync.c:515 +#, c-format +msgid "(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "(Якщо час однаковий, fsync() може синхронізувати дані, записані іншим дескриптором.)\n" + +#: pg_test_fsync.c:580 +#, c-format +msgid "\n" +"Non-sync'ed %dkB writes:\n" +msgstr "\n" +"Несинхронізований запис %d КБ:\n" + diff --git a/src/bin/pg_test_fsync/po/vi.po b/src/bin/pg_test_fsync/po/vi.po new file mode 100644 index 0000000..32a5b54 --- /dev/null +++ b/src/bin/pg_test_fsync/po/vi.po @@ -0,0 +1,195 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2018 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# FIRST AUTHOR <kakalot49@gmail.com>, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 11\n" +"Report-Msgid-Bugs-To: pgsql-bugs@postgresql.org\n" +"POT-Creation-Date: 2018-04-22 12:17+0000\n" +"PO-Revision-Date: 2018-04-30 00:47+0900\n" +"Language-Team: <pgvn_translators@postgresql.vn>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 2.0.6\n" +"Last-Translator: Dang Minh Huong <kakalot49@gmail.com>\n" +"Language: vi_VN\n" + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:30 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f thao tác/giây %6.0f micro giây/thao tác\n" + +#: pg_test_fsync.c:49 +#, c-format +msgid "Could not create thread for alarm\n" +msgstr "Không thể tạo luồng sử dụng cho alarm\n" + +#: pg_test_fsync.c:154 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "Cách sử dụng: %s [-f TÊN FILE] [-s SỐ GIÂY CHO MỘT KIỂM TRA]\n" + +#: pg_test_fsync.c:178 pg_test_fsync.c:190 +#, c-format +msgid "Try \"%s --help\" for more information.\n" +msgstr "Hãy thử \"%s --help\" để biết thêm thông tin.\n" + +#: pg_test_fsync.c:188 +#, c-format +msgid "%s: too many command-line arguments (first is \"%s\")\n" +msgstr "%s: quá nhiều đối số cho câu lệnh (đầu tiên là \"%s\")\n" + +#: pg_test_fsync.c:195 +#, c-format +msgid "%d second per test\n" +msgid_plural "%d seconds per test\n" +msgstr[0] "%d giây cho mỗi kiểm tra\n" + +#: pg_test_fsync.c:200 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "O_DIRECT được hỗ trợ trên hệ điều hành này cho open_datasync và open_sync.\n" + +#: pg_test_fsync.c:202 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "I/O trực tiếp không được hỗ trợ trên hệ điều hành này.\n" + +#: pg_test_fsync.c:227 pg_test_fsync.c:292 pg_test_fsync.c:316 +#: pg_test_fsync.c:339 pg_test_fsync.c:480 pg_test_fsync.c:492 +#: pg_test_fsync.c:508 pg_test_fsync.c:514 pg_test_fsync.c:539 +msgid "could not open output file" +msgstr "không thể mở tập tin đầu ra" + +#: pg_test_fsync.c:231 pg_test_fsync.c:273 pg_test_fsync.c:298 +#: pg_test_fsync.c:322 pg_test_fsync.c:345 pg_test_fsync.c:383 +#: pg_test_fsync.c:441 pg_test_fsync.c:482 pg_test_fsync.c:510 +#: pg_test_fsync.c:541 +msgid "write failed" +msgstr "viết không thành công" + +#: pg_test_fsync.c:235 pg_test_fsync.c:324 pg_test_fsync.c:347 +#: pg_test_fsync.c:484 pg_test_fsync.c:516 +msgid "fsync failed" +msgstr "đồng bộ không thành công" + +#: pg_test_fsync.c:249 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"So sánh các phương pháp đồng bộ hóa tệp sử dụng viết một %dkB:\n" + +#: pg_test_fsync.c:251 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"So sánh các phương pháp đồng bộ hóa tệp sử dụng viết hai %dkB:\n" + +#: pg_test_fsync.c:252 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(theo thứ tự ưu tiên tham số wal_sync_method, ngoại trừ fdatasync là mặc định của Linux)\n" + +#: pg_test_fsync.c:263 pg_test_fsync.c:366 pg_test_fsync.c:432 +msgid "n/a*" +msgstr "không khả dụng*" + +#: pg_test_fsync.c:275 pg_test_fsync.c:301 pg_test_fsync.c:326 +#: pg_test_fsync.c:349 pg_test_fsync.c:385 pg_test_fsync.c:443 +msgid "seek failed" +msgstr "seek lỗi" + +#: pg_test_fsync.c:281 pg_test_fsync.c:306 pg_test_fsync.c:354 +#: pg_test_fsync.c:391 pg_test_fsync.c:449 +msgid "n/a" +msgstr "không khả dụng" + +#: pg_test_fsync.c:396 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* Hệ thống tệp này và tùy chọn mount không hỗ trợ I/O trực tiếp\n" +" ví dụ: ext4 trong chế độ journaled.\n" + +#: pg_test_fsync.c:404 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"So sánh open_sync với các kích thước ghi khác nhau:\n" + +#: pg_test_fsync.c:405 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "" +"(Điều này được thiết kế để so sánh cost của việc viết 16kB trong các \n" +"kích thước open_sync khác nhau.)\n" + +#: pg_test_fsync.c:408 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync write" + +#: pg_test_fsync.c:409 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync writes" + +#: pg_test_fsync.c:410 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync writes" + +#: pg_test_fsync.c:411 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync writes" + +#: pg_test_fsync.c:412 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync writes" + +#: pg_test_fsync.c:465 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"Kiểm tra xem fsync trên tệp descrtiptor không ghi có tốt không:\n" + +#: pg_test_fsync.c:466 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "" +"(Nếu số lần là tương đương, fsync() có thể đồng bộ dữ liệu được ghi ở \n" +"descriptor khác.)\n" + +#: pg_test_fsync.c:531 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"Viết %dkB không sync:\n" + +#: pg_test_fsync.c:608 +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" diff --git a/src/bin/pg_test_fsync/po/zh_CN.po b/src/bin/pg_test_fsync/po/zh_CN.po new file mode 100644 index 0000000..6331efd --- /dev/null +++ b/src/bin/pg_test_fsync/po/zh_CN.po @@ -0,0 +1,176 @@ +# LANGUAGE message translation file for pg_test_fsync +# Copyright (C) 2019 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# FIRST AUTHOR <zhangjie2@cn.fujitsu.com>, 2019. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 12\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2019-05-22 17:56+0800\n" +"PO-Revision-Date: 2019-05-31 18:00+0800\n" +"Last-Translator: Jie Zhang <zhangjie2@cn.fujitsu.com>\n" +"Language-Team: Chinese (Simplified) <zhangjie2@cn.fujitsu.com>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:31 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:157 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "用法: %s [-f 文件名] [-s 每次测试的秒数]\n" + +#: pg_test_fsync.c:181 pg_test_fsync.c:192 +#, c-format +msgid "Try \"%s --help\" for more information.\n" +msgstr "请用 \"%s --help\" 获取更多的信息.\n" + +#: pg_test_fsync.c:197 +#, c-format +msgid "%d second per test\n" +msgid_plural "%d seconds per test\n" +msgstr[0] "%d 每次测试的秒数\n" +msgstr[1] "%d 每次测试的秒数\n" + +#: pg_test_fsync.c:202 +#, 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:204 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "此平台不支持直接I/O.\n" + +#: pg_test_fsync.c:229 pg_test_fsync.c:294 pg_test_fsync.c:318 +#: pg_test_fsync.c:341 pg_test_fsync.c:482 pg_test_fsync.c:494 +#: pg_test_fsync.c:510 pg_test_fsync.c:516 pg_test_fsync.c:541 +msgid "could not open output file" +msgstr "无法打开输出文件" + +#: pg_test_fsync.c:233 pg_test_fsync.c:275 pg_test_fsync.c:300 +#: pg_test_fsync.c:324 pg_test_fsync.c:347 pg_test_fsync.c:385 +#: pg_test_fsync.c:443 pg_test_fsync.c:484 pg_test_fsync.c:512 +#: pg_test_fsync.c:543 +msgid "write failed" +msgstr "写入失败" + +#: pg_test_fsync.c:237 pg_test_fsync.c:326 pg_test_fsync.c:349 +#: pg_test_fsync.c:486 pg_test_fsync.c:518 +msgid "fsync failed" +msgstr "fsync失败" + +#: pg_test_fsync.c:251 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"使用一个%dkB写操作比较文件同步方法:\n" + +#: pg_test_fsync.c:253 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"使用两个%dkB写操作比较文件同步方法:\n" + +#: pg_test_fsync.c:254 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(按照wal_sync_method首选顺序,fdatasync是Linux的默认值除外)\n" + +#: pg_test_fsync.c:265 pg_test_fsync.c:368 pg_test_fsync.c:434 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:277 pg_test_fsync.c:303 pg_test_fsync.c:328 +#: pg_test_fsync.c:351 pg_test_fsync.c:387 pg_test_fsync.c:445 +msgid "seek failed" +msgstr "查找失败" + +#: pg_test_fsync.c:283 pg_test_fsync.c:308 pg_test_fsync.c:356 +#: pg_test_fsync.c:393 pg_test_fsync.c:451 +msgid "n/a" +msgstr "n/a" + +#: pg_test_fsync.c:398 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "" +"* 此文件系统及其安装选项不支持直接I/O\n" +" 例如. ext4 在 journaled 模式.\n" + +#: pg_test_fsync.c:406 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"在不同的写入大小的情况下比较open_sync:\n" + +#: pg_test_fsync.c:407 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "这是为了比较在写入不同的open_sync大小的情况下写入16kB的时间花费\n" + +#: pg_test_fsync.c:410 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync写入" + +#: pg_test_fsync.c:411 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync写入" + +#: pg_test_fsync.c:412 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync写入" + +#: pg_test_fsync.c:413 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync写入" + +#: pg_test_fsync.c:414 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync写入" + +#: pg_test_fsync.c:467 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"测试是否支持非写文件描述符上的fsync:\n" + +#: pg_test_fsync.c:468 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "(如果时间相似,fsync()可以同步写在不同描述符上的数据.)\n" + +#: pg_test_fsync.c:533 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"不同步的写入 %dkB :\n" diff --git a/src/bin/pg_test_fsync/po/zh_TW.po b/src/bin/pg_test_fsync/po/zh_TW.po new file mode 100644 index 0000000..2a78535 --- /dev/null +++ b/src/bin/pg_test_fsync/po/zh_TW.po @@ -0,0 +1,221 @@ +# Traditional Chinese message translation file for pg_test_fsync +# Copyright (C) 2023 PostgreSQL Global Development Group +# This file is distributed under the same license as the pg_test_fsync (PostgreSQL) package. +# Zhenbang Wei <znbang@gmail.com>, 2023. +# +msgid "" +msgstr "" +"Project-Id-Version: pg_test_fsync (PostgreSQL) 16\n" +"Report-Msgid-Bugs-To: pgsql-bugs@lists.postgresql.org\n" +"POT-Creation-Date: 2023-09-11 20:52+0000\n" +"PO-Revision-Date: 2023-11-06 08:49+0800\n" +"Last-Translator: Zhenbang Wei <znbang@gmail.com>\n" +"Language-Team: \n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Poedit 3.4.1\n" + +# libpq/be-secure.c:294 libpq/be-secure.c:387 +#: ../../../src/common/logging.c:276 +#, c-format +msgid "error: " +msgstr "錯誤: " + +#: ../../../src/common/logging.c:283 +#, c-format +msgid "warning: " +msgstr "警告: " + +#: ../../../src/common/logging.c:294 +#, c-format +msgid "detail: " +msgstr "詳細內容: " + +#: ../../../src/common/logging.c:301 +#, c-format +msgid "hint: " +msgstr "提示: " + +#. translator: maintain alignment with NA_FORMAT +#: pg_test_fsync.c:32 +#, c-format +msgid "%13.3f ops/sec %6.0f usecs/op\n" +msgstr "%13.3f ops/sec %6.0f usecs/op\n" + +#: pg_test_fsync.c:50 +#, c-format +msgid "could not create thread for alarm" +msgstr "無法為警報建立執行緒" + +#: pg_test_fsync.c:95 +#, c-format +msgid "%s: %m" +msgstr "%s: %m" + +#: pg_test_fsync.c:159 +#, c-format +msgid "Usage: %s [-f FILENAME] [-s SECS-PER-TEST]\n" +msgstr "用法: %s [-f FILENAME] [-s SECS-PER-TEST]\n" + +#: pg_test_fsync.c:185 +#, c-format +msgid "invalid argument for option %s" +msgstr "選項 %s 的參數無效" + +# tcop/postgres.c:2636 tcop/postgres.c:2652 +#: pg_test_fsync.c:186 pg_test_fsync.c:198 pg_test_fsync.c:207 +#, c-format +msgid "Try \"%s --help\" for more information." +msgstr "用 \"%s --help\" 取得更多資訊。" + +#: pg_test_fsync.c:192 +#, c-format +msgid "%s must be in range %u..%u" +msgstr "%s 必須在範圍 %u..%u 內" + +#: pg_test_fsync.c:205 +#, c-format +msgid "too many command-line arguments (first is \"%s\")" +msgstr "命令列參數過多(第一個是 \"%s\")" + +#: pg_test_fsync.c:211 +#, c-format +msgid "%u second per test\n" +msgid_plural "%u seconds per test\n" +msgstr[0] "每個測試 %u 秒\n" + +#: pg_test_fsync.c:216 +#, c-format +msgid "O_DIRECT supported on this platform for open_datasync and open_sync.\n" +msgstr "此平臺的 open_datasync 和 open_sync 支援 O_DIRECT。\n" + +#: pg_test_fsync.c:218 +#, c-format +msgid "F_NOCACHE supported on this platform for open_datasync and open_sync.\n" +msgstr "此平臺的 open_datasync 和 open_sync 支援 F_NOCACHE。\n" + +#: pg_test_fsync.c:220 +#, c-format +msgid "Direct I/O is not supported on this platform.\n" +msgstr "此平臺不支援直接 I/O。\n" + +#: pg_test_fsync.c:245 pg_test_fsync.c:335 pg_test_fsync.c:357 +#: pg_test_fsync.c:381 pg_test_fsync.c:525 pg_test_fsync.c:537 +#: pg_test_fsync.c:553 pg_test_fsync.c:559 pg_test_fsync.c:581 +msgid "could not open output file" +msgstr "無法開啟輸出檔" + +#: pg_test_fsync.c:249 pg_test_fsync.c:319 pg_test_fsync.c:344 +#: pg_test_fsync.c:366 pg_test_fsync.c:390 pg_test_fsync.c:429 +#: pg_test_fsync.c:488 pg_test_fsync.c:527 pg_test_fsync.c:555 +#: pg_test_fsync.c:586 +msgid "write failed" +msgstr "寫入失敗" + +#: pg_test_fsync.c:253 pg_test_fsync.c:368 pg_test_fsync.c:392 +#: pg_test_fsync.c:529 pg_test_fsync.c:561 +msgid "fsync failed" +msgstr "fsync 失敗" + +#: pg_test_fsync.c:292 +#, c-format +msgid "" +"\n" +"Compare file sync methods using one %dkB write:\n" +msgstr "" +"\n" +"比較使用一個 %dkB 寫入的檔案同步方式:\n" + +#: pg_test_fsync.c:294 +#, c-format +msgid "" +"\n" +"Compare file sync methods using two %dkB writes:\n" +msgstr "" +"\n" +"比較使用兩個 %dkB 寫入的檔案同步方式:\n" + +#: pg_test_fsync.c:295 +#, c-format +msgid "(in wal_sync_method preference order, except fdatasync is Linux's default)\n" +msgstr "(按照 wal_sync_method 的優先順序,除了 fdatasync 是 Linux 的預設選項)\n" + +#: pg_test_fsync.c:306 pg_test_fsync.c:409 pg_test_fsync.c:476 +msgid "n/a*" +msgstr "n/a*" + +#: pg_test_fsync.c:325 pg_test_fsync.c:397 pg_test_fsync.c:435 +#: pg_test_fsync.c:494 +msgid "n/a" +msgstr "n/a" + +#: pg_test_fsync.c:440 +#, c-format +msgid "" +"* This file system and its mount options do not support direct\n" +" I/O, e.g. ext4 in journaled mode.\n" +msgstr "* 這個檔案系統及其掛載選項不支援直接 I/O,例如 ext4 的日誌模式。\n" + +#: pg_test_fsync.c:448 +#, c-format +msgid "" +"\n" +"Compare open_sync with different write sizes:\n" +msgstr "" +"\n" +"比較使用不同寫入大小的 open_sync:\n" + +#: pg_test_fsync.c:449 +#, c-format +msgid "" +"(This is designed to compare the cost of writing 16kB in different write\n" +"open_sync sizes.)\n" +msgstr "(這是為了比較在不同的 open_sync 寫入大小下寫入 16kB 的成本而設計的。)\n" + +#: pg_test_fsync.c:452 +msgid " 1 * 16kB open_sync write" +msgstr " 1 * 16kB open_sync 寫入" + +#: pg_test_fsync.c:453 +msgid " 2 * 8kB open_sync writes" +msgstr " 2 * 8kB open_sync 寫入" + +#: pg_test_fsync.c:454 +msgid " 4 * 4kB open_sync writes" +msgstr " 4 * 4kB open_sync 寫入" + +#: pg_test_fsync.c:455 +msgid " 8 * 2kB open_sync writes" +msgstr " 8 * 2kB open_sync 寫入" + +#: pg_test_fsync.c:456 +msgid "16 * 1kB open_sync writes" +msgstr "16 * 1kB open_sync 寫入" + +#: pg_test_fsync.c:510 +#, c-format +msgid "" +"\n" +"Test if fsync on non-write file descriptor is honored:\n" +msgstr "" +"\n" +"測試 fsync 非寫入檔案描述符是否被尊重:\n" + +#: pg_test_fsync.c:511 +#, c-format +msgid "" +"(If the times are similar, fsync() can sync data written on a different\n" +"descriptor.)\n" +msgstr "(如果時間相近,fsync() 可以同步被寫入不同描述符的資料。)\n" + +#: pg_test_fsync.c:576 +#, c-format +msgid "" +"\n" +"Non-sync'ed %dkB writes:\n" +msgstr "" +"\n" +"不使用同步的 %dkB 寫入:\n" diff --git a/src/bin/pg_test_fsync/t/001_basic.pl b/src/bin/pg_test_fsync/t/001_basic.pl new file mode 100644 index 0000000..401ad2c --- /dev/null +++ b/src/bin/pg_test_fsync/t/001_basic.pl @@ -0,0 +1,29 @@ + +# Copyright (c) 2021-2023, PostgreSQL Global Development Group + +use strict; +use warnings; + +use PostgreSQL::Test::Utils; +use Test::More; + +######################################### +# Basic checks + +program_help_ok('pg_test_fsync'); +program_version_ok('pg_test_fsync'); +program_options_handling_ok('pg_test_fsync'); + +######################################### +# Test invalid option combinations + +command_fails_like( + [ 'pg_test_fsync', '--secs-per-test', 'a' ], + qr/\Qpg_test_fsync: error: invalid argument for option --secs-per-test\E/, + 'pg_test_fsync: invalid argument for option --secs-per-test'); +command_fails_like( + [ 'pg_test_fsync', '--secs-per-test', '0' ], + qr/\Qpg_test_fsync: error: --secs-per-test must be in range 1..4294967295\E/, + 'pg_test_fsync: --secs-per-test must be in range'); + +done_testing(); |