If smart contracts can have arrays, and they are persisted in the blockchain, what mechanisms are there to avoid one malicious developer from uploading a smart contract having an array initialized with gigabytes of data?
I am assuming that if I create a contract with a 2GB array, the blockchain size will increase by that amount. Imagine a team of attackers doing that 100 times, and the blockchain starts growing too much.