Fixed the master server query.
The master server should only take modules from servers of the same type.
This commit is contained in:
parent
37aa4cc88c
commit
12190834a0
|
@ -112,7 +112,7 @@ sub data_producer ($) {
|
|||
} else {
|
||||
@rows = get_db_rows ($dbh, 'SELECT tagente_modulo.id_agente_modulo, tagente_modulo.flag, tagente_estado.last_execution_try, tagente_estado.current_interval + tagente_estado.last_execution_try AS time_left, last_execution_try
|
||||
FROM tagente, tagente_modulo, tagente_estado
|
||||
WHERE ((server_name = ?) OR (server_name = ANY(SELECT name FROM tserver WHERE status = 0)))
|
||||
WHERE ((server_name = ?) OR (server_name = ANY(SELECT name FROM tserver WHERE status = 0 AND server_type = ?)))
|
||||
AND tagente_modulo.id_agente = tagente.id_agente
|
||||
AND tagente.disabled = 0
|
||||
AND tagente_modulo.disabled = 0
|
||||
|
@ -121,7 +121,7 @@ sub data_producer ($) {
|
|||
. (defined ($network_filter) ? $network_filter : ' ') .
|
||||
'AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo
|
||||
AND (tagente_modulo.flag = 1 OR ((tagente_estado.last_execution_try + tagente_estado.current_interval) < UNIX_TIMESTAMP()))
|
||||
ORDER BY tagente_modulo.flag DESC, time_left ASC, tagente_estado.last_execution_try ASC', $pa_config->{'servername'});
|
||||
ORDER BY tagente_modulo.flag DESC, time_left ASC, tagente_estado.last_execution_try ASC', $pa_config->{'servername'}, DATASERVER);
|
||||
}
|
||||
|
||||
foreach my $row (@rows) {
|
||||
|
|
|
@ -110,14 +110,14 @@ sub data_producer ($) {
|
|||
} else {
|
||||
@rows = get_db_rows ($dbh, 'SELECT DISTINCT(tagente_modulo.id_agente_modulo), tagente_modulo.flag, tagente_estado.current_interval + tagente_estado.last_execution_try AS time_left, last_execution_try
|
||||
FROM tagente, tagente_modulo, tagente_estado
|
||||
WHERE ((server_name = ?) OR (server_name = ANY(SELECT name FROM tserver WHERE status = 0)))
|
||||
WHERE ((server_name = ?) OR (server_name = ANY(SELECT name FROM tserver WHERE status = 0 AND server_type = ?)))
|
||||
AND tagente_modulo.id_agente = tagente.id_agente
|
||||
AND tagente.disabled = 0
|
||||
AND tagente_modulo.disabled = 0
|
||||
AND tagente_modulo.id_plugin != 0
|
||||
AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo
|
||||
AND (tagente_modulo.flag = 1 OR (tagente_estado.last_execution_try + tagente_estado.current_interval) < UNIX_TIMESTAMP())
|
||||
ORDER BY tagente_modulo.flag DESC, time_left ASC, last_execution_try ASC', $pa_config->{'servername'});
|
||||
ORDER BY tagente_modulo.flag DESC, time_left ASC, last_execution_try ASC', $pa_config->{'servername'}, PLUGINSERVER);
|
||||
}
|
||||
|
||||
foreach my $row (@rows) {
|
||||
|
|
|
@ -114,7 +114,7 @@ sub data_producer ($) {
|
|||
WHERE ((server_name = ?)
|
||||
OR (server_name = ANY(SELECT name
|
||||
FROM tserver
|
||||
WHERE status = 0)))
|
||||
WHERE status = 0 AND server_type = ?)))
|
||||
AND tagente_modulo.id_agente = tagente.id_agente
|
||||
AND tagente.disabled = 0
|
||||
AND tagente_modulo.disabled = 0
|
||||
|
@ -123,7 +123,7 @@ sub data_producer ($) {
|
|||
AND tagente_modulo.id_modulo = 5
|
||||
AND (tagente_modulo.flag = 1
|
||||
OR (tagente_estado.last_execution_try + tagente_estado.current_interval) < UNIX_TIMESTAMP())
|
||||
ORDER BY last_execution_try ASC', $pa_config->{'servername'});
|
||||
ORDER BY last_execution_try ASC', $pa_config->{'servername'}, PREDICTIONSERVER);
|
||||
}
|
||||
|
||||
foreach my $row (@rows) {
|
||||
|
|
|
@ -136,11 +136,6 @@ sub data_producer ($) {
|
|||
|
||||
my @tasks;
|
||||
|
||||
# Slave server
|
||||
if ($pa_config->{'pandora_master'} == 0 && get_db_value ($dbh, 'SELECT name FROM tserver WHERE name = ANY(SELECT name FROM tserver WHERE status = 0)') == undef) {
|
||||
return @tasks;
|
||||
}
|
||||
|
||||
# Reset storm protection counters
|
||||
my $curr_time = time ();
|
||||
if ($pa_config->{"__storm_ref__"} + $pa_config->{"snmp_storm_timeout"} < $curr_time) {
|
||||
|
|
|
@ -109,14 +109,14 @@ sub data_producer ($) {
|
|||
} else {
|
||||
@rows = get_db_rows ($dbh, 'SELECT DISTINCT(tagente_modulo.id_agente_modulo), tagente_modulo.flag, tagente_estado.current_interval + tagente_estado.last_execution_try AS time_left, last_execution_try
|
||||
FROM tagente, tagente_modulo, tagente_estado, tserver
|
||||
WHERE ((server_name = ?) OR (server_name = ANY(SELECT name FROM tserver WHERE status = 0)))
|
||||
WHERE ((server_name = ?) OR (server_name = ANY(SELECT name FROM tserver WHERE status = 0 AND server_type = ?)))
|
||||
AND tagente_modulo.id_agente = tagente.id_agente
|
||||
AND tagente.disabled = 0
|
||||
AND tagente_modulo.disabled = 0
|
||||
AND tagente_modulo.id_modulo = 6
|
||||
AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo
|
||||
AND ((tagente_estado.last_execution_try + tagente_estado.current_interval) < UNIX_TIMESTAMP() OR tagente_modulo.flag = 1 )
|
||||
ORDER BY tagente_modulo.flag DESC, time_left ASC, last_execution_try ASC', $pa_config->{'servername'});
|
||||
ORDER BY tagente_modulo.flag DESC, time_left ASC, last_execution_try ASC', $pa_config->{'servername'}, WMISERVER);
|
||||
}
|
||||
|
||||
foreach my $row (@rows) {
|
||||
|
|
Loading…
Reference in New Issue