On 13.3.2012 3:59, Patrick Boutilier wrote: > I just updated my replication server from 2.4.12 to 2.4.14 and then got > nothing but "System I/O error" errors in the logs. I took a look at > http://bugzilla.cyrusimap.org/show_bug.cgi?id=3381 and noticed this: > > You can convert your mail directory hashing scheme from 32bit > fulldirhash to > 64bit fulldirhash with following commands: > % tools/rehash basic > % tools/rehash full > > > Unfortunately I have almost 5TB of mail spread out on 23 different mount > points. All the letters in /imap/mail are individual mount points so > rehashing would mean lots of moves across the mount points which won't > be quick. > > Is there a way to force Cyrus to use the old 32bit way, other than just > removing the patch? Unfortunately there does not seem to be way to force either 32bit or 64bit fulldirhash. You have to remove this patch from 2.4.14: diff --git a/lib/util.c b/lib/util.c index 8bcb00e..c96caa5 100644 --- a/lib/util.c +++ b/lib/util.c @@ -269,7 +269,7 @@ int dir_hash_c(const char *name, int full) if (full) { unsigned char *pt; - unsigned int n; + unsigned long long int n; enum { DIR_X = 3, DIR_Y = 5, -- Leena Heino University of Tampere / Computer Centre ( liinu at uta.fi ) ( http://www.uta.fi/laitokset/tkk ) ---- Cyrus Home Page: http://www.cyrusimap.org/ List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/