Serie PECL/mysqlnd_ms 1.1
1.1.0
- Fecha de publicación: 09/2011
- Motivo/tema: Cubrir lo básico de la replicación con calidad de producción
Las series 1.1 y 1.0 exponen un conjunto de características similar. Internamente, la serie 1.1 ha sido reestructurada para planificar la incorporación de futuras características. Se ha introducido un nuevo formato del fichero de configuración, y se han eliminado las limitaciones. Además, se ha mejorado la calidad del código y la seguridad de la calidad.
Cambios en las características
-
Se añadió el (encadenable) concepto de filtro:
- Rotura RC: La función mysqlnd_ms_set_user_pick_server() ha sido eliminada. Se ha introducido el filtro user para reemplazarla. El filtro ofrece una funcionalidad similar, aunque existen diferencias que se explican más abajo.
- Nueva sintaxis de configuración más potente basada en JSON.
- Merjora de conexiones retardadas: está cubierta la seguridad relevante y los comandos de cambio de estado.
- Soporte para sentencias preparadas (nativo).
-
Nuevas estadísticas: use_master_guess, use_slave_guess.
- Rotura RC: Cambio en la semántica de las estadísticas use_slave, use_master. Son posibles cambios futuros. Véase mysqlnd_ms_get_stats().
- La lista de mensajes de difusión está extendida por ssl_set.
- Ahora, las llamadas a la biblioteca se monitorizan para recordar los ajustes de conexiones retaradadas: change_user, select_db, set_charset, set_autocommit.
- Se introdujo mysqlnd_ms.disable_rw_split. Este ajuste de configuración permite el uso de la funcionalidad del equilibrado de carga y de las conexiones retardadas independientemente de la división de lecutra-escritura.
Corrección de errores
- Corregido PECL #22724 - Intercambio de servidor (mysqlnd_ms_query_is_select() sensible a mayúsculas/minúsculas)
- Corregido PECL #22784 - No funcionaba mysql_connect y mysql_select_db
- Corregido PECL #59982 - Extensión inusable con with --enable-mysqlnd-ms-table-filter. El uso de la opción NO está soportado. No se debe usar. Se añadió una nota a m4.
- Corregido el error #60119 - host="localhost" se perdía en mysqlnd_ms_get_last_used_connection()
Se ha eliminado la función mysqlnd_ms_set_user_pick_server(), y ha sido
reemplazada por el nuevo filtro user. Ya no se puede establecer una
función de llamada de retorno usando mysqlnd_ms_set_user_pick_server() en
tiempo de ejecución, sino que se ha de configurarla en su lugar en el fichero de configuración del complemento.
El filtro user pasará los mismos argumentos que antes a la llamada de retorno.
Por lo tanto, se puede seguir usando la misma función procedimental como una llamada de retorno.
Ya no es posible usar métodos estáticos de clases, o métodos de clases de
una instancia, como una llamada de retorno. Hacerlo supondrá que la función
ejecutará una sentencia manejada por el complemento para emitir un
error de nivel E_RECOVERABLE_ERROR, el cual podría ser: "(mysqlnd_ms) Specified callback (picker) is not a valid callback."
((mysqlnd_ms) La llamada de retorno (picker) especificada no es una llamada de retorno válida).
Nota: esto podría detener la aplicación.