自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

constzl的博客

一个AntDB程序员

  • 博客(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关注的人

提示
确定要删除当前文章?
取消 删除