I'm putting a single transaction into a batch utility call with zero value. The batch extrinsic is shown below. Each time I submit the batch transaction, a huge value is submitted to an unknown account. The value is approximately 500 times the gas fee of the single transaction in the batch. The receiving account is not a contract. It is always the same account that receives the balance.
What is this balance transfer for?
I'm using substrate in dev mode on branch polkadot-v0.9.40
.
Batch Extrinsic:
{
"isSigned": true,
"method": {
"args": {
"calls": [
{
"args": {
"dest": {
"Id": "5Fmo4KdCK7jTLbaSbZ5RYXhYMZxzPCxEv7SVHwzTJ3WUbGJJ"
},
"value": "0",
"gas_limit": {
"refTime": "9,946,641,144",
"proofSize": "709,519"
},
"storage_deposit_limit": "1,448,339,956,379,238",
"data": "0x5b965eaba456d313ea79628d7a768d77e3e5089289c4ada9170a647895125b73c3c1eee80105797b3529e14b9ff72548ef16865d4d9e0f79f1e393decd2f435ff5f2cc0c133b73f06b9945447b664b3f12cf45d227a315623db8611b110b2955b2531c10340f9161523bb730b4a180f9ab0144f89ce5d0c09d0934a386fbd3b804a0a9675a0b71a30f2531b3ac73f88bd8d0a15f1e3ce7840d456947a9c3235ff5f40e720101"
},
"method": "call",
"section": "contracts"
}
]
},
"method": "batch",
"section": "utility"
},
"era": {
"MortalEra": {
"period": "128",
"phase": "117"
}
},
"nonce": "3",
"signature": "0x01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101",
"signer": {
"Id": "5DExyKNTzoweUafckatwBs4TDCyPH4C4zjXJhJpPzP8J7xqr"
},
"tip": "0"
}
The hex encoded extrinsic:
0xa508840020c72af36a93a3b1aed897e3dfdcab993fcf002fa9ee7b043e7a70d667504972012c638bf5e21d3606f1338404c7a2ab61be62c0edb41ecbeae8b088635c2e940efd18b9a5b047cd0c6327fc68a8e2a4c2ac3d6bc0f324122320bc92627d88d48696060c0000010008130600a40b451091ece31354f2adf9864b6ae986de5f5fae473728e6900cff899635260007be3aa26702a6762b00010f662e9dec41250599025b965eab75c7a5d2da2fa1b7efb29e5e583b24adaba69426cb1aba8585d5fadc0a26245a0105797b3529e14b9ff72548ef16865d4d9e0f79f1e393decd2f435ff5f2cc0c640ee5b7b21dc015ec54f9f5730d8e1685928b94a09509770f6b3e69fe23e14c20c72af36a93a3b1aed897e3dfdcab993fcf002fa9ee7b043e7a70d6675049721e2a38e3ab30530788982adb381bbe732a53154804d3a543781ac5493e1881080101130600a40b451091ece31354f2adf9864b6ae986de5f5fae473728e6900cff89963526000787c15f65022e762b00010f662e9dec41250599025b965eab75c7a5d2da2fa1b7efb29e5e583b24adaba69426cb1aba8585d5fadc0a26245a0105797b3529e14b9ff72548ef16865d4d9e0f79f1e393decd2f435ff5f2cc0c1034cc61607ce2881a2e96fdef4eb44021791677a19592222c24ebc87532fe4220c72af36a93a3b1aed897e3dfdcab993fcf002fa9ee7b043e7a70d66750497260a9b3d30f22c2b7902267a17868d46e2980976e3093a7cb888f5819cd79b1320102
dappUserCommit
#[ink(message, payable)]
/self.env().transfer()
), it uses thebalances.Transfer
?