[ https://issues.apache.org/jira/browse/GEODE-8142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Darrel Schneider resolved GEODE-8142. ------------------------------------- Resolution: Won't Do I looked into doing this but a couple of things about the callback arg makes it less than ideal for this solution. # Callback args are themselves distributed so we could end up transmitting it once as the Delta and once as the callback arg. # In some cases the implementation may not make the callback arg available in which case it would be null. > Enhance the Delta interface to support callbackArgs > --------------------------------------------------- > > Key: GEODE-8142 > URL: https://issues.apache.org/jira/browse/GEODE-8142 > Project: Geode > Issue Type: Improvement > Components: core > Reporter: Darrel Schneider > Assignee: Darrel Schneider > Priority: Major > > The Geode Delta interface allows for a subset of the actual data to > distributed to redundant copies when storing data in a Geode region. It > requires you to implement hasDelta, toDelta, and fromDelta on your domain > class. In most cases when you implement these methods you find you need to > add some additional instance variables to your domain class just for hasDelta > and toDelta to read. So Delta saves you in how much data needs to be > serialized for distribution, but it may hurt you in how much memory your > domain object uses. > Geode has another concept call a "callbackArg". It is an extra parameter that > can be passed to the Region methods, that will in turn be given to various > callbacks that the user has installed. > I propose we enhance hasDelta and toDelta to have a form of the method that > is given the callback argument. The default implementation of this method > would just be to ignore the callback arg and call the old method. But this > would allow users to to override the new methods and have all the delta > information passed to them as a callback argument. Since the callback arg is > garbage collected after the operation it was given to completes, this would > allow Delta to be implemented without introducing extra long lived memory > overhead. > I have looked at the places Geode currently calls hasDelta and toDelta > internally, and the callback argument is available in those contexts so this > would be a rather easy feature to add. > I know that the Geode Redis API project could benefit from it. -- This message was sent by Atlassian Jira (v8.3.4#803005)