问题标签 [parity-io]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
substrate - Substrate transaction per second performance
Hey guys I have a performance related question. I am running 2 aws instance (t2.2xlarge) with 30GB storage. I am running a v2.0 node (branched from master a few days ago) on each with the default setup and i am testing how many transactions per second i can process.
Sending 495 (just under the default 500) balance transfer transactions averages around 22 transactions per second. Is this expected?
I tried running the same test locally (Dell XPS with 1T storage and I7 processor) with 2 instances (both with node-template and node) and the highest average TPS i have seen is 35. Is there anything i can do to improve this?
Thanks
substrate - 在外部执行期间从 Substrate 运行时访问链 ID 和创世哈希
我正在使用 Substrate 的最新稳定版pre-v2.0-3e65111
,我想在处理外部数据时从 Substrate 运行时访问链 ID 或创世哈希(我正在接受签名的有效负载并试图确保有效负载针对正确的链)。是否可以访问它们?(我知道我可以用 polkadot-js 做到这一点)我看到了 traitCheckGenesis
但不知道如何使用它来生成哈希?(new
导致空向量)。
blockchain - 如何以某种方式运行 Substrate,以便立即验证交易以供开发人员使用?
为了开发目的,我如何在假验证模式下运行Substrate(有没有类似于--dev
在geth中立即挖掘交易的东西)?
substrate - 在链下工作人员中访问完整的标头和运行后摘要
我知道链下工作人员在 wasm 环境中运行,但是它是确定性 wasm 运行时的独立环境。链下工作者可以访问运行时状态(只读)。
关于运行后摘要,我相信基板会在块导入之前剥离这些?(并且之后被推回)..我想这是因为运行时在块执行期间无法知道后摘要。
综上所述,由于链下工作人员是块后执行,因此应该可以使用运行后摘要。链下工作人员如何访问它所引用块的完整标头和运行后摘要?它可以访问块哈希 -
fn offchain_worker(n: T::BlockNumber) { .. <frame_system::Module>::block_hash(n)
如果在执行期间在基板运行时尝试这样做,您将收到 0x0000000..(这是预期的)。
完整的标头和运行后摘要可用于外部索引或其他目的。我知道基板不能索引所有内容..我也不希望它。我只想访问引用的标头和运行后摘要。
substrate - 在 Substrate 中,`spec_version` 和 `authoring_version` 有什么区别?
每个 Substrate 运行时都有一个RuntimeVersion。此 RuntimeVersion 结构中的字段指示运行时的各个方面何时发生变化,并且每个字段都有其在这些文档中描述的语义。
我不确定它是什么authoring_version
意思,什么时候应该改变。文档中的描述对我来说并不完全清楚
如果可能,请提供以下升级示例:
- 两者
spec_version
都会authoring_version
改变 spec_version
会改变,但authoring_version
不会authoring_version
会改变,但spec_version
不会
rust-cargo - 建立承印物油墨合同
我尝试按照https://substrate.dev/substrate-contracts-workshop/#/0/setup中描述的教程创建一个底层智能合约。我已经在 Windows 10 操作系统上安装了所有依赖项。但是,该过程在完成 3 个步骤([3/5] 优化 wasm 文件)后失败,并显示以下错误消息。
“错误:访问被拒绝。(操作系统错误 5)”
请帮助我解决此错误。
谢谢
blockchain - 无法在节点和运行时之间转换参数“tx”:解码字段 CheckMortality.0 时出错
我尝试使用 polkadot-js libray 运行一个简单的应用程序,用于在 plasm 上的 Dusty 帐户之间传输令牌。运行代码片段的源代码和 package.json 可以在这个 git repo上找到
节点版本: v12.8.2
纱线版本: 1.22.5
堆栈跟踪:
trying connection to wss://rpc.dusty.plasmnet.io/ Connected to wss://rpc.dusty.plasmnet.io/ You are connected to chain Dusty using Plasm Node v1.6.1-cf15b11-x86_64-linux-gnu - wss://rpc.dusty.plasmnet.io/ got nonce Type { negative: 0, words: [ 0 ], length: 1, red: null, registry: TypeRegistry {} } 2021-02-05 21:00:27 RPC-CORE: submitExtrinsic(extrinsic: Extrinsic): Hash:: 1002: Verification Error: Execution: Could not convert parameter
tx between node and runtime: Error decoding field CheckMortality.0: RuntimeApi, Execution: Could not convert parameter
tx between node and runtime: Error decoding field CheckMortality.0 (node:13572) UnhandledPromiseRejectionWarning: Error: 1002: Verification Error: Execution: Could not convert parameter
tx between node and runtime: Error decoding field CheckMortality.0: RuntimeApi, Execution: Could not convert parameter
tx between node and runtime: Error decoding field CheckMortality.0 at RpcCoder._checkError (<mydir>\examples\plasm-simple-transfer\node_modules\@polkadot\api\node_modules\@polkadot\rpc-provider\coder\index.js:84:13) at RpcCoder.decodeResponse (<mydir>\examples\plasm-simple-transfer\node_modules\@polkadot\api\node_modules\@polkadot\rpc-provider\coder\index.js:47:10) at WsProvider.value (<mydir>\examples\plasm-simple-transfer\node_modules\@polkadot\api\node_modules\@polkadot\rpc-provider\ws\index.js:214:90) at W3CWebSocket.value [as onmessage] (<mydir>\examples\plasm-simple-transfer\node_modules\@polkadot\api\node_modules\@polkadot\rpc-provider\ws\index.js:194:153) at W3CWebSocket._dispatchEvent [as dispatchEvent] (<mydir>\examples\plasm-simple-transfer\node_modules\yaeti\lib\EventTarget.js:107:17) at W3CWebSocket.onMessage (<mydir>\examples\plasm-simple-transfer\node_modules\websocket\lib\W3CWebSocket.js:234:14) at WebSocketConnection.<anonymous> (<mydir>\examples\plasm-simple-transfer\node_modules\websocket\lib\W3CWebSocket.js:205:19) at WebSocketConnection.emit (events.js:315:20) at WebSocketConnection.processFrame (<mydir>\examples\plasm-simple-transfer\node_modules\websocket\lib\WebSocketConnection.js:554:26) at <mydir>\examples\plasm-simple-transfer\node_modules\websocket\lib\WebSocketConnection.js:323:40 (node:13572) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag
--unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1) (node:13572) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
此外,当我尝试进行清晰运行(删除 node_modules 并重新安装)时,我收到相同的消息,但字段 CheckMortality 被 CheckNonce 替换。由 plasm-types 库返回的字段可以在此文件中以 json 格式找到。
我试图通过浏览节点模板存储库来找出错误的类型,但我无法弄清楚。如何修复?
logging - 过滤底物日志
运行基板节点时,如何根据日志行中存在的单词或模式过滤日志行?
我试过运行:
但是,这仍然给了我输出的所有行,例如:
rust - 如何将编译为 WASM 的第 3 方共识托盘库集成到基板中
我在玩 Substrate,我想知道是否可以将我编译到 WASM(Web Assembly)的第 3 方共识库集成为基板中的托盘。我知道可以将已经编译为 WASM 二进制文件的智能合约集成到底层运行时中。我的问题是是否可以将已经编译到 WASM 的不同共识托盘集成,以及这种集成如何与 Node(基板节点)RPC 方法交互。提前致谢。
ethereum - 在 Parity 上使用旧随机数拒绝 tx
我观察到发送到 Parity 节点的事务没有处理,并且显示了错误消息“Rejected tx with old nonce”。计算 sendTransaction 调用的 nonce 值,使其成为下一个 nonce 值。该消息不适用于这种情况。
我们的 Parity 环境中有三个验证器节点。Parity 的版本是 2.5.13,它在 Ubuntu Server 18.04 上运行。
现象的重现性不好,随着时间的推移往往会得到解决。
有没有什么被认为是现象的原因?什么时候再次发生,我将如何调查原因?