Hello,
Context
In our Biovia system, Chemical registration of a simple compound can take more than 2 minutes. Let's say that a simple compound with a molweight < 400 (less than 25 atoms of Carbon).
And it can take much longer for large molecules like peptides.
Then, I am starting to investigate if we can optimize this process.
Rules
We are using pre-defined rules, and we have put in place some customized rules :
Most of those customized rules are only propagating attributes between Concept and Lot.
And I wanted to see if there is not rule which is not too much time consuming.
Then, for my investigation, I have started to register the time when a rule is called, in a log file. I have added these 3 components in the rule 'Calculate Weight and Formula'.
component 1 : create a new property LogDate
component 2 : Add a new line in log file with the time (LogDate)
component 3 : remove the property LogDate
When this rule is running, there is this line in a logfile :
[Fri Oct 11 15:30:21 2024] .14360.7360: Debug: Start Calculate Weight and Formula
I was surprised to see that for an update of a simple compound, there are 410 new lines in the logfile :
From
[Fri Oct 11 15:30:21 2024] .14360.7360: Debug: Start Calculate Weight and Formula
To
[Fri Oct 11 15:32:09 2024] .7148.4444: Debug: Start Calculate Weight and Formula
Question(s)
I assume that the rule is running 410 times for this update. Am I correct ?
If yes, is it a normal behaviour ?
Would there be something that I could improve here ?
In the documentation, there is a note advising to : 'For performance reasons, ensure that each attribute value is only changed once during population and correction'. How could I verify this point ?
Thanks,
Sébastien.