[TYPO3-core] RFC #12440: Copy DBAL-only SQL parser methods from t3lib_sqlparser to ux_t3lib_sqlparser
Oliver Hader
oliver at typo3.org
Tue Nov 3 17:07:00 CET 2009
FYI: Committed to SVN Trunk (rev. 6327)
after my +1 by reading and testing
olly
Xavier Perseguers schrieb:
> Hi,
>
> This is an SVN patch request.
>
> Type: cleanup
>
> References:
> http://bugs.typo3.org/view.php?id=12440
> typo3.projects.typo3_4-3.general, thread "Deprecating SQL parser in
> TYPO3 4.3"
>
> Branches: trunk only
>
> Problem:
> Limitations of the SQL parser are often the cause of bugs in DBAL.
> However main parts of the parsing process are located within class
> t3lib_sqlparser, in Core, although used only by DBAL.
>
> Solution:
> Copy methods to DBAL and deprecate them in Core.
>
> How to "crash test" this patch:
>
> Replace the deprecation log call in patch
>
> + t3lib_div::logDeprecatedFunction();
>
> by
>
> + print_r(debug_backtrace()); die();
>
> and see that your MySQL website still runs as before.
>
>
> Additional notes from thread in typo3_4-3.general:
>
> --------
> Here is some extract from a discussion I had today with Karsten about
> what to do with SQL parser included in Core. I'm not speaking about the
> parser used to allow modifications of the database structure (CREATE
> TABLE, ALTER TABLE, ...) but the SELECT/INSERT/UPDATE parser which is
> used when installing DBAL but not when using MySQL only.
>
>> I would probably remove the code from core. [...] that should mean
> less probability for errors
>>
>> When Kasper put that code in place back in 2004 we all thought/hoped
> that people would go crazy
>> writing DB handlers, but that has not happened.
>>
>> Time to move the code into the right place, I'd say. And that is DBAL.
> --------
>
> DBAL patch will be committed tomorrow, automatically deprecating:
>
> - RFC #12231: New caching framework (4.3-dev) does not work with DBAL
> (oracle) [nobrainer]
> - RFC #10411: sqlparser is not able to parse more than 1 join
>
> Further cleanup in t3lib_sqlparser will certainly occur but later. This
> is a first "big" step!
>
> Thanks for your understanding.
--
Oliver Hader
TYPO3 Release Manager 4.3
More information about the TYPO3-team-core
mailing list