Error reading file

306 views
Skip to first unread message

Victor Espina

unread,
Mar 24, 2014, 10:28:57 PM3/24/14
to publice...@googlegroups.com
Amigos, recurro a Uds. a ver si alguien puede darme luz sobre esto.  El ambiente es este:

* 4 Servidores de aplicacion, ejecutando Windows Server 2008 R2 SP1
* Cada uno de los servidores de aplicacion ejecutan la misma version de un programa en VFP 6.0
* Los 4 servidores de aplicacion accesan a ciertos archivos DBF de control en una carpeta compartida ubicada en un 5to servidor.
* Todos los usuarios (unos 250) ejecutan el sistema mediante una sesion de T/S sobre alguno de los 4 servidores.

Ahora el probema:  muy frecuentemente nos conseguimos conque el sistema finaliza inesperadamente como consecuencia del error 1411 "Error reading file".  El log de errores muestra que el error se produce en lugares distintos dentro de la aplicacion y tambien varia en cuanto a la cantidad de veces que se presenta en un mismo dia. Incluso varia de un servidor al otro, siendo mas comun en uno de los 4 servidores.

Segun lo que he podido leer, el problema esta relacionado con un bug en SMB2, y he visto algunos sitios que recomiendan cambiar un valor en el register llamado "MultiUserEnabled", pero me gustaria saber si alguien ha pasado por esto y como lo solucionaron.

Gracias de antemano

Victor Espina

Antonio Meza

unread,
Mar 24, 2014, 11:26:34 PM3/24/14
to publice...@googlegroups.com
Hola Victor!!

El 5to. servidor que sistema operativo usa, quiero pensar que Linux porque hablas de Samba, es correcto?

Te comento que uso terminal server y aplicaciones donde la dbf están en un servidor linux pero no tengo mas de 50 usuarios conectados por lo tanto no eh visto ese error, que se me ocurre podría ser por la cantidad de usuarios conectados al recurso compartido, tanto por la parte de windows que le voy mas, que por la parte de linux.

Sin embargo eh tenido problemas con los servidores linux cuando comparten carpetas con windows de errores de lectura o escritura de archivos, reinicio el servidor linux ubuntu server y deja de dar problemas por varios meses pero de repente dice que el usuario no tiene permisos de escritura o lectura en windows cuando quiere abrir documentos que esta en el servidor llnux.

saludos
Antonio Meza

Victor Espina

unread,
Mar 25, 2014, 12:17:13 AM3/25/14
to publice...@googlegroups.com
Todos los servidores usan Windows Server 2008 R2.   El problema aparentemente es causado por algo llamado "Redirector" del Terminal Service.  Segun entiendo, TS usa una tecnica de optimizacion en la cual cuando una sesion de TS requiere un archivo en una carpeta compartida, Windows crea un handle para ese archivo.  Cuando otras sesiones de TS necesitan acceder al mismo archivo, Windows reutiliza el handle que ya tenia abierto en lugar de crear un nuevo para cada usuario.  El problema se genera cuando el usuario original que abrio el archivo por primera vez se desconecta, entonces todos los demas clientes TS que estaban compartiendo ese handle empiezan a recibir el error de "Error reading file".

Para Windows 2000 existia un hotfix que soluionaba el problema, pero no he encontrado ninguna referencia de un hotfix para Windows 2008 R2.

Saludos

Victor Espina

Antonio Meza

unread,
Mar 25, 2014, 2:53:10 AM3/25/14
to publice...@googlegroups.com
Igual y no es lo que te comento pero trato de darte ideas de lo que me ha pasado.
Hace tiempo un usuario activo el servicio de off-line para las carpetas compartidas en windows 7, cuando entraba al sistema a utilizar los DBF todo bien, pero si por alguna razón el usuario no se conectaba a la red el windows 7 traía las carpetas a su maquina y le dejaba trabajar perfectamente realizaba una factura y todo perfecto, al otro día cuando ya había red y quería entrar a ver la factura pues resulta que no existía ya que trabajo off-line y ahora estaba trabajando directamente en la carpeta compartida.

