Problem/Motivation
\Drupal\Core\Cache\ChainedFastBackend throws errors, which is problematic as its used early in the bootstrap
PHP Fatal error: Consistent cache backend and fast cache backend cannot use the same service. in /home/user/www/site/docroot/core/lib/Drupal/Core/Cache/ChainedFastBackend.php on line 98
Steps to reproduce
- Checkout 8.1.x
- Install syslog
- Checkout 8.2.x
- Boom
Proposed resolution
* Fallthrough instead of throwing an error/exception
Remaining tasks
User interface changes
API changes
Data model changes
| Comment | File | Size | Author |
|---|---|---|---|
| #33 | stacktrace.txt | 34.36 KB | quietone |
| #27 | interdiff_2808569_13_24.txt | 2.44 KB | narendra.rajwar27 |
| #24 | 2808569-24.patch | 2.68 KB | narendra.rajwar27 |
| #13 | 2808569-13.patch | 2.75 KB | dawehner |
| #11 | interdiff.txt | 1.05 KB | dawehner |
Comments
Comment #2
dawehnerComment #3
dawehnerHere is an idea we had yesterday
Comment #5
alexpottI've reverted #2751847: Throw exception if the same service is injected twice in ChainedFastBackend because obviously we shouldn't be having criticals a result of normals or majors.
Comment #6
chx commentedThis applies to 8.2.x just fine and it's 8.2.x which needs this before release. The problem is the trigger_error() in __construct.
Please do not credit me, I have changed nothing I am just reposting it under 8.2.x.
Comment #7
dawehner@alexpott
No matter whether we revert it or not, but seriously we need to solve the problem of the broken configuration.
Comment #8
alexpott@dawehner well we can't revert a patch in 8.1.x so I think we need to proceed here.
Comment #9
alexpottAfter discussing with @catch decided to revert #2662844: cache.backend.chainedfast misbehaves when both fast and consistent backends point to the same storage on 8.2.x and 8.3.x so this is no longer critical.
Comment #10
penyaskitoVery creative, thanks. I love it. But if we come to this code in 6 months we may not remember why we did this. Can we add a comment? Something as in
"We cannot throw an exception in the constructor because we may need the services container for logging out errors."
Comment #11
dawehnerJust a small adaption.
But seriously, we need a patch
Comment #13
dawehnerDid some reroll here.
Comment #14
anavarreComment #20
anavarreIs this still a thing?
Comment #23
narendra.rajwar27Comment #24
narendra.rajwar27Comment #25
narendra.rajwar27Comment #26
narendra.rajwar27Interdiff of above patch.
Comment #27
narendra.rajwar27Comment #33
quietone commentedThis was a bugsmash triage target yesterday. It was discussed by acbramley, lendude and mstrelan.
The first question was 'is this still a problem'? Plus, the steps to reproduce are for outdated versions of Drupal.
So, tagging for updated steps to reproduce.