Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.2.0, 3.3.0
    • Component/s: hdfs-client
    • Labels:
      None

      Description

      The gmock based unit tests generally don't expose race conditions and memory stomps. A good way to expose these is running libhdfs++ stress tests and tools under valgrind and pointing them at a real cluster. Right now the CI tools don't do that so bugs occasionally slip in and aren't caught until they cause trouble in applications that use libhdfs++ for HDFS access.

      The reason the minidfscluster tests don't run under valgrind is because the GC and JIT compiler in the embedded JVM do things that look like errors to valgrind. I'd like to have these tests do some basic setup and then fork into two processes: one for the minidfscluster stuff and one for the libhdfs++ client test. A small amount of shared memory can be used to provide a place for the minidfscluster to stick the hdfsBuilder object that the client needs to get info about which port to connect to. Can also stick a condition variable there to let the minidfscluster know when it can shut down.

        Attachments

        1. HDFS-11807.HDFS-8707.000.patch
          17 kB
          Anatoli Shein
        2. HDFS-11807.HDFS-8707.001.patch
          18 kB
          Anatoli Shein
        3. HDFS-11807.HDFS-8707.002.patch
          18 kB
          Anatoli Shein
        4. HDFS-11807.HDFS-8707.003.patch
          17 kB
          Anatoli Shein
        5. HDFS-11807.HDFS-8707.004.patch
          17 kB
          Anatoli Shein
        6. HDFS-11807.HDFS-8707.005.patch
          17 kB
          Anatoli Shein
        7. HDFS-11807.HDFS-8707.006.patch
          18 kB
          Anatoli Shein
        8. HDFS-11807.HDFS-8707.007.patch
          18 kB
          Anatoli Shein
        9. HDFS-11807.HDFS-8707.008.patch
          18 kB
          Anatoli Shein
        10. HDFS-11807.HDFS-8707.009.patch
          18 kB
          Anatoli Shein

          Activity

            People

            • Assignee:
              anatoli.shein Anatoli Shein
              Reporter:
              James C James Clampffer
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: