[Nix-dev] In multi-user Nix, let the daemon handle creation of GC roots

sbaugh at catern.com sbaugh at catern.com
Sun Jun 25 23:07:00 CEST 2017


Two other observations about adding such a feature, where GC roots are
added and removed by sending messages to the daemon:

- Since the daemon would now know exactly when a GC root was removed,
  this would allow for a time-based garbage collection policy, where a
  GC only collects things if they have been unreferenced for at least an
  hour, or a week, or any other period of time.

- I believe this would make our GC approach be an example of "partial
  tracing" as described in Bacon 2004. "A Unified Theory of Garbage
  Collection", https://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf
  which would be interestingly novel, since they say "We know of no
  implementation of partial tracing."



More information about the nix-dev mailing list