Skip to content
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.14.2-stable Release PR #5110

Merged
merged 90 commits into from
Feb 3, 2023

Conversation

Algo-devops-service
Copy link
Contributor

@Algo-devops-service Algo-devops-service commented Feb 3, 2023

GitHub Logo

Overview

This release contains enhancements to networking capabilities such as our transaction handling and relay connection limits. In addition, we are including telemetry enhancements to better monitor the performance of the network.

What's New

  • Batch verify transactions for more efficient signature verification
  • Introduce elastic rate limiter to manage congestion from noisy peers
  • Increase max incoming connections limit
  • Decrease max connections per IP
  • Increase default gossip fanout for relays
  • goal node status now additionally reports consensus voting progress

Changelog

New Features

  • Algod: Add experimental endpoint for simulating transactions against a real block evaluator (#4436)
  • Tools: pingpong total latency (#4757)
  • Txhandler: batch transactions to the verifier (#4621)
  • Txhandler: Random Early Detection for backlog queue (#4797)

Enhancements

  • AVM: Clearer cost benchmarks, and a nice optimization of b== and b< (#5010)
  • AVM-abi: Update functions migrated to AVM-abi library (#4979)
  • Algocfg: Clarify config file loading error. (#5025)
  • Algod: update copyright comment to 2023 (#4957)
  • Ci: Split paralleltest lint excludes to minimize merge conflicts (#5002)
  • Cicd: add container build (#4927)
  • Cleanup: remove unused node.PoolStats() (#4956)
  • Config: add CadaverDirectory and prevent algod from starting if cadaver.init() fails (#4740)
  • Config: add HeartbeatUpdateInterval (#4832)
  • Container: update documentation and remove unused tools (#4982)
  • Debug: unmarshal and print transaction distribution (#5008)
  • Enhancement: goal Error UX Improvement (#4951)
  • Enhancement: Add missing ArgEnum fields, tweaks to immediate note (#4903)
  • Goal: Added consensus upgrade fields to node status API & goal output (#4800)
  • Metrics: use uint64 for Counter and Gauge types (#4911)
  • Metrics: count telemetry server errors (#4933)
  • Network: new default gossip fanout setting for relays (#5005)
  • Network: increase max incoming connections limit (#5018)
  • REST API: update WaitForBlock summary (#4910)
  • Tech Debt: Remove topAccountListener. (#5027)
  • Tech Debt: Remove unused NetworkFetcher. (#5028)
  • Telemetry: Remove unused TelemetryOperation (#4935)
  • Telemetry: don't report ES client errors (#4940)
  • Telemetry: don't report let asyncTelemetryHook wrap and log its own errors (#4932)
  • Tests: Fix t.Parallel() errors in shared package (#4989)
  • Tests: Fixes saved from 4981 revert (#4996)
  • Tests: Fix t.Parallel() errors in data package (#4981)
  • Tests: plot heap data (#4968)
  • Tests: Enable more parallel tests in data/transactions/logic/evalAppTxn_test.go (#4937)
  • Tests: Fix t.Parallel() errors in data/transactions/logic package (#4931)
  • Tests: fix dependency on global counters (#4921)
  • Tools: nodecfg without dns (#4967)
  • Util/s3: enable more credential providers (#4929)
  • Algod: Replace logic.DebuggerHook with logic.EvalTracer interface (#4438)
  • Lint: fix warnings (#5047)

Bugfixes

  • AVM: Catch any panic in edcsa verifying (#4368)
  • Agreement: fix receivedAt proposal performance timing (#5041)
  • Bugfix: Remove accidental devtesting output. (#5033)
  • Bugfix: removed redundant unlock, potentially causing double unlock (#4928)
  • Build: fix build after avm-abi: Update functions migrated to avm-abi library #4979 (#5032)
  • Ci: Fix PartitionTest Github Action (#5006)
  • Devops: Adding old artifact cleanup for self-hosted runners (#4909)
  • Ledger: rearrange blockqueue start/stop (#4964)
  • Ledger: bulletin leaking waiters fix (#4962)
  • Node: Add logging thread to node monitoring wg (#4934)
  • Scripts(compute_branch): fix incorrect conditional (#4987)
  • Test Fix: flaky TestStreamVerifierCtxCancelPoolQueue (#4980)
  • Tests: 'Revert Tests Fix t.Parallel() errors in data package' (#4995)
  • Updater: fix update.sh parsing of latest version (#4994)
  • Util/s3: remove extra println (#5024)
  • AVM: Fix opBytesLt for len(rhs) < len(lhs) (#5051)
  • algod: split SetFdSoftLimit calls for relay and non-relay nodes (#5070)
  • goal: fix for goal node status crash - no longer getting block (#5100)

Protocol Upgrade

This release does not contain a protocol upgrade.

Additional Resources

barnjamin and others added 30 commits December 14, 2022 12:45
…gorand#4903)

* Adding argenum fields, tweaks to immediate note

* Fix fmt

* restore big-endian note

* adding reminder to possibly modify argEnums method with some automatic thing later
* rename remaining accountdb to acctdeltas
…a real block evaluator (algorand#4436)

Co-authored-by: Michael Diamant <[email protected]>
Co-authored-by: Jason Paulos <[email protected]>
…gorand#4942)

* Disable TestResolver in CircleCI due to DNS resolution issue
* Switch e2e_basic_start_stop from devnet to private network
* Elastic Rate Limiter and Congestion Manager to enable RED in txHandler.
* This RED model implements fairness, in which the chance a client's request is dropped
   is proportional to their individual arrival rate, vs a per-client service rate.
* Backlog size is increased by ~30% to accommodate some guaranteed throughput at current TPS target rate.
* Batching incoming transaction for crypto verification
* Streaming capabilities of transactions to the verifier
gmalouf and others added 18 commits January 23, 2023 09:51
* Introduce override of default gossip fanout to a new default relay gossip fanout
   when nodes are configured as relays
* Setting defaultRelayGossipFanout as a const in config.go to avoid
   needing to codegen/expose into local_defaults.go
* Double default config for agreement incoming queue sizes
…algorand#4438)

Adds an EvalTracer for getting callbacks as a transaction group is evaluated.



Co-authored-by: Michael Diamant <[email protected]>
Co-authored-by: Jason Paulos <[email protected]>
* fix some deadcode/unused/structcheck errors
* make golangci lint warnings clean
@algojack algojack self-assigned this Feb 3, 2023
@codecov
Copy link

codecov bot commented Feb 3, 2023

Codecov Report

Merging #5110 (90e744c) into rel/stable (9ddd136) will decrease coverage by 0.29%.
The diff coverage is 44.44%.

@@              Coverage Diff               @@
##           rel/stable    #5110      +/-   ##
==============================================
- Coverage       54.58%   54.29%   -0.29%     
==============================================
  Files             431      434       +3     
  Lines           53580    54170     +590     
==============================================
+ Hits            29245    29410     +165     
- Misses          22043    22480     +437     
+ Partials         2292     2280      -12     
Impacted Files Coverage Δ
agreement/abstractions.go 50.00% <ø> (ø)
agreement/actions.go 72.35% <ø> (ø)
agreement/actor.go 46.66% <ø> (ø)
agreement/agreeInstall.go 100.00% <ø> (ø)
agreement/agreementtest/keyManager.go 100.00% <ø> (ø)
agreement/asyncVoteVerifier.go 89.83% <ø> (ø)
agreement/autopsy.go 0.00% <ø> (ø)
agreement/bundle.go 84.82% <ø> (ø)
agreement/certificate.go 83.33% <ø> (ø)
agreement/coservice.go 81.81% <ø> (ø)
... and 165 more

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

Copy link
Contributor

@algorandskiy algorandskiy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the commits list looks right to me

@algojohnlee algojohnlee merged commit 8fd6e70 into algorand:rel/stable Feb 3, 2023
@Algo-devops-service Algo-devops-service deleted the relstable3.14.2 branch March 10, 2023 21:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.