9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: a@9srv.net
To: 9fans@9fans.net
Subject: Re: [9fans] Ideas for gc on venti
Date: Thu, 19 Jun 2008 10:20:23 -0400	[thread overview]
Message-ID: <834c6b3349485fa175573ec3dfb91b4d@9srv.net> (raw)
In-Reply-To: <e592058a2cc66c2860c6db656f489360@quanstro.net>

// combining functionality that is logically distinct is
// generally called unmodular, and a layering violation
// in this particular senerio.

i agree with the principle, but i'm not sure it applies in this
case. what's described (at least the part before any "garbage"
collection is done) is really just arena management, not disk
management. the arenas are all defined within venti, and
nothing underneath really has any understanding of how (or
if) they're being used. i don't think there's anything
conceptually wrong with asking venti to be able to manage
which arenas are "live" or not.

of course, i think the specific "deprecated" suggestion is
predicated on the idea that you're going to periodically scan
the entire data log, which doesn't seem like an assumption
that's going to scale all that well (especially in light of the
stated goal of eventual distribution).

and this is certainly not a defense of the garbage collection
idea. i'd be quite averse to any form of automated garbage
collection in venti. i've got a few scores written down in a
notebook which aren't in any root and don't duplicate
blocks in any fs (unless by accident).

it would be nice to be able to selectively & manually mark a
given score as "deprecated" and have any blocks only
associated with that score freed (i've got a few hundred MB
already "wasted" on my venti based on having put a space
in a vac command line in the wrong place, for example), but
i find russ' point about the code to touch written blocks
being entirely bug-free based on not existing to be pretty
darn compelling. that level of safety is worth a lot.

anthony

ps: what'd make me give up on the deletion idea entirely
is some form of authentication in venti, even if it's just
allowing fossil to connect to it via tls using certificates. i
can deal with my own mistakes, but it does make me
slightly uncomfortable being open to DoS attacks.




  reply	other threads:[~2008-06-19 14:20 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-18 19:35 Enrico Weigelt
2008-06-18 20:16 ` Russ Cox
2008-06-18 20:50   ` Enrico Weigelt
2008-06-18 20:32 ` erik quanstrom
     [not found] ` <d39497d76feddcee629a4ea8c7af63d9@quanstro.net>
2008-06-18 20:57   ` Enrico Weigelt
2008-06-18 21:29     ` Bakul Shah
2008-06-18 22:37       ` Skip Tavakkolian
2008-06-18 22:54         ` erik quanstrom
2008-06-19 12:46     ` erik quanstrom
2008-06-19 14:20       ` a [this message]
2008-06-19 14:33         ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=834c6b3349485fa175573ec3dfb91b4d@9srv.net \
    --to=a@9srv.net \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).