if (db->filename)
return !stat(db->filename, &s);
- return 1;
+ return 0;
}
static int create_database(struct rrd_database *db)
int idx = 0, argcnt = 0;
int child, i;
+ if (!db->filename) {
+ pr_err("Database %s missing database filename\n", db->name);
+ return -1;
+ }
+
if (!db->sources || !db->archives) {
pr_err("Cannot create db \"%s\", insufficient source data\n",
db->filename);
int rrdtool_create_missing_databases(struct rrd_database *dbs[])
{
struct rrd_database *db;
- int i;
+ int i, ret = 0;
for (i = 0, db = dbs[i]; db; i++, db = dbs[i]) {
if (database_exists(db)) {
continue;
}
pr_info("Database %s missing, creating\n", db->filename);
- create_database(db);
+ ret |= create_database(db);
}
- return 0;
+ return ret;
}