maxTransactionSize включает вложения при расчете.
Если вы хотите взглянуть на себя, расчет выполняется в - WireTransaction.checkTransactionSize: https://github.com/corda/corda/blob/master/core/src/main/kotlin/net/corda/core/transactions/WireTransaction.kt
К сожалению, maxTransactionSize в настоящее время жестко запрограммирован на 10 МБ в секунду:
@property maxMessageSize This is currently ignored. However, it will be wired up in a future release.
Это интересная реализация, поскольку файл НЕ отправляется в начальной транзакции. Фактически, только хеш файла включен в саму транзакцию. Файлы отправляются запрашивающему узлу только при необходимости .
Тем не менее, проблема с большим значением maxTransactionSize заключается в том, что все узлы должны считывать весь файл в ОЗУ, что приведет к тому, что некоторые узлы не смогут проверять крупные транзакции, если у них недостаточно ОЗУ.
Проводится работа с файлами чанка и разрешением вложений произвольного размера!