>From Ritik Raj <[email protected]>:
Attention is currently required from: Murtadha Hubail, Ritik Raj.
Hello Murtadha Hubail, Jenkins, Anon. E. Moose #1000171,
I'd like you to reexamine a change. Please visit
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484
to look at the new patch set (#9).
Change subject: [ASTERIXDB-3574][STO] Taking resource-level lock instead of
global lock
......................................................................
[ASTERIXDB-3574][STO] Taking resource-level lock instead of global lock
- user model changes: no
- storage format changes: no
- interface changes: yes
Details:
Currently, all dataset and index metadata operations (`create`,
`register`, `open`, `close`, and `unregister`) in
`DatasetLifecycleManager` are synchronized using a global lock,
leading to contention and limiting concurrency.
To improve performance, the global lock is replaced with
resource-specific locks where applicable. This allows operations
on different datasets or indexes to proceed in parallel.
Ext-ref: MB-65695
Change-Id: I9e3b931b363f082f0a7c69a0454adfd37937bb60
---
M
hyracks-fullstack/hyracks/hyracks-examples/btree-example/btreehelper/src/main/java/org/apache/hyracks/examples/btree/helper/RuntimeContext.java
M
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetInfo.java
M
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/resource/PersistentLocalResourceRepository.java
A
asterixdb/asterix-common/src/test/java/org/apache/asterix/common/context/DatasetLifecycleManagerLazyRecoveryTest.java
M
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetResource.java
M
hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/dataflow/IndexLifecycleManager.java
M
hyracks-fullstack/hyracks/hyracks-test-support/src/main/java/org/apache/hyracks/test/support/TestStorageManagerComponentHolder.java
A
asterixdb/asterix-common/src/test/java/org/apache/asterix/common/context/DatasetLifecycleManagerConcurrentTest.java
M
hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/build/IndexBuilder.java
M
hyracks-fullstack/hyracks/hyracks-test-support/src/main/java/org/apache/hyracks/test/support/TestStorageManager.java
M
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java
M
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/utils/StoragePathUtil.java
M
hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/dataflow/IndexDataflowHelper.java
M
hyracks-fullstack/hyracks/hyracks-storage-common/src/main/java/org/apache/hyracks/storage/common/IResourceLifecycleManager.java
M
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/RecoveryManager.java
15 files changed, 3,943 insertions(+), 302 deletions(-)
git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb
refs/changes/84/19484/9
--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484
To unsubscribe, or for help writing mail filters, visit
https://asterix-gerrit.ics.uci.edu/settings
Gerrit-Project: asterixdb
Gerrit-Branch: ionic
Gerrit-Change-Id: I9e3b931b363f082f0a7c69a0454adfd37937bb60
Gerrit-Change-Number: 19484
Gerrit-PatchSet: 9
Gerrit-Owner: Ritik Raj <[email protected]>
Gerrit-Reviewer: Anon. E. Moose #1000171
Gerrit-Reviewer: Jenkins <[email protected]>
Gerrit-Reviewer: Murtadha Hubail <[email protected]>
Gerrit-Attention: Murtadha Hubail <[email protected]>
Gerrit-Attention: Ritik Raj <[email protected]>
Gerrit-MessageType: newpatchset