You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Name the column in DataError for time zone values in every cursor #1217
Time zone conversion failures raise DataError without the column name, and PandasCursor wraps them in OperationalError. Raise DataError naming the column in every cursor.
Cursor, S3FSCursor, and the fetch methods raise DataError for an unknown zone, an ambiguous local time, or a local time in a DST gap. The message names the value and the zone, but not the column.
PandasCursor raises OperationalError with the same message in whole reads.
Expected behavior
Each of these raises DataError with the column name, and for an unknown zone also the zone. Errors found by a chunked read raise when that chunk is read.
Years outside 1 to 9999 are out of scope (#1212): the errors that pandas, pyarrow, Polars, or Python raise for them pass through.
changed the title [-]Raise DataError for temporal conversion failures in every cursor[/-][+]Name the column in DataError for time zone values in every cursor[/+]on Oct 17, 2026
The PandasCursor part is done in #1273: a timestamp with time zone value that PyAthena's conversion cannot convert, such as one with an ambiguous, nonexistent, or unknown zone, raises DataError naming the column, in whole and chunked reads, instead of an OperationalError that wraps it. When parse_dates, dtype, or converters is given to execute(), the default converter still runs per value as before, and an unknown zone raises OperationalError without the column name. The other cursors remain for this issue.
Activity
Follow the time zone errors of #1220 and simulate an older tzdata
[-]Raise DataError for temporal conversion failures in every cursor[/-][+]Name the column in DataError for time zone values in every cursor[/+]laughingman7743 commentedon Oct 18, 2026
The PandasCursor part is done in #1273: a
timestamp with time zonevalue that PyAthena's conversion cannot convert, such as one with an ambiguous, nonexistent, or unknown zone, raisesDataErrornaming the column, in whole and chunked reads, instead of anOperationalErrorthat wraps it. Whenparse_dates,dtype, orconvertersis given toexecute(), the default converter still runs per value as before, and an unknown zone raisesOperationalErrorwithout the column name. The other cursors remain for this issue.Keep the yield outside the conversion's try (GH-1217)
Keep StopIteration from a converter a RuntimeError in the Arrow fetch (…
Convert the Arrow record batches row by row again (GH-1217)
Name the column when pandas converts time zone values as it reads (GH…
Describe the _TimeZoneConverter that _get_csv_converter() returns (GH…
Raise only the time zone conversion's DataError as it is (GH-1217)
Say that the converter error test reads the whole result (GH-1217)
Raise the time zone conversion's DataError as DataError (GH-1217)
Keep OperationalError for invalid converters and other DataErrors (GH…