Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7833f1f216eb8dd59c03ed213fc49f105f6f94a2
      
https://github.com/WebKit/WebKit/commit/7833f1f216eb8dd59c03ed213fc49f105f6f94a2
  Author: Sihui Liu <[email protected]>
  Date:   2023-02-07 (Tue, 07 Feb 2023)

  Changed paths:
    M Source/WebCore/platform/sql/SQLiteTransaction.h
    M Source/WebKit/NetworkProcess/storage/SQLiteStorageArea.cpp

  Log Message:
  -----------
  SQLiteStorageArea should start new transaction when the previous one is 
rolled back by sqlite
https://bugs.webkit.org/show_bug.cgi?id=251764
rdar://105061923

Reviewed by Chris Dumez.

When debugging storage_local_setitem_quotaexceedederr.window.html failure, I 
found SQLiteStorageArea does not start new
transaction after SQLITE_FULL error, which means it would create an implicit 
transaction for each statement. To fix
this, this patch makes startTransactionIfNecessary() check whether existing 
transaction is already rolled back. If the
transaction is rolled back, it should start a new transaction.

* Source/WebCore/platform/sql/SQLiteTransaction.h:
* Source/WebKit/NetworkProcess/storage/SQLiteStorageArea.cpp:
(WebKit::SQLiteStorageArea::startTransactionIfNecessary):

Canonical link: https://commits.webkit.org/259966@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to