_exit(0);
}
- while (++count < 30) {
+ while (count++ < 30) {
ret = write(fd[1], &ret, sizeof(ret));
- if (ret == sizeof(ret)) {
- break;
+ if (ret != sizeof(ret)) {
+ DEBUG(DEBUG_ERR, (__location__ " Failed to write to socket from freeze child. ret:%d errno:%u\n", ret, errno));
}
-
- DEBUG(DEBUG_ERR, (__location__ " Failed to write to socket from freeze child. ret:%d errno:%u\n", ret, errno));
sleep (1);
}
if (count >= 30) {
}
/* some special handling when ending recovery mode */
+
+ /* force the databased to thaw */
+ if (ctdb->freeze_handle) {
+ ctdb_control_thaw(ctdb);
+ }
+
state = talloc(ctdb, struct ctdb_set_recmode_state);
CTDB_NO_MEMORY(ctdb, state);