summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
Diffstat (limited to 'storage')
-rw-r--r--storage/innobase/fsp/fsp0file.cc3
-rw-r--r--storage/innobase/include/fsp0file.h5
2 files changed, 7 insertions, 1 deletions
diff --git a/storage/innobase/fsp/fsp0file.cc b/storage/innobase/fsp/fsp0file.cc
index d775fd9c657..ed09bdce7d6 100644
--- a/storage/innobase/fsp/fsp0file.cc
+++ b/storage/innobase/fsp/fsp0file.cc
@@ -483,7 +483,8 @@ err_exit:
free_first_page();
if (recv_recovery_is_on()
- || srv_operation == SRV_OPERATION_BACKUP) {
+ || (srv_operation == SRV_OPERATION_BACKUP
+ && !m_avoid_defer)) {
m_defer= true;
return DB_SUCCESS;
}
diff --git a/storage/innobase/include/fsp0file.h b/storage/innobase/include/fsp0file.h
index 8c11d61c5aa..e62d1e45e7f 100644
--- a/storage/innobase/include/fsp0file.h
+++ b/storage/innobase/include/fsp0file.h
@@ -456,6 +456,11 @@ public:
/* Use field st_ino. */
struct stat m_file_info;
#endif /* WIN32 */
+
+ /* This variable is being used during backup. It is
+ set to true when tablespace should not be deferred
+ anymore */
+ bool m_avoid_defer= false;
};