diff options
-rwxr-xr-x | configure | 2 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | src/backend/storage/file/fd.c | 4 | ||||
-rw-r--r-- | src/include/pg_config.h.in | 6 | ||||
-rw-r--r-- | src/include/port/pg_iovec.h | 12 | ||||
-rw-r--r-- | src/port/preadv.c | 17 | ||||
-rw-r--r-- | src/port/pwritev.c | 17 | ||||
-rw-r--r-- | src/tools/msvc/Solution.pm | 2 |
8 files changed, 9 insertions, 53 deletions
diff --git a/configure b/configure index 87b3753846c..b7a77033586 100755 --- a/configure +++ b/configure @@ -16039,7 +16039,7 @@ fi LIBS_including_readline="$LIBS" LIBS=`echo "$LIBS" | sed -e 's/-ledit//g' -e 's/-lreadline//g'` -for ac_func in backtrace_symbols clock_gettime copyfile fdatasync getifaddrs getpeerucred inet_pton kqueue mbstowcs_l memset_s posix_fallocate ppoll pthread_is_threaded_np readv setproctitle setproctitle_fast strchrnul strsignal syncfs sync_file_range uselocale wcstombs_l writev +for ac_func in backtrace_symbols clock_gettime copyfile fdatasync getifaddrs getpeerucred inet_pton kqueue mbstowcs_l memset_s posix_fallocate ppoll pthread_is_threaded_np setproctitle setproctitle_fast strchrnul strsignal syncfs sync_file_range uselocale wcstombs_l do : as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" diff --git a/configure.ac b/configure.ac index cd29d533a59..2938c9c7de7 100644 --- a/configure.ac +++ b/configure.ac @@ -1803,7 +1803,6 @@ AC_CHECK_FUNCS(m4_normalize([ posix_fallocate ppoll pthread_is_threaded_np - readv setproctitle setproctitle_fast strchrnul @@ -1812,7 +1811,6 @@ AC_CHECK_FUNCS(m4_normalize([ sync_file_range uselocale wcstombs_l - writev ])) # These typically are compiler builtins, for which AC_CHECK_FUNCS fails. diff --git a/src/backend/storage/file/fd.c b/src/backend/storage/file/fd.c index 3d1a9733549..5a2eb012381 100644 --- a/src/backend/storage/file/fd.c +++ b/src/backend/storage/file/fd.c @@ -3762,7 +3762,7 @@ data_sync_elevel(int elevel) } /* - * A convenience wrapper for pg_pwritev() that retries on partial write. If an + * A convenience wrapper for pwritev() that retries on partial write. If an * error is returned, it is unspecified how much has been written. */ ssize_t @@ -3782,7 +3782,7 @@ pg_pwritev_with_retry(int fd, const struct iovec *iov, int iovcnt, off_t offset) for (;;) { /* Write as much as we can. */ - part = pg_pwritev(fd, iov, iovcnt, offset); + part = pwritev(fd, iov, iovcnt, offset); if (part < 0) return -1; diff --git a/src/include/pg_config.h.in b/src/include/pg_config.h.in index 4d61ecd9142..dfee47a1a45 100644 --- a/src/include/pg_config.h.in +++ b/src/include/pg_config.h.in @@ -412,9 +412,6 @@ /* Define to 1 if you have the <readline/readline.h> header file. */ #undef HAVE_READLINE_READLINE_H -/* Define to 1 if you have the `readv' function. */ -#undef HAVE_READV - /* Define to 1 if you have the `rl_completion_matches' function. */ #undef HAVE_RL_COMPLETION_MATCHES @@ -643,9 +640,6 @@ /* Define to 1 if you have the <winldap.h> header file. */ #undef HAVE_WINLDAP_H -/* Define to 1 if you have the `writev' function. */ -#undef HAVE_WRITEV - /* Define to 1 if you have the `X509_get_signature_nid' function. */ #undef HAVE_X509_GET_SIGNATURE_NID diff --git a/src/include/port/pg_iovec.h b/src/include/port/pg_iovec.h index f0b1a71bcb8..f0a50c0e015 100644 --- a/src/include/port/pg_iovec.h +++ b/src/include/port/pg_iovec.h @@ -39,16 +39,12 @@ struct iovec /* Define a reasonable maximum that is safe to use on the stack. */ #define PG_IOV_MAX Min(IOV_MAX, 32) -#if HAVE_DECL_PREADV -#define pg_preadv preadv -#else -extern ssize_t pg_preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset); +#if !HAVE_DECL_PREADV +extern ssize_t preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset); #endif -#if HAVE_DECL_PWRITEV -#define pg_pwritev pwritev -#else -extern ssize_t pg_pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset); +#if !HAVE_DECL_PWRITEV +extern ssize_t pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset); #endif #endif /* PG_IOVEC_H */ diff --git a/src/port/preadv.c b/src/port/preadv.c index aa7537503fb..48b64d4593d 100644 --- a/src/port/preadv.c +++ b/src/port/preadv.c @@ -8,33 +8,19 @@ * IDENTIFICATION * src/port/preadv.c * - * Note that this implementation changes the current file position, unlike - * the POSIX-like function, so we use the name pg_preadv(). - * *------------------------------------------------------------------------- */ #include "postgres.h" -#ifdef WIN32 -#include <windows.h> -#else #include <unistd.h> -#endif #include "port/pg_iovec.h" ssize_t -pg_preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset) +preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset) { -#ifdef HAVE_READV - if (iovcnt == 1) - return pread(fd, iov[0].iov_base, iov[0].iov_len, offset); - if (lseek(fd, offset, SEEK_SET) < 0) - return -1; - return readv(fd, iov, iovcnt); -#else ssize_t sum = 0; ssize_t part; @@ -54,5 +40,4 @@ pg_preadv(int fd, const struct iovec *iov, int iovcnt, off_t offset) return sum; } return sum; -#endif } diff --git a/src/port/pwritev.c b/src/port/pwritev.c index cb7421381e4..8b303fcbcdc 100644 --- a/src/port/pwritev.c +++ b/src/port/pwritev.c @@ -8,33 +8,19 @@ * IDENTIFICATION * src/port/pwritev.c * - * Note that this implementation changes the current file position, unlike - * the POSIX-like function, so we use the name pg_pwritev(). - * *------------------------------------------------------------------------- */ #include "postgres.h" -#ifdef WIN32 -#include <windows.h> -#else #include <unistd.h> -#endif #include "port/pg_iovec.h" ssize_t -pg_pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset) +pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset) { -#ifdef HAVE_WRITEV - if (iovcnt == 1) - return pwrite(fd, iov[0].iov_base, iov[0].iov_len, offset); - if (lseek(fd, offset, SEEK_SET) < 0) - return -1; - return writev(fd, iov, iovcnt); -#else ssize_t sum = 0; ssize_t part; @@ -54,5 +40,4 @@ pg_pwritev(int fd, const struct iovec *iov, int iovcnt, off_t offset) return sum; } return sum; -#endif } diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm index 5a461a5212c..dd9d1a58ad6 100644 --- a/src/tools/msvc/Solution.pm +++ b/src/tools/msvc/Solution.pm @@ -332,7 +332,6 @@ sub GenerateFiles HAVE_READLINE_H => undef, HAVE_READLINE_HISTORY_H => undef, HAVE_READLINE_READLINE_H => undef, - HAVE_READV => undef, HAVE_RL_COMPLETION_MATCHES => undef, HAVE_RL_COMPLETION_SUPPRESS_QUOTE => undef, HAVE_RL_FILENAME_COMPLETION_FUNCTION => undef, @@ -408,7 +407,6 @@ sub GenerateFiles HAVE_WINLDAP_H => undef, HAVE_WCSTOMBS_L => 1, HAVE_VISIBILITY_ATTRIBUTE => undef, - HAVE_WRITEV => undef, HAVE_X509_GET_SIGNATURE_NID => 1, HAVE_X86_64_POPCNTQ => undef, HAVE__BOOL => undef, |