[ https://issues.apache.org/jira/browse/DRILL-4906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15530578#comment-15530578 ]
ASF GitHub Bot commented on DRILL-4906: --------------------------------------- Github user amansinha100 commented on a diff in the pull request: https://github.com/apache/drill/pull/598#discussion_r80995340 --- Diff: exec/java-exec/src/test/java/org/apache/drill/exec/planner/logical/TestCaseNullableTypes.java --- @@ -0,0 +1,107 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one or more +* contributor license agreements. See the NOTICE file distributed with +* this work for additional information regarding copyright ownership. +* The ASF licenses this file to you under the Apache License, Version 2.0 +* (the "License"); you may not use this file except in compliance with +* the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package org.apache.drill.exec.planner.logical; + +import org.apache.drill.BaseTestQuery; +import org.junit.Test; + +/** + * DRILL-4906 + * Tests for handling nullable types in CASE function + */ +public class TestCaseNullableTypes extends BaseTestQuery { + + @Test + public void testCaseNullableTypesInt() throws Exception { + testBuilder() + .sqlQuery("select (case when (false) then null else 1 end) res1 from (values(1))") + .unOrdered() + .baselineColumns("res1") + .baselineValues(1) + .go(); + } + + @Test + public void testCaseNullableTypesVarchar() throws Exception { --- End diff -- Its good that you have added tests for different data types. One suggestion: could you add a test where the constant reduction rule has to do 2 or more iterations .. i.e for 2 or more different data types ? > CASE Expression with constant generates class exception > ------------------------------------------------------- > > Key: DRILL-4906 > URL: https://issues.apache.org/jira/browse/DRILL-4906 > Project: Apache Drill > Issue Type: Bug > Components: SQL Parser > Affects Versions: 1.6.0, 1.8.0 > Reporter: Serhii Harnyk > Assignee: Serhii Harnyk > Fix For: 1.9.0 > > > How to reproduce: > select (case when (true) then 1 end) from (values(1)); > Error > Error: SYSTEM ERROR: ClassCastException: > org.apache.drill.exec.expr.holders.NullableVarCharHolder cannot be cast to > org.apache.drill.exec.expr.holders.VarCharHolder -- This message was sent by Atlassian JIRA (v6.3.4#6332)