WIP: Resolve "Bug DGL Token Transfers"
Closes #662
This solution makes the hypothesis of evidence we've seen before when this happened during Corda 3.2: that certain states remain soft-locked after the transaction is over.
The solution has detection and correction function that solely used for Cordite Tokens (no other state class) and executes during token collection, in the event we find insufficient balance. It clears the respective locks and retries the collection.
Thoughts on the best way to test this? Very hard to reproduce bug.
We can try to setup the conditions that we think we are seeing:
- Issue some states, transfer them, noting the transaction ID
- Then manually set locks on given states and attempt to transfer. The transfer should work.
Edited by Fuzz