[ 
https://issues.apache.org/jira/browse/IGNITE-12183?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Maxim Muzafarov updated IGNITE-12183:
-------------------------------------
    Description: 
h3. Intro
Currently, some of the Apache Ignite rebalance process metrics are not working 
well enough. For instance, `EstimatedRebalancingKeys` keys time to time returns 
`-1` value due to a bug, or `rebalanceKeysReceived` metric treated as 
CacheMetric in fact calculated for the whole cache group (e.g. historical 
rebalance, see IGNITE-11330 and code block comment below). 

All the rebalance process metrics must be re-worked.

{code:java}
    /**
     * Update rebalancing metrics.
     */
    private void updateGroupMetrics() {
        // TODO: IGNITE-11330: Update metrics for touched cache only.
        // Due to historical rebalancing "EstimatedRebalancingKeys" metric is 
currently calculated for the whole cache
        // group (by partition counters), so "RebalancedKeys" and 
"RebalancingKeysRate" is calculated in the same way.
        for (GridCacheContext cctx0 : grp.caches()) {
            if (cctx0.statisticsEnabled())
                cctx0.cache().metrics0().onRebalanceKeyReceived();
        }
    }
{code}

h3. What we have
_CacheMetrics_ - statistics must be enabled to see these metrics.
* getRebalancedKeys
* getKeysToRebalanceLeft
* getEstimatedRebalancingKeys
* getEstimatedRebalancingFinishTime
* getRebalancingStartTime
* getRebalanceClearingPartitionsLeft
* getRebalancingKeysRate
* getRebalancingBytesRate

h3. What to do

All such metrics (or their analogue) must be available for the 
_CacheGroupMetrics_. I'd suggest to do the following:

# Phase-1
#* rebalancingPartitionsLeft long metric
#* rebalancingReceivedKeys long metric
#* rebalancingReceivedBytes long metric
#* rebalancingStartTime long metric
#* rebalancingFinishTime long metric
#* rebalancingLastCancelledTime  long metric
# Phase-2
#* rebalancingExpectedKeys long metric
#* rebalancingExpectedBytes long metric
#* rebalancingEvictedPartitionsLeft long metric
# Phase-3 (statistics must be enabled)
#* rebalancingKeysRate HitRate metric
#* rebalancingBytesRate HitRate metric
# Phase-4
#* Mark rebalancing _CacheMetrics_ deprecated and remove from metrics framework 
IGNITE-11961.





  was:
h3. Intro
Currently, some of the Apache Ignite rebalance process metrics are not working 
well enough. For instance, `EstimatedRebalancingKeys` keys time to time returns 
`-1` value due to a bug, or `rebalanceKeysReceived` metric treated as 
CacheMetric in fact calculated for the whole cache group (e.g. historical 
rebalance, see IGNITE-11330 and code block comment below). 

All the rebalance process metrics must be re-worked.

{code:java}
    /**
     * Update rebalancing metrics.
     */
    private void updateGroupMetrics() {
        // TODO: IGNITE-11330: Update metrics for touched cache only.
        // Due to historical rebalancing "EstimatedRebalancingKeys" metric is 
currently calculated for the whole cache
        // group (by partition counters), so "RebalancedKeys" and 
"RebalancingKeysRate" is calculated in the same way.
        for (GridCacheContext cctx0 : grp.caches()) {
            if (cctx0.statisticsEnabled())
                cctx0.cache().metrics0().onRebalanceKeyReceived();
        }
    }
{code}

h3. What we have
_CacheMetrics_ - statistics must be enabled to see these metrics.
* getRebalancedKeys
* getKeysToRebalanceLeft
* getEstimatedRebalancingKeys
* getEstimatedRebalancingFinishTime
* getRebalancingStartTime
* getRebalanceClearingPartitionsLeft
* getRebalancingKeysRate
* getRebalancingBytesRate

h3. What to do

All such metrics (or their analogue) must be available for the 
_CacheGroupMetrics_. I'd suggest to do the following:

# Phase-1
#* rebalancingPartitionsLeft long metric
#* rebalancingReceivedKeys long metric
#* rebalancingReceivedBytes long metric
#* rebalancingStartTime long metric
#* rebalancingFinishTime long metric
# Phase-2
#* rebalancingExpectedKeys long metric
#* rebalancingExpectedBytes long metric
#* rebalancingEvictedPartitionsLeft long metric
# Phase-3 (statistics must be enabled)
#* rebalancingKeysRate HitRate metric
#* rebalancingBytesRate HitRate metric
# Phase-4
#* Mark rebalancing _CacheMetrics_ deprecated and remove from metrics framework 
IGNITE-11961.






> Rebalancing process metrics for cache groups
> --------------------------------------------
>
>                 Key: IGNITE-12183
>                 URL: https://issues.apache.org/jira/browse/IGNITE-12183
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Aleksandr Brazhnikov
>            Priority: Major
>              Labels: IEP-35
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> h3. Intro
> Currently, some of the Apache Ignite rebalance process metrics are not 
> working well enough. For instance, `EstimatedRebalancingKeys` keys time to 
> time returns `-1` value due to a bug, or `rebalanceKeysReceived` metric 
> treated as CacheMetric in fact calculated for the whole cache group (e.g. 
> historical rebalance, see IGNITE-11330 and code block comment below). 
> All the rebalance process metrics must be re-worked.
> {code:java}
>     /**
>      * Update rebalancing metrics.
>      */
>     private void updateGroupMetrics() {
>         // TODO: IGNITE-11330: Update metrics for touched cache only.
>         // Due to historical rebalancing "EstimatedRebalancingKeys" metric is 
> currently calculated for the whole cache
>         // group (by partition counters), so "RebalancedKeys" and 
> "RebalancingKeysRate" is calculated in the same way.
>         for (GridCacheContext cctx0 : grp.caches()) {
>             if (cctx0.statisticsEnabled())
>                 cctx0.cache().metrics0().onRebalanceKeyReceived();
>         }
>     }
> {code}
> h3. What we have
> _CacheMetrics_ - statistics must be enabled to see these metrics.
> * getRebalancedKeys
> * getKeysToRebalanceLeft
> * getEstimatedRebalancingKeys
> * getEstimatedRebalancingFinishTime
> * getRebalancingStartTime
> * getRebalanceClearingPartitionsLeft
> * getRebalancingKeysRate
> * getRebalancingBytesRate
> h3. What to do
> All such metrics (or their analogue) must be available for the 
> _CacheGroupMetrics_. I'd suggest to do the following:
> # Phase-1
> #* rebalancingPartitionsLeft long metric
> #* rebalancingReceivedKeys long metric
> #* rebalancingReceivedBytes long metric
> #* rebalancingStartTime long metric
> #* rebalancingFinishTime long metric
> #* rebalancingLastCancelledTime  long metric
> # Phase-2
> #* rebalancingExpectedKeys long metric
> #* rebalancingExpectedBytes long metric
> #* rebalancingEvictedPartitionsLeft long metric
> # Phase-3 (statistics must be enabled)
> #* rebalancingKeysRate HitRate metric
> #* rebalancingBytesRate HitRate metric
> # Phase-4
> #* Mark rebalancing _CacheMetrics_ deprecated and remove from metrics 
> framework IGNITE-11961.



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

Reply via email to