Sounds good - thx!

On 9/17/24 10:38 AM, Abhishek Shanthkumar wrote:
Hi, Mike!

The DOMException.name was "DataError" for all cases before this change. It remains the same for the "recoverable" cases even after this change. I'll add this to the Summary, thanks!

This error is unique to Chromium because, yes, LevelDB is not used by other browsers.

Thanks,

Abhishek


------------------------------------------------------------------------
*From:* Mike Taylor <miketa...@chromium.org>
*Sent:* Tuesday, September 17, 2024 7:46 PM
*To:* Chromestatus <ad...@cr-status.appspotmail.com>; blink-dev@chromium.org <blink-dev@chromium.org> *Cc:* Abhishek Shanthkumar <abhishek.shanthku...@microsoft.com>; a...@chromium.org <a...@chromium.org>; est...@chromium.org <est...@chromium.org>; Steve Becker <stev...@microsoft.com> *Subject:* [EXTERNAL] Re: [blink-dev] Web-Facing Change PSA: Improved error reporting in IndexedDB for large value read failures

        
You don't often get email from miketa...@chromium.org. Learn why this is important <https://aka.ms/LearnAboutSenderIdentification>
        

Hi! A couple of questions:

What was the DOMException.name before this change?

Do we know what do other browsers do in this situation? Or is LevelDB only used by Chromium?

On 9/17/24 10:11 AM, Chromestatus wrote:


            Contact emails

    abhishek.shanthku...@microsoft.com
    <mailto:abhishek.shanthku...@microsoft.com>, est...@chromium.org
    <mailto:est...@chromium.org>


            Specification

    https://www.w3.org/TR/IndexedDB/#dom-idbrequest-error
    <https://www.w3.org/TR/IndexedDB/#dom-idbrequest-error>


            Summary

    Change to reporting for certain error cases that were previously
    reported with a DOMException and the message "Failed to read large
    IndexedDB value". Chromium will now raise a DOMException with the
    name "NotFoundError" when the file containing the data being read
    by an IDBRequest is missing from the disk so that sites can take
    the appropriate corrective action when an unrecoverable failure
    occurs. Corrective actions could include deleting the entry from
    the DB, notifying the user, re-fetching the data from servers,
    etc. More details: a large value (above a specific size threshold)
    written to IndexedDB is not stored directly in the underlying
    LevelDB database but instead stored as a separate file. An
    IndexedDB read request for this value looks up the blob reference
    from LevelDB, reads the blob, then unwraps and returns the stored
    value. If a failure occurs in this process, the browser fires an
    "error" event and sets the error property on the IDBRequest to a
    DOMException with the message "Failed to read large IndexedDB
    value". The failure could be recoverable (caused by low memory) or
    unrecoverable (the blob file is missing from the disk). This
    feature updates the name to "NotFoundError" to enable
    distinguishing recoverable and unrecoverable cases.



            Blink component

    Blink>Storage>IndexedDB
    
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EStorage%3EIndexedDB>


            TAG review

    None


            TAG review status

    Not applicable


            Risks



            Interoperability and Compatibility

    None



    /Gecko/: No signal

    /WebKit/: No signal

    /Web developers/: No signals

    /Other signals/:


            WebView application risks

    /Does this intent deprecate or change behavior of existing APIs,
    such that it has potentially high risk for Android WebView-based
    applications?/

    None



            Debuggability

    None



            Will this feature be supported on all six Blink platforms
            (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

    Yes

    This change is in the blink layer of the IndexedDB API
    implementation and hence applies to all Blink platforms.



            Is this feature fully tested by web-platform-tests
            
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?

    No


            Flag name on chrome://flags

    None


            Finch feature name

    None


            Non-finch justification

    This is a simple change to the error type when a failure occurs
    due to a specific cause. Web developers can choose to update their
    sites to respond differently to this specific error, but existing
    general error handling keyed to the "Failed to read large
    IndexedDB value" message will continue to work. Hence, this is
    unlikely to break sites and is therefore not behind a feature flag.



            Requires code in //chrome?

    False


            Tracking bug

    https://issues.chromium.org/issues/362123231
    <https://issues.chromium.org/issues/362123231>


            Estimated milestones

    Shipping on desktop         130
    Shipping on Android         130
    Shipping on WebView         130



            Anticipated spec changes

    /Open questions about a feature may be a source of future web
    compat or interop issues. Please list open issues (e.g. links to
    known github issues in the project for the feature specification)
    whose resolution may introduce web compat/interop risk (e.g.,
    changing to naming or structure of the API in a
    non-backward-compatible way)./

    None


            Link to entry on the Chrome Platform Status

    https://chromestatus.com/feature/5140210640486400?gate=5120313600507904
    <https://chromestatus.com/feature/5140210640486400?gate=5120313600507904>

    This intent message was generated by Chrome Platform Status
    <https://chromestatus.com/>.
    --
    You received this message because you are subscribed to the Google
    Groups "blink-dev" group.
    To unsubscribe from this group and stop receiving emails from it,
    send an email to blink-dev+unsubscr...@chromium.org
    <mailto:blink-dev+unsubscr...@chromium.org>.
    To view this discussion on the web visit
    
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/66e98e07.2b0a0220.195547.0126.GAE%40google.com
    
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/66e98e07.2b0a0220.195547.0126.GAE%40google.com?utm_medium=email&utm_source=footer>.


--
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/feae33cc-67a7-47a4-90e0-93f179b50126%40chromium.org.

Reply via email to