Commit Graph

145 Commits

Author SHA1 Message Date
JoelKatz
e575fea243 Whitespace. 2011-12-02 16:23:21 -08:00
JoelKatz
70ee793a07 Use 'peek' to indicate a reference to someone else's object. 2011-12-02 16:23:02 -08:00
JoelKatz
46d6ae415b Cleanup. 2011-12-02 16:22:54 -08:00
JoelKatz
70d3ea2495 Storage for objects retrieved by hash. Implement SQL set/get logic. 2011-12-02 16:22:38 -08:00
JoelKatz
eaf4bc1b41 Small updates. 2011-12-02 16:22:25 -08:00
JoelKatz
089687152e The database is not reentrant, so we need a ScopedLock to gate it. 2011-12-02 16:22:10 -08:00
JoelKatz
26171e6dec Whitespace changes. 2011-12-02 16:21:59 -08:00
JoelKatz
f3ed8b7ec9 Updates, working to get the network code going. 2011-11-30 21:29:38 -08:00
JoelKatz
284445a7fa Start cleaning up the peer code. 2011-11-30 14:57:44 -08:00
JoelKatz
f243286bc9 Bugfixes and new code. Ledger unit test now successfully creates a local
account, creates an initial ledger, closes the initial ledger and opens a
new ledger, creates a second account, and adds a transaction to transfer
funds to the open ledger.
2011-11-30 12:19:48 -08:00
JoelKatz
b301fe2846 Whitespace 2011-11-29 16:44:08 -08:00
JoelKatz
dc8cd59c1d Fix some small bugs in the Ledger code. Add a unit test. (Needs more tests.) 2011-11-29 16:43:32 -08:00
JoelKatz
eb2efd5a3c Fix some typos. 2011-11-29 16:43:18 -08:00
JoelKatz
7572f0a3e3 Fix a bug where dirtying the root doesn't update the special root pointer. 2011-11-29 16:42:50 -08:00
JoelKatz
ff8b9aafa6 Remove debug code accidentally commited. 2011-11-29 16:22:17 -08:00
JoelKatz
66fec28ffe Cleanup, additional debug, and a very painful bugfix that turned out to be a
1 instead of a 0.
2011-11-29 11:26:45 -08:00
JoelKatz
10ca256063 Updates. 2011-11-29 11:23:53 -08:00
JoelKatz
11f9e111de Construct the next ledger from the existing ledger.
Close ledger logic.
2011-11-28 19:34:16 -08:00
JoelKatz
75f1eb80a4 Make these pieces work together. 2011-11-28 19:33:50 -08:00
JoelKatz
aee1e9f180 Bugfix. Add 16-bit types. 2011-11-28 14:02:33 -08:00
JoelKatz
ebb9a9c255 Build enough information into the leaf nodes so that they can be parsed
without knowledge of the objects they contain. This will allow new
transaction or account formats to be added (possibly with larger data sizes)
without breaking the ability to parse the hash trees. It also simplifies
the operation-specific tree code (since it doesn't have to parse the raw
leaf data).
2011-11-28 13:59:34 -08:00
JoelKatz
e87a027df2 Code to boostrap the initial ledger. 2011-11-26 00:57:31 -08:00
JoelKatz
06a9bc5520 Transaction status, REMOVED. 2011-11-25 21:53:12 -08:00
JoelKatz
fe3acce262 Some missing functions. 2011-11-25 21:52:54 -08:00
JoelKatz
badf382903 Note that 'insufficient funds' can occur when removing a transaction too, if
the funds have already been spent by another transaction. When removing a
transaction, any 'subsequent' dependent transactions must be removed first.
2011-11-25 21:51:30 -08:00
JoelKatz
d4030472e7 Cleanups. Function to fully remove/undo a transaction from a ledger. 2011-11-25 21:50:58 -08:00
JoelKatz
c6f50c8d59 Missing helper functions. 2011-11-25 21:50:50 -08:00
JoelKatz
d176e9d2c7 Bugfixes. isChildLeaf had wrong test. peekNextItem walked the wrong way. 2011-11-25 17:10:42 -08:00
JoelKatz
9eb8188627 Update 2011-11-25 13:52:33 -08:00
JoelKatz
01f5740add Endian fix. SHAMap now passes its (admittedly anemic right now) unit test. 2011-11-25 13:52:04 -08:00
JoelKatz
354da99038 Correct depth to 20+leaf, not 10+leaf. 2011-11-25 13:51:47 -08:00
JoelKatz
a9e6f0b70f Bugfix: Put root node in map. 2011-11-25 13:51:34 -08:00
JoelKatz
997ea843d1 These uint160/uint256 types internally use little-endian. 2011-11-25 13:51:18 -08:00
JoelKatz
0df9ec91fa Debug and unit test code. Copy on write logic. Bugfixes. 2011-11-25 00:03:33 -08:00
JoelKatz
83b2f8b73a Simplify. Rewrite SHAMap::dirtyUp. 2011-11-23 23:45:26 -08:00
JoelKatz
51f3f4e1a4 Some missing handlers. SHAMap traversal top-level code. 2011-11-23 14:57:11 -08:00
JoelKatz
5fc9233fb5 More ledger functions, updateAccountState/addTransaction. 2011-11-23 12:50:51 -08:00
JoelKatz
17c265ee24 Some cleanups.
Add functions that avoid an allocate/copy/free where that's not needed.
2011-11-23 12:50:05 -08:00
JoelKatz
451b719ffc Transaction::setStatus was missing. 2011-11-23 12:49:38 -08:00
JoelKatz
9462cd6718 Account state conversion from ledger to structure forms. 2011-11-23 12:48:45 -08:00
JoelKatz
6c7fd5f195 More work on core ledger and transaction processing code. 2011-11-22 15:42:03 -08:00
JoelKatz
41309b6f72 Part of the 'tray' implementation to avoid a burst of load on ledger close 2011-11-21 13:10:12 -08:00
JoelKatz
73578d6313 Begin trying the ledger code in. 2011-11-21 13:09:47 -08:00
JoelKatz
34265cd55b Small updates. 2011-11-21 13:09:31 -08:00
JoelKatz
4d8894f71a It makes much more sense to keep the from account pointer in the transaction 2011-11-18 20:07:57 -08:00
JoelKatz
fa60ccd2df Start tying all these classes together: 2011-11-18 11:23:06 -08:00
JoelKatz
4096bad636 Cleanup 2011-11-17 22:05:35 -08:00
JoelKatz
b7046ae6f3 Starting tying into serializer code. 2011-11-17 22:05:13 -08:00
JoelKatz
8ae29a3f06 Small cleanups 2011-11-17 22:04:36 -08:00
JoelKatz
76b7b3c68e More SHA map work. 2011-11-17 19:57:19 -08:00