Riccardo Spagni
4b2cc123ff
Merge pull request #2287
...
827afcb7
protocol: pass blockchain cumulative difficulty when syncing (moneromooo-monero)
2017-08-17 21:35:02 +02:00
moneromooo-monero
5a283078ec
cryptonote_protocol: large block sync size before v4
2017-08-17 13:11:52 +01:00
moneromooo-monero
827afcb7ea
protocol: pass blockchain cumulative difficulty when syncing
...
Not used yet.
2017-08-15 21:03:37 +01:00
Riccardo Spagni
3ff67323b7
Merge pull request #2288
...
c6e200a8
core: add --db-salvage command line flag (moneromooo-monero)
2017-08-15 20:57:26 +02:00
Riccardo Spagni
53dde37ceb
Merge pull request #2276
...
a1891ebe
tests: fix tests build (moneromooo-monero)
2017-08-15 20:53:41 +02:00
Riccardo Spagni
79479a3614
Merge pull request #2250
...
f4f7eeba
blockchain: log more info when we reject an orphan (moneromooo-monero)
2017-08-15 20:48:08 +02:00
Riccardo Spagni
12c70fedc0
Merge pull request #2246
...
d732c73e
blockchain: remove a few unused variables (moneromooo-monero)
2017-08-15 20:47:32 +02:00
Riccardo Spagni
1cf4665d2a
Merge pull request #2237
...
5d4ef719
core: speed up output index unique set calculation (moneromooo-monero)
19d7f568
perf_timer: allow profiling more granular than millisecond (moneromooo-monero)
bda8c598
epee: add nanosecond timer and pause/restart profiling macros (moneromooo-monero)
2017-08-15 20:45:47 +02:00
moneromooo-monero
c6e200a8ab
core: add --db-salvage command line flag
...
Use to load the database when the primary meta page is corrupted
2017-08-12 19:04:44 +01:00
moneromooo-monero
a1891ebea9
tests: fix tests build
...
Add get_fork_version and add_ideal_fork_version to core so
cryptonote_protocol does not have to need the Blockchain
class directly, as it's not in its dependencies, and add
those to the fake core classes in tests too.
2017-08-10 11:12:56 +01:00
moneromooo-monero
635929eaca
protocol: add checks for top block hard fork version
...
We won't even talk to a peer which claims a wrong version
for its top block. This will avoid syncing to known bad
peers in the first place.
Also add IP fails when failing to verify a block.
2017-08-09 10:28:41 +01:00
Riccardo Spagni
bff9fb9c8b
Merge pull request #2231
...
61770ec2
change mixin to ring size in user visible places (moneromooo-monero)
2017-08-07 22:53:15 +02:00
moneromooo-monero
61770ec2da
change mixin to ring size in user visible places
2017-08-07 21:12:27 +01:00
Riccardo Spagni
14f479bb9c
Merge pull request #2262
...
7f7d42f8
core: fix invalid memory access creating tx (moneromooo-monero)
2017-08-07 22:11:45 +02:00
Riccardo Spagni
62610a3a53
Merge pull request #2225
...
5d91b26c
blockchain: skip checking tx semantics in embedded block hash range (moneromooo-monero)
2017-08-07 22:10:09 +02:00
moneromooo-monero
7f7d42f890
core: fix invalid memory access creating tx
2017-08-07 21:09:19 +01:00
moneromooo-monero
38756d00ff
core: new API to disable DNS checkpoint lookups
2017-08-07 14:31:06 +01:00
Riccardo Spagni
6db8a60a18
Merge pull request #2149
...
158c3ecf
core: thread most of handle_incoming_tx (moneromooo-monero)
f57ee382
cryptonote_protocol: retry stale spans early (moneromooo-monero)
90df52e1
cryptonote_protocol: light cleanup (moneromooo-monero)
84e23156
cryptonote_protocol: avoid spurious SYNCHRONIZED OK messages (moneromooo-monero)
5be43fcd
cryptonote_protocol_handler: sync speedup (moneromooo-monero)
2017-08-07 15:24:58 +02:00
Riccardo Spagni
dc2747439c
Merge pull request #2243
...
4d873046
blockchain: add testnet v6 fork height at 971400 (moneromooo-monero)
2017-08-07 15:13:59 +02:00
Riccardo Spagni
ea46a5527a
Merge pull request #2234
...
214fd81e
some include cleanup (moneromooo-monero)
2017-08-07 15:13:07 +02:00
Riccardo Spagni
9b3b7f050b
Merge pull request #2230
...
5dd722be
core: add a message when loading checkpoints at init time (moneromooo-monero)
2017-08-07 15:12:42 +02:00
Riccardo Spagni
5cc53c7e49
Merge pull request #2226
...
14ec6ed8
tx_pool: remove obsolete unused m_config_folder field (moneromooo-monero)
2017-08-07 15:12:29 +02:00
Riccardo Spagni
a2dd125b1e
Merge pull request #2222
...
878205f1
core: fix lock ordering bug at init time (moneromooo-monero)
2017-08-07 15:11:51 +02:00
Riccardo Spagni
8048de268a
Merge pull request #2216
...
d8becf2e
blockchain: fix cryptonight buffer leak on exit (moneromooo-monero)
91aa90fc
blockchain: ensure all blocks get their longhash precalculated (moneromooo-monero)
ff4bcaed
blockchain: pass correct height to get_block_longhash (moneromooo-monero)
2017-08-07 15:11:04 +02:00
Riccardo Spagni
61ac6983f2
Merge pull request #2206
...
340feede
core: randomly shuffle outputs (moneromooo-monero)
2017-08-07 15:09:31 +02:00
Riccardo Spagni
0f36efbded
Merge pull request #2198
...
53af9768
blockchain: one off warning when seeing a block with unknown version (moneromooo-monero)
2017-08-07 15:08:31 +02:00
moneromooo-monero
4d87304683
blockchain: add testnet v6 fork height at 971400
2017-08-07 11:34:59 +01:00
moneromooo-monero
158c3ecff3
core: thread most of handle_incoming_tx
2017-08-07 09:33:20 +01:00
moneromooo-monero
f4f7eeba80
blockchain: log more info when we reject an orphan
...
We want to know what happened when a block is wrongly rejected
2017-08-04 23:26:55 +01:00
moneromooo-monero
d732c73e71
blockchain: remove a few unused variables
2017-08-03 11:26:55 +01:00
moneromooo-monero
5d4ef719b9
core: speed up output index unique set calculation
...
A sort+uniq step was done for every tx in a 200 block chunk,
causing a lot of repeated scanning as the size of the offset
map got larger with every added tx. We now do the step only
once at the end of the loop.
Doing it this way potentially uses more memory, but testing
shows that it's currently only about 2% more.
2017-08-01 14:06:12 +01:00
moneromooo-monero
214fd81e93
some include cleanup
2017-07-31 16:36:52 +01:00
moneromooo-monero
5dd722beaa
core: add a message when loading checkpoints at init time
...
This uses DNS, which can take a while, so it's useful to know
this is the culprit when loading pauses
2017-07-31 06:43:13 +01:00
moneromooo-monero
14ec6ed80d
tx_pool: remove obsolete unused m_config_folder field
2017-07-30 12:03:43 +01:00
moneromooo-monero
5d91b26c0f
blockchain: skip checking tx semantics in embedded block hash range
...
If the txes are bad, this'll be picked up by the block hash mismatch
since the tx merkle root is part of the block hash.
2017-07-30 09:48:00 +01:00
moneromooo-monero
878205f143
core: fix lock ordering bug at init time
2017-07-29 12:54:02 +01:00
moneromooo-monero
d8becf2ee1
blockchain: fix cryptonight buffer leak on exit
2017-07-28 10:19:17 +01:00
moneromooo-monero
91aa90fc79
blockchain: ensure all blocks get their longhash precalculated
...
If the number of blocks to check was not a multiple of the
number of preparation threads, the last few blocks would
not be included in the threaded long hash calculation.
Those would still get calculated when the block gets added
to the chain, however, so this was only a tiny performance
hit, rather than a security bug.
2017-07-27 18:18:49 +01:00
moneromooo-monero
ff4bcaed81
blockchain: pass correct height to get_block_longhash
2017-07-27 18:18:20 +01:00
moneromooo-monero
340feedee2
core: randomly shuffle outputs
...
They used to be sorted by amount, which was fine before rct,
but is now suboptimal, since amounts are not known anymore.
In particular, it would give a recipient knowledge of whether
change was higher or lower than the amount received.
2017-07-25 18:57:57 +01:00
moneromooo-monero
53af9768ce
blockchain: one off warning when seeing a block with unknown version
2017-07-24 15:25:46 +01:00
moneromooo-monero
a5031a7d02
core: forbid duplicate ring members from v6
...
This avoids someone adding what amounts to mixin 0 rings in
practice, as there is no other good reason to allow this.
2017-07-22 12:33:12 +01:00
Riccardo Spagni
42fc89b672
Merge pull request #2142
...
02d66db4
tx_pool: initialize padding in txpool meta structure (moneromooo-monero)
0722aea3
cryptonote_core: initialize checkpoint flag (moneromooo-monero)
2017-07-19 11:49:42 +02:00
moneromooo-monero
02d66db4b4
tx_pool: initialize padding in txpool meta structure
2017-07-02 18:45:29 +01:00
moneromooo-monero
0722aea3df
cryptonote_core: initialize checkpoint flag
2017-07-02 18:45:25 +01:00
Julien Klepatch
bdab3436d3
Fix mismatch of parameter name between header file and implementation for set_user_options()
2017-06-23 05:16:11 +08:00
Riccardo Spagni
78f965a9e2
Merge pull request #2082
...
235df7f4
blockchain_db: add a txpool tx getter which returns existence (moneromooo-monero)
2017-06-18 17:36:12 +02:00
moneromooo-monero
235df7f484
blockchain_db: add a txpool tx getter which returns existence
...
Avoids exception spam for the "nope, not found" case
2017-06-11 15:36:48 +01:00
Howard Chu
3fc22e7b78
Add histogram to poolstats
2017-06-04 22:48:14 +01:00
Riccardo Spagni
3d397325bf
Merge pull request #2063
...
d17c0fc2
Don't copy blockchain for coinbase_tx_sum (Howard Chu)
2017-06-01 19:33:43 +02:00
Riccardo Spagni
4a60e9e66e
Merge pull request #2062
...
31417d57
tx_pool: add missing blockchain lock in add_tx (moneromooo-monero)
2017-06-01 19:33:17 +02:00
Howard Chu
5414970dcd
Speedup print_pool_stats
...
Since we're just counting txs, there's no reason to deserialize all the blobs.
2017-06-01 17:34:03 +01:00
Howard Chu
d17c0fc2d0
Don't copy blockchain for coinbase_tx_sum
...
Changed Blockchain::for_all_blocks() to for_blocks_range()
Operate on blockchain in-place instead of building a copy first.
2017-06-01 14:14:24 +01:00
moneromooo-monero
31417d57da
tx_pool: add missing blockchain lock in add_tx
2017-05-31 22:55:13 +01:00
Riccardo Spagni
a4c13ea092
Merge pull request #2039
...
4b932ff3
changed crypto to cncrypto so it generated libcncrypto (Gentian)
2017-05-30 21:24:11 +02:00
Riccardo Spagni
907ce14b18
Merge pull request #2026
...
a5739201
Update sync time copy (xmr-eric)
2017-05-30 21:20:39 +02:00
Riccardo Spagni
545e2b003c
Merge pull request #1982
...
b52abd13
Move txpool to the database (moneromooo-monero)
2017-05-30 21:12:44 +02:00
moneromooo-monero
b52abd1370
Move txpool to the database
...
Integration could go further (ie, return_tx_to_pool calls should
not be needed anymore, possibly other things).
poolstate.bin is now obsolete.
2017-05-25 22:23:37 +01:00
Gentian
4b932ff314
changed crypto to cncrypto so it generated libcncrypto
...
fix a cmakelist
2017-05-23 07:45:40 -04:00
xmr-eric
a57392016b
Update sync time copy
2017-05-10 14:34:18 -04:00
Riccardo Spagni
865bb03ecf
Merge pull request #1968
...
5e5b8512
Fix obsolete OpenSSL API usage (hyc)
6c72d6a0
Fix Android recognition (hyc)
e65d66fe
Fix ARM64 identification (hyc)
a4673218
Clean up ARMv8-a aes_expand_key() (hyc)
a3d77901
Fix block_longhash_worker thread (hyc)
2017-04-24 10:46:23 +02:00
assylias
bff90264b8
Add expected total reward to RPC "getblocktemplate".
...
Only works from V5 fork onward - returns 0 before that block.
2017-04-19 18:28:16 +01:00
hyc
a3d779013d
Fix block_longhash_worker thread
...
Wasn't getting its stack size initialized; crashes on Android
with a default stack size of 1MB.
2017-04-12 23:51:18 +01:00
moneromooo-monero
893f5a301e
tx_pool: add blob size and fee/byte when logging a new tx
2017-04-04 09:04:11 +01:00
Riccardo Spagni
e3d2b135e7
Merge pull request #1924
...
6d315459
core: avoid possible reordering bugs wth tx/bloch hash cache (moneromooo-monero)
2017-03-25 13:29:36 +02:00
moneromooo-monero
6d315459b6
core: avoid possible reordering bugs wth tx/bloch hash cache
2017-03-25 09:18:53 +00:00
Derek Zhang
2bee92dbd0
Fixed typo in v5 hard fork finalized date
2017-03-24 18:06:55 -07:00
moneromooo-monero
5a7983585e
blockchain: offset v5 addition date on testnet
...
to silence the update warning, since v5 was done very early
on testnet
2017-03-24 10:01:15 +00:00
Riccardo Spagni
a73a886cb1
Merge pull request #1911
...
91d41090
tx_pool: ensure txes loaded from poolstate.bin have their txid cached (moneromooo-monero)
aaeb164c
tx_pool: remove transactions if they're in the blockchain (moneromooo-monero)
558cfc31
core, wallet: faster tx pool scanning (moneromooo-monero)
f065234b
core: cache tx and block hashes in the respective classes (moneromooo-monero)
2017-03-23 11:46:57 +02:00
moneromooo-monero
91d4109023
tx_pool: ensure txes loaded from poolstate.bin have their txid cached
...
The txid is not saved, and we want to make sure the transactions
have their txid cached while in the pool, since get_transactions
copies the transaction object, so any txid calculation on those
copies would not benefit any later caller, since the original tx
would be left without a cached txid.
2017-03-23 09:25:33 +00:00
moneromooo-monero
aaeb164cf6
tx_pool: remove transactions if they're in the blockchain
...
When starting up, if the pool state was not saved, the pool
might contain transactions which made it into the blockchain,
so these need removing
2017-03-23 09:25:29 +00:00
moneromooo-monero
558cfc31ca
core, wallet: faster tx pool scanning
...
Includes a new RPC to get tx pool hashes fast.
2017-03-23 09:25:22 +00:00
moneromooo-monero
f065234b71
core: cache tx and block hashes in the respective classes
...
An idea from smooth
2017-03-23 09:25:17 +00:00
moneromooo-monero
2242d8ebd6
tx_pool: silence use of uninitialized warning
...
The result is not actually used when uninitialized
2017-03-21 12:21:19 +00:00
moneromooo-monero
7c03349869
blockchain: lower the relay fee by 2%
...
This ensures we accept txes with a fee that's slightly too small,
to accomodate blockchain median jitter
2017-03-20 19:14:12 +00:00
moneromooo-monero
266492e919
tx_pool: use new filling algorithm from v5 only
2017-03-20 18:46:57 +00:00
Riccardo Spagni
73e8510717
Merge pull request #1896
...
a6f1d8fc
core: call {prepare|cleanup}_handle_incoming_blocks when adding a mined block (moneromooo-monero)
2017-03-19 23:03:18 +02:00
moneromooo-monero
a6f1d8fc4c
core: call {prepare|cleanup}_handle_incoming_blocks when adding a mined block
...
This ensures that a batch can't also be started/stopped out of
sync by another thread and us getting in the middle
2017-03-19 12:40:26 +00:00
Lee Clagett
50cd179a60
Removed boost/asio.hpp include from epee/string_tools.h
2017-03-18 22:05:14 -04:00
Riccardo Spagni
c642d3224c
Merge pull request #1869
...
3396a9f2
Add intervening v5 fork for increased min block size (moneromooo-monero)
2017-03-15 18:23:51 +01:00
moneromooo-monero
3396a9f2af
Add intervening v5 fork for increased min block size
...
Minimum mixin 4 and enforced ringct is moved from v5 to v6.
v5 is now used for an increased minimum block size (from 60000
to 300000) to cater for larger typical/minimum transaction size.
The fee algorithm is also changed to decrease the base per kB
fee, and add a cheap tier for those transactions which we do
not care if they get delayed (or even included in a block).
2017-03-15 08:32:51 +00:00
moneromooo-monero
74b216a17f
core: don't try to re-relay an empty set of pool transactions
2017-03-12 14:57:58 +00:00
kenshi84
7d07c64fe5
fix dependency: put HardFork back to cryptonote_basic, made some BlockchainDB functions virtual again to avoid missing symbols error
2017-03-10 11:22:39 +09:00
Riccardo Spagni
ba0767477d
Merge pull request #1841
...
b553c282
rpc: fix BUILD_TAG mispelling (BUILDTAG) (moneromooo-monero)
02097c87
core: print the "new update found" message in cyan, for visibility (moneromooo-monero)
749ebace
download: check available disk space before downloading (moneromooo-monero)
f36c5f1e
download: give download threads distinct names (moneromooo-monero)
f6211322
core: make update download cancellable (moneromooo-monero)
63f0e074
download: async API (moneromooo-monero)
9bf017ed
http_client: allow cancelling a download (moneromooo-monero)
0d90123c
http_client: allow derived class to get headers at start (moneromooo-monero)
2017-03-06 15:17:08 +00:00
moneromooo-monero
cfa2564a40
blockchain: don't try to load an empty block hash set
...
If the blocks aren't being linked against a binary (such as
one of the blockchain utilities), the symbol will not be
NULL, but the size will be 0. This avoids a apurious warning
about the data hash.
2017-03-05 19:46:55 +00:00
moneromooo-monero
02097c87eb
core: print the "new update found" message in cyan, for visibility
2017-03-05 16:59:36 +00:00
moneromooo-monero
f6211322e5
core: make update download cancellable
2017-03-05 16:59:25 +00:00
Riccardo Spagni
4728ab977a
Merge pull request #1837
...
31533493
core: quantize per kB fee to 8 decimals (moneromooo-monero)
2017-03-04 21:15:04 +02:00
moneromooo-monero
3153349325
core: quantize per kB fee to 8 decimals
2017-03-03 23:31:56 +00:00
moneromooo-monero
cd71774d77
tx_pool: log separately "not ready" and "double spend" cases
2017-03-03 22:32:51 +00:00
Howard Chu
296641e047
Fix #1824 don't end batch that we didn't start
2017-03-03 16:50:53 +00:00
moneromooo-monero
12adb4a3f3
core: move hardfork back to cryptonote_core
...
should fix a cross dependency betewen cryptonote_basic and
blockchain_db
2017-02-25 16:41:35 +00:00
Riccardo Spagni
ed6f2e8323
Merge pull request #1785
...
583a7b5c
core: protect precomputed block hashes with SHA256 (moneromooo-monero)
2017-02-24 12:00:51 +02:00
moneromooo-monero
583a7b5c74
core: protect precomputed block hashes with SHA256
2017-02-23 23:18:10 +00:00
moneromooo-monero
9effa55311
core: bound the amount of entries in bad tx semantics cache
...
This is to prevent unbounded memory use. Since I don't think there
is a container that has quick insert, quick lookup, and automatic
FIFO, I use two and swap every N, clearing the oldest one.
2017-02-23 20:34:11 +00:00
moneromooo-monero
240054a7f8
core: remove a couple unused/obsolete bits
2017-02-23 20:11:57 +00:00
moneromooo-monero
5901331669
updates: remove testnet case
...
It need not be any different
2017-02-22 11:20:44 +00:00
moneromooo-monero
822577eb42
updates: we now have a user URL, and an automatic one
...
So the user can use https, while the automatic does not have to
2017-02-22 11:20:40 +00:00
moneromooo-monero
9f17b1a30f
updates: s/monerod/monero/ for the main download
...
Also print download success message as global log
2017-02-22 11:20:37 +00:00
Riccardo Spagni
1a4298685a
Merge pull request #1766
...
72deb484
updated fallback nodes (Riccardo Spagni)
33329f5b
update version to 0.10.2 (Riccardo Spagni)
04a50a7e
update checkpoints.dat (Riccardo Spagni)
c3599fa7
update copyright year, fix occasional lack of newline at line end (Riccardo Spagni)
2017-02-22 09:36:11 +02:00
moneromooo-monero
708758b737
core: do not download an update we already downloaded
2017-02-21 22:23:59 +00:00
Riccardo Spagni
c3599fa7b9
update copyright year, fix occasional lack of newline at line end
2017-02-21 19:38:18 +02:00
moneromooo-monero
417b126fc4
Fix core_tests breaking on startup
...
You're wondering how this fixes core tests, aren't you...
It prevents the miner (initialized by cryptonote::core) from
breaking trying to access arguments that were not added.
Since the tests don't use the miner directly, it makes more
sense to have cryptonote_core add those, since it also uses
the miner.
2017-02-21 15:06:07 +00:00
moneromooo-monero
e74b3ab5f7
core: add p2p bind port options from net_node
...
They're now used by core to determine the data directory to use
for the txpool directory.
This fixes an assert in the core tests, which don't use the RPC
server, which normally initializes the P2P code.
2017-02-21 09:35:23 +00:00
Riccardo Spagni
49efd3add9
Merge pull request #1727
...
0288310e
blockchain_db: add "raw" blobdata getters for block and transaction (moneromooo-monero)
2017-02-21 11:27:15 +02:00
Riccardo Spagni
59d96eedd8
Merge pull request #1724
...
cca95c1c
blockchain_db: do not throw on expected partial results getting keys (moneromooo-monero)
2017-02-21 11:23:03 +02:00
Riccardo Spagni
565c99f670
Merge pull request #1731
...
a427235e
core: add a missing newline on a string to be logged (moneromooo-monero)
b6a2230e
unit_tests: fix minor blockchain_db regression (moneromooo-monero)
c488eca5
hardfork: tone down some logs (moneromooo-monero)
2017-02-21 11:21:57 +02:00
moneromooo-monero
a5a0a3c894
core: updates can now be downloaded (and SHA256 hash checked)
2017-02-20 22:58:37 +00:00
moneromooo-monero
d282cfcc46
core: test key images against validity domain
2017-02-20 22:58:25 +00:00
moneromooo-monero
f640512c53
Optionally query moneropulse DNS records to check for updates
...
It just checks and prints a message if there is a new version
for now.
2017-02-20 22:58:16 +00:00
moneromooo-monero
e3cae4ae2e
core: display any fork warning at startup too
...
This is a good time for the operator to be around and see it
2017-02-20 22:58:12 +00:00
Riccardo Spagni
675434ffab
Merge pull request #1748
...
bed2d9f2
Get rid of directory lock (Howard Chu)
2e913676
Handle map resizes from other processes (Howard Chu)
bf1348b7
Can't cache num_txs or num_outputs either (Howard Chu)
dc53e9ee
Add a few read txns to streamline (Howard Chu)
2017-02-21 00:51:13 +02:00
moneromooo-monero
c32830937c
tx_pool: revert template filling changes
...
They are not ready yet
2017-02-20 22:43:37 +00:00
Howard Chu
bed2d9f231
Get rid of directory lock
...
We don't need it any more. Fixes issue #1633
2017-02-18 22:22:24 +00:00
Howard Chu
dc53e9eef2
Add a few read txns to streamline
...
Slight perf gain, but mainly to reduce spam at loglevel 3
2017-02-18 21:01:24 +00:00
moneromooo-monero
a427235e30
core: add a missing newline on a string to be logged
2017-02-14 19:14:41 +00:00
moneromooo-monero
0288310e3b
blockchain_db: add "raw" blobdata getters for block and transaction
...
This speeds up operations such as serving blocks to syncing peers
2017-02-13 21:11:37 +00:00
moneromooo-monero
cca95c1c7a
blockchain_db: do not throw on expected partial results getting keys
...
When scanning for outputs used in a set of incoming blocks,
we expect that some of the inputs in their transactions will
not be found in the blockchain, as they could be in previous
blocks in that set. Those outputs will be scanned there at
a later point. In this case, we add a flag to control wehther
an output not being found is expected or not.
2017-02-13 19:05:30 +00:00
moneromooo-monero
5adcb5a48c
tx_pool: add a debug message when adding a tx to the pool
2017-02-12 12:33:48 +00:00
kenshi84
8027ce0c75
extract some basic code from libcryptonote_core into libcryptonote_basic
2017-02-08 22:45:15 +09:00
kenshi84
bab1e9a397
bugfix: infinite recursion in get_account_address_from_str_or_url
2017-02-05 23:20:16 +09:00
Riccardo Spagni
eb21389953
Merge pull request #1664
...
b5cb8861
core: fix integrated addresses breaking with auto zero change (moneromooo-monero)
2017-02-04 17:20:02 +02:00
moneromooo-monero
b5cb8861c7
core: fix integrated addresses breaking with auto zero change
...
Zero change is sent to a random address, which confuses the code
which determines which key to use to encrypt the payment id.
Ignore zero amounts for this purpose, so the payment id gets
encrypted with the real destination's key.
2017-02-02 20:53:12 +00:00
Riccardo Spagni
fcb299b4ae
Merge pull request #1641
...
ca94d0a4
Separate data per P2P port (Miguel Herranz)
2017-02-02 22:41:28 +02:00
Riccardo Spagni
c3eff820be
Merge pull request #1642
...
3ae79a59
core: set missing verifivation_failed flag when rejecting a tx (moneromooo-monero)
ea6549e9
core_tests: decrease trace level from trace to debug (moneromooo-monero)
2017-02-02 21:25:30 +02:00
Riccardo Spagni
a6f61b8419
Merge pull request #1631
...
58e82506
Blockfill - Sort tx pool correctly (Alexis Enston)
5f7a8741
Blockfill - Take TX fees into account properly (Alexis Enston)
4ecab0d8
Consider empty block when filling with TXs (Alexis Enston)
2017-02-02 19:41:25 +02:00
Riccardo Spagni
ca2e2c2453
Merge pull request #1627
...
55a8e982
moved get_account_address_from_str_or_url from libcommon to libcryptonote_core (kenshi84)
2017-02-02 18:24:08 +02:00
Riccardo Spagni
f9e60dcd55
Merge pull request #1617
...
0644eed7
Remove boost/foreach.cpp includes (Miguel Herranz)
36dd3e23
Replace BOOST_REVERSE_FOREACH with ranged for (Miguel Herranz)
629e3101
Replace BOOST_FOREACH with C++11 ranged for (Miguel Herranz)
2017-02-02 18:16:39 +02:00
Miguel Herranz
ca94d0a43c
Separate data per P2P port
...
poolstate.bin and p2pstate.bin are stored in .bitmonero/ if the default
P2P port is being used.
If another port is used both files are stored in
.bitmonero/PORTNUMBER/.
2017-01-28 14:16:06 +01:00
moneromooo-monero
3ae79a59e4
core: set missing verifivation_failed flag when rejecting a tx
...
This fixes two core rct tests
2017-01-28 09:43:41 +00:00
Alexis Enston
58e825060e
Blockfill - Sort tx pool correctly
2017-01-25 12:06:19 +00:00
Alexis Enston
5f7a8741b9
Blockfill - Take TX fees into account properly
2017-01-25 11:59:25 +00:00
Alexis Enston
4ecab0d80c
Consider empty block when filling with TXs
2017-01-25 11:59:15 +00:00
kenshi84
55a8e982c0
moved get_account_address_from_str_or_url from libcommon to libcryptonote_core
2017-01-24 20:31:03 +09:00
NanoAkron
98357db400
Update log messages to reflect fact we no longer need to type exit
to save database before quitting
2017-01-23 01:21:26 +00:00
Miguel Herranz
0644eed772
Remove boost/foreach.cpp includes
2017-01-22 23:31:34 +01:00
Miguel Herranz
36dd3e238f
Replace BOOST_REVERSE_FOREACH with ranged for
2017-01-22 21:47:39 +01:00
Miguel Herranz
629e3101ab
Replace BOOST_FOREACH with C++11 ranged for
2017-01-22 21:38:10 +01:00
Riccardo Spagni
9c06a7fd04
Merge pull request #1615
...
f0989893
core: cache tx hashes of failing semantics txes (moneromooo-monero)
2017-01-22 11:51:53 -05:00
Riccardo Spagni
a3de797e57
Merge pull request #1610
...
b70ab128
rpc: fix orphan_status when getting blocks (moneromooo-monero)
2017-01-22 11:48:39 -05:00
moneromooo-monero
f098989396
core: cache tx hashes of failing semantics txes
2017-01-22 16:13:31 +00:00
moneromooo-monero
b70ab128fc
rpc: fix orphan_status when getting blocks
...
It was always set to false, even for orphan blocks
2017-01-22 12:20:55 +00:00
moneromooo-monero
7c3f79cb9f
core: early out in handle_incoming_tx if already in pool or blockchain
2017-01-21 20:30:10 +00:00
moneromooo-monero
64da0983d5
core: don't try to deserialize an empty extra to remove a field
2017-01-16 08:59:02 +00:00
moneromooo-monero
5833d66f65
Change logging to easylogging++
...
This replaces the epee and data_loggers logging systems with
a single one, and also adds filename:line and explicit severity
levels. Categories may be defined, and logging severity set
by category (or set of categories). epee style 0-4 log level
maps to a sensible severity configuration. Log files now also
rotate when reaching 100 MB.
To select which logs to output, use the MONERO_LOGS environment
variable, with a comma separated list of categories (globs are
supported), with their requested severity level after a colon.
If a log matches more than one such setting, the last one in
the configuration string applies. A few examples:
This one is (mostly) silent, only outputting fatal errors:
MONERO_LOGS=*:FATAL
This one is very verbose:
MONERO_LOGS=*:TRACE
This one is totally silent (logwise):
MONERO_LOGS=""
This one outputs all errors and warnings, except for the
"verify" category, which prints just fatal errors (the verify
category is used for logs about incoming transactions and
blocks, and it is expected that some/many will fail to verify,
hence we don't want the spam):
MONERO_LOGS=*:WARNING,verify:FATAL
Log levels are, in decreasing order of priority:
FATAL, ERROR, WARNING, INFO, DEBUG, TRACE
Subcategories may be added using prefixes and globs. This
example will output net.p2p logs at the TRACE level, but all
other net* logs only at INFO:
MONERO_LOGS=*:ERROR,net*:INFO,net.p2p:TRACE
Logs which are intended for the user (which Monero was using
a lot through epee, but really isn't a nice way to go things)
should use the "global" category. There are a few helper macros
for using this category, eg: MGINFO("this shows up by default")
or MGINFO_RED("this is red"), to try to keep a similar look
and feel for now.
Existing epee log macros still exist, and map to the new log
levels, but since they're used as a "user facing" UI element
as much as a logging system, they often don't map well to log
severities (ie, a log level 0 log may be an error, or may be
something we want the user to see, such as an important info).
In those cases, I tried to use the new macros. In other cases,
I left the existing macros in. When modifying logs, it is
probably best to switch to the new macros with explicit levels.
The --log-level options and set_log commands now also accept
category settings, in addition to the epee style log levels.
2017-01-16 00:25:46 +00:00
Riccardo Spagni
99ffc49740
Merge pull request #1577
...
feb499aa
core: check block version for alt chains too (moneromooo-monero)
2017-01-15 14:57:30 -05:00
Riccardo Spagni
1207d8ad0d
Merge pull request #1576
...
ba3968f6
rct: split rct checks between semantics and other (moneromooo-monero)
2017-01-15 14:56:39 -05:00
Riccardo Spagni
10c6afd316
Merge pull request #1571
...
81c384e4
fix do_not_relay not preventing relaying on a timer (moneromooo-monero)
2017-01-15 14:50:10 -05:00
Riccardo Spagni
51baab2112
Merge pull request #1565
...
50b230d1
core: ensure block size limit is set from the start (moneromooo-monero)
2017-01-15 14:47:17 -05:00
Riccardo Spagni
8bd2c2e551
Merge pull request #1563
...
36ba311c
Prioritize older transactions in the mempool (Miguel Herranz)
2017-01-15 14:46:33 -05:00
Riccardo Spagni
65e33b1bc5
Merge pull request #1506
...
3ff54bdd
Check for correct thread before ending batch transaction (Howard Chu)
eaf8470b
Must wait for previous batch to finish before starting new one (Howard Chu)
c903c554
Don't cache block height, always get from DB (Howard Chu)
eb1fb601
Tweak default db-sync-mode to fast:async:1 (Howard Chu)
0693cff9
Use batch transactions when syncing (Howard Chu)
2017-01-15 14:43:12 -05:00
Howard Chu
eaf8470b29
Must wait for previous batch to finish before starting new one
2017-01-14 22:43:06 +00:00
Howard Chu
eb1fb6011a
Tweak default db-sync-mode to fast:async:1
...
fsync the DB asynchronously, to allow block download/verification
to proceed while syncing. Sync after every batch. Note that
"fastest" still defaults to fastest:async:1000.
2017-01-14 22:43:06 +00:00
Howard Chu
0693cff925
Use batch transactions when syncing
...
Faster throughput while avoiding corruption. I.e., makes
running with --db-sync-mode safe more tolerable.
2017-01-14 22:43:06 +00:00
moneromooo-monero
feb499aaae
core: check block version for alt chains too
...
This is incompatible with block version voting
2017-01-14 22:41:14 +00:00
moneromooo-monero
ba3968f6ce
rct: split rct checks between semantics and other
...
Semantics can be checked early
2017-01-14 21:17:32 +00:00
moneromooo-monero
81c384e408
fix do_not_relay not preventing relaying on a timer
...
Also print its value when printing pool
2017-01-14 13:07:05 +00:00
moneromooo-monero
176b70a0d4
account: fix build error involving std::max and different types
2017-01-13 22:12:27 +00:00
moneromooo-monero
50b230d12c
core: ensure block size limit is set from the start
...
It can now be queried by RPC, so it needs to be set before
it is otherwise needed for consensus, even if no blocks had
to be added (ie, exit and restart quickly).
2017-01-13 21:06:14 +00:00
Riccardo Spagni
cbb39b499b
Merge pull request #1558
...
7961878e
initialize timestamp to 0 and check for mktime() error (Chris Vickio)
2017-01-13 14:36:42 -05:00
Riccardo Spagni
e75fd059dd
Merge pull request #1555
...
758c0eb7
fix time stats mixin (luigi1111)
2017-01-13 14:36:24 -05:00
Riccardo Spagni
0b6031adbf
Merge pull request #1543
...
19be7225
Add start_time to get_info methods and show uptime (Miguel Herranz)
2017-01-13 14:35:21 -05:00
Riccardo Spagni
006bb0e957
Merge pull request #1538
...
aff28178
Remove db-auto-remove-logs (Miguel Herranz)
1229c685
Remove berkeley from db_type initialization (Miguel Herranz)
e3090558
Show available types for db-type command (Miguel Herranz)
046ab33d
Remove berkeley from blockchain_db_types (Miguel Herranz)
2017-01-13 14:33:59 -05:00
Miguel Herranz
36ba311cf4
Prioritize older transactions in the mempool
...
The transactions are first prioritized by fee and in case the fees are
equal by receive_time.
2017-01-13 16:08:37 +01:00
Chris Vickio
7961878e81
initialize timestamp to 0 and check for mktime() error
2017-01-12 10:13:58 +03:00
Miguel Herranz
19be7225cc
Add start_time to get_info methods and show uptime
2017-01-12 00:15:21 +01:00
luigi1111
758c0eb79f
fix time stats mixin
...
also add blobsize
2017-01-10 10:15:15 -06:00
Miguel Herranz
aff28178e6
Remove db-auto-remove-logs
2017-01-10 11:49:45 +01:00
Miguel Herranz
1229c68587
Remove berkeley from db_type initialization
2017-01-10 11:46:12 +01:00
kenshi84
f1dde1a429
wallet cli: print originating block heights of mixin keys when making transfer
2017-01-09 15:10:34 +09:00
Riccardo Spagni
15dcc5afd3
Merge pull request #1534
...
1607cb7e
tx_pool: better block template filling algorithm (moneromooo-monero)
9731b4e5
rpc: add block size to GET_BLOCK_HEADER RPC (moneromooo-monero)
9188b346
rpc: add current block size to the getinfo call (moneromooo-monero)
2017-01-08 16:43:54 -08:00
Riccardo Spagni
ba9744d400
Merge pull request #1515
...
ada7c7da
portable serializer: tests added (kenshi84)
f390a0e2
portable serializer: make signerd/unsigned tx portable, ignore archive version checking (kenshi84)
2017-01-08 16:41:44 -08:00
Riccardo Spagni
fdb1cda965
Merge pull request #1502
...
591d8368
core: invalidate difficulty cache when resetting blockchain (moneromooo-monero)
2017-01-08 16:37:31 -08:00
Riccardo Spagni
d655e88b44
Merge pull request #1499
...
37ed96e6
tx_pool: fix uninitialized "last failed" fields (moneromooo-monero)
94b6feef
rpc: fix mixup in tx_info serialization (moneromooo-monero)
2017-01-08 16:35:49 -08:00
Riccardo Spagni
23cf963332
Merge pull request #1493
...
0478ac68
blockchain: allow marking "tx not found" without an exception (moneromooo-monero)
2017-01-08 16:33:41 -08:00
moneromooo-monero
0478ac6848
blockchain: allow marking "tx not found" without an exception
...
This is a normal occurence in many cases, and there is no need
to spam the log with those when it is.
2017-01-07 20:52:17 +00:00
moneromooo-monero
1607cb7e0c
tx_pool: better block template filling algorithm
...
Continue filling until we reach the block size limit, or the
resulting coinbase decreases.
Also remove old sanity check on block size, which is now not
wanted anymore.
2017-01-07 12:36:22 +00:00
kenshi84
f390a0e2dc
portable serializer: make signerd/unsigned tx portable, ignore archive version checking
2017-01-02 20:04:58 +09:00
moneromooo-monero
591d83686e
core: invalidate difficulty cache when resetting blockchain
2016-12-25 20:38:11 +00:00
moneromooo-monero
37ed96e611
tx_pool: fix uninitialized "last failed" fields
2016-12-24 19:42:35 +00:00
luigi1111
374762654e
add tx hash to time stats
...
Also miner tx hash to log level 1 (have you ever tried to find a testnet miner tx hash?)
2016-12-21 19:20:49 -06:00
moneromooo-monero
12abe86ac0
core: fix recalculation of emission/fees
...
It was counting things many, many times
2016-12-21 11:19:04 +00:00
Riccardo Spagni
f5176cb6e8
Merge pull request #1467
...
55fa0479
rpc: new function and RPC to get alternative chain info (moneromooo-monero)
2016-12-20 17:44:47 +02:00
kenshi84
2ac8007544
also use portable serializer for boost_serialization_helper.h and net_node.inl, completely adandon boost/archive/binary_oarchive.hpp
2016-12-20 13:04:19 +09:00
moneromooo-monero
55fa0479a0
rpc: new function and RPC to get alternative chain info
2016-12-17 11:28:49 +00:00
kenshi84
66e6af89ce
added experimental boost::archive::portable_binary_{i|o}archive
2016-12-16 23:46:24 +09:00
Riccardo Spagni
b1bdb4e529
Merge pull request #1437
...
655eafd1
bump version (Riccardo Spagni)
117194a3
update checkpoints (Riccardo Spagni)
39a9db9e
update checkpoints (Riccardo Spagni)
2016-12-13 16:36:43 +02:00
moneromooo-monero
dd144b14bc
blockchain: fix reorganizations past a hard fork boundary
...
After popping blocks from the old chain, the hard fork object's
notion of the current version was not in line with the new height,
causing the first blocks from the new chain to be rejected due
to a false expection of a newer version.
2016-12-13 02:13:23 +00:00
Riccardo Spagni
39a9db9eb1
update checkpoints
2016-12-13 00:24:48 +02:00
Riccardo Spagni
930aceb242
Merge pull request #1419
...
f4a3ce15
Fix sending outputs from a tx with more than one pubkey (moneromooo-monero)
2016-12-10 14:48:56 +02:00
Riccardo Spagni
0f99423080
Merge pull request #1418
...
dfbb85b6
blockchain: fix setting non trovial alternate chain as invalid (moneromooo-monero)
2016-12-10 14:48:39 +02:00
moneromooo-monero
f4a3ce15c1
Fix sending outputs from a tx with more than one pubkey
...
A bug in cold signing caused a spurious pubkey to be included
in transactions, so we need to ensure we use the correct one
when sending outputs from one of those.
2016-12-09 18:21:21 +00:00
moneromooo-monero
dfbb85b6fe
blockchain: fix setting non trovial alternate chain as invalid
...
The wrong iterator was being used.
Also preincrement iterators to avoid possibly invalidating them,
I'm not sure this is necessary, but let's be safe.
2016-12-08 22:26:27 +00:00
luigi1111
648ea6bef1
blockchain: bring the v4 fork height one block forward
...
This will ensure the early 0.10 daemons will barf at the fork
height, and not a bit later, which could be confusing.
2016-12-06 21:59:08 +00:00
Shen Noether
76958fc75a
ringct: switch to Borromean signatures
2016-12-04 21:54:11 +00:00
Riccardo Spagni
f2ea2afb77
Merge pull request #1398
...
f4772bae
Fix a few minor typos (Pierre Boyer)
2016-12-04 22:28:22 +02:00
Riccardo Spagni
8086379680
Merge pull request #1397
...
3f7d6fb5
Fix delayed exit when syncing (moneromooo-monero)
2016-12-04 22:27:41 +02:00
Riccardo Spagni
416f7fbd5f
Merge pull request #1392
...
204b1bff
blockchain: use high bound block reward on error where appropriate (moneromooo-monero)
2016-12-04 22:23:03 +02:00
Riccardo Spagni
2fd43e25ee
Merge pull request #1386
...
8f6ec90c
blockchain: reject invalid pubkeys from v4 (moneromooo-monero)
2016-12-04 22:15:36 +02:00
Pierre Boyer
f4772bae81
Fix a few minor typos
2016-12-04 14:13:54 +01:00