CREATE TEMPORARY VIEW grouping AS SELECT * FROM VALUES ("1", "2", "3", 1), ("4", "5", "6", 1), ("7", "8", "9", 1) as grouping(a, b, c, d); -- SPARK-17849: grouping set throws NPE #1 SELECT a, b, c, count(d) FROM grouping GROUP BY a, b, c GROUPING SETS (()); -- SPARK-17849: grouping set throws NPE #2 SELECT a, b, c, count(d) FROM grouping GROUP BY a, b, c GROUPING SETS ((a)); -- SPARK-17849: grouping set throws NPE #3 SELECT a, b, c, count(d) FROM grouping GROUP BY a, b, c GROUPING SETS ((c));