[MCOL-5264] writeToClient() sporadically throws an exception processing exception Created: 2022-10-13 Updated: 2023-11-17 Resolved: 2022-12-13 |
|
| Status: | Closed |
| Project: | MariaDB ColumnStore |
| Component/s: | ExeMgr |
| Affects Version/s: | 6.3.1, 6.4.5-dompe |
| Fix Version/s: | 22.08.7 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Roman | Assignee: | Andrey Piskunov (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Assigned for Review: | |
| Description |
|
There is a crash trace found by one of the clients after EM crashes.
SIGABRT is sent when code throws an exception that is not handled. |
| Comments |
| Comment by Roman [ 2022-11-23 ] | |||||||||||||||||||||||
|
The line
corresponds to the line 329 in the boost::~unique_ptr(). The actual boost version is 1.53
Here is boost::unique_ptr::unlock() code.
There are two potential exceptions in unlock(). The second is guarded by owns_lock() that should return true so I presume this is the first throw, namely the underlying mutex is 0, that produces SIGABRT. | |||||||||||||||||||||||
| Comment by Roman [ 2022-11-23 ] | |||||||||||||||||||||||
|
The suggested solution is similar to what denis0x0D implemented in | |||||||||||||||||||||||
| Comment by Roman [ 2022-11-24 ] | |||||||||||||||||||||||
|
Plz review. |