He tenido durante varios años un ordenador viejo con Mandrake / Mandriva instalado.  Después de la actualización de Mandriva 2006 a Mandriva 2007 se quedaba colgado cada vez que arrancaba en modo gráfico.  No había ninguna clase de problemas en arrancar KDE desde la consola.  Habiendo probado Ubuntu en otros ordenadores decidí instalarlo en este ordenador también.

 Al tener dos repositorios de subversion en el ordenador, los exporté con
svnadmin dump /ruta/a/repositorio > /ruta/a/fichero_dump Desgraciadamente con la versión de subversion que viene con Ubuntu Edgy no era posible volver a importar los repositorios.
svn load /ruta/a/repositorio < /ruta/a/fichero_dump
fallaba con una advertencia que el tamaño del fichero había sido excedido.

El problema es debido a que tanto subversion como apache están enlazados con libapr0.  Parece que cuando se quiera utilizar apache y subversion juntos es necesario que ambos estén enlazados con la misma versión del libapr que creo que significa Apache Portable Library.  Según  http://svn.haxx.se/users/archive-2006-10/1552.shtml la librería libapr0 está limitada a ficheros de 2 GigaBytes.  El archivo que yo quería importar tenía 2.2 GigaBytes. La copia de seguridad del otro repositorio tenía más de 8 GigaBytes.  El artículo además decía que era necesario que tanto el apache como el subversion necesitaban estar compilados con la misma versión del apr.  La versión 1 del libapr era necesaria.  Me veía con la tarea desagradable de compilar el libapr, compilar el apache, compilar el subversion y compilar el php.  Detesto compilar el php.

 Con un apt-cache search vi que Edgy trae libapr1.  Lo instalé con
sudo apt-get install  libapr1 libaprutil1 libapr1-dev libaprutil1-dev

Desgraciadamente tanto el apache como el subversion seguían estando enlazados con libapr0.  Mala suerte.

 Después de consultar en el canal #svn en freenode me dijeron que únicamente era necesario compilar el subversion con la versión 1 del libapr.  No era necesario compilar el resto de cosas.  Me quedé muy aliviado.  En la página del subversión la única versión disponible para descargar era en este momento al 1.4.3.  Me olía mucho que un repositorio hecho con la versión 1.4.3 no iba a ser compatible con el subversion 1.3.2 que traía Edgy.  Afortunadamente  en  el canal #svn me dijeron que desde   http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=6781&expandFolder=6781&folderID=260 me podía descargar versiones anteriores.  Me descargué la versión 1.3.2 a mi home.  Escogí esta versión ya que es la que trae Ubuntu Edgy.

Descomprimí el subversion

cd
mkdir source
cd ~/source
tar xvjf../subversion-1.3.2.tar.bz2
cd ~/source/subversion-1.3.2
./configure --help

Vi que el programa de configuración traía las opciones  --with-apr y --with-apr-util  Gracias al locate vi que el archivo para poner en la opción de --with-apr era /usr/bin/apr-1-config y el archivo de  --with-apr-util era /usr/bin/apu-1-config  Con esta información ya podía compilar el subversion.  No me interesaba instalarlo ya que iba a utilizar la versión que trae el Edgy.

cd ~/source/subversion-1.3.2
./configure --with-apr=/usr/bin/apr-1-config --with-apr-util=/usr/bin/apu-1-config
make

 No hice make install ya que no me interesa para nada una versión del subversion incompatible con el apache.  Ya tenía un binario de svnadmin que podía usar para recuperar mi repositorio.  Me fui a la carpeta donde había creado el repositorio y lo importé con

~/source/subversion-1.3.2/subversion/svnadmin/svnadmin \
load . < /ruta/a/fichero_dump

Funcionó a la perfección.  Ya tenía importado mi repositorio.  Por desgracia hubo un ligero pero.  Un pero que no me deja más remedio que prescindir totalmente de Ubuntu Edgy en mi servidor.  Tengo una revisión de más de dos Gigabytes.  La mierda de enlazar tanto apache como subversion con libapr0 hace que una distribución tan excelente como Ubuntu Edgy me sea inservible para mi servidor.

 En la carpeta /db/revs de mi repositorio, un ls -lh revela lo siguiente.

total 2.1G
-rw-r--r-- 1 andres andres  115 2007-02-17 15:27 0
-rw-r--r-- 1 andres andres 2.1G 2007-02-18 17:26 1
-rw-r--r-- 1 andres andres 105K 2007-02-18 17:26 2
-rw-r--r-- 1 andres andres 331K 2007-02-18 17:26 3
-rw-r--r-- 1 andres andres 2.9M 2007-02-18 17:26 4
-rw-r--r-- 1 andres andres  19K 2007-02-18 17:27 5
-rw-r--r-- 1 andres andres  24K 2007-02-18 17:27 6
-rw-r--r-- 1 andres andres  17K 2007-02-18 17:27 7
-rw-r--r-- 1 andres andres  16K 2007-02-18 17:27 8
-rw-r--r-- 1 andres andres  53K 2007-02-18 17:27 9

Mi revisión 1 según este listado tiene un tamaño de 2.1 Gigabytes.  Eso significa que no puedo guardar ninguna modificación de ningún archivo de esta revisión, durante la cual cree mi repositorio.  He sido capaz de agregar nuevos archivos a mi repositorio, pero cuando he intentado modificar uno de los archivos de esta revisión, el subversion dice que no encuentra la revisión 1.  Lo que pasa es que el libapr0 no es capaz de leer el archivo ya que tiene más de dos Gigabytes.

 Los empaquetadores de Ubuntu, al haber enlazado un programa que es fundamental para mí con una librería obsoleta, han hecho que me sea inviable utilizar Ubuntu Edgy para mi servidor.  Yo necesito la posibilidad de trabajar con archivos de tamaño arbitrario.  El que me limiten el tamaño de los archivos que puede manejar el sistema operativo ha convertido esta distribución en inservible.

 Andreso