Te comento esto por si tienes algún servicio en windows server o algún usuario que haya activado trabajar off-line los archivos compartidos en otra pc.

saludos
Antonio Meza

Antonio Meza

unread,
Mar 25, 2014, 3:01:49 AM3/25/14
to publice...@googlegroups.com
Como te comentaba el error que te muestra también puede provenir de la gran cantidad de usuarios que tienes, aunque esto aplica para windows server 2003 también habla acerca del problema que comentas del cache que hace el terminal a un recurso compartido, solo que es para 2003.


saludos
Antonio Meza

francisco prieto

unread,
Mar 25, 2014, 6:10:59 AM3/25/14
to publice...@googlegroups.com
Si el ejecutable esta marcado como "debugueable" (solo de esta forma...) en el config.fpw, podes setear el COVERAGE de la siguiente forma...

COVERAGE=DEPURA.LOG

Esto graba linea a linea cada una de las operaciones que se realiza y lo utilizo mucho para detectar este tipo de errores crónicos y ademas para optimizar el código porque te va cantando cuanto tiempo se tarda en ejecutar determinada instrucción...

Como es VFP 6 antes de escribirte, busque para ver si el set existía porque ya hace tiempo que no programo con esa versión...

Te paso un link al respecto...


PD: Nota que el link es de junio de 1998 (16 años despues y sigue funcionando!! :) 

Saludos,

Pancho
Córdoba

Victor Espina

unread,
Mar 25, 2014, 10:00:19 AM3/25/14
to publice...@googlegroups.com
Gracias por la idea, pero el tema es que no se trata de un error de codigo.  El error se produce en distintos puntos del codigo cada vez, con mas frecuencia obviamente en los segmentos de codigo que se usan mas frecuentemente.  La misma linea de codigo puede funcionar correctamente todo el dia y de repente arrojar el error.

Definitivamente el problema lo causa el sistema operativo o TS, pero no VFP.


Victor Espina

Victor Espina

unread,
Mar 25, 2014, 10:01:29 AM3/25/14
to publice...@googlegroups.com
Gracias Antonio.   El articulo hablar sobre 2003, asi que uno asumiria que ese problema ya fue corregido en Sever 2008.  Una de las cosas que verifique es que los servidores estuvieran correctamente actualizados al ultimo SP (que en el caso de Windows 2008 R2 es el SP1).

Victor

Victor Espina

unread,
Mar 25, 2014, 10:02:30 AM3/25/14
to publice...@googlegroups.com
Este tema del modo offline lo lei ayer. El tema es que el cliente ejecuta el sistema exclusivamente a traves de sesiones de TS, asi que en teoria no deberia afectar esto en ese escenario, o si ?

Victor 

Geovanny Quiros Castillo

unread,
Mar 25, 2014, 10:14:31 AM3/25/14
to publice...@googlegroups.com
Hola Victor,
en alguna ocasión me sucedió algo parecido y era un problema generado por el controlador de dominio que perdía los derechos sobre el recurso mapeado en tu caso en el quinto server.
No sé si será el mismo caso pero podrías empezar por ahí.
Saludos y suerte.

Ricardo Pina

unread,
Mar 25, 2014, 10:17:00 AM3/25/14
to Grupo VFP
Hola Victor

Leiste los logs de los server, talvez te den una idea de lo que ocurrre.

Saludos
--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

WGWH

unread,
Mar 25, 2014, 10:51:32 AM3/25/14
to publice...@googlegroups.com
Maestro Espina yo lo que puedo con mis pocos conocimientos es solo sugerirle que deje de usar DBF, creame que yo pase muchos tormentos con las DBF en red, en los foros me decian que porque estaba programando mal, pero bueno deje esa parte de la programacion a firebid y a la chingada madre los problemas de mi programacion, hasta para lo mas pequeño que se le pueda ocurrir ya nunca pienso en DBF.

