Shireesh Anjal has posted comments on this change.
Change subject: gluster: GlusterMultipleActionRunner
......................................................................
Patch Set 2: (4 inline comments)
Thanks Omer for catching a good one! New patch-set to follow.
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/GlusterMultipleActionsRunner.java
Line 23: super.RunCanDoActionAsyncroniousely(returnValues,
currentCanDoActionId, totalSize, latch);
Line 24: } finally {
Line 25: // free the lock so that canDoActionOnly() on next command
doesn't block
Line 26: getCommands().get(currentCanDoActionId).freeLock();
Line 27: }
Great point :) Though it worked when I tested, I guess I was plain lucky! How
about, I extract the code inside the run() method of the thread in a separate
method and override it? Will send a new patch-set with this.
Line 28: }
Line 29:
Line 30: @Override
Line 31: protected void executeValidatedCommands(CommandBase<?> command) {
....................................................
File
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/MultipleActionsRunnersFactory.java
Line 53: break;
Line 54: }
Line 55:
Line 56: case RemoveVds: {
Line 57: if(containsGlusterServer(parameters)) {
Done
Line 58: runner = new GlusterMultipleActionsRunner(actionType,
parameters, isInternal);
Line 59: } else {
Line 60: runner = new MultipleActionsRunner(actionType,
parameters, isInternal);
Line 61: }
Line 70: }
Line 71: return runner;
Line 72: }
Line 73:
Line 74: private static boolean
containsGlusterServer(ArrayList<VdcActionParametersBase> parameters) {
In that case, will the cast not be required in the place where I call this
method? In any case, I think it will look better with your suggestion, and will
do so in the next patch-set.
Line 75: Set<Guid> processed = new HashSet<Guid>();
Line 76: for(VdcActionParametersBase param : parameters) {
Line 77: VDS vds =
DbFacade.getInstance().getVdsDao().get(((RemoveVdsParameters)
param).getVdsId());
Line 78: if (!processed.contains(vds.getvds_group_id())) {
Line 74: private static boolean
containsGlusterServer(ArrayList<VdcActionParametersBase> parameters) {
Line 75: Set<Guid> processed = new HashSet<Guid>();
Line 76: for(VdcActionParametersBase param : parameters) {
Line 77: VDS vds =
DbFacade.getInstance().getVdsDao().get(((RemoveVdsParameters)
param).getVdsId());
Line 78: if (!processed.contains(vds.getvds_group_id())) {
Will add a null check.
Line 79: VDSGroup cluster =
DbFacade.getInstance().getVdsGroupDao().get(vds.getvds_group_id());
Line 80: if (cluster.supportsGlusterService()) {
Line 81: return true;
Line 82: }
--
To view, visit http://gerrit.ovirt.org/10812
To unsubscribe, visit http://gerrit.ovirt.org/settings
Gerrit-MessageType: comment
Gerrit-Change-Id: I0e3dc1fa0b21ab6e0fcaff518bf9696f6c9796ca
Gerrit-PatchSet: 2
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Shireesh Anjal <[email protected]>
Gerrit-Reviewer: Omer Frenkel <[email protected]>
Gerrit-Reviewer: Shireesh Anjal <[email protected]>
Gerrit-Reviewer: Yair Zaslavsky <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches