Jul 19 2018
- last edited on
May 26 2021
From both the ABW UI, as well as from the dbo.ContractActionParameter table, it is clear that ABW enforces a hard 255 character limit on string parameters passed to Solidity functions.
My understanding is that on private chains, storage isn't as important as public chains, and AFAIK even on the public Eth chain the only consideration for large transactions is the prohibitive Gas price and no sign of a 255 char limit
I can't see the need for a lowest common denominator, since the transaction size caps on Hyperledger and Corda seems considerably higher, and seemingly can be negotiated and agreed upon by the consortium.
ABW doesn't seem to expose [Solidity bytes or byteX](https://docs.microsoft.com/en-us/azure/blockchain-workbench/blockchain-workbench-configuration-overv...) types, so binary storage of arbitrary length strings aren't supported either.
Using the messaging API to submit transactions with parameters > 255 fails (contract is recorded, but no contract actions are recorded, and provisioning status stays at 1).
Altering the SQL table to store NVARCHAR > 255 doesn't help matters either.
Jul 20 2018 02:18 PM
Thanks for the feedback. We'll be updating the limit to something much higher. Most likely in August update.