hashmap
b01fcd2f56
Remove unused unsafe declarations ( #1901 )
2018-10-31 13:19:28 -07:00
Ignotus Peverell
46051ee174
improve minimum difficulty handling ( #1791 )
...
* rename MIN_DIFFICULTY to UNIT_DIFFICULTY; define Difficulty::unit, fix INITIAL_DIFFICULTY
* improve minimum difficulty handling
* replace all Difficulty::one by ::min
* revert secondary scaling default in HeaderInfo; rename scaling_difficulty; refactor difficulty_data_to_vector
2018-10-27 10:37:44 -07:00
Ignotus Peverell
c083312ad4
Improve crate descriptors to be more cargo-friendly ( #1844 )
...
* Update secp dependency to use crates.io version
* Add more details to various Cargo.toml
* Remove use of env variables that aren't reliably provided by cargo
2018-10-25 17:44:50 -07:00
Ignotus Peverell
a42d66efff
Merge branch 'master' into unitdiff
2018-10-25 14:20:41 -07:00
eupn
711fad6c24
Remove TODO for counting of bytes that was already done ( #1838 )
2018-10-25 15:57:53 +02:00
Antioch Peverell
38cbd6eafb
full node == fast sync (no full archival guarantees) ( #1809 )
...
* wip - fast sync only
* wip
* cleanup
* cleanup
* cleanup comments in default config file around capabilities
* fixup p2p tests
2018-10-23 13:01:19 +01:00
Ignotus Peverell
7f60e2076d
Default last connected to migrate older db ( #1812 )
...
Fixes backward compatibility issue with #1794
2018-10-22 18:15:10 -07:00
eupn
8f42f7306c
feat: remove expired peers from the storage ( #1794 )
...
* Initial expired peers removal
* Stop expired peers
* Simplify peer removal and remove only Defunct peers
* Make seed to check for expired peers every hour
* Get rid of unused vector of peers to remove
* Make peer deletion predicate closure immutable
2018-10-22 13:59:40 -07:00
eupn
1195071f5b
Replace logging backend to log4rs and add log rotation ( #1789 )
...
* Replace logging backend to flexi-logger and add log rotation
* Changed flexi_logger to log4rs
* Disable logging level filtering in Root logger
* Support different logging levels for file and stdout
* Don't log messages from modules other than Grin-related
* Fix formatting
* Place backed up compressed log copies into log file directory
* Increase default log file size to 16 MiB
* Add comment to config file on log_max_size option
2018-10-21 13:30:56 -07:00
Gary Yu
0d06561a91
replace stdlib RwLock and Mutex with parking_lot ( #1793 )
...
* replace all stdlib RwLock with parking_lot RwLock
* replace stdlib Mutex with parking_lot Mutex
* rustfmt
2018-10-20 08:13:07 +08:00
John Tromp
846b38308c
replace all Difficulty::one by ::min
2018-10-18 21:18:16 +02:00
yeastplume
f94ede9af3
merge T4 into master
2018-10-18 11:23:04 +01:00
Gary Yu
53b10a083c
kick stuck peer out of connected peers. ( #1782 )
...
* cherry-picking commit 7754adb8
from master for #1746
2018-10-18 10:04:05 +08:00
Ignotus Peverell
b5cb227322
Last genesis for T4, unless I messed up something
2018-10-17 19:36:12 +00:00
eupn
b22fb55245
feat: add peers used bandwidth calculation and display in TUI ( #1770 )
...
* Add peers used bandwidth calculation and display in TUI
* Fix formatting
* Change Mutex to RwLock from peer's used bandwidth statistics in Tracker
* Make used bandwidth column in TUI peers list sort by sum of bytes
2018-10-17 10:01:42 -07:00
Yeastplume
b43d6e4326
[T4] Set genesis block data + initial secondary scaling correctly ( #1776 )
...
* ensure genesis block+pre genesis is populated correctly with secondary scaling
* rustfmt
2018-10-17 16:53:31 +01:00
Yeastplume
5cec885ef5
[T4] diff change ( #1769 )
...
* pre-t4 again
* rustfmt
2018-10-17 13:48:18 +01:00
Yeastplume
404165a8fd
[T4] Add sec pow info to TUI, change magic number, genesis diff to 1 (temporarily) ( #1768 )
...
* add sec scaling stats to tui
* rustfmt
2018-10-17 10:37:28 +01:00
hashmap
85433c659d
Introduce a constant for peer send channel capacity ( #1761 )
...
We implicitly use it also in body_sync, so it's hard to keep it in sync.
2018-10-16 16:31:00 -07:00
Gary Yu
7754adb834
kick stuck peer out of connected peers ( #1746 )
...
* kick stuck peer out of connected peers
* adjust kick time to 2 hours
* stuck detection take into account own difficulty compare
2018-10-16 09:14:16 -07:00
yeastplume
4bb31dbdb4
update new genesis block, change p2p msg magic number
2018-10-16 10:16:54 +01:00
John Tromp
34646ddf51
[T4] Rename all shiftsize / cuckoo_size to edge_bits and change value for T4 ( #1752 )
...
* replace all size_shift / cuckoo_size by edge_bits and change some constants for T4
* replace remaining occurrences of sizeshift
2018-10-15 16:14:23 -07:00
yeastplume
9423865f92
update cargo versioning
2018-10-15 10:34:33 +00:00
Gary Yu
2e6a242827
small improvement on the servers test ( #1737 )
...
* cherry-pick from master for #1736
2018-10-14 20:13:49 +08:00
Gary Yu
6f4eb8dd2e
small improvement on the servers test ( #1736 )
...
* small improve on the servers test, to avoid Travis-CI failure on "job exceeded the maximum log length"
* rustfmt
2018-10-14 17:01:34 +08:00
Ignotus Peverell
00be540e0c
Fix small txhashset download timeouts ( #1735 )
2018-10-14 15:25:17 +08:00
Ignotus Peverell
43f4f92730
[T4] Secondary proof of work difficulty adjustments ( #1709 )
...
* First pass at secondary proof of work difficulty adjustments
* Core and chain test fixes
* Next difficulty calc now needs a height. Scaling calculation fixes. Setting scaling on mined block.
* Change factor to u32 instead of u64.
* Cleanup structs used by next_difficulty
* Fix header size calc with u32 scaling
2018-10-13 13:57:01 -07:00
Gary Yu
9a716aea72
feature: txhashset downloading progress display on tui ( #1729 ) ( #1730 )
...
(cherry picked from commit 5c0eb11a7d
)
2018-10-13 10:12:13 +08:00
Gary Yu
5c0eb11a7d
feature: txhashset downloading progress display on tui ( #1729 )
2018-10-12 15:53:50 -07:00
Gary Yu
3fb4669d0a
small speed optimization for header sync ( #1728 )
...
* fix: avoid a confusing log when fastsync start (#1720 )
(cherry picked from commit 4f462cdfdc
)
* small speed optimization for header sync (#1719 )
(cherry picked from commit d3589d1bf5
)
2018-10-12 08:44:35 +08:00
Gary Yu
d3589d1bf5
small speed optimization for header sync ( #1719 )
2018-10-11 16:47:27 +08:00
Antioch Peverell
8cfe9e64ac
Remove RwLock around individual peer instances ( #1673 )
...
* get rid of RwLock around peer instances
* rustfmt
* rename stuff to live_info
* rustfmt
* serialize into PeerInfoDisplay
limit live_info write lock to peer_info.update()
rename to PeerLiveInfo
* simplify broadcast logic a bit more
connected peers are connected by definition
* return true/false on broadcast so we can send to more peers
* rustfmt
* fix p2p and server tests for PeerInfoDisplay
* commit
2018-10-09 08:27:34 +01:00
Antioch Peverell
de5b6868fb
Add last_seen to peer info ( #1688 )
...
* add last_seen to peer and update on ping/pong
expose last_seen in tui
* rustfmt
* chrono serde features
2018-10-08 13:39:52 +01:00
Gary Yu
1a6101f870
refactor: remove thread p2p-moniter, move the Ping to the connect_and_monitor ( #1670 )
2018-10-07 10:24:06 -07:00
Gary Yu
463567b19e
optimization of peer state write lock ( #1669 )
...
* optimization of peer state write lock
2018-10-07 13:01:32 +08:00
Gary Yu
a37f7bbcab
improvement on peer lock for ping/pong ( #1668 )
...
* peer lock optimization for ping/pong
* is_banned peer lock use read lock instead of write
2018-10-07 08:00:53 +08:00
Antioch Peverell
c86578c2a9
Peers broadcast fixes ( #1667 )
...
* peers broadcast fixes
* stop at num_peers...
2018-10-05 16:53:55 -07:00
Gary Yu
697805752c
fix: seed thread panicked on a try_read unwrap
2018-10-05 21:16:44 +08:00
Ignotus Peverell
85d5feafa3
Fix concurrency issue around peer add and start. Fixes #1585 ( #1633 )
...
* Fix concurrency issue around peer add and start. Fixes #1585
2018-10-02 10:17:29 -04:00
Antioch Peverell
c9c829514b
Trace get block ( #1628 )
...
* trace on GetBlock msg
* rustfmt
2018-10-01 22:12:39 +01:00
Gary Yu
8d62247c99
Small cleanup of rand usage ( #1576 )
...
Clean 3 build warning of deprecated item 'rand::Rand::rand'
2018-09-24 15:15:55 -07:00
Gary Yu
56ffbee7e9
fix: all fast sync nodes report to peers as full nodes ( #1547 )
...
* fix: all fast sync nodes report to peers as full nodes
2018-09-20 07:09:39 +08:00
Ignotus Peverell
9cc7aed713
Dual proof of work, first step ( #1534 )
...
* Move Proof and Difficulty types to pow module. Difficulty scaling calculation.
* Diffculty scaling and size shift for 2nd PoW
* Backport e7eb26ee
* Test compilation fixes
* Scaling only need to go one way, as @tromp pointed out
2018-09-18 15:12:57 -07:00
Antioch Peverell
c291c48436
Simplify block broadcast ( #1549 )
...
* removed random "block vs compact_block"
2018-09-18 10:51:37 -07:00
Antioch Peverell
a4476443bb
Compact transactions (initial prep work) ( #1548 )
...
* introduce CompactTransaction (unused currently)
* rustfmt
* fix comments
2018-09-18 15:25:26 +01:00
Quentin Le Sceller
345a6cb53e
Update rand crate to 0.5 ( #1542 )
...
* Update rand crate to 0.5
* Rustfmt
* Misplaced import
2018-09-18 09:39:45 +01:00
Gary Yu
a0deb18e77
Update version of some crates ( #1536 )
...
Update version of some crates
2018-09-17 10:47:48 +08:00
Gary Yu
4a5a91a9cf
Fix: clean_peers is using connected_peers, which make it do nothing ( #1505 )
...
* a failed handshake for example don't deserve banning
* remove not used 'BadOthers' from ReasonForBan
2018-09-13 09:53:35 -07:00
Gary Yu
7a689d468c
Remove 'WebStatic' seed_type since it was obsoleted a while ago ( #1512 )
2018-09-11 20:28:27 -07:00
Gary Yu
0dbfed5971
return an Err when read return 0 ( #1503 )
...
* return an Err when read return 0, instead of all zeroed buff without any error
2018-09-11 13:14:48 +02:00