----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/39554/ -----------------------------------------------------------
Review request for geode, anilkumar gingade, Jason Huynh, Jianxia Chen, and Lynn Gallinat. Repository: geode Description ------- To date we have not had issues with old clients using a different on-wire format for any of the arguments they transmit to servers. With the introduction of a new version of JGroups we now have a different on-wire format for InternalDistributedMember, so we need to do more careful deserialization of data transmitted in client Message objects. This change-set modifies Message to pass on its version information to the Part objects it contains. The Part objects can then create the appropriate versioned DataInput stream for the client that transmitted the Message. I also left in place a debug-level EOF log message in BaseCommand so we can track down problems like this. The handling of EOF exceptions seems to assume that the client disappeared but in the case I observed it was a deserialization error. Diffs ----- gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java 3f85cda6ff88a075a3474e5f688bf87967f0ecd1 gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/BaseCommand.java 5e35ce471254c29b919d78e2f69b117c51046b5c gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/Message.java b274ec5c8a3ab67d8f80f64bebc32464996a3e30 Diff: https://reviews.apache.org/r/39554/diff/ Testing ------- all unit tests, backward-compatibility integration testing Thanks, Bruce Schuchardt
