From 8b0c5ac5491f1088517e9cc2c633f2ad0dad41fd Mon Sep 17 00:00:00 2001 From: "Mateusz \"Serafin\" Gajewski" Date: Mon, 30 Mar 2026 13:05:36 +0200 Subject: [PATCH] Support decimal encoding of NaN and Infinities values --- trino.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/trino.py b/trino.py index cdc2731..e435f03 100644 --- a/trino.py +++ b/trino.py @@ -44,6 +44,10 @@ def _trino_error_result(e: BaseException): def _decimal_to_string(value: Decimal): if not isinstance(value, Decimal): raise ValueError('Not a Decimal: ' + type(value).__name__) - if not value.is_finite(): - raise ValueError('Decimal is not finite: ' + str(value)) + if value.is_nan(): + return "NaN" + if value.is_infinite(): + if value.is_signed(): + return "-Infinity" + return "Infinity" return "{:f}".format(value)