대시보드

"이 풀 리퀘스트를 병합하면 프로덕션이 저하될 수 있습니다." Polylane은 모든 풀 리퀘스트를 실제 프로덕션에 비추어 리뷰합니다.

대기자 명단 등록
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

린터는 프로덕션을 볼 수 없습니다. 이 리뷰어는 볼 수 있습니다.

  • 실제 운영 중인 것에 비추어 리뷰

    diff를 배포 대상 서비스에 비추어 검사합니다. 서비스의 설정, 트래픽, 최근 인시던트까지.

  • 기본은 통과

    실패 판정은 diff의 어느 줄이 프로덕션을 정확히 어떻게 망가뜨리는지 증명해야 합니다. "그럴 수도 있다"는 인정되지 않습니다.

  • 코멘트 하나

    푸시마다 같은 자리에서 갱신되며, 쌓이지 않습니다. 문서와 테스트 변경은 바로 통과합니다.

  • 원하면 강제력도

    차단 검사를 켜면 실패 판정이 이후 푸시로 해소될 때까지 병합을 막습니다.

가장 저렴한 인시던트는 병합되지 않은 인시던트입니다. Polylane이 리뷰에서 잡아냅니다.