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

Invalid field materialization causes vectors being created multiple times and crashes jvm in case a nested field is accessed

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • 0.7.0
    • None
    • None

    Description

      Currently RecordBatchLoader#load relies on MaterializedField#create to materialize a SerializedField. However, MaterializedField#create method disregards child fields of SerializedField so the resultant materialized field has only the root of the given serialized field. Instead, child fields are added during vectorization.

      Next time, we hit to RecordBatchLoader#load method, materialized field check fails because the previous materialized field now has children but newly materialized field does not. This misleads RecordBatchLoader#load to think that schema has changed and to create a new vector even though schema is the same.

      Additionally, running a nested query on the previously created vector instance crashes the jvm.

      Attachments

        1. DRILL-1459.1.patch.txt
          5 kB
          Hanifi Gunes

        Activity

          People

            parthc Parth Chandra
            hgunes Hanifi Gunes
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: