1010from haystack .document_stores .types import DuplicatePolicy
1111from haystack .utils .auth import Secret , deserialize_secrets_inplace
1212
13- from supabase import Client , create_client
13+ from supabase import create_client
1414
1515logger = logging .getLogger (__name__ )
1616
@@ -67,8 +67,8 @@ def __init__(
6767 self .recreate_table = recreate_table
6868
6969 # Connect to Supabase
70- resolved_key = supabase_key .resolve_value ()
71- self ._client : Client = create_client (supabase_url , resolved_key )
70+ key = self . supabase_key .resolve_value () or ""
71+ self ._client = create_client (self . supabase_url , key )
7272
7373 # Set up the table
7474 self ._setup_table ()
@@ -107,8 +107,8 @@ def count_documents(self) -> int:
107107
108108 :returns: Number of documents.
109109 """
110- result = self ._client .table (self .table_name ).select ("id" , count = "exact " ).execute ()
111- return result .count or 0
110+ result = self ._client .table (self .table_name ).select ("* " ).execute ()
111+ return len ( result .data )
112112
113113 def filter_documents (self , filters : dict [str , Any ] | None = None ) -> list [Document ]: # noqa: ARG002
114114 """
@@ -119,7 +119,7 @@ def filter_documents(self, filters: dict[str, Any] | None = None) -> list[Docume
119119 """
120120 query = self ._client .table (self .table_name ).select ("*" )
121121 result = query .execute ()
122- return [self ._to_haystack_document (row ) for row in result .data ]
122+ return [self ._to_haystack_document (row ) for row in result .data if isinstance ( row , dict ) ]
123123
124124 def write_documents (
125125 self ,
@@ -193,7 +193,7 @@ def _groonga_retrieval(
193193 "groonga_search" , {"query_text" : query , "table" : self .table_name , "top_k" : top_k }
194194 ).execute ()
195195
196- return [self ._to_haystack_document (row ) for row in result .data ]
196+ return [self ._to_haystack_document (row ) for row in result .data if isinstance ( row , dict ) ]
197197
198198 def _to_haystack_document (self , row : dict [str , Any ]) -> Document :
199199 """
0 commit comments