Hello!
Since the update to Matomo 3.12, some users have reported that Matomo freezes for a long time after each click. Working is no longer possible. This behavior is in the affected clients in every browser (IE, Chrome, Firefox etc.).
Internet Explorer sometimes reports after a click that a script cannot be executed. Unfortunately it is not possible to understand which script triggers this message.
We thought this may be related to a specific widget, but the error also occurs on an empty dashboard.
Does anyone know the behavior?
Regards
Pete
Lukas
(Lukas Winkler)
January 9, 2020, 4:47pm
2
Hi,
Could you check using the browser developer tools if the clients are waiting for HTTP requests that take a long time or if the Javascript in the browser itself is slow?
Hi Lukas,
after the update to 3.13.1 the problem still exists.
After analysis we found that the following script is causing the problems.
/* Matomo Javascript - cb=404e4d1f6dfb3e75968bbe9f0e563f50*/
angular.module(âpiwikAppâ).controller(âWebsiteGroupsAdminControllerâ,function($scope,$timeout){function onError(){$scope.isUpdateGroupError=true;$timeout(function(){$scope.isUpdateGroupError=false;},1000);}
function done(){$scope.isUpdatingGroup=null;}
$scope.renameGroup=function(group,newName){$scope.isUpdatingGroup=true;function onSuccess(){group.label=newName;$scope.view.editGroup=false;if(group.sites){for(var index=0;index<group.sites.length;index++){group.sites[index].group=newName;}}}
$scope.groupModel.renameGroup(group.label,newName).then(onSuccess,onError)
âfinallyâ ;};$scope.assignGroup=function(website,groupName){$scope.isUpdatingGroup=groupName;function onSuccess(){website.group=groupName;$scope.isUpdateGroupSuccess=true;$timeout(function(){if($scope.dashboardCtrl)$scope.dashboardCtrl.refresh();},1000);}
$scope.groupModel.assignGroup(website.idsite,groupName).then(onSuccess,onError)
âfinallyâ ;}});
angular.module(âpiwikApp.serviceâ).service(âwebsiteGroupsAdminModelâ,function(piwikApi){this.groups=[];this.fetchSitesGroups=function(){var that=this;piwikApi.fetch({method:âSitesManager.getSitesGroupsâ}).then(function(response){if(response&&response.length){var indexEmpty=response.indexOf(ââ);if(-1!=indexEmpty){response.splice(indexEmpty,1);}
response.sort();that.groups=response;}});}
this.addGroup=function(groupname){if(groupname&&-1===this.groups.indexOf(groupname)){this.groups.push(groupname);}}
this.assignGroup=function(idSite,groupName){return piwikApi.post({method:âSitesManager.updateSiteâ,idSite:idSite,group:groupName});}
this.renameGroup=function(oldGroupName,newGroupName){return piwikApi.post({method:âSitesManager.renameGroupâ,oldGroupName:oldGroupName,newGroupName:newGroupName});}});
angular.module(âpiwikAppâ).directive(âmultisitesLabelâ,function(piwik,websiteGroupsAdminModel){if(!piwik.hasSuperUserAccess){return{};}
websiteGroupsAdminModel.fetchSitesGroups();return{restrict:âCâ,transclude:true,scope:{},require:[â^piwikMultisitesSiteâ,â^piwikMultisitesDashboardâ],templateUrl:âplugins/WebsiteGroups/angularjs/admin/admin.html?cb=â+piwik.cacheBuster,link:function(scope,element,attrs,controllers){scope.groupModel=websiteGroupsAdminModel;scope.website=controllers[0].getWebsite();scope.dashboardCtrl=controllers[1];},controller:âWebsiteGroupsAdminControllerâ}});
Regards
Pete
Hi Lukas,
do you have an idea? More and more users are now reporting the problem.
Regards
Pete
peterbo
(Peterbo)
February 27, 2020, 12:36am
5
Can you have a look at the requests in the browser console while loading the dashboard initially? Which requests are stuck or take a long time to finish loading?
matthieu
(Matthieu Aubry)
February 27, 2020, 3:37am
6
it looks like youâre using an old plugin called possibly websiteGroups or similar. Can you try delete this plugin from your Matomo and try again?
1 Like
Lukas
(Lukas Winkler)
February 27, 2020, 1:09pm
7
This indeed seems to be caused by the old PiwikPro plugin WebsiteGroups:
https://github.com/PiwikPRO/plugin-WebsiteGroups (they deleted all traces of it since then)
GitHub - PiwikPRO/plugin-WebsiteGroups: Adds the possibility to assign a group to a website and to rename groups within the All Websites Dashboard.
The plugin was never updated to support Matomo 3 and isnât maintained anymore for many years, but I think (but canât check it as it is gone from the internet) that they did specify in the plugin.json that it is compatible with every Matomo version >2 and therefore it never gets disabled (see Restrict open-ended require to the major Matomo version it defined ¡ Issue #14342 ¡ matomo-org/matomo ¡ GitHub ).
Many thanks for the help. Unfortunately, the problem was still there when we deleted the plugin.
However, we have found the problem.
The widget âPage Titleâ in our default dashboard could not load any content. It stayed empty. After we deleted the widget and added it again, everything was ok.
Do you have any idea what that could have been?
matthieu
(Matthieu Aubry)
February 27, 2020, 9:55pm
9
Good to hear itâs fixed. We havenât seen this before. If it happens again, feel free to create a bug report on http://www.github.com/matomo-org/matomo
1 Like