Overview
Comment: | Hack to turn off multi-db-handles |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | v1.70 |
Files: | files | file ages | folders |
SHA1: |
ffc3c2a09db9bab809ee8e0fbfb271f7 |
User & Date: | matt on 2022-10-23 19:40:02 |
Other Links: | branch diff | manifest | tags |
Context
2022-10-25
| ||
17:36 | Changed version to v1.7008 check-in: e82a5949b2 user: mmgraham tags: v1.70, v1.7008 | |
2022-10-23
| ||
19:40 | Hack to turn off multi-db-handles check-in: ffc3c2a09d user: matt tags: v1.70 | |
10:57 | Improved db stats collection and switch to using WAL in /tmp check-in: 2180fd1986 user: matt tags: v1.70 | |
Changes
Modified dbfile.scm from [162c384c6c] to [2d10dcee17].
︙ | ︙ | |||
274 275 276 277 278 279 280 | ;; it to the stack). ;; (define (dbfile:open-db dbstruct run-id init-proc) (if (> *dbfile:num-handles-in-use* 10) (let* ((wait-delay (- *dbfile:num-handles-in-use* 9))) (dbfile:print-err "INFO: over ten dbfile handle threads in use ("*dbfile:num-handles-in-use*") delaying "wait-delay" second") (thread-sleep! wait-delay))) | < | | > > > > > | 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 | ;; it to the stack). ;; (define (dbfile:open-db dbstruct run-id init-proc) (if (> *dbfile:num-handles-in-use* 10) (let* ((wait-delay (- *dbfile:num-handles-in-use* 9))) (dbfile:print-err "INFO: over ten dbfile handle threads in use ("*dbfile:num-handles-in-use*") delaying "wait-delay" second") (thread-sleep! wait-delay))) (let* ((subdb (dbfile:get-subdb dbstruct run-id))) (if (not subdb) ;; not yet defined (begin (dbfile:init-subdb dbstruct run-id init-proc) (dbfile:open-db dbstruct run-id init-proc)) (let* ((dbdat (dbfile:get-dbdat dbstruct run-id))) (if dbdat dbdat (let* ((tmppath (dbr:dbstruct-tmppath dbstruct)) (tmpdbpath (dbfile:run-id->path tmppath run-id)) (dbdat (dbfile:open-sqlite3-db tmpdbpath init-proc sync-mode: 0 journal-mode: "WAL"))) ;; the following line short-circuits the "one db handle per thread" model ;; (dbfile:add-dbdat dbstruct run-id dbdat) ;; dbdat)))))) ;; COMBINE dbfile:open-sqlite-db and dbfile:lock-create-open ;; ;; this stuff is for initial debugging, please remove it when ;; this code stabilizes (define *dbopens* (make-hash-table)) |
︙ | ︙ |