Error after registration: Duplicate entry in `xf_sv_multiple_account_token`

nocte

Member
Reactions
5
I am not sure if I had the most recent version, when I got this error, so I guess I better ask if the bug is already fixed :)

Code:
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry '17-1' for key 'active' src/XF/Db/AbstractStatement.php:217

Stack-Trace
INSERT  INTO `xf_sv_multiple_account_token` (`user_id`, `active`, `token`, `token_id`, `token_date`) VALUES (?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL query err...', 1062, '23000')
#1 src/XF/Db/Mysqli/Statement.php(77): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1062, '23000')
#2 src/XF/Db/AbstractAdapter.php(94): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(221): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1452): XF\Db\AbstractAdapter->insert('xf_sv_multiple_...', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1184): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/XF/Mvc/Entity/Entity.php(1202): XF\Mvc\Entity\Entity->save(true, false)
#7 src/XF/Service/User/Registration.php(279): XF\Mvc\Entity\Entity->save()
#8 src/addons/SV/ModeratorEssentials/XF/Service/User/Registration.php(22): XF\Service\User\Registration->_save()
#9 src/XF/Service/ValidateAndSavableTrait.php(40): SV\ModeratorEssentials\XF\Service\User\Registration->_save()
#10 src/XF/Pub/Controller/Register.php(419): XF\Service\User\Registration->save()
#11 src/XF/Mvc/Dispatcher.php(321): XF\Pub\Controller\Register->actionRegister(Object(XF\Mvc\ParameterBag))
#12 src/XF/Mvc/Dispatcher.php(248): XF\Mvc\Dispatcher->dispatchClass('XF:Register', 'Register', Object(XF\Mvc\RouteMatch), Object(SV\SignupAbuseBlocking\XF\Pub\Controller\Register), NULL)
#13 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(SV\SignupAbuseBlocking\XF\Pub\Controller\Register), NULL)
#14 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#15 src/XF/App.php(2177): XF\Mvc\Dispatcher->run()
#16 src/XF.php(390): XF\App->run()
#17 index.php(20): XF::runApp('XF\\Pub\\App')
#18 {main}

Another one, a bit older; I think it was also after registration:
Code:
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry '1-1' for key 'report' in src/XF/Db/AbstractStatement.php at line 217
XF\Db\AbstractStatement->getException() in src/XF/Db/Mysqli/Statement.php at line 196
XF\Db\Mysqli\Statement->getException() in src/XF/Db/Mysqli/Statement.php at line 77
XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.php at line 94
XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 326
XF\Db\AbstractAdapter->update() in src/XF/Mvc/Entity/Entity.php at line 1457
XF\Mvc\Entity\Entity->_saveToSource() in src/XF/Mvc/Entity/Entity.php at line 1184
XF\Mvc\Entity\Entity->save() in src/XF/Mvc/Entity/Entity.php at line 1254
XF\Mvc\Entity\Entity->saveIfChanged() in src/addons/SV/SignupAbuseBlocking/Repository/MultipleAccount.php at line 212
SV\SignupAbuseBlocking\Repository\MultipleAccount->processMultipleAccountDetectionInternal() in src/addons/SV/SignupAbuseBlocking/Repository/MultipleAccount.php at line 57
SV\SignupAbuseBlocking\Repository\MultipleAccount->SV\SignupAbuseBlocking\Repository\{closure}() in src/XF.php at line 478
XF::asVisitor() in src/addons/SV/SignupAbuseBlocking/Repository/MultipleAccount.php at line 58
SV\SignupAbuseBlocking\Repository\MultipleAccount->processMultipleAccountDetection() in src/addons/SV/SignupAbuseBlocking/XF/ControllerPlugin/Login.php at line 94
SV\SignupAbuseBlocking\XF\ControllerPlugin\Login->completeLogin() in src/XF/Pub/Controller/Login.php at line 112
XF\Pub\Controller\Login->actionLogin() in src/XF/Mvc/Dispatcher.php at line 321
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 248
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 100
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 50
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2177
XF\App->run() in src/XF.php at line 390
XF::runApp() in index.php at line 20
 
These are bizarre errors.


I am not sure if I had the most recent version, when I got this error, so I guess I better ask if the bug is already fixed :)

Code:
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry '17-1' for key 'active' src/XF/Db/AbstractStatement.php:217

Stack-Trace
INSERT  INTO `xf_sv_multiple_account_token` (`user_id`, `active`, `token`, `token_id`, `token_date`) VALUES (?, ?, ?, ?, ?)
------------

