You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by "Pavel Kovalenko (JIRA)" <ji...@apache.org> on 2018/11/30 10:33:00 UTC

[jira] [Created] (IGNITE-10493) Refactor exchange stages time measurements

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)