0

Here are my questions:

  1. Because miners can choose which transaction will be added in block by themselves, so what if two miners broadcast two blocks almost at the same time, one is bigger(has more transactions), another is smaller. Which of the two blocks will be accepted?

  2. When miner creating blocks, transactions in that block affect the result? For example, if miner A is creating a block, but now there is a new transaction is broadcasted on network, will A stop current work then add new transaction as one of the input then recreate block? If above is the case, then I think because transactions will happen at anytime, so some miner will creating block, before the block is created, there is a new transaction on network, so they abort current work, take the new transaction as one of the input, start create block again, then there is another new transaction on network, miner stop current work ....... so they will never finish...

  3. Say if at current time there exist spilt of block chain, we call them A and B. A is "longer" then B, as the result B will be eventually forgotten, but what happened about the transactions in blocks on B? The block which is different between A will be unpacked, reconfirm the transaction then create new block, add new block on A?

  4. The new block will be create approximately 10 min, but I saw on blockchain.info enter image description here why the time between these two blocks are just 2 min?

closed as too broad by dchapes, cdecker, Steven Roose, Stéphane Gimenez, Murch Nov 14 '13 at 9:48

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 1
    It is best to ask separate questions as separate questions, not merge them into one. Merging makes it harder for other people with the same question to find it when it is answered. – Nate Eldredge Nov 12 '13 at 16:36
  • This post contains multiple questions. – Stéphane Gimenez Nov 13 '13 at 13:25
0

The cost to abort current work is essentially zero. If you haven't found a block yet, you haven't accomplished anything you care about. So you can restart to include new transactions at near zero cost. You don't have to restart if you don't want to. Miners can either try to get new transactions into blocks as soon as possible or not bother.

In the future, people will probably work harder to get new transactions into blocks as soon as possible. Right now, the 25 BTC block reward dwarfs any transaction fees. But in the future, getting as many transaction fees as possible may be worth extra effort.

If two blocks are broadcast at about the same time, there's no good way to know which will ultimately be accepted. You have to wait to see which one gets confirmations. Everyone wants to mine on the longest chain (to increase the chances they get to keep their block reward), so as soon as one gets even a slight advantage, its advantage should grow.

Not the answer you're looking for? Browse other questions tagged or ask your own question.