ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » IBM MQ API Support » MQ errors by restart host QueueManager

Post new topic  Reply to topic
 MQ errors by restart host QueueManager « View previous topic :: View next topic » 
Author Message
yogitubadzin
PostPosted: Thu Sep 19, 2013 6:25 am    Post subject: MQ errors by restart host QueueManager Reply with quote

Newbie

Joined: 19 Sep 2013
Posts: 2

Hi,
1.I have a application wchis is connected to QueueManager host. I have three cases:
a)loose connection between QueueManager and client. My application works fine.
b)restat host client - my application works fine
c)restart QueueManagerhost - my application loose connection and we have a big problem w QueueManager!!!!

2.I have this kind errors:
2059 (080B) (RC2059): MQRC_Q_MGR_NOT_AVAILABLE

2162 (0872) (RC2162): MQRC_Q_MGR_STOPPING
2018 (07E2) (RC2018): MQRC_HCONN_ERROR
2009 (07D9) (RC2009): MQRC_CONNECTION_BROKEN

3.Last error is 2059 and loose with line code:
manager = new MQQueueManager(MQListenerWinService.Properties.Settings.Default.QueueManagerName, hashTable);
4.Here is code:
Code:
 
using IBM.WMQ;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Web;
using System.Diagnostics;
 
namespace MQListenerWinService
{
    public class QueueManager
    {
        MQQueueManager manager;
        MQQueue queue;
        MQQueue queueReq;
        MQQueue queueRes;
        LogManager log = new LogManager();
 
        public QueueManager(string flag)
        {
            if (!MQListenerWinService.Properties.Settings.Default.UseDataFromXmlFile)//jesli odczyt z pliku nie inicjuj polaczenia z kolejka
            {
                Hashtable hashTable = new Hashtable();
                hashTable[MQC.HOST_NAME_PROPERTY] = MQListenerWinService.Properties.Settings.Default.QueueManagerHost;//10.10.10.10
                hashTable[MQC.PORT_PROPERTY] = MQListenerWinService.Properties.Settings.Default.QueueManagerPort;//1441;
                hashTable[MQC.CHANNEL_PROPERTY] = MQListenerWinService.Properties.Settings.Default.QueueManagerChannel;//"QUEUE";
                hashTable[MQC.CONNECT_OPTIONS_PROPERTY] = MQC.MQCNO_HANDLE_SHARE_BLOCK;
                if (MQListenerWinService.Properties.Settings.Default.UseSSL)
                {
                    hashTable[MQC.SSL_CERT_STORE_PROPERTY] = MQListenerWinService.Properties.Settings.Default.CertStorePath;
                    hashTable[MQC.SSL_CIPHER_SPEC_PROPERTY] = MQListenerWinService.Properties.Settings.Default.CipherSpec;
                }
 
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_konstruktor_krok_1_przed_instancja_manager");
               
                manager = new MQQueueManager(MQListenerWinService.Properties.Settings.Default.QueueManagerName, hashTable);
 
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_konstruktor_krok_2_po_instancji_manager");
 
                if (manager != null)
                {
                    log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_konstruktor_krok_3_if_manager_not_null");
 
                    if (flag == "EVT")
                    {
                        log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_konstruktor_krok_4_manager_AccessQueue_evt");
                        queue = manager.AccessQueue(MQListenerWinService.Properties.Settings.Default.QueueName,
                                                    MQC.MQOO_INPUT_AS_Q_DEF + MQC.MQOO_FAIL_IF_QUIESCING);
                           
                    }
                    else if (flag == "REQRSP")
                    {
                        log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_konstruktor_krok_4_manager_AccessQueue_reqrsp");
                        queueReq = manager.AccessQueue(MQListenerWinService.Properties.Settings.Default.QueueReqName,
                                                       MQC.MQOO_INPUT_AS_Q_DEF + MQC.MQOO_FAIL_IF_QUIESCING);
                            //WLFRTRGTWSMSCRMREQ
                        queueRes = manager.AccessQueue(MQListenerWinService.Properties.Settings.Default.QueueRspName,
                                                       MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING);
                           
                    }
 
                    log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_krok_5_stworzenie_manager_AccessQueue");
                }
            }
        }
 
        public string GetMsg()
        {
            string msg = "";
 
            MQGetMessageOptions options = new MQGetMessageOptions();
            options.Options += MQC.MQGMO_SYNCPOINT;
 
            MQMessage retrievedMessage = new MQMessage();
            queue.Get(retrievedMessage, options);
 
            msg = Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetString(retrievedMessage.ReadBytes(retrievedMessage.DataLength));
 
            LogManager.AddMQMessageLog(msg);
 
            return msg;
        }
 
 
        //zatwierdzenie transakcji
        public void Commit()
        {
            if (manager != null && manager.IsConnected)
                manager.Commit();
        }
 
        //wycofanie transakcji
        public void Rollback()
        {
            if (manager != null && manager.IsConnected)
                manager.Backout();
        }
 
        public void CloseConnectionEvt()
        {
            log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionEvt");
            if (queue != null && queue.IsOpen)
            {
                queue.Close();
                queue = null;
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionEvt_queue_Close");
            }
 
            if (manager != null && manager.IsConnected)
            {
                manager.Disconnect();
                manager.Close();
                manager = null;
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionEvt_manager_Disconnect");
            }
        }
 
        public void CloseConnectionReqrsp()
        {
            log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionReqrsp_init");
            if (queueReq != null && queueReq.IsOpen)
            {
                queueReq.Close();
                queueReq = null;
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionReqrsp_queueReq_Close");
            }
 
            if (queueRes != null && queueRes.IsOpen)
            {
                queueRes.Close();
                queueRes = null;
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionReqrsp_queueRes_Close");
            }
 
            if (manager != null && manager.IsConnected)
            {
                manager.Disconnect();   
                manager.Close();
                manager = null;
                log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "QueueManager_CloseConnectionReqrsp_manager_Disconnect");
            }
        }
    }
}
 
 
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Globalization;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using MQListenerWinService.CRMService;
using IBM.WMQ;
using MQListenerWinService.Repository;
//using Microsoft.Xrm.Sdk;
//using Microsoft.Crm.Sdk;
 
namespace MQListenerWinService
{
    public partial class MQListenerService : ServiceBase
    {
        LogManager log;
        public MQListenerService()
        {
            InitializeComponent();
            log = new LogManager(this.EventLog);
        }
 
        //polaczenie z kolejka
        QueueManager managerEVT;
        QueueManager managerREQRSP;
        LeadResponse leadRes;
        const string EVT = "EVT";
        const string REQRSP = "REQRSP";
 
        protected override void OnStart(string[] args)
        {
            if (!string.IsNullOrEmpty(MQListenerWinService.Properties.Settings.Default.QueueName))
            {
                managerEVT = new QueueManager(EVT);
                backgroundWorker1.DoWork += new DoWorkEventHandler(backgroundWorker1_DoWork);
                backgroundWorker1.RunWorkerAsync();
            }
 
            if (!string.IsNullOrEmpty(MQListenerWinService.Properties.Settings.Default.QueueReqName)
                &&
               (!string.IsNullOrEmpty(MQListenerWinService.Properties.Settings.Default.QueueRspName)))
            {
                managerREQRSP = new QueueManager(REQRSP);
                backgroundWorker2.DoWork += new DoWorkEventHandler(backgroundWorker2_DoWork);
                backgroundWorker2.RunWorkerAsync();
            }
        }
 
 
        public string GetMsg()
        {
            string msg = "";
 
            MQGetMessageOptions options = new MQGetMessageOptions();
            options.Options += MQC.MQGMO_SYNCPOINT;
 
            MQMessage retrievedMessage = new MQMessage();
            queue.Get(retrievedMessage, options);
 
            msg = Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetString(retrievedMessage.ReadBytes(retrievedMessage.DataLength));
 
            LogManager.AddMQMessageLog(msg);
 
            return msg;
        }
 
 
        byte[] CorrelationId;
        public string GetMsgReqRsp()
        {
            string msg = "";
 
            MQGetMessageOptions options = new MQGetMessageOptions();
            options.Options += MQC.MQGMO_SYNCPOINT;
 
            MQMessage retrievedMessage = new MQMessage();
 
            queueReq.Get(retrievedMessage, options);
 
            msg = Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetString(retrievedMessage.ReadBytes(retrievedMessage.DataLength));
            CorrelationId = retrievedMessage.MessageId;
            LogManager.AddMQMessageLog(msg);
 
            return msg;
        }
 
