Open andreaschiappacasse opened 1 month ago
Possibly something similar to https://github.com/trinodb/trino/issues/15848?
Update: it seems that even a MERGE INTO with a single NOT MACHED THEN INSERT condition fails, given that the table is big enough (in our case 633 columns)
I have the same issue also. i was hoping delete and then insert would work in separate statements (just to test it) but even this fails with too many columns:
MERGE INTO <table> target
USING <temp_table> source
ON target.source_id = source.source_id
WHEN MATCHED THEN DELETE
Apache Iceberg version
None
Query engine
Athena (engine v3)
Please describe the bug 🐞
Hello everyone, today my team incurred in a very strange bug using Iceberg via Athena. I'll descrive the steps we used to reproduce the error below:
1. We create an iceberg table with an "id" column and 321 other columns with random strings - in the example below we use awsrangler to create the table, but the same happens when the table is created using Athena directly.
2. we then run the following query in athena to insert a random value
3. which results in the error:
[ErrorCode: INTERNAL_ERROR_QUERY_ENGINE] Amazon Athena experienced an internal error while executing this query. Please contact AWS support for further assistance. You will not be charged for this query. We apologize for the inconvenience.
Notice that the error only occurs when multiple WHEN are used in the MERGE INTO query! - in case one WHEN is used (just to insert or to delete records) everything works fine, and the table can be used normally.
We can replicate this behaviour on multiple AWS accounts and with different tables/databases/s3 locations.
After trying with different number of columns we consistently found that 321 is the maximum limit for the number of columns of the table. Everything works fine below this threshold.