8c37e877e231ee830f377b2945291b1b747293d3: Bug 1286798 - Part 25: Add checks for the group and global limit; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:34 +0100 - rev 505243
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 25: Add checks for the group and global limit; r=asuth
c0d40572c29bc3be2611f6e40bb554a55fcc54a3: Bug 1286798 - Part 24: A new exclusive directory lock shouldn't invalidate existing internal directory locks; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:31 +0100 - rev 505242
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 24: A new exclusive directory lock shouldn't invalidate existing internal directory locks; r=asuth This fixes an intermittent failure when multiple clearStoragesForPrincipal() are called at the same time.
bd8fd9a22dc08d63cec68de475182a1b8eeeca4b: Bug 1286798 - Part 23: Fix GetOrCreateForCurrentThread() when the runnable for calling SendInitBackground() on the main thread was already dispatched, but the main thread then entered a nested event loop; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:28 +0100 - rev 505241
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 23: Fix GetOrCreateForCurrentThread() when the runnable for calling SendInitBackground() on the main thread was already dispatched, but the main thread then entered a nested event loop; r=asuth See the big comment in the code for more details.
076cc59fa79341fd5cd472d336cbf6e8dac53029: Bug 1286798 - Part 22: Add support for preloading of datastores; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:25 +0100 - rev 505240
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 22: Add support for preloading of datastores; r=asuth Datastores are preloaded only for content principals. The preloading is triggered as soon as possible to lower the chance of blocking the main thread in content process. If there is no physical database on disk for given origin, datastore is not created. Preloaded datastores are kept alive for 20 seconds.
bb3a3cc424cd000e8bb198ae47259d3e751cc3bd: Bug 1286798 - Part 21: Base domain needs to be handled too if strict file origin policy is not in effect; r=bholley,asuth,dholbert
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:22 +0100 - rev 505239
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 21: Base domain needs to be handled too if strict file origin policy is not in effect; r=bholley,asuth,dholbert
615640a58a97fdf95584df9222358ff0372ad31d: Bug 1286798 - Part 20: Add checks for the 5 MB origin limit; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:19 +0100 - rev 505238
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 20: Add checks for the 5 MB origin limit; r=asuth The 5 MB limit is no longer applied to the whole group (eTLD+1). That will be controlled by quota manager.
5714205a7bf9ea1083a7c24f18b188d8304679cd: Bug 1286798 - Part 19: Implement a helper method for datastore preloading verification; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:15 +0100 - rev 505237
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 19: Implement a helper method for datastore preloading verification; r=asuth A new type of request is introduced, PBackgroundLSSimpleRequest. This protocol is much simpler than PBackgroundLSRequest which needs to be cancelable.
61ce2d795e8e3db93cb8a191bad0a80b67eee92a: Bug 1286798 - Part 18: Verify that data is persisted on disk; r=asuth,mrbkap
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:11 +0100 - rev 505236
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 18: Verify that data is persisted on disk; r=asuth,mrbkap New methods open() and close() are added to the Storage WebIDL interface. They are only available when a pref is set and are only intended for testing. There's also a new method resetStoragesForPrincipal() which is used as a callback for close() since datastores don't release directory locks immediately. resetStoragesForPrincipal() requests an exclusive lock for given origin, so it must wait for any exising shared locks to be released.
03b477c00c4f5ca4321efdc32bffa43bcae510d3: Bug 1286798 - Part 17: Fix a test failing in --verify mode; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:08 +0100 - rev 505235
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 17: Fix a test failing in --verify mode; r=asuth
22ede10fb76d711eff32957567c9a7b087279e24: Bug 1286798 - Part 16: Adjust ClearDataService for new local storage implementation; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:05 +0100 - rev 505234
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 16: Adjust ClearDataService for new local storage implementation; r=asuth This patch also adds support for creating LSObjects from chrome for any given origin which can be used for example by xpcshell tests.
bb1594f32faefd90e7b2851fbe438e8bfbef81d9: Bug 1286798 - Part 15: Fix clearLocalStorage() in browser extensions; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:48:01 +0100 - rev 505233
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 15: Fix clearLocalStorage() in browser extensions; r=asuth
20606f9de28fd7dff30f30b3862b2bdc68df85b3: Bug 1286798 - Part 14: Enhance clearStoragesForPrincipal() to support clearing of storages for specific quota client; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:58 +0100 - rev 505232
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 14: Enhance clearStoragesForPrincipal() to support clearing of storages for specific quota client; r=asuth See also bug 1402254, original patch by baku.
c63189db48cb7b515e53c33bc3203a92761e1d32: Bug 1286798 - Part 13: Preparation for quota checks; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:55 +0100 - rev 505231
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 13: Preparation for quota checks; r=asuth
a4324eecfb06d326abe06677339bf153c627af33: Bug 1286798 - Part 12: Honor the storage preference and cookie settings in all LocalStorage API methods; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:52 +0100 - rev 505230
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 12: Honor the storage preference and cookie settings in all LocalStorage API methods; r=asuth
4e938b6813e3e8dcb10998d89243678463f4b42a: Bug 1286798 - Part 11: Enable tests for session only mode (but only for the old local storage implementation); r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:48 +0100 - rev 505229
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 11: Enable tests for session only mode (but only for the old local storage implementation); r=asuth An attribute for checking if the next gen local storage implementation is enabled is exposed via a new interface nsILocalStorageManager which should be used for any other local storage specific stuff.
75c28b78f8ee02018ccaec9c2f4035d46182d10e: Bug 1286798 - Part 10: Support for storage events; r=asuth,janv
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:45 +0100 - rev 505228
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 10: Support for storage events; r=asuth,janv Storage events are fired either directly after getting response from synchronous SetItem call or through observers. When a new onstorage event listener is added, we sycnhronously register an observer in the parent process. There's always only one observer actor per content process. PBackgroundLSDatabase is now managed by a new PBackgroundLSObject protocol. PBackgroundLSObject is needed to eliminate the need to pass the principal info and document URI everytime a write operation occurs. Preparation of an observer shares some states with preparation of a datastore, so common stuff now lives in LSRequestBase and preparation of a datastore now implements a nested state machine. This patch was enhanced by asuth to drop observers only when the last storage listener is removed. EventListenerRemoved is invoked on any removal, not just the final removal, so we need to make sure it's the final removal before dropping observer.
30bf6870616b701d1ddcb090f18e240164d16ff0: Bug 1286798 - Part 9: Support for private browsing; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:41 +0100 - rev 505227
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 9: Support for private browsing; r=asuth Since we keep/cache data in memory anyway, private browsing support is mostly about avoiding any persistence related calls and clearing private browsing datastores when we get a notification. The separation between normal and private browsing datastores is done by the privateBrowsingId attribute which is part of the origin string.
1a6c4f6a6b5cad6d90e9489b480d2fdd5d6319aa: Bug 1286798 - Part 8: Persist datastores to disk; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:38 +0100 - rev 505226
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 8: Persist datastores to disk; r=asuth Introduced a Connection and a ConnectioThread object. All I/O requests are processed by a new single thread managed by ConnectionThread object. Connection objects are prepared by the prepare datastore operation and then kept alive by datastores just like directory locks. All datastore I/O operations are wrapped in a transaction which automaticaly commits after 5 seconds. Datastore preparation now also loads all items from the database.
d5f293542508df0e6c56623f30b2d13b218c617f: Bug 1286798 - Part 7: Teach QuotaManager's OriginParser to handle file://UNIVERSAL_FILE_URI_ORIGIN; r=asuth
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:34 +0100 - rev 505225
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 7: Teach QuotaManager's OriginParser to handle file://UNIVERSAL_FILE_URI_ORIGIN; r=asuth See bug 1340710 which introduced this kind of URI.
0b0a03cf7b64cc9cc6eff36c3ae7f56f010e944c: Bug 1286798 - Part 6: Fix a dead lock in the single process case; r=asuth,janv
Jan Varga <jan.varga@gmail.com> - Thu, 29 Nov 2018 21:47:30 +0100 - rev 505224
Push 10290 by ffxbld-merge at Mon, 03 Dec 2018 16:23:23 +0000
Bug 1286798 - Part 6: Fix a dead lock in the single process case; r=asuth,janv Expose the nested main event target, so it can be used in the single process case by the parent side to process runnables which need to run on the main thread. After this change we don't have use hacks like getting profile directory path on the child side and sending it to the parent. The parent side can now do it freely even in the single process case. This patch was enhanced by asuth to not tunnel the nested main event target through IPC.
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 tip