summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorchenzizhan <[email protected]>2023-10-07 17:20:01 +0800
committerchenzizhan <[email protected]>2023-10-07 17:20:01 +0800
commit437277576e283d64ff6160ce309ab17a56ceddaf (patch)
tree27f24b1f57424747cbcb6fffb067fdec073d3d62 /src
parentbf4c060bd5cb4d190824dc7b112a09f3caabcbdf (diff)
test performance and new benchmark
Diffstat (limited to 'src')
-rw-r--r--src/fieldstat.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/fieldstat.c b/src/fieldstat.c
index e086ffd..80a1386 100644
--- a/src/fieldstat.c
+++ b/src/fieldstat.c
@@ -455,7 +455,7 @@ void add_metric_to_instance(struct fieldstat *instance, const struct metric *met
struct metric *find_or_add_metric(struct fieldstat *instance, int cube_id, int metric_id) {
struct fs_cube *cube = instance->cube[cube_id];
- if (cube->metrics[metric_id] != NULL) {
+ if (metric_id < cube->valid_metric_arr_len && cube->metrics[metric_id] != NULL) {
return cube->metrics[metric_id];
}
struct metric *metric = metric_fork(instance->metric_masters[metric_id]);
@@ -1357,6 +1357,9 @@ void fieldstat_get_cells_used_by_cube(const struct fieldstat *instance, int cube
int fieldstat_get_used_sampling(const struct fieldstat *instance, int cube_id)
{
+ if (cube_id < 0 || cube_id >= instance->valid_cube_arr_length) {
+ return -1;
+ }
const struct fs_cube *cube = instance->cube[cube_id];
if (cube == NULL) {
return FS_ERR_INVALID_CUBE_ID;