Earl
Well-known member
I've got two users with usernames like 'محمد العلاف' (looks like Arabic characters) and also have plenty of other users with other language characters, in my db:
This is where the script stopped at the beginning:
user with user ID 161751 has its username this 'محمد العلاف'
and the other user have this 'محمد العتوم' as their usernames.
These usernames are different, But script detects it as duplicate users. seems like it only compares the first few characters and ignores the last parts, then it throws this DuplicateKeyException exception.
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry 'محمد الع' for key 'username' in src/XF/Db/AbstractStatement.php at line 212
Luckily these IDs were some random Arabic spammers, so I could remove these two users, But after I re-execute the import command, The script started detecting more users with Unicode characters in their usernames as duplicates. Now I'm totally stuck at this point, there are thousands of users that this script detects as duplicates, and I cant remove them all, They are legit users. (but I tried deleting those users and it allowed to continue the script running.)
Please help
This is where the script stopped at the beginning:
user with user ID 161751 has its username this 'محمد العلاف'
and the other user have this 'محمد العتوم' as their usernames.
These usernames are different, But script detects it as duplicate users. seems like it only compares the first few characters and ignores the last parts, then it throws this DuplicateKeyException exception.
XF\Db\DuplicateKeyException: MySQL query error [1062]: Duplicate entry 'محمد الع' for key 'username' in src/XF/Db/AbstractStatement.php at line 212
- XF\Db\AbstractStatement->getException() insrc/XF/Db/Mysqli/Statement.php at line 196
- XF\Db\Mysqli\Statement->getException() insrc/XF/Db/Mysqli/Statement.php at line 77
- XF\Db\Mysqli\Statement->execute() in src/XF/Db/AbstractAdapter.phpat line 79
- XF\Db\AbstractAdapter->query() in src/XF/Db/AbstractAdapter.php at line 160
- XF\Db\AbstractAdapter->insert() insrc/XF/Import/Data/EntityEmulator.php at line 320
- XF\Import\Data\EntityEmulator->insert() insrc/XF/Import/Data/User.php at line 190
- XF\Import\Data\User->write() in src/XF/Import/Data/AbstractData.phpat line 126
- XF\Import\Data\AbstractData->save() in src/XF/Import/Helper.php at line 107
- XF\Import\Helper->importUser() insrc/XF/Import/Importer/AbstractCoreImporter.php at line 107
- XF\Import\Importer\AbstractCoreImporter->importUser() insrc/addons/XFI/Import/Importer/vBulletin.php at line 1013
- XFI\Import\Importer\vBulletin->stepUsers() insrc/XF/Import/Runner.php at line 160
- XF\Import\Runner->runStep() in src/XF/Import/Runner.php at line 74
- XF\Import\Runner->run() in src/XF/Admin/Controller/Import.php at line232
- XF\Admin\Controller\Import->actionRun() insrc/XF/Mvc/Dispatcher.php at line 249
- XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line88
- XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line41
- XF\Mvc\Dispatcher->run() in src/XF/App.php at line 1931
- XF\App->run() in src/XF.php at line 328
- XF::runApp() in admin.php at line 13
Luckily these IDs were some random Arabic spammers, so I could remove these two users, But after I re-execute the import command, The script started detecting more users with Unicode characters in their usernames as duplicates. Now I'm totally stuck at this point, there are thousands of users that this script detects as duplicates, and I cant remove them all, They are legit users. (but I tried deleting those users and it allowed to continue the script running.)
Please help
Last edited: