public interface Delta
|Modifier and Type||Method and Description|
This method is invoked on an existing application object when an update is received as a delta.
By default, entry sizes are not recalculated when deltas are applied.
Returns true if this object has pending changes it can write out as a delta.
This method is invoked on an application object at the delta sender, if GemFire determines the presence of a delta by calling
void toDelta(DataOutput out) throws IOException
hasDelta()on the object. The delta is written to the
DataOutputobject provided by GemFire.
Any delta state should be reset in this method.
DataOutputto write to
IOException- if a problem occurs while writing to
void fromDelta(DataInput in) throws IOException, InvalidDeltaException
InvalidDeltaExceptionwhen the delta in the
DataInputcannot be applied to the object. GemFire automatically handles an
InvalidDeltaExceptionby reattempting the update by sending the full application object.
DataInputto read from
IOException- if a problem occurs while reading from
default boolean getForceRecalculateSize()
There is a system property, gemfire.DELTAS_RECALCULATE_SIZE, which can be used to cause all deltas to trigger entry size recalculation when deltas are applied. By default, this is set to 'false' because of potential performance impacts when every delta triggers a recalculation.
To allow entry size recalculation on a per-delta basis, classes that extend the Delta interface should override this method to return 'true'. This may impact performance of specific delta types, but will not globally affect the performance of other Geode delta operations.