I use assertion here more as a documentation. If nobody changes the code, this assertion will always be true. I hope that others that are changing the code have assertions enabled when changing this code.
It would be a waste of CPU cycles to use Preconditions here. Since assertions are a language construct, they are (hopefully) not evaluated when assertions are disabled.
If you absolutely don't want to have assertions in this code, I'd rather remove it. (because the method is only called if isInMemory() is true for the partition.