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 soler<jaime.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
> > 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.
>
> 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.
> >
> >
>
>
>

Responder a