[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