diff --git a/src/bucket/Bucket.cpp b/src/bucket/Bucket.cpp index d20a6d82c2..ff08cf8b76 100644 --- a/src/bucket/Bucket.cpp +++ b/src/bucket/Bucket.cpp @@ -136,6 +136,15 @@ Bucket::apply(Application& app) const { ZoneScoped; + auto filter = [&](LedgerEntryType t) { + if (app.getConfig().isUsingBucketListDB()) + { + return t == OFFER; + } + + return true; + }; + std::unordered_set emptySet; BucketApplicator applicator( app, app.getConfig().LEDGER_PROTOCOL_VERSION, @@ -143,7 +152,7 @@ Bucket::apply(Application& app) const 0 /*set to a level that's not the bottom so we don't treat live entries as init*/ , - shared_from_this(), [](LedgerEntryType) { return true; }, emptySet); + shared_from_this(), filter, emptySet); BucketApplicator::Counters counters(app.getClock().now()); while (applicator) { diff --git a/src/bucket/BucketListSnapshot.cpp b/src/bucket/BucketListSnapshot.cpp index e5adfb56bb..5d26fd8296 100644 --- a/src/bucket/BucketListSnapshot.cpp +++ b/src/bucket/BucketListSnapshot.cpp @@ -127,6 +127,14 @@ SearchableBucketListSnapshot::getLedgerSeq() const return mSnapshot->getLedgerSeq(); } +LedgerHeader const& +SearchableBucketListSnapshot::getLedgerHeader() +{ + releaseAssert(mSnapshot); + mSnapshotManager.maybeUpdateSnapshot(mSnapshot, mHistoricalSnapshots); + return mSnapshot->getLedgerHeader(); +} + EvictionResult SearchableBucketListSnapshot::scanForEviction( uint32_t ledgerSeq, EvictionCounters& counters, diff --git a/src/bucket/BucketListSnapshot.h b/src/bucket/BucketListSnapshot.h index 9b6fd5dcf8..ea14869f3a 100644 --- a/src/bucket/BucketListSnapshot.h +++ b/src/bucket/BucketListSnapshot.h @@ -102,10 +102,6 @@ class SearchableBucketListSnapshot : public NonMovableOrCopyable std::shared_ptr stats, StateArchivalSettings const& sas); uint32_t getLedgerSeq() const; - LedgerHeader const& - getLedgerHeader() const - { - return mSnapshot->getLedgerHeader(); - } + LedgerHeader const& getLedgerHeader(); }; } \ No newline at end of file diff --git a/src/bucket/test/BucketIndexTests.cpp b/src/bucket/test/BucketIndexTests.cpp index 091dbfa4fa..ddcff10c66 100644 --- a/src/bucket/test/BucketIndexTests.cpp +++ b/src/bucket/test/BucketIndexTests.cpp @@ -604,7 +604,7 @@ TEST_CASE("ContractData key with same ScVal", "[bucket][bucketindex]") TEST_CASE("serialize bucket indexes", "[bucket][bucketindex]") { - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); // All levels use range config cfg.BUCKETLIST_DB_INDEX_CUTOFF = 0; diff --git a/src/bucket/test/BucketListTests.cpp b/src/bucket/test/BucketListTests.cpp index 1b6660800e..2730efcca6 100644 --- a/src/bucket/test/BucketListTests.cpp +++ b/src/bucket/test/BucketListTests.cpp @@ -148,7 +148,9 @@ TEST_CASE_VERSIONS("bucket list", "[bucket][bucketlist]") lh.ledgerSeq = i; addBatchAndUpdateSnapshot( bl, *app, lh, {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(8), + LedgerTestUtils:: + generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 8), LedgerTestUtils::generateValidLedgerEntryKeysWithExclusions( {CONFIG_SETTING}, 5)); if (i % 10 == 0) @@ -256,7 +258,8 @@ TEST_CASE_VERSIONS("bucket list shadowing pre/post proto 12", { app->getClock().crank(false); auto liveBatch = - LedgerTestUtils::generateValidUniqueLedgerEntries(5); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 5); BucketEntry BucketEntryAlice, BucketEntryBob; alice.balance++; @@ -351,14 +354,16 @@ TEST_CASE_VERSIONS("bucket tombstones expire at bottom level", auto& level = bl.getLevel(i); level.setCurr(Bucket::fresh( bm, getAppLedgerVersion(app), {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(8), + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 8), LedgerTestUtils::generateValidLedgerEntryKeysWithExclusions( {CONFIG_SETTING}, 5), /*countMergeEvents=*/true, clock.getIOContext(), /*doFsync=*/true)); level.setSnap(Bucket::fresh( bm, getAppLedgerVersion(app), {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(8), + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 8), LedgerTestUtils::generateValidLedgerEntryKeysWithExclusions( {CONFIG_SETTING}, 5), /*countMergeEvents=*/true, clock.getIOContext(), @@ -377,7 +382,9 @@ TEST_CASE_VERSIONS("bucket tombstones expire at bottom level", lh.ledgerSeq = j; addBatchAndUpdateSnapshot( bl, *app, lh, {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(8), + LedgerTestUtils:: + generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 8), LedgerTestUtils::generateValidLedgerEntryKeysWithExclusions( {CONFIG_SETTING}, 5)); app->getClock().crank(false); @@ -502,7 +509,9 @@ TEST_CASE_VERSIONS("single entry bubbling up", addBatchAndUpdateSnapshot( bl, *app, app->getLedgerManager().getLastClosedLedgerHeader().header, {}, - LedgerTestUtils::generateValidLedgerEntries(1), emptySet); + LedgerTestUtils::generateValidLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 1), + emptySet); CLOG_DEBUG(Bucket, "Adding empty batches to bucket list"); for (uint32_t i = 2; @@ -664,7 +673,9 @@ TEST_CASE("BucketList check bucket sizes", "[bucket][bucketlist][count]") Application::pointer app = createTestApplication(clock, cfg); BucketList& bl = app->getBucketManager().getBucketList(); std::vector emptySet; - auto ledgers = LedgerTestUtils::generateValidUniqueLedgerEntries(256); + auto ledgers = + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 256); for (uint32_t ledgerSeq = 1; ledgerSeq <= 256; ++ledgerSeq) { if (ledgerSeq >= 2) @@ -688,7 +699,7 @@ TEST_CASE("BucketList check bucket sizes", "[bucket][bucketlist][count]") TEST_CASE_VERSIONS("network config snapshots BucketList size", "[bucketlist]") { VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); cfg.USE_CONFIG_FOR_GENESIS = true; auto app = createTestApplication(clock, cfg); @@ -760,7 +771,10 @@ TEST_CASE_VERSIONS("network config snapshots BucketList size", "[bucketlist]") } lm.setNextLedgerEntryBatchForBucketTesting( - {}, LedgerTestUtils::generateValidUniqueLedgerEntries(10), {}); + {}, + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 10), + {}); closeLedger(*app); if ((ledger + 1) % networkConfig.stateArchivalSettings() .bucketListWindowSamplePeriod == @@ -775,7 +789,7 @@ TEST_CASE_VERSIONS("network config snapshots BucketList size", "[bucketlist]") TEST_CASE_VERSIONS("eviction scan", "[bucketlist]") { VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig()); cfg.USE_CONFIG_FOR_GENESIS = true; auto test = [&](bool backgroundScan) { @@ -1250,7 +1264,7 @@ TEST_CASE_VERSIONS("eviction scan", "[bucketlist]") TEST_CASE_VERSIONS("Searchable BucketListDB snapshots", "[bucketlist]") { VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig()); cfg.DEPRECATED_SQL_LEDGER_STATE = false; auto app = createTestApplication(clock, cfg); diff --git a/src/bucket/test/BucketManagerTests.cpp b/src/bucket/test/BucketManagerTests.cpp index 7a7bda81bf..fd7653205b 100644 --- a/src/bucket/test/BucketManagerTests.cpp +++ b/src/bucket/test/BucketManagerTests.cpp @@ -213,7 +213,8 @@ TEST_CASE_VERSIONS("bucketmanager ownership", "[bucket][bucketmanager]") Application::pointer app = createTestApplication(clock, cfg); std::vector live( - LedgerTestUtils::generateValidUniqueLedgerEntries(10)); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 10)); std::vector dead{}; std::shared_ptr b1; @@ -303,7 +304,7 @@ TEST_CASE_VERSIONS("bucketmanager ownership", "[bucket][bucketmanager]") TEST_CASE("bucketmanager missing buckets fail", "[bucket][bucketmanager]") { - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); std::string someBucketFileName; { VirtualClock clock; @@ -318,7 +319,10 @@ TEST_CASE("bucketmanager missing buckets fail", "[bucket][bucketmanager]") { ++ledger; lm.setNextLedgerEntryBatchForBucketTesting( - {}, LedgerTestUtils::generateValidUniqueLedgerEntries(10), {}); + {}, + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 10), + {}); closeLedger(*app); } while (!BucketList::levelShouldSpill(ledger, level - 1)); auto someBucket = bl.getLevel(1).getCurr(); @@ -341,7 +345,7 @@ TEST_CASE_VERSIONS("bucketmanager reattach to finished merge", "[bucket][bucketmanager]") { VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig()); cfg.ARTIFICIALLY_PESSIMIZE_MERGES_FOR_TESTING = true; cfg.MANUAL_CLOSE = false; @@ -363,7 +367,9 @@ TEST_CASE_VERSIONS("bucketmanager reattach to finished merge", lh.ledgerSeq = ledger; addBatchAndUpdateSnapshot( bl, *app, lh, {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(10), {}); + LedgerTestUtils::generateValidLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 10), + {}); bm.forgetUnreferencedBuckets(); } while (!BucketList::levelShouldSpill(ledger, level - 1)); @@ -406,7 +412,7 @@ TEST_CASE_VERSIONS("bucketmanager reattach to running merge", "[bucket][bucketmanager]") { VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg.ARTIFICIALLY_PESSIMIZE_MERGES_FOR_TESTING = true; cfg.MANUAL_CLOSE = false; @@ -450,7 +456,9 @@ TEST_CASE_VERSIONS("bucketmanager reattach to running merge", lh.ledgerSeq = ledger; addBatchAndUpdateSnapshot( bl, *app, lh, {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(100), {}); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 100), + {}); bm.forgetUnreferencedBuckets(); @@ -488,9 +496,10 @@ TEST_CASE("bucketmanager do not leak empty-merge futures", // The point of this test is to confirm that // BucketManager::noteEmptyMergeOutput is being called properly from merges // that produce empty outputs, and that the input buckets to those merges - // are thereby not leaking. + // are thereby not leaking. Disable BucketListDB so that snapshots do not + // hold persist buckets, complicating bucket counting. VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); cfg.ARTIFICIALLY_PESSIMIZE_MERGES_FOR_TESTING = true; cfg.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = static_cast( @@ -588,7 +597,9 @@ TEST_CASE_VERSIONS( lh.ledgerSeq++; addBatchAndUpdateSnapshot( bl, *app, lh, {}, - LedgerTestUtils::generateValidUniqueLedgerEntries(100), {}); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 100), + {}); clock.crank(false); bm.forgetUnreferencedBuckets(); } @@ -1064,7 +1075,7 @@ class StopAndRestartBucketMergesTest collectControlSurveys() { VirtualClock clock; - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg.ARTIFICIALLY_PESSIMIZE_MERGES_FOR_TESTING = true; cfg.ARTIFICIALLY_REDUCE_MERGE_COUNTS_FOR_TESTING = true; cfg.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = mProtocol; @@ -1175,10 +1186,11 @@ class StopAndRestartBucketMergesTest runStopAndRestartTest(uint32_t firstProtocol, uint32_t secondProtocol) { std::unique_ptr clock = std::make_unique(); - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg.ARTIFICIALLY_PESSIMIZE_MERGES_FOR_TESTING = true; cfg.ARTIFICIALLY_REDUCE_MERGE_COUNTS_FOR_TESTING = true; cfg.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = firstProtocol; + cfg.INVARIANT_CHECKS = {}; assert(!mDesignatedLedgers.empty()); uint32_t finalLedger = (*mDesignatedLedgers.rbegin()) + 1; uint32_t currProtocol = firstProtocol; @@ -1367,17 +1379,18 @@ TEST_CASE_VERSIONS("bucket persistence over app restart", std::vector emptySet; std::vector emptySetEntry; - Config cfg0(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg0(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg0.MANUAL_CLOSE = false; for_versions_with_differing_bucket_logic(cfg0, [&](Config const& cfg0) { - Config cfg1(getTestConfig(1, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg1(getTestConfig(1, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg1.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = cfg0.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION; cfg1.ARTIFICIALLY_PESSIMIZE_MERGES_FOR_TESTING = true; auto batch_entries = - LedgerTestUtils::generateValidUniqueLedgerEntries(111); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING, OFFER}, 111); auto alice = batch_entries.back(); batch_entries.pop_back(); std::vector> batches; diff --git a/src/bucket/test/BucketMergeMapTests.cpp b/src/bucket/test/BucketMergeMapTests.cpp index 29e47ccaf2..b5f9ea81a8 100644 --- a/src/bucket/test/BucketMergeMapTests.cpp +++ b/src/bucket/test/BucketMergeMapTests.cpp @@ -20,7 +20,8 @@ TEST_CASE("bucket merge map", "[bucket][bucketmergemap]") auto getValidBucket = [&](int numEntries = 10) { std::vector live = - LedgerTestUtils::generateValidUniqueLedgerEntries(numEntries); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, numEntries); std::shared_ptr b1 = Bucket::fresh( app->getBucketManager(), BucketTestUtils::getAppLedgerVersion(app), {}, live, {}, diff --git a/src/bucket/test/BucketTests.cpp b/src/bucket/test/BucketTests.cpp index 550438cac8..4da46e26a7 100644 --- a/src/bucket/test/BucketTests.cpp +++ b/src/bucket/test/BucketTests.cpp @@ -223,7 +223,8 @@ TEST_CASE_VERSIONS("merging bucket entries", "[bucket]") SECTION("random live entries overwrite live entries in any order") { std::vector live = - LedgerTestUtils::generateValidUniqueLedgerEntries(100); + LedgerTestUtils::generateValidUniqueLedgerEntriesWithExclusions( + {CONFIG_SETTING}, 100); std::vector dead; std::shared_ptr b1 = Bucket::fresh( app->getBucketManager(), getAppLedgerVersion(app), {}, live, @@ -910,10 +911,10 @@ TEST_CASE_VERSIONS("merging bucket entries with initentry with shadows", }); } -TEST_CASE_VERSIONS("bucket apply", "[bucket]") +TEST_CASE_VERSIONS("legacy bucket apply", "[bucket]") { VirtualClock clock; - Config cfg(getTestConfig()); + Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); for_versions_with_differing_bucket_logic(cfg, [&](Config const& cfg) { Application::pointer app = createTestApplication(clock, cfg); @@ -983,14 +984,5 @@ TEST_CASE("bucket apply bench", "[bucketbench][!hide]") birth->apply(*app); }; - SECTION("sqlite") - { - runtest(Config::TESTDB_ON_DISK_SQLITE); - } -#ifdef USE_POSTGRES - SECTION("postgresql") - { - runtest(Config::TESTDB_POSTGRESQL); - } -#endif + runtest(Config::TESTDB_BUCKET_DB_PERSISTENT); } diff --git a/src/database/test/DatabaseTests.cpp b/src/database/test/DatabaseTests.cpp index 2b05aca896..4a17cd565c 100644 --- a/src/database/test/DatabaseTests.cpp +++ b/src/database/test/DatabaseTests.cpp @@ -72,7 +72,7 @@ transactionTest(Application::pointer app) TEST_CASE("database smoketest", "[db]") { - Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); VirtualClock clock; Application::pointer app = createTestApplication(clock, cfg, true, false); @@ -349,7 +349,7 @@ TEST_CASE("postgres performance", "[db][pgperf][!hide]") TEST_CASE("schema test", "[db]") { - Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); VirtualClock clock; Application::pointer app = createTestApplication(clock, cfg); diff --git a/src/herder/test/HerderTests.cpp b/src/herder/test/HerderTests.cpp index f2bb594f45..b5e6bc8f1d 100644 --- a/src/herder/test/HerderTests.cpp +++ b/src/herder/test/HerderTests.cpp @@ -59,7 +59,7 @@ TEST_CASE_VERSIONS("standalone", "[herder][acceptance]") { SIMULATION_CREATE_NODE(0); - Config cfg(getTestConfig(0, Config::TESTDB_DEFAULT)); + Config cfg(getTestConfig()); cfg.MANUAL_CLOSE = false; cfg.NODE_SEED = v0SecretKey; @@ -1133,7 +1133,7 @@ TEST_CASE("surge pricing", "[herder][txset][soroban]") { SECTION("max 0 ops per ledger") { - Config cfg(getTestConfig()); + Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); cfg.TESTING_UPGRADE_MAX_TX_SET_SIZE = 0; VirtualClock clock; @@ -2566,6 +2566,12 @@ TEST_CASE("SCP State", "[herder]") { configure(Config::TestDbMode::TESTDB_ON_DISK_SQLITE); } + + SECTION("bucketlistDB") + { + configure(Config::TestDbMode::TESTDB_BUCKET_DB_PERSISTENT); + } + #ifdef USE_POSTGRES SECTION("postgres") { @@ -2930,7 +2936,7 @@ TEST_CASE("tx queue source account limit", "[herder][transactionqueue]") auto networkID = sha256(getTestConfig().NETWORK_PASSPHRASE); simulation = std::make_shared( Simulation::OVER_LOOPBACK, networkID, [](int i) { - auto cfg = getTestConfig(i, Config::TESTDB_ON_DISK_SQLITE); + auto cfg = getTestConfig(i, Config::TESTDB_DEFAULT); return cfg; }); @@ -3047,7 +3053,7 @@ TEST_CASE("soroban txs each parameter surge priced", "[soroban][herder]") std::function tweakAppCfg) { auto simulation = Topologies::core( 4, 1, Simulation::OVER_LOOPBACK, networkID, [&](int i) { - auto cfg = getTestConfig(i, Config::TESTDB_ON_DISK_SQLITE); + auto cfg = getTestConfig(i, Config::TESTDB_DEFAULT); auto mid = std::numeric_limits::max() / 2; cfg.LOADGEN_INSTRUCTIONS_FOR_TESTING = {mid}; cfg.LOADGEN_INSTRUCTIONS_FOR_TESTING = {1}; @@ -3420,7 +3426,7 @@ TEST_CASE("soroban txs accepted by the network", // Set threshold to 1 so all have to vote auto simulation = Topologies::core(4, 1, Simulation::OVER_LOOPBACK, networkID, [](int i) { - auto cfg = getTestConfig(i, Config::TESTDB_ON_DISK_SQLITE); + auto cfg = getTestConfig(i, Config::TESTDB_DEFAULT); cfg.TESTING_UPGRADE_MAX_TX_SET_SIZE = 100; return cfg; }); @@ -4282,7 +4288,7 @@ TEST_CASE("In quorum filtering", "[quorum][herder][acceptance]") auto networkID = sha256(getTestConfig().NETWORK_PASSPHRASE); auto sim = Topologies::core(4, 0.75, mode, networkID, [](int i) { - return getTestConfig(i, Config::TESTDB_ON_DISK_SQLITE); + return getTestConfig(i, Config::TESTDB_DEFAULT); }); sim->startAllNodes(); diff --git a/src/herder/test/PendingEnvelopesTests.cpp b/src/herder/test/PendingEnvelopesTests.cpp index 4be1ada168..e690887e0d 100644 --- a/src/herder/test/PendingEnvelopesTests.cpp +++ b/src/herder/test/PendingEnvelopesTests.cpp @@ -20,7 +20,7 @@ using namespace stellar::txtest; TEST_CASE("PendingEnvelopes recvSCPEnvelope", "[herder]") { - Config cfg(getTestConfig(0, Config::TESTDB_DEFAULT)); + Config cfg(getTestConfig()); cfg.MANUAL_CLOSE = false; VirtualClock clock; diff --git a/src/herder/test/QuorumTrackerTests.cpp b/src/herder/test/QuorumTrackerTests.cpp index 0fab97d693..5dc8f3ad36 100644 --- a/src/herder/test/QuorumTrackerTests.cpp +++ b/src/herder/test/QuorumTrackerTests.cpp @@ -17,7 +17,7 @@ using namespace stellar; void testQuorumTracker() { - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg.MANUAL_CLOSE = false; std::vector otherKeys; @@ -185,7 +185,7 @@ TEST_CASE("quorum tracker", "[quorum][herder]") TEST_CASE("quorum tracker closest validators", "[quorum][herder]") { - Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_DEFAULT)); std::vector otherKeys; int const kKeysCount = 7; diff --git a/src/herder/test/UpgradesTests.cpp b/src/herder/test/UpgradesTests.cpp index 7e3c5bd119..3a1b3adf56 100644 --- a/src/herder/test/UpgradesTests.cpp +++ b/src/herder/test/UpgradesTests.cpp @@ -374,7 +374,7 @@ void testValidateUpgrades(VirtualClock::system_time_point preferredUpgradeDatetime, bool canBeValid) { - auto cfg = getTestConfig(); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = 10; cfg.TESTING_UPGRADE_DESIRED_FEE = 100; cfg.TESTING_UPGRADE_MAX_TX_SET_SIZE = 50; @@ -632,7 +632,7 @@ TEST_CASE("Ledger Manager applies upgrades properly", "[upgrades]") TEST_CASE("config upgrade validation", "[upgrades]") { VirtualClock clock; - auto cfg = getTestConfig(0); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); auto headerTime = VirtualClock::to_time_t(genesis(0, 2)); @@ -828,7 +828,7 @@ TEST_CASE("config upgrade validation", "[upgrades]") TEST_CASE("config upgrades applied to ledger", "[soroban][upgrades]") { VirtualClock clock; - auto cfg = getTestConfig(0); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = static_cast(SOROBAN_PROTOCOL_VERSION) - 1; cfg.USE_CONFIG_FOR_GENESIS = false; @@ -2274,8 +2274,8 @@ TEST_CASE("configuration initialized in version upgrade", "[upgrades]") TEST_CASE_VERSIONS("upgrade base reserve", "[upgrades]") { VirtualClock clock; - auto cfg = getTestConfig(0); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); auto& lm = app->getLedgerManager(); @@ -2974,7 +2974,7 @@ TEST_CASE("upgrade from cpp14 serialized data", "[upgrades]") TEST_CASE("upgrades serialization roundtrip", "[upgrades]") { - auto cfg = getTestConfig(); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); @@ -3058,7 +3058,7 @@ TEST_CASE("upgrades serialization roundtrip", "[upgrades]") TEST_CASE_VERSIONS("upgrade flags", "[upgrades][liquiditypool]") { VirtualClock clock; - auto cfg = getTestConfig(); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); diff --git a/src/history/test/HistoryTests.cpp b/src/history/test/HistoryTests.cpp index 7e4821f039..2b882a9099 100644 --- a/src/history/test/HistoryTests.cpp +++ b/src/history/test/HistoryTests.cpp @@ -489,7 +489,7 @@ TEST_CASE("History publish to multiple archives", "[history]") catchupSimulation.ensureOfflineCatchupPossible(checkpointLedger); auto catchupApp = catchupSimulation.createCatchupApplication( - 64, Config::TESTDB_ON_DISK_SQLITE, "app"); + 64, Config::TESTDB_BUCKET_DB_PERSISTENT, "app"); // Actually perform catchup and make sure everything is correct REQUIRE(catchupSimulation.catchupOffline(catchupApp, checkpointLedger)); @@ -502,8 +502,8 @@ TEST_CASE("History catchup with extra validation", "[history][publish]") catchupSimulation.ensureOfflineCatchupPossible(checkpointLedger); auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_ON_DISK_SQLITE, - "app"); + std::numeric_limits::max(), + Config::TESTDB_BUCKET_DB_PERSISTENT, "app"); REQUIRE(catchupSimulation.catchupOffline(app, checkpointLedger, true)); } @@ -613,14 +613,20 @@ dbModeName(Config::TestDbMode mode) { switch (mode) { - case Config::TESTDB_IN_MEMORY_SQLITE: - return "TESTDB_IN_MEMORY_SQLITE"; + case Config::TESTDB_IN_MEMORY_OFFERS: + return "TESTDB_IN_MEMORY_OFFERS"; case Config::TESTDB_ON_DISK_SQLITE: return "TESTDB_ON_DISK_SQLITE"; #ifdef USE_POSTGRES case Config::TESTDB_POSTGRESQL: return "TESTDB_POSTGRESQL"; #endif + case Config::TESTDB_BUCKET_DB_PERSISTENT: + return "TESTDB_BUCKET_DB_PERSISTENT"; + case Config::TESTDB_BUCKET_DB_VOLATILE: + return "TESTDB_BUCKET_DB_VOLATILE"; + case Config::TESTDB_DEFAULT: + return "TESTDB_DEFAULT"; default: abort(); } @@ -634,8 +640,8 @@ TEST_CASE("History catchup", "[history][catchup][acceptance]") CatchupSimulation catchupSimulation{VirtualClock::REAL_TIME}; auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(3); auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_ON_DISK_SQLITE, - "app"); + std::numeric_limits::max(), + Config::TESTDB_BUCKET_DB_PERSISTENT, "app"); auto offlineNonCheckpointDestinationLedger = checkpointLedger - @@ -724,8 +730,8 @@ TEST_CASE("Publish throttles catchup", "[history][catchup][acceptance]") catchupSimulation.ensureLedgerAvailable(checkpointLedger + 1); catchupSimulation.ensurePublishesComplete(); auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app", /* publish */ true); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app", + /* publish */ true); REQUIRE(catchupSimulation.catchupOffline(app, checkpointLedger)); } @@ -742,8 +748,8 @@ TEST_CASE("History catchup with different modes", std::vector counts = {0, std::numeric_limits::max(), 60}; - std::vector dbModes = {Config::TESTDB_IN_MEMORY_SQLITE, - Config::TESTDB_ON_DISK_SQLITE}; + std::vector dbModes = { + Config::TESTDB_ON_DISK_SQLITE, Config::TESTDB_BUCKET_DB_PERSISTENT}; #ifdef USE_POSTGRES if (!force_sqlite) dbModes.push_back(Config::TESTDB_POSTGRESQL); @@ -763,18 +769,6 @@ TEST_CASE("History catchup with different modes", } } -TEST_CASE("History catchup with BucketListDB enabled", - "[history][catchup][bucketindex]") -{ - CatchupSimulation catchupSimulation{}; - auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(3); - catchupSimulation.ensureOfflineCatchupPossible(checkpointLedger); - auto app = catchupSimulation.createCatchupApplication( - 64, Config::TESTDB_ON_DISK_SQLITE, "app", /*publish=*/false, - /*useBucketListDB=*/true); - REQUIRE(catchupSimulation.catchupOffline(app, checkpointLedger)); -} - TEST_CASE("Retriggering catchups after trimming mSyncingLedgers", "[history][catchup]") { @@ -796,7 +790,7 @@ TEST_CASE("Retriggering catchups after trimming mSyncingLedgers", catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger); auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, + std::numeric_limits::max(), Config::TESTDB_DEFAULT, std::string("Retriggering catchups after trimming mSyncingLedgers")); auto& lm = app->getLedgerManager(); @@ -917,7 +911,7 @@ TEST_CASE("History prefix catchup", "[history][catchup]") catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 5); auto a = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, + std::numeric_limits::max(), Config::TESTDB_DEFAULT, std::string("Catchup to prefix of published history")); // Try to catchup to ledger 10, which is part of first checkpoint (ending // at 63), witch 5 buffered ledgers. It will succeed (as 3 checkpoints are @@ -938,7 +932,7 @@ TEST_CASE("History prefix catchup", "[history][catchup]") // simulate 5 buffered ledgers and at last we need one closing ledger to // get us into synced state. auto b = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, + std::numeric_limits::max(), Config::TESTDB_DEFAULT, std::string("Catchup to second prefix of published history")); REQUIRE(catchupSimulation.catchupOnline(b, freq + 10, 5)); REQUIRE(b->getLedgerManager().getLastClosedLedgerNum() == 2 * freq + 7); @@ -969,9 +963,9 @@ TEST_CASE("Catchup with protocol upgrade", "[catchup][history]") for (auto count : catchupLedgers) { auto a = catchupSimulation.createCatchupApplication( - count, Config::TESTDB_IN_MEMORY_SQLITE, + count, Config::TESTDB_DEFAULT, std::string("full, ") + resumeModeName(count) + ", " + - dbModeName(Config::TESTDB_IN_MEMORY_SQLITE)); + dbModeName(Config::TESTDB_DEFAULT)); REQUIRE(a->getLedgerManager() .getLastClosedLedgerHeader() .header.ledgerVersion == 0); @@ -1016,8 +1010,8 @@ TEST_CASE("Catchup fatal failure", "[catchup][history]") catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 5); auto a = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - std::string("Catchup retry"), false, false, + std::numeric_limits::max(), Config::TESTDB_DEFAULT, + std::string("Catchup retry"), false, catchupSimulation.getApp().getConfig().LEDGER_PROTOCOL_VERSION - 1); REQUIRE(!catchupSimulation.catchupOnline(a, 10, 5)); @@ -1056,9 +1050,9 @@ TEST_CASE("Catchup non-initentry buckets to initentry-supporting works", for (auto count : counts) { auto a = catchupSimulation.createCatchupApplication( - count, Config::TESTDB_IN_MEMORY_SQLITE, + count, Config::TESTDB_DEFAULT, std::string("full, ") + resumeModeName(count) + ", " + - dbModeName(Config::TESTDB_IN_MEMORY_SQLITE)); + dbModeName(Config::TESTDB_DEFAULT)); REQUIRE(catchupSimulation.catchupOnline(a, checkpointLedger - 2)); // Check that during catchup/replay, we did not use any INITENTRY code, @@ -1131,10 +1125,10 @@ TEST_CASE("Publish catchup alternation with stall", catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 5); auto completeApp = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, + std::numeric_limits::max(), Config::TESTDB_DEFAULT, std::string("completeApp")); auto minimalApp = catchupSimulation.createCatchupApplication( - 0, Config::TESTDB_IN_MEMORY_SQLITE, std::string("minimalApp")); + 0, Config::TESTDB_DEFAULT, std::string("minimalApp")); REQUIRE(catchupSimulation.catchupOnline(completeApp, checkpointLedger, 5)); REQUIRE(catchupSimulation.catchupOnline(minimalApp, checkpointLedger, 5)); @@ -1182,8 +1176,7 @@ TEST_CASE("Publish catchup via s3", "[!hide][s3]") catchupSimulation.ensureOfflineCatchupPossible(checkpointLedger); auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "s3"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "s3"); REQUIRE(catchupSimulation.catchupOnline(app, checkpointLedger, 5)); } @@ -1216,9 +1209,10 @@ TEST_CASE_VERSIONS( while (hm.getPublishQueueCount() != 1) { - uint32_t ledger = lm.getLastClosedLedgerNum() + 1; - bl.addBatch( - *app, ledger, cfg.LEDGER_PROTOCOL_VERSION, {}, + auto lcl = lm.getLastClosedLedgerHeader(); + lcl.header.ledgerSeq += 1; + BucketTestUtils::addBatchAndUpdateSnapshot( + bl, *app, lcl.header, {}, LedgerTestUtils::generateValidUniqueLedgerEntries(8), {}); clock.crank(true); } @@ -1254,7 +1248,7 @@ TEST_CASE_VERSIONS( TEST_CASE("persist publish queue", "[history][publish][acceptance]") { - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); cfg.MANUAL_CLOSE = false; cfg.MAX_CONCURRENT_SUBPROCESSES = 0; @@ -1319,8 +1313,7 @@ TEST_CASE("catchup with a gap", "[history][catchup][acceptance]") // Catch up successfully the first time auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app2"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app2"); REQUIRE(catchupSimulation.catchupOnline(app, checkpointLedger, 5)); // Now generate a little more history @@ -1357,7 +1350,7 @@ TEST_CASE("Catchup recent", "[history][catchup][acceptance]") auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(3); catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 5); - auto dbMode = Config::TESTDB_IN_MEMORY_SQLITE; + auto dbMode = Config::TESTDB_DEFAULT; std::vector apps; // Network has published 0x3f (63), 0x7f (127) and 0xbf (191) @@ -1406,7 +1399,7 @@ TEST_CASE("Catchup manual", "[history][catchup][acceptance]") CatchupSimulation catchupSimulation{}; auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(6); catchupSimulation.ensureOfflineCatchupPossible(checkpointLedger); - auto dbMode = Config::TESTDB_IN_MEMORY_SQLITE; + auto dbMode = Config::TESTDB_DEFAULT; // Test every 10th scenario for (size_t i = 0; i < stellar::gCatchupRangeCases.size(); i += 10) @@ -1428,7 +1421,7 @@ TEST_CASE("Catchup manual", "[history][catchup][acceptance]") // Check that initializing a history store that already exists, fails. TEST_CASE("initialize existing history store fails", "[history]") { - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); TmpDirHistoryConfigurator tcfg; cfg = tcfg.configure(cfg, true); @@ -1456,8 +1449,7 @@ TEST_CASE("Catchup failure recovery with buffered checkpoint", // Catch up successfully the first time auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app2"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app2"); REQUIRE(catchupSimulation.catchupOnline(app, checkpointLedger, 5)); auto init = app->getLedgerManager().getLastClosedLedgerNum() + 2; @@ -1493,8 +1485,7 @@ TEST_CASE("Change ordering of buffered ledgers", "[history][catchup]") CatchupSimulation catchupSimulation{}; auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app2"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app2"); auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(1); catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 15); @@ -1532,8 +1523,7 @@ TEST_CASE("Introduce and fix gap without starting catchup", CatchupSimulation catchupSimulation{}; auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app2"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app2"); auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(1); catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 15); @@ -1574,8 +1564,7 @@ TEST_CASE("Receive trigger and checkpoint ledger out of order", CatchupSimulation catchupSimulation{}; auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app2"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app2"); auto& lm = app->getLedgerManager(); auto& cm = app->getCatchupManager(); @@ -1608,8 +1597,7 @@ TEST_CASE("Externalize gap while catchup work is running", "[history][catchup]") CatchupSimulation catchupSimulation{}; auto app = catchupSimulation.createCatchupApplication( - std::numeric_limits::max(), Config::TESTDB_IN_MEMORY_SQLITE, - "app2"); + std::numeric_limits::max(), Config::TESTDB_DEFAULT, "app2"); auto checkpointLedger = catchupSimulation.getLastCheckpointLedger(1); catchupSimulation.ensureOnlineCatchupPossible(checkpointLedger, 60); diff --git a/src/history/test/HistoryTestsUtils.cpp b/src/history/test/HistoryTestsUtils.cpp index 87889f97f6..5119d372a4 100644 --- a/src/history/test/HistoryTestsUtils.cpp +++ b/src/history/test/HistoryTestsUtils.cpp @@ -710,7 +710,7 @@ CatchupSimulation::crankUntil(Application::pointer app, Application::pointer CatchupSimulation::createCatchupApplication( uint32_t count, Config::TestDbMode dbMode, std::string const& appName, - bool publish, bool useBucketListDB, std::optional ledgerVersion) + bool publish, std::optional ledgerVersion) { CLOG_INFO(History, "****"); CLOG_INFO(History, "**** Create app for catchup: '{}'", appName); @@ -721,7 +721,6 @@ CatchupSimulation::createCatchupApplication( mCfgs.back().CATCHUP_COMPLETE = count == std::numeric_limits::max(); mCfgs.back().CATCHUP_RECENT = count; - mCfgs.back().DEPRECATED_SQL_LEDGER_STATE = !useBucketListDB; if (ledgerVersion) { mCfgs.back().TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION = *ledgerVersion; diff --git a/src/history/test/HistoryTestsUtils.h b/src/history/test/HistoryTestsUtils.h index 863a0f9fed..eace1f3a6e 100644 --- a/src/history/test/HistoryTestsUtils.h +++ b/src/history/test/HistoryTestsUtils.h @@ -259,7 +259,7 @@ class CatchupSimulation Application::pointer createCatchupApplication( uint32_t count, Config::TestDbMode dbMode, std::string const& appName, - bool publish = false, bool useBucketListDB = false, + bool publish = false, std::optional ledgerVersion = std::nullopt); bool catchupOffline(Application::pointer app, uint32_t toLedger, bool extraValidation = false); diff --git a/src/invariant/test/AccountSubEntriesCountIsValidTests.cpp b/src/invariant/test/AccountSubEntriesCountIsValidTests.cpp index f6eeda78dc..acc308be6b 100644 --- a/src/invariant/test/AccountSubEntriesCountIsValidTests.cpp +++ b/src/invariant/test/AccountSubEntriesCountIsValidTests.cpp @@ -292,7 +292,7 @@ deleteRandomSubEntryFromAccount(Application& app, LedgerEntry& le, TEST_CASE("Create account with no subentries", "[invariant][accountsubentriescount]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"AccountSubEntriesCountIsValid"}; VirtualClock clock; Application::pointer app = createTestApplication(clock, cfg); @@ -309,7 +309,7 @@ TEST_CASE("Create account then add signers and subentries", "[invariant][accountsubentriescount]") { stellar::uniform_int_distribution changesDist(-1, 2); - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"AccountSubEntriesCountIsValid"}; for (uint32_t i = 0; i < 50; ++i) diff --git a/src/invariant/test/BucketListIsConsistentWithDatabaseTests.cpp b/src/invariant/test/BucketListIsConsistentWithDatabaseTests.cpp index 1604108da9..df1e0443dc 100644 --- a/src/invariant/test/BucketListIsConsistentWithDatabaseTests.cpp +++ b/src/invariant/test/BucketListIsConsistentWithDatabaseTests.cpp @@ -5,6 +5,7 @@ #include "bucket/BucketInputIterator.h" #include "bucket/BucketManager.h" #include "bucket/BucketOutputIterator.h" +#include "bucket/test/BucketTestUtils.h" #include "catchup/ApplyBucketsWork.h" #include "ledger/LedgerHashUtils.h" #include "ledger/LedgerTxn.h" @@ -143,8 +144,9 @@ struct BucketListGenerator std::vector deadEntries; auto header = ltx.loadHeader().current(); ltx.getAllEntries(initEntries, liveEntries, deadEntries); - app->getBucketManager().addBatch(*app, header, initEntries, liveEntries, - deadEntries); + BucketTestUtils::addBatchAndUpdateSnapshot( + app->getBucketManager().getBucketList(), *app, header, initEntries, + liveEntries, deadEntries); ltx.commit(); } diff --git a/src/invariant/test/ConservationOfLumensTests.cpp b/src/invariant/test/ConservationOfLumensTests.cpp index 9fee45c9ba..6b91b127b0 100644 --- a/src/invariant/test/ConservationOfLumensTests.cpp +++ b/src/invariant/test/ConservationOfLumensTests.cpp @@ -153,7 +153,7 @@ TEST_CASE("Fee pool change without inflation", TEST_CASE("Account balances changed without inflation", "[invariant][conservationoflumens]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"ConservationOfLumens"}; uint32_t const N = 10; @@ -187,7 +187,7 @@ TEST_CASE("Account balances changed without inflation", TEST_CASE("Account balances unchanged without inflation", "[invariant][conservationoflumens]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"ConservationOfLumens"}; uint32_t const N = 10; @@ -228,7 +228,7 @@ TEST_CASE("Account balances unchanged without inflation", TEST_CASE("Inflation changes are consistent", "[invariant][conservationoflumens]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"ConservationOfLumens"}; stellar::uniform_int_distribution payoutsDist(1, 100); stellar::uniform_int_distribution amountDist(1, 100000); diff --git a/src/invariant/test/LedgerEntryIsValidTests.cpp b/src/invariant/test/LedgerEntryIsValidTests.cpp index 5deda18fe9..4d946183ee 100644 --- a/src/invariant/test/LedgerEntryIsValidTests.cpp +++ b/src/invariant/test/LedgerEntryIsValidTests.cpp @@ -19,7 +19,7 @@ using namespace stellar::InvariantTestUtils; TEST_CASE("Trigger validity check for each entry type", "[invariant][ledgerentryisvalid]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"LedgerEntryIsValid"}; VirtualClock clock; @@ -67,7 +67,7 @@ TEST_CASE("Trigger validity check for each entry type", TEST_CASE("Modify ClaimableBalanceEntry", "[invariant][ledgerentryisvalid][claimablebalance]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"LedgerEntryIsValid"}; VirtualClock clock; diff --git a/src/invariant/test/LiabilitiesMatchOffersTests.cpp b/src/invariant/test/LiabilitiesMatchOffersTests.cpp index a596746966..1c95224341 100644 --- a/src/invariant/test/LiabilitiesMatchOffersTests.cpp +++ b/src/invariant/test/LiabilitiesMatchOffersTests.cpp @@ -12,6 +12,7 @@ #include "lib/catch.hpp" #include "lib/util/stdrandom.h" #include "main/Application.h" +#include "main/Config.h" #include "test/TestUtils.h" #include "test/test.h" #include "transactions/TransactionUtils.h" @@ -57,7 +58,7 @@ updateAccountWithRandomBalance(LedgerEntry le, Application& app, TEST_CASE("Create account above minimum balance", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; for (uint32_t i = 0; i < 10; ++i) @@ -74,7 +75,7 @@ TEST_CASE("Create account above minimum balance", TEST_CASE("Create account below minimum balance", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; for (uint32_t i = 0; i < 10; ++i) @@ -91,7 +92,7 @@ TEST_CASE("Create account below minimum balance", TEST_CASE("Create account then decrease balance below minimum", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; for (uint32_t i = 0; i < 10; ++i) @@ -110,7 +111,7 @@ TEST_CASE("Create account then decrease balance below minimum", TEST_CASE("Account below minimum balance increases but stays below minimum", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; for (uint32_t i = 0; i < 10; ++i) @@ -129,7 +130,7 @@ TEST_CASE("Account below minimum balance increases but stays below minimum", TEST_CASE("Account below minimum balance decreases", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; for (uint32_t i = 0; i < 10; ++i) @@ -249,7 +250,7 @@ generateBuyingLiabilities(Application& app, LedgerEntry offer, bool excess, TEST_CASE("Create account then increase liabilities without changing balance", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; VirtualClock clock; @@ -288,7 +289,7 @@ TEST_CASE("Create account then increase liabilities without changing balance", TEST_CASE("Invariant for liabilities", "[invariant][liabilitiesmatchoffers]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.INVARIANT_CHECKS = {"LiabilitiesMatchOffers"}; VirtualClock clock; diff --git a/src/invariant/test/OrderBookIsNotCrossedTests.cpp b/src/invariant/test/OrderBookIsNotCrossedTests.cpp index 0620a1aeb9..c10a6a5daf 100644 --- a/src/invariant/test/OrderBookIsNotCrossedTests.cpp +++ b/src/invariant/test/OrderBookIsNotCrossedTests.cpp @@ -109,7 +109,7 @@ TEST_CASE("OrderBookIsNotCrossed in-memory order book is consistent with " "[invariant][OrderBookIsNotCrossed]") { VirtualClock clock; - auto cfg = getTestConfig(0); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); // When testing the order book not crossed invariant, enable it and no other // invariants (these tests do things which violate other invariants). cfg.INVARIANT_CHECKS = {}; @@ -185,7 +185,7 @@ TEST_CASE("OrderBookIsNotCrossed properly throws if order book is crossed", { VirtualClock clock; - auto cfg = getTestConfig(0); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); // When testing the order book not crossed invariant, enable it and no other // invariants (these tests do things which violate other invariants). cfg.INVARIANT_CHECKS = {}; diff --git a/src/invariant/test/SponsorshipCountIsValidTests.cpp b/src/invariant/test/SponsorshipCountIsValidTests.cpp index e7f3e05063..9f35cd5292 100644 --- a/src/invariant/test/SponsorshipCountIsValidTests.cpp +++ b/src/invariant/test/SponsorshipCountIsValidTests.cpp @@ -18,7 +18,7 @@ using namespace stellar::InvariantTestUtils; TEST_CASE("sponsorship invariant", "[invariant][sponsorshipcountisvalid]") { VirtualClock clock; - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.INVARIANT_CHECKS = {"SponsorshipCountIsValid"}; auto app = createTestApplication(clock, cfg); diff --git a/src/ledger/LedgerStateSnapshot.h b/src/ledger/LedgerStateSnapshot.h index d60e5eb1ae..7a57b1c771 100644 --- a/src/ledger/LedgerStateSnapshot.h +++ b/src/ledger/LedgerStateSnapshot.h @@ -130,6 +130,10 @@ class BucketSnapshotState : public AbstractLedgerStateSnapshot // A helper class to create and query read-only snapshots // Automatically decides whether to create a BucketList (recommended), or SQL // snapshot (deprecated, but currently supported) +// NOTE: LedgerSnapshot is meant to be short-lived, and should not be persisted +// across _different_ ledgers, as the state under the hood might change. Users +// are expected to construct a new LedgerSnapshot each time they want to query +// ledger state. class LedgerSnapshot : public NonMovableOrCopyable { std::unique_ptr mGetter; diff --git a/src/ledger/NetworkConfig.cpp b/src/ledger/NetworkConfig.cpp index 4408b28679..3ca192152c 100644 --- a/src/ledger/NetworkConfig.cpp +++ b/src/ledger/NetworkConfig.cpp @@ -1470,7 +1470,7 @@ SorobanNetworkConfig::getAverageBucketListSize() const } #ifdef BUILD_TESTS -void +LedgerEntry writeConfigSettingEntry(ConfigSettingEntry const& configSetting, AbstractLedgerTxn& ltxRoot, Application& app) { @@ -1480,22 +1480,12 @@ writeConfigSettingEntry(ConfigSettingEntry const& configSetting, e.data.type(CONFIG_SETTING); e.data.configSetting() = configSetting; - // If testing with BucketListDB, we need to commit directly to the - // BucketList - if (app.getConfig().isUsingBucketListDB()) - { - auto lcl = app.getLedgerManager().getLastClosedLedgerHeader(); - lcl.header.ledgerSeq += 1; - BucketTestUtils::addBatchAndUpdateSnapshot( - app.getBucketManager().getBucketList(), app, lcl.header, {}, {e}, - {}); - } - LedgerTxn ltx(ltxRoot); auto ltxe = ltx.load(LedgerEntryKey(e)); releaseAssert(ltxe); ltxe.current() = e; ltx.commit(); + return e; } void @@ -1504,22 +1494,26 @@ SorobanNetworkConfig::writeAllSettings(AbstractLedgerTxn& ltx, { ZoneScoped; + std::vector entries; ConfigSettingEntry maxContractSizeEntry( CONFIG_SETTING_CONTRACT_MAX_SIZE_BYTES); maxContractSizeEntry.contractMaxSizeBytes() = mMaxContractSizeBytes; - writeConfigSettingEntry(maxContractSizeEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(maxContractSizeEntry, ltx, app)); ConfigSettingEntry maxContractDataKeySizeEntry( CONFIG_SETTING_CONTRACT_DATA_KEY_SIZE_BYTES); maxContractDataKeySizeEntry.contractDataKeySizeBytes() = mMaxContractDataKeySizeBytes; - writeConfigSettingEntry(maxContractDataKeySizeEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(maxContractDataKeySizeEntry, ltx, app)); ConfigSettingEntry maxContractDataEntrySizeEntry( CONFIG_SETTING_CONTRACT_DATA_ENTRY_SIZE_BYTES); maxContractDataEntrySizeEntry.contractDataEntrySizeBytes() = mMaxContractDataEntrySizeBytes; - writeConfigSettingEntry(maxContractDataEntrySizeEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(maxContractDataEntrySizeEntry, ltx, app)); ConfigSettingEntry computeSettingsEntry(CONFIG_SETTING_CONTRACT_COMPUTE_V0); computeSettingsEntry.contractCompute().ledgerMaxInstructions = @@ -1529,7 +1523,8 @@ SorobanNetworkConfig::writeAllSettings(AbstractLedgerTxn& ltx, computeSettingsEntry.contractCompute().feeRatePerInstructionsIncrement = mFeeRatePerInstructionsIncrement; computeSettingsEntry.contractCompute().txMemoryLimit = mTxMemoryLimit; - writeConfigSettingEntry(computeSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(computeSettingsEntry, ltx, app)); ConfigSettingEntry ledgerAccessSettingsEntry( CONFIG_SETTING_CONTRACT_LEDGER_COST_V0); @@ -1549,13 +1544,15 @@ SorobanNetworkConfig::writeAllSettings(AbstractLedgerTxn& ltx, cost.writeFee1KBBucketListLow = mWriteFee1KBBucketListLow; cost.writeFee1KBBucketListHigh = mWriteFee1KBBucketListHigh; cost.bucketListWriteFeeGrowthFactor = mBucketListWriteFeeGrowthFactor; - writeConfigSettingEntry(ledgerAccessSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(ledgerAccessSettingsEntry, ltx, app)); ConfigSettingEntry historicalSettingsEntry( CONFIG_SETTING_CONTRACT_HISTORICAL_DATA_V0); historicalSettingsEntry.contractHistoricalData().feeHistorical1KB = mFeeHistorical1KB; - writeConfigSettingEntry(historicalSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(historicalSettingsEntry, ltx, app)); ConfigSettingEntry contractEventsSettingsEntry( CONFIG_SETTING_CONTRACT_EVENTS_V0); @@ -1563,7 +1560,8 @@ SorobanNetworkConfig::writeAllSettings(AbstractLedgerTxn& ltx, mFeeContractEvents1KB; contractEventsSettingsEntry.contractEvents().txMaxContractEventsSizeBytes = mTxMaxContractEventsSizeBytes; - writeConfigSettingEntry(contractEventsSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(contractEventsSettingsEntry, ltx, app)); ConfigSettingEntry bandwidthSettingsEntry( CONFIG_SETTING_CONTRACT_BANDWIDTH_V0); @@ -1572,31 +1570,61 @@ SorobanNetworkConfig::writeAllSettings(AbstractLedgerTxn& ltx, bandwidthSettingsEntry.contractBandwidth().txMaxSizeBytes = mTxMaxSizeBytes; bandwidthSettingsEntry.contractBandwidth().feeTxSize1KB = mFeeTransactionSize1KB; - writeConfigSettingEntry(bandwidthSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(bandwidthSettingsEntry, ltx, app)); ConfigSettingEntry executionLanesSettingsEntry( CONFIG_SETTING_CONTRACT_EXECUTION_LANES); executionLanesSettingsEntry.contractExecutionLanes().ledgerMaxTxCount = mLedgerMaxTxCount; - writeConfigSettingEntry(executionLanesSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(executionLanesSettingsEntry, ltx, app)); ConfigSettingEntry cpuCostParamsEntry( CONFIG_SETTING_CONTRACT_COST_PARAMS_CPU_INSTRUCTIONS); cpuCostParamsEntry.contractCostParamsCpuInsns() = mCpuCostParams; - writeConfigSettingEntry(cpuCostParamsEntry, ltx, app); + entries.emplace_back(writeConfigSettingEntry(cpuCostParamsEntry, ltx, app)); ConfigSettingEntry memCostParamsEntry( CONFIG_SETTING_CONTRACT_COST_PARAMS_MEMORY_BYTES); memCostParamsEntry.contractCostParamsMemBytes() = mMemCostParams; - writeConfigSettingEntry(memCostParamsEntry, ltx, app); + entries.emplace_back(writeConfigSettingEntry(memCostParamsEntry, ltx, app)); ConfigSettingEntry stateArchivalSettingsEntry( CONFIG_SETTING_STATE_ARCHIVAL); stateArchivalSettingsEntry.stateArchivalSettings() = mStateArchivalSettings; - writeConfigSettingEntry(stateArchivalSettingsEntry, ltx, app); + entries.emplace_back( + writeConfigSettingEntry(stateArchivalSettingsEntry, ltx, app)); writeBucketListSizeWindow(ltx); updateEvictionIterator(ltx, mEvictionIterator); + + // Load updated BucketList size window and eviction iterator so we can add + // it to the BucketList + LedgerKey windowKey(CONFIG_SETTING); + windowKey.configSetting().configSettingID = + ConfigSettingID::CONFIG_SETTING_BUCKETLIST_SIZE_WINDOW; + auto windowTxle = ltx.load(windowKey); + releaseAssert(windowTxle); + entries.push_back(windowTxle.current()); + + LedgerKey iterKey(CONFIG_SETTING); + iterKey.configSetting().configSettingID = + ConfigSettingID::CONFIG_SETTING_EVICTION_ITERATOR; + auto iterTxle = ltx.loadWithoutRecord(iterKey); + releaseAssert(iterTxle); + entries.push_back(iterTxle.current()); + + // If testing with BucketListDB, we need to commit directly to the + // BucketList + if (app.getConfig().isUsingBucketListDB()) + { + auto lcl = app.getLedgerManager().getLastClosedLedgerHeader(); + lcl.header.ledgerSeq += 1; + BucketTestUtils::addBatchAndUpdateSnapshot( + app.getBucketManager().getBucketList(), app, lcl.header, {}, + entries, {}); + } } #endif diff --git a/src/ledger/test/LedgerCloseMetaStreamTests.cpp b/src/ledger/test/LedgerCloseMetaStreamTests.cpp index 717c478d26..efdff716d5 100644 --- a/src/ledger/test/LedgerCloseMetaStreamTests.cpp +++ b/src/ledger/test/LedgerCloseMetaStreamTests.cpp @@ -89,7 +89,11 @@ TEST_CASE("LedgerCloseMetaStream file descriptor - LIVE_NODE", Config const& cfg2 = getTestConfig(2); Config const& cfg3 = getTestConfig(3); Config cfg4 = getTestConfig(4); - Config cfg5 = getTestConfig(5); + Config cfg5 = getTestConfig( + 5, + Config:: + TESTDB_IN_MEMORY_NO_OFFERS); // needed by + // EXPERIMENTAL_PRECAUTION_DELAY_META // Step 2: open writable files and pass them to configs 4 and 5 // (watchers). @@ -111,7 +115,6 @@ TEST_CASE("LedgerCloseMetaStream file descriptor - LIVE_NODE", cfg4.EXPERIMENTAL_PRECAUTION_DELAY_META = false; cfg5.EXPERIMENTAL_PRECAUTION_DELAY_META = true; - cfg5.setInMemoryMode(); // needed by EXPERIMENTAL_PRECAUTION_DELAY_META // Step 3: Run simulation a few steps to stream metadata. auto app1 = simulation->addNode(vNode1SecretKey, qSet, &cfg1); @@ -605,7 +608,7 @@ TEST_CASE_VERSIONS("meta stream contains reasonable meta", "[ledgerclosemeta]") createResources, 1000); closeLedger(test.getApp(), {tx1, tx2, tx3, tx4, tx5}); - targetSeq = 27; + targetSeq = 28; } else { @@ -616,6 +619,9 @@ TEST_CASE_VERSIONS("meta stream contains reasonable meta", "[ledgerclosemeta]") auto txFee = lm.getLastTxFee(); auto bal = app->getLedgerManager().getLastMinBalance(2); + // We're going to examine the meta generated by ledger #6. + targetSeq = 6; + if (appProtocolVersionStartsFrom(*app, SOROBAN_PROTOCOL_VERSION)) { modifySorobanNetworkConfig( @@ -623,6 +629,9 @@ TEST_CASE_VERSIONS("meta stream contains reasonable meta", "[ledgerclosemeta]") cfg.mStateArchivalSettings .bucketListWindowSamplePeriod = 1; }); + + // Modify Soroban network config closes a ledger + ++targetSeq; } auto root = TestAccount::createRoot(*app); @@ -659,9 +668,6 @@ TEST_CASE_VERSIONS("meta stream contains reasonable meta", "[ledgerclosemeta]") 5000); } closeLedger(*app, txs); - - // We're going to examine the meta generated by ledger #6. - targetSeq = 6; } XDRInputFileStream in; diff --git a/src/ledger/test/LedgerHeaderTests.cpp b/src/ledger/test/LedgerHeaderTests.cpp index 39a5e15bd8..6152668829 100644 --- a/src/ledger/test/LedgerHeaderTests.cpp +++ b/src/ledger/test/LedgerHeaderTests.cpp @@ -60,7 +60,7 @@ TEST_CASE("genesisledger", "[ledger]") TEST_CASE("ledgerheader", "[ledger]") { - Config cfg(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); + Config cfg(getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT)); Hash saved; { diff --git a/src/ledger/test/LedgerTestUtils.cpp b/src/ledger/test/LedgerTestUtils.cpp index 8c6c16b484..6835e3445f 100644 --- a/src/ledger/test/LedgerTestUtils.cpp +++ b/src/ledger/test/LedgerTestUtils.cpp @@ -636,6 +636,13 @@ std::vector generateValidLedgerEntriesWithExclusions( std::unordered_set const& excludedTypes, size_t n) { + + if (n > 1000) + { + throw "generateValidLedgerEntryWithExclusions: must generate <= 1000 " + "entries"; + } + std::vector res; res.reserve(n); for (int i = 0; i < n; ++i) @@ -649,6 +656,12 @@ std::vector generateValidLedgerEntryKeysWithExclusions( std::unordered_set const& excludedTypes, size_t n) { + if (n > 1000) + { + throw "generateValidLedgerEntryKeysWithExclusions: must generate <= " + "1000 entries"; + } + auto entries = LedgerTestUtils::generateValidLedgerEntriesWithExclusions( excludedTypes, n); std::vector keys; diff --git a/src/ledger/test/LedgerTests.cpp b/src/ledger/test/LedgerTests.cpp index cf5a4df3eb..495540d97d 100644 --- a/src/ledger/test/LedgerTests.cpp +++ b/src/ledger/test/LedgerTests.cpp @@ -15,7 +15,7 @@ using namespace stellar; TEST_CASE("cannot close ledger with unsupported ledger version", "[ledger]") { VirtualClock clock; - Application::pointer app = Application::create(clock, getTestConfig(0)); + Application::pointer app = Application::create(clock, getTestConfig()); app->start(); auto applyEmptyLedger = [&]() { diff --git a/src/ledger/test/LedgerTxnTests.cpp b/src/ledger/test/LedgerTxnTests.cpp index 39a596c246..ba3d2a698c 100644 --- a/src/ledger/test/LedgerTxnTests.cpp +++ b/src/ledger/test/LedgerTxnTests.cpp @@ -13,6 +13,7 @@ #include "lib/catch.hpp" #include "lib/util/stdrandom.h" #include "main/Application.h" +#include "main/Config.h" #include "test/TestAccount.h" #include "test/TestUtils.h" #include "test/TxTests.h" @@ -466,7 +467,12 @@ TEST_CASE("LedgerTxn round trip", "[ledgertxn]") SECTION("with normal caching") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig(0, mode)); + // BucketListDB incompatible with direct root commits + auto app = createTestApplication( + clock, + getTestConfig(0, mode == Config::TESTDB_DEFAULT + ? Config::TESTDB_IN_MEMORY_NO_OFFERS + : mode)); runTest(app->getLedgerTxnRoot()); } @@ -474,7 +480,12 @@ TEST_CASE("LedgerTxn round trip", "[ledgertxn]") SECTION("with no cache") { VirtualClock clock; - auto cfg = getTestConfig(0, mode); + + // BucketListDB incompatible with direct root commits + auto cfg = + getTestConfig(0, mode == Config::TESTDB_DEFAULT + ? Config::TESTDB_IN_MEMORY_NO_OFFERS + : mode); cfg.ENTRY_CACHE_SIZE = 0; auto app = createTestApplication(clock, cfg); @@ -488,6 +499,16 @@ TEST_CASE("LedgerTxn round trip", "[ledgertxn]") runTestWithDbMode(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTestWithDbMode(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTestWithDbMode(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -697,6 +718,16 @@ TEST_CASE("LedgerTxn createWithoutLoading and updateWithoutLoading", runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -787,6 +818,16 @@ TEST_CASE("LedgerTxn erase", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -882,6 +923,16 @@ TEST_CASE("LedgerTxn eraseWithoutLoading", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -983,7 +1034,8 @@ testInflationWinners( if (updates.size() > 1) { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); testAtRoot(*app); } @@ -992,7 +1044,7 @@ testInflationWinners( if (updates.size() > 1) { VirtualClock clock; - auto cfg = getTestConfig(); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.ENTRY_CACHE_SIZE = 0; auto app = createTestApplication(clock, cfg); @@ -1002,7 +1054,8 @@ testInflationWinners( // first changes are in child of LedgerTxnRoot { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); testInflationWinners(app->getLedgerTxnRoot(), maxWinners, minBalance, expected, updates.cbegin(), updates.cend()); @@ -1336,6 +1389,16 @@ TEST_CASE("LedgerTxn loadHeader", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -1445,17 +1508,31 @@ TEST_CASE_VERSIONS("LedgerTxn load", "[ledgertxn]") { auto native = txtest::makeNativeAsset(); UNSCOPED_INFO("native asset on trustline key"); - REQUIRE_THROWS_AS( - ltx1.load(trustlineKey(acc.getPublicKey(), native)), - NonSociRelatedException); + + // Invariant not supported in BucketListDB and in-memory + // mode + if (mode != Config::TESTDB_DEFAULT && + mode != Config::TESTDB_IN_MEMORY_NO_OFFERS) + { + REQUIRE_THROWS_AS(ltx1.load(trustlineKey( + acc.getPublicKey(), native)), + NonSociRelatedException); + } } { auto usd = txtest::makeAsset(acc, "usd"); UNSCOPED_INFO("issuer on trustline key"); - REQUIRE_THROWS_AS( - ltx1.load(trustlineKey(acc.getPublicKey(), usd)), - NonSociRelatedException); + + // Invariant not supported in BucketListDB and in-memory + // mode + if (mode != Config::TESTDB_DEFAULT && + mode != Config::TESTDB_IN_MEMORY_NO_OFFERS) + { + REQUIRE_THROWS_AS(ltx1.load(trustlineKey( + acc.getPublicKey(), usd)), + NonSociRelatedException); + } } { @@ -1465,8 +1542,14 @@ TEST_CASE_VERSIONS("LedgerTxn load", "[ledgertxn]") { auto key = trustlineKey(acc2.getPublicKey(), asset); - REQUIRE_THROWS_AS(ltx1.load(key), - NonSociRelatedException); + // Invariant not supported in BucketListDB and + // in-memory mode + if (mode != Config::TESTDB_DEFAULT && + mode != Config::TESTDB_IN_MEMORY_NO_OFFERS) + { + REQUIRE_THROWS_AS(ltx1.load(key), + NonSociRelatedException); + } } } @@ -1500,6 +1583,16 @@ TEST_CASE_VERSIONS("LedgerTxn load", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -1845,6 +1938,16 @@ TEST_CASE("LedgerTxn loadAllOffers", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -2264,6 +2367,11 @@ TEST_CASE("LedgerTxn loadBestOffer", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -2684,15 +2792,12 @@ TEST_CASE("LedgerTxnRoot prefetch classic entries", "[ledgertxn]") SECTION("default") { - auto cfg = getTestConfig(); - cfg.DEPRECATED_SQL_LEDGER_STATE = false; - runTest(cfg); + runTest(getTestConfig()); } - SECTION("bucketlistdb") + + SECTION("sqlite") { - auto cfg = getTestConfig(); - cfg.DEPRECATED_SQL_LEDGER_STATE = false; - runTest(cfg); + runTest(getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE)); } #ifdef USE_POSTGRES @@ -3838,6 +3943,11 @@ TEST_CASE("LedgerTxn in memory order book", "[ledgertxn]") runTest(Config::TESTDB_DEFAULT); } + SECTION("sqlite") + { + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + #ifdef USE_POSTGRES SECTION("postgresql") { @@ -3874,9 +3984,9 @@ TEST_CASE_VERSIONS("LedgerTxn bulk-load offers", "[ledgertxn]") }); }; - SECTION("default") + SECTION("sqlite") { - runTest(Config::TESTDB_DEFAULT); + runTest(Config::TESTDB_ON_DISK_SQLITE); } #ifdef USE_POSTGRES @@ -4012,9 +4122,14 @@ TEST_CASE("Access deactivated entry", "[ledgertxn]") } }; - SECTION("default") + SECTION("sqlite") { - runTest(Config::TESTDB_DEFAULT); + runTest(Config::TESTDB_ON_DISK_SQLITE); + } + + SECTION("in-memory") + { + runTest(Config::TESTDB_IN_MEMORY_NO_OFFERS); } #ifdef USE_POSTGRES @@ -4070,7 +4185,7 @@ TEST_CASE("LedgerTxn generalized ledger entries", "[ledgertxn]") TEST_CASE("LedgerTxn best offers cache eviction", "[ledgertxn]") { VirtualClock clock; - auto cfg = getTestConfig(0); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); auto app = createTestApplication(clock, cfg); auto buying = autocheck::generator()(UINT32_MAX); @@ -4286,7 +4401,8 @@ testPoolShareTrustLinesByAccountAndAsset( if (updates.size() > 1) { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); for_versions_from(18, *app, [&] { testAtRoot(*app); }); } @@ -4295,7 +4411,7 @@ testPoolShareTrustLinesByAccountAndAsset( if (updates.size() > 1) { VirtualClock clock; - auto cfg = getTestConfig(); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); cfg.ENTRY_CACHE_SIZE = 0; auto app = createTestApplication(clock, cfg); @@ -4305,7 +4421,8 @@ testPoolShareTrustLinesByAccountAndAsset( // first changes are in child of LedgerTxnRoot { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); for_versions_from(18, *app, [&] { testPoolShareTrustLinesByAccountAndAsset( @@ -4332,7 +4449,8 @@ TEST_CASE_VERSIONS("LedgerTxn loadPoolShareTrustLinesByAccountAndAsset", SECTION("fails with children") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); LedgerTxn ltx1(app->getLedgerTxnRoot()); LedgerTxn ltx2(ltx1); @@ -4344,7 +4462,8 @@ TEST_CASE_VERSIONS("LedgerTxn loadPoolShareTrustLinesByAccountAndAsset", SECTION("fails if sealed") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); LedgerTxn ltx1(app->getLedgerTxnRoot()); ltx1.getDelta(); @@ -4415,8 +4534,7 @@ TEST_CASE_VERSIONS("LedgerTxn loadPoolShareTrustLinesByAccountAndAsset", TEST_CASE("InMemoryLedgerTxn simulate buckets", "[ledgertxn]") { VirtualClock clock; - Config cfg = getTestConfig(); - cfg.MODE_USES_IN_MEMORY_LEDGER = true; + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); @@ -4458,8 +4576,7 @@ TEST_CASE("InMemoryLedgerTxn simulate buckets", "[ledgertxn]") TEST_CASE("InMemoryLedgerTxn getOffersByAccountAndAsset", "[ledgertxn]") { VirtualClock clock; - Config cfg = getTestConfig(); - cfg.MODE_USES_IN_MEMORY_LEDGER = true; + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); @@ -4503,8 +4620,7 @@ TEST_CASE("InMemoryLedgerTxn getPoolShareTrustLinesByAccountAndAsset", "[ledgertxn]") { VirtualClock clock; - Config cfg = getTestConfig(); - cfg.MODE_USES_IN_MEMORY_LEDGER = true; + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); @@ -4553,8 +4669,7 @@ TEST_CASE_VERSIONS("InMemoryLedgerTxn close multiple ledgers with merges", "[ledgertxn]") { VirtualClock clock; - Config cfg = getTestConfig(); - cfg.MODE_USES_IN_MEMORY_LEDGER = true; + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); @@ -4578,8 +4693,7 @@ TEST_CASE_VERSIONS("InMemoryLedgerTxn close multiple ledgers with merges", TEST_CASE("InMemoryLedgerTxn filtering", "[ledgertxn]") { VirtualClock clock; - Config cfg = getTestConfig(); - cfg.MODE_USES_IN_MEMORY_LEDGER = true; + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); auto app = createTestApplication(clock, cfg); auto root = TestAccount::createRoot(*app); diff --git a/src/main/Config.cpp b/src/main/Config.cpp index 904fea1444..cecfa2ddf5 100644 --- a/src/main/Config.cpp +++ b/src/main/Config.cpp @@ -2264,6 +2264,7 @@ Config::setInMemoryMode() MODE_STORES_HISTORY_MISC = false; MODE_STORES_HISTORY_LEDGERHEADERS = false; MODE_ENABLES_BUCKETLIST = true; + BACKGROUND_EVICTION_SCAN = false; } bool diff --git a/src/main/Config.h b/src/main/Config.h index 06ab875005..45e344f205 100644 --- a/src/main/Config.h +++ b/src/main/Config.h @@ -116,14 +116,40 @@ class Config : public std::enable_shared_from_this typedef std::shared_ptr pointer; + // These test modes should be used in the following contexts: + // 1. TESTDB_DEFAULT / TESTDB_BUCKET_DB_VOLATILE: provides the most + // comprehensive end-to-end test, but does not support arbitrary ledger + // state writes via ltx root commits. All ledger state changes must occur + // via applying valid TXs or manually adding entries to the BucketList. + // BucketList state is not preserved over restarts. If this mode can be + // used, it should be. + // 2. TESTDB_IN_MEMORY_NO_OFFERS: allows arbitrary ledger state writes via + // ltx root commits, but does not test the offers table. Suitable for + // tests that required writes to the ledger state that cannot be achieved + // via valid TX application, such as testing invalid TX error codes or + // low level op testing. + // 3. TESTDB_IN_MEMORY_OFFERS: The same as TESTDB_IN_MEMORY_NO_OFFERS, but + // tests the offers table. Suitable for testing ops that interact with + // offers. + // 4. TESTDB_ON_DISK_SQLITE: Should only be used to test SQLITE specific + // database operations. + // 5. TESTDB_POSTGRESQL: Should only be used to test POSTGRESQL specific + // database operations. + // 6. TESTDB_BUCKET_DB_PERSISTENT: Same as TESTDB_BUCKET_DB_VOLATILE, but + // persists the BucketList over restart. This mode is very slow and + // should only be used for testing restart behavior or some low level + // BucketList features. enum TestDbMode { TESTDB_DEFAULT, - TESTDB_IN_MEMORY_SQLITE, + TESTDB_IN_MEMORY_OFFERS, TESTDB_ON_DISK_SQLITE, #ifdef USE_POSTGRES TESTDB_POSTGRESQL, #endif + TESTDB_IN_MEMORY_NO_OFFERS, + TESTDB_BUCKET_DB_VOLATILE, + TESTDB_BUCKET_DB_PERSISTENT, TESTDB_MODES }; diff --git a/src/main/test/ApplicationUtilsTests.cpp b/src/main/test/ApplicationUtilsTests.cpp index 068a39a42b..bc3e1e8451 100644 --- a/src/main/test/ApplicationUtilsTests.cpp +++ b/src/main/test/ApplicationUtilsTests.cpp @@ -401,10 +401,9 @@ TEST_CASE("verify checkpoints command - wait condition", "[applicationutils]") qSet.validators.push_back(vNode1NodeID); Config cfg1 = getTestConfig(1); - Config cfg2 = getTestConfig(2); + Config cfg2 = getTestConfig(2, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg2.FORCE_SCP = false; cfg2.NODE_IS_VALIDATOR = false; - cfg2.setInMemoryMode(); cfg2.MODE_DOES_CATCHUP = false; auto validator = simulation->addNode(vNode1SecretKey, qSet, &cfg1); @@ -627,8 +626,7 @@ TEST_CASE("application setup", "[applicationutils]") SECTION("in memory mode") { Config cfg1 = getTestConfig(1); - Config cfg2 = getTestConfig(2); - cfg2.setInMemoryMode(); + Config cfg2 = getTestConfig(2, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg2.DATABASE = SecretValue{minimalDBForInMemoryMode(cfg2)}; testInMemoryMode(cfg1, cfg2); } diff --git a/src/main/test/ExternalQueueTests.cpp b/src/main/test/ExternalQueueTests.cpp index 782acb3ec3..c44713ea7f 100644 --- a/src/main/test/ExternalQueueTests.cpp +++ b/src/main/test/ExternalQueueTests.cpp @@ -16,7 +16,7 @@ using namespace stellar; TEST_CASE("cursors", "[externalqueue]") { VirtualClock clock; - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE); Application::pointer app = createTestApplication(clock, cfg); ExternalQueue ps(*app); diff --git a/src/overlay/test/FloodTests.cpp b/src/overlay/test/FloodTests.cpp index 22df30efa5..e224530931 100644 --- a/src/overlay/test/FloodTests.cpp +++ b/src/overlay/test/FloodTests.cpp @@ -2,6 +2,8 @@ // under the Apache License, Version 2.0. See the COPYING file at the root // of this distribution or at http://www.apache.org/licenses/LICENSE-2.0 +#include "bucket/BucketManager.h" +#include "bucket/test/BucketTestUtils.h" #include "herder/Herder.h" #include "herder/HerderImpl.h" #include "ledger/LedgerManager.h" @@ -68,9 +70,12 @@ TEST_CASE("Flooding", "[flood][overlay][acceptance]") // need to create on all nodes for (auto n : nodes) { - LedgerTxn ltx(n->getLedgerTxnRoot(), false); - ltx.create(gen); - ltx.commit(); + auto const& header = n->getLedgerManager() + .getLastClosedLedgerHeader() + .header; + BucketTestUtils::addBatchAndUpdateSnapshot( + n->getBucketManager().getBucketList(), *n, header, {}, + {gen}, {}); } } } diff --git a/src/overlay/test/OverlayTests.cpp b/src/overlay/test/OverlayTests.cpp index d2d7d29748..7d29ae7c66 100644 --- a/src/overlay/test/OverlayTests.cpp +++ b/src/overlay/test/OverlayTests.cpp @@ -139,8 +139,9 @@ TEST_CASE("loopback peer send auth before hello", "[overlay][connections]") TEST_CASE("flow control byte capacity", "[overlay][flowcontrol]") { VirtualClock clock; - auto cfg1 = getTestConfig(0); - auto cfg2 = getTestConfig(1); + + auto cfg1 = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); + auto cfg2 = getTestConfig(1, Config::TESTDB_IN_MEMORY_NO_OFFERS); REQUIRE(cfg1.PEER_FLOOD_READING_CAPACITY != cfg1.PEER_FLOOD_READING_CAPACITY_BYTES); @@ -613,6 +614,10 @@ TEST_CASE("drop peers that dont respect capacity", "[overlay][flowcontrol]") cfg1.FLOW_CONTROL_SEND_MORE_BATCH_SIZE_BYTES = 1; auto app1 = createTestApplication(clock, cfg1, true, false); + auto app2 = createTestApplication(clock, cfg2, true, false); + app1->getHerder().setMaxClassicTxSize(txSize); + app2->getHerder().setMaxClassicTxSize(txSize); + app1->start(); if (appProtocolVersionStartsFrom(*app1, SOROBAN_PROTOCOL_VERSION)) { modifySorobanNetworkConfig(*app1, [txSize](SorobanNetworkConfig& cfg) { @@ -620,10 +625,6 @@ TEST_CASE("drop peers that dont respect capacity", "[overlay][flowcontrol]") }); } - auto app2 = createTestApplication(clock, cfg2, true, false); - app1->getHerder().setMaxClassicTxSize(txSize); - app2->getHerder().setMaxClassicTxSize(txSize); - app1->start(); app2->start(); LoopbackPeerConnection conn(*app1, *app2); @@ -767,7 +768,7 @@ TEST_CASE("outbound queue filtering", "[overlay][connections]") auto networkID = sha256(getTestConfig().NETWORK_PASSPHRASE); auto simulation = std::make_shared( Simulation::OVER_LOOPBACK, networkID, [](int i) { - auto cfg = getTestConfig(i, Config::TESTDB_ON_DISK_SQLITE); + auto cfg = getTestConfig(i, Config::TESTDB_BUCKET_DB_PERSISTENT); cfg.MAX_SLOTS_TO_REMEMBER = 3; return cfg; }); @@ -2094,7 +2095,7 @@ TEST_CASE("flow control when out of sync", "[overlay][flowcontrol]") REQUIRE(conn->getAcceptor()->isConnectedForTesting()); } -TEST_CASE("overlay flow control", "[overlay][flowcontrol]") +TEST_CASE("overlay flow control", "[overlay][flowcontrol][acceptance]") { auto networkID = sha256(getTestConfig().NETWORK_PASSPHRASE); auto simulation = diff --git a/src/simulation/CoreTests.cpp b/src/simulation/CoreTests.cpp index 21f52c5757..30f1bffd55 100644 --- a/src/simulation/CoreTests.cpp +++ b/src/simulation/CoreTests.cpp @@ -7,6 +7,7 @@ #include "bucket/BucketManager.h" #include "bucket/BucketManagerImpl.h" #include "bucket/LedgerCmp.h" +#include "bucket/test/BucketTestUtils.h" #include "crypto/SHA.h" #include "herder/HerderImpl.h" #include "herder/LedgerCloseData.h" @@ -253,7 +254,7 @@ TEST_CASE("resilience tests", "[resilience][simulation][!hide]") auto confGen = [](int configNum) -> Config { // we have to have persistent nodes as we want to simulate a restart - auto c = getTestConfig(configNum, Config::TESTDB_ON_DISK_SQLITE); + auto c = getTestConfig(configNum, Config::TESTDB_BUCKET_DB_PERSISTENT); return c; }; @@ -435,7 +436,7 @@ newLoadTestApp(VirtualClock& clock) #ifdef USE_POSTGRES !force_sqlite ? getTestConfig(0, Config::TESTDB_POSTGRESQL) : #endif - getTestConfig(0, Config::TESTDB_ON_DISK_SQLITE); + getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT); cfg.RUN_STANDALONE = false; // force maxTxSetSize to avoid throwing txSets on the floor during the first // ledger close @@ -685,8 +686,9 @@ TEST_CASE("Bucket list entries vs write throughput", "[scalability][!hide]") LedgerHeader lh; lh.ledgerVersion = Config::CURRENT_LEDGER_PROTOCOL_VERSION; lh.ledgerSeq = i; - app->getBucketManager().addBatch( - *app, lh, LedgerTestUtils::generateValidLedgerEntries(100), + BucketTestUtils::addBatchAndUpdateSnapshot( + app->getBucketManager().getBucketList(), *app, lh, + LedgerTestUtils::generateValidLedgerEntries(100), LedgerTestUtils::generateValidLedgerEntries(20), LedgerTestUtils::generateValidLedgerEntryKeysWithExclusions( {CONFIG_SETTING}, 5)); diff --git a/src/test/TestExceptions.cpp b/src/test/TestExceptions.cpp index 46311c6e63..aeebf0903a 100644 --- a/src/test/TestExceptions.cpp +++ b/src/test/TestExceptions.cpp @@ -658,7 +658,6 @@ throwIf(TransactionResult const& result) case END_SPONSORING_FUTURE_RESERVES: case REVOKE_SPONSORSHIP: // Sponsorship tests catch error codes at a higher level than this. - throw std::runtime_error("got error-result in test sponsorship tx"); break; case CLAWBACK: throwIf(opResult.tr().clawbackResult()); diff --git a/src/test/TestUtils.cpp b/src/test/TestUtils.cpp index c9f085e4e5..cc666cf78f 100644 --- a/src/test/TestUtils.cpp +++ b/src/test/TestUtils.cpp @@ -283,6 +283,7 @@ modifySorobanNetworkConfig(Application& app, ltx.commit(); // Need to close a ledger following call to `addBatch` from config upgrade + // to refresh cached state if (app.getConfig().isUsingBucketListDB()) { txtest::closeLedger(app); @@ -323,34 +324,7 @@ setSorobanNetworkConfigForTest(SorobanNetworkConfig& cfg) void overrideSorobanNetworkConfigForTest(Application& app) { - modifySorobanNetworkConfig(app, [](SorobanNetworkConfig& cfg) { - cfg.mMaxContractSizeBytes = 64 * 1024; - cfg.mMaxContractDataEntrySizeBytes = 64 * 1024; - - cfg.mTxMaxSizeBytes = 100 * 1024; - cfg.mLedgerMaxTransactionsSizeBytes = cfg.mTxMaxSizeBytes * 10; - - cfg.mTxMaxInstructions = 100'000'000; - cfg.mLedgerMaxInstructions = cfg.mTxMaxInstructions * 10; - cfg.mTxMemoryLimit = 100 * 1024 * 1024; - - cfg.mTxMaxReadLedgerEntries = 40; - cfg.mTxMaxReadBytes = 200 * 1024; - - cfg.mTxMaxWriteLedgerEntries = 20; - cfg.mTxMaxWriteBytes = 100 * 1024; - - cfg.mLedgerMaxReadLedgerEntries = cfg.mTxMaxReadLedgerEntries * 10; - cfg.mLedgerMaxReadBytes = cfg.mTxMaxReadBytes * 10; - cfg.mLedgerMaxWriteLedgerEntries = cfg.mTxMaxWriteLedgerEntries * 10; - cfg.mLedgerMaxWriteBytes = cfg.mTxMaxWriteBytes * 10; - - cfg.mStateArchivalSettings.minPersistentTTL = 20; - cfg.mStateArchivalSettings.maxEntryTTL = 6'312'000; - cfg.mLedgerMaxTxCount = 100; - - cfg.mTxMaxContractEventsSizeBytes = 10'000; - }); + modifySorobanNetworkConfig(app, setSorobanNetworkConfigForTest); } bool diff --git a/src/test/TxTests.cpp b/src/test/TxTests.cpp index 2c80307bf7..711739893f 100644 --- a/src/test/TxTests.cpp +++ b/src/test/TxTests.cpp @@ -34,6 +34,8 @@ #include +#include "util/XDRCereal.h" + using namespace stellar; using namespace stellar::txtest; @@ -389,15 +391,27 @@ applyTx(TransactionTestFramePtr const& tx, Application& app, bool checkSeqNum) // ledger with the TX instead if (app.getConfig().isUsingBucketListDB()) { - closeLedger(app, {tx}); + auto resultSet = closeLedger(app, {tx}); + + // When going through the normal ledgerClose path, TransactionFrame + // objects are reconstructed from raw XDR before being applied, meaning + // the TestTransactionFrame does not have it's internal cached state + // updated during apply. We manually update the result here. + REQUIRE(resultSet.results.size() == 1); + tx->getResult() = resultSet.results.at(0).result; + + auto meta = app.getLedgerManager().getLastClosedLedgerTxMeta(); + REQUIRE(meta.size() == 1); + recordOrCheckGlobalTestTxMetadata(meta.back().getXDR()); } else { applyCheck(tx, app, checkSeqNum); - throwIf(tx->getResult()); - checkTransaction(*tx, app); } + throwIf(tx->getResult()); + checkTransaction(*tx, app); + LedgerTxn ltx(app.getLedgerTxnRoot()); auto account = stellar::loadAccount(ltx, tx->getSourceID()); if (protocolVersionStartsFrom(ltx.loadHeader().current().ledgerVersion, diff --git a/src/test/test.cpp b/src/test/test.cpp index e05d53d9e9..1227314e78 100644 --- a/src/test/test.cpp +++ b/src/test/test.cpp @@ -196,9 +196,10 @@ getTestConfig(int instanceNumber, Config::TestDbMode mode) { // by default, tests should be run with in memory SQLITE as it's faster // you can change this by enabling the appropriate line below - mode = Config::TESTDB_IN_MEMORY_SQLITE; + // mode = Config::TESTDB_IN_MEMORY_OFFERS; // mode = Config::TESTDB_ON_DISK_SQLITE; // mode = Config::TESTDB_POSTGRESQL; + mode = Config::TESTDB_BUCKET_DB_VOLATILE; } auto& cfgs = gTestCfg[mode]; if (cfgs.size() <= static_cast(instanceNumber)) @@ -272,29 +273,54 @@ getTestConfig(int instanceNumber, Config::TestDbMode mode) thisConfig.QUORUM_SET.threshold = 1; thisConfig.UNSAFE_QUORUM = true; + // Bucket durability significantly slows down tests and is not necessary + // in most cases. + thisConfig.DISABLE_XDR_FSYNC = true; + thisConfig.NETWORK_PASSPHRASE = "(V) (;,,;) (V)"; std::ostringstream dbname; switch (mode) { - case Config::TESTDB_IN_MEMORY_SQLITE: + case Config::TESTDB_BUCKET_DB_VOLATILE: + case Config::TESTDB_IN_MEMORY_OFFERS: dbname << "sqlite3://:memory:"; - // When we're running on an in-memory sqlite we're - // probably not concerned with bucket durability. - thisConfig.DISABLE_XDR_FSYNC = true; break; + case Config::TESTDB_BUCKET_DB_PERSISTENT: case Config::TESTDB_ON_DISK_SQLITE: dbname << "sqlite3://" << rootDir << "test.db"; + thisConfig.DISABLE_XDR_FSYNC = false; break; #ifdef USE_POSTGRES case Config::TESTDB_POSTGRESQL: dbname << "postgresql://dbname=test" << instanceNumber; + thisConfig.DISABLE_XDR_FSYNC = false; + break; + case Config::TESTDB_IN_MEMORY_NO_OFFERS: + thisConfig.MODE_USES_IN_MEMORY_LEDGER = true; break; #endif default: abort(); } - thisConfig.DATABASE = SecretValue{dbname.str()}; + + if (mode == Config::TESTDB_BUCKET_DB_VOLATILE || + mode == Config::TESTDB_BUCKET_DB_PERSISTENT) + { + thisConfig.DEPRECATED_SQL_LEDGER_STATE = false; + thisConfig.BACKGROUND_EVICTION_SCAN = true; + } + else + { + thisConfig.DEPRECATED_SQL_LEDGER_STATE = true; + thisConfig.BACKGROUND_EVICTION_SCAN = false; + } + + if (mode != Config::TESTDB_IN_MEMORY_NO_OFFERS) + { + thisConfig.DATABASE = SecretValue{dbname.str()}; + } + thisConfig.REPORT_METRICS = gTestMetrics; // disable maintenance thisConfig.AUTOMATIC_MAINTENANCE_COUNT = 0; @@ -309,17 +335,10 @@ getTestConfig(int instanceNumber, Config::TestDbMode mode) thisConfig.PEER_FLOOD_READING_CAPACITY = 20; thisConfig.FLOW_CONTROL_SEND_MORE_BATCH_SIZE = 10; - // Tests default to using SQL for ledger state - thisConfig.DEPRECATED_SQL_LEDGER_STATE = true; - // Disable RPC endpoint in tests thisConfig.HTTP_QUERY_PORT = 0; thisConfig.QUERY_SNAPSHOT_LEDGERS = 0; - // TODO: Change this to true when DEPRECATED_SQL_LEDGER_STATE is changed - // to default false in test configs - thisConfig.BACKGROUND_EVICTION_SCAN = false; - #ifdef BEST_OFFER_DEBUGGING thisConfig.BEST_OFFER_DEBUGGING_ENABLED = true; #endif diff --git a/src/testdata/ledger-close-meta-v0-protocol-0.json b/src/testdata/ledger-close-meta-v0-protocol-0.json index 052fa1f8c0..1b4ede4826 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-0.json +++ b/src/testdata/ledger-close-meta-v0-protocol-0.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "6c275540e30a8b79994b45bb4a9792fea4d1a1129b017307009e15972f2fdd7f", + "hash": "f4ce7471b7c9b6f8be7ab97d06c7d0d832825d4b5bbbf4674b1067582d44ee49", "header": { "ledgerVersion": 0, - "previousLedgerHash": "826aec4fb371554e351cfdcafd48feb3df3bbf7211076fcb47c60f33a9a1d6a4", + "previousLedgerHash": "1ded3c1720b577adb43e7c0eea4c2874965c2cb864443860286fdb397183edce", "scpValue": { - "txSetHash": "046e20feb97ec8391a074142dc28e1d854db00ef81e6833d87e21db629a7ad9b", + "txSetHash": "b9134ef9b9257616f8d21427fa1cc7ae1f254d9ad92b3ac9573c6e857c26e5d8", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "ccd1ffd83f46d719029734c7a7be16da1304e38fc87072e461bfd454d8f923b34660d5fef792263d4eb05154ed31ff0074cde64b84c278f4b2afdea80c31d208" + "signature": "4413b36c5b279dd519154df2b90bb038476afd3ad567935f1592cdc3e9984bd5d3c977b90ed6476da26989ce1972a4085f78dacca3c1f891bfb1551159da4b09" } } }, - "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "826aec4fb371554e351cfdcafd48feb3df3bbf7211076fcb47c60f33a9a1d6a4", + "previousLedgerHash": "1ded3c1720b577adb43e7c0eea4c2874965c2cb864443860286fdb397183edce", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,21 +140,12 @@ "txProcessing": [ { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -179,9 +170,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -205,9 +196,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -237,16 +228,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -262,16 +254,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -281,26 +274,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -316,16 +306,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -345,12 +336,21 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,17 +433,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -459,17 +458,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -479,23 +477,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -511,17 +512,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-1.json b/src/testdata/ledger-close-meta-v0-protocol-1.json index e9d1b46cb9..2da3f6c097 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-1.json +++ b/src/testdata/ledger-close-meta-v0-protocol-1.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "b4479d7ab33edd46d399bb53f9ab933d15b00c8ba3efc35453a5698a5ed8d4be", + "hash": "b5c6467cc7a49fd777e47c679ab1d288a28aa679fd2f0fcc378ef932f2f1cf6e", "header": { "ledgerVersion": 1, - "previousLedgerHash": "1e5b15bf369fd8fbe9450a0e3cb6774948a19e56ef2531271d8c36d3e70ecfcd", + "previousLedgerHash": "f53f4f38bdfec816db8c05a341352d2f558a0c84c226c3a1eaf2d58f49533c7a", "scpValue": { - "txSetHash": "370820754db72e266595440690e11056daeeb7a2295ccbf49600ff6348645c97", + "txSetHash": "bbcae8dde2225e349345c8098b699c80bc4a54b85abe87fd24d32180a3e51421", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "8f58233149ab8f1fd811d773af4382857de9eaa6affdb1d37c64250fbd78cca9ad2e08713d8e21229c30dc449ba6b369a18d63aff63e1b527153db068cd80c01" + "signature": "4f849f3aff2579e1cbec095e72efdce252681428f364d2d23b476401e3c8003500bbf8cb721933ee05dc658e9caceea1c0329d75da891a6c8ae0acd5b9c5e506" } } }, - "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "1e5b15bf369fd8fbe9450a0e3cb6774948a19e56ef2531271d8c36d3e70ecfcd", + "previousLedgerHash": "f53f4f38bdfec816db8c05a341352d2f558a0c84c226c3a1eaf2d58f49533c7a", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,21 +140,12 @@ "txProcessing": [ { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -179,9 +170,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -205,9 +196,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -237,16 +228,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -262,16 +254,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -281,26 +274,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -316,16 +306,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -345,12 +336,21 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,17 +433,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -459,17 +458,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -479,23 +477,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -511,17 +512,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-10.json b/src/testdata/ledger-close-meta-v0-protocol-10.json index e2177855b8..1ed4f3843d 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-10.json +++ b/src/testdata/ledger-close-meta-v0-protocol-10.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "fb2a055e40b20726150bf266a92bb80136b041692f277738513dc098a63fd162", + "hash": "1e86420861bc639049d063f8a56167500d9176ba785eb0d23586749f2376a218", "header": { "ledgerVersion": 10, - "previousLedgerHash": "e51080aee43d4516b94cd5ee88fc829207d3ba862438f76de7a6bd708326524a", + "previousLedgerHash": "0702a85537ae5de8ca96ce2c488ec2c94d6d550a3640f95f7a2278af0ab0cb02", "scpValue": { - "txSetHash": "791434d3c772afd72ad0103a9cdd8904fce45215a0b05ef5555d1b9022d275e3", + "txSetHash": "8c6f414c38a3ee93b63048da2ca9df6e3f6e0a146010c8cd210fb706d94de216", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "b22aaca857640df75a3746e57da232f300841da42afab01388b4f321f84c579bdcdea987e67f6d0dc98b06a6709453af47c378dcc55f72f627373f1eb893ab0e" + "signature": "c4a0c1800fc524dbe6ced9a3a976ceab021db46a101f9f3eab463ea3c4a2b6f2f7b5aed7c247249bc3bc94fcb889244b1e95cc2a363bac312105a5736271610d" } } }, - "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "e51080aee43d4516b94cd5ee88fc829207d3ba862438f76de7a6bd708326524a", + "previousLedgerHash": "0702a85537ae5de8ca96ce2c488ec2c94d6d550a3640f95f7a2278af0ab0cb02", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,21 +140,12 @@ "txProcessing": [ { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -179,9 +170,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -205,9 +196,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -236,9 +227,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -262,9 +253,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -290,16 +281,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -315,16 +307,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -334,26 +327,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -369,16 +359,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -398,12 +389,21 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -428,9 +428,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -454,9 +454,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -485,9 +485,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -511,9 +511,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -539,17 +539,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -565,17 +564,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -585,23 +583,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -617,17 +618,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-11.json b/src/testdata/ledger-close-meta-v0-protocol-11.json index 87c3831ef5..17a727e530 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-11.json +++ b/src/testdata/ledger-close-meta-v0-protocol-11.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "787482a1953c1a7f17d263a42c07f3a5d5e57e7994276cbba2f95dcb1489a8d4", + "hash": "092b9fa28688155cd0bcffd296ab3b918ffc1f8ef9573f4fd26480898c292d6e", "header": { "ledgerVersion": 11, - "previousLedgerHash": "14976bf61adce664eac997e26e281ccce733f95b820d4e41b03ae635329855c7", + "previousLedgerHash": "88c9f68c1881dae9ea255c0f24e3366b9f267582e5913764f3fed140e91e4aea", "scpValue": { - "txSetHash": "965c42812babe8a2f9dbae3bbc9a5fcf87b2f4c8d794da27c5efad7e7a265dbf", + "txSetHash": "95be0988de14f02f614ba5dad24730d428741746e0aeb2fdc3d09a29858156cc", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "1eb5b03f6a132ea506c5a6e290238c8abf14a9aed2ca0339b65ffaf022cf6c2ce43446f9f0f376f187249c8f7a1a9d394f3fc6cf7efcd6176233dbf5e6610f02" + "signature": "01e2cc0b0a934ac113fbd39fa71c43ebbe47a849f8c821f546e035dc5184e483c7564806e26c99226e91a8f974ac87f8c62a1e974818c78b841d48037c3f3b0d" } } }, "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "e287476c346e8d1d460580db9a5b246927f83a8027efa40f17af45a4eeee014d", + "bucketListHash": "d47f2b0b4ff7366682fb3f00fc600d392a508a60aaad4f682984b9d99bab2fcb", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "14976bf61adce664eac997e26e281ccce733f95b820d4e41b03ae635329855c7", + "previousLedgerHash": "88c9f68c1881dae9ea255c0f24e3366b9f267582e5913764f3fed140e91e4aea", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", diff --git a/src/testdata/ledger-close-meta-v0-protocol-12.json b/src/testdata/ledger-close-meta-v0-protocol-12.json index cd8f8e4ce9..c168435f91 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-12.json +++ b/src/testdata/ledger-close-meta-v0-protocol-12.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "fe5e533894617d41f2ec870a545d0eebd61edae14dfc83bf716dff7b1d23df97", + "hash": "6387a58e7be79d7927a613ee0ddcb99a4015f9e72459f99eb5164b35211cb568", "header": { "ledgerVersion": 12, - "previousLedgerHash": "01ac88c2ee94b88677c2b5500db96704d89722339a4f13459ac718bbde2e0fb3", + "previousLedgerHash": "4a6e5550a06fcd3f6f713e77fe4cb24256f2949948b92047bc2a529d8fcf6762", "scpValue": { - "txSetHash": "e6d7ba875de25694effb59a199889c0eddba2581c1050b2fb3bca2335b909bff", + "txSetHash": "ac739bb496eca3a7dbd4533a3e4f0cdc44f314cad520a5d7e7da2b50433f9135", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "d18cc278e3024f3413e7b0933e86160b00012c4029d10ec30787fa8b7e68dc479e6c00f27371ea2d8bb69de9376dbffdfd9ef0509e6c6007ad26d23bd8442800" + "signature": "9d594a70d065e8ec9b4a610e73f4ab5f341b78e356639c1613d96af6063eac6723f96e4628b0bfdd657d1debe3d61e59a942584e0fcf869452104068c1176902" } } }, "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "e14ddf029c7bffbd64b720e4b7c43ac9d5d264bc833f1f92579baab64fe414a3", + "bucketListHash": "45dcc30fb982237beae2bd264e8d80f9c45926e4ff941f955e57edece8ea5005", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "01ac88c2ee94b88677c2b5500db96704d89722339a4f13459ac718bbde2e0fb3", + "previousLedgerHash": "4a6e5550a06fcd3f6f713e77fe4cb24256f2949948b92047bc2a529d8fcf6762", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", diff --git a/src/testdata/ledger-close-meta-v0-protocol-13.json b/src/testdata/ledger-close-meta-v0-protocol-13.json index 1322005d0f..4464596b17 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-13.json +++ b/src/testdata/ledger-close-meta-v0-protocol-13.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "35114e87ca240c40c1b5a1832000675f15834f233bf11b5953c3b6dd0217a20c", + "hash": "24fbffbe284908a9572b23b6f5ba5eee9d8ec0f3b6b1d34bc22b1ff9bc9a180a", "header": { "ledgerVersion": 13, - "previousLedgerHash": "87c4cd6c9216e2910b883249c4aa893f71d8ffe8e06421136711b09d198d4dfa", + "previousLedgerHash": "b0d500909b582dc0c5d526b76195c785fd45a8f112cf72c3007d4552012192ce", "scpValue": { - "txSetHash": "62bbed44bfb243b2e4012842affb3e602991e896fb1b1ccc8590aba4a0ed2b61", + "txSetHash": "18d8923f018fb7cf218f2054ee6b09b972c8da74e68a77edf2df49ad461637c0", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "bb0e5cf6a49fb88fb0b72697d0270839e22d22a7fc3cbebeb5b4de581b401215ff7c75ba295c226b7391208eb9f4f6147827c4c8d6b22091a4567a3e64a7b207" + "signature": "91dbd3152372145258d15b66b0db2ac1fe60ea7bacf488bb5527b1bf38f792c44e6883a3727d7c10824b436feaaf013c83b0774751927c75a9e071a4c01c7209" } } }, "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", - "bucketListHash": "ab9abdb8443a8f2675537ea5367d6c6b21589906a3e29ac9274ff456dd936a8e", + "bucketListHash": "77323951ffeaa8f8658c7bdb84d1b011489f2a546078368eab17a386a10e6f05", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "87c4cd6c9216e2910b883249c4aa893f71d8ffe8e06421136711b09d198d4dfa", + "previousLedgerHash": "b0d500909b582dc0c5d526b76195c785fd45a8f112cf72c3007d4552012192ce", "txs": [ { "type": "ENVELOPE_TYPE_TX", diff --git a/src/testdata/ledger-close-meta-v0-protocol-14.json b/src/testdata/ledger-close-meta-v0-protocol-14.json index f9dc74905d..08df6882eb 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-14.json +++ b/src/testdata/ledger-close-meta-v0-protocol-14.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "fb9c68a2c873f581ff28c37e2227ca10de8ddfd7ad59693e02000cc6e95912b3", + "hash": "4911e97b86a9f91db31b14341aee4852990016070632e523af487cd9d2305cc2", "header": { "ledgerVersion": 14, - "previousLedgerHash": "611a92ebe897074cdeffc81f2e5e594f3ad08ff3c345d805c7968f6313742c43", + "previousLedgerHash": "50c3caee3a08284d1a1908d69cc1b747749b5ccba49a4c293d318266061e3750", "scpValue": { - "txSetHash": "4574cbada3d886ff05aa71c8657124d833b0ec2f73e7e6d95b9d448563f3083a", + "txSetHash": "18f6afe964bea23a39036fc14a9ad45c90133c5c1464cf8048bca5c446089839", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "63810e57897c1f118cdbfdeb8135a2b48960129d96594776a6f5789cd3d10b83ecb23a41700cb7b1fd4c09a67ebb54dd9883a3b503ec9d76350f8d39dc317f03" + "signature": "9dce7de19055bb4005fbaf5bd4a62e8f28f9835690115e49bc5ea9e3798ed578c6ac7ff09f4fffda3dd5997e0a779ff1abe39bca3aaffe84c9449d11c04ba606" } } }, "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", - "bucketListHash": "52d7eaa2b610fdabf4c19072d5cc2f0e94d037622b42b02e066462d561c32162", + "bucketListHash": "25be9c6a852cb1d3e5edc95dc936fda48d44c0379567b5977c2cf3aca936814d", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "611a92ebe897074cdeffc81f2e5e594f3ad08ff3c345d805c7968f6313742c43", + "previousLedgerHash": "50c3caee3a08284d1a1908d69cc1b747749b5ccba49a4c293d318266061e3750", "txs": [ { "type": "ENVELOPE_TYPE_TX", diff --git a/src/testdata/ledger-close-meta-v0-protocol-15.json b/src/testdata/ledger-close-meta-v0-protocol-15.json index 037deafb3b..248525b004 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-15.json +++ b/src/testdata/ledger-close-meta-v0-protocol-15.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "04ba13504950cd3692dfd631829427ebc84dbf9b111e6754b22f85a09a26c672", + "hash": "64e7ec9447e2bcd3a8e207becc0a17eb54f7e7dad5bdd2f669cdf691c5112af9", "header": { "ledgerVersion": 15, - "previousLedgerHash": "9299ab12faadd6619a0e83b015ee6c70616be628113d95b6b321ad04d54c5c40", + "previousLedgerHash": "12e04552bb798ce7dc3391c1262768766a304d595995648b62c18d5ee7edb6ed", "scpValue": { - "txSetHash": "ae8e74523ba1c8dcaba7bef9ccaa1c19d6583360e582dcf45c12d5a37d8cb2ab", + "txSetHash": "3838ffdcb53c2a6d70b2e4b933bcd7928f4bc9143ab101f4994053f990ff5cfe", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "c397a02dccf69eabdc09b4952c4a315875406fc94fe51942502626e36dc4058d02680da0432741926bfde6e6b942393b54c1abf52da96794b1bcb985e4a3a805" + "signature": "afccd3ba17227913bc6632ded59cfd0f2b8233beebff0fedd3d4a7dcacb754d87b59a809c23648a92e080d827886af37a75e4426477def212627e3098aa5390c" } } }, - "txSetResultHash": "cd1398cda325d4eada631301e6501421cda30fd0b43da3e5d0ffb26caf073b0a", - "bucketListHash": "63089b77ff74347beb743e75e6da95a004bc08cacd86a598a6e4337203524418", + "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", + "bucketListHash": "b41bd43d3069c3e4d67faa7b3575317682d1055f3004eba57bc43112ac0ca116", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "9299ab12faadd6619a0e83b015ee6c70616be628113d95b6b321ad04d54c5c40", + "previousLedgerHash": "12e04552bb798ce7dc3391c1262768766a304d595995648b62c18d5ee7edb6ed", "txs": [ { "type": "ENVELOPE_TYPE_TX", @@ -162,43 +162,22 @@ "txProcessing": [ { "result": { - "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 300, + "feeCharged": 100, "result": { - "code": "txFEE_BUMP_INNER_SUCCESS", - "innerResultPair": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", - "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 @@ -209,13 +188,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 3, + "lastModifiedLedgerSeq": 4, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 400000000, - "seqNum": 12884901888, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -239,9 +218,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -270,61 +249,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 4, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -348,9 +275,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -376,16 +303,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -401,16 +329,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -420,26 +349,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -455,16 +381,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -484,22 +411,43 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", "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": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "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 @@ -510,13 +458,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 4, + "lastModifiedLedgerSeq": 3, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 400000000, + "seqNum": 12884901888, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -540,9 +488,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 12884901888, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -571,9 +519,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 12884901888, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -597,9 +545,61 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 12884901888, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], + "ext": { + "v": 0 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 4, + "data": { + "type": "ACCOUNT", + "account": { + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], + "ext": { + "v": 0 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 6, + "data": { + "type": "ACCOUNT", + "account": { + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -625,17 +625,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -651,17 +650,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -671,23 +669,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -703,17 +704,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-16.json b/src/testdata/ledger-close-meta-v0-protocol-16.json index 822f1bee92..55f74b8dc7 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-16.json +++ b/src/testdata/ledger-close-meta-v0-protocol-16.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "7bbe6a3737228706757d319305438e0fef71e975bf790559d8d27eb3a2b43e6e", + "hash": "f1ceaf35b6a2a64847fd3fd9b0ed13101d17a9868321f636769d49c5542db1ee", "header": { "ledgerVersion": 16, - "previousLedgerHash": "7f40f1232e2ac51cd718387a6ceda07722c10c8b66495d2b63b26355d29ed008", + "previousLedgerHash": "e33cd8ae758d66c18a409f322ce58b236c73bebd5090ac3125742db16342abd2", "scpValue": { - "txSetHash": "b010d0f150a5242e377ecea86877dbae6ded5a119c4d292ef08f16f39ccbc573", + "txSetHash": "01b21cbc2213700a9021ed68db1df0a8d0f96e5d79b41edf96ece295791b2a09", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "b6e14a86460fd3158cef01971df87376f7a3ebb8810489c193469c7c0fdb42217036304d6033278719a1a47799a234b4679fb38664829b1c47fd3bad1a66a20e" + "signature": "0afba90757f7314798af85bf7a039bfc6c71bebec99ccac2637276c3066d745b1da70da2c9d95fe1f91a8048285cddc624a2f4dea551e8ef9fcbe6917b925707" } } }, - "txSetResultHash": "cd1398cda325d4eada631301e6501421cda30fd0b43da3e5d0ffb26caf073b0a", - "bucketListHash": "ab5d8c27fd76e709d2c53a1768083f3ecaee660fc06936556824bfc986b2149a", + "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", + "bucketListHash": "e46cf15ebe69fa84840253290bc3d120f55ab670ed97143340a051680ac5b1ab", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "7f40f1232e2ac51cd718387a6ceda07722c10c8b66495d2b63b26355d29ed008", + "previousLedgerHash": "e33cd8ae758d66c18a409f322ce58b236c73bebd5090ac3125742db16342abd2", "txs": [ { "type": "ENVELOPE_TYPE_TX", @@ -162,43 +162,22 @@ "txProcessing": [ { "result": { - "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 300, + "feeCharged": 100, "result": { - "code": "txFEE_BUMP_INNER_SUCCESS", - "innerResultPair": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", - "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 @@ -209,13 +188,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 3, + "lastModifiedLedgerSeq": 4, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 400000000, - "seqNum": 12884901888, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -239,9 +218,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -270,61 +249,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 4, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -348,9 +275,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -376,16 +303,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -401,16 +329,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -420,26 +349,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -455,16 +381,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -484,22 +411,43 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", "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": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "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 @@ -510,13 +458,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 4, + "lastModifiedLedgerSeq": 3, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 400000000, + "seqNum": 12884901888, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -540,9 +488,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 12884901888, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -571,9 +519,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 12884901888, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -597,9 +545,61 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 12884901888, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], + "ext": { + "v": 0 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_STATE", + "state": { + "lastModifiedLedgerSeq": 4, + "data": { + "type": "ACCOUNT", + "account": { + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, + "numSubEntries": 0, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], + "ext": { + "v": 0 + } + } + }, + "ext": { + "v": 0 + } + } + }, + { + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 6, + "data": { + "type": "ACCOUNT", + "account": { + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -625,17 +625,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -651,17 +650,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -671,23 +669,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -703,17 +704,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-17.json b/src/testdata/ledger-close-meta-v0-protocol-17.json index 7c34ad25ae..a2d04ec4f1 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-17.json +++ b/src/testdata/ledger-close-meta-v0-protocol-17.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "4bac347c4c63c0b2f1f7cad1403ec83351b6992e9a15668a0360f990b801eb02", + "hash": "d192a6abe3ce06bebc81a3727bad29d2f9e6f88fa1722505b4bbf52990152e61", "header": { "ledgerVersion": 17, - "previousLedgerHash": "87cd015a313a035c1ba28625b9b71e33928a500f6dbfd85bec324087402e9bcd", + "previousLedgerHash": "4cb8b086a16d4e8d0949952a258f69ad40459cfe9a3aa963384a388940213e15", "scpValue": { - "txSetHash": "66177404efdca3cfe4429e1ee69c4b9b184d2fcf5546008a8607dfbeff6421ad", + "txSetHash": "29baeac02a8938d4651deaddb968e2ca290f2de1e41c05b44a7aaf530d79ca34", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "45457712b6bb8b5fa916f7a7de6f8b5ebfe57a8810fce96ef352ae7c946ffb8ca00a6fd6e984e2f6fcc4fa8f153220a6f417ae61dc892827682c071fe1e5b901" + "signature": "12c6adcdf0b247ce8e72dd89733d1fad7d586147b05c8e7dccba90bd067f5e4065b07397c7113e6ef4056cca4fbccadc89d17331e85f93bdd5d9826e6a838e05" } } }, "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", - "bucketListHash": "390e801ec27d1b0d77660605addf2996b4ea736aa003980bc51a6f96bc7a80a4", + "bucketListHash": "7d6a1f44afa4dde3f536db9ea5704249f15664e33ce33a84051795e6db448b86", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "87cd015a313a035c1ba28625b9b71e33928a500f6dbfd85bec324087402e9bcd", + "previousLedgerHash": "4cb8b086a16d4e8d0949952a258f69ad40459cfe9a3aa963384a388940213e15", "txs": [ { "type": "ENVELOPE_TYPE_TX", diff --git a/src/testdata/ledger-close-meta-v0-protocol-18.json b/src/testdata/ledger-close-meta-v0-protocol-18.json index 3825eea68b..bea1d55526 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-18.json +++ b/src/testdata/ledger-close-meta-v0-protocol-18.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "b3b06d422607eb72e1d11d8c96b717fdd2f0e63ecc205e6521b46822fd086278", + "hash": "fac81450970f75e0966f5c4cc8c2903801f651acc7b8f308481aaf170ccd34d4", "header": { "ledgerVersion": 18, - "previousLedgerHash": "2f65a440501ba15f18eaf523b39f2e3e09d1b88d4da18387d8ea70fa2232f447", + "previousLedgerHash": "20575906f4a3d4aca73c89874c7db4341c7b8d74c82c470fc295e5fc18313f26", "scpValue": { - "txSetHash": "67b5852eecc7615e729b5a1e0187357b73dec46bd0bb6a46bb95a4bc08dd9b5f", + "txSetHash": "78f9a258eb75a35ffd0a8ed90d61730a024094b5d1cc32c1fec321ec97eb2bd0", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "651494b71091771e398d0897f668197fd68a4c9e5c74ed2586c44db13a9245f4eccadd170c59cda04eac22a18a79ec1b246627a2412d9d5ac603fc2b5d75460c" + "signature": "7892f784e92007cfe70acfe7c12812ff6a751861487c08659ab58f3af657db73250f88ab11c51bbeca2968825649c60363871c0014f0dda150cd3cd787fba30b" } } }, "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", - "bucketListHash": "c37cd0ca18de01c9eb6d54ffc06d587e1d8183cc133fa96b37ba6c55602a766b", + "bucketListHash": "5985473712eaecaa233cad29cc04d7007b7dbf5d267c1cf243015909c950478b", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "2f65a440501ba15f18eaf523b39f2e3e09d1b88d4da18387d8ea70fa2232f447", + "previousLedgerHash": "20575906f4a3d4aca73c89874c7db4341c7b8d74c82c470fc295e5fc18313f26", "txs": [ { "type": "ENVELOPE_TYPE_TX", diff --git a/src/testdata/ledger-close-meta-v0-protocol-19.json b/src/testdata/ledger-close-meta-v0-protocol-19.json index ac45acab7f..4783f0e6ee 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-19.json +++ b/src/testdata/ledger-close-meta-v0-protocol-19.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "54cd9e29c1cf2311cd9675da5659e1ab681e18bd3b1b91bc1b95a7f8800bd8e9", + "hash": "81a69b18a59e3bad4f20f25af39a75627ecfdb7a4c7d3ecdac09e016ba30aa79", "header": { "ledgerVersion": 19, - "previousLedgerHash": "a347f067aba45f51aa7f0f55bd649803d84a92fc227875da9a49321f498e9fc3", + "previousLedgerHash": "93c2f1decf22104671a47f5bff2a7b64953cafe3d052384626d41014abebd945", "scpValue": { - "txSetHash": "1ab4dfad38a0f8ee3c4f823cea22b37e59b209a7fc05ec69c515965ff469cf23", + "txSetHash": "3ddf90317a4723c2c6ff763d6197f3b70043cd9d41797a4a7c4d63e29bbe024d", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "27eee5a0881c6e0e236ec6f69644fe3a57f6922700073ffe1e582004d00fedfd5c5837edbe85ee34d9d984ac46eda2c9a7ad2f2cf623c605cef2809240985b01" + "signature": "8112ba66466efc276c7abf5894db8c674ce24f726999c7c447a8397f63a16d822b6e4890f645d1ee1ce1b3f0f18767b0540981a442c8a904f1fa9cebb7464c06" } } }, "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", - "bucketListHash": "5d7388454c19e1350121a604e647bdfd3ee1feaf122812d7c5117550a4e9aead", + "bucketListHash": "c78bc18e914a5411f484c63c1431f1a86b3fb97498794ec1ae67d05ea34ccd51", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 800, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "a347f067aba45f51aa7f0f55bd649803d84a92fc227875da9a49321f498e9fc3", + "previousLedgerHash": "93c2f1decf22104671a47f5bff2a7b64953cafe3d052384626d41014abebd945", "txs": [ { "type": "ENVELOPE_TYPE_TX", diff --git a/src/testdata/ledger-close-meta-v0-protocol-2.json b/src/testdata/ledger-close-meta-v0-protocol-2.json index 30483d5125..cbfc03e24f 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-2.json +++ b/src/testdata/ledger-close-meta-v0-protocol-2.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "d8b1fa9d08a90dc01a220a01f86bb9b0ea7a1da4709615a96cf32b918e246a35", + "hash": "189e66eeeda5c8ade99c02a0a5c831250219522871b7cc45fc557347deaeea06", "header": { "ledgerVersion": 2, - "previousLedgerHash": "fe84c8acaac461ece5fce9eed4ce91d25ebac47f905144dea5ddbc3f3c33a1b1", + "previousLedgerHash": "8b34ec1328314f2317ea74606e08da6a9028a8afa580f681b94713d360faa83e", "scpValue": { - "txSetHash": "c29964aae787c42a21e72adf176a4ececb4da2d97593503961bef4fb79e2b573", + "txSetHash": "c59565e196c73c53a8ffa33d302d48017e4af306a5f91c7c5a3dc253e50deef7", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "084c8b54804515dd5108e6d85b5ca1819366e805a5550330c6e4fe86deb29b5471f8996a9d1495a5d1b140e73e66b2545d7e1b632fa2929dd38ae6df24e50708" + "signature": "802a18eb69e8d80779056971497537ec95dd571d1bfd4a825fc6e0f27f3d984ee18a572a72f16c6319bae6aff515ecd105f2b177d24170028ef1971014b5b306" } } }, "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "fe84c8acaac461ece5fce9eed4ce91d25ebac47f905144dea5ddbc3f3c33a1b1", + "previousLedgerHash": "8b34ec1328314f2317ea74606e08da6a9028a8afa580f681b94713d360faa83e", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", diff --git a/src/testdata/ledger-close-meta-v0-protocol-3.json b/src/testdata/ledger-close-meta-v0-protocol-3.json index 3e14ccae9a..70fef3339e 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-3.json +++ b/src/testdata/ledger-close-meta-v0-protocol-3.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "2f8b353ba91139286997aeeca435458181c81ae7a2943b9a9151411d161e3573", + "hash": "6f18b6f674769ba233f28673996addfea5442147f76a4fccf0cd6bdee1b064e1", "header": { "ledgerVersion": 3, - "previousLedgerHash": "28d26a7d593904cd85d90a3624e069846e582dc50e2ec769585d345da2d19643", + "previousLedgerHash": "ba45061a191c59657c2f1130739fe02a5b3657d83aa93ad50c7535c4a21a1344", "scpValue": { - "txSetHash": "110be8a956e3a178e53fb6835f8ebb1c3d2060ea8db76c33973cbb6a8bebd0f2", + "txSetHash": "902daf419e0f1cbe9b183abd5358948a9e4e3897523108ed9cd8a849cb107bb0", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "0738703470c6c013975a1fea71627d3f702fe4a237f4b41ccce0e771592140edb4a970b6dc4ccd6f5ec8c46834387c5929fd0364d5a369d2d150d2e7c670eb06" + "signature": "b7ee68417da7ecdcf1165f2acfbf113e34a684e5441a7ce914da87c0f80ef56aeb49204213b44b52805910d0066deeae4e93c27de83f77eb4cac7a379a4e9005" } } }, - "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "28d26a7d593904cd85d90a3624e069846e582dc50e2ec769585d345da2d19643", + "previousLedgerHash": "ba45061a191c59657c2f1130739fe02a5b3657d83aa93ad50c7535c4a21a1344", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,21 +140,12 @@ "txProcessing": [ { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -179,9 +170,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -205,9 +196,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -237,16 +228,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -262,16 +254,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -281,26 +274,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -316,16 +306,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -345,12 +336,21 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,17 +433,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -459,17 +458,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -479,23 +477,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -511,17 +512,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-4.json b/src/testdata/ledger-close-meta-v0-protocol-4.json index 8943a13868..e1e3954ffa 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-4.json +++ b/src/testdata/ledger-close-meta-v0-protocol-4.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "42dfac82523d4361bba75398841e02ee8aab561782955e3a329c1dad5f4ea75e", + "hash": "52b0e2c09b97c8882028218a65c2a22086ddc70cd8cc31f093e32aa008b7ff99", "header": { "ledgerVersion": 4, - "previousLedgerHash": "7beac0afce37579c3e2435ec10a13ef52ff8625260175b650b5256d77ffc780b", + "previousLedgerHash": "d42e16187b6ebf94bf922eee07c047e765b4b51ff7cc21a59e730b37869d1846", "scpValue": { - "txSetHash": "f83b1b39a2e9a203ddb7b6c1f49f1907f70265000b63e7a00c7ee5625de3cb5d", + "txSetHash": "53428eb538cd87708695671e56171022ea9ec2a96a93f8882fcea60482e05f6e", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "011d6e569127ce7ff32587d64c942a6ad0fed4eae512be93795815aaa8e4f7fe2fdb50f01060a8a3c68a33dddd23e4fa0d6484022a53254bb0078fda0170af03" + "signature": "56ae913ade4abb555e8f9d6f7a3c84668953f9b93eb4a065b90d18e1b1ad25be560db9c5b49569be7ba0ebd926f0ff98fb304f204f826ff9d4edb6abb7c29c09" } } }, - "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "7beac0afce37579c3e2435ec10a13ef52ff8625260175b650b5256d77ffc780b", + "previousLedgerHash": "d42e16187b6ebf94bf922eee07c047e765b4b51ff7cc21a59e730b37869d1846", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,12 +140,21 @@ "txProcessing": [ { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -170,9 +179,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -196,9 +205,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -228,17 +237,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -254,17 +262,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -274,23 +281,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -306,17 +316,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -336,21 +345,12 @@ }, { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,16 +433,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -458,16 +459,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -477,26 +479,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -512,16 +511,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-5.json b/src/testdata/ledger-close-meta-v0-protocol-5.json index cb8f7478cb..241b547196 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-5.json +++ b/src/testdata/ledger-close-meta-v0-protocol-5.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "340cdd4e7cc6c061be5aae64cd722f0e5b6c6abaefe248aa65b26929c4004012", + "hash": "106a55c00e565ae24b9b1030385819a5dc310f04210956164769172af2cb77a8", "header": { "ledgerVersion": 5, - "previousLedgerHash": "a92a7cded05cc401d638ea241f5527b0f038b57ed2ec2d078d176bc9e3917e91", + "previousLedgerHash": "e7144f1388f131e58458c866ccd8abd61b077097d654642458deb042c3e24194", "scpValue": { - "txSetHash": "839cc136a298fd1740e5e1366f53e1ee3fa00004613e01d1135a2ef4a355afd3", + "txSetHash": "46deacf0645b1e2454a4eaea0a06471f2b0c87b03d8d53e53ce1e9e5f39344bd", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "e5729ef89e4f1753adee0a78a14813682aae29076777d7052cf14b76b5735e85ce81ff0fbb686152559812786f728911715c2c36c1c78782a59977c338055802" + "signature": "573bed2b8c2db26c50f83f1fd1e64cda1ea9d93433c8e80a0373b91645419e10691bf5d2446626398fc5650e651e93267f3aa6d6c2e4adc05a125145703c580e" } } }, - "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "a92a7cded05cc401d638ea241f5527b0f038b57ed2ec2d078d176bc9e3917e91", + "previousLedgerHash": "e7144f1388f131e58458c866ccd8abd61b077097d654642458deb042c3e24194", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,12 +140,21 @@ "txProcessing": [ { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -170,9 +179,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -196,9 +205,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -228,17 +237,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -254,17 +262,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -274,23 +281,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -306,17 +316,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -336,21 +345,12 @@ }, { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,16 +433,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -458,16 +459,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -477,26 +479,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -512,16 +511,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-6.json b/src/testdata/ledger-close-meta-v0-protocol-6.json index 37975c73a0..fb1bc32046 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-6.json +++ b/src/testdata/ledger-close-meta-v0-protocol-6.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "6e14ed5172efda42969c9fee5b3700e58cf07294e462f8d398d5b9d3a0163a1e", + "hash": "9a29762ff2a8491cd83d5383cd85cce24f63bced043cdb9f6d48dfb36f62e542", "header": { "ledgerVersion": 6, - "previousLedgerHash": "d63ef76bf81654dfd6fc0221b72414129449edb33324e917ebe2ebb44a8f6edb", + "previousLedgerHash": "e7c5553e6d2c1f40a2dbb36b1596cd2d1a63fc609a615c2a8aa03a9fd2fcc516", "scpValue": { - "txSetHash": "626d254a50f16fb36e7e8b6fb8374bc5b02d69ee564f177f6c27a5895fbc6498", + "txSetHash": "207f11ba9bf697d54156332fcb40bee62ea0519578428d3f7cde740ef317d869", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "d0eb062912327b55018dfee93bf74c5022e689b49cba56576d656450ce6cdf38d37eb86c514657cd4f318c8fafd2838dde94b04da02b0ce367f391d60d229703" + "signature": "046655460bd9c72173cad0e1cd572fe0b239242f8fd6ee302c49818a03d50fd3980cf2ce96e081b526c4cc0d64da604540b0cd4713dfaa99b751d7e7a4e1ae0b" } } }, "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "d63ef76bf81654dfd6fc0221b72414129449edb33324e917ebe2ebb44a8f6edb", + "previousLedgerHash": "e7c5553e6d2c1f40a2dbb36b1596cd2d1a63fc609a615c2a8aa03a9fd2fcc516", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", diff --git a/src/testdata/ledger-close-meta-v0-protocol-7.json b/src/testdata/ledger-close-meta-v0-protocol-7.json index a1fc3b5d18..1c98d2b58b 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-7.json +++ b/src/testdata/ledger-close-meta-v0-protocol-7.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "7e8d4558a9149674baf176141c0352488ea8b22207a09df050290106e4ceb8f9", + "hash": "e90b4a20552fb48bba47d670f495542bb2b03c32cd5b73028ee7a884a2cf28fb", "header": { "ledgerVersion": 7, - "previousLedgerHash": "f16e2fd6e0c424e6d3f7ff99e06002ce511cb6c88ea4cdafe7ac82f14b1f561d", + "previousLedgerHash": "ea4abfca8afc4fa532d54e13159b2792d13a0ae3e0e289bd4c3585dd76673b6a", "scpValue": { - "txSetHash": "a0ab16963e59594b06d72a1eeec6e118871c6306ad7f008a8ad4c410978213da", + "txSetHash": "14eb4a3bee6635989d106066d7677691bea31658e617de7a7a30406cbb5029c5", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "05c6087e86ef044cf530f9de12e2040aa31dd01ab46f92c2826cd1dff9628336b0487172171dd5fb35ab571e7723267c52c98f03f8572f4ce1b68f95da489f09" + "signature": "1be3193ca690d768186fe897dbf4119ec38fc0d8e1a234ff4b6869576a1a55fc8352995257c63c806e4a0cc7d2b996789282775a4ada33f4a76f3170f8549e07" } } }, - "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "f16e2fd6e0c424e6d3f7ff99e06002ce511cb6c88ea4cdafe7ac82f14b1f561d", + "previousLedgerHash": "ea4abfca8afc4fa532d54e13159b2792d13a0ae3e0e289bd4c3585dd76673b6a", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,12 +140,21 @@ "txProcessing": [ { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -170,9 +179,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -196,9 +205,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -228,17 +237,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -254,17 +262,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -274,23 +281,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -306,17 +316,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -336,21 +345,12 @@ }, { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,16 +433,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -458,16 +459,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -477,26 +479,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -512,16 +511,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-8.json b/src/testdata/ledger-close-meta-v0-protocol-8.json index dea039de87..0ea0a5c6f4 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-8.json +++ b/src/testdata/ledger-close-meta-v0-protocol-8.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "3fdde0268d970a0a91d4d3f3777995f635be5e5cfb214145571443b6fd84df44", + "hash": "647e9dd7366bf05e01ddfe3aa7eaf73fb063bd49b1c6c758cf3df4ba2511d8b2", "header": { "ledgerVersion": 8, - "previousLedgerHash": "906c6d339f5c3e5b151c1acca2a0c3d4194dcf9b276bac49afc090f97f8aab13", + "previousLedgerHash": "078a5d7a69063abb9ad3abadd0c71649c7dbe837883e2a6a5297cf9dd8dfed04", "scpValue": { - "txSetHash": "dce2230c4d6b9c546d5f8b729382954f3d20d6edae410f8b8223748ff50b8a4d", + "txSetHash": "19b77a1d7fb93f3f68f9c013b35e95731ea84985813e68464ace181a1cc0c1e0", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "0b00c8640789b4ecd11e27da13f4bb329cf2a258f90f02a45715228e69fd4efb8667e175d6e283b77bb70a9f9c09dcfaad88b067a9ffea51842661958634060e" + "signature": "33453463b6e934ded30cb9071c26567fe4352e82947666f8c321b66f035b9c90524e5aefb199225ec5742a8055de3e299af56bd5fa2f871af50aa3a2d2c34000" } } }, - "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "906c6d339f5c3e5b151c1acca2a0c3d4194dcf9b276bac49afc090f97f8aab13", + "previousLedgerHash": "078a5d7a69063abb9ad3abadd0c71649c7dbe837883e2a6a5297cf9dd8dfed04", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,12 +140,21 @@ "txProcessing": [ { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -170,9 +179,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -196,9 +205,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -228,17 +237,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -254,17 +262,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -274,23 +281,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -306,17 +316,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -336,21 +345,12 @@ }, { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,16 +433,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -458,16 +459,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -477,26 +479,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -512,16 +511,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } diff --git a/src/testdata/ledger-close-meta-v0-protocol-9.json b/src/testdata/ledger-close-meta-v0-protocol-9.json index 2c4dd83b48..c8faad7ad1 100644 --- a/src/testdata/ledger-close-meta-v0-protocol-9.json +++ b/src/testdata/ledger-close-meta-v0-protocol-9.json @@ -3,24 +3,24 @@ "v": 0, "v0": { "ledgerHeader": { - "hash": "5faa6feb666c92f5c70b34ce06a0ba779ecb8207ae17386e21040a3c8d96864c", + "hash": "3075ef45c2557fda46590608dfabfe7dc0a2532697922c826a9766b5c92887de", "header": { "ledgerVersion": 9, - "previousLedgerHash": "a019dfd1687ed49199fa0b0301f30495a4caffb499740d5e0cec712abea65cf6", + "previousLedgerHash": "8be632363b7cbd5600f3587a7523113c84d925d979ccfc8f622cedddf0c2454f", "scpValue": { - "txSetHash": "0e73e46c4a103672a82001c489d07f8e66c46b932b428f830d2db92cbb74a22c", + "txSetHash": "ffd81bdb143199b329ad8fa064c21cf6eab2a093ce33b53b51d65a93ccc6afd9", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "21ad62ce1da049dbcc525df1e1833f49c890a2d4fca1fa8dbc80f4cbb0b472ed5125a9a4e3ea39502d17cf97539c069d2db767f5c58d7432bbf7b7b913b4a505" + "signature": "97840485624a423d81e31ac117d181ab8435eaac7ec8c3f626d54f09a1d27dcc15bb32feb8fef3e32b7d40802c4bbbccba7df8ecfb1c92e6662c7bc256104004" } } }, - "txSetResultHash": "819fc815dd4460882c3bc4bc775506d7b709464c47773aeb820a50f73a44fd2f", - "bucketListHash": "5a8af1fe27d3cb8e7a978f84fb09a501d53f58286b4cf12333e0b87b6efa4db9", + "txSetResultHash": "bd3770ebe06de80adc9a35bbc0dc9d6fdf48bab7101ce7482418e7ce7f8aa77c", + "bucketListHash": "47b570786e3023309f03a0bc7f736cac16d0465c2c89a146ab778a74e44a8c54", "ledgerSeq": 6, "totalCoins": 1000000000000000000, "feePool": 700, @@ -44,7 +44,7 @@ } }, "txSet": { - "previousLedgerHash": "a019dfd1687ed49199fa0b0301f30495a4caffb499740d5e0cec712abea65cf6", + "previousLedgerHash": "8be632363b7cbd5600f3587a7523113c84d925d979ccfc8f622cedddf0c2454f", "txs": [ { "type": "ENVELOPE_TYPE_TX_V0", @@ -140,21 +140,12 @@ "txProcessing": [ { "result": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 200, + "feeCharged": 100, "result": { "code": "txSUCCESS", "results": [ - { - "code": "opINNER", - "tr": { - "type": "PAYMENT", - "paymentResult": { - "code": "PAYMENT_SUCCESS" - } - } - }, { "code": "opINNER", "tr": { @@ -179,9 +170,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -205,9 +196,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200009800, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -237,16 +228,17 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 0, - "limit": 100, - "flags": 1, + "balance": 399999900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -262,16 +254,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "TRUSTLINE", - "trustLine": { + "type": "ACCOUNT", + "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "asset": { - "assetCode": "CUR1", - "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" - }, - "balance": 50, - "limit": 100, - "flags": 1, + "balance": 400000900, + "seqNum": 8589934593, + "numSubEntries": 1, + "inflationDest": null, + "flags": 0, + "homeDomain": "", + "thresholds": "01000000", + "signers": [], "ext": { "v": 0 } @@ -281,26 +274,23 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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 } @@ -316,16 +306,17 @@ "updated": { "lastModifiedLedgerSeq": 6, "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 } @@ -345,12 +336,21 @@ }, { "result": { - "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", + "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", "result": { - "feeCharged": 100, + "feeCharged": 200, "result": { "code": "txSUCCESS", "results": [ + { + "code": "opINNER", + "tr": { + "type": "PAYMENT", + "paymentResult": { + "code": "PAYMENT_SUCCESS" + } + } + }, { "code": "opINNER", "tr": { @@ -375,9 +375,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,9 +401,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200009800, + "seqNum": 17179869185, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -433,17 +433,16 @@ "state": { "lastModifiedLedgerSeq": 5, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 0, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -459,17 +458,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "numSubEntries": 1, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], + "asset": { + "assetCode": "CUR1", + "issuer": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q" + }, + "balance": 50, + "limit": 100, + "flags": 1, "ext": { "v": 0 } @@ -479,23 +477,26 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { "lastModifiedLedgerSeq": 6, "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": 0 } @@ -511,17 +512,16 @@ "updated": { "lastModifiedLedgerSeq": 6, "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": 0 } diff --git a/src/testdata/ledger-close-meta-v1-protocol-20-soroban.json b/src/testdata/ledger-close-meta-v1-protocol-20-soroban.json index cd62fdaf27..3fb940422c 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-20-soroban.json +++ b/src/testdata/ledger-close-meta-v1-protocol-20-soroban.json @@ -6,25 +6,25 @@ "v": 0 }, "ledgerHeader": { - "hash": "fd6db2959000c55aa510d054672cd0957bf858b273547681a30c07caf1c49faa", + "hash": "210017b4a10cb50a87b379056143a1b34639d11832ead16ae73aa07da4b2f7c5", "header": { "ledgerVersion": 20, - "previousLedgerHash": "9a0df15b38b5b4d506f3201169f3d442932f3134cab8f580255f78e253da6ef1", + "previousLedgerHash": "fa06ded1022887f708dfc430803f5c4ed307ae4ff08dc266f10d84a284d0d2a0", "scpValue": { - "txSetHash": "45d0c0c71d3a4c2683672d134de69908a68c91e55c745a3bb87fd379482a9599", + "txSetHash": "b73ddb76d75b2a874252654c440e536df9b672142d0b6322334b52ce01e481b5", "closeTime": 1451692800, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "1634218f4fdc974d51e4cc5496b9ca01925654ed99d359241b7df6d334c8b726c4b55a215187c1385c49e495834059040b6741f711d682da42059c98484b3c0d" + "signature": "58ce66cce7893b2764555a9afd77967e9d5b7adf08cc0a9e9a60f4f83db4ad6681bb3dec1cafd8ae5d4eb6e0a838d536fa736432f2fa2fb7af0eb6f89a9ef80a" } } }, - "txSetResultHash": "55967d9685748b1b8a9d5793affd57b0b5a1c6ceb6d7eaf8c7b84f268951ee93", - "bucketListHash": "fc7cb8bfb9d42a344a25a72e90b0a2f72b462f56707e92234ac262f63639498f", - "ledgerSeq": 27, + "txSetResultHash": "b3f37714ac4cb6c4afcffb6ea20691b27294e8dc6abdcca96eba2baea8fce8df", + "bucketListHash": "301b92a2e5a5f0c946a9804fbb62e3298f3fd2716182531d8dd7c16b42d2281f", + "ledgerSeq": 28, "totalCoins": 1000000000000000000, "feePool": 687415, "inflationSeq": 0, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "9a0df15b38b5b4d506f3201169f3d442932f3134cab8f580255f78e253da6ef1", + "previousLedgerHash": "fa06ded1022887f708dfc430803f5c4ed307ae4ff08dc266f10d84a284d0d2a0", "phases": [ { "v": 0, @@ -63,13 +63,123 @@ "txsMaybeDiscountedFee": { "baseFee": 100, "txs": [ + { + "type": "ENVELOPE_TYPE_TX", + "v1": { + "tx": { + "sourceAccount": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "fee": 1044855, + "seqNum": 51539607553, + "cond": { + "type": "PRECOND_NONE" + }, + "memo": { + "type": "MEMO_NONE" + }, + "operations": [ + { + "sourceAccount": null, + "body": { + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionOp": { + "hostFunction": { + "type": "HOST_FUNCTION_TYPE_CREATE_CONTRACT", + "createContract": { + "contractIDPreimage": { + "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", + "fromAddress": { + "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" + } + }, + "executable": { + "type": "CONTRACT_EXECUTABLE_WASM", + "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + }, + "auth": [ + { + "credentials": { + "type": "SOROBAN_CREDENTIALS_SOURCE_ACCOUNT" + }, + "rootInvocation": { + "function": { + "type": "SOROBAN_AUTHORIZED_FUNCTION_TYPE_CREATE_CONTRACT_HOST_FN", + "createContractHostFn": { + "contractIDPreimage": { + "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", + "fromAddress": { + "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" + } + }, + "executable": { + "type": "CONTRACT_EXECUTABLE_WASM", + "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + }, + "subInvocations": [] + } + } + ] + } + } + } + ], + "ext": { + "v": 1, + "sorobanData": { + "ext": { + "v": 0 + }, + "resources": { + "footprint": { + "readOnly": [ + { + "type": "CONTRACT_CODE", + "contractCode": { + "hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + ], + "readWrite": [ + { + "type": "CONTRACT_DATA", + "contractData": { + "contract": "CCOKSYPZJ2B3244CEMLBGUGWPMQ3BLES6AKHRQCX2XF27K4HDBW2LKDF", + "key": { + "type": "SCV_LEDGER_KEY_CONTRACT_INSTANCE" + }, + "durability": "PERSISTENT" + } + } + ] + }, + "instructions": 200000, + "readBytes": 5000, + "writeBytes": 5000 + }, + "resourceFee": 1043855 + } + } + }, + "signatures": [ + { + "hint": "4b80097b", + "signature": "53f711a6e8bc54c5e6b6d209f5cb6b4dea28730bac8ef86df9589249128b93ed9668e7bab0531f6882a3ef8978aac073c08a25400a05eb6a16919a9c49a02d0a" + } + ] + } + }, { "type": "ENVELOPE_TYPE_TX", "v1": { "tx": { "sourceAccount": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "fee": 102512, - "seqNum": 42949672961, + "seqNum": 47244640257, "cond": { "type": "PRECOND_NONE" }, @@ -143,7 +253,7 @@ "signatures": [ { "hint": "477df904", - "signature": "6d6c84c94cd919e5a16199c96005f360802de1b3d93e6b78a877582287e66b2e71a38bf0f5d3c8857472efd74debe129374a84c7d8303c1b9bd6d8718b5efc0a" + "signature": "7d9bf0729a1ead0eb7cebaa9012179794fd3c57db24ecb9edcd9505c53c7ca88752131f301aabbde785b5cb4797b2deb11af7eead94b21c36878f0c6c3e81e08" } ] } @@ -154,7 +264,7 @@ "tx": { "sourceAccount": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "fee": 127626, - "seqNum": 38654705665, + "seqNum": 42949672961, "cond": { "type": "PRECOND_NONE" }, @@ -240,7 +350,7 @@ "signatures": [ { "hint": "e189b409", - "signature": "17778d1dd7174f3e8cb6196f6cbefe8bd0b6501df26a92e0e7dce8c06dea99aa5c4268dc3b22d5084645d3612ea5dfb5e3fd0d35a18df8523a8d4dbf627c1e04" + "signature": "7f485f944582388fb4034d9737a8b08940e371b8cac04d0795a876db6476c0969be688184cd86388b989cc73785f6ff8165d1bf293567ff114d9e242481abf0e" } ] } @@ -251,7 +361,7 @@ "tx": { "sourceAccount": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "fee": 1001000, - "seqNum": 34359738369, + "seqNum": 38654705665, "cond": { "type": "PRECOND_NONE" }, @@ -311,7 +421,7 @@ "signatures": [ { "hint": "f7f60229", - "signature": "fe94fd2f8bf3a1b31298dfb53ab2abf854c9de5d3a54a51bfec3162b12889ca190b4806cb7dc465fdb45878979b1b0d97ec2995a1ad9df16606d8b7f5bf7ba01" + "signature": "eacb5cc7b4df9debd1b1de1f263e26fc85779ffed4ce1e226310ea4b5120aa8661cd253e637277fdad203b773cd1a16a5f9c274b17a2897850a538f94ee9cd05" } ] } @@ -322,7 +432,7 @@ "tx": { "sourceAccount": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "fee": 1001000, - "seqNum": 30064771073, + "seqNum": 34359738369, "cond": { "type": "PRECOND_NONE" }, @@ -376,117 +486,7 @@ "signatures": [ { "hint": "5099a12e", - "signature": "0c266097af0b9f9d84f0bfda10608f428736f7a4c5d8671704f3e1b793c66ca51e0a33e0f0afaabbb386103a4e253d5440dead30f65e7443a9ab97edc0f4b806" - } - ] - } - }, - { - "type": "ENVELOPE_TYPE_TX", - "v1": { - "tx": { - "sourceAccount": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "fee": 1044855, - "seqNum": 47244640257, - "cond": { - "type": "PRECOND_NONE" - }, - "memo": { - "type": "MEMO_NONE" - }, - "operations": [ - { - "sourceAccount": null, - "body": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionOp": { - "hostFunction": { - "type": "HOST_FUNCTION_TYPE_CREATE_CONTRACT", - "createContract": { - "contractIDPreimage": { - "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", - "fromAddress": { - "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" - } - }, - "executable": { - "type": "CONTRACT_EXECUTABLE_WASM", - "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - }, - "auth": [ - { - "credentials": { - "type": "SOROBAN_CREDENTIALS_SOURCE_ACCOUNT" - }, - "rootInvocation": { - "function": { - "type": "SOROBAN_AUTHORIZED_FUNCTION_TYPE_CREATE_CONTRACT_HOST_FN", - "createContractHostFn": { - "contractIDPreimage": { - "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", - "fromAddress": { - "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" - } - }, - "executable": { - "type": "CONTRACT_EXECUTABLE_WASM", - "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - }, - "subInvocations": [] - } - } - ] - } - } - } - ], - "ext": { - "v": 1, - "sorobanData": { - "ext": { - "v": 0 - }, - "resources": { - "footprint": { - "readOnly": [ - { - "type": "CONTRACT_CODE", - "contractCode": { - "hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - ], - "readWrite": [ - { - "type": "CONTRACT_DATA", - "contractData": { - "contract": "CCOKSYPZJ2B3244CEMLBGUGWPMQ3BLES6AKHRQCX2XF27K4HDBW2LKDF", - "key": { - "type": "SCV_LEDGER_KEY_CONTRACT_INSTANCE" - }, - "durability": "PERSISTENT" - } - } - ] - }, - "instructions": 200000, - "readBytes": 5000, - "writeBytes": 5000 - }, - "resourceFee": 1043855 - } - } - }, - "signatures": [ - { - "hint": "4b80097b", - "signature": "982474d661d15b5bb887b04a3bbf83ec065eb693081aa008dd19e113d623dcce4f61338d2848cfaa0ba5303dff3750995eaf5a4e9474d16656eb979636290a01" + "signature": "62ab56c91919471a63bed4ca3bdbed1d7066ad4babfdfa2ffe8d023d559334651889fac6f8e8caca6a2cc23c9fe4a6d0f2a64cd0fe61e35e6286d5264d8e9108" } ] } @@ -502,7 +502,7 @@ "txProcessing": [ { "result": { - "transactionHash": "20be6e563152fa988c4944f2cd9f69b52352648d9277d0bc319890e6cbf90dd8", + "transactionHash": "e310227a8c0d8d1f78632e65ebca281cd60d8619c9afc64491bcce98e7cd7ee3", "result": { "feeCharged": 106775, "result": { @@ -529,13 +529,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 9, + "lastModifiedLedgerSeq": 10, "data": { "type": "ACCOUNT", "account": { "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 400000000, - "seqNum": 38654705664, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -555,13 +555,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 399873274, - "seqNum": 38654705664, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -589,13 +589,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 399873274, - "seqNum": 38654705664, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -615,13 +615,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 399873274, - "seqNum": 38654705665, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -647,7 +647,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -669,7 +669,7 @@ { "type": "LEDGER_ENTRY_CREATED", "created": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "CONTRACT_DATA", "contractData": { @@ -696,12 +696,12 @@ { "type": "LEDGER_ENTRY_CREATED", "created": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", - "liveUntilLedgerSeq": 46 + "liveUntilLedgerSeq": 47 } }, "ext": { @@ -716,13 +716,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 399873274, - "seqNum": 38654705665, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -748,7 +748,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -766,13 +766,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 399893225, - "seqNum": 38654705665, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -798,7 +798,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -829,18 +829,18 @@ }, { "result": { - "transactionHash": "67f24f994422418f6d3a646b4e1157e099735431366f95519fa362199b16ff08", + "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" } } } @@ -855,13 +855,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 10, + "lastModifiedLedgerSeq": 9, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 400000000, - "seqNum": 42949672960, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -881,13 +881,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672960, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -915,13 +915,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672960, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -941,13 +941,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672961, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -973,7 +973,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -989,18 +989,87 @@ } } ], - "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", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672961, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1026,7 +1095,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1044,13 +1113,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399938388, - "seqNum": 42949672961, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399939441, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1076,7 +1145,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1108,7 +1177,7 @@ }, { "result": { - "transactionHash": "88c3b16683d16a06af94f678301f69b74fd2291b213c1f4733c5f307d8f61d29", + "transactionHash": "ee68d27257fa137933de22b3fdfbc4a736ec01af29a9e25e5b807252b1a1ca0a", "result": { "feeCharged": 51547, "result": { @@ -1134,13 +1203,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 7, + "lastModifiedLedgerSeq": 8, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 400000000, - "seqNum": 30064771072, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1160,13 +1229,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771072, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1194,13 +1263,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771072, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1220,13 +1289,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771073, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1252,7 +1321,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1274,12 +1343,12 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "TTL", "ttl": { "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 25 + "liveUntilLedgerSeq": 26 } }, "ext": { @@ -1290,12 +1359,12 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 46 + "liveUntilLedgerSeq": 47 } }, "ext": { @@ -1310,13 +1379,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771073, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1342,7 +1411,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1360,13 +1429,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 399948453, - "seqNum": 30064771073, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1392,7 +1461,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1424,7 +1493,7 @@ }, { "result": { - "transactionHash": "d2a7a1b5e824631a66bab3d900c6719cf3d6f50168d893bb27d46500a44bb04d", + "transactionHash": "1dd58e08056b81c30a5dd17447a2c0b449f15fca73d7e8fbdacb0c58189581c3", "result": { "feeCharged": 42946, "result": { @@ -1450,13 +1519,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 11, + "lastModifiedLedgerSeq": 12, "data": { "type": "ACCOUNT", "account": { "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 400000000, - "seqNum": 47244640256, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1476,13 +1545,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 398956045, - "seqNum": 47244640256, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1510,13 +1579,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 398956045, - "seqNum": 47244640256, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1536,13 +1605,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 398956045, - "seqNum": 47244640257, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1568,7 +1637,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1589,13 +1658,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 398956045, - "seqNum": 47244640257, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1621,7 +1690,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1639,13 +1708,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 399957054, - "seqNum": 47244640257, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1671,7 +1740,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1703,18 +1772,18 @@ }, { "result": { - "transactionHash": "cd8ae40c9b119e507f4ee4b6e1dbbcc9e3fc5fc54321f5a1a2c74c1f6af48784", + "transactionHash": "bb0a6b13caea6b015555dfd332aca1099e8654896bf7d1bcce8432e833a2572a", "result": { - "feeCharged": 60559, + "feeCharged": 61612, "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_TRAPPED" } } } @@ -1729,13 +1798,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 8, + "lastModifiedLedgerSeq": 11, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "balance": 400000000, - "seqNum": 34359738368, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1755,13 +1824,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1789,13 +1858,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1815,13 +1884,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1847,7 +1916,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1863,87 +1932,18 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10005 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10027 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10005 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10027 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1969,7 +1969,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1987,13 +1987,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399939441, - "seqNum": 34359738369, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399938388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -2019,7 +2019,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } diff --git a/src/testdata/ledger-close-meta-v1-protocol-20.json b/src/testdata/ledger-close-meta-v1-protocol-20.json index c4e1a39390..cbc73b1297 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-20.json +++ b/src/testdata/ledger-close-meta-v1-protocol-20.json @@ -6,25 +6,25 @@ "v": 0 }, "ledgerHeader": { - "hash": "a841012219842022f6e82fd547ddcbbf45eefbd826d88ddc1206d43c6a66ae69", + "hash": "26e7920e014e57fc78ee8156d028ac618573034111c6387ccf3cd08de506071f", "header": { "ledgerVersion": 20, - "previousLedgerHash": "f1585138bf6dc3665a7e8930ad23baf7056a2c39e4ede506990781446f185211", + "previousLedgerHash": "15a912e7b36da55ab1d1f6735e0a8dd659876d97d9231fc48e31bebb0819a456", "scpValue": { - "txSetHash": "ad71d589c7816fcf909180fd8c517f199bc412dbe0440d2c0a5e6b3be45c54dd", + "txSetHash": "163a70a902ab200e527ad7bd92678c11591333cfe6f6258985f2d4ba98235961", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "095cc958192d5c2ebb36ba8b01b3e8147adaf0ad91dc155ec735dd7ecb21d6358eec3b9ca1264edbbcae6be398ee66d9b4f0534f0ec9dd0fb03d2d984ebba30e" + "signature": "b05f325722618b96b61fab772c6446cc50c504b3394e0991fa3a574564d14fa05fb420a1a97897af50fbdb82f906580616171c7071ef9b61a3dc482365d1560e" } } }, - "txSetResultHash": "cd1398cda325d4eada631301e6501421cda30fd0b43da3e5d0ffb26caf073b0a", - "bucketListHash": "9202206f7f6ba555cad0debbd32826fb213b7f926841053efe24b96ebfacf2cc", - "ledgerSeq": 6, + "txSetResultHash": "249b974bacf8b5c4a8f0b5598194c1b9eca64af0b5c1506daa871c1533b6baac", + "bucketListHash": "41e6f842778e7b6b81576c29fefc222c5ff909241a3fcf7503ed3322222b92b5", + "ledgerSeq": 7, "totalCoins": 1000000000000000000, "feePool": 800, "inflationSeq": 0, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "f1585138bf6dc3665a7e8930ad23baf7056a2c39e4ede506990781446f185211", + "previousLedgerHash": "15a912e7b36da55ab1d1f6735e0a8dd659876d97d9231fc48e31bebb0819a456", "phases": [ { "v": 0, @@ -109,7 +109,7 @@ "tx": { "sourceAccount": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", "fee": 200, - "seqNum": 17179869185, + "seqNum": 21474836481, "cond": { "type": "PRECOND_NONE" }, @@ -153,7 +153,7 @@ "signatures": [ { "hint": "eaf6bc36", - "signature": "3ecb3b962cad23b596fa7e85923a0b6618fa4e632851f657b43c5060123d1cd3e2204260b3a3b35510def33e1e6379139a0cd71efcf0720d9c660126e4399b0f" + "signature": "6e7298cfa615172abf916f32df9b7b4202c5ce2014cf936ddd21157923c829f90f67d9849646e0d4e0169ac3f52e94dfdd0674f7b55b85aa7770164d186f5509" } ] } @@ -165,7 +165,7 @@ "signatures": [ { "hint": "f7f60229", - "signature": "940da5e60c3f9a934ceac37541ad85e5c3cce3a9741750a0253f80ed42fa9b75e76e3c2c09a95a58964952adf5e1569d4b330107cfb0d9c62f1f50dd04a0c105" + "signature": "de09a3bf14a4b7ba0980b6fc998edf64144ef9b9a3a7636b292e070880ce866bdb1256fbd66d2a2e17e263e34e1ac31fdf7f87001505aa295091de793b212406" } ] } @@ -185,43 +185,22 @@ "txProcessing": [ { "result": { - "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 300, + "feeCharged": 100, "result": { - "code": "txFEE_BUMP_INNER_SUCCESS", - "innerResultPair": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", - "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": 3, + "lastModifiedLedgerSeq": 5, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 400000000, - "seqNum": 12884901888, + "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 + } + } + } + } + } } } }, @@ -258,13 +261,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, + "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 + } + } + } + } + } } } }, @@ -292,65 +319,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 4, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "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 + } + } + } + } + } } } }, @@ -370,13 +369,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -402,7 +401,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -424,20 +423,45 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "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 + } + } + } + } + } } } }, @@ -449,49 +473,95 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "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 - } - } - }, - "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 + } + } + } + } + } + } + } + }, + "ext": { "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "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 + } + } + } + } + } } } }, @@ -503,20 +573,45 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "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 @@ -565,9 +681,9 @@ "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": 4, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -611,13 +703,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -625,31 +717,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": 4, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -669,13 +737,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -683,31 +751,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": 4, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -719,13 +763,65 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "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, + "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": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 21474836481, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -751,7 +847,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -773,45 +869,20 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "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": 5, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -823,45 +894,20 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "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": 5, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -869,49 +915,28 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "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": 6, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -923,45 +948,20 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "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": 6, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -981,7 +981,7 @@ ], "upgradesProcessing": [], "scpInfo": [], - "totalByteSizeOfBucketList": 373, + "totalByteSizeOfBucketList": 583, "evictedTemporaryLedgerKeys": [], "evictedPersistentLedgerEntries": [] } diff --git a/src/testdata/ledger-close-meta-v1-protocol-21-soroban.json b/src/testdata/ledger-close-meta-v1-protocol-21-soroban.json index a7190033e7..7df7f8bff4 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-21-soroban.json +++ b/src/testdata/ledger-close-meta-v1-protocol-21-soroban.json @@ -6,25 +6,25 @@ "v": 0 }, "ledgerHeader": { - "hash": "9c1f2a2f2da9c179c64164f61dd5b6c6f6d5cc1b73e15438d502eeb7174a233f", + "hash": "04327bd8295625131efb5187393adfe5c3b1f7b8c7a969bcee3dbaaa5631337d", "header": { "ledgerVersion": 21, - "previousLedgerHash": "b625cd36cabacfa59d1a31c329b84df8bc9957514b0ba68c60bf53dd5e6357f5", + "previousLedgerHash": "42c22b6b9c800df6183be351519ac8f21b9e5bc13bd1685ed4b16aaa7c789ce5", "scpValue": { - "txSetHash": "a154392cec5df909eb5058e62f9e2764725f33cee37466715a2b52476ce82ec3", + "txSetHash": "a6bf73dfb9ff963863cf6088117b08e16e843bb4af91f9bca79cba90c81ba6e9", "closeTime": 1451692800, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "8a73dc005f67cad19acb27f9adb1f59bb838c84dbf9ca23d8b7a2f2f39700bafd5f6a1157ef6921f137dad00e905770d88a53200a1076200294f207d4f627501" + "signature": "32b86b9add640e66f4de94109e7fabb231898872fd56761c37e51ab5eb47165642c341370e721d7f1edcc30e2b547d930818207116d1ffb1a04b03b16e47a50b" } } }, - "txSetResultHash": "519d9551f48941e8c08c8aa0c6070833f00b6569e354b0ba3ce8e143e21e5cbf", - "bucketListHash": "5b668ae252f1542ae116d6745b3400dae3a67f728aa6b6ed33b1c0bac80f4b46", - "ledgerSeq": 27, + "txSetResultHash": "b3f37714ac4cb6c4afcffb6ea20691b27294e8dc6abdcca96eba2baea8fce8df", + "bucketListHash": "c64489785f019f5585c180624a94e4a2df437bfa8a4837e9da9e80885509a032", + "ledgerSeq": 28, "totalCoins": 1000000000000000000, "feePool": 804504, "inflationSeq": 0, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "b625cd36cabacfa59d1a31c329b84df8bc9957514b0ba68c60bf53dd5e6357f5", + "previousLedgerHash": "42c22b6b9c800df6183be351519ac8f21b9e5bc13bd1685ed4b16aaa7c789ce5", "phases": [ { "v": 0, @@ -63,13 +63,123 @@ "txsMaybeDiscountedFee": { "baseFee": 100, "txs": [ + { + "type": "ENVELOPE_TYPE_TX", + "v1": { + "tx": { + "sourceAccount": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "fee": 1044855, + "seqNum": 51539607553, + "cond": { + "type": "PRECOND_NONE" + }, + "memo": { + "type": "MEMO_NONE" + }, + "operations": [ + { + "sourceAccount": null, + "body": { + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionOp": { + "hostFunction": { + "type": "HOST_FUNCTION_TYPE_CREATE_CONTRACT", + "createContract": { + "contractIDPreimage": { + "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", + "fromAddress": { + "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" + } + }, + "executable": { + "type": "CONTRACT_EXECUTABLE_WASM", + "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + }, + "auth": [ + { + "credentials": { + "type": "SOROBAN_CREDENTIALS_SOURCE_ACCOUNT" + }, + "rootInvocation": { + "function": { + "type": "SOROBAN_AUTHORIZED_FUNCTION_TYPE_CREATE_CONTRACT_HOST_FN", + "createContractHostFn": { + "contractIDPreimage": { + "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", + "fromAddress": { + "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" + } + }, + "executable": { + "type": "CONTRACT_EXECUTABLE_WASM", + "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + }, + "subInvocations": [] + } + } + ] + } + } + } + ], + "ext": { + "v": 1, + "sorobanData": { + "ext": { + "v": 0 + }, + "resources": { + "footprint": { + "readOnly": [ + { + "type": "CONTRACT_CODE", + "contractCode": { + "hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + ], + "readWrite": [ + { + "type": "CONTRACT_DATA", + "contractData": { + "contract": "CCOKSYPZJ2B3244CEMLBGUGWPMQ3BLES6AKHRQCX2XF27K4HDBW2LKDF", + "key": { + "type": "SCV_LEDGER_KEY_CONTRACT_INSTANCE" + }, + "durability": "PERSISTENT" + } + } + ] + }, + "instructions": 200000, + "readBytes": 5000, + "writeBytes": 5000 + }, + "resourceFee": 1043855 + } + } + }, + "signatures": [ + { + "hint": "4b80097b", + "signature": "53f711a6e8bc54c5e6b6d209f5cb6b4dea28730bac8ef86df9589249128b93ed9668e7bab0531f6882a3ef8978aac073c08a25400a05eb6a16919a9c49a02d0a" + } + ] + } + }, { "type": "ENVELOPE_TYPE_TX", "v1": { "tx": { "sourceAccount": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "fee": 102512, - "seqNum": 42949672961, + "seqNum": 47244640257, "cond": { "type": "PRECOND_NONE" }, @@ -143,7 +253,7 @@ "signatures": [ { "hint": "477df904", - "signature": "6d6c84c94cd919e5a16199c96005f360802de1b3d93e6b78a877582287e66b2e71a38bf0f5d3c8857472efd74debe129374a84c7d8303c1b9bd6d8718b5efc0a" + "signature": "7d9bf0729a1ead0eb7cebaa9012179794fd3c57db24ecb9edcd9505c53c7ca88752131f301aabbde785b5cb4797b2deb11af7eead94b21c36878f0c6c3e81e08" } ] } @@ -154,7 +264,7 @@ "tx": { "sourceAccount": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "fee": 127626, - "seqNum": 38654705665, + "seqNum": 42949672961, "cond": { "type": "PRECOND_NONE" }, @@ -240,7 +350,7 @@ "signatures": [ { "hint": "e189b409", - "signature": "17778d1dd7174f3e8cb6196f6cbefe8bd0b6501df26a92e0e7dce8c06dea99aa5c4268dc3b22d5084645d3612ea5dfb5e3fd0d35a18df8523a8d4dbf627c1e04" + "signature": "7f485f944582388fb4034d9737a8b08940e371b8cac04d0795a876db6476c0969be688184cd86388b989cc73785f6ff8165d1bf293567ff114d9e242481abf0e" } ] } @@ -251,7 +361,7 @@ "tx": { "sourceAccount": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "fee": 1001000, - "seqNum": 34359738369, + "seqNum": 38654705665, "cond": { "type": "PRECOND_NONE" }, @@ -311,7 +421,7 @@ "signatures": [ { "hint": "f7f60229", - "signature": "fe94fd2f8bf3a1b31298dfb53ab2abf854c9de5d3a54a51bfec3162b12889ca190b4806cb7dc465fdb45878979b1b0d97ec2995a1ad9df16606d8b7f5bf7ba01" + "signature": "eacb5cc7b4df9debd1b1de1f263e26fc85779ffed4ce1e226310ea4b5120aa8661cd253e637277fdad203b773cd1a16a5f9c274b17a2897850a538f94ee9cd05" } ] } @@ -322,7 +432,7 @@ "tx": { "sourceAccount": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "fee": 1001000, - "seqNum": 30064771073, + "seqNum": 34359738369, "cond": { "type": "PRECOND_NONE" }, @@ -376,117 +486,7 @@ "signatures": [ { "hint": "5099a12e", - "signature": "0c266097af0b9f9d84f0bfda10608f428736f7a4c5d8671704f3e1b793c66ca51e0a33e0f0afaabbb386103a4e253d5440dead30f65e7443a9ab97edc0f4b806" - } - ] - } - }, - { - "type": "ENVELOPE_TYPE_TX", - "v1": { - "tx": { - "sourceAccount": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "fee": 1044855, - "seqNum": 47244640257, - "cond": { - "type": "PRECOND_NONE" - }, - "memo": { - "type": "MEMO_NONE" - }, - "operations": [ - { - "sourceAccount": null, - "body": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionOp": { - "hostFunction": { - "type": "HOST_FUNCTION_TYPE_CREATE_CONTRACT", - "createContract": { - "contractIDPreimage": { - "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", - "fromAddress": { - "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" - } - }, - "executable": { - "type": "CONTRACT_EXECUTABLE_WASM", - "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - }, - "auth": [ - { - "credentials": { - "type": "SOROBAN_CREDENTIALS_SOURCE_ACCOUNT" - }, - "rootInvocation": { - "function": { - "type": "SOROBAN_AUTHORIZED_FUNCTION_TYPE_CREATE_CONTRACT_HOST_FN", - "createContractHostFn": { - "contractIDPreimage": { - "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", - "fromAddress": { - "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" - } - }, - "executable": { - "type": "CONTRACT_EXECUTABLE_WASM", - "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - }, - "subInvocations": [] - } - } - ] - } - } - } - ], - "ext": { - "v": 1, - "sorobanData": { - "ext": { - "v": 0 - }, - "resources": { - "footprint": { - "readOnly": [ - { - "type": "CONTRACT_CODE", - "contractCode": { - "hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - ], - "readWrite": [ - { - "type": "CONTRACT_DATA", - "contractData": { - "contract": "CCOKSYPZJ2B3244CEMLBGUGWPMQ3BLES6AKHRQCX2XF27K4HDBW2LKDF", - "key": { - "type": "SCV_LEDGER_KEY_CONTRACT_INSTANCE" - }, - "durability": "PERSISTENT" - } - } - ] - }, - "instructions": 200000, - "readBytes": 5000, - "writeBytes": 5000 - }, - "resourceFee": 1043855 - } - } - }, - "signatures": [ - { - "hint": "4b80097b", - "signature": "982474d661d15b5bb887b04a3bbf83ec065eb693081aa008dd19e113d623dcce4f61338d2848cfaa0ba5303dff3750995eaf5a4e9474d16656eb979636290a01" + "signature": "62ab56c91919471a63bed4ca3bdbed1d7066ad4babfdfa2ffe8d023d559334651889fac6f8e8caca6a2cc23c9fe4a6d0f2a64cd0fe61e35e6286d5264d8e9108" } ] } @@ -502,18 +502,19 @@ "txProcessing": [ { "result": { - "transactionHash": "cd8ae40c9b119e507f4ee4b6e1dbbcc9e3fc5fc54321f5a1a2c74c1f6af48784", + "transactionHash": "e310227a8c0d8d1f78632e65ebca281cd60d8619c9afc64491bcce98e7cd7ee3", "result": { - "feeCharged": 60559, + "feeCharged": 106775, "result": { "code": "txSUCCESS", "results": [ { "code": "opINNER", "tr": { - "type": "EXTEND_FOOTPRINT_TTL", - "extendFootprintTTLResult": { - "code": "EXTEND_FOOTPRINT_TTL_SUCCESS" + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionResult": { + "code": "INVOKE_HOST_FUNCTION_SUCCESS", + "success": "cbbc48750debb8535093b3deaf88ac7f4cff87425576a58de2bac754acdb4616" } } } @@ -528,13 +529,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 8, + "lastModifiedLedgerSeq": 10, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 400000000, - "seqNum": 34359738368, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -554,13 +555,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -588,13 +589,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -614,13 +615,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -646,7 +647,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -666,46 +667,25 @@ { "changes": [ { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10005 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10027 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, + "type": "LEDGER_ENTRY_CREATED", + "created": { + "lastModifiedLedgerSeq": 28, "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10005 + "type": "CONTRACT_DATA", + "contractData": { + "ext": { + "v": 0 + }, + "contract": "CAA3QKIP2SNVXUJTB4HKOGF55JTSSMQGED3FZYNHMNSXYV3DRRMAWA3Y", + "key": { + "type": "SCV_SYMBOL", + "sym": "key" + }, + "durability": "PERSISTENT", + "val": { + "type": "SCV_U64", + "u64": 42 + } } }, "ext": { @@ -714,14 +694,14 @@ } }, { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, + "type": "LEDGER_ENTRY_CREATED", + "created": { + "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10027 + "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", + "liveUntilLedgerSeq": 47 } }, "ext": { @@ -736,13 +716,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -768,7 +748,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -786,13 +766,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399939441, - "seqNum": 34359738369, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399893225, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -818,7 +798,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -840,8 +820,7 @@ }, "events": [], "returnValue": { - "type": "SCV_BOOL", - "b": "FALSE" + "type": "SCV_VOID" }, "diagnosticEvents": [] } @@ -850,18 +829,18 @@ }, { "result": { - "transactionHash": "d2a7a1b5e824631a66bab3d900c6719cf3d6f50168d893bb27d46500a44bb04d", + "transactionHash": "364ec41dce0a678476ea3ebfc5caa28165ef3bf0976071d858b1c4044f187d25", "result": { - "feeCharged": 42946, + "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" } } } @@ -876,13 +855,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 11, + "lastModifiedLedgerSeq": 9, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 400000000, - "seqNum": 47244640256, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -902,13 +881,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640256, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -936,13 +915,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640256, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -962,13 +941,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640257, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -994,7 +973,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1010,18 +989,87 @@ } } ], - "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", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640257, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1047,7 +1095,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1065,13 +1113,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 399957054, - "seqNum": 47244640257, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399939441, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1097,7 +1145,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1129,7 +1177,7 @@ }, { "result": { - "transactionHash": "88c3b16683d16a06af94f678301f69b74fd2291b213c1f4733c5f307d8f61d29", + "transactionHash": "ee68d27257fa137933de22b3fdfbc4a736ec01af29a9e25e5b807252b1a1ca0a", "result": { "feeCharged": 51547, "result": { @@ -1155,13 +1203,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 7, + "lastModifiedLedgerSeq": 8, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 400000000, - "seqNum": 30064771072, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1181,13 +1229,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771072, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1215,13 +1263,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771072, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1241,13 +1289,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771073, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1273,7 +1321,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1295,12 +1343,12 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "TTL", "ttl": { "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 25 + "liveUntilLedgerSeq": 26 } }, "ext": { @@ -1311,12 +1359,12 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 46 + "liveUntilLedgerSeq": 47 } }, "ext": { @@ -1331,13 +1379,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 398999900, - "seqNum": 30064771073, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1363,7 +1411,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1381,13 +1429,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 399948453, - "seqNum": 30064771073, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1413,7 +1461,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1445,9 +1493,9 @@ }, { "result": { - "transactionHash": "67f24f994422418f6d3a646b4e1157e099735431366f95519fa362199b16ff08", + "transactionHash": "1dd58e08056b81c30a5dd17447a2c0b449f15fca73d7e8fbdacb0c58189581c3", "result": { - "feeCharged": 61612, + "feeCharged": 42946, "result": { "code": "txFAILED", "results": [ @@ -1456,7 +1504,7 @@ "tr": { "type": "INVOKE_HOST_FUNCTION", "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_TRAPPED" + "code": "INVOKE_HOST_FUNCTION_RESOURCE_LIMIT_EXCEEDED" } } } @@ -1471,13 +1519,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 10, + "lastModifiedLedgerSeq": 12, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 400000000, - "seqNum": 42949672960, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1497,13 +1545,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672960, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1531,13 +1579,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672960, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1557,13 +1605,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672961, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1589,7 +1637,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1610,13 +1658,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672961, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1642,7 +1690,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1660,13 +1708,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399938388, - "seqNum": 42949672961, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 399957054, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1692,7 +1740,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1724,19 +1772,18 @@ }, { "result": { - "transactionHash": "20be6e563152fa988c4944f2cd9f69b52352648d9277d0bc319890e6cbf90dd8", + "transactionHash": "bb0a6b13caea6b015555dfd332aca1099e8654896bf7d1bcce8432e833a2572a", "result": { - "feeCharged": 106775, + "feeCharged": 61612, "result": { - "code": "txSUCCESS", + "code": "txFAILED", "results": [ { "code": "opINNER", "tr": { "type": "INVOKE_HOST_FUNCTION", "invokeHostFunctionResult": { - "code": "INVOKE_HOST_FUNCTION_SUCCESS", - "success": "cbbc48750debb8535093b3deaf88ac7f4cff87425576a58de2bac754acdb4616" + "code": "INVOKE_HOST_FUNCTION_TRAPPED" } } } @@ -1751,13 +1798,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 9, + "lastModifiedLedgerSeq": 11, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "balance": 400000000, - "seqNum": 38654705664, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1777,13 +1824,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705664, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1811,13 +1858,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705664, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1837,13 +1884,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705665, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1869,7 +1916,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1885,66 +1932,18 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_CREATED", - "created": { - "lastModifiedLedgerSeq": 27, - "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": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", - "liveUntilLedgerSeq": 46 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705665, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1970,7 +1969,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1988,13 +1987,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399893225, - "seqNum": 38654705665, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399938388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -2020,7 +2019,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -2042,7 +2041,8 @@ }, "events": [], "returnValue": { - "type": "SCV_VOID" + "type": "SCV_BOOL", + "b": "FALSE" }, "diagnosticEvents": [] } diff --git a/src/testdata/ledger-close-meta-v1-protocol-21.json b/src/testdata/ledger-close-meta-v1-protocol-21.json index d74b99357b..0f7de7eb79 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-21.json +++ b/src/testdata/ledger-close-meta-v1-protocol-21.json @@ -6,25 +6,25 @@ "v": 0 }, "ledgerHeader": { - "hash": "fba606f2c599761e99cdb1eddf8ae73184b9a6639fc73e865ef53f6f5195b9a2", + "hash": "cf2b52270304cb86b2000cd1528f896d2275378976fe2cbc136da351c53b73ae", "header": { "ledgerVersion": 21, - "previousLedgerHash": "d36f1d1dc973131b117c0c80376888edbf703d1f56950d3876f58fb8a16b261d", + "previousLedgerHash": "98acdb62cdbd63ea8fabe7c255adcf3a12275fc8b1809e83acdcfce28686b3e8", "scpValue": { - "txSetHash": "470f8f2d4ba507a4827cf7837b4e4a0bbda616895dd8be9decbe5e9313604dd9", + "txSetHash": "bd07f5ab8240ac3d89c8bdff438ac8dc517b59c04463bb42ee1fccd74e639c13", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "2889f208238b439eaaa6973f98f2042fc66ef83f877d63be37e15a44bba0f4f79fe680b84700a707c61028450b67e537b9299afea9509790d5f966ccbbe0c30d" + "signature": "4a71625ec2e4a6123dca54cb64aad965a566db35a63003e5463e4646c0c89205c1aed269cc14c41d66d8cff3848772f98a2ab889cd327a2b346eeaf44e7bfc0b" } } }, - "txSetResultHash": "cf65fee29665ff0c2a6910b24c420a487a7416ccd79c683b48aac1d45ad21faa", - "bucketListHash": "0840e28b8591e421d5199a16b0e5944e12b3e9dfd2b79d05f6bd151c0f6a51da", - "ledgerSeq": 6, + "txSetResultHash": "f66233c106977a4cc148e019411ff6ddfaf76c337d004ed9a304a70407b161d0", + "bucketListHash": "7ac058a4d395c68f9a26602186ce2cd99c992c0da55b630e1b36bb7dff8352d9", + "ledgerSeq": 7, "totalCoins": 1000000000000000000, "feePool": 800, "inflationSeq": 0, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "d36f1d1dc973131b117c0c80376888edbf703d1f56950d3876f58fb8a16b261d", + "previousLedgerHash": "98acdb62cdbd63ea8fabe7c255adcf3a12275fc8b1809e83acdcfce28686b3e8", "phases": [ { "v": 0, @@ -109,7 +109,7 @@ "tx": { "sourceAccount": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", "fee": 200, - "seqNum": 17179869185, + "seqNum": 21474836481, "cond": { "type": "PRECOND_NONE" }, @@ -153,7 +153,7 @@ "signatures": [ { "hint": "eaf6bc36", - "signature": "3ecb3b962cad23b596fa7e85923a0b6618fa4e632851f657b43c5060123d1cd3e2204260b3a3b35510def33e1e6379139a0cd71efcf0720d9c660126e4399b0f" + "signature": "6e7298cfa615172abf916f32df9b7b4202c5ce2014cf936ddd21157923c829f90f67d9849646e0d4e0169ac3f52e94dfdd0674f7b55b85aa7770164d186f5509" } ] } @@ -165,7 +165,7 @@ "signatures": [ { "hint": "f7f60229", - "signature": "940da5e60c3f9a934ceac37541ad85e5c3cce3a9741750a0253f80ed42fa9b75e76e3c2c09a95a58964952adf5e1569d4b330107cfb0d9c62f1f50dd04a0c105" + "signature": "de09a3bf14a4b7ba0980b6fc998edf64144ef9b9a3a7636b292e070880ce866bdb1256fbd66d2a2e17e263e34e1ac31fdf7f87001505aa295091de793b212406" } ] } @@ -185,22 +185,43 @@ "txProcessing": [ { "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 @@ -215,9 +236,9 @@ "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989700, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 400000000, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -225,31 +246,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": 4, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -261,13 +258,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -275,31 +272,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": 4, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -319,13 +292,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 3, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399999700, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -333,31 +306,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": 4, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -369,13 +318,65 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", - "balance": 999999998999989600, - "seqNum": 4, + "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, + "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": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", + "balance": 200010000, + "seqNum": 21474836481, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -401,7 +402,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -423,45 +424,20 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "lastModifiedLedgerSeq": 6, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399999900, - "seqNum": 8589934593, - "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": 5, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -473,45 +449,20 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { - "type": "ACCOUNT", - "account": { + "type": "TRUSTLINE", + "trustLine": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 400000900, - "seqNum": 8589934593, - "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": 5, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -519,49 +470,28 @@ "v": 0 } } - }, + } + ] + }, + { + "changes": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "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": 6, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -573,45 +503,20 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "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": 6, - "seqTime": 0 - } - } - } - } - } + "v": 0 } } }, @@ -630,43 +535,22 @@ }, { "result": { - "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", + "transactionHash": "0db2322d85e9d8ea2421559922bb6107429650ebdad304c907480853d465c10d", "result": { - "feeCharged": 300, + "feeCharged": 100, "result": { - "code": "txFEE_BUMP_INNER_SUCCESS", - "innerResultPair": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", - "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 @@ -677,13 +561,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 3, + "lastModifiedLedgerSeq": 5, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 400000000, - "seqNum": 12884901888, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989700, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -691,7 +575,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 + } + } + } + } + } } } }, @@ -703,13 +611,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -717,7 +625,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 + } + } + } + } + } } } }, @@ -737,65 +669,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399999700, - "seqNum": 12884901888, - "numSubEntries": 0, - "inflationDest": null, - "flags": 0, - "homeDomain": "", - "thresholds": "01000000", - "signers": [], - "ext": { - "v": 0 - } - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 4, - "data": { - "type": "ACCOUNT", - "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869184, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 3, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -803,7 +683,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 + } + } + } + } + } } } }, @@ -815,13 +719,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", - "balance": 200010000, - "seqNum": 17179869185, + "accountID": "GC4EFXBN6BEENDAX7PBW5PGIIIVH3INMD3OEPQASXOLGOHVVP7ZEMG7X", + "balance": 999999998999989600, + "seqNum": 4, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -847,7 +751,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -869,20 +773,45 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "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 + } + } + } + } + } } } }, @@ -894,20 +823,45 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "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 + } + } + } + } + } } } }, @@ -915,28 +869,49 @@ "v": 0 } } - } - ] - }, - { - "changes": [ + }, { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "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 + } + } + } + } + } } } }, @@ -948,20 +923,45 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "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 + } + } + } + } + } } } }, @@ -981,7 +981,7 @@ ], "upgradesProcessing": [], "scpInfo": [], - "totalByteSizeOfBucketList": 520, + "totalByteSizeOfBucketList": 788, "evictedTemporaryLedgerKeys": [], "evictedPersistentLedgerEntries": [] } 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 b412e4b087..1233e1c37e 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-22-soroban.json +++ b/src/testdata/ledger-close-meta-v1-protocol-22-soroban.json @@ -6,25 +6,25 @@ "v": 0 }, "ledgerHeader": { - "hash": "c69e76238ac6ce1baf4466f6874d0c5f7e8a5505d3d69edb2c1b2daebdf93032", + "hash": "f4aaf081dc552d6b18652d6adc6a0fb3799fd313386153b27dec192a96efd801", "header": { "ledgerVersion": 22, - "previousLedgerHash": "aa828e78d2250ec6766ca2b4a39c0373ce05f77162052f70bb12f3ad8765b01a", + "previousLedgerHash": "f991b748101b66b95dcc062ff57912e88313c0e8c7d9dc6f8c880e71278c2105", "scpValue": { - "txSetHash": "821c71cb1f1593bf251dd9c4e6d29a6e7c5f7f2045aa0e3bca5b99b8bd5ed3bf", + "txSetHash": "253132a66d3c6e8cc4d1d4e4c41e06e7a14a296411e9c3fad0126a8f653f3151", "closeTime": 1451692800, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "306b7239f92538c688ab4a92ec32b8dcdcd347bc9e8addbd77fd32886600ec719fe03efdcaa8009d751457314d84f59817ddd480edbb4eb8d13b7a1ac920ac02" + "signature": "d319ecf8295ca3925e622ad2c522080f3b56dffbe64cfbaec1c02052ba4d8860675600368b784f02078274d771a711d69f18b7241daf2f7887d5d4d7307f3f0c" } } }, - "txSetResultHash": "afb14ccc1ff1fa97b3feaa06f9c029c634e8a1eb1e68959f995d2df14f2bace4", - "bucketListHash": "dab28c89a397420d05d8d8782f078c59277ac9441a00749c1639e9571067f53d", - "ledgerSeq": 27, + "txSetResultHash": "65b6fe91abfe43ed98fa2163f08fdf3f2f3231101bba05102521186c25a1cc4b", + "bucketListHash": "3a21e9adafc544ac082678bbef52c5ba56b576a47e3204fab5c6cfea05777701", + "ledgerSeq": 28, "totalCoins": 1000000000000000000, "feePool": 804520, "inflationSeq": 0, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "aa828e78d2250ec6766ca2b4a39c0373ce05f77162052f70bb12f3ad8765b01a", + "previousLedgerHash": "f991b748101b66b95dcc062ff57912e88313c0e8c7d9dc6f8c880e71278c2105", "phases": [ { "v": 0, @@ -63,13 +63,124 @@ "txsMaybeDiscountedFee": { "baseFee": 100, "txs": [ + { + "type": "ENVELOPE_TYPE_TX", + "v1": { + "tx": { + "sourceAccount": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "fee": 1044855, + "seqNum": 51539607553, + "cond": { + "type": "PRECOND_NONE" + }, + "memo": { + "type": "MEMO_NONE" + }, + "operations": [ + { + "sourceAccount": null, + "body": { + "type": "INVOKE_HOST_FUNCTION", + "invokeHostFunctionOp": { + "hostFunction": { + "type": "HOST_FUNCTION_TYPE_CREATE_CONTRACT", + "createContract": { + "contractIDPreimage": { + "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", + "fromAddress": { + "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" + } + }, + "executable": { + "type": "CONTRACT_EXECUTABLE_WASM", + "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + }, + "auth": [ + { + "credentials": { + "type": "SOROBAN_CREDENTIALS_SOURCE_ACCOUNT" + }, + "rootInvocation": { + "function": { + "type": "SOROBAN_AUTHORIZED_FUNCTION_TYPE_CREATE_CONTRACT_V2_HOST_FN", + "createContractV2HostFn": { + "contractIDPreimage": { + "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", + "fromAddress": { + "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" + } + }, + "executable": { + "type": "CONTRACT_EXECUTABLE_WASM", + "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + }, + "constructorArgs": [] + } + }, + "subInvocations": [] + } + } + ] + } + } + } + ], + "ext": { + "v": 1, + "sorobanData": { + "ext": { + "v": 0 + }, + "resources": { + "footprint": { + "readOnly": [ + { + "type": "CONTRACT_CODE", + "contractCode": { + "hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" + } + } + ], + "readWrite": [ + { + "type": "CONTRACT_DATA", + "contractData": { + "contract": "CCOKSYPZJ2B3244CEMLBGUGWPMQ3BLES6AKHRQCX2XF27K4HDBW2LKDF", + "key": { + "type": "SCV_LEDGER_KEY_CONTRACT_INSTANCE" + }, + "durability": "PERSISTENT" + } + } + ] + }, + "instructions": 200000, + "readBytes": 5000, + "writeBytes": 5000 + }, + "resourceFee": 1043855 + } + } + }, + "signatures": [ + { + "hint": "4b80097b", + "signature": "645f799c0de7c65cbb64e5fcf7c3aad3229793eb9898267f73b4ad4460482174503926c936c8be9242d35b8a5ac83c243716e0c070f53fa2c051d8aabc50750e" + } + ] + } + }, { "type": "ENVELOPE_TYPE_TX", "v1": { "tx": { "sourceAccount": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "fee": 102512, - "seqNum": 42949672961, + "seqNum": 47244640257, "cond": { "type": "PRECOND_NONE" }, @@ -143,7 +254,7 @@ "signatures": [ { "hint": "477df904", - "signature": "6d6c84c94cd919e5a16199c96005f360802de1b3d93e6b78a877582287e66b2e71a38bf0f5d3c8857472efd74debe129374a84c7d8303c1b9bd6d8718b5efc0a" + "signature": "7d9bf0729a1ead0eb7cebaa9012179794fd3c57db24ecb9edcd9505c53c7ca88752131f301aabbde785b5cb4797b2deb11af7eead94b21c36878f0c6c3e81e08" } ] } @@ -154,7 +265,7 @@ "tx": { "sourceAccount": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "fee": 127626, - "seqNum": 38654705665, + "seqNum": 42949672961, "cond": { "type": "PRECOND_NONE" }, @@ -240,7 +351,7 @@ "signatures": [ { "hint": "e189b409", - "signature": "17778d1dd7174f3e8cb6196f6cbefe8bd0b6501df26a92e0e7dce8c06dea99aa5c4268dc3b22d5084645d3612ea5dfb5e3fd0d35a18df8523a8d4dbf627c1e04" + "signature": "7f485f944582388fb4034d9737a8b08940e371b8cac04d0795a876db6476c0969be688184cd86388b989cc73785f6ff8165d1bf293567ff114d9e242481abf0e" } ] } @@ -251,7 +362,7 @@ "tx": { "sourceAccount": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "fee": 1001000, - "seqNum": 34359738369, + "seqNum": 38654705665, "cond": { "type": "PRECOND_NONE" }, @@ -311,7 +422,7 @@ "signatures": [ { "hint": "f7f60229", - "signature": "fe94fd2f8bf3a1b31298dfb53ab2abf854c9de5d3a54a51bfec3162b12889ca190b4806cb7dc465fdb45878979b1b0d97ec2995a1ad9df16606d8b7f5bf7ba01" + "signature": "eacb5cc7b4df9debd1b1de1f263e26fc85779ffed4ce1e226310ea4b5120aa8661cd253e637277fdad203b773cd1a16a5f9c274b17a2897850a538f94ee9cd05" } ] } @@ -322,7 +433,7 @@ "tx": { "sourceAccount": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "fee": 1001000, - "seqNum": 30064771073, + "seqNum": 34359738369, "cond": { "type": "PRECOND_NONE" }, @@ -376,118 +487,7 @@ "signatures": [ { "hint": "5099a12e", - "signature": "0c266097af0b9f9d84f0bfda10608f428736f7a4c5d8671704f3e1b793c66ca51e0a33e0f0afaabbb386103a4e253d5440dead30f65e7443a9ab97edc0f4b806" - } - ] - } - }, - { - "type": "ENVELOPE_TYPE_TX", - "v1": { - "tx": { - "sourceAccount": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "fee": 1044855, - "seqNum": 47244640257, - "cond": { - "type": "PRECOND_NONE" - }, - "memo": { - "type": "MEMO_NONE" - }, - "operations": [ - { - "sourceAccount": null, - "body": { - "type": "INVOKE_HOST_FUNCTION", - "invokeHostFunctionOp": { - "hostFunction": { - "type": "HOST_FUNCTION_TYPE_CREATE_CONTRACT", - "createContract": { - "contractIDPreimage": { - "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", - "fromAddress": { - "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" - } - }, - "executable": { - "type": "CONTRACT_EXECUTABLE_WASM", - "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - }, - "auth": [ - { - "credentials": { - "type": "SOROBAN_CREDENTIALS_SOURCE_ACCOUNT" - }, - "rootInvocation": { - "function": { - "type": "SOROBAN_AUTHORIZED_FUNCTION_TYPE_CREATE_CONTRACT_V2_HOST_FN", - "createContractV2HostFn": { - "contractIDPreimage": { - "type": "CONTRACT_ID_PREIMAGE_FROM_ADDRESS", - "fromAddress": { - "address": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "salt": "63479ad69a090b258277ec8fba6f99419a2ffb248981510657c944ccd1148e97" - } - }, - "executable": { - "type": "CONTRACT_EXECUTABLE_WASM", - "wasm_hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - }, - "constructorArgs": [] - } - }, - "subInvocations": [] - } - } - ] - } - } - } - ], - "ext": { - "v": 1, - "sorobanData": { - "ext": { - "v": 0 - }, - "resources": { - "footprint": { - "readOnly": [ - { - "type": "CONTRACT_CODE", - "contractCode": { - "hash": "fc644715caaead746e6145f4331ff75c427c965c20d2995a9942b01247515962" - } - } - ], - "readWrite": [ - { - "type": "CONTRACT_DATA", - "contractData": { - "contract": "CCOKSYPZJ2B3244CEMLBGUGWPMQ3BLES6AKHRQCX2XF27K4HDBW2LKDF", - "key": { - "type": "SCV_LEDGER_KEY_CONTRACT_INSTANCE" - }, - "durability": "PERSISTENT" - } - } - ] - }, - "instructions": 200000, - "readBytes": 5000, - "writeBytes": 5000 - }, - "resourceFee": 1043855 - } - } - }, - "signatures": [ - { - "hint": "4b80097b", - "signature": "7a3805ceb812ae7a3b2fab43ef7ba4d19650464a506f870395237958759432942aa0b48b12faf1cee59e157c20741df4c73cc3f720b4317a850595415a9a870b" + "signature": "62ab56c91919471a63bed4ca3bdbed1d7066ad4babfdfa2ffe8d023d559334651889fac6f8e8caca6a2cc23c9fe4a6d0f2a64cd0fe61e35e6286d5264d8e9108" } ] } @@ -503,18 +503,18 @@ "txProcessing": [ { "result": { - "transactionHash": "cd8ae40c9b119e507f4ee4b6e1dbbcc9e3fc5fc54321f5a1a2c74c1f6af48784", + "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" } } } @@ -529,13 +529,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 8, + "lastModifiedLedgerSeq": 12, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", "balance": 400000000, - "seqNum": 34359738368, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -555,13 +555,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -589,13 +589,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738368, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607552, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -615,13 +615,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -647,7 +647,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -663,87 +663,18 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10005 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "091ddece931776a53f93869b82c24e132cc12d00d961fac09bc3b9cb9021c62d", - "liveUntilLedgerSeq": 10027 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 5, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10005 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "60313f9b273db0b14c3e503cf6cc152dd14a0c57e5e81a23e86b4e27a23a2c06", - "liveUntilLedgerSeq": 10027 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 398999900, - "seqNum": 34359738369, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 398956045, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -769,7 +700,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -787,13 +718,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", - "balance": 399939441, - "seqNum": 34359738369, + "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "balance": 399957046, + "seqNum": 51539607553, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -819,7 +750,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -851,18 +782,18 @@ }, { "result": { - "transactionHash": "88c3b16683d16a06af94f678301f69b74fd2291b213c1f4733c5f307d8f61d29", + "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" } } } @@ -877,13 +808,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 7, + "lastModifiedLedgerSeq": 11, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", "balance": 400000000, - "seqNum": 30064771072, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -903,13 +834,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 30064771072, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -937,13 +868,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 30064771072, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640256, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -963,13 +894,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 30064771073, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -995,7 +926,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1011,55 +942,18 @@ } } ], - "operations": [ - { - "changes": [ - { - "type": "LEDGER_ENTRY_STATE", - "state": { - "lastModifiedLedgerSeq": 6, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 25 - } - }, - "ext": { - "v": 0 - } - } - }, - { - "type": "LEDGER_ENTRY_UPDATED", - "updated": { - "lastModifiedLedgerSeq": 27, - "data": { - "type": "TTL", - "ttl": { - "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", - "liveUntilLedgerSeq": 46 - } - }, - "ext": { - "v": 0 - } - } - } - ] - } - ], + "operations": [], "txChangesAfter": [ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 398999900, - "seqNum": 30064771073, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399898388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1085,7 +979,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1103,13 +997,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", - "balance": 399948453, - "seqNum": 30064771073, + "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "balance": 399938388, + "seqNum": 47244640257, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1135,7 +1029,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1167,18 +1061,19 @@ }, { "result": { - "transactionHash": "ac980fc760659f6cfeffca82d9b8543257d1656aca97398ec05ee326a80550ae", + "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" } } } @@ -1193,13 +1088,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 11, + "lastModifiedLedgerSeq": 10, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", "balance": 400000000, - "seqNum": 47244640256, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1219,13 +1114,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640256, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1253,13 +1148,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640256, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672960, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1279,13 +1174,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640257, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1311,7 +1206,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1327,18 +1222,66 @@ } } ], - "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", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 398956045, - "seqNum": 47244640257, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399873274, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1364,7 +1307,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1382,13 +1325,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GA2NXNEE2MHWGQP5XXACPYG2BDZFPKGYPFNST5V3ZZN75NSLQAEXX7CU", - "balance": 399957046, - "seqNum": 47244640257, + "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "balance": 399893225, + "seqNum": 42949672961, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1414,7 +1357,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1436,8 +1379,7 @@ }, "events": [], "returnValue": { - "type": "SCV_BOOL", - "b": "FALSE" + "type": "SCV_VOID" }, "diagnosticEvents": [] } @@ -1446,18 +1388,18 @@ }, { "result": { - "transactionHash": "67f24f994422418f6d3a646b4e1157e099735431366f95519fa362199b16ff08", + "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" } } } @@ -1472,13 +1414,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 10, + "lastModifiedLedgerSeq": 9, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 400000000, - "seqNum": 42949672960, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1498,13 +1440,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672960, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1532,13 +1474,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672960, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705664, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1558,13 +1500,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672961, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1590,7 +1532,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1606,18 +1548,87 @@ } } ], - "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", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399898388, - "seqNum": 42949672961, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 398999900, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1643,7 +1654,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1661,13 +1672,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GAM4XNEHJUHN7VE3ZWJI23R2WS3SJS2BTUHZAC6XICXLXO2HPX4QI2IR", - "balance": 399938388, - "seqNum": 42949672961, + "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", + "balance": 399939441, + "seqNum": 38654705665, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1693,7 +1704,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1725,19 +1736,18 @@ }, { "result": { - "transactionHash": "20be6e563152fa988c4944f2cd9f69b52352648d9277d0bc319890e6cbf90dd8", + "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" } } } @@ -1752,13 +1762,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 9, + "lastModifiedLedgerSeq": 8, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 400000000, - "seqNum": 38654705664, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1778,13 +1788,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705664, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1812,13 +1822,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705664, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738368, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1838,13 +1848,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705665, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1870,7 +1880,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1890,25 +1900,14 @@ { "changes": [ { - "type": "LEDGER_ENTRY_CREATED", - "created": { - "lastModifiedLedgerSeq": 27, + "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": { @@ -1917,14 +1916,14 @@ } }, { - "type": "LEDGER_ENTRY_CREATED", - "created": { - "lastModifiedLedgerSeq": 27, + "type": "LEDGER_ENTRY_UPDATED", + "updated": { + "lastModifiedLedgerSeq": 28, "data": { "type": "TTL", "ttl": { - "keyHash": "764f4e59e20ac1a357f9f26ab0eaf46d196ab74822db44f039353a6f114864aa", - "liveUntilLedgerSeq": 46 + "keyHash": "4791962cd1e2c7b8f8af3f96514f9777f0156a48261fb885a571a7f69b33a058", + "liveUntilLedgerSeq": 47 } }, "ext": { @@ -1939,13 +1938,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399873274, - "seqNum": 38654705665, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 398999900, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -1971,7 +1970,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -1989,13 +1988,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 27, + "lastModifiedLedgerSeq": 28, "data": { "type": "ACCOUNT", "account": { - "accountID": "GDWWCIR2FIWTY2D3CEDXZYRTRNTFZCC5PBCGC6XPMKCLUV7BRG2AT3RD", - "balance": 399893225, - "seqNum": 38654705665, + "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", + "balance": 399948453, + "seqNum": 34359738369, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -2021,7 +2020,7 @@ "ext": { "v": 0 }, - "seqLedger": 27, + "seqLedger": 28, "seqTime": 1451692800 } } @@ -2043,7 +2042,8 @@ }, "events": [], "returnValue": { - "type": "SCV_VOID" + "type": "SCV_BOOL", + "b": "FALSE" }, "diagnosticEvents": [] } diff --git a/src/testdata/ledger-close-meta-v1-protocol-22.json b/src/testdata/ledger-close-meta-v1-protocol-22.json index ed10e93cce..f1f353eab2 100644 --- a/src/testdata/ledger-close-meta-v1-protocol-22.json +++ b/src/testdata/ledger-close-meta-v1-protocol-22.json @@ -6,25 +6,25 @@ "v": 0 }, "ledgerHeader": { - "hash": "93e3f803b0da9f5517e42c9e266dc01e32619fd4b2af9f8f835e7af84e7accf3", + "hash": "4280273e1baaccc5108878557eb32357d7280f7fc3bfdbf52ad964f8a95e5b8a", "header": { "ledgerVersion": 22, - "previousLedgerHash": "32daa64eed92f11534868ed9e62a99e54e9b371169db36a2cc9d80474a156bb9", + "previousLedgerHash": "cd6ed26fbffe9fbb86b693ba65a5cdb75fae5c5d8d24f001c75e1eb5085d39a7", "scpValue": { - "txSetHash": "c52790f7476a6ebf8064fa8254480a18f7dff3721769f8f37bf150fae9da1ce1", + "txSetHash": "fac18499de28ce73c25821686b877b340ee46cbae49227362889100a4a1c12dd", "closeTime": 0, "upgrades": [], "ext": { "v": "STELLAR_VALUE_SIGNED", "lcValueSignature": { "nodeID": "GDDOUW25MRFLNXQMN3OODP6JQEXSGLMHAFZV4XPQ2D3GA4QFIDMEJG2O", - "signature": "a4a3a1f8eca04d84658264412dbfe5a84e2d0e18396453ea4617bb8b5d8620d3c69cdb216a0d1f212960d7cd4e063dd71cf614f3ac6c1cb9f2ccf6567386780e" + "signature": "b6db1da06113182245ac0473241c6e09bf5f6988b6bd633192881b5012880e8b1a22627146d09aac007cb1e8305ddaf3f08f34281478e86f723d994b6fddef02" } } }, - "txSetResultHash": "cd1398cda325d4eada631301e6501421cda30fd0b43da3e5d0ffb26caf073b0a", - "bucketListHash": "5ca0cf89a37c934dc25ba1ce52e90c1244a5e51010c6139d0f31afa7b8f32b1f", - "ledgerSeq": 6, + "txSetResultHash": "f66233c106977a4cc148e019411ff6ddfaf76c337d004ed9a304a70407b161d0", + "bucketListHash": "bff00492fc3c18ee9b621c755a9c805998a5e5efdab4fde06ecabfb43f5ea7fc", + "ledgerSeq": 7, "totalCoins": 1000000000000000000, "feePool": 800, "inflationSeq": 0, @@ -49,7 +49,7 @@ "txSet": { "v": 1, "v1TxSet": { - "previousLedgerHash": "32daa64eed92f11534868ed9e62a99e54e9b371169db36a2cc9d80474a156bb9", + "previousLedgerHash": "cd6ed26fbffe9fbb86b693ba65a5cdb75fae5c5d8d24f001c75e1eb5085d39a7", "phases": [ { "v": 0, @@ -109,7 +109,7 @@ "tx": { "sourceAccount": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", "fee": 200, - "seqNum": 17179869185, + "seqNum": 21474836481, "cond": { "type": "PRECOND_NONE" }, @@ -153,7 +153,7 @@ "signatures": [ { "hint": "eaf6bc36", - "signature": "3ecb3b962cad23b596fa7e85923a0b6618fa4e632851f657b43c5060123d1cd3e2204260b3a3b35510def33e1e6379139a0cd71efcf0720d9c660126e4399b0f" + "signature": "6e7298cfa615172abf916f32df9b7b4202c5ce2014cf936ddd21157923c829f90f67d9849646e0d4e0169ac3f52e94dfdd0674f7b55b85aa7770164d186f5509" } ] } @@ -165,7 +165,7 @@ "signatures": [ { "hint": "f7f60229", - "signature": "940da5e60c3f9a934ceac37541ad85e5c3cce3a9741750a0253f80ed42fa9b75e76e3c2c09a95a58964952adf5e1569d4b330107cfb0d9c62f1f50dd04a0c105" + "signature": "de09a3bf14a4b7ba0980b6fc998edf64144ef9b9a3a7636b292e070880ce866bdb1256fbd66d2a2e17e263e34e1ac31fdf7f87001505aa295091de793b212406" } ] } @@ -185,13 +185,13 @@ "txProcessing": [ { "result": { - "transactionHash": "66efe325ead9f52082c8908b7813bd96793fd5ff0f1e50fdc50b23f68938dd4d", + "transactionHash": "324d0628e2a215d367f181f0e3aacbaa26fa638e676e73fb9ad26a360314a7b7", "result": { "feeCharged": 300, "result": { "code": "txFEE_BUMP_INNER_SUCCESS", "innerResultPair": { - "transactionHash": "5ab197acffd4b32d320df39b2b1f76246e2279fa8070c6c690cca1343e5e7e0b", + "transactionHash": "b28c171f9658320b5ce8d50e4e1a36b74afbb2a92eec7df92a8981067131b025", "result": { "feeCharged": 200, "result": { @@ -232,13 +232,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 3, + "lastModifiedLedgerSeq": 4, "data": { "type": "ACCOUNT", "account": { "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 400000000, - "seqNum": 12884901888, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -258,13 +258,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 399999700, - "seqNum": 12884901888, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -292,13 +292,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 399999700, - "seqNum": 12884901888, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -318,13 +318,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { "accountID": "GCAEBM3GKNR6SV6N73FSGBXU6NSMZ2URQVMJQHXFQFY2PJPX6YBCSAKZ", "balance": 399999700, - "seqNum": 12884901888, + "seqNum": 17179869184, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -344,13 +344,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 4, + "lastModifiedLedgerSeq": 5, "data": { "type": "ACCOUNT", "account": { "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", "balance": 200010000, - "seqNum": 17179869184, + "seqNum": 21474836480, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -370,13 +370,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { "accountID": "GCGE27HU2VYQANKL2VZWLCAOJYMEFST5DXPBWQ7BRRPOHUPK626DNG4Q", "balance": 200010000, - "seqNum": 17179869185, + "seqNum": 21474836481, "numSubEntries": 0, "inflationDest": null, "flags": 0, @@ -402,7 +402,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -424,7 +424,7 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "lastModifiedLedgerSeq": 6, "data": { "type": "TRUSTLINE", "trustLine": { @@ -449,7 +449,7 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "TRUSTLINE", "trustLine": { @@ -478,7 +478,7 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "TRUSTLINE", "trustLine": { @@ -503,7 +503,7 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "TRUSTLINE", "trustLine": { @@ -561,7 +561,7 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 4, + "lastModifiedLedgerSeq": 5, "data": { "type": "ACCOUNT", "account": { @@ -593,7 +593,7 @@ "ext": { "v": 0 }, - "seqLedger": 4, + "seqLedger": 5, "seqTime": 0 } } @@ -611,7 +611,7 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { @@ -643,7 +643,7 @@ "ext": { "v": 0 }, - "seqLedger": 4, + "seqLedger": 5, "seqTime": 0 } } @@ -669,7 +669,7 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { @@ -701,7 +701,7 @@ "ext": { "v": 0 }, - "seqLedger": 4, + "seqLedger": 5, "seqTime": 0 } } @@ -719,7 +719,7 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { @@ -751,7 +751,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -773,13 +773,13 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 5, + "lastModifiedLedgerSeq": 6, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 399999900, - "seqNum": 8589934593, + "seqNum": 12884901889, "numSubEntries": 1, "inflationDest": null, "flags": 0, @@ -805,7 +805,7 @@ "ext": { "v": 0 }, - "seqLedger": 5, + "seqLedger": 6, "seqTime": 0 } } @@ -823,13 +823,13 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { "accountID": "GB6MXQ5262ZJGDQNA6BL4TWE5SADVZXIKLPELFXKUE27X4SQTGQS44ZB", "balance": 400000900, - "seqNum": 8589934593, + "seqNum": 12884901889, "numSubEntries": 1, "inflationDest": null, "flags": 0, @@ -855,7 +855,7 @@ "ext": { "v": 0 }, - "seqLedger": 5, + "seqLedger": 6, "seqTime": 0 } } @@ -873,7 +873,7 @@ { "type": "LEDGER_ENTRY_STATE", "state": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { @@ -905,7 +905,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -923,7 +923,7 @@ { "type": "LEDGER_ENTRY_UPDATED", "updated": { - "lastModifiedLedgerSeq": 6, + "lastModifiedLedgerSeq": 7, "data": { "type": "ACCOUNT", "account": { @@ -955,7 +955,7 @@ "ext": { "v": 0 }, - "seqLedger": 6, + "seqLedger": 7, "seqTime": 0 } } @@ -981,7 +981,7 @@ ], "upgradesProcessing": [], "scpInfo": [], - "totalByteSizeOfBucketList": 520, + "totalByteSizeOfBucketList": 788, "evictedTemporaryLedgerKeys": [], "evictedPersistentLedgerEntries": [] } diff --git a/src/transactions/test/AllowTrustTests.cpp b/src/transactions/test/AllowTrustTests.cpp index 41454c3a33..398bee5e28 100644 --- a/src/transactions/test/AllowTrustTests.cpp +++ b/src/transactions/test/AllowTrustTests.cpp @@ -82,7 +82,7 @@ template struct TestStub TrustFlagOp flagOp = V == 0 ? TrustFlagOp::ALLOW_TRUST : TrustFlagOp::SET_TRUST_LINE_FLAGS; - auto const& cfg = getTestConfig(); + auto const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); @@ -377,7 +377,7 @@ template struct TestStub TrustFlagOp flagOp = V == 0 ? TrustFlagOp::ALLOW_TRUST : TrustFlagOp::SET_TRUST_LINE_FLAGS; - auto const& cfg = getTestConfig(); + auto const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/BumpSequenceTests.cpp b/src/transactions/test/BumpSequenceTests.cpp index 7a2a2b9e24..f8a43d42ca 100644 --- a/src/transactions/test/BumpSequenceTests.cpp +++ b/src/transactions/test/BumpSequenceTests.cpp @@ -25,7 +25,7 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("bump sequence", "[tx][bumpsequence]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/ChangeTrustTests.cpp b/src/transactions/test/ChangeTrustTests.cpp index a35c753489..fcb09d4af6 100644 --- a/src/transactions/test/ChangeTrustTests.cpp +++ b/src/transactions/test/ChangeTrustTests.cpp @@ -23,7 +23,7 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("change trust", "[tx][changetrust]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); @@ -303,7 +303,7 @@ TEST_CASE_VERSIONS("change trust", "[tx][changetrust]") TEST_CASE_VERSIONS("change trust pool share trustline", "[tx][changetrust][liquiditypool]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/ClaimableBalanceTests.cpp b/src/transactions/test/ClaimableBalanceTests.cpp index 091f800a3f..f90e37633b 100644 --- a/src/transactions/test/ClaimableBalanceTests.cpp +++ b/src/transactions/test/ClaimableBalanceTests.cpp @@ -298,7 +298,7 @@ validateBalancesOnCreateAndClaim(TestAccount& createAcc, TestAccount& claimAcc, TEST_CASE_VERSIONS("claimableBalance", "[tx][claimablebalance]") { - Config cfg = getTestConfig(); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/ClawbackClaimableBalanceTests.cpp b/src/transactions/test/ClawbackClaimableBalanceTests.cpp index 77f37018e6..195dd9aee0 100644 --- a/src/transactions/test/ClawbackClaimableBalanceTests.cpp +++ b/src/transactions/test/ClawbackClaimableBalanceTests.cpp @@ -19,7 +19,7 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("clawbackClaimableBalance", "[tx][clawback][claimablebalance]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/ClawbackTests.cpp b/src/transactions/test/ClawbackTests.cpp index 6b89bdf7a3..eee797d441 100644 --- a/src/transactions/test/ClawbackTests.cpp +++ b/src/transactions/test/ClawbackTests.cpp @@ -17,7 +17,7 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("clawback", "[tx][clawback]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/CreateAccountTests.cpp b/src/transactions/test/CreateAccountTests.cpp index 0b4991c8d4..fb8ed2e424 100644 --- a/src/transactions/test/CreateAccountTests.cpp +++ b/src/transactions/test/CreateAccountTests.cpp @@ -30,7 +30,8 @@ getCreateAccountResultCode(TransactionTestFramePtr tx, size_t i) TEST_CASE_VERSIONS("create account", "[tx][createaccount]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); // set up world auto root = TestAccount::createRoot(*app); diff --git a/src/transactions/test/EndSponsoringFutureReservesTests.cpp b/src/transactions/test/EndSponsoringFutureReservesTests.cpp index e8984422f0..a92b6e2281 100644 --- a/src/transactions/test/EndSponsoringFutureReservesTests.cpp +++ b/src/transactions/test/EndSponsoringFutureReservesTests.cpp @@ -33,7 +33,8 @@ getEndSponsoringFutureReservesResultCode(TransactionTestFramePtr tx, size_t i) TEST_CASE_VERSIONS("confirm and clear sponsor", "[tx][sponsorship]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); auto root = TestAccount::createRoot(*app); int64_t minBalance = app->getLedgerManager().getLastMinBalance(0); diff --git a/src/transactions/test/FeeBumpTransactionTests.cpp b/src/transactions/test/FeeBumpTransactionTests.cpp index 2da29354d6..c645829d61 100644 --- a/src/transactions/test/FeeBumpTransactionTests.cpp +++ b/src/transactions/test/FeeBumpTransactionTests.cpp @@ -65,7 +65,8 @@ feeBump(Hash const& networkID, TestAccount& feeSource, TestAccount& source, TEST_CASE_VERSIONS("fee bump transactions", "[tx][feebump]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); auto& lm = app->getLedgerManager(); auto fee = lm.getLastClosedLedgerHeader().header.baseFee; diff --git a/src/transactions/test/InflationTests.cpp b/src/transactions/test/InflationTests.cpp index 5b2bf24e86..dbf2d8feef 100644 --- a/src/transactions/test/InflationTests.cpp +++ b/src/transactions/test/InflationTests.cpp @@ -285,7 +285,7 @@ doInflation(Application& app, int ledgerVersion, int nbAccounts, TEST_CASE_VERSIONS("inflation total coins", "[tx][inflation]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(); if (protocolVersionStartsFrom(cfg.TESTING_UPGRADE_LEDGER_PROTOCOL_VERSION, ProtocolVersion::V_12)) { @@ -432,7 +432,7 @@ TEST_CASE_VERSIONS("inflation total coins", "[tx][inflation]") TEST_CASE_VERSIONS("inflation", "[tx][inflation]") { - Config cfg = getTestConfig(0); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock::system_time_point inflationStart; // inflation starts on 1-jul-2014 diff --git a/src/transactions/test/InvokeHostFunctionTests.cpp b/src/transactions/test/InvokeHostFunctionTests.cpp index 7a32fc717d..d0bc20ee93 100644 --- a/src/transactions/test/InvokeHostFunctionTests.cpp +++ b/src/transactions/test/InvokeHostFunctionTests.cpp @@ -984,7 +984,6 @@ TEST_CASE("Soroban non-refundable resource fees are stable", "[tx][soroban]") cfg.mFeeReadLedgerEntry = 2000; cfg.mFeeWriteLedgerEntry = 3000; cfg.mFeeRead1KB = 4000; - cfg.mFeeWrite1KB = 5000; cfg.mFeeHistorical1KB = 6000; cfg.mFeeTransactionSize1KB = 8000; }; @@ -1108,6 +1107,14 @@ TEST_CASE("Soroban non-refundable resource fees are stable", "[tx][soroban]") } } + // Since mFeeWrite1KB is based on the BucketList size sliding window, we + // must explicitly override the in-memory cached value after initializing + // the test. + test.getApp() + .getLedgerManager() + .getMutableSorobanNetworkConfig() + .mFeeWrite1KB = 5000; + SECTION("readBytes fee") { SorobanResources resources; @@ -1882,9 +1889,6 @@ TEST_CASE("ledger entry size limit enforced", "[tx][soroban]") cfg.mMaxContractSizeBytes = 2000; }); - // Refresh cached settings - closeLedgerOn(test.getApp(), test.getLCLSeq() + 1, 2, 1, 2016); - // Check that client invocation now fails REQUIRE(client.has("key", ContractDataDurability::PERSISTENT, std::nullopt) == @@ -2835,7 +2839,7 @@ TEST_CASE("state archival operation errors", "[tx][soroban]") TEST_CASE("settings upgrade command line utils", "[tx][soroban][upgrades]") { VirtualClock clock; - auto cfg = getTestConfig(); + auto cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.ENABLE_SOROBAN_DIAGNOSTIC_EVENTS = true; auto app = createTestApplication(clock, cfg); auto root = TestAccount::createRoot(*app); diff --git a/src/transactions/test/LiquidityPoolDepositTests.cpp b/src/transactions/test/LiquidityPoolDepositTests.cpp index 1268042079..2bf6cd413a 100644 --- a/src/transactions/test/LiquidityPoolDepositTests.cpp +++ b/src/transactions/test/LiquidityPoolDepositTests.cpp @@ -17,7 +17,8 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("liquidity pool deposit", "[tx][liquiditypool]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); // set up world auto const& lm = app->getLedgerManager(); diff --git a/src/transactions/test/LiquidityPoolTradeTests.cpp b/src/transactions/test/LiquidityPoolTradeTests.cpp index d16a6f1fa3..9cddacf59b 100644 --- a/src/transactions/test/LiquidityPoolTradeTests.cpp +++ b/src/transactions/test/LiquidityPoolTradeTests.cpp @@ -982,7 +982,8 @@ testLiquidityPoolTrading(Application& app, Asset const& cur1, Asset const& cur2) TEST_CASE_VERSIONS("liquidity pool trade", "[tx][liquiditypool]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); // set up world auto minBal = [&](int32_t n) { diff --git a/src/transactions/test/LiquidityPoolWithdrawTests.cpp b/src/transactions/test/LiquidityPoolWithdrawTests.cpp index 9ba8a7d199..a6cb9b6c77 100644 --- a/src/transactions/test/LiquidityPoolWithdrawTests.cpp +++ b/src/transactions/test/LiquidityPoolWithdrawTests.cpp @@ -17,7 +17,7 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("liquidity pool withdraw", "[tx][liquiditypool]") { - Config cfg = getTestConfig(); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/ManageBuyOfferTests.cpp b/src/transactions/test/ManageBuyOfferTests.cpp index 82f0cbd6e6..377794b5b0 100644 --- a/src/transactions/test/ManageBuyOfferTests.cpp +++ b/src/transactions/test/ManageBuyOfferTests.cpp @@ -46,7 +46,8 @@ for_current_and_previous_version_from(size_t minVersion, Application& app, TEST_CASE_VERSIONS("manage buy offer failure modes", "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = @@ -352,7 +353,8 @@ TEST_CASE_VERSIONS("manage buy offer failure modes", "[tx][offers]") TEST_CASE_VERSIONS("manage buy offer liabilities", "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); auto checkLiabilities = [&](std::string const& section, int64_t buyAmount, Price const& price, int64_t expectedBuying, @@ -435,7 +437,8 @@ TEST_CASE_VERSIONS("manage buy offer exactly crosses existing offers", "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = @@ -487,7 +490,8 @@ TEST_CASE_VERSIONS( "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = @@ -614,7 +618,8 @@ TEST_CASE_VERSIONS( "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = @@ -768,7 +773,8 @@ TEST_CASE_VERSIONS( "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = @@ -920,7 +926,8 @@ TEST_CASE_VERSIONS( TEST_CASE_VERSIONS("manage buy offer with zero liabilities", "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = @@ -975,7 +982,8 @@ TEST_CASE_VERSIONS("manage buy offer releases liabilities before modify", "[tx][offers]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); int64_t const txfee = app->getLedgerManager().getLastTxFee(); int64_t const minBalancePlusFees = diff --git a/src/transactions/test/ManageDataTests.cpp b/src/transactions/test/ManageDataTests.cpp index 7bc820862a..d1b5dbcfe4 100644 --- a/src/transactions/test/ManageDataTests.cpp +++ b/src/transactions/test/ManageDataTests.cpp @@ -26,7 +26,7 @@ using namespace stellar::txtest; // add too much data TEST_CASE_VERSIONS("manage data", "[tx][managedata]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/MergeTests.cpp b/src/transactions/test/MergeTests.cpp index 2a5c6a3368..d462768ac0 100644 --- a/src/transactions/test/MergeTests.cpp +++ b/src/transactions/test/MergeTests.cpp @@ -34,7 +34,7 @@ using namespace stellar::txtest; // Merge when you have outstanding data entries TEST_CASE_VERSIONS("merge", "[tx][merge]") { - Config cfg(getTestConfig()); + Config cfg(getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/OfferTests.cpp b/src/transactions/test/OfferTests.cpp index f5af35f983..184766e7b8 100644 --- a/src/transactions/test/OfferTests.cpp +++ b/src/transactions/test/OfferTests.cpp @@ -36,7 +36,7 @@ using namespace stellar::txtest; TEST_CASE_VERSIONS("create offer", "[tx][offers]") { - Config const& cfg = getTestConfig(0); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/PathPaymentStrictSendTests.cpp b/src/transactions/test/PathPaymentStrictSendTests.cpp index 1031d402c2..6eb6a153a5 100644 --- a/src/transactions/test/PathPaymentStrictSendTests.cpp +++ b/src/transactions/test/PathPaymentStrictSendTests.cpp @@ -177,7 +177,8 @@ checkClaimedOffers(std::vector const& actual, TEST_CASE_VERSIONS("pathpayment strict send", "[tx][pathpayment]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS)); auto exchanged = [&](TestMarketOffer const& o, int64_t sold, int64_t bought) { @@ -2405,7 +2406,7 @@ TEST_CASE_VERSIONS("pathpayment strict send", "[tx][pathpayment]") TEST_CASE_VERSIONS("pathpayment strict send uses all offers in a loop", "[tx][pathpayment]") { - Config cfg = getTestConfig(); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/PathPaymentTests.cpp b/src/transactions/test/PathPaymentTests.cpp index c5d9b3b308..2b74d11974 100644 --- a/src/transactions/test/PathPaymentTests.cpp +++ b/src/transactions/test/PathPaymentTests.cpp @@ -70,7 +70,7 @@ assetPathToString(const std::deque& assets) TEST_CASE_VERSIONS("pathpayment", "[tx][pathpayment]") { - auto const& cfg = getTestConfig(); + auto const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/PaymentTests.cpp b/src/transactions/test/PaymentTests.cpp index 6b5f3d6976..e53faded26 100644 --- a/src/transactions/test/PaymentTests.cpp +++ b/src/transactions/test/PaymentTests.cpp @@ -38,7 +38,7 @@ using namespace stellar::txtest; // path payment with a transfer rate TEST_CASE_VERSIONS("payment", "[tx][payment]") { - Config cfg = getTestConfig(); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); @@ -1930,7 +1930,7 @@ TEST_CASE_VERSIONS("payment fees", "[tx][payment]") SECTION("fee equal to base reserve") { - auto cfg = getTestConfig(1); + auto cfg = getTestConfig(1, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.TESTING_UPGRADE_DESIRED_FEE = 100000000; VirtualClock clock; @@ -2040,7 +2040,7 @@ TEST_CASE_VERSIONS("payment fees", "[tx][payment]") SECTION("fee bigger than base reserve") { - auto cfg = getTestConfig(1); + auto cfg = getTestConfig(1, Config::TESTDB_IN_MEMORY_NO_OFFERS); cfg.TESTING_UPGRADE_DESIRED_FEE = 200000000; VirtualClock clock; diff --git a/src/transactions/test/RevokeSponsorshipTests.cpp b/src/transactions/test/RevokeSponsorshipTests.cpp index 9362208151..aa7c4db2fe 100644 --- a/src/transactions/test/RevokeSponsorshipTests.cpp +++ b/src/transactions/test/RevokeSponsorshipTests.cpp @@ -39,7 +39,8 @@ getClaimant(TestAccount const& account) TEST_CASE_VERSIONS("update sponsorship", "[tx][sponsorship]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); auto minBal = [&](uint32_t n) { return app->getLedgerManager().getLastMinBalance(n); diff --git a/src/transactions/test/SetOptionsTests.cpp b/src/transactions/test/SetOptionsTests.cpp index fb5698ed8d..482b55a0e9 100644 --- a/src/transactions/test/SetOptionsTests.cpp +++ b/src/transactions/test/SetOptionsTests.cpp @@ -36,7 +36,7 @@ using namespace stellar::txtest; // minbalance TEST_CASE_VERSIONS("set options", "[tx][setoptions]") { - Config const& cfg = getTestConfig(); + Config const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/transactions/test/SetTrustLineFlagsTests.cpp b/src/transactions/test/SetTrustLineFlagsTests.cpp index 54cc401f88..c7de65867c 100644 --- a/src/transactions/test/SetTrustLineFlagsTests.cpp +++ b/src/transactions/test/SetTrustLineFlagsTests.cpp @@ -105,7 +105,7 @@ getNumOffers(Application& app, TestAccount const& account, Asset const& asset) TEST_CASE_VERSIONS("set trustline flags", "[tx][settrustlineflags]") { - auto const& cfg = getTestConfig(); + auto const& cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); @@ -379,7 +379,8 @@ TEST_CASE_VERSIONS("revoke from pool", "[tx][settrustlineflags][allowtrust][liquiditypool]") { VirtualClock clock; - auto app = createTestApplication(clock, getTestConfig()); + auto app = createTestApplication( + clock, getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS)); // set up world auto root = TestAccount::createRoot(*app); diff --git a/src/transactions/test/TxEnvelopeTests.cpp b/src/transactions/test/TxEnvelopeTests.cpp index 3536c1ae82..54c4ee5d3f 100644 --- a/src/transactions/test/TxEnvelopeTests.cpp +++ b/src/transactions/test/TxEnvelopeTests.cpp @@ -86,7 +86,7 @@ TEST_CASE("txset - correct apply order", "[tx][envelope]") TEST_CASE_VERSIONS("txenvelope", "[tx][envelope]") { - Config cfg = getTestConfig(); + Config cfg = getTestConfig(0, Config::TESTDB_IN_MEMORY_NO_OFFERS); VirtualClock clock; auto app = createTestApplication(clock, cfg); diff --git a/src/util/test/XDRStreamTests.cpp b/src/util/test/XDRStreamTests.cpp index 374d5613ba..7710562c91 100644 --- a/src/util/test/XDRStreamTests.cpp +++ b/src/util/test/XDRStreamTests.cpp @@ -47,7 +47,8 @@ TEST_CASE("XDROutputFileStream fail modes", "[xdrstream]") TEST_CASE("XDROutputFileStream fsync bench", "[!hide][xdrstream][bench]") { VirtualClock clock; - Config const& cfg = getTestConfig(0); + + Config const& cfg = getTestConfig(0, Config::TESTDB_BUCKET_DB_PERSISTENT); SHA256 hasher; auto ledgerEntries = LedgerTestUtils::generateValidLedgerEntries(10000000); diff --git a/test-tx-meta-baseline-current/InvokeHostFunctionTests.json b/test-tx-meta-baseline-current/InvokeHostFunctionTests.json index b66e27edc7..1603f96020 100644 --- a/test-tx-meta-baseline-current/InvokeHostFunctionTests.json +++ b/test-tx-meta-baseline-current/InvokeHostFunctionTests.json @@ -29,837 +29,837 @@ 21 ], "Module cache" : [ "MR6BJ3xmn2c=" ], - "Native stellar asset contract" : [ "bKDF6V5IzTo=", "i7kalOBorks=" ], + "Native stellar asset contract" : [ "bKDF6V5IzTo=", "iasg+Zj14uo=" ], "Soroban authorization" : [ "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=" + "q8Sjx67WGyk=" ], "Soroban authorization|classic account with weights" : [ - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=" + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=" ], "Soroban authorization|multisig classic account" : [ - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=", - "/kIuPrBPGU8=", - "sOThfSLPLME=" + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=", + "ckd5u9koQWI=", + "pBHN/mRnkEA=" ], "Soroban classic account authentication" : [ "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=", + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=", "bKDF6V5IzTo=", - "H50FjZP6bDQ=", - "1u380dNp8+I=", - "w/QaS1DRSro=" + "0djfINB2EL4=", + "qfhhGbbAk4c=", + "56Vmf1/KdN8=" ], "Soroban classic account authentication|account with required multisig" : [ - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=" + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=" ], - "Soroban classic account authentication|account with too high med threshold not authenticated" : [ "Sl0RYp5WvqU=" ], - "Soroban classic account authentication|account with too low master weight not authenticated" : [ "sYcTRrNH0ww=" ], + "Soroban classic account authentication|account with too high med threshold not authenticated" : [ "6yA1FiLr/Z0=" ], + "Soroban classic account authentication|account with too low master weight not authenticated" : [ "0eNPtlfMppw=" ], "Soroban classic account authentication|account with weights" : [ - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=" + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=" ], "Soroban classic account authentication|account with weights and additional signer" : [ - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=" + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=" ], - "Soroban classic account authentication|additional signer with insufficient weight not authenticated" : [ "M95IB9pEwDM=" ], + "Soroban classic account authentication|additional signer with insufficient weight not authenticated" : [ "tkVJr3deSzc=" ], "Soroban classic account authentication|default account with additional signer" : [ - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=" + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=" ], - "Soroban classic account authentication|duplicate signature not allowed with insufficient single signature threshold" : [ "Sl0RYp5WvqU=" ], - "Soroban classic account authentication|duplicate signature not allowed with multisig" : [ "gP8z7W4W3xM=" ], - "Soroban classic account authentication|duplicate signature not allowed with multisig and insufficient threshold" : [ "EevYzcXpP5M=" ], - "Soroban classic account authentication|multiple signers with insufficient weight not authenticated" : [ "5tHhqAWr9Ck=" ], + "Soroban classic account authentication|duplicate signature not allowed with insufficient single signature threshold" : [ "6yA1FiLr/Z0=" ], + "Soroban classic account authentication|duplicate signature not allowed with multisig" : [ "pcEz9EGxAts=" ], + "Soroban classic account authentication|duplicate signature not allowed with multisig and insufficient threshold" : [ "AVAuFKrAA9g=" ], + "Soroban classic account authentication|multiple signers with insufficient weight not authenticated" : [ "lCzpPhVmtls=" ], "Soroban custom account authentication" : [ "bKDF6V5IzTo=", @@ -872,379 +872,379 @@ "Soroban footprint validation" : [ "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=", + "ZnBIE2hZGU4=", "bKDF6V5IzTo=", - "h1umXxV201c=" + "ZnBIE2hZGU4=" ], "Soroban non-refundable resource fees are stable" : [ @@ -1259,15 +1259,15 @@ "Trustline stellar asset contract" : [ "bKDF6V5IzTo=", - "NGLSADCnfp4=", - "DfaSsPVmc0I=", - "/77WrMl+rn0=", - "JW+Z8Qc2C4E=", - "w0ru88cpqE4=", - "AN1LYP0s9qQ=", - "KFuNas0rZVc=", - "AtoFI9eB6oo=", - "87oT2sMQ5i4=" + "2pV1a6qnBxM=", + "GMQj5MsQS2w=", + "Umh7+WK01o8=", + "2Su/NiPiREI=", + "ZU+SIbMqPy8=", + "HMRTa8Yu5hs=", + "p3yO+xjMDco=", + "t21ev9fDcwc=", + "y3CT1BIgXw4=" ], "Vm instantiation tightening" : [ "MR6BJ3xmn2c=" ], "basic contract invocation" : @@ -1287,10 +1287,10 @@ "buying liabilities plus refund is greater than INT64_MAX" : [ "bKDF6V5IzTo=", - "y0mODi4DFnM=", - "o9mb+GfjtK8=", - "H+TcXmSmbqc=", - "tNCAjT/JOkE=" + "398Rd+u+jdE=", + "b4KxXJCxvM0=", + "dv/CPUWIjzI=", + "MAX5sgE4TPY=" ], "charge rent fees for storage resize" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "complex contract|diagnostics disabled" : [ "bKDF6V5IzTo=" ], @@ -1314,7 +1314,7 @@ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], - "contract storage|footprint|unused readWrite key" : [ "rUDSNZ+LvSw=" ], + "contract storage|footprint|unused readWrite key" : [ "wpZ0D9gvxTc=" ], "failure diagnostics" : [ "bKDF6V5IzTo=" ], "ledger entry size limit enforced" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "loadgen Wasm executes properly" : [ "bKDF6V5IzTo=" ], @@ -1330,13 +1330,13 @@ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], - "refund account merged" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=", "HG7OrQT/Ofg=" ], - "refund is sent to fee-bump source|protocol version 20" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund is sent to fee-bump source|protocol version 21" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund still happens on bad auth|protocol version 20" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund still happens on bad auth|protocol version 21" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund test with closeLedger|protocol version 20" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=" ], - "refund test with closeLedger|protocol version 21" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=" ], + "refund account merged" : [ "bKDF6V5IzTo=", "398Rd+u+jdE=", "b4KxXJCxvM0=", "7/h1q7KjqKA=" ], + "refund is sent to fee-bump source|protocol version 20" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund is sent to fee-bump source|protocol version 21" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund still happens on bad auth|protocol version 20" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund still happens on bad auth|protocol version 21" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund test with closeLedger|protocol version 20" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=" ], + "refund test with closeLedger|protocol version 21" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=" ], "settings upgrade" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "settings upgrade command line utils" : [ @@ -1375,6 +1375,8 @@ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], + "temp entry eviction|BucketListDB|background scan" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], + "temp entry eviction|BucketListDB|legacy main thread scan" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "temp entry eviction|sql" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "transaction validation diagnostics" : [ "bKDF6V5IzTo=" ], "version test" : [ "766L+TYsWqA=" ] diff --git a/test-tx-meta-baseline-next/InvokeHostFunctionTests.json b/test-tx-meta-baseline-next/InvokeHostFunctionTests.json index d59ab84bb5..6386579190 100644 --- a/test-tx-meta-baseline-next/InvokeHostFunctionTests.json +++ b/test-tx-meta-baseline-next/InvokeHostFunctionTests.json @@ -30,837 +30,837 @@ 22 ], "Module cache" : [ "MR6BJ3xmn2c=" ], - "Native stellar asset contract" : [ "bKDF6V5IzTo=", "i7kalOBorks=" ], + "Native stellar asset contract" : [ "bKDF6V5IzTo=", "iasg+Zj14uo=" ], "Soroban authorization" : [ "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=", + "q8Sjx67WGyk=", "bKDF6V5IzTo=", - "0BGc4ARI4ic=" + "q8Sjx67WGyk=" ], "Soroban authorization|classic account with weights" : [ - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=", - "Rd9vJtaU4w8=" + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=", + "NlLxMRCx5hI=" ], "Soroban authorization|multisig classic account" : [ - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=", - "/L8xAD9eV9k=", - "sOThfSLPLME=" + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=", + "66Nb9japmNs=", + "pBHN/mRnkEA=" ], "Soroban classic account authentication" : [ "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=", + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=", "bKDF6V5IzTo=", - "vxtwJ71P5+w=", - "0Rwf7FWPvJg=", - "ZtKfxtvvTuo=" + "LkmPMPVf67M=", + "vq+flK3rvlY=", + "1ekqxtjabao=" ], "Soroban classic account authentication|account with required multisig" : [ - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=", - "OTz/tmW57MM=", - "kjOpDoXY/S8=" + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=", + "7jLJNs4jUd0=", + "P+ZTkvbKCHU=" ], - "Soroban classic account authentication|account with too high med threshold not authenticated" : [ "Sl0RYp5WvqU=" ], - "Soroban classic account authentication|account with too low master weight not authenticated" : [ "sYcTRrNH0ww=" ], + "Soroban classic account authentication|account with too high med threshold not authenticated" : [ "6yA1FiLr/Z0=" ], + "Soroban classic account authentication|account with too low master weight not authenticated" : [ "0eNPtlfMppw=" ], "Soroban classic account authentication|account with weights" : [ - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=", - "JJOy+CAUK4c=" + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=", + "hcGvtIKbjSA=" ], "Soroban classic account authentication|account with weights and additional signer" : [ - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=", - "of6Tzy2OGmE=" + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=", + "YCH9L+lPRgo=" ], - "Soroban classic account authentication|additional signer with insufficient weight not authenticated" : [ "M95IB9pEwDM=" ], + "Soroban classic account authentication|additional signer with insufficient weight not authenticated" : [ "tkVJr3deSzc=" ], "Soroban classic account authentication|default account with additional signer" : [ - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=", - "hgBwU6bXZvA=" + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=", + "X+5ouMxw5Ow=" ], - "Soroban classic account authentication|duplicate signature not allowed with insufficient single signature threshold" : [ "Sl0RYp5WvqU=" ], - "Soroban classic account authentication|duplicate signature not allowed with multisig" : [ "gP8z7W4W3xM=" ], - "Soroban classic account authentication|duplicate signature not allowed with multisig and insufficient threshold" : [ "EevYzcXpP5M=" ], - "Soroban classic account authentication|multiple signers with insufficient weight not authenticated" : [ "5tHhqAWr9Ck=" ], + "Soroban classic account authentication|duplicate signature not allowed with insufficient single signature threshold" : [ "6yA1FiLr/Z0=" ], + "Soroban classic account authentication|duplicate signature not allowed with multisig" : [ "pcEz9EGxAts=" ], + "Soroban classic account authentication|duplicate signature not allowed with multisig and insufficient threshold" : [ "AVAuFKrAA9g=" ], + "Soroban classic account authentication|multiple signers with insufficient weight not authenticated" : [ "lCzpPhVmtls=" ], "Soroban custom account authentication" : [ "bKDF6V5IzTo=", @@ -873,379 +873,379 @@ "Soroban footprint validation" : [ "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=", + "6o5xNWqjPfQ=", "bKDF6V5IzTo=", - "J5P4tVtjuXs=" + "6o5xNWqjPfQ=" ], "Soroban non-refundable resource fees are stable" : [ @@ -1260,15 +1260,15 @@ "Trustline stellar asset contract" : [ "bKDF6V5IzTo=", - "NGLSADCnfp4=", - "DfaSsPVmc0I=", - "/77WrMl+rn0=", - "JW+Z8Qc2C4E=", - "w0ru88cpqE4=", - "AN1LYP0s9qQ=", - "KFuNas0rZVc=", - "AtoFI9eB6oo=", - "87oT2sMQ5i4=" + "2pV1a6qnBxM=", + "GMQj5MsQS2w=", + "Umh7+WK01o8=", + "2Su/NiPiREI=", + "ZU+SIbMqPy8=", + "HMRTa8Yu5hs=", + "p3yO+xjMDco=", + "t21ev9fDcwc=", + "y3CT1BIgXw4=" ], "Vm instantiation tightening" : [ "MR6BJ3xmn2c=" ], "basic contract invocation" : @@ -1288,10 +1288,10 @@ "buying liabilities plus refund is greater than INT64_MAX" : [ "bKDF6V5IzTo=", - "y0mODi4DFnM=", - "o9mb+GfjtK8=", - "H+TcXmSmbqc=", - "tNCAjT/JOkE=" + "398Rd+u+jdE=", + "b4KxXJCxvM0=", + "dv/CPUWIjzI=", + "MAX5sgE4TPY=" ], "charge rent fees for storage resize" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "complex contract|diagnostics disabled" : [ "bKDF6V5IzTo=" ], @@ -1323,7 +1323,7 @@ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], - "contract storage|footprint|unused readWrite key" : [ "Nf0L4GR9zOk=" ], + "contract storage|footprint|unused readWrite key" : [ "VzQb0aWq2bE=" ], "failure diagnostics" : [ "bKDF6V5IzTo=" ], "ledger entry size limit enforced" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "loadgen Wasm executes properly" : [ "bKDF6V5IzTo=" ], @@ -1339,16 +1339,16 @@ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], - "refund account merged" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=", "HG7OrQT/Ofg=" ], - "refund is sent to fee-bump source|protocol version 20" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund is sent to fee-bump source|protocol version 21" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund is sent to fee-bump source|protocol version 22" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund still happens on bad auth|protocol version 20" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund still happens on bad auth|protocol version 21" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund still happens on bad auth|protocol version 22" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=", "o9mb+GfjtK8=" ], - "refund test with closeLedger|protocol version 20" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=" ], - "refund test with closeLedger|protocol version 21" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=" ], - "refund test with closeLedger|protocol version 22" : [ "bKDF6V5IzTo=", "y0mODi4DFnM=" ], + "refund account merged" : [ "bKDF6V5IzTo=", "398Rd+u+jdE=", "b4KxXJCxvM0=", "7/h1q7KjqKA=" ], + "refund is sent to fee-bump source|protocol version 20" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund is sent to fee-bump source|protocol version 21" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund is sent to fee-bump source|protocol version 22" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund still happens on bad auth|protocol version 20" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund still happens on bad auth|protocol version 21" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund still happens on bad auth|protocol version 22" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=", "LyDINL0VaLk=" ], + "refund test with closeLedger|protocol version 20" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=" ], + "refund test with closeLedger|protocol version 21" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=" ], + "refund test with closeLedger|protocol version 22" : [ "bKDF6V5IzTo=", "JRiUwIP1h2Q=" ], "settings upgrade" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "settings upgrade command line utils" : [ @@ -1387,6 +1387,8 @@ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], + "temp entry eviction|BucketListDB|background scan" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], + "temp entry eviction|BucketListDB|legacy main thread scan" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "temp entry eviction|sql" : [ "bKDF6V5IzTo=", "bKDF6V5IzTo=" ], "transaction validation diagnostics" : [ "bKDF6V5IzTo=" ], "version test" : [ "766L+TYsWqA=" ]