diff --git a/src/backend/replication/README b/src/backend/replication/README index 419a2d74d734d17696a0a73774f7e78070791337..ad4864dbbeb8bfdd5c8e38f9e65daf7424d29944 100644 --- a/src/backend/replication/README +++ b/src/backend/replication/README @@ -16,12 +16,12 @@ bool walrcv_connect(char *conninfo, XLogRecPtr startpoint) Establish connection to the primary, and starts streaming from 'startpoint'. Returns true on success. -int walrcv_receive(char **buffer, int *wait_fd) +int walrcv_receive(char **buffer, pgsocket *wait_fd) Retrieve any message available without blocking through the connection. If a message was successfully read, returns its length. If the connection is closed, returns -1. Otherwise returns 0 -to indicate that no data is available, and sets *wait_fd to a file +to indicate that no data is available, and sets *wait_fd to a socket descriptor which can be waited on before trying again. On success, a pointer to the message payload is stored in *buffer. The returned buffer is valid until the next call to walrcv_* functions, and the diff --git a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c index a3bec498fa073a32be10784c931f141421a87161..b61e39d7d8a70263f90505769f8bc0701b3cfea3 100644 --- a/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c +++ b/src/backend/replication/libpqwalreceiver/libpqwalreceiver.c @@ -52,7 +52,7 @@ static void libpqrcv_readtimelinehistoryfile(TimeLineID tli, char **filename, ch static bool libpqrcv_startstreaming(TimeLineID tli, XLogRecPtr startpoint, char *slotname); static void libpqrcv_endstreaming(TimeLineID *next_tli); -static int libpqrcv_receive(char **buffer, int *wait_fd); +static int libpqrcv_receive(char **buffer, pgsocket *wait_fd); static void libpqrcv_send(const char *buffer, int nbytes); static void libpqrcv_disconnect(void); @@ -472,14 +472,14 @@ libpqrcv_disconnect(void) * until the next libpqrcv_* call. * * If no data was available immediately, returns 0, and *wait_fd is set to a - * file descriptor which can be waited on before trying again. + * socket descriptor which can be waited on before trying again. * * -1 if the server ended the COPY. * * ereports on error. */ static int -libpqrcv_receive(char **buffer, int *wait_fd) +libpqrcv_receive(char **buffer, pgsocket *wait_fd) { int rawlen; diff --git a/src/backend/replication/walreceiver.c b/src/backend/replication/walreceiver.c index 057c250793d2cf07aa606088e210dd11b0197740..6fd5952be711685c24c636b883f0136f56c9a659 100644 --- a/src/backend/replication/walreceiver.c +++ b/src/backend/replication/walreceiver.c @@ -379,7 +379,7 @@ WalReceiverMain(void) char *buf; int len; bool endofwal = false; - int wait_fd = PGINVALID_SOCKET; + pgsocket wait_fd = PGINVALID_SOCKET; int rc; /* diff --git a/src/include/replication/walreceiver.h b/src/include/replication/walreceiver.h index 36bcb471720806b12eb633e492445963bda3ba72..c87e7a80ad19bdfa63031b3ac2da7232900eda2f 100644 --- a/src/include/replication/walreceiver.h +++ b/src/include/replication/walreceiver.h @@ -145,7 +145,7 @@ extern PGDLLIMPORT walrcv_startstreaming_type walrcv_startstreaming; typedef void (*walrcv_endstreaming_type) (TimeLineID *next_tli); extern PGDLLIMPORT walrcv_endstreaming_type walrcv_endstreaming; -typedef int (*walrcv_receive_type) (char **buffer, int *wait_fd); +typedef int (*walrcv_receive_type) (char **buffer, pgsocket *wait_fd); extern PGDLLIMPORT walrcv_receive_type walrcv_receive; typedef void (*walrcv_send_type) (const char *buffer, int nbytes);