mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Merge mysqldev@production.mysql.com:/data0/mysqldev/my/mysql-5.0-release
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
This commit is contained in:
@ -940,7 +940,7 @@ printNodeStatus(OutputStream *output,
|
|||||||
output->println("node.%d.dynamic_id: %d", nodeId, dynamicId);
|
output->println("node.%d.dynamic_id: %d", nodeId, dynamicId);
|
||||||
output->println("node.%d.node_group: %d", nodeId, nodeGroup);
|
output->println("node.%d.node_group: %d", nodeId, nodeGroup);
|
||||||
output->println("node.%d.connect_count: %d", nodeId, connectCount);
|
output->println("node.%d.connect_count: %d", nodeId, connectCount);
|
||||||
output->println("node.%d.address: %s", nodeId, address);
|
output->println("node.%d.address: %s", nodeId, address ? address : "");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -4110,6 +4110,7 @@ bool mysql_checksum_table(THD *thd, TABLE_LIST *tables, HA_CHECK_OPT *check_opt)
|
|||||||
{
|
{
|
||||||
/* calculating table's checksum */
|
/* calculating table's checksum */
|
||||||
ha_checksum crc= 0;
|
ha_checksum crc= 0;
|
||||||
|
uchar null_mask=256 - (1 << t->s->last_null_bit_pos);
|
||||||
|
|
||||||
/* InnoDB must be told explicitly to retrieve all columns, because
|
/* InnoDB must be told explicitly to retrieve all columns, because
|
||||||
this function does not set field->query_id in the columns to the
|
this function does not set field->query_id in the columns to the
|
||||||
@ -4130,9 +4131,12 @@ bool mysql_checksum_table(THD *thd, TABLE_LIST *tables, HA_CHECK_OPT *check_opt)
|
|||||||
continue;
|
continue;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
if (t->record[0] != (byte*) t->field[0]->ptr)
|
if (t->s->null_bytes)
|
||||||
row_crc= my_checksum(row_crc, t->record[0],
|
{
|
||||||
((byte*) t->field[0]->ptr) - t->record[0]);
|
/* fix undefined null bits */
|
||||||
|
t->record[0][t->s->null_bytes-1] |= null_mask;
|
||||||
|
row_crc= my_checksum(row_crc, t->record[0], t->s->null_bytes);
|
||||||
|
}
|
||||||
|
|
||||||
for (uint i= 0; i < t->s->fields; i++ )
|
for (uint i= 0; i < t->s->fields; i++ )
|
||||||
{
|
{
|
||||||
@ -4176,9 +4180,9 @@ static bool check_engine(THD *thd, const char *table_name,
|
|||||||
enum db_type *new_engine)
|
enum db_type *new_engine)
|
||||||
{
|
{
|
||||||
enum db_type req_engine= *new_engine;
|
enum db_type req_engine= *new_engine;
|
||||||
bool no_substitution=
|
bool no_substitution=
|
||||||
test(thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION);
|
test(thd->variables.sql_mode & MODE_NO_ENGINE_SUBSTITUTION);
|
||||||
if ((*new_engine=
|
if ((*new_engine=
|
||||||
ha_checktype(thd, req_engine, no_substitution, 1)) == DB_TYPE_UNKNOWN)
|
ha_checktype(thd, req_engine, no_substitution, 1)) == DB_TYPE_UNKNOWN)
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
|
||||||
|
@ -874,6 +874,7 @@ int openfrm(THD *thd, const char *name, const char *alias, uint db_stat,
|
|||||||
|
|
||||||
/* the correct null_bytes can now be set, since bitfields have been taken into account */
|
/* the correct null_bytes can now be set, since bitfields have been taken into account */
|
||||||
share->null_bytes= null_pos - (uchar*) outparam->null_flags + (null_bit_pos + 7) / 8;
|
share->null_bytes= null_pos - (uchar*) outparam->null_flags + (null_bit_pos + 7) / 8;
|
||||||
|
share->last_null_bit_pos= null_bit_pos;
|
||||||
|
|
||||||
/* The table struct is now initialized; Open the table */
|
/* The table struct is now initialized; Open the table */
|
||||||
error=2;
|
error=2;
|
||||||
|
@ -141,7 +141,7 @@ typedef struct st_table_share
|
|||||||
enum tmp_table_type tmp_table;
|
enum tmp_table_type tmp_table;
|
||||||
|
|
||||||
uint blob_ptr_size; /* 4 or 8 */
|
uint blob_ptr_size; /* 4 or 8 */
|
||||||
uint null_bytes;
|
uint null_bytes, last_null_bit_pos;
|
||||||
uint key_length; /* Length of table_cache_key */
|
uint key_length; /* Length of table_cache_key */
|
||||||
uint fields; /* Number of fields */
|
uint fields; /* Number of fields */
|
||||||
uint rec_buff_length; /* Size of table->record[] buffer */
|
uint rec_buff_length; /* Size of table->record[] buffer */
|
||||||
|
Reference in New Issue
Block a user