Uploaded image for project: 'Couchbase Server'
  1. Couchbase Server
  2. MB-45460

[CX] Connection leak in external datasets: client not closed

    XMLWordPrintable

Details

    • Untriaged
    • 1
    • Unknown
    • CX Sprint 243

    Description

      After the s3 client is used, the connections remain open in the pool. The client needs to be closed to release the connections.

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            ritam.sharma Ritam Sharma added a comment -

            Hussain Towaileb - Can you please help with steps to validate.

            CC - Till Westmann

            ritam.sharma Ritam Sharma added a comment - Hussain Towaileb - Can you please help with steps to validate. CC - Till Westmann

            Ritam Sharma, I've added the request-dev-verify label.

            Hussain Towaileb, could you take a look?

            till Till Westmann added a comment - Ritam Sharma , I've added the request-dev-verify label. Hussain Towaileb , could you take a look?

            You can test it as follows:

            • Create an S3 link.
            • Create an external dataset on the S3 link, preferably with data for a query to take few seconds (don't finish instantly).
            • Query the data (any query will do), upon completion of the query, check the TCP connections open to S3 still, the following is observed:
              • Without the fix, you should see the connections (num of connections = num of partitions) still open (for around 1 minute)
              • With the fix, you should see all the connections closing within 1-2 seconds of the returning of the query results.

             

            I would recommend increasing the number of partitions and number of files to clearly see large number of connections open, and see all of them closing instantly as the result is returned.

            Hussain.Towaileb Hussain Towaileb added a comment - You can test it as follows: Create an S3 link. Create an external dataset on the S3 link, preferably with data for a query to take few seconds (don't finish instantly). Query the data (any query will do), upon completion of the query, check the TCP connections open to S3 still, the following is observed: Without the fix, you should see the connections (num of connections = num of partitions) still open (for around 1 minute) With the fix, you should see all the connections closing within 1-2 seconds of the returning of the query results.   I would recommend increasing the number of partitions and number of files to clearly see large number of connections open, and see all of them closing instantly as the result is returned.

            Build number:

            Commit: 3ea8ef15a2aa47fd3d6e87cb19acd5254efa9252 in build: couchbase-server-7.0.0-4879

            Hussain.Towaileb Hussain Towaileb added a comment - Build number: Commit: 3ea8ef15a2aa47fd3d6e87cb19acd5254efa9252 in build: couchbase-server-7.0.0-4879

            6.6.2 Build number:

            Commit: 3ea8ef15a2aa47fd3d6e87cb19acd5254efa9252 in build: couchbase-server-6.6.2-9583

            Hussain.Towaileb Hussain Towaileb added a comment - 6.6.2 Build number: Commit: 3ea8ef15a2aa47fd3d6e87cb19acd5254efa9252 in build: couchbase-server-6.6.2-9583
            umang.agrawal Umang added a comment -

            Verified with build Enterprise Edition 6.6.2 build 9583 and Enterprise Edition 7.0.0 build 4920

            umang.agrawal Umang added a comment - Verified with build Enterprise Edition 6.6.2 build 9583 and Enterprise Edition 7.0.0 build 4920

            People

              umang.agrawal Umang
              Hussain.Towaileb Hussain Towaileb
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes

                  PagerDuty