Este error, me ocurrió otra vez hace ya tiempo, pero en dicha ocasión no pude emplear tiempo en averiguar más del susodicho. Al final, me he vuelto a encontrar las caras con el mismo error durante otra reciente importación de MOSS, y en esta ocasión, si he conseguido sacar tiempo para resolverlo (no había más cojones).
En mi ocasión, ejecuté algo así al realizar el export:
stsadm -o setsitelock -url http://www.guillesql.local/eBooks/PDF/cursos -lock readonly
stsadm -o export -url http://www.guillesql.local/eBooks/PDF/cursos -filename c:\temp\cursos -includeusersecurity -versions 4 -nofilecompression |
Y chico, la verdad que hasta aquí, todo estupendo. Ningún error, rápido como un tiro, etc.
Pues nada. Copiamos el export a uno de los frontales de la Granja de destino, y lanzamos el import, algo como lo siguiente (desactivando el escaneo de virus en subida de archivos, por el antivirus de Granja):
stsadm -o setproperty -pn avuploadscanenabled -pv no
stsadm -o import -url http://moss.guillesql.local/cursos -filename c:\temp\cursos -includeusersecurity -updateversions 2 -nofilecompression
stsadm -o setproperty -pn avuploadscanenabled -pv yes
|
Pues va y falla. ¿Será cabrón? Yo creo que me tiene manía... Me da el siguiente error:
[12/05/2009 15:26:32]: Error: The file cannot be imported because its parent Web /eBooks/PDF/cursos does not exist. [12/05/2009 15:26:32]: FatalError: The file cannot be imported because its parent Web /eBooks/PDF/cursos does not exist. |
Este error en español, viene a ser como sigue:
[12/05/2009 15:26:32]: Error: No se puede importar el archivo porque no existe el sitio Web /eBooks/PDF/cursos primario. [12/05/2009 15:26:32]: FatalError: No se puede importar el archivo porque no existe el sitio Web /eBooks/PDF/cursos primario. |
Que cabrón... me dice "FatalError", tu te crees... Pero lo peor, es el mensaje que me esta dando ¿Qué coño tiene que ver con lo que le he dicho que haga? Es decir, si estoy importando sobre /cursos, ¿por qué coño me dices No se puede importar el archivo porque no existe el sitio Web /eBooks/PDF/cursos primario? Es más, ¿Y a mi que coño me importa el puto sitio /eBooks/PDF/cursos? En fin...
Tras momentos de locura transitoria, estuve googleando un poco, y no encontré nada en ningún artículo de soporte de Microsoft, ni en KBs, ni en MSDN, ni en TechNet, ni na-de-na. Fruto de la desesperación y de la angustia, seguí googleando, y en algún foro no oficial en inglés, encontré alguna pista. Hablaban de dos posibilidades:
- Que el usuario utilizado para hacer el export y el usuario utilizado para hacer el import, sean miembros de los Site Collection Administrator.
- Que no se bloquease el acceso al sitio (ej:stsadm -o setsitelock -lock readonly).
Al principio lo probé, tanto un caso como el otro, pero cancelé el intento por la velocidad de importación (estimación de varias horas para finalizar el import, cuando en otras Granjas con menos capacidad de proceso y memoria, había importado lo mismo en escasos minutos). No se que cojones estarán monitorizando en ese bicho, para que sea tan lento (algún Consultor de esos, que suben muy rápido, pero que ni puta idea ;-).
Analizando paso a paso las tareas que hice, efectivamente, al generar el export tenía bloqueado el Sitio. Vaya, parece que puede ir por aquí el asunto. Seguí investigando y buscando en mis correos y bitácoras, y descubrí que la vez anterior que me ocurrió este error, también tenía el Sitio bloqueado al hacer el export.
Me decidí por recuperar los exports que me cascaron con este error, en otra Granja. Al ejecutar el import, se produjo el mismo error (previsible), eso sí, en diez minutos (nada de unas cuantas horas). Seguidamente, importé el export que generé con el Sitio sin bloquear (quitándole el READ ONLY), y funcionó. Ala, otros calzoncillos pa lavar, jeje ;-)
Sorprendentemente, no puede estar el Sitio bloqueado al realizar operaciones de Exportación. Al menos, esa es la conclusión a la que he llegado en mi caso, con MOSS 2007 SP1 (igual en RTM o en SP2, este comportamiento deja de producirse... quién sabe). Esto por un lado choca, ya que si se desea mover un SubSite a otra localización (en la misma o diferente Granja MOSS), es más que lógico que se desee bloquear el acceso al SubSite durante la exportación con el objetivo de evitar que usuarios introduzcan o alteren contenidos en el mismo.
La ayuda del producto no dice nada al respecto. Si bien, se recomienda bloquear el sitio al realizar backup y restore con STSADM, cara a hacer export e import no dice nada (ni confirma ni desmiente). Desconozco el motivo, pero es así, y en la práctica ocurre lo que ocurre (como dije, al menos en mi caso con MOSS 2007 SP1).
También hay que decir, que NO es posible bloquear un SubSitio, lo que se bloquea o des-bloquea es la Colección de Sitios completa. Algo muy cachondo, porque si ejecutas un comando STSADM con la URL de SubSitio que deseas bloquear, parece que va todo succesfully, pero la realidad es que no, porque te bloquea la Colección de Sitios completa, y con esta broma, en un entorno de producción te puedes comer bonito marrón, al descubrir que los Sitios superiores también han quedado bloqueado (sobre todo, si lo descubren los usuarios antes que tú). En fin. San Lucío, con el STSADM (bueno, con sus mensajes de error, y con la ayuda del producto... les queda por aprender de SQL Server).
Y poco más en este artículo marrón. Sólo aprovechar para colgar enlaces a otros artículos que he escrito en veces anteriores, con otros problemas sufridos con el STSADM al hacer export e import:
Espero que os sea de ayuda.