Commit Graph

290 Commits (bcd71a5af915ff88a7306f9d929db2f57996adf8)

Author SHA1 Message Date
Howard Chu c903c5541e
Don't cache block height, always get from DB
7 years ago
Howard Chu 0693cff925
Use batch transactions when syncing
7 years ago
moneromooo-monero 0478ac6848
blockchain: allow marking "tx not found" without an exception
7 years ago
moneromooo-monero 0e18f46522
db_lmdb: add info in an error message when we can't get an output
8 years ago
moneromooo-monero c96f9b0255
db_lmdb: guard against going out of sync on unexpected db results
8 years ago
moneromooo-monero bef51e677e
db_lmdb: minor pedantic tweaks
8 years ago
moneromooo-monero 3465c4ebc7
db_lmdb: set same packing format for output_data_t and pre_rct_output_data_t
8 years ago
moneromooo-monero 88faec75fe
wallet: select part of the fake outs from recent outputs
8 years ago
Riccardo Spagni 995dde4f95
Merge pull request #1128
8 years ago
moneromooo-monero d2e11f374a
db_lmdb: do not error if dropping a non existent hard fork table
8 years ago
Myagui 12427dd8d3 Fix minor typo in "need resize" message.
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 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
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
moneromooo-monero 79117d4275
db_lmdb: include the error codes from lmdb api in error logs
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
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
Howard Chu 7db89ed2ee ARMv7: fix unaligned accesses
8 years ago
Howard Chu 8cc7a36f0b read txn/cursor stuff
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
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
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
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 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 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
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 1494557633
db_lmdb: 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
moneromooo-monero a98e976f9e
blockchain_db: fixup missing key images in early DB version
9 years ago
moneromooo-monero 4f873bcbaa
Remove some old/obsolete/unused code
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 572780e335
blockchain_db: use the DNE exceptions where appropriate
9 years ago
moneromooo-monero 5b11a89a76
hardfork: most state now saved to the DB
9 years ago
Riccardo Spagni 09cada45c4
Merge pull request #363
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
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 7b14d4a17f
Steps toward multiple dbs available -- working
9 years ago
Thomas Winget 8e3347f310
Pull blockchain changes into berkeleydb branch
9 years ago
Thomas Winget 5112dc37d7
Try to not pollute cryptonote namespace
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