diff options
| author | Simon MacMullen <simon@lshift.net> | 2008-11-27 16:35:44 +0000 |
|---|---|---|
| committer | Simon MacMullen <simon@lshift.net> | 2008-11-27 16:35:44 +0000 |
| commit | e5a65accb4c54c6a2671dae7eeb15a00c3a988d5 (patch) | |
| tree | 7c06c95d2b40318f1c830aaf61a7604d8434aa82 | |
| parent | bd00b2c6aa5839d739c8ee3871c8bd3f3d1d4137 (diff) | |
| download | rabbitmq-server-git-e5a65accb4c54c6a2671dae7eeb15a00c3a988d5.tar.gz | |
It's nicer if update_needed is just a function, not something that
halts!
| -rwxr-xr-x | scripts/rabbitmq-mnesia-update-needed | 4 | ||||
| -rw-r--r-- | src/rabbit_mnesia.erl | 11 |
2 files changed, 8 insertions, 7 deletions
diff --git a/scripts/rabbitmq-mnesia-update-needed b/scripts/rabbitmq-mnesia-update-needed index dcc5b45306..af5d0ae14e 100755 --- a/scripts/rabbitmq-mnesia-update-needed +++ b/scripts/rabbitmq-mnesia-update-needed @@ -43,7 +43,7 @@ fi exec erl \ -pa "`dirname $0`/../ebin" \ -noshell \ - -eval 'rabbit_mnesia:update_needed()' \ + -eval 'halt(case rabbit_mnesia:update_needed() of true -> 1; false -> 0 end).' \ -mnesia dir "\"${MNESIA_DIR}\"" \ -kernel error_logger '{file,"'/dev/null'"}' \ - ${CLUSTER_CONFIG} \ + ${CLUSTER_CONFIG} diff --git a/src/rabbit_mnesia.erl b/src/rabbit_mnesia.erl index 140574b5db..91c8e47723 100644 --- a/src/rabbit_mnesia.erl +++ b/src/rabbit_mnesia.erl @@ -51,7 +51,7 @@ -spec(reset/0 :: () -> 'ok'). -spec(force_reset/0 :: () -> 'ok'). -spec(create_tables/0 :: () -> 'ok'). --spec(update_needed/0 :: () -> 'halt'). +-spec(update_needed/0 :: () -> bool()). -endif. @@ -102,12 +102,13 @@ update_needed() -> ok = ensure_mnesia_running(), ok = ensure_mnesia_dir(), ok = init_db(read_cluster_nodes_config()), - try ensure_schema_integrity() + try + ensure_schema_integrity(), + false catch {error, {schema_integrity_check_failed, _Reason}} -> - halt(1) - end, - halt(). + true + end. %%-------------------------------------------------------------------- |
