[MCOL-5310] Columnstore crashes in malloc() with simple select query Created: 2022-11-17 Updated: 2023-11-17 Resolved: 2022-12-13 |
|
| Status: | Closed |
| Project: | MariaDB ColumnStore |
| Component/s: | ExeMgr |
| Affects Version/s: | 22.08.3 |
| Fix Version/s: | 22.08.6 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Massimo | Assignee: | Roman |
| Resolution: | Fixed | Votes: | 3 |
| Labels: | beginner-friendly | ||
| Environment: |
DISTRIB_ID=Ubuntu single server mix innodb and ColumnStore |
||
| Attachments: |
|
||||||||||||||||||||
| Issue Links: |
|
||||||||||||||||||||
| Description |
|
Customer has single server with CS engine Nov 17 12:51:34 vm-uks-edf-maria env[159613]: ### ExeMgr ses:2148047732 caught: InetStreamSocket::readToMagic(): I/O error2.1: err = -1 e = 104: Connection reset by peer |
| Comments |
| Comment by alexey vorovich (Inactive) [ 2022-11-21 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
David.Hall the support team is getting core file . JFYI | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Todd Stoffel (Inactive) [ 2022-11-21 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This might actually be https://jira.mariadb.org/browse/MDEV-26917 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by alexey vorovich (Inactive) [ 2022-11-25 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Do we have In a single place ? of not please provide an annotated list of URLs for them . thnks David.Hall FYI | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Todd Stoffel (Inactive) [ 2022-11-27 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Possible duplicate with MCOL-5309 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Massimo [ 2022-11-28 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
alexey.vorovich the log were already present see my comment for DEV only there are all the logs with configuration as well | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Rick Pizzi [ 2022-11-29 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
The recurring crashes seem to always happen with very simple queries , I have done some detective work and it appears that
Offending query (according to mariadb server log)
This is truncated but found the actual query in the stored procedure:
pUserId value when called is
The crash almost always happens with this query and it's always in malloc() | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Roman [ 2022-12-01 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Let me remind you that we are looking into MDB runtime not PP or any other MCS processes thus there will be no jemalloc. However IMHO the fact MDB lacks jemalloc doesn't make much difference. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Roman [ 2023-02-24 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This SEGV is caused by SQL expression pattern that calculates a percentage over a decimal column. The expression is roughly widedecimal column / count(something). In this expression MCS treats count(something) is as decimal doing types coercion and its precision is 9999 that is set in multiple places in tupleaggregatestep.cpp(search for 9999 in the file for the actual places). Be aware that there is a hidden semantics of this precision 9999 that must be taken into account fixing this. The precision 9999 is used in Row::initToNull to assign 0 and not NULL to COUNT() column. |