On Thu, 2010-10-28 at 14:28 -0400, C. Michael Pilato wrote: > On 10/28/2010 01:58 PM, Greg Stein wrote: > > On Thu, Oct 28, 2010 at 13:04, C. Michael Pilato <cmpil...@collab.net> > > wrote: > >> On 10/28/2010 12:50 PM, Hyrum K. Wright wrote: > >>> On Thu, Oct 28, 2010 at 11:48 AM, <cmpil...@apache.org> wrote: > >>>> Author: cmpilato > >>>> Date: Thu Oct 28 16:48:06 2010 > >>>> New Revision: 1028381 > >>>> > >>>> URL: http://svn.apache.org/viewvc?rev=1028381&view=rev > >>>> Log: > >>>> Add 'Remove obliterate code' to our 1.7 to-do list, per list discussion. > >>> > >>> Are we talking about 'svn rm'ing the code, or just disabling it for > >>> this release? > >> > >> If the task is left to me, the code will be completely removed. > > > > Why? I believe it is behind an #ifdef wall, so it isn't truly present > > today. If you remove it, then we just gotta put it back in later... > > If the code is behind an #ifdef wall, not exposed via our public includes, > not generating any new hook scripts, etc. -- in other words, it's completely > invisible to users and blackbox API consumers -- then I agree, there's no > *required* work here. > > That said, unless Julian is confident that the road he began down will > ultimately lead to some actual value, that #ifdef wall is now a development > burden. I lack that same confidence, and believe obliteration is something > we need to stop pretending we can realistically do and instead design into > FSv2. But my lack of confidence stems only from my own knowledge and > experience, and Julian's will necessarily differ. So really, he alone can > make this decision.
I have talked to Mike before. I can't really see a way to complete the "general removal of any node-rev set" road I started down, in the current FS. I can envisage completing one or more of the limited forms of obliteration, such as setting file content to empty in a given rep (which may shared among node-revs on one or more branches), and/or removing the latest N whole revisions. These special forms won't use exactly the API that's prototyped, so I'm not sure how much of the existing code is likely to be of value. The stuff I wrote in FSFS is in an abandoned state so I'll remove that; the stuff I wrote in BDB is in a better state. I'll audit it and see. - Julian