Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Greenplum
Gpdb
提交
db8326ae
G
Gpdb
项目概览
Greenplum
/
Gpdb
通知
7
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Gpdb
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
db8326ae
编写于
5月 15, 2020
作者:
G
Gang Xiong
提交者:
xiong-gang
5月 18, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Phase 3 of pgindent updates.
Cherry-pick
382ceffd
from upstream, only the changes to amcheck.
上级
daa6340b
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
31 addition
and
31 deletion
+31
-31
contrib/amcheck/verify_nbtree.c
contrib/amcheck/verify_nbtree.c
+31
-31
未找到文件。
contrib/amcheck/verify_nbtree.c
浏览文件 @
db8326ae
...
...
@@ -240,8 +240,8 @@ btree_index_checkable(Relation rel)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_FEATURE_NOT_SUPPORTED
),
errmsg
(
"cannot access temporary tables of other sessions"
),
errdetail
(
"Index
\"
%s
\"
is associated with temporary relation."
,
RelationGetRelationName
(
rel
))));
errdetail
(
"Index
\"
%s
\"
is associated with temporary relation."
,
RelationGetRelationName
(
rel
))));
if
(
!
IndexIsValid
(
rel
->
rd_index
))
ereport
(
ERROR
,
...
...
@@ -411,12 +411,12 @@ bt_check_level_from_leftmost(BtreeCheckState *state, BtreeLevel level)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"block %u fell off the end of index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
current
,
RelationGetRelationName
(
state
->
rel
))));
else
ereport
(
DEBUG1
,
(
errcode
(
ERRCODE_NO_DATA
),
errmsg
(
"block %u of index
\"
%s
\"
ignored"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
current
,
RelationGetRelationName
(
state
->
rel
))));
goto
nextpage
;
}
else
if
(
nextleveldown
.
leftmost
==
InvalidBlockNumber
)
...
...
@@ -433,14 +433,14 @@ bt_check_level_from_leftmost(BtreeCheckState *state, BtreeLevel level)
if
(
!
P_LEFTMOST
(
opaque
))
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"block %u is not leftmost in index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
errmsg
(
"block %u is not leftmost in index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
if
(
level
.
istruerootlevel
&&
!
P_ISROOT
(
opaque
))
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"block %u is not true root in index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
errmsg
(
"block %u is not true root in index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
}
/*
...
...
@@ -488,7 +488,7 @@ bt_check_level_from_leftmost(BtreeCheckState *state, BtreeLevel level)
errmsg
(
"left link/right link pair in index
\"
%s
\"
not in agreement"
,
RelationGetRelationName
(
state
->
rel
)),
errdetail_internal
(
"Block=%u left block=%u left link from block=%u."
,
current
,
leftcurrent
,
opaque
->
btpo_prev
)));
current
,
leftcurrent
,
opaque
->
btpo_prev
)));
/* Check level, which must be valid for non-ignorable page */
if
(
level
.
level
!=
opaque
->
btpo
.
level
)
...
...
@@ -497,7 +497,7 @@ bt_check_level_from_leftmost(BtreeCheckState *state, BtreeLevel level)
errmsg
(
"leftmost down link for level points to block in index
\"
%s
\"
whose level is not one level down"
,
RelationGetRelationName
(
state
->
rel
)),
errdetail_internal
(
"Block pointed to=%u expected level=%u level in pointed to block=%u."
,
current
,
level
.
level
,
opaque
->
btpo
.
level
)));
current
,
level
.
level
,
opaque
->
btpo
.
level
)));
/* Verify invariants for page -- all important checks occur here */
bt_target_page_check
(
state
);
...
...
@@ -508,8 +508,8 @@ nextpage:
if
(
current
==
leftcurrent
||
current
==
opaque
->
btpo_prev
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"circular link chain found in block %u of index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
errmsg
(
"circular link chain found in block %u of index
\"
%s
\"
"
,
current
,
RelationGetRelationName
(
state
->
rel
))));
leftcurrent
=
current
;
current
=
opaque
->
btpo_next
;
...
...
@@ -665,17 +665,17 @@ bt_target_page_check(BtreeCheckState *state)
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"item order invariant violated for index
\"
%s
\"
"
,
RelationGetRelationName
(
state
->
rel
)),
errdetail_internal
(
"Lower index tid=%s (points to %s tid=%s) "
"higher index tid=%s (points to %s tid=%s) "
"page lsn=%X/%X."
,
itid
,
P_ISLEAF
(
topaque
)
?
"heap"
:
"index"
,
htid
,
nitid
,
P_ISLEAF
(
topaque
)
?
"heap"
:
"index"
,
nhtid
,
(
uint32
)
(
state
->
targetlsn
>>
32
),
(
uint32
)
state
->
targetlsn
)));
errdetail_internal
(
"Lower index tid=%s (points to %s tid=%s) "
"higher index tid=%s (points to %s tid=%s) "
"page lsn=%X/%X."
,
itid
,
P_ISLEAF
(
topaque
)
?
"heap"
:
"index"
,
htid
,
nitid
,
P_ISLEAF
(
topaque
)
?
"heap"
:
"index"
,
nhtid
,
(
uint32
)
(
state
->
targetlsn
>>
32
),
(
uint32
)
state
->
targetlsn
)));
}
/*
...
...
@@ -824,7 +824,7 @@ bt_right_page_check_scankey(BtreeCheckState *state)
ereport
(
DEBUG1
,
(
errcode
(
ERRCODE_NO_DATA
),
errmsg
(
"level %u leftmost page of index
\"
%s
\"
was found deleted or half dead"
,
opaque
->
btpo
.
level
,
RelationGetRelationName
(
state
->
rel
)),
opaque
->
btpo
.
level
,
RelationGetRelationName
(
state
->
rel
)),
errdetail_internal
(
"Deleted page found when building scankey from right sibling."
)));
/* Be slightly more pro-active in freeing this memory, just in case */
...
...
@@ -1053,7 +1053,7 @@ bt_downlink_check(BtreeCheckState *state, BlockNumber childblock,
errmsg
(
"down-link lower bound invariant violated for index
\"
%s
\"
"
,
RelationGetRelationName
(
state
->
rel
)),
errdetail_internal
(
"Parent block=%u child index tid=(%u,%u) parent page lsn=%X/%X."
,
state
->
targetblock
,
childblock
,
offset
,
state
->
targetblock
,
childblock
,
offset
,
(
uint32
)
(
state
->
targetlsn
>>
32
),
(
uint32
)
state
->
targetlsn
)));
}
...
...
@@ -1228,21 +1228,21 @@ palloc_btree_page(BtreeCheckState *state, BlockNumber blocknum)
if
(
P_ISLEAF
(
opaque
)
&&
!
P_ISDELETED
(
opaque
)
&&
opaque
->
btpo
.
level
!=
0
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"invalid leaf page level %u for block %u in index
\"
%s
\"
"
,
opaque
->
btpo
.
level
,
blocknum
,
RelationGetRelationName
(
state
->
rel
))));
errmsg
(
"invalid leaf page level %u for block %u in index
\"
%s
\"
"
,
opaque
->
btpo
.
level
,
blocknum
,
RelationGetRelationName
(
state
->
rel
))));
if
(
blocknum
!=
BTREE_METAPAGE
&&
!
P_ISLEAF
(
opaque
)
&&
!
P_ISDELETED
(
opaque
)
&&
opaque
->
btpo
.
level
==
0
)
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"invalid internal page level 0 for block %u in index
\"
%s
\"
"
,
opaque
->
btpo
.
level
,
RelationGetRelationName
(
state
->
rel
))));
errmsg
(
"invalid internal page level 0 for block %u in index
\"
%s
\"
"
,
opaque
->
btpo
.
level
,
RelationGetRelationName
(
state
->
rel
))));
if
(
!
P_ISLEAF
(
opaque
)
&&
P_HAS_GARBAGE
(
opaque
))
ereport
(
ERROR
,
(
errcode
(
ERRCODE_INDEX_CORRUPTED
),
errmsg
(
"internal page block %u in index
\"
%s
\"
has garbage items"
,
blocknum
,
RelationGetRelationName
(
state
->
rel
))));
errmsg
(
"internal page block %u in index
\"
%s
\"
has garbage items"
,
blocknum
,
RelationGetRelationName
(
state
->
rel
))));
return
page
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录