[Date Prev][Date Next] [Chronological] [Thread] [Top]

High volume ldap queries causing corruption in bdb backend.


	I'm trying to use openldap, v2.1.22 on red-hat linux AS 2.1, to support email 
routing with sendmail (8.12.6).  Our email server processes 50-100k messages 
per day.  After running for a few hours, the ldap server suddenly becomes 
very slow to respond.
	I can take sendmail out of the picture and duplicate the problem easily with 
the ldapsearch command.  I setup a shell script that loops through the 
alphabet and searches the ldap server as fast as it can.  Running by itself, 
the script can do about 200k queries per hour and overnight did over 2.7M 
queries without error or slow downs and the CPU load on the server is only 
	The problem is that within minutes of starting a second shell script both 
scripts start experiencing very slow response times, 10 seconds/query.  
Performance does not return to normal when either of the scripts is killed.  
Even after bouncing the ldap server processes the response time is still very 
	The only thing that seems to fix the problem is using db_recover -c before 
starting the server.  If I slow the scripts down to 1 query/second, both 
scripts can run without causing problems.
	I don't understand running two high volume query scripts can corrupt the bdb  
database (version 4.1.25).  There are no updates being done during the time 
the scripts are running.
	I cant imagine that 100k email messages/day is to much for openldap so 
something must be wrong with my installation.  I am going to rebuild the bdb 
software to enable the test scripts and diagnostics but was hoping someone 
else has seen this problem.  
	I didn't see any bdb list servers on the sleepycat web site, is there a 
better place to post this question?  
Peter Johnson	
Humboldt State University