KamoCRM

Leggi i conti di commit del changelog pubblico da un registro, non COUNT(*)

PerformanceSecurityService
Shipped
23 settembre 2026 alle ore 13:48 UTC
Author
Kamo
Commit
41e4a00

pg stat statements: `SELECT COUNT(c) DA CommitLog c WHERE c.project IN (:~33 progetti pubblici) [AND c.commitTypeId = :t]` corsa ~ 140K volte al giorno a 100-200 ms ciascuno (misurata sulla produzione prima di questa modifica) — ogni visualizzazione della pagina di elenco (pagina(), indirizzi()/sitomap) e ogni /changelog/public/stats call, su endpoint che non prendono autenticazione. commit logs ha ~19K file su 38 progetti; il conteggio è economico, ma ha funzionato su ogni richiesta. create commit log ledger.sql aggiunge la stessa forma totale+giornale create lead intake ledger.sql usi: commit log counts (un totale per (progetto, tipo commit)) più un append-only commit log count deltas diario che un trigger di riga su commit logs scrive nello stesso transazione come inserto, un aggiornamento del progetto/di tipo, o un'eliminazione. Applicato a mano come proprietario e backfilled; DaemonService ora piega e lo racconta (separare commit, perf(changelog): piegare e raccontare il registro di commit del changelog pubblico, distribuito prima). Non e' vero. E ora leggi. totale + rivista in una dichiarazione nativa invece di un JPQL COUNT(c) — nuovi metodi PublicChangelogService (la sua intestazione spiega già perché un filtro / incolla la pagina pubblica ha bisogno vive qui e non in kamo-shared-library) piuttosto che CommitLogRepository, quindi questo non aveva bisogno di Comunicato condiviso-librario. oggiPaese() è intatto: è un conteggio limitato di tempo-finestra sostenuto da ix commit logs date uid, non il modello ~140K-call. Verificato contro la produzione prima di commutazione: i totali del libro principale corrispondono esattamente a COUNT(*) tutti i 264 (progetto, tipo commit) coppie (0 mismatches) dopo il backfill, e i tre commit logs attiva il fuoco correttamente (provato all'interno di una transazione rolled-back come kamo app, l'app credenziali).

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing