diff --git a/xCAT-server/lib/xcat/plugins/destiny.pm b/xCAT-server/lib/xcat/plugins/destiny.pm index d2eb6b26d..3cf5ed2e0 100755 --- a/xCAT-server/lib/xcat/plugins/destiny.pm +++ b/xCAT-server/lib/xcat/plugins/destiny.pm @@ -393,7 +393,8 @@ sub setdestiny { if ($errored) { my @myself = xCAT::NetworkUtils->determinehostname(); my $myname = $myself[ (scalar @myself) - 1 ]; - $callback->({ errorcode => [1], error => "Some nodes failed to set up $state resources on server $myname, aborting" }); + # The callback function point to xcatd::build_response, it use dclone to clone data, but it can only accept a reference. The error msg here is a simple string, and will cause dclone failed. Seems to be string array can be used by dclone. + $callback->({ errorcode => [1], error => ["Some nodes failed to set up $state resources on server $myname, aborting"] }); return; }