How can we access all transactions, including spent transactions, through bitcoind? We are running bitcoind version v0.8.2-332-gf19eda1-beta.

Our goal is to parse all transactions in a given block.

To begin we call "bitcoind getblock ", which gives us a list of associated txid's.

We then call "bitcoind getrawtransaction " on each of these.

Unfortunately, getrawtransaction occasionally fails with:

error: {"code":-5,"message":"No information available about transaction"}

It is failing because the given transaction is not unspent, and the database which getrawtransactions relies on does not need to track such transactions.

This is explained in detail here on github:
https://github.com/bitcoin/bitcoin/issues/2077

"there is never need for more information than unspent transactions outputs, so that is the only piece of data that is kept"

Are we forced to parse the blockchain database which bitcoind maintains on disk ourselves?
Is there some way to extract the information we want through bitcoind?

Shouldn't bitcoind provide an interface to all blockchain information?
It recently changed its underlying database and may do so again.
The problem begins by the fact that bitcoid doesn't keep that kind of information for spent txs, which however serves the typical QT user.

All you have to do to obtain a record for spent txs is:


run ONCE ONLY bitcoind with arguments: -reindex=1 -txindex=1, allow it quite some time to complete, add -debug -printtoconsole if you want to see the re-indexing progress in real-time
add: txindex=1 to bitcoin.conf