budget_database is rounding inaccurately on some devices
Reported by
kra...@amazon.com,
Oct 5 2016
|
||
Issue descriptionVersion: Tip of master OS: Android What steps will reproduce the problem? (1) On a Kindle Fire HDX, run unit_tests What is the expected output? All tests pass What do you see instead? C 268.824s Main ******************************************************************************** C 268.830s Main [==========] 2305 tests ran. C 268.830s Main [ PASSED ] 2299 tests. C 268.830s Main [ FAILED ] 6 tests, listed below: C 268.830s Main [ FAILED ] BudgetDatabaseTest.AddEngagementBudgetTest C 268.830s Main [ FAILED ] BudgetDatabaseTest.CheckEngagementHistograms C 268.830s Main [ FAILED ] BudgetManagerTest.GetBudgetConsumedOverTime C 268.830s Main [ FAILED ] BudgetDatabaseTest.CheckBackgroundBudgetHistogram (CRASHED) C 268.830s Main [ FAILED ] BudgetDatabaseTest.GetBudgetNegativeTime (CRASHED) C 268.830s Main [ FAILED ] BudgetDatabaseTest.SpendBudgetTest (CRASHED) 3 of them crash: C 268.823s Main [ERROR:test_suite.cc(270)] Currently running: BudgetDatabaseTest.GetBudgetNegativeTime C 268.823s Main [CRASH] BudgetDatabaseTest.SpendBudgetTest: C 268.823s Main [ RUN ] BudgetDatabaseTest.SpendBudgetTest C 268.823s Main [FATAL:budget_database.cc(166)] Check failed: 0 == total (0 vs. 4.44089e-16) 3 fail: C 268.820s Main [FAIL] BudgetDatabaseTest.AddEngagementBudgetTest: C 268.820s Main [ RUN ] BudgetDatabaseTest.AddEngagementBudgetTest C 268.820s Main ../../chrome/browser/budget_service/budget_database_unittest.cc:126: Failure C 268.820s Main Value of: prediction_[0]->budget_at C 268.820s Main Actual: 30 C 268.820s Main Expected: kDefaultEngagement C 268.820s Main Which is: 30 C 268.820s Main [ FAILED ] BudgetDatabaseTest.AddEngagementBudgetTest (35 ms) C 268.820s Main [FAIL] BudgetDatabaseTest.CheckEngagementHistograms: C 268.820s Main [ RUN ] BudgetDatabaseTest.CheckEngagementHistograms C 268.820s Main ../../chrome/browser/budget_service/budget_database_unittest.cc:284: Failure C 268.820s Main Value of: SpendBudget(cost) C 268.820s Main Actual: false C 268.820s Main Expected: true C 268.820s Main [ FAILED ] BudgetDatabaseTest.CheckEngagementHistograms (28 ms) C 268.820s Main [FAIL] BudgetManagerTest.GetBudgetConsumedOverTime: C 268.820s Main [ RUN ] BudgetManagerTest.GetBudgetConsumedOverTime C 268.820s Main ../../chrome/browser/budget_service/budget_manager_unittest.cc:97: Failure C 268.820s Main Value of: ReserveBudget(type) C 268.820s Main Actual: false C 268.820s Main Expected: true C 268.820s Main [ FAILED ] BudgetManagerTest.GetBudgetConsumedOverTime (58 ms) C 268.821s Main [CRASH] BudgetDatabaseTest.CheckBackgroundBudgetHistogram: C 268.821s Main [ RUN ] BudgetDatabaseTest.CheckBackgroundBudgetHistogram C 268.821s Main [FATAL:budget_database.cc(166)] Check failed: 0 == total (0 vs. 8.88178e-16) Please use labels and text to provide additional information. While those seem at first glance like an EXPECT_NEAR might fix the issue, that just leads other checks further down the line fail. Some of them are rather drastic differences - e.g. the histogram buckets are often off by a full bucket (which is a value of 2) --> This is most likely not just affecting Kindie Fire devices, but is rather caused by the Qualcom chipset, which is known to sometimes have slight rounding deviations. I'm slightly concerned about the histogram part - deviations of a full bucket seem problematic.
,
Feb 26 2018
|
||
►
Sign in to add a comment |
||
Comment 1 by dtapu...@chromium.org
, Feb 12 2018