sqlite problems on Mac OS X 10.4

Jim Correia jim.correia at pobox.com
Sat Sep 10 03:23:45 CEST 2005


On Sep 9, 2005, at 8:28 PM, David Relson wrote:

>> If I hardcode bf_sleep to use 10 microseconds rather than the passed
>> in value (in an attempt to make things complete faster) I get
>>
>> retrying registration after avoided deadlock...
>> ...[repeat many times]
>> retrying registration after avoided deadlock...
>> retry count exceeded, giving up.
>> #### Part 2 ####
>>
>> And we end up right back where we started.

[...]

> Attached is a patch I used to show the sleep times generated in
> rand_sleep().  Below is the output of "make check TESTS=t.lock3" (as
> suggested my Matthias).  Notice that the last column, which is the
> random sleep period, varies.  You've stated that your stack dumps
> (backtraces) always show 4 as the sleep period.  According to the code
> in rand_sleep(), the sleep period should vary between min and max,  
> i.e.
> between 1000 and 100000.  A value of "4" isn't possible.
>
> Can you verify apply my patch and verify that you all 4's?  If you get
> _any_ values under 1000 (or over 100000), then focus on function
> rand_sleep() and see what you can learn.

Sorry if my words mislead you. I mean identical in frames, but not  
necissarily in values. The delay does vary, and as I mentioned above,  
if I change bf_sleep to always use 10 microseconds (so that the delay  
is short and the 60 tries will finish before the heat death of the  
universe :-) the first process fails, but the second stays stuck.

Here is the output should it help (I'm not convinced yet it does.)

[pid 22516] rand_sleep( 1000, 1000000,   771978 )
[pid 22518] rand_sleep( 1000, 1000000,   783260 )
[pid 22514] rand_sleep( 1000, 1000000,   794449 )
[pid 22517] rand_sleep( 1000, 1000000,   816122 )
[pid 22515] rand_sleep( 4000, 1000000,   864224 )
[pid 22516] rand_sleep( 1000, 1000000,   808307 )
[pid 22518] rand_sleep( 1000, 1000000,   617526 )
[pid 22514] rand_sleep( 1000, 1000000,   847870 )
[pid 22517] rand_sleep( 1000, 1000000,   470996 )
[pid 22515] retrying registration after avoided deadlock...
[pid 22515] rand_sleep( 1000, 1000000,   851123 )
[pid 22517] rand_sleep( 1000, 1000000,   142326 )
[pid 22518] rand_sleep( 1000, 1000000,   332966 )
[pid 22517] rand_sleep( 1000, 1000000,   648343 )
[pid 22516] rand_sleep( 1000, 1000000,   993824 )
[pid 22514] rand_sleep( 1000, 1000000,   603911 )
[pid 22515] rand_sleep( 1000, 1000000,   334599 )
[pid 22518] rand_sleep( 1000, 1000000,   941545 )
[pid 22515] rand_sleep( 1000, 1000000,   414382 )
[pid 22517] rand_sleep( 1000, 1000000,   790668 )
[pid 22514] rand_sleep( 1000, 1000000,   270555 )
[pid 22515] rand_sleep( 1000, 1000000,   670936 )
[pid 22514] rand_sleep( 1000, 1000000,   959717 )
[pid 22516] rand_sleep( 1000, 1000000,   110237 )
[pid 22518] rand_sleep( 1000, 1000000,   570190 )
and so on for rand_sleep

For this run there was only one "retrying registration". In some runs  
we don't get that message at all, in others 2 or 3 times.

Thanks,
Jim



More information about the bogofilter-dev mailing list