about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--externals/Makefile.am11
-rw-r--r--src/libstore/db.cc2
2 files changed, 7 insertions, 6 deletions
diff --git a/externals/Makefile.am b/externals/Makefile.am
index 61122f4ab0f9..c74cb227eaa3 100644
--- a/externals/Makefile.am
+++ b/externals/Makefile.am
@@ -1,11 +1,11 @@
 # Berkeley DB
 
-DB = db-4.1.25
+DB = db-4.2.52
 
 $(DB).tar.gz:
 	@echo "Nix requires Berkeley DB to build."
-	@echo "Please download version 4.1.25 from"
-	@echo "  http://www.sleepycat.com/update/snapshot/db-4.1.25.tar.gz"
+	@echo "Please download version 4.2.52 from"
+	@echo "  http://www.sleepycat.com/update/snapshot/db-4.2.52.tar.gz"
 	@echo "and place it in the externals/ directory."
 	false
 
@@ -20,8 +20,9 @@ build-db: have-db
 	(pfx=`pwd` && \
 	cd $(DB)/build_unix && \
 	CC="$(CC)" CXX="$(CXX)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
-     ../dist/configure --prefix=$$pfx/inst \
-	 --enable-cxx --disable-shared && \
+	 ../dist/configure --prefix=$$pfx/inst \
+	 --enable-cxx --disable-shared --disable-cryptography \
+         --disable-replication --disable-verify && \
 	make && \
 	make install)
 	touch build-db
diff --git a/src/libstore/db.cc b/src/libstore/db.cc
index a97111a3a96d..72823be8bbf6 100644
--- a/src/libstore/db.cc
+++ b/src/libstore/db.cc
@@ -160,7 +160,7 @@ void Database::open(const string & path)
         env->set_lg_bsize(32 * 1024); /* default */
         env->set_lg_max(256 * 1024); /* must be > 4 * lg_bsize */
         env->set_lk_detect(DB_LOCK_DEFAULT);
-        env->set_flags(DB_TXN_WRITE_NOSYNC, 1);
+        env->set_flags(DB_TXN_WRITE_NOSYNC | DB_LOG_AUTOREMOVE, 1);
         
 
         /* The following code provides automatic recovery of the