You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2022/05/10 14:14:00 UTC
[jira] [Commented] (GEODE-9968) Fix deserialization for new fields in PdxSerializable class
[ https://issues.apache.org/jira/browse/GEODE-9968?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17534350#comment-17534350 ]
ASF GitHub Bot commented on GEODE-9968:
---------------------------------------
gaussianrecurrence commented on PR #910:
URL: https://github.com/apache/geode-native/pull/910#issuecomment-1122454544
Closing this PR as the fix is already covered in GEODE-10276
> 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
> Assignee: Mario Salazar de Torres
> Priority: Major
> Labels: pull-request-available
>
> *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.7#820007)