Staging instance, all changes can be removed at any time

Skip to content

Refactor the cache handling in ProvenanceDB

  • use TypedDict structures to properly type the caches needed by the ProvenanceDB objects,
  • use only one cache plus a set of added (and eventually removed) ids of objects (within the cache) for revisisons, contents and directories.

Note: I am far from being satisfied by this cache handling, but I think it's better than before. I would prefer a more generic, lru-type, cache handling in which we do not scratch the (read) cache at each flush in the DB (aka "commit") and where relation caches (xxx_in_yyy) are also used in reading operations when possible.


Migrated from D5829 (view on Phabricator)

Merge request reports

Loading