I thought executeInSequence of 'true' made it go serially, or sequentially. In my codebase for 4.1,4.2,master it's been 'true' since August of 2010:
2010-08-11 09:13:29 -0700 19) public class MigrateCommand extends Command { 2010-08-11 09:13:29 -0700 20) String vmName; 2010-08-11 09:13:29 -0700 21) String destIp; 2011-08-10 10:26:04 -0700 22) String hostGuid; 2010-08-11 09:13:29 -0700 23) boolean isWindows; 2010-08-11 09:13:29 -0700 24) 2010-08-11 09:13:29 -0700 25) 2010-08-11 09:13:29 -0700 26) protected MigrateCommand() { 2010-08-11 09:13:29 -0700 27) } 2012-12-03 22:06:41 -0800 28) 2010-08-11 09:13:29 -0700 29) public MigrateCommand(String vmName, String destIp, boolean isWindows) 2010-08-11 09:13:29 -0700 30) this.vmName = vmName; 2010-08-11 09:13:29 -0700 31) this.destIp = destIp; 2010-08-11 09:13:29 -0700 32) this.isWindows = isWindows; 2010-08-11 09:13:29 -0700 33) } 2012-12-03 22:06:41 -0800 34) 2010-08-11 09:13:29 -0700 35) public boolean isWindows() { 2010-08-11 09:13:29 -0700 36) return isWindows; 2010-08-11 09:13:29 -0700 37) } 2012-12-03 22:06:41 -0800 38) 2010-08-11 09:13:29 -0700 39) public String getDestinationIp() { 2010-08-11 09:13:29 -0700 40) return destIp; 2010-08-11 09:13:29 -0700 41) } 2012-12-03 22:06:41 -0800 42) 2010-08-11 09:13:29 -0700 43) public String getVmName() { 2010-08-11 09:13:29 -0700 44) return vmName; 2010-08-11 09:13:29 -0700 45) } 2012-12-03 22:06:41 -0800 46) 2011-08-10 10:26:04 -0700 47) public void setHostGuid(String guid) { 2011-08-10 10:26:04 -0700 48) this.hostGuid = guid; 2011-08-10 10:26:04 -0700 49) } 2012-12-03 22:06:41 -0800 50) 2011-08-10 10:26:04 -0700 51) public String getHostGuid() { 2011-08-10 10:26:04 -0700 52) return this.hostGuid; 2011-08-10 10:26:04 -0700 53) } 2010-08-11 09:13:29 -0700 54) 2010-08-11 09:13:29 -0700 55) @Override 2010-08-11 09:13:29 -0700 56) public boolean executeInSequence() { 2010-08-11 09:13:29 -0700 57) return true; 2010-08-11 09:13:29 -0700 58) } 2010-08-11 09:13:29 -0700 59) } On Tue, Sep 24, 2013 at 9:58 AM, Chip Childers <chip.child...@sungard.com> wrote: > Hey Kelven - This topic was discussed briefly in the past [1]. Are you > able to provide any thoughts on Alex's ideas below? > > -chip > > > [1] http://markmail.org/message/fznrszaswruvlmuy > > > > On Tue, Sep 24, 2013 at 10:53:04AM -0500, Alex Ough wrote: >> For a resolution without breaking possible flows, I'd like to add the value >> of 'executeInSequence' to the global setting. >> Is there any reason not to do this? >> >> Thanks >> Alex Ough >> >> >> On Mon, Sep 23, 2013 at 12:57 PM, Alex Ough <alex.o...@sungard.com> wrote: >> >> > All, >> > >> > After a little more investigation, I found that the 'MigrateCommand' >> > defined its 'executeInSequence' method to return 'FALSE', which seems to >> > make the vm migrations as serial even if the migration requests are >> > dispatched to ha_worker in parallel. >> > You can confirm this in line 56 of >> > '/cloudstack/core/src/com/cloud/agent/api/MigrateCommand.java' >> > >> > So my question is if there is any reason why the method have been >> > defined to return 'FALSE' always? >> > And do we expect any side effects and/or malfunctioning if we change it to >> > returning 'TRUE'? >> > >> > Any answers/comments will be very appreciated. >> > Thanks >> > Alex Ough >> > >> > >> > On Wed, Sep 18, 2013 at 10:22 AM, Alex Ough <alex.o...@sungard.com> wrote: >> > >> >> I checked the vm migration when their host is set to a maintenance mode >> >> and found that even if the orchestration layer fires the each vm migration >> >> at the same time using a ha_worker thread, the actual migration seems to >> >> be >> >> executed serially. >> >> >> >> Is this what we expect? And if so, any chance to make the actual >> >> migrations in parallel? >> >> >> >> Thanks >> >> Alex Ough >> >> >> > >> >