[Mono-dev] TCP Async

Greg Young gregoryyoung1 at gmail.com
Thu Aug 9 15:57:48 UTC 2012


This would be a good one to get into trunk
https://github.com/ysw/mono-socket-problem/blob/master/Patches/cb_fix.patch

On Thu, Aug 9, 2012 at 5:51 PM, Greg Young <gregoryyoung1 at gmail.com> wrote:
> We already have put it here with some associated fixes.
>
> On Thu, Aug 9, 2012 at 7:48 AM, Rodrigo Kumpera <kumpera at gmail.com> wrote:
>> Hi Greg,
>>
>> As we're approaching the 2.12 release date, it would be superb if you could
>> file bugs with
>> test cases for your issues. I do want to ensure that mono parallel stack is
>> stable.
>>
>> You can attach a test case as private if you can't disclosure it.
>>
>>
>> On Thu, Aug 9, 2012 at 2:01 AM, Greg Young <gregoryyoung1 at gmail.com> wrote:
>>>
>>> Actually its worse than that. We have found that *anything that uses
>>> callbacks* suffers from the same problems (eg any async API, say a
>>> timer).
>>>
>>> We have looked at writing our own socket library but the scope of
>>> these bugs is amazing.
>>>
>>> On Thu, Aug 9, 2012 at 9:00 AM, gelin yan <dynamicgl at gmail.com> wrote:
>>> >
>>> >
>>> > On Thu, Aug 9, 2012 at 1:47 PM, Greg Young <gregoryyoung1 at gmail.com>
>>> > wrote:
>>> >>
>>> >> An update to this. Some of the failures have been taken away (also
>>> >> with our patch mentioned). However simple test apps using sockets (or
>>> >> it appears any callbacks) in mono are not stable.
>>> >>
>>> >> This I would imagine prevent most from actually being able to use mono
>>> >> for any serious work.
>>> >>
>>> >> Greg
>>> >>
>>> >> On Sun, Jul 22, 2012 at 7:20 AM, Gonzalo Paniagua Javier
>>> >> <gonzalo.mono at gmail.com> wrote:
>>> >> > On Tue, Jul 17, 2012 at 7:49 AM, Greg Young <gregoryyoung1 at gmail.com>
>>> >> > wrote:
>>> >> >> Hey all.
>>> >> >>
>>> >> >> As this is a big issue for us and I feel a huge problem for mono in
>>> >> >> general
>>> >> >> at this point as it means sockets basically dont work which is a
>>> >> >> strong
>>> >> >> point of unix environments, I would like to propose something I have
>>> >> >> done in
>>> >> >> the past. I am willing to offer a bounty (personally) for a working
>>> >> >> fix
>>> >> >> to
>>> >> >> this section of code of $500 usd (more if done quickly).
>>> >> >>
>>> >> >> Acceptance criteria is the included test working in a stable fashion
>>> >> >> in
>>> >> >> Linux / bsd but just Linux is acceptable as well,
>>> >> >
>>> >> > Hi Greg.
>>> >> >
>>> >> > I have the test working with a tiny little change in mono master
>>> >> > (applies cleanly to mono-2-10) *and* a change in your test code to
>>> >> > avoid using ConcurrentQueue (I keep getting array index out of bounds
>>> >> > here).
>>> >> > The change to your test code is here: https://gist.github.com/3158357
>>> >> >
>>> >> > Last line before I interrupted the test (server):
>>> >> > # Total connections: 100. Out:   3778.3kb/s  In:   3549.7kb.s
>>> >> > Pending
>>> >> > Send: 0  In Send: 0  Pending Received: 0
>>> >> >
>>> >> > Last line before I interrupted the test (client):
>>> >> > # Total connections: 100. Out:   3548.5kb/s  In:   3851.7kb.s
>>> >> > Pending
>>> >> > Send: 10278  In Send: 45359  Pending Received: 0
>>> >> >
>>> >> > Can you make the payment through Paypal? :-)
>>> >> >
>>> >> > -Gonzalo
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> Le doute n'est pas une condition agréable, mais la certitude est
>>> >> absurde.
>>> >> _______________________________________________
>>> >> Mono-devel-list mailing list
>>> >> Mono-devel-list at lists.ximian.com
>>> >> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>> >
>>> >
>>> >
>>> > Hi All
>>> >
>>> >    Last year, I did try to port my program on mono. This program use
>>> > socket
>>> > extensively. It worked on .net flawlessly but raised many arcane
>>> > exceptions
>>> > & assertion errors with mono.  Many exceptions were related to GC &
>>> > threads.
>>> >
>>> >       It would be not easy to debug without a clue so finally I had to
>>> > give
>>> > up using mono for this purpose. I have searched mono, socket on google
>>> > however there are no more further info. I doubt maybe just maybe people
>>> > here
>>> > are not interested in using mono with TCP/UDP directly. If they need,
>>> > they
>>> > might consider using platform-specified API to fulfill their purposes.
>>> >
>>> > Regards
>>> >
>>> > gelin yan
>>> >
>>> > _______________________________________________
>>> > Mono-devel-list mailing list
>>> > Mono-devel-list at lists.ximian.com
>>> > http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>> >
>>>
>>>
>>>
>>> --
>>> Le doute n'est pas une condition agréable, mais la certitude est absurde.
>>> _______________________________________________
>>> Mono-devel-list mailing list
>>> Mono-devel-list at lists.ximian.com
>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>>
>
>
>
> --
> Le doute n'est pas une condition agréable, mais la certitude est absurde.



-- 
Le doute n'est pas une condition agréable, mais la certitude est absurde.


More information about the Mono-devel-list mailing list