aboutsummaryrefslogtreecommitdiffstats
path: root/eth/downloader/downloader.go
Commit message (Expand)AuthorAgeFilesLines
* params: core, core/vm, miner: 64bit gas instructionsJeffrey Wilcke2017-02-141-6/+6
* Revert "params: core, core/vm, miner: 64bit gas instructions (#3514)"Jeffrey Wilcke2017-02-131-6/+6
* params: core, core/vm, miner: 64bit gas instructions (#3514)Jeffrey Wilcke2017-02-021-6/+6
* all: fix spelling errorsPéter Szilágyi2017-01-071-1/+1
* cmd, eth: added light client and light server modeszsfelfoldi2016-11-091-6/+21
* eth/downloader: lower a state sync log level (users freak out)Péter Szilágyi2016-11-011-1/+1
* eth/downloader: reduce fast sync block requirements, fix testPéter Szilágyi2016-10-311-3/+7
* core/state, eth/downloader, trie: reset fast-failure on progressPéter Szilágyi2016-10-311-11/+16
* eth/downloader: fix a data race in a log outputPéter Szilágyi2016-10-211-1/+2
* cmd/geth, code, eth/downloader: tune import logs and mem statsPéter Szilágyi2016-10-211-1/+1
* common, core, eth/downloader: adjust import log formattingPéter Szilágyi2016-10-181-1/+1
* ethereum, ethclient: add SyncProgress API endpointPéter Szilágyi2016-09-061-2/+9
* Merge pull request #2866 from karalabe/downloader-future-ancestorsPéter Szilágyi2016-08-161-9/+17
|\
| * eth/downloader: fewer headers and futures too un ancestor lookupPéter Szilágyi2016-07-261-9/+17
* | Merge pull request #2868 from karalabe/downloader-abort-master-dropPéter Szilágyi2016-08-091-2/+15
|\ \
| * | eth/downloader: abort sync if master drops (timeout prev)Péter Szilágyi2016-07-261-2/+15
| |/
* | Merge pull request #2867 from karalabe/dao-challenge-finishPéter Szilágyi2016-08-091-1/+1
|\ \
| * | eth, eth/downloader: don't forward the DAO challenge headerPéter Szilágyi2016-07-261-1/+1
| |/
* | Merge pull request #2861 from karalabe/track-peer-heads-properlyPéter Szilágyi2016-08-091-3/+4
|\ \ | |/ |/|
| * eth, eth/downloader: better remote head trackingPéter Szilágyi2016-07-251-3/+4
* | Merge pull request #2855 from karalabe/downloader-fix-stall-dropFelix Lange2016-07-251-1/+8
|\ \ | |/ |/|
| * eth/downloader: fix the stall checks/drops during syncPéter Szilágyi2016-07-221-1/+8
* | eth, eth/downloader, eth/fetcher: delete eth/61 codeFelix Lange2016-07-221-598/+69
|/
* eth/downloader: return invalid chain (peer drop) on import failsPéter Szilágyi2016-07-121-1/+1
* eth/downloader: adaptive quality of service tuningPéter Szilágyi2016-06-061-25/+119
* eth/downloader: make fast sync resilient to critical section failsPéter Szilágyi2016-06-021-14/+51
* Merge pull request #2637 from karalabe/downloader-always-cancelPéter Szilágyi2016-05-311-0/+2
|\
| * eth/downloader: ensure cancel channel is closed post syncPéter Szilágyi2016-05-301-0/+2
* | eth/downloader, trie: pull head state concurrently with chainPéter Szilágyi2016-05-271-28/+28
|/
* eth/downloader: fix reviewer commentsPéter Szilágyi2016-05-201-7/+30
* eth/downloader: stream partial skeleton filling to processorPéter Szilágyi2016-05-171-13/+25
* eth/downloader: implement concurrent header downloadsPéter Szilágyi2016-05-171-181/+299
* eth/downloader: bound fork ancestry and allow heavy short forksPéter Szilágyi2016-05-131-11/+57
* all: fix go vet warningsFelix Lange2016-04-151-4/+2
* core, eth: replace reorganiz with reorganisLeif Jurvetson2016-03-161-2/+2
* eth: various typosLeif Jurvetson2016-03-161-5/+5
* eth/downloader: fix premature exit before notifying all part fetchersPéter Szilágyi2016-02-291-1/+3
* eth/downloader: fix header download limitingFelix Lange2016-02-261-1/+1
* eth/downloader: fix partial rollback and ancestor lookupPéter Szilágyi2016-02-191-2/+28
* eth, eth/downloader, jsre: surface state sync progress through the APIPéter Szilágyi2016-02-101-3/+11
* eth/downloader: raise pending state limit that prevented concurrencyPéter Szilágyi2016-02-081-1/+0
* core, eth/downloader: ensure state presence in ancestor lookupPéter Szilágyi2016-01-041-52/+52
* eth/downloader: fetch data proportionally to peer capacityPéter Szilágyi2015-11-191-104/+74
* eth/downloader: also drain stateCh, receiptCh in eth/61 modeFelix Lange2015-11-191-71/+77
* eth/downloader: don't hang for spurious deliveriesFelix Lange2015-11-191-105/+57
* eth: don't block sync goroutines that short circuitPéter Szilágyi2015-10-281-2/+4
* core, eth, trie: fix data races and merge/review issuesPéter Szilágyi2015-10-211-71/+120
* core, eth: roll back uncertain headers in failed fast syncsPéter Szilágyi2015-10-191-10/+50
* eth/downloader: concurrent receipt and state processingPéter Szilágyi2015-10-191-24/+40
* core, eth, trie: direct state trie synchronizationPéter Szilágyi2015-10-191-334/+234
* core, eth: receipt chain reconstructionPéter Szilágyi2015-10-191-22/+33
* eth/downloader: add fast and light sync strategiesPéter Szilágyi2015-10-191-229/+438
* eth/downloader: match capabilities when querying idle peersPéter Szilágyi2015-10-021-2/+2
* eth/downloader: always send termination wakes, clean leftoverPéter Szilágyi2015-09-231-20/+36
* eth/downloader: header-chain order and ancestry checkPéter Szilágyi2015-09-151-1/+1
* eth, rpc: standardize the chain sync progress countersPéter Szilágyi2015-09-151-47/+139
* core: split out TD from database and all internalsPéter Szilágyi2015-09-111-3/+8
* eth/downloader: fix race causing occasional test failurePéter Szilágyi2015-09-011-1/+3
* eth: update metrics collection to handle eth/62 algosPéter Szilágyi2015-08-251-4/+40
* eth: port the synchronisation algo to eth/62Péter Szilágyi2015-08-251-94/+580
* eth: kill off protocol eth/60 in preparation for eth/62Péter Szilágyi2015-08-241-394/+3
* eth, eth/downloader: handle header requests, table driven proto testsPéter Szilágyi2015-08-241-5/+7
* eth, metrics, p2p: prepare metrics and net packets to eth/62Péter Szilágyi2015-08-211-1/+2
* eth, eth/downloader: don't report stall if fetcher filled the blockPéter Szilágyi2015-07-291-10/+22
* all: fix license headers one more timeFelix Lange2015-07-241-1/+1
* all: update license headers to distiguish GPL/LGPLFelix Lange2015-07-231-4/+4
* eth/downloader: drop peer if advertised TD but won't delvierPéter Szilágyi2015-07-091-0/+8
* all: update license informationFelix Lange2015-07-071-0/+16
* eth, eth/downloader: fix #1231, DOS vulnerability in hash queueingPéter Szilágyi2015-07-011-4/+14
* eth/downloader: reduce hash fetches in prep for eth/61Péter Szilágyi2015-07-011-3/+3
* eth, eth/downloader: transition to eth 61Péter Szilágyi2015-07-011-21/+376
* eth, eth/downloader: pass the eth protocol version throughPéter Szilágyi2015-07-011-2/+2
* eth, eth/fetcher: move propagated block import into fetcherPéter Szilágyi2015-06-181-1/+1
* eth, eth/fetcher: separate notification sync mechanismPéter Szilágyi2015-06-181-0/+1
* eth/downloader: always reenter processing if not exitingPéter Szilágyi2015-06-181-23/+22
* eth, eth/downloader: fix processing interrupt caused by temp cancelPéter Szilágyi2015-06-181-21/+19
* eth/downloader: fix #1280, overlapping (good/bad) delivery hangPéter Szilágyi2015-06-171-0/+1
* eth/downloader: detailed comment for the race corner casePéter Szilágyi2015-06-151-4/+15
* eth/downloader: fix import statistic reset, fetch hashes asyncPéter Szilágyi2015-06-151-11/+14
* eth, eth/downloader: move block processing into the downlaoderPéter Szilágyi2015-06-151-58/+119
* eth/downloader: instreument and test the sync peer dropPéter Szilágyi2015-06-151-5/+9
* eth, eth/downloader: move peer removal into downloaderPéter Szilágyi2015-06-151-28/+59
* eth/downloader: fetch the block hashes on the fly, when neededPéter Szilágyi2015-06-111-9/+5
* cmd/geth, eth/downloader: rough guess at the import etaPéter Szilágyi2015-06-101-2/+13
* cmd/geth, eth/downloader: collect and report import progress tooPéter Szilágyi2015-06-101-4/+35
* eth/downloader: fix hash fetch timeout handlingFelix Lange2015-06-091-12/+18
* eth/downloader: reject peer registration if head is bannedPéter Szilágyi2015-06-081-4/+15
* eth/downloader: cap the hash ban set, add test for itPéter Szilágyi2015-06-081-7/+16
* eth/downloader: preallocate the block cachePéter Szilágyi2015-06-081-4/+4
* eth/downloader: fix merge compile errorPéter Szilágyi2015-06-081-1/+1
* eth/downloader: don't block hash deliveries while pulling blocksPéter Szilágyi2015-06-081-17/+14
* eth/downloader: clean up and simplify the code a bitPéter Szilágyi2015-06-081-13/+3
* eth/downloader: short circuit sync if head hash is bannedPéter Szilágyi2015-06-081-0/+4
* eth/downloader: accumulating hash bans for reconnecting attackersPéter Szilágyi2015-06-081-5/+91
* eth/downloader: clean up tests and unused variablesPéter Szilágyi2015-06-081-6/+4
* Merge pull request #1189 from karalabe/downloader-polishesJeffrey Wilcke2015-06-051-16/+35
|\
| * eth/downloader: differentiate stale and nonexistent deliveriesPéter Szilágyi2015-06-051-16/+34
| * eth/downloader: log hard timeouts and reset capacityPéter Szilágyi2015-06-051-0/+1
* | eth, eth/downloader: fix #1098, elevate empty hash errors to peer dropsPéter Szilágyi2015-06-051-2/+2
|/
* eth/downloader: log after state updates, easier to debugPéter Szilágyi2015-06-041-5/+3
* eth/downloader: fix #1178, don't request blocks beyond the cache boundsPéter Szilágyi2015-06-041-14/+24
* eth/downloader: add a basic block download congestion controlPéter Szilágyi2015-06-031-6/+8
* core, eth/downloader: expose the bad hashes, check in downloaderPéter Szilágyi2015-05-281-0/+16
* eth/downloader: silence "Added N blocks from..." if N == 0Péter Szilágyi2015-05-261-1/+1
* eth, eth/downloader: surface downloaded block origin, drop on errorPéter Szilágyi2015-05-261-1/+7
* eth, eth/downloader: remove duplicate consts, bump hash fetch to 2KPéter Szilágyi2015-05-211-4/+6
* eth/downloader: circumvent a forged block chain with known parent attackPéter Szilágyi2015-05-211-12/+21
* eth/downloader: prevent a peer from dripping bad hashesPéter Szilágyi2015-05-211-8/+12
* eth/downloader: moved start eventobscuren2015-05-161-2/+2
* eth/downloader: circumvent download race between crosscheck and hashesPéter Szilágyi2015-05-161-5/+7
* eth/downloader: fix cancel channel double closePéter Szilágyi2015-05-161-3/+8
* eth/downloader: circumvent a fake blockchain attackPéter Szilágyi2015-05-151-12/+9
* eth/downloader: don't penalize for stale cross checksPéter Szilágyi2015-05-151-7/+17
* eth, eth/downloader: detect and handle madeup hash attacksPéter Szilágyi2015-05-151-32/+64
* eth/downloader: circumvent hash reordering attacksPéter Szilágyi2015-05-151-15/+21
* eth/downloader: check sync after failed attacksPéter Szilágyi2015-05-151-1/+5
* eth/downloader: add a test for detecting missing blocksPéter Szilágyi2015-05-151-3/+1
* eth, eth/downloader: prevent hash repeater attackPéter Szilágyi2015-05-151-4/+6
* eth, eth/downloader, miner: use download events to check miner startobscuren2015-05-151-1/+16
* Merge pull request #974 from karalabe/downloader-fix-unknown-parent-attackJeffrey Wilcke2015-05-141-9/+2
|\
| * eth/downloader: remove a previous leftoverPéter Szilágyi2015-05-141-1/+0
| * eth, eth/downloader: remove parent verification from the downlaoderPéter Szilágyi2015-05-141-12/+2
| * eth, eth/downloader: handle a potential unknown parent attackPéter Szilágyi2015-05-141-8/+12
* | Merge pull request #950 from karalabe/downloader-cancel-syncJeffrey Wilcke2015-05-141-32/+37
|\ \
| * | eth/downloader: remove a redundant sync progress checkPéter Szilágyi2015-05-131-4/+0
| * | eth/downloader: add a user sync notificatonPéter Szilágyi2015-05-131-0/+5
| * | eth/downloader: sync the cancel channel during cancel tooPéter Szilágyi2015-05-131-21/+4
| * | eth/downloader: fix deliveries to check for sync cancelsPéter Szilágyi2015-05-131-10/+31
| |/
* / eth/downloader: fix nil panic caused by wrong variable usePéter Szilágyi2015-05-131-1/+1
|/
* eth/downloader: fix active peer shadowing, polish func namesPéter Szilágyi2015-05-131-18/+10
* eth, eth/downloader: moved pending queue error message to debugobscuren2015-05-111-2/+2
* eth/downloader: use count instead of peers, clearerPéter Szilágyi2015-05-111-2/+2
* eth/downloader: revert to demotion, use harsher penaltyPéter Szilágyi2015-05-111-3/+9
* eth/downloader: fix #910, thread safe peers & polishesPéter Szilágyi2015-05-111-84/+56
* eth: added a cancel method for the downloaderobscuren2015-05-101-2/+60
* eth/downloader: fix leftover state between syncsPéter Szilágyi2015-05-081-1/+4
* eth, eth/downloader: handle sync errors a bit more gracefullyPéter Szilágyi2015-05-081-15/+13
* eth, eth/downloader: make synchronize thread safePéter Szilágyi2015-05-081-57/+15
* eth/downloader: fix expiration not running while fetchingPéter Szilágyi2015-05-071-22/+18
* eth/downloader: prioritize block fetch based on chain position, cap memory usePéter Szilágyi2015-05-071-120/+70
* downloader: hash downloading recoveryobscuren2015-05-031-19/+54
* eth/downloader: changed has to blockHashes for chain linkingobscuren2015-05-031-1/+1
* eth, eth/downloader: Moved block processing & graceful shutdownobscuren2015-05-011-149/+132
* eth/downloader: delete blocks from queueobscuren2015-04-301-2/+14
* eth, eth/downloader: remove bad peers from peer setobscuren2015-04-301-10/+8
* eth/downloader: drop blockobscuren2015-04-301-1/+1
* eth/downloader: ignore orphan blocks in the downloader.obscuren2015-04-291-5/+9
* core: return the index of the block that failed when inserting a chainobscuren2015-04-291-5/+4
* eth/downloader: reset the chain when parent is missing during processingobscuren2015-04-291-0/+2
* eth: check if downloader is busy before showing log messageobscuren2015-04-291-0/+4
* eth/downloader: removed update loop and synch channelobscuren2015-04-251-25/+0
* eth, eth/downloader: simplified synchronisation processobscuren2015-04-241-24/+13
* eth, eth/downloader: don't require td on downloader. Fixed testsobscuren2015-04-241-4/+1
* eth, eth/downloader: moved peer selection to protocol handlerobscuren2015-04-241-45/+50
* core: added chain head reset to known blockobscuren2015-04-201-0/+2
* geth: admin download statusobscuren2015-04-201-11/+15
* downloader: fixed tests with low ttlobscuren2015-04-191-2/+2
* movedobscuren2015-04-191-6/+6
* Removed debug printlnobscuren2015-04-191-3/+0
* downloader: moved chunk ignoring. Fixes issue with catching upobscuren2015-04-191-17/+22
* downloader: defer peer reset after downloadobscuren2015-04-191-4/+7
* downloader: reset hashTtl on receiveobscuren2015-04-191-0/+2
* downloader: don't remove peers. keep them aroundobscuren2015-04-191-2/+3
* downloader: free up peers from work when the downloader resetsobscuren2015-04-191-1/+3
* downloader: throw an error if there are no peers available for downloadobscuren2015-04-191-6/+16
* downloader: fixed a race condition for download statusobscuren2015-04-191-1/+0
* eth: adapted to new synchronous api of downloader's AddBlockobscuren2015-04-191-2/+0
* downloader: improved downloading and synchronisationobscuren2015-04-191-109/+35
* downloader: make sure that hashes are only accepted from the active peerobscuren2015-04-181-18/+45
* downloader: reset the queue if a peer response with an empty hash setobscuren2015-04-181-14/+25
* downloader: all handlers check for isBusyobscuren2015-04-181-7/+7
* Merge branch 'develop' into downloader-protoobscuren2015-04-181-5/+97
|\
| * downloader: fixed a typoobscuren2015-04-171-1/+1
| * downloader: added demotion / promotion in prep. for rep. systemobscuren2015-04-161-0/+5
| * downloader: updated downloader and fixed issues with catch upobscuren2015-04-161-21/+47
* | downloader: updated downloader and fixed issues with catch upobscuren2015-04-161-22/+48
|/
* downloader: added missing blocks catchup functionalityobscuren2015-04-131-121/+190
* downloader: return an error for peer.fetch and return chunk to queueobscuren2015-04-121-2/+8
* downloader: implemented new downloaderobscuren2015-04-121-0/+328