X-Original-To: pgsql-hackers-postgresql.org@localhost.postgresql.org Received: from localhost (unknown [200.46.204.2]) by svr1.postgresql.org (Postfix) with ESMTP id 51C23D1C967 for ; Sun, 8 Feb 2004 21:54:53 +0000 (GMT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024) with ESMTP id 56451-08 for ; Sun, 8 Feb 2004 17:54:52 -0400 (AST) Received: from filer (c-24-6-183-218.client.comcast.net [24.6.183.218]) by svr1.postgresql.org (Postfix) with ESMTP id C01BCD1D298 for ; Sun, 8 Feb 2004 17:54:49 -0400 (AST) Received: from localhost (localhost [127.0.0.1]) (uid 1000) by filer with local; Sun, 08 Feb 2004 13:54:51 -0800 Date: Sun, 8 Feb 2004 13:54:51 -0800 From: Kevin Brown To: PostgreSQL-development Subject: Re: [pgsql-hackers-win32] Sync vs. fsync during checkpoint Message-ID: <20040208215450.GI2608@filer> Mail-Followup-To: Kevin Brown , PostgreSQL-development References: <303E00EBDD07B943924382E153890E547AF40C@cuthbert.rcsinc.local> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline In-Reply-To: <303E00EBDD07B943924382E153890E547AF40C@cuthbert.rcsinc.local> Organization: Frobozzco International User-Agent: Mutt/1.5.4i X-Virus-Scanned: by amavisd-new at postgresql.org X-Archive-Number: 200402/291 X-Sequence-Number: 49880 Merlin Moncure wrote: > Kevin Brown wrote: > > > I have no idea whether or not this approach would work in Windows. > > The win32 API has ReadFileScatter/WriteFileScatter, which was developed > to handle these types of problems. These two functions were added for > the sole purpose of making SQL server run faster. They are always > asynchronous and are very efficient. Perhaps the win32 port could just > deal with the synchronization with an eye for future optimizations down > the line? The problem with the approach I described on win32 is that fast fork()s are required for it to not significantly impact the running backends. That is, fork() has to return quickly when called. I don't know whether the implementation of fork() under win32 would be fast enough for this purpose. It might be -- I don't have any experience with fork() on win32 platforms so I can't say. -- Kevin Brown kevin@sysexperts.com