This is during a rebuild. Note that there's a bug in
store*Validate*. It does a stat() on the object, and compares it to
e->object_len, and it obviously doesn't match (the metadata headers).
Is it possible to make the metadata a fixed length? or store the meta
data header size in *e somewhere? (so that checks like this can be
made.. )
The bug here that actually caused the crash is off a different
sort. There's memory corruption, or the same memory is being free()'ed
twice.
Could someone possibly explain why the metadata was added to the front
of the objects?
Michael.
(gdb) where
#0 0x400a71fe in __libc_free ()
#1 0x400282ac in __DTOR_END__ ()
#2 0x9d3b39c in ?? ()
#3 0x807b3b8 in xfree (s=0x9d37dc8) at util.c:398
#4 0x8069b19 in memFree (type=MEM_HTTP_REPLY, p=0x9d37dc8) at mem.c:130
#5 0x80722d3 in destroy_MemObject (e=0x83123e8) at store.c:216
#6 0x8072378 in destroy_StoreEntry (e=0x83123e8) at store.c:230
#7 0x807314a in storeRelease (e=0x83123e8) at store.c:733
#8 0x807268c in storeUnlockObject (e=0x83123e8) at store.c:327
#9 0x80567c4 in clientProcessMiss (http=0x9d37988) at client_side.c:1340
#10 0x8055b04 in clientCacheHit (data=0x9d37988, buf=0x8368888 "", size=-1)
at client_side.c:878
#11 0x8074574 in storeClientFileOpened (fd=-1, data=0x9bc3000) at store_client.c:187
#12 0x8077a80 in storeSwapInValidateComplete (data=0x9d380b8, retcode=0, errcode=2)
at store_swapin.c:55
#13 0x8077616 in storeValidateComplete (data=0x9d380d0, retcode=0, errcode=2)
at store_rebuild.c:603
#14 0x804f7de in aioCheckCallbacks () at async_io.c:372
#15 0x80591ba in comm_select (sec=0) at comm.c:1024
#16 0x806961a in main (argc=3, argv=0xbffffe6c) at main.c:595
#17 0x804a37e in _start ()
Received on Tue Jul 29 2003 - 13:15:46 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:11:42 MST