Bug #35843
closedIncompatibilies in PostgreSQL integration due to use of MySQL-specific functions
0%
Description
In 4.5.3, TYPO3 introduced the usage of the MySQL "find_in_set" function. Since then, it also expects
any given DBMS to have this function, which e.g. PostgreSQL does not have. This leads to having to use
workarounds in the form of the supplied file /typo3/sysext/dbal/res/postgresql/postgresql-compatibility.sql.
Unfortunately, the execution of this file requires the PostgreSQL database to incorporate the plpgsql extension,
which the user is never told to install and won't be installed by the TYPO3 installer. The missing
"find_in_set" function also causes the TYPO3 framework to not find pages created in the backend,
which renders it unusable.
These are some possible solutions we came up with:
- revise the usage of "find_in_set" and maybe resort to proprietary functions
- resort to proprietary PostgreSQL functions when a PgSQL DBMS is selected
- require the user to have plpgsql installed in order to select a PgSQL DBMS
- implement the creation of the compatibility layer without using plpgsql
Tested versions: 4.6.4 and 4.7.0b3