Change in ovirt-engine[ovirt-engine-4.1]: core: auto start vms with lease

Code Review gerrit at ovirt.org
Thu Dec 29 09:40:48 UTC 2016


>From Tal Nisan <tnisan at redhat.com>:

Tal Nisan has submitted this change and it was merged.

Change subject: core: auto start vms with lease
......................................................................


core: auto start vms with lease

When detecting that a host is non-responsive we move the VMs that
are supposed to run on that host to Unknown status. This patch
adds to that a special treatment for VMs with leases: for each
VM with a lease, we will try to run the VM on another host.
The lease should prevent us from getting a split-brain. However,
we do not want to try to run the VM on each vds monitoring cycle
(which is by default every 3 seconds) so we define a config value
for setting the frequency of those attempts.

Note that when host becomes non-responsive we get network exceptions
from several places:
1. calls to refresh host capabilities.
2. calls to poll vms (on statistics iterations).
3. every command that interacts with vdsm.

As a result, VdsManager#restartVmsWithLeaseIfNeeded may be called
simultaneously from several threads and that may cause us to skip
a restart attempt. Thus, adding a lock to ensure mutually exclusive
execution of that method.

Change-Id: I464f14fe953a6fedfa53d6655eeb31965b5f1579
Bug-Url: https://bugzilla.redhat.com/1317429
Signed-off-by: Arik Hadas <ahadas at redhat.com>
---
M backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/IVdsEventListener.java
M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/config/ConfigValues.java
M backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/VdsManager.java
M packaging/dbscripts/upgrade/pre_upgrade/0000_config.sql
5 files changed, 57 insertions(+), 0 deletions(-)

Approvals:
  Shahar Havivi: Looks good to me, approved
  Jenkins CI: Passed CI tests
  Arik Hadas: Verified



-- 
To view, visit https://gerrit.ovirt.org/69257
To unsubscribe, visit https://gerrit.ovirt.org/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I464f14fe953a6fedfa53d6655eeb31965b5f1579
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: ovirt-engine-4.1
Gerrit-Owner: Arik Hadas <ahadas at redhat.com>
Gerrit-Reviewer: Arik Hadas <ahadas at redhat.com>
Gerrit-Reviewer: Jenkins CI
Gerrit-Reviewer: Shahar Havivi <shavivi at redhat.com>
Gerrit-Reviewer: Tal Nisan <tnisan at redhat.com>
Gerrit-Reviewer: gerrit-hooks <automation at ovirt.org>


More information about the Engine-commits mailing list