code: private boolean removeConvertedNodes(AbstractNode node) {
      boolean nodeRemoved = false;
      Iterator<AbstractNode> it = node.getChildren().iterator();
      while (it.hasNext()) {
        FilterJoinNode child = (FilterJoinNode) it.next();
        if (child.getState().equals(FilterJoinNode.State.CONVERTED)) {
          it.remove();
          nodeRemoved |= true;
        }
        else {
          nodeRemoved |= this.removeConvertedNodes(child) ? true : false;
        }
      }
      return nodeRemoved;
    }
docs: Removes all the filter join leaf nodes that were converted. Returns true if at least one node
  has been removed.