Skip to content

Commit cced804

Browse files
satya461dahlerlend
authored andcommitted
Bug#27331936 - RECOVERY FAILING WITH TABLESPACE ID: 1 = ['MYSQL.IBD', 'SYS/SYS_CONFIG.IBD'] ERR
Problem: -------- Recovery cannot determine space_id properly and aborts This is because we read tablespace flags from wrong offsets and inturn we calculate wrong page size. With wrong page_size, all bets are off. Fix: ---- Read space flags from correct offset Revewied-By: [email protected] Approved on IM
1 parent 1df2179 commit cced804

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

storage/innobase/fil/fil0fil.cc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
/*****************************************************************************
22
3-
Copyright (c) 1995, 2017, Oracle and/or its affiliates. All Rights Reserved.
3+
Copyright (c) 1995, 2018, Oracle and/or its affiliates. All Rights Reserved.
44
55
This program is free software; you can redistribute it and/or modify it under
66
the terms of the GNU General Public License, version 2.0, as published by the
@@ -11122,7 +11122,7 @@ Fil_system::get_tablespace_id(const std::string& filename)
1112211122

1112311123
/* Figure out the page size of the tablespace. If it's
1112411124
a compressed tablespace. */
11125-
ifs.seekg(FSP_SPACE_FLAGS, ifs.beg);
11125+
ifs.seekg(FSP_HEADER_OFFSET + FSP_SPACE_FLAGS, ifs.beg);
1112611126

1112711127
if ((ifs.rdstate() & std::ifstream::eofbit) != 0
1112811128
|| (ifs.rdstate() & std::ifstream::failbit) != 0

0 commit comments

Comments
 (0)