github timescale/pg_textsearch v1.5.0

3 hours ago

pg_textsearch 1.5.0

pg_textsearch 1.5.0 expands query capabilities, reduces maintenance stalls,
improves build and query performance, and hardens storage and concurrency.

New features

  • Added Boolean filtering with PostgreSQL tsquery, including AND, OR, NOT,
    pure-negative, prefix, weight, and phrase queries. Phrase and weight
    conditions use conservative heap rechecks when needed.
  • Added beta support for managed per-index background compaction through
    pg_durable.
  • Added support for PostgreSQL 19 beta.
  • Added Windows support, including MSVC builds and CI coverage.
  • Added controls for restricting BM25 indexes on row-level-security-protected
    tables.

Performance improvements

  • Made segment compaction, VACUUM segment maintenance, and memtable spills
    substantially less disruptive to concurrent readers and writers. Segment
    merges that previously blocked writers for seconds or minutes now hold the
    exclusive index lock only for publication.
  • Significant speedups to block decompression
  • Reduced parallel index-build memory use by streaming corpus-sized metadata
    and moving worker segment directories out of shared memory.
  • Enabled PostgreSQL's bulk-read buffer strategy for parallel builds, avoiding
    unnecessary shared-buffer population during large one-pass builds.
  • Improved compaction of undersized and heavily deleted segments and bounded
    VACUUM CTID reads so memory use no longer grows with segment size.

Bug fixes

  • Fixed unstable BM25 scores and silent result truncation in deep scans.
  • Fixed correctness issues when combining Boolean filtering with BM25 ranking
    and when query settings change during prepared-statement lifetimes.
  • Fixed REINDEX cache-accounting leaks and preserved shared state when a
    DROP INDEX transaction rolls back.
  • Hardened memtable and tombstone-chain validation to reject corruption
    instead of hanging or reading invalid pages.
  • Fixed segment-build overflow edge cases and strengthened concurrent writer,
    maintenance, and published-index snapshot handling.
  • Stabilized regression, concurrency, recovery, and fault-injection tests
    across supported PostgreSQL versions and non-standard environments.

New Contributors

Full Changelog: v1.4.0...v1.5.0

Don't miss a new pg_textsearch release

NewReleases is sending notifications on new releases.