New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 732698 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug

Blocking:
issue 731759



Sign in to add a comment

Flaky test org.chromium.chrome.browser.printing.PrintingControllerTest#testNormalPrintingFlow

Project Member Reported by grunell@chromium.org, Jun 13 2017

Issue description

Test is flaky.

Example build: https://build.chromium.org/p/chromium.linux/builders/Android%20Tests/builds/42690

Output:

I  775.056s run_tests_on_device(0cbbdfa4032f9246)  detected failure in org.chromium.chrome.browser.printing.PrintingControllerTest#testNormalPrintingFlow. raw output:
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: numtests=1
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: stream=
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    org.chromium.chrome.browser.printing.PrintingControllerTest:
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: current=1
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS_CODE: 1
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: numtests=1
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: stream=
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    Error in testNormalPrintingFlow(org.chromium.chrome.browser.printing.PrintingControllerTest):
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    java.io.IOException: close failed: EBADF (Bad file number)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.IoUtils.close(IoUtils.java:46)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at java.io.FileInputStream.close(FileInputStream.java:121)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.browser.printing.PrintingControllerTest.testNormalPrintingFlow(PrintingControllerTest.java:164)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at java.lang.reflect.Method.invokeNative(Native Method)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at java.lang.reflect.Method.invoke(Method.java:515)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:59)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.test.ChromeActivityTestRule$2.evaluate(ChromeActivityTestRule.java:66)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:135)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:36)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  775.056s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.Suite.runChild(Suite.java:128)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.Suite.runChild(Suite.java:27)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:3115)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    Caused by: libcore.io.ErrnoException: close failed: EBADF (Bad file number)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.Posix.close(Native Method)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.BlockGuardOs.close(BlockGuardOs.java:75)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.IoUtils.close(IoUtils.java:43)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	... 37 more
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: stack=java.io.IOException: close failed: EBADF (Bad file number)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.IoUtils.close(IoUtils.java:46)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at java.io.FileInputStream.close(FileInputStream.java:121)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.browser.printing.PrintingControllerTest.testNormalPrintingFlow(PrintingControllerTest.java:164)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at java.lang.reflect.Method.invokeNative(Native Method)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at java.lang.reflect.Method.invoke(Method.java:515)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:59)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.test.ChromeActivityTestRule$2.evaluate(ChromeActivityTestRule.java:66)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:135)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:36)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.Suite.runChild(Suite.java:128)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.Suite.runChild(Suite.java:27)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  775.057s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:3115)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    Caused by: libcore.io.ErrnoException: close failed: EBADF (Bad file number)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.Posix.close(Native Method)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.BlockGuardOs.close(BlockGuardOs.java:75)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.IoUtils.close(IoUtils.java:43)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	... 37 more
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS: current=1
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_STATUS_CODE: -2
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    INSTRUMENTATION_RESULT: stream=
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    Time: 2.525
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    There was 1 failure:
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    1) testNormalPrintingFlow(org.chromium.chrome.browser.printing.PrintingControllerTest)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    java.io.IOException: close failed: EBADF (Bad file number)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.IoUtils.close(IoUtils.java:46)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at java.io.FileInputStream.close(FileInputStream.java:121)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.browser.printing.PrintingControllerTest.testNormalPrintingFlow(PrintingControllerTest.java:164)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at java.lang.reflect.Method.invokeNative(Native Method)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at java.lang.reflect.Method.invoke(Method.java:515)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:59)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.chrome.test.ChromeActivityTestRule$2.evaluate(ChromeActivityTestRule.java:66)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:135)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:36)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.Suite.runChild(Suite.java:128)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.Suite.runChild(Suite.java:27)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:3115)
I  775.058s run_tests_on_device(0cbbdfa4032f9246)    	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701)
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    Caused by: libcore.io.ErrnoException: close failed: EBADF (Bad file number)
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.Posix.close(Native Method)
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.BlockGuardOs.close(BlockGuardOs.java:75)
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    	at libcore.io.IoUtils.close(IoUtils.java:43)
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    	... 37 more
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    FAILURES!!!
I  775.059s run_tests_on_device(0cbbdfa4032f9246)    Tests run: 1,  Failures: 1

 

Comment 1 by dgn@chromium.org, Jun 13 2017

