ahmedriza opened a new issue, #5323:
URL: https://github.com/apache/arrow-datafusion/issues/5323
**Describe the bug**
The protobuf serialisation is missing for `GetIndexedFieldExpr` which causes
`ballista` to fail to execute SQL queries that index fields of nested types.
**To Reproduce**
Use the attached parquet file:
and run the following code
```rust
#[tokio::test]
async fn test_ballista_sql() {
let config = BallistaConfig::builder().build().unwrap();
let ctx = BallistaContext::standalone(&config, 10).await.unwrap();
ctx.register_parquet("t", "list.parquet",
ParquetReadOptions::default()).await.unwrap();
let df = ctx.sql("select id, a[1], a[2], a[3] from t").await.unwrap();
df.show().await.unwrap();
}
```
This will fail with
```
Error: Arrow error: External error: Execution error: Job F5d0DAb failed:
Error planning job F5d0DAb: DataFusionError(Internal("physical_plan::to_proto()
unsupported expression GetIndexedFieldExpr { arg: Column { name: \"a\", index:
0 }, key: Int64(1) }"))
```
**Expected behavior**
Should produce the following output:
```
+----+--------+--------+--------+
| id | t.a[1] | t.a[2] | t.a[3] |
+----+--------+--------+--------+
| 1 | 1.71 | 2.71 | 3.71 |
+----+--------+--------+--------+
```
**Additional context**
This is due to the missing protobuf serialisations for `GetIndexedFieldExpr`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]