@@ -54,6 +54,17 @@ def query(self, query: str, index: str, top_k: int = 0) -> list:
5454 logger .error (f"Failed to search from Redis: index={ index } error={ e } " )
5555 raise e
5656
57+ def delete (self , index : str ) -> bool :
58+ logger .debug (f"Deleting key from Redis database: index={ index } " )
59+ try :
60+ self .client .delete (key = index )
61+ return True
62+ except Exception as e :
63+ logger .error (
64+ f"Failed to delete key from Redis database: index={ index } error={ e } "
65+ )
66+ return False
67+
5768 def delete_doc (self , index : str , id : str ) -> bool :
5869 logger .debug (f"Deleting document from Redis database: index={ index } id={ id } " )
5970 try :
@@ -135,6 +146,17 @@ def query(self, query: str, index: str, top_k: int) -> list[str]:
135146
136147 return [item ["data" ] for item in results ]
137148
149+ def delete (self , index : str ) -> bool :
150+ logger .debug (f"Deleting table from SQL database: table_name={ index } " )
151+ try :
152+ self .client .delete (table = index )
153+ return True
154+ except Exception as e :
155+ logger .error (
156+ f"Failed to delete table from SQL database: table_name={ index } error={ e } "
157+ )
158+ return False
159+
138160 def delete_doc (self , index : str , id : str ) -> bool :
139161 logger .debug (f"Deleting document from SQL database: table_name={ index } id={ id } " )
140162 try :
@@ -293,7 +315,7 @@ def query(self, query: str, index: str, top_k: int) -> list[str]:
293315 def delete (self , index : str ) -> bool :
294316 self ._validate_index (index )
295317 logger .debug (f"Deleting collection from Viking database: index={ index } " )
296- return self .client .delete (collection_name = index )
318+ return self .client .delete (name = index )
297319
298320 def delete_doc (self , index : str , id : str ) -> bool :
299321 self ._validate_index (index )
@@ -341,6 +363,11 @@ def query(self, query: str, index: str, top_k: int, **kwargs):
341363 result = self .client .query (query , collection_name = index , top_k = top_k , ** kwargs )
342364 return result
343365
366+ def delete (self , index : str ) -> bool :
367+ self ._validate_index (index )
368+ logger .debug (f"Deleting collection from Viking database memory: index={ index } " )
369+ raise NotImplementedError ("VikingMemoryDatabase does not support delete" )
370+
344371 def delete_docs (self , index : str , ids : list [int ]):
345372 raise NotImplementedError ("VikingMemoryDatabase does not support delete_docs" )
346373
@@ -360,8 +387,8 @@ def add(self, data: list[str], **kwargs):
360387 def query (self , query : str , ** kwargs ):
361388 return self .client .query (query , ** kwargs )
362389
363- def delete (self , index : str ):
364- self .client .delete ()
390+ def delete (self , index : str ) -> bool :
391+ return self .client .delete ()
365392
366393 def delete_doc (self , index : str , id : str ) -> bool :
367394 return self .client .delete_doc (id )
0 commit comments