diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/hudi/source/HudiScanNode.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/hudi/source/HudiScanNode.java index a6156924e27967..8e33dfb24692a1 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/hudi/source/HudiScanNode.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/hudi/source/HudiScanNode.java @@ -383,7 +383,14 @@ public List getSplits(int numBackends) throws UserException { partitionInit = true; } List splits = Collections.synchronizedList(new ArrayList<>()); - getPartitionsSplits(prunedPartitions, splits); + try { + hmsTable.getCatalog().getPreExecutionAuthenticator().execute(() -> { + getPartitionsSplits(prunedPartitions, splits); + return null; + }); + } catch (Exception e) { + throw new UserException(ExceptionUtils.getRootCauseMessage(e), e); + } return splits; }