[ https://issues.apache.org/jira/browse/ACCUMULO-1730?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13774641#comment-13774641 ]
Eric Newton commented on ACCUMULO-1730: --------------------------------------- This code {noformat} import org.apache.accumulo.core.security.ColumnVisibility; import org.apache.accumulo.core.security.ColumnVisibility.Node; public class Test { static void printTree(int indent, String v, Node node) { for (int i = 0; i < indent; i++) System.out.print(' '); System.out.println(node.getType() + " " + v.substring(node.getTermStart(), node.getTermEnd()) + " " + node.getTermStart() + " " + node.getTermEnd()); for (Node child : node.getChildren()) { printTree(indent + 1, v, child); } } public static void main(String[] args) { String s = "(W)|(U|V)"; ColumnVisibility v = new ColumnVisibility(s); System.out.println(s); printTree(0, s, v.getParseTree()); } } {noformat} prints this: {noformat} (W)|(U|V) OR 0 0 TERM W 1 2 OR (W)|(U|V 0 8 TERM U 5 6 TERM V 7 8 {noformat} > ColumnVisibility parse tree nodes do not have correct location offsets for > AND and OR nodes > ------------------------------------------------------------------------------------------- > > Key: ACCUMULO-1730 > URL: https://issues.apache.org/jira/browse/ACCUMULO-1730 > Project: Accumulo > Issue Type: Bug > Components: client > Affects Versions: 1.4.0, 1.4.1, 1.4.2, 1.4.3, 1.4.4, 1.5.0 > Reporter: John Stoneham > Assignee: Eric Newton > Priority: Trivial > Fix For: 1.4.5, 1.5.1, 1.6.0 > > > Trying to do some transformations on visibility strings and running into > issues working with the parse tree: > Clojure 1.5.1 > user=> (import [org.apache.accumulo.core.security ColumnVisibility]) > org.apache.accumulo.core.security.ColumnVisibility > user=> (def vis (ColumnVisibility. "(W)|(U|V)")) > #'user/vis > user=> (.getTermStart (first (.getChildren (.getParseTree vis)))) > 1 > user=> (.getTermEnd (first (.getChildren (.getParseTree vis)))) > 2 > user=> (.getTermStart (second (.getChildren (.getParseTree vis)))) > 0 > user=> (.getTermEnd (second (.getChildren (.getParseTree vis)))) > 8 > Shouldn't those last two be 5 and 8? -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira