Skip to content
  • Sivert Sorumgard's avatar
    d23f1d85
    Bug#31587625: PERFORMANCE DEGRADATION AFTER WL14073 · d23f1d85
    Sivert Sorumgard authored
    WL#14073 caused a performance degradation due to unnecessary
    DD object allocation and deallocation while checking if a
    given user is referenced as definer by some DD entity.
    
    This patch implements a different strategy for checking if a
    user is referenced by DD entities:
    
    - An index is defined for the relevant columns in the DD tables.
    - Dedicated object keys are created to search the indexes.
    - Function templates are added to check if an index lookup for
      the relevant DD object types has a result set.
    - It is not necessary to open the result set, its mere existence
      is enough to conclude the given user is referenced.
    
    It should be noted that due to the addition of the DD table
    indexes, the DD version number has to be incremented. This also
    requires some MTR DD upgrade tests to be extended or modified.
    
    Approved by: Dmitry Lenev <dmitry.lenev@oracle.com>
    d23f1d85
    Bug#31587625: PERFORMANCE DEGRADATION AFTER WL14073
    Sivert Sorumgard authored
    WL#14073 caused a performance degradation due to unnecessary
    DD object allocation and deallocation while checking if a
    given user is referenced as definer by some DD entity.
    
    This patch implements a different strategy for checking if a
    user is referenced by DD entities:
    
    - An index is defined for the relevant columns in the DD tables.
    - Dedicated object keys are created to search the indexes.
    - Function templates are added to check if an index lookup for
      the relevant DD object types has a result set.
    - It is not necessary to open the result set, its mere existence
      is enough to conclude the given user is referenced.
    
    It should be noted that due to the addition of the DD table
    indexes, the DD version number has to be incremented. This also
    requires some MTR DD upgrade tests to be extended or modified.
    
    Approved by: Dmitry Lenev <dmitry.lenev@oracle.com>
Loading