- 博客(12)
- 收藏
- 关注

原创 Alter命令导致pg_class元数据紊乱问题定位
问题现象最近,一同事执行alter table脚本(表很多,7万多张表),执行完毕后,发现部分表无法访问,报错信息如下:ERROR: could not find tuple for relation xxx通过gdb调试发现,是通过主表查找toast表时出了问题,找不到对应的toast表信息。通过查询pg_class表,发现如下图所示的异常。 如上图所以,pg_class...
2018-05-11 10:07:50
801
原创 论PostgreSQL中的各种“xid”
论PostgreSQL中的各种“xid” 在分析PostgreSQL 9.6.9(下文称PG)的多版本(MVCC)问题时,经常打交道的就是Snapshot了,而Snapshot的构造过程中,我们会看到多种“xid”,而这些“xid”究竟如何赋值?作用又是什么?说实话,我并没有完全搞明白。今天,把这些“xid”做一些归纳总结,以便于以后分析定位问题。/* * These are ...
2018-06-26 20:45:26
6068
转载 开发人员必知的5种开源协议
开发人员必知的5种开源协议(BSD,Apache,GPL,LGPL,MIT)什么是软件许可协议?通俗来讲,许可协议是指用来授权其他人具有某种使用你的作品的权利。依靠许可协议将你的作品对外开源或者对你的作品的各个方面逐一进行授权,是一个不错的方法(WordPress, Drupal 和许多其它的内容管理系统都是开源软件)。一旦对外开源,你将失去所有对你的作品的版权,别人也没有义务将你标注为作品的原创...
2018-05-22 21:04:34
13707
1
原创 分布式集群下数据可见性问题分析记录
分布式集群下数据可见性问题分析记录1. 问题背景介绍 AntDB 3.1在做benchmarksql压测时,一直有个core down 问题。起初一直以为是触发器问题,因触发器的逻辑不太熟悉,一直先紧着别的问题修正。最近定位这个问题时,根据core文件的堆栈信息发现,是foreign key检查的问题。 可通过如下脚本复现该问题。1-1. 集群搭建 为...
2018-04-14 19:07:22
515
原创 PostgreSQL中的依赖类型
PostgreSQL中的依赖类型pg_dependpostgres=# \d+ pg_depend Table "pg_catalog.pg_depend" Column | Type | Modifiers | Storage | Stats target | Description -------------+-...
2018-03-27 17:31:31
2279
原创 AntDB 通过扩展 default expression 实现字段值的自动更新
由 MySQL 的 ON UPDATE CURRENT_TIMESTAMP 带来的启发,AntDB 是否可以实现 UPDATE 时自动更新字段值。方案方案1:尝试为需要自动更新的字段自动创建 TRIGGER。方案2:尝试通过 DEFAULT EXPRESSION 来实现字段值的自动更新。实现方案1 PostgreSQL之时间戳自动更新方案...
2018-03-06 15:17:43
588
原创 AntDB 重分布性能测试记录二
AntDB 重分布性能测试记录二 接上篇《AntDB重分布(rebalance)性能对比记录一》,AntDB在重分布方面有优化的空间,本文通过记录一组数据,验证优化方案的可能性。优化方案描述重分布对各个数据节点(datanode)来说,主要包含两个操作:删除不属于自己的数据,这部分数据其他节点需要。插入属于自己的数据,这部分数据可能在其他节点上。由通过插入一张新
2018-02-01 16:27:18
554
原创 AntDB重分布(rebalance)性能对比记录一
AntDB重分布(rebalance)性能对比记录一AntDB集群环境postgres=# table pgxc_node; node_name | node_type | node_port | node_host | nodeis_primary | nodeis_preferred | node_id -----------+-----------+----
2018-01-31 20:35:47
536
原创 AntDB重分布流程记录
AntDB基于PGXC开发,保留了原PGXC的重分布逻辑,本文记录了常见的重分布流程。集群环境coordinator节点:cd1、cd2 datanode节点:dn1、dn2、dn3案例1概述 重分布前 重分布后 重分布CASE 重分布SQL 分片方式 分片函数 分片字段 分片节
2018-01-31 12:50:27
745
原创 AntDB日常调试GDB脚本
AntDB日常调试GDB脚本 为了更方便的调试AntDB,生成gdb调试脚本。gdb调试脚本gengdb.sh# !/bin/bash# Author Sunny# Version 2016-11-11function Usage(){ echo "\Help Just keep enum NodeTag which read from
2018-01-30 10:51:28
439
原创 AntDB Reduce死锁与驱动
AntDB Reduce死锁与驱动 AntDB的集群计划(Cluster Plan)类似并行计划(Parallel Plan),通过序列化(Serialize)和反序列化(Restore)执行计划(Plan Statement),并发送到各个相关节点(Node),以保证各个节点的执行计划一致(基本一致,Restore时可能略微改动)。 AntDB引入Reduce Plan用于动态
2018-01-30 10:44:07
310
原创 AntDB的Cluster Plan与PGXC的Remote Query Plan区别
比较AntDB Cluster Plan与PGXC Remote Query Plan的区别 AntDB 3.1版本引入Cluster Plan,区别于原PGXC的执行计划,通过Reduce Plan支持数据的实时动态分布,将原本PGXC无法下沉到Datanode执行的执行计划做了优化,使得执行计划的执行压力分散到各个Datanode节点,一方面减轻Coordinator节点的性能压力,另
2018-01-30 10:40:27
515
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人