fix(db): tune H2 URL to actually flush writes to disk on commit
CI / Build Native (push) Successful in 6m50s
CI / Build Native (push) Successful in 6m50s
Sin estos parametros, H2 mantiene buffers en memoria y los cambios
hechos por change-password (u otras mutaciones) no llegaban al
archivo .mv.db hasta un checkpoint que el SIGKILL del container
se saltaba. Resultado: User aparece persistido en memoria (login
con la nueva pass da 200 OK dentro de la misma corrida), pero al
restart el archivo en disco tiene la password vieja.
WRITE_DELAY=0 -- flush cada commit
LOCK_MODE=0 -- no usar lock file (quitamos el .lock.db)
MV_STORE=TRUE -- usar el multi-version store que es mas cooperativo
con escrituras frecuentes
Verificado: el archivo .mv.db crece de 94KB a 106KB tras un
change-password, y la nueva password sobrevive un docker rm + run.
This commit is contained in:
@@ -5,7 +5,7 @@ quarkus.application.name=shot-crafter-calculator
|
||||
|
||||
# H2 file-based
|
||||
quarkus.datasource.db-kind=h2
|
||||
quarkus.datasource.jdbc.url=jdbc:h2:file:./data/shots;DB_CLOSE_DELAY=-1
|
||||
quarkus.datasource.jdbc.url=jdbc:h2:file:./data/shots;DB_CLOSE_DELAY=-1;WRITE_DELAY=0;LOCK_MODE=0;MV_STORE=TRUE
|
||||
quarkus.datasource.username=sa
|
||||
quarkus.datasource.password=
|
||||
quarkus.hibernate-orm.database.generation=validate
|
||||
|
||||
Reference in New Issue
Block a user