Closed Bug 1147392 Opened 5 years ago Closed 5 years ago

Intermittent test_cache2-23-read-over-chunk.js | xpcshell return code: 0 | OpenCallback.prototype.onCacheEntryCheck | OpenCallback.prototype.onCacheEntryAvailable - false == true

Categories

(Core :: Networking: Cache, defect)

ARM
Android
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla39
Tracking Status
firefox37 --- wontfix
firefox38 --- fixed
firefox39 --- fixed
firefox-esr31 --- unaffected
b2g-v2.2 --- fixed
b2g-master --- fixed

People

(Reporter: RyanVM, Assigned: mayhemer)

References

Details

(Keywords: intermittent-failure)

Attachments

(1 file, 1 obsolete file)

03:29:52 INFO - TEST-START | netwerk/test/unit/test_cache2-23-read-over-chunk.js
03:29:55 INFO - mozdevice Could not connect; sleeping for 5 seconds.
03:30:00 INFO - mozdevice reconnecting socket
03:30:00 INFO - mozdevice Could not connect; sleeping for 10 seconds.
03:30:10 INFO - mozdevice reconnecting socket
03:30:12 WARNING - TEST-UNEXPECTED-FAIL | netwerk/test/unit/test_cache2-23-read-over-chunk.js | xpcshell return code: 0
03:30:12 INFO - TEST-INFO took 20115ms
03:30:12 INFO - >>>>>>>
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | xpcw: cd /mnt/sdcard/tests/xpcshell/netwerk/test/unit
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | xpcw: xpcshell -r /mnt/sdcard/tests/xpcshell/c/httpd.manifest --greomni /data/local/xpcb/fennec-39.0a1.en-US.android-arm.apk -m -s -e const _HTTPD_JS_PATH = "/mnt/sdcard/tests/xpcshell/c/httpd.js"; -e const _HEAD_JS_PATH = "/mnt/sdcard/tests/xpcshell/head.js"; -e const _TESTING_MODULES_DIR = "/mnt/sdcard/tests/xpcshell/m"; -f /mnt/sdcard/tests/xpcshell/head.js -e const _SERVER_ADDR = "localhost" -e const _HEAD_FILES = ["/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_channels.js", "/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache.js", "/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache2.js"]; -e const _TAIL_FILES = []; -e const _JSDEBUGGER_PORT = 0; -e const _TEST_FILE = ["test_cache2-23-read-over-chunk.js"]; -e const _TEST_NAME = "netwerk/test/unit/test_cache2-23-read-over-chunk.js" -e _execute_test(); quit(0);
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | {"action":"log","time":1427254192258,"thread":null,"pid":null,"source":"xpcshell/head.js","level":"INFO","message":"(xpcshell/hexpcw: cd /mnt/sdcard/tests/xpcshell/netwerk/test/unit
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | xpcw: xpcshell -r /mnt/sdcard/tests/xpcshell/c/httpd.manifest --greomni /data/local/xpcb/fennec-39.0a1.en-US.android-arm.apk -m -s -e const _HTTPD_JS_PATH = "/mnt/sdcard/tests/xpcshell/c/httpd.js"; -e const _HEAD_JS_PATH = "/mnt/sdcard/tests/xpcshell/head.js"; -e const _TESTING_MODULES_DIR = "/mnt/sdcard/tests/xpcshell/m"; -f /mnt/sdcard/tests/xpcshell/head.js -e const _SERVER_ADDR = "localhost" -e const _HEAD_FILES = ["/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_channels.js", "/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache.js", "/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache2.js"]; -e const _TAIL_FILES = []; -e const _JSDEBUGGER_PORT = 0; -e const _TEST_FILE = ["test_cache2-23-read-over-chunk.js"]; -e const _TEST_NAME = "netwerk/test/unit/test_cache2-23-read-over-chunk.js" -e _execute_test(); quit(0);
03:30:12 INFO - (xpcshell/head.js) | test MAIN run_test pending (1)
03:30:12 INFO - (xpcshell/head.js) | test pending (2)
03:30:12 INFO - (xpcshell/head.js) | test MAIN run_test finished (2)
03:30:12 INFO - running event loop
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | TEST-INFO | CACHE2: callback #1(0000000000) onCacheEntryCheck
03:30:12 WARNING - TEST-UNEXPECTED-FAIL | netwerk/test/unit/test_cache2-23-read-over-chunk.js | OpenCallback.prototype.onCacheEntryCheck - [OpenCallback.prototype.onCacheEntryCheck : 109] false == true
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache2.js:OpenCallback.prototype.onCacheEntryCheck:109
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache.js:asyncOpenCacheEntry/CacheListener.prototype.onCacheEntryCheck:74
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/head.js:_do_main:207
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/head.js:_execute_test:506
03:30:12 INFO - -e:null:1
03:30:12 INFO - null:null:0
03:30:12 INFO - exiting test
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | TEST-INFO | CACHE2: callback #1(0000000000) onCacheEntryAvailable, 257
03:30:12 INFO - TEST-PASS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | OpenCallback.prototype.onCacheEntryAvailable - [OpenCallback.prototype.onCacheEntryAvailable : 154] true == true
03:30:12 WARNING - TEST-UNEXPECTED-FAIL | netwerk/test/unit/test_cache2-23-read-over-chunk.js | OpenCallback.prototype.onCacheEntryAvailable - [OpenCallback.prototype.onCacheEntryAvailable : 157] false == true
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache2.js:OpenCallback.prototype.onCacheEntryAvailable:157
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache.js:asyncOpenCacheEntry/CacheListener.prototype.onCacheEntryAvailable:82
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/head.js:_do_main:207
03:30:12 INFO - /mnt/sdcard/tests/xpcshell/head.js:_execute_test:506
03:30:12 INFO - -e:null:1
03:30:12 INFO - null:null:0
03:30:12 INFO - exiting test
03:30:12 INFO - "CONSOLE_MESSAGE: (warn) [JavaScript Error: "uncaught exception: 2147500036"]"
03:30:12 INFO - "CONSOLE_MESSAGE: (warn) [JavaScript Error: "uncaught exception: 2147500036"]"
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | JavaScript error: , line 0: uncaught exception: 2147500036
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | JavaScript error: , line 0: uncaught exception: 2147500036
03:30:12 INFO - PROCESS | netwerk/test/unit/test_cache2-23-read-over-chunk.js | \x00
03:30:12 INFO - <<<<<<<
Assignee: nobody → honzab.moz
This looks like harness doesn't clear cache (the profile) from the last run.  I can have a workaround single line fix for this, but it seems there is some different problem here then in the cache and the test.

Who should I ask about harness/xpcshell profile issues?
Flags: needinfo?(ryanvm)
gbrown?
Flags: needinfo?(ryanvm) → needinfo?(gbrown)
Attached patch wo, v1 (obsolete) — Splinter Review
The Android xpcshell test harness has the notion of a "profile dir" that is deleted and re-created (empty) before each test (just before launching xpcshell). Two environment variables, XPCSHELL_TEST_PROFILE_DIR and HOME, are set to point to the profile directory.

I have not recently verified that this is working, but I don't have any (other) reason to suspect it is broken.
Flags: needinfo?(gbrown)
Attached patch w/o, v1Splinter Review
(In reply to Geoff Brown [:gbrown] from comment #5)
> The Android xpcshell test harness has the notion of a "profile dir" that is
> deleted and re-created (empty) before each test (just before launching
> xpcshell). Two environment variables, XPCSHELL_TEST_PROFILE_DIR and HOME,
> are set to point to the profile directory.
> 
> I have not recently verified that this is working, but I don't have any
> (other) reason to suspect it is broken.

Yeah, but I don't see another way how this test would fail the way it does - there is "http://read/" cache entry found and cannot be created by the test itself.  

Could it happen that the profile dir is the same for each particular test and somehow doesn't get deleted?  How do you generate the dir name?  Could this have something to do with a test restart?  I mean, when the test from some reason fails the first time, the parallel processing will run it again.  Is the profile deleted/different for the second run?
Attachment #8583122 - Attachment is obsolete: true
Flags: needinfo?(gbrown)
Attachment #8583232 - Flags: review?(michal.novotny)
Attachment #8583232 - Flags: review?(michal.novotny) → review+
(In reply to Honza Bambas (:mayhemer) from comment #6)
> Could it happen that the profile dir is the same for each particular test
> and somehow doesn't get deleted?  How do you generate the dir name?

On Android, we keep it simple: the profile dir is always /mnt/sdcard/tests/xpcshell/p and we delete it between tests with a shell script that looks like:

#!/system/bin/sh
rm -r "$1"
mkdir "$1"

No error checking, so if the rm failed, I doubt we would notice -- that is a vulnerability.

> Could
> this have something to do with a test restart?  I mean, when the test from
> some reason fails the first time, the parallel processing will run it again.
> Is the profile deleted/different for the second run?

xpcshell parallel processing and restarts are disabled on Android.


I think I know what happened now. I noticed the test log in Comment 1 has:

03:29:52     INFO -  TEST-START | netwerk/test/unit/test_cache2-23-read-over-chunk.js
03:29:55     INFO -  mozdevice Could not connect; sleeping for 5 seconds.
03:30:00     INFO -  mozdevice reconnecting socket
03:30:00     INFO -  mozdevice Could not connect; sleeping for 10 seconds.
03:30:10     INFO -  mozdevice reconnecting socket
03:30:12  WARNING -  TEST-UNEXPECTED-FAIL | netwerk/test/unit/test_cache2-23-read-over-chunk.js | xpcshell return code: 0
03:30:12     INFO -  TEST-INFO took 20115ms
03:30:12     INFO -  >>>>>>>

The "Could not connect ... reconnecting" indicates that the test harness lost contact with the sutagent on the device during this test. The associated full logcat tells us more: sutagent crashed during this test.

http://mozilla-releng-blobs.s3.amazonaws.com/blobs/mozilla-inbound/sha512/a555ceea0dc73f2035e5383ad3bb3c677b81b6e5594a9c7390d0413e1dfaf666468eaa4c27ac944515002d9d9ab7ec331c34d1df356d8e7c69736ca99edc33c7

03-25 03:29:52.460 I/Gecko   (16520): {"action":"test_status","time":1427254192469,"thread":null,"pid":null,"source":"xpcshell/head.js","test":"netwerk/test/unit/test_cache2-23-read-over-chunk.js","subtest":"OpenCallback.prototype.selfCheck","status":"PASS","message":"[OpenCallback.prototype.selfCheck : 263] true == true"}
03-25 03:29:52.460 I/Gecko   (16520): 
03-25 03:29:52.460 I/Gecko   (16520): {"action":"log","time":1427254192471,"thread":null,"pid":null,"source":"xpcshell/head.js","level":"INFO","message":"(xpcshell/head.js) | test finished (1)"}
03-25 03:29:52.460 I/Gecko   (16520): 
03-25 03:29:52.460 I/Gecko   (16520): {"action":"log","time":1427254192471,"thread":null,"pid":null,"source":"xpcshell/head.js","level":"INFO","message":"exiting test"}
03-25 03:29:52.656 I/DEBUG   ( 1289): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
03-25 03:29:52.656 I/DEBUG   ( 1289): Build fingerprint: 'pandaboard/pandaboard/pandaboard:4.0.4/IMM76I/5:eng/test-keys'
03-25 03:29:52.656 I/DEBUG   ( 1289): pid: 1900, tid: 16519  >>> com.mozilla.SUTAgentAndroid <<<
03-25 03:29:52.656 I/DEBUG   ( 1289): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00002a4e
03-25 03:29:52.656 I/DEBUG   ( 1289):  r0 40ced840  r1 40ceda00  r2 409f5c68  r3 00002a2e
03-25 03:29:52.656 I/DEBUG   ( 1289):  r4 012f8700  r5 40ced840  r6 fffffe4c  r7 012f87bc
03-25 03:29:52.656 I/DEBUG   ( 1289):  r8 80000000  r9 4095b480  10 012f8700  fp 40ceda00
03-25 03:29:52.656 I/DEBUG   ( 1289):  ip 40b861e8  sp 40ced8f0  lr 40949e88  pc 4095b4b0  cpsr 80000110
03-25 03:29:52.656 I/DEBUG   ( 1289):  d0  0000009b431baaab  d1  61657268431baaab
03-25 03:29:52.656 I/DEBUG   ( 1289):  d2  4124c9b041264428  d3  41268e004124ca78
03-25 03:29:52.656 I/DEBUG   ( 1289):  d4  411f7f90411f7ef8  d5  411f9d0841208640
03-25 03:29:52.656 I/DEBUG   ( 1289):  d6  411f65c0411ffa80  d7  4040000000000003
03-25 03:29:52.656 I/DEBUG   ( 1289):  d8  0000000000000000  d9  0000000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d10 0000000000000000  d11 0000000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d12 0000000000000000  d13 0000000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d14 0000000000000000  d15 0000000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d16 0000000000000000  d17 3c694626000005a1
03-25 03:29:52.656 I/DEBUG   ( 1289):  d18 0000000000ffffff  d19 0000000000000003
03-25 03:29:52.656 I/DEBUG   ( 1289):  d20 0000000000000002  d21 0000000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d22 0000000000000000  d23 3ff0000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d24 3ff0000000000000  d25 0000000000000000
03-25 03:29:52.656 I/DEBUG   ( 1289):  d26 0000000000000000  d27 0000000000000002
03-25 03:29:52.656 I/DEBUG   ( 1289):  d28 bff0000000000000  d29 0000000005000002
03-25 03:29:52.656 I/DEBUG   ( 1289):  d30 000000000000000a  d31 0000000000000002
03-25 03:29:52.656 I/DEBUG   ( 1289):  scr 80000012
03-25 03:29:52.656 I/DEBUG   ( 1289): 
03-25 03:29:52.765 I/DEBUG   ( 1289):          #00  pc 000444b0  /system/lib/libdvm.so
03-25 03:29:52.773 I/DEBUG   ( 1289):          #01  pc 00032e84  /system/lib/libdvm.so (_Z21dvmHeapBitmapScanWalkP10HeapBitmapPFvP6ObjectPvS3_ES3_)
03-25 03:29:52.773 I/DEBUG   ( 1289): 
03-25 03:29:52.773 I/DEBUG   ( 1289): code around pc:
03-25 03:29:52.773 I/DEBUG   ( 1289): 4095b490 e1a05000 e08fc00c e5821018 e79c2006  .P........... ..
03-25 03:29:52.773 I/DEBUG   ( 1289): 4095b4a0 e5903000 e592c0b0 e153000c 0a00002b  .0........S.+...
03-25 03:29:52.773 I/DEBUG   ( 1289): 4095b4b0 e5932020 e3120101 1a00000d e5940014    ..............
03-25 03:29:52.773 I/DEBUG   ( 1289): 4095b4c0 e1530000 2a00000d e1a01004 e1a00005  ..S....*........
03-25 03:29:52.773 I/DEBUG   ( 1289): 4095b4d0 ebfffd63 e5951000 e5913020 e3130302  c....... 0......
03-25 03:29:52.773 I/DEBUG   ( 1289): 
03-25 03:29:52.773 I/DEBUG   ( 1289): code around lr:
03-25 03:29:52.773 I/DEBUG   ( 1289): 40949e68 e080b405 e16f0f16 e58dc004 e1c66038  ......o.....8`..
03-25 03:29:52.773 I/DEBUG   ( 1289): 40949e78 e1a0100b e08c0180 e1a0200a e12fff39  ......... ..9./.
03-25 03:29:52.773 I/DEBUG   ( 1289): 40949e88 e3560000 e59dc004 1afffff5 e5971010  ..V.............
03-25 03:29:52.773 I/DEBUG   ( 1289): 40949e98 e1a03005 e597000c e060e001 e1a0242e  .0........`..$..
03-25 03:29:52.773 I/DEBUG   ( 1289): 40949ea8 e1520003 e2844004 e2855001 2affffe5  ..R..@...P.....*
03-25 03:29:52.773 I/DEBUG   ( 1289): 
03-25 03:29:52.773 I/DEBUG   ( 1289): memory map around addr 00002a4e:
03-25 03:29:52.773 I/DEBUG   ( 1289): (no map below)
03-25 03:29:52.773 I/DEBUG   ( 1289): (no map for address)
03-25 03:29:52.773 I/DEBUG   ( 1289): 00008000-0000a000 /system/bin/app_process
03-25 03:29:52.773 I/DEBUG   ( 1289): 
03-25 03:29:52.773 I/DEBUG   ( 1289): stack:
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8b0  40b8c768  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8b4  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8b8  00002a35  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8bc  00000023  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8c0  40b94c28  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8c4  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8c8  40ced8b0  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8cc  40ced868  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8d0  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8d4  570c6f14  /dev/ashmem/dalvik-LinearAlloc (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8d8  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8dc  00000023  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8e0  40b870b8  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8e4  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8e8  df0027ad  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8ec  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289): #00 40ced8f0  000059e4  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8f4  0000167a  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8f8  00080220  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced8fc  40949e88  /system/lib/libdvm.so
03-25 03:29:52.773 I/DEBUG   ( 1289): #01 40ced900  40b87928  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced904  40ced800  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced908  0000000c  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced90c  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced910  006f0052  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced914  006e0075  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced918  00490064  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced91c  0070006d  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced920  0069006c  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced924  00730065  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced928  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced92c  00000013  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced930  40b8c768  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced934  00000000  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced938  00002970  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced93c  00000023  
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced940  40b94c28  /dev/ashmem/dalvik-heap (deleted)
03-25 03:29:52.773 I/DEBUG   ( 1289):     40ced944  00000000  
03-25 03:29:54.796 W/NetworkManagementSocketTagger( 1401): setKernelCountSet(10043, 0) failed with errno -2
03-25 03:29:54.796 I/ActivityManager( 1401): Process com.mozilla.SUTAgentAndroid (pid 1900) has died.
03-25 03:29:54.796 I/WindowManager( 1401): WIN DEATH: Window{4147bd18 com.mozilla.SUTAgentAndroid/com.mozilla.SUTAgentAndroid.SUTAgentAndroid paused=false}
03-25 03:29:54.796 W/ActivityManager( 1401): Scheduling restart of crashed service com.mozilla.SUTAgentAndroid/.service.ASMozStub in 5000ms
03-25 03:29:54.796 W/ActivityManager( 1401): Force removing ActivityRecord{413ad7a8 com.mozilla.SUTAgentAndroid/.SUTAgentAndroid}: app died, no saved state
03-25 03:29:54.804 D/Zygote  ( 1292): Process 1900 terminated by signal (11)
03-25 03:29:54.804 F/libc    ( 1944): Fatal signal 13 (SIGPIPE) at 0x00000798 (code=0)

This crash happened while the test harness was executing xpcshell. sutagent restarted automatically:

03-25 03:29:59.835 I/ActivityManager( 1401): Start proc com.mozilla.SUTAgentAndroid for service com.mozilla.SUTAgentAndroid/.service.ASMozStub: pid=16537 uid=10043 gids={3003, 1015, 3002, 3001}

and then the test harness reconnected and retried its last command, which restarted xpcshell on the same test:

03-25 03:30:10.937 I/SUTAgentAndroid(16537): 10.26.132.19 : exec /data/local/xpcb/xpcw /mnt/sdcard/tests/xpcshell/netwerk/test/unit -r /mnt/sdcard/tests/xpcshell/c/httpd.manifest --greomni /data/local/xpcb/fennec-39.0a1.en-US.android-arm.apk -m -s -e 'const _HTTPD_JS_PATH = "/mnt/sdcard/tests/xpcshell/c/httpd.js";' -e 'const _HEAD_JS_PATH = "/mnt/sdcard/tests/xpcshell/head.js";' -e 'const _TESTING_MODULES_DIR = "/mnt/sdcard/tests/xpcshell/m";' -f /mnt/sdcard/tests/xpcshell/head.js -e 'const _SERVER_ADDR = "localhost"' -e 'const _HEAD_FILES = ["/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_channels.js", "/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache.js", "/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache2.js"];' -e 'const _TAIL_FILES = [];' -e 'const _JSDEBUGGER_PORT = 0;' -e 'const _TEST_FILE = ["test_cache2-23-read-over-chunk.js"];' -e 'const _TEST_NAME = "netwerk/test/unit/test_cache2-23-read-over-chunk.js"' -e '_execute_test(); quit(0);'

and then that second run failed:

03-25 03:30:11.664 I/Gecko   (16562): {"action":"test_status","time":1427254211674,"thread":null,"pid":null,"source":"xpcshell/head.js","test":"netwerk/test/unit/test_cache2-23-read-over-chunk.js","subtest":"OpenCallback.prototype.onCacheEntryCheck","status":"FAIL","expected":"PASS","message":"[OpenCallback.prototype.onCacheEntryCheck : 109] false == true","stack":"/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache2.js:OpenCallback.prototype.onCacheEntryCheck:109\n/mnt/sdcard/tests/xpcshell/netwerk/test/unit/head_cache.js:asyncOpenCacheEntry/CacheListener.prototype.onCacheEntryCheck:74\n/mnt/sdcard/tests/xpcshell/head.js:_do_main:207\n/mnt/sdcard/tests/xpcshell/head.js:_execute_test:506\n-e:null:1\nnull:null:0"}
03-25 03:30:11.671 I/Gecko   (16562): 
03-25 03:30:11.671 I/Gecko   (16562): {"action":"log","time":1427254211675,"thread":null,"pid":null,"source":"xpcshell/head.js","level":"INFO","message":"exiting test"}
03-25 03:30:11.671 W/GeckoConsole(16562): [JavaScript Error: "uncaught exception: 2147500036"]

presumably because it was using files created in the cache by the first run of test_cache2-23-read-over-chunk.js.

I'll file some follow-up bugs...
Flags: needinfo?(gbrown)
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/d7bfe22ed066
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla39
You need to log in before you can comment on or make changes to this bug.