Domanda
Qualcuno sa come cancellare DeadLetterQueue da jBoss? Quando inizio jBoss, è in attesa di 4 minuti a:
12:09:06,281 INFO [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=DefaultDS' to JNDI name 'java:DefaultDS'
e altri 4 min a:
[DLQ] () Bound to JNDI name: queue/DLQ
E penso che probabilmente devo chiarire questo queue..but non è dentro jBoss ...?
Qualcuno può dare una mano di aiuto?
grazie in anticipo.
Soluzione
La risposta che hai trovato rimuoverà i messaggi da tutte le code, che non è sempre auspicabile.
È inoltre possibile eseguire la stessa via JMX, invocando removeAllMessages () sul jboss.mq.destination:. Name = DLQ; servizio = mbean coda
In alternativa, è possibile eliminare la necessità di irrigare manualmente il DLQ a tutti - in conf / jboss-service.xml, aggiungere <TimeToLive>86400000</TimeToLive>
all'elemento <DLQConfig>
. Che scadranno i messaggi dopo 1 giorno.
Altri suggerimenti
Se si sta andando a risolverlo tramite SQL, almeno assicurarsi che le code sono non legato al tempo e limitare al Dead Letter Queue in questo modo:
delete from jms_messages where destination = 'DLQ';
Risolto: C'è un database jbossdb:
delete FROM jms_messages ;