Kid101
Kid101

Reputation: 1470

Corda Attachment Flow

PFB Following questions:

1) In my local, I don't have a networkMap so the maxTransactionSize and maxMessageSize needs to be made part of the extraConfig in deployNodes for each node?

2) Let's say I have an Excel of 100MB which I Zip and then upload to Node using rpc.uploadAttachment the SecureHash received will now be added to a Tx. After Successful Completion of the TX will both parties have the attachment? or The Receiver will get the file only when he opens the attachment?

3) If it's when the receiver opens the attachment, it's requested from the sender, the file travels over the network and reaches to the receiver and is stored in the H2 DB for future use. If attachment is required later, the blob can directly be provided from the DB?

4) Now where, how does attachmentContentCacheSizeMegaBytes come into picture? Since we are already storing it in the H2 DB where is it used? as a blob limit to the node_attachment table?

5) Also, is the file ever stored in the file system ? at the time of upload to the node? does it get stored directly to the H2 DB?

Upvotes: 1

Views: 245

Answers (1)

Joel
Joel

Reputation: 23140

  1. The maxTransactionSize and maxMessageSize is set by the network operator, and individual nodes cannot modify it. This is for compatibility reasons. All the nodes on the network need to be able to handle the largest-possible transaction to ensure they can resolve any transactions they receive

  2. The receiver node downloads the attachment immediately, and not when it first opens the attachment

  3. N/A

  4. The attachmentContentCacheSizeMegaBytes node configuration option is optional and specifies how much memory should be used to cache attachment contents in memory. It defaults to 10MB

  5. The attachment is stored in the node's database as a blob when it is first uploaded

Upvotes: 1

Related Questions