You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksey Plekhanov (Jira)" <ji...@apache.org> on 2020/09/07 15:18:00 UTC

[jira] [Created] (IGNITE-13411) Optimize tracing when NoopTracingSpi is used

Aleksey Plekhanov created IGNITE-13411:
------------------------------------------

             Summary: Optimize tracing when NoopTracingSpi is used
                 Key: IGNITE-13411
                 URL: https://issues.apache.org/jira/browse/IGNITE-13411
             Project: Ignite
          Issue Type: Improvement
    Affects Versions: 2.9
            Reporter: Aleksey Plekhanov
            Assignee: Aleksey Plekhanov


Current tracing implementation has some redundant actions for no-op tracing SPI which have a negative impact on performance: 
# {{GridNioTracerFilter}} added to communication SPI filters chain even if tracing is disabled.
# {{MTC.support}}/{{MTC.supportContinual}} methods in case of no-op span or null span return {{TracingSurrounding}} which equivalently does nothing ({{span.set(oldSpan)}} is redundant, since {{span.set(startSpan)}} was skipped for no-op or null span, and {{endRequired}} is always {{false}}. So, instead of creating new {{TracingSurrounding}} we can return {{null}} (correctly processed by try-with resource block) with the same effect and get rid of some code on the hot path.  
# Sometimes we already have {{Span}} on hands and call to {{MTC.span()}} is redundant.




--
This message was sent by Atlassian Jira
(v8.3.4#803005)