[
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)