Move pg_pwritev_with_retry() to src/common/file_utils.c
This commit moves pg_pwritev_with_retry(), a convenience wrapper of
pg_writev() able to handle partial writes, to common/file_utils.c so
that the frontend code is able to use it. A first use-case targetted
for this routine is pg_basebackup and pg_receivewal, for the
zero-padding of a newly-initialized WAL segment. This is used currently
in the backend when the GUC wal_init_zero is enabled (default).
Author: Bharath Rupireddy
Reviewed-by: Nathan Bossart, Thomas Munro
Discussion: https://postgr.es/m/CALj2ACUq7nAb7=bJNbK3yYmp-SZhJcXFR_pLk8un6XgDzDF3OA@mail.gmail.com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/4ab8c81bd90ae442dbd092df04a12dbb7e68f562
Modified Files
--------------
src/backend/storage/file/fd.c | 65 ---------------------------------------
src/common/file_utils.c | 67 +++++++++++++++++++++++++++++++++++++++++
src/include/common/file_utils.h | 7 +++++
src/include/storage/fd.h | 6 ----
4 files changed, 74 insertions(+), 71 deletions(-)