mirror of
https://git.openafs.org/openafs.git
synced 2025-01-18 06:50:12 +00:00
f3629f87da
Currently, if the fileserver tries to restore fsstate.dat and the included FE hashtable does not match our in-memory size (FEHASH_SIZE), we'll discard the entire state file. This is unnecessary, since we could just add the FEs to our hashtable ourselves; the on-disk hashtable data is not required. Furthermore, loading the hashtable from disk isn't even terribly efficient when the hashtable sizes do match, since any indices need to be converted from the on-disk values to in-memory values (fe_OldToNew). So if we're processing the FE hashtable indices anyway, we might as well just add them to the hashtable like normal, and ignore the values on disk. So, ignore loading the "fehash" data from the fsstate file, and just add file entries to our hashtable as we read them in. This ends up being slightly faster, simpler, and more flexible, since we don't need to worry about reflecting any changes to our hashtable in the fsstate.dat file. At least for now, we still write our hashtable data to fsstate.dat, in case other utilities (or older fileservers) need it. [adeason@sinenomine.net: Converted to always ignore on-disk hashtable data.] Change-Id: Ie53a24a5d24906ac55d13eb22713b73dc4bfaab2 Reviewed-on: https://gerrit.openafs.org/14738 Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: Cheyenne Wills <cwills@sinenomine.net> Reviewed-by: Andrew Deason <adeason@sinenomine.net> Reviewed-by: Michael Meffie <mmeffie@sinenomine.net> |
||
---|---|---|
build-tools | ||
doc | ||
src | ||
tests | ||
.gitignore | ||
.gitreview | ||
.mailmap | ||
.splintrc | ||
acinclude.m4 | ||
CODING | ||
configure-libafs.ac | ||
configure.ac | ||
CONTRIBUTING | ||
INSTALL | ||
libafsdep | ||
LICENSE | ||
Makefile-libafs.in | ||
Makefile.in | ||
NEWS | ||
NTMakefile | ||
README | ||
README-WINDOWS | ||
regen.sh |
AFS is a distributed file system that enables users to share and access all of the files stored in a network of computers as easily as they access the files stored on their local machines. The file system is called distributed for this exact reason: files can reside on many different machines, but are available to users on every machine. OpenAFS 1.0 was originally released by IBM under the terms of the IBM Public License 1.0 (IPL10). For details on IPL10 see the LICENSE file in this directory. The current OpenAFS distribution is licensed under a combination of the IPL10 and many other licenses as granted by the relevant copyright holders. The LICENSE file in this directory contains more details, thought it is not a comprehensive statement. See INSTALL for information about building and installing OpenAFS on various platforms. See CODING for developer information and guidelines. See NEWS for recent changes to OpenAFS.