资讯专栏INFORMATION COLUMN

案例分享:Greenplum无法drop表

IT那活儿 / 888人阅读
案例分享:Greenplum无法drop表

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!


故障描述

收到业务侧在某集群无法正常drop表的情况。就是执行drop语句这条会话会卡在那里,也没有任何报错提示。


故障分析

遇到这种情况第一时间想的是会不会两条调度同时对一张表执行dml操作导致的冲突,也就是锁表。于是第一时间查看当前会话。
select * from pg_stat_activity where current_query <> ‘’::text;
加上where条件可以去除空闲会话。
但是drop的时候集群空闲,只有这一个会话。
那会不会是在segment节点的锁冲突导致呢,因为greenplum数据库中的每个segment节点都是相当于一个独立的pg数据库,完全可能出现这种情况。
但是这样的会话怎么定位?生产集群有几十台主机几百个实例总不能一个一个实例登录吧。
这里有个方法,在gp数据库中所有执行的调度中会在Linux层面显示sess_id。
上图不是问题会话,如果在segment节点有残留会话会在idle的位置显示waiting。
找到残留会话就需要登录那个实例:
PGOPTIONS="-c gp_session_role=utility" psql -hip -p端口号 -d实例名
然后查看所有的会话:
select * from pg_stat_activity where current_query <> ‘’::text;
注意看会话开始执行的时间,一般残留会话都是几天前的会话,或者看有没有调度使用到了drop的表。直接清理。
select pg_terminate_backend(‘procpid’);
这样就解决了这个问题。


本文作者:徐 瑞(上海新炬王翦团队)

本文来源:“IT那活儿”公众号

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129169.html

相关文章

  • 数据仓库架构的变迁

    摘要:前面我们简单阐述了分布式数据库的架构,并通过一条简单的查询语句解释了分布式的执行计划。 引言 第八届中国架构师大会(SACC2016)10月27号到29号在北京万达索菲特大饭店成功举办。大会以架构创新之路为主题,云集了国内外顶尖专家,共同探讨云计算和大数据等技术背景下,如何通过架构创新及各种IT新技术来带动企业转型增效。作为一家专注于云端数据仓库的初创公司,酷克数据受邀在SACC201...

    Raaabbit 评论0 收藏0
  • 概览 Greenplum数据仓库 UDW

    摘要:概览概览产品架构快速上手操作指南访问数据仓库数据导入开发指南优化指南表膨胀中类型接入第三方工具使用案例扩展功能迁移数据使用使用外部表数据仓库价格 概览产品架构快速上手操作指南访问UDW数据仓库数据导入开发指南udw优化指南表膨胀UDW中Json类型接入第三方 BI 工具UDW 使用案例Pxf 扩展功能迁移数据使用 pg_dump使用 pxf 外部表FAQs数据仓库价格

    ernest.wang 评论0 收藏1079
  • 构建可扩展的PostgreSQL解决方案

    摘要:这可以通过负载平衡来实现数据分片当问题不是并发查询的数量,而是数据库的大小和单个查询的速度时,可以实现不同的方法。 showImg(https://segmentfault.com/img/remote/1460000018875091); 来源 | 愿码(ChainDesk.CN)内容编辑 愿码Slogan | 连接每个程序员的故事 网站 | http://chaindesk.cn...

    jonh_felix 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<