def send_request(self):
        """ Internal """
        # query_plan is an iterator, so this will resume where we last left
        # off if send_request() is called multiple times
        start = time.time()
        for host in self.query_plan:
            req_id = self._query(host)
            if req_id is not None:
                self._req_id = req_id

                # timer is only started here, after we have at least one message queued
                # this is done to avoid overrun of timers with unfettered client requests
                # in the case of full disconnect, where no hosts will be available
                if self._timer is None:
                    self._start_timer()
                return
            if self.timeout is not None and start - time.time() > self.timeout:
                self._on_timeout()
                return

        self._set_final_exception(NoHostAvailable(
            "Unable to complete the operation against any hosts", self._errors))
dataset/ETHPy150Open datastax/python-driver/cassandra/cluster.py/ResponseFuture.send_request/swapped operands of `-`