Full DECIMAL support in ColumnStore (MCOL-641)

[MCOL-4469] Row::getBinaryField() might crash accessing int128 from unaligned address Created: 2020-12-24  Updated: 2021-07-06  Resolved: 2021-07-06

Status: Closed
Project: MariaDB ColumnStore
Component/s: ExeMgr, PrimProc
Affects Version/s: None
Fix Version/s: 6.1.1

Type: Sub-Task Priority: Major
Reporter: Roman Assignee: Unassigned
Resolution: Not a Bug Votes: 0
Labels: None

Sprint: 2020-1, 2020-2, 2020-3, 2020-4, 2020-5, 2020-6, 2020-7, 2021-1, 2021-2, 2021-3, 2021-4, 2021-5, 2021-6, 2021-7, 2021-8, 2021-9

 Comments   
Comment by Roman [ 2021-07-06 ]

The code doesn't crash for relWithDebInfo builds. There are some getBinaryField() calls in the code that are either goes with Row::setBinaryField() (safe combination b/c setBinaryField() takes care about unaligned memory), or the assembly generated doesn't use SIMD instructions, e.g. RowAggregation::doSum() has a summation using *__int128. The code generated manipulates with 64 bit parts of __int128 doing summation.

Generated at Thu Feb 08 02:50:35 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.