[aseek-devel] searchd and s.cgi on Alphas

From: Alexander Ufimtsev (no email)
Date: Mon Feb 25 2002 - 09:09:49 EST


> We have also fixed the code to be 64-bit clean and even tested in on Alpha
> platform, so people who have such hardware are welcome to do more tests.

Hello,

./index functions fairly well now. However, searchd and s.cgi on Alphas seem
to have some communication problems. When query is sent via s.cgi, it obtains
the quantity of results from searchd, but fails to get the documents. Boths
ides fall into blocking recv(). s.cgi starts listening for documents whiles
earchd still expects some statistics from the client. Here is gdb output:

./s.cgi:

alex at jasmine:~/aseek/bin$ QUERY_STRING="q=something" gdb ./s.cgi
GNU gdb 5.1
Copyright 2001 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "alpha-linux"...
(gdb) run
Starting program: /home/alex/aseek/bin/./s.cgi
[New Thread 1024 (LWP 5231)]
<HTML>
<HEAD>

<style><!--
body, td, .text
{
    font-family: Tahoma, Verdana, Geneva, Arial, Helvetica, sans-serif;
    font-size: 12px
}
a:link { color: #003399 }
a:visited { color: #666633 }
a:active, a:hover { color: #3366CC }
.small, small { font-size: 11px; font-family: Tahoma, Geneva, sans-serif }
.gr {color:#006600}
//--></style>

 <TITLE>ASPSeek: something</TITLE>
</HEAD>

<BODY BGCOLOR="#FFFFFF">

<==== SKIPPED ====>

<!-- <SMALL>Search results: something:75/113.</SMALL><BR> -->
<table cellpadding=3 cellspacing=0 width="100%" bgcolor="#CCCC99" border=0>
<tr>
<TD align="center">
<span class=small>Documents 1-20 of total <B>75</B> found. &nbsp;&nbsp;
Search took 0.045 seconds.</span>
</td></tr>
</table>
<CENTER>
<TABLE BORDER="0" CELLSPACING="2" CELLPADDING="0"><TR>
<TD VALIGN="bottom" ALIGN="right"><IMG SRC="/img/asps.png" BORDER="0"><BR>
<SMALL>Result pages:</TD>
 <TD VALIGN="bottom"><IMG SRC="/img/e_.png" WIDTH=11 HEIGHT=19
BORDER="0"><BR><SMALL>1</SMALL></TD>
<TD VALIGN="bottom"><A
HREF="/cgi-bin/s.cgi?q=something&fm=off&gr=off&np=1"><IMG SRC="/img/e.png"
BORDER="0" WIDTH=11 HEIGHT=19><BR><SMALL>2</SMALL></A></TD>
<TD VALIGN="bottom"><A
HREF="/cgi-bin/s.cgi?q=something&fm=off&gr=off&np=2"><IMG SRC="/img/e.png"
BORDER="0" WIDTH=11 HEIGHT=19><BR><SMALL>3</SMALL></A></TD>
<TD VALIGN="bottom"><A
HREF="/cgi-bin/s.cgi?q=something&fm=off&gr=off&np=3"><IMG SRC="/img/e.png"
BORDER="0" WIDTH=11 HEIGHT=19><BR><SMALL>4</SMALL></A></TD>
 <TD VALIGN="bottom"><A
HREF="/cgi-bin/s.cgi?q=something&fm=off&gr=off&np=1"><IMG SRC="/img/k.png"
BORDER="0"
WIDTH=12 HEIGHT=19><BR><SMALL>Next</SMALL></A></TD>

</TR></TABLE>
</CENTER>

Program received signal SIGINT, Interrupt.
[Switching to Thread 1024 (LWP 5231)]
0x20000320e70 in recv () from /lib/libc.so.6.1
(gdb) bt
#0 0x20000320e70 in recv () from /lib/libc.so.6.1
#1 0x200001e8d40 in recv () from /lib/libpthread.so.0
#2 0x200000f1fc4 in Recv (socket=5, buf=0x11fff9d88, bytes=4, flags=0) at
sock.cpp:44
#3 0x200000f2390 in CBufferedSocket::Recv (this=0x1200da7a0,
buffer=0x11fff9d88, bytes=4) at sock.cpp:122
#4 0x200000f24dc in CBufferedSocket::RecvULONG (this=0x5, val=@0x11fff9d88)
at sock.cpp:143
#5 0x200000ce928 in CSrcDocumentR::Recv (this=0x11fff9d88,
socket=@0x1200da7a0, MaxExcerpts=2)
    at templates.cpp:1188
#6 0x200000b2310 in CTcpDataSource::GetDocument (this=0x1200da790,
url=0x11fff9b18, doc=@0x11fff9d88)
    at datasource.cpp:260
#7 0x2000009de70 in show_result (r=0x120017750, stime=@0x11fffd3e8, ps1=20,
datasource=0x1200da790,
    counts=0x11fffd450) at aspseek.cpp:248
