Riccardo Spagni
c00ac446fd
Merge pull request #4854
...
bd98e99c
Removed a lot of unnecessary includes (Martijn Otto)
2018-12-04 17:08:42 +02:00
moneromooo-monero
affff949f9
blockchain: fix race between two external mining threads
2018-12-02 13:08:41 +00:00
moneromooo-monero
aba9a9c277
daemon: stop miner before we bring the whole thing down
...
This avoids the miner erroring out trying to submit blocks
to a core that's already shut down (and avoids pegging
the CPU while we're busy shutting down).
2018-11-30 15:10:25 +00:00
Jason Wong
dc1c12528d
add command pop_blocks
...
add new public method to Blockchain and update according to code review
update after review: better lock/unlock, try catch and coding style
2018-11-28 12:20:28 +01:00
moneromooo-monero
756684bb28
blockchain: avoid unnecessary DB lookups when syncing
...
Some of the inputs for block in a span will be from other earlier
blocks in that span. Keep track of those outputs so we don't have
to look them up again after those early blocks are added to the
blockchain.
2018-11-27 14:03:06 +00:00
moneromooo-monero
e98ae34e4b
core: fix adding new pre-hoh block when a tx is already in the pool
2018-11-26 23:45:01 +00:00
moneromooo-monero
fc98f7a0a1
rpc: speedup get_outs.bin
2018-11-26 18:56:23 +00:00
moneromooo-monero
d4f50cb109
remove some unused code
...
Found by codacy.com
2018-11-23 15:37:36 +00:00
moneromooo-monero
611639710d
a few minor (but easy) performance tweaks
...
Found by codacy.com
2018-11-23 15:36:48 +00:00
moneromooo-monero
60f36386e4
Avoid unnecessary temp block and copy ctor
...
block already has a default ctor, and the extra object
churn due to its innards (vectors, etc) is pointless.
2018-11-19 17:57:17 +00:00
moneromooo-monero
31d80027b5
tests: add unit tests for get_output_distribution
2018-11-16 19:21:45 +00:00
moneromooo-monero
0936dae8a4
blockchain: remove "0 is height" shortcut from get_output_distribution
...
This prevents asking for just 0, and the RPC layer already does this
2018-11-16 10:03:02 +00:00
moneromooo-monero
872c7eb26a
Revert "blockchain: simplify output distribution code"
...
This reverts commit b2bb9312a7
.
2018-11-16 10:02:59 +00:00
Riccardo Spagni
c37c70f459
Merge pull request #4806
...
ac23b10f
blockchain: fix innocuous difficulty cache inconsistency (moneromooo-monero)
3b14d972
blockchain: use uint64_t for block height, not size_t (moneromooo-monero)
2018-11-16 11:16:49 +02:00
Riccardo Spagni
9827958f5e
Merge pull request #4768
...
cf552c75
tx_pool: allow take_tx to work without m_txs_by_fee_and_receive_time (moneromooo-monero)
2018-11-16 10:59:25 +02:00
Riccardo Spagni
e90ee7548c
Merge pull request #4765
...
09dbd9cb
tx_pool: fix comment about transaction_prefix (moneromooo-monero)
2018-11-16 10:58:42 +02:00
Martijn Otto
bd98e99c80
Removed a lot of unnecessary includes
2018-11-15 17:29:34 +01:00
Riccardo Spagni
0cc3fc3756
Merge pull request #4769
...
5808530f
blockchain: remove unused output_scan_worker parameter (moneromooo-monero)
1426209a
blockchain: don't run threads if we have just one function to run (moneromooo-monero)
6f7a5fd4
db_lmdb: slight speedup getting array data from the blockchain (moneromooo-monero)
99fbe100
db_lmdb: save some string copies for readonly db keys/values (moneromooo-monero)
bf31447e
tx_pool: speed up take_tx for transactions from blocks (moneromooo-monero)
4f005a77
tx_pool: remove unnecessary get_transaction_hash (moneromooo-monero)
593ef598
perf_timer: call reserve on new timer array (moneromooo-monero)
6ecc99ad
core: avoid unnecessary tx/blob conversions (moneromooo-monero)
00cc1a16
unit_tests: notify test special case for the usual weirdo (moneromooo-monero)
2018-11-14 21:35:03 +02:00
Riccardo Spagni
299d75b209
Merge pull request #4735
...
73e504c1
rpc: adjust ring size error message now that too high is also possible (moneromooo-monero)
a5ca7f4f
core: fix unmixable special case allowing ring size below 11 (moneromooo-monero)
2018-11-06 21:31:14 +02:00
moneromooo-monero
3dba7f252e
protocol: option to pad transaction relay to the next kB
...
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.
2018-11-06 15:47:05 +00:00
moneromooo-monero
ac23b10f15
blockchain: fix innocuous difficulty cache inconsistency
...
This inconsistent state would not actually be used in practice
2018-11-05 14:47:52 +00:00
moneromooo-monero
3b14d9727b
blockchain: use uint64_t for block height, not size_t
...
for consistency
2018-11-05 14:47:48 +00:00
xiphon
b3067962fa
cryptonote_core: avoid gratuitous recalculations in check_block_rate()
2018-11-05 00:13:51 +00:00
Riccardo Spagni
adf4eb8d50
Merge pull request #4688
...
5a2e54a1
Fix prune using receive time as tx_weight (doy-lee)
2018-11-04 20:45:06 +02:00
Riccardo Spagni
5918ef93f8
Merge pull request #4683
...
3a85af40
core: fix handle_incoming_tx* comment about return value (moneromooo-monero)
2018-11-04 20:43:08 +02:00
moneromooo-monero
5808530f54
blockchain: remove unused output_scan_worker parameter
2018-11-04 13:23:05 +00:00
moneromooo-monero
1426209a10
blockchain: don't run threads if we have just one function to run
2018-11-04 13:23:02 +00:00
xiphon
233f00c601
cryptonote_core: fix build error gcc 5.4.0 'sign-compare'
2018-11-01 22:57:08 +00:00
moneromooo-monero
bf31447e9b
tx_pool: speed up take_tx for transactions from blocks
...
This happens for every historical tx when syncing, and the
unnecessary parsing is actually showing up on profile.
Since these are kept cached for just one block, this does
not increase memory usage after syncing.
2018-11-01 15:51:28 +00:00
moneromooo-monero
4f005a77c2
tx_pool: remove unnecessary get_transaction_hash
2018-11-01 15:51:24 +00:00
moneromooo-monero
6ecc99ad1f
core: avoid unnecessary tx/blob conversions
2018-11-01 15:51:19 +00:00
moneromooo-monero
cf552c752d
tx_pool: allow take_tx to work without m_txs_by_fee_and_receive_time
...
This should make it possible to have two daemons running on the
same database again.
2018-10-31 14:45:02 +00:00
moneromooo-monero
09dbd9cbbc
tx_pool: fix comment about transaction_prefix
...
It was leftover from a change that was undone before commit,
but the comment change was let through
2018-10-31 12:15:38 +00:00
moneromooo-monero
a5ca7f4fb5
core: fix unmixable special case allowing ring size below 11
2018-10-27 11:16:25 +00:00
Riccardo Spagni
056a58d13f
Merge pull request #4536
...
fd62b6e7
blocks: use auto-generated .c files instead of 'LD -r -b binary' (xiphon)
2018-10-26 22:20:39 +02:00
Riccardo Spagni
557c17e206
Merge pull request #4408
...
341b3931
cryptonote_core: warn when the block rate deviates from expectations (moneromooo-monero)
2018-10-26 22:18:41 +02:00
Riccardo Spagni
1c91963dcd
Merge pull request #4308
...
9907ea06
cryptonote: sort tx_extra fields (moneromooo-monero)
2018-10-26 22:18:28 +02:00
doy-lee
5a2e54a1cb
Fix prune using receive time as tx_weight
2018-10-23 10:03:45 +11:00
xiphon
fd62b6e79f
blocks: use auto-generated .c files instead of 'LD -r -b binary'
2018-10-22 01:12:00 +03:00
moneromooo-monero
3a85af403d
core: fix handle_incoming_tx* comment about return value
2018-10-21 17:09:21 +00:00
Riccardo Spagni
5c418c0522
Merge pull request #4522
...
a39c0358
blockchain: add check test options are given for fakechain mode (moneromooo-monero)
2018-10-20 20:40:16 +02:00
Riccardo Spagni
a38299801f
Merge pull request #4666
...
cf75ee72
blockchain: move two new verification errors to the verify category (moneromooo-monero)
2018-10-20 20:38:37 +02:00
Riccardo Spagni
93f2c13a39
Merge pull request #4637
...
c39e0a17
core: don't verify range proofs multiple times (moneromooo-monero)
2018-10-20 20:36:33 +02:00
moneromooo-monero
cf75ee722a
blockchain: move two new verification errors to the verify category
...
Lest we get people get scared again
2018-10-19 21:11:12 +00:00
stoffu
776aefdac1
tx_pool: revert #4592 and move bin2hex conversion to on_get_transaction_pool
2018-10-18 08:01:56 +09:00
moneromooo-monero
c39e0a1706
core: don't verify range proofs multiple times
2018-10-17 16:23:10 +00:00
Riccardo Spagni
c531df734f
Merge pull request #4389
...
6844ae1b
tx_pool: avoid parsing a whole tx if only the prefix is needed (moneromooo-monero)
2018-10-15 13:36:15 +02:00
stoffu
a677492f1b
tx_pool: store hex string instead of raw binary to tx_blob of get_transaction_pool RPC
...
Inspired by https://github.com/masari-project/masari/issues/93
2018-10-15 11:57:02 +09:00
Riccardo Spagni
ac5674524a
Revert "Merge pull request #4472 "
...
This reverts commit 79d46c4d55
, reversing
changes made to c9fc61dbb5
.
2018-10-08 21:39:54 +02:00
moneromooo-monero
a39c035846
blockchain: add check test options are given for fakechain mode
...
Coverity 188616
2018-10-08 11:37:58 +00:00
moneromooo-monero
6844ae1b8d
tx_pool: avoid parsing a whole tx if only the prefix is needed
2018-10-08 10:18:01 +00:00
moneromooo-monero
9907ea0694
cryptonote: sort tx_extra fields
...
This removes some small amount of fingerprinting entropy.
There is no consensus rule to require this since this field
is technically free form, and a transaction is free to have
custom data in it.
2018-10-07 11:13:22 +00:00
xiphon
02d3ef7bda
blocks: use auto-generated .c files instead of 'LD -r -b binary'
2018-10-04 00:01:09 +00:00
Riccardo Spagni
d1d64327b6
Merge pull request #4476
...
fa9e54b6
build: fix gcc false positive 'stringop-overflow' warning (xiphon)
2018-10-02 22:38:32 +02:00
Riccardo Spagni
e2da7c7817
Merge pull request #4467
...
fa942ef6
daemon: silence daemon update warnings on testnet (iDunk5400)
2018-10-02 22:36:57 +02:00
xiphon
fa9e54b6ee
build: fix gcc false positive 'stringop-overflow' warning
2018-09-30 10:58:00 +00:00
Riccardo Spagni
83d8f03c23
Merge pull request #4333
...
73403004
add --block-notify to monerod and --tx-notify to monero-wallet-{cli,rpc} (moneromooo-monero)
2018-09-29 22:20:44 +02:00
iDunk5400
fa942ef610
daemon: silence daemon update warnings on testnet
2018-09-29 14:42:10 +02:00
Riccardo Spagni
8bf5a00564
Merge pull request #4423
...
357441a2
add checkpoints for testnet and mainnet (Riccardo Spagni)
d9f666d7
update checkpoints.dat (Riccardo Spagni)
6b1b4e83
update version to 13.0 (Riccardo Spagni)
6f153533
update readme with v13.0 (Riccardo Spagni)
2018-09-25 13:33:52 +02:00
Riccardo Spagni
689758d691
Merge pull request #4435
...
c39ad0cd
tx_pool: fix tx removal at startup keeping references (moneromooo-monero)
2018-09-25 13:11:05 +02:00
moneromooo-monero
c39ad0cd72
tx_pool: fix tx removal at startup keeping references
2018-09-25 09:58:37 +00:00
moneromooo-monero
50981c40ce
blockchain: add stagenet v8 and v9, two weeks before mainnet
2018-09-24 20:43:39 +00:00
Riccardo Spagni
d9f666d78c
update checkpoints.dat
2018-09-23 09:51:15 +02:00
Riccardo Spagni
0645dcdbdb
Merge pull request #4378
...
ac934663
rpc: add a "is an update available" flag in get_info (moneromooo-monero)
2018-09-21 20:41:53 +02:00
Riccardo Spagni
d6893aedf6
Merge pull request #4369
...
b2bb9312
blockchain: simplify output distribution code (moneromooo-monero)
befdcbf4
db_lmdb: do not use base for cumulative distribution (moneromooo-monero)
2018-09-21 20:31:21 +02:00
moneromooo-monero
341b3931ed
cryptonote_core: warn when the block rate deviates from expectations
...
The warning threshold is set to allow a false positive every
ten days on average.
2018-09-20 14:01:52 +00:00
Riccardo Spagni
22a6591a70
Merge pull request #4325
...
4e1e9a60
blockchain: add mainnet v8 height targetting 18 october (moneromooo-monero)
2018-09-18 17:39:16 +02:00
Riccardo Spagni
3584a852a3
Merge pull request #4372
...
1660b0e7
tx_pool: make the max tx size a consensus rule from v8 (moneromooo-monero)
2018-09-14 12:56:01 +02:00
moneromooo-monero
be001326d1
remove obsolete daemon selection of fake outs and old tx construction
2018-09-14 10:51:45 +00:00
moneromooo-monero
ac9346637a
rpc: add a "is an update available" flag in get_info
...
Make it easier for a user to be told when to update
2018-09-14 09:28:03 +00:00
moneromooo-monero
1660b0e72c
tx_pool: make the max tx size a consensus rule from v8
2018-09-13 09:43:29 +00:00
moneromooo-monero
b2bb9312a7
blockchain: simplify output distribution code
2018-09-12 19:20:16 +00:00
moneromooo-monero
9137ad2c63
blockchain: add a testnet v9 a day after v8
...
So that bulletproofs become mandatory
2018-09-11 13:38:36 +00:00
moneromooo-monero
5ffb2ff9b7
v8: per byte fee, pad bulletproofs, fixed 11 ring size
2018-09-11 13:38:07 +00:00
moneromooo-monero
c444b1b229
require canonical multi output bulletproof layout
2018-09-11 13:37:39 +00:00
moneromooo-monero
2a8fcb421b
Bulletproof aggregated verification and tests
...
Also constrains bulletproofs to simple rct, for simplicity
2018-09-11 13:37:37 +00:00
moneromooo-monero
bacf0a1e2f
bulletproofs: add aggregated verification
...
Ported from sarang's java code
2018-09-11 13:37:32 +00:00
moneromooo-monero
9ce9f8caf6
bulletproofs: add multi output bulletproofs to rct
2018-09-11 13:37:28 +00:00
luigi1111
03738fdde1
Merge pull request #4276
...
48a7bc4
tx_pool: fix infinite loop when failing to find a meta record (moneromooo-monero)
2018-09-04 13:25:44 -05:00
luigi1111
5f1bbe3bce
Merge pull request #4268
...
1f2409e
Do memwipe for critical secret keys copied to rct::key (stoffu)
2018-09-04 13:16:04 -05:00
moneromooo-monero
4e1e9a607e
blockchain: add mainnet v8 height targetting 18 october
...
and v9 a day later
2018-09-02 16:02:17 +00:00
luigi1111
ec6982f8eb
Merge pull request #4240
...
83f5587
blockchain: use uint64_t for height, not size_t (moneromooo-monero)
2018-08-22 20:58:55 -05:00
luigi1111
4a4ea78ecd
Merge pull request #4204
...
b278b83
core: sync database based on bytes added, not blocks added (moneromooo-monero)
2018-08-22 20:43:51 -05:00
moneromooo-monero
48a7bc4280
tx_pool: fix infinite loop when failing to find a meta record
2018-08-19 17:47:05 +00:00
stoffu
1f2409e9e2
Do memwipe for critical secret keys copied to rct::key
2018-08-16 22:26:30 +09:00
moneromooo-monero
82d1b74500
core: cache block template where possible
...
This avoids constant rechecking of the same things each time
a miner asks for the block template. The tx pool maintains
a cookie to allow users to detect when the pool state changed,
which means the block template needs rebuilding.
2018-08-16 12:44:33 +00:00
luigi1111
fd3b71129b
Merge pull request #4164
...
8e24533
blockchain: some batch tx scanning speedup (moneromooo-monero)
2018-08-15 17:31:24 -05:00
moneromooo-monero
b278b83860
core: sync database based on bytes added, not blocks added
...
Blocks have a very wide range, whereas actual size is the relevant
quantity to consider when syncing
2018-08-12 16:13:46 +00:00
moneromooo-monero
83f5587167
blockchain: use uint64_t for height, not size_t
2018-08-09 17:09:26 +00:00
luigi1111
dda05f357a
Merge pull request #4108
...
8c05237
blockchain: cache next block difficulty after adding a block (moneromooo-monero)
2018-07-27 14:26:01 -05:00
moneromooo-monero
8e24533a7f
blockchain: some batch tx scanning speedup
2018-07-21 12:05:12 +01:00
luigi1111
61eea83978
Merge pull request #4081
...
d95bc44
blockchain: fix getting invalid block data on failure (moneromooo-monero)
2018-07-19 14:12:30 -05:00
luigi1111
9474567d76
Merge pull request #4076
...
aa0ea0a
blockchain: set the m_verifivation_failed flag in a couple more places (moneromooo-monero)
2018-07-19 14:11:24 -05:00
luigi1111
5cade94189
Merge pull request #4047
...
41b4bf9
tx_pool: cache check_tx_inputs results (moneromooo-monero)
2018-07-19 14:02:20 -05:00
luigi1111
21afa71ba6
Merge pull request #3981
...
45e419b
db: store cumulative rct output distribution in the db for speed (moneromooo-monero)
2018-07-19 13:39:24 -05:00
luigi1111
d518dae4bf
Merge pull request #3973
...
50af357
alt_chain_info can now give more info about a particular alt chain (moneromooo-monero)
2018-07-19 13:37:10 -05:00
luigi1111
025187e6c9
Merge pull request #3854
...
149da42
db_lmdb: enable batch transactions by default (stoffu)
34cb6b4
add --regtest and --fixed-difficulty for regression testing (vicsn)
9e1403e
update get_info RPC and bump RPC version (vicsn)
207b66e
first new functional tests (vicsn)
2018-07-19 13:35:25 -05:00
moneromooo-monero
45e419bd5c
db: store cumulative rct output distribution in the db for speed
...
This gets rid of the temporary precalc cache.
Also make the RPC able to send data back in binary or JSON,
since there can be a lot of data
This bumps the LMDB database format to v3, with migration.
2018-07-13 11:37:04 +01:00
moneromooo-monero
8c0523771f
blockchain: cache next block difficulty after adding a block
...
It's not 100% certain it'll be needed, but it avoids getinfo
needing the blockchain lock and potentially blocking
2018-07-07 19:34:21 +01:00
moneromooo-monero
d95bc44c6b
blockchain: fix getting invalid block data on failure
2018-06-29 15:50:34 +01:00