github-actions[bot] commented on code in PR #68196:
URL: https://github.com/apache/doris/pull/68196#discussion_r4079058933


##########
fe/fe-core/src/main/java/org/apache/doris/datasource/ExternalMetaCacheMgr.java:
##########
@@ -465,10 +477,12 @@ public void rollbackCatalogProperties(ExternalCatalog 
catalog, Map<String, Strin
         lifecycleLock.lock();
         try {
             catalog.rollBackCatalogProps(oldProperties);
+            catalog.resetToUninitialized(false);

Review Comment:
   [P1] Retire candidate-loaded engine entries even if this reset throws. An 
already-initialized group remains usable while a legacy validator temporarily 
exposes the candidate properties, so a concurrent entry load can initialize 
against that target. `resetToUninitialized` then invokes throwable cleanup (for 
example JDBC `closeClient`, Trino `connector.shutdown`, or Lance `close`), but 
routed `invalidateCatalog` runs only afterward. If cleanup fails, the old 
properties are restored while the group can retain rejected-target entries, and 
`prepareCatalogByEngine` keeps taking its initialized fast path. Run group 
retirement in failure-safe cleanup and add a throwing-cleanup rollback test.



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to