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

ERROR "InnoDB: Records in wrong order" with nopad collation

    XMLWordPrintable

Details

    Description

      I've set it to Minor because the provided data file which LOAD DATA loads into the table contains random garbage, partially binary. The file wasn't generated as "bad" intentionally, but was rather a result of some datatype mix – blob or varbinary columns selected into an outfile or alike, – but it makes the test case unnatural, and I don't have a more convincing one for now. Still, given the corruption nature of the errors, I thought it would better to have it filed. Feel free to do whatever you want with it.

      Download the attached data file and put it into /tmp, or change the location in the test case as needed.

      --source include/have_innodb.inc
       
      CREATE TABLE t (f VARCHAR(64), id INT, KEY(f,id)) ENGINE=InnoDB COLLATE utf8_nopad_bin;
      LOAD DATA LOCAL INFILE '/tmp/load.data' INTO TABLE t;
      CHECK TABLE t EXTENDED;
       
      # Cleanup
      DROP TABLE t;
      

      10.6 31463f1164530464e97f30f6dad27a21842f3b19

      CHECK TABLE t EXTENDED;
      Table	Op	Msg_type	Msg_text
      test.t	check	Warning	InnoDB: The B-tree of index f is corrupted.
      test.t	check	error	Corrupt
      

      2024-03-03  1:38:06 4 [ERROR] InnoDB: Records in wrong order
       
      InnoDB: previous record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 00573f460154203f563f3f3f4d062a253fc383c5a1c382c2a4573f3f2a3f; asc  W?F T ?V???M *%?        W??*?; (total 73 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000496; asc       ;;
       
      InnoDB: record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 000f423279713f3f3f3f2f3f333f203f3f3f3f7a2831043f5a293f553d3f; asc   B2yq????/?3? ????z(1 ?Z)?U=?; (total 64 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000497; asc       ;;
       
      2024-03-03  1:38:06 4 [ERROR] InnoDB: Records in wrong order
       
      InnoDB: previous record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 00573f460154203f563f3f3f4d062a253fc383c5a1c382c2a4573f3f2a3f; asc  W?F T ?V???M *%?        W??*?; (total 73 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000613; asc       ;;
       
      InnoDB: record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 000f423279713f3f3f3f2f3f333f203f3f3f3f7a2831043f5a293f553d3f; asc   B2yq????/?3? ????z(1 ?Z)?U=?; (total 64 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000614; asc       ;;
       
      2024-03-03  1:38:06 4 [ERROR] InnoDB: Records in wrong order
       
      InnoDB: previous record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 00573f460154203f563f3f3f4d062a253fc383c5a1c382c2a4573f3f2a3f; asc  W?F T ?V???M *%?        W??*?; (total 73 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000496; asc       ;;
       
      InnoDB: record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 000f423279713f3f3f3f2f3f333f203f3f3f3f7a2831043f5a293f553d3f; asc   B2yq????/?3? ????z(1 ?Z)?U=?; (total 64 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000497; asc       ;;
       
      2024-03-03  1:38:06 4 [ERROR] InnoDB: Records in wrong order
       
      InnoDB: previous record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 00573f460154203f563f3f3f4d062a253fc383c5a1c382c2a4573f3f2a3f; asc  W?F T ?V???M *%?        W??*?; (total 73 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000613; asc       ;;
       
      InnoDB: record PHYSICAL RECORD: n_fields 3; compact format; info bits 0
       0: len 30; hex 000f423279713f3f3f3f2f3f333f203f3f3f3f7a2831043f5a293f553d3f; asc   B2yq????/?3? ????z(1 ?Z)?U=?; (total 64 bytes);
       1: SQL NULL;
       2: len 6; hex 000000000614; asc       ;;
       
      2024-03-03  1:38:06 4 [ERROR] InnoDB: index records in a wrong order in `f` of table `test`.`t`: TUPLE (info_bits=0, 3 fields): {[73] W?F T ?V???M *%?        W??*??B?Jv?????? J? R?Y??? L?          g(b?1? ]?(0x00573F460154203F563F3F3F4D062A253FC383C5A1C382C2A4573F3F2A3F3F423F4A763F3F3F3F3F3F1C4A3F15523F593F3F3F074C3F00C383E2809AC382C2AA6728623F313F025D3F),NULL,[6]      (0x000000000496)}, COMPACT RECORD(info_bits=0, 3 fields): {[64]  B2yq????/?3? ????z(1 ?Z)?U=?1?G? R8?j?E??a G;???? ????K?xC D??(0x000F423279713F3F3F3F2F3F333F203F3F3F3F7A2831043F5A293F553D3F313F473F0852383F6A3F453F3F6118473B3F3F3F3F193F3F3F3F4B3F78431B443F3F),NULL,[6]      (0x000000000497)}
      2024-03-03  1:38:06 4 [ERROR] InnoDB: index records in a wrong order in `f` of table `test`.`t`: TUPLE (info_bits=0, 3 fields): {[73] W?F T ?V???M *%?        W??*??B?Jv?????? J? R?Y??? L?          g(b?1? ]?(0x00573F460154203F563F3F3F4D062A253FC383C5A1C382C2A4573F3F2A3F3F423F4A763F3F3F3F3F3F1C4A3F15523F593F3F3F074C3F00C383E2809AC382C2AA6728623F313F025D3F),NULL,[6]      (0x000000000613)}, COMPACT RECORD(info_bits=0, 3 fields): {[64]  B2yq????/?3? ????z(1 ?Z)?U=?1?G? R8?j?E??a G;???? ????K?xC D??(0x000F423279713F3F3F3F2F3F333F203F3F3F3F7A2831043F5A293F553D3F313F473F0852383F6A3F453F3F6118473B3F3F3F3F193F3F3F3F4B3F78431B443F3F),NULL,[6]      (0x000000000614)}
      2024-03-03  1:38:06 4 [ERROR] InnoDB: Flagged corruption of `f` in table `test`.`t` in CHECK TABLE-check index
      

      Attachments

        1. load.data
          951 kB
          Elena Stepanova

        Issue Links

          Activity

            People

              bar Alexander Barkov
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              1 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.