diff options
| author | chenzizhan <[email protected]> | 2024-07-08 10:56:59 +0800 |
|---|---|---|
| committer | chenzizhan <[email protected]> | 2024-07-08 10:56:59 +0800 |
| commit | 722993e93a3843a6240a716b2eaead585c103735 (patch) | |
| tree | 6be5544e6e0670d0218988cc77bb1d9ea141e4db /src/fieldstat.c | |
| parent | 4083cad56dfeac683832e93b1d8a295304aa8ea1 (diff) | |
fieldstat_hll_add_tag
Diffstat (limited to 'src/fieldstat.c')
| -rw-r--r-- | src/fieldstat.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/fieldstat.c b/src/fieldstat.c index e5a5945..cd43128 100644 --- a/src/fieldstat.c +++ b/src/fieldstat.c @@ -340,6 +340,21 @@ int fieldstat_hll_add(struct fieldstat *instance, int cube_id, int metric_id, co } // cppcheck-suppress [constParameterPointer, unmatchedSuppression] +int fieldstat_hll_add_tag(struct fieldstat *instance, int cube_id, int metric_id, const struct fieldstat_tag *tags, size_t n_tag, const struct fieldstat_tag *tags_key, size_t n_tag_key) +{ + struct cube *cube = cube_manager_get_cube_by_id(instance->cube_manager, cube_id); + if (cube == NULL) { + return FS_ERR_INVALID_CUBE_ID; + } + const struct metric_manifest *manifest = metric_manifest_manager_get_by_id(instance->manifest_manager, metric_id); + if (manifest == NULL || manifest->type != METRIC_TYPE_HLL) { + return FS_ERR_INVALID_METRIC_ID; + } + + return cube_hll_add_tag(cube, manifest, tags, n_tag, tags_key, n_tag_key); +} + +// cppcheck-suppress [constParameterPointer, unmatchedSuppression] int fieldstat_hist_record(struct fieldstat *instance, int cube_id, int metric_id, const struct fieldstat_tag *tags, size_t n_tag, long long value) { struct cube *cube = cube_manager_get_cube_by_id(instance->cube_manager, cube_id); |