#0 src/XF/Db/Mysqli/Statement.php(196): XF\Db\AbstractStatement->getException('MySQL query err...', 1062, '23000')
#1 src/XF/Db/Mysqli/Statement.php(77): XF\Db\Mysqli\Statement->getException('MySQL query err...', 1062, '23000')
#2 src/XF/Db/AbstractAdapter.php(94): XF\Db\Mysqli\Statement->execute()
#3 src/XF/Db/AbstractAdapter.php(221): XF\Db\AbstractAdapter->query('INSERT  INTO `x...', Array)
#4 src/XF/Mvc/Entity/Entity.php(1452): XF\Db\AbstractAdapter->insert('xf_sv_multiple_...', Array, false)
#5 src/XF/Mvc/Entity/Entity.php(1184): XF\Mvc\Entity\Entity->_saveToSource()
#6 src/XF/Mvc/Entity/Entity.php(1202): XF\Mvc\Entity\Entity->save(true, false)
#7 src/XF/Service/User/Registration.php(279): XF\Mvc\Entity\Entity->save()
#8 src/addons/SV/ModeratorEssentials/XF/Service/User/Registration.php(22): XF\Service\User\Registration->_save()
#9 src/XF/Service/ValidateAndSavableTrait.php(40): SV\ModeratorEssentials\XF\Service\User\Registration->_save()
#10 src/XF/Pub/Controller/Register.php(419): XF\Service\User\Registration->save()
#11 src/XF/Mvc/Dispatcher.php(321): XF\Pub\Controller\Register->actionRegister(Object(XF\Mvc\ParameterBag))
#12 src/XF/Mvc/Dispatcher.php(248): XF\Mvc\Dispatcher->dispatchClass('XF:Register', 'Register', Object(XF\Mvc\RouteMatch), Object(SV\SignupAbuseBlocking\XF\Pub\Controller\Register), NULL)
#13 src/XF/Mvc/Dispatcher.php(100): XF\Mvc\Dispatcher->dispatchFromMatch(Object(XF\Mvc\RouteMatch), Object(SV\SignupAbuseBlocking\XF\Pub\Controller\Register), NULL)
#14 src/XF/Mvc/Dispatcher.php(50): XF\Mvc\Dispatcher->dispatchLoop(Object(XF\Mvc\RouteMatch))
#15 src/XF/App.php(2177): XF\Mvc\Dispatcher->run()
#16 src/XF.php(390): XF\App->run()
#17 index.php(20): XF::runApp('XF\\Pub\\App')
#18 {main}
I think this is a race condition, will add a workaround.

Another one, a bit older; I think it was also after registration:
Code:
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry '1-1' for key 'report' in src/XF/Db/AbstractStatement.php at line 217
XF\Db\AbstractStatement->getException() in src/XF/Db/Mysqli/Statement.php at line 196
XF\Db\Mysqli\Statement->getException() in src/XF/Db/Mysqli/Statement.php at line 77
XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.php at line 94
XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 326
XF\Db\AbstractAdapter->update() in src/XF/Mvc/Entity/Entity.php at line 1457
XF\Mvc\Entity\Entity->_saveToSource() in src/XF/Mvc/Entity/Entity.php at line 1184
XF\Mvc\Entity\Entity->save() in src/XF/Mvc/Entity/Entity.php at line 1254
XF\Mvc\Entity\Entity->saveIfChanged() in src/addons/SV/SignupAbuseBlocking/Repository/MultipleAccount.php at line 212
SV\SignupAbuseBlocking\Repository\MultipleAccount->processMultipleAccountDetectionInternal() in src/addons/SV/SignupAbuseBlocking/Repository/MultipleAccount.php at line 57
SV\SignupAbuseBlocking\Repository\MultipleAccount->SV\SignupAbuseBlocking\Repository\{closure}() in src/XF.php at line 478
XF::asVisitor() in src/addons/SV/SignupAbuseBlocking/Repository/MultipleAccount.php at line 58
SV\SignupAbuseBlocking\Repository\MultipleAccount->processMultipleAccountDetection() in src/addons/SV/SignupAbuseBlocking/XF/ControllerPlugin/Login.php at line 94
SV\SignupAbuseBlocking\XF\ControllerPlugin\Login->completeLogin() in src/XF/Pub/Controller/Login.php at line 112
XF\Pub\Controller\Login->actionLogin() in src/XF/Mvc/Dispatcher.php at line 321
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 248
XF\Mvc\Dispatcher->dispatchFromMatch() in src/XF/Mvc/Dispatcher.php at line 100
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 50
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 2177
XF\App->run() in src/XF.php at line 390
XF::runApp() in index.php at line 20
This error should never happen, but might be a race condition if a user logs in multiple times very fast.

Can you run these two queries.
SQL:
show create table xf_sv_multiple_account_report_data;
select max(report_data_id) from xf_sv_multiple_account_report_data;
 
Thank you!

1st query:
SQL:
CREATE TABLE `xf_sv_multiple_account_report_data` (
 `report_data_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `log_count` int(10) unsigned NOT NULL DEFAULT '0',
 `active` tinyint(3) unsigned DEFAULT '1',
 `report_id` int(10) unsigned DEFAULT NULL,
 PRIMARY KEY (`report_data_id`),
 UNIQUE KEY `report` (`report_id`,`active`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4

2nd query:
Code:
8
 

Users who are viewing this thread

Back
Top