OncRpcTcpClient doesn't work in a multi thread environment

Bug #603162 reported by Achim on 2010-07-08
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenMapi.org
Undecided
Johannes Roith

Bug Description

Open a bunch of (500) entries in the main thread and in a second thread at the same time results in the following exceptions:

CompactTeaSharp.OncRpcException: wrong ONC/RPC message type received
  at CompactTeaSharp.OncRpcClientReplyMessage.XdrDecode (CompactTeaSharp.XdrDecodingStream xdr) [0x00069] in /home/hudson/workspace/nmapi_stable/RemoteTea-Sharp/OncRpc/OncRpcClientReplyMessage.cs:121
  at CompactTeaSharp.OncRpcTcpClient.Call (Int32 procedureNumber, Int32 versionNumber, IXdrAble params, IXdrAble result) [0x00128] in /home/hudson/workspace/nmapi_stable/RemoteTea-Sharp/OncRpc/OncRpcTcpClient.cs:372
164201 ERROR HttpHandler (null) - System.Threading.ThreadAbortException: Thread was being aborted
  at NMapi.TeamXChangeBase.Dispose (Boolean disposing) [0x00073] in /home/hudson/workspace/nmapi_stable/providers/NMapi.Provider.TeamXChange/TeamXChangeBase.cs:85
  at NMapi.TeamXChangeBase.Dispose () [0x00000] in /home/hudson/workspace/nmapi_stable/providers/NMapi.Provider.TeamXChange/TeamXChangeBase.cs:66
  at NMapi.ActiveSync.Commands.Sync2Client.WriteServerChangesToClient () [0x00070] in /home/aderigs/src/Sync4OpenMAPI/Commands/Sync2Client.cs:182
  at NMapi.ActiveSync.Commands.Sync.DoExecute () [0x00446] in /home/aderigs/src/Sync4OpenMAPI/Commands/Sync.cs:185
  at NMapi.ActiveSync.Commands.CmdHandler.Execute () [0x00000] in /home/aderigs/src/Sync4OpenMAPI/Commands/CmdHandler.cs:72
  at NMapi.ActiveSync.HttpHandler.ProcessAsCommand (System.Web.HttpContext context) [0x00212] in /home/aderigs/src/Sync4OpenMAPI/ActiveSync-Webserver/HttpHandler.cs:64

Achim (achim-derigs) on 2010-07-08
Changed in openmapi:
assignee: nobody → Johannes Roith (jroith)
Achim (achim-derigs) wrote :

$ make bin/NMapi.Test.dll && nunit-console2 bin/NMapi.Test.dll -run:NMapi.Test.ConnectionTest
$ git diff
diff --git a/tests/regression/NetworkTests.cs b/tests/regression/NetworkTests.cs
index c305d59..a37eae1 100644
--- a/tests/regression/NetworkTests.cs
+++ b/tests/regression/NetworkTests.cs
@@ -103,7 +103,7 @@ namespace NMapi.Test {
                        }

                        // TODO: Change this to something really greater than 1
- var multithreading = new Thread [1];
+ var multithreading = new Thread [7];

                        for (int i = 0; i < multithreading.Length; i++) {
                                var thread = new Thread (QueryRows);

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers