fix: graphiti search only connect with default db 'neo4j' and custom database config invalid

This commit is contained in:
biturd 2025-09-08 03:55:01 +08:00
parent 1f5a1b890c
commit 68fc59e5be

View file

@ -38,17 +38,20 @@ class Neo4jDriver(GraphDriver):
self._database = database self._database = database
async def execute_query(self, cypher_query_: LiteralString, **kwargs: Any) -> EagerResult: async def execute_query(self, cypher_query_: LiteralString, **kwargs: Any) -> EagerResult:
# Check if database_ is provided in kwargs. # Extract database from kwargs or use default
# If not populated, set the value to retain backwards compatibility database = kwargs.pop('database_', self._database)
params = kwargs.pop('params', None) params = kwargs.pop('params', None)
if params is None: if params is None:
params = {} params = {}
params.setdefault('database_', self._database)
try: try:
result = await self.client.execute_query(cypher_query_, parameters_=params, **kwargs) result = await self.client.execute_query(
cypher_query_, parameters_=params, database_=database, **kwargs
)
except Exception as e: except Exception as e:
logger.error(f'Error executing Neo4j query: {e}\n{cypher_query_}\n{params}') logger.error(
f'Error executing Neo4j query: {e}\n{cypher_query_}\nDatabase: {database}\nParams: {params}'
)
raise raise
return result return result