Skip to content
  • Marc Alff's avatar
    347661ec
    Bug#13509513 P_S STAGE INSTRUMENTATION DOES NOT HONOR ENABLED='NO' · 347661ec
    Marc Alff authored
    When a stage instrument is disabled, PFS_stage_class::m_enabled is false.
    
    The code in pfs.cc, start_stage_v1(), however,
    still assigned a value to pfs->m_class, indicating that there is a current 
    stage instrumented, even for disabled stages.
    
    This confused the stage instrumentation which in fact continued to collect 
    data for stages, even when it is supposed to be disabled.
    Doing so produces runtime overhead and affect performances.
    
    The fix is to maintain properly pfs->m_class in start_stage_v1(),
    and in particular:
    - when a stage is complete, mark it as such with a NULL
    - when a new stage starts, only mark it as instrumented after the test for
      new_klass->m_enabled.
    
    Added a functional test start_server_disable_stages.
    Added similar tests for code coverage, for other types of instrumentation.
    347661ec
    Bug#13509513 P_S STAGE INSTRUMENTATION DOES NOT HONOR ENABLED='NO'
    Marc Alff authored
    When a stage instrument is disabled, PFS_stage_class::m_enabled is false.
    
    The code in pfs.cc, start_stage_v1(), however,
    still assigned a value to pfs->m_class, indicating that there is a current 
    stage instrumented, even for disabled stages.
    
    This confused the stage instrumentation which in fact continued to collect 
    data for stages, even when it is supposed to be disabled.
    Doing so produces runtime overhead and affect performances.
    
    The fix is to maintain properly pfs->m_class in start_stage_v1(),
    and in particular:
    - when a stage is complete, mark it as such with a NULL
    - when a new stage starts, only mark it as instrumented after the test for
      new_klass->m_enabled.
    
    Added a functional test start_server_disable_stages.
    Added similar tests for code coverage, for other types of instrumentation.
Loading