Uploaded image for project: 'Hadoop HDFS'
  1. Hadoop HDFS
  2. HDFS-8707 Implement an async pure c++ HDFS client
  3. HDFS-11767

libhdfs++: SASL events should be scoped closer to usage

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • hdfs-client
    • None

    Description

      "SASL Start" and "SASL End" are called in the SaslProtocol constructor and destructor. SaslProtocol is held by a shared_ptr so there's a race where the RpcConnection can be torn down and another can be put in it's place while a callback is still holding the shared_ptr preventing "SASL End" from being called.

      This can matter a lot because both Cyrus SASL and gsasl aren't thread safe during negotiation. These event hooks provide a mechanism to pick up a process wide lock that guards access to the sasl library.

      Attachments

        1. HDFS-11767.HDFS-8707.000.patch
          2 kB
          James Clampffer

        Activity

          People

            James C James Clampffer
            James C James Clampffer
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: