Return-Path: Delivered-To: apmail-couchdb-dev-archive@www.apache.org Received: (qmail 10936 invoked from network); 2 Nov 2009 06:28:58 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 2 Nov 2009 06:28:58 -0000 Received: (qmail 37320 invoked by uid 500); 2 Nov 2009 06:28:57 -0000 Delivered-To: apmail-couchdb-dev-archive@couchdb.apache.org Received: (qmail 37246 invoked by uid 500); 2 Nov 2009 06:28:57 -0000 Mailing-List: contact dev-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@couchdb.apache.org Delivered-To: mailing list dev@couchdb.apache.org Received: (qmail 37236 invoked by uid 99); 2 Nov 2009 06:28:57 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Nov 2009 06:28:57 +0000 X-ASF-Spam-Status: No, hits=1.2 required=10.0 tests=SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (nike.apache.org: local policy) Received: from [209.85.211.186] (HELO mail-yw0-f186.google.com) (209.85.211.186) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 02 Nov 2009 06:28:49 +0000 Received: by ywh16 with SMTP id 16so4640311ywh.13 for ; Sun, 01 Nov 2009 22:28:27 -0800 (PST) MIME-Version: 1.0 Received: by 10.101.205.22 with SMTP id h22mr2610122anq.114.1257143307429; Sun, 01 Nov 2009 22:28:27 -0800 (PST) In-Reply-To: <4AEE3260.3040600@gmail.com> References: <4AEE3260.3040600@gmail.com> Date: Mon, 2 Nov 2009 08:28:27 +0200 Message-ID: Subject: Re: Anyone using couchdb on windows for real?? I'm considering. From: =?ISO-8859-1?Q?Juhani_R=E4nkimies?= To: dev@couchdb.apache.org, mhammond@skippinet.com.au Content-Type: multipart/mixed; boundary=0016e6d27c7445674504775d7c6f X-Virus-Checked: Checked by ClamAV on apache.org --0016e6d27c7445674504775d7c6f Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable > This is all fairly vague, but IIUC the general idea was that issue 67 wou= ld > provide a level of indirection between the DB name and the actual file na= me, > primarily to support database names which are invalid file-system names. > =A0Then this general support could possibly be leveraged so that whenever= a > database needs to be rolled over, instead of trying to replace it directl= y > on the file-system (which fails on Windows), we just update the "pointer"= to > use a new name, serving all new requests from that db and deleting the ol= d > database once everything has caught up and released the old DB. > Ok, I see. > Also, my mailer isn't showing the "dirty fix" attachment - could you plea= se > resend it (either to me personally or via the list)? > Let's see if zipping it helps. There's two versions now: The original fixes the opening of db so that if db.couch is missing db.couch.compact is renamed before opening. compact_done -handler is tweaked to help windows to actually delete the db.couch, then the couch_db_updater is intentionally crashed, and after a while couch_db:open is called to let couch heal itself. The second approach doesn't crash couch_db_updater anymore, but adds couch_file:win32_rename which closes the file, renames it and opens it again. >> The fsync issue worries me because I don't exactly undestand it's >> implications. It'd be great if someone would elaborate. > ... > > Which looks to me like it is no longer of concern. > Great! Thanks, Juhani --0016e6d27c7445674504775d7c6f Content-Type: application/zip; name="win32_compact_hack.zip" Content-Disposition: attachment; filename="win32_compact_hack.zip" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g1ituvfm0 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 ANUAAABCCgAAAAA= --0016e6d27c7445674504775d7c6f--