hydromodpy.core.io.db_retry#
Retry decorator for DuckDB writes that may hit a file-level lock.
DuckDB opens the catalog file with a single-writer lock. When a concurrent
process is also open on the same file, the second caller raises
duckdb.IOException with a message about a conflicting lock. We retry
with exponential backoff so short-lived contention (e.g. hmp list
running while hmp run commits) resolves transparently.
Only duckdb.IOException is retried. Other exceptions propagate.
Functions
|
Open a DuckDB connection, retrying on file-lock contention. |
|
Retry a method that may raise |