First a couple questions to get our context right: what version of svn on the client and on the server?
Is there a slow network between client and server, or are they on the same LAN?
svn --version ``` svn, version 1.9.5 (r1770682) compiled Nov 26 2016, 14:22:31 on x86-microsoft-windows ... The following repository access (RA) modules are available: * ra_svn : Module for accessing a repository using the svn network protocol. - with Cyrus SASL authentication - handles 'svn' scheme * ra_local : Module for accessing a repository on local disk. - handles 'file' scheme * ra_serf : Module for accessing a repository via WebDAV protocol using serf. - using serf 1.3.9 (compiled with 1.3.9) - handles 'http' scheme - handles 'https' scheme The following authentication credential caches are available: * Wincrypt cache in C:\Users\Andry\AppData\Roaming\Subversion ``` svnadmin --version ``` $ svnadmin --version svnadmin, version 1.9.5 (r1770682) compiled Dec 1 2016, 14:48:33 on x86_64-unknown-linux-gnu ... The following repository back-end (FS) modules are available: * fs_fs : Module for working with a plain file (FSFS) repository. * fs_x : Module for working with an experimental (FSX) repository. * fs_base : Module for working with a Berkeley DB repository. ```
Just as background: svn:externals definitions can also optionally take a peg revision (the @REV notation) [1], [2]. Maybe in the future you can use the peg revision syntax to avoid this problem of the "external source" disappearing at some point in history.
It's not mine repo to avoid such cases. Basically people use HEAD revisions to take last changes by one external reference at once (as a solution of multiple projects). I see nothing wrong with what.