checkpoint

This commit is contained in:
CJ Cobb
2021-05-26 21:23:16 +00:00
parent 7759d86087
commit 96f896c117
7 changed files with 29 additions and 18 deletions

View File

@@ -1,21 +1,5 @@
#include <handlers/RPCHelpers.h> #include <handlers/RPCHelpers.h>
#include <reporting/BackendInterface.h> #include <reporting/BackendInterface.h>
std::vector<unsigned char>
ledgerInfoToBlob(ripple::LedgerInfo const& info)
{
ripple::Serializer s;
s.add32(info.seq);
s.add64(info.drops.drops());
s.addBitString(info.parentHash);
s.addBitString(info.txHash);
s.addBitString(info.accountHash);
s.add32(info.parentCloseTime.time_since_epoch().count());
s.add32(info.closeTime.time_since_epoch().count());
s.add8(info.closeTimeResolution.count());
s.add8(info.closeFlags);
// s.addBitString(info.hash);
return s.peekData();
}
boost::json::object boost::json::object
doLedger(boost::json::object const& request, BackendInterface const& backend) doLedger(boost::json::object const& request, BackendInterface const& backend)

View File

@@ -80,3 +80,19 @@ ledgerSequenceFromRequest(
return request.at("ledger_index").as_int64(); return request.at("ledger_index").as_int64();
} }
} }
std::vector<unsigned char>
ledgerInfoToBlob(ripple::LedgerInfo const& info)
{
ripple::Serializer s;
s.add32(info.seq);
s.add64(info.drops.drops());
s.addBitString(info.parentHash);
s.addBitString(info.txHash);
s.addBitString(info.accountHash);
s.add32(info.parentCloseTime.time_since_epoch().count());
s.add32(info.closeTime.time_since_epoch().count());
s.add8(info.closeTimeResolution.count());
s.add8(info.closeFlags);
s.addBitString(info.hash);
return s.peekData();
}

View File

@@ -24,5 +24,7 @@ std::optional<uint32_t>
ledgerSequenceFromRequest( ledgerSequenceFromRequest(
boost::json::object const& request, boost::json::object const& request,
BackendInterface const& backend); BackendInterface const& backend);
std::vector<unsigned char>
ledgerInfoToBlob(ripple::LedgerInfo const& info);
#endif #endif

View File

@@ -16,6 +16,7 @@ BackendIndexer::~BackendIndexer()
std::unique_lock lck(mutex_); std::unique_lock lck(mutex_);
work_.reset(); work_.reset();
ioThread_.join(); ioThread_.join();
updateThread_.join();
} }
void void
BackendIndexer::writeLedgerObject( BackendIndexer::writeLedgerObject(

View File

@@ -52,7 +52,7 @@
static void static void
noticeReceiver(void* arg, PGresult const* res) noticeReceiver(void* arg, PGresult const* res)
{ {
BOOST_LOG_TRIVIAL(debug) << "server message: " << PQresultErrorMessage(res); BOOST_LOG_TRIVIAL(trace) << "server message: " << PQresultErrorMessage(res);
} }
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------

View File

@@ -846,7 +846,11 @@ PostgresBackend::writeKeys(
} }
} }
if (isAsync) if (isAsync)
{
if (numRows > 0)
conn.bulkInsert("keys", buffer.str());
conn("COMMIT"); conn("COMMIT");
}
return true; return true;
} }
bool bool
@@ -890,7 +894,11 @@ PostgresBackend::writeBooks(
} }
} }
if (isAsync) if (isAsync)
{
if (numRows > 0)
conn.bulkInsert("books", buffer.str());
conn("COMMIT"); conn("COMMIT");
}
return true; return true;
} }
bool bool

View File

@@ -729,7 +729,7 @@ async def ledger(ip, port, ledger, binary, transactions, expand):
async with websockets.connect(address,max_size=1000000000) as ws: async with websockets.connect(address,max_size=1000000000) as ws:
await ws.send(json.dumps({"command":"ledger","ledger_index":int(ledger),"binary":bool(binary), "transactions":bool(transactions),"expand":bool(expand)})) await ws.send(json.dumps({"command":"ledger","ledger_index":int(ledger),"binary":bool(binary), "transactions":bool(transactions),"expand":bool(expand)}))
res = json.loads(await ws.recv()) res = json.loads(await ws.recv())
#print(json.dumps(res,indent=4,sort_keys=True)) print(json.dumps(res,indent=4,sort_keys=True))
return res return res
except websockets.exceptions.connectionclosederror as e: except websockets.exceptions.connectionclosederror as e: