Fixed one issue that rscan -u didn't update fsp's parent correctly
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@5295 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
parent
980c554a4c
commit
5efde02556
@ -265,6 +265,9 @@ sub update_ppc {
|
||||
}
|
||||
}
|
||||
|
||||
my @newppclist = $db{ppc}->getAllNodeAttribs(['node','hcp','id',
|
||||
'pprofile','parent','supernode',
|
||||
'comments', 'disable']);
|
||||
###################################
|
||||
# Update BPA in tables
|
||||
###################################
|
||||
@ -278,7 +281,7 @@ sub update_ppc {
|
||||
$server,
|
||||
$pprofile,
|
||||
$parent,
|
||||
$ips ) = split /,/;
|
||||
$ips ) = split /,/, $value;
|
||||
|
||||
next if ( $type ne 'bpa');
|
||||
|
||||
@ -301,7 +304,7 @@ sub update_ppc {
|
||||
}
|
||||
if (update_node_attribs($hwtype, $type, $name, $id, $model, $serial, $side,
|
||||
$server, $pprofile, $parent, $ips,
|
||||
\%db, $predefined_node, \@ppclist))
|
||||
\%db, $predefined_node, \@newppclist))
|
||||
{
|
||||
push @update_list, $value;
|
||||
}
|
||||
@ -345,7 +348,7 @@ sub update_node_attribs
|
||||
#############################
|
||||
# update vpd table
|
||||
#############################
|
||||
my $vpdhash = $db->{vpd}->getNodeAttribs( $name, [qw(mtm serial)]);
|
||||
my $vpdhash = $db->{vpd}->getNodeAttribs( $predefined_node, [qw(mtm serial)]);
|
||||
if ( $model ne $vpdhash->{mtm} or $serial ne $vpdhash->{serial} or $namediff)
|
||||
{
|
||||
$db->{vpd}->delEntries( $key_col) if ( $namediff);
|
||||
@ -376,7 +379,12 @@ sub update_node_attribs
|
||||
#############################
|
||||
# update ppc table
|
||||
#############################
|
||||
my $ppchash = $db->{ppc}->getNodeAttribs( $name, [qw(hcp id pprofile parent)]);
|
||||
my $ppchash = $db->{ppc}->getNodeAttribs( $predefined_node, [qw(hcp id pprofile parent)]);
|
||||
if ( $ppchash->{parent} ne $predefined_node )
|
||||
{
|
||||
$parent = $ppchash->{parent};
|
||||
}
|
||||
|
||||
if ( $server ne $ppchash->{hcp} or
|
||||
$id ne $ppchash->{id} or
|
||||
$pprofile ne $ppchash->{pprofile} or
|
||||
@ -408,7 +416,7 @@ sub update_node_attribs
|
||||
###########################
|
||||
# Update nodehm table
|
||||
###########################
|
||||
my $nodehmhash = $db->{nodehm}->getNodeAttribs( $name, [qw(mgt)]);
|
||||
my $nodehmhash = $db->{nodehm}->getNodeAttribs( $predefined_node, [qw(mgt)]);
|
||||
if ( $mgt ne $nodehmhash->{mgt} or $namediff)
|
||||
{
|
||||
$db->{nodehm}->delEntries( $key_col) if ( $namediff);
|
||||
@ -420,7 +428,7 @@ sub update_node_attribs
|
||||
###########################
|
||||
# Update nodetype table
|
||||
###########################
|
||||
my $nodetypehash = $db->{nodetype}->getNodeAttribs( $name, [qw(nodetype)]);
|
||||
my $nodetypehash = $db->{nodetype}->getNodeAttribs( $predefined_node, [qw(nodetype)]);
|
||||
if ( $type ne $nodetypehash->{nodetype} or $namediff)
|
||||
{
|
||||
$db->{nodetype}->delEntries( $key_col) if ( $namediff);
|
||||
@ -432,7 +440,7 @@ sub update_node_attribs
|
||||
###########################
|
||||
# Update nodelist table
|
||||
###########################
|
||||
my $nodelisthash = $db->{nodelist}->getNodeAttribs( $name, [qw(groups status appstatus primarysn comments disable)]);
|
||||
my $nodelisthash = $db->{nodelist}->getNodeAttribs( $predefined_node, [qw(groups status appstatus primarysn comments disable)]);
|
||||
if ( $namediff)
|
||||
{
|
||||
updategroups( $name, $db->{nodelist}, $type );
|
||||
@ -450,7 +458,7 @@ sub update_node_attribs
|
||||
###########################
|
||||
# Update hosts table
|
||||
###########################
|
||||
my $hostslisthash = $db->{hosts}->getNodeAttribs( $name, [qw(ip)]);
|
||||
my $hostslisthash = $db->{hosts}->getNodeAttribs( $predefined_node, [qw(ip)]);
|
||||
if ( $namediff )
|
||||
{
|
||||
$db->{hosts}->delEntries( $key_col);
|
||||
|
Loading…
Reference in New Issue
Block a user