From a53119d5d552a3830a66ac6c406b7c4d36020d8b Mon Sep 17 00:00:00 2001 From: Roman Nozdrin Date: Mon, 30 Nov 2020 08:17:27 +0000 Subject: [PATCH] Fix crash in release builds that happens in RowGroup::initRow() for wide DECIMAL --- utils/rowgroup/rowgroup.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/utils/rowgroup/rowgroup.cpp b/utils/rowgroup/rowgroup.cpp index d2382c484..2a6e92fbb 100644 --- a/utils/rowgroup/rowgroup.cpp +++ b/utils/rowgroup/rowgroup.cpp @@ -844,7 +844,11 @@ void Row::initToNull() break; case 16 : - datatypes::Decimal::setWideDecimalNullValue(reinterpret_cast(data[offsets[i]])); + { + int128_t* s128ValuePtr = (int128_t*)(&data[offsets[i]]); + datatypes::TSInt128::storeUnaligned(s128ValuePtr, + datatypes::Decimal128Null); + } break; default: *((int64_t*) &data[offsets[i]]) = static_cast(joblist::BIGINTNULL);