Good food for thought, thanks. I've never used predselect. Will have to
read up on it.
--
bc


On Tue, Jun 24, 2014 at 4:11 PM, Glenn Knickerbocker <[email protected]>
wrote:

> On 6/24/2014 2:49 PM, Bob Cronin wrote:
> > I want to keep only those primary stream records for which ALL the
> > mail-serverN names listed on that record are found in the secondary
> stream.
>
> So, you want to discard records for which ANY name is NOT found.  SPLIT
> the names, LOOKUP to find the bad ones, and PREDSELECT to toss the bad
> record.  Feed another copy of the original to input 2 of PREDSELECT to
> trigger the good records to go to output 1.
>
> (end /) ... | dup: fanout | notfound: predselect | ... (bad recs here)
>   / dup: | not chop blank | split | found: lookup
>   / ... (server list here) | found: | notfound: | ... (good recs here)
>   / dup: | notfound:
>
> If this is something that'll be running forever and you're being extra
> picky about performance, you can use the primary output of CHOP 0 to
> avoid the cost of the extra copy from FANOUT:
>
> (end /) ... | next: not chop 0 | dup: fanout | notfound: predselect
>   | ... (bad recs here)
>   / dup: | not chop blank | split | found: lookup
>   / ... (server list here) | found: | notfound: | ... (good recs here)
>   / next: | strliteral append | notfound:
>
> ¬R
>

Reply via email to