The work on #31579 and the report #31580 (ping @liudaac) led to an investigation that shows the context does not reuse the internal delegates as it should.

The way StandardEvaluationContext is used in the cache abstraction is a bit counter-intuitive as its root object is invocation specific (with method & all), while the context is meant to be shared so that its delegates are not constantly recreated.

Comment From: snicoll

The @EventListener is also impacted by this.