15次主要版本更新

18.0.0 2024年7月18日
17.0.0 2024年7月12日
16.0.0 2024年6月24日
15.0.0 2024年5月23日
0.0.0 2023年8月31日

1623魔法豆

Download history 9/week @ 2024-04-13 102/week @ 2024-04-27 8/week @ 2024-05-04 1/week @ 2024-05-11 102/week @ 2024-05-18 24/week @ 2024-05-25 5/week @ 2024-06-01 62/week @ 2024-06-08 18/week @ 2024-06-15 181/week @ 2024-06-22 6/week @ 2024-06-29 32/week @ 2024-07-06 166/week @ 2024-07-13 31/week @ 2024-07-20 9/week @ 2024-07-27

每月238 次下载
polkadot-sdk 中使用

Apache-2.0

2MB
38K SLoC

事务暂停

允许通过调用过滤器动态、基于链状态地暂停和恢复特定外部的操作。

警告

尚未审计。请勿在生产环境中使用。

托盘API

有关此托盘公开的接口(包括其配置特性、可调用的、存储项、事件和错误)的更多信息,请参阅pallet模块。

概述

一个可由外部调用控制的动态调用过滤器。

暂停外部调用意味着外部调用在未解除暂停之前不能再次被调用。例外情况是使用dispatch_bypass_filter的调用,通常仅与根源一起使用。

主要功能

  • 应该永远不会被暂停的调用可以添加到白名单中。
  • 可以分别配置暂停和暂停的原点。
  • 使用调用字符串表示形式触发暂停。
  • 暂停可以针对单个外部调用或整个模块。
  • 暂停可以针对未来的外部调用或模块。

示例

调用过滤器配置

impl frame_system::Config for Runtime {
  // …
  type BaseCallFilter = InsideBoth<DefaultFilter, TxPause>;
  // …
}

暂停特定所有

解除暂停特定所有

暂停模块中的所有调用

低级/实现细节

使用成本

使用存储映射(PausedCalls)来存储当前暂停的调用。使用调用过滤器需要在每个外部调用上对该存储进行数据库读取。

依赖项

~17–32MB
~541K SLoC