Re: delayed expunge and subfolders

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In the cyrus.cache file there are always 10 cache fields per message. But what could cause this code in mailbox.c to fail in the middle of skipping over those fields:
 /* Compute size of this record */
 cacheitembegin = cacheitem = mailbox->cache_base + cache_offset;
 for (cache_ent = 0; cache_ent < NUM_CACHE_FIELDS; cache_ent++) {
     cacheitem = CACHE_ITEM_NEXT(cacheitem);
 }

I see this failure when I try to use cyr_expire with -X 1 or with any number greater than zero.
(gdb) frame 0
#0  process_records (mailbox=0xffbff080, newindex=0xe30a8,
    index_base=0xfecd0000 <Address 0xfecd0000 out of bounds>, exists=29,
    deleted=0x2eb77c0, numdeleted=0xffbfbedc, quotadeleted=0xffbfbef0,
    numansweredflag=0xffbfbeec, numdeletedflag=0xffbfbee8,
    numflaggedflag=0xffbfbee4, newcache=0xe3098,
    new_cache_total_size=0xffbfbee0, expunge_fd=-1, last_offset=0,
    decideproc=0x16e18 <expire_cb>, deciderock=0xffbffd60,
    expunge_flags=2) at mailbox.c:1930
(gdb) p cache_ent
$1 = 8

OS: Solaris 9/Sparc
CC: Gcc 3.4.5
Cyrus: 2.3.7

--
  Leena Heino              University of Tampere / Computer Centre
  ( liinu at uta.fi )      ( http://www.uta.fi/laitokset/tkk )
----
Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

[Index of Archives]     [Cyrus SASL]     [Squirrel Mail]     [Asterisk PBX]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [KDE]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux