Is there any restriction on the amount of coins to be sent each transaction? I send all the coins I mined during the last 10 months but when I checked the results, it showed failed with msg of ’ bad-txns-oversize’.
I don’t know the answer but I wanted to bump the thread so that we can perhaps find out.
I tried to reduce the total amount at each transaction and finally got it through. I don’t know any other cyptocurrency has solved this problem.
Not a limit on the amount in coins, but the size of the transaction in bytes: There is a network consensus rule that a transaction cannot exceed 100000 bytes. This number is hardcoded in
/** The maximum size of a transaction (network rule) */ static const unsigned int MAX_TX_SIZE = 100000;
The error you referenced is returned from
// Size limits BOOST_STATIC_ASSERT(MAX_BLOCK_SIZE > MAX_TX_SIZE); // sanity if (::GetSerializeSize(tx, SER_NETWORK, PROTOCOL_VERSION) > MAX_TX_SIZE) return state.DoS(100, error("CheckTransaction(): size limits failed"), REJECT_INVALID, "bad-txns-oversize");
References are from the v1.0.12 release codebase, to prevent line number changes from breaking the links.
Aside: The transaction size limit does not seem to be specified in the protocol (v2017.0-beta-2.7 (2017-07-10)). It does specify that the maximum block size is 2000000 bytes (§6.3, pp. 34–35), but otherwise states: “TODO: Other rules inherited from Bitcoin.” Indeed, Bitcoin has this same transaction size limit (although it can be overridden by miners).