mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-23 08:12:08 +00:00
41 lines
769 B
C++
41 lines
769 B
C++
/*
|
|
* Copyright 2022-present ScyllaDB
|
|
*/
|
|
|
|
/*
|
|
* SPDX-License-Identifier: LicenseRef-ScyllaDB-Source-Available-1.1
|
|
*/
|
|
|
|
namespace replica {
|
|
|
|
struct unknown_exception {};
|
|
|
|
struct no_exception {};
|
|
|
|
class rate_limit_exception {
|
|
};
|
|
|
|
class stale_topology_exception {
|
|
int64_t caller_version();
|
|
int64_t callee_fence_version();
|
|
};
|
|
|
|
class abort_requested_exception {
|
|
};
|
|
|
|
class critical_disk_utilization_exception {
|
|
sstring failed_action();
|
|
};
|
|
|
|
struct exception_variant {
|
|
std::variant<replica::unknown_exception,
|
|
replica::no_exception,
|
|
replica::rate_limit_exception,
|
|
replica::stale_topology_exception,
|
|
replica::abort_requested_exception,
|
|
replica::critical_disk_utilization_exception
|
|
> reason;
|
|
};
|
|
|
|
}
|