User tests: Successful: Unsuccessful:
Pull Request for Issue #25245 .
Update 2019-06-23:
Meanwhile the database package has been updated with another PR in composer.lock, and nightly build from this moring includes that, so issue #25245 should be fixed already in nightly build from this morning.
This PR here still updates the database package to the next version so it includes for the mysql related drivers public functions isMariaDb()
to be used by the CMS e.g. in order to display correct version check texts.
Update the database package from framework for MariaDB compatibility.
Code review and check commit history in 2.0-dev branch of framework database package here:
https://github.com/joomla-framework/database/commits/2.0-dev
Can be merged on review.
Database package up to date.
Database package not up to date.
None.
Status | New | ⇒ | Pending |
Category | ⇒ | External Library Composer Change |
Labels |
Added:
?
?
|
On my live test server, it is reporting 5.5.60-MariaDB on J3. I assume it will not install. I don't have composer on it so I will wait for it to be merged and test the nightly build.
J3?
J3.9.8
As far as I know we don't want to make that for J3, only for J4, or am I wrong?
I assume so. Tested locally successfully with XAMPP (10.3.15-MariaDB). I want to test J4 (5.5.60-MariaDB) on the live server but can't to see if it will install.
@mbabker I've just noticed that when I install J4 on MySQL 5.7 with the PDO driver, all is in utf8 and not utf8mb4, and so the database check shows that the conversion has to be done, but this has no effect. It seems that the utf8mb4 support detection of the MySQL PDO driver is broken. With the MySQLi driver all is ok. It happens also with nightly build of J4 from tonight without this PR installed, and so it is not related to this PR here and the corresponding framework package update, it was broken before. Or can it be we never had utf8mb4 support for the PDO driver? I can't imagine that, but if so, we have to do something. I will see what I can find out, but if you remember some known issue from scratch, please let me know.
@Quy You can find a patched nightly build from this morning plus updated database package from this PR for testing here: https://test5.richard-fath.de/Joomla_4.0.0-alpha10-dev-Development-Full_Package_2019-06-21_pr-25285.zip.
Note that it works only with MySQLi. With MySQL PDO there is an issue, see my previous comment for Michael, but that issue is also there without my patch.
That "issue" does not prevent install or use of the PDO MySQL driver. So it's not a blocker to this item.
Also, it is not an issue with the compatibility code, but probably the configuration layer in the CMS. The Framework code does not arbitrarily try to start at utf8mb4 and degrade to utf8, you have to explicitly configure the connection to indicate utf8mb4 support in your application and then the driver will degrade if not supported. That configuration is in place in the CMS, and I just checked two of the applications I have locally (one on each major version of the database package) and it is correctly connecting with utf8mb4 support.
Yes, I agree, it does not block this. And the connection is ok. But it installs the tables with utf8 only. Very strange. But I guess it will disappear anyway when we clean up the utf8mb4 stuff in framework package 2.0-dev.
@mbabker Quick fix for the framework see here: joomla-framework/database#167. If you merge that, I will update this PR here so it will contain fetch those changes, too.
Edit: No, not the right place.
No go Server version: 5.5.60-MariaDB - MariaDB Server
You need MySQL 10.0 or higher to continue the installation. Your version is: 5.5.60-MariaDB
So your test result (success) is wrong? Or is your MariaDB version too old?
I installed J4 before the database framework got updated.
Why is the error string reporting MySQL 10.0?
You could be right that my MariaDB is too old per their release notes:
MariaDB 5.5.60 is a maintenance release. It includes bugfixes and updates, including from MySQL 5.5.60.
@Quy Try the patched J4 nightly build which I've linked above in my comment for you and also in the (updated) description. It contains already the updated framework database package: https://test5.richard-fath.de/Joomla_4.0.0-alpha10-dev-Development-Full_Package_2019-06-21_pr-25285.zip.
Yes, I tested with your version. I will try to upgrade MariaDB to the latest version.
Why is the error string reporting MySQL 10.0?
There isn't a separate string to say "You need MariaDB 10.0 or higher..." if the version check fails. This is one of the few cases where a isMariaDBConnection()
type method on the MySQL drivers would be useful for callers outside the database API.
This is one of the few cases where a isMariaDBConnection() type method on the MySQL drivers would be useful for callers outside the database API.
@mbabker I will make PR in framework to add that. I should have done that with the last PR, but seems I had forgotten about it. You had mentioned that before in your comment I remember now.
As soon as this PR is in merged I will make a PR for having new UI texts for MariaDB.
Meanwhile the database package has been updated with another PR in composer.lock, and nightly build from this moring includes that, so issue #25245 should be fixed already in nightly build from this morning.
This PR here still updates the database package to the next version so it includes for the mysql related drivers public functions isMariaDb()
to be used by the CMS e.g. in order to display correct version check texts.
Status | Pending | ⇒ | Fixed in Code Base |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2019-06-23 15:36:19 |
Closed_By | ⇒ | wilsonge |
Thanks!
Thanks too.
I have tested this item✅ successfully on 21640e5
Tested with 10.3.15-MariaDB.
This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/25285.