mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-23 18:10:39 +00:00
Make sure that the int64_t generation we get over rpc fits in the int32_t generation_type we keep locally. Restrict this assertion to non-release builds. Signed-off-by: Benny Halevy <bhalevy@scylladb.com>
27 lines
539 B
C++
27 lines
539 B
C++
/*
|
|
* Copyright 2020-present ScyllaDB
|
|
*/
|
|
|
|
/*
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "utils/tagged_integer.hh"
|
|
|
|
namespace gms {
|
|
|
|
using generation_type = utils::tagged_integer<struct generation_type_tag, int32_t>;
|
|
|
|
generation_type get_generation_number();
|
|
|
|
void validate_gossip_generation(int64_t generation_number);
|
|
inline void debug_validate_gossip_generation([[maybe_unused]] int64_t generation_number) {
|
|
#ifndef SCYLLA_BUILD_MODE_RELEASE
|
|
validate_gossip_generation(generation_number);
|
|
#endif
|
|
}
|
|
|
|
}
|