#8 0x2000009eb74 in aspseek_process_query (r=0x120017750) at aspseek.cpp:404
#9 0x120001830 in main (argc=1, argv=0x11ffffcf8) at sc.c:276
#10 0x20000240aac in __libc_start_main () from /lib/libc.so.6.1
(gdb)

======================================================================

./searchd -D

alex at jasmine:~/aseek/sbin$ gdb ./searchd 5208

GNU gdb 5.1
Copyright 2001 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "alpha-linux"...
/home/alex/aseek/sbin/5208: No such file or directory.
Attaching to program: /home/alex/aseek/sbin/./searchd, process 5208
Reading symbols from /lib/libdl.so.2.1...done.
Loaded symbols for /lib/libdl.so.2.1
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libpthread.so.0...done.
[New Thread 1024 (LWP 5208)]
[New Thread 2049 (LWP 5228)]
[New Thread 1026 (LWP 5229)]
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /usr/lib/libstdc++-libc6.2-2.so.3...done.
Loaded symbols for /usr/lib/libstdc++-libc6.2-2.so.3
Reading symbols from /lib/libm.so.6.1...done.
Loaded symbols for /lib/libm.so.6.1
Reading symbols from /lib/libc.so.6.1...done.
Loaded symbols for /lib/libc.so.6.1
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /lib/libnss_dns.so.2...done.
Loaded symbols for /lib/libnss_dns.so.2
Reading symbols from /lib/libresolv.so.2.1...done.
Loaded symbols for /lib/libresolv.so.2.1
Reading symbols from /home/alex/aseek/lib/libmysqldb-1.2.8.so...done.
Loaded symbols for /home/alex/aseek/lib/libmysqldb-1.2.8.so
Reading symbols from /usr/lib/libmysqlclient.so.10...done.
Loaded symbols for /usr/lib/libmysqlclient.so.10
Reading symbols from /lib/libcrypt.so.1.1...done.
Loaded symbols for /lib/libcrypt.so.1.1
Reading symbols from /lib/libnsl.so.1.1...done.
Loaded symbols for /lib/libnsl.so.1.1
0x200002c2d58 in accept () from /lib/libc.so.6.1
(gdb) info threads
  3 Thread 1026 (LWP 5229) 0x200002c2e70 in recv () from /lib/libc.so.6.1
  2 Thread 2049 (LWP 5228) 0x200002b757c in poll () from /lib/libc.so.6.1
  1 Thread 1024 (LWP 5208) 0x200002c2d58 in accept () from /lib/libc.so.6.1
(gdb) thread 3
[Switching to thread 3 (Thread 1026 (LWP 5229))]#0 0x200002c2e70 in recv ()
from /lib/libc.so.6.1
(gdb) bt
#0 0x200002c2e70 in recv () from /lib/libc.so.6.1
#1 0x20000076d40 in recv () from /lib/libpthread.so.0
#2 0x1200efb84 in Recv (socket=5, buf=0x200010d8b50, bytes=28, flags=0) at
sock.cpp:44
#3 0x1200eff50 in CBufferedSocket::Recv (this=0x200010d9568,
buffer=0x200010d8b50, bytes=40) at sock.cpp:122
#4 0x1200f02a8 in CBufferedSocket::RecvString (this=0x200010d9568,
str=@0x200010d8c58) at sock.cpp:178
#5 0x12000a320 in AddStat (socket=@0x200010d9568, database=0x120381ee8) at
daemon.cpp:671
#6 0x12000b85c in CSearchContext::ProcessCommands (this=0x200010d9560,
src=0x1203c59c0) at daemon.cpp:782
#7 0x12000d008 in processReq1 (ctx=0x200010d9560) at daemon.cpp:1066
#8 0x12000d3a8 in processReqs (p=0x120381ba0) at daemon.cpp:1099
#9 0x20000070720 in pthread_start_thread () from /lib/libpthread.so.0
(gdb)

-- 
Alexander Ufimtsev
Dept. of Computer Science,
University College Dublin, Ireland
Tel: +353-1-7162488 Fax: +353-1-2697262







Hosted Email Solutions

Invaluement Anti-Spam DNSBLs



Powered By FreeBSD   Powered By FreeBSD