¿No consigues completar la actualización y aparece el código 0xC1900101 – 0x40021 con un pantallazo azul INVALID DATA ACCESS TRAP alrededor del 75%? Esta guía te explica qué ocurre exactamente, cómo leer las pistas de los registros Panther y qué pasos aplicar —en orden— para resolverlo sin desinstalar tu SQL Server 2019.
Resumen del caso real
Intentos repetidos de actualizar desde el propio sistema o mediante ISO fallan cerca del 75% con BSOD INVALID DATA ACCESS TRAP. El instalador informa 0xC1900101 – 0x40021: fallo en la fase SECONDBOOT durante SYSPREPRESPECIALIZE. En los registros de reversión aparecen:
- Errores Access Denied al mover o limpiar la carpeta
Panther
. - Avisos relacionados con telemetría y migración de cuentas/servicios (por ejemplo,
SQLEXPRESS
,Telemetry
,FDLauncher
eIIS APPPOOL\DefaultAppPool
). - El equipo cumple requisitos. Se desinstaló SQL Server 2014; permanece SQL Server 2019 y no se desea tocar.
Qué significa realmente el código
El código 0xC1900101 indica casi siempre un conflicto de driver o servicio durante la fase SECONDBOOT, cuando el instalador ya reinició y está reconfigurando controladores y servicios. El subtipo 0x40021 apunta a fallo en la fase SYSPREPRESPECIALIZE —momento en que se reasignan servicios, cuentas y dispositivos—. Los síntomas complementarios (Access Denied en Panther, avisos de SQL/IIS y un BSOD) sustentan la hipótesis de:
- Un controlador de almacenamiento, red o seguridad que bloquea archivos.
- Un servicio activo que no se detiene o no migra (SQL/IIS/antivirus/VPN).
- Restos de instalaciones previas que hacen que el instalador “tropiece” al limpiar o mover directorios.
Mapa rápido de la fase problemática
Fase | Qué hace | Por qué falla aquí |
---|---|---|
SECOND_BOOT | Reinicio intermedio para aplicar controladores y servicios en el entorno nuevo. | Los drivers de filtro o servicios que permanecen activos pueden bloquear archivos y disparar el código 0xC1900101. |
SYSPREP_RESPECIALIZE | Reconfigura cuentas de servicio, dependencias y componentes. | Servicios como SQL/IIS, antivirus, VPN o controladores RAID/NVMe antiguos pueden impedir la migración correcta. |
Checklist de resolución paso a paso
Aplica este orden. La probabilidad de éxito es máxima si no saltas pasos.
Preparación y limpieza del entorno
- Copia de seguridad y crea un punto de restauración.
- Desconecta periféricos no esenciales: USB, impresoras, discos externos, adaptadores especiales.
- Libera espacio (recomendado al menos 25–30 GB):
- Ejecuta
cleanmgr.exe
→ Limpiar archivos del sistema → marca Archivos temporales de instalación de Windows y Windows Update. - Si existen
C:\$WINDOWS.~BT
yC:\$WINDOWS.~WS
, elimínalas tras un reinicio o desde Limpieza de disco.
- Ejecuta
- Actualiza BIOS o UEFI y chipset desde el fabricante de tu placa base o equipo.
- Suspende BitLocker si está habilitado (Panel de control → Cifrado de unidad): suspender protege el proceso de reconfiguración.
Servicios que suelen causar conflicto
No es necesario desinstalar SQL Server 2019. Basta con detener y deshabilitar temporalmente sus servicios y los de IIS antes de iniciar la actualización. Abre una consola como administrador y ejecuta lo que aplique a tu escenario:
Instancia expres y componentes relacionados
sc stop "MSSQL$SQLEXPRESS"
sc stop "SQLTELEMETRY$SQLEXPRESS"
sc stop "MSSQLFDLauncher$SQLEXPRESS"
sc stop "SQLBrowser"
sc stop "SQLWriter"
sc config "MSSQL$SQLEXPRESS" start= disabled
sc config "SQLTELEMETRY$SQLEXPRESS" start= disabled
sc config "MSSQLFDLauncher$SQLEXPRESS" start= disabled
sc config "SQLBrowser" start= disabled
sc config "SQLWriter" start= disabled
Instancia predeterminada (si la usas):
sc stop "MSSQLSERVER"
sc stop "SQLTELEMETRY"
sc stop "MSSQLFDLauncher"
sc config "MSSQLSERVER" start= disabled
sc config "SQLTELEMETRY" start= disabled
sc config "MSSQLFDLauncher" start= disabled
IIS y servicios web
net stop W3SVC
net stop WAS
Tras completar la actualización, vuelve a start= auto los servicios que realmente utilices y arráncalos:
sc config "MSSQL$SQLEXPRESS" start= auto
sc config "SQLTELEMETRY$SQLEXPRESS" start= auto
sc config "MSSQLFDLauncher$SQLEXPRESS" start= demand
sc config "SQLBrowser" start= demand
sc config "SQLWriter" start= demand
net start W3SVC
net start WAS
Controladores y software de filtrado
- En Administrador de dispositivos → Ver > Mostrar dispositivos ocultos, desinstala dispositivos fantasma (adaptadores de red antiguos, controladoras de almacenamiento obsoletas, software de captura de paquetes, etc.).
- Actualiza controladores clave: GPU, LAN/Wi‑Fi, SATA/NVMe (Intel RST o AMD RAID), audio.
- Desinstala o deshabilita temporalmente:
- Antivirus y antimalware de terceros.
- Clientes VPN y firewalls de terceros.
- Software de virtualización con drivers de red/almacenamiento (VirtualBox/VMware antiguos).
- Utilidades de tuneo o discos (clonado/backup, antiguos controladores de filtro, herramientas de SSD).
Comprobación y reparación del sistema de archivos
Abre una consola de administrador y ejecuta, en este orden:
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow
chkdsk C: /f
Si chkdsk
solicita programarse al reinicio, acepta y reinicia.
Arranque limpio
- Ejecuta msconfig → pestaña Servicios → marca Ocultar todos los servicios de Microsoft → Deshabilitar todos.
- En Administrador de tareas → pestaña Inicio, deshabilita aplicaciones de inicio no críticas.
- Reinicia antes de lanzar la actualización.
Ejecución controlada del instalador
Desde la ISO, clic derecho en setup.exe
→ Ejecutar como administrador. Si vuelve a fallar, arranca sin actualizaciones dinámicas para evitar que el instalador inyecte controladores que reintroducen el conflicto:
setup.exe /DynamicUpdate Disable
Diagnóstico adicional si persiste el fallo
- Ejecuta un prechequeo de compatibilidad:
setup.exe /Compat ScanOnly
- Revisa los registros:
C:\$WINDOWS.~BT\Sources\Rollback\setuperr.log
C:\$WINDOWS.~BT\Sources\Rollback\setupact.log
C:\Windows\Panther
yC:\Windows\Panther\UnattendGC
0xC1900101
,0x40021
,Access is denied
(gle=0x00000005
), entradasMIG
referidas a cuentas de servicio (SQL/IIS) y erroresMOUPG
/SP
. Si ves Access Denied al moverPanther
, limpia restos de instalaciones previas y confirma que no queda activo ningún antivirus o filtro. - Como plan de saneamiento, ejecuta una reparación in‑place de tu Windows actual (instalar la misma edición sobre sí misma conservando apps y datos) y, acto seguido, repite la subida al nuevo sistema.
Notas prácticas aplicadas al escenario descrito
- Los avisos sobre
SQLTELEMETRY$...
,MSSQL$SQLEXPRESS
,MSSQLFDLauncher$SQLEXPRESS
y la cuentaIIS APPPOOL\DefaultAppPool
señalan que detener y deshabilitar temporalmente estos servicios es clave. No es necesario desinstalar SQL Server 2019. - El fallo al mover
C:\$WINDOWS.~BT\Sources\Panther
(Access Denied) suele deberse a un antivirus o a restos de instalaciones. Limpia$WINDOWS.~BT
y$WINDOWS.~WS
; ejecuta el instalador como administrador en arranque limpio. - El pantallazo azul INVALID DATA ACCESS TRAP durante la transición refuerza la teoría de driver de filtro o de almacenamiento conflictivo. Asegúrate de actualizar Intel RST/AMD RAID, desinstalar VPN y deshabilitar antivirus de terceros.
Tabla de causas frecuentes y acciones
Señal o pista | Causa probable | Acción recomendada |
---|---|---|
Access Denied al limpiar Panther o $WINDOWS.~BT | Antivirus o servicio de seguridad bloqueando archivos | Desinstala AV de terceros, arranque limpio, ejecuta setup.exe como administrador |
Avisos MIG con SQLTELEMETRY , MSSQLFDLauncher , DefaultAppPool | Servicios de SQL/IIS activos o cuentas de servicio mal migradas | Detén y deshabilita servicios SQL/IIS, reintenta; recrea servicios tras la actualización si es necesario |
BSOD en el reinicio intermedio | Controlador RST/NVMe/RAID, VPN o filtro de disco en conflicto | Actualiza controladores de almacenamiento y red; desinstala VPN/tuneadores; arranque limpio |
Fallo recurrente al 75% | Drivers inyectados por actualización dinámica | Ejecuta setup.exe /DynamicUpdate Disable desde ISO |
Entradas gle=0x00000005 en setupact.log | Permisos insuficientes por servicio activo | Detén servicios, elimina restos, verifica propietario/ACL de carpetas temporales |
Buenas prácticas para minimizar riesgos
- Evita tener varias herramientas de seguridad simultáneamente. Una sola solución de seguridad de terceros, si es imprescindible, y desinstálala antes de la actualización.
- Mantén el firmware y controladores del chipset al día. Es habitual olvidar el paquete del chipset y la controladora de almacenamiento.
- Desconecta discos que no vayas a usar durante la actualización para reducir puntos de “enganche” de drivers.
- Si usas cifrado, suspéndelo temporalmente. No lo deshabilites por completo si no es necesario.
- Ten a mano otra cuenta de administrador local por si SSO o directivas bloquean el acceso tras un reinicio.
Ruta rápida para revisar registros
- Abre
C:\$WINDOWS.~BT\Sources\Rollback\setuperr.log
ysetupact.log
. - Filtra por
error
,fail
,0xC1900101
,0x40021
,gle=0x00000005
. - Si ves referencias a
SQL
,IIS
,Telemetry
oFDLauncher
, aplica la sección de servicios. - Si aparecen controladoras como
iaStorA
,iaStorAC
,storport
o controladores de VPN, céntrate en actualizar o desinstalar esos componentes.
Secuencia operativa sugerida
- Limpia y libera espacio. Suspende el cifrado si procede.
- Actualiza BIOS/UEFI y chipset. Conecta solo el disco del sistema.
- Desinstala antivirus, VPN y utilidades de disco ajenas al sistema.
- Detén y deshabilita servicios SQL/IIS.
- Ejecuta
DISM
,SFC
yCHKDSK
. - Configura arranque limpio y reinicia.
- Ejecuta el instalador desde la ISO como administrador; si falla, vuelve a intentar con
/DynamicUpdate Disable
. - Si aún falla, ejecuta
/Compat ScanOnly
y revisaRollback
. Considera una reparación in‑place del sistema actual y reintenta.
Acciones posteriores a la actualización
- Rehabilita BitLocker si lo suspendiste.
- Restaura servicios SQL/IIS a su modo de inicio original y arráncalos. Verifica que las bases de datos y aplicaciones web respondan con normalidad.
- Vuelve a instalar el antivirus o VPN, preferentemente en sus versiones más recientes compatibles.
- Ejecuta
Windows Update
para completar controladores opcionales y parches acumulativos.
Preguntas frecuentes
¿Es obligatorio desinstalar SQL Server 2019?
No. En la mayoría de los casos basta con detener y deshabilitar temporalmente los servicios de SQL y los de IIS. Eso elimina bloqueos de archivos y evita errores de migración de cuentas.
¿Qué diferencia hay entre ejecutar el instalador normal y con /DynamicUpdate Disable
?
Con la actualización dinámica, el instalador descarga controladores y parches recientes. Si alguno de esos drivers es el causante del choque, desactivarlo ayuda a aislar el conflicto y permite completar la instalación con el conjunto de controladores de la ISO.
¿Por qué el porcentaje siempre falla cerca del setenta y cinco por ciento?
Ese tramo coincide con la reconfiguración de controladores y servicios en SECOND_BOOT. Es cuando más probabilidades hay de que un filtro de disco, un driver RAID o un servicio activo cause un bloqueo o BSOD.
¿Qué significa ver gle=0x00000005
en los logs?
Es un Access Denied. Normalmente lo provoca un servicio o driver con enganche sobre un archivo o carpeta temporal, o un antivirus que impide la operación del instalador.
¿Cuándo conviene una instalación limpia?
Cuando, tras aplicar todo lo anterior, persisten errores de driver y no puedes eliminarlos. Haz copia de seguridad integral, documenta licencias y claves, y procede solo como último recurso.
Resultado esperado
Siguiendo el orden propuesto —limpieza, control de servicios SQL/IIS, retirada temporal de antivirus y VPN, actualización de controladoras de almacenamiento, reparación del sistema de archivos y arranque limpio— la gran mayoría de errores 0xC1900101 – 0x40021 quedan resueltos. Con ello el sistema completa sin sobresaltos la fase SYSPREP_RESPECIALIZE y finaliza la actualización. Este enfoque prioriza no tocar tu instalación de SQL Server 2019 y ataja las causas típicas: controladores de filtro, servicios en ejecución y restos de instalaciones anteriores.