In my storage engine, when the server calls write_row, I read the
first field of the row in order to index on this field. I do it in the
Field **field = table->field;
long index = (*field)->val_int();
It works perfectly in release mode, but in debug mode val_int
generates ASSERT_COLUMN_MARKED_FOR_READ assertion (which is: "(!table
|| (!table->read_set || bitmap_is_set(table->read_set, field_index))),
function val_int, file field.cc, line 3682.")
What am I doing wrong? Do I need to mark the column for reading first?
Why? How does this affect the behavior of the server?