Bug 199812

Summary: Speed up StorageManager::getValues()
Product: WebKit Reporter: Chris Dumez <cdumez>
Component: WebKit2Assignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: achristensen, beidson, commit-queue, ews-watchlist, ggaren, sihui_liu, simon.fraser, webkit-bug-importer, youennf
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 199892    
Bug Blocks:    
Attachments:
Description Flags
Patch
none
Archive of layout-test-results from ews124 for ios-simulator-wk2
none
Patch
none
Patch
none
Archive of layout-test-results from ews123 for ios-simulator-wk2
none
Patch
none
Patch none

Description Chris Dumez 2019-07-15 16:00:43 PDT
Speed up StorageManager::getValues().
Comment 1 Chris Dumez 2019-07-15 16:10:12 PDT
Created attachment 374161 [details]
Patch
Comment 2 EWS Watchlist 2019-07-15 18:19:47 PDT
Comment on attachment 374161 [details]
Patch

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

New failing tests:
storage/domstorage/localstorage/private-browsing-affects-storage.html
Comment 3 EWS Watchlist 2019-07-15 18:19:50 PDT
Created attachment 374176 [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.14.5
Comment 4 Chris Dumez 2019-07-15 18:56:56 PDT
Created attachment 374177 [details]
Patch
Comment 5 Chris Dumez 2019-07-15 20:10:11 PDT
Created attachment 374187 [details]
Patch
Comment 6 EWS Watchlist 2019-07-15 23:48:26 PDT
Comment on attachment 374187 [details]
Patch

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

New failing tests:
storage/domstorage/localstorage/private-browsing-affects-storage.html
Comment 7 EWS Watchlist 2019-07-15 23:48:27 PDT
Created attachment 374196 [details]
Archive of layout-test-results from ews123 for ios-simulator-wk2

The attached test failures were seen while running run-webkit-tests on the ios-sim-ews.
Bot: ews123  Port: ios-simulator-wk2  Platform: Mac OS X 10.14.5
Comment 8 Chris Dumez 2019-07-16 09:31:52 PDT
Created attachment 374212 [details]
Patch
Comment 9 Radar WebKit Bug Importer 2019-07-16 09:34:47 PDT
<rdar://problem/53156441>
Comment 10 Simon Fraser (smfr) 2019-07-16 10:41:19 PDT
Comment on attachment 374212 [details]
Patch

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

> Source/WebKit/ChangeLog:11
> +          thread hoping (IPC thread -> Main thread -> StorageManagerThread -> Main Thread)

hopping
Comment 11 Chris Dumez 2019-07-16 10:42:50 PDT
Created attachment 374216 [details]
Patch
Comment 12 Chris Dumez 2019-07-16 10:43:09 PDT
(In reply to Simon Fraser (smfr) from comment #10)
> Comment on attachment 374212 [details]
> Patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=374212&action=review
> 
> > Source/WebKit/ChangeLog:11
> > +          thread hoping (IPC thread -> Main thread -> StorageManagerThread -> Main Thread)
> 
> hopping

Darn, I keep making this mistake :D Thanks.
Comment 13 Geoffrey Garen 2019-07-16 10:44:18 PDT
r=me

Can you add a comment about what you used to measure performance? Might be good to check that into PerformanceTests, even if it's manual.
Comment 14 Chris Dumez 2019-07-16 10:45:45 PDT
(In reply to Geoffrey Garen from comment #13)
> r=me
> 
> Can you add a comment about what you used to measure performance? Might be
> good to check that into PerformanceTests, even if it's manual.

I am using the following test page to measure performance:
https://jsbin.com/zivayiviza/edit?html,output
Comment 15 Chris Dumez 2019-07-16 10:50:07 PDT
(In reply to Chris Dumez from comment #14)
> (In reply to Geoffrey Garen from comment #13)
> > r=me
> > 
> > Can you add a comment about what you used to measure performance? Might be
> > good to check that into PerformanceTests, even if it's manual.
> 
> I am using the following test page to measure performance:
> https://jsbin.com/zivayiviza/edit?html,output

Namely, in MobileSafari:
1. Open https://jsbin.com/zivayiviza/edit?html,output
2. Click "Fill Local Storage" button
3. Once the "Done" alert shows, close it and exit MobileSafari
4. Open https://jsbin.com/zivayiviza/edit?html,output again
5. Focus the field

Focusing the field at step 5 is very slow (~500ms) on my iPhone, which is what I am working to improve.
Comment 16 WebKit Commit Bot 2019-07-16 11:25:42 PDT
Comment on attachment 374216 [details]
Patch

Clearing flags on attachment: 374216

Committed r247486: <https://trac.webkit.org/changeset/247486>
Comment 17 WebKit Commit Bot 2019-07-16 11:25:44 PDT
All reviewed patches have been landed.  Closing bug.