MCPcopy Create free account
hub / github.com/GraphLite-AI/GraphLite / process_query

Method process_query

graphlite/src/coordinator/query_coordinator.rs:247–271  ·  view source on GitHub ↗

Execute a query with session ID This is the main entry point for query execution. # Arguments `query_text` - The GQL query string to execute `session_id` - Session ID for the query # Returns `Ok(QueryResult)` - Query result on success `Err(String)` - Error message on failure

(&self, query_text: &str, session_id: &str)

Source from the content-addressed store, hash-verified

245 /// * `Ok(QueryResult)` - Query result on success
246 /// * `Err(String)` - Error message on failure
247 pub fn process_query(&self, query_text: &str, session_id: &str) -> Result<QueryResult, String> {
248 // Parse query
249 let document = parse_query(query_text).map_err(|e| format!("Parse error: {:?}", e))?;
250
251 // Get session
252 let session = self.session_provider.get_session(session_id);
253
254 // Create execution request
255 let request = ExecutionRequest::new(document.statement)
256 .with_session(session)
257 .with_query_text(Some(query_text.to_string()));
258
259 // Execute query
260 let result = self
261 .executor
262 .execute_query(request)
263 .map_err(|e| format!("Execution error: {:?}", e))?;
264
265 // Process any session results (SET GRAPH, SET SCHEMA, etc.)
266 if let Some(ref session_result) = result.session_result {
267 self.handle_session_result(session_result, session_id)?;
268 }
269
270 Ok(result)
271 }
272
273 /// Handle session-modifying results (SET GRAPH, SET SCHEMA)
274 fn handle_session_result(

Callers 15

handle_installFunction · 0.80
handle_gqlFunction · 0.80
handle_queryFunction · 0.80
graphlite_queryFunction · 0.80
mainFunction · 0.80
mainFunction · 0.80
newMethod · 0.80

Calls 6

parse_queryFunction · 0.85
with_query_textMethod · 0.80
with_sessionMethod · 0.80
execute_queryMethod · 0.80
handle_session_resultMethod · 0.80
get_sessionMethod · 0.45

Tested by 7

newMethod · 0.64
queryMethod · 0.64