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

Negative row count when selecting from a json file with an OFFSET clause

    XMLWordPrintableJSON

Details

    Description

      This simple query fails:

      select * from dfs.`/data/foo.json` offset 1 row;
      

      where foo.json is

      {"key": "aa", "sales": 11}
      {"key": "bb", "sales": 22}
      

      The error returned is:

      0: jdbc:drill:zk=local> select * from dfs.`/data/foo.json` offset 1 row;
      Error: SYSTEM ERROR: AssertionError
      
      
      [Error Id: 960d66a9-b480-4a7e-9a25-beb4928e8139 on 10.254.130.25:31020]
      
        (org.apache.drill.exec.work.foreman.ForemanException) Unexpected exception during fragment initialization: null
          org.apache.drill.exec.work.foreman.Foreman.run():282
          java.util.concurrent.ThreadPoolExecutor.runWorker():1142
          java.util.concurrent.ThreadPoolExecutor$Worker.run():617
          java.lang.Thread.run():745
        Caused By (java.lang.AssertionError) null
          org.apache.calcite.rel.metadata.RelMetadataQuery.isNonNegative():900
          org.apache.calcite.rel.metadata.RelMetadataQuery.validateResult():919
          org.apache.calcite.rel.metadata.RelMetadataQuery.getRowCount():236
          org.apache.calcite.rel.SingleRel.estimateRowCount():68
          org.apache.drill.exec.planner.physical.visitor.ExcessiveExchangeIdentifier$MajorFragmentStat.add():103
          org.apache.drill.exec.planner.physical.visitor.ExcessiveExchangeIdentifier.visitPrel():76
          org.apache.drill.exec.planner.physical.visitor.ExcessiveExchangeIdentifier.visitPrel():32
          org.apache.drill.exec.planner.physical.visitor.BasePrelVisitor.visitProject():50
          org.apache.drill.exec.planner.physical.ProjectPrel.accept():98
          org.apache.drill.exec.planner.physical.visitor.ExcessiveExchangeIdentifier.visitScreen():63
          org.apache.drill.exec.planner.physical.visitor.ExcessiveExchangeIdentifier.visitScreen():32
          org.apache.drill.exec.planner.physical.ScreenPrel.accept():65
          org.apache.drill.exec.planner.physical.visitor.ExcessiveExchangeIdentifier.removeExcessiveEchanges():41
          org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToPrel():557
          org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan():179
          org.apache.drill.exec.planner.sql.DrillSqlWorker.getQueryPlan():145
          org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan():83
          org.apache.drill.exec.work.foreman.Foreman.runSQL():567
          org.apache.drill.exec.work.foreman.Foreman.run():264
          java.util.concurrent.ThreadPoolExecutor.runWorker():1142
          java.util.concurrent.ThreadPoolExecutor$Worker.run():617
          java.lang.Thread.run():745 (state=,code=0)
      

      Attachments

        Issue Links

          Activity

            People

              gparai Gautam Parai
              ben-zvi Boaz Ben-Zvi
              Aman Sinha Aman Sinha
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: