Upgrade from 2.1 to 2.2 issue...

Rob Mueller robm at fastmail.fm
Wed Jan 21 16:29:56 EST 2004


> This sounds a *lot* like the bug I fixed right before release.  And if
> thats the case, delivering message to the folder is also highly likely to
> fix the problem.

Hmmm, is it a variation on the same bug perhaps?

> > Program received signal SIGSEGV, Segmentation fault.
> > 0x08074b41 in mailbox_expunge (mailbox=0x81349a0, iscurrentdir=1,
> > decideproc=0, deciderock=0x0) at mailbox.c:2018
> > 2018                    cacheitem = CACHE_ITEM_NEXT(cacheitem);
>
> This, uh, doesn't line up with the line numbers in my mailbox.c.

1.151 is the 2.2.3 release version.

Hmmm, I wanted to show that the line numbers were correct, but the
'annotate' doesn't seem to work in cvsweb...

https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/src/cyrus/imap/mailbox.c?annotate=1.151

If I just download it instead:

https://bugzilla.andrew.cmu.edu/cgi-bin/cvsweb.cgi/~checkout~/src/cyrus/imap/mailbox.c?rev=1.151&content-type=text/plain

And go to line 2018, it seems to be the correct line number...

> > 2016                cacheitembegin = cacheitem = mailbox->cache_base +
> > cache_offset;
> > 2017                for(cache_ent = 0; cache_ent < NUM_CACHE_FIELDS;
> > cache_ent++) {
> > 2018                    cacheitem = CACHE_ITEM_NEXT(cacheitem);
> > 2019                }
>
> Though this code looks correct.
>
> OOC, what is the value of cache_ent when you crash?

Was in my original post...

(gdb) p cache_ent
$5 = 1

This value seems odd though...

$3 = 4294961280
(gdb) p cacheitembegin

Isn't that (unsigned)-6016. Should this ever be negative?

(gdb) p mailbox->cache_base
$2 = 0x41456000 "A"
(gdb) p cache_offset
$3 = 4294961280
(gdb) p cacheitembegin
$4 = 0x41454880
"\030\224ÿÿ\211EØ\203Ä\020\205À\017\204\226þÿÿ\203ì\fWè±\223ÿÿ\211EÔ\203Ä\02
0\205À\017\204\177þÿÿ\215´&"
(gdb) p cache_ent
$5 = 1
(gdb) p *mailbox
$6 = {header_fd = 11, index_fd = 12, cache_fd = 13,
  header_base = 0x4129e000 "¡\002\213\rCyrus mailbox header\n\"The best
thing about this system was that it had lots of goals.\"\n\t--Jim Morris on
Andrew\nuser.*username*\t6da7138e3f13bdc2\n\n*username*\tlrswipcda\tadmin\tl
rswipcda\t"...,
  header_len = 210, index_base = 0x41445000 "A",
  index_len = 16384, cache_base = 0x41456000 "A",
  cache_len = 16384, cache_size = 5164,
  header_lock_count = 1, index_lock_count = 1,
  seen_lock_count = 0, pop_lock_count = 1,
  header_ino = 4328652, index_mtime = 1074665767,
  index_ino = 4388307, index_size = 856,
  name = 0x814ded8 "user.*username*",
  path = 0x814def8 "/var/spool/imap/i/user/*username*",
  acl = 0x8155508 "*username*\tlrswipcda\tadmin\tlrswipcda\tanyone\tp\t",
  myrights = 511, uniqueid = 0x81556e8 "6da7138e3f13bdc2",
  flagname = {0x0 <repeats 128 times>},
  generation_no = 1090519040, format = 0,
  minor_version = 6, start_offset = 76,
  record_size = 60, exists = 13,
  last_appenddate = 1074665664, last_uid = 78,
  quota_mailbox_used = 2761812, pop3_last_login = 0,
  uidvalidity = 1058258370, deleted = 2,
  answered = 0, flagged = 0, dirty = 0,
  pop3_new_uidl = 1, leaked_cache_records = 1967064584,
  spares = {0, 0}, quota = {fd = 15, lock_count = 0,
    root = 0x8155548 "user.*username*",
  used = 10693530, limit = 50000}}

Rob





More information about the Info-cyrus mailing list