- Verschifft
- 20. August 2026 um 23:34 UTC
- Autor
- Kamo
- Ausschuss
- 8b4f5a2
Die Beladung/Leads dauerten 23,3 s bei 1.427 Leads. 23.3 davon war die HIPAA Audit Trail: recordLeadList schreibt eine phi_access_log-Reihe pro Lead kehrt zurück, und jeder hat seine eigene Transaktion begangen. Gemessen an Produktion 16,36 ms/Reihe, 5.708 Reihen in 93 s über vier Lasten. Die SELECT war 29,6 ms und ix_leads_org_id wurde verwendet - der Lesepfad war nie das Problem. Zwei unabhängige Ursachen, die beide hier festgelegt sind. Der Audit-Trail schrieb eine Transaktion pro Zeile. phi_access_log trägt drei sekundäre Indizes, so auf Yugabyte eine Single-Reihe-Einlage ist vier schreibt über Tabletten und damit eine verteilte Transaktion. PhiAccessLogWriter Gewinne schreibenAll und JpaPhiAccessLogWriter implementiert es als one saveAll, die SimpleJpaRepository in einer einzigen Transaktion läuft: gemessen 0.49 ms/Reihe, 33x. AsyncPhiAccessLogWriter nimmt dann die Fail-Open-Arten aus dem Anfrage-Thread ganz. Fail-closede Arten (Export, Download, offenlegen, konfigurieren) immer noch synchron schreiben, mit der Ausnahme intakt, damit sie immer noch die Lektüre verweigern können; die Warteschlange fällt nie einen Datensatz gesättigte Warteschlange schreibt stattdessen inline. Granularität ist unverändert: Blei gezeigt bekommt immer noch eine eigene Reihe. Der Endpunkt gab die gesamte Organisation zurück und ließ den Browser filtern es, so dass das Prüfungsvolumen proportional zur Mietergröße war, anstatt was bekannt gegeben wurde. LeadGridQuery + LeadGridSpecifications bewegen sich für alle Filter in die Abfrage und LeadService.getLeadGridPage gibt eine Seite von die schlanke Reihe DTO, innerhalb der Transaktion projiziert, so dass der Endpunkt hält keine Entität danach. Eine Spezifikation statt JPQL null-Wächter auf Zweck: ':p IS NULL OR col = :p' stoppt den Planer mit dem neuen Composite-Indizes. Nachfragen statt behandeln()/typ() für die Hypothek Unterklasse, weil die Bibliothek auf Hibernate 6.5 und SecurityService baut läuft 6.2.13. Lead gewinnt vier Composite-Indizes, jeder führt mit ORG_ID so Yugabyte noch Hasch-Partitionen auf den Mieter: Zuordnung, Markt, Status und dateCreated. Ohne sie würde die Server-seitige Filterung den Scan verlagern anstatt es zu entfernen. Auch: das Softphone-Reverse-Phone-Suche nicht mehr hydratisiert die ganze Organisation zum Vergleich von Zahlen in Java. Auch fügt findBatchAftAftUid: ein Keyset-Scan für Back-Office-Pässe, die muss jede Leitung besuchen. findAll(Pageable) kann nicht dafür verwendet werden, dass auf Yugabyte - Spring Data koppelt seinen Inhalt SELECT mit einem COUNT in einem Transaktion, und ein Pass, der zwischen den Seiten schreibt dann Reisen ein lesen Die Abfrageschicht kann nicht erneut starten.