slapgrid: Fix an upgrade bug in offline processing
When upgrading from a version of slapos.core that does not support processing instances without a connection to master to one that does, the following edgecase could occur: 1. some partition is stopped and processed with old version 2. slapos.core is upgraded 3. connection to master is lost 4. offline processing wrongly starts the services of stopped partition This was because the new version removes the supervisord file for a partition when the partition is stopped (in online mode) so that the offline mode can just start all the existing supervisord files. But since the partitions was never processed in online mode with the new version, this file was never removed. To fix this, we use the (now no longer used ) .requested_state file of the previous version to determine the state of the partition in offline mode, then we remove both the .requested_state file and the supervisord file, fixing the discrepancy.
Showing
Please register or sign in to comment