mdproctor opened a new issue, #6714:
URL: https://github.com/apache/incubator-kie-drools/issues/6714

   ## Context
   
   `BruteForceCompiledEngine` handles post-join all-facts filters (e.g. 
`filter((person, name) -> person.name().equals(name))` after a 2-source join) 
by detecting multi-arity predicates and wrapping the consumer. In the 
tuple-based ReteEngine, the correct approach is a `TupleFilterProcessor` that 
tests a predicate against the full joined `TupleImpl` chain before passing to 
the head processor.
   
   ## What's needed
   
   `TupleFilterProcessor<CTX>` — a `UnitProcessor` that:
   - Holds an N-arity predicate (ctx-last convention)
   - Tests the predicate against the joined tuple (traverses chain to extract N 
facts)
   - Propagates downstream only if the predicate passes
   - Used between the join's output and the head processor when a post-join 
filter is present
   
   Permuplate-generated arity variants keep this allocation-free.
   
   ## Prerequisite
   
   #6712 (ReteEngine) — requires tuple-based propagation to be in place.
   
   ## Parent epics
   
   #6684, #6639


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to