You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Mario Salazar de Torres (Jira)" <ji...@apache.org> on 2022/01/17 11:18:00 UTC

[jira] [Created] (GEODE-9968) Fix deserialization for new fields in PdxSerializable class

Mario Salazar de Torres created GEODE-9968:
----------------------------------------------

             Summary: Fix deserialization for new fields in PdxSerializable class
                 Key: GEODE-9968
                 URL: https://issues.apache.org/jira/browse/GEODE-9968
             Project: Geode
          Issue Type: Bug
          Components: native client
            Reporter: Mario Salazar de Torres


*GIVEN* an implementation of a PdxSerializable class
*WHEN* a set of entries have been written for this class
*AND* after a while, the implementation changes, adding new fields
*AND* a new set of entries are written containing some of the added fields
*AND* all of the region entries are read
*THEN* added fields of the latest entries are empty or contain garbage instead
----
*Additional information.* After analyzing Java implementation for PdxSerializable deserialization, it seems that the client fetches the PdxFields from the remote PdxType, but instead for the C++ implementation, code is different as it uses a mapping called "Local2Remote" (which I suppose it's an optimization). And the current use of this "Local2Remote" mapping is not working correctly under the described scenario.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)