[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: SVN checkout speed issue

From: Branko Čibej <brane_at_apache.org>
Date: Tue, 31 Jul 2018 09:20:47 +0200

On 31.07.2018 00:56, Art Hatch wrote:
> Hi Team!
>
> We think there may be a bug, or a feature we don't understand:
>
> When checking out a repository using TortoiseSVN on top of a Visual
> SVN Server v3.6, running on Windows Server 2012R2, we notice that
> files with a mime type set (usually application/octet-stream) download
> from the checkout MUCH FASTER. For a repo with lots of mime types set
> (mostly application/octet-stream, as mentioned), we see speeds around
> 1.5-3MByte/sec. For non-mime-typed files, it's capped at around
> 300kb/sec max. If some files come through with mime types in the
> slower-to-checkout-repo, the DL speed bursts up to 1.5-3MBytes/sec, as
> we see in the faster repo.
>
> This leads us to  believe that SVN's underlying checkout logic is
> running some mime type evaluation logic on files without mimetype set,
> and that the logic ran is extremely inefficient or slow by design.

Sorry, but you believe incorrectly. :)

> *1. is this a bug, or a feature by default?*

There's no clear answer to that. It may be related to some server
settings. It's definitely not by design.

> *2. can we disable the logic doing the mime type check for files
> without mime type data, to speed up checkouts?*

There's no such logic in the Subversion (but, see below). There may be
in the HTTP server, depending on how it's configured.

> *3. can we force SVN to see files without mime types set at text or
> binary, to stop the logic that tries to figure out a file's mime type
> programattically?*

As I said, there's no such code in Subversion.

Well, actually, there is; depending on how Subversion was compiled, it
may try to guess a file's MIME type at 'svn add' and set the
svn:mime-type property on the newly added file (in the working copy).
However, that code does not in any way affect checkouts.

> *4. Any other input or feedback to help us? :)*

If you're accessing the repository via http(s)://, I recommend you check
the Apache HTTPd server settings. It does have an option to try to guess
the MIME type of the file it's serving. However, I don't know if that
option is even available for files that come from a Subversion repository.

Also, overall transmission speed _may_ be related to file size; it's
possible that fewer large files will transfer more quickly than more
small files. Whether that's the case here is hard to see from your
measurements.

-- Brane
Received on 2018-07-31 09:20:57 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.