[webkit-changes] [WebKit/WebKit] 0196b5: REGRESSION (282256 at main): [ macOS wk1 ] storage/in...

Sihui noreply at github.com
Fri Jan 17 09:26:56 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 0196b5613f25cb68fb77ad84b9bbf5ebe5825c79
      https://github.com/WebKit/WebKit/commit/0196b5613f25cb68fb77ad84b9bbf5ebe5825c79
  Author: Sihui Liu <sihui_liu at apple.com>
  Date:   2025-01-17 (Fri, 17 Jan 2025)

  Changed paths:
    M LayoutTests/platform/mac-wk1/TestExpectations
    M Source/WebCore/Modules/indexeddb/client/IDBConnectionProxy.cpp

  Log Message:
  -----------
  REGRESSION (282256 at main): [ macOS wk1 ] storage/indexeddb/objectstore-basics.html is a flaky timeout/crash
https://bugs.webkit.org/show_bug.cgi?id=284507
rdar://141334194

Reviewed by Chris Dumez.

The test is timed out due to dead lock. In IDBConnectionProxy::abortActivitiesForCurrentThread(),
m_transactionOperationLock is held before TransactionOperation::transitionToComplete(), and transitionToComplete() can
lead to forgetActiveOperations() to be invoked, which also requires the lock.
To fix this, now we ensure m_transactionOperationLock is released before TransactionOperation::transitionToComplete().

The test also crashes at TransactionOperation::transitionToComplete() for failing the main thread assertion. To fix it,
use TransactionOperation::transitionToCompleteOnThisThread() in abortActivitiesForCurrentThread() instead, as it can
be invoked on worker thread.

* LayoutTests/platform/mac-wk1/TestExpectations:
* Source/WebCore/Modules/indexeddb/client/IDBConnectionProxy.cpp:
(WebCore::IDBClient::IDBConnectionProxy::abortActivitiesForCurrentThread):

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list