Repository navigation
Closed as not planned
Labels
bugSomething isn't workingSomething isn't working
Description
Sentry Issue: GAB-13
OperationalError: disk I/O error
(2 additional frame(s) were not displayed)
...
File "github_agent_bridge/persistence/runtime.py", line 161, in mark_process_exited
with self.database.transaction(
File "contextlib.py", line 141, in __enter__
return next(self.gen)
File "github_agent_bridge/persistence/database.py", line 111, in transaction
con = self.read_write()
File "github_agent_bridge/persistence/database.py", line 70, in read_write
self._configure(con, read_only=False)
File "github_agent_bridge/persistence/database.py", line 185, in _configure
journal_mode = str(con.execute("PRAGMA journal_mode").fetchone()[0]).lower()
OperationalError: disk I/O error
(5 additional frame(s) were not displayed)
...
File "github_agent_bridge/persistence/jobs.py", line 194, in finish
with self.database.transaction(
File "contextlib.py", line 141, in __enter__
return next(self.gen)
File "github_agent_bridge/persistence/database.py", line 111, in transaction
con = self.read_write()
File "github_agent_bridge/persistence/database.py", line 70, in read_write
self._configure(con, read_only=False)
File "github_agent_bridge/persistence/database.py", line 185, in _configure
journal_mode = str(con.execute("PRAGMA journal_mode").fetchone()[0]).lower()
OperationalError: disk I/O error
(4 additional frame(s) were not displayed)
...
File "github_agent_bridge/persistence/runtime.py", line 71, in record_worker_heartbeat
with self.database.transaction(
File "contextlib.py", line 141, in __enter__
return next(self.gen)
File "github_agent_bridge/persistence/database.py", line 111, in transaction
con = self.read_write()
File "github_agent_bridge/persistence/database.py", line 70, in read_write
self._configure(con, read_only=False)
File "github_agent_bridge/persistence/database.py", line 185, in _configure
journal_mode = str(con.execute("PRAGMA journal_mode").fetchone()[0]).lower()
This issue was automatically created by Sentry via Github Issue
Reacted by GISCE Bot
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Activity
giscebot commentedon Nov 11, 2026
Diagnòstic completat: aquest error és un símptoma duplicat del mateix incident de filesystem ple que #344, no un defecte independent de
mark_process_exited,finishoPRAGMA journal_mode.El journal de producció mostra la seqüència exacta a les 17:12:28 CET:
sqlite3.OperationalError: database or disk is full;disk I/O error;No afegeixo un tercer patch aquí perquè capturar aquests errors en cada repositori amagaria una pèrdua de durabilitat. Les dues correccions útils i no solapades són:
Totes dues PR tenen la suite verda en Python 3.11, Python 3.12 i dashboard.
Estat operatiu comprovat després de la recuperació: executor, webhook i dashboard actius; base de dades llegible (9.859 jobs); cap nou
database or disk is fullnidisk I/O erroral servei des de les 17:13. El filesystem encara està al 92% amb 13 GiB lliures, així que cal mantenir la recuperació de capacitat com a acció operativa; #349 aporta detecció preventiva, no neteja automàtica.Tanco #346 com a duplicat de #344.
giscebot commentedon Nov 11, 2026
Correcció de seguiment: la PR preventiva consolidada és #350, que substitueix la implementació inicial solapada #349 (ja tancada). #348 continua sent el fix fail-closed que supervisa els errors fatals del heartbeat i atura l’executor perquè systemd el reiniciï.
#348 i #350 són mergeables i tenen CI verd en Python 3.11, Python 3.12 i dashboard. #346 es manté tancat com a duplicat simptomàtic de #344; la recuperació de capacitat i la finestra d’observació operativa continuen controlades allà.
giscebot commentedon Nov 11, 2026
Actualització d’estat: no cal cap patch addicional en aquest issue, que continua correctament tancat com a símptoma duplicat de #344.
La PR #350 ha rebut després l’enfortiment de regressió
88a3ab5, que comprova que la sonda de capacitat mesura el filesystem del pare resolt de la base SQLite. Per tant, l’afirmació anterior que #350 tenia el CI verd ja no és vigent per al HEAD actual: la nova execució encara és a la cua: https://github.com/gisce/github-agent-bridge/actions/runs/43096761102La PR #348 es manté mergeable amb els tres checks verds. La recuperació d’espai i la finestra d’observació operativa continuen seguits a #344.