You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by fe...@apache.org on 2021/02/04 02:02:40 UTC
[hadoop] branch branch-3.1 updated: HDFS-15779. EC: fix NPE caused
by StripedWriter.clearBuffers during reconstruct block. Contributed by
Hongbing Wang
This is an automated email from the ASF dual-hosted git repository.
ferhui pushed a commit to branch branch-3.1
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.1 by this push:
new 6e5cc45 HDFS-15779. EC: fix NPE caused by StripedWriter.clearBuffers during reconstruct block. Contributed by Hongbing Wang
6e5cc45 is described below
commit 6e5cc45a16eb01350713de4e318b97b1d5a7b1f8
Author: Hui Fei <fe...@apache.org>
AuthorDate: Thu Feb 4 09:19:51 2021 +0800
HDFS-15779. EC: fix NPE caused by StripedWriter.clearBuffers during reconstruct block. Contributed by Hongbing Wang
(cherry picked from commit 15a1f7adfc02af81e89e9fb96691f6cdf19ceff5)
---
.../hadoop/hdfs/server/datanode/erasurecode/StripedWriter.java | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/erasurecode/StripedWriter.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/erasurecode/StripedWriter.java
index 762506c..c16b14a 100644
--- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/erasurecode/StripedWriter.java
+++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/erasurecode/StripedWriter.java
@@ -296,7 +296,8 @@ class StripedWriter {
*/
void clearBuffers() {
for (StripedBlockWriter writer : writers) {
- ByteBuffer targetBuffer = writer.getTargetBuffer();
+ ByteBuffer targetBuffer =
+ writer != null ? writer.getTargetBuffer() : null;
if (targetBuffer != null) {
targetBuffer.clear();
}
@@ -305,7 +306,8 @@ class StripedWriter {
void close() {
for (StripedBlockWriter writer : writers) {
- ByteBuffer targetBuffer = writer.getTargetBuffer();
+ ByteBuffer targetBuffer =
+ writer != null ? writer.getTargetBuffer() : null;
if (targetBuffer != null) {
reconstructor.freeBuffer(targetBuffer);
writer.freeTargetBuffer();
@@ -313,7 +315,9 @@ class StripedWriter {
}
for (int i = 0; i < targets.length; i++) {
- writers[i].close();
+ if (writers[i] != null) {
+ writers[i].close();
+ }
}
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-commits-help@hadoop.apache.org