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

Caleb Meier reassigned RYA-214:
-------------------------------

    Assignee: Caleb Meier

> Query Metadata Input Validation for CreatePcj
> ---------------------------------------------
>
>                 Key: RYA-214
>                 URL: https://issues.apache.org/jira/browse/RYA-214
>             Project: Rya
>          Issue Type: Bug
>          Components: clients
>    Affects Versions: 3.2.10
>            Reporter: Caleb Meier
>            Assignee: Caleb Meier
>             Fix For: 3.2.10
>
>
> When the method CreatePcj#withRyaIntegration is called, it creates the query 
> metadata for Fluo and then populates Fluo with historical results form Rya.  
> Before the metadata gets inserted, it's necessary to verify that the parsed 
> query only consists of StatementPatterns, Joins, Leftjoins, Filters, and a 
> Projection -- these are the only nodes that currently have observers 
> implemented.  Right now there is a visitor which attempts to verify this -- 
> it has a meet method for each of the allowed node types -- but it has no meet 
> method for other node types that are not allowed so it just skips these 
> nodes.  So in effect, for a given query, this visitor goes through and 
> creates metadata only for nodes that are allowed in Fluo, and ignores invalid 
> nodes. The bug here is that if the user attempts to insert a query with an 
> invalid query node into Fluo, this method will insert a different query into 
> Fluo (the query obtained from the original by removing the invalid nodes). 
> The input validation visitor should traverse the query, creating metadata, 
> and either insert all of the metadata if the visitor traverses the entire 
> query without encountering an invalid node, or throw an exception if an 
> invalid node is an encountered.  



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

Reply via email to