Filtru și paginați grila în baza de date, lot traseul de audit PHI

Performancekamo-shared-library
Expediere
20 august 2026 la 23:34 UTC
Autor
Kamo
Comite
8b4f5a2

Încărcare / plumb a luat 23.3 s la 1.427 conduce. 23,3 s din care a fost HIPAA pistă de audit: recordLeadList scrie un rând phi access log pe plumb s-a întors şi fiecare a comis propria tranzacţie. Măsurat la producţie 16,36 ms/rând, 5,708 rânduri în 93 s pe patru încărcături. SELECTUL a fost 29.6 ms și ix leads org id a fost folosit problema. Două cauze independente, ambele fixate aici. Urma de audit a scris o tranzacţie pe rând. phi access log transporta trei indexuri secundare, astfel încât pe Yugabyte o inserție un singur rând este de patru scrie comprimate şi, prin urmare, o tranzacţie distribuită. PhiAccessLogWriter câştiguri scrieAll şi JpaPhiAccessLogWriter pune în aplicare ca o singură salvareAll, care SimpleJpaRepository rulează într-o singură tranzacție: măsurată 0.49 ms/row, ~33x. AsyncPhiAccessLogWriter apoi ia tipurile de eșuare-deschis De pe fir de cerere în întregime. tipul de produs (export, descărcare; să dezvăluie, să configurați) să scrieți sincron cu excepția intactă; astfel încât acestea pot refuza în continuare citit; coada nu scade un record Coada saturata scrie inline in schimb. Granularitatea este neschimbată: fiecare plumbul arătat devine încă propriul rând. Obiectivul final returnat întreaga organizație și lăsați browserul să filtreze volumul auditului era proporţional cu mărimea chiriaşului, nu cu ceea ce a fost dezvăluit. LeadGridQuery + LeadGridSpecificații muta fiecare filtru în interogare și LeadService.getLeadGridPage întoarce o pagină de rândul slab DTO, proiectat în cadrul tranzacției astfel încât obiectivul să fie menținut nici o entitate după aceea. O specificație mai degrabă decât JPQL nul-guards pe scop: ":p IS NULL OR col =:p" oprește planificatorul folosind noul indexuri compozite. Subchirurgii mai degrabă decât să trateze() / tip() pentru ipotecă subclasă, pentru că biblioteca construiește pe Hibernate 6.5 și SecurityService Rulează 6.2.13. Lead câștigă patru indici compoziți, fiecare lider cu ORG ID astfel Yugabyte încă hash-partiții pe chiriaș: atribuire, piață, statut și Data Created. Fără ele, filtrarea server-side ar muta scanarea În loc să-l scoatem. De asemenea: căutarea telefonului mobil inversat nu mai hidratează întregul organizaţie pentru a compara numerele din Java. De asemenea, adaugă găsiBatchAfterUid: o scanare set cheie pentru back-office trece că Trebuie să vizitezi fiecare pistă. FindAll (Pageable) nu poate fi utilizat pentru Yugabyte tranzacție, și un permis care scrie între pagini apoi excursii o citire repornirea stratului de interogare nu poate reîncerca.

Toate modificările

Ca ceea ce vezi de transport maritim?

Fiecare dintre aceste actualizări aterizează automat în spațiul de lucru. Începe gratuit și urmăriți-l crească săptămână după săptămână.

Pornește gratuit pentru totdeaunaVezi prețurile