Pavel Kovalenko created IGNITE-10493:
----------------------------------------

             Summary: Refactor exchange stages time measurements
                 Key: IGNITE-10493
                 URL: https://issues.apache.org/jira/browse/IGNITE-10493
             Project: Ignite
          Issue Type: Improvement
          Components: cache
    Affects Versions: 2.7
            Reporter: Pavel Kovalenko
             Fix For: 2.8


At the current implementation, we don't cover and measure all possible code 
executions that influence on PME time. Instead of it we just measure the 
hottest separate parts with the following hardcoded pattern:
{noformat}
long time = currentTime();
... // some code block
print ("Stage name performed in " + (currentTime() - time));
{noformat}

This approach can be improved. Instead of declaring time variable and print the 
message to log immediately we can introduce a utility class (TimesBag) that 
will hold all stages and their times. The content of TimesBag can be printed 
when the exchange future is done.

As exchange is a linear process that executes init stage by exchange-worker and 
finish stage by one of the sys thread we can easily cover all exchange code 
base by time cutoffs.




--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to