[MDEV-698] LP:814514 - Aria double recovery failure Key tree is empty / Record at: 1:0 Can't find key for index: 1 Created: 2011-07-22  Updated: 2019-05-02  Resolved: 2019-05-02

Status: Closed
Project: MariaDB Server
Component/s: Storage Engine - Aria
Affects Version/s: 5.3.9
Fix Version/s: 5.2.15, 5.3.13, N/A

Type: Bug Priority: Minor
Reporter: Philip Stoev (Inactive) Assignee: Unassigned
Resolution: Incomplete Votes: 0
Labels: Aria, Launchpad

Attachments: XML File LPexportBug814514.xml     Zip Archive LPexportBug814514_var-bug814514.zip    

 Description   

Update by Elena on 2012-11-02:

The described error can be seen on the attached after-recovery data using maria/5.3 revno 3589:

  • unzip the attached archive;
  • cd vardir1_66/master-data_recovery-aria
  • run aria_chk smf2/smf_log_floodcontrol.MAI

The recovery by aria_read_log also fails on the attached pre-recovery data:

  • unzip the attached archive;
  • cd vardir1_66/master-data
  • run aria_read_log --apply --check

It fails with

Table './smf2/smf_members' can't be opened (Error: 138)
Table './smf2/smf_members' creating as 'vardir1_66/master-data/smf2/smf_members.MAI'
Failed to open new table or write to data file
aria_read_log: Failed to open new table or write to data file
Got error 138 when executing record redo_create_table
aria_read_log: Got error 138 when executing record redo_create_table
aria_read_log: Aria engine: Redo phase failed
 
Recovery of tables with transaction logs FAILED
aria_read_log: Aria recovery failed. Please run aria_chk -r on all Aria tables and delete all aria_log.######## files
aria_read_log: FAILED

However, the bug report contains no indication of how the initial "bad" data was created. I tried to run some RQG tests with AriaDoubleRecovery reporter, smf2.sql as init-file and smf2.yy as a grammar, but didn't get the described problem. So, unless there is something wrong with the recovery itself, the report can be closed as incomplete.

==================================
Initial description:

After a double recovery using aria_read_log, aria_chk reported the following:

Aria double recovery failure "Record at: 1:0 Can't find key for index: 1"

Checking Aria file: smf2/smf_log_floodcontrol.MAI
Data records: 5 Deleted blocks: 0

  • check file-size
  • check key delete-chain
  • check index reference
  • check data record references index: 1
    aria_chk: error: Key tree 1 is empty
  • check records and index references
    aria_chk: error: Record at: 1:0 Can't find key for index: 1
    State updated
    Aria table 'smf2/smf_log_floodcontrol.MAI' is corrupted
    Fix it using switch "-r" or "-o"


 Comments   
Comment by Philip Stoev (Inactive) [ 2011-07-22 ]

Re: Aria double recovery failure Key tree is empty / Record at: 1:0 Can't find key for index: 1

Comment by Philip Stoev (Inactive) [ 2011-07-22 ]

datadir before the first and after the second recovery
LPexportBug814514_var-bug814514.zip

Comment by Rasmus Johansson (Inactive) [ 2011-07-22 ]

Launchpad bug id: 814514

Comment by Elena Stepanova [ 2019-05-02 ]

I don't think there is any point keeping it without knowing how the data was produced.

Generated at Thu Feb 08 06:30:41 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.