AbsaOSS / AbsaOSS/enceladus

Add validation that output column should be at the same array level

Ouverte
#1,296 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
bug Conformance priority: medium
Langage dominant
Scala
Étoiles
33
Forks
16
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

## Describe the bug
For a schema like this:
```
root
|-- id: long (nullable = true)
|-- array1: array (nullable = true)
| |-- element: struct (containsNull = false)
| | |-- key1: long (nullable = true)
| | |-- key2: long (nullable = true)
```
if a join condition for a mapping rule includes `key1` and.or `key2`, then the output column should be inside `array1`. It cannot be at root level. Otherwise the error will occur:

```
Caused by: org.apache.spark.sql.AnalysisException: cannot resolve 'UDF(array1.key1, array1.key2)' due to data type mismatch: argument 2 requires long type, however, 'array1.key' is of array type.;;
```

## Expected behaviour
This case should be validated by Conformance before actually executing a mapping rule.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.