This is an automated email from the ASF dual-hosted git repository.
hui pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/master by this push:
new 7fe40937a2 [IOTDB-3340] Fix NPE caused by deserialization of
FunctionExpression (#6128)
7fe40937a2 is described below
commit 7fe40937a28c8ed9dda9eaaa78f3e9ce0461efad
Author: liuminghui233 <[email protected]>
AuthorDate: Wed Jun 1 20:13:46 2022 +0800
[IOTDB-3340] Fix NPE caused by deserialization of FunctionExpression (#6128)
---
.../iotdb/db/mpp/plan/expression/multi/FunctionExpression.java | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
index 61a2b45dbf..1befeda0b9 100644
---
a/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
+++
b/server/src/main/java/org/apache/iotdb/db/mpp/plan/expression/multi/FunctionExpression.java
@@ -116,7 +116,13 @@ public class FunctionExpression extends Expression {
public FunctionExpression(ByteBuffer byteBuffer) {
functionName = ReadWriteIOUtils.readString(byteBuffer);
- functionAttributes = ReadWriteIOUtils.readMap(byteBuffer);
+
+ Map<String, String> deserializedFunctionAttributes =
ReadWriteIOUtils.readMap(byteBuffer);
+ functionAttributes =
+ deserializedFunctionAttributes != null
+ ? deserializedFunctionAttributes
+ : new LinkedHashMap<>();
+
int expressionSize = ReadWriteIOUtils.readInt(byteBuffer);
List<Expression> expressions = new ArrayList<>();
for (int i = 0; i < expressionSize; i++) {