Ondemand seems to be processing the form.yml.erb for every interactive app we have, even if the user isn’t using them.
For example, I have a piece of code in some of our applications forms that grabs all the partitions available for the user, and populates a form field with that data. If I am tailing the nginx error.log for that PUN, I will see the execve call on every one of those applications without doing anything.
It looks like everything in OOD causes this parse to happen. Logging into the dashboard, using the file app, every link clicked will cause these to trigger.
This is a big issue:
- As our list of applications gets bigger, even single calls in each one that would not be taxing to the system, now cause delays.
- Because these are compiled/parsed no matter what page you are on, if you have an application with ruby code that is broken, ALL of OOD is now broken, as that code is executed and causes failures no matter what part of the application you are using.
- This affects our production environment from a users sandbox. Any user that has something in their sandbox that is broken like this, will cause that user to no longer be able to access the OOD application until it is fixed.