StrongWorkerRef should not release the holder immediately

RESOLVED FIXED in Firefox 61

Status

()

defect
P2
normal
RESOLVED FIXED
a year ago
a year ago

People

(Reporter: baku, Assigned: baku)

Tracking

58 Branch
mozilla61
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox61 fixed)

Details

Attachments

(1 attachment)

Assignee

Description

a year ago
Currently, StrongWorkerRef is not so strong to keep the worker alive...
Assignee

Comment 1

a year ago
Attachment #8962667 - Flags: review?(bugs)
Duplicate of this bug: 1448928
Priority: -- → P2
Note to myself, MessagePort used to have similar behavior when it still had 
MessagePortWorkerHolder (its state handling + UpdateMustKeepAlive(); is error prone).
And BroadcastChannel (oddly enough, bc has RefPtr<WorkerRef>, not RefPtr<StrongWorkerRef> member variable.)

I don't understand FileReader::Shutdown(), but the issue I don't understand was there already before WorkerRefs (why have mBusyCount, when we don't really care about it there.)

EventSource looks ok. So does IPCBlobInputStreamChild, and Promise stuff
Attachment #8962667 - Flags: review?(bugs) → review+

Comment 4

a year ago
Pushed by amarchesini@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/2c9044fa02f9
StrongWorkerRef should not release the holder immediately but only in the DTOR, r=smaug
Backed out changeset 2c9044fa02f9 (bug 1449138) for wpt failures in /builds/worker/workspace/build/src/dom/workers/WorkerRef.cpp:201 on a CLOSED TREE

Problematic push: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=2c9044fa02f939ef1f2dae0384666845e5b5098d&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-classifiedState=unclassified
Failure: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&fromchange=3dd5ec97e04873675c948ea790736c2a6639c3cb&filter-classifiedState=unclassified&selectedJob=170606321
Backout: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=adfa3b56cbdc68827ad9603fd338ab321632858b&filter-resultStatus=testfailed&filter-resultStatus=busted&filter-resultStatus=exception&filter-classifiedState=unclassified
Log: https://treeherder.mozilla.org/logviewer.html#?job_id=170606321&repo=mozilla-inbound&lineNumber=19871

task 2018-03-27T17:36:56.170Z] 17:36:56     INFO - PID 13091 | [Child 13155, DOM Worker] WARNING: '!holder->HoldWorker(aWorkerPrivate, Closing)', file /builds/worker/workspace/build/src/dom/workers/WorkerRef.cpp, line 185
[task 2018-03-27T17:36:56.170Z] 17:36:56     INFO - PID 13091 | Assertion failure: mHolder, at /builds/worker/workspace/build/src/dom/workers/WorkerRef.cpp:201
Flags: needinfo?(amarchesini)
Assignee

Updated

a year ago
Flags: needinfo?(amarchesini)

Comment 6

a year ago
Pushed by amarchesini@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/7cfbbb86ef23
StrongWorkerRef should not release the holder immediately but only in the DTOR, r=smaug

Comment 7

a year ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/7cfbbb86ef23
Status: NEW → RESOLVED
Last Resolved: a year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
Depends on: 1448861
You need to log in before you can comment on or make changes to this bug.