summaryrefslogtreecommitdiff
path: root/databases/pgcluster/files/patch-pgrp:recovery.c
diff options
context:
space:
mode:
Diffstat (limited to 'databases/pgcluster/files/patch-pgrp:recovery.c')
-rw-r--r--databases/pgcluster/files/patch-pgrp:recovery.c237
1 files changed, 237 insertions, 0 deletions
diff --git a/databases/pgcluster/files/patch-pgrp:recovery.c b/databases/pgcluster/files/patch-pgrp:recovery.c
new file mode 100644
index 000000000000..834b279235d8
--- /dev/null
+++ b/databases/pgcluster/files/patch-pgrp:recovery.c
@@ -0,0 +1,237 @@
+--- src/pgcluster/pgrp/recovery.c 16 Apr 2004 10:17:45 -0000 1.1.1.4
++++ src/pgcluster/pgrp/recovery.c 16 Apr 2004 10:21:06 -0000 1.5
+@@ -121,7 +121,7 @@
+ int packet_size = 0;
+
+ /* set function name */
+- set_function("read_packet");
++ set_function("recovery::read_packet");
+
+ read_ptr = (char*)packet;
+ packet_size = sizeof(RecoveryPacket);
+@@ -140,7 +140,7 @@
+ }
+ read_size += r;
+ if (read_size == packet_size){
+- show_debug("receive packet\n");
++ show_debug("receive packet");
+ show_recovery_packet(packet);
+ return r;
+ }
+@@ -166,7 +166,7 @@
+ */
+ FD_ZERO(&rmask);
+ FD_SET(host->sock,&rmask);
+- show_debug("wait\n");
++ show_debug("wait");
+ for(;;)
+ {
+ rtn = select(host->sock+1, &rmask, (fd_set *)NULL, (fd_set *)NULL, &timeout);
+@@ -227,7 +227,7 @@
+ {
+ if (count > MAX_RETRY_TIMES )
+ {
+- show_error("PGR_Create_Socket_Connect failed");
++ show_error("PGR_Create_Socket_Connect(%d, %s, %d) failed", host->sock, host->hostName, host->recoveryPort);
+ return STATUS_ERROR;
+ }
+ count ++;
+@@ -331,18 +331,18 @@
+ Target->port = ntohs(packet->port);
+ Target->recoveryPort = ntohs(packet->recoveryPort);
+ Target->sock = *sock;
+- show_debug("1st setup target %s\n",Target->hostName);
+- show_debug("1st setup port %d\n",Target->port);
++ show_debug("1st setup target %s",Target->hostName);
++ show_debug("1st setup port %d",Target->port);
+ /*
+ * check another recovery process
+ */
+- show_debug("check another recovery process\n");
++ show_debug("check another recovery process");
+ if (PGRget_recovery_status() != RECOVERY_INIT)
+ {
+ /*
+ * recovery process is already running
+ */
+- show_debug(" already recovery job runing\n");
++ show_debug(" already recovery job runing");
+ memset(packet,0,sizeof(packet));
+ PGRset_recovery_packet_no(packet, RECOVERY_ERROR_OCCUPIED) ;
+ status = send_packet(Target,packet);
+@@ -352,7 +352,7 @@
+ /*
+ * add recovery target to host table
+ */
+- show_debug("add recovery target to host table\n");
++ show_debug("add recovery target to host table (%s)", packet->hostName);
+ memcpy(host_tbl.hostName,packet->hostName,sizeof(host_tbl.hostName));
+ host_tbl.port = ntohs(packet->port);
+ PGRset_recovered_host(&host_tbl,DB_TBL_INIT);
+@@ -365,7 +365,7 @@
+ /*
+ * set RECOVERY_PGDATA_REQ packet data
+ */
+- show_debug("set RECOVERY_PGDATA_REQ packet data\n");
++ show_debug("set RECOVERY_PGDATA_REQ packet data");
+ memset(packet,0,sizeof(RecoveryPacket));
+ PGRset_recovery_packet_no(packet, RECOVERY_PGDATA_REQ );
+
+@@ -376,7 +376,7 @@
+ /*
+ * connection error , master may be down
+ */
+- show_error("get master info error , master may be down\n");
++ show_error("get master info error , master may be down");
+ PGRset_recovery_packet_no(packet, RECOVERY_ERROR_CONNECTION);
+ status = send_packet(Target, packet);
+ reset_recovery_prepare();
+@@ -387,14 +387,14 @@
+ Master->sock = -1;
+ Master->port = master->port;
+ Master->recoveryPort = master->recoveryPort;
+- show_debug("send packet to master %s recoveryPort %d\n",Master->hostName, Master->recoveryPort);
++ show_debug("send packet to master %s recoveryPort %d",Master->hostName, Master->recoveryPort);
+ status = send_packet(Master, packet);
+ if (status != STATUS_OK)
+ {
+ /*
+ * connection error , master may be down
+ */
+- show_error("connection error , master may be down\n");
++ show_error("connection error , master may be down");
+ PGRset_host_status(master,DB_TBL_ERROR);
+ goto retry_connect_master ;
+ /*
+@@ -405,7 +405,7 @@
+ return loop_end;
+ */
+ }
+-
++
+ /*
+ * start prepare of recovery
+ * set recovery status to "prepare start"
+@@ -415,10 +415,10 @@
+ /*
+ * wait answer from master server
+ */
+- show_debug("wait answer from master server\n");
++ show_debug("wait answer from master server");
+ memset(packet,0,sizeof(RecoveryPacket));
+ read_packet_from_master(Master, packet);
+- show_debug("get answer from master\n");
++ show_debug("get answer from master");
+ if (ntohs(packet->packet_no) == RECOVERY_PGDATA_ANS)
+ {
+ /*
+@@ -461,7 +461,7 @@
+ status = PGRwait_transaction_count_clear();
+ if (status != STATUS_OK)
+ {
+- show_error("transaction is too busy, please try again after\n");
++ show_error("transaction is too busy, please try again after");
+ PGRset_recovery_packet_no(packet, RECOVERY_ERROR_CONNECTION);
+ status = send_packet(Target,packet);
+ status = send_packet(Master,packet);
+@@ -479,7 +479,7 @@
+ /*
+ * connection error , master may be down
+ */
+- show_error("connection error , master may be down\n");
++ show_error("connection error , master may be down");
+ PGRset_recovery_packet_no(packet, RECOVERY_ERROR_CONNECTION);
+ status = send_packet(Target,packet);
+ status = send_packet(Master,packet);
+@@ -508,7 +508,7 @@
+ }
+ else
+ {
+- show_debug("failer answer returned\n");
++ show_debug("failer answer returned");
+ PGRset_recovery_packet_no(packet, RECOVERY_ERROR_CONNECTION);
+ status = send_packet(Target,packet);
+ status = send_packet(Master,packet);
+@@ -538,23 +538,23 @@
+
+ if (master == (RecoveryTbl *)NULL)
+ {
+- show_error("there is no master ");
++ show_error("there is no master");
+ return STATUS_ERROR;
+ }
+- show_debug("master %s - %d\n",master->hostName,master->port);
++ show_debug("master %s - %d",master->hostName,master->port);
+ master_ptr = PGRget_HostTbl(master->hostName,master->port);
+ if (master_ptr == (HostTbl *)NULL)
+ {
+- show_error("master table is null\n");
++ show_error("master table is null");
+ return STATUS_ERROR;
+ }
+ if (target != (RecoveryTbl *)NULL)
+ {
+- show_debug("target %s - %d\n",target->hostName,target->port);
++ show_debug("target %s - %d",target->hostName,target->port);
+ target_ptr = PGRget_HostTbl(target->hostName,target->port);
+ if (target_ptr == (HostTbl *)NULL)
+ {
+- show_error("target table is null\n");
++ show_error("target table is null");
+ return STATUS_ERROR;
+ }
+ }
+@@ -621,7 +621,7 @@
+ {
+ free(msg_header);
+ }
+- show_debug("send_queue return status %d\n",status);
++ show_debug("send_queue return status %d",status);
+ return status;
+ }
+
+@@ -642,7 +642,7 @@
+ set_function("pgrecovery_loop");
+
+ count = 0;
+- show_debug("recovery accept port %d\n",Recovery_Port_Number);
++ show_debug("recovery accept port %d",Recovery_Port_Number);
+ while ((status = PGR_Create_Acception(fd,&sock,"",Recovery_Port_Number)) != STATUS_OK)
+ {
+ show_error("PGR_Create_Acception failed");
+@@ -682,7 +682,7 @@
+ continue;
+ }
+
+- show_debug("receive packet no:%d\n",ntohs(packet.packet_no));
++ show_debug("receive packet no:%d",ntohs(packet.packet_no));
+
+ switch (ntohs(packet.packet_no))
+ {
+@@ -739,7 +739,7 @@
+ status = send_packet(&Target,&packet);
+ }
+ /*
+- * stop queueing, and initiarise recovery status
++ * stop queueing, and initialise recovery status
+ */
+ finish_recovery();
+ loop_end = true;
+@@ -752,7 +752,7 @@
+ memset((char *)&MasterPacketData,0,sizeof(RecoveryPacket));
+ break;
+ case RECOVERY_ERROR_ANS :
+- show_debug("recovery error accept. top queueing and initiarse recovery status\n");
++ show_debug("recovery error accept. top queueing and initialise recovery status");
+ status = PGRsend_queue(&Master,NULL);
+ memset(&packet,0,sizeof(RecoveryPacket));
+ PGRset_recovery_packet_no(&packet, RECOVERY_ERROR_ANS);
+@@ -807,7 +807,7 @@
+ */
+ FD_ZERO(&rmask);
+ FD_SET(fd,&rmask);
+- show_debug("wait recovery\n");
++ show_debug("wait recovery");
+ rtn = select(fd+1, &rmask, (fd_set *)NULL, (fd_set *)NULL, &timeout);
+ if (rtn && FD_ISSET(fd, &rmask))
+ {