https://bugzilla.novell.com/show_bug.cgi?id=687906
https://bugzilla.novell.com/show_bug.cgi?id=687906#c0 Summary: Long-running WCF client based on System.ServiceModel.ClientBase<TChannel> crashes with 'The operation has timed-out' Classification: Mono Product: Mono: Runtime Version: 2.10.x Platform: 64bit OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: remoting AssignedTo: ll...@novell.com ReportedBy: emily.le...@lumension.com QAContact: mono-bugs@lists.ximian.com Found By: --- Blocker: --- Created an attachment (id=425216) --> (http://bugzilla.novell.com/attachment.cgi?id=425216) This is a working example that reproduces the bug User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0) I have constructed a very simple WCF server with a single method, void Ping(). I have also built a client based on System.ServiceModel.ClientBase<TChannel> that repeatedly calls the server in order to measure call-time. When you run the server and the client in very short order the client will throw the following exception: ---->System.TimeoutException Message The operation has timed-out. Stack at System.ServiceModel.Channels.HttpRequestChannel+HttpChannelRequestA syncResult.WaitEnd () [0x0003c] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10 1\mcs\class\System.ServiceModel\System.ServiceModel.Channels\HttpRequestChannel cs:435 at System.ServiceModel.Channels.HttpRequestChannel.EndRequest (IAsyncR esult result) [0x00029] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\c lass\System.ServiceModel\System.ServiceModel.Channels\HttpRequestChannel.cs:289 at System.ServiceModel.Channels.HttpRequestChannel.Request (System.Ser viceModel.Channels.Message message, TimeSpan timeout) [0x00000] in C:\cygwin\tmp \monobuild\build\BUILD\mono-2.10.1\mcs\class\System.ServiceModel\System.ServiceM odel.Channels\HttpRequestChannel.cs:63 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (Syst em.ServiceModel.Channels.Message msg, TimeSpan timeout) [0x0000b] in C:\cygwin\t mp\monobuild\build\BUILD\mono-2.10.1\mcs\class\System.ServiceModel\System.Servic eModel\ClientRuntimeChannel.cs:579 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (Syst em.ServiceModel.Description.OperationDescription od, System.Object[] parameters) [0x00066] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\class\System.S erviceModel\System.ServiceModel\ClientRuntimeChannel.cs:534 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.DoProcess (Sy stem.Reflection.MethodBase method, System.String operationName, System.Object[] parameters) [0x00038] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\cla ss\System.ServiceModel\System.ServiceModel\ClientRuntimeChannel.cs:499 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Process (Syst em.Reflection.MethodBase method, System.String operationName, System.Object[] pa rameters) [0x00000] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\class \System.ServiceModel\System.ServiceModel\ClientRuntimeChannel.cs:479 Reproducible: Always Steps to Reproduce: 1. Donwload and open the attached solution 2. Run the server in Microsoft .Net, you MUST run the server in Microsoft .Net due to a different mono bug, 687902 3. Run the client in mono. 4. Observe that the client will report average call time every 10 seconds, and further, note that the call times grow progressively worse: The client is running, press a key to stop... Contact! 0.356038481360591ms 0.455139100098399ms 0.500788488074118ms 0.531477380575767ms 0.669040636782572ms 0.667665567875337ms 0.714867617107943ms 0.833405514652808ms 0.847995121207501ms 1ms 1.01244019138756ms In a few minutes the client eventually crashes with this exception: ---->System.TimeoutException Message The operation has timed-out. Stack at System.ServiceModel.Channels.HttpRequestChannel+HttpChannelRequestA syncResult.WaitEnd () [0x0003c] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10 1\mcs\class\System.ServiceModel\System.ServiceModel.Channels\HttpRequestChannel cs:435 at System.ServiceModel.Channels.HttpRequestChannel.EndRequest (IAsyncR esult result) [0x00029] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\c lass\System.ServiceModel\System.ServiceModel.Channels\HttpRequestChannel.cs:289 at System.ServiceModel.Channels.HttpRequestChannel.Request (System.Ser viceModel.Channels.Message message, TimeSpan timeout) [0x00000] in C:\cygwin\tmp \monobuild\build\BUILD\mono-2.10.1\mcs\class\System.ServiceModel\System.ServiceM odel.Channels\HttpRequestChannel.cs:63 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (Syst em.ServiceModel.Channels.Message msg, TimeSpan timeout) [0x0000b] in C:\cygwin\t mp\monobuild\build\BUILD\mono-2.10.1\mcs\class\System.ServiceModel\System.Servic eModel\ClientRuntimeChannel.cs:579 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (Syst em.ServiceModel.Description.OperationDescription od, System.Object[] parameters) [0x00066] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\class\System.S erviceModel\System.ServiceModel\ClientRuntimeChannel.cs:534 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.DoProcess (Sy stem.Reflection.MethodBase method, System.String operationName, System.Object[] parameters) [0x00038] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\cla ss\System.ServiceModel\System.ServiceModel\ClientRuntimeChannel.cs:499 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Process (Syst em.Reflection.MethodBase method, System.String operationName, System.Object[] pa rameters) [0x00000] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\class \System.ServiceModel\System.ServiceModel\ClientRuntimeChannel.cs:479 Actual Results: The client quickly crashes with this exception: ---->System.TimeoutException Message The operation has timed-out. Stack at System.ServiceModel.Channels.HttpRequestChannel+HttpChannelRequestA syncResult.WaitEnd () [0x0003c] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10 1\mcs\class\System.ServiceModel\System.ServiceModel.Channels\HttpRequestChannel cs:435 at System.ServiceModel.Channels.HttpRequestChannel.EndRequest (IAsyncR esult result) [0x00029] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\c lass\System.ServiceModel\System.ServiceModel.Channels\HttpRequestChannel.cs:289 at System.ServiceModel.Channels.HttpRequestChannel.Request (System.Ser viceModel.Channels.Message message, TimeSpan timeout) [0x00000] in C:\cygwin\tmp \monobuild\build\BUILD\mono-2.10.1\mcs\class\System.ServiceModel\System.ServiceM odel.Channels\HttpRequestChannel.cs:63 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (Syst em.ServiceModel.Channels.Message msg, TimeSpan timeout) [0x0000b] in C:\cygwin\t mp\monobuild\build\BUILD\mono-2.10.1\mcs\class\System.ServiceModel\System.Servic eModel\ClientRuntimeChannel.cs:579 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Request (Syst em.ServiceModel.Description.OperationDescription od, System.Object[] parameters) [0x00066] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\class\System.S erviceModel\System.ServiceModel\ClientRuntimeChannel.cs:534 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.DoProcess (Sy stem.Reflection.MethodBase method, System.String operationName, System.Object[] parameters) [0x00038] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\cla ss\System.ServiceModel\System.ServiceModel\ClientRuntimeChannel.cs:499 at System.ServiceModel.MonoInternal.ClientRuntimeChannel.Process (Syst em.Reflection.MethodBase method, System.String operationName, System.Object[] pa rameters) [0x00000] in C:\cygwin\tmp\monobuild\build\BUILD\mono-2.10.1\mcs\class \System.ServiceModel\System.ServiceModel\ClientRuntimeChannel.cs:479 Expected Results: The client should be able to call the server in perpetuity without the client crashing. I tried a number of variations in this test setup - I tried newing the client once and then calling it over and over, I also tried newing the client once, calling it and then disposing it over and over - both approaches eventually crash. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ mono-bugs maillist - mono-bugs@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-bugs