New issue
Advanced search Search tips

Issue 911681 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Dec 6
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android
Pri: 1
Type: Bug



Sign in to add a comment

PrefetchFeedFlowTest is flaky

Project Member Reported by pshmakov@google.com, Dec 4

Issue description

Cc: -harringtond@chromium.org
Labels: -Pri-3 sheriff-android OS-Android Pri-1
Owner: harringtond@chromium.org
I'm seeing failures on both PrefetchFeedFlowTest tests.

It looks like these were just added in https://chromium-review.googlesource.com/c/chromium/src/+/1351274

Flakiness dashboard link: https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=chrome_public_test_apk&tests=PrefetchFeedFlowTest

Dan, will you please investigate? If a quick fix isn't likely, let's revert for now, then fix and reland.
Cc: carl...@google.com s...@chromium.org fgor...@chromium.org
cc'ing patch reviewers
Owner: harringtond@google.com
It looks like it's crashing in some new code in InMemoryCachedImageFetcher

12-04 13:39:13.823 30609 30609 W System.err: java.lang.NullPointerException
12-04 13:39:13.823 30609 30609 W System.err: 	at org.chromium.chrome.browser.cached_image_fetcher.InMemoryCachedImageFetcher.tryToResizeImage(InMemoryCachedImageFetcher.java:163)
12-04 13:39:13.823 30609 30609 W System.err: 	at org.chromium.chrome.browser.cached_image_fetcher.InMemoryCachedImageFetcher.lambda$fetchImage$0$InMemoryCachedImageFetcher(InMemoryCachedImageFetcher.java:73)
12-04 13:39:13.823 30609 30609 W System.err: 	at org.chromium.chrome.browser.cached_image_fetcher.InMemoryCachedImageFetcher$$Lambda$0.onResult(Unknown Source)
12-04 13:39:13.823 30609 30609 W System.err: 	at org.chromium.base.Callback$Helper.onObjectResultFromNative(Callback.java:28)
12-04 13:39:13.823 30609 30609 W System.err: 	at android.os.MessageQueue.nativePollOnce(Native Method)
12-04 13:39:13.823 30609 30609 W System.err: 	at android.os.MessageQueue.next(MessageQueue.java:138)
12-04 13:39:13.823 30609 30609 W System.err: 	at android.os.Looper.loop(Looper.java:123)
12-04 13:39:13.823 30609 30609 W System.err: 	at android.app.ActivityThread.main(ActivityThread.java:5001)
12-04 13:39:13.833 30609 30609 W System.err: 	at java.lang.reflect.Method.invokeNative(Native Method)
12-04 13:39:13.833 30609 30609 W System.err: 	at java.lang.reflect.Method.invoke(Method.java:515)
12-04 13:39:13.833 30609 30609 W System.err: 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
12-04 13:39:13.833 30609 30609 W System.err: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
12-04 13:39:13.833 30609 30609 W System.err: 	at dalvik.system.NativeStart.main(Native Method)


https://cs.chromium.org/chromium/src/chrome/android/java/src/org/chromium/chrome/browser/cached_image_fetcher/InMemoryCachedImageFetcher.java?q=InMemoryCachedImageFetcher&sq=package:chromium&dr=CSs&l=19&dlp=chromium&dlf=src/chrome/android/java/src/org/chromium/chrome/browser/cached_image_fetcher/InMemoryCachedImageFetcher.java&dlc=74b8c224781ddaefc6843c45eb27ce1a224b6b03&dlr=2&dlgp=chrome/android/java/src/org/chromium/chrome/browser/cached_image_fetcher/InMemoryCachedImageFetcher.java&dlgr=chromium/chromium/src&drp=chromium&drf=src/chrome/android/java/src/org/chromium/chrome/browser/cached_image_fetcher/InMemoryCachedImageFetcher.java&drc=f02ca0ab593dfa33a45cc4c6cde930eac71a9f2c&drr=4&drgp=chrome/android/java/src/org/chromium/chrome/browser/cached_image_fetcher/InMemoryCachedImageFetcher.java&drgr=chromium/chromium/src
Cc: wylieb@chromium.org
Status: Assigned (was: Unconfirmed)
The InMemoryCachedImageFetcher crash is likely being addressed in issue 911666. Pavel has two in-flight patches: 
 - https://chromium-review.googlesource.com/c/chromium/src/+/1361220
 - https://chromium-review.googlesource.com/c/chromium/src/+/1360613


Some of the earlier failures for PrefetchFeedFlowTest#testPrefetchSinglePageSuccess appear to be on a timeout while waiting for a callback, however, so there may be two separate issues here:
java.util.concurrent.TimeoutException: waitForCallback timed out!
	at org.chromium.base.test.util.CallbackHelper.waitForCallback(CallbackHelper.java:191)
	at org.chromium.base.test.util.CallbackHelper.waitForCallback(CallbackHelper.java:202)
	at org.chromium.chrome.browser.offlinepages.prefetch.PrefetchFeedFlowTest.runBackgroundTaskUntilCallCountReached(PrefetchFeedFlowTest.java:264)
	at org.chromium.chrome.browser.offlinepages.prefetch.PrefetchFeedFlowTest.testPrefetchSinglePageSuccess(PrefetchFeedFlowTest.java:310)
	at java.lang.reflect.Method.invokeNative(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:515)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:129)
	at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
	at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:48)
	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:237)
	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:48)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.chromium.base.test.BaseJUnit4ClassRunner.run(BaseJUnit4ClassRunner.java:220)
	at org.junit.runners.Suite.runChild(Suite.java:128)
	at org.junit.runners.Suite.runChild(Suite.java:27)
	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:59)
	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
	at org.chromium.base.test.BaseChromiumAndroidJUnitRunner.onStart(BaseChromiumAndroidJUnitRunner.java:128)
	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701)

The more common test failure should be fixed: https://chromium-review.googlesource.com/c/chromium/src/+/1361220

I'm watching to see the effect.
Status: Fixed (was: Assigned)
It looks like this test has been more-or-less green since the fix in #5 landed. Let's close and re-open if the flakes reappear.

Sign in to add a comment