Age | Commit message (Collapse) | Author | Files | Lines |
|
instead of just failing
This is a workaround for bad tx blobs being inserted in the
pool for unknown reasons
|
|
6d0ca7d1 Tweak concurrency limits (Howard Chu)
510d0d47 Use a threadpool (Howard Chu)
|
|
2b363e10 README.md: add instructions to fix core pattern (moneromooo-monero)
|
|
87f58974 Docs: C4 revisions as discussed in #2174 (anonimal)
84d25d25 Docs: C4 development process addendum (anonimal)
e022c4e9 Docs: add C4 to contributing guide (anonimal)
|
|
f761dbae Remove 1.25x multiplier from tx_pool (Nano Akron)
|
|
0299cb77 Fix various oversights/bugs in ZMQ RPC server code (Thomas Winget)
77986023 json serialization for rpc-relevant monero types (Thomas Winget)
5c1e08fe Refactor some things into more composable (smaller) functions (Thomas Winget)
9ac2ad07 DRY refactoring (Thomas Winget)
|
|
Create capacity for 2x max, but lie about it
|
|
Instead of constantly creating and destroying threads
|
|
|
|
b338dad2 update miniupnpc (MaxXor)
|
|
9443eec1 core: guard against exceptions in tx verification worker threads (moneromooo-monero)
|
|
edda2014 ITS#8728 fix MDB_VL32 freeing overflow page (Howard Chu)
|
|
a9845cc3 rpc: get_txpool_backlog is now unrestricted (moneromooo-monero)
|
|
e5238adf update checkpoint hashes (Riccardo Spagni)
d4f56bdf update hardcoded checkpoints (Riccardo Spagni)
ed730511 update checkpoints.dat (Riccardo Spagni)
|
|
dbfef643 tx_pool: catch exceptions in LockedTXN dtor (moneromooo-monero)
|
|
6ac61100 Add a --fluffy-blocks option to relay blocks as fluffy blocks (moneromooo-monero)
|
|
11818487 Use latest height for fork date estimate (Howard Chu)
|
|
|
|
|
|
Fix #2420
|
|
|
|
|
|
|
|
|
|
|
|
- Add some RPC commands (and touch up a couple others)
- some bounds checking
- some better pointer management
- const correctness and error handling
-- Thanks @vtnerd for type help with serialization and CMake changes
|
|
Structured {de-,}serialization methods for (many new) types
which are used for requests or responses in the RPC.
New types include RPC requests and responses, and structs which compose
types within those.
# Conflicts:
# src/cryptonote_core/blockchain.cpp
|
|
This commit refactors some of the rpc-related functions in the
Blockchain class to be more composable. This change was made
in order to make implementing the new zmq rpc easier without
trampling on the old rpc.
New functions:
Blockchain::get_num_mature_outputs
Blockchain::get_random_outputs
Blockchain::get_output_key
Blockchain::get_output_key_mask_unlocked
Blockchain::find_blockchain_supplement (overload)
functions which previously had this functionality inline now call these
functions as necessary.
|
|
This might prevent some calls to terminate when the LockedTXN
dtor is called as part of stack unwinding caused by another
exception in the first place.
|
|
Defaults to off, but fluffy blocks are forced enabled on testnet
|
|
|
|
4e0e4e99 blockchain_import: warn for chunks over 500000, not 100000 (moneromooo-monero)
5b29e87f blockchain_import: properly cleanup core/db on exit (moneromooo-monero)
e167c4d9 blockchain_import: do not error out on truncated files (moneromooo-monero)
|
|
e72e625e tx_pool: wrap tx meta updates in a LockedTXN (moneromooo-monero)
|
|
c867357a cryptonote_protocol: error handling on cleanup_handle_incoming_blocks (moneromooo-monero)
ce901fcb Fix blockchain_import wedge on exception in cleanup_handle_incoming_blocks (moneromooo-monero)
84fa015e core: guard against exceptions in handle_incoming_{block,tx} (moneromooo-monero)
|
|
3d19ab70 Revert "Cleanup test impact of moving blockchain_db_types()" (Howard Chu)
a95e460c move db specific options to BlockchainDB (moneromooo-monero)
|
|
63d8dddc cryptonote_protocol: remove old spans when received as old blocks (moneromooo-monero)
|
|
adce8ae4 simplewallet: new "fee" command to display fee information (moneromooo-monero)
|
|
2e338ca5 wallet2: account for huge testnet reorgs for estimating height (moneromooo-monero)
|
|
e3c4395a p2p: init hashes after deserializing a network address (moneromooo-monero)
|
|
0c6c3eb3 Silence stupid fallthru warning in gcc 7 (Howard Chu)
|
|
ea996f91 clarification of parameters for print_coinbase_tx_sum (Matthew Campassi)
|
|
d58700e0 WalletAPI: only allow trusted daemon when importing key images (Jaquee)
8a9bbd26 WalletAPI: copy wallet data when creating a view only wallet (Jaquee)
d27fe32e wallet2: export/import wallet data functions (Jaquee)
225a25f3 import_key_images - allow importing without being connected to daemon (Jaquee)
|
|
We have a lot of 350000 byte blocks now.
|
|
|
|
This will happen often when downloading from a live file
|
|
|
|
|
|
|
|
including expected transaction backlog at different priorities
|
|
|
|
|
|
This reverts commit 3dd34a49efd2954b0a5eb020abd168d9379b98c4.
|
|
When one happens, cleanup must be called or the incoming tx
lock will stay locked
|
|
Avoids common depending on blockchain_db, which can cause
link errors.
|
|
fixes getting those in a loop
|
|
1914c999 txpool: update db tx metadata when it changes (moneromooo)
4dbf29bd txpool: add tx size median to the pool stats (moneromooo)
|
|
5807529e blockchain: cap memory size of retrieved blocks (moneromooo-monero)
c1b10381 rpc: decrease memory usage a bit in getblocks.bin (moneromooo-monero)
|
|
c656dd0e Fix refresh counter display (Howard Chu)
c088d38a Simplify readline support (Howard Chu)
|
|
c22d22e2 Cleanup test impact of adding safesyncmode() method (Howard Chu)
9a859844 Toggle SAFE syncmode on and off automatically (Howard Chu)
|
|
3dd34a49 Cleanup test impact of moving blockchain_db_types() (Howard Chu)
80344740 More DB support cleanup (Howard Chu)
4c7f8ac0 DB cleanup (Howard Chu)
|
|
19393115 daemon: fix backlog estimating at max block size (moneromooo-monero)
|
|
f906d87e wallet: new option to check/confirm txpool backlog when sending (moneromooo-monero)
55bec1f0 rpc: add a new RPC to get current txpool backlog (sizes and fees) (moneromooo-monero)
|
|
It helps keep memory usage down when a wallet refreshes through
a string of large blocks
|
|
|
|
|
|
Block size will pretty much never be fully used, unless all txes
are using max fee.
|
|
|
|
|
|
|
|
|
|
df0cffed cryptonote_protocol: warn if we see a higher top version we expect (moneromooo-monero)
317ab21a cryptonote_protocol: less strict check on top version on connect (moneromooo-monero)
cc81a371 cryptonote_protocol: update target height when syncing too (moneromooo-monero)
e2ad372b cryptonote_protocol: simplify and remove unnecessary casts (moneromooo-monero)
727e67ca cryptonote_protocol: print peer top height along with its version (moneromooo-monero)
b5345ef4 crypto: use malloc instead of alloca (moneromooo-monero)
80794b31 thread_group: set thread size to THREAD_STACK_SIZE (moneromooo-monero)
5524bc31 print peer id in 0 padded hex for consistency (moneromooo-monero)
8f8cc09b contrib: add sync_info to rlwrap command set (moneromooo-monero)
70b8c6d7 cryptonote_protocol: misc fixes to the new sync algorithm (moneromooo-monero)
|
|
ea15e72d tx_pool: fix crash in stats (Howard Chu)
|
|
679a5ab8 daemon: print estimated tx backlog in print_pool_stats (moneromooo-monero)
|
|
64ab8844 rpc_client: print destination host/port when failing to connect (moneromooo-monero)
333f7012 http_client: add getters for host and port (moneromooo-monero)
|
|
5d989b66 core: add mainnet v6 fork height at 1400000 (moneromooo-monero)
|
|
if tx receive_time == now. supersedes #2322
|
|
|
|
This allows peers who synced past a fork on the wrong height
to reorg to the right chain after they updated their software
to include the new version.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes multiple connections to the same address
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Suspend readline when refreshing
|
|
And don't use std::mutex
|
|
Fix sync wedge corner case:
It could happen if a connection went into standby mode, while
it was the one which had requested the next span, and that span
was still waiting for the data, and that peer is not on the
main chain. Other peers can then start asking for that data
again and again, but never get it as only that forked peer does.
And various other fixes
|
|
|
|
|
|
|
|
|
|
If monerod is started with default sync mode, set it to SAFE after
synchronization completes. Set it back to FAST if synchronization
restarts (e.g. because another peer has a longer blockchain).
If monerod is started with an explicit sync mode, none of this
automation takes effect.
|
|
Hide DB types from db_types.h - no reason to recompile dependencies
when DB types change.
Also remove lingering in-memory DB references, they've been
obsolete since 9e82b694da120708652871b55f639d1ef306a7ec
|
|
Hide LMDB-specific stuff behind blockchain_db.h. Nobody besides blockchain_db.cpp
should ever be including DB-specific headers any more.
|
|
|
|
|
|
|
|
5a283078 cryptonote_protocol: large block sync size before v4 (moneromooo-monero)
7b747607 cryptonote_protocol: kick idle synchronizing peers (moneromooo-monero)
|
|
1249a2a5 Construct on first use for completion_commands (Jethro Grassie)
67dd4933 Add sync lock on stop (Jethro Grassie)
|
|
42b34b35 Consistently print peer id in hex and on 16 chars (moneromooo-monero)
|
|
b59cd074 befor -> before (Nano Akron)
|
|
827afcb7 protocol: pass blockchain cumulative difficulty when syncing (moneromooo-monero)
|
|
|
|
In case they dropped off downloading for any reason, they'll get
sent to download again.
|
|
|
|
Also added and moved two free's hoping to fix leaks.
|
|
|
|
Really unique yet consistent spelling mistake
|
|
Not used yet.
|
|
78ecb2ad update major version number (Riccardo Spagni)
|
|
|
|
c6e200a8 core: add --db-salvage command line flag (moneromooo-monero)
|
|
dee41efa simplewallet: mnemonic language command-line arg (Eugene Otto)
|
|
cb2d5ac7 mnemonics: new Esperanto word list (moneromooo-monero)
|
|
8655ba04 wallet_rpc_server: adjust small ring sizes to 5 for v6 (moneromooo-monero)
|
|
9c6eb75c ITS#8704 add MDB_PREVSNAPSHOT flag to mdb_env_open (Howard Chu)
|
|
d1f204d6 miner: set thread name before logging (moneromooo-monero)
|
|
7fdc178a p2p: fix random peer index being too large (moneromooo-monero)
|
|
e499ff33 simplewallet: factor out message_writer (moneromooo-monero)
7ed5ab47 scoped_message_writer: pause readline to match simplewallet (moneromooo-monero)
|
|
359517c7 wallet_rpc_server: fix possible privacy leak in on_import_key_images() (Jaquee)
20495b27 simplewallet: fix possible privacy leak in import_key_images() (Jaquee)
|
|
a1891ebe tests: fix tests build (moneromooo-monero)
|
|
6ce769c1 p2p: get net log spam down a bit (moneromooo-monero)
|
|
88e83f94 cryptonote_protocol_handler: log versions as unsigned ints (moneromooo-monero)
|
|
cb2d5110 Tweak net logs so we get more info on why networking can't start (moneromooo-monero)
|
|
7591c528 p2p: fallback on seed nodes if we can't make a connection (moneromooo-monero)
|
|
0e8d60c0 cryptonote_protocol: fix recv/send idle time before handshake (moneromooo-monero)
|
|
f90bbe2a cryptonote_protocol: keep target in sync with dropped connections (moneromooo-monero)
|
|
1307e3cc WalletAPI: add getDefaultDataDir() (Jaquee)
|
|
7007bd14 Change default block sync size from 200 to 20 (moneromooo-monero)
|
|
980e476c cryptonote_basic: fix silly CLANG warning about not emitting function (moneromooo-monero)
|
|
74597bd1 wallet2: improve refresh height determination (moneromooo-monero)
|
|
042b86c4 simplewallet: do not ask wallet filename twice when restoring (moneromooo-monero)
|
|
This should prevent "silent" failures to start
|
|
8bbed275 simplewallet: Be explicit about secret keys (Erik de Castro Lopo)
|
|
51ebedb8 epee: remove a couple unused locals (moneromooo-monero)
|
|
9707998a wallet2: clear some missing containers in clear() (moneromooo-monero)
|
|
f4f7eeba blockchain: log more info when we reject an orphan (moneromooo-monero)
|
|
71e28760 debug_utilities: only build for debug builds (moneromooo-monero)
55e150ff debug_utilities: new object-sizes debug tool (moneromooo-monero)
fbaf5375 cn_deserialize: move to new debug_utilities subdirectory (moneromooo-monero)
|
|
d732c73e blockchain: remove a few unused variables (moneromooo-monero)
|
|
c8640a3d difficulty: fix misleading comment (Guillaume LE VAILLANT)
|
|
b7d6ec83 simplewallet: add (out of sync) or (no daemon) markers in the prompt (moneromooo-monero)
fa23a500 wallet2: add a is_synced function (moneromooo-monero)
f1307bbd node_rpc_proxy: add a proxy for target height (moneromooo-monero)
|
|
ad4649ac Enable verifying wallet password with having to load wallet. (m2049r)
|
|
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)
|
|
67ce4910 wallet2: store testnet bool in keys file (Jaquee)
|
|
87b5ede9 miner: fix ignoring battery from command line (moneromooo-monero)
|
|
c97d1bd3 wallet: return unlock_time in get_transfers (moneromooo-monero)
|
|
35e01a6e cryptonote_protocol: fix "holes" in block download schedule (moneromooo-monero)
3da1edfd cryptonote_protocol: fix out of order addition (moneromooo-monero)
6edb1b3e block_queue: do not add empty spans (moneromooo-monero)
|
|
|
|
This was broken by the reorg fix, since we now have to add blocks
regardless of their starting height. We now check whether we know
the parent for the first block in the next span, or whether it was
requested. If neither, it's an orphan. If it is not known, but was
requested, we wait to get that block.
|
|
|
|
Word list authored by: Engelberg, ProkhorZ
Sources:
Baza Radikaro Oficiala
Reta Vortaro (http://www.reta-vortaro.de/revo/)
Esperanto Panorama - Esperanto-English Dictionary (http://www.esperanto-panorama.net/vortaro/eoen.htm)
ESPDIC - Paul Denisowski (http://www.denisowski.org/Esperanto/ESPDIC/espdic.txt)
|
|
Add `--mnemonic-language` command-line arg so it's possible to generate a wallet
without interacting with the CLI.
|
|
2ec15a69 daemon: print peers' top height in sync_info (moneromooo-monero)
08abb670 protocol: fix reorgs while syncing (moneromooo-monero)
|
|
|
|
Use to load the database when the primary meta page is corrupted
|
|
|
|
used to open the previous snapshot, in case the latest one
is corrupted
|
|
They're interpreted as characters otherwise
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
This avoids failing to connect to the network in case all
known peers are unavailable (which can happen if the peer
list is small).
|
|
|
|
When a node is dropped, we stop considering its claimed blockchain
height as a factor in the target height calculation. This prevents
a runaway chain from being still thought to be the target even if
the nodes carrying it are dropped.
|
|
3ff5ce63 connection_context: initialize state (moneromooo-monero)
|
|
Why this was initialized properly before I have no idea, but
it is not anymore. Fix it, which fixes syncing in release mode.
|
|
635929ea protocol: add checks for top block hard fork version (moneromooo-monero)
7482253a epee: fixup KV_SERIALIZE_OPT to work in more cases (moneromooo-monero)
|
|
|
|
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.
|
|
|
|
e49f6d43 net_node: fix m_in_timedsync initialization (moneromooo-monero)
|
|
This fixes nodes not being able to connect to nodes which use
recent code. While there, init peer_id too.
|
|
With the new sync algorithm, the network overhead will be masked
as the thread adding blocks isn't interrupted by network calls
anymore. This should reduce memory usage a lot during sync.
|
|
|
|
a839a6fa Wallet API: add tx unlock time (Jaquee)
|
|
49ffb156 cmake: do not use GREATER_EQUAL, it's too new (moneromooo-monero)
|
|
61770ec2 change mixin to ring size in user visible places (moneromooo-monero)
|
|
|
|
|
|
7f7d42f8 core: fix invalid memory access creating tx (moneromooo-monero)
|
|
5d91b26c blockchain: skip checking tx semantics in embedded block hash range (moneromooo-monero)
|
|
04bd1925 cmake: Update detection of external miniupnpc (Erik de Castro Lopo)
|
|
|
|
c93b7692 blockchain_import: much faster when verifying with cryptonote::core (moneromooo-monero)
38756d00 core: new API to disable DNS checkpoint lookups (moneromooo-monero)
|
|
e31aac80 walletAPI: add getRefreshFromBlockHeight() (Jaquee)
48c0cb1b wallet api: pause refresh while commiting tx (Jaquee)
f233c01c CMakeLists.txt - ios/xcode fix (Jaquee)
|
|
569b9b2b updates: add "misc_log_ex.h" for logs (moneromooo-monero)
74628941 dns_utils: add <functional> for std::function (moneromooo-monero)
|
|
|