1 2 RELEASE NOTES FOR LESSFS + BERKELEYDB 3 4 --------------------------------------------------- 5 6 Howto build: 7 8 Lessfs with BerkeleyDB requires a recent version 9 of BerkeleyDB. It's tested with BerkeleyDB 4.8 10 11 To build from source: 12 Download BerkeleyDB 4.8 13 tar xf db-4.8.30.tar.gz 14 cd db-4.8.30 15 cd build_unix/ 16 ../dist/configure 17 make 18 make install 19 20 Add /usr/local/BerkeleyDB.4.8/ to ld.so.conf 21 22 tar xf lessfs-1.4.0.tar.gz 23 cd lessfs-1.4.0 24 export CFLAGS="-I /usr/local/BerkeleyDB.4.8/include/ -L /usr/local/BerkeleyDB.4.8/lib" 25 ./configure --with-berkeleydb 26 make 27 make install 28 cp etc/lessfs.cfg-bdb.cfg /etc/lessfs.cfg 29 30 Change /etc/lessfs.cfg 31 mklessfs -f -c /etc/lessfs.cfg 32 lessfs /etc/lessfs.cfg /your/mountpoint 33 34 --- 35 36 Lessfs now supports BerkeleyDB next to tokyocabinet 37 and hamsterdb. The decision to add BerkeleyDB was 38 taken because both tokyocabinet and hamsterdb failed 39 to provide the reliability that is needed for the 40 enterprise. 41 42 Although BerkeleyDB is not the fastest of the three 43 backends when used with a 128k blocksize the performance 44 is acceptable. The reliability is very good, BerkeleyDB 45 not only claims to be ACID but it really is very reliable 46 when it comes to unexpected power downs and crashes. 47 48 You can choose the degree of dataprotection that suits 49 your needs by changing DB_CONFIG. Please take a look 50 at the DB_CONFIG file in the lessfs distribution file. 51 52 Do not use lessfs with berkeleydb without a DB_CONFIG file 53 in the metadata directory! 54 Should lessfs go down because of problems with BerkeleyDB 55 it will generate a logfile which is defined in lib_bdb.h 56 #define BERKELEYDB_ERRORLOG "/var/log/lessfs-bdb_err.txt" 57 58 A typical reason for a crash would be the absence of a 59 DB_CONFIG file which will cause lessfs to run out of 60 bdb locks. 61 62 # We really need these, my system uses approx 6000 63 set_lk_max_locks 10000 64 set_lk_max_lockers 10000 65 set_lk_max_objects 10000 66 67 When you add TUNEFORSPEED=yes to lessfs.cfg BerkeleyDB 68 will be used with : DB_TXN_WRITE_NOSYNC 69 and DB_TXN_NOSYNC | DB_TXN_NOWAIT 70 71 This may increase the throughput of lessfs but it will 72 increase the possibility of data loss! 73 74 Since lessfs-1.4.0 the reuse of deleted data chunks is delayed 75 to 10 * COMMIT_INTERVAL. This to ensure that whenever the system 76 crashes and the database is reverted that no corruption will 77 occur. When the database performs a rollback in time the actual data 78 should not have been overwritten in the blockdata file.