mirror of
https://github.com/MariaDB/server.git
synced 2025-07-25 01:22:45 +00:00
rpl: repack table_def
1. Change m_size to uint. This removes some implicit conversions. See unpack_row, for instance: uint max_cols= MY_MIN(tabledef->size(), cols->n_bits); 2. Improve table_def memory layout by reordering columns
This commit is contained in:

committed by
Sergei Golubchik

parent
af83d06d68
commit
f5e5013799
@ -176,8 +176,8 @@ PSI_memory_key key_memory_table_def_memory;
|
||||
table_def::table_def(unsigned char *types, ulong size,
|
||||
uchar *field_metadata, int metadata_size,
|
||||
uchar *null_bitmap, uint16 flags)
|
||||
: m_size(size), m_type(0), m_field_metadata_size(metadata_size),
|
||||
m_field_metadata(0), m_null_bits(0), m_flags(flags),
|
||||
: m_type(0), m_size(size), m_field_metadata_size(metadata_size),
|
||||
m_field_metadata(0), m_flags(flags), m_null_bits(0),
|
||||
m_memory(NULL)
|
||||
{
|
||||
m_memory= (uchar *)my_multi_malloc(key_memory_table_def_memory, MYF(MY_WME),
|
||||
|
@ -63,7 +63,7 @@ public:
|
||||
|
||||
@return The number of fields that there is type data for.
|
||||
*/
|
||||
ulong size() const { return m_size; }
|
||||
uint size() const { return m_size; }
|
||||
|
||||
|
||||
/**
|
||||
@ -221,12 +221,12 @@ public:
|
||||
|
||||
|
||||
private:
|
||||
ulong m_size; // Number of elements in the types array
|
||||
unsigned char *m_type; // Array of type descriptors
|
||||
uint m_size; // Number of elements in the types array
|
||||
uint m_field_metadata_size;
|
||||
uint16 *m_field_metadata;
|
||||
uchar *m_null_bits;
|
||||
uint16 m_flags; // Table flags
|
||||
uchar *m_null_bits;
|
||||
uchar *m_memory;
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user