You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@edgent.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2016/06/17 23:42:05 UTC

[jira] [Commented] (QUARKS-189) Undesirable metric op injection

    [ https://issues.apache.org/jira/browse/QUARKS-189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15337229#comment-15337229 ] 

ASF GitHub Bot commented on QUARKS-189:
---------------------------------------

GitHub user vdogaru opened a pull request:

    https://github.com/apache/incubator-quarks/pull/139

    QUARKS-189 Do not inject counter metrics after a CounterOp

    

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/vdogaru/incubator-quarks QUARKS-189-vdogaru

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-quarks/pull/139.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #139
    
----
commit 3d4646b67d723583fc8df58e5714ad81c93a199b
Author: Victor Dogaru <vd...@apache.org>
Date:   2016-06-17T23:40:25Z

    QUARKS-189 Do not inject counter metrics after a CounterOp

----


> Undesirable metric op injection
> -------------------------------
>
>                 Key: QUARKS-189
>                 URL: https://issues.apache.org/jira/browse/QUARKS-189
>             Project: Quarks
>          Issue Type: Bug
>          Components: Runtime
>            Reporter: Dale LaBossiere
>            Assignee: Victor Dogaru
>            Priority: Minor
>              Labels: newbie
>
> [ Note related QUARKS-195 ]
> Manually added CounterOp or RateMeter oplets results in undesirable additional CounterOp (and StreamScope) injection in the DevelopmentProvider.  e.g.
> poll -> pipe(new CounterOp) /* Metrics.counter(stream) */ -> sink
> results in
> poll -> CounterOp -> StreamScope -> the-manual-CounterOp -> CounterOp -> StreamScope -> sink
> The injection code doesn't recognize that a counter op is already present - i.e., it treats the manual CounterOp (or a manual RateMeter) as any other oplet, resulting in injecting a CounterOp between it and the poll / sink.
> As it turns out, the manual CounterOp/RateMeter is included in the "counter metrics" retrieved by the Console and used for tuple-count info, so the additional injections aren't really needed... and they look odd in the Console because you see a sequence of 5 small rectangles... because the Console renders all metric ops as small rectangles whether they're injected or not.  Of course, one of the StreamScope injections is needed.
> I suspect all that's needed is to enhance Metric.counter(Topology)'s peekAll selector so that it excludes instanceof CounterOp and RateMeter.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)