You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@asterixdb.apache.org by AsterixDB Code Review <do...@asterix-gerrit.ics.uci.edu> on 2025/03/24 19:55:49 UTC

Change in asterixdb[ionic]: [NO ISSUE][STO] Fix race while destroy

From Ritik Raj <ri...@couchbase.com>:

Ritik Raj has uploaded this change for review. ( https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19547 )


Change subject: [NO ISSUE][STO] Fix race while destroy
......................................................................

[NO ISSUE][STO] Fix race while destroy

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
There are cases when trying to destroy unregistered index,
where threads race to create and remove the dataset
from datasets cache, which may cause the NPE while accessing
datset from cache.

Ext-ref: MB-65896
Change-Id: I932fd456493da47255d122833d6c6e1fe41fb02a
---
M asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java
1 file changed, 21 insertions(+), 1 deletion(-)



  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb refs/changes/47/19547/1

diff --git a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java
index c6edb4e..fc27bf6 100644
--- a/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java
+++ b/asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java
@@ -639,7 +639,7 @@
 
     @Override
     public ILSMComponentIdGenerator getComponentIdGenerator(int datasetId, int partition, String path) {
-        DatasetResource dataset = datasets.get(datasetId);
+        DatasetResource dataset = getDatasetLifecycle(datasetId);
         ILSMComponentIdGenerator generator = dataset.getComponentIdGenerator(partition);
         if (generator != null) {
             return generator;

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19547
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: I932fd456493da47255d122833d6c6e1fe41fb02a
Gerrit-Change-Number: 19547
Gerrit-PatchSet: 1
Gerrit-Owner: Ritik Raj <ri...@couchbase.com>
Gerrit-MessageType: newchange