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


##########
fe/fe-core/src/main/java/org/apache/doris/dictionary/DictionaryManager.java:
##########
@@ -524,6 +523,13 @@ public void dataLoad(ConnectContext ctx, Dictionary 
dictionary, boolean adaptive
                 dictionary.getVersion(), 
ctx.getStatementContext().getDictionaryUsedSrcVersion());
     }
 
+    static String buildDataLoadSql(Dictionary dictionary) {
+        String targetName = Utils.qualifiedNameWithBackquote(

Review Comment:
   [P1] Fully qualify the dictionary target before parsing
   
   This still serializes the internal dictionary target as only 
`db.dictionary`. For a manual `REFRESH DICTIONARY db.dictionary` issued while 
an external catalog is current, `visitInsertTable()` resolves those two parts 
against that current catalog and creates an external sink (or errors for an 
unsupported catalog); `InsertIntoDictionaryCommand` then rejects it before the 
new dictionary-sink replacement can run. Because parsing/conversion also happen 
before `dataLoad()`'s status-restoring `try`, this failure can leave the 
dictionary stuck in `LOADING`. Please quote `dictionary.getFullQualifiers()` 
for the target as well, and cover a refresh path with a non-internal current 
catalog.



-- 
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