On Mon, Mar 2, 2009 at 9:24 AM, Yves Jaradin <[email protected]>wrote:

> Torsten Anders a écrit :
>
>> Hi,
>>
>> On Aug 19, 2008, at 10:24 AM, Torsten Anders wrote:
>>
>>> On Aug 19, 2008, at 9:39 AM, Yves Jaradin wrote:
>>>
>>>> Torsten Anders a écrit :
>>>>
>>>>> Are the pickles of Mozart 1.3.* and 1.4.* incompatible?
>>>>>
>>>> Yes they are incompatible.
>>>>
>>>
>>
>> I have been repeatedly been bitten by this issue meanwhile. Is there any
>> design reason for this incompatibility?
>>
> Partially.
> The marshaller is common to the pickling subsystem and the distribution
> subsystem. Because of the large changes in the distribution subsystem in
> 1.4.0, the marshaller version had to be bumped wich, as a side effect, made
> the pickles incompatible. I think most, if not all, 1.3.2 pickles could be
> used in 1.4.0 if it wasn't for the format version (two bytes in the first
> few of the pickle). But the other way there will be some problems (e.g. if
> you pickled sites).


To be more precise, both the marshaler and the pickler share a common code
base.  They essentially differ on how they handle language entities that may
have a distributed behavior: variables, stateful entities, stateless
entities that are not copied across sites.

If I am not mistaken, all the stateless entities that can be copied across
sites are pickled just like in Mozart 1.3.2.  So I think that the pickler in
Mozart 1.4.0 is able to unpickle pickles made with Mozart 1.3.2.  The other
way around is not possible, though.  Someone should check the code to
validate this statement, and maybe relax the version compatibility test to
allow it.  (I vaguely remember to have tried it, but could not find any
trace.)

However, the marshaler is not backward-compatible, and should not be.  This
is because the distribution layer is completely different.  The marshaling
has been redesigned from scratch to cope with the new distribution features
(different protocols, new distributed garbage collectors, different
coordination architecture).

Cheers,
raph
_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to