delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2015/01/12/13:55:52

X-Recipient: archive-cygwin AT delorie DOT com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:content-type:mime-version:subject:from
:in-reply-to:date:content-transfer-encoding:message-id
:references:to; q=dns; s=default; b=rRTSr7vXyDPTTizvabLCHjataAtS
ybWLZb/zGY/3lL0QsIcc+X8LMJt1mGCB9yI/meuo4E1iMxlR1clUUqMX0G/jLJgd
8V+UauzdlzA8v9nV24Krk8QFKSwO/nb9QQoadmcIKYrPnctnVit6Ln9JccLxCcUs
2UsCSn5dVvORf5k=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
:list-unsubscribe:list-subscribe:list-archive:list-post
:list-help:sender:content-type:mime-version:subject:from
:in-reply-to:date:content-transfer-encoding:message-id
:references:to; s=default; bh=l1tiZoIuMRdJpZMIC7q40brFSsc=; b=Gd
Dvhasl5D3QLIrCf9ox+L+ZgAAXGT/496jic5YY+BReRdNPtY3lfrlIuutcHX4gXA
/ys01XijqQZF2CAytMHqSRqnzPNywsUUmUvWZyWXOxj8JdOPYOFwKItZwg4lnSg6
OeBRrQg3GMWLIxF97TSTrfWz/bTh/guzbDDyf07fw=
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-1.3 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2
X-HELO: etr-usa.com
Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\))
Subject: Re: Updated: sqlite3-3.8.7.2-1 for Cygwin/Cygwin64
From: Warren Young <wyml AT etr-usa DOT com>
In-Reply-To: <CAO1jNwto=M6YZ_Q-zY-qcBVvWLNkTnyrPSPticUywSg3pWjW4Q@mail.gmail.com>
Date: Mon, 12 Jan 2015 11:55:28 -0700
Message-Id: <D5908A8D-69EA-48CB-ABBD-4AFFF9B9BB5C@etr-usa.com>
References: <CAO1jNws2XKcySKD0Lzi-C2hWS=pcdHQ7sCSNJADU4qEtgej28A AT mail DOT gmail DOT com> <3949B731-0E84-464F-A5D7-837D31ABF25E AT etr-usa DOT com> <CAO1jNwto=M6YZ_Q-zY-qcBVvWLNkTnyrPSPticUywSg3pWjW4Q AT mail DOT gmail DOT com>
To: The Cygwin Mailing List <cygwin AT cygwin DOT com>
X-IsSubscribed: yes
X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id t0CItm3O014352

On Jan 12, 2015, at 3:28 AM, Jan Nijtmans <jan DOT nijtmans AT gmail DOT com> wrote:

> 2015-01-10 5:35 GMT+01:00 Warren Young:
> 
>> My old environment variable mechanism would let you affect the locking scheme without changing
>> any of the calls to SQLite.  Did that get lost with the change to the VFS-based scheme?  I hope not.
> 
> If you want to restore the old behavior, just add the following lines somewhere
> at the start of your program:

What if you are not the author of the program?

Example disaster scenario:

Someone installs Cygwin Fossil, and exposes its critical _FOSSIL_ file to a native Windows program that could modify it.  Then all you need is a situation where both programs try to modify it at the same time, and you get DB corruption because they aren’t agreeing on locking semantics.

The fix in this particular case is to switch Cygwin Fossil into mandatory locking mode, but the Cygwin Fossil package maintainer can’t make that the default, since that would make it incompatible with other Cygwin programs.

> 1) Why is the environment variable named "CYGWIN_SQLITE_LOCKING"? It's not
> cygwin-specific (it would work fine on Linux as well) and changing the
> default VFS
> does more than only change the locking.

I created it to solve a Cygwin-specific problem.

If someone with commit permission on SQLite wants to add a feature to SQLite that lets anyone change the VFS via an environment variable on any platform, then of course it should use a different name.

I don’t care what it’s called, there just should be a way to change it without rebuilding the program.  Sometimes the person who needs to change the VFS isn’t the one who built the program.

> I hope that some day
> one of those two solutions will be accepted upstream. 

We will need *both* VFSes forever, because they serve different mutually incompatible use case sets.



--
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


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019