I just witnessed something amazing that I didn't think was possible before. I was under the assumption if that you try to submit consecutive transactions, the latest transaction with the highest nonce would override the older transactions, but that doesn't appear to be the case here. This guy sent 5 txs and all 5 of them were successful consecutively. How is this possible?
3 Answers
Transactions from each account are processed in order of the nonce. For a new account, a transaction with a nonce of 1
will not be processed until a transaction with a nonce of 0
has been processed from that account.
With that said, you can submit multiple transactions with incremental nonces at the exact same time. These transactions may get picked up in the same block, and thus the transactions will be executed at the same "time", however, the nonces will still be processed in order.
I believe the image you shared shows this exactly. I believe the user submitted 4 transactions at the exact same time, with five incrementing nonces (0
, 1
, 2
, 3
, 4
, for example). The miner who mined this block accepted all 5 of these transactions.
-
1Worth noting that there's no guarantee about the time for when each transaction is added to a block. Even with the same gas price, the duration between transaction 0 and transaction 4 might be a long time. The only guarantee is the order. Nov 11, 2020 at 20:37
-
1The user submitted these 5 transactions in a very competitive environment, very similar to a gas war for presales. The fact that he got all 5 trxs to be in the 1st five buys blows my mind, with a low gwei nonetheless. anyway, thanks for confirming that it's possible. now i just need to figure out how. Nov 12, 2020 at 2:00
It's possible it was done with miner collusion. There are certainly services out there where miners accept lots of money to order transactions in certain ways.
In general, a transaction uses one type of a transaction that is known as sending an order and in a mathematical it is induction, let P(k) be a propositional function which may or may not be true for every natural number integer k. It is based on the rule of deduction that P(K) is true for all positive integer k, Z+, if P (1) and ∀k(P (K) → P (K +1)) are true, then ∀P(k) is true.
At the same as sending an order, the nonce is satisfied with equal opportunity on N = Nmin(t1) + n - 1 where the transaction has N = n - 1 and N(min) at the time (t1) is 0; where n is the transaction has been satisfied, and the next transaction will be at t2, t2 = Nmin(t1) + n. so N contains (t) transactions, from t to t + n - 1, that the transmitter has sent. This uses a mechanism where a range of transactions can be sent within a side which keeps track of integer variables Nmin and Nmax.
I hope that makes sense.