64bit capability bug
Alex Deiter
tiamat at komi.mts.ru
Fri Dec 31 02:22:38 EST 2004
Henrique de Moraes Holschuh wrote:
>>>Cyrus IMAP on 64bit arch incorrectly interprets defaults numerical
>>>parameters of a imapd.conf: all of them are equal to zero!
>>Can't confirm on alpha, gcc 3.3.5:
> And while I haven't tried with 2.2, Debian has 2.1 compiled for at least
> ia64, alpha and amd64. It is also possible that the hppa and sparc ports are
> 64bit nowadays, too.
Alpha, IA64, AMD64 is (like i386) a little endian machine. Sparc and
HPPA is big endian.
Cyrus-IMAP 2.1.x and 2.2.x (up to 2.2.3) work fine on sparc64. After
2.2.4 (on 2.2.10) i got error:
Dec 27 21:23:19 satira nntp[24755]: DBERROR db4: PANIC: fatal region
error detected; run recovery
Dec 27 21:23:19 satira nntp[24755]: DBERROR: critical database situation
Dec 27 21:23:19 satira master[24747]: service nntp pid 24755 in READY
state: terminated abnormally
Changelog:
* Added berkeley_locks_max, berkeley_txns_max and berkeley_cachesize
options.
by default:
berkeley_cachesize: 512
berkeley_locks_max: 50000
berkeley_txns_max: 100
but Cyrus IMAP on 64bit bgendian incorrectly interprets defaults
numerical parameters of a imapd.conf: all of them are equal to zero!
if i add in my imapd.conf:
berkeley_cachesize: 512
berkeley_locks_max: 50000
berkeley_txns_max: 100
cyrus imap starts to work well!
quick patch:
--- lib/imapopts.h.orig Fri Dec 31 10:19:47 2004
+++ lib/imapopts.h Fri Dec 31 10:20:13 2004
@@ -200,9 +200,9 @@
const char *s;
- int i;
+ long i;
- int b;
+ long b;
enum enum_value e;
Thanks a lot!
--
Alex Deiter
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list