From 3eb721083a26a7f3f2be9182a8fc6a6ec39fa01c Mon Sep 17 00:00:00 2001 From: lexluo09 <39718951+lexluo09@users.noreply.github.com> Date: Fri, 19 Apr 2024 16:00:57 +0800 Subject: [PATCH] (improvement)(Headless) Fix the null pointer exception in metadata put. (#922) --- .../common/util/embedding/InMemoryS2EmbeddingStore.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java b/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java index 6acfe7805..e9f3b7f8b 100644 --- a/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java +++ b/common/src/main/java/com/tencent/supersonic/common/util/embedding/InMemoryS2EmbeddingStore.java @@ -137,7 +137,10 @@ public class InMemoryS2EmbeddingStore implements S2EmbeddingStore { retrieval.setId(embeddingMatch.embeddingId()); retrieval.setQuery(embeddingMatch.embedded().getQuery()); Map metadata = new HashMap<>(); - metadata.putAll(embeddingMatch.embedded().getMetadata()); + if (Objects.nonNull(embeddingMatch.embedded()) + && MapUtils.isNotEmpty(embeddingMatch.embedded().getMetadata())) { + metadata.putAll(embeddingMatch.embedded().getMetadata()); + } if (filterRetrieval(filterCondition, metadata)) { continue; }