Caleb Meier created RYA-214:
-------------------------------

             Summary: 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
             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