Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
86ed975
create lazy aggregation adr proposal
Apr 29, 2025
ed5dce1
ammend based on feedback
Apr 30, 2025
ee3550d
Merge branch 'main' into marko/lazy-aggregation-adr
Apr 30, 2025
e7472d7
Update specs/lazy-adr/adr-021-lazy-aggregation.md
tac0turtle Apr 30, 2025
10ea3ae
Merge branch 'main' into marko/lazy-aggregation-adr
tac0turtle May 2, 2025
cb5fb90
lint fix
May 2, 2025
f68588b
Merge branch 'main' into marko/lazy-aggregation-adr
tac0turtle May 2, 2025
7fb554a
chore: empty blocks & lazy aggrgation (#2243)
tac0turtle May 2, 2025
4219dd2
remove unused
May 2, 2025
4949f09
reset block timer when no txs are present
May 2, 2025
95897a4
Simplify
Manav-Aggarwal May 2, 2025
0ea7657
Fix test
Manav-Aggarwal May 2, 2025
4d4d9d2
Add reaper logic in adr
Manav-Aggarwal May 2, 2025
b19a14e
Implement execValidate and insert back dataHash
Manav-Aggarwal May 2, 2025
d938c88
Add batchValidation in retriever
Manav-Aggarwal May 2, 2025
71dec18
modify validation logic
Manav-Aggarwal May 2, 2025
5a74dc4
Add DA Includer Loop
Manav-Aggarwal May 2, 2025
446cd75
Fix test syntax
Manav-Aggarwal May 2, 2025
eccf399
Add Validate method for signed header
Manav-Aggarwal May 2, 2025
05d2888
setDAIncluded for sequencers too
Manav-Aggarwal May 2, 2025
609d51d
Fix first retriever test
Manav-Aggarwal May 3, 2025
6cb6b1b
Refactor retriever and fix more tests
Manav-Aggarwal May 3, 2025
f616f69
fixed all retriever tests
Manav-Aggarwal May 3, 2025
6648f6c
Add more tests to retriever and handle empty blobs
Manav-Aggarwal May 3, 2025
91c30a8
make fromProto more robust
Manav-Aggarwal May 3, 2025
4dc7f9b
Add doc headers to add test methods in block package
Manav-Aggarwal May 3, 2025
1bf36e6
Make TestProcessNextDAHeader_MultipleHeadersAndBatches more robust
Manav-Aggarwal May 3, 2025
fe160ce
Fix from rebase
Manav-Aggarwal May 3, 2025
8c3006a
fix publishBlock tests
Manav-Aggarwal May 3, 2025
a16e63b
Add daIncluderTests
Manav-Aggarwal May 3, 2025
66cc82d
enable t.Parallel in all block tests
Manav-Aggarwal May 3, 2025
66a34c8
go mod tidy everywhere
Manav-Aggarwal May 3, 2025
76f652b
catch errcheck in setfinal and add test for it in daIncluder
Manav-Aggarwal May 3, 2025
3925c86
fix lint
Manav-Aggarwal May 3, 2025
b1c076e
remove gci from golintci
Manav-Aggarwal May 3, 2025
c0f82b3
Fix first test in sync_test
Manav-Aggarwal May 3, 2025
58ce301
Fix all sync tests
Manav-Aggarwal May 4, 2025
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
setDAIncluded for sequencers too
  • Loading branch information
Manav-Aggarwal committed May 3, 2025
commit 05d28883e5797d72f9fb6711d3a85773c3b1dc9f
11 changes: 11 additions & 0 deletions block/manager.go
Original file line number Diff line number Diff line change
Expand Up @@ -365,6 +365,12 @@ func NewManager(
agg.init(ctx)
// Set the default publishBlock implementation
agg.publishBlock = agg.publishBlockInternal

// Set the manager pointer in the sequencer if it is a *single.Sequencer
if s, ok := sequencer.(interface{ SetManager(*Manager) }); ok {
s.SetManager(agg)
}

return agg, nil
}

Expand Down Expand Up @@ -956,3 +962,8 @@ func (m *Manager) NotifyNewTransactions() {
// This is fine, as we just need to trigger one block production
}
}

// DataCache returns the dataCache used by the manager.
func (m *Manager) DataCache() *cache.Cache[types.Data] {
return m.dataCache
}
2 changes: 2 additions & 0 deletions node/full.go
Original file line number Diff line number Diff line change
Expand Up @@ -402,11 +402,13 @@ func (n *FullNode) Run(ctx context.Context) error {
go n.blockManager.HeaderSubmissionLoop(ctx)
go n.headerPublishLoop(ctx)
go n.dataPublishLoop(ctx)
go n.blockManager.DAIncluderLoop(ctx)
} else {
go n.blockManager.RetrieveLoop(ctx)
go n.blockManager.HeaderStoreRetrieveLoop(ctx)
go n.blockManager.DataStoreRetrieveLoop(ctx)
go n.blockManager.SyncLoop(ctx)
go n.blockManager.DAIncluderLoop(ctx)
}

