Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
YottaChain
YTBP
提交
2b6419bb
Y
YTBP
项目概览
YottaChain
/
YTBP
通知
0
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Y
YTBP
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2b6419bb
编写于
8月 09, 2018
作者:
B
Bart Wyatt
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
address PR feedback
上级
d846b3a3
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
5 addition
and
6 deletion
+5
-6
libraries/chain/controller.cpp
libraries/chain/controller.cpp
+5
-6
未找到文件。
libraries/chain/controller.cpp
浏览文件 @
2b6419bb
...
...
@@ -868,14 +868,15 @@ struct controller_impl {
void
start_block
(
block_timestamp_type
when
,
uint16_t
confirm_block_count
,
controller
::
block_status
s
)
{
EOS_ASSERT
(
!
pending
,
block_validate_exception
,
"pending block
is not available
"
);
EOS_ASSERT
(
!
pending
,
block_validate_exception
,
"pending block
already exists
"
);
auto
guard_pending
=
fc
::
make_scoped_exit
([
this
](){
pending
.
reset
();
});
bool
skip_db_sessions
=
!
conf
.
disable_replay_opts
&&
(
s
==
controller
::
block_status
::
irreversible
);
if
(
!
skip_db_sessions
)
{
pending
->
_block_status
=
s
;
if
(
!
self
.
skip_db_sessions
())
{
EOS_ASSERT
(
db
.
revision
()
==
head
->
block_num
,
database_exception
,
"db revision is not on par with head block"
,
(
"db.revision()"
,
db
.
revision
())(
"controller_head_block"
,
head
->
block_num
)(
"fork_db_head_block"
,
fork_db
.
head
()
->
block_num
)
);
...
...
@@ -884,8 +885,6 @@ struct controller_impl {
pending
.
emplace
(
maybe_session
());
}
pending
->
_block_status
=
s
;
pending
->
_pending_block_state
=
std
::
make_shared
<
block_state
>
(
*
head
,
when
);
// promotes pending schedule (if any) to active
pending
->
_pending_block_state
->
in_current_chain
=
true
;
...
...
@@ -1661,7 +1660,7 @@ bool controller::skip_db_sessions() const {
}
bool
controller
::
skip_trx_checks
()
const
{
return
!
my
->
conf
.
disable_replay_opts
&&
my
->
pending
&&
!
my
->
in_trx_requiring_checks
&&
(
my
->
pending
->
_block_status
==
block_status
::
irreversible
||
my
->
pending
->
_block_status
==
block_status
::
validated
);
return
!
my
->
conf
.
disable_replay_opts
&&
my
->
pending
&&
!
my
->
in_trx_requiring_checks
&&
(
my
->
pending
->
_block_status
==
block_status
::
irreversible
||
my
->
pending
->
_block_status
==
block_status
::
validated
);
}
bool
controller
::
contracts_console
()
const
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录