Tedious: ConnectionError: No se pudo conectar a<server name="">en 15000ms # 833</server>

Creado en 5 dic. 2018  ·  5Comentarios  ·  Fuente: tediousjs/tedious

Reabriendo este problema.
https://github.com/tediousjs/tedious/issues/833

Probé el módulo tedious-connection-pool y node-mssql, ambos arrojan el mismo error.

Comentario más útil

Otra actualización:
Basado en el error, hice una bifurcación e hice un pequeño cambio en el archivo connection.js para agregar el evento faltante en el estado de autenticación alimentado:
'routingChange' en el estado 'SentLogin7Withfedauth'
y luego las cosas parecen funcionar bien y mi servicio en el entorno de servicio de la aplicación azure también puede conectarse al servidor y obtener datos. Ver como referencia:
https://github.com/shani117/tedious/commit/0777bf6f5ad7f1701a355f8e706fd0ce5120eda4

Todavía no estoy listo para hacer un PR, pero solo quería sacar esto para ver si voy por el camino correcto o no.

Se agradecen los comentarios.

Todos 5 comentarios

@ aniltomar10 ¿Podría enviar un repositorio aislado junto con el seguimiento de la pila?

También me enfrento a este mismo problema exacto cuando intento conectarme a una base de datos SQL Azure utilizando la autenticación AAD. Mi servicio también se conecta a otra base de datos SQL Azure que solo usa autenticación SQL y esa conexión funciona perfectamente bien. Solo falla la autenticación de AAD. Cuando hice alguna captura de flujo de registro, veo que este error se produce cada vez que se agota el tiempo de espera del intento de conexión:

Error: No event 'routingChange' in state 'SentLogin7Withfedauth' at new Error (native) at Connection.dispatchEvent (D:\home\site\wwwroot\server.js:269168:26) at Parser.tokenStreamParser.on.token (D:\home\site\wwwroot\server.js:268857:12) at Zone.runTask (D:\home\site\wwwroot\server.js:259175:47) at Parser.ZoneTask.invoke (D:\home\site\wwwroot\server.js:259369:33) at emitOne (events.js:96:13) at Parser.emit (events.js:188:7) at Parser.parser.on.token (D:\home\site\wwwroot\server.js:274976:14) at Zone.runTask (D:\home\site\wwwroot\server.js:259175:47) at Parser.ZoneTask.invoke (D:\home\site\wwwroot\server.js:259369:33) at emitOne (events.js:96:13)

Este es mi seguimiento de la pila de excepciones que se registra en la información de la aplicación:

ConnectionError: at ConnectionError (at ConnectionError (D:\home\site\wwwroot\server.js:34539:12) at ConnectionError (D:\home\site\wwwroot\server.js:34539:12): D:\home\site\wwwroot\server.js at ConnectionError (D:\home\site\wwwroot\server.js:34539:12): 34539) at Connection.connectTimeout (at Connection.connectTimeout (D:\home\site\wwwroot\server.js:269106:26) at Connection.connectTimeout (D:\home\site\wwwroot\server.js:269106:26): D:\home\site\wwwroot\server.js at Connection.connectTimeout (D:\home\site\wwwroot\server.js:269106:26): 269106) at Timeout.connectTimer.setTimeout (at Timeout.connectTimer.setTimeout (D:\home\site\wwwroot\server.js:269080:12) at Timeout.connectTimer.setTimeout (D:\home\site\wwwroot\server.js:269080:12): D:\home\site\wwwroot\server.js at Timeout.connectTimer.setTimeout (D:\home\site\wwwroot\server.js:269080:12): 269080) at ZoneDelegate.invokeTask (at ZoneDelegate.invokeTask (D:\home\site\wwwroot\server.js:259299:35) at ZoneDelegate.invokeTask (D:\home\site\wwwroot\server.js:259299:35): D:\home\site\wwwroot\server.js at ZoneDelegate.invokeTask (D:\home\site\wwwroot\server.js:259299:35): 259299) at Zone.runTask (at Zone.runTask (D:\home\site\wwwroot\server.js:259175:47) at Zone.runTask (D:\home\site\wwwroot\server.js:259175:47): D:\home\site\wwwroot\server.js at Zone.runTask (D:\home\site\wwwroot\server.js:259175:47): 259175) at Timeout.ZoneTask.invoke (at Timeout.ZoneTask.invoke (D:\home\site\wwwroot\server.js:259369:33) at Timeout.ZoneTask.invoke (D:\home\site\wwwroot\server.js:259369:33): D:\home\site\wwwroot\server.js at Timeout.ZoneTask.invoke (D:\home\site\wwwroot\server.js:259369:33): 259369) at Timeout.data.args.(anonymous function) [as _onTimeout] (at Timeout.data.args.(anonymous function) [as _onTimeout] (D:\home\site\wwwroot\server.js:260383:25) at Timeout.data.args.(anonymous function) [as _onTimeout] (D:\home\site\wwwroot\server.js:260383:25): D:\home\site\wwwroot\server.js at Timeout.data.args.(anonymous function) [as _onTimeout] (D:\home\site\wwwroot\server.js:260383:25): 260383) at ontimeout (at ontimeout (timers.js:365:14)at ontimeout (timers.js:365:14): timers.js at ontimeout (timers.js:365:14): 365) at tryOnTimeout (at tryOnTimeout (timers.js:237:5)at tryOnTimeout (timers.js:237:5): timers.js at tryOnTimeout (timers.js:237:5): 237) at Timer.listOnTimeout (at Timer.listOnTimeout (timers.js:207:5) at Timer.listOnTimeout (timers.js:207:5): timers.js at Timer.listOnTimeout (timers.js:207:5): 207)

No estoy seguro de si @ aniltomar10 también enfrenta el mismo problema o no, pero pensé que podría ser relevante en este caso.

Cuando ejecuto el servicio localmente en mi máquina de desarrollo, todo funciona bien. Comienza a fallar cuando implemento el servicio en el servicio de aplicaciones azure.

Detalles del entorno:
Versión de NodeJS: 8.11.1
Versión tediosa: 4.1.1

Avísame si puedo agregar más detalles.

Gracias,
Shahnaz.

Otra actualización:
Basado en el error, hice una bifurcación e hice un pequeño cambio en el archivo connection.js para agregar el evento faltante en el estado de autenticación alimentado:
'routingChange' en el estado 'SentLogin7Withfedauth'
y luego las cosas parecen funcionar bien y mi servicio en el entorno de servicio de la aplicación azure también puede conectarse al servidor y obtener datos. Ver como referencia:
https://github.com/shani117/tedious/commit/0777bf6f5ad7f1701a355f8e706fd0ce5120eda4

Todavía no estoy listo para hacer un PR, pero solo quería sacar esto para ver si voy por el camino correcto o no.

Se agradecen los comentarios.

@ shani117 ¡Oh, vaya, sí, creo que has encontrado la causa raíz de este problema! Veré si puedo abrir un PR con sus cambios mañana para arreglar esto correctamente. ¡Muchas gracias! 🙇

: tada: este problema se ha resuelto en la versión 4.1.2: tada:

El lanzamiento está disponible en:

Su bot de lanzamiento semántico : paquete :: rocket:

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

diginfo picture diginfo  ·  6Comentarios

David-Engel picture David-Engel  ·  5Comentarios

malarcherc picture malarcherc  ·  9Comentarios

GuyHarwood picture GuyHarwood  ·  7Comentarios

jstephens7 picture jstephens7  ·  5Comentarios