Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
4 changes: 2 additions & 2 deletions config/pier.toml
Original file line number Diff line number Diff line change
Expand Up @@ -61,5 +61,5 @@ title = "Pier"
enable_tss = false

[batch]
enable_batch = true
batch_size = 10
enable_batch = false
batch_size = 7
10 changes: 8 additions & 2 deletions internal/adapt/appchain_adapter/adapter.go
Original file line number Diff line number Diff line change
Expand Up @@ -202,8 +202,13 @@ func (a *AppchainAdapter) SendIBTP(ibtp *pb.IBTP) error {
_, _, serviceID := ibtp.ParseTo()

a.logger.WithFields(logrus.Fields{
"ibtp": ibtp.ID(),
"typ": ibtp.Type,
"from": ibtp.From,
"index": ibtp.Index,
"serviceID": serviceID,
"type": ibtp.Type,
"content": content,
"proof": proof,
"encrypted": pd.Encrypted,
}).Info("start submit ibtp")
res, err = a.client.SubmitIBTP(ibtp.From, ibtp.Index, serviceID, ibtp.Type, content, proof, pd.Encrypted)
} else {
Expand Down Expand Up @@ -233,6 +238,7 @@ func (a *AppchainAdapter) SendIBTP(ibtp *pb.IBTP) error {
a.logger.WithFields(logrus.Fields{
"ibtp": ibtp.ID(),
"typ": ibtp.Type,
"res": result,
}).Info("start submit receipt")
res, err = a.client.SubmitReceipt(ibtp.To, ibtp.Index, serviceID, ibtp.Type, result, proof)
}
Expand Down
3 changes: 1 addition & 2 deletions internal/adapt/appchain_adapter/adapter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,9 @@ import (
"testing"
"time"

"github.com/hashicorp/go-plugin"
"github.com/meshplus/pier/internal/adapt"
"github.com/meshplus/pier/internal/repo"

"github.com/hashicorp/go-plugin"
"github.com/stretchr/testify/require"

"github.com/golang/mock/gomock"
Expand Down
6 changes: 4 additions & 2 deletions internal/adapt/bxh_adapter/adapter.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ type BxhAdapter struct {
tss *repo.TSS
goPool *utils.GoPool
checker checker.Checker
isBatch bool
}

func (b *BxhAdapter) GetServiceIDList() ([]string, error) {
Expand Down Expand Up @@ -131,7 +132,7 @@ func (b *BxhAdapter) SendUpdatedMeta(_ []byte) error {

// New creates instance of WrapperSyncer given agent interacting with bitxhub,
// validators addresses of bitxhub and local storage
func New(mode, appchainId string, client rpcx.Client, logger logrus.FieldLogger, tss *repo.TSS, nonce uint64) (*BxhAdapter, error) {
func New(mode, appchainId string, config *repo.Config, client rpcx.Client, logger logrus.FieldLogger, tss *repo.TSS, nonce uint64) (*BxhAdapter, error) {
bxhID, err := client.GetChainID()
if err != nil {
return nil, fmt.Errorf("new bxh adapter err: %w", err)
Expand All @@ -151,6 +152,7 @@ func New(mode, appchainId string, client rpcx.Client, logger logrus.FieldLogger,
tss: tss,
nonce: nonce,
goPool: utils.NewGoPool(goroutinesSize),
isBatch: config.Batch.EnableBatch,
}

ba.checker = checker.NewRelayChecker(nil, ba.appchainId, fmt.Sprintf("%d", ba.bxhID), ba.logger)
Expand Down Expand Up @@ -631,7 +633,7 @@ func (b *BxhAdapter) handleInterchainTxWrapper(w *pb.InterchainTxWrapper, i int)
}
b.logger.WithFields(logrus.Fields{"ID": ibtp.ID(), "index": ibtp.Index, "elapse": time.Since(current)}).Debug("[3.1] receive multi sign")
ibtp.Proof = retProof
if tx.IsBatch && b.mode == repo.RelayMode {
if tx.IsBatch && b.mode == repo.RelayMode && b.isBatch {
ibtp.Extra = []byte("1")
b.logger.Info("get batch ibtp")
}
Expand Down
20 changes: 13 additions & 7 deletions internal/adapt/bxh_adapter/adapter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -686,23 +686,29 @@ func prepare(t *testing.T) (*BxhAdapter, *BxhAdapter, *BxhAdapter, *mock_client.
client := mock_client.NewMockClient(mockCtl)
client.EXPECT().GetChainID().Return(uint64(bxhId1), nil).AnyTimes()

config := &repo.Config{}
config.Mode.Type = repo.RelayMode
config.TSS = &repo.TSS{
EnableTSS: false,
config := &repo.Config{
Mode: repo.Mode{
Type: repo.RelayMode,
},
TSS: &repo.TSS{
EnableTSS: false,
},
Batch: repo.Batch{
EnableBatch: false,
},
}

relayAdapter1, err := New(repo.RelayMode, "",
relayAdapter1, err := New(repo.RelayMode, "", config,
client, log.NewWithModule("adapter"), config.TSS, 0,
)
require.Nil(t, err)

relayAdapter2, err := New(repo.RelayMode, "",
relayAdapter2, err := New(repo.RelayMode, "", config,
client, log.NewWithModule("adapter"), config.TSS, 0,
)
require.Nil(t, err)

unionAdapter, err := New(repo.UnionMode, defaultUnionPierId,
unionAdapter, err := New(repo.UnionMode, defaultUnionPierId, config,
client, log.NewWithModule("adapter"), config.TSS, 0,
)
require.Nil(t, err)
Expand Down
55 changes: 2 additions & 53 deletions internal/app/pier.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,57 +44,6 @@ type Pier struct {
logger logrus.FieldLogger
}

func NewUnionPier(repoRoot string, config *repo.Config) (*Pier, error) {
logger := loggers.Logger(loggers.App)
privateKey, err := repo.LoadPrivateKey(repoRoot)
if err != nil {
return nil, fmt.Errorf("repo load key: %w", err)
}

client, err := newBitXHubClient(logger, privateKey, config)
if err != nil {
return nil, fmt.Errorf("create bitxhub client: %w", err)
}

bxhAdapter, err := bxh_adapter.New(repo.UnionMode, DEFAULT_UNION_PIER_ID, client, loggers.Logger(loggers.Syncer), config.TSS, 0)
if err != nil {
return nil, fmt.Errorf("new bitxhub adapter: %w", err)
}

nodePrivKey, err := repo.LoadNodePrivateKey(repoRoot)
if err != nil {
return nil, fmt.Errorf("repo load node key: %w", err)
}

peerManager, err := peermgr.New(config, nodePrivKey, privateKey, config.Mode.Union.Providers, loggers.Logger(loggers.PeerMgr))
if err != nil {
return nil, fmt.Errorf("peerMgr create: %w", err)
}

unionAdapt, err := union_adapter.New(peerManager, bxhAdapter, loggers.Logger(loggers.Union))
if err != nil {
return nil, fmt.Errorf("new union adapter: %w", err)
}

ex, err := exchanger.New(repo.UnionMode, "", bxhAdapter.ID(),
exchanger.WithSrcAdapt(bxhAdapter),
exchanger.WithDestAdapt(unionAdapt),
exchanger.WithLogger(loggers.Logger(loggers.Exchanger)))
if err != nil {
return nil, fmt.Errorf("exchanger create: %w", err)
}

ctx, cancel := context.WithCancel(context.Background())
return &Pier{
privateKey: privateKey,
exchanger: ex,
logger: logger,
ctx: ctx,
cancel: cancel,
config: config,
}, nil
}

// Start starts three main components of pier app
func (pier *Pier) Start() error {
if err := pier.pierHA.Start(); err != nil {
Expand Down Expand Up @@ -169,7 +118,7 @@ func NewPier(repoRoot string, config *repo.Config) (*Pier, error) {
addr, _ := privateKey.PublicKey().Address()
nonce, _ := client.GetPendingNonceByAccount(addr.String())

bxhAdapter, err := bxh_adapter.New(repo.RelayMode, appchainAdapter.ID(), client, loggers.Logger(loggers.Syncer), config.TSS, nonce)
bxhAdapter, err := bxh_adapter.New(repo.RelayMode, appchainAdapter.ID(), config, client, loggers.Logger(loggers.Syncer), config.TSS, nonce)
if err != nil {
return nil, fmt.Errorf("new bxh adapter: %w", err)
}
Expand Down Expand Up @@ -208,7 +157,7 @@ func NewPier(repoRoot string, config *repo.Config) (*Pier, error) {
return nil, fmt.Errorf("create bitxhub client: %w", err)
}

bxhAdapter, err := bxh_adapter.New(repo.UnionMode, DEFAULT_UNION_PIER_ID, client, loggers.Logger(loggers.Syncer), config.TSS, 0)
bxhAdapter, err := bxh_adapter.New(repo.UnionMode, DEFAULT_UNION_PIER_ID, config, client, loggers.Logger(loggers.Syncer), config.TSS, 0)
if err != nil {
return nil, fmt.Errorf("new bitxhub adapter: %w", err)
}
Expand Down
2 changes: 1 addition & 1 deletion internal/repo/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ func DefaultConfig() *Config {
},
Batch: Batch{
EnableBatch: false,
BatchSize: 10,
BatchSize: 7,
},
}
}
Expand Down
2 changes: 1 addition & 1 deletion internal/repo/packrd/packed-packr.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.