fixed ranking with a datastore cache