installed in Dec 2016, constant automatic updates to recent version
I performed updates with distributed sql files starting with v4.0 by hand.
I don't understand.
Did you use "automaitc" migration or did you run scripts "by hand" ?
Those sql files are full of errors.
All scripts run like a charm, without any issue, through migration process.
Especially wrong comment markers ('==text', '=== text') are found very often
I don't find any.
All "==" have correct comment marker "--" at start of line.
Related sql statements fail for this
No they don't (if run through migration process)
I recommend to introduce a check for proper db structure
Our migration process, executing each script step by step, ensures that db structure is always the same, whatever version you come from and you go to.
So we don't feel any need for this.
ASAP
For us, asap will be 2040 or later. We won't actually concentrate on this, as we have more urgent things in the roadmap.
And if you need this sooner, maybe concider contribuing : either do it yourself and post your work, contact us to sponsor these devs (we'll then review priority of the feature)
to help keeping updated installations up to date and to ensure new installations are really working
Once again ,our migration process ensures this.
Table "${prefix}budgetelement" altered
That means you defined prefix for tables as ' ${prefix}' ?
I would have guessed MySql would reject this ...
Error on SqlElement to get 'idLanguage' for Class 'User' : field 'idLanguage' not found in Database.
Some errors on object User during migration process are "normal". You connect with new object structure but database is not latered yet.
These errors have no impact on migration process.
Exception-[42S02] SQLSTATE[42S02]: Base table or view not found: 1146 Table 'a.${prefix}delivery' doesn't exist
2017-12-08 05:38:43.710 ***** ERROR ***** [V6.4.4] For query : ALTER TABLE `${prefix}delivery` ADD COLUMN `idProductVersion` INT(12) UNSIGNED DEFAULT NULL;
Ha, I was sure prefix starting with $ would lead to error....
But it does not seem to be the soure of issue. These is a 'a.' before ${prefix} and I cannot guess where it comes from... unless 'a' is the name of your database ? ! ?
Or maybe migration to V6.3.0 had errors you did not notice (log is not shown here)
My advice would be :
1) change this ugly prefix to someting more "conventioanl" ("text_" or nothing"). You'll have to rename all tables but will win on consistency.
2) compare your strcuture with brand new db installed correctly, from scratch.
We don't have automatic process for this, here is a hint : with phpMyAdmin, export both db into scripts (only strucutre, no data)
and compare script...