Yair Zaslavsky has submitted this change and it was merged.
Change subject: engine: Introducing a queue for failovers event
......................................................................
engine: Introducing a queue for failovers event
The following patch will introduce a queue for failovers event.
The Idea is to use the follwoing queue in order to ensure a correct order of
the following operations: reconstruct, domain recovery, domain monitoring, etc...
The appropriate event should be submitted to queue and will be executed accorrding to
internal logic of the queue.
Because of the execution of events is done in a separate thread no deadlock should
occurred, also
no need for excplicit additional locking
This is the first patch it will introduce a queue and all stuff should work as before,
but
using of queue with small change will allow: to reject unneeded events when some othe
event is running,
ensure order, ensure appropriate release of quartz threads, fix a races
The following patch also introduce a using of queue, from different places, including
RecoveryStoragePoolCommand
Change-Id: Ic1224feacdcdaaaf0b59d26105805ba7ef2a2fff
Bug-Url:
https://bugzilla.redhat.com/882837
Signed-off-by: Michael Kublin <mkublin(a)redhat.com>
---
M
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MaintananceVdsCommand.java
M
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VdsEventListener.java
A
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/eventqueue/EventQueueMonitor.java
M
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ReconstructMasterDomainCommand.java
M
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/RecoveryStoragePoolCommand.java
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/ReconstructMasterParameters.java
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/RecoveryStoragePoolParameters.java
M
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/IVdsEventListener.java
A
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/eventqueue/Event.java
A
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/eventqueue/EventQueue.java
A
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/eventqueue/EventResult.java
A
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/eventqueue/EventType.java
M
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ejb/BeanType.java
M
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/ejb/EngineEJBUtilsStrategy.java
M
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/threadpool/ThreadPoolUtil.java
D
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IIrsBroker.java
M
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/irsbroker/IrsBrokerCommand.java
17 files changed, 538 insertions(+), 244 deletions(-)
Approvals:
Yair Zaslavsky: Verified; Looks good to me, approved
--
To view, visit
http://gerrit.ovirt.org/9838
To unsubscribe, visit
http://gerrit.ovirt.org/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Ic1224feacdcdaaaf0b59d26105805ba7ef2a2fff
Gerrit-PatchSet: 7
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Michael Kublin <mkublin(a)redhat.com>
Gerrit-Reviewer: Allon Mureinik <amureini(a)redhat.com>
Gerrit-Reviewer: Barak Azulay <bazulay(a)redhat.com>
Gerrit-Reviewer: Eli Mesika <emesika(a)redhat.com>
Gerrit-Reviewer: Liron Aravot <laravot(a)redhat.com>
Gerrit-Reviewer: Michael Kublin <mkublin(a)redhat.com>
Gerrit-Reviewer: Moti Asayag <masayag(a)redhat.com>
Gerrit-Reviewer: Omer Frenkel <ofrenkel(a)redhat.com>
Gerrit-Reviewer: Ravi Nori <rnori(a)redhat.com>
Gerrit-Reviewer: Roy Golan <rgolan(a)redhat.com>
Gerrit-Reviewer: Yair Zaslavsky <yzaslavs(a)redhat.com>
Gerrit-Reviewer: liron aravot <liron.aravot(a)gmail.com>