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
<[email protected]> 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 <[email protected]> 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 <[email protected]> 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
>> >>
>> >
>> >