ValueMetric overhaul
This is savaged from the large cl. 1. Simplify the logic in ValueMetricProducer. 1.1 for pull data on bucket boundary, we pull on bucket end, instead of playing with timestamp twice. 1.2 for data that require diffing, we keep a rolling diff base that gets updated. 1.3 Now we check condition in onMatchedLogEventInternalLocked for pushed atoms. For pulled atoms, check before commit time. This was very error prone in P and caused multiple bugs. It is much simpler now. 2. Treat pushed and pulled atoms the same way and share the same aggregation types. 4. Allow decreasing values for diffing. 5. Allow diffing for pushed atoms. 6. For diff based aggregation, if the diff value is zero, we skip output. Bug: 117224984 Bug: 115683963 Bug: 117975256 Bug: 113268259 Test: unit test Change-Id: I6ee306e9f6e5a166b392c443594704e7d2792ef5
Loading
Please register or sign in to comment