For backward compatibility we resolve an unknown new enum entry with
UNDEFINED if UNDEFINED is available in the enum.
Adding a bonded role and adding a param is tested with that and works.
Other changes need to be tested before implemented as they might have
more consequences for consensus.
We want to test on mainnet with a test genesis tx. We create a new
network type which is BTC mainnet but has a different data directory to
make sure to not mix up the real wallet with the betatest
- Change onDaoStateBlockChainChanged to onChangeAfterBatchProcessing
to make it more clear that it is only called after parsing of
blockchain is completed.
- Change file name for DaoStateStore db file to DaoStateStore2
- Remove TODOs and outdated comments
- Increase delay for broadcasting
- Move dao state monitor classes to other package structure
- Add support for proposal payload monitor (WIP)
- Use generics and sub classes for common functionality
- Add hashChain to snapshot
- Use TreeMap instead of Map to have deterministic order
- Use eventCoordinator to make correct order of execution transparent
- Fix missing applying of nonBsqTxOutputMap at applySnapshot
Refactor dao state monitor domain.
Add support for requesting all hashed from genesis from a peer which is
in conflict (can help to find at which block the issue started).
Use addCoinsReceivedEventListener and addCoinsSentEventListener instead
of addTransactionConfidenceEventListener as
addTransactionConfidenceEventListener has much more overhead.
I could not reproduce anymore the balance issues I had when I used that
approach during development earlier.
At Capabilities I got an exception after going back from a new dev
branch to master and getting p2p network data from nodes still running
on the dev branch as that newly added capability was outside of the
existing scope.
I found another potential issue with DaoPhase.Phase and added a check
there as well.
Add parseBlockchainComplete check for onParseBlockChainComplete
before calling onParseBlockChainComplete to avoid duplicated calls of
onParseBlockChainComplete. Happened if there was only one seed node.