aboutsummaryrefslogtreecommitdiff
path: root/src/txdb.h
AgeCommit message (Collapse)Author
2017-03-31Make threshold for flushing more conservative.Alex Morcos
Always leave a reasonable buffer of 50MB for usage from newly connected block (once over 50%) and increase the high water mark buffer to 200MB.
2017-03-31Lower default memory footprint slightlyAlex Morcos
2017-03-31Make pcoinsTip memory calculations consistentAlex Morcos
Since we are more accurately measuring pcoinsTip peak usage at twice the current in dynamic usage, it makes sense to double the default (this will lead to the same effective usage and peak usage as previously). We should also double the buffer used to avoid flushing if above 90% but still sufficient space remaining.
2016-12-31Increment MIT Licence copyright header year on files modified in 2016isle2983
Edited via: $ contrib/devtools/copyright_header.py update .
2016-11-07Get rid of nType and nVersionPieter Wuille
Remove the nType and nVersion as parameters to all serialization methods and functions. There is only one place where it's read and has an impact (in CAddress), and even there it does not impact any of the recursively invoked serializers. Instead, the few places that need nType or nVersion are changed to read it directly from the stream object, through GetType() and GetVersion() methods which are added to all stream classes.
2016-09-01C++11: s/boost::scoped_ptr/std::unique_ptr/Jorge Timón
2016-07-06Bump `-dbcache` default to 300MiBWladimir J. van der Laan
Also cap the allocation for the leveldb-specific cache for the UTXO set to 8MiB. This avoids that the extra cache memory goes to the much less effective leveldb cache instead of our application-level cache.
2016-04-15Break circular dependency main ↔ txdbWladimir J. van der Laan
Break the circular dependency between main and txdb by: - Moving `CBlockFileInfo` from `main.h` to `chain.h`. I think this makes sense, as the other block-file stuff is there too. - Moving `CDiskTxPos` from `main.h` to `txdb.h`. This type seems specific to txdb. - Pass a functor `insertBlockIndex` to `LoadBlockIndexGuts`. This leaves it up to the caller how to insert block indices.
2016-04-15txdb: Add Cursor() method to CCoinsView to iterate over UTXO setWladimir J. van der Laan
Add a method Cursor() to CCoinsView that returns a cursor which can be used to iterate over the whole UTXO set. - rpc: Change gettxoutsetinfo to use new Cursor method - txdb: Remove GetStats method - Now that GetStats is implemented in terms of Cursor, remove it.
2015-12-13Bump copyright headers to 2015MarcoFalke
2015-10-22leveldbwrapper file rename to dbwrapper.*Jeff Garzik
2015-10-22leveldbwrapper symbol rename: Remove "Level" from class, etc. namesJeff Garzik
2015-05-11Cache tweak and logging improvementsPieter Wuille
2015-03-29Fix clang compile warnings intriduced in #5681Michael Ford
2015-03-24Includes: Do not include main.h from any other headerJorge Timón
2014-12-19Added "Core" to copyright headerssandakersmann
Github-Pull: #5494 Rebased-From: 15de949bb9277e442302bdd8dee299a8d6deee60
2014-11-25Do all block index writes in a batchPieter Wuille
2014-11-21Convert remaining comments in /src to doxygen formatMichael Ford
- Update comments in checkpoints to be doxygen compatible - Update comments in checkqueue to be doxygen compatible - Update coins to be doxygen compatible - Fix comment typo in crypter.h - Update licenses/copyright dates Closes #5325 #5184 #5183 #5182
2014-11-03Fix all header definesPavel Janík
2014-09-23Get rid of CCoinsView's SetCoins and SetBestBlock.Pieter Wuille
All direct modifications are now done through ModifyCoins, and BatchWrite is used for pushing batches of queued modifications up, so we don't need the low-level SetCoins and SetBestBlock anymore in the top-level CCoinsView class.
2014-08-26Make appropriate getter-routines "const" in CCoinsView.Daniel Kraft
Mark the "Get"/"Have" routines in CCoinsView and subclasses as "const".
2014-08-24Allow BatchWrite to destroy its input, reducing copyingPieter Wuille
2014-07-01typedef std::map<uint256, CCoins> to CCoinsMapWladimir J. van der Laan
This makes it possible to switch to a more efficient map type without changing all occurences manually. Merges half of #4413.
2014-05-09Move {Get,Set}Compact from bignum to uint256Pieter Wuille
2014-02-18Change new constants in txdb.h to int64_tWladimir J. van der Laan
A shift overflow was happening when using these to check against in init.cpp. Fixes #3702.
2014-02-17add constants for shared (GUI/core) -dbcache settingsPhilip Kaufmann
- adds nDefaultDbCache, nMaxDbCache and nMinDbCache in txdb.h
2013-11-10Make CCoinsView use block hashes instead of indicesPieter Wuille
2013-11-10Cleanup code using forward declarations.Brandon Dahler
Use misc methods of avoiding unnecesary header includes. Replace int typedefs with int##_t from stdint.h. Replace PRI64[xdu] with PRI[xdu]64 from inttypes.h. Normalize QT_VERSION ifs where possible. Resolve some indirect dependencies as direct ones. Remove extern declarations from .cpp files.
2013-11-08Rename leveldb.{h,cpp} to leveldbwrapper.{h,cpp}.Brandon Dahler
2013-11-01Do not use the redundant BestInvalidWork record in the block database.Pieter Wuille
As block index entries have a flag for marking invalid blocks, the 'best invalid work' information can be derived from there. In addition, remove the global from main.h
2013-10-20Bump Year Number to 2013super3
2013-02-22Merge pull request #2221 from sipa/perfoGavin Andresen
Various performance tweaks to CCoinsView
2013-01-28Rename database directoriesPieter Wuille
2013-01-26Various performance tweaks to CCoinsViewPieter Wuille
* Pass txid's to CCoinsView functions by reference instead of by value * Add a method to swap CCoins, and use it in some places to avoid a allocating copy + destruct. * Optimize CCoinsViewCache::FetchCoins to do only a single search through the backing map.
2013-01-18Add optional transaction index to databasesPieter Wuille
By specifying -txindex when initializing the database, a txid-to-diskpos index is maintained in the blktree database. This database is used to help answering getrawtransaction() RPC queries, when enabled. Changing the -txindex value requires a -reindex; the client will abort at startup if the database and the specified -txindex mismatch.
2012-11-09Add -reindex, to perform in-place reindexing of block chain filesPieter Wuille
Flushes the blktree/ and coins/ databases, and reindexes the block chain files, as if their contents was loaded via -loadblock. Based on earlier work by Jeff Garzik.
2012-11-04Cache size optimizationsPieter Wuille
2012-10-20Remove BDB block database supportPieter Wuille
2012-10-20LevelDB block and coin databasesPieter Wuille
Split off CBlockTreeDB and CCoinsViewDB into txdb-*.{cpp,h} files, implemented by either LevelDB or BDB. Based on code from earlier commits by Mike Hearn in his leveldb branch.