diff options
author | Adrien BĂ©raud <adrien.beraud@savoirfairelinux.com> | 2022-06-16 09:53:35 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-06-16 16:53:35 +0300 |
commit | 100a12c6cc01222b1518e5e50d2147f592d8a111 (patch) | |
tree | 1aa8f4a5f94f05dd10a07634e60544a523ba75fd /database/engine/rrdengine.h | |
parent | 131e5f5f6e5822a1fd8107c228f1a9a49f08e847 (diff) |
Configurable storage engine for Netdata agents: step 3 (#12892)
* storage engine: add host context API
Add a new API to allow storage engines to manage host contexts.
* Replace single global context with per-engine global context
* Context is full managed by storage engines: a storage engine
can use no context, a global engine context, per host contexts,
or a mix of these.
* Currently, only dbengine uses contexts.
Following the current logic, legacy hosts use their own context,
while non-legacy hosts share the global context.
* storage engine: use empty function instead of null for context ops
* rrdhost: don't check return value for void call
* rrdhost: create context with host
* storage engine: move rrddim ops to rrddim_mem.{c,h}
* storage engine: don't use NULL for end-of-list marker
* storage engine: fallback to default engine
Diffstat (limited to 'database/engine/rrdengine.h')
-rw-r--r-- | database/engine/rrdengine.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/database/engine/rrdengine.h b/database/engine/rrdengine.h index 7c49161b4b..ca7d4e0798 100644 --- a/database/engine/rrdengine.h +++ b/database/engine/rrdengine.h @@ -13,6 +13,7 @@ #include <openssl/evp.h> #include "daemon/common.h" #include "../rrd.h" +#include "../storage_engine.h" #include "rrddiskprotocol.h" #include "rrdenginelib.h" #include "datafile.h" @@ -226,6 +227,7 @@ extern rrdeng_stats_t global_flushing_pressure_page_deletions; /* number of dele #define QUIESCED (2) /* is set after all threads have finished running */ struct rrdengine_instance { + STORAGE_ENGINE_INSTANCE parent; struct metalog_instance *metalog_ctx; struct rrdengine_worker_config worker_config; struct completion rrdengine_completion; |