magento2-38729: PHP fatal error from a missing getRetries in the Redis session Config
Community fix magento2-38729 merged into magento/magento2 on 2024-09-03, released in 2.4.8; applies cleanly to 2.4.7.
Fixes the PHP fatal error from a missing getRetries in the Redis session Config edited
- Pull request title
- Credis update to 1.6 breaks Magento 2.4.7
- Pull request
- magento/magento2#38729
- Issues
- #38728 human
- Author
- @TuVanDev
- Merged
- 2024-09-03
- Fixed in
- 2.4.8
- Reported on
- 2.4.7
- Categories
- —
- Components
- magento/framework
Labels
- Area
- Framework
- Component
- Composer
- Priority
- P0
- Severity
- —
- Reported on (labels)
- 2.4.7
Issue
Title and steps come from the upstream issue and pull request.
Description
[15-May-2024 21:18:24 UTC] PHP Fatal error: Class Magento\Framework\Session\SaveHandler\Redis\Config contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Cm\RedisSession\Handler\ConfigInterface::getRetries) in /home/xxx/public_html/vendor/magento/framework/Session/SaveHandler/Redis/Config.php on line 16Steps to reproduce
Expected result
Actual result
[15-May-2024 21:18:24 UTC] PHP Fatal error: Class Magento\Framework\Session\SaveHandler\Redis\Config contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Cm\RedisSession\Handler\ConfigInterface::getRetries) in /home/xxx/public_html/vendor/magento/framework/Session/SaveHandler/Redis/Config.php on line 16Taken from the upstream issue.
Error signatures
- `[15-May-2024 21:18:24 UTC] PHP Fatal error: Class Magento\Framework\Session\SaveHandler\Redis\Config contains 1 abstract method and must therefore be declared abstract or implement the remaining meth
Code match per tag
Each tag was checked with git apply --check against that tag's files. A clean match means the change applies; it is not a test result. Tags that already contain the fix are marked.
| Line | Code match per tag | Tests |
|---|---|---|
| 2.4.6 | 2.4.6 conflict 2.4.6-p1 conflict 2.4.6-p2 conflict 2.4.6-p3 conflict 2.4.6-p4 conflict 2.4.6-p5 conflict 2.4.6-p6 conflict 2.4.6-p7 conflict 2.4.6-p8 conflict 2.4.6-p9 conflict 2.4.6-p10 conflict 2.4.6-p11 conflict 2.4.6-p12 conflict 2.4.6-p13 conflict 2.4.6-p14 conflict 2.4.6-p15 conflict | 2.4.6: no test data 2.4.6-p1: no test data 2.4.6-p2: no test data 2.4.6-p3: no test data 2.4.6-p4: no test data 2.4.6-p5: no test data 2.4.6-p6: no test data 2.4.6-p7: no test data 2.4.6-p8: no test data 2.4.6-p9: no test data 2.4.6-p10: no test data 2.4.6-p11: no test data 2.4.6-p12: no test data 2.4.6-p13: no test data 2.4.6-p14: no test data 2.4.6-p15: no test data |
| 2.4.7 | 2.4.7 clean 2.4.7-p1 conflict 2.4.7-p2 conflict 2.4.7-p3 conflict 2.4.7-p4 conflict 2.4.7-p5 conflict 2.4.7-p6 conflict 2.4.7-p7 conflict 2.4.7-p8 conflict 2.4.7-p9 conflict 2.4.7-p10 conflict | 2.4.7: no test data 2.4.7-p1: no test data 2.4.7-p2: no test data 2.4.7-p3: no test data 2.4.7-p4: no test data 2.4.7-p5: no test data 2.4.7-p6: no test data 2.4.7-p7: no test data 2.4.7-p8: no test data 2.4.7-p9: no test data 2.4.7-p10: no test data |
| 2.4.8 | 2.4.8 conflictcontains the fix 2.4.8-p1 conflictcontains the fix 2.4.8-p2 conflictcontains the fix 2.4.8-p3 conflictcontains the fix 2.4.8-p4 conflictcontains the fix 2.4.8-p5 conflictcontains the fix | 2.4.8: no test data 2.4.8-p1: no test data 2.4.8-p2: no test data 2.4.8-p3: no test data 2.4.8-p4: no test data 2.4.8-p5: no test data |
| 2.4.9 | 2.4.9 conflictcontains the fix | 2.4.9: no test data |
Triage
Model @cf/cloudflare/clef. Probability this is a bug fix: 87.9%. Probability it is security relevant: 88.5%.
Show the model's answers and probabilities
| Question | Answer | Probabilities | Confidence |
|---|---|---|---|
| Change kind | bugfix | bugfix 82.2%, feature 11.6%, dependency 4.0%, refactor 1.2%, tests_only 0.7%, docs_only 0.3% | 62.8% |
| Area | framework | framework 85.1%, customer 4.5%, admin 3.1% | 69.0% |
| Reported version | 2.4.7 | 2.4.7 48.7%, 2.4.7-p1 4.4%, 2.4.7-p6 2.2% | 23.4% |
| Scope | 1.05 of 2 | 1 41.3%, 2 31.9%, 0 26.8% | 1.6% |
| Risk | 0.91 of 2 | 0 42.5%, 2 33.3%, 1 24.3% | 2.5% |
| Worth backporting | 1.73 of 2 | 2 78.5%, 1 15.6%, 0 5.9% | 46.6% |
Download
For cweagans/composer-patches, choose a version below and download the bundle. Copy its magento2-38729/ folder into patches/composer/, merge composer.patches.json into composer.json, then run composer install. Test files are always removed; paths are relative to each package root, using the default -p1 level.
Bundle README (what the ZIP ships)
# magento2-38729 Community fix merged upstream into magento/magento2, adapted by magento.watch. This is not a patch published by Adobe. Pull request: https://github.com/magento/magento2/pull/38729 Issue: https://github.com/magento/magento2/issues/38728 Author: @TuVanDev Source commit: bc13dc0d6e5968351214a8c0b6baee0f6e906460 Modifications: test files and documentation removed, paths rewritten relative to each Composer package. Licence: OSL-3.0 / AFL-3.0, as the original Magento Open Source code. Maintainer: Łukasz Bajsarowicz (@lbajsarowicz)
Licence: Magento Open Source code under OSL-3.0 and AFL-3.0. The bundle carries the original author, source commit and the list of modifications.
