Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.7.3
    • Fix Version/s: 1.7.4
    • Component/s: java
    • Labels:
      None
    • Environment:

      OSX, JDK6

      Description

      I experience a dead lock when running multiple DataFileReader in concurrent threads.
      See test case here:
      https://github.com/slandelle/avro-test

      AvroBinaryEncodingTest randomly stalls about 50% of the time.
      A thread dump would show a dead lock in org.apache.avro.io.parsing.Symbol class initialization.

      IHMO, the problem is that the Symbol class has static final members that are instances of Symbol subclasses.

      I built a custom version of avro where all the constants (NULL, BOOLEAN, INT, etc) have been extracted into a dedicated class outside of Symbol hierarchy and the test case now runs fine.

      Cheers,

      Stéphane Landelle

      1. AVRO-1220.txt
        1 kB
        Doug Cutting
      2. AVRO-1220.txt
        9 kB
        Doug Cutting

        Activity

          People

          • Assignee:
            Doug Cutting
            Reporter:
            Stéphane Landelle
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development