You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Todd Lipcon (Created) (JIRA)" <ji...@apache.org> on 2011/10/11 22:51:12 UTC

[jira] [Created] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

metrics2 class names inconsistent between trunk and 20x
-------------------------------------------------------

                 Key: HADOOP-7734
                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
             Project: Hadoop Common
          Issue Type: Bug
          Components: metrics
    Affects Versions: 0.20.205.0, 0.23.0
            Reporter: Todd Lipcon
            Priority: Critical


The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Luke Lu (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125473#comment-13125473 ] 

Luke Lu commented on HADOOP-7734:
---------------------------------

bq. HBase is stuck using metrics1 until all of our users move to 0.23, since we need to support both 20 and 23, and the metrics2 API is incompatible.

OK, you can add metrics2.1 support in 0.20x along with the older metrics2.0 API that'd be deprecated. HBase can use the nice new metrics 2.1 API for both 0.20x and 0.23+ lines. I prefer this instead of the other way around to keep the newer branches clean :)

                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Todd Lipcon (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125386#comment-13125386 ] 

Todd Lipcon commented on HADOOP-7734:
-------------------------------------

Some examples:
- JvmMetricsSource vs JvmMetrics
- MetricMutableStat* vs MutableStat*
- MetricsBuilder vs MetricsCollector
maybe some others
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Luke Lu (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13126054#comment-13126054 ] 

Luke Lu commented on HADOOP-7734:
---------------------------------

It's possible but this involves evolving metrics2.1 a bit more to avoid name conflicts. It's gonna be quite ugly though.
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Luke Lu (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125387#comment-13125387 ] 

Luke Lu commented on HADOOP-7734:
---------------------------------

Actually the metrics2 framework is first checked into 20x branch and then some API evolved for good reasons in trunk and then 0.23, which was explicitly marked as incompatible changes. I personally don't want to support 0.20x style plugins and prefer giving a more explicit upgrade message, which is reasonable. Supporting both would make 0.23/trunk code very ugly.
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Luke Lu (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125413#comment-13125413 ] 

Luke Lu commented on HADOOP-7734:
---------------------------------

bq. can't we backport the improvements into 20x as well? What's the point of having them in 20x if no one can adopt them without breaking in the next version?

Well, backporting to 20x say 206 would break existing plugins in production for previous 20x releases (203-205 and some previous Y releases). 0.20 to 0.23 is a considered a major release change and people expect things (especially none end-user facing stuff like metrics) break a little :) 0.23 already requires major deployment/config changes, of which metrics is a only a small part.
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Todd Lipcon (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125394#comment-13125394 ] 

Todd Lipcon commented on HADOOP-7734:
-------------------------------------

it's unfortunate that such a new API in 20x is already incompatible with 23... can't we backport the improvements into 20x as well? What's the point of having them in 20x if no one can adopt them without breaking in the next version?
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Todd Lipcon (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125504#comment-13125504 ] 

Todd Lipcon commented on HADOOP-7734:
-------------------------------------

Is it possible to backport "metrics2.1" in such a way that "metrics2.0" isn't broken in the process? I don't know the APIs well enough.
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Luke Lu (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125409#comment-13125409 ] 

Luke Lu commented on HADOOP-7734:
---------------------------------

bq. Some examples

For new code (0.23+), the new style (with annotations) API is recommended.

The only two API changes that affect plugins are: 
# Metric -> AbstractMetric because I decide to use Metric for annotation.
# MetricsVisitor method signatures because I didn't understand Java generics very well :)


                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (HADOOP-7734) metrics2 class names inconsistent between trunk and 20x

Posted by "Todd Lipcon (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-7734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13125431#comment-13125431 ] 

Todd Lipcon commented on HADOOP-7734:
-------------------------------------

bq. The only two API changes that affect plugins are:

It's not just sink plugins that are affected, but any applications that want to build against metrics. For example, HBase is stuck using metrics1 until all of our users move to 0.23, since we need to support both 20 and 23, and the metrics2 API is incompatible.

bq. 203-205 and some previous Y releases
Serves them right for developing a major new subsystem on 20 instead of trunk :P
                
> metrics2 class names inconsistent between trunk and 20x
> -------------------------------------------------------
>
>                 Key: HADOOP-7734
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7734
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: metrics
>    Affects Versions: 0.20.205.0, 0.23.0
>            Reporter: Todd Lipcon
>            Priority: Critical
>
> The new metrics2 framework was backported into the 20x branch, but the class names differ between the two branches. So, if anyone were to build against the metrics2 API in 20x, it would break when they upgraded to 23. We should reconcile the two so that they are API-compatible.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira