Commit Graph

5282 Commits

Author SHA1 Message Date
JoelKatz
bad215d607 Cache the hashes of nodes known to be full below.
Remove the TNByID entries for those nodes in state trees.
This reduces the memory and I/O neded during ledger fetching and prevents
ledger fetching from crushing other caches.
2013-04-19 15:00:36 -07:00
JoelKatz
0ff8190ea8 Sorry, I broke the unit tests. 2013-04-19 02:04:38 -07:00
JoelKatz
67021f5db9 Fix a rare race condition. 2013-04-19 00:17:39 -07:00
JoelKatz
f5643cd308 Fix bogus error reporting. 2013-04-18 20:21:20 -07:00
JoelKatz
6e9f1255e4 Hanging locks. 2013-04-18 20:15:17 -07:00
JoelKatz
57c5eb8c5c Don't hold sqlite locks across invocations. 2013-04-18 20:15:09 -07:00
JoelKatz
47ddbfb333 Move background hashed object writes to their own DB connection. 2013-04-18 19:01:48 -07:00
JoelKatz
2f6c1025e4 No reason to setup checkpointing on hash node db. All writes
come from a lazy writing thread.
2013-04-18 16:28:02 -07:00
JoelKatz
d6df59010b Small WAL cleanup. 2013-04-18 16:27:57 -07:00
JoelKatz
d9db560d9f Don't let WAL files grow without bound. 2013-04-18 16:27:50 -07:00
JoelKatz
395a36a47f Remove an assert that can false trigger. 2013-04-17 15:48:57 -07:00
JoelKatz
b2fdee7bb9 Fix a deadlock reported by cn_smi between the PeerSet lock and the master lock. 2013-04-17 13:12:30 -07:00
JoelKatz
a8fa6c595a The next part of the reserve/fee change code. 2013-04-17 08:37:25 -07:00
Arthur Britto
805862f719 Fix calcNodeRipple to use correct rate. 2013-04-17 02:28:07 -07:00
JoelKatz
eb957cc662 Simplify and improve the WAL code. 2013-04-17 00:06:37 -07:00
JoelKatz
ee393aef36 Stop processing on dead connections ASAP 2013-04-16 20:48:22 -07:00
JoelKatz
c15de1db76 Aggregate client load into a queue. This will prevent large numbers of commands
from a single client from flooding the job queue.
2013-04-16 20:48:17 -07:00
JoelKatz
11306ff061 Tiny cleanup. 2013-04-16 20:48:00 -07:00
JoelKatz
531dad6cfc Merge fixes. 2013-04-16 12:01:25 -07:00
JoelKatz
71c15310d9 Small fix. 2013-04-16 11:57:02 -07:00
JoelKatz
09e4f6a4fe Merge fixes. 2013-04-16 11:53:50 -07:00
JoelKatz
644d97a332 Add a getLedgerNext that takes into account changes in the LES.
Conflicts:
	src/cpp/ripple/RippleCalc.cpp
2013-04-16 11:45:04 -07:00
JoelKatz
aa984592ca Avoid assert. 2013-04-16 11:43:37 -07:00
JoelKatz
61efda89a5 This keeps the two timing schemes compatible. 2013-04-15 14:38:49 -07:00
JoelKatz
9feb97e530 Timing change to avoid allowing a server to race ahead of the
majority of validators. Enforce minimum ledger open time which
is extended if there are too few validations.
2013-04-15 14:38:44 -07:00
JoelKatz
a68acc92bc Merge branch 'master' of github.com:jedmccaleb/NewCoin into cherry 2013-04-15 07:15:21 -07:00
JoelKatz
a12d2648fc Don't send a zero amount. 2013-04-15 05:44:35 -07:00
JoelKatz
fe2b838d49 Make the code match the comment. 2013-04-14 04:38:46 -07:00
JoelKatz
f30ce4171a Don't count forced issuer nodes after exchanges because we didn't have to find them.
Drop the default maximum path length to four because exchanges to non-XRP aren't overcounted.
2013-04-14 04:37:32 -07:00
JoelKatz
1ca88a8a14 Don't explore paths if we don't have enough path length left to use them. 2013-04-14 04:37:26 -07:00
JoelKatz
d69bccc797 Misuse of scoped lock. 2013-04-14 04:35:58 -07:00
JoelKatz
7d97f314f1 Remove mLedger from PathState. It's not used and it's scary (because an LES could amend it). 2013-04-14 04:35:34 -07:00
JoelKatz
58903e9ed5 Grr! These are way too easy to do by mistake. The following code does nothing useful:
ScopedLock(theApp->getMasterLock());
Must be:
	ScopedLock sl(theApp->getMasterLock());
2013-04-12 18:37:44 -07:00
JoelKatz
b052975790 Manual fixes. 2013-04-11 14:40:13 -07:00
JoelKatz
057adef333 Avoid redundant exploration.
Conflicts:
	src/cpp/ripple/Pathfinder.cpp
	src/cpp/ripple/Pathfinder.h
2013-04-11 14:08:49 -07:00
JoelKatz
aaaa898930 Add destination account. 2013-04-11 14:02:38 -07:00
Arthur Britto
5542ed51cc Fix createHumanCurrency() to always output instead of throwing. 2013-04-11 14:02:30 -07:00
JoelKatz
3981727293 Return the "destination_currencies" field. 2013-04-11 14:02:24 -07:00
JoelKatz
45915d262e Fix memory leak. 2013-04-11 14:02:19 -07:00
JoelKatz
aad99f4955 Cleanup. 2013-04-11 14:02:13 -07:00
JoelKatz
5e834ae652 Pathfinding performance improvements. 2013-04-11 14:01:51 -07:00
JoelKatz
4d1ce12505 Cleanup. 2013-04-11 14:01:46 -07:00
JoelKatz
c03ae4accb Missing free in error case. 2013-04-11 14:01:26 -07:00
JoelKatz
7589d2f6e1 Don't let the ripple address cache grow infinitely. 2013-04-11 14:01:18 -07:00
JoelKatz
d0c4dd0222 Typo. 2013-04-11 14:01:12 -07:00
JoelKatz
4c30671372 Be sure not to include XRP twice. 2013-04-11 14:01:06 -07:00
JoelKatz
4abae1d11a Temporarily revert part of previous patch. 2013-04-11 14:00:57 -07:00
JoelKatz
a00ae8864a Widen the ripple paths we explore close to the beginning but narrow them in the middle.
Conflicts:
	src/cpp/ripple/Pathfinder.cpp
2013-04-11 14:00:45 -07:00
JoelKatz
8c3d04caff Include XRP in usAccountSourceCurrencies so that it can't get included twice. 2013-04-11 13:59:21 -07:00
JoelKatz
228a3b5a67 Fix previous commit. 2013-04-11 13:59:11 -07:00