From 7cd0475c70ca5d149a6d822541063dabc39835f4 Mon Sep 17 00:00:00 2001 From: Amey Barve Date: Mon, 5 Dec 2016 11:56:25 +0530 Subject: [PATCH 1/2] GEODE-1835 : logging a warning message by the configure pdx command only when there are members in the distributed system. --- .../geode/management/internal/cli/commands/PDXCommands.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PDXCommands.java b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PDXCommands.java index 9f7afc15a9ed..c5e9a4e26a79 100644 --- a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PDXCommands.java +++ b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/PDXCommands.java @@ -86,7 +86,7 @@ public Result configurePDX(@CliOption(key = CliStrings.CONFIGURE_PDX__READ__SERI && (patterns != null && patterns.length > 0)) { return ResultBuilder.createUserErrorResult(CliStrings.CONFIGURE_PDX__ERROR__MESSAGE); } - if (CliUtil.getAllNormalMembers(CliUtil.getCacheIfExists()).isEmpty()) { + if (!CliUtil.getAllNormalMembers(CliUtil.getCacheIfExists()).isEmpty()) { ird.addLine(CliStrings.CONFIGURE_PDX__NORMAL__MEMBERS__WARNING); } // Set persistent and the disk-store From 150c3da92e1bb23d6c251ee728033dc88b235e2d Mon Sep 17 00:00:00 2001 From: Amey Barve Date: Mon, 5 Dec 2016 18:24:18 +0530 Subject: [PATCH 2/2] GEODE-1835 : unit test to verify a warning message by the configure pdx command only when there are members in the distributed system. --- .../ClusterConfigurationDUnitTest.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java b/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java index 3f7b07310f84..2677900de910 100644 --- a/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java +++ b/geode-wan/src/test/java/org/apache/geode/management/internal/configuration/ClusterConfigurationDUnitTest.java @@ -614,6 +614,15 @@ public String description() { }); } + @Test + public void testConfigurePDXForWarning() throws Exception { + setup(); + CommandResult commandResult = configurePDX("com.foo.*", "true", "true", null, "true"); + String result = (String) commandResult.getResultData().getGfJsonObject() + .getJSONObject("content").getJSONArray("message").get(0); + assertEquals(CliStrings.CONFIGURE_PDX__NORMAL__MEMBERS__WARNING, result); + } + private Object[] setup() throws IOException { final int[] ports = getRandomAvailableTCPPorts(3); final int locator1Port = ports[0]; @@ -800,13 +809,14 @@ private void alterRegion(String regionName, String cloningEnabled, String aeqId, executeAndVerifyCommand(csb.getCommandString()); } - private void executeAndVerifyCommand(String commandString) { + private CommandResult executeAndVerifyCommand(String commandString) { CommandResult cmdResult = executeCommand(commandString); org.apache.geode.test.dunit.LogWriterUtils.getLogWriter().info("Command : " + commandString); org.apache.geode.test.dunit.LogWriterUtils.getLogWriter() .info("Command Result : " + commandResultToString(cmdResult)); assertEquals(Status.OK, cmdResult.getStatus()); assertFalse(cmdResult.failedToPersist()); + return cmdResult; } private void createIndex(String indexName, String expression, String regionName, String group) { @@ -939,7 +949,7 @@ private void createAsyncEventQueue(String id, String persistent, String diskStor } } - private void configurePDX(String autoSerializerClasses, String ignoreUnreadFields, + private CommandResult configurePDX(String autoSerializerClasses, String ignoreUnreadFields, String persistent, String portableAutoSerializerClasses, String readSerialized) { CommandStringBuilder csb = new CommandStringBuilder(CliStrings.CONFIGURE_PDX); csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__AUTO__SERIALIZER__CLASSES, @@ -950,7 +960,8 @@ private void configurePDX(String autoSerializerClasses, String ignoreUnreadField csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__PORTABLE__AUTO__SERIALIZER__CLASSES, portableAutoSerializerClasses); csb.addOptionWithValueCheck(CliStrings.CONFIGURE_PDX__READ__SERIALIZED, readSerialized); - executeAndVerifyCommand(csb.getCommandString()); + + return executeAndVerifyCommand(csb.getCommandString()); } private void createAndDeployJar(String jarName, String group) throws IOException {