> > Couple more comments:
> >
> > The page printer utility starts & commits MTRs, for example i
> > ib_page_load_table_for_id(). How does that work since we are not allowed to
> > write to the log in the utility?
> >
>
> As long as page printer doesn't make changes to buffer pool pages, mtr_commit
> doesn't write to log.
No way to avoid creating those MTRs and passing NULL MTRs around? Or asserting that MTR did not write anything?
> > How do you plan automating testing this, both as standalone utility and GDB
> > entry points in the XB binary?
>
> We should think about it:)
I see two ways, with distinct advantages and disadvantages:
1) Provide entry to those functions through some new XB command-line options. Then test those options.
2) Script gdb to call these functions.
The latter is closer to the actual use case but the former might be enough perhaps?
> > Couple more comments: load_table_ for_id( ). How does that work since we are not allowed to
> >
> > The page printer utility starts & commits MTRs, for example i
> > ib_page_
> > write to the log in the utility?
> >
>
> As long as page printer doesn't make changes to buffer pool pages, mtr_commit
> doesn't write to log.
No way to avoid creating those MTRs and passing NULL MTRs around? Or asserting that MTR did not write anything?
> > How do you plan automating testing this, both as standalone utility and GDB
> > entry points in the XB binary?
>
> We should think about it:)
I see two ways, with distinct advantages and disadvantages:
1) Provide entry to those functions through some new XB command-line options. Then test those options.
2) Script gdb to call these functions.
The latter is closer to the actual use case but the former might be enough perhaps?