Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-7794

__GEMFIRE_JSON PDX type has invalid PdxType

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.13.0
    • Component/s: native client
    • Labels:
      None

      Description

      The native client is built on the presumption that class name is unique. Since the introduction of __GEMFIRE_JSON, that is no longer the case. Where the logic presumes it can use cached deserialization rules in the form of a PdxType, looked up by name, this is no longer the case.

       

      What we have observed is if a cache instance does not have a PdxType for a __GEMFIRE_JSON class instance, the first get and deserialization will succeed, but all subsequent gets will result in an empty PdxWrapper.

       

      Steps to reproduce:

        1) Instantiate an instance of Cache.

        2) Put a PDX value with class name __GEMFIRE_JSON.

        3) Instantiate a second instance of Cache.

        4) Use this cache to make two consecutive gets of the PDX value. Inspect the results.

       

      Observations:

        1) The first get will succeed in returning an instance of PdxInstance with the expected fields and values as per step #2.

        2) The second get will return a PdxWrapper of class name __GEMFIRE_JSON and a user object of null.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                mreddington Matthew Reddington
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 20m
                  1h 20m