From 69bf3b9da4be459134ff946563f89854043d0868 Mon Sep 17 00:00:00 2001 From: Tiewei Fang <43782773+BePPPower@users.noreply.github.com> Date: Sun, 7 Apr 2024 22:23:11 +0800 Subject: [PATCH] [fix](hdfs-writer) Catch error information after `hdfsCloseFile()` (#33195) --- be/src/io/fs/hdfs_file_writer.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/be/src/io/fs/hdfs_file_writer.cpp b/be/src/io/fs/hdfs_file_writer.cpp index 40c3c59dcd..fe68d1363d 100644 --- a/be/src/io/fs/hdfs_file_writer.cpp +++ b/be/src/io/fs/hdfs_file_writer.cpp @@ -64,8 +64,15 @@ Status HdfsFileWriter::close() { LOG(WARNING) << ss.str(); return Status::InternalError(ss.str()); } - hdfsCloseFile(_hdfs_fs->_fs_handle->hdfs_fs, _hdfs_file); + + result = hdfsCloseFile(_hdfs_fs->_fs_handle->hdfs_fs, _hdfs_file); _hdfs_file = nullptr; + if (result != 0) { + std::string err_msg = hdfs_error(); + return Status::InternalError( + "Write hdfs file failed. (BE: {}) namenode:{}, path:{}, err: {}", + BackendOptions::get_localhost(), _hdfs_fs->_fs_name, _path.string(), err_msg); + } return Status::OK(); }