[MDEV-29802] #sql-backup tables are visible upon CREATE OR REPLACE and get stuck in S3 storage Created: 2022-10-15 Updated: 2023-05-18 Resolved: 2023-01-25 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Data Definition - Create Table, Storage Engine - S3 |
| Affects Version/s: | 10.11 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Critical |
| Reporter: | Elena Stepanova | Assignee: | Aleksey Midenkov |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Issue Links: |
|
||||||||||||
| Description |
|
Run in S3-enabled environment. In the test case, one connection does CREATE OR REPLACE of an existing S3 table. Another connection is monitoring visible tables. As soon as #sql-backup-... table becomes visible (which is already strange), the monitoring connection crash-restarts the server. After recovery, the temporary table remains permanently in S3.
Couldn't reproduce before MDEV-25292. |
| Comments |
| Comment by Aleksey Midenkov [ 2022-10-17 ] | ||||||||||
Just FYI, this may or may not work, s3.basic uses the below to cleanup the mess:
| ||||||||||
| Comment by Elena Stepanova [ 2022-10-17 ] | ||||||||||
|
It doesn't work in this case, I tried that. That is, the S3 trick would seem to work because it creates a unique database every time, so on the new invocation of the test the newly created database would always be empty. But it wouldn't actually clean up at the end, the garbage would still be there. It's easy to see if we add this in the "Cleanup" section of the test case, instead of drop table:
The result is
| ||||||||||
| Comment by Aleksey Midenkov [ 2022-10-17 ] | ||||||||||
|
Please review bb-10.11-midenok | ||||||||||
| Comment by Oleksandr Byelkin [ 2022-10-18 ] | ||||||||||
|
OK to push after adding comment to the method |