LUSCA_HEAD-r14007

New release snapshot: LUSCA_HEAD-r14007.tar.gz - lusca-users | Google グループ
と、新しいスナップショットが公開されているわけですが相変わらず手元ではアクセスした瞬間にcore吐いて死亡。

2009/04/29 10:56:32| assertion failed: String.c:140: "s->buf"

こんなメッセージが出てるのでソースを見てみたら(String.c - lusca-cache - Google Code)assertなので-DNDEBUGを付けてビルドしてみたのだけどそれでも同じ所で落ちるとか勘弁。
gdbにcore喰わせても

(gdb) bt
#0  0x281ec177 in thr_kill () from /lib/libc.so.7
#1  0x2819f7b6 in ?? () from /lib/libthr.so.3
#2  0x000186f4 in ?? ()
#3  0x00000006 in ?? ()
#4  0x2828e398 in ?? () from /lib/libc.so.7
#5  0xbfbfe3ac in ?? ()
#6  0xbfbfe3a4 in ?? ()
#7  0x281a5b0c in ?? () from /lib/libthr.so.3
#8  0xbfbfe388 in ?? ()
#9  0x2819d303 in raise () from /lib/libthr.so.3
Backtrace stopped: frame did not save the PC

とか、はー、さっぱり\(^o^)/さっぱり
面倒なのでassert(s->buf);の部分を削ってしまったとさ('A`;)


ん?Near Hitsが妙に遅いな。こりゃバグバグかも。あまりに遅いので結局r13795に戻しました。assertで刺さるからにはやっぱりどこかおかしいんだろうなぁ。


追記 5/4
ふと、思いつきでconfigureに--enable-mempool-debugだけ付けてmakeしてみたら

if gcc -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/usr/local/squid/etc/squid.conf\"
 -I. -I. -I../include -I. -I. -I../include -I../include     -Wall -g -O2 -D_REEN
TRANT -MT MemPool.o -MD -MP -MF ".deps/MemPool.Tpo" -c -o MemPool.o MemPool.c;
then mv -f ".deps/MemPool.Tpo" ".deps/MemPool.Po"; else rm -f ".deps/MemPool.Tpo
"; exit 1; fi
MemPool.c: In function 'memPoolDiffReport':
MemPool.c:82: error: 'MemPoolMeter' has no member named 'idle'
MemPool.c:82: error: 'MemPoolMeter' has no member named 'idle'
MemPool.c: In function 'memReport':
MemPool.c:151: warning: too many arguments for format
*** Error code 1

見事に止まったorz
他にもlibmem周りでwarning出てるなぁと思ってソースを見たら

static void
memShrink(size_t new_limit)
{
        /* NULL operation */
}

とか、涙チョチョ切れる部分がorz
道理でstableと銘打って出さないわけだよ。苦笑