[MDEV-7116] Dynamic column hangs/segfaults Created: 2014-11-14 Updated: 2014-11-17 Resolved: 2014-11-17 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Dynamic Columns |
| Affects Version/s: | 10.0 |
| Fix Version/s: | 10.0.15 |
| Type: | Bug | Priority: | Critical |
| Reporter: | Martijn Otto | Assignee: | Oleksandr Byelkin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Environment: |
Ubuntu 14.04 |
||
| Attachments: |
|
| Description |
|
I have reproducible segfaults and hangs with certain kinds of dynamic column queries. I was only able to reliable trigger this behavior in a master/slave scenario. What happens is that a few queries are ran on the master which are then replicated to the slave. This seems to go well, both master and slave still respond and allow queries, until I run 'show tables' in the account the queries were ran in. The slave will then hang (the query never returns and the client needs to be killed with <Ctrl>+Z). The slave can only be killed by kill-9. The master, meanwhile, stays up until the slave is killed with kill-9. At this point, the master segfaults and is restarted by the mysqld_safe script. Interestingly, if you remove some columns from the queries the behavior sometimes changes so it works well the first time (even running 'show tables' on the slave), but then immediately running the queries again will hang the master, the same way the slave would otherwise hang. These queries are about as small as I could make them and still have the behavior reproduce reliably. |
| Comments |
| Comment by Elena Stepanova [ 2014-11-14 ] | |||||||||||||||||||
|
Thanks for the report and the test case. The shortened version:
In MTR on a release build, it hangs.
| |||||||||||||||||||
| Comment by Oleksandr Byelkin [ 2014-11-17 ] | |||||||||||||||||||
|
Valgrind shows problems. | |||||||||||||||||||
| Comment by Oleksandr Byelkin [ 2014-11-17 ] | |||||||||||||||||||
|
A bit more simple test suite:
| |||||||||||||||||||
| Comment by Oleksandr Byelkin [ 2014-11-17 ] | |||||||||||||||||||
|
Problem is also repeatable with new symbol names format. | |||||||||||||||||||
| Comment by Oleksandr Byelkin [ 2014-11-17 ] | |||||||||||||||||||
|
It was double freeing the same pointer. | |||||||||||||||||||
| Comment by Oleksandr Byelkin [ 2014-11-17 ] | |||||||||||||||||||
|
Original test suite checked - it works with my fix. | |||||||||||||||||||
| Comment by Sergei Petrunia [ 2014-11-17 ] | |||||||||||||||||||
|
Ok to push. |