def _get_running_postgres_segments(self, segments): running_segments = [] for seg in segments: datadir = self.dereference_remote_symlink( seg.getSegmentDataDirectory(), seg.getSegmentHostName()) pid = get_pid_from_remotehost(seg.getSegmentHostName(), datadir) if pid is not None: if check_pid_on_remotehost(pid, seg.getSegmentHostName()): if is_pid_postmaster(datadir, pid, seg.getSegmentHostName()): running_segments.append(seg) else: logger.info( "Skipping to stop segment %s on host %s since it is not a postgres process" % (seg.getSegmentDataDirectory(), seg.getSegmentHostName())) else: logger.debug( "Skipping to stop segment %s on host %s since process with pid %s is not running" % (seg.getSegmentDataDirectory(), seg.getSegmentHostName(), pid)) else: logger.debug( "Skipping to stop segment %s on host %s since pid could not be found" % (seg.getSegmentDataDirectory(), seg.getSegmentHostName())) return running_segments
def _get_running_postgres_segments(self, segments): running_segments = [] for seg in segments: datadir = self.dereference_remote_symlink(seg.getSegmentDataDirectory(), seg.getSegmentHostName()) pid = get_pid_from_remotehost(seg.getSegmentHostName(), datadir) if pid is not None: if check_pid_on_remotehost(pid, seg.getSegmentHostName()): if is_pid_postmaster(datadir, pid, seg.getSegmentHostName()): running_segments.append(seg) else: logger.info("Skipping to stop segment %s on host %s since it is not a postgres process" % (seg.getSegmentDataDirectory(), seg.getSegmentHostName())) else: logger.debug("Skipping to stop segment %s on host %s since process with pid %s is not running" % (seg.getSegmentDataDirectory(), seg.getSegmentHostName(), pid)) else: logger.debug("Skipping to stop segment %s on host %s since pid could not be found" % (seg.getSegmentDataDirectory(), seg.getSegmentHostName())) return running_segments