| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |\
| |
| |
| | |
4d2aad837 Revert "blockchain: detect and log bad difficulty calculations" (selsta)
|
| | |
| |
| |
| | |
This reverts commit 5741b4d74de542f6f75dddad8125f4c4a5ad9143.
|
| |\ \
| |/
|/|
| | |
41c4bc4 Blockchain: get height of RingCT fork programmatically (jeffro256)
|
| | |
| |
| |
| |
| |
| | |
Get height of the RingCT fork to start the output distributuon programmatically, instead of using a hardcoded index.
If using a hardcoded index, when the hardfork tables are modified, this can cause segmentation faults or horrific privacy issues: https://codeberg.org/wownero/wownero/issues/488#issuecomment-2514880.
|
| |\ \
| |/
|/|
| | |
f0a574c Blockchain: fix temp fails causing alt blocks to be permanently invalid (jeffro256)
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[RELEASE]
1. Use std::is_standard_layout and std::is_trivially_copyable instead of std::is_pod for KV byte-wise serialization, which fixes compile issue for Boost UUIDs
2. Removed reimplementation of std::hash for boost::uuids::uuid
3. Removed << operator overload for crypto::secret_key
4. Removed instances in code where private view key was dumped to the log in plaintext
Release version of #9450, containing C++14 modified assertions
|
| |/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Related to https://github.com/monero-project/research-lab/issues/78
Added a relay rule that enforces the `unlock_time` field is equal to 0 for non-coinbase transactions.
UIs changed:
* Removed `locked_transfer` and `locked_sweep_all` commands from `monero-wallet-cli`
APIs changed:
* Removed `unlock_time` parameters from `wallet2` transfer methods
* Wallet RPC transfer endpoints send error codes when requested unlock time is not 0
* Removed `unlock_time` parameters from `construct_tx*` cryptonote core functions
@tobtoht: undo rebase changes tx.dsts -> tx_dsts
|
| | |
|
| |
|
|
|
| |
- Fixed undefined behavior after a call to `remove_tx_from_transient_lists` (it used an invalid iterator)
- Fixed `txCompare` (it wasn't strictly weak ordered)
|
| |\
| |
| |
| | |
36ee12b get_block_template_backlog: better sorting logic (SChernykh)
|
| | |
| |
| |
| | |
std::sort is unstable, so it can return random sets of transactions when mempool has many transactions with the same fee/byte. It can result in p2pool mining empty blocks sometimes because it doesn't pick up "new" transactions immediately.
|
| |/
|
|
|
| |
Nodes who see different txs in a double spend attack will drop each other, splitting the network.
Issue found by @boog900.
|
| |\
| |
| |
| | |
f2360a7 build: prepare v0.18.3.2 (selsta)
|
| | | |
|
| |/ |
|
| |\
| |
| |
| |
| | |
69de381 add a test for the long term weight cache (Boog900)
810f6a6 Fix: long term block weight cache The long term block weight cache was doing a wrong calculation when adding a new block to the cache. (Boog900)
|
| | |
| |
| |
| |
| | |
The long term block weight cache was doing a wrong calculation when
adding a new block to the cache.
|
| |/ |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[release-v0.18]
- `/getblocks.bin` respects the `RESTRICTED_TX_COUNT` (=100) when
returning pool txs via a restricted RPC daemon.
- A restricted RPC daemon includes a max of `RESTRICTED_TX_COUNT` txs
in the `added_pool_txs` field, and returns any remaining pool hashes
in the `remaining_added_pool_txids` field. The client then requests
the remaining txs via `/gettransactions` in chunks.
- `/gettransactions` no longer does expensive no-ops for ALL pool txs
if the client requests a subset of pool txs. Instead it searches for
the txs the client explicitly requests.
- Reset `m_pool_info_query_time` when a user:
(1) rescans the chain (so the wallet re-requests the whole pool)
(2) changes the daemon their wallets points to (a new daemon would
have a different view of the pool)
- `/getblocks.bin` respects the `req.prune` field when returning
pool txs.
- Pool extension fields in response to `/getblocks.bin` are optional
with default 0'd values.
|
| |
|
|
| |
[release-v0.18]
|
| |
|
|
| |
reported by sech1
|
| |\
| |
| |
| | |
4f1262b build: prepare v0.18.2.2 (selsta)
|
| | | |
|
| |/
|
|
|
|
| |
Also: txs with tx_extra which is too large will not get published to ZMQ
Co-authored-by: SChernykh <sergey.v.chernykh@gmail.com>
|
| |\
| |
| |
| | |
cdeb286 build: prepare v0.18.2.1 (selsta)
|
| | | |
|
| |\ \
| | |
| | |
| | | |
5900ed3 Add a size limit for tx_extra in tx pool (tevador)
|
| | |/ |
|
| |/ |
|
| | |
|
| |\
| |
| |
| | |
29208a3 Cache successful erRctNonSemanticsSimple calls (SChernykh)
|
| | | |
|
| |/
|
|
|
|
|
|
|
| |
- Straight-forward call interface: `void rx_slow_hash(const char *seedhash, const void *data, size_t length, char *result_hash)`
- Consensus chain seed hash is now updated by calling `rx_set_main_seedhash` whenever a block is added/removed or a reorg happens
- `rx_slow_hash` will compute correct hash no matter if `rx_set_main_seedhash` was called or not (the only difference is performance)
- New environment variable `MONERO_RANDOMX_FULL_MEM` to force use the full dataset for PoW verification (faster block verification)
- When dataset is used for PoW verification, dataset updates don't stall other threads (verification is done in light mode then)
- When mining is running, PoW checks now also use dataset for faster verification
|
| | |
|
| |\
| |
| |
| | |
802c4bb Move update_checkpoints() to a later stage (SChernykh)
|
| | |
| |
| |
| | |
update_checkpoints() makes a few DNS requests and can take up to 20-30 seconds to complete (3-6 seconds on average). It is currently called from core::handle_incoming_block() which holds m_incoming_tx_lock, so it blocks all incoming transactions and blocks processing while update_checkpoints() is running. This PR moves it to until after a new block has been processed and relayed, to avoid full monerod locking.
|
| |/ |
|
| | |
|
| |\
| |
| |
| | |
93db74a rpc: skip bootstrap nodes that are lower than last checkpoint (selsta)
|
| | | |
|
| |/ |
|
| |\
| |
| |
| | |
fac7c43 continue pool pruning even if a tx can't be found (j-berman)
|
| | | |
|
| |\ \
| | |
| | |
| | | |
309f6ba build: prepare v0.18.1.0 (selsta)
|
| | |/ |
|
| |\ \
| | |
| | |
| | | |
099fc1f Fixed get_block_template_backlog performance (SChernykh)
|
| | |/
| |
| |
| |
| |
| | |
Before the fix, it processed all transactions in the mempool which could be very slow when mempool grows to several MBs in size. I observed `get_block_template_backlog` taking up to 15 seconds of CPU time under high mempool load.
After the fix, only transactions that can potentially be mined in the next block will be processed (a bit more than the current block median weight).
|