Matt Nordhoff wrote:
> GuilhemBichot wrote:
>> Some piece of information, maybe useless: on the local machine, when
>> I killed bzr after it had exchanged 300MB on the network and ran for
>> 4 hours, my branch was only 8KB.
>
> Did you check the size before or after killing it? There should have
> been a pile of data in .bzr/repository/upload, which bzr would have
> deleted when it exited.
Given the symptoms, I'm going to guess something else.
1) I believe the "Generic" fetch code has to stay 'knit' compatible. So
it always fetches
texts
inventories
revisions (and signatures)
In that order.
2) To determine what texts need to be sent, it first has to read the
inventory data looking for text keys that need to be transmitted.
3) The code Martin added to give a warning uses the fact that
inventories are transmitted differently when there is a cross-format
fetch. Which according to (1) means that all the texts have to be
transmitted before it issues the warning.
And in the cross-format case, I think we'll be recompressing all of
those 300+MB of text content before we give the warning.
Obviously this is not satisfactory for the case we are trying to solve.
I think moving the check to be part of "_get_source()" might work. In
that code we'll have a check for "source.network_name() ==
target.network_name()", and we can warn when they aren't identical.
It isn't foolproof. In that fetching from a pack-0.92 format into a 1.9
format has no extra overhead. (The only change is the index format,
which are always generated locally anyway.)
It is possible that we would want to instead special case specific
conversion combinations.
I'll bump this back to needs to be worked on, since the current status
is not satisfactory.
status: confirmed
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Matt Nordhoff wrote: /upload, which bzr would have
> GuilhemBichot wrote:
>> Some piece of information, maybe useless: on the local machine, when
>> I killed bzr after it had exchanged 300MB on the network and ran for
>> 4 hours, my branch was only 8KB.
>
> Did you check the size before or after killing it? There should have
> been a pile of data in .bzr/repository
> deleted when it exited.
Given the symptoms, I'm going to guess something else.
1) I believe the "Generic" fetch code has to stay 'knit' compatible. So
it always fetches
texts
inventories
revisions (and signatures)
In that order.
2) To determine what texts need to be sent, it first has to read the
inventory data looking for text keys that need to be transmitted.
3) The code Martin added to give a warning uses the fact that
inventories are transmitted differently when there is a cross-format
fetch. Which according to (1) means that all the texts have to be
transmitted before it issues the warning.
And in the cross-format case, I think we'll be recompressing all of
those 300+MB of text content before we give the warning.
Obviously this is not satisfactory for the case we are trying to solve.
I think moving the check to be part of "_get_source()" might work. In network_ name() == network_ name()" , and we can warn when they aren't identical.
that code we'll have a check for "source.
target.
It isn't foolproof. In that fetching from a pack-0.92 format into a 1.9
format has no extra overhead. (The only change is the index format,
which are always generated locally anyway.)
It is possible that we would want to instead special case specific
conversion combinations.
I'll bump this back to needs to be worked on, since the current status
is not satisfactory.
status: confirmed
John enigmail. mozdev. org/
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://
iEYEARECAAYFAkt QjTUACgkQJdeBCY SNAANEIACfRo2g3 b9mIZUHbe5ue7JX ljNs tmE5uFi41mg4Prz On
gKQAoMcw4dgpD0h
=gbZA
-----END PGP SIGNATURE-----