diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2013-11-15 16:43:04 +0000 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2013-11-15 16:43:04 +0000 |
| commit | fa79daa768af025d9a434fb3827f045b3fcaee31 (patch) | |
| tree | 8a896742ade2e75e4851eed86944ad19c418b0b2 | |
| parent | 8d6e62060652766cfa24090bc240e2493a4110fd (diff) | |
| download | rabbitmq-server-git-fa79daa768af025d9a434fb3827f045b3fcaee31.tar.gz | |
Store timestamps as integers.
| -rw-r--r-- | src/rabbit_amqqueue_process.erl | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index 9a4f3205cc..09cb425401 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -157,8 +157,8 @@ init_state(Q) -> exclusive_consumer = none, has_had_consumers = false, active_consumers = priority_queue:new(), - consumer_use_info = #cu_info{inactive = erlang:now(), - active = erlang:now(), + consumer_use_info = #cu_info{inactive = now_micros(), + active = now_micros(), inactive_dur = 1, active_dur = 1}, senders = pmon:new(delegate), @@ -551,20 +551,20 @@ deliver_from_queue_deliver(AckRequired, State) -> update_cu(#cu_info{active = WhenActive, inactive = WhenInactive} = CUInfo, inactive) -> - case timer:now_diff(WhenInactive, WhenActive) > 0 of + case WhenInactive > WhenActive of true -> CUInfo; - false -> Now = erlang:now(), - CUInfo#cu_info{active_dur = timer:now_diff(Now, WhenActive), + false -> Now = now_micros(), + CUInfo#cu_info{active_dur = Now - WhenActive, inactive = Now} end; update_cu(#cu_info{inactive = WhenInactive, active = WhenActive, active_dur = Active, avg = Avg} = CUInfo, active) -> - case timer:now_diff(WhenActive, WhenInactive) > 0 of + case WhenActive > WhenInactive of true -> CUInfo; - false -> Now = erlang:now(), - Inactive = timer:now_diff(Now, WhenInactive), + false -> Now = now_micros(), + Inactive = Now - WhenInactive, Time = Inactive + Active, Ratio = Active / Time, Weight = erlang:min(1, Time / 1000000), @@ -1083,9 +1083,9 @@ i(consumer_utilisation, #q{consumer_use_info = #cu_info{active = WhenActive, inactive = WhenInactive, avg = Avg}}) -> - Now = erlang:now(), - case timer:now_diff(Now, WhenInactive) < 5000000 of - false -> case timer:now_diff(WhenInactive, WhenActive) > 0 of + Now = now_micros(), + case Now - WhenInactive < 5000000 of + false -> case WhenInactive > WhenActive of true -> inactive; false -> active end; |
