Les problèmes suivants concernent le courtier de Message Queue.
Le courtier devient inaccessible lorsque le magasin de données persistant ouvre trop de destinations. (Bogue 4953354)
Solution : Ce problème est dû au fait que le courtier atteint la limite du descripteur de fichier ouvert définie pour le système. Sur Solaris et Linux, utilisez la commande ulimit pour augmenter cette limite.
Les consommateurs sont orphelins lorsqu'une destination est supprimée. ( Bogue 5060787)
Les consommateurs actifs sont orphelins lorsqu'une destination est supprimée. Une fois orphelins, ils ne peuvent plus recevoir de messages (même si la destination est recréée).
Lorsqu'un client JMS utilisant le service de connexion HTTP met brutalement fin à la connexion (en utilisant, par exemple, Ctrl+C), le courtier met environ une minute avant de libérer la connexion client et toutes les ressources associées.
Si une autre instance du client est démarrée dans la minute d'attente en essayant d'utiliser le même ID client, la même souscription durable ou file d'attente, il est possible que celle-ci reçoive une exception « L'ID client est déjà utilisé ». Il ne s' agit pas d'un vrai problème, mais d'un effet secondaire du processus de fin décrit précédemment. Si un client est démarré après un délai d' environ une minute, tout doit fonctionner correctement.
Lors de l'utilisaiton d'une base de données MySQL pour un magasin de données, le stockage de messages supérieurs à 1 MB envoie un message âPacket de requête trop grand...â SQLException. (Bogue 6682815)
Solution : Démarrez le serveur MySQL avec l'option --max_allowed_packet paramétrée sur une valeur supérieure à 1 MB par défaut. Par exemple, utilisez la valeur suivante :
--max_allowed_packet=60M
Lors de l'utilisation de la base de données Java DB pour un magasin de données, le stockage d'un message envoie un message âVerrouillage impossible à obtenir dans le délai requisâ SQLException. (Bogue 6691394)
Solution : Ajouter la valeur de propriété suivante dans le fichier config.properties du courtier.:
imq.persist.jdbc.derby.table.MYCONSTATE41.index.IDX2=CREATE INDEX &(index) ON $(name) (MESSAAGE_ID)
Lors de l'utilisation d'une base de données MySQL pour un magasin de données partagées hautement disponible, un mécanisme est nécessaire pour configurer le moteur de stockage de MySQL comme NDBCLUSTER . (Bogue 6691394)
Solution : Ajoutez la valeur de propriété suivante dans le fichier config.properties du courtier.:
imq.persist.jdbc.mysql.tableoption=EMGINE=NDBCLUSTER