文档章节

pg_rewind发生int型溢出(bug)

p
 pg_edb
发布于 2017/08/16 09:33
字数 189
阅读 9
收藏 0

pg_rewind 9.5以及9.6版本,在file的size大于2G以上时,会发生int型溢出。

unexpected result while sending file list: ERROR:  value "2148022000" is out of range for type integer

                /*

                * First create a temporary table, and load it with the blocks that we

                * need to fetch.

                */

                sql = "CREATE TEMPORARY TABLE fetchchunks(path text, begin int4, len int4);";

                res = PQexec(conn, sql);

 

                if (PQresultStatus(res) != PGRES_COMMAND_OK)

                                pg_fatal("could not create temporary table: %s",

                                                                PQresultErrorMessage(res));

                PQclear(res);

 

                sql = "COPY fetchchunks FROM STDIN";

                res = PQexec(conn, sql);

 

                if (PQresultStatus(res) != PGRES_COPY_IN)

                                pg_fatal("could not send file list: %s",

                                                                PQresultErrorMessage(res));

                PQclear(res);

 

                while ((res = PQgetResult(conn)) != NULL)

                {

                                if (PQresultStatus(res) != PGRES_COMMAND_OK)

                                                pg_fatal("unexpected result while sending file list: %s",

                                                                                PQresultErrorMessage(res));

                                PQclear(res);

                }

postgresql 9.6.4已经修复这个bug,参考。

https://www.postgresql.org/docs/9.6/static/release-9-6-4.html

Fix pg_rewind to correctly handle files exceeding 2GB (Kuntal Ghosh, Michael Paquier)

Ordinarily such files won't appear in PostgreSQL data directories, but they could be present in some cases.

© 著作权归作者所有

共有 人打赏支持
p
粉丝 0
博文 6
码字总数 2675
作品 0
杭州
PostgreSQL 11 preview - Allow on-line enabling and disabling of data checksums

标签 PostgreSQL , checksum , online modify , pgverifychecksums , pgenabledatachecksums , pgdisabledatachecksums 背景 PostgreSQL的数据文件是以数据块组织的,由于数据块可能比文件系......

德哥
05/06
0
0
JAVA存取PostgreSQL二进制类型bytea

经过测试:JAVA存取PostgreSQL的bytea类型均存在内存的限制问题(存取的数据过大会出现out of memory内存溢出的问题),EnterpriseDB对此做了优化。 取PostgreSQL中的bytea,并存储到硬盘上....

YuanyuanL
2013/08/09
0
0
PostgreSQL数值类型--浮点类型和序列

PostgreSQL包括整数类型和浮点数类型。 整数类型包括3种,分别是smallint、int和bigint。别名分别是int2、int(int4)和int8.常用数据类型是int(integer)。 浮点类型分为精确浮点数类型num...

白豆腐徐长卿
2017/11/07
0
0
PostgreSQL 10.4, 9.6.9, 9.5.13, 9.4.18 和 9.3.23 发布

PostgreSQL 10.4, 9.6.9, 9.5.13, 9.4.18 和 9.3.23 全系列更新发布! 本次更新修复了一个安全问题以及过去三个月报告的一些错误。 安全问题 该版本修复了一个安全漏洞 CVE-2018-1115: 函数 ...

局长
05/11
0
0
PostgreSQL 一主多从(多副本,强同步)简明手册 - 配置、压测、监控、切换、防脑裂、修复、0丢失 - 珍藏级

标签 PostgreSQL , 多副本 , 一主多从 , 流复制 背景 PostgreSQL物理流复制有几个特点 1、延迟及低,毫不畏惧大事务 2、支持断点续传 3、支持多副本 4、配置简单,看本文 5、备库与主库物理完...

德哥
04/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Linux环境搭建 | VMware下共享文件夹的实现

在进行程序开发的过程中,我们经常要在主机与虚拟机之间传递文件,比如说,源代码位于虚拟机,而在主机下阅读或修改源代码,这里就需要使用到 「共享文件」 这个机制了。本文介绍了两种共享文...

良许Linux
59分钟前
4
0
JUC锁框架——AQS源码分析

JUC锁介绍 Java的并发框架JUC(java.util.concurrent)中锁是最重要的一个工具。因为锁,才能实现正确的并发访问。而AbstractQueuedSynchronizer(AQS)是一个用来构建锁和同步器的框架,使用A...

长头发-dawn
今天
1
0
docker中安装了RabbitMQ后无法访问其Web管理页面

在官网找了"$ docker run -d --hostname my-rabbit --name some-rabbit -p 8080:15672 rabbitmq:3-management"这条安装命令,在docker上安装了RabbitMQ,,结果输入http://localhost:8080并不......

钟然千落
今天
4
1
spring-cloud | 分布式session共享

写在前面的话 各位小伙伴,你们有福了,这一节不仅教大家怎么实现分布式session的问题,还用kotlin开发,喜欢kotlin的小伙伴是不是很开心! 以前在写Android的时候,就对客户端请求有一定的认...

冯文议
今天
3
0
c语言之内存分配笔记

先看一个数组: short array[5] = {1,2} // 这儿定义的一个int类型的数组,数组第1和第2个元素值是1和2.其余后面默认会给值为0; 或者 short array[] = {1,2};//这儿数组第1和第2个元素,数组...

DannyCoder
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部