We have created an application with:
- 2 nodes + 1 Notary
- 2 web application (one for each node)
Corda Version is 3.2
The CordApp has:
- the first flow, receiving in input a list of objects, used to create a list of State. This list will be the output of the transaction
the list of object (approx 3000 objects) is split into lists with the size of 450 (because of ActiveMQ Artemis error for lists with bigger size [java.lang.IllegalArgumentException: Record is too large to store])
after the first flow, we launch another flow with a similar logic. In this case we have a list of StateAndRef (results of a query with RPCops) received as an input within the flow and used as output for the transaction.
- either in this case, we split the list (approx 3000 objects) into sub-lists of 450 elements.
Randomly we received Java Heap Space error and SslHandshakeCompletionEvent(javax.net.ssl.SSLException: handshake timed out). This seems a serious memory leak.
We can do the entire workflow only using params -Xmx10240m (10GB) on our local machine. Monitoring the resource, it seems that the heap grows exponentially especially during the transactions.
What could be the reason for this crash?
Is not possible to use Corda with lists with this size?