Owner: ctzsm@chromium.org
Shimi, can you please have a look?
Project Member

Comment 2 by bugdroid1@chromium.org, Jun 13 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/11edc8dc94dffca4c32649699efbaae1099143db

commit 11edc8dc94dffca4c32649699efbaae1099143db
Author: Henrik Grunell <grunell@chromium.org>
Date: Tue Jun 13 08:47:22 2017

Revert "[Android] Set page count to unknown in onLayout stage for printing"

This reverts commit 6f1e92580993746423754ec992be005c7d102afc.

Reason for revert: Suspecting that this causes flaky failure, see bug.

Original change's description:
> [Android] Set page count to unknown in onLayout stage for printing
> 
> This CL:
> 
> 1) Set page count to unknown for PrintDocumentInfo in onLayout
> stage since we don't need to report pages count of a file. Android
> framework will get page count from the file produced from onWrite
> stage. This change will fix crbug/593387.
> 
> 2) Removed printing jobs started from onLayout. We don't need to
> report pages count of the file at that stage, hence no need to
> start printing jobs from onLayout. As a replacement, starting all
> printing jobs from onWrite. It is related to crbug/612315, but
> crbug/612315 is not really true about saving file generating time
> since we didn't generate a file twice.
> 
> 3) With other cleanup because variables such as mLastKnownMaxPages
> is not useful anymore.
> 
> Bug: 593387,  612315 
> Change-Id: Ic52d9aa12b4aeb659156e1e2eb21f2f11afbd60c
> Reviewed-on: https://chromium-review.googlesource.com/521205
> Commit-Queue: Shimi Zhang <ctzsm@chromium.org>
> Reviewed-by: Nicolas Dossou-Gbété <dgn@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#478753}

TBR=dgn@chromium.org,ctzsm@chromium.org
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 593387,  612315 ,  732698 

Change-Id: I5d74580fb52438aac13f9b9da7fb22206c73d5d8
Reviewed-on: https://chromium-review.googlesource.com/532894
Reviewed-by: Henrik Grunell <grunell@chromium.org>
Commit-Queue: Henrik Grunell <grunell@chromium.org>
Cr-Commit-Position: refs/heads/master@{#478937}
[modify] https://crrev.com/11edc8dc94dffca4c32649699efbaae1099143db/printing/android/java/src/org/chromium/printing/PrintingControllerImpl.java

Comment 3 by ctzsm@chromium.org, Jun 14 2017

Cc: thestig@chromium.org dalecur...@chromium.org ctzsm@chromium.org
 Issue 733002  has been merged into this issue.
Project Member

Comment 4 by bugdroid1@chromium.org, Jun 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d99b91cbdabed24ec76838a2a09266f97d09439a

commit d99b91cbdabed24ec76838a2a09266f97d09439a
Author: Shimi Zhang <ctzsm@chromium.org>
Date: Thu Jun 15 05:46:53 2017

Reland "[Android] Set page count to unknown in onLayout stage for printing"

1) This reverts commit 11edc8dc94dffca4c32649699efbaae1099143db.
2) Removes a change to `closeFileDescriptor(int fd)` in the origin CL.

