1570
1571
1572
1573
1574
1575
1576
1577
1578
|
(result (or stmth
(let* ((newstmth (sqlite3:prepare db stmt)))
;; (db:hoh-set! stmt-cache db stmt newstmth)
(hash-table-set! stmt-cache stmt newstmth)
newstmth))))
(mutex-unlock! *get-cache-stmth-mutex*)
result))
)
|
>
>
>
>
>
>
>
>
>
>
|
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
|
(result (or stmth
(let* ((newstmth (sqlite3:prepare db stmt)))
;; (db:hoh-set! stmt-cache db stmt newstmth)
(hash-table-set! stmt-cache stmt newstmth)
newstmth))))
(mutex-unlock! *get-cache-stmth-mutex*)
result))
;;======================================================================
;; cached writes - run list of procs inside transaction
;; NOTE: this only works because we have once database per process
;;======================================================================
(define *cached-writes-mutex* (make-mutex))
(define *cached-writes-flag* #f)
(define *cached-writes-queues* (make-hash-table)) ;; dbstruct->list of writes
)
|