[isf-wifidog] MySQL support - shouldn't we skip it?
Max Horváth
max.horvath at maxspot.de
Dim 22 Jan 21:55:08 EST 2006
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
You got my vote!
Am 23.01.2006 um 03:45 schrieb Benoit Grégoire:
>> I agree with nukeing it for you 1.0 release. 6-8 weeks is not enough
>> time to get something like that in. I also agree with Francois about
>> working toward PDO. I can start working on a mySql schema for a
>> future
>> release that will work with PDO.
>>
>> How do you guys feel?
>
> The initial schema isn't the problem, it could be trivially
> ported. Nor is
> the data abstraction layer (moving to PDO is still a good idea, but
> becomes a
> very low priority if we have only one database to support). The real
> problems are:
>
> -The schema isn't hand written, it's auto-generated to avoid
> mistakes, and to
> allow incremental upgrades without losing data. That means that a
> script
> must be able to generate the MySql schema from the postgres one
> with no human
> intervention.
> -Maintaining support for two or more different databases is a
> nightmare for
> updating schemas automatically and without losing data. Schema
> manipulation
> SQL tend to be quite unportable.
> -It's unrealistic to demand that every developper test every change
> to every
> commit touching sql with both databases (after all the rationale
> for also
> supporting MySql is to lower the barrier of entry, not raise it).
> That means
> that we need some pretty darn complete unit tests for SQL queries.
> There are
> currently 352 different SQL queries in the wifidog codebase. Some
> of them
> can be tested implicitely, but others have several forms that would
> have to
> be tested individually. Obviously it would be very good to have
> such a
> library, but it's at least several week of full time work.
> -Mysql doesn't support triggers in a meaningfull way before version
> 5.1, yet
> it becomes critical that the schema defends against invalid data if
> we expect
> the SQL to destabilise because it has to work with both databases.
> -Even with MySql 5.1, we still couldn't use stored procedures
> (unless we
> maintain two sets), as MySql doesn't support any of the 6 languages in
> postgres, and postgres doesn't support the one that MySql supports.
> -General SQL support in MySql is now much closer to PostgresSQL's,
> but there
> are still annoying little differences that may be hard to detect,
> and even
> harder to debug.
>
> I've written other messages in the archives on the difficulties of
> pulling
> this off. Wifidog isn't your average Blog or other web toy as far
> as SQL
> complexity is concerned. Supporting MySql is possible, but at a
> huge cost in
> human ressources, and yet would remain somewhat of a second class
> citizen.
>
> Nobody ever claimed that MySql support would actually bring any
> benefits
> except popularity and finding webhosting more easily. The latter
> is kind of
> a mot point for now as we'd require a super-recent MySql. The
> former just
> isn't worth the hundreds of hours of additional work plus the constant
> bickering between developpers that one developer's change broke
> something in
> the other database.
>
> The sad truth is that the big SQL vendor's best interests (business
> wise) is
> to keep the SQL "standards" only supported enough so that expertise is
> somewhat portable, but code never is. Untill that changes, supporting
> multiple databases for anything but projecs only requiring very
> basic SQL is
> hugely expensive.
>
> I think that the likely result of supporting MySql is the following:
>
> -Most user's/reviewer's first impression of wifidog would be with
> MySql
> -As MySql suport would have frequent issues, and that wifidog would
> get the
> reputation that's it's low quality software as a result.
>
> The result of dropping it entirely is the following:
>
> -We are now free to use database technologies that have been
> available for 15
> years to harden the schema and make some operations easier, because
> we no
> longuer have to target to the lowest common denominator, resulting
> in a
> better quality product.
>
> So I personally hope MySql support never materialises. However it
> the spirit
> of open source, I would try help someone who is truly commited to
> doing it.
> --
> Benoit Grégoire, http://benoitg.coeus.ca/
> _______________________________________________
> WiFiDog mailing list
> WiFiDog at listes.ilesansfil.org
> http://listes.ilesansfil.org/cgi-bin/mailman/listinfo/wifidog
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Darwin)
iD8DBQFD1EWN+BKgC+eQ3ooRAnnIAJ43K6+R0iztNNVEDWRpTfh4Mkz+WACcC03P
oRU6g5Ei3sLrBTXQ0BKcUnw=
=OOUP
-----END PGP SIGNATURE-----
More information about the WiFiDog
mailing list