diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2017-04-21 08:45:48 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2017-04-21 17:43:35 +0300 |
commit | aafaf05a47221e035039d75a8f62dbda2379d044 (patch) | |
tree | bf1374ec9021bf42ca911c9c8aede20d8eb9c8ef /storage/xtradb | |
parent | 7445ff84f487011c94f3645fcce6abacb6e6a912 (diff) | |
download | mariadb-git-aafaf05a47221e035039d75a8f62dbda2379d044.tar.gz |
Fix some InnoDB type mismatch introduced in 10.1
On 64-bit Windows, sizeof(ulint)!=sizeof(ulong).
Diffstat (limited to 'storage/xtradb')
-rw-r--r-- | storage/xtradb/buf/buf0buf.cc | 17 | ||||
-rw-r--r-- | storage/xtradb/buf/buf0dblwr.cc | 4 | ||||
-rw-r--r-- | storage/xtradb/fil/fil0crypt.cc | 21 | ||||
-rw-r--r-- | storage/xtradb/fil/fil0fil.cc | 3 | ||||
-rw-r--r-- | storage/xtradb/fil/fil0pagecompress.cc | 5 |
5 files changed, 26 insertions, 24 deletions
diff --git a/storage/xtradb/buf/buf0buf.cc b/storage/xtradb/buf/buf0buf.cc index 3fe07800fd3..7f77f96c2fe 100644 --- a/storage/xtradb/buf/buf0buf.cc +++ b/storage/xtradb/buf/buf0buf.cc @@ -6429,9 +6429,9 @@ buf_page_decrypt_after_read( /* decompress using comp_buf to dst_frame */ fil_decompress_page(slot->comp_buf, - dst_frame, - size, - &bpage->write_size); + dst_frame, + ulong(size), + &bpage->write_size); /* Mark this slot as free */ slot->reserved = false; @@ -6483,13 +6483,10 @@ buf_page_decrypt_after_read( #endif /* decompress using comp_buf to dst_frame */ fil_decompress_page(slot->comp_buf, - dst_frame, - size, - &bpage->write_size); - -#ifdef UNIV_DEBUG - fil_page_type_validate(dst_frame); -#endif + dst_frame, + ulong(size), + &bpage->write_size); + ut_d(fil_page_type_validate(dst_frame)); } /* Mark this slot as free */ diff --git a/storage/xtradb/buf/buf0dblwr.cc b/storage/xtradb/buf/buf0dblwr.cc index b11c32064bf..ddef13ef8ea 100644 --- a/storage/xtradb/buf/buf0dblwr.cc +++ b/storage/xtradb/buf/buf0dblwr.cc @@ -538,7 +538,7 @@ buf_dblwr_process() /* Decompress the page before validating the checksum. */ fil_decompress_page( - NULL, read_buf, UNIV_PAGE_SIZE, + NULL, read_buf, srv_page_size, NULL, true); } @@ -565,7 +565,7 @@ buf_dblwr_process() /* Decompress the page before validating the checksum. */ fil_decompress_page( - NULL, page, UNIV_PAGE_SIZE, NULL, true); + NULL, page, srv_page_size, NULL, true); } if (!fil_space_verify_crypt_checksum(page, zip_size, NULL, page_no) diff --git a/storage/xtradb/fil/fil0crypt.cc b/storage/xtradb/fil/fil0crypt.cc index 9c5f782da32..b8892b4ec31 100644 --- a/storage/xtradb/fil/fil0crypt.cc +++ b/storage/xtradb/fil/fil0crypt.cc @@ -694,7 +694,8 @@ fil_space_encrypt( comp_mem = (byte *)malloc(UNIV_PAGE_SIZE); uncomp_mem = (byte *)malloc(UNIV_PAGE_SIZE); memcpy(comp_mem, src_frame, UNIV_PAGE_SIZE); - fil_decompress_page(uncomp_mem, comp_mem, UNIV_PAGE_SIZE, NULL); + fil_decompress_page(uncomp_mem, comp_mem, + srv_page_size, NULL); src = uncomp_mem; } @@ -704,7 +705,8 @@ fil_space_encrypt( /* Need to decompress the page if it was also compressed */ if (page_compressed_encrypted) { memcpy(comp_mem, tmp_mem, UNIV_PAGE_SIZE); - fil_decompress_page(tmp_mem, comp_mem, UNIV_PAGE_SIZE, NULL); + fil_decompress_page(tmp_mem, comp_mem, + srv_page_size, NULL); } bool corrupted = buf_page_is_corrupted(true, tmp_mem, zip_size, space); @@ -1492,20 +1494,21 @@ fil_crypt_realloc_iops( if (10 * state->cnt_waited > state->batch) { /* if we waited more than 10% re-estimate max_iops */ - uint avg_wait_time_us = + ulint avg_wait_time_us = state->sum_waited_us / state->cnt_waited; + if (avg_wait_time_us == 0) { + avg_wait_time_us = 1; // prevent division by zero + } + DBUG_PRINT("ib_crypt", - ("thr_no: %u - update estimated_max_iops from %u to %u.", + ("thr_no: %u - update estimated_max_iops from %u to " + ULINTPF ".", state->thread_no, state->estimated_max_iops, 1000000 / avg_wait_time_us)); - if (avg_wait_time_us == 0) { - avg_wait_time_us = 1; // prevent division by zero - } - - state->estimated_max_iops = 1000000 / avg_wait_time_us; + state->estimated_max_iops = uint(1000000 / avg_wait_time_us); state->cnt_waited = 0; state->sum_waited_us = 0; } else { diff --git a/storage/xtradb/fil/fil0fil.cc b/storage/xtradb/fil/fil0fil.cc index 43788012920..fba7d5d8e38 100644 --- a/storage/xtradb/fil/fil0fil.cc +++ b/storage/xtradb/fil/fil0fil.cc @@ -6772,7 +6772,8 @@ fil_iterate( /* If the original page is page_compressed, we need to decompress page before we can update it. */ if (page_compressed) { - fil_decompress_page(NULL, dst, size, NULL); + fil_decompress_page(NULL, dst, ulong(size), + NULL); updated = true; } diff --git a/storage/xtradb/fil/fil0pagecompress.cc b/storage/xtradb/fil/fil0pagecompress.cc index 303ab5102fb..655460c57ac 100644 --- a/storage/xtradb/fil/fil0pagecompress.cc +++ b/storage/xtradb/fil/fil0pagecompress.cc @@ -300,7 +300,8 @@ fil_compress_page( #endif /* HAVE_SNAPPY */ case PAGE_ZLIB_ALGORITHM: - err = compress2(out_buf+header_len, (ulong*)&write_size, buf, len, comp_level); + err = compress2(out_buf+header_len, (ulong*)&write_size, buf, + uLong(len), comp_level); if (err != Z_OK) { /* If error we leave the actual page as it was */ @@ -364,7 +365,7 @@ fil_compress_page( uncomp_page = static_cast<byte *>(ut_malloc(UNIV_PAGE_SIZE)); memcpy(comp_page, out_buf, UNIV_PAGE_SIZE); - fil_decompress_page(uncomp_page, comp_page, len, NULL); + fil_decompress_page(uncomp_page, comp_page, ulong(len), NULL); if(buf_page_is_corrupted(false, uncomp_page, 0, space)) { buf_page_print(uncomp_page, 0, BUF_PAGE_PRINT_NO_CRASH); |