-
Notifications
You must be signed in to change notification settings - Fork 451
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.2.1-stable #3279
go-algorand 3.2.1-stable #3279
Commits on Sep 15, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 9fe1bf4 - Browse repository at this point
Copy the full SHA 9fe1bf4View commit details
Commits on Sep 16, 2021
-
use matrix for CircleCI config (#2864)
Based on the matrix job @algojack added in #2749, this turns the other per-platform jobs into matrix jobs too. The most significant change in this PR is switching from building in the home directory (/home/circleci on Linux and /Users/distiller on Mac) to instead build out of /opt/cibuild to make it easier for the matrix jobs to share configuration.
Configuration menu - View commit details
-
Copy full SHA for bc46c94 - Browse repository at this point
Copy the full SHA bc46c94View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4b67562 - Browse repository at this point
Copy the full SHA 4b67562View commit details
Commits on Sep 17, 2021
-
Add
indexerLedgerForEval
interface (#2897)Add a new ledger interface for Indexer that is significantly simpler and allows implementing batching in a more straight-forward way. As a result, the Indexer code doesn't need to know the specifics of go-algorand and doesn't need to implement its own accounts cache for batching.
Configuration menu - View commit details
-
Copy full SHA for 275e1f3 - Browse repository at this point
Copy the full SHA 275e1f3View commit details -
Fix random failures TestWaitAndAddConnectionTimeLongtWindow (#2903)
TestWaitAndAddConnectionTimeLongtWindow is randomly failing when the execution of time sensitive statements is separated by more than the expected time gap. This issue is fixed by replacing the sleep with simulated time passing by changing the recorded time, thus giving the impression that the event happened timeout time ago.
Configuration menu - View commit details
-
Copy full SHA for dbab85f - Browse repository at this point
Copy the full SHA dbab85fView commit details
Commits on Sep 20, 2021
-
The unit test TestLatestSigsFromThisNode was data racing. The fix is trivial.
Configuration menu - View commit details
-
Copy full SHA for 83837ac - Browse repository at this point
Copy the full SHA 83837acView commit details
Commits on Sep 21, 2021
-
ledger: move account totals calculation to StateDelta (#2922)
## Summary The account totals are being tested once every round to ensure that the total amount of money in the system doesn't change. Prior to this PR, the accounts update newBlock method was responsible for testing that : this would ensure that we're not writing a new round to disk that violates the totals predicate. While this was working correctly, conducting this test at the time we're writing this information to the disk is too late. By that time, we've already agreed upon applying this (problematic) block to disk. Ideally, we could detect this situation ahead of time, and avoid agreeing on a block which would violate the totals predicate. In this PR, we've moving the totals calculation as the last step of the delta state calculation. Few thoughts: - From security perspective, it's just as secured, since the StateDeltas are always in-process and never shared across the network. - From agreement perspective - in case we have a bug in the evaluator that would cause it to generate a state deltas that would violate the totals predicate, the evaluator is going to fail assembling the state deltas on the generator, validator and applicator ( i.e. "consumer" ). Ideally, in the future, we would be able to propose the empty block in such case, allowing the problematic transactions to time-out. - From code-flow perspective - this seem to be a much better approach: a failure to store the block to the disk has only one potential outcome - panicking. Having the ability to detect that the state delta is invalid would give us a way out of that. ## Test Plan 1. Unit tests updated. 2. Tested against mainnet : catchup from scratch to force validation of the entire blockchain.
Configuration menu - View commit details
-
Copy full SHA for 5c0de9c - Browse repository at this point
Copy the full SHA 5c0de9cView commit details -
Support arm cross compile (#2923)
## Summary This PR is to take advantage of arm64's ability to run arm32 binaries. Using this, we are able to build for arm32 on arm64 hosts by running containers with arm32 OS's on them. This is much faster than our qemu set up because it doesn't rely on emulations. The binaries produced with this process work and the arm64/arm32 build times are as fast as the intel builds, reducing our build time by about an hour. ## Test Plan I ran our build pipeline against this branch using arm64 hosts and tested the produced artifacts using emulated cpu's to make sure they still work on their native architectures. Tested manually on raspberry pi 2 model b, and it's working as expected.
Configuration menu - View commit details
-
Copy full SHA for e9900a3 - Browse repository at this point
Copy the full SHA e9900a3View commit details -
Rotate Travis Env Variables and Remove codecov Env variable (#2934)
Rotated slack token in environment variable and removed the codecov token from Travis file. codecov token is removed because it's not needed for public repos.
Configuration menu - View commit details
-
Copy full SHA for 01d853f - Browse repository at this point
Copy the full SHA 01d853fView commit details
Commits on Sep 22, 2021
-
TestRequestBlockBytesErrors: Various fixes (#2928)
## Summary <!-- Explain the goal of this change and what problem it is solving. Format this cleanly so that it may be used for a commit message, as your changes will be squash-merged. --> The test TestRequestBlockBytesErrors has failed, and the reason is unidentifiable. Various fixes are here, including more verbose error reporting to identify the issue when it occurs again. - Add waitgrop to ledger to wait before closing the ledger and blockQ when goroutines are using them. - In universalFetcher, return the error immediately in case of an error. - Proper closing of objects in TestRequestBlockBytesErrors, and more verbose error reporting. The waitGroup is needed for the following situation: in blockService.go listenForCatchupReq When, immediately after calling `bq.handleCatchupReq`, `BlockService.Stop()` is called, `blockQueue` will be `nil` by the time `blockQueue.getEncodedBlockCert` is called. ``` 0 0x0000000004e16846 in github.com/algorand/go-algorand/ledger.(*blockQueue).checkEntry at /Users/shantkarakashian/go/src/github.com/algorand/go-algorand/ledger/blockqueue.go:215 1 0x0000000004e174a9 in github.com/algorand/go-algorand/ledger.(*blockQueue).getEncodedBlockCert at /Users/shantkarakashian/go/src/github.com/algorand/go-algorand/ledger/blockqueue.go:295 2 0x0000000004e3a2a7 in github.com/algorand/go-algorand/ledger.(*Ledger).EncodedBlockCert at /Users/shantkarakashian/go/src/github.com/algorand/go-algorand/ledger/ledger.go:516 3 0x0000000004f46eed in github.com/algorand/go-algorand/rpcs.topicBlockBytes at /Users/shantkarakashian/go/src/github.com/algorand/go-algorand/rpcs/blockService.go:355 4 0x0000000004f45e1b in github.com/algorand/go-algorand/rpcs.(*BlockService).handleCatchupReq at /Users/shantkarakashian/go/src/github.com/algorand/go-algorand/rpcs/blockService.go:299 5 0x0000000004f45318 in github.com/algorand/go-algorand/rpcs.(*BlockService).listenForCatchupReq at /Users/shantkarakashian/go/src/github.com/algorand/go-algorand/rpcs/blockService.go:245 ``` ## Test Plan Test is enhanced. <!-- How did you test these changes? Please provide the exact scenarios you tested in as much detail as possible including commands, output and rationale. -->
Configuration menu - View commit details
-
Copy full SHA for e4842fc - Browse repository at this point
Copy the full SHA e4842fcView commit details -
Remove time ledger tracker as not used (#2937)
Remove time ledger tracker as not used.
Configuration menu - View commit details
-
Copy full SHA for 8b0dda7 - Browse repository at this point
Copy the full SHA 8b0dda7View commit details -
Configuration menu - View commit details
-
Copy full SHA for e69b10d - Browse repository at this point
Copy the full SHA e69b10dView commit details
Commits on Sep 23, 2021
-
Summary In the EvalForIndexer, we don't want to call finalValidation(). This would skip the calculation of the account totals in the state delta, which is a serious issue if it were to be used by algod, but it's perfectly fine for the indexer since it doesn't track any totals and therefore cannot calculate the new totals. Test Plan Test against the indexer.
Configuration menu - View commit details
-
Copy full SHA for e4fbb1d - Browse repository at this point
Copy the full SHA e4fbb1dView commit details -
Cache creators in cow base. (#2939)
The evaluator shouldn't ask the ledger who is the creator of an asset multiple times. This PR adds a cache for ledger's responses in cow base.
Configuration menu - View commit details
-
Copy full SHA for a196929 - Browse repository at this point
Copy the full SHA a196929View commit details -
testing: fix TestLatestSigsFromThisNode (#2940)
Timing issues between writing to and reading from the database cause the test to occasionally fail. Make the test more tolerant to such timing issues by polling.
Configuration menu - View commit details
-
Copy full SHA for ee0a715 - Browse repository at this point
Copy the full SHA ee0a715View commit details
Commits on Sep 25, 2021
-
Add ABI encoding support (#2807)
Encoding/Decoding method for ABI Values. Serialization/Deserialization of ABI Types. Make/Get methods for ABI Types/Values. Basic testcases for Encoding/Decoding.
Configuration menu - View commit details
-
Copy full SHA for 7451e3e - Browse repository at this point
Copy the full SHA 7451e3eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2faace9 - Browse repository at this point
Copy the full SHA 2faace9View commit details -
Add application account into a dryrun req created by goal (#2945)
AVM 1.0 introduces application accounts goal clerk needs to consider this account when creates dryrun request object Added a new option --dryrun-accounts for adding accounts that were rekeyed to an app account (or any other accounts).
Configuration menu - View commit details
-
Copy full SHA for 073717e - Browse repository at this point
Copy the full SHA 073717eView commit details
Commits on Sep 27, 2021
-
e2e tests for axfer, acfg, and afrz inner txns (#2947)
Similar to app-accounts test, but tests all sorts of asset txns instead of pays.
Configuration menu - View commit details
-
Copy full SHA for 7991a84 - Browse repository at this point
Copy the full SHA 7991a84View commit details -
Lots of testing convenience improvements, including e2e python (#2936)
Made it nice to write e2e test in python by creating a "goal" module that emulates the convenience of goal, but in python so that structured results come out for easy asserts.
Configuration menu - View commit details
-
Copy full SHA for 96b16ff - Browse repository at this point
Copy the full SHA 96b16ffView commit details
Commits on Sep 28, 2021
-
Enable cost and fee pooling in tealdbg (#2954)
* Enable cost and fee pooling in tealdbg * CR fixes
Configuration menu - View commit details
-
Copy full SHA for e40b7ef - Browse repository at this point
Copy the full SHA e40b7efView commit details -
testing: metrics_delta.py fixes (#2962)
Fixes found during recent cluster bandwidth testing
Configuration menu - View commit details
-
Copy full SHA for 412aef5 - Browse repository at this point
Copy the full SHA 412aef5View commit details
Commits on Sep 29, 2021
-
ledger: refactor the ledger Totals (#2846)
## Summary The plan to change the tracker database to maintain the latest 320 rounds for the online accounts only have some other required modification; one of them is the semantics of the `Totals` method: - At this time, it supports retrieving `AccountTotals` for any of the recent 320 rounds. - We need the method to support the `AccountTotals` for the latest round only, as well as provide the circulating supply for latest-320 rounds ( i.e. the circulating supply is a subset of the `AccountTotals` ). Once the database implementation is complete, the database would contain the `AccountTotals` information for the latest round only, plus the online circulation for the past 320 rounds. In order to support that, I've broken up the interface into: - `LatestTotals`, which would return the latest totals as well as the latest round associated with these totals. - `OnlineTotals`, which receive a round number and return the online totals associated with that round. This change is focused around the Ledger interface. Further changes would be required in the accounts update before the high-level goals could be achieved. ## Test Plan Unit tests updated.
Configuration menu - View commit details
-
Copy full SHA for 1202d32 - Browse repository at this point
Copy the full SHA 1202d32View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f3180a - Browse repository at this point
Copy the full SHA 7f3180aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 16de1d8 - Browse repository at this point
Copy the full SHA 16de1d8View commit details -
Merge pull request #2971 from algorand/release3.0.1-mergeback-manual
Release3.0.1 mergeback manual
Configuration menu - View commit details
-
Copy full SHA for 734e727 - Browse repository at this point
Copy the full SHA 734e727View commit details
Commits on Sep 30, 2021
-
fix flaky axfer txn e2e test (#2973)
lower acct bal so it receives no reward
Configuration menu - View commit details
-
Copy full SHA for 4ed1d8e - Browse repository at this point
Copy the full SHA 4ed1d8eView commit details -
Extended logic eval error (#2975)
Return a bit more details on eval failure for app calls.
Configuration menu - View commit details
-
Copy full SHA for fbd75f7 - Browse repository at this point
Copy the full SHA fbd75f7View commit details
Commits on Oct 2, 2021
-
Start work on Teal 6 (AVM 1.1) (#2974)
Start work on Teal 6 (AVM 1.1) vFuture, LogicVersion changed to 6 Support RekeyTo field, and Keyreg transactions
Configuration menu - View commit details
-
Copy full SHA for f17f73e - Browse repository at this point
Copy the full SHA f17f73eView commit details
Commits on Oct 4, 2021
-
## Summary This PR implements the transaction sync 2.0. More details can be found in the design document and the feature presentation . ## Test Plan Unit tests, e2e tests and performance tests were executed against this branch successfully. ## Reviewer notes This PR is pretty large. Consider reviewing it in browsers other than Safari.
Configuration menu - View commit details
-
Copy full SHA for 69aace5 - Browse repository at this point
Copy the full SHA 69aace5View commit details
Commits on Oct 5, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 0b99cf8 - Browse repository at this point
Copy the full SHA 0b99cf8View commit details
Commits on Oct 7, 2021
-
itxn_next to give us inner groups Questions remain around how TxID and GroupID should be defined for inners.
Configuration menu - View commit details
-
Copy full SHA for c579bf6 - Browse repository at this point
Copy the full SHA c579bf6View commit details -
Disable the participation key refresh on the TestPartitionHalfOffline…
… branch. (#3017) ## Summary Disable the participation key refresh on the TestPartitionHalfOffline test. The test was failing with the following threads running: ``` algod(20739) : github.com/algorand/go-algorand/agreement.(*asyncPseudonode).loadRoundParticipationKeys(0xc0033dad20, 0x2, 0xc0039c8180, 0xc000530000, 0xc000dcb0d0) ``` ``` algod(20739) : github.com/algorand/go-algorand/data/account.PersistedParticipation.DeleteOldKeys(0x92c6b21bbd8fefac, 0xed2d99ce769768ea, 0xac85a3b9466cead1, 0xc32937d7e4c532f9, 0xc000043260, 0xc0002b04b0, 0x0, 0x2dc6c0, 0x2710, 0xc0001892c0, ...) ``` ``` algod(20739) : github.com/algorand/go-algorand/data.(*AccountManager).AddParticipation(0xc0001191a0, 0xd175b5d042fa1c39, 0x2140fe15c6a19653, 0xc66f7b9c58cf5ed1, 0x107d657815b44d49, 0xc0037a4d20, 0xc0002b0690, 0x0, 0x2dc6c0, 0x2710, ...) ``` By avoiding the participation key reload ( which isn't needed for this test ), I'm hoping to avoid the issue. ## Test Plan This is a test.
Configuration menu - View commit details
-
Copy full SHA for 6887d0e - Browse repository at this point
Copy the full SHA 6887d0eView commit details -
Added Participation Key Expiration Check (#2924)
## Summary Resolves #2738 Adds the following: - consensus.go: Adds the default MaxExpiredAccountsToProcess value for the new consensus protocol - block.go: Adds necessary block header entries - eval.go: Scans for expired accounts, modifies them to be offline and adds validation for this use case - eval_test.go: Basic unit tests - participationExpiration_test.go: Added e2e tests that verify that different consensus protocols behave differently ## Test Plan Unit test and e2e tests added
Configuration menu - View commit details
-
Copy full SHA for c59326f - Browse repository at this point
Copy the full SHA c59326fView commit details
Commits on Oct 8, 2021
-
ledger: preload resources argument in EvalForIndexer (#3019)
## Summary rebase Tolik's PR on master; this PR add the ability for the indexer to preload account data so that it would be used by the evaluator. ## Test Plan Existing unit tests updated.
Configuration menu - View commit details
-
Copy full SHA for ff8139a - Browse repository at this point
Copy the full SHA ff8139aView commit details -
Move accountdb schema migration to trackerdb.go (#2984)
## Summary * Moved code from **acctupdates.go** to **trackerdb.go**. * Extracted db creation and init from`accountsInitialize` to `trackerDBInitialize` * `reloadLedger` now calls `trackerDBInitialize` right after block db init * `reloadLedger` also has post-creation actions like vacuuming Limitations: 1. Tables creation still calls `accountsInit` for initial tables creation and inserting genesis accounts. 2. Migration code still have some business logic. ## Test Plan Use existing test suite
Configuration menu - View commit details
-
Copy full SHA for 32e131c - Browse repository at this point
Copy the full SHA 32e131cView commit details -
Increase machine size to large and use consistent parallelism for cir…
…cleci nightly testing. (#3016) For CircleCI testing, increase machine size from medium to large and set parallelism to 4.
Configuration menu - View commit details
-
Copy full SHA for 7357acf - Browse repository at this point
Copy the full SHA 7357acfView commit details -
Don't set dontReportFailures for Fail (#3018)
In testing.T, Error, Errorf, and Fail do not terminate the test. Error and Errorf call Fail. There will be another call to FailNow to terminate the test. (FailNow also calls Fail.) When `dontReportFailures` is set in Error, Errorf, and Fail, the test will not be terminated. Moreover, the subsequent call to FailNow will be ignored because of the set dontReportFailures flag. In this change, dontReportFailures will not be set for Error, Errorf, and Fail so that the subsequent FailNow will terminate the test.
Configuration menu - View commit details
-
Copy full SHA for e00cde0 - Browse repository at this point
Copy the full SHA e00cde0View commit details -
Increase machine size to large and use consistent parallelism for cir…
…cleci nightly testing. (#3016) For CircleCI testing, increase machine size from medium to large and set parallelism to 4.
Configuration menu - View commit details
-
Copy full SHA for 83740b4 - Browse repository at this point
Copy the full SHA 83740b4View commit details -
ledger: refactor evaluator into an internal package (#2983)
## Summary This PR reorganize the files inside the ledger package by move the evaluator related files into its own `internal` package. The files in the internal package cannot access the root ledger files, and therefore using the shared `ledgercore` as a place to share interfaces. ``` ledger/ ├── apply/ ├── internal/ ├── ledgercore/ └── testing/ ``` ## Test Plan use existing test, and update existing tests.
Configuration menu - View commit details
-
Copy full SHA for 239921a - Browse repository at this point
Copy the full SHA 239921aView commit details -
fix bug in rekey test. (#3026)
Summary This test has a special handling is case the protocol upgrade completes before we can validate that without an upgrade the rekey feature won't work. However, when that does happen, AccountA is already rekeyed, and would require a different handling. To avoid that while retaining the execution of the test, I've moved the second part to use a different set of accounts. Test Plan This is a test
Configuration menu - View commit details
-
Copy full SHA for 3c9e9e9 - Browse repository at this point
Copy the full SHA 3c9e9e9View commit details
Commits on Oct 9, 2021
-
## Summary This PR addresses a regression introduced in #2983. The culprit is that an interface might contain a nil pointer, which makes it insufficient to test the interface pointer itself. Fail cases: https://app.circleci.com/pipelines/github/algorand/go-algorand/2451/workflows/8807ced7-89ae-4b6b-96b0-1bc5bdf9d84c/jobs/27259/tests#failed-test-0 ## Test Plan Use existing unit testing. In particular TestCatchupOverGossip.
Configuration menu - View commit details
-
Copy full SHA for 0d5b66e - Browse repository at this point
Copy the full SHA 0d5b66eView commit details
Commits on Oct 11, 2021
-
testing: make the TestMultiThreaded run at a constant time (#3035)
## Summary The TestMultiThreaded was running too slow on Travis machines, causing it to fail due to deadlock detection false-positive. The change in this PR modify the execution time of the test, ensuring that it won't run for more than 5 second ( which should be enough for data racing detection testing ) ## Test Plan This is a test.
Configuration menu - View commit details
-
Copy full SHA for e490f05 - Browse repository at this point
Copy the full SHA e490f05View commit details -
txnsync: fix potential race during TestBasicCatchpointCatchup (#3033)
## Summary During fast catchup, we restart the transaction sync service very quickly. This can cause a network message being sent, and the response would be returned to the "restarted" txnsync. Since we don't want to disconnect the network connection itself ( which could have some messages enqueued ), the transaction sync would need to store the "returned" channel before sending the message. That would avoid the data race ( and safely ignore the incoming message ). ## Test Plan Use existing testing, and confirm against that.
Configuration menu - View commit details
-
Copy full SHA for 8568442 - Browse repository at this point
Copy the full SHA 8568442View commit details -
ledger: move StartEvaluator parameters into a parameters object (#3030)
## Summary move StartEvaluator parameters into an object. Given that most of the time the parameters are using a "default" state, it reduce the number of passed parameters, improving the caller readability. ## Test Plan Unit tests updated.
Configuration menu - View commit details
-
Copy full SHA for 4c45443 - Browse repository at this point
Copy the full SHA 4c45443View commit details -
Fix regression in TestReproducibleCatchpointLabels (#3037)
Fix the test TestReproducibleCatchpointLabels, by provide proper calculation of the account totals.
Configuration menu - View commit details
-
Copy full SHA for 6f96443 - Browse repository at this point
Copy the full SHA 6f96443View commit details -
Removing integration tests from travis steps (#3023)
Due to Travis not being able to handle our builds anymore, we are removing travis integration tests.
Configuration menu - View commit details
-
Copy full SHA for a516544 - Browse repository at this point
Copy the full SHA a516544View commit details
Commits on Oct 12, 2021
-
Adjust TenNodesDistributedMultiWallet.json to use smaller key dilutio…
…n values (#3041) ## Summary The e2e test `TestPartitionHalfOffline` was failing due to the deadlock detection failing while the old keys are being deleted. This change would reduce the key dilution, and should shorten the duration it takes to generate a new batch. ## Test Plan This is a test.
Configuration menu - View commit details
-
Copy full SHA for c4bbdf8 - Browse repository at this point
Copy the full SHA c4bbdf8View commit details -
testing: remove redundant checking from TestParticipationAccountsExpi…
Configuration menu - View commit details
-
Copy full SHA for e86c53f - Browse repository at this point
Copy the full SHA e86c53fView commit details -
handle is left open in importRootKeys (#3039)
## Summary The database handle is not closed in this code path. In normal situations, this passes unnoticed, since it will be closed once the test terminates. However, when running the test multiple times, the OS will complain about too many open files. ## Test Plan This is a test infrastructure fix.
Configuration menu - View commit details
-
Copy full SHA for da60399 - Browse repository at this point
Copy the full SHA da60399View commit details
Commits on Oct 13, 2021
-
Fix global-state-schema key name in REST API spec (#2972)
Fix global-state-schema key name in REST API spec
Configuration menu - View commit details
-
Copy full SHA for 83bcaaa - Browse repository at this point
Copy the full SHA 83bcaaaView commit details -
ledger: Implement LookupAgreement (#3046)
## Summary 1. Add a new `OnlineAccountData` data type 2. Implement `LookupAgreement` ## Test Plan Fixed existed tests: added `LookupAgreement` to mocked ledgers
Configuration menu - View commit details
-
Copy full SHA for a957519 - Browse repository at this point
Copy the full SHA a957519View commit details -
Use LookupAgreement AlgorandFullNode.VotingKeys() (#3050)
## Summary Use LookupAgreement in AlgorandFullNode.VotingKeys() Post #3046 fixes.
Configuration menu - View commit details
-
Copy full SHA for c4bfc26 - Browse repository at this point
Copy the full SHA c4bfc26View commit details -
Reorder round query and transaction sending. (#3049)
## Summary The test had a conceptual buggy pattern. It was using ```golang round, err = client.CurrentRound() ... _, err = client.BroadcastTransaction(signedTxn) ... _, err = client.WaitForRound(round + 3) ``` which is doomed to fail if the test process goes to sleep for a minute between the `client.CurrentRound()` call and the `client.BroadcastTransaction` call. The trivial solution is to reorder the calls so that ```golang _, err = client.BroadcastTransaction(signedTxn) ... round, err = client.CurrentRound() ... _, err = client.WaitForRound(round + 3) ``` ## Test Plan This is a test.
Configuration menu - View commit details
-
Copy full SHA for 3572e1f - Browse repository at this point
Copy the full SHA 3572e1fView commit details
Commits on Oct 14, 2021
-
testing: remove account balance checks (#3054)
Summary Adds additional resilience to participation expiration test TestParticipationAccountsExpirationFuture. Test Plan This is a test.
Configuration menu - View commit details
-
Copy full SHA for 44e85be - Browse repository at this point
Copy the full SHA 44e85beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 754276b - Browse repository at this point
Copy the full SHA 754276bView commit details -
Allow all trackers committing into DB (#3014)
## Summary Historically only `account updates` tracker was committing into DB. The PR changes this: 1. `dbRound` management and `commitSyncer` business moved to trackerRegistry. 2. `account updates` is used as a driver for committing tasks scheduling - by given `commttedRound` and `dbRound` it figures out offset in detlas for saving to the disk. This is basically old `au.committedUpTo` method`. 3. `commitRound` replaced by `prepareCommit` that returns commit and post commit callbacks 4. trackerRegistry has own `commitRound` that calls trackers' `prepareCommit` and commit/post commit procs if any. 5. `account updates` still have a cached dbRound to be used in Lookup methods. ## Test Plan It is refactoring, use existing tests
Configuration menu - View commit details
-
Copy full SHA for 507eb53 - Browse repository at this point
Copy the full SHA 507eb53View commit details -
Move deploy from TravisCI to CircleCI (#3075)
Our travisci keeps breaking for different reasons so we decided to move our deploy to circleci.
Configuration menu - View commit details
-
Copy full SHA for 5c7e273 - Browse repository at this point
Copy the full SHA 5c7e273View commit details -
Move deploy from TravisCI to CircleCI (#3075)
Our travisci keeps breaking for different reasons so we decided to move our deploy to circleci.
Configuration menu - View commit details
-
Copy full SHA for 1e87c71 - Browse repository at this point
Copy the full SHA 1e87c71View commit details -
ledger: remove duplicate testing of accounts totals (#3053)
## Summary This PR eliminate the `totalsNewRounds`, which perform the exact same calculation previously performed by the block evaluator. ## Test Plan - [x] Unit tests updates. - [x] Catchpoint label testing : starting a node catching up to 16,800,000 and the correct catchpoint label was observed on round 16,810,000.
Configuration menu - View commit details
-
Copy full SHA for 019571e - Browse repository at this point
Copy the full SHA 019571eView commit details -
Merge pull request #2995 from Algo-devops-service/relbeta3.1.0
go-algorand 3.1.0-beta
Configuration menu - View commit details
-
Copy full SHA for abd31a2 - Browse repository at this point
Copy the full SHA abd31a2View commit details
Commits on Oct 15, 2021
-
Fixing CircleCI deploy for Betanet and Stablenet (#3077)
Noticed our environment passing variable is not working as intended, implemented a different way of passing it.
Configuration menu - View commit details
-
Copy full SHA for ffb49ef - Browse repository at this point
Copy the full SHA ffb49efView commit details -
Fixing CircleCI deploy for Betanet and Stablenet (#3077)
Noticed our environment passing variable is not working as intended, implemented a different way of passing it.
Configuration menu - View commit details
-
Copy full SHA for 98d25e2 - Browse repository at this point
Copy the full SHA 98d25e2View commit details -
Configuration menu - View commit details
-
Copy full SHA for fd82cd9 - Browse repository at this point
Copy the full SHA fd82cd9View commit details -
Merge pull request #3079 from Algo-devops-service/relbeta3.1.0
Fixing CircleCI deploy for Betanet and Stablenet (#3077)
Configuration menu - View commit details
-
Copy full SHA for a4cfa1f - Browse repository at this point
Copy the full SHA a4cfa1fView commit details
Commits on Oct 16, 2021
-
Fix missing TX registration (#3080)
## Summary When a 2.1 (i.e. no txsync) client connects to a 3.0 relay (i.e. txsync), the relay needs to request the client to keep sending it a TX messages - otherwise, these transactions would not get propagated. The 2.1 and 3.0 above are network protocol versions, not a algod release version. ## Test Plan e2e test added.
Configuration menu - View commit details
-
Copy full SHA for b9c6032 - Browse repository at this point
Copy the full SHA b9c6032View commit details
Commits on Oct 18, 2021
-
changing circleci workflow name (#2887)
Fixing naming due to new way of displaying CircleCI workflow.
Configuration menu - View commit details
-
Copy full SHA for bcd77ee - Browse repository at this point
Copy the full SHA bcd77eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 78317e8 - Browse repository at this point
Copy the full SHA 78317e8View commit details -
Fix missing TX registration (#3080)
## Summary When a 2.1 (i.e. no txsync) client connects to a 3.0 relay (i.e. txsync), the relay needs to request the client to keep sending it a TX messages - otherwise, these transactions would not get propagated. The 2.1 and 3.0 above are network protocol versions, not a algod release version. ## Test Plan e2e test added.
Configuration menu - View commit details
-
Copy full SHA for d286fd2 - Browse repository at this point
Copy the full SHA d286fd2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9d0cedb - Browse repository at this point
Copy the full SHA 9d0cedbView commit details -
Merge pull request #3090 from algorand/rel/beta-3.1.1
3.1.1 hotfix
Configuration menu - View commit details
-
Copy full SHA for dbd0ec9 - Browse repository at this point
Copy the full SHA dbd0ec9View commit details
Commits on Oct 19, 2021
-
catchup: avoid requesting blocks that aren't needed by the ledger (#3089
Configuration menu - View commit details
-
Copy full SHA for f0017f3 - Browse repository at this point
Copy the full SHA f0017f3View commit details -
Optimize circleci machine sizes and parallelism (#3095)
Since we increased a lot of things last week to pass beta tests quickly, we needed to go back and update machine sizes and parallelism for all but integration tests.
Configuration menu - View commit details
-
Copy full SHA for bd4cd9a - Browse repository at this point
Copy the full SHA bd4cd9aView commit details -
network: add initial support for latency tracking (#3028)
## Summary This PR adds the node ( both client and server ), the ability to measure the time it takes to establish an outgoing connection ( excluding the TCP connection time ). This duration is captured as the initial latency, which would need to get updated via a pingpong style logic. ## Test Plan - [x] Extend existing unit tests - [x] mainnet-model testing is needed as well to confirm correctness
Configuration menu - View commit details
-
Copy full SHA for 48d4075 - Browse repository at this point
Copy the full SHA 48d4075View commit details
Commits on Oct 20, 2021
-
txnsync: implement missing bridge between txnsync and classic transac…
…tion messages (#3102) Summary This PR adds the missing bridge between the txnsync and the classic transaction relaying: when a transaction message arrive and being added to the transaction pool, we need to attempt to relay these messages right away using the classic transaction messages. That would allow relays to be compatible with both 2.1 and 3.0 nodes. Test Plan e2e test was added.
Configuration menu - View commit details
-
Copy full SHA for e853e2e - Browse repository at this point
Copy the full SHA e853e2eView commit details -
txnsync: implement missing bridge between txnsync and classic transac…
…tion messages (#3102) Summary This PR adds the missing bridge between the txnsync and the classic transaction relaying: when a transaction message arrive and being added to the transaction pool, we need to attempt to relay these messages right away using the classic transaction messages. That would allow relays to be compatible with both 2.1 and 3.0 nodes. Test Plan e2e test was added.
Configuration menu - View commit details
-
Copy full SHA for facfb03 - Browse repository at this point
Copy the full SHA facfb03View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2eb56bb - Browse repository at this point
Copy the full SHA 2eb56bbView commit details -
Refactoring ABI encoding feature (#3055)
Removed data/abi/abi_value.go Encode/Decode method take golang values, the behavior should be based on ABI type schemes
Configuration menu - View commit details
-
Copy full SHA for 1e5603c - Browse repository at this point
Copy the full SHA 1e5603cView commit details -
Increase wait time for the transaction to be included. (#3098)
## Summary This change wait for a given broadcasted transaction to be included instead of expecting it to be included after a predetermined number of rounds. This would increase the testing platform flexibility in case we're testing on slow machines. ## Test Plan This is a test.
Configuration menu - View commit details
-
Copy full SHA for c2054e5 - Browse repository at this point
Copy the full SHA c2054e5View commit details -
Merge pull request #3103 from algorand/rel/beta-3.1.2
go-algorand v3.1.2-beta
Configuration menu - View commit details
-
Copy full SHA for 53cf013 - Browse repository at this point
Copy the full SHA 53cf013View commit details
Commits on Oct 21, 2021
-
tealdbg: use associated group index instead of global (#3111)
setting group index to be the one associated with the run
Configuration menu - View commit details
-
Copy full SHA for 38b08a0 - Browse repository at this point
Copy the full SHA 38b08a0View commit details -
skip fields that cant be displayed anyway (#3119)
In tealdbg, the txn obj has a number of fields that are only available after the transaction has been evaluated in ApplyData. At the moment we show "Unable to obtain effects from top-level transactions" from https://github.com/algorand/go-algorand/blob/master/data/transactions/logic/eval.go#L1939 . This should be hidden for now.
Configuration menu - View commit details
-
Copy full SHA for 473fa37 - Browse repository at this point
Copy the full SHA 473fa37View commit details -
Configuration menu - View commit details
-
Copy full SHA for 57a3306 - Browse repository at this point
Copy the full SHA 57a3306View commit details -
Add err to solicitedAsyncTxHandler.loop log message (#3123)
## Summary I noticed log messages like this: ``` {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.220089Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.220226Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.220300Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228731Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228828Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228893Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228946Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.229012Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.229080Z"} ``` ## Test Plan No test changes.
Configuration menu - View commit details
-
Copy full SHA for f17f8f6 - Browse repository at this point
Copy the full SHA f17f8f6View commit details -
Make fields in ledger.Creatable public. (#3125)
Summary Indexer needs to be able to set those fields.
Configuration menu - View commit details
-
Copy full SHA for 28e9eca - Browse repository at this point
Copy the full SHA 28e9ecaView commit details -
Enable totals calculation in eval for indexer. (#3124)
Enable totals calculation in eval for indexer
Configuration menu - View commit details
-
Copy full SHA for 17429d5 - Browse repository at this point
Copy the full SHA 17429d5View commit details
Commits on Oct 22, 2021
-
update the websocket library. (#3131)
## Summary The previous web socket version was not flushing the write buffer when writing a Close control message. As a result, we ended up disconnection the connection on one side correctly, while having it in a zombie state on the other side. ## Test Plan Use existing tests. The `TestSlowPeerDisconnection` was already observing the issue being resolved.
Configuration menu - View commit details
-
Copy full SHA for 2c79cfd - Browse repository at this point
Copy the full SHA 2c79cfdView commit details
Commits on Oct 24, 2021
-
Improve Bandwidth Estimation in Txnsync (#3096)
## Summary Improve the bandwidth estimation within the transaction sync by having the estimation account for latency, transaction compression time, and time spent waiting in the incoming queue. ## Test Plan Wrote unit tests for correctness, ran network on mainnet model and observed measured bandwidths. Before the bandwidth would converge to the minimum over time as well have erratic inaccuracies. Now the numbers look much more in range, at most a factor of 2 off.
nicholasguoalgorand committedOct 24, 2021 Configuration menu - View commit details
-
Copy full SHA for b93ad64 - Browse repository at this point
Copy the full SHA b93ad64View commit details
Commits on Oct 25, 2021
-
txnsync: fix potential race during TestBasicCatchpointCatchup (#3033)
## Summary During fast catchup, we restart the transaction sync service very quickly. This can cause a network message being sent, and the response would be returned to the "restarted" txnsync. Since we don't want to disconnect the network connection itself ( which could have some messages enqueued ), the transaction sync would need to store the "returned" channel before sending the message. That would avoid the data race ( and safely ignore the incoming message ). ## Test Plan Use existing testing, and confirm against that.
Configuration menu - View commit details
-
Copy full SHA for ff71d92 - Browse repository at this point
Copy the full SHA ff71d92View commit details -
network: add initial support for latency tracking (#3028)
## Summary This PR adds the node ( both client and server ), the ability to measure the time it takes to establish an outgoing connection ( excluding the TCP connection time ). This duration is captured as the initial latency, which would need to get updated via a pingpong style logic. ## Test Plan - [x] Extend existing unit tests - [x] mainnet-model testing is needed as well to confirm correctness
Configuration menu - View commit details
-
Copy full SHA for 83031f6 - Browse repository at this point
Copy the full SHA 83031f6View commit details -
Add err to solicitedAsyncTxHandler.loop log message (#3123)
## Summary I noticed log messages like this: ``` {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.220089Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.220226Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.220300Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228731Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228828Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228893Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.228946Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.229012Z"} {"file":"txHandler.go","function":"github.com/algorand/go-algorand/data.(*solicitedAsyncTxHandler).loop","level":"info","line":541,"msg":"solicitedAsyncTxHandler was unable to relay transaction message : %!v(MISSING)","time":"2021-10-20T23:18:40.229080Z"} ``` ## Test Plan No test changes.
Configuration menu - View commit details
-
Copy full SHA for f65e269 - Browse repository at this point
Copy the full SHA f65e269View commit details -
update the websocket library. (#3131)
## Summary The previous web socket version was not flushing the write buffer when writing a Close control message. As a result, we ended up disconnection the connection on one side correctly, while having it in a zombie state on the other side. ## Test Plan Use existing tests. The `TestSlowPeerDisconnection` was already observing the issue being resolved.
Configuration menu - View commit details
-
Copy full SHA for 5fc9a5e - Browse repository at this point
Copy the full SHA 5fc9a5eView commit details -
Improve Bandwidth Estimation in Txnsync (#3096)
## Summary Improve the bandwidth estimation within the transaction sync by having the estimation account for latency, transaction compression time, and time spent waiting in the incoming queue. ## Test Plan Wrote unit tests for correctness, ran network on mainnet model and observed measured bandwidths. Before the bandwidth would converge to the minimum over time as well have erratic inaccuracies. Now the numbers look much more in range, at most a factor of 2 off.
Configuration menu - View commit details
-
Copy full SHA for 05673ad - Browse repository at this point
Copy the full SHA 05673adView commit details -
catchup: ignore benign evaluator failures (#3135)
## Summary The catchup was occasionally reporting ``` (1): fetchAndWrite(13932148): ledger write failed: block evaluation for round 13932148 requires sequential evaluation while the latest round is 13932148 ``` This issue indicates that the catchup was attempting to validate a block which is not the latest+1, but rather newer. In this case, we can safely ignore this error, and skip applying this block, since the block was already added to the ledger. ## Test Plan Tested manually.
Configuration menu - View commit details
-
Copy full SHA for 72a1717 - Browse repository at this point
Copy the full SHA 72a1717View commit details -
Trim the whitespaces before/after each line of TEAL code (#3128)
Configuration menu - View commit details
-
Copy full SHA for 9c3f403 - Browse repository at this point
Copy the full SHA 9c3f403View commit details -
txnsync: delete-able incoming message queue (#3126)
## Summary Running betanet, we've seen errors such as ``` unable to enqueue incoming message into peer incoming message backlog. disconnecting from peer. ``` as well as multiple ``` Peer 162.202.32.72:56543 disconnected: SlowConnection ``` The goal of this PR is to remove from the pending incoming message queue entries that are associated with network peers that have been disconnected ( by the network package ), or have been scheduled for disconnection ( by the transaction synch package ). Removing these would increase the "available" space in the incoming message queue and would prevent redundant disconnections. ## Test Plan - [x] unit tests updated. - [x] ran s1 network with and without load, successfully.
Configuration menu - View commit details
-
Copy full SHA for ca3e877 - Browse repository at this point
Copy the full SHA ca3e877View commit details -
txnsync: delete-able incoming message queue (#3126)
## Summary Running betanet, we've seen errors such as ``` unable to enqueue incoming message into peer incoming message backlog. disconnecting from peer. ``` as well as multiple ``` Peer 162.202.32.72:56543 disconnected: SlowConnection ``` The goal of this PR is to remove from the pending incoming message queue entries that are associated with network peers that have been disconnected ( by the network package ), or have been scheduled for disconnection ( by the transaction synch package ). Removing these would increase the "available" space in the incoming message queue and would prevent redundant disconnections. ## Test Plan - [x] unit tests updated. - [x] ran s1 network with and without load, successfully.
Configuration menu - View commit details
-
Copy full SHA for cc801ba - Browse repository at this point
Copy the full SHA cc801baView commit details -
catchup: ignore benign evaluator failures (#3135)
## Summary The catchup was occasionally reporting ``` (1): fetchAndWrite(13932148): ledger write failed: block evaluation for round 13932148 requires sequential evaluation while the latest round is 13932148 ``` This issue indicates that the catchup was attempting to validate a block which is not the latest+1, but rather newer. In this case, we can safely ignore this error, and skip applying this block, since the block was already added to the ledger. ## Test Plan Tested manually.
Configuration menu - View commit details
-
Copy full SHA for b79856f - Browse repository at this point
Copy the full SHA b79856fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 615fee2 - Browse repository at this point
Copy the full SHA 615fee2View commit details
Commits on Oct 26, 2021
-
Merge pull request #3139 from algorand/rel/beta-3.1.3
go-algorand v3.1.3-beta
Configuration menu - View commit details
-
Copy full SHA for 378816d - Browse repository at this point
Copy the full SHA 378816dView commit details -
Allow getting versions for any package. (#2935)
## Summary Add an option to support version checking for arbitrary packages. This would allow us to deploy indexer releases at `algorand-releases/<channel>/indexer-*` ## Test Plan Ran the command and see the correct regex: ``` ~$ updater ver check -c nightly -p indexer Checking for files matching: 'channel/nightly/indexer_nightly_linux-amd64_' in bucket algorand-releases no updates found for channel 'nightly' ```
Configuration menu - View commit details
-
Copy full SHA for 9bb4154 - Browse repository at this point
Copy the full SHA 9bb4154View commit details -
Configuration menu - View commit details
-
Copy full SHA for e2d6349 - Browse repository at this point
Copy the full SHA e2d6349View commit details
Commits on Oct 27, 2021
-
ledger: refactor ledger internal tests (#3149)
Summary Refactor internal ledger evaluator testing to use the real ledger instead of using a dummy ledger. In order to do this, I moved the related tests into an "internal_test" package. That allowed me to import both "ledger/internal" as well as "ledger", and conduct the test against a real ledger. Test Plan These are tests.
Configuration menu - View commit details
-
Copy full SHA for 729e597 - Browse repository at this point
Copy the full SHA 729e597View commit details
Commits on Oct 28, 2021
-
update sys to resolve go1.17 build error (#3157)
Summary @barnjamin mentioned in #2899 that labstack/gommon/issues/46 has a similar issue. Should be fixed by up version of sys. Closing #2899.
Configuration menu - View commit details
-
Copy full SHA for 024eddb - Browse repository at this point
Copy the full SHA 024eddbView commit details -
Make heapwatch.py port configurable (#3143)
This makes it possible to configure which port algod is running on when using heapWatch.py
Configuration menu - View commit details
-
Copy full SHA for c56ecc2 - Browse repository at this point
Copy the full SHA c56ecc2View commit details -
Reverse the network protocols ordering to de-prioritize the txnsync u…
…tilization. (#3153) ## Summary In order to reduce risk on the migration to the new transaction sync, the network protocols order was flipped. Nodes would default to use the old transaction propagation, and would use the new transaction propagation only when configured via the config.json "NetworkProtocol" flag. ## Test Plan Need to be tested on betanet.
Configuration menu - View commit details
-
Copy full SHA for 246ac13 - Browse repository at this point
Copy the full SHA 246ac13View commit details -
Removing all but windows builds from Travis (#3154)
We moved everything but windows to CircleCI, this is just cleaning up.
Configuration menu - View commit details
-
Copy full SHA for 465c191 - Browse repository at this point
Copy the full SHA 465c191View commit details
Commits on Oct 29, 2021
-
Add c5d.4xlarge and c5d.18xlarge us-east-2 to hosttemplates.json (#3160)
Add c5d.4xlarge and c5d.18xlarge us-east-2 to hosttemplates.json so that our team can use them moving forward for performance tests. For performance testing, we've needed to add these to each codebase we're working with to use these machines. This is part of our effort to automate performance testing internally.
Configuration menu - View commit details
-
Copy full SHA for 175c1f4 - Browse repository at this point
Copy the full SHA 175c1f4View commit details -
Move Local structure definition to localTemplate (#3161)
## Summary Move Local structure definition to localTemplate, so that changes to localTemplate are more obvious to be a change of template than a change of data. ## Test Plan Tested manually.
Configuration menu - View commit details
-
Copy full SHA for 9ca31f8 - Browse repository at this point
Copy the full SHA 9ca31f8View commit details -
ledger: refactor maxPaysetHint -> avarageEncodedTxnSizeHint (#3162)
## Summary This refactoring would eliminate the need to change the maxPaysetHint while we modify the block size. ## Test Plan Use existing tests.
Configuration menu - View commit details
-
Copy full SHA for b8ac4ba - Browse repository at this point
Copy the full SHA b8ac4baView commit details -
ledger: do final validation in
endOfBlock()
(#3132)## Summary 1. It doesn't make sense to calculate new totals in `finalValidation()` 2. `endOfBlock()` already does some validation Moving the content of `finalValidation()` to `endOfBlock()` makes things more reasonable.
Configuration menu - View commit details
-
Copy full SHA for 5eb09af - Browse repository at this point
Copy the full SHA 5eb09afView commit details -
txnsync: Use dynamic maxEncodedTransactionGroups (#3168)
## Summary Change constants in the txnsync around message size limits into variables based on maxTxPoolSize. This will allow for support of larger message sizes when dealing with larger load. ## Test Plan Reran existing tests
nicholasguoalgorand committedOct 29, 2021 Configuration menu - View commit details
-
Copy full SHA for 21c752e - Browse repository at this point
Copy the full SHA 21c752eView commit details
Commits on Oct 30, 2021
-
Add unit test to avoid new
string
fields (#3101)* Add unit test to check for string fields * Fix seen set and add exceptions for state deltas * Also check AccountData * Minor rename * Add license * Accidentally pushed to origin, need new hash
Configuration menu - View commit details
-
Copy full SHA for 385afd5 - Browse repository at this point
Copy the full SHA 385afd5View commit details
Commits on Nov 1, 2021
-
make proposal assembly time configurable (#3165)
## Summary This PR is doing the following: 1. Moves the proposal deadline computation outside of the agreement package and onto the node package. The agreement wasn't doing anything with the deadline anyway. 2. Make the proposal deadline be configured using a configuration parameter rather then a global hard-coded value in the config package. ## Test Plan Existing unit test provides sufficient coverage for this change.
Configuration menu - View commit details
-
Copy full SHA for 168cfe5 - Browse repository at this point
Copy the full SHA 168cfe5View commit details
Commits on Nov 3, 2021
-
Fix panic on closing nil db (#3175)
## Summary FillDBWithParticipationKeys will return empty PersistedParticipation when lastValid is less than firstValid. When this happens, newPart will not have partdb in newPart.Store, instead, will have an empty object. Calling Close on the empty object will call close on nil Accessor pointer and panic. This change avoids using the returned object with non-nil error, and properly closes the db with the valid object. ## Test Plan Added test to verify the proper handling of the different errors returned from FillDBWithParticipationKeys and handled by GenParticipationKeysTo.
Configuration menu - View commit details
-
Copy full SHA for 009b798 - Browse repository at this point
Copy the full SHA 009b798View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8ff58cb - Browse repository at this point
Copy the full SHA 8ff58cbView commit details -
Fix typo in batchverifier.go (#3176)
fix typo: "on" -> "one" in ErrBatchVerificationFailed
Configuration menu - View commit details
-
Copy full SHA for 3a6238d - Browse repository at this point
Copy the full SHA 3a6238dView commit details -
## Summary This PR rolls back the txsync, retaining only the config file changes
Configuration menu - View commit details
-
Copy full SHA for e10fe1c - Browse repository at this point
Copy the full SHA e10fe1cView commit details -
roundCowBase: use lookup() instead of going to ledger directly. (#3173)
## Summary Going to ledger directly prevents caching of accounts. I'm looking into poor indexer import performance on testnet at rounds > 17M, and I noticed that one account is looked up a lot of times in same round.
Configuration menu - View commit details
-
Copy full SHA for 9b39c66 - Browse repository at this point
Copy the full SHA 9b39c66View commit details
Commits on Nov 4, 2021
-
ledger: create catchpoint tracker (#3085)
## Summary Extract catchpoint logic out of the accounts update tracker. ## Test Plan Refactor existing unit tests.
Configuration menu - View commit details
-
Copy full SHA for f72764b - Browse repository at this point
Copy the full SHA f72764bView commit details
Commits on Nov 6, 2021
-
Report assembly error strings for compile API endpoint (#3190)
* Add error strings to v2 TEAL compile endpoint * Move number of errors to end so it is consistent with goal clerk compile * Refactor ReportProblems() to take io.Writer * Don't report number of errors on the API call
Configuration menu - View commit details
-
Copy full SHA for 63e16ed - Browse repository at this point
Copy the full SHA 63e16edView commit details
Commits on Nov 9, 2021
-
Add ABI support to goal (#3088)
* add abi encoding * accord with go-algorand code format * minor modification * add partition test * resolve review, need more testcase rewrite * move from cmd/goal to data, resolve review * rewrite is-dynamic, dynamic array * update dynamic array 0 element support, test needed * minor * minor * minor * add more testcase for abi encode/decode * update comments in encoding test * minor * attempt to split abi.go into 2 files * separate abi files to smaller files * resolve reviews, work on random gen tuple value encode/decode * add random tuple test * remove math-rand, use crypto-rand * minor * minor * some change requested from community * fix for 1 corner case * resolve review comments * resolve review comments * minor * minor * update encode slot capacity * minor * resolve reviews * minor update on bool bytelen calculate * update encode/decode from types * random test remain to be modified * testing variable renaming, encode int support (u)int types * update test scripts and remove value struct * follow golint * partly resolving comments * whoops uint encoding update * update int decode to primitive types method * go fmt * update parseAppArg to accept abi input (attempt) * need to check cmdline arg validity * update unmarshal from JSON in ABI type * unmarshal from json for ABI type * update ABI type unmarshal values from JSON bytes * update ABI methods for string/array/address * update unmarshal from JSON in abi * fix for error in ufixed json unmarshal * fix * update on method sub command * minor * probably better separate abi json to a single file * i just want to add a required flag plz... * minor fix on interface from json * consider some rough test cases * minor * add partition test * update static uint test * update marshal/unmarshal json methods for abi * marshal byte array to b64 string * abi json polish * update golangci lint rules * revert golangci config * update method impl * update method signature return type check * minor * copy-paste code from call app cmd * minor * add method flag to txn flags * minor * update changes * minor * moving helper functions to abi * update comments * update method app call * resolve part in abi impl * add oncomplete support * minor * try to use stringarrayvar * minor * update goal return log handing process * go simple * add a line of e2e test for now * update * minor * minor * minor * go fmt * approval/clear prog nil * discard all changes to e2d-app-cross-round, going to write separately e2e test * update e2d tests * check ret valu * use constant * resolve review partly * resolve review on code reformatting * resolve review on code reformatting, use code chunk for datadir and client * go fmt * export tuple type maker * update comments in e2e test * update filter empty string * resolve issues with JSON abi * minor
Configuration menu - View commit details
-
Copy full SHA for d3bbe62 - Browse repository at this point
Copy the full SHA d3bbe62View commit details
Commits on Nov 13, 2021
-
Clarify get_ex opcode docs (#3208)
* adding missing to opcode docs for external gets * update TEAL_opcodes.md
Configuration menu - View commit details
-
Copy full SHA for 3937401 - Browse repository at this point
Copy the full SHA 3937401View commit details
Commits on Nov 15, 2021
-
Participation Key Interface (#3164)
## Summary * new `ParticipationRegistry` interface designed to manage keys and collect usage metrics. * new REST endpoints for interacting with keys. * improved `goal account partkeyinfo` and `goal account listpartkeys` formatting. ## Test Plan New unit and integration tests.
Configuration menu - View commit details
-
Copy full SHA for 387f6a6 - Browse repository at this point
Copy the full SHA 387f6a6View commit details -
use large VMs for integration tests (#3201)
Integration tests (specifically, e2e-go tests) seem to be having resource issues lately, so this returns integration tests to using large instances (4 cores, ~16GB RAM) after they were downsized to medium (2 cores ~8GB RAM) in #3095. Nightly integration tests are already using large VMs.
Configuration menu - View commit details
-
Copy full SHA for 8441d91 - Browse repository at this point
Copy the full SHA 8441d91View commit details
Commits on Nov 16, 2021
-
ledger refactoring: fix catchpoint tracker (#3214)
## Summary When implementing the catchpoint tracker, I missed the re-initilization location for some of the local variables. This would generate incorrect catchpoint labels after a node completes a fast-catchup. #3085 ## Test Plan - [x] Add unit tests - [x] Perform manual testing
Configuration menu - View commit details
-
Copy full SHA for eea0a75 - Browse repository at this point
Copy the full SHA eea0a75View commit details
Commits on Nov 17, 2021
-
update go mod/sum to include updated algorand/websocket (#3221)
## Summary This PR updates the websocket library to version 1.4.4, which includes a fix for deadlocked writers.
Configuration menu - View commit details
-
Copy full SHA for e44bdd6 - Browse repository at this point
Copy the full SHA e44bdd6View commit details -
agreement: handle pseudonode enqueueing failures (#2741)
## Summary This PR addresses two separate issues in the `pseudonodeNode` implementation: 1. `pseudonodeVotesTask.execute` and `pseudonodeProposalsTask.execute ` do not handle vote verification enqueueing failures ( to the execution pool ). This could lead the the pseudonode processing go-routine being stuck. 2. The `pseudonodeVotesTask.execute` could block forever in case the output channel is not being read from. ## Trigger This issue was detected by the telemetry: ``` ({num-occurances}): {telemetry error string} (67): pseudonode.MakeVotes call failed(attest) pseudonode input channel is full ``` ## Test Plan Few unit tests added. More to come.
Configuration menu - View commit details
-
Copy full SHA for 38329e1 - Browse repository at this point
Copy the full SHA 38329e1View commit details
Commits on Nov 18, 2021
-
goal abi method outfile checking (#3204)
Check if the outFilename argument is passed and write to the path specified as other commands
Configuration menu - View commit details
-
Copy full SHA for 83ca8ec - Browse repository at this point
Copy the full SHA 83ca8ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0d7822 - Browse repository at this point
Copy the full SHA c0d7822View commit details -
Merge pull request #3230 from algorand/update-master-relbeta3.1.3
Re-merge go-algorand 3.1.3-beta
Configuration menu - View commit details
-
Copy full SHA for 4634e98 - Browse repository at this point
Copy the full SHA 4634e98View commit details -
Configuration menu - View commit details
-
Copy full SHA for 32d3f3d - Browse repository at this point
Copy the full SHA 32d3f3dView commit details
Commits on Nov 19, 2021
-
Configuration menu - View commit details
-
Copy full SHA for 9905421 - Browse repository at this point
Copy the full SHA 9905421View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0b0f97b - Browse repository at this point
Copy the full SHA 0b0f97bView commit details
Commits on Nov 22, 2021
-
Support transaction arguments for
goal app method
(#3233)* Implement transactions as arguments * Fix indexing and dryrun issue * Add docstring * Satisfy review dog * Fix pointer issue * Fix group command * Rename e2e test * Fix filename variable * Add e2e test * Use tab
Configuration menu - View commit details
-
Copy full SHA for 116c06e - Browse repository at this point
Copy the full SHA 116c06eView commit details -
CI: use libboost-math-dev instead of libboost-all-dev (#3223)
## Summary Small change: libboost-math-dev requires just 4 packages to install, while libboost-all-dev requires > 100. Only Debian/Ubuntu distributions provide fine-grained boost packages like this, but should shave a little time off the CI builds. (Our only boost include is boost/math/distributions/binomial.hpp.) ## Test Plan Builds should pass as before. Now that we are no longer using Travis for Linux builds, the side effect of libboost-all-dev installing make and other missing build tools on Travis encountered in #2717 is no longer a concern.
Configuration menu - View commit details
-
Copy full SHA for 9807eab - Browse repository at this point
Copy the full SHA 9807eabView commit details
Commits on Nov 23, 2021
-
testing: fixes to rest-participation-key e2e test (#3238)
## Summary - Test to make sure RES has the right input before counting line numbers for result size. - Rest RES to empty so that the same output is not recycled in case of an error. - exit 1 in case of an error - Reduce LAST_ROUND from 1200000 to 120 - "Get List of Keys" before getting NUM_IDS_3 otherwise it will recycle old RES value.
Configuration menu - View commit details
-
Copy full SHA for 6cb3a52 - Browse repository at this point
Copy the full SHA 6cb3a52View commit details -
testing: interactive mode for e2e testing (#3227)
## Summary Some e2e tests require a python environment for testing. Unfortunately, setting up that environment adequately similar to the testing environment may not be trivial. This change introduces an interactive mode to the e2e.sh script which stops at the point of running the tests, and allows the user to run the tests from the same testing environment. ## Test Plan No tests needed. Tested the script locally.
Configuration menu - View commit details
-
Copy full SHA for 52b528b - Browse repository at this point
Copy the full SHA 52b528bView commit details -
Merge pull request #3231 from Algo-devops-service/relbeta3.2.0
go-algorand 3.2.0-beta
Configuration menu - View commit details
-
Copy full SHA for 8aa0728 - Browse repository at this point
Copy the full SHA 8aa0728View commit details
Commits on Nov 29, 2021
-
Make dev-mode tests less flaky. (#3252)
## Summary Fix a couple flaws in the new go-e2e tests built ontop of DevMode: * Shutdown the fixture when finished. * Don't run in parallel. * Longer delays / better algorithms to wait for data flushing to complete. * Check for "out of order" keys. ## Test Plan N/A, this is a test.
Configuration menu - View commit details
-
Copy full SHA for 597fc63 - Browse repository at this point
Copy the full SHA 597fc63View commit details -
adding libtool to ubuntu deps (#3251)
## Summary The sandbox is not building with dev config using master branch algorand/sandbox#85, complains about libtool not being installed Guessing from this change #3223 Adding libtool to UBUNTU_DEPS in install scripts ## Test Plan Set config in sandbox to my branch `sandbox up dev` It built
Configuration menu - View commit details
-
Copy full SHA for 5339cf0 - Browse repository at this point
Copy the full SHA 5339cf0View commit details
Commits on Nov 30, 2021
-
Fix error shadowing in Eval (#3258)
## Summary Error from account preloading was shadowed by returning a wrong err variable. This caused subsequent problems in account updates and masked the original failure. ## Test Plan Use existing tests
Configuration menu - View commit details
-
Copy full SHA for 715f511 - Browse repository at this point
Copy the full SHA 715f511View commit details -
## Summary This test doesn't work properly, disable it until #3255 addresses any underlying problems.
Configuration menu - View commit details
-
Copy full SHA for 54db1c7 - Browse repository at this point
Copy the full SHA 54db1c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e34eba - Browse repository at this point
Copy the full SHA 4e34ebaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 305d7ab - Browse repository at this point
Copy the full SHA 305d7abView commit details
Commits on Dec 2, 2021
-
Merge pull request #3260 from Algo-devops-service/relbeta3.2.1
go-algorand 3.2.1-beta
Configuration menu - View commit details
-
Copy full SHA for 2baf39b - Browse repository at this point
Copy the full SHA 2baf39bView commit details