in seatunnel-datasource/seatunnel-datasource-plugins/datasource-hive/src/main/java/org/apache/seatunnel/datasource/plugin/hive/client/HiveClient.java [148:173]
public List<String> getAllTables(String dbName, String filterName, Integer size) {
try {
List<String> tables = hiveMetaStoreClient.getTables(dbName, "*");
List<String> filteredTables = new ArrayList<>();
// hive api whether to support filtering directly
if (StringUtils.isNotEmpty(filterName)) {
for (String tableName : tables) {
if (tableName.contains(filterName)) {
filteredTables.add(tableName);
}
}
} else {
filteredTables.addAll(tables);
}
// filter Iceberg table
this.filteredIcebergTable(filteredTables, dbName);
if (size != null && size > 0) {
return filteredTables.subList(0, Math.min(size, filteredTables.size()));
}
return filteredTables;
} catch (Exception e) {
log.error(ExceptionUtils.getMessage(e));
throw new DataSourcePluginException("get table names failed", e);
}
}