The check
ut_ad(trx_sys->descr_n_used <= UT_LIST_GET_LEN(trx_sys->rw_trx_list));
in trx_commit_in_memory() happens outside trx_sys->mutex protection.
The check
ut_ad( trx_sys- >descr_ n_used <= UT_LIST_ GET_LEN( trx_sys- >rw_trx_ list));
in trx_commit_ in_memory( ) happens outside trx_sys->mutex protection.