diff options
| author | default <nobody@localhost> | 2022-11-25 10:53:16 +0100 |
|---|---|---|
| committer | default <nobody@localhost> | 2022-11-25 10:53:16 +0100 |
| commit | 45be9a1cb1971786c72f82f8d236edbdfd662b84 (patch) | |
| tree | de1d978eadb79ec87f27fa3538784e5cf5d4384b /data.c | |
| parent | 8a71e2e557af62c9d3c89b519c4e98dd26dbc859 (diff) | |
New command-line command 'upgrade'.
Diffstat (limited to 'data.c')
| -rw-r--r-- | data.c | 11 |
1 files changed, 9 insertions, 2 deletions
@@ -19,7 +19,7 @@ double db_layout = 2.3; int db_upgrade(d_char **error); -int srv_open(char *basedir) +int srv_open(char *basedir, int auto_upgrade) /* opens a server */ { int ret = 0; @@ -69,7 +69,14 @@ int srv_open(char *basedir) error = xs_fmt("DEBUG level set to %d from environment", dbglevel); } - ret = db_upgrade(&error); + if (auto_upgrade) + ret = db_upgrade(&error); + else { + if (xs_number_get(xs_dict_get(srv_config, "layout")) < db_layout) { + ret = 0; + error = xs_fmt("ERROR: db layout changed - execute 'snac upgrade' first"); + } + } } } |