Marcus/Kelven, Any thoughts on my suggestions?
Thanks Alex Ough On Tue, Sep 24, 2013 at 12:09 PM, Alex Ough <alex.o...@sungard.com> wrote: > Oh, sorry for the confusion. I must have reversed the flags. > As Kelven pointed, it is set as 'TRUE', which makes the process as > sequential. > > So my questions are > 1. If there is any reason why the method have been defined to return '* > TRUE*' always? > 2. Do we expect any side effects and/or malfunctioning if we change it to > returning *'FALSE*'? > 3. For a resolution without breaking possible flows, can we add the value > of 'executeInSequence' to the global setting if #2 answers YES? > > > On Tue, Sep 24, 2013 at 11:19 AM, Marcus Sorensen <shadow...@gmail.com>wrote: > >> 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 >> >> >> >> >> > >> >> > >> >> >