Tdolphin, Reconexiones
Tdolphin, Reconexiones
Fivewinners, Daniel.
Daniel, he revisado la clase y veo que existe la data lReconnect, la cual esta inicializada a .T., sin embargo he tenido problemas con un provvedor de servicios de hosting donde un cliente tiene un DB Mysql alojada, desde hace unos dias esta botando todas las conexiones a la DB que quedan iddle por mas de 30 segundos, el problema es que la aplicacion se cae con el error
"Error MYSQL/2013 Lost connection to MySQL server during query"
Existe alguna forma de forzar la reconexion antes de enviar el Query, de forma automatica para toda la aplicacion, no programando un Ping antes de cada select creada.
Desde Chile
Adolfo
Daniel, he revisado la clase y veo que existe la data lReconnect, la cual esta inicializada a .T., sin embargo he tenido problemas con un provvedor de servicios de hosting donde un cliente tiene un DB Mysql alojada, desde hace unos dias esta botando todas las conexiones a la DB que quedan iddle por mas de 30 segundos, el problema es que la aplicacion se cae con el error
"Error MYSQL/2013 Lost connection to MySQL server during query"
Existe alguna forma de forzar la reconexion antes de enviar el Query, de forma automatica para toda la aplicacion, no programando un Ping antes de cada select creada.
Desde Chile
Adolfo
Ji,ji,ji... buena la cosa... "all you need is code"
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
- Daniel Garcia-Gil
- Posts: 2365
- Joined: Wed Nov 02, 2005 11:46 pm
- Location: Isla de Margarita
- Contact:
Re: Tdolphin, Reconexiones
Hola
Sinceramente yo solucione el problema de la desconexion ejecutando un "SELECT 1" cada x segundos, nunca mas tuve problemas
Sinceramente yo solucione el problema de la desconexion ejecutando un "SELECT 1" cada x segundos, nunca mas tuve problemas
our best documentation is the source code
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Isla de Margarita Venezuela.
danielgarciagil@gmail.com
http://tdolphin.blogspot.com/
https://www.dropbox.com/referrals/NTI5N ... rc=global9
Re: Tdolphin, Reconexiones
Daniel, gracias
Pruebo y te comento.
Desde Chile
Adolfo
Pruebo y te comento.
Desde Chile
Adolfo
Ji,ji,ji... buena la cosa... "all you need is code"
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
- TOTOVIOTTI
- Posts: 334
- Joined: Fri Feb 05, 2010 11:30 am
- Location: San Francisco - Córdoba - Argentina
Re: Tdolphin, Reconexiones
Hola,
retomando éste tema, y tratando de solucionar el error 2013 de pérdida de conexión
con el servidor, cuanto sería recomendable el tiempo para ir haciendo el ping a la base
para que no se caiga la conexión?
Muchas gracias!
Roberto
retomando éste tema, y tratando de solucionar el error 2013 de pérdida de conexión
con el servidor, cuanto sería recomendable el tiempo para ir haciendo el ping a la base
para que no se caiga la conexión?
Muchas gracias!
Roberto
- carlos vargas
- Posts: 1421
- Joined: Tue Oct 11, 2005 5:01 pm
- Location: Nicaragua
Re: Tdolphin, Reconexiones
Daniel, el hacer ping cada x tiempo funciona para evitar que mysql corte la conexion, pero cuando por problemas de internet sucede un corte por pequeños lapsos de tiempos?
has probado situaciones donde conexiones por internet, tu simulas cortes de internet? (desconectas el cable de red y lo reconectas para simular la desconexion)
tdolphin no se reconecta.
segun info leida a partir de determinada version (5.0.3) mysql ha deshabilitado la re conexiones automáticas.
http://linux.overshoot.tv/wiki/mysql_se ... _gone_away
mira si esta modificacion ayuda
has probado situaciones donde conexiones por internet, tu simulas cortes de internet? (desconectas el cable de red y lo reconectas para simular la desconexion)
tdolphin no se reconecta.
segun info leida a partir de determinada version (5.0.3) mysql ha deshabilitado la re conexiones automáticas.
http://linux.overshoot.tv/wiki/mysql_se ... _gone_away
mira si esta modificacion ayuda
Code: Select all
HB_FUNC( MYSQLCONNECT ) // -> MYSQL*
{
MYSQL * mysql;
unsigned int port = ISNUM( 4 ) ? ( unsigned int ) hb_parni( 4 ) : MYSQL_PORT;
unsigned int flags = ISNUM( 5 ) ? ( unsigned int ) hb_parni( 5 ) : 0;
PHB_ITEM pcbDecrypt = hb_param( 7, HB_IT_BLOCK );
HB_BOOL bReconnect = TRUE; /*NUEVO*/
mysql = mysql_init( NULL );
if ( ( mysql != NULL ) )
{
mysql_options( mysql, ( enum mysql_option ) MYSQL_OPT_RECONNECT, &bReconnect ); /*NUEVO*/
mysql_real_connect( mysql,
hb_itemGetC( hb_vmEvalBlockV( pcbDecrypt, 1, hb_param( 1, HB_IT_ANY ) ) ),
hb_itemGetC( hb_vmEvalBlockV( pcbDecrypt, 1, hb_param( 2, HB_IT_ANY ) ) ),
hb_itemGetC( hb_vmEvalBlockV( pcbDecrypt, 1, hb_param( 3, HB_IT_ANY ) ) ),
hb_itemGetC( hb_vmEvalBlockV( pcbDecrypt, 1, hb_param( 6, HB_IT_ANY ) ) ),
port, NULL, flags );
hb_MYSQL_ret( mysql );
}
else
{
hb_retptr( NULL );
}
}
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
Carlos Vargas
Desde Managua, Nicaragua (CA)
- Willi Quintana
- Posts: 859
- Joined: Sun Oct 09, 2005 10:41 pm
- Location: Cusco - Perú
- Contact:
Re: Tdolphin, Reconexiones
Hola amigos....
Prueben con esta sentencia...
Prueben con esta sentencia...
Code: Select all
oQry:execute("SET SESSION wait_timeout = 86400" ) // para que no se desconecte al server
Re: Tdolphin, Reconexiones
Carlos, você fez provas com:
oQry:execute("SET SESSION wait_timeout = 86400" ) // para que no se desconecte al server
oQry:execute("SET SESSION wait_timeout = 86400" ) // para que no se desconecte al server
- carlos vargas
- Posts: 1421
- Joined: Tue Oct 11, 2005 5:01 pm
- Location: Nicaragua
Re: Tdolphin, Reconexiones
repito, el escenario es que la conexión de Internet se cae (se corta), no es que el servidor mysql corte la conexión por inactividad.
Estoy sabido que esta instrucción evita que el servidor desactive la conexión por inactividad hasta por un periodo de 8 horas.
oQry:execute("SET SESSION wait_timeout = 86400" )
pero la prueba aca es simular un corte de Internet, en este caso tomamos el cable de red a nuestra pc, lo desconectamos por unos 5 segundos y luego lo recolectamos, esto con la app cargada y la conexión activa, luego de reconectar el cable, cualquier consulta que se realice mostrara el mensaje de error que el servidor no esta disponible, aun cuando ya hay conexión de Internet, en este caso tdolphin no es capaz de reconectar ni aun usando el método recconect.
salu2
carlos vargas
Estoy sabido que esta instrucción evita que el servidor desactive la conexión por inactividad hasta por un periodo de 8 horas.
oQry:execute("SET SESSION wait_timeout = 86400" )
pero la prueba aca es simular un corte de Internet, en este caso tomamos el cable de red a nuestra pc, lo desconectamos por unos 5 segundos y luego lo recolectamos, esto con la app cargada y la conexión activa, luego de reconectar el cable, cualquier consulta que se realice mostrara el mensaje de error que el servidor no esta disponible, aun cuando ya hay conexión de Internet, en este caso tdolphin no es capaz de reconectar ni aun usando el método recconect.
salu2
carlos vargas
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
Carlos Vargas
Desde Managua, Nicaragua (CA)
-
- Posts: 41
- Joined: Thu Sep 17, 2015 11:40 pm
Re: Tdolphin, Reconexiones
Saludos, retomando el problema de las reconexiones , se encontro alguna solución, tengo un problema con servidor y que se pierde la conexión por el problema de la internet probe un proceso largo con el ping demoro un poco pero lo termino y al quitarlo aun determinado tiempo de congela.
Re: Tdolphin, Reconexiones
Lo que puedes hacer para cuando sabes que vas a generar un proceso largo, es extender el tiempo de la sesion de mysql.
Prueba con
oServer:Execute("SET SESSION wait_timeout = 186400")
y cuando terminas lo vuelves al valor por defecto
oServer:Execute("SET SESSION wait_timeout = 28800")
Saludos
Prueba con
oServer:Execute("SET SESSION wait_timeout = 186400")
y cuando terminas lo vuelves al valor por defecto
oServer:Execute("SET SESSION wait_timeout = 28800")
Saludos