[omniORB] omniORBpy sequence float bug under Windows

Gary Duzan gduzan at bbn.com
Thu May 29 11:22:20 BST 2003


In Message <488C02265C6AD611BF200002A542182F0262E719 at irnts22.ifp.fr> ,
   CEZARD Yann <Yann.CEZARD at ifp.fr> wrote:

=>Hi !
=>
=>I have a bug under Windows NT using omniORBpy 2.1.
=>The problem is when retrieving a float sequence, some
=>of the values are not the same on the two sides of the CORBA bus...
=>Eg : 
=>323.554656982 on "client" side and 323.054657 on "server" side...
=>771.781188965 on "client" side and 770.781189 on "server" side...
=>771.820251465 on "client" side and 770.820251 on "server" side...
=>1198.21862793 on "client" side and 1196.218628 on "server" side...
=>
=>As you can see, the "client" value has (quite) exactly +0.5, +1, +1
=>and +2 than the server "value". This is quite strange, and I can't
=>understand from where it comes. There are also other differences but
=>"less speaking" (I mean not like +1, +2 or +.5).
=>
=>This doesn't happen when running the client under Linux.
=>
=>The "server" side ORB is JacORB.
=>
=>Any hints ?

   I was intrigued by this bug and explored it a bit. It doesn't look
like omniORBpy is doing anything wrong, and I doubt that JacORB is broken
since the float conversion operator is built into Java. I think I've
spent more time than I should on it already, but my current suspicion is
that PyFloat_AS_DOUBLE() might be broken in your version of Python for
Windows. If you can, maybe try a newer (or older) Python version and see
if things change.
   Good luck...

   					Gary Duzan
					BBN Technologies
					A Verizon Company





More information about the omniORB-list mailing list