def run(self):
     """
     Check if slaves are alive
     """
     while True:
         yield gen.sleep(gConfigurationData.getSlavesGraceTime())
         self._checkSlavesStatus()
Exemple #2
0
 def __checkSlavesStatus(self, forceWriteConfiguration=False):
     gLogger.info("Checking status of slave servers")
     iGraceTime = gConfigurationData.getSlavesGraceTime()
     lSlaveURLs = self.dAliveSlaveServers.keys()
     bModifiedSlaveServers = False
     for sSlaveURL in lSlaveURLs:
         if time.time() - self.dAliveSlaveServers[sSlaveURL] > iGraceTime:
             gLogger.info("Found dead slave", sSlaveURL)
             del self.dAliveSlaveServers[sSlaveURL]
             bModifiedSlaveServers = True
     if bModifiedSlaveServers or forceWriteConfiguration:
         gConfigurationData.setServers("%s, %s" % (self.sURL, ", ".join(self.dAliveSlaveServers.keys())))
         self.__generateNewVersion()
    def forceSlavesUpdate(self):
        """
        Force updating configuration on all the slave configuration servers

        :return: Nothing
        """
        gLogger.info("Updating configuration on slave servers")
        iGraceTime = gConfigurationData.getSlavesGraceTime()
        urlSet = set()
        for slaveURL in self.dAliveSlaveServers:
            if time.time() - self.dAliveSlaveServers[slaveURL] <= iGraceTime:
                urlSet.add(slaveURL)
        self._updateServiceConfiguration(urlSet, fromMaster=True)
Exemple #4
0
 def __checkSlavesStatus(self, forceWriteConfiguration=False):
   gLogger.info("Checking status of slave servers")
   iGraceTime = gConfigurationData.getSlavesGraceTime()
   bModifiedSlaveServers = False
   for sSlaveURL in self.dAliveSlaveServers.keys():
     if time.time() - self.dAliveSlaveServers[sSlaveURL] > iGraceTime:
       gLogger.info("Found dead slave", sSlaveURL)
       del self.dAliveSlaveServers[sSlaveURL]
       bModifiedSlaveServers = True
   if bModifiedSlaveServers or forceWriteConfiguration:
     gConfigurationData.setServers("%s, %s" % (self.sURL,
                                               ", ".join(self.dAliveSlaveServers.keys())))
     self.__generateNewVersion()
Exemple #5
0
  def forceSlavesUpdate(self):
    """
    Force updating configuration on all the slave configuration servers

    :return: S_OK/S_ERROR, Value Successful/Failed dict with service URLs
    """
    gLogger.info("Updating configuration on slave servers")
    iGraceTime = gConfigurationData.getSlavesGraceTime()
    self.__updateResultDict = {"Successful": {}, "Failed": {}}
    urlSet = set()
    for slaveURL in self.dAliveSlaveServers:
      if time.time() - self.dAliveSlaveServers[slaveURL] <= iGraceTime:
        urlSet.add(slaveURL)
    return self.__updateServiceConfiguration(urlSet, fromMaster=True)
    def _checkSlavesStatus(self, forceWriteConfiguration=False):
        """
        Check if Slaves server are still availlable

        :param forceWriteConfiguration: (default False) Force rewriting configuration after checking slaves
        """

        gLogger.info("Checking status of slave servers")
        iGraceTime = gConfigurationData.getSlavesGraceTime()
        bModifiedSlaveServers = False
        for sSlaveURL in list(self.dAliveSlaveServers):
            if time.time() - self.dAliveSlaveServers[sSlaveURL] > iGraceTime:
                gLogger.warn("Found dead slave", sSlaveURL)
                del self.dAliveSlaveServers[sSlaveURL]
                bModifiedSlaveServers = True
        if bModifiedSlaveServers or forceWriteConfiguration:
            gConfigurationData.setServers(", ".join(self.dAliveSlaveServers))
            self.__generateNewVersion()
 def run( self ):
   while True:
     iWaitTime = gConfigurationData.getSlavesGraceTime()
     time.sleep( iWaitTime )
     self.__checkSlavesStatus()
Exemple #8
0
 def run(self):
     while True:
         iWaitTime = gConfigurationData.getSlavesGraceTime()
         time.sleep(iWaitTime)
         self._checkSlavesStatus()