Commit Graph

216 Commits

Author SHA1 Message Date
Arthur Britto
7495fe70cc WS: Clean up json responses and report engine submission results. 2012-10-12 21:14:04 -07:00
Arthur Britto
b2481f3c49 Rename the protocol from newcoin to ripple. 2012-10-12 15:53:59 -07:00
JoelKatz
8c790b1d88 Remove dead code. 2012-10-11 05:17:35 -07:00
JoelKatz
1448eb1a5c '--net' startup option to require the node to get its ledger from the network.
Once we have a stable network, this will likely be the default.
2012-10-10 01:40:02 -07:00
Arthur Britto
fc73e286c4 WS: Changed response of server_subscribe. 2012-10-10 00:15:40 -07:00
jed
8b5114a23e Merge branch 'master' of github.com:jedmccaleb/NewCoin
Conflicts:
	src/Application.cpp
2012-10-09 03:05:21 -07:00
jed
573865cb23 allow you to load old ledger 2012-10-09 03:01:32 -07:00
JoelKatz
6f2e4b8172 Add RPC "accept_ledger" function which processes all pending transactions (in standalone mode only)
and closes the ledger, opening a new one. The sequence number of the new open ledger is returned.
2012-10-08 20:02:52 -07:00
JoelKatz
df94c192ce Log partition support. 2012-10-08 00:55:55 -07:00
JoelKatz
0630a4b7f4 We have to track the high node ID of trusted validators as a tie-breaker.
1) Change return from getCurrentValidations
2) Log tiebreaker logic to aid debugging
3) Change checkLastClosedLedger to use the new tie-breaker logic
4) Log when we refuse to switch to our own previous ledger
5) Track node ID in the serialized validation object
6) Simplify getCurrentValidations ledger suppression logic
2012-10-05 03:46:24 -07:00
JoelKatz
39cb1899d0 A few small bugfixes and some exra logging to track down a sync bug that Jed reported. 2012-10-03 22:23:32 -07:00
JoelKatz
e04b695434 Burninate "Value" in "*ValueField*" functions. It was just pointless extra typing.
What else would you set/get in a field, by name, other than its value?
2012-10-01 15:35:30 -07:00
JoelKatz
79c35f2689 Remove all IField/ITField functions. They are now obsolete.
Use the correponding STObject functions.
2012-10-01 15:21:22 -07:00
JoelKatz
135b4054e0 Cleanup, remove dead code. 2012-09-29 00:06:08 -07:00
Arthur Britto
cae6ea1c33 Remove useless NetworkOPs::getClosedLedger. 2012-09-26 15:03:19 -07:00
Arthur Britto
73e4a73f95 getLedgerID to NetworkOPs. 2012-09-26 14:07:07 -07:00
JoelKatz
3a786b911c Don't crash if we can't find the ledger for the generator 2012-09-14 08:42:21 -07:00
JoelKatz
6c016039c2 Get rid of all "const SHAMap::pointer&" -> SHAMap::ref 2012-09-13 15:36:56 -07:00
JoelKatz
ec2dded961 Revert "Cleanup transaction set sync map creation."
This reverts commit de8288d4d5.
2012-09-13 15:23:55 -07:00
JoelKatz
de8288d4d5 Cleanup transaction set sync map creation.
Remove a passthrough to NetworkOPs that doesn't make much sense.
2012-09-13 15:22:36 -07:00
JoelKatz
ca1436ac25 Remove some dead code that was in my way. 2012-09-11 14:51:13 -07:00
JoelKatz
e2137ea5af Make our ledger a bit stickier to avoid the "check at the wrong time"
problem (when you don't have enough validations for the latest ledger and so
jump backwards when you shouldn't. This solves every known ledger consensus
issue except the "stuck one ledger behind" issue. I'm working on that now.
2012-09-08 03:49:12 -07:00
JoelKatz
a3241dae56 Fix a case where we could lose deferred prposals. 2012-09-05 22:28:26 -07:00
JoelKatz
687578abd9 Get rid of "dead" ledgers. We don't need them any more and they make trouble.
Fix close time synch to be more accurate.
2012-09-05 21:55:00 -07:00
JoelKatz
cfedc4b981 Bugfix. 2012-09-03 20:29:59 -07:00
JoelKatz
4930ebb945 Simplify the way we handle validations. Include a signing time instead of a
closing time. Keep only the validation with the most recent signing time.
Sign using network time. This eliminates the ValidationPair nightmare and
makes the logic must easier to understand, increasing confidence that it
does what it's supposed to do.
2012-09-03 20:13:57 -07:00
JoelKatz
203533db3d Remove chatty debug. 2012-09-03 09:46:35 -07:00
JoelKatz
46f6110cdd Small cleanup. 2012-09-03 08:40:10 -07:00
JoelKatz
cc4827559c Support for proposals that contain the previous ledger hash.
A fix for ledger acquires not stopping when they should.
2012-09-03 06:03:09 -07:00
JoelKatz
81793192cb Bugfix and close time offset set function. 2012-09-03 04:37:25 -07:00
JoelKatz
d5fe3261ab Cleanups and simplfications. 2012-09-03 01:47:03 -07:00
JoelKatz
b950877758 Some proposal cleanups. 2012-09-03 01:19:58 -07:00
JoelKatz
3bd054748e Fix a vulnerability. Someone could see a ledger proposal and send us a
malformed version of that ledger proposal that failed our validity check but
was similar enough to the real proposal to trick us into suppressing that
proposal as a duplicate.
2012-09-01 00:53:40 -07:00
JoelKatz
02bd898e51 Some const-correctness.
const SLE::pointer & -> SLE::ref
2012-08-31 18:26:45 -07:00
JoelKatz
9ef0a5491b Use "Ledger::ref" instead of "const Ledger::pointer&". 2012-08-31 18:11:41 -07:00
JoelKatz
4d3fc5b6a5 Stash and apply proposals received with a different LCL. 2012-08-30 12:28:02 -07:00
JoelKatz
faaedb806f Start of the proposal defer/playback code.
Clean up tem codes to tap codes.
2012-08-30 11:43:20 -07:00
JoelKatz
e5af7072bc Propogate a view change during consensus to the NetworkOPs code. 2012-08-30 10:04:58 -07:00
JoelKatz
6282ad4a88 Clean up the TransactionEngineParameter flags. Clarify the semantics for
soft failure. Note that the code will not yet invoke a transaction with a
retry flag, but the support is there for transcations to handle it.
2012-08-29 23:02:06 -07:00
JoelKatz
6b144f8749 Quick fix to the bug causing crashes.
Will rethink shortly to make sure it's correct, but this should be adequate.
2012-08-29 17:33:37 -07:00
JoelKatz
ed709e0ccc Merge branch 'master' of github.com:jedmccaleb/NewCoin 2012-08-29 14:40:00 -07:00
JoelKatz
5db8082608 Small bugfixes. 2012-08-29 14:39:43 -07:00
Arthur Britto
4ae4807c16 Merge branch 'ripple'
Conflicts:
	src/LedgerConsensus.cpp
2012-08-29 12:00:29 -07:00
Arthur Britto
d96070f083 Rename TransactionEngineResult to TER & work on ripple. 2012-08-29 11:58:34 -07:00
JoelKatz
004f3719a5 Perhaps a fix for the problem. Try to make sure there's no window in which
we can receive a proposal and be unable to act on it, even if our clock is
way off and there are no transactions.

The basic problem is this: With no transactions and no clock
synchronization, we have no way to know when to close an idle ledger.
2012-08-28 23:44:29 -07:00
JoelKatz
e4f7ffe995 Some cleanups that should make Arthur happy. 2012-08-28 16:07:44 -07:00
Arthur Britto
bb7f692a76 Rework transaction engine result codes. 2012-08-26 20:38:35 -07:00
JoelKatz
532db8be35 assert if the sanitized transaction differs materially from the submitted
transaction.
2012-08-19 22:52:14 -07:00
JoelKatz
c036188c3c Some more cleanups. 2012-08-19 21:01:36 -07:00
JoelKatz
420ee91877 Remove more wasteful allocate/increment/decrement/free cycles. 2012-08-19 19:23:10 -07:00