Allon Mureinik has posted comments on this change.
Change subject: engine: if connect storage pool fails on version mismatch, do
reconstruct master
......................................................................
Patch Set 3: (4 inline comments)
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/eventqueue/EventQueueMonitor.java
Line 70: Event currentEvent =
poolCurrentEventMap.get(storagePoolId);
Line 71: if (currentEvent != null) {
Line 72: switch (currentEvent.getEventType()) {
Line 73: case RECONSTRUCT:
Line 74: if (event.getEventType() ==
EventType.VDSCONNECTTOPOOL) {
not a fan of the specific treatment here - again, what happens if we decide the
same behaior is also required in other flows?
Line 75: task = addTaskToQueue(event, callable,
storagePoolId);
Line 76: } else {
Line 77: log.debugFormat("Current event was skiped
because of reconstruct is running now for pool {0}, event {1}",
Line 78: storagePoolId, event);
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/StorageHandlingCommandBase.java
Line 38:
Line 39: public abstract class StorageHandlingCommandBase<T extends
StoragePoolParametersBase> extends CommandBase<T> {
Line 40: public StorageHandlingCommandBase(T parameters) {
Line 41: super(parameters);
Line 42: setVdsId(parameters.getVdsId());
If you add it here (which look like a good idea, IMHO), it should also be
removed in:
AddStorageDomainCommand
ConnectHostToStoragePoolServersCommand
DisconnectHostFromStoragePoolServersCommand
ForceRemoveStorageDomainCommand
ReconstructMasterDomainCommand
RemoveStorageDomainComman
StorageServerConnectionCommandBase
Line 43: if (getParameters() != null &&
!getParameters().getStoragePoolId().equals(Guid.Empty)) {
Line 44: setStoragePoolId(getParameters().getStoragePoolId());
Line 45: }
Line 46: }
....................................................
File
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/eventqueue/EventType.java
Line 6: DOMAINNOTOPERATIONAL,
Line 7: VDSSTOARGEPROBLEMS,
Line 8: DOMAINMONITORING,
Line 9: VDSCLEARCACHE,
Line 10: VDSCONNECTTOPOOL;
Why isn't this part of the previous patch?
....................................................
Commit Message
Line 5: CommitDate: 2012-12-17 14:37:25 +0200
Line 6:
Line 7: engine: if connect storage pool fails on version mismatch, do
reconstruct master
Line 8:
Line 9: The following patch will allow to perform reconstruct from InitVdsOnUp,
for case that we
s/for case/in case/
Line 10: can not connect to pool because of wrong master version or missing
master domain.
Line 11: Using of event queue will protect from parallel reconstructs and from
other races.
Line 12: The flow is a following:
Line 13: 1. Try connect to pool
--
To view, visit http://gerrit.ovirt.org/10103
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ia0d11c068399664daf85a6b03e67d25cd382707e
Gerrit-PatchSet: 3
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Michael Kublin <[email protected]>
Gerrit-Reviewer: Allon Mureinik <[email protected]>
Gerrit-Reviewer: Ayal Baron <[email protected]>
Gerrit-Reviewer: Barak Azulay <[email protected]>
Gerrit-Reviewer: Daniel Erez <[email protected]>
Gerrit-Reviewer: Liron Aravot <[email protected]>
Gerrit-Reviewer: Maor Lipchuk <[email protected]>
Gerrit-Reviewer: Michael Kublin <[email protected]>
Gerrit-Reviewer: Tal Nisan <[email protected]>
Gerrit-Reviewer: Yair Zaslavsky <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches