@@ -275,8 +275,12 @@ object NullPropagation extends Rule[LogicalPlan] {
275275 case e @ Count (Literal (null , _)) => Cast (Literal (0L ), e.dataType)
276276 case e @ IsNull (c) if ! c.nullable => Literal .create(false , BooleanType )
277277 case e @ IsNotNull (c) if ! c.nullable => Literal .create(true , BooleanType )
278- case e @ ExtractValue (Literal (null , _), _) => Literal .create(null , e.dataType)
279- case e @ ExtractValue (_, Literal (null , _)) => Literal .create(null , e.dataType)
278+ case e @ GetArrayItem (Literal (null , _), _) => Literal .create(null , e.dataType)
279+ case e @ GetArrayItem (_, Literal (null , _)) => Literal .create(null , e.dataType)
280+ case e @ GetMapValue (Literal (null , _), _) => Literal .create(null , e.dataType)
281+ case e @ GetMapValue (_, Literal (null , _)) => Literal .create(null , e.dataType)
282+ case e @ GetStructField (Literal (null , _), _, _) => Literal .create(null , e.dataType)
283+ case e @ GetArrayStructFields (Literal (null , _), _, _, _) => Literal .create(null , e.dataType)
280284 case e @ EqualNullSafe (Literal (null , _), r) => IsNull (r)
281285 case e @ EqualNullSafe (l, Literal (null , _)) => IsNull (l)
282286 case e @ Count (expr) if ! expr.nullable => Count (Literal (1 ))
0 commit comments