diff --git a/src/parser/ast.c b/src/parser/ast.c
index dcfe7862bd0b73c891ea017796a28cc626cf0589..1db342cadf6e6b796fafd8ed05c39d985efce23b 100644 (file)
--- a/src/parser/ast.c
+++ b/src/parser/ast.c
free(timeseries->hostname);
if (timeseries->metric)
free(timeseries->metric);
+ if (timeseries->data_names) {
+ size_t i;
+ for (i = 0; i < timeseries->data_names_len; i++)
+ free(timeseries->data_names[i]);
+ free(timeseries->data_names);
+ timeseries->data_names = NULL;
+ }
timeseries->hostname = timeseries->metric = NULL;
} /* timeseries_destroy */
sdb_ast_node_t *
sdb_ast_store_create(int obj_type, char *hostname,
int parent_type, char *parent, char *name, sdb_time_t last_update,
- char *store_type, char *store_id, sdb_data_t value)
+ char *store_type, char *store_id, sdb_time_t store_last_update,
+ sdb_data_t value)
{
sdb_ast_store_t *store;
store = SDB_AST_STORE(sdb_object_create("STORE", st_type));
store->last_update = last_update;
store->store_type = store_type;
store->store_id = store_id;
+ store->store_last_update = store_last_update;
store->value = value;
return SDB_AST_NODE(store);
} /* sdb_ast_store_create */
sdb_ast_node_t *
sdb_ast_timeseries_create(char *hostname, char *metric,
+ char **data_names, size_t data_names_len,
sdb_time_t start, sdb_time_t end)
{
sdb_ast_timeseries_t *timeseries;
timeseries->hostname = hostname;
timeseries->metric = metric;
+ timeseries->data_names = data_names;
+ timeseries->data_names_len = data_names_len;
timeseries->start = start;
timeseries->end = end;
return SDB_AST_NODE(timeseries);