Re: Intent to Implement: Private Browsing Storage (IndexedDB, Blobs, etc)

2016-12-14 Thread Ehsan Akhgari
This is great Kyle.  Historically this has been one of the biggest requests
that we've had from developers with regards to private browsing.  I'm happy
that we're finally addressing this use case.

On Tue, Dec 13, 2016 at 7:35 PM, Kyle Machulis 
wrote:

> In bug 781982, we're planning on implementing IndexedDB capabilities in
> Private Browsing Mode.
>
> The current plan is to:
>
> - Store IDB databases, minus blobs, in memory for the lifetime of the
> private browsing session
> - Store blobs to disk, encrypted via a key that is only held in memory
> during the private browsing session. We'll clean up encrypted blobs on disk
> at the end of the private browsing session, or on next startup if there is
> a crash.
>
> One of the main reasons of this design is games. Apparently we've gotten a
> lot of requests for being able to play games in private browsing mode, and
> storing blobs for game assets in memory would quickly eat through whatever
> probably conservative memory budget we would allocate. However, there's
> been some pushback on the idea of storing anything to disk while in private
> browsing mode, so we'd like to get some input about this.
>
> AFAIK, Chrome's strategy for this is to just store everything in memory and
> keep a fairly small size cap on it (something like 32mb?).
>
> Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=781982
>
> Platform coverage: All platforms.
>
> Estimated or target release: Not yet determined.
>
> Do other browser engines implement this?
> Blink: Yes
> Edge: Not yet implemented.
> WebKit: Yes
>
> Tests: Not yet written.
> ___
> dev-platform mailing list
> dev-platform@lists.mozilla.org
> https://lists.mozilla.org/listinfo/dev-platform
>



-- 
Ehsan
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Intent to Implement: Private Browsing Storage (IndexedDB, Blobs, etc)

2016-12-14 Thread Ehsan Akhgari
On Wed, Dec 14, 2016 at 9:35 AM, Ben Kelly  wrote:

> On Tue, Dec 13, 2016 at 7:35 PM, Kyle Machulis 
> wrote:
>
> > AFAIK, Chrome's strategy for this is to just store everything in memory
> and
> > keep a fairly small size cap on it (something like 32mb?).
> >
>
> Really?  Last I asked they said they basically created a new temporary
> profile when entering incognito mode.  (More similar to our containers,
> etc.) The code then worked as normal.  So I thought it wrote to disk.  They
> then delete the temp profile when they are done with incognito.
>
> This is only based on an informal face-to-face discussion with one of their
> storage engineers, though.  I haven't actually looked at the code.
>

No.  What they do is open the backing LevelDB database in in-memory mode
when IDB is accessed inside Incognito mode: <
https://trac.webkit.org/changeset/96322> which is similar to what we're
doing here.
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Re: Intent to Implement: Private Browsing Storage (IndexedDB, Blobs, etc)

2016-12-14 Thread Ben Kelly
On Tue, Dec 13, 2016 at 7:35 PM, Kyle Machulis 
wrote:

> AFAIK, Chrome's strategy for this is to just store everything in memory and
> keep a fairly small size cap on it (something like 32mb?).
>

Really?  Last I asked they said they basically created a new temporary
profile when entering incognito mode.  (More similar to our containers,
etc.) The code then worked as normal.  So I thought it wrote to disk.  They
then delete the temp profile when they are done with incognito.

This is only based on an informal face-to-face discussion with one of their
storage engineers, though.  I haven't actually looked at the code.

Ben
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform


Intent to Implement: Private Browsing Storage (IndexedDB, Blobs, etc)

2016-12-13 Thread Kyle Machulis
In bug 781982, we're planning on implementing IndexedDB capabilities in
Private Browsing Mode.

The current plan is to:

- Store IDB databases, minus blobs, in memory for the lifetime of the
private browsing session
- Store blobs to disk, encrypted via a key that is only held in memory
during the private browsing session. We'll clean up encrypted blobs on disk
at the end of the private browsing session, or on next startup if there is
a crash.

One of the main reasons of this design is games. Apparently we've gotten a
lot of requests for being able to play games in private browsing mode, and
storing blobs for game assets in memory would quickly eat through whatever
probably conservative memory budget we would allocate. However, there's
been some pushback on the idea of storing anything to disk while in private
browsing mode, so we'd like to get some input about this.

AFAIK, Chrome's strategy for this is to just store everything in memory and
keep a fairly small size cap on it (something like 32mb?).

Bug: https://bugzilla.mozilla.org/show_bug.cgi?id=781982

Platform coverage: All platforms.

Estimated or target release: Not yet determined.

Do other browser engines implement this?
Blink: Yes
Edge: Not yet implemented.
WebKit: Yes

Tests: Not yet written.
___
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform