You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Bert Huijben <be...@qqmail.nl> on 2010/08/24 15:06:53 UTC
RE: svn commit: r988550 - in /subversion/trunk/subversion: libsvn_wc/entries.c tests/cmdline/upgrade_tests.py
> -----Original Message-----
> From: philip@apache.org [mailto:philip@apache.org]
> Sent: dinsdag 24 augustus 2010 16:13
> To: commits@subversion.apache.org
> Subject: svn commit: r988550 - in /subversion/trunk/subversion:
> libsvn_wc/entries.c tests/cmdline/upgrade_tests.py
>
> Author: philip
> Date: Tue Aug 24 14:13:26 2010
> New Revision: 988550
>
> URL: http://svn.apache.org/viewvc?rev=988550&view=rev
> Log:
> Fix upgrade_tests.py 7 in single-db.
>
> * subversion/libsvn_wc/entries.c
> (insert_working_node): Don't force kind to subdir.
> (write_entry): Make working_node subdirs incomplete initially.
How are you going to handle not present but added subdirectories in this way?
You only have one status field for BASE_NODE and not present is only recorded in the parent directories (in the entries world recorded as entry->deleted in the parent dir). But if you set the directory to incomplete the 'not-present' status gets lost.
And this can't be fixed from the directory itself, as it doesn't know that it originally existed as not-present, because we only started propagating this information into the subdir in the WC-NG work.
Bert
Re: svn commit: r988550 - in /subversion/trunk/subversion: libsvn_wc/entries.c tests/cmdline/upgrade_tests.py
Posted by Philip Martin <ph...@wandisco.com>.
"Bert Huijben" <be...@qqmail.nl> writes:
>> -----Original Message-----
>> From: philip@apache.org [mailto:philip@apache.org]
>> Sent: dinsdag 24 augustus 2010 16:13
>> To: commits@subversion.apache.org
>> Subject: svn commit: r988550 - in /subversion/trunk/subversion:
>> libsvn_wc/entries.c tests/cmdline/upgrade_tests.py
>>
>> Author: philip
>> Date: Tue Aug 24 14:13:26 2010
>> New Revision: 988550
>>
>> URL: http://svn.apache.org/viewvc?rev=988550&view=rev
>> Log:
>> Fix upgrade_tests.py 7 in single-db.
>>
>> * subversion/libsvn_wc/entries.c
>> (insert_working_node): Don't force kind to subdir.
>> (write_entry): Make working_node subdirs incomplete initially.
>
> How are you going to handle not present but added subdirectories in this way?
Do you mean
$ svn rm wc/A
$ svn ci -mm wc # wc/A is not-present
$ svn mkdir wc/A
$ svn upgrade wc
I get
$ sqlite3 wc/.svn/wc.db "select * from base_node"
1||1|||normal|dir|1|||1|1282662995630871|pm|infinity||0||||
1|A|1|A||not-present|dir|-1||||||infinity||0||||
$ sqlite3 wc/.svn/wc.db "select * from working_node"
1|A||normal|dir||||||infinity|||||||0||0
which I think is correct. Or do you mean
$ svn mkdir wc/A
$ rm -rf wc/A
$ svn upgrade wc
I get
$ sqlite3 wc/.svn/wc.db "select * from base_node"
1||1|||normal|dir|0|||0|1282663366673755||infinity||0||||
$ sqlite3 wc/.svn/wc.db "select * from working_node"
1|A||incomplete|dir||||||infinity|||||||0||0
I don't think there is any Subversion command to fix the
working=incomplete at present. I suppose the user could revert and do
another mkdir.
> You only have one status field for BASE_NODE and not present is only
> recorded in the parent directories (in the entries world recorded as
> entry->deleted in the parent dir). But if you set the directory to
> incomplete the 'not-present' status gets lost. And this can't be
> fixed from the directory itself, as it doesn't know that it
> originally existed as not-present, because we only started
> propagating this information into the subdir in the WC-NG work.
--
Philip
Re: svn commit: r988550 - in /subversion/trunk/subversion: libsvn_wc/entries.c tests/cmdline/upgrade_tests.py
Posted by Philip Martin <ph...@wandisco.com>.
"Bert Huijben" <be...@qqmail.nl> writes:
>> -----Original Message-----
>> From: philip@apache.org [mailto:philip@apache.org]
>> Sent: dinsdag 24 augustus 2010 16:13
>> To: commits@subversion.apache.org
>> Subject: svn commit: r988550 - in /subversion/trunk/subversion:
>> libsvn_wc/entries.c tests/cmdline/upgrade_tests.py
>>
>> Author: philip
>> Date: Tue Aug 24 14:13:26 2010
>> New Revision: 988550
>>
>> URL: http://svn.apache.org/viewvc?rev=988550&view=rev
>> Log:
>> Fix upgrade_tests.py 7 in single-db.
>>
>> * subversion/libsvn_wc/entries.c
>> (insert_working_node): Don't force kind to subdir.
>> (write_entry): Make working_node subdirs incomplete initially.
>
> How are you going to handle not present but added subdirectories in this way?
Do you mean
$ svn rm wc/A
$ svn ci -mm wc # wc/A is not-present
$ svn mkdir wc/A
$ svn upgrade wc
I get
$ sqlite3 wc/.svn/wc.db "select * from base_node"
1||1|||normal|dir|1|||1|1282662995630871|pm|infinity||0||||
1|A|1|A||not-present|dir|-1||||||infinity||0||||
$ sqlite3 wc/.svn/wc.db "select * from working_node"
1|A||normal|dir||||||infinity|||||||0||0
which I think is correct. Or do you mean
$ svn mkdir wc/A
$ rm -rf wc/A
$ svn upgrade wc
I get
$ sqlite3 wc/.svn/wc.db "select * from base_node"
1||1|||normal|dir|0|||0|1282663366673755||infinity||0||||
$ sqlite3 wc/.svn/wc.db "select * from working_node"
1|A||incomplete|dir||||||infinity|||||||0||0
I don't think there is any Subversion command to fix the
working=incomplete at present. I suppose the user could revert and do
another mkdir.
> You only have one status field for BASE_NODE and not present is only
> recorded in the parent directories (in the entries world recorded as
> entry->deleted in the parent dir). But if you set the directory to
> incomplete the 'not-present' status gets lost. And this can't be
> fixed from the directory itself, as it doesn't know that it
> originally existed as not-present, because we only started
> propagating this information into the subdir in the WC-NG work.
--
Philip