We can limit the scope of graph traversal by applying some filter along the way as follows.
gatherNodes(emails, walk="john...@apache.org->from", fq="body:(solr rocks)", gather="to") Is it possible to replace "body:(solr rocks)" by some streaming expression like "search" function for example? Like as follows.. gatherNodes(emails, walk="john...@apache.org->from", fq="search(...)", // use streaming expression as filter gather="to") In my case, it would improve performance significantly if one can do that. Other approach I can think of is to save results of "search" streaming expression in some variable in pipeline and then use it at multiple places including "fq" clause of "gatherNodes". Is it possible to do something like this?