You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by on...@apache.org on 2019/08/20 22:20:42 UTC

[geode] 03/21: Revert "GEODE-6389 CI Failure: ConcurrentWANPropagation_1_DUnitTest.testReplicatedSerialPropagation_withoutRemoteSite"

This is an automated email from the ASF dual-hosted git repository.

onichols pushed a commit to branch release/1.9.1
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 7b956f5653a67906ef2f6f86d683242ed5096052
Author: Bruce Schuchardt <bs...@pivotal.io>
AuthorDate: Thu Jun 27 14:34:58 2019 -0700

    Revert "GEODE-6389 CI Failure: ConcurrentWANPropagation_1_DUnitTest.testReplicatedSerialPropagation_withoutRemoteSite"
    
    This reverts commit 71dacf6a6f8de535c07be4584ee3d054a41b10e3.
---
 .../org/apache/geode/internal/net/NioPlainEngine.java |  7 +------
 .../org/apache/geode/internal/net/NioSslEngine.java   | 10 +++-------
 .../org/apache/geode/internal/tcp/Connection.java     | 19 +++----------------
 .../java/org/apache/geode/internal/tcp/MsgReader.java | 13 ++++++-------
 4 files changed, 13 insertions(+), 36 deletions(-)

diff --git a/geode-core/src/main/java/org/apache/geode/internal/net/NioPlainEngine.java b/geode-core/src/main/java/org/apache/geode/internal/net/NioPlainEngine.java
index 8a3e3fb..972c854 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/net/NioPlainEngine.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/net/NioPlainEngine.java
@@ -55,12 +55,7 @@ public class NioPlainEngine implements NioFilter {
       Buffers.BufferType bufferType, DMStats stats) {
     ByteBuffer buffer = wrappedBuffer;
 
-    if (buffer == null) {
-      buffer = Buffers.acquireBuffer(bufferType, amount, stats);
-      buffer.clear();
-      lastProcessedPosition = 0;
-      lastReadPosition = 0;
-    } else if (buffer.capacity() > amount) {
+    if (buffer.capacity() > amount) {
       // we already have a buffer that's big enough
       if (buffer.capacity() - lastProcessedPosition < amount) {
         buffer.limit(lastReadPosition);
diff --git a/geode-core/src/main/java/org/apache/geode/internal/net/NioSslEngine.java b/geode-core/src/main/java/org/apache/geode/internal/net/NioSslEngine.java
index dd71d75..14c32fa 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/net/NioSslEngine.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/net/NioSslEngine.java
@@ -311,14 +311,10 @@ public class NioSslEngine implements NioFilter {
   @Override
   public ByteBuffer ensureWrappedCapacity(int amount, ByteBuffer wrappedBuffer,
       Buffers.BufferType bufferType, DMStats stats) {
-    ByteBuffer buffer = wrappedBuffer;
-    int requiredSize = engine.getSession().getPacketBufferSize();
-    if (buffer == null) {
-      buffer = Buffers.acquireBuffer(bufferType, requiredSize, stats);
-    } else if (buffer.capacity() < requiredSize) {
-      buffer = Buffers.expandWriteBufferIfNeeded(bufferType, buffer, requiredSize, stats);
+    if (wrappedBuffer == null) {
+      wrappedBuffer = Buffers.acquireBuffer(bufferType, amount, stats);
     }
-    return buffer;
+    return wrappedBuffer;
   }
 
   @Override
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 e659496..7fcbee5 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
@@ -779,6 +779,8 @@ public class Connection implements Runnable {
     // we do the close in a background thread because the operation may hang if
     // there is a problem with the network. See bug #46659
 
+    releaseInputBuffer();
+
     // if simulating sickness, sockets must be closed in-line so that tests know
     // that the vm is sick when the beSick operation completes
     if (beingSickForTests) {
@@ -1446,11 +1448,6 @@ public class Connection implements Runnable {
         }
         // make sure our socket is closed
         asyncClose(false);
-        if (!this.isReceiver) {
-          // receivers release the input buffer when exiting run(). Senders use the
-          // inputBuffer for reading direct-reply responses
-          releaseInputBuffer();
-        }
         lengthSet = false;
       } // synchronized
 
@@ -1588,14 +1585,7 @@ public class Connection implements Runnable {
         }
         asyncClose(false);
         this.owner.removeAndCloseThreadOwnedSockets();
-      } else {
-        if (getConduit().useSSL()) {
-          ByteBuffer buffer = ioFilter.getUnwrappedBuffer(inputBuffer);
-          buffer.position(0).limit(0);
-        }
       }
-      releaseInputBuffer();
-
       // make sure that if the reader thread exits we notify a thread waiting
       // for the handshake.
       // see bug 37524 for an example of listeners hung in waitForHandshake
@@ -2838,7 +2828,7 @@ public class Connection implements Runnable {
     DMStats stats = owner.getConduit().getStats();
     final Version version = getRemoteVersion();
     try {
-      msgReader = new MsgReader(this, ioFilter, version);
+      msgReader = new MsgReader(this, ioFilter, getInputBuffer(), version);
 
       Header header = msgReader.readHeader();
 
@@ -2913,9 +2903,6 @@ public class Connection implements Runnable {
             getRemoteAddress());
         this.ackTimedOut = false;
       }
-      if (msgReader != null) {
-        msgReader.close();
-      }
     }
     synchronized (stateLock) {
       this.connectionState = STATE_RECEIVED_ACK;
diff --git a/geode-core/src/main/java/org/apache/geode/internal/tcp/MsgReader.java b/geode-core/src/main/java/org/apache/geode/internal/tcp/MsgReader.java
index afb0272..adf0305 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/tcp/MsgReader.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/tcp/MsgReader.java
@@ -46,9 +46,14 @@ public class MsgReader {
 
 
 
-  MsgReader(Connection conn, NioFilter nioFilter, Version version) {
+  MsgReader(Connection conn, NioFilter nioFilter, ByteBuffer peerNetData, Version version) {
     this.conn = conn;
     this.ioFilter = nioFilter;
+    this.peerNetData = peerNetData;
+    if (conn.getConduit().useSSL()) {
+      ByteBuffer buffer = ioFilter.getUnwrappedBuffer(peerNetData);
+      buffer.position(0).limit(0);
+    }
     this.byteBufferInputStream =
         version == null ? new ByteBufferInputStream() : new VersionedByteBufferInputStream(version);
   }
@@ -129,12 +134,6 @@ public class MsgReader {
     return ioFilter.readAtLeast(conn.getSocket().getChannel(), bytes, peerNetData, getStats());
   }
 
-  public void close() {
-    if (peerNetData != null) {
-      Buffers.releaseReceiveBuffer(peerNetData, getStats());
-    }
-  }
-
 
 
   private DMStats getStats() {