Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
2.4.2
-
None
-
None
Description
Introduced in:
http://svn.apache.org/viewvc?view=revision&revision=1614746
Affiliation not being universally considered
There's code in utils.pm that sets:
$ENV{management_node_info}->{CLUSTER_INUSE_CHECK}
and possibly other values without regard to affiliation. The affiliation must be considered for every value used from the variable table that is tied to an affiliation.
DataStructure.pm's get_cluster_inuse_check doesn't work
Luckily, $self->data->get_cluster_inuse_check isn't being called from anywhere.
utils.pm sets and uses the following piece of data:
$ENV{management_node_info}->{CLUSTER_INUSE_CHECK}
DataStructure.pm has an automatic (get/set)_cluster_inuse_check method looking for the data in:
$ENV{management_node_info}{cluster_INUSE_CHECK}
Perl is CaSE seNsiTive so this would have never worked.
OS.pm::get_timings
There's also an OS.pm::get_timings subroutine which requires a specific key to be provided as an argument. Thankfully, this actually is checking for affiliation-specific values.
I'm not sure why we need this subroutine as-is. It requires the variable strings to be exactly correct in get_timings as well as the calling subroutine.
It would be better to create a general utils.pm::get_affiliation_variable subroutine which checks if a value exists for the user's affiliation. If not, it returns the Global default value. get_timings and its hard-coded defaults could then go away.
While on the topic, it would also be useful to create a utils.pm::get_management_node_variable subroutine since there are also variables that are management node-specific.
The naming convention for both types of variable should be the same.