Closed Bug 1183959 Opened 10 years ago Closed 10 years ago

Intermittent e10s test_file_os_delete.html | OS files deleted - got 200000, expected +0

Categories

(Core :: Storage: IndexedDB, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
Tracking Status
e10s + ---
firefox42 --- affected

People

(Reporter: RyanVM, Assigned: janv)

References

(Blocks 1 open bug)

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

17:27:46 INFO - 1285 INFO TEST-START | dom/indexedDB/test/test_file_os_delete.html 17:27:47 INFO - Xlib: extension "RANDR" missing on display ":0". 17:27:49 INFO - TEST-INFO | screentopng: exit 0 17:27:49 INFO - 1286 INFO Running 17:27:49 INFO - 1287 INFO Pushing preferences 17:27:49 INFO - 1288 INFO Pushing permissions 17:27:49 INFO - 1289 INFO Clearing old databases 17:27:49 INFO - 1290 INFO TEST-FAIL | dom/indexedDB/test/test_file_os_delete.html | Skipping test in a worker because it's not structured properly 17:27:49 INFO - 1291 INFO Running test in main thread 17:27:49 INFO - 1292 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Correct byte length 17:27:49 INFO - 1293 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Correct byte length 17:27:49 INFO - 1294 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Got correct event type 17:27:49 INFO - 1295 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Got an error event 17:27:49 INFO - 1296 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Expected error was thrown. 17:27:49 INFO - 1297 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Got correct event type 17:27:49 INFO - 1298 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Correct file usage 17:27:49 INFO - 1299 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | Got correct event type 17:27:49 INFO - 1300 INFO TEST-PASS | dom/indexedDB/test/test_file_os_delete.html | OS files exists 17:27:49 INFO - 1301 INFO TEST-UNEXPECTED-FAIL | dom/indexedDB/test/test_file_os_delete.html | OS files deleted - got 200000, expected +0 17:27:49 INFO - MEMORY STAT | vsize 20972596MB | residentFast 1143MB 17:27:49 INFO - 1302 INFO TEST-OK | dom/indexedDB/test/test_file_os_delete.html | took 1262ms
Keywords: leave-open
Summary: Intermittent test_file_os_delete.html | OS files deleted - got 200000, expected +0 → Intermittent e10s test_file_os_delete.html | OS files deleted - got 200000, expected +0
Whiteboard: [test disabled on e10s]
Blocks: e10s-tests
tracking-e10s: --- → +
I looked into why this test is failing intermittently. Near the end of this test, it calls flushPendingFileDeletions(), then gets some usage info, and checks if the value there has changed. The flush call ends up in IndexedDatabaseManager::FlushPendingFileDeletions(), which sends an async message to the parent, which then dispatches a bunch of runnables onto a background thread, which I assume does the actual deletion. That all seems pretty prone to races. That's just a guess, though, maybe there are strong ordering guarantees that preclude that.
Yeah it's a race. The problem is that the flush request is sent through PContent (main thread) and get usage through PBackground (background thread). The flush and get usage both end up on background thread and then on quota manager I/O thread, but the flush can run after the get usage because PContent/main thread can be slow. I think the flush should use PBackground too and that should fix this bug. I have a patch for that which is currently on try.
Attached patch patchSplinter Review
Assignee: nobody → jvarga
Status: NEW → ASSIGNED
Attachment #8714760 - Flags: review?(khuey)
Your patch doesn't reenable the test on e10s.
(In reply to Andrew McCreight [:mccr8] from comment #97) > Your patch doesn't reenable the test on e10s. hm, are you sure ? -skip-if = e10s || (buildapp == 'b2g' && toolkit != 'gonk') # Bug 931116, Bug 1183959 for e10s +skip-if = (buildapp == 'b2g' && toolkit != 'gonk') # Bug 931116
(In reply to Jan Varga [:janv] from comment #98) > hm, are you sure ? Oh, sorry, I misread the patch!
Test has been re-enabled on e10s, without any failures in the last week.
Blocks: 1218958
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Keywords: leave-open
Resolution: --- → FIXED
Whiteboard: [test disabled on e10s]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: