diff --git a/xCAT-server/sbin/xcatd b/xCAT-server/sbin/xcatd index a22a86315..11253f2da 100755 --- a/xCAT-server/sbin/xcatd +++ b/xCAT-server/sbin/xcatd @@ -1432,7 +1432,7 @@ sub dispatch_request { } if ($onlyone and not ($_->{'_xcatdest'} and xCAT::Utils->thishostisnot($_->{'_xcatdest'}))) { $SIG{CHLD}='DEFAULT'; - if ($_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; } + if ($_->{'_xcatdelay'} and not ref $_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; } ${"xCAT_plugin::".$modname."::"}{process_request}->($_,$dispatch_cb,\&do_request); return; } @@ -1462,7 +1462,7 @@ sub dispatch_request { $dispatch_parentfd = $parfd; my @prexcatdests=(); my @xcatdests=(); - if ($_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; } + if ($_->{'_xcatdelay'} and not ref $_->{'_xcatdelay'}) { sleep $_->{'_xcatdelay'}; } if (ref($_->{'_xcatdest'}) eq 'ARRAY') { #If array, consider it an 'anycast' operation, broadcast done through dupe #requests, or an alternative join '&' maybe? @prexcatdests=@{$_->{'_xcatdest'}};