Bitcoin Forum

Other => Beginners & Help => Topic started by: John3D on November 17, 2016, 08:08:29 PM



Title: Where are transactions stored before confirmed
Post by: John3D on November 17, 2016, 08:08:29 PM
I was reading about the bitcoin process online, and I found out that transactions only get inside the blockchain after they get confirmations, they are then attached to a block and start they life inside the chain.

But where are they stored before confirmations? there's a central point or there's a "second chain" inside the first one, without confirmations? How miners reach such transactions if they aren't distributed yet.

ps.: tried search but no luck :/


Title: Re: Where are transactions stored before confirmed
Post by: shorena on November 17, 2016, 08:13:33 PM
I was reading about the bitcoin process online, and I found out that transactions only get inside the blockchain after they get confirmations, they are then attached to a block and start they life inside the chain.

But where are they stored before confirmations? there's a central point or there's a "second chain" inside the first one, without confirmations? How miners reach such transactions if they aren't distributed yet.

ps.: tried search but no luck :/

Unconfirmed transactions are stored in the memory of full nodes. If the full node is turned off (or rebooted) they are lost. Miners usually have at least one full node running in order to gather unconfirmed transactions and send blocks once founds.

This is a graph of the memory usage on my node, as you can see I restarted it a few days ago when I updated to a new version.

https://i.imgur.com/6wx07Dt.png


Title: Re: Where are transactions stored before confirmed
Post by: John3D on November 17, 2016, 08:17:48 PM
Unconfirmed transactions are stored in the memory of full nodes. If the full node is turned off (or rebooted) they are lost. Miners usually have at least one full node running in order to gather unconfirmed transactions and send blocks once founds.

So the transactions are already distributed between nodes? If your node goes down , the "node next door" already have that transaction? or the transactions are stored only in one node and the mining nodes need to go after transactions on other nodes when they succeed at mining?


Title: Re: Where are transactions stored before confirmed
Post by: achow101 on November 17, 2016, 08:24:50 PM
Unconfirmed transactions are stored in the memory of full nodes. If the full node is turned off (or rebooted) they are lost. Miners usually have at least one full node running in order to gather unconfirmed transactions and send blocks once founds.

So the transactions are already distributed between nodes? If your node goes down , the "node next door" already have that transaction? or the transactions are stored only in one node and the mining nodes need to go after transactions on other nodes when they succeed at mining?
All nodes store the transaction if they find it acceptable for relaying. Thus all nodes will have the transaction. Mining nodes pull from their own memory pool of transactions when they build blocks.


Title: Re: Where are transactions stored before confirmed
Post by: DannyHamilton on November 17, 2016, 08:50:48 PM
If a transaction takes a very long time to confirm, eventually nodes will choose to drop the transaction out of their memory to make room for newer transactions.  If all the nodes have forgotten a transaction, then it won't ever get confirmed (unless someone, such as the original sender or receiver, re-braodcasts the transaction to remind all the nodes about it and get it back into their memory).


Title: Re: Where are transactions stored before confirmed
Post by: John3D on November 17, 2016, 09:21:33 PM
Nice, everything is much clearer now, there's some "default" source for such information? there's some documentation about the internals of the bitcoind?


Title: Re: Where are transactions stored before confirmed
Post by: achow101 on November 17, 2016, 10:03:35 PM
Nice, everything is much clearer now, there's some "default" source for such information? there's some documentation about the internals of the bitcoind?
Besides the source code itself, bitcoin.org has developer documentation that goes fairly in depth into the technical aspects of Bitcoin. However, I don't think there really is anything specific for bitcoind. You can poke around in the documentation in the repository for Bitcoin Core though.


Title: Re: Where are transactions stored before confirmed
Post by: odolvlobo on November 18, 2016, 07:33:49 PM
Nice, everything is much clearer now, there's some "default" source for such information? there's some documentation about the internals of the bitcoind?

https://en.bitcoin.it
https://bitcoin.org/en/developer-guide
Mastering Bitcoin by Andreas M. Antonopoulos: http://chimera.labs.oreilly.com/books/1234000001802/index.html

BTW, When people refer to the "mempool", they are referring to the collection of unconfirmed transactions held by a full node.


Title: Re: Where are transactions stored before confirmed
Post by: mbpinewatch on November 19, 2016, 03:53:24 AM
in you wallet I guess as there wont show on blockchain until one confirm


Title: Re: Where are transactions stored before confirmed
Post by: zend7 on November 19, 2016, 10:49:06 AM
in you wallet I guess as there wont show on blockchain until one confirm

Usually in almost every wallet that I know the transaction is showed as unconfirmed in the moment the wallet first receives it. In Electrum for example if you right click on a transaction which reads as unconfirmed it will send you to a web page (blockchain or block trail) which are 2 of the most famous block explorers and you can get an approximate when your transaction will be confirmed. If it says high priority it will be confirmed sooner rather than later. If it's medium priority or the fee is less than recommended than it will confirm later rather than sooner.


Title: Re: Where are transactions stored before confirmed
Post by: sportis on November 22, 2016, 09:18:50 AM
in you wallet I guess as there wont show on blockchain until one confirm

Using the blockchain web wallet when I receive a payment after 1st confirmation I can see the progress of pending confirmations from 1 to 3. When I send an amount I can't see anything. I must use a blockchain explorer.


Title: Re: Where are transactions stored before confirmed
Post by: beerlover on November 24, 2016, 08:22:16 PM
Unconfirmed transactions are stored in the memory of full nodes. If the full node is turned off (or rebooted) they are lost. Miners usually have at least one full node running in order to gather unconfirmed transactions and send blocks once founds.

So the transactions are already distributed between nodes? If your node goes down , the "node next door" already have that transaction? or the transactions are stored only in one node and the mining nodes need to go after transactions on other nodes when they succeed at mining?
Yes, the unconfirmed transactions are distributed into node and that is the reason that there is no worry to get lost the bitcoins as if one node turn down the other will confirm the transaction and can transact bitcoin without any worry.


Title: Re: Where are transactions stored before confirmed
Post by: xIIImaL on November 25, 2016, 04:04:31 AM
in you wallet I guess as there wont show on blockchain until one confirm

Using the blockchain web wallet when I receive a payment after 1st confirmation I can see the progress of pending confirmations from 1 to 3. When I send an amount I can't see anything. I must use a blockchain explorer.


These confirmations use to move via mining blocks as your transacting bitcoins through the nodes. This is why it is wait to get the multiple confirmations. If you wish to transfer soon increase your fee amount.