diff options
Diffstat (limited to 'storage/innobase/fsp')
-rw-r--r-- | storage/innobase/fsp/fsp0sysspace.cc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/storage/innobase/fsp/fsp0sysspace.cc b/storage/innobase/fsp/fsp0sysspace.cc index aba7dac4a19..56ef4959690 100644 --- a/storage/innobase/fsp/fsp0sysspace.cc +++ b/storage/innobase/fsp/fsp0sysspace.cc @@ -673,13 +673,18 @@ SysTablespace::file_not_found( { file.m_exists = false; - if (srv_read_only_mode && !m_ignore_read_only) { + if (m_ignore_read_only) { + } else if (srv_read_only_mode) { ib::error() << "Can't create file '" << file.filepath() << "' when --innodb-read-only is set"; - return(DB_ERROR); + } else if (srv_force_recovery && space_id() == TRX_SYS_SPACE) { + ib::error() << "Can't create file '" << file.filepath() + << "' when --innodb-force-recovery is set"; + return DB_ERROR; + } - } else if (&file == &m_files.front()) { + if (&file == &m_files.front()) { /* First data file. */ ut_a(!*create_new_db); |