Bug:  732698 
Change-Id: Ib951b1b53f39d79094173f842d1b99f0edb72ddc
Reviewed-on: https://chromium-review.googlesource.com/535073
Reviewed-by: Nicolas Dossou-Gbété <dgn@chromium.org>
Commit-Queue: Shimi Zhang <ctzsm@chromium.org>
Cr-Commit-Position: refs/heads/master@{#479614}
[modify] https://crrev.com/d99b91cbdabed24ec76838a2a09266f97d09439a/printing/android/java/src/org/chromium/printing/PrintingControllerImpl.java

Project Member

Comment 5 by bugdroid1@chromium.org, Jun 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/47b98638aaf04a0f9da24232a6b20f1021c6c377

commit 47b98638aaf04a0f9da24232a6b20f1021c6c377
Author: Shimi Zhang <ctzsm@chromium.org>
Date: Thu Jun 15 07:04:45 2017

[Android] Enable testNormalPrintingFlow

This CL is an attempt to fix a flaky problem of testNormalPrintingFlow.

Reordered the sequence to close FileDescriptor/File in this test.

Bug:  732698 
Change-Id: I5e64cf6dc303a30f9acae952abd1c1b6ba4871b8
Reviewed-on: https://chromium-review.googlesource.com/534957
Reviewed-by: Nicolas Dossou-Gbété <dgn@chromium.org>
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Shimi Zhang <ctzsm@chromium.org>
Cr-Commit-Position: refs/heads/master@{#479629}
[modify] https://crrev.com/47b98638aaf04a0f9da24232a6b20f1021c6c377/chrome/android/javatests/src/org/chromium/chrome/browser/printing/PrintingControllerTest.java
[modify] https://crrev.com/47b98638aaf04a0f9da24232a6b20f1021c6c377/printing/android/java/src/org/chromium/printing/PrintingControllerImpl.java

Comment 6 by ctzsm@chromium.org, Jun 15 2017

Status: Fixed (was: Assigned)
Seems the change works, mark this as fixed.
Blocking: 731759
Status: Available (was: Fixed)
Reopen this bug since this test shows flaky this week.

Example builds:
https://build.chromium.org/p/chromium.linux/builders/Android%20Tests/builds/42999
https://build.chromium.org/p/tryserver.chromium.android/builders/android_n5x_swarming_rel/builds/205286

The 'Android Tests' build failed as same as the above output (Bad file number):

I  946.132s run_tests_on_device(01ab49b103304598)  detected failure in org.chromium.chrome.browser.printing.PrintingControllerTest#testNormalPrintingFlow. raw output:
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: numtests=1
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: stream=
I  946.132s run_tests_on_device(01ab49b103304598)    org.chromium.chrome.browser.printing.PrintingControllerTest:
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: current=1
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS_CODE: 1
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: numtests=1
I  946.132s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: stream=
I  946.132s run_tests_on_device(01ab49b103304598)    Error in testNormalPrintingFlow(org.chromium.chrome.browser.printing.PrintingControllerTest):
I  946.132s run_tests_on_device(01ab49b103304598)    java.io.IOException: close failed: EBADF (Bad file number)
I  946.132s run_tests_on_device(01ab49b103304598)    	at libcore.io.IoUtils.close(IoUtils.java:46)
I  946.132s run_tests_on_device(01ab49b103304598)    	at java.io.FileInputStream.close(FileInputStream.java:121)
I  946.132s run_tests_on_device(01ab49b103304598)    	at org.chromium.chrome.browser.printing.PrintingControllerTest.testNormalPrintingFlow(PrintingControllerTest.java:163)
I  946.132s run_tests_on_device(01ab49b103304598)    	at java.lang.reflect.Method.invokeNative(Native Method)
I  946.132s run_tests_on_device(01ab49b103304598)    	at java.lang.reflect.Method.invoke(Method.java:515)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:59)
I  946.133s run_tests_on_device(01ab49b103304598)    	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
I  946.133s run_tests_on_device(01ab49b103304598)    	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:135)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:36)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.Suite.runChild(Suite.java:128)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.Suite.runChild(Suite.java:27)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  946.133s run_tests_on_device(01ab49b103304598)    	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
I  946.133s run_tests_on_device(01ab49b103304598)    	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:3115)
I  946.133s run_tests_on_device(01ab49b103304598)    	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
I  946.133s run_tests_on_device(01ab49b103304598)    	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701)
I  946.133s run_tests_on_device(01ab49b103304598)    Caused by: libcore.io.ErrnoException: close failed: EBADF (Bad file number)
I  946.133s run_tests_on_device(01ab49b103304598)    	at libcore.io.Posix.close(Native Method)
I  946.133s run_tests_on_device(01ab49b103304598)    	at libcore.io.BlockGuardOs.close(BlockGuardOs.java:75)
I  946.133s run_tests_on_device(01ab49b103304598)    	at libcore.io.IoUtils.close(IoUtils.java:43)
I  946.133s run_tests_on_device(01ab49b103304598)    	... 36 more
I  946.133s run_tests_on_device(01ab49b103304598)    
I  946.133s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  946.133s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  946.133s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  946.133s run_tests_on_device(01ab49b103304598)    INSTRUMENTATION_STATUS: stack=java.io.IOException: close failed: EBADF (Bad file number)



The output of 'android_n5x_swarming_rel' has similar failure (Bad file descriptor):

