Uploaded image for project: 'Apache Drill'
  1. Apache Drill
  2. DRILL-8139

Parquet CodecFactory thread safety bug

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Blocker
    • Resolution: Fixed
    • 1.19.0
    • None
    • Storage - Parquet
    • None

    Description

      Update: PARQUET-2126 has been opened to describe the underlying thread safety problem in parquet-mr.  The rdblue/brotli-codec is also affected.

      In previously released versions of Drill, back to at least 1.17, this bug only appears under the combination of the async column reader and the sync page reader, as per the reproduction script below.  In master, the bug appears under the async column reader and both the sync and async page readers.

      set `store.parquet.compression` = 'gzip';
      drop table if exists dfs.tmp.m;
      create table dfs.tmp.m as select * from cp.`tpch/supplier.parquet`;
      set `store.parquet.reader.pagereader.async` = false;
      set `store.parquet.reader.columnreader.async` = true;
      select * from dfs.tmp.m order by s_suppkey; – repeat this last query and watch the returned data. Eventually you will also failed queries or JVM crashes
      

       

      Attachments

        1. recording.mp4
          4.00 MB
          James Turton

        Issue Links

          Activity

            People

              dzamo James Turton
              dzamo James Turton
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: