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

Query with range predicate hits IOBE when accessing histogram buckets

    XMLWordPrintableJSON

    Details

      Description

      Following query hits an IOBE during histogram access: (make sure to run ANALYZE command before running this query):

           select 1 from dfs.tmp.employee where store_id > 24;
      
      Caused by: java.lang.ArrayIndexOutOfBoundsException: 11
      	at org.apache.drill.exec.planner.common.NumericEquiDepthHistogram.getSelectedRows(NumericEquiDepthHistogram.java:215) ~[drill-java-exec-1.16.0.0-mapr.jar:1.16.0.0-mapr]
      	at org.apache.drill.exec.planner.common.NumericEquiDepthHistogram.estimatedSelectivity(NumericEquiDepthHistogram.java:130) ~[drill-java-exec-1.16.0.0-mapr.jar:1.16.0.0-mapr]
      	at org.apache.drill.exec.planner.cost.DrillRelMdSelectivity.computeRangeSelectivity(DrillRelMd
      

      Here, 24.0 is the end point of the last histogram bucket and the boundary condition is not being correctly handled.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                amansinha100 Aman Sinha
                Reporter:
                amansinha100 Aman Sinha
                Reviewer:
                Gautam Parai
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: