1

I am trying to use the AMS functionality in IBMMQ. After enabling AMS and setting policies to a particular queue I tried to put a message to the queue using MQPUT in the main thread of my application and it succeeded.

Afterwards I tried to give the MQCONN and MQPUT library commands in a separate worker-thread (posix thread)created, and the system always fails by saying the error code 2035 for that particular queue.

Can't we use the AMS facility with multi threading ? what is the settings or changes that needed to be done in order for this to be working?

( Our IBMMQ version is 7.5 / unix readhat / client mode )

Cœur
  • 37,241
  • 25
  • 195
  • 267

1 Answers1

0

In a multi-threaded application, the UserID that is running the application will still be the same user, so should be the same setup. However, the AMQERR01.LOG will show you EXACTLY what the security error actually was.

Morag Hughson
  • 7,255
  • 15
  • 44
  • Yes the user ID should be that way and it shouldn't be changed.But the problem is that in IBMMQ it's not working that way. Here is a output from the application (used amqsputc in both main an worker threads ) /// Main thread //// On Proc Run at MainApp user is -> dev50 Sample AMQSPUT0 start target queue is T.OUTQUEUE Hello World !! amqsput successful /// Worker thread //// On Proc Run at AppWorkerThread user is -> dev50 Sample AMQSPUT0 start target queue is T.OUTQUEUE MQOPEN ended with reason code 2035 unable to open queue for output Sample AMQSPUT0 end – user1503050 Dec 04 '14 at 05:11
  • No error log is printed at any place in /var/mqm with respect to error 2035 as well. – user1503050 Dec 04 '14 at 06:59
  • What are the last few errors in your queue manager AMQERR01.LOG after you receive the 2035 return code in the application? – Morag Hughson Dec 04 '14 at 08:42