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

Bob Briody commented on TINKERPOP3-651:
---------------------------------------

[~mbroecheler] [~okram]

There is a little chicken-and-egg situation here when attempting to make the 
Metrics available to the upstream step. For example, Titan wants to augment the 
GraphStep's Metrics with info about index utilization. 

A VendorStrategy must execute before the ProfileStrategy so that the 
ProfileSteps can be injected correctly after step folding. In contrast, this 
precludes a VendorStrategy from easily knowing that profiling is enabled and 
getting a handle to the Metrics object for each step (because it hasn't been 
created yet).

Possible options
* Have steps that want to extend profile functionality implement a Profileable 
interface. ProfileStrategy would check for this and initialize the step w/ the 
parent Metrics.
* Have vendors add another strategy that runs after ProfileStrategy.
* Have steps initialize themselves when first invoked during iteration.


Thoughts? Better ideas?

> TraversalMetrics framework is not sufficient for vendor extension
> -----------------------------------------------------------------
>
>                 Key: TINKERPOP3-651
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP3-651
>             Project: TinkerPop 3
>          Issue Type: Bug
>          Components: process
>            Reporter: Bob Briody
>            Assignee: Bob Briody
>            Priority: Minor
>             Fix For: 3.0.0.GA
>
>
> The StandardTraversalMetrics class must provide the necessary getters to 
> enable a vendor to augment the Metrics data.
> As of right now the API is missing a way for vendors to obtain the actual 
> (not computed) metrics.
> In order to ensure there are no other omissions, there should be a test case 
> that mocks a vendor's behavior and augments the TraversalMetrics.



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

Reply via email to