Michael McCandless created LUCENE-8574:
------------------------------------------

             Summary: ExpressionFunctionValues should cache per-hit value
                 Key: LUCENE-8574
                 URL: https://issues.apache.org/jira/browse/LUCENE-8574
             Project: Lucene - Core
          Issue Type: Bug
    Affects Versions: 7.5, master (8.0)
            Reporter: Michael McCandless


The original version of {{ExpressionFunctionValues}} had a simple per-hit 
cache, so that nested expressions that reference the same common variable would 
compute the value for that variable the first time it was referenced and then 
use that cached value for all subsequent invocations, within one hit.  I think 
it was accidentally removed in LUCENE-7609?

This is quite important if you have non-trivial expressions that reference the 
same variable multiple times.

E.g. if I have these expressions:
{noformat}
x = c + d
c = b + 2 
d = b * 2{noformat}
Then evaluating x should only cause b's value to be computed once (for a given 
hit), but today it's computed twice.  The problem is combinatoric if b then 
references another variable multiple times, etc.

I think to fix this we just need to restore the per-hit cache?

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to