他的回复:
当显式开启事务后,没有正在运行的语句,也没有提交/回滚这个事务时,显式状态就是idle in transaction,query显示为最新结束的SQL语句。通俗解释就是:有一个事务,没结束,也没事儿干。举个例子:session1:begin;-- 开启事务insert into t1values(1); -- 本语句很快结束session2 :查询这个事务的状态,就是idle in transaction,而query会显示为这句insert。因为最新运行完毕的是insert。所以,对于你的问题,并不是release运行了很长时间,而是release语句之后缺少一个commit或者rollback。