        public void sendReqRsp(string msg)//z corelation id
        {
            MQMessage messageToSend = new MQMessage();
            messageToSend.CorrelationId = CorrelationId;
            messageToSend.Expiry = 30;
            byte[] bytes = new byte[msg.Length];
 
            Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetBytes(msg, 0, msg.Length, bytes, 0); //iso-8859-2
            messageToSend.Write(bytes);
 
            MQPutMessageOptions messageOptions = new MQPutMessageOptions();
            messageOptions.Timeout = 30;
            queueRes.Put(messageToSend, messageOptions);
            LogManager.AddMQMessageLog(msg);
 
        }
 
        public string sendReq(string msg)
        {
            string msgResponse = "";
 
            MQMessage message = new MQMessage();
            byte[] bytes = new byte[msg.Length];
 
            Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetBytes(msg, 0, msg.Length, bytes, 0); //iso-8859-2
 
            message.Write(bytes);
            queueReq.Put(message);
 
            //Logowanie zadania
            LogManager.AddMQMessageLog(msg);
 
            int timeout = MQListenerWinService.Properties.Settings.Default.Timeout;
            if (timeout < 1)
            {
                timeout = 1;
            }
 
            //oczekiwanie na komunikat zwrotny
            for (int i = 1; i <= timeout; i++)
            {
                try
                {
                    Thread.Sleep(1000);
                    message = new MQMessage();
                    queueRes.Get(message);
                    break;
                }
                catch (MQException ex)
                {
                    if (ex.ReasonCode == 2033) //brak wiadomosci
                    {
                        if (i == timeout)
                        {
                            throw ex;
                        }
                        else
                        {
                            continue;
                        }
                    }
                }
            }
 
 
            msgResponse = Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetString(message.ReadBytes(message.DataLength)); //iso-8859-2
            //logowanie odpowiedzi
            LogManager.AddMQMessageLog(msgResponse);
 
            return msgResponse;
        }
 
        public string sendRes(string msg)//z corelation id
        {
            string msgResponse = "";
 
            MQMessage messageToSend = new MQMessage();
            byte[] bytes = new byte[msg.Length];
 
            Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetBytes(msg, 0, msg.Length, bytes, 0); //iso-8859-2
            messageToSend.Write(bytes);
            queue.Put(messageToSend);
            LogManager.AddMQMessageLog(msg);
 
            //oczekiwanie na odpowiedz
            MQMessage retrievedMessage = new MQMessage();
            retrievedMessage.CorrelationId = messageToSend.MessageId;
 
            MQGetMessageOptions messageOptions = new MQGetMessageOptions();
            messageOptions.Options = MQC.MQGMO_FAIL_IF_QUIESCING | MQC.MQGMO_WAIT;
            messageOptions.WaitInterval = MQListenerWinService.Properties.Settings.Default.Timeout*1000;
            messageOptions.MatchOptions = MQC.MQMO_MATCH_CORREL_ID;
 
            queue.Get(retrievedMessage, messageOptions);
 
            msgResponse = Encoding.GetEncoding(MQListenerWinService.Properties.Settings.Default.Encoding)
                .GetString(retrievedMessage.ReadBytes(retrievedMessage.DataLength)); //iso-8859-2
 
            LogManager.AddMQMessageLog(msgResponse);
 
 
            return msgResponse;
        }
 
