If a ZooKeeper write fails, we throw a FailedZooKeeperOperationException. A stack trace showing this is:
/root/appscale/AppController/lib/zkinterface.rb:638:in `set': Failed to set path /appcontroller/state with data
{:rc=>-7, :stat=>#<ZookeeperStat::Stat:0x7fc864a1e0a8 @exists=false>, :req_id=>11026} (FailedZooKeeperOperationException)
from /root/appscale/AppController/lib/zkinterface.rb:178:in `write_appcontroller_state'
from /root/appscale/AppController/djinn.rb:1461:in `backup_appcontroller_state'
from /root/appscale/AppController/djinn.rb:795:in `job_start'
from /root/appscale/AppController/djinnServer.rb:120
This crashes the AppController, and when it restarts, it removes all the nginx config files on this machine, which makes users unable to access their applications. The AppController fails to restart correctly, so users are never able to access their applications.
If a ZooKeeper write fails, we throw a
FailedZooKeeperOperationException. A stack trace showing this is:This crashes the AppController, and when it restarts, it removes all the nginx config files on this machine, which makes users unable to access their applications. The AppController fails to restart correctly, so users are never able to access their applications.