[geode] 01/01: GEODE-3082 Integrated GenericProtocolServerConnection with ClientHealthMonitor.

2017-09-06 Thread hiteshkhamesra
This is an automated email from the ASF dual-hosted git repository.

hiteshkhamesra pushed a commit to branch feature/GEODE-3082
in repository https://gitbox.apache.org/repos/asf/geode.git

commit e7ca79659a80134a780b426aedc843551b276a84
Author: Alexander Murmann <amurm...@pivotal.io>
AuthorDate: Wed Sep 6 17:03:40 2017 -0700

GEODE-3082 Integrated GenericProtocolServerConnection with 
ClientHealthMonitor.

1. Now GenericProtocolServerConnection creates ClientProxyMembershipId.
2. added test where CHM closes the connection.
3. added test where CHM doesn't close the connection

Signed-off-by: Hitesh Khamesra <hkhame...@pivotal.io>
---
 .../membership/InternalDistributedMember.java  |  2 +-
 .../cache/tier/sockets/ClientHealthMonitor.java|  2 +-
 .../sockets/GenericProtocolServerConnection.java   | 31 -
 .../cache/tier/sockets/ServerConnection.java   |  2 +-
 .../RoundTripCacheConnectionJUnitTest.java | 52 ++
 5 files changed, 85 insertions(+), 4 deletions(-)

diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
index e152756..3deb13c 100755
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
@@ -117,7 +117,7 @@ public class InternalDistributedMember implements 
DistributedMember, Externaliza
* member for use in the P2P cache. Use of other constructors can break
* network-partition-detection.
*
-   * @param i
+   * @param i the intet address
* @param p the membership port
* @param splitBrainEnabled whether this feature is enabled for the member
* @param canBeCoordinator whether the member is eligible to be the 
membership coordinator
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
index 226da8a..c3f9529 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
@@ -100,7 +100,7 @@ public class ClientHealthMonitor {
   /**
* The interval between client monitor iterations
*/
-  final protected static long CLIENT_MONITOR_INTERVAL = 1000;
+  final public static long CLIENT_MONITOR_INTERVAL = 1000;
 
   final private CacheClientNotifierStats stats;
 
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
index 6c81028..f4c4c3e 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
@@ -15,9 +15,13 @@
 
 package org.apache.geode.internal.cache.tier.sockets;
 
+import org.apache.geode.distributed.DistributedMember;
+import org.apache.geode.distributed.internal.ServerLocation;
+import 
org.apache.geode.distributed.internal.membership.InternalDistributedMember;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.tier.Acceptor;
 import org.apache.geode.internal.cache.tier.CachedRegionHelper;
+import org.apache.geode.internal.cache.tier.CommunicationMode;
 import org.apache.geode.internal.security.SecurityService;
 import org.apache.geode.security.SecurityManager;
 import org.apache.geode.security.server.Authenticator;
@@ -26,6 +30,8 @@ import java.io.EOFException;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.net.InetAddress;
+import java.net.InetSocketAddress;
 import java.net.Socket;
 
 /**
@@ -36,6 +42,7 @@ public class GenericProtocolServerConnection extends 
ServerConnection {
   private final ClientProtocolMessageHandler messageHandler;
   private final SecurityManager securityManager;
   private final Authenticator authenticator;
+  private ClientProxyMembershipID clientProxyMembershipID;
 
   /**
* Creates a new GenericProtocolServerConnection that processes 
messages received
@@ -50,6 +57,10 @@ public class GenericProtocolServerConnection extends 
ServerConnection {
 securityManager = securityService.getSecurityManager();
 this.messageHandler = newClientProtocol;
 this.authenticator = authenticator;
+
+setClientProxyMembershipId();
+
+
doHandShake(CommunicationMode.ProtobufClientServerProtocol.getModeNumber(), 0);
   }
 
   @Override
@@ -72,16 +83,34 @@ 

[geode] branch feature/GEODE-3082 created (now e7ca796)

2017-09-06 Thread hiteshkhamesra
This is an automated email from the ASF dual-hosted git repository.

hiteshkhamesra pushed a change to branch feature/GEODE-3082
in repository https://gitbox.apache.org/repos/asf/geode.git.


  at e7ca796  GEODE-3082 Integrated GenericProtocolServerConnection with 
ClientHealthMonitor.

This branch includes the following new commits:

 new e7ca796  GEODE-3082 Integrated GenericProtocolServerConnection with 
ClientHealthMonitor.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


-- 
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <commits@geode.apache.org>'].


geode git commit: Closing pull request for GEODE-3406. Closes #716

2017-08-23 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 1b84ecbe4 -> fa29ec13f


Closing pull request for GEODE-3406. Closes #716


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/fa29ec13
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/fa29ec13
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/fa29ec13

Branch: refs/heads/develop
Commit: fa29ec13f049e39c13ff4e711364e55708ede94d
Parents: 1b84ecb
Author: Hitesh Khamesra 
Authored: Wed Aug 23 11:08:51 2017 -0700
Committer: Hitesh Khamesra 
Committed: Wed Aug 23 11:08:51 2017 -0700

--

--




[6/7] geode git commit: GEODE-3406: Address more PR feedback

2017-08-22 Thread hiteshkhamesra
GEODE-3406: Address more PR feedback

Signed-off-by: Alexander Murmann 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/0cc60434
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/0cc60434
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/0cc60434

Branch: refs/heads/develop
Commit: 0cc60434cd75814e755b88be39af53b32d53faeb
Parents: a4fc1dd
Author: Hitesh Khamesra 
Authored: Fri Aug 18 15:10:47 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Aug 22 10:55:48 2017 -0700

--
 .../internal/tcpserver/TcpServer.java   | 18 +++---
 .../ClientProtoclMessageHandlerLoader.java  | 64 
 .../tier/sockets/MessageHandlerFactory.java | 15 +
 .../cache/tier/sockets/TcpServerFactory.java| 15 +
 .../tier/sockets/TcpServerFactoryTest.java  | 15 +
 5 files changed, 53 insertions(+), 74 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/0cc60434/geode-core/src/main/java/org/apache/geode/distributed/internal/tcpserver/TcpServer.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/tcpserver/TcpServer.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/tcpserver/TcpServer.java
index d471062..83f87ee 100755
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/tcpserver/TcpServer.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/tcpserver/TcpServer.java
@@ -381,16 +381,11 @@ public class TcpServer {
   } else {
 rejectUnknownProtocolConnection(socket, gossipVersion);
   }
-} else {
-  if (gossipVersion <= getCurrentGossipVersion()
-  && GOSSIP_TO_GEMFIRE_VERSION_MAP.containsKey(gossipVersion)) {
-// Create a versioned stream to remember sender's GemFire version
-versionOrdinal = (short) 
GOSSIP_TO_GEMFIRE_VERSION_MAP.get(gossipVersion);
-  } else {
-// Close the socket. We can not accept requests from a newer 
version
-rejectUnknownProtocolConnection(socket, gossipVersion);
-return;
-  }
+} else if (gossipVersion <= getCurrentGossipVersion()
+&& GOSSIP_TO_GEMFIRE_VERSION_MAP.containsKey(gossipVersion)) {
+  // Create a versioned stream to remember sender's GemFire version
+  versionOrdinal = (short) 
GOSSIP_TO_GEMFIRE_VERSION_MAP.get(gossipVersion);
+
   if (Version.GFE_71.compareTo(versionOrdinal) <= 0) {
 // Recent versions of TcpClient will send the version ordinal
 versionOrdinal = input.readShort();
@@ -434,6 +429,9 @@ public class TcpServer {
   }
 
   handler.endResponse(request, startTime);
+} else {
+  // Close the socket. We can not accept requests from a newer version
+  rejectUnknownProtocolConnection(socket, gossipVersion);
 }
   } catch (EOFException ignore) {
 // client went away - ignore

http://git-wip-us.apache.org/repos/asf/geode/blob/0cc60434/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtoclMessageHandlerLoader.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtoclMessageHandlerLoader.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtoclMessageHandlerLoader.java
deleted file mode 100644
index 6654757..000
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtoclMessageHandlerLoader.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
- * agreements. See the NOTICE file distributed with this work for additional 
information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the 
License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software 
distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
- * or implied. See the License for the specific language governing permissions 
and limitations under
- * the License.
- */
-
-package org.apache.geode.internal.cache.tier.sockets;
-
-import java.io.IOException;
-import java.net.Socket;
-import java.util.Iterator;
-import java.util.ServiceLoader;
-
-import 

[3/7] geode git commit: GEODE-3406: Address PR feedback

2017-08-22 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/0eb320fa/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/PutRequestOperationHandlerJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/PutRequestOperationHandlerJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/PutRequestOperationHandlerJUnitTest.java
index 64d9f67..d36ad41 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/PutRequestOperationHandlerJUnitTest.java
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/PutRequestOperationHandlerJUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.protocol.protobuf.operations;
 
 import com.google.protobuf.ByteString;
 import org.apache.geode.cache.Region;
-import org.apache.geode.internal.cache.tier.sockets.ExecutionContext;
+import org.apache.geode.internal.cache.tier.sockets.MessageExecutionContext;
 import 
org.apache.geode.internal.cache.tier.sockets.InvalidExecutionContextException;
 import org.apache.geode.protocol.protobuf.BasicTypes;
 import org.apache.geode.protocol.protobuf.Failure;
@@ -68,7 +68,7 @@ public class PutRequestOperationHandlerJUnitTest extends 
OperationHandlerJUnitTe
   CodecAlreadyRegisteredForTypeException, InvalidExecutionContextException 
{
 PutRequestOperationHandler operationHandler = new 
PutRequestOperationHandler();
 Result result = 
operationHandler.process(serializationServiceStub,
-generateTestRequest(), new ExecutionContext(cacheStub));
+generateTestRequest(), new MessageExecutionContext(cacheStub));
 
 assertTrue(result instanceof Success);
 
@@ -99,7 +99,7 @@ public class PutRequestOperationHandlerJUnitTest extends 
OperationHandlerJUnitTe
 RegionAPI.PutRequest putRequest =
 ProtobufRequestUtilities.createPutRequest(TEST_REGION, 
testEntry).getPutRequest();
 Result result = 
operationHandler.process(serializationServiceStub,
-putRequest, new ExecutionContext(cacheStub));
+putRequest, new MessageExecutionContext(cacheStub));
 
 assertTrue(result instanceof Failure);
 assertEquals(ProtocolErrorCode.VALUE_ENCODING_ERROR.codeValue,
@@ -113,7 +113,7 @@ public class PutRequestOperationHandlerJUnitTest extends 
OperationHandlerJUnitTe
 when(cacheStub.getRegion(TEST_REGION)).thenReturn(null);
 PutRequestOperationHandler operationHandler = new 
PutRequestOperationHandler();
 Result result = 
operationHandler.process(serializationServiceStub,
-generateTestRequest(), new ExecutionContext(cacheStub));
+generateTestRequest(), new MessageExecutionContext(cacheStub));
 
 assertTrue(result instanceof Failure);
 assertEquals(ProtocolErrorCode.REGION_NOT_FOUND.codeValue,
@@ -128,7 +128,7 @@ public class PutRequestOperationHandlerJUnitTest extends 
OperationHandlerJUnitTe
 
 PutRequestOperationHandler operationHandler = new 
PutRequestOperationHandler();
 Result result = 
operationHandler.process(serializationServiceStub,
-generateTestRequest(), new ExecutionContext(cacheStub));
+generateTestRequest(), new MessageExecutionContext(cacheStub));
 
 assertTrue(result instanceof Failure);
 assertEquals(ProtocolErrorCode.CONSTRAINT_VIOLATION.codeValue,

http://git-wip-us.apache.org/repos/asf/geode/blob/0eb320fa/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandlerJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandlerJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandlerJUnitTest.java
index 47d6231..4350ece 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandlerJUnitTest.java
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandlerJUnitTest.java
@@ -16,7 +16,7 @@ package org.apache.geode.protocol.protobuf.operations;
 
 import com.google.protobuf.ByteString;
 import org.apache.geode.cache.Region;
-import org.apache.geode.internal.cache.tier.sockets.ExecutionContext;
+import org.apache.geode.internal.cache.tier.sockets.MessageExecutionContext;
 import 
org.apache.geode.internal.cache.tier.sockets.InvalidExecutionContextException;
 import org.apache.geode.protocol.protobuf.BasicTypes;
 import org.apache.geode.protocol.protobuf.ClientProtocol;
@@ -76,7 +76,7 @@ public class RemoveRequestOperationHandlerJUnitTest extends 
OperationHandlerJUni
   CodecNotRegisteredForTypeException, InvalidExecutionContextException {
 RegionAPI.RemoveRequest removeRequest = generateTestRequest(false, 
false).getRemoveRequest();
 

[2/7] geode git commit: GEODE-3406: Locator accepts Protobuf requests

2017-08-22 Thread hiteshkhamesra
GEODE-3406: Locator accepts Protobuf requests

Also addresses GEODE-3400, GEODE-3399
This allows the locator to respond to Protobuf requests. Currently it
will only be able to respond to getAvailableServers.

To enable this we are introducing a new value of "0" that will be sent
in place of the Gossip version. After it we expect the same magic byte
("110") as in AcceptorImpl.

This also is gated by the `geode.feature-protobuf-protocol` system
property.

The getAvailableServers request handler now uses the locator directly,
since we are on the locator.

Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/530f48f3
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/530f48f3
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/530f48f3

Branch: refs/heads/develop
Commit: 530f48f35a96c4f8af7e51ed03b1ee2e5e150ebd
Parents: be45511
Author: Alexander Murmann 
Authored: Mon Aug 14 15:08:14 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Aug 22 10:52:50 2017 -0700

--
 .../distributed/internal/InternalLocator.java   |   4 +-
 .../distributed/internal/ServerLocator.java |   4 +
 .../internal/tcpserver/TcpServer.java   |  77 +++
 .../geode/internal/cache/InternalCache.java |   4 +-
 .../ClientProtoclMessageHandlerLoader.java  |  64 +
 .../sockets/ClientProtocolMessageHandler.java   |   7 +-
 .../ClientProtocolMessageHandlerLoader.java |  64 +
 .../cache/tier/sockets/ExecutionContext.java|  54 
 .../GenericProtocolServerConnection.java|   3 +-
 .../InvalidExecutionContextException.java   |  33 +
 .../AutoConnectionSourceImplJUnitTest.java  |   8 +-
 .../tcpserver/TCPServerSSLJUnitTest.java|   2 +-
 .../internal/tcpserver/TcpServerJUnitTest.java  |   2 +-
 .../protocol/operations/OperationHandler.java   |   6 +-
 .../protocol/protobuf/ProtobufOpsProcessor.java |  17 ++-
 .../protobuf/ProtobufStreamProcessor.java   |  29 ++--
 .../protocol/protobuf/ProtocolErrorCode.java|   1 +
 .../GetAllRequestOperationHandler.java  |   8 +-
 .../GetAvailableServersOperationHandler.java|  65 ++---
 .../GetRegionNamesRequestOperationHandler.java  |   8 +-
 .../GetRegionRequestOperationHandler.java   |   8 +-
 .../operations/GetRequestOperationHandler.java  |   8 +-
 .../PutAllRequestOperationHandler.java  |   8 +-
 .../operations/PutRequestOperationHandler.java  |   8 +-
 .../RemoveRequestOperationHandler.java  |   9 +-
 .../protocol/GetAvailableServersDUnitTest.java  | 108 ---
 .../RoundTripLocatorConnectionJUnitTest.java| 132 +++
 .../protobuf/ProtobufStreamProcessorTest.java   |   4 +-
 .../GetAllRequestOperationHandlerJUnitTest.java |  18 +--
 ...ailableServersOperationHandlerJUnitTest.java |  97 --
 ...onNamesRequestOperationHandlerJUnitTest.java |  26 ++--
 ...tRegionRequestOperationHandlerJUnitTest.java |  16 ++-
 .../GetRequestOperationHandlerJUnitTest.java|  33 ++---
 .../PutAllRequestOperationHandlerJUnitTest.java |  13 +-
 .../PutRequestOperationHandlerJUnitTest.java|  39 +++---
 .../RemoveRequestOperationHandlerJUnitTest.java |  27 ++--
 36 files changed, 618 insertions(+), 396 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/530f48f3/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index 4725518..8d2daf6 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -315,7 +315,6 @@ public class InternalLocator extends Locator implements 
ConnectListener {
 
   // TODO:GEODE-1243: this.server is now a TcpServer and it should store 
or return its non-zero
   // port in a variable to use here
-
   try {
 newLocator.startPeerLocation(startDistributedSystem);
 if (startDistributedSystem) {
@@ -500,7 +499,7 @@ public class InternalLocator extends Locator implements 
ConnectListener {
 this.stats = new LocatorStats();
 
 this.server = new TcpServer(port, this.bindAddress, null, this.config, 
this.handler,
-new DelayedPoolStatHelper(), group, this.toString());
+new DelayedPoolStatHelper(), group, this.toString(), this);
   }
 
   // Reset the file names with the correct port number if startLocatorAndDS 
was called with port
@@ -636,7 +635,6 @@ public class 

[5/7] geode git commit: GEODE-3406: Exclude new exception class from analyze serialiable test

2017-08-22 Thread hiteshkhamesra
GEODE-3406: Exclude new exception class from analyze serialiable test

Signed-off-by: Hitesh Khamesra 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/a4fc1ddf
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/a4fc1ddf
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/a4fc1ddf

Branch: refs/heads/develop
Commit: a4fc1ddf628766cd5f3e7fb9e9469f523d20dbf2
Parents: 0eb320f
Author: Alexander Murmann 
Authored: Fri Aug 18 11:01:26 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Aug 22 10:55:27 2017 -0700

--
 .../resources/org/apache/geode/codeAnalysis/excludedClasses.txt | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/a4fc1ddf/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
index 43220fa..fbd582a 100644
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
@@ -10,6 +10,7 @@ org/apache/geode/distributed/internal/DistributionManager
 org/apache/geode/internal/ExitCode
 org/apache/geode/internal/JarDeployer
 org/apache/geode/internal/cache/BackupLock
+org/apache/geode/internal/cache/tier/sockets/InvalidExecutionContextException
 org/apache/geode/internal/logging/GemFireLevel
 org/apache/geode/internal/logging/LoggingThreadGroup
 org/apache/geode/internal/logging/LogWriterImpl



[7/7] geode git commit: GEODE-3406: Fixed test failures.

2017-08-22 Thread hiteshkhamesra
GEODE-3406: Fixed test failures.

Now TcpServerFactory doesn't look for protobuf enabled property.
If service is not available then it just ignores that


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/31e82d6d
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/31e82d6d
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/31e82d6d

Branch: refs/heads/develop
Commit: 31e82d6d64187ba7a6d71771806a0b107a811c11
Parents: 0cc6043
Author: Hitesh Khamesra 
Authored: Mon Aug 21 14:46:19 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Aug 22 10:56:00 2017 -0700

--
 .../geode/internal/cache/tier/sockets/TcpServerFactory.java | 9 +
 .../apache/geode/test/dunit/standalone/DUnitLauncher.java   | 2 --
 2 files changed, 5 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/31e82d6d/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/TcpServerFactory.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/TcpServerFactory.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/TcpServerFactory.java
index 9c6bd8c..a67d6e6 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/TcpServerFactory.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/TcpServerFactory.java
@@ -40,14 +40,15 @@ public class TcpServerFactory {
   }
 
   public synchronized ClientProtocolMessageHandler initializeMessageHandler() {
-if (!Boolean.getBoolean("geode.feature-protobuf-protocol")) {
-  return null;
-}
 if (protocolHandler != null) {
   return protocolHandler;
 }
 
-protocolHandler = new MessageHandlerFactory().makeMessageHandler();
+try {
+  protocolHandler = new MessageHandlerFactory().makeMessageHandler();
+} catch (ServiceLoadingFailureException ex) {
+  // ignore, TcpServer will take care right now
+}
 
 return protocolHandler;
   }

http://git-wip-us.apache.org/repos/asf/geode/blob/31e82d6d/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/DUnitLauncher.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/DUnitLauncher.java
 
b/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/DUnitLauncher.java
index fd88abf..b35270e 100644
--- 
a/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/DUnitLauncher.java
+++ 
b/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/DUnitLauncher.java
@@ -297,8 +297,6 @@ public class DUnitLauncher {
 // able to do so successfully anyway
 p.setProperty(DISABLE_AUTO_RECONNECT, "true");
 
-System.setProperty("geode.feature-protobuf-protocol", "true");
-
 try {
   Locator.startLocatorAndDS(0, locatorLogFile, p);
   InternalLocator internalLocator = (InternalLocator) 
Locator.getLocator();



[4/7] geode git commit: GEODE-3406: Address PR feedback

2017-08-22 Thread hiteshkhamesra
GEODE-3406: Address PR feedback

* Rename ExecutionContext -> MessageExecutionContext
* Properly close socket when processing ProtoBuf request in TcpServer
* GetAvailableServersRequestHandler guards against `null` servers
* minor style changes

Signed-off-by: Alexander Murmann 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/0eb320fa
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/0eb320fa
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/0eb320fa

Branch: refs/heads/develop
Commit: 0eb320fad2071c0ebb8cb1e74576ed4a231a9e3b
Parents: 530f48f
Author: Hitesh Khamesra 
Authored: Fri Aug 18 10:44:57 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Aug 22 10:55:12 2017 -0700

--
 .../distributed/internal/InternalLocator.java   |   5 +-
 .../internal/tcpserver/TcpServer.java   | 171 ++-
 .../geode/internal/cache/InternalCache.java |   4 +-
 .../sockets/ClientProtocolMessageHandler.java   |   2 +-
 .../ClientProtocolMessageHandlerLoader.java |  64 ---
 .../cache/tier/sockets/ExecutionContext.java|  54 --
 .../GenericProtocolServerConnection.java|   2 +-
 .../tier/sockets/MessageExecutionContext.java   |  56 ++
 .../tier/sockets/MessageHandlerFactory.java |  19 +++
 .../tier/sockets/ServerConnectionFactory.java   |  22 +--
 .../cache/tier/sockets/TcpServerFactory.java|  39 +
 .../AutoConnectionSourceImplJUnitTest.java  |  10 +-
 .../tcpserver/TCPServerSSLJUnitTest.java|   3 +-
 .../internal/tcpserver/TcpServerJUnitTest.java  |   5 +-
 .../tier/sockets/TcpServerFactoryTest.java  |  19 +++
 .../test/dunit/standalone/DUnitLauncher.java|   2 +
 .../protocol/operations/OperationHandler.java   |   4 +-
 .../protocol/protobuf/ProtobufOpsProcessor.java |   5 +-
 .../protobuf/ProtobufStreamProcessor.java   |   7 +-
 .../GetAllRequestOperationHandler.java  |   4 +-
 .../GetAvailableServersOperationHandler.java|  14 +-
 .../GetRegionNamesRequestOperationHandler.java  |   4 +-
 .../GetRegionRequestOperationHandler.java   |   4 +-
 .../operations/GetRequestOperationHandler.java  |   4 +-
 .../PutAllRequestOperationHandler.java  |   4 +-
 .../operations/PutRequestOperationHandler.java  |   4 +-
 .../RemoveRequestOperationHandler.java  |   4 +-
 .../RoundTripLocatorConnectionJUnitTest.java|  19 ++-
 .../protobuf/ProtobufStreamProcessorTest.java   |   4 +-
 .../GetAllRequestOperationHandlerJUnitTest.java |   6 +-
 ...ailableServersOperationHandlerJUnitTest.java |  42 +++--
 ...onNamesRequestOperationHandlerJUnitTest.java |   6 +-
 ...tRegionRequestOperationHandlerJUnitTest.java |   7 +-
 .../GetRequestOperationHandlerJUnitTest.java|  12 +-
 .../PutAllRequestOperationHandlerJUnitTest.java |   8 +-
 .../PutRequestOperationHandlerJUnitTest.java|  10 +-
 .../RemoveRequestOperationHandlerJUnitTest.java |  10 +-
 37 files changed, 361 insertions(+), 298 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/0eb320fa/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index 8d2daf6..06603cc 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -62,6 +62,7 @@ import 
org.apache.geode.distributed.internal.tcpserver.TcpServer;
 import org.apache.geode.internal.admin.remote.DistributionLocatorId;
 import org.apache.geode.internal.cache.GemFireCacheImpl;
 import org.apache.geode.internal.cache.InternalCache;
+import org.apache.geode.internal.cache.tier.sockets.TcpServerFactory;
 import org.apache.geode.internal.cache.wan.WANServiceProvider;
 import org.apache.geode.internal.i18n.LocalizedStrings;
 import org.apache.geode.internal.logging.InternalLogWriter;
@@ -498,8 +499,8 @@ public class InternalLocator extends Locator implements 
ConnectListener {
 ThreadGroup group = LoggingThreadGroup.createThreadGroup("Distribution 
locators", logger);
 this.stats = new LocatorStats();
 
-this.server = new TcpServer(port, this.bindAddress, null, this.config, 
this.handler,
-new DelayedPoolStatHelper(), group, this.toString(), this);
+this.server = new TcpServerFactory().makeTcpServer(port, this.bindAddress, 
null, this.config,
+this.handler, new DelayedPoolStatHelper(), group, this.toString(), 
this);
   }
 
   // Reset the file names with the correct port number if 

[1/7] geode git commit: GEODE-3406: Locator accepts Protobuf requests

2017-08-22 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop be4551191 -> 31e82d6d6


http://git-wip-us.apache.org/repos/asf/geode/blob/530f48f3/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionNamesRequestOperationHandlerJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionNamesRequestOperationHandlerJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionNamesRequestOperationHandlerJUnitTest.java
index 29902e6..fd84d41 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionNamesRequestOperationHandlerJUnitTest.java
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionNamesRequestOperationHandlerJUnitTest.java
@@ -17,7 +17,6 @@ package org.apache.geode.protocol.protobuf.operations;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
-import java.nio.charset.Charset;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
@@ -28,7 +27,8 @@ import org.junit.experimental.categories.Category;
 
 import org.apache.geode.cache.Cache;
 import org.apache.geode.cache.Region;
-import org.apache.geode.protocol.protobuf.BasicTypes;
+import org.apache.geode.internal.cache.tier.sockets.ExecutionContext;
+import 
org.apache.geode.internal.cache.tier.sockets.InvalidExecutionContextException;
 import org.apache.geode.protocol.protobuf.RegionAPI;
 import org.apache.geode.protocol.protobuf.Result;
 import org.apache.geode.protocol.protobuf.Success;
@@ -62,11 +62,12 @@ public class GetRegionNamesRequestOperationHandlerJUnitTest 
extends OperationHan
   }
 
   @Test
-  public void processReturnsCacheRegions() throws 
CodecAlreadyRegisteredForTypeException,
-  UnsupportedEncodingTypeException, CodecNotRegisteredForTypeException {
-Result result =
-operationHandler.process(serializationServiceStub,
-ProtobufRequestUtilities.createGetRegionNamesRequest(), cacheStub);
+  public void processReturnsCacheRegions()
+  throws CodecAlreadyRegisteredForTypeException, 
UnsupportedEncodingTypeException,
+  CodecNotRegisteredForTypeException, InvalidExecutionContextException {
+Result result = operationHandler.process(
+serializationServiceStub, 
ProtobufRequestUtilities.createGetRegionNamesRequest(),
+new ExecutionContext(cacheStub));
 Assert.assertTrue(result instanceof Success);
 
 RegionAPI.GetRegionNamesResponse getRegionsResponse = result.getMessage();
@@ -84,14 +85,15 @@ public class GetRegionNamesRequestOperationHandlerJUnitTest 
extends OperationHan
   }
 
   @Test
-  public void processReturnsNoCacheRegions() throws 
CodecAlreadyRegisteredForTypeException,
-  UnsupportedEncodingTypeException, CodecNotRegisteredForTypeException {
+  public void processReturnsNoCacheRegions()
+  throws CodecAlreadyRegisteredForTypeException, 
UnsupportedEncodingTypeException,
+  CodecNotRegisteredForTypeException, InvalidExecutionContextException {
 Cache emptyCache = mock(Cache.class);;
 when(emptyCache.rootRegions())
 .thenReturn(Collections.unmodifiableSet(new HashSet>()));
-Result result =
-operationHandler.process(serializationServiceStub,
-ProtobufRequestUtilities.createGetRegionNamesRequest(), 
emptyCache);
+Result result = operationHandler.process(
+serializationServiceStub, 
ProtobufRequestUtilities.createGetRegionNamesRequest(),
+new ExecutionContext(emptyCache));
 Assert.assertTrue(result instanceof Success);
 
 RegionAPI.GetRegionNamesResponse getRegionsResponse = result.getMessage();

http://git-wip-us.apache.org/repos/asf/geode/blob/530f48f3/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionRequestOperationHandlerJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionRequestOperationHandlerJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionRequestOperationHandlerJUnitTest.java
index 5cfa6b3..6762f66 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionRequestOperationHandlerJUnitTest.java
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/protobuf/operations/GetRegionRequestOperationHandlerJUnitTest.java
@@ -19,6 +19,8 @@ import org.apache.geode.cache.DataPolicy;
 import org.apache.geode.cache.Region;
 import org.apache.geode.cache.RegionAttributes;
 import org.apache.geode.cache.Scope;
+import org.apache.geode.internal.cache.tier.sockets.ExecutionContext;
+import 
org.apache.geode.internal.cache.tier.sockets.InvalidExecutionContextException;
 import 

[1/2] geode git commit: GEODE-3286: Failing to cleanup connections from ConnectionTable

2017-08-04 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop f52ebcaf4 -> 3c517d39b


GEODE-3286: Failing to cleanup connections from ConnectionTable

In previous fix, we were checking "if thread is stopped then add
connection to receiver list". Instead, it should be if thread is stopped
then we should not add connection to receiver list. As a fix, we add
connection to reciver list if connection is not closed or thread is not
stopped.

Added unit for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/2c255933
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/2c255933
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/2c255933

Branch: refs/heads/develop
Commit: 2c255933ec3bf49601321a5cb80baea89541e820
Parents: f52ebca
Author: Hitesh Khamesra 
Authored: Thu Aug 3 12:58:37 2017 -0700
Committer: Hitesh Khamesra 
Committed: Thu Aug 3 16:11:48 2017 -0700

--
 .../apache/geode/internal/tcp/Connection.java   |  4 ++
 .../geode/internal/tcp/ConnectionTable.java |  2 +-
 .../geode/internal/tcp/ConnectionTableTest.java | 46 
 3 files changed, 42 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/2c255933/geode-core/src/main/java/org/apache/geode/internal/tcp/Connection.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/tcp/Connection.java 
b/geode-core/src/main/java/org/apache/geode/internal/tcp/Connection.java
index c3ad596..0ecb3bf 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/tcp/Connection.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/tcp/Connection.java
@@ -3990,6 +3990,10 @@ public class Connection implements Runnable {
 return this.socket.isClosed() || !this.socket.isConnected();
   }
 
+  public boolean isReceiverStopped() {
+return this.stopped;
+  }
+
   private boolean isSocketInUse() {
 return this.socketInUse;
   }

http://git-wip-us.apache.org/repos/asf/geode/blob/2c255933/geode-core/src/main/java/org/apache/geode/internal/tcp/ConnectionTable.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/tcp/ConnectionTable.java 
b/geode-core/src/main/java/org/apache/geode/internal/tcp/ConnectionTable.java
index 69fb7a2..044ab42 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/tcp/ConnectionTable.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/tcp/ConnectionTable.java
@@ -298,7 +298,7 @@ public class ConnectionTable {
 }
 // If connection.stopped is false, any connection cleanup thread will 
not yet have acquired
 // the receiver synchronization to remove the receiver. Therefore we 
can safely add it here.
-if (!connection.isSocketClosed() || connection.stopped) {
+if (!(connection.isSocketClosed() || connection.isReceiverStopped())) {
   this.receivers.add(connection);
 }
   }

http://git-wip-us.apache.org/repos/asf/geode/blob/2c255933/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionTableTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionTableTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionTableTest.java
index 312c64d..0f5a7b9 100644
--- 
a/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionTableTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionTableTest.java
@@ -20,6 +20,7 @@ import org.apache.geode.distributed.internal.DM;
 import org.apache.geode.distributed.internal.DMStats;
 import org.apache.geode.distributed.internal.InternalDistributedSystem;
 import org.apache.geode.test.junit.categories.UnitTest;
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
@@ -32,9 +33,13 @@ import static org.mockito.Mockito.when;
 
 @Category(UnitTest.class)
 public class ConnectionTableTest {
+  private ConnectionTable connectionTable;
+  private Socket socket;
+  private PeerConnectionFactory factory;
+  private Connection connection;
 
-  @Test
-  public void testConnectionsClosedDuringCreateAreNotAddedAsReceivers() throws 
Exception {
+  @Before
+  public void initConnectionTable() throws Exception {
 InternalDistributedSystem system = mock(InternalDistributedSystem.class);
 when(system.isShareSockets()).thenReturn(false);
 
@@ -49,18 +54,41 @@ public class ConnectionTableTest {
 when(tcpConduit.getCancelCriterion()).thenReturn(cancelCriterion);
 when(tcpConduit.getStats()).thenReturn(dmStats);
 
-Connection connection = 

[2/2] geode git commit: GEODE-3307: CI failure: Uncaught exception in Membership View Creator

2017-08-04 Thread hiteshkhamesra
GEODE-3307: CI failure: Uncaught exception in Membership View Creator

Now we catch DistributedSystemDisconnectedException in ViewCreator
thread and then mark shutdown true


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/3c517d39
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/3c517d39
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/3c517d39

Branch: refs/heads/develop
Commit: 3c517d39bab2aedd51aedc08978cbd63cab33325
Parents: 2c25593
Author: Hitesh Khamesra 
Authored: Thu Aug 3 16:09:02 2017 -0700
Committer: Hitesh Khamesra 
Committed: Thu Aug 3 16:11:58 2017 -0700

--
 .../internal/membership/gms/membership/GMSJoinLeave.java   | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/3c517d39/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
index 40a4254..c63c30f 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
@@ -2080,6 +2080,8 @@ public class GMSJoinLeave implements JoinLeave, 
MessageHandler {
   }
 } catch (InterruptedException e) {
   shutdown = true;
+} catch (DistributedSystemDisconnectedException e) {
+  shutdown = true;
 }
   } while (retry);
 }



geode git commit: GEODE-3314: Fix DLockService token leak.

2017-08-02 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop d77d69f65 -> d91096c19


GEODE-3314: Fix DLockService token leak.

And add a test so that we don't do that again.

We had been unlocking the DLock on the remote server before freeing the
local `DLockToken`. This meant that the local token got reused by
another thread acquiring the same lock and the count went up and up and
up (due to some logic that wouldn't decrease the count if it no longer
owned the token).

Tokens should no longer have usageCounts that climb over time, which
means they should be released normally by freeResources.

Signed-off-by: Bruce Schuchardt 

Signed-off-by: Galen O'Sullivan 

This closes #663
Signed-off-by: Hitesh Khamesra 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/d91096c1
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/d91096c1
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/d91096c1

Branch: refs/heads/develop
Commit: d91096c19a453e3d04f9b3d9151ad57dc8e79e0a
Parents: d77d69f
Author: Galen O'Sullivan 
Authored: Thu Jul 27 16:35:04 2017 -0700
Committer: Hitesh Khamesra 
Committed: Wed Aug 2 10:07:57 2017 -0700

--
 .../internal/locks/DLockRequestProcessor.java   |   6 -
 .../internal/locks/DLockService.java|  10 +-
 .../internal/locks/DLockServiceLeakTest.java| 158 +++
 3 files changed, 162 insertions(+), 12 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/d91096c1/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockRequestProcessor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockRequestProcessor.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockRequestProcessor.java
index f0ee31b..3f42adb 100755
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockRequestProcessor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockRequestProcessor.java
@@ -202,18 +202,12 @@ public class DLockRequestProcessor extends 
ReplyProcessor21 {
 Assert.assertTrue(lockId > -1, "lockId is < 0: " + this);
 this.request.lockId = lockId;
 
-// setDoneProcessing(false);
-
 // local grantor... don't use messaging... fake it
 if (isLockGrantor()) {
   if (isDebugEnabled_DLS) {
 logger.trace(LogMarker.DLS, "DLockRequestProcessor processing lock 
request directly");
   }
   this.request.setSender(this.dm.getDistributionManagerId());
-  /*
-   * if (svc.isDestroyed()) { return false; }
-   */
-  // svc.checkDestroyed();
 
   // calls processor (this) process...
   this.request.processLocally(this.dm);

http://git-wip-us.apache.org/repos/asf/geode/blob/d91096c1/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockService.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockService.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockService.java
index c38cdad..522b700 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockService.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/locks/DLockService.java
@@ -1388,7 +1388,6 @@ public class DLockService extends DistributedLockService {
   throw new InterruptedException();
 }
 
-boolean abnormalExit = true;
 boolean safeExit = true;
 try { // try-block for abnormalExit and safeExit
 
@@ -1716,7 +1715,6 @@ public class DLockService extends DistributedLockService {
 logger.trace(LogMarker.DLS, "{}, name: {} - exiting lock() returning 
{}", this, name,
 gotLock);
   }
-  abnormalExit = false;
   return gotLock;
 } // try-block for abnormalExit and safeExit
 
@@ -1929,12 +1927,12 @@ public class DLockService extends 
DistributedLockService {
   checkDestroyed();
   LockGrantorId theLockGrantorId = getLockGrantorId();
   try {
-released = 
callReleaseProcessor(theLockGrantorId.getLockGrantorMember(), name,
-lockBatch, lockId);
 synchronized (this.lockGrantorIdLock) {
-  token.releaseLock(lockId, rThread);
-  unlocked = true;
+  unlocked = token.releaseLock(lockId, rThread);
 }
+released = 
callReleaseProcessor(theLockGrantorId.getLockGrantorMember(), name,
+lockBatch, lockId);
+
   } catch (LockGrantorDestroyedException 

geode git commit: WIP

2017-07-31 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-3285 7bdd362be -> 5139a6c2f


WIP


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/5139a6c2
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/5139a6c2
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/5139a6c2

Branch: refs/heads/feature/GEODE-3285
Commit: 5139a6c2f67f1c0d60666e85f9ddca2fa5f8a547
Parents: 7bdd362
Author: Hitesh Khamesra 
Authored: Mon Jul 31 09:38:30 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jul 31 09:38:30 2017 -0700

--
 .../GenericProtocolServerConnection.java| 32 +++--
 .../tier/sockets/sasl/SaslAuthenticator.java| 13 ++--
 .../tier/sockets/sasl/SaslCallbackHandler.java  | 41 +++-
 .../cache/tier/sockets/sasl/SaslHandler.java| 13 
 .../cache/tier/sockets/sasl/SaslMessenger.java  | 33 +++---
 .../GenericProtocolServerConnectionTest.java| 10 +++
 .../sockets/sasl/SaslAuthenticatorTest.java | 30 +++--
 .../sockets/sasl/SaslCallbackHandlerTest.java   | 24 +++
 .../tier/sockets/sasl/SaslMessengerTest.java| 57 ++--
 .../RoundTripCacheConnectionJUnitTest.java  | 69 +++-
 10 files changed, 290 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/5139a6c2/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
index c5c413a..215d796 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
@@ -18,12 +18,18 @@ package org.apache.geode.internal.cache.tier.sockets;
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.internal.cache.tier.Acceptor;
 import org.apache.geode.internal.cache.tier.CachedRegionHelper;
+import org.apache.geode.internal.cache.tier.sockets.sasl.SaslAuthenticator;
+import org.apache.geode.internal.cache.tier.sockets.sasl.SaslCallbackHandler;
+import org.apache.geode.internal.cache.tier.sockets.sasl.SaslMessenger;
 import org.apache.geode.internal.security.SecurityService;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
+import javax.security.sasl.Sasl;
+import javax.security.sasl.SaslException;
+import javax.security.sasl.SaslServer;
+import java.io.*;
 import java.net.Socket;
+import java.nio.channels.AcceptPendingException;
+import java.util.Collections;
 
 /**
  * Holds the socket and protocol handler for the new client protocol.
@@ -31,6 +37,7 @@ import java.net.Socket;
 public class GenericProtocolServerConnection extends ServerConnection {
   // The new protocol lives in a separate module and gets loaded when this 
class is instantiated.
   private final ClientProtocolMessageHandler messageHandler;
+  private boolean isAutenticated = false;
 
   /**
* Creates a new GenericProtocolServerConnection that processes 
messages received
@@ -51,7 +58,9 @@ public class GenericProtocolServerConnection extends 
ServerConnection {
   Socket socket = this.getSocket();
   InputStream inputStream = socket.getInputStream();
   OutputStream outputStream = socket.getOutputStream();
-
+  DataInputStream dataInputStream = new DataInputStream(inputStream);
+  DataOutputStream dataOutputStream = new DataOutputStream(outputStream);
+  authenticateClient(dataInputStream, dataOutputStream);
   messageHandler.receiveMessage(inputStream, outputStream, 
this.getCache());
 } catch (IOException e) {
   logger.warn(e);
@@ -59,6 +68,21 @@ public class GenericProtocolServerConnection extends 
ServerConnection {
 }
   }
 
+  private void authenticateClient(DataInputStream inputStream, 
DataOutputStream outputStream)
+  throws IOException {
+  SaslServer saslServer = Sasl.createSaslServer("PLAIN", "geode", 
"localhost", Collections.emptyMap(), new SaslCallbackHandler());
+  SaslAuthenticator saslAuthenticator = new SaslAuthenticator(saslServer, 
new SaslMessenger(inputStream, outputStream));
+//  if(!isAutenticated) {
+  if (saslAuthenticator.authenticateClient()) {
+outputStream.writeByte(Acceptor.SUCCESSFUL_SERVER_TO_CLIENT);
+  } else {
+outputStream.writeByte(Acceptor.UNSUCCESSFUL_SERVER_TO_CLIENT);
+  }
+  isAutenticated = true;
+//  }
+System.out.println("Done 

geode git commit: GEODE-3052 Need to reset isCoordinator flag in GMSLocator.

2017-07-14 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 9905794eb -> 15a3b5a6e


GEODE-3052 Need to reset isCoordinator flag in GMSLocator.

isCoordinator flag ensures that this process is becoming the
coordinator thus other process should join this process. But
when network parttion happens, we were not resetting this flag.

Now we reset isCoordinator flag when viewCreator thread shutdowns.

added unit test for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/15a3b5a6
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/15a3b5a6
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/15a3b5a6

Branch: refs/heads/develop
Commit: 15a3b5a6eb789b01639a03c4318f5d3c10bd2158
Parents: 9905794
Author: Hitesh Khamesra 
Authored: Thu Jul 13 11:47:20 2017 -0700
Committer: Hitesh Khamesra 
Committed: Fri Jul 14 14:27:40 2017 -0700

--
 .../membership/gms/locator/GMSLocator.java  |  1 +
 .../membership/gms/membership/GMSJoinLeave.java | 10 
 .../gms/membership/GMSJoinLeaveJUnitTest.java   | 26 
 3 files changed, 32 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/15a3b5a6/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/locator/GMSLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/locator/GMSLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/locator/GMSLocator.java
index 2c56f5b..e627452 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/locator/GMSLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/locator/GMSLocator.java
@@ -295,6 +295,7 @@ public class GMSLocator implements Locator, NetLocator {
   logger.info("This member is becoming coordinator");
   v = null;
 }
+logger.debug("this member is becoming coordinator from view {} ", 
fromView);
   }
   byte[] coordPk = null;
   if (v != null) {

http://git-wip-us.apache.org/repos/asf/geode/blob/15a3b5a6/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
index 9591673..40a4254 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java
@@ -1541,11 +1541,6 @@ public class GMSJoinLeave implements JoinLeave, 
MessageHandler {
 if (viewCreator != null && !viewCreator.isShutdown()) {
   logger.debug("Shutting down ViewCreator");
   viewCreator.shutdown();
-  org.apache.geode.distributed.internal.membership.gms.interfaces.Locator 
locator =
-  services.getLocator();
-  if (locator != null) {
-locator.setIsCoordinator(false);
-  }
   try {
 viewCreator.join(1000);
   } catch (InterruptedException e) {
@@ -2209,6 +2204,11 @@ public class GMSJoinLeave implements JoinLeave, 
MessageHandler {
   } finally {
 shutdown = true;
 informToPendingJoinRequests();
+
org.apache.geode.distributed.internal.membership.gms.interfaces.Locator locator 
=
+services.getLocator();
+if (locator != null) {
+  locator.setIsCoordinator(false);
+}
   }
 }
 

http://git-wip-us.apache.org/repos/asf/geode/blob/15a3b5a6/geode-core/src/test/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeaveJUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeaveJUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeaveJUnitTest.java
index d8c12e2..2807be3 100644
--- 
a/geode-core/src/test/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeaveJUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeaveJUnitTest.java
@@ -42,6 +42,7 @@ import 
org.apache.geode.distributed.internal.membership.gms.Services;
 import org.apache.geode.distributed.internal.membership.gms.Services.Stopper;
 

geode git commit: GEODE-3121 Applied spotless

2017-07-11 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 1c35f8665 -> c48b5381c


GEODE-3121 Applied spotless


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/c48b5381
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/c48b5381
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/c48b5381

Branch: refs/heads/develop
Commit: c48b5381cef3c9d88824b5dd6115a7e9ea0944f0
Parents: 1c35f86
Author: Hitesh Khamesra 
Authored: Tue Jul 11 16:28:12 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jul 11 16:28:12 2017 -0700

--
 .../apache/geode/protocol/RoundTripCacheConnectionJUnitTest.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/c48b5381/geode-protobuf/src/test/java/org/apache/geode/protocol/RoundTripCacheConnectionJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/RoundTripCacheConnectionJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/RoundTripCacheConnectionJUnitTest.java
index 5e41b5c..612b9c9 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/RoundTripCacheConnectionJUnitTest.java
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/RoundTripCacheConnectionJUnitTest.java
@@ -240,7 +240,7 @@ public class RoundTripCacheConnectionJUnitTest {
   }
 
   private void validateRemoveResponse(Socket socket,
-  ProtobufProtocolSerializer 
protobufProtocolSerializer) throws Exception {
+  ProtobufProtocolSerializer protobufProtocolSerializer) throws Exception {
 ClientProtocol.Message message =
 protobufProtocolSerializer.deserialize(socket.getInputStream());
 assertEquals(TEST_REMOVE_CORRELATION_ID, 
message.getMessageHeader().getCorrelationId());



geode git commit: GEODE-2998: Add remove operation

2017-07-11 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop e02be316e -> aef891296


GEODE-2998: Add remove operation

Signed-off-by: Alexander Murmann 
Signed-off-by: Matt Kalinowski 

This closes #624


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/aef89129
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/aef89129
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/aef89129

Branch: refs/heads/develop
Commit: aef89129626d9072dfc89e8acc038ecad1793c26
Parents: e02be31
Author: Brian Rowe 
Authored: Thu Jul 6 16:36:51 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jul 11 14:18:39 2017 -0700

--
 .../protobuf/ProtobufStreamProcessor.java   |   4 +
 .../RemoveRequestOperationHandler.java  |  65 +
 .../utilities/ProtobufRequestUtilities.java |  14 ++
 .../utilities/ProtobufResponseUtilities.java|  10 ++
 geode-protobuf/src/main/proto/region_API.proto  |   1 -
 .../RoundTripCacheConnectionJUnitTest.java  |  20 +++
 .../RemoveRequestOperationHandlerJUnitTest.java | 142 +++
 7 files changed, 255 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/aef89129/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
index ebd5c6a..7146392 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
@@ -24,6 +24,7 @@ import 
org.apache.geode.protocol.operations.registry.exception.OperationHandlerN
 import 
org.apache.geode.protocol.protobuf.operations.GetRegionNamesRequestOperationHandler;
 import 
org.apache.geode.protocol.protobuf.operations.GetRequestOperationHandler;
 import 
org.apache.geode.protocol.protobuf.operations.PutRequestOperationHandler;
+import 
org.apache.geode.protocol.protobuf.operations.RemoveRequestOperationHandler;
 import 
org.apache.geode.protocol.protobuf.serializer.ProtobufProtocolSerializer;
 import org.apache.geode.protocol.protobuf.utilities.ProtobufUtilities;
 import 
org.apache.geode.serialization.registry.exception.CodecAlreadyRegisteredForTypeException;
@@ -63,6 +64,9 @@ public class ProtobufStreamProcessor implements 
ClientProtocolMessageHandler {
 registry.registerOperationHandlerForOperationId(
 
ClientProtocol.Request.RequestAPICase.GETREGIONNAMESREQUEST.getNumber(),
 new GetRegionNamesRequestOperationHandler());
+registry.registerOperationHandlerForOperationId(
+ClientProtocol.Request.RequestAPICase.REMOVEREQUEST.getNumber(),
+new RemoveRequestOperationHandler());
   }
 
   public void processOneMessage(InputStream inputStream, OutputStream 
outputStream, Cache cache)

http://git-wip-us.apache.org/repos/asf/geode/blob/aef89129/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandler.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandler.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandler.java
new file mode 100644
index 000..e1fef85
--- /dev/null
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/operations/RemoveRequestOperationHandler.java
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.protocol.protobuf.operations;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Region;
+import 

[2/2] geode git commit: GEODE-3153 applied spotless

2017-07-10 Thread hiteshkhamesra
GEODE-3153 applied spotless


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/2974dab3
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/2974dab3
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/2974dab3

Branch: refs/heads/release/1.2.0
Commit: 2974dab327c5d21e55a21c17fe657597a20c6612
Parents: 60225b9
Author: Hitesh Khamesra 
Authored: Fri Jul 7 16:40:06 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jul 10 12:04:04 2017 -0700

--
 .../geode/internal/cache/ha/EventIdOptimizationJUnitTest.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/2974dab3/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
index 451dc20..523f0d2 100755
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
@@ -194,7 +194,7 @@ public class EventIdOptimizationJUnitTest {
 eventID2.fromData(dataInputStream);
 
 assertEquals(distributedMember, 
eventID2.getDistributedMember(Version.GFE_90));
-
+
 assertEquals(memberBytes.length + 17, eventID2.getMembershipID().length);
   }
 



[1/2] geode git commit: GEODE-3153 Client receives duplicate events during rolling upgrade

2017-07-10 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/release/1.2.0 40fdc5d33 -> 2974dab32


GEODE-3153 Client receives duplicate events during rolling upgrade

The previous fix worked fine for 1.0.0 and 1.1.0 clients but there are
old GemFire 8.2 clients still in use that the fix did not work for.
This patch changes the serialization to always send UUID bytes to pre
Version.GFE_90 (1.0.0-incubating) clients.

Added unit for it


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/60225b9b
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/60225b9b
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/60225b9b

Branch: refs/heads/release/1.2.0
Commit: 60225b9b760d9dae25ce07b853ac3fd01468fd80
Parents: 40fdc5d
Author: Hitesh Khamesra 
Authored: Fri Jul 7 09:35:33 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jul 10 09:37:59 2017 -0700

--
 .../membership/InternalDistributedMember.java   |  4 ++-
 .../apache/geode/internal/cache/EventID.java| 12 +++
 .../cache/ha/EventIdOptimizationJUnitTest.java  | 36 +++-
 .../sanctionedDataSerializables.txt | 30 
 4 files changed, 59 insertions(+), 23 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/60225b9b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
index 01f4ef0..851ef9a 100755
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/InternalDistributedMember.java
@@ -1132,7 +1132,9 @@ public class InternalDistributedMember implements 
DistributedMember, Externaliza
 // write name last to fix bug 45160
 DataSerializer.writeString(netMbr.getName(), out);
 
-if 
(InternalDataSerializer.getVersionForDataStream(out).compareTo(Version.GFE_90) 
== 0) {
+Version outputVersion = 
InternalDataSerializer.getVersionForDataStream(out);
+if (0 <= outputVersion.compareTo(Version.GFE_90)
+&& outputVersion.compareTo(Version.GEODE_110) < 0) {
   netMbr.writeAdditionalData(out);
 }
   }

http://git-wip-us.apache.org/repos/asf/geode/blob/60225b9b/geode-core/src/main/java/org/apache/geode/internal/cache/EventID.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/EventID.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/EventID.java
index 8621649..4833ea1 100755
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/EventID.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/EventID.java
@@ -298,13 +298,13 @@ public class EventID implements DataSerializableFixedID, 
Serializable, Externali
   /**
* deserialize the memberID bytes using the given version. The correct thing 
to do would be to
* have EventID carry the version ordinal of the serialized memberID, or to 
have it be part of the
-   * memberID bytes and use that version to deserialize the bytes
+   * memberID bytes and use that version to deserialize the bytes. Clients 
prior to 1.1.0 need to
+   * have UUID bytes in the memberID. Newer clients don't require this.
*/
-  private InternalDistributedMember getDistributedMember(Version 
targetVersion) {
+  public InternalDistributedMember getDistributedMember(Version targetVersion) 
{
 ByteArrayInputStream bais = new ByteArrayInputStream(this.membershipID);
 DataInputStream dis = new DataInputStream(bais);
-if (0 <= targetVersion.compareTo(Version.GFE_90)
-&& targetVersion.compareTo(Version.GEODE_110) < 0) {
+if (targetVersion.compareTo(Version.GEODE_110) < 0) {
   // GEODE-3153: clients expect to receive UUID bytes, which are only
   // read if the stream's version is 1.0.0-incubating
   dis = new VersionedDataInputStream(dis, Version.GFE_90);
@@ -345,10 +345,10 @@ public class EventID implements DataSerializableFixedID, 
Serializable, Externali
 // of the identifier
 // See GEODE-3072
 if (version.compareTo(Version.GEODE_110) < 0) {
-  InternalDistributedMember member = getDistributedMember(version);
+  InternalDistributedMember member = getDistributedMember(Version.GFE_90);
   // reserialize with the client's version so that we write the UUID
   // bytes
-  HeapDataOutputStream hdos = new HeapDataOutputStream(version);
+  

geode git commit: GEODE-3153 applied spotless

2017-07-07 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop b4ebcbac1 -> 1537847e6


GEODE-3153 applied spotless


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/1537847e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/1537847e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/1537847e

Branch: refs/heads/develop
Commit: 1537847e6090de7facd70b80eba0e4de397491ac
Parents: b4ebcba
Author: Hitesh Khamesra 
Authored: Fri Jul 7 16:40:06 2017 -0700
Committer: Hitesh Khamesra 
Committed: Fri Jul 7 16:40:06 2017 -0700

--
 .../geode/internal/cache/ha/EventIdOptimizationJUnitTest.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/1537847e/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
index 451dc20..523f0d2 100755
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/ha/EventIdOptimizationJUnitTest.java
@@ -194,7 +194,7 @@ public class EventIdOptimizationJUnitTest {
 eventID2.fromData(dataInputStream);
 
 assertEquals(distributedMember, 
eventID2.getDistributedMember(Version.GFE_90));
-
+
 assertEquals(memberBytes.length + 17, eventID2.getMembershipID().length);
   }
 



geode git commit: GEODE-2804 Caching the InetAddress for configured ip string

2017-07-03 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop f1161994a -> 92f270805


GEODE-2804 Caching the InetAddress for configured ip string

1. We keep configure host string in HostAddress class
2. We reuse InetsocketAddress if it is ipString.
3. Client has logic to retry thus we keep InetsocketAddress even if
   it is not ip string.

GEODE-3017 IPv6 issue on windows. Above changes fixed this issue.

GEODE-2940 Now we don't validate configure host string on start. As
there is possibility that host may not available.

1. Earlier wan config were failing because of that. Now we just keep
   those configure host string. And try this later.

Added unit tests for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/92f27080
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/92f27080
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/92f27080

Branch: refs/heads/develop
Commit: 92f270805a83c69da2c1ab469b3206ae6e7c9acf
Parents: f116199
Author: Hitesh Khamesra 
Authored: Thu Jun 29 13:20:17 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jul 3 09:29:37 2017 -0700

--
 geode-assembly/build.gradle |   1 +
 .../src/test/resources/expected_jars.txt|   3 +-
 geode-core/build.gradle |   3 +
 .../admin/internal/DistributionLocatorImpl.java |   6 +-
 .../internal/AutoConnectionSourceImpl.java  | 171 +--
 .../geode/cache/client/internal/PoolImpl.java   |  15 +-
 .../internal/AbstractDistributionConfig.java|   8 +-
 .../internal/InternalDistributedSystem.java |   6 +-
 .../internal/membership/gms/GMSUtil.java|  11 +-
 .../membership/gms/locator/GMSLocator.java  |  13 +-
 .../membership/gms/membership/GMSJoinLeave.java |   9 +-
 .../membership/gms/membership/HostAddress.java  | 118 +
 .../internal/tcpserver/TcpClient.java   |  26 ++-
 .../admin/remote/DistributionLocatorId.java |  45 -
 .../admin/remote/RemoteTransportConfig.java |   5 +-
 .../cache/ClusterConfigurationLoader.java   |   2 +-
 .../geode/internal/cache/PoolFactoryImpl.java   |  28 +--
 .../internal/JmxManagerLocatorRequest.java  |   5 +-
 .../cli/commands/LauncherLifecycleCommands.java |   1 +
 .../internal/AutoConnectionSourceDUnitTest.java |  12 +-
 .../AutoConnectionSourceImplJUnitTest.java  | 126 +-
 .../internal/DistributionConfigJUnitTest.java   |   4 +-
 .../internal/StartupMessageDataJUnitTest.java   |   4 +-
 .../gms/membership/GMSJoinLeaveJUnitTest.java   |   1 +
 .../geode/codeAnalysis/excludedClasses.txt  |   3 +-
 .../internal/locator/wan/LocatorDiscovery.java  |  10 +-
 .../wan/LocatorMembershipListenerImpl.java  |   8 +-
 .../cache/wan/AbstractRemoteGatewaySender.java  |   4 +-
 .../wan/misc/WanAutoDiscoveryDUnitTest.java |   7 +-
 gradle/dependency-versions.properties   |   1 +
 30 files changed, 527 insertions(+), 129 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/92f27080/geode-assembly/build.gradle
--
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index e5e96d8..19a73f3 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -156,6 +156,7 @@ def cp = {
 it.contains('commons-collections') ||
 it.contains('commons-lang') ||
 it.contains('commons-logging') ||
+it.contains('commons-validator') ||
 it.contains('fast-classpath-scanner') ||
 it.contains('fastutil') ||
 it.contains('jackson-annotations') ||

http://git-wip-us.apache.org/repos/asf/geode/blob/92f27080/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index ef28d5e..05f5834 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -86,4 +86,5 @@ springfox-spring-web
 springfox-swagger
 springfox-swagger-common
 springfox-swagger-ui
-swagger-models
\ No newline at end of file
+swagger-models
+commons-validator

http://git-wip-us.apache.org/repos/asf/geode/blob/92f27080/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 7f34b4a..9ecb0f9 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -39,6 +39,8 @@ dependencies {
   compile 'antlr:antlr:' + project.'antlr.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + 
project.'jackson.version'
   compile 

geode git commit: GEODE-3154 Add geode-protobuf to expected_jars

2017-06-29 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 0698238a9 -> ac0474d8b


GEODE-3154 Add geode-protobuf to expected_jars

This closes #614


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/ac0474d8
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/ac0474d8
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/ac0474d8

Branch: refs/heads/develop
Commit: ac0474d8b9400153de2a0d9e08c455a063f3a37e
Parents: 0698238
Author: Alexander Murmann 
Authored: Thu Jun 29 12:50:30 2017 -0700
Committer: Hitesh Khamesra 
Committed: Thu Jun 29 15:14:49 2017 -0700

--
 geode-assembly/src/test/resources/expected_jars.txt | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/ac0474d8/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index 6260167..ef28d5e 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -51,6 +51,7 @@ mx4j-remote
 mx4j-tools
 netty-all
 paranamer
+protobuf-java
 ra.jar
 scala-library
 scala-reflect



geode git commit: GEODE-3105: adding GetRegions handler for protobuf protocol

2017-06-28 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 61075610e -> b0fafd3da


GEODE-3105: adding GetRegions handler for protobuf protocol

Added a handler which will catch incoming getRegion requests and will call into 
the cache's rootRegion and return the names of the region it finds.
Added unit test verifying hanlder behavior.
Added integration test verifying module correctness for getRegion.

This closes #607

Signed-off-by: Brian Rowe 
Signed-off-by: Hitesh Khamesra 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/b0fafd3d
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/b0fafd3d
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/b0fafd3d

Branch: refs/heads/develop
Commit: b0fafd3da240257afd75ed09e10f61984b3c59b2
Parents: 6107561
Author: Brian Rowe 
Authored: Tue Jun 27 16:15:53 2017 -0700
Committer: Hitesh Khamesra 
Committed: Wed Jun 28 13:39:51 2017 -0700

--
 .../GenericProtocolServerConnection.java|   1 +
 .../protocol/protobuf/ProtobufOpsProcessor.java |   4 +
 .../protobuf/ProtobufStreamProcessor.java   |   4 +
 .../GetRegionsRequestOperationHandler.java  |  48 
 geode-protobuf/src/main/proto/region_API.proto  |   3 +-
 .../org/apache/geode/protocol/MessageUtil.java  |  11 ++
 .../RoundTripCacheConnectionJUnitTest.java  |  27 +
 ...tRegionRequestOperationHandlerJUnitTest.java | 109 +++
 8 files changed, 206 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/b0fafd3d/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
index 8edd83c..a2e7305 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/GenericProtocolServerConnection.java
@@ -67,6 +67,7 @@ public class GenericProtocolServerConnection extends 
ServerConnection {
   // TODO serialization types?
   messageHandler.receiveMessage(inputStream, outputStream, 
this.getCache());
 } catch (IOException e) {
+  logger.warn(e);
   // TODO?
 }
 return;

http://git-wip-us.apache.org/repos/asf/geode/blob/b0fafd3d/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufOpsProcessor.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufOpsProcessor.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufOpsProcessor.java
index 29d3317..4318fb4 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufOpsProcessor.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufOpsProcessor.java
@@ -56,6 +56,8 @@ public class ProtobufOpsProcessor {
 return request.getGetRequest();
   case PUTALLREQUEST:
 return request.getPutAllRequest();
+  case GETREGIONSREQUEST:
+return request.getGetRegionsRequest();
   default:
 throw new InvalidProtocolMessageException(
 "Unknown request type: " + 
request.getRequestAPICase().getNumber());
@@ -73,6 +75,8 @@ public class ProtobufOpsProcessor {
 return builder.setGetResponse((RegionAPI.GetResponse) 
response).build();
   case PUTALLREQUEST:
 return builder.setPutAllResponse((RegionAPI.PutAllResponse) 
response).build();
+  case GETREGIONSREQUEST:
+return builder.setGetRegionsResponse((RegionAPI.GetRegionsResponse) 
response).build();
   default:
 throw new InvalidProtocolMessageException(
 "Unknown request type: " + requestType.getNumber());

http://git-wip-us.apache.org/repos/asf/geode/blob/b0fafd3d/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
index 21dbef5..4e76de4 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/ProtobufStreamProcessor.java
@@ -18,6 +18,7 @@ import 

geode git commit: GEODE-2996: incorporating review feedback and adding integration test

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 06961ec16 -> 565e61f74


GEODE-2996: incorporating review feedback and adding integration test

Addresses review feedback for GEODE-2996, mainly refactoring getOpertionHandler 
to handle failures like the putOperationHandler
Adding put operations to the RoundTripCacheConnectionJUnitTest, which is the 
integration test for the protobuf module
Removing service loading for protobuf operations and instead have the 
ProtobufStreamProcessor populate its OperationHandlerRegistry
Remove exception throwing from OperationHandler.process calls and remove 
TypeEncodingException

Signed-off-by: Brian Rowe 
Signed-off-by: Alexander Murmann 

This closes #605


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/565e61f7
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/565e61f7
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/565e61f7

Branch: refs/heads/develop
Commit: 565e61f74409d59cc96c9fbf1ad75d331b728301
Parents: 06961ec
Author: Alexander Murmann 
Authored: Mon Jun 26 17:56:06 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 14:48:32 2017 -0700

--
 .../protocol/operations/OperationHandler.java   |  14 +-
 .../registry/OperationsHandlerRegistry.java |   7 -
 .../protocol/protobuf/ProtobufOpsProcessor.java |  29 +++-
 .../protobuf/ProtobufStreamProcessor.java   |  22 ++-
 .../protocol/protobuf/ProtobufUtilities.java|  11 ++
 .../operations/GetRequestOperationHandler.java  |  51 ---
 .../operations/PutRequestOperationHandler.java  |  62 +
 .../exception/TypeEncodingException.java|  21 ---
 .../UnsupportedEncodingTypeException.java   |   2 +-
 .../CodecNotRegisteredForTypeException.java |   4 +-
 geode-protobuf/src/main/proto/region_API.proto  |   4 +-
 .../org/apache/geode/protocol/MessageUtil.java  |  65 +
 .../RoundTripCacheConnectionJUnitTest.java  |  45 --
 .../protobuf/ProtobufOpsProcessorJUnitTest.java |   7 +-
 .../GetRequestOperationHandlerJUnitTest.java|  79 +++
 .../PutRequestOperationHandlerJUnitTest.java| 139 +++
 16 files changed, 440 insertions(+), 122 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/565e61f7/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
index 7683e3b..90fe177 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
@@ -15,10 +15,8 @@
 package org.apache.geode.protocol.operations;
 
 import org.apache.geode.cache.Cache;
-import org.apache.geode.protocol.operations.registry.OperationsHandlerRegistry;
 import org.apache.geode.protocol.protobuf.ProtobufOpsProcessor;
 import org.apache.geode.serialization.SerializationService;
-import org.apache.geode.serialization.exception.TypeEncodingException;
 
 /**
  * This interface is implemented by a object capable of handling request types 
'Req' and returning
@@ -30,16 +28,6 @@ public interface OperationHandler {
   /**
* Decode the message, deserialize contained values using the serialization 
service, do the work
* indicated on the provided cache, and return a response.
-   * 
-   * @throws TypeEncodingException if a problem occurs decoding an encoded 
value contained in the
-   * request.
*/
-  Resp process(SerializationService serializationService, Req request, Cache 
cache)
-  throws TypeEncodingException;
-
-  /**
-   * @return the magic number used for registering the operation type with the
-   * {@link OperationsHandlerRegistry}.
-   */
-  int getOperationCode();
+  Resp process(SerializationService serializationService, Req request, Cache 
cache);
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/565e61f7/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/OperationsHandlerRegistry.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/OperationsHandlerRegistry.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/OperationsHandlerRegistry.java
index 8e3a331..2b9f525 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/OperationsHandlerRegistry.java
+++ 

[34/50] [abbrv] geode git commit: GEODE-2995: Handle stream of ProtoBuf encoded messages

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
--
diff --git 
a/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
new file mode 100644
index 000..fa7c3c6
--- /dev/null
+++ 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
@@ -0,0 +1 @@
+org.apache.geode.protocol.operations.protobuf.GetRequestOperationHandler
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
--
diff --git 
a/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
new file mode 100644
index 000..1b7b333
--- /dev/null
+++ 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
@@ -0,0 +1,10 @@
+org.apache.geode.serialization.codec.BinaryCodec
+org.apache.geode.serialization.codec.BooleanCodec
+org.apache.geode.serialization.codec.ByteCodec
+org.apache.geode.serialization.codec.DoubleCodec
+org.apache.geode.serialization.codec.FloatCodec
+org.apache.geode.serialization.codec.IntCodec
+org.apache.geode.serialization.codec.JSONCodec
+org.apache.geode.serialization.codec.LongCodec
+org.apache.geode.serialization.codec.ShortCodec
+org.apache.geode.serialization.codec.StringCodec

http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
new file mode 100644
index 000..e86e908
--- /dev/null
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
@@ -0,0 +1,121 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.client.protocol;
+
+import com.google.protobuf.ByteString;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Region;
+import org.apache.geode.protocol.exception.InvalidProtocolMessageException;
+import org.apache.geode.protocol.handler.ProtobufStreamProcessor;
+import 
org.apache.geode.protocol.operations.registry.exception.OperationHandlerAlreadyRegisteredException;
+import 
org.apache.geode.protocol.operations.registry.exception.OperationHandlerNotRegisteredException;
+import org.apache.geode.protocol.protobuf.BasicTypes;
+import org.apache.geode.protocol.protobuf.ClientProtocol;
+import org.apache.geode.protocol.protobuf.RegionAPI;
+import org.apache.geode.serialization.codec.StringCodec;
+import 
org.apache.geode.serialization.protobuf.translation.EncodingTypeTranslator;
+import 
org.apache.geode.serialization.exception.UnsupportedEncodingTypeException;
+import org.apache.geode.serialization.registry.SerializationCodecRegistry;
+import 
org.apache.geode.serialization.registry.exception.CodecAlreadyRegisteredForTypeException;
+import 
org.apache.geode.serialization.registry.exception.CodecNotRegisteredForTypeException;
+import org.apache.geode.test.dunit.Assert;
+import org.apache.geode.test.junit.categories.UnitTest;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+
+@Category(UnitTest.class)
+public class IntegrationTest {
+
+  public static final String TEST_KEY = "my key";
+  public static final String TEST_VALUE = "my value";
+  public static final 

[17/50] [abbrv] geode git commit: GEODE-3104 : correct help string to use --include-locators

2017-06-27 Thread hiteshkhamesra
GEODE-3104 : correct help string to use --include-locators

* this closes #595


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/b517ef8d
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/b517ef8d
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/b517ef8d

Branch: refs/heads/feature/GEODE-2804v3
Commit: b517ef8ddb4613729157c4e4ba6c3e83ae2dfc2c
Parents: 7df5af3
Author: Amey Barve 
Authored: Wed Jun 21 18:27:01 2017 +0530
Committer: Jinmei Liao 
Committed: Wed Jun 21 08:16:04 2017 -0700

--
 .../org/apache/geode/management/internal/cli/i18n/CliStrings.java  | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/b517ef8d/geode-core/src/main/java/org/apache/geode/management/internal/cli/i18n/CliStrings.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/i18n/CliStrings.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/i18n/CliStrings.java
index 0829495..bdf5cff 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/i18n/CliStrings.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/i18n/CliStrings.java
@@ -2063,7 +2063,7 @@ public class CliStrings {
   public static final String SHUTDOWN__MSG__CAN_NOT_SHUTDOWN_WITHIN_TIMEOUT =
   "Could not shutdown within timeout. Shutdown will continue in 
background";
   public static final String SHUTDOWN__MSG__NO_DATA_NODE_FOUND =
-  "No data node found for stopping. Please specify --shutdown-locators 
option if you want locators to be stopped";
+  "No data node found for stopping. Please specify --include-locators 
option if you want locators to be stopped";
 
   public static final String SHUTDOWN_TIMEDOUT =
   "Shutdown command timedout. Please manually check node status";



[37/50] [abbrv] geode git commit: GEODE-2995: Implementing review feedback

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
new file mode 100644
index 000..95244d2
--- /dev/null
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
@@ -0,0 +1,81 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.protocol.serializer;
+
+import org.apache.geode.client.protocol.MessageUtil;
+import org.apache.geode.protocol.exception.InvalidProtocolMessageException;
+import 
org.apache.geode.protocol.protobuf.serializer.ProtobufProtocolSerializer;
+import org.apache.geode.protocol.protobuf.ClientProtocol;
+import org.apache.geode.test.junit.categories.UnitTest;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ServiceLoader;
+
+@Category(UnitTest.class)
+public class ProtobufProtocolSerializerJUnitTest {
+  private ProtocolSerializer protocolSerializer;
+
+  @Before
+  public void startup() {
+ServiceLoader serviceLoader = 
ServiceLoader.load(ProtocolSerializer.class);
+for (ProtocolSerializer protocolSerializer : serviceLoader) {
+  if (protocolSerializer instanceof ProtobufProtocolSerializer) {
+this.protocolSerializer = protocolSerializer;
+  }
+}
+  }
+
+  @Test
+  public void testDeserializeByteArrayToMessage()
+  throws IOException, InvalidProtocolMessageException {
+ClientProtocol.Message expectedRequestMessage = 
MessageUtil.createGetRequestMessage();
+
+ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+
+expectedRequestMessage.writeDelimitedTo(byteArrayOutputStream);
+InputStream inputStream = new 
ByteArrayInputStream(byteArrayOutputStream.toByteArray());
+
+ClientProtocol.Message actualMessage = 
protocolSerializer.deserialize(inputStream);
+Assert.assertEquals(expectedRequestMessage, actualMessage);
+  }
+
+  @Test(expected = InvalidProtocolMessageException.class)
+  public void testDeserializeInvalidByteThrowsException()
+throws IOException, InvalidProtocolMessageException {
+ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+byteArrayOutputStream.write("Some incorrect byte array".getBytes());
+InputStream inputStream = new 
ByteArrayInputStream(byteArrayOutputStream.toByteArray());
+protocolSerializer.deserialize(inputStream);
+  }
+
+  @Test
+  public void testSerializeMessageToByteArray() throws IOException {
+ClientProtocol.Message message = MessageUtil.createGetRequestMessage();
+ByteArrayOutputStream expectedByteArrayOutputStream = new 
ByteArrayOutputStream();
+message.writeDelimitedTo(expectedByteArrayOutputStream);
+byte[] expectedByteArray = expectedByteArrayOutputStream.toByteArray();
+
+ByteArrayOutputStream actualByteArrayOutputStream = new 
ByteArrayOutputStream();
+protocolSerializer.serialize(message, actualByteArrayOutputStream);
+Assert.assertArrayEquals(expectedByteArray, 
actualByteArrayOutputStream.toByteArray());
+  }
+}

http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
index a4c0a14..ef841c3 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
+++ 

[13/50] [abbrv] geode git commit: GEODE-3091: remove empty method

2017-06-27 Thread hiteshkhamesra
GEODE-3091: remove empty method

This closes #585


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/d8160d6e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/d8160d6e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/d8160d6e

Branch: refs/heads/feature/GEODE-2804v3
Commit: d8160d6e644976e88fa32b08993c3cc6574143c8
Parents: 80667f3
Author: Nick Reich 
Authored: Thu Jun 15 15:59:50 2017 -0700
Committer: Anil 
Committed: Mon Jun 19 15:00:23 2017 -0700

--
 .../geode/internal/cache/DistributedRegion.java  |  1 -
 .../org/apache/geode/internal/cache/LocalRegion.java | 15 ---
 .../geode/internal/cache/PartitionedRegion.java  |  1 -
 3 files changed, 17 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/d8160d6e/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
index 9df64d0..21f911d 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
@@ -935,7 +935,6 @@ public class DistributedRegion extends LocalRegion 
implements CacheDistributionA
   public void invalidate(Object key, Object aCallbackArgument)
   throws TimeoutException, EntryNotFoundException {
 validateKey(key);
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForLimitedOrNoAccess();
 Lock dlock = this.getDistributedLockIfGlobal(key);

http://git-wip-us.apache.org/repos/asf/geode/blob/d8160d6e/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
index 2b45a54..02625ee 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
@@ -1120,7 +1120,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   @Retained
   EntryEventImpl newDestroyEntryEvent(Object key, Object aCallbackArgument) {
 validateKey(key);
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForLimitedOrNoAccess();
 
@@ -1349,7 +1348,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   boolean retainResult) throws TimeoutException, CacheLoaderException {
 assert !retainResult || preferCD;
 validateKey(key);
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForNoAccess();
 discoverJTA();
@@ -1563,7 +1561,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   @Override
   public void invalidateRegion(Object aCallbackArgument) throws 
TimeoutException {
 getDataView().checkSupportsRegionInvalidate();
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForLimitedOrNoAccess();
 RegionEventImpl event = new RegionEventImpl(this, 
Operation.REGION_INVALIDATE,
@@ -3118,8 +3115,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   protected void validateArguments(Object key, Object value, Object 
aCallbackArgument) {
 validateKey(key);
 validateValue(value);
-validateCallbackArg(aCallbackArgument);
-
   }
 
   void validateKey(Object key) {
@@ -3142,15 +3137,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   }
 
   /**
-   * Starting in 3.5, we don't check to see if the callback argument is {@code 
Serializable}. We
-   * instead rely on the actual serialization (which happens in-thread with 
the put) to tell us if
-   * there are any problems. TODO: delete method validateCallbackArg
-   */
-  void validateCallbackArg(Object aCallbackArgument) {
-// do nothing
-  }
-
-  /**
* @since GemFire 5.0.2
*/
   private final boolean doExpensiveValidations =
@@ -11633,7 +11619,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   public boolean remove(Object key, Object value, Object callbackArg) {
 checkIfConcurrentMapOpsAllowed();
 validateKey(key);
-validateCallbackArg(callbackArg);
 checkReadiness();
 checkForLimitedOrNoAccess();
 


[28/50] [abbrv] geode git commit: GEODE-2919: Provide finer grained security

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/main/java/org/apache/geode/management/internal/beans/DistributedSystemMBean.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/beans/DistributedSystemMBean.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/beans/DistributedSystemMBean.java
index c45da73..28edbf6 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/beans/DistributedSystemMBean.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/beans/DistributedSystemMBean.java
@@ -14,6 +14,12 @@
  */
 package org.apache.geode.management.internal.beans;
 
+import java.util.Map;
+
+import javax.management.NotificationBroadcasterSupport;
+import javax.management.ObjectName;
+
+import org.apache.geode.internal.security.SecurityServiceFactory;
 import org.apache.geode.management.DiskBackupStatus;
 import org.apache.geode.management.DiskMetrics;
 import org.apache.geode.management.DistributedSystemMXBean;
@@ -22,10 +28,9 @@ import org.apache.geode.management.JVMMetrics;
 import org.apache.geode.management.NetworkMetrics;
 import org.apache.geode.management.OSMetrics;
 import org.apache.geode.management.PersistentMemberDetails;
-
-import java.util.Map;
-import javax.management.NotificationBroadcasterSupport;
-import javax.management.ObjectName;
+import org.apache.geode.security.ResourcePermission.Operation;
+import org.apache.geode.security.ResourcePermission.Resource;
+import org.apache.geode.security.ResourcePermission.Target;
 
 /**
  * Distributed System MBean
@@ -48,8 +53,9 @@ public class DistributedSystemMBean extends 
NotificationBroadcasterSupport
   @Override
   public DiskBackupStatus backupAllMembers(String targetDirPath, String 
baselineDirPath)
   throws Exception {
+SecurityServiceFactory.findSecurityService().authorize(Resource.CLUSTER, 
Operation.WRITE,
+Target.DISK);
 return bridge.backupAllMembers(targetDirPath, baselineDirPath);
-
   }
 
   @Override
@@ -60,7 +66,6 @@ public class DistributedSystemMBean extends 
NotificationBroadcasterSupport
   @Override
   public String[] listCacheServers() {
 return bridge.listCacheServers();
-
   }
 
 
@@ -243,7 +248,7 @@ public class DistributedSystemMBean extends 
NotificationBroadcasterSupport
   }
 
   @Override
-  public boolean revokeMissingDiskStores(final String diskStoreId) throws 
Exception {
+  public boolean revokeMissingDiskStores(final String diskStoreId) {
 return bridge.revokeMissingDiskStores(diskStoreId);
   }
 
@@ -433,6 +438,6 @@ public class DistributedSystemMBean extends 
NotificationBroadcasterSupport
 
   @Override
   public void setQueryCollectionsDepth(int queryCollectionsDepth) {
-bridge.setQueryCollectionsDepth(queryCollectionsDepth);;
+bridge.setQueryCollectionsDepth(queryCollectionsDepth);
   }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBean.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBean.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBean.java
index 9d717d0..271dce1 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBean.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBean.java
@@ -148,7 +148,12 @@ public class MemberMBean extends 
NotificationBroadcasterSupport implements Membe
 
   @Override
   public int getInitialImagesInProgres() {
-return bridge.getInitialImagesInProgres();
+return getInitialImagesInProgress();
+  }
+
+  @Override
+  public int getInitialImagesInProgress() {
+return bridge.getInitialImagesInProgress();
   }
 
 

http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBeanBridge.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBeanBridge.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBeanBridge.java
index 516b97d..dd905eb 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBeanBridge.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/beans/MemberMBeanBridge.java
@@ -14,7 +14,7 @@
  */
 package org.apache.geode.management.internal.beans;
 
-import static org.apache.geode.internal.lang.SystemUtils.*;
+import static org.apache.geode.internal.lang.SystemUtils.getLineSeparator;
 
 import java.io.File;
 import java.io.IOException;
@@ -1341,7 +1341,7 @@ public class MemberMBeanBridge {
 return 
getMemberLevelStatistic(StatsKey.GET_INITIAL_IMAGE_TIME).longValue();

[08/50] [abbrv] geode git commit: GEODE-2601: Fixing banner being logged twice during locator startup.

2017-06-27 Thread hiteshkhamesra
GEODE-2601: Fixing banner being logged twice during locator startup.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/2d3e05ec
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/2d3e05ec
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/2d3e05ec

Branch: refs/heads/feature/GEODE-2804v3
Commit: 2d3e05ecedf724af8d413f50567afc7f9a87e343
Parents: 3154424
Author: YehEmily 
Authored: Mon Jun 12 13:55:24 2017 -0700
Committer: Ken Howe 
Committed: Mon Jun 19 09:52:13 2017 -0700

--
 .../internal/InternalDistributedSystem.java | 24 
 .../distributed/internal/InternalLocator.java   | 41 ++--
 .../internal/logging/LogWriterFactory.java  | 20 --
 3 files changed, 53 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/2d3e05ec/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
index d77e8b9..4ed58af 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
@@ -18,6 +18,30 @@ package org.apache.geode.distributed.internal;
 import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
 import static org.apache.geode.distributed.ConfigurationProperties.MCAST_PORT;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.Reader;
+import java.lang.reflect.Array;
+import java.net.InetAddress;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Properties;
+import java.util.Set;
+import java.util.SortedSet;
+import java.util.StringTokenizer;
+import java.util.TreeSet;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicLong;
+import java.util.concurrent.atomic.AtomicReference;
+
+import org.apache.logging.log4j.Logger;
+
 import org.apache.geode.CancelCriterion;
 import org.apache.geode.CancelException;
 import org.apache.geode.ForcedDisconnectException;

http://git-wip-us.apache.org/repos/asf/geode/blob/2d3e05ec/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index ae548c4..3ff27ea 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -18,7 +18,24 @@ import static 
org.apache.geode.distributed.ConfigurationProperties.BIND_ADDRESS;
 import static 
org.apache.geode.distributed.ConfigurationProperties.CACHE_XML_FILE;
 import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
 
+import java.io.File;
+import java.io.IOException;
+import java.net.ConnectException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.concurrent.Callable;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
 import org.apache.commons.lang.StringUtils;
+import org.apache.logging.log4j.Logger;
+
 import org.apache.geode.CancelException;
 import org.apache.geode.cache.CacheFactory;
 import org.apache.geode.cache.GemFireCache;
@@ -65,22 +82,6 @@ import 
org.apache.geode.management.internal.configuration.handlers.SharedConfigu
 import 
org.apache.geode.management.internal.configuration.messages.ConfigurationRequest;
 import 
org.apache.geode.management.internal.configuration.messages.SharedConfigurationStatusRequest;
 import 
org.apache.geode.management.internal.configuration.messages.SharedConfigurationStatusResponse;
-import org.apache.logging.log4j.Logger;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.ConnectException;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.Collection;
-import java.util.HashMap;

[35/50] [abbrv] geode git commit: GEODE-2995: Handle stream of ProtoBuf encoded messages

2017-06-27 Thread hiteshkhamesra
GEODE-2995: Handle stream of ProtoBuf encoded messages

This for now exists in isolation, but will be hooked up with the code currently 
in review for GEODE-3075

Signed-off-by: Alexander Murmann 
Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/cdcc4d95
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/cdcc4d95
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/cdcc4d95

Branch: refs/heads/feature/GEODE-2804v3
Commit: cdcc4d95634ae6377c0198cadba92f52cd436be0
Parents: 4ace36a
Author: Udo Kohlmeyer 
Authored: Mon Jun 12 15:12:18 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 geode-protobuf/build.gradle |  64 ++
 .../org/apache/geode/ProtobufUtilities.java |  34 ++
 .../org/apache/geode/protocol/OpsProcessor.java |  53 
 .../InvalidProtocolMessageException.java|  25 
 .../handler/ProtobufStreamProcessor.java|  61 ++
 .../geode/protocol/handler/ProtocolHandler.java |  27 +
 .../protobuf/ProtobufProtocolHandler.java   |  41 +++
 .../protocol/operations/OperationHandler.java   |  27 +
 .../ProtobufRequestOperationParser.java |  33 +
 .../protobuf/GetRequestOperationHandler.java|  59 +
 .../registry/OperationsHandlerRegistry.java |  57 +
 ...rationHandlerAlreadyRegisteredException.java |  21 
 .../OperationHandlerNotRegisteredException.java |  21 
 .../ProtobufSerializationService.java   |  50 
 .../serialization/SerializationService.java |  27 +
 .../geode/serialization/SerializationType.java  |  36 ++
 .../apache/geode/serialization/TypeCodec.java   |  23 
 .../geode/serialization/codec/BinaryCodec.java  |  35 ++
 .../geode/serialization/codec/BooleanCodec.java |  37 ++
 .../geode/serialization/codec/ByteCodec.java|  37 ++
 .../geode/serialization/codec/DoubleCodec.java  |  37 ++
 .../geode/serialization/codec/FloatCodec.java   |  37 ++
 .../geode/serialization/codec/IntCodec.java |  38 ++
 .../geode/serialization/codec/JSONCodec.java|  37 ++
 .../geode/serialization/codec/LongCodec.java|  37 ++
 .../geode/serialization/codec/ShortCodec.java   |  37 ++
 .../geode/serialization/codec/StringCodec.java  |  39 ++
 .../UnsupportedEncodingTypeException.java   |  21 
 .../translation/EncodingTypeTranslator.java |  83 +
 .../UnsupportedEncodingTypeException.java   |  21 
 .../registry/SerializationCodecRegistry.java|  61 ++
 .../CodecAlreadyRegisteredForTypeException.java |  21 
 .../CodecNotRegisteredForTypeException.java |  21 
 geode-protobuf/src/main/proto/basicTypes.proto  |  60 +
 .../src/main/proto/clientProtocol.proto |  87 +
 geode-protobuf/src/main/proto/region_API.proto  | 106 
 geode-protobuf/src/main/proto/server_API.proto  |  37 ++
 ...pache.geode.protocol.handler.ProtocolHandler |   1 +
 ...e.geode.protocol.operations.OperationHandler |   1 +
 .../org.apache.geode.serialization.TypeCodec|  10 ++
 .../geode/client/protocol/IntegrationTest.java  | 121 +++
 .../geode/client/protocol/MessageUtil.java  |  41 +++
 .../geode/client/protocol/OpsHandler.java   |  21 
 .../geode/client/protocol/OpsProcessorTest.java |  64 ++
 .../ProtobufProtocolHandlerJUnitTest.java   |  88 ++
 .../GetRequestOperationHandlerTest.java |  95 +++
 .../OperationsHandlerRegistryJUnitTest.java |  94 ++
 .../ProtobufSerializationServiceImplTest.java   |  57 +
 .../codec/StringCodecJUnitTest.java |  64 ++
 ...eToSerializationTypeTranslatorJUnitTest.java |  72 +++
 .../registry/CodecRegistryJUnitTest.java| 113 +
 gradle/rat.gradle   |   6 +-
 settings.gradle |   4 +-
 53 files changed, 2394 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/build.gradle
--
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
new file mode 100644
index 000..2102f6a
--- /dev/null
+++ b/geode-protobuf/build.gradle
@@ -0,0 +1,64 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 

[21/50] [abbrv] geode git commit: GEODE-3101: Release local locks held by the JTA beforeCompletion() in client when the JTA failed on the server.

2017-06-27 Thread hiteshkhamesra
GEODE-3101: Release local locks held by the JTA beforeCompletion() in client  
when the JTA failed on the server.

  Also added a unit test would fail without the fix.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/b7f5391d
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/b7f5391d
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/b7f5391d

Branch: refs/heads/feature/GEODE-2804v3
Commit: b7f5391d983cda4d95dc34a21aeb414a3c0a14c2
Parents: 822946b
Author: eshu 
Authored: Wed Jun 21 15:41:25 2017 -0700
Committer: eshu 
Committed: Wed Jun 21 15:41:25 2017 -0700

--
 .../internal/cache/tx/ClientTXStateStub.java|  10 +-
 .../internal/jta/ClientServerJTADUnitTest.java  | 143 +++
 2 files changed, 151 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/b7f5391d/geode-core/src/main/java/org/apache/geode/internal/cache/tx/ClientTXStateStub.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tx/ClientTXStateStub.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tx/ClientTXStateStub.java
index ded789e..ab5701c 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tx/ClientTXStateStub.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tx/ClientTXStateStub.java
@@ -21,7 +21,7 @@ import java.util.List;
 import javax.transaction.Status;
 
 import org.apache.logging.log4j.Logger;
-
+import org.apache.geode.GemFireException;
 import org.apache.geode.cache.CommitConflictException;
 import org.apache.geode.cache.TransactionDataNodeHasDepartedException;
 import org.apache.geode.cache.TransactionException;
@@ -237,7 +237,13 @@ public class ClientTXStateStub extends TXStateStub {
   @Override
   public void beforeCompletion() {
 obtainLocalLocks();
-this.firstProxy.beforeCompletion(proxy.getTxId().getUniqId());
+try {
+  this.firstProxy.beforeCompletion(proxy.getTxId().getUniqId());
+} catch (GemFireException e) {
+  this.lockReq.releaseLocal();
+  this.firstProxy.getPool().releaseServerAffinity();
+  throw e;
+}
   }
 
   public InternalDistributedMember getOriginatingMember() {

http://git-wip-us.apache.org/repos/asf/geode/blob/b7f5391d/geode-core/src/test/java/org/apache/geode/internal/jta/ClientServerJTADUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/jta/ClientServerJTADUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/jta/ClientServerJTADUnitTest.java
new file mode 100644
index 000..51ef44a
--- /dev/null
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/jta/ClientServerJTADUnitTest.java
@@ -0,0 +1,143 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.internal.jta;
+
+import static org.junit.Assert.*;
+
+import java.io.IOException;
+import java.util.Properties;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.TimeoutException;
+
+import javax.transaction.Status;
+
+import org.apache.geode.GemFireException;
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Region;
+import org.apache.geode.cache.RegionShortcut;
+import org.apache.geode.cache.client.ClientCache;
+import org.apache.geode.cache.client.ClientCacheFactory;
+import org.apache.geode.cache.client.ClientRegionShortcut;
+import org.apache.geode.cache.server.CacheServer;
+import org.apache.geode.internal.AvailablePortHelper;
+import org.apache.geode.internal.cache.TXManagerImpl;
+import org.apache.geode.internal.cache.TXStateProxyImpl;
+import org.apache.geode.internal.cache.tx.ClientTXStateStub;
+import org.apache.geode.test.dunit.Assert;
+import org.apache.geode.test.dunit.Host;
+import org.apache.geode.test.dunit.VM;
+import org.apache.geode.test.dunit.cache.internal.JUnit4CacheTestCase;
+import 

[09/50] [abbrv] geode git commit: GEODE-2601: Updated based on feedback

2017-06-27 Thread hiteshkhamesra
GEODE-2601: Updated based on feedback

This closes #582


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/87c26be4
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/87c26be4
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/87c26be4

Branch: refs/heads/feature/GEODE-2804v3
Commit: 87c26be495de5a23290231e97826cb434277c66b
Parents: 2d3e05e
Author: YehEmily 
Authored: Fri Jun 16 09:06:56 2017 -0700
Committer: Ken Howe 
Committed: Mon Jun 19 10:05:12 2017 -0700

--
 .../geode/distributed/internal/InternalDistributedSystem.java  | 3 +--
 .../org/apache/geode/distributed/internal/InternalLocator.java | 6 ++
 2 files changed, 3 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/87c26be4/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
index 4ed58af..1572355 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
@@ -2189,9 +2189,8 @@ public class InternalDistributedSystem extends 
DistributedSystem
* @param resource the actual resource object.
*/
   private void notifyResourceEventListeners(ResourceEvent event, Object 
resource) {
-for (Iterator iter = resourceListeners.iterator(); 
iter.hasNext();) {
+for (ResourceEventsListener listener : resourceListeners) {
   try {
-ResourceEventsListener listener = iter.next();
 listener.handleEvent(event, resource);
   } catch (CancelException e) {
 // ignore

http://git-wip-us.apache.org/repos/asf/geode/blob/87c26be4/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index 3ff27ea..6eaaec2 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -469,15 +469,13 @@ public class InternalLocator extends Locator implements 
ConnectListener {
 // if security-log-file then create securityLogWriterAppender
 
LogWriterAppenders.getOrCreateAppender(LogWriterAppenders.Identifier.SECURITY, 
true, false,
 this.config, false);
-
   }
-// do not create a LogWriterAppender for security -- let it go through 
to logWriterAppender
+  // do not create a LogWriterAppender for security -- let it go through 
to logWriterAppender
 }
 
 // LOG: create LogWriters for GemFireTracer (or use whatever was passed in)
 if (logWriter == null) {
-  logWriter = LogWriterFactory.createLogWriterLogger(false, false, 
this.config,
-  false);
+  logWriter = LogWriterFactory.createLogWriterLogger(false, false, 
this.config, false);
   if (logger.isDebugEnabled()) {
 logger.debug("LogWriter for locator is created.");
   }



[01/50] [abbrv] geode git commit: GEODE-2301 Doc note to deprecate Geode JTA trans mgr [Forced Update!]

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804v3 b73119046 -> ea8840fc9 (forced update)


GEODE-2301 Doc note to deprecate Geode JTA trans mgr

This closes #581


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/42350f1a
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/42350f1a
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/42350f1a

Branch: refs/heads/feature/GEODE-2804v3
Commit: 42350f1ac3a5cac92f60284863a9d704097b5288
Parents: 5546a87
Author: Karen Miller 
Authored: Thu Jun 15 10:39:44 2017 -0700
Committer: Karen Miller 
Committed: Fri Jun 16 09:42:35 2017 -0700

--
 geode-docs/developing/transactions/JTA_transactions.html.md.erb | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/42350f1a/geode-docs/developing/transactions/JTA_transactions.html.md.erb
--
diff --git a/geode-docs/developing/transactions/JTA_transactions.html.md.erb 
b/geode-docs/developing/transactions/JTA_transactions.html.md.erb
index 3164dce..ffb6082 100644
--- a/geode-docs/developing/transactions/JTA_transactions.html.md.erb
+++ b/geode-docs/developing/transactions/JTA_transactions.html.md.erb
@@ -190,6 +190,7 @@ See [JCA Resource Adapter 
Example](jca_adapter_example.html#concept_swv_z2p_wk)
 ## Using Geode as the 
JTA Transaction Manager
 
 You can also use Geode as the JTA transaction manager.
+As of Geode 1.2, Geode's JTA transaction manager is deprecated.
 
 Geode ships with its own implementation of a JTA transaction manager. However, 
note that this implementation is not XA-compliant; therefore, it does not 
persist any state, which could lead to an inconsistent state after recovering a 
crashed member.
 



[15/50] [abbrv] geode git commit: GEODE-3095: fix parameter type mismatch between the diskstore command and controller

2017-06-27 Thread hiteshkhamesra
GEODE-3095: fix parameter type mismatch between the diskstore command and 
controller


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/ee5f60c7
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/ee5f60c7
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/ee5f60c7

Branch: refs/heads/feature/GEODE-2804v3
Commit: ee5f60c7fdac7227983a7e3bfac7094593e15ed0
Parents: d8a11d1
Author: Jinmei Liao 
Authored: Mon Jun 19 11:02:20 2017 -0700
Committer: Jinmei Liao 
Committed: Mon Jun 19 21:18:59 2017 -0700

--
 .../web/controllers/DiskStoreCommandsController.java | 11 ++-
 .../management/internal/security/TestCommand.java| 15 +--
 2 files changed, 15 insertions(+), 11 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/ee5f60c7/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/DiskStoreCommandsController.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/DiskStoreCommandsController.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/DiskStoreCommandsController.java
index c613a8a..2e06811 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/DiskStoreCommandsController.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/DiskStoreCommandsController.java
@@ -14,9 +14,8 @@
  */
 package org.apache.geode.management.internal.web.controllers;
 
-import org.apache.geode.internal.lang.StringUtils;
-import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
+import java.util.concurrent.Callable;
+
 import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.PathVariable;
@@ -25,7 +24,9 @@ import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import java.util.concurrent.Callable;
+import org.apache.geode.internal.lang.StringUtils;
+import org.apache.geode.management.internal.cli.i18n.CliStrings;
+import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
 
 /**
  * The DiskStoreCommandsController class implements GemFire Management REST 
API web service
@@ -107,7 +108,7 @@ public class DiskStoreCommandsController extends 
AbstractCommandsController {
   @RequestParam(value = 
CliStrings.CREATE_DISK_STORE__DISK_USAGE_WARNING_PCT,
   defaultValue = "90") final Float diskUsageWarningPercentage,
   @RequestParam(value = 
CliStrings.CREATE_DISK_STORE__DISK_USAGE_CRITICAL_PCT,
-  defaultValue = "99") final Integer diskUsageCriticalPercentage,
+  defaultValue = "99") final Float diskUsageCriticalPercentage,
   @RequestParam(value = CliStrings.GROUP, required = false) final String[] 
groups) {
 CommandStringBuilder command = new 
CommandStringBuilder(CliStrings.CREATE_DISK_STORE);
 

http://git-wip-us.apache.org/repos/asf/geode/blob/ee5f60c7/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
index ea4b60d..800d0da 100644
--- 
a/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
@@ -14,14 +14,16 @@
  */
 package org.apache.geode.management.internal.security;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import org.apache.shiro.authz.Permission;
+
 import org.apache.geode.security.ResourcePermission;
-import org.apache.geode.security.ResourcePermission.Target;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
-import org.apache.shiro.authz.Permission;
-
-import java.util.ArrayList;
-import java.util.List;
+import org.apache.geode.security.ResourcePermission.Target;
 
 public class TestCommand {
 
@@ -77,7 +79,8 @@ public class TestCommand {
   }
 
   public static List getCommands() {
-return testCommands;
+// returns a copy of the list every time
+return testCommands.stream().collect(Collectors.toList());
   }
 
   public static List getPermittedCommands(Permission permission) {



[04/50] [abbrv] geode git commit: GEODE-2854: GEODE REST API Docs Missing Authentication This closes #583

2017-06-27 Thread hiteshkhamesra
GEODE-2854: GEODE REST API Docs Missing Authentication
This closes #583


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/78f08e8a
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/78f08e8a
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/78f08e8a

Branch: refs/heads/feature/GEODE-2804v3
Commit: 78f08e8a224cf99ff9981acacbf88452911f9069
Parents: dbc3197
Author: Dave Barnes 
Authored: Thu Jun 15 13:43:41 2017 -0700
Committer: Dave Barnes 
Committed: Fri Jun 16 15:47:05 2017 -0700

--
 .../source/subnavs/geode-subnav.erb |   8 +-
 geode-docs/rest_apps/setup_config.html.md.erb   | 269 ---
 2 files changed, 176 insertions(+), 101 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/78f08e8a/geode-book/master_middleman/source/subnavs/geode-subnav.erb
--
diff --git a/geode-book/master_middleman/source/subnavs/geode-subnav.erb 
b/geode-book/master_middleman/source/subnavs/geode-subnav.erb
index aa0faf4..37c0b83 100644
--- a/geode-book/master_middleman/source/subnavs/geode-subnav.erb
+++ b/geode-book/master_middleman/source/subnavs/geode-subnav.erb
@@ -1576,8 +1576,14 @@ limitations under the License.
 
 Prerequisites and Limitations 
for Writing REST Applications
 
-
+
 Setup and Configuration
+
+Enabling
 the REST API
+Starting
 the REST API Service
+Implementing
 Authentication
+Programmatic
 Startup
+
 
 
 Using the Swagger UI to 
Browse REST APIs

http://git-wip-us.apache.org/repos/asf/geode/blob/78f08e8a/geode-docs/rest_apps/setup_config.html.md.erb
--
diff --git a/geode-docs/rest_apps/setup_config.html.md.erb 
b/geode-docs/rest_apps/setup_config.html.md.erb
index 566b1a2..c557f4f 100644
--- a/geode-docs/rest_apps/setup_config.html.md.erb
+++ b/geode-docs/rest_apps/setup_config.html.md.erb
@@ -19,7 +19,10 @@ See the License for the specific language governing 
permissions and
 limitations under the License.
 -->
 
-The Apache Geode developer REST interface runs as an embedded HTTP or HTTPS 
service (Jetty server) within a Geode data node.
+The Apache Geode Developer REST interface runs as an embedded HTTP or HTTPS 
service (Jetty server) within one
+or more Geode servers.
+
+# REST API Libraries
 
 All Geode REST interface classes and required JAR files are distributed as a 
WAR file with the Geode product distribution. You can find the file in the 
following location:
 
@@ -29,162 +32,228 @@ All Geode REST interface classes and required JAR files 
are distributed as a WAR
 
 where _install-dir_ is the server installation directory and _n.n.n_ is a 
version number.
 
-To enable the developer REST API service in Apache Geode, set the 
`start-dev-rest-api` Geode property to `true` when starting a data node using 
either `gfsh` or the ServerLauncher API. Setting this property to true on a 
data node will start up an embedded Jetty server and deploy the REST developer 
API WAR file.
+# Enabling the 
REST API
+
+The REST API service for application development runs only on servers; you 
cannot run the service on a locator.
 
-**Note:**
-The REST API service for application development runs only on servers; you 
cannot use locators to host the developer Geode REST API services.
+To enable the Developer REST API service on a given server, set the 
`start-dev-rest-api` property
+to `true` for the server, using either the `gfsh start server` command or the 
ServerLauncher API.
+This starts an embedded Jetty server and deploys the Developer REST API WAR 
file on that server.
 
-You can have multiple REST enabled data nodes in a single distributed system. 
Each data node should
-have a separate host name and unique end point. To ensure that the data node 
is reachable on a
-machine with multiple NIC addresses, you can use `http-service-bind-address` 
to bind an address to
-the REST API service (as well as the other embedded web services such as 
Pulse).
+## Enabling the REST API on Multiple Servers
 
-You can also configure the Developer REST API service to run over
-HTTPS by enabling ssl for the `http` component in `gemfire.properties`
-or `gfsecurity.properties` or on server startup:
-See [SSL](../managing/security/ssl_overview.html) for details on configuring 
SSL parameters.
-These SSL parameters apply to all HTTP services hosted on the configured 

[48/50] [abbrv] geode git commit: GEODE-2919: revert: fix lucene security tests

2017-06-27 Thread hiteshkhamesra
GEODE-2919: revert: fix lucene security tests


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/718583b2
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/718583b2
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/718583b2

Branch: refs/heads/feature/GEODE-2804v3
Commit: 718583b294857a1263d123b8f12ed2ac4931f477
Parents: e5204ce
Author: Jinmei Liao 
Authored: Tue Jun 27 09:25:49 2017 -0700
Committer: Jinmei Liao 
Committed: Tue Jun 27 09:25:49 2017 -0700

--
 .../lucene/LuceneClientSecurityDUnitTest.java   |  14 +-
 .../lucene/LuceneCommandsSecurityDUnitTest.java | 293 +++
 .../lucene/LuceneCommandsSecurityTest.java  | 269 -
 3 files changed, 299 insertions(+), 277 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/718583b2/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
--
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
index f71caec..f78e19f 100644
--- 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
+++ 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
@@ -50,7 +50,7 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
   @Test
   @Parameters(method = "getSearchIndexUserNameAndExpectedResponses")
   public void verifySearchIndexPermissions(
-  LuceneCommandsSecurityTest.UserNameAndExpectedResponse user) {
+  LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse user) {
 // Start server
 int serverPort = dataStore1.invoke(() -> startCacheServer());
 
@@ -97,16 +97,14 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
 } catch (ServerOperationException e) {
   assertTrue(e.getCause() != null && e.getCause() instanceof 
NotAuthorizedException);
   assertTrue(expectAuthorizationError);
-  if (expectedResponse != null) {
-assertTrue(e.getLocalizedMessage().contains(expectedResponse));
-  }
+  assertTrue(e.getLocalizedMessage().contains(expectedResponse));
 }
   }
 
-  protected LuceneCommandsSecurityTest.UserNameAndExpectedResponse[] 
getSearchIndexUserNameAndExpectedResponses() {
-return new LuceneCommandsSecurityTest.UserNameAndExpectedResponse[] {
-new 
LuceneCommandsSecurityTest.UserNameAndExpectedResponse("nopermissions", true,
+  protected LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse[] 
getSearchIndexUserNameAndExpectedResponses() {
+return new LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse[] {
+new 
LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse("nopermissions", 
true,
 "nopermissions not authorized for DATA:WRITE"),
-new 
LuceneCommandsSecurityTest.UserNameAndExpectedResponse("datawrite", false)};
+new 
LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse("datawrite", false, 
null)};
   }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/718583b2/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
--
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
new file mode 100644
index 000..7116601
--- /dev/null
+++ 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
@@ -0,0 +1,293 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.cache.lucene;
+
+import static 
org.apache.geode.cache.lucene.test.LuceneTestUtilities.INDEX_NAME;
+import static 

[38/50] [abbrv] geode git commit: GEODE-2995: Implementing review feedback

2017-06-27 Thread hiteshkhamesra
GEODE-2995: Implementing review feedback

Numerous tweaks and fixes
Created protobuf package under org.apache.geode.protocol and moved several 
classes
Added javadoc comments

Signed-off-by: Galen O'Sullivan 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/31f4de06
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/31f4de06
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/31f4de06

Branch: refs/heads/feature/GEODE-2804v3
Commit: 31f4de065bd32b5801017427a14cec142c5897fc
Parents: c71c28d
Author: Brian Rowe 
Authored: Tue Jun 20 15:49:11 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 geode-protobuf/build.gradle |  2 -
 .../org/apache/geode/ProtobufUtilities.java | 34 
 .../org/apache/geode/protocol/OpsProcessor.java | 53 
 .../InvalidProtocolMessageException.java|  3 +
 .../handler/ProtobufStreamProcessor.java| 61 --
 .../geode/protocol/handler/ProtocolHandler.java | 27 --
 .../protobuf/ProtobufProtocolHandler.java   | 41 -
 .../protocol/operations/OperationHandler.java   | 10 +++
 .../ProtobufRequestOperationParser.java | 33 
 .../protobuf/GetRequestOperationHandler.java| 59 -
 .../registry/OperationsHandlerRegistry.java |  3 +
 ...rationHandlerAlreadyRegisteredException.java |  3 +
 .../OperationHandlerNotRegisteredException.java |  3 +
 .../protobuf/EncodingTypeTranslator.java| 86 +++
 .../protocol/protobuf/ProtobufOpsProcessor.java | 66 +++
 .../protobuf/ProtobufSerializationService.java  | 51 
 .../protobuf/ProtobufStreamProcessor.java   | 60 +
 .../protocol/protobuf/ProtobufUtilities.java| 34 
 .../operations/GetRequestOperationHandler.java  | 58 +
 .../serializer/ProtobufProtocolSerializer.java  | 41 +
 .../protocol/serializer/ProtocolSerializer.java | 31 +++
 .../ProtobufSerializationService.java   | 50 ---
 .../UnsupportedEncodingTypeException.java   |  3 +
 .../translation/EncodingTypeTranslator.java | 83 --
 .../UnsupportedEncodingTypeException.java   | 21 -
 .../CodecAlreadyRegisteredForTypeException.java |  3 +
 .../CodecNotRegisteredForTypeException.java |  3 +
 ...pache.geode.protocol.handler.ProtocolHandler |  1 -
 ...e.geode.protocol.operations.OperationHandler |  2 +-
 ...geode.protocol.serializer.ProtocolSerializer |  1 +
 .../geode/client/protocol/IntegrationTest.java  | 32 +++
 .../geode/client/protocol/OpsProcessorTest.java | 64 --
 .../ProtobufProtocolHandlerJUnitTest.java   | 88 
 .../GetRequestOperationHandlerTest.java |  4 +-
 .../protobuf/ProtobufOpsProcessorTest.java  | 62 ++
 .../ProtobufProtocolSerializerJUnitTest.java| 81 ++
 .../ProtobufSerializationServiceImplTest.java   |  5 +-
 ...eToSerializationTypeTranslatorJUnitTest.java |  1 +
 .../registry/CodecRegistryJUnitTest.java| 16 ++--
 39 files changed, 632 insertions(+), 647 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/build.gradle
--
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
index 2102f6a..f069267 100644
--- a/geode-protobuf/build.gradle
+++ b/geode-protobuf/build.gradle
@@ -44,13 +44,11 @@ protobuf {
 // The artifact spec for the Protobuf Compiler
 artifact = 'com.google.protobuf:protoc:3.0.0'
 }
-// this allows our spotless rule to skip this directory (hopefully rat too)
 generatedFilesBaseDir = "$buildDir/generated-src/proto"
 }
 
 sourceSets {
 main {
-
 java {
 srcDir 'build/generated-src/proto/main/java'
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java 
b/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java
deleted file mode 100644
index c25fc14..000
--- a/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
- * agreements. See the NOTICE file distributed with this work for additional 
information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
- * "License"); you may not use this file 

[27/50] [abbrv] geode git commit: GEODE-2919: Provide finer grained security

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/FunctionCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/FunctionCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/FunctionCommands.java
index c04820e..21d89c1 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/FunctionCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/FunctionCommands.java
@@ -14,6 +14,20 @@
  */
 package org.apache.geode.management.internal.cli.commands;
 
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.stream.Stream;
+
+import org.apache.commons.lang.BooleanUtils;
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
 import org.apache.geode.SystemFailure;
 import org.apache.geode.cache.Region;
 import org.apache.geode.cache.execute.Execution;
@@ -40,7 +54,6 @@ import 
org.apache.geode.management.internal.cli.functions.ListFunctionFunction;
 import org.apache.geode.management.internal.cli.functions.UnregisterFunction;
 import 
org.apache.geode.management.internal.cli.functions.UserFunctionExecution;
 import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CommandResultException;
 import org.apache.geode.management.internal.cli.result.CompositeResultData;
 import org.apache.geode.management.internal.cli.result.ErrorResultData;
 import org.apache.geode.management.internal.cli.result.ResultBuilder;
@@ -48,18 +61,7 @@ import 
org.apache.geode.management.internal.cli.result.TabularResultData;
 import org.apache.geode.management.internal.security.ResourceOperation;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
+import org.apache.geode.security.ResourcePermission.Target;
 
 /**
  * @since GemFire 7.0
@@ -77,25 +79,18 @@ public class FunctionCommands implements GfshCommand {
   @CliOption(key = CliStrings.EXECUTE_FUNCTION__ID, mandatory = true,
   help = CliStrings.EXECUTE_FUNCTION__ID__HELP) String functionId,
   @CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
-  unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE,
   optionContext = ConverterHint.MEMBERGROUP,
   help = CliStrings.EXECUTE_FUNCTION__ONGROUPS__HELP) String[] 
onGroups,
-  @CliOption(key = CliStrings.MEMBER,
-  unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE,
-  optionContext = ConverterHint.MEMBERIDNAME,
+  @CliOption(key = CliStrings.MEMBER, optionContext = 
ConverterHint.MEMBERIDNAME,
   help = CliStrings.EXECUTE_FUNCTION__ONMEMBER__HELP) String onMember,
   @CliOption(key = CliStrings.EXECUTE_FUNCTION__ONREGION,
-  unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE,
   optionContext = ConverterHint.REGION_PATH,
   help = CliStrings.EXECUTE_FUNCTION__ONREGION__HELP) String onRegion,
   @CliOption(key = CliStrings.EXECUTE_FUNCTION__ARGUMENTS,
-  unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE,
   help = CliStrings.EXECUTE_FUNCTION__ARGUMENTS__HELP) String[] 
arguments,
   @CliOption(key = CliStrings.EXECUTE_FUNCTION__RESULTCOLLECTOR,
-  unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE,
   help = CliStrings.EXECUTE_FUNCTION__RESULTCOLLECTOR__HELP) String 
resultCollector,
   @CliOption(key = CliStrings.EXECUTE_FUNCTION__FILTER,
-  unspecifiedDefaultValue = CliMetaData.ANNOTATION_NULL_VALUE,
   help = CliStrings.EXECUTE_FUNCTION__FILTER__HELP) String 
filterString) {
 
 Result result = null;
@@ -105,8 +100,8 @@ public class FunctionCommands implements GfshCommand {
 resultTable.setHeader(headerText);
 ResultCollector resultCollectorInstance = null;
 Function function;
-Set filters = new HashSet();
-Execution execution = null;
+Set filters = new HashSet<>();
+Execution execution;
 if (functionId != null) {
   functionId = functionId.trim();
 }
@@ -130,31 +125,8 @@ public class FunctionCommands 

[29/50] [abbrv] geode git commit: GEODE-2919: Provide finer grained security

2017-06-27 Thread hiteshkhamesra
GEODE-2919: Provide finer grained security

 - For full details, see 
https://cwiki.apache.org/confluence/display/GEODE/Finer+grained+security


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/451d12e8
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/451d12e8
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/451d12e8

Branch: refs/heads/feature/GEODE-2804v3
Commit: 451d12e83c2457c22535ae684995e973ba8d3dd2
Parents: 3ee585c
Author: Patrick Rhomberg 
Authored: Wed Jun 21 10:51:32 2017 -0700
Committer: Jared Stewart 
Committed: Fri Jun 23 15:46:01 2017 -0700

--
 .../geode/management/CacheServerMXBean.java | 122 ++---
 .../geode/management/DiskStoreMXBean.java   |  68 +--
 .../management/DistributedSystemMXBean.java | 174 +++
 .../geode/management/GatewayReceiverMXBean.java |  75 +--
 .../geode/management/GatewaySenderMXBean.java   |  88 ++--
 .../geode/management/LockServiceMXBean.java |  20 +-
 .../apache/geode/management/MemberMXBean.java   | 263 +-
 .../internal/beans/DistributedSystemMBean.java  |  21 +-
 .../management/internal/beans/MemberMBean.java  |   7 +-
 .../internal/beans/MemberMBeanBridge.java   |   4 +-
 .../internal/cli/commands/ClientCommands.java   |  90 ++--
 .../CreateAlterDestroyRegionCommands.java   |  43 +-
 .../internal/cli/commands/DataCommands.java |  64 ++-
 .../internal/cli/commands/DeployCommands.java   |  34 +-
 .../cli/commands/DiskStoreCommands.java | 222 -
 .../cli/commands/DurableClientCommands.java |  90 ++--
 .../internal/cli/commands/FunctionCommands.java | 136 ++
 .../internal/cli/commands/GfshCommand.java  |  20 +-
 .../internal/cli/commands/IndexCommands.java| 138 +++---
 .../cli/commands/MiscellaneousCommands.java | 258 +-
 .../internal/cli/commands/PDXCommands.java  |  39 +-
 .../internal/cli/commands/QueueCommands.java|  55 +--
 .../internal/cli/commands/RegionCommands.java   |  76 ++-
 .../internal/cli/commands/WanCommands.java  | 219 +
 .../commands/lifecycle/StartPulseCommand.java   |  18 +-
 .../cli/functions/ContinuousQueryFunction.java  | 148 ++
 .../cli/functions/ContunuousQueryFunction.java  | 150 --
 .../cli/functions/RegionFunctionArgs.java   |  26 +-
 .../cli/functions/UserFunctionExecution.java|  42 +-
 .../internal/cli/i18n/CliStrings.java   |  44 +-
 .../internal/cli/remote/CommandProcessor.java   |  17 +-
 .../internal/security/MBeanServerWrapper.java   |  38 +-
 .../MemberMBeanAttributesDUnitTest.java |  35 +-
 .../bean/stats/MemberLevelStatsJUnitTest.java   |   8 +-
 .../CreateAlterDestroyRegionCommandsTest.java   |  17 +-
 ...CacheServerMBeanAuthenticationJUnitTest.java |  20 +-
 .../CacheServerMBeanAuthorizationJUnitTest.java |  42 +-
 ...eServerMBeanWithShiroIniIntegrationTest.java |  15 +-
 .../security/CliCommandsSecurityTest.java   |  34 +-
 .../security/DataCommandsSecurityTest.java  |  13 +-
 .../security/DeployCommandsSecurityTest.java|  28 +-
 .../DiskStoreMXBeanSecurityJUnitTest.java   |  98 ++--
 .../DistributedSystemMXBeanSecurityTest.java|  77 +++
 .../GatewayReceiverMBeanSecurityTest.java   |  42 +-
 .../GatewaySenderMBeanSecurityTest.java |  68 +--
 .../security/GfshCommandsPostProcessorTest.java |  28 +-
 .../security/GfshCommandsSecurityTest.java  |  76 +--
 .../LockServiceMBeanAuthorizationJUnitTest.java |  73 ++-
 .../security/MBeanSecurityJUnitTest.java|  30 +-
 .../ManagerMBeanAuthorizationJUnitTest.java |  30 +-
 .../security/MemberMBeanSecurityJUnitTest.java  |  51 +-
 .../internal/security/MultiUserDUnitTest.java   | 102 ++--
 .../security/ResourcePermissionTest.java|  13 +-
 .../internal/security/TestCommand.java  | 157 +++---
 .../dunit/rules/LocatorServerStartupRule.java   |  19 +-
 .../test/dunit/rules/MemberStarterRule.java |   6 +
 .../codeAnalysis/sanctionedSerializables.txt|   4 +-
 .../cli/commands/ClientCommandsDUnitTest.java   | 478 ++-
 .../internal/cli/LuceneIndexCommands.java   |  58 ++-
 .../lucene/internal/cli/LuceneIndexInfo.java|  10 -
 .../functions/LuceneCreateIndexFunction.java|  14 +-
 .../lucene/LuceneCommandsSecurityDUnitTest.java | 126 +++--
 .../GfshCommandsOverHttpSecurityTest.java   |   4 +-
 63 files changed, 2342 insertions(+), 2243 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/main/java/org/apache/geode/management/CacheServerMXBean.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/CacheServerMXBean.java 

[12/50] [abbrv] geode git commit: Merge branch 'feature/GEODE-3071' into develop

2017-06-27 Thread hiteshkhamesra
Merge branch 'feature/GEODE-3071' into develop


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/80667f30
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/80667f30
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/80667f30

Branch: refs/heads/feature/GEODE-2804v3
Commit: 80667f30ef66d52987235374f3c95f6a39e0cd78
Parents: 8db7862 dba7dcd
Author: Jens Deppe 
Authored: Mon Jun 19 14:22:22 2017 -0700
Committer: Jens Deppe 
Committed: Mon Jun 19 14:22:22 2017 -0700

--
 build.gradle |   7 
 gradle.properties|   7 
 gradle/docker.gradle | 100 ++
 3 files changed, 114 insertions(+)
--




[45/50] [abbrv] geode git commit: Move new exception to sanctioned serializables.

2017-06-27 Thread hiteshkhamesra
Move new exception to sanctioned serializables.

Although we don't serialize it, exceptions sometimes get sent between
JVMs so it's best to be careful.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/e1c6c3a9
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/e1c6c3a9
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/e1c6c3a9

Branch: refs/heads/feature/GEODE-2804v3
Commit: e1c6c3a973413045c595fcf31a01c269e7df7e82
Parents: da64fc6
Author: Galen OSullivan 
Authored: Fri Jun 23 10:42:45 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../resources/org/apache/geode/codeAnalysis/excludedClasses.txt | 1 -
 .../org/apache/geode/codeAnalysis/sanctionedSerializables.txt   | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/e1c6c3a9/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
index c2629f1..6a6e0c1 100644
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
@@ -7,7 +7,6 @@ org/apache/geode/distributed/LocatorLauncher$Command
 org/apache/geode/distributed/ServerLauncher
 org/apache/geode/distributed/ServerLauncher$Command
 org/apache/geode/distributed/internal/DistributionManager
-org/apache/geode/internal/cache/tier/sockets/ServiceLoadingFailureException
 org/apache/geode/internal/JarDeployer
 org/apache/geode/internal/logging/GemFireLevel
 org/apache/geode/internal/logging/LoggingThreadGroup

http://git-wip-us.apache.org/repos/asf/geode/blob/e1c6c3a9/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
index 135f509..e5a111c 100755
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
@@ -340,6 +340,7 @@ 
org/apache/geode/internal/cache/tier/sockets/CacheClientNotifier$2,false,this$0:
 
org/apache/geode/internal/cache/tier/sockets/CacheClientProxy$MessageDispatcher$1,true,0,this$0:org/apache/geode/internal/cache/tier/sockets/CacheClientProxy$MessageDispatcher
 
org/apache/geode/internal/cache/tier/sockets/ClientTombstoneMessage$TOperation,false
 
org/apache/geode/internal/cache/tier/sockets/MessageTooLargeException,true,-8970585803331525833
+org/apache/geode/internal/cache/tier/sockets/ServiceLoadingFailureException,false
 
org/apache/geode/internal/cache/tier/sockets/UnregisterAllInterest,true,5026160621257178459
 
org/apache/geode/internal/cache/tx/TransactionalOperation$ServerRegionOperation,false
 
org/apache/geode/internal/cache/versions/ConcurrentCacheModificationException,true,2316928221010347462



[50/50] [abbrv] geode git commit: GEODE-2804 Caching the InetAddress for configured ip string

2017-06-27 Thread hiteshkhamesra
 GEODE-2804 Caching the InetAddress for configured ip string

1. We keep configure host string in HostAddress class
2. We reuse InetsocketAddress if it is ipString.
3. Client has logic to retry thus we keep InetsocketAddress even if
   it is not ip string.

GEODE-3017 IPv6 issue on windows. Above changes fixed this issue.

GEODE-2940 Now we don't validate configure host string on start. As
there is possibility that host may not available.

1. Earlier wan config were failing because of that. Now we just keep
those configure host string. And try this later.

Added unit tests for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/ea8840fc
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/ea8840fc
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/ea8840fc

Branch: refs/heads/feature/GEODE-2804v3
Commit: ea8840fc98c794e58f380fb6a82f1002f195152e
Parents: 3a46b79
Author: Hitesh Khamesra 
Authored: Tue Jun 27 12:51:12 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 12:54:17 2017 -0700

--
 geode-assembly/build.gradle |   1 +
 .../src/test/resources/expected_jars.txt|   3 +-
 geode-core/build.gradle |   3 +
 .../admin/internal/DistributionLocatorImpl.java |   6 +-
 .../internal/AutoConnectionSourceImpl.java  | 133 +++
 .../geode/cache/client/internal/PoolImpl.java   |  15 ++-
 .../internal/AbstractDistributionConfig.java|   8 +-
 .../internal/InternalDistributedSystem.java |   6 +-
 .../internal/membership/gms/GMSUtil.java|  11 +-
 .../membership/gms/locator/GMSLocator.java  |   9 +-
 .../membership/gms/membership/GMSJoinLeave.java |   8 +-
 .../membership/gms/membership/HostAddress.java  | 118 
 .../internal/tcpserver/TcpClient.java   |   3 +-
 .../admin/remote/DistributionLocatorId.java |  45 +--
 .../admin/remote/RemoteTransportConfig.java |   5 +-
 .../cache/ClusterConfigurationLoader.java   |   2 +-
 .../geode/internal/cache/PoolFactoryImpl.java   |  30 +++--
 .../internal/AutoConnectionSourceDUnitTest.java |  12 +-
 .../AutoConnectionSourceImplJUnitTest.java  |  84 ++--
 .../internal/DistributionConfigJUnitTest.java   |   2 +-
 .../internal/StartupMessageDataJUnitTest.java   |   4 +-
 .../gms/membership/GMSJoinLeaveJUnitTest.java   |   1 +
 .../geode/codeAnalysis/excludedClasses.txt  |   3 +-
 .../internal/locator/wan/LocatorDiscovery.java  |  10 +-
 .../wan/LocatorMembershipListenerImpl.java  |   8 +-
 .../cache/wan/AbstractRemoteGatewaySender.java  |   4 +-
 .../wan/misc/WanAutoDiscoveryDUnitTest.java |   7 +-
 gradle/dependency-versions.properties   |   1 +
 28 files changed, 403 insertions(+), 139 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/ea8840fc/geode-assembly/build.gradle
--
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 39bb542..95ccc70 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -140,6 +140,7 @@ def cp = {
 it.contains('commons-collections') ||
 it.contains('commons-lang') ||
 it.contains('commons-logging') ||
+it.contains('commons-validator') ||
 it.contains('fast-classpath-scanner') ||
 it.contains('fastutil') ||
 it.contains('jackson-annotations') ||

http://git-wip-us.apache.org/repos/asf/geode/blob/ea8840fc/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index 6260167..b0e7154 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -85,4 +85,5 @@ springfox-spring-web
 springfox-swagger
 springfox-swagger-common
 springfox-swagger-ui
-swagger-models
\ No newline at end of file
+swagger-models
+commons-validator

http://git-wip-us.apache.org/repos/asf/geode/blob/ea8840fc/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 7f34b4a..9ecb0f9 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -39,6 +39,8 @@ dependencies {
   compile 'antlr:antlr:' + project.'antlr.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + 
project.'jackson.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
+  compile 'commons-validator:commons-validator:' + 
project.'commons-validator.version'
+
   

[39/50] [abbrv] geode git commit: GEODE-2995: more review feedback and spotlessApply

2017-06-27 Thread hiteshkhamesra
GEODE-2995: more review feedback and spotlessApply

Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/0de1d97e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/0de1d97e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/0de1d97e

Branch: refs/heads/feature/GEODE-2804v3
Commit: 0de1d97ea229ec43203437f58971c44fe37cef62
Parents: 31f4de0
Author: Galen O'Sullivan 
Authored: Tue Jun 20 16:58:51 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../protocol/operations/OperationHandler.java   | 20 --
 ...rationHandlerAlreadyRegisteredException.java |  3 ++-
 .../protocol/protobuf/ProtobufOpsProcessor.java | 22 ++--
 .../protobuf/ProtobufStreamProcessor.java   |  7 +--
 .../protocol/serializer/ProtocolSerializer.java |  1 +
 .../serialization/SerializationService.java |  7 ++-
 .../geode/serialization/SerializationType.java  |  3 +++
 .../apache/geode/serialization/TypeCodec.java   | 10 +
 .../exception/TypeEncodingException.java| 21 +++
 .../UnsupportedEncodingTypeException.java   |  2 +-
 .../CodecAlreadyRegisteredForTypeException.java |  3 ++-
 .../CodecNotRegisteredForTypeException.java |  4 +++-
 .../geode/client/protocol/IntegrationTest.java  |  3 +--
 .../protobuf/ProtobufOpsProcessorTest.java  | 10 -
 .../ProtobufProtocolSerializerJUnitTest.java|  2 +-
 15 files changed, 86 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/0de1d97e/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
index 8eab146..7683e3b 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
@@ -15,23 +15,31 @@
 package org.apache.geode.protocol.operations;
 
 import org.apache.geode.cache.Cache;
-import org.apache.geode.protocol.protobuf.ProtobufOpsProcessor;
 import org.apache.geode.protocol.operations.registry.OperationsHandlerRegistry;
+import org.apache.geode.protocol.protobuf.ProtobufOpsProcessor;
 import org.apache.geode.serialization.SerializationService;
-import 
org.apache.geode.serialization.exception.UnsupportedEncodingTypeException;
-import 
org.apache.geode.serialization.registry.exception.CodecNotRegisteredForTypeException;
+import org.apache.geode.serialization.exception.TypeEncodingException;
 
 /**
- * This interface is implemented by a object capable of handling request types 
'Req' and returning an a response of type 'Resp'
+ * This interface is implemented by a object capable of handling request types 
'Req' and returning
+ * an a response of type 'Resp'
  *
  * See {@link ProtobufOpsProcessor}
  */
 public interface OperationHandler {
+  /**
+   * Decode the message, deserialize contained values using the serialization 
service, do the work
+   * indicated on the provided cache, and return a response.
+   * 
+   * @throws TypeEncodingException if a problem occurs decoding an encoded 
value contained in the
+   * request.
+   */
   Resp process(SerializationService serializationService, Req request, Cache 
cache)
-  throws UnsupportedEncodingTypeException, 
CodecNotRegisteredForTypeException;
+  throws TypeEncodingException;
 
   /**
-   * @return the magic number used for registering the operation type with the 
{@link OperationsHandlerRegistry}.
+   * @return the magic number used for registering the operation type with the
+   * {@link OperationsHandlerRegistry}.
*/
   int getOperationCode();
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/0de1d97e/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
index 519698d..18475d8 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
+++ 

[31/50] [abbrv] geode git commit: Revert: GEODE-2924: fix lucene commands security test

2017-06-27 Thread hiteshkhamesra
Revert: GEODE-2924: fix lucene commands security test


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/658b20fa
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/658b20fa
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/658b20fa

Branch: refs/heads/feature/GEODE-2804v3
Commit: 658b20fab920b34ea1c240d26227da48e6644e64
Parents: 8053450
Author: Jinmei Liao 
Authored: Sun Jun 25 07:44:09 2017 -0700
Committer: Jinmei Liao 
Committed: Sun Jun 25 07:44:09 2017 -0700

--
 .../geode/internal/util/PasswordUtil.java   |  27 +-
 .../lucene/LuceneClientSecurityDUnitTest.java   |  18 +-
 .../lucene/LuceneCommandsSecurityDUnitTest.java | 291 +++
 .../lucene/LuceneCommandsSecurityTest.java  | 263 -
 4 files changed, 317 insertions(+), 282 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/658b20fa/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java 
b/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
index 2495959..5cc3bcd 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
@@ -49,20 +49,23 @@ public class PasswordUtil {
*/
   @Deprecated
   public static String decrypt(String password) {
+String toDecrypt;
 if (password.startsWith("encrypted(") && password.endsWith(")")) {
-  byte[] decrypted = null;
-  try {
-String toDecrypt = password.substring(10, password.length() - 1);
-SecretKeySpec key = new SecretKeySpec(init, "Blowfish");
-Cipher cipher = Cipher.getInstance("Blowfish");
-cipher.init(Cipher.DECRYPT_MODE, key);
-decrypted = cipher.doFinal(hexStringToByteArray(toDecrypt));
-return new String(decrypted);
-  } catch (Exception e) {
-e.printStackTrace();
-  }
+  toDecrypt = password.substring(10, password.length() - 1);
+} else {
+  toDecrypt = password;
 }
-return password;
+byte[] decrypted;
+try {
+  SecretKeySpec key = new SecretKeySpec(init, "Blowfish");
+  Cipher cipher = Cipher.getInstance("Blowfish");
+  cipher.init(Cipher.DECRYPT_MODE, key);
+  decrypted = cipher.doFinal(hexStringToByteArray(toDecrypt));
+  return new String(decrypted);
+} catch (Exception e) {
+  e.printStackTrace();
+}
+return toDecrypt;
   }
 
   private static byte[] hexStringToByteArray(String s) {

http://git-wip-us.apache.org/repos/asf/geode/blob/658b20fa/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
--
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
index 7ab3365..f78e19f 100644
--- 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
+++ 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
@@ -50,7 +50,7 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
   @Test
   @Parameters(method = "getSearchIndexUserNameAndExpectedResponses")
   public void verifySearchIndexPermissions(
-  LuceneCommandsSecurityTest.UserNameAndExpectedResponse user) {
+  LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse user) {
 // Start server
 int serverPort = dataStore1.invoke(() -> startCacheServer());
 
@@ -58,7 +58,8 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
 accessor.invoke(() -> startClient(user.getUserName(), serverPort));
 
 // Attempt query
-accessor.invoke(() -> 
executeTextSearch(user.getExpectAuthorizationError()));
+accessor.invoke(
+() -> executeTextSearch(user.getExpectAuthorizationError(), 
user.getExpectedResponse()));
   }
 
   private int startCacheServer() throws IOException {
@@ -85,7 +86,8 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
 
clientCache.createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY).create(REGION_NAME);
   }
 
-  private void executeTextSearch(boolean expectAuthorizationError) throws 
LuceneQueryException {
+  private void executeTextSearch(boolean expectAuthorizationError, String 
expectedResponse)
+  throws LuceneQueryException {
 LuceneService service = LuceneServiceProvider.get(getCache());
 LuceneQuery

[03/50] [abbrv] geode git commit: GEODE-3072: Ignore dunit test

2017-06-27 Thread hiteshkhamesra
GEODE-3072: Ignore dunit test


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/dbc3197f
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/dbc3197f
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/dbc3197f

Branch: refs/heads/feature/GEODE-2804v3
Commit: dbc3197f3645f6beab058ad1bfe82e12860617c6
Parents: 4bf80a6
Author: Barry Oglesby 
Authored: Fri Jun 16 14:17:23 2017 -0700
Committer: Barry Oglesby 
Committed: Fri Jun 16 14:17:23 2017 -0700

--
 .../internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java   | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/dbc3197f/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
index fa68781..5fb8fa2 100755
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
@@ -96,7 +96,7 @@ public class ClientServerMiscBCDUnitTest extends 
ClientServerMiscDUnitTest {
 });
   }
 
-  //@Test
+  // @Test
   @Ignore
   public void testDistributedMemberBytesWithCurrentServerAndOldClient() throws 
Exception {
 // Start current version server



[14/50] [abbrv] geode git commit: GEODE-3056: fix the message for invalid partition-resolver

2017-06-27 Thread hiteshkhamesra
GEODE-3056: fix the message for invalid partition-resolver


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/d8a11d1e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/d8a11d1e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/d8a11d1e

Branch: refs/heads/feature/GEODE-2804v3
Commit: d8a11d1e4a4ccc78ddc3f86db172edf0dddf7215
Parents: d8160d6
Author: Jinmei Liao 
Authored: Mon Jun 19 09:53:39 2017 -0700
Committer: Jinmei Liao 
Committed: Mon Jun 19 17:09:30 2017 -0700

--
 .../CreateAlterDestroyRegionCommands.java   | 13 ++--
 .../CreateAlterDestroyRegionCommandsTest.java   | 65 
 2 files changed, 73 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/d8a11d1e/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
index bf22854..b762396 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
@@ -612,14 +612,17 @@ public class CreateAlterDestroyRegionCommands implements 
GfshCommand {
 }
   }
 
-  private void validateRegionFunctionArgs(InternalCache cache,
-  RegionFunctionArgs regionFunctionArgs) {
+  DistributedSystemMXBean getDSMBean(InternalCache cache) {
+ManagementService managementService = 
ManagementService.getExistingManagementService(cache);
+return managementService.getDistributedSystemMXBean();
+  }
+
+  void validateRegionFunctionArgs(InternalCache cache, RegionFunctionArgs 
regionFunctionArgs) {
 if (regionFunctionArgs.getRegionPath() == null) {
   throw new 
IllegalArgumentException(CliStrings.CREATE_REGION__MSG__SPECIFY_VALID_REGION_PATH);
 }
 
-ManagementService managementService = 
ManagementService.getExistingManagementService(cache);
-DistributedSystemMXBean dsMBean = 
managementService.getDistributedSystemMXBean();
+DistributedSystemMXBean dsMBean = getDSMBean(cache);
 
 String useAttributesFrom = regionFunctionArgs.getUseAttributesFrom();
 if (useAttributesFrom != null && !useAttributesFrom.isEmpty()
@@ -840,7 +843,7 @@ public class CreateAlterDestroyRegionCommands implements 
GfshCommand {
 } catch (InstantiationException | IllegalAccessException | 
ClassNotFoundException e) {
   throw new IllegalArgumentException(
   
CliStrings.format(CliStrings.CREATE_REGION__MSG__INVALID_PARTITION_RESOLVER,
-  new Object[] {regionFunctionArgs.getCompressor()}),
+  new Object[] {regionFunctionArgs.getPartitionResolver()}),
   e);
 }
   }

http://git-wip-us.apache.org/repos/asf/geode/blob/d8a11d1e/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
new file mode 100644
index 000..155b1ad
--- /dev/null
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+
+package org.apache.geode.management.internal.cli.commands;
+
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;

[30/50] [abbrv] geode git commit: GEODE-2924: fix lucene commands security test

2017-06-27 Thread hiteshkhamesra
GEODE-2924: fix lucene commands security test


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/80534501
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/80534501
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/80534501

Branch: refs/heads/feature/GEODE-2804v3
Commit: 8053450143007ffaa7d92ae23d9e289129b97f56
Parents: 451d12e
Author: Jinmei Liao 
Authored: Fri Jun 23 17:56:27 2017 -0700
Committer: Jinmei Liao 
Committed: Fri Jun 23 17:57:13 2017 -0700

--
 .../geode/internal/util/PasswordUtil.java   |  27 +-
 .../lucene/LuceneClientSecurityDUnitTest.java   |  46 ++-
 .../lucene/LuceneCommandsSecurityDUnitTest.java | 291 ---
 .../lucene/LuceneCommandsSecurityTest.java  | 263 +
 4 files changed, 296 insertions(+), 331 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/80534501/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java 
b/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
index 5cc3bcd..2495959 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/util/PasswordUtil.java
@@ -49,23 +49,20 @@ public class PasswordUtil {
*/
   @Deprecated
   public static String decrypt(String password) {
-String toDecrypt;
 if (password.startsWith("encrypted(") && password.endsWith(")")) {
-  toDecrypt = password.substring(10, password.length() - 1);
-} else {
-  toDecrypt = password;
+  byte[] decrypted = null;
+  try {
+String toDecrypt = password.substring(10, password.length() - 1);
+SecretKeySpec key = new SecretKeySpec(init, "Blowfish");
+Cipher cipher = Cipher.getInstance("Blowfish");
+cipher.init(Cipher.DECRYPT_MODE, key);
+decrypted = cipher.doFinal(hexStringToByteArray(toDecrypt));
+return new String(decrypted);
+  } catch (Exception e) {
+e.printStackTrace();
+  }
 }
-byte[] decrypted;
-try {
-  SecretKeySpec key = new SecretKeySpec(init, "Blowfish");
-  Cipher cipher = Cipher.getInstance("Blowfish");
-  cipher.init(Cipher.DECRYPT_MODE, key);
-  decrypted = cipher.doFinal(hexStringToByteArray(toDecrypt));
-  return new String(decrypted);
-} catch (Exception e) {
-  e.printStackTrace();
-}
-return toDecrypt;
+return password;
   }
 
   private static byte[] hexStringToByteArray(String s) {

http://git-wip-us.apache.org/repos/asf/geode/blob/80534501/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
--
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
index 3e6b541..7ab3365 100644
--- 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
+++ 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
@@ -14,8 +14,22 @@
  */
 package org.apache.geode.cache.lucene;
 
+import static 
org.apache.geode.cache.lucene.test.LuceneTestUtilities.INDEX_NAME;
+import static 
org.apache.geode.cache.lucene.test.LuceneTestUtilities.REGION_NAME;
+import static 
org.apache.geode.distributed.ConfigurationProperties.SECURITY_CLIENT_AUTH_INIT;
+import static 
org.apache.geode.distributed.ConfigurationProperties.SECURITY_MANAGER;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertTrue;
+
+import java.io.IOException;
+import java.util.Properties;
+
 import junitparams.JUnitParamsRunner;
 import junitparams.Parameters;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.runner.RunWith;
+
 import org.apache.geode.cache.Cache;
 import org.apache.geode.cache.RegionShortcut;
 import org.apache.geode.cache.client.ClientCache;
@@ -26,22 +40,8 @@ import org.apache.geode.cache.server.CacheServer;
 import org.apache.geode.security.NotAuthorizedException;
 import org.apache.geode.security.SimpleTestSecurityManager;
 import org.apache.geode.security.templates.UserPasswordAuthInit;
-import org.apache.geode.test.dunit.SerializableRunnableIF;
 import org.apache.geode.test.junit.categories.DistributedTest;
 import org.apache.geode.test.junit.categories.SecurityTest;
-import org.junit.Test;
-import org.junit.experimental.categories.Category;
-import org.junit.runner.RunWith;
-
-import 

[16/50] [abbrv] geode git commit: (no ticket) docs code cleanup - gfsh start command reference

2017-06-27 Thread hiteshkhamesra
(no ticket) docs code cleanup - gfsh start command reference


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/7df5af35
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/7df5af35
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/7df5af35

Branch: refs/heads/feature/GEODE-2804v3
Commit: 7df5af35ac885c007e2287316213360a12241c21
Parents: ee5f60c
Author: Dave Barnes 
Authored: Tue Jun 20 13:08:33 2017 -0700
Committer: Dave Barnes 
Committed: Tue Jun 20 13:08:33 2017 -0700

--
 .../gfsh/command-pages/start.html.md.erb| 21 +---
 1 file changed, 5 insertions(+), 16 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/7df5af35/geode-docs/tools_modules/gfsh/command-pages/start.html.md.erb
--
diff --git a/geode-docs/tools_modules/gfsh/command-pages/start.html.md.erb 
b/geode-docs/tools_modules/gfsh/command-pages/start.html.md.erb
index 0bec322..0044b9e 100644
--- a/geode-docs/tools_modules/gfsh/command-pages/start.html.md.erb
+++ b/geode-docs/tools_modules/gfsh/command-pages/start.html.md.erb
@@ -65,8 +65,6 @@ Note that you can only have one gateway receiver on each 
member, and unlike a ga
 start gateway-receiver [--group=value(,value)*] [--member=value]
 ```
 
-
-
 | Name   | Description 
 |
 
||--|
 | \\-\\-member | Name or ID of the 
member on which to start the Gateway Receiver. |
@@ -117,8 +115,6 @@ For information on how to configure a gateway sender, see 
[Configure Gateway Sen
 start gateway-sender --id=value [--group=value(,value)*] [--member=value]
 ```
 
-
-
 | Name   | Description 
  |
 
||---|
 | \\-\\-id | *Required.* ID of the 
GatewaySender.  |
@@ -175,8 +171,6 @@ start jconsole [--interval=] [--notile] [--version]
 [--J]
 ```
 
-
-
 | Name   | Description 




   | Default Value |
 
|||---|
 | \\-\\-interval   | Set the update 
interval to n seconds (default is 4 seconds). (Equivalent to JConsole's 
`-interval=n`)  


| 4 
|
@@ -238,10 +232,8 @@ Start the JDK's Java VisualVM monitoring application in a 
separate process.
 start jvisualvm [--J=value(,value)*]
 ```
 
-
-
-| Name  | Description  
  |
-|---||
+| Name  | Description |
+|---||
 | \\-\\-J | VM-option passed to the 
spawned CacheServer VM. For example: `-J-Dfoo.bar=true` for setting foo.bar to 
'true'. |
 
 Table 4. Start JVisalVM Parameters
@@ -280,10 +272,7 @@ start locator --name=value [--bind-address=value] 
[--force(=value)] [--group=val
  [--J=value(,value)*]
 ```
 
-
-
 
-Table 5. Parameters
 
 
 
@@ -468,8 +457,6 @@ For more information on Geode Pulse, see [Geode 
Pulse](../../pulse/pulse-overvie
 start pulse [--url=value]
 ```
 
-
-
 | Name

[40/50] [abbrv] geode git commit: GEODE-2995: incorporating even more review feedback

2017-06-27 Thread hiteshkhamesra
GEODE-2995: incorporating even more review feedback

Addressing feedback from Udo and Hitesh
Refactored test locations to match new src layout

Signed-off-by: Galen O'Sullivan 
Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/a3c66e1a
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/a3c66e1a
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/a3c66e1a

Branch: refs/heads/feature/GEODE-2804v3
Commit: a3c66e1afc88700bd7839f56d54a0f6d44f00432
Parents: 0de1d97
Author: Brian Rowe 
Authored: Wed Jun 21 11:53:54 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 geode-protobuf/build.gradle |   6 +-
 .../protobuf/EncodingTypeTranslator.java|  47 +++
 .../operations/GetRequestOperationHandler.java  |  19 +--
 .../geode/client/protocol/IntegrationTest.java  | 124 ---
 .../geode/client/protocol/MessageUtil.java  |  41 --
 .../geode/client/protocol/OpsHandler.java   |  21 
 .../geode/protocol/IntegrationJUnitTest.java| 124 +++
 .../org/apache/geode/protocol/MessageUtil.java  |  41 ++
 .../org/apache/geode/protocol/OpsHandler.java   |  21 
 .../GetRequestOperationHandlerTest.java |  95 --
 ...eToSerializationTypeTranslatorJUnitTest.java |  73 +++
 .../protobuf/ProtobufOpsProcessorJUnitTest.java |  62 ++
 .../protobuf/ProtobufOpsProcessorTest.java  |  62 --
 .../GetRequestOperationHandlerJUnitTest.java|  96 ++
 .../ProtobufProtocolSerializerJUnitTest.java|   2 +-
 .../ProtobufSerializationServiceImplTest.java   |  58 -
 .../ProtobufSerializationServiceJUnitTest.java  | 111 +
 .../codec/BinaryFormatJUnitTest.java|  64 ++
 .../codec/StringCodecJUnitTest.java |  64 --
 ...eToSerializationTypeTranslatorJUnitTest.java |  73 ---
 gradle/dependency-versions.properties   |   3 +
 21 files changed, 637 insertions(+), 570 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/a3c66e1a/geode-protobuf/build.gradle
--
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
index f069267..a63000e 100644
--- a/geode-protobuf/build.gradle
+++ b/geode-protobuf/build.gradle
@@ -23,7 +23,7 @@ buildscript {
 mavenCentral()
 }
 dependencies {
-classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.1'
+classpath 'com.google.protobuf:protobuf-gradle-plugin:' + 
project.'protobuf-gradle-plugin.version'
 }
 }
 
@@ -36,13 +36,13 @@ dependencies {
 testCompile 'org.powermock:powermock-module-junit4:' + 
project.'powermock.version'
 testCompile 'org.powermock:powermock-api-mockito:' + 
project.'powermock.version'
 
-compile 'com.google.protobuf:protobuf-java:3.3.1'
+compile 'com.google.protobuf:protobuf-java:' + 
project.'protobuf-java.version'
 }
 
 protobuf {
 protoc {
 // The artifact spec for the Protobuf Compiler
-artifact = 'com.google.protobuf:protoc:3.0.0'
+artifact = 'com.google.protobuf:protoc:' + project.'protoc.version'
 }
 generatedFilesBaseDir = "$buildDir/generated-src/proto"
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/a3c66e1a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
index 650ac81..edb7c7e 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
@@ -20,10 +20,28 @@ import org.apache.geode.protocol.protobuf.BasicTypes;
 import org.apache.geode.serialization.SerializationType;
 import 
org.apache.geode.serialization.exception.UnsupportedEncodingTypeException;
 
+import java.util.HashMap;
+
 /**
  * This class maps protobuf specific encoding types and the corresponding 
serialization types.
  */
 public abstract class EncodingTypeTranslator {
+  static final HashMap typeToEncodingMap = 
intializeTypeMap();
+
+  private static HashMap intializeTypeMap() {
+HashMap result = new HashMap<>();
+result.put(Integer.class, BasicTypes.EncodingType.INT);
+result.put(Byte.class, 

[05/50] [abbrv] geode git commit: GEODE-3071: Pull config of docker volumes into top level script so that they can be overridden

2017-06-27 Thread hiteshkhamesra
GEODE-3071: Pull config of docker volumes into top level script so that they 
can be overridden


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/07e8986e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/07e8986e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/07e8986e

Branch: refs/heads/feature/GEODE-2804v3
Commit: 07e8986e3deb722c0beea380eac00a18c86844aa
Parents: b26fa51
Author: Jens Deppe 
Authored: Mon Jun 19 07:42:57 2017 -0700
Committer: Jens Deppe 
Committed: Mon Jun 19 07:48:27 2017 -0700

--
 build.gradle | 5 +
 gradle/docker.gradle | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/07e8986e/build.gradle
--
diff --git a/build.gradle b/build.gradle
index 57372b3..4feb879 100755
--- a/build.gradle
+++ b/build.gradle
@@ -74,6 +74,11 @@ if (name == 'geode') {
   ext.scriptDir = 'gradle'
 }
 
+if (project.hasProperty('parallelDunit')) {
+  def pwd = System.getenv('PWD')
+  ext.dunitDockerVolumes = ["${pwd}":pwd]
+}
+
 apply from: "${scriptDir}/utilities.gradle"
 apply from: "${scriptDir}/java.gradle"
 apply from: "${scriptDir}/dependency-resolution.gradle"

http://git-wip-us.apache.org/repos/asf/geode/blob/07e8986e/gradle/docker.gradle
--
diff --git a/gradle/docker.gradle b/gradle/docker.gradle
index b67c073..7971974 100644
--- a/gradle/docker.gradle
+++ b/gradle/docker.gradle
@@ -47,11 +47,11 @@ def dockerConfig = {
 
 // volumes mounted to the containers
 // in a form: host_dir : container_dir
-def pwd = System.getenv('PWD')
 def gradleHome = System.getenv('GRADLE_USER_HOME') ?: 
"${System.getenv('HOME')}/.gradle"
 volumes = ["${gradleHome}":gradleHome]
 
-volumes << ["${pwd}":pwd]
+// Add volumes configured by top-level build script
+volumes << project.dunitDockerVolumes
 
 // specify the user for starting Gradle test worker within the container.
 user = dunitDockerUser



[47/50] [abbrv] geode git commit: GEODE-2919: fix lucene security tests

2017-06-27 Thread hiteshkhamesra
GEODE-2919: fix lucene security tests


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/e5204ce1
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/e5204ce1
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/e5204ce1

Branch: refs/heads/feature/GEODE-2804v3
Commit: e5204ce1224581425a2ebdc98515dae0044421ee
Parents: 137ced6
Author: Jinmei Liao 
Authored: Mon Jun 26 17:34:20 2017 -0700
Committer: Jinmei Liao 
Committed: Mon Jun 26 17:44:11 2017 -0700

--
 .../lucene/LuceneClientSecurityDUnitTest.java   |  14 +-
 .../lucene/LuceneCommandsSecurityDUnitTest.java | 291 ---
 .../lucene/LuceneCommandsSecurityTest.java  | 269 +
 3 files changed, 277 insertions(+), 297 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/e5204ce1/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
--
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
index f78e19f..f71caec 100644
--- 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
+++ 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneClientSecurityDUnitTest.java
@@ -50,7 +50,7 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
   @Test
   @Parameters(method = "getSearchIndexUserNameAndExpectedResponses")
   public void verifySearchIndexPermissions(
-  LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse user) {
+  LuceneCommandsSecurityTest.UserNameAndExpectedResponse user) {
 // Start server
 int serverPort = dataStore1.invoke(() -> startCacheServer());
 
@@ -97,14 +97,16 @@ public class LuceneClientSecurityDUnitTest extends 
LuceneQueriesAccessorBase {
 } catch (ServerOperationException e) {
   assertTrue(e.getCause() != null && e.getCause() instanceof 
NotAuthorizedException);
   assertTrue(expectAuthorizationError);
-  assertTrue(e.getLocalizedMessage().contains(expectedResponse));
+  if (expectedResponse != null) {
+assertTrue(e.getLocalizedMessage().contains(expectedResponse));
+  }
 }
   }
 
-  protected LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse[] 
getSearchIndexUserNameAndExpectedResponses() {
-return new LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse[] {
-new 
LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse("nopermissions", 
true,
+  protected LuceneCommandsSecurityTest.UserNameAndExpectedResponse[] 
getSearchIndexUserNameAndExpectedResponses() {
+return new LuceneCommandsSecurityTest.UserNameAndExpectedResponse[] {
+new 
LuceneCommandsSecurityTest.UserNameAndExpectedResponse("nopermissions", true,
 "nopermissions not authorized for DATA:WRITE"),
-new 
LuceneCommandsSecurityDUnitTest.UserNameAndExpectedResponse("datawrite", false, 
null)};
+new 
LuceneCommandsSecurityTest.UserNameAndExpectedResponse("datawrite", false)};
   }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/e5204ce1/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
--
diff --git 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
 
b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
deleted file mode 100644
index 7cc6709..000
--- 
a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneCommandsSecurityDUnitTest.java
+++ /dev/null
@@ -1,291 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
- * agreements. See the NOTICE file distributed with this work for additional 
information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
- * "License"); you may not use this file except in compliance with the 
License. You may obtain a
- * copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software 
distributed under the License
- * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
- * or implied. See the License for the specific language governing permissions 
and limitations under
- * the License.
- */
-package org.apache.geode.cache.lucene;
-
-import static 
org.apache.geode.cache.lucene.test.LuceneTestUtilities.INDEX_NAME;
-import static 

[42/50] [abbrv] geode git commit: GEODE-3075: fix an integration test.

2017-06-27 Thread hiteshkhamesra
GEODE-3075: fix an integration test.

I think the test fails because another test doesn't clean up system
properties when it's done.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/e62e8250
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/e62e8250
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/e62e8250

Branch: refs/heads/feature/GEODE-2804v3
Commit: e62e825090db50f77faaa3e222595ee1026d7a6c
Parents: a3c66e1
Author: Galen OSullivan 
Authored: Wed Jun 21 14:01:01 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/e62e8250/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
index 82c4e54..9a1509f 100644
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
@@ -46,7 +46,9 @@ public class ServerConnectionFactoryIntegrationTest {
   @Test
   public void testNewProtocolHeaderLeadsToNewProtocolServerConnection() throws 
IOException {
 System.setProperty("geode.feature-protobuf-protocol", "true");
+
 CacheFactory cacheFactory = new CacheFactory();
+cacheFactory.set("mcast-port","0"); //sometimes it isn't due to other 
tests.
 Cache cache = cacheFactory.create();
 
 CacheServer cacheServer = cache.addCacheServer();



[26/50] [abbrv] geode git commit: GEODE-2919: Provide finer grained security

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/RegionCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/RegionCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/RegionCommands.java
index 68dbbf0..3222666 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/RegionCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/RegionCommands.java
@@ -14,6 +14,17 @@
  */
 package org.apache.geode.management.internal.cli.commands;
 
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
 import org.apache.geode.cache.Region;
 import org.apache.geode.cache.execute.FunctionInvocationTargetException;
 import org.apache.geode.cache.execute.ResultCollector;
@@ -31,7 +42,6 @@ import 
org.apache.geode.management.internal.cli.domain.RegionInformation;
 import 
org.apache.geode.management.internal.cli.functions.GetRegionDescriptionFunction;
 import org.apache.geode.management.internal.cli.functions.GetRegionsFunction;
 import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.CommandResultException;
 import org.apache.geode.management.internal.cli.result.CompositeResultData;
 import 
org.apache.geode.management.internal.cli.result.CompositeResultData.SectionResultData;
 import org.apache.geode.management.internal.cli.result.ResultBuilder;
@@ -40,17 +50,6 @@ import 
org.apache.geode.management.internal.cli.util.RegionAttributesNames;
 import org.apache.geode.management.internal.security.ResourceOperation;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedHashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
 
 /**
  * Class containing implementation of commands based on region:
@@ -67,8 +66,8 @@ public class RegionCommands implements GfshCommand {
   new GetRegionDescriptionFunction();
 
   @CliCommand(value = {CliStrings.LIST_REGION}, help = 
CliStrings.LIST_REGION__HELP)
-  @CliMetaData(shellOnly = false, relatedTopic = CliStrings.TOPIC_GEODE_REGION)
-  @ResourceOperation(resource = Resource.DATA, operation = Operation.READ)
+  @CliMetaData(relatedTopic = CliStrings.TOPIC_GEODE_REGION)
+  @ResourceOperation(resource = Resource.CLUSTER, operation = Operation.READ)
   public Result listRegion(
   @CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
   optionContext = ConverterHint.MEMBERGROUP,
@@ -78,8 +77,8 @@ public class RegionCommands implements GfshCommand {
   help = CliStrings.LIST_REGION__MEMBER__HELP) String[] 
memberNameOrId) {
 Result result = null;
 try {
-  Set regionInfoSet = new 
LinkedHashSet();
-  ResultCollector rc = null;
+  Set regionInfoSet = new LinkedHashSet<>();
+  ResultCollector rc;
 
   Set targetMembers = CliUtil.findMembers(group, 
memberNameOrId);
 
@@ -93,11 +92,8 @@ public class RegionCommands implements GfshCommand {
   ArrayList resultList = (ArrayList) rc.getResult();
 
   if (resultList != null) {
-Iterator iters = resultList.iterator();
-
-while (iters.hasNext()) {
-  Object resultObj = iters.next();
 
+for (Object resultObj : resultList) {
   if (resultObj != null) {
 if (resultObj instanceof Object[]) {
   Object[] resultObjectArray = (Object[]) resultObj;
@@ -110,15 +106,13 @@ public class RegionCommands implements GfshCommand {
   }
 }
 
-Set regionNames = new TreeSet();
+Set regionNames = new TreeSet<>();
 
 for (RegionInformation regionInfo : regionInfoSet) {
   regionNames.add(regionInfo.getName());
   Set subRegionNames = regionInfo.getSubRegionNames();
 
-  for (String subRegionName : subRegionNames) {
-regionNames.add(subRegionName);
-  }
+  regionNames.addAll(subRegionNames);
 }
 
 for (String regionName : regionNames) {
@@ -143,14 +137,13 @@ public class RegionCommands implements GfshCommand {
   }
 
   @CliCommand(value = {CliStrings.DESCRIBE_REGION}, help = 
CliStrings.DESCRIBE_REGION__HELP)
-  

[23/50] [abbrv] geode git commit: GEODE-3052 Restarting 2 locators together causes potential locator split brain

2017-06-27 Thread hiteshkhamesra
GEODE-3052 Restarting 2 locators together causes potential locator split brain

There were four problems that new unit tests hit:
1. when recovering a view from disk we were treating it as a definitive
(live) view.  I've moved it to a new variable in GMSLocator and set its
viewId to -1.  At the same time I set the initial GMSJoinLeave
SearchState.viewId to -100 so it will be overridden by the one returned
by the locator.  These changes allow GmsJoinLeave to know that the
potential coordinator is from a recovered view.

2. when trying to join with a recovered view GMSJoinLeave.join() was giving
up after the second ID in the view and becoming the coordinator.  It needs
to keep trying until the list is exhausted, and it shouldn't sleep between
attempts.

3. GMSLocator wasn't returning registrants for use in
findCoordinatorFromView().  This was causing it to choose itself as
the coordinator instead of using registrant sort order and choosing
a different registrant as the coordinator.

4. During concurrent startup GMSLocator didn't know when the decision
was made to become coordinator.  It is now notified of this decision
and processRequest() uses this flag to have it override anything in
the registrants set or in the recovered view.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/3ee585c5
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/3ee585c5
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/3ee585c5

Branch: refs/heads/feature/GEODE-2804v3
Commit: 3ee585c5844607e5da9756afb089405a30ae3dd3
Parents: 6f60785
Author: Bruce Schuchardt 
Authored: Thu Jun 22 13:50:26 2017 -0700
Committer: Bruce Schuchardt 
Committed: Thu Jun 22 13:54:55 2017 -0700

--
 .../internal/membership/NetView.java|   4 +
 .../internal/membership/gms/GMSUtil.java|  15 +-
 .../membership/gms/interfaces/Locator.java  |   5 +
 .../gms/locator/FindCoordinatorResponse.java|   2 +-
 .../membership/gms/locator/GMSLocator.java  |  52 +++-
 .../membership/gms/membership/GMSJoinLeave.java |  92 --
 .../membership/gms/messenger/GMSEncrypt.java|  14 +-
 .../gms/messenger/JGroupsMessenger.java |   2 +-
 .../geode/distributed/LocatorDUnitTest.java | 298 +--
 .../LocatorUDPSecurityDUnitTest.java|   8 +
 .../gms/membership/GMSJoinLeaveTestHelper.java  |  16 +-
 .../gms/messenger/GMSEncryptJUnitTest.java  |   1 -
 12 files changed, 360 insertions(+), 149 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/3ee585c5/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/NetView.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/NetView.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/NetView.java
index 26b0327..c935074 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/NetView.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/NetView.java
@@ -165,6 +165,10 @@ public class NetView implements DataSerializableFixedID {
 }
   }
 
+  public void setViewId(int viewId) {
+this.viewId = viewId;
+  }
+
 
 
   public int[] getFailureDetectionPorts() {

http://git-wip-us.apache.org/repos/asf/geode/blob/3ee585c5/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSUtil.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSUtil.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSUtil.java
index c6bef57..da295ab 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSUtil.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/GMSUtil.java
@@ -28,6 +28,13 @@ import org.apache.geode.internal.net.SocketCreator;
 
 public class GMSUtil {
 
+  /**
+   * parse locators & check that the resulting address is compatible with the 
given address
+   * 
+   * @param locatorsString a DistributionConfig "locators" string
+   * @param bindAddress optional address to check for loopback compatibility
+   * @return addresses of locators
+   */
   public static List parseLocators(String locatorsString, 
String bindAddress) {
 InetAddress addr = null;
 
@@ -43,7 +50,13 @@ public class GMSUtil {
 return parseLocators(locatorsString, addr);
   }
 
-
+  /**
+   * parse locators & check that the resulting address is compatible with the 
given address
+   * 
+   * @param locatorsString a DistributionConfig "locators" string
+   * 

[19/50] [abbrv] geode git commit: GEODE-1958: Working on removing PasswordUtil and all related commands, classes, etc. Keeping decrypt() method to maintain backwards compatibility.

2017-06-27 Thread hiteshkhamesra
GEODE-1958: Working on removing PasswordUtil and all related commands, classes, 
etc. Keeping decrypt() method to maintain backwards compatibility.

* this closes #578


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/43b00bd8
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/43b00bd8
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/43b00bd8

Branch: refs/heads/feature/GEODE-2804v3
Commit: 43b00bd84984a7c9c28536cf4a13dc104834bf0b
Parents: 5039e62
Author: YehEmily 
Authored: Mon Jun 12 11:42:15 2017 -0700
Committer: Jinmei Liao 
Committed: Wed Jun 21 11:35:47 2017 -0700

--
 .../org/apache/geode/internal/SystemAdmin.java  | 167 ++-
 .../geode/internal/i18n/LocalizedStrings.java   |   3 -
 .../geode/internal/net/SocketCreator.java   |  72 
 .../geode/internal/util/PasswordUtil.java   |  76 ++---
 .../geode/management/internal/cli/Launcher.java |  19 +--
 .../internal/cli/commands/ShellCommands.java|  67 
 .../internal/cli/i18n/CliStrings.java   |  11 +-
 .../geode/cache/util/PasswordUtilJUnitTest.java |  42 -
 .../internal/util/PasswordUtilJUnitTest.java|  41 +
 .../internal/security/TestCommand.java  |   3 +-
 10 files changed, 224 insertions(+), 277 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/43b00bd8/geode-core/src/main/java/org/apache/geode/internal/SystemAdmin.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/SystemAdmin.java 
b/geode-core/src/main/java/org/apache/geode/internal/SystemAdmin.java
index ceae486..ccc64e3 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/SystemAdmin.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/SystemAdmin.java
@@ -14,42 +14,80 @@
  */
 package org.apache.geode.internal;
 
-import static org.apache.geode.distributed.ConfigurationProperties.*;
+import static org.apache.geode.distributed.ConfigurationProperties.LOG_LEVEL;
+import static 
org.apache.geode.distributed.ConfigurationProperties.START_LOCATOR;
 
-import org.apache.geode.*;
+import java.io.BufferedInputStream;
+import java.io.BufferedReader;
+import java.io.ByteArrayInputStream;
+import java.io.EOFException;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStream;
+import java.io.PrintStream;
+import java.io.PrintWriter;
+import java.io.RandomAccessFile;
+import java.io.StringWriter;
+import java.net.InetAddress;
+import java.net.NetworkInterface;
+import java.net.SocketException;
+import java.net.URL;
+import java.net.URLDecoder;
+import java.net.UnknownHostException;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.UUID;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import java.util.zip.GZIPInputStream;
+
+import org.apache.geode.GemFireException;
+import org.apache.geode.GemFireIOException;
+import org.apache.geode.InternalGemFireException;
+import org.apache.geode.NoSystemException;
+import org.apache.geode.SystemFailure;
+import org.apache.geode.UncreatedSystemException;
+import org.apache.geode.UnstartedSystemException;
 import org.apache.geode.admin.AdminException;
 import org.apache.geode.admin.BackupStatus;
 import org.apache.geode.admin.internal.AdminDistributedSystemImpl;
 import org.apache.geode.cache.persistence.PersistentID;
 import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.distributed.internal.*;
+import org.apache.geode.distributed.internal.DistributionConfig;
+import org.apache.geode.distributed.internal.DistributionConfigImpl;
+import org.apache.geode.distributed.internal.HighPriorityAckedMessage;
+import org.apache.geode.distributed.internal.InternalDistributedSystem;
 import 
org.apache.geode.distributed.internal.membership.InternalDistributedMember;
-import org.apache.geode.distributed.internal.tcpserver.*;
-import org.apache.geode.internal.statistics.StatArchiveReader;
-import org.apache.geode.internal.statistics.StatArchiveReader.ResourceInst;
-import org.apache.geode.internal.statistics.StatArchiveReader.StatValue;
+import org.apache.geode.distributed.internal.tcpserver.TcpClient;
 import org.apache.geode.internal.admin.remote.TailLogResponse;
 import 

[22/50] [abbrv] geode git commit: GEODE-3062: create new SecurityService after receiving cluster config

2017-06-27 Thread hiteshkhamesra
GEODE-3062: create new SecurityService after receiving cluster config


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/6f60785c
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/6f60785c
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/6f60785c

Branch: refs/heads/feature/GEODE-2804v3
Commit: 6f60785c06a39b9fcc086b9a3501a82b1c049833
Parents: b7f5391
Author: Kirk Lund 
Authored: Thu Jun 15 10:04:02 2017 -0700
Committer: Kirk Lund 
Committed: Thu Jun 22 12:39:50 2017 -0700

--
 .../internal/InternalDistributedSystem.java |  4 ++
 .../cache/ClusterConfigurationLoader.java   |  7 ++-
 .../geode/internal/cache/GemFireCacheImpl.java  | 47 ++-
 .../security/IntegratedSecurityService.java | 40 +---
 .../security/LegacySecurityService.java | 15 +-
 .../internal/security/SecurityService.java  | 48 ++--
 .../security/SecurityServiceFactory.java| 10 ++--
 .../ClusterConfigDeployJarDUnitTest.java| 11 ++---
 .../ClusterConfigDistributionDUnitTest.java |  5 +-
 .../ClusterConfigImportDUnitTest.java   |  9 ++--
 .../ClusterConfigStartMemberDUnitTest.java  |  4 +-
 .../ClusterConfigWithSecurityDUnitTest.java | 32 ++---
 .../test/dunit/rules/MemberStarterRule.java | 12 -
 .../test/dunit/rules/ServerStarterRule.java | 31 +
 14 files changed, 155 insertions(+), 120 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/6f60785c/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
index 1572355..a4b3a50 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
@@ -540,6 +540,10 @@ public class InternalDistributedSystem extends 
DistributedSystem
 return this.securityService;
   }
 
+  public void setSecurityService(SecurityService securityService) {
+this.securityService = securityService;
+  }
+
   /**
* Registers a listener to the system
* 

http://git-wip-us.apache.org/repos/asf/geode/blob/6f60785c/geode-core/src/main/java/org/apache/geode/internal/cache/ClusterConfigurationLoader.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/ClusterConfigurationLoader.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/ClusterConfigurationLoader.java
index 4f4881f..92cfd96 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/ClusterConfigurationLoader.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/ClusterConfigurationLoader.java
@@ -152,13 +152,12 @@ public class ClusterConfigurationLoader {
 
   /***
* Apply the gemfire properties cluster configuration on this member
-   *
-   * @param cache Cache created for this member
+   * 
* @param response {@link ConfigurationResponse} containing the requested 
{@link Configuration}
* @param config this member's config
*/
-  public static void applyClusterPropertiesConfiguration(Cache cache,
-  ConfigurationResponse response, DistributionConfig config) {
+  public static void applyClusterPropertiesConfiguration(ConfigurationResponse 
response,
+  DistributionConfig config) {
 if (response == null || response.getRequestedConfiguration().isEmpty()) {
   return;
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/6f60785c/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
index fe97685..2dda38c 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
@@ -77,6 +77,7 @@ import javax.transaction.TransactionManager;
 import com.sun.jna.Native;
 import com.sun.jna.Platform;
 import org.apache.commons.lang.StringUtils;
+import org.apache.geode.internal.security.SecurityServiceFactory;
 import org.apache.logging.log4j.Logger;
 
 import org.apache.geode.CancelCriterion;
@@ -323,6 +324,8 @@ public class GemFireCacheImpl implements InternalCache, 

[41/50] [abbrv] geode git commit: GEODE-3075: Initial refactor adding NewProtocolServerConnection

2017-06-27 Thread hiteshkhamesra
GEODE-3075: Initial refactor adding NewProtocolServerConnection

subclassing `ServerConnection`.

The new code is broken but it won't be called under normal operation,
since it's gated on a system property, "geode.feature-protobuf-protocol"

Further refactoring and feature work to come.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/dfdde4af
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/dfdde4af
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/dfdde4af

Branch: refs/heads/feature/GEODE-2804v3
Commit: dfdde4af352566d60f18b0db156fc5b7f48ebd8b
Parents: 49123c4
Author: Galen OSullivan 
Authored: Mon Jun 12 09:33:35 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../geode/internal/cache/tier/Acceptor.java |  4 +
 .../cache/tier/sockets/AcceptorImpl.java| 10 +--
 .../cache/tier/sockets/ClientHealthMonitor.java |  7 +-
 .../sockets/ClientProtocolMessageHandler.java   | 29 +++
 .../tier/sockets/LegacyServerConnection.java| 88 
 .../sockets/NewProtocolServerConnection.java| 86 +++
 .../cache/tier/sockets/ServerConnection.java| 75 +++--
 .../tier/sockets/ServerConnectionFactory.java   | 50 +++
 .../sockets/ServerConnectionFactoryTest.java| 77 +
 .../tier/sockets/ServerConnectionTest.java  |  7 +-
 10 files changed, 375 insertions(+), 58 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/dfdde4af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
index 9a3241b..a95195a 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
@@ -71,6 +71,10 @@ public abstract class Acceptor {
*/
   public static final byte CLIENT_TO_SERVER_FOR_QUEUE = (byte) 107;
 
+  /**
+   * For the new client-server protocol, which ignores the usual handshake 
mechanism.
+   */
+  public static final byte CLIENT_TO_SERVER_NEW_PROTOCOL = (byte) 110;
 
   /**
* The GFE version of the server.

http://git-wip-us.apache.org/repos/asf/geode/blob/dfdde4af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
index 2a8818c..24efc93 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
@@ -1422,8 +1422,8 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
 s.setTcpNoDelay(this.tcpNoDelay);
 
 if (communicationMode == CLIENT_TO_SERVER || communicationMode == 
GATEWAY_TO_GATEWAY
-|| communicationMode == MONITOR_TO_SERVER
-|| communicationMode == CLIENT_TO_SERVER_FOR_QUEUE) {
+|| communicationMode == MONITOR_TO_SERVER || communicationMode == 
CLIENT_TO_SERVER_FOR_QUEUE
+|| communicationMode == CLIENT_TO_SERVER_NEW_PROTOCOL) {
   String communicationModeStr = "";
   switch (communicationMode) {
 case CLIENT_TO_SERVER:
@@ -1466,9 +1466,9 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
   return;
 }
   }
-  ServerConnection serverConn = new ServerConnection(s, this.cache, 
this.crHelper, this.stats,
-  AcceptorImpl.handShakeTimeout, this.socketBufferSize, 
communicationModeStr,
-  communicationMode, this, this.securityService);
+  ServerConnection serverConn = 
ServerConnectionFactory.makeServerConnection(s, this.cache,
+  this.crHelper, this.stats, AcceptorImpl.handShakeTimeout, 
this.socketBufferSize,
+  communicationModeStr, communicationMode, this, this.securityService);
   synchronized (this.allSCsLock) {
 this.allSCs.add(serverConn);
 ServerConnection snap[] = this.allSCList; // avoid volatile read

http://git-wip-us.apache.org/repos/asf/geode/blob/dfdde4af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
 

[10/50] [abbrv] geode git commit: GEODE-3092: fix specifiedDefaultValue for cacheLoader and cacheWriter

2017-06-27 Thread hiteshkhamesra
GEODE-3092: fix specifiedDefaultValue for cacheLoader and cacheWriter


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/c6d88f74
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/c6d88f74
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/c6d88f74

Branch: refs/heads/feature/GEODE-2804v3
Commit: c6d88f748f32293edfb2c92e914a12b21969c061
Parents: 87c26be
Author: Jinmei Liao 
Authored: Mon Jun 19 09:08:35 2017 -0700
Committer: Jinmei Liao 
Committed: Mon Jun 19 14:02:24 2017 -0700

--
 .../CreateAlterDestroyRegionCommands.java   | 45 ++--
 .../internal/cli/GfshParserParsingTest.java | 19 +++--
 2 files changed, 38 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/c6d88f74/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
index 842802b..bf22854 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
@@ -14,7 +14,28 @@
  */
 package org.apache.geode.management.internal.cli.commands;
 
+import java.text.MessageFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.concurrent.atomic.AtomicReference;
+import java.util.regex.Pattern;
+
+import javax.management.MBeanServer;
+import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
+
 import org.apache.commons.lang.StringUtils;
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
 import org.apache.geode.LogWriter;
 import org.apache.geode.cache.DataPolicy;
 import org.apache.geode.cache.ExpirationAttributes;
@@ -58,26 +79,6 @@ import 
org.apache.geode.management.internal.configuration.domain.XmlEntity;
 import org.apache.geode.management.internal.security.ResourceOperation;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.concurrent.atomic.AtomicReference;
-import java.util.regex.Pattern;
-import javax.management.MBeanServer;
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
 
 /**
  * @since GemFire 7.0
@@ -408,9 +409,9 @@ public class CreateAlterDestroyRegionCommands implements 
GfshCommand {
   help = CliStrings.ALTER_REGION__REGIONEXPIRATIONTTLACTION__HELP) 
String regionExpirationTTLAction,
   @CliOption(key = CliStrings.ALTER_REGION__CACHELISTENER, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__CACHELISTENER__HELP) String[] 
cacheListeners,
-  @CliOption(key = CliStrings.ALTER_REGION__CACHELOADER, 
specifiedDefaultValue = "null",
+  @CliOption(key = CliStrings.ALTER_REGION__CACHELOADER, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__CACHELOADER__HELP) String 
cacheLoader,
-  @CliOption(key = CliStrings.ALTER_REGION__CACHEWRITER, 
specifiedDefaultValue = "null",
+  @CliOption(key = CliStrings.ALTER_REGION__CACHEWRITER, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__CACHEWRITER__HELP) String 
cacheWriter,
   @CliOption(key = CliStrings.ALTER_REGION__ASYNCEVENTQUEUEID, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__ASYNCEVENTQUEUEID__HELP) String[] 
asyncEventQueueIds,

http://git-wip-us.apache.org/repos/asf/geode/blob/c6d88f74/geode-core/src/test/java/org/apache/geode/management/internal/cli/GfshParserParsingTest.java
--
diff 

[24/50] [abbrv] geode git commit: GEODE-2919: Provide finer grained security

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
index 7ce0438..abe5d21 100644
--- 
a/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/security/TestCommand.java
@@ -15,9 +15,11 @@
 package org.apache.geode.management.internal.security;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
+import org.apache.commons.lang.ArrayUtils;
 import org.apache.shiro.authz.Permission;
 
 import org.apache.geode.security.ResourcePermission;
@@ -46,10 +48,22 @@ public class TestCommand {
 
   public static ResourcePermission clusterRead =
   new ResourcePermission(Resource.CLUSTER, Operation.READ);
+  public static ResourcePermission clusterReadQuery =
+  new ResourcePermission(Resource.CLUSTER, Operation.READ, Target.QUERY);
   public static ResourcePermission clusterWrite =
   new ResourcePermission(Resource.CLUSTER, Operation.WRITE);
+  public static ResourcePermission clusterWriteDisk =
+  new ResourcePermission(Resource.CLUSTER, Operation.WRITE, Target.DISK);
   public static ResourcePermission clusterManage =
   new ResourcePermission(Resource.CLUSTER, Operation.MANAGE);
+  public static ResourcePermission clusterManageDisk =
+  new ResourcePermission(Resource.CLUSTER, Operation.MANAGE, Target.DISK);
+  public static ResourcePermission clusterManageGateway =
+  new ResourcePermission(Resource.CLUSTER, Operation.MANAGE, 
Target.GATEWAY);
+  public static ResourcePermission clusterManageJar =
+  new ResourcePermission(Resource.CLUSTER, Operation.MANAGE, Target.JAR);
+  public static ResourcePermission clusterManageQuery =
+  new ResourcePermission(Resource.CLUSTER, Operation.MANAGE, Target.QUERY);
 
   private static List testCommands = new ArrayList<>();
 
@@ -58,15 +72,15 @@ public class TestCommand {
   }
 
   private final String command;
-  private final ResourcePermission permission;
+  private final ResourcePermission[] permissions;
 
-  public TestCommand(String command, ResourcePermission permission) {
+  public TestCommand(String command, ResourcePermission... permissions) {
 this.command = command;
-this.permission = permission;
+this.permissions = permissions;
   }
 
-  private static void createTestCommand(String command, ResourcePermission 
permission) {
-TestCommand instance = new TestCommand(command, permission);
+  private static void createTestCommand(String command, ResourcePermission... 
permissions) {
+TestCommand instance = new TestCommand(command, permissions);
 testCommands.add(instance);
   }
 
@@ -74,8 +88,8 @@ public class TestCommand {
 return this.command;
   }
 
-  public ResourcePermission getPermission() {
-return this.permission;
+  public ResourcePermission[] getPermissions() {
+return this.permissions;
   }
 
   public static List getCommands() {
@@ -83,11 +97,21 @@ public class TestCommand {
 return testCommands.stream().collect(Collectors.toList());
   }
 
+  public static List getOnlineCommands() {
+return testCommands.stream().filter((x) -> 
ArrayUtils.isNotEmpty(x.getPermissions()))
+.collect(Collectors.toList());
+  }
+
   public static List getPermittedCommands(Permission permission) {
 List result = new ArrayList<>();
 for (TestCommand testCommand : testCommands) {
-  ResourcePermission cPerm = testCommand.getPermission();
-  if (cPerm != null && permission.implies(cPerm)) {
+  ResourcePermission[] cPerms = testCommand.getPermissions();
+  if (cPerms == null || cPerms.length == 0) {
+// Skip offline commands.
+continue;
+  }
+  boolean allPermissionsAreImplied = 
Arrays.stream(cPerms).allMatch(permission::implies);
+  if (allPermissionsAreImplied) {
 result.add(testCommand);
   }
 }
@@ -107,6 +131,11 @@ public class TestCommand {
 // CreateAlterDestroyRegionCommands
 createTestCommand("alter region --name=RegionA --eviction-max=5000", 
regionAManage);
 createTestCommand("create region --name=region12 --type=REPLICATE", 
dataManage);
+createTestCommand("create region --name=region123 
--type=PARTITION_PERSISTENT", dataManage,
+clusterWriteDisk);
+// This command requires an existing persistent region named 
"persistentRegion"
+createTestCommand("create region --name=region1234 
--template-region=/persistentRegion",
+dataManage, clusterWriteDisk);
 createTestCommand("destroy region --name=value", dataManage);
 
 // Data Commands
@@ -124,28 +153,28 

[49/50] [abbrv] geode git commit: Added change to change InetAddress when there is IOException

2017-06-27 Thread hiteshkhamesra
Added change to change InetAddress when there is IOException


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/3a46b791
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/3a46b791
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/3a46b791

Branch: refs/heads/feature/GEODE-2804v3
Commit: 3a46b791f5d6f542893e6a708edbe48814aa5913
Parents: 718583b
Author: Hitesh Khamesra 
Authored: Tue Jun 13 15:56:33 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 12:53:07 2017 -0700

--
 .../internal/AutoConnectionSourceImpl.java  | 72 ++--
 .../membership/gms/membership/GMSJoinLeave.java |  3 +-
 .../internal/tcpserver/TcpClient.java   | 27 +++-
 .../internal/JmxManagerLocatorRequest.java  |  5 +-
 .../cli/commands/LauncherLifecycleCommands.java |  1 +
 .../AutoConnectionSourceImplJUnitTest.java  | 64 +
 6 files changed, 162 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/3a46b791/geode-core/src/main/java/org/apache/geode/cache/client/internal/AutoConnectionSourceImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/cache/client/internal/AutoConnectionSourceImpl.java
 
b/geode-core/src/main/java/org/apache/geode/cache/client/internal/AutoConnectionSourceImpl.java
index 53d401a..070451c 100644
--- 
a/geode-core/src/main/java/org/apache/geode/cache/client/internal/AutoConnectionSourceImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/cache/client/internal/AutoConnectionSourceImpl.java
@@ -204,12 +204,10 @@ public class AutoConnectionSourceImpl implements 
ConnectionSource {
 
   private ServerLocationResponse queryOneLocator(InetSocketAddress locator,
   ServerLocationRequest request) {
-InetAddress addr = locator.getAddress();
-int port = locator.getPort();
 Object returnObj = null;
 try {
   pool.getStats().incLocatorRequests();
-  returnObj = tcpClient.requestToServer(addr, port, request, 
connectionTimeout);
+  returnObj = tcpClient.requestToServer(locator, request, 
connectionTimeout, true);
   ServerLocationResponse response = (ServerLocationResponse) returnObj;
   pool.getStats().incLocatorResponses();
   if (response != null) {
@@ -218,6 +216,7 @@ public class AutoConnectionSourceImpl implements 
ConnectionSource {
   return response;
 } catch (IOException ioe) {
   reportDeadLocator(locator, ioe);
+  updateLocatorInLocatorList(locator);
   return null;
 } catch (ClassNotFoundException e) {
   logger.warn(
@@ -234,6 +233,45 @@ public class AutoConnectionSourceImpl implements 
ConnectionSource {
 }
   }
 
+  /**
+   * If connecting to the locator fails with an IOException, this may be 
because the locator's IP
+   * has changed. Add the locator back to the list of locators using host 
address rather than IP.
+   * This will cause another DNS lookup, hopefully finding the locator.
+   * 
+   * @param locator
+   */
+  protected void updateLocatorInLocatorList(InetSocketAddress locator) {
+if (locator.getHostName() != null) {
+  LocatorList locatorList = locators.get();
+  List newLocatorsList = new ArrayList<>();
+
+  for (InetSocketAddress tloc : locatorList.getLocators()) {
+if (tloc.equals(locator)) {
+  /**
+   * This call doesn't throw UnknownHostException;
+   */
+  InetSocketAddress changeLoc =
+  new InetSocketAddress(locator.getHostName(), locator.getPort());
+  newLocatorsList.add(changeLoc);
+  logger.info("updateLocatorInLocatorList changing locator list: loc 
form: " + locator
+  + " ,loc to: " + changeLoc);
+} else {
+  newLocatorsList.add(tloc);
+}
+  }
+
+  logger.info("updateLocatorInLocatorList locator list from:" + 
locatorList.getLocators()
+  + " to: " + newLocatorsList);
+
+  LocatorList newLocatorList = new LocatorList(newLocatorsList);
+  locators.set(newLocatorList);
+}
+  }
+
+  protected List getCurrentLocators() {
+return locators.get().locators;
+  }
+
   protected ServerLocationResponse queryLocators(ServerLocationRequest 
request) {
 Iterator controllerItr = locators.get().iterator();
 ServerLocationResponse response = null;
@@ -276,7 +314,7 @@ public class AutoConnectionSourceImpl implements 
ConnectionSource {
   badLocators.remove(address);
 }
 
-newLocators.addAll(badLocators);
+addbadLocators(newLocators, badLocators);
 
 if (logger.isInfoEnabled()) {
   LocatorList oldLocators = (LocatorList) locators.get();
@@ -300,11 +338,37 @@ public class AutoConnectionSourceImpl 

[44/50] [abbrv] geode git commit: merge GEODE-2995, GEODE-3775 into develop with integration test.

2017-06-27 Thread hiteshkhamesra
merge GEODE-2995, GEODE-3775 into develop with integration test.

Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/db11ebc1
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/db11ebc1
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/db11ebc1

Branch: refs/heads/feature/GEODE-2804v3
Commit: db11ebc1efdf2371bdf1566a7828dc08ea621e2c
Parents: e62e825
Author: Galen OSullivan 
Authored: Wed Jun 21 16:53:03 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../sockets/ClientProtocolMessageHandler.java   |  18 +--
 .../tier/sockets/ServerConnectionFactory.java   |  39 +-
 .../sockets/ServiceLoadingFailureException.java |  35 ++
 .../ServerConnectionFactoryIntegrationTest.java |  67 --
 .../sockets/ServerConnectionFactoryTest.java|  43 ++-
 .../protobuf/ProtobufStreamProcessor.java   |  15 ++-
 ...he.tier.sockets.ClientProtocolMessageHandler |   1 +
 .../RoundTripCacheConnectionJUnitTest.java  | 123 +++
 8 files changed, 256 insertions(+), 85 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/db11ebc1/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
index 702609d..32e9e4b 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
@@ -22,14 +22,14 @@ import java.io.InputStream;
 import java.io.OutputStream;
 
 /**
- * Stub, this will be hooked up to the new client protocol when it's 
implemented.
+ * This is an interface that other modules can implement to hook into
+ * {@link GenericProtocolServerConnection} to handle messages sent to Geode.
+ *
+ * Currently, only one {@link ClientProtocolMessageHandler} at a time can be 
used in a Geode
+ * instance. It gets wired into {@link ServerConnectionFactory} to create all 
instances of
+ * {@link GenericProtocolServerConnection}.
  */
-public class ClientProtocolMessageHandler {
-  /**
-   * Bogus, but it lets us write an integration test so that nobody breaks our 
flow.
-   */
-  public void receiveMessage(InputStream inputStream, OutputStream 
outputStream,
-  InternalCache cache) throws IOException {
-outputStream.write(inputStream.read());
-  }
+public interface ClientProtocolMessageHandler {
+  void receiveMessage(InputStream inputStream, OutputStream outputStream, 
InternalCache cache)
+  throws IOException;
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/db11ebc1/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactory.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactory.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactory.java
index e4746a7..ad13b78 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactory.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactory.java
@@ -22,14 +22,46 @@ import org.apache.geode.internal.security.SecurityService;
 
 import java.io.IOException;
 import java.net.Socket;
+import java.util.Iterator;
+import java.util.ServiceLoader;
+import javax.management.ServiceNotFoundException;
 
 /**
  * Creates instances of ServerConnection based on the connection mode provided.
  */
 public class ServerConnectionFactory {
-  // TODO: implement ClientProtocolMessageHandler.
-  private static final ClientProtocolMessageHandler protobufProtocolHandler =
-  new ClientProtocolMessageHandler();
+  private static ClientProtocolMessageHandler protobufProtocolHandler;
+  private static final Object protocolLoadLock = new Object();
+
+  private static ClientProtocolMessageHandler 
findClientProtocolMessageHandler() {
+if (protobufProtocolHandler != null) {
+  return protobufProtocolHandler;
+}
+
+synchronized (protocolLoadLock) {
+  if (protobufProtocolHandler != null) {
+return protobufProtocolHandler;
+  }
+
+  ServiceLoader loader =
+  ServiceLoader.load(ClientProtocolMessageHandler.class);
+  Iterator iterator = loader.iterator();
+
+  if 

[25/50] [abbrv] geode git commit: GEODE-2919: Provide finer grained security

2017-06-27 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
index 155b1ad..c281080 100644
--- 
a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommandsTest.java
@@ -16,21 +16,16 @@
 package org.apache.geode.management.internal.cli.commands;
 
 
-import static org.assertj.core.api.Assertions.assertThat;
 import static org.assertj.core.api.Assertions.assertThatThrownBy;
-import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.verify;
 
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
-import org.mockito.ArgumentCaptor;
 
 import org.apache.geode.internal.cache.InternalCache;
 import org.apache.geode.management.DistributedSystemMXBean;
-import org.apache.geode.management.internal.cli.functions.RegionFunctionArgs;
 import org.apache.geode.test.dunit.rules.GfshParserRule;
 import org.apache.geode.test.junit.categories.IntegrationTest;
 
@@ -49,17 +44,7 @@ public class CreateAlterDestroyRegionCommandsTest {
 doReturn(cache).when(spy).getCache();
 doReturn(dsMBean).when(spy).getDSMBean(cache);
 
-parser.executeLastCommandWithInstance(spy);
-
-ArgumentCaptor argsCaptor =
-ArgumentCaptor.forClass(RegionFunctionArgs.class);
-
-verify(spy).validateRegionFunctionArgs(any(), argsCaptor.capture());
-
-RegionFunctionArgs args = argsCaptor.getValue();
-assertThat(args.getPartitionResolver()).isEqualTo("Foo");
-
-assertThatThrownBy(() -> spy.validateRegionFunctionArgs(cache, args))
+assertThatThrownBy(() -> parser.executeLastCommandWithInstance(spy))
 .hasMessageContaining("Foo is an invalid Partition Resolver");
   }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/451d12e8/geode-core/src/test/java/org/apache/geode/management/internal/security/CacheServerMBeanAuthenticationJUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/security/CacheServerMBeanAuthenticationJUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/security/CacheServerMBeanAuthenticationJUnitTest.java
index 9a1605a..1d98087 100644
--- 
a/geode-core/src/test/java/org/apache/geode/management/internal/security/CacheServerMBeanAuthenticationJUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/security/CacheServerMBeanAuthenticationJUnitTest.java
@@ -16,28 +16,26 @@ package org.apache.geode.management.internal.security;
 
 import static 
org.apache.geode.distributed.ConfigurationProperties.SECURITY_MANAGER;
 
-import org.apache.geode.management.CacheServerMXBean;
-import org.apache.geode.security.TestSecurityManager;
-import org.apache.geode.test.dunit.rules.ConnectionConfiguration;
-import org.apache.geode.test.dunit.rules.MBeanServerConnectionRule;
-import org.apache.geode.test.dunit.rules.ServerStarterRule;
-import org.apache.geode.test.junit.categories.IntegrationTest;
 import org.junit.Before;
 import org.junit.ClassRule;
 import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
+import org.apache.geode.management.CacheServerMXBean;
+import org.apache.geode.security.SimpleTestSecurityManager;
+import org.apache.geode.test.dunit.rules.ConnectionConfiguration;
+import org.apache.geode.test.dunit.rules.MBeanServerConnectionRule;
+import org.apache.geode.test.dunit.rules.ServerStarterRule;
+import org.apache.geode.test.junit.categories.IntegrationTest;
+
 @Category(IntegrationTest.class)
 public class CacheServerMBeanAuthenticationJUnitTest {
   private CacheServerMXBean bean;
 
   @ClassRule
   public static ServerStarterRule server = new 
ServerStarterRule().withJMXManager()
-  .withProperty(SECURITY_MANAGER, TestSecurityManager.class.getName())
-  .withProperty(TestSecurityManager.SECURITY_JSON,
-  "org/apache/geode/management/internal/security/cacheServer.json")
-  .withAutoStart();
+  .withProperty(SECURITY_MANAGER, 
SimpleTestSecurityManager.class.getName()).withAutoStart();
 
   @Rule
   public MBeanServerConnectionRule connectionRule =
@@ -49,7 +47,7 @@ public class CacheServerMBeanAuthenticationJUnitTest {
   }
 
   @Test
-  @ConnectionConfiguration(user = "data-admin", password = "1234567")
+  

[36/50] [abbrv] geode git commit: GEODE-3075: changes in response to feedback; refactor some.

2017-06-27 Thread hiteshkhamesra
GEODE-3075: changes in response to feedback; refactor some.

`AcceptorImpl.handleNewClientConnection` has had refactoring and should
be a bit more understandable.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/c71c28df
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/c71c28df
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/c71c28df

Branch: refs/heads/feature/GEODE-2804v3
Commit: c71c28dff7fd6d20798fadcbd6a1a15f055ae52e
Parents: cdcc4d9
Author: Galen OSullivan 
Authored: Mon Jun 19 17:48:53 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../geode/internal/cache/tier/Acceptor.java |   2 +-
 .../cache/tier/sockets/AcceptorImpl.java| 316 ++-
 .../GenericProtocolServerConnection.java|  85 +
 .../sockets/NewProtocolServerConnection.java|  87 -
 .../tier/sockets/ServerConnectionFactory.java   |   9 +-
 .../ServerConnectionFactoryIntegrationTest.java |  45 ++-
 .../sockets/ServerConnectionFactoryTest.java|  15 +-
 7 files changed, 291 insertions(+), 268 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/c71c28df/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
index a95195a..e12a409 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
@@ -74,7 +74,7 @@ public abstract class Acceptor {
   /**
* For the new client-server protocol, which ignores the usual handshake 
mechanism.
*/
-  public static final byte CLIENT_TO_SERVER_NEW_PROTOCOL = (byte) 110;
+  public static final byte PROTOBUF_CLIENT_SERVER_PROTOCOL = (byte) 110;
 
   /**
* The GFE version of the server.

http://git-wip-us.apache.org/repos/asf/geode/blob/c71c28df/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
index 24efc93..50f7006 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
@@ -94,7 +94,7 @@ import javax.net.ssl.SSLException;
 /**
  * Implements the acceptor thread on the bridge server. Accepts connections 
from the edge and starts
  * up threads to process requests from these.
- * 
+ *
  * @since GemFire 2.0.2
  */
 @SuppressWarnings("deprecation")
@@ -113,19 +113,29 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
*/
   private final ThreadPoolExecutor hsPool;
 
-  /** The port on which this acceptor listens for client connections */
+  /**
+   * The port on which this acceptor listens for client connections
+   */
   private final int localPort;
 
-  /** The server socket that handles requests for connections */
+  /**
+   * The server socket that handles requests for connections
+   */
   private ServerSocket serverSock = null;
 
-  /** The GemFire cache served up by this acceptor */
+  /**
+   * The GemFire cache served up by this acceptor
+   */
   protected final InternalCache cache;
 
-  /** Caches region information */
+  /**
+   * Caches region information
+   */
   private final CachedRegionHelper crHelper;
 
-  /** A lock to prevent close from occurring while creating a ServerConnection 
*/
+  /**
+   * A lock to prevent close from occurring while creating a ServerConnection
+   */
   private final Object syncLock = new Object();
 
   /**
@@ -165,7 +175,9 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
*/
   public static final int DEFAULT_HANDSHAKE_TIMEOUT_MS = 59000;
 
-  /** Test value for handshake timeout */
+  /**
+   * Test value for handshake timeout
+   */
   protected static final int handShakeTimeout =
   Integer.getInteger(HANDSHAKE_TIMEOUT_PROPERTY_NAME, 
DEFAULT_HANDSHAKE_TIMEOUT_MS).intValue();
 
@@ -180,17 +192,25 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
*/
   public static final int DEFAULT_ACCEPT_TIMEOUT_MS = 9900;
 
-  /** Test value for accept timeout */
+  /**
+   * Test value for accept timeout
+   */
   private final int acceptTimeout =
   Integer.getInteger(ACCEPT_TIMEOUT_PROPERTY_NAME, 

[06/50] [abbrv] geode git commit: Merge branch 'develop' into feature/GEODE-3071

2017-06-27 Thread hiteshkhamesra
Merge branch 'develop' into feature/GEODE-3071


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/dba7dcd3
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/dba7dcd3
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/dba7dcd3

Branch: refs/heads/feature/GEODE-2804v3
Commit: dba7dcd3042ae7cf9776822bb4e69f47291fc296
Parents: 07e8986 78f08e8
Author: Jens Deppe 
Authored: Mon Jun 19 08:23:24 2017 -0700
Committer: Jens Deppe 
Committed: Mon Jun 19 08:23:24 2017 -0700

--
 .../cli/commands/StatusLocatorRealGfshTest.java |  50 +++
 ...erConfigurationServiceEndToEndDUnitTest.java |   8 +-
 .../geode/test/dunit/rules/gfsh/GfshRule.java   | 116 ++
 .../geode/test/dunit/rules/gfsh/GfshScript.java | 124 ++
 .../source/subnavs/geode-subnav.erb |   8 +-
 geode-core/build.gradle |   4 -
 .../internal/InternalDistributedSystem.java |  62 +--
 .../apache/geode/internal/cache/EventID.java|   2 +-
 .../geode/internal/cache/GemFireCacheImpl.java  |   2 -
 .../geode/internal/jta/GlobalTransaction.java   |   4 +
 .../geode/internal/jta/TransactionImpl.java |   3 +
 .../internal/jta/TransactionManagerImpl.java|  15 +
 .../geode/internal/jta/UserTransactionImpl.java |   4 +
 .../org/apache/geode/internal/jta/XidImpl.java  |   4 +
 .../internal/security/CallbackInstantiator.java |  28 ++
 .../security/CustomSecurityService.java | 346 
 .../security/DisabledSecurityService.java   | 221 ---
 .../security/EnabledSecurityService.java| 393 ---
 .../security/IntegratedSecurityService.java | 374 ++
 .../security/LegacySecurityService.java | 186 +
 .../internal/security/SecurityService.java  |  99 +++--
 .../security/SecurityServiceFactory.java| 188 +++--
 .../internal/security/SecurityServiceType.java  |  28 --
 .../security/shiro/ConfigInitializer.java   |  43 --
 .../security/shiro/CustomAuthRealm.java |  19 +-
 .../security/shiro/RealmInitializer.java|  54 ---
 .../security/shiro/SecurityManagerProvider.java |  83 
 .../internal/cli/commands/ConfigCommands.java   |  17 +-
 .../CreateAlterDestroyRegionCommands.java   |  24 +-
 .../internal/cli/commands/DataCommands.java |   4 +-
 .../internal/cli/commands/DeployCommands.java   |  57 +--
 .../cli/commands/DiskStoreCommands.java |  12 +-
 .../cli/commands/DurableClientCommands.java |  22 +-
 .../cli/commands/ExportLogsCommand.java |   4 +-
 .../internal/cli/commands/FunctionCommands.java |  20 +-
 .../internal/cli/commands/IndexCommands.java|  14 +-
 .../cli/commands/LauncherLifecycleCommands.java |   4 +-
 .../internal/cli/commands/MemberCommands.java   |   4 +-
 .../cli/commands/MiscellaneousCommands.java |  34 +-
 .../internal/cli/commands/QueueCommands.java|   2 +-
 .../internal/cli/commands/RegionCommands.java   |   6 +-
 .../internal/cli/commands/WanCommands.java  | 116 +++---
 .../internal/cli/functions/DeployFunction.java  |   3 -
 .../cli/functions/UndeployFunction.java |   9 +-
 .../internal/cli/i18n/CliStrings.java   |  99 +
 .../controllers/ConfigCommandsController.java   |  24 +-
 .../web/controllers/DataCommandsController.java |   4 +-
 .../controllers/DeployCommandsController.java   |  26 +-
 .../DiskStoreCommandsController.java|  22 +-
 .../DurableClientCommandsController.java|  50 +--
 .../web/controllers/ExportLogController.java|  10 +-
 .../controllers/FunctionCommandsController.java |  32 +-
 .../controllers/IndexCommandsController.java|  36 +-
 .../controllers/MemberCommandsController.java   |   6 +-
 .../MiscellaneousCommandsController.java|  36 +-
 .../controllers/QueueCommandsController.java|   6 +-
 .../controllers/RegionCommandsController.java   |  20 +-
 .../web/controllers/WanCommandsController.java  | 143 +++
 .../internal/index/HashIndexSetJUnitTest.java   |   2 +-
 .../membership/MembershipJUnitTest.java |   3 -
 .../messenger/JGroupsMessengerJUnitTest.java|   6 +-
 .../gms/mgr/GMSMembershipManagerJUnitTest.java  |   8 +-
 .../DeposePrimaryBucketMessageTest.java |   1 -
 .../partitioned/FetchEntryMessageTest.java  |   1 -
 .../FetchPartitionDetailsMessageTest.java   |   1 -
 .../partitioned/MoveBucketMessageTest.java  |   1 -
 .../partitioned/RemoveBucketMessageTest.java|   1 -
 .../sockets/ClientServerMiscBCDUnitTest.java|  42 ++
 .../tier/sockets/ClientServerMiscDUnitTest.java |   4 +-
 .../tier/sockets/command/ContainsKey66Test.java |   2 +-
 .../tier/sockets/command/CreateRegionTest.java  |   2 +-
 .../tier/sockets/command/Destroy65Test.java |   2 +-
 .../tier/sockets/command/DestroyRegionTest.java |   2 +-
 

[43/50] [abbrv] geode git commit: Add ServiceLoadingFailureException to excludedClasses.txt so tests pass.

2017-06-27 Thread hiteshkhamesra
Add ServiceLoadingFailureException to excludedClasses.txt so tests pass.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/da64fc6f
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/da64fc6f
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/da64fc6f

Branch: refs/heads/feature/GEODE-2804v3
Commit: da64fc6fbccc6a148ac7bd488593881c90b092d8
Parents: db11ebc
Author: Brian Rowe 
Authored: Thu Jun 22 23:27:22 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../resources/org/apache/geode/codeAnalysis/excludedClasses.txt | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/da64fc6f/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
index 6a6e0c1..c2629f1 100644
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
@@ -7,6 +7,7 @@ org/apache/geode/distributed/LocatorLauncher$Command
 org/apache/geode/distributed/ServerLauncher
 org/apache/geode/distributed/ServerLauncher$Command
 org/apache/geode/distributed/internal/DistributionManager
+org/apache/geode/internal/cache/tier/sockets/ServiceLoadingFailureException
 org/apache/geode/internal/JarDeployer
 org/apache/geode/internal/logging/GemFireLevel
 org/apache/geode/internal/logging/LoggingThreadGroup



[02/50] [abbrv] geode git commit: GEODE-3072: Ignore dunit test

2017-06-27 Thread hiteshkhamesra
GEODE-3072: Ignore dunit test


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/4bf80a6a
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/4bf80a6a
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/4bf80a6a

Branch: refs/heads/feature/GEODE-2804v3
Commit: 4bf80a6a9236f98070ce63a1d77dce3732c35b4f
Parents: 42350f1
Author: Barry Oglesby 
Authored: Fri Jun 16 14:10:27 2017 -0700
Committer: Barry Oglesby 
Committed: Fri Jun 16 14:10:27 2017 -0700

--
 .../internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/4bf80a6a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
index c732662..fa68781 100755
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscBCDUnitTest.java
@@ -31,6 +31,7 @@ import 
org.apache.geode.test.junit.categories.ClientServerTest;
 import org.apache.geode.test.junit.categories.DistributedTest;
 import 
org.apache.geode.test.junit.runners.CategoryWithParameterizedRunnerFactory;
 import org.awaitility.Awaitility;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 import org.junit.runner.RunWith;
@@ -95,7 +96,8 @@ public class ClientServerMiscBCDUnitTest extends 
ClientServerMiscDUnitTest {
 });
   }
 
-  @Test
+  //@Test
+  @Ignore
   public void testDistributedMemberBytesWithCurrentServerAndOldClient() throws 
Exception {
 // Start current version server
 int serverPort = initServerCache(true);



[32/50] [abbrv] geode git commit: GEODE-2819 Document http status code 414 for PUT

2017-06-27 Thread hiteshkhamesra
GEODE-2819 Document http status code 414 for PUT

- Include that 2000-byte size limits should work for
most components.

This closes #599


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/49123c47
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/49123c47
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/49123c47

Branch: refs/heads/feature/GEODE-2804v3
Commit: 49123c475052d730dfba0b021736d82c5404446c
Parents: 658b20f
Author: Karen Miller 
Authored: Fri Jun 23 16:25:32 2017 -0700
Committer: Karen Miller 
Committed: Mon Jun 26 09:07:27 2017 -0700

--
 geode-docs/rest_apps/put_multiple_values_for_keys.html.md.erb | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/49123c47/geode-docs/rest_apps/put_multiple_values_for_keys.html.md.erb
--
diff --git a/geode-docs/rest_apps/put_multiple_values_for_keys.html.md.erb 
b/geode-docs/rest_apps/put_multiple_values_for_keys.html.md.erb
index fa17580..e0e0c03 100644
--- a/geode-docs/rest_apps/put_multiple_values_for_keys.html.md.erb
+++ b/geode-docs/rest_apps/put_multiple_values_for_keys.html.md.erb
@@ -100,4 +100,5 @@ Response-payload: null
 
|---|--|
 | 400 BAD REQUEST   | Returned if one or more of the supplied keys is 
an invalid format.  
 |
 | 404 NOT FOUND | Returned if the region is not found. 

|
+| 414 REQUEST URI TOO LONG  | Returned if the URI is longer than the system 
component can handle. Limiting the size to 2000 bytes will work for most 
components.   |
 | 500 INTERNAL SERVER ERROR | Error encountered at Geode server. Check the 
HTTP response body for a stack trace of the exception. |



[20/50] [abbrv] geode git commit: GEODE-2820: Added awaitlity clause to wait for the index size to be correct

2017-06-27 Thread hiteshkhamesra
GEODE-2820: Added awaitlity clause to wait for the index size to be correct

* Added awaitility clause to wait for all the indexes to have all the 
entries
* This is done to make sure that the queries are executed after the 
indexes are ready.

This closes #588


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/822946b9
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/822946b9
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/822946b9

Branch: refs/heads/feature/GEODE-2804v3
Commit: 822946b9ddc426b45857c6b3919cd0b8b5a98406
Parents: 43b00bd
Author: nabarun 
Authored: Thu Jun 15 16:32:46 2017 -0700
Committer: nabarun 
Committed: Wed Jun 21 15:12:49 2017 -0700

--
 .../dunit/QueryIndexUsingXMLDUnitTest.java  | 30 +---
 1 file changed, 26 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/822946b9/geode-core/src/test/java/org/apache/geode/cache/query/dunit/QueryIndexUsingXMLDUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/cache/query/dunit/QueryIndexUsingXMLDUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/cache/query/dunit/QueryIndexUsingXMLDUnitTest.java
index 83f1da3..e08b019 100644
--- 
a/geode-core/src/test/java/org/apache/geode/cache/query/dunit/QueryIndexUsingXMLDUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/cache/query/dunit/QueryIndexUsingXMLDUnitTest.java
@@ -21,6 +21,7 @@ import static org.apache.geode.test.dunit.Invoke.*;
 import static org.apache.geode.test.dunit.LogWriterUtils.*;
 import static org.assertj.core.api.Assertions.*;
 import static org.awaitility.Awaitility.*;
+import static org.junit.Assert.assertEquals;
 
 import java.io.File;
 import java.net.URL;
@@ -28,8 +29,10 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Properties;
+import java.util.concurrent.TimeUnit;
 
 import org.apache.commons.io.FileUtils;
+import org.awaitility.Awaitility;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Ignore;
@@ -473,11 +476,7 @@ public class QueryIndexUsingXMLDUnitTest extends 
JUnit4CacheTestCase {
 
   /**
* Creates async indexes and compares the results between index and 
non-index results.
-   * 
-   * DISABLED. This test is disabled due to a high rate of throw new 
AssertionError. See ticket
-   * #52167
*/
-  @Ignore("TODO: test is disabled because of #52167")
   @Test
   public void testCreateAsyncIndexWhileDoingGIIAndCompareQueryResults() throws 
Exception {
 Host host = Host.getHost(0);
@@ -510,11 +509,34 @@ public class QueryIndexUsingXMLDUnitTest extends 
JUnit4CacheTestCase {
 vm1.invoke(prIndexCreationCheck(PERSISTENT_REG_NAME, "secIndex", 50));
 vm1.invoke(indexCreationCheck(REP_REG_NAME, "secIndex"));
 
+vm0.invoke(() -> validateIndexSize());
+vm1.invoke(() -> validateIndexSize());
+
+
 // Execute query and verify index usage
 vm0.invoke(executeQueryAndCompareResult(false));
 vm1.invoke(executeQueryAndCompareResult(false));
   }
 
+  public void validateIndexSize() {
+Awaitility.await().atMost(60, TimeUnit.SECONDS).until(() -> {
+  boolean indexSizeCheck_NAME = validateIndexSizeForRegion(NAME);
+  boolean indexSizeCheck_REP_REG_NAME = 
validateIndexSizeForRegion(REP_REG_NAME);
+  boolean indexSizeCheck_PERSISTENT_REG_NAME = 
validateIndexSizeForRegion(PERSISTENT_REG_NAME);
+  assertEquals("Index does not contain all the entries after 60 seconds 
have elapsed ", true,
+  (indexSizeCheck_NAME && indexSizeCheck_REP_REG_NAME
+  && indexSizeCheck_PERSISTENT_REG_NAME));
+});
+  }
+
+  private boolean validateIndexSizeForRegion(final String regionName) {
+Region region = getCache().getRegion(regionName);
+QueryService queryService = getCache().getQueryService();
+return queryService.getIndex(region, 
"statusIndex").getStatistics().getNumberOfValues() == 500
+&& queryService.getIndex(region, 
"idIndex").getStatistics().getNumberOfValues() == 500
+&& queryService.getIndex(region, 
"statusIndex").getStatistics().getNumberOfValues() == 500;
+  }
+
   @Test
   public void 
testIndexCreationForReplicatedPersistentOverFlowRegionOnRestart() throws 
Exception {
 Host host = Host.getHost(0);



[33/50] [abbrv] geode git commit: GEODE-3075: Add an integration test for the ServerConnectionFactory

2017-06-27 Thread hiteshkhamesra
GEODE-3075: Add an integration test for the ServerConnectionFactory

the current implementation is bogus, but does test that the flow works.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/4ace36af
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/4ace36af
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/4ace36af

Branch: refs/heads/feature/GEODE-2804v3
Commit: 4ace36af00a22e0995a2e0d07db75f5508524a25
Parents: dfdde4a
Author: Galen OSullivan 
Authored: Fri Jun 16 09:59:11 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../sockets/ClientProtocolMessageHandler.java   |  8 ++-
 .../sockets/NewProtocolServerConnection.java|  7 ++-
 .../ServerConnectionFactoryIntegrationTest.java | 66 
 .../sockets/ServerConnectionFactoryTest.java| 44 ++---
 4 files changed, 100 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/4ace36af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
index db42330..702609d 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
@@ -17,6 +17,7 @@ package org.apache.geode.internal.cache.tier.sockets;
 
 import org.apache.geode.internal.cache.InternalCache;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 
@@ -24,6 +25,11 @@ import java.io.OutputStream;
  * Stub, this will be hooked up to the new client protocol when it's 
implemented.
  */
 public class ClientProtocolMessageHandler {
+  /**
+   * Bogus, but it lets us write an integration test so that nobody breaks our 
flow.
+   */
   public void receiveMessage(InputStream inputStream, OutputStream 
outputStream,
-  InternalCache cache) {}
+  InternalCache cache) throws IOException {
+outputStream.write(inputStream.read());
+  }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/4ace36af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
index a78cd1c..83b23b1 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
@@ -50,9 +50,9 @@ public class NewProtocolServerConnection extends 
ServerConnection {
* @param acceptor
*/
   public NewProtocolServerConnection(Socket s, InternalCache c, 
CachedRegionHelper helper,
- CacheServerStats stats, int hsTimeout, 
int socketBufferSize, String communicationModeStr,
- byte communicationMode, Acceptor 
acceptor, ClientProtocolMessageHandler newClientProtocol,
- SecurityService securityService) {
+  CacheServerStats stats, int hsTimeout, int socketBufferSize, String 
communicationModeStr,
+  byte communicationMode, Acceptor acceptor, ClientProtocolMessageHandler 
newClientProtocol,
+  SecurityService securityService) {
 super(s, c, helper, stats, hsTimeout, socketBufferSize, 
communicationModeStr, communicationMode,
 acceptor, securityService);
 assert (communicationMode == AcceptorImpl.CLIENT_TO_SERVER_NEW_PROTOCOL);
@@ -65,6 +65,7 @@ public class NewProtocolServerConnection extends 
ServerConnection {
   Socket socket = this.getSocket();
   InputStream inputStream = socket.getInputStream();
   OutputStream outputStream = socket.getOutputStream();
+
   // TODO serialization types?
   newClientProtocol.receiveMessage(inputStream, outputStream, 
this.getCache());
 } catch (IOException e) {

http://git-wip-us.apache.org/repos/asf/geode/blob/4ace36af/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
--
diff --git 

[07/50] [abbrv] geode git commit: GEODE-2601: Fixing banner being logged twice during locator startup (now only logs once if both locator and distributed systems are started)

2017-06-27 Thread hiteshkhamesra
GEODE-2601: Fixing banner being logged twice during locator startup (now only 
logs once if both locator and distributed systems are started)


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/31544243
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/31544243
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/31544243

Branch: refs/heads/feature/GEODE-2804v3
Commit: 31544243fd94aa8c1966e29670a4aa12363557c6
Parents: 78f08e8
Author: YehEmily 
Authored: Thu Jun 8 14:40:39 2017 -0700
Committer: Ken Howe 
Committed: Mon Jun 19 09:04:11 2017 -0700

--
 .../internal/InternalDistributedSystem.java | 32 +---
 .../distributed/internal/InternalLocator.java   |  3 +-
 .../internal/logging/LogWriterFactory.java  | 16 +-
 3 files changed, 23 insertions(+), 28 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/31544243/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
index 85f9146..d77e8b9 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
@@ -1797,7 +1797,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
   @Override
   public Statistics[] getStatistics() {
 List statsList = this.statsList;
-return (Statistics[]) statsList.toArray(new Statistics[0]);
+return statsList.toArray(new Statistics[0]);
   }
 
   // StatisticsFactory methods
@@ -1829,7 +1829,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
   }
 
   public FunctionStats getFunctionStats(String textId) {
-FunctionStats stats = (FunctionStats) 
functionExecutionStatsMap.get(textId);
+FunctionStats stats = functionExecutionStatsMap.get(textId);
 if (stats == null) {
   stats = new FunctionStats(this, textId);
   FunctionStats oldStats = functionExecutionStatsMap.putIfAbsent(textId, 
stats);
@@ -1870,7 +1870,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
*/
   public interface StatisticsVisitor {
 
-public void visit(Statistics stat);
+void visit(Statistics stat);
   }
 
   public Set getAllFunctionExecutionIds() {
@@ -2167,7 +2167,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
   private void notifyResourceEventListeners(ResourceEvent event, Object 
resource) {
 for (Iterator iter = resourceListeners.iterator(); 
iter.hasNext();) {
   try {
-ResourceEventsListener listener = (ResourceEventsListener) iter.next();
+ResourceEventsListener listener = iter.next();
 listener.handleEvent(event, resource);
   } catch (CancelException e) {
 // ignore
@@ -2302,7 +2302,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
   boolean isDurableClient = false;
 
   if (dca != null) {
-isDurableClient = ((dca.getId() == null || 
dca.getId().isEmpty()) ? false : true);
+isDurableClient = (!(dca.getId() == null || 
dca.getId().isEmpty()));
   }
 
   ((InternalDistributedSystem) ds).disconnect(false,
@@ -2337,7 +2337,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
  * 
  * @param sys the the system we are disconnecting from process should take 
before returning.
  */
-public void onDisconnect(InternalDistributedSystem sys);
+void onDisconnect(InternalDistributedSystem sys);
 
   }
 
@@ -2352,7 +2352,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
  * @param oldSystem the old DS, which is in a partially disconnected state 
and cannot be used
  *for messaging
  */
-public void reconnecting(InternalDistributedSystem oldSystem);
+void reconnecting(InternalDistributedSystem oldSystem);
 
 /**
  * Invoked after a reconnect to the distributed system
@@ -2360,8 +2360,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
  * @param oldSystem the old DS
  * @param newSystem the new DS
  */
-public void onReconnect(InternalDistributedSystem oldSystem,
-InternalDistributedSystem newSystem);
+void onReconnect(InternalDistributedSystem oldSystem, 
InternalDistributedSystem newSystem);
   }
 
   /**
@@ -2374,7 +2373,7 @@ public class InternalDistributedSystem extends 
DistributedSystem
  * 
  * 

geode git commit: GEODE-2804 Caching the InetAddress for configured ip string

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804v3 [created] b73119046


 GEODE-2804 Caching the InetAddress for configured ip string

1. We keep configure host string in HostAddress class
2. We reuse InetsocketAddress if it is ipString.
3. Client has logic to retry thus we keep InetsocketAddress even if
   it is not ip string.

GEODE-3017 IPv6 issue on windows. Above changes fixed this issue.

GEODE-2940 Now we don't validate configure host string on start. As
there is possibility that host may not available.

1. Earlier wan config were failing because of that. Now we just keep
those configure host string. And try this later.

Added unit tests for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/b7311904
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/b7311904
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/b7311904

Branch: refs/heads/feature/GEODE-2804v3
Commit: b73119046f845c02f160b85c9b70f54e870d8f03
Parents: cf7274e
Author: Hitesh Khamesra 
Authored: Tue Jun 27 12:51:12 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 12:51:12 2017 -0700

--
 geode-assembly/build.gradle |   1 +
 .../src/test/resources/expected_jars.txt|   3 +-
 geode-core/build.gradle |   3 +
 .../admin/internal/DistributionLocatorImpl.java |   6 +-
 .../internal/AutoConnectionSourceImpl.java  | 133 +++
 .../geode/cache/client/internal/PoolImpl.java   |  15 ++-
 .../internal/AbstractDistributionConfig.java|   8 +-
 .../internal/InternalDistributedSystem.java |   6 +-
 .../internal/membership/gms/GMSUtil.java|  11 +-
 .../membership/gms/locator/GMSLocator.java  |   9 +-
 .../membership/gms/membership/GMSJoinLeave.java |   8 +-
 .../membership/gms/membership/HostAddress.java  | 118 
 .../internal/tcpserver/TcpClient.java   |   3 +-
 .../admin/remote/DistributionLocatorId.java |  45 +--
 .../admin/remote/RemoteTransportConfig.java |   5 +-
 .../cache/ClusterConfigurationLoader.java   |   2 +-
 .../geode/internal/cache/PoolFactoryImpl.java   |  30 +++--
 .../internal/AutoConnectionSourceDUnitTest.java |  12 +-
 .../AutoConnectionSourceImplJUnitTest.java  |  84 ++--
 .../internal/DistributionConfigJUnitTest.java   |   2 +-
 .../internal/StartupMessageDataJUnitTest.java   |   4 +-
 .../gms/membership/GMSJoinLeaveJUnitTest.java   |   1 +
 .../geode/codeAnalysis/excludedClasses.txt  |   3 +-
 .../internal/locator/wan/LocatorDiscovery.java  |  10 +-
 .../wan/LocatorMembershipListenerImpl.java  |   8 +-
 .../cache/wan/AbstractRemoteGatewaySender.java  |   4 +-
 .../wan/misc/WanAutoDiscoveryDUnitTest.java |   7 +-
 gradle/dependency-versions.properties   |   1 +
 28 files changed, 403 insertions(+), 139 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/b7311904/geode-assembly/build.gradle
--
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 39bb542..95ccc70 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -140,6 +140,7 @@ def cp = {
 it.contains('commons-collections') ||
 it.contains('commons-lang') ||
 it.contains('commons-logging') ||
+it.contains('commons-validator') ||
 it.contains('fast-classpath-scanner') ||
 it.contains('fastutil') ||
 it.contains('jackson-annotations') ||

http://git-wip-us.apache.org/repos/asf/geode/blob/b7311904/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index 6260167..b0e7154 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -85,4 +85,5 @@ springfox-spring-web
 springfox-swagger
 springfox-swagger-common
 springfox-swagger-ui
-swagger-models
\ No newline at end of file
+swagger-models
+commons-validator

http://git-wip-us.apache.org/repos/asf/geode/blob/b7311904/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 7f34b4a..9ecb0f9 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -39,6 +39,8 @@ dependencies {
   compile 'antlr:antlr:' + project.'antlr.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + 
project.'jackson.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
+  

[geode] Git Push Summary

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804v2 [created] 718583b29


geode git commit: GEODE-2804 Caching the InetAddress for configured ip string

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804 d303e7c95 -> 5c60b9696


 GEODE-2804 Caching the InetAddress for configured ip string

1. We keep configure host string in HostAddress class
2. We reuse InetsocketAddress if it is ipString.
3. Client has logic to retry thus we keep InetsocketAddress even if
   it is not ip string.

GEODE-3017 IPv6 issue on windows. Above changes fixed this issue.

GEODE-2940 Now we don't validate configure host string on start. As
there is possibility that host may not available.

1. Earlier wan config were failing because of that. Now we just keep
those configure host string. And try this later.

Added unit tests for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/5c60b969
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/5c60b969
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/5c60b969

Branch: refs/heads/feature/GEODE-2804
Commit: 5c60b9696fdb42426c4df8f7ca78599fcb872cc0
Parents: d303e7c
Author: Hitesh Khamesra 
Authored: Tue Jun 27 11:51:11 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 11:51:11 2017 -0700

--
 geode-assembly/build.gradle |   1 +
 .../src/test/resources/expected_jars.txt|   3 +-
 geode-core/build.gradle |   3 +
 .../admin/internal/DistributionLocatorImpl.java |   6 +-
 .../internal/AutoConnectionSourceImpl.java  | 133 +++
 .../geode/cache/client/internal/PoolImpl.java   |  15 ++-
 .../internal/AbstractDistributionConfig.java|   8 +-
 .../internal/InternalDistributedSystem.java |   6 +-
 .../internal/membership/gms/GMSUtil.java|  11 +-
 .../membership/gms/locator/GMSLocator.java  |   9 +-
 .../membership/gms/membership/GMSJoinLeave.java |   8 +-
 .../membership/gms/membership/HostAddress.java  | 118 
 .../internal/tcpserver/TcpClient.java   |   3 +-
 .../admin/remote/DistributionLocatorId.java |  45 +--
 .../admin/remote/RemoteTransportConfig.java |   5 +-
 .../cache/ClusterConfigurationLoader.java   |   2 +-
 .../geode/internal/cache/PoolFactoryImpl.java   |  30 +++--
 .../internal/AutoConnectionSourceDUnitTest.java |  12 +-
 .../AutoConnectionSourceImplJUnitTest.java  |  84 ++--
 .../internal/DistributionConfigJUnitTest.java   |   2 +-
 .../internal/StartupMessageDataJUnitTest.java   |   4 +-
 .../gms/membership/GMSJoinLeaveJUnitTest.java   |   1 +
 .../geode/codeAnalysis/excludedClasses.txt  |   3 +-
 .../internal/locator/wan/LocatorDiscovery.java  |  10 +-
 .../wan/LocatorMembershipListenerImpl.java  |   8 +-
 .../cache/wan/AbstractRemoteGatewaySender.java  |   4 +-
 .../wan/misc/WanAutoDiscoveryDUnitTest.java |   7 +-
 gradle/dependency-versions.properties   |   1 +
 28 files changed, 403 insertions(+), 139 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/5c60b969/geode-assembly/build.gradle
--
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 39bb542..95ccc70 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -140,6 +140,7 @@ def cp = {
 it.contains('commons-collections') ||
 it.contains('commons-lang') ||
 it.contains('commons-logging') ||
+it.contains('commons-validator') ||
 it.contains('fast-classpath-scanner') ||
 it.contains('fastutil') ||
 it.contains('jackson-annotations') ||

http://git-wip-us.apache.org/repos/asf/geode/blob/5c60b969/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index 6260167..b0e7154 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -85,4 +85,5 @@ springfox-spring-web
 springfox-swagger
 springfox-swagger-common
 springfox-swagger-ui
-swagger-models
\ No newline at end of file
+swagger-models
+commons-validator

http://git-wip-us.apache.org/repos/asf/geode/blob/5c60b969/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 7f34b4a..9ecb0f9 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -39,6 +39,8 @@ dependencies {
   compile 'antlr:antlr:' + project.'antlr.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + 
project.'jackson.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
+  

geode git commit: Revert "GEODE-2804 Caching the InetAddress for configured ip string"

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804 58afd6869 -> d303e7c95


Revert "GEODE-2804 Caching the InetAddress for configured ip string"

This reverts commit 58afd6869980028e6b8d0e5848a8fc7a00270262.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/d303e7c9
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/d303e7c9
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/d303e7c9

Branch: refs/heads/feature/GEODE-2804
Commit: d303e7c953535c11df0547e2282cc27bad1d6f57
Parents: 58afd68
Author: Hitesh Khamesra 
Authored: Tue Jun 27 11:49:49 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 11:49:49 2017 -0700

--
 geode-assembly/build.gradle |   1 -
 .../src/test/resources/expected_jars.txt|   3 +-
 geode-core/build.gradle |   3 -
 .../admin/internal/DistributionLocatorImpl.java |   6 +-
 .../internal/AutoConnectionSourceImpl.java  | 133 ---
 .../geode/cache/client/internal/PoolImpl.java   |  15 +--
 .../internal/AbstractDistributionConfig.java|   8 +-
 .../internal/InternalDistributedSystem.java |   6 +-
 .../internal/membership/gms/GMSUtil.java|  11 +-
 .../membership/gms/locator/GMSLocator.java  |   9 +-
 .../membership/gms/membership/GMSJoinLeave.java |   8 +-
 .../internal/tcpserver/TcpClient.java   |   3 +-
 .../admin/remote/DistributionLocatorId.java |  45 ++-
 .../admin/remote/RemoteTransportConfig.java |   5 +-
 .../cache/ClusterConfigurationLoader.java   |   2 +-
 .../geode/internal/cache/PoolFactoryImpl.java   |  30 ++---
 .../internal/AutoConnectionSourceDUnitTest.java |  12 +-
 .../AutoConnectionSourceImplJUnitTest.java  |  84 ++--
 .../internal/DistributionConfigJUnitTest.java   |   2 +-
 .../internal/StartupMessageDataJUnitTest.java   |   4 +-
 .../gms/membership/GMSJoinLeaveJUnitTest.java   |   1 -
 .../geode/codeAnalysis/excludedClasses.txt  |   3 +-
 .../internal/locator/wan/LocatorDiscovery.java  |  10 +-
 .../wan/LocatorMembershipListenerImpl.java  |   8 +-
 .../cache/wan/AbstractRemoteGatewaySender.java  |   4 +-
 .../wan/misc/WanAutoDiscoveryDUnitTest.java |   7 +-
 gradle/dependency-versions.properties   |   1 -
 27 files changed, 139 insertions(+), 285 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/d303e7c9/geode-assembly/build.gradle
--
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 95ccc70..39bb542 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -140,7 +140,6 @@ def cp = {
 it.contains('commons-collections') ||
 it.contains('commons-lang') ||
 it.contains('commons-logging') ||
-it.contains('commons-validator') ||
 it.contains('fast-classpath-scanner') ||
 it.contains('fastutil') ||
 it.contains('jackson-annotations') ||

http://git-wip-us.apache.org/repos/asf/geode/blob/d303e7c9/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index b0e7154..6260167 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -85,5 +85,4 @@ springfox-spring-web
 springfox-swagger
 springfox-swagger-common
 springfox-swagger-ui
-swagger-models
-commons-validator
+swagger-models
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/geode/blob/d303e7c9/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 9ecb0f9..7f34b4a 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -39,8 +39,6 @@ dependencies {
   compile 'antlr:antlr:' + project.'antlr.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + 
project.'jackson.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
-  compile 'commons-validator:commons-validator:' + 
project.'commons-validator.version'
-
   compile 'commons-lang:commons-lang:' + project.'commons-lang.version'
   compile ('commons-modeler:commons-modeler:' + 
project.'commons-modeler.version') {
 exclude module: 'commons-digester'
@@ -135,7 +133,6 @@ dependencies {
   testRuntime 'commons-collections:commons-collections:' + 
project.'commons-collections.version'
   testRuntime 'commons-configuration:commons-configuration:' + 
project.'commons-configuration.version'
   testRuntime 'commons-io:commons-io:' + 

geode git commit: GEODE-2804 Caching the InetAddress for configured ip string

2017-06-27 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804 cf7274e6c -> 58afd6869


GEODE-2804 Caching the InetAddress for configured ip string

1. We keep configure host string in HostAddress class
2. We reuse InetsocketAddress if it is ipString.
3. Client has logic to retry thus we keep InetsocketAddress even if
   it is not ip string.

GEODE-3017 IPv6 issue on windows. Above changes fixed this issue.

GEODE-2940 Now we don't validate configure host string on start. As
there is possibility that host may not available.

1. Earlier wan config were failing because of that. Now we just keep
those configure host string. And try this later.

Added unit tests for it.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/58afd686
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/58afd686
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/58afd686

Branch: refs/heads/feature/GEODE-2804
Commit: 58afd6869980028e6b8d0e5848a8fc7a00270262
Parents: cf7274e
Author: Hitesh Khamesra 
Authored: Tue Jun 27 11:39:33 2017 -0700
Committer: Hitesh Khamesra 
Committed: Tue Jun 27 11:39:33 2017 -0700

--
 geode-assembly/build.gradle |   1 +
 .../src/test/resources/expected_jars.txt|   3 +-
 geode-core/build.gradle |   3 +
 .../admin/internal/DistributionLocatorImpl.java |   6 +-
 .../internal/AutoConnectionSourceImpl.java  | 133 +++
 .../geode/cache/client/internal/PoolImpl.java   |  15 ++-
 .../internal/AbstractDistributionConfig.java|   8 +-
 .../internal/InternalDistributedSystem.java |   6 +-
 .../internal/membership/gms/GMSUtil.java|  11 +-
 .../membership/gms/locator/GMSLocator.java  |   9 +-
 .../membership/gms/membership/GMSJoinLeave.java |   8 +-
 .../internal/tcpserver/TcpClient.java   |   3 +-
 .../admin/remote/DistributionLocatorId.java |  45 +--
 .../admin/remote/RemoteTransportConfig.java |   5 +-
 .../cache/ClusterConfigurationLoader.java   |   2 +-
 .../geode/internal/cache/PoolFactoryImpl.java   |  30 +++--
 .../internal/AutoConnectionSourceDUnitTest.java |  12 +-
 .../AutoConnectionSourceImplJUnitTest.java  |  84 ++--
 .../internal/DistributionConfigJUnitTest.java   |   2 +-
 .../internal/StartupMessageDataJUnitTest.java   |   4 +-
 .../gms/membership/GMSJoinLeaveJUnitTest.java   |   1 +
 .../geode/codeAnalysis/excludedClasses.txt  |   3 +-
 .../internal/locator/wan/LocatorDiscovery.java  |  10 +-
 .../wan/LocatorMembershipListenerImpl.java  |   8 +-
 .../cache/wan/AbstractRemoteGatewaySender.java  |   4 +-
 .../wan/misc/WanAutoDiscoveryDUnitTest.java |   7 +-
 gradle/dependency-versions.properties   |   1 +
 27 files changed, 285 insertions(+), 139 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/58afd686/geode-assembly/build.gradle
--
diff --git a/geode-assembly/build.gradle b/geode-assembly/build.gradle
index 39bb542..95ccc70 100755
--- a/geode-assembly/build.gradle
+++ b/geode-assembly/build.gradle
@@ -140,6 +140,7 @@ def cp = {
 it.contains('commons-collections') ||
 it.contains('commons-lang') ||
 it.contains('commons-logging') ||
+it.contains('commons-validator') ||
 it.contains('fast-classpath-scanner') ||
 it.contains('fastutil') ||
 it.contains('jackson-annotations') ||

http://git-wip-us.apache.org/repos/asf/geode/blob/58afd686/geode-assembly/src/test/resources/expected_jars.txt
--
diff --git a/geode-assembly/src/test/resources/expected_jars.txt 
b/geode-assembly/src/test/resources/expected_jars.txt
index 6260167..b0e7154 100644
--- a/geode-assembly/src/test/resources/expected_jars.txt
+++ b/geode-assembly/src/test/resources/expected_jars.txt
@@ -85,4 +85,5 @@ springfox-spring-web
 springfox-swagger
 springfox-swagger-common
 springfox-swagger-ui
-swagger-models
\ No newline at end of file
+swagger-models
+commons-validator

http://git-wip-us.apache.org/repos/asf/geode/blob/58afd686/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 7f34b4a..9ecb0f9 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -39,6 +39,8 @@ dependencies {
   compile 'antlr:antlr:' + project.'antlr.version'
   compile 'com.fasterxml.jackson.core:jackson-databind:' + 
project.'jackson.version'
   compile 'commons-io:commons-io:' + project.'commons-io.version'
+  compile 'commons-validator:commons-validator:' + 
project.'commons-validator.version'
+
   compile 

[13/13] geode git commit: Move new exception to sanctioned serializables.

2017-06-26 Thread hiteshkhamesra
Move new exception to sanctioned serializables.

Although we don't serialize it, exceptions sometimes get sent between
JVMs so it's best to be careful.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/e1c6c3a9
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/e1c6c3a9
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/e1c6c3a9

Branch: refs/heads/develop
Commit: e1c6c3a973413045c595fcf31a01c269e7df7e82
Parents: da64fc6
Author: Galen OSullivan 
Authored: Fri Jun 23 10:42:45 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../resources/org/apache/geode/codeAnalysis/excludedClasses.txt | 1 -
 .../org/apache/geode/codeAnalysis/sanctionedSerializables.txt   | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/e1c6c3a9/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
index c2629f1..6a6e0c1 100644
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
@@ -7,7 +7,6 @@ org/apache/geode/distributed/LocatorLauncher$Command
 org/apache/geode/distributed/ServerLauncher
 org/apache/geode/distributed/ServerLauncher$Command
 org/apache/geode/distributed/internal/DistributionManager
-org/apache/geode/internal/cache/tier/sockets/ServiceLoadingFailureException
 org/apache/geode/internal/JarDeployer
 org/apache/geode/internal/logging/GemFireLevel
 org/apache/geode/internal/logging/LoggingThreadGroup

http://git-wip-us.apache.org/repos/asf/geode/blob/e1c6c3a9/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
index 135f509..e5a111c 100755
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedSerializables.txt
@@ -340,6 +340,7 @@ 
org/apache/geode/internal/cache/tier/sockets/CacheClientNotifier$2,false,this$0:
 
org/apache/geode/internal/cache/tier/sockets/CacheClientProxy$MessageDispatcher$1,true,0,this$0:org/apache/geode/internal/cache/tier/sockets/CacheClientProxy$MessageDispatcher
 
org/apache/geode/internal/cache/tier/sockets/ClientTombstoneMessage$TOperation,false
 
org/apache/geode/internal/cache/tier/sockets/MessageTooLargeException,true,-8970585803331525833
+org/apache/geode/internal/cache/tier/sockets/ServiceLoadingFailureException,false
 
org/apache/geode/internal/cache/tier/sockets/UnregisterAllInterest,true,5026160621257178459
 
org/apache/geode/internal/cache/tx/TransactionalOperation$ServerRegionOperation,false
 
org/apache/geode/internal/cache/versions/ConcurrentCacheModificationException,true,2316928221010347462



[12/13] geode git commit: GEODE-3075: fix an integration test.

2017-06-26 Thread hiteshkhamesra
GEODE-3075: fix an integration test.

I think the test fails because another test doesn't clean up system
properties when it's done.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/e62e8250
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/e62e8250
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/e62e8250

Branch: refs/heads/develop
Commit: e62e825090db50f77faaa3e222595ee1026d7a6c
Parents: a3c66e1
Author: Galen OSullivan 
Authored: Wed Jun 21 14:01:01 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/e62e8250/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
index 82c4e54..9a1509f 100644
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
@@ -46,7 +46,9 @@ public class ServerConnectionFactoryIntegrationTest {
   @Test
   public void testNewProtocolHeaderLeadsToNewProtocolServerConnection() throws 
IOException {
 System.setProperty("geode.feature-protobuf-protocol", "true");
+
 CacheFactory cacheFactory = new CacheFactory();
+cacheFactory.set("mcast-port","0"); //sometimes it isn't due to other 
tests.
 Cache cache = cacheFactory.create();
 
 CacheServer cacheServer = cache.addCacheServer();



[09/13] geode git commit: GEODE-2995: Handle stream of ProtoBuf encoded messages

2017-06-26 Thread hiteshkhamesra
GEODE-2995: Handle stream of ProtoBuf encoded messages

This for now exists in isolation, but will be hooked up with the code currently 
in review for GEODE-3075

Signed-off-by: Alexander Murmann 
Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/cdcc4d95
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/cdcc4d95
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/cdcc4d95

Branch: refs/heads/develop
Commit: cdcc4d95634ae6377c0198cadba92f52cd436be0
Parents: 4ace36a
Author: Udo Kohlmeyer 
Authored: Mon Jun 12 15:12:18 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 geode-protobuf/build.gradle |  64 ++
 .../org/apache/geode/ProtobufUtilities.java |  34 ++
 .../org/apache/geode/protocol/OpsProcessor.java |  53 
 .../InvalidProtocolMessageException.java|  25 
 .../handler/ProtobufStreamProcessor.java|  61 ++
 .../geode/protocol/handler/ProtocolHandler.java |  27 +
 .../protobuf/ProtobufProtocolHandler.java   |  41 +++
 .../protocol/operations/OperationHandler.java   |  27 +
 .../ProtobufRequestOperationParser.java |  33 +
 .../protobuf/GetRequestOperationHandler.java|  59 +
 .../registry/OperationsHandlerRegistry.java |  57 +
 ...rationHandlerAlreadyRegisteredException.java |  21 
 .../OperationHandlerNotRegisteredException.java |  21 
 .../ProtobufSerializationService.java   |  50 
 .../serialization/SerializationService.java |  27 +
 .../geode/serialization/SerializationType.java  |  36 ++
 .../apache/geode/serialization/TypeCodec.java   |  23 
 .../geode/serialization/codec/BinaryCodec.java  |  35 ++
 .../geode/serialization/codec/BooleanCodec.java |  37 ++
 .../geode/serialization/codec/ByteCodec.java|  37 ++
 .../geode/serialization/codec/DoubleCodec.java  |  37 ++
 .../geode/serialization/codec/FloatCodec.java   |  37 ++
 .../geode/serialization/codec/IntCodec.java |  38 ++
 .../geode/serialization/codec/JSONCodec.java|  37 ++
 .../geode/serialization/codec/LongCodec.java|  37 ++
 .../geode/serialization/codec/ShortCodec.java   |  37 ++
 .../geode/serialization/codec/StringCodec.java  |  39 ++
 .../UnsupportedEncodingTypeException.java   |  21 
 .../translation/EncodingTypeTranslator.java |  83 +
 .../UnsupportedEncodingTypeException.java   |  21 
 .../registry/SerializationCodecRegistry.java|  61 ++
 .../CodecAlreadyRegisteredForTypeException.java |  21 
 .../CodecNotRegisteredForTypeException.java |  21 
 geode-protobuf/src/main/proto/basicTypes.proto  |  60 +
 .../src/main/proto/clientProtocol.proto |  87 +
 geode-protobuf/src/main/proto/region_API.proto  | 106 
 geode-protobuf/src/main/proto/server_API.proto  |  37 ++
 ...pache.geode.protocol.handler.ProtocolHandler |   1 +
 ...e.geode.protocol.operations.OperationHandler |   1 +
 .../org.apache.geode.serialization.TypeCodec|  10 ++
 .../geode/client/protocol/IntegrationTest.java  | 121 +++
 .../geode/client/protocol/MessageUtil.java  |  41 +++
 .../geode/client/protocol/OpsHandler.java   |  21 
 .../geode/client/protocol/OpsProcessorTest.java |  64 ++
 .../ProtobufProtocolHandlerJUnitTest.java   |  88 ++
 .../GetRequestOperationHandlerTest.java |  95 +++
 .../OperationsHandlerRegistryJUnitTest.java |  94 ++
 .../ProtobufSerializationServiceImplTest.java   |  57 +
 .../codec/StringCodecJUnitTest.java |  64 ++
 ...eToSerializationTypeTranslatorJUnitTest.java |  72 +++
 .../registry/CodecRegistryJUnitTest.java| 113 +
 gradle/rat.gradle   |   6 +-
 settings.gradle |   4 +-
 53 files changed, 2394 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/build.gradle
--
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
new file mode 100644
index 000..2102f6a
--- /dev/null
+++ b/geode-protobuf/build.gradle
@@ -0,0 +1,64 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the 

[04/13] geode git commit: GEODE-2995: Implementing review feedback

2017-06-26 Thread hiteshkhamesra
GEODE-2995: Implementing review feedback

Numerous tweaks and fixes
Created protobuf package under org.apache.geode.protocol and moved several 
classes
Added javadoc comments

Signed-off-by: Galen O'Sullivan 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/31f4de06
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/31f4de06
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/31f4de06

Branch: refs/heads/develop
Commit: 31f4de065bd32b5801017427a14cec142c5897fc
Parents: c71c28d
Author: Brian Rowe 
Authored: Tue Jun 20 15:49:11 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 geode-protobuf/build.gradle |  2 -
 .../org/apache/geode/ProtobufUtilities.java | 34 
 .../org/apache/geode/protocol/OpsProcessor.java | 53 
 .../InvalidProtocolMessageException.java|  3 +
 .../handler/ProtobufStreamProcessor.java| 61 --
 .../geode/protocol/handler/ProtocolHandler.java | 27 --
 .../protobuf/ProtobufProtocolHandler.java   | 41 -
 .../protocol/operations/OperationHandler.java   | 10 +++
 .../ProtobufRequestOperationParser.java | 33 
 .../protobuf/GetRequestOperationHandler.java| 59 -
 .../registry/OperationsHandlerRegistry.java |  3 +
 ...rationHandlerAlreadyRegisteredException.java |  3 +
 .../OperationHandlerNotRegisteredException.java |  3 +
 .../protobuf/EncodingTypeTranslator.java| 86 +++
 .../protocol/protobuf/ProtobufOpsProcessor.java | 66 +++
 .../protobuf/ProtobufSerializationService.java  | 51 
 .../protobuf/ProtobufStreamProcessor.java   | 60 +
 .../protocol/protobuf/ProtobufUtilities.java| 34 
 .../operations/GetRequestOperationHandler.java  | 58 +
 .../serializer/ProtobufProtocolSerializer.java  | 41 +
 .../protocol/serializer/ProtocolSerializer.java | 31 +++
 .../ProtobufSerializationService.java   | 50 ---
 .../UnsupportedEncodingTypeException.java   |  3 +
 .../translation/EncodingTypeTranslator.java | 83 --
 .../UnsupportedEncodingTypeException.java   | 21 -
 .../CodecAlreadyRegisteredForTypeException.java |  3 +
 .../CodecNotRegisteredForTypeException.java |  3 +
 ...pache.geode.protocol.handler.ProtocolHandler |  1 -
 ...e.geode.protocol.operations.OperationHandler |  2 +-
 ...geode.protocol.serializer.ProtocolSerializer |  1 +
 .../geode/client/protocol/IntegrationTest.java  | 32 +++
 .../geode/client/protocol/OpsProcessorTest.java | 64 --
 .../ProtobufProtocolHandlerJUnitTest.java   | 88 
 .../GetRequestOperationHandlerTest.java |  4 +-
 .../protobuf/ProtobufOpsProcessorTest.java  | 62 ++
 .../ProtobufProtocolSerializerJUnitTest.java| 81 ++
 .../ProtobufSerializationServiceImplTest.java   |  5 +-
 ...eToSerializationTypeTranslatorJUnitTest.java |  1 +
 .../registry/CodecRegistryJUnitTest.java| 16 ++--
 39 files changed, 632 insertions(+), 647 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/build.gradle
--
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
index 2102f6a..f069267 100644
--- a/geode-protobuf/build.gradle
+++ b/geode-protobuf/build.gradle
@@ -44,13 +44,11 @@ protobuf {
 // The artifact spec for the Protobuf Compiler
 artifact = 'com.google.protobuf:protoc:3.0.0'
 }
-// this allows our spotless rule to skip this directory (hopefully rat too)
 generatedFilesBaseDir = "$buildDir/generated-src/proto"
 }
 
 sourceSets {
 main {
-
 java {
 srcDir 'build/generated-src/proto/main/java'
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java 
b/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java
deleted file mode 100644
index c25fc14..000
--- a/geode-protobuf/src/main/java/org/apache/geode/ProtobufUtilities.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
- * agreements. See the NOTICE file distributed with this work for additional 
information regarding
- * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
- * "License"); you may not use this file except in 

[06/13] geode git commit: GEODE-3075: changes in response to feedback; refactor some.

2017-06-26 Thread hiteshkhamesra
GEODE-3075: changes in response to feedback; refactor some.

`AcceptorImpl.handleNewClientConnection` has had refactoring and should
be a bit more understandable.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/c71c28df
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/c71c28df
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/c71c28df

Branch: refs/heads/develop
Commit: c71c28dff7fd6d20798fadcbd6a1a15f055ae52e
Parents: cdcc4d9
Author: Galen OSullivan 
Authored: Mon Jun 19 17:48:53 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../geode/internal/cache/tier/Acceptor.java |   2 +-
 .../cache/tier/sockets/AcceptorImpl.java| 316 ++-
 .../GenericProtocolServerConnection.java|  85 +
 .../sockets/NewProtocolServerConnection.java|  87 -
 .../tier/sockets/ServerConnectionFactory.java   |   9 +-
 .../ServerConnectionFactoryIntegrationTest.java |  45 ++-
 .../sockets/ServerConnectionFactoryTest.java|  15 +-
 7 files changed, 291 insertions(+), 268 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/c71c28df/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
index a95195a..e12a409 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
@@ -74,7 +74,7 @@ public abstract class Acceptor {
   /**
* For the new client-server protocol, which ignores the usual handshake 
mechanism.
*/
-  public static final byte CLIENT_TO_SERVER_NEW_PROTOCOL = (byte) 110;
+  public static final byte PROTOBUF_CLIENT_SERVER_PROTOCOL = (byte) 110;
 
   /**
* The GFE version of the server.

http://git-wip-us.apache.org/repos/asf/geode/blob/c71c28df/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
index 24efc93..50f7006 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
@@ -94,7 +94,7 @@ import javax.net.ssl.SSLException;
 /**
  * Implements the acceptor thread on the bridge server. Accepts connections 
from the edge and starts
  * up threads to process requests from these.
- * 
+ *
  * @since GemFire 2.0.2
  */
 @SuppressWarnings("deprecation")
@@ -113,19 +113,29 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
*/
   private final ThreadPoolExecutor hsPool;
 
-  /** The port on which this acceptor listens for client connections */
+  /**
+   * The port on which this acceptor listens for client connections
+   */
   private final int localPort;
 
-  /** The server socket that handles requests for connections */
+  /**
+   * The server socket that handles requests for connections
+   */
   private ServerSocket serverSock = null;
 
-  /** The GemFire cache served up by this acceptor */
+  /**
+   * The GemFire cache served up by this acceptor
+   */
   protected final InternalCache cache;
 
-  /** Caches region information */
+  /**
+   * Caches region information
+   */
   private final CachedRegionHelper crHelper;
 
-  /** A lock to prevent close from occurring while creating a ServerConnection 
*/
+  /**
+   * A lock to prevent close from occurring while creating a ServerConnection
+   */
   private final Object syncLock = new Object();
 
   /**
@@ -165,7 +175,9 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
*/
   public static final int DEFAULT_HANDSHAKE_TIMEOUT_MS = 59000;
 
-  /** Test value for handshake timeout */
+  /**
+   * Test value for handshake timeout
+   */
   protected static final int handShakeTimeout =
   Integer.getInteger(HANDSHAKE_TIMEOUT_PROPERTY_NAME, 
DEFAULT_HANDSHAKE_TIMEOUT_MS).intValue();
 
@@ -180,17 +192,25 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
*/
   public static final int DEFAULT_ACCEPT_TIMEOUT_MS = 9900;
 
-  /** Test value for accept timeout */
+  /**
+   * Test value for accept timeout
+   */
   private final int acceptTimeout =
   Integer.getInteger(ACCEPT_TIMEOUT_PROPERTY_NAME, 
DEFAULT_ACCEPT_TIMEOUT_MS).intValue();
 
-  

[02/13] geode git commit: GEODE-2995: more review feedback and spotlessApply

2017-06-26 Thread hiteshkhamesra
GEODE-2995: more review feedback and spotlessApply

Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/0de1d97e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/0de1d97e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/0de1d97e

Branch: refs/heads/develop
Commit: 0de1d97ea229ec43203437f58971c44fe37cef62
Parents: 31f4de0
Author: Galen O'Sullivan 
Authored: Tue Jun 20 16:58:51 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../protocol/operations/OperationHandler.java   | 20 --
 ...rationHandlerAlreadyRegisteredException.java |  3 ++-
 .../protocol/protobuf/ProtobufOpsProcessor.java | 22 ++--
 .../protobuf/ProtobufStreamProcessor.java   |  7 +--
 .../protocol/serializer/ProtocolSerializer.java |  1 +
 .../serialization/SerializationService.java |  7 ++-
 .../geode/serialization/SerializationType.java  |  3 +++
 .../apache/geode/serialization/TypeCodec.java   | 10 +
 .../exception/TypeEncodingException.java| 21 +++
 .../UnsupportedEncodingTypeException.java   |  2 +-
 .../CodecAlreadyRegisteredForTypeException.java |  3 ++-
 .../CodecNotRegisteredForTypeException.java |  4 +++-
 .../geode/client/protocol/IntegrationTest.java  |  3 +--
 .../protobuf/ProtobufOpsProcessorTest.java  | 10 -
 .../ProtobufProtocolSerializerJUnitTest.java|  2 +-
 15 files changed, 86 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/0de1d97e/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
index 8eab146..7683e3b 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/OperationHandler.java
@@ -15,23 +15,31 @@
 package org.apache.geode.protocol.operations;
 
 import org.apache.geode.cache.Cache;
-import org.apache.geode.protocol.protobuf.ProtobufOpsProcessor;
 import org.apache.geode.protocol.operations.registry.OperationsHandlerRegistry;
+import org.apache.geode.protocol.protobuf.ProtobufOpsProcessor;
 import org.apache.geode.serialization.SerializationService;
-import 
org.apache.geode.serialization.exception.UnsupportedEncodingTypeException;
-import 
org.apache.geode.serialization.registry.exception.CodecNotRegisteredForTypeException;
+import org.apache.geode.serialization.exception.TypeEncodingException;
 
 /**
- * This interface is implemented by a object capable of handling request types 
'Req' and returning an a response of type 'Resp'
+ * This interface is implemented by a object capable of handling request types 
'Req' and returning
+ * an a response of type 'Resp'
  *
  * See {@link ProtobufOpsProcessor}
  */
 public interface OperationHandler {
+  /**
+   * Decode the message, deserialize contained values using the serialization 
service, do the work
+   * indicated on the provided cache, and return a response.
+   * 
+   * @throws TypeEncodingException if a problem occurs decoding an encoded 
value contained in the
+   * request.
+   */
   Resp process(SerializationService serializationService, Req request, Cache 
cache)
-  throws UnsupportedEncodingTypeException, 
CodecNotRegisteredForTypeException;
+  throws TypeEncodingException;
 
   /**
-   * @return the magic number used for registering the operation type with the 
{@link OperationsHandlerRegistry}.
+   * @return the magic number used for registering the operation type with the
+   * {@link OperationsHandlerRegistry}.
*/
   int getOperationCode();
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/0de1d97e/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
index 519698d..18475d8 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/operations/registry/exception/OperationHandlerAlreadyRegisteredException.java
+++ 

[08/13] geode git commit: GEODE-2995: Handle stream of ProtoBuf encoded messages

2017-06-26 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
--
diff --git 
a/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
new file mode 100644
index 000..fa7c3c6
--- /dev/null
+++ 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.protocol.operations.OperationHandler
@@ -0,0 +1 @@
+org.apache.geode.protocol.operations.protobuf.GetRequestOperationHandler
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
--
diff --git 
a/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
new file mode 100644
index 000..1b7b333
--- /dev/null
+++ 
b/geode-protobuf/src/main/resources/META-INF/services/org.apache.geode.serialization.TypeCodec
@@ -0,0 +1,10 @@
+org.apache.geode.serialization.codec.BinaryCodec
+org.apache.geode.serialization.codec.BooleanCodec
+org.apache.geode.serialization.codec.ByteCodec
+org.apache.geode.serialization.codec.DoubleCodec
+org.apache.geode.serialization.codec.FloatCodec
+org.apache.geode.serialization.codec.IntCodec
+org.apache.geode.serialization.codec.JSONCodec
+org.apache.geode.serialization.codec.LongCodec
+org.apache.geode.serialization.codec.ShortCodec
+org.apache.geode.serialization.codec.StringCodec

http://git-wip-us.apache.org/repos/asf/geode/blob/cdcc4d95/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
new file mode 100644
index 000..e86e908
--- /dev/null
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/client/protocol/IntegrationTest.java
@@ -0,0 +1,121 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.client.protocol;
+
+import com.google.protobuf.ByteString;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Region;
+import org.apache.geode.protocol.exception.InvalidProtocolMessageException;
+import org.apache.geode.protocol.handler.ProtobufStreamProcessor;
+import 
org.apache.geode.protocol.operations.registry.exception.OperationHandlerAlreadyRegisteredException;
+import 
org.apache.geode.protocol.operations.registry.exception.OperationHandlerNotRegisteredException;
+import org.apache.geode.protocol.protobuf.BasicTypes;
+import org.apache.geode.protocol.protobuf.ClientProtocol;
+import org.apache.geode.protocol.protobuf.RegionAPI;
+import org.apache.geode.serialization.codec.StringCodec;
+import 
org.apache.geode.serialization.protobuf.translation.EncodingTypeTranslator;
+import 
org.apache.geode.serialization.exception.UnsupportedEncodingTypeException;
+import org.apache.geode.serialization.registry.SerializationCodecRegistry;
+import 
org.apache.geode.serialization.registry.exception.CodecAlreadyRegisteredForTypeException;
+import 
org.apache.geode.serialization.registry.exception.CodecNotRegisteredForTypeException;
+import org.apache.geode.test.dunit.Assert;
+import org.apache.geode.test.junit.categories.UnitTest;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+
+@Category(UnitTest.class)
+public class IntegrationTest {
+
+  public static final String TEST_KEY = "my key";
+  public static final String TEST_VALUE = "my value";
+  public static final 

[07/13] geode git commit: GEODE-3075: Add an integration test for the ServerConnectionFactory

2017-06-26 Thread hiteshkhamesra
GEODE-3075: Add an integration test for the ServerConnectionFactory

the current implementation is bogus, but does test that the flow works.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/4ace36af
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/4ace36af
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/4ace36af

Branch: refs/heads/develop
Commit: 4ace36af00a22e0995a2e0d07db75f5508524a25
Parents: dfdde4a
Author: Galen OSullivan 
Authored: Fri Jun 16 09:59:11 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../sockets/ClientProtocolMessageHandler.java   |  8 ++-
 .../sockets/NewProtocolServerConnection.java|  7 ++-
 .../ServerConnectionFactoryIntegrationTest.java | 66 
 .../sockets/ServerConnectionFactoryTest.java| 44 ++---
 4 files changed, 100 insertions(+), 25 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/4ace36af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
index db42330..702609d 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientProtocolMessageHandler.java
@@ -17,6 +17,7 @@ package org.apache.geode.internal.cache.tier.sockets;
 
 import org.apache.geode.internal.cache.InternalCache;
 
+import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 
@@ -24,6 +25,11 @@ import java.io.OutputStream;
  * Stub, this will be hooked up to the new client protocol when it's 
implemented.
  */
 public class ClientProtocolMessageHandler {
+  /**
+   * Bogus, but it lets us write an integration test so that nobody breaks our 
flow.
+   */
   public void receiveMessage(InputStream inputStream, OutputStream 
outputStream,
-  InternalCache cache) {}
+  InternalCache cache) throws IOException {
+outputStream.write(inputStream.read());
+  }
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/4ace36af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
index a78cd1c..83b23b1 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/NewProtocolServerConnection.java
@@ -50,9 +50,9 @@ public class NewProtocolServerConnection extends 
ServerConnection {
* @param acceptor
*/
   public NewProtocolServerConnection(Socket s, InternalCache c, 
CachedRegionHelper helper,
- CacheServerStats stats, int hsTimeout, 
int socketBufferSize, String communicationModeStr,
- byte communicationMode, Acceptor 
acceptor, ClientProtocolMessageHandler newClientProtocol,
- SecurityService securityService) {
+  CacheServerStats stats, int hsTimeout, int socketBufferSize, String 
communicationModeStr,
+  byte communicationMode, Acceptor acceptor, ClientProtocolMessageHandler 
newClientProtocol,
+  SecurityService securityService) {
 super(s, c, helper, stats, hsTimeout, socketBufferSize, 
communicationModeStr, communicationMode,
 acceptor, securityService);
 assert (communicationMode == AcceptorImpl.CLIENT_TO_SERVER_NEW_PROTOCOL);
@@ -65,6 +65,7 @@ public class NewProtocolServerConnection extends 
ServerConnection {
   Socket socket = this.getSocket();
   InputStream inputStream = socket.getInputStream();
   OutputStream outputStream = socket.getOutputStream();
+
   // TODO serialization types?
   newClientProtocol.receiveMessage(inputStream, outputStream, 
this.getCache());
 } catch (IOException e) {

http://git-wip-us.apache.org/repos/asf/geode/blob/4ace36af/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ServerConnectionFactoryIntegrationTest.java
--
diff --git 

[01/13] geode git commit: GEODE-2995: incorporating even more review feedback

2017-06-26 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/develop 49123c475 -> e1c6c3a97


GEODE-2995: incorporating even more review feedback

Addressing feedback from Udo and Hitesh
Refactored test locations to match new src layout

Signed-off-by: Galen O'Sullivan 
Signed-off-by: Brian Rowe 


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/a3c66e1a
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/a3c66e1a
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/a3c66e1a

Branch: refs/heads/develop
Commit: a3c66e1afc88700bd7839f56d54a0f6d44f00432
Parents: 0de1d97
Author: Brian Rowe 
Authored: Wed Jun 21 11:53:54 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 geode-protobuf/build.gradle |   6 +-
 .../protobuf/EncodingTypeTranslator.java|  47 +++
 .../operations/GetRequestOperationHandler.java  |  19 +--
 .../geode/client/protocol/IntegrationTest.java  | 124 ---
 .../geode/client/protocol/MessageUtil.java  |  41 --
 .../geode/client/protocol/OpsHandler.java   |  21 
 .../geode/protocol/IntegrationJUnitTest.java| 124 +++
 .../org/apache/geode/protocol/MessageUtil.java  |  41 ++
 .../org/apache/geode/protocol/OpsHandler.java   |  21 
 .../GetRequestOperationHandlerTest.java |  95 --
 ...eToSerializationTypeTranslatorJUnitTest.java |  73 +++
 .../protobuf/ProtobufOpsProcessorJUnitTest.java |  62 ++
 .../protobuf/ProtobufOpsProcessorTest.java  |  62 --
 .../GetRequestOperationHandlerJUnitTest.java|  96 ++
 .../ProtobufProtocolSerializerJUnitTest.java|   2 +-
 .../ProtobufSerializationServiceImplTest.java   |  58 -
 .../ProtobufSerializationServiceJUnitTest.java  | 111 +
 .../codec/BinaryFormatJUnitTest.java|  64 ++
 .../codec/StringCodecJUnitTest.java |  64 --
 ...eToSerializationTypeTranslatorJUnitTest.java |  73 ---
 gradle/dependency-versions.properties   |   3 +
 21 files changed, 637 insertions(+), 570 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/a3c66e1a/geode-protobuf/build.gradle
--
diff --git a/geode-protobuf/build.gradle b/geode-protobuf/build.gradle
index f069267..a63000e 100644
--- a/geode-protobuf/build.gradle
+++ b/geode-protobuf/build.gradle
@@ -23,7 +23,7 @@ buildscript {
 mavenCentral()
 }
 dependencies {
-classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.1'
+classpath 'com.google.protobuf:protobuf-gradle-plugin:' + 
project.'protobuf-gradle-plugin.version'
 }
 }
 
@@ -36,13 +36,13 @@ dependencies {
 testCompile 'org.powermock:powermock-module-junit4:' + 
project.'powermock.version'
 testCompile 'org.powermock:powermock-api-mockito:' + 
project.'powermock.version'
 
-compile 'com.google.protobuf:protobuf-java:3.3.1'
+compile 'com.google.protobuf:protobuf-java:' + 
project.'protobuf-java.version'
 }
 
 protobuf {
 protoc {
 // The artifact spec for the Protobuf Compiler
-artifact = 'com.google.protobuf:protoc:3.0.0'
+artifact = 'com.google.protobuf:protoc:' + project.'protoc.version'
 }
 generatedFilesBaseDir = "$buildDir/generated-src/proto"
 }

http://git-wip-us.apache.org/repos/asf/geode/blob/a3c66e1a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
--
diff --git 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
index 650ac81..edb7c7e 100644
--- 
a/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
+++ 
b/geode-protobuf/src/main/java/org/apache/geode/protocol/protobuf/EncodingTypeTranslator.java
@@ -20,10 +20,28 @@ import org.apache.geode.protocol.protobuf.BasicTypes;
 import org.apache.geode.serialization.SerializationType;
 import 
org.apache.geode.serialization.exception.UnsupportedEncodingTypeException;
 
+import java.util.HashMap;
+
 /**
  * This class maps protobuf specific encoding types and the corresponding 
serialization types.
  */
 public abstract class EncodingTypeTranslator {
+  static final HashMap typeToEncodingMap = 
intializeTypeMap();
+
+  private static HashMap intializeTypeMap() {
+HashMap result = new HashMap<>();
+result.put(Integer.class, 

[10/13] geode git commit: Add ServiceLoadingFailureException to excludedClasses.txt so tests pass.

2017-06-26 Thread hiteshkhamesra
Add ServiceLoadingFailureException to excludedClasses.txt so tests pass.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/da64fc6f
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/da64fc6f
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/da64fc6f

Branch: refs/heads/develop
Commit: da64fc6fbccc6a148ac7bd488593881c90b092d8
Parents: db11ebc
Author: Brian Rowe 
Authored: Thu Jun 22 23:27:22 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:23 2017 -0700

--
 .../resources/org/apache/geode/codeAnalysis/excludedClasses.txt | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/da64fc6f/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
index 6a6e0c1..c2629f1 100644
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/excludedClasses.txt
@@ -7,6 +7,7 @@ org/apache/geode/distributed/LocatorLauncher$Command
 org/apache/geode/distributed/ServerLauncher
 org/apache/geode/distributed/ServerLauncher$Command
 org/apache/geode/distributed/internal/DistributionManager
+org/apache/geode/internal/cache/tier/sockets/ServiceLoadingFailureException
 org/apache/geode/internal/JarDeployer
 org/apache/geode/internal/logging/GemFireLevel
 org/apache/geode/internal/logging/LoggingThreadGroup



[05/13] geode git commit: GEODE-3075: Initial refactor adding NewProtocolServerConnection

2017-06-26 Thread hiteshkhamesra
GEODE-3075: Initial refactor adding NewProtocolServerConnection

subclassing `ServerConnection`.

The new code is broken but it won't be called under normal operation,
since it's gated on a system property, "geode.feature-protobuf-protocol"

Further refactoring and feature work to come.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/dfdde4af
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/dfdde4af
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/dfdde4af

Branch: refs/heads/develop
Commit: dfdde4af352566d60f18b0db156fc5b7f48ebd8b
Parents: 49123c4
Author: Galen OSullivan 
Authored: Mon Jun 12 09:33:35 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 26 09:26:22 2017 -0700

--
 .../geode/internal/cache/tier/Acceptor.java |  4 +
 .../cache/tier/sockets/AcceptorImpl.java| 10 +--
 .../cache/tier/sockets/ClientHealthMonitor.java |  7 +-
 .../sockets/ClientProtocolMessageHandler.java   | 29 +++
 .../tier/sockets/LegacyServerConnection.java| 88 
 .../sockets/NewProtocolServerConnection.java| 86 +++
 .../cache/tier/sockets/ServerConnection.java| 75 +++--
 .../tier/sockets/ServerConnectionFactory.java   | 50 +++
 .../sockets/ServerConnectionFactoryTest.java| 77 +
 .../tier/sockets/ServerConnectionTest.java  |  7 +-
 10 files changed, 375 insertions(+), 58 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/dfdde4af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
index 9a3241b..a95195a 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/Acceptor.java
@@ -71,6 +71,10 @@ public abstract class Acceptor {
*/
   public static final byte CLIENT_TO_SERVER_FOR_QUEUE = (byte) 107;
 
+  /**
+   * For the new client-server protocol, which ignores the usual handshake 
mechanism.
+   */
+  public static final byte CLIENT_TO_SERVER_NEW_PROTOCOL = (byte) 110;
 
   /**
* The GFE version of the server.

http://git-wip-us.apache.org/repos/asf/geode/blob/dfdde4af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
index 2a8818c..24efc93 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImpl.java
@@ -1422,8 +1422,8 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
 s.setTcpNoDelay(this.tcpNoDelay);
 
 if (communicationMode == CLIENT_TO_SERVER || communicationMode == 
GATEWAY_TO_GATEWAY
-|| communicationMode == MONITOR_TO_SERVER
-|| communicationMode == CLIENT_TO_SERVER_FOR_QUEUE) {
+|| communicationMode == MONITOR_TO_SERVER || communicationMode == 
CLIENT_TO_SERVER_FOR_QUEUE
+|| communicationMode == CLIENT_TO_SERVER_NEW_PROTOCOL) {
   String communicationModeStr = "";
   switch (communicationMode) {
 case CLIENT_TO_SERVER:
@@ -1466,9 +1466,9 @@ public class AcceptorImpl extends Acceptor implements 
Runnable {
   return;
 }
   }
-  ServerConnection serverConn = new ServerConnection(s, this.cache, 
this.crHelper, this.stats,
-  AcceptorImpl.handShakeTimeout, this.socketBufferSize, 
communicationModeStr,
-  communicationMode, this, this.securityService);
+  ServerConnection serverConn = 
ServerConnectionFactory.makeServerConnection(s, this.cache,
+  this.crHelper, this.stats, AcceptorImpl.handShakeTimeout, 
this.socketBufferSize,
+  communicationModeStr, communicationMode, this, this.securityService);
   synchronized (this.allSCsLock) {
 this.allSCs.add(serverConn);
 ServerConnection snap[] = this.allSCList; // avoid volatile read

http://git-wip-us.apache.org/repos/asf/geode/blob/dfdde4af/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/ClientHealthMonitor.java
 

[03/13] geode git commit: GEODE-2995: Implementing review feedback

2017-06-26 Thread hiteshkhamesra
http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
new file mode 100644
index 000..95244d2
--- /dev/null
+++ 
b/geode-protobuf/src/test/java/org/apache/geode/protocol/serializer/ProtobufProtocolSerializerJUnitTest.java
@@ -0,0 +1,81 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more 
contributor license
+ * agreements. See the NOTICE file distributed with this work for additional 
information regarding
+ * copyright ownership. The ASF licenses this file to You under the Apache 
License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the 
License. You may obtain a
+ * copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software 
distributed under the License
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 
KIND, either express
+ * or implied. See the License for the specific language governing permissions 
and limitations under
+ * the License.
+ */
+package org.apache.geode.protocol.serializer;
+
+import org.apache.geode.client.protocol.MessageUtil;
+import org.apache.geode.protocol.exception.InvalidProtocolMessageException;
+import 
org.apache.geode.protocol.protobuf.serializer.ProtobufProtocolSerializer;
+import org.apache.geode.protocol.protobuf.ClientProtocol;
+import org.apache.geode.test.junit.categories.UnitTest;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ServiceLoader;
+
+@Category(UnitTest.class)
+public class ProtobufProtocolSerializerJUnitTest {
+  private ProtocolSerializer protocolSerializer;
+
+  @Before
+  public void startup() {
+ServiceLoader serviceLoader = 
ServiceLoader.load(ProtocolSerializer.class);
+for (ProtocolSerializer protocolSerializer : serviceLoader) {
+  if (protocolSerializer instanceof ProtobufProtocolSerializer) {
+this.protocolSerializer = protocolSerializer;
+  }
+}
+  }
+
+  @Test
+  public void testDeserializeByteArrayToMessage()
+  throws IOException, InvalidProtocolMessageException {
+ClientProtocol.Message expectedRequestMessage = 
MessageUtil.createGetRequestMessage();
+
+ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+
+expectedRequestMessage.writeDelimitedTo(byteArrayOutputStream);
+InputStream inputStream = new 
ByteArrayInputStream(byteArrayOutputStream.toByteArray());
+
+ClientProtocol.Message actualMessage = 
protocolSerializer.deserialize(inputStream);
+Assert.assertEquals(expectedRequestMessage, actualMessage);
+  }
+
+  @Test(expected = InvalidProtocolMessageException.class)
+  public void testDeserializeInvalidByteThrowsException()
+throws IOException, InvalidProtocolMessageException {
+ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
+byteArrayOutputStream.write("Some incorrect byte array".getBytes());
+InputStream inputStream = new 
ByteArrayInputStream(byteArrayOutputStream.toByteArray());
+protocolSerializer.deserialize(inputStream);
+  }
+
+  @Test
+  public void testSerializeMessageToByteArray() throws IOException {
+ClientProtocol.Message message = MessageUtil.createGetRequestMessage();
+ByteArrayOutputStream expectedByteArrayOutputStream = new 
ByteArrayOutputStream();
+message.writeDelimitedTo(expectedByteArrayOutputStream);
+byte[] expectedByteArray = expectedByteArrayOutputStream.toByteArray();
+
+ByteArrayOutputStream actualByteArrayOutputStream = new 
ByteArrayOutputStream();
+protocolSerializer.serialize(message, actualByteArrayOutputStream);
+Assert.assertArrayEquals(expectedByteArray, 
actualByteArrayOutputStream.toByteArray());
+  }
+}

http://git-wip-us.apache.org/repos/asf/geode/blob/31f4de06/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
--
diff --git 
a/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
 
b/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
index a4c0a14..ef841c3 100644
--- 
a/geode-protobuf/src/test/java/org/apache/geode/serialization/ProtobufSerializationServiceImplTest.java
+++ 

[7/7] geode git commit: Remove debug println

2017-06-19 Thread hiteshkhamesra
Remove debug println


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/1f78fc45
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/1f78fc45
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/1f78fc45

Branch: refs/heads/feature/GEODE-2804
Commit: 1f78fc45ee9d8545ce94441daafde96bf9938407
Parents: 451bd42
Author: Jens Deppe 
Authored: Thu Jun 15 08:01:46 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:30 2017 -0700

--
 gradle/docker.gradle | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/1f78fc45/gradle/docker.gradle
--
diff --git a/gradle/docker.gradle b/gradle/docker.gradle
index 7a74c5d..5c2ef77 100644
--- a/gradle/docker.gradle
+++ b/gradle/docker.gradle
@@ -65,7 +65,7 @@ def dockerConfig = {
 
   args[3] = args[3] + matcher[0][1]
   def workdir = new File(args[3])
-  println "dockerize: making ${workdir}"
+  // println "dockerize: making ${workdir}"
   workdir.mkdirs()
   // println args
 



[6/7] geode git commit: GEODE-3091: remove empty method

2017-06-19 Thread hiteshkhamesra
GEODE-3091: remove empty method

This closes #585


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/cf7274e6
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/cf7274e6
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/cf7274e6

Branch: refs/heads/feature/GEODE-2804
Commit: cf7274e6c38b156cdc9bbf433475807116150a93
Parents: b18571a
Author: Nick Reich 
Authored: Thu Jun 15 15:59:50 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:30 2017 -0700

--
 .../geode/internal/cache/DistributedRegion.java  |  1 -
 .../org/apache/geode/internal/cache/LocalRegion.java | 15 ---
 .../geode/internal/cache/PartitionedRegion.java  |  1 -
 3 files changed, 17 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/cf7274e6/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
index 9df64d0..21f911d 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/DistributedRegion.java
@@ -935,7 +935,6 @@ public class DistributedRegion extends LocalRegion 
implements CacheDistributionA
   public void invalidate(Object key, Object aCallbackArgument)
   throws TimeoutException, EntryNotFoundException {
 validateKey(key);
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForLimitedOrNoAccess();
 Lock dlock = this.getDistributedLockIfGlobal(key);

http://git-wip-us.apache.org/repos/asf/geode/blob/cf7274e6/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
index 2b45a54..02625ee 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
@@ -1120,7 +1120,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   @Retained
   EntryEventImpl newDestroyEntryEvent(Object key, Object aCallbackArgument) {
 validateKey(key);
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForLimitedOrNoAccess();
 
@@ -1349,7 +1348,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   boolean retainResult) throws TimeoutException, CacheLoaderException {
 assert !retainResult || preferCD;
 validateKey(key);
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForNoAccess();
 discoverJTA();
@@ -1563,7 +1561,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   @Override
   public void invalidateRegion(Object aCallbackArgument) throws 
TimeoutException {
 getDataView().checkSupportsRegionInvalidate();
-validateCallbackArg(aCallbackArgument);
 checkReadiness();
 checkForLimitedOrNoAccess();
 RegionEventImpl event = new RegionEventImpl(this, 
Operation.REGION_INVALIDATE,
@@ -3118,8 +3115,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   protected void validateArguments(Object key, Object value, Object 
aCallbackArgument) {
 validateKey(key);
 validateValue(value);
-validateCallbackArg(aCallbackArgument);
-
   }
 
   void validateKey(Object key) {
@@ -3142,15 +3137,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   }
 
   /**
-   * Starting in 3.5, we don't check to see if the callback argument is {@code 
Serializable}. We
-   * instead rely on the actual serialization (which happens in-thread with 
the put) to tell us if
-   * there are any problems. TODO: delete method validateCallbackArg
-   */
-  void validateCallbackArg(Object aCallbackArgument) {
-// do nothing
-  }
-
-  /**
* @since GemFire 5.0.2
*/
   private final boolean doExpensiveValidations =
@@ -11633,7 +11619,6 @@ public class LocalRegion extends AbstractRegion 
implements LoaderHelperFactory,
   public boolean remove(Object key, Object value, Object callbackArg) {
 checkIfConcurrentMapOpsAllowed();
 validateKey(key);
-validateCallbackArg(callbackArg);
 checkReadiness();
 checkForLimitedOrNoAccess();
 


[5/7] geode git commit: GEODE-3071: Pull config of docker volumes into top level script so that they can be overridden

2017-06-19 Thread hiteshkhamesra
GEODE-3071: Pull config of docker volumes into top level script so that they 
can be overridden


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/b18571ae
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/b18571ae
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/b18571ae

Branch: refs/heads/feature/GEODE-2804
Commit: b18571aea9f0c376616f419524f930154432f74e
Parents: d4412a6
Author: Jens Deppe 
Authored: Mon Jun 19 07:42:57 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:30 2017 -0700

--
 build.gradle | 5 +
 gradle/docker.gradle | 4 ++--
 2 files changed, 7 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/b18571ae/build.gradle
--
diff --git a/build.gradle b/build.gradle
index 57372b3..4feb879 100755
--- a/build.gradle
+++ b/build.gradle
@@ -74,6 +74,11 @@ if (name == 'geode') {
   ext.scriptDir = 'gradle'
 }
 
+if (project.hasProperty('parallelDunit')) {
+  def pwd = System.getenv('PWD')
+  ext.dunitDockerVolumes = ["${pwd}":pwd]
+}
+
 apply from: "${scriptDir}/utilities.gradle"
 apply from: "${scriptDir}/java.gradle"
 apply from: "${scriptDir}/dependency-resolution.gradle"

http://git-wip-us.apache.org/repos/asf/geode/blob/b18571ae/gradle/docker.gradle
--
diff --git a/gradle/docker.gradle b/gradle/docker.gradle
index b67c073..7971974 100644
--- a/gradle/docker.gradle
+++ b/gradle/docker.gradle
@@ -47,11 +47,11 @@ def dockerConfig = {
 
 // volumes mounted to the containers
 // in a form: host_dir : container_dir
-def pwd = System.getenv('PWD')
 def gradleHome = System.getenv('GRADLE_USER_HOME') ?: 
"${System.getenv('HOME')}/.gradle"
 volumes = ["${gradleHome}":gradleHome]
 
-volumes << ["${pwd}":pwd]
+// Add volumes configured by top-level build script
+volumes << project.dunitDockerVolumes
 
 // specify the user for starting Gradle test worker within the container.
 user = dunitDockerUser



[1/7] geode git commit: GEODE-3071: Provide capability to parallelize distributedTests

2017-06-19 Thread hiteshkhamesra
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2804 601b338fd -> cf7274e6c


GEODE-3071: Provide capability to parallelize distributedTests

Herewith the ability to leverage Gradle's parallel test execution
capability to run dunits in parallel. This is combined with launching
tests in Docker containers to provide process, network and filesystem
isolation. Depending on the size of your system, this can speed up
running the distributedTest task 2-5 times.

The capability is enabled by launching gradle with '-PparallelDunit'

Tunables, enabled as gradle parametrs (-P option) are:

- dunitDockerImage: The docker image which will be used to launch
  tests. The image must have the JAVA_HOME environment variable set. The
  image must be pulled locally before starting the tests.
- dunitParallelForks: The number of parallel docker containers to be
  launched.
- dunitDockerUser: The docker user which will run the tests. Because of
  the way that the containers map the build directory into them, the
  test artifacts, will be written with this user id. By default this is
  'root'.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/451bd421
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/451bd421
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/451bd421

Branch: refs/heads/feature/GEODE-2804
Commit: 451bd421a4f0e35a61077461b0744539394452e8
Parents: f808d3b
Author: Jens Deppe 
Authored: Wed Jun 14 08:03:22 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:29 2017 -0700

--
 build.gradle |  2 ++
 gradle.properties|  7 
 gradle/docker.gradle | 83 +++
 3 files changed, 92 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/451bd421/build.gradle
--
diff --git a/build.gradle b/build.gradle
index ec6b920..57372b3 100755
--- a/build.gradle
+++ b/build.gradle
@@ -26,6 +26,7 @@ buildscript {
 classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.0.1'
 classpath "com.diffplug.gradle.spotless:spotless:2.2.0"
 classpath "me.champeau.gradle:jmh-gradle-plugin:0.3.1"
+classpath "com.pedjak.gradle.plugins:dockerized-test:0.4.2"
   }
 }
 
@@ -82,6 +83,7 @@ apply from: "${scriptDir}/code-analysis.gradle"
 apply from: "${scriptDir}/sonar.gradle"
 apply from: "${scriptDir}/ide.gradle"
 apply from: "${scriptDir}/rat.gradle"
+apply from: "${scriptDir}/docker.gradle"
 
 subprojects {
   // Make sure clean task for rootProject runs last

http://git-wip-us.apache.org/repos/asf/geode/blob/451bd421/gradle.properties
--
diff --git a/gradle.properties b/gradle.properties
index ca79a38..9462295 100755
--- a/gradle.properties
+++ b/gradle.properties
@@ -49,3 +49,10 @@ buildRoot=
 
 # We want signing to be on by default. Signing requires GPG to be set up.
 nexusSignArchives = true
+
+# Control how many concurrent dunit (using docker) tests will be run
+dunitParallelForks = 8
+# This is the name of the Docker image for running parallel dunits
+dunitDockerImage = openjdk:8
+# Docker user for parallel dunit tests
+dunitDockerUser = root

http://git-wip-us.apache.org/repos/asf/geode/blob/451bd421/gradle/docker.gradle
--
diff --git a/gradle/docker.gradle b/gradle/docker.gradle
new file mode 100644
index 000..7a74c5d
--- /dev/null
+++ b/gradle/docker.gradle
@@ -0,0 +1,83 @@
+/*
+ * Configuration for running (dunit) tests in parallel in Docker containers.
+ * The container used must hava JAVA_HOME set in it's environment and must
+ * have 'java' defined on the path. For example, the relevant Dockerfile
+ * content could be:
+ * 
+ *   ENV JAVA_HOME=/opt/jdk1.8.0_u101
+ *   ENV PATH=$PATH:$JAVA_HOME/bin
+ *
+ * In addition, the container must have docker installed.
+ *
+ * The plugin can be activated with the Gradle property 'parallelDunit'.
+ * Additional properties that can be set are:
+ *
+ *  dunitDockerImage   - The docker image used for running parallel dunits. The
+ *   default image is 'openjdk:8'. The image is required to
+ *   have 'JAVA_HOME' set as an environment variable.
+ *  dunitParallelForks - The number of parallel containers that will be
+ *   launched. The default is 8.
+ *  dunitDockerUser- The user used within the docker container to run 
tests.
+ *   The default is 'root'.
+ */
+
+def dockerConfig = {
+  maxParallelForks = dunitParallelForks.toInteger()
+
+  docker {
+// base image for creating docker containers that execute the tests
+image = 

[4/7] geode git commit: GEODE_3071: Add Apache license header

2017-06-19 Thread hiteshkhamesra
GEODE_3071: Add Apache license header


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/d4412a68
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/d4412a68
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/d4412a68

Branch: refs/heads/feature/GEODE-2804
Commit: d4412a68889de35f058ede6b030ba92ac6970e23
Parents: 1f78fc4
Author: Jens Deppe 
Authored: Fri Jun 16 08:05:32 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:30 2017 -0700

--
 gradle/docker.gradle | 17 +
 1 file changed, 17 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/d4412a68/gradle/docker.gradle
--
diff --git a/gradle/docker.gradle b/gradle/docker.gradle
index 5c2ef77..b67c073 100644
--- a/gradle/docker.gradle
+++ b/gradle/docker.gradle
@@ -1,4 +1,21 @@
 /*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/*
  * Configuration for running (dunit) tests in parallel in Docker containers.
  * The container used must hava JAVA_HOME set in it's environment and must
  * have 'java' defined on the path. For example, the relevant Dockerfile



[2/7] geode git commit: Update geode-book/README.md

2017-06-19 Thread hiteshkhamesra
Update geode-book/README.md


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/f808d3b6
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/f808d3b6
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/f808d3b6

Branch: refs/heads/feature/GEODE-2804
Commit: f808d3b6fe4bf217160f8569e5b2b4b4289fdd78
Parents: 15c32d9
Author: Dave Barnes 
Authored: Mon Jun 19 14:07:31 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:29 2017 -0700

--
 geode-book/README.md | 16 +---
 1 file changed, 13 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/f808d3b6/geode-book/README.md
--
diff --git a/geode-book/README.md b/geode-book/README.md
index f381b16..a542ce2 100644
--- a/geode-book/README.md
+++ b/geode-book/README.md
@@ -78,12 +78,22 @@ where `XY` is the product version of your documentation 
(e.g., `{geode-site}/web
 
 2. Navigate to the User Guide you have built in the Geode repository: 
`{geode-project-dir}/geode-book/final_app/public/docs/guide/XY`.
 
-3. Use `tar` to copy the directory in order to preserve links and other 
filesystem niceties. Create the tarfile in your Desktop for easy access on the 
retrieval side.
-  
-  To copy the directory, enter:
+3. Use `tar` to copy the directory in order to preserve links and other 
filesystem niceties.
+
+  a. Create the tarfile in your Desktop for easy access on the retrieval side.
 
 ```
 $ tar cvf ~/Desktop/new-guide-content.tar .
+```
+  b. Create the destination directory in the `geode-site` repo:
+
+```
+$ mkdir -p {geode-site}/website/content/docs/guide/XY
+```
+
+  c. Navigate to the target directory and un-tar the userguide archive:
+
+```
 $ cd {geode-site}/website/content/docs/guide/XY
 $ tar xvf ~/Desktop/new-guide-content.tar
 ```



[3/7] geode git commit: GEODE-3092: fix specifiedDefaultValue for cacheLoader and cacheWriter

2017-06-19 Thread hiteshkhamesra
GEODE-3092: fix specifiedDefaultValue for cacheLoader and cacheWriter


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/15c32d95
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/15c32d95
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/15c32d95

Branch: refs/heads/feature/GEODE-2804
Commit: 15c32d955ecf912c06dbc14f366d2856aede62e2
Parents: 601b338
Author: Jinmei Liao 
Authored: Mon Jun 19 09:08:35 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 16:39:29 2017 -0700

--
 .../CreateAlterDestroyRegionCommands.java   | 45 ++--
 .../internal/cli/GfshParserParsingTest.java | 19 +++--
 2 files changed, 38 insertions(+), 26 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/15c32d95/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
index 842802b..bf22854 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
@@ -14,7 +14,28 @@
  */
 package org.apache.geode.management.internal.cli.commands;
 
+import java.text.MessageFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.TreeSet;
+import java.util.concurrent.atomic.AtomicReference;
+import java.util.regex.Pattern;
+
+import javax.management.MBeanServer;
+import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
+
 import org.apache.commons.lang.StringUtils;
+import org.springframework.shell.core.annotation.CliCommand;
+import org.springframework.shell.core.annotation.CliOption;
+
 import org.apache.geode.LogWriter;
 import org.apache.geode.cache.DataPolicy;
 import org.apache.geode.cache.ExpirationAttributes;
@@ -58,26 +79,6 @@ import 
org.apache.geode.management.internal.configuration.domain.XmlEntity;
 import org.apache.geode.management.internal.security.ResourceOperation;
 import org.apache.geode.security.ResourcePermission.Operation;
 import org.apache.geode.security.ResourcePermission.Resource;
-import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
-import org.springframework.shell.core.annotation.CliCommand;
-import org.springframework.shell.core.annotation.CliOption;
-
-import java.text.MessageFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.TreeSet;
-import java.util.concurrent.atomic.AtomicReference;
-import java.util.regex.Pattern;
-import javax.management.MBeanServer;
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
 
 /**
  * @since GemFire 7.0
@@ -408,9 +409,9 @@ public class CreateAlterDestroyRegionCommands implements 
GfshCommand {
   help = CliStrings.ALTER_REGION__REGIONEXPIRATIONTTLACTION__HELP) 
String regionExpirationTTLAction,
   @CliOption(key = CliStrings.ALTER_REGION__CACHELISTENER, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__CACHELISTENER__HELP) String[] 
cacheListeners,
-  @CliOption(key = CliStrings.ALTER_REGION__CACHELOADER, 
specifiedDefaultValue = "null",
+  @CliOption(key = CliStrings.ALTER_REGION__CACHELOADER, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__CACHELOADER__HELP) String 
cacheLoader,
-  @CliOption(key = CliStrings.ALTER_REGION__CACHEWRITER, 
specifiedDefaultValue = "null",
+  @CliOption(key = CliStrings.ALTER_REGION__CACHEWRITER, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__CACHEWRITER__HELP) String 
cacheWriter,
   @CliOption(key = CliStrings.ALTER_REGION__ASYNCEVENTQUEUEID, 
specifiedDefaultValue = "",
   help = CliStrings.ALTER_REGION__ASYNCEVENTQUEUEID__HELP) String[] 
asyncEventQueueIds,

http://git-wip-us.apache.org/repos/asf/geode/blob/15c32d95/geode-core/src/test/java/org/apache/geode/management/internal/cli/GfshParserParsingTest.java
--

[11/29] geode git commit: GEODE-2818: add aliases to the undeploy command

2017-06-19 Thread hiteshkhamesra
GEODE-2818: add aliases to the undeploy command

* this closes #560


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/63102266
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/63102266
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/63102266

Branch: refs/heads/feature/GEODE-2804
Commit: 63102266b8f3ce805b6df6bc173a4c53b45c47fc
Parents: ae5bf34
Author: Jinmei Liao 
Authored: Wed Jun 7 16:10:56 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 13:47:56 2017 -0700

--
 .../internal/cli/commands/ConfigCommands.java   |  7 +--
 .../internal/cli/commands/DeployCommands.java   | 50 +++-
 .../internal/cli/functions/DeployFunction.java  |  3 --
 .../cli/functions/UndeployFunction.java |  9 ++--
 .../cli/GfshParserAutoCompletionTest.java   |  6 +--
 .../cli/commands/DeployCommandsDUnitTest.java   | 36 +-
 6 files changed, 74 insertions(+), 37 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/63102266/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ConfigCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ConfigCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ConfigCommands.java
index 19c72c3..a8afa7d 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ConfigCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ConfigCommands.java
@@ -81,9 +81,10 @@ public class ConfigCommands implements GfshCommand {
   @ResourceOperation(resource = Resource.CLUSTER, operation = Operation.READ)
   public Result describeConfig(
   @CliOption(key = CliStrings.MEMBER, optionContext = 
ConverterHint.ALL_MEMBER_IDNAME,
-  help = CliStrings.DESCRIBE_CONFIG__MEMBER__HELP, mandatory = true)
-
-  String memberNameOrId, @CliOption(key = 
CliStrings.DESCRIBE_CONFIG__HIDE__DEFAULTS, help = 
CliStrings.DESCRIBE_CONFIG__HIDE__DEFAULTS__HELP, unspecifiedDefaultValue = 
"true", specifiedDefaultValue = "true") boolean hideDefaults) {
+  help = CliStrings.DESCRIBE_CONFIG__MEMBER__HELP, mandatory = true) 
String memberNameOrId,
+  @CliOption(key = CliStrings.DESCRIBE_CONFIG__HIDE__DEFAULTS,
+  help = CliStrings.DESCRIBE_CONFIG__HIDE__DEFAULTS__HELP, 
unspecifiedDefaultValue = "true",
+  specifiedDefaultValue = "true") boolean hideDefaults) {
 
 Result result = null;
 try {

http://git-wip-us.apache.org/repos/asf/geode/blob/63102266/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DeployCommands.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DeployCommands.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DeployCommands.java
index 43a748e..9b79e1d 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DeployCommands.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/DeployCommands.java
@@ -15,6 +15,8 @@
 package org.apache.geode.management.internal.cli.commands;
 
 import static org.apache.commons.io.FileUtils.ONE_MB;
+import org.apache.commons.lang.ArrayUtils;
+import org.apache.commons.lang.StringUtils;
 
 import org.apache.geode.SystemFailure;
 import org.apache.geode.cache.execute.ResultCollector;
@@ -66,7 +68,7 @@ public class DeployCommands implements GfshCommand {
* Deploy one or more JAR files to members of a group or all members.
* 
* @param groups Group(s) to deploy the JAR to or null for all members
-   * @param jar JAR file to deploy
+   * @param jars JAR file to deploy
* @param dir Directory of JAR files to deploy
* @return The result of the attempt to deploy
*/
@@ -77,7 +79,8 @@ public class DeployCommands implements GfshCommand {
   public Result deploy(
   @CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS}, help = 
CliStrings.DEPLOY__GROUP__HELP,
   optionContext = ConverterHint.MEMBERGROUP) String[] groups,
-  @CliOption(key = {CliStrings.JAR}, help = CliStrings.DEPLOY__JAR__HELP) 
String jar,
+  @CliOption(key = {CliStrings.JAR, CliStrings.JARS},
+  help = CliStrings.DEPLOY__JAR__HELP) String[] jars,
   @CliOption(key = {CliStrings.DEPLOY__DIR}, help = 
CliStrings.DEPLOY__DIR__HELP) String dir) {
 try {
 
@@ -157,8 +160,8 @@ public class DeployCommands implements GfshCommand {
   @CliOption(key = {CliStrings.GROUP, CliStrings.GROUPS},
   help = 

[28/29] geode git commit: GEODE-2601: Updated based on feedback

2017-06-19 Thread hiteshkhamesra
GEODE-2601: Updated based on feedback

This closes #582


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/601b338f
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/601b338f
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/601b338f

Branch: refs/heads/feature/GEODE-2804
Commit: 601b338fd090775cbe5e4ecabfe61f24055b
Parents: 04de174
Author: YehEmily 
Authored: Fri Jun 16 09:06:56 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 13:47:59 2017 -0700

--
 .../geode/distributed/internal/InternalDistributedSystem.java  | 3 +--
 .../org/apache/geode/distributed/internal/InternalLocator.java | 6 ++
 2 files changed, 3 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/601b338f/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
index 4ed58af..1572355 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
@@ -2189,9 +2189,8 @@ public class InternalDistributedSystem extends 
DistributedSystem
* @param resource the actual resource object.
*/
   private void notifyResourceEventListeners(ResourceEvent event, Object 
resource) {
-for (Iterator iter = resourceListeners.iterator(); 
iter.hasNext();) {
+for (ResourceEventsListener listener : resourceListeners) {
   try {
-ResourceEventsListener listener = iter.next();
 listener.handleEvent(event, resource);
   } catch (CancelException e) {
 // ignore

http://git-wip-us.apache.org/repos/asf/geode/blob/601b338f/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index 3ff27ea..6eaaec2 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -469,15 +469,13 @@ public class InternalLocator extends Locator implements 
ConnectListener {
 // if security-log-file then create securityLogWriterAppender
 
LogWriterAppenders.getOrCreateAppender(LogWriterAppenders.Identifier.SECURITY, 
true, false,
 this.config, false);
-
   }
-// do not create a LogWriterAppender for security -- let it go through 
to logWriterAppender
+  // do not create a LogWriterAppender for security -- let it go through 
to logWriterAppender
 }
 
 // LOG: create LogWriters for GemFireTracer (or use whatever was passed in)
 if (logWriter == null) {
-  logWriter = LogWriterFactory.createLogWriterLogger(false, false, 
this.config,
-  false);
+  logWriter = LogWriterFactory.createLogWriterLogger(false, false, 
this.config, false);
   if (logger.isDebugEnabled()) {
 logger.debug("LogWriter for locator is created.");
   }



[09/29] geode git commit: GEODE-2626: fix FastLoggerJUnitTest use of Mockito 2.7.11

2017-06-19 Thread hiteshkhamesra
GEODE-2626: fix FastLoggerJUnitTest use of Mockito 2.7.11


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/4121261e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/4121261e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/4121261e

Branch: refs/heads/feature/GEODE-2804
Commit: 4121261ea835be31809e62dc87aa011a315f0ab2
Parents: 7dcd775
Author: Kirk Lund 
Authored: Tue Jun 13 11:00:07 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 13:47:56 2017 -0700

--
 .../apache/geode/internal/logging/log4j/FastLoggerJUnitTest.java  | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/4121261e/geode-core/src/test/java/org/apache/geode/internal/logging/log4j/FastLoggerJUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/logging/log4j/FastLoggerJUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/logging/log4j/FastLoggerJUnitTest.java
index e162087..891ac3c 100755
--- 
a/geode-core/src/test/java/org/apache/geode/internal/logging/log4j/FastLoggerJUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/logging/log4j/FastLoggerJUnitTest.java
@@ -16,7 +16,6 @@ package org.apache.geode.internal.logging.log4j;
 
 import static org.hamcrest.CoreMatchers.*;
 import static org.junit.Assert.*;
-import static org.mockito.Mockito.any;
 import static org.mockito.Mockito.*;
 
 import org.apache.logging.log4j.Level;
@@ -97,7 +96,7 @@ public class FastLoggerJUnitTest {
 
 assertThat(fastLogger.isDebugEnabled(), is(true));
 assertThat(fastLogger.isDebugEnabled(this.mockedMarker), is(true));
-verify(this.mockedLogger, times(1)).isEnabled(eq(Level.DEBUG), 
any(Marker.class),
+verify(this.mockedLogger, times(1)).isEnabled(eq(Level.DEBUG), 
isNull(Marker.class),
 isNull(String.class));
 verify(this.mockedLogger, times(1)).isEnabled(eq(Level.DEBUG), 
eq(this.mockedMarker),
 isNull(Object.class), isNull(Throwable.class));



[08/29] geode git commit: GEODE-2629: fix ConnectionJUnitTest use of Mockito 2.7.11

2017-06-19 Thread hiteshkhamesra
GEODE-2629: fix ConnectionJUnitTest use of Mockito 2.7.11


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/78dd36ee
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/78dd36ee
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/78dd36ee

Branch: refs/heads/feature/GEODE-2804
Commit: 78dd36ee00f83d11df1baf0ba56d411b589e9561
Parents: 4121261
Author: Kirk Lund 
Authored: Tue Jun 13 11:05:54 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 13:47:56 2017 -0700

--
 .../internal/cache/tier/sockets/command/PutTest.java  | 10 +++---
 .../apache/geode/internal/tcp/ConnectionJUnitTest.java|  2 +-
 2 files changed, 8 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/78dd36ee/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/PutTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/PutTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/PutTest.java
index 2578e00..2b22f13 100644
--- 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/PutTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/PutTest.java
@@ -20,6 +20,7 @@ import static org.mockito.Matchers.eq;
 import static org.mockito.Matchers.isA;
 import static org.mockito.Mockito.*;
 
+import org.apache.geode.internal.cache.EventIDHolder;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
@@ -104,7 +105,7 @@ public class PutTest {
 
 when(this.callbackArgsPart.getObject()).thenReturn(CALLBACK_ARG);
 
-when(this.eventPart.getSerializedForm()).thenReturn(this.EVENT);
+when(this.eventPart.getSerializedForm()).thenReturn(EVENT);
 
 when(this.valuePart.getSerializedForm()).thenReturn(VALUE);
 when(this.valuePart.isObject()).thenReturn(true);
@@ -127,8 +128,11 @@ public class PutTest {
 
when(this.serverConnection.getErrorResponseMessage()).thenReturn(this.errorResponseMessage);
 when(this.serverConnection.getClientVersion()).thenReturn(Version.CURRENT);
 
-when(this.localRegion.basicBridgePut(eq(KEY), eq(VALUE), eq(null), 
eq(true), eq(CALLBACK_ARG),
-any(ClientProxyMembershipID.class), eq(true), 
any(EntryEventImpl.class))).thenReturn(true);
+when(this.localRegion.basicBridgePut(eq(KEY), eq(VALUE), isNull(), 
eq(true), eq(CALLBACK_ARG),
+isA(ClientProxyMembershipID.class), eq(true), 
isA(EntryEventImpl.class))).thenReturn(true);
+
+// here's the actual call made by tests of basicBridgePut...
+// region.basicBridgePut(key, value, null, isObject, callbackArg, 
serverConnection.getProxyID(), true, new EventIDHolder(eventId));
   }
 
   @Test

http://git-wip-us.apache.org/repos/asf/geode/blob/78dd36ee/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionJUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionJUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionJUnitTest.java
index 193240d..aeeb60f 100755
--- 
a/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionJUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/tcp/ConnectionJUnitTest.java
@@ -80,6 +80,6 @@ public class ConnectionJUnitTest {
 Connection conn = new Connection(table, socket);
 conn.setSharedUnorderedForTest();
 conn.run();
-verify(membership).suspectMember(any(InternalDistributedMember.class), 
any(String.class));
+verify(membership).suspectMember(isNull(InternalDistributedMember.class), 
any(String.class));
   }
 }



[27/29] geode git commit: GEODE-2601: Fixing banner being logged twice during locator startup.

2017-06-19 Thread hiteshkhamesra
GEODE-2601: Fixing banner being logged twice during locator startup.


Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/04de174e
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/04de174e
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/04de174e

Branch: refs/heads/feature/GEODE-2804
Commit: 04de174e8d3b05b6cf6645b8ebf19867010b66ae
Parents: 6c330bf
Author: YehEmily 
Authored: Mon Jun 12 13:55:24 2017 -0700
Committer: Hitesh Khamesra 
Committed: Mon Jun 19 13:47:59 2017 -0700

--
 .../internal/InternalDistributedSystem.java | 24 
 .../distributed/internal/InternalLocator.java   | 41 ++--
 .../internal/logging/LogWriterFactory.java  | 20 --
 3 files changed, 53 insertions(+), 32 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/04de174e/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
index d77e8b9..4ed58af 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalDistributedSystem.java
@@ -18,6 +18,30 @@ package org.apache.geode.distributed.internal;
 import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
 import static org.apache.geode.distributed.ConfigurationProperties.MCAST_PORT;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.Reader;
+import java.lang.reflect.Array;
+import java.net.InetAddress;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Properties;
+import java.util.Set;
+import java.util.SortedSet;
+import java.util.StringTokenizer;
+import java.util.TreeSet;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicLong;
+import java.util.concurrent.atomic.AtomicReference;
+
+import org.apache.logging.log4j.Logger;
+
 import org.apache.geode.CancelCriterion;
 import org.apache.geode.CancelException;
 import org.apache.geode.ForcedDisconnectException;

http://git-wip-us.apache.org/repos/asf/geode/blob/04de174e/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index ae548c4..3ff27ea 100644
--- 
a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ 
b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -18,7 +18,24 @@ import static 
org.apache.geode.distributed.ConfigurationProperties.BIND_ADDRESS;
 import static 
org.apache.geode.distributed.ConfigurationProperties.CACHE_XML_FILE;
 import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
 
+import java.io.File;
+import java.io.IOException;
+import java.net.ConnectException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Properties;
+import java.util.concurrent.Callable;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+import java.util.concurrent.atomic.AtomicBoolean;
+
 import org.apache.commons.lang.StringUtils;
+import org.apache.logging.log4j.Logger;
+
 import org.apache.geode.CancelException;
 import org.apache.geode.cache.CacheFactory;
 import org.apache.geode.cache.GemFireCache;
@@ -65,22 +82,6 @@ import 
org.apache.geode.management.internal.configuration.handlers.SharedConfigu
 import 
org.apache.geode.management.internal.configuration.messages.ConfigurationRequest;
 import 
org.apache.geode.management.internal.configuration.messages.SharedConfigurationStatusRequest;
 import 
org.apache.geode.management.internal.configuration.messages.SharedConfigurationStatusResponse;
-import org.apache.logging.log4j.Logger;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.ConnectException;
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.Collection;
-import 

  1   2   3   >