Commit Graph

335 Commits (c40ab9b5be9b0dec72fa5adbcc45a24ef56ef7fa)

Author SHA1 Message Date
Myagui 12427dd8d3 Fix minor typo in "need resize" message.
8 years ago
redfish e1c7af35d4 cmake: transitive deps and remove deprecated LINK_*
8 years ago
moneromooo-monero 6cf8ca2a7f
core: faster find_blockchain_supplement
8 years ago
moneromooo-monero 1cdba42a77
db_lmdb: fix reorg with "halfway rct" coinbase outputs
8 years ago
moneromooo-monero c3b3260ae5
New "Halfway RingCT" outputs for coinbase transactions
8 years ago
moneromooo-monero 59a66e209a
move the rct commitments to the output_amounts database
8 years ago
moneromooo-monero dc4aad7eb5
add rct to the protocol
8 years ago
moneromooo-monero 211d1db762
db_lmdb: update reset for recent db changes
8 years ago
moneromooo-monero eb56d0f994
blockchain_db: add functions for adding/removing/getting rct commitments
8 years ago
moneromooo-monero f88029e72a
db_lmdb: do not try to modify the database in read only mode
8 years ago
Riccardo Spagni 0faf572db8
Merge pull request #948
8 years ago
moneromooo-monero 240864f529
db_lmdb: errors dropping hf starting height db on reset are not fatal
8 years ago
moneromooo-monero 1593553e03
new unlocked parameter to output_histogram
8 years ago
moneromooo-monero 121165f222
db_lmdb: add some missing api call checks
8 years ago
moneromooo-monero d7b681cd65
remove hf_starting_height db
8 years ago
Riccardo Spagni 30dce45643 Merge branch 'performance' of https://github.com/LMDB/bitmonero
8 years ago
moneromooo-monero 513a658c87
add a --max-concurrency flag
8 years ago
Howard Chu 2b0fa05f0d Another take on migration
8 years ago
Howard Chu c14f9efd52 Migration
8 years ago
Howard Chu d7ea7d9a23 Merge branch 'performance' into master
8 years ago
Howard Chu 372acee723 Cleanup
8 years ago
Howard Chu 591e421875 Cleanup and clarify
8 years ago
Howard Chu b2f1c58805 Use cursors in some remove functions
8 years ago
Howard Chu 118dd69dd5 Use DUPFIXED for block_info and output_txs
8 years ago
Howard Chu 6225716f3c More outputs consolidation
8 years ago
Howard Chu 7c5abdc3a3 Use DUPFIXED for output_keys
8 years ago
Howard Chu 8e9d8e3364 Use DUPFIXED for tx_indices
8 years ago
Howard Chu a12f9365f8 Use DUPFIXED for block_heights
8 years ago
Howard Chu 38c2277d6f Use DUPFIXED for spent_keys
8 years ago
warptangent bf769c32ba Add back changes from revert.
8 years ago
warptangent 46b991b362 Use MDB_APPEND mode with two tx subdbs
8 years ago
warptangent 9aadedb1d0 Schema update: tx_indices - consolidate the tx subdbs from 5 to 3
8 years ago
warptangent a2f518aa01 Schema update: tx_indices - yet less indirection
8 years ago
warptangent 8d12a8df2c Schema update: tx_indices - improve further with less indirection
8 years ago
warptangent 7c013f66e9 Add batch warning for further review
8 years ago
warptangent ae0854a431 Schema update: tx_indices
8 years ago
Howard Chu 8d252a4214 Consolidated block info
8 years ago
warptangent 132c666f67 Update schema for "tx_outputs" to use array containing amount output indices
8 years ago
Howard Chu efbdde2c66 Detect map resize failures
8 years ago
moneromooo-monero 600a3cf0c0
New RPC and daemon command to get output histogram
8 years ago
Riccardo Spagni 0d30b65785 Merge pull request #749
8 years ago
Riccardo Spagni 01e0a69c17 Revert "Merge pull request #749"
8 years ago
Thomas Winget bfd4a28c41
Update BlockchainDB documentation
8 years ago
moneromooo-monero f7301c3563
Revert "Print stack trace upon exceptions"
8 years ago
Riccardo Spagni 37fbb7a8b7
Merge pull request #738
8 years ago
moneromooo-monero 79117d4275
db_lmdb: include the error codes from lmdb api in error logs
8 years ago
moneromooo-monero fff238ec94
Print stack trace upon exceptions
8 years ago
Howard Chu db1b2db4d5 Reduce log noise
8 years ago
Howard Chu a74348e115 Add destructor for readtxns
8 years ago
Howard Chu 6b0a903177 Small cleanups
8 years ago
Howard Chu 01c1512f22 More for 92dd4ec6d6
8 years ago
Riccardo Spagni 240a50f3fb
Merge pull request #723
8 years ago
Howard Chu 92dd4ec6d6 Hack for read/write txn mixup
8 years ago
Howard Chu 2abdb2c9fd avoid some val copies
8 years ago
Riccardo Spagni dfd0e9c97d
Merge pull request #712
8 years ago
Howard Chu 66c2fc7b70 Need to link boost::chrono in more places now
8 years ago
Howard Chu b937a2c915 Use boost::thread instead of std::thread
8 years ago
Howard Chu 8941ce0398 More for bdec7cb
8 years ago
Riccardo Spagni 32dc08d19a
Merge pull request #700
8 years ago
Riccardo Spagni c3af15702f
Merge pull request #698
8 years ago
warptangent bdec7cbfb3
BlockchainLMDB: Use DB error helper consistently
8 years ago
warptangent c5932eb5ea BlockchainLMDB: Add DB error to exception
8 years ago
Howard Chu ee7a8b87f9 Get rid of lmdb_cur
8 years ago
Howard Chu f5affbef26 More for df239428c0
8 years ago
warptangent 2c823c1589
Make partial revert consistent
8 years ago
warptangent df239428c0
Revert part of 7db89ed2ee
8 years ago
warptangent c9c4060dc6
BlockchainLMDB: Add height and db error to exception
8 years ago
Riccardo Spagni d60bf4ee36
Merge pull request #686
8 years ago
Howard Chu 7db89ed2ee ARMv7: fix unaligned accesses
8 years ago
Howard Chu 8cc7a36f0b read txn/cursor stuff
8 years ago
moneromooo-monero 0eb4d054f6
db_bdb: add missing include for std::condition_variable
8 years ago
warptangent 57e75fa33f
BlockchainBDB: Check if hard fork subdbs need reset
8 years ago
warptangent 47f6cf8bea
BlockchainBDB: Support blockchain_import --drop-hard-fork command
8 years ago
Howard Chu 02abe3590d Use MDB_PREV_MULTIPLE
8 years ago
Howard Chu 7a4755d3a4 Fixup after lmdb master resync
8 years ago
Howard Chu 3b13a7473e Shutup about VERSION 0
8 years ago
Howard Chu 1537477c9f Use cursor in get_output_key
8 years ago
Howard Chu f2faf8cdd9 Use MDB_APPEND mode where possible
8 years ago
Howard Chu 090b548c3b Use cursors in write txns
8 years ago
Howard Chu ed08d2152e Keep a running blocksize count
8 years ago
Howard Chu 0fc93345ea Win32 import batchsize tweaks
8 years ago
Riccardo Spagni 63e2d4195b
Merge pull request #657
8 years ago
warptangent 1995923559
BlockchainLMDB: Deal with DB exceptions at block level with particularity
8 years ago
warptangent c16cc204d3
BlockchainLMDB: Add sanity check for inconsistent state
8 years ago
warptangent 9118d0a44c
BlockchainLMDB: Call destructor on allocated txn if setup fails
8 years ago
warptangent f5581c3536
BlockchainLMDB: Replace remaining txn pointer NULLs with nullptr
8 years ago
moneromooo-monero 8649b9f1ef
blockchain_db: pass hard fork object as a simple pointer
8 years ago
warptangent e02577f594
Move HardFork DB update to BlockchainDB::add_block()
8 years ago
warptangent 3800875406
Make HardFork object available to BlockchainDB and derived DB implementations
8 years ago
warptangent fd46c96dce
BlockchainDB/LMDB: Refactor block-scope DB txn handling for add block
8 years ago
warptangent f3a6000094
BlockchainDB/LMDB/BDB: Extract DB txn functions for block add/remove
8 years ago
warptangent f47d5b0fe3
BlockchainLMDB: Allow two HardFork functions to update DB during block add
8 years ago
warptangent 15ee0bef4b
BlockchainLMDB: extract txn macros used during block add/remove
8 years ago
warptangent f7e337e625
fake_core: Check if hard fork subdbs need reset at start
8 years ago
warptangent c657e772c4
blockchain_import: Add --drop-hard-fork command
8 years ago
moneromooo-monero 3a0f4d8a57
berkeleydb: fix delete/free mismatch
8 years ago
warptangent b8cc6d46bd
BlockchainBDB: Continue when tx has no outputs
8 years ago
warptangent b8707466e2
BlockchainBDB: When removing, find amount output index fast by starting at end
8 years ago
warptangent 1a5c3fa729
BlockchainBDB: Remove tx outputs in reverse order
8 years ago
me0wmix 28f95eb001 OpenBSD support for Monero.
8 years ago
warptangent 24b66243c2
db_lmdb: Continue when tx has no outputs
8 years ago
Howard Chu 30f92f5630 Fix hf when import with verify off
8 years ago
Riccardo Spagni de03926850
updated copyright year
9 years ago
Riccardo Spagni 810a11267c
fixed copyrights with bad year references
9 years ago
Riccardo Spagni fd36eea6dd
Merge pull request #572
9 years ago
hyc b39aae7aa5 Tweak 45800a25e9
9 years ago
moneromooo-monero 78b65cf7e8
db_lmdb: safety close db at exit
9 years ago
moneromooo-monero 45800a25e9
db_lmdb: fix a strdup/delete[] mistmatch
9 years ago
warptangent ee9d71e9f9
BlockchainDB: skip fixup check if read-only database
9 years ago
Riccardo Spagni 95ceb715dc
Merge pull request #565
9 years ago
moneromooo-monero 5eef64578b
db: throw when given a non txout_to_key output to add
9 years ago
warptangent d4c2fae2fb
BlockchainDB: Remove txs in reverse order
9 years ago
warptangent ffcf6bdb95
BlockchainLMDB: When removing, find amount output index fast by starting at end
9 years ago
warptangent f11def012f
BlockchainLMDB: Remove tx outputs in reverse order
9 years ago
moneromooo-monero 3f2970fadb
Add missing semicolons after log statements
9 years ago
warptangent 725acc7f17
Replace tabs with two spaces for consistency with rest of codebase
9 years ago
moneromooo-monero d462c62343
db_lmdb: always use a batch tx if possible
9 years ago
Riccardo Spagni 0eb3b6645c
Merge pull request #532
9 years ago
Riccardo Spagni bdf738bc7f
Merge pull request #531
9 years ago
warptangent 79ff6a5a56
Add LMDB error string to database transaction exception message
9 years ago
moneromooo-monero 8af913a3d1
db_lmdb: implement BlockchainLMDB::reset
9 years ago
moneromooo-monero 4833f4f96f
db_bdb: implement BlockchainBDB::reset
9 years ago
moneromooo-monero 1494557633
db_lmdb: create all needed directories, not just the leaf one
9 years ago
moneromooo-monero 015b68a2be
db_bdb: create all needed directories, not just the leaf one
9 years ago
Howard Chu d98d5e79cb Fix data refs in read-only txns
9 years ago
Riccardo Spagni 8a5ba475cb
Merge pull request #524
9 years ago
Riccardo Spagni 1fc1bfb677
Merge pull request #523
9 years ago
moneromooo-monero 1c8262c527
db_bdb: move log_set_config call before open
9 years ago
moneromooo-monero 8620b31019
db_bdb: support for libdb without DB_FORCESYNC
9 years ago
moneromooo-monero a98e976f9e
blockchain_db: fixup missing key images in early DB version
9 years ago
moneromooo-monero a3c5ca077c
blockchain_db: make the indexing base a BlockchainDB virtual function
9 years ago
moneromooo-monero 3bf35e14e3
db_bdb: read 32 bit heights from keys
9 years ago
moneromooo-monero 1b40952754
Revert "db_bdb: record numbers for recno databases start at 1"
9 years ago
moneromooo-monero 4f873bcbaa
Remove some old/obsolete/unused code
9 years ago
moneromooo-monero ecf0b83406
db_bdb: add versioning, to detect incompatible format changes
9 years ago
moneromooo-monero f7e99047e4
db_lmdb: add versioning, to detect incompatible format changes
9 years ago
moneromooo-monero 5f397e4412
Add functions to iterate through blocks, txes, outputs, key images
9 years ago
moneromooo-monero 0a5a5e8597
db_bdb: record numbers for recno databases start at 1
9 years ago
moneromooo-monero 50dfdc057a
db_bdb: DB_KEYEMPTY is also not found for non-top recon fields
9 years ago
moneromooo-monero 572780e335
blockchain_db: use the DNE exceptions where appropriate
9 years ago
moneromooo-monero 791d8cb038
db_bdb: fix hard fork keys
9 years ago
moneromooo-monero 5b11a89a76
hardfork: most state now saved to the DB
9 years ago
moneromooo-monero e63b854967
blockchain_db: match tx addition semantics to original code
9 years ago
Riccardo Spagni b210b304a3
Merge pull request #364
9 years ago
Riccardo Spagni 09cada45c4
Merge pull request #363
9 years ago
moneromooo-monero 533acc30ed
blockchain_db: store key images for tx without outputs too
9 years ago
moneromooo-monero 275894cdef
blockchain: always select random outs using triangular distribution
9 years ago
warptangent 525bf5811f
Fix estimation of batch storage size when no blocks exist
9 years ago
warptangent 71793ef43f Add batch support to BlockchainLMDB::get_output_key
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo 94ea3e8ed2 Removed on_idle() calls to Blockchain::store_blockchain() for lmdb.
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo 2e293a563e Fixed binary size issue due to embedded checkpoint data.
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo e5d2680094 ** CHANGES ARE EXPERIMENTAL (FOR TESTING ONLY)
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo 3381fd69a8 Update db_bdb.cpp
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo dbbc457836 Update db_bdb.cpp
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo 4b7ad2b0a7 Update db_bdb.cpp
9 years ago
NoodleDoodleNoodleDoodleNoodleDoodleNoo da1d3c01de
Experimental BDB workaround optimizations
9 years ago
warptangent fd73d9cc3a
Check and resize if needed at batch transaction start
9 years ago
warptangent 6e170c8b78
Optionally allow DB to know expected number of blocks at batch transaction start
9 years ago
Riccardo Spagni 6aee052001
Merge pull request #297
9 years ago
warptangent 5680604437
Replace hardcoded value with existing constant of same value
9 years ago
warptangent f37ee2f304
Update database resize behavior
9 years ago
warptangent f85cd8e10b
Include database error in more error messages
9 years ago
moneromooo-monero 8069b3ba7f
blockchain_db: add a few const
9 years ago
Riccardo Spagni 634e367ff5
Merge pull request #289
9 years ago
Thomas Winget 01076ae700
Check if LMDB needs resize every 1000 blocks
9 years ago
Thomas Winget b0d849e0a4
null out batch txn pointer as needed (BlockchainLMDB)
9 years ago
Thomas Winget 7b7ef73c15
LMDB should now dynamically resize the mapsize
9 years ago
warptangent d35bffb950
Allow BlockchainLMDB to be opened in read-only mode
9 years ago
Thomas Winget ac79502308
Move mdb_txn_safe implementation to cpp file
9 years ago
warptangent 71af04669c
Update log statements
9 years ago
Thomas Winget 9519526224
Only compile BerkeleyDB as an option in non-static
9 years ago
Thomas Winget 7b14d4a17f
Steps toward multiple dbs available -- working
9 years ago
Thomas Winget ead7fad552
BerkeleyDB implementation of BlockchainDB seems to be working!
9 years ago
Thomas Winget 8e3347f310
Pull blockchain changes into berkeleydb branch
9 years ago
Thomas Winget e146027acd
BlockchainBDB passes unit tests
9 years ago
Thomas Winget 43477b7dac
BerkeleyDB Blockchain building, not working yet
9 years ago
Thomas Winget cade0da8f1
CMake wiring, minor cleanup, minor test addition
9 years ago
Thomas Winget 1bc89398b4
BerkeleyDB BlockchainDB impl copy/paste/modify
9 years ago
Thomas Winget 5112dc37d7
Try to not pollute cryptonote namespace
9 years ago
Thomas Winget edef0bb771
Initial commit of BDB BlockchainDB implementation
9 years ago
warptangent 275cbd4348
Add support for database open with flags
9 years ago
warptangent cb862cb81a
Add mdb_flags variable to LMDB database open
9 years ago
warptangent acb5d291b8
Update and relocate comment that applies class wide
9 years ago
Thomas Winget eee3ee7073
BlockchainDB implementations have names now
9 years ago
Thomas Winget 5eab480cb1
Moved BlockchainDB into its own src/ subfolder
9 years ago