| Version 4 (modified by mtmoore, 20 months ago) |
|---|
Berkeley DB Version for OrangeFS
Background
OrangeFS support staff have identified an issue occurring with OrangeFS with versions of Berkeley DB prior to 4.8.30. The issue manifests itself in missing attribute information from files. The issues describe in these threads are examples of how the issue can manifest iteself:
- http://www.beowulf-underground.org/pipermail/pvfs2-users/2010-September/003186.html
- http://www.beowulf-underground.org/pipermail/pvfs2-users/2011-March/003298.html
Configuration Warning
As of version 2.8.5 OrangeFS will warn about Berkeley DB versions prior to 4.8.30. Of course the warning can be ignored but may lead to the issues described. It is highly recommend for production OrangeFS file systems to use version 4.8.30 of Berkeley DB.
Distribution provided Berkeley DB
Many OS distributions do not come with version 4.8.30 of Berkeley DB.
Determining the installed version of Berkeley DB varies based on package manager however your distributions equivalent of yum info db4 should provide the version. If db4 utilties are installed (e.g. there is a db_stat executable in your path) the version can also be determined with db_stat -V
Although requirements are different for all sites, the easiest work-around is to install a copy of Berkeley DB 4.8.30 in a non-standard location.
OrangeFS Berkeley DB build and run-time requirements
The requirements for Berkeley DB have not changed; they are still:
- Build system requires Berkeley DB headers and libraries
- Servers running the pvfs2-server process require Berkeley DB libraries (and for the library to be in LD_LIBRARY_PATH)
- Clients do not require any Berkeley DB software
Obtaining Berkeley DB
- Main download page for Berkeley DB is at http://www.oracle.com/technetwork/database/berkeleydb/downloads/index.html
- Previous releases of Berkeley DB are available here http://www.oracle.com/technetwork/database/berkeleydb/downloads/index-082944.html
- OrangeFS has not been thoroughly tested against Berkeley DB 11gR2 (i.e. version 5). Although compilation and basic functionality appears to work correctly it hasn't yet been validated.
Non-standard location installation
Following the Berkeley DB installation instructions is best. However, below is a quick walk-through of the general steps. The version of Berkeley DB built here is not meant as a replacement for the version provided with your distribution. It is intended as a stand-alone version of Berkeley DB that provides the needed functionality for use with OrangeFS.
- tar -xzf db-4.8.30.tar.gz
- cd db-4.8.30
- cd build_unix
- ../dist/configure --prefix=/usr/local/db4.8.30
- make
- sudo make install
Again, verify these steps are what you want to do before executing them. They are an example only.
Using non-standard Berkeley DB location with OrangeFS
To use a non-standard Berkeley DB location (one that is not in the default search paths) simply specify --with-db=<path> when configuring OrangeFS. Assuming the above installation the configure step would look like:
./configure --prefix=/usr/local/orangefs --with-db=/usr/local/db4.8.30
Running OrangeFS with a non-standard Berkeley DB location
In the environment the pvfs2-server process is launched from (the command line or init script) LD_LIBRARY_PATH will need to include the path to the non-standard Berkeley DB libraries. One way to achieve this is to set it in the script or current environment, assuming the above installation, with:
export LD_LIBRARY_PATH=/usr/local/db4.8.30/lib:${LD_LIBRARY_PATH}
