>From Murtadha Hubail <[email protected]>:

Attention is currently required from: Ritik Raj.
Murtadha Hubail has posted comments on this change. ( 
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484 )

Change subject: [ASTERIXDB-3574][STO] Taking resource-level lock instead of 
global lock
......................................................................


Patch Set 9:

(12 comments)

File 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/nc/RecoveryManager.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/fcd00a00_f376e60b
PS9, Line 362: datasetLifecycleManager
index =


File 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetInfo.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/0a258504_18a03213
PS9, Line 205: // order of indexes does not matter. so it's fine.
Remove


File 
asterixdb/asterix-common/src/main/java/org/apache/asterix/common/context/DatasetLifecycleManager.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/50d3c425_fbec35e1
PS9, Line 317: LOGGER.log(Level.INFO, "Dropping index " + resourcePath + " on 
node " + serviceCtx.getNodeId());
use placeholders


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/471e425e_9f437848
PS9, Line 345: // Validate dataset lifecycle manager state before proceeding
remove


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/b17b8539_450e0f37
PS9, Line 456: // no need to validate lifecycle manager state, as being called 
from the register()
remove


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/ce4cba15_824e882a
PS9, Line 532: // No need of synchronization as the "datasets" is 
concurrentHashMap
remove or put it closest to its usage


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/5679a2ee_bf52257b
PS9, Line 909: // the datasets view is weakly consistent.
same as previous comment


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/9e49a12f_1f8c991d
PS9, Line 922:   // the datasets view is weakly consistent.
             :     // but since called during startup, things can be considered 
fine.
same


File 
asterixdb/asterix-common/src/test/java/org/apache/asterix/common/context/DatasetLifecycleManagerConcurrentTest.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/92d38462_cafdd6c2
PS9, Line 96:
remove


File 
asterixdb/asterix-transactions/src/main/java/org/apache/asterix/transaction/management/resource/PersistentLocalResourceRepository.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/bc2d3387_16d4266f
PS9, Line 142:  beforeWriteAccess();
             :         try {
             :             resource = resourceCache.getIfPresent(relativePath);
             :             if (resource != null) {
             :                 return resource;
             :             }
             :         } finally {
             :             afterWriteAccess();
             :         }
maybe refactor this to something like getFromCache


https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/d1154850_972e4380
PS9, Line 151: // since the resource was not present, take a write lock.
             :         // as it involves disk or network I/O, should be done 
once.
remove or reword


File 
hyracks-fullstack/hyracks/hyracks-storage-am-common/src/main/java/org/apache/hyracks/storage/am/common/build/IndexBuilder.java:

https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/19484/comment/7fa7ca51_27dee02e
PS9, Line 112: IIndex registeredIndex = 
lcManager.registerIfAbsent(resourceRelPath, index);
             :         if (registeredIndex != index) {
             :             // some other thread has registered the index
             :             // indicating this is not the first time, the index 
is being created
             :             throw new HyracksDataException("Index with resource 
ID " + resourceId + " already exists.");
             :         }
we probably should encapsulate this logic in IResourceLifecycleManager, but we 
can do this in subsequent patches



--
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-Reviewer: Ritik Raj <[email protected]>
Gerrit-Attention: Ritik Raj <[email protected]>
Gerrit-Comment-Date: Wed, 19 Mar 2025 12:51:05 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment

Reply via email to