MySQL 8.0.39
Source Code Documentation
|
Hash storage. More...
Classes | |
struct | ha_storage_t |
Hash storage for strings. More... | |
struct | ha_storage_node_t |
Objects of this type are stored in ha_storage_t. More... | |
Functions | |
static ha_storage_t * | ha_storage_create (ulint initial_heap_bytes, ulint initial_hash_cells) |
Creates a hash storage. More... | |
static void | ha_storage_empty (ha_storage_t **storage) |
Empties a hash storage, freeing memory occupied by data chunks. More... | |
static void | ha_storage_free (ha_storage_t *storage) |
Frees a hash storage and everything it contains, it cannot be used after this call. More... | |
static ulint | ha_storage_get_size (const ha_storage_t *storage) |
Gets the size of the memory used by a storage. More... | |
Hash storage.
Provides a data structure that stores chunks of data in its own storage, avoiding duplicates.
Created September 24, 2007 Vasil Dimov
|
inlinestatic |
Creates a hash storage.
If any of the parameters is 0, then a default value is used.
initial_heap_bytes | in: initial heap's size |
initial_hash_cells | in: initial number of cells in the hash table |
|
inlinestatic |
Empties a hash storage, freeing memory occupied by data chunks.
This invalidates any pointers previously returned by ha_storage_put(). The hash storage is not invalidated itself and can be used again.
storage | in/out: hash storage |
|
inlinestatic |
Frees a hash storage and everything it contains, it cannot be used after this call.
This invalidates any pointers previously returned by ha_storage_put().
storage | in, own: hash storage |
|
inlinestatic |
Gets the size of the memory used by a storage.
storage | in: hash storage |