Cerrar conexión MySql con TDolphin (Solucionado)

Post Reply
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Cerrar conexión MySql con TDolphin (Solucionado)

Post by cmsoft »

Estimados:
Tengo un sistema que hace la apertura de una base de datos que uso para configuración, y luego la cierro para abrir otra.
El problema que estoy teniendo es que, aunque hago un End de la primera conexión, en la base de datos me sigue mostrando (con SHOW PROCESSLIST) que la conexión sigue activa.
Esto hace que la cantidad de concurrencias en la base de datos se multiplique por dos, y que alcance el máximo definido en max_connections.
Como puedo hacer para matar dicha conexión?
Desde ya muchas gracias.
Last edited by cmsoft on Mon Nov 08, 2021 8:12 pm, edited 1 time in total.
User avatar
carlos vargas
Posts: 1721
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Cerrar conexión MySql con TDolphin

Post by carlos vargas »

en tdolphin,
static HB_GARBAGE_FUNC( MYSQL_release )
{
void ** ph = (void **) Cargo;

/* Check if pointer is not NULL to avoid multiple freeing */
if( ph && * ph )
{
/* Destroy the object */
mysql_close( (MYSQL *) * ph );

/* set pointer to NULL to avoid multiple freeing */
* ph = NULL;
}
}


intenta con esto, y nos comenta por favor:

Code: Select all | Expand


oCon:end()
oCon := nil
 
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Re: Cerrar conexión MySql con TDolphin

Post by cmsoft »

Carlos:
Muchas gracias por la pronta respuesta
Con:

Code: Select all | Expand


oServer:End()
oServer := nil
 

No la mata a la conexión.
Por ahí te interprete mal, HB_GARBAGE_FUNC como la llamo?
Esa funcion veo que esta en function.c de dolphin, pero no la llama en ningun lado al hacer End
User avatar
karinha
Posts: 7948
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil
Been thanked: 3 times
Contact:

Re: Cerrar conexión MySql con TDolphin

Post by karinha »

Y asi?

Code: Select all | Expand


   oServer:Close()  
   oConn:Close()  

   oServer := NIL
   oConn := NIL

   HB_GCALL( .T. )
 


Regards, saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
carlos vargas
Posts: 1721
Joined: Tue Oct 11, 2005 5:01 pm
Location: Nicaragua

Re: Cerrar conexión MySql con TDolphin

Post by carlos vargas »

la idea de las funciones garbage, es que son llamadas cuando el programa entra en idle, y se ejecuta al recolector de basura, ahi las variables a nil, son procesadas.

ahi es cuando se llama la función mysql_close, para el caso de la variable que contiene la conexion. es cuando se cierra la conexión.

de ahi que karinha haga el llamado a hb_gcall, obligando al recolector de basura de harbour a ejecutarse inmediatamente, y no hasta que el programa este en idle.

Mil Gracias karinha, eso es lo que me faltaba.

salu2
Salu2
Carlos Vargas
Desde Managua, Nicaragua (CA)
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Re: Cerrar conexión MySql con TDolphin

Post by cmsoft »

Gracias por las respuestas y aclaraciones.
Probé como indicó Karinha pero sigue sin matar la conexión.
Seguramente esté haciendo algo mal, voy a revisar más mi código
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Re: Cerrar conexión MySql con TDolphin

Post by cmsoft »

Revisé mi código y sigue sin funcionar.
Agradecería cualquier sugerencia.
Desde ya muchas gracias
User avatar
JoseAlvarez
Posts: 811
Joined: Sun Nov 09, 2014 5:01 pm

Re: Cerrar conexión MySql con TDolphin

Post by JoseAlvarez »

Hola César, Saludos..

¿Será que en algún momento tienes dos conexiones con la misma variable?

Yo no he tenido problemas con el END, y mi forma de trabajar es Conectar, Hacer, Desconectar o sea que conecto y desconecto constantemente.

Es una idea, trata de descartarla.
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
cmsoft
Posts: 1297
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina
Been thanked: 2 times

Re: Cerrar conexión MySql con TDolphin (Solucionado)

Post by cmsoft »

Gracias a todos por su interés.
Dado que a todos le funcionaba, profundicé en mi código, y efectivamente tenía un apertura extra que después no cerraba.
Post Reply