saludos

w. wassmer

El lunes, 24 de marzo de 2014 20:28:57 UTC-6, Victor Espina escribió:

Oscar Garcia

unread,
Mar 25, 2014, 10:57:44 AM3/25/14
to publice...@googlegroups.com
Tengo un cliente que tenía un Servidor con Windows Server 2012 a 64bits y tenía instalado un sistema VFP 9 sp2, y todo marchaba bien; cuando los encargados del servidor lo configuraron con perfiles para cada usuario (35 usuarios) todo se vino a bajo, aleatoriamente cualquier programa en cualquier momento fallaba y enviaba el error "Error reading file", ellos se montaron en su macho y dijeron que el VFP ya no era compatible con Windows Server 2012 a 64 bits. Lo que se hizo fue bajar el sistema Operativo a Windows Server 2008 R2 y todo volvió a la normalidad.

Si a ti, te está fallando con el Windows Server 2008, es posible que hayan cambiado algo de los perfiles de cada usuario y le pegan a los accesos de archivos de VFP.  

Victor Espina

unread,
Mar 25, 2014, 12:05:23 PM3/25/14
to publice...@googlegroups.com
Suena interesante. Y como lo corregiste ?

Victor

Victor Espina

unread,
Mar 25, 2014, 12:06:46 PM3/25/14
to publice...@googlegroups.com
El sistema en si mismo trabaja bajo SQL Server, pero uso pequenos DBFs para ciertos controles.  Dicho esto, el problema se presenta realmente con cualquier archivo, no solo con DBFs.

Saludos

Victor Espina

Victor Espina

unread,
Mar 25, 2014, 12:07:58 PM3/25/14
to publice...@googlegroups.com
Alguna idea de cual fue el cambio en los perfiles que genero ese problema ?

Victor Espina

WGWH

unread,
Mar 25, 2014, 12:39:02 PM3/25/14
to publice...@googlegroups.com
Maestro Espina, si lo piensa mejor, se dara cuenta que  el error se le presentara con "cualquier archivo" que necesite acceso por el protocolo que usa windows en carpetas compartidas, que no son los mismos protocolos de los servidores de datos. Por eso le mecioné que hasta para lo mas pequeño (hablando de un almacen de datos) no pienso en las DBF en red.

Haga la prueba y pase las tablas de control a la  base de datos de sqlserver,  yo estoy seguro que ya no tendra mas ese problema.

Claro que Ud. es de las personas que siempre profundizan en este tipo de situaciones y encontrar el porque del error? pero lo puede dejarlo para laboratorio ;)

Saludos

W.Wassmer

Antonio Meza

unread,
Mar 25, 2014, 1:36:40 PM3/25/14
to publice...@googlegroups.com
Buenos días Victor!!

Ayer busque un poco sobre el error y casi no hay reportes, pero si vi que muchos usuarios que usan TS en maquinas virtuales tienen muchos problemas con acceso a datos compartidos, no se si estas usando servidores virtuales? pero igual no daban solución.

Prueba nstalar un servidor linux y compartes con SAMBA la carpeta y copias y redireccionas tus archivos DBF y ves si ya no tienes problemas, tambien vi que hay una diferencia en usar NFS y SMB y no recuerdo otro para compartir capretas en windows server y aun mas se complica cuando hay dominio trata que el servidor linux no ingrese de momento al dominio pero que puedas verlo desde tus servidores.

También por ahí leí sobre un usuario que el problema se daba por el tipo de licenciamiento configurado en el servidor que faltaban mas licencias CAL´s.

En cuanto al tema Offline es por usuario, si el usuario activa el servicio a veces no te das cuenta y lo tiene, si la sesión de TS es abierta es decir no esta restringida y el usuario tiene acceso completo al windows server puede activar el servicio para el, y lo notas dando click derecho en la carpeta compartida y se habilita una opción en el menú de sincronizar. pero no creo que sea el caso.