        void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            XMLManager xmlManager = new XMLManager();
            //MQListenerWinService.Lead.WolfRtrGtwHeader leadXmlRes;
            //uruchomienie contact admin kolejki           
            do
            {
                try
                {
                    Boolean messageExist = true;
                    do
                    {
                        string msg = String.Empty;
                        try
                        {
                            System.Threading.Thread.Sleep(500);
 
                            //pobranie wiadomosci z kolejki lub pliku                             
                            if (MQListenerWinService.Properties.Settings.Default.UseDataFromXmlFile)//pobieranie danych z plikow xml
                            {
                                messageExist = false;
                                msg = System.IO.File.ReadAllText(MQListenerWinService.Properties.Settings.Default.XmlFilePath);
                            }
                            else//pobieranie danych z kolejki WMQ
                            {
                                if (managerEVT != null)
                                    msg = managerEVT.GetMsg();
                            }
 
                            if (managerEVT != null)
                            {
                                //deserializacja xml do obiektu
                                MQListenerWinService.LeadReq.WolfRtrGtw msgObjEVT =
                                    MQListenerWinService.LeadReq.WolfRtrGtw.Deserialize(msg);
 
                                //commit lub rollback transakcji
                                managerEVT.Commit();
                            }
 
                        }
                        catch (MQException ex)
                        {
                            messageExist = false;
                            MqException(ex, ref managerEVT, log, EVT, msg);
                        }
                        catch (Exception ex)
                        {
                            if (managerEVT != null)
                                managerEVT.CloseConnectionEvt();
                            managerEVT = new QueueManager(EVT);
                            messageExist = false;
                            managerEVT.Commit();
                            log.AddWinEventLog(ex);
                            log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, msg, "Error_CRM_EVT_");
                        }
                    }
                    while (messageExist);
 
                }
                catch (MQException ex)
                {
                    MqException(ex, ref managerEVT, log, EVT, "");
                }
                catch (Exception ex)
                {
                    if (managerEVT != null)
                        managerEVT.CloseConnectionEvt();
                    managerEVT = new QueueManager(EVT);
                    log.AddWinEventLog(ex);
                    log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "", "Error_CRM_EVT_");
                }
 
                //Pauza
                System.Threading.Thread.Sleep(MQListenerWinService.Properties.Settings.Default.Timeout * 1000);
            }
            while (true);
        }
 
        void backgroundWorker2_DoWork(object sender, DoWorkEventArgs e)
        {
            XMLManager xmlManager = new XMLManager();
            leadRes = new LeadResponse();
            log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath,
                             "", "Wejscie do kolejek LEAD");
            //uruchomienie contact admin kolejki           
            do
            {
                try
                {
                    Boolean messageExist = true;
                    do
                    {
                        string msg = String.Empty;
                        try
                        {
                            System.Threading.Thread.Sleep(500);
 
                            #region WLFRTRGTWCMSCRMREQ&WLFRTRGTWCMSCRMRSP
 
                            //pobranie wiadomosci z kolejki lub pliku                             
                            if (MQListenerWinService.Properties.Settings.Default.UseDataFromXmlFile)
                                //pobieranie danych z plikow xml
                            {
                                messageExist = false;
                                msg =
                                    System.IO.File.ReadAllText(
                                        MQListenerWinService.Properties.Settings.Default.XmlFilePath);
                            }
                            else //pobieranie danych z kolejki WMQ
                            {
                                if (managerREQRSP != null)
                                    msg = managerREQRSP.GetMsgReqRsp();
                                //msg = managerREQRSP.sendReq2();
                            }
 
                            if (managerREQRSP != null)
                            {
                                //deserializacja xml do obiektu
                                MQListenerWinService.LeadReq.WolfRtrGtw msgObjREQRSP =
                                    MQListenerWinService.LeadReq.WolfRtrGtw.Deserialize(msg);
 
                                MQListenerWinService.LeadReq.WolfRtrGtwHeader leadXmlRes =
                                    (MQListenerWinService.LeadReq.WolfRtrGtwHeader) (msgObjREQRSP.Header);
                       
                                //polaczenie z crm i wrzucenie danych
 
                                if(msgInQueue)
                                    managerREQRSP.sendReqRsp(xmlManager.LeadRes(leadRes, log));
 
                                managerREQRSP.Commit();
                            }
 
 
                            #endregion
                        }
                        catch (MQException ex)
                        {
                            messageExist = false;
                            MqException(ex, ref managerREQRSP, log, REQRSP, msg);
                        }
                        catch (Exception ex)
                        {
                            if (managerREQRSP != null)
                                managerREQRSP.CloseConnectionReqrsp();
                            managerREQRSP = new QueueManager(REQRSP);
                            messageExist = false;
                            managerREQRSP.Commit();
                            //manager.Rollback();
                            log.AddWinEventLog(ex);
                            log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, msg,
                                             "Error_CRM_REQRSP_");
                        }
                    } while (messageExist);
 
                }
                catch (MQException ex)
                {
                    MqException(ex, ref managerREQRSP, log, REQRSP, "");
                }
                catch (Exception ex)
                {
                    if (managerREQRSP != null)
                        managerREQRSP.CloseConnectionReqrsp();
                    managerREQRSP = new QueueManager(REQRSP);
                    log.AddWinEventLog(ex);
                    log.LogMsgToFile(MQListenerWinService.Properties.Settings.Default.XMLMessageLogPath, "",
                                     "Error_CRM_REQRSP_");
                }
 
            } while (true);
        }
 
        protected override void OnStop()
        {
            managerEVT.CloseConnectionEvt();
            managerREQRSP.CloseConnectionReqrsp();
        }
 
 
        public static void MqException(MQException ex, ref QueueManager manager, LogManager log, string kind, string msg)
        {
            if (ex.ReasonCode == 2033)
            {
                manager.Commit();
            }
            else if ((ex.ReasonCode == 2538) || (ex.ReasonCode == 2162))
            {
                log.AddWinEventLog(ex);
                log.LogMsgToFile(Properties.Settings.Default.XMLMessageLogPath, msg, "Error_MQRC_" + ex.ReasonCode.ToString(CultureInfo.InvariantCulture) + "_" + kind + "_");
                System.Threading.Thread.Sleep(30000);
            }
            else
            {
                log.AddWinEventLog(ex);
                log.LogMsgToFile(Properties.Settings.Default.XMLMessageLogPath, msg, "Error_MQRC_" + ex.ReasonCode.ToString(CultureInfo.InvariantCulture)+ "_" + kind +"_");
 
                if (kind == "REQRSP")
                {
                    manager.CloseConnectionReqrsp();
                }
                else if (kind == "EVT")
                {
                    manager.CloseConnectionEvt();
                }
 
                manager = new QueueManager(kind);
            }
        }
}
}
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Sep 19, 2013 6:31 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Edit your post above to use ]code[ tags.
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
yogitubadzin
PostPosted: Thu Sep 19, 2013 7:45 am    Post subject: Reply with quote

Newbie

Joined: 19 Sep 2013
Posts: 2

Ok. Code is in C#. Help, problem is very difficult.
Two situations:
a)when restart host client:
http://postimg.org/image/nc3qbuzxd/full/

