[omniORB] rendezvouser error

John Chesshir john.chesshir at mainstream-tech.com
Mon Jul 25 14:37:08 BST 2005


	OK.  I have stepped into the omnithread code.  (Reminder, I am
on version 4.0.5 on Red Hat Linux 7.0)  The debugger went into posix.cc,
and threw an error on line 591, which calls the pthread_create function
and hands the return code to the THROW_ERRORS macro.  
	As I stepped through the code, I gathered this information about
what the precompiler had done with the macros:

1. PthreadDraftVersion != 4 or 8
2. __VMS is not defined
3. PthreadSupportThreadPriority is not defined
4. __linux__ is defined

Given #2 and observing execution, and looking at lines 100 to 113 of
posix.cc, I can only conclude that one of the last two of the three
THROW_ERRORS macros actually got used, both of which throw when the
return code is not equal to zero.
	I was able to catch the return code of the pthread_create
function.  It was 1.  Looking online, I found this website

http://www.wlug.org.nz/ErrorMessages 

which indicates 1 equals the error message EPERM, and according to this
website

http://www.opengroup.org/onlinepubs/007908799/xsh/pthread_create.html 

EPERM coming from pthread_create means, "The caller does not have
appropriate permission to set the required scheduling parameters or
scheduling policy."
	We tried running the server with root access to see if getting
past "permissions" would solve the problem.  Instead, we just got a
segmentation fault.
	At this point, I fully realize that this is a Red Hat 7.0 issue
and not omniORB, but I'm just wondering if anybody has faced this
problem.  Red Hat has stopped supporting version 7.0.  
	Duncan, are you sure omniORB will work with Red Hat 7.0?  Are
you possibly mixing it up with a later version?  I hate testing you like
that, but I just want to be sure.  I have heard that their threading was
not very good at that version.  If only our client would upgrade!

Thanks for any help!
John Chesshir



More information about the omniORB-list mailing list