Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-403

Enumerable gives NullPointerException with NOT on nullable expression

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.0.0-incubating
    • Component/s: None
    • Labels:

      Description

      Foodmart query #6597

      select "store"."store_country" as "c0",
       "store"."store_state" as "c1",
       "store"."store_city" as "c2",
       "store"."store_name" as "c3",
       "Store"."store_type" as "c4",
       "store"."store_manager" as "c5",
       "store"."store_sqft" as "c6",
       "store"."grocery_sqft" as "c7",
       "store"."frozen_sqft" as "c8",
       "store"."meat_sqft" as "c9",
       "store"."coffee_bar" as "c10",
       "store"."store_street_address" as "c11"
      from "store" as "store"
      group by "store"."store_country",
       "store"."store_state",
       "store"."store_city",
       "store"."store_name",
       "store"."store_type",
       "store"."store_manager",
       "store"."store_sqft",
       "store"."grocery_sqft",
       "store"."frozen_sqft",
       "store"."meat_sqft",
       "store"."coffee_bar",
       "store"."store_street_address"
      having NOT((((sum("store"."store_sqft") - sum("store"."grocery_sqft")) < 10000)) )
      order by "store"."store_country" ASC NULLS LAST,
       "store"."store_state" ASC NULLS LAST,
       "store"."store_city" ASC NULLS LAST,
       "store"."store_name" ASC NULLS LAST
      

      gives the following stack:

      java.lang.NullPointerException
      	at Baz$6$1.moveNext(Unknown Source)
      	at net.hydromatic.optiq.runtime.ObjectEnumeratorCursor.next(ObjectEnumeratorCursor.java:43)
      	at net.hydromatic.avatica.AvaticaResultSet.next(AvaticaResultSet.java:186)
      	at net.hydromatic.optiq.test.OptiqAssert.countRows(OptiqAssert.java:493)

      More minimal test case:

      select 1
      from "store"
      group by "store_street_address"
      having NOT (sum("grocery_sqft") < 10000)
      

        Attachments

          Activity

            People

            • Assignee:
              julianhyde Julian Hyde
              Reporter:
              julianhyde Julian Hyde
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: