Commit Graph

688 Commits

Author SHA1 Message Date
jl777
5ea06d80de Test 2018-05-07 16:11:07 +03:00
jl777
d6e4204114 Test 2018-05-07 16:10:45 +03:00
jl777
05f8c23767 Test 2018-05-07 16:07:04 +03:00
jl777
a9bad5a300 test 2018-05-07 15:47:18 +03:00
jl777
f8fb4922da Test 2018-05-07 14:14:12 +03:00
jl777
a893e99499 Test 2018-05-07 13:59:44 +03:00
jl777
496f1fd267 Test 2018-05-07 13:57:43 +03:00
jl777
be381f22ff 65 seconds to slow down diff 2018-05-03 16:18:00 +03:00
jl777
98ec2dc219 Add 1 second to timestamp to reduce diff growth 2018-05-03 14:20:34 +03:00
jl777
b92a8cd4bf Block PoS miner, need to cache first timestamp 2018-05-03 09:34:51 +03:00
jl777
9bf6c59e33 PoS mining latency fix 2018-05-03 09:05:00 +03:00
jl777
4cc387ec2c Detect new block during wait 2018-05-03 08:44:03 +03:00
jl777
6181f7d5bb Test 2018-05-03 07:22:41 +03:00
jl777
97e9d76edc Test 2018-05-03 07:19:10 +03:00
jl777
eb1ba5a0fe improve miner to reduce out of order timestamps 2018-05-03 07:18:05 +03:00
jl777
8fc79ac9fb Reduce miner created latency 2018-05-01 13:18:19 +03:00
jl777
8f2def7895 Update display notary 2018-04-30 11:49:03 +03:00
jl777
4fff8a632e Add 56 and 57 for miners display 2018-04-30 00:44:45 +03:00
jl777
2c7ba74d0e Fix 2018-04-30 00:38:30 +03:00
jl777
e4a383e340 Add notary 3 to recent miners print 2018-04-30 00:36:12 +03:00
jl777
6494f040c5 Redundant calls to dpow KMD 2018-04-29 14:59:20 +03:00
jl777
51376f3c53 ASSETCHAINS HF MAXSIGOPS -> 60000 2018-04-25 19:06:27 +03:00
jl777
efee0b0e9d Fix 700kb limit 2018-04-25 18:50:55 +03:00
jl777
9876909ccd Test 2018-04-25 18:19:25 +03:00
jl777
d1f503b5a6 Test 2018-04-25 18:17:53 +03:00
jl777
61f8caf2c3 +prints 2018-04-25 18:16:08 +03:00
jl777
001bc04a08 Test 2018-04-25 15:26:37 +03:00
jl777
265660f7cb streamline 2018-04-25 15:04:16 +03:00
jl777
373668be25 Test miner caused getinfo delay 2018-04-25 14:29:10 +03:00
jl777
395f10cf91 Test 2018-04-24 21:09:51 +03:00
jl777
43ef3068d1 10 second window for notary mining 2018-04-23 23:47:48 +03:00
jl777
37091e704e 30 seconds margin for notary mining 2018-04-23 21:33:18 +03:00
jl777
161f617de4 komodo_requestedhash request 2018-04-23 19:58:16 +03:00
jl777
64b45b7192 Test 2018-04-21 15:16:44 +03:00
jl777
a36c1a705a +print 2018-04-21 14:53:16 +03:00
jl777
0d8e3988e9 Immediate submit block from miner 2018-04-20 22:44:01 +03:00
jl777
2ac071da47 KOMODO_LIMITED_NETWORKSIZE
Prior commits relate to supporting a limited size network.

It looks like there is an edge case where it is possible for a hash to
be in the mapIndex, without a pindex. If a block with such a hash is
tried to be Accepted, the AcceptBlockHeader returns true but with a
null pindex, and AcceptBlock fails.

The code says that this indicates that the hash was added from a
blockheader without a block, but I didn’t see that happening. In any
case, it happens a lot on a 2 node network. So much so that if one node
is just mining, before too long the other node will not accept the
block and once that happens, no subsequent block would work as the
prior block is missing.

Of course, with more nodes, these blocks will be around a lot more and
likely it won’t be such an issue, but not so sure that it doesn’t
require restarting the node to get it back on track again.

These prior commits implement a KOMODO_LIMITED_NETWORKSIZE logic where
if it sees that a block has come in which is in the mapIndex but has no
pindex, it automatically addtoblockindex.

There is one edge case still left where both the current block being
processed and its previous block are in this limbo state. Since the
pindex is not mapped to the block, it is problematic to retrieve the
CBlock for the pprev and without the valid pprev the pindex will have a
null pprev and no nHeight set. It is possible that all the other code
will properly deal with such a case and automatically fix it, but
rather than rely on that, in such a case the automatic addtoblockindex
is not done.

A node in such a state would need to exit and restart or somehow fill
in the data from other nodes.

From what I can tell, the above is the main reason why the PoS/PoW
networks were having problems staying in sync. Since even with one
mining node, it was just a matter of time before the other node got
stuck, with more than one mining node we end up with independent forks
that won’t reconcile until the node is restarted.
2018-04-20 17:16:06 +03:00
jl777
a772476349 Test 2018-04-20 16:55:34 +03:00
jl777
563d507c61 Test 2018-04-20 13:30:54 +03:00
jl777
cfb55edbbc Test 2018-04-20 13:25:22 +03:00
jl777
7b025a4790 Test 2018-04-20 13:24:48 +03:00
jl777
dd66e3af3a Test 2018-04-20 13:20:26 +03:00
jl777
e16d22ee0f Test 2018-04-20 13:13:18 +03:00
jl777
9464ac21bc Test 2018-04-20 13:03:27 +03:00
jl777
66dd02d288 Test 2018-04-20 12:32:39 +03:00
jl777
7377cedcf6 Test 2018-04-20 00:40:03 +03:00
jl777
65b4e8809d Test 2018-04-20 00:39:38 +03:00
jl777
d07308d221 Test 2018-04-19 20:59:03 +03:00
jl777
d9935f2b61 Test 2018-04-19 20:54:47 +03:00
jl777
b509fdae14 Test 2018-04-19 16:27:54 +03:00