Thursday, April 10, 2014

CIL generation: Duplicate type name within an assembly.

Issue Definition:
I have been trying to generate a FULL CIL into our working live environment and suddenly it started giving me the following error;
                          CIL generation: Duplicate type name within an assembly.
Assessments:
I did the following steps:

1- Strong recommendation, apply latest kernel build. Download link:


Package:
-----------------------------------------------------------
KB Article Number (s) : 2957061
Language: All (Global)
Platform: i386
Location: ( http://hotfixv4.microsoft.com/Microsoft%20Dynamics%20AX%202012%20R2/nosp/KB2957061/6.2.1000.7176/free/474249_intl_i386_zip.exe )

2- To improve Compilation speed I did following changes :

- For the full compile not catching all the syntax errors, please follow the  X++ code workaround suggestion:

Under \Classes\SysCompilerOutput\startCompilation
Simply delete or out comment the marked line completely.



  
  
-For the CIL compiler performance:

-      Make sure that the “Client/Server trace” under the client options is unchecked.



-      Change the tier  from “client” to  “server” on \Classes\SysCompileIL\dumpParallelBulkn method.


- Further improvements is provided under: http://blogs.msdn.com/b/axtools/
3- For the full CIL generation failure:

  1. Stop all AX client sessions
  2. Stop all AOS services
  3. Take a copy of XPPIL folder
  4. Take a copy of Model database
  5. Delete content of XPPIL folder
  6. Truncate SYSXPPAssembly table from SQL backend
  7. Retsart AOS
  8. Restart AX client
  9. Complete full XPP compilation
  10. Completet full CIL generation
Happy Daxing!