Comment 23 for bug 1079596

Revision history for this message
Raghavendra D Prabhu (raghavendra-prabhu) wrote :

Now, that we have verified it, we need to see what should the behaviour be in this case -- whether to return DB_OUT_OF_FILE_SPACE or to spin and wait for disk space to be freed / quota to be increased (how mysql/myisam do). In former case (DB_OUT_OF_FILE_SPACE), there is still a high probability of it crashing again with an assertion failure (ex: btr_insert_on_non_leaf_level_func -- has a ut_a(err == DB_SUCCESS) and btr_cur_pessimistic_update has a ut_a(err == DB_SUCCESS) ).

Also, error handling is required in btr_cur_pessimistic_insert since btr_cur_pessimistic_insert doesn't seem to handle it well either

......
 } else {
  *rec = btr_page_split_and_insert(cursor, entry, n_ext, mtr);
 }
......
(big_rec needs to be set NULL as well as DB_OUT_OF_FILE_SPACE needs to be returned).