2022-10-13
| ||
15:52 | • New ticket [9004c56d24] runconfigs should be read only once. artifact: f04987176b user: mmgraham | |
Ticket Hash: | 9004c56d2442959f35c265db750b9b935bc4dccb | |||
Title: | runconfigs should be read only once | |||
Status: | Open | Type: | Code_Defect | |
Severity: | Severe | Priority: | ||
Subsystem: | Resolution: | |||
Last Modified: | 2022-10-13 15:52:34 | |||
Version Found In: | 1.70/07 | |||
Description: | ||||
From Robert:
There is a real issue with the time it takes megatest to process runconfigs.
Every #{shell ...} command is processed in every target from every included file even if the target is not the one being run, or a simple -list-targets is given on the command line. To make matters worse, when running a regression, not only does the main megatest "mtest" call processes runconfigs, so does any server started by the regression run. And if it takes a LONG time to process the runconfigs, the regression run will spend a lot of time waiting for the server to start. Every single call to megatest, whether its to start the regression, or start a server, or whatever, is subject to the time it takes to process the runconfig files. The parsing of runconfigs should happen 1 time per session, and the evaluation of value should only happen 1 time and when its needed/used (there should not be a global evaluation of all parameters across all targets unless there is some kind of dump operation occurring). While I appreciate that there was some original reason/intent for re-parsing the runconfigs the entire process is leading to a substantial performance issues in regression runs. Even if there is a need to re-evaluate a variable value, there should be a means of indicating so, like: VAR #{eval ...} Something needs to be done to improve performance of reading the runconfigs. |