summaryrefslogtreecommitdiff
path: root/storage/innobase/fil/fil0fil.cc
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2020-07-02 07:39:33 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2020-07-02 07:39:33 +0300
commitf347b3e0e6592329b1447fa460aca0a4b1f680b1 (patch)
treec671aced17dc9f6d0cc6c5a660b73b2e2dcfe841 /storage/innobase/fil/fil0fil.cc
parentb0f836053b094b09999c102d10bf0ad6ed761ac6 (diff)
parent1df1a6392477ad211b2a66c6eccbe9d5c6316c7e (diff)
downloadmariadb-git-f347b3e0e6592329b1447fa460aca0a4b1f680b1.tar.gz
Merge 10.3 into 10.4
Diffstat (limited to 'storage/innobase/fil/fil0fil.cc')
-rw-r--r--storage/innobase/fil/fil0fil.cc35
1 files changed, 18 insertions, 17 deletions
diff --git a/storage/innobase/fil/fil0fil.cc b/storage/innobase/fil/fil0fil.cc
index 88a1e175dd5..97d554f0b73 100644
--- a/storage/innobase/fil/fil0fil.cc
+++ b/storage/innobase/fil/fil0fil.cc
@@ -4559,10 +4559,20 @@ struct Check {
Check check;
ut_list_validate(space->chain, check);
ut_a(space->size == check.size);
- ut_ad(space->id != TRX_SYS_SPACE
- || space == fil_system.sys_space);
- ut_ad(space->id != SRV_TMP_SPACE_ID
- || space == fil_system.temp_space);
+
+ switch (space->id) {
+ case TRX_SYS_SPACE:
+ ut_ad(fil_system.sys_space == NULL
+ || fil_system.sys_space == space);
+ break;
+ case SRV_TMP_SPACE_ID:
+ ut_ad(fil_system.temp_space == NULL
+ || fil_system.temp_space == space);
+ break;
+ default:
+ break;
+ }
+
return(check.n_open);
}
};
@@ -4574,24 +4584,15 @@ bool
fil_validate(void)
/*==============*/
{
- fil_space_t* space;
fil_node_t* fil_node;
ulint n_open = 0;
mutex_enter(&fil_system.mutex);
- /* Look for spaces in the hash table */
-
- for (ulint i = 0; i < hash_get_n_cells(fil_system.spaces); i++) {
-
- for (space = static_cast<fil_space_t*>(
- HASH_GET_FIRST(fil_system.spaces, i));
- space != 0;
- space = static_cast<fil_space_t*>(
- HASH_GET_NEXT(hash, space))) {
-
- n_open += Check::validate(space);
- }
+ for (fil_space_t *space = UT_LIST_GET_FIRST(fil_system.space_list);
+ space != NULL;
+ space = UT_LIST_GET_NEXT(space_list, space)) {
+ n_open += Check::validate(space);
}
ut_a(fil_system.n_open == n_open);