Date: Fri, 04 Dec 1998 12:32:24 -0400 From: Luis Munoz <lem@cantv.net> To: freebsd-hackers@FreeBSD.ORG, freebsd-isp@FreeBSD.ORG Subject: Problem with DB password database? Message-ID: <3.0.6.32.19981204123224.00b6ac90@pop.cantv.net>
next in thread | raw e-mail | index | archive | help
Hi there: As part of a stress testing excercise we're doing in a set of FreeBSD servers, we created 250000+ accounts on each machine (yes, they work fine with those numbers :) We used five machines, with five different user populations. The idea is to simulate 1.2M+ users for POP/SMTP service. During this excercise, we found that one of the machine did this: bash# pwd_mkdb -p /etc/master.passwd put: Unknown error: 0 or something *very* similar to this as I'm writing from memory. The only difference among the five machines, is the usernames. Each machine has a unique set of usernames selected according to an MD5 based algorithm. There are no duplicate users on any machines yet all the users share the same UID (which is not important to us since there's no shell access). I did two tests after this (repeatable) failure. (a) pwd_mkdb'ed the master.passwd from another server. This worked flawlessly. (b) Removed 50000 users from the original master.passwd and pwd_mkdb'ed it. This also worked flawlessly. My theory, which I would like to hear opinions about, is that this particular set of users is generating a problem with DB (perhaps too many collisions?) thus the failure in put() for no apparent error. I even did a ktrace of the pwd_mkdb and found that it is not getting any signals or errors. DB 'decides' to terminate. It also strikes me that pwd_mkdb is terminating somewhere between the middle and two thirds of the file. I have the [very big] master.passwd available if someone wants to take a look at it and try to repeat the 'experiment'. I don't think this is a very serious issue IF the problem is triggered by the size of the database AND particular conditions within it, as I doubt somebody will 'attempt this at home' :) BTW, this is on 2.2.6-RELEASE w 256M RAM and plenty of disk space. On this scenario, a pwd_mkdb -u takes less than a minute. pwd_mkdb -u with my 'multi -u' patches takes about the same ammount of time for 10 users. A full pwd_mkdb takes about 110 minutes. Regards. -lem ------------ Luis E. Muņoz Centro de Operaciones de la Red CANTV Servicios To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isp" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3.0.6.32.19981204123224.00b6ac90>