Metastatic. Cache. DLLB
(Metastatic v0.33.0)
View Source
Dllb database implementation of Metastatic.Cache.
Caches MetaAST entries in a Dllb database instance if available.
This backend is opt-in: it is only active when the optional :dllb
dependency is present and config :dllb, :enabled, true is set. The
default cache backend is Metastatic.Cache.ETS.
Trust model
Payloads are round-tripped with :erlang.term_to_binary/2 and decoded with
:erlang.binary_to_term/2 using the [:safe] option. Decoding a payload
that contains atoms not already present in the VM raises ArgumentError
instead of creating them, so a tampered or foreign database cannot be used
for atom exhaustion or remote code execution.