Partial execution of an atomic transfer

Hi Team,

Got a chance to test atomic transfer and encounter a partial execution of an atomic transfer.

A private network is implemented according to the tutorial.

  1. Alice wallet and account created in net1/Primary/
  2. Bob wallet and account created in net1/Primary/
  3. Both have 100 Algos allocated.
  4. Alice issues an ASA say 10,000 aCoins.
  5. Simulating Bob buys aCoins from Alice with Bob’s Algos. An atomic transaction is made such that (a) Alice sends 100 aCoins to Bob and (b) Bob sends 10 Algos to Alice.
  6. Since Bob hasn’t opt-in yet. The combined transaction fails.
  7. It turns out Alice collects the Algos from Bob, but Bob does not receive any aCoins. This should not happen in atomic transfer.

See whether there’s a bug here or anything I have missed.

kc

Can you attach the transaction files?

If one transaction fails in an atomic transfer, all fail.
One reason of the behaviour you saw might be because the grp field was not set properly.

Thanks for prompt response. Guess it’s due to grouping. Let me do a quick test and see it again.

Hi @fabrice,

Thanks for your hint. Yes, I have skipped the group command. Last time it worked as I simply combined the two signed transactions (simple cat) and opt-in has been done before. As a result it works even I have omitted the group. Now I follow the flow (unsigned txs => combine => group => split => signed in two nodes => combined => rawsend) and it works fine now.

Thanks again.

kc