-
Notifications
You must be signed in to change notification settings - Fork 471
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
go-algorand 3.9.2-stable Release PR #4506
Merged
algojohnlee
merged 97 commits into
algorand:rel/stable
from
Algo-devops-service:relstable3.9.2
Sep 2, 2022
Merged
go-algorand 3.9.2-stable Release PR #4506
algojohnlee
merged 97 commits into
algorand:rel/stable
from
Algo-devops-service:relstable3.9.2
Sep 2, 2022
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Always use the new (batch) verification system, having confirmed no incompatibilities with existing blockchain.
…lgorand#4159) `goal network create` required a `-n` flag to specify the network name. But the name can be set in the template file. Now we error only if neither place specifies a network name.
This fixes an issue introduced in algorand#4130. The new code did not handle end of stream correctly.
Simplify a lot of work with rekeyed accounts.
go test -run ^NOTHING -bench 'BenchmarkOldMulDiv|BenchmarkNewMulDiv' goos: darwin goarch: amd64 pkg: github.com/algorand/go-algorand/data/basics cpu: Intel(R) Core(TM) i7-1068NG7 CPU @ 2.30GHz BenchmarkOldMulDiv-8 2501655 479.3 ns/op BenchmarkNewMulDiv-8 653492884 1.801 ns/op
* Fix race condition in pingpong by adding mutex and some internal rearranging to facilitate efficient locking. * Fix infinite loop in sendFromTo() * pingpong run adds --pidfile path and --cpuprofile path * Add csv report to test/heapwatch/client_ram_report.py * Add script test/scripts/tps.py to get recent TPS from algod
…lgorand#4003) Reduce deltas size from 320 to 8 by introducing a new online accounts tracker that preserves history of state (online/offline, stake, protos) for at least MaxBalLookback = 2 x SeedRefreshInterval x SeedLookback rounds back from Latest. New data are stores in new tables and they are excluded from catchpoints. TxTail stores its data into a table as well in order to prevent full blocks loading on startup and preserves up to MaxTxnLife + DeeperBlockHistory blocks and caches their headers. Catchpoint generation is made in two stages: data file at X-320 and catchpoint itself at round X. Regular nodes see ~3x memory consumption decrease on high 6,000 TPS load. Co-authored-by: Tsachi Herman <[email protected]> Co-authored-by: nicholasguoalgorand <[email protected]> Co-authored-by: chris erway <[email protected]>
…nd#4239) In algorand#4003 some pointer receivers and pointer arguments were changed to pass by value and value receivers, which could lead to a performance regression. This changes them back.
This commit replaces `ioutil.TempDir` with `t.TempDir` in tests. The directory created by `t.TempDir` is automatically removed when the test and all its subtests complete. Prior to this commit, temporary directory created using `ioutil.TempDir` needs to be removed manually by calling `os.RemoveAll`, which is omitted in some tests. The error handling boilerplate e.g. defer func() { if err := os.RemoveAll(dir); err != nil { t.Fatal(err) } } is also tedious, but `t.TempDir` handles this for us nicely. Reference: https://pkg.go.dev/testing#T.TempDir Signed-off-by: Eng Zer Jun <[email protected]>
* Prevent the main thread quitting before the flush routine * Make the test more robust by counting warning messages * Cut the execution time few times by reducing number of iterations
* Rename GetProof to GetTransactionProof to avoid ambiguity * Rename GetProofForLightBlockHeader to GetLightBlockHeaderProof
…gorand#4392) A fast-caught up node should be able to be part of state proofs creation and must download all necessary blocks. Currently, if the state proof chain is lagging the node download lowestStateProofRound - stateproofInterval rounds back on fast catchup. This is not accurate since the balances comes from lowestStateProofRound - stateproofInterval - StateProofVotersLookback round.
* After the protocol upgrade nodes required to have MaxTxnLife + DeeperBlockHeaderHistory blocks that violated the test's expectations. * Fixed a rare case when a block exists in a local ledger but peer's stat is still updated even if no communications were made.
* Catchpoints only have minimal data, and online accounts/txtail derive it by applying catchpoint * Deriving code is reused from DB schema migration but the migration only assumed MaxTxnLife worth of block history * In fact, it needs to restore MaxTxnLife + DeeperBlockHeaderHistory when used as part of catchpoint apply code path
Tests: Remove using unreleased semicolon support in AVM test
* replaying transactions after catchpoint requires 1001 blocks from the very first replayed block
* Ensure blk opcode can be replayed after restart * Fix e2e fast catchup tests
go-algorand v3.9.2-beta
Algo-devops-service
requested review from
algoanne,
algobarb,
algojack,
egieseke,
michaeldiamant and
onetechnical
September 1, 2022 20:17
algoanne
approved these changes
Sep 1, 2022
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good w.r.t. AVM changes.
algojack
approved these changes
Sep 1, 2022
Codecov Report
@@ Coverage Diff @@
## rel/stable #4506 +/- ##
==============================================
+ Coverage 54.59% 55.70% +1.11%
==============================================
Files 391 403 +12
Lines 48732 50820 +2088
==============================================
+ Hits 26605 28311 +1706
- Misses 19908 20108 +200
- Partials 2219 2401 +182
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This release requires a protocol upgrade.
This release contains a consensus protocol upgrade, which implements the following spec: https://github.com/algorandfoundation/specs/tree/433d8e9a7274b6fca703d91213e05c7e6a589e69
What's New
block
andvrf_verify
opcodes.Changelog
New Features
Enhancements
T.TempDir
to create temporary test directory (#4256)Bugfixes
txn FirstValidTime
andblock
opcode available in logicsigs (#4371)Activations (previously in vFuture)
Additional Resources