Api v1.15.0 (#1646)

* fix(chalice): fixed search sessions by specific issue without filters
This commit is contained in:
Kraiem Taha Yassine 2023-11-10 15:44:40 +01:00 committed by GitHub
parent aeca1a59d3
commit 3f2a6e2ab5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 10 deletions

View file

@ -1054,14 +1054,24 @@ def search_query_parts(data: schemas.SessionsSearchPayloadSchema, error_status,
value_key=f_k_v))
issues_conditions[-1] = f"({issues_conditions[-1]} AND p_issues.context_string=%({f_k_s})s)"
extra_join = f"""
INNER JOIN LATERAL(SELECT TRUE FROM events_common.issues INNER JOIN public.issues AS p_issues USING (issue_id)
WHERE issues.session_id=f.session_id
AND timestamp >= f.first_event_ts
AND timestamp <= f.last_event_ts
AND {" OR ".join(issues_conditions)}
) AS issues ON(TRUE)
"""
if len(events_query_part) > 0:
extra_join = f"""
INNER JOIN LATERAL(SELECT TRUE FROM events_common.issues INNER JOIN public.issues AS p_issues USING (issue_id)
WHERE issues.session_id=f.session_id
AND timestamp >= f.first_event_ts
AND timestamp <= f.last_event_ts
AND {" OR ".join(issues_conditions)}
) AS issues ON(TRUE)
"""
else:
extra_join = f"""
INNER JOIN LATERAL(SELECT TRUE FROM events_common.issues INNER JOIN public.issues AS p_issues USING (issue_id)
WHERE issues.session_id=s.session_id
AND timestamp >= %(startDate)s
AND timestamp <= %(endDate)s
AND {" OR ".join(issues_conditions)}
) AS issues ON(TRUE)
"""
# full_args["issue_contextString"] = issue["contextString"]
# full_args["issue_type"] = issue["type"]
if extra_event:

View file

@ -1362,8 +1362,8 @@ def search_query_parts_ch(data: schemas.SessionsSearchPayloadSchema, error_statu
FROM {MAIN_SESSIONS_TABLE} AS s {extra_event}
WHERE {" AND ".join(extra_constraints)}) AS s ON(s.session_id=f.session_id)"""
else:
extra_join += f"""(SELECT *
FROM {MAIN_SESSIONS_TABLE} AS s {extra_event}
extra_join = f"""(SELECT *
FROM {MAIN_SESSIONS_TABLE} AS s {extra_join} {extra_event}
WHERE {" AND ".join(extra_constraints)}
ORDER BY _timestamp DESC
LIMIT 1 BY session_id) AS s"""