apache / apache/hudi

[Support] An error occurred while calling o1748.load.\n: java.io.FileNotFoundException

Open
#10,503 18 comments 0 reactions 0 assignees View on GitHub
engine:spark priority:high type:bug
Dominant language
Java
Stars
6.2k
Forks
2.5k
Avg merge
2d 8h
Merged PRs (30d)
111

Description

@ad1happy2go

I have setup hudi in cluster mode:
App server (driver)
DB server (master, worker, executors) - setup using spark-3.4.2-bin-hadoop3
using local filesystem /var/

write works fine. read on that file is also ok for some time; but after some time (12 hours or so) read fails with error: 'An error occurred while calling o1748.load.\n: java.io.FileNotFoundException'

spark config:

```
spark = SparkSession.builder \
.appName("dataHudi") \
.master('spark://DBServer:7077') \
.config('spark.driver.bindAddress', '0.0.0.0') \
.config('spark.driver.host', 'App server') \
.config('spark.driver.port', '37077') \
.config('spark.driver.blockManager.port', '37078') \
.config('spark.executor.host', 'DBServer') \
.config("spark.executor.port", "37079") \
.config('spark.fileserver.host', 'DBServer') \
.config("spark.fileserver.port", "37080") \
.config('spark.replClassServer.host', 'DBServer') \
.config("spark.replClassServer.port", "37081") \
.config('spark.broadcast.host', 'DBServer') \
.config("spark.broadcast.port", "37082") \
.config('spark.driver.memory', '7g') \
.config('spark.executor.memory', '4g') \
.config('spark.jars.packages', 'org.apache.hudi:hudi-spark3.4-bundle_2.12:0.14.0') \
.config('spark.serializer', 'org.apache.spark.serializer.KryoSerializer') \
.config('spark.sql.catalog.spark_catalog', 'org.apache.spark.sql.hudi.catalog.HoodieCatalog') \
.config('spark.sql.extensions', 'org.apache.spark.sql.hudi.HoodieSparkSessionExtension') \
.getOrCreate()
```

read command (pyspark)

```
hudi_df_org = spark.read \
.format("hudi") \
.option("hoodie.datasource.read.table.name", unique_filename) \
.option("hoodie.metadata.enable", "false" ) \
.load(basePath_for_visualiser_table)
```

write command (pyspark)

```
spark_df.write \
.format("org.apache.hudi") \
.options(**hudi_options) \
.mode("append") \
.save(basePath_ID +"/"+f"{unique_filename}")
```
hudi options
```
hudi_options = { \
'hoodie.table.name': self.table_name, \
'hoodie.datasource.write.recordkey.field': 'row_number', \
'hoodie.datasource.write.precombine.field': 'timestamp', \
"hoodie.metadata.enable": "false", \
'hoodie.datasource.write.operation': f'{self.write_operation}',\
'hoodie.datasource.write.schema.allow.auto.evolution.column.drop' : 'true',\
'hoodie.write.markers.type': 'direct', \
'hoodie.embed.timeline.server': 'false', \
}
```
not able to figure out why it works for some time and then stops working. Kindly advise

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the SparkSession cluster configuration and the Hudi read/write commands shown in the report; verify that the referenced local filesystem path remains available to every relevant cluster process after the delay. Reproduce the delayed read failure and capture the complete FileNotFoundException path and surrounding logs before determining whether the issue is in Hudi or the local-filesystem and cluster setup.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, spark
Domain
data-engineering, distributed-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.