[Mono-dev] Stackoverflow exception while processing a linq query

Vladimir Dimitrov vlad.dimitrov at gmail.com
Tue Mar 5 15:18:06 UTC 2013


Filed: https://bugzilla.xamarin.com/show_bug.cgi?id=10911

On 5.3.2013 ?. 17:00 ?., Vladimir Dimitrov wrote:
> The problem is I cannot reproduce this any more. I ran the same code 
> on a Windows machine and it changed the information stored in the 
> database which was causing the problematic situation. But even if I 
> don't see such a bug report causing big attention I will add it. 
> Should I file it here: https://bugzilla.xamarin.com/ ?
>
> On 5.3.2013 ?. 16:04 ?., Rodrigo Kumpera wrote:
>> Could you please file a bug report?
>>
>>
>> On Sat, Mar 2, 2013 at 2:37 PM, Vladimir Dimitrov 
>> <vlad.dimitrov at gmail.com <mailto:vlad.dimitrov at gmail.com>> wrote:
>>
>>     Recently I received a strange error on one of our servers which
>>     run mono 2.10.8.1 on Ubuntu 12.4:
>>
>>     System.AggregateException: One or more errors occured --->
>>     System.StackOverflowException: The requested operation caused a
>>     stack overflow.
>>       at
>>     System.Collections.Concurrent.SplitOrderedList`2[System.String,System.Collections.Generic.KeyValuePair`2[System.String,System.Collections.Generic.IEnumerable`1[Warehouse.Sync.Common.ChangeItem]]].GetParent
>>     (UInt32 v) [0x00000] in <filename unknown>:0
>>       at
>>     System.Collections.Concurrent.SplitOrderedList`2[System.String,System.Collections.Generic.KeyValuePair`2[System.String,System.Collections.Generic.IEnumerable`1[Warehouse.Sync.Common.ChangeItem]]].InitializeBucket
>>     (UInt32 b) [0x00000] in <filename unknown>:0
>>       at
>>     System.Collections.Concurrent.SplitOrderedList`2[System.String,System.Collections.Generic.KeyValuePair`2[System.String,System.Collections.Generic.IEnumerable`1[Warehouse.Sync.Common.ChangeItem]]].InitializeBucket
>>     (UInt32 b) [0x00000] in <filename unknown>:0
>>       at
>>     System.Collections.Concurrent.SplitOrderedList`2[System.String,System.Collections.Generic.KeyValuePair`2[System.String,System.Collections.Generic.IEnumerable`1[Warehouse.Sync.Common.ChangeItem]]].InitializeBucket
>>     (UInt32 b) [0x00000] in <filename unknown>:0
>>
>>     This continued in the logs for several megabytes. Looking at the
>>     code
>>     (https://github.com/mosa/Mono-Class-Libraries/blob/master/mcs/class/corlib/System.Collections.Concurrent/SplitOrderedList.cs)
>>     it looks perfectly normal to happen.
>>
>>     Looks like if InitializeBucket receives 0 then GetParrent will
>>     return 0. GetBucket can return null too if list it checks in is
>>     empty and then the whole thing gets into infinite recursion...
>>     Any idea on how this situation happens/can be avoided and if
>>     anybody else encountered a similar problem?
>>
>>     Thanks,
>>      Vladimir Dimitrov
>>     _______________________________________________
>>     Mono-devel-list mailing list
>>     Mono-devel-list at lists.ximian.com
>>     <mailto:Mono-devel-list at lists.ximian.com>
>>     http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-devel-list/attachments/20130305/b1a7b1be/attachment.html>


More information about the Mono-devel-list mailing list