Problemas en la versión 5.1.5 del conector ODBC de MySQL

La versión 5.1.5 del conector ODBC de MySQL da problemas que afectan a cualquier aplicación que lo utilice para conectarse a la base de datos. En mi caso el mensaje de error que me lanzaban diferentes página ASP era el siguiente:

«Error: File /applications/ip2country/lookup.asp Unexpected error. A trappable error
(C0000005) occurred in an external object. The script cannot continue running..»

Este error se producía de forma completamente aleatoria varios cientos de veces al día, llegando a ser terriblemente desesperante y a poner en peligro la relación con algún cliente molesto por la ristra continuada de mensajes de error en su página web.

Por supuesto inicialmente pensé que se trataba de algún bug en mi aplicación, sin embargo después de largas horas de debug conseguí llegar a la raíz: volviendo al conector antiguo (3.5) los errores desaparecían como por arte de magia. Cambiando al nuevo, pasaban pocos minutos antes de que empezara a producirse otra vez. Por supuesto la solución obvia hubiera sido volver al conector antiguo, sin embargo necesitaba las características UTF-8 del conector nuevo de las que el antiguo carecía.

Después de muchas vueltas por la red, dí con el hilo de discusión adecuado en el sitio de reporte de bugs de MySQL y encontré un parche no oficial que un usuario decía que había probado con éxito. Después de probarlo en los servidores a mi cargo puedo dar fe de que el parche funciona, aunque insisto en que no es oficial.

Para poner en marcha la nueva DLL sólo hace falta machacar la antigua y reiniciar el IIS.

El bug en el conector es bastante serio y por lo que pude averiguar, se viene arrastrando desde la versión 5.1.4 y a día de hoy (09/oct/2009) todavía no está solucionado, ni siquiera en la versión snapshot del driver. Espero que la versión final 5.1.6 lo solucione definitivamente.

El hilo de discusión al que hago referencia es el siguiente :

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

Quizá esta información sea útil para alguien más.

  1. hola Juan, realmente te resolvió el problema?
    tengo de esos errores pilas todos los dias!!!

  2. Hola Diego,
    sí, la información que detallo en el post a mí me solucionó bastante, aunque no funciona del todo bien. En realidad se pasa de varios cientos de errores al día a unas pocas decenas, sin embargo esto al menos permite trabajar. Yo estoy suscrito al hilo de discusión de ese bug y por lo visto los desarrolladores no son capaces de reproducirlo y están por cerrar ese reporte de error sin más, así que si tienes un rato y añades tu comentario avisando de que a ti también te falla, quizá contribuya en algo para que se lo sigan planteando.
    Saludos y buena suerte!.

@jfcapristan