6.11. Reportar bugs de replicación

MySQL 5.0

6.11. Reportar bugs de replicación

Cuando determine que no hay un error de usuario involucrado, y la replicación todavía no funciona o es inestable, es el momento de enviarnos un reporte de bug. Necesitamos obtener toda la infomación posible que nos pueda proporcionar. Por favor dedique algo de tiempo y esfuerzo para preparar un buen reporte de bug.

Si tiene un caso de test repetible que demuestra el bug, por favor introdúzcalo en nuestra base de datos de bugs en http://bugs.mysql.com/. Si tiene un problema “fantasma” (uno que no pueda duplicar a voluntad), use el siguiente procedimiento:

  1. Verifique que no hay ningún error de usuario involucrado. Por ejemplo, si actualiza el esclavo fuera de un flujo esclavo, los datos se desincronizan, y puede tener violaciones de claves únicas en las actualizaciones. En este caso, el flujo esclavo para y espera a que limpie las tablas manualmente para sincronizar. Este no es un problema de replicación. Es un problema de interferencias externas que provocan problemas de replicación.

  2. Ejecute el esclavo con las opciones y . Estas opciones provocan que el esclavo loguee las actualizaciones que recibe del maestro en sus propios logs binarios.

  3. Guarde toda evidencia antes de resetear el estado de replicación. Si no tenemos información o sólo parcial, es difícil o imposible para nosotros encontrar el problema. la evidencia que debe recolectar es:

    • Todos los logs binarios del maestro

    • Todos los logs binarios del esclavo

    • La salida de del maestro cuando descubrió el problema

    • La salida de del maestro cuando descubrió el problema

    • Logs de error del maestro y esclavo

  4. Use mysqlbinlog para examinar los logs binarios. Lo siguiente debería ser útil para encontrar la consulta problemática, por ejemplo:

    shell> mysqlbinlog -j pos_from_slave_status \
                | head
    

Una vez que ha recolectado la evidencia del problema, trate de isolarlo como un caso de test separado. Luego introduzca el problema en nuestra base de datos de bugs en http://bugs.mysql.com/ que es tanta información como sea posible.