-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix aggregation bug for throughput common fields #324
Fix aggregation bug for throughput common fields #324
Conversation
Just like for stats, throughput common fields should only be updated for the "latest" record (based on "flowEndSeconds"). This bug explains why the TestCollectorToIntermediate integration test has been flaky for a long time. In some cases, the record from the destination was processed before the record from the source (we have 2 aggregation workers, so records are not guaranteed to be processed in the order in which they are received). While the destination record has a larger "flowEndSeconds", the "throughput" and "reverseThroughput" common elements were overriden by values from the source record. Signed-off-by: Antonin Bas <abas@vmware.com>
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## main #324 +/- ##
==========================================
+ Coverage 73.48% 73.56% +0.08%
==========================================
Files 18 18
Lines 2795 2796 +1
==========================================
+ Hits 2054 2057 +3
+ Misses 574 572 -2
Partials 167 167
Flags with carried forward coverage won't be shown. Click here to find out more.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks for the fix
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Just like for stats, throughput common fields should only be updated for the "latest" record (based on "flowEndSeconds"). This bug explains why the TestCollectorToIntermediate integration test has been flaky for a long time. In some cases, the record from the destination was processed before the record from the source (we have 2 aggregation workers, so records are not guaranteed to be processed in the order in which they are received). While the destination record has a larger "flowEndSeconds", the "throughput" and "reverseThroughput" common elements were overriden by values from the source record. Signed-off-by: Antonin Bas <abas@vmware.com>
Just like for stats, throughput common fields should only be updated for the "latest" record (based on "flowEndSeconds"). This bug explains why the TestCollectorToIntermediate integration test has been flaky for a long time. In some cases, the record from the destination was processed before the record from the source (we have 2 aggregation workers, so records are not guaranteed to be processed in the order in which they are received). While the destination record has a larger "flowEndSeconds", the "throughput" and "reverseThroughput" common elements were overriden by values from the source record. Signed-off-by: Antonin Bas <abas@vmware.com>
Just like for stats, throughput common fields should only be updated for the "latest" record (based on "flowEndSeconds").
This bug explains why the TestCollectorToIntermediate integration test has been flaky for a long time. In some cases, the record from the destination was processed before the record from the source (we have 2 aggregation workers, so records are not guaranteed to be processed in the order in which they are received). While the destination record has a larger "flowEndSeconds", the "throughput" and "reverseThroughput" common elements were overriden by values from the source record.