Claudio Cherubino's blog Life of a Googler

29Nov/070

Fixare i bug di PHP e MySQL

Nell'ultimo periodo ho dedicato buona parte del mio tempo libero allo studio di alcuni dei più importanti progetti open-source esistenti, tra cui PHP e MySQL, in modo da partecipare allo sviluppo.

Devo ammettere che giàla fase di build dei sorgenti ha richiesto del tempo per essere acquisita.
Ogni progetto prevede il proprio sistema di controllo della versione (CVS, SVN o Bitkeeper) e la sua procedura per la configurazione, compilazione e installazione.

Anzi, se pensate che possa interessare, magari potrei provare a scrivere una guida passo-passo per la compilazione di PHP o MySQL su Ubuntu 7.10, che è la piattaforma di sviluppo che ho adottato.

Una volta che si riesce a compilare il sorgente, il passo successivo è trovare un bug da studiare e tentare di fixare.

Niente di complicato, basta visitare il bug-tracker di PHP o MySQL e scegliere uno dei bug ancora aperti.

Identificato il bug si deve cercare di riprodurlo nella propria macchina.

Se il problema si verifica come descritto, allora si passa allo studio del codice per capire dove intervenire e in che modo.

Ovviamente conviene cominciare da qualche bug facile, in modo da cominciare a conoscere il codice, che in progetti come questi è sicuramente complesso.

Nel mio caso, ho scelto un bug di PHP e uno di MySQL, e sono riuscito a chiuderli entrambi.

Volete mettere la soddisfazione personale di vedere il proprio nome nel codice di PHP, come si vede in questo log?

revision 1.656
date: 2007/11/21 02:27:07; author: stas; state: Exp; lines: +2 -2
fix #42866, from Claudio Cherubino

Il bug in questione è il seguente, e riguardava il supporto per UNICODE nella futura release 6 di PHP:

http://bugs.php.net/bug.php?id=42866

Per quanto riguarda MySQL, invece, il bug riguardava la funzione LAST_DAY():

http://bugs.mysql.com/bug.php?id=32770

ed ecco qui la la descrizione della mia patch, compresa di codice e test case:

http://lists.mysql.com/internals/35187

Lo so che si tratta di piccole cose, ma è sempre un inizio, e anche se la comunitàopen-source non mi saràdebitrice a vita, sicuramente il mio orgoglio di informatico se la passa molto bene...

Comments (0) Trackbacks (0)

No comments yet.


Leave a comment

(required)

No trackbacks yet.