exceptions: Add a constructor for unavailable_exception that allows providing a custom message

This commit is contained in:
Gleb Natapov
2019-09-16 15:00:22 +03:00
parent 209414b4eb
commit 556f65e8a1

View File

@@ -110,12 +110,18 @@ struct unavailable_exception : cassandra_exception {
int32_t required;
int32_t alive;
unavailable_exception(db::consistency_level cl, int32_t required, int32_t alive) noexcept
: exceptions::cassandra_exception(exceptions::exception_code::UNAVAILABLE, prepare_message("Cannot achieve consistency level for cl %s. Requires %ld, alive %ld", cl, required, alive))
unavailable_exception(sstring msg, db::consistency_level cl, int32_t required, int32_t alive) noexcept
: exceptions::cassandra_exception(exceptions::exception_code::UNAVAILABLE, std::move(msg))
, consistency(cl)
, required(required)
, alive(alive)
{}
unavailable_exception(db::consistency_level cl, int32_t required, int32_t alive) noexcept
: unavailable_exception(prepare_message("Cannot achieve consistency level for cl %s. Requires %ld, alive %ld", cl, required, alive),
cl, required, alive)
{}
};
class request_execution_exception : public cassandra_exception {