Problem
data_diff/databases/trino.py is a 49-line stub that inherits everything from Presto. It overrides only normalize_timestamp and normalize_uuid. Trino and Presto have diverged significantly:
- Type precision semantics differ
- Timestamp-as-instant vs wall-clock behavior
- Function naming and behavior differences
- Connection parameter handling
The __init__ calls super().__init__() (Presto), meaning any Presto-specific logic silently flows into Trino.
Scope
This is an audit, not a rewrite:
- Document which inherited Presto methods produce different SQL than Trino expects
- Identify any methods that would produce silently wrong results
- Add targeted overrides for critical divergences
- File follow-up issues for anything requiring deeper work
Key Files
data_diff/databases/trino.py
data_diff/databases/presto.py
Acceptance Criteria
Problem
data_diff/databases/trino.pyis a 49-line stub that inherits everything from Presto. It overrides onlynormalize_timestampandnormalize_uuid. Trino and Presto have diverged significantly:The
__init__callssuper().__init__()(Presto), meaning any Presto-specific logic silently flows into Trino.Scope
This is an audit, not a rewrite:
Key Files
data_diff/databases/trino.pydata_diff/databases/presto.pyAcceptance Criteria