summaryrefslogtreecommitdiff
path: root/src/blockchain_db
Commit message (Collapse)AuthorAgeFilesLines
* rpc: limit the number of txes for get_blocks.binmoneromooo-monero2020-12-294-8/+16
|
* Avoid some temporary strings when reading off the databasemoneromooo-monero2020-08-175-44/+40
|
* Merge pull request #6354Alexander Blair2020-08-092-13/+35
|\ | | | | | | 67ade8005 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 (Lee Clagett)
| * Add randomized delay when forwarding txes from i2p/tor -> ipv4/6Lee Clagett2020-05-152-13/+35
| |
* | Merge pull request #6565Alexander Blair2020-07-191-1/+1
|\ \ | | | | | | | | | 72cdfa4a2 fix a few typos in error messages (moneromooo-monero)
| * | fix a few typos in error messagesmoneromooo-monero2020-05-191-1/+1
| |/ | | | | | | Reported by adrelanos
* | Merge pull request #6557Alexander Blair2020-07-191-2/+2
|\ \ | | | | | | | | | bd69e3b37 testdb: add override in a couple places where it's missing (moneromooo-monero)
| * | testdb: add override in a couple places where it's missingmoneromooo-monero2020-05-181-2/+2
| |/
* | Merge pull request #6536Alexander Blair2020-07-192-0/+30
|\ \ | | | | | | | | | bd9653663 db_lmdb: test for mmap support at init time (moneromooo-monero)
| * | db_lmdb: test for mmap support at init timemoneromooo-monero2020-05-162-0/+30
| |/ | | | | | | | | It'll make it clearer when a DB init failure is due to being on a filesystem which does not support mmap
* | Merge pull request #6534Alexander Blair2020-07-194-0/+51
|\ \ | | | | | | | | | 7bd66b01b daemon: guard against rare 'difficulty drift' bug with checkpoints and recalculation (stoffu)
| * | daemon: guard against rare 'difficulty drift' bug with checkpoints and ↵stoffu2020-06-094-0/+51
| |/ | | | | | | | | | | recalculation On startup, it checks against the difficulty checkpoints, and if any mismatch is found, recalculates all the blocks with wrong difficulties. Additionally, once a week it recalculates difficulties of blocks after the last difficulty checkpoint.
* / Update copyright year to 2020SomaticFanatic2020-05-067-7/+7
|/ | | | Update copyright year to 2020
* Adding Dandelion++ support to public networks:Lee Clagett2020-03-262-5/+29
| | | | | | - New flag in NOTIFY_NEW_TRANSACTION to indicate stem mode - Stem loops detected in tx_pool.cpp - Embargo timeout for a blackhole attack during stem phase
* Merge pull request #6358luigi11112020-04-104-0/+119
|\ | | | | | | 8958b4e blockchain_db: faster fetching of consecutive txes (moneromooo-monero)
| * blockchain_db: faster fetching of consecutive txesmoneromooo-monero2020-02-274-0/+119
| | | | | | | | Useful for wallet refresh or node sync
* | Merge pull request #6384luigi11112020-04-041-0/+1
|\ \ | | | | | | | | | ec01077 db_lmdb: fix race crash using a stale cursor (moneromooo-monero)
| * | db_lmdb: fix race crash using a stale cursormoneromooo-monero2020-03-121-0/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | If a db resize happened, the txpool meta cursor might be stale, and was not being renewed when necessary. It would cause this SEGSEGV: in mdb_cursor_set () in mdb_cursor_get () in cryptonote::BlockchainLMDB::get_txpool_tx_blob(crypto::hash const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cryptonote::relay_category) const () in cryptonote::tx_memory_pool::get_transaction(crypto::hash const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, cryptonote::relay_category) const () in cryptonote::t_cryptonote_protocol_handler<cryptonote::core>::handle_notify_new_fluffy_block(int, epee::misc_utils::struct_init<cryptonote::NOTIFY_NEW_FLUFFY_BLOCK::request_t>&, cryptonote::cryptonote_connection_context&) ()
* | Merge pull request #6339luigi11112020-04-041-2/+2
|\ \ | | | | | | | | | c61abf8 remove empty statements (shopglobal)
| * | remove empty statementsInterchained2020-02-171-2/+2
| |/ | | | | | | Cleaning up a little around the code base.
* / core: move the LockedTXN class out of txpool so it may be reusedmoneromooo-monero2020-03-121-0/+53
|/ | | | for example, in the RPC server
* Merge pull request #6140Alexander Blair2020-01-254-0/+60
|\ | | | | | | 08635a08 blockchain: speedup fetching pruned contiguous tx blobs (moneromooo-monero)
| * blockchain: speedup fetching pruned contiguous tx blobsmoneromooo-monero2019-11-154-0/+60
| | | | | | | | About twice as fast, very roughly
* | Merge pull request #6157Alexander Blair2020-01-241-1/+9
|\ \ | | | | | | | | | 402dd207 db_lmdb: guard against non NUL terminated keys (moneromooo-monero)
| * | db_lmdb: guard against non NUL terminated keysmoneromooo-monero2019-11-191-1/+9
| |/
* | Change to Tx diffusion (Dandelion++ fluff) instead of floodingLee Clagett2019-11-042-4/+4
| |
* | Adding support for hidden (anonymity) txpoolLee Clagett2019-11-025-30/+171
|/
* db_lmdb: an empty prunable data record means the tx is not prunedmoneromooo-monero2019-10-171-2/+0
| | | | as opposed to an absent record
* Merge pull request #5915luigi11112019-10-082-3/+6
|\ | | | | | | 8330e77 monerod can now sync from pruned blocks (moneromooo-monero)
| * monerod can now sync from pruned blocksmoneromooo-monero2019-09-272-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If the peer (whether pruned or not itself) supports sending pruned blocks to syncing nodes, the pruned version will be sent along with the hash of the pruned data and the block weight. The original tx hashes can be reconstructed from the pruned txes and theur prunable data hash. Those hashes and the block weights are hashes and checked against the set of precompiled hashes, ensuring the data we received is the original data. It is currently not possible to use this system when not using the set of precompiled hashes, since block weights can not otherwise be checked for validity. This is off by default for now, and is enabled by --sync-pruned-blocks
* | Merge pull request #5878luigi11112019-09-246-2852/+3
|\ \ | |/ |/| | | f9b3f6e Removed Berkeley DB and db switching logic (JesusRami)
| * Removed Berkeley DB and db switching logicJesus Ramirez2019-09-166-2852/+3
| |
* | db_lmdb: print percentages as percentages, not ratiosmoneromooo-monero2019-09-041-1/+1
|/
* Increase max_dbs from 20 to 32Howard Chu2019-08-181-1/+1
| | | | | We've added a lot of new indices recently, and 20 isn't enough for them plus new DBs opened during format migrations.
* Merge pull request #5524luigi11112019-07-244-1/+239
|\ | | | | | | 06b8f29 blockchain: keep alternative blocks in LMDB (moneromooo-monero)
| * blockchain: keep alternative blocks in LMDBmoneromooo-monero2019-05-084-1/+239
| | | | | | | | | | Alternative blocks are cleared on startup unless --keep-alt-blocks is passed on the command line
* | Merge pull request #5502luigi11112019-07-241-1/+1
|\ \ | | | | | | | | | | | | 25a7cfd add a few checks where it seems appropriate (moneromooo-monero) 1a66a86 remove unused code (moneromooo-monero)
| * | add a few checks where it seems appropriatemoneromooo-monero2019-04-291-1/+1
| |/
* | db_lmdb: commit pruning txn at checkpointsmoneromooo-monero2019-06-151-1/+50
| | | | | | | | to avoid errors when the txn is too large
* | ensure no NULL is passed to memcpymoneromooo-monero2019-06-141-2/+2
| | | | | | | | | | NULL is valid when size is 0, but memcpy uses nonnull attributes, so let's not poke the bear
* | core: do not commit half constructed batch db txnmoneromooo-monero2019-05-252-0/+16
| |
* | fix wide difficulty conversion with some versions of boostmoneromooo-monero2019-05-011-2/+2
|/
* testdb: add override keyword where missingstoffu2019-04-173-132/+100
| | | | and delete obsolete BlockchainBDB::get_tx_output_indices along the way
* blockchain_db: fix db txn ending too earlymoneromooo-monero2019-04-145-58/+98
| | | | | | | | | | The db txn in add_block ending caused the entire overarching batch txn to stop. Also add a new guard class so a db txn can be stopped in the face of exceptions. Also use a read only db txn in init when the db itself is read only, and do not save the max tx size in that case.
* cryptonote: rework block blob size sanity checkmoneromooo-monero2019-04-054-0/+72
| | | | | Use the actual block weight limit, assuming that weight is always greater or equal to size
* Make difficulty 128 bit instead of 64 bitmoneromooo-monero2019-03-242-7/+155
| | | | | | Based on Boolberry work by: jahrsg <jahr@jahr.me> cr.zoidberg <crypto.zoidberg@gmail.com>
* Merge pull request #5256Riccardo Spagni2019-03-214-0/+94
|\ | | | | | | 4b21d38d blockchain: speed up getting N blocks weights/long term weights (moneromooo-monero)
| * blockchain: speed up getting N blocks weights/long term weightsmoneromooo-monero2019-03-084-0/+94
| |
* | Update 2019 copyrightbinaryFate2019-03-059-9/+9
|/
* Merge pull request #5119Riccardo Spagni2019-03-051-5/+5
|\ | | | | | | f024a10b db_lmdb: make mdb_block_info format conversion more future proof (moneromooo-monero)