I submitted a bug ticket and it was closed with following reason:
Caching requires the backing RDD. That requires we also know the
backing partitions, and this is somewhat special for a global order:
it triggers a job (scan) because we need to determine the partition
bounds.