public function executePartition(PartitionInterface $partition, array $options = [])
    {
        if ($partition instanceof QueryPartition) {
            return $this->executeQuery($partition);
        } elseif ($partition instanceof ReadPartition) {
            return $this->executeRead($partition);
        }

        throw new \BadMethodCallException('Unsupported partition type.');
    }