Skip to content

Export Job State Flow

BluePsyduck edited this page Feb 19, 2021 · 2 revisions

This page describes the states an export job goes through until either its data has been successfully added to the main API's database, or it got cancelled due to an unexpected error or behavior.

The following image shows the states of an export job and how they are changed:

The states have the following meaning:

  • queued: The export job has been newly created, and is currently queued for further processing. The Export component is looking for this status to get new jobs to process.

  • downloading: The Export is currently downloading the required mods from the Factorio Mod Portal to process the export job. This means that the export job is no longer queued, but already worked on.

  • processing: The Export is currently processing the job by launching the Factorio game and parsing the received data. This also includes rendering all the icons. Depending on the number of mods and their size, this step can take several minutes, especially considering the Export machine is not that powerful regarding its performance.

  • uploading: The Export finished gathering and processing all the data, and is currently uploading it to the FTP space.

  • uploaded: The Export finished uploading the data, and thus completed its part on the export job. The Data API Import is looking for this status to further process the jobs. While technically export jobs in this state build a second queue, it won't really fill up as the API Import is quicker with importing the data into the database than the export can run the Factorio game to gather the data.

  • importing: The Data API Import is currently writing all the data to the API database.

  • done: The export job has been fully processed, and its data is available for the Portal Frontend to be displayed. This state is final and no further steps will be done on this export job. Enjoy your data!

  • error: An error occurred in any of the other states, and further processing is not possible. The export job will contain an error message (hopefully) describing what happened.