@Override
  public void toDelta(DataOutput out) throws IOException {
    try {
      DataSerializer.writeByte(deltaBits, out);
      GemFireCacheImpl.getInstance().getLogger().fine("Extracting delta from " + this);
      if ((deltaBits & INT_MASK) == INT_MASK) {
        GemFireCacheImpl.getInstance().getLogger()
            .fine(" Extracted delta from DeltaObj's field 'intVal' = " + intVal);
        DataSerializer.writePrimitiveInt(intVal, out);
      }
      if ((deltaBits & BIG_OBJECT_MASK) == BIG_OBJECT_MASK) {
        GemFireCacheImpl.getInstance().getLogger()
            .fine(" Extracted delta from DeltaObj's field 'bigObj' = {" + bigObj[0] + " "
                + bigObj[1] + "}");
        DataSerializer.writeByteArray(bigObj, out);
      }
      if ((deltaBits | COMPLETE_MASK) != COMPLETE_MASK) {
        GemFireCacheImpl.getInstance().getLogger().fine(" <unknown field code>");
        throw new IllegalArgumentException("DeltaImpl.toDelta(): Unknown field code, " + deltaBits);
      }
      GemFireCacheImpl.getInstance().getLogger().fine("-----------");
      resetDeltaStatus();
    } catch (IOException ioe) {
      GemFireCacheImpl.getInstance().getLogger().warning("DeltaObj.toDelta(): " + ioe);
      throw ioe;
    } catch (IllegalArgumentException iae) {
      GemFireCacheImpl.getInstance().getLogger().warning("DeltaObj.toDelta(): " + iae);
      throw new InvalidDeltaException(iae);
    }

  }
Faulty delta implementation, raising EndOfFile exception as fromDelta reads more fields then
wrote by toDelta

@since GemFire 6.1
geode-core/src/distributedTest/java/org/apache/geode/internal/cache/tier/sockets/DeltaEOFException.java