Namazu-devel-ja(旧)


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

Re: Road to 2.0.5



すみません、対処方法はすぐに思い付きませんが、現象だけ報告し
ます。

>>>>> In [namazu-devel-ja : No.00803] 
>>>>> “kose” = 小関 吉則 (KOSEKI Yoshinori) <kose@xxxxxxxxxxxxxxxxxx> wrote:
kose> セグメント例外 - コアダンプしました。
kose> FAIL: namazu-1
kose> セグメント例外 - コアダンプしました。
kose> FAIL: namazu-2
kose> セグメント例外 - コアダンプしました。
kose> FAIL: namazu-3
kose> セグメント例外 - コアダンプしました。
kose> FAIL: namazu-4

: kose> sh -v namazu-1
: #! /bin/sh
: #
: # Test for namazu.
: #
: LOG=`pwd`/test-log
: 
: docnum=`perl -lne 'print $1 if /^files (\d+)/' idx1/NMZ.status`
: 
: # Check simple searching.
: cd ../src
: ./namazu namazu ../tests/idx1 >> $LOG
: セグメント例外 - コアダンプしました。
: test "$?" != "0" && exit 1  # error if not success
: kose> 



kose> セグメント例外 - コアダンプしました。
kose> assert failed: $result =~ /^namazu: / at - line 15.
kose> FAIL: namazu-5

の方は、


: kose> sh -v namazu-5
: #! /bin/sh
: #
: # Test for namazu. Attack namazu with nasty cases.
: #
: LOG=`pwd`/test-log
: docnum=`perl -lne 'print $1 if /^files (\d+)/' idx1/NMZ.status`
: 
: cd ../src
: 
: # No query, no results.
: # FIXME: Is it a good behavior?
: test "`./namazu -c ''   ../tests/idx1`" != ''  && exit 1
: 
: # Should never match any documents.
: test `./namazu -c '"'     ../tests/idx1` != '0' && exit 1
: test `./namazu -c '/'     ../tests/idx1` != '0' && exit 1
: test `./namazu -c '{'     ../tests/idx1` != '0' && exit 1
: test `./namazu -c '}'     ../tests/idx1` != '0' && exit 1
: test `./namazu -c '""'    ../tests/idx1` != '0' && exit 1
: test `./namazu -c '{}'    ../tests/idx1` != '0' && exit 1
: test `./namazu -c '" "'   ../tests/idx1` != '0' && exit 1
: test `./namazu -c '{ }'   ../tests/idx1` != '0' && exit 1
: test `./namazu -c '"  "'  ../tests/idx1` != '0' && exit 1
: test `./namazu -c '{  }'  ../tests/idx1` != '0' && exit 1
: test `./namazu -c ' " " ' ../tests/idx1` != '0' && exit 1
: test `./namazu -c ' { } ' ../tests/idx1` != '0' && exit 1
: 
: # Match all documents.
: test `./namazu -c '//'       ../tests/idx1` != $docnum && exit 1
: test `./namazu -c 'namazu'   ../tests/idx1` != $docnum && exit 1
: test `./namazu -c '"namazu"' ../tests/idx1` != $docnum && exit 1
: test `./namazu -c '{namazu}' ../tests/idx1` != $docnum && exit 1
: 
: # Boundary testing.
: perl << 'TEST'  >> $LOG
: 	my $QUERY_MAX = 256;
: 	my $BUFSIZE   = 1024;
: 	for my $num (0 .. 3, $QUERY_MAX - 5 .. $QUERY_MAX + 5,
: 			     $BUFSIZE   - 5 .. $BUFSIZE   + 5, 
: 			     10000) # Huge query
:         {
: 		my $query  = "x" x $num;
: 		my $cmd    = "./namazu -c '$query' ../tests/idx1";
: 		my $result = `$cmd 2>&1`;
: 		print "$num: $?\n";
: 		print "$result\n";
: 
: 		my $assert = sub {
: 		    my ($code) = @_;
: 		    die "assert failed: $code" if ! eval $code;
: 		};
: 
: 		if ($num == 0) {
: 			&$assert('$result eq ""');
: 		} elsif ($num <= 256) {
: 			&$assert('$result eq "0\n"');
: 		} elsif ($num > 256) {
: 			&$assert('$result =~ /^namazu: /');
: 		}
: 	}
: 	exit 0;
: TEST
: セグメント例外 - コアダンプしました。
: assert failed: $result =~ /^namazu: / at - line 15.
: exit $?
: kose>

でした。
-- 
こせき @ Emacs のページ作成中
http://www.NetLaputa.ne.jp/~kose/Emacs/
kose@xxxxxxxxxxxxxxxxxx