@@ -147,13 +147,17 @@ def get(self, request: Request, organization: Organization) -> Response:
147147 with handle_query_errors ():
148148 with sentry_sdk .start_span (op = "discover.endpoint" , name = "filter_creation" ):
149149 projects = self .get_projects (request , organization )
150+ # Filter out None values from environments
151+ environments = [e for e in snuba_params .environments if e is not None ]
150152 query_kwargs = build_query_params_from_request (
151- request , organization , projects , snuba_params . environments
153+ request , organization , projects , environments
152154 )
153155 query_kwargs ["limit" ] = 5
154156 try :
155157 # Need to escape quotes in case some "joker" has a transaction with quotes
156- transaction_name = UNESCAPED_QUOTE_RE .sub ('\\ "' , lookup_keys ["transaction" ])
158+ transaction_name = UNESCAPED_QUOTE_RE .sub (
159+ '\\ "' , lookup_keys ["transaction" ] or ""
160+ )
157161 parsed_terms = parse_search_query (f'transaction:"{ transaction_name } "' )
158162 except ParseError :
159163 return Response ({"detail" : "Invalid transaction search" }, status = 400 )
@@ -198,11 +202,13 @@ def get(self, request: Request, organization: Organization) -> Response:
198202
199203 with handle_query_errors ():
200204 if use_eap :
201- result = get_eap_span_samples (request , snuba_params , orderby )
205+ result : EAPResponse | EventsResponse = get_eap_span_samples (
206+ request , snuba_params , orderby
207+ )
202208 dataset = Spans
203209 else :
204210 result = get_span_samples (request , snuba_params , orderby )
205- dataset = spans_indexed
211+ dataset = spans_indexed # type: ignore[assignment]
206212
207213 return Response (
208214 self .handle_results_with_meta (
@@ -282,9 +288,10 @@ def get_span_samples(
282288 span_ids .append (top )
283289
284290 if len (span_ids ) > 0 :
285- query = f"span_id:[{ ',' .join (span_ids )} ] { request .query_params .get ('query' )} "
291+ user_query = request .query_params .get ("query" ) or ""
292+ query = f"span_id:[{ ',' .join (span_ids )} ] { user_query } "
286293 else :
287- query = request .query_params .get ("query" )
294+ query = request .query_params .get ("query" ) or ""
288295
289296 return spans_indexed .query (
290297 selected_columns = selected_columns ,
@@ -320,7 +327,7 @@ def get_eap_span_samples(
320327 "trace" ,
321328 ]
322329
323- query_string = request .query_params .get ("query" )
330+ query_string = request .query_params .get ("query" ) or ""
324331 bounds_query_string = f"{ column } :>{ lower_bound } ms { column } :<{ upper_bound } ms { query_string } "
325332
326333 rpc_res = Spans .run_table_query (
0 commit comments