Re: [squid-users] COSS trouble revisited ...

From: Guido Serassio <[email protected]>
Date: Sun, 05 Nov 2006 19:22:15 +0100

Hi,

At 18.26 05/11/2006, Odhiambo WASHINGTON wrote:

>As recommended, I have started with just one cache_dir
>
>cache_dir coss /usr/local/squid/coss1 5120 max-size=131072
>
>(I recreated the files in a different location)
>
>...but Squid still core dump:

What is the exact error ?

>beastie# gdb `which squid` squid.core
>GNU gdb 6.1.1 [FreeBSD]
>Copyright 2004 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 "i386-marcel-freebsd"...
>Core was generated by `squid'.
>Program terminated with signal 12, Bad system call.
>Reading symbols from /lib/libcrypt.so.3...done.
>Loaded symbols for /lib/libcrypt.so.3
>Reading symbols from /usr/lib/libssl.so.4...done.
>Loaded symbols for /usr/lib/libssl.so.4
>Reading symbols from /lib/libcrypto.so.4...done.
>Loaded symbols for /lib/libcrypto.so.4
>Reading symbols from /lib/libm.so.4...done.
>Loaded symbols for /lib/libm.so.4
>Reading symbols from /lib/libpthread.so.2...done.
>Loaded symbols for /lib/libpthread.so.2
>Reading symbols from /lib/libc.so.6...done.
>Loaded symbols for /lib/libc.so.6
>Reading symbols from /libexec/ld-elf.so.1...done.
>Loaded symbols for /libexec/ld-elf.so.1
>#0 0x48314997 in aio_read () from /lib/libc.so.6
>[New LWP 100182]
>(gdb) where
>#0 0x48314997 in aio_read () from /lib/libc.so.6
>#1 0x080ea8cd in a_file_read (q=0x832c04c, fd=8, buf=0x8934000,
>req_len=1048576, offset=0,
> callback=0x80e9c8c <storeDirCoss_ReadStripeComplete>,
> data=0x8838110) at coss/async_io.c:98

If I'm not wrong, this should be the first read from the stripe file,
offset is 0.
Looks like aio_read() doesn't work on your system.

Looking to FreeBSD man pages:

"To link into the kernel:
   options VFS_AIO"

and

"To load as a kernel loadable module:
            kldload aio"

and

"The aio facility provides system calls for asynchronous I/O. It is
   available both as a kernel option for static inclusion and as a dynamic
   kernel module."

You can also try building Squid without the --enable-coss-aio-ops
configure option.

Regards

Guido

-
========================================================
Guido Serassio
Acme Consulting S.r.l. - Microsoft Certified Partner
Via Lucia Savarino, 1 10098 - Rivoli (TO) - ITALY
Tel. : +39.011.9530135 Fax. : +39.011.9781115
Email: guido.serassio@acmeconsulting.it
WWW: http://www.acmeconsulting.it/
Received on Sun Nov 05 2006 - 11:22:38 MST

This archive was generated by hypermail pre-2.1.9 : Fri Dec 01 2006 - 12:00:02 MST