When does Gateway Startup Script run?

8.0.16 (b2020082513)

The Gateway Startup Script documentation says:

The Startup Script event runs at the startup of the Gateway. Additionally, if the project is restarted in someway, such as by making a change to a Gateway Event Script and saving, then the Startup Script will be called. This means that while editing scripts frequently in the Designer, the startup and shutdown events may happen frequently.

This leads me to believe that it only runs if I make a change to a “Gateway Event Script”, but I have found that whenever I edit any script in my project library, it causes the Startup Script to run.

For context, I have an inherited project that has a gateway startup script that calls a function that is in the parent project library. And the parent project library is also the Gateway Scripting project.

The child project does not override any resources from the parent scripting project library. I am editing the scripts in the parent project designer.

My first two thoughts is that:

  1. It may be because I am updating the function that the script is calling, so the startup script also updates and causes it to run. (Again I am not changing the gateway startup script, just a regular script in the project library.

  2. Because the parent project’s project library is the Gateway Scripting Project, any updates to it is technically a change to a “Gatewat Event Script”, thus causing the Startup Script to run.

Am I running into a bug or does the documentation fall short of the actual behavior or am I just confused?


8.0.16 (b2020082513)

Scripting restarts are the creation of new jython interpreter instances, so this is expected behavior. Any edit to any script module or event involved, leaf or inherited, will trigger a restart, and the new interpreter has to load everything.