Dear Gerlit,
unfortunately I am not a H2 developper but just an user like you.
However, my company runs several large H2 databases and we operated 15+ GB instances in the past. From this experience, my own observations are:
1) MVCC has a problem when writing large commits into indexed tables ("write amplification"). Drop the indexes before writing and you will be fine.
2) At least the latest GIT Snapshot of 2.0.201+ seems to be stable and I have not been able to corrupt a H2 DB since April this year (related to the developing H2 code, not related to the H2 user time). Although I also experience such corruptions with 1.4.200/199. But I was never able to prove it or to provide reliable test cases, so it is more like an anecdote.
Please indicate at least, what exact H2 version you are using and also the exact connection string.
3) I have never used"nioMapped", just plain Single File Access or Server Mode.
4) I can not confirm your "reads into memory" observation. I was able to open very large DBs with reasonable small Heaps, but of course only has long as the Commits are small.
5) not sure, but I believe you still can use PageStore but have to define it in the connection string and it will be incompatible with MVCC. I might be wrong on this, have not much interest in it.
Best regards
Andreas