You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR was submitted for the master branch but it was merged into the 2.2 branch instead (closes#7180).
Commits
-------
6a33bc2 [HttpKernel] Fixes AppCache + ESI + Stopwatch problem
Discussion
----------
[HttpKernel] Fixes AppCache + ESI + Stopwatch problem
There is a very special case when using builtin AppCache class as kernel wrapper, in the case of an ESI request leading to a `stale` response [B] inside a `fresh` cached response [A]. In this case, `$token` contains the [B] debug token, but the open `stopwatch` section ID is equal to the [A] debug token. Trying to reopen section with the [B] token throws an exception which must be caught.
| Q | A
| ------------- | ---
| Bug fix? | yes
| Bug mask? | no, does @vicb agree?
| New feature? | no
| BC breaks? | no
| Deprecations? | no
| Tests pass? | yes
| Fixed tickets | #6227, #6230
I tried to find a better solution than just wrapping thrown exceptions with `try/catch`, but IMHO the #6230 solution from @lsmith77 was in fine the best one. I just added some comments in the code to avoid the WTF reactions while reading it.
---------------------------------------------------------------------------
by vicb at 2013-02-25T16:51:51Z
@vicb never agrees :)
I don't have time to check this deeply now but I would like to see a UT.
Could your use case be expressed as "on nested terminate events" ?
---------------------------------------------------------------------------
by jfsimon at 2013-02-25T16:58:49Z
@vicb If I had an idea on how to write a conclusive test for that, I swear, it would be provided in this PR.
0 commit comments