UStaticMesh::ExecutePostLoadInternal seems to duplicate work because of cache key issue related to SectionInfoMap

I noticed that UStaticMesh::ExecutePostLoadInternal spends a lot of time in UStaticMesh::ClearAllCachedCookedPlatformData:

In this case we are only building data for a single target (Windows Editor). I discovered that inside GetPlatformStaticMeshRenderData, the cache key used to find the platform render data differs only by a single character from the one stored in the static mesh: the original ends in SWLZ_ and the platform one ends in SWLZ_0. I tracked this down to the value inserted by the SectionInfoMap.

Sure enough, in a single call to ExecutePostLoad, it first generates a cache key and imports the static mesh with an empty SectionInfoMap, and then later when it goes to clear the nanite data the SectionInfoMap has been populated and the cache key is different, so the mesh gets imported again.