Re: [pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql

2015-08-10 Por tema Gerardo Herzig


- Mensaje original -
 De: mauricio pullabuestan jmaurici...@yahoo.es
 Para: PostgreSQL Lista Castellano pgsql-es-ayuda@postgresql.org
 Enviados: Viernes, 7 de Agosto 2015 12:16:43
 Asunto: [pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql
 
 
 
 Buen día.
 
 
 Estoy revisando una aplicación que utiliza Postgresql 9.4, al parecer
 esta dejando abierto un begin transaction, con Sql Server utilizo
 @@TRANCOUNT para saber si existe una transacción, cual sería el
 equivalente en PostgreSql.
 

La vista pg_stat_activity es tu amiga. En 9.4, la columna state en 'idle in 
transaction' deberia corresponderse con un backend que hizo un BEGIN, no ha 
cerrado la conexion, y se encuentra oscioso. Con la columna pid, 
client_addr, application_name puedes tener mejor certeza de cual es el 
aplicativo que se esta comportando de esa manera.

http://www.postgresql.org/docs/9.4/static/monitoring-stats.html#PG-STAT-ACTIVITY-VIEW

HTH

Gerardo

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda


Re: [pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql

2015-08-10 Por tema jaime soler gómez
El vie, 07-08-2015 a las 12:02 -0400, Hector R. De los Santos escribió:
 Hola Mauricio,

Hola Mauricio,
 Por lo que se, PostgreSQL finaliza las transacciones abiertas cuando
  termina la sesion (las finaliza con un rollback).
 Para ver la actividad puedes probar esta consulta:
 
 
 Select pid,datid,datname,usesysid,usename,application_name,
 backend_start,waiting,state
 From pg_stat_activity;
 


 
 Saludos,
 
 :: HDS Consultores TI
 Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
 Web: http://hdsconsultores.net
 Blog: http://codigohds.com
 Linux User #:320363 
 
 El 7 de agosto de 2015, 11:16 a. m., mauricio
 pullabuestanjmaurici...@yahoo.es escribió:
 Buen día.
 
 
 Estoy revisando una aplicación que utiliza Postgresql 9.4, al
 parecer esta dejando abierto un begin transaction, con Sql
 Server utilizo @@TRANCOUNT para saber si existe una
 transacción, cual sería el equivalente en PostgreSql.
 
 
 Hay manera de revisar el historial de DML que afectaron una db
 y ver si existen transacciones pendientes.

Puedes habilitar el log de dichas sentencias modificando el parámetro de
configuración del postgresql.conf a:
 log_statement=  'dml'; # puede tomar valores ddl, mod, all
Si quieres también puedes guardar en una base de datos esos logs y hacer
la búsqueda que comentabas.
 
 
 
 
 El servidor esta en una maquina virtual con centos 5.4 me
 conecto a esta por navicat o PGAdmin III, existe manera de
 mandar a reiniciar PostgreSql desde navicat o pgAdmin o tengo
 que hacerlo desde la maquina virtual cual serían los comandos.

Lo normal es hacerlo a través del script de servicio del postgresql. En
linux suele estar en /etc/init.d/ y con un nombre que contiene
*postgres* se puede ejecutar la acción restart.
 
 
 
 Saludos 
 
 Mauricio.
 
 

-- 
Jaime Soler Gómez 

HOPLA Software
EnterpriseDB exclusive distributor ES/PT/IT  LatAm


-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda


Re: [pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql

2015-08-10 Por tema Hector R. De los Santos
Mauricio,
Si inicias una transaccion te aseguro que si la sesión finaliza PostgreSQL
hace un rollback de la transaccion.
Para los datos que necesitas estan el la misma tabla: pg_stat_activity
Puedes hacer un Select * from pg_stat_activity para que mires que campos
son los que necesitas.
Revisa los campos: query,client_addr,waiting, state


Saludos,

:: HDS Consultores TI
Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
Web: http://hdsconsultores.net
Blog: http://codigohds.com
Linux User #:320363

El 10 de agosto de 2015, 4:37 a. m., jaime solerjaime.so...@gmail.com
escribió:

 El vie, 07-08-2015 a las 12:02 -0400, Hector R. De los Santos escribió:
  Hola Mauricio,

 Hola Mauricio,
  Por lo que se, PostgreSQL finaliza las transacciones abiertas cuando
   termina la sesion (las finaliza con un rollback).
  Para ver la actividad puedes probar esta consulta:
 
 
  Select pid,datid,datname,usesysid,usename,application_name,
  backend_start,waiting,state
  From pg_stat_activity;
 


 
  Saludos,
 
  :: HDS Consultores TI
  Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
  Web: http://hdsconsultores.net
  Blog: http://codigohds.com
  Linux User #:320363
 
  El 7 de agosto de 2015, 11:16 a. m., mauricio
  pullabuestanjmaurici...@yahoo.es escribió:
  Buen día.
 
 
  Estoy revisando una aplicación que utiliza Postgresql 9.4, al
  parecer esta dejando abierto un begin transaction, con Sql
  Server utilizo @@TRANCOUNT para saber si existe una
  transacción, cual sería el equivalente en PostgreSql.
 
 
  Hay manera de revisar el historial de DML que afectaron una db
  y ver si existen transacciones pendientes.

 Puedes habilitar el log de dichas sentencias modificando el parámetro de
 configuración del postgresql.conf a:
  log_statement=  'dml'; # puede tomar valores ddl, mod, all
 Si quieres también puedes guardar en una base de datos esos logs y hacer
 la búsqueda que comentabas.
 
 
 
 
  El servidor esta en una maquina virtual con centos 5.4 me
  conecto a esta por navicat o PGAdmin III, existe manera de
  mandar a reiniciar PostgreSql desde navicat o pgAdmin o tengo
  que hacerlo desde la maquina virtual cual serían los comandos.

 Lo normal es hacerlo a través del script de servicio del postgresql. En
 linux suele estar en /etc/init.d/ y con un nombre que contiene
 *postgres* se puede ejecutar la acción restart.

 
 
  Saludos
 
  Mauricio.
 
 





Re: [pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql

2015-08-10 Por tema jaime soler
El vie, 07-08-2015 a las 12:02 -0400, Hector R. De los Santos escribió:
 Hola Mauricio,

Hola Mauricio,
 Por lo que se, PostgreSQL finaliza las transacciones abiertas cuando
  termina la sesion (las finaliza con un rollback).
 Para ver la actividad puedes probar esta consulta:
 
 
 Select pid,datid,datname,usesysid,usename,application_name,
 backend_start,waiting,state
 From pg_stat_activity;
 


 
 Saludos,
 
 :: HDS Consultores TI
 Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
 Web: http://hdsconsultores.net
 Blog: http://codigohds.com
 Linux User #:320363 
 
 El 7 de agosto de 2015, 11:16 a. m., mauricio
 pullabuestanjmaurici...@yahoo.es escribió:
 Buen día.
 
 
 Estoy revisando una aplicación que utiliza Postgresql 9.4, al
 parecer esta dejando abierto un begin transaction, con Sql
 Server utilizo @@TRANCOUNT para saber si existe una
 transacción, cual sería el equivalente en PostgreSql.
 
 
 Hay manera de revisar el historial de DML que afectaron una db
 y ver si existen transacciones pendientes.

Puedes habilitar el log de dichas sentencias modificando el parámetro de
configuración del postgresql.conf a:
 log_statement=  'dml'; # puede tomar valores ddl, mod, all
Si quieres también puedes guardar en una base de datos esos logs y hacer
la búsqueda que comentabas.
 
 
 
 
 El servidor esta en una maquina virtual con centos 5.4 me
 conecto a esta por navicat o PGAdmin III, existe manera de
 mandar a reiniciar PostgreSql desde navicat o pgAdmin o tengo
 que hacerlo desde la maquina virtual cual serían los comandos.

Lo normal es hacerlo a través del script de servicio del postgresql. En
linux suele estar en /etc/init.d/ y con un nombre que contiene
*postgres* se puede ejecutar la acción restart.
 
 
 
 Saludos 
 
 Mauricio.
 
 



-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda


[pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql

2015-08-07 Por tema mauricio pullabuestan
Buen día.
Estoy revisando una aplicación que utiliza Postgresql 9.4, al parecer esta 
dejando abierto un begin transaction, con Sql Server utilizo @@TRANCOUNT para 
saber si existe una transacción, cual sería el equivalente en PostgreSql.
Hay manera de revisar el historial de DML que afectaron una db y ver si existen 
transacciones pendientes.

El servidor esta en una maquina virtual con centos 5.4 me conecto a esta por 
navicat o PGAdmin III, existe manera de mandar a reiniciar PostgreSql desde 
navicat o pgAdmin o tengo que hacerlo desde la maquina virtual cual serían los 
comandos.
Saludos 
Mauricio.

Re: [pgsql-es-ayuda] Equivalente de @@TRANCOUNT en postgresql

2015-08-07 Por tema Hector R. De los Santos
Hola Mauricio,
Por lo que se, PostgreSQL finaliza las transacciones abiertas cuando
 termina la sesion (las finaliza con un rollback).
Para ver la actividad puedes probar esta consulta:

Select pid,datid,datname,usesysid,usename,application_name,
backend_start,waiting,state
From pg_stat_activity;

Saludos,

:: HDS Consultores TI
Servidores | Redes | Programacion | GNU/Linux | PostgreSQL
Web: http://hdsconsultores.net
Blog: http://codigohds.com
Linux User #:320363

El 7 de agosto de 2015, 11:16 a. m., mauricio pullabuestan
jmaurici...@yahoo.es escribió:

 Buen día.

 Estoy revisando una aplicación que utiliza Postgresql 9.4, al parecer esta
 dejando abierto un begin transaction, con Sql Server utilizo @@TRANCOUNT
 para saber si existe una transacción, cual sería el equivalente en
 PostgreSql.

 Hay manera de revisar el historial de DML que afectaron una db y ver si
 existen transacciones pendientes.


 El servidor esta en una maquina virtual con centos 5.4 me conecto a esta
 por navicat o PGAdmin III, existe manera de mandar a reiniciar PostgreSql
 desde navicat o pgAdmin o tengo que hacerlo desde la maquina virtual cual
 serían los comandos.

 Saludos
 Mauricio.