testHostCachePersistence fails on device with WiFi connected |
|||
Issue descriptionSometimes it's the first request that fails: C 25.631s Main [FAIL] org.chromium.net.ExperimentalOptionsTest#testHostCachePersistence: C 25.631s Main java.lang.Throwable: CronetTestBase#runTest failed. C 25.631s Main at org.chromium.net.CronetTestBase.runTest(CronetTestBase.java:197) C 25.631s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) C 25.631s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) C 25.631s Main at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555) C 25.631s Main at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1853) C 25.631s Main Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int org.chromium.net.aW.c()' on a null object reference C 25.631s Main at org.chromium.net.ExperimentalOptionsTest.testHostCachePersistence(ExperimentalOptionsTest.java:182) C 25.631s Main at org.chromium.net.CronetTestBase.runTest(CronetTestBase.java:183) C 25.631s Main ... 9 more logcat shows the first request failing: V/chromium(10716): [0630/083234.872674:VERBOSE1:cronet_url_request_adapter.cc(302)] Starting chromium request: http://host-cache-test-host:35408/echo priority: MEDIUM V/chromium(10716): [0630/083234.882043:VERBOSE1:histogram.cc(376)] Histogram: Net.ProxyService.ResolveProxyTime has bad minimum: 0 V/chromium(10716): [0630/083234.882623:VERBOSE1:spdy_session_key.cc(23)] SpdySessionKey(host=host-cache-test-host:35408, proxy=direct://, privacy=0 V/chromium(10716): [0630/083234.883752:VERBOSE2:net_errors_posix.cc(18)] Error 101 V/chromium(10716): [0630/083234.889490:VERBOSE1:cronet_url_request_adapter.cc(391)] Error net::ERR_NAME_NOT_RESOLVED on chromium request: http://host-cache-test-host:35408/echo Sometimes it's the second request that fails: C 25.460s Main [FAIL] org.chromium.net.ExperimentalOptionsTest#testHostCachePersistence: C 25.460s Main java.lang.Throwable: CronetTestBase#runTest failed. C 25.460s Main at org.chromium.net.CronetTestBase.runTest(CronetTestBase.java:197) C 25.460s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) C 25.460s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) C 25.461s Main at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555) C 25.461s Main at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1853) C 25.461s Main Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'int org.chromium.net.aW.c()' on a null object reference C 25.461s Main at org.chromium.net.ExperimentalOptionsTest.testHostCachePersistence(ExperimentalOptionsTest.java:195) C 25.461s Main at org.chromium.net.CronetTestBase.runTest(CronetTestBase.java:183) C 25.461s Main ... 9 more logcat shows the first request succeeding and the second failing with: V/chromium( 9302): [0630/080159.728831:VERBOSE1:cronet_url_request_adapter.cc(302)] Starting chromium request: http://host-cache-test-host:39546/echo priority: MEDIUM V/chromium( 9302): [0630/080159.730724:VERBOSE1:spdy_session_key.cc(23)] SpdySessionKey(host=host-cache-test-host:39546, proxy=direct://, privacy=0 V/chromium( 9302): [0630/080159.731944:VERBOSE2:net_errors_posix.cc(18)] Error 101 V/chromium( 9302): [0630/080159.738811:VERBOSE1:cronet_url_request_adapter.cc(391)] Error net::ERR_NAME_NOT_RESOLVED on chromium request: http://host-cache-test-host:39546/echo The "Error 101" I assume is ENETUNREACH I see my device has a WiFi connection with IPv4 and IPv6 addresses: $ adb shell ip addr show dev wlan0 28: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP qlen 100 link/ether 40:b0:fa:bf:b1:b0 brd ff:ff:ff:ff:ff:ff inet 100.71.55.155/20 brd 100.71.63.255 scope global wlan0 inet6 2620:15c:6:fd00:dd77:ad1f:413b:406a/64 scope global temporary dynamic valid_lft 544678sec preferred_lft 25678sec inet6 2620:15c:6:fd00:a4e3:7fe7:ad6:519c/64 scope global temporary deprecated dynamic valid_lft 458881sec preferred_lft 0sec inet6 2620:15c:6:fd00:3060:d3bd:5f10:5ab3/64 scope global temporary deprecated dynamic valid_lft 373084sec preferred_lft 0sec inet6 2620:15c:6:fd00:e88f:a31e:5b92:6f2d/64 scope global temporary deprecated dynamic valid_lft 287286sec preferred_lft 0sec inet6 2620:15c:6:fd00:42b0:faff:febf:b1b0/64 scope global dynamic valid_lft 2428228sec preferred_lft 441028sec inet6 fe80::42b0:faff:febf:b1b0/64 scope link valid_lft forever preferred_lft forever But has no IPv6 default route: $ adb shell ip -6 route $ Perhaps WriteToHostCacheOnNetworkThread() might need to not use net::ADDRESS_FAMILY_UNSPECIFIED all the time.
,
Jun 30 2017
,
Jun 30 2017
That's weird--on my test device it passes with wifi on (the configuration I was using when writing the CL) but fails with wifi off. I'm guessing you're right about the general idea though: something in the address family or host resolver flags is wrong.
,
Jun 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c086608e9875877220f9153923f0183b28a734c2 commit c086608e9875877220f9153923f0183b28a734c2 Author: mgersh <mgersh@chromium.org> Date: Fri Jun 30 18:26:59 2017 Fix hostCachePersistenceTest for devices with no IPv6 connectivity BUG= 738422 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.android:android_cronet_tester Review-Url: https://codereview.chromium.org/2970563002 Cr-Commit-Position: refs/heads/master@{#483768} [modify] https://crrev.com/c086608e9875877220f9153923f0183b28a734c2/components/cronet/android/test/experimental_options_test.cc
,
Jun 30 2017
|
|||
►
Sign in to add a comment |
|||
Comment 1 by pauljensen@chromium.org
, Jun 30 2017