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 » AMI and defunct processes on AIX

Post new topic  Reply to topic
 AMI and defunct processes on AIX « View previous topic :: View next topic » 
Author Message
sdrazi
PostPosted: Thu Aug 07, 2008 7:35 am    Post subject: AMI and defunct processes on AIX Reply with quote

Apprentice

Joined: 17 Apr 2007
Posts: 34

Hello,

We are using AMI as the API for Unidata to connect and interact with MQ.
We have an MQ server with 6.0.2.4 version installed on an AIX 5.3 box which also runs unidata.
When the program to write messages to queues (which uses AMI calls) a defunct process gets created on every send of a message (the message is sent successfully though). On debugging, I observed that as soon as the amTerminate call (which Closes the session, closes and deletes any implicitly created objects, and deletes the session) is made a defunct process is created.
The program that calls the subprogram that sends the message, runs in the background all the time.
We have to end the parent program to clear of all the defunct processes.

I have done research on the defunct processes and have read that the normal behavior of AIX is that the defunct processes get cleared off when the parent ends.
Is there a way that defuncts are not created and dont use the process ids in AIX. The MQ on the box handles approximately 10000 messages per day and those many defuncts are getting created which is undesirable.

Thanks for any help on this.
Back to top
View user's profile Send private message
mlr
PostPosted: Thu Aug 07, 2008 5:50 pm    Post subject: Reply with quote

Novice

Joined: 29 Jun 2008
Posts: 13

a process becomes defunct when it ends and its parent has not waited for it.
the solution is to call wait() either for each child pid explicitly, or for all pids. see the wait() unix manual entry for the exact syntax
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 » AMI and defunct processes on AIX
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.