From owner-freebsd-current Mon Jan 24 16:41:52 2000 Delivered-To: freebsd-current@freebsd.org Received: from fLuFFy.iNt.tElE.dK (fw1.inet.tele.dk [193.163.158.4]) by hub.freebsd.org (Postfix) with ESMTP id B6263152AE for ; Mon, 24 Jan 2000 16:41:47 -0800 (PST) (envelope-from kvindeservice@Fluffy.gets.an.analprobe.dk) Received: from localhost (kvindeservice@localhost) by fLuFFy.iNt.tElE.dK (8.9.3/8.9.3) with SMTP id BAA52676 for ; Tue, 25 Jan 2000 01:41:36 +0100 (CET) (envelope-from kvindeservice@Fluffy.gets.an.analprobe.dk) X-Authentication-Warning: fLuFFy.iNt.tElE.dK: kvindeservice owned process doing -bs Date: Tue, 25 Jan 2000 01:41:36 +0100 (CET) From: K0dewanker X-Sender: kvindeservice@fLuFFy.iNt.tElE.dK Reply-To: luser-boy@netscum.dk To: freebsd-current@freebsd.org Subject: big files, blocking in inode, kern.update, and so on... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Howdy, me again... I wrote to some freebsd list some months/years back asking about this, but now it's time to revisit things. We have an old t^Hrusty 2.2-RELENG box from '97 that's been running like a champ, kinda, after hacking around the problem. But it's time to retire that underpowered box that sees occasional mysterious kernel panics and move on to more reliable hardware. Our machine is running a very hacked version of INN 1.5.1 to which I've added the MD5 history routines, and remembering news articles for a full 14 days. This means that we see history file sizes on the order of -rw-rw-r-- 1 news news 1013138182 Jan 25 01:03 history -rw-rw-r-- 1 news news 120 Jan 25 01:03 history.dir -rw-rw-r-- 1 news news 167184942 Jan 25 00:32 history.hash -rw-rw-r-- 1 news news 111456628 Jan 25 00:31 history.index I've now taken this code and installed it on two machines, one a Solaris box, and the other a FreeBSD-STABLE machine from a couple weeks ago. First was the Slowaris box, it has its problems but still never becomes unresponsive for more than a second or so when giving a `ctlinnd' command. However, as I observed with -current many months ago, the FreeBSD box, every 30 seconds, will totally freeze up for the ctlinnd command for the duration of time that the history disk light is lit and innd is found in `inode' state, which can be 25 seconds, although has been only slighter better than that recently. The history text file is appended to, while the hash and index files are essentially randomly updated at a rate of 10+ articles per second, so much of the entire file needs to be updated. Our 2.2 machine hacked around this problem with the non-solution of increasing the time between `sync's to an hour, so the machine becomes unresponsive for news once an hour for a minute or so, much better than a 50% duty cycle. Now, the `kern.update' sysctl parameter is long gone, and I don't see any suitable replacement to try and tweak this, with or without softupdates. (I'm not using them yet.) But my big question is, how does Solaris do it? to be able to update these large database files without causing innd to have to pause for a significant amount of time? And... Why can't FreeBSD match the performance of Solaris here? What can I do (besides submit patches, of course)? Where did kern.update disappear and is there any chance of a replacement? I have a couple more tricks up my sleeve, but I don't think they will help as much as we need, these drives aren't what you would call slow so a faster drive won't really improve things to the point where I'd be satisfied. thanks for any responses... barry bouwsma, tele danmark internet replies should be directed to the reply-to header address To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message