summaryrefslogtreecommitdiff
path: root/sql/sql_hset.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_hset.h')
-rw-r--r--sql/sql_hset.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/sql/sql_hset.h b/sql/sql_hset.h
index aaecef9f0d4..6af6e1df371 100644
--- a/sql/sql_hset.h
+++ b/sql/sql_hset.h
@@ -31,19 +31,20 @@ public:
Constructs an empty hash. Does not allocate memory, it is done upon
the first insert. Thus does not cause or return errors.
*/
- Hash_set(uchar *(*K)(const T *, size_t *, my_bool),
+ Hash_set(PSI_memory_key psi_key, uchar *(*K)(const T *, size_t *, my_bool),
CHARSET_INFO *cs= &my_charset_bin)
{
my_hash_clear(&m_hash);
m_hash.get_key= (my_hash_get_key)K;
m_hash.charset= cs;
+ m_hash.array.m_psi_key= psi_key;
}
- Hash_set(CHARSET_INFO *charset, ulong default_array_elements,
+ Hash_set(PSI_memory_key psi_key, CHARSET_INFO *charset, ulong default_array_elements,
size_t key_offset, size_t key_length, my_hash_get_key get_key,
void (*free_element)(void*), uint flags)
{
my_hash_init(&m_hash, charset, default_array_elements, key_offset,
- key_length, get_key, free_element, flags);
+ key_length, get_key, free_element, flags, psi_key);
}
/**
Destroy the hash by freeing the buckets table. Does
@@ -65,7 +66,7 @@ public:
bool insert(T *value)
{
my_hash_init_opt(&m_hash, m_hash.charset, START_SIZE, 0, 0,
- m_hash.get_key, 0, HASH_UNIQUE);
+ m_hash.get_key, 0, HASH_UNIQUE, m_hash.array.m_psi_key);
return my_hash_insert(&m_hash, reinterpret_cast<const uchar*>(value));
}
bool remove(T *value)