XF 1.3 Import from vB 3.8 to xF 1.3RC1

imthebest

Well-known member
There is a bug when you're importing data from a vB 3.8 forum. I was using the cli importer but I don't know if this have anything to do with the bug itself. Here is the scenario:

1. You need a source vB 3.8 database. On this db you have a user with userid=1 (let's call him "Mike").
2. You need a target xF 1.3 RC1 database. On this stock installation of xF you created the first user and called it "Mike", too. Also you set his password to "mike123".
3. Now you perform the import and choose to retain data IDs and manually merge conflicting members. xenForo notified me of two conflicting members:

- Mike (it's ok)
- Dior (why this random one was found as a conflicting member if I was using a clean xF database?)

Anyway I chose to merge these users with their conflicting ones. And then the import continued flawlessly and finished without further errors but...

4. You'll notice that your xenForo import have appart from all other members, two users:

- Mike: with userid=1 but without any content associated to it (0 posts, threads, and so).
- mike123: with userid=94896 and with all the content from Mike associated to it (all the content from the source vB database). This member was put on the Super Moderators usergroup by xenForo.

Also the finished import is displaying "Latest Member: Mike" which doesn't makes sense since it's userid=1.

I think the expected behavior would have been to have Mike (userid=1) associated with all the content from the import.

Please fix this one, @Mike. Thanks!
 
Last edited:
I'll check and update this later. I also want to report that on my source vB db I had 36,230 members and on my xF import I only have 28,945... that's a lot of difference! Threads and posts numbers are exactly the same though.
 
Last edited:
I'll check and update this later. I also want to report that on my source vB db I had 36,230 members and on my xF import I only have 28,945... that's a lot of difference! Threads and posts numbers are exactly the same though.
There's definitely something wrong with your source database then - the user import code is used by other vBulletin forums with no reported problems, and I don't see any change from 1.2 to 1.3 that would lead to your case (there are exactly 3 lines of changes between 1.2.5 and 1.3RC1, and 8 changes if compared to 1.2.4)

Tried running checks on your source db?
 
I don't understand the relevance of the password component. The system doesn't even know what the password is so I fail to see the connection there. The only way there could be an association is if your conflict/merge involved merging user 94896 into user 1.

Also, note that user 1 is sort of a special case when you retain IDs. It will take most of the information from the source user 1, except for the password, email, and admin status (they will be maintained from the user created with the install).
 
I'll check and update this later. I also want to report that on my source vB db I had 36,230 members and on my xF import I only have 28,945... that's a lot of difference! Threads and posts numbers are exactly the same though.
Just an FYI: Banned members are depreciated, so that's why you ended up with "less members." The banned members are still in the database, just that it's not "counted" towards the displayed count.
 
I'll check and update this later. I also want to report that on my source vB db I had 36,230 members and on my xF import I only have 28,945... that's a lot of difference! Threads and posts numbers are exactly the same though.

Just an FYI: Banned members are depreciated, so that's why you ended up with "less members." The banned members are still in the database, just that it's not "counted" towards the displayed count.

Thanks for pointing that up. I can see that Users Awaiting Email Confirmation are also not counted by xenForo so the numbers are fine!

I'm now going to check if I can reproduce the bug using the standard web importer.
 
I don't understand the relevance of the password component. The system doesn't even know what the password is so I fail to see the connection there. The only way there could be an association is if your conflict/merge involved merging user 94896 into user 1.

Hi Mike, you're right. I noticed that the username of userid=94896 was the same as the password I was using for "Mike" on the clean xF install (i.e. "mike123") so it wasn't getting the password but the username of a random member. So I don't know why the system merges my account with the userid=94896. I'll test with the standard web importer and update this soon.
 
- Dior (why this random one was found as a conflicting member if I was using a clean xF database?)

It's because there was a member called "Diör" appart from the one called "dior". It looks like the importer had troubles with the "ö". I tried forcing the character set to "latin1" and it didn't work. I then tried with "utf8" and it worked! I'm now checking why the account of userid=1 isn't being imported properly.
 
I can see that if I use "utf8" then I get a lot of Server Errors like these:

unserialize(): Error at offset 38 of 43 bytes Today at 5:00 AM - library/XenForo/Importer/vBulletin.php:1710

Also content of my forum (such as posts) isn't imported properly and there are strange characters. Well I think that I'll have to leave the character set value to blank (no forcing) and simply remove the user with "ö" character at the source db before importing.
 
Last edited:
4. You'll notice that your xenForo import have appart from all other members, two users:

- Mike: with userid=1 but without any content associated to it (0 posts, threads, and so).
- mike123: with userid=94896 and with all the content from Mike associated to it (all the content from the source vB database). This member was put on the Super Moderators usergroup by xenForo.

Okay I found something interesting: Mike on the source db has the email field blank. mike123 was an existing member on the source db (with userid=94896) and also had the email field blank. I believe the system thinks that these accounts are related... however the importer didn't mention mike123 as a conflicting member during the import process.
 
Okay I found something interesting: Mike on the source db has the email field blank. mike123 was an existing member on the source db (with userid=94896) and also had the email field blank. I believe the system thinks that these accounts are related... however the importer didn't mention mike123 as a conflicting member during the import process.
It never merges members without an email (plus it would give you a conflict report first).

I'm pretty sure that what's going on is generally just related to your source data. The only way would be to see everything in place (new and old data), and possibly do an import with the data myself.
 
Top Bottom