saludos
Antonio Meza

Geovanny Quiros Castillo

unread,
Mar 25, 2014, 2:54:37 PM3/25/14
to publice...@googlegroups.com
Actualicé al ultimo Service Pack, eliminé todos los derechos sobre la carpeta donde estaban los datos y los volví a asignar y por ultimo reinicié los dos  servidores.
Asi de facil, pero quizas fue un golpe de suerte Guiño
Saludos
wlEmoticon-winkingsmile[1].png

Victor Espina

unread,
Mar 25, 2014, 3:25:28 PM3/25/14
to publice...@googlegroups.com
Si, te entiendo, y definitivamente es una opcion.  El problema con eso es que si no puedo demostrar al cliente que el problema no es causado por el sistema sino por Windows, no va a querer pagar por las modificaciones necesarias para eliminar el uso de esos pequenos DBFs, y estamos hablando de varias semanas de trabajo.  Por esta misma razon necesitamos darle una alternativa al cliente.


Victor Espina

Victor Espina

unread,
Mar 25, 2014, 3:28:54 PM3/25/14
to publice...@googlegroups.com
Antonio, efectivamente estamos hablando de un ambiente virtualizado y coincido contigo con que ese es parte del problema.  Por lo que he leido el problema se da por una suma de condiciones:

a) Uso masivo de Terminal Server
b) Servidores virtualizados
c) Cientos de clientes accesando a archivos ubicados en una carpeta compartida
d) Uso de Controlador de Dominio

Y nosotros las cumplimos TODAS :)

Me gusto la alternativa del sevidor Linux.  Podria ser una solucion facil de implementar y de probar, asi que creo que vale la pena intentarlo.   Muchas gracias por  la sugerencia.  Podrias pasarme el link del articulo donde se hablaba de una posible falta de licencias CALs como causa del error ?   Eso tambien me parecio interesante.

Victor Espina

Geovanny Quiros Castillo

unread,
Mar 25, 2014, 3:28:53 PM3/25/14
to publice...@googlegroups.com
Otra cosa Victor, sigo con el Controlador de dominio, ya averiguaste si han hecho modificaciones en ese servidor?
A mi los problemas me empezaron luego de haber hecho cambios a ese servidor.
Saludos
 
 
Sent: Tuesday, March 25, 2014 1:25 PM

Victor Espina

unread,
Mar 25, 2014, 3:30:10 PM3/25/14
to publice...@googlegroups.com
Hum, vale la pena intentarlo.  Quizas valdria la pena probar a brindar un acceso completo a "Users" sobre esa carpeta, como una forma de descartar problemas de permisos.

Gracias por el dato


Victor Espina

Antonio Meza

unread,
Mar 25, 2014, 3:41:16 PM3/25/14
to publice...@googlegroups.com
Hola victor no guarde las paginas que estuve leyendo a noche.

saludos

francisco prieto

unread,
Mar 25, 2014, 3:44:20 PM3/25/14
to publice...@googlegroups.com
Antonio,

Si estas en la misma pc... fijate en el historial.

Saludos,

Pancho
Córdoba

mpulla

unread,
Mar 25, 2014, 4:11:53 PM3/25/14
to publice...@googlegroups.com
Hola Victor.

Ya que estas de pruebas, podrías reemplazar los dbfs por Sql Server Express.

Saludos.
Mauricio

Victor Espina

unread,
Mar 25, 2014, 4:18:15 PM3/25/14
to publice...@googlegroups.com
No es algo tan facil.  El sistema esta construido sobre un "kernel" que brinda servicios basicos como manejo de extensiones, tipos de datos y otras cosas.  Todos los demas servicios "comunes" de la aplicacion se implementan mediante extensiones de ese kernel, que son cargados dinamicamente, y que brindan desde manejo de mensajes, errores, cadenas, comunicaciones hasta acceso a base de datos.

Varias de esas extensiones usan archivos DBF para almacenar sus datos (por ejemplo, el manejo de grupos y usuarios). Reescribir esas extensiones para usar ahora otro motor distinto es algo que nos llevaria tiempo y dinero, asi que estamos intentando evitarlo en la medida de lo posible.  Eventualmente llegaremos a hacer eso, pero no este el momento.

Victor Espina

WGWH

unread,
Mar 25, 2014, 4:25:21 PM3/25/14
to publice...@googlegroups.com
Muy cierto maestro, quizá ese problema es el mayor que tenemos los desarrolladores independientes hacer que nuestros clientes nos paguen las horas de investigación y demostrar que un puto virus o que su administrador de servidores estuvo jodiendo todo el tiempo y no era nuestra aplicación :)

Suerte

W. Wassmer

Antonio Meza

unread,
Mar 25, 2014, 4:48:29 PM3/25/14
to publice...@googlegroups.com
jajaj tienes razón Francisco!!! gracias

Anexo link algunos interesantes otros con detalles importantes,

Consulta Carpetas compartidos en Windows Server 2008 R2

Administración de permisos para carpetas compartidas
http://technet.microsoft.com/es-es/library/cc753731.aspx

sesiones en windows server 2008 r2

Visualización y modificación de las propiedades de una carpeta compartida

Configurar la disponibilidad sin conexión para una carpeta compartida

Administración de sesiones y apertura de archivos

Configuración de tiempo de espera y reconexión para las sesiones de Servicios de Escritorio remoto
http://technet.microsoft.com/es-es/library/cc754272(v=ws.10).aspx

Identificador de sucesos: 1411 después de degradar controladores de dominio

Solucionado] Problema con UPL 14.1.1 y Remote Desktop Client

Carpetas ofline (II de II) por Josh Saenz G.

Windows Server 2012: Redirigir la Carpeta Documentos

Victor Espina

unread,
Mar 25, 2014, 4:56:33 PM3/25/14
to publice...@googlegroups.com
Gracias Antonio. Les dare una revisada.


Victor Espina

Edwin Duran

unread,
Mar 27, 2014, 8:06:09 AM3/27/14
to publice...@googlegroups.com
Buen Día Victor

Hace tiempo un amigo tuvo algo parecido y vía TS, la solución fue darle todos los permisos a esa carpeta, permiso de administrador y con eso se corrigió.

Saludos
Edwin

Angel Dario Rodriguez

unread,
Mar 27, 2014, 10:04:15 AM3/27/14
to publice...@googlegroups.com
Mestro Victor, se ha chequeado usted si no hay conflictos de ip, pues eso nos ha pasado con cierta frecuencia y hemos descubierto que cuando los routers empiezan a genera IPs por su cuenta no causan esas perturbaciones con las PCs y se afecta la comunicación con el servidor.

Victor Espina

unread,
Mar 27, 2014, 10:08:23 AM3/27/14
to publice...@googlegroups.com
Hum, interesante.   Definitivamente es algo que podemos probar.

Gracias por la idea


Victor Espina

Victor Espina

unread,
Mar 27, 2014, 10:09:16 AM3/27/14
to publice...@googlegroups.com
Edwin, la infraestructura del cliente es impecable. Podria asomarles la idea, pero dudo que la cosa venga por ahi.

Gracias de todas formas

Victor Espina

Javier Solier

unread,
Mar 27, 2014, 10:21:36 AM3/27/14
to publice...@googlegroups.com

Hola Victor te comento que yo tambien he tenido problemas con el Win Server 2008 con los permisos en las carpetas, creo que se ha solucionado con el Win Server 2012 al menos hasta ahora no he tenido ese problema, pensando un poco en tu insfraestructura se me ocurre que podrias probar a instalar un XP o WS2003 virtual, compartir una carpeta en ese equipo y ahi meter tus DBFs.

Saludos
Javier Solier

Reply all
Reply to author
Forward
0 new messages