Changes in marshalling code between 0.5.3 and 0.5.6?



  Hello people,

[Cc: to the ORBit-Python developers list]

  As a developer for ORBit-Python, a Python binding for ORBit, I'm
encountering a problem.  You could even call that a bug, but I'm not
casting the blame to anyone (yet >:-] ).

  Basically, I get warnings like
** WARNING **: incomplete message received
in my client, which results in a segmentation fault in the client.
The server seems to run OK (no segfault).

  But, where this becomes interesting is that this behaviour appears
with ORBit 0.5.6, I seem to remember it also did with 0.5.5, and it
does not happen with 0.5.3 (I kept that one because I knew it worked).
Compile and run with 0.5.3 OK, compile and run with 0.5.6 -> segfault.
The same ORBit-Python source, the same test case.

  The test-case is the following:

typedef sequence<long> seq ;
interface Instance {
[...]
  seq gimme_list ();
};

  The test server picks a random number n, say n=4, and returns the
sequence (0, 1, 2, 3).  When n=0 (empty list), the call returns OK,
result is an empty list as expected.  When n=1 (list with only one
element, the long 0), the call returns OK, the result is the list
containing one element, that is 0, as expected.  When n>1, shit
happens with 0.5.6, not with 0.5.3.

  Let's change seq to be a sequence<short>.  The limit is now 3: n<=3
OK, n>3 NOK.  long long?  n=0 OK, n>0 NOK.  float?  n<=1 OK, n>1 NOK.
For strings, the problem seems a bit different, and the limit depends
on the length of the strings that the server returns.

  So, I'd be interested in knowing what changes were made in the
marshalling code.  What I'd love most of all would be someone standing
up and saying "Yea, I plead guilty, silly bug, here's the two-line
patch to ORBit", but I won't hold my breath for it.  The size
limitation induces me into thinking that there's some buffer size
problem somewhere...  I will once again review the marshalling code in
ORBit-Python, but I'd be inclined to think it is correct (after all,
it works with an older ORBit, doesn't it?).

  Thanks for your attention,

Roland.
-- 
Roland Mas

Mou ichido !  Hayaku !  Ookii koede !
  -- Atsuko Sasaki




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]