Pregunta

Estoy usando ColdFusion con Microsoft SQL Server 2005 y, en ocasiones, me sale este error:

"[Macromedia] [SQLServer JDBC Driver] Objeto ha sido cerrado."

El rastreo conduce invariablemente a una consulta SQL, como cabría esperar, incluso comandos SELECT simples sin uniones o parámetros de entrada o cualquier cosa de lujo en absoluto.

La única solución que he oído hablar hasta ahora es reiniciar "el servicio", que sólo puedo imaginar que se refiere al servicio de SQL Server. He intentado reiniciar tanto el SQL Server y el servicio ColdFusion, pero todavía sigue ocurriendo en momentos aleatorios.

(También un reinicio no es una solución. Uno no puede tener páginas arbitrarias que dan mensajes de error arbitrarias en momentos arbitrarios en un entorno de producción.)

Cuando ocurre, se produce persistentemente durante unos minutos, y luego se va y podría volver en unos pocos segundos o minutos. Se empezó a ocurrir cuando se estaba desarrollando una parte de mi solicitud de JavaScript, que no debería tener nada que ver ni con el código de ColdFusion o los comandos SQL.

Mis búsquedas en línea han sido infructuosos hasta el momento.

Cualquier ayuda apreciada.

¿Fue útil?

Solución 6

resulta que esto sólo sucede cuando el servidor está sobrecargado. No parece haber nada menos que volver a arrancar y / o la eliminación de la carga del servidor remedio.

Gracias a todos los que respondieron, de todos modos!

Otros consejos

Esto es viejo, pero me acabo de encontrar con esto y encontrar una manera de hacerlo sin necesidad de reiniciar la FQ.

En el administrador de ColdFusion ir a las fuentes de datos y editar el que está causando el problema. Hacer un cambio en ella, como la comprobación de una caja de poca importancia, y en Enviar.

Esto volverá a configurar la conexión y permitir que el trabajo. Volver y eliminar la marca de la caja (si realmente no quiere que cumplía).

Por ejemplo. Apagué "Habilitar caracteres ASCII altos ..." y pulse enviar la fuente de datos funcionó. Entonces volví y comprobé marcha atrás y presentar los cambios de nuevo.

Sin reiniciar! Ideal si se trata de un cuadro de producción.

Nos encontramos con este problema con CF9 y reiniciar el servicio no ayudó. Hemos suprimido y se recrea el DSN ofender en la configuración CF, y que ha resuelto el problema. Así que si las otras soluciones no funcionan, le daría prueba.

Mi instinto es que vas a tener que mirar fuera de su código y trabajo con un DBA para investigar la estabilidad del propio servidor de base de datos. Suena como el servicio de SQL Server está colgando o deje de responder.

Como la mayoría de todo el software que se comporta mal, el primer lugar que es mirada conductores. Es posible que quiere estar seguro de que está utilizando los controladores más recientes de Microsoft JDBC. Sé que han mejorado el rendimiento de sus controladores más recientes, y esto también puede resolver el problema que se está viendo.

Si estás usando los controladores que se incluyen con ColdFusion, es absolutamente merecen la pena.

http: // www.microsoft.com/downloads/en/details.aspx?FamilyID=a737000d-68d0-4531-b65d-da0f2a735707&displaylang=en

Tenga en cuenta que si la actualización, si tiene instrucciones INSERT que el uso SCOPE_IDENTITY () para devolver el ID de la fila recién insertada, tendrá que en el SET NOCOUNT ON; en la parte superior de cada instrucción INSERT para evitar SQL Server de devolver el número de filas insertadas en lugar del ID de la fila insertada.

Dan

Se produjo un error en SQL 2K y creo 2K5, de tal manera que el sistema podría pensar que estaba en el modo de apagado, a pesar de no ser pedido a cerrar el servicio. IIRC, que arrojó un error similar a la suya. Hubo un parche para este emitidas mi MS, aunque creo recordar que era una descarga independiente en lugar de parte de MS actualización.

Lo siento por ser tan vago, pero ha sido un tiempo desde que se ocupó de este problema. Espero que esto ayude a empezar, sin embargo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top