You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geaflow.apache.org by lt...@apache.org on 2026/03/13 08:48:43 UTC
(geaflow) branch master updated: fix: add runtime checks for graph accessors in multiple classes (#774)
This is an automated email from the ASF dual-hosted git repository.
ltlin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/geaflow.git
The following commit(s) were added to refs/heads/master by this push:
new fb294b07a fix: add runtime checks for graph accessors in multiple classes (#774)
fb294b07a is described below
commit fb294b07a05b436998c6e775e5b1e05c53dd6c91
Author: Jason Yao <li...@yeah.net>
AuthorDate: Fri Mar 13 16:48:39 2026 +0800
fix: add runtime checks for graph accessors in multiple classes (#774)
---
.../src/main/java/org/apache/geaflow/ai/GeaFlowMemoryServer.java | 9 ++++++++-
.../src/main/java/org/apache/geaflow/ai/GraphMemoryServer.java | 3 +++
.../java/org/apache/geaflow/ai/service/ServerMemoryCache.java | 6 ++++++
3 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/geaflow-ai/src/main/java/org/apache/geaflow/ai/GeaFlowMemoryServer.java b/geaflow-ai/src/main/java/org/apache/geaflow/ai/GeaFlowMemoryServer.java
index d39123183..bfcf0dd79 100644
--- a/geaflow-ai/src/main/java/org/apache/geaflow/ai/GeaFlowMemoryServer.java
+++ b/geaflow-ai/src/main/java/org/apache/geaflow/ai/GeaFlowMemoryServer.java
@@ -160,8 +160,12 @@ public class GeaFlowMemoryServer {
memoryMutableGraph.addEdge(((GraphEdge) entity).getEdge());
}
}
+ GraphMemoryServer insertServer = CACHE.getServerByName(graphName);
+ if (insertServer == null || insertServer.getGraphAccessors().isEmpty()) {
+ throw new RuntimeException("Server or graph accessor not available for graph: " + graphName);
+ }
CACHE.getConsolidateServer().executeConsolidateTask(
- CACHE.getServerByName(graphName).getGraphAccessors().get(0), memoryMutableGraph);
+ insertServer.getGraphAccessors().get(0), memoryMutableGraph);
return "Success to add entities, num: " + graphEntities.size();
}
@@ -213,6 +217,9 @@ public class GeaFlowMemoryServer {
VectorSearch search = new VectorSearch(null, sessionId);
search.addVector(new KeywordVector(query));
server.search(search);
+ if (server.getGraphAccessors().isEmpty()) {
+ throw new RuntimeException("No graph accessor available for session: " + sessionId);
+ }
Context context = server.verbalize(sessionId,
new SubgraphSemanticPromptFunction(server.getGraphAccessors().get(0)));
return context.toString();
diff --git a/geaflow-ai/src/main/java/org/apache/geaflow/ai/GraphMemoryServer.java b/geaflow-ai/src/main/java/org/apache/geaflow/ai/GraphMemoryServer.java
index b571fe540..57a8d37a2 100644
--- a/geaflow-ai/src/main/java/org/apache/geaflow/ai/GraphMemoryServer.java
+++ b/geaflow-ai/src/main/java/org/apache/geaflow/ai/GraphMemoryServer.java
@@ -81,6 +81,9 @@ public class GraphMemoryServer {
sessionManagement.createSession(sessionId);
}
+ if (graphAccessors.isEmpty()) {
+ throw new RuntimeException("No graph accessor available");
+ }
for (IndexStore indexStore : indexStores) {
if (indexStore instanceof EntityAttributeIndexStore) {
SessionOperator searchOperator = new SessionOperator(graphAccessors.get(0), indexStore);
diff --git a/geaflow-ai/src/main/java/org/apache/geaflow/ai/service/ServerMemoryCache.java b/geaflow-ai/src/main/java/org/apache/geaflow/ai/service/ServerMemoryCache.java
index 8e894d180..fd412bde3 100644
--- a/geaflow-ai/src/main/java/org/apache/geaflow/ai/service/ServerMemoryCache.java
+++ b/geaflow-ai/src/main/java/org/apache/geaflow/ai/service/ServerMemoryCache.java
@@ -38,11 +38,17 @@ public class ServerMemoryCache {
}
public void putServer(GraphMemoryServer server) {
+ if (server.getGraphAccessors().isEmpty()) {
+ throw new RuntimeException("Cannot register server without graph accessor");
+ }
name2Server.put(server.getGraphAccessors().get(0)
.getGraphSchema().getName(), server);
}
public void putSession(GraphMemoryServer server, String sessionId) {
+ if (server.getGraphAccessors().isEmpty()) {
+ throw new RuntimeException("Cannot register session without graph accessor");
+ }
session2GraphName.put(sessionId,
server.getGraphAccessors().get(0).getGraphSchema().getName());
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@geaflow.apache.org
For additional commands, e-mail: commits-help@geaflow.apache.org