Ha leállt vagy hiba van a queue-ba, akkor a következő tárolt eljárással tudjuk megnézni, hogy milyen csomagok vannak bent, el tudjuk dobni a csomagot, milyen állapotba van, ki-be tudjuk kapcsolni, vagy leállítani újra elindítani a küldés/fogadás queue-t.
EXEC WBR.QueueKezeles @Muvelet =
ahol a művelet lehetséges értékei:
0: következő 10 csomag lekérdezése
1: soron következő csomag eldobás
2: Aktiválás kikapcsolása
3: Aktiválás bekapcsolása
4: Leállítás
5: Elindítás
6: Állapot lekérdezés
Ha azt érzékeljük, hogy nem mennek a csomagok akkor először a 6. művelettel megnézzük, hogy a fogadó és küldő queue-k értéke igaz, ha nem akkor 3. elindítható.
Ha ez után se megy akkor a 0. kérdezzük le, hogy milyen csomagok vannak függőbe, ha az első csomagra nincs szükség akkor 1. dobjuk el, azaz töröljük a sorból, ha a másik oldal tudja fogadni akkor idővel át fog kerülni, vagy kézzel küldjük át (pl. felültről művelettel, vagy EXEC WBR.KuldesUjraKuldes @FogadasNaplo_ID)
Ha esetleg "újraindítás" szükséges akkor 4. művelet, majd 5.
Ha azt érzékeljük, hogy a csomagok beragadtak és nem fognak átmenni, akkor töröljük ki a feladatokat, és kezdjük átküldeni újra, ha már a másik oldal tudja fogadni.
Az első utasítással nézzük meg a conversation "kódjá" majd a másodikba utasításba cseréljük ki a ' ' között, és futtassuk le, majd a harmadik utasítással töröljük ki a ActiveDialog tartalmát.
select * from wbr.ActiveDialog
end conversation '8A1D1E88-B787-E711-80C9-D067E5FCB0B2' with cleanup
delete from wbr.ActiveDialog