瀚高软件数据库工程师邵大明向国际社区提交PG内核代码Bug

2017-04-15
 

4月12日,瀚高软件数据库内核研发工程师邵大明提交的PosegreSQL9.6.2版本内核代码Bug的发现及修复,被PG国际社区接受,Bug号“14615”。

Bug发现:

在PostgerSQL 9.6.2版本中,在数据库初始化共享内存时调用ReplicationOriginShmemInit函数中,内存访问越界。



代码修改:

diff --git a/src/backend/replication/logical/origin.c b/src/backend/replication/logical/origin.c
index 5eaf863e02..a8f5b2daf8 100644
--- a/src/backend/replication/logical/origin.c
+++ b/src/backend/replication/logical/origin.c
@@ -470,11 +470,11 @@ ReplicationOriginShmemInit(void)
       if (!found)
       {
              int                 i;
+            
+                MemSet(replication_states_ctl, 0, ReplicationOriginShmemSize());
              replication_states_ctl->tranche_id = LWTRANCHE_REPLICATION_ORIGIN;
-       MemSet(replication_states, 0, ReplicationOriginShmemSize());
-
              for (i = 0; i < max_replication_slots; i++)
                     LWLockInitialize(&replication_states[i].lock,
                                     replication_states_ctl->tranche_id);

本次Bug的提交,是瀚高软件首次对PG内核代码Bug的发现及修复,代表瀚高软件内核研发能力的提升,是瀚高在社区深度贡献的体现。日后,瀚高软件将不断提升自身实力,持续向社区做出贡献。

 

请您留言

联系我们

全国服务热线

400-708-8006

技术支持
support@highgo.com
查看全部联系方式
返回顶部