You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tinkerpop.apache.org by "Bob Briody (JIRA)" <ji...@apache.org> on 2015/05/18 15:45:00 UTC

[jira] [Commented] (TINKERPOP3-688) ProfileTest fails on optimized queries

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

Bob Briody commented on TINKERPOP3-688:
---------------------------------------

This ticket makes perfect sense. I'm struggling to strike a balance between decent test coverage and generality across implementations. I haven't come up w/ anything clever yet for non-trivial test cases. [~spmallette] [~okram], any thoughts?

The only (bad) idea I've had so far is to move the tests to TinkerGraph, but that seems like a really poor hack.

> ProfileTest fails on optimized queries
> --------------------------------------
>
>                 Key: TINKERPOP3-688
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP3-688
>             Project: TinkerPop 3
>          Issue Type: Bug
>          Components: test-suite
>            Reporter: pieter martin
>            Assignee: Bob Briody
>             Fix For: 3.0.0.GA
>
>
> {code}ProfileTest.g_V_out_out_modern_profile{code} fails because it asserts the traversal as executed by TinkerGraph.
> As sqlg optimizes the query the metrics being asserted are incorrect.
> I doubt it will be possible to hardcode metrics in a generic test as different backends will have different behaviours.
> eg. Tinkergraph
> {code}pre-strategy:[GraphStep([],vertex), VertexStep(OUT,vertex), VertexStep(OUT,vertex), ProfileStep]
> post-strategy:[TinkerGraphStep([],vertex), ProfileStep, VertexStep(OUT,vertex), ProfileStep, VertexStep(OUT,vertex), ProfileStep]
> {code}
> eg. Sqlg
> {code}pre-strategy:[GraphStep([],vertex), VertexStep(OUT,vertex), VertexStep(OUT,vertex), ProfileStep]
> post-strategy:[SqlgGraphStep([],vertex), ProfileStep, SqlgVertexStepCompiled, ProfileStep]
> {code}
> As you can see the number of steps are not the same after the optimization.



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

Re: [jira] [Commented] (TINKERPOP3-688) ProfileTest fails on optimized queries

Posted by pieter-gmail <pi...@gmail.com>.
Perhaps the test framework can include some way in which the test is 
generic invoking abstract assertions which the implementation should 
implement.

Cheers
Pieter

On 18/05/2015 15:45, Bob Briody (JIRA) wrote:
>      [ https://issues.apache.org/jira/browse/TINKERPOP3-688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14548023#comment-14548023 ]
>
> Bob Briody commented on TINKERPOP3-688:
> ---------------------------------------
>
> This ticket makes perfect sense. I'm struggling to strike a balance between decent test coverage and generality across implementations. I haven't come up w/ anything clever yet for non-trivial test cases. [~spmallette] [~okram], any thoughts?
>
> The only (bad) idea I've had so far is to move the tests to TinkerGraph, but that seems like a really poor hack.
>
>> ProfileTest fails on optimized queries
>> --------------------------------------
>>
>>                  Key: TINKERPOP3-688
>>                  URL: https://issues.apache.org/jira/browse/TINKERPOP3-688
>>              Project: TinkerPop 3
>>           Issue Type: Bug
>>           Components: test-suite
>>             Reporter: pieter martin
>>             Assignee: Bob Briody
>>              Fix For: 3.0.0.GA
>>
>>
>> {code}ProfileTest.g_V_out_out_modern_profile{code} fails because it asserts the traversal as executed by TinkerGraph.
>> As sqlg optimizes the query the metrics being asserted are incorrect.
>> I doubt it will be possible to hardcode metrics in a generic test as different backends will have different behaviours.
>> eg. Tinkergraph
>> {code}pre-strategy:[GraphStep([],vertex), VertexStep(OUT,vertex), VertexStep(OUT,vertex), ProfileStep]
>> post-strategy:[TinkerGraphStep([],vertex), ProfileStep, VertexStep(OUT,vertex), ProfileStep, VertexStep(OUT,vertex), ProfileStep]
>> {code}
>> eg. Sqlg
>> {code}pre-strategy:[GraphStep([],vertex), VertexStep(OUT,vertex), VertexStep(OUT,vertex), ProfileStep]
>> post-strategy:[SqlgGraphStep([],vertex), ProfileStep, SqlgVertexStepCompiled, ProfileStep]
>> {code}
>> As you can see the number of steps are not the same after the optimization.
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.3.4#6332)