Skip to main content

Orbix 6 itconfigure tool hangs while deploying an Orbix domain.

  • May 17, 2013
  • 0 replies
  • 0 views

Summary Orbix 6 itconfigure tool hangs while deploying an Orbix domain.
Article Number 17302
Environment Orbix 6.3.3
Solaris 10
Question/Problem Description
Orbix 6 itconfigure hangs during domain deployment. 
Deployment log shows:
STARTING TO DEPLOY: domain on host 
STARTING TO PREPARE: iona_services.locator. 
COMPLETED PREPARE: iona_services.locator. 
STARTING TO RUN: iona_services.locator. 
 
Two itlocator processes are started and running in the background, which cannot be stopped unless killed with "kill -9". 
Clarifying Information
Executing the command "pstack " on the process id of the first locator process prints:
$ pstack 27213 
27213:  /orbix/6.3.3/asp/6.3/bin/itlocator -ORBname iona_s
-----------------  lwp# 1 / thread# 1  --------------------  
fe7c5870 read     ()  
00022298 __1cbHIT_ServiceControlManagerImplPosixRrun_in_background6M_nMIT_SCMResult__ ()
00020fc0 __1cbHIT_ServiceControlManagerImplPosixDrun6M_nMIT_SCMResult__ ()
0001fd48 __1cbHIT_ServiceControlManagerImplPosixOaction_handler6M_nMIT_SCMResult__ ()
00017744 main     ()
00016c5c _start   ()
-----------------  lwp# 2 / thread# 2  --------------------  
fe7c4e14 sigtimedwait ()
fe7b0af0 __posix_sigwait ()
ff2ea100 __1cHunf_run6Fpv_0_ ()
fe7c4990 _lwp_start ()
-----------------  lwp# 3 / thread# 3  --------------------  
fe7c4a30 lwp_park ()
fe7bea7c cond_wait_queue ()
fe7beffc cond_wait ()
fe7bf038 pthread_cond_wait ()
ff2ef010 __1cRIT_TimedSemaphoreEwait6MrnTIT_ExceptionHandler__v_ ()
fed9e468 __1cUIT_Work_WorkerThreadDrun6M_pv_ ()
fe7c4990 _lwp_start ()
-----------------  lwp# 4 / thread# 4  --------------------  
fe7c4a30 lwp_park ()
fe7bea7c cond_wait_queue ()
fe7beffc cond_wait ()
fe7bf038 pthread_cond_wait ()
ff2ef010 __1cRIT_TimedSemaphoreEwait6MrnTIT_ExceptionHandler__v_ ()
fed9e468 __1cUIT_Work_WorkerThreadDrun6M_pv_ ()
fe7c4990 _lwp_start ()
-----------------  lwp# 5 / thread# 5  --------------------  
fe7c4a30 lwp_park ()
fe7bea7c cond_wait_queue ()
fe7beffc cond_wait ()
fe7bf038 pthread_cond_wait ()
ff2ef010 __1cRIT_TimedSemaphoreEwait6MrnTIT_ExceptionHandler__v_ ()
fed9e468 __1cUIT_Work_WorkerThreadDrun6M_pv_ ()
fe7c4990 _lwp_start ()
-----------------  lwp# 6 / thread# 6  --------------------  
fe7c4a30 lwp_park ()
fe7bea7c cond_wait_queue ()
fe7beffc cond_wait ()
fe7bf038 pthread_cond_wait ()
ff2ef010 __1cRIT_TimedSemaphoreEwait6MrnTIT_ExceptionHandler__v_ ()
fed9e468 __1cUIT_Work_WorkerThreadDrun6M_pv_ ()
fe7c4990 _lwp_start ()
-----------------  lwp# 7 / thread# 7  --------------------  
fe7c4a30 lwp_park ()
fe7bea7c cond_wait_queue ()
fe7beffc cond_wait ()
fe7bf038 pthread_cond_wait ()
ff2ef010 __1cRIT_TimedSemaph.oreEwait6MrnTIT_ExceptionHandler__v_ ()
Error Message
Defect/Enhancement Number
Cause

This issue is caused by the hard file descriptor limit being set to: unlimited. Check the limit by running the command

ulimit -n

Resolution

Change value to a fixed value. e.g 65535 or less by running

ulimit -n 65535

Workaround
Notes

The second (child) locator is getting ready to daemonize itself and setting up the process environment for that, just prior to exec(). In the course of doing that, it closes all file descriptors it could have inherited from the parent locator, fds from 0 to sysconf(_SC_OPEN_MAX)) [or FOPEN_MAX if the sysconf() fails]. Solaris 10 man page http://download.oracle.com/docs/cd/E19253-01/816-5168/sysconf-3c/index.html says "A call to setrlimit() can cause the value of OPEN_MAX to change."

Calling sysconf() if the limit is set to unlimited returns 2147483647, and this is causing the "Err#9 EBADF" errors.

Attachment

Created date: 06 September 2011
Last Modified: 13 February 2013
Last Published: 20 April 2012
First Published date: 10 September 2011

#KnowledgeDocs
#Orbix