Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-42158

Error 127 "Table file is corrupted" on internal Aria temporary tables during SELECT

    XMLWordPrintable

Details

    • Bug
    • Status: Confirmed (View Workflow)
    • Major
    • Resolution: Unresolved
    • 10.11, 11.4, 11.8, 12.3, 13.1, 12.3.2
    • 10.11, 11.4, 11.8, 12.3, 13.1
    • Optimizer
    • None

    Description

      Description

      MariaDB Server 12.3.2 returns `InternalError (127)` with `Table file is corrupted` for server-created `/tmp/#sql-temptable-*.MAI` files during SELECT execution. The failing SELECT combines UNION with a correlated NOT EXISTS subquery containing INTERSECT.

      How to repeat

      Use an isolated MariaDB 12.3.2 instance. Execute the complete block below, including the final SELECT. It drops/recreates only the `aria_schema_c` database and sets session variables. All reproduction SQL is included inline.

      2 total rows (`t1`: 0, `t2`: 2, `t3`: 0); 14 columns across three tables. Empty tables remain because the SELECT still references them. The failing SELECT is preserved verbatim from the original discovery file.

      -- MariaDB 12.3.2; isolated database; original failing SELECT unchanged.
      DROP DATABASE IF EXISTS `aria_schema_c`;
       
      CREATE DATABASE `aria_schema_c`;
       
      USE `aria_schema_c`;
       
      SET NAMES utf8mb4 COLLATE utf8mb4_uca1400_ai_ci;
       
      SET SESSION sql_mode='STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';
       
      SET SESSION max_statement_time=5;
       
      SET SESSION sort_buffer_size=67108864, read_rnd_buffer_size=8388608;
       
      CREATE TABLE `t1` (
        `c4` int(11) DEFAULT NULL
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
       
      CREATE TABLE `t2` (
        `c1` int(11) DEFAULT NULL,
        `c3` decimal(10,2) DEFAULT NULL,
        `c4` varchar(50) DEFAULT NULL,
        `c5` date DEFAULT NULL,
        `c6` mediumtext DEFAULT NULL,
        `c7` longtext DEFAULT NULL,
        `c9` longblob DEFAULT NULL,
        `c10` enum('value1','value2','value3') DEFAULT NULL,
        `c11` set('a','b','c','d') DEFAULT NULL,
        `c14` float(8,2) DEFAULT NULL
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
       
      INSERT INTO `t2` (`c1`,`c3`,`c4`,`c5`,`c6`,`c7`,`c9`,`c10`,`c11`,`c14`) VALUES
      (0,0,'','2025-11-18','','',X'','value3','',0),
      (1,0,'','2026-05-02','a','sample_YIqWaJZrLrtuvHHoCPlV3MwgzV60KBciVBPKJy1Itb0ersGTMKBCV6iKBSvXtZLMfB5KwAGvxoKdwfr9m5tOGwdAJyDoMd0kbmzlF9fpOjwC8PhiFC7iDrHzGkFqJw3ciyweXkdEXCDC2dXq4HfKrm9qJNTFgi98CLY1B2OqnRimb4cbrhHd7QLbVxg8ZBUBT7FmTaQ9N05K3wop6oaHEoj3SZp2lYJk5M6JLZF7qFQc1IwMiAOHtdqgI8zoxx1FT5GMAyWDcBEpmnuPSVnpmPjFP3rbU4iQNZQSgsBzERCYdO1xCRs27h7Ftwo3Z08soiB27xHS83pDgBDP4rLae2M8nCjllh9kRISe5CKx7cI6GKRHGxC6OZV0Zf9AOwHJPwvz5PMKltWqNBTgQEDm0yceq7gX1vb21kqA9DH2Ot7X8uUwg8SieW7Hb21XwytdauHxKRMvxIEcqhdkpMDrLsxc8I1XD2me9gUa98IwswFvRfmQsWZcIs68NqGcnURtLjTxOLnDGsdlHNMngYqCVy1py2DSVjLY34LIWyGw12Nc67uN3pUB0tSIGDUFr6D6yqrOmg9ZtJmaAq4rV4ZdO8TzoRbeANvUAZP3iKRxdB1xJWB6NsghSYoK9QenuM3w29PjykBf0V17lgfFzQBwqSyMi9bQnLSQUpOqi9nugcWbR3nKVFT1T1q4VSytqOyi3Lq0st4z7j2EmnRxaA0iQYesQey1fDakZ6RNM5LKou8xzVsgIZLtijLqr69wE7JqiFaQyqchpNNMqwZv82ZoNl9kGkTToUkB1QZmiMDPpivvBOLKQVKu3jt7cXPelP2up4sYx2IZEj5UJ77GjaNuqOb1wbK9XHbV3XroVQGhxa4G4oAQOIiMcBPiTML9rwv44ELXh0VQBWQZ1fq8pXy9z5fkfv4DNKi4w0FekDw3v8xvDQeVHxOm6BzKsXI4C0hx1F7K7qQUWFT4jDfUvzGng5NeWCdr0VDImnkBXkGDDUGRbVZNIOhuWWtqiRpyIV7Y4Mb8PzE7qUKoCUywjV4NGEzGnl84fUUHOQSd0yjPyMvdTdidzz8AnVPUVQxniLAYWXeaQOEnrHtqjhjgGXV7cvJSyZg5H7VPyrXxpAg98FIAEwHW7225c6QhBSTAm2FPzjrWN1m6K2PJLOKoQU1wazvxHOFfsYdBFb0tLIuPHOgVmmzZWmEku3Bvji0SWHkC4be2MZbXG43KsFmDcnQVp5cJ29bwckOigCdZhh7gJHk3ruT35fEMlVjyENz5ZGE7aoddKbZFNoR3SrpL0kQm99xoYWNNCPldyfoRw9kKWJY4H4Gx52OMaaxvW7qQuSABgkdCIkedWhUpNEiyXUfX2UwYUIavIkZlZdNzeGYbZF5jyauNNG8yhtSnVksWorKUbAHPMM8xtpNbudVtGXVELuXSo92XlGP7gZUzSGdqeBn04kSmufk6BDwDr5EOkee2jweOkfUTGekyYUyAlFSPWcdpyxGxQYQZbxiMkOUU7U6l6aHJGxIi7bY68SrfHssBnSZhyiPpUXhmizASVfmNZWE9D1kiii08xcbv9kqkGuudG',X'','value3','',0);
       
      CREATE TABLE `t3` (
        `c1` int(11) DEFAULT NULL,
        `c6` tinyint(4) DEFAULT NULL,
        `c11` varchar(255) DEFAULT NULL
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
       
      -- Original failing SELECT.
      SELECT (SELECT t3.c14 AS subq_col_1 FROM t1 AS t2 LEFT JOIN t2 AS t3 ON t3.c3 NOT BETWEEN 9 AND 26 AND t2.c4 NOT BETWEEN 11 AND 39 ORDER BY subq_col_1 DESC LIMIT 1) AS q1_col_1, SHA2(t1.c11, t1.c1) AS q1_col_2 FROM t3 AS t1 UNION SELECT t5.c14 AS q4_col_1, t5.c10 AS q4_col_2 FROM t1 AS t4 RIGHT JOIN t2 AS t5 ON t5.c11 <> t5.c10 AND NOT EXISTS((SELECT DISTINCT t6.c6 AS q2_col_1, NULLIF(t6.c1, t6.c3) AS q2_col_2, t6.c7 AS q2_col_3 FROM t2 AS t6 WHERE t6.c10 IS NOT NULL AND t5.c1 <> t6.c1 ORDER BY q2_col_1 DESC) INTERSECT SELECT t7.c10 AS q3_col_1, t7.c9 AS q3_col_2, t7.c4 AS q3_col_3 FROM t2 AS t7 JOIN t3 AS t8 ON t7.c3 > t8.c1 WHERE '2023-01-01' < t7.c5 AND t8.c6 IS NOT NULL) WHERE 1 = 1;
      

      Actual result

      InternalError (127): Got error '127 "Table file is corrupted"' for '/tmp/#sql-temptable-1-1a-57c.MAI'
      

      Attachments

        Issue Links

          Activity

            People

              psergei Sergei Petrunia
              chen7897 cl hl
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.