// SPDX-License-Identifier: GPL-3.0-or-later
#include "database/engine/rrddiskprotocol.h"
#include "rrdengine.h"
/* Default global database instance */
struct rrdengine_instance multidb_ctx_storage_tier0;
struct rrdengine_instance multidb_ctx_storage_tier1;
struct rrdengine_instance multidb_ctx_storage_tier2;
struct rrdengine_instance multidb_ctx_storage_tier3;
struct rrdengine_instance multidb_ctx_storage_tier4;
#define mrg_metric_ctx(metric) (struct rrdengine_instance *)mrg_metric_section(main_mrg, metric)
#if RRD_STORAGE_TIERS != 5
#error RRD_STORAGE_TIERS is not 5 - you need to add allocations here
#endif
struct rrdengine_instance *multidb_ctx[RRD_STORAGE_TIERS];
uint8_t tier_page_type[RRD_STORAGE_TIERS] = {PAGE_CONSTANT_METRICS, PAGE_TIER, PAGE_TIER, PAGE_TIER, PAGE_TIER};
#if defined(ENV32BIT)
size_t tier_page_size[RRD_STORAGE_TIERS] = {2048, 1024, 192, 192, 192};
#else
size_t tier_page_size[RRD_STORAGE_TIERS] = {4096, 2048, 384, 384, 384};
#endif
#if PAGE_TYPE_MAX != 3
#error PAGE_TYPE_MAX is not 3 - you need to add allocations here
#endif
size_t page_type_size[256] = {
[PAGE_RAW_METRICS] = sizeof(storage_number),
[PAGE_TIER] = sizeof(storage_number_tier1_t),
[PAGE_GORILLA_METRICS] = sizeof(storage_number),
[PAGE_CONSTANT_METRICS] = sizeof(storage_number),
};
__attribute__((constructor)) void