Path finding fixes:

Track path finding and order book creation time and latency.
Use a ledger snapshot for path finding.
You can't call getCurrentLedger from an unlocked context.
Pathfinding called from the transaction sign function held the master lock.
This commit is contained in:
JoelKatz
2013-02-12 20:39:00 -08:00
parent ef5069a706
commit cb111b6318
8 changed files with 62 additions and 28 deletions

View File

@@ -1,5 +1,6 @@
#include <boost/foreach.hpp>
#include "Application.h"
#include "OrderBookDB.h"
#include "Log.h"
@@ -11,8 +12,10 @@ OrderBookDB::OrderBookDB()
}
// TODO: this would be way faster if we could just look under the order dirs
void OrderBookDB::setup(Ledger::pointer ledger)
void OrderBookDB::setup(Ledger::ref ledger)
{
LoadEvent::autoptr ev = theApp->getJobQueue().getLoadEventAP(jtOB_SETUP);
mXRPOrders.clear();
mIssuerMap.clear();
mKnownMap.clear();