[rabbitmq-discuss] Rabbit Node Won't Boot No Matter What I Do (schema_integrity_check_failed)
stuff at moesel.net
Wed Jan 23 14:57:05 GMT 2013
If I delete the database *and* insert a 30-second sleep after the server
starts in the script, then it seems to work reliably. Hurray!
It's worth noting, however, that if I remove the 30-second sleep (so it
immediately goes to stop_app/reset/start_app), then it can corrupt the
database on subsequent runs. Once corrupted, it seems there is no way to
recover but delete the mnesia database. So something in stop_app, reset,
or start_app seems to be destructive to a still-initializing RabbitMQ
Thanks again for the help! I had tried the sleep before-- but I guess it
wasn't long enough.
On Wed, Jan 23, 2013 at 7:53 AM, Chris <stuff at moesel.net> wrote:
> Thank you, Tim and Matthias.
> Tim: Yes, I'm aware that many of these things can use rabbitmqctl instead
> of HTTP API. I had started switching things to HTTP API (so, in theory, if
> I ever need to put my own GUI on these commands, I'll know the calls)-- but
> didn't get through it all yet. In hindsight, maybe I should stick with
> rabbitmqctl for now so I can more easily see what is going on. Thanks for
> making me think about it.
> Regarding the startup of servers, that's a good point and something I had
> thought of. While troubleshooting, I inserted a "sleep 2" after the rabbit
> startups to give them a couple of seconds to sleep. I don't think I can
> use "rabbitmqctl wait <pid_file>" because when I start the servers in
> detached mode it specifically says: "Warning: PID file not written;
> -detached was passed." I tried "rabbitmqctl -n rabbita wait", but get back
> an error saying it is an invalid command. I guess I will experiment with
> "sleep" again, but use a value greater than 2 seconds.
> Matthias: After deleting the mnesia database I tried multiple times to get
> the node up. Maybe there was a different error the first time, but I noted
> the error from subsequent times. I'll try from scratch again and see what
> Thanks again-- I really appreciate the pointers.
> On Wed, Jan 23, 2013 at 4:57 AM, Matthias Radestock <matthias at rabbitmq.com
> > wrote:
>> On 23/01/13 09:36, Tim Watson wrote:
>>> Where do you set
>>> the RABBITMQ_MNESIA_BASE and/or RABBITMQ_MNESIA_DIR for the individual
>> The script supplies a RABBITMQ_NODENAME, which is sufficient.
>> Btw, as an aside, I notice that the script employs a mixture of
>> rabbitmqctl and management API access. The latter for creating vhosts,
>> granting user permissions, setting up queue mirroring policies and
>> federated exchanges. All but the last one can be done with rabbitmqctl.
>> Can you confirm the database directory deletion by running `ls -la`
>>> afterwards to make sure everything's gone, and then try starting up a
>>> single node.
>> One problem with the scripts is that the servers are started
>> asynchronously, with -detached, so they may not have fully started by the
>> time the subsequent rabbitmqctl invocations try to talk to them. A
>> judicious insertion of 'rabbitmqctl wait <pid_file>' should solve that.
>> rabbitmq-discuss mailing list
>> rabbitmq-discuss at lists.**rabbitmq.com<rabbitmq-discuss at lists.rabbitmq.com>
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the rabbitmq-discuss