- Nov 01, 2020
-
-
Giulio Rebuffo authored
-
- Oct 31, 2020
-
-
ledgerwatch authored
* Initial work on state shards * Fix compile errors * Intermediate * Implement dispatcher * Implemented sharded reader * No cache * Print comms * No prepopulation * Print dispatcher activity * Print more * Print errors * Fix dispatcher * Remove logging * Dispatcher to enforce initial barrier * Don't print that much * Turn off cache pre-seeting for state sharding * Artificial latency, fixed number of blocks to execute * Fix
-
- Oct 30, 2020
-
-
Giulio Rebuffo authored
-
Horacio Mijail Antón Quiles authored
* OpcodeTracer * Cleanup, rename to opcode_tracer * Bring back check_change_sets, remove repeated vars * Cleanup, gofmt * Linter, cleanup * Rename "segments" to "basic blocks", "bblocks" * gofmt * Lintci madness
-
Alex Sharov authored
-
Suhabe Bugrara authored
* First * More on SA interpreter * Fixup * Add cfg action to hack binary that invokes the SaInterpreter. Added an operation handler for PUSH1 * refactor cfg tests into separate file * Move cfg tests into separate file * More refactoring into new file * dataflow interpreter * work on cfg0 * finish cfg0 * df works on base examples * refactor into dataflow spec * add bounded stack * add harder example * fix switch pass thru * fix switch pass thru * bug fix, and better printing * manual merge * restore call to test gencfg * abstract interpretation based cfg analysis * fix post signature * use uint256 instead uint64, add post function * preprocess stmts * initial implementation of resolve * fix resolve * fix resolve * print stmts for edges * print stmts for edges * print states * print states * bug fixes, debugging * fix jumpi dest - first working impl * reachability analysis to filter out dead edges * add all transfer functions * larger contract bytecodes from solc compiler * simple solidity contract goes thru * add deposit contract bytecode * rename deposit contract test * fix new contract arg * Address non-determinism leading to imprecise results * improve debugging output * improve debugging output * improve debugging output * fix for bug causing incorrect analysis results * fix for bug causing incorrect analysis results * fix for bug causing incorrect analysis results * add more test cases * fix coverage bug * debugging for non-termination * fix bad fixpoint check * fix data inference * fix transfer function for halting stmts * switch to deposit contract test, disable debugging * add anly counter to viz, fix stmt.valid check * show all preds, adjust anlycounter behavior * dfs instead of bfs to fail earlier * viz improvements * add worklist size to viz * add test case for private functions * valueset analysis * add more checks to fail earlier in the analysis to help debugging, improve debugging output, catch additional bad jumps * delete old code * delete old code * delete old code * fix up minor changes to jump table * copy over comments from cgf-1 branch * remove minor diffs * add recompiled deposit contract * graph viz * cleanup/refactoring * initial impl of viz * script to run cfg anly and generate dot file * div example * accept bytecode from cmd line * add minimal deposit contract example * replace valueset analysis with stackset analysis * get in sync with master * sync with master * fix linting * fix linting * fix linting * reformatting * fix linting * fix linting * fix linting * fix linting * fix linting * fix linting * fix linting * harness for running over all contracts * refactor anly, track coverage metrics * breakdown unresolved into different types, fix bad opcode bug * sort programs by frequency * ingest used contracts from bigquery * performance, concurrency, bug fixes * more test cases, handle invalid jumps differently, remove duplicate edges, report analytics limit * simplify concurrency * correctly track short stack * add new transfer function, fix stack len * variable stack length, perf opts, inc anly count limit * profiling * test case for large state size * use custom hash function for control * timeouts * cfg.sh * increase to 5 min timeout * track elpased time * use ptr * increase limits * increase limits * fix mem leak * debug mem leak * debug mem leak * lower resource limits * fix nil error * add new lattice element * re-enable * cut down limits * preliminary proof checker * refactor batch mode to run cfg in subprocess,put memory limit * remove hard wiring * adjust limits * update metrics tracking * more succinct proof checker * rewrite checker * bug fixes on checker * bug fix * remove print stmts * track proof size * print proof size * don't panic on process error * compress proof * go mody tidy * code formatting * fix capitalization * fix linting * fix linting * fix linting * fix linting * fix linting * remove unnecessary files * fix typo Co-authored-by:
Alexey Akhunov <akhounov@gmail.com>
-
Igor Mandrigin authored
* fix git commit when using `make docker` * avoid warning about LATEST_COMMIT for linters in Docker
-
Alex Sharov authored
-
Horacio Mijail Antón Quiles authored
-
Alex Sharov authored
-
alex.sharov authored
-
- Oct 29, 2020
-
-
Igor Mandrigin authored
-
ledgerwatch authored
* Squashed 'interfaces/' content from commit c4e14d6dc git-subtree-dir: interfaces git-subtree-split: c4e14d6dc80a157c60acd42f0152d631d250601e * Squashed 'interfaces/' changes from c4e14d6dc..84c5faa5f 84c5faa5f Update README.md 07db484a1 Update README.md ea14fa4e3 Update README.md git-subtree-dir: interfaces git-subtree-split: 84c5faa5f956ea52119911f39ac5864b282dcec2 * Change proto paths * Squashed 'interfaces/' changes from 84c5faa5f..eb9859d41 eb9859d41 Correct syntax ae78fe955 Add go package git-subtree-dir: interfaces git-subtree-split: eb9859d4157351fac3b8bd2f477307a09978e6df * Switch to shared proto files * Fix generation * Remove duplicate files * Init hard-coded tips when not recovering * Only check initiation when extending up
-
Alex Sharov authored
* mdb tools * mdb tools * mdb tools * mdb tools * mdb tools * mdb tools * mdb tools * mdb tools * clean * clean * clean * clean * clean * rebase master Co-authored-by:
Alexey Akhunov <akhounov@gmail.com>
-
Alex Sharov authored
* aloow_delete_dupsort_values * check canonical receipt * exclusive lock for mdbx * readme_load_dump_tables * readme_load_dump_tables * readme_load_dump_tables * Remove IdealBatchSize change Co-authored-by:
Alexey Akhunov <akhounov@gmail.com>
-
Horacio Mijail Antón Quiles authored
* Add the missing CaptureStart and CaptureEnd * gofmt
-
Igor Mandrigin authored
-
- Oct 28, 2020
-
-
ledgerwatch authored
* Removed z3 submodule * Remove semantics and z3 from build * Fixes to CI
-
Igor Mandrigin authored
* fix compilation * add mdbx flag to the tg binary * fix makefile * fixups * fix makefile * fix readme * fix linters * fix tests
-
Alex Sharov authored
* exclusive lock for chaindata folder * exclusive lock for chaindata folder * exclusive lock for chaindata folder * mdb tools * resolve abs path * rpcdaemon to check exclusive lock * rpcdaemon to check exclusive lock * exclusive lock for mdbx * exclusive lock for mdbx
-
Igor Mandrigin authored
-
Igor Mandrigin authored
-
ledgerwatch authored
* Fix tables * Some corrections to DB walkthrough
-
Alex Sharov authored
-
Alex Sharov authored
-
Alex Sharov authored
-
- Oct 27, 2020
-
-
b00ris authored
-
ledgerwatch authored
* Try mutation based on B-tree * Use pointers * Fix NPE * Cleanup
-
Igor Mandrigin authored
-
ledgerwatch authored
Revert "[WIP - Discussion - Perf Testing] Use BTree instead of maps for Mutation (batch) (#1294)" (#1305) This reverts commit a9ae477d.
-
ledgerwatch authored
* Try mutation based on B-tree * Use pointers * Fix NPE * Cleanup
-
Alex Sharov authored
* set IH comparator * set IH comparator * Fix chain config Co-authored-by:
Alexey Akhunov <akhounov@gmail.com>
-
- Oct 26, 2020
-
-
Igor Mandrigin authored
-
Felix Lange authored
# Conflicts: # params/version.go
-
Felix Lange authored
This change implements the Discovery v5.1 wire protocol and also adds an interactive test suite for this protocol. # Conflicts: # cmd/devp2p/discv5cmd.go # p2p/discover/v5_encoding.go # p2p/discover/v5_encoding_test.go # p2p/discover/v5_udp.go # p2p/discover/v5_udp_test.go # p2p/discover/v5wire/session.go
-
Martin Holst Swende authored
-
gary rong authored
-
Marius van der Wijden authored
* accounts/keystore: add timeout to test to prevent failure on travis The TestWalletNotifications test sporadically fails on travis. This is because we shutdown the event collection before all events are received. Adding a small timeout (10 milliseconds) allows the collector to be scheduled and to consume all pending events before we shut it down. * accounts/keystore: added newlines back in * accounts/keystore: properly fix the walletNotifications test
-
Martin Holst Swende authored
* miner: exit loop when downloader Done or Failed Following the logic of the comment at the method, this fixes a regression introduced at 7cf56d6f , which would allow external parties to DoS with blocks, preventing mining progress. Signed-off-by:
meows <b5c6@protonmail.com> * miner: remove ineff assign (lint) Signed-off-by:
meows <b5c6@protonmail.com> * miner: update test re downloader events Signed-off-by:
meows <b5c6@protonmail.com> * Revert "miner: remove ineff assign (lint)" This reverts commit eaefcd34ab4862ebc936fb8a07578aa2744bc058. * Revert "miner: exit loop when downloader Done or Failed" This reverts commit 23abd34265aa246c38fc390bb72572ad6ae9fe3b. * miner: add test showing imprecise TestMiner Signed-off-by:
meows <b5c6@protonmail.com> * miner: fix waitForMiningState precision This helper function would return an affirmation on the first positive match on a desired bool. This was imprecise; it return false positives by not waiting initially for an 'updated' value. This fix causes TestMiner_2 to fail, which is expected. Signed-off-by:
meows <b5c6@protonmail.com> * miner: remove TestMiner_2 demonstrating broken test This test demonstrated the imprecision of the test helper function waitForMiningState. This function has been fixed with 6d365c2851, and this test test may now be removed. Signed-off-by:
meows <b5c6@protonmail.com> * miner: fix test regarding downloader event/mining expectations See comment for logic. Signed-off-by:
meows <b5c6@protonmail.com> * miner: add test describing expectations for downloader/mining events We expect that once the downloader emits a DoneEvent, signaling a successful sync, that subsequent StartEvents are not longer permitted to stop the miner. This prevents a security vulnerability where forced syncs via fake high blocks would stall mining operation. Signed-off-by:
meows <b5c6@protonmail.com> * miner: use 'canStop' state to fix downloader event handling - Break downloader event handling into event separating Done and Failed events. We need to treat these cases differently since a DoneEvent should prevent the miner from being stopped on subsequent downloader Start events. - Use canStop state to handle the one-off case when a downloader first succeeds. Signed-off-by:
meows <b5c6@protonmail.com> * miner: improve comment wording Signed-off-by:
meows <b5c6@protonmail.com> * miner: start mining on downloader events iff not already mining Signed-off-by:
meows <b5c6@protonmail.com> * miner: refactor miner update logic w/r/t downloader events This makes mining pause/start logic regarding downloader events more explicit. Instead of eternally handling downloader events after the first done event, the subscription is closed when downloader events are no longer actionable. Signed-off-by:
meows <b5c6@protonmail.com> * miner: fix handling downloader events on subcription closed Signed-off-by:
meows <b5c6@protonmail.com> * miner: (lint:gosimple) use range over chan instead of for/select Signed-off-by:
meows <b5c6@protonmail.com> * miner: refactor update loop to remove race condition The go routine handling the downloader events handling vars in parallel with the parent routine, causing a race condition. This change, though ugly, remove the condition while still allowing the downloader event subscription to be closed when the miner has no further use for it (ie DoneEvent). * miner: alternate fix for miner-flaw Co-authored-by:
meows <b5c6@protonmail.com> # Conflicts: # miner/miner_test.go
-