Bug 189201

Summary: IDBRequest and IDBCursor should not hold strong references to JSValue
Product: WebKit Reporter: youenn fablet <youennf>
Component: WebCore Misc.Assignee: youenn fablet <youennf>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Normal CC: achristensen, alecflett, beidson, cdumez, esprehn+autocc, ews-watchlist, jsbell, kondapallykalyan, rniwa, simon.fraser
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
none
Archive of layout-test-results from ews107 for mac-sierra-wk2
none
Archive of layout-test-results from ews124 for ios-simulator-wk2
none
Patch
none
Patch
none
Archive of layout-test-results from ews100 for mac-sierra
none
Patch none

Description youenn fablet 2018-08-31 11:07:53 PDT
As can be seen from some IDB tests, this creates memory leaks.
Instead use JSValueInWrappedObject.
Comment 1 youenn fablet 2018-08-31 11:18:13 PDT
Created attachment 348654 [details]
Patch
Comment 2 youenn fablet 2018-08-31 13:42:35 PDT
Created attachment 348669 [details]
Patch
Comment 3 Alex Christensen 2018-08-31 13:44:02 PDT
Comment on attachment 348669 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=348669&action=review

> Source/WebCore/Modules/indexeddb/IDBCursor.h:104
>      // FIXME: The following uses of JSC::Strong are incorrect and can lead to storage leaks
>      // due to reference cycles; we should use JSValueInWrappedObject instead.

This comment should be removed.
Comment 4 EWS Watchlist 2018-08-31 17:08:06 PDT
Comment on attachment 348669 [details]
Patch

Attachment 348669 [details] did not pass mac-wk2-ews (mac-wk2):
Output: https://webkit-queues.webkit.org/results/9055070

New failing tests:
imported/w3c/web-platform-tests/IndexedDB/interleaved-cursors-small.html
imported/w3c/web-platform-tests/IndexedDB/interleaved-cursors-large.html
Comment 5 EWS Watchlist 2018-08-31 17:08:08 PDT
Created attachment 348684 [details]
Archive of layout-test-results from ews107 for mac-sierra-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews107  Port: mac-sierra-wk2  Platform: Mac OS X 10.12.6
Comment 6 EWS Watchlist 2018-08-31 17:49:52 PDT
Comment on attachment 348669 [details]
Patch

Attachment 348669 [details] did not pass ios-sim-ews (ios-simulator-wk2):
Output: https://webkit-queues.webkit.org/results/9055166

New failing tests:
imported/w3c/web-platform-tests/IndexedDB/interleaved-cursors-small.html
imported/w3c/web-platform-tests/IndexedDB/interleaved-cursors-large.html
Comment 7 EWS Watchlist 2018-08-31 17:49:54 PDT
Created attachment 348692 [details]
Archive of layout-test-results from ews124 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews124  Port: ios-simulator-wk2  Platform: Mac OS X 10.13.4
Comment 8 youenn fablet 2018-08-31 22:51:44 PDT
Created attachment 348707 [details]
Patch
Comment 9 youenn fablet 2018-09-01 08:03:05 PDT
Created attachment 348712 [details]
Patch
Comment 10 EWS Watchlist 2018-09-01 09:09:05 PDT
Comment on attachment 348712 [details]
Patch

Attachment 348712 [details] did not pass mac-ews (mac):
Output: https://webkit-queues.webkit.org/results/9062021

New failing tests:
imported/w3c/web-platform-tests/IndexedDB/interleaved-cursors-small.html
Comment 11 EWS Watchlist 2018-09-01 09:09:07 PDT
Created attachment 348714 [details]
Archive of layout-test-results from ews100 for mac-sierra

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews100  Port: mac-sierra  Platform: Mac OS X 10.12.6
Comment 12 youenn fablet 2018-09-04 10:52:42 PDT
Created attachment 348826 [details]
Patch