## Séries 1.1 PECL/mysqlnd_ms

1.1.0

- Date de sortie : 09/2011
- Motto/thème : Couvre les bases de la réplication avec une qualité de production

Les séries 1.1 et 1.0 exposent un jeu de fonctionnalités similaire. En interne, la série 1.1 a été refactorisée pour accepter des fonctionnalités futures. Un nouveau format de fichier de configuration a été introduit, et les limitations ont été écartées. La qualité du code ainsi que l'assurance qualité ont été améliorées.

Modifications des fonctionnalités

- Ajout du concepte de filtre (chaîné) :

  - Compatibilité ascendante rompue : La fonction mysqlnd_ms_set_user_pick_server() a été supprimée. Le filtre user a été ajouté pour remplacer cette fonction. Ce filtre offre des fonctionnalités similaires (voir ci-dessous pour une explication des différences).
- Nouvelle syntaxe de configuration basée sur le pluissant JSON.
- Amélioration des connexions paraisseuses : les commandes relatives à la sécurité et la modification de statut sont couvertes.
- Support (natif) pour les requêtes préparées.

- Nouvelles statistiques : use_master_guess, use_slave_guess.

  - Compatibilité ascendante rompue : La sémantiques des statistiques a été modifiée pour use_slave et use_master. De futures modifications sont possibles. Voir la fonction mysqlnd_ms_get_stats().
- Liste des messages diffusés étendue par ssl_set.
- Les appels à la bibliothèque sont maintenant monitorés afin de se souvenir de la configuration pour les connexions paraisseuses : change_user, select_db, set_charset, set_autocommit.
- Introduction de mysqlnd_ms.disable_rw_split. L'option de configuration permet la balance de charge et les connexions paraisseuses indépendamment de la séparation des lectures et des écritures.

Corrections de bogues

- Résolution de PECL #22724 - Switch de serveur (mysqlnd_ms_query_is_select(), sensible à la casse)
- Résolution de PECL #22784 - L'utilisation de mysql_connect et mysql_select_db ne fonctionne pas
- Résolution de PECL #59982 - Extension inutilisable avec --enable-mysqlnd-ms-table-filter. L'utilisation de l'option n'estpas supporté. Vous ne devez pas l'utiliser. Ajout de la note au m4.
- Résolution de Bug #60119 - host="localhost" perdu lors de l'utilisation de la fonction mysqlnd_ms_get_last_used_connection()

La fonction mysqlnd_ms_set_user_pick_server() a été supprimée et remplacée par un nouveau filtre user. Vous ne pouvez plus définir de fonction de rappel en utilisant la fonction mysqlnd_ms_set_user_pick_server() au moment de l'exécution, mais plutôt, devez le configurer dans le fichier de configuration du plugin. Le filtre user passe les mêmes arguments à la fonction de rappel qu'auparavant. Toutefois, vous pouvez continuer d'utiliser la même fonction procédurale comme fonction de rappel. Il n'est plus possible d'utiliser les méthodes de classe statiques, ou méthodes de classe d'une instance d'objet, comme fonction de rappel. Si vous le faîtes, la fonction exécutant une requête gérée par le plugin émettra une alerte de niveau `E_RECOVERABLE_ERROR`, qui devrait ressembler à ceci : "(mysqlnd_ms) Specified callback (picker) is not a valid callback." Note : ceci peut interrompre votre application.