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

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

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

Anton Vinogradov (Jira)
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)