-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove contract event topic limits #958
Comments
On second thought, these limits should not apply to diagnostic events (the current behavior is correct), since diagnostic events should be infallible (see #962 to validate that). |
I think it is necessary to more clearly spell out the event limits as network config parameters.
Without these limits, contracts may DOS the downstream system by submitting many large events (each up to the metadata size limit). They need to be specified in the CAP (stellar/stellar-protocol#1371) and the host need to adapt to them. |
The 4 limit was chosen arbitrarily since that's the limit of topics in the evm. We don't need to follow that though because the topics are not indexed in the protocol like in Ethereum. |
Based on recent discussions, downstream are more concerned with the meta data size to maintain than the number of topics. Thus we've decided to move the topics limit. |
We have a few limits in the contract event topics:
These were some arbitrary limits put there initially, but are no longer needed. They are also not enforced consistently (diagnostic event contains a
ContractEvent
but we don't check that limit). Contract events are hashed into the transaction result,both contract and diagnosticcontract events are included in the meta and is subject to limits and fees.The text was updated successfully, but these errors were encountered: