massalabs / massa

The Decentralized and Scaled Blockchain
https://massa.net
5.57k stars 713 forks source link

Allow to run 'scheduled' operations #2845

Open Trottoir opened 2 years ago

Trottoir commented 2 years ago

Problem

When we want to send several operations / transactions that needs to be executed in a specific order, we need to wait that the previous operations ID reached the final status.

Usecase Example

This leads us to a have deployments that last very long time, for instance :

damip commented 2 years ago

That would boil down to adding a new feature:

We need to qualify this requirement given the possible negative impacts, and fully validate that the edge cases are acceptable and intuitive to developers.

Another thing we need to do is to work around having to upload megabyte-sized websites, because the blockchain is simply not suitable for that. We should host our frameworks on the blockchain and avoid re-including them inside every website. We should also avoid storing heavy assets like images and videos on-chain. A pruned, minified website using an already-stored framework (massa-web3, and possibly CSS as well, like bootstrap.css), without images or videos, and zipped, has no good reason to be heavier than a couple kilobytes

To me, the best option here is to make websites smaller (as they are meant to be). That being said, having this feature (as well as an "override" field preventing a list of ops of the same address from being executed AFTER the op containing the list) will be useful for other purposes such as natively ordering keyboard commands sent in a videogame for example, or more cleanly cancelling pending operations

damip commented 2 years ago

@massalabs/core-team any comments ?

Trottoir commented 2 years ago

So what I understand is that it's a bit of work.

Totally agree with the fact that :

After reflexion, I think that we can do something diferent for usecases that remains big :

This would prevent to wait the end of each chunk writing in the Storage and enhance the User experience