Update from 1.2.11 to 1.2.17 failed / Column not found

  • Hi all,


    I did an update from 1.2.11 to 1.2.17 today and got the following error message:


    Any ideas how to fix it?


    BR
    Mr.X

  • The problem can only occurs if you have downgraded to 1.2.11 from 1.3.x some time ago... Then, because database revisions are not same in 1.2.x and 1.3.x, the r212 db update from 1.2.x which create the php_ini_al_mail_function column has been skipped. Now, you have a corrupted DB schema. Sorry but we canot help you.


    Downgrade is NOT SUPPORTED. Doing this break DB schema.

    badge.php?id=1239063037&bid=2518&key=1747635596&format=png&z=547451206

  • to fix the DB schema you must do it manually, it is a lot of work. since you tested the 1.3.x development version of i-MSCP we are sure it is a testing machine.
    if it is a productive server, you are totally insane! in that case even a proper backup won't help to fix the 1.2.x DB schema, because it looks like you done it a while ago.


    create backup before you start.


    install on a separate testing machine a fresh debian/ubuntu and a fresh i-MSCP 1.2.17, then you need to compare EVERY FIELD IN EVERY TABLE in the imscp DB manually and do the proper changes to the one on the broken server also manually!


    that means you need to find all fields, that are missing, add them and make the correct settings like fieldtype, null/notnull, defaultvalue, collation, and so on.


    i think i can limit your work a little bit, but not for sure, since the exact nightly build of 1.3.x you had installed is not known.


    begin with the tables:
    domain
    php_ini
    reseller_props
    web_software
    web_software_depot


    after you corrected those tables, test EVERYTHING in imscp, really, test every feature. if you don't receive anywhere "unknown error" then you are lucky, if yes, then compare and fix any other table in imscp DB.


    after you are done, you need to correct also the database revision according to the installed imscp version:
    in imscp database, config table, DATABASE_REVISION field


    good luck xD