aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* core, eth, les, light: store transaction receipts without txHash and gasCostMatthew Halpern2019-04-1511-123/+552
|
* node: do not continue if 'signer' is used but connection fails (#19441)Martin Holst Swende2019-04-121-1/+1
| | | This makes geth fails instead of falling back to local keystore, if the command line flag `--signer` is used
* cmd/clef, signer: make fourbyte its own package, break dep cycle (#19450)Péter Szilágyi2019-04-1217-695/+765
| | | | | | * cmd/clef, signer: make fourbytes its own package, break dep cycle * signer/fourbyte: pull in a sanitized 4byte database
* cmd/swarm: fix resource leaks in tests (#19443)Ferenc Szabo2019-04-116-66/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/api: fix file descriptor leak in NewTestSwarmServer Swarm storage (localstore) was not closed. That resulted a "too many open files" error if `TestClientUploadDownloadRawEncrypted` was run with `-count 1000`. * cmd/swarm: speed up StartNewNodes() by parallelization Reduce cluster startup time from 13s to 7s. * swarm/api: disable flaky TestClientUploadDownloadRawEncrypted with -race * swarm/storage: disable flaky TestLDBStoreCollectGarbage (-race) With race detection turned on the disabled cases often fail with: "ldbstore_test.go:535: expected surplus chunk 150 to be missing, but got no error" * cmd/swarm: fix process leak in TestACT and TestSwarmUp Each test run we start 3 nodes, but we did not terminate them. So those 3 nodes continued eating up 1.2GB (3.4GB with -race) after test completion. 6b6c4d1c2754f8dd70172ab58d7ee33cf9058c7d changed how we start clusters to speed up tests. The changeset merged together test cases and introduced a global cluster. But "forgot" about termination. Let's get rid of "global cluster" so we have a clear owner of termination (some time sacrifice), while leaving subtests to use the same cluster.
* cmd/clef: bundle 4byte db into clef, (#19112)Martin Holst Swende2019-04-117-33/+305
| | | | | | | | * clef: bundle 4byte db into clef, fix #19048 * clef: add go-generate directive, remove internal abidb parser tool * cmd/clef: extend go generate to format asset file
* metrics/prometheus: expose metrics in prometheus format too (#17077)Maxim Krasilnikov2019-04-113-0/+185
| | | | | | | | | | * metrics/prometheus: added prometheus http server and metrics collector * metrics/prometheus: minor cleanups * metrics/prometheus: named keys instead name in tag * metrics/prometheus: minor typo cleanups, sorted report
* clef: update warning-text (#19442)Martin Holst Swende2019-04-101-4/+7
| | | | | | * clef: update warning-text * Update cmd/clef/main.go
* swarm/version: bump Swarm due to Geth hotfix releasePéter Szilágyi2019-04-101-1/+1
|
* accounts/scwallet: fix card pairing instruction message (#19436)Guillaume Ballet2019-04-101-1/+1
|
* accounts/scwallet: Update README for v2.2.1 support (#19425)Guillaume Ballet2019-04-101-15/+48
| | | | Update the app download link to the latest version, as requested in #19418
* p2p: remove useless parameter (#19433)ANOTHEL2019-04-102-4/+3
|
* rpc: cancel root context after all requests are served (#19430)gary rong2019-04-101-1/+1
|
* Merge pull request #19426 from karalabe/vendor-fix-freegeoipPéter Szilágyi2019-04-101-5/+0
|\ | | | | vendor: fix some vendor config leftover
| * vendor: fix some vendor config leftoverPéter Szilágyi2019-04-101-5/+0
|/
* vendor: upgrade go-libpcsclite (#19420)Guillaume Ballet2019-04-105-51/+328
| | | | | | * vendor: remove leftover trace * Upgrade go-libpcsclite to the latest version
* Merge pull request #19423 from SamuelMarks/go1.12.3Péter Szilágyi2019-04-091-2/+2
|\ | | | | appveyor.yml: Upgraded to Go 1.12.3
| * appveyor.yml: Upgraded to Go 1.12.3Samuel Marks2019-04-091-2/+2
|/
* accounts:smartcard wallet without the dependency on libpcsclite (#19273)Guillaume Ballet2019-04-0952-9/+37171
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * accounts, core, internal, node: Add support for smartcard wallets * accounts, internal: Changes in response to review * vendor: pull in missing go-echd library * accounts/scwallet, console: user friendly card opening * accounts/scwallet: ordered wallets, tighter events, derivation logs * accounts, console: frendly card errors, support pin unblock * accounts/scwallet: fix crypto API change * accounts/scwallet: rebase and update * Fix some linter issues * Remove the direct dependency on libpcsclite Instead, use a go library that communicates with pcscd over a socket. Also update the changes introduced by @gravityblast since this PR's inception * Temporary fix to the ADBU status call * fix wallet status update This is a temporary fix, better checks need to be performed once the whole process has been validated. * Fix key derivation * Add some documentation * Update a comment to reflect the workings of the updated system * Vendor keycard-go/derivationpath * Formatting fixes * Add instructions on how to install the card * Achieve full transaction signature+sending * PK derivation has to be supported by the card * Fix linter issues * Upgrade to keycard app v2.1.1 * Set gballet as codeowner of the smartcard wallet dir * fix unnecessary condition linter warning * refuse to overwrite the master key of a previously initialized card * refresh the account list when initializing the card * Update the card preparation instructions based on review feedback * 'sanitize' JSON input Co-Authored-By: gballet <gballet@gmail.com> * Apply suggestions from code review Co-Authored-By: gballet <gballet@gmail.com> * fix a serialization error * more review feedback * More review feedback * Can now specify the number of empty accounts to derive * Fix rebase error: include norm package * Update bip-39 ref and remove ebfe/scard from vendor * Add missing dependency
| * Add missing dependencyGuillaume Ballet2019-04-098-0/+14503
| |
| * Update bip-39 ref and remove ebfe/scard from vendorGuillaume Ballet2019-04-0910-2210/+426
| |
| * Fix rebase error: include norm packageGuillaume Ballet2019-04-0812-6/+18525
| |
| * Can now specify the number of empty accounts to deriveGuillaume Ballet2019-04-081-7/+10
| |
| * More review feedbackGuillaume Ballet2019-04-081-0/+5
| |
| * more review feedbackGuillaume Ballet2019-04-082-11/+10
| |
| * fix a serialization errorGuillaume Ballet2019-04-081-1/+3
| |
| * Apply suggestions from code reviewMartin Holst Swende2019-04-081-3/+6
| | | | | | Co-Authored-By: gballet <gballet@gmail.com>
| * 'sanitize' JSON inputMartin Holst Swende2019-04-081-1/+1
| | | | | | Co-Authored-By: gballet <gballet@gmail.com>
| * Update the card preparation instructions based on review feedbackGuillaume Ballet2019-04-081-0/+9
| |
| * refresh the account list when initializing the cardGuillaume Ballet2019-04-081-0/+1
| |
| * refuse to overwrite the master key of a previously initialized cardGuillaume Ballet2019-04-081-3/+15
| |
| * fix unnecessary condition linter warningGuillaume Ballet2019-04-081-1/+1
| |
| * Set gballet as codeowner of the smartcard wallet dirGuillaume Ballet2019-04-081-0/+1
| |
| * Upgrade to keycard app v2.1.1Guillaume Ballet2019-04-082-24/+16
| |
| * Fix linter issuesGuillaume Ballet2019-04-082-17/+13
| |
| * PK derivation has to be supported by the cardGuillaume Ballet2019-04-081-11/+7
| |
| * Achieve full transaction signature+sendingGuillaume Ballet2019-04-081-0/+18
| |
| * Add instructions on how to install the cardGuillaume Ballet2019-04-081-0/+19
| |
| * Formatting fixesGuillaume Ballet2019-04-081-11/+16
| |
| * Vendor keycard-go/derivationpathGuillaume Ballet2019-04-084-0/+612
| |
| * Update a comment to reflect the workings of the updated systemGuillaume Ballet2019-04-082-3/+3
| |
| * Add some documentationGuillaume Ballet2019-04-081-0/+30
| |
| * Fix key derivationGuillaume Ballet2019-04-081-66/+33
| |
| * fix wallet status updateGuillaume Ballet2019-04-081-21/+24
| | | | | | | | | | | | This is a temporary fix, better checks need to be performed once the whole process has been validated.
| * Temporary fix to the ADBU status callGuillaume Ballet2019-04-081-3/+24
| |
| * Remove the direct dependency on libpcscliteGuillaume Ballet2019-04-0818-1192/+678
| | | | | | | | | | | | | | Instead, use a go library that communicates with pcscd over a socket. Also update the changes introduced by @gravityblast since this PR's inception
| * Fix some linter issuesGuillaume Ballet2019-04-082-7/+3
| |
| * accounts/scwallet: rebase and updateGuillaume Ballet2019-04-082-8/+36
| |
| * accounts/scwallet: fix crypto API changePéter Szilágyi2019-04-081-1/+5
| |
| * accounts, console: frendly card errors, support pin unblockPéter Szilágyi2019-04-086-112/+169
| |
| * accounts/scwallet: ordered wallets, tighter events, derivation logsPéter Szilágyi2019-04-082-63/+81
| |
| * accounts/scwallet, console: user friendly card openingPéter Szilágyi2019-04-082-38/+90
| |
| * vendor: pull in missing go-echd libraryPéter Szilágyi2019-04-085-0/+206
| |
| * accounts, internal: Changes in response to reviewNick Johnson2019-04-086-118/+137
| |
| * accounts, core, internal, node: Add support for smartcard walletsNick Johnson2019-04-0821-0/+5364
| |
* | swarm/version: bump version due to Geth-only hotfix releasePéter Szilágyi2019-04-091-1/+1
| |
* | clef: fix chainId key being present in domain map (#19303)Steve Gattuso2019-04-092-2/+38
| | | | | | This PR fixes this, moving domain.ChainId from the map's initializer down to a separate if statement which checks the existance of ChainId's value, similar to the rest of the fields, before adding it. I've also included a new test to demonstrate the issue
* | swarm/version: bump version due to Geth maintenance releasePéter Szilágyi2019-04-081-1/+1
| |
* | Merge pull request #19403 from zsfelfoldi/remove-les1Felföldi Zsolt2019-04-0816-570/+114
|\ \ | | | | | | les: remove support for LES/1
| * | les, light: remove support for les/1 4096 block CHT sectionsZsolt Felfoldi2019-04-088-68/+26
| | |
| * | les: removed les/1 protocol messagesZsolt Felfoldi2019-04-0811-504/+90
| |/
* | eth, les, geth: implement cli-configurable global gas cap for RPC calls (#19401)Martin Holst Swende2019-04-089-13/+42
| | | | | | | | | | | | | | | | * eth, les, geth: implement cli-configurable global gas cap for RPC calls * graphql, ethapi: place gas cap in DoCall * ethapi: reformat log message
* | p2p/discover: bump failure counter only if no nodes were provided (#19362)Felix Lange2019-04-081-1/+1
|/ | | | | | | | This resolves a minor issue where neighbors responses containing less than 16 nodes would bump the failure counter, removing the node. One situation where this can happen is a private deployment where the total number of extant nodes is less than 16. Issue found by @jsying.
* Merge pull request #19411 from holiman/uncle_abort_earlyPéter Szilágyi2019-04-083-1/+23
|\ | | | | consensus,core: shortcut uncle validation
| * consensus,core: shortcut uncle validationMartin Holst Swende2019-04-083-1/+23
| |
* | Merge pull request #19412 from karalabe/rinkeby-petersburgPéter Szilágyi2019-04-081-1/+1
|\ \ | |/ |/| params: set Rinkeby Petersburg fork block (4th May, 2019)
| * params: set Rinkeby Petersburg fork block (4th May, 2019)Péter Szilágyi2019-04-081-1/+1
|/
* Merge pull request #19405 from SamuelMarks/go1.12.2Péter Szilágyi2019-04-082-12/+12
|\ | | | | appveyor: Upgrade to go1.12.2
| * travis: update builders to xenial to shadow Go releasesPéter Szilágyi2019-04-081-10/+10
| |
| * appveyor.yml: Upgrade to go1.12.2Samuel Marks2019-04-061-2/+2
|/
* Merge pull request #19400 from karalabe/nuke-bugPéter Szilágyi2019-04-053-160/+0
|\ | | | | cmd: nuke geth bug, nobody is using it anyway
| * cmd: nuke geth bug, nobody is using it anywayPéter Szilágyi2019-04-053-160/+0
| |
* | Merge pull request #19402 from karalabe/trie-disallow-metaroot-retrievalPéter Szilágyi2019-04-052-0/+38
|\ \ | |/ |/| trie: there's no point in retrieving the metaroot
| * trie: there's no point in retrieving the metarootPéter Szilágyi2019-04-052-0/+38
|/
* Merge pull request #19399 from karalabe/nuke-monitorPéter Szilágyi2019-04-05202-55196/+11566
|\ | | | | cmd/geth, internal, node, vendor: nuke geth monitor
| * cmd/geth, internal, node, vendor: nuke geth monitorPéter Szilágyi2019-04-05202-55196/+11566
|/
* core/state: fix state iterator (#19127)gary rong2019-04-052-5/+18
| | | | | | * core/state: fix state iterator * core: fix state iterator more elegant
* Merge pull request #18322 from rjl493456442/reomit-log-eventsPéter Szilágyi2019-04-042-42/+271
|\ | | | | core: re-emit new log event when logs rebirth
| * core: minor code polishes + rebase fixesPéter Szilágyi2019-04-042-43/+57
| |
| * core: re-omit new log event when logs rebirthrjl4934564422019-04-042-9/+224
| |
* | node: switching prometheus flock location to tsdb (#19376)Steve Ruckdashel2019-04-0424-109/+677
|/ | | | | | * node: switching prometheus flock location to tsdb * rookie mistake
* accounts, cmd, internal: disable unlock account on open HTTP (#17037)gary rong2019-04-0415-45/+125
| | | | | | | | | | * cmd, accounts, internal, node, rpc, signer: insecure unlock protect * all: strict unlock API by rpc * cmd/geth: check before printing warning log * accounts, cmd/geth, internal: tiny polishes
* core/vm: fix typos in comments (#19391)hydai2019-04-041-2/+2
|
* core/vm: instruction tests (#16327)Martin Holst Swende2019-04-0422-87/+159
| | | | | | This PR makes it easy to generate and execute testcases for VM arithmetic operations. By enabling and running the testcase TestWriteExpectedValues, a set of json files are created which contain input and output for each arith operation. The test TestJsonTestcases executes all of those tests. While meaningless as is, this PR makes it less risky to make changes (optimizations) to the vm operations, since there will be a larger body of testcases.
* les: extend error message for coinbase API calls (#19380)Felföldi Zsolt2019-04-031-2/+2
|
* all: simplify timestamps to uint64 (#19372)Martin Holst Swende2019-04-0327-89/+85
| | | | | | | | | | | | | | * all: simplify timestamps to uint64 * tests: update definitions * clef, faucet, mobile: leftover uint64 fixups * ethash: fix tests * graphql: update schema for timestamp * ethash: remove unused variable
* Merge pull request #19328 from karalabe/preloadPéter Szilágyi2019-04-0211-87/+224
|\ | | | | core: prefetch next block state concurrently
| * cmd, core, eth: support disabling the concurrent state prefetcherPéter Szilágyi2019-04-016-21/+40
| |
| * core: prefetch next block state concurrentlyPéter Szilágyi2019-04-016-75/+193
| |
* | Merge pull request #19374 from karalabe/console-fix-coinbase-printoutPéter Szilágyi2019-04-022-10/+18
|\ \ | | | | | | console: handle eth.coinbase throws
| * | console: handle eth.coinbase throwsPéter Szilágyi2019-04-022-10/+18
|/ /
* | core: fix typo in insertChain method doc (#19371)Runchao Han2019-04-021-1/+1
| |
* | Merge pull request #19369 from karalabe/les-update-chtsPéter Szilágyi2019-04-022-16/+18
|\ \ | | | | | | light, params: update CHTs, integrate CHT for Goerli too
| * | light, params: update CHTs, integrate CHT for Goerli tooPéter Szilágyi2019-04-022-16/+18
|/ /
* | cmd/flags: fix typo in --exitwhensynced flag (#19364)William Setzer2019-04-021-1/+1
| | | | | | Corrected error for ExitWhenSyncedFlag, clarifying that the program exits after syncing completes.
* | swarm/network: hive bug: needed shallow peers are not sent to nodes beyond ↵Viktor Trón2019-04-025-64/+314
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | connection's proximity order (#19326) * swarm/network: fix hive bug not sending shallow peers - hive bug: needed shallow peers were not sent to nodes beyond connection's proximity order - add extensive protocol exchange tests for initial subPeersMsg-peersMsg exchange - modify bzzProtocolTester to allow pregenerated overlay addresses * swarm/network: attempt to fix hive persistance test * swarm/network: fix TestHiveStatePersistance (#1320) * swarm/network: remove trace lines from the hive persistance test * address PR review comments * swarm/network: address PR comments on TestInitialPeersMsg * eliminate *testing.T argument from bzz/hive protocoltesters * add sorting (only runs in test code) on peersMsg payload * add random (0 to MaxPeersPerPO) peers for each po * add extra peers closer to pivot than control
* | Merge pull request #19348 from LiangMa/overflowPRPéter Szilágyi2019-04-012-22/+21
|\ \ | | | | | | core/vm: Correct the Memory Gas Overflow condition
| * | core/vm: polish gas PR, fix tests, make table drivenPéter Szilágyi2019-04-012-21/+20
| | |
| * | core/vm: Correct the Memory Gas Overflow conditionLiang Ma2019-03-291-3/+3
| | | | | | | | | | | | | | | | | | | | | previous overflow condition is too big to use. 0x7FFFFFFFF squre operation is overflowed uint64. 0x7FFFFFFFF^2 = 0x3F FFFF FFF0 0000 0001
* | | accounts/abi: generic unpacking of event logs into map[string]interface{} ↵Ian Norden2019-04-017-10/+596
| |/ |/| | | | | | | (#18440) Add methods that allow for the unpacking of event logs into maps (allows for agnostic unpacking of logs)
* | Merge pull request #19351 from karalabe/txpool-precache-signaturesPéter Szilágyi2019-03-291-0/+7
|\ \ | |/ |/| core: cache tx signature before obtaining lock
| * core: cache tx signature before obtaining lock贺鹏飞2019-03-291-0/+7
|/
* accounts/abi: Add the original name as json-structtag for tuples.Mats Julian Olsen2019-03-282-1/+8
|
* contracts/ens: revert bmt to keccak256 (#19323)Elad2019-03-272-6/+6
| | | | | | * contracts/ens: revert bmt to keccak256 * contracts/ens: fix keccak256 hash code comment
* core/types: add block location fields to receipt (#17662)Brent2019-03-278-2/+59
| | | | Solves #15210 without changing consensus, in a backwards compatible way, by adding tx inclusion information to the Receipt struct.
* Merge pull request #19343 from karalabe/trie-metrics-splitPéter Szilágyi2019-03-271-18/+25
|\ | | | | core: 3rd try on splitting the trie metrics correctly
| * core: 3rd try on splitting the trie metrics correctlyPéter Szilágyi2019-03-271-18/+25
| |
* | Merge pull request #19344 from karalabe/eth-remove-redundant-chainconfigPéter Szilágyi2019-03-274-25/+21
|\ \ | | | | | | eth: remove redundant chain config fields
| * | eth: remove redundant chain config fieldsPéter Szilágyi2019-03-274-25/+21
|/ /
* / eth: fix EIP158 account cleanup on chain tracing (#19341)Jonas2019-03-271-1/+1
|/ | | Fixes #19337
* core, ethdb, trie: mode dirty data to clean cache on flush (#19307)Martin Holst Swende2019-03-2612-67/+156
| | | | | This PR is a more advanced form of the dirty-to-clean cacher (#18995), where we reuse previous database write batches as datasets to uncache, saving a dirty-trie-iteration and a dirty-trie-rlp-reencoding per block.
* whisper/whisperv6: fix PoW calculations to match the spec (#19330)Guillaume Ballet2019-03-262-12/+39
| | | | | | | | | | | | This PR fixes two issues in the PoW calculation of a Whisper envelope, compared to the spec (see PoW Requirements): - The pow is supposed to take the leading number of zeroes (i.e. most significant zeroes) and what it did was to take the number of trailing zeroes (i.e. least significant zeroes). It has been fixed to match what the spec and Parity does. - The spec expects to use the size of the RLP encoded envelope, and it took something else, as described in #18070.
* Merge pull request #19308 from holiman/fix_reset_txpoolPéter Szilágyi2019-03-261-1/+16
|\ | | | | core: make txpool handle reorg due to setHead
| * core: make txpool handle reorg due to setHeadMartin Holst Swende2019-03-211-1/+16
| |
* | Merge pull request #19331 from karalabe/fix-trie-metricsPéter Szilágyi2019-03-251-6/+3
|\ \ | | | | | | core: split trie op metrics from the correct chain metrics
| * | core: split trie op metrics from the correct chain metricsPéter Szilágyi2019-03-251-6/+3
|/ /
* | Merge pull request #19327 from karalabe/fix-expensive-metricsPéter Szilágyi2019-03-251-1/+1
|\ \ | | | | | | metrics: fix expensive metrics flag processing
| * | metrics: fix expensive metrics flag processingPéter Szilágyi2019-03-251-1/+1
|/ /
* | appveyor: bump Windows Go builders to 1.12.1 (#19294)Samuel Marks2019-03-252-4/+4
| |
* | core: split out detailed trie access metrics from insertion time (#19316)Péter Szilágyi2019-03-257-38/+132
| | | | | | | | | | | | * core: split out detailed trie access metrics from insertion time * cmd, core, metrics: support expensive optional metrics
* | les: fix block announcements (#19322)Felföldi Zsolt2019-03-251-2/+1
| |
* | swarm/network: Use different privatekey for bzz overlay in sim (#19313)lash2019-03-236-39/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cmd/swarm, p2p, swarm: Enable ENR in binary/execadapter * cmd/p2p/swarm: Remove comments + config.Enode nomarshal * p2p/simulations: Remove superfluous error check * p2p/simulation: Move init enode comment * swarm, p2p/simulations, cmd/swarm: Use nodekey in binary record sign * swarm/network, swarm/pss: Dervice bzzkey * swarm/pss: Remove unused function * swarm/network: Store swarm private key in simulation bucket * swarm/pss: Shorten TextProxNetwork shortrunning test timeout * swarm/pss: Increase prox test timeout * swarm/pss: Increase timeout slightly on shortrunning proxtest * swarm/network: Simplify bucket instantiation in servicectx func * p2p/simulations: Tcpport -> udpport * swarm/network, swarm/pss: Simplify + correct lock in servicefunc sim * swarm/network: Cleanup after rebase on extract swarm enode new * p2p/simulations, swarm/network: Make exec disc test pass * swarm/network: Prune ye olde comment * swarm/pss: Correct revised bzzkey method call * swarm/network: Clarify comment about privatekey generation data * swarm/pss: Fix syntax errors after rebase * swarm/network: Rename misleadingly named method (amend commit to trigger ci - attempt 5)
* | trie: disable fnv64a hashing of hashes for bigcache (#19314)Martin Holst Swende2019-03-221-0/+15
| | | | | | | | | | | | * trie: disable fnv64a hashing of hashes for bigcache * trie/database: add very important period
* | p2p/simulations: wait until all connections are recreated when uploading ↵gluk2562019-03-228-79/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | snapshot (#19312) * swarm/network/simulation: test cases refactored * swarm/pss: minor refactoring * swarm/simulation: UploadSnapshot updated * swarm/network: style fix * swarm/pss: bugfix
* | cmd/swarm, p2p, swarm: Enable ENR in binary/execadapter (#19309)lash2019-03-2212-55/+165
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * cmd/swarm, p2p, swarm: Enable ENR in binary/execadapter * cmd/p2p/swarm: Remove comments + config.Enode nomarshal * p2p/simulations: Remove superfluous error check * p2p/simulation: Move init enode comment * swarm/api: Check error in config test * swarm, p2p/simulations, cmd/swarm: Use nodekey in binary record sign * cmd/swarm: Make nodekey available for swarm api config
* | travis: extend race detection for swarm p2p packages (#19287)Ferenc Szabo2019-03-211-1/+1
|/ | | | | | | | | | | | | * travis: remove verbose from Swarm race tests By removing -v our output will be cleaner, but the Travis job still won't be terminated - due to 'no output for 10 minutes' - as keepalive .sh produces a log line every 5 minutes. * travis: extend Swarm race detection to p2p subpackages As p2p/protocols, p2p/simulations and p2p/testing packages mostly belong to the Swarm team.
* swarm/network: measure time of messages in priority queue (#19250)Anton Evangelatov2019-03-2116-60/+87
|
* les: fix peer id and reply error handling (#19289)Felföldi Zsolt2019-03-202-4/+11
| | | | | | * les: fixed peer id format * les: fixed peer reply error handling
* contracts, swarm: implement EIP-1577 (#19285)Elad2019-03-2017-434/+3336
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * contracts/ens: update public resolver solidity code * contracts/ens: update public resolver, update go bindings * update build * fix ens.sol * contracts/ens: change contract interface * contracts/ens: implement public resolver changes * contracts/ens: added ENSRegistry contract * contracts/ens: reinstate old contract code * contracts/ens: update README.md * contracts/ens: added test coverage for fallback contract * contracts/ens: added support for fallback contract * contracts/ens: removed unused contract code * contracts/ens: add todo and decode multicodec stub * add encode * vendor: add ipfs cid libraries * contracts/ens: cid sanity tests * contracts/ens: more cid sanity checks * contracts/ens: wip integration * wip * Revert "vendor: add ipfs cid libraries" This reverts commit 29d9b6b294ded903a1065d96c8149119713cfd12. * contracts/ens: removed multiformats dependencies * contracts/ens: added decode tests * contracts/ens: added eip spec test, minor changes to exiting tests * contracts/ens: moved cid decoding to own file * contracts/ens: added unit test to encode hash to content hash * contracts/ens: removed unused code * contracts/ens: fix ens tests to use cid decode and encode * contracts/ens: adjust swarm multicodecs after pr merge * contracts/ens: fix linter error * constracts/ens: address PR comments * cmd, contracts: make peoples lives easier * contracts/ens: fix linter error * contracts/ens: address PR comments
* Modified Abigen to Support Vyper (#19120)Kushagra Sharma2019-03-188-56/+317
|
* Merge pull request #19288 from karalabe/les-verbose-errorsPéter Szilágyi2019-03-182-72/+114
|\ | | | | les, light: verbose errors on state retrieval issues
| * les, light: verbose errors on state retrieval issuesPéter Szilágyi2019-03-182-72/+114
|/
* dashboard: fix deprecated or problematic dependencies (#19271)Kurkó Mihály2019-03-183-12196/+10264
| | | | | | * dashboard: fix github alerts * dashboard: run go generate
* vendor: udpate leveldb upstream (#19284)gary rong2019-03-186-55/+362
|
* graphql: Updates to graphql support to match EIP1767 (#19238)Nick Johnson2019-03-182-141/+285
| | | | Updates to match EIP1767
* swarm/pss: negihbourhood addressing simulation tests (#19278)gluk2562019-03-164-8/+738
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/pss: fixed bug in pss.process, test added * swarm/pss: test case updated * swarm/pss: WaitTillSnapshotRecreated() func added * swarm/pss: snapshot test updated * swarm/pss: WaitTillSnapshotLoaded() fixed * swarm/pss: gofmt applied * swarm/pss: refactoring, file renamed * swarm/pss: input data fixed * swarm/pss: race condition fixed * swarm/pss: test timeout increased * swarm/pss: eliminated the global variables * swarm/pss: tests added * swarm/pss: comments added * swarm/pss: comment fixed * swarm/pss: refactored according to review * swarm/pss: style fix * swarm/pss: increased timeout
* cmd/swarm/swarm-smoke: do not fail if a node does not respond to rpc (#19280)Anton Evangelatov2019-03-161-4/+12
|
* swarm/shed: add vector uint64 field (#19279)Janoš Guljaš2019-03-152-0/+458
|
* swarm, p2p: Prerequities for ENR replacing handshake (#19275)lash2019-03-1514-125/+370
| | | | | | | | | | | | | | | | | | * swarm/api, swarm/network, p2p/simulations: Prerequisites for handshake remove * swarm, p2p: Add full sim node configs for protocoltester * swarm/network: Make stream package pass tests * swarm/network: Extract peer and addr types out of protocol file * p2p, swarm: Make p2p/protocols tests pass + rename types.go * swarm/network: Deactivate ExecAdapter test until binary ENR prep * swarm/api: Remove comments * swarm/network: Uncomment bootnode record load
* cmd/swarm: dont connect to bootnodes in tests (#19270)Elad2019-03-152-5/+22
| | | | | | * cmd/swarm: dont connect to bootnodes in tests * cmd/utils: check for empty string when parsing enode
* cmd, core, eth, trie: get rid of trie cache generations (#19262)Péter Szilágyi2019-03-1421-332/+100
| | | | | | * cmd, core, eth, trie: get rid of trie cache generations * core, trie: get rid of remainder of cache gen boilerplate
* Merge pull request #19269 from holiman/alt_18957Péter Szilágyi2019-03-143-5/+147
|\ | | | | bind: Static byte arrays should be right-padded
| * accounts/abi/bind: simulated test case for fixed bytes logsPéter Szilágyi2019-03-142-5/+40
| |
| * bind: Static byte arrays should be right-paddedJeremy McNevin2019-03-142-2/+109
|/ | | | | Per https://solidity.readthedocs.io/en/v0.5.3/abi-spec.html: "bytes<M>: enc(X) is the sequence of bytes in X padded with trailing zero-bytes to a length of 32 bytes"
* eth/downloader: fix ancestor searching for light syncing (#19136)gary rong2019-03-141-17/+19
|
* changed file name grahpql.go to graphql.go (#19267)Shunsuke Watanabe2019-03-141-0/+0
| | | graphql: fix typo in file name
* asm: remove unused parameter for function Lex (#18058)Corey Lin2019-03-143-3/+3
|
* dashboard, p2p, vendor: visualize peers (#19247)Kurkó Mihály2019-03-1366-42208/+48090
| | | | | | * dashboard, p2p: visualize peers * dashboard: change scale to green to red
* Merge pull request #19261 from karalabe/less-blocksPéter Szilágyi2019-03-135-11/+11
|\ | | | | core: use headers only where blocks are unnecessary
| * core: use headers only where blocks are unnecessaryPéter Szilágyi2019-03-135-11/+11
| |
* | Merge pull request #19259 from ligi/address_19246Péter Szilágyi2019-03-131-1/+1
|\ \ | |/ |/| README: Mention go 1.10 as minumum - context #19246
| * README: Mention go 1.10 as minumum - context #19246ligi2019-03-121-1/+1
| |
* | Merge pull request #19252 from karalabe/badgerdbPéter Szilágyi2019-03-124-81/+81
|\ \ | | | | | | ethdb: tiny API tidy-up from the database rework pr
| * | ethdb, trie: tiny API tidy-up from the database rework prPéter Szilágyi2019-03-124-81/+81
|/ /
* | core/vm: 64 bit memory and gas calculations (#19210)Martin Holst Swende2019-03-1213-744/+914
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * core/vm: remove function call for stack validation from evm runloop * core/vm: separate gas calc into static + dynamic * core/vm: optimize push1 * core/vm: reuse pooled bigints for ADDRESS, ORIGIN and CALLER * core/vm: use generic error message for jump/jumpi, to avoid string interpolation * testdata: fix tests for new error message * core/vm: use 64-bit memory calculations * core/vm: fix error in memory calculation * core/vm: address review concerns * core/vm: avoid unnecessary use of big.Int:BitLen()
* | state: fix emptyStatet to emptyRoot (#19254)Sheldon2019-03-121-3/+3
| |
* | graphql: make gballet codeowner for review notifications (#19251)Guillaume Ballet2019-03-121-0/+1
| |
* | swarm: tracing improvements (#19249)Anton Evangelatov2019-03-115-23/+30
| |
* | swarm/storage/localstore: global batch write lock (#19245)Janoš Guljaš2019-03-097-418/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/storage/localstore: most basic database * swarm/storage/localstore: fix typos and comments * swarm/shed: add uint64 field Dec and DecInBatch methods * swarm/storage/localstore: decrement size counter on ModeRemoval update * swarm/storage/localstore: unexport modeAccess and modeRemoval * swarm/storage/localstore: add WithRetrievalCompositeIndex * swarm/storage/localstore: add TestModeSyncing * swarm/storage/localstore: fix test name * swarm/storage/localstore: add TestModeUpload * swarm/storage/localstore: add TestModeRequest * swarm/storage/localstore: add TestModeSynced * swarm/storage/localstore: add TestModeAccess * swarm/storage/localstore: add TestModeRemoval * swarm/storage/localstore: add mock store option for chunk data * swarm/storage/localstore: add TestDB_pullIndex * swarm/storage/localstore: add TestDB_gcIndex * swarm/storage/localstore: change how batches are written * swarm/storage/localstore: add updateOnAccess function * swarm/storage/localhost: add DB.gcSize * swarm/storage/localstore: update comments * swarm/storage/localstore: add BenchmarkNew * swarm/storage/localstore: add retrieval tests benchmarks * swarm/storage/localstore: accessors redesign * swarm/storage/localstore: add semaphore for updateGC goroutine * swarm/storage/localstore: implement basic garbage collection * swarm/storage/localstore: optimize collectGarbage * swarm/storage/localstore: add more garbage collection tests cases * swarm/shed, swarm/storage/localstore: rename IndexItem to Item * swarm/shed: add Index.CountFrom * swarm/storage/localstore: persist gcSize * swarm/storage/localstore: remove composite retrieval index * swarm/shed: IterateWithPrefix and IterateWithPrefixFrom Index functions * swarm/storage/localstore: writeGCSize function with leveldb batch * swarm/storage/localstore: unexport modeSetRemove * swarm/storage/localstore: update writeGCSizeWorker comment * swarm/storage/localstore: add triggerGarbageCollection function * swarm/storage/localstore: call writeGCSize on DB Close * swarm/storage/localstore: additional comment in writeGCSizeWorker * swarm/storage/localstore: add MetricsPrefix option * swarm/storage/localstore: fix a typo * swamr/shed: only one Index Iterate function * swarm/storage/localstore: use shed Iterate function * swarm/shed: pass a new byte slice copy to index decode functions * swarm/storage/localstore: implement feed subscriptions * swarm/storage/localstore: add more subscriptions tests * swarm/storage/localsore: add parallel upload test * swarm/storage/localstore: use storage.MaxPO in subscription tests * swarm/storage/localstore: subscription of addresses instead chunks * swarm/storage/localstore: lock item address in collectGarbage iterator * swarm/storage/localstore: fix TestSubscribePull to include MaxPO * swarm/storage/localstore: improve subscriptions * swarm/storage/localstore: add TestDB_SubscribePull_sinceAndUntil test * swarm/storage/localstore: adjust pull sync tests * swarm/storage/localstore: remove writeGCSizeDelay and use literal * swarm/storage/localstore: adjust subscriptions tests delays and comments * swarm/storage/localstore: add godoc package overview * swarm/storage/localstore: fix a typo * swarm/storage/localstore: update package overview * swarm/storage/localstore: remove repeated index change * swarm/storage/localstore: rename ChunkInfo to ChunkDescriptor * swarm/storage/localstore: add comment in collectGarbageWorker * swarm/storage/localstore: replace atomics with mutexes for gcSize and tests * swarm/storage/localstore: protect addrs map in pull subs tests * swarm/storage/localstore: protect slices in push subs test * swarm/storage/localstore: protect chunks in TestModePutUpload_parallel * swarm/storage/localstore: fix a race in TestDB_updateGCSem defers * swarm/storage/localstore: remove parallel flag from tests * swarm/storage/localstore: fix a race in testDB_collectGarbageWorker * swarm/storage/localstore: remove unused code * swarm/storage/localstore: add more context to pull sub log messages * swarm/storage/localstore: BenchmarkPutUpload and global lock option * swarm/storage/localstore: pre-generate chunks in BenchmarkPutUpload * swarm/storage/localstore: correct useGlobalLock in collectGarbage * swarm/storage/localstore: fix typos and update comments * swarm/storage/localstore: update writeGCSize comment * swarm/storage/localstore: global batch write lock * swarm/storage/localstore: remove global lock option * swarm/storage/localstore: simplify DB.Close
* | p2p/protocols: fix data race in TestProtocolHook (#19242)Ferenc Szabo2019-03-093-15/+37
| | | | | | | | | | | | | | | | | | | | dummyHook's fields were concurrently written by nodes and read by the test. The simplest solution is to protect all fields with a mutex. Enable: TestMultiplePeersDropSelf, TestMultiplePeersDropOther as they seemingly accidentally stayed disabled during a refactor/rewrite since 1836366ac19e30f157570e61342fae53bc6c8a57. resolves ethersphere/go-ethereum#1286
* | swarm/storage: add comparison towards leveldb.ErrNotFound (#19243)Anton Evangelatov2019-03-092-2/+7
| | | | | | | | | | | | * swarm/storage: add comparison towards leveldb.ErrNotFound * swarm/storage: wrap leveldb ErrNotFound
* | swarm: fix relationship between spans in open tracing (#19236)Anton Evangelatov2019-03-083-1/+15
| | | | | | | | | | | | | | | | * swarm/network: propagate span with ctx * swarm/network: try to stop stream.send.request spans on time * swarm/storage: add chunk ref as a log to netstore.fetcher span
* | cmd/swarm/swarm-smoke: better logs when debug mode triggers (#19237)Anton Evangelatov2019-03-081-4/+24
| | | | | | | | | | | | * cmd/swarm/swarm-smoke: better logs for debug functionality; * cmd/swarm/swarm-smoke: fixup
* | swarm/storage/localstore: fix synchronization in TestDB_gcSize (#19235)Janoš Guljaš2019-03-082-7/+12
| |
* | cmd/swarm: do not ignore cache size=0 (#19231)Elad2019-03-071-2/+2
| |
* | clef: fix erroneous api version (#19234)Martin Holst Swende2019-03-071-1/+1
| |
* | Merge pull request #19232 from karalabe/dl-fix-local-drop-syncPéter Szilágyi2019-03-071-1/+7
|\ \ | | | | | | eth/downloader: fix nil droppeer in state sync
| * | eth/downloader: fix nil droppeer in state syncPéter Szilágyi2019-03-071-1/+7
| | |
* | | usbwallet: check error returned by driver close (#18057)Corey Lin2019-03-071-3/+1
| | | | | | | | | | | | Although current two implementations(ledgerDriver, trezorDriver) of interface driver.Close do not actually return any error. Instead, they only return nil. But since the declaration of Close function returns error, it is better to check the returned error in case in future some new implementation of Close function returns error and we may forget to modify the function which invokes Close function at that time.
* | | signer: change the stdio jsonrpc to use legacy namespace conventions (#19047)Martin Holst Swende2019-03-0713-466/+398
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR will will break existing UIs, since it changes all calls like ApproveSignTransaction to be on the form ui_approveSignTransaction. This is to make it possible for the UI to reuse the json-rpc library from go-ethereum, which uses this convention. Also, this PR removes some unused structs, after import/export were removed from the external api (so no longer needs internal methods for approval) One more breaking change is introduced, removing passwords from the ApproveSignTxResponse and the likes. This makes the manual interface more like the rulebased interface, and integrates nicely with the credential storage. Thus, the way it worked before, it would be tempting for the UI to implement 'remember password' functionality. The way it is now, it will be easy instead to tell clef to store passwords and use them. If a pw is not found in the credential store, the user is prompted to provide the password.
* | | swarm: localstore hasser (#19230)Janoš Guljaš2019-03-075-1/+152
| | |
* | | swarm/network: remove *WithServer tests from stream package (#19223)Ferenc Szabo2019-03-071-342/+0
| | | | | | | | | | | | | | | | | | | | | These tests never run as the build tag excluded them from the CI execution. As a results the (dead) code got out of sync with other parts of Swarm and now they would not even compile. => Removed. resolves ethersphere/go-ethereum#1238
* | | swarm/network/stream: Fix flaky tests in GetSubscriptionsRPC test (#19227)holisticode2019-03-071-12/+19
|/ / | | | | | | | | | | | | | | * swarm/network/stream: fixed timing issues * swarm/network/stream: only count first iteration of subscriptions * swarm/network/stream/: fix linter errors
* | Merge pull request #19021 from karalabe/database-cleanupPéter Szilágyi2019-03-0794-1394/+1586
|\ \ | | | | | | all: clean up and properly abstract database accesses
| * | all: clean up and proerly abstract database accessPéter Szilágyi2019-03-0694-1394/+1586
| | |
* | | p2p/protocols: fix race condition in TestAccountingSimulation (#19228)holisticode2019-03-071-2/+5
| | | | | | | | | p2p/protocols: Fix race condition in TestAccountingSimulation
* | | Merge pull request #19222 from karalabe/clique-fix-testPéter Szilágyi2019-03-061-2/+2
|\ \ \ | |/ / |/| | consensus/clique: fix test copy paste error, test what's documented
| * | consensus/clique: fix test copy paste error, test what's documentedPéter Szilágyi2019-03-061-2/+2
|/ /
* | accounts: prefer nil slices over zero-length slices (#19079)Matthew Halpern2019-03-062-4/+8
| |
* | cmd/swarm/swarm-smoke: sliding window test should not time out (#19152)Elad2019-03-062-30/+45
| |
* | Enable longrunning tests to run (#19208)holisticode2019-03-057-23/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * p2p/simulations: increased snapshot load timeout for debugging * swarm/network/stream: less nodes for snapshot longrunning tests * swarm/network: fixed longrunning tests * swarm/network/stream: store kademlia in bucket * swarm/network/stream: disabled healthy check in delivery tests * swarm/network/stream: longer SyncUpdateDelay for longrunning tests * swarm/network/stream: more debug output * swarm/network/stream: reduced longrunning snapshot tests to 64 nodes * swarm/network/stream: don't WaitTillHealthy in SyncerSimulation * swarm/network/stream: cleanup for PR
* | swarm/storage/localstore: fix testDB_collectGarbageWorker data race (#19206)Janoš Guljaš2019-03-051-5/+7
| |
* | Merge pull request #19205 from holiman/alltools_clefPéter Szilágyi2019-03-041-0/+5
|\ \ | | | | | | build: add clef to alltools and deb
| * | build: add clef to alltools and debMartin Holst Swende2019-03-041-0/+5
| | |
* | | vendor: update leveldb (#19201)gary rong2019-03-042-3/+9
|/ /
* | Revert "swarm/network: Use actual remote peer ip in underlay (#19137)" (#19193)Anton Evangelatov2019-03-022-46/+1
| | | | | | This reverts commit 460d206f309fc0884c666bd191a1b6a4b63462fc.
* | swarm/shed, swarm/storage/localstore: add LastPullSubscriptionChunk (#19190)Janoš Guljaš2019-03-025-15/+328
| | | | | | | | | | | | | | | | | | | | * swarm/shed, swarm/storage/localstore: add LastPullSubscriptionChunk * swarm/shed: fix comments * swarm/shed: fix TestIncByteSlice test * swarm/storage/localstore: fix TestDB_LastPullSubscriptionChunk
* | whisper: Remove v5 (#18432)Guillaume Ballet2019-03-0118-5592/+0
| |
* | swarm: enable p2p/discovery and disable dynamic dialling (#19189)Anton Evangelatov2019-03-013-3/+37
| |
* | build: enable Ubuntu Disco Dingo PPA buildsPéter Szilágyi2019-03-011-1/+1
| |
* | Merge pull request #19187 from karalabe/fix-ppa-go1.11-cache-2Péter Szilágyi2019-03-012-2/+2
|\ \ | | | | | | build/deb: fix PPA env var setting
| * | build/deb: fix PPA env var settingPéter Szilágyi2019-03-012-2/+2
|/ /
* | Merge pull request #19184 from karalabe/fix-ppa-go1.11-cachePéter Szilágyi2019-03-012-0/+6
|\ \ | | | | | | build/deb: use custom cache for PPA builder
| * | build/deb: use custom cache for PPA builderPéter Szilágyi2019-02-282-0/+6
| | |
* | | swarm: new snapshot files (#19185)holisticode2019-03-0117-46/+15
|/ /
* | Merge pull request #19183 from karalabe/bn256-arm64-go1.12-fixPéter Szilágyi2019-02-281-16/+16
|\ \ | | | | | | crypto/bn256/cloudflare: pull in upstream fix for Go 1.12 R18
| * | crypto/bn256/cloudflare: pull in upstream fix for Go 1.12 R18Péter Szilágyi2019-02-281-16/+16
| | |
* | | Merge pull request #19182 from karalabe/fix-legacy-receipt-decodingPéter Szilágyi2019-02-282-4/+12
|\ \ \ | |/ / |/| | core/types: fix receipt legacy decoding
| * | core/types: fix receipt legacy decodingPéter Szilágyi2019-02-282-4/+12
|/ /
* | p2p/enode: use localItemKey for local sequence number (#19131)Péter Szilágyi2019-02-284-13/+6
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | * p2p/discover: remove unused function * p2p/enode: use localItemKey for local sequence number I added localItemKey for this purpose in #18963, but then forgot to actually use it. This changes the database layout yet again and requires bumping the version number.
| * | p2p/enode: use localItemKey for local sequence numberFelix Lange2019-02-192-4/+4
| | | | | | | | | | | | | | | | | | I added localItemKey for this purpose in #18963, but then forgot to actually use it. This changes the database layout yet again and requires bumping the version number.
| * | p2p/discover: remove unused functionFelix Lange2019-02-192-9/+2
| | |
* | | node: require LocalAppData variable (#19132)Felix Lange2019-02-281-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | * node: require LocalAppData variable This avoids path inconsistencies on Windows XP. Hat tip to @MicahZoltu for catching this so quickly. * node: fix typo
* | | swarm/network: WIP consider all nodes for healthy iteration (#19155)lash2019-02-285-29/+113
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/network: WIP consider all nodes for healthy iteration * swarm/network/simulation: extend TestWaitTillHealthy to really check kads are healthy * cmd/swarm/swarm-snapshot: fixed bugs in snapshot creation binary * swarm/network/simulation: addressed PR comments * swarm/network/simulation: defer sim.Clsoe() * swarm/network/simulation: fixed wrong sim.Close() * swarm/network/simulation: addressed PR comments * cmd/swarm/swarm-snapshot: reducing default to 8 nodes, more to 4 * cmd/swarm/swarm-snapshot: extended timeout to 3 mins, or 256 nodes snapshot times out * swarm/network/simulation: More PR comments
* | | Merge pull request #19166 from SamuelMarks/go-1.12Péter Szilágyi2019-02-2711-20/+103
|\ \ \ | | | | | | | | Upgrade to Go 1.12
| * | | common/fdlimit: fix macos file descriptors for Go 1.12Péter Szilágyi2019-02-273-1/+73
| | | |
| * | | travis, appveyor, Dockerfile: upgrade to Go 1.12Samuel Marks2019-02-278-19/+30
|/ / /
* | | vendor: update leveldb upstream which include a compaction fix (#19163)gary rong2019-02-278-17/+84
| | |
* | | swarm/chunk: move chunk related declarations to chunk package (#19170)Janoš Guljaš2019-02-2628-285/+324
| | |
* | | travis, build: switch to NDK 19b, fix gomobile builds (#19171)Péter Szilágyi2019-02-262-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | * travis, build: switch to NDK 19b, fix gomobile builds * travis, build: move NDK into its final bundle location * travis: disable Android build on PRs once again
* | | Merge pull request #19164 from karalabe/nuke-old-containersPéter Szilágyi2019-02-264-62/+0
|\ \ \ | | | | | | | | containers/docker: nuke per the 1.8.0 deprecation note
| * | | containers/docker: nuke per the 1.8.0 deprecation notePéter Szilágyi2019-02-254-62/+0
| | | |
* | | | les, les/flowcontrol: improved request serving and flow control (#18230)Felföldi Zsolt2019-02-2639-984/+3690
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change - implements concurrent LES request serving even for a single peer. - replaces the request cost estimation method with a cost table based on benchmarks which gives much more consistent results. Until now the allowed number of light peers was just a guess which probably contributed a lot to the fluctuating quality of available service. Everything related to request cost is implemented in a single object, the 'cost tracker'. It uses a fixed cost table with a global 'correction factor'. Benchmark code is included and can be run at any time to adapt costs to low-level implementation changes. - reimplements flowcontrol.ClientManager in a cleaner and more efficient way, with added capabilities: There is now control over bandwidth, which allows using the flow control parameters for client prioritization. Target utilization over 100 percent is now supported to model concurrent request processing. Total serving bandwidth is reduced during block processing to prevent database contention. - implements an RPC API for the LES servers allowing server operators to assign priority bandwidth to certain clients and change prioritized status even while the client is connected. The new API is meant for cases where server operators charge for LES using an off-protocol mechanism. - adds a unit test for the new client manager. - adds an end-to-end test using the network simulator that tests bandwidth control functions through the new API.
* | | | graphql: fix typos in comments (#19041)Roc Yu2019-02-261-2/+2
| | | |
* | | | Merge pull request #19169 from karalabe/ppa-bumpPéter Szilágyi2019-02-265-7/+7
|\ \ \ \ | | | | | | | | | | build: bump PPA builders to Go 1.11
| * | | | build: bump PPA builders to Go 1.11Péter Szilágyi2019-02-265-7/+7
| | | | |
* | | | | swarm/storage/localstore: fix tests for windows os (#19161)Janoš Guljaš2019-02-261-0/+21
|/ / / /
* | | | swarm/pss: fix data race on HandshakeController.symKeyIndex (#19162)Janoš Guljaš2019-02-264-48/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/pss: fix data race on HandshakeController.symKeyIndex The HandshakeController.symKeyIndex map was accessed concurrently. Since insufficient test coverage the race is not detected every time. However, running TestClientHandshake a 100 times seems to be enough to reproduce the race. Note: I've chosen HandshakeController.lock to protect HandshakeController.symKeyIndex as that was already protected in a few functions by that lock. Additionally: - removed unused testStore - enabled tests in handshake_test.go as they pass - removed code duplication by adding getSymKey() * swarm/pss: fix a data race on HandshakeController.keyC * swarm/pss: fix data races with on Pss.symKeyPool
* | | | les: remove redundant type specifiers (#19091)Matthew Halpern2019-02-252-15/+10
| | | |
* | | | rlp: added pooling of streams using sync (#19044)Marius van der Wijden2019-02-251-4/+17
|/ / / | | | | | | Prevents reallocation, improves performance
* | | swarm/network/simulation: do not copy node mutex in UploadSnapshot (#19160)Janoš Guljaš2019-02-251-4/+4
| | |
* | | swarm/*: remove redundant type specifiers (#19089)Matthew Halpern2019-02-254-4/+4
| | |
* | | swarm/pss: remove unused function (#19100)Matthew Halpern2019-02-241-16/+0
| | |
* | | cmd,swarm: enforce camel case variable names (#19060)Matthew Halpern2019-02-2412-101/+101
| | |
* | | swarm: mock store listings (#19157)Janoš Guljaš2019-02-2317-141/+2209
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/storage/mock: implement listings methods for mem and rpc stores * swarm/storage/mock/rpc: add comments and newTestStore helper function * swarm/storage/mock/mem: add missing comments * swarm/storage/mock: add comments to new types and constants * swarm/storage/mock/db: implement listings for mock/db global store * swarm/storage/mock/test: add comments for MockStoreListings * swarm/storage/mock/explorer: initial implementation * cmd/swarm/global-store: add chunk explorer * cmd/swarm/global-store: add chunk explorer tests * swarm/storage/mock/explorer: add tests * swarm/storage/mock/explorer: add swagger api definition * swarm/storage/mock/explorer: not-zero test values for invalid addr and key * swarm/storage/mock/explorer: test wildcard cors origin * swarm/storage/mock/db: renames based on Fabio's suggestions * swarm/storage/mock/explorer: add more comments to testHandler function * cmd/swarm/global-store: terminate subprocess with Kill in tests
* | | swarm: Fix localstore test deadlock with race detector (#19153)Janoš Guljaš2019-02-236-66/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/storage/localstore: close localstore in two tests * swarm/storage/localstore: fix a possible deadlock in tests * swarm/storage/localstore: re-enable pull subs tests for travis race * swarm/storage/localstore: stop sending to errChan on context done in tests * swarm/storage/localstore: better want check in readPullSubscriptionBin * swarm/storage/localstore: protect chunk put with addr lock in tests * swamr/storage/localstore: wait for gc and writeGCSize workers on Close * swarm/storage/localstore: more correct testDB_collectGarbageWorker * swarm/storage/localstore: set DB Close timeout to 5s
* | | travis.yml: add race detector job for Swarm (#19148)Ferenc Szabo2019-02-222-6/+61
| | |
* | | .travis.yml: make build independent of repo name (#17607)Nguyen Kien Trung2019-02-221-1/+1
| | |
* | | swarm/shed: fix a deadlock in meter function (#19149)Janoš Guljaš2019-02-221-26/+6
| | |
* | | swarm/network/master: protect SetNextBatch iterator after close (#19147)Janoš Guljaš2019-02-222-0/+15
| | |
* | | swarm/version: bump to v0.3.12 unstablePéter Szilágyi2019-02-211-1/+1
| | |
* | | core: remove unnecessary fields in logs, receipts and tx lookups (#17106)gary rong2019-02-2113-61/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * core: remove unnecessary fields in log * core: bump blockchain database version * core, les: remove unnecessary fields in txlookup * eth: print db version explicitly * core/rawdb: drop txlookup entry struct wrapper
* | | core: more tests for sidechain import, fixes #19105 (#19113)Martin Holst Swende2019-02-212-20/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * blockchain: more tests for sidechain import, fixes #19105 * core/blockchain: rework import of pruned canon blocks and canon-prepended sidechains * core/blockchain: minor clarity change * core/blockchain: remove unused method
* | | common/fdlimit: Fix compilation error in freebsd, Raise() returns uint64 ↵Enrique Fynn2019-02-211-1/+1
| | | | | | | | | | | | | | | (#19141) cast limit.Cur (int64) to uint64, fix test and compilation error
* | | swarm/storage: fix loop bound for database cleanup (#19085)Matthew Halpern2019-02-211-2/+2
| | | | | | | | | | | | | | | | | | The current loop continuation condition is always true as a uint8 is always being checked whether it is less than 255 (its maximum value). Since the loop starts with the value 1, the loop termination can be guarranteed to exit once the value overflows to 0.
* | | cmd/swarm/global-store: use kill instead interrupt in tests (#19142)Janoš Guljaš2019-02-211-2/+2
| | |
* | | Ci race detector handle failing tests (#19143)Ferenc Szabo2019-02-2113-132/+187
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/storage: increase mget timeout in common_test.go TestDbStoreCorrect_1k sometimes timed out with -race on Travis. --- FAIL: TestDbStoreCorrect_1k (24.63s) common_test.go:194: testStore failed: timed out after 10s * swarm: remove unused vars from TestSnapshotSyncWithServer nodeCount and chunkCount is returned from setupSim and those values we use. * swarm: move race/norace helpers from stream to testutil As we will need to use the flag in other packages, too. * swarm: refactor TestSwarmNetwork case Extract long running test cases for better visibility. * swarm/network: skip TestSyncingViaGlobalSync with -race As panics on Travis. panic: runtime error: invalid memory address or nil pointer dereference [signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x7e351b] * swarm: run TestSwarmNetwork with fewer nodes with -race As otherwise we always get test failure with `network_test.go:374: context deadline exceeded` even with raised `Timeout`. * swarm/network: run TestDeliveryFromNodes with fewer nodes with -race Test on Travis times out with 8 or more nodes if -race flag is present. * swarm/network: smaller node count for discovery tests with -race TestDiscoveryPersistenceSimulationSimAdapters failed on Travis with `-race` flag present. The failure was due to extensive memory usage, coming from the CGO runtime. Using a smaller node count resolves the issue. === RUN TestDiscoveryPersistenceSimulationSimAdapter ==7227==ERROR: ThreadSanitizer failed to allocate 0x80000 (524288) bytes of clock allocator (error code: 12) FATAL: ThreadSanitizer CHECK failed: ./gotsan.cc:6976 "((0 && "unable to mmap")) != (0)" (0x0, 0x0) FAIL github.com/ethereum/go-ethereum/swarm/network/simulations/discovery 804.826s * swarm/network: run TestFileRetrieval with fewer nodes with -race Otherwise we get a failure due to extensive memory usage, as the CGO runtime cannot allocate more bytes. === RUN TestFileRetrieval ==7366==ERROR: ThreadSanitizer failed to allocate 0x80000 (524288) bytes of clock allocator (error code: 12) FATAL: ThreadSanitizer CHECK failed: ./gotsan.cc:6976 "((0 && "unable to mmap")) != (0)" (0x0, 0x0) FAIL github.com/ethereum/go-ethereum/swarm/network/stream 155.165s * swarm/network: run TestRetrieval with fewer nodes with -race Otherwise we get a failure due to extensive memory usage, as the CGO runtime cannot allocate more bytes ("ThreadSanitizer failed to allocate"). * swarm/network: skip flaky TestGetSubscriptionsRPC on Travis w/ -race Test fails a lot with something like: streamer_test.go:1332: Real subscriptions and expected amount don't match; real: 0, expected: 20 * swarm/storage: skip TestDB_SubscribePull* tests on Travis w/ -race Travis just hangs... ok github.com/ethereum/go-ethereum/swarm/storage/feed/lookup 1.307s keepalive keepalive keepalive or panics after a while. Without these tests the race detector job is now stable. Let's invetigate these tests in a separate issue: https://github.com/ethersphere/go-ethereum/issues/1245
* | | swarm/network: Keep span across roundtrip (#19140)lash2019-02-207-45/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/newtork: WIP Span request span until delivery and put * swarm/storage: Introduce new trace across single fetcher lifespan * swarm/network: Put span ids for sendpriority in context value * swarm: Add global span store in tracing * swarm/tracing: Add context key constants * swarm/tracing: Add comments * swarm/storage: Remove redundant fix for filestore * swarm/tracing: Elaborate constants comments * swarm/network, swarm/storage, swarm:tracing: Minor cleanup
* | | swarm/network: Use actual remote peer ip in underlay (#19137)lash2019-02-202-1/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/network: Logline to see handshake addr * swarm/network: Replace remote ip in handshake uaddr * swarm/network: Add test for enode uaddr rewrite method * swarm/network: Remove redundance pointer return from sanitize * swarm/network: Obeying the linting machine * swarm/network: Add panic comment (travis trigger take 1)
* | | swarm/network/stream: fix a goroutine leak in Registry (#19139)Janoš Guljaš2019-02-202-9/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * swarm/network/stream: fix a goroutine leak in Registry * swarm/network, swamr/network/stream: Kademlia close addr count and depth change chans * swarm/network/stream: rename close channel to quit * swarm/network/stream: fix sync between NewRegistry goroutine and Close method
* | | accounts/abi: mutex lock in TransactionByHash and code cleanup (#19133)Dan Kinsley2019-02-203-4/+36
| | |
* | | p2p/simulations: enforce camel case variable names (#19053)Matthew Halpern2019-02-201-2/+2
| | |
* | | core/vm: remove unused constants (#19095)Péter Szilágyi2019-02-201-4/+0
|\ \ \
| * | | core/vm: remove unused constantsMatthew Halpern2019-02-181-4/+0
| | | |
* | | | eth: extract check for tracing transaction in block file (#19107)Matthew Halpern2019-02-201-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | Simplifies the transaction presense check to use a function to determine if the transaction is present in the block provided to trace, which originally had a redundant parenthesis and used a `exist` flag to dictate control flow.
* | | | trie: prefer nil slices over zero-length slices (#19084)Matthew Halpern2019-02-194-5/+5
| | | |
* | | | p2p/discover: make maximum packet size a constant (#19061)Matthew Halpern2019-02-191-7/+9
| | | |
* | | | core: remove redundant parentheses (#19106)Matthew Halpern2019-02-192-2/+2
| | | |
* | | | crypto: fix build when CGO_ENABLED=0 (#19121)Jeremy Schlatter2019-02-192-2/+2
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Package crypto works with or without cgo, which is great. However, to make it work without cgo required setting the build tag `nocgo`. It's common to disable cgo by instead just setting the environment variable `CGO_ENABLED=0`. Setting this environment variable does _not_ implicitly set the build tag `nocgo`. So projects that try to build the crypto package with `CGO_ENABLED=0` will fail. I have done this myself several times. Until today, I had just assumed that this meant that this package requires cgo. But a small build tag change will make this case work. Instead of using `nocgo` and `!nocgo`, we can use `!cgo` and `cgo`, respectively. The `cgo` build tag is automatically set if cgo is enabled, and unset if it is disabled.
* | | eth, node: use APPDATA env to support cygwin/msys correctly (#17786)HackyMiner2019-02-193-7/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | This changes default location of the data directory to use the LOCALAPPDATA environment variable, resolving issues with remote home directories an improving compatibility with Cygwin. Fixes #2239 Fixes #2237 Fixes #16437
* | | rpc: fixup change to not verify websocket origin (#19128)Felix Lange2019-02-191-1/+1
| | | | | | | | | | | | This corrects the previous change which broke the build and was pushed by accident.