mirror of
https://github.com/MariaDB/server.git
synced 2026-05-16 20:07:13 +02:00
MDEV-26205 Merge new release of InnoDB 5.7.35 to 10.2
This commit is contained in:
commit
742b3a0d39
4 changed files with 20 additions and 23 deletions
|
|
@ -1,6 +1,6 @@
|
|||
/*****************************************************************************
|
||||
|
||||
Copyright (c) 1995, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
||||
Copyright (c) 1995, 2021, Oracle and/or its affiliates.
|
||||
Copyright (c) 2008, Google Inc.
|
||||
Copyright (c) 2013, 2021, MariaDB Corporation.
|
||||
|
||||
|
|
@ -1896,8 +1896,6 @@ buf_pool_init_instance(
|
|||
LATCH_ID_HASH_TABLE_RW_LOCK,
|
||||
srv_n_page_hash_locks, MEM_HEAP_FOR_PAGE_HASH);
|
||||
|
||||
buf_pool->page_hash_old = NULL;
|
||||
|
||||
buf_pool->zip_hash = hash_create(2 * buf_pool->curr_size);
|
||||
|
||||
buf_pool->last_printout_time = time(NULL);
|
||||
|
|
@ -2556,8 +2554,6 @@ buf_pool_resize_hash(
|
|||
{
|
||||
hash_table_t* new_hash_table;
|
||||
|
||||
ut_ad(buf_pool->page_hash_old == NULL);
|
||||
|
||||
/* recreate page_hash */
|
||||
new_hash_table = ib_recreate(
|
||||
buf_pool->page_hash, 2 * buf_pool->curr_size);
|
||||
|
|
@ -2589,8 +2585,14 @@ buf_pool_resize_hash(
|
|||
}
|
||||
}
|
||||
|
||||
buf_pool->page_hash_old = buf_pool->page_hash;
|
||||
buf_pool->page_hash = new_hash_table;
|
||||
/* Concurrent threads may be accessing
|
||||
buf_pool->page_hash->n_cells, n_sync_obj and try to latch
|
||||
sync_obj[i] while we are resizing. Therefore we never
|
||||
deallocate page_hash, instead we overwrite n_cells (and other
|
||||
fields) with the new values. The n_sync_obj and sync_obj are
|
||||
actually same in both. */
|
||||
std::swap(*buf_pool->page_hash, *new_hash_table);
|
||||
hash_table_free(new_hash_table);
|
||||
|
||||
/* recreate zip_hash */
|
||||
new_hash_table = hash_create(2 * buf_pool->curr_size);
|
||||
|
|
@ -3031,11 +3033,6 @@ calc_buf_pool_size:
|
|||
|
||||
hash_unlock_x_all(buf_pool->page_hash);
|
||||
buf_pool_mutex_exit(buf_pool);
|
||||
|
||||
if (buf_pool->page_hash_old != NULL) {
|
||||
hash_table_free(buf_pool->page_hash_old);
|
||||
buf_pool->page_hash_old = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
UT_DELETE(chunk_map_old);
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
/*****************************************************************************
|
||||
|
||||
Copyright (c) 2011, 2018, Oracle and/or its affiliates. All Rights Reserved.
|
||||
Copyright (c) 2016, 2020, MariaDB Corporation.
|
||||
Copyright (c) 2011, 2021, Oracle and/or its affiliates.
|
||||
Copyright (c) 2016, 2021, MariaDB Corporation.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
|
@ -1299,6 +1299,9 @@ fts_cache_node_add_positions(
|
|||
ptr = ilist + node->ilist_size;
|
||||
|
||||
node->ilist_size_alloc = new_size;
|
||||
if (cache) {
|
||||
cache->total_size += new_size;
|
||||
}
|
||||
}
|
||||
|
||||
ptr_start = ptr;
|
||||
|
|
@ -1325,6 +1328,9 @@ fts_cache_node_add_positions(
|
|||
if (node->ilist_size > 0) {
|
||||
memcpy(ilist, node->ilist, node->ilist_size);
|
||||
ut_free(node->ilist);
|
||||
if (cache) {
|
||||
cache->total_size -= node->ilist_size;
|
||||
}
|
||||
}
|
||||
|
||||
node->ilist = ilist;
|
||||
|
|
@ -1332,10 +1338,6 @@ fts_cache_node_add_positions(
|
|||
|
||||
node->ilist_size += enc_len;
|
||||
|
||||
if (cache) {
|
||||
cache->total_size += enc_len;
|
||||
}
|
||||
|
||||
if (node->first_doc_id == FTS_NULL_DOC_ID) {
|
||||
node->first_doc_id = doc_id;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
/*****************************************************************************
|
||||
|
||||
Copyright (c) 1995, 2016, Oracle and/or its affiliates. All Rights Reserved.
|
||||
Copyright (c) 2013, 2020, MariaDB Corporation.
|
||||
Copyright (c) 1995, 2021, Oracle and/or its affiliates.
|
||||
Copyright (c) 2013, 2021, MariaDB Corporation.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
|
@ -2037,8 +2037,6 @@ struct buf_pool_t{
|
|||
page_hash mutex. Lookups can happen
|
||||
while holding the buf_pool->mutex or
|
||||
the relevant page_hash mutex. */
|
||||
hash_table_t* page_hash_old; /*!< old pointer to page_hash to be
|
||||
freed after resizing buffer pool */
|
||||
hash_table_t* zip_hash; /*!< hash table of buf_block_t blocks
|
||||
whose frames are allocated to the
|
||||
zip buddy system,
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ Created 1/20/1994 Heikki Tuuri
|
|||
|
||||
#define INNODB_VERSION_MAJOR 5
|
||||
#define INNODB_VERSION_MINOR 7
|
||||
#define INNODB_VERSION_BUGFIX 34
|
||||
#define INNODB_VERSION_BUGFIX 35
|
||||
|
||||
/* The following is the InnoDB version as shown in
|
||||
SELECT plugin_version FROM information_schema.plugins;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue