sorting descriptors only when they need to be read