nizhikov commented on code in PR #12081:
URL: https://github.com/apache/ignite/pull/12081#discussion_r2114579035


##########
modules/core/src/main/java/org/apache/ignite/internal/processors/cache/persistence/file/FilePageStoreManager.java:
##########
@@ -549,7 +549,16 @@ private CacheStoreHolder initDir(
         DataRegion dataRegion
     ) throws IgniteCheckedException {
         try {
-            boolean dirExisted = checkAndInitCacheWorkDir(cft);
+            boolean dirExisted = false;
+
+            for (File storage : cft.storages()) {
+                if (storage.exists()) {
+                    dirExisted = true;
+                    break;

Review Comment:
   > Also, could be relocated to the checkAndInitCacheWorkDir() ?
   
   OK, returned existing flow.
   
   > Looks, like we're checking only first one, instead of all.
   
   We checking if *any* of cache directories existed.
   `dirExisted` required for two things:
   
   1. perform post-defragmentation logic.
   2. regenerate `index.bin` if it not exists for existing cache group. The 
edge case when `index.bin` removed by the administrator while node was down.
   
   So, current logic seems OK to me.
   Note, we want to allow to the user start with the existing PDS and new 
`CacheConfiguration#storagePath` values.
   
   See - https://issues.apache.org/jira/browse/IGNITE-25411



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@ignite.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to