Bruce J Schuchardt created GEODE-8681:
-----------------------------------------

             Summary: peer-to-peer message loss due to sending connection 
closing with TLS enabled
                 Key: GEODE-8681
                 URL: https://issues.apache.org/jira/browse/GEODE-8681
             Project: Geode
          Issue Type: Bug
          Components: messaging
            Reporter: Bruce J Schuchardt


We have observed message loss when TLS is enabled and a distributed lock is 
released right after sending a message that doesn't require acknowledgement if 
the sending socket is immediately closed. The closing of sockets immediately 
after sending a message is frequently seen in function execution threads or 
server-side application threads that use this pattern:
{code:java}
 try {
    DistributedSystem.setThreadsSocketPolicy(false);
    acquireDistributedLock(lockName);
    (perform one or more cache operations)
  } finally {
    distLockService.unlock(lockName);
    DistributedSystem.releaseThreadsSockets(); // closes the socket
  }
{code}

The fault seems to be in NioSSLEngine.unwrap(), which throws an SSLException() 
if it finds the SSLEngine is closed even though there is valid data in its 
decrypt buffer.  It shouldn't throw an exception in that case.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to