13828 Commits

Author SHA1 Message Date
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
JoelKatz
477b2df276 More work on the SHAMap/Serialize classes. 2011-11-17 18:11:11 -08:00
JoelKatz
e7bae43261 Continue implementation these classes. 2011-11-17 12:22:25 -08:00
JoelKatz
7137f759a9 Serialization functions. 2011-11-17 12:18:32 -08:00
JoelKatz
55b2111fd5 Updates. Create a class to hold an item in a SHAMap, separating the tag from
the data (it's not always the hash of the data). Make ScopedLock's recursive.
2011-11-15 10:49:14 -08:00
JoelKatz
14988dec90 Updates 2011-11-15 10:48:52 -08:00
JoelKatz
c42d3d0fe9 Typo 2011-11-15 10:46:19 -08:00
JoelKatz
da8cdf854a Missing include 2011-11-15 10:46:12 -08:00
JoelKatz
4625a55c25 Fixes. 2011-11-14 19:48:49 -08:00
JoelKatz
7fb40e1c55 Updates. 2011-11-14 19:48:46 -08:00
JoelKatz
fbf6967d82 Continue fleshing out these classes. 2011-11-14 17:32:05 -08:00
JoelKatz
ccea015c6a Start coding the guts of the SHAMap structure that will hold, synchronize,
sign, and validate our account balances and transactions.
2011-11-14 15:21:14 -08:00
JoelKatz
748a4d62ca Allow nodes to add status information to transactions they pass on 2011-11-14 10:40:01 -08:00
JoelKatz
2c45e16d5a Keep binary objects in a hash-indexed table. Remove redundant fields. 2011-11-14 10:39:29 -08:00
JoelKatz
b4198029af Class for tracking conflicted/rejected transactions 2011-11-14 10:39:09 -08:00
JoelKatz
2793311400 Cleanup. 2011-11-12 14:12:45 -08:00
JoelKatz
53b61d4d65 Start to flesh out this code. 2011-11-12 14:12:38 -08:00
JoelKatz
3f8f7789b3 Tiny mistake in previous commit. 2011-11-11 16:38:49 -08:00