diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_memory_monitor.erl | 18 |
1 files changed, 6 insertions, 12 deletions
diff --git a/src/rabbit_memory_monitor.erl b/src/rabbit_memory_monitor.erl index 66c01298e8..62b464e0f3 100644 --- a/src/rabbit_memory_monitor.erl +++ b/src/rabbit_memory_monitor.erl @@ -209,11 +209,12 @@ internal_update(State = #state{queue_durations = Durations, desired_duration = DesiredDurationAvg, disk_alarm = DiskAlarm}) -> DesiredDurationAvg1 = desired_duration_average(State), - State1 = State#state{desired_duration = DesiredDurationAvg1}, - maybe_inform_queues( - should_inform_predicate(DiskAlarm), - DesiredDurationAvg, DesiredDurationAvg1, Durations), - State1. + ShouldInform = should_inform_predicate(DiskAlarm), + case ShouldInform(DesiredDurationAvg, DesiredDurationAvg1) of + true -> inform_queues(ShouldInform, DesiredDurationAvg1, Durations); + false -> ok + end, + State#state{desired_duration = DesiredDurationAvg1}. desired_duration_average(#state{queue_duration_sum = Sum, queue_duration_count = Count, @@ -237,13 +238,6 @@ desired_duration_average(#state{queue_duration_sum = Sum, (Sum / Count) / MemoryRatio end. -maybe_inform_queues(ShouldInform, DesiredDurationAvg, DesiredDurationAvg1, - Durations) -> - case ShouldInform(DesiredDurationAvg, DesiredDurationAvg1) of - true -> inform_queues(ShouldInform, DesiredDurationAvg1, Durations); - false -> ok - end. - inform_queues(ShouldInform, DesiredDurationAvg, Durations) -> true = ets:foldl( |
