prestodb/presto · error · PrestoException
HUDI_FILESYSTEM_ERROR
HUDI_FILESYSTEM_ERROR
Error message
Could not open file system for ${table} What it means
HudiSplitManager.getFileSystem resolves an ExtendedFileSystem for the table's base path via HdfsEnvironment; any failure opening it (missing scheme support, bad credentials, unavailable naming authority) is wrapped in this PrestoException with the table path, aborting split generation for that table.
Source
Thrown at presto-hudi/src/main/java/com/facebook/presto/hudi/HudiSplitManager.java:155
asyncQueueExecutor,
splitLoaderExecutorService,
splitGeneratorExecutorService,
getMaxOutstandingSplits(session));
}
private ExtendedFileSystem getFileSystem(ConnectorSession session, HudiTableHandle table)
{
HdfsContext hdfsContext = new HdfsContext(
session,
table.getSchemaName(),
table.getTableName(),
table.getPath(),
false);
try {
return hdfsEnvironment.getFileSystem(hdfsContext, new Path(table.getPath()));
}
catch (IOException e) {
throw new PrestoException(HUDI_FILESYSTEM_ERROR, "Could not open file system for " + table, e);
}
}
public static HudiPartition getHudiPartition(ExtendedHiveMetastore metastore, MetastoreContext context, HudiTableLayoutHandle tableLayout, String partitionName)
{
String databaseName = tableLayout.getTable().getSchemaName();
String tableName = tableLayout.getTable().getTableName();
List<HudiColumnHandle> partitionColumns = tableLayout.getPartitionColumns();
if (partitionColumns.isEmpty()) {
// non-partitioned tableLayout
Table table = metastore.getTable(context, databaseName, tableName)
.orElseThrow(() -> new PrestoException(HUDI_INVALID_METADATA, format("Table %s.%s expected but not found", databaseName, tableName)));
return new HudiPartition(partitionName, ImmutableList.of(), ImmutableMap.of(), table.getStorage(), tableLayout.getDataColumns());
}
else {
// partitioned tableLayout
List<String> partitionValues = extractPartitionValues(partitionName);View on GitHub (pinned to 55bb57d202)
Solutions
- Verify the table path URI and that a FileSystem implementation exists for its scheme
- Check HDFS/S3 credentials and HdfsEnvironment configuration for the query user
- Confirm the Hudi table location is reachable from all worker nodes
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at presto-hudi/src/main/java/com/facebook/presto/hudi/HudiSplitManager.java:155 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of prestodb/presto@55bb57d202 (2026-09-04).
Data as JSON: /api/errors/68dc20d5571c03e3.
Report an issue: GitHub.