Skip to content

Support: message-body full-text search (tsvector + GIN) #40

Description

@Andreas-Froyland

Deferred from Stage 05a on 2026-08-30. See stage-05-decisions.md decision 8.

Stage 05a ships scoped search over displayId, subject, and contact name/email only — all on conversation and contact, small tables with ordinary indexes.

Standing rule from the plan: never ILIKE conversationMessage. It is the fastest-growing table in the system. When body search is needed, build it properly:

  • tsvector column on conversationMessage, GIN index, maintained by trigger
  • EXPLAIN must confirm no sequential scan

Volume-triggered. Do not creep into this via ILIKE.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions