Task #83414
closedInvestigate MariaDB 10.2-support for 8 LTS
0%
Description
7.6 LTS together with MariaDB 10.2 gave for me:
„MariaDB version too high
Your MariaDB version 10.2.9-MariaDB is too new. TYPO3 CMS does not run with this version.“
Still trying it out :-) the first thing that failed were with creation of new tt_content-records:
2: SQL error: 'You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'recursive,menu_type,list_type,target,sectionIndex,accessibility_title,accessibil' at line 1'
Maybe there is some possibility to tune SQL-commands in 7.6 LTS to still be compatible with MariaDB 10.2? Maybe Maria shows unclean SQL-statements which worked with earlier versions but were unclean?
Files
Updated by Georg Ringer almost 7 years ago
- Related to Bug #81341: recursive is a reserved keyword in MariaDB 10.2. Causes errors in queries for tt_content... added
Updated by Georg Ringer almost 7 years ago
see #81341 for the original issue. as this is deep into doctrine DBAL (https://github.com/doctrine/dbal/pull/2825) and those fix it only upstream I don't see any way to make it work in TYPO3. therefore I would propose to close this issue.
Updated by Stefan Neufeind almost 7 years ago
- Subject changed from Investigate MariaDB 10.2-support for 7.6 LTS to Investigate MariaDB 10.2-support for 8 LTS
- TYPO3 Version changed from 7 to 8
Discussed with Benni. We might potentially want to have a fix for 8 LTS (as well as master). I've contacted Luís Cobucci about the patch that landed in Doctrine master and his view on the situation. Let's see if there might be a Doctrine-release including that patch for the 2.6-branch or even 2.5 maybe.
Meanwhile I've updated this issue to 8 LTS.
Updated by Stefan Neufeind almost 7 years ago
The fixes in doctrine/dbal (master) will be released with dbal 2.7.0 then. But since 2.6.0 they have a minimum php-requirement for 7.1, so that's not an option for us on TYPO3 8 LTS. I expect we'll have that for TYPO3 9 maybe (#83478).
So I see this forge-issue as a call for solution for 8 LTS only. Raising the dbal-version is not an option. Either we'd need to backport a patch ourselves and ship a patched dbal (potentially patching "cleanly" via composer?), find a different solution or finally decide we won't have MariaDB 10.2-support for 8 LTS.
Updated by Stefan Neufeind almost 7 years ago
- Related to Task #83478: Raise doctrine/dbal-version added
Updated by Georg Ringer almost 7 years ago
I really would like to avoid patching 3rd party code because what happens if there are security issues in doctrine/dbal ... we would need to take care about those as well then.
Regarding PHP 7.1. As PHP 7.0 is EOL Dec2018, I see the best solution to ask users to install TYPO3 with composer and PHP 7.1 and everything is fine and we don't need anything from our side.
Updated by Steffen Kamper almost 7 years ago
i fixed that locally for v7 very easy, as we have this old DB class, so inside INSERTquery i added following:
// Build query
$keys = array_keys($fields_values);
foreach ($keys as $id => $key) {
$keys[$id] = '`' . $key . '`';
}
$query = 'INSERT INTO ' . $table . ' (' . implode(',', array_values($keys)) . ') VALUES ' . '(' . implode(',', $fields_values) . ')';
Updated by Oliver Hader almost 7 years ago
- Category changed from DataHandler aka TCEmain to Database API (Doctrine DBAL)
Updated by Stefan Neufeind over 6 years ago
- Status changed from New to Rejected
Not viable for 7 LTS, not easy to resolve / didn't find consensous yet for 8 LTS. But 9 LTS has a newer dbal already.
So I'm closing this for 7 LTS/8 LTS, sorry.
Sidenote: Issue for another raise of the dbal-version on master (on the road to 9 LTS): #84744
Updated by Stefan Neufeind over 6 years ago
- Related to Task #84744: Raise doctrine/dbal-version added
Updated by Oliver Hader almost 6 years ago
- Related to Bug #87323: PHP 7.0 reached End Of Life, newer Doctrine and MariaDB 10.2/10.3 Support should be possible added
Updated by Rico Leuthold almost 6 years ago
Steffen Kamper wrote:
i fixed that locally for v7 very easy, as we have this old DB class, so inside INSERTquery i added following:
[...]
Hi Steffen - where exactly would I add / change that in v7?
Updated by Andy no-lastname-given almost 6 years ago
Rico Leuthold wrote:
Steffen Kamper wrote:
i fixed that locally for v7 very easy, as we have this old DB class, so inside INSERTquery i added following:
[...]
Hi Steffen - where exactly would I add / change that in v7?
Hi Rico - search for:
// Build query
$query = 'INSERT INTO ' . $table . ' (' . implode(',', array_keys($fields_values)) . ') VALUES ' . '(' . implode(',', $fields_values) . ')';
in: typo3/sysext/core/Classes/Database/DatabaseConnection.php
and replace it like this:
// Build query
$keys = array_keys($fields_values);
foreach ($keys as $id => $key) {
$keys[$id] = '`' . $key . '`';
}
$query = 'INSERT INTO ' . $table . ' (' . implode(',', array_values($keys)) . ') VALUES ' . '(' . implode(',', $fields_values) . ')';
Updated by Ayke Halder about 4 years ago
Patch for TYPO3 7.6