[OpenAFS-devel] --enable-namei-fileserver and --enable-largefile-fileserver

Jeffrey Hutzelman jhutz@cmu.edu
Tue, 23 Aug 2005 16:50:10 -0400


On Monday, August 22, 2005 10:21:53 AM -0400 Jim Rees <rees@umich.edu> 
wrote:

> I want to make --enable-namei-fileserver and --enable-largefile-fileserver
> be the default for the BSDs.  The inode server isn't really stable and I
> don't see any reason to continue supporting it.  And I don't see any point
> in not building with largefile support.  I suspect other platforms are in
> the same boat.

> Should we make these the default for all platforms, and add corresponding
> --disable-foo options?  Do this just for the BSDs?


I think we should start by not conflating these two features.
I agree that there's little point in not building with largefile support, 
on any platform, and I don't see any problem with turning it on by default.



However, switching from inode to namei on platforms where the former was 
the default will screw over people who run existing servers on those 
platforms, especially as we have nothing resembling migration tools.  It 
might be reasonable to downplay the importance of this issue across a 
signficant version boundary, perhaps even 1.4, if it had been proposed and 
discussed in advance and if we had a documented migration strategy.  I 
don't think it's reasonable to make an unnecessary change of this magnitude 
in the final stages of the release cycle.


Also, I strongly disagree with your characterization of the inode server 
code as "unstable".  In reality, it is extremely stable, and lacks some 
rather ugly kludges which, in my opinion, make the namei server an accident 
waiting to happen.  It also generally outperforms the namei server on 
platforms where it is supported, especially those which lack directory 
lookup caches and directory structures with O(log(n)) lookup operations.

In short, the inode fileserver's time is _not_ past, and it would be 
inappropriate at this time to arbitrarily switch to using namei on all 
platforms, let alone "stop supporting" inode entirely.



Of course, if the kernel and fsck code which supports the inode fileserver 
on the BSD's is no longer maintainable, then by all means, change the 
default on those platforms.  Given the lack of strong BSD client support in 
OpenAFS, I suspect there are a limited number of sites running servers on 
those platforms (though certainly more than "none").

-- Jeff