[TYPO3-project-4-3] Deprecating SQL parser in TYPO3 4.3
Xavier Perseguers
typo3 at perseguers.ch
Mon Nov 2 23:59:53 CET 2009
Hi,
FYI, RFC #12440 has been sent to Core list.
Regards
Xavier Perseguers wrote:
> Hi,
>
> I hope to get some (positive) feedback here as I did not mention the
> word "DBAL" in title (ouch I did it anyway with my first few words :D).
>
> OK. Once again, even with DBAL "outside" of Core, there is a real
> problem to get patch committed to trunk when it comes to issues that
> occur "only" when using DBAL.
>
> 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.
>
> There is currently 3 patches waiting in Core that are related to DBAL:
>
> - RFC #10411: sqlparser is not able to parse more than 1 join
> - RFC #12231: New caching framework (4.3-dev) does not work with DBAL
> (oracle)
> - RFC #5120 / #8915: SQL parse error in "Who is online" BE list
>
> Needless to say that you'll easily understand that it's a pain not being
> able to reasonably quickly get feedback when I (or someone else) take
> time to fix gremlins (I think of RFC 5120 for instance).
>
> I don't want to blame anybody, that's really not the point here. The
> point is to propose what I think is a viable solution (Karsten approved):
>
> - Don't fix SQL parser in Core, copy relevant part into DBAL and fix
> bugs there as it is DBAL-related only
> - Keep class in Core but log method calls that are known not to be used
> in Core itself but only in DBAL, just to be sure they are not needed. If
> no log arrises (which should be the case), then deprecate it/remove it.
> We might deprecate it right now as well.
>
> I don't really need +1 for this to happen, it's easy to fix bugs in DBAL
> and leave Core with unmaintained methods. I prefer not doing this "in
> secret".
>
> Now, I still need some feedback for bugs we (the DBAL team and its
> surrounded people) found and fix when it comes to DBAL use. I think of
> RFC #5120 / #8915. This is easily tested with NO DBAL install *at all*!
> Simply apply patch, go to BE module to see who is online, see that it
> still work as before for your MySQL install, give your +1 by testing
> because you don't see any change and let us be happy that yet another
> bug could be fixed to make DBAL work better.
>
> Just read DBAL SVN log to see how it was enhanced and made more reliable
> since real bug fixing sessions can be made much more efficient by having
> it as "external" project. This is a great subproject of this highly
> loved CMS, be cool and let this story keep living!
>
> Thanks.
>
--
Xavier Perseguers
http://xavier.perseguers.ch/en
One contribution a day keeps the fork away
More information about the TYPO3-project-4-3
mailing list