You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Mark Phippard <ma...@gmail.com> on 2008/10/09 18:04:24 UTC

Question about WC changes going into SVN 1.6

Sorry for the drive-by, but this just popped into my head as I was
thinking about the wc-ng stuff a bit.

I believe one of the changes going into 1.6 has to do with the
management of the text-base (using SQLite).  I was wondering if that
included discontinuing the use of the file name in the name of the
file in text-base?  If we did this, that would presumably resolve the
case-sensitivity problems we have on Windows and OSX.

-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Question about WC changes going into SVN 1.6

Posted by Mark Phippard <ma...@gmail.com>.
On Fri, Oct 10, 2008 at 9:22 AM, Branko Čibej <br...@xbc.nu> wrote:
> Mark Phippard wrote:
>> On Fri, Oct 10, 2008 at 9:04 AM, Branko Čibej <br...@xbc.nu> wrote:
>>
>>> Mark Phippard wrote:
>>>
>>>> Sorry for the drive-by, but this just popped into my head as I was
>>>> thinking about the wc-ng stuff a bit.
>>>>
>>>> I believe one of the changes going into 1.6 has to do with the
>>>> management of the text-base (using SQLite).  I was wondering if that
>>>> included discontinuing the use of the file name in the name of the
>>>> file in text-base?  If we did this, that would presumably resolve the
>>>> case-sensitivity problems we have on Windows and OSX.
>>>>
>>>>
>>> It would resolve some of the case-sensitivity problems, yes. It won't
>>> solve the "files in same dir differ only in case" issue, nor the nastier
>>> one where the user (or some tool) changes the case of a filename in the
>>> WC and then we don't find the file in entries any more. And note that
>>> these are not limited to Windows amd Mac, they can happen, e.g., on
>>> Linux on a case-insensitive filesystem (e.g., FAT, or CIFS mount).
>>>
>>
>> True, thanks for pointing this out.  It will only solve the issue of
>> letting you rename a file where you only change the case.
>>
>
> Will it? I think current WC code still stats the rename destination and
> cries if it finds it.

Don't know.  With current code it fails when it tries to create the
text-base and a file of the same name already exists.  So I assumed if
that is fixed then the rest would work.

-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/

Re: Question about WC changes going into SVN 1.6

Posted by Branko Čibej <br...@xbc.nu>.
Mark Phippard wrote:
> On Fri, Oct 10, 2008 at 9:04 AM, Branko Čibej <br...@xbc.nu> wrote:
>   
>> Mark Phippard wrote:
>>     
>>> Sorry for the drive-by, but this just popped into my head as I was
>>> thinking about the wc-ng stuff a bit.
>>>
>>> I believe one of the changes going into 1.6 has to do with the
>>> management of the text-base (using SQLite).  I was wondering if that
>>> included discontinuing the use of the file name in the name of the
>>> file in text-base?  If we did this, that would presumably resolve the
>>> case-sensitivity problems we have on Windows and OSX.
>>>
>>>       
>> It would resolve some of the case-sensitivity problems, yes. It won't
>> solve the "files in same dir differ only in case" issue, nor the nastier
>> one where the user (or some tool) changes the case of a filename in the
>> WC and then we don't find the file in entries any more. And note that
>> these are not limited to Windows amd Mac, they can happen, e.g., on
>> Linux on a case-insensitive filesystem (e.g., FAT, or CIFS mount).
>>     
>
> True, thanks for pointing this out.  It will only solve the issue of
> letting you rename a file where you only change the case.
>   

Will it? I think current WC code still stats the rename destination and
cries if it finds it.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Question about WC changes going into SVN 1.6

Posted by Mark Phippard <ma...@gmail.com>.
On Fri, Oct 10, 2008 at 9:04 AM, Branko Čibej <br...@xbc.nu> wrote:
> Mark Phippard wrote:
>> Sorry for the drive-by, but this just popped into my head as I was
>> thinking about the wc-ng stuff a bit.
>>
>> I believe one of the changes going into 1.6 has to do with the
>> management of the text-base (using SQLite).  I was wondering if that
>> included discontinuing the use of the file name in the name of the
>> file in text-base?  If we did this, that would presumably resolve the
>> case-sensitivity problems we have on Windows and OSX.
>>
>
> It would resolve some of the case-sensitivity problems, yes. It won't
> solve the "files in same dir differ only in case" issue, nor the nastier
> one where the user (or some tool) changes the case of a filename in the
> WC and then we don't find the file in entries any more. And note that
> these are not limited to Windows amd Mac, they can happen, e.g., on
> Linux on a case-insensitive filesystem (e.g., FAT, or CIFS mount).

True, thanks for pointing this out.  It will only solve the issue of
letting you rename a file where you only change the case.

-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/

Re: Question about WC changes going into SVN 1.6

Posted by Branko Čibej <br...@xbc.nu>.
Mark Phippard wrote:
> Sorry for the drive-by, but this just popped into my head as I was
> thinking about the wc-ng stuff a bit.
>
> I believe one of the changes going into 1.6 has to do with the
> management of the text-base (using SQLite).  I was wondering if that
> included discontinuing the use of the file name in the name of the
> file in text-base?  If we did this, that would presumably resolve the
> case-sensitivity problems we have on Windows and OSX.
>   

It would resolve some of the case-sensitivity problems, yes. It won't
solve the "files in same dir differ only in case" issue, nor the nastier
one where the user (or some tool) changes the case of a filename in the
WC and then we don't find the file in entries any more. And note that
these are not limited to Windows amd Mac, they can happen, e.g., on
Linux on a case-insensitive filesystem (e.g., FAT, or CIFS mount).

IMHO that last one can only be solved by actually trying to stat the
files that are flagged as missing after a status tree walk. If it's only
a case change, and the filesystem is case-insensitive, the stat will
succeed and you'll even get the new file name back. Note that a
case-insensitive name compare is *not* enough because there's no
guarantee that the filesystem will do the same kind of case folding that
your locale does; for example, NTFS has a fixed, per-volume casefold
table that's independent of locales.

-- Brane


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Question about WC changes going into SVN 1.6

Posted by Greg Stein <gs...@gmail.com>.
On Thu, Oct 9, 2008 at 12:21 PM, John Szakmeister <jo...@szakmeister.net> wrote:
> On Thu, Oct 9, 2008 at 2:04 PM, Mark Phippard <ma...@gmail.com> wrote:
>> Sorry for the drive-by, but this just popped into my head as I was
>> thinking about the wc-ng stuff a bit.
>>
>> I believe one of the changes going into 1.6 has to do with the
>> management of the text-base (using SQLite).  I was wondering if that
>> included discontinuing the use of the file name in the name of the
>> file in text-base?  If we did this, that would presumably resolve the
>> case-sensitivity problems we have on Windows and OSX.
>
> Yes, I believe that's the case.  Greg can probably speak more to it,
> but we'd like to index the text-bases by checksum instead.

Correct!

The files in 1.6 will be named something like:

.svn/pristine/5d41402abc4b2a76b9719d911017c592

In 1.7, we'll combine a bunch of pristine directories at the wcroot or
in a (home) directory of the user's choosing, and there will be an
extra directory level:

BASE_DIR/pristine/5d/5d41402abc4b2a76b9719d911017c592


Cheers,
-g

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: Question about WC changes going into SVN 1.6

Posted by John Szakmeister <jo...@szakmeister.net>.
On Thu, Oct 9, 2008 at 2:04 PM, Mark Phippard <ma...@gmail.com> wrote:
> Sorry for the drive-by, but this just popped into my head as I was
> thinking about the wc-ng stuff a bit.
>
> I believe one of the changes going into 1.6 has to do with the
> management of the text-base (using SQLite).  I was wondering if that
> included discontinuing the use of the file name in the name of the
> file in text-base?  If we did this, that would presumably resolve the
> case-sensitivity problems we have on Windows and OSX.

Yes, I believe that's the case.  Greg can probably speak more to it,
but we'd like to index the text-bases by checksum instead.

-John

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org