~sergei.glushchenko/percona-server/5.1.55-issue20632

« back to all changes in this revision

Viewing changes to innodb_split_buf_pool_mutex.patch

  • Committer: kinoyasu
  • Date: 2011-02-09 11:29:44 UTC
  • Revision ID: kinoyasu@gauntlet4-20110209112944-eeuv6cafcbit1jls
port Yasufumi patches to 5.1.55

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
diff -ruN a/storage/innodb_plugin/btr/btr0cur.c b/storage/innodb_plugin/btr/btr0cur.c
9
9
--- a/storage/innodb_plugin/btr/btr0cur.c       2010-08-04 02:24:19.000000000 +0900
10
10
+++ b/storage/innodb_plugin/btr/btr0cur.c       2010-08-27 16:11:40.593021205 +0900
11
 
@@ -3760,7 +3760,8 @@
 
11
@@ -3656,7 +3656,8 @@
12
12
 
13
13
        mtr_commit(mtr);
14
14
 
18
18
        mutex_enter(&block->mutex);
19
19
 
20
20
        /* Only free the block if it is still allocated to
21
 
@@ -3771,17 +3772,22 @@
 
21
@@ -3667,17 +3668,22 @@
22
22
            && buf_block_get_space(block) == space
23
23
            && buf_block_get_page_no(block) == page_no) {
24
24
 
3240
3240
        } else {
3241
3241
                buf_LRU_old_ratio = ratio;
3242
3242
        }
3243
 
@@ -1948,7 +2099,8 @@
 
3243
@@ -1949,7 +2100,8 @@
3244
3244
                goto func_exit;
3245
3245
        }
3246
3246
 
3250
3250
 
3251
3251
        /* Update the index. */
3252
3252
        item = &buf_LRU_stat_arr[buf_LRU_stat_arr_ind];
3253
 
@@ -1962,7 +2114,8 @@
 
3253
@@ -1970,7 +2122,8 @@
3254
3254
        /* Put current entry in the array. */
3255
 
        memcpy(item, &buf_LRU_stat_cur, sizeof *item);
 
3255
        memcpy(item, &cur_stat, sizeof *item);
3256
3256
 
3257
3257
-       buf_pool_mutex_exit();
3258
3258
+       //buf_pool_mutex_exit();
3260
3260
 
3261
3261
 func_exit:
3262
3262
        /* Clear the current entry. */
3263
 
@@ -1984,7 +2137,8 @@
 
3263
@@ -1992,7 +2145,8 @@
3264
3264
        ulint           new_len;
3265
3265
 
3266
3266
        ut_ad(buf_pool);
3270
3270
 
3271
3271
        if (UT_LIST_GET_LEN(buf_pool->LRU) >= BUF_LRU_OLD_MIN_LEN) {
3272
3272
 
3273
 
@@ -2044,16 +2198,22 @@
 
3273
@@ -2052,16 +2206,22 @@
3274
3274
 
3275
3275
        ut_a(buf_pool->LRU_old_len == old_len);
3276
3276
 
3295
3295
        UT_LIST_VALIDATE(unzip_LRU, buf_block_t, buf_pool->unzip_LRU,
3296
3296
                         ut_ad(ut_list_node_313->in_unzip_LRU_list
3297
3297
                               && ut_list_node_313->page.in_LRU_list));
3298
 
@@ -2067,7 +2227,8 @@
 
3298
@@ -2075,7 +2235,8 @@
3299
3299
                ut_a(buf_page_belongs_to_unzip_LRU(&block->page));
3300
3300
        }
3301
3301
 
3305
3305
        return(TRUE);
3306
3306
 }
3307
3307
 #endif /* UNIV_DEBUG || UNIV_BUF_DEBUG */
3308
 
@@ -2083,7 +2244,8 @@
 
3308
@@ -2091,7 +2252,8 @@
3309
3309
        const buf_page_t*       bpage;
3310
3310
 
3311
3311
        ut_ad(buf_pool);
3315
3315
 
3316
3316
        bpage = UT_LIST_GET_FIRST(buf_pool->LRU);
3317
3317
 
3318
 
@@ -2140,6 +2302,7 @@
 
3318
@@ -2148,6 +2310,7 @@
3319
3319
                bpage = UT_LIST_GET_NEXT(LRU, bpage);
3320
3320
        }
3321
3321
 
3397
3397
diff -ruN a/storage/innodb_plugin/handler/i_s.cc b/storage/innodb_plugin/handler/i_s.cc
3398
3398
--- a/storage/innodb_plugin/handler/i_s.cc      2010-08-27 15:59:21.753412068 +0900
3399
3399
+++ b/storage/innodb_plugin/handler/i_s.cc      2010-08-27 16:11:40.617020805 +0900
3400
 
@@ -2230,7 +2230,8 @@
 
3400
@@ -2229,7 +2229,8 @@
3401
3401
 
3402
3402
        RETURN_IF_INNODB_NOT_STARTED(tables->schema_table_name);
3403
3403
 
3407
3407
 
3408
3408
        for (uint x = 0; x <= BUF_BUDDY_SIZES; x++) {
3409
3409
                buf_buddy_stat_t*       buddy_stat = &buf_buddy_stat[x];
3410
 
@@ -2256,7 +2257,8 @@
 
3410
@@ -2255,7 +2256,8 @@
3411
3411
                }
3412
3412
        }
3413
3413