[MDEV-17383] BLOB leak when emptying an instantly altered table Created: 2018-10-07 Updated: 2023-04-27 |
|
| Status: | Open |
| Project: | MariaDB Server |
| Component/s: | Storage Engine - InnoDB |
| Affects Version/s: | 10.3.2, 10.4.0 |
| Fix Version/s: | 10.4 |
| Type: | Bug | Priority: | Major |
| Reporter: | Marko Mäkelä | Assignee: | Marko Mäkelä |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | BLOB, instant | ||
| Issue Links: |
|
||||||||||||||||
| Description |
|
When a table becomes empty after an instant ADD COLUMN operation, it would be converted to the canonical format. If the added columns had long DEFAULT values, these values can be stored off-page. These pages would not be freed when the table becomes empty. It appears that btr_free_but_not_root() or similar should be executed in order to mark the BLOB pages freed. Otherwise, the space for the BLOB pages would not be released until the table is dropped or rebuilt. |
| Comments |
| Comment by Marko Mäkelä [ 2018-10-12 ] |
|
My attempt to reproduce this was blocked by MDEV-17197. |