I added error handling for handle_open_db but I also added it to
SqliteEngine::new and handle_sync_operation because we also open db
there, so I am not sure about these two.
part of #40983
---------
Signed-off-by: Taym Haddadi <haddadi.taym@gmail.com>
Currently we use a single json file to hold all webstorage data. This is
bad; this json file would become slow to read or write to as the number
of origins and key/value pairs increase. This PR splits this into one
database per an origin, and uses sqlite3 instead of json. IndexedDB
already uses sqlite3, so no additionally dependencies are added.
Fixes: #36034
Testing: WPT
---------
Signed-off-by: Ashwin Naren <arihant2math@gmail.com>