EVM: failsafe storage in /tmp/evm and not just /tmp
Context
The current behavior of the failsafe storage is:
- Copy
/evmto/tmp - Every code that writes or reads to the storage just takes the key-path, e.g.
/ticketerand the failsafe storage adds the prefix/tmp, therefore it becomes/tmp/ticketer. - At the end, it we promote the storage we move
/tmp/ticketerto/evm/ticketer.
This was actually a very bad idea, it's not clear whether you need to add the /evm prefix or not, because some hidden code does it for you. We've made the mistake multiple times. As we'll move the failsafe storage to /evm/world_state only, I cannot live anymore with the automatic /evm prefix, it just wouldn't work, I can explain this in details if required. Therefore I again a preliminary step, by redefining the current failsafe storage without modifying overall its behavior.
This merge requests must not change any path. It should purely modify the internal state of the kernel in the kernel_entry.
Manually testing the MR
Checklist
-
Document the interface of any function added or modified (see the coding guidelines) -
Document any change to the user interface, including configuration parameters (see node configuration) -
Provide automatic testing (see the testing guide). -
For new features and bug fixes, add an item in the appropriate changelog ( docs/protocols/alpha.rstfor the protocol and the environment,CHANGES.rstat the root of the repository for everything else). -
Select suitable reviewers using the Reviewersfield below. -
Select as Assigneethe next person who should take action on that MR