From 73bad98e46bb4b2e6d6a6bf78068ee42a951f392 Mon Sep 17 00:00:00 2001 From: Tej Singh Date: Thu, 21 May 2020 19:28:42 -0700 Subject: [PATCH] Decrease default pull timeout to 2 seconds. This can result in more pull failures, but can prohibit slow pullers from slowing down statsd. Test: atest GtsStatsdHostTestCases Test: atest statsd_test Test: atest FrameworkStatsdTest Bug: 154056912 Change-Id: Ie30bd3584d808bb11aaaf0fe2057c9adfb198644 --- apex/statsd/framework/java/android/app/StatsManager.java | 2 +- cmds/statsd/tests/external/StatsCallbackPuller_test.cpp | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apex/statsd/framework/java/android/app/StatsManager.java b/apex/statsd/framework/java/android/app/StatsManager.java index d1b7d8dc2c7ae..d2c6c095b81f2 100644 --- a/apex/statsd/framework/java/android/app/StatsManager.java +++ b/apex/statsd/framework/java/android/app/StatsManager.java @@ -120,7 +120,7 @@ public final class StatsManager { /** * @hide **/ - @VisibleForTesting public static final long DEFAULT_TIMEOUT_MILLIS = 10_000L; // 10 seconds. + @VisibleForTesting public static final long DEFAULT_TIMEOUT_MILLIS = 2_000L; // 2 seconds. /** * Constructor for StatsManagerClient. diff --git a/cmds/statsd/tests/external/StatsCallbackPuller_test.cpp b/cmds/statsd/tests/external/StatsCallbackPuller_test.cpp index 13cdfc292d490..85a60886349ec 100644 --- a/cmds/statsd/tests/external/StatsCallbackPuller_test.cpp +++ b/cmds/statsd/tests/external/StatsCallbackPuller_test.cpp @@ -201,9 +201,9 @@ TEST_F(StatsCallbackPullerTest, RegisterAndTimeout) { int64_t actualPullDurationNs = endTimeNs - startTimeNs; // Pull should take at least the timeout amount of time, but should stop early because the delay - // is bigger. + // is bigger. Make sure that the time is closer to the timeout, than to the intended delay. EXPECT_LT(pullTimeoutNs, actualPullDurationNs); - EXPECT_GT(pullDelayNs, actualPullDurationNs); + EXPECT_GT(pullDelayNs / 5, actualPullDurationNs); ASSERT_EQ(0, dataHolder.size()); // Let the pull return and make sure that the dataHolder is not modified.