// Block until context is canceled
Expand Down
71 changes: 70 additions & 1 deletion sequencers/based/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,94 @@ replace (
require (
cosmossdk.io/log v1.5.1
github.com/ipfs/go-datastore v0.8.2
github.com/rollkit/rollkit v0.0.0-00010101000000-000000000000
github.com/rollkit/rollkit/core v0.0.0-20250312114929-104787ba1a4c
github.com/rollkit/rollkit/da v0.0.0-00010101000000-000000000000
github.com/stretchr/testify v1.10.0
)

require (
github.com/beorn7/perks v1.0.1 // indirect
github.com/bytedance/sonic v1.13.2 // indirect
github.com/bytedance/sonic/loader v0.2.4 // indirect
github.com/celestiaorg/go-header v0.6.5 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/cloudwego/base64x v0.1.5 // indirect
github.com/cosmos/gogoproto v1.7.0 // indirect
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect
github.com/dgraph-io/badger/v4 v4.5.1 // indirect
github.com/dgraph-io/ristretto/v2 v2.1.0 // indirect
github.com/dustin/go-humanize v1.0.1 // indirect
github.com/fsnotify/fsnotify v1.7.0 // indirect
github.com/go-kit/kit v0.13.0 // indirect
github.com/goccy/go-yaml v1.17.1 // indirect
github.com/gogo/protobuf v1.3.2 // indirect
github.com/golang/groupcache v0.0.0-20241129210726-2c02b8208cf8 // indirect
github.com/google/flatbuffers v24.12.23+incompatible // indirect
github.com/google/go-cmp v0.7.0 // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
github.com/hashicorp/hcl v1.0.0 // indirect
github.com/inconshreveable/mousetrap v1.1.0 // indirect
github.com/ipfs/go-cid v0.5.0 // indirect
github.com/ipfs/go-ds-badger4 v0.1.8 // indirect
github.com/ipfs/go-log/v2 v2.5.1 // indirect
github.com/klauspost/compress v1.18.0 // indirect
github.com/klauspost/cpuid/v2 v2.2.10 // indirect
github.com/libp2p/go-buffer-pool v0.1.0 // indirect
github.com/libp2p/go-libp2p v0.41.1 // indirect
github.com/libp2p/go-libp2p-pubsub v0.13.1 // indirect
github.com/libp2p/go-msgio v0.3.0 // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/minio/sha256-simd v1.0.1 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
github.com/mr-tron/base58 v1.2.0 // indirect
github.com/multiformats/go-base32 v0.1.0 // indirect
github.com/multiformats/go-base36 v0.2.0 // indirect
github.com/multiformats/go-multiaddr v0.15.0 // indirect
github.com/multiformats/go-multiaddr-fmt v0.1.0 // indirect
github.com/multiformats/go-multibase v0.2.0 // indirect
github.com/multiformats/go-multicodec v0.9.0 // indirect
github.com/multiformats/go-multihash v0.2.3 // indirect
github.com/multiformats/go-multistream v0.6.0 // indirect
github.com/multiformats/go-varint v0.0.7 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/pelletier/go-toml/v2 v2.2.2 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
github.com/prometheus/client_golang v1.21.1 // indirect
github.com/prometheus/client_model v0.6.1 // indirect
github.com/prometheus/common v0.63.0 // indirect
github.com/prometheus/procfs v0.16.0 // indirect
github.com/rollkit/go-sequencing v0.4.1 // indirect
github.com/rs/zerolog v1.34.0 // indirect
github.com/sagikazarmark/locafero v0.4.0 // indirect
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
github.com/sourcegraph/conc v0.3.0 // indirect
github.com/spaolacci/murmur3 v1.1.0 // indirect
github.com/spf13/afero v1.11.0 // indirect
github.com/spf13/cast v1.6.0 // indirect
github.com/spf13/cobra v1.9.1 // indirect
github.com/spf13/pflag v1.0.6 // indirect
github.com/spf13/viper v1.19.0 // indirect
github.com/subosito/gotenv v1.6.0 // indirect
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
go.opencensus.io v0.24.0 // indirect
go.uber.org/multierr v1.11.0 // indirect
go.uber.org/zap v1.27.0 // indirect
golang.org/x/arch v0.15.0 // indirect
golang.org/x/sys v0.31.0 // indirect
golang.org/x/crypto v0.37.0 // indirect
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 // indirect
golang.org/x/net v0.38.0 // indirect
golang.org/x/sys v0.32.0 // indirect
golang.org/x/text v0.24.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20241202173237-19429a94021a // indirect
google.golang.org/grpc v1.70.0 // indirect
google.golang.org/protobuf v1.36.6 // indirect
gopkg.in/ini.v1 v1.67.0 // indirect
gopkg.in/yaml.v3 v3.0.1 // indirect
lukechampine.com/blake3 v1.4.0 // indirect
)
Loading