Contract code attachments is stating that the complete jar is attached to each transaction, however that is not the case.

Description

After discussing this topic with client, we arrived at the following documentation link:
https://docs.corda.net/writing-a-cordapp.html?highlight=contract%20attach#modules
It specifies quite clearly that contract jar files get attached to each transaction:
This is because each time a contract is used in a transaction, the entire JAR containing the contract's definition is attached to the transaction. This is to ensure that the exact same contract and state definitions are used when verifying this transaction at a later date. Because of this, you will want to keep this module, and therefore the resulting JAR file, as small as possible to reduce the size of your transactions and keep your node performant.

However, after validating this on #corda-tech-questions, it was revealed to be a false statement.
It is quite important to update this completely false statement to reflect the reality.
If a contract jar was attached to each transaction, that would have huge implications on network traffic throughput.

https://r3dlg.slack.com/archives/C2EMVPJT0/p1581613980347100

Assignee

Unassigned

Reporter

Henrik Carlström

Labels

None

Fix versions

None

Ported to...

None

Engineering Teams

None

Priority

High
Configure