|
|
|
|||||
|
inheritence test hangs
Hi all,
As a (perhaps-soon-to-be-ex) CORBA/C++ guy, I've been interested in trying out ICE, and it looks pretty cool from the docs. I'm trying to get 1.0.1 running on a RedHat 9 box. I got past the compile errors thanks to some posts in this forum. Running the tests, I get to: *** running tests in ./test/Ice/inheritance: starting server... ok starting client... ok Wherupon it just hangs forever. Well, OK, not forever, but for longer than I want to wait around for a test to complete. ;-) Any ideas? Stephen |
|
|||||
|
Thanks, that seems to do the trick.
I noticed that 1.1.0 was available, so I dowloaded it and tried it. (Used the same LD_ASSUME_KERNEL=2.4.1). Now I get the following: *** running tests in ./test/Freeze/cursor: starting client... ok DBI.cpp:141: Freeze: BException:Freeze: BEnvironment("./test/Freeze/cursor/db"): DB_ENV->open: Function not implementedtest failed with exit status 1 This seems like a Berkeley DB error. I have version 4.1.1. Any ideas on this one? Thanks, Stephen |
|
||||||
|
Yes, I've seen that error as well when I tried building Ice against the native BerkeleyDB installed by default on RH9. I'm assuming that RedHat is installing a minimal version of BerkeleyDB, so I'm afraid you'll need to build it yourself.
If you're planning to use Ice for Java, don't forget to use the --enable-java option when configuring BerkeleyDB. - Mark |
|
|||||
|
Hmm, I did build Berkeley DB on this box for another project I'm working on. Actually, I thought that may be the reason that it was failing, because I still have the Berkeley packages that came with RedHat (4.0.x) running side by side with the version I built myself (4.1.x). This has never created problems before in my other project that makes use of Berkeley. I thought about just doing an rpm --erase db4 db4-devel, but too much stuff depends on db4, and the API changed between 4.0 and 4.1.
Any other ideas, or is there anything I can do to get more information that might help? Thanks for your help, Stephen |
|
||||||
|
Hi,
If you unset the LD_ASSUME_KERNEL environment variable, I'll bet that test will work fine. Of course, other Ice tests won't. ![]() After looking into this issue, I discovered that BerkeleyDB (whichever version you use) must be configured on RH9 with the LD_ASSUME_KERNEL environment variable already set. I just built BerkeleyDB 4.1.25 on my RH9 box, but had forgotten to set the environment variable until after I had built and installed BerkeleyDB, and I encountered the same error message. This essentially rules out the use of the native BerkeleyDB that is included with RH9. The good news is that, after building BerkeleyDB with LD_ASSUME_KERNEL set to 2.4.1, the library seems to work fine with or without LD_ASSUME_KERNEL set for applications. We'll add a note about this issue to the INSTALL.LINUX file for the next release. Thanks for bringing this to our attention. - Mark |
|
||||||
|
I looked into this issue a little bit further: there is just one difference when you configure Berkeley DB with or without LD_ASSUME_KERNEL=2.4.1.
With LD_ASSUME_KERNEL=2.4.1, configure outputs: > checking for mutexes ... x86/gcc-assembly Without (the default), configure outputs: > checking for mutexes ... POSIX/pthreads/library So the Berkeley DB that comes with RH9 (or that you build from scratch without worrying about LD_ASSUME_KERNEL) uses the POSIX library. Unfortunately Berkeley DB by default creates process-shared mutex and LinuxThreads does not implement pthread_mutexattr_setpshared( PTHREAD_PROCESS_SHARED ), which explains the failure. I verified all this with a debug Berkeley DB build. Fortunately there is a simple work-around: in Freeze, add DB_PRIVATE to the flags used to initialize the DB environment (see line 170 of src/Freeze/DBI.cpp). Then you can use a Berkeley DB built with POSIX mutexes. Cheers, Bernard |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| python: shutdown of communicator hangs | hiasl | Help Center | 6 | 02-05-2007 02:50 PM |
| IceStorm hangs | T. Barry | Help Center | 1 | 03-02-2006 04:49 AM |
| IcePy 2.0.0 fails, hangs on Mac OS X 10.3 | Michael Halle | Bug Reports | 1 | 11-30-2004 11:07 AM |
| Ice::initialize hangs on Panther | taweili | Help Center | 0 | 11-02-2003 07:28 AM |
| Test fail | Diego Giraldez | Help Center | 6 | 05-09-2003 02:16 PM |