Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
This commit is contained in:
commit
536b8405b7
@ -2178,9 +2178,9 @@ row_sel_store_mysql_rec(
|
|||||||
prebuilt->blob_heap = NULL;
|
prebuilt->blob_heap = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Mark all columns as not SQL NULL */
|
/* Mark all columns as SQL NULL */
|
||||||
|
|
||||||
memset(mysql_rec, '\0', prebuilt->null_bitmap_len);
|
memset(mysql_rec, 255, prebuilt->null_bitmap_len);
|
||||||
|
|
||||||
for (i = 0; i < prebuilt->n_template; i++) {
|
for (i = 0; i < prebuilt->n_template; i++) {
|
||||||
|
|
||||||
@ -2245,6 +2245,11 @@ row_sel_store_mysql_rec(
|
|||||||
mem_heap_free(extern_field_heap);
|
mem_heap_free(extern_field_heap);
|
||||||
extern_field_heap = NULL;
|
extern_field_heap = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (templ->mysql_null_bit_mask) {
|
||||||
|
mysql_rec[templ->mysql_null_byte_offset] &=
|
||||||
|
~(byte) (templ->mysql_null_bit_mask);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
/* MySQL seems to assume the field for an SQL NULL
|
/* MySQL seems to assume the field for an SQL NULL
|
||||||
value is set to zero. Not taking this into account
|
value is set to zero. Not taking this into account
|
||||||
@ -2252,17 +2257,11 @@ row_sel_store_mysql_rec(
|
|||||||
bug number 154 in the MySQL bug database: GROUP BY
|
bug number 154 in the MySQL bug database: GROUP BY
|
||||||
and DISTINCT could treat NULL values inequal. */
|
and DISTINCT could treat NULL values inequal. */
|
||||||
|
|
||||||
memset(mysql_rec + templ->mysql_col_offset, '\0',
|
memset(mysql_rec + templ->mysql_col_offset,
|
||||||
|
((templ->type == DATA_VARCHAR ||
|
||||||
|
templ->type == DATA_VARMYSQL ||
|
||||||
|
templ->type == DATA_BINARY) ? ' ' : '\0'),
|
||||||
templ->mysql_col_len);
|
templ->mysql_col_len);
|
||||||
|
|
||||||
if (!templ->mysql_null_bit_mask) {
|
|
||||||
fprintf(stderr,
|
|
||||||
"InnoDB: Error: trying to return an SQL NULL field in a non-null\n"
|
|
||||||
"innoDB: column! Table name %s\n", prebuilt->table->name);
|
|
||||||
} else {
|
|
||||||
mysql_rec[templ->mysql_null_byte_offset] |=
|
|
||||||
(byte) (templ->mysql_null_bit_mask);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user