Dashbord

«Å slå sammen denne pull requesten kan svekke produksjon.» Polylane gjennomgår hver pull request mot levende produksjon.

Bli med på ventelisten
github.com/coreplane/orders-api/pull/482

Add trigram index for order search #482

Open rvidal wants to merge 1 commit into main from order-search-trgm
Conversation 1 Commits 1 Checks 2 Files changed 1
polylane bot commented 2 minutes ago ···
Caution

Merging this pull request may degrade production (high impact).

Merging this blocks every write to orders while the index builds. migrations/0114_order_search_trgm.sql:3 adds CREATE INDEX … USING gin (search_text gin_trgm_ops) without CONCURRENTLY, and a plain CREATE INDEX takes a full write lock on orders for the whole build. Checkout sustains ~38 writes/s on that table; each one queues behind the lock until the build finishes.

To make this safe: build the index with CREATE INDEX CONCURRENTLY outside the transactional migration.

orders-db · writes per second · last 48h projected lock window
02040
-48h -24h now
every one of these writes blocks while the index builds

Polylane analysed de91b47 for production impact.

Some checks were not successful 1 failing and 1 successful check
ci / test Successful in 2m 4s Details
Polylane production impact Non-concurrent index build locks writes on orders Details
Merging is blocked

Linteren din kan ikke se produksjon. Denne gjennomgangen kan.

  • Gjennomgått mot det som er i drift

    Diffen sjekkes mot tjenestene den deployes til: konfigurasjonen deres, trafikken deres, de siste hendelsene deres.

  • Godkjent som standard

    En avvisning må bevise nøyaktig hvordan en linje i diffen bryter produksjon. «Kanskje» teller ikke.

  • Én kommentar

    Oppdatert på stedet ved hver push, aldri en haug. Dokumentasjons- og testendringer går rett gjennom.

  • Tenner, hvis du vil

    Slå på den blokkerende sjekken, og en avvisning holder sammenslåingen tilbake til en senere push løser den.

Den billigste hendelsen er den som aldri slås sammen. Polylane fanger den i gjennomgangen.