aboutsummaryrefslogtreecommitdiff
path: root/tests/unit_tests
Commit message (Collapse)AuthorAgeFilesLines
...
* | cryptonote: avoid double parsing blocks when syncingmoneromooo-monero2019-03-051-2/+2
| |
* | save some database calls when getting top block hash and heightmoneromooo-monero2019-03-051-1/+3
| |
* | Avoid repeated (de)serialization when syncingmoneromooo-monero2019-03-052-29/+29
|/
* Merge pull request #5117Riccardo Spagni2019-03-041-1/+0
|\ | | | | | | fcd00079 unit_tests: remove leftover debug print (moneromooo-monero)
| * unit_tests: remove leftover debug printmoneromooo-monero2019-02-011-1/+0
| |
* | ArticMine's new block weight algorithmmoneromooo-monero2019-03-046-175/+414
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | This curbs runaway growth while still allowing substantial spikes in block weight Original specification from ArticMine: here is the scaling proposal Define: LongTermBlockWeight Before fork: LongTermBlockWeight = BlockWeight At or after fork: LongTermBlockWeight = min(BlockWeight, 1.4*LongTermEffectiveMedianBlockWeight) Note: To avoid possible consensus issues over rounding the LongTermBlockWeight for a given block should be calculated to the nearest byte, and stored as a integer in the block itself. The stored LongTermBlockWeight is then used for future calculations of the LongTermEffectiveMedianBlockWeight and not recalculated each time. Define: LongTermEffectiveMedianBlockWeight LongTermEffectiveMedianBlockWeight = max(300000, MedianOverPrevious100000Blocks(LongTermBlockWeight)) Change Definition of EffectiveMedianBlockWeight From (current definition) EffectiveMedianBlockWeight = max(300000, MedianOverPrevious100Blocks(BlockWeight)) To (proposed definition) EffectiveMedianBlockWeight = min(max(300000, MedianOverPrevious100Blocks(BlockWeight)), 50*LongTermEffectiveMedianBlockWeight) Notes: 1) There are no other changes to the existing penalty formula, median calculation, fees etc. 2) There is the requirement to store the LongTermBlockWeight of a block unencrypted in the block itself. This is to avoid possible consensus issues over rounding and also to prevent the calculations from becoming unwieldy as we move away from the fork. 3) When the EffectiveMedianBlockWeight cap is reached it is still possible to mine blocks up to 2x the EffectiveMedianBlockWeight by paying the corresponding penalty. Note: the long term block weight is stored in the database, but not in the actual block itself, since it requires recalculating anyway for verification.
* Adding initial support for broadcasting transactions over TorLee Clagett2019-01-284-8/+936
| | | | | | | | | - Support for ".onion" in --add-exclusive-node and --add-peer - Add --anonymizing-proxy for outbound Tor connections - Add --anonymous-inbounds for inbound Tor connections - Support for sharing ".onion" addresses over Tor connections - Support for broadcasting transactions received over RPC exclusively over Tor (else broadcast over public IP when Tor not enabled).
* notify: handle arbitrary tagsmoneromooo-monero2019-01-281-1/+1
|
* Merge pull request #5064Riccardo Spagni2019-01-281-0/+36
|\ | | | | | | 5ecc5cc7 added two tests for partial word and case tolerance in mnemonics (Paul Shapiro)
| * added two tests for partial word and case tolerance in mnemonicsPaul Shapiro2019-01-111-1/+36
| |
* | Merge pull request #5052Riccardo Spagni2019-01-285-38/+23
|\ \ | | | | | | | | | | | | | | | | | | | | | b6534c40 ringct: remove unused senderPk from ecdhTuple (moneromooo-monero) 7d375981 ringct: the commitment mask is now deterministic (moneromooo-monero) 99d946e6 ringct: encode 8 byte amount, saving 24 bytes per output (moneromooo-monero) cdc3ccec ringct: save 3 bytes on bulletproof size (moneromooo-monero) f931e16c add a bulletproof version, new bulletproof type, and rct config (moneromooo-monero)
| * | ringct: remove unused senderPk from ecdhTuplemoneromooo-monero2019-01-222-4/+0
| | | | | | | | | | | | This was an early ringct field, which was never used in production
| * | ringct: the commitment mask is now deterministicmoneromooo-monero2019-01-222-36/+0
| | | | | | | | | | | | | | | | | | saves space in the tx and is safe Found by knaccc
| * | ringct: encode 8 byte amount, saving 24 bytes per outputmoneromooo-monero2019-01-222-5/+21
| | | | | | | | | | | | Found by knaccc
| * | add a bulletproof version, new bulletproof type, and rct configmoneromooo-monero2019-01-224-10/+19
| | | | | | | | | | | | This makes it easier to modify the bulletproof format
* | | Pruningmoneromooo-monero2019-01-223-0/+243
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The blockchain prunes seven eighths of prunable tx data. This saves about two thirds of the blockchain size, while keeping the node useful as a sync source for an eighth of the blockchain. No other data is currently pruned. There are three ways to prune a blockchain: - run monerod with --prune-blockchain - run "prune_blockchain" in the monerod console - run the monero-blockchain-prune utility The first two will prune in place. Due to how LMDB works, this will not reduce the blockchain size on disk. Instead, it will mark parts of the file as free, so that future data will use that free space, causing the file to not grow until free space grows scarce. The third way will create a second database, a pruned copy of the original one. Since this is a new file, this one will be smaller than the original one. Once the database is pruned, it will stay pruned as it syncs. That is, there is no need to use --prune-blockchain again, etc.
* | Merge pull request #5028Riccardo Spagni2019-01-181-1/+1
|\ \ | | | | | | | | | | | | 464097e5 blockchain_ancestry: allow getting ancestry of a single output (moneromooo-monero) a6216d1a blockchain_db: allow getting output keys without commitment (moneromooo-monero)
| * | blockchain_db: allow getting output keys without commitmentmoneromooo-monero2019-01-161-1/+1
| | | | | | | | | | | | | | | Since the commitment has to be calculated for non rct outputs, it slows down a lot unnecessarily if we don't need it
* | | epee: speedup word/number matchingmoneromooo-monero2019-01-161-0/+84
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Number matching semantics are slightly changed: since this is used as a filter to check whether a number is signed and/or floating point, we can speed this up further. strto* functions are called afterwards and will error out where necessary. We now also accept numbers like .4 which were not accepted before. The strto* calls on a boost::string_ref will not access unallocated memory since the parsers always stop at the first bad character, and the original string is zero terminated. in arbitrary time measurement units for some arbitrary test case: match_number2: 235 -> 70 match_word2: 330 -> 108
* | Merge pull request #4984Riccardo Spagni2019-01-161-1/+1
|\ \ | | | | | | | | | 008647d7 blockchain_db: speedup tx output gathering (moneromooo-monero)
| * | blockchain_db: speedup tx output gatheringmoneromooo-monero2018-12-181-1/+1
| | | | | | | | | | | | We know all the data we'll want for getblocks.bin is contiguous
* | | Merge pull request #4976Riccardo Spagni2019-01-162-4/+73
|\ \ \ | | | | | | | | | | | | 85665003 epee: better network buffer data structure (moneromooo-monero)
| * | | epee: better network buffer data structuremoneromooo-monero2018-12-232-4/+73
| |/ / | | | | | | | | | avoids pointless allocs and memcpy
* | | Make get_output_key method constmoneroexamples2019-01-071-2/+2
| | | | | | | | | | | | | | | | | | get_output_key method is commonly used when working with txs and their key images. Because the method is not const, passing blockchain object though const& or pointers to const is not possible in this context. This is especially problematic in external projects (e.g., projects in moneroexamples) that use monero C++ api to operate on the blockchain and txs. Thus, having get_output_key method will simplify moving blockchain object around through const references and pointers to const objects.
* | | Merge pull request #4952Riccardo Spagni2019-01-061-3/+3
|\ \ \ | | | | | | | | | | | | 570dd369 p2p: use vector instead of list for peer lists (moneromooo-monero)
| * | | p2p: use vector instead of list for peer listsmoneromooo-monero2018-12-071-3/+3
| | | |
* | | | Merge pull request #4941luigi11112018-12-311-5/+16
|\ \ \ \ | |_|/ / |/| | | | | | | 1cfd6f1 unit_tests: strengthen notify test against OS scheduling (moneromooo-monero)
| * | | unit_tests: strengthen notify test against OS schedulingmoneromooo-monero2018-12-051-5/+16
| | | |
* | | | Merge pull request #4901Riccardo Spagni2018-12-121-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | a48f2dab blockchain_prune_known_spent_data: blackball file is now optional (moneromooo-monero) 17b45725 Outputs where all amounts are known spent can now be pruned (moneromooo-monero)
| * | | | Outputs where all amounts are known spent can now be prunedmoneromooo-monero2018-11-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only for pre rct for obvious reasons. Note: DO NOT use a known spent list which includes outputs which are not known spent. If the list includes any output that's just strongly thought to be spent, but not provably so, you risk finding yourself unable to sync past the point where that output is spent. I estimate only 200 MB saved on current mainnet though, unless the new blackballing rule unearths a good amount of large-amount-set extra spent outs.
* | | | | Merge pull request #4787Riccardo Spagni2018-12-121-0/+1
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | 3dba7f25 protocol: option to pad transaction relay to the next kB (moneromooo-monero)
| * | | | protocol: option to pad transaction relay to the next kBmoneromooo-monero2018-11-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To help protect one's privacy from traffic volume analysis for people using Tor or I2P. This will really fly once we relay txes on a timer rather than on demand, though. Off by default for now since it's wasteful and doesn't bring anything until I2P's in.
* | | | | Merge pull request #4895Riccardo Spagni2018-12-041-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | 3de7d52f unit_tests: fix malloc/delete mismatch (moneromooo-monero)
| * | | | | unit_tests: fix malloc/delete mismatchmoneromooo-monero2018-11-231-1/+1
| | | | | |
* | | | | | Merge pull request #4894Riccardo Spagni2018-12-045-9/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | aee7a4e3 wallet_rpc_server: do not use RPC data if the call failed (moneromooo-monero) 1a0733e5 windows_service: fix memory leak (moneromooo-monero) 0dac3c64 unit_tests: do not rethrow a copy of an exception (moneromooo-monero) 5d9915ab cryptonote: fix get_unit for non default settings (moneromooo-monero) d4f50cb1 remove some unused code (moneromooo-monero) 61163971 a few minor (but easy) performance tweaks (moneromooo-monero) 30023074 tests: slow_memmem now returns size_t (moneromooo-monero)
| * | | | | | unit_tests: do not rethrow a copy of an exceptionmoneromooo-monero2018-11-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Found by codacy.com
| * | | | | | remove some unused codemoneromooo-monero2018-11-233-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Found by codacy.com
| * | | | | | tests: slow_memmem now returns size_tmoneromooo-monero2018-11-231-4/+4
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes more sense than uint64_t for an offset, and agrees with the %zu used to print results. Found by codacy.com
* | | | / / move int-util.h to epeemoneromooo-monero2018-12-041-1/+1
| |_|_|/ / |/| | | |
* | | | | Merge pull request #4854Riccardo Spagni2018-12-041-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | bd98e99c Removed a lot of unnecessary includes (Martijn Otto)
| * | | | | Removed a lot of unnecessary includesMartijn Otto2018-11-151-1/+1
| | | | | |
* | | | | | Merge pull request #4850Riccardo Spagni2018-12-041-0/+29
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | b36353e2 unit_tests: add some hex parsing test for non hex input (xiphon) 6671110c unit_tests: add a test for parse_hexstr_to_binbuff (moneromooo-monero) f6187cd8 epee: speed up parse_hexstr_to_binbuff a little (Howard Chu)
| * | | | | | unit_tests: add some hex parsing test for non hex inputxiphon2018-11-151-0/+16
| | | | | | |
| * | | | | | unit_tests: add a test for parse_hexstr_to_binbuffmoneromooo-monero2018-11-151-0/+13
| |/ / / / /
* | | | | | Merge pull request #4848Riccardo Spagni2018-12-041-1/+4
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | | | | | | | | 80be2dca unit_tests: don't take the address of an unwrapped secret key (moneromooo-monero)
| * | | | | unit_tests: don't take the address of an unwrapped secret keymoneromooo-monero2018-11-161-1/+4
| |/ / / /
* | | | | Merge pull request #4821Riccardo Spagni2018-11-261-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | fc98f7a0 rpc: speedup get_outs.bin (moneromooo-monero)
| * | | | | rpc: speedup get_outs.binmoneromooo-monero2018-11-261-1/+1
| | |/ / / | |/| | |
* | | | | Merge pull request #4832Riccardo Spagni2018-11-262-0/+178
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | 9da6c52b unit_tests: add logging unit test (moneromooo-monero)
| * | | | unit_tests: add logging unit testmoneromooo-monero2018-11-092-0/+178
| |/ / /