@@ -20,7 +20,6 @@ module Make (Data : Binable.S) = struct
2020 { env : Rw .t
2121 ; db : Rw .holder
2222 ; counter : int ref
23- ; logger : Logger .t
2423 ; garbage : int Hash_set .t
2524 (* * A list of ids that are no longer reachable from OCaml's side *)
2625 }
@@ -32,21 +31,14 @@ module Make (Data : Binable.S) = struct
3231 Async.Deferred.Result. map (Disk_cache_utils. initialize_dir path ~logger )
3332 ~f: (fun path ->
3433 let env, db = Rw. create path in
35- { env
36- ; db
37- ; counter = ref 0
38- ; logger
39- ; garbage = Hash_set. create (module Int )
40- } )
34+ { env; db; counter = ref 0 ; garbage = Hash_set. create (module Int ) } )
4135
4236 type id = { idx : int }
4337
44- let get ({ env; db; logger; _ } : t ) ({ idx } : id ) : Data.t =
45- [% log spam] " Getting data at %d in LMDB cache" idx
46- ~metadata: [ (" index" , `Int idx) ] ;
38+ let get ({ env; db; _ } : t ) ({ idx } : id ) : Data.t =
4739 Rw. get ~env db idx |> Option. value_exn
4840
49- let put ({ env; db; counter; logger; garbage } : t ) (x : Data.t ) : id =
41+ let put ({ env; db; counter; garbage } : t ) (x : Data.t ) : id =
5042 (* TODO: we may reuse IDs by pulling them from the `garbage` hash set *)
5143 let idx = ! counter in
5244 incr counter ;
@@ -57,22 +49,14 @@ module Make (Data : Binable.S) = struct
5749 critical section. LMDB critical section then will be re-entered if
5850 it's invoked directly in a GC hook.
5951 This causes mutex double-acquiring and node freezes. *)
60- [% log spam] " Data at %d is GCed, marking as garbage" idx
61- ~metadata: [ (" index" , `Int idx) ] ;
6252 Hash_set. add garbage idx ) ;
6353 if Hash_set. length garbage > = garbage_size_limit then (
64- Hash_set. iter garbage ~f: (fun to_remove ->
65- [% log spam] " Instructing LMDB to remove garbage at index %d" to_remove
66- ~metadata: [ (" index" , `Int to_remove) ] ;
67- Rw. remove ~env db to_remove ) ;
54+ Hash_set. iter garbage ~f: (fun to_remove -> Rw. remove ~env db to_remove) ;
6855 Hash_set. clear garbage ) ;
6956 Rw. set ~env db idx x ;
7057 res
7158
72- let iteri ({ env; db; logger; _ } : t ) ~f =
73- Rw. iter ~env db ~f: (fun k v ->
74- [% log spam] " Iterating at index %d" k ~metadata: [ (" index" , `Int k) ] ;
75- f k v )
59+ let iteri ({ env; db; _ } : t ) ~f = Rw. iter ~env db ~f
7660
7761 let count ({ env; db; _ } : t ) =
7862 let sum = ref 0 in
0 commit comments