b)when restart QueueManager host:
http://postimg.org/image/bwpfonwgx/full/
Back to top
View user's profile Send private message
Vitor
PostPosted: Thu Sep 19, 2013 8:33 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

yogitubadzin wrote:
problem is very difficult.


Why? You have a series of error codes which indicate either a controlled closedown (2162 and a few others) or an unexpected loss of connection (2059, 2009 etc) or an expected situation (2033). In the same way you trap a 2033 & commit, trap a 2162 (etc) and closedown, for the rest attempt to reconnect (or use MQ client auto-reconnect if it's available to you) & give up if the problem persists.

Simple.
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
lancelotlinc
PostPosted: Thu Sep 19, 2013 9:26 am    Post subject: Reply with quote

Jedi Knight

Joined: 22 Mar 2010
Posts: 4941
Location: Bloomington, IL USA

Vitor wrote:
yogitubadzin wrote:
problem is very difficult.


Why? You have a series of error codes which indicate either a controlled closedown (2162 and a few others) or an unexpected loss of connection (2059, 2009 etc) or an expected situation (2033). In the same way you trap a 2033 & commit, trap a 2162 (etc) and closedown, for the rest attempt to reconnect (or use MQ client auto-reconnect if it's available to you) & give up if the problem persists.

Simple.


And you said Java was difficult...
_________________
http://leanpub.com/IIB_Tips_and_Tricks
Save $20: Coupon Code: MQSERIES_READER
Back to top
View user's profile Send private message Send e-mail
Vitor
PostPosted: Thu Sep 19, 2013 9:56 am    Post subject: Reply with quote

Grand High Poobah

Joined: 11 Nov 2005
Posts: 26093
Location: Texas, USA

lancelotlinc wrote:
Vitor wrote:
yogitubadzin wrote:
problem is very difficult.


Why? You have a series of error codes which indicate either a controlled closedown (2162 and a few others) or an unexpected loss of connection (2059, 2009 etc) or an expected situation (2033). In the same way you trap a 2033 & commit, trap a 2162 (etc) and closedown, for the rest attempt to reconnect (or use MQ client auto-reconnect if it's available to you) & give up if the problem persists.

Simple.


And you said Java was difficult...


It is. I'm too old to be a SWINGer...
_________________
Honesty is the best policy.
Insanity is the best defence.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Page 1 of 1

MQSeries.net Forum Index » IBM MQ API Support » MQ errors by restart host QueueManager
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.