svn freezing at checkout on FreeBSD

Branko Čibej <[email protected]> Mon, 22 Dec 2025 03:52:01 +0100
Newsgroups gmane.comp.version-control.subversion.user
Organization The Apache Software Foundation
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------fFWmR0ZqdN4e0TQD8VXRDzCW
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

On 21. 12. 25 21:14, Anton Shepelev wrote:
> Hello, all.
>
> On FreeBSD 14.3, svn 1.14.2

Out of interest, where did you get this version? I have a VM with 
FreeBSD 14.2 and the Subversion in ports is version 1.14.5.

> freezes at the checkout operation of an
> svn:// repository. The working-directory is created together with the
> .svn subdirectory, but nothing else appears. If I kill the fronzen
> svn process, and do `svn up', it says the working copy is already locked.
> If I do `svn cleanup', then `svn up' hangs forever as well.
>
> I have made sure that both /dev/random and /dev/urandom do not
> block, by reading a single byte from them:
>
>    od -vAn -N2 -tu2 < /dev/random
>    od -vAn -N2 -tu2 < /dev/urandom

Reading one byte won't tell you much. You just tested that the entropy 
pool isn't empty. Try reading 100 or 1000 bytes, that's a more realistic 
test.

> On FreeBSD, /dev/urandom is a symlink to /dev/random, but it
> did not stop other and previous installation of FreeBSD.
> Please, help me shoot this trouble, preferable in the head
> rather than in the foot.

Subversion itself uses randomness -- via APR's 
apr_generate_random_bytes(), which uses /dev/urandom on FreeBSD -- to 
encrypt passwords on disk. This is an optional feature and doesn't seem 
to be enabled in the port. And anyway, /dev/urandom is guaranteed not to 
block, see https://s.apache.org/7v30k .

The other obvious user of randomness is OpenSSL, but the svn:// protocol 
doesn't use it, only the https:// protocol does.


Given all of the above, what evidence do you have that your checkout is 
blocking on /dev/[u]random and not, for example, on DNS resolution?

-- Brane

--------------fFWmR0ZqdN4e0TQD8VXRDzCW
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 21. 12. 25 21:14, Anton Shepelev
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:[email protected]">
      <pre wrap="" class="moz-quote-pre">Hello, all.

On FreeBSD 14.3, svn 1.14.2</pre>
    </blockquote>
    <br>
    Out of interest, where did you get this version? I have a VM with
    FreeBSD 14.2 and the Subversion in ports is version 1.14.5.<br>
    <br>
    <blockquote type="cite"
      cite="mid:[email protected]">
      <pre wrap="" class="moz-quote-pre">freezes at the checkout operation of an
<a class="moz-txt-link-freetext" href="svn://">svn://</a> repository. The working-directory is created together with the
.svn subdirectory, but nothing else appears. If I kill the fronzen
svn process, and do `svn up', it says the working copy is already locked.
If I do `svn cleanup', then `svn up' hangs forever as well.

I have made sure that both /dev/random and /dev/urandom do not
block, by reading a single byte from them:

  od -vAn -N2 -tu2 &lt; /dev/random
  od -vAn -N2 -tu2 &lt; /dev/urandom</pre>
    </blockquote>
    <br>
    Reading one byte won't tell you much. You just tested that the
    entropy pool isn't empty. Try reading 100 or 1000 bytes, that's a
    more realistic test.<br>
    <br>
    <blockquote type="cite"
      cite="mid:[email protected]">
      <pre wrap="" class="moz-quote-pre">On FreeBSD, /dev/urandom is a symlink to /dev/random, but it
did not stop other and previous installation of FreeBSD.
Please, help me shoot this trouble, preferable in the head
rather than in the foot.</pre>
    </blockquote>
    <br>
    Subversion itself uses randomness -- via APR's
    apr_generate_random_bytes(), which uses /dev/urandom on FreeBSD --
    to encrypt passwords on disk. This is an optional feature and
    doesn't seem to be enabled in the port. And anyway, /dev/urandom is
    guaranteed not to block, see <span
style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-family: -webkit-standard; font-size: medium; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; display: inline !important; float: none;"><a class="moz-txt-link-freetext" href="https://s.apache.org/7v30k">https://s.apache.org/7v30k</a>
      .</span><br>
    <br>
    The other obvious user of randomness is OpenSSL, but the <a class="moz-txt-link-freetext" href="svn://">svn://</a>
    protocol doesn't use it, only the https:// protocol does.<br>
    <br>
    <br>
    Given all of the above, what evidence do you have that your checkout
    is blocking on /dev/[u]random and not, for example, on DNS
    resolution?<br>
    <br>
    -- Brane<br>
    <br>
  </body>
</html>

--------------fFWmR0ZqdN4e0TQD8VXRDzCW--