This is just an observation, and if anyone’s got any ideas or suggestions do let me know.
I’m working on a FIM Sync service that I’ve upgraded from ILM by the database transfer method. I had to recreate one MA completely, and re-import and re-join all it’s objects.
I was running some csexports against a few of the MAs to get info about pending exports and noticed this:
- csexport against the upgraded MAs was extremely slow, but
- csexport against the new MA was super fast.
The MAs all have roughly similar numbers of objects (15-20k) and the number of pending exports for each MA was in the low hundreds.
So why the big difference?
My first theory was that the data for the upgraded MAs was scattered around in the DB, while the re-imported MA had nicely consecutive rows. So I deleted and re-imported the CS for one of the upgraded MAs. Result: csexport still slow.
I wondered if perhaps the upgraded MAs had some structural hangover from ILM that slowed them down – but nothing jumps out at me in the database, and when I ran a SQL trace while running the csexports I could see the same stored procedure being called for all of them.
So I’m still stumped. I suppose another good test would be to completely delete and re-create one of the MAs – but I’m not going to slow this project down just to satisfy my curiosity.
If anyone has any ideas about what’s going on I’d be glad to hear!
Interesting. Try rebuilding the indexes after the import but before the csexport.
It’s a good idea. Project has finished so I won’t get to try straight away but next time I’m back there I’ll give it a go.