← Back to team overview

maria-developers team mailing list archive

Re: Database corruption

 

Hello Marko, Alexander,

Thanks for your works.
When this issue will be corrected on bb-10.2-compatibility, I replay my tests.

Best regards,
Jérôme.

De : Marko Mäkelä [mailto:marko.makela@xxxxxxxxxxx]
Envoyé : mardi 4 avril 2017 08:14
À : jerome brauge
Cc : Alexander Barkov; MariaDB Developers (maria-developers@xxxxxxxxxxxxxxxxxxx); Sergey Vojtovich
Objet : Re: [Maria-developers] Database corruption

Hi Jérôme,
Because InnoDB is a transactional storage engine when it comes to DML operations, DELETE FROM table (without a WHERE clause) is not equivalent to TRUNCATE TABLE. The reason is that you can ROLLBACK after DELETE, but you cannot ROLLBACK after TRUNCATE, which is a DDL operation (and DDL is not fully transactional).
That said, I now have a better explanation for the problems that you have encountered.
The branch bb-10.2-compatibility recently merged the branch 10.2 (which is close to what will be released as MariaDB Server 10.2.5). As part of this merge, a regression that was introduced in 10.1 was merged. That regression would cause a SIGSEGV during TRUNCATE TABLE (and presumably less likely during other DDL operations) when certain pages of the table are not in the InnoDB buffer pool. I pushed the fix (MDEV-12428<https://jira.mariadb.org/browse/MDEV-12428>) to 10.1 and merged to 10.2 today. A merge of that to bb-10.2-compatibility should fix the issue.
Best regards,
Marko

References