Acciones
Mejora #752
cerradaImplement evaluation cache
Fecha de inicio:
2018-07-10
Fecha fin:
2018-08-01
% Realizado:
100%
Tiempo estimado:
Dificultad:
Descripción
As of now, every call to Expression#evaluate()
reevaluates the whole expression.
This isn't a problem in and of itself, but it's a common error when using the library and creates an annoying performance hit.
- Find all scenarios where this could fail
- If an expression contains non-deterministic results, the value should not be cached
- Cache should be cleaned if variable changes
What happens when usingsetVariables()
with maps?- Create tests for expression evaluate
PS: We attempted to fix this with documentation and warnings... but still creates a problem. An internal (at least partial) solution shouldn't be hard to accomplish... I think...
Actualizado por Federico Vera hace más de 6 años
- Tipo cambiado de Desarrollo a Mejora
- Prioridad cambiado de Normal a Wishlist
Actualizado por Federico Vera hace más de 6 años
- Versión prevista cambiado de 0.7 a 1.0
Actualizado por Federico Vera hace más de 6 años
- Se actualizó Descripción (diferencias)
Scenarios to fail:
- Multiple async calls (will fail anyway)
- Non deterministic functions
Actualizado por Federico Vera hace más de 6 años
- % Realizado cambiado de 0 a 70
Actualizado por Federico Vera hace más de 6 años
- Estado cambiado de Nuevo a Resuelto
- % Realizado cambiado de 70 a 100
Acciones
Volver al inicio