New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fatal error in Goals/Pages.php, report is null #13883
Comments
Just checked there seems to be no dashboard configured. One custom dimension is defined INSERT INTO `custom_dimensions` (`idcustomdimension`, `idsite`, `name`, `index`, `scope`, `active`, `extractions`, `case_sensitive`)
VALUES
(1, 2, 'ID Foo', 1, 'visit', 1, '[]', 1); |
Closing the issue for now. I've tried to debug locally and reproduce the issue locally as well as on the actual instance but couldn't reproduce it. If it occurs again need to check. Seems some race condition maybe or so. |
Same issue happened again. Seems to happen very rarely. Possibly a race condition and maybe it is actually easiest to just check whether report was returned and if not, don't add the widget as it seems to happen very very rarely. |
refs #13883 and #13892 Checking for `$cache->contains($lazyCacheId)` and then `$cache->fetch($lazyCacheId)` can run into race conditions when the cache expires just in between. I reckon this might be the case for #13892 which we see happening like once a day or every other day. We would possibly also need to check for other usages. Might not actually be an issue cause the transient is used in the lazy cache as well and it should keep the entry during the same request. It could come to this issue though the first time a cache entry is read.
refs #13883 and #13892 Checking for `$cache->contains($lazyCacheId)` and then `$cache->fetch($lazyCacheId)` can run into race conditions when the cache expires just in between. I reckon this might be the case for #13892 which we see happening like once a day or every other day. We would possibly also need to check for other usages. Might not actually be an issue cause the transient is used in the lazy cache as well and it should keep the entry during the same request. It could come to this issue though the first time a cache entry is read.
Here's a stacktrace
Happens here: https://github.com/matomo-org/matomo/blob/3.8.0-b5/plugins/Goals/Pages.php#L344-L345
I was going to create a PR that checks whether
$report
was found and if not, return null and just skip this report/widget but not sure if this would maybe just suppress the error while there is a problem with an actual implementation. Cause in theory it iterates over all found reports and it should find a report class. For custom dimensions (which is the problem see stack trace) there were a few changes around the reports and widgets recently so maybe something regressed there?I can check for the dashboard configuration if needed. Moving it into 3.8 as the dashboard cannot be loaded in this case by the looks
The text was updated successfully, but these errors were encountered: