code: def on_write_timeout(self, query, consistency, write_type,
                           required_responses, received_responses, retry_num):
          
          if retry_num != 0:
              return self.RETHROW, None
          elif write_type == WriteType.BATCH_LOG:
              return self.RETRY, consistency
          else:
              return self.RETHROW, None
docs: This is called when a write operation times out from the coordinator's
          perspective (i.e. a replica did not respond to the coordinator in time).
  
          `query` is the :class:`.Statement` that timed out.
  
          `consistency` is the :class:`.ConsistencyLevel` that the operation was
          attempted at.
  
          `write_type` is one of the :class:`.WriteType` enums describing the
          type of write operation.
  
          The `required_responses` and `received_responses` parameters describe
          how many replicas needed to acknowledge the write to meet the requested
          consistency level and how many replicas actually did acknowledge the
          write before the coordinator timed out the request.
  
          `retry_num` counts how many times the operation has been retried, so
          the first time this method is called, `retry_num` will be 0.
  
          By default, failed write operations will retried at most once, and
          they will only be retried if the `write_type` was
          :attr:`~.WriteType.BATCH_LOG`.