KamoCRM

Stop eager-fetching LeadVendor제품의 org chain for a single-id read

Performancekamo-shared-library
관련 상품
2026년 9월 23일 오후 2:39 UTC
이름 *
Kamo
뚱 베어
3677d12

findById()에서 LeadVendorProduct는 eager-fetches를 자체적으로 끌어냅니다. 자신의 org와 그 시장 (eager-fetches ITS org 다시) - 및 조직은 @Inheritance (JOINED), 그래서 그들 중 하나도 외부 조인 ORG MTG 해결 polymorphic subtype. 생산 pg stat statements에서 측정하는: 8 방법 결합, ~780K 통화에 10-21ms (~3 시간 누적적인 DB 시간), 거의 완전히 단 하나 ID 보기 ('where id=$1'), 아닙니다 일괄 처리 N+1 - 각 호출기는 이미 하나의 ID를 가지고 있으며 대부분의 공급 업체 + 자체 사기 필드에 읽습니다. 두 개의 야윈 LeadVendorProductRepository 메소드를 추가하고 모든 findById() 호출기를 전환합니다. kamo-shared-library + securityservice to the one that match what 그것 실제로 읽기: - findIsEmptyCreditFfaById : 사기 JPQL 투영, 전혀 가입하지 않습니다. - findByIdWithVendor: @EntityGraph는 `vendor`(일반, 비-JOINED 엔티티티)에 제한됨 - 공급 업체.org 그리고 납품업자.market는 uninitialized 프록시로 돌아옵니다. id는 추가하지 않고도 여전히 읽을 수 있습니다. org-ownership 체크가 필요한 모든 쿼리. @EntityGraph가 벤더.org 또는 공급 업체.market.organization에 의존하지 않습니다. 둘 다 조직, 그리고 더 많은 협력관계를 발굴하는 단체 그래프 /leads가 Hibernate 6.2.13에 생산에서 내려온 정확한 모양입니다. 루트 테이블에 대한 항목 - LeadAssigneeRef 참조). 정품 시장이 필요한 두 명의 통화 회사연혁 securityservice에 있는 ***********) 짐 LeadMarket는 두번째로, 평범한 쿼리 대신 — 같은 분할이 codebase는 이미 TeamMember를 사용합니다. JSON 모양은 변경되지 않습니다. 열만 변경된 데이터베이스를 읽을 수 있습니다.

모든 변경 사항

배송을 보는 것과 같이?

모든 것이 자신의 작업 공간에서 도착합니다. 무료 플랜을 시작하고 이 페이지를 다시 한 달에 읽으십시오.

무료 영원히 시작가격 비교