Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 93badb6

Browse files
knizhnikkelvich
authored andcommitted
Merge with multimaster branch
1 parent 4e99791 commit 93badb6

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

arbiter.c

+9-9
Original file line numberDiff line numberDiff line change
@@ -429,29 +429,29 @@ static int MtmConnectSocket(int node, int port)
429429
snprintf(portstr, sizeof(portstr), "%d", port);
430430

431431
rc = pg_getaddrinfo_all(host, portstr, &hint, &addrs);
432-
if (rc != 0)
432+
if (rc != 0)
433433
{
434434
MTM_ELOG(LOG, "Arbiter failed to resolve host '%s' by name: %s", host, gai_strerror(rc));
435435
return -1;
436436
}
437437
BIT_SET(busy_mask, node);
438438

439-
Retry:
439+
Retry:
440440

441-
sd = socket(AF_INET, SOCK_STREAM, 0);
441+
sd = pg_socket(AF_INET, SOCK_STREAM, 0, MtmUseRDMA);
442442
if (sd < 0) {
443443
MTM_ELOG(LOG, "Arbiter failed to create socket: %s", strerror(errno));
444444
goto Error;
445445
}
446-
rc = fcntl(sd, F_SETFL, O_NONBLOCK);
446+
rc = pg_fcntl(sd, F_SETFL, O_NONBLOCK, MtmUseRDMA);
447447
if (rc < 0) {
448448
MTM_ELOG(LOG, "Arbiter failed to switch socket to non-blocking mode: %s", strerror(errno));
449449
goto Error;
450450
}
451451
for (addr = addrs; addr != NULL; addr = addr->ai_next)
452452
{
453453
do {
454-
rc = connect(sd, addr->ai_addr, addr->ai_addrlen);
454+
rc = pg_connect(sd, addr->ai_addr, addr->ai_addrlen, MtmUseRDMA);
455455
} while (rc < 0 && errno == EINTR);
456456

457457
if (rc >= 0 || errno == EINPROGRESS) {
@@ -491,12 +491,12 @@ static int MtmConnectSocket(int node, int port)
491491
strcpy(req.connStr, Mtm->nodes[MtmNodeId-1].con.connStr);
492492
if (!MtmWriteSocket(sd, &req, sizeof req)) {
493493
MTM_ELOG(WARNING, "Arbiter failed to send handshake message to %s:%d: %s", host, port, strerror(errno));
494-
close(sd);
494+
pg_closesocket(sd, MtmUseRDMA);
495495
goto Retry;
496496
}
497497
if (MtmReadSocket(sd, &resp, sizeof resp) != sizeof(resp)) {
498498
MTM_ELOG(WARNING, "Arbiter failed to receive response for handshake message from %s:%d: %s", host, port, strerror(errno));
499-
close(sd);
499+
pg_closesocket(sd, MtmUseRDMA);
500500
goto Retry;
501501
}
502502
if (resp.code != MSG_STATUS || resp.dxid != HANDSHAKE_MAGIC) {
@@ -580,7 +580,7 @@ static bool MtmSendToNode(int node, void const* buf, int size)
580580
if (sockets[node] < 0 || !MtmWriteSocket(sockets[node], buf, size)) {
581581
if (sockets[node] >= 0) {
582582
MTM_ELOG(WARNING, "Arbiter fail to write to node %d: %s", node+1, strerror(errno));
583-
close(sockets[node]);
583+
pg_closesocket(sockets[node], MtmUseRDMA);
584584
sockets[node] = -1;
585585
}
586586
sockets[node] = MtmConnectSocket(node, Mtm->nodes[node].con.arbiterPort);
@@ -626,7 +626,7 @@ static void MtmAcceptOneConnection()
626626
MTM_ELOG(WARNING, "Arbiter failed to handshake socket: %s", strerror(errno));
627627
pg_closesocket(fd, MtmUseRDMA);
628628
} else if (req.hdr.code != MSG_HANDSHAKE && req.hdr.dxid != HANDSHAKE_MAGIC) {
629-
MTM_ELOG(WARNING, "Arbiter get unexpected handshake message %d", req.hdr.code);
629+
MTM_ELOG(WARNING, "Arbiter failed to handshake socket: %s", strerror(errno));
630630
pg_closesocket(fd, MtmUseRDMA);
631631
} else {
632632
int node = req.hdr.node-1;

0 commit comments

Comments
 (0)