I'm trying to get the content of a D5 into a D7

We don't need to get the files or the vocabularies for the moment. Just the nodes, not even their languages which can be mapped to 'en' by default.

I use the migrate_d2d wizard and all goes well until I try to import.

I got this message :
Migration failed with source plugin exception: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'n.language' in 'field list' in database.inc

I really don't know if it is caused by the fact that we have an internationalized D5. Any help would be appreciated.

Thanks

Comments

mikeryan’s picture

Status: Active » Postponed (maintainer needs more info)

I'm not seeing anything in the current code for D5 that would be referencing n.language, could you try the latest -dev or 7.x-2.1-rc1?

Thanks.

mikeryan’s picture

I did happen to have a D5 database (5.0!) lying around and tried that with the current code, had no problem.

Marc Angles’s picture

I obtain the exact same error if I try with 7.x-2.1-rc1+5-dev (latest dev)

I'll try in a new installed D7 and let you know what happen.

mikeryan’s picture

Version: 7.x-2.0 » 7.x-2.x-dev
Marc Angles’s picture

Juts tested in a new D7 installation.

Same error

mikeryan’s picture

There's not much I can tell you based on the information provided - if I can't reproduce it, I can't fix it.

What precisely does "we have an internationalized D5" mean? Added contrib modules to support translation? I don't recall how internationalization was done back in the D5 days...

mikeryan’s picture

Just a thought, can you go to the detail page for your node migration and from the Source tab paste the query?

Thanks.

mikeryan’s picture

One more thing, in the migrate_group table can you look at the 'arguments' column for your migration and verify that the "source_version" value is "5" (i.e., make sure your site hasn't been mis-identified as D6 or D7)?

Marc Angles’s picture

I don't remember the details either.

Module i18n, i18nmenu, locale, translation are installed.

I can see a "language" column in these tables (from the D5 source DB) :

* i18n_node
* i18n_variable
* menu
* term_data
* users
* vocabulary

Marc Angles’s picture

The site is recognized as D7

My bad, I restored the DB inside a D7 environment for several technical reasons. Basically I could not restore a D5 on my aegir machine...

Now It is working.

What I did is patching the migrate_d2d_ui/migrate_d2d_ui.migrate.inc file at line 269 and made it:

$this->sourceVersion = '5'; in the 3 cases.

Forcing to recognize my source as D5.

Hope this is usefull for future D5 migration to recent versions.

BTW this could transform this issue in a Feature request "Force Migrate D2D to recognize version of source drupal"

Thank you for your help.

mikeryan’s picture

Status: Postponed (maintainer needs more info) » Closed (works as designed)

Well, it is working to recognize the source version, if you have mixed two sites in one database then it is not going to have any way to know which one you mean to import. It happens to check for D7 first, then D6, then D5, which is how it ended up assuming D7 in your case.

I've added a note to the documentation warning about mixing versions in your database.