@@ -840,6 +840,7 @@ def has_raft_quorum(self) -> bool:
840840 raft_host = "127.0.0.1:2222"
841841 try :
842842 raft_status = syncobj_util .executeCommand (raft_host , ["status" ])
843+ logger .debug ("Local raft status: %s" , raft_status )
843844 except UtilityException :
844845 logger .warning ("Has raft quorum: Cannot connect to raft cluster" )
845846 return False
@@ -909,6 +910,16 @@ def get_running_cluster_members(self) -> list[str]:
909910 except Exception :
910911 return []
911912
913+ def log_raft_status (self ) -> None :
914+ """Best-effort dump of local raft status for debugging."""
915+ raft_host = "127.0.0.1:2222"
916+ try :
917+ syncobj_util = TcpUtility (password = self .raft_password , timeout = 3 )
918+ raft_status = syncobj_util .executeCommand (raft_host , ["status" ])
919+ logger .debug ("Local raft status: %s" , raft_status )
920+ except UtilityException :
921+ logger .debug ("Local raft status unavailable" )
922+
912923 def remove_raft_member (self , member_ip : str ) -> None :
913924 """Remove a member from the raft cluster.
914925
@@ -930,12 +941,14 @@ def remove_raft_member(self, member_ip: str) -> None:
930941 raft_host = "127.0.0.1:2222"
931942 try :
932943 raft_status = syncobj_util .executeCommand (raft_host , ["status" ])
944+ logger .debug ("Local raft status: %s" , raft_status )
933945 except UtilityException :
934946 logger .warning ("Remove raft member: Cannot connect to raft cluster" )
935947 raise RemoveRaftMemberFailedError () from None
936948
937949 # Check whether the member is still part of the raft cluster.
938950 if not member_ip or f"partner_node_status_server_{ member_ip } :2222" not in raft_status :
951+ logger .debug (f"Local raft member %s is missing in cluster" , member_ip )
939952 return
940953
941954 # If there's no quorum and the leader left raft cluster is stuck
0 commit comments