Die nachfolgend beschriebenen Probleme beziehen sich auf den Message Queue-Broker.
Wenn der persistente Datenspeicher zu viele Zielstandorte öffnet, kann auf den Broker nicht mehr zugegriffen werden. (Fehler 4953354)
Umgehung: Diese Bedingung wird vom Broker verursacht, der das Deskriptor-Limit für die offenen Dateien im System erreicht. Unter Solaris und Linux erhöhen Sie das Dateideskriptor-Limit mit dem Befehl ulimit.
Konsumenten verwaisen, wenn ein Zielstandort vernichtet wird. ( Fehler 5060787)
Aktive Konsumenten verwaisen, wenn ein Zielstandort gelöscht wird. Ein verwaister Konsument erhält keine Meldungen mehr (auch dann nicht, wenn der Zielstandort neu erstellt wird).
Wird ein JMS-Client bei Verwendung des HTTP-Verbindungsdiensts plötzlich beendet (z. B. über Strg-C), benötigt der Broker etwa eine Minute, bevor die Clientverbindung und alle damit zusammenhängenden Ressourcen freigegeben werden.
Wird innerhalb dieses Zeitraums eine weitere Instanz des Clients gestartet, die versucht, dieselbe Client-ID, Warteschlange oder dasselbe dauerhafte Abonnement zu verwenden, wird möglicherweise ein Ausnahmefehler "Client-ID wird bereits verwendet" ausgegeben. Dies stellt jedoch kein Problem dar, es handelt sich lediglich um eine Nebenwirkung des vorangehend beschriebenen Beendigungsvorgangs. Wenn der Client nach etwa einer Minute gestartet wird, sollte kein Fehler gemeldet werden.
Bei Verwendung der MySQL-Datenbank für einen Datenspeicher wird bei der Speicherung von Nachrichten mit mehr als 1 MB die Fehlermeldung ausgegeben, dass das Paket für die Abfrage zu groß ist (SQLException). (Fehler 6682815)
Umgehung: Starten sie den MySQL-Server mit der Option --max_allowed_packet von mehr als dem Standardwert 1 MB. Verwenden Sie beispielsweise folgenden Wert:
--max_allowed_packet=60M
Bei Verwendung der Java DB-Datenbank für einen Datenspeicher wird beim Speichern einer Nachricht die Fehlermeldung ausgegeben, dass innerhalb der angeforderten Zeit keine Sperre bezogen werden konnte (SQLException). (Fehler 6691394)
Umgehung: Fügen Sie den folgenden Eigenschaftswert zur config.properties-Datei des Brokers hinzu.:
imq.persist.jdbc.derby.table.MYCONSTATE41.index.IDX2=CREATE INDEX &(index) ON $(name) (MESSAAGE_ID)
Bei Verwendung der MySQL-Datenbank für einen hochverfügbaren gemeinsam genutzten Datenspeicher wird ein Mechanismus benötigt, um das MySQL-Speichermodul als NDBCLUSTER zu konfigurieren. (Fehler 6691394)
Umgehung: Fügen Sie den folgenden Eigenschaftswert zur config.properties-Datei des Brokers hinzu.:
imq.persist.jdbc.mysql.tableoption=EMGINE=NDBCLUSTER