aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2015-08-04Fix estimation of batch storage size when no blocks existwarptangent1-11/+28
If there's no blocks in database (m_height == 0): Don't assign incorrect block range to check. Skip average block size check. Test: Run blockchain_converter with an existing source blockchain.bin and a non-existent LMDB destination database. The converter creates a BlockchainLMDB instance with zero height, due to not being initialized with a genesis block, normally done by Blockchain::init(). While different than the behavior of bitmonerod, blockchain_import, and blockchain_export, the initialization hasn't been strictly necessary. The db batch size estimation normally uses an average block size, or a default minimum block size, whichever is greater. In this case, as there's no existing blocks to check for an average block size, the default should be used.
2015-08-04Merge pull request #358Riccardo Spagni1-0/+1
1e23b7a wallet: set watch-only flag to false when creating a new wallet (moneromooo-monero)
2015-08-04wallet: set watch-only flag to false when creating a new walletmoneromooo-monero1-0/+1
2015-07-27Merge pull request #353Riccardo Spagni1-10/+10
16d71a3 Fix block_reward unit tests (Rostislav)
2015-07-26Fix block_reward unit testsRostislav1-10/+10
2015-07-24Merge pull request #352Riccardo Spagni5-2/+1703
1d1a77b slight modification to wordlist contributor tagline (as these contributors haven't used git to submit a PR, so we're creating the wordlist on their behalf (Riccardo Spagni) ef7671a added Russian wordlist (Riccardo Spagni)
2015-07-24slight modification to wordlist contributor tagline (as these contributors ↵Riccardo Spagni2-2/+2
haven't used git to submit a PR, so we're creating the wordlist on their behalf
2015-07-24added Russian wordlistRiccardo Spagni3-0/+1701
2015-07-24Merge pull request #348Riccardo Spagni6-5/+438
988fe1f wallet: new transaction construction algorithm (moneromooo-monero)
2015-07-24Merge pull request #351Riccardo Spagni1-1/+1
a49d917 change unique_prefix_length=4 for japanese.h (David Vorick)
2015-07-23change unique_prefix_length=4 for japanese.hDavid Vorick1-1/+1
I ran some tests, and all prefixes seem to be unique for len(3)
2015-07-22Merge pull request #349Riccardo Spagni6-5/+3405
6d6a985 add Germany and Italian wordlists (Riccardo Spagni) 514047d fix portuguese wordlist (Riccardo Spagni) b5c0308 fix license on English wordlist (Riccardo Spagni)
2015-07-22add Germany and Italian wordlistsRiccardo Spagni4-0/+3402
2015-07-22wallet: new transaction construction algorithmmoneromooo-monero6-5/+438
It should avoid a lot of the issues sending more than half the wallet's contents due to change. Actual output selection is still random. Changing this would improve the matching of transaction amounts to output sizes, but may have non obvious effects on blockchain analysis. Mapped to the new transfer_new command in simplewallet, and transfer uses the existing algorithm. To use in RPC, add "new_algorithm: true" in the transfer_split JSON command. It is not used in the transfer command.
2015-07-22fix portuguese wordlistRiccardo Spagni1-3/+3
2015-07-22fix license on English wordlistRiccardo Spagni1-2/+0
2015-07-20Merge pull request #347Riccardo Spagni3-224/+224
9b83a43 Update after recent simplewallet string changes (moneromooo-monero) 35378f1 simplewallet: fix context/string order mismatch (moneromooo-monero) e62692f simplewallet: use unsigned long long instead of size_t in message (moneromooo-monero)
2015-07-19Update after recent simplewallet string changesmoneromooo-monero1-219/+219
2015-07-19simplewallet: fix context/string order mismatchmoneromooo-monero1-1/+1
2015-07-19simplewallet: use unsigned long long instead of size_t in messagemoneromooo-monero1-4/+4
boost doesn't support %zu for size_t, and the previous change to %u could technically lose bits (though it would require splitting a transfer into 4 billion transactions, which seems unlikely).
2015-07-18Merge pull request #346Riccardo Spagni4-6/+82
8fe180a wallet: add boolean to always confirm transactions with the user (moneromooo-monero)
2015-07-18wallet: add boolean to always confirm transactions with the usermoneromooo-monero4-6/+82
This can be useful if you want to be given a veto over the tx fee, or if you want to see what a tx fee would be without actually sending.
2015-07-18Merge pull request #345Riccardo Spagni2-235/+252
3c13da5 boost doesn't like %zu for size_t, replace with %u (moneromooo-monero)
2015-07-18Merge pull request #344Riccardo Spagni1-5/+7
e027831 console_handler: do not call a NULL function pointer (moneromooo-monero) b87e066 console_handler: check for eof before trying to use input (moneromooo-monero)
2015-07-18Merge pull request #343Riccardo Spagni1-1/+1
e20a4dd blockchain: fix testnet syncing (to not use blocks.dat) (moneromooo-monero)
2015-07-18Merge pull request #342Riccardo Spagni2-10/+13
70ae2ee Fixed threadpool bug when running on single core systems. *Thanks to freshman for reporting bug. (NoodleDoodleNoodleDoodleNoodleDoodleNoo) 464dbe7 Fixed MINGW duplicate library errors when MSYS folder cannot be found. *Thanks to luigi1111 for reporting. (NoodleDoodleNoodleDoodleNoodleDoodleNoo)
2015-07-18boost doesn't like %zu for size_t, replace with %umoneromooo-monero2-235/+252
2015-07-18console_handler: do not call a NULL function pointermoneromooo-monero1-1/+2
The exit_handler can be NULL.
2015-07-18console_handler: check for eof before trying to use inputmoneromooo-monero1-4/+5
We'll get there without input if we exited
2015-07-18blockchain: fix testnet syncing (to not use blocks.dat)moneromooo-monero1-1/+1
These are mainnet blocks, and would cause syncing on testnet to reject all incoming blocks.
2015-07-17Fixed threadpool bug when running on single core systems.NoodleDoodleNoodleDoodleNoodleDoodleNoo1-5/+8
*Thanks to freshman for reporting bug.
2015-07-17Fixed MINGW duplicate library errors when MSYS folder cannot be found.NoodleDoodleNoodleDoodleNoodleDoodleNoo1-5/+5
*Thanks to luigi1111 for reporting.
2015-07-16Merge pull request #341Riccardo Spagni1-1/+2
bbb936d Use g++ flag "-pthread" instead of "-lpthread", where preferred (warptangent)
2015-07-16Use g++ flag "-pthread" instead of "-lpthread", where preferredwarptangent1-1/+2
CMake supports this through THREADS_PREFER_PTHREAD_FLAG. Remove inclusion of pthread library in EXTRA_LIBRARIES, as the individual CMakeLists.txt files which need pthread already require it with CMAKE_THREAD_LIBS_INIT.
2015-07-16Merge pull request #340Riccardo Spagni1-1/+1
35b62fb hyc accidentally typo'd...we shall never speak of this again (Riccardo Spagni)
2015-07-16hyc accidentally typo'd...we shall never speak of this againRiccardo Spagni1-1/+1
2015-07-16Merge pull request #339Riccardo Spagni36-295/+586
54c785d fixed ARM arch test to prevent breaking on short arch strings (Riccardo Spagni) a4254a4 updated vl32 to current (Riccardo Spagni) e6ab2df updated in-source lmdb (Riccardo Spagni) ea08c76 open() flag O_DSYNC isn't on BSD, use O_SYNC (Thomas Winget)
2015-07-16fixed ARM arch test to prevent breaking on short arch stringsRiccardo Spagni1-12/+17
2015-07-16updated vl32 to currentRiccardo Spagni24-188/+390
2015-07-16updated in-source lmdbRiccardo Spagni10-95/+171
2015-07-16open() flag O_DSYNC isn't on BSD, use O_SYNCThomas Winget2-0/+8
If the detected OS is FreeBSD, tell LMDB to compile with MDB_DSYNC=O_SYNC instead of the default O_DSYNC, as BSD does not implement this flag.
2015-07-16Merge pull request #338Riccardo Spagni1-6/+12
71793ef Add batch support to BlockchainLMDB::get_output_key (warptangent)
2015-07-16Add batch support to BlockchainLMDB::get_output_keywarptangent1-6/+12
This allows blockchain_import to work with batch and verify modes enabled (the default).
2015-07-15Removed on_idle() calls to Blockchain::store_blockchain() for lmdb.NoodleDoodleNoodleDoodleNoodleDoodleNoo5-17/+53
Added option to cache tx-input verification results.
2015-07-15Fixed binary size issue due to embedded checkpoint data.NoodleDoodleNoodleDoodleNoodleDoodleNoo7-9/+15
Fixed OSX compilation issues due to random lmdb resize points. Fixed infinite loop bug when calling core::get_block_template(..).
2015-07-15Pause miner before preparing for incoming blocksNoodleDoodleNoodleDoodleNoodleDoodleNoo1-6/+5
2015-07-15** CHANGES ARE EXPERIMENTAL (FOR TESTING ONLY)NoodleDoodleNoodleDoodleNoodleDoodleNoo33-2346/+4025
Bockchain: 1. Optim: Multi-thread long-hash computation when encountering groups of blocks. 2. Optim: Cache verified txs and return result from cache instead of re-checking whenever possible. 3. Optim: Preload output-keys when encoutering groups of blocks. Sort by amount and global-index before bulk querying database and multi-thread when possible. 4. Optim: Disable double spend check on block verification, double spend is already detected when trying to add blocks. 5. Optim: Multi-thread signature computation whenever possible. 6. Patch: Disable locking (recursive mutex) on called functions from check_tx_inputs which causes slowdowns (only seems to happen on ubuntu/VMs??? Reason: TBD) 7. Optim: Removed looped full-tx hash computation when retrieving transactions from pool (???). 8. Optim: Cache difficulty/timestamps (735 blocks) for next-difficulty calculations so that only 2 db reads per new block is needed when a new block arrives (instead of 1470 reads). Berkeley-DB: 1. Fix: 32-bit data errors causing wrong output global indices and failure to send blocks to peers (etc). 2. Fix: Unable to pop blocks on reorganize due to transaction errors. 3. Patch: Large number of transaction aborts when running multi-threaded bulk queries. 4. Patch: Insufficient locks error when running full sync. 5. Patch: Incorrect db stats when returning from an immediate exit from "pop block" operation. 6. Optim: Add bulk queries to get output global indices. 7. Optim: Modified output_keys table to store public_key+unlock_time+height for single transaction lookup (vs 3) 8. Optim: Used output_keys table retrieve public_keys instead of going through output_amounts->output_txs+output_indices->txs->output:public_key 9. Optim: Added thread-safe buffers used when multi-threading bulk queries. 10. Optim: Added support for nosync/write_nosync options for improved performance (*see --db-sync-mode option for details) 11. Mod: Added checkpoint thread and auto-remove-logs option. 12. *Now usable on 32-bit systems like RPI2. LMDB: 1. Optim: Added custom comparison for 256-bit key tables (minor speed-up, TBD: get actual effect) 2. Optim: Modified output_keys table to store public_key+unlock_time+height for single transaction lookup (vs 3) 3. Optim: Used output_keys table retrieve public_keys instead of going through output_amounts->output_txs+output_indices->txs->output:public_key 4. Optim: Added support for sync/writemap options for improved performance (*see --db-sync-mode option for details) 5. Mod: Auto resize to +1GB instead of multiplier x1.5 ETC: 1. Minor optimizations for slow-hash for ARM (RPI2). Incomplete. 2. Fix: 32-bit saturation bug when computing next difficulty on large blocks. [PENDING ISSUES] 1. Berkely db has a very slow "pop-block" operation. This is very noticeable on the RPI2 as it sometimes takes > 10 MINUTES to pop a block during reorganization. This does not happen very often however, most reorgs seem to take a few seconds but it possibly depends on the number of outputs present. TBD. 2. Berkeley db, possible bug "unable to allocate memory". TBD. [NEW OPTIONS] (*Currently all enabled for testing purposes) 1. --fast-block-sync arg=[0:1] (default: 1) a. 0 = Compute long hash per block (may take a while depending on CPU) b. 1 = Skip long-hash and verify blocks based on embedded known good block hashes (faster, minimal CPU dependence) 2. --db-sync-mode arg=[[safe|fast|fastest]:[sync|async]:[nblocks_per_sync]] (default: fastest:async:1000) a. safe = fdatasync/fsync (or equivalent) per stored block. Very slow, but safest option to protect against power-out/crash conditions. b. fast/fastest = Enables asynchronous fdatasync/fsync (or equivalent). Useful for battery operated devices or STABLE systems with UPS and/or systems with battery backed write cache/solid state cache. Fast - Write meta-data but defer data flush. Fastest - Defer meta-data and data flush. Sync - Flush data after nblocks_per_sync and wait. Async - Flush data after nblocks_per_sync but do not wait for the operation to finish. 3. --prep-blocks-threads arg=[n] (default: 4 or system max threads, whichever is lower) Max number of threads to use when computing long-hash in groups. 4. --show-time-stats arg=[0:1] (default: 1) Show benchmark related time stats. 5. --db-auto-remove-logs arg=[0:1] (default: 1) For berkeley-db only. Auto remove logs if enabled. **Note: lmdb and berkeley-db have changes to the tables and are not compatible with official git head version. At the moment, you need a full resync to use this optimized version. [PERFORMANCE COMPARISON] **Some figures are approximations only. Using a baseline machine of an i7-2600K+SSD+(with full pow computation): 1. The optimized lmdb/blockhain core can process blocks up to 585K for ~1.25 hours + download time, so it usually takes 2.5 hours to sync the full chain. 2. The current head with memory can process blocks up to 585K for ~4.2 hours + download time, so it usually takes 5.5 hours to sync the full chain. 3. The current head with lmdb can process blocks up to 585K for ~32 hours + download time and usually takes 36 hours to sync the full chain. Averate procesing times (with full pow computation): lmdb-optimized: 1. tx_ave = 2.5 ms / tx 2. block_ave = 5.87 ms / block memory-official-repo: 1. tx_ave = 8.85 ms / tx 2. block_ave = 19.68 ms / block lmdb-official-repo (0f4a036437fd41a5498ee5e74e2422ea6177aa3e) 1. tx_ave = 47.8 ms / tx 2. block_ave = 64.2 ms / block **Note: The following data denotes processing times only (does not include p2p download time) lmdb-optimized processing times (with full pow computation): 1. Desktop, Quad-core / 8-threads 2600k (8Mb) - 1.25 hours processing time (--db-sync-mode=fastest:async:1000). 2. Laptop, Dual-core / 4-threads U4200 (3Mb) - 4.90 hours processing time (--db-sync-mode=fastest:async:1000). 3. Embedded, Quad-core / 4-threads Z3735F (2x1Mb) - 12.0 hours processing time (--db-sync-mode=fastest:async:1000). lmdb-optimized processing times (with per-block-checkpoint) 1. Desktop, Quad-core / 8-threads 2600k (8Mb) - 10 minutes processing time (--db-sync-mode=fastest:async:1000). berkeley-db optimized processing times (with full pow computation) 1. Desktop, Quad-core / 8-threads 2600k (8Mb) - 1.8 hours processing time (--db-sync-mode=fastest:async:1000). 2. RPI2. Improved from estimated 3 months(???) into 2.5 days (*Need 2AMP supply + Clock:1Ghz + [usb+ssd] to achieve this speed) (--db-sync-mode=fastest:async:1000). berkeley-db optimized processing times (with per-block-checkpoint) 1. RPI2. 12-15 hours (*Need 2AMP supply + Clock:1Ghz + [usb+ssd] to achieve this speed) (--db-sync-mode=fastest:async:1000).
2015-07-15Update blockchain.cppNoodleDoodleNoodleDoodleNoodleDoodleNoo1-1/+0
Fix compilation error
2015-07-15Update db_bdb.cppNoodleDoodleNoodleDoodleNoodleDoodleNoo1-7/+5
- bugfix: prevent re-entering db->get when current buffer contains all possible index values.
2015-07-15Update db_bdb.cppNoodleDoodleNoodleDoodleNoodleDoodleNoo1-72/+72
2015-07-15Update db_bdb.cppNoodleDoodleNoodleDoodleNoodleDoodleNoo1-1154/+1166
2015-07-15Experimental BDB workaround optimizationsNoodleDoodleNoodleDoodleNoodleDoodleNoo5-19/+240
2015-07-15Merge pull request #336Riccardo Spagni1-0/+297
ea58576 Add missing file - i18n.cpp (moneromooo-monero)
2015-07-15Add missing file - i18n.cppmoneromooo-monero1-0/+297
2015-07-15Merge pull request #335Riccardo Spagni9-249/+1385
78b2eab Translatable strings for simplewallet (moneromooo-monero)
2015-07-15Merge pull request #334Riccardo Spagni9-18/+122
fd73d9c Check and resize if needed at batch transaction start (warptangent) f9e4afd blockchain_utilities: Increase debug statement's log level (warptangent) 699e4b3 blockchain_utilities: Pass expected number of blocks when starting batch (warptangent) 6e170c8 Optionally allow DB to know expected number of blocks at batch transaction start (warptangent)
2015-07-15Merge pull request #333Riccardo Spagni1-0/+9
5d304ca Fix loop bug when calling core::get_block_template, causing calling thread to lock up. (NoodleDoodleNoodleDoodleNoodleDoodleNoo)
2015-07-14Translatable strings for simplewalletmoneromooo-monero9-249/+1385
The system is mostly the Qt system, but we don't use Qt to avoid the dependencies. See README.i18n for details.
2015-07-12Check and resize if needed at batch transaction startwarptangent2-5/+109
This currently only affects blockchain_import and blockchain_converter. When the number of blocks expected for the batch transaction is provided, make an estimate of the DB space needed. If not enough free space remains, resize the DB. The estimate is made based on: - the average size of the last 500 blocks, or if larger, a min. block size of 4k - a factor for the expanded size a block occupies in the DB across the sub-dbs/tables - a safety factor (1.7) to allow for a "reasonable" average block size increase over the batch Increase the DB size by whichever is greater: the estimated size needed or a minimum increase size, currently 128 MB. The conservative factors in the estimate help in testing that the resize occurs when needed, and without gratuitous size increases. For common use, the safety factor and minimum increase size could reasonably be increased. For testing, setting DEFAULT_MAPSIZE (blockchain_db/lmdb/db_lmdb.h) to 1 << 27 (128 MB) and recompiling will ensure DB resizes take place sooner and more frequently.
2015-07-11blockchain_utilities: Increase debug statement's log levelwarptangent1-1/+1
2015-07-11blockchain_utilities: Pass expected number of blocks when starting batchwarptangent2-4/+4
2015-07-11Optionally allow DB to know expected number of blocks at batch transaction startwarptangent6-8/+8
This will assist in a DB resize check.
2015-07-10Fix loop bug when calling core::get_block_template, causing calling thread ↵NoodleDoodleNoodleDoodleNoodleDoodleNoo1-0/+9
to lock up.
2015-07-09Merge pull request #331Riccardo Spagni1-1/+10
369c7b3 blockchain_utilities/README.md: add workaround for resizing in batch mode (moneromooo-monero) 26970c7 blockchain_utilities/README.md: add high level "what is this about" (moneromooo-monero)
2015-07-09Merge pull request #332Riccardo Spagni1-1/+5
8623492 Interpret x86_64 as x86-64 for architecture (moneromooo-monero)
2015-07-09Interpret x86_64 as x86-64 for architecturemoneromooo-monero1-1/+5
2015-07-09fix incorrect arch in readmeRiccardo Spagni1-1/+1
2015-07-07blockchain_utilities/README.md: add workaround for resizing in batch modemoneromooo-monero1-0/+3
2015-07-07blockchain_utilities/README.md: add high level "what is this about"moneromooo-monero1-1/+7
2015-06-23Merge pull request #329Riccardo Spagni1-1/+1
204759f mnemonics: fix duplicate symbol error (Wladimir J. van der Laan)
2015-06-23mnemonics: fix duplicate symbol errorWladimir J. van der Laan1-1/+1
2015-06-21Merge pull request #326Riccardo Spagni2-5/+25
ea33cad mnemonics: fix prefix extraction with non ASCII text (moneromooo-monero)
2015-06-21mnemonics: fix prefix extraction with non ASCII textmoneromooo-monero2-5/+25
2015-06-20Merge pull request #325Riccardo Spagni2-4/+5
3ade396 Set dnssec_valid value correctly in dns_utils; fix address_from_url test (Rostislav)
2015-06-20Merge pull request #324Riccardo Spagni6-10/+153
dc4dbc1 simplewallet: allow creating a wallet from a public address and view secret key (moneromooo-monero) 6a0f61d account: allow creating an account from a public address and view secret key (moneromooo-monero) e05a58a wallet2: fix write_watch_only_wallet comment description (moneromooo-monero) 4bf6f0d simplewallet: forbid seed commands for watch only wallets (moneromooo-monero)
2015-06-20Merge pull request #323Riccardo Spagni1-4/+7
2952ffd wallet2: use the same exponential splitting for normal txes (moneromooo-monero) 7c8d3be wallet2: try to split dust sweep txs exponentially (moneromooo-monero)
2015-06-20Set dnssec_valid value correctly in dns_utils; fix address_from_url testRostislav2-4/+5
2015-06-20simplewallet: allow creating a wallet from a public address and view secret keymoneromooo-monero4-8/+124
The needed information is supplied via a triple: --generate-from-view-key address:viewkey:filename
2015-06-20account: allow creating an account from a public address and view secret keymoneromooo-monero2-0/+17
2015-06-20wallet2: fix write_watch_only_wallet comment descriptionmoneromooo-monero1-2/+2
2015-06-20simplewallet: forbid seed commands for watch only walletsmoneromooo-monero1-0/+10
They do not make sense
2015-06-17wallet2: use the same exponential splitting for normal txesmoneromooo-monero1-2/+4
2015-06-17wallet2: try to split dust sweep txs exponentiallymoneromooo-monero1-2/+3
This ensures even massive wallets full of dust can sweep.
2015-06-16Merge pull request #322Riccardo Spagni1-7/+17
f6da25a Fix standard address deserialization (moneromooo-monero)
2015-06-16Fix standard address deserializationmoneromooo-monero1-7/+17
2015-06-14Merge pull request #321Riccardo Spagni1-9/+6
bbc5475 Fix DNS checkpoint consensus code (moneromooo-monero)
2015-06-14Merge pull request #320Riccardo Spagni2-1/+12
f9b361b daemon: fix an exit crash (moneromooo-monero)
2015-06-14Merge pull request #318Riccardo Spagni3-8/+14
fb20071 simplewallet: allow a different password for the watch-only wallet (moneromooo-monero)
2015-06-14Merge pull request #317Riccardo Spagni10-10/+303
6f8a6dc Add RPC commands to manipulate integrated addresses (moneromooo-monero) 67be2e4 simplewallet: allow integrated_address to generate a random payment id (moneromooo-monero) 7bd6efe account: add a couple consts (moneromooo-monero) 63741d8 Integrated addresses (standard address plus payment id) (moneromooo-monero)
2015-06-14Fix DNS checkpoint consensus codemoneromooo-monero1-9/+6
It's supposed to load all records and pick one that it finds twice.
2015-06-14daemon: fix an exit crashmoneromooo-monero2-1/+12
2015-06-13Add RPC commands to manipulate integrated addressesmoneromooo-monero3-0/+113
2015-06-12simplewallet: allow integrated_address to generate a random payment idmoneromooo-monero1-4/+11
2015-06-12account: add a couple constsmoneromooo-monero2-4/+4
2015-06-12Integrated addresses (standard address plus payment id)moneromooo-monero8-8/+181
2015-06-12simplewallet: allow a different password for the watch-only walletmoneromooo-monero3-8/+14
2015-06-11Merge pull request #312Riccardo Spagni2-39/+46
a9b1f7e dns_utils: simpify smart pointer use, and use for url strings too (moneromooo-monero)
2015-06-11Merge pull request #311Riccardo Spagni1-0/+1
d7df08d properly decrement p2p socket count (Thomas Winget)
2015-06-11Merge pull request #308Riccardo Spagni4-12/+12
35b160e fix ^D exit for bitmonerod (moneromooo-monero)
2015-06-11Merge pull request #303Riccardo Spagni6-7/+91
c882af6 wallet: add watch only wallet support (moneromooo-monero) f7767c6 account: add a forget_spend_key method (moneromooo-monero)
2015-06-07dns_utils: simpify smart pointer use, and use for url strings toomoneromooo-monero2-39/+46
OK, I admit I wanted to template this struct for fun too.
2015-06-06properly decrement p2p socket countThomas Winget1-0/+1
2015-06-03fix ^D exit for bitmonerodmoneromooo-monero4-12/+12
It uses the async console handler differently than simplewallet, and wasn't running the same exit code, causing it to never actually exit after breaking out of the console entry loop.
2015-06-03Merge pull request #306Riccardo Spagni1-1/+0
0f4a036 re-add Windows DNS bug fix, per c0de96f8bd2f64884255f9b0b61a4775ada5e3e6 (Riccardo Spagni)
2015-06-02re-add Windows DNS bug fix, per c0de96f8bd2f64884255f9b0b61a4775ada5e3e6Riccardo Spagni1-1/+0
2015-05-31Merge pull request #302Riccardo Spagni59-2575/+4559
6a11907 update libunbound (Riccardo Spagni)
2015-05-31update libunboundRiccardo Spagni59-2575/+4559
2015-05-31wallet: add watch only wallet supportmoneromooo-monero4-7/+84
The new save_watch_only saves a copy of the keys file without the spend key. It can then be given away to be used as a normal keys file, but with no spend ability.
2015-05-31account: add a forget_spend_key methodmoneromooo-monero2-0/+7
2015-05-31Merge pull request #301Riccardo Spagni2-1/+35
ce97494 fixed static assert test (Riccardo Spagni)
2015-05-31fixed static assert testRiccardo Spagni2-1/+35
2015-05-31Merge pull request #300Riccardo Spagni49-222/+602
e01d32e cleaning up, removing redundant files, renaming, fixing incorrect licenses (Riccardo Spagni) dfd53b3 readme updates: added sponsors, fixed build instructions (Riccardo Spagni)
2015-05-31cleaning up, removing redundant files, renaming, fixing incorrect licensesRiccardo Spagni48-214/+581
2015-05-31readme updates: added sponsors, fixed build instructionsRiccardo Spagni1-8/+21
2015-05-30Merge pull request #296Riccardo Spagni7-1/+408
a62daeb wallet_rpc_server: add a sweep_dust RPC command as well (moneromooo-monero) 3204f0d wallet: add a sweep_dust command (moneromooo-monero)
2015-05-30wallet_rpc_server: add a sweep_dust RPC command as wellmoneromooo-monero3-0/+64
2015-05-30wallet: add a sweep_dust commandmoneromooo-monero4-1/+344
Sends all the dust to your own wallet. May fail (if the fee required is more than the dust total). May end up paying most of the dust in fees. Unlocked dust total is now also displayed in "balance".
2015-05-30Merge pull request #299Riccardo Spagni1-3/+19
87c01c3 console_handler: handle EOF properly (moneromooo-monero)
2015-05-30Merge pull request #298Riccardo Spagni1-4/+4
183cfac README: minor wording changes (moneromooo-monero)
2015-05-30Merge pull request #297Riccardo Spagni1-38/+75
5680604 Replace hardcoded value with existing constant of same value (warptangent) f37ee2f Update database resize behavior (warptangent) f85cd8e Include database error in more error messages (warptangent)
2015-05-30Merge pull request #294Riccardo Spagni14-565/+38
693a8bf rpc_command_executor: fix mining in testnet mode (moneromooo-monero) d09be11 core_rpc_server: add a getter for the testnet flag (moneromooo-monero) 754f863 core_rpc_server: log some error messages to the console (moneromooo-monero) 4f0e8cf daemon: remove obsolete daemon_commands_handler.h (moneromooo-monero) bac366e core_rpc_server: reenable print_pl (moneromooo-monero) 39a9508 net_peerlist: fix grayt/white naming mismatch (moneromooo-monero) 8069b3b blockchain_db: add a few const (moneromooo-monero) 0932476 wallet: add consts where appropriate (moneromooo-monero)
2015-05-30Merge pull request #293Riccardo Spagni2-14/+52
10ff75e daemon: Set log file default to use data dir (warptangent) deacecc simplewallet: Update and add log options (warptangent) f24bcd5 simplewallet: Don't log view key and spend key (warptangent)
2015-05-30console_handler: handle EOF properlymoneromooo-monero1-3/+19
Exit instead of reading "empty" commands in an infinite loop.
2015-05-30README: minor wording changesmoneromooo-monero1-4/+4
2015-05-30Replace hardcoded value with existing constant of same valuewarptangent1-1/+1
This was likely the intent.
2015-05-30Update database resize behaviorwarptangent1-2/+20
On an existing database, don't set LMDB map size to be the initial size for a new database. Check if resize is needed at startup.
2015-05-30Include database error in more error messageswarptangent1-35/+54
2015-05-28rpc_command_executor: fix mining in testnet modemoneromooo-monero1-2/+1
2015-05-28core_rpc_server: add a getter for the testnet flagmoneromooo-monero1-0/+1
2015-05-28core_rpc_server: log some error messages to the consolemoneromooo-monero1-0/+3
It's helpful when you don't know something failed (especially as everything ends up returning true, so caller thinks all's fine)
2015-05-28daemon: remove obsolete daemon_commands_handler.hmoneromooo-monero2-530/+0
2015-05-28core_rpc_server: reenable print_plmoneromooo-monero1-3/+2
2015-05-28net_peerlist: fix grayt/white naming mismatchmoneromooo-monero1-2/+2
Looking at how these are called confirms this must have been a mistake
2015-05-28daemon: Set log file default to use data dirwarptangent1-1/+16
The log file previously used the default data dir even if --data-dir was set to something else. Document data dir and log file path.
2015-05-28simplewallet: Update and add log optionswarptangent1-9/+29
Replace --set_log with --log-level for consistency. Show default log level in usage. Add --log-file for specifying log file path. Document log file path. Display log file path at startup.
2015-05-28simplewallet: Don't log view key and spend keywarptangent1-4/+7
As with display of seed, don't log view key and spend key. Includes: - display of viewkey at wallet creation - "viewkey" command output - "spendkey" command output
2015-05-27blockchain_db: add a few constmoneromooo-monero6-10/+10
2015-05-27wallet: add consts where appropriatemoneromooo-monero2-18/+19
because const is always appropriate
2015-05-26explicitly include libc++ with clangRiccardo Spagni1-1/+6
2015-05-26Merge pull request #292Riccardo Spagni1-31/+36
c44755a Build seed node list without duplicates (warptangent)
2015-05-26Merge pull request #291Riccardo Spagni2-2/+6
6962253 Fix compile for GCC 5.1.0 (warptangent)
2015-05-26Merge pull request #289Riccardo Spagni2-75/+210
01076ae Check if LMDB needs resize every 1000 blocks (Thomas Winget) b0d849e null out batch txn pointer as needed (BlockchainLMDB) (Thomas Winget) 7b7ef73 LMDB should now dynamically resize the mapsize (Thomas Winget) ac79502 Move mdb_txn_safe implementation to cpp file (Thomas Winget)
2015-05-25Fix compile for GCC 5.1.0warptangent2-2/+6
Add fix for compile error with multiple uses of peerid_type (uint64_t) variable in lambda expression. - known GCC issue: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65843 epee: replace return value of nullptr for expected boolean with false. Fixes #231.
2015-05-25Build seed node list without duplicateswarptangent1-31/+36
The random selection of a node shouldn't favor repeats that occur in the hardcoded and DNS seed node lists. Remove hardcoded ":18080" address which gives parse error. Test: bitmonerod --log-level 2 The seed node list displayed at startup shouldn't show duplicate addresses (includes port).
2015-05-20Merge pull request #290Riccardo Spagni5-26/+57
fee8424 Allow name@domain.tld for OpenAlias lookups (warptangent) a0fe18f Revert "Allow name@domain.tld for OpenAlias lookups" (warptangent)
2015-05-20Merge pull request #288Riccardo Spagni10-14/+71
f278fe3 s/terget/target/ (moneromooo-monero) d8ee0a9 print limits when running limit commands with no arguments (moneromooo-monero)
2015-05-20Merge pull request #287Riccardo Spagni2-9/+17
d1eac1b Support debugging command --pop-blocks on in-memory blockchain (warptangent)
2015-05-20Merge pull request #285Riccardo Spagni2-0/+9
087d7f3 Add spendkey dump to simplewallet (luigi1111)
2015-05-19Add spendkey dump to simplewalletluigi11112-0/+9
2015-05-19Allow name@domain.tld for OpenAlias lookupswarptangent5-1/+43
Based on tewinget's update. Make OpenAlias address format independent of existing DNS functions. Add tests. Test: make debug-test cd build/debug/tests/unit_tests # test that regular DNS functions work, including IPv4 lookups. # also test function that converts OpenAlias address format make && ./unit_tests --gtest_filter=DNSResolver* # test that OpenAlias addresses like donate@getmonero.org work from # wallet tools make && ./unit_tests --gtest_filter=AddressFromURL.Success
2015-05-19Revert "Allow name@domain.tld for OpenAlias lookups"warptangent2-25/+14
This reverts commit b18368b635ba08aea541ef52ebc74180822644a2.
2015-05-18Check if LMDB needs resize every 1000 blocksThomas Winget1-1/+1
(this was 10 for testing purposes)
2015-05-18null out batch txn pointer as needed (BlockchainLMDB)Thomas Winget1-4/+5
2015-05-17s/terget/target/moneromooo-monero6-13/+13
2015-05-17print limits when running limit commands with no argumentsmoneromooo-monero5-3/+60
It's more user friendly that an error message saying the command does not exist.
2015-05-16Support debugging command --pop-blocks on in-memory blockchainwarptangent2-9/+17
Add public method blockchain_storage::debug_pop_block_from_blockchain() Ensure blockchain_import calls destructors before exit. To test: DATABASE=memory make release // create blockchain.bin from blockchain.raw if needed build/release/bin/blockchain_import --block-stop 1000 // try popping a single block build/release/bin/blockchain_import --pop-blocks 1
2015-05-16LMDB should now dynamically resize the mapsizeThomas Winget2-60/+187
Some filesystems (*cough* NTFS *cough*) aren't good with sparse files, so this makes LMDB dynamically resize its mapsize as needed. Note: the check interval is currently every 10 blocks (for testing) and will probably need to change to 1000 or something. Default mapsize set to 1GiB. Blockchain conversion tools using batching will probably segfault, I'll fix that in the next commit.
2015-05-16Merge pull request #286Riccardo Spagni4-52/+58
d35bffb Allow BlockchainLMDB to be opened in read-only mode (warptangent) 73d3511 Rename "--block-number" option to "--block-stop" (warptangent) 2b2dbd8 Check if chunk size is zero instead of negative (warptangent)
2015-05-16Allow BlockchainLMDB to be opened in read-only modewarptangent2-4/+11
Have blockchain_export use read-only mode when source is BlockchainLMDB.
2015-05-15Move mdb_txn_safe implementation to cpp fileThomas Winget2-51/+58
2015-05-15Rename "--block-number" option to "--block-stop"warptangent3-46/+45
Update help output for this and other options.
2015-05-15Check if chunk size is zero instead of negativewarptangent1-2/+2
This corrects an unnecessary check and fixes compile error on OS X.
2015-05-14Merge pull request #284Riccardo Spagni2-14/+46
b1d92bc Fixes changes to sort tx by fee per kb (Thomas Winget)
2015-05-14Merge pull request #283Riccardo Spagni1-1/+4
5c025f9 Check for Clang before adding compiler flag (warptangent)
2015-05-13Fixes changes to sort tx by fee per kbThomas Winget2-14/+46
2015-05-13Check for Clang before adding compiler flagwarptangent1-1/+4
See eb565a1ce208c543392808559ddea709eb1c935b
2015-05-13Merge pull request #281Riccardo Spagni13-619/+969
ac011b4 Rename src/blockchain_converter/ to src/blockchain_utilities/ (warptangent) ed9c639 Add --block-number option to blockchain_import (warptangent) 1eb4c66 Update blockchain utilities with portable bootstrap file format (warptangent) 54bd9c1 Add MDB_NORDAHEAD as a supported LMDB flag for blockchain_import (warptangent) a52496d Condense #if directives (warptangent) 8c1a188 Add basic "pop blocks" command to blockchain_import for debugging (warptangent) 71af046 Update log statements (warptangent)
2015-05-13Merge pull request #280Riccardo Spagni3-11/+11
2ff0d75 Fix missing virtual destructor (Sergey Kazenyuk) eb565a1 Suppress 'register storage class is deprecated' warning in boost dependency library (Sergey Kazenyuk)
2015-05-13Merge pull request #277Riccardo Spagni1-1/+16
48926d0 Fix incompatibility with blockchain exporter when source is LMDB (warptangent)
2015-05-13Merge branch 'tewinget-sort_tx_by_fee_per_kb'Riccardo Spagni2-12/+40
2015-05-13resolved merge conflict in tx_pool.cppRiccardo Spagni2-12/+40
2015-05-13Merge pull request #274Riccardo Spagni2-14/+25
b18368b Allow name@domain.tld for OpenAlias lookups (Thomas Winget)
2015-05-08Rename src/blockchain_converter/ to src/blockchain_utilities/warptangent10-2/+2
Update appropriate files (CMakeLists.txt, README.md)
2015-05-08Add --block-number option to blockchain_importwarptangent1-7/+17
This enables the importer to stop after reaching a specified block number (zero-based index), before reaching the end of the source blockchain.
2015-05-08Update blockchain utilities with portable bootstrap file formatwarptangent8-460/+755
Remove repeated coinbase tx in each exported block's data. Add resume from last exported height to blockchain_export, making it the default behavior when the file already exists. Start reorganizing the utilities. Various cleanup. Update output, including referring to both height and block numbers as zero-based instead of one-based. This better matches the block data, rather than just some parts of the existing codebase. Use smaller default batch sizes for importer when verifying, so progress is saved more frequently. Use small default batch size (1000) for importer on Windows, due to current issue with big transaction sizes on LMDB. file format ----------- [4-byte magic | variable-length header | block data] header ------ 4-byte file_info length file_info struct file format major version file format minor version header length (includes file_info struct) [rest of header, padded with 0 bytes up to header length] block data ---------- 4-byte chunk/block_package length block_package struct block txs (coinbase/miner tx included already in block) block_size cumulative_difficulty coins_generated 4-byte chunk/block_package length block_package struct [...]
2015-05-08Add MDB_NORDAHEAD as a supported LMDB flag for blockchain_importwarptangent1-8/+2
2015-05-08Condense #if directiveswarptangent1-9/+2
2015-05-08Add basic "pop blocks" command to blockchain_import for debuggingwarptangent1-0/+58
Usage: blockchain_import --pop-blocks <num_blocks>
2015-05-08Update log statementswarptangent3-3/+3
Use filesystem path conversion to string() instead of c_str(). Windows may otherwise output an address.
2015-05-08Fix incompatibility with blockchain exporter when source is LMDBwarptangent1-1/+16
Instantiate BlockchainDB in blockchain exporter to reflect recent updates. This applies when blockchain_export.h defines SOURCE_DB as DB_LMDB.
2015-05-06Merge branch 'clang_fixes' into clang_fixes-masterSergey Kazenyuk3-11/+11
2015-05-06Merge pull request #269Riccardo Spagni7-17/+108
641d824 Keep memory pool consistent when stuck tx removed (warptangent) b76857f Add mempool output to daemon via command and RPC (warptangent)
2015-05-05Merge pull request #268Riccardo Spagni3-8/+72
2717883 DNS Checkpoint updating-related fixes/changes (Thomas Winget)
2015-05-05Merge pull request #267Riccardo Spagni1-7/+2
bed2331 Require BerkeleyDB to be installed (for now) if building non-static (Thomas Winget)
2015-05-05Merge pull request #265Riccardo Spagni1-1/+1
1b19ee0 disable non-working optimized slow_hash on 32 bit intel (Javier Smooth)
2015-04-30Sort txs by per-kb-fee for minersThomas Winget2-7/+35
2015-04-30When removing 'stuck' transactions, don't ignore the first tx in the poolThomas Winget1-5/+5
2015-04-29Allow name@domain.tld for OpenAlias lookupsThomas Winget2-14/+25
2015-04-23Keep memory pool consistent when stuck tx removedwarptangent1-0/+1
When a stuck tx is removed from memory pool, first remove the associated spent key images.
2015-04-23Add mempool output to daemon via command and RPCwarptangent7-17/+107
This is for the "print_pool" command and "get_transaction_pool" RPC method. Add mempool's spent key images to the results.
2015-04-22DNS Checkpoint updating-related fixes/changesThomas Winget3-8/+72
Only one thread will be doing the updating. Two valid responses must match, and the first two that match will be used.
2015-04-22Require BerkeleyDB to be installed (for now) if building non-staticThomas Winget1-7/+2
2015-04-20Fix missing virtual destructorSergey Kazenyuk2-2/+4
2015-04-20Suppress 'register storage class is deprecated' warning in boost dependency ↵Sergey Kazenyuk1-2/+2
library
2015-04-14update lmdb64Riccardo Spagni22-365/+201
2015-04-13disable non-working optimized slow_hash on 32 bit intelJavier Smooth1-1/+1
2015-04-11Merge pull request #261Riccardo Spagni1-1/+1
b7d8728 Don't recommend --HEAD for brew users (Sammy Libre)
2015-04-11Don't recommend --HEAD for brew usersSammy Libre1-1/+1
2015-04-11Merge pull request #260Riccardo Spagni9-8/+17
32c19c6 [fix] log level change. compilation: dns, tests (rfree2monero)
2015-04-10[fix] log level change. compilation: dns, testsrfree2monero9-8/+17
old unbound #warning does not block compilation unit tests build fine. Even though the RPC/P2P network type is required again