Rahul, Can you please share plans for both queries (one with fewer which succeeds and one which fails). Also the verbose error.
On Tue, Feb 26, 2019 at 11:33 PM Rahul Raj <[email protected]> wrote: > Some more update to the mail above: > > The query above has a UDF 'checkNull' used . The UDF code is placed inside > the compiled query code, causing it to fail where there are more case > statements. The below snippet is from the UDF. > > { > if (input.end - input.start == 0) { > throw new RuntimeException("IllegalArgumentException : null values > in non nullable fields"); > } else > { > out = input; > } > } > > Any thoughts on this? Are there any naming conventions while developing a > UDF? > > Regards, > Rahul > > > > On Wed, Feb 27, 2019 at 12:14 PM Rahul Raj <[email protected]> wrote: > > > Hi, > > > > I am getting compilation error on Drill 1.15 when query contains a large > > number of case statements. I have included the query below. Query works > > fine when few case statements are removed. > > > > org.apache.drill.common.exceptions.UserRemoteException: SYSTEM ERROR: > > CompileException: File > > > 'org.apache.drill.exec.compile.DrillJavaFileObject[ProjectorGen8635.java]', > > Line 872, Column 9: ProjectorGen8635.java:872: error: cannot assign a > value > > to final variable out out = input; ^ > > (compiler.err.cant.assign.val.to.final.var) Fragment 0:0 Please, refer to > > logs for more information. [Error Id: > a0d3f054-7c60-4915-9629-55e5dacd8606 > > on jiffydemo:31010] > > > > Query is : > > > > SELECT > > CAST(`A1` AS INT) `A1` > > , CAST(`A2` AS INT) `A2` > > , `A3` > > , `A4` > > , `A5` > > , (CASE WHEN (`A6` = '') THEN null ELSE `A6` END) `A6` > > , `A7` > > , `A8` > > , `A9` > > , `A10` > > , CAST(A11 AS INT) `A11` > > , (CASE WHEN (`A12` = '') THEN null ELSE `A12` END) `A12` > > , CAST(`checkNull`(`A13`) AS INT) `A13` > > , CAST(`checkNull`(`A14`) AS INT) `A14` > > , (CASE WHEN (`A15` = '') THEN null ELSE `A15` END) `A15` > > , CAST(`checkNull`(`A16`) AS INT) `A16` > > , CAST(`checkNull`(`A17`) AS INT) `A17` > > , CAST(`checkNull`(`A18`) AS INT) `A18` > > , (CASE WHEN (`A19` = '') THEN null ELSE `A19` END) `A19` > > , `A20` > > , `A21` > > , `A22` > > , (CASE WHEN (`_1` = '') THEN null ELSE `_1` END) `_1` > > , (CASE WHEN (`_2` = '') THEN null ELSE `_2` END) `_2` > > , (CASE WHEN (`_3` = '') THEN null ELSE `_3` END) `_3` > > , (CASE WHEN (`_4` = '') THEN null ELSE `_4` END) `_4` > > , (CASE WHEN (`_5` = '') THEN null ELSE `_5` END) `_5` > > , (CASE WHEN (`_6` = '') THEN null ELSE `_6` END) `_6` > > , (CASE WHEN (`_7` = '') THEN null ELSE `_7` END) `_7` > > , (CASE WHEN (`_8` = '') THEN null ELSE `_8` END) `_8` > > , (CASE WHEN (`_9` = '') THEN null ELSE `_9` END) `_9` > > , (CASE WHEN (`_10` = '') THEN null ELSE `_10` END) `_10` > > , (CASE WHEN (`_11` = '') THEN null ELSE `_11` END) `_11` > > , (CASE WHEN (`_12` = '') THEN null ELSE `_12` END) `_12` > > , (CASE WHEN (`_13` = '') THEN null ELSE `_13` END) `_13` > > , (CASE WHEN (`_14` = '') THEN null ELSE `_14` END) `_14` > > , (CASE WHEN (`_15` = '') THEN null ELSE `_15` END) `_15` > > , (CASE WHEN (`_16` = '') THEN null ELSE `_16` END) `_16` > > , (CASE WHEN (`_17` = '') THEN null ELSE `_17` END) `_17` > > , (CASE WHEN (`_18` = '') THEN null ELSE `_18` END) `_18` > > , (CASE WHEN (`_19` = '') THEN null ELSE `_19` END) `_19` > > , (CASE WHEN (`_20` = '') THEN null ELSE `_20` END) `_20` > > , (CASE WHEN (`_21` = '') THEN null ELSE `_21` END) `_21` > > , (CASE WHEN (`_22` = '') THEN null ELSE `_22` END) `_22` > > , (CASE WHEN (`_23` = '') THEN null ELSE `_23` END) `_23` > > , (CASE WHEN (`_24` = '') THEN null ELSE `_24` END) `_24` > > , (CASE WHEN (`_25` = '') THEN null ELSE `_25` END) `_25` > > , (CASE WHEN (`_26` = '') THEN null ELSE `_26` END) `_26` > > , (CASE WHEN (`_27` = '') THEN null ELSE `_27` END) `_27` > > , (CASE WHEN (`_28` = '') THEN null ELSE `_28` END) `_28` > > , (CASE WHEN (`_29` = '') THEN null ELSE `_29` END) `_29` > > , (CASE WHEN (`_30` = '') THEN null ELSE `_30` END) `_30` > > , (CASE WHEN (`_31` = '') THEN null ELSE `_31` END) `_31` > > , (CASE WHEN (`_32` = '') THEN null ELSE `_32` END) `_32` > > , (CASE WHEN (`_33` = '') THEN null ELSE `_33` END) `_33` > > , (CASE WHEN (`_34` = '') THEN null ELSE `_34` END) `_34` > > , (CASE WHEN (`_35` = '') THEN null ELSE `_35` END) `_35` > > , (CASE WHEN (`_36` = '') THEN null ELSE `_36` END) `_36` > > , (CASE WHEN (`_37` = '') THEN null ELSE `_37` END) `_37` > > , (CASE WHEN (`_38` = '') THEN null ELSE `_38` END) `_38` > > , (CASE WHEN (`_39` = '') THEN null ELSE `_39` END) `_39` > > , (CASE WHEN (`_40` = '') THEN null ELSE `_40` END) `_40` > > , (CASE WHEN (`_41` = '') THEN null ELSE `_41` END) `_41` > > , (CASE WHEN (`_42` = '') THEN null ELSE `_42` END) `_42` > > , (CASE WHEN (`_43` = '') THEN null ELSE `_43` END) `_43` > > , (CASE WHEN (`_44` = '') THEN null ELSE `_44` END) `_44` > > , (CASE WHEN (`_45` = '') THEN null ELSE `_45` END) `_45` > > , (CASE WHEN (`_46` = '') THEN null ELSE `_46` END) `_46` > > , (CASE WHEN (`_47` = '') THEN null ELSE `_47` END) `_47` > > , (CASE WHEN (`_48` = '') THEN null ELSE `_48` END) `_48` > > , (CASE WHEN (`_49` = '') THEN null ELSE `_49` END) `_49` > > , (CASE WHEN (`_50` = '') THEN null ELSE `_50` END) `_50` > > , (CASE WHEN (`_51` = '') THEN null ELSE `_51` END) `_51` > > , (CASE WHEN (`_52` = '') THEN null ELSE `_52` END) `_52` > > , (CASE WHEN (`_53` = '') THEN null ELSE `_53` END) `_53` > > , (CASE WHEN (`_54` = '') THEN null ELSE `_54` END) `_54` > > , (CASE WHEN (`_55` = '') THEN null ELSE `_55` END) `_55` > > , (CASE WHEN (`_56` = '') THEN null ELSE `_56` END) `_56` > > , (CASE WHEN (`_57` = '') THEN null ELSE `_57` END) `_57` > > , (CASE WHEN (`_58` = '') THEN null ELSE `_58` END) `_58` > > , (CASE WHEN (`_59` = '') THEN null ELSE `_59` END) `_59` > > , (CASE WHEN (`_60` = '') THEN null ELSE `_60` END) `_60` > > , (CASE WHEN (`_61` = '') THEN null ELSE `_61` END) `_61` > > , (CASE WHEN (`_62` = '') THEN null ELSE `_62` END) `_62` > > , (CASE WHEN (`_63` = '') THEN null ELSE `_63` END) `_63` > > , (CASE WHEN (`_64` = '') THEN null ELSE `_64` END) `_64` > > , (CASE WHEN (`_65` = '') THEN null ELSE `_65` END) `_65` > > , (CASE WHEN (`_66` = '') THEN null ELSE `_66` END) `_66` > > , (CASE WHEN (`_67` = '') THEN null ELSE `_67` END) `_67` > > , (CASE WHEN (`_68` = '') THEN null ELSE `_68` END) `_68` > > , (CASE WHEN (`_69` = '') THEN null ELSE `_69` END) `_69` > > , (CASE WHEN (`_70` = '') THEN null ELSE `_70` END) `_70` > > , (CASE WHEN (`_71` = '') THEN null ELSE `_71` END) `_71` > > , (CASE WHEN (`_72` = '') THEN null ELSE `_72` END) `_72` > > , (CASE WHEN (`_73` = '') THEN null ELSE `_73` END) `_73` > > , (CASE WHEN (`_74` = '') THEN null ELSE `_74` END) `_74` > > > > > > FROM > > ( select '0' `A1`, '1' `A2`, '2' `A3`, '3' `A4`, '4' `A5`, '5' `A6`, '6' > > `A7`, '7' `A8`, '8' `A9`, '9' `A10`, '10' `A11`, '11' `A12`, '12' `A13`, > > '13' `A14`, '14' `A15`, '15' `A16`, '16' `A17`, '17' `A18`, '18' `A19`, > > '19' `A20`, '20' `A21`, '21' `A22`, '23' `_1`, '24' `_2`, '25' `_3`, '26' > > `_4`, '27' `_5`, '28' `_6`, '29' `_7`, '30' `_8`, '31' `_9`, '32' `_10`, > > '33' `_11`, '34' `_12`, '35' `_13`, '36' `_14`, '37' `_15`, '38' `_16`, > > '39' `_17`, '40' `_18`, '41' `_19`, '42' `_20`, '43' `_21`, '44' `_22`, > > '45' `_23`, '46' `_24`, '47' `_25`, '48' `_26`, '49' `_27`, '50' `_28`, > > '51' `_29`, '52' `_30`, '53' `_31`, '54' `_32`, '55' `_33`, '56' `_34`, > > '57' `_35`, '58' `_36`, '59' `_37`, '60' `_38`, '61' `_39`, '62' `_40`, > > '63' `_41`, '64' `_42`, '65' `_43`, '66' `_44`, '67' `_45`, '68' `_46`, > > '69' `_47`, '70' `_48`, '71' `_49`, '72' `_50`, '73' `_51`, '74' `_52`, > > '75' `_53`, '76' `_54`, '77' `_55`, '78' `_56`, '79' `_57`, '80' `_58`, > > '81' `_59`, '82' `_60`, '83' `_61`, '84' `_62`, '85' `_63`, '86' `_64`, > > '87' `_65`, '88' `_66`, '89' `_67`, '90' `_68`, '91' `_69`, '92' `_70`, > > '93' `_71`, '94' `_72`, '95' `_73`, '96' `_74`, '97' `_75`, '98' `_76`, > > '99' `_77`, '100' `_78`, '101' `_79`, '102' `_80`, '103' `_81`, '104' > > `_82`, '105' `_83`, '106' `_84`, '107' `_85`, '108' `_86`, '109' `_87`, > > '110' `_88`, '111' `_89`, '112' `_90`, '113' `_91`, '114' `_92`, '115' > > `_93`, '116' `_94`, '117' `_95`, '118' `_96`, '119' `_97`, '120' `_98`, > > '121' `_99`, '122' `_100`, '123' `_101`, '124' `_102`, '125' `_103`, > '126' > > `_104`, '127' `_105`, '128' `_106`, '129' `_107`, '130' `_108`, '131' > > `_109`, '132' `_110`, '133' `_111`, '134' `_112`, '135' `_113`, '136' > > `_114`, '137' `_115`, '138' `_116`, '139' `_117`, '140' `_118`, '141' > > `_119`, '142' `_120`, '143' `_121`, '144' `_122`, '145' `_123`, '146' > > `_124`, '147' `_125`, '148' `_126`, '149' `_127`, '150' `_128`, '151' > > `_129`, '152' `_130`, '153' `_131`, '154' `_132`, '155' `_133`, '156' > > `_134`, '157' `_135`, '158' `_136`, '159' `_137`, '160' `_138`, '161' > > `_139`, '162' `_140`, '163' `_141`, '164' `_142`, '165' `_143`, '166' > > `_144`, '167' `_145`, '168' `_146`, '169' `_147`, '170' `_148`, '171' > > `_149`, '172' `_150`, '173' `_151`, '174' `_152`, '175' `_153`, '176' > > `_154`, '177' `_155`, '178' `_156`, '179' `_157`, '180' `_158`, '181' > > `_159`, '182' `_160`, '183' `_161`, '184' `_162`, '185' `_163`, '186' > > `_164`, '187' `_165`, '188' `_166`, '189' `_167`, '190' `_168`, '191' > > `_169`, '192' `_170`, '193' `_171`, '194' `_172`, '195' `_173`, '196' > > `_174`, '197' `_175`, '198' `_176`, '199' `_177`, '200' `_178`, '201' > > `_179`, '202' `_180`, '203' `_181`, '204' `_182`, '205' `_183`, '206' > > `_184`, '207' `_185` from (values(1)) ) > > > > Regards, > > Rahul > > > > -- > _*** This email and any files transmitted with it are confidential and > intended solely for the use of the individual or entity to whom it is > addressed. If you are not the named addressee then you should not > disseminate, distribute or copy this e-mail. Please notify the sender > immediately and delete this e-mail from your system.***_ >
