Derby
  1. Derby
  2. DERBY-4450

GROUP BY in an IN-subquery inside HAVING clause whose select list is subset of group by columns, gives NPE

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 10.3.1.4, 10.3.2.1, 10.3.3.0, 10.4.1.3, 10.4.2.0, 10.5.1.1, 10.5.2.0, 10.5.3.0
    • Fix Version/s: 10.3.3.1, 10.4.2.1, 10.5.3.1, 10.6.1.0
    • Component/s: SQL
    • Labels:
      None
    • Issue & fix info:
      Repro attached
    • Bug behavior facts:
      Regression

      Description

      Found this while working on DERBY-4397 for a similar case with ORDER BY inside an IN-subquery:

      Repro:

      create table t(i int not null, constraint c unique , j int, k int);
      insert into t values (1,10,1),(2,40,1),(3,45,1),(4,46,1),(5,90,1);
      select sum(j) from t group by i having i in (select i from t group by i,j );

      gives NPE:
      ERROR XJ001: Java exception: ': java.lang.NullPointerException'.
      java.sql.SQLException: Java exception: ': java.lang.NullPointerException'.
      at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:95)
      at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Util.java:87)
      at org.apache.derby.impl.jdbc.Util.javaException(Util.java:244)
      at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java:403)
      at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(TransactionResourceImpl.java:398)
      at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(TransactionResourceImpl.java:346)
      at org.apache.derby.impl.jdbc.EmbedConnection.handleException(EmbedConnection.java:2201)
      at org.apache.derby.impl.jdbc.ConnectionChild.handleException(ConnectionChild.java:81)
      at org.apache.derby.impl.jdbc.EmbedResultSet.closeOnTransactionError(EmbedResultSet.java:4338)
      at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(EmbedResultSet.java:467)
      at org.apache.derby.impl.jdbc.EmbedResultSet.next(EmbedResultSet.java:371)
      at org.apache.derby.tools.JDBCDisplayUtil.indent_DisplayResults(JDBCDisplayUtil.java:382)
      at org.apache.derby.tools.JDBCDisplayUtil.indent_DisplayResults(JDBCDisplayUtil.java:338)
      at org.apache.derby.tools.JDBCDisplayUtil.indent_DisplayResults(JDBCDisplayUtil.java:241)
      at org.apache.derby.tools.JDBCDisplayUtil.DisplayResults(JDBCDisplayUtil.java:229)
      at org.apache.derby.impl.tools.ij.utilMain.displayResult(utilMain.java:448)
      at org.apache.derby.impl.tools.ij.utilMain.doCatch(utilMain.java:522)
      at org.apache.derby.impl.tools.ij.utilMain.runScriptGuts(utilMain.java:363)
      at org.apache.derby.impl.tools.ij.utilMain.go(utilMain.java:261)
      at org.apache.derby.impl.tools.ij.Main.go(Main.java:229)
      at org.apache.derby.impl.tools.ij.Main.mainCore(Main.java:184)
      at org.apache.derby.impl.tools.ij.Main.main(Main.java:75)
      at org.apache.derby.tools.ij.main(ij.java:59)
      Caused by: java.sql.SQLException: Java exception: ': java.lang.NullPointerException'.
      at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:45)
      at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(SQLExceptionFactory40.java:119)
      at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(SQLExceptionFactory40.java:70)
      ... 22 more
      Caused by: java.lang.NullPointerException
      at org.apache.derby.impl.sql.execute.BaseActivation.getColumnFromRow(BaseActivation.java:1451)
      at org.apache.derby.exe.acf81e0010x0125x09b5xf628x000003d4bf801.e5(Unknown Source)
      at org.apache.derby.impl.services.reflect.DirectCall.invoke(ReflectGeneratedClass.java:149)
      at org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(ProjectRestrictResultSet.java:268)
      at org.apache.derby.impl.sql.execute.AnyResultSet.getNextRowCore(AnyResultSet.java:171)
      at org.apache.derby.exe.acf81e0010x0125x09b5xf628x000003d4bf801.g0(Unknown Source)
      at org.apache.derby.exe.acf81e0010x0125x09b5xf628x000003d4bf801.e3(Unknown Source)
      at org.apache.derby.impl.services.reflect.DirectCall.invoke(ReflectGeneratedClass.java:145)
      at org.apache.derby.impl.sql.execute.ProjectRestrictResultSet.getNextRowCore(ProjectRestrictResultSet.java:268)
      at org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.getNextRow(BasicNoPutResultSetImpl.java:471)
      at org.apache.derby.impl.jdbc.EmbedResultSet.movePosition(EmbedResultSet.java:427)

      1. derby-4450b.stat
        0.2 kB
        Dag H. Wanvik
      2. derby-4450b.diff
        3 kB
        Dag H. Wanvik
      3. derby-4450.diff
        1 kB
        Dag H. Wanvik

        Issue Links

          Activity

          Gavin made changes -
          Workflow jira [ 12482481 ] Default workflow, editable Closed status [ 12797385 ]
          Dag H. Wanvik made changes -
          Fix Version/s 10.3.3.1 [ 12313143 ]
          Fix Version/s 10.3.4.0 [ 12313653 ]
          Dag H. Wanvik made changes -
          Fix Version/s 10.4.2.1 [ 12313401 ]
          Fix Version/s 10.4.3.0 [ 12313654 ]
          Dag H. Wanvik made changes -
          Fix Version/s 10.5.4.0 [ 12314154 ]
          Dag H. Wanvik made changes -
          Fix Version/s 10.5.3.1 [ 12314182 ]
          Dag H. Wanvik made changes -
          Status Open [ 1 ] Closed [ 6 ]
          Resolution Fixed [ 1 ]
          Dag H. Wanvik made changes -
          Fix Version/s 10.3.4.0 [ 12313653 ]
          Fix Version/s 10.4.3.0 [ 12313654 ]
          Fix Version/s 10.5.4.0 [ 12314154 ]
          Dag H. Wanvik made changes -
          Fix Version/s 10.6.0.0 [ 12313727 ]
          Issue & fix info [Repro attached, Patch Available] [Repro attached]
          Dag H. Wanvik made changes -
          Link This issue is related to DERBY-681 [ DERBY-681 ]
          Dag H. Wanvik made changes -
          Bug behavior facts [Regression]
          Affects Version/s 10.5.3.0 [ 12314117 ]
          Affects Version/s 10.5.2.0 [ 12314116 ]
          Affects Version/s 10.5.1.1 [ 12313771 ]
          Affects Version/s 10.4.2.0 [ 12313345 ]
          Affects Version/s 10.4.1.3 [ 12313111 ]
          Affects Version/s 10.3.3.0 [ 12313142 ]
          Affects Version/s 10.3.2.1 [ 12312876 ]
          Affects Version/s 10.3.1.4 [ 12312590 ]
          Dag H. Wanvik made changes -
          Attachment derby-4450b.diff [ 12425520 ]
          Attachment derby-4450b.stat [ 12425521 ]
          Dag H. Wanvik made changes -
          Issue & fix info [Repro attached] [Patch Available, Repro attached]
          Dag H. Wanvik made changes -
          Assignee Dag H. Wanvik [ dagw ]
          Dag H. Wanvik made changes -
          Field Original Value New Value
          Attachment derby-4450.diff [ 12425416 ]
          Dag H. Wanvik created issue -

            People

            • Assignee:
              Dag H. Wanvik
              Reporter:
              Dag H. Wanvik
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development