GEM-111: Cannot use 8.0.0.9+ clients with 8.1+ servers Added support for version 8009
Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/e1eb74ef Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/e1eb74ef Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/e1eb74ef Branch: refs/heads/feature/GEODE-11 Commit: e1eb74effef800fa67db1c4010ecd67f05ea3b6b Parents: b313362 Author: Barry Oglesby <[email protected]> Authored: Mon Nov 2 17:42:43 2015 -0800 Committer: Barry Oglesby <[email protected]> Committed: Tue Nov 10 10:26:06 2015 -0800 ---------------------------------------------------------------------- .../src/main/java/com/gemstone/gemfire/internal/Version.java | 5 +++++ .../gemfire/internal/cache/tier/sockets/CommandInitializer.java | 4 ++++ .../internal/cache/tier/sockets/command/ExecuteFunction66.java | 2 +- .../cache/tier/sockets/command/ExecuteRegionFunction66.java | 2 +- .../tier/sockets/command/ExecuteRegionFunctionSingleHop.java | 2 +- 5 files changed, 12 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/e1eb74ef/gemfire-core/src/main/java/com/gemstone/gemfire/internal/Version.java ---------------------------------------------------------------------- diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/Version.java b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/Version.java index 936ae79..8726ba8 100644 --- a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/Version.java +++ b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/Version.java @@ -175,6 +175,11 @@ public final class Version implements Comparable<Version> { // 31-34 available for 8.0.x variants + private static final byte GFE_8009_ORDINAL = 31; + + public static final Version GFE_8009 = new Version("GFE", "8.0.0.9", (byte)8, + (byte)0, (byte)0, (byte)9, GFE_8009_ORDINAL); + private static final byte GFE_81_ORDINAL = 35; public static final Version GFE_81 = new Version("GFE", "8.1", (byte)8, http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/e1eb74ef/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CommandInitializer.java ---------------------------------------------------------------------- diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CommandInitializer.java b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CommandInitializer.java index 7e49d7a..26ed47b 100755 --- a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CommandInitializer.java +++ b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/CommandInitializer.java @@ -301,6 +301,10 @@ public class CommandInitializer { gfe80Commands.put(MessageType.PUTALL, PutAll80.getCommand()); ALL_COMMANDS.put(Version.GFE_80, gfe80Commands); + Map<Integer, Command> gfe8009Commands = new HashMap<Integer, Command>(); + gfe8009Commands.putAll(ALL_COMMANDS.get(Version.GFE_80)); + ALL_COMMANDS.put(Version.GFE_8009, gfe8009Commands); + { Map<Integer, Command> gfe81Commands = new HashMap<Integer, Command>(); gfe81Commands.putAll(ALL_COMMANDS.get(Version.GFE_80)); http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/e1eb74ef/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteFunction66.java ---------------------------------------------------------------------- diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteFunction66.java b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteFunction66.java index 3baac92..9160c11 100644 --- a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteFunction66.java +++ b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteFunction66.java @@ -108,7 +108,7 @@ public class ExecuteFunction66 extends BaseCommand { try { byte[] bytes = msg.getPart(0).getSerializedForm(); functionState = bytes[0]; - if (bytes.length >= 5 && servConn.getClientVersion().ordinal() >= Version.GFE_81.ordinal()) { + if (bytes.length >= 5 && servConn.getClientVersion().ordinal() >= Version.GFE_8009.ordinal()) { functionTimeout = Part.decodeInt(bytes, 1); } http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/e1eb74ef/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunction66.java ---------------------------------------------------------------------- diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunction66.java b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunction66.java index 329332b..6d9ca49 100644 --- a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunction66.java +++ b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunction66.java @@ -90,7 +90,7 @@ public class ExecuteRegionFunction66 extends BaseCommand { try { byte[] bytes = msg.getPart(0).getSerializedForm(); functionState = bytes[0]; - if (bytes.length >= 5 && servConn.getClientVersion().ordinal() >= Version.GFE_81.ordinal()) { + if (bytes.length >= 5 && servConn.getClientVersion().ordinal() >= Version.GFE_8009.ordinal()) { functionTimeout = Part.decodeInt(bytes, 1); } if (functionState != 1) { http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/e1eb74ef/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunctionSingleHop.java ---------------------------------------------------------------------- diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunctionSingleHop.java b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunctionSingleHop.java index 1c18cb1..15b01fc 100644 --- a/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunctionSingleHop.java +++ b/gemfire-core/src/main/java/com/gemstone/gemfire/internal/cache/tier/sockets/command/ExecuteRegionFunctionSingleHop.java @@ -88,7 +88,7 @@ public class ExecuteRegionFunctionSingleHop extends BaseCommand { try { byte[] bytes = msg.getPart(0).getSerializedForm(); functionState = bytes[0]; - if (bytes.length >= 5 && servConn.getClientVersion().ordinal() >= Version.GFE_81.ordinal()) { + if (bytes.length >= 5 && servConn.getClientVersion().ordinal() >= Version.GFE_8009.ordinal()) { functionTimeout = Part.decodeInt(bytes, 1); } if(functionState != 1) {
