diff --git a/src/ripple/app/ledger/Ledger.cpp b/src/ripple/app/ledger/Ledger.cpp index 8599dbd8e..a469178f7 100644 --- a/src/ripple/app/ledger/Ledger.cpp +++ b/src/ripple/app/ledger/Ledger.cpp @@ -184,7 +184,7 @@ Ledger::Ledger( { info_.seq = 1; info_.drops = INITIAL_XRP; - info_.closeTimeResolution = ledgerDefaultTimeResolution; + info_.closeTimeResolution = ledgerGenesisTimeResolution; static auto const id = calcAccountID( generateKeyPair(KeyType::secp256k1, generateSeed("masterpassphrase")) diff --git a/src/ripple/consensus/LedgerTiming.h b/src/ripple/consensus/LedgerTiming.h index c2ab08df1..9320cf07d 100644 --- a/src/ripple/consensus/LedgerTiming.h +++ b/src/ripple/consensus/LedgerTiming.h @@ -43,6 +43,9 @@ std::chrono::seconds constexpr ledgerPossibleTimeResolutions[] = { //! Initial resolution of ledger close time. auto constexpr ledgerDefaultTimeResolution = ledgerPossibleTimeResolutions[2]; +//! Close time resolution in genesis ledger +auto constexpr ledgerGenesisTimeResolution = ledgerPossibleTimeResolutions[0]; + //! How often we increase the close time resolution (in numbers of ledgers) auto constexpr increaseLedgerTimeResolutionEvery = 8; diff --git a/src/test/rpc/Feature_test.cpp b/src/test/rpc/Feature_test.cpp index 89b976395..4a6539562 100644 --- a/src/test/rpc/Feature_test.cpp +++ b/src/test/rpc/Feature_test.cpp @@ -221,7 +221,7 @@ class Feature_test : public beast::unit_test::suite BEAST_EXPECT(feature[jss::count] == 1); BEAST_EXPECT(feature[jss::threshold] == 1); BEAST_EXPECT(feature[jss::validations] == 1); - BEAST_EXPECT(feature[jss::majority] == 2740); + BEAST_EXPECT(feature[jss::majority] == 2540); } } diff --git a/src/test/rpc/LedgerClosed_test.cpp b/src/test/rpc/LedgerClosed_test.cpp index f52c4d3c3..c5073db32 100644 --- a/src/test/rpc/LedgerClosed_test.cpp +++ b/src/test/rpc/LedgerClosed_test.cpp @@ -37,7 +37,7 @@ public: auto lc_result = env.rpc("ledger_closed")[jss::result]; BEAST_EXPECT( lc_result[jss::ledger_hash] == - "8AEDBB96643962F1D40F01E25632ABB3C56C9F04B0231EE4B18248B90173D189"); + "A15F7FBE0B06286915D971BF9802C9431CD7DE40E2AC7D07C409EDB1C0715C60"); BEAST_EXPECT(lc_result[jss::ledger_index] == 2); env.close(); @@ -52,7 +52,7 @@ public: lc_result = env.rpc("ledger_closed")[jss::result]; BEAST_EXPECT( lc_result[jss::ledger_hash] == - "7C3EEDB3124D92E49E75D81A8826A2E65A75FD71FC3FD6F36FEB803C5F1D812D"); + "2E81FC6EC0DD943197E0C7E3FBE9AE307F2775F2F7485BB37307984C3C0F2340"); BEAST_EXPECT(lc_result[jss::ledger_index] == 3); } diff --git a/src/test/rpc/LedgerRPC_test.cpp b/src/test/rpc/LedgerRPC_test.cpp index d0070857d..f026db121 100644 --- a/src/test/rpc/LedgerRPC_test.cpp +++ b/src/test/rpc/LedgerRPC_test.cpp @@ -1251,19 +1251,15 @@ class LedgerRPC_test : public beast::unit_test::suite // no amendments env.fund(XRP(10000), "alice"); env.close(); + log << env.closed()->info().hash; env.fund(XRP(10000), "bob"); env.close(); + log << env.closed()->info().hash; env.fund(XRP(10000), "jim"); env.close(); + log << env.closed()->info().hash; env.fund(XRP(10000), "jill"); - // closed ledger hashes are: - // 1 - AB868A6CFEEC779C2FF845C0AF00A642259986AF40C01976A7F842B6918936C7 - // 2 - 8AEDBB96643962F1D40F01E25632ABB3C56C9F04B0231EE4B18248B90173D189 - // 3 - 7C3EEDB3124D92E49E75D81A8826A2E65A75FD71FC3FD6F36FEB803C5F1D812D - // 4 - 9F9E6A4ECAA84A08FF94713FA41C3151177D6222EA47DD2F0020CA49913EE2E6 - // 5 - C516522DE274EB52CE69A3D22F66DD73A53E16597E06F7A86F66DF7DD4309173 - // { // access via the legacy ledger field, keyword index values Json::Value jvParams; @@ -1326,8 +1322,8 @@ class LedgerRPC_test : public beast::unit_test::suite // access via the ledger_hash field Json::Value jvParams; jvParams[jss::ledger_hash] = - "7C3EEDB3124D92E49E75D81A8826A2E6" - "5A75FD71FC3FD6F36FEB803C5F1D812D"; + "2E81FC6EC0DD943197E0C7E3FBE9AE30" + "7F2775F2F7485BB37307984C3C0F2340"; auto jrr = env.rpc( "json", "ledger", @@ -1339,8 +1335,8 @@ class LedgerRPC_test : public beast::unit_test::suite // extra leading hex chars in hash will be ignored jvParams[jss::ledger_hash] = "DEADBEEF" - "7C3EEDB3124D92E49E75D81A8826A2E6" - "5A75FD71FC3FD6F36FEB803C5F1D812D"; + "2E81FC6EC0DD943197E0C7E3FBE9AE30" + "7F2775F2F7485BB37307984C3C0F2340"; jrr = env.rpc( "json", "ledger", @@ -1359,8 +1355,8 @@ class LedgerRPC_test : public beast::unit_test::suite // malformed (non hex) hash jvParams[jss::ledger_hash] = - "ZZZZZZZZZZZD92E49E75D81A8826A2E6" - "5A75FD71FC3FD6F36FEB803C5F1D812D"; + "2E81FC6EC0DD943197EGC7E3FBE9AE30" + "7F2775F2F7485BB37307984C3C0F2340"; jrr = env.rpc( "json", "ledger", diff --git a/src/test/rpc/LedgerRequestRPC_test.cpp b/src/test/rpc/LedgerRequestRPC_test.cpp index eab828051..80b111309 100644 --- a/src/test/rpc/LedgerRequestRPC_test.cpp +++ b/src/test/rpc/LedgerRequestRPC_test.cpp @@ -183,7 +183,7 @@ public: BEAST_EXPECT(result[jss::ledger][jss::closed] == true); BEAST_EXPECT( result[jss::ledger][jss::ledger_hash] == - "AB868A6CFEEC779C2FF845C0AF00A642259986AF40C01976A7F842B6918936C7"); + "E9BB323980D202EC7E51BAB2AA8E35353F9C7BDAB59BF17378EADD4D0486EF9F"); BEAST_EXPECT( result[jss::ledger][jss::parent_hash] == "0000000000000000000000000000000000000000000000000000000000000000"); @@ -201,13 +201,13 @@ public: BEAST_EXPECT(result[jss::ledger][jss::closed] == true); BEAST_EXPECT( result[jss::ledger][jss::ledger_hash] == - "8AEDBB96643962F1D40F01E25632ABB3C56C9F04B0231EE4B18248B90173D189"); + "A15F7FBE0B06286915D971BF9802C9431CD7DE40E2AC7D07C409EDB1C0715C60"); BEAST_EXPECT( result[jss::ledger][jss::parent_hash] == - "AB868A6CFEEC779C2FF845C0AF00A642259986AF40C01976A7F842B6918936C7"); + "E9BB323980D202EC7E51BAB2AA8E35353F9C7BDAB59BF17378EADD4D0486EF9F"); BEAST_EXPECT( result[jss::ledger][jss::account_hash] == - "183D5235C7C1FB5AE67AD2F6CC3B28F5FB86E8C4F89DB50DD85641A96470534E"); + "CB07F3CA0398BE969A5B88F874629D4DBB6E103DE7C6DB8037281A89E51AA8C6"); BEAST_EXPECT( result[jss::ledger][jss::transaction_hash] == "0000000000000000000000000000000000000000000000000000000000000000"); @@ -219,13 +219,13 @@ public: BEAST_EXPECT(result[jss::ledger][jss::closed] == true); BEAST_EXPECT( result[jss::ledger][jss::ledger_hash] == - "D2EE1E2A7288AAD43D6FA8AD8007FD1A95646F365EF3A1AD608A03258F11CF18"); + "9BCA8AE5FD41D223D82E1B8288961D693EB1B2EFA10F51827A641AD4B12111D7"); BEAST_EXPECT( result[jss::ledger][jss::parent_hash] == - "8AEDBB96643962F1D40F01E25632ABB3C56C9F04B0231EE4B18248B90173D189"); + "A15F7FBE0B06286915D971BF9802C9431CD7DE40E2AC7D07C409EDB1C0715C60"); BEAST_EXPECT( result[jss::ledger][jss::account_hash] == - "22565DC00D1A30F2C15871714E512976EF476281E5E87FF63D3E129C9069F4F4"); + "5B793533909906D15CE27D1A423732D113160AB166188D89A2DFD8737CBDCBD5"); BEAST_EXPECT( result[jss::ledger][jss::transaction_hash] == "0213EC486C058B3942FBE3DAC6839949A5C5B02B8B4244C8998EFDF04DBD8222"); @@ -237,13 +237,13 @@ public: BEAST_EXPECT(result[jss::ledger][jss::closed] == true); BEAST_EXPECT( result[jss::ledger][jss::ledger_hash] == - "8F9032390CDD4C9D7A5B216AFDA3B525A3B39D7589C69D90D4C6BCA4619DD33C"); + "433D1E42F2735F926BF594E4F3DFC70AE3E74F51464156ED83A33D0FF121D136"); BEAST_EXPECT( result[jss::ledger][jss::parent_hash] == - "D2EE1E2A7288AAD43D6FA8AD8007FD1A95646F365EF3A1AD608A03258F11CF18"); + "9BCA8AE5FD41D223D82E1B8288961D693EB1B2EFA10F51827A641AD4B12111D7"); BEAST_EXPECT( result[jss::ledger][jss::account_hash] == - "C3335CA14E712CB28F2A7C09BEB9A24BF30BBFA5528F156C19F6665D7A588FEA"); + "39C91E2227ACECD057AFDC64AE8FEFF5A0E07CF26ED29D1AECC55B0385F3EFDE"); BEAST_EXPECT( result[jss::ledger][jss::transaction_hash] == "3CBDB8F42E04333E1642166BFB93AC9A7E1C6C067092CD5D881D6F3AB3D67E76"); @@ -255,13 +255,13 @@ public: BEAST_EXPECT(result[jss::ledger][jss::closed] == true); BEAST_EXPECT( result[jss::ledger][jss::ledger_hash] == - "3EDEB201735867A8EEECBC79A75902C05A7E3F192E4C12E02E67BFDDE5566CCE"); + "9ED4D0C397810980904AF3FC08583D23B09C3C7CCF835D2A4768145A8BAC1175"); BEAST_EXPECT( result[jss::ledger][jss::parent_hash] == - "8F9032390CDD4C9D7A5B216AFDA3B525A3B39D7589C69D90D4C6BCA4619DD33C"); + "433D1E42F2735F926BF594E4F3DFC70AE3E74F51464156ED83A33D0FF121D136"); BEAST_EXPECT( result[jss::ledger][jss::account_hash] == - "7C77B1E9EB86410D84EE0CD50716AAA21192F19CF533194AD705798895248212"); + "8F047B6A0D2083DF4F69C17F7CC9AE997B0D59020A43D9799A31D22F55837147"); BEAST_EXPECT( result[jss::ledger][jss::transaction_hash] == "C3D086CD6BDB9E97AD1D513B2C049EF2840BD21D0B3E22D84EBBB89B6D2EF59D"); @@ -340,7 +340,7 @@ public: BEAST_EXPECT(result[jss::ledger][jss::closed] == true); BEAST_EXPECT( result[jss::ledger][jss::ledger_hash] == - "AB868A6CFEEC779C2FF845C0AF00A642259986AF40C01976A7F842B6918936C7"); + "E9BB323980D202EC7E51BAB2AA8E35353F9C7BDAB59BF17378EADD4D0486EF9F"); BEAST_EXPECT( result[jss::ledger][jss::parent_hash] == "0000000000000000000000000000000000000000000000000000000000000000");