Consolidated signals from the Supabase database, the embedder background worker, and the Node.js server. Color-coded so you can tell at a glance whether anything needs attention.
Not urgent — review when convenient. Likely to escalate if ignored.
db.slow_queryNot urgent, but worth looking at the query text — there may be a quick index win. Below 100ms is the goal for high-traffic queries.
{
"query": "WITH pgrst_source AS (SELECT \"pgrst_call\".* FROM (SELECT $1 AS json_data) pgrst_payload, LATERAL (SELECT \"p_case_id\", \"match_limit\" FROM json_to_record(pgrst_payload.json_data) AS _(\"p_case_id\" bigint",
"calls": 5798,
"mean_ms": 566.61,
"pct_of_total": 85.6
}| causes_of_action | 800.0 KB | 3,521 |
| qa_chat_sessions | 80.0 KB | 13 |
| counties | 80.0 KB | 35 |
| case_citations_status | 72.0 KB | 19 |
| attorneys | 696.0 KB | 1,947 |
| qa_email_log | 64.0 KB | 2 |
| source_pdfs | 5.8 MB | 9,391 |
| parties | 5.0 MB | 31,859 |
| Query | Mean | Calls | % Total |
|---|---|---|---|
| WITH pgrst_source AS (SELECT "pgrst_call".* FROM (SELECT $1 AS json_data) pgrst_payload, LATERAL (SELECT "p_case_id", "match_limit" FROM json_to_record(pgrst_payload.json_data) AS _("p_case_id" bigint | 566.61ms | 5,798 | 85.6% |
| WITH pgrst_source AS ( SELECT "public"."motion_types"."motion_type", row_to_json("motion_types_cases_1".*)::jsonb AS "cases" FROM "public"."motion_types" INNER JOIN LATERAL ( SELECT "cases_1"."county_ | 51.09ms | 3,052 | 4.1% |
| WITH pgrst_source AS (INSERT INTO "public"."case_embeddings"("case_id", "chunk_index", "chunk_kind", "chunk_text", "embedding") SELECT "pgrst_body"."case_id", "pgrst_body"."chunk_index", "pgrst_body". | 234.67ms | 351 | 2.1% |
| WITH pgrst_source AS ( SELECT "public"."motion_types"."case_id" FROM "public"."motion_types" WHERE "public"."motion_types"."motion_type" ilike $1 LIMIT $2 OFFSET $3 ) SELECT $4::bigint AS total_re | 20.14ms | 813 | 0.4% |
| WITH pgrst_source AS ( SELECT "public"."cases".* FROM "public"."cases" WHERE "public"."cases"."ruling" ilike $1 AND "public"."cases"."appearance_required" = $2 ORDER BY "public"."cases"."ingested_a | 55.07ms | 181 | 0.3% |
| WITH pgrst_source AS ( SELECT "public"."cases".*, COALESCE( "cases_attorneys_1"."cases_attorneys_1", $14) AS "attorneys", COALESCE( "cases_parties_1"."cases_parties_1", $15) AS "parties", COALESCE( "c | 1.48ms | 6,458 | 0.2% |
| WITH pgrst_source AS ( SELECT "public"."cases".* FROM "public"."cases" WHERE "public"."cases"."ruling" ilike $1 AND "public"."cases"."appearance_required" = $2 ORDER BY "public"."cases"."hearing_da | 54.75ms | 165 | 0.2% |
| WITH pgrst_source AS (SELECT pgrst_call.pgrst_scalar FROM (SELECT "public"."refresh_coverage_materialized_views"() pgrst_scalar) pgrst_call) SELECT $3::bigint AS total_result_set, $4 AS page_total, co | 37.49ms | 223 | 0.2% |
| WITH pgrst_source AS ( SELECT "public"."cases".* FROM "public"."cases" WHERE "public"."cases"."ruling" ilike $1 AND "public"."cases"."appearance_required" = $2 ORDER BY "public"."cases"."ingested_a | 70.37ms | 114 | 0.2% |
| WITH pgrst_source AS ( SELECT "public"."cases".* FROM "public"."cases" WHERE "public"."cases"."division" = $1 AND "public"."cases"."prevailing_party" = $2 AND "public"."cases"."appearance_required" | 33.04ms | 210 | 0.2% |
| WITH pgrst_source AS ( SELECT "public"."cases".* FROM "public"."cases" WHERE "public"."cases"."county_id" = $1 AND "public"."cases"."division" = $2 ORDER BY "public"."cases"."ingested_at" DESC NULL | 36.79ms | 174 | 0.2% |
| WITH pgrst_source AS ( SELECT "public"."cases".* FROM "public"."cases" WHERE "public"."cases"."ruling" ilike $1 AND "public"."cases"."appearance_required" = $2 ORDER BY "public"."cases"."hearing_da | 71.1ms | 84 | 0.2% |
| Table | Seq scans | Idx scans | Seq % |
|---|---|---|---|
| embedding_jobs | 27,110 | 104,880 | 20.5% |
| cases | 18,586 | 80,444,308 | 0% |
| motion_types | 10,446 | 998,750 | 1% |
| source_pdfs | 1,343 | 76,127 | 1.7% |
| case_embeddings | 14 | 370,431 | 0% |
| attorneys | 10 | 76,013 | 0% |
| monetary_amounts | 4 | 72,130 | 0% |
| causes_of_action | 4 | 72,134 | 0% |
| parties | 3 | 72,136 | 0% |
| case_embeddings | 99.88% |
| cases | 99.99% |
| source_pdfs | 98.13% |
| parties | 98.16% |
| embedding_jobs | 99.96% |
| motion_types | 99.88% |
| attorneys | 99.75% |
| monetary_amounts | 97.94% |
| causes_of_action | 97.93% |
| counties | 99.92% |
No queries running > 5 seconds. 🟢
No alerts have fired yet.