29 #include "read0read.ic"
191 heap,
sizeof(*view) + n *
sizeof(*view->
trx_ids)));
231 memcpy(clone, view, sz);
257 ut_ad(read_view_validate(view));
266 if (prev_elem == NULL) {
270 view_list,
trx_sys->view_list, prev_elem, view);
273 ut_ad(read_view_list_validate());
289 ut_ad(trx->in_rw_trx_list);
329 read_view_open_now_low(
388 view = read_view_open_now_low(cr_trx_id, heap);
412 ulint insert_done = 0;
418 if (oldest_view == NULL) {
420 view = read_view_open_now_low(0, heap);
431 ut_ad(read_view_validate(oldest_view));
443 for (i = 0; i < oldest_view->
n_trx_ids; ++
i) {
446 id = oldest_view->
trx_ids[i - insert_done];
448 if (insert_done == 0 && creator_trx_id >
id) {
456 if (insert_done == 0) {
511 "High-granularity read view undo_n:o " TRX_ID_FMT "\n",
514 fprintf(stderr,
"Normal read view\n");
517 fprintf(stderr,
"Read view low limit trx n:o " TRX_ID_FMT "\n",
520 fprintf(stderr,
"Read view up limit trx id " TRX_ID_FMT "\n",
523 fprintf(stderr,
"Read view low limit trx id " TRX_ID_FMT "\n",
526 fprintf(stderr,
"Read view individually stored trx ids:\n");
530 for (i = 0; i < n_ids; i++) {
531 fprintf(stderr,
"Read view trx id " TRX_ID_FMT "\n",
645 if (UNIV_LIKELY(curview != NULL)) {