From 71d38b3655d0ca75b15ea322afcc9e707df74695 Mon Sep 17 00:00:00 2001 From: Jay Geng Date: Thu, 19 Sep 2024 00:25:36 -0400 Subject: [PATCH 1/6] update contract cost params for V22 --- Cargo.lock | 41 +-- src/herder/Upgrades.cpp | 4 + src/ledger/NetworkConfig.cpp | 348 +++++++++++++++++++++++ src/ledger/NetworkConfig.h | 5 + src/protocol-curr/xdr | 2 +- src/rust/Cargo.toml | 6 +- src/rust/soroban/p22 | 2 +- src/rust/src/dep-trees/equal-trees.stamp | 0 src/rust/src/dep-trees/p22-expect.txt | 230 ++++++++++----- 9 files changed, 538 insertions(+), 100 deletions(-) create mode 100644 src/rust/src/dep-trees/equal-trees.stamp diff --git a/Cargo.lock b/Cargo.lock index 09e58a2423..503be8a970 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -26,12 +26,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" -[[package]] -name = "base32" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" - [[package]] name = "base64" version = "0.13.1" @@ -90,6 +84,12 @@ dependencies = [ "syn", ] +[[package]] +name = "data-encoding" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" + [[package]] name = "derive_arbitrary" version = "1.3.2" @@ -171,6 +171,15 @@ dependencies = [ "hashbrown", ] +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +dependencies = [ + "either", +] + [[package]] name = "itertools" version = "0.11.0" @@ -472,7 +481,7 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "soroban-env-common" version = "22.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a#5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +source = "git+https://github.com/stellar/rs-soroban-env?rev=0497816694bef2b103494c8c61b7c8a06a72c7d3#0497816694bef2b103494c8c61b7c8a06a72c7d3" dependencies = [ "crate-git-revision", "ethnum", @@ -486,9 +495,9 @@ dependencies = [ [[package]] name = "soroban-env-macros" version = "22.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a#5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +source = "git+https://github.com/stellar/rs-soroban-env?rev=0497816694bef2b103494c8c61b7c8a06a72c7d3#0497816694bef2b103494c8c61b7c8a06a72c7d3" dependencies = [ - "itertools", + "itertools 0.10.5", "proc-macro2", "quote", "serde", @@ -500,7 +509,7 @@ dependencies = [ [[package]] name = "soroban-synth-wasm" version = "22.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a#5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +source = "git+https://github.com/stellar/rs-soroban-env?rev=0497816694bef2b103494c8c61b7c8a06a72c7d3#0497816694bef2b103494c8c61b7c8a06a72c7d3" dependencies = [ "arbitrary", "soroban-env-common", @@ -513,7 +522,7 @@ dependencies = [ [[package]] name = "soroban-test-wasms" version = "22.0.0" -source = "git+https://github.com/stellar/rs-soroban-env?rev=5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a#5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +source = "git+https://github.com/stellar/rs-soroban-env?rev=0497816694bef2b103494c8c61b7c8a06a72c7d3#0497816694bef2b103494c8c61b7c8a06a72c7d3" [[package]] name = "static_assertions" @@ -527,7 +536,7 @@ version = "0.1.0" dependencies = [ "base64", "cxx", - "itertools", + "itertools 0.11.0", "log", "rand", "rustc-simple-version", @@ -538,19 +547,19 @@ dependencies = [ [[package]] name = "stellar-strkey" -version = "0.0.8" +version = "0.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12d2bf45e114117ea91d820a846fd1afbe3ba7d717988fee094ce8227a3bf8bd" +checksum = "5e3aa3ed00e70082cb43febc1c2afa5056b9bb3e348bbb43d0cd0aa88a611144" dependencies = [ - "base32", "crate-git-revision", + "data-encoding", "thiserror", ] [[package]] name = "stellar-xdr" version = "22.0.0" -source = "git+https://github.com/stellar/rs-stellar-xdr?rev=550743b50cd3ca5a63f03f9d7175b4cfdfd9c4ac#550743b50cd3ca5a63f03f9d7175b4cfdfd9c4ac" +source = "git+https://github.com/stellar/rs-stellar-xdr?rev=b5516843b6379e4e29520bf2ba156484f62edc46#b5516843b6379e4e29520bf2ba156484f62edc46" dependencies = [ "crate-git-revision", "escape-bytes", diff --git a/src/herder/Upgrades.cpp b/src/herder/Upgrades.cpp index 5641792dc5..12f7bb0737 100644 --- a/src/herder/Upgrades.cpp +++ b/src/herder/Upgrades.cpp @@ -1248,6 +1248,10 @@ Upgrades::applyVersionUpgrade(Application& app, AbstractLedgerTxn& ltx, { SorobanNetworkConfig::createCostTypesForV21(ltx, app); } + if (needUpgradeToVersion(ProtocolVersion::V_22, prevVersion, newVersion)) + { + SorobanNetworkConfig::createCostTypesForV22(ltx, app); + } } void diff --git a/src/ledger/NetworkConfig.cpp b/src/ledger/NetworkConfig.cpp index 3ca192152c..46ecd10e3b 100644 --- a/src/ledger/NetworkConfig.cpp +++ b/src/ledger/NetworkConfig.cpp @@ -433,6 +433,183 @@ updateCpuCostParamsEntryForV21(AbstractLedgerTxn& ltxRoot) ltx.commit(); } +void +updateCpuCostParamsEntryForV22(AbstractLedgerTxn& ltxRoot) +{ + LedgerTxn ltx(ltxRoot); + + LedgerKey key(CONFIG_SETTING); + key.configSetting().configSettingID = + ConfigSettingID::CONFIG_SETTING_CONTRACT_COST_PARAMS_CPU_INSTRUCTIONS; + + auto& params = ltx.load(key) + .current() + .data.configSetting() + .contractCostParamsCpuInsns(); + + auto const& vals = xdr::xdr_traits::enum_values(); + params.resize(static_cast(vals.size())); + + // While we loop over the full ContractCostType enum, we only set the + // entries that have either been updated, or newly created in p22 + for (auto val : vals) + { + switch (val) + { + // updating existing parameters changed in p22 + case VmInstantiation: + params[val] = + ContractCostParamEntry(ExtensionPoint{0}, 31271, 57504); + break; + case VmCachedInstantiation: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 40828, 680); + break; + case InvokeVmFunction: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 2149, 0); + break; + case ParseWasmInstructions: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 37421, 32); + break; + case ParseWasmFunctions: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 84156); + break; + case ParseWasmGlobals: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 163415); + break; + case ParseWasmTableEntries: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 29644); + break; + case ParseWasmTypes: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 893113); + break; + case ParseWasmDataSegments: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 184921); + break; + case ParseWasmElemSegments: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 312369); + break; + case ParseWasmImports: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 529255); + break; + case ParseWasmExports: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 361665); + break; + case ParseWasmDataSegmentBytes: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 14); + break; + case InstantiateWasmInstructions: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 43208, 0); + break; + case InstantiateWasmFunctions: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 8050); + break; + case InstantiateWasmGlobals: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 10647); + break; + case InstantiateWasmTableEntries: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 1933); + break; + case InstantiateWasmDataSegments: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 17164); + break; + case InstantiateWasmElemSegments: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 34261); + break; + case InstantiateWasmImports: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 746142); + break; + case InstantiateWasmExports: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 0, 296177); + break; + + // adding new cost types introduced in p22 + case Bls12381EncodeFp: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 661, 0); + break; + case Bls12381DecodeFp: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 985, 0); + break; + case Bls12381G1CheckPointOnCurve: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 1934, 0); + break; + case Bls12381G1CheckPointInSubgroup: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 730510, 0); + break; + case Bls12381G2CheckPointOnCurve: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 5921, 0); + break; + case Bls12381G2CheckPointInSubgroup: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 1057822, 0); + break; + case Bls12381G1ProjectiveToAffine: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 92642, 0); + break; + case Bls12381G2ProjectiveToAffine: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 100742, 0); + break; + case Bls12381G1Add: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 7689, 0); + break; + case Bls12381G1Mul: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 2458985, 0); + break; + case Bls12381G1Msm: + params[val] = + ContractCostParamEntry(ExtensionPoint{0}, 2426722, 96397671); + break; + case Bls12381MapFpToG1: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 1541554, 0); + break; + case Bls12381HashToG1: + params[val] = + ContractCostParamEntry(ExtensionPoint{0}, 3211191, 6713); + break; + case Bls12381G2Add: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 25207, 0); + break; + case Bls12381G2Mul: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 7873219, 0); + break; + case Bls12381G2Msm: + params[val] = + ContractCostParamEntry(ExtensionPoint{0}, 8035968, 309667335); + break; + case Bls12381MapFp2ToG2: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 2420202, 0); + break; + case Bls12381HashToG2: + params[val] = + ContractCostParamEntry(ExtensionPoint{0}, 7050564, 6797); + break; + case Bls12381Pairing: + params[val] = + ContractCostParamEntry(ExtensionPoint{0}, 10558948, 632860943); + break; + case Bls12381FrFromU256: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 1994, 0); + break; + case Bls12381FrToU256: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 1155, 0); + break; + case Bls12381FrAddSub: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 74, 0); + break; + case Bls12381FrMul: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 332, 0); + break; + case Bls12381FrPow: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 691, 74558); + break; + case Bls12381FrInv: + params[val] = ContractCostParamEntry(ExtensionPoint{0}, 35421, 0); + break; + default: + break; + } + } + ltx.commit(); +} + ConfigSettingEntry initialStateArchivalSettings(Config const& cfg) { @@ -681,6 +858,163 @@ updateMemCostParamsEntryForV21(AbstractLedgerTxn& ltxRoot) ltx.commit(); } +void +updateMemCostParamsEntryForV22(AbstractLedgerTxn& ltxRoot) +{ + LedgerTxn ltx(ltxRoot); + + LedgerKey key(CONFIG_SETTING); + key.configSetting().configSettingID = + ConfigSettingID::CONFIG_SETTING_CONTRACT_COST_PARAMS_MEMORY_BYTES; + + auto& params = ltx.load(key) + .current() + .data.configSetting() + .contractCostParamsMemBytes(); + + auto const& vals = xdr::xdr_traits::enum_values(); + params.resize(static_cast(vals.size())); + + for (auto val : vals) + { + switch (val) + { + // updating existing parameters changed in p22 + case VmCachedInstantiation: + params[val] = + ContractCostParamEntry{ExtensionPoint{0}, 69472, 1478}; + break; + case InvokeVmFunction: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 15, 0}; + break; + case ParseWasmInstructions: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 13980, 215}; + break; + case ParseWasmFunctions: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 23056}; + break; + case ParseWasmGlobals: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 11924}; + break; + case ParseWasmTableEntries: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 6121}; + break; + case ParseWasmTypes: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 49554}; + break; + case ParseWasmDataSegments: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 5525}; + break; + case ParseWasmElemSegments: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 47034}; + break; + case ParseWasmImports: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 101762}; + break; + case ParseWasmExports: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 35491}; + break; + case ParseWasmDataSegmentBytes: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 129}; + break; + case InstantiateWasmInstructions: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 70792, 0}; + break; + case InstantiateWasmFunctions: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 17749}; + break; + case InstantiateWasmImports: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 98578}; + break; + + // adding new cost types introduced in p22 + case Bls12381EncodeFp: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381DecodeFp: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G1CheckPointOnCurve: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G1CheckPointInSubgroup: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G2CheckPointOnCurve: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G2CheckPointInSubgroup: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G1ProjectiveToAffine: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G2ProjectiveToAffine: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G1Add: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G1Mul: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G1Msm: + params[val] = + ContractCostParamEntry{ExtensionPoint{0}, 109494, 354667}; + break; + case Bls12381MapFpToG1: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 5552, 0}; + break; + case Bls12381HashToG1: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 9424, 0}; + break; + case Bls12381G2Add: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G2Mul: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381G2Msm: + params[val] = + ContractCostParamEntry{ExtensionPoint{0}, 219654, 354667}; + break; + case Bls12381MapFp2ToG2: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 3344, 0}; + break; + case Bls12381HashToG2: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 6816, 0}; + break; + case Bls12381Pairing: + params[val] = + ContractCostParamEntry{ExtensionPoint{0}, 2204, 9340474}; + break; + case Bls12381FrFromU256: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381FrToU256: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 248, 0}; + break; + case Bls12381FrAddSub: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381FrMul: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + case Bls12381FrPow: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 128}; + break; + case Bls12381FrInv: + params[val] = ContractCostParamEntry{ExtensionPoint{0}, 0, 0}; + break; + + default: + break; + } + } + + ltx.commit(); +} + ConfigSettingEntry initialBucketListSizeWindow(Application& app) { @@ -904,6 +1238,15 @@ SorobanNetworkConfig::createCostTypesForV21(AbstractLedgerTxn& ltx, updateMemCostParamsEntryForV21(ltx); } +void +SorobanNetworkConfig::createCostTypesForV22(AbstractLedgerTxn& ltx, + Application& app) +{ + ZoneScoped; + updateCpuCostParamsEntryForV22(ltx); + updateMemCostParamsEntryForV22(ltx); +} + void SorobanNetworkConfig::initializeGenesisLedgerForTesting( uint32_t genesisLedgerProtocol, AbstractLedgerTxn& ltx, Application& app) @@ -924,6 +1267,11 @@ SorobanNetworkConfig::initializeGenesisLedgerForTesting( { SorobanNetworkConfig::createCostTypesForV21(ltx, app); } + + if (protocolVersionStartsFrom(genesisLedgerProtocol, ProtocolVersion::V_22)) + { + SorobanNetworkConfig::createCostTypesForV22(ltx, app); + } } void diff --git a/src/ledger/NetworkConfig.h b/src/ledger/NetworkConfig.h index 9be7a290ec..f5265bf916 100644 --- a/src/ledger/NetworkConfig.h +++ b/src/ledger/NetworkConfig.h @@ -216,6 +216,11 @@ class SorobanNetworkConfig // upgrade. static void createCostTypesForV21(AbstractLedgerTxn& ltx, Application& app); + // Creates the new cost types introduced in v22. + // This should happen once during the correspondent protocol version + // upgrade. + static void createCostTypesForV22(AbstractLedgerTxn& ltx, Application& app); + // Test-only function that initializes contract network configuration // bypassing the normal upgrade process (i.e. when genesis ledger starts not // at v1) diff --git a/src/protocol-curr/xdr b/src/protocol-curr/xdr index 4ec28d95dd..529d5176f2 160000 --- a/src/protocol-curr/xdr +++ b/src/protocol-curr/xdr @@ -1 +1 @@ -Subproject commit 4ec28d95dd84b109253e22b151314478d6f00522 +Subproject commit 529d5176f24c73eeccfa5eba481d4e89c19b1181 diff --git a/src/rust/Cargo.toml b/src/rust/Cargo.toml index ef8f61818a..b6b8ec2f73 100644 --- a/src/rust/Cargo.toml +++ b/src/rust/Cargo.toml @@ -78,7 +78,7 @@ tracy-client = { version = "=0.17.0", features = [ # version = "=22.0.0" # git = "https://github.com/stellar/rs-soroban-env" # package = "soroban-env-host" -# rev = "5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +# rev = "0497816694bef2b103494c8c61b7c8a06a72c7d3" # [dependencies.soroban-env-host-p21] # version = "=21.2.0" @@ -92,13 +92,13 @@ tracy-client = { version = "=0.17.0", features = [ [dependencies.soroban-test-wasms] version = "=22.0.0" git = "https://github.com/stellar/rs-soroban-env" -rev = "5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +rev = "0497816694bef2b103494c8c61b7c8a06a72c7d3" #path = "../../../rs-soroban-env/soroban-test-wasms" [dependencies.soroban-synth-wasm] version = "=22.0.0" git = "https://github.com/stellar/rs-soroban-env" -rev = "5ed156b7fb5dd3e46635aa0f818d5db33dfd6b6a" +rev = "0497816694bef2b103494c8c61b7c8a06a72c7d3" #path = "../../../rs-soroban-env/soroban-synth-wasm" [features] diff --git a/src/rust/soroban/p22 b/src/rust/soroban/p22 index b9018254ad..0497816694 160000 --- a/src/rust/soroban/p22 +++ b/src/rust/soroban/p22 @@ -1 +1 @@ -Subproject commit b9018254adfb6580c9ba699b4920cc6c22b595e7 +Subproject commit 0497816694bef2b103494c8c61b7c8a06a72c7d3 diff --git a/src/rust/src/dep-trees/equal-trees.stamp b/src/rust/src/dep-trees/equal-trees.stamp new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/rust/src/dep-trees/p22-expect.txt b/src/rust/src/dep-trees/p22-expect.txt index e0fe8d9f51..787b7a7e89 100644 --- a/src/rust/src/dep-trees/p22-expect.txt +++ b/src/rust/src/dep-trees/p22-expect.txt @@ -1,71 +1,159 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) +├── ark-bls12-381 v0.4.0 +│ ├── ark-ec v0.4.2 +│ │ ├── ark-ff v0.4.2 +│ │ │ ├── ark-ff-asm v0.4.2 (proc-macro) +│ │ │ │ ├── quote v1.0.33 +│ │ │ │ │ └── proc-macro2 v1.0.69 +│ │ │ │ │ └── unicode-ident v1.0.9 +│ │ │ │ └── syn v1.0.109 +│ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ └── unicode-ident v1.0.9 +│ │ │ ├── ark-ff-macros v0.4.2 (proc-macro) +│ │ │ │ ├── num-bigint v0.4.4 +│ │ │ │ │ ├── num-integer v0.1.45 +│ │ │ │ │ │ └── num-traits v0.2.17 +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ └── num-traits v0.2.17 (*) +│ │ │ │ │ [build-dependencies] +│ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ ├── num-traits v0.2.17 (*) +│ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ └── syn v1.0.109 (*) +│ │ │ ├── ark-serialize v0.4.2 +│ │ │ │ ├── ark-serialize-derive v0.4.2 (proc-macro) +│ │ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ │ └── syn v1.0.109 (*) +│ │ │ │ ├── ark-std v0.4.0 +│ │ │ │ │ ├── num-traits v0.2.17 +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── autocfg v1.1.0 +│ │ │ │ │ └── rand v0.8.5 +│ │ │ │ │ ├── libc v0.2.150 +│ │ │ │ │ ├── rand_chacha v0.3.1 +│ │ │ │ │ │ ├── ppv-lite86 v0.2.17 +│ │ │ │ │ │ └── rand_core v0.6.4 +│ │ │ │ │ │ └── getrandom v0.2.11 +│ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ ├── js-sys v0.3.64 +│ │ │ │ │ │ │ └── wasm-bindgen v0.2.87 +│ │ │ │ │ │ │ ├── cfg-if v1.0.0 +│ │ │ │ │ │ │ └── wasm-bindgen-macro v0.2.87 (proc-macro) +│ │ │ │ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ │ │ │ └── wasm-bindgen-macro-support v0.2.87 +│ │ │ │ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ │ │ │ ├── syn v2.0.39 +│ │ │ │ │ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ │ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ │ │ │ │ └── unicode-ident v1.0.9 +│ │ │ │ │ │ │ ├── wasm-bindgen-backend v0.2.87 +│ │ │ │ │ │ │ │ ├── bumpalo v3.13.0 +│ │ │ │ │ │ │ │ ├── log v0.4.19 +│ │ │ │ │ │ │ │ ├── once_cell v1.19.0 +│ │ │ │ │ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ │ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ │ │ │ │ ├── syn v2.0.39 (*) +│ │ │ │ │ │ │ │ └── wasm-bindgen-shared v0.2.87 +│ │ │ │ │ │ │ └── wasm-bindgen-shared v0.2.87 +│ │ │ │ │ │ ├── libc v0.2.150 +│ │ │ │ │ │ ├── wasi v0.11.0+wasi-snapshot-preview1 +│ │ │ │ │ │ └── wasm-bindgen v0.2.87 (*) +│ │ │ │ │ └── rand_core v0.6.4 (*) +│ │ │ │ ├── digest v0.10.7 +│ │ │ │ │ ├── block-buffer v0.10.4 +│ │ │ │ │ │ └── generic-array v0.14.7 +│ │ │ │ │ │ ├── typenum v1.16.0 +│ │ │ │ │ │ └── zeroize v1.6.0 +│ │ │ │ │ │ └── zeroize_derive v1.4.2 (proc-macro) +│ │ │ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ │ │ └── syn v2.0.39 (*) +│ │ │ │ │ │ [build-dependencies] +│ │ │ │ │ │ └── version_check v0.9.4 +│ │ │ │ │ ├── const-oid v0.9.2 +│ │ │ │ │ ├── crypto-common v0.1.6 +│ │ │ │ │ │ ├── generic-array v0.14.7 (*) +│ │ │ │ │ │ └── typenum v1.16.0 +│ │ │ │ │ └── subtle v2.5.0 +│ │ │ │ └── num-bigint v0.4.4 (*) +│ │ │ ├── ark-std v0.4.0 (*) +│ │ │ ├── derivative v2.2.0 (proc-macro) +│ │ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ │ ├── quote v1.0.33 (*) +│ │ │ │ └── syn v1.0.109 (*) +│ │ │ ├── digest v0.10.7 (*) +│ │ │ ├── itertools v0.10.5 +│ │ │ │ └── either v1.8.1 +│ │ │ ├── num-bigint v0.4.4 (*) +│ │ │ ├── num-traits v0.2.17 (*) +│ │ │ ├── paste v1.0.12 (proc-macro) +│ │ │ └── zeroize v1.6.0 (*) +│ │ │ [build-dependencies] +│ │ │ └── rustc_version v0.4.0 +│ │ │ └── semver v1.0.17 +│ │ ├── ark-poly v0.4.2 +│ │ │ ├── ark-ff v0.4.2 (*) +│ │ │ ├── ark-serialize v0.4.2 (*) +│ │ │ ├── ark-std v0.4.0 (*) +│ │ │ ├── derivative v2.2.0 (proc-macro) (*) +│ │ │ └── hashbrown v0.13.2 +│ │ │ └── ahash v0.8.11 +│ │ │ ├── cfg-if v1.0.0 +│ │ │ ├── once_cell v1.19.0 +│ │ │ └── zerocopy v0.7.35 +│ │ │ └── zerocopy-derive v0.7.35 (proc-macro) +│ │ │ ├── proc-macro2 v1.0.69 (*) +│ │ │ ├── quote v1.0.33 (*) +│ │ │ └── syn v2.0.39 (*) +│ │ │ [build-dependencies] +│ │ │ └── version_check v0.9.4 +│ │ ├── ark-serialize v0.4.2 (*) +│ │ ├── ark-std v0.4.0 (*) +│ │ ├── derivative v2.2.0 (proc-macro) (*) +│ │ ├── hashbrown v0.13.2 (*) +│ │ ├── itertools v0.10.5 (*) +│ │ ├── num-traits v0.2.17 (*) +│ │ └── zeroize v1.6.0 (*) +│ ├── ark-ff v0.4.2 (*) +│ ├── ark-serialize v0.4.2 (*) +│ └── ark-std v0.4.0 (*) +├── ark-ec v0.4.2 (*) +├── ark-ff v0.4.2 (*) +├── ark-serialize v0.4.2 (*) ├── curve25519-dalek v4.1.1 │ ├── cfg-if v1.0.0 │ ├── cpufeatures v0.2.8 │ │ └── libc v0.2.150 │ ├── curve25519-dalek-derive v0.1.0 (proc-macro) -│ │ ├── proc-macro2 v1.0.69 -│ │ │ └── unicode-ident v1.0.9 -│ │ ├── quote v1.0.33 -│ │ │ └── proc-macro2 v1.0.69 (*) -│ │ └── syn v2.0.39 -│ │ ├── proc-macro2 v1.0.69 (*) -│ │ ├── quote v1.0.33 (*) -│ │ └── unicode-ident v1.0.9 -│ ├── digest v0.10.7 -│ │ ├── block-buffer v0.10.4 -│ │ │ └── generic-array v0.14.7 -│ │ │ ├── typenum v1.16.0 -│ │ │ └── zeroize v1.6.0 -│ │ │ [build-dependencies] -│ │ │ └── version_check v0.9.4 -│ │ ├── const-oid v0.9.2 -│ │ ├── crypto-common v0.1.6 -│ │ │ ├── generic-array v0.14.7 (*) -│ │ │ └── typenum v1.16.0 -│ │ └── subtle v2.5.0 +│ │ ├── proc-macro2 v1.0.69 (*) +│ │ ├── quote v1.0.33 (*) +│ │ └── syn v2.0.39 (*) +│ ├── digest v0.10.7 (*) │ ├── fiat-crypto v0.2.5 │ ├── subtle v2.5.0 -│ └── zeroize v1.6.0 +│ └── zeroize v1.6.0 (*) │ [build-dependencies] │ ├── platforms v3.0.2 -│ └── rustc_version v0.4.0 -│ └── semver v1.0.17 +│ └── rustc_version v0.4.0 (*) ├── ecdsa v0.16.7 │ ├── der v0.7.6 │ │ ├── const-oid v0.9.2 -│ │ └── zeroize v1.6.0 +│ │ └── zeroize v1.6.0 (*) │ ├── digest v0.10.7 (*) │ ├── elliptic-curve v0.13.5 │ │ ├── base16ct v0.2.0 │ │ ├── crypto-bigint v0.5.2 │ │ │ ├── generic-array v0.14.7 (*) -│ │ │ ├── rand_core v0.6.4 -│ │ │ │ └── getrandom v0.2.11 -│ │ │ │ ├── cfg-if v1.0.0 -│ │ │ │ ├── js-sys v0.3.64 -│ │ │ │ │ └── wasm-bindgen v0.2.87 -│ │ │ │ │ ├── cfg-if v1.0.0 -│ │ │ │ │ └── wasm-bindgen-macro v0.2.87 (proc-macro) -│ │ │ │ │ ├── quote v1.0.33 (*) -│ │ │ │ │ └── wasm-bindgen-macro-support v0.2.87 -│ │ │ │ │ ├── proc-macro2 v1.0.69 (*) -│ │ │ │ │ ├── quote v1.0.33 (*) -│ │ │ │ │ ├── syn v2.0.39 (*) -│ │ │ │ │ ├── wasm-bindgen-backend v0.2.87 -│ │ │ │ │ │ ├── bumpalo v3.13.0 -│ │ │ │ │ │ ├── log v0.4.19 -│ │ │ │ │ │ ├── once_cell v1.19.0 -│ │ │ │ │ │ ├── proc-macro2 v1.0.69 (*) -│ │ │ │ │ │ ├── quote v1.0.33 (*) -│ │ │ │ │ │ ├── syn v2.0.39 (*) -│ │ │ │ │ │ └── wasm-bindgen-shared v0.2.87 -│ │ │ │ │ └── wasm-bindgen-shared v0.2.87 -│ │ │ │ ├── libc v0.2.150 -│ │ │ │ ├── wasi v0.11.0+wasi-snapshot-preview1 -│ │ │ │ └── wasm-bindgen v0.2.87 (*) +│ │ │ ├── rand_core v0.6.4 (*) │ │ │ ├── subtle v2.5.0 -│ │ │ └── zeroize v1.6.0 +│ │ │ └── zeroize v1.6.0 (*) │ │ ├── digest v0.10.7 (*) │ │ ├── ff v0.13.0 │ │ │ ├── rand_core v0.6.4 (*) @@ -81,9 +169,9 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ │ │ ├── der v0.7.6 (*) │ │ │ ├── generic-array v0.14.7 (*) │ │ │ ├── subtle v2.5.0 -│ │ │ └── zeroize v1.6.0 +│ │ │ └── zeroize v1.6.0 (*) │ │ ├── subtle v2.5.0 -│ │ └── zeroize v1.6.0 +│ │ └── zeroize v1.6.0 (*) │ ├── rfc6979 v0.4.0 │ │ ├── hmac v0.12.1 │ │ │ └── digest v0.10.7 (*) @@ -100,7 +188,7 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ │ ├── cfg-if v1.0.0 │ │ ├── cpufeatures v0.2.8 (*) │ │ └── digest v0.10.7 (*) -│ └── zeroize v1.6.0 +│ └── zeroize v1.6.0 (*) ├── elliptic-curve v0.13.5 (*) ├── generic-array v0.14.7 (*) ├── getrandom v0.2.11 (*) @@ -116,9 +204,7 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ ├── quote v1.0.33 (*) │ └── syn v2.0.39 (*) ├── num-integer v0.1.45 -│ └── num-traits v0.2.17 -│ [build-dependencies] -│ └── autocfg v1.1.0 +│ └── num-traits v0.2.17 (*) │ [build-dependencies] │ └── autocfg v1.1.0 ├── num-traits v0.2.17 (*) @@ -128,12 +214,7 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ ├── primeorder v0.13.3 │ │ └── elliptic-curve v0.13.5 (*) │ └── sha2 v0.10.8 (*) -├── rand v0.8.5 -│ ├── libc v0.2.150 -│ ├── rand_chacha v0.3.1 -│ │ ├── ppv-lite86 v0.2.17 -│ │ └── rand_core v0.6.4 (*) -│ └── rand_core v0.6.4 (*) +├── rand v0.8.5 (*) ├── rand_chacha v0.3.1 (*) ├── sec1 v0.7.2 (*) ├── sha2 v0.10.8 (*) @@ -142,7 +223,7 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ └── keccak v0.1.4 │ └── cpufeatures v0.2.8 (*) ├── soroban-builtin-sdk-macros v22.0.0 (proc-macro) (src/rust/soroban/p22/soroban-builtin-sdk-macros) -│ ├── itertools v0.11.0 +│ ├── itertools v0.10.5 │ │ └── either v1.8.1 │ ├── proc-macro2 v1.0.69 (*) │ ├── quote v1.0.33 (*) @@ -152,7 +233,7 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ ├── num-derive v0.4.1 (proc-macro) (*) │ ├── num-traits v0.2.17 (*) │ ├── soroban-env-macros v22.0.0 (proc-macro) (src/rust/soroban/p22/soroban-env-macros) -│ │ ├── itertools v0.11.0 (*) +│ │ ├── itertools v0.10.5 (*) │ │ ├── proc-macro2 v1.0.69 (*) │ │ ├── quote v1.0.33 (*) │ │ ├── serde v1.0.192 @@ -164,11 +245,11 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ │ │ ├── itoa v1.0.6 │ │ │ ├── ryu v1.0.13 │ │ │ └── serde v1.0.192 (*) -│ │ ├── stellar-xdr v22.0.0 (https://github.com/stellar/rs-stellar-xdr?rev=39d7dbb0c12bd422ee43a6e2e3277789da4eaac8#39d7dbb0) +│ │ ├── stellar-xdr v22.0.0 (https://github.com/stellar/rs-stellar-xdr?rev=b5516843b6379e4e29520bf2ba156484f62edc46#b5516843) │ │ │ ├── escape-bytes v0.1.1 │ │ │ ├── hex v0.4.3 -│ │ │ └── stellar-strkey v0.0.8 -│ │ │ ├── base32 v0.4.0 +│ │ │ └── stellar-strkey v0.0.9 +│ │ │ ├── data-encoding v2.6.0 │ │ │ └── thiserror v1.0.40 │ │ │ └── thiserror-impl v1.0.40 (proc-macro) │ │ │ ├── proc-macro2 v1.0.69 (*) @@ -190,16 +271,7 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ │ ├── smallvec v1.13.2 │ │ ├── spin v0.9.8 │ │ ├── wasmi_collections v0.36.0-soroban.22.0.0 (https://github.com/stellar/wasmi?rev=122a74a7c491929e5ac9de876099154ef7c06d06#122a74a7) -│ │ │ ├── ahash v0.8.11 -│ │ │ │ ├── cfg-if v1.0.0 -│ │ │ │ ├── once_cell v1.19.0 -│ │ │ │ └── zerocopy v0.7.35 -│ │ │ │ └── zerocopy-derive v0.7.35 (proc-macro) -│ │ │ │ ├── proc-macro2 v1.0.69 (*) -│ │ │ │ ├── quote v1.0.33 (*) -│ │ │ │ └── syn v2.0.39 (*) -│ │ │ │ [build-dependencies] -│ │ │ │ └── version_check v0.9.4 +│ │ │ ├── ahash v0.8.11 (*) │ │ │ ├── hashbrown v0.14.1 │ │ │ │ └── ahash v0.8.11 (*) │ │ │ └── string-interner v0.17.0 @@ -215,11 +287,11 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ │ └── wasmparser-nostd v0.100.2 │ │ └── indexmap-nostd v0.4.0 │ ├── static_assertions v1.1.0 -│ ├── stellar-xdr v22.0.0 (https://github.com/stellar/rs-stellar-xdr?rev=39d7dbb0c12bd422ee43a6e2e3277789da4eaac8#39d7dbb0) +│ ├── stellar-xdr v22.0.0 (https://github.com/stellar/rs-stellar-xdr?rev=b5516843b6379e4e29520bf2ba156484f62edc46#b5516843) │ │ ├── base64 v0.13.1 │ │ ├── escape-bytes v0.1.1 │ │ ├── hex v0.4.3 -│ │ └── stellar-strkey v0.0.8 (*) +│ │ └── stellar-strkey v0.0.9 (*) │ │ [build-dependencies] │ │ └── crate-git-revision v0.0.6 (*) │ └── wasmparser v0.116.1 @@ -231,5 +303,5 @@ soroban-env-host v22.0.0 (src/rust/soroban/p22/soroban-env-host) │ └── crate-git-revision v0.0.6 (*) ├── soroban-wasmi v0.36.0-soroban.22.0.0 (https://github.com/stellar/wasmi?rev=122a74a7c491929e5ac9de876099154ef7c06d06#122a74a7) (*) ├── static_assertions v1.1.0 -├── stellar-strkey v0.0.8 (*) +├── stellar-strkey v0.0.9 (*) └── wasmparser v0.116.1 (*) From f483558c48e52dd541db1de622d4b3c8adb888c2 Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Thu, 19 Sep 2024 17:50:25 -0700 Subject: [PATCH 2/6] Downgrade itertools to get rid of duplicate --- Cargo.lock | 13 ++----------- src/rust/Cargo.toml | 2 +- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 503be8a970..e948c5074c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -180,15 +180,6 @@ dependencies = [ "either", ] -[[package]] -name = "itertools" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" -dependencies = [ - "either", -] - [[package]] name = "itoa" version = "1.0.6" @@ -497,7 +488,7 @@ name = "soroban-env-macros" version = "22.0.0" source = "git+https://github.com/stellar/rs-soroban-env?rev=0497816694bef2b103494c8c61b7c8a06a72c7d3#0497816694bef2b103494c8c61b7c8a06a72c7d3" dependencies = [ - "itertools 0.10.5", + "itertools", "proc-macro2", "quote", "serde", @@ -536,7 +527,7 @@ version = "0.1.0" dependencies = [ "base64", "cxx", - "itertools 0.11.0", + "itertools", "log", "rand", "rustc-simple-version", diff --git a/src/rust/Cargo.toml b/src/rust/Cargo.toml index b6b8ec2f73..c96cf57e8e 100644 --- a/src/rust/Cargo.toml +++ b/src/rust/Cargo.toml @@ -18,7 +18,7 @@ rustc-simple-version = "=0.1.0" # will complain if it does not match) rand = "=0.8.5" -itertools = "=0.11.0" +itertools = "=0.10.5" # NB: tracy is quite particular about version compatibility. There must only be # one _implementation_ of the C++ tracy symbols in the final binary (brought in From 91d18c2491b52434264e72d40a37b48452d8b421 Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Thu, 19 Sep 2024 17:58:44 -0700 Subject: [PATCH 3/6] bump test lcm --- ...ger-close-meta-v1-protocol-22-soroban.json | 518 +++++------ .../ledger-close-meta-v1-protocol-22.json | 820 +++++++++--------- 2 files changed, 669 insertions(+), 669 deletions(-) diff --git a/src/testdata/ledger-close-meta-v1-protocol-22-soroban.json b/src/testdata/ledger-close-meta-v1-protocol-22-soroban.json index 1233e1c37e..724a1fb4b8 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-22-soroban.json +++ b/src/testdata/ledger-close-meta-v1-protocol-22-soroban.json @@ -6,24 +6,24 @@ "v": 0 }, "ledgerHeader": { - "hash": "f4aaf081dc552d6b18652d6adc6a0fb3799fd313386153b27dec192a96efd801", + "hash": "823cfdd8857bce214b9d00f8c58fe586318867c01ae4b2ec2fe64459de4f2e00", "header": { "ledgerVersion": 22, - "previousLedgerHash": "f991b748101b66b95dcc062ff57912e88313c0e8c7d9dc6f8c880e71278c2105", + "previousLedgerHash": "d10889ce521eefaa0d52b01e6bdd874bf9b642a196e0ec848902c6ecdc64ab29", "scpValue": { - "txSetHash": "253132a66d3c6e8cc4d1d4e4c41e06e7a14a296411e9c3fad0126a8f653f3151", + "txSetHash": "a54305ab82979a63eb45c8f5774514d75ce47f4838a5c661cf36a299807d11f3", "closeTime": 1451692800, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "d319ecf8295ca3925e622ad2c522080f3b56dffbe64cfbaec1c02052ba4d8860675600368b784f02078274d771a711d69f18b7241daf2f7887d5d4d7307f3f0c" + "signature": "38827a5a4922ae983f698bdc5b3c6cade71a620335530170af1cac6ab53f4cca6f2aece0b6ea64c413b9ba88ded7e827cbc60bddac74760fde5d52376a829e0f" } } }, - "txSetResultHash": "65b6fe91abfe43ed98fa2163f08fdf3f2f3231101bba05102521186c25a1cc4b", - "bucketListHash": "3a21e9adafc544ac082678bbef52c5ba56b576a47e3204fab5c6cfea05777701", + "txSetResultHash": "c1f2e605905ad744b9dc6ac2cf506d00f08799f7a55f55e5bc0316ed1391773a", + "bucketListHash": "2497184ac85be1638a6275d9f0483c8d3dfc4ee988b0cf4dbedad8707ae6a8ec", "ledgerSeq": 28, "totalCoins": 1000000000000000000, "feePool": 804520, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "f991b748101b66b95dcc062ff57912e88313c0e8c7d9dc6f8c880e71278c2105", + "previousLedgerHash": "d10889ce521eefaa0d52b01e6bdd874bf9b642a196e0ec848902c6ecdc64ab29", "phases": [ { "v": 0, @@ -503,18 +503,19 @@ "txProcessing": [ { "result": { - "transactionHash": "62d28c373389d447341e9d75bc84e2c91437169a2a70d3606c8b3aa7d198ef5c", + "transactionHash": "e310227a8c0d8d1f78632e65ebca281cd60d8619c9afc64491bcce98e7cd7ee3", "result": { - "feeCharged": 42954, + "feeCharged": 106775, "result": { - "code": "txFAILED", + "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { "type": "INVOKE_HOST_FUNCTION", "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_RESOURCE_LIMIT_EXCEEDED" + "code": "INVOKE_HOST_FUNCTION_SUCCESS", + "success": "cbbc48750debb8535093b3deaf88ac7f4cff87425576a58de2bac754acdb4616" } } } @@ -529,13 +530,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 12, + "lastModifiedLedgerSeq": 10, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 400000000, - "seqNum": 51539607552, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -559,9 +560,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607552, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -593,9 +594,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607552, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -619,9 +620,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607553, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -663,7 +664,55 @@ } } ], - "operations": [], + "operations": [ + { + "changes": [ + { + "type": "LEDGER_ENTRY_CREATED", + "created": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "CONTRACT_DATA", + "contractData": { + "ext": { + "v": 0 + }, + "contract": "CAA3QKIP2SNVXUJTB4HKOGF55JTSSMQGED3FZYNHMNSXYV3DRRMAWA3Y", + "key": { + "type": "SCV_SYMBOL", + "sym": "key" + }, + "durability": "PERSISTENT", + "val": { + "type": "SCV_U64", + "u64": 42 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_CREATED", + "created": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", + "liveUntilLedgerSeq": 47 + } + }, + "ext": { + "v": 0 + } + } + } + ] + } + ], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -672,9 +721,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607553, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -722,9 +771,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 399957046, - "seqNum": 51539607553, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399893225, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -772,8 +821,7 @@ }, "events": [], "returnValue": { - "type": "SCV_BOOL", - "b": "FALSE" + "type": "SCV_VOID" }, "diagnosticEvents": [] } @@ -782,18 +830,18 @@ }, { "result": { - "transactionHash": "bb0a6b13caea6b015555dfd332aca1099e8654896bf7d1bcce8432e833a2572a", + "transactionHash": "364ec41dce0a678476ea3ebfc5caa28165ef3bf0976071d858b1c4044f187d25", "result": { - "feeCharged": 61612, + "feeCharged": 60559, "result": { - "code": "txFAILED", + "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_TRAPPED" + "type": "EXTEND_FOOTPRINT_TTL", + "extendFootprintTTLResult": { + "code": "EXTEND_FOOTPRINT_TTL_SUCCESS" } } } @@ -808,13 +856,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 11, + "lastModifiedLedgerSeq": 9, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 400000000, - "seqNum": 47244640256, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -838,9 +886,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640256, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -872,9 +920,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640256, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -898,9 +946,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640257, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -942,7 +990,76 @@ } } ], - "operations": [], + "operations": [ + { + "changes": [ + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 6, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", + "liveUntilLedgerSeq": 10006 + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", + "liveUntilLedgerSeq": 10028 + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 6, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", + "liveUntilLedgerSeq": 10006 + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", + "liveUntilLedgerSeq": 10028 + } + }, + "ext": { + "v": 0 + } + } + } + ] + } + ], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -951,9 +1068,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640257, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1001,9 +1118,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399938388, - "seqNum": 47244640257, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399939441, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1061,19 +1178,18 @@ }, { "result": { - "transactionHash": "e310227a8c0d8d1f78632e65ebca281cd60d8619c9afc64491bcce98e7cd7ee3", + "transactionHash": "ee68d27257fa137933de22b3fdfbc4a736ec01af29a9e25e5b807252b1a1ca0a", "result": { - "feeCharged": 106775, + "feeCharged": 51547, "result": { "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_SUCCESS", - "success": "cbbc48750debb8535093b3deaf88ac7f4cff87425576a58de2bac754acdb4616" + "type": "RESTORE_FOOTPRINT", + "restoreFootprintResult": { + "code": "RESTORE_FOOTPRINT_SUCCESS" } } } @@ -1088,13 +1204,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 10, + "lastModifiedLedgerSeq": 8, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 400000000, - "seqNum": 42949672960, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1118,9 +1234,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672960, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1152,9 +1268,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672960, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1178,9 +1294,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672961, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1226,25 +1342,14 @@ { "changes": [ { - "type": "LEDGER_ENTRY_CREATED", - "created": { - "lastModifiedLedgerSeq": 28, + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 7, "data": { - "type": "CONTRACT_DATA", - "contractData": { - "ext": { - "v": 0 - }, - "contract": "CAA3QKIP2SNVXUJTB4HKOGF55JTSSMQGED3FZYNHMNSXYV3DRRMAWA3Y", - "key": { - "type": "SCV_SYMBOL", - "sym": "key" - }, - "durability": "PERSISTENT", - "val": { - "type": "SCV_U64", - "u64": 42 - } + "type": "TTL", + "ttl": { + "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", + "liveUntilLedgerSeq": 26 } }, "ext": { @@ -1253,13 +1358,13 @@ } }, { - "type": "LEDGER_ENTRY_CREATED", - "created": { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { - "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", + "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", "liveUntilLedgerSeq": 47 } }, @@ -1279,9 +1384,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672961, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1329,9 +1434,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399893225, - "seqNum": 42949672961, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 399948453, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1379,7 +1484,8 @@ }, "events": [], "returnValue": { - "type": "SCV_VOID" + "type": "SCV_BOOL", + "b": "FALSE" }, "diagnosticEvents": [] } @@ -1388,18 +1494,18 @@ }, { "result": { - "transactionHash": "364ec41dce0a678476ea3ebfc5caa28165ef3bf0976071d858b1c4044f187d25", + "transactionHash": "62d28c373389d447341e9d75bc84e2c91437169a2a70d3606c8b3aa7d198ef5c", "result": { - "feeCharged": 60559, + "feeCharged": 42954, "result": { - "code": "txSUCCESS", + "code": "txFAILED", "results": [ { "code": "opINNER", "tr": { - "type": "EXTEND_FOOTPRINT_TTL", - "extendFootprintTTLResult": { - "code": "EXTEND_FOOTPRINT_TTL_SUCCESS" + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionResult": { + "code": "INVOKE_HOST_FUNCTION_RESOURCE_LIMIT_EXCEEDED" } } } @@ -1414,13 +1520,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 9, + "lastModifiedLedgerSeq": 12, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 400000000, - "seqNum": 38654705664, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1444,9 +1550,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705664, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1478,9 +1584,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705664, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1504,9 +1610,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705665, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1548,76 +1654,7 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10006 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 28, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10028 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10006 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 28, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10028 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -1626,9 +1663,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705665, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1676,9 +1713,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399939441, - "seqNum": 38654705665, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 399957046, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1736,18 +1773,18 @@ }, { "result": { - "transactionHash": "ee68d27257fa137933de22b3fdfbc4a736ec01af29a9e25e5b807252b1a1ca0a", + "transactionHash": "bb0a6b13caea6b015555dfd332aca1099e8654896bf7d1bcce8432e833a2572a", "result": { - "feeCharged": 51547, + "feeCharged": 61612, "result": { - "code": "txSUCCESS", + "code": "txFAILED", "results": [ { "code": "opINNER", "tr": { - "type": "RESTORE_FOOTPRINT", - "restoreFootprintResult": { - "code": "RESTORE_FOOTPRINT_SUCCESS" + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionResult": { + "code": "INVOKE_HOST_FUNCTION_TRAPPED" } } } @@ -1762,13 +1799,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 8, + "lastModifiedLedgerSeq": 11, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "balance": 400000000, - "seqNum": 34359738368, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1792,9 +1829,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1826,9 +1863,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1852,9 +1889,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1896,44 +1933,7 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 7, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 26 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 28, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 47 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -1942,9 +1942,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1992,9 +1992,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399948453, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399938388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, diff --git a/src/testdata/ledger-close-meta-v1-protocol-22.json b/src/testdata/ledger-close-meta-v1-protocol-22.json index f1f353eab2..d4d51c0c3d 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-22.json +++ b/src/testdata/ledger-close-meta-v1-protocol-22.json @@ -6,24 +6,24 @@ "v": 0 }, "ledgerHeader": { - "hash": "4280273e1baaccc5108878557eb32357d7280f7fc3bfdbf52ad964f8a95e5b8a", + "hash": "32b8163e121d55df3aa7d266de0b2a0a277027f37a975390bd380937df25aefc", "header": { "ledgerVersion": 22, - "previousLedgerHash": "cd6ed26fbffe9fbb86b693ba65a5cdb75fae5c5d8d24f001c75e1eb5085d39a7", + "previousLedgerHash": "bb89ea8f08f1ed49aacbd38dc7463f48fa17f878f9b68b14127b841ff5208f5d", "scpValue": { - "txSetHash": "fac18499de28ce73c25821686b877b340ee46cbae49227362889100a4a1c12dd", + "txSetHash": "5852fe84849a3a2d0b371347638bae15881f1c33f36b33688b2e62d695e0aefa", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "b6db1da06113182245ac0473241c6e09bf5f6988b6bd633192881b5012880e8b1a22627146d09aac007cb1e8305ddaf3f08f34281478e86f723d994b6fddef02" + "signature": "ff5da6db3ae90ae3325d7d01df4c243ca9e51d6c083189aac3223db7f7a1c2f618a195b01d18795066f86b87970a929129cacb49a5cf2d62dcd6a9a7313ee50c" } } }, - "txSetResultHash": "f66233c106977a4cc148e019411ff6ddfaf76c337d004ed9a304a70407b161d0", - "bucketListHash": "bff00492fc3c18ee9b621c755a9c805998a5e5efdab4fde06ecabfb43f5ea7fc", + "txSetResultHash": "249b974bacf8b5c4a8f0b5598194c1b9eca64af0b5c1506daa871c1533b6baac", + "bucketListHash": "13cb0fbc89ad6382f1af7871671ebccb5397a21ef4d061428fe86473f2abbdee", "ledgerSeq": 7, "totalCoins": 1000000000000000000, "feePool": 800, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "cd6ed26fbffe9fbb86b693ba65a5cdb75fae5c5d8d24f001c75e1eb5085d39a7", + "previousLedgerHash": "bb89ea8f08f1ed49aacbd38dc7463f48fa17f878f9b68b14127b841ff5208f5d", "phases": [ { "v": 0, @@ -185,43 +185,22 @@ "txProcessing": [ { "result": { - "transactionHash": "324d0628e2a215d367f181f0e3aacbaa26fa638e676e73fb9ad26a360314a7b7", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 300, + "feeCharged": 100, "result": { - "code": "txFEE_BUMP_INNER_SUCCESS", - "innerResultPair": { - "transactionHash": "b28c171f9658320b5ce8d50e4e1a36b74afbb2a92eec7df92a8981067131b025", - "result": { - "feeCharged": 200, - "result": { - "code": "txSUCCESS", - "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - } - ] - }, - "ext": { - "v": 0 + "code": "txSUCCESS", + "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } } } - } + ] }, "ext": { "v": 0 @@ -232,13 +211,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 4, + "lastModifiedLedgerSeq": 5, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 400000000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -246,7 +225,31 @@ "thresholds": "01000000", "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 5, + "seqTime": 0 + } + } + } + } + } } } }, @@ -262,9 +265,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -272,7 +275,31 @@ "thresholds": "01000000", "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 5, + "seqTime": 0 + } + } + } + } + } } } }, @@ -296,61 +323,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 17179869184, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 7, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 17179869184, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 21474836480, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -358,7 +333,31 @@ "thresholds": "01000000", "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 5, + "seqTime": 0 + } + } + } + } + } } } }, @@ -374,9 +373,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 21474836481, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -426,18 +425,43 @@ "state": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 12884901889, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 6, + "seqTime": 0 + } + } + } + } + } } } }, @@ -451,18 +475,43 @@ "updated": { "lastModifiedLedgerSeq": 7, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 12884901889, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 6, + "seqTime": 0 + } + } + } + } + } } } }, @@ -470,28 +519,49 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 7, "data": { - "type": "TRUSTLINE", - "trustLine": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "type": "ACCOUNT", + "account": { + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 7, + "seqTime": 0 + } + } + } + } + } } } }, @@ -505,18 +575,43 @@ "updated": { "lastModifiedLedgerSeq": 7, "data": { - "type": "TRUSTLINE", - "trustLine": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 100, - "limit": 100, - "flags": 1, + "type": "ACCOUNT", + "account": { + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999988600, + "seqNum": 4, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { - "v": 0 + "v": 1, + "v1": { + "liabilities": { + "buying": 0, + "selling": 0 + }, + "ext": { + "v": 2, + "v2": { + "numSponsored": 0, + "numSponsoring": 0, + "signerSponsoringIDs": [], + "ext": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "seqLedger": 7, + "seqTime": 0 + } + } + } + } + } } } }, @@ -535,22 +630,43 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "324d0628e2a215d367f181f0e3aacbaa26fa638e676e73fb9ad26a360314a7b7", "result": { - "feeCharged": 100, + "feeCharged": 300, "result": { - "code": "txSUCCESS", - "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } + "code": "txFEE_BUMP_INNER_SUCCESS", + "innerResultPair": { + "transactionHash": "b28c171f9658320b5ce8d50e4e1a36b74afbb2a92eec7df92a8981067131b025", + "result": { + "feeCharged": 200, + "result": { + "code": "txSUCCESS", + "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + } + ] + }, + "ext": { + "v": 0 } } - ] + } }, "ext": { "v": 0 @@ -561,13 +677,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "lastModifiedLedgerSeq": 4, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 400000000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -575,31 +691,7 @@ "thresholds": "01000000", "signers": [], "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, - "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 5, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -615,9 +707,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -625,57 +717,85 @@ "thresholds": "01000000", "signers": [], "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, + "v": 0 + } + } + }, + "ext": { + "v": 0 + } + } + } + ], + "txApplyProcessing": { + "v": 3, + "v3": { + "ext": { + "v": 0 + }, + "txChangesBefore": [ + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 7, + "data": { + "type": "ACCOUNT", + "account": { + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 5, - "seqTime": 0 - } - } - } + "v": 0 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 7, + "data": { + "type": "ACCOUNT", + "account": { + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], + "ext": { + "v": 0 } } + }, + "ext": { + "v": 0 } } }, - "ext": { - "v": 0 - } - } - } - ], - "txApplyProcessing": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "txChangesBefore": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 7, + "lastModifiedLedgerSeq": 5, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 21474836480, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -683,31 +803,7 @@ "thresholds": "01000000", "signers": [], "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, - "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 5, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -723,9 +819,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 21474836481, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -775,43 +871,18 @@ "state": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 12884901889, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, - "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 6, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -825,43 +896,18 @@ "updated": { "lastModifiedLedgerSeq": 7, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 12884901889, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, - "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 6, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -869,49 +915,28 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 7, "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "type": "TRUSTLINE", + "trustLine": { + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, - "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 7, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -925,43 +950,18 @@ "updated": { "lastModifiedLedgerSeq": 7, "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999988600, - "seqNum": 4, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "type": "TRUSTLINE", + "trustLine": { + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 100, + "limit": 100, + "flags": 1, "ext": { - "v": 1, - "v1": { - "liabilities": { - "buying": 0, - "selling": 0 - }, - "ext": { - "v": 2, - "v2": { - "numSponsored": 0, - "numSponsoring": 0, - "signerSponsoringIDs": [], - "ext": { - "v": 3, - "v3": { - "ext": { - "v": 0 - }, - "seqLedger": 7, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -981,7 +981,7 @@ ], "upgradesProcessing": [], "scpInfo": [], - "totalByteSizeOfBucketList": 788, + "totalByteSizeOfBucketList": 1021, "evictedTemporaryLedgerKeys": [], "evictedPersistentLedgerEntries": [] } From 14e28d799e92b3054c36fb985c093c177af69c81 Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Thu, 19 Sep 2024 18:12:04 -0700 Subject: [PATCH 4/6] bump v23 xdr and test lcm --- src/protocol-next/xdr | 2 +- ...ger-close-meta-v1-protocol-23-soroban.json | 518 +++++++++--------- .../ledger-close-meta-v1-protocol-23.json | 14 +- 3 files changed, 267 insertions(+), 267 deletions(-) diff --git a/src/protocol-next/xdr b/src/protocol-next/xdr index 86b4ff573c..8c88608d0a 160000 --- a/src/protocol-next/xdr +++ b/src/protocol-next/xdr @@ -1 +1 @@ -Subproject commit 86b4ff573c3e9a475f9280b97645cc75e2c75b6e +Subproject commit 8c88608d0a20b01873056a5ec13be245e1f2aa27 diff --git a/src/testdata/ledger-close-meta-v1-protocol-23-soroban.json b/src/testdata/ledger-close-meta-v1-protocol-23-soroban.json index ef5f17ab3a..6e5f068600 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-23-soroban.json +++ b/src/testdata/ledger-close-meta-v1-protocol-23-soroban.json @@ -6,24 +6,24 @@ "v": 0 }, "ledgerHeader": { - "hash": "895a8b6e4301a12dd62cf5f5f06f5522088c1e306de52f689477b9f90201498a", + "hash": "d6fa0b94f6fb862344f8566667a07567ed8916a886c2faea03f4e688769d3ac9", "header": { "ledgerVersion": 23, - "previousLedgerHash": "87531f1f5ba76cc7a46d57138199eb36c68c434cc21c6a6e62c683a9226a10c6", + "previousLedgerHash": "95139917f8403ac97ac9673f3bb6f6d9d8329e55f860ffdcf4c2a6b526a9dccd", "scpValue": { - "txSetHash": "14a00fcb36e46a8ce4572b33bd1bd6d5450593d18d8ea54ac93243f856be7453", + "txSetHash": "ac596842ef2ec3a0a2e2caf6ef3d319cf83c5de01390f8f6e45c0ca5d5bdd3c6", "closeTime": 1451692800, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "7f4170c829dc0bd3f3e02b20cc909d50a7f4221c139e69f65a7adbcff12dbec7eda79f922350cf5ffcad18a152bf0c13eccc30cae7ff34774737f7bce0f66f0b" + "signature": "c7f0647c3f51ae8807e7195b503dd0d1491d86eaddecfff946bf7de5d9000ed57dc7ba28fbb4115d727d3b5ecaf83343b06ad0485b1cd7c793433cc3eeb4cf09" } } }, - "txSetResultHash": "65b6fe91abfe43ed98fa2163f08fdf3f2f3231101bba05102521186c25a1cc4b", - "bucketListHash": "a6913555ab7183fdcf708b72ec76fe85b1729dca668dfe15cde29af4525abe30", + "txSetResultHash": "5edc137152a404b1ea08e31b691098b8b8ab53a30041af25868849694535ecf5", + "bucketListHash": "6410bf4870203c1e71ec88462a655597e68bcdeb970cb167d73ca29be1903994", "ledgerSeq": 28, "totalCoins": 1000000000000000000, "feePool": 804520, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "87531f1f5ba76cc7a46d57138199eb36c68c434cc21c6a6e62c683a9226a10c6", + "previousLedgerHash": "95139917f8403ac97ac9673f3bb6f6d9d8329e55f860ffdcf4c2a6b526a9dccd", "phases": [ { "v": 0, @@ -503,18 +503,18 @@ "txProcessing": [ { "result": { - "transactionHash": "62d28c373389d447341e9d75bc84e2c91437169a2a70d3606c8b3aa7d198ef5c", + "transactionHash": "364ec41dce0a678476ea3ebfc5caa28165ef3bf0976071d858b1c4044f187d25", "result": { - "feeCharged": 42954, + "feeCharged": 60559, "result": { - "code": "txFAILED", + "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_RESOURCE_LIMIT_EXCEEDED" + "type": "EXTEND_FOOTPRINT_TTL", + "extendFootprintTTLResult": { + "code": "EXTEND_FOOTPRINT_TTL_SUCCESS" } } } @@ -529,13 +529,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 12, + "lastModifiedLedgerSeq": 9, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 400000000, - "seqNum": 51539607552, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -559,9 +559,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607552, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -593,9 +593,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607552, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -619,9 +619,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607553, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -663,7 +663,76 @@ } } ], - "operations": [], + "operations": [ + { + "changes": [ + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 6, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", + "liveUntilLedgerSeq": 10006 + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", + "liveUntilLedgerSeq": 10028 + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 6, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", + "liveUntilLedgerSeq": 10006 + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", + "liveUntilLedgerSeq": 10028 + } + }, + "ext": { + "v": 0 + } + } + } + ] + } + ], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -672,9 +741,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 51539607553, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -722,9 +791,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 399957046, - "seqNum": 51539607553, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399939441, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -782,18 +851,19 @@ }, { "result": { - "transactionHash": "bb0a6b13caea6b015555dfd332aca1099e8654896bf7d1bcce8432e833a2572a", + "transactionHash": "e310227a8c0d8d1f78632e65ebca281cd60d8619c9afc64491bcce98e7cd7ee3", "result": { - "feeCharged": 61612, + "feeCharged": 106775, "result": { - "code": "txFAILED", + "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { "type": "INVOKE_HOST_FUNCTION", "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_TRAPPED" + "code": "INVOKE_HOST_FUNCTION_SUCCESS", + "success": "cbbc48750debb8535093b3deaf88ac7f4cff87425576a58de2bac754acdb4616" } } } @@ -808,13 +878,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 11, + "lastModifiedLedgerSeq": 10, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 400000000, - "seqNum": 47244640256, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -838,9 +908,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640256, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -872,9 +942,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640256, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -898,9 +968,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640257, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -942,7 +1012,55 @@ } } ], - "operations": [], + "operations": [ + { + "changes": [ + { + "type": "LEDGER_ENTRY_CREATED", + "created": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "CONTRACT_DATA", + "contractData": { + "ext": { + "v": 0 + }, + "contract": "CAA3QKIP2SNVXUJTB4HKOGF55JTSSMQGED3FZYNHMNSXYV3DRRMAWA3Y", + "key": { + "type": "SCV_SYMBOL", + "sym": "key" + }, + "durability": "PERSISTENT", + "val": { + "type": "SCV_U64", + "u64": 42 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_CREATED", + "created": { + "lastModifiedLedgerSeq": 28, + "data": { + "type": "TTL", + "ttl": { + "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", + "liveUntilLedgerSeq": 47 + } + }, + "ext": { + "v": 0 + } + } + } + ] + } + ], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -951,9 +1069,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 47244640257, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1001,9 +1119,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399938388, - "seqNum": 47244640257, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399893225, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1051,8 +1169,7 @@ }, "events": [], "returnValue": { - "type": "SCV_BOOL", - "b": "FALSE" + "type": "SCV_VOID" }, "diagnosticEvents": [] } @@ -1061,19 +1178,18 @@ }, { "result": { - "transactionHash": "e310227a8c0d8d1f78632e65ebca281cd60d8619c9afc64491bcce98e7cd7ee3", + "transactionHash": "ee68d27257fa137933de22b3fdfbc4a736ec01af29a9e25e5b807252b1a1ca0a", "result": { - "feeCharged": 106775, + "feeCharged": 51547, "result": { "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_SUCCESS", - "success": "cbbc48750debb8535093b3deaf88ac7f4cff87425576a58de2bac754acdb4616" + "type": "RESTORE_FOOTPRINT", + "restoreFootprintResult": { + "code": "RESTORE_FOOTPRINT_SUCCESS" } } } @@ -1088,13 +1204,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 10, + "lastModifiedLedgerSeq": 8, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 400000000, - "seqNum": 42949672960, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1118,9 +1234,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672960, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1152,9 +1268,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672960, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1178,9 +1294,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672961, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1226,25 +1342,14 @@ { "changes": [ { - "type": "LEDGER_ENTRY_CREATED", - "created": { - "lastModifiedLedgerSeq": 28, + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 7, "data": { - "type": "CONTRACT_DATA", - "contractData": { - "ext": { - "v": 0 - }, - "contract": "CAA3QKIP2SNVXUJTB4HKOGF55JTSSMQGED3FZYNHMNSXYV3DRRMAWA3Y", - "key": { - "type": "SCV_SYMBOL", - "sym": "key" - }, - "durability": "PERSISTENT", - "val": { - "type": "SCV_U64", - "u64": 42 - } + "type": "TTL", + "ttl": { + "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", + "liveUntilLedgerSeq": 26 } }, "ext": { @@ -1253,13 +1358,13 @@ } }, { - "type": "LEDGER_ENTRY_CREATED", - "created": { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { - "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", + "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", "liveUntilLedgerSeq": 47 } }, @@ -1279,9 +1384,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 42949672961, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1329,9 +1434,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399893225, - "seqNum": 42949672961, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 399948453, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1379,7 +1484,8 @@ }, "events": [], "returnValue": { - "type": "SCV_VOID" + "type": "SCV_BOOL", + "b": "FALSE" }, "diagnosticEvents": [] } @@ -1388,18 +1494,18 @@ }, { "result": { - "transactionHash": "364ec41dce0a678476ea3ebfc5caa28165ef3bf0976071d858b1c4044f187d25", + "transactionHash": "62d28c373389d447341e9d75bc84e2c91437169a2a70d3606c8b3aa7d198ef5c", "result": { - "feeCharged": 60559, + "feeCharged": 42954, "result": { - "code": "txSUCCESS", + "code": "txFAILED", "results": [ { "code": "opINNER", "tr": { - "type": "EXTEND_FOOTPRINT_TTL", - "extendFootprintTTLResult": { - "code": "EXTEND_FOOTPRINT_TTL_SUCCESS" + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionResult": { + "code": "INVOKE_HOST_FUNCTION_RESOURCE_LIMIT_EXCEEDED" } } } @@ -1414,13 +1520,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 9, + "lastModifiedLedgerSeq": 12, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 400000000, - "seqNum": 38654705664, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1444,9 +1550,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705664, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1478,9 +1584,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705664, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1504,9 +1610,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705665, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1548,76 +1654,7 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10006 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 28, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10028 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10006 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 28, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10028 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -1626,9 +1663,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 38654705665, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1676,9 +1713,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399939441, - "seqNum": 38654705665, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 399957046, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1736,18 +1773,18 @@ }, { "result": { - "transactionHash": "ee68d27257fa137933de22b3fdfbc4a736ec01af29a9e25e5b807252b1a1ca0a", + "transactionHash": "bb0a6b13caea6b015555dfd332aca1099e8654896bf7d1bcce8432e833a2572a", "result": { - "feeCharged": 51547, + "feeCharged": 61612, "result": { - "code": "txSUCCESS", + "code": "txFAILED", "results": [ { "code": "opINNER", "tr": { - "type": "RESTORE_FOOTPRINT", - "restoreFootprintResult": { - "code": "RESTORE_FOOTPRINT_SUCCESS" + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionResult": { + "code": "INVOKE_HOST_FUNCTION_TRAPPED" } } } @@ -1762,13 +1799,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 8, + "lastModifiedLedgerSeq": 11, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "balance": 400000000, - "seqNum": 34359738368, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1792,9 +1829,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1826,9 +1863,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1852,9 +1889,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1896,44 +1933,7 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 7, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 26 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 28, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 47 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", @@ -1942,9 +1942,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1992,9 +1992,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399948453, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399938388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, diff --git a/src/testdata/ledger-close-meta-v1-protocol-23.json b/src/testdata/ledger-close-meta-v1-protocol-23.json index 9dc6889bb3..fd3457ad4a 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-23.json +++ b/src/testdata/ledger-close-meta-v1-protocol-23.json @@ -6,24 +6,24 @@ "v": 0 }, "ledgerHeader": { - "hash": "2655f464e71686458ba764097853c99019399865486bae06b7a8b1c80b7179dc", + "hash": "639105c0b5e96988a119fc5c29302a0d159a4db6b110072ef76d9874ae32e965", "header": { "ledgerVersion": 23, - "previousLedgerHash": "9df1dce8f68d1b06a1d75676fff20bf9cdf969dccdc28bcc8834cf9d913683fc", + "previousLedgerHash": "6f164987c6cf8b0c244e5408f7bc1d46d8bd06fc4738cd5d4ffa3f86d26735db", "scpValue": { - "txSetHash": "b503a5884489530ac8182bf39094f3ee5fba25ca6be25d18429cea101d2c64ff", + "txSetHash": "963aafcdb15b43e8c4bc65ab3c619ca2deb88ebd085f7fab83e8c9bd62b98924", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "62bc91bea7c4e1511b03bc155f3df00de53f5edd16d32efc256ab87136fdd74040fa77f6334b7299067bfa15f87cc381ecacf1eb1407610a09a1bb5f14ccce08" + "signature": "f5df08c23029f2ca25758b8063404551c2cc8498eda3f9b456d1279f6109e9e76319089295c57e810cfe613aea46ab131f00b59c31674be946f1d83a54bafb01" } } }, "txSetResultHash": "f66233c106977a4cc148e019411ff6ddfaf76c337d004ed9a304a70407b161d0", - "bucketListHash": "e81d04ea5845d7a12236bbbfc85779619b7719977d5d72f66627a27aa6607a64", + "bucketListHash": "ab54afd2e5801cd428b32662bb8d5efb10c979ab8538d635b9fad411a2317aaa", "ledgerSeq": 7, "totalCoins": 1000000000000000000, "feePool": 800, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "9df1dce8f68d1b06a1d75676fff20bf9cdf969dccdc28bcc8834cf9d913683fc", + "previousLedgerHash": "6f164987c6cf8b0c244e5408f7bc1d46d8bd06fc4738cd5d4ffa3f86d26735db", "phases": [ { "v": 0, @@ -981,7 +981,7 @@ ], "upgradesProcessing": [], "scpInfo": [], - "totalByteSizeOfBucketList": 788, + "totalByteSizeOfBucketList": 1021, "evictedTemporaryLedgerKeys": [], "evictedPersistentLedgerEntries": [] } From 599010ad8297212306e61b91f99f30bc358478eb Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Fri, 20 Sep 2024 09:10:39 -0700 Subject: [PATCH 5/6] fix settings protocol upgrade path --- src/ledger/NetworkConfig.cpp | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/ledger/NetworkConfig.cpp b/src/ledger/NetworkConfig.cpp index 46ecd10e3b..4665653dbe 100644 --- a/src/ledger/NetworkConfig.cpp +++ b/src/ledger/NetworkConfig.cpp @@ -346,8 +346,11 @@ updateCpuCostParamsEntryForV21(AbstractLedgerTxn& ltxRoot) .data.configSetting() .contractCostParamsCpuInsns(); + // Resize to fit the last cost type added in v21 + params.resize( + static_cast(ContractCostType::VerifyEcdsaSecp256r1Sig) + 1); + auto const& vals = xdr::xdr_traits::enum_values(); - params.resize(static_cast(vals.size())); // While we loop over the full ContractCostType enum, we only set the range for (auto val : vals) @@ -448,7 +451,9 @@ updateCpuCostParamsEntryForV22(AbstractLedgerTxn& ltxRoot) .contractCostParamsCpuInsns(); auto const& vals = xdr::xdr_traits::enum_values(); - params.resize(static_cast(vals.size())); + + // Resize to fit the last cost type added in v22 + params.resize(static_cast(ContractCostType::Bls12381FrInv) + 1); // While we loop over the full ContractCostType enum, we only set the // entries that have either been updated, or newly created in p22 @@ -770,8 +775,11 @@ updateMemCostParamsEntryForV21(AbstractLedgerTxn& ltxRoot) .data.configSetting() .contractCostParamsMemBytes(); + // Resize to fit the last cost type added in v21 + params.resize( + static_cast(ContractCostType::VerifyEcdsaSecp256r1Sig) + 1); + auto const& vals = xdr::xdr_traits::enum_values(); - params.resize(static_cast(vals.size())); for (auto val : vals) { @@ -873,7 +881,9 @@ updateMemCostParamsEntryForV22(AbstractLedgerTxn& ltxRoot) .contractCostParamsMemBytes(); auto const& vals = xdr::xdr_traits::enum_values(); - params.resize(static_cast(vals.size())); + + // Resize to fit the last cost type added in v22 + params.resize(static_cast(ContractCostType::Bls12381FrInv) + 1); for (auto val : vals) { From 96b410bac15919bf8356ff8b0277dba83180582c Mon Sep 17 00:00:00 2001 From: Siddharth Suresh Date: Fri, 20 Sep 2024 09:40:20 -0700 Subject: [PATCH 6/6] fix settings test --- src/main/SettingsUpgradeUtils.cpp | 4 ++-- src/transactions/test/InvokeHostFunctionTests.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/SettingsUpgradeUtils.cpp b/src/main/SettingsUpgradeUtils.cpp index 0662dfb296..1b241dadf2 100644 --- a/src/main/SettingsUpgradeUtils.cpp +++ b/src/main/SettingsUpgradeUtils.cpp @@ -267,8 +267,8 @@ getInvokeTx(PublicKey const& publicKey, LedgerKey const& contractCodeLedgerKey, contractCodeLedgerKey}; invokeResources.footprint.readWrite = {upgrade}; invokeResources.instructions = 2'000'000; - invokeResources.readBytes = 3000; - invokeResources.writeBytes = 3000; + invokeResources.readBytes = 3200; + invokeResources.writeBytes = 3200; tx.ext.v(1); tx.ext.sorobanData().resources = invokeResources; diff --git a/src/transactions/test/InvokeHostFunctionTests.cpp b/src/transactions/test/InvokeHostFunctionTests.cpp index 88abeffb9e..c7c19295fc 100644 --- a/src/transactions/test/InvokeHostFunctionTests.cpp +++ b/src/transactions/test/InvokeHostFunctionTests.cpp @@ -2849,8 +2849,8 @@ TEST_CASE("settings upgrade command line utils", "[tx][soroban][upgrades]") // mAverageBucketListSize modifySorobanNetworkConfig(*app, [](SorobanNetworkConfig& cfg) { cfg.mStateArchivalSettings.bucketListWindowSamplePeriod = 1; - // This is required to allow for an upgrade of all settings at once. - cfg.mMaxContractDataEntrySizeBytes = 3000; + // These are required to allow for an upgrade of all settings at once. + cfg.mMaxContractDataEntrySizeBytes = 3200; }); const int64_t startingBalance =