In an experiment, we've created a couple of nodes. One node (say IssueNode) has issued native asset EUR. In one transaction, 1 million EUR has been transferred to wallet on a different node (say WalletNode1). From WalletNode1, 14 EUR has been transferred to address in WalletNode2 using a the command sequence in chapter 6 of getting started, so metadata can be included. At the time we did those experiments, the output of getassetbalances on WalletNode1 and WalletNode2 gave the amounts we expected.
However, for some reason, on WalletNode1, it looks like the last transaction is not picked up anymore. When I issue a getassetbalances, the output shows there is 1 million EUR, instead of the 999986 we expect. Also, the last transaction doesn't show up anymore in listtransactions. We have documented the transaction ID, so we could test whether it was completely lost with getrawtransaction, but this doesn't seem to be the case. The transaction is there, contains the correct outputs (one going to WalletNode2 address and one nulldata with the metadata) and has over 20k confirmations.
In order to try to rectify the situation, we shut down the WalletNode1, removed all files in ~/.multichain/chain1, except for multichain.conf and wallet.dat and reconnected it to the network. After syncing, the situation is still the same.
Is there something we could have done that breaks multichain in this way or have we encountered a bug?
Maybe unrelated, but just to be complete: we notice in the output of listtransactions, the transaction created by preparelockunspent is included twice.