I  763.178s run_tests_on_device(00b7e7d08da636b9)  detected failure in org.chromium.chrome.browser.printing.PrintingControllerTest#testNormalPrintingFlow. raw output:
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: numtests=1
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: stream=
I  763.178s run_tests_on_device(00b7e7d08da636b9)    org.chromium.chrome.browser.printing.PrintingControllerTest:
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: current=1
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS_CODE: 1
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: numtests=1
I  763.178s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: stream=
I  763.178s run_tests_on_device(00b7e7d08da636b9)    Error in testNormalPrintingFlow(org.chromium.chrome.browser.printing.PrintingControllerTest):
I  763.178s run_tests_on_device(00b7e7d08da636b9)    java.io.IOException: read failed: EBADF (Bad file descriptor)
I  763.178s run_tests_on_device(00b7e7d08da636b9)    	at libcore.io.IoBridge.read(IoBridge.java:478)
I  763.178s run_tests_on_device(00b7e7d08da636b9)    	at java.io.FileInputStream.read(FileInputStream.java:177)
I  763.178s run_tests_on_device(00b7e7d08da636b9)    	at java.io.InputStream.read(InputStream.java:162)
I  763.178s run_tests_on_device(00b7e7d08da636b9)    	at org.chromium.chrome.browser.printing.PrintingControllerTest.testNormalPrintingFlow(PrintingControllerTest.java:159)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at java.lang.reflect.Method.invoke(Native Method)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:59)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:135)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:36)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  763.179s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.Suite.runChild(Suite.java:128)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.Suite.runChild(Suite.java:27)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:3115)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1879)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    Caused by: android.system.ErrnoException: read failed: EBADF (Bad file descriptor)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at libcore.io.Posix.readBytes(Native Method)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at libcore.io.Posix.read(Posix.java:169)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at libcore.io.BlockGuardOs.read(BlockGuardOs.java:230)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	at libcore.io.IoBridge.read(IoBridge.java:468)
I  763.180s run_tests_on_device(00b7e7d08da636b9)    	... 36 more
I  763.181s run_tests_on_device(00b7e7d08da636b9)    
I  763.181s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  763.181s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  763.181s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  763.181s run_tests_on_device(00b7e7d08da636b9)    INSTRUMENTATION_STATUS: stack=java.io.IOException: read failed: EBADF (Bad file descriptor)


Comment 8 by ctzsm@chromium.org, Jun 22 2017

Cc: -thestig@chromium.org -dalecur...@chromium.org sgu...@chromium.org shenghua...@chromium.org dgn@chromium.org
Status: Assigned (was: Available)
shenghuazhang@, the log from "android_n5x_swarming_rel" reads interesting to me, previously I thought it only crashes during close, but this one shows even during open phase it will crash. Thanks for catching that!

dgn@, By taking a closer look at previous logs, FileInputStream open failure was happened before, my fix doesn't cover this situation at all, I am going to revert my fix then have a further investigation.
ctzsm@ No problem! Thanks for investigating on it.

Yes the FileInputStream crashes seem like happening at multiple phases. I also found another crash failed at FileInputStream <init> step, the build is https://build.chromium.org/p/tryserver.chromium.android/builders/android_n5x_swarming_rel/builds/205287

