X-Recipient: archive-cygwin@delorie.com
X-SWARE-Spam-Status: No, hits=-3.1 required=5.0	tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_HOSTKARMA_NO,SPF_HELO_PASS,TW_SV,T_RP_MATCHES_RCVD
X-Spam-Check-By: sourceware.org
To: cygwin@cygwin.com
From: Achim Gratz <Stromeko@nexgo.de>
Subject: Re: cygwin 1.7.15: svn disk I/O error
Date: Wed, 20 Jun 2012 07:25:13 +0200
Lines: 33
Message-ID: <87395qh7wm.fsf@Rainer.invalid>
References: <jrdf56$61r$1@dough.gmane.org>	<CE9C056E12502146A72FD81290379E9A4361BBA1@ENFIRHMBX1.datcon.co.uk>	<jrqjko$dc3$1@dough.gmane.org> <87pq8vxaok.fsf@Rainer.invalid>	<4FE117BA.1020909@etr-usa.com>
Mime-Version: 1.0
Content-Type: text/plain
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1 (gnu/linux)
X-IsSubscribed: yes
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com

Warren Young writes:
>> Note that SQLite isn't really designed for concurrent access
>> to the database file from a different process.
>
> There is a paucity of truth in that statement.

So let me re-formulate that sentence: concurrent access ultimately
relies on the file locking provided by the OS.  The concurrency support
in SQLite is simply to not keep state outside a critical section and
lock the database file exclusively when entering one.

> But, there's only so much SQLite can do to cooperate with the OS's
> locking strategy.  On POSIX systems where SQLite was born, locking is
> mostly advisory and cooperative, whereas Windows gives you mandatory
> locks by default in a lot of cases.  Mandatory locks allow one process
> (e.g. TortoiseSVN) to deny another (e.g. Cygwin svn) the ability to
> change a file, indefinitely.

Cygwin should (and apparently does) abstract away that difference.  But
it seems that the locking strategy might be slightly different between
Win32 and POSIX, triggering a foray into that "disk I/O error" branch.
There may still be a bug some place else, i.e. it may get a timeout
rather than a "file locked" state.  I'll have a look when I find some
time.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

SD adaptation for Waldorf Blofeld V1.15B11:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

