The rule is, if you deserialize the object in the server side, Geode keeps
the deserialized version of it around.

As for updating in place...this is the position that the docs for
Commercial GemFire take on that subject:

"If you do not have the cache copy-on-read attribute set to true, do not
change the objects returned from the Java entry access methods. Instead,
create a copy of the object, then modify the copy and pass it to the Java
put method. Modifying a value in place bypasses the entire distribution
framework provided by GemFire, including cache listeners and expiration
activities, and can produce undesired results."

Of course if that's exactly the behavior you WANT, then set
copy-on-read=false.



--
Mike Stolz
Principal Engineer, GemFire Product Manager
Mobile: +1-631-835-4771

On Wed, Mar 8, 2017 at 1:37 AM, Deepak Dixit <deepakdixit2...@gmail.com>
wrote:

> Hello Geode Team,
>
> I am working on a use case where I want to store the java object. I want to
> avoid the serialization and deserialization while reading on server
> (function execution).
> Also while updating I would like to update in-place rather than to create
> copy of object, modify and store it again in underlying map.
>
> Based on my current understanding, every object is wrapped in
> "VMCachedDeserializable" and serialized / deserialized while doing get/put.
>
> Kindly advice the way with which I can store object in deserialized form in
> cache and do in place modifications.
>
> Thanks,
> Deepak
>

Reply via email to