Output:
I  990.040s run_tests_on_device(00b6791c5148be6c)  detected failure in org.chromium.chrome.browser.printing.PrintingControllerTest#testNormalPrintingFlow. raw output:
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: numtests=1
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: stream=
I  990.040s run_tests_on_device(00b6791c5148be6c)    org.chromium.chrome.browser.printing.PrintingControllerTest:
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: current=1
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS_CODE: 1
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: numtests=1
I  990.040s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: stream=
I  990.040s run_tests_on_device(00b6791c5148be6c)    Error in testNormalPrintingFlow(org.chromium.chrome.browser.printing.PrintingControllerTest):
I  990.041s run_tests_on_device(00b6791c5148be6c)    java.io.FileNotFoundException: /data/user/0/org.chromium.chrome/cache/temp_print-1932789085.pdf: fstat failed: EBADF (Bad file descriptor)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at libcore.io.IoBridge.open(IoBridge.java:452)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at java.io.FileInputStream.<init>(FileInputStream.java:76)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.chromium.chrome.browser.printing.PrintingControllerTest.testNormalPrintingFlow(PrintingControllerTest.java:157)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at java.lang.reflect.Method.invoke(Native Method)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:59)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
I  990.041s run_tests_on_device(00b6791c5148be6c)    	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:135)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:36)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.Suite.runChild(Suite.java:128)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.Suite.runChild(Suite.java:27)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
I  990.042s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:3115)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1879)
I  990.043s run_tests_on_device(00b6791c5148be6c)    Caused by: android.system.ErrnoException: fstat failed: EBADF (Bad file descriptor)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at libcore.io.Posix.fstat(Native Method)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at libcore.io.BlockGuardOs.fstat(BlockGuardOs.java:133)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	at libcore.io.IoBridge.open(IoBridge.java:441)
I  990.043s run_tests_on_device(00b6791c5148be6c)    	... 35 more
I  990.043s run_tests_on_device(00b6791c5148be6c)    
I  990.043s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  990.043s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: test=testNormalPrintingFlow
I  990.043s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.printing.PrintingControllerTest
I  990.043s run_tests_on_device(00b6791c5148be6c)    INSTRUMENTATION_STATUS: stack=java.io.FileNotFoundException: /data/user/0/org.chromium.chrome/cache/temp_print-1932789085.pdf: fstat failed: EBADF (Bad file descriptor)

Comment 10 by ctzsm@chromium.org, Jun 23 2017

Cc: -ctzsm@chromium.org
https://chromium-review.googlesource.com/c/545235/ CL out for review.

Comment 11 by ctzsm@chromium.org, Jun 26 2017

shenghuazhang@, I have a hypothesis want to verify regards to this issue, but it is very hard to repro with my local environment, do you happen to know how to repro this, also what's the frequency it happens?
@ctzsm I didn't run the test locally either. I have a CL to add chrome_public_test_apk on android_n5x_swarming_rel https://codereview.chromium.org/2942113002/ ,  and try run the bot there for 23 try jobs and failed 3 times. 

Also, here is a flakiness chart showing what frequency does that test failed at builders in the recent several days:
https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=chrome_public_test_apk&tests=org.chromium.chrome.browser.printing.PrintingControllerTest%23testNormalPrintingFlow
Project Member

Comment 13 by bugdroid1@chromium.org, Jun 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/825cfe894c6963bad39ab2b2be285b2abe29964f

commit 825cfe894c6963bad39ab2b2be285b2abe29964f
Author: Shimi Zhang <ctzsm@chromium.org>
Date: Wed Jun 28 16:53:14 2017

[Android] Reorder file closing sequence

There is a race condition in test `testNormalPrintingFlow`,
which will cause failures in `FileInputStream`. Generally,
when `FileInputStream` created, the same file descriptor used
previously will be reused, but in the instrumentation thread,
after `onWriteFinished`, it is trying to close the same file
descriptor, so sometimes it will cause crashes.

This CL:

1) Removes unnecessary fileDescriptor.close() in
the override `onWriteFinished`.

2) Place `closeFileDescriptor(mFileDescriptor)` before calls
`onWrite*` callbacks to make the testing code wait the whole
procedure finished, this removes the race condition.

Bug:  732698 
Change-Id: Ifdc1fa9f00cb77f64f46f6d09df5890b1bb12061
Reviewed-on: https://chromium-review.googlesource.com/549227
Reviewed-by: Selim Gurun <sgurun@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Reviewed-by: Nicolas Dossou-Gbété <dgn@chromium.org>
Commit-Queue: Shimi Zhang <ctzsm@chromium.org>
Cr-Commit-Position: refs/heads/master@{#483023}
[modify] https://crrev.com/825cfe894c6963bad39ab2b2be285b2abe29964f/chrome/android/javatests/src/org/chromium/chrome/browser/printing/PrintingControllerTest.java
[modify] https://crrev.com/825cfe894c6963bad39ab2b2be285b2abe29964f/printing/android/java/src/org/chromium/printing/PrintingControllerImpl.java

Comment 14 by ctzsm@chromium.org, Jun 28 2017

Status: Fixed (was: Assigned)
shenghuazhang@, as the fix is in, I'll keep an eye on flaky dashboard, feel free to move on with issue 731759, closing this issue.
ctzsm@ thanks for the fix!

Sign in to add a comment