[ 
https://issues.apache.org/jira/browse/GEODE-6272?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16744434#comment-16744434
 ] 

ASF subversion and git services commented on GEODE-6272:
--------------------------------------------------------

Commit 56fda39a8ab41fc9ffeddb3da13322eaa1516084 in geode's branch 
refs/heads/develop from Darrel Schneider
[ https://gitbox.apache.org/repos/asf?p=geode.git;h=56fda39 ]

GEODE-6272: change jdbc to use pdx as keys instead of json (#3076)

Composite keys for the jdbc connector must now be PdxInstances created with 
"neverDeserialize".

* added PdxInstanceFactory.neverDeserialize and PdxInstance.isDeserializable as 
new external APIs.

* improved the InternalPdxInstance interface to include Sendable.
Also this interface is now implemented by the pdx enum classes.
So now all classes that implement PdxInstance also implement InternalPdxInstance

* getCacheObject is now on the InternalPdxInstance interface.

* getRawField is now in the InternalPdxInstance interface.
A method that was on PdxInstanceImpl but only used by AttributeDescriptor
and that did not use any PdxInstanceImpl data is now on AttributeDescriptor.
This also got rid of a singleton lookup of the cache.

* removed unused FieldNotFoundInPdxVersion

* removed PdxFieldNotFoundException


> the JDBC connector should use PDX instances instead of JSON for composite keys
> ------------------------------------------------------------------------------
>
>                 Key: GEODE-6272
>                 URL: https://issues.apache.org/jira/browse/GEODE-6272
>             Project: Geode
>          Issue Type: Improvement
>          Components: docs, extensions
>            Reporter: Darrel Schneider
>            Assignee: Darrel Schneider
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 1h 50m
>  Remaining Estimate: 0h
>
> *As a* GemFire user with composite keys
> *I want to* to replace JSON with PDX for these keys
> *so that I can* support any order for the keys and have minimal memory impact.
> ----
> *Acceptance Criteria:*
> *Given* a jdbc-mapping uses a composite key
> *When* I do CRUD operations on data in the region
> *Then* I must specify the key as a "stable" PDX instance that contains fields 
> that match those specified by {{--id}}.
> *Given* an existing cache with a jdbc-mapping that uses a composite key
> *When* I want to specify a composite key for a CRUD operation
> *Then* I have a method on the cache to create a "stable" PDX instance.
> *Given* an existing cache with a jdbc-mapping that uses a composite key
> *When* I want to specify a composite key for a CRUD operation
> *Then* I have a method on the cache to create a "stable" PDX instance and the 
> order of fields in the composite key doesn't matter.
> *Given* an existing cache with pdx-read-serialized is set to false
> *When* I do an operation that triggers deserialization of a "stable" PDX 
> instance
> *Then* the "stable" PDX instance will be deserialized as the same "stable" 
> PDX instance.
> *Given* a "stable" PDX instance
> *When* I call its getObject method
> *Then* it will return the same "stable" PDX instance.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to