After an in place upgrade from AX2012R2 to AX2012R3, I was receiving lots of error messages when CIL compiling or dealing with the AIF.
Cannot create temporrary file c:\program files (x86)\Microsoft Dynamics AX\60\Client\app\standard\temp\$tmp0003ffff.$$$. The disk may be full
There is an excellent article by Alex Kwitny on the subject of EDT relations that are damaged after an upgrade. Article
During a recent client upgrade from AX4 to AX2012, had a problem with performance with the upgrade wizard. On the Prepare Application for Preprocessing at the Prepare financial dimension framework step the bottom of the screen, dimension numbers, took 20+ minutes when pressing the upgrade validate button.
The client had 300+ companies, each with many financial dimensions, which resulted in building 180,000+ records in the migration tables. When reviewing the code that builds this information, class LedgerFrameworkSetupHelper, method setupDimensionMergeTable, the records were being read and inserted one at a time, and not using the bulk insert controls. this causes high load on SQL and is also very inefficient.
Changing the code to use the RecordInsertList so records could be bulk inserted, reduced load time by 94% to just over 1 minutes. This means the SQL server was much more efficiently being used, and the time spent waiting for data to be loaded significantly reduced.
So if you are planning to do an upgrade from AX4 to AX2012, and have lots of companies, then consider modify the code to use the bulk insert commands.