Jurnalul de sincronizare, și o cursă terminal care este într-adevăr înghețat

Featurekamo-shared-library
Expediere
27 august 2026 la 19:15 UTC
Autor
Kamo
Comite
1608785

BL1 Task 5, jumătate din biblioteca comună. Cinci jurnale, trei entităţi şi trei depozite sub ***************** Fără stereotipuri: BillingWormGuard este o clasă finală simplă cu un constructor privat, și SharedLibBeanSafety Testul e verde. Două îmbunătățiri deliberate asupra sursei de plată: 1. DOCUMENTELE DE PAYROLL DE GARDARE TERMINALĂ-RUNĂ ŞI NU AU (defect 5). PayrollSyncRun Javadoc pretinde "un terminal run nu este niciodată rescris" cu Nimic în spatele ei. Billing SyncRun o aplică. Planul specifică paznicul ca o citire goală a câmpului actual: dacă (stat!= nul && state!= BillingSyncRunState.RUNNING) {throw ...} Această versiune este greşită şi ar fi stricat producţia. @Preactualizare incendii După ce apelantul a modificat entitatea, vede starea terminalului. BillingSyncJournal.complet() tocmai a atribuit și refuză cel scrie rând există pentru a primi closeStaleRuns() on every matura. Prin urmare, paznicul compară cu Stare ca LOADED, capturat de un @PostLoad instantaneu într-un câmp @Transient. A rând nu încărcat (un nou nou Propriul test al planului are sens. 2. dbNow() (Self-Review's semnaled gap). Salariul citeste ceasul bazei de date de la TimecardPunchRepository; Serviciul de facturare nu are masa pumn. Adăugat Nu-ţi face griji. @Query(valoare = "SELECT CAST [now() AS timestamp) ," nativQuery = true) ] cu SQL-standard CAST, pentru că un::: citeste :timestamp. BillingSyncJournal este singurul apelant și singurul scriitor real de s-a întâmplatAt; entitys' @PrePersist LocalDateTime.now() backbacks are keep ca paznici de ultimă instanță și documentați ca atare (defect 6). Ambele entități WORM sunt deservite de depozite NARROW care extind depozitul, nu JpaRepository, astfel încât nu există nici o ștergere lot pentru a trece pe lângă @PreRemove. TDD dovezi [ERROR] Nu-ţi face griji. nu pot găsi simbolul Simbolul clasei BillingSyncIsue Locaţia: clasă ******************* ... 20 de alte erori "nu pot găsi simbolul," failure construit GREEN după implementare: Teste efectuate: 7, Eșecuri: 0, Erori: 0, Sarit: 0 Mutaţii, fiecare rula dintr-o arhivă izolata țintă / și propria -Dmaven.repo.local (acest checkout este partajat cu alte sesiuni și un apartament roșu aici este de obicei faza roșie a altcuiva: MUTAREA D Imutabilitatea lui (Mutația de nume ale planului Pasul 6): Testele efectuate: 7, Eșecuri: 2, Erori: 0, Sarit: 0 < < < EȘEURI! Nu-ţi face griji. Eşec! Java.lang. AssertionError: Aşteptăm un cod care să-l arunce. Nu-i aşa? Nu-ţi face griji. Eşec! Java.lang. AssertionError: Aşteptăm un cod care să-l arunce. Nu-i aşa? MUTAREA E citire de Aceasta este dovada că Versiunea planului este ruptă: Teste efectuate: 7, Eșecuri: 1, Erori: 0, Sarit: 0 < < < < failure! Nu-ţi face griji. Eşec! Java.lang. AssertionError: Aşteaptă codul nu pentru a ridica o aruncătoare dar prins - Nu. BillingSyncRun nul este SUCCEED și este dovezi despre o cursă încheiată; nu poate fi rescrisă. Nu-i aşa? Nu-i aşa? MUTATION F Testele efectuate: 7, Eșecuri: 4, Erori: 0, Sarit: 0 < < < < failure! - Nu. -- Aşteptăm un cod care să-l arunce. - Nu. -- Aşteptăm un cod care să-l arunce. - Nu. -- Aşteptăm un cod care să-l arunce. - Nu. -- Aşteptăm un cod care să-l arunce. Toate trei au revenit. Apartament de bibliotecă complet după aceea: Teste efectuate: 2288, Eșecuri: 0, Erori: 0, Sarit: 0 SUCCESUL CONSTRUIT <versiune> neatins la 1,6.0. Nu a împins .

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