[Mono-dev] mono contains a bug for version 1.1.13-6 and 1.1.14 ; This might be the case for version above 1.1.8-3

Zoltan Varga vargaz at gmail.com
Tue Jun 6 12:45:41 EDT 2006


                                   Hi,

  Your application depends on the Thread.Interrupt () method which is not
implemented in mono. In previous versions, it did nothing, in later versions it
throws a NotImplementedException to alert users to the fact that it is not
implemented.

            Zoltan


On 6/6/06, Saliou, Lionel <L.Saliou at napier.ac.uk> wrote:
>
>
>
> Dear all,
>
>  I have been developping a bunch of client/server applications for my
> research. In a nutshell, the client is tasked to contact the servers around
> the network, have them perform a bunch of tasks, retrieve/archive the
> results, and close the connection. All the application are developped in C#
> .NET; the client application typically runs on a Windows XP type machine
> whereas the servers run on Ubuntu Linux hosts (both Breezy Badger and Dapper
> Drake). The linux hosts all have custom kernells to 'enhance' performance.
>
>  So far I have developped and tested my applications on a computer running
> Ubuntu Dreezy 5.10 and mono-1.1.8-3 (default version available with Breezy),
> and everything works fine. However, if I do run the applications using
> another version of mono (1.1.13-6 [default version of Dapper) or 1.1.14), my
> applications crash. Apparently, this is due to some event within my
> applications that is not handled????  Here is a sample of what is going on
> using version 1.1.8-3 in the first instance then 1.1.14
>
>  [SCREEN CAPTURE]
>  [mono versions]
>  lionel at arthemis:~/Projects/dotNetTest$ mono -V
>  Mono JIT compiler version 1.1.14, (C) 2002-2005 Novell, Inc and
> Contributors. ww w.mono-project.com
>          TLS:           normal
>          GC:            Included Boehm (with typed GC)
>          SIGSEGV:       normal
>          Disabled:      none
>  lionel at arthemis:~/Projects/dotNetTest$ which mono
>  /home/lionel/mono-1.1.14/bin/mono
>  lionel at arthemis:~/Projects/dotNetTest$ sudo mono -V
>  Mono JIT compiler version 1.1.8.3, (C) 2002-2005 Novell, Inc and
> Contributors. w ww.mono-project.com
>          TLS:           __thread
>          GC:            Included Boehm (with typed GC)
>          SIGSEGV      : normal
>          Globalization: normal
>  lionel at arthemis:~/Projects/dotNetTest$ sudo which mono
>  /usr/bin/mono
>  [/mono versions]
>  [TEST 1]
>  lionel at arthemis:~/Projects/dotNetTest$ ls
>  CMCSNetworking.dll  CMCSUtilities.dll  LinuxSlave_v4.exe  old
>  lionel at arthemis:~/Projects/dotNetTest$ which sudo mono
>  /usr/bin/mono
>  lionel at arthemis:~/Projects/dotNetTest$ sudo mono LinuxSlave_v4.exe
>  Note, this application is a test ...
>  Linux Slave v4> hping
>  Starting HPing Service...
>  This machine Name : arthemis
>  This machine IP Address : *.*.*.13
>  Server is online on port :2048
>  Starting up Server...
>  Maximum allowed number of connection : 1
>  Note, this application is a test ...
>  Linux Slave v4>
>  Receiving connection requestion from Client (*.*.*.87:1569)
>  message =*.*.*.87 -c 20|2
>  strParameters = *.*.*.87 -c 20
>  iNbOfIteration = 2
>
>  --- *.*.*.87 hping statistic ---
>  20 packets transmitted, 20 packets received, 0% packet loss
>  round-trip min/avg/max = 0.5/0.6/0.8 ms
>  [output from HPING omitted]
>
>  --- *.*.*.87 hping statistic ---
>  20 packets transmitted, 20 packets received, 0% packet loss
>  round-trip min/avg/max = 0.5/0.5/0.7 ms
>  [output from HPING omitted]
>  Breaking out!
>  Management pool number : 0
>
>  Linux Slave v4>
>  [/TEST 1]
>
>  [TEST 2]
>  lionel at arthemis:~/Projects/dotNetTest$ ls
>  CMCSNetworking.dll  CMCSUtilities.dll  LinuxSlave_v4.exe  old
>  lionel at arthemis:~/Projects/dotNetTest$ which mono
>  /home/lionel/mono-1.1.14/bin/mono
>  lionel at arthemis:~/Projects/dotNetTest$ sudo ~/mono-1.1.14/bin/mono
> LinuxSlave_v4.exe
>  Note, this application is a test ...
>  Linux Slave v4> hping
>  Starting HPing Service...
>  This machine Name : arthemis
>  This machine IP Address : *.*.*.13
>  Server is online on port :2048
>  Starting up Server...
>  Maximum allowed number of connection : 1
>  Note, this application is a test ...
>  Linux Slave v4>
>  Receiving connection requestion from Client (*.*.*.87:1432)
>  message =*.*.*.87 -c 20|2
>  strParameters = *.*.*.87 -c 20
>  iNbOfIteration = 2
>
>  --- *.*.*.87 hping statistic ---
>  20 packets transmitted, 20 packets received, 0% packet loss
>  round-trip min/avg/max = 0.5/0.6/0.8 ms
>  [output from HPING omitted]
>
>  --- *.*.*.87 hping statistic ---
>  20 packets transmitted, 20 packets received, 0% packet loss
>  round-trip min/avg/max = 0.5/0.5/0.7 ms
>  [output from HPING omitted]
>  Breaking out!
>  Management pool number : 0
>
>  Unhandled Exception: System.NotImplementedException: The requested feature
> is not implemented.in <0x0001d>
> System.Threading.Thread:Interrupt ()
>  in <0x0001d> CMCS.Networking.GenServerReceive:Stop ()
>  in <0x0001d> CMCS.Networking.Connection:Stop ()
>  in <0x0009a>
> CMCS.Networking.GenericServer:manageClientPool
> (CMCS.Networking.myEventArgs sender)in (wrapper delegate-invoke)
> System.MulticastDelegate:invoke_void_myEventArgs
> (CMCS.Networking.myEventArgs)in <0x00011>
> CMCS.Networking.Connection:serverNotice
> (CMCS.Networking.myEventArgs Evt)in <0x0000d>
> CMCS.Networking.Connection:serverReceive_LostConnection
> (CMCS.Networking.myEventArgs Evt)in (wrapper delegate-invoke)
> System.MulticastDelegate:invoke_void_myEventArgs
> (CMCS.Networking.myEventArgs)in <0x00011>
> CMCS.Networking.GenServerReceive:lostConnectionNotify
> (CMCS.Networking.myEventArgs Evt)in <0x0016c>
> CMCS.Networking.GenServerReceive:Run ()
>  in (wrapper delegate-invoke)
> System.MulticastDelegate:invoke_void ()
>  [/TEST 2]
>  [/SCREEN CAPTURE]
>
>  I could live with a warning but not with a problem that stops my
> applications from cleaning/closing the underlying sockets and so on. As you
> can see my applications are configured to accept one connection at a time,
> hence the client comes back from the next batch of task it gets rejected
> puting my experiments in jeopardy. Please note that the exact same error
> occurs in 1.1.13-6 (Dapper Drake), and also note that once 1.1.8-3 is
> installed on Ubuntu Dapper Drake the application demonstrated in the above
> WORKS!
>
>  Now, I admit the CMCS dlls that you see in the above have been developped
> by yours trully. They allow using TCP connections transparently, and ONE
> event is used/raised to trigger the connection pool management (without this
> features my programs don't clean their connection pool and thus I can easily
> be DDoS'd ). They also force developpers to respect the various protocols
> that I defined. But frankly, I don't see why my stuff would work on
> mono-1.1.8-3 but not on other versions, such as 1.1.13 and 1.1.14 .
>
>  To make sure that this is not due to the compiler, LinuxSlaves have been
> compiled under both Windows XP (using Visual Studio 2003) and MonoDevelop...
> but not that does not seem to change anything.
>
>  Honnestly, I don't have the first clue about what is wrong! However, my
> fellow researchers and I would like to have this fixed for all version of
> mono because otherwise that will force us to "freeze" our test bench which
> could become problematic in the long run.
>
>  I do hope that there is a simple fix to this.
>
>  Thanks a lot.
>
>  Lionel This message is intended for the addressee(s) only and should not be
> read, copied or disclosed to anyone else outwith the University without the
> permission of the sender.
> It is your responsibility to ensure that this message and any attachments
> are scanned for viruses or other defects. Napier University does not accept
> liability for any loss
> or damage which may result from this email or any attachment, or for errors
> or omissions arising after it was sent. Email is not a secure medium. Email
> entering the
> University's system is subject to routine monitoring and filtering by the
> University.
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>
>



More information about the Mono-devel-list mailing list