13015 Commits

Author SHA1 Message Date
JoelKatz
ef0c9d036a cleanups. 2012-02-05 07:13:23 -08:00
JoelKatz
c2498de27e Cleanups. 2012-02-05 07:08:54 -08:00
JoelKatz
30c9bf0ed2 Major rewrite of the SHAMap code. This code performs much better
than the original version, particularly for smaller maps.
2012-02-05 06:54:44 -08:00
JoelKatz
41ce5fa7f9 Missing from previous commit. 2012-02-02 16:14:27 -08:00
JoelKatz
fca8d4f8e9 Unordered maps perform better than regular ones. 2012-02-02 16:14:11 -08:00
JoelKatz
9b804c0c61 Optimizations. 2012-02-01 21:04:28 -08:00
JoelKatz
08d6b55fed Major optimization in the way we track SHAMaps. 2012-02-01 20:51:58 -08:00
JoelKatz
5888d19f2b SHAMap sync now passes its unit test with the "full below" optimization
disabled. There's a logic error in the implementation.
2012-02-01 19:10:07 -08:00
JoelKatz
86687e2012 bugfixes. 2012-02-01 18:46:08 -08:00
JoelKatz
ca3b614e29 A bug fix that's also a simplification. 2012-02-01 18:38:42 -08:00
JoelKatz
f2130d4f6b Complete the SHAMapSync unit test. The test currently fails. Debug in progress 2012-02-01 14:22:34 -08:00
JoelKatz
443eef3a9b Complete the SHAMapSync code. Next step is to finish the testing harness. 2012-01-31 20:07:55 -08:00
JoelKatz
bac03c31de Fixes and cleanups. 2012-01-31 18:44:59 -08:00
JoelKatz
eec4bfddff Need a 'walkTo' function. That walks as far as possible to tree
position.
2012-01-31 15:52:44 -08:00
JoelKatz
ca26a22314 Map sync testing framework. 2012-01-31 12:29:18 -08:00
JoelKatz
a7bdb81d3d Clean this up a bit. 2012-01-31 12:29:06 -08:00
JoelKatz
5a52d6fec3 More work on the ledger/SHAMap sync code. 2012-01-30 20:56:38 -08:00
JoelKatz
6e11bfbb81 More ledger acquire code. 2012-01-30 20:56:11 -08:00
JoelKatz
3740498b50 Some enhancements to this coded needed for the sync code to work. 2012-01-30 19:04:22 -08:00
JoelKatz
2116ce700d Implementations. 2012-01-30 18:00:27 -08:00
JoelKatz
de1e8cdab7 The new code tracks responses by ledger hash, not by request sequence. 2012-01-30 17:58:49 -08:00
JoelKatz
895a51319d Do it the way everyone else does it -- more likely to work. 2012-01-30 17:58:29 -08:00
JoelKatz
94d61f67a8 Outline of the LedgerAcquire class and its tracking class. 2012-01-30 14:51:21 -08:00
JoelKatz
e47cba3369 Code to track ledgers we're acquiring from remote node, allow
callbacks to be attached to them, and trigger their state machines.
2012-01-30 12:56:43 -08:00
JoelKatz
7885439bb4 Tiny optimization. 2012-01-27 11:34:55 -08:00
JoelKatz
110a4a47f1 Use the transaction master. 2012-01-27 11:34:41 -08:00
JoelKatz
4f0a9a4ce5 Tie in transaction master. Some performance improvements and const fixes. 2012-01-27 11:33:54 -08:00
JoelKatz
0867986c35 Tie in transaction master code. 2012-01-27 11:33:36 -08:00
JoelKatz
1896348b7b Modify the ledger history code to use the tagged cache. 2012-01-25 16:32:27 -08:00
JoelKatz
8a0625a477 Bugfix. 2012-01-25 16:32:13 -08:00
JoelKatz
58d81ca937 Map/Cache to track objects by name and canonicalize references. Will
be used for transactions and closed ledgers.
2012-01-25 15:27:14 -08:00
JoelKatz
f4e6a72e1c Logic to 'rebase' a ledger to a different previous ledger.
This code does not assume the new previous ledger is valid
or trusted.
1) Validate sequence numbers and basic information.
2) Create a new ledger based on the new previous ledger.
3) Compare the old previous ledger and the new previous
ledger.
4) Try to include any missing, valid transactions in
the current ledger.
5) Traverse the old ledger based on the old previous ledger,
try to import any transactions into the new ledger.
2012-01-24 21:30:27 -08:00
JoelKatz
b5afbf52ec Protocol enhancements for network 'previous ledger' sync. 2012-01-24 21:29:54 -08:00
JoelKatz
7215f5b220 Add AccountState::addJson. Make RPC call "accountinfo <account>" work
on non-local accounts and local account by account identifier.
2012-01-23 16:58:17 -08:00
JoelKatz
f4c6865751 Add new commands to help. 2012-01-23 13:38:12 -08:00
JoelKatz
6112a443cf Add "ledger" command to get ledger information. Make the command
work with no parameters. Fix a bug where the ledger's account/txn
hashes didn't get properly synchronized to the SHA maps. Add function
to get ledger as json object.
2012-01-23 13:31:39 -08:00
JoelKatz
017a606f3b Support "tx <family> <seq>" RPC command. 2012-01-23 12:12:34 -08:00
JoelKatz
fc0c57c723 Trivial change. 2012-01-23 12:12:24 -08:00
JoelKatz
70bc25e6d7 Trivial change. 2012-01-23 12:12:16 -08:00
JoelKatz
e0abc4b35c Finish "txn <id>" RPC command. 2012-01-21 12:57:33 -08:00
JoelKatz
ff4678c741 Make 'tx' RPC command with no parameteres work. It displays all
"in progress" transactions that affect local accounts.
2012-01-20 17:44:28 -08:00
JoelKatz
5196be1645 Properly report unknown command errors so the command line tool
can give help.
2012-01-20 17:44:06 -08:00
JoelKatz
ba6d040266 Infrastructure for "tx" RPC command to track transactions. 2012-01-20 16:43:53 -08:00
JoelKatz
50e23112e3 Fix applying transactions with a local destination to the wallet. 2012-01-20 13:43:07 -08:00
JoelKatz
5d08754104 Spurious parse errors caused by missing 'break's. 2012-01-20 13:28:31 -08:00
JoelKatz
27e8d12fab Sorry, wrong function.# database/shell.c 2012-01-19 19:39:58 -08:00
JoelKatz
416695f64e Report a resolver error to the RPC caller. 2012-01-19 18:44:06 -08:00
JoelKatz
82375c30b4 We need to detach on all errors or the Peer structure will stay in memory
forever.
2012-01-19 18:43:51 -08:00
JoelKatz
78ad27e6aa Be consistent in how we include boost headers. 2012-01-19 18:43:32 -08:00
JoelKatz
b93613e835 Fix crash on bad resolve. Fix peer shutdown logic. Fix peer tracking logic. 2012-01-19 18:38:31 -08:00