But there's still one important thing not finished: the asset vote map on the block index is no longer valid because we cannot initialize all the asset maps on startup like before.
I think a good way to solve that is to store asset maps in the database independently, based on their own hash (the hash of the serialized map for example). In the block index database we would store the asset map hash. We could even make all the block indexes have a pointer to the same asset map object when they have the same asset map. It should work well because the asset map will not change often (and if it does it will probably alternate between few distinct maps).
I merged the 4.0 changes.
But there's still one important thing not finished: the asset vote map on the block index is no longer valid because we cannot initialize all the asset maps on startup like before.
I think a good way to solve that is to store asset maps in the database independently, based on their own hash (the hash of the serialized map for example). In the block index database we would store the asset map hash. We could even make all the block indexes have a pointer to the same asset map object when they have the same asset map. It should work well because the asset map will not change often (and if it does it will probably alternate between few distinct maps).
I finished the asset vote map adaptation to the new block map. (I forgot to comment when I pushed that)
There are still some issues on Nu 2.1 so we should probably wait for it to be stable before we test this PR.