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.17.0-stable Release PR #5633

Merged
merged 114 commits into from
Aug 4, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
114 commits
Select commit Hold shift + click to select a range
8d73f00
test: skip flaky test `TestVotersReloadFromDiskPassRecoveryPeriod` (#…
ahangsu May 31, 2023
4106d22
AVM: Increase coverage by deleting a dead function and adding limit t…
jannotti May 31, 2023
25eb57c
Testing: Get rapid into the codebase (#5437)
jannotti Jun 1, 2023
6e245e7
lint: enable govet shadow linter and resolve linter warnings (#5261)
cce Jun 1, 2023
bad81ee
Algod: Simulation PC exposure for App approval/clear-state transactio…
ahangsu Jun 1, 2023
fd946dd
tools: txn replayer (#5420)
algorandskiy Jun 2, 2023
21dd74a
Algod: Add README file to state proof package (#5386)
id-ms Jun 2, 2023
76942c4
kv: add StorageEngine config
icorderi Jun 2, 2023
e249905
build: fix shadow linter in debug tools (#5442)
algorandskiy Jun 2, 2023
eac2c4f
Bookkeeping: improve block documentation since no-low-resources (#5383)
bbroder-algo Jun 2, 2023
3cbb422
config: make Tx dedupe cache maxSize configurable (#5419)
iansuvak Jun 2, 2023
7d8525e
cleanup: remove redundant method LookupAccountDataByAddress (#5216)
icorderi Jun 2, 2023
f66a404
sortition: use external sortition package (#5429)
cce Jun 2, 2023
490fd3b
AVM: Some error cleanup, and added coverage (#5441)
jannotti Jun 2, 2023
45cf9ab
lint: enable staticcheck for test code and fix issues (#5401)
cce Jun 3, 2023
47dec14
config: let go-generate to produce config-vXX.json files (#5446)
algorandskiy Jun 3, 2023
5faa4d0
typo: Fix typo in blockService_test.go (#5448)
eltociear Jun 3, 2023
913478a
block rpc: Memory counter for http block requests (#5428)
algonautshant Jun 5, 2023
4b70342
tools: EvalDelta and ConsensusParams x-repo type checks (#5381)
tzaffi Jun 5, 2023
1994341
api: Fix errFailedRetrievingStateDelta response. (#5452)
winder Jun 5, 2023
6b712a1
CI: don't use deprecated set-output in github actions (#5453)
tzaffi Jun 6, 2023
1230e9a
tools: bugfix block-generator to handle conduit's Init block requests…
tzaffi Jun 7, 2023
9f8cc8d
Algod: Leverage 2 SRV record providers for resolving relay addresses …
gmalouf Jun 7, 2023
3fbc4b6
netgoal: fix large db generation (#5445)
AlgoAxel Jun 7, 2023
78b0a81
build: remove boost dependency and internal sortition package (#5459)
cce Jun 8, 2023
fd60def
build: update falcon to v0.1.0 for new CFLAGS (#5460)
cce Jun 8, 2023
d5593a4
network: peer selector expansion and PeersPhonebookArchivalNodes (#5385)
algonautshant Jun 8, 2023
5ff0c22
tools: prepare block-generator for configuring apps (#5443)
tzaffi Jun 9, 2023
8ab4aad
genesis: add GenesisAccountData type for use in GenesisAllocation (#5…
cce Jun 13, 2023
9a644f6
AVM: proper cross product check for app put and del (#5467)
jannotti Jun 14, 2023
7b69c1b
flake: TestLedgerContinuesOnVotersCallbackFailure (#5454)
tzaffi Jun 14, 2023
79697d5
metrics: Add LedgerDBRound gauge (#5456)
cce Jun 14, 2023
9aee021
Build: Golang 1.20 upgrade. (#5462)
gmalouf Jun 15, 2023
4d6e50d
tools: block-generator applications. Part 1: create (#5450)
tzaffi Jun 15, 2023
96c9845
cmd/updater: add install directory to logging (#5466)
bbroder-algo Jun 15, 2023
05f1c72
encoding: Update go-codec version. (#5471)
winder Jun 16, 2023
2eb239b
Chore: Use strings.Cut for clarity (#5474)
jannotti Jun 16, 2023
07f9431
network: improve MsgOfInterest message handling (#5476)
cce Jun 16, 2023
ad03111
ledger: refactor store module interfaces before kv impl merge (#5451)
icorderi Jun 16, 2023
ae02370
tools: replace upload_metrics (#5470)
shiqizng Jun 16, 2023
b26c355
Merge remote-tracking branch 'origin/rel/stable' into relstable3.16.2…
Algo-devops-service Jun 20, 2023
9d425e3
Bump Version, Remove buildnumber.dat and genesistimestamp.dat files.
Algo-devops-service Jun 20, 2023
f83a656
network: discard unrequested or stale block messages (#5431)
iansuvak Jun 20, 2023
0824e4a
Build: Disable goexperiments in our builds due to issue present in Go…
gmalouf Jun 21, 2023
5f496cf
cleanup: remove indexer v1 from codebase (#5477)
gmalouf Jun 21, 2023
5d65abf
Merge pull request #5482 from Algo-devops-service/relstable3.16.2-rem…
algojohnlee Jun 21, 2023
b06de44
Build: Split nightly job into its own workflow. Remove ARM64 platform…
gmalouf Jun 21, 2023
227df93
api: Disable body limit middleware for admin endpoints. (#5486)
winder Jun 22, 2023
7a282c8
netdeploy: Add AdminAPIToken to network templates (#5473)
algorandskiy Jun 22, 2023
f5ad6a5
tests: flaky tests fixes (#5487)
algorandskiy Jun 22, 2023
21525f6
CI: Don't run tests during benchmark (#5491)
jasonpaulos Jun 22, 2023
91185ae
Chore: Use exp/slices and exp/maps to simplify some code (#5479)
jannotti Jun 22, 2023
f514d82
tests: fix flaky ledger stateproof and rpcs tests (#5494)
algorandskiy Jun 23, 2023
c547097
Chore: more deadcode (#5495)
jannotti Jun 23, 2023
f56b9bd
algocfg: Add EnableTxnEvalTracer to algocfg development profile. (#5481)
winder Jun 23, 2023
c223dbc
network: Limit message length based on Tag (#5388)
iansuvak Jun 23, 2023
e96d104
catchup: Add HEAD request to catchpoint service start (#5393)
Eric-Warehime Jun 24, 2023
68a4aba
Chore: Use generics to simplify some code in v2 (#5497)
ahangsu Jun 24, 2023
4f42233
Merge remote-tracking branch 'upstream/rel/stable' into onetechnical/…
onetechnical Jun 26, 2023
970d2a1
Fix: goal clerk rawsend print pending round rather than ptr to round …
ahangsu Jun 26, 2023
8dba54b
Merge pull request #5500 from onetechnical/onetechnical/relstable3.16…
algojohnlee Jun 26, 2023
df22f75
Chore: apply `golang.org/x/exp/constraints` to `overflow.go` (#5501)
ahangsu Jun 26, 2023
6d7913c
algocfg: Remove block validation override from participation profile.…
winder Jun 27, 2023
068b375
config: update MaxCatchpointDownloadDuration to 12h (#5503)
cce Jun 27, 2023
74b5f19
tools: block generator apps. Part 2: boxes (#5478)
tzaffi Jun 27, 2023
22e0e09
goal: account info with deleted asset suppress error and better outpu…
ahangsu Jun 28, 2023
533507a
tests: Fix catchpoint catchup tests to use relay for catchup (#5507)
Eric-Warehime Jun 28, 2023
68ebeb5
docker: fix slow docker container start up (#5513)
shiqizng Jun 28, 2023
11a180f
API: Allow DELETE calls (#5515)
AustP Jun 29, 2023
06fedda
follower: Use Buffered syncNow channel to correctly trigger sync in p…
algochoi Jun 29, 2023
0bc522d
network:ws block byte limiter (#5472)
iansuvak Jun 29, 2023
5ed50c4
tools: block generator inner transactions (#5506)
tzaffi Jun 30, 2023
dcafb65
tests: fix rawsend.sh nightly test failure (#5519)
ahangsu Jun 30, 2023
2f38415
docker: Start kmd in the background. (#5514)
winder Jun 30, 2023
83aee2e
bugfix: ensure blockservice callbacks are not nil (#5518)
iansuvak Jun 30, 2023
32466b9
tests: fix TestLedgerReloadStateProofVerificationTracker (#5520)
algorandskiy Jun 30, 2023
8c52ed0
fix: remove unnecessary bash scripts (#5524)
kehiy Jul 4, 2023
f54e7a7
tests: make TestSendMessageCallbacks deterministic (#5523)
iansuvak Jul 4, 2023
55bfa51
tests: reenable TestVotersReloadFromDiskPassRecoveryPeriod (#5496)
algorandskiy Jul 5, 2023
ec9e662
tracer: Default to ledger tracer when starting new evaluator (#5521)
Eric-Warehime Jul 5, 2023
cece133
docker: Additional private network options and container tweaks. (#5525)
winder Jul 6, 2023
3e80027
Chore: Small cleanups for clarity (#5526)
jannotti Jul 6, 2023
e215f6d
block-generator: conduit performance benchmark scenarios. (#5532)
winder Jul 8, 2023
9292c50
Chore: remove a redundant argument to maintain single source of truth…
jannotti Jul 10, 2023
a1569e5
ledger: fix catchpoint pending hashes locking (#5534)
icorderi Jul 10, 2023
217f791
Runtime: Add delete-if-exists check for the no longer used indexer.sq…
gmalouf Jul 10, 2023
4251297
test: Replace timer with counter loop in TestNodeTxHandlerRestart (#5…
algonautshant Jul 10, 2023
924087f
CICD: Update docker containers to newer versions (#5529)
onetechnical Jul 11, 2023
c38ff93
Update the Version, BuildNumber, genesistimestamp.data
Algo-devops-service Jul 11, 2023
c6f3769
Merge pull request #5541 from Algo-devops-service/relbeta3.17.0
algojohnlee Jul 11, 2023
fa0b354
tests: fix coder tester for TxType bound (#5536)
algorandskiy Jul 11, 2023
e21b905
CICD: Fix debian package error (#5552)
onetechnical Jul 11, 2023
80d0226
catchup: Catchup variable reuse (#5551)
Eric-Warehime Jul 12, 2023
aeef625
Algod: Simulate endpoint stack-change exposure (#5440)
ahangsu Jul 12, 2023
8db3d7a
CICD: Update ubuntu circleci image and orbs (#5564)
algobarb Jul 13, 2023
d316914
perf tests: use metrics for memory usage charts (#5565)
algorandskiy Jul 13, 2023
18a33c9
CICD: downgrade ubuntu to 20.04 and ensure ARM64 binaries are built s…
onetechnical Jul 14, 2023
279605a
docs: Fix broken markdown in follower documentation. (#5585)
winder Jul 20, 2023
be237d6
Algod: Simulate endpoint scratch-change exposure (#5563)
ahangsu Jul 20, 2023
bc9f126
tools: let catchpointdump to calculate and print data hashes (#5584)
algorandskiy Jul 20, 2023
0e0b26d
ledger: use single SP verification hash/data query for catchpoint tra…
cce Jul 20, 2023
17d4ebf
goal: support simulate scratch in exec trace (#5589)
ahangsu Jul 20, 2023
548399e
CircleCI: Update macos xcode versions (#5590)
algobarb Jul 20, 2023
1a46ceb
cli: clarify program source flag description (#5571)
kehiy Jul 21, 2023
4a5095e
chore: use string builder instead of string concatenation in catchup …
kehiy Jul 21, 2023
fbfbea1
build: remove sqlite from release configurations (#5562)
cce Jul 21, 2023
b4f6b1f
tools: Reorganize block generator scripts. (#5582)
winder Jul 21, 2023
0c6a328
catchpoint: use read connection for data retrieval for spver hash cal…
cce Jul 21, 2023
197bfb6
ledger: move MakeCatchpointReader back to the Reader interface (#5583)
icorderi Jul 21, 2023
8f4f71b
Merge branch 'rel/beta' into onetechnical/relbeta-remerge
onetechnical Jul 24, 2023
2258edd
Remove buildnumber.dat and genesistimestamp.dat files
onetechnical Jul 24, 2023
1d1fe0f
Merge pull request #5600 from onetechnical/onetechnical/relbeta-remerge
algojohnlee Jul 24, 2023
fbdcd05
Update the Version, BuildNumber, genesistimestamp.data
Algo-devops-service Jul 24, 2023
a0e31a7
Merge pull request #5601 from Algo-devops-service/relbeta3.17.0
algojohnlee Jul 25, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
ledger: move MakeCatchpointReader back to the Reader interface (#5583)
  • Loading branch information
icorderi authored Jul 21, 2023
commit 197bfb6a08b29582672be2c07e2fa495036185cd
4 changes: 2 additions & 2 deletions ledger/catchpointtracker.go
Original file line number Diff line number Diff line change
Expand Up @@ -1151,7 +1151,7 @@ func (ct *catchpointTracker) generateCatchpointData(ctx context.Context, account

start := time.Now()
ledgerGeneratecatchpointCount.Inc(nil)
err = ct.dbs.TransactionContext(ctx, func(dbCtx context.Context, tx trackerdb.TransactionScope) (err error) {
err = ct.dbs.SnapshotContext(ctx, func(dbCtx context.Context, tx trackerdb.SnapshotScope) (err error) {
catchpointWriter, err = makeCatchpointWriter(dbCtx, catchpointDataFilePath, tx, ResourcesPerCatchpointFileChunk)
if err != nil {
return
Expand Down Expand Up @@ -1341,7 +1341,7 @@ func (ct *catchpointTracker) GetCatchpointStream(round basics.Round) (ReadCloseS
ledgerGetcatchpointCount.Inc(nil)
// TODO: we need to generalize this, check @cce PoC PR, he has something
// somewhat broken for some KVs..
err := ct.dbs.Transaction(func(ctx context.Context, tx trackerdb.TransactionScope) (err error) {
err := ct.dbs.Snapshot(func(ctx context.Context, tx trackerdb.SnapshotScope) (err error) {
cr, err := tx.MakeCatchpointReader()
if err != nil {
return err
Expand Down
4 changes: 2 additions & 2 deletions ledger/catchpointwriter.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ const (
// has the option of throttling the CPU utilization in between the calls.
type catchpointWriter struct {
ctx context.Context
tx trackerdb.TransactionScope
tx trackerdb.SnapshotScope
filePath string
totalAccounts uint64
totalKVs uint64
Expand Down Expand Up @@ -106,7 +106,7 @@ func (data catchpointStateProofVerificationContext) ToBeHashed() (protocol.HashI
return protocol.StateProofVerCtx, protocol.Encode(&data)
}

func makeCatchpointWriter(ctx context.Context, filePath string, tx trackerdb.TransactionScope, maxResourcesPerChunk int) (*catchpointWriter, error) {
func makeCatchpointWriter(ctx context.Context, filePath string, tx trackerdb.SnapshotScope, maxResourcesPerChunk int) (*catchpointWriter, error) {
aw, err := tx.MakeAccountsReader()
if err != nil {
return nil, err
Expand Down
4 changes: 4 additions & 0 deletions ledger/store/trackerdb/sqlitedriver/catchpoint.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,10 @@ func NewCatchpointSQLReaderWriter(e db.Executable) *catchpointReaderWriter {
}
}

func makeCatchpointReader(e db.Queryable) trackerdb.CatchpointReader {
return &catchpointReader{q: e}
}

func (cr *catchpointReader) GetCatchpoint(ctx context.Context, round basics.Round) (fileName string, catchpoint string, fileSize int64, err error) {
err = cr.q.QueryRowContext(ctx, "SELECT filename, catchpoint, filesize FROM storedcatchpoints WHERE round=?", int64(round)).Scan(&fileName, &catchpoint, &fileSize)
return
Expand Down
38 changes: 21 additions & 17 deletions ledger/store/trackerdb/sqlitedriver/sqlitedriver.go
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ func (s *trackerSQLStore) Snapshot(fn trackerdb.SnapshotFn) (err error) {

func (s *trackerSQLStore) SnapshotContext(ctx context.Context, fn trackerdb.SnapshotFn) (err error) {
return s.pair.Rdb.AtomicContext(ctx, func(ctx context.Context, tx *sql.Tx) error {
return fn(ctx, sqlSnapshotScope{tx, &sqlReader{tx}})
return fn(ctx, &sqlSnapshotScope{tx, &sqlReader{tx}})
})
}

Expand Down Expand Up @@ -183,6 +183,21 @@ func (r *sqlReader) MakeCatchpointPendingHashesIterator(hashCount int) trackerdb
return MakeCatchpointPendingHashesIterator(hashCount, r.q)
}

// MakeCatchpointReader implements trackerdb.Reader
func (r *sqlReader) MakeCatchpointReader() (trackerdb.CatchpointReader, error) {
return makeCatchpointReader(r.q), nil
}

// MakeEncodedAccoutsBatchIter implements trackerdb.Reader
func (r *sqlReader) MakeEncodedAccoutsBatchIter() trackerdb.EncodedAccountsBatchIter {
return MakeEncodedAccoutsBatchIter(r.q)
}

// MakeKVsIter implements trackerdb.Reader
func (r *sqlReader) MakeKVsIter(ctx context.Context) (trackerdb.KVsIter, error) {
return MakeKVsIter(ctx, r.q)
}

type sqlWriter struct {
e db.Executable
}
Expand Down Expand Up @@ -236,11 +251,6 @@ type sqlCatchpoint struct {
e db.Executable
}

// MakeCatchpointReader implements trackerdb.Catchpoint
func (c *sqlCatchpoint) MakeCatchpointReader() (trackerdb.CatchpointReader, error) {
return NewCatchpointSQLReaderWriter(c.e), nil
}

// MakeCatchpointReaderWriter implements trackerdb.Catchpoint
func (c *sqlCatchpoint) MakeCatchpointReaderWriter() (trackerdb.CatchpointReaderWriter, error) {
return NewCatchpointSQLReaderWriter(c.e), nil
Expand All @@ -251,16 +261,6 @@ func (c *sqlCatchpoint) MakeCatchpointWriter() (trackerdb.CatchpointWriter, erro
return NewCatchpointSQLReaderWriter(c.e), nil
}

// MakeEncodedAccoutsBatchIter implements trackerdb.Catchpoint
func (c *sqlCatchpoint) MakeEncodedAccoutsBatchIter() trackerdb.EncodedAccountsBatchIter {
return MakeEncodedAccoutsBatchIter(c.e)
}

// MakeKVsIter implements trackerdb.Catchpoint
func (c *sqlCatchpoint) MakeKVsIter(ctx context.Context) (trackerdb.KVsIter, error) {
return MakeKVsIter(ctx, c.e)
}

// MakeMerkleCommitter implements trackerdb.Catchpoint
func (c *sqlCatchpoint) MakeMerkleCommitter(staging bool) (trackerdb.MerkleCommitter, error) {
return MakeMerkleCommitter(c.e, staging)
Expand Down Expand Up @@ -302,7 +302,11 @@ type sqlSnapshotScope struct {
trackerdb.Reader
}

func (ss sqlSnapshotScope) Close() error {
func (ss *sqlSnapshotScope) ResetTransactionWarnDeadline(ctx context.Context, deadline time.Time) (prevDeadline time.Time, err error) {
return db.ResetTransactionWarnDeadline(ctx, ss.tx, deadline)
}

func (ss *sqlSnapshotScope) Close() error {
return ss.tx.Rollback()
}

Expand Down
8 changes: 5 additions & 3 deletions ledger/store/trackerdb/store.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,10 @@ type Reader interface {
// catchpoint
// Note: BuildMerkleTrie() needs this on the reader handle in sqlite to not get locked by write txns
MakeCatchpointPendingHashesIterator(hashCount int) CatchpointPendingHashesIter
// Note: Catchpoint tracker needs this on the reader handle in sqlite to not get locked by write txns
MakeCatchpointReader() (CatchpointReader, error)
MakeEncodedAccoutsBatchIter() EncodedAccountsBatchIter
MakeKVsIter(ctx context.Context) (KVsIter, error)
}

// Writer is the interface for the trackerdb write operations.
Expand All @@ -82,10 +86,7 @@ type Writer interface {
// we should split these two sets of methods into two separate interfaces
type Catchpoint interface {
// reader
MakeCatchpointReader() (CatchpointReader, error)
MakeOrderedAccountsIter(accountCount int) OrderedAccountsIter
MakeKVsIter(ctx context.Context) (KVsIter, error)
MakeEncodedAccoutsBatchIter() EncodedAccountsBatchIter
// writer
MakeCatchpointWriter() (CatchpointWriter, error)
// reader/writer
Expand Down Expand Up @@ -122,6 +123,7 @@ type Batch interface {
// SnapshotScope is an atomic read-only scope to the store.
type SnapshotScope interface {
Reader
ResetTransactionWarnDeadline(ctx context.Context, deadline time.Time) (prevDeadline time.Time, err error)
}

// Snapshot is an atomic read-only accecssor to the store.
Expand Down