Ayal Baron has posted comments on this change.
Change subject: core: prevent simultaneous reconstructs on the same
pool(#845838)
......................................................................
Patch Set 12: I would prefer that you didn't submit this
(4 inline comments)
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/ReconstructMasterDomainCommand.java
Line 54:
Line 55: @Override
Line 56: protected boolean canDoAction() {
Line 57: boolean toReturn = false;
Line 58: // if we perform an recovery storage pool comand we should
only try to lock the pool
s/.*/ Abort manual reconstruct if system has automatically initiated pool
reconstruct/
Line 59: // in order to avoid interrupting automatic processes.
Line 60: if (VdcActionType.RecoveryStoragePool.equals(getActionType())
&&
Line 61:
!IrsBrokerCommand.tryLockIrsProxyData(getStoragePool().getId())) {
Line 62: // TODO: distinguish between storage pool during
reconstruct and deleted storage pool, this message
Line 71: }
Line 72: }
Line 73:
Line 74: try {
Line 75: toReturn = performChecks();
instead of all this toReturn business, why not:
if !performChecks() {
throw ...
} catch (Exception e) {
IrsBrokerCommand...
return false;
}
return true;
Line 76: } catch (Exception e) {
Line 77: toReturn = false;
Line 78: } finally {
Line 79: if (!toReturn) {
Line 187: .RunVdsCommand(
Line 188: VDSCommandType.MarkPoolInReconstructMode,
Line 189: new
MarkPoolInReconstructModeVDSCommandParameters(getStoragePoolId()
Line 190: .getValue(),
ReconstructMarkAction.ClearCache));
Line 191: // if we got here - it mean that the IrsProxyData lock
was performed by
s/mean/means/
s/performed/acquired/
Line 192: // canDoAction() method and that it's still held by this
thread.
Line 193:
IrsBrokerCommand.unLockIrsProxyData(getStoragePool().getId());
Line 194: }
Line 195: }
....................................................
File backend/manager/modules/dal/src/main/resources/bundles/AppErrors.properties
Line 330: ACTION_TYPE_FAILED_STORAGE_DOMAIN_STATUS_ILLEGAL=Cannot ${action}
${type}. The relevant Storage Domain is inaccessible.\n\
Line 331: -Please handle Storage Domain issues and retry the operation.
Line 332: ACTION_TYPE_FAILED_STORAGE_DOMAIN_STATUS_ILLEGAL2=Cannot ${action}
${type}. Storage status is ${status}.\n\
Line 333: -Please check Storage Domain and retry the operation.
Line 334: ACTION_TYPE_FAILED_STORAGE_POOL_DURING_RECONSTRUCT=Cannot ${action}.
Storage Pool is currently being reconstructed.
Afaik the only reference to this operation in the GUI is "Data Center
Re-Initialize" (not that I understand the phrasing, but anyway).
So for consistency this should be around the same lines. Probably something
like:
'data center reinitialization in progress' or something.
Also, users should not see 'pool' anywhere as we do not expose this concept.
Line 335: STORAGE_POOL_REINITIALIZE_WITH_MORE_THAN_ONE_DATA_DOMAIN = Cannot
${action} ${type}.\n\
Line 336: The ${action} action can be performed on a Data Center that has only
one Storage Domain in Active/Unknown state.
Line 337: ACTION_TYPE_FAILED_STORAGE_POOL_NOT_EXIST= Data Center doesn't exist.
Line 338: ACTION_TYPE_FAILED_STORAGE_DOMAIN_NOT_IN_STORAGE_POOL=Cannot
${action} ${type}. The selected Storage Domain is not part of the Data Center.
--
To view, visit http://gerrit.ovirt.org/7982
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: Ia0dfb227b014af602e5bd1ab952d7c543992aa0f
Gerrit-PatchSet: 12
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Liron Aravot <[email protected]>
Gerrit-Reviewer: Allon Mureinik <[email protected]>
Gerrit-Reviewer: Ayal Baron <[email protected]>
Gerrit-Reviewer: Daniel Paikov <[email protected]>
Gerrit-Reviewer: Liron Aravot <[email protected]>
Gerrit-Reviewer: Maor Lipchuk <[email protected]>
Gerrit-Reviewer: Michael Kublin <[email protected]>
Gerrit-Reviewer: Vered Volansky <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches