diff --git a/perl-xCAT/xCAT/FSPpower.pm b/perl-xCAT/xCAT/FSPpower.pm index 0c0e2e9bd..bf6b35d79 100644 --- a/perl-xCAT/xCAT/FSPpower.pm +++ b/perl-xCAT/xCAT/FSPpower.pm @@ -386,8 +386,20 @@ sub state { # Node not found ################################## if ( !exists( $data->{$id} )) { - push @result, [$name, $prefix."Node not found",1]; - next; + my $res = xCAT::FSPUtils::fsp_api_action($name, $d, "state"); + my $rc = @$res[2]; + my $val = @$res[1]; + if( $rc != 0) { + push @result, [$name, $prefix.$val,1]; + } + + if( !defined($val) || $val =~ /^error$/ ) { + push @result, [$name, $prefix."Node not found",1]; + next; + } else { + $data->{$id} = $val; + } + } ################################## # Output value