Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-8681

peer-to-peer message loss due to sending connection closing with TLS enabled

    XMLWordPrintableJSON

    Details

      Description

      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:

       try {
          DistributedSystem.setThreadsSocketPolicy(false);
          acquireDistributedLock(lockName);
          (perform one or more cache operations)
        } finally {
          distLockService.unlock(lockName);
          DistributedSystem.releaseThreadsSockets(); // closes the socket
        }
      

      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.

        Attachments

          Activity

            People

            • Assignee:
              bschuchardt Bruce J Schuchardt
              Reporter:
              bschuchardt Bruce J Schuchardt
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: