[Webkit-unassigned] [Bug 45110] Implement JSC features required for IndexedDB

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Aug 31 09:28:31 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=45110





--- Comment #34 from Joshua Bell <jsbell at chromium.org>  2012-08-31 09:28:37 PST ---
(From update of attachment 161713)
View in context: https://bugs.webkit.org/attachment.cgi?id=161713&action=review

> Source/WebCore/Modules/indexeddb/IDBCursorBackendImpl.h:66
> +    virtual void postSuccessHandlerCallback() { }

This is fine - in the Chromium port there's an extra layer in place which uses this callback as part of a cursor pre-fetching mechanism, so making the back end be a no-op here is good.

> Source/WebCore/Modules/indexeddb/IDBCursorWithValue.idl:32
> +        readonly attribute [V8CustomGetter, JSCustomGetter, CachedAttribute] IDBAny value;

Drive-by comment: we had to use a custom getter for V8 because although we want the value to be re-used across script accesses it needed a mechanism to be invalidated by the cursor. Not sure if CachedAttribute is buying anything (but if it is simplifying code, great!).

> Source/WebCore/Modules/indexeddb/IDBKeyPathBackendImpl.cpp:43
> +void IDBKeyPathBackendImpl::createIDBKeysFromSerializedValuesAndKeyPath(const Vector<RefPtr<SerializedScriptValue>, 0>& values, const IDBKeyPath& keyPath, Vector<RefPtr<IDBKey>, 0>& keys)

This file is being removed in https://bugs.webkit.org/show_bug.cgi?id=95385 (it is no longer needed)

> Source/WebCore/bindings/js/IDBBindingUtilities.cpp:76
> +static PassRefPtr<IDBKey> createIDBKeyFromValue(ExecState* exec, JSValue value, Vector<JSArray*>& stack)

Some of this may be obsoleted by:
https://bugs.webkit.org/show_bug.cgi?id=94023
https://bugs.webkit.org/show_bug.cgi?id=95409
... which attempt to optimize the pattern of converting ScriptValue -> SerializedScriptValue during binding, then converting SSV back to SV for these key operations, then (sometimes) re-serializing as SSV.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list