X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org Received: from localhost (av.hub.org [200.46.204.144]) by postgresql.org (Postfix) with ESMTP id 3B06B9DCC9D for ; Tue, 29 Nov 2005 13:28:58 -0400 (AST) Received: from postgresql.org ([200.46.204.71]) by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024) with ESMTP id 09405-07 for ; Tue, 29 Nov 2005 13:28:56 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey- Received: from toad.mtbrook.bozemanpass.com (toad.mtbrook.bozemanpass.com [69.145.82.195]) by postgresql.org (Postfix) with ESMTP id 948D09DCC84 for ; Tue, 29 Nov 2005 13:28:55 -0400 (AST) Received: from [69.145.82.253] (unknown [69.145.82.253]) by toad.mtbrook.bozemanpass.com (Postfix) with ESMTP id A4AB611027B for ; Tue, 29 Nov 2005 09:28:55 -0800 (PST) Message-ID: <438C8FD9.3090302@boreham.org> Date: Tue, 29 Nov 2005 10:28:57 -0700 From: David Boreham User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en MIME-Version: 1.0 To: pgsql-hackers@postgresql.org Subject: Re: ice-broker scan thread References: <20051129110214.GA31333@svana.org> <438C76DA.4060801@boreham.org> <20051129164651.GF31333@svana.org> In-Reply-To: <20051129164651.GF31333@svana.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at hub.org X-Spam-Status: No, score=0 required=5 tests=[AWL=0.000] X-Spam-Score: 0 X-Spam-Level: X-Archive-Number: 200511/1481 X-Sequence-Number: 76763 >By default when you use aio you get the version in libc (-lrt IIRC) >which has the issue I mentioned, probably because it's probably >optimised for the lots-of-network-connections type program where >multiple outstanding requests on a single fd are not meaningful. You >can however link in some other library which gives you kernel support. >However, I don't have a new enough kernel to have the kernel support so >I havn't tested that. > > Actually, after reading up on the current state of things, I'm not sure you can even get POSIX aio on top of kernel aio in Linux. There are also a few limitations in the 2.6 aio implementation that might prove troublesome: for example it only works with O_DIRECT. libaio gives userland access to the kernel aio api (which is different from POSIX aio).