fix error messages on bad schema
This commit is contained in:
parent
c7cc788a1d
commit
8ca978322a
|
@ -350,7 +350,7 @@ char *db_error_list[] = {
|
||||||
"No backend database support for type: %s",
|
"No backend database support for type: %s",
|
||||||
"Could not initialize thread pool",
|
"Could not initialize thread pool",
|
||||||
"Passed buffer too small for result",
|
"Passed buffer too small for result",
|
||||||
"Wrong database version. Try using mt-dbupdate to update the db"
|
"Wrong db schema. Use mtd-update to upgrade the db."
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Globals */
|
/* Globals */
|
||||||
|
|
|
@ -149,7 +149,8 @@ int db_sqlite2_open(char **pe, char *dsn) {
|
||||||
DPRINTF(E_LOG,L_DB,"Can't get db version. New database?\n");
|
DPRINTF(E_LOG,L_DB,"Can't get db version. New database?\n");
|
||||||
} else if(ver != DB_SQLITE2_VERSION) {
|
} else if(ver != DB_SQLITE2_VERSION) {
|
||||||
/* we'll deal with this in the db handler */
|
/* we'll deal with this in the db handler */
|
||||||
DPRINTF(E_LOG,L_DB,"Old database version -- forcing rescan\n");
|
DPRINTF(E_LOG,L_DB,"Old database version.\n");
|
||||||
|
db_get_error(pe,DB_E_WRONGVERSION);
|
||||||
return DB_E_WRONGVERSION;
|
return DB_E_WRONGVERSION;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -149,11 +149,9 @@ int db_sqlite3_open(char **pe, char *dsn) {
|
||||||
/* we'll catch this on the init */
|
/* we'll catch this on the init */
|
||||||
DPRINTF(E_LOG,L_DB,"Can't get db version. New database?\n");
|
DPRINTF(E_LOG,L_DB,"Can't get db version. New database?\n");
|
||||||
} else if(ver != DB_SQLITE3_VERSION) {
|
} else if(ver != DB_SQLITE3_VERSION) {
|
||||||
DPRINTF(E_LOG,L_DB,"Old database version -- forcing rescan\n");
|
DPRINTF(E_LOG,L_DB,"Old database version.\n");
|
||||||
err=db_sqlite3_exec(pe,E_FATAL,"insert into config (term,value) "
|
db_get_error(pe,DB_E_WRONGVERSION);
|
||||||
"values ('rescan','1')");
|
return DB_E_WRONGVERSION;
|
||||||
if(err != DB_E_SUCCESS)
|
|
||||||
return err;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return DB_E_SUCCESS;
|
return DB_E_SUCCESS;
|
||||||
|
|
10
src/main.c
10
src/main.c
|
@ -321,8 +321,14 @@ int main(int argc, char *argv[]) {
|
||||||
err=db_open(&perr,db_type,db_parms);
|
err=db_open(&perr,db_type,db_parms);
|
||||||
|
|
||||||
if(err) {
|
if(err) {
|
||||||
DPRINTF(E_FATAL,L_MAIN|L_DB,"Error: db_open %s/%s: %s\n",
|
DPRINTF(E_LOG,L_MAIN|L_DB,"Error opening db: %s\n",perr);
|
||||||
db_type,db_parms,perr);
|
#ifndef WITHOUT_MDNS
|
||||||
|
if(config.use_mdns) {
|
||||||
|
rend_stop();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
os_deinit();
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
}
|
}
|
||||||
|
|
||||||
free(db_type);
|
free(db_type);
|
||||||
|
|
|
@ -54,7 +54,6 @@ extern int db_sql_fetch_int(char **pe, int *result, char *fmt, ...);
|
||||||
# define SQLITE3_UPDATES db_error_updates
|
# define SQLITE3_UPDATES db_error_updates
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
extern char *db_sqlite_updates[];
|
extern char *db_sqlite_updates[];
|
||||||
char *db_error_updates[] = {
|
char *db_error_updates[] = {
|
||||||
NULL
|
NULL
|
||||||
|
|
Loading…
Reference in New Issue