Edit online

Problem

A DITA transformation takes an extremely long time to process (over an hour, for example).

Cause

Large delays in DITA OT processing are usually caused by intensive disk operations, CPU usage, or connections to remote websites. The DITA OT processing is very disk-intensive, each stage takes the entire content from the transformation temporary files folder, reads it, modifies it, and then writes it back.

Solution

There are several things you can try to troubleshoot this problem:
  • If you are using a shared or remote drive, it is recommended to specify a local drive for the output and temporary files directory (edit the transformation scenario and in the Output tab, select a local directory for Temporary files directory and Output directory).
  • If you want to test if the publishing has a problem downloading remote resources, you could disable the network adapter on the computer and then try to publish. The purpose is to see if the publishing finishes without any reported error about obtaining a certain HTTP resource.
  • Using DTDs instead of XML Schemas is faster. This is because of a default transformation parameter called args.grammar.cache that only works for DTD-based DITA topics.
  • You can increase the memory available to Oxygen XML Editor plugin. Sometimes, just increasing the amount of memory available to the DITA OT process may be enough to lower the time necessary for the publishing to run.
  • You can enable some logging to help you determine which stage in the process is taking a long time. Edit the transformation scenario and in the Advanced tab, enter logger org.apache.tools.ant.listener.ProfileLogger in the Additional arguments field. Then go to Options > Preferences > DITA > Logging and select Always for the Show console output option.