`transaction build` queries the node twice
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 56/100
調査の方向性
Read cardano-cli/src/Cardano/CLI/EraBased/Transaction/Run.hs, especially runTransactionBuildCmd and runTxBuild at the linked locations. Trace how the query results feed balancing, treasury values, and the --calculate-plutus-script-cost branch. The issue is done when the command queries once with certificates and passes that result to runTxBuild, preserving the needed values across those paths.
索引モデルが issue の本文から書いたものです。
説明
transaction build runs queryStateForBalancedTx twice per invocation, each time over a new local state query connection:
runTransactionBuildCmdqueries without certificates.runTxBuildqueries again with certificates.
queryCurrentEra is also called twice, in runTransactionBuildCmd and in runTxBuild.
runTxBuild balances with the result of its own query only.
runTransactionBuildCmd uses the first result for two things:
- the current treasury value, when it is requested
- the UTxO, system start and era history, in the
--calculate-plutus-script-costbranch only
On a plain build --out-file without the treasury value, the first query's result is not used at all.
Effects:
- Every
buildopens two extra node connections and repeats the whole query set, including UTxO by TxIn and the stake pool set. - The two queries acquire the volatile tip separately, so the treasury value can come from a different ledger state than the UTxO and protocol parameters used for balancing.
Suggested fix: query once in runTransactionBuildCmd, with the certificates, and pass the result to runTxBuild.
- 主要言語
- Haskell
- スター
- 72
- フォーク
- 26
- 平均マージ
- 3日 27分
- マージ済み PR(30日)
- 20
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
IntersectMBO/cardano-cli のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
IntersectMBO/cardano-cli#1306 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
Show genesis hash mismatches in plain words対応中かも @palas が 2 日前に担当しました。 オープン
IntersectMBO/cardano-cli#1481 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 52/100
IntersectMBO/cardano-cli#1479 ·
メンテナーはふだん 1 日以内に返信
-
Clarify the origin and intended use of Plutus V2/V4 test fixtures対応中かも @Jimbo4350 が 11 日前に担当しました。 オープン
IntersectMBO/cardano-cli#1464 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
-
Share body construction and input reading between transaction and sub-transaction builders対応中かも @Jimbo4350 が 11 日前に担当しました。 オープンrefactor
IntersectMBO/cardano-cli#1463 · 担当者 1 名 ·
メンテナーはふだん 1 日以内に返信
IntersectMBO/cardano-cli の issue をすべて見る
似ている issue
-
MorphRule, DataizeRule and ContextualizeRule silently accept unknown YAML keys, unlike rewrite `Rule`対応中かも @renyamamoto2026-cmyk が 1 日前に担当しました。 オープンbug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
objectionary/phino#2107 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
tweag/tricorder#640 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信