xf_session_activity is a Memory table. This means it has the same behaviour as a MyISAM table and uses full-table locks (ref).
Mixing MyISAM and InnoDB has some performance implications; forcing the query to wait for any full-table locks which occur against xf_session_activity. As xf_session_activity updates existing rows throughput the table (rather than append as a log), this table locks quite often.
This means, viewing any thread or conversation can potentially be required to wait for the xf_session_activity to clear it's full-table locks. And those same queries can block writes to xf_session_activity until the read completes.
Mixing MyISAM and InnoDB has some performance implications; forcing the query to wait for any full-table locks which occur against xf_session_activity. As xf_session_activity updates existing rows throughput the table (rather than append as a log), this table locks quite often.
This means, viewing any thread or conversation can potentially be required to wait for the xf_session_activity to clear it's full-table locks. And those same queries can block writes to xf_session_activity until the read completes.