MediaAnalytics error message

Hello ,

We’re on the latest version of Matomo as of this morning and we’re seeing these in the logs of the report processors:

INFO [2022-12-08 23:08:51] 8304 Error: Got invalid response from API request: ?module=API&method=CoreAdminHome.archiveReports&idSite=13&period=year&date=2022-01-01&format=json&trigger=archivephp. Response was '{“result”:“error”,“message”:"SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens - in plugin MediaAnalytics.

Is this a bug in the MediaAnalytics plugin? How would we as admins ensure that the “number of bound variables” matches the number of tokens?

We are also experiencing this problem.

Version 4.12.3.

If it is helpful, we are using the QueuedTracking plugin, but have an otherwise plain setup. There have been other recent problems with that specific plugin.

Here is a stack trace:

ERROR API[2022-12-19 20:49:27 UTC] [98] caused by: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens                                                                                                                                     
ERROR API[2022-12-19 20:49:27 UTC] [98] #0 /var/www/html/libs/Zend/Db/Statement.php(300): Zend_Db_Statement_Pdo->_execute(Array)                                                                                                                                                            
ERROR API[2022-12-19 20:49:27 UTC] [98] #1 /var/www/html/libs/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement->execute(Array)                                                                                                                                                          
ERROR API[2022-12-19 20:49:27 UTC] [98] #2 /var/www/html/libs/Zend/Db/Adapter/Pdo/Abstract.php(238): Zend_Db_Adapter_Abstract->query('SELECT  /*+ MAX...', Array)                                                                                                                           
ERROR API[2022-12-19 20:49:27 UTC] [98] #3 /var/www/html/core/Db/Adapter/Pdo/Mysql.php(314): Zend_Db_Adapter_Pdo_Abstract->query('SELECT  /*+ MAX...', Array)                                                                                                                               
ERROR API[2022-12-19 20:49:27 UTC] [98] #4 [internal function]: Piwik\Db\Adapter\Pdo\Mysql->query('SELECT  /*+ MAX...', Array)                                                                                                                                                              
ERROR API[2022-12-19 20:49:27 UTC] [98] #5 /var/www/html/core/DataAccess/ArchivingDbAdapter.php(121): call_user_func_array(Array, Array)                                                                                                                                                    
ERROR API[2022-12-19 20:49:27 UTC] [98] #6 [internal function]: Piwik\DataAccess\ArchivingDbAdapter->callFunction('query', 'SELECT  /*+ MAX...', Array)                                                                                                                                     
ERROR API[2022-12-19 20:49:27 UTC] [98] #7 /var/www/html/core/DataAccess/ArchivingDbAdapter.php(60): call_user_func_array(Array, Array)                                                                                                                                                     
ERROR API[2022-12-19 20:49:27 UTC] [98] #8 /var/www/html/plugins/MediaAnalytics/Archiver.php(798): Piwik\DataAccess\ArchivingDbAdapter->query('SELECT  /*+ MAX...', Array)                                                                                                                  
ERROR API[2022-12-19 20:49:27 UTC] [98] #9 /var/www/html/plugins/MediaAnalytics/Archiver.php(370): Piwik\Plugins\MediaAnalytics\Archiver->query('log_media.resou...', ' AND log_media....', 'log_media.resou...', 'nb_plays DESC', Array, Object(Piwik\RankingQuery))                       
ERROR API[2022-12-19 20:49:27 UTC] [98] #10 /var/www/html/plugins/MediaAnalytics/Archiver.php(301): Piwik\Plugins\MediaAnalytics\Archiver->archiveSecondaryDimensionSpentTime(Array, Array, 'log_media.resou...')                                                                           
ERROR API[2022-12-19 20:49:27 UTC] [98] #11 /var/www/html/plugins/MediaAnalytics/Archiver.php(142): Piwik\Plugins\MediaAnalytics\Archiver->makeRegularReport(Array, ' AND log_media....', 'log_media.resou...', true)                                                                       
ERROR API[2022-12-19 20:49:27 UTC] [98] #12 /var/www/html/core/Plugin/Archiver.php(89): Piwik\Plugins\MediaAnalytics\Archiver->aggregateDayReport()                                                                                                                                         
ERROR API[2022-12-19 20:49:27 UTC] [98] #13 /var/www/html/core/ArchiveProcessor/PluginsArchiver.php(164): Piwik\Plugin\Archiver->callAggregateDayReport()                                                                                                                                   
ERROR API[2022-12-19 20:49:27 UTC] [98] #14 /var/www/html/core/ArchiveProcessor/Loader.php(284): Piwik\ArchiveProcessor\PluginsArchiver->callAggregateAllPlugins('212398', '2155', false)                                                                                                   
ERROR API[2022-12-19 20:49:27 UTC] [98] #15 /var/www/html/core/ArchiveProcessor/Loader.php(176): Piwik\ArchiveProcessor\Loader->prepareAllPluginsArchive('212398', '2155')                                                                                                                  
ERROR API[2022-12-19 20:49:27 UTC] [98] #16 /var/www/html/core/ArchiveProcessor/Loader.php(159): Piwik\ArchiveProcessor\Loader->insertArchiveData('212398', '2155')                                                                                                                         
ERROR API[2022-12-19 20:49:27 UTC] [98] #17 /var/www/html/core/ArchiveProcessor/Loader.php(99): Piwik\ArchiveProcessor\Loader->prepareArchiveImpl(false)                                                                                                                                    
ERROR API[2022-12-19 20:49:27 UTC] [98] #18 /var/www/html/core/Context.php(75): Piwik\ArchiveProcessor\Loader->Piwik\ArchiveProcessor\{closure}()                                                                                                                                           
ERROR API[2022-12-19 20:49:27 UTC] [98] #19 /var/www/html/core/ArchiveProcessor/Loader.php(103): Piwik\Context::changeIdSite(1, Object(Closure))                                                                                                                                            
ERROR API[2022-12-19 20:49:27 UTC] [98] #20 /var/www/html/plugins/CoreAdminHome/API.php(284): Piwik\ArchiveProcessor\Loader->prepareArchive(false)                                                                                                                                          
ERROR API[2022-12-19 20:49:27 UTC] [98] #21 [internal function]: Piwik\Plugins\CoreAdminHome\API->archiveReports('1', Object(Piwik\Period\Day), '2022-12-18', false, false, false)                                                                                                          
ERROR API[2022-12-19 20:49:27 UTC] [98] #22 /var/www/html/core/API/Proxy.php(244): call_user_func_array(Array, Array)                                                                                                                                                                       
ERROR API[2022-12-19 20:49:27 UTC] [98] #23 /var/www/html/core/Context.php(28): Piwik\API\Proxy->Piwik\API\{closure}()
ERROR API[2022-12-19 20:49:27 UTC] [98] #24 /var/www/html/core/API/Proxy.php(335): Piwik\Context::executeWithQueryParameters(Array, Object(Closure))
ERROR API[2022-12-19 20:49:27 UTC] [98] #25 /var/www/html/core/API/Request.php(267): Piwik\API\Proxy->call('\\Piwik\\Plugins\\...', 'archiveReports', Array)
ERROR API[2022-12-19 20:49:27 UTC] [98] #26 /var/www/html/plugins/API/Controller.php(45): Piwik\API\Request->process()
ERROR API[2022-12-19 20:49:27 UTC] [98] #27 [internal function]: Piwik\Plugins\API\Controller->index()
ERROR API[2022-12-19 20:49:27 UTC] [98] #28 /var/www/html/core/FrontController.php(631): call_user_func_array(Array, Array)
ERROR API[2022-12-19 20:49:27 UTC] [98] #29 /var/www/html/core/FrontController.php(169): Piwik\FrontController->doDispatch('API', false, Array)
ERROR API[2022-12-19 20:49:27 UTC] [98] #30 /var/www/html/core/dispatch.php(32): Piwik\FrontController->dispatch()
ERROR API[2022-12-19 20:49:27 UTC] [98] #31 /var/www/html/index.php(25): require_once('/var/www/html/c...')
ERROR API[2022-12-19 20:49:27 UTC] [98] #32 /var/www/html/core/CliMulti/RequestCommand.php(79): require_once('/var/www/html/i...')
ERROR API[2022-12-19 20:49:27 UTC] [98] #33 /var/www/html/vendor/symfony/console/Symfony/Component/Console/Command/Command.php(257): Piwik\CliMulti\RequestCommand->execute(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #34 /var/www/html/vendor/symfony/console/Symfony/Component/Console/Application.php(874): Symfony\Component\Console\Command\Command->run(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #35 /var/www/html/vendor/symfony/console/Symfony/Component/Console/Application.php(195): Symfony\Component\Console\Application->doRunCommand(Object(Piwik\CliMulti\RequestCommand), Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #36 [internal function]: Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #37 /var/www/html/core/Console.php(135): call_user_func(Array, Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #38 /var/www/html/core/Access.php(670): Piwik\Console->Piwik\{closure}()
ERROR API[2022-12-19 20:49:27 UTC] [98] #39 /var/www/html/core/Console.php(136): Piwik\Access::doAsSuperUser(Object(Closure))
ERROR API[2022-12-19 20:49:27 UTC] [98] #40 /var/www/html/core/Console.php(87): Piwik\Console->doRunImpl(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #41 /var/www/html/vendor/symfony/console/Symfony/Component/Console/Application.php(126): Piwik\Console->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
ERROR API[2022-12-19 20:49:27 UTC] [98] #42 /var/www/html/console(32): Symfony\Component\Console\Application->run()
ERROR API[2022-12-19 20:49:27 UTC] [98] #43 {main},

Hi @djmetzle, @John_Keegan
I think this is a bug, and must be declared in GitHub:

Don’t forget to put here a link to the created issue for monitoring…

Opened a fresh github issue related to the problem:

I’ve also opened a second, somewhat unrelated, but suspiciously similar type error problem against the premium AdvertisingConversionExport plugin: