注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

PostgreSQL9.4: 增加 pg_sleep_for(interval) , pg_sleep_until(timestamp) 延迟执行函数  

2014-05-27 14:13:04|  分类: Postgres基础 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

       之前版本仅支持 pg_sleep(seconds) 延迟执行函数, PostgreSQL 9.4 版本增加两个延迟执行函数,支持指定复杂的延迟。

  • pg_sleep_for(interval)
  • pg_sleep_until(timestamp with time zone)

备注: pg_sleep(seconds): 当前会话延迟执行指定秒,以秒为单位指定
             pg_sleep_for(interval): 支持更大的时间延迟,以 interval 形式指定。
             pg_sleep_until(timestamp with time zone):  指定时间被唤醒。

--1 pg_sleep

[pg94@db1 ~]$ psql francs francs
psql (9.4beta1)
Type "help" for help.

francs=> \timing
Timing is on.

francs=> select pg_sleep(10);
 pg_sleep 
----------
 
(1 row)

Time: 10020.590 ms

备注: 延迟执行 10 秒。

--2 pg_sleep_for

francs=> select pg_sleep_for('2 min');
 pg_sleep_for 
--------------

(1 row)

Time: 120046.302 ms

备注:延迟执行 2 分钟钟。

--3 pg_sleep_until

francs=> select now();
              now              
-------------------------------
 2014-05-27 14:03:14.013931-07
(1 row)

francs=> select pg_sleep_until('2014-05-27 14:05:00');
 pg_sleep_until 
----------------
 
(1 row)

Time: 102027.964 ms

备注:延迟执行到指定时间,用法非常简单。

--4 查看 pg_stat_activity

postgres=# select pid, datname,usename,query_start,query,state,waiting from pg_stat_activity where state='active' and pid <> pg_backend_pid() order by query;
 pid  | datname | usename |          query_start          |                     query                     | state  | waiting 
------+---------+---------+-------------------------------+-----------------------------------------------+--------+---------
 4464 | francs  | francs  | 2014-05-27 14:01:26.987006-07 | select pg_sleep_for('2 min');                 | active | f
 4693 | francs  | francs  | 2014-05-27 14:01:22.992145-07 | select pg_sleep_until('2014-05-27 14:03:00'); | active | f
(2 rows)

备注: 在之前函数还未执行完成的时候查询 pg_stat_activity,说明函数处于运行状态。



  评论这张
 
阅读(1165)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016