geode git commit: GEM-1353

2017-04-07 Thread zhouxj
Repository: geode
Updated Branches:
  refs/heads/feature/GEM-1353 799548ee4 -> b9e8ac598


GEM-1353


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

Branch: refs/heads/feature/GEM-1353
Commit: b9e8ac59892aed7f2ddea62f54b07ddac688456e
Parents: 799548e
Author: zhouxh 
Authored: Fri Apr 7 18:43:43 2017 -0700
Committer: zhouxh 
Committed: Fri Apr 7 18:43:43 2017 -0700

--
 .../geode/internal/cache/BucketRegion.java  | 272 ---
 .../cache/DistributedCacheOperation.java|  46 ++--
 .../geode/internal/cache/DistributedRegion.java |  49 +++-
 .../internal/cache/LocalRegionDataView.java |  20 +-
 4 files changed, 259 insertions(+), 128 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/b9e8ac59/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRegion.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRegion.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRegion.java
index d92ddab..03aa3ef 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/BucketRegion.java
@@ -577,21 +577,33 @@ public class BucketRegion extends DistributedRegion 
implements Bucket {
   }
 
   protected void distributeUpdateOperation(EntryEventImpl event, long 
lastModified) {
-if (!event.isOriginRemote() && !event.isNetSearch() && 
getBucketAdvisor().isPrimary()) {
-  if (event.isBulkOpInProgress()) {
-// consolidate the UpdateOperation for each entry into a PutAllMessage
-// since we did not call basicPutPart3(), so we have to explicitly 
addEntry here
-event.getPutAllOperation().addEntry(event, this.getId());
-  } else {
-new UpdateOperation(event, lastModified).distribute();
-if (logger.isDebugEnabled()) {
-  logger.debug("sent update operation : for region  : {}: with event: 
{}", this.getName(),
-  event);
+long viewVersion = -1;
+UpdateOperation op = null;
+
+try {
+  if (!event.isOriginRemote() && !event.isNetSearch() && 
getBucketAdvisor().isPrimary()) {
+if (event.isBulkOpInProgress()) {
+  // consolidate the UpdateOperation for each entry into a 
PutAllMessage
+  // since we did not call basicPutPart3(), so we have to explicitly 
addEntry here
+  event.getPutAllOperation().addEntry(event, this.getId());
+} else {
+  // BR's put
+  op = new UpdateOperation(event, lastModified);
+  viewVersion = op.startOperation();
+  op.distribute();
+  if (logger.isDebugEnabled()) {
+logger.debug("sent update operation : for region  : {}: with 
event: {}", this.getName(),
+event);
+  }
 }
   }
-}
-if (!event.getOperation().isPutAll()) { // putAll will invoke listeners 
later
-  event.invokeCallbacks(this, true, true);
+  if (!event.getOperation().isPutAll()) { // putAll will invoke listeners 
later
+event.invokeCallbacks(this, true, true);
+  }
+} finally {
+  if (op != null) {
+op.endOperation(viewVersion);
+  }
 }
   }
 
@@ -607,40 +619,55 @@ public class BucketRegion extends DistributedRegion 
implements Bucket {
 // timestamp returned from basicPutPart2, but as a bucket we want to do
 // distribution *before* we do basicPutPart2.
 final long modifiedTime = event.getEventTime(lastModified);
-// Update the get stats if necessary.
-if (this.partitionedRegion.getDataStore().hasClientInterest(event)) {
-  updateStatsForGet(entry, true);
-}
-if (!event.isOriginRemote()) {
-  if (event.getVersionTag() == null || 
event.getVersionTag().isGatewayTag()) {
-boolean eventHasDelta = event.getDeltaBytes() != null;
-VersionTag v = entry.generateVersionTag(null, eventHasDelta, this, 
event);
-if (v != null) {
-  if (logger.isDebugEnabled()) {
-logger.debug("generated version tag {} in region {}", v, 
this.getName());
+
+long viewVersion = -1;
+UpdateOperation op = null;
+
+try {
+  // Update the get stats if necessary.
+  if (this.partitionedRegion.getDataStore().hasClientInterest(event)) {
+updateStatsForGet(entry, true);
+  }
+  if (!event.isOriginRemote()) {
+if (event.getVersionTag() == null || 
event.getVersionTag().isGatewayTag()) {
+  boolean eventHasDelta = event.getDeltaBytes() != null;
+  VersionTag 

[06/12] geode git commit: GEODE-2756: Do not put security-* properties in the env.

2017-04-07 Thread klund
GEODE-2756: Do not put security-* properties in the env.


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

Branch: refs/heads/feature/GEODE-2632
Commit: 19376d3069a7808481b2ed572ea49e3610dc9df1
Parents: 5430c91
Author: Jinmei Liao 
Authored: Thu Apr 6 09:50:57 2017 -0700
Committer: Jinmei Liao 
Committed: Thu Apr 6 14:16:27 2017 -0700

--
 .../support/LoginHandlerInterceptor.java| 27 +++
 .../LoginHandlerInterceptorJUnitTest.java   | 51 +---
 ...andlerInterceptorRequestHeaderJUnitTest.java | 28 ---
 3 files changed, 60 insertions(+), 46 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/19376d30/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptor.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptor.java
index 9e05174..56d9b9e 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptor.java
@@ -22,7 +22,6 @@ import org.apache.geode.internal.security.SecurityService;
 import org.apache.geode.management.internal.cli.multistep.CLIMultiStepHelper;
 import org.apache.geode.management.internal.security.ResourceConstants;
 import org.apache.geode.management.internal.web.util.UriUtils;
-import org.apache.geode.security.Authenticator;
 import org.apache.logging.log4j.Logger;
 import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
 
@@ -51,8 +50,6 @@ public class LoginHandlerInterceptor extends 
HandlerInterceptorAdapter {
 
   private Cache cache;
 
-  private Authenticator auth = null;
-
   private SecurityService securityService = 
IntegratedSecurityService.getSecurityService();
 
   private static final ThreadLocal> ENV =
@@ -93,22 +90,10 @@ public class LoginHandlerInterceptor extends 
HandlerInterceptorAdapter {
   }
 }
 
+ENV.set(requestParameterValues);
 
-
-for (Enumeration requestHeaders = request.getHeaderNames(); 
requestHeaders
-.hasMoreElements();) {
-
-  // since http request headers are case-insensitive and all our 
security-* properties
-  // are in lower case, it's safe to do toLowerCase here.
-  final String requestHeader = requestHeaders.nextElement().toLowerCase();
-
-  if (requestHeader.startsWith(SECURITY_VARIABLE_REQUEST_HEADER_PREFIX)) {
-requestParameterValues.put(requestHeader, 
request.getHeader(requestHeader));
-  }
-}
-
-String username = requestParameterValues.get(ResourceConstants.USER_NAME);
-String password = requestParameterValues.get(ResourceConstants.PASSWORD);
+String username = request.getHeader(ResourceConstants.USER_NAME);
+String password = request.getHeader(ResourceConstants.PASSWORD);
 Properties credentials = new Properties();
 if (username != null)
   credentials.put(ResourceConstants.USER_NAME, username);
@@ -116,11 +101,13 @@ public class LoginHandlerInterceptor extends 
HandlerInterceptorAdapter {
   credentials.put(ResourceConstants.PASSWORD, password);
 this.securityService.login(credentials);
 
-ENV.set(requestParameterValues);
-
 return true;
   }
 
+  public void setSecurityService(SecurityService securityService) {
+this.securityService = securityService;
+  }
+
 
   @Override
   public void afterCompletion(final HttpServletRequest request, final 
HttpServletResponse response,

http://git-wip-us.apache.org/repos/asf/geode/blob/19376d30/geode-web/src/test/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptorJUnitTest.java
--
diff --git 
a/geode-web/src/test/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptorJUnitTest.java
 
b/geode-web/src/test/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptorJUnitTest.java
index 63d410f..80e26fd 100644
--- 
a/geode-web/src/test/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptorJUnitTest.java
+++ 
b/geode-web/src/test/java/org/apache/geode/management/internal/web/controllers/support/LoginHandlerInterceptorJUnitTest.java
@@ -14,16 

[07/12] geode git commit: GEODE-2732 after auto-reconnect a server is restarted on the default port

2017-04-07 Thread klund
GEODE-2732 after auto-reconnect a server is restarted on the default port

Now that gfsh cache server parameters are no longer held in a ThreadLocal
we need to clear the static variables holding the parameters in order
to avoid having one test affect another.


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

Branch: refs/heads/feature/GEODE-2632
Commit: 799548ee4e4d883309f83bf401d6af892b3abfc1
Parents: 19376d3
Author: Bruce Schuchardt 
Authored: Thu Apr 6 15:46:31 2017 -0700
Committer: Bruce Schuchardt 
Committed: Thu Apr 6 15:48:21 2017 -0700

--
 .../geode/test/dunit/internal/JUnit4DistributedTestCase.java   | 2 ++
 1 file changed, 2 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/799548ee/geode-core/src/test/java/org/apache/geode/test/dunit/internal/JUnit4DistributedTestCase.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/test/dunit/internal/JUnit4DistributedTestCase.java
 
b/geode-core/src/test/java/org/apache/geode/test/dunit/internal/JUnit4DistributedTestCase.java
index 19949c2..5a679bb 100644
--- 
a/geode-core/src/test/java/org/apache/geode/test/dunit/internal/JUnit4DistributedTestCase.java
+++ 
b/geode-core/src/test/java/org/apache/geode/test/dunit/internal/JUnit4DistributedTestCase.java
@@ -34,6 +34,7 @@ import 
org.apache.geode.distributed.internal.DistributionConfig;
 import org.apache.geode.distributed.internal.DistributionMessageObserver;
 import org.apache.geode.distributed.internal.InternalDistributedSystem;
 import org.apache.geode.internal.admin.ClientStatsManager;
+import org.apache.geode.internal.cache.CacheServerLauncher;
 import org.apache.geode.internal.cache.DiskStoreObserver;
 import org.apache.geode.internal.cache.GemFireCacheImpl;
 import org.apache.geode.internal.cache.HARegion;
@@ -581,6 +582,7 @@ public abstract class JUnit4DistributedTestCase implements 
DistributedTestFixtur
 disconnectFromDS();
 // keep alphabetized to detect duplicate lines
 CacheCreation.clearThreadLocals();
+CacheServerLauncher.clearStatics();
 CacheServerTestUtil.clearCacheReference();
 ClientProxyMembershipID.system = null;
 ClientServerTestCase.AUTO_LOAD_BALANCE = false;



[05/12] geode git commit: GEODE-2716: export logs default behavior changed from filtering at log level INFO to ALL.

2017-04-07 Thread klund
GEODE-2716: export logs default behavior changed from filtering at log level 
INFO to ALL.

* Removed reliance on LogService.DEFAULT_LOG_LEVEL, added 
ExportLogCommand.DEFAULT_EXPORT_LOG_LEVEL.
* Added DUnit test that fails under previous behavior.
* this closes #439


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

Branch: refs/heads/feature/GEODE-2632
Commit: 5430c91f61fdb9ae4b0d11758d2b8e5a18f52163
Parents: 669d3ed
Author: Patrick Rhomberg 
Authored: Tue Mar 28 15:12:02 2017 -0700
Committer: Jinmei Liao 
Committed: Thu Apr 6 10:17:36 2017 -0700

--
 .../geode/internal/logging/LogService.java  |  1 -
 .../cli/commands/ExportLogsCommand.java |  4 +-
 .../cli/functions/ExportLogsFunction.java   |  2 +-
 .../internal/cli/i18n/CliStrings.java   |  4 +-
 .../cli/commands/ExportLogsDUnitTest.java   |  7 +++
 .../cli/functions/ExportLogsFunctionTest.java   | 45 
 .../cli/commands/golden-help-offline.properties | 11 ++---
 7 files changed, 64 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/5430c91f/geode-core/src/main/java/org/apache/geode/internal/logging/LogService.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/logging/LogService.java 
b/geode-core/src/main/java/org/apache/geode/internal/logging/LogService.java
index 1f8a564..5a229d3 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/logging/LogService.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/logging/LogService.java
@@ -46,7 +46,6 @@ public class LogService extends LogManager {
   public static final String BASE_LOGGER_NAME = "org.apache.geode";
   public static final String MAIN_LOGGER_NAME = "org.apache.geode";
   public static final String SECURITY_LOGGER_NAME = 
"org.apache.geode.security";
-  public static final String DEFAULT_LOG_LEVEL = "INFO";
 
   public static final String GEODE_VERBOSE_FILTER = "{GEODE_VERBOSE}";
   public static final String GEMFIRE_VERBOSE_FILTER = "{GEMFIRE_VERBOSE}";

http://git-wip-us.apache.org/repos/asf/geode/blob/5430c91f/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsCommand.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsCommand.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsCommand.java
index fe9cecd..1d5c412 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsCommand.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogsCommand.java
@@ -57,6 +57,8 @@ public class ExportLogsCommand implements CommandMarker {
   public static final String FORMAT = "/MM/dd/HH/mm/ss/SSS/z";
   public static final String ONLY_DATE_FORMAT = "/MM/dd";
 
+  public final static String DEFAULT_EXPORT_LOG_LEVEL = "ALL";
+
   private static final Pattern DISK_SPACE_LIMIT_PATTERN = 
Pattern.compile("(\\d+)([mgtMGT]?)");
 
   @CliCommand(value = CliStrings.EXPORT_LOGS, help = 
CliStrings.EXPORT_LOGS__HELP)
@@ -77,7 +79,7 @@ public class ExportLogsCommand implements CommandMarker {
   optionContext = ConverterHint.ALL_MEMBER_IDNAME,
   help = CliStrings.EXPORT_LOGS__MEMBER__HELP) String[] memberIds,
   @CliOption(key = CliStrings.EXPORT_LOGS__LOGLEVEL,
-  unspecifiedDefaultValue = LogService.DEFAULT_LOG_LEVEL,
+  unspecifiedDefaultValue = DEFAULT_EXPORT_LOG_LEVEL,
   optionContext = ConverterHint.LOG_LEVEL,
   help = CliStrings.EXPORT_LOGS__LOGLEVEL__HELP) String logLevel,
   @CliOption(key = CliStrings.EXPORT_LOGS__UPTO_LOGLEVEL, 
unspecifiedDefaultValue = "false",

http://git-wip-us.apache.org/repos/asf/geode/blob/5430c91f/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
index 13124c5..3ce1721 100644
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
+++ 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunction.java
@@ -168,7 +168,7 @@ public class ExportLogsFunction 

[04/12] geode git commit: GEODE-2732 after auto-reconnect a server is restarted on the default port

2017-04-07 Thread klund
GEODE-2732 after auto-reconnect a server is restarted on the default port

Changes to the new test based on feedback from Galen


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

Branch: refs/heads/feature/GEODE-2632
Commit: 669d3ed1f2ab7e05edfa15bb19b5782ebc05d753
Parents: 742c8f2
Author: Bruce Schuchardt 
Authored: Wed Apr 5 16:49:27 2017 -0700
Committer: Bruce Schuchardt 
Committed: Wed Apr 5 16:49:27 2017 -0700

--
 .../cache30/ReconnectWithCacheXMLDUnitTest.java  | 19 +++
 1 file changed, 19 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/669d3ed1/geode-core/src/test/java/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.java
index 4f2fac1..2167a06 100755
--- 
a/geode-core/src/test/java/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/cache30/ReconnectWithCacheXMLDUnitTest.java
@@ -26,6 +26,8 @@ import 
org.apache.geode.distributed.internal.membership.MembershipTestHook;
 import 
org.apache.geode.distributed.internal.membership.gms.MembershipManagerHelper;
 import org.apache.geode.internal.AvailablePortHelper;
 import org.apache.geode.internal.cache.CacheServerLauncher;
+import org.apache.geode.test.dunit.Wait;
+import org.apache.geode.test.dunit.WaitCriterion;
 import org.apache.geode.test.dunit.cache.internal.JUnit4CacheTestCase;
 import org.apache.geode.test.junit.categories.ClientServerTest;
 import org.apache.geode.test.junit.categories.DistributedTest;
@@ -38,6 +40,11 @@ import java.util.Properties;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.atomic.AtomicBoolean;
 
+/**
+ * This test exercises auto-reconnect functionality when there is a 
cache-server that was started by
+ * gfsh but was configured both by gfsh and a cache.xml file. The JIRA ticket 
for this is
+ * GEODE-2732.
+ */
 @Category({DistributedTest.class, MembershipTest.class, 
ClientServerTest.class})
 public class ReconnectWithCacheXMLDUnitTest extends JUnit4CacheTestCase {
 
@@ -96,6 +103,18 @@ public class ReconnectWithCacheXMLDUnitTest extends 
JUnit4CacheTestCase {
 
MembershipManagerHelper.crashDistributedSystem(cache.getDistributedSystem());
 assertTrue(membershipFailed.get());
 
+WaitCriterion wc = new WaitCriterion() {
+  @Override
+  public boolean done() {
+return cache.getReconnectedCache() != null;
+  }
+
+  @Override
+  public String description() {
+return "waiting for cache to reconnect";
+  }
+};
+Wait.waitForCriterion(wc, 6, 5000, true);
 await().atMost(60, TimeUnit.SECONDS).until(() -> 
cache.getReconnectedCache() != null);
 
 Cache newCache = cache.getReconnectedCache();



[01/12] geode git commit: GEODE-2684 Connection & ConnectionTable cleanup [Forced Update!]

2017-04-07 Thread klund
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2632 c43cc7aab -> 7a83cccb1 (forced update)


GEODE-2684 Connection & ConnectionTable cleanup

removed dead code and indirect access of TcpConduit through the
connection table.


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

Branch: refs/heads/feature/GEODE-2632
Commit: 6b2b7b2f7f3f63b8ae638e9afffa5edc0f763783
Parents: 391502a
Author: Bruce Schuchardt 
Authored: Wed Apr 5 15:13:01 2017 -0700
Committer: Bruce Schuchardt 
Committed: Wed Apr 5 15:31:33 2017 -0700

--
 .../apache/geode/internal/tcp/Connection.java   | 188 ++-
 .../geode/internal/tcp/ConnectionTable.java |  68 ++-
 .../geode/internal/tcp/DirectReplySender.java   |   2 +-
 .../apache/geode/internal/tcp/MsgReader.java|   2 +-
 .../apache/geode/internal/tcp/NIOMsgReader.java |   2 +-
 5 files changed, 82 insertions(+), 180 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/6b2b7b2f/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 a0af245..c57a0ba 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
@@ -72,8 +72,6 @@ public class Connection implements Runnable {
   public final static int CHUNKED_MSG_TYPE = 0x4d; // a chunk of one logical 
msg
   public final static int END_CHUNKED_MSG_TYPE = 0x4e; // last in a series of 
chunks
   public final static int DIRECT_ACK_BIT = 0x20;
-  // We no longer support early ack
-  // public final static int EARLY_ACK_BIT = 0x10;
 
   public static final int MSG_HEADER_SIZE_OFFSET = 0;
   public static final int MSG_HEADER_TYPE_OFFSET = 4;
@@ -95,7 +93,9 @@ public class Connection implements Runnable {
   "member unexpectedly shut down shared, unordered connection";
 
   /** the table holding this connection */
-  final ConnectionTable owner;
+  private final ConnectionTable owner;
+
+  private final TCPConduit conduit;
 
   /**
* Set to false once run() is terminating. Using this instead of 
Thread.isAlive as the reader
@@ -113,15 +113,6 @@ public class Connection implements Runnable {
   /** The idle timeout timer task for this connection */
   private SystemTimerTask idleTask;
 
-  /**
-   * Returns the depth of unshared reader threads from this thread to the 
original
-   * non-reader-thread. E.g., ServerConnection -> reader(domino=1) -> 
reader(domino=2) ->
-   * reader(domino=3)
-   */
-  public static int getDominoCount() {
-return dominoCount.get().intValue();
-  }
-
   private final static ThreadLocal isReaderThread = new ThreadLocal();
 
   public final static void makeReaderThread() {
@@ -129,7 +120,7 @@ public class Connection implements Runnable {
 makeReaderThread(true);
   }
 
-  private final static void makeReaderThread(boolean v) {
+  private static void makeReaderThread(boolean v) {
 isReaderThread.set(v);
   }
 
@@ -150,7 +141,7 @@ public class Connection implements Runnable {
 if (connectTimeoutStr != null) {
   P2P_CONNECT_TIMEOUT = Integer.parseInt(connectTimeoutStr);
 } else {
-  P2P_CONNECT_TIMEOUT = 6 * 
this.owner.owner.getDM().getConfig().getMemberTimeout();
+  P2P_CONNECT_TIMEOUT = 6 * 
this.conduit.getDM().getConfig().getMemberTimeout();
 }
 IS_P2P_CONNECT_TIMEOUT_INITIALIZED = true;
 return P2P_CONNECT_TIMEOUT;
@@ -367,20 +358,18 @@ public class Connection implements Runnable {
   /** the buffer used for NIO message receipt */
   ByteBuffer nioInputBuffer;
 
-  /** the position of the next message's content */
-  // int nioMessageStart;
-
   /** the length of the next message to be dispatched */
   int nioMessageLength;
-  // byte nioMessageVersion;
 
   /** the type of message being received */
   byte nioMessageType;
 
   /** used to lock access to destreamer data */
   private final Object destreamerLock = new Object();
+
   /** caches a msg destreamer that is currently not being used */
   MsgDestreamer idleMsgDestreamer;
+
   /**
* used to map a msgId to a MsgDestreamer which are used for destreaming 
chunked messages using
* nio
@@ -409,8 +398,6 @@ public class Connection implements Runnable {
   private int sendBufferSize = -1;
   private int recvBufferSize = -1;
 
-  private ReplySender replySender;
-
   private void setSendBufferSize(Socket sock) {
 

[11/12] geode git commit: WIP refactoring

2017-04-07 Thread klund
http://git-wip-us.apache.org/repos/asf/geode/blob/7a83cccb/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
index d7b923c..ab97b64 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
@@ -43,7 +43,6 @@ import org.apache.geode.CancelException;
 import org.apache.geode.DataSerializer;
 import org.apache.geode.StatisticsFactory;
 import org.apache.geode.cache.Cache;
-import org.apache.geode.cache.CacheClosedException;
 import org.apache.geode.cache.CacheException;
 import org.apache.geode.cache.ClientSession;
 import org.apache.geode.cache.DynamicRegionFactory;
@@ -111,7 +110,6 @@ import org.apache.shiro.util.ThreadState;
  * It queues messages to be sent from the server to the client. It then reads 
those messages from
  * the queue and sends them to the client.
  *
- *
  * @since GemFire 4.2
  */
 @SuppressWarnings("synthetic-access")
@@ -119,155 +117,127 @@ public class CacheClientProxy implements ClientSession {
   private static final Logger logger = LogService.getLogger();
 
   /**
-   * The socket between the server and the client
-   */
-  protected Socket _socket;
-
-  private final AtomicBoolean _socketClosed = new AtomicBoolean();
-
-  /**
-   * A communication buffer used by each message we send to the client
+   * Notify the region when a client interest registration occurs. This tells 
the region to update
+   * access time when an update is to be pushed to a client. It is enabled 
only for
+   * PartitionedRegions currently.
*/
-  protected ByteBuffer _commBuffer;
+  private static final boolean NOTIFY_REGION_ON_INTEREST =
+  Boolean.getBoolean(DistributionConfig.GEMFIRE_PREFIX + 
"updateAccessTimeOnClientInterest");
 
   /**
-   * The remote host's IP address string (cached for convenience)
+   * The number of times to peek on shutdown before giving up and shutting down
*/
-  protected String _remoteHostAddress;
+  private static final int MAXIMUM_SHUTDOWN_PEEKS =
+  Integer.getInteger(DistributionConfig.GEMFIRE_PREFIX + 
"MAXIMUM_SHUTDOWN_PEEKS", 50);
 
   /**
-   * Concurrency: protected by synchronization of {@link 
#isMarkedForRemovalLock}
+   * Default value for slow starting time of dispatcher
*/
-  protected volatile boolean isMarkedForRemoval = false;
+  private static final long DEFAULT_SLOW_STARTING_TIME = 5000;
 
   /**
-   * @see #isMarkedForRemoval
+   * Key in the system property from which the slow starting time value will 
be retrieved
*/
-  protected final Object isMarkedForRemovalLock = new Object();
+  private static final String KEY_SLOW_START_TIME_FOR_TESTING = 
"slowStartTimeForTesting";
 
   /**
-   * The proxy id of the client represented by this proxy
+   * TODO: delete this and rewrite the tests that use this NOTE: this is NOT 
thread safe
*/
-  protected ClientProxyMembershipID proxyID;
+  private static TestHook testHook;
 
   /**
-   * The GemFire cache
+   * TODO: delete this and rewrite the test that uses this A debug flag used 
for testing Backward
+   * compatibility
*/
-  protected final GemFireCacheImpl _cache;
+  private static boolean afterMessageCreationForTesting = false;
 
   /**
-   * The list of keys that the client represented by this proxy is interested 
in (stored by region)
+   * TODO: delete this and rewrite the test that uses this for testing 
purposes, delays the start of
+   * the dispatcher thread
*/
-  protected final ClientInterestList[] cils = new ClientInterestList[2];
+  private static boolean isSlowStartForTesting = false;
 
-  /**
-   * A thread that dispatches messages to the client
-   */
-  protected volatile MessageDispatcher _messageDispatcher;
+  private final AtomicBoolean socketClosed = new AtomicBoolean();
 
   /**
-   * The statistics for this proxy
+   * @see #isMarkedForRemoval
*/
-  protected final CacheClientProxyStats _statistics;
-
-  protected final AtomicReference _durableExpirationTask = new 
AtomicReference();
-
-  protected SystemTimer durableTimer;
+  private final Object isMarkedForRemovalLock = new Object();
 
   /**
-   * Whether this dispatcher is paused
+   * The GemFire cache
*/
-  protected volatile boolean _isPaused = true;
+  private final GemFireCacheImpl cache;
 
   /**
-   * True if we are connected to a client.
-   */
-  private volatile boolean connected = false;
-  // /**
-  // * A string representing interest in all keys
-  // */
-  // protected static final String ALL_KEYS = "ALL_KEYS";
-  //
-  /**
-   * True if a marker message is still in the ha queue.
+   * The list of keys that the client 

[03/12] geode git commit: GEODE-2684 Connection & ConnectionTable cleanup

2017-04-07 Thread klund
GEODE-2684 Connection & ConnectionTable cleanup

removed another old comment


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

Branch: refs/heads/feature/GEODE-2632
Commit: 742c8f27ea45ec55445f1047fda3c54b86f89f94
Parents: 6b2b7b2
Author: Bruce Schuchardt 
Authored: Wed Apr 5 16:49:07 2017 -0700
Committer: Bruce Schuchardt 
Committed: Wed Apr 5 16:49:07 2017 -0700

--
 .../src/main/java/org/apache/geode/internal/tcp/Connection.java  | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/742c8f27/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 c57a0ba..70868e0 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
@@ -3939,9 +3939,9 @@ public class Connection implements Runnable {
   nioInputBuffer = Buffers.acquireReceiveBuffer(allocSize, stats);
 
   if (oldBuffer != null) {
-int oldByteCount = oldBuffer.remaining(); // needed to workaround 
JRockit 1.4.2.04 bug
+int oldByteCount = oldBuffer.remaining();
 nioInputBuffer.put(oldBuffer);
-nioInputBuffer.position(oldByteCount); // workaround JRockit 1.4.2.04 
bug
+nioInputBuffer.position(oldByteCount);
 Buffers.releaseReceiveBuffer(oldBuffer, stats);
   }
 } else {



[12/12] geode git commit: WIP refactoring

2017-04-07 Thread klund
WIP refactoring


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

Branch: refs/heads/feature/GEODE-2632
Commit: 7a83cccb158f4464f7d439830769148dd9e4fc72
Parents: 0f4f294
Author: Kirk Lund 
Authored: Wed Apr 5 10:24:23 2017 -0700
Committer: Kirk Lund 
Committed: Fri Apr 7 12:49:42 2017 -0700

--
 .../sockets/command/ClientCachePutBench.java|  16 +-
 .../cache/tier/sockets/command/Put65Bench.java  |  94 +--
 .../geode/internal/cache/CacheServerImpl.java   |   2 +-
 .../geode/internal/cache/tier/Acceptor.java |   2 +-
 .../cache/tier/sockets/AcceptorImpl.java|  42 +-
 .../cache/tier/sockets/CacheClientNotifier.java | 583 +++-
 .../cache/tier/sockets/CacheClientProxy.java| 698 ---
 .../cache/tier/sockets/ClientHealthMonitor.java |  15 +-
 .../tier/sockets/ClientUpdateMessageImpl.java   |   4 +-
 .../internal/cache/tier/sockets/HandShake.java  |  12 +-
 .../geode/internal/logging/LogService.java  |  10 +
 .../tier/sockets/AcceptorImplJUnitTest.java |  22 +-
 .../cache/tier/sockets/AcceptorImplTest.java|  96 +++
 .../tier/sockets/ClientConflationDUnitTest.java |   2 +-
 .../ClientServerForceInvalidateDUnitTest.java   |   4 +-
 .../tier/sockets/ClientServerMiscDUnitTest.java |   9 +-
 .../cache/tier/sockets/ConflationDUnitTest.java |   4 +-
 .../cache/tier/sockets/HAInterestTestCase.java  |  26 +-
 .../sockets/HAStartupAndFailoverDUnitTest.java  |   4 +-
 .../sockets/InterestListRecoveryDUnitTest.java  |   4 +-
 .../tier/sockets/RedundancyLevelTestBase.java   |  17 +-
 .../tier/sockets/command/Put65BenchTest.java| 116 +++
 .../sockets/command/Put65RealBenchTest.java | 141 
 .../sockets/DurableClientSimpleDUnitTest.java   |  14 +-
 .../tier/sockets/DurableClientTestCase.java |   6 +-
 .../cache/wan/Simple2CacheServerDUnitTest.java  |   6 +-
 26 files changed, 945 insertions(+), 1004 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/7a83cccb/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
--
diff --git 
a/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
 
b/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
index a1cbd81..df51b78 100644
--- 
a/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
+++ 
b/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
@@ -14,9 +14,12 @@
  */
 package org.apache.geode.internal.cache.tier.sockets.command;
 
+import static java.util.concurrent.TimeUnit.MINUTES;
 import static org.apache.commons.io.FileUtils.*;
+import static org.apache.geode.distributed.AbstractLauncher.Status.ONLINE;
 import static org.apache.geode.test.dunit.NetworkUtils.getIPLiteral;
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.awaitility.Awaitility.*;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang.StringUtils;
@@ -24,6 +27,7 @@ import org.apache.geode.cache.Region;
 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.distributed.AbstractLauncher.Status;
 import org.apache.geode.distributed.ConfigurationProperties;
 import org.apache.geode.distributed.ServerLauncher;
 import org.apache.geode.distributed.internal.DistributionConfig;
@@ -121,16 +125,22 @@ public class ClientCachePutBench {
   command.add(ServerLauncher.Command.START.getName());
   command.add("server1");
   command.add("--server-port=" + this.serverPort);
-  // command.add("--redirect-output");
+  // put65Command.add("--redirect-output");
 
   this.process = new 
ProcessBuilder(command).directory(this.temporaryFolder.getRoot()).start();
 
-  boolean forever = true;
-  while (forever) {
+  boolean sleep = false;
+  while (sleep) {
 assertThat(this.process.isAlive()).isTrue();
 Thread.sleep(1);
   }
 
+  ServerLauncher serverLauncher = new ServerLauncher.Builder()
+  
.setWorkingDirectory(this.temporaryFolder.getRoot().getAbsolutePath()).build();
+
+  await().atMost(2, MINUTES)
+  .until(() -> 
assertThat(serverLauncher.status().getStatus()).isEqualTo(ONLINE));
+
   this.clientCache =
   new ClientCacheFactory().addPoolServer(getIPLiteral(), 

geode git commit: Minor fixes

2017-04-07 Thread klund
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2632 eb89fe281 -> c43cc7aab


Minor fixes


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

Branch: refs/heads/feature/GEODE-2632
Commit: c43cc7aab69938ac75bf1e76e5ca208a498a462e
Parents: eb89fe2
Author: Kirk Lund 
Authored: Fri Apr 7 12:35:48 2017 -0700
Committer: Kirk Lund 
Committed: Fri Apr 7 12:35:48 2017 -0700

--
 .../geode/internal/cache/tier/sockets/CacheClientProxy.java | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/c43cc7aa/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
index 4a9b8b0..6341fe6 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheClientProxy.java
@@ -110,7 +110,6 @@ import org.apache.shiro.util.ThreadState;
  * It queues messages to be sent from the server to the client. It then reads 
those messages from
  * the queue and sends them to the client.
  *
- *
  * @since GemFire 4.2
  */
 @SuppressWarnings("synthetic-access")
@@ -351,7 +350,7 @@ public class CacheClientProxy implements ClientSession {
   final StatisticsFactory statsFactory, final SecurityService 
securityService,
   final Socket socket, final ClientProxyMembershipID proxyID, final 
boolean isPrimary,
   final byte clientConflation, final Version clientVersion, final long 
acceptorId,
-  final boolean notifyBySubscription) throws CacheException {
+  final boolean notifyBySubscription) {
 initializeTransientFields(socket, proxyID, isPrimary, clientConflation, 
clientVersion);
 this.cacheClientNotifier = ccn;
 this.cache = cache;
@@ -1939,7 +1938,7 @@ public class CacheClientProxy implements ClientSession {
 return testHook;
   }
 
-  static void setSlowStartForTesting() {
+  public static void setSlowStartForTesting() {
 isSlowStartForTesting = true;
   }
 



[11/19] geode git commit: GEM-1351: Move a test to the open side and fix the other tests - spotless

2017-04-07 Thread klund
GEM-1351: Move a test to the open side and fix the other tests - spotless

* move ImportClusterConfigDistributedTest to open side
* remove @Ignore from other two tests.
* rework GfshShellConnectionRule to not create gfsh shell at class 
initialization time.


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

Branch: refs/heads/feature/GEODE-2632
Commit: edd018b971d93565da502a8523df22a8f0b669ca
Parents: 02ccc5c
Author: Jinmei Liao 
Authored: Wed Apr 5 07:51:31 2017 -0700
Committer: Jinmei Liao 
Committed: Wed Apr 5 07:51:31 2017 -0700

--
 .../org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/edd018b9/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
 
b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
index 1c72bba..381b751 100644
--- 
a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
+++ 
b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
@@ -121,7 +121,7 @@ public class GfshShellConnectionRule extends 
DescribedExternalResource {
 
   public void connect(int port, PortType type, String... options) throws 
Exception {
 CliUtil.isGfshVM = true;
-if(gfsh == null){
+if (gfsh == null) {
   this.gfsh = new HeadlessGfsh(getClass().getName(), 30,
   temporaryFolder.newFolder("gfsh_files").getAbsolutePath());
 }



[18/19] geode git commit: WIP refactoring

2017-04-07 Thread klund
WIP refactoring


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

Branch: refs/heads/feature/GEODE-2632
Commit: a071d0c060e4f7d58fa85d612f0cdcdbb6002e8d
Parents: 0c16858
Author: Kirk Lund 
Authored: Wed Apr 5 10:24:23 2017 -0700
Committer: Kirk Lund 
Committed: Wed Apr 5 12:49:42 2017 -0700

--
 .../sockets/command/ClientCachePutBench.java|  16 +-
 .../cache/tier/sockets/command/Put65Bench.java  |  94 +--
 .../geode/internal/cache/CacheServerImpl.java   |   2 +-
 .../geode/internal/cache/tier/Acceptor.java |   2 +-
 .../cache/tier/sockets/AcceptorImpl.java|  50 +-
 .../cache/tier/sockets/CacheClientNotifier.java | 589 
 .../cache/tier/sockets/CacheClientProxy.java| 696 +--
 .../cache/tier/sockets/ClientHealthMonitor.java |  15 +-
 .../tier/sockets/ClientUpdateMessageImpl.java   |   4 +-
 .../internal/cache/tier/sockets/HandShake.java  |  10 +-
 .../geode/internal/logging/LogService.java  |  10 +
 .../tier/sockets/AcceptorImplJUnitTest.java |  18 +-
 .../cache/tier/sockets/AcceptorImplTest.java| 112 +++
 .../tier/sockets/ClientConflationDUnitTest.java |   2 +-
 .../ClientServerForceInvalidateDUnitTest.java   |   4 +-
 .../tier/sockets/ClientServerMiscDUnitTest.java |   8 +-
 .../cache/tier/sockets/ConflationDUnitTest.java |   4 +-
 .../cache/tier/sockets/HAInterestTestCase.java  |  12 +-
 .../sockets/HAStartupAndFailoverDUnitTest.java  |   4 +-
 .../sockets/InterestListRecoveryDUnitTest.java  |   2 +-
 .../tier/sockets/RedundancyLevelTestBase.java   |  10 +-
 .../tier/sockets/command/Put65BenchTest.java| 116 
 .../sockets/command/Put65RealBenchTest.java | 145 
 .../sockets/DurableClientSimpleDUnitTest.java   |  14 +-
 .../tier/sockets/DurableClientTestCase.java |   6 +-
 .../cache/wan/Simple2CacheServerDUnitTest.java  |   6 +-
 26 files changed, 959 insertions(+), 992 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/a071d0c0/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
--
diff --git 
a/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
 
b/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
index a1cbd81..df51b78 100644
--- 
a/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
+++ 
b/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
@@ -14,9 +14,12 @@
  */
 package org.apache.geode.internal.cache.tier.sockets.command;
 
+import static java.util.concurrent.TimeUnit.MINUTES;
 import static org.apache.commons.io.FileUtils.*;
+import static org.apache.geode.distributed.AbstractLauncher.Status.ONLINE;
 import static org.apache.geode.test.dunit.NetworkUtils.getIPLiteral;
 import static org.assertj.core.api.Assertions.assertThat;
+import static org.awaitility.Awaitility.*;
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang.StringUtils;
@@ -24,6 +27,7 @@ import org.apache.geode.cache.Region;
 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.distributed.AbstractLauncher.Status;
 import org.apache.geode.distributed.ConfigurationProperties;
 import org.apache.geode.distributed.ServerLauncher;
 import org.apache.geode.distributed.internal.DistributionConfig;
@@ -121,16 +125,22 @@ public class ClientCachePutBench {
   command.add(ServerLauncher.Command.START.getName());
   command.add("server1");
   command.add("--server-port=" + this.serverPort);
-  // command.add("--redirect-output");
+  // put65Command.add("--redirect-output");
 
   this.process = new 
ProcessBuilder(command).directory(this.temporaryFolder.getRoot()).start();
 
-  boolean forever = true;
-  while (forever) {
+  boolean sleep = false;
+  while (sleep) {
 assertThat(this.process.isAlive()).isTrue();
 Thread.sleep(1);
   }
 
+  ServerLauncher serverLauncher = new ServerLauncher.Builder()
+  
.setWorkingDirectory(this.temporaryFolder.getRoot().getAbsolutePath()).build();
+
+  await().atMost(2, MINUTES)
+  .until(() -> 
assertThat(serverLauncher.status().getStatus()).isEqualTo(ONLINE));
+
   this.clientCache =
   new ClientCacheFactory().addPoolServer(getIPLiteral(), 

[06/19] geode git commit: GEODE-2420: Add classes to estimated the size of exported logs

2017-04-07 Thread klund
GEODE-2420: Add classes to estimated the size of exported logs

- New Function class added with tests
- Code to invoke new function added, but disabled, in ExportLogsCommand
- New option added, but disabled, for specifying size limit for exported
  logs
- Refactoring: extracted the interceptor from ExportLogsCommand
- Refactoring: renamed ExportLogCommand to ExportLogsCommand
- New Serializable class to return the log size estimate to the command
- Tests for the log sizing related classes


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

Branch: refs/heads/feature/GEODE-2632
Commit: 0c15c6e01e7095f61e0e2df9866534f1cf6489cc
Parents: 4a09e88
Author: Ken Howe 
Authored: Wed Mar 29 11:10:20 2017 -0700
Committer: Ken Howe 
Committed: Tue Apr 4 13:51:07 2017 -0700

--
 .../internal/cli/commands/ExportLogCommand.java |  236 
 .../cli/commands/ExportLogsCommand.java |  278 +
 .../cli/commands/ExportLogsInterceptor.java |  109 ++
 .../cli/functions/ExportLogsFunction.java   |7 +-
 .../cli/functions/ExportedLogsSizeInfo.java |  107 ++
 .../cli/functions/SizeExportLogsFunction.java   |   87 ++
 .../internal/cli/i18n/CliStrings.java   |6 +
 .../management/internal/cli/util/LogSizer.java  |  116 ++
 .../cli/commands/ExportLogsCommandTest.java |  129 +++
 .../cli/commands/ExportLogsDUnitTest.java   |4 +-
 .../commands/ExportLogsFileSizeLimitTest.java   |   88 ++
 .../ExportLogsInterceptorJUnitTest.java |4 +-
 .../cli/commands/ExportLogsStatsDUnitTest.java  |2 +-
 .../cli/commands/ExportLogsTestSuite.java   |   27 +
 .../cli/commands/LogLevelInterceptorTest.java   |2 +-
 .../cli/functions/ExportedLogsSizeInfoTest.java |  145 +++
 .../SizeExportLogsFunctionCacheTest.java|  183 +++
 .../SizeExportLogsFunctionFileTest.java |  183 +++
 .../cli/functions/SizeExportLogsTestSuite.java  |   29 +
 .../internal/cli/util/LogSizerTest.java |   99 ++
 .../dunit/rules/GfshShellConnectionRule.java|4 +-
 .../sanctionedDataSerializables.txt | 1066 +-
 .../codeAnalysis/sanctionedSerializables.txt|1 +
 23 files changed, 2134 insertions(+), 778 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/0c15c6e0/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogCommand.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogCommand.java
 
b/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogCommand.java
deleted file mode 100644
index 3f147c1..000
--- 
a/geode-core/src/main/java/org/apache/geode/management/internal/cli/commands/ExportLogCommand.java
+++ /dev/null
@@ -1,236 +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.management.internal.cli.commands;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang.StringUtils;
-import org.apache.geode.cache.Region;
-import org.apache.geode.distributed.DistributedMember;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
-import org.apache.geode.internal.logging.LogService;
-import org.apache.geode.management.cli.CliMetaData;
-import org.apache.geode.management.cli.ConverterHint;
-import org.apache.geode.management.cli.Result;
-import org.apache.geode.management.internal.cli.AbstractCliAroundInterceptor;
-import org.apache.geode.management.internal.cli.CliUtil;
-import org.apache.geode.management.internal.cli.GfshParseResult;
-import org.apache.geode.management.internal.cli.functions.ExportLogsFunction;
-import org.apache.geode.management.internal.cli.i18n.CliStrings;
-import org.apache.geode.management.internal.cli.result.ResultBuilder;
-import 

[16/19] geode git commit: WIP refactoring

2017-04-07 Thread klund
http://git-wip-us.apache.org/repos/asf/geode/blob/a071d0c0/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/Put65RealBenchTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/Put65RealBenchTest.java
 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/Put65RealBenchTest.java
new file mode 100644
index 000..3cc10e7
--- /dev/null
+++ 
b/geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/command/Put65RealBenchTest.java
@@ -0,0 +1,145 @@
+/*
+ * 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.command;
+
+import static org.apache.geode.distributed.ConfigurationProperties.*;
+import static org.apache.geode.distributed.ServerLauncherUtils.*;
+import static org.apache.geode.internal.AvailablePort.*;
+import static org.apache.geode.internal.cache.TXManagerImpl.NOTX;
+import static org.apache.geode.internal.cache.tier.sockets.CacheServerUtils.*;
+import static org.mockito.Mockito.*;
+
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Operation;
+import org.apache.geode.cache.server.CacheServer;
+import org.apache.geode.distributed.ServerLauncher;
+import org.apache.geode.distributed.ServerLauncher.Builder;
+import org.apache.geode.internal.AvailablePort;
+import org.apache.geode.internal.Version;
+import org.apache.geode.internal.cache.GemFireCacheImpl;
+import org.apache.geode.internal.cache.TXManagerImpl;
+import org.apache.geode.internal.cache.tier.Command;
+import org.apache.geode.internal.cache.tier.sockets.AcceptorImpl;
+import org.apache.geode.internal.cache.tier.sockets.CacheServerStats;
+import org.apache.geode.internal.cache.tier.sockets.ClientProxyMembershipID;
+import org.apache.geode.internal.cache.tier.sockets.Message;
+import org.apache.geode.internal.cache.tier.sockets.Part;
+import org.apache.geode.internal.cache.tier.sockets.ServerConnection;
+import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.rules.TemporaryFolder;
+
+import java.io.File;
+
+@Category(IntegrationTest.class)
+public class Put65RealBenchTest {
+
+  private ServerConnection realServerConnection;
+
+  public Command put65Command;
+  public ServerConnection mockServerConnection;
+  public Message mockMessage;
+
+  private File workingDir;
+  private int serverPort;
+
+  @Rule
+  public TemporaryFolder temporaryFolder = new TemporaryFolder();
+
+  @Before
+  public void setup() throws Exception {
+this.workingDir = temporaryFolder.getRoot();
+
+this.serverPort = getRandomAvailablePort(SOCKET);
+
+ServerLauncher serverLauncher = new ServerLauncher.Builder()
+.setMemberName("server1")
+.setRedirectOutput(true)
+.setWorkingDirectory(this.workingDir.getAbsolutePath())
+.set(MCAST_PORT, "0")
+.set(LOCATORS, "")
+.build();
+
+serverLauncher.start();
+
+Cache cache = getCache(serverLauncher);
+CacheServer cacheServer = getCacheServer(cache);
+AcceptorImpl acceptor = getAcceptorImpl(cacheServer);
+
+this.realServerConnection = null;
+
+this.mockServerConnection = mock(ServerConnection.class,
+
withSettings().name("mockServerConnection").spiedInstance(this.realServerConnection));
+
when(this.mockServerConnection.getClientVersion()).thenReturn(Version.CURRENT);
+
+ClientProxyMembershipID mockProxyId =
+mock(ClientProxyMembershipID.class, 
withSettings().name("mockProxyId"));
+when(this.mockServerConnection.getProxyID()).thenReturn(mockProxyId);
+
+//Message mockErrorResponseMessage =
+//mock(Message.class, withSettings().name("mockErrorResponseMessage"));
+//
when(this.mockServerConnection.getErrorResponseMessage()).thenReturn(mockErrorResponseMessage);
+
+Part mockRegionNamePart = mock(Part.class, 
withSettings().name("mockRegionNamePart"));
+when(mockRegionNamePart.getString()).thenReturn("mockRegionNamePart");
+
+Part mockOperationPart = 

[02/19] geode git commit: GEODE-2749: ignore bin/ and out/ which are commonly created by IDEs

2017-04-07 Thread klund
GEODE-2749: ignore bin/ and out/ which are commonly created by IDEs


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

Branch: refs/heads/feature/GEODE-2632
Commit: 4a09e88b691b3d6cffe551f4ff08648e62082475
Parents: abb27b3
Author: Kirk Lund 
Authored: Mon Apr 3 12:40:24 2017 -0700
Committer: Kirk Lund 
Committed: Mon Apr 3 12:40:24 2017 -0700

--
 .gitignore| 5 +++--
 gradle/rat.gradle | 2 ++
 2 files changed, 5 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/4a09e88b/.gitignore
--
diff --git a/.gitignore b/.gitignore
index 38c8131..31d5996 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,7 +12,8 @@ build/
 .idea/
 build-eclipse/
 /tags
-
+out/
+bin/
 
 
 *.iml
@@ -27,4 +28,4 @@ build-eclipse/
 *.orig
 geode-spark-connector/**/target/
 geode-spark-connector/project/project/
-geode-pulse/screenshots/
\ No newline at end of file
+geode-pulse/screenshots/

http://git-wip-us.apache.org/repos/asf/geode/blob/4a09e88b/gradle/rat.gradle
--
diff --git a/gradle/rat.gradle b/gradle/rat.gradle
index c97a9e9..7bea470 100644
--- a/gradle/rat.gradle
+++ b/gradle/rat.gradle
@@ -62,6 +62,8 @@ rat {
 '.idea/**',
 'geode-spark-connector/.idea/**',
 '**/tags',
+'**/out/**',
+'**/bin/**',
 
 // text files
 '**/*.fig',



[08/19] geode git commit: GEODE-2750: The lucene index is now destroyed on remote members before the initiating member

2017-04-07 Thread klund
GEODE-2750: The lucene index is now destroyed on remote members before the 
initiating member


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

Branch: refs/heads/feature/GEODE-2632
Commit: 99e61ffa09158ad60164368805b4052614b806c8
Parents: c61cab9
Author: Barry Oglesby 
Authored: Mon Apr 3 18:44:25 2017 -0700
Committer: Barry Oglesby 
Committed: Tue Apr 4 16:31:35 2017 -0700

--
 .../internal/AsyncEventQueueImpl.java   |   6 +-
 .../cache/wan/AbstractGatewaySender.java|  54 ---
 .../lucene/LuceneIndexDestroyedException.java   |  42 +
 .../lucene/LuceneIndexNotFoundException.java|  41 +
 .../AbstractPartitionedRepositoryManager.java   |  14 +-
 .../LuceneIndexForPartitionedRegion.java|  16 +-
 .../cache/lucene/internal/LuceneIndexImpl.java  |   6 +-
 .../distributed/LuceneQueryFunction.java|   9 +-
 .../lucene/LuceneIndexDestroyDUnitTest.java | 158 ---
 .../LuceneQueryFunctionJUnitTest.java   |   3 +-
 10 files changed, 285 insertions(+), 64 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/99e61ffa/geode-core/src/main/java/org/apache/geode/cache/asyncqueue/internal/AsyncEventQueueImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/cache/asyncqueue/internal/AsyncEventQueueImpl.java
 
b/geode-core/src/main/java/org/apache/geode/cache/asyncqueue/internal/AsyncEventQueueImpl.java
index a44b9e4..0def5d2 100644
--- 
a/geode-core/src/main/java/org/apache/geode/cache/asyncqueue/internal/AsyncEventQueueImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/cache/asyncqueue/internal/AsyncEventQueueImpl.java
@@ -199,8 +199,12 @@ public class AsyncEventQueueImpl implements 
AsyncEventQueue {
   }
 
   public void destroy() {
+destroy(true);
+  }
+
+  public void destroy(boolean initiator) {
 GemFireCacheImpl gfci = (GemFireCacheImpl) ((AbstractGatewaySender) 
this.sender).getCache();
-this.sender.destroy();
+((AbstractGatewaySender) this.sender).destroy(initiator);
 gfci.removeAsyncEventQueue(this);
   }
 

http://git-wip-us.apache.org/repos/asf/geode/blob/99e61ffa/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySender.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySender.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySender.java
index a604dbf..1c94f94 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySender.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/wan/AbstractGatewaySender.java
@@ -514,6 +514,10 @@ public abstract class AbstractGatewaySender implements 
GatewaySender, Distributi
*/
   @Override
   public void destroy() {
+destroy(true);
+  }
+
+  public void destroy(boolean initiator) {
 try {
   this.getLifeCycleLock().writeLock().lock();
   // first, check if this sender is attached to any region. If so, throw
@@ -542,33 +546,35 @@ public abstract class AbstractGatewaySender implements 
GatewaySender, Distributi
   ((GemFireCacheImpl) this.cache).removeGatewaySender(this);
 
   // destroy the region underneath the sender's queue
-  Set regionQueues = getQueues();
-  if (regionQueues != null) {
-for (RegionQueue regionQueue : regionQueues) {
-  try {
-if (regionQueue instanceof ConcurrentParallelGatewaySenderQueue) {
-  Set queueRegions =
-  ((ConcurrentParallelGatewaySenderQueue) 
regionQueue).getRegions();
-  for (PartitionedRegion queueRegion : queueRegions) {
-queueRegion.destroyRegion();
+  if (initiator) {
+Set regionQueues = getQueues();
+if (regionQueues != null) {
+  for (RegionQueue regionQueue : regionQueues) {
+try {
+  if (regionQueue instanceof ConcurrentParallelGatewaySenderQueue) 
{
+Set queueRegions =
+((ConcurrentParallelGatewaySenderQueue) 
regionQueue).getRegions();
+for (PartitionedRegion queueRegion : queueRegions) {
+  queueRegion.destroyRegion();
+}
+  } else {// For SerialGatewaySenderQueue, do local destroy
+regionQueue.getRegion().localDestroyRegion();
   }
-} else {// For SerialGatewaySenderQueue, do local destroy
-  

[04/19] geode git commit: GEODE-2420: Add classes to estimated the size of exported logs

2017-04-07 Thread klund
http://git-wip-us.apache.org/repos/asf/geode/blob/0c15c6e0/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
--
diff --git 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
index 2f5a5cd..112956c 100644
--- 
a/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
+++ 
b/geode-core/src/test/resources/org/apache/geode/codeAnalysis/sanctionedDataSerializables.txt
@@ -1,289 +1,289 @@
 org/apache/geode/admin/RegionSubRegionSnapshot,2
 
fromData,62,2a2bb80023b500082a2bb900240100b5000b2a2bb80025b500052ab40005b9002601004d2cb9002701009900132cb900280100c000292ab6001ba7ffeab1
 toData,30,2ab400082bb800202b2ab4000bb9002102002ab40005c32bb80022b1
-
+
 org/apache/geode/admin/internal/FinishBackupRequest,2
 fromData,33,2a2bb700292a2bb8002ab500022a2bb8002ab500032a2bb8002bb6002cb50004b1
 toData,33,2a2bb7002d2ab400022bb8002e2ab400032bb8002e2ab40004b8002f2bb80030b1
-
+
 org/apache/geode/admin/internal/FinishBackupResponse,2
 fromData,14,2a2bb700042a2bb80005b50003b1
 toData,14,2a2bb700062ab400032bb80007b1
-
+
 org/apache/geode/admin/internal/PrepareBackupResponse,2
 fromData,14,2a2bb700042a2bb80005b50003b1
 toData,14,2a2bb700062ab400032bb80007b1
-
+
 
org/apache/geode/admin/internal/SystemMemberCacheEventProcessor$SystemMemberCacheMessage,2
 fromData,27,2a2bb7001a2a2bb8001bb5000c2a2bb9001c0100b8001db5000fb1
 toData,27,2a2bb7001e2ab4000c2bb8001f2b2ab4000fb40020b900210200b1
-
+
 org/apache/geode/admin/jmx/internal/StatAlertNotification,2
 
fromData,39,2a2bb8002ab600032a2bb8002bb600072a2bb8002cc0002dc0002db600052a2bb8002eb50008b1
 toData,33,2ab600162bb800262ab600202bb800272ab6000e2bb800282ab400082bb80029b1
-
+
 org/apache/geode/cache/ExpirationAttributes,2
 fromData,22,2a2bb900120100b500022a2bb80013c00014b50004b1
 toData,19,2b2ab40002b9001502002ab400042bb80016b1
-
+
 org/apache/geode/cache/MembershipAttributes,2
 
fromData,39,2a2a2bb80032b7000bb500032a2bb900330100b80034b500052a2bb900330100b80035b50007b1
 
toData,89,2ab40003b9002c0100bd002d4d2ab40003b9002101004e03360415042cbea2001b2c15042db900240100c00025b90026010053840401a7ffe42c2bb8002e2b2ab40005b4002fb9003002002b2ab40007b40031b900300200b1
-
+
 org/apache/geode/cache/SubscriptionAttributes,2
 fromData,14,2a2bb9000f0100b80010b50003b1
 toData,14,2b2ab40003b4000db9000e0200b1
-
+
 org/apache/geode/cache/client/internal/CacheServerLoadMessage,2
 
fromData,52,2a2bb7000d2abb000e59b7000fb500022ab400022bb800102abb001159b70012b500032ab400032bb800102a2bb80013b50004b1
 toData,30,2a2bb700142ab400022bb800152ab400032bb800152ab400042bb80016b1
-
+
 org/apache/geode/cache/client/internal/locator/ClientConnectionRequest,2
 fromData,14,2a2bb700042a2bb80005b50003b1
 toData,14,2a2bb700062ab400032bb80007b1
-
+
 org/apache/geode/cache/client/internal/locator/ClientConnectionResponse,2
 
fromData,35,2a2bb80004b500022ab400029900162abb000559b70006b500032ab400032bb60007b1
 toData,31,2ab40003c6000704a70004033d1c2bb800081c99000b2ab400032bb60009b1
-
+
 org/apache/geode/cache/client/internal/locator/ClientReplacementRequest,2
 fromData,25,2a2bb700042abb000559b70006b500032ab400032bb80007b1
 toData,14,2a2bb700082ab400032bb80009b1
-
+
 org/apache/geode/cache/client/internal/locator/GetAllServersRequest,2
 fromData,6,2a2bb70003b1
 toData,6,2a2bb70004b1
-
+
 org/apache/geode/cache/client/internal/locator/GetAllServersResponse,2
 fromData,31,2a2bb80005b500032ab40003c600122ab40003b600049a00082a04b50002b1
 toData,9,2ab400032bb80006b1
-
+
 org/apache/geode/cache/client/internal/locator/LocatorListResponse,2
 
fromData,43,2a2bb80006b500032a2bb900070100b500052ab40003c600142ab40003b9000401009a00082a04b50002b1
 toData,19,2ab400032bb800082b2ab40005b900090200b1
-
+
 org/apache/geode/cache/client/internal/locator/LocatorStatusResponse,2
 
fromData,56,2a2bb6001f2a2bb600202a2bb600212a2bb600222a2bb600232a2bb600242a2bb600252a2bb600262a2bb600272a2bb600282a2bb60029b1
 
toData,56,2a2bb600322a2bb600332a2bb600342a2bb600352a2bb600362a2bb600372a2bb600382a2bb600392a2bb6003a2a2bb6003b2a2bb6003cb1
-
+
 org/apache/geode/cache/client/internal/locator/QueueConnectionRequest,2
 
fromData,40,2a2bb700072a2bb80008b500042a2bb80009b500062a2bb8000ab500052a2bb9000b0100b50002b1
 
toData,40,2a2bb7000c2ab400042bb8000d2ab400062bb8000e2ab400052bb8000f2b2ab40002b900100200b1
-
+
 org/apache/geode/cache/client/internal/locator/QueueConnectionResponse,2
 
fromData,41,2a2bb80006b500032a2bb80007b500042ab40004c600142ab40004b9000501009a00082a04b50002b1
 toData,17,2ab400032bb800082ab400042bb80009b1
-
+
 org/apache/geode/cache/client/internal/locator/ServerLocationRequest,2
 fromData,9,2a2bb80003b50002b1
 toData,9,2ab400022bb80004b1
-
+
 org/apache/geode/cache/query/internal/CqEntry,2
 fromData,17,2a2bb80009b500022a2bb80009b50003b1
 toData,17,2ab400022bb8000b2ab400032bb8000bb1

[05/19] geode git commit: GEODE-2420: Add classes to estimated the size of exported logs

2017-04-07 Thread klund
http://git-wip-us.apache.org/repos/asf/geode/blob/0c15c6e0/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogSizerTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogSizerTest.java
 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogSizerTest.java
new file mode 100644
index 000..c7b3ab9
--- /dev/null
+++ 
b/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogSizerTest.java
@@ -0,0 +1,99 @@
+/*
+ * 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.util;
+
+import static java.io.File.separator;
+import static org.assertj.core.api.Assertions.*;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import org.apache.geode.management.internal.cli.functions.ExportLogsFunction;
+import 
org.apache.geode.management.internal.cli.functions.SizeExportLogsFunction;
+import org.apache.geode.test.junit.categories.UnitTest;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
+import org.junit.rules.TemporaryFolder;
+import org.junit.rules.TestName;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Path;
+import java.text.ParseException;
+
+@Category(UnitTest.class)
+public class LogSizerTest {
+  private LogFilter logFilter;
+  private SizeExportLogsFunction.Args nonFilteringArgs;
+
+  private File dir;
+
+  @Rule
+  public TemporaryFolder temporaryFolder = new TemporaryFolder();
+  @Rule
+  public TestName testName = new TestName();
+
+  @Before
+  public void setUp() throws Exception {
+logFilter = mock(LogFilter.class);
+dir = temporaryFolder.getRoot();
+nonFilteringArgs = new ExportLogsFunction.Args(null, null, null, false, 
false, false);
+
+  }
+
+  @After
+  public void tearDown() throws Exception {
+
+  }
+
+  @Test
+  public void nullFileArgs_returnsZeroSize() throws ParseException, 
IOException {
+LogSizer sizer = new LogSizer(logFilter, null, null);
+assertThat(sizer.getFilteredSize()).isEqualTo(0L);
+  }
+
+  @Test
+  public void noFiles_returnsZeroSize() throws ParseException, IOException {
+
+File mockStatFile = mock(File.class);
+File mockLogFile = mock(File.class);
+when(mockLogFile.toPath()).thenReturn(
+new File("root" + separator + "parent" + separator + testName + 
".log").toPath());
+when(mockStatFile.toPath()).thenReturn(
+new File("root" + separator + "parent" + separator + testName + 
".gfs").toPath());
+LogSizer sizer = new LogSizer(logFilter, mockLogFile, mockStatFile);
+assertThat(sizer.getFilteredSize()).isEqualTo(0L);
+  }
+
+  @Test
+  public void emptyFiles_returnsZeroSize() throws ParseException, IOException {
+
+File mockStatFile = mock(File.class);
+File mockLogFile = mock(File.class);
+when(mockLogFile.toPath()).thenReturn(
+new File("root" + separator + "parent" + separator + testName + 
".log").toPath());
+when(mockStatFile.toPath()).thenReturn(
+new File("root" + separator + "parent" + separator + testName + 
".gfs").toPath());
+LogFilter logFilter =
+new LogFilter(nonFilteringArgs.getLogLevel(), 
nonFilteringArgs.isThisLogLevelOnly(),
+nonFilteringArgs.getStartTime(), nonFilteringArgs.getEndTime());
+
+LogSizer sizer = new LogSizer(logFilter, mockLogFile, mockStatFile);
+assertThat(sizer.getFilteredSize()).isEqualTo(0L);
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/geode/blob/0c15c6e0/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
 
b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
index 6ae82da..d061859 100644
--- 
a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
+++ 

[14/19] geode git commit: GEODE-2749: don't ignore bin/ because we have bin/ in src

2017-04-07 Thread klund
GEODE-2749: don't ignore bin/ because we have bin/ in src


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

Branch: refs/heads/feature/GEODE-2632
Commit: 39c72b2046fcb3ed5c0cec280d52f9fdf6aaa794
Parents: 534bb8f
Author: Kirk Lund 
Authored: Wed Apr 5 10:08:14 2017 -0700
Committer: Kirk Lund 
Committed: Wed Apr 5 12:35:45 2017 -0700

--
 .gitignore| 1 -
 gradle/rat.gradle | 1 -
 2 files changed, 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/39c72b20/.gitignore
--
diff --git a/.gitignore b/.gitignore
index 31d5996..f83be48 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,7 +13,6 @@ build/
 build-eclipse/
 /tags
 out/
-bin/
 
 
 *.iml

http://git-wip-us.apache.org/repos/asf/geode/blob/39c72b20/gradle/rat.gradle
--
diff --git a/gradle/rat.gradle b/gradle/rat.gradle
index 7bea470..440a7b7 100644
--- a/gradle/rat.gradle
+++ b/gradle/rat.gradle
@@ -63,7 +63,6 @@ rat {
 'geode-spark-connector/.idea/**',
 '**/tags',
 '**/out/**',
-'**/bin/**',
 
 // text files
 '**/*.fig',



[15/19] geode git commit: Create ClientCachePutBench

2017-04-07 Thread klund
Create ClientCachePutBench


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

Branch: refs/heads/feature/GEODE-2632
Commit: 0c1685828e9717c52bf96b881fd006d8a92f4cbc
Parents: 39c72b2
Author: Kirk Lund 
Authored: Mon Apr 3 14:52:28 2017 -0700
Committer: Kirk Lund 
Committed: Wed Apr 5 12:49:37 2017 -0700

--
 geode-core/build.gradle |   5 +
 .../sockets/command/ClientCachePutBench.java| 174 +++
 .../cache/tier/sockets/command/Put65Bench.java  | 120 +
 .../command/ClientCachePutBench-server.xml  |  29 
 .../internal/ClusterConfigurationService.java   |  20 ++-
 .../cache/tier/sockets/BaseCommand.java |  35 ++--
 .../tier/sockets/ClientProxyMembershipID.java   |   5 +-
 .../geode/distributed/ServerLauncherUtils.java  |  30 
 .../cache/tier/sockets/CacheServerUtils.java|  55 ++
 .../command/ExperimentIntegrationTest.java  |  80 +
 .../tier/sockets/command/ExperimentTest.java| 121 +
 11 files changed, 646 insertions(+), 28 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/0c168582/geode-core/build.gradle
--
diff --git a/geode-core/build.gradle b/geode-core/build.gradle
index 757599a..fd56fe1 100755
--- a/geode-core/build.gradle
+++ b/geode-core/build.gradle
@@ -17,6 +17,7 @@
 
 
 apply plugin: 'antlr'
+apply plugin: 'me.champeau.gradle.jmh'
 
 sourceSets {
   jca {
@@ -220,5 +221,9 @@ dependencies {
   classesOutput sourceSets.main.output
 }
 
+jmh {
+  duplicateClassesStrategy = 'warn'
+}
+
 tasks.eclipse.dependsOn(generateGrammarSource)
 

http://git-wip-us.apache.org/repos/asf/geode/blob/0c168582/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
--
diff --git 
a/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
 
b/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
new file mode 100644
index 000..a1cbd81
--- /dev/null
+++ 
b/geode-core/src/jmh/java/org/apache/geode/internal/cache/tier/sockets/command/ClientCachePutBench.java
@@ -0,0 +1,174 @@
+/*
+ * 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.command;
+
+import static org.apache.commons.io.FileUtils.*;
+import static org.apache.geode.test.dunit.NetworkUtils.getIPLiteral;
+import static org.assertj.core.api.Assertions.assertThat;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang.StringUtils;
+import org.apache.geode.cache.Region;
+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.distributed.ConfigurationProperties;
+import org.apache.geode.distributed.ServerLauncher;
+import org.apache.geode.distributed.internal.DistributionConfig;
+import org.apache.geode.internal.AvailablePort;
+import org.apache.geode.internal.net.SocketCreator;
+import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
+import org.openjdk.jmh.annotations.Benchmark;
+import org.openjdk.jmh.annotations.BenchmarkMode;
+import org.openjdk.jmh.annotations.Fork;
+import org.openjdk.jmh.annotations.Level;
+import org.openjdk.jmh.annotations.Measurement;
+import org.openjdk.jmh.annotations.Mode;
+import org.openjdk.jmh.annotations.OutputTimeUnit;
+import org.openjdk.jmh.annotations.Scope;
+import org.openjdk.jmh.annotations.Setup;
+import org.openjdk.jmh.annotations.State;
+import org.openjdk.jmh.annotations.TearDown;
+import org.openjdk.jmh.annotations.Warmup;
+import org.openjdk.jmh.infra.Blackhole;
+
+import java.io.File;
+import 

[01/19] geode git commit: GEODE-2748: fix xmlns to specify javaee instead of j2ee [Forced Update!]

2017-04-07 Thread klund
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2632 135d674ac -> eb89fe281 (forced update)


GEODE-2748: fix xmlns to specify javaee instead of j2ee


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

Branch: refs/heads/feature/GEODE-2632
Commit: abb27b34a0c5aa382a25a5506e4bb4f32c6605c4
Parents: 6ce55a0
Author: Kirk Lund 
Authored: Mon Apr 3 11:54:53 2017 -0700
Committer: Kirk Lund 
Committed: Mon Apr 3 11:54:53 2017 -0700

--
 geode-web/src/main/webapp/WEB-INF/web.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/abb27b34/geode-web/src/main/webapp/WEB-INF/web.xml
--
diff --git a/geode-web/src/main/webapp/WEB-INF/web.xml 
b/geode-web/src/main/webapp/WEB-INF/web.xml
index 873d675..ff24e80 100644
--- a/geode-web/src/main/webapp/WEB-INF/web.xml
+++ b/geode-web/src/main/webapp/WEB-INF/web.xml
@@ -15,7 +15,7 @@ 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.
 -->
-http://java.sun.com/xml/ns/j2ee;
+http://java.sun.com/xml/ns/javaee;
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance;
  xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd;
  version="3.0">



[12/19] geode git commit: GEODE-2751 UniversalMembershipListenerAdapterDUnitTest.testSystemClientEventsInServer

2017-04-07 Thread klund
GEODE-2751 
UniversalMembershipListenerAdapterDUnitTest.testSystemClientEventsInServer

This forces the test to always use numeric host addresses


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

Branch: refs/heads/feature/GEODE-2632
Commit: 02a31e22ad350a84ea2797562d13c6b16262481b
Parents: edd018b
Author: Bruce Schuchardt 
Authored: Wed Apr 5 09:22:19 2017 -0700
Committer: Bruce Schuchardt 
Committed: Wed Apr 5 09:29:43 2017 -0700

--
 ...UniversalMembershipListenerAdapterDUnitTest.java | 16 +++-
 1 file changed, 15 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/02a31e22/geode-core/src/test/java/org/apache/geode/management/UniversalMembershipListenerAdapterDUnitTest.java
--
diff --git 
a/geode-core/src/test/java/org/apache/geode/management/UniversalMembershipListenerAdapterDUnitTest.java
 
b/geode-core/src/test/java/org/apache/geode/management/UniversalMembershipListenerAdapterDUnitTest.java
index 66c6f7c..6b952e0 100644
--- 
a/geode-core/src/test/java/org/apache/geode/management/UniversalMembershipListenerAdapterDUnitTest.java
+++ 
b/geode-core/src/test/java/org/apache/geode/management/UniversalMembershipListenerAdapterDUnitTest.java
@@ -18,6 +18,8 @@ import static 
org.apache.geode.distributed.ConfigurationProperties.*;
 import static org.apache.geode.test.dunit.Assert.*;
 import static org.apache.geode.test.dunit.LogWriterUtils.*;
 
+import org.apache.geode.internal.net.SocketCreator;
+import org.apache.geode.test.dunit.Invoke;
 import org.awaitility.Awaitility;
 
 import java.io.IOException;
@@ -29,6 +31,7 @@ import java.util.Set;
 import java.util.concurrent.TimeUnit;
 
 import org.apache.geode.distributed.internal.ServerLocation;
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
 
@@ -93,6 +96,16 @@ public class UniversalMembershipListenerAdapterDUnitTest 
extends ClientServerTes
   /** Millis to wait for all three event listeners to be notified */
   private static final int ASYNC_EVENT_WAIT_MILLIS = 3; // use 
Integer.MAX_VALUE for debugging
 
+  @Before
+  public void setTestToUseIpAddresses() {
+SocketCreator.resolve_dns = false;
+SocketCreator.use_client_host_name = false;
+Invoke.invokeInEveryVM(() -> {
+  SocketCreator.resolve_dns = false;
+  SocketCreator.use_client_host_name = false;
+});
+  }
+
   @Override
   public final void postTearDownCacheTestCase() throws Exception {
 InternalClientMembership.unregisterAllListeners();
@@ -503,6 +516,7 @@ public class UniversalMembershipListenerAdapterDUnitTest 
extends ClientServerTes
 
 assertTrue(firedAdapter[JOINED]);
 assertEquals(clientMember, memberAdapter[JOINED]);
+assertFalse(SocketCreator.resolve_dns);
 assertEquals(clientMemberId, memberIdAdapter[JOINED]);
 assertTrue(isClientAdapter[JOINED]);
 assertFalse(firedAdapter[LEFT]);
@@ -1852,7 +1866,7 @@ public class UniversalMembershipListenerAdapterDUnitTest 
extends ClientServerTes
 config.put(MCAST_PORT, "0");
 config.put(LOCATORS, "");
 // config.put(LOG_LEVEL, "fine");
-// config.setProperty(ENABLE_NETWORK_PARTITION_DETECTION, "false");
+config.setProperty(ENABLE_NETWORK_PARTITION_DETECTION, "false");
 getSystem(config);
 
 System.out.println("[testServerEventsInLonerClient] create system bridge 
client");



geode git commit: GEODE-2757: Do not process netsearch reply from a departed node that membership listener already detected.

2017-04-07 Thread eshu11
Repository: geode
Updated Branches:
  refs/heads/develop 799548ee4 -> d497d63af


GEODE-2757: Do not process netsearch reply from a departed node that membership 
listener already detected.


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

Branch: refs/heads/develop
Commit: d497d63af422b3b98c480698a9470812539f8a83
Parents: 799548e
Author: eshu 
Authored: Fri Apr 7 11:37:35 2017 -0700
Committer: eshu 
Committed: Fri Apr 7 11:37:35 2017 -0700

--
 .../geode/internal/cache/DistributedRegion.java |   2 +-
 .../cache/SearchLoadAndWriteProcessor.java  |  61 +++
 .../cache/SearchLoadAndWriteProcessorTest.java  | 102 ++-
 3 files changed, 143 insertions(+), 22 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/d497d63a/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 fa02574..c12a652 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
@@ -2126,7 +2126,7 @@ public class DistributedRegion extends LocalRegion 
implements CacheDistributionA
 return this.distAdvisor;
   }
 
-  public final CacheDistributionAdvisor getCacheDistributionAdvisor() {
+  public CacheDistributionAdvisor getCacheDistributionAdvisor() {
 return this.distAdvisor;
   }
 

http://git-wip-us.apache.org/repos/asf/geode/blob/d497d63a/geode-core/src/main/java/org/apache/geode/internal/cache/SearchLoadAndWriteProcessor.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/SearchLoadAndWriteProcessor.java
 
b/geode-core/src/main/java/org/apache/geode/internal/cache/SearchLoadAndWriteProcessor.java
index 3d969f9..2a10792 100755
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/SearchLoadAndWriteProcessor.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/SearchLoadAndWriteProcessor.java
@@ -67,7 +67,7 @@ public class SearchLoadAndWriteProcessor implements 
MembershipListener {
   Long.getLong(DistributionConfig.GEMFIRE_PREFIX + 
"search-retry-interval", 2000).longValue();
 
 
-  private InternalDistributedMember selectedNode;
+  private volatile InternalDistributedMember selectedNode;
   private boolean selectedNodeDead = false;
   private int timeout;
   private boolean netSearchDone = false;
@@ -108,6 +108,8 @@ public class SearchLoadAndWriteProcessor implements 
MembershipListener {
 
   private final Object membersLock = new Object();
 
+  private ArrayList departedMembers;
+
   private Lock lock = null; // if non-null, then needs to be unlocked in 
release
 
   static final int NETSEARCH = 0;
@@ -221,6 +223,10 @@ public class SearchLoadAndWriteProcessor implements 
MembershipListener {
 }
 synchronized (this) {
   if (id.equals(selectedNode) && (this.requestInProgress) && 
(this.remoteGetInProgress)) {
+if (departedMembers == null) {
+  departedMembers = new ArrayList();
+}
+departedMembers.add(id);
 selectedNode = null;
 selectedNodeDead = true;
 computeRemainingTimeout();
@@ -231,8 +237,9 @@ public class SearchLoadAndWriteProcessor implements 
MembershipListener {
 notifyAll(); // signal the waiter; we are not done; but we need the 
waiter to call
  // sendNetSearchRequest
   }
-  if (responseQueue != null)
+  if (responseQueue != null) {
 responseQueue.remove(id);
+  }
   checkIfDone();
 }
   }
@@ -378,6 +385,10 @@ public class SearchLoadAndWriteProcessor implements 
MembershipListener {
 
   /** Package Methods **/
 
+  InternalDistributedMember getSelectedNode() {
+return this.selectedNode;
+  }
+
   /** Private Methods **/
   /**
* Even though SearchLoadAndWriteProcessor may be in invoked in the context 
of a local region,
@@ -495,25 +506,28 @@ public class SearchLoadAndWriteProcessor implements 
MembershipListener {
 synchronized (this.pendingResponders) {
   this.pendingResponders.clear();
 }
-this.requestInProgress = true;
-this.remoteGetInProgress = true;
+
 synchronized (this) {
+  this.requestInProgress = true;
+  

geode git commit: deprecated the old resume(TXStateProxy) so that closed side test code compiles

2017-04-07 Thread dschneider
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2485 be467cb01 -> ad9ab797b


deprecated the old resume(TXStateProxy) so that closed side test code compiles


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

Branch: refs/heads/feature/GEODE-2485
Commit: ad9ab797b21ef86ba30cebe80414476cf4585858
Parents: be467cb
Author: Darrel Schneider 
Authored: Fri Apr 7 11:10:55 2017 -0700
Committer: Darrel Schneider 
Committed: Fri Apr 7 11:10:55 2017 -0700

--
 .../java/org/apache/geode/internal/cache/TXManagerImpl.java | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/ad9ab797/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
index 7b821c1..2948a48 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
@@ -675,7 +675,7 @@ public class TXManagerImpl implements 
CacheTransactionManager, MembershipListene
* @param tx the transaction to activate.
* @throws IllegalStateException if this thread already has an active 
transaction
*/
-  public final void internalResume(TXStateProxy tx) {
+  public void internalResume(TXStateProxy tx) {
 if (tx != null) {
   TransactionId tid = getTransactionId();
   if (tid != null) {
@@ -688,6 +688,13 @@ public class TXManagerImpl implements 
CacheTransactionManager, MembershipListene
 }
   }
 
+  /**
+   * @deprecated use internalResume instead
+   */
+  public final void resume(TXStateProxy tx) {
+internalResume(tx);
+  }
+
   public final boolean isClosed() {
 return this.closed;
   }



geode git commit: formatting

2017-04-07 Thread dschneider
Repository: geode
Updated Branches:
  refs/heads/feature/GEODE-2485 b665db44c -> be467cb01


formatting


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

Branch: refs/heads/feature/GEODE-2485
Commit: be467cb016c51dae702adfba7f416366a46bcecd
Parents: b665db4
Author: Darrel Schneider 
Authored: Fri Apr 7 10:51:01 2017 -0700
Committer: Darrel Schneider 
Committed: Fri Apr 7 10:51:01 2017 -0700

--
 .../main/java/org/apache/geode/internal/cache/TXManagerImpl.java | 2 +-
 .../main/java/org/apache/geode/internal/cache/TXStateProxy.java  | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/geode/blob/be467cb0/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
index 7ac616a..7b821c1 100644
--- 
a/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
+++ 
b/geode-core/src/main/java/org/apache/geode/internal/cache/TXManagerImpl.java
@@ -1276,7 +1276,7 @@ public class TXManagerImpl implements 
CacheTransactionManager, MembershipListene
 }
 return false;
   }
-  
+
   private void resumeProxy(TXStateProxy txProxy) {
 assert txProxy != null;
 internalResume(txProxy);

http://git-wip-us.apache.org/repos/asf/geode/blob/be467cb0/geode-core/src/main/java/org/apache/geode/internal/cache/TXStateProxy.java
--
diff --git 
a/geode-core/src/main/java/org/apache/geode/internal/cache/TXStateProxy.java 
b/geode-core/src/main/java/org/apache/geode/internal/cache/TXStateProxy.java
index 5aa0aff..d392c41 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/TXStateProxy.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/TXStateProxy.java
@@ -70,8 +70,8 @@ public interface TXStateProxy extends TXStateInterface {
   public void suspend();
 
   /**
-   * Called by {@link TXManagerImpl#internalResume(TXStateProxy)} to perform 
additional tasks required to
-   * resume a transaction
+   * Called by {@link TXManagerImpl#internalResume(TXStateProxy)} to perform 
additional tasks
+   * required to resume a transaction
*/
   public void resume();
 



[geode] Git Push Summary

2017-04-07 Thread zhouxj
Repository: geode
Updated Branches:
  refs/heads/feature/GEM-1353 [created] 799548ee4