On Jul 13, 2006, at 9:49 AM, Phil Carns wrote:

I haven't followed this thread that closely, but if the problem is shared memory support in the db library, then you could try setting this config file option:

<StorageHints>
...
        DBCacheType mmap
...
</StorageHints>


That will make berkeley db use mmap for the cache rather than shared memory. If the error code is well defined then it should be possible to insert some code to have it fall back to mmap if the shmem options fail,

Good idea Phil, I forgot that we added that option. Unfortunately, I think RobL added the backtrack and retry with mmap code to 1.5.0. I think the only way to fix this for db's configured in this way is to add another failure check for EINVAL and try to open the db env with DB_PRIVATE instead. I'm not sure what the repercussions of that will be, probably a performance hit at the least. I looked through the berkeley db source for this error and found this:

        /*
* Currently we support one kind of mutex that is intra- process only, * POSIX 1003.1 pthreads, because a variety of systems don't support * the full pthreads API, and our only alternative is test- and-set.
         */
#ifdef HAVE_MUTEX_THREAD_ONLY
        if (!LF_ISSET(DB_PRIVATE)) {
                __db_err(dbenv,
"Berkeley DB library configured to support only DB_PRIVATE environments");
                return (EINVAL);
        }
#endif

I guess even with the mmap option, the db env uses MAP_SHARED, so it can't use that either. Its a little surprising to me that a recent linux distro would release berkeley db binaries configured this way. Perhaps centos db packages need a bit of upgrading.

-sam


or maybe just print a descriptive error message suggesting that the user try that option.

I happen to have a centos 4 test box here, but I haven't seen this problem before. Here are the kernel and db versions that it is using:

$ uname -a
Linux centos 2.6.9-34.0.1.EL #1 Wed May 24 07:40:56 CDT 2006 i686 i686 i386 GNU/Linux

$ rpm -qa |grep db4
db4-devel-4.2.52-7.1
db4-4.2.52-7.1
db4-utils-4.2.52-7.1

-Phil

Sam Lang wrote:
Hi Greg,
The path of least resistance for you is to probably build your own db4 and point pvfs2 at that with the --with-db to configure. The db you have installed seems to have been configured with some options that disable using shared memory for the cache. In the long term we should probably look at handling the case where the db isn't configured to work with shared memory.
-sam
On Jul 11, 2006, at 7:04 PM, Greg Bruno wrote:
On 7/11/06, Robert Latham <[EMAIL PROTECTED]> wrote:

On Tue, Jul 11, 2006 at 09:13:12AM -0700, Greg Bruno wrote:
> ./configure --prefix=/opt/pvfs2 --with-kernel=/usr/src/linux-2.6
> make
> make install

Can you tell us what kernel you are running? It sounds like you might
be running a stock kernel.org kernel?


the node has pre-compiled kernel downloaded from a centos mirror:

# uname -a
Linux compute-0-0.local 2.6.9-34.0.1.ELsmp #1 SMP Wed May 24 08:14:29
CDT 2006 i686 i686 i386 GNU/Linux


# rpm -qi kernel-smp
Name : kernel-smp Relocations: (not relocatable)
Version     : 2.6.9                             Vendor: CentOS
Release     : 34.0.1.EL                     Build Date: Wed 24 May
2006 05:22:43 AM PDT
Install Date: Mon 10 Jul 2006 09:31:34 AM PDT Build Host: build-i386
Group       : System Environment/Kernel     Source RPM:
kernel-2.6.9-34.0.1.EL.src.rpm
Size        : 28928141                         License: GPLv2
Signature : DSA/SHA1, Wed 24 May 2006 02:17:52 PM PDT, Key ID a53d0bab443e1821
Packager    : Johnny Hughes <[EMAIL PROTECTED]>
Summary     : The Linux kernel compiled for SMP machines.
Description :
This package includes a SMP version of the Linux kernel. It is
required only on machines with two or more CPUs as well as machines with
hyperthreading technology.

Install the kernel-smp package if your machine uses two or more CPUs.


- gb
_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users

_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users


_______________________________________________
Pvfs2-users mailing list
[email protected]
http://www.beowulf-underground.org/mailman/listinfo/pvfs2-users

Reply via email to