On Apr 27, 8:01 pm, "[EMAIL PROTECTED]"
<[EMAIL PROTECTED]> wrote:
> The test fails because the elements of  an SDO list inside a complex
> type seem to be deleted when xmlrpc_encode_request is called on the
> SDO. There are no other references to the SDO, and the list is deleted
> when convert_to_array(sdo) is called by xmlrpc_encode_request. If the
> test retains another reference to the sdo, then it works fine. But I
> think the list should not get deleted. Here is a simple test which
> illustrates the problem, without using xmlrpc.
>
> The test creates an sdo which contains a list, and prints it before
> and after it is converted to an array. After the conversion, the field
> intArrayValue is empty. I would have expected to see an array with
> three integers.
>
> This can be fixed inside XMLRPC binding and the tests, but I think it
> should be fixed in the SDO implementation.

Rajini, you are right, there is a problem here. I'm not sure if it was
caused by a Tuscany change or simply exposed by my efforts to clear
out memory leaks of Tuscany DataObjects, probably the latter. The
problem is that Tuscany SDOLists are not reference-counted like
Tuscany SDODataObjects. So if, as in your example, you unset the only
reference to the DataObject, it disappears, taking the tree below with
it. If your $obj referred to a single-valued DataObject this would not
be a problem, because you're still holding a reference to it, but
holding a reference to the list doesn't make any difference.

I've checked in a fix to work round this for now, where the PHP
SDO_List holds a reference to the Tuscany SDOList's containing
DataObject as well as the list itself. This should fix the problem
you're seeing. I'll also start a dialogue with the Tuscany team about
how this is supposed to work.


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"phpsoa" group.
To post to this group, send email to phpsoa@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.co.uk/group/phpsoa?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to