Uploaded image for project: 'Couchbase Python Client Library'
  1. Couchbase Python Client Library
  2. PYCBC-1312

Test issues using cluster.close()

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • 4.0.5
    • None
    • None
    • None
    • 1
    • SDK37

    Description

      We see occasional segfaults when the test environment closes the cluster explicitly before the cluster goes out of scope.   The issues tsan shows are data races at shutdown, which is odd since we explicitly closed first.   So...  that is a bit odd, but letting the cluster just go out of scope, I see no thread sanitizer issues, and no apparent python object (or c++ object) leak.  

      So let's fix this such that a cluster.close() is safe to use, though it is usually not needed.   I believe the RFC states the behavior to be that after close we raise exceptions if any operation requires i/o to the servers, which we should verify happens as well.   

      Part of this will be to confirm (say, with tsan and asan) that we can run with and without an explicit close, and not run into data races, crashes or leaks when the cluster (and/or transactions) go out of scope.

      Attachments

        Issue Links

          Activity

            People

              david.kelly David Kelly (Inactive)
              david.kelly David Kelly (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                PagerDuty