You are reading content from Scuttlebutt
@Christian Bundy %mj3QVQd+P3W/WRDc5ZWbwKICP1l15w0lbXd4XEAthzk=.sha256
Re: %OoBqCtaYm

I had a brief conversation with @dominic where he walked me through how he'd go about implementing deletion. My implementation was mostly on the right track, but the gist is that I was messing around with this sort of nonsense instead of just filtering out deleted items before returning.

As far as I can tell it's working, but it requires changes to:

  • aligned-block-file
  • flumelog-offset
  • flumeview-level
  • flumeview-reduce (TODO)
  • flumedb
  • ssb-db
  • ssb-server

I'm thinking that the best way to go about this is probably starting with the leafs of the dependency tree, bubbling my way up from there:

dependency tree graphviz dot png

Most of this work took a few iterations so I'm sure I'll need some cleanup, but I think we're close. Once this is done then we can teach flumeviews to delete single items so that we can avoid resource-intensive rebuilds, but that's still on the horizon.

Join Scuttlebutt now