Beispiel #1
0
 def poll(self):
     running = [worker for worker in self._workers if worker.is_alive()]
     diff = self.num_workers - len(running)
     if diff > 0:
         self.logger.debug('Starting %d workers, for a total of %d', diff, self.num_workers)
         with LoaderStorage.fork_wrapper():
             running += [self._start_worker(i) for i in xrange(diff)]
     self._workers = running
Beispiel #2
0
 def poll(self):
     running = [worker for worker in self._workers if worker.is_alive()]
     diff = self.num_workers - len(running)
     if diff > 0:
         self.logger.debug('Starting %d workers, for a total of %d', diff,
                           self.num_workers)
         with LoaderStorage.fork_wrapper():
             running += [self._start_worker(i) for i in xrange(diff)]
     self._workers = running
Beispiel #3
0
    def poll(self):
        running = [worker for worker in self._workers if worker.is_alive()]

        if self.idle_timeout is not None:
            if any([worker.is_working() for worker in self._workers]):
                self._last_work_time = time.time()
            elif time.time() > (self._last_work_time + self.idle_timeout):
                return False

        diff = self.num_workers - len(running)
        if diff > 0:
            self.logger.debug('Starting %d workers, for a total of %d', diff, self.num_workers)
            with LoaderStorage.fork_wrapper():
                running += [self._start_worker(i) for i in xrange(diff)]
        self._workers = running

        return True
Beispiel #4
0
 def start_server(self):
     if self.options.no_daemon:
         self.logger.warn(
             "There don't seem to be any running MemSQL Loader servers. "
             "Please start one.")
         if self.options.sync:
             self.logger.error(
                 "You have specified --sync, but there are no running "
                 "MemSQL Loader servers.")
             sys.exit(1)
     else:
         self.logger.info("Starting a MemSQL Loader server")
         if not self.options.sync:
             self.logger.info(
                 "This load job will run in the background.  You can "
                 "monitor its progress with memsql-loader job %s" % (self.job.id))
         with LoaderStorage.fork_wrapper():
             ServerProcess(daemonize=True).start()
    def poll(self):
        running = [worker for worker in self._workers if worker.is_alive()]

        if self.idle_timeout is not None:
            if any([worker.is_working() for worker in self._workers]):
                self._last_work_time = time.time()
            elif time.time() > (self._last_work_time + self.idle_timeout):
                return False

        diff = self.num_workers - len(running)
        if diff > 0:
            self.logger.debug('Starting %d workers, for a total of %d', diff,
                              self.num_workers)
            with LoaderStorage.fork_wrapper():
                running += [self._start_worker(i) for i in xrange(diff)]
        self._workers = running

        return True
Beispiel #6
0
 def start_server(self):
     if self.options.no_daemon:
         self.logger.warn(
             "There don't seem to be any running MemSQL Loader servers. "
             "Please start one.")
         if self.options.sync:
             self.logger.error(
                 "You have specified --sync, but there are no running "
                 "MemSQL Loader servers.")
             sys.exit(1)
     else:
         self.logger.info("Starting a MemSQL Loader server")
         if not self.options.sync:
             self.logger.info(
                 "This load job will run in the background.  You can "
                 "monitor its progress with memsql-loader job %s" %
                 (self.job.id))
         with LoaderStorage.fork_wrapper():
             ServerProcess(daemonize=True).start()