cyrus-murder problems with database corruption in the frontend/master
João Assad
jfassad at parperfeito.com.br
Fri Apr 8 21:12:07 EDT 2005
João Assad wrote:
> Derrick J Brashear wrote:
>
>> On Fri, 8 Apr 2005, João Assad wrote:
>>
>>> João Assad wrote:
>>>
>>>> Managed to get a backtrace using debug_command ( thanks for this
>>>> nifty feature Henrique de Moraes )
>>>
>>>
>>>
>>> 2 gdb backtraces from the production server.
>>
>>
>>
>> curiously, the strace output isn't showing an mmap() call fail, that
>> I see, before the error shows up.
>>
> Yeah I noticed that too. thats because strace attached to the main
> thread and is not tracing threads forked by it.
> Im doing some tests using strace -ff now , to follow all forked
> threads and I see the mmaps there... but it makes cyrus too slow
> and thats causing all sorts of weird behaving on futex
>
> futex(0x8101c64, FUTEX_WAIT, 772, {59, 999828000}) = -1 ETIMEDOUT
> (Connection timed out)
> futex(0x8101c60, FUTEX_WAIT, 2, NULL) = -1 EAGAIN (Resource
> temporarily unavailable)
>
>
I could do a strace -f wich would dump all the traces from all the
threads into a single file... but its a nightmare to read it.
by reading some strace output here I've noticed mmaps complaining about
ENOMEM way before the mmap inside map_refresh goes crazy.
then It came to me that cyrus only do mmap inside map_refresh and It
seemed to me that it was tcp_wrappers mmap that was causing the rist ENOMEM
Im trying to recompile without tcp_wrappers and check if I can clean
strace output a bit.
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
More information about the Info-cyrus
mailing list