Page MenuHomePhabricator

Table 'securepoll_questions' doesn't exist (MediaWiki\Extension\SecurePoll\Store\DBStore::getQuestionInfo)
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
  • service.version: 1.45.0-wmf.12
  • timestamp: 2025-07-31T14:30:32.062Z
  • labels.phpversion: 8.1.33
  • trace.id: 1baff651-43e9-45c0-aaa9-b8e4a9d9b0b7
  • Find trace.id in Logstash
labels.normalized_message
Error 1146: Table 'wikimania2016wiki.securepoll_questions' doesn't exist
Function: MediaWiki\Extension\SecurePoll\Store\DBStore::getQuestionInfo
Query: SELECT  *  FROM `securepoll_questions` JOIN `securepoll_options` ON ((op_question=qu_entity))   WHERE qu_election = 'X'  ORDER BY qu_index,qu_entity
FrameLocationCall
from/srv/mediawiki/php-1.45.0-wmf.12/includes/debug/MWDebug.php(386)
#0[internal function]MediaWiki\Exception\MWExceptionHandler::handleError(int, string, string, int)
#1/srv/mediawiki/php-1.45.0-wmf.12/includes/debug/MWDebug.php(386)trigger_error(string, int)
#2/srv/mediawiki/php-1.45.0-wmf.12/includes/db/MWLBFactory.php(403)MediaWiki\Debug\MWDebug::sendRawDeprecated(string, bool, string)
#3/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/database/TransactionManager.php(191)MWLBFactory::logDeprecation(string)
#4/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/database/Database.php(1019)Wikimedia\Rdbms\TransactionManager->assertTransactionStatus(Wikimedia\Rdbms\DatabaseMySQL, array, string)
#5/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/database/Database.php(635)Wikimedia\Rdbms\Database->assertQueryIsCurrentlyAllowed(string, string)
#6/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/database/Database.php(2368)Wikimedia\Rdbms\Database->query(Wikimedia\Rdbms\Query, string)
#7/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/database/Database.php(2535)Wikimedia\Rdbms\Database->commit(string, string)
#8/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1680)Wikimedia\Rdbms\Database->flushSnapshot(string)
#9/srv/mediawiki/php-1.45.0-wmf.12/includes/libs/rdbms/lbfactory/LBFactory.php(363)Wikimedia\Rdbms\LoadBalancer->flushReplicaSnapshots(string)
#10/srv/mediawiki/php-1.45.0-wmf.12/includes/exception/MWExceptionHandler.php(172)Wikimedia\Rdbms\LBFactory->rollbackPrimaryChanges(string)
#11/srv/mediawiki/php-1.45.0-wmf.12/includes/exception/MWExceptionHandler.php(197)MediaWiki\Exception\MWExceptionHandler::rollbackPrimaryChanges()
#12/srv/mediawiki/php-1.45.0-wmf.12/includes/exception/MWExceptionHandler.php(237)MediaWiki\Exception\MWExceptionHandler::rollbackPrimaryChangesAndLog(Wikimedia\Rdbms\DBQueryError, string)
#13/srv/mediawiki/php-1.45.0-wmf.12/includes/MediaWikiEntryPoint.php(218)MediaWiki\Exception\MWExceptionHandler::handleException(Wikimedia\Rdbms\DBQueryError, string)
#14/srv/mediawiki/php-1.45.0-wmf.12/includes/actions/ActionEntryPoint.php(79)MediaWiki\MediaWikiEntryPoint->handleTopLevelError(Wikimedia\Rdbms\DBQueryError)
#15/srv/mediawiki/php-1.45.0-wmf.12/includes/MediaWikiEntryPoint.php(204)MediaWiki\Actions\ActionEntryPoint->handleTopLevelError(Wikimedia\Rdbms\DBQueryError)
#16/srv/mediawiki/php-1.45.0-wmf.12/index.php(58)MediaWiki\MediaWikiEntryPoint->run()
#17/srv/mediawiki/w/index.php(3)require(string)
#18{main}
Notes

Similar to T400831, probably fallout from T395928: Delete non-essential SecurePoll tables.

Details

Event Timeline

Restricted Application added a subscriber: Aklapper. · View Herald Transcript
Krinkle renamed this task from Table 'wikimania2016wiki.securepoll_questions' doesn't exist to Table 'securepoll_questions' doesn't exist (MediaWiki\Extension\SecurePoll\Store\DBStore).Jul 31 2025, 3:06 PM
Krinkle renamed this task from Table 'securepoll_questions' doesn't exist (MediaWiki\Extension\SecurePoll\Store\DBStore) to Table 'securepoll_questions' doesn't exist (MediaWiki\Extension\SecurePoll\Store\DBStore::getQuestionInfo).Jul 31 2025, 3:09 PM
Krinkle updated the task description. (Show Details)

Yes. That reqId logs the same error.

Error 1146 from MediaWiki\Extension\SecurePoll\Store\DBStore::getQuestionInfo
Table 'wikimania2016wiki.securepoll_questions' doesn't exist
SELECT  *  FROM `securepoll_questions` JOIN `securepoll_options` ON ((op_question=qu_entity))   WHERE …XXX…

Change #1174787 had a related patch set uploaded (by SD0001; author: SD0001):

[mediawiki/extensions/SecurePoll@master] ListPage: avoid lookup of questions and options table for jump polls

https://gerrit.wikimedia.org/r/1174787

Change #1174787 merged by jenkins-bot:

[mediawiki/extensions/SecurePoll@master] ListPage: avoid lookup of questions and options table for jump polls

https://gerrit.wikimedia.org/r/1174787

SD0001 claimed this task.
SD0001 subscribed.

Should have been deployed on group0 wikis today (the tables were deleted only on group0 wikis).

Dreamy_Jazz subscribed.

I'm still seeing this on some group0 wikis. For example, in this logstash entry which I generated by visiting https://cn.m.wikimedia.org/wiki/Special:SecurePoll/translate/51

Hmm, it doesn't happen for Special:SecurePoll/list. So the above fix worked. The error occurring on Special:SecurePoll/translate seems to be another issue, that isn't occurring on other group0 wikis (c.f. https://www.mediawiki.org/wiki/Special:SecurePoll/translate/390).

Sure. If you wanted to create a new task for that other issue, feel free. I thought these were the same because the SQL error was similar. Thanks for working on fixing these!

Change #1178064 had a related patch set uploaded (by SD0001; author: SD0001):

[mediawiki/extensions/SecurePoll@master] Upstream check for jump poll to Election::getQuestions()

https://gerrit.wikimedia.org/r/1178064

Change #1178064 merged by jenkins-bot:

[mediawiki/extensions/SecurePoll@master] Upstream check for jump poll to Election::getQuestions()

https://gerrit.wikimedia.org/r/1178064

https://cn.m.wikimedia.org/wiki/Special:SecurePoll/translate/51 is throwing an exception for me today on Monday. If we check again on Thursday evening (after the train) and this exception has gone away, then this ticket can be marked resolved.

I searched the dblists for cnwiki and couldn't find that database name. So not sure exactly what group cnwiki is in (group0, group1, group2).

cnwikimedia is on group0 which got the patch today (Tuesday). The link is no longer throwing, so I think we're good to close this now.

cnwikimedia is on group0 which got the patch today (Tuesday). The link is no longer throwing, so I think we're good to close this now.

Thanks!